wp/wp-includes/js/dist/components.js
changeset 16 a86126ab1dd4
parent 9 177826044cd9
child 18 be944660c56a
equal deleted inserted replaced
15:3d4e9c994f10 16:a86126ab1dd4
    80 /******/ 	// __webpack_public_path__
    80 /******/ 	// __webpack_public_path__
    81 /******/ 	__webpack_require__.p = "";
    81 /******/ 	__webpack_require__.p = "";
    82 /******/
    82 /******/
    83 /******/
    83 /******/
    84 /******/ 	// Load entry module and return exports
    84 /******/ 	// Load entry module and return exports
    85 /******/ 	return __webpack_require__(__webpack_require__.s = 359);
    85 /******/ 	return __webpack_require__(__webpack_require__.s = 260);
    86 /******/ })
    86 /******/ })
    87 /************************************************************************/
    87 /************************************************************************/
    88 /******/ ([
    88 /******/ ([
    89 /* 0 */
    89 /* 0 */
    90 /***/ (function(module, exports) {
    90 /***/ (function(module, exports) {
   102 /***/ (function(module, exports) {
   102 /***/ (function(module, exports) {
   103 
   103 
   104 (function() { module.exports = this["lodash"]; }());
   104 (function() { module.exports = this["lodash"]; }());
   105 
   105 
   106 /***/ }),
   106 /***/ }),
   107 /* 3 */
   107 /* 3 */,
   108 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   109 
       
   110 "use strict";
       
   111 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; });
       
   112 function _assertThisInitialized(self) {
       
   113   if (self === void 0) {
       
   114     throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
       
   115   }
       
   116 
       
   117   return self;
       
   118 }
       
   119 
       
   120 /***/ }),
       
   121 /* 4 */,
   108 /* 4 */,
   122 /* 5 */,
   109 /* 5 */
   123 /* 6 */
       
   124 /***/ (function(module, exports) {
       
   125 
       
   126 (function() { module.exports = this["wp"]["compose"]; }());
       
   127 
       
   128 /***/ }),
       
   129 /* 7 */
       
   130 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   131 
       
   132 "use strict";
       
   133 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectSpread; });
       
   134 /* harmony import */ var _defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(15);
       
   135 
       
   136 function _objectSpread(target) {
       
   137   for (var i = 1; i < arguments.length; i++) {
       
   138     var source = arguments[i] != null ? arguments[i] : {};
       
   139     var ownKeys = Object.keys(source);
       
   140 
       
   141     if (typeof Object.getOwnPropertySymbols === 'function') {
       
   142       ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) {
       
   143         return Object.getOwnPropertyDescriptor(source, sym).enumerable;
       
   144       }));
       
   145     }
       
   146 
       
   147     ownKeys.forEach(function (key) {
       
   148       Object(_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(target, key, source[key]);
       
   149     });
       
   150   }
       
   151 
       
   152   return target;
       
   153 }
       
   154 
       
   155 /***/ }),
       
   156 /* 8 */,
       
   157 /* 9 */
       
   158 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   159 
       
   160 "use strict";
       
   161 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; });
       
   162 function _defineProperties(target, props) {
       
   163   for (var i = 0; i < props.length; i++) {
       
   164     var descriptor = props[i];
       
   165     descriptor.enumerable = descriptor.enumerable || false;
       
   166     descriptor.configurable = true;
       
   167     if ("value" in descriptor) descriptor.writable = true;
       
   168     Object.defineProperty(target, descriptor.key, descriptor);
       
   169   }
       
   170 }
       
   171 
       
   172 function _createClass(Constructor, protoProps, staticProps) {
       
   173   if (protoProps) _defineProperties(Constructor.prototype, protoProps);
       
   174   if (staticProps) _defineProperties(Constructor, staticProps);
       
   175   return Constructor;
       
   176 }
       
   177 
       
   178 /***/ }),
       
   179 /* 10 */
       
   180 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   181 
       
   182 "use strict";
       
   183 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _classCallCheck; });
       
   184 function _classCallCheck(instance, Constructor) {
       
   185   if (!(instance instanceof Constructor)) {
       
   186     throw new TypeError("Cannot call a class as a function");
       
   187   }
       
   188 }
       
   189 
       
   190 /***/ }),
       
   191 /* 11 */
       
   192 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   193 
       
   194 "use strict";
       
   195 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _possibleConstructorReturn; });
       
   196 /* harmony import */ var _helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(32);
       
   197 /* harmony import */ var _assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(3);
       
   198 
       
   199 
       
   200 function _possibleConstructorReturn(self, call) {
       
   201   if (call && (Object(_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(call) === "object" || typeof call === "function")) {
       
   202     return call;
       
   203   }
       
   204 
       
   205   return Object(_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(self);
       
   206 }
       
   207 
       
   208 /***/ }),
       
   209 /* 12 */
       
   210 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   211 
       
   212 "use strict";
       
   213 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _getPrototypeOf; });
       
   214 function _getPrototypeOf(o) {
       
   215   _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
       
   216     return o.__proto__ || Object.getPrototypeOf(o);
       
   217   };
       
   218   return _getPrototypeOf(o);
       
   219 }
       
   220 
       
   221 /***/ }),
       
   222 /* 13 */
       
   223 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   224 
       
   225 "use strict";
       
   226 
       
   227 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
       
   228 function _setPrototypeOf(o, p) {
       
   229   _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
       
   230     o.__proto__ = p;
       
   231     return o;
       
   232   };
       
   233 
       
   234   return _setPrototypeOf(o, p);
       
   235 }
       
   236 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
       
   237 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _inherits; });
       
   238 
       
   239 function _inherits(subClass, superClass) {
       
   240   if (typeof superClass !== "function" && superClass !== null) {
       
   241     throw new TypeError("Super expression must either be null or a function");
       
   242   }
       
   243 
       
   244   subClass.prototype = Object.create(superClass && superClass.prototype, {
       
   245     constructor: {
       
   246       value: subClass,
       
   247       writable: true,
       
   248       configurable: true
       
   249     }
       
   250   });
       
   251   if (superClass) _setPrototypeOf(subClass, superClass);
       
   252 }
       
   253 
       
   254 /***/ }),
       
   255 /* 14 */,
       
   256 /* 15 */
       
   257 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   110 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   258 
   111 
   259 "use strict";
   112 "use strict";
   260 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; });
   113 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _defineProperty; });
   261 function _defineProperty(obj, key, value) {
   114 function _defineProperty(obj, key, value) {
   272 
   125 
   273   return obj;
   126   return obj;
   274 }
   127 }
   275 
   128 
   276 /***/ }),
   129 /***/ }),
   277 /* 16 */
   130 /* 6 */
       
   131 /***/ (function(module, exports) {
       
   132 
       
   133 (function() { module.exports = this["wp"]["primitives"]; }());
       
   134 
       
   135 /***/ }),
       
   136 /* 7 */,
       
   137 /* 8 */
       
   138 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   139 
       
   140 "use strict";
       
   141 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; });
       
   142 function _extends() {
       
   143   _extends = Object.assign || function (target) {
       
   144     for (var i = 1; i < arguments.length; i++) {
       
   145       var source = arguments[i];
       
   146 
       
   147       for (var key in source) {
       
   148         if (Object.prototype.hasOwnProperty.call(source, key)) {
       
   149           target[key] = source[key];
       
   150         }
       
   151       }
       
   152     }
       
   153 
       
   154     return target;
       
   155   };
       
   156 
       
   157   return _extends.apply(this, arguments);
       
   158 }
       
   159 
       
   160 /***/ }),
       
   161 /* 9 */
       
   162 /***/ (function(module, exports) {
       
   163 
       
   164 (function() { module.exports = this["wp"]["compose"]; }());
       
   165 
       
   166 /***/ }),
       
   167 /* 10 */,
       
   168 /* 11 */
   278 /***/ (function(module, exports, __webpack_require__) {
   169 /***/ (function(module, exports, __webpack_require__) {
   279 
   170 
   280 var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
   171 var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
   281   Copyright (c) 2017 Jed Watson.
   172   Copyright (c) 2017 Jed Watson.
   282   Licensed under the MIT License (MIT), see
   173   Licensed under the MIT License (MIT), see
   329 	} else {}
   220 	} else {}
   330 }());
   221 }());
   331 
   222 
   332 
   223 
   333 /***/ }),
   224 /***/ }),
   334 /* 17 */
   225 /* 12 */
   335 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   226 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   336 
   227 
   337 "use strict";
   228 "use strict";
   338 
   229 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _assertThisInitialized; });
   339 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
   230 function _assertThisInitialized(self) {
   340 function _arrayWithoutHoles(arr) {
   231   if (self === void 0) {
   341   if (Array.isArray(arr)) {
   232     throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
   342     for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) {
   233   }
   343       arr2[i] = arr[i];
   234 
   344     }
   235   return self;
   345 
       
   346     return arr2;
       
   347   }
       
   348 }
       
   349 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
       
   350 var iterableToArray = __webpack_require__(34);
       
   351 
       
   352 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
       
   353 function _nonIterableSpread() {
       
   354   throw new TypeError("Invalid attempt to spread non-iterable instance");
       
   355 }
       
   356 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
       
   357 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _toConsumableArray; });
       
   358 
       
   359 
       
   360 
       
   361 function _toConsumableArray(arr) {
       
   362   return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || _nonIterableSpread();
       
   363 }
   236 }
   364 
   237 
   365 /***/ }),
   238 /***/ }),
   366 /* 18 */
   239 /* 13 */
   367 /***/ (function(module, exports) {
   240 /***/ (function(module, exports) {
   368 
   241 
   369 (function() { module.exports = this["wp"]["keycodes"]; }());
   242 (function() { module.exports = this["React"]; }());
   370 
   243 
   371 /***/ }),
   244 /***/ }),
   372 /* 19 */
   245 /* 14 */
   373 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   246 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   374 
   247 
   375 "use strict";
   248 "use strict";
   376 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _extends; });
   249 
   377 function _extends() {
   250 // EXPORTS
   378   _extends = Object.assign || function (target) {
   251 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _slicedToArray; });
   379     for (var i = 1; i < arguments.length; i++) {
       
   380       var source = arguments[i];
       
   381 
       
   382       for (var key in source) {
       
   383         if (Object.prototype.hasOwnProperty.call(source, key)) {
       
   384           target[key] = source[key];
       
   385         }
       
   386       }
       
   387     }
       
   388 
       
   389     return target;
       
   390   };
       
   391 
       
   392   return _extends.apply(this, arguments);
       
   393 }
       
   394 
       
   395 /***/ }),
       
   396 /* 20 */
       
   397 /***/ (function(module, exports) {
       
   398 
       
   399 (function() { module.exports = this["wp"]["richText"]; }());
       
   400 
       
   401 /***/ }),
       
   402 /* 21 */
       
   403 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   404 
       
   405 "use strict";
       
   406 
       
   407 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
       
   408 function _objectWithoutPropertiesLoose(source, excluded) {
       
   409   if (source == null) return {};
       
   410   var target = {};
       
   411   var sourceKeys = Object.keys(source);
       
   412   var key, i;
       
   413 
       
   414   for (i = 0; i < sourceKeys.length; i++) {
       
   415     key = sourceKeys[i];
       
   416     if (excluded.indexOf(key) >= 0) continue;
       
   417     target[key] = source[key];
       
   418   }
       
   419 
       
   420   return target;
       
   421 }
       
   422 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
       
   423 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; });
       
   424 
       
   425 function _objectWithoutProperties(source, excluded) {
       
   426   if (source == null) return {};
       
   427   var target = _objectWithoutPropertiesLoose(source, excluded);
       
   428   var key, i;
       
   429 
       
   430   if (Object.getOwnPropertySymbols) {
       
   431     var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
       
   432 
       
   433     for (i = 0; i < sourceSymbolKeys.length; i++) {
       
   434       key = sourceSymbolKeys[i];
       
   435       if (excluded.indexOf(key) >= 0) continue;
       
   436       if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
       
   437       target[key] = source[key];
       
   438     }
       
   439   }
       
   440 
       
   441   return target;
       
   442 }
       
   443 
       
   444 /***/ }),
       
   445 /* 22 */,
       
   446 /* 23 */,
       
   447 /* 24 */
       
   448 /***/ (function(module, exports) {
       
   449 
       
   450 (function() { module.exports = this["wp"]["dom"]; }());
       
   451 
       
   452 /***/ }),
       
   453 /* 25 */
       
   454 /***/ (function(module, exports) {
       
   455 
       
   456 (function() { module.exports = this["wp"]["url"]; }());
       
   457 
       
   458 /***/ }),
       
   459 /* 26 */
       
   460 /***/ (function(module, exports) {
       
   461 
       
   462 (function() { module.exports = this["wp"]["hooks"]; }());
       
   463 
       
   464 /***/ }),
       
   465 /* 27 */
       
   466 /***/ (function(module, exports) {
       
   467 
       
   468 (function() { module.exports = this["React"]; }());
       
   469 
       
   470 /***/ }),
       
   471 /* 28 */
       
   472 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   473 
       
   474 "use strict";
       
   475 
   252 
   476 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
   253 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js
   477 var arrayWithHoles = __webpack_require__(37);
   254 var arrayWithHoles = __webpack_require__(38);
   478 
   255 
   479 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
   256 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js
   480 function _iterableToArrayLimit(arr, i) {
   257 function _iterableToArrayLimit(arr, i) {
       
   258   if (typeof Symbol === "undefined" || !(Symbol.iterator in Object(arr))) return;
   481   var _arr = [];
   259   var _arr = [];
   482   var _n = true;
   260   var _n = true;
   483   var _d = false;
   261   var _d = false;
   484   var _e = undefined;
   262   var _e = undefined;
   485 
   263 
   500     }
   278     }
   501   }
   279   }
   502 
   280 
   503   return _arr;
   281   return _arr;
   504 }
   282 }
       
   283 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
       
   284 var unsupportedIterableToArray = __webpack_require__(29);
       
   285 
   505 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
   286 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableRest.js
   506 var nonIterableRest = __webpack_require__(38);
   287 var nonIterableRest = __webpack_require__(39);
   507 
   288 
   508 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
   289 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js
   509 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _slicedToArray; });
   290 
   510 
   291 
   511 
   292 
   512 
   293 
   513 function _slicedToArray(arr, i) {
   294 function _slicedToArray(arr, i) {
   514   return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(nonIterableRest["a" /* default */])();
   295   return Object(arrayWithHoles["a" /* default */])(arr) || _iterableToArrayLimit(arr, i) || Object(unsupportedIterableToArray["a" /* default */])(arr, i) || Object(nonIterableRest["a" /* default */])();
   515 }
   296 }
   516 
   297 
   517 /***/ }),
   298 /***/ }),
   518 /* 29 */
   299 /* 15 */
       
   300 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   301 
       
   302 "use strict";
       
   303 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutProperties; });
       
   304 /* harmony import */ var _objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(41);
       
   305 
       
   306 function _objectWithoutProperties(source, excluded) {
       
   307   if (source == null) return {};
       
   308   var target = Object(_objectWithoutPropertiesLoose__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(source, excluded);
       
   309   var key, i;
       
   310 
       
   311   if (Object.getOwnPropertySymbols) {
       
   312     var sourceSymbolKeys = Object.getOwnPropertySymbols(source);
       
   313 
       
   314     for (i = 0; i < sourceSymbolKeys.length; i++) {
       
   315       key = sourceSymbolKeys[i];
       
   316       if (excluded.indexOf(key) >= 0) continue;
       
   317       if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;
       
   318       target[key] = source[key];
       
   319     }
       
   320   }
       
   321 
       
   322   return target;
       
   323 }
       
   324 
       
   325 /***/ }),
       
   326 /* 16 */
       
   327 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   328 
       
   329 "use strict";
       
   330 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _getPrototypeOf; });
       
   331 function _getPrototypeOf(o) {
       
   332   _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {
       
   333     return o.__proto__ || Object.getPrototypeOf(o);
       
   334   };
       
   335   return _getPrototypeOf(o);
       
   336 }
       
   337 
       
   338 /***/ }),
       
   339 /* 17 */
       
   340 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   341 
       
   342 "use strict";
       
   343 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; });
       
   344 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return _objectSpread2; });
       
   345 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return _createForOfIteratorHelperLoose; });
       
   346 function _defineProperty(obj, key, value) {
       
   347   if (key in obj) {
       
   348     Object.defineProperty(obj, key, {
       
   349       value: value,
       
   350       enumerable: true,
       
   351       configurable: true,
       
   352       writable: true
       
   353     });
       
   354   } else {
       
   355     obj[key] = value;
       
   356   }
       
   357 
       
   358   return obj;
       
   359 }
       
   360 
       
   361 function ownKeys(object, enumerableOnly) {
       
   362   var keys = Object.keys(object);
       
   363 
       
   364   if (Object.getOwnPropertySymbols) {
       
   365     var symbols = Object.getOwnPropertySymbols(object);
       
   366     if (enumerableOnly) symbols = symbols.filter(function (sym) {
       
   367       return Object.getOwnPropertyDescriptor(object, sym).enumerable;
       
   368     });
       
   369     keys.push.apply(keys, symbols);
       
   370   }
       
   371 
       
   372   return keys;
       
   373 }
       
   374 
       
   375 function _objectSpread2(target) {
       
   376   for (var i = 1; i < arguments.length; i++) {
       
   377     var source = arguments[i] != null ? arguments[i] : {};
       
   378 
       
   379     if (i % 2) {
       
   380       ownKeys(Object(source), true).forEach(function (key) {
       
   381         _defineProperty(target, key, source[key]);
       
   382       });
       
   383     } else if (Object.getOwnPropertyDescriptors) {
       
   384       Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
       
   385     } else {
       
   386       ownKeys(Object(source)).forEach(function (key) {
       
   387         Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
       
   388       });
       
   389     }
       
   390   }
       
   391 
       
   392   return target;
       
   393 }
       
   394 
       
   395 function _objectWithoutPropertiesLoose(source, excluded) {
       
   396   if (source == null) return {};
       
   397   var target = {};
       
   398   var sourceKeys = Object.keys(source);
       
   399   var key, i;
       
   400 
       
   401   for (i = 0; i < sourceKeys.length; i++) {
       
   402     key = sourceKeys[i];
       
   403     if (excluded.indexOf(key) >= 0) continue;
       
   404     target[key] = source[key];
       
   405   }
       
   406 
       
   407   return target;
       
   408 }
       
   409 
       
   410 function _unsupportedIterableToArray(o, minLen) {
       
   411   if (!o) return;
       
   412   if (typeof o === "string") return _arrayLikeToArray(o, minLen);
       
   413   var n = Object.prototype.toString.call(o).slice(8, -1);
       
   414   if (n === "Object" && o.constructor) n = o.constructor.name;
       
   415   if (n === "Map" || n === "Set") return Array.from(o);
       
   416   if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
       
   417 }
       
   418 
       
   419 function _arrayLikeToArray(arr, len) {
       
   420   if (len == null || len > arr.length) len = arr.length;
       
   421 
       
   422   for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
       
   423 
       
   424   return arr2;
       
   425 }
       
   426 
       
   427 function _createForOfIteratorHelperLoose(o, allowArrayLike) {
       
   428   var it;
       
   429 
       
   430   if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
       
   431     if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
       
   432       if (it) o = it;
       
   433       var i = 0;
       
   434       return function () {
       
   435         if (i >= o.length) return {
       
   436           done: true
       
   437         };
       
   438         return {
       
   439           done: false,
       
   440           value: o[i++]
       
   441         };
       
   442       };
       
   443     }
       
   444 
       
   445     throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
       
   446   }
       
   447 
       
   448   it = o[Symbol.iterator]();
       
   449   return it.next.bind(it);
       
   450 }
       
   451 
       
   452 
       
   453 
       
   454 
       
   455 /***/ }),
       
   456 /* 18 */
       
   457 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   458 
       
   459 "use strict";
       
   460 
       
   461 // EXPORTS
       
   462 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _toConsumableArray; });
       
   463 
       
   464 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js
       
   465 var arrayLikeToArray = __webpack_require__(26);
       
   466 
       
   467 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js
       
   468 
       
   469 function _arrayWithoutHoles(arr) {
       
   470   if (Array.isArray(arr)) return Object(arrayLikeToArray["a" /* default */])(arr);
       
   471 }
       
   472 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/iterableToArray.js
       
   473 var iterableToArray = __webpack_require__(35);
       
   474 
       
   475 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js
       
   476 var unsupportedIterableToArray = __webpack_require__(29);
       
   477 
       
   478 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js
       
   479 function _nonIterableSpread() {
       
   480   throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
       
   481 }
       
   482 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js
       
   483 
       
   484 
       
   485 
       
   486 
       
   487 function _toConsumableArray(arr) {
       
   488   return _arrayWithoutHoles(arr) || Object(iterableToArray["a" /* default */])(arr) || Object(unsupportedIterableToArray["a" /* default */])(arr) || _nonIterableSpread();
       
   489 }
       
   490 
       
   491 /***/ }),
       
   492 /* 19 */
       
   493 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   494 
       
   495 "use strict";
       
   496 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _createClass; });
       
   497 function _defineProperties(target, props) {
       
   498   for (var i = 0; i < props.length; i++) {
       
   499     var descriptor = props[i];
       
   500     descriptor.enumerable = descriptor.enumerable || false;
       
   501     descriptor.configurable = true;
       
   502     if ("value" in descriptor) descriptor.writable = true;
       
   503     Object.defineProperty(target, descriptor.key, descriptor);
       
   504   }
       
   505 }
       
   506 
       
   507 function _createClass(Constructor, protoProps, staticProps) {
       
   508   if (protoProps) _defineProperties(Constructor.prototype, protoProps);
       
   509   if (staticProps) _defineProperties(Constructor, staticProps);
       
   510   return Constructor;
       
   511 }
       
   512 
       
   513 /***/ }),
       
   514 /* 20 */
       
   515 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   516 
       
   517 "use strict";
       
   518 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _classCallCheck; });
       
   519 function _classCallCheck(instance, Constructor) {
       
   520   if (!(instance instanceof Constructor)) {
       
   521     throw new TypeError("Cannot call a class as a function");
       
   522   }
       
   523 }
       
   524 
       
   525 /***/ }),
       
   526 /* 21 */
   519 /***/ (function(module, exports) {
   527 /***/ (function(module, exports) {
   520 
   528 
   521 (function() { module.exports = this["moment"]; }());
   529 (function() { module.exports = this["wp"]["keycodes"]; }());
   522 
   530 
   523 /***/ }),
   531 /***/ }),
   524 /* 30 */,
   532 /* 22 */
   525 /* 31 */
   533 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   534 
       
   535 "use strict";
       
   536 
       
   537 // EXPORTS
       
   538 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ _inherits; });
       
   539 
       
   540 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js
       
   541 function _setPrototypeOf(o, p) {
       
   542   _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {
       
   543     o.__proto__ = p;
       
   544     return o;
       
   545   };
       
   546 
       
   547   return _setPrototypeOf(o, p);
       
   548 }
       
   549 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js
       
   550 
       
   551 function _inherits(subClass, superClass) {
       
   552   if (typeof superClass !== "function" && superClass !== null) {
       
   553     throw new TypeError("Super expression must either be null or a function");
       
   554   }
       
   555 
       
   556   subClass.prototype = Object.create(superClass && superClass.prototype, {
       
   557     constructor: {
       
   558       value: subClass,
       
   559       writable: true,
       
   560       configurable: true
       
   561     }
       
   562   });
       
   563   if (superClass) _setPrototypeOf(subClass, superClass);
       
   564 }
       
   565 
       
   566 /***/ }),
       
   567 /* 23 */
       
   568 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   569 
       
   570 "use strict";
       
   571 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _possibleConstructorReturn; });
       
   572 /* harmony import */ var _helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(40);
       
   573 /* harmony import */ var _assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12);
       
   574 
       
   575 
       
   576 function _possibleConstructorReturn(self, call) {
       
   577   if (call && (Object(_helpers_esm_typeof__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(call) === "object" || typeof call === "function")) {
       
   578     return call;
       
   579   }
       
   580 
       
   581   return Object(_assertThisInitialized__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(self);
       
   582 }
       
   583 
       
   584 /***/ }),
       
   585 /* 24 */
       
   586 /***/ (function(module, exports) {
       
   587 
       
   588 (function() { module.exports = this["regeneratorRuntime"]; }());
       
   589 
       
   590 /***/ }),
       
   591 /* 25 */
       
   592 /***/ (function(module, exports) {
       
   593 
       
   594 (function() { module.exports = this["wp"]["richText"]; }());
       
   595 
       
   596 /***/ }),
       
   597 /* 26 */
       
   598 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   599 
       
   600 "use strict";
       
   601 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayLikeToArray; });
       
   602 function _arrayLikeToArray(arr, len) {
       
   603   if (len == null || len > arr.length) len = arr.length;
       
   604 
       
   605   for (var i = 0, arr2 = new Array(len); i < len; i++) {
       
   606     arr2[i] = arr[i];
       
   607   }
       
   608 
       
   609   return arr2;
       
   610 }
       
   611 
       
   612 /***/ }),
       
   613 /* 27 */,
       
   614 /* 28 */
   526 /***/ (function(module, exports, __webpack_require__) {
   615 /***/ (function(module, exports, __webpack_require__) {
   527 
   616 
   528 /**
   617 /**
   529  * Copyright (c) 2013-present, Facebook, Inc.
   618  * Copyright (c) 2013-present, Facebook, Inc.
   530  *
   619  *
   531  * This source code is licensed under the MIT license found in the
   620  * This source code is licensed under the MIT license found in the
   532  * LICENSE file in the root directory of this source tree.
   621  * LICENSE file in the root directory of this source tree.
   533  */
   622  */
   534 
   623 
   535 if (false) { var throwOnDirectAccess, isValidElement, REACT_ELEMENT_TYPE; } else {
   624 if (false) { var throwOnDirectAccess, ReactIs; } else {
   536   // By explicitly using `prop-types` you are opting into new production behavior.
   625   // By explicitly using `prop-types` you are opting into new production behavior.
   537   // http://fb.me/prop-types-in-prod
   626   // http://fb.me/prop-types-in-prod
   538   module.exports = __webpack_require__(89)();
   627   module.exports = __webpack_require__(138)();
   539 }
   628 }
   540 
   629 
   541 
   630 
   542 /***/ }),
   631 /***/ }),
       
   632 /* 29 */
       
   633 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   634 
       
   635 "use strict";
       
   636 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _unsupportedIterableToArray; });
       
   637 /* harmony import */ var _arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(26);
       
   638 
       
   639 function _unsupportedIterableToArray(o, minLen) {
       
   640   if (!o) return;
       
   641   if (typeof o === "string") return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen);
       
   642   var n = Object.prototype.toString.call(o).slice(8, -1);
       
   643   if (n === "Object" && o.constructor) n = o.constructor.name;
       
   644   if (n === "Map" || n === "Set") return Array.from(o);
       
   645   if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Object(_arrayLikeToArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(o, minLen);
       
   646 }
       
   647 
       
   648 /***/ }),
       
   649 /* 30 */
       
   650 /***/ (function(module, exports) {
       
   651 
       
   652 (function() { module.exports = this["wp"]["dom"]; }());
       
   653 
       
   654 /***/ }),
       
   655 /* 31 */,
   543 /* 32 */
   656 /* 32 */
       
   657 /***/ (function(module, exports) {
       
   658 
       
   659 (function() { module.exports = this["wp"]["hooks"]; }());
       
   660 
       
   661 /***/ }),
       
   662 /* 33 */,
       
   663 /* 34 */
   544 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   664 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   545 
   665 
   546 "use strict";
   666 "use strict";
   547 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; });
   667 /* unused harmony export Button */
   548 function _typeof2(obj) { if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof2 = function _typeof2(obj) { return typeof obj; }; } else { _typeof2 = function _typeof2(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof2(obj); }
   668 /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
   549 
   669 /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(15);
   550 function _typeof(obj) {
   670 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
   551   if (typeof Symbol === "function" && _typeof2(Symbol.iterator) === "symbol") {
   671 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
   552     _typeof = function _typeof(obj) {
   672 /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(11);
   553       return _typeof2(obj);
   673 /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_3__);
   554     };
   674 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(2);
   555   } else {
   675 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_4__);
   556     _typeof = function _typeof(obj) {
   676 /* harmony import */ var _wordpress_deprecated__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(37);
   557       return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof2(obj);
   677 /* harmony import */ var _wordpress_deprecated__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_deprecated__WEBPACK_IMPORTED_MODULE_5__);
   558     };
   678 /* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(86);
   559   }
   679 /* harmony import */ var _icon__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(88);
   560 
   680 
   561   return _typeof(obj);
   681 
   562 }
   682 
       
   683 
       
   684 function _createForOfIteratorHelper(o) { if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) { var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var it, normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
       
   685 
       
   686 function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(n); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
       
   687 
       
   688 function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
       
   689 
       
   690 /**
       
   691  * External dependencies
       
   692  */
       
   693 
       
   694 
       
   695 /**
       
   696  * WordPress dependencies
       
   697  */
       
   698 
       
   699 
       
   700 
       
   701 /**
       
   702  * Internal dependencies
       
   703  */
       
   704 
       
   705 
       
   706 
       
   707 var disabledEventsOnDisabledButton = ['onMouseDown', 'onClick'];
       
   708 function Button(props, ref) {
       
   709   var href = props.href,
       
   710       target = props.target,
       
   711       isPrimary = props.isPrimary,
       
   712       isSmall = props.isSmall,
       
   713       isTertiary = props.isTertiary,
       
   714       isPressed = props.isPressed,
       
   715       isBusy = props.isBusy,
       
   716       isDefault = props.isDefault,
       
   717       isSecondary = props.isSecondary,
       
   718       isLink = props.isLink,
       
   719       isDestructive = props.isDestructive,
       
   720       className = props.className,
       
   721       disabled = props.disabled,
       
   722       icon = props.icon,
       
   723       iconSize = props.iconSize,
       
   724       showTooltip = props.showTooltip,
       
   725       tooltipPosition = props.tooltipPosition,
       
   726       shortcut = props.shortcut,
       
   727       label = props.label,
       
   728       children = props.children,
       
   729       isFocusable = props.__experimentalIsFocusable,
       
   730       additionalProps = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(props, ["href", "target", "isPrimary", "isSmall", "isTertiary", "isPressed", "isBusy", "isDefault", "isSecondary", "isLink", "isDestructive", "className", "disabled", "icon", "iconSize", "showTooltip", "tooltipPosition", "shortcut", "label", "children", "__experimentalIsFocusable"]);
       
   731 
       
   732   if (isDefault) {
       
   733     _wordpress_deprecated__WEBPACK_IMPORTED_MODULE_5___default()('Button isDefault prop', {
       
   734       alternative: 'isSecondary'
       
   735     });
       
   736   }
       
   737 
       
   738   var classes = classnames__WEBPACK_IMPORTED_MODULE_3___default()('components-button', className, {
       
   739     'is-secondary': isDefault || isSecondary,
       
   740     'is-primary': isPrimary,
       
   741     'is-small': isSmall,
       
   742     'is-tertiary': isTertiary,
       
   743     'is-pressed': isPressed,
       
   744     'is-busy': isBusy,
       
   745     'is-link': isLink,
       
   746     'is-destructive': isDestructive,
       
   747     'has-text': !!icon && !!children,
       
   748     'has-icon': !!icon
       
   749   });
       
   750   var trulyDisabled = disabled && !isFocusable;
       
   751   var Tag = href !== undefined && !trulyDisabled ? 'a' : 'button';
       
   752   var tagProps = Tag === 'a' ? {
       
   753     href: href,
       
   754     target: target
       
   755   } : {
       
   756     type: 'button',
       
   757     disabled: trulyDisabled,
       
   758     'aria-pressed': isPressed
       
   759   };
       
   760 
       
   761   if (disabled && isFocusable) {
       
   762     // In this case, the button will be disabled, but still focusable and
       
   763     // perceivable by screen reader users.
       
   764     tagProps['aria-disabled'] = true;
       
   765 
       
   766     var _iterator = _createForOfIteratorHelper(disabledEventsOnDisabledButton),
       
   767         _step;
       
   768 
       
   769     try {
       
   770       for (_iterator.s(); !(_step = _iterator.n()).done;) {
       
   771         var disabledEvent = _step.value;
       
   772 
       
   773         additionalProps[disabledEvent] = function (event) {
       
   774           event.stopPropagation();
       
   775           event.preventDefault();
       
   776         };
       
   777       }
       
   778     } catch (err) {
       
   779       _iterator.e(err);
       
   780     } finally {
       
   781       _iterator.f();
       
   782     }
       
   783   } // Should show the tooltip if...
       
   784 
       
   785 
       
   786   var shouldShowTooltip = !trulyDisabled && ( // an explicit tooltip is passed or...
       
   787   showTooltip && label || // there's a shortcut or...
       
   788   shortcut || // there's a label and...
       
   789   !!label && ( // the children are empty and...
       
   790   !children || Object(lodash__WEBPACK_IMPORTED_MODULE_4__["isArray"])(children) && !children.length) && // the tooltip is not explicitly disabled.
       
   791   false !== showTooltip);
       
   792   var element = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])(Tag, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, tagProps, additionalProps, {
       
   793     className: classes,
       
   794     "aria-label": additionalProps['aria-label'] || label,
       
   795     ref: ref
       
   796   }), icon && Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])(_icon__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], {
       
   797     icon: icon,
       
   798     size: iconSize
       
   799   }), children);
       
   800 
       
   801   if (!shouldShowTooltip) {
       
   802     return element;
       
   803   }
       
   804 
       
   805   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])(_tooltip__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], {
       
   806     text: label,
       
   807     shortcut: shortcut,
       
   808     position: tooltipPosition
       
   809   }, element);
       
   810 }
       
   811 /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["forwardRef"])(Button));
       
   812 
   563 
   813 
   564 /***/ }),
   814 /***/ }),
   565 /* 33 */
   815 /* 35 */
   566 /***/ (function(module, exports) {
       
   567 
       
   568 (function() { module.exports = this["wp"]["apiFetch"]; }());
       
   569 
       
   570 /***/ }),
       
   571 /* 34 */
       
   572 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   816 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   573 
   817 
   574 "use strict";
   818 "use strict";
   575 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _iterableToArray; });
   819 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _iterableToArray; });
   576 function _iterableToArray(iter) {
   820 function _iterableToArray(iter) {
   577   if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter);
   821   if (typeof Symbol !== "undefined" && Symbol.iterator in Object(iter)) return Array.from(iter);
   578 }
   822 }
   579 
   823 
   580 /***/ }),
   824 /***/ }),
   581 /* 35 */,
       
   582 /* 36 */,
   825 /* 36 */,
   583 /* 37 */
   826 /* 37 */
       
   827 /***/ (function(module, exports) {
       
   828 
       
   829 (function() { module.exports = this["wp"]["deprecated"]; }());
       
   830 
       
   831 /***/ }),
       
   832 /* 38 */
   584 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   833 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   585 
   834 
   586 "use strict";
   835 "use strict";
   587 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; });
   836 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _arrayWithHoles; });
   588 function _arrayWithHoles(arr) {
   837 function _arrayWithHoles(arr) {
   589   if (Array.isArray(arr)) return arr;
   838   if (Array.isArray(arr)) return arr;
   590 }
   839 }
   591 
   840 
   592 /***/ }),
   841 /***/ }),
   593 /* 38 */
   842 /* 39 */
   594 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   843 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   595 
   844 
   596 "use strict";
   845 "use strict";
   597 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; });
   846 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _nonIterableRest; });
   598 function _nonIterableRest() {
   847 function _nonIterableRest() {
   599   throw new TypeError("Invalid attempt to destructure non-iterable instance");
   848   throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
   600 }
   849 }
   601 
   850 
   602 /***/ }),
   851 /***/ }),
   603 /* 39 */
   852 /* 40 */
   604 /***/ (function(module, exports, __webpack_require__) {
   853 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   605 
   854 
   606 "use strict";
   855 "use strict";
   607 
   856 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _typeof; });
   608 
   857 function _typeof(obj) {
   609 Object.defineProperty(exports, "__esModule", {
   858   "@babel/helpers - typeof";
   610   value: true
   859 
   611 });
   860   if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
   612 var DISPLAY_FORMAT = exports.DISPLAY_FORMAT = 'L';
   861     _typeof = function _typeof(obj) {
   613 var ISO_FORMAT = exports.ISO_FORMAT = 'YYYY-MM-DD';
   862       return typeof obj;
   614 var ISO_MONTH_FORMAT = exports.ISO_MONTH_FORMAT = 'YYYY-MM';
   863     };
   615 
   864   } else {
   616 var START_DATE = exports.START_DATE = 'startDate';
   865     _typeof = function _typeof(obj) {
   617 var END_DATE = exports.END_DATE = 'endDate';
   866       return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
   618 
   867     };
   619 var HORIZONTAL_ORIENTATION = exports.HORIZONTAL_ORIENTATION = 'horizontal';
   868   }
   620 var VERTICAL_ORIENTATION = exports.VERTICAL_ORIENTATION = 'vertical';
   869 
   621 var VERTICAL_SCROLLABLE = exports.VERTICAL_SCROLLABLE = 'verticalScrollable';
   870   return _typeof(obj);
   622 
   871 }
   623 var ICON_BEFORE_POSITION = exports.ICON_BEFORE_POSITION = 'before';
       
   624 var ICON_AFTER_POSITION = exports.ICON_AFTER_POSITION = 'after';
       
   625 
       
   626 var INFO_POSITION_TOP = exports.INFO_POSITION_TOP = 'top';
       
   627 var INFO_POSITION_BOTTOM = exports.INFO_POSITION_BOTTOM = 'bottom';
       
   628 var INFO_POSITION_BEFORE = exports.INFO_POSITION_BEFORE = 'before';
       
   629 var INFO_POSITION_AFTER = exports.INFO_POSITION_AFTER = 'after';
       
   630 
       
   631 var ANCHOR_LEFT = exports.ANCHOR_LEFT = 'left';
       
   632 var ANCHOR_RIGHT = exports.ANCHOR_RIGHT = 'right';
       
   633 
       
   634 var OPEN_DOWN = exports.OPEN_DOWN = 'down';
       
   635 var OPEN_UP = exports.OPEN_UP = 'up';
       
   636 
       
   637 var DAY_SIZE = exports.DAY_SIZE = 39;
       
   638 var BLOCKED_MODIFIER = exports.BLOCKED_MODIFIER = 'blocked';
       
   639 var WEEKDAYS = exports.WEEKDAYS = [0, 1, 2, 3, 4, 5, 6];
       
   640 
       
   641 var FANG_WIDTH_PX = exports.FANG_WIDTH_PX = 20;
       
   642 var FANG_HEIGHT_PX = exports.FANG_HEIGHT_PX = 10;
       
   643 var DEFAULT_VERTICAL_SPACING = exports.DEFAULT_VERTICAL_SPACING = 22;
       
   644 
       
   645 var MODIFIER_KEY_NAMES = exports.MODIFIER_KEY_NAMES = new Set(['Shift', 'Control', 'Alt', 'Meta']);
       
   646 
   872 
   647 /***/ }),
   873 /***/ }),
   648 /* 40 */,
   874 /* 41 */
   649 /* 41 */,
   875 /***/ (function(module, __webpack_exports__, __webpack_require__) {
   650 /* 42 */
   876 
       
   877 "use strict";
       
   878 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectWithoutPropertiesLoose; });
       
   879 function _objectWithoutPropertiesLoose(source, excluded) {
       
   880   if (source == null) return {};
       
   881   var target = {};
       
   882   var sourceKeys = Object.keys(source);
       
   883   var key, i;
       
   884 
       
   885   for (i = 0; i < sourceKeys.length; i++) {
       
   886     key = sourceKeys[i];
       
   887     if (excluded.indexOf(key) >= 0) continue;
       
   888     target[key] = source[key];
       
   889   }
       
   890 
       
   891   return target;
       
   892 }
       
   893 
       
   894 /***/ }),
       
   895 /* 42 */,
       
   896 /* 43 */
   651 /***/ (function(module, exports) {
   897 /***/ (function(module, exports) {
   652 
   898 
   653 (function() { module.exports = this["wp"]["isShallowEqual"]; }());
   899 (function() { module.exports = this["moment"]; }());
   654 
       
   655 /***/ }),
       
   656 /* 43 */
       
   657 /***/ (function(module, exports, __webpack_require__) {
       
   658 
       
   659 module.exports =  true ? __webpack_require__(290) : undefined;
       
   660 
       
   661 
       
   662 
   900 
   663 /***/ }),
   901 /***/ }),
   664 /* 44 */,
   902 /* 44 */,
   665 /* 45 */
   903 /* 45 */,
       
   904 /* 46 */
       
   905 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   906 
       
   907 "use strict";
       
   908 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useLiveRef; });
       
   909 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
   910 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
   911 /* harmony import */ var _useIsomorphicEffect_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59);
       
   912 
       
   913 
       
   914 
       
   915 /**
       
   916  * A `React.Ref` that keeps track of the passed `value`.
       
   917  */
       
   918 
       
   919 function useLiveRef(value) {
       
   920   var ref = Object(react__WEBPACK_IMPORTED_MODULE_0__["useRef"])(value);
       
   921   Object(_useIsomorphicEffect_js__WEBPACK_IMPORTED_MODULE_1__[/* useIsomorphicEffect */ "a"])(function () {
       
   922     ref.current = value;
       
   923   });
       
   924   return ref;
       
   925 }
       
   926 
       
   927 
       
   928 
       
   929 
       
   930 /***/ }),
       
   931 /* 47 */
       
   932 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   933 
       
   934 "use strict";
       
   935 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getDocument; });
       
   936 /**
       
   937  * Returns `element.ownerDocument || window.document`.
       
   938  */
       
   939 function getDocument(element) {
       
   940   return element ? element.ownerDocument || element : window.document;
       
   941 }
       
   942 
       
   943 
       
   944 
       
   945 
       
   946 /***/ }),
       
   947 /* 48 */
       
   948 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
   949 
       
   950 "use strict";
       
   951 
       
   952 // EXPORTS
       
   953 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ createHook; });
       
   954 
       
   955 // EXTERNAL MODULE: external {"this":"React"}
       
   956 var external_this_React_ = __webpack_require__(13);
       
   957 
       
   958 // EXTERNAL MODULE: ./node_modules/reakit-system/es/SystemContext.js
       
   959 var SystemContext = __webpack_require__(74);
       
   960 
       
   961 // CONCATENATED MODULE: ./node_modules/reakit-system/es/useToken.js
       
   962 
       
   963 
       
   964 
       
   965 /**
       
   966  * React custom hook that returns the value of any token defined in the
       
   967  * SystemContext. It's mainly used internally in [`useOptions`](#useoptions)
       
   968  * and [`useProps`](#useprops).
       
   969  *
       
   970  * @example
       
   971  * import { SystemProvider, useToken } from "reakit-system";
       
   972  *
       
   973  * const system = {
       
   974  *   token: "value",
       
   975  * };
       
   976  *
       
   977  * function Component(props) {
       
   978  *   const token = useToken("token", "default value");
       
   979  *   return <div {...props}>{token}</div>;
       
   980  * }
       
   981  *
       
   982  * function App() {
       
   983  *   return (
       
   984  *     <SystemProvider unstable_system={system}>
       
   985  *       <Component />
       
   986  *     </SystemProvider>
       
   987  *   );
       
   988  * }
       
   989  */
       
   990 
       
   991 function useToken(token, defaultValue) {
       
   992   Object(external_this_React_["useDebugValue"])(token);
       
   993   var context = Object(external_this_React_["useContext"])(SystemContext["a" /* SystemContext */]);
       
   994   return context[token] != null ? context[token] : defaultValue;
       
   995 }
       
   996 
       
   997 
       
   998 
       
   999 // CONCATENATED MODULE: ./node_modules/reakit-system/es/useProps.js
       
  1000 
       
  1001 
       
  1002 
       
  1003 
       
  1004 /**
       
  1005  * React custom hook that returns the props returned by a given
       
  1006  * `use${name}Props` in the SystemContext.
       
  1007  *
       
  1008  * @example
       
  1009  * import { SystemProvider, useProps } from "reakit-system";
       
  1010  *
       
  1011  * const system = {
       
  1012  *   useAProps(options, htmlProps) {
       
  1013  *     return {
       
  1014  *       ...htmlProps,
       
  1015  *       href: options.url,
       
  1016  *     };
       
  1017  *   },
       
  1018  * };
       
  1019  *
       
  1020  * function A({ url, ...htmlProps }) {
       
  1021  *   const props = useProps("A", { url }, htmlProps);
       
  1022  *   return <a {...props} />;
       
  1023  * }
       
  1024  *
       
  1025  * function App() {
       
  1026  *   return (
       
  1027  *     <SystemProvider unstable_system={system}>
       
  1028  *       <A url="url">It will convert url into href in useAProps</A>
       
  1029  *     </SystemProvider>
       
  1030  *   );
       
  1031  * }
       
  1032  */
       
  1033 
       
  1034 function useProps(name, options, htmlProps) {
       
  1035   if (options === void 0) {
       
  1036     options = {};
       
  1037   }
       
  1038 
       
  1039   if (htmlProps === void 0) {
       
  1040     htmlProps = {};
       
  1041   }
       
  1042 
       
  1043   var hookName = "use" + name + "Props";
       
  1044   Object(external_this_React_["useDebugValue"])(hookName);
       
  1045   var useHook = useToken(hookName);
       
  1046 
       
  1047   if (useHook) {
       
  1048     return useHook(options, htmlProps);
       
  1049   }
       
  1050 
       
  1051   return htmlProps;
       
  1052 }
       
  1053 
       
  1054 
       
  1055 
       
  1056 // EXTERNAL MODULE: ./node_modules/reakit-system/es/_rollupPluginBabelHelpers-0c84a174.js
       
  1057 var _rollupPluginBabelHelpers_0c84a174 = __webpack_require__(55);
       
  1058 
       
  1059 // CONCATENATED MODULE: ./node_modules/reakit-system/es/useOptions.js
       
  1060 
       
  1061 
       
  1062 
       
  1063 
       
  1064 
       
  1065 /**
       
  1066  * React custom hook that returns the options returned by a given
       
  1067  * `use${name}Options` in the SystemContext.
       
  1068  *
       
  1069  * @example
       
  1070  * import React from "react";
       
  1071  * import { SystemProvider, useOptions } from "reakit-system";
       
  1072  *
       
  1073  * const system = {
       
  1074  *   useAOptions(options, htmlProps) {
       
  1075  *     return {
       
  1076  *       ...options,
       
  1077  *       url: htmlProps.href,
       
  1078  *     };
       
  1079  *   },
       
  1080  * };
       
  1081  *
       
  1082  * function A({ url, ...htmlProps }) {
       
  1083  *   const options = useOptions("A", { url }, htmlProps);
       
  1084  *   return <a href={options.url} {...htmlProps} />;
       
  1085  * }
       
  1086  *
       
  1087  * function App() {
       
  1088  *   return (
       
  1089  *     <SystemProvider unstable_system={system}>
       
  1090  *       <A href="url">
       
  1091  *         It will convert href into url in useAOptions and then url into href in A
       
  1092  *       </A>
       
  1093  *     </SystemProvider>
       
  1094  *   );
       
  1095  * }
       
  1096  */
       
  1097 
       
  1098 function useOptions(name, options, htmlProps) {
       
  1099   if (options === void 0) {
       
  1100     options = {};
       
  1101   }
       
  1102 
       
  1103   if (htmlProps === void 0) {
       
  1104     htmlProps = {};
       
  1105   }
       
  1106 
       
  1107   var hookName = "use" + name + "Options";
       
  1108   Object(external_this_React_["useDebugValue"])(hookName);
       
  1109   var useHook = useToken(hookName);
       
  1110 
       
  1111   if (useHook) {
       
  1112     return Object(_rollupPluginBabelHelpers_0c84a174["a" /* _ */])(Object(_rollupPluginBabelHelpers_0c84a174["a" /* _ */])({}, options), useHook(options, htmlProps));
       
  1113   }
       
  1114 
       
  1115   return options;
       
  1116 }
       
  1117 
       
  1118 
       
  1119 
       
  1120 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/shallowEqual.js
       
  1121 var shallowEqual = __webpack_require__(56);
       
  1122 
       
  1123 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/toArray.js
       
  1124 /**
       
  1125  * Transforms `arg` into an array if it's not already.
       
  1126  *
       
  1127  * @example
       
  1128  * import { toArray } from "reakit-utils";
       
  1129  *
       
  1130  * toArray("a"); // ["a"]
       
  1131  * toArray(["a"]); // ["a"]
       
  1132  */
       
  1133 function toArray(arg) {
       
  1134   if (Array.isArray(arg)) {
       
  1135     return arg;
       
  1136   }
       
  1137 
       
  1138   return typeof arg !== "undefined" ? [arg] : [];
       
  1139 }
       
  1140 
       
  1141 
       
  1142 
       
  1143 // CONCATENATED MODULE: ./node_modules/reakit-system/es/createHook.js
       
  1144 
       
  1145 
       
  1146 
       
  1147 
       
  1148 
       
  1149 
       
  1150 
       
  1151 
       
  1152 
       
  1153 /**
       
  1154  * Creates a React custom hook that will return component props.
       
  1155  *
       
  1156  * @example
       
  1157  * import { createHook } from "reakit-system";
       
  1158  *
       
  1159  * const useA = createHook({
       
  1160  *   name: "A",
       
  1161  *   keys: ["url"], // custom props/options keys
       
  1162  *   useProps(options, htmlProps) {
       
  1163  *     return {
       
  1164  *       ...htmlProps,
       
  1165  *       href: options.url,
       
  1166  *     };
       
  1167  *   },
       
  1168  * });
       
  1169  *
       
  1170  * function A({ url, ...htmlProps }) {
       
  1171  *   const props = useA({ url }, htmlProps);
       
  1172  *   return <a {...props} />;
       
  1173  * }
       
  1174  *
       
  1175  * @param options
       
  1176  */
       
  1177 function createHook(options) {
       
  1178   var _options$useState, _composedHooks$;
       
  1179 
       
  1180   var composedHooks = toArray(options.compose);
       
  1181 
       
  1182   var __useOptions = function __useOptions(hookOptions, htmlProps) {
       
  1183     // Call the current hook's useOptions first
       
  1184     if (options.useOptions) {
       
  1185       hookOptions = options.useOptions(hookOptions, htmlProps);
       
  1186     } // If there's name, call useOptions from the system context
       
  1187 
       
  1188 
       
  1189     if (options.name) {
       
  1190       hookOptions = useOptions(options.name, hookOptions, htmlProps);
       
  1191     } // Run composed hooks useOptions
       
  1192 
       
  1193 
       
  1194     if (options.compose) {
       
  1195       for (var _iterator = Object(_rollupPluginBabelHelpers_0c84a174["c" /* b */])(composedHooks), _step; !(_step = _iterator()).done;) {
       
  1196         var hook = _step.value;
       
  1197         hookOptions = hook.__useOptions(hookOptions, htmlProps);
       
  1198       }
       
  1199     }
       
  1200 
       
  1201     return hookOptions;
       
  1202   };
       
  1203 
       
  1204   var useHook = function useHook(hookOptions, htmlProps, unstable_ignoreUseOptions) {
       
  1205     if (hookOptions === void 0) {
       
  1206       hookOptions = {};
       
  1207     }
       
  1208 
       
  1209     if (htmlProps === void 0) {
       
  1210       htmlProps = {};
       
  1211     }
       
  1212 
       
  1213     if (unstable_ignoreUseOptions === void 0) {
       
  1214       unstable_ignoreUseOptions = false;
       
  1215     }
       
  1216 
       
  1217     // This won't execute when useHook was called from within another useHook
       
  1218     if (!unstable_ignoreUseOptions) {
       
  1219       hookOptions = __useOptions(hookOptions, htmlProps);
       
  1220     } // Call the current hook's useProps
       
  1221 
       
  1222 
       
  1223     if (options.useProps) {
       
  1224       htmlProps = options.useProps(hookOptions, htmlProps);
       
  1225     } // If there's name, call useProps from the system context
       
  1226 
       
  1227 
       
  1228     if (options.name) {
       
  1229       htmlProps = useProps(options.name, hookOptions, htmlProps);
       
  1230     }
       
  1231 
       
  1232     if (options.compose) {
       
  1233       if (options.useComposeOptions) {
       
  1234         hookOptions = options.useComposeOptions(hookOptions, htmlProps);
       
  1235       }
       
  1236 
       
  1237       if (options.useComposeProps) {
       
  1238         htmlProps = options.useComposeProps(hookOptions, htmlProps);
       
  1239       } else {
       
  1240         for (var _iterator2 = Object(_rollupPluginBabelHelpers_0c84a174["c" /* b */])(composedHooks), _step2; !(_step2 = _iterator2()).done;) {
       
  1241           var hook = _step2.value;
       
  1242           htmlProps = hook(hookOptions, htmlProps, true);
       
  1243         }
       
  1244       }
       
  1245     } // Remove undefined values from htmlProps
       
  1246 
       
  1247 
       
  1248     var finalHTMLProps = {};
       
  1249     var definedHTMLProps = htmlProps || {};
       
  1250 
       
  1251     for (var prop in definedHTMLProps) {
       
  1252       if (definedHTMLProps[prop] !== undefined) {
       
  1253         finalHTMLProps[prop] = definedHTMLProps[prop];
       
  1254       }
       
  1255     }
       
  1256 
       
  1257     return finalHTMLProps;
       
  1258   };
       
  1259 
       
  1260   useHook.__useOptions = __useOptions;
       
  1261   var composedKeys = composedHooks.reduce(function (keys, hook) {
       
  1262     keys.push.apply(keys, hook.__keys || []);
       
  1263     return keys;
       
  1264   }, []); // It's used by createComponent to split option props (keys) and html props
       
  1265 
       
  1266   useHook.__keys = [].concat(composedKeys, ((_options$useState = options.useState) === null || _options$useState === void 0 ? void 0 : _options$useState.__keys) || [], options.keys || []);
       
  1267   useHook.unstable_propsAreEqual = options.propsAreEqual || ((_composedHooks$ = composedHooks[0]) === null || _composedHooks$ === void 0 ? void 0 : _composedHooks$.unstable_propsAreEqual) || shallowEqual["a" /* shallowEqual */];
       
  1268 
       
  1269   if (false) {}
       
  1270 
       
  1271   return useHook;
       
  1272 }
       
  1273 
       
  1274 
       
  1275 
       
  1276 
       
  1277 /***/ }),
       
  1278 /* 49 */
       
  1279 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  1280 
       
  1281 "use strict";
       
  1282 
       
  1283 // EXPORTS
       
  1284 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ createComponent; });
       
  1285 
       
  1286 // EXTERNAL MODULE: external {"this":"React"}
       
  1287 var external_this_React_ = __webpack_require__(13);
       
  1288 
       
  1289 // EXTERNAL MODULE: ./node_modules/reakit-system/es/_rollupPluginBabelHelpers-0c84a174.js
       
  1290 var _rollupPluginBabelHelpers_0c84a174 = __webpack_require__(55);
       
  1291 
       
  1292 // EXTERNAL MODULE: ./node_modules/reakit-system/es/useCreateElement.js
       
  1293 var useCreateElement = __webpack_require__(78);
       
  1294 
       
  1295 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/splitProps.js
       
  1296 /**
       
  1297  * Splits an object (`props`) into a tuple where the first item is an object
       
  1298  * with the passed `keys`, and the second item is an object with these keys
       
  1299  * omitted.
       
  1300  *
       
  1301  * @example
       
  1302  * import { splitProps } from "reakit-utils";
       
  1303  *
       
  1304  * splitProps({ a: "a", b: "b" }, ["a"]); // [{ a: "a" }, { b: "b" }]
       
  1305  */
       
  1306 function splitProps(props, keys) {
       
  1307   var propsKeys = Object.keys(props);
       
  1308   var picked = {};
       
  1309   var omitted = {};
       
  1310 
       
  1311   for (var _i = 0, _propsKeys = propsKeys; _i < _propsKeys.length; _i++) {
       
  1312     var key = _propsKeys[_i];
       
  1313 
       
  1314     if (keys.indexOf(key) >= 0) {
       
  1315       picked[key] = props[key];
       
  1316     } else {
       
  1317       omitted[key] = props[key];
       
  1318     }
       
  1319   }
       
  1320 
       
  1321   return [picked, omitted];
       
  1322 }
       
  1323 
       
  1324 
       
  1325 
       
  1326 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/shallowEqual.js
       
  1327 var shallowEqual = __webpack_require__(56);
       
  1328 
       
  1329 // CONCATENATED MODULE: ./node_modules/reakit-system/es/createComponent.js
       
  1330 
       
  1331 
       
  1332 
       
  1333 
       
  1334 
       
  1335 
       
  1336 
       
  1337 function forwardRef(component) {
       
  1338   return /*#__PURE__*/Object(external_this_React_["forwardRef"])(component);
       
  1339 }
       
  1340 
       
  1341 function memo(component, propsAreEqual) {
       
  1342   return /*#__PURE__*/Object(external_this_React_["memo"])(component, propsAreEqual);
       
  1343 }
       
  1344 
       
  1345 /**
       
  1346  * Creates a React component.
       
  1347  *
       
  1348  * @example
       
  1349  * import { createComponent } from "reakit-system";
       
  1350  *
       
  1351  * const A = createComponent({ as: "a" });
       
  1352  *
       
  1353  * @param options
       
  1354  */
       
  1355 function createComponent(_ref) {
       
  1356   var type = _ref.as,
       
  1357       useHook = _ref.useHook,
       
  1358       shouldMemo = _ref.memo,
       
  1359       _ref$propsAreEqual = _ref.propsAreEqual,
       
  1360       propsAreEqual = _ref$propsAreEqual === void 0 ? useHook === null || useHook === void 0 ? void 0 : useHook.unstable_propsAreEqual : _ref$propsAreEqual,
       
  1361       _ref$keys = _ref.keys,
       
  1362       keys = _ref$keys === void 0 ? (useHook === null || useHook === void 0 ? void 0 : useHook.__keys) || [] : _ref$keys,
       
  1363       _ref$useCreateElement = _ref.useCreateElement,
       
  1364       useCreateElement$1 = _ref$useCreateElement === void 0 ? useCreateElement["a" /* useCreateElement */] : _ref$useCreateElement;
       
  1365 
       
  1366   var Comp = function Comp(_ref2, ref) {
       
  1367     var _ref2$as = _ref2.as,
       
  1368         as = _ref2$as === void 0 ? type : _ref2$as,
       
  1369         props = Object(_rollupPluginBabelHelpers_0c84a174["b" /* a */])(_ref2, ["as"]);
       
  1370 
       
  1371     if (useHook) {
       
  1372       var _as$render;
       
  1373 
       
  1374       var _splitProps = splitProps(props, keys),
       
  1375           _options = _splitProps[0],
       
  1376           htmlProps = _splitProps[1];
       
  1377 
       
  1378       var _useHook = useHook(_options, Object(_rollupPluginBabelHelpers_0c84a174["a" /* _ */])({
       
  1379         ref: ref
       
  1380       }, htmlProps)),
       
  1381           wrapElement = _useHook.wrapElement,
       
  1382           elementProps = Object(_rollupPluginBabelHelpers_0c84a174["b" /* a */])(_useHook, ["wrapElement"]); // @ts-ignore
       
  1383 
       
  1384 
       
  1385       var asKeys = ((_as$render = as.render) === null || _as$render === void 0 ? void 0 : _as$render.__keys) || as.__keys;
       
  1386       var asOptions = asKeys && splitProps(props, asKeys)[0];
       
  1387       var allProps = asOptions ? Object(_rollupPluginBabelHelpers_0c84a174["a" /* _ */])(Object(_rollupPluginBabelHelpers_0c84a174["a" /* _ */])({}, elementProps), asOptions) : elementProps;
       
  1388 
       
  1389       var _element = useCreateElement$1(as, allProps);
       
  1390 
       
  1391       if (wrapElement) {
       
  1392         return wrapElement(_element);
       
  1393       }
       
  1394 
       
  1395       return _element;
       
  1396     }
       
  1397 
       
  1398     return useCreateElement$1(as, Object(_rollupPluginBabelHelpers_0c84a174["a" /* _ */])({
       
  1399       ref: ref
       
  1400     }, props));
       
  1401   };
       
  1402 
       
  1403   if (false) {}
       
  1404 
       
  1405   Comp = forwardRef(Comp);
       
  1406 
       
  1407   if (shouldMemo) {
       
  1408     Comp = memo(Comp, propsAreEqual);
       
  1409   }
       
  1410 
       
  1411   Comp.__keys = keys;
       
  1412   Comp.unstable_propsAreEqual = propsAreEqual || shallowEqual["a" /* shallowEqual */];
       
  1413   return Comp;
       
  1414 }
       
  1415 
       
  1416 
       
  1417 
       
  1418 
       
  1419 /***/ }),
       
  1420 /* 50 */
       
  1421 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  1422 
       
  1423 "use strict";
       
  1424 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _asyncToGenerator; });
       
  1425 function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
       
  1426   try {
       
  1427     var info = gen[key](arg);
       
  1428     var value = info.value;
       
  1429   } catch (error) {
       
  1430     reject(error);
       
  1431     return;
       
  1432   }
       
  1433 
       
  1434   if (info.done) {
       
  1435     resolve(value);
       
  1436   } else {
       
  1437     Promise.resolve(value).then(_next, _throw);
       
  1438   }
       
  1439 }
       
  1440 
       
  1441 function _asyncToGenerator(fn) {
       
  1442   return function () {
       
  1443     var self = this,
       
  1444         args = arguments;
       
  1445     return new Promise(function (resolve, reject) {
       
  1446       var gen = fn.apply(self, args);
       
  1447 
       
  1448       function _next(value) {
       
  1449         asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
       
  1450       }
       
  1451 
       
  1452       function _throw(err) {
       
  1453         asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
       
  1454       }
       
  1455 
       
  1456       _next(undefined);
       
  1457     });
       
  1458   };
       
  1459 }
       
  1460 
       
  1461 /***/ }),
       
  1462 /* 51 */
       
  1463 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  1464 
       
  1465 "use strict";
       
  1466 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return findFirstEnabledItem; });
       
  1467 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return flatten; });
       
  1468 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return groupItems; });
       
  1469 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return findEnabledItemById; });
       
  1470 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return getCurrentId; });
       
  1471 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return reverse; });
       
  1472 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "g", function() { return useCompositeState; });
       
  1473 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
  1474 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13);
       
  1475 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
       
  1476 /* harmony import */ var reakit_utils_useIsomorphicEffect__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59);
       
  1477 /* harmony import */ var reakit_utils_useSealedState__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(62);
       
  1478 /* harmony import */ var reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(61);
       
  1479 /* harmony import */ var _Id_IdState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(65);
       
  1480 
       
  1481 
       
  1482 
       
  1483 
       
  1484 
       
  1485 
       
  1486 
       
  1487 function reverse(array) {
       
  1488   return array.slice().reverse();
       
  1489 }
       
  1490 
       
  1491 function isElementPreceding(element1, element2) {
       
  1492   return Boolean(element2.compareDocumentPosition(element1) & Node.DOCUMENT_POSITION_PRECEDING);
       
  1493 }
       
  1494 
       
  1495 function findDOMIndex(items, item) {
       
  1496   return items.findIndex(function (currentItem) {
       
  1497     if (!currentItem.ref.current || !item.ref.current) {
       
  1498       return false;
       
  1499     }
       
  1500 
       
  1501     return isElementPreceding(item.ref.current, currentItem.ref.current);
       
  1502   });
       
  1503 }
       
  1504 
       
  1505 function findFirstEnabledItem(items, excludeId) {
       
  1506   if (excludeId) {
       
  1507     return items.find(function (item) {
       
  1508       return !item.disabled && item.id !== excludeId;
       
  1509     });
       
  1510   }
       
  1511 
       
  1512   return items.find(function (item) {
       
  1513     return !item.disabled;
       
  1514   });
       
  1515 }
       
  1516 
       
  1517 function findEnabledItemById(items, id) {
       
  1518   if (!id) return undefined;
       
  1519   return items === null || items === void 0 ? void 0 : items.find(function (item) {
       
  1520     return item.id === id && !item.disabled;
       
  1521   });
       
  1522 }
       
  1523 
       
  1524 function groupItems(items) {
       
  1525   var groups = [[]];
       
  1526 
       
  1527   var _loop = function _loop() {
       
  1528     var item = _step.value;
       
  1529     var group = groups.find(function (g) {
       
  1530       return !g[0] || g[0].groupId === item.groupId;
       
  1531     });
       
  1532 
       
  1533     if (group) {
       
  1534       group.push(item);
       
  1535     } else {
       
  1536       groups.push([item]);
       
  1537     }
       
  1538   };
       
  1539 
       
  1540   for (var _iterator = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* b */ "c"])(items), _step; !(_step = _iterator()).done;) {
       
  1541     _loop();
       
  1542   }
       
  1543 
       
  1544   return groups;
       
  1545 }
       
  1546 
       
  1547 function getMaxLength(rows) {
       
  1548   var maxLength = 0;
       
  1549 
       
  1550   for (var _iterator = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* b */ "c"])(rows), _step; !(_step = _iterator()).done;) {
       
  1551     var length = _step.value.length;
       
  1552 
       
  1553     if (length > maxLength) {
       
  1554       maxLength = length;
       
  1555     }
       
  1556   }
       
  1557 
       
  1558   return maxLength;
       
  1559 }
       
  1560 
       
  1561 /**
       
  1562  * Turns [row1, row1, row2, row2] into [row1, row2, row1, row2]
       
  1563  */
       
  1564 
       
  1565 function verticalizeItems(items) {
       
  1566   var groups = groupItems(items);
       
  1567   var maxLength = getMaxLength(groups);
       
  1568   var verticalized = [];
       
  1569 
       
  1570   for (var i = 0; i < maxLength; i += 1) {
       
  1571     for (var _iterator = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* b */ "c"])(groups), _step; !(_step = _iterator()).done;) {
       
  1572       var group = _step.value;
       
  1573 
       
  1574       if (group[i]) {
       
  1575         verticalized.push(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, group[i]), {}, {
       
  1576           // If there's no groupId, it means that it's not a grid composite,
       
  1577           // but a single row instead. So, instead of verticalizing it, that
       
  1578           // is, assigning a different groupId based on the column index, we
       
  1579           // keep it undefined so they will be part of the same group.
       
  1580           // It's useful when using up/down on one-dimensional composites.
       
  1581           groupId: group[i].groupId ? "" + i : undefined
       
  1582         }));
       
  1583       }
       
  1584     }
       
  1585   }
       
  1586 
       
  1587   return verticalized;
       
  1588 }
       
  1589 
       
  1590 function flatten(grid) {
       
  1591   var flattened = [];
       
  1592 
       
  1593   for (var _iterator = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* b */ "c"])(grid), _step; !(_step = _iterator()).done;) {
       
  1594     var row = _step.value;
       
  1595     flattened.push.apply(flattened, row);
       
  1596   }
       
  1597 
       
  1598   return flattened;
       
  1599 }
       
  1600 
       
  1601 /**
       
  1602  * Turns [[row1, row1], [row2]] into [[row1, row1], [row2, row2]]
       
  1603  */
       
  1604 
       
  1605 function fillGroups(groups) {
       
  1606   var maxLength = getMaxLength(groups);
       
  1607 
       
  1608   for (var _iterator = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* b */ "c"])(groups), _step; !(_step = _iterator()).done;) {
       
  1609     var group = _step.value;
       
  1610 
       
  1611     if (group.length < maxLength) {
       
  1612       for (var i = 0; i < maxLength; i += 1) {
       
  1613         if (!group[i]) {
       
  1614           group[i] = {
       
  1615             id: "__EMPTY_ITEM__",
       
  1616             disabled: true,
       
  1617             ref: {
       
  1618               current: null
       
  1619             },
       
  1620             groupId: group[i - 1].groupId
       
  1621           };
       
  1622         }
       
  1623       }
       
  1624     }
       
  1625   }
       
  1626 
       
  1627   return groups;
       
  1628 }
       
  1629 
       
  1630 function getCurrentId(options, passedId) {
       
  1631   var _findFirstEnabledItem;
       
  1632 
       
  1633   if (passedId || passedId === null) {
       
  1634     return passedId;
       
  1635   }
       
  1636 
       
  1637   if (options.currentId || options.currentId === null) {
       
  1638     return options.currentId;
       
  1639   }
       
  1640 
       
  1641   return (_findFirstEnabledItem = findFirstEnabledItem(options.items || [])) === null || _findFirstEnabledItem === void 0 ? void 0 : _findFirstEnabledItem.id;
       
  1642 }
       
  1643 
       
  1644 var nullItem = {
       
  1645   id: null,
       
  1646   ref: {
       
  1647     current: null
       
  1648   }
       
  1649 };
       
  1650 function placeItemsAfter(items, id, shouldInsertNullItem) {
       
  1651   var index = items.findIndex(function (item) {
       
  1652     return item.id === id;
       
  1653   });
       
  1654   return [].concat(items.slice(index + 1), shouldInsertNullItem ? [nullItem] : [], items.slice(0, index));
       
  1655 }
       
  1656 
       
  1657 function getItemsInGroup(items, groupId) {
       
  1658   return items.filter(function (item) {
       
  1659     return item.groupId === groupId;
       
  1660   });
       
  1661 }
       
  1662 
       
  1663 var map = {
       
  1664   horizontal: "vertical",
       
  1665   vertical: "horizontal"
       
  1666 };
       
  1667 function getOppositeOrientation(orientation) {
       
  1668   return orientation && map[orientation];
       
  1669 }
       
  1670 
       
  1671 function addItemAtIndex(array, item, index) {
       
  1672   if (!(index in array)) {
       
  1673     return [].concat(array, [item]);
       
  1674   }
       
  1675 
       
  1676   return [].concat(array.slice(0, index), [item], array.slice(index));
       
  1677 }
       
  1678 
       
  1679 function sortBasedOnDOMPosition(items) {
       
  1680   var copy = items.slice();
       
  1681   var isOrderDifferent = false;
       
  1682   copy.sort(function (a, b) {
       
  1683     var elementA = a.ref.current;
       
  1684     var elementB = b.ref.current;
       
  1685 
       
  1686     if (elementA && elementB && isElementPreceding(elementA, elementB)) {
       
  1687       isOrderDifferent = true;
       
  1688       return -1;
       
  1689     }
       
  1690 
       
  1691     return 0;
       
  1692   });
       
  1693 
       
  1694   if (isOrderDifferent) {
       
  1695     return copy;
       
  1696   }
       
  1697 
       
  1698   return items;
       
  1699 }
       
  1700 
       
  1701 function reducer(state, action) {
       
  1702   var virtual = state.unstable_virtual,
       
  1703       rtl = state.rtl,
       
  1704       orientation = state.orientation,
       
  1705       items = state.items,
       
  1706       groups = state.groups,
       
  1707       currentId = state.currentId,
       
  1708       loop = state.loop,
       
  1709       wrap = state.wrap,
       
  1710       pastIds = state.pastIds,
       
  1711       moves = state.unstable_moves,
       
  1712       initialVirtual = state.initialVirtual,
       
  1713       initialRTL = state.initialRTL,
       
  1714       initialOrientation = state.initialOrientation,
       
  1715       initialCurrentId = state.initialCurrentId,
       
  1716       initialLoop = state.initialLoop,
       
  1717       initialWrap = state.initialWrap,
       
  1718       hasSetCurrentId = state.hasSetCurrentId;
       
  1719 
       
  1720   switch (action.type) {
       
  1721     case "registerGroup":
       
  1722       {
       
  1723         var _group = action.group; // If there are no groups yet, just add it as the first one
       
  1724 
       
  1725         if (groups.length === 0) {
       
  1726           return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1727             groups: [_group]
       
  1728           });
       
  1729         } // Finds the group index based on DOM position
       
  1730 
       
  1731 
       
  1732         var index = findDOMIndex(groups, _group);
       
  1733         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1734           groups: addItemAtIndex(groups, _group, index)
       
  1735         });
       
  1736       }
       
  1737 
       
  1738     case "unregisterGroup":
       
  1739       {
       
  1740         var _id = action.id;
       
  1741         var nextGroups = groups.filter(function (group) {
       
  1742           return group.id !== _id;
       
  1743         }); // The group isn't registered, so do nothing
       
  1744 
       
  1745         if (nextGroups.length === groups.length) {
       
  1746           return state;
       
  1747         }
       
  1748 
       
  1749         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1750           groups: nextGroups
       
  1751         });
       
  1752       }
       
  1753 
       
  1754     case "registerItem":
       
  1755       {
       
  1756         var _item = action.item; // Finds the item group based on the DOM hierarchy
       
  1757 
       
  1758         var _group2 = groups.find(function (r) {
       
  1759           var _r$ref$current;
       
  1760 
       
  1761           return (_r$ref$current = r.ref.current) === null || _r$ref$current === void 0 ? void 0 : _r$ref$current.contains(_item.ref.current);
       
  1762         }); // Group will be null if it's a one-dimensional composite
       
  1763 
       
  1764 
       
  1765         var nextItem = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  1766           groupId: _group2 === null || _group2 === void 0 ? void 0 : _group2.id
       
  1767         }, _item);
       
  1768 
       
  1769         var _index = findDOMIndex(items, nextItem);
       
  1770 
       
  1771         var nextState = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1772           items: addItemAtIndex(items, nextItem, _index)
       
  1773         });
       
  1774 
       
  1775         if (!hasSetCurrentId && !moves && initialCurrentId === undefined) {
       
  1776           var _findFirstEnabledItem;
       
  1777 
       
  1778           // Sets currentId to the first enabled item. This runs whenever an item
       
  1779           // is registered because the first enabled item may be registered
       
  1780           // asynchronously.
       
  1781           return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, nextState), {}, {
       
  1782             currentId: (_findFirstEnabledItem = findFirstEnabledItem(nextState.items)) === null || _findFirstEnabledItem === void 0 ? void 0 : _findFirstEnabledItem.id
       
  1783           });
       
  1784         }
       
  1785 
       
  1786         return nextState;
       
  1787       }
       
  1788 
       
  1789     case "unregisterItem":
       
  1790       {
       
  1791         var _id2 = action.id;
       
  1792         var nextItems = items.filter(function (item) {
       
  1793           return item.id !== _id2;
       
  1794         }); // The item isn't registered, so do nothing
       
  1795 
       
  1796         if (nextItems.length === items.length) {
       
  1797           return state;
       
  1798         } // Filters out the item that is being removed from the pastIds list
       
  1799 
       
  1800 
       
  1801         var nextPastIds = pastIds.filter(function (pastId) {
       
  1802           return pastId !== _id2;
       
  1803         });
       
  1804 
       
  1805         var _nextState = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1806           pastIds: nextPastIds,
       
  1807           items: nextItems
       
  1808         }); // If the current item is the item that is being removed, focus pastId
       
  1809 
       
  1810 
       
  1811         if (currentId && currentId === _id2) {
       
  1812           var nextId = getCurrentId(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState), {}, {
       
  1813             currentId: nextPastIds[0]
       
  1814           }));
       
  1815           return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState), {}, {
       
  1816             currentId: nextId
       
  1817           });
       
  1818         }
       
  1819 
       
  1820         return _nextState;
       
  1821       }
       
  1822 
       
  1823     case "move":
       
  1824       {
       
  1825         var _id3 = action.id; // move() does nothing
       
  1826 
       
  1827         if (_id3 === undefined) {
       
  1828           return state;
       
  1829         } // Removes the current item and the item that is receiving focus from the
       
  1830         // pastIds list
       
  1831 
       
  1832 
       
  1833         var filteredPastIds = pastIds.filter(function (pastId) {
       
  1834           return pastId !== currentId && pastId !== _id3;
       
  1835         }); // If there's a currentId, add it to the pastIds list so it can be focused
       
  1836         // if the new item gets removed or disabled
       
  1837 
       
  1838         var _nextPastIds = currentId ? [currentId].concat(filteredPastIds) : filteredPastIds;
       
  1839 
       
  1840         var _nextState2 = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1841           pastIds: _nextPastIds
       
  1842         }); // move(null) will focus the composite element itself, not an item
       
  1843 
       
  1844 
       
  1845         if (_id3 === null) {
       
  1846           return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState2), {}, {
       
  1847             unstable_moves: moves + 1,
       
  1848             currentId: getCurrentId(_nextState2, _id3)
       
  1849           });
       
  1850         }
       
  1851 
       
  1852         var _item2 = findEnabledItemById(items, _id3);
       
  1853 
       
  1854         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState2), {}, {
       
  1855           unstable_moves: _item2 ? moves + 1 : moves,
       
  1856           currentId: getCurrentId(_nextState2, _item2 === null || _item2 === void 0 ? void 0 : _item2.id)
       
  1857         });
       
  1858       }
       
  1859 
       
  1860     case "next":
       
  1861       {
       
  1862         // If there's no item focused, we just move the first one
       
  1863         if (currentId == null) {
       
  1864           return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1865             type: "first"
       
  1866           }));
       
  1867         } // RTL doesn't make sense on vertical navigation
       
  1868 
       
  1869 
       
  1870         var isHorizontal = orientation !== "vertical";
       
  1871         var isRTL = rtl && isHorizontal;
       
  1872         var allItems = isRTL ? reverse(items) : items;
       
  1873         var currentItem = allItems.find(function (item) {
       
  1874           return item.id === currentId;
       
  1875         }); // If there's no item focused, we just move the first one
       
  1876 
       
  1877         if (!currentItem) {
       
  1878           return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1879             type: "first"
       
  1880           }));
       
  1881         }
       
  1882 
       
  1883         var isGrid = !!currentItem.groupId;
       
  1884         var currentIndex = allItems.indexOf(currentItem);
       
  1885 
       
  1886         var _nextItems = allItems.slice(currentIndex + 1);
       
  1887 
       
  1888         var nextItemsInGroup = getItemsInGroup(_nextItems, currentItem.groupId); // Home, End
       
  1889 
       
  1890         if (action.allTheWay) {
       
  1891           // We reverse so we can get the last enabled item in the group. If it's
       
  1892           // RTL, nextItems and nextItemsInGroup are already reversed and don't
       
  1893           // have the items before the current one anymore. So we have to get
       
  1894           // items in group again with allItems.
       
  1895           var _nextItem2 = findFirstEnabledItem(isRTL ? getItemsInGroup(allItems, currentItem.groupId) : reverse(nextItemsInGroup));
       
  1896 
       
  1897           return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1898             type: "move",
       
  1899             id: _nextItem2 === null || _nextItem2 === void 0 ? void 0 : _nextItem2.id
       
  1900           }));
       
  1901         }
       
  1902 
       
  1903         var oppositeOrientation = getOppositeOrientation( // If it's a grid and orientation is not set, it's a next/previous
       
  1904         // call, which is inherently horizontal. up/down will call next with
       
  1905         // orientation set to vertical by default (see below on up/down cases).
       
  1906         isGrid ? orientation || "horizontal" : orientation);
       
  1907         var canLoop = loop && loop !== oppositeOrientation;
       
  1908         var canWrap = isGrid && wrap && wrap !== oppositeOrientation;
       
  1909         var hasNullItem = // `previous` and `up` will set action.hasNullItem, but when calling
       
  1910         // next directly, hasNullItem will only be true if it's not a grid and
       
  1911         // loop is set to true, which means that pressing right or down keys on
       
  1912         // grids will never focus the composite element. On one-dimensional
       
  1913         // composites that don't loop, pressing right or down keys also doesn't
       
  1914         // focus the composite element.
       
  1915         action.hasNullItem || !isGrid && canLoop && initialCurrentId === null;
       
  1916 
       
  1917         if (canLoop) {
       
  1918           var loopItems = canWrap && !hasNullItem ? allItems : getItemsInGroup(allItems, currentItem.groupId); // Turns [0, 1, current, 3, 4] into [3, 4, 0, 1]
       
  1919 
       
  1920           var sortedItems = placeItemsAfter(loopItems, currentId, hasNullItem);
       
  1921 
       
  1922           var _nextItem3 = findFirstEnabledItem(sortedItems, currentId);
       
  1923 
       
  1924           return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1925             type: "move",
       
  1926             id: _nextItem3 === null || _nextItem3 === void 0 ? void 0 : _nextItem3.id
       
  1927           }));
       
  1928         }
       
  1929 
       
  1930         if (canWrap) {
       
  1931           var _nextItem4 = findFirstEnabledItem( // We can use nextItems, which contains all the next items, including
       
  1932           // items from other groups, to wrap between groups. However, if there
       
  1933           // is a null item (the composite element), we'll only use the next
       
  1934           // items in the group. So moving next from the last item will focus
       
  1935           // the composite element (null). On grid composites, horizontal
       
  1936           // navigation never focuses the composite element, only vertical.
       
  1937           hasNullItem ? nextItemsInGroup : _nextItems, currentId);
       
  1938 
       
  1939           var _nextId = hasNullItem ? (_nextItem4 === null || _nextItem4 === void 0 ? void 0 : _nextItem4.id) || null : _nextItem4 === null || _nextItem4 === void 0 ? void 0 : _nextItem4.id;
       
  1940 
       
  1941           return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1942             type: "move",
       
  1943             id: _nextId
       
  1944           }));
       
  1945         }
       
  1946 
       
  1947         var _nextItem = findFirstEnabledItem(nextItemsInGroup, currentId);
       
  1948 
       
  1949         if (!_nextItem && hasNullItem) {
       
  1950           return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1951             type: "move",
       
  1952             id: null
       
  1953           }));
       
  1954         }
       
  1955 
       
  1956         return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1957           type: "move",
       
  1958           id: _nextItem === null || _nextItem === void 0 ? void 0 : _nextItem.id
       
  1959         }));
       
  1960       }
       
  1961 
       
  1962     case "previous":
       
  1963       {
       
  1964         // If currentId is initially set to null, the composite element will be
       
  1965         // focusable while navigating with arrow keys. But, if it's a grid, we
       
  1966         // don't want to focus the composite element with horizontal navigation.
       
  1967         var _isGrid = !!groups.length;
       
  1968 
       
  1969         var _hasNullItem = !_isGrid && initialCurrentId === null;
       
  1970 
       
  1971         var _nextState3 = reducer(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1972           items: reverse(items)
       
  1973         }), Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  1974           type: "next",
       
  1975           hasNullItem: _hasNullItem
       
  1976         }));
       
  1977 
       
  1978         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState3), {}, {
       
  1979           items: items
       
  1980         });
       
  1981       }
       
  1982 
       
  1983     case "down":
       
  1984       {
       
  1985         // First, we make sure groups have the same number of items by filling it
       
  1986         // with disabled fake items. Then, we reorganize the items list so
       
  1987         // [1-1, 1-2, 2-1, 2-2] becomes [1-1, 2-1, 1-2, 2-2].
       
  1988         var verticalItems = verticalizeItems(flatten(fillGroups(groupItems(items))));
       
  1989 
       
  1990         var _canLoop = loop && loop !== "horizontal"; // Pressing down arrow key will only focus the composite element if loop
       
  1991         // is true or vertical.
       
  1992 
       
  1993 
       
  1994         var _hasNullItem2 = _canLoop && initialCurrentId === null;
       
  1995 
       
  1996         var _nextState4 = reducer(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  1997           orientation: "vertical",
       
  1998           items: verticalItems
       
  1999         }), Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  2000           type: "next",
       
  2001           hasNullItem: _hasNullItem2
       
  2002         }));
       
  2003 
       
  2004         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState4), {}, {
       
  2005           orientation: orientation,
       
  2006           items: items
       
  2007         });
       
  2008       }
       
  2009 
       
  2010     case "up":
       
  2011       {
       
  2012         var _verticalItems = verticalizeItems(reverse(flatten(fillGroups(groupItems(items))))); // If currentId is initially set to null, we'll always focus the
       
  2013         // composite element when the up arrow key is pressed in the first row.
       
  2014 
       
  2015 
       
  2016         var _hasNullItem3 = initialCurrentId === null;
       
  2017 
       
  2018         var _nextState5 = reducer(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2019           orientation: "vertical",
       
  2020           items: _verticalItems
       
  2021         }), Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  2022           type: "next",
       
  2023           hasNullItem: _hasNullItem3
       
  2024         }));
       
  2025 
       
  2026         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState5), {}, {
       
  2027           orientation: orientation,
       
  2028           items: items
       
  2029         });
       
  2030       }
       
  2031 
       
  2032     case "first":
       
  2033       {
       
  2034         var firstItem = findFirstEnabledItem(items);
       
  2035         return reducer(state, Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  2036           type: "move",
       
  2037           id: firstItem === null || firstItem === void 0 ? void 0 : firstItem.id
       
  2038         }));
       
  2039       }
       
  2040 
       
  2041     case "last":
       
  2042       {
       
  2043         var _nextState6 = reducer(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2044           items: reverse(items)
       
  2045         }), Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, action), {}, {
       
  2046           type: "first"
       
  2047         }));
       
  2048 
       
  2049         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, _nextState6), {}, {
       
  2050           items: items
       
  2051         });
       
  2052       }
       
  2053 
       
  2054     case "sort":
       
  2055       {
       
  2056         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2057           items: sortBasedOnDOMPosition(items),
       
  2058           groups: sortBasedOnDOMPosition(groups)
       
  2059         });
       
  2060       }
       
  2061 
       
  2062     case "setVirtual":
       
  2063       return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2064         unstable_virtual: Object(reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__[/* applyState */ "a"])(action.virtual, virtual)
       
  2065       });
       
  2066 
       
  2067     case "setRTL":
       
  2068       return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2069         rtl: Object(reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__[/* applyState */ "a"])(action.rtl, rtl)
       
  2070       });
       
  2071 
       
  2072     case "setOrientation":
       
  2073       return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2074         orientation: Object(reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__[/* applyState */ "a"])(action.orientation, orientation)
       
  2075       });
       
  2076 
       
  2077     case "setCurrentId":
       
  2078       {
       
  2079         var nextCurrentId = getCurrentId(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2080           currentId: Object(reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__[/* applyState */ "a"])(action.currentId, currentId)
       
  2081         }));
       
  2082         return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2083           currentId: nextCurrentId,
       
  2084           hasSetCurrentId: true
       
  2085         });
       
  2086       }
       
  2087 
       
  2088     case "setLoop":
       
  2089       return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2090         loop: Object(reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__[/* applyState */ "a"])(action.loop, loop)
       
  2091       });
       
  2092 
       
  2093     case "setWrap":
       
  2094       return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2095         wrap: Object(reakit_utils_applyState__WEBPACK_IMPORTED_MODULE_4__[/* applyState */ "a"])(action.wrap, wrap)
       
  2096       });
       
  2097 
       
  2098     case "reset":
       
  2099       return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2100         unstable_virtual: initialVirtual,
       
  2101         rtl: initialRTL,
       
  2102         orientation: initialOrientation,
       
  2103         currentId: getCurrentId(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, state), {}, {
       
  2104           currentId: initialCurrentId
       
  2105         })),
       
  2106         loop: initialLoop,
       
  2107         wrap: initialWrap,
       
  2108         unstable_moves: 0,
       
  2109         pastIds: []
       
  2110       });
       
  2111 
       
  2112     default:
       
  2113       throw new Error();
       
  2114   }
       
  2115 }
       
  2116 
       
  2117 function useAction(fn) {
       
  2118   return Object(react__WEBPACK_IMPORTED_MODULE_1__["useCallback"])(fn, []);
       
  2119 }
       
  2120 
       
  2121 function useIsUnmountedRef() {
       
  2122   var isUnmountedRef = Object(react__WEBPACK_IMPORTED_MODULE_1__["useRef"])(false);
       
  2123   Object(reakit_utils_useIsomorphicEffect__WEBPACK_IMPORTED_MODULE_2__[/* useIsomorphicEffect */ "a"])(function () {
       
  2124     return function () {
       
  2125       isUnmountedRef.current = true;
       
  2126     };
       
  2127   }, []);
       
  2128   return isUnmountedRef;
       
  2129 }
       
  2130 
       
  2131 function useCompositeState(initialState) {
       
  2132   if (initialState === void 0) {
       
  2133     initialState = {};
       
  2134   }
       
  2135 
       
  2136   var _useSealedState = Object(reakit_utils_useSealedState__WEBPACK_IMPORTED_MODULE_3__[/* useSealedState */ "a"])(initialState),
       
  2137       _useSealedState$unsta = _useSealedState.unstable_virtual,
       
  2138       virtual = _useSealedState$unsta === void 0 ? false : _useSealedState$unsta,
       
  2139       _useSealedState$rtl = _useSealedState.rtl,
       
  2140       rtl = _useSealedState$rtl === void 0 ? false : _useSealedState$rtl,
       
  2141       orientation = _useSealedState.orientation,
       
  2142       currentId = _useSealedState.currentId,
       
  2143       _useSealedState$loop = _useSealedState.loop,
       
  2144       loop = _useSealedState$loop === void 0 ? false : _useSealedState$loop,
       
  2145       _useSealedState$wrap = _useSealedState.wrap,
       
  2146       wrap = _useSealedState$wrap === void 0 ? false : _useSealedState$wrap,
       
  2147       sealed = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_useSealedState, ["unstable_virtual", "rtl", "orientation", "currentId", "loop", "wrap"]);
       
  2148 
       
  2149   var _React$useReducer = Object(react__WEBPACK_IMPORTED_MODULE_1__["useReducer"])(reducer, {
       
  2150     unstable_virtual: virtual,
       
  2151     rtl: rtl,
       
  2152     orientation: orientation,
       
  2153     items: [],
       
  2154     groups: [],
       
  2155     currentId: currentId,
       
  2156     loop: loop,
       
  2157     wrap: wrap,
       
  2158     unstable_moves: 0,
       
  2159     pastIds: [],
       
  2160     initialVirtual: virtual,
       
  2161     initialRTL: rtl,
       
  2162     initialOrientation: orientation,
       
  2163     initialCurrentId: currentId,
       
  2164     initialLoop: loop,
       
  2165     initialWrap: wrap
       
  2166   }),
       
  2167       _React$useReducer$ = _React$useReducer[0],
       
  2168       pastIds = _React$useReducer$.pastIds,
       
  2169       initialVirtual = _React$useReducer$.initialVirtual,
       
  2170       initialRTL = _React$useReducer$.initialRTL,
       
  2171       initialOrientation = _React$useReducer$.initialOrientation,
       
  2172       initialCurrentId = _React$useReducer$.initialCurrentId,
       
  2173       initialLoop = _React$useReducer$.initialLoop,
       
  2174       initialWrap = _React$useReducer$.initialWrap,
       
  2175       hasSetCurrentId = _React$useReducer$.hasSetCurrentId,
       
  2176       state = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_React$useReducer$, ["pastIds", "initialVirtual", "initialRTL", "initialOrientation", "initialCurrentId", "initialLoop", "initialWrap", "hasSetCurrentId"]),
       
  2177       dispatch = _React$useReducer[1];
       
  2178 
       
  2179   var _React$useState = Object(react__WEBPACK_IMPORTED_MODULE_1__["useState"])(false),
       
  2180       hasActiveWidget = _React$useState[0],
       
  2181       setHasActiveWidget = _React$useState[1];
       
  2182 
       
  2183   var idState = Object(_Id_IdState_js__WEBPACK_IMPORTED_MODULE_5__[/* unstable_useIdState */ "a"])(sealed); // register/unregister may be called when this component is unmounted. We
       
  2184   // store the unmounted state here so we don't update the state if it's true.
       
  2185   // This only happens in a very specific situation.
       
  2186   // See https://github.com/reakit/reakit/issues/650
       
  2187 
       
  2188   var isUnmountedRef = useIsUnmountedRef();
       
  2189   return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, idState), state), {}, {
       
  2190     unstable_hasActiveWidget: hasActiveWidget,
       
  2191     unstable_setHasActiveWidget: setHasActiveWidget,
       
  2192     registerItem: useAction(function (item) {
       
  2193       if (isUnmountedRef.current) return;
       
  2194       dispatch({
       
  2195         type: "registerItem",
       
  2196         item: item
       
  2197       });
       
  2198     }),
       
  2199     unregisterItem: useAction(function (id) {
       
  2200       if (isUnmountedRef.current) return;
       
  2201       dispatch({
       
  2202         type: "unregisterItem",
       
  2203         id: id
       
  2204       });
       
  2205     }),
       
  2206     registerGroup: useAction(function (group) {
       
  2207       if (isUnmountedRef.current) return;
       
  2208       dispatch({
       
  2209         type: "registerGroup",
       
  2210         group: group
       
  2211       });
       
  2212     }),
       
  2213     unregisterGroup: useAction(function (id) {
       
  2214       if (isUnmountedRef.current) return;
       
  2215       dispatch({
       
  2216         type: "unregisterGroup",
       
  2217         id: id
       
  2218       });
       
  2219     }),
       
  2220     move: useAction(function (id) {
       
  2221       return dispatch({
       
  2222         type: "move",
       
  2223         id: id
       
  2224       });
       
  2225     }),
       
  2226     next: useAction(function (allTheWay) {
       
  2227       return dispatch({
       
  2228         type: "next",
       
  2229         allTheWay: allTheWay
       
  2230       });
       
  2231     }),
       
  2232     previous: useAction(function (allTheWay) {
       
  2233       return dispatch({
       
  2234         type: "previous",
       
  2235         allTheWay: allTheWay
       
  2236       });
       
  2237     }),
       
  2238     up: useAction(function (allTheWay) {
       
  2239       return dispatch({
       
  2240         type: "up",
       
  2241         allTheWay: allTheWay
       
  2242       });
       
  2243     }),
       
  2244     down: useAction(function (allTheWay) {
       
  2245       return dispatch({
       
  2246         type: "down",
       
  2247         allTheWay: allTheWay
       
  2248       });
       
  2249     }),
       
  2250     first: useAction(function () {
       
  2251       return dispatch({
       
  2252         type: "first"
       
  2253       });
       
  2254     }),
       
  2255     last: useAction(function () {
       
  2256       return dispatch({
       
  2257         type: "last"
       
  2258       });
       
  2259     }),
       
  2260     unstable_sort: useAction(function () {
       
  2261       return dispatch({
       
  2262         type: "sort"
       
  2263       });
       
  2264     }),
       
  2265     unstable_setVirtual: useAction(function (value) {
       
  2266       return dispatch({
       
  2267         type: "setVirtual",
       
  2268         virtual: value
       
  2269       });
       
  2270     }),
       
  2271     setRTL: useAction(function (value) {
       
  2272       return dispatch({
       
  2273         type: "setRTL",
       
  2274         rtl: value
       
  2275       });
       
  2276     }),
       
  2277     setOrientation: useAction(function (value) {
       
  2278       return dispatch({
       
  2279         type: "setOrientation",
       
  2280         orientation: value
       
  2281       });
       
  2282     }),
       
  2283     setCurrentId: useAction(function (value) {
       
  2284       return dispatch({
       
  2285         type: "setCurrentId",
       
  2286         currentId: value
       
  2287       });
       
  2288     }),
       
  2289     setLoop: useAction(function (value) {
       
  2290       return dispatch({
       
  2291         type: "setLoop",
       
  2292         loop: value
       
  2293       });
       
  2294     }),
       
  2295     setWrap: useAction(function (value) {
       
  2296       return dispatch({
       
  2297         type: "setWrap",
       
  2298         wrap: value
       
  2299       });
       
  2300     }),
       
  2301     reset: useAction(function () {
       
  2302       return dispatch({
       
  2303         type: "reset"
       
  2304       });
       
  2305     })
       
  2306   });
       
  2307 }
       
  2308 var keys = [].concat(_Id_IdState_js__WEBPACK_IMPORTED_MODULE_5__[/* unstable_useIdState */ "a"].__keys, ["unstable_virtual", "rtl", "orientation", "items", "groups", "currentId", "loop", "wrap", "unstable_moves", "unstable_hasActiveWidget", "registerItem", "unregisterItem", "registerGroup", "unregisterGroup", "move", "next", "previous", "up", "down", "first", "last", "unstable_sort", "unstable_setVirtual", "setRTL", "setOrientation", "setCurrentId", "setLoop", "setWrap", "reset", "unstable_setHasActiveWidget"]);
       
  2309 useCompositeState.__keys = keys;
       
  2310 
       
  2311 
       
  2312 
       
  2313 
       
  2314 /***/ }),
       
  2315 /* 52 */,
       
  2316 /* 53 */
       
  2317 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2318 
       
  2319 "use strict";
       
  2320 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isSelfTarget; });
       
  2321 /**
       
  2322  * Returns `true` if `event.target` and `event.currentTarget` are the same.
       
  2323  */
       
  2324 function isSelfTarget(event) {
       
  2325   return event.target === event.currentTarget;
       
  2326 }
       
  2327 
       
  2328 
       
  2329 
       
  2330 
       
  2331 /***/ }),
       
  2332 /* 54 */
       
  2333 /***/ (function(module, exports) {
       
  2334 
       
  2335 (function() { module.exports = this["wp"]["a11y"]; }());
       
  2336 
       
  2337 /***/ }),
       
  2338 /* 55 */
       
  2339 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2340 
       
  2341 "use strict";
       
  2342 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return _objectSpread2; });
       
  2343 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return _objectWithoutPropertiesLoose; });
       
  2344 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return _createForOfIteratorHelperLoose; });
       
  2345 function _defineProperty(obj, key, value) {
       
  2346   if (key in obj) {
       
  2347     Object.defineProperty(obj, key, {
       
  2348       value: value,
       
  2349       enumerable: true,
       
  2350       configurable: true,
       
  2351       writable: true
       
  2352     });
       
  2353   } else {
       
  2354     obj[key] = value;
       
  2355   }
       
  2356 
       
  2357   return obj;
       
  2358 }
       
  2359 
       
  2360 function ownKeys(object, enumerableOnly) {
       
  2361   var keys = Object.keys(object);
       
  2362 
       
  2363   if (Object.getOwnPropertySymbols) {
       
  2364     var symbols = Object.getOwnPropertySymbols(object);
       
  2365     if (enumerableOnly) symbols = symbols.filter(function (sym) {
       
  2366       return Object.getOwnPropertyDescriptor(object, sym).enumerable;
       
  2367     });
       
  2368     keys.push.apply(keys, symbols);
       
  2369   }
       
  2370 
       
  2371   return keys;
       
  2372 }
       
  2373 
       
  2374 function _objectSpread2(target) {
       
  2375   for (var i = 1; i < arguments.length; i++) {
       
  2376     var source = arguments[i] != null ? arguments[i] : {};
       
  2377 
       
  2378     if (i % 2) {
       
  2379       ownKeys(Object(source), true).forEach(function (key) {
       
  2380         _defineProperty(target, key, source[key]);
       
  2381       });
       
  2382     } else if (Object.getOwnPropertyDescriptors) {
       
  2383       Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));
       
  2384     } else {
       
  2385       ownKeys(Object(source)).forEach(function (key) {
       
  2386         Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));
       
  2387       });
       
  2388     }
       
  2389   }
       
  2390 
       
  2391   return target;
       
  2392 }
       
  2393 
       
  2394 function _objectWithoutPropertiesLoose(source, excluded) {
       
  2395   if (source == null) return {};
       
  2396   var target = {};
       
  2397   var sourceKeys = Object.keys(source);
       
  2398   var key, i;
       
  2399 
       
  2400   for (i = 0; i < sourceKeys.length; i++) {
       
  2401     key = sourceKeys[i];
       
  2402     if (excluded.indexOf(key) >= 0) continue;
       
  2403     target[key] = source[key];
       
  2404   }
       
  2405 
       
  2406   return target;
       
  2407 }
       
  2408 
       
  2409 function _unsupportedIterableToArray(o, minLen) {
       
  2410   if (!o) return;
       
  2411   if (typeof o === "string") return _arrayLikeToArray(o, minLen);
       
  2412   var n = Object.prototype.toString.call(o).slice(8, -1);
       
  2413   if (n === "Object" && o.constructor) n = o.constructor.name;
       
  2414   if (n === "Map" || n === "Set") return Array.from(o);
       
  2415   if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
       
  2416 }
       
  2417 
       
  2418 function _arrayLikeToArray(arr, len) {
       
  2419   if (len == null || len > arr.length) len = arr.length;
       
  2420 
       
  2421   for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
       
  2422 
       
  2423   return arr2;
       
  2424 }
       
  2425 
       
  2426 function _createForOfIteratorHelperLoose(o, allowArrayLike) {
       
  2427   var it;
       
  2428 
       
  2429   if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
       
  2430     if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
       
  2431       if (it) o = it;
       
  2432       var i = 0;
       
  2433       return function () {
       
  2434         if (i >= o.length) return {
       
  2435           done: true
       
  2436         };
       
  2437         return {
       
  2438           done: false,
       
  2439           value: o[i++]
       
  2440         };
       
  2441       };
       
  2442     }
       
  2443 
       
  2444     throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
       
  2445   }
       
  2446 
       
  2447   it = o[Symbol.iterator]();
       
  2448   return it.next.bind(it);
       
  2449 }
       
  2450 
       
  2451 
       
  2452 
       
  2453 
       
  2454 /***/ }),
       
  2455 /* 56 */
       
  2456 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2457 
       
  2458 "use strict";
       
  2459 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return shallowEqual; });
       
  2460 /**
       
  2461  * Compares two objects.
       
  2462  *
       
  2463  * @example
       
  2464  * import { shallowEqual } from "reakit-utils";
       
  2465  *
       
  2466  * shallowEqual({ a: "a" }, {}); // false
       
  2467  * shallowEqual({ a: "a" }, { b: "b" }); // false
       
  2468  * shallowEqual({ a: "a" }, { a: "a" }); // true
       
  2469  * shallowEqual({ a: "a" }, { a: "a", b: "b" }); // false
       
  2470  */
       
  2471 function shallowEqual(objA, objB) {
       
  2472   if (objA === objB) return true;
       
  2473   if (!objA) return false;
       
  2474   if (!objB) return false;
       
  2475   if (typeof objA !== "object") return false;
       
  2476   if (typeof objB !== "object") return false;
       
  2477   var aKeys = Object.keys(objA);
       
  2478   var bKeys = Object.keys(objB);
       
  2479   var length = aKeys.length;
       
  2480   if (bKeys.length !== length) return false;
       
  2481 
       
  2482   for (var _i = 0, _aKeys = aKeys; _i < _aKeys.length; _i++) {
       
  2483     var key = _aKeys[_i];
       
  2484 
       
  2485     if (objA[key] !== objB[key]) {
       
  2486       return false;
       
  2487     }
       
  2488   }
       
  2489 
       
  2490   return true;
       
  2491 }
       
  2492 
       
  2493 
       
  2494 
       
  2495 
       
  2496 /***/ }),
       
  2497 /* 57 */
       
  2498 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2499 
       
  2500 "use strict";
       
  2501 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return getActiveElement; });
       
  2502 /* harmony import */ var _getDocument_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47);
       
  2503 
       
  2504 
       
  2505 /**
       
  2506  * Returns `element.ownerDocument.activeElement`.
       
  2507  */
       
  2508 
       
  2509 function getActiveElement(element) {
       
  2510   return Object(_getDocument_js__WEBPACK_IMPORTED_MODULE_0__[/* getDocument */ "a"])(element).activeElement;
       
  2511 }
       
  2512 
       
  2513 
       
  2514 
       
  2515 
       
  2516 /***/ }),
       
  2517 /* 58 */
       
  2518 /***/ (function(module, exports, __webpack_require__) {
       
  2519 
       
  2520 "use strict";
       
  2521 
       
  2522 
       
  2523 /* globals
       
  2524 	Atomics,
       
  2525 	SharedArrayBuffer,
       
  2526 */
       
  2527 
       
  2528 var undefined;
       
  2529 
       
  2530 var $TypeError = TypeError;
       
  2531 
       
  2532 var $gOPD = Object.getOwnPropertyDescriptor;
       
  2533 if ($gOPD) {
       
  2534 	try {
       
  2535 		$gOPD({}, '');
       
  2536 	} catch (e) {
       
  2537 		$gOPD = null; // this is IE 8, which has a broken gOPD
       
  2538 	}
       
  2539 }
       
  2540 
       
  2541 var throwTypeError = function () { throw new $TypeError(); };
       
  2542 var ThrowTypeError = $gOPD
       
  2543 	? (function () {
       
  2544 		try {
       
  2545 			// eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
       
  2546 			arguments.callee; // IE 8 does not throw here
       
  2547 			return throwTypeError;
       
  2548 		} catch (calleeThrows) {
       
  2549 			try {
       
  2550 				// IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
       
  2551 				return $gOPD(arguments, 'callee').get;
       
  2552 			} catch (gOPDthrows) {
       
  2553 				return throwTypeError;
       
  2554 			}
       
  2555 		}
       
  2556 	}())
       
  2557 	: throwTypeError;
       
  2558 
       
  2559 var hasSymbols = __webpack_require__(207)();
       
  2560 
       
  2561 var getProto = Object.getPrototypeOf || function (x) { return x.__proto__; }; // eslint-disable-line no-proto
       
  2562 
       
  2563 var generator; // = function * () {};
       
  2564 var generatorFunction = generator ? getProto(generator) : undefined;
       
  2565 var asyncFn; // async function() {};
       
  2566 var asyncFunction = asyncFn ? asyncFn.constructor : undefined;
       
  2567 var asyncGen; // async function * () {};
       
  2568 var asyncGenFunction = asyncGen ? getProto(asyncGen) : undefined;
       
  2569 var asyncGenIterator = asyncGen ? asyncGen() : undefined;
       
  2570 
       
  2571 var TypedArray = typeof Uint8Array === 'undefined' ? undefined : getProto(Uint8Array);
       
  2572 
       
  2573 var INTRINSICS = {
       
  2574 	'%Array%': Array,
       
  2575 	'%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
       
  2576 	'%ArrayBufferPrototype%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer.prototype,
       
  2577 	'%ArrayIteratorPrototype%': hasSymbols ? getProto([][Symbol.iterator]()) : undefined,
       
  2578 	'%ArrayPrototype%': Array.prototype,
       
  2579 	'%ArrayProto_entries%': Array.prototype.entries,
       
  2580 	'%ArrayProto_forEach%': Array.prototype.forEach,
       
  2581 	'%ArrayProto_keys%': Array.prototype.keys,
       
  2582 	'%ArrayProto_values%': Array.prototype.values,
       
  2583 	'%AsyncFromSyncIteratorPrototype%': undefined,
       
  2584 	'%AsyncFunction%': asyncFunction,
       
  2585 	'%AsyncFunctionPrototype%': asyncFunction ? asyncFunction.prototype : undefined,
       
  2586 	'%AsyncGenerator%': asyncGen ? getProto(asyncGenIterator) : undefined,
       
  2587 	'%AsyncGeneratorFunction%': asyncGenFunction,
       
  2588 	'%AsyncGeneratorPrototype%': asyncGenFunction ? asyncGenFunction.prototype : undefined,
       
  2589 	'%AsyncIteratorPrototype%': asyncGenIterator && hasSymbols && Symbol.asyncIterator ? asyncGenIterator[Symbol.asyncIterator]() : undefined,
       
  2590 	'%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,
       
  2591 	'%Boolean%': Boolean,
       
  2592 	'%BooleanPrototype%': Boolean.prototype,
       
  2593 	'%DataView%': typeof DataView === 'undefined' ? undefined : DataView,
       
  2594 	'%DataViewPrototype%': typeof DataView === 'undefined' ? undefined : DataView.prototype,
       
  2595 	'%Date%': Date,
       
  2596 	'%DatePrototype%': Date.prototype,
       
  2597 	'%decodeURI%': decodeURI,
       
  2598 	'%decodeURIComponent%': decodeURIComponent,
       
  2599 	'%encodeURI%': encodeURI,
       
  2600 	'%encodeURIComponent%': encodeURIComponent,
       
  2601 	'%Error%': Error,
       
  2602 	'%ErrorPrototype%': Error.prototype,
       
  2603 	'%eval%': eval, // eslint-disable-line no-eval
       
  2604 	'%EvalError%': EvalError,
       
  2605 	'%EvalErrorPrototype%': EvalError.prototype,
       
  2606 	'%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
       
  2607 	'%Float32ArrayPrototype%': typeof Float32Array === 'undefined' ? undefined : Float32Array.prototype,
       
  2608 	'%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
       
  2609 	'%Float64ArrayPrototype%': typeof Float64Array === 'undefined' ? undefined : Float64Array.prototype,
       
  2610 	'%Function%': Function,
       
  2611 	'%FunctionPrototype%': Function.prototype,
       
  2612 	'%Generator%': generator ? getProto(generator()) : undefined,
       
  2613 	'%GeneratorFunction%': generatorFunction,
       
  2614 	'%GeneratorPrototype%': generatorFunction ? generatorFunction.prototype : undefined,
       
  2615 	'%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,
       
  2616 	'%Int8ArrayPrototype%': typeof Int8Array === 'undefined' ? undefined : Int8Array.prototype,
       
  2617 	'%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,
       
  2618 	'%Int16ArrayPrototype%': typeof Int16Array === 'undefined' ? undefined : Int8Array.prototype,
       
  2619 	'%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,
       
  2620 	'%Int32ArrayPrototype%': typeof Int32Array === 'undefined' ? undefined : Int32Array.prototype,
       
  2621 	'%isFinite%': isFinite,
       
  2622 	'%isNaN%': isNaN,
       
  2623 	'%IteratorPrototype%': hasSymbols ? getProto(getProto([][Symbol.iterator]())) : undefined,
       
  2624 	'%JSON%': typeof JSON === 'object' ? JSON : undefined,
       
  2625 	'%JSONParse%': typeof JSON === 'object' ? JSON.parse : undefined,
       
  2626 	'%Map%': typeof Map === 'undefined' ? undefined : Map,
       
  2627 	'%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols ? undefined : getProto(new Map()[Symbol.iterator]()),
       
  2628 	'%MapPrototype%': typeof Map === 'undefined' ? undefined : Map.prototype,
       
  2629 	'%Math%': Math,
       
  2630 	'%Number%': Number,
       
  2631 	'%NumberPrototype%': Number.prototype,
       
  2632 	'%Object%': Object,
       
  2633 	'%ObjectPrototype%': Object.prototype,
       
  2634 	'%ObjProto_toString%': Object.prototype.toString,
       
  2635 	'%ObjProto_valueOf%': Object.prototype.valueOf,
       
  2636 	'%parseFloat%': parseFloat,
       
  2637 	'%parseInt%': parseInt,
       
  2638 	'%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
       
  2639 	'%PromisePrototype%': typeof Promise === 'undefined' ? undefined : Promise.prototype,
       
  2640 	'%PromiseProto_then%': typeof Promise === 'undefined' ? undefined : Promise.prototype.then,
       
  2641 	'%Promise_all%': typeof Promise === 'undefined' ? undefined : Promise.all,
       
  2642 	'%Promise_reject%': typeof Promise === 'undefined' ? undefined : Promise.reject,
       
  2643 	'%Promise_resolve%': typeof Promise === 'undefined' ? undefined : Promise.resolve,
       
  2644 	'%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
       
  2645 	'%RangeError%': RangeError,
       
  2646 	'%RangeErrorPrototype%': RangeError.prototype,
       
  2647 	'%ReferenceError%': ReferenceError,
       
  2648 	'%ReferenceErrorPrototype%': ReferenceError.prototype,
       
  2649 	'%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
       
  2650 	'%RegExp%': RegExp,
       
  2651 	'%RegExpPrototype%': RegExp.prototype,
       
  2652 	'%Set%': typeof Set === 'undefined' ? undefined : Set,
       
  2653 	'%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols ? undefined : getProto(new Set()[Symbol.iterator]()),
       
  2654 	'%SetPrototype%': typeof Set === 'undefined' ? undefined : Set.prototype,
       
  2655 	'%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,
       
  2656 	'%SharedArrayBufferPrototype%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer.prototype,
       
  2657 	'%String%': String,
       
  2658 	'%StringIteratorPrototype%': hasSymbols ? getProto(''[Symbol.iterator]()) : undefined,
       
  2659 	'%StringPrototype%': String.prototype,
       
  2660 	'%Symbol%': hasSymbols ? Symbol : undefined,
       
  2661 	'%SymbolPrototype%': hasSymbols ? Symbol.prototype : undefined,
       
  2662 	'%SyntaxError%': SyntaxError,
       
  2663 	'%SyntaxErrorPrototype%': SyntaxError.prototype,
       
  2664 	'%ThrowTypeError%': ThrowTypeError,
       
  2665 	'%TypedArray%': TypedArray,
       
  2666 	'%TypedArrayPrototype%': TypedArray ? TypedArray.prototype : undefined,
       
  2667 	'%TypeError%': $TypeError,
       
  2668 	'%TypeErrorPrototype%': $TypeError.prototype,
       
  2669 	'%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
       
  2670 	'%Uint8ArrayPrototype%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array.prototype,
       
  2671 	'%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
       
  2672 	'%Uint8ClampedArrayPrototype%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray.prototype,
       
  2673 	'%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
       
  2674 	'%Uint16ArrayPrototype%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array.prototype,
       
  2675 	'%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
       
  2676 	'%Uint32ArrayPrototype%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array.prototype,
       
  2677 	'%URIError%': URIError,
       
  2678 	'%URIErrorPrototype%': URIError.prototype,
       
  2679 	'%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
       
  2680 	'%WeakMapPrototype%': typeof WeakMap === 'undefined' ? undefined : WeakMap.prototype,
       
  2681 	'%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet,
       
  2682 	'%WeakSetPrototype%': typeof WeakSet === 'undefined' ? undefined : WeakSet.prototype
       
  2683 };
       
  2684 
       
  2685 var bind = __webpack_require__(118);
       
  2686 var $replace = bind.call(Function.call, String.prototype.replace);
       
  2687 
       
  2688 /* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
       
  2689 var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
       
  2690 var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
       
  2691 var stringToPath = function stringToPath(string) {
       
  2692 	var result = [];
       
  2693 	$replace(string, rePropName, function (match, number, quote, subString) {
       
  2694 		result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : (number || match);
       
  2695 	});
       
  2696 	return result;
       
  2697 };
       
  2698 /* end adaptation */
       
  2699 
       
  2700 var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
       
  2701 	if (!(name in INTRINSICS)) {
       
  2702 		throw new SyntaxError('intrinsic ' + name + ' does not exist!');
       
  2703 	}
       
  2704 
       
  2705 	// istanbul ignore if // hopefully this is impossible to test :-)
       
  2706 	if (typeof INTRINSICS[name] === 'undefined' && !allowMissing) {
       
  2707 		throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
       
  2708 	}
       
  2709 
       
  2710 	return INTRINSICS[name];
       
  2711 };
       
  2712 
       
  2713 module.exports = function GetIntrinsic(name, allowMissing) {
       
  2714 	if (typeof name !== 'string' || name.length === 0) {
       
  2715 		throw new TypeError('intrinsic name must be a non-empty string');
       
  2716 	}
       
  2717 	if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
       
  2718 		throw new TypeError('"allowMissing" argument must be a boolean');
       
  2719 	}
       
  2720 
       
  2721 	var parts = stringToPath(name);
       
  2722 
       
  2723 	var value = getBaseIntrinsic('%' + (parts.length > 0 ? parts[0] : '') + '%', allowMissing);
       
  2724 	for (var i = 1; i < parts.length; i += 1) {
       
  2725 		if (value != null) {
       
  2726 			if ($gOPD && (i + 1) >= parts.length) {
       
  2727 				var desc = $gOPD(value, parts[i]);
       
  2728 				if (!allowMissing && !(parts[i] in value)) {
       
  2729 					throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
       
  2730 				}
       
  2731 				value = desc ? (desc.get || desc.value) : value[parts[i]];
       
  2732 			} else {
       
  2733 				value = value[parts[i]];
       
  2734 			}
       
  2735 		}
       
  2736 	}
       
  2737 	return value;
       
  2738 };
       
  2739 
       
  2740 
       
  2741 /***/ }),
       
  2742 /* 59 */
       
  2743 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2744 
       
  2745 "use strict";
       
  2746 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useIsomorphicEffect; });
       
  2747 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  2748 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  2749 
       
  2750 
       
  2751 /**
       
  2752  * `React.useLayoutEffect` that fallbacks to `React.useEffect` on server side
       
  2753  * rendering.
       
  2754  */
       
  2755 
       
  2756 var useIsomorphicEffect = typeof window === "undefined" ? react__WEBPACK_IMPORTED_MODULE_0__["useEffect"] : react__WEBPACK_IMPORTED_MODULE_0__["useLayoutEffect"];
       
  2757 
       
  2758 
       
  2759 
       
  2760 
       
  2761 /***/ }),
       
  2762 /* 60 */,
       
  2763 /* 61 */
       
  2764 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2765 
       
  2766 "use strict";
       
  2767 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return applyState; });
       
  2768 function isUpdater(argument) {
       
  2769   return typeof argument === "function";
       
  2770 }
       
  2771 /**
       
  2772  * Receives a `setState` argument and calls it with `currentValue` if it's a
       
  2773  * function. Otherwise return the argument as the new value.
       
  2774  *
       
  2775  * @example
       
  2776  * import { applyState } from "reakit-utils";
       
  2777  *
       
  2778  * applyState((value) => value + 1, 1); // 2
       
  2779  * applyState(2, 1); // 2
       
  2780  */
       
  2781 
       
  2782 
       
  2783 function applyState(argument, currentValue) {
       
  2784   if (isUpdater(argument)) {
       
  2785     return argument(currentValue);
       
  2786   }
       
  2787 
       
  2788   return argument;
       
  2789 }
       
  2790 
       
  2791 
       
  2792 
       
  2793 
       
  2794 /***/ }),
       
  2795 /* 62 */
       
  2796 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2797 
       
  2798 "use strict";
       
  2799 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useSealedState; });
       
  2800 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  2801 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  2802 
       
  2803 
       
  2804 /**
       
  2805  * React custom hook that returns the very first value passed to `initialState`,
       
  2806  * even if it changes between re-renders.
       
  2807  */
       
  2808 function useSealedState(initialState) {
       
  2809   var _React$useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(initialState),
       
  2810       sealed = _React$useState[0];
       
  2811 
       
  2812   return sealed;
       
  2813 }
       
  2814 
       
  2815 
       
  2816 
       
  2817 
       
  2818 /***/ }),
       
  2819 /* 63 */
       
  2820 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2821 
       
  2822 "use strict";
       
  2823 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useForkRef; });
       
  2824 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  2825 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  2826 
       
  2827 
       
  2828 // https://github.com/mui-org/material-ui/blob/2bcc874cf07b81202968f769cb9c2398c7c11311/packages/material-ui/src/utils/useForkRef.js
       
  2829 
       
  2830 function setRef(ref, value) {
       
  2831   if (value === void 0) {
       
  2832     value = null;
       
  2833   }
       
  2834 
       
  2835   if (!ref) return;
       
  2836 
       
  2837   if (typeof ref === "function") {
       
  2838     ref(value);
       
  2839   } else {
       
  2840     ref.current = value;
       
  2841   }
       
  2842 }
       
  2843 /**
       
  2844  * Merges up to two React Refs into a single memoized function React Ref so you
       
  2845  * can pass it to an element.
       
  2846  *
       
  2847  * @example
       
  2848  * import React from "react";
       
  2849  * import { useForkRef } from "reakit-utils";
       
  2850  *
       
  2851  * const Component = React.forwardRef((props, ref) => {
       
  2852  *   const internalRef = React.useRef();
       
  2853  *   return <div {...props} ref={useForkRef(internalRef, ref)} />;
       
  2854  * });
       
  2855  */
       
  2856 
       
  2857 
       
  2858 function useForkRef(refA, refB) {
       
  2859   return Object(react__WEBPACK_IMPORTED_MODULE_0__["useMemo"])(function () {
       
  2860     if (refA == null && refB == null) {
       
  2861       return null;
       
  2862     }
       
  2863 
       
  2864     return function (value) {
       
  2865       setRef(refA, value);
       
  2866       setRef(refB, value);
       
  2867     };
       
  2868   }, [refA, refB]);
       
  2869 }
       
  2870 
       
  2871 
       
  2872 
       
  2873 
       
  2874 /***/ }),
       
  2875 /* 64 */
       
  2876 /***/ (function(module, exports) {
       
  2877 
       
  2878 (function() { module.exports = this["wp"]["isShallowEqual"]; }());
       
  2879 
       
  2880 /***/ }),
       
  2881 /* 65 */
       
  2882 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  2883 
       
  2884 "use strict";
       
  2885 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return unstable_useIdState; });
       
  2886 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  2887 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  2888 /* harmony import */ var reakit_utils_useSealedState__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(62);
       
  2889 /* harmony import */ var _IdProvider_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(68);
       
  2890 
       
  2891 
       
  2892 
       
  2893 
       
  2894 function unstable_useIdState(initialState) {
       
  2895   if (initialState === void 0) {
       
  2896     initialState = {};
       
  2897   }
       
  2898 
       
  2899   var _useSealedState = Object(reakit_utils_useSealedState__WEBPACK_IMPORTED_MODULE_1__[/* useSealedState */ "a"])(initialState),
       
  2900       initialBaseId = _useSealedState.baseId;
       
  2901 
       
  2902   var generateId = Object(react__WEBPACK_IMPORTED_MODULE_0__["useContext"])(_IdProvider_js__WEBPACK_IMPORTED_MODULE_2__[/* unstable_IdContext */ "a"]);
       
  2903   var idCountRef = Object(react__WEBPACK_IMPORTED_MODULE_0__["useRef"])(0);
       
  2904 
       
  2905   var _React$useState = Object(react__WEBPACK_IMPORTED_MODULE_0__["useState"])(function () {
       
  2906     return initialBaseId || generateId();
       
  2907   }),
       
  2908       baseId = _React$useState[0],
       
  2909       setBaseId = _React$useState[1];
       
  2910 
       
  2911   return {
       
  2912     baseId: baseId,
       
  2913     unstable_setBaseId: setBaseId,
       
  2914     unstable_idCountRef: idCountRef
       
  2915   };
       
  2916 }
       
  2917 var keys = ["baseId", "unstable_setBaseId", "unstable_idCountRef"];
       
  2918 unstable_useIdState.__keys = keys;
       
  2919 
       
  2920 
       
  2921 
       
  2922 
       
  2923 /***/ }),
       
  2924 /* 66 */
   666 /***/ (function(module, exports, __webpack_require__) {
  2925 /***/ (function(module, exports, __webpack_require__) {
   667 
  2926 
   668 var __WEBPACK_AMD_DEFINE_RESULT__;// TinyColor v1.4.1
  2927 var __WEBPACK_AMD_DEFINE_RESULT__;// TinyColor v1.4.1
   669 // https://github.com/bgrins/TinyColor
  2928 // https://github.com/bgrins/TinyColor
   670 // Brian Grinstead, MIT License
  2929 // Brian Grinstead, MIT License
  1860 
  4119 
  1861 })(Math);
  4120 })(Math);
  1862 
  4121 
  1863 
  4122 
  1864 /***/ }),
  4123 /***/ }),
  1865 /* 46 */
  4124 /* 67 */
       
  4125 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4126 
       
  4127 "use strict";
       
  4128 /* unused harmony export Box */
       
  4129 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useBox; });
       
  4130 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
  4131 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(49);
       
  4132 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48);
       
  4133 /* harmony import */ var reakit_utils_shallowEqual__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(56);
       
  4134 
       
  4135 
       
  4136 
       
  4137 
       
  4138 
       
  4139 var useBox = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__[/* createHook */ "a"])({
       
  4140   name: "Box",
       
  4141   keys: ["unstable_system"],
       
  4142   propsAreEqual: function propsAreEqual(prev, next) {
       
  4143     var prevSystem = prev.unstable_system,
       
  4144         prevProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(prev, ["unstable_system"]);
       
  4145 
       
  4146     var nextSystem = next.unstable_system,
       
  4147         nextProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(next, ["unstable_system"]);
       
  4148 
       
  4149     if (prevSystem !== nextSystem && !Object(reakit_utils_shallowEqual__WEBPACK_IMPORTED_MODULE_3__[/* shallowEqual */ "a"])(prevSystem, nextSystem)) {
       
  4150       return false;
       
  4151     }
       
  4152 
       
  4153     return Object(reakit_utils_shallowEqual__WEBPACK_IMPORTED_MODULE_3__[/* shallowEqual */ "a"])(prevProps, nextProps);
       
  4154   }
       
  4155 });
       
  4156 var Box = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__[/* createComponent */ "a"])({
       
  4157   as: "div",
       
  4158   useHook: useBox
       
  4159 });
       
  4160 
       
  4161 
       
  4162 
       
  4163 
       
  4164 /***/ }),
       
  4165 /* 68 */
       
  4166 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4167 
       
  4168 "use strict";
       
  4169 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return unstable_IdContext; });
       
  4170 /* unused harmony export unstable_IdProvider */
       
  4171 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  4172 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  4173 
       
  4174 
       
  4175 var defaultPrefix = "id";
       
  4176 function generateRandomString(prefix) {
       
  4177   if (prefix === void 0) {
       
  4178     prefix = defaultPrefix;
       
  4179   }
       
  4180 
       
  4181   return "" + (prefix ? prefix + "-" : "") + Math.random().toString(32).substr(2, 6);
       
  4182 }
       
  4183 
       
  4184 var unstable_IdContext = Object(react__WEBPACK_IMPORTED_MODULE_0__["createContext"])(generateRandomString);
       
  4185 function unstable_IdProvider(_ref) {
       
  4186   var children = _ref.children,
       
  4187       _ref$prefix = _ref.prefix,
       
  4188       prefix = _ref$prefix === void 0 ? defaultPrefix : _ref$prefix;
       
  4189   var count = Object(react__WEBPACK_IMPORTED_MODULE_0__["useRef"])(0);
       
  4190   var generateId = Object(react__WEBPACK_IMPORTED_MODULE_0__["useCallback"])(function (localPrefix) {
       
  4191     if (localPrefix === void 0) {
       
  4192       localPrefix = prefix;
       
  4193     }
       
  4194 
       
  4195     return "" + (localPrefix ? localPrefix + "-" : "") + ++count.current;
       
  4196   }, [prefix]);
       
  4197   return /*#__PURE__*/Object(react__WEBPACK_IMPORTED_MODULE_0__["createElement"])(unstable_IdContext.Provider, {
       
  4198     value: generateId
       
  4199   }, children);
       
  4200 }
       
  4201 
       
  4202 
       
  4203 
       
  4204 
       
  4205 /***/ }),
       
  4206 /* 69 */
       
  4207 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4208 
       
  4209 "use strict";
       
  4210 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return hasFocusWithin; });
       
  4211 /* harmony import */ var _getActiveElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(57);
       
  4212 
       
  4213 
       
  4214 
       
  4215 /**
       
  4216  * Checks if `element` has focus.
       
  4217  *
       
  4218  * @example
       
  4219  * import { hasFocusWithin } from "reakit-utils";
       
  4220  *
       
  4221  * hasFocusWithin(document.getElementById("id"));
       
  4222  */
       
  4223 
       
  4224 function hasFocusWithin(element) {
       
  4225   var activeElement = Object(_getActiveElement_js__WEBPACK_IMPORTED_MODULE_0__[/* getActiveElement */ "a"])(element);
       
  4226   if (!activeElement) return false;
       
  4227   if (element.contains(activeElement)) return true;
       
  4228   var activeDescendant = activeElement.getAttribute("aria-activedescendant");
       
  4229   if (!activeDescendant) return false;
       
  4230   return activeDescendant === element.id || !!element.querySelector("#" + activeDescendant);
       
  4231 }
       
  4232 
       
  4233 
       
  4234 
       
  4235 
       
  4236 /***/ }),
       
  4237 /* 70 */
       
  4238 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4239 
       
  4240 "use strict";
       
  4241 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isButton; });
       
  4242 var buttonInputTypes = ["button", "color", "file", "image", "reset", "submit"];
       
  4243 /**
       
  4244  * Checks whether `element` is a native HTML button element or not.
       
  4245  *
       
  4246  * @example
       
  4247  * import { isButton } from "reakit-utils";
       
  4248  *
       
  4249  * isButton(document.querySelector("button")); // true
       
  4250  * isButton(document.querySelector("input[type='button']")); // true
       
  4251  * isButton(document.querySelector("div")); // false
       
  4252  * isButton(document.querySelector("input[type='text']")); // false
       
  4253  *
       
  4254  * @returns {boolean}
       
  4255  */
       
  4256 
       
  4257 function isButton(element) {
       
  4258   if (element.tagName === "BUTTON") return true;
       
  4259 
       
  4260   if (element.tagName === "INPUT") {
       
  4261     var input = element;
       
  4262     return buttonInputTypes.indexOf(input.type) !== -1;
       
  4263   }
       
  4264 
       
  4265   return false;
       
  4266 }
       
  4267 
       
  4268 
       
  4269 
       
  4270 
       
  4271 /***/ }),
       
  4272 /* 71 */
       
  4273 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4274 
       
  4275 "use strict";
       
  4276 
       
  4277 // EXPORTS
       
  4278 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ ensureFocus; });
       
  4279 __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ getClosestFocusable; });
       
  4280 
       
  4281 // UNUSED EXPORTS: getAllFocusableIn, getAllTabbableIn, getFirstFocusableIn, getFirstTabbableIn, getLastTabbableIn, getNextTabbableIn, getPreviousTabbableIn, isFocusable, isTabbable
       
  4282 
       
  4283 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/matches.js
       
  4284 /**
       
  4285  * Ponyfill for `Element.prototype.matches`
       
  4286  *
       
  4287  * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/matches
       
  4288  */
       
  4289 function matches(element, selectors) {
       
  4290   if ("matches" in element) return element.matches(selectors);
       
  4291   if ("msMatchesSelector" in element) return element.msMatchesSelector(selectors);
       
  4292   return element.webkitMatchesSelector(selectors);
       
  4293 }
       
  4294 
       
  4295 
       
  4296 
       
  4297 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/closest.js
       
  4298 
       
  4299 
       
  4300 /**
       
  4301  * Ponyfill for `Element.prototype.closest`
       
  4302  *
       
  4303  * @example
       
  4304  * import { closest } from "reakit-utils";
       
  4305  *
       
  4306  * closest(document.getElementById("id"), "div");
       
  4307  * // same as
       
  4308  * document.getElementById("id").closest("div");
       
  4309  */
       
  4310 function closest(element, selectors) {
       
  4311   if ("closest" in element) return element.closest(selectors);
       
  4312 
       
  4313   do {
       
  4314     if (matches(element, selectors)) return element;
       
  4315     element = element.parentElement || element.parentNode;
       
  4316   } while (element !== null && element.nodeType === 1);
       
  4317 
       
  4318   return null;
       
  4319 }
       
  4320 
       
  4321 
       
  4322 
       
  4323 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/getActiveElement.js
       
  4324 var getActiveElement = __webpack_require__(57);
       
  4325 
       
  4326 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/tabbable.js
       
  4327 
       
  4328 
       
  4329 
       
  4330 
       
  4331 
       
  4332 /** @module tabbable */
       
  4333 var selector = "input:not([type='hidden']):not([disabled]), select:not([disabled]), " + "textarea:not([disabled]), a[href], button:not([disabled]), [tabindex], " + "iframe, object, embed, area[href], audio[controls], video[controls], " + "[contenteditable]:not([contenteditable='false'])";
       
  4334 
       
  4335 function isVisible(element) {
       
  4336   return element.offsetWidth > 0 || element.offsetHeight > 0 || element.getClientRects().length > 0;
       
  4337 }
       
  4338 
       
  4339 function hasNegativeTabIndex(element) {
       
  4340   var tabIndex = parseInt(element.getAttribute("tabindex") || "0", 10);
       
  4341   return tabIndex < 0;
       
  4342 }
       
  4343 /**
       
  4344  * Checks whether `element` is focusable or not.
       
  4345  *
       
  4346  * @memberof tabbable
       
  4347  *
       
  4348  * @example
       
  4349  * import { isFocusable } from "reakit-utils";
       
  4350  *
       
  4351  * isFocusable(document.querySelector("input")); // true
       
  4352  * isFocusable(document.querySelector("input[tabindex='-1']")); // true
       
  4353  * isFocusable(document.querySelector("input[hidden]")); // false
       
  4354  * isFocusable(document.querySelector("input:disabled")); // false
       
  4355  */
       
  4356 
       
  4357 
       
  4358 function isFocusable(element) {
       
  4359   return matches(element, selector) && isVisible(element);
       
  4360 }
       
  4361 /**
       
  4362  * Checks whether `element` is tabbable or not.
       
  4363  *
       
  4364  * @memberof tabbable
       
  4365  *
       
  4366  * @example
       
  4367  * import { isTabbable } from "reakit-utils";
       
  4368  *
       
  4369  * isTabbable(document.querySelector("input")); // true
       
  4370  * isTabbable(document.querySelector("input[tabindex='-1']")); // false
       
  4371  * isTabbable(document.querySelector("input[hidden]")); // false
       
  4372  * isTabbable(document.querySelector("input:disabled")); // false
       
  4373  */
       
  4374 
       
  4375 function isTabbable(element) {
       
  4376   return isFocusable(element) && !hasNegativeTabIndex(element);
       
  4377 }
       
  4378 /**
       
  4379  * Returns all the focusable elements in `container`.
       
  4380  *
       
  4381  * @memberof tabbable
       
  4382  *
       
  4383  * @param {Element} container
       
  4384  *
       
  4385  * @returns {Element[]}
       
  4386  */
       
  4387 
       
  4388 function getAllFocusableIn(container) {
       
  4389   var allFocusable = Array.from(container.querySelectorAll(selector));
       
  4390   allFocusable.unshift(container);
       
  4391   return allFocusable.filter(isFocusable);
       
  4392 }
       
  4393 /**
       
  4394  * Returns the first focusable element in `container`.
       
  4395  *
       
  4396  * @memberof tabbable
       
  4397  *
       
  4398  * @param {Element} container
       
  4399  *
       
  4400  * @returns {Element|null}
       
  4401  */
       
  4402 
       
  4403 function getFirstFocusableIn(container) {
       
  4404   var allFocusable = getAllFocusableIn(container);
       
  4405   return allFocusable.length ? allFocusable[0] : null;
       
  4406 }
       
  4407 /**
       
  4408  * Returns all the tabbable elements in `container`, including the container
       
  4409  * itself.
       
  4410  *
       
  4411  * @memberof tabbable
       
  4412  *
       
  4413  * @param {Element} container
       
  4414  * @param fallbackToFocusable If `true`, it'll return focusable elements if there are no tabbable ones.
       
  4415  *
       
  4416  * @returns {Element[]}
       
  4417  */
       
  4418 
       
  4419 function getAllTabbableIn(container, fallbackToFocusable) {
       
  4420   var allFocusable = Array.from(container.querySelectorAll(selector));
       
  4421   var allTabbable = allFocusable.filter(isTabbable);
       
  4422 
       
  4423   if (isTabbable(container)) {
       
  4424     allTabbable.unshift(container);
       
  4425   }
       
  4426 
       
  4427   if (!allTabbable.length && fallbackToFocusable) {
       
  4428     return allFocusable;
       
  4429   }
       
  4430 
       
  4431   return allTabbable;
       
  4432 }
       
  4433 /**
       
  4434  * Returns the first tabbable element in `container`, including the container
       
  4435  * itself if it's tabbable.
       
  4436  *
       
  4437  * @memberof tabbable
       
  4438  *
       
  4439  * @param {Element} container
       
  4440  * @param fallbackToFocusable If `true`, it'll return the first focusable element if there are no tabbable ones.
       
  4441  *
       
  4442  * @returns {Element|null}
       
  4443  */
       
  4444 
       
  4445 function getFirstTabbableIn(container, fallbackToFocusable) {
       
  4446   var _getAllTabbableIn = getAllTabbableIn(container, fallbackToFocusable),
       
  4447       first = _getAllTabbableIn[0];
       
  4448 
       
  4449   return first || null;
       
  4450 }
       
  4451 /**
       
  4452  * Returns the last tabbable element in `container`, including the container
       
  4453  * itself if it's tabbable.
       
  4454  *
       
  4455  * @memberof tabbable
       
  4456  *
       
  4457  * @param {Element} container
       
  4458  * @param fallbackToFocusable If `true`, it'll return the last focusable element if there are no tabbable ones.
       
  4459  *
       
  4460  * @returns {Element|null}
       
  4461  */
       
  4462 
       
  4463 function getLastTabbableIn(container, fallbackToFocusable) {
       
  4464   var allTabbable = getAllTabbableIn(container, fallbackToFocusable);
       
  4465   return allTabbable[allTabbable.length - 1] || null;
       
  4466 }
       
  4467 /**
       
  4468  * Returns the next tabbable element in `container`.
       
  4469  *
       
  4470  * @memberof tabbable
       
  4471  *
       
  4472  * @param {Element} container
       
  4473  * @param fallbackToFocusable If `true`, it'll return the next focusable element if there are no tabbable ones.
       
  4474  *
       
  4475  * @returns {Element|null}
       
  4476  */
       
  4477 
       
  4478 function getNextTabbableIn(container, fallbackToFocusable) {
       
  4479   var activeElement = Object(getActiveElement["a" /* getActiveElement */])(container);
       
  4480   var allFocusable = getAllFocusableIn(container);
       
  4481   var index = allFocusable.indexOf(activeElement);
       
  4482   var slice = allFocusable.slice(index + 1);
       
  4483   return slice.find(isTabbable) || allFocusable.find(isTabbable) || (fallbackToFocusable ? slice[0] : null);
       
  4484 }
       
  4485 /**
       
  4486  * Returns the previous tabbable element in `container`.
       
  4487  *
       
  4488  * @memberof tabbable
       
  4489  *
       
  4490  * @param {Element} container
       
  4491  * @param fallbackToFocusable If `true`, it'll return the previous focusable element if there are no tabbable ones.
       
  4492  *
       
  4493  * @returns {Element|null}
       
  4494  */
       
  4495 
       
  4496 function getPreviousTabbableIn(container, fallbackToFocusable) {
       
  4497   var activeElement = Object(getActiveElement["a" /* getActiveElement */])(container);
       
  4498   var allFocusable = getAllFocusableIn(container).reverse();
       
  4499   var index = allFocusable.indexOf(activeElement);
       
  4500   var slice = allFocusable.slice(index + 1);
       
  4501   return slice.find(isTabbable) || allFocusable.find(isTabbable) || (fallbackToFocusable ? slice[0] : null);
       
  4502 }
       
  4503 /**
       
  4504  * Returns the closest focusable element.
       
  4505  *
       
  4506  * @memberof tabbable
       
  4507  *
       
  4508  * @param {Element} container
       
  4509  *
       
  4510  * @returns {Element|null}
       
  4511  */
       
  4512 
       
  4513 function getClosestFocusable(element) {
       
  4514   while (element && !isFocusable(element)) {
       
  4515     element = closest(element, selector);
       
  4516   }
       
  4517 
       
  4518   return element;
       
  4519 }
       
  4520 
       
  4521 function defaultIsActive(element) {
       
  4522   return Object(getActiveElement["a" /* getActiveElement */])(element) === element;
       
  4523 }
       
  4524 
       
  4525 /**
       
  4526  * Ensures `element` will receive focus if it's not already.
       
  4527  *
       
  4528  * @memberof tabbable
       
  4529  *
       
  4530  * @example
       
  4531  * import { ensureFocus } from "reakit-utils";
       
  4532  *
       
  4533  * ensureFocus(document.activeElement); // does nothing
       
  4534  *
       
  4535  * const element = document.querySelector("input");
       
  4536  *
       
  4537  * ensureFocus(element); // focuses element
       
  4538  * ensureFocus(element, { preventScroll: true }); // focuses element preventing scroll jump
       
  4539  *
       
  4540  * function isActive(el) {
       
  4541  *   return el.dataset.active === "true";
       
  4542  * }
       
  4543  *
       
  4544  * ensureFocus(document.querySelector("[data-active='true']"), { isActive }); // does nothing
       
  4545  *
       
  4546  * @returns {number} `requestAnimationFrame` call ID so it can be passed to `cancelAnimationFrame` if needed.
       
  4547  */
       
  4548 function ensureFocus(element, _temp) {
       
  4549   var _ref = _temp === void 0 ? {} : _temp,
       
  4550       _ref$isActive = _ref.isActive,
       
  4551       isActive = _ref$isActive === void 0 ? defaultIsActive : _ref$isActive,
       
  4552       preventScroll = _ref.preventScroll;
       
  4553 
       
  4554   if (isActive(element)) return -1;
       
  4555   element.focus({
       
  4556     preventScroll: preventScroll
       
  4557   });
       
  4558   if (isActive(element)) return -1;
       
  4559   return requestAnimationFrame(function () {
       
  4560     element.focus({
       
  4561       preventScroll: preventScroll
       
  4562     });
       
  4563   });
       
  4564 }
       
  4565 
       
  4566 
       
  4567 
       
  4568 
       
  4569 /***/ }),
       
  4570 /* 72 */
       
  4571 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4572 
       
  4573 "use strict";
       
  4574 
       
  4575 // EXPORTS
       
  4576 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ isPortalEvent; });
       
  4577 
       
  4578 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/contains.js
       
  4579 /**
       
  4580  * Similar to `Element.prototype.contains`.
       
  4581  */
       
  4582 function contains(parent, child) {
       
  4583   return parent === child || parent.contains(child);
       
  4584 }
       
  4585 
       
  4586 
       
  4587 
       
  4588 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/isPortalEvent.js
       
  4589 
       
  4590 
       
  4591 /**
       
  4592  * Returns `true` if `event` has been fired within a React Portal element.
       
  4593  */
       
  4594 
       
  4595 function isPortalEvent(event) {
       
  4596   return !contains(event.currentTarget, event.target);
       
  4597 }
       
  4598 
       
  4599 
       
  4600 
       
  4601 
       
  4602 /***/ }),
       
  4603 /* 73 */
       
  4604 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4605 
       
  4606 "use strict";
       
  4607 /* unused harmony export Tabbable */
       
  4608 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useTabbable; });
       
  4609 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
  4610 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(49);
       
  4611 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48);
       
  4612 /* harmony import */ var _Box_Box_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(67);
       
  4613 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(13);
       
  4614 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
       
  4615 /* harmony import */ var reakit_utils_useForkRef__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(63);
       
  4616 /* harmony import */ var reakit_utils_isButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(70);
       
  4617 /* harmony import */ var reakit_warning__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(80);
       
  4618 /* harmony import */ var reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(46);
       
  4619 /* harmony import */ var reakit_utils_useIsomorphicEffect__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(59);
       
  4620 /* harmony import */ var reakit_utils_hasFocusWithin__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(69);
       
  4621 /* harmony import */ var reakit_utils_isPortalEvent__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(72);
       
  4622 /* harmony import */ var reakit_utils_getActiveElement__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(57);
       
  4623 /* harmony import */ var reakit_utils_tabbable__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(71);
       
  4624 
       
  4625 
       
  4626 
       
  4627 
       
  4628 
       
  4629 
       
  4630 
       
  4631 
       
  4632 
       
  4633 
       
  4634 
       
  4635 
       
  4636 
       
  4637 
       
  4638 
       
  4639 
       
  4640 function isUA(string) {
       
  4641   if (typeof window === "undefined") return false;
       
  4642   return window.navigator.userAgent.indexOf(string) !== -1;
       
  4643 }
       
  4644 
       
  4645 var isSafariOrFirefoxOnMac = isUA("Mac") && !isUA("Chrome") && (isUA("Safari") || isUA("Firefox"));
       
  4646 
       
  4647 function focusIfNeeded(element) {
       
  4648   if (!Object(reakit_utils_hasFocusWithin__WEBPACK_IMPORTED_MODULE_10__[/* hasFocusWithin */ "a"])(element)) {
       
  4649     element.focus();
       
  4650   }
       
  4651 } // Safari and Firefox on MacOS don't focus on buttons on mouse down like other
       
  4652 // browsers/platforms. Instead, they focus on the closest focusable ancestor
       
  4653 // element, which is ultimately the body element. So we make sure to give focus
       
  4654 // to the tabbable element on mouse down so it works consistently across
       
  4655 // browsers.
       
  4656 // istanbul ignore next
       
  4657 
       
  4658 
       
  4659 function useFocusOnMouseDown() {
       
  4660   if (!isSafariOrFirefoxOnMac) return undefined;
       
  4661 
       
  4662   var _React$useState = Object(react__WEBPACK_IMPORTED_MODULE_4__["useState"])(null),
       
  4663       tabbable = _React$useState[0],
       
  4664       scheduleFocus = _React$useState[1];
       
  4665 
       
  4666   Object(react__WEBPACK_IMPORTED_MODULE_4__["useEffect"])(function () {
       
  4667     if (!tabbable) return;
       
  4668     focusIfNeeded(tabbable);
       
  4669     scheduleFocus(null);
       
  4670   }, [tabbable]);
       
  4671   var onMouseDown = Object(react__WEBPACK_IMPORTED_MODULE_4__["useCallback"])(function (event) {
       
  4672     var element = event.currentTarget;
       
  4673     if (Object(reakit_utils_isPortalEvent__WEBPACK_IMPORTED_MODULE_11__[/* isPortalEvent */ "a"])(event)) return;
       
  4674     if (!Object(reakit_utils_isButton__WEBPACK_IMPORTED_MODULE_6__[/* isButton */ "a"])(element)) return;
       
  4675     var activeElement = Object(reakit_utils_getActiveElement__WEBPACK_IMPORTED_MODULE_12__[/* getActiveElement */ "a"])(element);
       
  4676     if (!activeElement) return;
       
  4677     var activeElementIsBody = activeElement.tagName === "BODY";
       
  4678     var focusableAncestor = Object(reakit_utils_tabbable__WEBPACK_IMPORTED_MODULE_13__[/* getClosestFocusable */ "b"])(element.parentElement);
       
  4679 
       
  4680     if (activeElement === focusableAncestor || activeElementIsBody && !focusableAncestor) {
       
  4681       // When the active element is the focusable ancestor, it'll not emit
       
  4682       // focus/blur events. After all, it's already focused. So we can't
       
  4683       // listen to those events to focus this tabbable element.
       
  4684       // When the active element is body and there's no focusable ancestor,
       
  4685       // we also don't have any other event to listen to since body never
       
  4686       // emits focus/blur events on itself.
       
  4687       // In both of these cases, we have to schedule focus on this tabbable
       
  4688       // element.
       
  4689       scheduleFocus(element);
       
  4690     } else if (focusableAncestor) {
       
  4691       // Clicking (mouse down) on the tabbable element on Safari and Firefox
       
  4692       // on MacOS will fire focus on the focusable ancestor element if
       
  4693       // there's any and if it's not the current active element. So we wait
       
  4694       // for this event to happen before moving focus to this element.
       
  4695       // Instead of moving focus right away, we have to schedule it,
       
  4696       // otherwise it's gonna prevent drag events from happening.
       
  4697       var onFocus = function onFocus() {
       
  4698         return scheduleFocus(element);
       
  4699       };
       
  4700 
       
  4701       focusableAncestor.addEventListener("focusin", onFocus, {
       
  4702         once: true
       
  4703       });
       
  4704     } else {
       
  4705       // Finally, if there's no focsuable ancestor and there's another
       
  4706       // element with focus, we wait for that element to get blurred before
       
  4707       // focusing this one.
       
  4708       var onBlur = function onBlur() {
       
  4709         return focusIfNeeded(element);
       
  4710       };
       
  4711 
       
  4712       activeElement.addEventListener("blur", onBlur, {
       
  4713         once: true
       
  4714       });
       
  4715     }
       
  4716   }, []);
       
  4717   return onMouseDown;
       
  4718 }
       
  4719 
       
  4720 function isNativeTabbable(element) {
       
  4721   return element.tagName === "BUTTON" || element.tagName === "INPUT" || element.tagName === "SELECT" || element.tagName === "TEXTAREA" || element.tagName === "A" || element.tagName === "AUDIO" || element.tagName === "VIDEO";
       
  4722 }
       
  4723 
       
  4724 var useTabbable = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__[/* createHook */ "a"])({
       
  4725   name: "Tabbable",
       
  4726   compose: _Box_Box_js__WEBPACK_IMPORTED_MODULE_3__[/* useBox */ "a"],
       
  4727   keys: ["disabled", "focusable"],
       
  4728   useOptions: function useOptions(options, _ref) {
       
  4729     var disabled = _ref.disabled;
       
  4730     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  4731       disabled: disabled
       
  4732     }, options);
       
  4733   },
       
  4734   useProps: function useProps(options, _ref2) {
       
  4735     var htmlRef = _ref2.ref,
       
  4736         htmlTabIndex = _ref2.tabIndex,
       
  4737         htmlOnClick = _ref2.onClick,
       
  4738         htmlOnMouseDown = _ref2.onMouseDown,
       
  4739         htmlStyle = _ref2.style,
       
  4740         htmlProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_ref2, ["ref", "tabIndex", "onClick", "onMouseDown", "style"]);
       
  4741 
       
  4742     var ref = Object(react__WEBPACK_IMPORTED_MODULE_4__["useRef"])(null);
       
  4743     var onClickRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_8__[/* useLiveRef */ "a"])(htmlOnClick);
       
  4744     var onMouseDownRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_8__[/* useLiveRef */ "a"])(htmlOnMouseDown);
       
  4745     var trulyDisabled = options.disabled && !options.focusable;
       
  4746 
       
  4747     var _React$useState2 = Object(react__WEBPACK_IMPORTED_MODULE_4__["useState"])(true),
       
  4748         nativeTabbable = _React$useState2[0],
       
  4749         setNativeTabbable = _React$useState2[1];
       
  4750 
       
  4751     var tabIndex = nativeTabbable ? htmlTabIndex : htmlTabIndex || 0;
       
  4752     var style = options.disabled ? Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  4753       pointerEvents: "none"
       
  4754     }, htmlStyle) : htmlStyle;
       
  4755     var focusOnMouseDown = useFocusOnMouseDown();
       
  4756     Object(reakit_utils_useIsomorphicEffect__WEBPACK_IMPORTED_MODULE_9__[/* useIsomorphicEffect */ "a"])(function () {
       
  4757       var tabbable = ref.current;
       
  4758 
       
  4759       if (!tabbable) {
       
  4760          false ? undefined : void 0;
       
  4761         return;
       
  4762       }
       
  4763 
       
  4764       if (!isNativeTabbable(tabbable)) {
       
  4765         setNativeTabbable(false);
       
  4766       }
       
  4767     }, []);
       
  4768     var onClick = Object(react__WEBPACK_IMPORTED_MODULE_4__["useCallback"])(function (event) {
       
  4769       var _onClickRef$current;
       
  4770 
       
  4771       if (options.disabled) {
       
  4772         event.stopPropagation();
       
  4773         event.preventDefault();
       
  4774         return;
       
  4775       }
       
  4776 
       
  4777       (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);
       
  4778     }, [options.disabled]);
       
  4779     var onMouseDown = Object(react__WEBPACK_IMPORTED_MODULE_4__["useCallback"])(function (event) {
       
  4780       var _onMouseDownRef$curre;
       
  4781 
       
  4782       if (options.disabled) {
       
  4783         event.stopPropagation();
       
  4784         event.preventDefault();
       
  4785         return;
       
  4786       }
       
  4787 
       
  4788       (_onMouseDownRef$curre = onMouseDownRef.current) === null || _onMouseDownRef$curre === void 0 ? void 0 : _onMouseDownRef$curre.call(onMouseDownRef, event);
       
  4789       if (event.defaultPrevented) return;
       
  4790       focusOnMouseDown === null || focusOnMouseDown === void 0 ? void 0 : focusOnMouseDown(event);
       
  4791     }, [options.disabled, focusOnMouseDown]);
       
  4792     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  4793       ref: Object(reakit_utils_useForkRef__WEBPACK_IMPORTED_MODULE_5__[/* useForkRef */ "a"])(ref, htmlRef),
       
  4794       style: style,
       
  4795       tabIndex: !trulyDisabled ? tabIndex : undefined,
       
  4796       disabled: trulyDisabled && nativeTabbable ? true : undefined,
       
  4797       "aria-disabled": options.disabled ? true : undefined,
       
  4798       onClick: onClick,
       
  4799       onMouseDown: onMouseDown
       
  4800     }, htmlProps);
       
  4801   }
       
  4802 });
       
  4803 var Tabbable = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__[/* createComponent */ "a"])({
       
  4804   as: "div",
       
  4805   useHook: useTabbable
       
  4806 });
       
  4807 
       
  4808 
       
  4809 
       
  4810 
       
  4811 /***/ }),
       
  4812 /* 74 */
       
  4813 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4814 
       
  4815 "use strict";
       
  4816 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return SystemContext; });
       
  4817 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  4818 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  4819 
       
  4820 
       
  4821 var SystemContext = /*#__PURE__*/Object(react__WEBPACK_IMPORTED_MODULE_0__["createContext"])({});
       
  4822 
       
  4823 
       
  4824 
       
  4825 
       
  4826 /***/ }),
       
  4827 /* 75 */,
       
  4828 /* 76 */,
       
  4829 /* 77 */
  1866 /***/ (function(module, exports, __webpack_require__) {
  4830 /***/ (function(module, exports, __webpack_require__) {
  1867 
  4831 
  1868 "use strict";
  4832 "use strict";
  1869 
  4833 
  1870 
  4834 
  1871 var defineProperties = __webpack_require__(73);
  4835 Object.defineProperty(exports, "__esModule", {
  1872 
  4836   value: true
  1873 var implementation = __webpack_require__(155);
  4837 });
  1874 var getPolyfill = __webpack_require__(156);
  4838 var DISPLAY_FORMAT = exports.DISPLAY_FORMAT = 'L';
  1875 var shim = __webpack_require__(286);
  4839 var ISO_FORMAT = exports.ISO_FORMAT = 'YYYY-MM-DD';
       
  4840 var ISO_MONTH_FORMAT = exports.ISO_MONTH_FORMAT = 'YYYY-MM';
       
  4841 
       
  4842 var START_DATE = exports.START_DATE = 'startDate';
       
  4843 var END_DATE = exports.END_DATE = 'endDate';
       
  4844 
       
  4845 var HORIZONTAL_ORIENTATION = exports.HORIZONTAL_ORIENTATION = 'horizontal';
       
  4846 var VERTICAL_ORIENTATION = exports.VERTICAL_ORIENTATION = 'vertical';
       
  4847 var VERTICAL_SCROLLABLE = exports.VERTICAL_SCROLLABLE = 'verticalScrollable';
       
  4848 
       
  4849 var ICON_BEFORE_POSITION = exports.ICON_BEFORE_POSITION = 'before';
       
  4850 var ICON_AFTER_POSITION = exports.ICON_AFTER_POSITION = 'after';
       
  4851 
       
  4852 var INFO_POSITION_TOP = exports.INFO_POSITION_TOP = 'top';
       
  4853 var INFO_POSITION_BOTTOM = exports.INFO_POSITION_BOTTOM = 'bottom';
       
  4854 var INFO_POSITION_BEFORE = exports.INFO_POSITION_BEFORE = 'before';
       
  4855 var INFO_POSITION_AFTER = exports.INFO_POSITION_AFTER = 'after';
       
  4856 
       
  4857 var ANCHOR_LEFT = exports.ANCHOR_LEFT = 'left';
       
  4858 var ANCHOR_RIGHT = exports.ANCHOR_RIGHT = 'right';
       
  4859 
       
  4860 var OPEN_DOWN = exports.OPEN_DOWN = 'down';
       
  4861 var OPEN_UP = exports.OPEN_UP = 'up';
       
  4862 
       
  4863 var DAY_SIZE = exports.DAY_SIZE = 39;
       
  4864 var BLOCKED_MODIFIER = exports.BLOCKED_MODIFIER = 'blocked';
       
  4865 var WEEKDAYS = exports.WEEKDAYS = [0, 1, 2, 3, 4, 5, 6];
       
  4866 
       
  4867 var FANG_WIDTH_PX = exports.FANG_WIDTH_PX = 20;
       
  4868 var FANG_HEIGHT_PX = exports.FANG_HEIGHT_PX = 10;
       
  4869 var DEFAULT_VERTICAL_SPACING = exports.DEFAULT_VERTICAL_SPACING = 22;
       
  4870 
       
  4871 var MODIFIER_KEY_NAMES = exports.MODIFIER_KEY_NAMES = new Set(['Shift', 'Control', 'Alt', 'Meta']);
       
  4872 
       
  4873 /***/ }),
       
  4874 /* 78 */
       
  4875 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4876 
       
  4877 "use strict";
       
  4878 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useCreateElement; });
       
  4879 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13);
       
  4880 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
       
  4881 /* harmony import */ var _SystemContext_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(74);
       
  4882 /* harmony import */ var _rollupPluginBabelHelpers_0c84a174_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55);
       
  4883 
       
  4884 
       
  4885 
       
  4886 
       
  4887 function isRenderProp(children) {
       
  4888   return typeof children === "function";
       
  4889 }
       
  4890 
       
  4891 /**
       
  4892  * Custom hook that will call `children` if it's a function. If
       
  4893  * `useCreateElement` has been passed to the context, it'll be used instead.
       
  4894  *
       
  4895  * @example
       
  4896  * import React from "react";
       
  4897  * import { SystemProvider, useCreateElement } from "reakit-system";
       
  4898  *
       
  4899  * const system = {
       
  4900  *   useCreateElement(type, props, children = props.children) {
       
  4901  *     // very similar to what `useCreateElement` does already
       
  4902  *     if (typeof children === "function") {
       
  4903  *       const { children: _, ...rest } = props;
       
  4904  *       return children(rest);
       
  4905  *     }
       
  4906  *     return React.createElement(type, props, children);
       
  4907  *   },
       
  4908  * };
       
  4909  *
       
  4910  * function Component(props) {
       
  4911  *   return useCreateElement("div", props);
       
  4912  * }
       
  4913  *
       
  4914  * function App() {
       
  4915  *   return (
       
  4916  *     <SystemProvider unstable_system={system}>
       
  4917  *       <Component url="url">{({ url }) => <a href={url}>link</a>}</Component>
       
  4918  *     </SystemProvider>
       
  4919  *   );
       
  4920  * }
       
  4921  */
       
  4922 
       
  4923 var useCreateElement = function useCreateElement(type, props, children) {
       
  4924   if (children === void 0) {
       
  4925     children = props.children;
       
  4926   }
       
  4927 
       
  4928   var context = Object(react__WEBPACK_IMPORTED_MODULE_0__["useContext"])(_SystemContext_js__WEBPACK_IMPORTED_MODULE_1__[/* SystemContext */ "a"]);
       
  4929 
       
  4930   if (context.useCreateElement) {
       
  4931     return context.useCreateElement(type, props, children);
       
  4932   }
       
  4933 
       
  4934   if (typeof type === "string" && isRenderProp(children)) {
       
  4935     var _ = props.children,
       
  4936         rest = Object(_rollupPluginBabelHelpers_0c84a174_js__WEBPACK_IMPORTED_MODULE_2__[/* a */ "b"])(props, ["children"]);
       
  4937 
       
  4938     return children(rest);
       
  4939   }
       
  4940 
       
  4941   return /*#__PURE__*/Object(react__WEBPACK_IMPORTED_MODULE_0__["createElement"])(type, props, children);
       
  4942 };
       
  4943 
       
  4944 
       
  4945 
       
  4946 
       
  4947 /***/ }),
       
  4948 /* 79 */,
       
  4949 /* 80 */
       
  4950 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  4951 
       
  4952 "use strict";
       
  4953 
       
  4954 // UNUSED EXPORTS: warning, useWarning
       
  4955 
       
  4956 // EXTERNAL MODULE: ./node_modules/reakit-warning/es/warning.js
       
  4957 var warning = __webpack_require__(106);
       
  4958 
       
  4959 // EXTERNAL MODULE: external {"this":"React"}
       
  4960 var external_this_React_ = __webpack_require__(13);
       
  4961 
       
  4962 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/isObject.js
       
  4963 /**
       
  4964  * Checks whether `arg` is an object or not.
       
  4965  *
       
  4966  * @returns {boolean}
       
  4967  */
       
  4968 function isObject(arg) {
       
  4969   return typeof arg === "object" && arg != null;
       
  4970 }
       
  4971 
       
  4972 
       
  4973 
       
  4974 // CONCATENATED MODULE: ./node_modules/reakit-warning/es/useWarning.js
       
  4975 
       
  4976 
       
  4977 
       
  4978 
       
  4979 
       
  4980 function isRefObject(ref) {
       
  4981   return isObject(ref) && "current" in ref;
       
  4982 }
       
  4983 /**
       
  4984  * Logs `messages` to the console using `console.warn` based on a `condition`.
       
  4985  * This should be used inside components.
       
  4986  */
       
  4987 
       
  4988 
       
  4989 function useWarning(condition) {
       
  4990   for (var _len = arguments.length, messages = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
       
  4991     messages[_key - 1] = arguments[_key];
       
  4992   }
       
  4993 
       
  4994   if (false) {}
       
  4995 }
       
  4996 
       
  4997 
       
  4998 
       
  4999 // CONCATENATED MODULE: ./node_modules/reakit-warning/es/index.js
       
  5000 
       
  5001 
       
  5002 
       
  5003 
       
  5004 
       
  5005 
       
  5006 
       
  5007 /***/ }),
       
  5008 /* 81 */,
       
  5009 /* 82 */
       
  5010 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5011 
       
  5012 "use strict";
       
  5013 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return createOnKeyDown; });
       
  5014 /**
       
  5015  * Returns an `onKeyDown` handler to be passed to a component.
       
  5016  *
       
  5017  * @param options
       
  5018  */
       
  5019 function createOnKeyDown(_temp) {
       
  5020   var _ref = _temp === void 0 ? {} : _temp,
       
  5021       keyMap = _ref.keyMap,
       
  5022       onKey = _ref.onKey,
       
  5023       stopPropagation = _ref.stopPropagation,
       
  5024       onKeyDown = _ref.onKeyDown,
       
  5025       _ref$shouldKeyDown = _ref.shouldKeyDown,
       
  5026       shouldKeyDown = _ref$shouldKeyDown === void 0 ? function () {
       
  5027     return true;
       
  5028   } : _ref$shouldKeyDown,
       
  5029       _ref$preventDefault = _ref.preventDefault,
       
  5030       preventDefault = _ref$preventDefault === void 0 ? true : _ref$preventDefault;
       
  5031 
       
  5032   return function (event) {
       
  5033     if (!keyMap) return;
       
  5034     var finalKeyMap = typeof keyMap === "function" ? keyMap(event) : keyMap;
       
  5035     var shouldPreventDefault = typeof preventDefault === "function" ? preventDefault(event) : preventDefault;
       
  5036     var shouldStopPropagation = typeof stopPropagation === "function" ? stopPropagation(event) : stopPropagation;
       
  5037 
       
  5038     if (event.key in finalKeyMap) {
       
  5039       var action = finalKeyMap[event.key];
       
  5040 
       
  5041       if (typeof action === "function" && shouldKeyDown(event)) {
       
  5042         if (shouldPreventDefault) event.preventDefault();
       
  5043         if (shouldStopPropagation) event.stopPropagation();
       
  5044         if (onKey) onKey(event);
       
  5045         action(event); // Prevent onKeyDown from being called twice for the same keys
       
  5046 
       
  5047         return;
       
  5048       }
       
  5049     }
       
  5050 
       
  5051     if (onKeyDown && "current" in onKeyDown) {
       
  5052       var _onKeyDown$current;
       
  5053 
       
  5054       (_onKeyDown$current = onKeyDown.current) === null || _onKeyDown$current === void 0 ? void 0 : _onKeyDown$current.call(onKeyDown, event);
       
  5055     } else {
       
  5056       onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);
       
  5057     }
       
  5058   };
       
  5059 }
       
  5060 
       
  5061 
       
  5062 
       
  5063 
       
  5064 /***/ }),
       
  5065 /* 83 */,
       
  5066 /* 84 */
       
  5067 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5068 
       
  5069 "use strict";
       
  5070 /* unused harmony export Clickable */
       
  5071 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useClickable; });
       
  5072 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
  5073 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(49);
       
  5074 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48);
       
  5075 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);
       
  5076 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
       
  5077 /* harmony import */ var reakit_utils_isButton__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(70);
       
  5078 /* harmony import */ var reakit_warning__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(80);
       
  5079 /* harmony import */ var reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(46);
       
  5080 /* harmony import */ var reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(53);
       
  5081 /* harmony import */ var _Tabbable_Tabbable_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(73);
       
  5082 
       
  5083 
       
  5084 
       
  5085 
       
  5086 
       
  5087 
       
  5088 
       
  5089 
       
  5090 
       
  5091 
       
  5092 
       
  5093 
       
  5094 
       
  5095 
       
  5096 
       
  5097 
       
  5098 
       
  5099 
       
  5100 function isNativeClick(event) {
       
  5101   var element = event.currentTarget;
       
  5102   if (!event.isTrusted) return false; // istanbul ignore next: can't test trusted events yet
       
  5103 
       
  5104   return Object(reakit_utils_isButton__WEBPACK_IMPORTED_MODULE_4__[/* isButton */ "a"])(element) || element.tagName === "INPUT" || element.tagName === "TEXTAREA" || element.tagName === "A" || element.tagName === "SELECT";
       
  5105 }
       
  5106 
       
  5107 var useClickable = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__[/* createHook */ "a"])({
       
  5108   name: "Clickable",
       
  5109   compose: _Tabbable_Tabbable_js__WEBPACK_IMPORTED_MODULE_8__[/* useTabbable */ "a"],
       
  5110   keys: ["unstable_clickOnEnter", "unstable_clickOnSpace"],
       
  5111   useOptions: function useOptions(_ref) {
       
  5112     var _ref$unstable_clickOn = _ref.unstable_clickOnEnter,
       
  5113         unstable_clickOnEnter = _ref$unstable_clickOn === void 0 ? true : _ref$unstable_clickOn,
       
  5114         _ref$unstable_clickOn2 = _ref.unstable_clickOnSpace,
       
  5115         unstable_clickOnSpace = _ref$unstable_clickOn2 === void 0 ? true : _ref$unstable_clickOn2,
       
  5116         options = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_ref, ["unstable_clickOnEnter", "unstable_clickOnSpace"]);
       
  5117 
       
  5118     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  5119       unstable_clickOnEnter: unstable_clickOnEnter,
       
  5120       unstable_clickOnSpace: unstable_clickOnSpace
       
  5121     }, options);
       
  5122   },
       
  5123   useProps: function useProps(options, _ref2) {
       
  5124     var htmlOnKeyDown = _ref2.onKeyDown,
       
  5125         htmlOnKeyUp = _ref2.onKeyUp,
       
  5126         htmlProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_ref2, ["onKeyDown", "onKeyUp"]);
       
  5127 
       
  5128     var _React$useState = Object(react__WEBPACK_IMPORTED_MODULE_3__["useState"])(false),
       
  5129         active = _React$useState[0],
       
  5130         setActive = _React$useState[1];
       
  5131 
       
  5132     var onKeyDownRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(htmlOnKeyDown);
       
  5133     var onKeyUpRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(htmlOnKeyUp);
       
  5134     var onKeyDown = Object(react__WEBPACK_IMPORTED_MODULE_3__["useCallback"])(function (event) {
       
  5135       var _onKeyDownRef$current;
       
  5136 
       
  5137       (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);
       
  5138       if (event.defaultPrevented) return;
       
  5139       if (options.disabled) return;
       
  5140       if (event.metaKey) return;
       
  5141       if (!Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__[/* isSelfTarget */ "a"])(event)) return;
       
  5142       var isEnter = options.unstable_clickOnEnter && event.key === "Enter";
       
  5143       var isSpace = options.unstable_clickOnSpace && event.key === " ";
       
  5144 
       
  5145       if (isEnter || isSpace) {
       
  5146         if (isNativeClick(event)) return;
       
  5147         event.preventDefault();
       
  5148 
       
  5149         if (isEnter) {
       
  5150           event.currentTarget.click();
       
  5151         } else if (isSpace) {
       
  5152           setActive(true);
       
  5153         }
       
  5154       }
       
  5155     }, [options.disabled, options.unstable_clickOnEnter, options.unstable_clickOnSpace]);
       
  5156     var onKeyUp = Object(react__WEBPACK_IMPORTED_MODULE_3__["useCallback"])(function (event) {
       
  5157       var _onKeyUpRef$current;
       
  5158 
       
  5159       (_onKeyUpRef$current = onKeyUpRef.current) === null || _onKeyUpRef$current === void 0 ? void 0 : _onKeyUpRef$current.call(onKeyUpRef, event);
       
  5160       if (event.defaultPrevented) return;
       
  5161       if (options.disabled) return;
       
  5162       if (event.metaKey) return;
       
  5163       var isSpace = options.unstable_clickOnSpace && event.key === " ";
       
  5164 
       
  5165       if (active && isSpace) {
       
  5166         setActive(false);
       
  5167         event.currentTarget.click();
       
  5168       }
       
  5169     }, [options.disabled, options.unstable_clickOnSpace, active]);
       
  5170     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  5171       "data-active": active || undefined,
       
  5172       onKeyDown: onKeyDown,
       
  5173       onKeyUp: onKeyUp
       
  5174     }, htmlProps);
       
  5175   }
       
  5176 });
       
  5177 var Clickable = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__[/* createComponent */ "a"])({
       
  5178   as: "button",
       
  5179   memo: true,
       
  5180   useHook: useClickable
       
  5181 });
       
  5182 
       
  5183 
       
  5184 
       
  5185 
       
  5186 /***/ }),
       
  5187 /* 85 */
       
  5188 /***/ (function(module, exports, __webpack_require__) {
       
  5189 
       
  5190 module.exports =  true ? __webpack_require__(356) : undefined;
       
  5191 
       
  5192 
       
  5193 
       
  5194 /***/ }),
       
  5195 /* 86 */
       
  5196 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5197 
       
  5198 "use strict";
       
  5199 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20);
       
  5200 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(19);
       
  5201 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(23);
       
  5202 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16);
       
  5203 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22);
       
  5204 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(0);
       
  5205 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__);
       
  5206 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(2);
       
  5207 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_6__);
       
  5208 /* harmony import */ var _popover__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(112);
       
  5209 /* harmony import */ var _shortcut__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(166);
       
  5210 
       
  5211 
       
  5212 
       
  5213 
       
  5214 
       
  5215 
       
  5216 
       
  5217 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(this, result); }; }
       
  5218 
       
  5219 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
  5220 
       
  5221 /**
       
  5222  * External dependencies
       
  5223  */
       
  5224 
       
  5225 /**
       
  5226  * WordPress dependencies
       
  5227  */
       
  5228 
       
  5229 
       
  5230 /**
       
  5231  * Internal dependencies
       
  5232  */
       
  5233 
       
  5234 
       
  5235 
       
  5236 /**
       
  5237  * Time over children to wait before showing tooltip
       
  5238  *
       
  5239  * @type {number}
       
  5240  */
       
  5241 
       
  5242 var TOOLTIP_DELAY = 700;
       
  5243 
       
  5244 var Tooltip = /*#__PURE__*/function (_Component) {
       
  5245   Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Tooltip, _Component);
       
  5246 
       
  5247   var _super = _createSuper(Tooltip);
       
  5248 
       
  5249   function Tooltip() {
       
  5250     var _this;
       
  5251 
       
  5252     Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this, Tooltip);
       
  5253 
       
  5254     _this = _super.apply(this, arguments);
       
  5255     _this.delayedSetIsOver = Object(lodash__WEBPACK_IMPORTED_MODULE_6__["debounce"])(function (isOver) {
       
  5256       return _this.setState({
       
  5257         isOver: isOver
       
  5258       });
       
  5259     }, TOOLTIP_DELAY);
       
  5260     /**
       
  5261      * Prebound `isInMouseDown` handler, created as a constant reference to
       
  5262      * assure ability to remove in component unmount.
       
  5263      *
       
  5264      * @type {Function}
       
  5265      */
       
  5266 
       
  5267     _this.cancelIsMouseDown = _this.createSetIsMouseDown(false);
       
  5268     /**
       
  5269      * Whether a the mouse is currently pressed, used in determining whether
       
  5270      * to handle a focus event as displaying the tooltip immediately.
       
  5271      *
       
  5272      * @type {boolean}
       
  5273      */
       
  5274 
       
  5275     _this.isInMouseDown = false;
       
  5276     _this.state = {
       
  5277       isOver: false
       
  5278     };
       
  5279     return _this;
       
  5280   }
       
  5281 
       
  5282   Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(Tooltip, [{
       
  5283     key: "componentWillUnmount",
       
  5284     value: function componentWillUnmount() {
       
  5285       this.delayedSetIsOver.cancel();
       
  5286       document.removeEventListener('mouseup', this.cancelIsMouseDown);
       
  5287     }
       
  5288   }, {
       
  5289     key: "emitToChild",
       
  5290     value: function emitToChild(eventName, event) {
       
  5291       var children = this.props.children;
       
  5292 
       
  5293       if (_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].count(children) !== 1) {
       
  5294         return;
       
  5295       }
       
  5296 
       
  5297       var child = _wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].only(children);
       
  5298 
       
  5299       if (typeof child.props[eventName] === 'function') {
       
  5300         child.props[eventName](event);
       
  5301       }
       
  5302     }
       
  5303   }, {
       
  5304     key: "createToggleIsOver",
       
  5305     value: function createToggleIsOver(eventName, isDelayed) {
       
  5306       var _this2 = this;
       
  5307 
       
  5308       return function (event) {
       
  5309         // Preserve original child callback behavior
       
  5310         _this2.emitToChild(eventName, event); // Mouse events behave unreliably in React for disabled elements,
       
  5311         // firing on mouseenter but not mouseleave.  Further, the default
       
  5312         // behavior for disabled elements in some browsers is to ignore
       
  5313         // mouse events. Don't bother trying to to handle them.
       
  5314         //
       
  5315         // See: https://github.com/facebook/react/issues/4251
       
  5316 
       
  5317 
       
  5318         if (event.currentTarget.disabled) {
       
  5319           return;
       
  5320         } // A focus event will occur as a result of a mouse click, but it
       
  5321         // should be disambiguated between interacting with the button and
       
  5322         // using an explicit focus shift as a cue to display the tooltip.
       
  5323 
       
  5324 
       
  5325         if ('focus' === event.type && _this2.isInMouseDown) {
       
  5326           return;
       
  5327         } // Needed in case unsetting is over while delayed set pending, i.e.
       
  5328         // quickly blur/mouseleave before delayedSetIsOver is called
       
  5329 
       
  5330 
       
  5331         _this2.delayedSetIsOver.cancel();
       
  5332 
       
  5333         var isOver = Object(lodash__WEBPACK_IMPORTED_MODULE_6__["includes"])(['focus', 'mouseenter'], event.type);
       
  5334 
       
  5335         if (isOver === _this2.state.isOver) {
       
  5336           return;
       
  5337         }
       
  5338 
       
  5339         if (isDelayed) {
       
  5340           _this2.delayedSetIsOver(isOver);
       
  5341         } else {
       
  5342           _this2.setState({
       
  5343             isOver: isOver
       
  5344           });
       
  5345         }
       
  5346       };
       
  5347     }
       
  5348     /**
       
  5349      * Creates an event callback to handle assignment of the `isInMouseDown`
       
  5350      * instance property in response to a `mousedown` or `mouseup` event.
       
  5351      *
       
  5352      * @param {boolean} isMouseDown Whether handler is to be created for the
       
  5353      *                              `mousedown` event, as opposed to `mouseup`.
       
  5354      *
       
  5355      * @return {Function} Event callback handler.
       
  5356      */
       
  5357 
       
  5358   }, {
       
  5359     key: "createSetIsMouseDown",
       
  5360     value: function createSetIsMouseDown(isMouseDown) {
       
  5361       var _this3 = this;
       
  5362 
       
  5363       return function (event) {
       
  5364         // Preserve original child callback behavior
       
  5365         _this3.emitToChild(isMouseDown ? 'onMouseDown' : 'onMouseUp', event); // On mouse down, the next `mouseup` should revert the value of the
       
  5366         // instance property and remove its own event handler. The bind is
       
  5367         // made on the document since the `mouseup` might not occur within
       
  5368         // the bounds of the element.
       
  5369 
       
  5370 
       
  5371         document[isMouseDown ? 'addEventListener' : 'removeEventListener']('mouseup', _this3.cancelIsMouseDown);
       
  5372         _this3.isInMouseDown = isMouseDown;
       
  5373       };
       
  5374     }
       
  5375   }, {
       
  5376     key: "render",
       
  5377     value: function render() {
       
  5378       var _this$props = this.props,
       
  5379           children = _this$props.children,
       
  5380           position = _this$props.position,
       
  5381           text = _this$props.text,
       
  5382           shortcut = _this$props.shortcut;
       
  5383 
       
  5384       if (_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].count(children) !== 1) {
       
  5385         if (false) {}
       
  5386 
       
  5387         return children;
       
  5388       }
       
  5389 
       
  5390       var child = _wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Children"].only(children);
       
  5391       var isOver = this.state.isOver;
       
  5392       return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["cloneElement"])(child, {
       
  5393         onMouseEnter: this.createToggleIsOver('onMouseEnter', true),
       
  5394         onMouseLeave: this.createToggleIsOver('onMouseLeave'),
       
  5395         onClick: this.createToggleIsOver('onClick'),
       
  5396         onFocus: this.createToggleIsOver('onFocus'),
       
  5397         onBlur: this.createToggleIsOver('onBlur'),
       
  5398         onMouseDown: this.createSetIsMouseDown(true),
       
  5399         children: Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["concatChildren"])(child.props.children, isOver && Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["createElement"])(_popover__WEBPACK_IMPORTED_MODULE_7__[/* default */ "a"], {
       
  5400           focusOnMount: false,
       
  5401           position: position,
       
  5402           className: "components-tooltip",
       
  5403           "aria-hidden": "true",
       
  5404           animate: false,
       
  5405           noArrow: true
       
  5406         }, text, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["createElement"])(_shortcut__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"], {
       
  5407           className: "components-tooltip__shortcut",
       
  5408           shortcut: shortcut
       
  5409         })))
       
  5410       });
       
  5411     }
       
  5412   }]);
       
  5413 
       
  5414   return Tooltip;
       
  5415 }(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Component"]);
       
  5416 
       
  5417 /* harmony default export */ __webpack_exports__["a"] = (Tooltip);
       
  5418 
       
  5419 
       
  5420 /***/ }),
       
  5421 /* 87 */
       
  5422 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5423 
       
  5424 "use strict";
       
  5425 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
  5426 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
  5427 /**
       
  5428  * WordPress dependencies
       
  5429  */
       
  5430 
       
  5431 var ToolbarContext = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createContext"])();
       
  5432 /* harmony default export */ __webpack_exports__["a"] = (ToolbarContext);
       
  5433 
       
  5434 
       
  5435 /***/ }),
       
  5436 /* 88 */
       
  5437 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5438 
       
  5439 "use strict";
       
  5440 /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
       
  5441 /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8);
       
  5442 /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(15);
       
  5443 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(0);
       
  5444 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__);
       
  5445 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6);
       
  5446 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__);
       
  5447 /* harmony import */ var _dashicon__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(148);
       
  5448 
       
  5449 
       
  5450 
       
  5451 
       
  5452 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
  5453 
       
  5454 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
  5455 
       
  5456 /**
       
  5457  * WordPress dependencies
       
  5458  */
       
  5459 
       
  5460 
       
  5461 /**
       
  5462  * Internal dependencies
       
  5463  */
       
  5464 
       
  5465 
       
  5466 
       
  5467 function Icon(_ref) {
       
  5468   var _ref$icon = _ref.icon,
       
  5469       icon = _ref$icon === void 0 ? null : _ref$icon,
       
  5470       size = _ref.size,
       
  5471       additionalProps = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_ref, ["icon", "size"]);
       
  5472 
       
  5473   // Dashicons should be 20x20 by default.
       
  5474   var dashiconSize = size || 20;
       
  5475 
       
  5476   if ('string' === typeof icon) {
       
  5477     return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(_dashicon__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])({
       
  5478       icon: icon,
       
  5479       size: dashiconSize
       
  5480     }, additionalProps));
       
  5481   }
       
  5482 
       
  5483   if (icon && _dashicon__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"] === icon.type) {
       
  5484     return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["cloneElement"])(icon, _objectSpread({
       
  5485       size: dashiconSize
       
  5486     }, additionalProps));
       
  5487   } // Icons should be 24x24 by default.
       
  5488 
       
  5489 
       
  5490   var iconSize = size || 24;
       
  5491 
       
  5492   if ('function' === typeof icon) {
       
  5493     if (icon.prototype instanceof _wordpress_element__WEBPACK_IMPORTED_MODULE_3__["Component"]) {
       
  5494       return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(icon, _objectSpread({
       
  5495         size: iconSize
       
  5496       }, additionalProps));
       
  5497     }
       
  5498 
       
  5499     return icon(_objectSpread({
       
  5500       size: iconSize
       
  5501     }, additionalProps));
       
  5502   }
       
  5503 
       
  5504   if (icon && (icon.type === 'svg' || icon.type === _wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__["SVG"])) {
       
  5505     var appliedProps = _objectSpread({
       
  5506       width: iconSize,
       
  5507       height: iconSize
       
  5508     }, icon.props, {}, additionalProps);
       
  5509 
       
  5510     return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_4__["SVG"], appliedProps);
       
  5511   }
       
  5512 
       
  5513   if (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["isValidElement"])(icon)) {
       
  5514     return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["cloneElement"])(icon, _objectSpread({
       
  5515       size: iconSize
       
  5516     }, additionalProps));
       
  5517   }
       
  5518 
       
  5519   return icon;
       
  5520 }
       
  5521 
       
  5522 /* harmony default export */ __webpack_exports__["a"] = (Icon);
       
  5523 
       
  5524 
       
  5525 /***/ }),
       
  5526 /* 89 */,
       
  5527 /* 90 */
       
  5528 /***/ (function(module, exports, __webpack_require__) {
       
  5529 
       
  5530 "use strict";
       
  5531 
       
  5532 
       
  5533 var ES5Type = __webpack_require__(317);
       
  5534 
       
  5535 // https://ecma-international.org/ecma-262/6.0/#sec-ecmascript-data-types-and-values
       
  5536 
       
  5537 module.exports = function Type(x) {
       
  5538 	if (typeof x === 'symbol') {
       
  5539 		return 'Symbol';
       
  5540 	}
       
  5541 	return ES5Type(x);
       
  5542 };
       
  5543 
       
  5544 
       
  5545 /***/ }),
       
  5546 /* 91 */
       
  5547 /***/ (function(module, exports, __webpack_require__) {
       
  5548 
       
  5549 "use strict";
       
  5550 
       
  5551 
       
  5552 var bind = __webpack_require__(118);
       
  5553 
       
  5554 module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
       
  5555 
       
  5556 
       
  5557 /***/ }),
       
  5558 /* 92 */
       
  5559 /***/ (function(module, exports, __webpack_require__) {
       
  5560 
       
  5561 "use strict";
       
  5562 
       
  5563 
       
  5564 var defineProperties = __webpack_require__(101);
       
  5565 
       
  5566 var implementation = __webpack_require__(226);
       
  5567 var getPolyfill = __webpack_require__(227);
       
  5568 var shim = __webpack_require__(353);
  1876 
  5569 
  1877 var polyfill = getPolyfill();
  5570 var polyfill = getPolyfill();
  1878 
  5571 
  1879 defineProperties(polyfill, {
  5572 defineProperties(polyfill, {
  1880 	getPolyfill: getPolyfill,
  5573 	getPolyfill: getPolyfill,
  1884 
  5577 
  1885 module.exports = polyfill;
  5578 module.exports = polyfill;
  1886 
  5579 
  1887 
  5580 
  1888 /***/ }),
  5581 /***/ }),
  1889 /* 47 */
  5582 /* 93 */
       
  5583 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5584 
       
  5585 "use strict";
       
  5586 /* unused harmony export unstable_Id */
       
  5587 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return unstable_useId; });
       
  5588 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
  5589 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(49);
       
  5590 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48);
       
  5591 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);
       
  5592 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
       
  5593 /* harmony import */ var _IdProvider_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(68);
       
  5594 /* harmony import */ var _IdState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(65);
       
  5595 
       
  5596 
       
  5597 
       
  5598 
       
  5599 
       
  5600 
       
  5601 
       
  5602 
       
  5603 var unstable_useId = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__[/* createHook */ "a"])({
       
  5604   useState: _IdState_js__WEBPACK_IMPORTED_MODULE_5__[/* unstable_useIdState */ "a"],
       
  5605   keys: ["id"],
       
  5606   useOptions: function useOptions(options, htmlProps) {
       
  5607     var generateId = Object(react__WEBPACK_IMPORTED_MODULE_3__["useContext"])(_IdProvider_js__WEBPACK_IMPORTED_MODULE_4__[/* unstable_IdContext */ "a"]);
       
  5608 
       
  5609     var _React$useState = Object(react__WEBPACK_IMPORTED_MODULE_3__["useState"])(function () {
       
  5610       // This comes from useIdState
       
  5611       if (options.unstable_idCountRef) {
       
  5612         options.unstable_idCountRef.current += 1;
       
  5613         return "-" + options.unstable_idCountRef.current;
       
  5614       } // If there's no useIdState, we check if `baseId` was passed (as a prop,
       
  5615       // not from useIdState).
       
  5616 
       
  5617 
       
  5618       if (options.baseId) {
       
  5619         return "-" + generateId("");
       
  5620       }
       
  5621 
       
  5622       return "";
       
  5623     }),
       
  5624         suffix = _React$useState[0]; // `baseId` will be the prop passed directly as a prop or via useIdState.
       
  5625     // If there's neither, then it'll fallback to Context's generateId.
       
  5626     // This generateId can result in a sequential ID (if there's a Provider)
       
  5627     // or a random string (without Provider).
       
  5628 
       
  5629 
       
  5630     var baseId = Object(react__WEBPACK_IMPORTED_MODULE_3__["useMemo"])(function () {
       
  5631       return options.baseId || generateId();
       
  5632     }, [options.baseId, generateId]);
       
  5633     var id = htmlProps.id || options.id || "" + baseId + suffix;
       
  5634     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, options), {}, {
       
  5635       id: id
       
  5636     });
       
  5637   },
       
  5638   useProps: function useProps(options, htmlProps) {
       
  5639     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
  5640       id: options.id
       
  5641     }, htmlProps);
       
  5642   }
       
  5643 });
       
  5644 var unstable_Id = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__[/* createComponent */ "a"])({
       
  5645   as: "div",
       
  5646   useHook: unstable_useId
       
  5647 });
       
  5648 
       
  5649 
       
  5650 
       
  5651 
       
  5652 /***/ }),
       
  5653 /* 94 */
       
  5654 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5655 
       
  5656 "use strict";
       
  5657 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return fireEvent; });
       
  5658 /* harmony import */ var _createEvent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(122);
       
  5659 
       
  5660 
       
  5661 
       
  5662 /**
       
  5663  * Creates and dispatches `Event` in a way that also works on IE 11.
       
  5664  *
       
  5665  * @example
       
  5666  * import { fireEvent } from "reakit-utils";
       
  5667  *
       
  5668  * fireEvent(document.getElementById("id"), "blur", {
       
  5669  *   bubbles: true,
       
  5670  *   cancelable: true,
       
  5671  * });
       
  5672  */
       
  5673 
       
  5674 function fireEvent(element, type, eventInit) {
       
  5675   return element.dispatchEvent(Object(_createEvent_js__WEBPACK_IMPORTED_MODULE_0__[/* createEvent */ "a"])(element, type, eventInit));
       
  5676 }
       
  5677 
       
  5678 
       
  5679 
       
  5680 
       
  5681 /***/ }),
       
  5682 /* 95 */
       
  5683 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5684 
       
  5685 "use strict";
       
  5686 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return isTextField; });
       
  5687 /**
       
  5688  * Check whether the given element is a text field, where text field is defined
       
  5689  * by the ability to select within the input, or that it is contenteditable.
       
  5690  */
       
  5691 function isTextField(element) {
       
  5692   try {
       
  5693     var isTextInput = element instanceof HTMLInputElement && element.selectionStart !== null;
       
  5694     var isTextArea = element.tagName === "TEXTAREA";
       
  5695     var isContentEditable = element.contentEditable === "true";
       
  5696     return isTextInput || isTextArea || isContentEditable || false;
       
  5697   } catch (error) {
       
  5698     // Safari throws an exception when trying to get `selectionStart`
       
  5699     // on non-text <input> elements (which, understandably, don't
       
  5700     // have the text selection API). We catch this via a try/catch
       
  5701     // block, as opposed to a more explicit check of the element's
       
  5702     // input types, because of Safari's non-standard behavior. This
       
  5703     // also means we don't have to worry about the list of input
       
  5704     // types that support `selectionStart` changing as the HTML spec
       
  5705     // evolves over time.
       
  5706     return false;
       
  5707   }
       
  5708 }
       
  5709 
       
  5710 
       
  5711 
       
  5712 
       
  5713 /***/ }),
       
  5714 /* 96 */
       
  5715 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5716 
       
  5717 "use strict";
       
  5718 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return setTextFieldValue; });
       
  5719 function setTextFieldValue(element, value) {
       
  5720   element.value = value;
       
  5721 }
       
  5722 
       
  5723 
       
  5724 
       
  5725 
       
  5726 /***/ }),
       
  5727 /* 97 */,
       
  5728 /* 98 */,
       
  5729 /* 99 */,
       
  5730 /* 100 */,
       
  5731 /* 101 */
       
  5732 /***/ (function(module, exports, __webpack_require__) {
       
  5733 
       
  5734 "use strict";
       
  5735 
       
  5736 
       
  5737 var keys = __webpack_require__(181);
       
  5738 var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
       
  5739 
       
  5740 var toStr = Object.prototype.toString;
       
  5741 var concat = Array.prototype.concat;
       
  5742 var origDefineProperty = Object.defineProperty;
       
  5743 
       
  5744 var isFunction = function (fn) {
       
  5745 	return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
       
  5746 };
       
  5747 
       
  5748 var arePropertyDescriptorsSupported = function () {
       
  5749 	var obj = {};
       
  5750 	try {
       
  5751 		origDefineProperty(obj, 'x', { enumerable: false, value: obj });
       
  5752 		// eslint-disable-next-line no-unused-vars, no-restricted-syntax
       
  5753 		for (var _ in obj) { // jscs:ignore disallowUnusedVariables
       
  5754 			return false;
       
  5755 		}
       
  5756 		return obj.x === obj;
       
  5757 	} catch (e) { /* this is IE 8. */
       
  5758 		return false;
       
  5759 	}
       
  5760 };
       
  5761 var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();
       
  5762 
       
  5763 var defineProperty = function (object, name, value, predicate) {
       
  5764 	if (name in object && (!isFunction(predicate) || !predicate())) {
       
  5765 		return;
       
  5766 	}
       
  5767 	if (supportsDescriptors) {
       
  5768 		origDefineProperty(object, name, {
       
  5769 			configurable: true,
       
  5770 			enumerable: false,
       
  5771 			value: value,
       
  5772 			writable: true
       
  5773 		});
       
  5774 	} else {
       
  5775 		object[name] = value;
       
  5776 	}
       
  5777 };
       
  5778 
       
  5779 var defineProperties = function (object, map) {
       
  5780 	var predicates = arguments.length > 2 ? arguments[2] : {};
       
  5781 	var props = keys(map);
       
  5782 	if (hasSymbols) {
       
  5783 		props = concat.call(props, Object.getOwnPropertySymbols(map));
       
  5784 	}
       
  5785 	for (var i = 0; i < props.length; i += 1) {
       
  5786 		defineProperty(object, props[i], map[props[i]], predicates[props[i]]);
       
  5787 	}
       
  5788 };
       
  5789 
       
  5790 defineProperties.supportsDescriptors = !!supportsDescriptors;
       
  5791 
       
  5792 module.exports = defineProperties;
       
  5793 
       
  5794 
       
  5795 /***/ }),
       
  5796 /* 102 */
       
  5797 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5798 
       
  5799 "use strict";
       
  5800 
       
  5801 // EXPORTS
       
  5802 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ fireKeyboardEvent; });
       
  5803 
       
  5804 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/getDocument.js
       
  5805 var getDocument = __webpack_require__(47);
       
  5806 
       
  5807 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/getDefaultView.js
       
  5808 
       
  5809 
       
  5810 /**
       
  5811  * Returns `element.ownerDocument.defaultView || window`.
       
  5812  */
       
  5813 
       
  5814 function getDefaultView(element) {
       
  5815   return Object(getDocument["a" /* getDocument */])(element).defaultView || window;
       
  5816 }
       
  5817 
       
  5818 
       
  5819 
       
  5820 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/createKeyboardEvent.js
       
  5821 
       
  5822 
       
  5823 
       
  5824 /**
       
  5825  * Creates a `KeyboardEvent` in a way that also works on IE 11.
       
  5826  *
       
  5827  * @example
       
  5828  * import { createKeyboardEvent } from "reakit-utils";
       
  5829  *
       
  5830  * const el = document.getElementById("id");
       
  5831  * el.dispatchEvent(createKeyboardEvent(el, "keydown", { key: "ArrowDown" }));
       
  5832  */
       
  5833 
       
  5834 function createKeyboardEvent(element, type, eventInit) {
       
  5835   if (eventInit === void 0) {
       
  5836     eventInit = {};
       
  5837   }
       
  5838 
       
  5839   if (typeof KeyboardEvent === "function") {
       
  5840     return new KeyboardEvent(type, eventInit);
       
  5841   } // IE 11 doesn't support Event constructors
       
  5842 
       
  5843 
       
  5844   var event = Object(getDocument["a" /* getDocument */])(element).createEvent("KeyboardEvent");
       
  5845   event.initKeyboardEvent(type, eventInit.bubbles, eventInit.cancelable, getDefaultView(element), eventInit.key, eventInit.location, eventInit.ctrlKey, eventInit.altKey, eventInit.shiftKey, eventInit.metaKey);
       
  5846   return event;
       
  5847 }
       
  5848 
       
  5849 
       
  5850 
       
  5851 // CONCATENATED MODULE: ./node_modules/reakit-utils/es/fireKeyboardEvent.js
       
  5852 
       
  5853 
       
  5854 
       
  5855 
       
  5856 /**
       
  5857  * Creates and dispatches `KeyboardEvent` in a way that also works on IE 11.
       
  5858  *
       
  5859  * @example
       
  5860  * import { fireKeyboardEvent } from "reakit-utils";
       
  5861  *
       
  5862  * fireKeyboardEvent(document.getElementById("id"), "keydown", {
       
  5863  *   key: "ArrowDown",
       
  5864  *   shiftKey: true,
       
  5865  * });
       
  5866  */
       
  5867 
       
  5868 function fireKeyboardEvent(element, type, eventInit) {
       
  5869   return element.dispatchEvent(createKeyboardEvent(element, type, eventInit));
       
  5870 }
       
  5871 
       
  5872 
       
  5873 
       
  5874 
       
  5875 /***/ }),
       
  5876 /* 103 */,
       
  5877 /* 104 */
       
  5878 /***/ (function(module, exports) {
       
  5879 
       
  5880 (function() { module.exports = this["wp"]["warning"]; }());
       
  5881 
       
  5882 /***/ }),
       
  5883 /* 105 */,
       
  5884 /* 106 */
       
  5885 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  5886 
       
  5887 "use strict";
       
  5888 /* unused harmony export warning */
       
  5889 
       
  5890 
       
  5891 /**
       
  5892  * Logs `messages` to the console using `console.warn` based on a `condition`.
       
  5893  *
       
  5894  * @example
       
  5895  * import { warning } from "reakit-warning";
       
  5896  *
       
  5897  * warning(true, "a", "b"); // console.warn("a", "\n", "b")
       
  5898  * warning(false, "a", "b"); // does nothing
       
  5899  */
       
  5900 
       
  5901 function warning(condition) {
       
  5902   if (false) { var warns, _len, messages, _key, _console; }
       
  5903 }
       
  5904 
       
  5905 
       
  5906 
       
  5907 
       
  5908 /***/ }),
       
  5909 /* 107 */
  1890 /***/ (function(module, exports, __webpack_require__) {
  5910 /***/ (function(module, exports, __webpack_require__) {
  1891 
  5911 
  1892 "use strict";
  5912 "use strict";
  1893 
  5913 
  1894 
  5914 
  2103   dateIsUnavailable: dateIsUnavailable,
  6123   dateIsUnavailable: dateIsUnavailable,
  2104   dateIsSelected: dateIsSelected
  6124   dateIsSelected: dateIsSelected
  2105 };
  6125 };
  2106 
  6126 
  2107 /***/ }),
  6127 /***/ }),
  2108 /* 48 */
  6128 /* 108 */
  2109 /***/ (function(module, exports) {
       
  2110 
       
  2111 (function() { module.exports = this["wp"]["a11y"]; }());
       
  2112 
       
  2113 /***/ }),
       
  2114 /* 49 */,
       
  2115 /* 50 */,
       
  2116 /* 51 */
       
  2117 /***/ (function(module, exports, __webpack_require__) {
  6129 /***/ (function(module, exports, __webpack_require__) {
  2118 
  6130 
  2119 "use strict";
  6131 "use strict";
  2120 
  6132 
  2121 
  6133 
  2122 Object.defineProperty(exports, "__esModule", {
  6134 Object.defineProperty(exports, "__esModule", {
  2123   value: true
  6135   value: true
  2124 });
  6136 });
  2125 exports['default'] = getPhrasePropTypes;
  6137 exports['default'] = getPhrasePropTypes;
  2126 
  6138 
  2127 var _object = __webpack_require__(46);
  6139 var _object = __webpack_require__(92);
  2128 
  6140 
  2129 var _object2 = _interopRequireDefault(_object);
  6141 var _object2 = _interopRequireDefault(_object);
  2130 
  6142 
  2131 var _propTypes = __webpack_require__(31);
  6143 var _propTypes = __webpack_require__(28);
  2132 
  6144 
  2133 var _propTypes2 = _interopRequireDefault(_propTypes);
  6145 var _propTypes2 = _interopRequireDefault(_propTypes);
  2134 
  6146 
  2135 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  6147 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  2136 
  6148 
  2141     return (0, _object2['default'])({}, phrases, _defineProperty({}, key, _propTypes2['default'].oneOfType([_propTypes2['default'].string, _propTypes2['default'].func, _propTypes2['default'].node])));
  6153     return (0, _object2['default'])({}, phrases, _defineProperty({}, key, _propTypes2['default'].oneOfType([_propTypes2['default'].string, _propTypes2['default'].func, _propTypes2['default'].node])));
  2142   }, {});
  6154   }, {});
  2143 }
  6155 }
  2144 
  6156 
  2145 /***/ }),
  6157 /***/ }),
  2146 /* 52 */
  6158 /* 109 */
  2147 /***/ (function(module, exports) {
       
  2148 
       
  2149 (function() { module.exports = this["ReactDOM"]; }());
       
  2150 
       
  2151 /***/ }),
       
  2152 /* 53 */,
       
  2153 /* 54 */,
       
  2154 /* 55 */,
       
  2155 /* 56 */
       
  2156 /***/ (function(module, exports, __webpack_require__) {
  6159 /***/ (function(module, exports, __webpack_require__) {
       
  6160 
       
  6161 "use strict";
       
  6162 
  2157 
  6163 
  2158 Object.defineProperty(exports, "__esModule", {
  6164 Object.defineProperty(exports, "__esModule", {
  2159   value: true
  6165   value: true
  2160 });
  6166 });
  2161 exports.withStylesPropTypes = exports.css = undefined;
  6167 exports.withStylesPropTypes = exports.css = undefined;
  2164 
  6170 
  2165 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
  6171 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
  2166 
  6172 
  2167 exports.withStyles = withStyles;
  6173 exports.withStyles = withStyles;
  2168 
  6174 
  2169 var _react = __webpack_require__(27);
  6175 var _object = __webpack_require__(92);
       
  6176 
       
  6177 var _object2 = _interopRequireDefault(_object);
       
  6178 
       
  6179 var _react = __webpack_require__(13);
  2170 
  6180 
  2171 var _react2 = _interopRequireDefault(_react);
  6181 var _react2 = _interopRequireDefault(_react);
  2172 
  6182 
  2173 var _propTypes = __webpack_require__(31);
  6183 var _propTypes = __webpack_require__(28);
  2174 
  6184 
  2175 var _propTypes2 = _interopRequireDefault(_propTypes);
  6185 var _propTypes2 = _interopRequireDefault(_propTypes);
  2176 
  6186 
  2177 var _hoistNonReactStatics = __webpack_require__(140);
  6187 var _hoistNonReactStatics = __webpack_require__(370);
  2178 
  6188 
  2179 var _hoistNonReactStatics2 = _interopRequireDefault(_hoistNonReactStatics);
  6189 var _hoistNonReactStatics2 = _interopRequireDefault(_hoistNonReactStatics);
  2180 
  6190 
  2181 var _deepmerge = __webpack_require__(291);
  6191 var _constants = __webpack_require__(373);
  2182 
  6192 
  2183 var _deepmerge2 = _interopRequireDefault(_deepmerge);
  6193 var _brcast = __webpack_require__(374);
  2184 
       
  2185 var _constants = __webpack_require__(292);
       
  2186 
       
  2187 var _brcast = __webpack_require__(293);
       
  2188 
  6194 
  2189 var _brcast2 = _interopRequireDefault(_brcast);
  6195 var _brcast2 = _interopRequireDefault(_brcast);
  2190 
  6196 
  2191 var _ThemedStyleSheet = __webpack_require__(153);
  6197 var _ThemedStyleSheet = __webpack_require__(224);
  2192 
  6198 
  2193 var _ThemedStyleSheet2 = _interopRequireDefault(_ThemedStyleSheet);
  6199 var _ThemedStyleSheet2 = _interopRequireDefault(_ThemedStyleSheet);
  2194 
  6200 
  2195 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  6201 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  2196 
  6202 
  2198 
  6204 
  2199 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
  6205 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
  2200 
  6206 
  2201 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
  6207 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
  2202 
  6208 
  2203 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
  6209 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } /* eslint react/forbid-foreign-prop-types: off */
  2204 
  6210 
  2205 // Add some named exports to assist in upgrading and for convenience
  6211 // Add some named exports to assist in upgrading and for convenience
  2206 var css = exports.css = _ThemedStyleSheet2['default'].resolveLTR;
  6212 var css = exports.css = _ThemedStyleSheet2['default'].resolveLTR;
  2207 var withStylesPropTypes = exports.withStylesPropTypes = {
  6213 var withStylesPropTypes = exports.withStylesPropTypes = {
  2208   styles: _propTypes2['default'].object.isRequired, // eslint-disable-line react/forbid-prop-types
  6214   styles: _propTypes2['default'].object.isRequired, // eslint-disable-line react/forbid-prop-types
  2212 
  6218 
  2213 var EMPTY_STYLES = {};
  6219 var EMPTY_STYLES = {};
  2214 var EMPTY_STYLES_FN = function EMPTY_STYLES_FN() {
  6220 var EMPTY_STYLES_FN = function EMPTY_STYLES_FN() {
  2215   return EMPTY_STYLES;
  6221   return EMPTY_STYLES;
  2216 };
  6222 };
       
  6223 
       
  6224 var START_MARK = 'react-with-styles.createStyles.start';
       
  6225 var END_MARK = 'react-with-styles.createStyles.end';
  2217 
  6226 
  2218 function baseClass(pureComponent) {
  6227 function baseClass(pureComponent) {
  2219   if (pureComponent) {
  6228   if (pureComponent) {
  2220     if (!_react2['default'].PureComponent) {
  6229     if (!_react2['default'].PureComponent) {
  2221       throw new ReferenceError('withStyles() pureComponent option requires React 15.3.0 or later');
  6230       throw new ReferenceError('withStyles() pureComponent option requires React 15.3.0 or later');
  2285 
  6294 
  2286       currentThemeLTR = registeredTheme;
  6295       currentThemeLTR = registeredTheme;
  2287       styleDef = styleDefLTR;
  6296       styleDef = styleDefLTR;
  2288     }
  6297     }
  2289 
  6298 
  2290     if (false) {}
  6299     if (false) { var measureName; }
  2291 
  6300 
  2292     return styleDef;
  6301     return styleDef;
  2293   }
  6302   }
  2294 
  6303 
  2295   function getState(direction, wrappedComponentName) {
  6304   function getState(direction, wrappedComponentName) {
  2381 
  6390 
  2382       WithStyles.WrappedComponent = WrappedComponent;
  6391       WithStyles.WrappedComponent = WrappedComponent;
  2383       WithStyles.displayName = 'withStyles(' + String(wrappedComponentName) + ')';
  6392       WithStyles.displayName = 'withStyles(' + String(wrappedComponentName) + ')';
  2384       WithStyles.contextTypes = contextTypes;
  6393       WithStyles.contextTypes = contextTypes;
  2385       if (WrappedComponent.propTypes) {
  6394       if (WrappedComponent.propTypes) {
  2386         WithStyles.propTypes = (0, _deepmerge2['default'])({}, WrappedComponent.propTypes);
  6395         WithStyles.propTypes = (0, _object2['default'])({}, WrappedComponent.propTypes);
  2387         delete WithStyles.propTypes[stylesPropName];
  6396         delete WithStyles.propTypes[stylesPropName];
  2388         delete WithStyles.propTypes[themePropName];
  6397         delete WithStyles.propTypes[themePropName];
  2389         delete WithStyles.propTypes[cssPropName];
  6398         delete WithStyles.propTypes[cssPropName];
  2390       }
  6399       }
  2391       if (WrappedComponent.defaultProps) {
  6400       if (WrappedComponent.defaultProps) {
  2392         WithStyles.defaultProps = (0, _deepmerge2['default'])({}, WrappedComponent.defaultProps);
  6401         WithStyles.defaultProps = (0, _object2['default'])({}, WrappedComponent.defaultProps);
  2393       }
  6402       }
  2394 
  6403 
  2395       return (0, _hoistNonReactStatics2['default'])(WithStyles, WrappedComponent);
  6404       return (0, _hoistNonReactStatics2['default'])(WithStyles, WrappedComponent);
  2396     }
  6405     }
  2397 
  6406 
  2398     return withStylesHOC;
  6407     return withStylesHOC;
  2399   }();
  6408   }();
  2400 }
  6409 }
  2401 
  6410 
  2402 /***/ }),
  6411 /***/ }),
  2403 /* 57 */,
  6412 /* 110 */,
  2404 /* 58 */,
  6413 /* 111 */
  2405 /* 59 */
  6414 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  6415 
       
  6416 "use strict";
       
  6417 /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
       
  6418 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20);
       
  6419 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(19);
       
  6420 /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12);
       
  6421 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(23);
       
  6422 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(16);
       
  6423 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(22);
       
  6424 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(0);
       
  6425 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__);
       
  6426 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(2);
       
  6427 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_8__);
       
  6428 /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(9);
       
  6429 /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_wordpress_compose__WEBPACK_IMPORTED_MODULE_9__);
       
  6430 
       
  6431 
       
  6432 
       
  6433 
       
  6434 
       
  6435 
       
  6436 
       
  6437 
       
  6438 
       
  6439 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this, result); }; }
       
  6440 
       
  6441 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
  6442 
       
  6443 /**
       
  6444  * External dependencies
       
  6445  */
       
  6446 
       
  6447 /**
       
  6448  * WordPress dependencies
       
  6449  */
       
  6450 
       
  6451 
       
  6452 
       
  6453 /**
       
  6454  * Input types which are classified as button types, for use in considering
       
  6455  * whether element is a (focus-normalized) button.
       
  6456  *
       
  6457  * @type {string[]}
       
  6458  */
       
  6459 
       
  6460 var INPUT_BUTTON_TYPES = ['button', 'submit'];
       
  6461 /**
       
  6462  * Returns true if the given element is a button element subject to focus
       
  6463  * normalization, or false otherwise.
       
  6464  *
       
  6465  * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
       
  6466  *
       
  6467  * @param {Element} element Element to test.
       
  6468  *
       
  6469  * @return {boolean} Whether element is a button.
       
  6470  */
       
  6471 
       
  6472 function isFocusNormalizedButton(element) {
       
  6473   switch (element.nodeName) {
       
  6474     case 'A':
       
  6475     case 'BUTTON':
       
  6476       return true;
       
  6477 
       
  6478     case 'INPUT':
       
  6479       return Object(lodash__WEBPACK_IMPORTED_MODULE_8__["includes"])(INPUT_BUTTON_TYPES, element.type);
       
  6480   }
       
  6481 
       
  6482   return false;
       
  6483 }
       
  6484 
       
  6485 /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_compose__WEBPACK_IMPORTED_MODULE_9__["createHigherOrderComponent"])(function (WrappedComponent) {
       
  6486   return /*#__PURE__*/function (_Component) {
       
  6487     Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_class, _Component);
       
  6488 
       
  6489     var _super = _createSuper(_class);
       
  6490 
       
  6491     function _class() {
       
  6492       var _this;
       
  6493 
       
  6494       Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(this, _class);
       
  6495 
       
  6496       _this = _super.apply(this, arguments);
       
  6497       _this.bindNode = _this.bindNode.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
       
  6498       _this.cancelBlurCheck = _this.cancelBlurCheck.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
       
  6499       _this.queueBlurCheck = _this.queueBlurCheck.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
       
  6500       _this.normalizeButtonFocus = _this.normalizeButtonFocus.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
       
  6501       return _this;
       
  6502     }
       
  6503 
       
  6504     Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_class, [{
       
  6505       key: "componentWillUnmount",
       
  6506       value: function componentWillUnmount() {
       
  6507         this.cancelBlurCheck();
       
  6508       }
       
  6509     }, {
       
  6510       key: "bindNode",
       
  6511       value: function bindNode(node) {
       
  6512         if (node) {
       
  6513           this.node = node;
       
  6514         } else {
       
  6515           delete this.node;
       
  6516           this.cancelBlurCheck();
       
  6517         }
       
  6518       }
       
  6519     }, {
       
  6520       key: "queueBlurCheck",
       
  6521       value: function queueBlurCheck(event) {
       
  6522         var _this2 = this;
       
  6523 
       
  6524         // React does not allow using an event reference asynchronously
       
  6525         // due to recycling behavior, except when explicitly persisted.
       
  6526         event.persist(); // Skip blur check if clicking button. See `normalizeButtonFocus`.
       
  6527 
       
  6528         if (this.preventBlurCheck) {
       
  6529           return;
       
  6530         }
       
  6531 
       
  6532         this.blurCheckTimeout = setTimeout(function () {
       
  6533           // If document is not focused then focus should remain
       
  6534           // inside the wrapped component and therefore we cancel
       
  6535           // this blur event thereby leaving focus in place.
       
  6536           // https://developer.mozilla.org/en-US/docs/Web/API/Document/hasFocus.
       
  6537           if (!document.hasFocus()) {
       
  6538             event.preventDefault();
       
  6539             return;
       
  6540           }
       
  6541 
       
  6542           if ('function' === typeof _this2.node.handleFocusOutside) {
       
  6543             _this2.node.handleFocusOutside(event);
       
  6544           }
       
  6545         }, 0);
       
  6546       }
       
  6547     }, {
       
  6548       key: "cancelBlurCheck",
       
  6549       value: function cancelBlurCheck() {
       
  6550         clearTimeout(this.blurCheckTimeout);
       
  6551       }
       
  6552       /**
       
  6553        * Handles a mousedown or mouseup event to respectively assign and
       
  6554        * unassign a flag for preventing blur check on button elements. Some
       
  6555        * browsers, namely Firefox and Safari, do not emit a focus event on
       
  6556        * button elements when clicked, while others do. The logic here
       
  6557        * intends to normalize this as treating click on buttons as focus.
       
  6558        *
       
  6559        * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
       
  6560        *
       
  6561        * @param {MouseEvent} event Event for mousedown or mouseup.
       
  6562        */
       
  6563 
       
  6564     }, {
       
  6565       key: "normalizeButtonFocus",
       
  6566       value: function normalizeButtonFocus(event) {
       
  6567         var type = event.type,
       
  6568             target = event.target;
       
  6569         var isInteractionEnd = Object(lodash__WEBPACK_IMPORTED_MODULE_8__["includes"])(['mouseup', 'touchend'], type);
       
  6570 
       
  6571         if (isInteractionEnd) {
       
  6572           this.preventBlurCheck = false;
       
  6573         } else if (isFocusNormalizedButton(target)) {
       
  6574           this.preventBlurCheck = true;
       
  6575         }
       
  6576       }
       
  6577     }, {
       
  6578       key: "render",
       
  6579       value: function render() {
       
  6580         // Disable reason: See `normalizeButtonFocus` for browser-specific
       
  6581         // focus event normalization.
       
  6582 
       
  6583         /* eslint-disable jsx-a11y/no-static-element-interactions */
       
  6584         return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])("div", {
       
  6585           onFocus: this.cancelBlurCheck,
       
  6586           onMouseDown: this.normalizeButtonFocus,
       
  6587           onMouseUp: this.normalizeButtonFocus,
       
  6588           onTouchStart: this.normalizeButtonFocus,
       
  6589           onTouchEnd: this.normalizeButtonFocus,
       
  6590           onBlur: this.queueBlurCheck
       
  6591         }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])(WrappedComponent, Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
       
  6592           ref: this.bindNode
       
  6593         }, this.props)));
       
  6594         /* eslint-enable jsx-a11y/no-static-element-interactions */
       
  6595       }
       
  6596     }]);
       
  6597 
       
  6598     return _class;
       
  6599   }(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["Component"]);
       
  6600 }, 'withFocusOutside'));
       
  6601 
       
  6602 
       
  6603 /***/ }),
       
  6604 /* 112 */
       
  6605 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
  6606 
       
  6607 "use strict";
       
  6608 
       
  6609 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
       
  6610 var esm_extends = __webpack_require__(8);
       
  6611 
       
  6612 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
       
  6613 var slicedToArray = __webpack_require__(14);
       
  6614 
       
  6615 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
       
  6616 var objectWithoutProperties = __webpack_require__(15);
       
  6617 
       
  6618 // EXTERNAL MODULE: external {"this":["wp","element"]}
       
  6619 var external_this_wp_element_ = __webpack_require__(0);
       
  6620 
       
  6621 // EXTERNAL MODULE: ./node_modules/classnames/index.js
       
  6622 var classnames = __webpack_require__(11);
       
  6623 var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
       
  6624 
       
  6625 // EXTERNAL MODULE: external {"this":["wp","dom"]}
       
  6626 var external_this_wp_dom_ = __webpack_require__(30);
       
  6627 
       
  6628 // EXTERNAL MODULE: external {"this":["wp","keycodes"]}
       
  6629 var external_this_wp_keycodes_ = __webpack_require__(21);
       
  6630 
       
  6631 // EXTERNAL MODULE: external {"this":["wp","deprecated"]}
       
  6632 var external_this_wp_deprecated_ = __webpack_require__(37);
       
  6633 var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_);
       
  6634 
       
  6635 // EXTERNAL MODULE: external {"this":["wp","compose"]}
       
  6636 var external_this_wp_compose_ = __webpack_require__(9);
       
  6637 
       
  6638 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/close.js
       
  6639 var library_close = __webpack_require__(154);
       
  6640 
       
  6641 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
       
  6642 var defineProperty = __webpack_require__(5);
       
  6643 
       
  6644 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/utils.js
       
  6645 
       
  6646 
       
  6647 
       
  6648 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
  6649 
       
  6650 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
  6651 
       
  6652 /**
       
  6653  * WordPress dependencies
       
  6654  */
       
  6655 
       
  6656 /**
       
  6657  * Module constants
       
  6658  */
       
  6659 
       
  6660 var HEIGHT_OFFSET = 10; // used by the arrow and a bit of empty space
       
  6661 
       
  6662 /**
       
  6663  * Utility used to compute the popover position over the xAxis
       
  6664  *
       
  6665  * @param {Object}  anchorRect      Anchor Rect.
       
  6666  * @param {Object}  contentSize     Content Size.
       
  6667  * @param {string}  xAxis           Desired xAxis.
       
  6668  * @param {string}  corner          Desired corner.
       
  6669  * @param {boolean} sticky          Whether or not to stick the popover to the
       
  6670  *                                  scroll container edge when part of the anchor
       
  6671  *                                  leaves view.
       
  6672  * @param {string}  chosenYAxis     yAxis to be used.
       
  6673  * @param {Element} boundaryElement Boundary element.
       
  6674  *
       
  6675  * @return {Object} Popover xAxis position and constraints.
       
  6676  */
       
  6677 
       
  6678 function computePopoverXAxisPosition(anchorRect, contentSize, xAxis, corner, sticky, chosenYAxis, boundaryElement) {
       
  6679   var width = contentSize.width;
       
  6680   var isRTL = document.documentElement.dir === 'rtl'; // Correct xAxis for RTL support
       
  6681 
       
  6682   if (xAxis === 'left' && isRTL) {
       
  6683     xAxis = 'right';
       
  6684   } else if (xAxis === 'right' && isRTL) {
       
  6685     xAxis = 'left';
       
  6686   }
       
  6687 
       
  6688   if (corner === 'left' && isRTL) {
       
  6689     corner = 'right';
       
  6690   } else if (corner === 'right' && isRTL) {
       
  6691     corner = 'left';
       
  6692   } // x axis alignment choices
       
  6693 
       
  6694 
       
  6695   var anchorMidPoint = Math.round(anchorRect.left + anchorRect.width / 2);
       
  6696   var centerAlignment = {
       
  6697     popoverLeft: anchorMidPoint,
       
  6698     contentWidth: (anchorMidPoint - width / 2 > 0 ? width / 2 : anchorMidPoint) + (anchorMidPoint + width / 2 > window.innerWidth ? window.innerWidth - anchorMidPoint : width / 2)
       
  6699   };
       
  6700   var leftAlignmentX = anchorRect.left;
       
  6701 
       
  6702   if (corner === 'right') {
       
  6703     leftAlignmentX = anchorRect.right;
       
  6704   } else if (chosenYAxis !== 'middle') {
       
  6705     leftAlignmentX = anchorMidPoint;
       
  6706   }
       
  6707 
       
  6708   var rightAlignmentX = anchorRect.right;
       
  6709 
       
  6710   if (corner === 'left') {
       
  6711     rightAlignmentX = anchorRect.left;
       
  6712   } else if (chosenYAxis !== 'middle') {
       
  6713     rightAlignmentX = anchorMidPoint;
       
  6714   }
       
  6715 
       
  6716   var leftAlignment = {
       
  6717     popoverLeft: leftAlignmentX,
       
  6718     contentWidth: leftAlignmentX - width > 0 ? width : leftAlignmentX
       
  6719   };
       
  6720   var rightAlignment = {
       
  6721     popoverLeft: rightAlignmentX,
       
  6722     contentWidth: rightAlignmentX + width > window.innerWidth ? window.innerWidth - rightAlignmentX : width
       
  6723   }; // Choosing the x axis
       
  6724 
       
  6725   var chosenXAxis = xAxis;
       
  6726   var contentWidth = null;
       
  6727 
       
  6728   if (!sticky) {
       
  6729     if (xAxis === 'center' && centerAlignment.contentWidth === width) {
       
  6730       chosenXAxis = 'center';
       
  6731     } else if (xAxis === 'left' && leftAlignment.contentWidth === width) {
       
  6732       chosenXAxis = 'left';
       
  6733     } else if (xAxis === 'right' && rightAlignment.contentWidth === width) {
       
  6734       chosenXAxis = 'right';
       
  6735     } else {
       
  6736       chosenXAxis = leftAlignment.contentWidth > rightAlignment.contentWidth ? 'left' : 'right';
       
  6737       var chosenWidth = chosenXAxis === 'left' ? leftAlignment.contentWidth : rightAlignment.contentWidth;
       
  6738       contentWidth = chosenWidth !== width ? chosenWidth : null;
       
  6739     }
       
  6740   }
       
  6741 
       
  6742   var popoverLeft;
       
  6743 
       
  6744   if (chosenXAxis === 'center') {
       
  6745     popoverLeft = centerAlignment.popoverLeft;
       
  6746   } else if (chosenXAxis === 'left') {
       
  6747     popoverLeft = leftAlignment.popoverLeft;
       
  6748   } else {
       
  6749     popoverLeft = rightAlignment.popoverLeft;
       
  6750   }
       
  6751 
       
  6752   if (boundaryElement) {
       
  6753     var boundaryRect = boundaryElement.getBoundingClientRect();
       
  6754     popoverLeft = Math.min(popoverLeft, boundaryRect.right - width);
       
  6755   }
       
  6756 
       
  6757   return {
       
  6758     xAxis: chosenXAxis,
       
  6759     popoverLeft: popoverLeft,
       
  6760     contentWidth: contentWidth
       
  6761   };
       
  6762 }
       
  6763 /**
       
  6764  * Utility used to compute the popover position over the yAxis
       
  6765  *
       
  6766  * @param {Object}  anchorRect        Anchor Rect.
       
  6767  * @param {Object}  contentSize       Content Size.
       
  6768  * @param {string}  yAxis             Desired yAxis.
       
  6769  * @param {string}  corner            Desired corner.
       
  6770  * @param {boolean} sticky            Whether or not to stick the popover to the
       
  6771  *                                    scroll container edge when part of the
       
  6772  *                                    anchor leaves view.
       
  6773  * @param {Element} anchorRef         The anchor element.
       
  6774  * @param {Element} relativeOffsetTop If applicable, top offset of the relative
       
  6775  *                                    positioned parent container.
       
  6776  *
       
  6777  * @return {Object} Popover xAxis position and constraints.
       
  6778  */
       
  6779 
       
  6780 function computePopoverYAxisPosition(anchorRect, contentSize, yAxis, corner, sticky, anchorRef, relativeOffsetTop) {
       
  6781   var height = contentSize.height;
       
  6782 
       
  6783   if (sticky) {
       
  6784     var scrollContainerEl = Object(external_this_wp_dom_["getScrollContainer"])(anchorRef) || document.body;
       
  6785     var scrollRect = scrollContainerEl.getBoundingClientRect();
       
  6786     var stickyPosition = scrollRect.top + height - relativeOffsetTop;
       
  6787 
       
  6788     if (anchorRect.top <= stickyPosition) {
       
  6789       return {
       
  6790         yAxis: yAxis,
       
  6791         popoverTop: Math.min(anchorRect.bottom, stickyPosition)
       
  6792       };
       
  6793     }
       
  6794   } // y axis alignment choices
       
  6795 
       
  6796 
       
  6797   var anchorMidPoint = anchorRect.top + anchorRect.height / 2;
       
  6798 
       
  6799   if (corner === 'bottom') {
       
  6800     anchorMidPoint = anchorRect.bottom;
       
  6801   } else if (corner === 'top') {
       
  6802     anchorMidPoint = anchorRect.top;
       
  6803   }
       
  6804 
       
  6805   var middleAlignment = {
       
  6806     popoverTop: anchorMidPoint,
       
  6807     contentHeight: (anchorMidPoint - height / 2 > 0 ? height / 2 : anchorMidPoint) + (anchorMidPoint + height / 2 > window.innerHeight ? window.innerHeight - anchorMidPoint : height / 2)
       
  6808   };
       
  6809   var topAlignment = {
       
  6810     popoverTop: anchorRect.top,
       
  6811     contentHeight: anchorRect.top - HEIGHT_OFFSET - height > 0 ? height : anchorRect.top - HEIGHT_OFFSET
       
  6812   };
       
  6813   var bottomAlignment = {
       
  6814     popoverTop: anchorRect.bottom,
       
  6815     contentHeight: anchorRect.bottom + HEIGHT_OFFSET + height > window.innerHeight ? window.innerHeight - HEIGHT_OFFSET - anchorRect.bottom : height
       
  6816   }; // Choosing the y axis
       
  6817 
       
  6818   var chosenYAxis = yAxis;
       
  6819   var contentHeight = null;
       
  6820 
       
  6821   if (!sticky) {
       
  6822     if (yAxis === 'middle' && middleAlignment.contentHeight === height) {
       
  6823       chosenYAxis = 'middle';
       
  6824     } else if (yAxis === 'top' && topAlignment.contentHeight === height) {
       
  6825       chosenYAxis = 'top';
       
  6826     } else if (yAxis === 'bottom' && bottomAlignment.contentHeight === height) {
       
  6827       chosenYAxis = 'bottom';
       
  6828     } else {
       
  6829       chosenYAxis = topAlignment.contentHeight > bottomAlignment.contentHeight ? 'top' : 'bottom';
       
  6830       var chosenHeight = chosenYAxis === 'top' ? topAlignment.contentHeight : bottomAlignment.contentHeight;
       
  6831       contentHeight = chosenHeight !== height ? chosenHeight : null;
       
  6832     }
       
  6833   }
       
  6834 
       
  6835   var popoverTop;
       
  6836 
       
  6837   if (chosenYAxis === 'middle') {
       
  6838     popoverTop = middleAlignment.popoverTop;
       
  6839   } else if (chosenYAxis === 'top') {
       
  6840     popoverTop = topAlignment.popoverTop;
       
  6841   } else {
       
  6842     popoverTop = bottomAlignment.popoverTop;
       
  6843   }
       
  6844 
       
  6845   return {
       
  6846     yAxis: chosenYAxis,
       
  6847     popoverTop: popoverTop,
       
  6848     contentHeight: contentHeight
       
  6849   };
       
  6850 }
       
  6851 /**
       
  6852  * Utility used to compute the popover position and the content max width/height
       
  6853  * for a popover given its anchor rect and its content size.
       
  6854  *
       
  6855  * @param {Object}  anchorRect        Anchor Rect.
       
  6856  * @param {Object}  contentSize       Content Size.
       
  6857  * @param {string}  position          Position.
       
  6858  * @param {boolean} sticky            Whether or not to stick the popover to the
       
  6859  *                                    scroll container edge when part of the
       
  6860  *                                    anchor leaves view.
       
  6861  * @param {Element} anchorRef         The anchor element.
       
  6862  * @param {number}  relativeOffsetTop If applicable, top offset of the relative
       
  6863  *                                    positioned parent container.
       
  6864  * @param {Element} boundaryElement   Boundary element.
       
  6865  *
       
  6866  * @return {Object} Popover position and constraints.
       
  6867  */
       
  6868 
       
  6869 function computePopoverPosition(anchorRect, contentSize) {
       
  6870   var position = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'top';
       
  6871   var sticky = arguments.length > 3 ? arguments[3] : undefined;
       
  6872   var anchorRef = arguments.length > 4 ? arguments[4] : undefined;
       
  6873   var relativeOffsetTop = arguments.length > 5 ? arguments[5] : undefined;
       
  6874   var boundaryElement = arguments.length > 6 ? arguments[6] : undefined;
       
  6875 
       
  6876   var _position$split = position.split(' '),
       
  6877       _position$split2 = Object(slicedToArray["a" /* default */])(_position$split, 3),
       
  6878       yAxis = _position$split2[0],
       
  6879       _position$split2$ = _position$split2[1],
       
  6880       xAxis = _position$split2$ === void 0 ? 'center' : _position$split2$,
       
  6881       corner = _position$split2[2];
       
  6882 
       
  6883   var yAxisPosition = computePopoverYAxisPosition(anchorRect, contentSize, yAxis, corner, sticky, anchorRef, relativeOffsetTop);
       
  6884   var xAxisPosition = computePopoverXAxisPosition(anchorRect, contentSize, xAxis, corner, sticky, yAxisPosition.yAxis, boundaryElement);
       
  6885   return _objectSpread({}, xAxisPosition, {}, yAxisPosition);
       
  6886 }
       
  6887 
       
  6888 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/index.js
       
  6889 var with_focus_return = __webpack_require__(130);
       
  6890 
       
  6891 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-constrained-tabbing/index.js
       
  6892 var with_constrained_tabbing = __webpack_require__(129);
       
  6893 
       
  6894 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
       
  6895 var classCallCheck = __webpack_require__(20);
       
  6896 
       
  6897 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
       
  6898 var createClass = __webpack_require__(19);
       
  6899 
       
  6900 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
       
  6901 var possibleConstructorReturn = __webpack_require__(23);
       
  6902 
       
  6903 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
       
  6904 var getPrototypeOf = __webpack_require__(16);
       
  6905 
       
  6906 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
       
  6907 var inherits = __webpack_require__(22);
       
  6908 
       
  6909 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-outside/index.js
       
  6910 var with_focus_outside = __webpack_require__(111);
       
  6911 
       
  6912 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/detect-outside.js
       
  6913 
       
  6914 
       
  6915 
       
  6916 
       
  6917 
       
  6918 
       
  6919 function _createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
  6920 
       
  6921 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
  6922 
       
  6923 /**
       
  6924  * WordPress dependencies
       
  6925  */
       
  6926 
       
  6927 /**
       
  6928  * Internal dependencies
       
  6929  */
       
  6930 
       
  6931 
       
  6932 
       
  6933 var detect_outside_PopoverDetectOutside = /*#__PURE__*/function (_Component) {
       
  6934   Object(inherits["a" /* default */])(PopoverDetectOutside, _Component);
       
  6935 
       
  6936   var _super = _createSuper(PopoverDetectOutside);
       
  6937 
       
  6938   function PopoverDetectOutside() {
       
  6939     Object(classCallCheck["a" /* default */])(this, PopoverDetectOutside);
       
  6940 
       
  6941     return _super.apply(this, arguments);
       
  6942   }
       
  6943 
       
  6944   Object(createClass["a" /* default */])(PopoverDetectOutside, [{
       
  6945     key: "handleFocusOutside",
       
  6946     value: function handleFocusOutside(event) {
       
  6947       this.props.onFocusOutside(event);
       
  6948     }
       
  6949   }, {
       
  6950     key: "render",
       
  6951     value: function render() {
       
  6952       return this.props.children;
       
  6953     }
       
  6954   }]);
       
  6955 
       
  6956   return PopoverDetectOutside;
       
  6957 }(external_this_wp_element_["Component"]);
       
  6958 
       
  6959 /* harmony default export */ var detect_outside = (Object(with_focus_outside["a" /* default */])(detect_outside_PopoverDetectOutside));
       
  6960 
       
  6961 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/button/index.js
       
  6962 var build_module_button = __webpack_require__(34);
       
  6963 
       
  6964 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/scroll-lock/index.js
       
  6965 var scroll_lock = __webpack_require__(161);
       
  6966 
       
  6967 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/isolated-event-container/index.js
       
  6968 var isolated_event_container = __webpack_require__(131);
       
  6969 
       
  6970 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/use-slot.js
       
  6971 var use_slot = __webpack_require__(159);
       
  6972 
       
  6973 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/index.js + 6 modules
       
  6974 var slot_fill = __webpack_require__(121);
       
  6975 
       
  6976 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/animate/index.js
       
  6977 var build_module_animate = __webpack_require__(160);
       
  6978 
       
  6979 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/index.js
       
  6980 
       
  6981 
       
  6982 
       
  6983 
       
  6984 
       
  6985 /**
       
  6986  * External dependencies
       
  6987  */
       
  6988 
       
  6989 /**
       
  6990  * WordPress dependencies
       
  6991  */
       
  6992 
       
  6993 
       
  6994 
       
  6995 
       
  6996 
       
  6997 
       
  6998 
       
  6999 /**
       
  7000  * Internal dependencies
       
  7001  */
       
  7002 
       
  7003 
       
  7004 
       
  7005 
       
  7006 
       
  7007 
       
  7008 
       
  7009 
       
  7010 
       
  7011 
       
  7012 var FocusManaged = Object(with_constrained_tabbing["a" /* default */])(Object(with_focus_return["a" /* default */])(function (_ref) {
       
  7013   var children = _ref.children;
       
  7014   return children;
       
  7015 }));
       
  7016 /**
       
  7017  * Name of slot in which popover should fill.
       
  7018  *
       
  7019  * @type {string}
       
  7020  */
       
  7021 
       
  7022 var SLOT_NAME = 'Popover';
       
  7023 
       
  7024 function computeAnchorRect(anchorRefFallback, anchorRect, getAnchorRect) {
       
  7025   var anchorRef = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
       
  7026   var shouldAnchorIncludePadding = arguments.length > 4 ? arguments[4] : undefined;
       
  7027 
       
  7028   if (anchorRect) {
       
  7029     return anchorRect;
       
  7030   }
       
  7031 
       
  7032   if (getAnchorRect) {
       
  7033     if (!anchorRefFallback.current) {
       
  7034       return;
       
  7035     }
       
  7036 
       
  7037     return getAnchorRect(anchorRefFallback.current);
       
  7038   }
       
  7039 
       
  7040   if (anchorRef !== false) {
       
  7041     if (!anchorRef || !window.Range || !window.Element || !window.DOMRect) {
       
  7042       return;
       
  7043     }
       
  7044 
       
  7045     if (anchorRef instanceof window.Range) {
       
  7046       return Object(external_this_wp_dom_["getRectangleFromRange"])(anchorRef);
       
  7047     }
       
  7048 
       
  7049     if (anchorRef instanceof window.Element) {
       
  7050       var _rect2 = anchorRef.getBoundingClientRect();
       
  7051 
       
  7052       if (shouldAnchorIncludePadding) {
       
  7053         return _rect2;
       
  7054       }
       
  7055 
       
  7056       return withoutPadding(_rect2, anchorRef);
       
  7057     }
       
  7058 
       
  7059     var top = anchorRef.top,
       
  7060         bottom = anchorRef.bottom;
       
  7061     var topRect = top.getBoundingClientRect();
       
  7062     var bottomRect = bottom.getBoundingClientRect();
       
  7063 
       
  7064     var _rect = new window.DOMRect(topRect.left, topRect.top, topRect.width, bottomRect.bottom - topRect.top);
       
  7065 
       
  7066     if (shouldAnchorIncludePadding) {
       
  7067       return _rect;
       
  7068     }
       
  7069 
       
  7070     return withoutPadding(_rect, anchorRef);
       
  7071   }
       
  7072 
       
  7073   if (!anchorRefFallback.current) {
       
  7074     return;
       
  7075   }
       
  7076 
       
  7077   var parentNode = anchorRefFallback.current.parentNode;
       
  7078   var rect = parentNode.getBoundingClientRect();
       
  7079 
       
  7080   if (shouldAnchorIncludePadding) {
       
  7081     return rect;
       
  7082   }
       
  7083 
       
  7084   return withoutPadding(rect, parentNode);
       
  7085 }
       
  7086 
       
  7087 function withoutPadding(rect, element) {
       
  7088   var _window$getComputedSt = window.getComputedStyle(element),
       
  7089       paddingTop = _window$getComputedSt.paddingTop,
       
  7090       paddingBottom = _window$getComputedSt.paddingBottom,
       
  7091       paddingLeft = _window$getComputedSt.paddingLeft,
       
  7092       paddingRight = _window$getComputedSt.paddingRight;
       
  7093 
       
  7094   var top = paddingTop ? parseInt(paddingTop, 10) : 0;
       
  7095   var bottom = paddingBottom ? parseInt(paddingBottom, 10) : 0;
       
  7096   var left = paddingLeft ? parseInt(paddingLeft, 10) : 0;
       
  7097   var right = paddingRight ? parseInt(paddingRight, 10) : 0;
       
  7098   return {
       
  7099     x: rect.left + left,
       
  7100     y: rect.top + top,
       
  7101     width: rect.width - left - right,
       
  7102     height: rect.height - top - bottom,
       
  7103     left: rect.left + left,
       
  7104     right: rect.right - right,
       
  7105     top: rect.top + top,
       
  7106     bottom: rect.bottom - bottom
       
  7107   };
       
  7108 }
       
  7109 /**
       
  7110  * Hook used to focus the first tabbable element on mount.
       
  7111  *
       
  7112  * @param {boolean|string} focusOnMount Focus on mount mode.
       
  7113  * @param {Object}         contentRef   Reference to the popover content element.
       
  7114  */
       
  7115 
       
  7116 
       
  7117 function useFocusContentOnMount(focusOnMount, contentRef) {
       
  7118   // Focus handling
       
  7119   Object(external_this_wp_element_["useEffect"])(function () {
       
  7120     /*
       
  7121      * Without the setTimeout, the dom node is not being focused. Related:
       
  7122      * https://stackoverflow.com/questions/35522220/react-ref-with-focus-doesnt-work-without-settimeout-my-example
       
  7123      *
       
  7124      * TODO: Treat the cause, not the symptom.
       
  7125      */
       
  7126     var focusTimeout = setTimeout(function () {
       
  7127       if (!focusOnMount || !contentRef.current) {
       
  7128         return;
       
  7129       }
       
  7130 
       
  7131       if (focusOnMount === 'firstElement') {
       
  7132         // Find first tabbable node within content and shift focus, falling
       
  7133         // back to the popover panel itself.
       
  7134         var firstTabbable = external_this_wp_dom_["focus"].tabbable.find(contentRef.current)[0];
       
  7135 
       
  7136         if (firstTabbable) {
       
  7137           firstTabbable.focus();
       
  7138         } else {
       
  7139           contentRef.current.focus();
       
  7140         }
       
  7141 
       
  7142         return;
       
  7143       }
       
  7144 
       
  7145       if (focusOnMount === 'container') {
       
  7146         // Focus the popover panel itself so items in the popover are easily
       
  7147         // accessed via keyboard navigation.
       
  7148         contentRef.current.focus();
       
  7149       }
       
  7150     }, 0);
       
  7151     return function () {
       
  7152       return clearTimeout(focusTimeout);
       
  7153     };
       
  7154   }, []);
       
  7155 }
       
  7156 /**
       
  7157  * Sets or removes an element attribute.
       
  7158  *
       
  7159  * @param {Element} element The element to modify.
       
  7160  * @param {string}  name    The attribute name to set or remove.
       
  7161  * @param {?string} value   The value to set. A falsy value will remove the
       
  7162  *                          attribute.
       
  7163  */
       
  7164 
       
  7165 
       
  7166 function setAttribute(element, name, value) {
       
  7167   if (!value) {
       
  7168     if (element.hasAttribute(name)) {
       
  7169       element.removeAttribute(name);
       
  7170     }
       
  7171   } else if (element.getAttribute(name) !== value) {
       
  7172     element.setAttribute(name, value);
       
  7173   }
       
  7174 }
       
  7175 /**
       
  7176  * Sets or removes an element style property.
       
  7177  *
       
  7178  * @param {Element} element  The element to modify.
       
  7179  * @param {string}  property The property to set or remove.
       
  7180  * @param {?string} value    The value to set. A falsy value will remove the
       
  7181  *                           property.
       
  7182  */
       
  7183 
       
  7184 
       
  7185 function setStyle(element, property) {
       
  7186   var value = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '';
       
  7187 
       
  7188   if (element.style[property] !== value) {
       
  7189     element.style[property] = value;
       
  7190   }
       
  7191 }
       
  7192 /**
       
  7193  * Sets or removes an element class.
       
  7194  *
       
  7195  * @param {Element} element The element to modify.
       
  7196  * @param {string}  name    The class to set or remove.
       
  7197  * @param {boolean} toggle  True to set the class, false to remove.
       
  7198  */
       
  7199 
       
  7200 
       
  7201 function setClass(element, name, toggle) {
       
  7202   if (toggle) {
       
  7203     if (!element.classList.contains(name)) {
       
  7204       element.classList.add(name);
       
  7205     }
       
  7206   } else if (element.classList.contains(name)) {
       
  7207     element.classList.remove(name);
       
  7208   }
       
  7209 }
       
  7210 
       
  7211 var popover_Popover = function Popover(_ref2) {
       
  7212   var headerTitle = _ref2.headerTitle,
       
  7213       onClose = _ref2.onClose,
       
  7214       onKeyDown = _ref2.onKeyDown,
       
  7215       children = _ref2.children,
       
  7216       className = _ref2.className,
       
  7217       _ref2$noArrow = _ref2.noArrow,
       
  7218       noArrow = _ref2$noArrow === void 0 ? true : _ref2$noArrow,
       
  7219       isAlternate = _ref2.isAlternate,
       
  7220       _ref2$position = _ref2.position,
       
  7221       position = _ref2$position === void 0 ? 'bottom right' : _ref2$position,
       
  7222       range = _ref2.range,
       
  7223       _ref2$focusOnMount = _ref2.focusOnMount,
       
  7224       focusOnMount = _ref2$focusOnMount === void 0 ? 'firstElement' : _ref2$focusOnMount,
       
  7225       anchorRef = _ref2.anchorRef,
       
  7226       shouldAnchorIncludePadding = _ref2.shouldAnchorIncludePadding,
       
  7227       anchorRect = _ref2.anchorRect,
       
  7228       getAnchorRect = _ref2.getAnchorRect,
       
  7229       expandOnMobile = _ref2.expandOnMobile,
       
  7230       _ref2$animate = _ref2.animate,
       
  7231       animate = _ref2$animate === void 0 ? true : _ref2$animate,
       
  7232       onClickOutside = _ref2.onClickOutside,
       
  7233       onFocusOutside = _ref2.onFocusOutside,
       
  7234       __unstableSticky = _ref2.__unstableSticky,
       
  7235       _ref2$__unstableSlotN = _ref2.__unstableSlotName,
       
  7236       __unstableSlotName = _ref2$__unstableSlotN === void 0 ? SLOT_NAME : _ref2$__unstableSlotN,
       
  7237       __unstableObserveElement = _ref2.__unstableObserveElement,
       
  7238       __unstableBoundaryParent = _ref2.__unstableBoundaryParent,
       
  7239       contentProps = Object(objectWithoutProperties["a" /* default */])(_ref2, ["headerTitle", "onClose", "onKeyDown", "children", "className", "noArrow", "isAlternate", "position", "range", "focusOnMount", "anchorRef", "shouldAnchorIncludePadding", "anchorRect", "getAnchorRect", "expandOnMobile", "animate", "onClickOutside", "onFocusOutside", "__unstableSticky", "__unstableSlotName", "__unstableObserveElement", "__unstableBoundaryParent"]);
       
  7240 
       
  7241   var anchorRefFallback = Object(external_this_wp_element_["useRef"])(null);
       
  7242   var contentRef = Object(external_this_wp_element_["useRef"])(null);
       
  7243   var containerRef = Object(external_this_wp_element_["useRef"])();
       
  7244   var isMobileViewport = Object(external_this_wp_compose_["useViewportMatch"])('medium', '<');
       
  7245 
       
  7246   var _useState = Object(external_this_wp_element_["useState"])(),
       
  7247       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
  7248       animateOrigin = _useState2[0],
       
  7249       setAnimateOrigin = _useState2[1];
       
  7250 
       
  7251   var slot = Object(use_slot["a" /* default */])(__unstableSlotName);
       
  7252   var isExpanded = expandOnMobile && isMobileViewport;
       
  7253 
       
  7254   var _useResizeObserver = Object(external_this_wp_compose_["useResizeObserver"])(),
       
  7255       _useResizeObserver2 = Object(slicedToArray["a" /* default */])(_useResizeObserver, 2),
       
  7256       containerResizeListener = _useResizeObserver2[0],
       
  7257       contentSize = _useResizeObserver2[1];
       
  7258 
       
  7259   noArrow = isExpanded || noArrow;
       
  7260   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
  7261     if (isExpanded) {
       
  7262       setClass(containerRef.current, 'is-without-arrow', noArrow);
       
  7263       setClass(containerRef.current, 'is-alternate', isAlternate);
       
  7264       setAttribute(containerRef.current, 'data-x-axis');
       
  7265       setAttribute(containerRef.current, 'data-y-axis');
       
  7266       setStyle(containerRef.current, 'top');
       
  7267       setStyle(containerRef.current, 'left');
       
  7268       setStyle(contentRef.current, 'maxHeight');
       
  7269       setStyle(contentRef.current, 'maxWidth');
       
  7270       return;
       
  7271     }
       
  7272 
       
  7273     var refresh = function refresh() {
       
  7274       if (!containerRef.current || !contentRef.current) {
       
  7275         return;
       
  7276       }
       
  7277 
       
  7278       var anchor = computeAnchorRect(anchorRefFallback, anchorRect, getAnchorRect, anchorRef, shouldAnchorIncludePadding);
       
  7279 
       
  7280       if (!anchor) {
       
  7281         return;
       
  7282       }
       
  7283 
       
  7284       var _containerRef$current = containerRef.current,
       
  7285           offsetParent = _containerRef$current.offsetParent,
       
  7286           ownerDocument = _containerRef$current.ownerDocument;
       
  7287       var relativeOffsetTop = 0; // If there is a positioned ancestor element that is not the body,
       
  7288       // subtract the position from the anchor rect. If the position of
       
  7289       // the popover is fixed, the offset parent is null or the body
       
  7290       // element, in which case the position is relative to the viewport.
       
  7291       // See https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/offsetParent
       
  7292 
       
  7293       if (offsetParent && offsetParent !== ownerDocument.body) {
       
  7294         var offsetParentRect = offsetParent.getBoundingClientRect();
       
  7295         relativeOffsetTop = offsetParentRect.top;
       
  7296         anchor = new window.DOMRect(anchor.left - offsetParentRect.left, anchor.top - offsetParentRect.top, anchor.width, anchor.height);
       
  7297       }
       
  7298 
       
  7299       var boundaryElement;
       
  7300 
       
  7301       if (__unstableBoundaryParent) {
       
  7302         var _containerRef$current2;
       
  7303 
       
  7304         boundaryElement = (_containerRef$current2 = containerRef.current.closest('.popover-slot')) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.parentNode;
       
  7305       }
       
  7306 
       
  7307       var usedContentSize = !contentSize.height ? contentRef.current.getBoundingClientRect() : contentSize;
       
  7308 
       
  7309       var _computePopoverPositi = computePopoverPosition(anchor, usedContentSize, position, __unstableSticky, containerRef.current, relativeOffsetTop, boundaryElement),
       
  7310           popoverTop = _computePopoverPositi.popoverTop,
       
  7311           popoverLeft = _computePopoverPositi.popoverLeft,
       
  7312           xAxis = _computePopoverPositi.xAxis,
       
  7313           yAxis = _computePopoverPositi.yAxis,
       
  7314           contentHeight = _computePopoverPositi.contentHeight,
       
  7315           contentWidth = _computePopoverPositi.contentWidth;
       
  7316 
       
  7317       if (typeof popoverTop === 'number' && typeof popoverLeft === 'number') {
       
  7318         setStyle(containerRef.current, 'top', popoverTop + 'px');
       
  7319         setStyle(containerRef.current, 'left', popoverLeft + 'px');
       
  7320       }
       
  7321 
       
  7322       setClass(containerRef.current, 'is-without-arrow', noArrow || xAxis === 'center' && yAxis === 'middle');
       
  7323       setClass(containerRef.current, 'is-alternate', isAlternate);
       
  7324       setAttribute(containerRef.current, 'data-x-axis', xAxis);
       
  7325       setAttribute(containerRef.current, 'data-y-axis', yAxis);
       
  7326       setStyle(contentRef.current, 'maxHeight', typeof contentHeight === 'number' ? contentHeight + 'px' : '');
       
  7327       setStyle(contentRef.current, 'maxWidth', typeof contentWidth === 'number' ? contentWidth + 'px' : ''); // Compute the animation position
       
  7328 
       
  7329       var yAxisMapping = {
       
  7330         top: 'bottom',
       
  7331         bottom: 'top'
       
  7332       };
       
  7333       var xAxisMapping = {
       
  7334         left: 'right',
       
  7335         right: 'left'
       
  7336       };
       
  7337       var animateYAxis = yAxisMapping[yAxis] || 'middle';
       
  7338       var animateXAxis = xAxisMapping[xAxis] || 'center';
       
  7339       setAnimateOrigin(animateXAxis + ' ' + animateYAxis);
       
  7340     };
       
  7341 
       
  7342     refresh();
       
  7343     /*
       
  7344      * There are sometimes we need to reposition or resize the popover that
       
  7345      * are not handled by the resize/scroll window events (i.e. CSS changes
       
  7346      * in the layout that changes the position of the anchor).
       
  7347      *
       
  7348      * For these situations, we refresh the popover every 0.5s
       
  7349      */
       
  7350 
       
  7351     var intervalHandle = window.setInterval(refresh, 500);
       
  7352     var rafId;
       
  7353 
       
  7354     var refreshOnAnimationFrame = function refreshOnAnimationFrame() {
       
  7355       window.cancelAnimationFrame(rafId);
       
  7356       rafId = window.requestAnimationFrame(refresh);
       
  7357     }; // Sometimes a click trigger a layout change that affects the popover
       
  7358     // position. This is an opportunity to immediately refresh rather than
       
  7359     // at the interval.
       
  7360 
       
  7361 
       
  7362     window.addEventListener('click', refreshOnAnimationFrame);
       
  7363     window.addEventListener('resize', refresh);
       
  7364     window.addEventListener('scroll', refresh, true);
       
  7365     var observer;
       
  7366 
       
  7367     if (__unstableObserveElement) {
       
  7368       observer = new window.MutationObserver(refresh);
       
  7369       observer.observe(__unstableObserveElement, {
       
  7370         attributes: true
       
  7371       });
       
  7372     }
       
  7373 
       
  7374     return function () {
       
  7375       window.clearInterval(intervalHandle);
       
  7376       window.removeEventListener('resize', refresh);
       
  7377       window.removeEventListener('scroll', refresh, true);
       
  7378       window.removeEventListener('click', refreshOnAnimationFrame);
       
  7379       window.cancelAnimationFrame(rafId);
       
  7380 
       
  7381       if (observer) {
       
  7382         observer.disconnect();
       
  7383       }
       
  7384     };
       
  7385   }, [isExpanded, anchorRect, getAnchorRect, anchorRef, shouldAnchorIncludePadding, position, contentSize, __unstableSticky, __unstableObserveElement, __unstableBoundaryParent]);
       
  7386   useFocusContentOnMount(focusOnMount, contentRef); // Event handlers
       
  7387 
       
  7388   var maybeClose = function maybeClose(event) {
       
  7389     // Close on escape
       
  7390     if (event.keyCode === external_this_wp_keycodes_["ESCAPE"] && onClose) {
       
  7391       event.stopPropagation();
       
  7392       onClose();
       
  7393     } // Preserve original content prop behavior
       
  7394 
       
  7395 
       
  7396     if (onKeyDown) {
       
  7397       onKeyDown(event);
       
  7398     }
       
  7399   };
       
  7400   /**
       
  7401    * Shims an onFocusOutside callback to be compatible with a deprecated
       
  7402    * onClickOutside prop function, if provided.
       
  7403    *
       
  7404    * @param {FocusEvent} event Focus event from onFocusOutside.
       
  7405    */
       
  7406 
       
  7407 
       
  7408   function handleOnFocusOutside(event) {
       
  7409     // Defer to given `onFocusOutside` if specified. Call `onClose` only if
       
  7410     // both `onFocusOutside` and `onClickOutside` are unspecified. Doing so
       
  7411     // assures backwards-compatibility for prior `onClickOutside` default.
       
  7412     if (onFocusOutside) {
       
  7413       onFocusOutside(event);
       
  7414       return;
       
  7415     } else if (!onClickOutside) {
       
  7416       if (onClose) {
       
  7417         onClose();
       
  7418       }
       
  7419 
       
  7420       return;
       
  7421     } // Simulate MouseEvent using FocusEvent#relatedTarget as emulated click
       
  7422     // target. MouseEvent constructor is unsupported in Internet Explorer.
       
  7423 
       
  7424 
       
  7425     var clickEvent;
       
  7426 
       
  7427     try {
       
  7428       clickEvent = new window.MouseEvent('click');
       
  7429     } catch (error) {
       
  7430       clickEvent = document.createEvent('MouseEvent');
       
  7431       clickEvent.initMouseEvent('click', true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);
       
  7432     }
       
  7433 
       
  7434     Object.defineProperty(clickEvent, 'target', {
       
  7435       get: function get() {
       
  7436         return event.relatedTarget;
       
  7437       }
       
  7438     });
       
  7439     external_this_wp_deprecated_default()('Popover onClickOutside prop', {
       
  7440       alternative: 'onFocusOutside'
       
  7441     });
       
  7442     onClickOutside(clickEvent);
       
  7443   } // Disable reason: We care to capture the _bubbled_ events from inputs
       
  7444   // within popover as inferring close intent.
       
  7445 
       
  7446 
       
  7447   var content = Object(external_this_wp_element_["createElement"])(detect_outside, {
       
  7448     onFocusOutside: handleOnFocusOutside
       
  7449   }, Object(external_this_wp_element_["createElement"])(build_module_animate["a" /* default */], {
       
  7450     type: animate && animateOrigin ? 'appear' : null,
       
  7451     options: {
       
  7452       origin: animateOrigin
       
  7453     }
       
  7454   }, function (_ref3) {
       
  7455     var animateClassName = _ref3.className;
       
  7456     return Object(external_this_wp_element_["createElement"])(isolated_event_container["a" /* default */], Object(esm_extends["a" /* default */])({
       
  7457       className: classnames_default()('components-popover', className, animateClassName, {
       
  7458         'is-expanded': isExpanded,
       
  7459         'is-without-arrow': noArrow,
       
  7460         'is-alternate': isAlternate
       
  7461       })
       
  7462     }, contentProps, {
       
  7463       onKeyDown: maybeClose,
       
  7464       ref: containerRef
       
  7465     }), isExpanded && Object(external_this_wp_element_["createElement"])(scroll_lock["a" /* default */], null), isExpanded && Object(external_this_wp_element_["createElement"])("div", {
       
  7466       className: "components-popover__header"
       
  7467     }, Object(external_this_wp_element_["createElement"])("span", {
       
  7468       className: "components-popover__header-title"
       
  7469     }, headerTitle), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
  7470       className: "components-popover__close",
       
  7471       icon: library_close["a" /* default */],
       
  7472       onClick: onClose
       
  7473     })), Object(external_this_wp_element_["createElement"])("div", {
       
  7474       ref: contentRef,
       
  7475       className: "components-popover__content",
       
  7476       tabIndex: "-1"
       
  7477     }, Object(external_this_wp_element_["createElement"])("div", {
       
  7478       style: {
       
  7479         position: 'relative'
       
  7480       }
       
  7481     }, containerResizeListener, children)));
       
  7482   })); // Apply focus to element as long as focusOnMount is truthy; false is
       
  7483   // the only "disabled" value.
       
  7484 
       
  7485   if (focusOnMount) {
       
  7486     content = Object(external_this_wp_element_["createElement"])(FocusManaged, null, content);
       
  7487   }
       
  7488 
       
  7489   if (slot.ref) {
       
  7490     content = Object(external_this_wp_element_["createElement"])(slot_fill["a" /* Fill */], {
       
  7491       name: __unstableSlotName
       
  7492     }, content);
       
  7493   }
       
  7494 
       
  7495   if (anchorRef || anchorRect) {
       
  7496     return content;
       
  7497   }
       
  7498 
       
  7499   return Object(external_this_wp_element_["createElement"])("span", {
       
  7500     ref: anchorRefFallback
       
  7501   }, content);
       
  7502 };
       
  7503 
       
  7504 var PopoverContainer = popover_Popover;
       
  7505 
       
  7506 PopoverContainer.Slot = function (_ref4) {
       
  7507   var _ref4$name = _ref4.name,
       
  7508       name = _ref4$name === void 0 ? SLOT_NAME : _ref4$name;
       
  7509   return Object(external_this_wp_element_["createElement"])(slot_fill["b" /* Slot */], {
       
  7510     bubblesVirtually: true,
       
  7511     name: name,
       
  7512     className: "popover-slot"
       
  7513   });
       
  7514 };
       
  7515 
       
  7516 /* harmony default export */ var popover = __webpack_exports__["a"] = (PopoverContainer);
       
  7517 
       
  7518 
       
  7519 /***/ }),
       
  7520 /* 113 */
       
  7521 /***/ (function(module, exports, __webpack_require__) {
       
  7522 
       
  7523 "use strict";
       
  7524 
       
  7525 
       
  7526 Object.defineProperty(exports, '__esModule', { value: true });
       
  7527 
       
  7528 function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
       
  7529 
       
  7530 var _extends = _interopDefault(__webpack_require__(170));
       
  7531 var _objectWithoutPropertiesLoose = _interopDefault(__webpack_require__(171));
       
  7532 var React = __webpack_require__(13);
       
  7533 var React__default = _interopDefault(React);
       
  7534 var _inheritsLoose = _interopDefault(__webpack_require__(145));
       
  7535 var _assertThisInitialized = _interopDefault(__webpack_require__(172));
       
  7536 
       
  7537 var is = {
       
  7538   arr: Array.isArray,
       
  7539   obj: function obj(a) {
       
  7540     return Object.prototype.toString.call(a) === '[object Object]';
       
  7541   },
       
  7542   fun: function fun(a) {
       
  7543     return typeof a === 'function';
       
  7544   },
       
  7545   str: function str(a) {
       
  7546     return typeof a === 'string';
       
  7547   },
       
  7548   num: function num(a) {
       
  7549     return typeof a === 'number';
       
  7550   },
       
  7551   und: function und(a) {
       
  7552     return a === void 0;
       
  7553   },
       
  7554   nul: function nul(a) {
       
  7555     return a === null;
       
  7556   },
       
  7557   set: function set(a) {
       
  7558     return a instanceof Set;
       
  7559   },
       
  7560   map: function map(a) {
       
  7561     return a instanceof Map;
       
  7562   },
       
  7563   equ: function equ(a, b) {
       
  7564     if (typeof a !== typeof b) return false;
       
  7565     if (is.str(a) || is.num(a)) return a === b;
       
  7566     if (is.obj(a) && is.obj(b) && Object.keys(a).length + Object.keys(b).length === 0) return true;
       
  7567     var i;
       
  7568 
       
  7569     for (i in a) {
       
  7570       if (!(i in b)) return false;
       
  7571     }
       
  7572 
       
  7573     for (i in b) {
       
  7574       if (a[i] !== b[i]) return false;
       
  7575     }
       
  7576 
       
  7577     return is.und(i) ? a === b : true;
       
  7578   }
       
  7579 };
       
  7580 function merge(target, lowercase) {
       
  7581   if (lowercase === void 0) {
       
  7582     lowercase = true;
       
  7583   }
       
  7584 
       
  7585   return function (object) {
       
  7586     return (is.arr(object) ? object : Object.keys(object)).reduce(function (acc, element) {
       
  7587       var key = lowercase ? element[0].toLowerCase() + element.substring(1) : element;
       
  7588       acc[key] = target(key);
       
  7589       return acc;
       
  7590     }, target);
       
  7591   };
       
  7592 }
       
  7593 function useForceUpdate() {
       
  7594   var _useState = React.useState(false),
       
  7595       f = _useState[1];
       
  7596 
       
  7597   var forceUpdate = React.useCallback(function () {
       
  7598     return f(function (v) {
       
  7599       return !v;
       
  7600     });
       
  7601   }, []);
       
  7602   return forceUpdate;
       
  7603 }
       
  7604 function withDefault(value, defaultValue) {
       
  7605   return is.und(value) || is.nul(value) ? defaultValue : value;
       
  7606 }
       
  7607 function toArray(a) {
       
  7608   return !is.und(a) ? is.arr(a) ? a : [a] : [];
       
  7609 }
       
  7610 function callProp(obj) {
       
  7611   for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
       
  7612     args[_key - 1] = arguments[_key];
       
  7613   }
       
  7614 
       
  7615   return is.fun(obj) ? obj.apply(void 0, args) : obj;
       
  7616 }
       
  7617 
       
  7618 function getForwardProps(props) {
       
  7619   var to = props.to,
       
  7620       from = props.from,
       
  7621       config = props.config,
       
  7622       onStart = props.onStart,
       
  7623       onRest = props.onRest,
       
  7624       onFrame = props.onFrame,
       
  7625       children = props.children,
       
  7626       reset = props.reset,
       
  7627       reverse = props.reverse,
       
  7628       force = props.force,
       
  7629       immediate = props.immediate,
       
  7630       delay = props.delay,
       
  7631       attach = props.attach,
       
  7632       destroyed = props.destroyed,
       
  7633       interpolateTo = props.interpolateTo,
       
  7634       ref = props.ref,
       
  7635       lazy = props.lazy,
       
  7636       forward = _objectWithoutPropertiesLoose(props, ["to", "from", "config", "onStart", "onRest", "onFrame", "children", "reset", "reverse", "force", "immediate", "delay", "attach", "destroyed", "interpolateTo", "ref", "lazy"]);
       
  7637 
       
  7638   return forward;
       
  7639 }
       
  7640 
       
  7641 function interpolateTo(props) {
       
  7642   var forward = getForwardProps(props);
       
  7643   if (is.und(forward)) return _extends({
       
  7644     to: forward
       
  7645   }, props);
       
  7646   var rest = Object.keys(props).reduce(function (a, k) {
       
  7647     var _extends2;
       
  7648 
       
  7649     return !is.und(forward[k]) ? a : _extends({}, a, (_extends2 = {}, _extends2[k] = props[k], _extends2));
       
  7650   }, {});
       
  7651   return _extends({
       
  7652     to: forward
       
  7653   }, rest);
       
  7654 }
       
  7655 function handleRef(ref, forward) {
       
  7656   if (forward) {
       
  7657     // If it's a function, assume it's a ref callback
       
  7658     if (is.fun(forward)) forward(ref);else if (is.obj(forward)) {
       
  7659       forward.current = ref;
       
  7660     }
       
  7661   }
       
  7662 
       
  7663   return ref;
       
  7664 }
       
  7665 
       
  7666 var Animated =
       
  7667 /*#__PURE__*/
       
  7668 function () {
       
  7669   function Animated() {
       
  7670     this.payload = void 0;
       
  7671     this.children = [];
       
  7672   }
       
  7673 
       
  7674   var _proto = Animated.prototype;
       
  7675 
       
  7676   _proto.getAnimatedValue = function getAnimatedValue() {
       
  7677     return this.getValue();
       
  7678   };
       
  7679 
       
  7680   _proto.getPayload = function getPayload() {
       
  7681     return this.payload || this;
       
  7682   };
       
  7683 
       
  7684   _proto.attach = function attach() {};
       
  7685 
       
  7686   _proto.detach = function detach() {};
       
  7687 
       
  7688   _proto.getChildren = function getChildren() {
       
  7689     return this.children;
       
  7690   };
       
  7691 
       
  7692   _proto.addChild = function addChild(child) {
       
  7693     if (this.children.length === 0) this.attach();
       
  7694     this.children.push(child);
       
  7695   };
       
  7696 
       
  7697   _proto.removeChild = function removeChild(child) {
       
  7698     var index = this.children.indexOf(child);
       
  7699     this.children.splice(index, 1);
       
  7700     if (this.children.length === 0) this.detach();
       
  7701   };
       
  7702 
       
  7703   return Animated;
       
  7704 }();
       
  7705 var AnimatedArray =
       
  7706 /*#__PURE__*/
       
  7707 function (_Animated) {
       
  7708   _inheritsLoose(AnimatedArray, _Animated);
       
  7709 
       
  7710   function AnimatedArray() {
       
  7711     var _this;
       
  7712 
       
  7713     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
       
  7714       args[_key] = arguments[_key];
       
  7715     }
       
  7716 
       
  7717     _this = _Animated.call.apply(_Animated, [this].concat(args)) || this;
       
  7718     _this.payload = [];
       
  7719 
       
  7720     _this.attach = function () {
       
  7721       return _this.payload.forEach(function (p) {
       
  7722         return p instanceof Animated && p.addChild(_assertThisInitialized(_this));
       
  7723       });
       
  7724     };
       
  7725 
       
  7726     _this.detach = function () {
       
  7727       return _this.payload.forEach(function (p) {
       
  7728         return p instanceof Animated && p.removeChild(_assertThisInitialized(_this));
       
  7729       });
       
  7730     };
       
  7731 
       
  7732     return _this;
       
  7733   }
       
  7734 
       
  7735   return AnimatedArray;
       
  7736 }(Animated);
       
  7737 var AnimatedObject =
       
  7738 /*#__PURE__*/
       
  7739 function (_Animated2) {
       
  7740   _inheritsLoose(AnimatedObject, _Animated2);
       
  7741 
       
  7742   function AnimatedObject() {
       
  7743     var _this2;
       
  7744 
       
  7745     for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
       
  7746       args[_key3] = arguments[_key3];
       
  7747     }
       
  7748 
       
  7749     _this2 = _Animated2.call.apply(_Animated2, [this].concat(args)) || this;
       
  7750     _this2.payload = {};
       
  7751 
       
  7752     _this2.attach = function () {
       
  7753       return Object.values(_this2.payload).forEach(function (s) {
       
  7754         return s instanceof Animated && s.addChild(_assertThisInitialized(_this2));
       
  7755       });
       
  7756     };
       
  7757 
       
  7758     _this2.detach = function () {
       
  7759       return Object.values(_this2.payload).forEach(function (s) {
       
  7760         return s instanceof Animated && s.removeChild(_assertThisInitialized(_this2));
       
  7761       });
       
  7762     };
       
  7763 
       
  7764     return _this2;
       
  7765   }
       
  7766 
       
  7767   var _proto2 = AnimatedObject.prototype;
       
  7768 
       
  7769   _proto2.getValue = function getValue(animated) {
       
  7770     if (animated === void 0) {
       
  7771       animated = false;
       
  7772     }
       
  7773 
       
  7774     var payload = {};
       
  7775 
       
  7776     for (var _key4 in this.payload) {
       
  7777       var value = this.payload[_key4];
       
  7778       if (animated && !(value instanceof Animated)) continue;
       
  7779       payload[_key4] = value instanceof Animated ? value[animated ? 'getAnimatedValue' : 'getValue']() : value;
       
  7780     }
       
  7781 
       
  7782     return payload;
       
  7783   };
       
  7784 
       
  7785   _proto2.getAnimatedValue = function getAnimatedValue() {
       
  7786     return this.getValue(true);
       
  7787   };
       
  7788 
       
  7789   return AnimatedObject;
       
  7790 }(Animated);
       
  7791 
       
  7792 var applyAnimatedValues;
       
  7793 function injectApplyAnimatedValues(fn, transform) {
       
  7794   applyAnimatedValues = {
       
  7795     fn: fn,
       
  7796     transform: transform
       
  7797   };
       
  7798 }
       
  7799 var colorNames;
       
  7800 function injectColorNames(names) {
       
  7801   colorNames = names;
       
  7802 }
       
  7803 var requestFrame = function requestFrame(cb) {
       
  7804   return typeof window !== 'undefined' ? window.requestAnimationFrame(cb) : -1;
       
  7805 };
       
  7806 var cancelFrame = function cancelFrame(id) {
       
  7807   typeof window !== 'undefined' && window.cancelAnimationFrame(id);
       
  7808 };
       
  7809 function injectFrame(raf, caf) {
       
  7810   requestFrame = raf;
       
  7811   cancelFrame = caf;
       
  7812 }
       
  7813 var interpolation;
       
  7814 function injectStringInterpolator(fn) {
       
  7815   interpolation = fn;
       
  7816 }
       
  7817 var now = function now() {
       
  7818   return Date.now();
       
  7819 };
       
  7820 function injectNow(nowFn) {
       
  7821   now = nowFn;
       
  7822 }
       
  7823 var defaultElement;
       
  7824 function injectDefaultElement(el) {
       
  7825   defaultElement = el;
       
  7826 }
       
  7827 var animatedApi = function animatedApi(node) {
       
  7828   return node.current;
       
  7829 };
       
  7830 function injectAnimatedApi(fn) {
       
  7831   animatedApi = fn;
       
  7832 }
       
  7833 var createAnimatedStyle;
       
  7834 function injectCreateAnimatedStyle(factory) {
       
  7835   createAnimatedStyle = factory;
       
  7836 }
       
  7837 var manualFrameloop;
       
  7838 function injectManualFrameloop(callback) {
       
  7839   manualFrameloop = callback;
       
  7840 }
       
  7841 
       
  7842 var Globals = /*#__PURE__*/Object.freeze({
       
  7843   get applyAnimatedValues () { return applyAnimatedValues; },
       
  7844   injectApplyAnimatedValues: injectApplyAnimatedValues,
       
  7845   get colorNames () { return colorNames; },
       
  7846   injectColorNames: injectColorNames,
       
  7847   get requestFrame () { return requestFrame; },
       
  7848   get cancelFrame () { return cancelFrame; },
       
  7849   injectFrame: injectFrame,
       
  7850   get interpolation () { return interpolation; },
       
  7851   injectStringInterpolator: injectStringInterpolator,
       
  7852   get now () { return now; },
       
  7853   injectNow: injectNow,
       
  7854   get defaultElement () { return defaultElement; },
       
  7855   injectDefaultElement: injectDefaultElement,
       
  7856   get animatedApi () { return animatedApi; },
       
  7857   injectAnimatedApi: injectAnimatedApi,
       
  7858   get createAnimatedStyle () { return createAnimatedStyle; },
       
  7859   injectCreateAnimatedStyle: injectCreateAnimatedStyle,
       
  7860   get manualFrameloop () { return manualFrameloop; },
       
  7861   injectManualFrameloop: injectManualFrameloop
       
  7862 });
       
  7863 
       
  7864 /**
       
  7865  * Wraps the `style` property with `AnimatedStyle`.
       
  7866  */
       
  7867 
       
  7868 var AnimatedProps =
       
  7869 /*#__PURE__*/
       
  7870 function (_AnimatedObject) {
       
  7871   _inheritsLoose(AnimatedProps, _AnimatedObject);
       
  7872 
       
  7873   function AnimatedProps(props, callback) {
       
  7874     var _this;
       
  7875 
       
  7876     _this = _AnimatedObject.call(this) || this;
       
  7877     _this.update = void 0;
       
  7878     _this.payload = !props.style ? props : _extends({}, props, {
       
  7879       style: createAnimatedStyle(props.style)
       
  7880     });
       
  7881     _this.update = callback;
       
  7882 
       
  7883     _this.attach();
       
  7884 
       
  7885     return _this;
       
  7886   }
       
  7887 
       
  7888   return AnimatedProps;
       
  7889 }(AnimatedObject);
       
  7890 
       
  7891 var isFunctionComponent = function isFunctionComponent(val) {
       
  7892   return is.fun(val) && !(val.prototype instanceof React__default.Component);
       
  7893 };
       
  7894 
       
  7895 var createAnimatedComponent = function createAnimatedComponent(Component) {
       
  7896   var AnimatedComponent = React.forwardRef(function (props, ref) {
       
  7897     var forceUpdate = useForceUpdate();
       
  7898     var mounted = React.useRef(true);
       
  7899     var propsAnimated = React.useRef(null);
       
  7900     var node = React.useRef(null);
       
  7901     var attachProps = React.useCallback(function (props) {
       
  7902       var oldPropsAnimated = propsAnimated.current;
       
  7903 
       
  7904       var callback = function callback() {
       
  7905         var didUpdate = false;
       
  7906 
       
  7907         if (node.current) {
       
  7908           didUpdate = applyAnimatedValues.fn(node.current, propsAnimated.current.getAnimatedValue());
       
  7909         }
       
  7910 
       
  7911         if (!node.current || didUpdate === false) {
       
  7912           // If no referenced node has been found, or the update target didn't have a
       
  7913           // native-responder, then forceUpdate the animation ...
       
  7914           forceUpdate();
       
  7915         }
       
  7916       };
       
  7917 
       
  7918       propsAnimated.current = new AnimatedProps(props, callback);
       
  7919       oldPropsAnimated && oldPropsAnimated.detach();
       
  7920     }, []);
       
  7921     React.useEffect(function () {
       
  7922       return function () {
       
  7923         mounted.current = false;
       
  7924         propsAnimated.current && propsAnimated.current.detach();
       
  7925       };
       
  7926     }, []);
       
  7927     React.useImperativeHandle(ref, function () {
       
  7928       return animatedApi(node, mounted, forceUpdate);
       
  7929     });
       
  7930     attachProps(props);
       
  7931 
       
  7932     var _getValue = propsAnimated.current.getValue(),
       
  7933         scrollTop = _getValue.scrollTop,
       
  7934         scrollLeft = _getValue.scrollLeft,
       
  7935         animatedProps = _objectWithoutPropertiesLoose(_getValue, ["scrollTop", "scrollLeft"]); // Functions cannot have refs, see:
       
  7936     // See: https://github.com/react-spring/react-spring/issues/569
       
  7937 
       
  7938 
       
  7939     var refFn = isFunctionComponent(Component) ? undefined : function (childRef) {
       
  7940       return node.current = handleRef(childRef, ref);
       
  7941     };
       
  7942     return React__default.createElement(Component, _extends({}, animatedProps, {
       
  7943       ref: refFn
       
  7944     }));
       
  7945   });
       
  7946   return AnimatedComponent;
       
  7947 };
       
  7948 
       
  7949 var active = false;
       
  7950 var controllers = new Set();
       
  7951 
       
  7952 var update = function update() {
       
  7953   if (!active) return false;
       
  7954   var time = now();
       
  7955 
       
  7956   for (var _iterator = controllers, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
       
  7957     var _ref;
       
  7958 
       
  7959     if (_isArray) {
       
  7960       if (_i >= _iterator.length) break;
       
  7961       _ref = _iterator[_i++];
       
  7962     } else {
       
  7963       _i = _iterator.next();
       
  7964       if (_i.done) break;
       
  7965       _ref = _i.value;
       
  7966     }
       
  7967 
       
  7968     var controller = _ref;
       
  7969     var isActive = false;
       
  7970 
       
  7971     for (var configIdx = 0; configIdx < controller.configs.length; configIdx++) {
       
  7972       var config = controller.configs[configIdx];
       
  7973       var endOfAnimation = void 0,
       
  7974           lastTime = void 0;
       
  7975 
       
  7976       for (var valIdx = 0; valIdx < config.animatedValues.length; valIdx++) {
       
  7977         var animation = config.animatedValues[valIdx]; // If an animation is done, skip, until all of them conclude
       
  7978 
       
  7979         if (animation.done) continue;
       
  7980         var from = config.fromValues[valIdx];
       
  7981         var to = config.toValues[valIdx];
       
  7982         var position = animation.lastPosition;
       
  7983         var isAnimated = to instanceof Animated;
       
  7984         var velocity = Array.isArray(config.initialVelocity) ? config.initialVelocity[valIdx] : config.initialVelocity;
       
  7985         if (isAnimated) to = to.getValue(); // Conclude animation if it's either immediate, or from-values match end-state
       
  7986 
       
  7987         if (config.immediate) {
       
  7988           animation.setValue(to);
       
  7989           animation.done = true;
       
  7990           continue;
       
  7991         } // Break animation when string values are involved
       
  7992 
       
  7993 
       
  7994         if (typeof from === 'string' || typeof to === 'string') {
       
  7995           animation.setValue(to);
       
  7996           animation.done = true;
       
  7997           continue;
       
  7998         }
       
  7999 
       
  8000         if (config.duration !== void 0) {
       
  8001           /** Duration easing */
       
  8002           position = from + config.easing((time - animation.startTime) / config.duration) * (to - from);
       
  8003           endOfAnimation = time >= animation.startTime + config.duration;
       
  8004         } else if (config.decay) {
       
  8005           /** Decay easing */
       
  8006           position = from + velocity / (1 - 0.998) * (1 - Math.exp(-(1 - 0.998) * (time - animation.startTime)));
       
  8007           endOfAnimation = Math.abs(animation.lastPosition - position) < 0.1;
       
  8008           if (endOfAnimation) to = position;
       
  8009         } else {
       
  8010           /** Spring easing */
       
  8011           lastTime = animation.lastTime !== void 0 ? animation.lastTime : time;
       
  8012           velocity = animation.lastVelocity !== void 0 ? animation.lastVelocity : config.initialVelocity; // If we lost a lot of frames just jump to the end.
       
  8013 
       
  8014           if (time > lastTime + 64) lastTime = time; // http://gafferongames.com/game-physics/fix-your-timestep/
       
  8015 
       
  8016           var numSteps = Math.floor(time - lastTime);
       
  8017 
       
  8018           for (var i = 0; i < numSteps; ++i) {
       
  8019             var force = -config.tension * (position - to);
       
  8020             var damping = -config.friction * velocity;
       
  8021             var acceleration = (force + damping) / config.mass;
       
  8022             velocity = velocity + acceleration * 1 / 1000;
       
  8023             position = position + velocity * 1 / 1000;
       
  8024           } // Conditions for stopping the spring animation
       
  8025 
       
  8026 
       
  8027           var isOvershooting = config.clamp && config.tension !== 0 ? from < to ? position > to : position < to : false;
       
  8028           var isVelocity = Math.abs(velocity) <= config.precision;
       
  8029           var isDisplacement = config.tension !== 0 ? Math.abs(to - position) <= config.precision : true;
       
  8030           endOfAnimation = isOvershooting || isVelocity && isDisplacement;
       
  8031           animation.lastVelocity = velocity;
       
  8032           animation.lastTime = time;
       
  8033         } // Trails aren't done until their parents conclude
       
  8034 
       
  8035 
       
  8036         if (isAnimated && !config.toValues[valIdx].done) endOfAnimation = false;
       
  8037 
       
  8038         if (endOfAnimation) {
       
  8039           // Ensure that we end up with a round value
       
  8040           if (animation.value !== to) position = to;
       
  8041           animation.done = true;
       
  8042         } else isActive = true;
       
  8043 
       
  8044         animation.setValue(position);
       
  8045         animation.lastPosition = position;
       
  8046       } // Keep track of updated values only when necessary
       
  8047 
       
  8048 
       
  8049       if (controller.props.onFrame) controller.values[config.name] = config.interpolation.getValue();
       
  8050     } // Update callbacks in the end of the frame
       
  8051 
       
  8052 
       
  8053     if (controller.props.onFrame) controller.props.onFrame(controller.values); // Either call onEnd or next frame
       
  8054 
       
  8055     if (!isActive) {
       
  8056       controllers.delete(controller);
       
  8057       controller.stop(true);
       
  8058     }
       
  8059   } // Loop over as long as there are controllers ...
       
  8060 
       
  8061 
       
  8062   if (controllers.size) {
       
  8063     if (manualFrameloop) manualFrameloop();else requestFrame(update);
       
  8064   } else {
       
  8065     active = false;
       
  8066   }
       
  8067 
       
  8068   return active;
       
  8069 };
       
  8070 
       
  8071 var start = function start(controller) {
       
  8072   if (!controllers.has(controller)) controllers.add(controller);
       
  8073 
       
  8074   if (!active) {
       
  8075     active = true;
       
  8076     if (manualFrameloop) requestFrame(manualFrameloop);else requestFrame(update);
       
  8077   }
       
  8078 };
       
  8079 
       
  8080 var stop = function stop(controller) {
       
  8081   if (controllers.has(controller)) controllers.delete(controller);
       
  8082 };
       
  8083 
       
  8084 function createInterpolator(range, output, extrapolate) {
       
  8085   if (typeof range === 'function') {
       
  8086     return range;
       
  8087   }
       
  8088 
       
  8089   if (Array.isArray(range)) {
       
  8090     return createInterpolator({
       
  8091       range: range,
       
  8092       output: output,
       
  8093       extrapolate: extrapolate
       
  8094     });
       
  8095   }
       
  8096 
       
  8097   if (interpolation && typeof range.output[0] === 'string') {
       
  8098     return interpolation(range);
       
  8099   }
       
  8100 
       
  8101   var config = range;
       
  8102   var outputRange = config.output;
       
  8103   var inputRange = config.range || [0, 1];
       
  8104   var extrapolateLeft = config.extrapolateLeft || config.extrapolate || 'extend';
       
  8105   var extrapolateRight = config.extrapolateRight || config.extrapolate || 'extend';
       
  8106 
       
  8107   var easing = config.easing || function (t) {
       
  8108     return t;
       
  8109   };
       
  8110 
       
  8111   return function (input) {
       
  8112     var range = findRange(input, inputRange);
       
  8113     return interpolate(input, inputRange[range], inputRange[range + 1], outputRange[range], outputRange[range + 1], easing, extrapolateLeft, extrapolateRight, config.map);
       
  8114   };
       
  8115 }
       
  8116 
       
  8117 function interpolate(input, inputMin, inputMax, outputMin, outputMax, easing, extrapolateLeft, extrapolateRight, map) {
       
  8118   var result = map ? map(input) : input; // Extrapolate
       
  8119 
       
  8120   if (result < inputMin) {
       
  8121     if (extrapolateLeft === 'identity') return result;else if (extrapolateLeft === 'clamp') result = inputMin;
       
  8122   }
       
  8123 
       
  8124   if (result > inputMax) {
       
  8125     if (extrapolateRight === 'identity') return result;else if (extrapolateRight === 'clamp') result = inputMax;
       
  8126   }
       
  8127 
       
  8128   if (outputMin === outputMax) return outputMin;
       
  8129   if (inputMin === inputMax) return input <= inputMin ? outputMin : outputMax; // Input Range
       
  8130 
       
  8131   if (inputMin === -Infinity) result = -result;else if (inputMax === Infinity) result = result - inputMin;else result = (result - inputMin) / (inputMax - inputMin); // Easing
       
  8132 
       
  8133   result = easing(result); // Output Range
       
  8134 
       
  8135   if (outputMin === -Infinity) result = -result;else if (outputMax === Infinity) result = result + outputMin;else result = result * (outputMax - outputMin) + outputMin;
       
  8136   return result;
       
  8137 }
       
  8138 
       
  8139 function findRange(input, inputRange) {
       
  8140   for (var i = 1; i < inputRange.length - 1; ++i) {
       
  8141     if (inputRange[i] >= input) break;
       
  8142   }
       
  8143 
       
  8144   return i - 1;
       
  8145 }
       
  8146 
       
  8147 var AnimatedInterpolation =
       
  8148 /*#__PURE__*/
       
  8149 function (_AnimatedArray) {
       
  8150   _inheritsLoose(AnimatedInterpolation, _AnimatedArray);
       
  8151 
       
  8152   function AnimatedInterpolation(parents, range, output, extrapolate) {
       
  8153     var _this;
       
  8154 
       
  8155     _this = _AnimatedArray.call(this) || this;
       
  8156     _this.calc = void 0;
       
  8157     _this.payload = parents instanceof AnimatedArray && !(parents instanceof AnimatedInterpolation) ? parents.getPayload() : Array.isArray(parents) ? parents : [parents];
       
  8158     _this.calc = createInterpolator(range, output, extrapolate);
       
  8159     return _this;
       
  8160   }
       
  8161 
       
  8162   var _proto = AnimatedInterpolation.prototype;
       
  8163 
       
  8164   _proto.getValue = function getValue() {
       
  8165     return this.calc.apply(this, this.payload.map(function (value) {
       
  8166       return value.getValue();
       
  8167     }));
       
  8168   };
       
  8169 
       
  8170   _proto.updateConfig = function updateConfig(range, output, extrapolate) {
       
  8171     this.calc = createInterpolator(range, output, extrapolate);
       
  8172   };
       
  8173 
       
  8174   _proto.interpolate = function interpolate(range, output, extrapolate) {
       
  8175     return new AnimatedInterpolation(this, range, output, extrapolate);
       
  8176   };
       
  8177 
       
  8178   return AnimatedInterpolation;
       
  8179 }(AnimatedArray);
       
  8180 
       
  8181 var interpolate$1 = function interpolate(parents, range, output) {
       
  8182   return parents && new AnimatedInterpolation(parents, range, output);
       
  8183 };
       
  8184 
       
  8185 var config = {
       
  8186   default: {
       
  8187     tension: 170,
       
  8188     friction: 26
       
  8189   },
       
  8190   gentle: {
       
  8191     tension: 120,
       
  8192     friction: 14
       
  8193   },
       
  8194   wobbly: {
       
  8195     tension: 180,
       
  8196     friction: 12
       
  8197   },
       
  8198   stiff: {
       
  8199     tension: 210,
       
  8200     friction: 20
       
  8201   },
       
  8202   slow: {
       
  8203     tension: 280,
       
  8204     friction: 60
       
  8205   },
       
  8206   molasses: {
       
  8207     tension: 280,
       
  8208     friction: 120
       
  8209   }
       
  8210 };
       
  8211 
       
  8212 /** API
       
  8213  *  useChain(references, timeSteps, timeFrame)
       
  8214  */
       
  8215 
       
  8216 function useChain(refs, timeSteps, timeFrame) {
       
  8217   if (timeFrame === void 0) {
       
  8218     timeFrame = 1000;
       
  8219   }
       
  8220 
       
  8221   var previous = React.useRef();
       
  8222   React.useEffect(function () {
       
  8223     if (is.equ(refs, previous.current)) refs.forEach(function (_ref) {
       
  8224       var current = _ref.current;
       
  8225       return current && current.start();
       
  8226     });else if (timeSteps) {
       
  8227       refs.forEach(function (_ref2, index) {
       
  8228         var current = _ref2.current;
       
  8229 
       
  8230         if (current) {
       
  8231           var ctrls = current.controllers;
       
  8232 
       
  8233           if (ctrls.length) {
       
  8234             var t = timeFrame * timeSteps[index];
       
  8235             ctrls.forEach(function (ctrl) {
       
  8236               ctrl.queue = ctrl.queue.map(function (e) {
       
  8237                 return _extends({}, e, {
       
  8238                   delay: e.delay + t
       
  8239                 });
       
  8240               });
       
  8241               ctrl.start();
       
  8242             });
       
  8243           }
       
  8244         }
       
  8245       });
       
  8246     } else refs.reduce(function (q, _ref3, rI) {
       
  8247       var current = _ref3.current;
       
  8248       return q = q.then(function () {
       
  8249         return current.start();
       
  8250       });
       
  8251     }, Promise.resolve());
       
  8252     previous.current = refs;
       
  8253   });
       
  8254 }
       
  8255 
       
  8256 /**
       
  8257  * Animated works by building a directed acyclic graph of dependencies
       
  8258  * transparently when you render your Animated components.
       
  8259  *
       
  8260  *               new Animated.Value(0)
       
  8261  *     .interpolate()        .interpolate()    new Animated.Value(1)
       
  8262  *         opacity               translateY      scale
       
  8263  *          style                         transform
       
  8264  *         View#234                         style
       
  8265  *                                         View#123
       
  8266  *
       
  8267  * A) Top Down phase
       
  8268  * When an AnimatedValue is updated, we recursively go down through this
       
  8269  * graph in order to find leaf nodes: the views that we flag as needing
       
  8270  * an update.
       
  8271  *
       
  8272  * B) Bottom Up phase
       
  8273  * When a view is flagged as needing an update, we recursively go back up
       
  8274  * in order to build the new value that it needs. The reason why we need
       
  8275  * this two-phases process is to deal with composite props such as
       
  8276  * transform which can receive values from multiple parents.
       
  8277  */
       
  8278 function addAnimatedStyles(node, styles) {
       
  8279   if ('update' in node) {
       
  8280     styles.add(node);
       
  8281   } else {
       
  8282     node.getChildren().forEach(function (child) {
       
  8283       return addAnimatedStyles(child, styles);
       
  8284     });
       
  8285   }
       
  8286 }
       
  8287 
       
  8288 var AnimatedValue =
       
  8289 /*#__PURE__*/
       
  8290 function (_Animated) {
       
  8291   _inheritsLoose(AnimatedValue, _Animated);
       
  8292 
       
  8293   function AnimatedValue(_value) {
       
  8294     var _this;
       
  8295 
       
  8296     _this = _Animated.call(this) || this;
       
  8297     _this.animatedStyles = new Set();
       
  8298     _this.value = void 0;
       
  8299     _this.startPosition = void 0;
       
  8300     _this.lastPosition = void 0;
       
  8301     _this.lastVelocity = void 0;
       
  8302     _this.startTime = void 0;
       
  8303     _this.lastTime = void 0;
       
  8304     _this.done = false;
       
  8305 
       
  8306     _this.setValue = function (value, flush) {
       
  8307       if (flush === void 0) {
       
  8308         flush = true;
       
  8309       }
       
  8310 
       
  8311       _this.value = value;
       
  8312       if (flush) _this.flush();
       
  8313     };
       
  8314 
       
  8315     _this.value = _value;
       
  8316     _this.startPosition = _value;
       
  8317     _this.lastPosition = _value;
       
  8318     return _this;
       
  8319   }
       
  8320 
       
  8321   var _proto = AnimatedValue.prototype;
       
  8322 
       
  8323   _proto.flush = function flush() {
       
  8324     if (this.animatedStyles.size === 0) {
       
  8325       addAnimatedStyles(this, this.animatedStyles);
       
  8326     }
       
  8327 
       
  8328     this.animatedStyles.forEach(function (animatedStyle) {
       
  8329       return animatedStyle.update();
       
  8330     });
       
  8331   };
       
  8332 
       
  8333   _proto.clearStyles = function clearStyles() {
       
  8334     this.animatedStyles.clear();
       
  8335   };
       
  8336 
       
  8337   _proto.getValue = function getValue() {
       
  8338     return this.value;
       
  8339   };
       
  8340 
       
  8341   _proto.interpolate = function interpolate(range, output, extrapolate) {
       
  8342     return new AnimatedInterpolation(this, range, output, extrapolate);
       
  8343   };
       
  8344 
       
  8345   return AnimatedValue;
       
  8346 }(Animated);
       
  8347 
       
  8348 var AnimatedValueArray =
       
  8349 /*#__PURE__*/
       
  8350 function (_AnimatedArray) {
       
  8351   _inheritsLoose(AnimatedValueArray, _AnimatedArray);
       
  8352 
       
  8353   function AnimatedValueArray(values) {
       
  8354     var _this;
       
  8355 
       
  8356     _this = _AnimatedArray.call(this) || this;
       
  8357     _this.payload = values.map(function (n) {
       
  8358       return new AnimatedValue(n);
       
  8359     });
       
  8360     return _this;
       
  8361   }
       
  8362 
       
  8363   var _proto = AnimatedValueArray.prototype;
       
  8364 
       
  8365   _proto.setValue = function setValue(value, flush) {
       
  8366     var _this2 = this;
       
  8367 
       
  8368     if (flush === void 0) {
       
  8369       flush = true;
       
  8370     }
       
  8371 
       
  8372     if (Array.isArray(value)) {
       
  8373       if (value.length === this.payload.length) {
       
  8374         value.forEach(function (v, i) {
       
  8375           return _this2.payload[i].setValue(v, flush);
       
  8376         });
       
  8377       }
       
  8378     } else {
       
  8379       this.payload.forEach(function (p) {
       
  8380         return p.setValue(value, flush);
       
  8381       });
       
  8382     }
       
  8383   };
       
  8384 
       
  8385   _proto.getValue = function getValue() {
       
  8386     return this.payload.map(function (v) {
       
  8387       return v.getValue();
       
  8388     });
       
  8389   };
       
  8390 
       
  8391   _proto.interpolate = function interpolate(range, output) {
       
  8392     return new AnimatedInterpolation(this, range, output);
       
  8393   };
       
  8394 
       
  8395   return AnimatedValueArray;
       
  8396 }(AnimatedArray);
       
  8397 
       
  8398 var G = 0;
       
  8399 
       
  8400 var Controller =
       
  8401 /*#__PURE__*/
       
  8402 function () {
       
  8403   function Controller() {
       
  8404     var _this = this;
       
  8405 
       
  8406     this.id = void 0;
       
  8407     this.idle = true;
       
  8408     this.hasChanged = false;
       
  8409     this.guid = 0;
       
  8410     this.local = 0;
       
  8411     this.props = {};
       
  8412     this.merged = {};
       
  8413     this.animations = {};
       
  8414     this.interpolations = {};
       
  8415     this.values = {};
       
  8416     this.configs = [];
       
  8417     this.listeners = [];
       
  8418     this.queue = [];
       
  8419     this.localQueue = void 0;
       
  8420 
       
  8421     this.getValues = function () {
       
  8422       return _this.interpolations;
       
  8423     };
       
  8424 
       
  8425     this.id = G++;
       
  8426   }
       
  8427   /** update(props)
       
  8428    *  This function filters input props and creates an array of tasks which are executed in .start()
       
  8429    *  Each task is allowed to carry a delay, which means it can execute asnychroneously */
       
  8430 
       
  8431 
       
  8432   var _proto = Controller.prototype;
       
  8433 
       
  8434   _proto.update = function update$$1(args) {
       
  8435     //this._id = n + this.id
       
  8436     if (!args) return this; // Extract delay and the to-prop from props
       
  8437 
       
  8438     var _ref = interpolateTo(args),
       
  8439         _ref$delay = _ref.delay,
       
  8440         delay = _ref$delay === void 0 ? 0 : _ref$delay,
       
  8441         to = _ref.to,
       
  8442         props = _objectWithoutPropertiesLoose(_ref, ["delay", "to"]);
       
  8443 
       
  8444     if (is.arr(to) || is.fun(to)) {
       
  8445       // If config is either a function or an array queue it up as is
       
  8446       this.queue.push(_extends({}, props, {
       
  8447         delay: delay,
       
  8448         to: to
       
  8449       }));
       
  8450     } else if (to) {
       
  8451       // Otherwise go through each key since it could be delayed individually
       
  8452       var ops = {};
       
  8453       Object.entries(to).forEach(function (_ref2) {
       
  8454         var _to;
       
  8455 
       
  8456         var k = _ref2[0],
       
  8457             v = _ref2[1];
       
  8458 
       
  8459         // Fetch delay and create an entry, consisting of the to-props, the delay, and basic props
       
  8460         var entry = _extends({
       
  8461           to: (_to = {}, _to[k] = v, _to),
       
  8462           delay: callProp(delay, k)
       
  8463         }, props);
       
  8464 
       
  8465         var previous = ops[entry.delay] && ops[entry.delay].to;
       
  8466         ops[entry.delay] = _extends({}, ops[entry.delay], entry, {
       
  8467           to: _extends({}, previous, entry.to)
       
  8468         });
       
  8469       });
       
  8470       this.queue = Object.values(ops);
       
  8471     } // Sort queue, so that async calls go last
       
  8472 
       
  8473 
       
  8474     this.queue = this.queue.sort(function (a, b) {
       
  8475       return a.delay - b.delay;
       
  8476     }); // Diff the reduced props immediately (they'll contain the from-prop and some config)
       
  8477 
       
  8478     this.diff(props);
       
  8479     return this;
       
  8480   }
       
  8481   /** start(onEnd)
       
  8482    *  This function either executes a queue, if present, or starts the frameloop, which animates */
       
  8483   ;
       
  8484 
       
  8485   _proto.start = function start$$1(onEnd) {
       
  8486     var _this2 = this;
       
  8487 
       
  8488     // If a queue is present we must excecute it
       
  8489     if (this.queue.length) {
       
  8490       this.idle = false; // Updates can interrupt trailing queues, in that case we just merge values
       
  8491 
       
  8492       if (this.localQueue) {
       
  8493         this.localQueue.forEach(function (_ref3) {
       
  8494           var _ref3$from = _ref3.from,
       
  8495               from = _ref3$from === void 0 ? {} : _ref3$from,
       
  8496               _ref3$to = _ref3.to,
       
  8497               to = _ref3$to === void 0 ? {} : _ref3$to;
       
  8498           if (is.obj(from)) _this2.merged = _extends({}, from, _this2.merged);
       
  8499           if (is.obj(to)) _this2.merged = _extends({}, _this2.merged, to);
       
  8500         });
       
  8501       } // The guid helps us tracking frames, a new queue over an old one means an override
       
  8502       // We discard async calls in that caseÍ
       
  8503 
       
  8504 
       
  8505       var local = this.local = ++this.guid;
       
  8506       var queue = this.localQueue = this.queue;
       
  8507       this.queue = []; // Go through each entry and execute it
       
  8508 
       
  8509       queue.forEach(function (_ref4, index) {
       
  8510         var delay = _ref4.delay,
       
  8511             props = _objectWithoutPropertiesLoose(_ref4, ["delay"]);
       
  8512 
       
  8513         var cb = function cb(finished) {
       
  8514           if (index === queue.length - 1 && local === _this2.guid && finished) {
       
  8515             _this2.idle = true;
       
  8516             if (_this2.props.onRest) _this2.props.onRest(_this2.merged);
       
  8517           }
       
  8518 
       
  8519           if (onEnd) onEnd();
       
  8520         }; // Entries can be delayed, ansyc or immediate
       
  8521 
       
  8522 
       
  8523         var async = is.arr(props.to) || is.fun(props.to);
       
  8524 
       
  8525         if (delay) {
       
  8526           setTimeout(function () {
       
  8527             if (local === _this2.guid) {
       
  8528               if (async) _this2.runAsync(props, cb);else _this2.diff(props).start(cb);
       
  8529             }
       
  8530           }, delay);
       
  8531         } else if (async) _this2.runAsync(props, cb);else _this2.diff(props).start(cb);
       
  8532       });
       
  8533     } // Otherwise we kick of the frameloop
       
  8534     else {
       
  8535         if (is.fun(onEnd)) this.listeners.push(onEnd);
       
  8536         if (this.props.onStart) this.props.onStart();
       
  8537 
       
  8538         start(this);
       
  8539       }
       
  8540 
       
  8541     return this;
       
  8542   };
       
  8543 
       
  8544   _proto.stop = function stop$$1(finished) {
       
  8545     this.listeners.forEach(function (onEnd) {
       
  8546       return onEnd(finished);
       
  8547     });
       
  8548     this.listeners = [];
       
  8549     return this;
       
  8550   }
       
  8551   /** Pause sets onEnd listeners free, but also removes the controller from the frameloop */
       
  8552   ;
       
  8553 
       
  8554   _proto.pause = function pause(finished) {
       
  8555     this.stop(true);
       
  8556     if (finished) stop(this);
       
  8557     return this;
       
  8558   };
       
  8559 
       
  8560   _proto.runAsync = function runAsync(_ref5, onEnd) {
       
  8561     var _this3 = this;
       
  8562 
       
  8563     var delay = _ref5.delay,
       
  8564         props = _objectWithoutPropertiesLoose(_ref5, ["delay"]);
       
  8565 
       
  8566     var local = this.local; // If "to" is either a function or an array it will be processed async, therefor "to" should be empty right now
       
  8567     // If the view relies on certain values "from" has to be present
       
  8568 
       
  8569     var queue = Promise.resolve(undefined);
       
  8570 
       
  8571     if (is.arr(props.to)) {
       
  8572       var _loop = function _loop(i) {
       
  8573         var index = i;
       
  8574 
       
  8575         var fresh = _extends({}, props, interpolateTo(props.to[index]));
       
  8576 
       
  8577         if (is.arr(fresh.config)) fresh.config = fresh.config[index];
       
  8578         queue = queue.then(function () {
       
  8579           //this.stop()
       
  8580           if (local === _this3.guid) return new Promise(function (r) {
       
  8581             return _this3.diff(fresh).start(r);
       
  8582           });
       
  8583         });
       
  8584       };
       
  8585 
       
  8586       for (var i = 0; i < props.to.length; i++) {
       
  8587         _loop(i);
       
  8588       }
       
  8589     } else if (is.fun(props.to)) {
       
  8590       var index = 0;
       
  8591       var last;
       
  8592       queue = queue.then(function () {
       
  8593         return props.to( // next(props)
       
  8594         function (p) {
       
  8595           var fresh = _extends({}, props, interpolateTo(p));
       
  8596 
       
  8597           if (is.arr(fresh.config)) fresh.config = fresh.config[index];
       
  8598           index++; //this.stop()
       
  8599 
       
  8600           if (local === _this3.guid) return last = new Promise(function (r) {
       
  8601             return _this3.diff(fresh).start(r);
       
  8602           });
       
  8603           return;
       
  8604         }, // cancel()
       
  8605         function (finished) {
       
  8606           if (finished === void 0) {
       
  8607             finished = true;
       
  8608           }
       
  8609 
       
  8610           return _this3.stop(finished);
       
  8611         }).then(function () {
       
  8612           return last;
       
  8613         });
       
  8614       });
       
  8615     }
       
  8616 
       
  8617     queue.then(onEnd);
       
  8618   };
       
  8619 
       
  8620   _proto.diff = function diff(props) {
       
  8621     var _this4 = this;
       
  8622 
       
  8623     this.props = _extends({}, this.props, props);
       
  8624     var _this$props = this.props,
       
  8625         _this$props$from = _this$props.from,
       
  8626         from = _this$props$from === void 0 ? {} : _this$props$from,
       
  8627         _this$props$to = _this$props.to,
       
  8628         to = _this$props$to === void 0 ? {} : _this$props$to,
       
  8629         _this$props$config = _this$props.config,
       
  8630         config = _this$props$config === void 0 ? {} : _this$props$config,
       
  8631         reverse = _this$props.reverse,
       
  8632         attach = _this$props.attach,
       
  8633         reset = _this$props.reset,
       
  8634         immediate = _this$props.immediate; // Reverse values when requested
       
  8635 
       
  8636     if (reverse) {
       
  8637       var _ref6 = [to, from];
       
  8638       from = _ref6[0];
       
  8639       to = _ref6[1];
       
  8640     } // This will collect all props that were ever set, reset merged props when necessary
       
  8641 
       
  8642 
       
  8643     this.merged = _extends({}, from, this.merged, to);
       
  8644     this.hasChanged = false; // Attachment handling, trailed springs can "attach" themselves to a previous spring
       
  8645 
       
  8646     var target = attach && attach(this); // Reduces input { name: value } pairs into animated values
       
  8647 
       
  8648     this.animations = Object.entries(this.merged).reduce(function (acc, _ref7) {
       
  8649       var name = _ref7[0],
       
  8650           value = _ref7[1];
       
  8651       // Issue cached entries, except on reset
       
  8652       var entry = acc[name] || {}; // Figure out what the value is supposed to be
       
  8653 
       
  8654       var isNumber = is.num(value);
       
  8655       var isString = is.str(value) && !value.startsWith('#') && !/\d/.test(value) && !colorNames[value];
       
  8656       var isArray = is.arr(value);
       
  8657       var isInterpolation = !isNumber && !isArray && !isString;
       
  8658       var fromValue = !is.und(from[name]) ? from[name] : value;
       
  8659       var toValue = isNumber || isArray ? value : isString ? value : 1;
       
  8660       var toConfig = callProp(config, name);
       
  8661       if (target) toValue = target.animations[name].parent;
       
  8662       var parent = entry.parent,
       
  8663           interpolation$$1 = entry.interpolation,
       
  8664           toValues = toArray(target ? toValue.getPayload() : toValue),
       
  8665           animatedValues;
       
  8666       var newValue = value;
       
  8667       if (isInterpolation) newValue = interpolation({
       
  8668         range: [0, 1],
       
  8669         output: [value, value]
       
  8670       })(1);
       
  8671       var currentValue = interpolation$$1 && interpolation$$1.getValue(); // Change detection flags
       
  8672 
       
  8673       var isFirst = is.und(parent);
       
  8674       var isActive = !isFirst && entry.animatedValues.some(function (v) {
       
  8675         return !v.done;
       
  8676       });
       
  8677       var currentValueDiffersFromGoal = !is.equ(newValue, currentValue);
       
  8678       var hasNewGoal = !is.equ(newValue, entry.previous);
       
  8679       var hasNewConfig = !is.equ(toConfig, entry.config); // Change animation props when props indicate a new goal (new value differs from previous one)
       
  8680       // and current values differ from it. Config changes trigger a new update as well (though probably shouldn't?)
       
  8681 
       
  8682       if (reset || hasNewGoal && currentValueDiffersFromGoal || hasNewConfig) {
       
  8683         var _extends2;
       
  8684 
       
  8685         // Convert regular values into animated values, ALWAYS re-use if possible
       
  8686         if (isNumber || isString) parent = interpolation$$1 = entry.parent || new AnimatedValue(fromValue);else if (isArray) parent = interpolation$$1 = entry.parent || new AnimatedValueArray(fromValue);else if (isInterpolation) {
       
  8687           var prev = entry.interpolation && entry.interpolation.calc(entry.parent.value);
       
  8688           prev = prev !== void 0 && !reset ? prev : fromValue;
       
  8689 
       
  8690           if (entry.parent) {
       
  8691             parent = entry.parent;
       
  8692             parent.setValue(0, false);
       
  8693           } else parent = new AnimatedValue(0);
       
  8694 
       
  8695           var range = {
       
  8696             output: [prev, value]
       
  8697           };
       
  8698 
       
  8699           if (entry.interpolation) {
       
  8700             interpolation$$1 = entry.interpolation;
       
  8701             entry.interpolation.updateConfig(range);
       
  8702           } else interpolation$$1 = parent.interpolate(range);
       
  8703         }
       
  8704         toValues = toArray(target ? toValue.getPayload() : toValue);
       
  8705         animatedValues = toArray(parent.getPayload());
       
  8706         if (reset && !isInterpolation) parent.setValue(fromValue, false);
       
  8707         _this4.hasChanged = true; // Reset animated values
       
  8708 
       
  8709         animatedValues.forEach(function (value) {
       
  8710           value.startPosition = value.value;
       
  8711           value.lastPosition = value.value;
       
  8712           value.lastVelocity = isActive ? value.lastVelocity : undefined;
       
  8713           value.lastTime = isActive ? value.lastTime : undefined;
       
  8714           value.startTime = now();
       
  8715           value.done = false;
       
  8716           value.animatedStyles.clear();
       
  8717         }); // Set immediate values
       
  8718 
       
  8719         if (callProp(immediate, name)) {
       
  8720           parent.setValue(isInterpolation ? toValue : value, false);
       
  8721         }
       
  8722 
       
  8723         return _extends({}, acc, (_extends2 = {}, _extends2[name] = _extends({}, entry, {
       
  8724           name: name,
       
  8725           parent: parent,
       
  8726           interpolation: interpolation$$1,
       
  8727           animatedValues: animatedValues,
       
  8728           toValues: toValues,
       
  8729           previous: newValue,
       
  8730           config: toConfig,
       
  8731           fromValues: toArray(parent.getValue()),
       
  8732           immediate: callProp(immediate, name),
       
  8733           initialVelocity: withDefault(toConfig.velocity, 0),
       
  8734           clamp: withDefault(toConfig.clamp, false),
       
  8735           precision: withDefault(toConfig.precision, 0.01),
       
  8736           tension: withDefault(toConfig.tension, 170),
       
  8737           friction: withDefault(toConfig.friction, 26),
       
  8738           mass: withDefault(toConfig.mass, 1),
       
  8739           duration: toConfig.duration,
       
  8740           easing: withDefault(toConfig.easing, function (t) {
       
  8741             return t;
       
  8742           }),
       
  8743           decay: toConfig.decay
       
  8744         }), _extends2));
       
  8745       } else {
       
  8746         if (!currentValueDiffersFromGoal) {
       
  8747           var _extends3;
       
  8748 
       
  8749           // So ... the current target value (newValue) appears to be different from the previous value,
       
  8750           // which normally constitutes an update, but the actual value (currentValue) matches the target!
       
  8751           // In order to resolve this without causing an animation update we silently flag the animation as done,
       
  8752           // which it technically is. Interpolations also needs a config update with their target set to 1.
       
  8753           if (isInterpolation) {
       
  8754             parent.setValue(1, false);
       
  8755             interpolation$$1.updateConfig({
       
  8756               output: [newValue, newValue]
       
  8757             });
       
  8758           }
       
  8759 
       
  8760           parent.done = true;
       
  8761           _this4.hasChanged = true;
       
  8762           return _extends({}, acc, (_extends3 = {}, _extends3[name] = _extends({}, acc[name], {
       
  8763             previous: newValue
       
  8764           }), _extends3));
       
  8765         }
       
  8766 
       
  8767         return acc;
       
  8768       }
       
  8769     }, this.animations);
       
  8770 
       
  8771     if (this.hasChanged) {
       
  8772       // Make animations available to frameloop
       
  8773       this.configs = Object.values(this.animations);
       
  8774       this.values = {};
       
  8775       this.interpolations = {};
       
  8776 
       
  8777       for (var key in this.animations) {
       
  8778         this.interpolations[key] = this.animations[key].interpolation;
       
  8779         this.values[key] = this.animations[key].interpolation.getValue();
       
  8780       }
       
  8781     }
       
  8782 
       
  8783     return this;
       
  8784   };
       
  8785 
       
  8786   _proto.destroy = function destroy() {
       
  8787     this.stop();
       
  8788     this.props = {};
       
  8789     this.merged = {};
       
  8790     this.animations = {};
       
  8791     this.interpolations = {};
       
  8792     this.values = {};
       
  8793     this.configs = [];
       
  8794     this.local = 0;
       
  8795   };
       
  8796 
       
  8797   return Controller;
       
  8798 }();
       
  8799 
       
  8800 /** API
       
  8801  * const props = useSprings(number, [{ ... }, { ... }, ...])
       
  8802  * const [props, set] = useSprings(number, (i, controller) => ({ ... }))
       
  8803  */
       
  8804 
       
  8805 var useSprings = function useSprings(length, props) {
       
  8806   var mounted = React.useRef(false);
       
  8807   var ctrl = React.useRef();
       
  8808   var isFn = is.fun(props); // The controller maintains the animation values, starts and stops animations
       
  8809 
       
  8810   var _useMemo = React.useMemo(function () {
       
  8811     // Remove old controllers
       
  8812     if (ctrl.current) {
       
  8813       ctrl.current.map(function (c) {
       
  8814         return c.destroy();
       
  8815       });
       
  8816       ctrl.current = undefined;
       
  8817     }
       
  8818 
       
  8819     var ref;
       
  8820     return [new Array(length).fill().map(function (_, i) {
       
  8821       var ctrl = new Controller();
       
  8822       var newProps = isFn ? callProp(props, i, ctrl) : props[i];
       
  8823       if (i === 0) ref = newProps.ref;
       
  8824       ctrl.update(newProps);
       
  8825       if (!ref) ctrl.start();
       
  8826       return ctrl;
       
  8827     }), ref];
       
  8828   }, [length]),
       
  8829       controllers = _useMemo[0],
       
  8830       ref = _useMemo[1];
       
  8831 
       
  8832   ctrl.current = controllers; // The hooks reference api gets defined here ...
       
  8833 
       
  8834   var api = React.useImperativeHandle(ref, function () {
       
  8835     return {
       
  8836       start: function start() {
       
  8837         return Promise.all(ctrl.current.map(function (c) {
       
  8838           return new Promise(function (r) {
       
  8839             return c.start(r);
       
  8840           });
       
  8841         }));
       
  8842       },
       
  8843       stop: function stop(finished) {
       
  8844         return ctrl.current.forEach(function (c) {
       
  8845           return c.stop(finished);
       
  8846         });
       
  8847       },
       
  8848 
       
  8849       get controllers() {
       
  8850         return ctrl.current;
       
  8851       }
       
  8852 
       
  8853     };
       
  8854   }); // This function updates the controllers
       
  8855 
       
  8856   var updateCtrl = React.useMemo(function () {
       
  8857     return function (updateProps) {
       
  8858       return ctrl.current.map(function (c, i) {
       
  8859         c.update(isFn ? callProp(updateProps, i, c) : updateProps[i]);
       
  8860         if (!ref) c.start();
       
  8861       });
       
  8862     };
       
  8863   }, [length]); // Update controller if props aren't functional
       
  8864 
       
  8865   React.useEffect(function () {
       
  8866     if (mounted.current) {
       
  8867       if (!isFn) updateCtrl(props);
       
  8868     } else if (!ref) ctrl.current.forEach(function (c) {
       
  8869       return c.start();
       
  8870     });
       
  8871   }); // Update mounted flag and destroy controller on unmount
       
  8872 
       
  8873   React.useEffect(function () {
       
  8874     return mounted.current = true, function () {
       
  8875       return ctrl.current.forEach(function (c) {
       
  8876         return c.destroy();
       
  8877       });
       
  8878     };
       
  8879   }, []); // Return animated props, or, anim-props + the update-setter above
       
  8880 
       
  8881   var propValues = ctrl.current.map(function (c) {
       
  8882     return c.getValues();
       
  8883   });
       
  8884   return isFn ? [propValues, updateCtrl, function (finished) {
       
  8885     return ctrl.current.forEach(function (c) {
       
  8886       return c.pause(finished);
       
  8887     });
       
  8888   }] : propValues;
       
  8889 };
       
  8890 
       
  8891 /** API
       
  8892  * const props = useSpring({ ... })
       
  8893  * const [props, set] = useSpring(() => ({ ... }))
       
  8894  */
       
  8895 
       
  8896 var useSpring = function useSpring(props) {
       
  8897   var isFn = is.fun(props);
       
  8898 
       
  8899   var _useSprings = useSprings(1, isFn ? props : [props]),
       
  8900       result = _useSprings[0],
       
  8901       set = _useSprings[1],
       
  8902       pause = _useSprings[2];
       
  8903 
       
  8904   return isFn ? [result[0], set, pause] : result;
       
  8905 };
       
  8906 
       
  8907 /** API
       
  8908  * const trails = useTrail(number, { ... })
       
  8909  * const [trails, set] = useTrail(number, () => ({ ... }))
       
  8910  */
       
  8911 
       
  8912 var useTrail = function useTrail(length, props) {
       
  8913   var mounted = React.useRef(false);
       
  8914   var isFn = is.fun(props);
       
  8915   var updateProps = callProp(props);
       
  8916   var instances = React.useRef();
       
  8917 
       
  8918   var _useSprings = useSprings(length, function (i, ctrl) {
       
  8919     if (i === 0) instances.current = [];
       
  8920     instances.current.push(ctrl);
       
  8921     return _extends({}, updateProps, {
       
  8922       config: callProp(updateProps.config, i),
       
  8923       attach: i > 0 && function () {
       
  8924         return instances.current[i - 1];
       
  8925       }
       
  8926     });
       
  8927   }),
       
  8928       result = _useSprings[0],
       
  8929       set = _useSprings[1],
       
  8930       pause = _useSprings[2]; // Set up function to update controller
       
  8931 
       
  8932 
       
  8933   var updateCtrl = React.useMemo(function () {
       
  8934     return function (props) {
       
  8935       return set(function (i, ctrl) {
       
  8936         var last = props.reverse ? i === 0 : length - 1 === i;
       
  8937         var attachIdx = props.reverse ? i + 1 : i - 1;
       
  8938         var attachController = instances.current[attachIdx];
       
  8939         return _extends({}, props, {
       
  8940           config: callProp(props.config || updateProps.config, i),
       
  8941           attach: attachController && function () {
       
  8942             return attachController;
       
  8943           }
       
  8944         });
       
  8945       });
       
  8946     };
       
  8947   }, [length, updateProps.reverse]); // Update controller if props aren't functional
       
  8948 
       
  8949   React.useEffect(function () {
       
  8950     return void (mounted.current && !isFn && updateCtrl(props));
       
  8951   }); // Update mounted flag and destroy controller on unmount
       
  8952 
       
  8953   React.useEffect(function () {
       
  8954     return void (mounted.current = true);
       
  8955   }, []);
       
  8956   return isFn ? [result, updateCtrl, pause] : result;
       
  8957 };
       
  8958 
       
  8959 /** API
       
  8960  * const transitions = useTransition(items, itemKeys, { ... })
       
  8961  * const [transitions, update] = useTransition(items, itemKeys, () => ({ ... }))
       
  8962  */
       
  8963 
       
  8964 var guid = 0;
       
  8965 var ENTER = 'enter';
       
  8966 var LEAVE = 'leave';
       
  8967 var UPDATE = 'update';
       
  8968 
       
  8969 var mapKeys = function mapKeys(items, keys) {
       
  8970   return (typeof keys === 'function' ? items.map(keys) : toArray(keys)).map(String);
       
  8971 };
       
  8972 
       
  8973 var get = function get(props) {
       
  8974   var items = props.items,
       
  8975       _props$keys = props.keys,
       
  8976       keys = _props$keys === void 0 ? function (item) {
       
  8977     return item;
       
  8978   } : _props$keys,
       
  8979       rest = _objectWithoutPropertiesLoose(props, ["items", "keys"]);
       
  8980 
       
  8981   items = toArray(items !== void 0 ? items : null);
       
  8982   return _extends({
       
  8983     items: items,
       
  8984     keys: mapKeys(items, keys)
       
  8985   }, rest);
       
  8986 };
       
  8987 
       
  8988 function useTransition(input, keyTransform, config) {
       
  8989   var props = _extends({
       
  8990     items: input,
       
  8991     keys: keyTransform || function (i) {
       
  8992       return i;
       
  8993     }
       
  8994   }, config);
       
  8995 
       
  8996   var _get = get(props),
       
  8997       _get$lazy = _get.lazy,
       
  8998       lazy = _get$lazy === void 0 ? false : _get$lazy,
       
  8999       _get$unique = _get.unique,
       
  9000       _get$reset = _get.reset,
       
  9001       reset = _get$reset === void 0 ? false : _get$reset,
       
  9002       enter = _get.enter,
       
  9003       leave = _get.leave,
       
  9004       update = _get.update,
       
  9005       onDestroyed = _get.onDestroyed,
       
  9006       keys = _get.keys,
       
  9007       items = _get.items,
       
  9008       onFrame = _get.onFrame,
       
  9009       _onRest = _get.onRest,
       
  9010       onStart = _get.onStart,
       
  9011       ref = _get.ref,
       
  9012       extra = _objectWithoutPropertiesLoose(_get, ["lazy", "unique", "reset", "enter", "leave", "update", "onDestroyed", "keys", "items", "onFrame", "onRest", "onStart", "ref"]);
       
  9013 
       
  9014   var forceUpdate = useForceUpdate();
       
  9015   var mounted = React.useRef(false);
       
  9016   var state = React.useRef({
       
  9017     mounted: false,
       
  9018     first: true,
       
  9019     deleted: [],
       
  9020     current: {},
       
  9021     transitions: [],
       
  9022     prevProps: {},
       
  9023     paused: !!props.ref,
       
  9024     instances: !mounted.current && new Map(),
       
  9025     forceUpdate: forceUpdate
       
  9026   });
       
  9027   React.useImperativeHandle(props.ref, function () {
       
  9028     return {
       
  9029       start: function start() {
       
  9030         return Promise.all(Array.from(state.current.instances).map(function (_ref) {
       
  9031           var c = _ref[1];
       
  9032           return new Promise(function (r) {
       
  9033             return c.start(r);
       
  9034           });
       
  9035         }));
       
  9036       },
       
  9037       stop: function stop(finished) {
       
  9038         return Array.from(state.current.instances).forEach(function (_ref2) {
       
  9039           var c = _ref2[1];
       
  9040           return c.stop(finished);
       
  9041         });
       
  9042       },
       
  9043 
       
  9044       get controllers() {
       
  9045         return Array.from(state.current.instances).map(function (_ref3) {
       
  9046           var c = _ref3[1];
       
  9047           return c;
       
  9048         });
       
  9049       }
       
  9050 
       
  9051     };
       
  9052   }); // Update state
       
  9053 
       
  9054   state.current = diffItems(state.current, props);
       
  9055 
       
  9056   if (state.current.changed) {
       
  9057     // Update state
       
  9058     state.current.transitions.forEach(function (transition) {
       
  9059       var slot = transition.slot,
       
  9060           from = transition.from,
       
  9061           to = transition.to,
       
  9062           config = transition.config,
       
  9063           trail = transition.trail,
       
  9064           key = transition.key,
       
  9065           item = transition.item;
       
  9066       if (!state.current.instances.has(key)) state.current.instances.set(key, new Controller()); // update the map object
       
  9067 
       
  9068       var ctrl = state.current.instances.get(key);
       
  9069 
       
  9070       var newProps = _extends({}, extra, {
       
  9071         to: to,
       
  9072         from: from,
       
  9073         config: config,
       
  9074         ref: ref,
       
  9075         onRest: function onRest(values) {
       
  9076           if (state.current.mounted) {
       
  9077             if (transition.destroyed) {
       
  9078               // If no ref is given delete destroyed items immediately
       
  9079               if (!ref && !lazy) cleanUp(state, key);
       
  9080               if (onDestroyed) onDestroyed(item);
       
  9081             } // A transition comes to rest once all its springs conclude
       
  9082 
       
  9083 
       
  9084             var curInstances = Array.from(state.current.instances);
       
  9085             var active = curInstances.some(function (_ref4) {
       
  9086               var c = _ref4[1];
       
  9087               return !c.idle;
       
  9088             });
       
  9089             if (!active && (ref || lazy) && state.current.deleted.length > 0) cleanUp(state);
       
  9090             if (_onRest) _onRest(item, slot, values);
       
  9091           }
       
  9092         },
       
  9093         onStart: onStart && function () {
       
  9094           return onStart(item, slot);
       
  9095         },
       
  9096         onFrame: onFrame && function (values) {
       
  9097           return onFrame(item, slot, values);
       
  9098         },
       
  9099         delay: trail,
       
  9100         reset: reset && slot === ENTER // Update controller
       
  9101 
       
  9102       });
       
  9103 
       
  9104       ctrl.update(newProps);
       
  9105       if (!state.current.paused) ctrl.start();
       
  9106     });
       
  9107   }
       
  9108 
       
  9109   React.useEffect(function () {
       
  9110     state.current.mounted = mounted.current = true;
       
  9111     return function () {
       
  9112       state.current.mounted = mounted.current = false;
       
  9113       Array.from(state.current.instances).map(function (_ref5) {
       
  9114         var c = _ref5[1];
       
  9115         return c.destroy();
       
  9116       });
       
  9117       state.current.instances.clear();
       
  9118     };
       
  9119   }, []);
       
  9120   return state.current.transitions.map(function (_ref6) {
       
  9121     var item = _ref6.item,
       
  9122         slot = _ref6.slot,
       
  9123         key = _ref6.key;
       
  9124     return {
       
  9125       item: item,
       
  9126       key: key,
       
  9127       state: slot,
       
  9128       props: state.current.instances.get(key).getValues()
       
  9129     };
       
  9130   });
       
  9131 }
       
  9132 
       
  9133 function cleanUp(state, filterKey) {
       
  9134   var deleted = state.current.deleted;
       
  9135 
       
  9136   var _loop = function _loop() {
       
  9137     if (_isArray) {
       
  9138       if (_i >= _iterator.length) return "break";
       
  9139       _ref8 = _iterator[_i++];
       
  9140     } else {
       
  9141       _i = _iterator.next();
       
  9142       if (_i.done) return "break";
       
  9143       _ref8 = _i.value;
       
  9144     }
       
  9145 
       
  9146     var _ref7 = _ref8;
       
  9147     var key = _ref7.key;
       
  9148 
       
  9149     var filter = function filter(t) {
       
  9150       return t.key !== key;
       
  9151     };
       
  9152 
       
  9153     if (is.und(filterKey) || filterKey === key) {
       
  9154       state.current.instances.delete(key);
       
  9155       state.current.transitions = state.current.transitions.filter(filter);
       
  9156       state.current.deleted = state.current.deleted.filter(filter);
       
  9157     }
       
  9158   };
       
  9159 
       
  9160   for (var _iterator = deleted, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {
       
  9161     var _ref8;
       
  9162 
       
  9163     var _ret = _loop();
       
  9164 
       
  9165     if (_ret === "break") break;
       
  9166   }
       
  9167 
       
  9168   state.current.forceUpdate();
       
  9169 }
       
  9170 
       
  9171 function diffItems(_ref9, props) {
       
  9172   var first = _ref9.first,
       
  9173       prevProps = _ref9.prevProps,
       
  9174       state = _objectWithoutPropertiesLoose(_ref9, ["first", "prevProps"]);
       
  9175 
       
  9176   var _get2 = get(props),
       
  9177       items = _get2.items,
       
  9178       keys = _get2.keys,
       
  9179       initial = _get2.initial,
       
  9180       from = _get2.from,
       
  9181       enter = _get2.enter,
       
  9182       leave = _get2.leave,
       
  9183       update = _get2.update,
       
  9184       _get2$trail = _get2.trail,
       
  9185       trail = _get2$trail === void 0 ? 0 : _get2$trail,
       
  9186       unique = _get2.unique,
       
  9187       config = _get2.config,
       
  9188       _get2$order = _get2.order,
       
  9189       order = _get2$order === void 0 ? [ENTER, LEAVE, UPDATE] : _get2$order;
       
  9190 
       
  9191   var _get3 = get(prevProps),
       
  9192       _keys = _get3.keys,
       
  9193       _items = _get3.items;
       
  9194 
       
  9195   var current = _extends({}, state.current);
       
  9196 
       
  9197   var deleted = [].concat(state.deleted); // Compare next keys with current keys
       
  9198 
       
  9199   var currentKeys = Object.keys(current);
       
  9200   var currentSet = new Set(currentKeys);
       
  9201   var nextSet = new Set(keys);
       
  9202   var added = keys.filter(function (item) {
       
  9203     return !currentSet.has(item);
       
  9204   });
       
  9205   var removed = state.transitions.filter(function (item) {
       
  9206     return !item.destroyed && !nextSet.has(item.originalKey);
       
  9207   }).map(function (i) {
       
  9208     return i.originalKey;
       
  9209   });
       
  9210   var updated = keys.filter(function (item) {
       
  9211     return currentSet.has(item);
       
  9212   });
       
  9213   var delay = -trail;
       
  9214 
       
  9215   while (order.length) {
       
  9216     var changeType = order.shift();
       
  9217 
       
  9218     switch (changeType) {
       
  9219       case ENTER:
       
  9220         {
       
  9221           added.forEach(function (key, index) {
       
  9222             // In unique mode, remove fading out transitions if their key comes in again
       
  9223             if (unique && deleted.find(function (d) {
       
  9224               return d.originalKey === key;
       
  9225             })) deleted = deleted.filter(function (t) {
       
  9226               return t.originalKey !== key;
       
  9227             });
       
  9228             var keyIndex = keys.indexOf(key);
       
  9229             var item = items[keyIndex];
       
  9230             var slot = first && initial !== void 0 ? 'initial' : ENTER;
       
  9231             current[key] = {
       
  9232               slot: slot,
       
  9233               originalKey: key,
       
  9234               key: unique ? String(key) : guid++,
       
  9235               item: item,
       
  9236               trail: delay = delay + trail,
       
  9237               config: callProp(config, item, slot),
       
  9238               from: callProp(first ? initial !== void 0 ? initial || {} : from : from, item),
       
  9239               to: callProp(enter, item)
       
  9240             };
       
  9241           });
       
  9242           break;
       
  9243         }
       
  9244 
       
  9245       case LEAVE:
       
  9246         {
       
  9247           removed.forEach(function (key) {
       
  9248             var keyIndex = _keys.indexOf(key);
       
  9249 
       
  9250             var item = _items[keyIndex];
       
  9251             var slot = LEAVE;
       
  9252             deleted.unshift(_extends({}, current[key], {
       
  9253               slot: slot,
       
  9254               destroyed: true,
       
  9255               left: _keys[Math.max(0, keyIndex - 1)],
       
  9256               right: _keys[Math.min(_keys.length, keyIndex + 1)],
       
  9257               trail: delay = delay + trail,
       
  9258               config: callProp(config, item, slot),
       
  9259               to: callProp(leave, item)
       
  9260             }));
       
  9261             delete current[key];
       
  9262           });
       
  9263           break;
       
  9264         }
       
  9265 
       
  9266       case UPDATE:
       
  9267         {
       
  9268           updated.forEach(function (key) {
       
  9269             var keyIndex = keys.indexOf(key);
       
  9270             var item = items[keyIndex];
       
  9271             var slot = UPDATE;
       
  9272             current[key] = _extends({}, current[key], {
       
  9273               item: item,
       
  9274               slot: slot,
       
  9275               trail: delay = delay + trail,
       
  9276               config: callProp(config, item, slot),
       
  9277               to: callProp(update, item)
       
  9278             });
       
  9279           });
       
  9280           break;
       
  9281         }
       
  9282     }
       
  9283   }
       
  9284 
       
  9285   var out = keys.map(function (key) {
       
  9286     return current[key];
       
  9287   }); // This tries to restore order for deleted items by finding their last known siblings
       
  9288   // only using the left sibling to keep order placement consistent for all deleted items
       
  9289 
       
  9290   deleted.forEach(function (_ref10) {
       
  9291     var left = _ref10.left,
       
  9292         right = _ref10.right,
       
  9293         item = _objectWithoutPropertiesLoose(_ref10, ["left", "right"]);
       
  9294 
       
  9295     var pos; // Was it the element on the left, if yes, move there ...
       
  9296 
       
  9297     if ((pos = out.findIndex(function (t) {
       
  9298       return t.originalKey === left;
       
  9299     })) !== -1) pos += 1; // And if nothing else helps, move it to the start ¯\_(ツ)_/¯
       
  9300 
       
  9301     pos = Math.max(0, pos);
       
  9302     out = [].concat(out.slice(0, pos), [item], out.slice(pos));
       
  9303   });
       
  9304   return _extends({}, state, {
       
  9305     changed: added.length || removed.length || updated.length,
       
  9306     first: first && added.length === 0,
       
  9307     transitions: out,
       
  9308     current: current,
       
  9309     deleted: deleted,
       
  9310     prevProps: props
       
  9311   });
       
  9312 }
       
  9313 
       
  9314 var AnimatedStyle =
       
  9315 /*#__PURE__*/
       
  9316 function (_AnimatedObject) {
       
  9317   _inheritsLoose(AnimatedStyle, _AnimatedObject);
       
  9318 
       
  9319   function AnimatedStyle(style) {
       
  9320     var _this;
       
  9321 
       
  9322     if (style === void 0) {
       
  9323       style = {};
       
  9324     }
       
  9325 
       
  9326     _this = _AnimatedObject.call(this) || this;
       
  9327 
       
  9328     if (style.transform && !(style.transform instanceof Animated)) {
       
  9329       style = applyAnimatedValues.transform(style);
       
  9330     }
       
  9331 
       
  9332     _this.payload = style;
       
  9333     return _this;
       
  9334   }
       
  9335 
       
  9336   return AnimatedStyle;
       
  9337 }(AnimatedObject);
       
  9338 
       
  9339 // http://www.w3.org/TR/css3-color/#svg-color
       
  9340 var colors = {
       
  9341   transparent: 0x00000000,
       
  9342   aliceblue: 0xf0f8ffff,
       
  9343   antiquewhite: 0xfaebd7ff,
       
  9344   aqua: 0x00ffffff,
       
  9345   aquamarine: 0x7fffd4ff,
       
  9346   azure: 0xf0ffffff,
       
  9347   beige: 0xf5f5dcff,
       
  9348   bisque: 0xffe4c4ff,
       
  9349   black: 0x000000ff,
       
  9350   blanchedalmond: 0xffebcdff,
       
  9351   blue: 0x0000ffff,
       
  9352   blueviolet: 0x8a2be2ff,
       
  9353   brown: 0xa52a2aff,
       
  9354   burlywood: 0xdeb887ff,
       
  9355   burntsienna: 0xea7e5dff,
       
  9356   cadetblue: 0x5f9ea0ff,
       
  9357   chartreuse: 0x7fff00ff,
       
  9358   chocolate: 0xd2691eff,
       
  9359   coral: 0xff7f50ff,
       
  9360   cornflowerblue: 0x6495edff,
       
  9361   cornsilk: 0xfff8dcff,
       
  9362   crimson: 0xdc143cff,
       
  9363   cyan: 0x00ffffff,
       
  9364   darkblue: 0x00008bff,
       
  9365   darkcyan: 0x008b8bff,
       
  9366   darkgoldenrod: 0xb8860bff,
       
  9367   darkgray: 0xa9a9a9ff,
       
  9368   darkgreen: 0x006400ff,
       
  9369   darkgrey: 0xa9a9a9ff,
       
  9370   darkkhaki: 0xbdb76bff,
       
  9371   darkmagenta: 0x8b008bff,
       
  9372   darkolivegreen: 0x556b2fff,
       
  9373   darkorange: 0xff8c00ff,
       
  9374   darkorchid: 0x9932ccff,
       
  9375   darkred: 0x8b0000ff,
       
  9376   darksalmon: 0xe9967aff,
       
  9377   darkseagreen: 0x8fbc8fff,
       
  9378   darkslateblue: 0x483d8bff,
       
  9379   darkslategray: 0x2f4f4fff,
       
  9380   darkslategrey: 0x2f4f4fff,
       
  9381   darkturquoise: 0x00ced1ff,
       
  9382   darkviolet: 0x9400d3ff,
       
  9383   deeppink: 0xff1493ff,
       
  9384   deepskyblue: 0x00bfffff,
       
  9385   dimgray: 0x696969ff,
       
  9386   dimgrey: 0x696969ff,
       
  9387   dodgerblue: 0x1e90ffff,
       
  9388   firebrick: 0xb22222ff,
       
  9389   floralwhite: 0xfffaf0ff,
       
  9390   forestgreen: 0x228b22ff,
       
  9391   fuchsia: 0xff00ffff,
       
  9392   gainsboro: 0xdcdcdcff,
       
  9393   ghostwhite: 0xf8f8ffff,
       
  9394   gold: 0xffd700ff,
       
  9395   goldenrod: 0xdaa520ff,
       
  9396   gray: 0x808080ff,
       
  9397   green: 0x008000ff,
       
  9398   greenyellow: 0xadff2fff,
       
  9399   grey: 0x808080ff,
       
  9400   honeydew: 0xf0fff0ff,
       
  9401   hotpink: 0xff69b4ff,
       
  9402   indianred: 0xcd5c5cff,
       
  9403   indigo: 0x4b0082ff,
       
  9404   ivory: 0xfffff0ff,
       
  9405   khaki: 0xf0e68cff,
       
  9406   lavender: 0xe6e6faff,
       
  9407   lavenderblush: 0xfff0f5ff,
       
  9408   lawngreen: 0x7cfc00ff,
       
  9409   lemonchiffon: 0xfffacdff,
       
  9410   lightblue: 0xadd8e6ff,
       
  9411   lightcoral: 0xf08080ff,
       
  9412   lightcyan: 0xe0ffffff,
       
  9413   lightgoldenrodyellow: 0xfafad2ff,
       
  9414   lightgray: 0xd3d3d3ff,
       
  9415   lightgreen: 0x90ee90ff,
       
  9416   lightgrey: 0xd3d3d3ff,
       
  9417   lightpink: 0xffb6c1ff,
       
  9418   lightsalmon: 0xffa07aff,
       
  9419   lightseagreen: 0x20b2aaff,
       
  9420   lightskyblue: 0x87cefaff,
       
  9421   lightslategray: 0x778899ff,
       
  9422   lightslategrey: 0x778899ff,
       
  9423   lightsteelblue: 0xb0c4deff,
       
  9424   lightyellow: 0xffffe0ff,
       
  9425   lime: 0x00ff00ff,
       
  9426   limegreen: 0x32cd32ff,
       
  9427   linen: 0xfaf0e6ff,
       
  9428   magenta: 0xff00ffff,
       
  9429   maroon: 0x800000ff,
       
  9430   mediumaquamarine: 0x66cdaaff,
       
  9431   mediumblue: 0x0000cdff,
       
  9432   mediumorchid: 0xba55d3ff,
       
  9433   mediumpurple: 0x9370dbff,
       
  9434   mediumseagreen: 0x3cb371ff,
       
  9435   mediumslateblue: 0x7b68eeff,
       
  9436   mediumspringgreen: 0x00fa9aff,
       
  9437   mediumturquoise: 0x48d1ccff,
       
  9438   mediumvioletred: 0xc71585ff,
       
  9439   midnightblue: 0x191970ff,
       
  9440   mintcream: 0xf5fffaff,
       
  9441   mistyrose: 0xffe4e1ff,
       
  9442   moccasin: 0xffe4b5ff,
       
  9443   navajowhite: 0xffdeadff,
       
  9444   navy: 0x000080ff,
       
  9445   oldlace: 0xfdf5e6ff,
       
  9446   olive: 0x808000ff,
       
  9447   olivedrab: 0x6b8e23ff,
       
  9448   orange: 0xffa500ff,
       
  9449   orangered: 0xff4500ff,
       
  9450   orchid: 0xda70d6ff,
       
  9451   palegoldenrod: 0xeee8aaff,
       
  9452   palegreen: 0x98fb98ff,
       
  9453   paleturquoise: 0xafeeeeff,
       
  9454   palevioletred: 0xdb7093ff,
       
  9455   papayawhip: 0xffefd5ff,
       
  9456   peachpuff: 0xffdab9ff,
       
  9457   peru: 0xcd853fff,
       
  9458   pink: 0xffc0cbff,
       
  9459   plum: 0xdda0ddff,
       
  9460   powderblue: 0xb0e0e6ff,
       
  9461   purple: 0x800080ff,
       
  9462   rebeccapurple: 0x663399ff,
       
  9463   red: 0xff0000ff,
       
  9464   rosybrown: 0xbc8f8fff,
       
  9465   royalblue: 0x4169e1ff,
       
  9466   saddlebrown: 0x8b4513ff,
       
  9467   salmon: 0xfa8072ff,
       
  9468   sandybrown: 0xf4a460ff,
       
  9469   seagreen: 0x2e8b57ff,
       
  9470   seashell: 0xfff5eeff,
       
  9471   sienna: 0xa0522dff,
       
  9472   silver: 0xc0c0c0ff,
       
  9473   skyblue: 0x87ceebff,
       
  9474   slateblue: 0x6a5acdff,
       
  9475   slategray: 0x708090ff,
       
  9476   slategrey: 0x708090ff,
       
  9477   snow: 0xfffafaff,
       
  9478   springgreen: 0x00ff7fff,
       
  9479   steelblue: 0x4682b4ff,
       
  9480   tan: 0xd2b48cff,
       
  9481   teal: 0x008080ff,
       
  9482   thistle: 0xd8bfd8ff,
       
  9483   tomato: 0xff6347ff,
       
  9484   turquoise: 0x40e0d0ff,
       
  9485   violet: 0xee82eeff,
       
  9486   wheat: 0xf5deb3ff,
       
  9487   white: 0xffffffff,
       
  9488   whitesmoke: 0xf5f5f5ff,
       
  9489   yellow: 0xffff00ff,
       
  9490   yellowgreen: 0x9acd32ff
       
  9491 };
       
  9492 
       
  9493 // const INTEGER = '[-+]?\\d+';
       
  9494 var NUMBER = '[-+]?\\d*\\.?\\d+';
       
  9495 var PERCENTAGE = NUMBER + '%';
       
  9496 
       
  9497 function call() {
       
  9498   for (var _len = arguments.length, parts = new Array(_len), _key = 0; _key < _len; _key++) {
       
  9499     parts[_key] = arguments[_key];
       
  9500   }
       
  9501 
       
  9502   return '\\(\\s*(' + parts.join(')\\s*,\\s*(') + ')\\s*\\)';
       
  9503 }
       
  9504 
       
  9505 var rgb = new RegExp('rgb' + call(NUMBER, NUMBER, NUMBER));
       
  9506 var rgba = new RegExp('rgba' + call(NUMBER, NUMBER, NUMBER, NUMBER));
       
  9507 var hsl = new RegExp('hsl' + call(NUMBER, PERCENTAGE, PERCENTAGE));
       
  9508 var hsla = new RegExp('hsla' + call(NUMBER, PERCENTAGE, PERCENTAGE, NUMBER));
       
  9509 var hex3 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;
       
  9510 var hex4 = /^#([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/;
       
  9511 var hex6 = /^#([0-9a-fA-F]{6})$/;
       
  9512 var hex8 = /^#([0-9a-fA-F]{8})$/;
       
  9513 
       
  9514 /*
       
  9515 https://github.com/react-community/normalize-css-color
       
  9516 
       
  9517 BSD 3-Clause License
       
  9518 
       
  9519 Copyright (c) 2016, React Community
       
  9520 All rights reserved.
       
  9521 
       
  9522 Redistribution and use in source and binary forms, with or without
       
  9523 modification, are permitted provided that the following conditions are met:
       
  9524 
       
  9525 * Redistributions of source code must retain the above copyright notice, this
       
  9526   list of conditions and the following disclaimer.
       
  9527 
       
  9528 * Redistributions in binary form must reproduce the above copyright notice,
       
  9529   this list of conditions and the following disclaimer in the documentation
       
  9530   and/or other materials provided with the distribution.
       
  9531 
       
  9532 * Neither the name of the copyright holder nor the names of its
       
  9533   contributors may be used to endorse or promote products derived from
       
  9534   this software without specific prior written permission.
       
  9535 
       
  9536 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
       
  9537 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
       
  9538 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
       
  9539 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
       
  9540 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
       
  9541 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
       
  9542 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
       
  9543 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
       
  9544 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
       
  9545 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
       
  9546 */
       
  9547 function normalizeColor(color) {
       
  9548   var match;
       
  9549 
       
  9550   if (typeof color === 'number') {
       
  9551     return color >>> 0 === color && color >= 0 && color <= 0xffffffff ? color : null;
       
  9552   } // Ordered based on occurrences on Facebook codebase
       
  9553 
       
  9554 
       
  9555   if (match = hex6.exec(color)) return parseInt(match[1] + 'ff', 16) >>> 0;
       
  9556   if (colors.hasOwnProperty(color)) return colors[color];
       
  9557 
       
  9558   if (match = rgb.exec(color)) {
       
  9559     return (parse255(match[1]) << 24 | // r
       
  9560     parse255(match[2]) << 16 | // g
       
  9561     parse255(match[3]) << 8 | // b
       
  9562     0x000000ff) >>> // a
       
  9563     0;
       
  9564   }
       
  9565 
       
  9566   if (match = rgba.exec(color)) {
       
  9567     return (parse255(match[1]) << 24 | // r
       
  9568     parse255(match[2]) << 16 | // g
       
  9569     parse255(match[3]) << 8 | // b
       
  9570     parse1(match[4])) >>> // a
       
  9571     0;
       
  9572   }
       
  9573 
       
  9574   if (match = hex3.exec(color)) {
       
  9575     return parseInt(match[1] + match[1] + // r
       
  9576     match[2] + match[2] + // g
       
  9577     match[3] + match[3] + // b
       
  9578     'ff', // a
       
  9579     16) >>> 0;
       
  9580   } // https://drafts.csswg.org/css-color-4/#hex-notation
       
  9581 
       
  9582 
       
  9583   if (match = hex8.exec(color)) return parseInt(match[1], 16) >>> 0;
       
  9584 
       
  9585   if (match = hex4.exec(color)) {
       
  9586     return parseInt(match[1] + match[1] + // r
       
  9587     match[2] + match[2] + // g
       
  9588     match[3] + match[3] + // b
       
  9589     match[4] + match[4], // a
       
  9590     16) >>> 0;
       
  9591   }
       
  9592 
       
  9593   if (match = hsl.exec(color)) {
       
  9594     return (hslToRgb(parse360(match[1]), // h
       
  9595     parsePercentage(match[2]), // s
       
  9596     parsePercentage(match[3]) // l
       
  9597     ) | 0x000000ff) >>> // a
       
  9598     0;
       
  9599   }
       
  9600 
       
  9601   if (match = hsla.exec(color)) {
       
  9602     return (hslToRgb(parse360(match[1]), // h
       
  9603     parsePercentage(match[2]), // s
       
  9604     parsePercentage(match[3]) // l
       
  9605     ) | parse1(match[4])) >>> // a
       
  9606     0;
       
  9607   }
       
  9608 
       
  9609   return null;
       
  9610 }
       
  9611 
       
  9612 function hue2rgb(p, q, t) {
       
  9613   if (t < 0) t += 1;
       
  9614   if (t > 1) t -= 1;
       
  9615   if (t < 1 / 6) return p + (q - p) * 6 * t;
       
  9616   if (t < 1 / 2) return q;
       
  9617   if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;
       
  9618   return p;
       
  9619 }
       
  9620 
       
  9621 function hslToRgb(h, s, l) {
       
  9622   var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
       
  9623   var p = 2 * l - q;
       
  9624   var r = hue2rgb(p, q, h + 1 / 3);
       
  9625   var g = hue2rgb(p, q, h);
       
  9626   var b = hue2rgb(p, q, h - 1 / 3);
       
  9627   return Math.round(r * 255) << 24 | Math.round(g * 255) << 16 | Math.round(b * 255) << 8;
       
  9628 }
       
  9629 
       
  9630 function parse255(str) {
       
  9631   var int = parseInt(str, 10);
       
  9632   if (int < 0) return 0;
       
  9633   if (int > 255) return 255;
       
  9634   return int;
       
  9635 }
       
  9636 
       
  9637 function parse360(str) {
       
  9638   var int = parseFloat(str);
       
  9639   return (int % 360 + 360) % 360 / 360;
       
  9640 }
       
  9641 
       
  9642 function parse1(str) {
       
  9643   var num = parseFloat(str);
       
  9644   if (num < 0) return 0;
       
  9645   if (num > 1) return 255;
       
  9646   return Math.round(num * 255);
       
  9647 }
       
  9648 
       
  9649 function parsePercentage(str) {
       
  9650   // parseFloat conveniently ignores the final %
       
  9651   var int = parseFloat(str);
       
  9652   if (int < 0) return 0;
       
  9653   if (int > 100) return 1;
       
  9654   return int / 100;
       
  9655 }
       
  9656 
       
  9657 function colorToRgba(input) {
       
  9658   var int32Color = normalizeColor(input);
       
  9659   if (int32Color === null) return input;
       
  9660   int32Color = int32Color || 0;
       
  9661   var r = (int32Color & 0xff000000) >>> 24;
       
  9662   var g = (int32Color & 0x00ff0000) >>> 16;
       
  9663   var b = (int32Color & 0x0000ff00) >>> 8;
       
  9664   var a = (int32Color & 0x000000ff) / 255;
       
  9665   return "rgba(" + r + ", " + g + ", " + b + ", " + a + ")";
       
  9666 } // Problem: https://github.com/animatedjs/animated/pull/102
       
  9667 // Solution: https://stackoverflow.com/questions/638565/parsing-scientific-notation-sensibly/658662
       
  9668 
       
  9669 
       
  9670 var stringShapeRegex = /[+\-]?(?:0|[1-9]\d*)(?:\.\d*)?(?:[eE][+\-]?\d+)?/g; // Covers rgb, rgba, hsl, hsla
       
  9671 // Taken from https://gist.github.com/olmokramer/82ccce673f86db7cda5e
       
  9672 
       
  9673 var colorRegex = /(#(?:[0-9a-f]{2}){2,4}|(#[0-9a-f]{3})|(rgb|hsl)a?\((-?\d+%?[,\s]+){2,3}\s*[\d\.]+%?\))/gi; // Covers color names (transparent, blue, etc.)
       
  9674 
       
  9675 var colorNamesRegex = new RegExp("(" + Object.keys(colors).join('|') + ")", 'g');
       
  9676 /**
       
  9677  * Supports string shapes by extracting numbers so new values can be computed,
       
  9678  * and recombines those values into new strings of the same shape.  Supports
       
  9679  * things like:
       
  9680  *
       
  9681  *   rgba(123, 42, 99, 0.36)           // colors
       
  9682  *   -45deg                            // values with units
       
  9683  *   0 2px 2px 0px rgba(0, 0, 0, 0.12) // box shadows
       
  9684  */
       
  9685 
       
  9686 var createStringInterpolator = function createStringInterpolator(config) {
       
  9687   // Replace colors with rgba
       
  9688   var outputRange = config.output.map(function (rangeValue) {
       
  9689     return rangeValue.replace(colorRegex, colorToRgba);
       
  9690   }).map(function (rangeValue) {
       
  9691     return rangeValue.replace(colorNamesRegex, colorToRgba);
       
  9692   });
       
  9693   var outputRanges = outputRange[0].match(stringShapeRegex).map(function () {
       
  9694     return [];
       
  9695   });
       
  9696   outputRange.forEach(function (value) {
       
  9697     value.match(stringShapeRegex).forEach(function (number, i) {
       
  9698       return outputRanges[i].push(+number);
       
  9699     });
       
  9700   });
       
  9701   var interpolations = outputRange[0].match(stringShapeRegex).map(function (_value, i) {
       
  9702     return createInterpolator(_extends({}, config, {
       
  9703       output: outputRanges[i]
       
  9704     }));
       
  9705   });
       
  9706   return function (input) {
       
  9707     var i = 0;
       
  9708     return outputRange[0] // 'rgba(0, 100, 200, 0)'
       
  9709     // ->
       
  9710     // 'rgba(${interpolations[0](input)}, ${interpolations[1](input)}, ...'
       
  9711     .replace(stringShapeRegex, function () {
       
  9712       return interpolations[i++](input);
       
  9713     }) // rgba requires that the r,g,b are integers.... so we want to round them, but we *dont* want to
       
  9714     // round the opacity (4th column).
       
  9715     .replace(/rgba\(([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+), ([0-9\.-]+)\)/gi, function (_, p1, p2, p3, p4) {
       
  9716       return "rgba(" + Math.round(p1) + ", " + Math.round(p2) + ", " + Math.round(p3) + ", " + p4 + ")";
       
  9717     });
       
  9718   };
       
  9719 };
       
  9720 
       
  9721 var isUnitlessNumber = {
       
  9722   animationIterationCount: true,
       
  9723   borderImageOutset: true,
       
  9724   borderImageSlice: true,
       
  9725   borderImageWidth: true,
       
  9726   boxFlex: true,
       
  9727   boxFlexGroup: true,
       
  9728   boxOrdinalGroup: true,
       
  9729   columnCount: true,
       
  9730   columns: true,
       
  9731   flex: true,
       
  9732   flexGrow: true,
       
  9733   flexPositive: true,
       
  9734   flexShrink: true,
       
  9735   flexNegative: true,
       
  9736   flexOrder: true,
       
  9737   gridRow: true,
       
  9738   gridRowEnd: true,
       
  9739   gridRowSpan: true,
       
  9740   gridRowStart: true,
       
  9741   gridColumn: true,
       
  9742   gridColumnEnd: true,
       
  9743   gridColumnSpan: true,
       
  9744   gridColumnStart: true,
       
  9745   fontWeight: true,
       
  9746   lineClamp: true,
       
  9747   lineHeight: true,
       
  9748   opacity: true,
       
  9749   order: true,
       
  9750   orphans: true,
       
  9751   tabSize: true,
       
  9752   widows: true,
       
  9753   zIndex: true,
       
  9754   zoom: true,
       
  9755   // SVG-related properties
       
  9756   fillOpacity: true,
       
  9757   floodOpacity: true,
       
  9758   stopOpacity: true,
       
  9759   strokeDasharray: true,
       
  9760   strokeDashoffset: true,
       
  9761   strokeMiterlimit: true,
       
  9762   strokeOpacity: true,
       
  9763   strokeWidth: true
       
  9764 };
       
  9765 
       
  9766 var prefixKey = function prefixKey(prefix, key) {
       
  9767   return prefix + key.charAt(0).toUpperCase() + key.substring(1);
       
  9768 };
       
  9769 
       
  9770 var prefixes = ['Webkit', 'Ms', 'Moz', 'O'];
       
  9771 isUnitlessNumber = Object.keys(isUnitlessNumber).reduce(function (acc, prop) {
       
  9772   prefixes.forEach(function (prefix) {
       
  9773     return acc[prefixKey(prefix, prop)] = acc[prop];
       
  9774   });
       
  9775   return acc;
       
  9776 }, isUnitlessNumber);
       
  9777 
       
  9778 function dangerousStyleValue(name, value, isCustomProperty) {
       
  9779   if (value == null || typeof value === 'boolean' || value === '') return '';
       
  9780   if (!isCustomProperty && typeof value === 'number' && value !== 0 && !(isUnitlessNumber.hasOwnProperty(name) && isUnitlessNumber[name])) return value + 'px'; // Presumes implicit 'px' suffix for unitless numbers
       
  9781 
       
  9782   return ('' + value).trim();
       
  9783 }
       
  9784 
       
  9785 var attributeCache = {};
       
  9786 injectCreateAnimatedStyle(function (style) {
       
  9787   return new AnimatedStyle(style);
       
  9788 });
       
  9789 injectDefaultElement('div');
       
  9790 injectStringInterpolator(createStringInterpolator);
       
  9791 injectColorNames(colors);
       
  9792 injectApplyAnimatedValues(function (instance, props) {
       
  9793   if (instance.nodeType && instance.setAttribute !== undefined) {
       
  9794     var style = props.style,
       
  9795         children = props.children,
       
  9796         scrollTop = props.scrollTop,
       
  9797         scrollLeft = props.scrollLeft,
       
  9798         attributes = _objectWithoutPropertiesLoose(props, ["style", "children", "scrollTop", "scrollLeft"]);
       
  9799 
       
  9800     var filter = instance.nodeName === 'filter' || instance.parentNode && instance.parentNode.nodeName === 'filter';
       
  9801     if (scrollTop !== void 0) instance.scrollTop = scrollTop;
       
  9802     if (scrollLeft !== void 0) instance.scrollLeft = scrollLeft; // Set textContent, if children is an animatable value
       
  9803 
       
  9804     if (children !== void 0) instance.textContent = children; // Set styles ...
       
  9805 
       
  9806     for (var styleName in style) {
       
  9807       if (!style.hasOwnProperty(styleName)) continue;
       
  9808       var isCustomProperty = styleName.indexOf('--') === 0;
       
  9809       var styleValue = dangerousStyleValue(styleName, style[styleName], isCustomProperty);
       
  9810       if (styleName === 'float') styleName = 'cssFloat';
       
  9811       if (isCustomProperty) instance.style.setProperty(styleName, styleValue);else instance.style[styleName] = styleValue;
       
  9812     } // Set attributes ...
       
  9813 
       
  9814 
       
  9815     for (var name in attributes) {
       
  9816       // Attributes are written in dash case
       
  9817       var dashCase = filter ? name : attributeCache[name] || (attributeCache[name] = name.replace(/([A-Z])/g, function (n) {
       
  9818         return '-' + n.toLowerCase();
       
  9819       }));
       
  9820       if (typeof instance.getAttribute(dashCase) !== 'undefined') instance.setAttribute(dashCase, attributes[name]);
       
  9821     }
       
  9822 
       
  9823     return;
       
  9824   } else return false;
       
  9825 }, function (style) {
       
  9826   return style;
       
  9827 });
       
  9828 
       
  9829 var domElements = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr', // SVG
       
  9830 'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];
       
  9831 // Extend animated with all the available THREE elements
       
  9832 var apply = merge(createAnimatedComponent, false);
       
  9833 var extendedAnimated = apply(domElements);
       
  9834 
       
  9835 exports.apply = apply;
       
  9836 exports.config = config;
       
  9837 exports.update = update;
       
  9838 exports.animated = extendedAnimated;
       
  9839 exports.a = extendedAnimated;
       
  9840 exports.interpolate = interpolate$1;
       
  9841 exports.Globals = Globals;
       
  9842 exports.useSpring = useSpring;
       
  9843 exports.useTrail = useTrail;
       
  9844 exports.useTransition = useTransition;
       
  9845 exports.useChain = useChain;
       
  9846 exports.useSprings = useSprings;
       
  9847 
       
  9848 
       
  9849 /***/ }),
       
  9850 /* 114 */,
       
  9851 /* 115 */,
       
  9852 /* 116 */
       
  9853 /***/ (function(module, exports) {
       
  9854 
       
  9855 //
       
  9856 // Main
       
  9857 //
       
  9858 
       
  9859 function memoize (fn, options) {
       
  9860   var cache = options && options.cache
       
  9861     ? options.cache
       
  9862     : cacheDefault
       
  9863 
       
  9864   var serializer = options && options.serializer
       
  9865     ? options.serializer
       
  9866     : serializerDefault
       
  9867 
       
  9868   var strategy = options && options.strategy
       
  9869     ? options.strategy
       
  9870     : strategyDefault
       
  9871 
       
  9872   return strategy(fn, {
       
  9873     cache: cache,
       
  9874     serializer: serializer
       
  9875   })
       
  9876 }
       
  9877 
       
  9878 //
       
  9879 // Strategy
       
  9880 //
       
  9881 
       
  9882 function isPrimitive (value) {
       
  9883   return value == null || typeof value === 'number' || typeof value === 'boolean' // || typeof value === "string" 'unsafe' primitive for our needs
       
  9884 }
       
  9885 
       
  9886 function monadic (fn, cache, serializer, arg) {
       
  9887   var cacheKey = isPrimitive(arg) ? arg : serializer(arg)
       
  9888 
       
  9889   var computedValue = cache.get(cacheKey)
       
  9890   if (typeof computedValue === 'undefined') {
       
  9891     computedValue = fn.call(this, arg)
       
  9892     cache.set(cacheKey, computedValue)
       
  9893   }
       
  9894 
       
  9895   return computedValue
       
  9896 }
       
  9897 
       
  9898 function variadic (fn, cache, serializer) {
       
  9899   var args = Array.prototype.slice.call(arguments, 3)
       
  9900   var cacheKey = serializer(args)
       
  9901 
       
  9902   var computedValue = cache.get(cacheKey)
       
  9903   if (typeof computedValue === 'undefined') {
       
  9904     computedValue = fn.apply(this, args)
       
  9905     cache.set(cacheKey, computedValue)
       
  9906   }
       
  9907 
       
  9908   return computedValue
       
  9909 }
       
  9910 
       
  9911 function assemble (fn, context, strategy, cache, serialize) {
       
  9912   return strategy.bind(
       
  9913     context,
       
  9914     fn,
       
  9915     cache,
       
  9916     serialize
       
  9917   )
       
  9918 }
       
  9919 
       
  9920 function strategyDefault (fn, options) {
       
  9921   var strategy = fn.length === 1 ? monadic : variadic
       
  9922 
       
  9923   return assemble(
       
  9924     fn,
       
  9925     this,
       
  9926     strategy,
       
  9927     options.cache.create(),
       
  9928     options.serializer
       
  9929   )
       
  9930 }
       
  9931 
       
  9932 function strategyVariadic (fn, options) {
       
  9933   var strategy = variadic
       
  9934 
       
  9935   return assemble(
       
  9936     fn,
       
  9937     this,
       
  9938     strategy,
       
  9939     options.cache.create(),
       
  9940     options.serializer
       
  9941   )
       
  9942 }
       
  9943 
       
  9944 function strategyMonadic (fn, options) {
       
  9945   var strategy = monadic
       
  9946 
       
  9947   return assemble(
       
  9948     fn,
       
  9949     this,
       
  9950     strategy,
       
  9951     options.cache.create(),
       
  9952     options.serializer
       
  9953   )
       
  9954 }
       
  9955 
       
  9956 //
       
  9957 // Serializer
       
  9958 //
       
  9959 
       
  9960 function serializerDefault () {
       
  9961   return JSON.stringify(arguments)
       
  9962 }
       
  9963 
       
  9964 //
       
  9965 // Cache
       
  9966 //
       
  9967 
       
  9968 function ObjectWithoutPrototypeCache () {
       
  9969   this.cache = Object.create(null)
       
  9970 }
       
  9971 
       
  9972 ObjectWithoutPrototypeCache.prototype.has = function (key) {
       
  9973   return (key in this.cache)
       
  9974 }
       
  9975 
       
  9976 ObjectWithoutPrototypeCache.prototype.get = function (key) {
       
  9977   return this.cache[key]
       
  9978 }
       
  9979 
       
  9980 ObjectWithoutPrototypeCache.prototype.set = function (key, value) {
       
  9981   this.cache[key] = value
       
  9982 }
       
  9983 
       
  9984 var cacheDefault = {
       
  9985   create: function create () {
       
  9986     return new ObjectWithoutPrototypeCache()
       
  9987   }
       
  9988 }
       
  9989 
       
  9990 //
       
  9991 // API
       
  9992 //
       
  9993 
       
  9994 module.exports = memoize
       
  9995 module.exports.strategies = {
       
  9996   variadic: strategyVariadic,
       
  9997   monadic: strategyMonadic
       
  9998 }
       
  9999 
       
 10000 
       
 10001 /***/ }),
       
 10002 /* 117 */
       
 10003 /***/ (function(module, exports) {
       
 10004 
       
 10005 // shim for using process in browser
       
 10006 var process = module.exports = {};
       
 10007 
       
 10008 // cached from whatever global is present so that test runners that stub it
       
 10009 // don't break things.  But we need to wrap it in a try catch in case it is
       
 10010 // wrapped in strict mode code which doesn't define any globals.  It's inside a
       
 10011 // function because try/catches deoptimize in certain engines.
       
 10012 
       
 10013 var cachedSetTimeout;
       
 10014 var cachedClearTimeout;
       
 10015 
       
 10016 function defaultSetTimout() {
       
 10017     throw new Error('setTimeout has not been defined');
       
 10018 }
       
 10019 function defaultClearTimeout () {
       
 10020     throw new Error('clearTimeout has not been defined');
       
 10021 }
       
 10022 (function () {
       
 10023     try {
       
 10024         if (typeof setTimeout === 'function') {
       
 10025             cachedSetTimeout = setTimeout;
       
 10026         } else {
       
 10027             cachedSetTimeout = defaultSetTimout;
       
 10028         }
       
 10029     } catch (e) {
       
 10030         cachedSetTimeout = defaultSetTimout;
       
 10031     }
       
 10032     try {
       
 10033         if (typeof clearTimeout === 'function') {
       
 10034             cachedClearTimeout = clearTimeout;
       
 10035         } else {
       
 10036             cachedClearTimeout = defaultClearTimeout;
       
 10037         }
       
 10038     } catch (e) {
       
 10039         cachedClearTimeout = defaultClearTimeout;
       
 10040     }
       
 10041 } ())
       
 10042 function runTimeout(fun) {
       
 10043     if (cachedSetTimeout === setTimeout) {
       
 10044         //normal enviroments in sane situations
       
 10045         return setTimeout(fun, 0);
       
 10046     }
       
 10047     // if setTimeout wasn't available but was latter defined
       
 10048     if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
       
 10049         cachedSetTimeout = setTimeout;
       
 10050         return setTimeout(fun, 0);
       
 10051     }
       
 10052     try {
       
 10053         // when when somebody has screwed with setTimeout but no I.E. maddness
       
 10054         return cachedSetTimeout(fun, 0);
       
 10055     } catch(e){
       
 10056         try {
       
 10057             // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
       
 10058             return cachedSetTimeout.call(null, fun, 0);
       
 10059         } catch(e){
       
 10060             // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
       
 10061             return cachedSetTimeout.call(this, fun, 0);
       
 10062         }
       
 10063     }
       
 10064 
       
 10065 
       
 10066 }
       
 10067 function runClearTimeout(marker) {
       
 10068     if (cachedClearTimeout === clearTimeout) {
       
 10069         //normal enviroments in sane situations
       
 10070         return clearTimeout(marker);
       
 10071     }
       
 10072     // if clearTimeout wasn't available but was latter defined
       
 10073     if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
       
 10074         cachedClearTimeout = clearTimeout;
       
 10075         return clearTimeout(marker);
       
 10076     }
       
 10077     try {
       
 10078         // when when somebody has screwed with setTimeout but no I.E. maddness
       
 10079         return cachedClearTimeout(marker);
       
 10080     } catch (e){
       
 10081         try {
       
 10082             // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally
       
 10083             return cachedClearTimeout.call(null, marker);
       
 10084         } catch (e){
       
 10085             // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
       
 10086             // Some versions of I.E. have different rules for clearTimeout vs setTimeout
       
 10087             return cachedClearTimeout.call(this, marker);
       
 10088         }
       
 10089     }
       
 10090 
       
 10091 
       
 10092 
       
 10093 }
       
 10094 var queue = [];
       
 10095 var draining = false;
       
 10096 var currentQueue;
       
 10097 var queueIndex = -1;
       
 10098 
       
 10099 function cleanUpNextTick() {
       
 10100     if (!draining || !currentQueue) {
       
 10101         return;
       
 10102     }
       
 10103     draining = false;
       
 10104     if (currentQueue.length) {
       
 10105         queue = currentQueue.concat(queue);
       
 10106     } else {
       
 10107         queueIndex = -1;
       
 10108     }
       
 10109     if (queue.length) {
       
 10110         drainQueue();
       
 10111     }
       
 10112 }
       
 10113 
       
 10114 function drainQueue() {
       
 10115     if (draining) {
       
 10116         return;
       
 10117     }
       
 10118     var timeout = runTimeout(cleanUpNextTick);
       
 10119     draining = true;
       
 10120 
       
 10121     var len = queue.length;
       
 10122     while(len) {
       
 10123         currentQueue = queue;
       
 10124         queue = [];
       
 10125         while (++queueIndex < len) {
       
 10126             if (currentQueue) {
       
 10127                 currentQueue[queueIndex].run();
       
 10128             }
       
 10129         }
       
 10130         queueIndex = -1;
       
 10131         len = queue.length;
       
 10132     }
       
 10133     currentQueue = null;
       
 10134     draining = false;
       
 10135     runClearTimeout(timeout);
       
 10136 }
       
 10137 
       
 10138 process.nextTick = function (fun) {
       
 10139     var args = new Array(arguments.length - 1);
       
 10140     if (arguments.length > 1) {
       
 10141         for (var i = 1; i < arguments.length; i++) {
       
 10142             args[i - 1] = arguments[i];
       
 10143         }
       
 10144     }
       
 10145     queue.push(new Item(fun, args));
       
 10146     if (queue.length === 1 && !draining) {
       
 10147         runTimeout(drainQueue);
       
 10148     }
       
 10149 };
       
 10150 
       
 10151 // v8 likes predictible objects
       
 10152 function Item(fun, array) {
       
 10153     this.fun = fun;
       
 10154     this.array = array;
       
 10155 }
       
 10156 Item.prototype.run = function () {
       
 10157     this.fun.apply(null, this.array);
       
 10158 };
       
 10159 process.title = 'browser';
       
 10160 process.browser = true;
       
 10161 process.env = {};
       
 10162 process.argv = [];
       
 10163 process.version = ''; // empty string to avoid regexp issues
       
 10164 process.versions = {};
       
 10165 
       
 10166 function noop() {}
       
 10167 
       
 10168 process.on = noop;
       
 10169 process.addListener = noop;
       
 10170 process.once = noop;
       
 10171 process.off = noop;
       
 10172 process.removeListener = noop;
       
 10173 process.removeAllListeners = noop;
       
 10174 process.emit = noop;
       
 10175 process.prependListener = noop;
       
 10176 process.prependOnceListener = noop;
       
 10177 
       
 10178 process.listeners = function (name) { return [] }
       
 10179 
       
 10180 process.binding = function (name) {
       
 10181     throw new Error('process.binding is not supported');
       
 10182 };
       
 10183 
       
 10184 process.cwd = function () { return '/' };
       
 10185 process.chdir = function (dir) {
       
 10186     throw new Error('process.chdir is not supported');
       
 10187 };
       
 10188 process.umask = function() { return 0; };
       
 10189 
       
 10190 
       
 10191 /***/ }),
       
 10192 /* 118 */
       
 10193 /***/ (function(module, exports, __webpack_require__) {
       
 10194 
       
 10195 "use strict";
       
 10196 
       
 10197 
       
 10198 var implementation = __webpack_require__(312);
       
 10199 
       
 10200 module.exports = Function.prototype.bind || implementation;
       
 10201 
       
 10202 
       
 10203 /***/ }),
       
 10204 /* 119 */
       
 10205 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 10206 
       
 10207 "use strict";
       
 10208 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Composite; });
       
 10209 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return useComposite; });
       
 10210 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
 10211 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(49);
       
 10212 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48);
       
 10213 /* harmony import */ var _Box_Box_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(67);
       
 10214 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(13);
       
 10215 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
       
 10216 /* harmony import */ var reakit_utils_useForkRef__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(63);
       
 10217 /* harmony import */ var reakit_warning__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(80);
       
 10218 /* harmony import */ var reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(46);
       
 10219 /* harmony import */ var reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(53);
       
 10220 /* harmony import */ var reakit_utils_getActiveElement__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(57);
       
 10221 /* harmony import */ var _Tabbable_Tabbable_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(73);
       
 10222 /* harmony import */ var reakit_system_useCreateElement__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(78);
       
 10223 /* harmony import */ var reakit_utils_createOnKeyDown__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(82);
       
 10224 /* harmony import */ var reakit_utils_getDocument__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(47);
       
 10225 /* harmony import */ var reakit_utils_fireEvent__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(94);
       
 10226 /* harmony import */ var reakit_utils_fireKeyboardEvent__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(102);
       
 10227 /* harmony import */ var _CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(51);
       
 10228 
       
 10229 
       
 10230 
       
 10231 
       
 10232 
       
 10233 
       
 10234 
       
 10235 
       
 10236 
       
 10237 
       
 10238 
       
 10239 
       
 10240 
       
 10241 
       
 10242 
       
 10243 
       
 10244 
       
 10245 
       
 10246 
       
 10247 
       
 10248 
       
 10249 
       
 10250 
       
 10251 
       
 10252 
       
 10253 
       
 10254 
       
 10255 
       
 10256 var isIE11 = typeof window !== "undefined" && "msCrypto" in window;
       
 10257 function getNextActiveElementOnBlur(event) {
       
 10258   // IE 11 doesn't support event.relatedTarget on blur.
       
 10259   // document.activeElement points the the next active element.
       
 10260   // On modern browsers, document.activeElement points to the current target.
       
 10261   if (isIE11) {
       
 10262     var activeElement = Object(reakit_utils_getActiveElement__WEBPACK_IMPORTED_MODULE_9__[/* getActiveElement */ "a"])(event.target);
       
 10263     return activeElement;
       
 10264   }
       
 10265 
       
 10266   return event.relatedTarget;
       
 10267 }
       
 10268 
       
 10269 var validCompositeRoles = ["combobox", "grid", "tablist", "listbox", "menu", "menubar", "toolbar", "radiogroup", "tree", "treegrid"];
       
 10270 var isIE11$1 = typeof window !== "undefined" && "msCrypto" in window;
       
 10271 
       
 10272 function canProxyKeyboardEvent(event) {
       
 10273   if (!Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_8__[/* isSelfTarget */ "a"])(event)) return false;
       
 10274   if (event.metaKey) return false;
       
 10275   if (event.key === "Tab") return false;
       
 10276   return true;
       
 10277 }
       
 10278 
       
 10279 function useKeyboardEventProxy(virtual, currentItem, htmlEventHandler) {
       
 10280   var eventHandlerRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_7__[/* useLiveRef */ "a"])(htmlEventHandler);
       
 10281   return Object(react__WEBPACK_IMPORTED_MODULE_4__["useCallback"])(function (event) {
       
 10282     var _eventHandlerRef$curr;
       
 10283 
       
 10284     if (virtual && canProxyKeyboardEvent(event)) {
       
 10285       var currentElement = currentItem === null || currentItem === void 0 ? void 0 : currentItem.ref.current;
       
 10286 
       
 10287       if (currentElement) {
       
 10288         Object(reakit_utils_fireKeyboardEvent__WEBPACK_IMPORTED_MODULE_15__[/* fireKeyboardEvent */ "a"])(currentElement, event.type, event); // The event will be triggered on the composite item and then
       
 10289         // propagated up to this composite element again, so we can pretend
       
 10290         // that it wasn't called on this component in the first place.
       
 10291 
       
 10292         if (event.currentTarget.contains(currentElement)) {
       
 10293           event.stopPropagation();
       
 10294           event.preventDefault();
       
 10295           return;
       
 10296         }
       
 10297       }
       
 10298     }
       
 10299 
       
 10300     (_eventHandlerRef$curr = eventHandlerRef.current) === null || _eventHandlerRef$curr === void 0 ? void 0 : _eventHandlerRef$curr.call(eventHandlerRef, event);
       
 10301   }, [virtual, currentItem]);
       
 10302 } // istanbul ignore next
       
 10303 
       
 10304 
       
 10305 function useActiveElementRef(elementRef) {
       
 10306   var activeElementRef = Object(react__WEBPACK_IMPORTED_MODULE_4__["useRef"])(null);
       
 10307   Object(react__WEBPACK_IMPORTED_MODULE_4__["useEffect"])(function () {
       
 10308     var document = Object(reakit_utils_getDocument__WEBPACK_IMPORTED_MODULE_13__[/* getDocument */ "a"])(elementRef.current);
       
 10309 
       
 10310     var onFocus = function onFocus(event) {
       
 10311       var target = event.target;
       
 10312       activeElementRef.current = target;
       
 10313     };
       
 10314 
       
 10315     document.addEventListener("focus", onFocus, true);
       
 10316     return function () {
       
 10317       document.removeEventListener("focus", onFocus, true);
       
 10318     };
       
 10319   }, []);
       
 10320   return activeElementRef;
       
 10321 }
       
 10322 
       
 10323 function findFirstEnabledItemInTheLastRow(items) {
       
 10324   return Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__["a"])(Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__["b"])(Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__[/* r */ "f"])(Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__["c"])(items))));
       
 10325 }
       
 10326 
       
 10327 function isItem(items, element) {
       
 10328   return items === null || items === void 0 ? void 0 : items.some(function (item) {
       
 10329     return !!element && item.ref.current === element;
       
 10330   });
       
 10331 }
       
 10332 
       
 10333 var useComposite = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__[/* createHook */ "a"])({
       
 10334   name: "Composite",
       
 10335   compose: [_Tabbable_Tabbable_js__WEBPACK_IMPORTED_MODULE_10__[/* useTabbable */ "a"]],
       
 10336   useState: _CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__[/* u */ "g"],
       
 10337   useOptions: function useOptions(options) {
       
 10338     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, options), {}, {
       
 10339       currentId: Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__[/* g */ "e"])(options)
       
 10340     });
       
 10341   },
       
 10342   useProps: function useProps(options, _ref) {
       
 10343     var htmlRef = _ref.ref,
       
 10344         htmlOnFocus = _ref.onFocus,
       
 10345         htmlOnBlur = _ref.onBlur,
       
 10346         htmlOnKeyDown = _ref.onKeyDown,
       
 10347         htmlOnKeyUp = _ref.onKeyUp,
       
 10348         htmlProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_ref, ["ref", "onFocus", "onBlur", "onKeyDown", "onKeyUp"]);
       
 10349 
       
 10350     var ref = Object(react__WEBPACK_IMPORTED_MODULE_4__["useRef"])(null);
       
 10351     var currentItem = Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_16__[/* f */ "d"])(options.items, options.currentId);
       
 10352     var previousItem = Object(react__WEBPACK_IMPORTED_MODULE_4__["useRef"])(undefined);
       
 10353     var onFocusRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_7__[/* useLiveRef */ "a"])(htmlOnFocus);
       
 10354     var onBlurRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_7__[/* useLiveRef */ "a"])(htmlOnBlur); // IE 11 doesn't support event.relatedTarget, so we use the active element
       
 10355     // ref instead.
       
 10356 
       
 10357     var activeElementRef = isIE11$1 ? useActiveElementRef(ref) : undefined;
       
 10358     Object(react__WEBPACK_IMPORTED_MODULE_4__["useEffect"])(function () {
       
 10359       var element = ref.current;
       
 10360 
       
 10361       if (!element) {
       
 10362          false ? undefined : void 0;
       
 10363         return;
       
 10364       }
       
 10365 
       
 10366       if (options.unstable_moves && !currentItem) {
       
 10367         // If composite.move(null) has been called, the composite container
       
 10368         // will receive focus.
       
 10369         element.focus();
       
 10370       }
       
 10371     }, [options.unstable_moves, currentItem]);
       
 10372     var onKeyDown = useKeyboardEventProxy(options.unstable_virtual, currentItem, htmlOnKeyDown);
       
 10373     var onKeyUp = useKeyboardEventProxy(options.unstable_virtual, currentItem, htmlOnKeyUp);
       
 10374     var onFocus = Object(react__WEBPACK_IMPORTED_MODULE_4__["useCallback"])(function (event) {
       
 10375       var _onFocusRef$current2;
       
 10376 
       
 10377       if (options.unstable_virtual) {
       
 10378         // IE11 doesn't support event.relatedTarget, so we use the active
       
 10379         // element ref instead.
       
 10380         var previousActiveElement = (activeElementRef === null || activeElementRef === void 0 ? void 0 : activeElementRef.current) || event.relatedTarget;
       
 10381         var previousActiveElementWasItem = isItem(options.items, previousActiveElement);
       
 10382 
       
 10383         if (Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_8__[/* isSelfTarget */ "a"])(event) && !previousActiveElementWasItem) {
       
 10384           var _onFocusRef$current, _currentItem$ref$curr;
       
 10385 
       
 10386           // This means that the composite element has been focused while the
       
 10387           // composite item has not. For example, by clicking on the
       
 10388           // composite element without touching any item, or by tabbing into
       
 10389           // the composite element. In this case, we want to trigger focus on
       
 10390           // the item, just like it would happen with roving tabindex.
       
 10391           // When it receives focus, the composite item will put focus back
       
 10392           // on the composite element, in which case hasItemWithFocus will be
       
 10393           // true.
       
 10394           (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);
       
 10395           currentItem === null || currentItem === void 0 ? void 0 : (_currentItem$ref$curr = currentItem.ref.current) === null || _currentItem$ref$curr === void 0 ? void 0 : _currentItem$ref$curr.focus();
       
 10396           return;
       
 10397         }
       
 10398 
       
 10399         if (previousActiveElementWasItem) {
       
 10400           // Composite has been focused as a result of an item receiving
       
 10401           // focus. The composite item will move focus back to the composite
       
 10402           // container. In this case, we don't want to propagate this
       
 10403           // additional event nor call the onFocus handler passed to
       
 10404           // <Composite onFocus={...} /> (htmlOnFocus). Unless users add DOM
       
 10405           // event handlers to the composite element directly, this will be
       
 10406           // like this event has never existed.
       
 10407           event.stopPropagation();
       
 10408           return;
       
 10409         }
       
 10410       } else if (Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_8__[/* isSelfTarget */ "a"])(event)) {
       
 10411         var _options$setCurrentId;
       
 10412 
       
 10413         // When the roving tabindex composite gets intentionally focused (for
       
 10414         // example, by clicking directly on it, and not on an item), we make
       
 10415         // sure to set the current id to null (which means the composite
       
 10416         // itself is focused).
       
 10417         (_options$setCurrentId = options.setCurrentId) === null || _options$setCurrentId === void 0 ? void 0 : _options$setCurrentId.call(options, null);
       
 10418       }
       
 10419 
       
 10420       (_onFocusRef$current2 = onFocusRef.current) === null || _onFocusRef$current2 === void 0 ? void 0 : _onFocusRef$current2.call(onFocusRef, event);
       
 10421     }, [options.unstable_virtual, options.items, currentItem, options.setCurrentId]);
       
 10422     var onBlur = Object(react__WEBPACK_IMPORTED_MODULE_4__["useCallback"])(function (event) {
       
 10423       var _onBlurRef$current;
       
 10424 
       
 10425       // When virtual is set to true, we move focus from the composite
       
 10426       // container (this component) to the composite item that is being
       
 10427       // selected. Then we move focus back to the composite container. This
       
 10428       // is so we can provide the same API as the roving tabindex method,
       
 10429       // which means people can attach onFocus/onBlur handlers on the
       
 10430       // CompositeItem component regardless of whether it's virtual or not.
       
 10431       // This sequence of blurring and focusing items and composite may be
       
 10432       // confusing, so we ignore intermediate focus and blurs by stopping its
       
 10433       // propagation and not calling the passed onBlur handler (htmlOnBlur).
       
 10434       if (options.unstable_virtual) {
       
 10435         var targetIsItem = isItem(options.items, event.target);
       
 10436         var nextActiveElement = getNextActiveElementOnBlur(event);
       
 10437         var nextActiveElementIsItem = isItem(options.items, nextActiveElement);
       
 10438 
       
 10439         if (Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_8__[/* isSelfTarget */ "a"])(event) && nextActiveElementIsItem) {
       
 10440           var _previousItem$current;
       
 10441 
       
 10442           // This is an intermediate blur event: blurring the composite
       
 10443           // container to focus an item (nextActiveElement). We ignore this
       
 10444           // event.
       
 10445           if ((_previousItem$current = previousItem.current) === null || _previousItem$current === void 0 ? void 0 : _previousItem$current.ref.current) {
       
 10446             // If there's a previous active item we fire a blur event on it
       
 10447             // so it will work just like if it had DOM focus before (like when
       
 10448             // using roving tabindex).
       
 10449             Object(reakit_utils_fireEvent__WEBPACK_IMPORTED_MODULE_14__[/* fireEvent */ "a"])(previousItem.current.ref.current, "blur", event);
       
 10450           }
       
 10451 
       
 10452           previousItem.current = currentItem;
       
 10453           event.stopPropagation();
       
 10454           return;
       
 10455         }
       
 10456 
       
 10457         if (!targetIsItem) {
       
 10458           // If target is another thing (probably something outside of the
       
 10459           // composite container), we don't ignore the event, but we should
       
 10460           // reset the previousItem reference.
       
 10461           if (currentItem === null || currentItem === void 0 ? void 0 : currentItem.ref.current) {
       
 10462             Object(reakit_utils_fireEvent__WEBPACK_IMPORTED_MODULE_14__[/* fireEvent */ "a"])(currentItem.ref.current, "blur", event);
       
 10463           }
       
 10464 
       
 10465           previousItem.current = undefined;
       
 10466         } else {
       
 10467           previousItem.current = currentItem;
       
 10468         }
       
 10469       }
       
 10470 
       
 10471       (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);
       
 10472     }, [options.unstable_virtual, options.items, currentItem]);
       
 10473     var onMove = Object(react__WEBPACK_IMPORTED_MODULE_4__["useMemo"])(function () {
       
 10474       return Object(reakit_utils_createOnKeyDown__WEBPACK_IMPORTED_MODULE_12__[/* createOnKeyDown */ "a"])({
       
 10475         onKeyDown: onKeyDown,
       
 10476         stopPropagation: true,
       
 10477         shouldKeyDown: function shouldKeyDown(event) {
       
 10478           return Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_8__[/* isSelfTarget */ "a"])(event) && options.currentId === null;
       
 10479         },
       
 10480         keyMap: function keyMap() {
       
 10481           var _options$groups;
       
 10482 
       
 10483           var isVertical = options.orientation !== "horizontal";
       
 10484           var isHorizontal = options.orientation !== "vertical";
       
 10485           var isGrid = !!((_options$groups = options.groups) === null || _options$groups === void 0 ? void 0 : _options$groups.length);
       
 10486 
       
 10487           var up = function up() {
       
 10488             if (isGrid) {
       
 10489               var item = findFirstEnabledItemInTheLastRow(options.items);
       
 10490 
       
 10491               if (item === null || item === void 0 ? void 0 : item.id) {
       
 10492                 var _options$move;
       
 10493 
       
 10494                 (_options$move = options.move) === null || _options$move === void 0 ? void 0 : _options$move.call(options, item.id);
       
 10495               }
       
 10496             } else {
       
 10497               var _options$last;
       
 10498 
       
 10499               (_options$last = options.last) === null || _options$last === void 0 ? void 0 : _options$last.call(options);
       
 10500             }
       
 10501           };
       
 10502 
       
 10503           var first = options.first && function () {
       
 10504             return options.first();
       
 10505           };
       
 10506 
       
 10507           var last = options.last && function () {
       
 10508             return options.last();
       
 10509           };
       
 10510 
       
 10511           return {
       
 10512             ArrowUp: (isGrid || isVertical) && up,
       
 10513             ArrowRight: (isGrid || isHorizontal) && first,
       
 10514             ArrowDown: (isGrid || isVertical) && first,
       
 10515             ArrowLeft: (isGrid || isHorizontal) && last,
       
 10516             Home: first,
       
 10517             End: last,
       
 10518             PageUp: first,
       
 10519             PageDown: last
       
 10520           };
       
 10521         }
       
 10522       });
       
 10523     }, [onKeyDown, options.currentId, options.orientation, options.groups, options.items, options.move, options.last, options.first]);
       
 10524     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
 10525       ref: Object(reakit_utils_useForkRef__WEBPACK_IMPORTED_MODULE_5__[/* useForkRef */ "a"])(ref, htmlRef),
       
 10526       id: options.baseId,
       
 10527       onFocus: onFocus,
       
 10528       onBlur: onBlur,
       
 10529       onKeyDown: onMove,
       
 10530       onKeyUp: onKeyUp,
       
 10531       "aria-activedescendant": options.unstable_virtual ? (currentItem === null || currentItem === void 0 ? void 0 : currentItem.id) || undefined : undefined
       
 10532     }, htmlProps);
       
 10533   },
       
 10534   useComposeProps: function useComposeProps(options, htmlProps) {
       
 10535     htmlProps = Object(_Box_Box_js__WEBPACK_IMPORTED_MODULE_3__[/* useBox */ "a"])(options, htmlProps, true);
       
 10536     var tabbableHTMLProps = Object(_Tabbable_Tabbable_js__WEBPACK_IMPORTED_MODULE_10__[/* useTabbable */ "a"])(options, htmlProps, true);
       
 10537 
       
 10538     if (options.unstable_virtual || options.currentId === null) {
       
 10539       // Composite will only be tabbable by default if the focus is managed
       
 10540       // using aria-activedescendant, which requires DOM focus on the container
       
 10541       // element (the composite)
       
 10542       return tabbableHTMLProps;
       
 10543     }
       
 10544 
       
 10545     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, htmlProps), {}, {
       
 10546       ref: tabbableHTMLProps.ref
       
 10547     });
       
 10548   }
       
 10549 });
       
 10550 var Composite = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__[/* createComponent */ "a"])({
       
 10551   as: "div",
       
 10552   useHook: useComposite,
       
 10553   useCreateElement: function useCreateElement$1(type, props, children) {
       
 10554      false ? undefined : void 0;
       
 10555      false ? undefined : void 0;
       
 10556     return Object(reakit_system_useCreateElement__WEBPACK_IMPORTED_MODULE_11__[/* useCreateElement */ "a"])(type, props, children);
       
 10557   }
       
 10558 });
       
 10559 
       
 10560 
       
 10561 
       
 10562 
       
 10563 /***/ }),
       
 10564 /* 120 */
       
 10565 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 10566 
       
 10567 "use strict";
       
 10568 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return CompositeItem; });
       
 10569 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return useCompositeItem; });
       
 10570 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
       
 10571 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(49);
       
 10572 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(48);
       
 10573 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(13);
       
 10574 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
       
 10575 /* harmony import */ var reakit_utils_useForkRef__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(63);
       
 10576 /* harmony import */ var reakit_warning__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(80);
       
 10577 /* harmony import */ var reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(46);
       
 10578 /* harmony import */ var reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(53);
       
 10579 /* harmony import */ var reakit_utils_hasFocusWithin__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(69);
       
 10580 /* harmony import */ var reakit_utils_isPortalEvent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(72);
       
 10581 /* harmony import */ var reakit_utils_tabbable__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(71);
       
 10582 /* harmony import */ var _Clickable_Clickable_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(84);
       
 10583 /* harmony import */ var reakit_utils_createOnKeyDown__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(82);
       
 10584 /* harmony import */ var reakit_utils_getDocument__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(47);
       
 10585 /* harmony import */ var _CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(51);
       
 10586 /* harmony import */ var _Id_Id_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(93);
       
 10587 /* harmony import */ var reakit_utils_isTextField__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(95);
       
 10588 /* harmony import */ var _setTextFieldValue_78ab5d56_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(96);
       
 10589 
       
 10590 
       
 10591 
       
 10592 
       
 10593 
       
 10594 
       
 10595 
       
 10596 
       
 10597 
       
 10598 
       
 10599 
       
 10600 
       
 10601 
       
 10602 
       
 10603 
       
 10604 
       
 10605 
       
 10606 
       
 10607 
       
 10608 
       
 10609 
       
 10610 
       
 10611 
       
 10612 
       
 10613 
       
 10614 
       
 10615 
       
 10616 
       
 10617 
       
 10618 function getWidget(itemElement) {
       
 10619   return itemElement.querySelector("[data-composite-item-widget]");
       
 10620 }
       
 10621 
       
 10622 function useItem(options) {
       
 10623   return Object(react__WEBPACK_IMPORTED_MODULE_3__["useMemo"])(function () {
       
 10624     var _options$items;
       
 10625 
       
 10626     return (_options$items = options.items) === null || _options$items === void 0 ? void 0 : _options$items.find(function (item) {
       
 10627       return options.id && item.id === options.id;
       
 10628     });
       
 10629   }, [options.items, options.id]);
       
 10630 }
       
 10631 
       
 10632 function targetIsAnotherItem(event, items) {
       
 10633   if (Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__[/* isSelfTarget */ "a"])(event)) return false;
       
 10634 
       
 10635   for (var _iterator = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* b */ "c"])(items), _step; !(_step = _iterator()).done;) {
       
 10636     var item = _step.value;
       
 10637 
       
 10638     if (item.ref.current === event.target) {
       
 10639       return true;
       
 10640     }
       
 10641   }
       
 10642 
       
 10643   return false;
       
 10644 }
       
 10645 
       
 10646 var useCompositeItem = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_2__[/* createHook */ "a"])({
       
 10647   name: "CompositeItem",
       
 10648   compose: [_Clickable_Clickable_js__WEBPACK_IMPORTED_MODULE_11__[/* useClickable */ "a"], _Id_Id_js__WEBPACK_IMPORTED_MODULE_15__[/* unstable_useId */ "a"]],
       
 10649   useState: _CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_14__[/* u */ "g"],
       
 10650   propsAreEqual: function propsAreEqual(prev, next) {
       
 10651     if (!next.id || prev.id !== next.id) {
       
 10652       return _Clickable_Clickable_js__WEBPACK_IMPORTED_MODULE_11__[/* useClickable */ "a"].unstable_propsAreEqual(prev, next);
       
 10653     }
       
 10654 
       
 10655     var prevCurrentId = prev.currentId,
       
 10656         prevMoves = prev.unstable_moves,
       
 10657         prevProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(prev, ["currentId", "unstable_moves"]);
       
 10658 
       
 10659     var nextCurrentId = next.currentId,
       
 10660         nextMoves = next.unstable_moves,
       
 10661         nextProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(next, ["currentId", "unstable_moves"]);
       
 10662 
       
 10663     if (nextCurrentId !== prevCurrentId) {
       
 10664       if (next.id === nextCurrentId || next.id === prevCurrentId) {
       
 10665         return false;
       
 10666       }
       
 10667     } else if (prevMoves !== nextMoves) {
       
 10668       return false;
       
 10669     }
       
 10670 
       
 10671     return _Clickable_Clickable_js__WEBPACK_IMPORTED_MODULE_11__[/* useClickable */ "a"].unstable_propsAreEqual(prevProps, nextProps);
       
 10672   },
       
 10673   useOptions: function useOptions(options) {
       
 10674     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({}, options), {}, {
       
 10675       id: options.id,
       
 10676       currentId: Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_14__[/* g */ "e"])(options),
       
 10677       unstable_clickOnSpace: options.unstable_hasActiveWidget ? false : options.unstable_clickOnSpace
       
 10678     });
       
 10679   },
       
 10680   useProps: function useProps(options, _ref) {
       
 10681     var _options$items2;
       
 10682 
       
 10683     var htmlRef = _ref.ref,
       
 10684         _ref$tabIndex = _ref.tabIndex,
       
 10685         htmlTabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,
       
 10686         htmlOnFocus = _ref.onFocus,
       
 10687         htmlOnBlur = _ref.onBlur,
       
 10688         htmlOnKeyDown = _ref.onKeyDown,
       
 10689         htmlOnClick = _ref.onClick,
       
 10690         htmlProps = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_ref, ["ref", "tabIndex", "onFocus", "onBlur", "onKeyDown", "onClick"]);
       
 10691 
       
 10692     var ref = Object(react__WEBPACK_IMPORTED_MODULE_3__["useRef"])(null);
       
 10693     var id = options.id;
       
 10694     var trulyDisabled = options.disabled && !options.focusable;
       
 10695     var isCurrentItem = options.currentId === id;
       
 10696     var isCurrentItemRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(isCurrentItem);
       
 10697     var hasFocusedComposite = Object(react__WEBPACK_IMPORTED_MODULE_3__["useRef"])(false);
       
 10698     var item = useItem(options);
       
 10699     var onFocusRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(htmlOnFocus);
       
 10700     var onBlurRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(htmlOnBlur);
       
 10701     var onKeyDownRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(htmlOnKeyDown);
       
 10702     var onClickRef = Object(reakit_utils_useLiveRef__WEBPACK_IMPORTED_MODULE_6__[/* useLiveRef */ "a"])(htmlOnClick);
       
 10703     var shouldTabIndex = !options.unstable_virtual && !options.unstable_hasActiveWidget && isCurrentItem || // We don't want to set tabIndex="-1" when using CompositeItem as a
       
 10704     // standalone component, without state props.
       
 10705     !((_options$items2 = options.items) === null || _options$items2 === void 0 ? void 0 : _options$items2.length);
       
 10706     Object(react__WEBPACK_IMPORTED_MODULE_3__["useEffect"])(function () {
       
 10707       var _options$registerItem;
       
 10708 
       
 10709       if (!id) return undefined;
       
 10710       (_options$registerItem = options.registerItem) === null || _options$registerItem === void 0 ? void 0 : _options$registerItem.call(options, {
       
 10711         id: id,
       
 10712         ref: ref,
       
 10713         disabled: !!trulyDisabled
       
 10714       });
       
 10715       return function () {
       
 10716         var _options$unregisterIt;
       
 10717 
       
 10718         (_options$unregisterIt = options.unregisterItem) === null || _options$unregisterIt === void 0 ? void 0 : _options$unregisterIt.call(options, id);
       
 10719       };
       
 10720     }, [id, trulyDisabled, options.registerItem, options.unregisterItem]);
       
 10721     Object(react__WEBPACK_IMPORTED_MODULE_3__["useEffect"])(function () {
       
 10722       var element = ref.current;
       
 10723 
       
 10724       if (!element) {
       
 10725          false ? undefined : void 0;
       
 10726         return;
       
 10727       } // `moves` will be incremented whenever next, previous, up, down, first,
       
 10728       // last or move have been called. This means that the composite item will
       
 10729       // be focused whenever some of these functions are called. We're using
       
 10730       // isCurrentItemRef instead of isCurrentItem because we don't want to
       
 10731       // focus the item if isCurrentItem changes (and options.moves doesn't).
       
 10732 
       
 10733 
       
 10734       if (options.unstable_moves && isCurrentItemRef.current) {
       
 10735         element.focus();
       
 10736       }
       
 10737     }, [options.unstable_moves]);
       
 10738     var onFocus = Object(react__WEBPACK_IMPORTED_MODULE_3__["useCallback"])(function (event) {
       
 10739       var _onFocusRef$current, _options$setCurrentId;
       
 10740 
       
 10741       (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);
       
 10742       if (event.defaultPrevented) return;
       
 10743       if (Object(reakit_utils_isPortalEvent__WEBPACK_IMPORTED_MODULE_9__[/* isPortalEvent */ "a"])(event)) return;
       
 10744       if (!id) return;
       
 10745       if (targetIsAnotherItem(event, options.items)) return;
       
 10746       (_options$setCurrentId = options.setCurrentId) === null || _options$setCurrentId === void 0 ? void 0 : _options$setCurrentId.call(options, id); // When using aria-activedescendant, we want to make sure that the
       
 10747       // composite container receives focus, not the composite item.
       
 10748       // But we don't want to do this if the target is another focusable
       
 10749       // element inside the composite item, such as CompositeItemWidget.
       
 10750 
       
 10751       if (options.unstable_virtual && options.baseId && Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__[/* isSelfTarget */ "a"])(event)) {
       
 10752         var target = event.target;
       
 10753         var composite = Object(reakit_utils_getDocument__WEBPACK_IMPORTED_MODULE_13__[/* getDocument */ "a"])(target).getElementById(options.baseId);
       
 10754 
       
 10755         if (composite) {
       
 10756           hasFocusedComposite.current = true;
       
 10757           Object(reakit_utils_tabbable__WEBPACK_IMPORTED_MODULE_10__[/* ensureFocus */ "a"])(composite);
       
 10758         }
       
 10759       }
       
 10760     }, [id, options.items, options.setCurrentId, options.unstable_virtual, options.baseId]);
       
 10761     var onBlur = Object(react__WEBPACK_IMPORTED_MODULE_3__["useCallback"])(function (event) {
       
 10762       var _onBlurRef$current;
       
 10763 
       
 10764       if (options.unstable_virtual) {
       
 10765         if (hasFocusedComposite.current) {
       
 10766           // When hasFocusedComposite is true, composite has been focused
       
 10767           // right after focusing this item. This is an intermediate blur
       
 10768           // event, so we ignore it.
       
 10769           hasFocusedComposite.current = false;
       
 10770           event.preventDefault();
       
 10771           event.stopPropagation();
       
 10772           return;
       
 10773         }
       
 10774       }
       
 10775 
       
 10776       (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);
       
 10777     }, [options.unstable_virtual]);
       
 10778     var onCharacterKeyDown = Object(react__WEBPACK_IMPORTED_MODULE_3__["useCallback"])(function (event) {
       
 10779       var _onKeyDownRef$current;
       
 10780 
       
 10781       (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);
       
 10782       if (!Object(reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__[/* isSelfTarget */ "a"])(event)) return;
       
 10783 
       
 10784       if (event.key.length === 1 && event.key !== " ") {
       
 10785         var widget = getWidget(event.currentTarget);
       
 10786 
       
 10787         if (widget && Object(reakit_utils_isTextField__WEBPACK_IMPORTED_MODULE_16__[/* isTextField */ "a"])(widget)) {
       
 10788           widget.focus();
       
 10789           var key = event.key; // Using RAF here because otherwise the key will be added twice
       
 10790           // to the input when using roving tabindex
       
 10791 
       
 10792           window.requestAnimationFrame(function () {
       
 10793             Object(_setTextFieldValue_78ab5d56_js__WEBPACK_IMPORTED_MODULE_17__[/* s */ "a"])(widget, key);
       
 10794           });
       
 10795         }
       
 10796       }
       
 10797     }, []);
       
 10798     var onKeyDown = Object(react__WEBPACK_IMPORTED_MODULE_3__["useMemo"])(function () {
       
 10799       return Object(reakit_utils_createOnKeyDown__WEBPACK_IMPORTED_MODULE_12__[/* createOnKeyDown */ "a"])({
       
 10800         onKeyDown: onCharacterKeyDown,
       
 10801         stopPropagation: true,
       
 10802         // We don't want to listen to focusable elements inside the composite
       
 10803         // item, such as a CompositeItemWidget.
       
 10804         shouldKeyDown: reakit_utils_isSelfTarget__WEBPACK_IMPORTED_MODULE_7__[/* isSelfTarget */ "a"],
       
 10805         keyMap: function keyMap() {
       
 10806           // `options.orientation` can also be undefined, which means that
       
 10807           // both `isVertical` and `isHorizontal` will be `true`.
       
 10808           var isVertical = options.orientation !== "horizontal";
       
 10809           var isHorizontal = options.orientation !== "vertical";
       
 10810           var isGrid = !!(item === null || item === void 0 ? void 0 : item.groupId);
       
 10811 
       
 10812           var Delete = function Delete(event) {
       
 10813             var widget = getWidget(event.currentTarget);
       
 10814 
       
 10815             if (widget && Object(reakit_utils_isTextField__WEBPACK_IMPORTED_MODULE_16__[/* isTextField */ "a"])(widget)) {
       
 10816               Object(_setTextFieldValue_78ab5d56_js__WEBPACK_IMPORTED_MODULE_17__[/* s */ "a"])(widget, "");
       
 10817             }
       
 10818           };
       
 10819 
       
 10820           var up = options.up && function () {
       
 10821             return options.up();
       
 10822           };
       
 10823 
       
 10824           var next = options.next && function () {
       
 10825             return options.next();
       
 10826           };
       
 10827 
       
 10828           var down = options.down && function () {
       
 10829             return options.down();
       
 10830           };
       
 10831 
       
 10832           var previous = options.previous && function () {
       
 10833             return options.previous();
       
 10834           };
       
 10835 
       
 10836           return {
       
 10837             Delete: Delete,
       
 10838             Backspace: Delete,
       
 10839             ArrowUp: (isGrid || isVertical) && up,
       
 10840             ArrowRight: (isGrid || isHorizontal) && next,
       
 10841             ArrowDown: (isGrid || isVertical) && down,
       
 10842             ArrowLeft: (isGrid || isHorizontal) && previous,
       
 10843             Home: function Home(event) {
       
 10844               if (!isGrid || event.ctrlKey) {
       
 10845                 var _options$first;
       
 10846 
       
 10847                 (_options$first = options.first) === null || _options$first === void 0 ? void 0 : _options$first.call(options);
       
 10848               } else {
       
 10849                 var _options$previous;
       
 10850 
       
 10851                 (_options$previous = options.previous) === null || _options$previous === void 0 ? void 0 : _options$previous.call(options, true);
       
 10852               }
       
 10853             },
       
 10854             End: function End(event) {
       
 10855               if (!isGrid || event.ctrlKey) {
       
 10856                 var _options$last;
       
 10857 
       
 10858                 (_options$last = options.last) === null || _options$last === void 0 ? void 0 : _options$last.call(options);
       
 10859               } else {
       
 10860                 var _options$next;
       
 10861 
       
 10862                 (_options$next = options.next) === null || _options$next === void 0 ? void 0 : _options$next.call(options, true);
       
 10863               }
       
 10864             },
       
 10865             PageUp: function PageUp() {
       
 10866               if (isGrid) {
       
 10867                 var _options$up;
       
 10868 
       
 10869                 (_options$up = options.up) === null || _options$up === void 0 ? void 0 : _options$up.call(options, true);
       
 10870               } else {
       
 10871                 var _options$first2;
       
 10872 
       
 10873                 (_options$first2 = options.first) === null || _options$first2 === void 0 ? void 0 : _options$first2.call(options);
       
 10874               }
       
 10875             },
       
 10876             PageDown: function PageDown() {
       
 10877               if (isGrid) {
       
 10878                 var _options$down;
       
 10879 
       
 10880                 (_options$down = options.down) === null || _options$down === void 0 ? void 0 : _options$down.call(options, true);
       
 10881               } else {
       
 10882                 var _options$last2;
       
 10883 
       
 10884                 (_options$last2 = options.last) === null || _options$last2 === void 0 ? void 0 : _options$last2.call(options);
       
 10885               }
       
 10886             }
       
 10887           };
       
 10888         }
       
 10889       });
       
 10890     }, [onCharacterKeyDown, options.orientation, item, options.up, options.next, options.down, options.previous, options.first, options.last]);
       
 10891     var onClick = Object(react__WEBPACK_IMPORTED_MODULE_3__["useCallback"])(function (event) {
       
 10892       var _onClickRef$current;
       
 10893 
       
 10894       (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);
       
 10895       if (event.defaultPrevented) return;
       
 10896       var element = event.currentTarget;
       
 10897       var widget = getWidget(element);
       
 10898 
       
 10899       if (widget && !Object(reakit_utils_hasFocusWithin__WEBPACK_IMPORTED_MODULE_8__[/* hasFocusWithin */ "a"])(widget)) {
       
 10900         // If there's a widget inside the composite item, we make sure it's
       
 10901         // focused when pressing enter, space or clicking on the composite item.
       
 10902         widget.focus();
       
 10903       }
       
 10904     }, []);
       
 10905     return Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
       
 10906       ref: Object(reakit_utils_useForkRef__WEBPACK_IMPORTED_MODULE_4__[/* useForkRef */ "a"])(ref, htmlRef),
       
 10907       id: id,
       
 10908       tabIndex: shouldTabIndex ? htmlTabIndex : -1,
       
 10909       "aria-selected": options.unstable_virtual && isCurrentItem ? true : undefined,
       
 10910       onFocus: onFocus,
       
 10911       onBlur: onBlur,
       
 10912       onKeyDown: onKeyDown,
       
 10913       onClick: onClick
       
 10914     }, htmlProps);
       
 10915   }
       
 10916 });
       
 10917 var CompositeItem = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_1__[/* createComponent */ "a"])({
       
 10918   as: "button",
       
 10919   memo: true,
       
 10920   useHook: useCompositeItem
       
 10921 });
       
 10922 
       
 10923 
       
 10924 
       
 10925 
       
 10926 /***/ }),
       
 10927 /* 121 */
       
 10928 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 10929 
       
 10930 "use strict";
       
 10931 
       
 10932 // EXPORTS
       
 10933 __webpack_require__.d(__webpack_exports__, "b", function() { return /* binding */ slot_fill_Slot; });
       
 10934 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ slot_fill_Fill; });
       
 10935 __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ createSlotFill; });
       
 10936 
       
 10937 // UNUSED EXPORTS: useSlot, Provider
       
 10938 
       
 10939 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
       
 10940 var esm_extends = __webpack_require__(8);
       
 10941 
       
 10942 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
       
 10943 var objectWithoutProperties = __webpack_require__(15);
       
 10944 
       
 10945 // EXTERNAL MODULE: external {"this":["wp","element"]}
       
 10946 var external_this_wp_element_ = __webpack_require__(0);
       
 10947 
       
 10948 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
       
 10949 var classCallCheck = __webpack_require__(20);
       
 10950 
       
 10951 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
       
 10952 var createClass = __webpack_require__(19);
       
 10953 
       
 10954 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
       
 10955 var assertThisInitialized = __webpack_require__(12);
       
 10956 
       
 10957 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
       
 10958 var getPrototypeOf = __webpack_require__(16);
       
 10959 
       
 10960 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/superPropBase.js
       
 10961 
       
 10962 function _superPropBase(object, property) {
       
 10963   while (!Object.prototype.hasOwnProperty.call(object, property)) {
       
 10964     object = Object(getPrototypeOf["a" /* default */])(object);
       
 10965     if (object === null) break;
       
 10966   }
       
 10967 
       
 10968   return object;
       
 10969 }
       
 10970 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/get.js
       
 10971 
       
 10972 function get_get(target, property, receiver) {
       
 10973   if (typeof Reflect !== "undefined" && Reflect.get) {
       
 10974     get_get = Reflect.get;
       
 10975   } else {
       
 10976     get_get = function _get(target, property, receiver) {
       
 10977       var base = _superPropBase(target, property);
       
 10978       if (!base) return;
       
 10979       var desc = Object.getOwnPropertyDescriptor(base, property);
       
 10980 
       
 10981       if (desc.get) {
       
 10982         return desc.get.call(receiver);
       
 10983       }
       
 10984 
       
 10985       return desc.value;
       
 10986     };
       
 10987   }
       
 10988 
       
 10989   return get_get(target, property, receiver || target);
       
 10990 }
       
 10991 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
       
 10992 var possibleConstructorReturn = __webpack_require__(23);
       
 10993 
       
 10994 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
       
 10995 var inherits = __webpack_require__(22);
       
 10996 
       
 10997 // EXTERNAL MODULE: external {"this":"lodash"}
       
 10998 var external_this_lodash_ = __webpack_require__(2);
       
 10999 
       
 11000 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/context.js + 1 modules
       
 11001 var context = __webpack_require__(124);
       
 11002 
       
 11003 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/slot.js
       
 11004 
       
 11005 
       
 11006 
       
 11007 
       
 11008 
       
 11009 
       
 11010 
       
 11011 
       
 11012 
       
 11013 
       
 11014 function _createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 11015 
       
 11016 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 11017 
       
 11018 /**
       
 11019  * External dependencies
       
 11020  */
       
 11021 
       
 11022 /**
       
 11023  * WordPress dependencies
       
 11024  */
       
 11025 
       
 11026 
       
 11027 /**
       
 11028  * Internal dependencies
       
 11029  */
       
 11030 
       
 11031 
       
 11032 
       
 11033 var slot_SlotComponent = /*#__PURE__*/function (_Component) {
       
 11034   Object(inherits["a" /* default */])(SlotComponent, _Component);
       
 11035 
       
 11036   var _super = _createSuper(SlotComponent);
       
 11037 
       
 11038   function SlotComponent() {
       
 11039     var _this;
       
 11040 
       
 11041     Object(classCallCheck["a" /* default */])(this, SlotComponent);
       
 11042 
       
 11043     _this = _super.apply(this, arguments);
       
 11044     _this.isUnmounted = false;
       
 11045     _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11046     return _this;
       
 11047   }
       
 11048 
       
 11049   Object(createClass["a" /* default */])(SlotComponent, [{
       
 11050     key: "componentDidMount",
       
 11051     value: function componentDidMount() {
       
 11052       var registerSlot = this.props.registerSlot;
       
 11053       registerSlot(this.props.name, this);
       
 11054     }
       
 11055   }, {
       
 11056     key: "componentWillUnmount",
       
 11057     value: function componentWillUnmount() {
       
 11058       var unregisterSlot = this.props.unregisterSlot;
       
 11059       this.isUnmounted = true;
       
 11060       unregisterSlot(this.props.name, this);
       
 11061     }
       
 11062   }, {
       
 11063     key: "componentDidUpdate",
       
 11064     value: function componentDidUpdate(prevProps) {
       
 11065       var _this$props = this.props,
       
 11066           name = _this$props.name,
       
 11067           unregisterSlot = _this$props.unregisterSlot,
       
 11068           registerSlot = _this$props.registerSlot;
       
 11069 
       
 11070       if (prevProps.name !== name) {
       
 11071         unregisterSlot(prevProps.name);
       
 11072         registerSlot(name, this);
       
 11073       }
       
 11074     }
       
 11075   }, {
       
 11076     key: "bindNode",
       
 11077     value: function bindNode(node) {
       
 11078       this.node = node;
       
 11079     }
       
 11080   }, {
       
 11081     key: "forceUpdate",
       
 11082     value: function forceUpdate() {
       
 11083       if (this.isUnmounted) {
       
 11084         return;
       
 11085       }
       
 11086 
       
 11087       get_get(Object(getPrototypeOf["a" /* default */])(SlotComponent.prototype), "forceUpdate", this).call(this);
       
 11088     }
       
 11089   }, {
       
 11090     key: "render",
       
 11091     value: function render() {
       
 11092       var _this$props2 = this.props,
       
 11093           children = _this$props2.children,
       
 11094           name = _this$props2.name,
       
 11095           _this$props2$fillProp = _this$props2.fillProps,
       
 11096           fillProps = _this$props2$fillProp === void 0 ? {} : _this$props2$fillProp,
       
 11097           getFills = _this$props2.getFills;
       
 11098       var fills = Object(external_this_lodash_["map"])(getFills(name, this), function (fill) {
       
 11099         var fillKey = fill.occurrence;
       
 11100         var fillChildren = Object(external_this_lodash_["isFunction"])(fill.children) ? fill.children(fillProps) : fill.children;
       
 11101         return external_this_wp_element_["Children"].map(fillChildren, function (child, childIndex) {
       
 11102           if (!child || Object(external_this_lodash_["isString"])(child)) {
       
 11103             return child;
       
 11104           }
       
 11105 
       
 11106           var childKey = "".concat(fillKey, "---").concat(child.key || childIndex);
       
 11107           return Object(external_this_wp_element_["cloneElement"])(child, {
       
 11108             key: childKey
       
 11109           });
       
 11110         });
       
 11111       }).filter( // In some cases fills are rendered only when some conditions apply.
       
 11112       // This ensures that we only use non-empty fills when rendering, i.e.,
       
 11113       // it allows us to render wrappers only when the fills are actually present.
       
 11114       Object(external_this_lodash_["negate"])(external_this_wp_element_["isEmptyElement"]));
       
 11115       return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_lodash_["isFunction"])(children) ? children(fills) : fills);
       
 11116     }
       
 11117   }]);
       
 11118 
       
 11119   return SlotComponent;
       
 11120 }(external_this_wp_element_["Component"]);
       
 11121 
       
 11122 var slot_Slot = function Slot(props) {
       
 11123   return Object(external_this_wp_element_["createElement"])(context["a" /* Consumer */], null, function (_ref) {
       
 11124     var registerSlot = _ref.registerSlot,
       
 11125         unregisterSlot = _ref.unregisterSlot,
       
 11126         getFills = _ref.getFills;
       
 11127     return Object(external_this_wp_element_["createElement"])(slot_SlotComponent, Object(esm_extends["a" /* default */])({}, props, {
       
 11128       registerSlot: registerSlot,
       
 11129       unregisterSlot: unregisterSlot,
       
 11130       getFills: getFills
       
 11131     }));
       
 11132   });
       
 11133 };
       
 11134 
       
 11135 /* harmony default export */ var slot_fill_slot = (slot_Slot);
       
 11136 
       
 11137 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/fill.js
       
 11138 
       
 11139 
       
 11140 
       
 11141 /**
       
 11142  * External dependencies
       
 11143  */
       
 11144 
       
 11145 /**
       
 11146  * WordPress dependencies
       
 11147  */
       
 11148 
       
 11149 
       
 11150 /**
       
 11151  * Internal dependencies
       
 11152  */
       
 11153 
       
 11154 
       
 11155 var occurrences = 0;
       
 11156 
       
 11157 function fill_FillComponent(_ref) {
       
 11158   var name = _ref.name,
       
 11159       children = _ref.children,
       
 11160       registerFill = _ref.registerFill,
       
 11161       unregisterFill = _ref.unregisterFill;
       
 11162   var slot = Object(context["c" /* useSlot */])(name);
       
 11163   var ref = Object(external_this_wp_element_["useRef"])({
       
 11164     name: name,
       
 11165     children: children
       
 11166   });
       
 11167 
       
 11168   if (!ref.current.occurrence) {
       
 11169     ref.current.occurrence = ++occurrences;
       
 11170   }
       
 11171 
       
 11172   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 11173     registerFill(name, ref.current);
       
 11174     return function () {
       
 11175       return unregisterFill(name, ref.current);
       
 11176     };
       
 11177   }, []);
       
 11178   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 11179     ref.current.children = children;
       
 11180 
       
 11181     if (slot) {
       
 11182       slot.forceUpdate();
       
 11183     }
       
 11184   }, [children]);
       
 11185   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 11186     if (name === ref.current.name) {
       
 11187       // ignore initial effect
       
 11188       return;
       
 11189     }
       
 11190 
       
 11191     unregisterFill(ref.current.name, ref.current);
       
 11192     ref.current.name = name;
       
 11193     registerFill(name, ref.current);
       
 11194   }, [name]);
       
 11195 
       
 11196   if (!slot || !slot.node) {
       
 11197     return null;
       
 11198   } // If a function is passed as a child, provide it with the fillProps.
       
 11199 
       
 11200 
       
 11201   if (Object(external_this_lodash_["isFunction"])(children)) {
       
 11202     children = children(slot.props.fillProps);
       
 11203   }
       
 11204 
       
 11205   return Object(external_this_wp_element_["createPortal"])(children, slot.node);
       
 11206 }
       
 11207 
       
 11208 var fill_Fill = function Fill(props) {
       
 11209   return Object(external_this_wp_element_["createElement"])(context["a" /* Consumer */], null, function (_ref2) {
       
 11210     var registerFill = _ref2.registerFill,
       
 11211         unregisterFill = _ref2.unregisterFill;
       
 11212     return Object(external_this_wp_element_["createElement"])(fill_FillComponent, Object(esm_extends["a" /* default */])({}, props, {
       
 11213       registerFill: registerFill,
       
 11214       unregisterFill: unregisterFill
       
 11215     }));
       
 11216   });
       
 11217 };
       
 11218 
       
 11219 /* harmony default export */ var slot_fill_fill = (fill_Fill);
       
 11220 
       
 11221 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot-fill-context.js
       
 11222 var slot_fill_context = __webpack_require__(133);
       
 11223 
       
 11224 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot.js
       
 11225 
       
 11226 
       
 11227 
       
 11228 
       
 11229 /**
       
 11230  * WordPress dependencies
       
 11231  */
       
 11232 
       
 11233 /**
       
 11234  * Internal dependencies
       
 11235  */
       
 11236 
       
 11237 
       
 11238 function bubbles_virtually_slot_Slot(_ref) {
       
 11239   var name = _ref.name,
       
 11240       _ref$fillProps = _ref.fillProps,
       
 11241       fillProps = _ref$fillProps === void 0 ? {} : _ref$fillProps,
       
 11242       _ref$as = _ref.as,
       
 11243       Component = _ref$as === void 0 ? 'div' : _ref$as,
       
 11244       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["name", "fillProps", "as"]);
       
 11245 
       
 11246   var registry = Object(external_this_wp_element_["useContext"])(slot_fill_context["a" /* default */]);
       
 11247   var ref = Object(external_this_wp_element_["useRef"])();
       
 11248   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 11249     registry.registerSlot(name, ref, fillProps);
       
 11250     return function () {
       
 11251       registry.unregisterSlot(name, ref);
       
 11252     }; // We are not including fillProps in the deps because we don't want to
       
 11253     // unregister and register the slot whenever fillProps change, which would
       
 11254     // cause the fill to be re-mounted. We are only considering the initial value
       
 11255     // of fillProps.
       
 11256   }, [registry.registerSlot, registry.unregisterSlot, name]); // fillProps may be an update that interacts with the layout, so we
       
 11257   // useLayoutEffect
       
 11258 
       
 11259   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 11260     registry.updateSlot(name, fillProps);
       
 11261   });
       
 11262   return Object(external_this_wp_element_["createElement"])(Component, Object(esm_extends["a" /* default */])({
       
 11263     ref: ref
       
 11264   }, props));
       
 11265 }
       
 11266 
       
 11267 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
       
 11268 var slicedToArray = __webpack_require__(14);
       
 11269 
       
 11270 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/use-slot.js
       
 11271 var use_slot = __webpack_require__(159);
       
 11272 
       
 11273 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/fill.js
       
 11274 
       
 11275 
       
 11276 /**
       
 11277  * WordPress dependencies
       
 11278  */
       
 11279 
       
 11280 /**
       
 11281  * Internal dependencies
       
 11282  */
       
 11283 
       
 11284 
       
 11285 
       
 11286 function useForceUpdate() {
       
 11287   var _useState = Object(external_this_wp_element_["useState"])({}),
       
 11288       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 11289       setState = _useState2[1];
       
 11290 
       
 11291   return function () {
       
 11292     return setState({});
       
 11293   };
       
 11294 }
       
 11295 
       
 11296 function bubbles_virtually_fill_Fill(_ref) {
       
 11297   var name = _ref.name,
       
 11298       children = _ref.children;
       
 11299   var slot = Object(use_slot["a" /* default */])(name);
       
 11300   var ref = Object(external_this_wp_element_["useRef"])({
       
 11301     rerender: useForceUpdate()
       
 11302   });
       
 11303   Object(external_this_wp_element_["useEffect"])(function () {
       
 11304     // We register fills so we can keep track of their existance.
       
 11305     // Some Slot implementations need to know if there're already fills
       
 11306     // registered so they can choose to render themselves or not.
       
 11307     slot.registerFill(ref);
       
 11308     return function () {
       
 11309       slot.unregisterFill(ref);
       
 11310     };
       
 11311   }, [slot.registerFill, slot.unregisterFill]);
       
 11312 
       
 11313   if (!slot.ref || !slot.ref.current) {
       
 11314     return null;
       
 11315   }
       
 11316 
       
 11317   if (typeof children === 'function') {
       
 11318     children = children(slot.fillProps);
       
 11319   }
       
 11320 
       
 11321   return Object(external_this_wp_element_["createPortal"])(children, slot.ref.current);
       
 11322 }
       
 11323 
       
 11324 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/index.js
       
 11325 
       
 11326 
       
 11327 
       
 11328 
       
 11329 /**
       
 11330  * Internal dependencies
       
 11331  */
       
 11332 
       
 11333 
       
 11334 
       
 11335 
       
 11336 
       
 11337 
       
 11338 function slot_fill_Slot(_ref) {
       
 11339   var bubblesVirtually = _ref.bubblesVirtually,
       
 11340       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["bubblesVirtually"]);
       
 11341 
       
 11342   if (bubblesVirtually) {
       
 11343     return Object(external_this_wp_element_["createElement"])(bubbles_virtually_slot_Slot, props);
       
 11344   }
       
 11345 
       
 11346   return Object(external_this_wp_element_["createElement"])(slot_fill_slot, props);
       
 11347 }
       
 11348 function slot_fill_Fill(props) {
       
 11349   // We're adding both Fills here so they can register themselves before
       
 11350   // their respective slot has been registered. Only the Fill that has a slot
       
 11351   // will render. The other one will return null.
       
 11352   return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(slot_fill_fill, props), Object(external_this_wp_element_["createElement"])(bubbles_virtually_fill_Fill, props));
       
 11353 }
       
 11354 function createSlotFill(name) {
       
 11355   var FillComponent = function FillComponent(props) {
       
 11356     return Object(external_this_wp_element_["createElement"])(slot_fill_Fill, Object(esm_extends["a" /* default */])({
       
 11357       name: name
       
 11358     }, props));
       
 11359   };
       
 11360 
       
 11361   FillComponent.displayName = name + 'Fill';
       
 11362 
       
 11363   var SlotComponent = function SlotComponent(props) {
       
 11364     return Object(external_this_wp_element_["createElement"])(slot_fill_Slot, Object(esm_extends["a" /* default */])({
       
 11365       name: name
       
 11366     }, props));
       
 11367   };
       
 11368 
       
 11369   SlotComponent.displayName = name + 'Slot';
       
 11370   return {
       
 11371     Fill: FillComponent,
       
 11372     Slot: SlotComponent
       
 11373   };
       
 11374 }
       
 11375 
       
 11376 
       
 11377 
       
 11378 /***/ }),
       
 11379 /* 122 */
       
 11380 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 11381 
       
 11382 "use strict";
       
 11383 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return createEvent; });
       
 11384 /* harmony import */ var _getDocument_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47);
       
 11385 
       
 11386 
       
 11387 /**
       
 11388  * Creates an `Event` in a way that also works on IE 11.
       
 11389  *
       
 11390  * @example
       
 11391  * import { createEvent } from "reakit-utils";
       
 11392  *
       
 11393  * const el = document.getElementById("id");
       
 11394  * el.dispatchEvent(createEvent(el, "blur", { bubbles: false }));
       
 11395  */
       
 11396 
       
 11397 function createEvent(element, type, eventInit) {
       
 11398   var _eventInit, _eventInit2;
       
 11399 
       
 11400   if (eventInit === void 0) {
       
 11401     eventInit = {};
       
 11402   }
       
 11403 
       
 11404   if (typeof Event === "function") {
       
 11405     return new Event(type, eventInit);
       
 11406   } // IE 11 doesn't support Event constructors
       
 11407 
       
 11408 
       
 11409   var event = Object(_getDocument_js__WEBPACK_IMPORTED_MODULE_0__[/* getDocument */ "a"])(element).createEvent("Event");
       
 11410   event.initEvent(type, (_eventInit = eventInit) === null || _eventInit === void 0 ? void 0 : _eventInit.bubbles, (_eventInit2 = eventInit) === null || _eventInit2 === void 0 ? void 0 : _eventInit2.cancelable);
       
 11411   return event;
       
 11412 }
       
 11413 
       
 11414 
       
 11415 
       
 11416 
       
 11417 /***/ }),
       
 11418 /* 123 */
       
 11419 /***/ (function(module, exports, __webpack_require__) {
       
 11420 
       
 11421 "use strict";
       
 11422 
       
 11423 
       
 11424 module.exports = __webpack_require__(178);
       
 11425 
       
 11426 /***/ }),
       
 11427 /* 124 */
       
 11428 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 11429 
       
 11430 "use strict";
       
 11431 
       
 11432 // EXPORTS
       
 11433 __webpack_require__.d(__webpack_exports__, "c", function() { return /* binding */ context_useSlot; });
       
 11434 __webpack_require__.d(__webpack_exports__, "a", function() { return /* binding */ Consumer; });
       
 11435 
       
 11436 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
       
 11437 var slicedToArray = __webpack_require__(14);
       
 11438 
       
 11439 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
       
 11440 var toConsumableArray = __webpack_require__(18);
       
 11441 
       
 11442 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
       
 11443 var classCallCheck = __webpack_require__(20);
       
 11444 
       
 11445 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
       
 11446 var createClass = __webpack_require__(19);
       
 11447 
       
 11448 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
       
 11449 var assertThisInitialized = __webpack_require__(12);
       
 11450 
       
 11451 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
       
 11452 var possibleConstructorReturn = __webpack_require__(23);
       
 11453 
       
 11454 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
       
 11455 var getPrototypeOf = __webpack_require__(16);
       
 11456 
       
 11457 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
       
 11458 var inherits = __webpack_require__(22);
       
 11459 
       
 11460 // EXTERNAL MODULE: external {"this":["wp","element"]}
       
 11461 var external_this_wp_element_ = __webpack_require__(0);
       
 11462 
       
 11463 // EXTERNAL MODULE: external {"this":"lodash"}
       
 11464 var external_this_lodash_ = __webpack_require__(2);
       
 11465 
       
 11466 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
       
 11467 var esm_typeof = __webpack_require__(40);
       
 11468 
       
 11469 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
       
 11470 var objectWithoutProperties = __webpack_require__(15);
       
 11471 
       
 11472 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
       
 11473 var defineProperty = __webpack_require__(5);
       
 11474 
       
 11475 // EXTERNAL MODULE: external {"this":["wp","isShallowEqual"]}
       
 11476 var external_this_wp_isShallowEqual_ = __webpack_require__(64);
       
 11477 var external_this_wp_isShallowEqual_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_isShallowEqual_);
       
 11478 
       
 11479 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot-fill-context.js
       
 11480 var slot_fill_context = __webpack_require__(133);
       
 11481 
       
 11482 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/slot-fill-provider.js
       
 11483 
       
 11484 
       
 11485 
       
 11486 
       
 11487 
       
 11488 
       
 11489 
       
 11490 function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return Object(esm_typeof["a" /* default */])(key) === "symbol" ? key : String(key); }
       
 11491 
       
 11492 function _toPrimitive(input, hint) { if (Object(esm_typeof["a" /* default */])(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (Object(esm_typeof["a" /* default */])(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
       
 11493 
       
 11494 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 11495 
       
 11496 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 11497 
       
 11498 /**
       
 11499  * WordPress dependencies
       
 11500  */
       
 11501 
       
 11502 
       
 11503 /**
       
 11504  * Internal dependencies
       
 11505  */
       
 11506 
       
 11507 
       
 11508 
       
 11509 function useSlotRegistry() {
       
 11510   var _useState = Object(external_this_wp_element_["useState"])({}),
       
 11511       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 11512       slots = _useState2[0],
       
 11513       setSlots = _useState2[1];
       
 11514 
       
 11515   var _useState3 = Object(external_this_wp_element_["useState"])({}),
       
 11516       _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
       
 11517       fills = _useState4[0],
       
 11518       setFills = _useState4[1];
       
 11519 
       
 11520   var registerSlot = Object(external_this_wp_element_["useCallback"])(function (name, ref, fillProps) {
       
 11521     setSlots(function (prevSlots) {
       
 11522       var slot = prevSlots[name] || {};
       
 11523       return _objectSpread({}, prevSlots, Object(defineProperty["a" /* default */])({}, name, _objectSpread({}, slot, {
       
 11524         ref: ref || slot.ref,
       
 11525         fillProps: fillProps || slot.fillProps || {}
       
 11526       })));
       
 11527     });
       
 11528   }, []);
       
 11529   var unregisterSlot = Object(external_this_wp_element_["useCallback"])(function (name, ref) {
       
 11530     setSlots(function (prevSlots) {
       
 11531       var slot = prevSlots[name],
       
 11532           nextSlots = Object(objectWithoutProperties["a" /* default */])(prevSlots, [name].map(_toPropertyKey)); // Make sure we're not unregistering a slot registered by another element
       
 11533       // See https://github.com/WordPress/gutenberg/pull/19242#issuecomment-590295412
       
 11534 
       
 11535 
       
 11536       if ((slot === null || slot === void 0 ? void 0 : slot.ref) === ref) {
       
 11537         return nextSlots;
       
 11538       }
       
 11539 
       
 11540       return prevSlots;
       
 11541     });
       
 11542   }, []);
       
 11543   var updateSlot = Object(external_this_wp_element_["useCallback"])(function (name, fillProps) {
       
 11544     var slot = slots[name];
       
 11545 
       
 11546     if (!slot) {
       
 11547       return;
       
 11548     }
       
 11549 
       
 11550     if (!external_this_wp_isShallowEqual_default()(slot.fillProps, fillProps)) {
       
 11551       slot.fillProps = fillProps;
       
 11552       var slotFills = fills[name];
       
 11553 
       
 11554       if (slotFills) {
       
 11555         // Force update fills
       
 11556         slotFills.map(function (fill) {
       
 11557           return fill.current.rerender();
       
 11558         });
       
 11559       }
       
 11560     }
       
 11561   }, [slots, fills]);
       
 11562   var registerFill = Object(external_this_wp_element_["useCallback"])(function (name, ref) {
       
 11563     setFills(function (prevFills) {
       
 11564       return _objectSpread({}, prevFills, Object(defineProperty["a" /* default */])({}, name, [].concat(Object(toConsumableArray["a" /* default */])(prevFills[name] || []), [ref])));
       
 11565     });
       
 11566   }, []);
       
 11567   var unregisterFill = Object(external_this_wp_element_["useCallback"])(function (name, ref) {
       
 11568     setFills(function (prevFills) {
       
 11569       if (prevFills[name]) {
       
 11570         return _objectSpread({}, prevFills, Object(defineProperty["a" /* default */])({}, name, prevFills[name].filter(function (fillRef) {
       
 11571           return fillRef !== ref;
       
 11572         })));
       
 11573       }
       
 11574 
       
 11575       return prevFills;
       
 11576     });
       
 11577   }, []); // Memoizing the return value so it can be directly passed to Provider value
       
 11578 
       
 11579   var registry = Object(external_this_wp_element_["useMemo"])(function () {
       
 11580     return {
       
 11581       slots: slots,
       
 11582       fills: fills,
       
 11583       registerSlot: registerSlot,
       
 11584       updateSlot: updateSlot,
       
 11585       unregisterSlot: unregisterSlot,
       
 11586       registerFill: registerFill,
       
 11587       unregisterFill: unregisterFill
       
 11588     };
       
 11589   }, [slots, fills, registerSlot, updateSlot, unregisterSlot, registerFill, unregisterFill]);
       
 11590   return registry;
       
 11591 }
       
 11592 
       
 11593 function slot_fill_provider_SlotFillProvider(_ref) {
       
 11594   var children = _ref.children;
       
 11595   var registry = useSlotRegistry();
       
 11596   return Object(external_this_wp_element_["createElement"])(slot_fill_context["a" /* default */].Provider, {
       
 11597     value: registry
       
 11598   }, children);
       
 11599 }
       
 11600 
       
 11601 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/context.js
       
 11602 
       
 11603 
       
 11604 
       
 11605 
       
 11606 
       
 11607 
       
 11608 
       
 11609 
       
 11610 
       
 11611 
       
 11612 function _createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 11613 
       
 11614 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 11615 
       
 11616 /**
       
 11617  * External dependencies
       
 11618  */
       
 11619 
       
 11620 /**
       
 11621  * WordPress dependencies
       
 11622  */
       
 11623 
       
 11624 
       
 11625 /**
       
 11626  * Internal dependencies
       
 11627  */
       
 11628 
       
 11629 
       
 11630 var SlotFillContext = Object(external_this_wp_element_["createContext"])({
       
 11631   registerSlot: function registerSlot() {},
       
 11632   unregisterSlot: function unregisterSlot() {},
       
 11633   registerFill: function registerFill() {},
       
 11634   unregisterFill: function unregisterFill() {},
       
 11635   getSlot: function getSlot() {},
       
 11636   getFills: function getFills() {},
       
 11637   subscribe: function subscribe() {}
       
 11638 });
       
 11639 var Provider = SlotFillContext.Provider,
       
 11640     Consumer = SlotFillContext.Consumer;
       
 11641 
       
 11642 var context_SlotFillProvider = /*#__PURE__*/function (_Component) {
       
 11643   Object(inherits["a" /* default */])(SlotFillProvider, _Component);
       
 11644 
       
 11645   var _super = _createSuper(SlotFillProvider);
       
 11646 
       
 11647   function SlotFillProvider() {
       
 11648     var _this;
       
 11649 
       
 11650     Object(classCallCheck["a" /* default */])(this, SlotFillProvider);
       
 11651 
       
 11652     _this = _super.apply(this, arguments);
       
 11653     _this.registerSlot = _this.registerSlot.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11654     _this.registerFill = _this.registerFill.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11655     _this.unregisterSlot = _this.unregisterSlot.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11656     _this.unregisterFill = _this.unregisterFill.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11657     _this.getSlot = _this.getSlot.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11658     _this.getFills = _this.getFills.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11659     _this.hasFills = _this.hasFills.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11660     _this.subscribe = _this.subscribe.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 11661     _this.slots = {};
       
 11662     _this.fills = {};
       
 11663     _this.listeners = [];
       
 11664     _this.contextValue = {
       
 11665       registerSlot: _this.registerSlot,
       
 11666       unregisterSlot: _this.unregisterSlot,
       
 11667       registerFill: _this.registerFill,
       
 11668       unregisterFill: _this.unregisterFill,
       
 11669       getSlot: _this.getSlot,
       
 11670       getFills: _this.getFills,
       
 11671       hasFills: _this.hasFills,
       
 11672       subscribe: _this.subscribe
       
 11673     };
       
 11674     return _this;
       
 11675   }
       
 11676 
       
 11677   Object(createClass["a" /* default */])(SlotFillProvider, [{
       
 11678     key: "registerSlot",
       
 11679     value: function registerSlot(name, slot) {
       
 11680       var previousSlot = this.slots[name];
       
 11681       this.slots[name] = slot;
       
 11682       this.triggerListeners(); // Sometimes the fills are registered after the initial render of slot
       
 11683       // But before the registerSlot call, we need to rerender the slot
       
 11684 
       
 11685       this.forceUpdateSlot(name); // If a new instance of a slot is being mounted while another with the
       
 11686       // same name exists, force its update _after_ the new slot has been
       
 11687       // assigned into the instance, such that its own rendering of children
       
 11688       // will be empty (the new Slot will subsume all fills for this name).
       
 11689 
       
 11690       if (previousSlot) {
       
 11691         previousSlot.forceUpdate();
       
 11692       }
       
 11693     }
       
 11694   }, {
       
 11695     key: "registerFill",
       
 11696     value: function registerFill(name, instance) {
       
 11697       this.fills[name] = [].concat(Object(toConsumableArray["a" /* default */])(this.fills[name] || []), [instance]);
       
 11698       this.forceUpdateSlot(name);
       
 11699     }
       
 11700   }, {
       
 11701     key: "unregisterSlot",
       
 11702     value: function unregisterSlot(name, instance) {
       
 11703       // If a previous instance of a Slot by this name unmounts, do nothing,
       
 11704       // as the slot and its fills should only be removed for the current
       
 11705       // known instance.
       
 11706       if (this.slots[name] !== instance) {
       
 11707         return;
       
 11708       }
       
 11709 
       
 11710       delete this.slots[name];
       
 11711       this.triggerListeners();
       
 11712     }
       
 11713   }, {
       
 11714     key: "unregisterFill",
       
 11715     value: function unregisterFill(name, instance) {
       
 11716       this.fills[name] = Object(external_this_lodash_["without"])(this.fills[name], instance);
       
 11717       this.resetFillOccurrence(name);
       
 11718       this.forceUpdateSlot(name);
       
 11719     }
       
 11720   }, {
       
 11721     key: "getSlot",
       
 11722     value: function getSlot(name) {
       
 11723       return this.slots[name];
       
 11724     }
       
 11725   }, {
       
 11726     key: "getFills",
       
 11727     value: function getFills(name, slotInstance) {
       
 11728       // Fills should only be returned for the current instance of the slot
       
 11729       // in which they occupy.
       
 11730       if (this.slots[name] !== slotInstance) {
       
 11731         return [];
       
 11732       }
       
 11733 
       
 11734       return Object(external_this_lodash_["sortBy"])(this.fills[name], 'occurrence');
       
 11735     }
       
 11736   }, {
       
 11737     key: "hasFills",
       
 11738     value: function hasFills(name) {
       
 11739       return this.fills[name] && !!this.fills[name].length;
       
 11740     }
       
 11741   }, {
       
 11742     key: "resetFillOccurrence",
       
 11743     value: function resetFillOccurrence(name) {
       
 11744       Object(external_this_lodash_["forEach"])(this.fills[name], function (instance) {
       
 11745         instance.occurrence = undefined;
       
 11746       });
       
 11747     }
       
 11748   }, {
       
 11749     key: "forceUpdateSlot",
       
 11750     value: function forceUpdateSlot(name) {
       
 11751       var slot = this.getSlot(name);
       
 11752 
       
 11753       if (slot) {
       
 11754         slot.forceUpdate();
       
 11755       }
       
 11756     }
       
 11757   }, {
       
 11758     key: "triggerListeners",
       
 11759     value: function triggerListeners() {
       
 11760       this.listeners.forEach(function (listener) {
       
 11761         return listener();
       
 11762       });
       
 11763     }
       
 11764   }, {
       
 11765     key: "subscribe",
       
 11766     value: function subscribe(listener) {
       
 11767       var _this2 = this;
       
 11768 
       
 11769       this.listeners.push(listener);
       
 11770       return function () {
       
 11771         _this2.listeners = Object(external_this_lodash_["without"])(_this2.listeners, listener);
       
 11772       };
       
 11773     }
       
 11774   }, {
       
 11775     key: "render",
       
 11776     value: function render() {
       
 11777       return Object(external_this_wp_element_["createElement"])(Provider, {
       
 11778         value: this.contextValue
       
 11779       }, Object(external_this_wp_element_["createElement"])(slot_fill_provider_SlotFillProvider, null, this.props.children));
       
 11780     }
       
 11781   }]);
       
 11782 
       
 11783   return SlotFillProvider;
       
 11784 }(external_this_wp_element_["Component"]);
       
 11785 /**
       
 11786  * React hook returning the active slot given a name.
       
 11787  *
       
 11788  * @param {string} name Slot name.
       
 11789  * @return {Object} Slot object.
       
 11790  */
       
 11791 
       
 11792 
       
 11793 var context_useSlot = function useSlot(name) {
       
 11794   var _useContext = Object(external_this_wp_element_["useContext"])(SlotFillContext),
       
 11795       getSlot = _useContext.getSlot,
       
 11796       subscribe = _useContext.subscribe;
       
 11797 
       
 11798   var _useState = Object(external_this_wp_element_["useState"])(getSlot(name)),
       
 11799       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 11800       slot = _useState2[0],
       
 11801       setSlot = _useState2[1];
       
 11802 
       
 11803   Object(external_this_wp_element_["useEffect"])(function () {
       
 11804     setSlot(getSlot(name));
       
 11805     var unsubscribe = subscribe(function () {
       
 11806       setSlot(getSlot(name));
       
 11807     });
       
 11808     return unsubscribe;
       
 11809   }, [name]);
       
 11810   return slot;
       
 11811 };
       
 11812 /* harmony default export */ var context = __webpack_exports__["b"] = (context_SlotFillProvider);
       
 11813 
       
 11814 
       
 11815 
       
 11816 /***/ }),
       
 11817 /* 125 */,
       
 11818 /* 126 */,
       
 11819 /* 127 */
  2406 /***/ (function(module, exports) {
 11820 /***/ (function(module, exports) {
  2407 
 11821 
  2408 var g;
 11822 var g;
  2409 
 11823 
  2410 // This works in non-strict mode
 11824 // This works in non-strict mode
  2426 
 11840 
  2427 module.exports = g;
 11841 module.exports = g;
  2428 
 11842 
  2429 
 11843 
  2430 /***/ }),
 11844 /***/ }),
  2431 /* 60 */,
 11845 /* 128 */
  2432 /* 61 */,
       
  2433 /* 62 */,
       
  2434 /* 63 */,
       
  2435 /* 64 */
       
  2436 /***/ (function(module, exports, __webpack_require__) {
 11846 /***/ (function(module, exports, __webpack_require__) {
  2437 
 11847 
  2438 var moment = __webpack_require__(29);
 11848 "use strict";
  2439 var momentValidationWrapper = __webpack_require__(288);
 11849 
  2440 var core = __webpack_require__(289);
 11850 
  2441 
 11851 // https://www.ecma-international.org/ecma-262/6.0/#sec-ispropertykey
  2442 module.exports = {
 11852 
  2443 
 11853 module.exports = function IsPropertyKey(argument) {
  2444   momentObj : core.createMomentChecker(
 11854 	return typeof argument === 'string' || typeof argument === 'symbol';
  2445     'object',
       
  2446     function(obj) {
       
  2447       return typeof obj === 'object';
       
  2448     },
       
  2449     function isValid(value) {
       
  2450       return momentValidationWrapper.isValidMoment(value);
       
  2451     },
       
  2452     'Moment'
       
  2453   ),
       
  2454 
       
  2455   momentString : core.createMomentChecker(
       
  2456     'string',
       
  2457     function(str) {
       
  2458       return typeof str === 'string';
       
  2459     },
       
  2460     function isValid(value) {
       
  2461       return momentValidationWrapper.isValidMoment(moment(value));
       
  2462     },
       
  2463     'Moment'
       
  2464   ),
       
  2465 
       
  2466   momentDurationObj : core.createMomentChecker(
       
  2467     'object',
       
  2468     function(obj) {
       
  2469       return typeof obj === 'object';
       
  2470     },
       
  2471     function isValid(value) {
       
  2472       return moment.isDuration(value);
       
  2473     },
       
  2474     'Duration'
       
  2475   ),
       
  2476 
       
  2477 };
 11855 };
  2478 
 11856 
  2479 
 11857 
  2480 /***/ }),
 11858 /***/ }),
  2481 /* 65 */
 11859 /* 129 */
  2482 /***/ (function(module, exports, __webpack_require__) {
 11860 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  2483 
 11861 
  2484 var rng = __webpack_require__(87);
 11862 "use strict";
  2485 var bytesToUuid = __webpack_require__(88);
 11863 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20);
  2486 
 11864 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(19);
  2487 function v4(options, buf, offset) {
 11865 /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12);
  2488   var i = buf && offset || 0;
 11866 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23);
  2489 
 11867 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16);
  2490   if (typeof(options) == 'string') {
 11868 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(22);
  2491     buf = options === 'binary' ? new Array(16) : null;
 11869 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(0);
  2492     options = null;
 11870 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__);
  2493   }
 11871 /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(9);
  2494   options = options || {};
 11872 /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_compose__WEBPACK_IMPORTED_MODULE_7__);
  2495 
 11873 /* harmony import */ var _wordpress_keycodes__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(21);
  2496   var rnds = options.random || (options.rng || rng)();
 11874 /* harmony import */ var _wordpress_keycodes__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_wordpress_keycodes__WEBPACK_IMPORTED_MODULE_8__);
  2497 
 11875 /* harmony import */ var _wordpress_dom__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(30);
  2498   // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
 11876 /* harmony import */ var _wordpress_dom__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_wordpress_dom__WEBPACK_IMPORTED_MODULE_9__);
  2499   rnds[6] = (rnds[6] & 0x0f) | 0x40;
 11877 
  2500   rnds[8] = (rnds[8] & 0x3f) | 0x80;
 11878 
  2501 
 11879 
  2502   // Copy bytes to buffer, if provided
 11880 
  2503   if (buf) {
 11881 
  2504     for (var ii = 0; ii < 16; ++ii) {
 11882 
  2505       buf[i + ii] = rnds[ii];
 11883 
  2506     }
 11884 
  2507   }
 11885 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(this, result); }; }
  2508 
 11886 
  2509   return buf || bytesToUuid(rnds);
 11887 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
  2510 }
 11888 
  2511 
 11889 /**
  2512 module.exports = v4;
 11890  * WordPress dependencies
       
 11891  */
       
 11892 
       
 11893 
       
 11894 
       
 11895 
       
 11896 var withConstrainedTabbing = Object(_wordpress_compose__WEBPACK_IMPORTED_MODULE_7__["createHigherOrderComponent"])(function (WrappedComponent) {
       
 11897   return /*#__PURE__*/function (_Component) {
       
 11898     Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(_class, _Component);
       
 11899 
       
 11900     var _super = _createSuper(_class);
       
 11901 
       
 11902     function _class() {
       
 11903       var _this;
       
 11904 
       
 11905       Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this, _class);
       
 11906 
       
 11907       _this = _super.apply(this, arguments);
       
 11908       _this.focusContainRef = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createRef"])();
       
 11909       _this.handleTabBehaviour = _this.handleTabBehaviour.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_this));
       
 11910       return _this;
       
 11911     }
       
 11912 
       
 11913     Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_class, [{
       
 11914       key: "handleTabBehaviour",
       
 11915       value: function handleTabBehaviour(event) {
       
 11916         if (event.keyCode !== _wordpress_keycodes__WEBPACK_IMPORTED_MODULE_8__["TAB"]) {
       
 11917           return;
       
 11918         }
       
 11919 
       
 11920         var tabbables = _wordpress_dom__WEBPACK_IMPORTED_MODULE_9__["focus"].tabbable.find(this.focusContainRef.current);
       
 11921 
       
 11922         if (!tabbables.length) {
       
 11923           return;
       
 11924         }
       
 11925 
       
 11926         var firstTabbable = tabbables[0];
       
 11927         var lastTabbable = tabbables[tabbables.length - 1];
       
 11928 
       
 11929         if (event.shiftKey && event.target === firstTabbable) {
       
 11930           event.preventDefault();
       
 11931           lastTabbable.focus();
       
 11932         } else if (!event.shiftKey && event.target === lastTabbable) {
       
 11933           event.preventDefault();
       
 11934           firstTabbable.focus();
       
 11935           /*
       
 11936            * When pressing Tab and none of the tabbables has focus, the keydown
       
 11937            * event happens on the wrapper div: move focus on the first tabbable.
       
 11938            */
       
 11939         } else if (!tabbables.includes(event.target)) {
       
 11940           event.preventDefault();
       
 11941           firstTabbable.focus();
       
 11942         }
       
 11943       }
       
 11944     }, {
       
 11945       key: "render",
       
 11946       value: function render() {
       
 11947         // Disable reason: this component is non-interactive, but must capture
       
 11948         // events from the wrapped component to determine when the Tab key is used.
       
 11949 
       
 11950         /* eslint-disable jsx-a11y/no-static-element-interactions */
       
 11951         return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])("div", {
       
 11952           onKeyDown: this.handleTabBehaviour,
       
 11953           ref: this.focusContainRef,
       
 11954           tabIndex: "-1"
       
 11955         }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])(WrappedComponent, this.props));
       
 11956         /* eslint-enable jsx-a11y/no-static-element-interactions */
       
 11957       }
       
 11958     }]);
       
 11959 
       
 11960     return _class;
       
 11961   }(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["Component"]);
       
 11962 }, 'withConstrainedTabbing');
       
 11963 /* harmony default export */ __webpack_exports__["a"] = (withConstrainedTabbing);
  2513 
 11964 
  2514 
 11965 
  2515 /***/ }),
 11966 /***/ }),
  2516 /* 66 */,
 11967 /* 130 */
  2517 /* 67 */
 11968 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  2518 /***/ (function(module, exports, __webpack_require__) {
       
  2519 
 11969 
  2520 "use strict";
 11970 "use strict";
  2521 
 11971 /* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(18);
  2522 
 11972 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20);
  2523 module.exports = __webpack_require__(115);
 11973 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(19);
       
 11974 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(23);
       
 11975 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16);
       
 11976 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(22);
       
 11977 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(0);
       
 11978 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__);
       
 11979 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(2);
       
 11980 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_7__);
       
 11981 /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(9);
       
 11982 /* harmony import */ var _wordpress_compose__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_wordpress_compose__WEBPACK_IMPORTED_MODULE_8__);
       
 11983 /* harmony import */ var _context__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(193);
       
 11984 
       
 11985 
       
 11986 
       
 11987 
       
 11988 
       
 11989 
       
 11990 
       
 11991 
       
 11992 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(this, result); }; }
       
 11993 
       
 11994 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 11995 
       
 11996 /**
       
 11997  * External dependencies
       
 11998  */
       
 11999 
       
 12000 /**
       
 12001  * WordPress dependencies
       
 12002  */
       
 12003 
       
 12004 
       
 12005 
       
 12006 /**
       
 12007  * Internal dependencies
       
 12008  */
       
 12009 
       
 12010 
       
 12011 /**
       
 12012  * Returns true if the given object is component-like. An object is component-
       
 12013  * like if it is an instance of wp.element.Component, or is a function.
       
 12014  *
       
 12015  * @param {*} object Object to test.
       
 12016  *
       
 12017  * @return {boolean} Whether object is component-like.
       
 12018  */
       
 12019 
       
 12020 function isComponentLike(object) {
       
 12021   return object instanceof _wordpress_element__WEBPACK_IMPORTED_MODULE_6__["Component"] || typeof object === 'function';
       
 12022 }
       
 12023 /**
       
 12024  * Higher Order Component used to be used to wrap disposable elements like
       
 12025  * sidebars, modals, dropdowns. When mounting the wrapped component, we track a
       
 12026  * reference to the current active element so we know where to restore focus
       
 12027  * when the component is unmounted.
       
 12028  *
       
 12029  * @param {(WPComponent|Object)} options The component to be enhanced with
       
 12030  *                                      focus return behavior, or an object
       
 12031  *                                      describing the component and the
       
 12032  *                                      focus return characteristics.
       
 12033  *
       
 12034  * @return {WPComponent} Component with the focus restauration behaviour.
       
 12035  */
       
 12036 
       
 12037 
       
 12038 function withFocusReturn(options) {
       
 12039   // Normalize as overloaded form `withFocusReturn( options )( Component )`
       
 12040   // or as `withFocusReturn( Component )`.
       
 12041   if (isComponentLike(options)) {
       
 12042     var WrappedComponent = options;
       
 12043     return withFocusReturn({})(WrappedComponent);
       
 12044   }
       
 12045 
       
 12046   var _options$onFocusRetur = options.onFocusReturn,
       
 12047       onFocusReturn = _options$onFocusRetur === void 0 ? lodash__WEBPACK_IMPORTED_MODULE_7__["stubTrue"] : _options$onFocusRetur;
       
 12048   return function (WrappedComponent) {
       
 12049     var FocusReturn = /*#__PURE__*/function (_Component) {
       
 12050       Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(FocusReturn, _Component);
       
 12051 
       
 12052       var _super = _createSuper(FocusReturn);
       
 12053 
       
 12054       function FocusReturn() {
       
 12055         var _this;
       
 12056 
       
 12057         Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(this, FocusReturn);
       
 12058 
       
 12059         _this = _super.apply(this, arguments);
       
 12060         _this.ownFocusedElements = new Set();
       
 12061         _this.activeElementOnMount = document.activeElement;
       
 12062 
       
 12063         _this.setIsFocusedFalse = function () {
       
 12064           return _this.isFocused = false;
       
 12065         };
       
 12066 
       
 12067         _this.setIsFocusedTrue = function (event) {
       
 12068           _this.ownFocusedElements.add(event.target);
       
 12069 
       
 12070           _this.isFocused = true;
       
 12071         };
       
 12072 
       
 12073         return _this;
       
 12074       }
       
 12075 
       
 12076       Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(FocusReturn, [{
       
 12077         key: "componentWillUnmount",
       
 12078         value: function componentWillUnmount() {
       
 12079           var activeElementOnMount = this.activeElementOnMount,
       
 12080               isFocused = this.isFocused,
       
 12081               ownFocusedElements = this.ownFocusedElements;
       
 12082 
       
 12083           if (!isFocused) {
       
 12084             return;
       
 12085           } // Defer to the component's own explicit focus return behavior,
       
 12086           // if specified. The function should return `false` to prevent
       
 12087           // the default behavior otherwise occurring here. This allows
       
 12088           // for support that the `onFocusReturn` decides to allow the
       
 12089           // default behavior to occur under some conditions.
       
 12090 
       
 12091 
       
 12092           if (onFocusReturn() === false) {
       
 12093             return;
       
 12094           }
       
 12095 
       
 12096           var stack = [].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(lodash__WEBPACK_IMPORTED_MODULE_7__["without"].apply(void 0, [this.props.focus.focusHistory].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(ownFocusedElements)))), [activeElementOnMount]);
       
 12097           var candidate;
       
 12098 
       
 12099           while (candidate = stack.pop()) {
       
 12100             if (document.body.contains(candidate)) {
       
 12101               candidate.focus();
       
 12102               return;
       
 12103             }
       
 12104           }
       
 12105         }
       
 12106       }, {
       
 12107         key: "render",
       
 12108         value: function render() {
       
 12109           return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])("div", {
       
 12110             onFocus: this.setIsFocusedTrue,
       
 12111             onBlur: this.setIsFocusedFalse
       
 12112           }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])(WrappedComponent, this.props.childProps));
       
 12113         }
       
 12114       }]);
       
 12115 
       
 12116       return FocusReturn;
       
 12117     }(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["Component"]);
       
 12118 
       
 12119     return function (props) {
       
 12120       return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])(_context__WEBPACK_IMPORTED_MODULE_9__[/* Consumer */ "a"], null, function (context) {
       
 12121         return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_6__["createElement"])(FocusReturn, {
       
 12122           childProps: props,
       
 12123           focus: context
       
 12124         });
       
 12125       });
       
 12126     };
       
 12127   };
       
 12128 }
       
 12129 
       
 12130 /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_compose__WEBPACK_IMPORTED_MODULE_8__["createHigherOrderComponent"])(withFocusReturn, 'withFocusReturn'));
       
 12131 
       
 12132 
  2524 
 12133 
  2525 /***/ }),
 12134 /***/ }),
  2526 /* 68 */,
 12135 /* 131 */
  2527 /* 69 */,
 12136 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  2528 /* 70 */,
       
  2529 /* 71 */,
       
  2530 /* 72 */,
       
  2531 /* 73 */
       
  2532 /***/ (function(module, exports, __webpack_require__) {
       
  2533 
 12137 
  2534 "use strict";
 12138 "use strict";
  2535 
 12139 /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
  2536 
 12140 /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(15);
  2537 var keys = __webpack_require__(141);
 12141 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
  2538 var foreach = __webpack_require__(267);
 12142 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
  2539 var hasSymbols = typeof Symbol === 'function' && typeof Symbol() === 'symbol';
 12143 
  2540 
 12144 
  2541 var toStr = Object.prototype.toString;
 12145 
  2542 
 12146 
  2543 var isFunction = function (fn) {
 12147 /**
  2544 	return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
 12148  * WordPress dependencies
  2545 };
 12149  */
  2546 
 12150 
  2547 var arePropertyDescriptorsSupported = function () {
 12151 
  2548 	var obj = {};
 12152 function stopPropagation(event) {
  2549 	try {
 12153   event.stopPropagation();
  2550 		Object.defineProperty(obj, 'x', { enumerable: false, value: obj });
 12154 }
  2551         /* eslint-disable no-unused-vars, no-restricted-syntax */
 12155 
  2552         for (var _ in obj) { return false; }
 12156 /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["forwardRef"])(function (_ref, ref) {
  2553         /* eslint-enable no-unused-vars, no-restricted-syntax */
 12157   var children = _ref.children,
  2554 		return obj.x === obj;
 12158       props = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_ref, ["children"]);
  2555 	} catch (e) { /* this is IE 8. */
 12159 
  2556 		return false;
 12160   // Disable reason: this stops certain events from propagating outside of the component.
  2557 	}
 12161   //   - onMouseDown is disabled as this can cause interactions with other DOM elements
  2558 };
 12162 
  2559 var supportsDescriptors = Object.defineProperty && arePropertyDescriptorsSupported();
 12163   /* eslint-disable jsx-a11y/no-static-element-interactions */
  2560 
 12164   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["createElement"])("div", Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, props, {
  2561 var defineProperty = function (object, name, value, predicate) {
 12165     ref: ref,
  2562 	if (name in object && (!isFunction(predicate) || !predicate())) {
 12166     onMouseDown: stopPropagation
  2563 		return;
 12167   }), children);
  2564 	}
 12168   /* eslint-enable jsx-a11y/no-static-element-interactions */
  2565 	if (supportsDescriptors) {
 12169 }));
  2566 		Object.defineProperty(object, name, {
       
  2567 			configurable: true,
       
  2568 			enumerable: false,
       
  2569 			value: value,
       
  2570 			writable: true
       
  2571 		});
       
  2572 	} else {
       
  2573 		object[name] = value;
       
  2574 	}
       
  2575 };
       
  2576 
       
  2577 var defineProperties = function (object, map) {
       
  2578 	var predicates = arguments.length > 2 ? arguments[2] : {};
       
  2579 	var props = keys(map);
       
  2580 	if (hasSymbols) {
       
  2581 		props = props.concat(Object.getOwnPropertySymbols(map));
       
  2582 	}
       
  2583 	foreach(props, function (name) {
       
  2584 		defineProperty(object, name, map[name], predicates[name]);
       
  2585 	});
       
  2586 };
       
  2587 
       
  2588 defineProperties.supportsDescriptors = !!supportsDescriptors;
       
  2589 
       
  2590 module.exports = defineProperties;
       
  2591 
 12170 
  2592 
 12171 
  2593 /***/ }),
 12172 /***/ }),
  2594 /* 74 */
 12173 /* 132 */
  2595 /***/ (function(module, exports, __webpack_require__) {
 12174 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  2596 
 12175 
  2597 "use strict";
 12176 "use strict";
  2598 
 12177 /* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
  2599 
 12178 /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(5);
  2600 var implementation = __webpack_require__(268);
 12179 /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(15);
  2601 
 12180 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(0);
  2602 module.exports = Function.prototype.bind || implementation;
 12181 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__);
  2603 
 12182 /* harmony import */ var reakit_Toolbar__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(469);
       
 12183 /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(104);
       
 12184 /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_warning__WEBPACK_IMPORTED_MODULE_5__);
       
 12185 /* harmony import */ var _toolbar_context__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(87);
       
 12186 
       
 12187 
       
 12188 
       
 12189 
       
 12190 
       
 12191 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 12192 
       
 12193 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 12194 
       
 12195 /**
       
 12196  * External dependencies
       
 12197  */
       
 12198 
       
 12199 /**
       
 12200  * WordPress dependencies
       
 12201  */
       
 12202 
       
 12203 
       
 12204 
       
 12205 /**
       
 12206  * Internal dependencies
       
 12207  */
       
 12208 
       
 12209 
       
 12210 
       
 12211 function ToolbarItem(_ref, ref) {
       
 12212   var children = _ref.children,
       
 12213       Component = _ref.as,
       
 12214       props = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(_ref, ["children", "as"]);
       
 12215 
       
 12216   var accessibleToolbarState = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["useContext"])(_toolbar_context__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"]);
       
 12217 
       
 12218   if (typeof children !== 'function' && !Component) {
       
 12219     typeof process !== "undefined" && process.env && "production" !== "production" ? _wordpress_warning__WEBPACK_IMPORTED_MODULE_5___default()('`ToolbarItem` is a generic headless component. You must pass either a `children` prop as a function or an `as` prop as a component.') : void 0;
       
 12220     return null;
       
 12221   }
       
 12222 
       
 12223   var allProps = _objectSpread({}, props, {
       
 12224     ref: ref,
       
 12225     'data-experimental-toolbar-item': true
       
 12226   });
       
 12227 
       
 12228   if (!accessibleToolbarState) {
       
 12229     if (Component) {
       
 12230       return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(Component, allProps, children);
       
 12231     }
       
 12232 
       
 12233     return children(allProps);
       
 12234   }
       
 12235 
       
 12236   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["createElement"])(reakit_Toolbar__WEBPACK_IMPORTED_MODULE_4__[/* ToolbarItem */ "a"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({}, accessibleToolbarState, allProps, {
       
 12237     as: Component
       
 12238   }), children);
       
 12239 }
       
 12240 
       
 12241 /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_3__["forwardRef"])(ToolbarItem));
       
 12242 
       
 12243 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(117)))
  2604 
 12244 
  2605 /***/ }),
 12245 /***/ }),
  2606 /* 75 */
 12246 /* 133 */
  2607 /***/ (function(module, exports, __webpack_require__) {
 12247 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  2608 
 12248 
  2609 "use strict";
 12249 "use strict";
  2610 
 12250 /* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
  2611 
 12251 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  2612 Object.defineProperty(exports, "__esModule", {
 12252 /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(104);
  2613   value: true
 12253 /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_warning__WEBPACK_IMPORTED_MODULE_1__);
       
 12254 /**
       
 12255  * WordPress dependencies
       
 12256  */
       
 12257 
       
 12258 
       
 12259 var SlotFillContext = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createContext"])({
       
 12260   slots: {},
       
 12261   fills: {},
       
 12262   registerSlot: function registerSlot() {
       
 12263     typeof process !== "undefined" && process.env && "production" !== "production" ? _wordpress_warning__WEBPACK_IMPORTED_MODULE_1___default()('Components must be wrapped within `SlotFillProvider`. ' + 'See https://developer.wordpress.org/block-editor/components/slot-fill/') : void 0;
       
 12264   },
       
 12265   updateSlot: function updateSlot() {},
       
 12266   unregisterSlot: function unregisterSlot() {},
       
 12267   registerFill: function registerFill() {},
       
 12268   unregisterFill: function unregisterFill() {}
  2614 });
 12269 });
  2615 
 12270 /* harmony default export */ __webpack_exports__["a"] = (SlotFillContext);
  2616 var _propTypes = __webpack_require__(31);
 12271 
  2617 
 12272 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(117)))
  2618 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  2619 
       
  2620 var _constants = __webpack_require__(39);
       
  2621 
       
  2622 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  2623 
       
  2624 exports['default'] = _propTypes2['default'].oneOf(_constants.WEEKDAYS);
       
  2625 
 12273 
  2626 /***/ }),
 12274 /***/ }),
  2627 /* 76 */,
 12275 /* 134 */,
  2628 /* 77 */,
 12276 /* 135 */,
  2629 /* 78 */
 12277 /* 136 */,
       
 12278 /* 137 */
       
 12279 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 12280 
       
 12281 "use strict";
       
 12282 /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
       
 12283 /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(15);
       
 12284 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(0);
       
 12285 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__);
       
 12286 
       
 12287 
       
 12288 
       
 12289 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 12290 
       
 12291 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 12292 
       
 12293 /**
       
 12294  * WordPress dependencies
       
 12295  */
       
 12296  // Disable reason: JSDoc linter doesn't seem to parse the union (`&`) correctly.
       
 12297 
       
 12298 /* eslint-disable jsdoc/valid-types */
       
 12299 
       
 12300 /** @typedef {{icon: JSX.Element, size?: number} & import('react').ComponentPropsWithoutRef<'SVG'>} IconProps */
       
 12301 
       
 12302 /* eslint-enable jsdoc/valid-types */
       
 12303 
       
 12304 /**
       
 12305  * Return an SVG icon.
       
 12306  *
       
 12307  * @param {IconProps} props icon is the SVG component to render
       
 12308  *                          size is a number specifiying the icon size in pixels
       
 12309  *                          Other props will be passed to wrapped SVG component
       
 12310  *
       
 12311  * @return {JSX.Element}  Icon component
       
 12312  */
       
 12313 
       
 12314 function Icon(_ref) {
       
 12315   var icon = _ref.icon,
       
 12316       _ref$size = _ref.size,
       
 12317       size = _ref$size === void 0 ? 24 : _ref$size,
       
 12318       props = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_ref, ["icon", "size"]);
       
 12319 
       
 12320   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_2__["cloneElement"])(icon, _objectSpread({
       
 12321     width: size,
       
 12322     height: size
       
 12323   }, props));
       
 12324 }
       
 12325 
       
 12326 /* harmony default export */ __webpack_exports__["a"] = (Icon);
       
 12327 
       
 12328 
       
 12329 /***/ }),
       
 12330 /* 138 */
  2630 /***/ (function(module, exports, __webpack_require__) {
 12331 /***/ (function(module, exports, __webpack_require__) {
  2631 
 12332 
  2632 "use strict";
 12333 "use strict";
  2633 /**
 12334 /**
  2634  * Copyright (c) 2013-present, Facebook, Inc.
 12335  * Copyright (c) 2013-present, Facebook, Inc.
  2635  *
 12336  *
  2636  * This source code is licensed under the MIT license found in the
 12337  * This source code is licensed under the MIT license found in the
  2637  * LICENSE file in the root directory of this source tree.
 12338  * LICENSE file in the root directory of this source tree.
  2638  *
 12339  */
  2639  * @providesModule shallowCompare
 12340 
  2640  */
 12341 
  2641 
 12342 
  2642 
 12343 var ReactPropTypesSecret = __webpack_require__(139);
  2643 
       
  2644 var shallowEqual = __webpack_require__(287);
       
  2645 
       
  2646 /**
       
  2647  * Does a shallow comparison for props and state.
       
  2648  * See ReactComponentWithPureRenderMixin
       
  2649  * See also https://facebook.github.io/react/docs/shallow-compare.html
       
  2650  */
       
  2651 function shallowCompare(instance, nextProps, nextState) {
       
  2652   return (
       
  2653     !shallowEqual(instance.props, nextProps) ||
       
  2654     !shallowEqual(instance.state, nextState)
       
  2655   );
       
  2656 }
       
  2657 
       
  2658 module.exports = shallowCompare;
       
  2659 
       
  2660 
       
  2661 /***/ }),
       
  2662 /* 79 */
       
  2663 /***/ (function(module, exports, __webpack_require__) {
       
  2664 
       
  2665 "use strict";
       
  2666 
       
  2667 
       
  2668 Object.defineProperty(exports, "__esModule", {
       
  2669   value: true
       
  2670 });
       
  2671 exports['default'] = isSameDay;
       
  2672 
       
  2673 var _moment = __webpack_require__(29);
       
  2674 
       
  2675 var _moment2 = _interopRequireDefault(_moment);
       
  2676 
       
  2677 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  2678 
       
  2679 function isSameDay(a, b) {
       
  2680   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
  2681   // Compare least significant, most likely to change units first
       
  2682   // Moment's isSame clones moment inputs and is a tad slow
       
  2683   return a.date() === b.date() && a.month() === b.month() && a.year() === b.year();
       
  2684 }
       
  2685 
       
  2686 /***/ }),
       
  2687 /* 80 */
       
  2688 /***/ (function(module, exports, __webpack_require__) {
       
  2689 
       
  2690 "use strict";
       
  2691 
       
  2692 
       
  2693 Object.defineProperty(exports, "__esModule", {
       
  2694   value: true
       
  2695 });
       
  2696 exports['default'] = toMomentObject;
       
  2697 
       
  2698 var _moment = __webpack_require__(29);
       
  2699 
       
  2700 var _moment2 = _interopRequireDefault(_moment);
       
  2701 
       
  2702 var _constants = __webpack_require__(39);
       
  2703 
       
  2704 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  2705 
       
  2706 function toMomentObject(dateString, customFormat) {
       
  2707   var dateFormats = customFormat ? [customFormat, _constants.DISPLAY_FORMAT, _constants.ISO_FORMAT] : [_constants.DISPLAY_FORMAT, _constants.ISO_FORMAT];
       
  2708 
       
  2709   var date = (0, _moment2['default'])(dateString, dateFormats, true);
       
  2710   return date.isValid() ? date.hour(12) : null;
       
  2711 }
       
  2712 
       
  2713 /***/ }),
       
  2714 /* 81 */
       
  2715 /***/ (function(module, exports, __webpack_require__) {
       
  2716 
       
  2717 "use strict";
       
  2718 
       
  2719 
       
  2720 Object.defineProperty(exports, "__esModule", {
       
  2721   value: true
       
  2722 });
       
  2723 
       
  2724 var _propTypes = __webpack_require__(31);
       
  2725 
       
  2726 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  2727 
       
  2728 var _constants = __webpack_require__(39);
       
  2729 
       
  2730 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  2731 
       
  2732 exports['default'] = _propTypes2['default'].oneOf([_constants.HORIZONTAL_ORIENTATION, _constants.VERTICAL_ORIENTATION, _constants.VERTICAL_SCROLLABLE]);
       
  2733 
       
  2734 /***/ }),
       
  2735 /* 82 */
       
  2736 /***/ (function(module, exports) {
       
  2737 
       
  2738 Object.defineProperty(exports, "__esModule", {
       
  2739   value: true
       
  2740 });
       
  2741 exports['default'] = isTouchDevice;
       
  2742 function isTouchDevice() {
       
  2743   return !!(typeof window !== 'undefined' && ('ontouchstart' in window || window.DocumentTouch && typeof document !== 'undefined' && document instanceof window.DocumentTouch)) || !!(typeof navigator !== 'undefined' && (navigator.maxTouchPoints || navigator.msMaxTouchPoints));
       
  2744 }
       
  2745 module.exports = exports['default'];
       
  2746 
       
  2747 /***/ }),
       
  2748 /* 83 */
       
  2749 /***/ (function(module, exports, __webpack_require__) {
       
  2750 
       
  2751 "use strict";
       
  2752 
       
  2753 
       
  2754 Object.defineProperty(exports, "__esModule", {
       
  2755   value: true
       
  2756 });
       
  2757 
       
  2758 var _propTypes = __webpack_require__(31);
       
  2759 
       
  2760 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  2761 
       
  2762 var _constants = __webpack_require__(39);
       
  2763 
       
  2764 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  2765 
       
  2766 exports['default'] = _propTypes2['default'].oneOf([_constants.OPEN_DOWN, _constants.OPEN_UP]);
       
  2767 
       
  2768 /***/ }),
       
  2769 /* 84 */,
       
  2770 /* 85 */,
       
  2771 /* 86 */,
       
  2772 /* 87 */
       
  2773 /***/ (function(module, exports) {
       
  2774 
       
  2775 // Unique ID creation requires a high quality random # generator.  In the
       
  2776 // browser this is a little complicated due to unknown quality of Math.random()
       
  2777 // and inconsistent support for the `crypto` API.  We do the best we can via
       
  2778 // feature-detection
       
  2779 
       
  2780 // getRandomValues needs to be invoked in a context where "this" is a Crypto
       
  2781 // implementation. Also, find the complete implementation of crypto on IE11.
       
  2782 var getRandomValues = (typeof(crypto) != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto)) ||
       
  2783                       (typeof(msCrypto) != 'undefined' && typeof window.msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto));
       
  2784 
       
  2785 if (getRandomValues) {
       
  2786   // WHATWG crypto RNG - http://wiki.whatwg.org/wiki/Crypto
       
  2787   var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef
       
  2788 
       
  2789   module.exports = function whatwgRNG() {
       
  2790     getRandomValues(rnds8);
       
  2791     return rnds8;
       
  2792   };
       
  2793 } else {
       
  2794   // Math.random()-based (RNG)
       
  2795   //
       
  2796   // If all else fails, use Math.random().  It's fast, but is of unspecified
       
  2797   // quality.
       
  2798   var rnds = new Array(16);
       
  2799 
       
  2800   module.exports = function mathRNG() {
       
  2801     for (var i = 0, r; i < 16; i++) {
       
  2802       if ((i & 0x03) === 0) r = Math.random() * 0x100000000;
       
  2803       rnds[i] = r >>> ((i & 0x03) << 3) & 0xff;
       
  2804     }
       
  2805 
       
  2806     return rnds;
       
  2807   };
       
  2808 }
       
  2809 
       
  2810 
       
  2811 /***/ }),
       
  2812 /* 88 */
       
  2813 /***/ (function(module, exports) {
       
  2814 
       
  2815 /**
       
  2816  * Convert array of 16 byte values to UUID string format of the form:
       
  2817  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
       
  2818  */
       
  2819 var byteToHex = [];
       
  2820 for (var i = 0; i < 256; ++i) {
       
  2821   byteToHex[i] = (i + 0x100).toString(16).substr(1);
       
  2822 }
       
  2823 
       
  2824 function bytesToUuid(buf, offset) {
       
  2825   var i = offset || 0;
       
  2826   var bth = byteToHex;
       
  2827   // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
       
  2828   return ([bth[buf[i++]], bth[buf[i++]], 
       
  2829 	bth[buf[i++]], bth[buf[i++]], '-',
       
  2830 	bth[buf[i++]], bth[buf[i++]], '-',
       
  2831 	bth[buf[i++]], bth[buf[i++]], '-',
       
  2832 	bth[buf[i++]], bth[buf[i++]], '-',
       
  2833 	bth[buf[i++]], bth[buf[i++]],
       
  2834 	bth[buf[i++]], bth[buf[i++]],
       
  2835 	bth[buf[i++]], bth[buf[i++]]]).join('');
       
  2836 }
       
  2837 
       
  2838 module.exports = bytesToUuid;
       
  2839 
       
  2840 
       
  2841 /***/ }),
       
  2842 /* 89 */
       
  2843 /***/ (function(module, exports, __webpack_require__) {
       
  2844 
       
  2845 "use strict";
       
  2846 /**
       
  2847  * Copyright (c) 2013-present, Facebook, Inc.
       
  2848  *
       
  2849  * This source code is licensed under the MIT license found in the
       
  2850  * LICENSE file in the root directory of this source tree.
       
  2851  */
       
  2852 
       
  2853 
       
  2854 
       
  2855 var ReactPropTypesSecret = __webpack_require__(90);
       
  2856 
 12344 
  2857 function emptyFunction() {}
 12345 function emptyFunction() {}
       
 12346 function emptyFunctionWithReset() {}
       
 12347 emptyFunctionWithReset.resetWarningCache = emptyFunction;
  2858 
 12348 
  2859 module.exports = function() {
 12349 module.exports = function() {
  2860   function shim(props, propName, componentName, location, propFullName, secret) {
 12350   function shim(props, propName, componentName, location, propFullName, secret) {
  2861     if (secret === ReactPropTypesSecret) {
 12351     if (secret === ReactPropTypesSecret) {
  2862       // It is still safe when called from React.
 12352       // It is still safe when called from React.
  2886     symbol: shim,
 12376     symbol: shim,
  2887 
 12377 
  2888     any: shim,
 12378     any: shim,
  2889     arrayOf: getShim,
 12379     arrayOf: getShim,
  2890     element: shim,
 12380     element: shim,
       
 12381     elementType: shim,
  2891     instanceOf: getShim,
 12382     instanceOf: getShim,
  2892     node: shim,
 12383     node: shim,
  2893     objectOf: getShim,
 12384     objectOf: getShim,
  2894     oneOf: getShim,
 12385     oneOf: getShim,
  2895     oneOfType: getShim,
 12386     oneOfType: getShim,
  2896     shape: getShim,
 12387     shape: getShim,
  2897     exact: getShim
 12388     exact: getShim,
       
 12389 
       
 12390     checkPropTypes: emptyFunctionWithReset,
       
 12391     resetWarningCache: emptyFunction
  2898   };
 12392   };
  2899 
 12393 
  2900   ReactPropTypes.checkPropTypes = emptyFunction;
       
  2901   ReactPropTypes.PropTypes = ReactPropTypes;
 12394   ReactPropTypes.PropTypes = ReactPropTypes;
  2902 
 12395 
  2903   return ReactPropTypes;
 12396   return ReactPropTypes;
  2904 };
 12397 };
  2905 
 12398 
  2906 
 12399 
  2907 /***/ }),
 12400 /***/ }),
  2908 /* 90 */
 12401 /* 139 */
  2909 /***/ (function(module, exports, __webpack_require__) {
 12402 /***/ (function(module, exports, __webpack_require__) {
  2910 
 12403 
  2911 "use strict";
 12404 "use strict";
  2912 /**
 12405 /**
  2913  * Copyright (c) 2013-present, Facebook, Inc.
 12406  * Copyright (c) 2013-present, Facebook, Inc.
  2922 
 12415 
  2923 module.exports = ReactPropTypesSecret;
 12416 module.exports = ReactPropTypesSecret;
  2924 
 12417 
  2925 
 12418 
  2926 /***/ }),
 12419 /***/ }),
  2927 /* 91 */
 12420 /* 140 */
  2928 /***/ (function(module, exports, __webpack_require__) {
 12421 /***/ (function(module, exports, __webpack_require__) {
  2929 
 12422 
  2930 "use strict";
 12423 "use strict";
  2931 
 12424 
  2932 
 12425 
  2933 var bind = __webpack_require__(74);
 12426 var GetIntrinsic = __webpack_require__(58);
  2934 
 12427 
  2935 module.exports = bind.call(Function.call, Object.prototype.hasOwnProperty);
 12428 var callBind = __webpack_require__(182);
       
 12429 
       
 12430 var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));
       
 12431 
       
 12432 module.exports = function callBoundIntrinsic(name, allowMissing) {
       
 12433 	var intrinsic = GetIntrinsic(name, !!allowMissing);
       
 12434 	if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.')) {
       
 12435 		return callBind(intrinsic);
       
 12436 	}
       
 12437 	return intrinsic;
       
 12438 };
  2936 
 12439 
  2937 
 12440 
  2938 /***/ }),
 12441 /***/ }),
  2939 /* 92 */
 12442 /* 141 */
       
 12443 /***/ (function(module, exports, __webpack_require__) {
       
 12444 
       
 12445 var moment = __webpack_require__(43);
       
 12446 var momentValidationWrapper = __webpack_require__(354);
       
 12447 var core = __webpack_require__(355);
       
 12448 
       
 12449 module.exports = {
       
 12450 
       
 12451   momentObj : core.createMomentChecker(
       
 12452     'object',
       
 12453     function(obj) {
       
 12454       return typeof obj === 'object';
       
 12455     },
       
 12456     function isValid(value) {
       
 12457       return momentValidationWrapper.isValidMoment(value);
       
 12458     },
       
 12459     'Moment'
       
 12460   ),
       
 12461 
       
 12462   momentString : core.createMomentChecker(
       
 12463     'string',
       
 12464     function(str) {
       
 12465       return typeof str === 'string';
       
 12466     },
       
 12467     function isValid(value) {
       
 12468       return momentValidationWrapper.isValidMoment(moment(value));
       
 12469     },
       
 12470     'Moment'
       
 12471   ),
       
 12472 
       
 12473   momentDurationObj : core.createMomentChecker(
       
 12474     'object',
       
 12475     function(obj) {
       
 12476       return typeof obj === 'object';
       
 12477     },
       
 12478     function isValid(value) {
       
 12479       return moment.isDuration(value);
       
 12480     },
       
 12481     'Duration'
       
 12482   ),
       
 12483 
       
 12484 };
       
 12485 
       
 12486 
       
 12487 /***/ }),
       
 12488 /* 142 */
  2940 /***/ (function(module, exports, __webpack_require__) {
 12489 /***/ (function(module, exports, __webpack_require__) {
  2941 
 12490 
  2942 "use strict";
 12491 "use strict";
  2943 
 12492 
  2944 
 12493 
  2945 Object.defineProperty(exports, "__esModule", {
 12494 Object.defineProperty(exports, "__esModule", {
  2946   value: true
 12495   value: true
  2947 });
 12496 });
  2948 
 12497 
  2949 var _propTypes = __webpack_require__(31);
 12498 var _propTypes = __webpack_require__(28);
  2950 
 12499 
  2951 var _propTypes2 = _interopRequireDefault(_propTypes);
 12500 var _propTypes2 = _interopRequireDefault(_propTypes);
  2952 
 12501 
  2953 var _constants = __webpack_require__(39);
 12502 var _constants = __webpack_require__(77);
  2954 
 12503 
  2955 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 12504 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  2956 
 12505 
  2957 exports['default'] = _propTypes2['default'].oneOf([_constants.ICON_BEFORE_POSITION, _constants.ICON_AFTER_POSITION]);
 12506 exports['default'] = _propTypes2['default'].oneOf([_constants.HORIZONTAL_ORIENTATION, _constants.VERTICAL_ORIENTATION, _constants.VERTICAL_SCROLLABLE]);
  2958 
 12507 
  2959 /***/ }),
 12508 /***/ }),
  2960 /* 93 */
 12509 /* 143 */
       
 12510 /***/ (function(module, exports, __webpack_require__) {
       
 12511 
       
 12512 "use strict";
       
 12513 /**
       
 12514  * Copyright (c) 2013-present, Facebook, Inc.
       
 12515  *
       
 12516  * This source code is licensed under the MIT license found in the
       
 12517  * LICENSE file in the root directory of this source tree.
       
 12518  *
       
 12519  * @providesModule shallowCompare
       
 12520  */
       
 12521 
       
 12522 
       
 12523 
       
 12524 var shallowEqual = __webpack_require__(369);
       
 12525 
       
 12526 /**
       
 12527  * Does a shallow comparison for props and state.
       
 12528  * See ReactComponentWithPureRenderMixin
       
 12529  * See also https://facebook.github.io/react/docs/shallow-compare.html
       
 12530  */
       
 12531 function shallowCompare(instance, nextProps, nextState) {
       
 12532   return (
       
 12533     !shallowEqual(instance.props, nextProps) ||
       
 12534     !shallowEqual(instance.state, nextState)
       
 12535   );
       
 12536 }
       
 12537 
       
 12538 module.exports = shallowCompare;
       
 12539 
       
 12540 
       
 12541 /***/ }),
       
 12542 /* 144 */,
       
 12543 /* 145 */
       
 12544 /***/ (function(module, exports) {
       
 12545 
       
 12546 function _inheritsLoose(subClass, superClass) {
       
 12547   subClass.prototype = Object.create(superClass.prototype);
       
 12548   subClass.prototype.constructor = subClass;
       
 12549   subClass.__proto__ = superClass;
       
 12550 }
       
 12551 
       
 12552 module.exports = _inheritsLoose;
       
 12553 
       
 12554 /***/ }),
       
 12555 /* 146 */,
       
 12556 /* 147 */,
       
 12557 /* 148 */
       
 12558 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 12559 
       
 12560 "use strict";
       
 12561 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Dashicon; });
       
 12562 /* harmony import */ var _babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8);
       
 12563 /* harmony import */ var _babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(15);
       
 12564 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(20);
       
 12565 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(19);
       
 12566 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(23);
       
 12567 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(16);
       
 12568 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(22);
       
 12569 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(0);
       
 12570 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__);
       
 12571 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(6);
       
 12572 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_8__);
       
 12573 
       
 12574 
       
 12575 
       
 12576 
       
 12577 
       
 12578 
       
 12579 
       
 12580 
       
 12581 
       
 12582 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this, result); }; }
       
 12583 
       
 12584 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 12585 
       
 12586 /* !!!
       
 12587 IF YOU ARE EDITING dashicon/index.jsx
       
 12588 THEN YOU ARE EDITING A FILE THAT GETS OUTPUT FROM THE DASHICONS REPO!
       
 12589 DO NOT EDIT THAT FILE! EDIT index-header.jsx and index-footer.jsx instead
       
 12590 OR if you're looking to change now SVGs get output, you'll need to edit strings in the Gruntfile :)
       
 12591 !!! */
       
 12592 
       
 12593 /**
       
 12594  * WordPress dependencies
       
 12595  */
       
 12596 
       
 12597 
       
 12598 
       
 12599 var Dashicon = /*#__PURE__*/function (_Component) {
       
 12600   Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(Dashicon, _Component);
       
 12601 
       
 12602   var _super = _createSuper(Dashicon);
       
 12603 
       
 12604   function Dashicon() {
       
 12605     Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(this, Dashicon);
       
 12606 
       
 12607     return _super.apply(this, arguments);
       
 12608   }
       
 12609 
       
 12610   Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(Dashicon, [{
       
 12611     key: "render",
       
 12612     value: function render() {
       
 12613       var _this$props = this.props,
       
 12614           icon = _this$props.icon,
       
 12615           _this$props$size = _this$props.size,
       
 12616           size = _this$props$size === void 0 ? 20 : _this$props$size,
       
 12617           className = _this$props.className,
       
 12618           extraProps = Object(_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_this$props, ["icon", "size", "className"]);
       
 12619 
       
 12620       var path;
       
 12621 
       
 12622       switch (icon) {
       
 12623         case 'admin-appearance':
       
 12624           path = 'M14.48 11.06L7.41 3.99l1.5-1.5c.5-.56 2.3-.47 3.51.32 1.21.8 1.43 1.28 2.91 2.1 1.18.64 2.45 1.26 4.45.85zm-.71.71L6.7 4.7 4.93 6.47c-.39.39-.39 1.02 0 1.41l1.06 1.06c.39.39.39 1.03 0 1.42-.6.6-1.43 1.11-2.21 1.69-.35.26-.7.53-1.01.84C1.43 14.23.4 16.08 1.4 17.07c.99 1 2.84-.03 4.18-1.36.31-.31.58-.66.85-1.02.57-.78 1.08-1.61 1.69-2.21.39-.39 1.02-.39 1.41 0l1.06 1.06c.39.39 1.02.39 1.41 0z';
       
 12625           break;
       
 12626 
       
 12627         case 'admin-collapse':
       
 12628           path = 'M10 2.16c4.33 0 7.84 3.51 7.84 7.84s-3.51 7.84-7.84 7.84S2.16 14.33 2.16 10 5.71 2.16 10 2.16zm2 11.72V6.12L6.18 9.97z';
       
 12629           break;
       
 12630 
       
 12631         case 'admin-comments':
       
 12632           path = 'M5 2h9c1.1 0 2 .9 2 2v7c0 1.1-.9 2-2 2h-2l-5 5v-5H5c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2z';
       
 12633           break;
       
 12634 
       
 12635         case 'admin-customizer':
       
 12636           path = 'M18.33 3.57s.27-.8-.31-1.36c-.53-.52-1.22-.24-1.22-.24-.61.3-5.76 3.47-7.67 5.57-.86.96-2.06 3.79-1.09 4.82.92.98 3.96-.17 4.79-1 2.06-2.06 5.21-7.17 5.5-7.79zM1.4 17.65c2.37-1.56 1.46-3.41 3.23-4.64.93-.65 2.22-.62 3.08.29.63.67.8 2.57-.16 3.46-1.57 1.45-4 1.55-6.15.89z';
       
 12637           break;
       
 12638 
       
 12639         case 'admin-generic':
       
 12640           path = 'M18 12h-2.18c-.17.7-.44 1.35-.81 1.93l1.54 1.54-2.1 2.1-1.54-1.54c-.58.36-1.23.63-1.91.79V19H8v-2.18c-.68-.16-1.33-.43-1.91-.79l-1.54 1.54-2.12-2.12 1.54-1.54c-.36-.58-.63-1.23-.79-1.91H1V9.03h2.17c.16-.7.44-1.35.8-1.94L2.43 5.55l2.1-2.1 1.54 1.54c.58-.37 1.24-.64 1.93-.81V2h3v2.18c.68.16 1.33.43 1.91.79l1.54-1.54 2.12 2.12-1.54 1.54c.36.59.64 1.24.8 1.94H18V12zm-8.5 1.5c1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3 1.34 3 3 3z';
       
 12641           break;
       
 12642 
       
 12643         case 'admin-home':
       
 12644           path = 'M16 8.5l1.53 1.53-1.06 1.06L10 4.62l-6.47 6.47-1.06-1.06L10 2.5l4 4v-2h2v4zm-6-2.46l6 5.99V18H4v-5.97zM12 17v-5H8v5h4z';
       
 12645           break;
       
 12646 
       
 12647         case 'admin-links':
       
 12648           path = 'M17.74 2.76c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-1.12 1.12-2.7 1.47-4.14 1.09l2.62-2.61.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-3.38 3.38c-.37-1.44-.02-3.02 1.1-4.14l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM8.59 13.43l5.34-5.34c.42-.42.42-1.1 0-1.52-.44-.43-1.13-.39-1.53 0l-5.33 5.34c-.42.42-.42 1.1 0 1.52.44.43 1.13.39 1.52 0zm-.76 2.29l4.14-4.15c.38 1.44.03 3.02-1.09 4.14l-1.52 1.53c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.53-1.52c1.12-1.12 2.7-1.47 4.14-1.1l-4.14 4.15c-.85.84-.85 2.2 0 3.05.84.84 2.2.84 3.04 0z';
       
 12649           break;
       
 12650 
       
 12651         case 'admin-media':
       
 12652           path = 'M13 11V4c0-.55-.45-1-1-1h-1.67L9 1H5L3.67 3H2c-.55 0-1 .45-1 1v7c0 .55.45 1 1 1h10c.55 0 1-.45 1-1zM7 4.5c1.38 0 2.5 1.12 2.5 2.5S8.38 9.5 7 9.5 4.5 8.38 4.5 7 5.62 4.5 7 4.5zM14 6h5v10.5c0 1.38-1.12 2.5-2.5 2.5S14 17.88 14 16.5s1.12-2.5 2.5-2.5c.17 0 .34.02.5.05V9h-3V6zm-4 8.05V13h2v3.5c0 1.38-1.12 2.5-2.5 2.5S7 17.88 7 16.5 8.12 14 9.5 14c.17 0 .34.02.5.05z';
       
 12653           break;
       
 12654 
       
 12655         case 'admin-multisite':
       
 12656           path = 'M14.27 6.87L10 3.14 5.73 6.87 5 6.14l5-4.38 5 4.38zM14 8.42l-4.05 3.43L6 8.38v-.74l4-3.5 4 3.5v.78zM11 9.7V8H9v1.7h2zm-1.73 4.03L5 10 .73 13.73 0 13l5-4.38L10 13zm10 0L15 10l-4.27 3.73L10 13l5-4.38L20 13zM5 11l4 3.5V18H1v-3.5zm10 0l4 3.5V18h-8v-3.5zm-9 6v-2H4v2h2zm10 0v-2h-2v2h2z';
       
 12657           break;
       
 12658 
       
 12659         case 'admin-network':
       
 12660           path = 'M16.95 2.58c1.96 1.95 1.96 5.12 0 7.07-1.51 1.51-3.75 1.84-5.59 1.01l-1.87 3.31-2.99.31L5 18H2l-1-2 7.95-7.69c-.92-1.87-.62-4.18.93-5.73 1.95-1.96 5.12-1.96 7.07 0zm-2.51 3.79c.74 0 1.33-.6 1.33-1.34 0-.73-.59-1.33-1.33-1.33-.73 0-1.33.6-1.33 1.33 0 .74.6 1.34 1.33 1.34z';
       
 12661           break;
       
 12662 
       
 12663         case 'admin-page':
       
 12664           path = 'M6 15V2h10v13H6zm-1 1h8v2H3V5h2v11z';
       
 12665           break;
       
 12666 
       
 12667         case 'admin-plugins':
       
 12668           path = 'M13.11 4.36L9.87 7.6 8 5.73l3.24-3.24c.35-.34 1.05-.2 1.56.32.52.51.66 1.21.31 1.55zm-8 1.77l.91-1.12 9.01 9.01-1.19.84c-.71.71-2.63 1.16-3.82 1.16H6.14L4.9 17.26c-.59.59-1.54.59-2.12 0-.59-.58-.59-1.53 0-2.12l1.24-1.24v-3.88c0-1.13.4-3.19 1.09-3.89zm7.26 3.97l3.24-3.24c.34-.35 1.04-.21 1.55.31.52.51.66 1.21.31 1.55l-3.24 3.25z';
       
 12669           break;
       
 12670 
       
 12671         case 'admin-post':
       
 12672           path = 'M10.44 3.02l1.82-1.82 6.36 6.35-1.83 1.82c-1.05-.68-2.48-.57-3.41.36l-.75.75c-.92.93-1.04 2.35-.35 3.41l-1.83 1.82-2.41-2.41-2.8 2.79c-.42.42-3.38 2.71-3.8 2.29s1.86-3.39 2.28-3.81l2.79-2.79L4.1 9.36l1.83-1.82c1.05.69 2.48.57 3.4-.36l.75-.75c.93-.92 1.05-2.35.36-3.41z';
       
 12673           break;
       
 12674 
       
 12675         case 'admin-settings':
       
 12676           path = 'M18 16V4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h13c.55 0 1-.45 1-1zM8 11h1c.55 0 1 .45 1 1s-.45 1-1 1H8v1.5c0 .28-.22.5-.5.5s-.5-.22-.5-.5V13H6c-.55 0-1-.45-1-1s.45-1 1-1h1V5.5c0-.28.22-.5.5-.5s.5.22.5.5V11zm5-2h-1c-.55 0-1-.45-1-1s.45-1 1-1h1V5.5c0-.28.22-.5.5-.5s.5.22.5.5V7h1c.55 0 1 .45 1 1s-.45 1-1 1h-1v5.5c0 .28-.22.5-.5.5s-.5-.22-.5-.5V9z';
       
 12677           break;
       
 12678 
       
 12679         case 'admin-site-alt':
       
 12680           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zm7.5 6.48c-.274.896-.908 1.64-1.75 2.05-.45-1.69-1.658-3.074-3.27-3.75.13-.444.41-.83.79-1.09-.43-.28-1-.42-1.34.07-.53.69 0 1.61.21 2v.14c-.555-.337-.99-.84-1.24-1.44-.966-.03-1.922.208-2.76.69-.087-.565-.032-1.142.16-1.68.733.07 1.453-.23 1.92-.8.46-.52-.13-1.18-.59-1.58h.36c1.36-.01 2.702.335 3.89 1 1.36 1.005 2.194 2.57 2.27 4.26.24 0 .7-.55.91-.92.172.34.32.69.44 1.05zM9 16.84c-2.05-2.08.25-3.75-1-5.24-.92-.85-2.29-.26-3.11-1.23-.282-1.473.267-2.982 1.43-3.93.52-.44 4-1 5.42.22.83.715 1.415 1.674 1.67 2.74.46.035.918-.066 1.32-.29.41 2.98-3.15 6.74-5.73 7.73zM5.15 2.09c.786-.3 1.676-.028 2.16.66-.42.38-.94.63-1.5.72.02-.294.085-.584.19-.86l-.85-.52z';
       
 12681           break;
       
 12682 
       
 12683         case 'admin-site-alt2':
       
 12684           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zm2.92 12.34c0 .35.14.63.36.66.22.03.47-.22.58-.6l.2.08c.718.384 1.07 1.22.84 2-.15.69-.743 1.198-1.45 1.24-.49-1.21-2.11.06-3.56-.22-.612-.154-1.11-.6-1.33-1.19 1.19-.11 2.85-1.73 4.36-1.97zM8 11.27c.918 0 1.695-.68 1.82-1.59.44.54.41 1.324-.07 1.83-.255.223-.594.325-.93.28-.335-.047-.635-.236-.82-.52zm3-.76c.41.39 3-.06 3.52 1.09-.95-.2-2.95.61-3.47-1.08l-.05-.01zM9.73 5.45v.27c-.65-.77-1.33-1.07-1.61-.57-.28.5 1 1.11.76 1.88-.24.77-1.27.56-1.88 1.61-.61 1.05-.49 2.42 1.24 3.67-1.192-.132-2.19-.962-2.54-2.11-.4-1.2-.09-2.26-.78-2.46C4 7.46 3 8.71 3 9.8c-1.26-1.26.05-2.86-1.2-4.18C3.5 1.998 7.644.223 11.44 1.49c-1.1 1.02-1.722 2.458-1.71 3.96z';
       
 12685           break;
       
 12686 
       
 12687         case 'admin-site-alt3':
       
 12688           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zM1.11 9.68h2.51c.04.91.167 1.814.38 2.7H1.84c-.403-.85-.65-1.764-.73-2.7zm8.57-5.4V1.19c.964.366 1.756 1.08 2.22 2 .205.347.386.708.54 1.08l-2.76.01zm3.22 1.35c.232.883.37 1.788.41 2.7H9.68v-2.7h3.22zM8.32 1.19v3.09H5.56c.154-.372.335-.733.54-1.08.462-.924 1.255-1.64 2.22-2.01zm0 4.44v2.7H4.7c.04-.912.178-1.817.41-2.7h3.21zm-4.7 2.69H1.11c.08-.936.327-1.85.73-2.7H4c-.213.886-.34 1.79-.38 2.7zM4.7 9.68h3.62v2.7H5.11c-.232-.883-.37-1.788-.41-2.7zm3.63 4v3.09c-.964-.366-1.756-1.08-2.22-2-.205-.347-.386-.708-.54-1.08l2.76-.01zm1.35 3.09v-3.04h2.76c-.154.372-.335.733-.54 1.08-.464.92-1.256 1.634-2.22 2v-.04zm0-4.44v-2.7h3.62c-.04.912-.178 1.817-.41 2.7H9.68zm4.71-2.7h2.51c-.08.936-.327 1.85-.73 2.7H14c.21-.87.337-1.757.38-2.65l.01-.05zm0-1.35c-.046-.894-.176-1.78-.39-2.65h2.16c.403.85.65 1.764.73 2.7l-2.5-.05zm1-4H13.6c-.324-.91-.793-1.76-1.39-2.52 1.244.56 2.325 1.426 3.14 2.52h.04zm-9.6-2.52c-.597.76-1.066 1.61-1.39 2.52H2.65c.815-1.094 1.896-1.96 3.14-2.52zm-3.15 12H4.4c.324.91.793 1.76 1.39 2.52-1.248-.567-2.33-1.445-3.14-2.55l-.01.03zm9.56 2.52c.597-.76 1.066-1.61 1.39-2.52h1.76c-.82 1.08-1.9 1.933-3.14 2.48l-.01.04z';
       
 12689           break;
       
 12690 
       
 12691         case 'admin-site':
       
 12692           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zm3.46 11.95c0 1.47-.8 3.3-4.06 4.7.3-4.17-2.52-3.69-3.2-5 .126-1.1.804-2.063 1.8-2.55-1.552-.266-3-.96-4.18-2 .05.47.28.904.64 1.21-.782-.295-1.458-.817-1.94-1.5.977-3.225 3.883-5.482 7.25-5.63-.84 1.38-1.5 4.13 0 5.57C7.23 7 6.26 5 5.41 5.79c-1.13 1.06.33 2.51 3.42 3.08 3.29.59 3.66 1.58 3.63 3.08zm1.34-4c-.32-1.11.62-2.23 1.69-3.14 1.356 1.955 1.67 4.45.84 6.68-.77-1.89-2.17-2.32-2.53-3.57v.03z';
       
 12693           break;
       
 12694 
       
 12695         case 'admin-tools':
       
 12696           path = 'M16.68 9.77c-1.34 1.34-3.3 1.67-4.95.99l-5.41 6.52c-.99.99-2.59.99-3.58 0s-.99-2.59 0-3.57l6.52-5.42c-.68-1.65-.35-3.61.99-4.95 1.28-1.28 3.12-1.62 4.72-1.06l-2.89 2.89 2.82 2.82 2.86-2.87c.53 1.58.18 3.39-1.08 4.65zM3.81 16.21c.4.39 1.04.39 1.43 0 .4-.4.4-1.04 0-1.43-.39-.4-1.03-.4-1.43 0-.39.39-.39 1.03 0 1.43z';
       
 12697           break;
       
 12698 
       
 12699         case 'admin-users':
       
 12700           path = 'M10 9.25c-2.27 0-2.73-3.44-2.73-3.44C7 4.02 7.82 2 9.97 2c2.16 0 2.98 2.02 2.71 3.81 0 0-.41 3.44-2.68 3.44zm0 2.57L12.72 10c2.39 0 4.52 2.33 4.52 4.53v2.49s-3.65 1.13-7.24 1.13c-3.65 0-7.24-1.13-7.24-1.13v-2.49c0-2.25 1.94-4.48 4.47-4.48z';
       
 12701           break;
       
 12702 
       
 12703         case 'album':
       
 12704           path = 'M0 18h10v-.26c1.52.4 3.17.35 4.76-.24 4.14-1.52 6.27-6.12 4.75-10.26-1.43-3.89-5.58-6-9.51-4.98V2H0v16zM9 3v14H1V3h8zm5.45 8.22c-.68 1.35-2.32 1.9-3.67 1.23-.31-.15-.57-.35-.78-.59V8.13c.8-.86 2.11-1.13 3.22-.58 1.35.68 1.9 2.32 1.23 3.67zm-2.75-.82c.22.16.53.12.7-.1.16-.22.12-.53-.1-.7s-.53-.12-.7.1c-.16.21-.12.53.1.7zm3.01 3.67c-1.17.78-2.56.99-3.83.69-.27-.06-.44-.34-.37-.61s.34-.43.62-.36l.17.04c.96.17 1.98-.01 2.86-.59.47-.32.86-.72 1.14-1.18.15-.23.45-.3.69-.16.23.15.3.46.16.69-.36.57-.84 1.08-1.44 1.48zm1.05 1.57c-1.48.99-3.21 1.32-4.84 1.06-.28-.05-.47-.32-.41-.6.05-.27.32-.45.61-.39l.22.04c1.31.15 2.68-.14 3.87-.94.71-.47 1.27-1.07 1.7-1.74.14-.24.45-.31.68-.16.24.14.31.45.16.69-.49.79-1.16 1.49-1.99 2.04z';
       
 12705           break;
       
 12706 
       
 12707         case 'align-center':
       
 12708           path = 'M3 5h14V3H3v2zm12 8V7H5v6h10zM3 17h14v-2H3v2z';
       
 12709           break;
       
 12710 
       
 12711         case 'align-full-width':
       
 12712           path = 'M17 13V3H3v10h14zM5 17h10v-2H5v2z';
       
 12713           break;
       
 12714 
       
 12715         case 'align-left':
       
 12716           path = 'M3 5h14V3H3v2zm9 8V7H3v6h9zm2-4h3V7h-3v2zm0 4h3v-2h-3v2zM3 17h14v-2H3v2z';
       
 12717           break;
       
 12718 
       
 12719         case 'align-none':
       
 12720           path = 'M3 5h14V3H3v2zm10 8V7H3v6h10zM3 17h14v-2H3v2z';
       
 12721           break;
       
 12722 
       
 12723         case 'align-pull-left':
       
 12724           path = 'M9 16V4H3v12h6zm2-7h6V7h-6v2zm0 4h6v-2h-6v2z';
       
 12725           break;
       
 12726 
       
 12727         case 'align-pull-right':
       
 12728           path = 'M17 16V4h-6v12h6zM9 7H3v2h6V7zm0 4H3v2h6v-2z';
       
 12729           break;
       
 12730 
       
 12731         case 'align-right':
       
 12732           path = 'M3 5h14V3H3v2zm0 4h3V7H3v2zm14 4V7H8v6h9zM3 13h3v-2H3v2zm0 4h14v-2H3v2z';
       
 12733           break;
       
 12734 
       
 12735         case 'align-wide':
       
 12736           path = 'M5 5h10V3H5v2zm12 8V7H3v6h14zM5 17h10v-2H5v2z';
       
 12737           break;
       
 12738 
       
 12739         case 'analytics':
       
 12740           path = 'M18 18V2H2v16h16zM16 5H4V4h12v1zM7 7v3h3c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3zm1 2V7c1.1 0 2 .9 2 2H8zm8-1h-4V7h4v1zm0 3h-4V9h4v2zm0 2h-4v-1h4v1zm0 3H4v-1h12v1z';
       
 12741           break;
       
 12742 
       
 12743         case 'archive':
       
 12744           path = 'M19 4v2H1V4h18zM2 7h16v10H2V7zm11 3V9H7v1h6z';
       
 12745           break;
       
 12746 
       
 12747         case 'arrow-down-alt':
       
 12748           path = 'M9 2h2v12l4-4 2 1-7 7-7-7 2-1 4 4V2z';
       
 12749           break;
       
 12750 
       
 12751         case 'arrow-down-alt2':
       
 12752           path = 'M5 6l5 5 5-5 2 1-7 7-7-7z';
       
 12753           break;
       
 12754 
       
 12755         case 'arrow-down':
       
 12756           path = 'M15 8l-4.03 6L7 8h8z';
       
 12757           break;
       
 12758 
       
 12759         case 'arrow-left-alt':
       
 12760           path = 'M18 9v2H6l4 4-1 2-7-7 7-7 1 2-4 4h12z';
       
 12761           break;
       
 12762 
       
 12763         case 'arrow-left-alt2':
       
 12764           path = 'M14 5l-5 5 5 5-1 2-7-7 7-7z';
       
 12765           break;
       
 12766 
       
 12767         case 'arrow-left':
       
 12768           path = 'M13 14L7 9.97 13 6v8z';
       
 12769           break;
       
 12770 
       
 12771         case 'arrow-right-alt':
       
 12772           path = 'M2 11V9h12l-4-4 1-2 7 7-7 7-1-2 4-4H2z';
       
 12773           break;
       
 12774 
       
 12775         case 'arrow-right-alt2':
       
 12776           path = 'M6 15l5-5-5-5 1-2 7 7-7 7z';
       
 12777           break;
       
 12778 
       
 12779         case 'arrow-right':
       
 12780           path = 'M8 6l6 4.03L8 14V6z';
       
 12781           break;
       
 12782 
       
 12783         case 'arrow-up-alt':
       
 12784           path = 'M11 18H9V6l-4 4-2-1 7-7 7 7-2 1-4-4v12z';
       
 12785           break;
       
 12786 
       
 12787         case 'arrow-up-alt2':
       
 12788           path = 'M15 14l-5-5-5 5-2-1 7-7 7 7z';
       
 12789           break;
       
 12790 
       
 12791         case 'arrow-up':
       
 12792           path = 'M7 13l4.03-6L15 13H7z';
       
 12793           break;
       
 12794 
       
 12795         case 'art':
       
 12796           path = 'M8.55 3.06c1.01.34-1.95 2.01-.1 3.13 1.04.63 3.31-2.22 4.45-2.86.97-.54 2.67-.65 3.53 1.23 1.09 2.38.14 8.57-3.79 11.06-3.97 2.5-8.97 1.23-10.7-2.66-2.01-4.53 3.12-11.09 6.61-9.9zm1.21 6.45c.73 1.64 4.7-.5 3.79-2.8-.59-1.49-4.48 1.25-3.79 2.8z';
       
 12797           break;
       
 12798 
       
 12799         case 'awards':
       
 12800           path = 'M4.46 5.16L5 7.46l-.54 2.29 2.01 1.24L7.7 13l2.3-.54 2.3.54 1.23-2.01 2.01-1.24L15 7.46l.54-2.3-2-1.24-1.24-2.01-2.3.55-2.29-.54-1.25 2zm5.55 6.34C7.79 11.5 6 9.71 6 7.49c0-2.2 1.79-3.99 4.01-3.99 2.2 0 3.99 1.79 3.99 3.99 0 2.22-1.79 4.01-3.99 4.01zm-.02-1C8.33 10.5 7 9.16 7 7.5c0-1.65 1.33-3 2.99-3S13 5.85 13 7.5c0 1.66-1.35 3-3.01 3zm3.84 1.1l-1.28 2.24-2.08-.47L13 19.2l1.4-2.2h2.5zm-7.7.07l1.25 2.25 2.13-.51L7 19.2 5.6 17H3.1z';
       
 12801           break;
       
 12802 
       
 12803         case 'backup':
       
 12804           path = 'M13.65 2.88c3.93 2.01 5.48 6.84 3.47 10.77s-6.83 5.48-10.77 3.47c-1.87-.96-3.2-2.56-3.86-4.4l1.64-1.03c.45 1.57 1.52 2.95 3.08 3.76 3.01 1.54 6.69.35 8.23-2.66 1.55-3.01.36-6.69-2.65-8.24C9.78 3.01 6.1 4.2 4.56 7.21l1.88.97-4.95 3.08-.39-5.82 1.78.91C4.9 2.4 9.75.89 13.65 2.88zm-4.36 7.83C9.11 10.53 9 10.28 9 10c0-.07.03-.12.04-.19h-.01L10 5l.97 4.81L14 13l-4.5-2.12.02-.02c-.08-.04-.16-.09-.23-.15z';
       
 12805           break;
       
 12806 
       
 12807         case 'block-default':
       
 12808           path = 'M15 6V4h-3v2H8V4H5v2H4c-.6 0-1 .4-1 1v8h14V7c0-.6-.4-1-1-1h-1z';
       
 12809           break;
       
 12810 
       
 12811         case 'book-alt':
       
 12812           path = 'M5 17h13v2H5c-1.66 0-3-1.34-3-3V4c0-1.66 1.34-3 3-3h13v14H5c-.55 0-1 .45-1 1s.45 1 1 1zm2-3.5v-11c0-.28-.22-.5-.5-.5s-.5.22-.5.5v11c0 .28.22.5.5.5s.5-.22.5-.5z';
       
 12813           break;
       
 12814 
       
 12815         case 'book':
       
 12816           path = 'M16 3h2v16H5c-1.66 0-3-1.34-3-3V4c0-1.66 1.34-3 3-3h9v14H5c-.55 0-1 .45-1 1s.45 1 1 1h11V3z';
       
 12817           break;
       
 12818 
       
 12819         case 'buddicons-activity':
       
 12820           path = 'M8 1v7h2V6c0-1.52 1.45-3 3-3v.86c.55-.52 1.26-.86 2-.86v3h1c1.1 0 2 .9 2 2s-.9 2-2 2h-1v6c0 .55-.45 1-1 1s-1-.45-1-1v-2.18c-.31.11-.65.18-1 .18v2c0 .55-.45 1-1 1s-1-.45-1-1v-2H8v2c0 .55-.45 1-1 1s-1-.45-1-1v-2c-.35 0-.69-.07-1-.18V16c0 .55-.45 1-1 1s-1-.45-1-1v-4H2v-1c0-1.66 1.34-3 3-3h2V1h1zm5 7c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1z';
       
 12821           break;
       
 12822 
       
 12823         case 'buddicons-bbpress-logo':
       
 12824           path = 'M8.5 12.6c.3-1.3 0-2.3-1.1-2.3-.8 0-1.6.6-1.8 1.5l-.3 1.7c-.3 1 .3 1.5 1 1.5 1.2 0 1.9-1.1 2.2-2.4zm-4-6.4C3.7 7.3 3.3 8.6 3.3 10c0 1 .2 1.9.6 2.8l1-4.6c.3-1.7.4-2-.4-2zm9.3 6.4c.3-1.3 0-2.3-1.1-2.3-.8 0-1.6.6-1.8 1.5l-.4 1.7c-.2 1.1.4 1.6 1.1 1.6 1.1-.1 1.9-1.2 2.2-2.5zM10 3.3c-2 0-3.9.9-5.1 2.3.6-.1 1.4-.2 1.8-.3.2 0 .2.1.2.2 0 .2-1 4.8-1 4.8.5-.3 1.2-.7 1.8-.7.9 0 1.5.4 1.9.9l.5-2.4c.4-1.6.4-1.9-.4-1.9-.4 0-.4-.5 0-.6.6-.1 1.8-.2 2.3-.3.2 0 .2.1.2.2l-1 4.8c.5-.4 1.2-.7 1.9-.7 1.7 0 2.5 1.3 2.1 3-.3 1.7-2 3-3.8 3-1.3 0-2.1-.7-2.3-1.4-.7.8-1.7 1.3-2.8 1.4 1.1.7 2.4 1.1 3.7 1.1 3.7 0 6.7-3 6.7-6.7s-3-6.7-6.7-6.7zM10 2c-4.4 0-8 3.6-8 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm0 15.5c-2.1 0-4-.8-5.3-2.2-.3-.4-.7-.8-1-1.2-.7-1.2-1.2-2.6-1.2-4.1 0-4.1 3.4-7.5 7.5-7.5s7.5 3.4 7.5 7.5-3.4 7.5-7.5 7.5z';
       
 12825           break;
       
 12826 
       
 12827         case 'buddicons-buddypress-logo':
       
 12828           path = 'M10 0c5.52 0 10 4.48 10 10s-4.48 10-10 10S0 15.52 0 10 4.48 0 10 0zm0 .5C4.75.5.5 4.75.5 10s4.25 9.5 9.5 9.5 9.5-4.25 9.5-9.5S15.25.5 10 .5zm0 1c4.7 0 8.5 3.8 8.5 8.5s-3.8 8.5-8.5 8.5-8.5-3.8-8.5-8.5S5.3 1.5 10 1.5zm1.8 1.71c-.57 0-1.1.17-1.55.45 1.56.37 2.73 1.77 2.73 3.45 0 .69-.21 1.33-.55 1.87 1.31-.29 2.29-1.45 2.29-2.85 0-1.61-1.31-2.92-2.92-2.92zm-2.38 1c-1.61 0-2.92 1.31-2.92 2.93 0 1.61 1.31 2.92 2.92 2.92 1.62 0 2.93-1.31 2.93-2.92 0-1.62-1.31-2.93-2.93-2.93zm4.25 5.01l-.51.59c2.34.69 2.45 3.61 2.45 3.61h1.28c0-4.71-3.22-4.2-3.22-4.2zm-2.1.8l-2.12 2.09-2.12-2.09C3.12 10.24 3.89 15 3.89 15h11.08c.47-4.98-3.4-4.98-3.4-4.98z';
       
 12829           break;
       
 12830 
       
 12831         case 'buddicons-community':
       
 12832           path = 'M9 3c0-.67-.47-1.43-1-2-.5.5-1 1.38-1 2 0 .48.45 1 1 1s1-.47 1-1zm4 0c0-.67-.47-1.43-1-2-.5.5-1 1.38-1 2 0 .48.45 1 1 1s1-.47 1-1zM9 9V5.5c0-.55-.45-1-1-1-.57 0-1 .49-1 1V9c0 .55.45 1 1 1 .57 0 1-.49 1-1zm4 0V5.5c0-.55-.45-1-1-1-.57 0-1 .49-1 1V9c0 .55.45 1 1 1 .57 0 1-.49 1-1zm4 1c0-1.48-1.41-2.77-3.5-3.46V9c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5V6.01c-.17 0-.33-.01-.5-.01s-.33.01-.5.01V9c0 .83-.67 1.5-1.5 1.5S6.5 9.83 6.5 9V6.54C4.41 7.23 3 8.52 3 10c0 1.41.95 2.65 3.21 3.37 1.11.35 2.39 1.12 3.79 1.12s2.69-.78 3.79-1.13C16.04 12.65 17 11.41 17 10zm-7 5.43c1.43 0 2.74-.79 3.88-1.11 1.9-.53 2.49-1.34 3.12-2.32v3c0 2.21-3.13 4-7 4s-7-1.79-7-4v-3c.64.99 1.32 1.8 3.15 2.33 1.13.33 2.44 1.1 3.85 1.1z';
       
 12833           break;
       
 12834 
       
 12835         case 'buddicons-forums':
       
 12836           path = 'M13.5 7h-7C5.67 7 5 6.33 5 5.5S5.67 4 6.5 4h1.59C8.04 3.84 8 3.68 8 3.5 8 2.67 8.67 2 9.5 2h1c.83 0 1.5.67 1.5 1.5 0 .18-.04.34-.09.5h1.59c.83 0 1.5.67 1.5 1.5S14.33 7 13.5 7zM4 8h12c.55 0 1 .45 1 1s-.45 1-1 1H4c-.55 0-1-.45-1-1s.45-1 1-1zm1 3h10c.55 0 1 .45 1 1s-.45 1-1 1H5c-.55 0-1-.45-1-1s.45-1 1-1zm2 3h6c.55 0 1 .45 1 1s-.45 1-1 1h-1.09c.05.16.09.32.09.5 0 .83-.67 1.5-1.5 1.5h-1c-.83 0-1.5-.67-1.5-1.5 0-.18.04-.34.09-.5H7c-.55 0-1-.45-1-1s.45-1 1-1z';
       
 12837           break;
       
 12838 
       
 12839         case 'buddicons-friends':
       
 12840           path = 'M8.75 5.77C8.75 4.39 7 2 7 2S5.25 4.39 5.25 5.77 5.9 7.5 7 7.5s1.75-.35 1.75-1.73zm6 0C14.75 4.39 13 2 13 2s-1.75 2.39-1.75 3.77S11.9 7.5 13 7.5s1.75-.35 1.75-1.73zM9 17V9c0-.55-.45-1-1-1H6c-.55 0-1 .45-1 1v8c0 .55.45 1 1 1h2c.55 0 1-.45 1-1zm6 0V9c0-.55-.45-1-1-1h-2c-.55 0-1 .45-1 1v8c0 .55.45 1 1 1h2c.55 0 1-.45 1-1zm-9-6l2-1v2l-2 1v-2zm6 0l2-1v2l-2 1v-2zm-6 3l2-1v2l-2 1v-2zm6 0l2-1v2l-2 1v-2z';
       
 12841           break;
       
 12842 
       
 12843         case 'buddicons-groups':
       
 12844           path = 'M15.45 6.25c1.83.94 1.98 3.18.7 4.98-.8 1.12-2.33 1.88-3.46 1.78L10.05 18H9l-2.65-4.99c-1.13.16-2.73-.63-3.55-1.79-1.28-1.8-1.13-4.04.71-4.97.48-.24.96-.33 1.43-.31-.01.4.01.8.07 1.21.26 1.69 1.41 3.53 2.86 4.37-.19.55-.49.99-.88 1.25L9 16.58v-5.66C7.64 10.55 6.26 8.76 6 7c-.4-2.65 1-5 3.5-5s3.9 2.35 3.5 5c-.26 1.76-1.64 3.55-3 3.92v5.77l2.07-3.84c-.44-.23-.77-.71-.99-1.3 1.48-.83 2.65-2.69 2.91-4.4.06-.41.08-.82.07-1.22.46-.01.92.08 1.39.32z';
       
 12845           break;
       
 12846 
       
 12847         case 'buddicons-pm':
       
 12848           path = 'M10 2c3 0 8 5 8 5v11H2V7s5-5 8-5zm7 14.72l-3.73-2.92L17 11l-.43-.37-2.26 1.3.24-4.31-8.77-.52-.46 4.54-1.99-.95L3 11l3.73 2.8-3.44 2.85.4.43L10 13l6.53 4.15z';
       
 12849           break;
       
 12850 
       
 12851         case 'buddicons-replies':
       
 12852           path = 'M17.54 10.29c1.17 1.17 1.17 3.08 0 4.25-1.18 1.17-3.08 1.17-4.25 0l-.34-.52c0 3.66-2 4.38-2.95 4.98-.82-.6-2.95-1.28-2.95-4.98l-.34.52c-1.17 1.17-3.07 1.17-4.25 0-1.17-1.17-1.17-3.08 0-4.25 0 0 1.02-.67 2.1-1.3C3.71 7.84 3.2 6.42 3.2 4.88c0-.34.03-.67.08-1C3.53 5.66 4.47 7.22 5.8 8.3c.67-.35 1.85-.83 2.37-.92H8c-1.1 0-2-.9-2-2s.9-2 2-2v-.5c0-.28.22-.5.5-.5s.5.22.5.5v.5h2v-.5c0-.28.22-.5.5-.5s.5.22.5.5v.5c1.1 0 2 .9 2 2s-.9 2-2 2h-.17c.51.09 1.78.61 2.38.92 1.33-1.08 2.27-2.64 2.52-4.42.05.33.08.66.08 1 0 1.54-.51 2.96-1.36 4.11 1.08.63 2.09 1.3 2.09 1.3zM8.5 6.38c.5 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm3-2c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm-2.3 5.73c-.12.11-.19.26-.19.43.02.25.23.46.49.46h1c.26 0 .47-.21.49-.46 0-.15-.07-.29-.19-.43-.08-.06-.18-.11-.3-.11h-1c-.12 0-.22.05-.3.11zM12 12.5c0-.12-.06-.28-.19-.38-.09-.07-.19-.12-.31-.12h-3c-.12 0-.22.05-.31.12-.11.1-.19.25-.19.38 0 .28.22.5.5.5h3c.28 0 .5-.22.5-.5zM8.5 15h3c.28 0 .5-.22.5-.5s-.22-.5-.5-.5h-3c-.28 0-.5.22-.5.5s.22.5.5.5zm1 2h1c.28 0 .5-.22.5-.5s-.22-.5-.5-.5h-1c-.28 0-.5.22-.5.5s.22.5.5.5z';
       
 12853           break;
       
 12854 
       
 12855         case 'buddicons-topics':
       
 12856           path = 'M10.44 1.66c-.59-.58-1.54-.58-2.12 0L2.66 7.32c-.58.58-.58 1.53 0 2.12.6.6 1.56.56 2.12 0l5.66-5.66c.58-.58.59-1.53 0-2.12zm2.83 2.83c-.59-.59-1.54-.59-2.12 0l-5.66 5.66c-.59.58-.59 1.53 0 2.12.6.6 1.56.55 2.12 0l5.66-5.66c.58-.58.58-1.53 0-2.12zm1.06 6.72l4.18 4.18c.59.58.59 1.53 0 2.12s-1.54.59-2.12 0l-4.18-4.18-1.77 1.77c-.59.58-1.54.58-2.12 0-.59-.59-.59-1.54 0-2.13l5.66-5.65c.58-.59 1.53-.59 2.12 0 .58.58.58 1.53 0 2.12zM5 15c0-1.59-1.66-4-1.66-4S2 13.78 2 15s.6 2 1.34 2h.32C4.4 17 5 16.59 5 15z';
       
 12857           break;
       
 12858 
       
 12859         case 'buddicons-tracking':
       
 12860           path = 'M10.98 6.78L15.5 15c-1 2-3.5 3-5.5 3s-4.5-1-5.5-3L9 6.82c-.75-1.23-2.28-1.98-4.29-2.03l2.46-2.92c1.68 1.19 2.46 2.32 2.97 3.31.56-.87 1.2-1.68 2.7-2.12l1.83 2.86c-1.42-.34-2.64.08-3.69.86zM8.17 10.4l-.93 1.69c.49.11 1 .16 1.54.16 1.35 0 2.58-.36 3.55-.95l-1.01-1.82c-.87.53-1.96.86-3.15.92zm.86 5.38c1.99 0 3.73-.74 4.74-1.86l-.98-1.76c-1 1.12-2.74 1.87-4.74 1.87-.62 0-1.21-.08-1.76-.21l-.63 1.15c.94.5 2.1.81 3.37.81z';
       
 12861           break;
       
 12862 
       
 12863         case 'building':
       
 12864           path = 'M3 20h14V0H3v20zM7 3H5V1h2v2zm4 0H9V1h2v2zm4 0h-2V1h2v2zM7 6H5V4h2v2zm4 0H9V4h2v2zm4 0h-2V4h2v2zM7 9H5V7h2v2zm4 0H9V7h2v2zm4 0h-2V7h2v2zm-8 3H5v-2h2v2zm4 0H9v-2h2v2zm4 0h-2v-2h2v2zm-4 7H5v-6h6v6zm4-4h-2v-2h2v2zm0 3h-2v-2h2v2z';
       
 12865           break;
       
 12866 
       
 12867         case 'businessman':
       
 12868           path = 'M7.3 6l-.03-.19c-.04-.37-.05-.73-.03-1.08.02-.36.1-.71.25-1.04.14-.32.31-.61.52-.86s.49-.46.83-.6c.34-.15.72-.23 1.13-.23.69 0 1.26.2 1.71.59s.76.87.91 1.44.18 1.16.09 1.78l-.03.19c-.01.09-.05.25-.11.48-.05.24-.12.47-.2.69-.08.21-.19.45-.34.72-.14.27-.3.49-.47.69-.18.19-.4.34-.67.48-.27.13-.55.19-.86.19s-.59-.06-.87-.19c-.26-.13-.49-.29-.67-.5-.18-.2-.34-.42-.49-.66-.15-.25-.26-.49-.34-.73-.09-.25-.16-.47-.21-.67-.06-.21-.1-.37-.12-.5zm9.2 6.24c.41.7.5 1.41.5 2.14v2.49c0 .03-.12.08-.29.13-.18.04-.42.13-.97.27-.55.12-1.1.24-1.65.34s-1.19.19-1.95.27c-.75.08-1.46.12-2.13.12-.68 0-1.39-.04-2.14-.12-.75-.07-1.4-.17-1.98-.27-.58-.11-1.08-.23-1.56-.34-.49-.11-.8-.21-1.06-.29L3 16.87v-2.49c0-.75.07-1.46.46-2.15s.81-1.25 1.5-1.68C5.66 10.12 7.19 10 8 10l1.67 1.67L9 13v3l1.02 1.08L11 16v-3l-.68-1.33L11.97 10c.77 0 2.2.07 2.9.52.71.45 1.21 1.02 1.63 1.72z';
       
 12869           break;
       
 12870 
       
 12871         case 'button':
       
 12872           path = 'M17 5H3c-1.1 0-2 .9-2 2v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm1 7c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1V7c0-.6.4-1 1-1h14c.6 0 1 .4 1 1v5z';
       
 12873           break;
       
 12874 
       
 12875         case 'calendar-alt':
       
 12876           path = 'M15 4h3v15H2V4h3V3c0-.41.15-.76.44-1.06.29-.29.65-.44 1.06-.44s.77.15 1.06.44c.29.3.44.65.44 1.06v1h4V3c0-.41.15-.76.44-1.06.29-.29.65-.44 1.06-.44s.77.15 1.06.44c.29.3.44.65.44 1.06v1zM6 3v2.5c0 .14.05.26.15.36.09.09.21.14.35.14s.26-.05.35-.14c.1-.1.15-.22.15-.36V3c0-.14-.05-.26-.15-.35-.09-.1-.21-.15-.35-.15s-.26.05-.35.15c-.1.09-.15.21-.15.35zm7 0v2.5c0 .14.05.26.14.36.1.09.22.14.36.14s.26-.05.36-.14c.09-.1.14-.22.14-.36V3c0-.14-.05-.26-.14-.35-.1-.1-.22-.15-.36-.15s-.26.05-.36.15c-.09.09-.14.21-.14.35zm4 15V8H3v10h14zM7 9v2H5V9h2zm2 0h2v2H9V9zm4 2V9h2v2h-2zm-6 1v2H5v-2h2zm2 0h2v2H9v-2zm4 2v-2h2v2h-2zm-6 1v2H5v-2h2zm4 2H9v-2h2v2zm4 0h-2v-2h2v2z';
       
 12877           break;
       
 12878 
       
 12879         case 'calendar':
       
 12880           path = 'M15 4h3v14H2V4h3V3c0-.83.67-1.5 1.5-1.5S8 2.17 8 3v1h4V3c0-.83.67-1.5 1.5-1.5S15 2.17 15 3v1zM6 3v2.5c0 .28.22.5.5.5s.5-.22.5-.5V3c0-.28-.22-.5-.5-.5S6 2.72 6 3zm7 0v2.5c0 .28.22.5.5.5s.5-.22.5-.5V3c0-.28-.22-.5-.5-.5s-.5.22-.5.5zm4 14V8H3v9h14zM7 16V9H5v7h2zm4 0V9H9v7h2zm4 0V9h-2v7h2z';
       
 12881           break;
       
 12882 
       
 12883         case 'camera':
       
 12884           path = 'M6 5V3H3v2h3zm12 10V4H9L7 6H2v9h16zm-7-8c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3z';
       
 12885           break;
       
 12886 
       
 12887         case 'carrot':
       
 12888           path = 'M2 18.43c1.51 1.36 11.64-4.67 13.14-7.21.72-1.22-.13-3.01-1.52-4.44C15.2 5.73 16.59 9 17.91 8.31c.6-.32.99-1.31.7-1.92-.52-1.08-2.25-1.08-3.42-1.21.83-.2 2.82-1.05 2.86-2.25.04-.92-1.13-1.97-2.05-1.86-1.21.14-1.65 1.88-2.06 3-.05-.71-.2-2.27-.98-2.95-1.04-.91-2.29-.05-2.32 1.05-.04 1.33 2.82 2.07 1.92 3.67C11.04 4.67 9.25 4.03 8.1 4.7c-.49.31-1.05.91-1.63 1.69.89.94 2.12 2.07 3.09 2.72.2.14.26.42.11.62-.14.21-.42.26-.62.12-.99-.67-2.2-1.78-3.1-2.71-.45.67-.91 1.43-1.34 2.23.85.86 1.93 1.83 2.79 2.41.2.14.25.42.11.62-.14.21-.42.26-.63.12-.85-.58-1.86-1.48-2.71-2.32C2.4 13.69 1.1 17.63 2 18.43z';
       
 12889           break;
       
 12890 
       
 12891         case 'cart':
       
 12892           path = 'M6 13h9c.55 0 1 .45 1 1s-.45 1-1 1H5c-.55 0-1-.45-1-1V4H2c-.55 0-1-.45-1-1s.45-1 1-1h3c.55 0 1 .45 1 1v2h13l-4 7H6v1zm-.5 3c.83 0 1.5.67 1.5 1.5S6.33 19 5.5 19 4 18.33 4 17.5 4.67 16 5.5 16zm9 0c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5z';
       
 12893           break;
       
 12894 
       
 12895         case 'category':
       
 12896           path = 'M5 7h13v10H2V4h7l2 2H4v9h1V7z';
       
 12897           break;
       
 12898 
       
 12899         case 'chart-area':
       
 12900           path = 'M18 18l.01-12.28c.59-.35.99-.99.99-1.72 0-1.1-.9-2-2-2s-2 .9-2 2c0 .8.47 1.48 1.14 1.8l-4.13 6.58c-.33-.24-.73-.38-1.16-.38-.84 0-1.55.51-1.85 1.24l-2.14-1.53c.09-.22.14-.46.14-.71 0-1.11-.89-2-2-2-1.1 0-2 .89-2 2 0 .73.4 1.36.98 1.71L1 18h17zM17 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM5 10c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm5.85 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1z';
       
 12901           break;
       
 12902 
       
 12903         case 'chart-bar':
       
 12904           path = 'M18 18V2h-4v16h4zm-6 0V7H8v11h4zm-6 0v-8H2v8h4z';
       
 12905           break;
       
 12906 
       
 12907         case 'chart-line':
       
 12908           path = 'M18 3.5c0 .62-.38 1.16-.92 1.38v13.11H1.99l4.22-6.73c-.13-.23-.21-.48-.21-.76C6 9.67 6.67 9 7.5 9S9 9.67 9 10.5c0 .13-.02.25-.05.37l1.44.63c.27-.3.67-.5 1.11-.5.18 0 .35.04.51.09l3.58-6.41c-.36-.27-.59-.7-.59-1.18 0-.83.67-1.5 1.5-1.5.19 0 .36.04.53.1l.05-.09v.11c.54.22.92.76.92 1.38zm-1.92 13.49V5.85l-3.29 5.89c.13.23.21.48.21.76 0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5l.01-.07-1.63-.72c-.25.18-.55.29-.88.29-.18 0-.35-.04-.51-.1l-3.2 5.09h12.29z';
       
 12909           break;
       
 12910 
       
 12911         case 'chart-pie':
       
 12912           path = 'M10 10V3c3.87 0 7 3.13 7 7h-7zM9 4v7h7c0 3.87-3.13 7-7 7s-7-3.13-7-7 3.13-7 7-7z';
       
 12913           break;
       
 12914 
       
 12915         case 'clipboard':
       
 12916           path = 'M11.9.39l1.4 1.4c1.61.19 3.5-.74 4.61.37s.18 3 .37 4.61l1.4 1.4c.39.39.39 1.02 0 1.41l-9.19 9.2c-.4.39-1.03.39-1.42 0L1.29 11c-.39-.39-.39-1.02 0-1.42l9.2-9.19c.39-.39 1.02-.39 1.41 0zm.58 2.25l-.58.58 4.95 4.95.58-.58c-.19-.6-.2-1.22-.15-1.82.02-.31.05-.62.09-.92.12-1 .18-1.63-.17-1.98s-.98-.29-1.98-.17c-.3.04-.61.07-.92.09-.6.05-1.22.04-1.82-.15zm4.02.93c.39.39.39 1.03 0 1.42s-1.03.39-1.42 0-.39-1.03 0-1.42 1.03-.39 1.42 0zm-6.72.36l-.71.7L15.44 11l.7-.71zM8.36 5.34l-.7.71 6.36 6.36.71-.7zM6.95 6.76l-.71.7 6.37 6.37.7-.71zM5.54 8.17l-.71.71 6.36 6.36.71-.71zM4.12 9.58l-.71.71 6.37 6.37.71-.71z';
       
 12917           break;
       
 12918 
       
 12919         case 'clock':
       
 12920           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm0 14c3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6 2.69 6 6 6zm-.71-5.29c.07.05.14.1.23.15l-.02.02L14 13l-3.03-3.19L10 5l-.97 4.81h.01c0 .02-.01.05-.02.09S9 9.97 9 10c0 .28.1.52.29.71z';
       
 12921           break;
       
 12922 
       
 12923         case 'cloud-saved':
       
 12924           path = 'M14.8 9c.1-.3.2-.6.2-1 0-2.2-1.8-4-4-4-1.5 0-2.9.9-3.5 2.2-.3-.1-.7-.2-1-.2C5.1 6 4 7.1 4 8.5c0 .2 0 .4.1.5-1.8.3-3.1 1.7-3.1 3.5C1 14.4 2.6 16 4.5 16h10c1.9 0 3.5-1.6 3.5-3.5 0-1.8-1.4-3.3-3.2-3.5zm-6.3 5.9l-3.2-3.2 1.4-1.4 1.8 1.8 3.8-3.8 1.4 1.4-5.2 5.2z';
       
 12925           break;
       
 12926 
       
 12927         case 'cloud-upload':
       
 12928           path = 'M14.8 9c.1-.3.2-.6.2-1 0-2.2-1.8-4-4-4-1.5 0-2.9.9-3.5 2.2-.3-.1-.7-.2-1-.2C5.1 6 4 7.1 4 8.5c0 .2 0 .4.1.5-1.8.3-3.1 1.7-3.1 3.5C1 14.4 2.6 16 4.5 16H8v-3H5l4.5-4.5L14 13h-3v3h3.5c1.9 0 3.5-1.6 3.5-3.5 0-1.8-1.4-3.3-3.2-3.5z';
       
 12929           break;
       
 12930 
       
 12931         case 'cloud':
       
 12932           path = 'M14.9 9c1.8.2 3.1 1.7 3.1 3.5 0 1.9-1.6 3.5-3.5 3.5h-10C2.6 16 1 14.4 1 12.5 1 10.7 2.3 9.3 4.1 9 4 8.9 4 8.7 4 8.5 4 7.1 5.1 6 6.5 6c.3 0 .7.1.9.2C8.1 4.9 9.4 4 11 4c2.2 0 4 1.8 4 4 0 .4-.1.7-.1 1z';
       
 12933           break;
       
 12934 
       
 12935         case 'columns':
       
 12936           path = 'M3 15h6V5H3v10zm8 0h6V5h-6v10z';
       
 12937           break;
       
 12938 
       
 12939         case 'controls-back':
       
 12940           path = 'M2 10l10-6v3.6L18 4v12l-6-3.6V16z';
       
 12941           break;
       
 12942 
       
 12943         case 'controls-forward':
       
 12944           path = 'M18 10L8 16v-3.6L2 16V4l6 3.6V4z';
       
 12945           break;
       
 12946 
       
 12947         case 'controls-pause':
       
 12948           path = 'M5 16V4h3v12H5zm7-12h3v12h-3V4z';
       
 12949           break;
       
 12950 
       
 12951         case 'controls-play':
       
 12952           path = 'M5 4l10 6-10 6V4z';
       
 12953           break;
       
 12954 
       
 12955         case 'controls-repeat':
       
 12956           path = 'M5 7v3l-2 1.5V5h11V3l4 3.01L14 9V7H5zm10 6v-3l2-1.5V15H6v2l-4-3.01L6 11v2h9z';
       
 12957           break;
       
 12958 
       
 12959         case 'controls-skipback':
       
 12960           path = 'M11.98 7.63l6-3.6v12l-6-3.6v3.6l-8-4.8v4.8h-2v-12h2v4.8l8-4.8v3.6z';
       
 12961           break;
       
 12962 
       
 12963         case 'controls-skipforward':
       
 12964           path = 'M8 12.4L2 16V4l6 3.6V4l8 4.8V4h2v12h-2v-4.8L8 16v-3.6z';
       
 12965           break;
       
 12966 
       
 12967         case 'controls-volumeoff':
       
 12968           path = 'M2 7h4l5-4v14l-5-4H2V7z';
       
 12969           break;
       
 12970 
       
 12971         case 'controls-volumeon':
       
 12972           path = 'M2 7h4l5-4v14l-5-4H2V7zm12.69-2.46C14.82 4.59 18 5.92 18 10s-3.18 5.41-3.31 5.46c-.06.03-.13.04-.19.04-.2 0-.39-.12-.46-.31-.11-.26.02-.55.27-.65.11-.05 2.69-1.15 2.69-4.54 0-3.41-2.66-4.53-2.69-4.54-.25-.1-.38-.39-.27-.65.1-.25.39-.38.65-.27zM16 10c0 2.57-2.23 3.43-2.32 3.47-.06.02-.12.03-.18.03-.2 0-.39-.12-.47-.32-.1-.26.04-.55.29-.65.07-.02 1.68-.67 1.68-2.53s-1.61-2.51-1.68-2.53c-.25-.1-.38-.39-.29-.65.1-.25.39-.39.65-.29.09.04 2.32.9 2.32 3.47z';
       
 12973           break;
       
 12974 
       
 12975         case 'cover-image':
       
 12976           path = 'M2.2 1h15.5c.7 0 1.3.6 1.3 1.2v11.5c0 .7-.6 1.2-1.2 1.2H2.2c-.6.1-1.2-.5-1.2-1.1V2.2C1 1.6 1.6 1 2.2 1zM17 13V3H3v10h14zm-4-4s0-5 3-5v7c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1V7c2 0 3 4 3 4s1-4 3-4 3 2 3 2zM4 17h12v2H4z';
       
 12977           break;
       
 12978 
       
 12979         case 'dashboard':
       
 12980           path = 'M3.76 16h12.48c1.1-1.37 1.76-3.11 1.76-5 0-4.42-3.58-8-8-8s-8 3.58-8 8c0 1.89.66 3.63 1.76 5zM10 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM6 6c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm8 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm-5.37 5.55L12 7v6c0 1.1-.9 2-2 2s-2-.9-2-2c0-.57.24-1.08.63-1.45zM4 10c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm12 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm-5 3c0-.55-.45-1-1-1s-1 .45-1 1 .45 1 1 1 1-.45 1-1z';
       
 12981           break;
       
 12982 
       
 12983         case 'desktop':
       
 12984           path = 'M3 2h14c.55 0 1 .45 1 1v10c0 .55-.45 1-1 1h-5v2h2c.55 0 1 .45 1 1v1H5v-1c0-.55.45-1 1-1h2v-2H3c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm13 9V4H4v7h12zM5 5h9L5 9V5z';
       
 12985           break;
       
 12986 
       
 12987         case 'dismiss':
       
 12988           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm5 11l-3-3 3-3-2-2-3 3-3-3-2 2 3 3-3 3 2 2 3-3 3 3z';
       
 12989           break;
       
 12990 
       
 12991         case 'download':
       
 12992           path = 'M14.01 4v6h2V2H4v8h2.01V4h8zm-2 2v6h3l-5 6-5-6h3V6h4z';
       
 12993           break;
       
 12994 
       
 12995         case 'edit':
       
 12996           path = 'M13.89 3.39l2.71 2.72c.46.46.42 1.24.03 1.64l-8.01 8.02-5.56 1.16 1.16-5.58s7.6-7.63 7.99-8.03c.39-.39 1.22-.39 1.68.07zm-2.73 2.79l-5.59 5.61 1.11 1.11 5.54-5.65zm-2.97 8.23l5.58-5.6-1.07-1.08-5.59 5.6z';
       
 12997           break;
       
 12998 
       
 12999         case 'editor-aligncenter':
       
 13000           path = 'M14 5V3H6v2h8zm3 4V7H3v2h14zm-3 4v-2H6v2h8zm3 4v-2H3v2h14z';
       
 13001           break;
       
 13002 
       
 13003         case 'editor-alignleft':
       
 13004           path = 'M12 5V3H3v2h9zm5 4V7H3v2h14zm-5 4v-2H3v2h9zm5 4v-2H3v2h14z';
       
 13005           break;
       
 13006 
       
 13007         case 'editor-alignright':
       
 13008           path = 'M17 5V3H8v2h9zm0 4V7H3v2h14zm0 4v-2H8v2h9zm0 4v-2H3v2h14z';
       
 13009           break;
       
 13010 
       
 13011         case 'editor-bold':
       
 13012           path = 'M6 4v13h4.54c1.37 0 2.46-.33 3.26-1 .8-.66 1.2-1.58 1.2-2.77 0-.84-.17-1.51-.51-2.01s-.9-.85-1.67-1.03v-.09c.57-.1 1.02-.4 1.36-.9s.51-1.13.51-1.91c0-1.14-.39-1.98-1.17-2.5C12.75 4.26 11.5 4 9.78 4H6zm2.57 5.15V6.26h1.36c.73 0 1.27.11 1.61.32.34.22.51.58.51 1.07 0 .54-.16.92-.47 1.15s-.82.35-1.51.35h-1.5zm0 2.19h1.6c1.44 0 2.16.53 2.16 1.61 0 .6-.17 1.05-.51 1.34s-.86.43-1.57.43H8.57v-3.38z';
       
 13013           break;
       
 13014 
       
 13015         case 'editor-break':
       
 13016           path = 'M16 4h2v9H7v3l-5-4 5-4v3h9V4z';
       
 13017           break;
       
 13018 
       
 13019         case 'editor-code':
       
 13020           path = 'M9 6l-4 4 4 4-1 2-6-6 6-6zm2 8l4-4-4-4 1-2 6 6-6 6z';
       
 13021           break;
       
 13022 
       
 13023         case 'editor-contract':
       
 13024           path = 'M15.75 6.75L18 3v14l-2.25-3.75L17 12h-4v4l1.25-1.25L18 17H2l3.75-2.25L7 16v-4H3l1.25 1.25L2 17V3l2.25 3.75L3 8h4V4L5.75 5.25 2 3h16l-3.75 2.25L13 4v4h4z';
       
 13025           break;
       
 13026 
       
 13027         case 'editor-customchar':
       
 13028           path = 'M10 5.4c1.27 0 2.24.36 2.91 1.08.66.71 1 1.76 1 3.13 0 1.28-.23 2.37-.69 3.27-.47.89-1.27 1.52-2.22 2.12v2h6v-2h-3.69c.92-.64 1.62-1.34 2.12-2.34.49-1.01.74-2.13.74-3.35 0-1.78-.55-3.19-1.65-4.22S11.92 3.54 10 3.54s-3.43.53-4.52 1.57c-1.1 1.04-1.65 2.44-1.65 4.2 0 1.21.24 2.31.73 3.33.48 1.01 1.19 1.71 2.1 2.36H3v2h6v-2c-.98-.64-1.8-1.28-2.24-2.17-.45-.89-.67-1.96-.67-3.22 0-1.37.33-2.41 1-3.13C7.75 5.76 8.72 5.4 10 5.4z';
       
 13029           break;
       
 13030 
       
 13031         case 'editor-expand':
       
 13032           path = 'M7 8h6v4H7zm-5 5v4h4l-1.2-1.2L7 12l-3.8 2.2M14 17h4v-4l-1.2 1.2L13 12l2.2 3.8M14 3l1.3 1.3L13 8l3.8-2.2L18 7V3M6 3H2v4l1.2-1.2L7 8 4.7 4.3';
       
 13033           break;
       
 13034 
       
 13035         case 'editor-help':
       
 13036           path = 'M17 10c0-3.87-3.14-7-7-7-3.87 0-7 3.13-7 7s3.13 7 7 7c3.86 0 7-3.13 7-7zm-6.3 1.48H9.14v-.43c0-.38.08-.7.24-.98s.46-.57.88-.89c.41-.29.68-.53.81-.71.14-.18.2-.39.2-.62 0-.25-.09-.44-.28-.58-.19-.13-.45-.19-.79-.19-.58 0-1.25.19-2 .57l-.64-1.28c.87-.49 1.8-.74 2.77-.74.81 0 1.45.2 1.92.58.48.39.71.91.71 1.55 0 .43-.09.8-.29 1.11-.19.32-.57.67-1.11 1.06-.38.28-.61.49-.71.63-.1.15-.15.34-.15.57v.35zm-1.47 2.74c-.18-.17-.27-.42-.27-.73 0-.33.08-.58.26-.75s.43-.25.77-.25c.32 0 .57.09.75.26s.27.42.27.74c0 .3-.09.55-.27.72-.18.18-.43.27-.75.27-.33 0-.58-.09-.76-.26z';
       
 13037           break;
       
 13038 
       
 13039         case 'editor-indent':
       
 13040           path = 'M3 5V3h9v2H3zm10-1V3h4v1h-4zm0 3h2V5l4 3.5-4 3.5v-2h-2V7zM3 8V6h9v2H3zm2 3V9h7v2H5zm-2 3v-2h9v2H3zm10 0v-1h4v1h-4zm-4 3v-2h3v2H9z';
       
 13041           break;
       
 13042 
       
 13043         case 'editor-insertmore':
       
 13044           path = 'M17 7V3H3v4h14zM6 11V9H3v2h3zm6 0V9H8v2h4zm5 0V9h-3v2h3zm0 6v-4H3v4h14z';
       
 13045           break;
       
 13046 
       
 13047         case 'editor-italic':
       
 13048           path = 'M14.78 6h-2.13l-2.8 9h2.12l-.62 2H4.6l.62-2h2.14l2.8-9H8.03l.62-2h6.75z';
       
 13049           break;
       
 13050 
       
 13051         case 'editor-justify':
       
 13052           path = 'M2 3h16v2H2V3zm0 4h16v2H2V7zm0 4h16v2H2v-2zm0 4h16v2H2v-2z';
       
 13053           break;
       
 13054 
       
 13055         case 'editor-kitchensink':
       
 13056           path = 'M19 2v6H1V2h18zm-1 5V3H2v4h16zM5 4v2H3V4h2zm3 0v2H6V4h2zm3 0v2H9V4h2zm3 0v2h-2V4h2zm3 0v2h-2V4h2zm2 5v9H1V9h18zm-1 8v-7H2v7h16zM5 11v2H3v-2h2zm3 0v2H6v-2h2zm3 0v2H9v-2h2zm6 0v2h-5v-2h5zm-6 3v2H3v-2h8zm3 0v2h-2v-2h2zm3 0v2h-2v-2h2z';
       
 13057           break;
       
 13058 
       
 13059         case 'editor-ltr':
       
 13060           path = 'M5.52 2h7.43c.55 0 1 .45 1 1s-.45 1-1 1h-1v13c0 .55-.45 1-1 1s-1-.45-1-1V5c0-.55-.45-1-1-1s-1 .45-1 1v12c0 .55-.45 1-1 1s-1-.45-1-1v-5.96h-.43C3.02 11.04 1 9.02 1 6.52S3.02 2 5.52 2zM14 14l5-4-5-4v8z';
       
 13061           break;
       
 13062 
       
 13063         case 'editor-ol-rtl':
       
 13064           path = 'M15.025 8.75a1.048 1.048 0 0 1 .45-.1.507.507 0 0 1 .35.11.455.455 0 0 1 .13.36.803.803 0 0 1-.06.3 1.448 1.448 0 0 1-.19.33c-.09.11-.29.32-.58.62l-.99 1v.58h2.76v-.7h-1.72v-.04l.51-.48a7.276 7.276 0 0 0 .7-.71 1.75 1.75 0 0 0 .3-.49 1.254 1.254 0 0 0 .1-.51.968.968 0 0 0-.16-.56 1.007 1.007 0 0 0-.44-.37 1.512 1.512 0 0 0-.65-.14 1.98 1.98 0 0 0-.51.06 1.9 1.9 0 0 0-.42.15 3.67 3.67 0 0 0-.48.35l.45.54a2.505 2.505 0 0 1 .45-.3zM16.695 15.29a1.29 1.29 0 0 0-.74-.3v-.02a1.203 1.203 0 0 0 .65-.37.973.973 0 0 0 .23-.65.81.81 0 0 0-.37-.71 1.72 1.72 0 0 0-1-.26 2.185 2.185 0 0 0-1.33.4l.4.6a1.79 1.79 0 0 1 .46-.23 1.18 1.18 0 0 1 .41-.07c.38 0 .58.15.58.46a.447.447 0 0 1-.22.43 1.543 1.543 0 0 1-.7.12h-.31v.66h.31a1.764 1.764 0 0 1 .75.12.433.433 0 0 1 .23.41.55.55 0 0 1-.2.47 1.084 1.084 0 0 1-.63.15 2.24 2.24 0 0 1-.57-.08 2.671 2.671 0 0 1-.52-.2v.74a2.923 2.923 0 0 0 1.18.22 1.948 1.948 0 0 0 1.22-.33 1.077 1.077 0 0 0 .43-.92.836.836 0 0 0-.26-.64zM15.005 4.17c.06-.05.16-.14.3-.28l-.02.42V7h.84V3h-.69l-1.29 1.03.4.51zM4.02 5h9v1h-9zM4.02 10h9v1h-9zM4.02 15h9v1h-9z';
       
 13065           break;
       
 13066 
       
 13067         case 'editor-ol':
       
 13068           path = 'M6 7V3h-.69L4.02 4.03l.4.51.46-.37c.06-.05.16-.14.3-.28l-.02.42V7H6zm2-2h9v1H8V5zm-1.23 6.95v-.7H5.05v-.04l.51-.48c.33-.31.57-.54.7-.71.14-.17.24-.33.3-.49.07-.16.1-.33.1-.51 0-.21-.05-.4-.16-.56-.1-.16-.25-.28-.44-.37s-.41-.14-.65-.14c-.19 0-.36.02-.51.06-.15.03-.29.09-.42.15-.12.07-.29.19-.48.35l.45.54c.16-.13.31-.23.45-.3.15-.07.3-.1.45-.1.14 0 .26.03.35.11s.13.2.13.36c0 .1-.02.2-.06.3s-.1.21-.19.33c-.09.11-.29.32-.58.62l-.99 1v.58h2.76zM8 10h9v1H8v-1zm-1.29 3.95c0-.3-.12-.54-.37-.71-.24-.17-.58-.26-1-.26-.52 0-.96.13-1.33.4l.4.6c.17-.11.32-.19.46-.23.14-.05.27-.07.41-.07.38 0 .58.15.58.46 0 .2-.07.35-.22.43s-.38.12-.7.12h-.31v.66h.31c.34 0 .59.04.75.12.15.08.23.22.23.41 0 .22-.07.37-.2.47-.14.1-.35.15-.63.15-.19 0-.38-.03-.57-.08s-.36-.12-.52-.2v.74c.34.15.74.22 1.18.22.53 0 .94-.11 1.22-.33.29-.22.43-.52.43-.92 0-.27-.09-.48-.26-.64s-.42-.26-.74-.3v-.02c.27-.06.49-.19.65-.37.15-.18.23-.39.23-.65zM8 15h9v1H8v-1z';
       
 13069           break;
       
 13070 
       
 13071         case 'editor-outdent':
       
 13072           path = 'M7 4V3H3v1h4zm10 1V3H8v2h9zM7 7H5V5L1 8.5 5 12v-2h2V7zm10 1V6H8v2h9zm-2 3V9H8v2h7zm2 3v-2H8v2h9zM7 14v-1H3v1h4zm4 3v-2H8v2h3z';
       
 13073           break;
       
 13074 
       
 13075         case 'editor-paragraph':
       
 13076           path = 'M15 2H7.54c-.83 0-1.59.2-2.28.6-.7.41-1.25.96-1.65 1.65C3.2 4.94 3 5.7 3 6.52s.2 1.58.61 2.27c.4.69.95 1.24 1.65 1.64.69.41 1.45.61 2.28.61h.43V17c0 .27.1.51.29.71.2.19.44.29.71.29.28 0 .51-.1.71-.29.2-.2.3-.44.3-.71V5c0-.27.09-.51.29-.71.2-.19.44-.29.71-.29s.51.1.71.29c.19.2.29.44.29.71v12c0 .27.1.51.3.71.2.19.43.29.71.29.27 0 .51-.1.71-.29.19-.2.29-.44.29-.71V4H15c.27 0 .5-.1.7-.3.2-.19.3-.43.3-.7s-.1-.51-.3-.71C15.5 2.1 15.27 2 15 2z';
       
 13077           break;
       
 13078 
       
 13079         case 'editor-paste-text':
       
 13080           path = 'M12.38 2L15 5v1H5V5l2.64-3h4.74zM10 5c.55 0 1-.44 1-1 0-.55-.45-1-1-1s-1 .45-1 1c0 .56.45 1 1 1zm5.45-1H17c.55 0 1 .45 1 1v12c0 .56-.45 1-1 1H3c-.55 0-1-.44-1-1V5c0-.55.45-1 1-1h1.55L4 4.63V7h12V4.63zM14 11V9H6v2h3v5h2v-5h3z';
       
 13081           break;
       
 13082 
       
 13083         case 'editor-paste-word':
       
 13084           path = 'M12.38 2L15 5v1H5V5l2.64-3h4.74zM10 5c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm8 12V5c0-.55-.45-1-1-1h-1.54l.54.63V7H4V4.62L4.55 4H3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h14c.55 0 1-.45 1-1zm-3-8l-2 7h-2l-1-5-1 5H6.92L5 9h2l1 5 1-5h2l1 5 1-5h2z';
       
 13085           break;
       
 13086 
       
 13087         case 'editor-quote':
       
 13088           path = 'M9.49 13.22c0-.74-.2-1.38-.61-1.9-.62-.78-1.83-.88-2.53-.72-.29-1.65 1.11-3.75 2.92-4.65L7.88 4c-2.73 1.3-5.42 4.28-4.96 8.05C3.21 14.43 4.59 16 6.54 16c.85 0 1.56-.25 2.12-.75s.83-1.18.83-2.03zm8.05 0c0-.74-.2-1.38-.61-1.9-.63-.78-1.83-.88-2.53-.72-.29-1.65 1.11-3.75 2.92-4.65L15.93 4c-2.73 1.3-5.41 4.28-4.95 8.05.29 2.38 1.66 3.95 3.61 3.95.85 0 1.56-.25 2.12-.75s.83-1.18.83-2.03z';
       
 13089           break;
       
 13090 
       
 13091         case 'editor-removeformatting':
       
 13092           path = 'M14.29 4.59l1.1 1.11c.41.4.61.94.61 1.47v2.12c0 .53-.2 1.07-.61 1.47l-6.63 6.63c-.4.41-.94.61-1.47.61s-1.07-.2-1.47-.61l-1.11-1.1-1.1-1.11c-.41-.4-.61-.94-.61-1.47v-2.12c0-.54.2-1.07.61-1.48l6.63-6.62c.4-.41.94-.61 1.47-.61s1.06.2 1.47.61zm-6.21 9.7l6.42-6.42c.39-.39.39-1.03 0-1.43L12.36 4.3c-.19-.19-.45-.29-.72-.29s-.52.1-.71.29l-6.42 6.42c-.39.4-.39 1.04 0 1.43l2.14 2.14c.38.38 1.04.38 1.43 0z';
       
 13093           break;
       
 13094 
       
 13095         case 'editor-rtl':
       
 13096           path = 'M5.52 2h7.43c.55 0 1 .45 1 1s-.45 1-1 1h-1v13c0 .55-.45 1-1 1s-1-.45-1-1V5c0-.55-.45-1-1-1s-1 .45-1 1v12c0 .55-.45 1-1 1s-1-.45-1-1v-5.96h-.43C3.02 11.04 1 9.02 1 6.52S3.02 2 5.52 2zM19 6l-5 4 5 4V6z';
       
 13097           break;
       
 13098 
       
 13099         case 'editor-spellcheck':
       
 13100           path = 'M15.84 2.76c.25 0 .49.04.71.11.23.07.44.16.64.25l.35-.81c-.52-.26-1.08-.39-1.69-.39-.58 0-1.09.13-1.52.37-.43.25-.76.61-.99 1.08C13.11 3.83 13 4.38 13 5c0 .99.23 1.75.7 2.28s1.15.79 2.02.79c.6 0 1.13-.09 1.6-.26v-.84c-.26.08-.51.14-.74.19-.24.05-.49.08-.74.08-.59 0-1.04-.19-1.34-.57-.32-.37-.47-.93-.47-1.66 0-.7.16-1.25.48-1.65.33-.4.77-.6 1.33-.6zM6.5 8h1.04L5.3 2H4.24L2 8h1.03l.58-1.66H5.9zM8 2v6h2.17c.67 0 1.19-.15 1.57-.46.38-.3.56-.72.56-1.26 0-.4-.1-.72-.3-.95-.19-.24-.5-.39-.93-.47v-.04c.35-.06.6-.21.78-.44.18-.24.28-.53.28-.88 0-.52-.19-.9-.56-1.14-.36-.24-.96-.36-1.79-.36H8zm.98 2.48V2.82h.85c.44 0 .77.06.97.19.21.12.31.33.31.61 0 .31-.1.53-.29.66-.18.13-.48.2-.89.2h-.95zM5.64 5.5H3.9l.54-1.56c.14-.4.25-.76.32-1.1l.15.52c.07.23.13.4.17.51zm3.34-.23h.99c.44 0 .76.08.98.23.21.15.32.38.32.69 0 .34-.11.59-.32.75s-.52.24-.93.24H8.98V5.27zM4 13l5 5 9-8-1-1-8 6-4-3z';
       
 13101           break;
       
 13102 
       
 13103         case 'editor-strikethrough':
       
 13104           path = 'M15.82 12.25c.26 0 .5-.02.74-.07.23-.05.48-.12.73-.2v.84c-.46.17-.99.26-1.58.26-.88 0-1.54-.26-2.01-.79-.39-.44-.62-1.04-.68-1.79h-.94c.12.21.18.48.18.79 0 .54-.18.95-.55 1.26-.38.3-.9.45-1.56.45H8v-2.5H6.59l.93 2.5H6.49l-.59-1.67H3.62L3.04 13H2l.93-2.5H2v-1h1.31l.93-2.49H5.3l.92 2.49H8V7h1.77c1 0 1.41.17 1.77.41.37.24.55.62.55 1.13 0 .35-.09.64-.27.87l-.08.09h1.29c.05-.4.15-.77.31-1.1.23-.46.55-.82.98-1.06.43-.25.93-.37 1.51-.37.61 0 1.17.12 1.69.38l-.35.81c-.2-.1-.42-.18-.64-.25s-.46-.11-.71-.11c-.55 0-.99.2-1.31.59-.23.29-.38.66-.44 1.11H17v1h-2.95c.06.5.2.9.44 1.19.3.37.75.56 1.33.56zM4.44 8.96l-.18.54H5.3l-.22-.61c-.04-.11-.09-.28-.17-.51-.07-.24-.12-.41-.14-.51-.08.33-.18.69-.33 1.09zm4.53-1.09V9.5h1.19c.28-.02.49-.09.64-.18.19-.13.28-.35.28-.66 0-.28-.1-.48-.3-.61-.2-.12-.53-.18-.97-.18h-.84zm-3.33 2.64v-.01H3.91v.01h1.73zm5.28.01l-.03-.02H8.97v1.68h1.04c.4 0 .71-.08.92-.23.21-.16.31-.4.31-.74 0-.31-.11-.54-.32-.69z';
       
 13105           break;
       
 13106 
       
 13107         case 'editor-table':
       
 13108           path = 'M18 17V3H2v14h16zM16 7H4V5h12v2zm-7 4H4V9h5v2zm7 0h-5V9h5v2zm-7 4H4v-2h5v2zm7 0h-5v-2h5v2z';
       
 13109           break;
       
 13110 
       
 13111         case 'editor-textcolor':
       
 13112           path = 'M13.23 15h1.9L11 4H9L5 15h1.88l1.07-3h4.18zm-1.53-4.54H8.51L10 5.6z';
       
 13113           break;
       
 13114 
       
 13115         case 'editor-ul':
       
 13116           path = 'M5.5 7C4.67 7 4 6.33 4 5.5 4 4.68 4.67 4 5.5 4 6.32 4 7 4.68 7 5.5 7 6.33 6.32 7 5.5 7zM8 5h9v1H8V5zm-2.5 7c-.83 0-1.5-.67-1.5-1.5C4 9.68 4.67 9 5.5 9c.82 0 1.5.68 1.5 1.5 0 .83-.68 1.5-1.5 1.5zM8 10h9v1H8v-1zm-2.5 7c-.83 0-1.5-.67-1.5-1.5 0-.82.67-1.5 1.5-1.5.82 0 1.5.68 1.5 1.5 0 .83-.68 1.5-1.5 1.5zM8 15h9v1H8v-1z';
       
 13117           break;
       
 13118 
       
 13119         case 'editor-underline':
       
 13120           path = 'M14 5h-2v5.71c0 1.99-1.12 2.98-2.45 2.98-1.32 0-2.55-1-2.55-2.96V5H5v5.87c0 1.91 1 4.54 4.48 4.54 3.49 0 4.52-2.58 4.52-4.5V5zm0 13v-2H5v2h9z';
       
 13121           break;
       
 13122 
       
 13123         case 'editor-unlink':
       
 13124           path = 'M17.74 2.26c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-.32.33-.69.58-1.08.77L13 10l1.69-1.64.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-.76.76L10 7l-.65-2.14c.19-.38.44-.75.77-1.07l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM2 4l8 6-6-8zm4-2l4 8-2-8H6zM2 6l8 4-8-2V6zm7.36 7.69L10 13l.74 2.35-1.38 1.39c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.39-1.38L7 10l-.69.64-1.52 1.53c-.85.84-.85 2.2 0 3.04.84.85 2.2.85 3.04 0zM18 16l-8-6 6 8zm-4 2l-4-8 2 8h2zm4-4l-8-4 8 2v2z';
       
 13125           break;
       
 13126 
       
 13127         case 'editor-video':
       
 13128           path = 'M16 2h-3v1H7V2H4v15h3v-1h6v1h3V2zM6 3v1H5V3h1zm9 0v1h-1V3h1zm-2 1v5H7V4h6zM6 5v1H5V5h1zm9 0v1h-1V5h1zM6 7v1H5V7h1zm9 0v1h-1V7h1zM6 9v1H5V9h1zm9 0v1h-1V9h1zm-2 1v5H7v-5h6zm-7 1v1H5v-1h1zm9 0v1h-1v-1h1zm-9 2v1H5v-1h1zm9 0v1h-1v-1h1zm-9 2v1H5v-1h1zm9 0v1h-1v-1h1z';
       
 13129           break;
       
 13130 
       
 13131         case 'ellipsis':
       
 13132           path = 'M5 10c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm12-2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-7 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z';
       
 13133           break;
       
 13134 
       
 13135         case 'email-alt':
       
 13136           path = 'M19 14.5v-9c0-.83-.67-1.5-1.5-1.5H3.49c-.83 0-1.5.67-1.5 1.5v9c0 .83.67 1.5 1.5 1.5H17.5c.83 0 1.5-.67 1.5-1.5zm-1.31-9.11c.33.33.15.67-.03.84L13.6 9.95l3.9 4.06c.12.14.2.36.06.51-.13.16-.43.15-.56.05l-4.37-3.73-2.14 1.95-2.13-1.95-4.37 3.73c-.13.1-.43.11-.56-.05-.14-.15-.06-.37.06-.51l3.9-4.06-4.06-3.72c-.18-.17-.36-.51-.03-.84s.67-.17.95.07l6.24 5.04 6.25-5.04c.28-.24.62-.4.95-.07z';
       
 13137           break;
       
 13138 
       
 13139         case 'email-alt2':
       
 13140           path = 'M18.01 11.18V2.51c0-1.19-.9-1.81-2-1.37L4 5.91c-1.1.44-2 1.77-2 2.97v8.66c0 1.2.9 1.81 2 1.37l12.01-4.77c1.1-.44 2-1.76 2-2.96zm-1.43-7.46l-6.04 9.33-6.65-4.6c-.1-.07-.36-.32-.17-.64.21-.36.65-.21.65-.21l6.3 2.32s4.83-6.34 5.11-6.7c.13-.17.43-.34.73-.13.29.2.16.49.07.63z';
       
 13141           break;
       
 13142 
       
 13143         case 'email':
       
 13144           path = 'M3.87 4h13.25C18.37 4 19 4.59 19 5.79v8.42c0 1.19-.63 1.79-1.88 1.79H3.87c-1.25 0-1.88-.6-1.88-1.79V5.79c0-1.2.63-1.79 1.88-1.79zm6.62 8.6l6.74-5.53c.24-.2.43-.66.13-1.07-.29-.41-.82-.42-1.17-.17l-5.7 3.86L4.8 5.83c-.35-.25-.88-.24-1.17.17-.3.41-.11.87.13 1.07z';
       
 13145           break;
       
 13146 
       
 13147         case 'embed-audio':
       
 13148           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-7 3H7v4c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2c.4 0 .7.1 1 .3V5h4v2zm4 3.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 13149           break;
       
 13150 
       
 13151         case 'embed-generic':
       
 13152           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-3 6.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 13153           break;
       
 13154 
       
 13155         case 'embed-photo':
       
 13156           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-7 8H3V6h7v6zm4-1.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3zm-6-4V8.5L7.2 10 6 9.2 4 11h5zM4.6 8.6c.6 0 1-.4 1-1s-.4-1-1-1-1 .4-1 1 .4 1 1 1z';
       
 13157           break;
       
 13158 
       
 13159         case 'embed-post':
       
 13160           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM8.6 9l-.4.3c-.4.4-.5 1.1-.2 1.6l-.8.8-1.1-1.1-1.3 1.3c-.2.2-1.6 1.3-1.8 1.1-.2-.2.9-1.6 1.1-1.8l1.3-1.3-1.1-1.1.8-.8c.5.3 1.2.3 1.6-.2l.3-.3c.5-.5.5-1.2.2-1.7L8 5l3 2.9-.8.8c-.5-.2-1.2-.2-1.6.3zm5.4 1.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 13161           break;
       
 13162 
       
 13163         case 'embed-video':
       
 13164           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-7 6.5L8 9.1V11H3V6h5v1.8l2-1.3v4zm4 0L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 13165           break;
       
 13166 
       
 13167         case 'excerpt-view':
       
 13168           path = 'M19 18V2c0-.55-.45-1-1-1H2c-.55 0-1 .45-1 1v16c0 .55.45 1 1 1h16c.55 0 1-.45 1-1zM4 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v6H6V3h11zM4 11c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v6H6v-6h11z';
       
 13169           break;
       
 13170 
       
 13171         case 'exit':
       
 13172           path = 'M13 3v2h2v10h-2v2h4V3h-4zm0 8V9H5.4l4.3-4.3-1.4-1.4L1.6 10l6.7 6.7 1.4-1.4L5.4 11H13z';
       
 13173           break;
       
 13174 
       
 13175         case 'external':
       
 13176           path = 'M9 3h8v8l-2-1V6.92l-5.6 5.59-1.41-1.41L14.08 5H10zm3 12v-3l2-2v7H3V6h8L9 8H5v7h7z';
       
 13177           break;
       
 13178 
       
 13179         case 'facebook-alt':
       
 13180           path = 'M8.46 18h2.93v-7.3h2.45l.37-2.84h-2.82V6.04c0-.82.23-1.38 1.41-1.38h1.51V2.11c-.26-.03-1.15-.11-2.19-.11-2.18 0-3.66 1.33-3.66 3.76v2.1H6v2.84h2.46V18z';
       
 13181           break;
       
 13182 
       
 13183         case 'facebook':
       
 13184           path = 'M2.89 2h14.23c.49 0 .88.39.88.88v14.24c0 .48-.39.88-.88.88h-4.08v-6.2h2.08l.31-2.41h-2.39V7.85c0-.7.2-1.18 1.2-1.18h1.28V4.51c-.22-.03-.98-.09-1.86-.09-1.85 0-3.11 1.12-3.11 3.19v1.78H8.46v2.41h2.09V18H2.89c-.49 0-.89-.4-.89-.88V2.88c0-.49.4-.88.89-.88z';
       
 13185           break;
       
 13186 
       
 13187         case 'feedback':
       
 13188           path = 'M2 2h16c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H2c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm15 14V7H3v9h14zM4 8v1h3V8H4zm4 0v3h8V8H8zm-4 4v1h3v-1H4zm4 0v3h8v-3H8z';
       
 13189           break;
       
 13190 
       
 13191         case 'filter':
       
 13192           path = 'M3 4.5v-2s3.34-1 7-1 7 1 7 1v2l-5 7.03v6.97s-1.22-.09-2.25-.59S8 16.5 8 16.5v-4.97z';
       
 13193           break;
       
 13194 
       
 13195         case 'flag':
       
 13196           path = 'M5 18V3H3v15h2zm1-6V4c3-1 7 1 11 0v8c-3 1.27-8-1-11 0z';
       
 13197           break;
       
 13198 
       
 13199         case 'format-aside':
       
 13200           path = 'M1 1h18v12l-6 6H1V1zm3 3v1h12V4H4zm0 4v1h12V8H4zm6 5v-1H4v1h6zm2 4l5-5h-5v5z';
       
 13201           break;
       
 13202 
       
 13203         case 'format-audio':
       
 13204           path = 'M6.99 3.08l11.02-2c.55-.08.99.45.99 1V14.5c0 1.94-1.57 3.5-3.5 3.5S12 16.44 12 14.5c0-1.93 1.57-3.5 3.5-3.5.54 0 1.04.14 1.5.35V5.08l-9 2V16c-.24 1.7-1.74 3-3.5 3C2.57 19 1 17.44 1 15.5 1 13.57 2.57 12 4.5 12c.54 0 1.04.14 1.5.35V4.08c0-.55.44-.91.99-1z';
       
 13205           break;
       
 13206 
       
 13207         case 'format-chat':
       
 13208           path = 'M11 6h-.82C9.07 6 8 7.2 8 8.16V10l-3 3v-3H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h6c1.1 0 2 .9 2 2v3zm0 1h6c1.1 0 2 .9 2 2v5c0 1.1-.9 2-2 2h-2v3l-3-3h-1c-1.1 0-2-.9-2-2V9c0-1.1.9-2 2-2z';
       
 13209           break;
       
 13210 
       
 13211         case 'format-gallery':
       
 13212           path = 'M16 4h1.96c.57 0 1.04.47 1.04 1.04v12.92c0 .57-.47 1.04-1.04 1.04H5.04C4.47 19 4 18.53 4 17.96V16H2.04C1.47 16 1 15.53 1 14.96V2.04C1 1.47 1.47 1 2.04 1h12.92c.57 0 1.04.47 1.04 1.04V4zM3 14h11V3H3v11zm5-8.5C8 4.67 7.33 4 6.5 4S5 4.67 5 5.5 5.67 7 6.5 7 8 6.33 8 5.5zm2 4.5s1-5 3-5v8H4V7c2 0 2 3 2 3s.33-2 2-2 2 2 2 2zm7 7V6h-1v8.96c0 .57-.47 1.04-1.04 1.04H6v1h11z';
       
 13213           break;
       
 13214 
       
 13215         case 'format-image':
       
 13216           path = 'M2.25 1h15.5c.69 0 1.25.56 1.25 1.25v15.5c0 .69-.56 1.25-1.25 1.25H2.25C1.56 19 1 18.44 1 17.75V2.25C1 1.56 1.56 1 2.25 1zM17 17V3H3v14h14zM10 6c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2zm3 5s0-6 3-6v10c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1V8c2 0 3 4 3 4s1-3 3-3 3 2 3 2z';
       
 13217           break;
       
 13218 
       
 13219         case 'format-quote':
       
 13220           path = 'M8.54 12.74c0-.87-.24-1.61-.72-2.22-.73-.92-2.14-1.03-2.96-.85-.34-1.93 1.3-4.39 3.42-5.45L6.65 1.94C3.45 3.46.31 6.96.85 11.37 1.19 14.16 2.8 16 5.08 16c1 0 1.83-.29 2.48-.88.66-.59.98-1.38.98-2.38zm9.43 0c0-.87-.24-1.61-.72-2.22-.73-.92-2.14-1.03-2.96-.85-.34-1.93 1.3-4.39 3.42-5.45l-1.63-2.28c-3.2 1.52-6.34 5.02-5.8 9.43.34 2.79 1.95 4.63 4.23 4.63 1 0 1.83-.29 2.48-.88.66-.59.98-1.38.98-2.38z';
       
 13221           break;
       
 13222 
       
 13223         case 'format-status':
       
 13224           path = 'M10 1c7 0 9 2.91 9 6.5S17 14 10 14s-9-2.91-9-6.5S3 1 10 1zM5.5 9C6.33 9 7 8.33 7 7.5S6.33 6 5.5 6 4 6.67 4 7.5 4.67 9 5.5 9zM10 9c.83 0 1.5-.67 1.5-1.5S10.83 6 10 6s-1.5.67-1.5 1.5S9.17 9 10 9zm4.5 0c.83 0 1.5-.67 1.5-1.5S15.33 6 14.5 6 13 6.67 13 7.5 13.67 9 14.5 9zM6 14.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5zm-3 2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1z';
       
 13225           break;
       
 13226 
       
 13227         case 'format-video':
       
 13228           path = 'M2 1h16c.55 0 1 .45 1 1v16l-18-.02V2c0-.55.45-1 1-1zm4 1L4 5h1l2-3H6zm4 0H9L7 5h1zm3 0h-1l-2 3h1zm3 0h-1l-2 3h1zm1 14V6H3v10h14zM8 7l6 4-6 4V7z';
       
 13229           break;
       
 13230 
       
 13231         case 'forms':
       
 13232           path = 'M2 2h7v7H2V2zm9 0v7h7V2h-7zM5.5 4.5L7 3H4zM12 8V3h5v5h-5zM4.5 5.5L3 4v3zM8 4L6.5 5.5 8 7V4zM5.5 6.5L4 8h3zM9 18v-7H2v7h7zm9 0h-7v-7h7v7zM8 12v5H3v-5h5zm6.5 1.5L16 12h-3zM12 16l1.5-1.5L12 13v3zm3.5-1.5L17 16v-3zm-1 1L13 17h3z';
       
 13233           break;
       
 13234 
       
 13235         case 'googleplus':
       
 13236           path = 'M6.73 10h5.4c.05.29.09.57.09.95 0 3.27-2.19 5.6-5.49 5.6-3.17 0-5.73-2.57-5.73-5.73 0-3.17 2.56-5.73 5.73-5.73 1.54 0 2.84.57 3.83 1.5l-1.55 1.5c-.43-.41-1.17-.89-2.28-.89-1.96 0-3.55 1.62-3.55 3.62 0 1.99 1.59 3.61 3.55 3.61 2.26 0 3.11-1.62 3.24-2.47H6.73V10zM19 10v1.64h-1.64v1.63h-1.63v-1.63h-1.64V10h1.64V8.36h1.63V10H19z';
       
 13237           break;
       
 13238 
       
 13239         case 'grid-view':
       
 13240           path = 'M2 1h16c.55 0 1 .45 1 1v16c0 .55-.45 1-1 1H2c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1zm7.01 7.99v-6H3v6h6.01zm8 0v-6h-6v6h6zm-8 8.01v-6H3v6h6.01zm8 0v-6h-6v6h6z';
       
 13241           break;
       
 13242 
       
 13243         case 'groups':
       
 13244           path = 'M8.03 4.46c-.29 1.28.55 3.46 1.97 3.46 1.41 0 2.25-2.18 1.96-3.46-.22-.98-1.08-1.63-1.96-1.63-.89 0-1.74.65-1.97 1.63zm-4.13.9c-.25 1.08.47 2.93 1.67 2.93s1.92-1.85 1.67-2.93c-.19-.83-.92-1.39-1.67-1.39s-1.48.56-1.67 1.39zm8.86 0c-.25 1.08.47 2.93 1.66 2.93 1.2 0 1.92-1.85 1.67-2.93-.19-.83-.92-1.39-1.67-1.39-.74 0-1.47.56-1.66 1.39zm-.59 11.43l1.25-4.3C14.2 10 12.71 8.47 10 8.47c-2.72 0-4.21 1.53-3.44 4.02l1.26 4.3C8.05 17.51 9 18 10 18c.98 0 1.94-.49 2.17-1.21zm-6.1-7.63c-.49.67-.96 1.83-.42 3.59l1.12 3.79c-.34.2-.77.31-1.2.31-.85 0-1.65-.41-1.85-1.03l-1.07-3.65c-.65-2.11.61-3.4 2.92-3.4.27 0 .54.02.79.06-.1.1-.2.22-.29.33zm8.35-.39c2.31 0 3.58 1.29 2.92 3.4l-1.07 3.65c-.2.62-1 1.03-1.85 1.03-.43 0-.86-.11-1.2-.31l1.11-3.77c.55-1.78.08-2.94-.42-3.61-.08-.11-.18-.23-.28-.33.25-.04.51-.06.79-.06z';
       
 13245           break;
       
 13246 
       
 13247         case 'hammer':
       
 13248           path = 'M17.7 6.32l1.41 1.42-3.47 3.41-1.42-1.42.84-.82c-.32-.76-.81-1.57-1.51-2.31l-4.61 6.59-5.26 4.7c-.39.39-1.02.39-1.42 0l-1.2-1.21c-.39-.39-.39-1.02 0-1.41l10.97-9.92c-1.37-.86-3.21-1.46-5.67-1.48 2.7-.82 4.95-.93 6.58-.3 1.7.66 2.82 2.2 3.91 3.58z';
       
 13249           break;
       
 13250 
       
 13251         case 'heading':
       
 13252           path = 'M12.5 4v5.2h-5V4H5v13h2.5v-5.2h5V17H15V4';
       
 13253           break;
       
 13254 
       
 13255         case 'heart':
       
 13256           path = 'M10 17.12c3.33-1.4 5.74-3.79 7.04-6.21 1.28-2.41 1.46-4.81.32-6.25-1.03-1.29-2.37-1.78-3.73-1.74s-2.68.63-3.63 1.46c-.95-.83-2.27-1.42-3.63-1.46s-2.7.45-3.73 1.74c-1.14 1.44-.96 3.84.34 6.25 1.28 2.42 3.69 4.81 7.02 6.21z';
       
 13257           break;
       
 13258 
       
 13259         case 'hidden':
       
 13260           path = 'M17.2 3.3l.16.17c.39.39.39 1.02 0 1.41L4.55 17.7c-.39.39-1.03.39-1.41 0l-.17-.17c-.39-.39-.39-1.02 0-1.41l1.59-1.6c-1.57-1-2.76-2.3-3.56-3.93.81-1.65 2.03-2.98 3.64-3.99S8.04 5.09 10 5.09c1.2 0 2.33.21 3.4.6l2.38-2.39c.39-.39 1.03-.39 1.42 0zm-7.09 4.01c-.23.25-.34.54-.34.88 0 .31.12.58.31.81l1.8-1.79c-.13-.12-.28-.21-.45-.26-.11-.01-.28-.03-.49-.04-.33.03-.6.16-.83.4zM2.4 10.59c.69 1.23 1.71 2.25 3.05 3.05l1.28-1.28c-.51-.69-.77-1.47-.77-2.36 0-1.06.36-1.98 1.09-2.76-1.04.27-1.96.7-2.76 1.26-.8.58-1.43 1.27-1.89 2.09zm13.22-2.13l.96-.96c1.02.86 1.83 1.89 2.42 3.09-.81 1.65-2.03 2.98-3.64 3.99s-3.4 1.51-5.36 1.51c-.63 0-1.24-.07-1.83-.18l1.07-1.07c.25.02.5.05.76.05 1.63 0 3.13-.4 4.5-1.21s2.4-1.84 3.1-3.09c-.46-.82-1.09-1.51-1.89-2.09-.03-.01-.06-.03-.09-.04zm-5.58 5.58l4-4c-.01 1.1-.41 2.04-1.18 2.81-.78.78-1.72 1.18-2.82 1.19z';
       
 13261           break;
       
 13262 
       
 13263         case 'html':
       
 13264           path = 'M4 16v-2H2v2H1v-5h1v2h2v-2h1v5H4zM7 16v-4H5.6v-1h3.7v1H8v4H7zM10 16v-5h1l1.4 3.4h.1L14 11h1v5h-1v-3.1h-.1l-1.1 2.5h-.6l-1.1-2.5H11V16h-1zM19 16h-3v-5h1v4h2v1zM9.4 4.2L7.1 6.5l2.3 2.3-.6 1.2-3.5-3.5L8.8 3l.6 1.2zm1.2 4.6l2.3-2.3-2.3-2.3.6-1.2 3.5 3.5-3.5 3.5-.6-1.2z';
       
 13265           break;
       
 13266 
       
 13267         case 'id-alt':
       
 13268           path = 'M18 18H2V2h16v16zM8.05 7.53c.13-.07.24-.15.33-.24.09-.1.17-.21.24-.34.07-.14.13-.26.17-.37s.07-.22.1-.34L8.95 6c0-.04.01-.07.01-.09.05-.32.03-.61-.04-.9-.08-.28-.23-.52-.46-.72C8.23 4.1 7.95 4 7.6 4c-.2 0-.39.04-.56.11-.17.08-.31.18-.41.3-.11.13-.2.27-.27.44-.07.16-.11.33-.12.51s0 .36.01.55l.02.09c.01.06.03.15.06.25s.06.21.1.33.1.25.17.37c.08.12.16.23.25.33s.2.19.34.25c.13.06.28.09.43.09s.3-.03.43-.09zM16 5V4h-5v1h5zm0 2V6h-5v1h5zM7.62 8.83l-1.38-.88c-.41 0-.79.11-1.14.32-.35.22-.62.5-.81.85-.19.34-.29.7-.29 1.07v1.25l.2.05c.13.04.31.09.55.14.24.06.51.12.8.17.29.06.62.1 1 .14.37.04.73.06 1.07.06s.69-.02 1.07-.06.7-.09.98-.14c.27-.05.54-.1.82-.17.27-.06.45-.11.54-.13.09-.03.16-.05.21-.06v-1.25c0-.36-.1-.72-.31-1.07s-.49-.64-.84-.86-.72-.33-1.11-.33zM16 9V8h-3v1h3zm0 2v-1h-3v1h3zm0 3v-1H4v1h12zm0 2v-1H4v1h12z';
       
 13269           break;
       
 13270 
       
 13271         case 'id':
       
 13272           path = 'M18 16H2V4h16v12zM7.05 8.53c.13-.07.24-.15.33-.24.09-.1.17-.21.24-.34.07-.14.13-.26.17-.37s.07-.22.1-.34L7.95 7c0-.04.01-.07.01-.09.05-.32.03-.61-.04-.9-.08-.28-.23-.52-.46-.72C7.23 5.1 6.95 5 6.6 5c-.2 0-.39.04-.56.11-.17.08-.31.18-.41.3-.11.13-.2.27-.27.44-.07.16-.11.33-.12.51s0 .36.01.55l.02.09c.01.06.03.15.06.25s.06.21.1.33.1.25.17.37c.08.12.16.23.25.33s.2.19.34.25c.13.06.28.09.43.09s.3-.03.43-.09zM17 9V5h-5v4h5zm-10.38.83l-1.38-.88c-.41 0-.79.11-1.14.32-.35.22-.62.5-.81.85-.19.34-.29.7-.29 1.07v1.25l.2.05c.13.04.31.09.55.14.24.06.51.12.8.17.29.06.62.1 1 .14.37.04.73.06 1.07.06s.69-.02 1.07-.06.7-.09.98-.14c.27-.05.54-.1.82-.17.27-.06.45-.11.54-.13.09-.03.16-.05.21-.06v-1.25c0-.36-.1-.72-.31-1.07s-.49-.64-.84-.86-.72-.33-1.11-.33zM17 11v-1h-5v1h5zm0 2v-1h-5v1h5zm0 2v-1H3v1h14z';
       
 13273           break;
       
 13274 
       
 13275         case 'image-crop':
       
 13276           path = 'M19 12v3h-4v4h-3v-4H4V7H0V4h4V0h3v4h7l3-3 1 1-3 3v7h4zm-8-5H7v4zm-3 5h4V8z';
       
 13277           break;
       
 13278 
       
 13279         case 'image-filter':
       
 13280           path = 'M14 5.87c0-2.2-1.79-4-4-4s-4 1.8-4 4c0 2.21 1.79 4 4 4s4-1.79 4-4zM3.24 10.66c-1.92 1.1-2.57 3.55-1.47 5.46 1.11 1.92 3.55 2.57 5.47 1.47 1.91-1.11 2.57-3.55 1.46-5.47-1.1-1.91-3.55-2.56-5.46-1.46zm9.52 6.93c1.92 1.1 4.36.45 5.47-1.46 1.1-1.92.45-4.36-1.47-5.47-1.91-1.1-4.36-.45-5.46 1.46-1.11 1.92-.45 4.36 1.46 5.47z';
       
 13281           break;
       
 13282 
       
 13283         case 'image-flip-horizontal':
       
 13284           path = 'M19 3v14h-8v3H9v-3H1V3h8V0h2v3h8zm-8.5 14V3h-1v14h1zM7 6.5L3 10l4 3.5v-7zM17 10l-4-3.5v7z';
       
 13285           break;
       
 13286 
       
 13287         case 'image-flip-vertical':
       
 13288           path = 'M20 9v2h-3v8H3v-8H0V9h3V1h14v8h3zM6.5 7h7L10 3zM17 9.5H3v1h14v-1zM13.5 13h-7l3.5 4z';
       
 13289           break;
       
 13290 
       
 13291         case 'image-rotate-left':
       
 13292           path = 'M7 5H5.05c0-1.74.85-2.9 2.95-2.9V0C4.85 0 2.96 2.11 2.96 5H1.18L3.8 8.39zm13-4v14h-5v5H1V10h9V1h10zm-2 2h-6v7h3v3h3V3zm-5 9H3v6h10v-6z';
       
 13293           break;
       
 13294 
       
 13295         case 'image-rotate-right':
       
 13296           path = 'M15.95 5H14l3.2 3.39L19.82 5h-1.78c0-2.89-1.89-5-5.04-5v2.1c2.1 0 2.95 1.16 2.95 2.9zM1 1h10v9h9v10H6v-5H1V1zm2 2v10h3v-3h3V3H3zm5 9v6h10v-6H8z';
       
 13297           break;
       
 13298 
       
 13299         case 'image-rotate':
       
 13300           path = 'M10.25 1.02c5.1 0 8.75 4.04 8.75 9s-3.65 9-8.75 9c-3.2 0-6.02-1.59-7.68-3.99l2.59-1.52c1.1 1.5 2.86 2.51 4.84 2.51 3.3 0 6-2.79 6-6s-2.7-6-6-6c-1.97 0-3.72 1-4.82 2.49L7 8.02l-6 2v-7L2.89 4.6c1.69-2.17 4.36-3.58 7.36-3.58z';
       
 13301           break;
       
 13302 
       
 13303         case 'images-alt':
       
 13304           path = 'M4 15v-3H2V2h12v3h2v3h2v10H6v-3H4zm7-12c-1.1 0-2 .9-2 2h4c0-1.1-.89-2-2-2zm-7 8V6H3v5h1zm7-3h4c0-1.1-.89-2-2-2-1.1 0-2 .9-2 2zm-5 6V9H5v5h1zm9-1c1.1 0 2-.89 2-2 0-1.1-.9-2-2-2s-2 .9-2 2c0 1.11.9 2 2 2zm2 4v-2c-5 0-5-3-10-3v5h10z';
       
 13305           break;
       
 13306 
       
 13307         case 'images-alt2':
       
 13308           path = 'M5 3h14v11h-2v2h-2v2H1V7h2V5h2V3zm13 10V4H6v9h12zm-3-4c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm1 6v-1H5V6H4v9h12zM7 6l10 6H7V6zm7 11v-1H3V8H2v9h12z';
       
 13309           break;
       
 13310 
       
 13311         case 'index-card':
       
 13312           path = 'M1 3.17V18h18V4H8v-.83c0-.32-.12-.6-.35-.83S7.14 2 6.82 2H2.18c-.33 0-.6.11-.83.34-.24.23-.35.51-.35.83zM10 6v2H3V6h7zm7 0v10h-5V6h5zm-7 4v2H3v-2h7zm0 4v2H3v-2h7z';
       
 13313           break;
       
 13314 
       
 13315         case 'info-outline':
       
 13316           path = 'M9 15h2V9H9v6zm1-10c-.5 0-1 .5-1 1s.5 1 1 1 1-.5 1-1-.5-1-1-1zm0-4c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7z';
       
 13317           break;
       
 13318 
       
 13319         case 'info':
       
 13320           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm1 4c0-.55-.45-1-1-1s-1 .45-1 1 .45 1 1 1 1-.45 1-1zm0 9V9H9v6h2z';
       
 13321           break;
       
 13322 
       
 13323         case 'insert-after':
       
 13324           path = 'M9 12h2v-2h2V8h-2V6H9v2H7v2h2v2zm1 4c3.9 0 7-3.1 7-7s-3.1-7-7-7-7 3.1-7 7 3.1 7 7 7zm0-12c2.8 0 5 2.2 5 5s-2.2 5-5 5-5-2.2-5-5 2.2-5 5-5zM3 19h14v-2H3v2z';
       
 13325           break;
       
 13326 
       
 13327         case 'insert-before':
       
 13328           path = 'M11 8H9v2H7v2h2v2h2v-2h2v-2h-2V8zm-1-4c-3.9 0-7 3.1-7 7s3.1 7 7 7 7-3.1 7-7-3.1-7-7-7zm0 12c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM3 1v2h14V1H3z';
       
 13329           break;
       
 13330 
       
 13331         case 'insert':
       
 13332           path = 'M10 1c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7zm1-11H9v3H6v2h3v3h2v-3h3V9h-3V6z';
       
 13333           break;
       
 13334 
       
 13335         case 'instagram':
       
 13336           path = 'M12.67 10A2.67 2.67 0 1 0 10 12.67 2.68 2.68 0 0 0 12.67 10zm1.43 0A4.1 4.1 0 1 1 10 5.9a4.09 4.09 0 0 1 4.1 4.1zm1.13-4.27a1 1 0 1 1-1-1 1 1 0 0 1 1 1zM10 3.44c-1.17 0-3.67-.1-4.72.32a2.67 2.67 0 0 0-1.52 1.52c-.42 1-.32 3.55-.32 4.72s-.1 3.67.32 4.72a2.74 2.74 0 0 0 1.52 1.52c1 .42 3.55.32 4.72.32s3.67.1 4.72-.32a2.83 2.83 0 0 0 1.52-1.52c.42-1.05.32-3.55.32-4.72s.1-3.67-.32-4.72a2.74 2.74 0 0 0-1.52-1.52c-1.05-.42-3.55-.32-4.72-.32zM18 10c0 1.1 0 2.2-.05 3.3a4.84 4.84 0 0 1-1.29 3.36A4.8 4.8 0 0 1 13.3 18H6.7a4.84 4.84 0 0 1-3.36-1.29 4.84 4.84 0 0 1-1.29-3.41C2 12.2 2 11.1 2 10V6.7a4.84 4.84 0 0 1 1.34-3.36A4.8 4.8 0 0 1 6.7 2.05C7.8 2 8.9 2 10 2h3.3a4.84 4.84 0 0 1 3.36 1.29A4.8 4.8 0 0 1 18 6.7V10z';
       
 13337           break;
       
 13338 
       
 13339         case 'keyboard-hide':
       
 13340           path = 'M18,0 L2,0 C0.9,0 0.01,0.9 0.01,2 L0,12 C0,13.1 0.9,14 2,14 L18,14 C19.1,14 20,13.1 20,12 L20,2 C20,0.9 19.1,0 18,0 Z M18,12 L2,12 L2,2 L18,2 L18,12 Z M9,3 L11,3 L11,5 L9,5 L9,3 Z M9,6 L11,6 L11,8 L9,8 L9,6 Z M6,3 L8,3 L8,5 L6,5 L6,3 Z M6,6 L8,6 L8,8 L6,8 L6,6 Z M3,6 L5,6 L5,8 L3,8 L3,6 Z M3,3 L5,3 L5,5 L3,5 L3,3 Z M6,9 L14,9 L14,11 L6,11 L6,9 Z M12,6 L14,6 L14,8 L12,8 L12,6 Z M12,3 L14,3 L14,5 L12,5 L12,3 Z M15,6 L17,6 L17,8 L15,8 L15,6 Z M15,3 L17,3 L17,5 L15,5 L15,3 Z M10,20 L14,16 L6,16 L10,20 Z';
       
 13341           break;
       
 13342 
       
 13343         case 'laptop':
       
 13344           path = 'M3 3h14c.6 0 1 .4 1 1v10c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1V4c0-.6.4-1 1-1zm13 2H4v8h12V5zm-3 1H5v4zm6 11v-1H1v1c0 .6.5 1 1.1 1h15.8c.6 0 1.1-.4 1.1-1z';
       
 13345           break;
       
 13346 
       
 13347         case 'layout':
       
 13348           path = 'M2 2h5v11H2V2zm6 0h5v5H8V2zm6 0h4v16h-4V2zM8 8h5v5H8V8zm-6 6h11v4H2v-4z';
       
 13349           break;
       
 13350 
       
 13351         case 'leftright':
       
 13352           path = 'M3 10.03L9 6v8zM11 6l6 4.03L11 14V6z';
       
 13353           break;
       
 13354 
       
 13355         case 'lightbulb':
       
 13356           path = 'M10 1c3.11 0 5.63 2.52 5.63 5.62 0 1.84-2.03 4.58-2.03 4.58-.33.44-.6 1.25-.6 1.8v1c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1v-1c0-.55-.27-1.36-.6-1.8 0 0-2.02-2.74-2.02-4.58C4.38 3.52 6.89 1 10 1zM7 16.87V16h6v.87c0 .62-.13 1.13-.75 1.13H12c0 .62-.4 1-1.02 1h-2c-.61 0-.98-.38-.98-1h-.25c-.62 0-.75-.51-.75-1.13z';
       
 13357           break;
       
 13358 
       
 13359         case 'list-view':
       
 13360           path = 'M2 19h16c.55 0 1-.45 1-1V2c0-.55-.45-1-1-1H2c-.55 0-1 .45-1 1v16c0 .55.45 1 1 1zM4 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6V3h11zM4 7c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6V7h11zM4 11c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6v-2h11zM4 15c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6v-2h11z';
       
 13361           break;
       
 13362 
       
 13363         case 'location-alt':
       
 13364           path = 'M13 13.14l1.17-5.94c.79-.43 1.33-1.25 1.33-2.2 0-1.38-1.12-2.5-2.5-2.5S10.5 3.62 10.5 5c0 .95.54 1.77 1.33 2.2zm0-9.64c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5zm1.72 4.8L18 6.97v9L13.12 18 7 15.97l-5 2v-9l5-2 4.27 1.41 1.73 7.3z';
       
 13365           break;
       
 13366 
       
 13367         case 'location':
       
 13368           path = 'M10 2C6.69 2 4 4.69 4 8c0 2.02 1.17 3.71 2.53 4.89.43.37 1.18.96 1.85 1.83.74.97 1.41 2.01 1.62 2.71.21-.7.88-1.74 1.62-2.71.67-.87 1.42-1.46 1.85-1.83C14.83 11.71 16 10.02 16 8c0-3.31-2.69-6-6-6zm0 2.56c1.9 0 3.44 1.54 3.44 3.44S11.9 11.44 10 11.44 6.56 9.9 6.56 8 8.1 4.56 10 4.56z';
       
 13369           break;
       
 13370 
       
 13371         case 'lock':
       
 13372           path = 'M14 9h1c.55 0 1 .45 1 1v7c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1v-7c0-.55.45-1 1-1h1V6c0-2.21 1.79-4 4-4s4 1.79 4 4v3zm-2 0V6c0-1.1-.9-2-2-2s-2 .9-2 2v3h4zm-1 7l-.36-2.15c.51-.24.86-.75.86-1.35 0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5c0 .6.35 1.11.86 1.35L9 16h2z';
       
 13373           break;
       
 13374 
       
 13375         case 'marker':
       
 13376           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm0 13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5z';
       
 13377           break;
       
 13378 
       
 13379         case 'media-archive':
       
 13380           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zM8 3.5v2l1.8-1zM11 5L9.2 6 11 7V5zM8 6.5v2l1.8-1zM11 8L9.2 9l1.8 1V8zM8 9.5v2l1.8-1zm3 1.5l-1.8 1 1.8 1v-2zm-1.5 6c.83 0 1.62-.72 1.5-1.63-.05-.38-.49-1.61-.49-1.61l-1.99-1.1s-.45 1.95-.52 2.71c-.07.77.67 1.63 1.5 1.63zm0-2.39c.42 0 .76.34.76.76 0 .43-.34.77-.76.77s-.76-.34-.76-.77c0-.42.34-.76.76-.76z';
       
 13381           break;
       
 13382 
       
 13383         case 'media-audio':
       
 13384           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zm1 7.26V8.09c0-.11-.04-.21-.12-.29-.07-.08-.16-.11-.27-.1 0 0-3.97.71-4.25.78C8.07 8.54 8 8.8 8 9v3.37c-.2-.09-.42-.07-.6-.07-.38 0-.7.13-.96.39-.26.27-.4.58-.4.96 0 .37.14.69.4.95.26.27.58.4.96.4.34 0 .7-.04.96-.26.26-.23.64-.65.64-1.12V10.3l3-.6V12c-.67-.2-1.17.04-1.44.31-.26.26-.39.58-.39.95 0 .38.13.69.39.96.27.26.71.39 1.08.39.38 0 .7-.13.96-.39.26-.27.4-.58.4-.96z';
       
 13385           break;
       
 13386 
       
 13387         case 'media-code':
       
 13388           path = 'M12 2l4 4v12H4V2h8zM9 13l-2-2 2-2-1-1-3 3 3 3zm3 1l3-3-3-3-1 1 2 2-2 2z';
       
 13389           break;
       
 13390 
       
 13391         case 'media-default':
       
 13392           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3z';
       
 13393           break;
       
 13394 
       
 13395         case 'media-document':
       
 13396           path = 'M12 2l4 4v12H4V2h8zM5 3v1h6V3H5zm7 3h3l-3-3v3zM5 5v1h6V5H5zm10 3V7H5v1h10zM5 9v1h4V9H5zm10 3V9h-5v3h5zM5 11v1h4v-1H5zm10 3v-1H5v1h10zm-3 2v-1H5v1h7z';
       
 13397           break;
       
 13398 
       
 13399         case 'media-interactive':
       
 13400           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zm2 8V8H6v6h3l-1 2h1l1-2 1 2h1l-1-2h3zm-6-3c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm5-2v2h-3V9h3zm0 3v1H7v-1h6z';
       
 13401           break;
       
 13402 
       
 13403         case 'media-spreadsheet':
       
 13404           path = 'M12 2l4 4v12H4V2h8zm-1 4V3H5v3h6zM8 8V7H5v1h3zm3 0V7H9v1h2zm4 0V7h-3v1h3zm-7 2V9H5v1h3zm3 0V9H9v1h2zm4 0V9h-3v1h3zm-7 2v-1H5v1h3zm3 0v-1H9v1h2zm4 0v-1h-3v1h3zm-7 2v-1H5v1h3zm3 0v-1H9v1h2zm4 0v-1h-3v1h3zm-7 2v-1H5v1h3zm3 0v-1H9v1h2z';
       
 13405           break;
       
 13406 
       
 13407         case 'media-text':
       
 13408           path = 'M12 2l4 4v12H4V2h8zM5 3v1h6V3H5zm7 3h3l-3-3v3zM5 5v1h6V5H5zm10 3V7H5v1h10zm0 2V9H5v1h10zm0 2v-1H5v1h10zm-4 2v-1H5v1h6z';
       
 13409           break;
       
 13410 
       
 13411         case 'media-video':
       
 13412           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zm-1 8v-3c0-.27-.1-.51-.29-.71-.2-.19-.44-.29-.71-.29H7c-.27 0-.51.1-.71.29-.19.2-.29.44-.29.71v3c0 .27.1.51.29.71.2.19.44.29.71.29h3c.27 0 .51-.1.71-.29.19-.2.29-.44.29-.71zm3 1v-5l-2 2v1z';
       
 13413           break;
       
 13414 
       
 13415         case 'megaphone':
       
 13416           path = 'M18.15 5.94c.46 1.62.38 3.22-.02 4.48-.42 1.28-1.26 2.18-2.3 2.48-.16.06-.26.06-.4.06-.06.02-.12.02-.18.02-.06.02-.14.02-.22.02h-6.8l2.22 5.5c.02.14-.06.26-.14.34-.08.1-.24.16-.34.16H6.95c-.1 0-.26-.06-.34-.16-.08-.08-.16-.2-.14-.34l-1-5.5H4.25l-.02-.02c-.5.06-1.08-.18-1.54-.62s-.88-1.08-1.06-1.88c-.24-.8-.2-1.56-.02-2.2.18-.62.58-1.08 1.06-1.3l.02-.02 9-5.4c.1-.06.18-.1.24-.16.06-.04.14-.08.24-.12.16-.08.28-.12.5-.18 1.04-.3 2.24.1 3.22.98s1.84 2.24 2.26 3.86zm-2.58 5.98h-.02c.4-.1.74-.34 1.04-.7.58-.7.86-1.76.86-3.04 0-.64-.1-1.3-.28-1.98-.34-1.36-1.02-2.5-1.78-3.24s-1.68-1.1-2.46-.88c-.82.22-1.4.96-1.7 2-.32 1.04-.28 2.36.06 3.72.38 1.36 1 2.5 1.8 3.24.78.74 1.62 1.1 2.48.88zm-2.54-7.08c.22-.04.42-.02.62.04.38.16.76.48 1.02 1s.42 1.2.42 1.78c0 .3-.04.56-.12.8-.18.48-.44.84-.86.94-.34.1-.8-.06-1.14-.4s-.64-.86-.78-1.5c-.18-.62-.12-1.24.02-1.72s.48-.84.82-.94z';
       
 13417           break;
       
 13418 
       
 13419         case 'menu-alt':
       
 13420           path = 'M3 4h14v2H3V4zm0 5h14v2H3V9zm0 5h14v2H3v-2z';
       
 13421           break;
       
 13422 
       
 13423         case 'menu':
       
 13424           path = 'M17 7V5H3v2h14zm0 4V9H3v2h14zm0 4v-2H3v2h14z';
       
 13425           break;
       
 13426 
       
 13427         case 'microphone':
       
 13428           path = 'M12 9V3c0-1.1-.89-2-2-2-1.12 0-2 .94-2 2v6c0 1.1.9 2 2 2 1.13 0 2-.94 2-2zm4 0c0 2.97-2.16 5.43-5 5.91V17h2c.56 0 1 .45 1 1s-.44 1-1 1H7c-.55 0-1-.45-1-1s.45-1 1-1h2v-2.09C6.17 14.43 4 11.97 4 9c0-.55.45-1 1-1 .56 0 1 .45 1 1 0 2.21 1.8 4 4 4 2.21 0 4-1.79 4-4 0-.55.45-1 1-1 .56 0 1 .45 1 1z';
       
 13429           break;
       
 13430 
       
 13431         case 'migrate':
       
 13432           path = 'M4 6h6V4H2v12.01h8V14H4V6zm2 2h6V5l6 5-6 5v-3H6V8z';
       
 13433           break;
       
 13434 
       
 13435         case 'minus':
       
 13436           path = 'M4 9h12v2H4V9z';
       
 13437           break;
       
 13438 
       
 13439         case 'money':
       
 13440           path = 'M0 3h20v12h-.75c0-1.79-1.46-3.25-3.25-3.25-1.31 0-2.42.79-2.94 1.91-.25-.1-.52-.16-.81-.16-.98 0-1.8.63-2.11 1.5H0V3zm8.37 3.11c-.06.15-.1.31-.11.47s-.01.33.01.5l.02.08c.01.06.02.14.05.23.02.1.06.2.1.31.03.11.09.22.15.33.07.12.15.22.23.31s.18.17.31.23c.12.06.25.09.4.09.14 0 .27-.03.39-.09s.22-.14.3-.22c.09-.09.16-.2.22-.32.07-.12.12-.23.16-.33s.07-.2.09-.31c.03-.11.04-.18.05-.22s.01-.07.01-.09c.05-.29.03-.56-.04-.82s-.21-.48-.41-.66c-.21-.18-.47-.27-.79-.27-.19 0-.36.03-.52.1-.15.07-.28.16-.38.28-.09.11-.17.25-.24.4zm4.48 6.04v-1.14c0-.33-.1-.66-.29-.98s-.45-.59-.77-.79c-.32-.21-.66-.31-1.02-.31l-1.24.84-1.28-.82c-.37 0-.72.1-1.04.3-.31.2-.56.46-.74.77-.18.32-.27.65-.27.99v1.14l.18.05c.12.04.29.08.51.14.23.05.47.1.74.15.26.05.57.09.91.13.34.03.67.05.99.05.3 0 .63-.02.98-.05.34-.04.64-.08.89-.13.25-.04.5-.1.76-.16l.5-.12c.08-.02.14-.04.19-.06zm3.15.1c1.52 0 2.75 1.23 2.75 2.75s-1.23 2.75-2.75 2.75c-.73 0-1.38-.3-1.87-.77.23-.35.37-.78.37-1.23 0-.77-.39-1.46-.99-1.86.43-.96 1.37-1.64 2.49-1.64zm-5.5 3.5c0-.96.79-1.75 1.75-1.75s1.75.79 1.75 1.75-.79 1.75-1.75 1.75-1.75-.79-1.75-1.75z';
       
 13441           break;
       
 13442 
       
 13443         case 'move':
       
 13444           path = 'M19 10l-4 4v-3h-4v4h3l-4 4-4-4h3v-4H5v3l-4-4 4-4v3h4V5H6l4-4 4 4h-3v4h4V6z';
       
 13445           break;
       
 13446 
       
 13447         case 'nametag':
       
 13448           path = 'M12 5V2c0-.55-.45-1-1-1H9c-.55 0-1 .45-1 1v3c0 .55.45 1 1 1h2c.55 0 1-.45 1-1zm-2-3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm8 13V7c0-1.1-.9-2-2-2h-3v.33C13 6.25 12.25 7 11.33 7H8.67C7.75 7 7 6.25 7 5.33V5H4c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-1-6v6H3V9h14zm-8 2c0-.55-.22-1-.5-1s-.5.45-.5 1 .22 1 .5 1 .5-.45.5-1zm3 0c0-.55-.22-1-.5-1s-.5.45-.5 1 .22 1 .5 1 .5-.45.5-1zm-5.96 1.21c.92.48 2.34.79 3.96.79s3.04-.31 3.96-.79c-.21 1-1.89 1.79-3.96 1.79s-3.75-.79-3.96-1.79z';
       
 13449           break;
       
 13450 
       
 13451         case 'networking':
       
 13452           path = 'M18 13h1c.55 0 1 .45 1 1.01v2.98c0 .56-.45 1.01-1 1.01h-4c-.55 0-1-.45-1-1.01v-2.98c0-.56.45-1.01 1-1.01h1v-2h-5v2h1c.55 0 1 .45 1 1.01v2.98c0 .56-.45 1.01-1 1.01H8c-.55 0-1-.45-1-1.01v-2.98c0-.56.45-1.01 1-1.01h1v-2H4v2h1c.55 0 1 .45 1 1.01v2.98C6 17.55 5.55 18 5 18H1c-.55 0-1-.45-1-1.01v-2.98C0 13.45.45 13 1 13h1v-2c0-1.1.9-2 2-2h5V7H8c-.55 0-1-.45-1-1.01V3.01C7 2.45 7.45 2 8 2h4c.55 0 1 .45 1 1.01v2.98C13 6.55 12.55 7 12 7h-1v2h5c1.1 0 2 .9 2 2v2z';
       
 13453           break;
       
 13454 
       
 13455         case 'no-alt':
       
 13456           path = 'M14.95 6.46L11.41 10l3.54 3.54-1.41 1.41L10 11.42l-3.53 3.53-1.42-1.42L8.58 10 5.05 6.47l1.42-1.42L10 8.58l3.54-3.53z';
       
 13457           break;
       
 13458 
       
 13459         case 'no':
       
 13460           path = 'M12.12 10l3.53 3.53-2.12 2.12L10 12.12l-3.54 3.54-2.12-2.12L7.88 10 4.34 6.46l2.12-2.12L10 7.88l3.54-3.53 2.12 2.12z';
       
 13461           break;
       
 13462 
       
 13463         case 'palmtree':
       
 13464           path = 'M8.58 2.39c.32 0 .59.05.81.14 1.25.55 1.69 2.24 1.7 3.97.59-.82 2.15-2.29 3.41-2.29s2.94.73 3.53 3.55c-1.13-.65-2.42-.94-3.65-.94-1.26 0-2.45.32-3.29.89.4-.11.86-.16 1.33-.16 1.39 0 2.9.45 3.4 1.31.68 1.16.47 3.38-.76 4.14-.14-2.1-1.69-4.12-3.47-4.12-.44 0-.88.12-1.33.38C8 10.62 7 14.56 7 19H2c0-5.53 4.21-9.65 7.68-10.79-.56-.09-1.17-.15-1.82-.15C6.1 8.06 4.05 8.5 2 10c.76-2.96 2.78-4.1 4.69-4.1 1.25 0 2.45.5 3.2 1.29-.66-2.24-2.49-2.86-4.08-2.86-.8 0-1.55.16-2.05.35.91-1.29 3.31-2.29 4.82-2.29zM13 11.5c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5.67 1.5 1.5 1.5 1.5-.67 1.5-1.5z';
       
 13465           break;
       
 13466 
       
 13467         case 'paperclip':
       
 13468           path = 'M17.05 2.7c1.93 1.94 1.93 5.13 0 7.07L10 16.84c-1.88 1.89-4.91 1.93-6.86.15-.06-.05-.13-.09-.19-.15-1.93-1.94-1.93-5.12 0-7.07l4.94-4.95c.91-.92 2.28-1.1 3.39-.58.3.15.59.33.83.58 1.17 1.17 1.17 3.07 0 4.24l-4.93 4.95c-.39.39-1.02.39-1.41 0s-.39-1.02 0-1.41l4.93-4.95c.39-.39.39-1.02 0-1.41-.38-.39-1.02-.39-1.4 0l-4.94 4.95c-.91.92-1.1 2.29-.57 3.4.14.3.32.59.57.84s.54.43.84.57c1.11.53 2.47.35 3.39-.57l7.05-7.07c1.16-1.17 1.16-3.08 0-4.25-.56-.55-1.28-.83-2-.86-.08.01-.16.01-.24 0-.22-.03-.43-.11-.6-.27-.39-.4-.38-1.05.02-1.45.16-.16.36-.24.56-.28.14-.02.27-.01.4.02 1.19.06 2.36.52 3.27 1.43z';
       
 13469           break;
       
 13470 
       
 13471         case 'performance':
       
 13472           path = 'M3.76 17.01h12.48C17.34 15.63 18 13.9 18 12c0-4.41-3.58-8-8-8s-8 3.59-8 8c0 1.9.66 3.63 1.76 5.01zM9 6c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zM4 8c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zm4.52 3.4c.84-.83 6.51-3.5 6.51-3.5s-2.66 5.68-3.49 6.51c-.84.84-2.18.84-3.02 0-.83-.83-.83-2.18 0-3.01zM3 13c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zm6 0c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zm6 0c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1z';
       
 13473           break;
       
 13474 
       
 13475         case 'phone':
       
 13476           path = 'M12.06 6l-.21-.2c-.52-.54-.43-.79.08-1.3l2.72-2.75c.81-.82.96-1.21 1.73-.48l.21.2zm.53.45l4.4-4.4c.7.94 2.34 3.47 1.53 5.34-.73 1.67-1.09 1.75-2 3-1.85 2.11-4.18 4.37-6 6.07-1.26.91-1.31 1.33-3 2-1.8.71-4.4-.89-5.38-1.56l4.4-4.4 1.18 1.62c.34.46 1.2-.06 1.8-.66 1.04-1.05 3.18-3.18 4-4.07.59-.59 1.12-1.45.66-1.8zM1.57 16.5l-.21-.21c-.68-.74-.29-.9.52-1.7l2.74-2.72c.51-.49.75-.6 1.27-.11l.2.21z';
       
 13477           break;
       
 13478 
       
 13479         case 'playlist-audio':
       
 13480           path = 'M17 3V1H2v2h15zm0 4V5H2v2h15zm-7 4V9H2v2h8zm7.45-1.96l-6 1.12c-.16.02-.19.03-.29.13-.11.09-.16.22-.16.37v4.59c-.29-.13-.66-.14-.93-.14-.54 0-1 .19-1.38.57s-.56.84-.56 1.38c0 .53.18.99.56 1.37s.84.57 1.38.57c.49 0 .92-.16 1.29-.48s.59-.71.65-1.19v-4.95L17 11.27v3.48c-.29-.13-.56-.19-.83-.19-.54 0-1.11.19-1.49.57-.38.37-.57.83-.57 1.37s.19.99.57 1.37.84.57 1.38.57c.53 0 .99-.19 1.37-.57s.57-.83.57-1.37V9.6c0-.16-.05-.3-.16-.41-.11-.12-.24-.17-.39-.15zM8 15v-2H2v2h6zm-2 4v-2H2v2h4z';
       
 13481           break;
       
 13482 
       
 13483         case 'playlist-video':
       
 13484           path = 'M17 3V1H2v2h15zm0 4V5H2v2h15zM6 11V9H2v2h4zm2-2h9c.55 0 1 .45 1 1v8c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1v-8c0-.55.45-1 1-1zm3 7l3.33-2L11 12v4zm-5-1v-2H2v2h4zm0 4v-2H2v2h4z';
       
 13485           break;
       
 13486 
       
 13487         case 'plus-alt':
       
 13488           path = 'M15.8 4.2c3.2 3.21 3.2 8.39 0 11.6-3.21 3.2-8.39 3.2-11.6 0C1 12.59 1 7.41 4.2 4.2 7.41 1 12.59 1 15.8 4.2zm-4.3 11.3v-4h4v-3h-4v-4h-3v4h-4v3h4v4h3z';
       
 13489           break;
       
 13490 
       
 13491         case 'plus-light':
       
 13492           path = 'M17 9v2h-6v6H9v-6H3V9h6V3h2v6h6z';
       
 13493           break;
       
 13494 
       
 13495         case 'plus':
       
 13496           path = 'M17 7v3h-5v5H9v-5H4V7h5V2h3v5h5z';
       
 13497           break;
       
 13498 
       
 13499         case 'portfolio':
       
 13500           path = 'M4 5H.78c-.37 0-.74.32-.69.84l1.56 9.99S3.5 8.47 3.86 6.7c.11-.53.61-.7.98-.7H10s-.7-2.08-.77-2.31C9.11 3.25 8.89 3 8.45 3H5.14c-.36 0-.7.23-.8.64C4.25 4.04 4 5 4 5zm4.88 0h-4s.42-1 .87-1h2.13c.48 0 1 1 1 1zM2.67 16.25c-.31.47-.76.75-1.26.75h15.73c.54 0 .92-.31 1.03-.83.44-2.19 1.68-8.44 1.68-8.44.07-.5-.3-.73-.62-.73H16V5.53c0-.16-.26-.53-.66-.53h-3.76c-.52 0-.87.58-.87.58L10 7H5.59c-.32 0-.63.19-.69.5 0 0-1.59 6.7-1.72 7.33-.07.37-.22.99-.51 1.42zM15.38 7H11s.58-1 1.13-1h2.29c.71 0 .96 1 .96 1z';
       
 13501           break;
       
 13502 
       
 13503         case 'post-status':
       
 13504           path = 'M14 6c0 1.86-1.28 3.41-3 3.86V16c0 1-2 2-2 2V9.86c-1.72-.45-3-2-3-3.86 0-2.21 1.79-4 4-4s4 1.79 4 4zM8 5c0 .55.45 1 1 1s1-.45 1-1-.45-1-1-1-1 .45-1 1z';
       
 13505           break;
       
 13506 
       
 13507         case 'pressthis':
       
 13508           path = 'M14.76 1C16.55 1 18 2.46 18 4.25c0 1.78-1.45 3.24-3.24 3.24-.23 0-.47-.03-.7-.08L13 8.47V19H2V4h9.54c.13-2 1.52-3 3.22-3zm0 5.49C16 6.49 17 5.48 17 4.25 17 3.01 16 2 14.76 2s-2.24 1.01-2.24 2.25c0 .37.1.72.27 1.03L9.57 8.5c-.28.28-1.77 2.22-1.5 2.49.02.03.06.04.1.04.49 0 2.14-1.28 2.39-1.53l3.24-3.24c.29.14.61.23.96.23z';
       
 13509           break;
       
 13510 
       
 13511         case 'products':
       
 13512           path = 'M17 8h1v11H2V8h1V6c0-2.76 2.24-5 5-5 .71 0 1.39.15 2 .42.61-.27 1.29-.42 2-.42 2.76 0 5 2.24 5 5v2zM5 6v2h2V6c0-1.13.39-2.16 1.02-3H8C6.35 3 5 4.35 5 6zm10 2V6c0-1.65-1.35-3-3-3h-.02c.63.84 1.02 1.87 1.02 3v2h2zm-5-4.22C9.39 4.33 9 5.12 9 6v2h2V6c0-.88-.39-1.67-1-2.22z';
       
 13513           break;
       
 13514 
       
 13515         case 'randomize':
       
 13516           path = 'M18 6.01L14 9V7h-4l-5 8H2v-2h2l5-8h5V3zM2 5h3l1.15 2.17-1.12 1.8L4 7H2V5zm16 9.01L14 17v-2H9l-1.15-2.17 1.12-1.8L10 13h4v-2z';
       
 13517           break;
       
 13518 
       
 13519         case 'redo':
       
 13520           path = 'M8 5h5V2l6 4-6 4V7H8c-2.2 0-4 1.8-4 4s1.8 4 4 4h5v2H8c-3.3 0-6-2.7-6-6s2.7-6 6-6z';
       
 13521           break;
       
 13522 
       
 13523         case 'rest-api':
       
 13524           path = 'M3 4h2v12H3z';
       
 13525           break;
       
 13526 
       
 13527         case 'rss':
       
 13528           path = 'M14.92 18H18C18 9.32 10.82 2.25 2 2.25v3.02c7.12 0 12.92 5.71 12.92 12.73zm-5.44 0h3.08C12.56 12.27 7.82 7.6 2 7.6v3.02c2 0 3.87.77 5.29 2.16C8.7 14.17 9.48 16.03 9.48 18zm-5.35-.02c1.17 0 2.13-.93 2.13-2.09 0-1.15-.96-2.09-2.13-2.09-1.18 0-2.13.94-2.13 2.09 0 1.16.95 2.09 2.13 2.09z';
       
 13529           break;
       
 13530 
       
 13531         case 'saved':
       
 13532           path = 'M15.3 5.3l-6.8 6.8-2.8-2.8-1.4 1.4 4.2 4.2 8.2-8.2';
       
 13533           break;
       
 13534 
       
 13535         case 'schedule':
       
 13536           path = 'M2 2h16v4H2V2zm0 10V8h4v4H2zm6-2V8h4v2H8zm6 3V8h4v5h-4zm-6 5v-6h4v6H8zm-6 0v-4h4v4H2zm12 0v-3h4v3h-4z';
       
 13537           break;
       
 13538 
       
 13539         case 'screenoptions':
       
 13540           path = 'M9 9V3H3v6h6zm8 0V3h-6v6h6zm-8 8v-6H3v6h6zm8 0v-6h-6v6h6z';
       
 13541           break;
       
 13542 
       
 13543         case 'search':
       
 13544           path = 'M12.14 4.18c1.87 1.87 2.11 4.75.72 6.89.12.1.22.21.36.31.2.16.47.36.81.59.34.24.56.39.66.47.42.31.73.57.94.78.32.32.6.65.84 1 .25.35.44.69.59 1.04.14.35.21.68.18 1-.02.32-.14.59-.36.81s-.49.34-.81.36c-.31.02-.65-.04-.99-.19-.35-.14-.7-.34-1.04-.59-.35-.24-.68-.52-1-.84-.21-.21-.47-.52-.77-.93-.1-.13-.25-.35-.47-.66-.22-.32-.4-.57-.56-.78-.16-.2-.29-.35-.44-.5-2.07 1.09-4.69.76-6.44-.98-2.14-2.15-2.14-5.64 0-7.78 2.15-2.15 5.63-2.15 7.78 0zm-1.41 6.36c1.36-1.37 1.36-3.58 0-4.95-1.37-1.37-3.59-1.37-4.95 0-1.37 1.37-1.37 3.58 0 4.95 1.36 1.37 3.58 1.37 4.95 0z';
       
 13545           break;
       
 13546 
       
 13547         case 'share-alt':
       
 13548           path = 'M16.22 5.8c.47.69.29 1.62-.4 2.08-.69.47-1.62.29-2.08-.4-.16-.24-.35-.46-.55-.67-.21-.2-.43-.39-.67-.55s-.5-.3-.77-.41c-.27-.12-.55-.21-.84-.26-.59-.13-1.23-.13-1.82-.01-.29.06-.57.15-.84.27-.27.11-.53.25-.77.41s-.46.35-.66.55c-.21.21-.4.43-.56.67s-.3.5-.41.76c-.01.02-.01.03-.01.04-.1.24-.17.48-.23.72H1V6h2.66c.04-.07.07-.13.12-.2.27-.4.57-.77.91-1.11s.72-.65 1.11-.91c.4-.27.83-.51 1.28-.7s.93-.34 1.41-.43c.99-.21 2.03-.21 3.02 0 .48.09.96.24 1.41.43s.88.43 1.28.7c.39.26.77.57 1.11.91s.64.71.91 1.11zM12.5 10c0-1.38-1.12-2.5-2.5-2.5S7.5 8.62 7.5 10s1.12 2.5 2.5 2.5 2.5-1.12 2.5-2.5zm-8.72 4.2c-.47-.69-.29-1.62.4-2.09.69-.46 1.62-.28 2.08.41.16.24.35.46.55.67.21.2.43.39.67.55s.5.3.77.41c.27.12.55.2.84.26.59.13 1.23.12 1.82 0 .29-.06.57-.14.84-.26.27-.11.53-.25.77-.41s.46-.35.66-.55c.21-.21.4-.44.56-.67.16-.25.3-.5.41-.76.01-.02.01-.03.01-.04.1-.24.17-.48.23-.72H19v3h-2.66c-.04.06-.07.13-.12.2-.27.4-.57.77-.91 1.11s-.72.65-1.11.91c-.4.27-.83.51-1.28.7s-.93.33-1.41.43c-.99.21-2.03.21-3.02 0-.48-.1-.96-.24-1.41-.43s-.88-.43-1.28-.7c-.39-.26-.77-.57-1.11-.91s-.64-.71-.91-1.11z';
       
 13549           break;
       
 13550 
       
 13551         case 'share-alt2':
       
 13552           path = 'M18 8l-5 4V9.01c-2.58.06-4.88.45-7 2.99.29-3.57 2.66-5.66 7-5.94V3zM4 14h11v-2l2-1.6V16H2V5h9.43c-1.83.32-3.31 1-4.41 2H4v7z';
       
 13553           break;
       
 13554 
       
 13555         case 'share':
       
 13556           path = 'M14.5 12c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3c0-.24.03-.46.09-.69l-4.38-2.3c-.55.61-1.33.99-2.21.99-1.66 0-3-1.34-3-3s1.34-3 3-3c.88 0 1.66.39 2.21.99l4.38-2.3c-.06-.23-.09-.45-.09-.69 0-1.66 1.34-3 3-3s3 1.34 3 3-1.34 3-3 3c-.88 0-1.66-.39-2.21-.99l-4.38 2.3c.06.23.09.45.09.69s-.03.46-.09.69l4.38 2.3c.55-.61 1.33-.99 2.21-.99z';
       
 13557           break;
       
 13558 
       
 13559         case 'shield-alt':
       
 13560           path = 'M10 2s3 2 7 2c0 11-7 14-7 14S3 15 3 4c4 0 7-2 7-2z';
       
 13561           break;
       
 13562 
       
 13563         case 'shield':
       
 13564           path = 'M10 2s3 2 7 2c0 11-7 14-7 14S3 15 3 4c4 0 7-2 7-2zm0 8h5s1-1 1-5c0 0-5-1-6-2v7H5c1 4 5 7 5 7v-7z';
       
 13565           break;
       
 13566 
       
 13567         case 'shortcode':
       
 13568           path = 'M6 14H4V6h2V4H2v12h4M7.1 17h2.1l3.7-14h-2.1M14 4v2h2v8h-2v2h4V4';
       
 13569           break;
       
 13570 
       
 13571         case 'slides':
       
 13572           path = 'M5 14V6h10v8H5zm-3-1V7h2v6H2zm4-6v6h8V7H6zm10 0h2v6h-2V7zm-3 2V8H7v1h6zm0 3v-2H7v2h6z';
       
 13573           break;
       
 13574 
       
 13575         case 'smartphone':
       
 13576           path = 'M6 2h8c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H6c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm7 12V4H7v10h6zM8 5h4l-4 5V5z';
       
 13577           break;
       
 13578 
       
 13579         case 'smiley':
       
 13580           path = 'M7 5.2c1.1 0 2 .89 2 2 0 .37-.11.71-.28 1C8.72 8.2 8 8 7 8s-1.72.2-1.72.2c-.17-.29-.28-.63-.28-1 0-1.11.9-2 2-2zm6 0c1.11 0 2 .89 2 2 0 .37-.11.71-.28 1 0 0-.72-.2-1.72-.2s-1.72.2-1.72.2c-.17-.29-.28-.63-.28-1 0-1.11.89-2 2-2zm-3 13.7c3.72 0 7.03-2.36 8.23-5.88l-1.32-.46C15.9 15.52 13.12 17.5 10 17.5s-5.9-1.98-6.91-4.94l-1.32.46c1.2 3.52 4.51 5.88 8.23 5.88z';
       
 13581           break;
       
 13582 
       
 13583         case 'sort':
       
 13584           path = 'M11 7H1l5 7zm-2 7h10l-5-7z';
       
 13585           break;
       
 13586 
       
 13587         case 'sos':
       
 13588           path = 'M18 10c0-4.42-3.58-8-8-8s-8 3.58-8 8 3.58 8 8 8 8-3.58 8-8zM7.23 3.57L8.72 7.3c-.62.29-1.13.8-1.42 1.42L3.57 7.23c.71-1.64 2.02-2.95 3.66-3.66zm9.2 3.66L12.7 8.72c-.29-.62-.8-1.13-1.42-1.42l1.49-3.73c1.64.71 2.95 2.02 3.66 3.66zM10 12c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm-6.43.77l3.73-1.49c.29.62.8 1.13 1.42 1.42l-1.49 3.73c-1.64-.71-2.95-2.02-3.66-3.66zm9.2 3.66l-1.49-3.73c.62-.29 1.13-.8 1.42-1.42l3.73 1.49c-.71 1.64-2.02 2.95-3.66 3.66z';
       
 13589           break;
       
 13590 
       
 13591         case 'star-empty':
       
 13592           path = 'M10 1L7 7l-6 .75 4.13 4.62L4 19l6-3 6 3-1.12-6.63L19 7.75 13 7zm0 2.24l2.34 4.69 4.65.58-3.18 3.56.87 5.15L10 14.88l-4.68 2.34.87-5.15-3.18-3.56 4.65-.58z';
       
 13593           break;
       
 13594 
       
 13595         case 'star-filled':
       
 13596           path = 'M10 1l3 6 6 .75-4.12 4.62L16 19l-6-3-6 3 1.13-6.63L1 7.75 7 7z';
       
 13597           break;
       
 13598 
       
 13599         case 'star-half':
       
 13600           path = 'M10 1L7 7l-6 .75 4.13 4.62L4 19l6-3 6 3-1.12-6.63L19 7.75 13 7zm0 2.24l2.34 4.69 4.65.58-3.18 3.56.87 5.15L10 14.88V3.24z';
       
 13601           break;
       
 13602 
       
 13603         case 'sticky':
       
 13604           path = 'M5 3.61V1.04l8.99-.01-.01 2.58c-1.22.26-2.16 1.35-2.16 2.67v.5c.01 1.31.93 2.4 2.17 2.66l-.01 2.58h-3.41l-.01 2.57c0 .6-.47 4.41-1.06 4.41-.6 0-1.08-3.81-1.08-4.41v-2.56L5 12.02l.01-2.58c1.23-.25 2.15-1.35 2.15-2.66v-.5c0-1.31-.92-2.41-2.16-2.67z';
       
 13605           break;
       
 13606 
       
 13607         case 'store':
       
 13608           path = 'M1 10c.41.29.96.43 1.5.43.55 0 1.09-.14 1.5-.43.62-.46 1-1.17 1-2 0 .83.37 1.54 1 2 .41.29.96.43 1.5.43.55 0 1.09-.14 1.5-.43.62-.46 1-1.17 1-2 0 .83.37 1.54 1 2 .41.29.96.43 1.51.43.54 0 1.08-.14 1.49-.43.62-.46 1-1.17 1-2 0 .83.37 1.54 1 2 .41.29.96.43 1.5.43.55 0 1.09-.14 1.5-.43.63-.46 1-1.17 1-2V7l-3-7H4L0 7v1c0 .83.37 1.54 1 2zm2 8.99h5v-5h4v5h5v-7c-.37-.05-.72-.22-1-.43-.63-.45-1-.73-1-1.56 0 .83-.38 1.11-1 1.56-.41.3-.95.43-1.49.44-.55 0-1.1-.14-1.51-.44-.63-.45-1-.73-1-1.56 0 .83-.38 1.11-1 1.56-.41.3-.95.43-1.5.44-.54 0-1.09-.14-1.5-.44-.63-.45-1-.73-1-1.57 0 .84-.38 1.12-1 1.57-.29.21-.63.38-1 .44v6.99z';
       
 13609           break;
       
 13610 
       
 13611         case 'table-col-after':
       
 13612           path = 'M14.08 12.864V9.216h3.648V7.424H14.08V3.776h-1.728v3.648H8.64v1.792h3.712v3.648zM0 17.92V0h20.48v17.92H0zM6.4 1.28H1.28v3.84H6.4V1.28zm0 5.12H1.28v3.84H6.4V6.4zm0 5.12H1.28v3.84H6.4v-3.84zM19.2 1.28H7.68v14.08H19.2V1.28z';
       
 13613           break;
       
 13614 
       
 13615         case 'table-col-before':
       
 13616           path = 'M6.4 3.776v3.648H2.752v1.792H6.4v3.648h1.728V9.216h3.712V7.424H8.128V3.776zM0 17.92V0h20.48v17.92H0zM12.8 1.28H1.28v14.08H12.8V1.28zm6.4 0h-5.12v3.84h5.12V1.28zm0 5.12h-5.12v3.84h5.12V6.4zm0 5.12h-5.12v3.84h5.12v-3.84z';
       
 13617           break;
       
 13618 
       
 13619         case 'table-col-delete':
       
 13620           path = 'M6.4 9.98L7.68 8.7v-.256L6.4 7.164V9.98zm6.4-1.532l1.28-1.28V9.92L12.8 8.64v-.192zm7.68 9.472V0H0v17.92h20.48zm-1.28-2.56h-5.12v-1.024l-.256.256-1.024-1.024v1.792H7.68v-1.792l-1.024 1.024-.256-.256v1.024H1.28V1.28H6.4v2.368l.704-.704.576.576V1.216h5.12V3.52l.96-.96.32.32V1.216h5.12V15.36zm-5.76-2.112l-3.136-3.136-3.264 3.264-1.536-1.536 3.264-3.264L5.632 5.44l1.536-1.536 3.136 3.136 3.2-3.2 1.536 1.536-3.2 3.2 3.136 3.136-1.536 1.536z';
       
 13621           break;
       
 13622 
       
 13623         case 'table-row-after':
       
 13624           path = 'M13.824 10.176h-2.88v-2.88H9.536v2.88h-2.88v1.344h2.88v2.88h1.408v-2.88h2.88zM0 17.92V0h20.48v17.92H0zM6.4 1.28H1.28v3.84H6.4V1.28zm6.4 0H7.68v3.84h5.12V1.28zm6.4 0h-5.12v3.84h5.12V1.28zm0 5.056H1.28v9.024H19.2V6.336z';
       
 13625           break;
       
 13626 
       
 13627         case 'table-row-before':
       
 13628           path = 'M6.656 6.464h2.88v2.88h1.408v-2.88h2.88V5.12h-2.88V2.24H9.536v2.88h-2.88zM0 17.92V0h20.48v17.92H0zm7.68-2.56h5.12v-3.84H7.68v3.84zm-6.4 0H6.4v-3.84H1.28v3.84zM19.2 1.28H1.28v9.024H19.2V1.28zm0 10.24h-5.12v3.84h5.12v-3.84z';
       
 13629           break;
       
 13630 
       
 13631         case 'table-row-delete':
       
 13632           path = 'M17.728 11.456L14.592 8.32l3.2-3.2-1.536-1.536-3.2 3.2L9.92 3.648 8.384 5.12l3.2 3.2-3.264 3.264 1.536 1.536 3.264-3.264 3.136 3.136 1.472-1.536zM0 17.92V0h20.48v17.92H0zm19.2-6.4h-.448l-1.28-1.28H19.2V6.4h-1.792l1.28-1.28h.512V1.28H1.28v3.84h6.208l1.28 1.28H1.28v3.84h7.424l-1.28 1.28H1.28v3.84H19.2v-3.84z';
       
 13633           break;
       
 13634 
       
 13635         case 'tablet':
       
 13636           path = 'M4 2h12c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H4c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm11 14V4H5v12h10zM6 5h6l-6 5V5z';
       
 13637           break;
       
 13638 
       
 13639         case 'tag':
       
 13640           path = 'M11 2h7v7L8 19l-7-7zm3 6c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z';
       
 13641           break;
       
 13642 
       
 13643         case 'tagcloud':
       
 13644           path = 'M11 3v4H1V3h10zm8 0v4h-7V3h7zM7 8v3H1V8h6zm12 0v3H8V8h11zM9 12v2H1v-2h8zm10 0v2h-9v-2h9zM6 15v1H1v-1h5zm5 0v1H7v-1h4zm3 0v1h-2v-1h2zm5 0v1h-4v-1h4z';
       
 13645           break;
       
 13646 
       
 13647         case 'testimonial':
       
 13648           path = 'M4 3h12c.55 0 1.02.2 1.41.59S18 4.45 18 5v7c0 .55-.2 1.02-.59 1.41S16.55 14 16 14h-1l-5 5v-5H4c-.55 0-1.02-.2-1.41-.59S2 12.55 2 12V5c0-.55.2-1.02.59-1.41S3.45 3 4 3zm11 2H4v1h11V5zm1 3H4v1h12V8zm-3 3H4v1h9v-1z';
       
 13649           break;
       
 13650 
       
 13651         case 'text':
       
 13652           path = 'M18 3v2H2V3h16zm-6 4v2H2V7h10zm6 0v2h-4V7h4zM8 11v2H2v-2h6zm10 0v2h-8v-2h8zm-4 4v2H2v-2h12z';
       
 13653           break;
       
 13654 
       
 13655         case 'thumbs-down':
       
 13656           path = 'M7.28 18c-.15.02-.26-.02-.41-.07-.56-.19-.83-.79-.66-1.35.17-.55 1-3.04 1-3.58 0-.53-.75-1-1.35-1h-3c-.6 0-1-.4-1-1s2-7 2-7c.17-.39.55-1 1-1H14v9h-2.14c-.41.41-3.3 4.71-3.58 5.27-.21.41-.6.68-1 .73zM18 12h-2V3h2v9z';
       
 13657           break;
       
 13658 
       
 13659         case 'thumbs-up':
       
 13660           path = 'M12.72 2c.15-.02.26.02.41.07.56.19.83.79.66 1.35-.17.55-1 3.04-1 3.58 0 .53.75 1 1.35 1h3c.6 0 1 .4 1 1s-2 7-2 7c-.17.39-.55 1-1 1H6V8h2.14c.41-.41 3.3-4.71 3.58-5.27.21-.41.6-.68 1-.73zM2 8h2v9H2V8z';
       
 13661           break;
       
 13662 
       
 13663         case 'tickets-alt':
       
 13664           path = 'M20 6.38L18.99 9.2v-.01c-.52-.19-1.03-.16-1.53.08s-.85.62-1.04 1.14-.16 1.03.07 1.53c.24.5.62.84 1.15 1.03v.01l-1.01 2.82-15.06-5.38.99-2.79c.52.19 1.03.16 1.53-.08.5-.23.84-.61 1.03-1.13s.16-1.03-.08-1.53c-.23-.49-.61-.83-1.13-1.02L4.93 1zm-4.97 5.69l1.37-3.76c.12-.31.1-.65-.04-.95s-.39-.53-.7-.65L8.14 3.98c-.64-.23-1.37.12-1.6.74L5.17 8.48c-.24.65.1 1.37.74 1.6l7.52 2.74c.14.05.28.08.43.08.52 0 1-.33 1.17-.83zM7.97 4.45l7.51 2.73c.19.07.34.21.43.39.08.18.09.38.02.57l-1.37 3.76c-.13.38-.58.59-.96.45L6.09 9.61c-.39-.14-.59-.57-.45-.96l1.37-3.76c.1-.29.39-.49.7-.49.09 0 .17.02.26.05zm6.82 12.14c.35.27.75.41 1.2.41H16v3H0v-2.96c.55 0 1.03-.2 1.41-.59.39-.38.59-.86.59-1.41s-.2-1.02-.59-1.41-.86-.59-1.41-.59V10h1.05l-.28.8 2.87 1.02c-.51.16-.89.62-.89 1.18v4c0 .69.56 1.25 1.25 1.25h8c.69 0 1.25-.56 1.25-1.25v-1.75l.83.3c.12.43.36.78.71 1.04zM3.25 17v-4c0-.41.34-.75.75-.75h.83l7.92 2.83V17c0 .41-.34.75-.75.75H4c-.41 0-.75-.34-.75-.75z';
       
 13665           break;
       
 13666 
       
 13667         case 'tickets':
       
 13668           path = 'M20 5.38L18.99 8.2v-.01c-1.04-.37-2.19.18-2.57 1.22-.37 1.04.17 2.19 1.22 2.56v.01l-1.01 2.82L1.57 9.42l.99-2.79c1.04.38 2.19-.17 2.56-1.21s-.17-2.18-1.21-2.55L4.93 0zm-5.45 3.37c.74-2.08-.34-4.37-2.42-5.12-2.08-.74-4.37.35-5.11 2.42-.74 2.08.34 4.38 2.42 5.12 2.07.74 4.37-.35 5.11-2.42zm-2.56-4.74c.89.32 1.57.94 1.97 1.71-.01-.01-.02-.01-.04-.02-.33-.12-.67.09-.78.4-.1.28-.03.57.05.91.04.27.09.62-.06 1.04-.1.29-.33.58-.65 1l-.74 1.01.08-4.08.4.11c.19.04.26-.24.08-.29 0 0-.57-.15-.92-.28-.34-.12-.88-.36-.88-.36-.18-.08-.3.19-.12.27 0 0 .16.08.34.16l.01 1.63L9.2 9.18l.08-4.11c.2.06.4.11.4.11.19.04.26-.23.07-.29 0 0-.56-.15-.91-.28-.07-.02-.14-.05-.22-.08.93-.7 2.19-.94 3.37-.52zM7.4 6.19c.17-.49.44-.92.78-1.27l.04 5c-.94-.95-1.3-2.39-.82-3.73zm4.04 4.75l2.1-2.63c.37-.41.57-.77.69-1.12.05-.12.08-.24.11-.35.09.57.04 1.18-.17 1.77-.45 1.25-1.51 2.1-2.73 2.33zm-.7-3.22l.02 3.22c0 .02 0 .04.01.06-.4 0-.8-.07-1.2-.21-.33-.12-.63-.28-.9-.48zm1.24 6.08l2.1.75c.24.84 1 1.45 1.91 1.45H16v3H0v-2.96c1.1 0 2-.89 2-2 0-1.1-.9-2-2-2V9h1.05l-.28.8 4.28 1.52C4.4 12.03 4 12.97 4 14c0 2.21 1.79 4 4 4s4-1.79 4-4c0-.07-.02-.13-.02-.2zm-6.53-2.33l1.48.53c-.14.04-.15.27.03.28 0 0 .18.02.37.03l.56 1.54-.78 2.36-1.31-3.9c.21-.01.41-.03.41-.03.19-.02.17-.31-.02-.3 0 0-.59.05-.96.05-.07 0-.15 0-.23-.01.13-.2.28-.38.45-.55zM4.4 14c0-.52.12-1.02.32-1.46l1.71 4.7C5.23 16.65 4.4 15.42 4.4 14zm4.19-1.41l1.72.62c.07.17.12.37.12.61 0 .31-.12.66-.28 1.16l-.35 1.2zM11.6 14c0 1.33-.72 2.49-1.79 3.11l1.1-3.18c.06-.17.1-.31.14-.46l.52.19c.02.11.03.22.03.34zm-4.62 3.45l1.08-3.14 1.11 3.03c.01.02.01.04.02.05-.37.13-.77.21-1.19.21-.35 0-.69-.06-1.02-.15z';
       
 13669           break;
       
 13670 
       
 13671         case 'tide':
       
 13672           path = 'M17 7.2V3H3v7.1c2.6-.5 4.5-1.5 6.4-2.6.2-.2.4-.3.6-.5v3c-1.9 1.1-4 2.2-7 2.8V17h14V9.9c-2.6.5-4.4 1.5-6.2 2.6-.3.1-.5.3-.8.4V10c2-1.1 4-2.2 7-2.8z';
       
 13673           break;
       
 13674 
       
 13675         case 'translation':
       
 13676           path = 'M11 7H9.49c-.63 0-1.25.3-1.59.7L7 5H4.13l-2.39 7h1.69l.74-2H7v4H2c-1.1 0-2-.9-2-2V5c0-1.1.9-2 2-2h7c1.1 0 2 .9 2 2v2zM6.51 9H4.49l1-2.93zM10 8h7c1.1 0 2 .9 2 2v7c0 1.1-.9 2-2 2h-7c-1.1 0-2-.9-2-2v-7c0-1.1.9-2 2-2zm7.25 5v-1.08h-3.17V9.75h-1.16v2.17H9.75V13h1.28c.11.85.56 1.85 1.28 2.62-.87.36-1.89.62-2.31.62-.01.02.22.97.2 1.46.84 0 2.21-.5 3.28-1.15 1.09.65 2.48 1.15 3.34 1.15-.02-.49.2-1.44.2-1.46-.43 0-1.49-.27-2.38-.63.7-.77 1.14-1.77 1.25-2.61h1.36zm-3.81 1.93c-.5-.46-.85-1.13-1.01-1.93h2.09c-.17.8-.51 1.47-1 1.93l-.04.03s-.03-.02-.04-.03z';
       
 13677           break;
       
 13678 
       
 13679         case 'trash':
       
 13680           path = 'M12 4h3c.6 0 1 .4 1 1v1H3V5c0-.6.5-1 1-1h3c.2-1.1 1.3-2 2.5-2s2.3.9 2.5 2zM8 4h3c-.2-.6-.9-1-1.5-1S8.2 3.4 8 4zM4 7h11l-.9 10.1c0 .5-.5.9-1 .9H5.9c-.5 0-.9-.4-1-.9L4 7z';
       
 13681           break;
       
 13682 
       
 13683         case 'twitter':
       
 13684           path = 'M18.94 4.46c-.49.73-1.11 1.38-1.83 1.9.01.15.01.31.01.47 0 4.85-3.69 10.44-10.43 10.44-2.07 0-4-.61-5.63-1.65.29.03.58.05.88.05 1.72 0 3.3-.59 4.55-1.57-1.6-.03-2.95-1.09-3.42-2.55.22.04.45.07.69.07.33 0 .66-.05.96-.13-1.67-.34-2.94-1.82-2.94-3.6v-.04c.5.27 1.06.44 1.66.46-.98-.66-1.63-1.78-1.63-3.06 0-.67.18-1.3.5-1.84 1.81 2.22 4.51 3.68 7.56 3.83-.06-.27-.1-.55-.1-.84 0-2.02 1.65-3.66 3.67-3.66 1.06 0 2.01.44 2.68 1.16.83-.17 1.62-.47 2.33-.89-.28.85-.86 1.57-1.62 2.02.75-.08 1.45-.28 2.11-.57z';
       
 13685           break;
       
 13686 
       
 13687         case 'undo':
       
 13688           path = 'M12 5H7V2L1 6l6 4V7h5c2.2 0 4 1.8 4 4s-1.8 4-4 4H7v2h5c3.3 0 6-2.7 6-6s-2.7-6-6-6z';
       
 13689           break;
       
 13690 
       
 13691         case 'universal-access-alt':
       
 13692           path = 'M19 10c0-4.97-4.03-9-9-9s-9 4.03-9 9 4.03 9 9 9 9-4.03 9-9zm-9-7.4c.83 0 1.5.67 1.5 1.5s-.67 1.51-1.5 1.51c-.82 0-1.5-.68-1.5-1.51s.68-1.5 1.5-1.5zM3.4 7.36c0-.65 6.6-.76 6.6-.76s6.6.11 6.6.76-4.47 1.4-4.47 1.4 1.69 8.14 1.06 8.38c-.62.24-3.19-5.19-3.19-5.19s-2.56 5.43-3.18 5.19c-.63-.24 1.06-8.38 1.06-8.38S3.4 8.01 3.4 7.36z';
       
 13693           break;
       
 13694 
       
 13695         case 'universal-access':
       
 13696           path = 'M10 2.6c.83 0 1.5.67 1.5 1.5s-.67 1.51-1.5 1.51c-.82 0-1.5-.68-1.5-1.51s.68-1.5 1.5-1.5zM3.4 7.36c0-.65 6.6-.76 6.6-.76s6.6.11 6.6.76-4.47 1.4-4.47 1.4 1.69 8.14 1.06 8.38c-.62.24-3.19-5.19-3.19-5.19s-2.56 5.43-3.18 5.19c-.63-.24 1.06-8.38 1.06-8.38S3.4 8.01 3.4 7.36z';
       
 13697           break;
       
 13698 
       
 13699         case 'unlock':
       
 13700           path = 'M12 9V6c0-1.1-.9-2-2-2s-2 .9-2 2H6c0-2.21 1.79-4 4-4s4 1.79 4 4v3h1c.55 0 1 .45 1 1v7c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1v-7c0-.55.45-1 1-1h7zm-1 7l-.36-2.15c.51-.24.86-.75.86-1.35 0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5c0 .6.35 1.11.86 1.35L9 16h2z';
       
 13701           break;
       
 13702 
       
 13703         case 'update':
       
 13704           path = 'M10.2 3.28c3.53 0 6.43 2.61 6.92 6h2.08l-3.5 4-3.5-4h2.32c-.45-1.97-2.21-3.45-4.32-3.45-1.45 0-2.73.71-3.54 1.78L4.95 5.66C6.23 4.2 8.11 3.28 10.2 3.28zm-.4 13.44c-3.52 0-6.43-2.61-6.92-6H.8l3.5-4c1.17 1.33 2.33 2.67 3.5 4H5.48c.45 1.97 2.21 3.45 4.32 3.45 1.45 0 2.73-.71 3.54-1.78l1.71 1.95c-1.28 1.46-3.15 2.38-5.25 2.38z';
       
 13705           break;
       
 13706 
       
 13707         case 'upload':
       
 13708           path = 'M8 14V8H5l5-6 5 6h-3v6H8zm-2 2v-6H4v8h12.01v-8H14v6H6z';
       
 13709           break;
       
 13710 
       
 13711         case 'vault':
       
 13712           path = 'M18 17V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v14c0 .55.45 1 1 1h14c.55 0 1-.45 1-1zm-1 0H3V3h14v14zM4.75 4h10.5c.41 0 .75.34.75.75V6h-1v3h1v2h-1v3h1v1.25c0 .41-.34.75-.75.75H4.75c-.41 0-.75-.34-.75-.75V4.75c0-.41.34-.75.75-.75zM13 10c0-2.21-1.79-4-4-4s-4 1.79-4 4 1.79 4 4 4 4-1.79 4-4zM9 7l.77 1.15C10.49 8.46 11 9.17 11 10c0 1.1-.9 2-2 2s-2-.9-2-2c0-.83.51-1.54 1.23-1.85z';
       
 13713           break;
       
 13714 
       
 13715         case 'video-alt':
       
 13716           path = 'M8 5c0-.55-.45-1-1-1H2c-.55 0-1 .45-1 1 0 .57.49 1 1 1h5c.55 0 1-.45 1-1zm6 5l4-4v10l-4-4v-2zm-1 4V8c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h8c.55 0 1-.45 1-1z';
       
 13717           break;
       
 13718 
       
 13719         case 'video-alt2':
       
 13720           path = 'M12 13V7c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v6c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2zm1-2.5l6 4.5V5l-6 4.5v1z';
       
 13721           break;
       
 13722 
       
 13723         case 'video-alt3':
       
 13724           path = 'M19 15V5c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h13c1.1 0 2-.9 2-2zM8 14V6l6 4z';
       
 13725           break;
       
 13726 
       
 13727         case 'visibility':
       
 13728           path = 'M19.7 9.4C17.7 6 14 3.9 10 3.9S2.3 6 .3 9.4L0 10l.3.6c2 3.4 5.7 5.5 9.7 5.5s7.7-2.1 9.7-5.5l.3-.6-.3-.6zM10 14.1c-3.1 0-6-1.6-7.7-4.1C3.6 8 5.7 6.6 8 6.1c-.9.6-1.5 1.7-1.5 2.9 0 1.9 1.6 3.5 3.5 3.5s3.5-1.6 3.5-3.5c0-1.2-.6-2.3-1.5-2.9 2.3.5 4.4 1.9 5.7 3.9-1.7 2.5-4.6 4.1-7.7 4.1z';
       
 13729           break;
       
 13730 
       
 13731         case 'warning':
       
 13732           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm1.13 9.38l.35-6.46H8.52l.35 6.46h2.26zm-.09 3.36c.24-.23.37-.55.37-.96 0-.42-.12-.74-.36-.97s-.59-.35-1.06-.35-.82.12-1.07.35-.37.55-.37.97c0 .41.13.73.38.96.26.23.61.34 1.06.34s.8-.11 1.05-.34z';
       
 13733           break;
       
 13734 
       
 13735         case 'welcome-add-page':
       
 13736           path = 'M17 7V4h-2V2h-3v1H3v15h11V9h1V7h2zm-1-2v1h-2v2h-1V6h-2V5h2V3h1v2h2z';
       
 13737           break;
       
 13738 
       
 13739         case 'welcome-comments':
       
 13740           path = 'M5 2h10c1.1 0 2 .9 2 2v8c0 1.1-.9 2-2 2h-2l-5 5v-5H5c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2zm8.5 8.5L11 8l2.5-2.5-1-1L10 7 7.5 4.5l-1 1L9 8l-2.5 2.5 1 1L10 9l2.5 2.5z';
       
 13741           break;
       
 13742 
       
 13743         case 'welcome-learn-more':
       
 13744           path = 'M10 10L2.54 7.02 3 18H1l.48-11.41L0 6l10-4 10 4zm0-5c-.55 0-1 .22-1 .5s.45.5 1 .5 1-.22 1-.5-.45-.5-1-.5zm0 6l5.57-2.23c.71.94 1.2 2.07 1.36 3.3-.3-.04-.61-.07-.93-.07-2.55 0-4.78 1.37-6 3.41C8.78 13.37 6.55 12 4 12c-.32 0-.63.03-.93.07.16-1.23.65-2.36 1.36-3.3z';
       
 13745           break;
       
 13746 
       
 13747         case 'welcome-view-site':
       
 13748           path = 'M18 14V4c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h14c.55 0 1-.45 1-1zm-8-8c2.3 0 4.4 1.14 6 3-1.6 1.86-3.7 3-6 3s-4.4-1.14-6-3c1.6-1.86 3.7-3 6-3zm2 3c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2zm2 8h3v1H3v-1h3v-1h8v1z';
       
 13749           break;
       
 13750 
       
 13751         case 'welcome-widgets-menus':
       
 13752           path = 'M19 16V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v13c0 .55.45 1 1 1h15c.55 0 1-.45 1-1zM4 4h13v4H4V4zm1 1v2h3V5H5zm4 0v2h3V5H9zm4 0v2h3V5h-3zm-8.5 5c.28 0 .5.22.5.5s-.22.5-.5.5-.5-.22-.5-.5.22-.5.5-.5zM6 10h4v1H6v-1zm6 0h5v5h-5v-5zm-7.5 2c.28 0 .5.22.5.5s-.22.5-.5.5-.5-.22-.5-.5.22-.5.5-.5zM6 12h4v1H6v-1zm7 0v2h3v-2h-3zm-8.5 2c.28 0 .5.22.5.5s-.22.5-.5.5-.5-.22-.5-.5.22-.5.5-.5zM6 14h4v1H6v-1z';
       
 13753           break;
       
 13754 
       
 13755         case 'welcome-write-blog':
       
 13756           path = 'M16.89 1.2l1.41 1.41c.39.39.39 1.02 0 1.41L14 8.33V18H3V3h10.67l1.8-1.8c.4-.39 1.03-.4 1.42 0zm-5.66 8.48l5.37-5.36-1.42-1.42-5.36 5.37-.71 2.12z';
       
 13757           break;
       
 13758 
       
 13759         case 'wordpress-alt':
       
 13760           path = 'M20 10c0-5.51-4.49-10-10-10C4.48 0 0 4.49 0 10c0 5.52 4.48 10 10 10 5.51 0 10-4.48 10-10zM7.78 15.37L4.37 6.22c.55-.02 1.17-.08 1.17-.08.5-.06.44-1.13-.06-1.11 0 0-1.45.11-2.37.11-.18 0-.37 0-.58-.01C4.12 2.69 6.87 1.11 10 1.11c2.33 0 4.45.87 6.05 2.34-.68-.11-1.65.39-1.65 1.58 0 .74.45 1.36.9 2.1.35.61.55 1.36.55 2.46 0 1.49-1.4 5-1.4 5l-3.03-8.37c.54-.02.82-.17.82-.17.5-.05.44-1.25-.06-1.22 0 0-1.44.12-2.38.12-.87 0-2.33-.12-2.33-.12-.5-.03-.56 1.2-.06 1.22l.92.08 1.26 3.41zM17.41 10c.24-.64.74-1.87.43-4.25.7 1.29 1.05 2.71 1.05 4.25 0 3.29-1.73 6.24-4.4 7.78.97-2.59 1.94-5.2 2.92-7.78zM6.1 18.09C3.12 16.65 1.11 13.53 1.11 10c0-1.3.23-2.48.72-3.59C3.25 10.3 4.67 14.2 6.1 18.09zm4.03-6.63l2.58 6.98c-.86.29-1.76.45-2.71.45-.79 0-1.57-.11-2.29-.33.81-2.38 1.62-4.74 2.42-7.1z';
       
 13761           break;
       
 13762 
       
 13763         case 'wordpress':
       
 13764           path = 'M20 10c0-5.52-4.48-10-10-10S0 4.48 0 10s4.48 10 10 10 10-4.48 10-10zM10 1.01c4.97 0 8.99 4.02 8.99 8.99s-4.02 8.99-8.99 8.99S1.01 14.97 1.01 10 5.03 1.01 10 1.01zM8.01 14.82L4.96 6.61c.49-.03 1.05-.08 1.05-.08.43-.05.38-1.01-.06-.99 0 0-1.29.1-2.13.1-.15 0-.33 0-.52-.01 1.44-2.17 3.9-3.6 6.7-3.6 2.09 0 3.99.79 5.41 2.09-.6-.08-1.45.35-1.45 1.42 0 .66.38 1.22.79 1.88.31.54.5 1.22.5 2.21 0 1.34-1.27 4.48-1.27 4.48l-2.71-7.5c.48-.03.75-.16.75-.16.43-.05.38-1.1-.05-1.08 0 0-1.3.11-2.14.11-.78 0-2.11-.11-2.11-.11-.43-.02-.48 1.06-.05 1.08l.84.08 1.12 3.04zm6.02 2.15L16.64 10s.67-1.69.39-3.81c.63 1.14.94 2.42.94 3.81 0 2.96-1.56 5.58-3.94 6.97zM2.68 6.77L6.5 17.25c-2.67-1.3-4.47-4.08-4.47-7.25 0-1.16.2-2.23.65-3.23zm7.45 4.53l2.29 6.25c-.75.27-1.57.42-2.42.42-.72 0-1.41-.11-2.06-.3z';
       
 13765           break;
       
 13766 
       
 13767         case 'yes-alt':
       
 13768           path = 'M10 2c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm-.615 12.66h-1.34l-3.24-4.54 1.34-1.25 2.57 2.4 5.14-5.93 1.34.94-5.81 8.38z';
       
 13769           break;
       
 13770 
       
 13771         case 'yes':
       
 13772           path = 'M14.83 4.89l1.34.94-5.81 8.38H9.02L5.78 9.67l1.34-1.25 2.57 2.4z';
       
 13773           break;
       
 13774       }
       
 13775 
       
 13776       if (!path) {
       
 13777         return null;
       
 13778       }
       
 13779 
       
 13780       var iconClass = ['dashicon', 'dashicons-' + icon, className].filter(Boolean).join(' ');
       
 13781       return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_8__["SVG"], Object(_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({
       
 13782         "aria-hidden": true,
       
 13783         role: "img",
       
 13784         focusable: "false",
       
 13785         className: iconClass,
       
 13786         xmlns: "http://www.w3.org/2000/svg",
       
 13787         width: size,
       
 13788         height: size,
       
 13789         viewBox: "0 0 20 20"
       
 13790       }, extraProps), Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_8__["Path"], {
       
 13791         d: path
       
 13792       }));
       
 13793     }
       
 13794   }]);
       
 13795 
       
 13796   return Dashicon;
       
 13797 }(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["Component"]);
       
 13798 
       
 13799 
       
 13800 
       
 13801 
       
 13802 /***/ }),
       
 13803 /* 149 */
       
 13804 /***/ (function(module, exports, __webpack_require__) {
       
 13805 
       
 13806 var e=__webpack_require__(13),n={display:"block",opacity:0,position:"absolute",top:0,left:0,height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none",zIndex:-1},t=function(t){var r=t.onResize,u=e.useRef();return function(n,t){var r=function(){return n.current&&n.current.contentDocument&&n.current.contentDocument.defaultView};function u(){t();var e=r();e&&e.addEventListener("resize",t)}e.useEffect((function(){return r()?u():n.current&&n.current.addEventListener&&n.current.addEventListener("load",u),function(){var e=r();e&&"function"==typeof e.removeEventListener&&e.removeEventListener("resize",t)}}),[])}(u,(function(){return r(u)})),e.createElement("iframe",{style:n,src:"about:blank",ref:u,"aria-hidden":!0,tabIndex:-1,frameBorder:0})},r=function(e){return{width:null!=e?e.offsetWidth:null,height:null!=e?e.offsetHeight:null}};module.exports=function(n){void 0===n&&(n=r);var u=e.useState(n(null)),o=u[0],i=u[1],c=e.useCallback((function(e){return i(n(e.current))}),[n]);return[e.useMemo((function(){return e.createElement(t,{onResize:c})}),[c]),o]};
       
 13807 
       
 13808 
       
 13809 /***/ }),
       
 13810 /* 150 */,
       
 13811 /* 151 */,
       
 13812 /* 152 */,
       
 13813 /* 153 */,
       
 13814 /* 154 */
       
 13815 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 13816 
       
 13817 "use strict";
       
 13818 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 13819 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 13820 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 13821 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 13822 
       
 13823 
       
 13824 /**
       
 13825  * WordPress dependencies
       
 13826  */
       
 13827 
       
 13828 var close = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 13829   xmlns: "http://www.w3.org/2000/svg",
       
 13830   viewBox: "0 0 24 24"
       
 13831 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 13832   d: "M13 11.8l6.1-6.3-1-1-6.1 6.2-6.1-6.2-1 1 6.1 6.3-6.5 6.7 1 1 6.5-6.6 6.5 6.6 1-1z"
       
 13833 }));
       
 13834 /* harmony default export */ __webpack_exports__["a"] = (close);
       
 13835 
       
 13836 
       
 13837 /***/ }),
       
 13838 /* 155 */
       
 13839 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 13840 
       
 13841 "use strict";
       
 13842 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 13843 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 13844 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 13845 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 13846 
       
 13847 
       
 13848 /**
       
 13849  * WordPress dependencies
       
 13850  */
       
 13851 
       
 13852 var check = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 13853   xmlns: "http://www.w3.org/2000/svg",
       
 13854   viewBox: "0 0 24 24"
       
 13855 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 13856   d: "M9 18.6L3.5 13l1-1L9 16.4l9.5-9.9 1 1z"
       
 13857 }));
       
 13858 /* harmony default export */ __webpack_exports__["a"] = (check);
       
 13859 
       
 13860 
       
 13861 /***/ }),
       
 13862 /* 156 */
  2961 /***/ (function(module, exports, __webpack_require__) {
 13863 /***/ (function(module, exports, __webpack_require__) {
  2962 
 13864 
  2963 "use strict";
 13865 "use strict";
  2964 
 13866 
  2965 
 13867 
  2966 Object.defineProperty(exports, "__esModule", {
 13868 Object.defineProperty(exports, "__esModule", {
  2967   value: true
 13869   value: true
  2968 });
 13870 });
  2969 
 13871 
  2970 var _propTypes = __webpack_require__(31);
 13872 var _propTypes = __webpack_require__(28);
  2971 
 13873 
  2972 var _propTypes2 = _interopRequireDefault(_propTypes);
 13874 var _propTypes2 = _interopRequireDefault(_propTypes);
  2973 
 13875 
  2974 var _constants = __webpack_require__(39);
 13876 var _constants = __webpack_require__(77);
  2975 
 13877 
  2976 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 13878 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  2977 
 13879 
  2978 exports['default'] = _propTypes2['default'].oneOf([_constants.INFO_POSITION_TOP, _constants.INFO_POSITION_BOTTOM, _constants.INFO_POSITION_BEFORE, _constants.INFO_POSITION_AFTER]);
 13880 exports['default'] = _propTypes2['default'].oneOf(_constants.WEEKDAYS);
  2979 
 13881 
  2980 /***/ }),
 13882 /***/ }),
  2981 /* 94 */
 13883 /* 157 */
  2982 /***/ (function(module, exports, __webpack_require__) {
 13884 /***/ (function(module, exports, __webpack_require__) {
  2983 
 13885 
  2984 "use strict";
 13886 "use strict";
  2985 
 13887 
  2986 
 13888 
  2987 Object.defineProperty(exports, "__esModule", {
 13889 Object.defineProperty(exports, "__esModule", {
  2988   value: true
 13890   value: true
  2989 });
 13891 });
  2990 exports['default'] = isInclusivelyAfterDay;
 13892 
  2991 
 13893 var _propTypes = __webpack_require__(28);
  2992 var _moment = __webpack_require__(29);
       
  2993 
       
  2994 var _moment2 = _interopRequireDefault(_moment);
       
  2995 
       
  2996 var _isBeforeDay = __webpack_require__(95);
       
  2997 
       
  2998 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
       
  2999 
       
  3000 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  3001 
       
  3002 function isInclusivelyAfterDay(a, b) {
       
  3003   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
  3004   return !(0, _isBeforeDay2['default'])(a, b);
       
  3005 }
       
  3006 
       
  3007 /***/ }),
       
  3008 /* 95 */
       
  3009 /***/ (function(module, exports, __webpack_require__) {
       
  3010 
       
  3011 "use strict";
       
  3012 
       
  3013 
       
  3014 Object.defineProperty(exports, "__esModule", {
       
  3015   value: true
       
  3016 });
       
  3017 exports['default'] = isBeforeDay;
       
  3018 
       
  3019 var _moment = __webpack_require__(29);
       
  3020 
       
  3021 var _moment2 = _interopRequireDefault(_moment);
       
  3022 
       
  3023 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  3024 
       
  3025 function isBeforeDay(a, b) {
       
  3026   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
  3027 
       
  3028   var aYear = a.year();
       
  3029   var aMonth = a.month();
       
  3030 
       
  3031   var bYear = b.year();
       
  3032   var bMonth = b.month();
       
  3033 
       
  3034   var isSameYear = aYear === bYear;
       
  3035   var isSameMonth = aMonth === bMonth;
       
  3036 
       
  3037   if (isSameYear && isSameMonth) return a.date() < b.date();
       
  3038   if (isSameYear) return aMonth < bMonth;
       
  3039   return aYear < bYear;
       
  3040 }
       
  3041 
       
  3042 /***/ }),
       
  3043 /* 96 */
       
  3044 /***/ (function(module, exports, __webpack_require__) {
       
  3045 
       
  3046 "use strict";
       
  3047 
       
  3048 
       
  3049 Object.defineProperty(exports, "__esModule", {
       
  3050   value: true
       
  3051 });
       
  3052 
       
  3053 var _react = __webpack_require__(27);
       
  3054 
       
  3055 var _react2 = _interopRequireDefault(_react);
       
  3056 
       
  3057 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  3058 
       
  3059 var CloseButton = function () {
       
  3060   function CloseButton(props) {
       
  3061     return _react2['default'].createElement(
       
  3062       'svg',
       
  3063       props,
       
  3064       _react2['default'].createElement('path', {
       
  3065         fillRule: 'evenodd',
       
  3066         d: 'M11.53.47a.75.75 0 0 0-1.061 0l-4.47 4.47L1.529.47A.75.75 0 1 0 .468 1.531l4.47 4.47-4.47 4.47a.75.75 0 1 0 1.061 1.061l4.47-4.47 4.47 4.47a.75.75 0 1 0 1.061-1.061l-4.47-4.47 4.47-4.47a.75.75 0 0 0 0-1.061z'
       
  3067       })
       
  3068     );
       
  3069   }
       
  3070 
       
  3071   return CloseButton;
       
  3072 }();
       
  3073 
       
  3074 CloseButton.defaultProps = {
       
  3075   viewBox: '0 0 12 12'
       
  3076 };
       
  3077 exports['default'] = CloseButton;
       
  3078 
       
  3079 /***/ }),
       
  3080 /* 97 */,
       
  3081 /* 98 */,
       
  3082 /* 99 */,
       
  3083 /* 100 */,
       
  3084 /* 101 */
       
  3085 /***/ (function(module, exports, __webpack_require__) {
       
  3086 
       
  3087 "use strict";
       
  3088 
       
  3089 
       
  3090 Object.defineProperty(exports, "__esModule", {
       
  3091   value: true
       
  3092 });
       
  3093 
       
  3094 var _propTypes = __webpack_require__(31);
       
  3095 
 13894 
  3096 var _propTypes2 = _interopRequireDefault(_propTypes);
 13895 var _propTypes2 = _interopRequireDefault(_propTypes);
  3097 
 13896 
  3098 var _airbnbPropTypes = __webpack_require__(43);
 13897 var _airbnbPropTypes = __webpack_require__(85);
  3099 
 13898 
  3100 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 13899 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  3101 
 13900 
  3102 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
 13901 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
  3103 
 13902 
  3124 
 13923 
  3125   return modifiers;
 13924   return modifiers;
  3126 }()], 'Modifiers (Set of Strings)');
 13925 }()], 'Modifiers (Set of Strings)');
  3127 
 13926 
  3128 /***/ }),
 13927 /***/ }),
  3129 /* 102 */
 13928 /* 158 */,
  3130 /***/ (function(module, exports, __webpack_require__) {
 13929 /* 159 */
       
 13930 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  3131 
 13931 
  3132 "use strict";
 13932 "use strict";
  3133 
 13933 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useSlot; });
  3134 
 13934 /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
  3135 Object.defineProperty(exports, "__esModule", {
 13935 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(0);
  3136   value: true
 13936 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__);
  3137 });
 13937 /* harmony import */ var _slot_fill_context__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(133);
  3138 exports['default'] = toISODateString;
 13938 
  3139 
 13939 
  3140 var _moment = __webpack_require__(29);
 13940 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
  3141 
 13941 
  3142 var _moment2 = _interopRequireDefault(_moment);
 13942 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
  3143 
 13943 
  3144 var _toMomentObject = __webpack_require__(80);
 13944 /**
  3145 
 13945  * WordPress dependencies
  3146 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
 13946  */
  3147 
 13947 
  3148 var _constants = __webpack_require__(39);
 13948 /**
  3149 
 13949  * Internal dependencies
  3150 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 13950  */
  3151 
 13951 
  3152 function toISODateString(date, currentFormat) {
 13952 
  3153   var dateObj = _moment2['default'].isMoment(date) ? date : (0, _toMomentObject2['default'])(date, currentFormat);
 13953 function useSlot(name) {
  3154   if (!dateObj) return null;
 13954   var registry = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useContext"])(_slot_fill_context__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"]);
  3155 
 13955   var slot = registry.slots[name] || {};
  3156   return dateObj.format(_constants.ISO_FORMAT);
 13956   var slotFills = registry.fills[name];
  3157 }
 13957   var fills = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useMemo"])(function () {
       
 13958     return slotFills || [];
       
 13959   }, [slotFills]);
       
 13960   var updateSlot = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useCallback"])(function (fillProps) {
       
 13961     registry.updateSlot(name, fillProps);
       
 13962   }, [name, registry.updateSlot]);
       
 13963   var unregisterSlot = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useCallback"])(function (slotRef) {
       
 13964     registry.unregisterSlot(name, slotRef);
       
 13965   }, [name, registry.unregisterSlot]);
       
 13966   var registerFill = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useCallback"])(function (fillRef) {
       
 13967     registry.registerFill(name, fillRef);
       
 13968   }, [name, registry.registerFill]);
       
 13969   var unregisterFill = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_1__["useCallback"])(function (fillRef) {
       
 13970     registry.unregisterFill(name, fillRef);
       
 13971   }, [name, registry.unregisterFill]);
       
 13972   return _objectSpread({}, slot, {
       
 13973     updateSlot: updateSlot,
       
 13974     unregisterSlot: unregisterSlot,
       
 13975     fills: fills,
       
 13976     registerFill: registerFill,
       
 13977     unregisterFill: unregisterFill
       
 13978   });
       
 13979 }
       
 13980 
  3158 
 13981 
  3159 /***/ }),
 13982 /***/ }),
  3160 /* 103 */
 13983 /* 160 */
  3161 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 13984 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  3162 
 13985 
  3163 "use strict";
 13986 "use strict";
  3164 __webpack_require__.r(__webpack_exports__);
 13987 /* harmony import */ var _babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);
  3165 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addEventListener", function() { return addEventListener; });
 13988 /* harmony import */ var _babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(14);
  3166 var CAN_USE_DOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
 13989 /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(11);
  3167 
 13990 /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
  3168 // Adapted from Modernizr
 13991 
  3169 // https://github.com/Modernizr/Modernizr/blob/acb3f0d9/feature-detects/dom/passiveeventlisteners.js#L26-L37
 13992 
  3170 function testPassiveEventListeners() {
 13993 
  3171   if (!CAN_USE_DOM) {
 13994 /**
  3172     return false;
 13995  * External dependencies
  3173   }
 13996  */
  3174 
 13997 
  3175   if (!window.addEventListener || !window.removeEventListener || !Object.defineProperty) {
 13998 
  3176     return false;
 13999 function Animate(_ref) {
  3177   }
 14000   var type = _ref.type,
  3178 
 14001       _ref$options = _ref.options,
  3179   var supportsPassiveOption = false;
 14002       options = _ref$options === void 0 ? {} : _ref$options,
  3180   try {
 14003       children = _ref.children;
  3181     var opts = Object.defineProperty({}, 'passive', {
 14004 
  3182       // eslint-disable-next-line getter-return
 14005   if (type === 'appear') {
  3183       get: function () {
 14006     var _classnames;
  3184         function get() {
 14007 
  3185           supportsPassiveOption = true;
 14008     var _options$origin = options.origin,
       
 14009         origin = _options$origin === void 0 ? 'top' : _options$origin;
       
 14010 
       
 14011     var _origin$split = origin.split(' '),
       
 14012         _origin$split2 = Object(_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(_origin$split, 2),
       
 14013         yAxis = _origin$split2[0],
       
 14014         _origin$split2$ = _origin$split2[1],
       
 14015         xAxis = _origin$split2$ === void 0 ? 'center' : _origin$split2$;
       
 14016 
       
 14017     return children({
       
 14018       className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('components-animate__appear', (_classnames = {}, Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(_classnames, 'is-from-' + xAxis, xAxis !== 'center'), Object(_babel_runtime_helpers_esm_defineProperty__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(_classnames, 'is-from-' + yAxis, yAxis !== 'middle'), _classnames))
       
 14019     });
       
 14020   }
       
 14021 
       
 14022   if (type === 'slide-in') {
       
 14023     var _options$origin2 = options.origin,
       
 14024         _origin = _options$origin2 === void 0 ? 'left' : _options$origin2;
       
 14025 
       
 14026     return children({
       
 14027       className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('components-animate__slide-in', 'is-from-' + _origin)
       
 14028     });
       
 14029   }
       
 14030 
       
 14031   if (type === 'loading') {
       
 14032     return children({
       
 14033       className: classnames__WEBPACK_IMPORTED_MODULE_2___default()('components-animate__loading')
       
 14034     });
       
 14035   }
       
 14036 
       
 14037   return children({});
       
 14038 }
       
 14039 
       
 14040 /* harmony default export */ __webpack_exports__["a"] = (Animate);
       
 14041 
       
 14042 
       
 14043 /***/ }),
       
 14044 /* 161 */
       
 14045 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 14046 
       
 14047 "use strict";
       
 14048 /* unused harmony export createScrollLockComponent */
       
 14049 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20);
       
 14050 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(19);
       
 14051 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(23);
       
 14052 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16);
       
 14053 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(22);
       
 14054 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(0);
       
 14055 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__);
       
 14056 
       
 14057 
       
 14058 
       
 14059 
       
 14060 
       
 14061 
       
 14062 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(this, result); }; }
       
 14063 
       
 14064 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 14065 
       
 14066 /**
       
 14067  * WordPress dependencies
       
 14068  */
       
 14069 
       
 14070 /**
       
 14071  * Creates a ScrollLock component bound to the specified document.
       
 14072  *
       
 14073  * This function creates a ScrollLock component for the specified document
       
 14074  * and is exposed so we can create an isolated component for unit testing.
       
 14075  *
       
 14076  * @param {Object} args Keyword args.
       
 14077  * @param {HTMLDocument} args.htmlDocument The document to lock the scroll for.
       
 14078  * @param {string} args.className The name of the class used to lock scrolling.
       
 14079  * @return {WPComponent} The bound ScrollLock component.
       
 14080  */
       
 14081 
       
 14082 function createScrollLockComponent() {
       
 14083   var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
       
 14084       _ref$htmlDocument = _ref.htmlDocument,
       
 14085       htmlDocument = _ref$htmlDocument === void 0 ? document : _ref$htmlDocument,
       
 14086       _ref$className = _ref.className,
       
 14087       className = _ref$className === void 0 ? 'lockscroll' : _ref$className;
       
 14088 
       
 14089   var lockCounter = 0;
       
 14090   /*
       
 14091    * Setting `overflow: hidden` on html and body elements resets body scroll in iOS.
       
 14092    * Save scroll top so we can restore it after locking scroll.
       
 14093    *
       
 14094    * NOTE: It would be cleaner and possibly safer to find a localized solution such
       
 14095    * as preventing default on certain touchmove events.
       
 14096    */
       
 14097 
       
 14098   var previousScrollTop = 0;
       
 14099   /**
       
 14100    * Locks and unlocks scroll depending on the boolean argument.
       
 14101    *
       
 14102    * @param {boolean} locked Whether or not scroll should be locked.
       
 14103    */
       
 14104 
       
 14105   function setLocked(locked) {
       
 14106     var scrollingElement = htmlDocument.scrollingElement || htmlDocument.body;
       
 14107 
       
 14108     if (locked) {
       
 14109       previousScrollTop = scrollingElement.scrollTop;
       
 14110     }
       
 14111 
       
 14112     var methodName = locked ? 'add' : 'remove';
       
 14113     scrollingElement.classList[methodName](className); // Adding the class to the document element seems to be necessary in iOS.
       
 14114 
       
 14115     htmlDocument.documentElement.classList[methodName](className);
       
 14116 
       
 14117     if (!locked) {
       
 14118       scrollingElement.scrollTop = previousScrollTop;
       
 14119     }
       
 14120   }
       
 14121   /**
       
 14122    * Requests scroll lock.
       
 14123    *
       
 14124    * This function tracks requests for scroll lock. It locks scroll on the first
       
 14125    * request and counts each request so `releaseLock` can unlock scroll when
       
 14126    * all requests have been released.
       
 14127    */
       
 14128 
       
 14129 
       
 14130   function requestLock() {
       
 14131     if (lockCounter === 0) {
       
 14132       setLocked(true);
       
 14133     }
       
 14134 
       
 14135     ++lockCounter;
       
 14136   }
       
 14137   /**
       
 14138    * Releases a request for scroll lock.
       
 14139    *
       
 14140    * This function tracks released requests for scroll lock. When all requests
       
 14141    * have been released, it unlocks scroll.
       
 14142    */
       
 14143 
       
 14144 
       
 14145   function releaseLock() {
       
 14146     if (lockCounter === 1) {
       
 14147       setLocked(false);
       
 14148     }
       
 14149 
       
 14150     --lockCounter;
       
 14151   }
       
 14152 
       
 14153   return /*#__PURE__*/function (_Component) {
       
 14154     Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(ScrollLock, _Component);
       
 14155 
       
 14156     var _super = _createSuper(ScrollLock);
       
 14157 
       
 14158     function ScrollLock() {
       
 14159       Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(this, ScrollLock);
       
 14160 
       
 14161       return _super.apply(this, arguments);
       
 14162     }
       
 14163 
       
 14164     Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(ScrollLock, [{
       
 14165       key: "componentDidMount",
       
 14166 
       
 14167       /**
       
 14168        * Requests scroll lock on mount.
       
 14169        */
       
 14170       value: function componentDidMount() {
       
 14171         requestLock();
       
 14172       }
       
 14173       /**
       
 14174        * Releases scroll lock before unmount.
       
 14175        */
       
 14176 
       
 14177     }, {
       
 14178       key: "componentWillUnmount",
       
 14179       value: function componentWillUnmount() {
       
 14180         releaseLock();
       
 14181       }
       
 14182       /**
       
 14183        * Render nothing as this component is merely a way to declare scroll lock.
       
 14184        *
       
 14185        * @return {null} Render nothing by returning `null`.
       
 14186        */
       
 14187 
       
 14188     }, {
       
 14189       key: "render",
       
 14190       value: function render() {
       
 14191         return null;
       
 14192       }
       
 14193     }]);
       
 14194 
       
 14195     return ScrollLock;
       
 14196   }(_wordpress_element__WEBPACK_IMPORTED_MODULE_5__["Component"]);
       
 14197 }
       
 14198 /* harmony default export */ __webpack_exports__["a"] = (createScrollLockComponent());
       
 14199 
       
 14200 
       
 14201 /***/ }),
       
 14202 /* 162 */
       
 14203 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 14204 
       
 14205 "use strict";
       
 14206 /* WEBPACK VAR INJECTION */(function(process) {/* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 14207 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 14208 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
       
 14209 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
       
 14210 /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(11);
       
 14211 /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
       
 14212 /* harmony import */ var _wordpress_a11y__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(54);
       
 14213 /* harmony import */ var _wordpress_a11y__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_wordpress_a11y__WEBPACK_IMPORTED_MODULE_3__);
       
 14214 /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(1);
       
 14215 /* harmony import */ var _wordpress_i18n__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_4__);
       
 14216 /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(104);
       
 14217 /* harmony import */ var _wordpress_warning__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_wordpress_warning__WEBPACK_IMPORTED_MODULE_5__);
       
 14218 /* harmony import */ var ___WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(34);
       
 14219 
       
 14220 
       
 14221 /**
       
 14222  * External dependencies
       
 14223  */
       
 14224 
       
 14225 
       
 14226 /**
       
 14227  * WordPress dependencies
       
 14228  */
       
 14229 
       
 14230 
       
 14231 
       
 14232 
       
 14233 
       
 14234 /**
       
 14235  * Internal dependencies
       
 14236  */
       
 14237 
       
 14238 
       
 14239 var NOTICE_TIMEOUT = 10000;
       
 14240 /** @typedef {import('@wordpress/element').WPElement} WPElement */
       
 14241 
       
 14242 /**
       
 14243  * Custom hook which announces the message with the given politeness, if a
       
 14244  * valid message is provided.
       
 14245  *
       
 14246  * @param {string|WPElement}     [message]  Message to announce.
       
 14247  * @param {'polite'|'assertive'} politeness Politeness to announce.
       
 14248  */
       
 14249 
       
 14250 function useSpokenMessage(message, politeness) {
       
 14251   var spokenMessage = typeof message === 'string' ? message : Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["renderToString"])(message);
       
 14252   Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
       
 14253     if (spokenMessage) {
       
 14254       Object(_wordpress_a11y__WEBPACK_IMPORTED_MODULE_3__["speak"])(spokenMessage, politeness);
       
 14255     }
       
 14256   }, [spokenMessage, politeness]);
       
 14257 }
       
 14258 
       
 14259 function Snackbar(_ref, ref) {
       
 14260   var className = _ref.className,
       
 14261       children = _ref.children,
       
 14262       _ref$spokenMessage = _ref.spokenMessage,
       
 14263       spokenMessage = _ref$spokenMessage === void 0 ? children : _ref$spokenMessage,
       
 14264       _ref$politeness = _ref.politeness,
       
 14265       politeness = _ref$politeness === void 0 ? 'polite' : _ref$politeness,
       
 14266       _ref$actions = _ref.actions,
       
 14267       actions = _ref$actions === void 0 ? [] : _ref$actions,
       
 14268       _ref$onRemove = _ref.onRemove,
       
 14269       onRemove = _ref$onRemove === void 0 ? lodash__WEBPACK_IMPORTED_MODULE_1__["noop"] : _ref$onRemove;
       
 14270   useSpokenMessage(spokenMessage, politeness);
       
 14271   Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(function () {
       
 14272     var timeoutHandle = setTimeout(function () {
       
 14273       onRemove();
       
 14274     }, NOTICE_TIMEOUT);
       
 14275     return function () {
       
 14276       return clearTimeout(timeoutHandle);
       
 14277     };
       
 14278   }, []);
       
 14279   var classes = classnames__WEBPACK_IMPORTED_MODULE_2___default()(className, 'components-snackbar');
       
 14280 
       
 14281   if (actions && actions.length > 1) {
       
 14282     // we need to inform developers that snackbar only accepts 1 action
       
 14283     typeof process !== "undefined" && process.env && "production" !== "production" ? _wordpress_warning__WEBPACK_IMPORTED_MODULE_5___default()('Snackbar can only have 1 action, use Notice if your message require many messages') : void 0; // return first element only while keeping it inside an array
       
 14284 
       
 14285     actions = [actions[0]];
       
 14286   }
       
 14287 
       
 14288   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
       
 14289     ref: ref,
       
 14290     className: classes,
       
 14291     onClick: onRemove,
       
 14292     tabIndex: "0",
       
 14293     role: "button",
       
 14294     onKeyPress: onRemove,
       
 14295     "aria-label": Object(_wordpress_i18n__WEBPACK_IMPORTED_MODULE_4__["__"])('Dismiss this notice')
       
 14296   }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("div", {
       
 14297     className: "components-snackbar__content"
       
 14298   }, children, actions.map(function (_ref2, index) {
       
 14299     var label = _ref2.label,
       
 14300         _onClick = _ref2.onClick,
       
 14301         url = _ref2.url;
       
 14302     return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(___WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], {
       
 14303       key: index,
       
 14304       href: url,
       
 14305       isTertiary: true,
       
 14306       onClick: function onClick(event) {
       
 14307         event.stopPropagation();
       
 14308 
       
 14309         if (_onClick) {
       
 14310           _onClick(event);
  3186         }
 14311         }
  3187 
 14312       },
  3188         return get;
 14313       className: "components-snackbar__action"
  3189       }()
 14314     }, label);
  3190     });
 14315   })));
  3191     var noop = function noop() {};
 14316 }
  3192     window.addEventListener('testPassiveEventSupport', noop, opts);
 14317 
  3193     window.removeEventListener('testPassiveEventSupport', noop, opts);
 14318 /* harmony default export */ __webpack_exports__["a"] = (Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["forwardRef"])(Snackbar));
  3194   } catch (e) {
 14319 
  3195     // do nothing
 14320 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(117)))
  3196   }
 14321 
  3197 
 14322 /***/ }),
  3198   return supportsPassiveOption;
 14323 /* 163 */,
  3199 }
 14324 /* 164 */,
  3200 
 14325 /* 165 */,
  3201 var memoized = void 0;
 14326 /* 166 */
  3202 
 14327 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  3203 function canUsePassiveEventListeners() {
 14328 
  3204   if (memoized === undefined) {
 14329 "use strict";
  3205     memoized = testPassiveEventListeners();
 14330 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
  3206   }
 14331 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  3207   return memoized;
 14332 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(2);
  3208 }
 14333 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_1__);
  3209 
 14334 
  3210 function normalizeEventOptions(eventOptions) {
 14335 
  3211   if (!eventOptions) {
 14336 /**
  3212     return undefined;
 14337  * External dependencies
  3213   }
 14338  */
  3214 
 14339 
  3215   if (!canUsePassiveEventListeners()) {
 14340 
  3216     // If the browser does not support the passive option, then it is expecting
 14341 function Shortcut(_ref) {
  3217     // a boolean for the options argument to specify whether it should use
 14342   var shortcut = _ref.shortcut,
  3218     // capture or not. In more modern browsers, this is passed via the `capture`
 14343       className = _ref.className;
  3219     // option, so let's just hoist that value up.
 14344 
  3220     return !!eventOptions.capture;
 14345   if (!shortcut) {
  3221   }
 14346     return null;
  3222 
 14347   }
  3223   return eventOptions;
 14348 
  3224 }
 14349   var displayText;
  3225 
 14350   var ariaLabel;
  3226 /* eslint-disable no-bitwise */
 14351 
  3227 
 14352   if (Object(lodash__WEBPACK_IMPORTED_MODULE_1__["isString"])(shortcut)) {
  3228 /**
 14353     displayText = shortcut;
  3229  * Generate a unique key for any set of event options
 14354   }
  3230  */
 14355 
  3231 function eventOptionsKey(normalizedEventOptions) {
 14356   if (Object(lodash__WEBPACK_IMPORTED_MODULE_1__["isObject"])(shortcut)) {
  3232   if (!normalizedEventOptions) {
 14357     displayText = shortcut.display;
  3233     return 0;
 14358     ariaLabel = shortcut.ariaLabel;
  3234   }
 14359   }
  3235 
 14360 
  3236   // If the browser does not support passive event listeners, the normalized
 14361   return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])("span", {
  3237   // event options will be a boolean.
 14362     className: className,
  3238   if (normalizedEventOptions === true) {
 14363     "aria-label": ariaLabel
  3239     return 100;
 14364   }, displayText);
  3240   }
 14365 }
  3241 
 14366 
  3242   // At this point, the browser supports passive event listeners, so we expect
 14367 /* harmony default export */ __webpack_exports__["a"] = (Shortcut);
  3243   // the event options to be an object with possible properties of capture,
 14368 
  3244   // passive, and once.
 14369 
  3245   //
 14370 /***/ }),
  3246   // We want to consistently return the same value, regardless of the order of
 14371 /* 167 */
  3247   // these properties, so let's use binary maths to assign each property to a
 14372 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  3248   // bit, and then add those together (with an offset to account for the
 14373 
  3249   // booleans at the beginning of this function).
 14374 "use strict";
  3250   var capture = normalizedEventOptions.capture << 0;
 14375 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useToolbarState; });
  3251   var passive = normalizedEventOptions.passive << 1;
 14376 /* harmony import */ var _rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(17);
  3252   var once = normalizedEventOptions.once << 2;
 14377 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(13);
  3253   return capture + passive + once;
 14378 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
  3254 }
 14379 /* harmony import */ var reakit_utils_useSealedState__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(62);
  3255 
 14380 /* harmony import */ var _CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(51);
  3256 function ensureCanMutateNextEventHandlers(eventHandlers) {
 14381 
  3257   if (eventHandlers.handlers === eventHandlers.nextHandlers) {
 14382 
  3258     // eslint-disable-next-line no-param-reassign
 14383 
  3259     eventHandlers.nextHandlers = eventHandlers.handlers.slice();
 14384 
  3260   }
 14385 
  3261 }
 14386 
  3262 
 14387 
  3263 function TargetEventHandlers(target) {
 14388 
  3264   this.target = target;
 14389 
  3265   this.events = {};
 14390 function useToolbarState(initialState) {
  3266 }
 14391   if (initialState === void 0) {
  3267 
 14392     initialState = {};
  3268 TargetEventHandlers.prototype.getEventHandlers = function () {
 14393   }
  3269   function getEventHandlers(eventName, options) {
 14394 
  3270     var key = String(eventName) + ' ' + String(eventOptionsKey(options));
 14395   var _useSealedState = Object(reakit_utils_useSealedState__WEBPACK_IMPORTED_MODULE_2__[/* useSealedState */ "a"])(initialState),
  3271 
 14396       _useSealedState$orien = _useSealedState.orientation,
  3272     if (!this.events[key]) {
 14397       orientation = _useSealedState$orien === void 0 ? "horizontal" : _useSealedState$orien,
  3273       this.events[key] = {
 14398       sealed = Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* _ */ "a"])(_useSealedState, ["orientation"]);
  3274         handlers: [],
 14399 
  3275         handleEvent: undefined
 14400   return Object(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_3__[/* u */ "g"])(Object(_rollupPluginBabelHelpers_1f0bf8c2_js__WEBPACK_IMPORTED_MODULE_0__[/* a */ "b"])({
  3276       };
 14401     orientation: orientation
  3277       this.events[key].nextHandlers = this.events[key].handlers;
 14402   }, sealed));
  3278     }
 14403 }
  3279 
 14404 var keys = [].concat(_CompositeState_3a25dcee_js__WEBPACK_IMPORTED_MODULE_3__[/* u */ "g"].__keys);
  3280     return this.events[key];
 14405 useToolbarState.__keys = keys;
  3281   }
 14406 
  3282 
 14407 
  3283   return getEventHandlers;
 14408 
  3284 }();
 14409 
  3285 
 14410 /***/ }),
  3286 TargetEventHandlers.prototype.handleEvent = function () {
 14411 /* 168 */,
  3287   function handleEvent(eventName, options, event) {
 14412 /* 169 */,
  3288     var eventHandlers = this.getEventHandlers(eventName, options);
 14413 /* 170 */
  3289     eventHandlers.handlers = eventHandlers.nextHandlers;
 14414 /***/ (function(module, exports) {
  3290     eventHandlers.handlers.forEach(function (handler) {
 14415 
  3291       if (handler) {
 14416 function _extends() {
  3292         // We need to check for presence here because a handler function may
 14417   module.exports = _extends = Object.assign || function (target) {
  3293         // cause later handlers to get removed. This can happen if you for
 14418     for (var i = 1; i < arguments.length; i++) {
  3294         // instance have a waypoint that unmounts another waypoint as part of an
 14419       var source = arguments[i];
  3295         // onEnter/onLeave handler.
 14420 
  3296         handler(event);
 14421       for (var key in source) {
  3297       }
 14422         if (Object.prototype.hasOwnProperty.call(source, key)) {
  3298     });
 14423           target[key] = source[key];
  3299   }
       
  3300 
       
  3301   return handleEvent;
       
  3302 }();
       
  3303 
       
  3304 TargetEventHandlers.prototype.add = function () {
       
  3305   function add(eventName, listener, options) {
       
  3306     var _this = this;
       
  3307 
       
  3308     // options has already been normalized at this point.
       
  3309     var eventHandlers = this.getEventHandlers(eventName, options);
       
  3310 
       
  3311     ensureCanMutateNextEventHandlers(eventHandlers);
       
  3312 
       
  3313     if (eventHandlers.nextHandlers.length === 0) {
       
  3314       eventHandlers.handleEvent = this.handleEvent.bind(this, eventName, options);
       
  3315 
       
  3316       this.target.addEventListener(eventName, eventHandlers.handleEvent, options);
       
  3317     }
       
  3318 
       
  3319     eventHandlers.nextHandlers.push(listener);
       
  3320 
       
  3321     var isSubscribed = true;
       
  3322     var unsubscribe = function () {
       
  3323       function unsubscribe() {
       
  3324         if (!isSubscribed) {
       
  3325           return;
       
  3326         }
       
  3327 
       
  3328         isSubscribed = false;
       
  3329 
       
  3330         ensureCanMutateNextEventHandlers(eventHandlers);
       
  3331         var index = eventHandlers.nextHandlers.indexOf(listener);
       
  3332         eventHandlers.nextHandlers.splice(index, 1);
       
  3333 
       
  3334         if (eventHandlers.nextHandlers.length === 0) {
       
  3335           // All event handlers have been removed, so we want to remove the event
       
  3336           // listener from the target node.
       
  3337 
       
  3338           if (_this.target) {
       
  3339             // There can be a race condition where the target may no longer exist
       
  3340             // when this function is called, e.g. when a React component is
       
  3341             // unmounting. Guarding against this prevents the following error:
       
  3342             //
       
  3343             //   Cannot read property 'removeEventListener' of undefined
       
  3344             _this.target.removeEventListener(eventName, eventHandlers.handleEvent, options);
       
  3345           }
       
  3346 
       
  3347           eventHandlers.handleEvent = undefined;
       
  3348         }
 14424         }
  3349       }
 14425       }
  3350 
 14426     }
  3351       return unsubscribe;
 14427 
  3352     }();
 14428     return target;
  3353     return unsubscribe;
 14429   };
  3354   }
 14430 
  3355 
 14431   return _extends.apply(this, arguments);
  3356   return add;
 14432 }
  3357 }();
 14433 
  3358 
 14434 module.exports = _extends;
  3359 var EVENT_HANDLERS_KEY = '__consolidated_events_handlers__';
       
  3360 
       
  3361 // eslint-disable-next-line import/prefer-default-export
       
  3362 function addEventListener(target, eventName, listener, options) {
       
  3363   if (!target[EVENT_HANDLERS_KEY]) {
       
  3364     // eslint-disable-next-line no-param-reassign
       
  3365     target[EVENT_HANDLERS_KEY] = new TargetEventHandlers(target);
       
  3366   }
       
  3367   var normalizedEventOptions = normalizeEventOptions(options);
       
  3368   return target[EVENT_HANDLERS_KEY].add(eventName, listener, normalizedEventOptions);
       
  3369 }
       
  3370 
       
  3371 
       
  3372 
       
  3373 
 14435 
  3374 /***/ }),
 14436 /***/ }),
  3375 /* 104 */
 14437 /* 171 */
       
 14438 /***/ (function(module, exports) {
       
 14439 
       
 14440 function _objectWithoutPropertiesLoose(source, excluded) {
       
 14441   if (source == null) return {};
       
 14442   var target = {};
       
 14443   var sourceKeys = Object.keys(source);
       
 14444   var key, i;
       
 14445 
       
 14446   for (i = 0; i < sourceKeys.length; i++) {
       
 14447     key = sourceKeys[i];
       
 14448     if (excluded.indexOf(key) >= 0) continue;
       
 14449     target[key] = source[key];
       
 14450   }
       
 14451 
       
 14452   return target;
       
 14453 }
       
 14454 
       
 14455 module.exports = _objectWithoutPropertiesLoose;
       
 14456 
       
 14457 /***/ }),
       
 14458 /* 172 */
       
 14459 /***/ (function(module, exports) {
       
 14460 
       
 14461 function _assertThisInitialized(self) {
       
 14462   if (self === void 0) {
       
 14463     throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
       
 14464   }
       
 14465 
       
 14466   return self;
       
 14467 }
       
 14468 
       
 14469 module.exports = _assertThisInitialized;
       
 14470 
       
 14471 /***/ }),
       
 14472 /* 173 */,
       
 14473 /* 174 */,
       
 14474 /* 175 */,
       
 14475 /* 176 */,
       
 14476 /* 177 */,
       
 14477 /* 178 */
  3376 /***/ (function(module, exports, __webpack_require__) {
 14478 /***/ (function(module, exports, __webpack_require__) {
  3377 
 14479 
  3378 "use strict";
 14480 "use strict";
  3379 
 14481 
  3380 
 14482 
  3381 Object.defineProperty(exports, "__esModule", {
 14483 var util = __webpack_require__(179);
  3382   value: true
       
  3383 });
       
  3384 exports['default'] = toISOMonthString;
       
  3385 
       
  3386 var _moment = __webpack_require__(29);
       
  3387 
       
  3388 var _moment2 = _interopRequireDefault(_moment);
       
  3389 
       
  3390 var _toMomentObject = __webpack_require__(80);
       
  3391 
       
  3392 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
       
  3393 
       
  3394 var _constants = __webpack_require__(39);
       
  3395 
       
  3396 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  3397 
       
  3398 function toISOMonthString(date, currentFormat) {
       
  3399   var dateObj = _moment2['default'].isMoment(date) ? date : (0, _toMomentObject2['default'])(date, currentFormat);
       
  3400   if (!dateObj) return null;
       
  3401 
       
  3402   return dateObj.format(_constants.ISO_MONTH_FORMAT);
       
  3403 }
       
  3404 
       
  3405 /***/ }),
       
  3406 /* 105 */
       
  3407 /***/ (function(module, exports, __webpack_require__) {
       
  3408 
       
  3409 "use strict";
       
  3410 
       
  3411 
       
  3412 Object.defineProperty(exports, "__esModule", {
       
  3413   value: true
       
  3414 });
       
  3415 
       
  3416 var _propTypes = __webpack_require__(31);
       
  3417 
       
  3418 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  3419 
       
  3420 var _constants = __webpack_require__(39);
       
  3421 
       
  3422 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  3423 
       
  3424 exports['default'] = _propTypes2['default'].oneOfType([_propTypes2['default'].bool, _propTypes2['default'].oneOf([_constants.START_DATE, _constants.END_DATE])]);
       
  3425 
       
  3426 /***/ }),
       
  3427 /* 106 */
       
  3428 /***/ (function(module, exports, __webpack_require__) {
       
  3429 
       
  3430 "use strict";
       
  3431 
       
  3432 
       
  3433 Object.defineProperty(exports, "__esModule", {
       
  3434   value: true
       
  3435 });
       
  3436 exports['default'] = isAfterDay;
       
  3437 
       
  3438 var _moment = __webpack_require__(29);
       
  3439 
       
  3440 var _moment2 = _interopRequireDefault(_moment);
       
  3441 
       
  3442 var _isBeforeDay = __webpack_require__(95);
       
  3443 
       
  3444 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
       
  3445 
       
  3446 var _isSameDay = __webpack_require__(79);
       
  3447 
       
  3448 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
  3449 
       
  3450 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  3451 
       
  3452 function isAfterDay(a, b) {
       
  3453   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
  3454   return !(0, _isBeforeDay2['default'])(a, b) && !(0, _isSameDay2['default'])(a, b);
       
  3455 }
       
  3456 
       
  3457 /***/ }),
       
  3458 /* 107 */,
       
  3459 /* 108 */
       
  3460 /***/ (function(module, exports, __webpack_require__) {
       
  3461 
       
  3462 "use strict";
       
  3463 
       
  3464 
       
  3465 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
  3466 
       
  3467 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
  3468 
       
  3469 function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
       
  3470 
       
  3471 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
  3472 
       
  3473 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
  3474 
       
  3475 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
  3476 
       
  3477 var hoistNonReactStatic = __webpack_require__(140);
       
  3478 var React = __webpack_require__(27);
       
  3479 var ReactDOM = __webpack_require__(52);
       
  3480 
       
  3481 module.exports = function enhanceWithClickOutside(WrappedComponent) {
       
  3482   var componentName = WrappedComponent.displayName || WrappedComponent.name;
       
  3483 
       
  3484   var EnhancedComponent = function (_React$Component) {
       
  3485     _inherits(EnhancedComponent, _React$Component);
       
  3486 
       
  3487     function EnhancedComponent(props) {
       
  3488       _classCallCheck(this, EnhancedComponent);
       
  3489 
       
  3490       var _this = _possibleConstructorReturn(this, (EnhancedComponent.__proto__ || Object.getPrototypeOf(EnhancedComponent)).call(this, props));
       
  3491 
       
  3492       _this.handleClickOutside = _this.handleClickOutside.bind(_this);
       
  3493       return _this;
       
  3494     }
       
  3495 
       
  3496     _createClass(EnhancedComponent, [{
       
  3497       key: 'componentDidMount',
       
  3498       value: function componentDidMount() {
       
  3499         document.addEventListener('click', this.handleClickOutside, true);
       
  3500       }
       
  3501     }, {
       
  3502       key: 'componentWillUnmount',
       
  3503       value: function componentWillUnmount() {
       
  3504         document.removeEventListener('click', this.handleClickOutside, true);
       
  3505       }
       
  3506     }, {
       
  3507       key: 'handleClickOutside',
       
  3508       value: function handleClickOutside(e) {
       
  3509         var domNode = this.__domNode;
       
  3510         if ((!domNode || !domNode.contains(e.target)) && this.__wrappedInstance && typeof this.__wrappedInstance.handleClickOutside === 'function') {
       
  3511           this.__wrappedInstance.handleClickOutside(e);
       
  3512         }
       
  3513       }
       
  3514     }, {
       
  3515       key: 'render',
       
  3516       value: function render() {
       
  3517         var _this2 = this;
       
  3518 
       
  3519         var _props = this.props,
       
  3520             wrappedRef = _props.wrappedRef,
       
  3521             rest = _objectWithoutProperties(_props, ['wrappedRef']);
       
  3522 
       
  3523         return React.createElement(WrappedComponent, _extends({}, rest, {
       
  3524           ref: function ref(c) {
       
  3525             _this2.__wrappedInstance = c;
       
  3526             _this2.__domNode = ReactDOM.findDOMNode(c);
       
  3527             wrappedRef && wrappedRef(c);
       
  3528           }
       
  3529         }));
       
  3530       }
       
  3531     }]);
       
  3532 
       
  3533     return EnhancedComponent;
       
  3534   }(React.Component);
       
  3535 
       
  3536   EnhancedComponent.displayName = 'clickOutside(' + componentName + ')';
       
  3537 
       
  3538   return hoistNonReactStatic(EnhancedComponent, WrappedComponent);
       
  3539 };
       
  3540 
       
  3541 /***/ }),
       
  3542 /* 109 */,
       
  3543 /* 110 */,
       
  3544 /* 111 */,
       
  3545 /* 112 */,
       
  3546 /* 113 */,
       
  3547 /* 114 */,
       
  3548 /* 115 */
       
  3549 /***/ (function(module, exports, __webpack_require__) {
       
  3550 
       
  3551 "use strict";
       
  3552 
       
  3553 
       
  3554 var util = __webpack_require__(116);
       
  3555 
 14484 
  3556 function scrollIntoView(elem, container, config) {
 14485 function scrollIntoView(elem, container, config) {
  3557   config = config || {};
 14486   config = config || {};
  3558   // document 归一化到 window
 14487   // document 归一化到 window
  3559   if (container.nodeType === 9) {
 14488   if (container.nodeType === 9) {
  3678 }
 14607 }
  3679 
 14608 
  3680 module.exports = scrollIntoView;
 14609 module.exports = scrollIntoView;
  3681 
 14610 
  3682 /***/ }),
 14611 /***/ }),
  3683 /* 116 */
 14612 /* 179 */
  3684 /***/ (function(module, exports, __webpack_require__) {
 14613 /***/ (function(module, exports, __webpack_require__) {
  3685 
 14614 
  3686 "use strict";
 14615 "use strict";
  3687 
 14616 
  3688 
 14617 
  4123   viewportWidth: 0,
 15052   viewportWidth: 0,
  4124   viewportHeight: 0
 15053   viewportHeight: 0
  4125 }, domUtils);
 15054 }, domUtils);
  4126 
 15055 
  4127 /***/ }),
 15056 /***/ }),
  4128 /* 117 */,
 15057 /* 180 */
  4129 /* 118 */,
 15058 /***/ (function(module, __webpack_exports__, __webpack_require__) {
  4130 /* 119 */,
 15059 
  4131 /* 120 */,
 15060 "use strict";
  4132 /* 121 */,
 15061 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
  4133 /* 122 */,
 15062 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
  4134 /* 123 */
 15063 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 15064 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 15065 
       
 15066 
       
 15067 /**
       
 15068  * WordPress dependencies
       
 15069  */
       
 15070 
       
 15071 var link = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 15072   xmlns: "http://www.w3.org/2000/svg",
       
 15073   viewBox: "0 0 24 24"
       
 15074 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 15075   d: "M15.6 7.2H14v1.5h1.6c2 0 3.7 1.7 3.7 3.7s-1.7 3.7-3.7 3.7H14v1.5h1.6c2.8 0 5.2-2.3 5.2-5.2 0-2.9-2.3-5.2-5.2-5.2zM4.7 12.4c0-2 1.7-3.7 3.7-3.7H10V7.2H8.4c-2.9 0-5.2 2.3-5.2 5.2 0 2.9 2.3 5.2 5.2 5.2H10v-1.5H8.4c-2 0-3.7-1.7-3.7-3.7zm4.6.9h5.3v-1.5H9.3v1.5z"
       
 15076 }));
       
 15077 /* harmony default export */ __webpack_exports__["a"] = (link);
       
 15078 
       
 15079 
       
 15080 /***/ }),
       
 15081 /* 181 */
  4135 /***/ (function(module, exports, __webpack_require__) {
 15082 /***/ (function(module, exports, __webpack_require__) {
  4136 
 15083 
  4137 "use strict";
 15084 "use strict";
  4138 
 15085 
  4139 
 15086 
  4140 var fnToStr = Function.prototype.toString;
       
  4141 
       
  4142 var constructorRegex = /^\s*class\b/;
       
  4143 var isES6ClassFn = function isES6ClassFunction(value) {
       
  4144 	try {
       
  4145 		var fnStr = fnToStr.call(value);
       
  4146 		return constructorRegex.test(fnStr);
       
  4147 	} catch (e) {
       
  4148 		return false; // not a function
       
  4149 	}
       
  4150 };
       
  4151 
       
  4152 var tryFunctionObject = function tryFunctionToStr(value) {
       
  4153 	try {
       
  4154 		if (isES6ClassFn(value)) { return false; }
       
  4155 		fnToStr.call(value);
       
  4156 		return true;
       
  4157 	} catch (e) {
       
  4158 		return false;
       
  4159 	}
       
  4160 };
       
  4161 var toStr = Object.prototype.toString;
       
  4162 var fnClass = '[object Function]';
       
  4163 var genClass = '[object GeneratorFunction]';
       
  4164 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
  4165 
       
  4166 module.exports = function isCallable(value) {
       
  4167 	if (!value) { return false; }
       
  4168 	if (typeof value !== 'function' && typeof value !== 'object') { return false; }
       
  4169 	if (typeof value === 'function' && !value.prototype) { return true; }
       
  4170 	if (hasToStringTag) { return tryFunctionObject(value); }
       
  4171 	if (isES6ClassFn(value)) { return false; }
       
  4172 	var strClass = toStr.call(value);
       
  4173 	return strClass === fnClass || strClass === genClass;
       
  4174 };
       
  4175 
       
  4176 
       
  4177 /***/ }),
       
  4178 /* 124 */
       
  4179 /***/ (function(module, exports, __webpack_require__) {
       
  4180 
       
  4181 var bind = __webpack_require__(74);
       
  4182 var has = bind.call(Function.call, Object.prototype.hasOwnProperty);
       
  4183 
       
  4184 var $assign = Object.assign;
       
  4185 
       
  4186 module.exports = function assign(target, source) {
       
  4187 	if ($assign) {
       
  4188 		return $assign(target, source);
       
  4189 	}
       
  4190 
       
  4191 	for (var key in source) {
       
  4192 		if (has(source, key)) {
       
  4193 			target[key] = source[key];
       
  4194 		}
       
  4195 	}
       
  4196 	return target;
       
  4197 };
       
  4198 
       
  4199 
       
  4200 /***/ }),
       
  4201 /* 125 */
       
  4202 /***/ (function(module, exports, __webpack_require__) {
       
  4203 
       
  4204 "use strict";
       
  4205 
       
  4206 
       
  4207 Object.defineProperty(exports, "__esModule", {
       
  4208   value: true
       
  4209 });
       
  4210 exports.PureCalendarDay = undefined;
       
  4211 
       
  4212 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
  4213 
       
  4214 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
  4215 
       
  4216 var _object = __webpack_require__(46);
       
  4217 
       
  4218 var _object2 = _interopRequireDefault(_object);
       
  4219 
       
  4220 var _react = __webpack_require__(27);
       
  4221 
       
  4222 var _react2 = _interopRequireDefault(_react);
       
  4223 
       
  4224 var _propTypes = __webpack_require__(31);
       
  4225 
       
  4226 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  4227 
       
  4228 var _reactAddonsShallowCompare = __webpack_require__(78);
       
  4229 
       
  4230 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
  4231 
       
  4232 var _reactMomentProptypes = __webpack_require__(64);
       
  4233 
       
  4234 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
  4235 
       
  4236 var _airbnbPropTypes = __webpack_require__(43);
       
  4237 
       
  4238 var _reactWithStyles = __webpack_require__(56);
       
  4239 
       
  4240 var _moment = __webpack_require__(29);
       
  4241 
       
  4242 var _moment2 = _interopRequireDefault(_moment);
       
  4243 
       
  4244 var _defaultPhrases = __webpack_require__(47);
       
  4245 
       
  4246 var _getPhrasePropTypes = __webpack_require__(51);
       
  4247 
       
  4248 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
  4249 
       
  4250 var _getCalendarDaySettings = __webpack_require__(157);
       
  4251 
       
  4252 var _getCalendarDaySettings2 = _interopRequireDefault(_getCalendarDaySettings);
       
  4253 
       
  4254 var _ModifiersShape = __webpack_require__(101);
       
  4255 
       
  4256 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
  4257 
       
  4258 var _constants = __webpack_require__(39);
       
  4259 
       
  4260 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  4261 
       
  4262 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
  4263 
       
  4264 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
  4265 
       
  4266 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
  4267 
       
  4268 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
  4269   day: _reactMomentProptypes2['default'].momentObj,
       
  4270   daySize: _airbnbPropTypes.nonNegativeInteger,
       
  4271   isOutsideDay: _propTypes2['default'].bool,
       
  4272   modifiers: _ModifiersShape2['default'],
       
  4273   isFocused: _propTypes2['default'].bool,
       
  4274   tabIndex: _propTypes2['default'].oneOf([0, -1]),
       
  4275   onDayClick: _propTypes2['default'].func,
       
  4276   onDayMouseEnter: _propTypes2['default'].func,
       
  4277   onDayMouseLeave: _propTypes2['default'].func,
       
  4278   renderDayContents: _propTypes2['default'].func,
       
  4279   ariaLabelFormat: _propTypes2['default'].string,
       
  4280 
       
  4281   // internationalization
       
  4282   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases))
       
  4283 }));
       
  4284 
       
  4285 var defaultProps = {
       
  4286   day: (0, _moment2['default'])(),
       
  4287   daySize: _constants.DAY_SIZE,
       
  4288   isOutsideDay: false,
       
  4289   modifiers: new Set(),
       
  4290   isFocused: false,
       
  4291   tabIndex: -1,
       
  4292   onDayClick: function () {
       
  4293     function onDayClick() {}
       
  4294 
       
  4295     return onDayClick;
       
  4296   }(),
       
  4297   onDayMouseEnter: function () {
       
  4298     function onDayMouseEnter() {}
       
  4299 
       
  4300     return onDayMouseEnter;
       
  4301   }(),
       
  4302   onDayMouseLeave: function () {
       
  4303     function onDayMouseLeave() {}
       
  4304 
       
  4305     return onDayMouseLeave;
       
  4306   }(),
       
  4307 
       
  4308   renderDayContents: null,
       
  4309   ariaLabelFormat: 'dddd, LL',
       
  4310 
       
  4311   // internationalization
       
  4312   phrases: _defaultPhrases.CalendarDayPhrases
       
  4313 };
       
  4314 
       
  4315 var CalendarDay = function (_React$Component) {
       
  4316   _inherits(CalendarDay, _React$Component);
       
  4317 
       
  4318   function CalendarDay() {
       
  4319     var _ref;
       
  4320 
       
  4321     _classCallCheck(this, CalendarDay);
       
  4322 
       
  4323     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
       
  4324       args[_key] = arguments[_key];
       
  4325     }
       
  4326 
       
  4327     var _this = _possibleConstructorReturn(this, (_ref = CalendarDay.__proto__ || Object.getPrototypeOf(CalendarDay)).call.apply(_ref, [this].concat(args)));
       
  4328 
       
  4329     _this.setButtonRef = _this.setButtonRef.bind(_this);
       
  4330     return _this;
       
  4331   }
       
  4332 
       
  4333   _createClass(CalendarDay, [{
       
  4334     key: 'shouldComponentUpdate',
       
  4335     value: function () {
       
  4336       function shouldComponentUpdate(nextProps, nextState) {
       
  4337         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
  4338       }
       
  4339 
       
  4340       return shouldComponentUpdate;
       
  4341     }()
       
  4342   }, {
       
  4343     key: 'componentDidUpdate',
       
  4344     value: function () {
       
  4345       function componentDidUpdate(prevProps) {
       
  4346         var _props = this.props,
       
  4347             isFocused = _props.isFocused,
       
  4348             tabIndex = _props.tabIndex;
       
  4349 
       
  4350         if (tabIndex === 0) {
       
  4351           if (isFocused || tabIndex !== prevProps.tabIndex) {
       
  4352             this.buttonRef.focus();
       
  4353           }
       
  4354         }
       
  4355       }
       
  4356 
       
  4357       return componentDidUpdate;
       
  4358     }()
       
  4359   }, {
       
  4360     key: 'onDayClick',
       
  4361     value: function () {
       
  4362       function onDayClick(day, e) {
       
  4363         var onDayClick = this.props.onDayClick;
       
  4364 
       
  4365         onDayClick(day, e);
       
  4366       }
       
  4367 
       
  4368       return onDayClick;
       
  4369     }()
       
  4370   }, {
       
  4371     key: 'onDayMouseEnter',
       
  4372     value: function () {
       
  4373       function onDayMouseEnter(day, e) {
       
  4374         var onDayMouseEnter = this.props.onDayMouseEnter;
       
  4375 
       
  4376         onDayMouseEnter(day, e);
       
  4377       }
       
  4378 
       
  4379       return onDayMouseEnter;
       
  4380     }()
       
  4381   }, {
       
  4382     key: 'onDayMouseLeave',
       
  4383     value: function () {
       
  4384       function onDayMouseLeave(day, e) {
       
  4385         var onDayMouseLeave = this.props.onDayMouseLeave;
       
  4386 
       
  4387         onDayMouseLeave(day, e);
       
  4388       }
       
  4389 
       
  4390       return onDayMouseLeave;
       
  4391     }()
       
  4392   }, {
       
  4393     key: 'onKeyDown',
       
  4394     value: function () {
       
  4395       function onKeyDown(day, e) {
       
  4396         var onDayClick = this.props.onDayClick;
       
  4397         var key = e.key;
       
  4398 
       
  4399         if (key === 'Enter' || key === ' ') {
       
  4400           onDayClick(day, e);
       
  4401         }
       
  4402       }
       
  4403 
       
  4404       return onKeyDown;
       
  4405     }()
       
  4406   }, {
       
  4407     key: 'setButtonRef',
       
  4408     value: function () {
       
  4409       function setButtonRef(ref) {
       
  4410         this.buttonRef = ref;
       
  4411       }
       
  4412 
       
  4413       return setButtonRef;
       
  4414     }()
       
  4415   }, {
       
  4416     key: 'render',
       
  4417     value: function () {
       
  4418       function render() {
       
  4419         var _this2 = this;
       
  4420 
       
  4421         var _props2 = this.props,
       
  4422             day = _props2.day,
       
  4423             ariaLabelFormat = _props2.ariaLabelFormat,
       
  4424             daySize = _props2.daySize,
       
  4425             isOutsideDay = _props2.isOutsideDay,
       
  4426             modifiers = _props2.modifiers,
       
  4427             renderDayContents = _props2.renderDayContents,
       
  4428             tabIndex = _props2.tabIndex,
       
  4429             styles = _props2.styles,
       
  4430             phrases = _props2.phrases;
       
  4431 
       
  4432 
       
  4433         if (!day) return _react2['default'].createElement('td', null);
       
  4434 
       
  4435         var _getCalendarDaySettin = (0, _getCalendarDaySettings2['default'])(day, ariaLabelFormat, daySize, modifiers, phrases),
       
  4436             daySizeStyles = _getCalendarDaySettin.daySizeStyles,
       
  4437             useDefaultCursor = _getCalendarDaySettin.useDefaultCursor,
       
  4438             selected = _getCalendarDaySettin.selected,
       
  4439             hoveredSpan = _getCalendarDaySettin.hoveredSpan,
       
  4440             isOutsideRange = _getCalendarDaySettin.isOutsideRange,
       
  4441             ariaLabel = _getCalendarDaySettin.ariaLabel;
       
  4442 
       
  4443         return _react2['default'].createElement(
       
  4444           'td',
       
  4445           _extends({}, (0, _reactWithStyles.css)(styles.CalendarDay, useDefaultCursor && styles.CalendarDay__defaultCursor, styles.CalendarDay__default, isOutsideDay && styles.CalendarDay__outside, modifiers.has('today') && styles.CalendarDay__today, modifiers.has('first-day-of-week') && styles.CalendarDay__firstDayOfWeek, modifiers.has('last-day-of-week') && styles.CalendarDay__lastDayOfWeek, modifiers.has('hovered-offset') && styles.CalendarDay__hovered_offset, modifiers.has('highlighted-calendar') && styles.CalendarDay__highlighted_calendar, modifiers.has('blocked-minimum-nights') && styles.CalendarDay__blocked_minimum_nights, modifiers.has('blocked-calendar') && styles.CalendarDay__blocked_calendar, hoveredSpan && styles.CalendarDay__hovered_span, modifiers.has('selected-span') && styles.CalendarDay__selected_span, modifiers.has('last-in-range') && styles.CalendarDay__last_in_range, modifiers.has('selected-start') && styles.CalendarDay__selected_start, modifiers.has('selected-end') && styles.CalendarDay__selected_end, selected && styles.CalendarDay__selected, isOutsideRange && styles.CalendarDay__blocked_out_of_range, daySizeStyles), {
       
  4446             role: 'button' // eslint-disable-line jsx-a11y/no-noninteractive-element-to-interactive-role
       
  4447             , ref: this.setButtonRef,
       
  4448             'aria-label': ariaLabel,
       
  4449             onMouseEnter: function () {
       
  4450               function onMouseEnter(e) {
       
  4451                 _this2.onDayMouseEnter(day, e);
       
  4452               }
       
  4453 
       
  4454               return onMouseEnter;
       
  4455             }(),
       
  4456             onMouseLeave: function () {
       
  4457               function onMouseLeave(e) {
       
  4458                 _this2.onDayMouseLeave(day, e);
       
  4459               }
       
  4460 
       
  4461               return onMouseLeave;
       
  4462             }(),
       
  4463             onMouseUp: function () {
       
  4464               function onMouseUp(e) {
       
  4465                 e.currentTarget.blur();
       
  4466               }
       
  4467 
       
  4468               return onMouseUp;
       
  4469             }(),
       
  4470             onClick: function () {
       
  4471               function onClick(e) {
       
  4472                 _this2.onDayClick(day, e);
       
  4473               }
       
  4474 
       
  4475               return onClick;
       
  4476             }(),
       
  4477             onKeyDown: function () {
       
  4478               function onKeyDown(e) {
       
  4479                 _this2.onKeyDown(day, e);
       
  4480               }
       
  4481 
       
  4482               return onKeyDown;
       
  4483             }(),
       
  4484             tabIndex: tabIndex
       
  4485           }),
       
  4486           renderDayContents ? renderDayContents(day, modifiers) : day.format('D')
       
  4487         );
       
  4488       }
       
  4489 
       
  4490       return render;
       
  4491     }()
       
  4492   }]);
       
  4493 
       
  4494   return CalendarDay;
       
  4495 }(_react2['default'].Component);
       
  4496 
       
  4497 CalendarDay.propTypes = propTypes;
       
  4498 CalendarDay.defaultProps = defaultProps;
       
  4499 
       
  4500 exports.PureCalendarDay = CalendarDay;
       
  4501 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
  4502   var _ref2$reactDates = _ref2.reactDates,
       
  4503       color = _ref2$reactDates.color,
       
  4504       font = _ref2$reactDates.font;
       
  4505   return {
       
  4506     CalendarDay: {
       
  4507       boxSizing: 'border-box',
       
  4508       cursor: 'pointer',
       
  4509       fontSize: font.size,
       
  4510       textAlign: 'center',
       
  4511 
       
  4512       ':active': {
       
  4513         outline: 0
       
  4514       }
       
  4515     },
       
  4516 
       
  4517     CalendarDay__defaultCursor: {
       
  4518       cursor: 'default'
       
  4519     },
       
  4520 
       
  4521     CalendarDay__default: {
       
  4522       border: '1px solid ' + String(color.core.borderLight),
       
  4523       color: color.text,
       
  4524       background: color.background,
       
  4525 
       
  4526       ':hover': {
       
  4527         background: color.core.borderLight,
       
  4528         border: '1px double ' + String(color.core.borderLight),
       
  4529         color: 'inherit'
       
  4530       }
       
  4531     },
       
  4532 
       
  4533     CalendarDay__hovered_offset: {
       
  4534       background: color.core.borderBright,
       
  4535       border: '1px double ' + String(color.core.borderLight),
       
  4536       color: 'inherit'
       
  4537     },
       
  4538 
       
  4539     CalendarDay__outside: {
       
  4540       border: 0,
       
  4541       background: color.outside.backgroundColor,
       
  4542       color: color.outside.color,
       
  4543 
       
  4544       ':hover': {
       
  4545         border: 0
       
  4546       }
       
  4547     },
       
  4548 
       
  4549     CalendarDay__blocked_minimum_nights: {
       
  4550       background: color.minimumNights.backgroundColor,
       
  4551       border: '1px solid ' + String(color.minimumNights.borderColor),
       
  4552       color: color.minimumNights.color,
       
  4553 
       
  4554       ':hover': {
       
  4555         background: color.minimumNights.backgroundColor_hover,
       
  4556         color: color.minimumNights.color_active
       
  4557       },
       
  4558 
       
  4559       ':active': {
       
  4560         background: color.minimumNights.backgroundColor_active,
       
  4561         color: color.minimumNights.color_active
       
  4562       }
       
  4563     },
       
  4564 
       
  4565     CalendarDay__highlighted_calendar: {
       
  4566       background: color.highlighted.backgroundColor,
       
  4567       color: color.highlighted.color,
       
  4568 
       
  4569       ':hover': {
       
  4570         background: color.highlighted.backgroundColor_hover,
       
  4571         color: color.highlighted.color_active
       
  4572       },
       
  4573 
       
  4574       ':active': {
       
  4575         background: color.highlighted.backgroundColor_active,
       
  4576         color: color.highlighted.color_active
       
  4577       }
       
  4578     },
       
  4579 
       
  4580     CalendarDay__selected_span: {
       
  4581       background: color.selectedSpan.backgroundColor,
       
  4582       border: '1px solid ' + String(color.selectedSpan.borderColor),
       
  4583       color: color.selectedSpan.color,
       
  4584 
       
  4585       ':hover': {
       
  4586         background: color.selectedSpan.backgroundColor_hover,
       
  4587         border: '1px solid ' + String(color.selectedSpan.borderColor),
       
  4588         color: color.selectedSpan.color_active
       
  4589       },
       
  4590 
       
  4591       ':active': {
       
  4592         background: color.selectedSpan.backgroundColor_active,
       
  4593         border: '1px solid ' + String(color.selectedSpan.borderColor),
       
  4594         color: color.selectedSpan.color_active
       
  4595       }
       
  4596     },
       
  4597 
       
  4598     CalendarDay__last_in_range: {
       
  4599       borderRight: color.core.primary
       
  4600     },
       
  4601 
       
  4602     CalendarDay__selected: {
       
  4603       background: color.selected.backgroundColor,
       
  4604       border: '1px solid ' + String(color.selected.borderColor),
       
  4605       color: color.selected.color,
       
  4606 
       
  4607       ':hover': {
       
  4608         background: color.selected.backgroundColor_hover,
       
  4609         border: '1px solid ' + String(color.selected.borderColor),
       
  4610         color: color.selected.color_active
       
  4611       },
       
  4612 
       
  4613       ':active': {
       
  4614         background: color.selected.backgroundColor_active,
       
  4615         border: '1px solid ' + String(color.selected.borderColor),
       
  4616         color: color.selected.color_active
       
  4617       }
       
  4618     },
       
  4619 
       
  4620     CalendarDay__hovered_span: {
       
  4621       background: color.hoveredSpan.backgroundColor,
       
  4622       border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
  4623       color: color.hoveredSpan.color,
       
  4624 
       
  4625       ':hover': {
       
  4626         background: color.hoveredSpan.backgroundColor_hover,
       
  4627         border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
  4628         color: color.hoveredSpan.color_active
       
  4629       },
       
  4630 
       
  4631       ':active': {
       
  4632         background: color.hoveredSpan.backgroundColor_active,
       
  4633         border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
  4634         color: color.hoveredSpan.color_active
       
  4635       }
       
  4636     },
       
  4637 
       
  4638     CalendarDay__blocked_calendar: {
       
  4639       background: color.blocked_calendar.backgroundColor,
       
  4640       border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
  4641       color: color.blocked_calendar.color,
       
  4642 
       
  4643       ':hover': {
       
  4644         background: color.blocked_calendar.backgroundColor_hover,
       
  4645         border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
  4646         color: color.blocked_calendar.color_active
       
  4647       },
       
  4648 
       
  4649       ':active': {
       
  4650         background: color.blocked_calendar.backgroundColor_active,
       
  4651         border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
  4652         color: color.blocked_calendar.color_active
       
  4653       }
       
  4654     },
       
  4655 
       
  4656     CalendarDay__blocked_out_of_range: {
       
  4657       background: color.blocked_out_of_range.backgroundColor,
       
  4658       border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
  4659       color: color.blocked_out_of_range.color,
       
  4660 
       
  4661       ':hover': {
       
  4662         background: color.blocked_out_of_range.backgroundColor_hover,
       
  4663         border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
  4664         color: color.blocked_out_of_range.color_active
       
  4665       },
       
  4666 
       
  4667       ':active': {
       
  4668         background: color.blocked_out_of_range.backgroundColor_active,
       
  4669         border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
  4670         color: color.blocked_out_of_range.color_active
       
  4671       }
       
  4672     },
       
  4673 
       
  4674     CalendarDay__selected_start: {},
       
  4675     CalendarDay__selected_end: {},
       
  4676     CalendarDay__today: {},
       
  4677     CalendarDay__firstDayOfWeek: {},
       
  4678     CalendarDay__lastDayOfWeek: {}
       
  4679   };
       
  4680 })(CalendarDay);
       
  4681 
       
  4682 /***/ }),
       
  4683 /* 126 */
       
  4684 /***/ (function(module, exports, __webpack_require__) {
       
  4685 
       
  4686 // eslint-disable-next-line import/no-unresolved
       
  4687 module.exports = __webpack_require__(303);
       
  4688 
       
  4689 
       
  4690 /***/ }),
       
  4691 /* 127 */
       
  4692 /***/ (function(module, exports, __webpack_require__) {
       
  4693 
       
  4694 "use strict";
       
  4695 
       
  4696 
       
  4697 Object.defineProperty(exports, "__esModule", {
       
  4698   value: true
       
  4699 });
       
  4700 exports['default'] = getInputHeight;
       
  4701 /* eslint-disable camelcase */
       
  4702 
       
  4703 function getPadding(vertical, top, bottom) {
       
  4704   var isTopDefined = typeof top === 'number';
       
  4705   var isBottomDefined = typeof bottom === 'number';
       
  4706   var isVerticalDefined = typeof vertical === 'number';
       
  4707 
       
  4708   if (isTopDefined && isBottomDefined) {
       
  4709     return top + bottom;
       
  4710   }
       
  4711 
       
  4712   if (isTopDefined && isVerticalDefined) {
       
  4713     return top + vertical;
       
  4714   }
       
  4715 
       
  4716   if (isTopDefined) {
       
  4717     return top;
       
  4718   }
       
  4719 
       
  4720   if (isBottomDefined && isVerticalDefined) {
       
  4721     return bottom + vertical;
       
  4722   }
       
  4723 
       
  4724   if (isBottomDefined) {
       
  4725     return bottom;
       
  4726   }
       
  4727 
       
  4728   if (isVerticalDefined) {
       
  4729     return 2 * vertical;
       
  4730   }
       
  4731 
       
  4732   return 0;
       
  4733 }
       
  4734 
       
  4735 function getInputHeight(_ref, small) {
       
  4736   var _ref$font$input = _ref.font.input,
       
  4737       lineHeight = _ref$font$input.lineHeight,
       
  4738       lineHeight_small = _ref$font$input.lineHeight_small,
       
  4739       _ref$spacing = _ref.spacing,
       
  4740       inputPadding = _ref$spacing.inputPadding,
       
  4741       displayTextPaddingVertical = _ref$spacing.displayTextPaddingVertical,
       
  4742       displayTextPaddingTop = _ref$spacing.displayTextPaddingTop,
       
  4743       displayTextPaddingBottom = _ref$spacing.displayTextPaddingBottom,
       
  4744       displayTextPaddingVertical_small = _ref$spacing.displayTextPaddingVertical_small,
       
  4745       displayTextPaddingTop_small = _ref$spacing.displayTextPaddingTop_small,
       
  4746       displayTextPaddingBottom_small = _ref$spacing.displayTextPaddingBottom_small;
       
  4747 
       
  4748   var calcLineHeight = small ? lineHeight_small : lineHeight;
       
  4749 
       
  4750   var padding = small ? getPadding(displayTextPaddingVertical_small, displayTextPaddingTop_small, displayTextPaddingBottom_small) : getPadding(displayTextPaddingVertical, displayTextPaddingTop, displayTextPaddingBottom);
       
  4751 
       
  4752   return parseInt(calcLineHeight, 10) + 2 * inputPadding + padding;
       
  4753 }
       
  4754 
       
  4755 /***/ }),
       
  4756 /* 128 */
       
  4757 /***/ (function(module, exports) {
       
  4758 
       
  4759 /**
       
  4760  * Checks if `value` is the
       
  4761  * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
       
  4762  * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
       
  4763  *
       
  4764  * @static
       
  4765  * @memberOf _
       
  4766  * @since 0.1.0
       
  4767  * @category Lang
       
  4768  * @param {*} value The value to check.
       
  4769  * @returns {boolean} Returns `true` if `value` is an object, else `false`.
       
  4770  * @example
       
  4771  *
       
  4772  * _.isObject({});
       
  4773  * // => true
       
  4774  *
       
  4775  * _.isObject([1, 2, 3]);
       
  4776  * // => true
       
  4777  *
       
  4778  * _.isObject(_.noop);
       
  4779  * // => true
       
  4780  *
       
  4781  * _.isObject(null);
       
  4782  * // => false
       
  4783  */
       
  4784 function isObject(value) {
       
  4785   var type = typeof value;
       
  4786   return value != null && (type == 'object' || type == 'function');
       
  4787 }
       
  4788 
       
  4789 module.exports = isObject;
       
  4790 
       
  4791 
       
  4792 /***/ }),
       
  4793 /* 129 */
       
  4794 /***/ (function(module, exports, __webpack_require__) {
       
  4795 
       
  4796 "use strict";
       
  4797 
       
  4798 
       
  4799 Object.defineProperty(exports, "__esModule", {
       
  4800   value: true
       
  4801 });
       
  4802 exports['default'] = toLocalizedDateString;
       
  4803 
       
  4804 var _moment = __webpack_require__(29);
       
  4805 
       
  4806 var _moment2 = _interopRequireDefault(_moment);
       
  4807 
       
  4808 var _toMomentObject = __webpack_require__(80);
       
  4809 
       
  4810 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
       
  4811 
       
  4812 var _constants = __webpack_require__(39);
       
  4813 
       
  4814 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  4815 
       
  4816 function toLocalizedDateString(date, currentFormat) {
       
  4817   var dateObj = _moment2['default'].isMoment(date) ? date : (0, _toMomentObject2['default'])(date, currentFormat);
       
  4818   if (!dateObj) return null;
       
  4819 
       
  4820   return dateObj.format(_constants.DISPLAY_FORMAT);
       
  4821 }
       
  4822 
       
  4823 /***/ }),
       
  4824 /* 130 */
       
  4825 /***/ (function(module, exports, __webpack_require__) {
       
  4826 
       
  4827 "use strict";
       
  4828 
       
  4829 
       
  4830 Object.defineProperty(exports, "__esModule", {
       
  4831   value: true
       
  4832 });
       
  4833 exports['default'] = isDayVisible;
       
  4834 
       
  4835 var _isBeforeDay = __webpack_require__(95);
       
  4836 
       
  4837 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
       
  4838 
       
  4839 var _isAfterDay = __webpack_require__(106);
       
  4840 
       
  4841 var _isAfterDay2 = _interopRequireDefault(_isAfterDay);
       
  4842 
       
  4843 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  4844 
       
  4845 function isDayVisible(day, month, numberOfMonths, enableOutsideDays) {
       
  4846   var firstDayOfFirstMonth = month.clone().startOf('month');
       
  4847   if (enableOutsideDays) firstDayOfFirstMonth = firstDayOfFirstMonth.startOf('week');
       
  4848   if ((0, _isBeforeDay2['default'])(day, firstDayOfFirstMonth)) return false;
       
  4849 
       
  4850   var lastDayOfLastMonth = month.clone().add(numberOfMonths - 1, 'months').endOf('month');
       
  4851   if (enableOutsideDays) lastDayOfLastMonth = lastDayOfLastMonth.endOf('week');
       
  4852   return !(0, _isAfterDay2['default'])(day, lastDayOfLastMonth);
       
  4853 }
       
  4854 
       
  4855 /***/ }),
       
  4856 /* 131 */
       
  4857 /***/ (function(module, exports, __webpack_require__) {
       
  4858 
       
  4859 "use strict";
       
  4860 
       
  4861 
       
  4862 Object.defineProperty(exports, "__esModule", {
       
  4863   value: true
       
  4864 });
       
  4865 exports.PureDayPicker = exports.defaultProps = undefined;
       
  4866 
       
  4867 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
  4868 
       
  4869 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
  4870 
       
  4871 var _object = __webpack_require__(46);
       
  4872 
       
  4873 var _object2 = _interopRequireDefault(_object);
       
  4874 
       
  4875 var _react = __webpack_require__(27);
       
  4876 
       
  4877 var _react2 = _interopRequireDefault(_react);
       
  4878 
       
  4879 var _propTypes = __webpack_require__(31);
       
  4880 
       
  4881 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  4882 
       
  4883 var _reactAddonsShallowCompare = __webpack_require__(78);
       
  4884 
       
  4885 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
  4886 
       
  4887 var _airbnbPropTypes = __webpack_require__(43);
       
  4888 
       
  4889 var _reactWithStyles = __webpack_require__(56);
       
  4890 
       
  4891 var _moment = __webpack_require__(29);
       
  4892 
       
  4893 var _moment2 = _interopRequireDefault(_moment);
       
  4894 
       
  4895 var _throttle = __webpack_require__(182);
       
  4896 
       
  4897 var _throttle2 = _interopRequireDefault(_throttle);
       
  4898 
       
  4899 var _isTouchDevice = __webpack_require__(82);
       
  4900 
       
  4901 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
  4902 
       
  4903 var _reactOutsideClickHandler = __webpack_require__(126);
       
  4904 
       
  4905 var _reactOutsideClickHandler2 = _interopRequireDefault(_reactOutsideClickHandler);
       
  4906 
       
  4907 var _defaultPhrases = __webpack_require__(47);
       
  4908 
       
  4909 var _getPhrasePropTypes = __webpack_require__(51);
       
  4910 
       
  4911 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
  4912 
       
  4913 var _CalendarMonthGrid = __webpack_require__(160);
       
  4914 
       
  4915 var _CalendarMonthGrid2 = _interopRequireDefault(_CalendarMonthGrid);
       
  4916 
       
  4917 var _DayPickerNavigation = __webpack_require__(326);
       
  4918 
       
  4919 var _DayPickerNavigation2 = _interopRequireDefault(_DayPickerNavigation);
       
  4920 
       
  4921 var _DayPickerKeyboardShortcuts = __webpack_require__(329);
       
  4922 
       
  4923 var _DayPickerKeyboardShortcuts2 = _interopRequireDefault(_DayPickerKeyboardShortcuts);
       
  4924 
       
  4925 var _getNumberOfCalendarMonthWeeks = __webpack_require__(331);
       
  4926 
       
  4927 var _getNumberOfCalendarMonthWeeks2 = _interopRequireDefault(_getNumberOfCalendarMonthWeeks);
       
  4928 
       
  4929 var _getCalendarMonthWidth = __webpack_require__(161);
       
  4930 
       
  4931 var _getCalendarMonthWidth2 = _interopRequireDefault(_getCalendarMonthWidth);
       
  4932 
       
  4933 var _calculateDimension = __webpack_require__(159);
       
  4934 
       
  4935 var _calculateDimension2 = _interopRequireDefault(_calculateDimension);
       
  4936 
       
  4937 var _getActiveElement = __webpack_require__(332);
       
  4938 
       
  4939 var _getActiveElement2 = _interopRequireDefault(_getActiveElement);
       
  4940 
       
  4941 var _isDayVisible = __webpack_require__(130);
       
  4942 
       
  4943 var _isDayVisible2 = _interopRequireDefault(_isDayVisible);
       
  4944 
       
  4945 var _ModifiersShape = __webpack_require__(101);
       
  4946 
       
  4947 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
  4948 
       
  4949 var _ScrollableOrientationShape = __webpack_require__(81);
       
  4950 
       
  4951 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
  4952 
       
  4953 var _DayOfWeekShape = __webpack_require__(75);
       
  4954 
       
  4955 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
  4956 
       
  4957 var _CalendarInfoPositionShape = __webpack_require__(93);
       
  4958 
       
  4959 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
  4960 
       
  4961 var _constants = __webpack_require__(39);
       
  4962 
       
  4963 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  4964 
       
  4965 function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
       
  4966 
       
  4967 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
  4968 
       
  4969 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
  4970 
       
  4971 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
  4972 
       
  4973 var MONTH_PADDING = 23;
       
  4974 var PREV_TRANSITION = 'prev';
       
  4975 var NEXT_TRANSITION = 'next';
       
  4976 var MONTH_SELECTION_TRANSITION = 'month_selection';
       
  4977 var YEAR_SELECTION_TRANSITION = 'year_selection';
       
  4978 
       
  4979 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
  4980 
       
  4981   // calendar presentation props
       
  4982   enableOutsideDays: _propTypes2['default'].bool,
       
  4983   numberOfMonths: _propTypes2['default'].number,
       
  4984   orientation: _ScrollableOrientationShape2['default'],
       
  4985   withPortal: _propTypes2['default'].bool,
       
  4986   onOutsideClick: _propTypes2['default'].func,
       
  4987   hidden: _propTypes2['default'].bool,
       
  4988   initialVisibleMonth: _propTypes2['default'].func,
       
  4989   firstDayOfWeek: _DayOfWeekShape2['default'],
       
  4990   renderCalendarInfo: _propTypes2['default'].func,
       
  4991   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
  4992   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
  4993   daySize: _airbnbPropTypes.nonNegativeInteger,
       
  4994   isRTL: _propTypes2['default'].bool,
       
  4995   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
  4996   noBorder: _propTypes2['default'].bool,
       
  4997   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
  4998   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
  4999   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
  5000 
       
  5001   // navigation props
       
  5002   navPrev: _propTypes2['default'].node,
       
  5003   navNext: _propTypes2['default'].node,
       
  5004   noNavButtons: _propTypes2['default'].bool,
       
  5005   onPrevMonthClick: _propTypes2['default'].func,
       
  5006   onNextMonthClick: _propTypes2['default'].func,
       
  5007   onMonthChange: _propTypes2['default'].func,
       
  5008   onYearChange: _propTypes2['default'].func,
       
  5009   onMultiplyScrollableMonths: _propTypes2['default'].func, // VERTICAL_SCROLLABLE daypickers only
       
  5010 
       
  5011   // month props
       
  5012   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  5013   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  5014 
       
  5015   // day props
       
  5016   modifiers: _propTypes2['default'].objectOf(_propTypes2['default'].objectOf(_ModifiersShape2['default'])),
       
  5017   renderCalendarDay: _propTypes2['default'].func,
       
  5018   renderDayContents: _propTypes2['default'].func,
       
  5019   onDayClick: _propTypes2['default'].func,
       
  5020   onDayMouseEnter: _propTypes2['default'].func,
       
  5021   onDayMouseLeave: _propTypes2['default'].func,
       
  5022 
       
  5023   // accessibility props
       
  5024   isFocused: _propTypes2['default'].bool,
       
  5025   getFirstFocusableDay: _propTypes2['default'].func,
       
  5026   onBlur: _propTypes2['default'].func,
       
  5027   showKeyboardShortcuts: _propTypes2['default'].bool,
       
  5028 
       
  5029   // internationalization
       
  5030   monthFormat: _propTypes2['default'].string,
       
  5031   weekDayFormat: _propTypes2['default'].string,
       
  5032   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerPhrases)),
       
  5033   dayAriaLabelFormat: _propTypes2['default'].string
       
  5034 }));
       
  5035 
       
  5036 var defaultProps = exports.defaultProps = {
       
  5037   // calendar presentation props
       
  5038   enableOutsideDays: false,
       
  5039   numberOfMonths: 2,
       
  5040   orientation: _constants.HORIZONTAL_ORIENTATION,
       
  5041   withPortal: false,
       
  5042   onOutsideClick: function () {
       
  5043     function onOutsideClick() {}
       
  5044 
       
  5045     return onOutsideClick;
       
  5046   }(),
       
  5047 
       
  5048   hidden: false,
       
  5049   initialVisibleMonth: function () {
       
  5050     function initialVisibleMonth() {
       
  5051       return (0, _moment2['default'])();
       
  5052     }
       
  5053 
       
  5054     return initialVisibleMonth;
       
  5055   }(),
       
  5056   firstDayOfWeek: null,
       
  5057   renderCalendarInfo: null,
       
  5058   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
       
  5059   hideKeyboardShortcutsPanel: false,
       
  5060   daySize: _constants.DAY_SIZE,
       
  5061   isRTL: false,
       
  5062   verticalHeight: null,
       
  5063   noBorder: false,
       
  5064   transitionDuration: undefined,
       
  5065   verticalBorderSpacing: undefined,
       
  5066   horizontalMonthPadding: 13,
       
  5067 
       
  5068   // navigation props
       
  5069   navPrev: null,
       
  5070   navNext: null,
       
  5071   noNavButtons: false,
       
  5072   onPrevMonthClick: function () {
       
  5073     function onPrevMonthClick() {}
       
  5074 
       
  5075     return onPrevMonthClick;
       
  5076   }(),
       
  5077   onNextMonthClick: function () {
       
  5078     function onNextMonthClick() {}
       
  5079 
       
  5080     return onNextMonthClick;
       
  5081   }(),
       
  5082   onMonthChange: function () {
       
  5083     function onMonthChange() {}
       
  5084 
       
  5085     return onMonthChange;
       
  5086   }(),
       
  5087   onYearChange: function () {
       
  5088     function onYearChange() {}
       
  5089 
       
  5090     return onYearChange;
       
  5091   }(),
       
  5092   onMultiplyScrollableMonths: function () {
       
  5093     function onMultiplyScrollableMonths() {}
       
  5094 
       
  5095     return onMultiplyScrollableMonths;
       
  5096   }(),
       
  5097 
       
  5098 
       
  5099   // month props
       
  5100   renderMonthText: null,
       
  5101   renderMonthElement: null,
       
  5102 
       
  5103   // day props
       
  5104   modifiers: {},
       
  5105   renderCalendarDay: undefined,
       
  5106   renderDayContents: null,
       
  5107   onDayClick: function () {
       
  5108     function onDayClick() {}
       
  5109 
       
  5110     return onDayClick;
       
  5111   }(),
       
  5112   onDayMouseEnter: function () {
       
  5113     function onDayMouseEnter() {}
       
  5114 
       
  5115     return onDayMouseEnter;
       
  5116   }(),
       
  5117   onDayMouseLeave: function () {
       
  5118     function onDayMouseLeave() {}
       
  5119 
       
  5120     return onDayMouseLeave;
       
  5121   }(),
       
  5122 
       
  5123 
       
  5124   // accessibility props
       
  5125   isFocused: false,
       
  5126   getFirstFocusableDay: null,
       
  5127   onBlur: function () {
       
  5128     function onBlur() {}
       
  5129 
       
  5130     return onBlur;
       
  5131   }(),
       
  5132 
       
  5133   showKeyboardShortcuts: false,
       
  5134 
       
  5135   // internationalization
       
  5136   monthFormat: 'MMMM YYYY',
       
  5137   weekDayFormat: 'dd',
       
  5138   phrases: _defaultPhrases.DayPickerPhrases,
       
  5139   dayAriaLabelFormat: undefined
       
  5140 };
       
  5141 
       
  5142 var DayPicker = function (_React$Component) {
       
  5143   _inherits(DayPicker, _React$Component);
       
  5144 
       
  5145   function DayPicker(props) {
       
  5146     _classCallCheck(this, DayPicker);
       
  5147 
       
  5148     var _this = _possibleConstructorReturn(this, (DayPicker.__proto__ || Object.getPrototypeOf(DayPicker)).call(this, props));
       
  5149 
       
  5150     var currentMonth = props.hidden ? (0, _moment2['default'])() : props.initialVisibleMonth();
       
  5151 
       
  5152     var focusedDate = currentMonth.clone().startOf('month');
       
  5153     if (props.getFirstFocusableDay) {
       
  5154       focusedDate = props.getFirstFocusableDay(currentMonth);
       
  5155     }
       
  5156 
       
  5157     var horizontalMonthPadding = props.horizontalMonthPadding;
       
  5158 
       
  5159 
       
  5160     var translationValue = props.isRTL && _this.isHorizontal() ? -(0, _getCalendarMonthWidth2['default'])(props.daySize, horizontalMonthPadding) : 0;
       
  5161 
       
  5162     _this.hasSetInitialVisibleMonth = !props.hidden;
       
  5163     _this.state = {
       
  5164       currentMonth: currentMonth,
       
  5165       monthTransition: null,
       
  5166       translationValue: translationValue,
       
  5167       scrollableMonthMultiple: 1,
       
  5168       calendarMonthWidth: (0, _getCalendarMonthWidth2['default'])(props.daySize, horizontalMonthPadding),
       
  5169       focusedDate: !props.hidden || props.isFocused ? focusedDate : null,
       
  5170       nextFocusedDate: null,
       
  5171       showKeyboardShortcuts: props.showKeyboardShortcuts,
       
  5172       onKeyboardShortcutsPanelClose: function () {
       
  5173         function onKeyboardShortcutsPanelClose() {}
       
  5174 
       
  5175         return onKeyboardShortcutsPanelClose;
       
  5176       }(),
       
  5177 
       
  5178       isTouchDevice: (0, _isTouchDevice2['default'])(),
       
  5179       withMouseInteractions: true,
       
  5180       calendarInfoWidth: 0,
       
  5181       monthTitleHeight: null,
       
  5182       hasSetHeight: false
       
  5183     };
       
  5184 
       
  5185     _this.setCalendarMonthWeeks(currentMonth);
       
  5186 
       
  5187     _this.calendarMonthGridHeight = 0;
       
  5188     _this.setCalendarInfoWidthTimeout = null;
       
  5189 
       
  5190     _this.onKeyDown = _this.onKeyDown.bind(_this);
       
  5191     _this.throttledKeyDown = (0, _throttle2['default'])(_this.onFinalKeyDown, 200, { trailing: false });
       
  5192     _this.onPrevMonthClick = _this.onPrevMonthClick.bind(_this);
       
  5193     _this.onNextMonthClick = _this.onNextMonthClick.bind(_this);
       
  5194     _this.onMonthChange = _this.onMonthChange.bind(_this);
       
  5195     _this.onYearChange = _this.onYearChange.bind(_this);
       
  5196 
       
  5197     _this.multiplyScrollableMonths = _this.multiplyScrollableMonths.bind(_this);
       
  5198     _this.updateStateAfterMonthTransition = _this.updateStateAfterMonthTransition.bind(_this);
       
  5199 
       
  5200     _this.openKeyboardShortcutsPanel = _this.openKeyboardShortcutsPanel.bind(_this);
       
  5201     _this.closeKeyboardShortcutsPanel = _this.closeKeyboardShortcutsPanel.bind(_this);
       
  5202 
       
  5203     _this.setCalendarInfoRef = _this.setCalendarInfoRef.bind(_this);
       
  5204     _this.setContainerRef = _this.setContainerRef.bind(_this);
       
  5205     _this.setTransitionContainerRef = _this.setTransitionContainerRef.bind(_this);
       
  5206     _this.setMonthTitleHeight = _this.setMonthTitleHeight.bind(_this);
       
  5207     return _this;
       
  5208   }
       
  5209 
       
  5210   _createClass(DayPicker, [{
       
  5211     key: 'componentDidMount',
       
  5212     value: function () {
       
  5213       function componentDidMount() {
       
  5214         var currentMonth = this.state.currentMonth;
       
  5215 
       
  5216         if (this.calendarInfo) {
       
  5217           this.setState({
       
  5218             isTouchDevice: (0, _isTouchDevice2['default'])(),
       
  5219             calendarInfoWidth: (0, _calculateDimension2['default'])(this.calendarInfo, 'width', true, true)
       
  5220           });
       
  5221         } else {
       
  5222           this.setState({ isTouchDevice: (0, _isTouchDevice2['default'])() });
       
  5223         }
       
  5224 
       
  5225         this.setCalendarMonthWeeks(currentMonth);
       
  5226       }
       
  5227 
       
  5228       return componentDidMount;
       
  5229     }()
       
  5230   }, {
       
  5231     key: 'componentWillReceiveProps',
       
  5232     value: function () {
       
  5233       function componentWillReceiveProps(nextProps) {
       
  5234         var hidden = nextProps.hidden,
       
  5235             isFocused = nextProps.isFocused,
       
  5236             showKeyboardShortcuts = nextProps.showKeyboardShortcuts,
       
  5237             onBlur = nextProps.onBlur,
       
  5238             renderMonthText = nextProps.renderMonthText,
       
  5239             horizontalMonthPadding = nextProps.horizontalMonthPadding;
       
  5240         var currentMonth = this.state.currentMonth;
       
  5241 
       
  5242 
       
  5243         if (!hidden) {
       
  5244           if (!this.hasSetInitialVisibleMonth) {
       
  5245             this.hasSetInitialVisibleMonth = true;
       
  5246             this.setState({
       
  5247               currentMonth: nextProps.initialVisibleMonth()
       
  5248             });
       
  5249           }
       
  5250         }
       
  5251 
       
  5252         var _props = this.props,
       
  5253             daySize = _props.daySize,
       
  5254             prevIsFocused = _props.isFocused,
       
  5255             prevRenderMonthText = _props.renderMonthText;
       
  5256 
       
  5257 
       
  5258         if (nextProps.daySize !== daySize) {
       
  5259           this.setState({
       
  5260             calendarMonthWidth: (0, _getCalendarMonthWidth2['default'])(nextProps.daySize, horizontalMonthPadding)
       
  5261           });
       
  5262         }
       
  5263 
       
  5264         if (isFocused !== prevIsFocused) {
       
  5265           if (isFocused) {
       
  5266             var focusedDate = this.getFocusedDay(currentMonth);
       
  5267 
       
  5268             var onKeyboardShortcutsPanelClose = this.state.onKeyboardShortcutsPanelClose;
       
  5269 
       
  5270             if (nextProps.showKeyboardShortcuts) {
       
  5271               // the ? shortcut came from the input and we should return input there once it is close
       
  5272               onKeyboardShortcutsPanelClose = onBlur;
       
  5273             }
       
  5274 
       
  5275             this.setState({
       
  5276               showKeyboardShortcuts: showKeyboardShortcuts,
       
  5277               onKeyboardShortcutsPanelClose: onKeyboardShortcutsPanelClose,
       
  5278               focusedDate: focusedDate,
       
  5279               withMouseInteractions: false
       
  5280             });
       
  5281           } else {
       
  5282             this.setState({ focusedDate: null });
       
  5283           }
       
  5284         }
       
  5285 
       
  5286         if (renderMonthText !== prevRenderMonthText) {
       
  5287           this.setState({
       
  5288             monthTitleHeight: null
       
  5289           });
       
  5290         }
       
  5291       }
       
  5292 
       
  5293       return componentWillReceiveProps;
       
  5294     }()
       
  5295   }, {
       
  5296     key: 'shouldComponentUpdate',
       
  5297     value: function () {
       
  5298       function shouldComponentUpdate(nextProps, nextState) {
       
  5299         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
  5300       }
       
  5301 
       
  5302       return shouldComponentUpdate;
       
  5303     }()
       
  5304   }, {
       
  5305     key: 'componentWillUpdate',
       
  5306     value: function () {
       
  5307       function componentWillUpdate() {
       
  5308         var _this2 = this;
       
  5309 
       
  5310         var transitionDuration = this.props.transitionDuration;
       
  5311 
       
  5312         // Calculating the dimensions trigger a DOM repaint which
       
  5313         // breaks the CSS transition.
       
  5314         // The setTimeout will wait until the transition ends.
       
  5315 
       
  5316         if (this.calendarInfo) {
       
  5317           this.setCalendarInfoWidthTimeout = setTimeout(function () {
       
  5318             var calendarInfoWidth = _this2.state.calendarInfoWidth;
       
  5319 
       
  5320             var calendarInfoPanelWidth = (0, _calculateDimension2['default'])(_this2.calendarInfo, 'width', true, true);
       
  5321             if (calendarInfoWidth !== calendarInfoPanelWidth) {
       
  5322               _this2.setState({
       
  5323                 calendarInfoWidth: calendarInfoPanelWidth
       
  5324               });
       
  5325             }
       
  5326           }, transitionDuration);
       
  5327         }
       
  5328       }
       
  5329 
       
  5330       return componentWillUpdate;
       
  5331     }()
       
  5332   }, {
       
  5333     key: 'componentDidUpdate',
       
  5334     value: function () {
       
  5335       function componentDidUpdate(prevProps) {
       
  5336         var _props2 = this.props,
       
  5337             orientation = _props2.orientation,
       
  5338             daySize = _props2.daySize,
       
  5339             isFocused = _props2.isFocused,
       
  5340             numberOfMonths = _props2.numberOfMonths;
       
  5341         var _state = this.state,
       
  5342             focusedDate = _state.focusedDate,
       
  5343             monthTitleHeight = _state.monthTitleHeight;
       
  5344 
       
  5345 
       
  5346         if (this.isHorizontal() && (orientation !== prevProps.orientation || daySize !== prevProps.daySize)) {
       
  5347           var visibleCalendarWeeks = this.calendarMonthWeeks.slice(1, numberOfMonths + 1);
       
  5348           var calendarMonthWeeksHeight = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
  5349           var newMonthHeight = monthTitleHeight + calendarMonthWeeksHeight + 1;
       
  5350           this.adjustDayPickerHeight(newMonthHeight);
       
  5351         }
       
  5352 
       
  5353         if (!prevProps.isFocused && isFocused && !focusedDate) {
       
  5354           this.container.focus();
       
  5355         }
       
  5356       }
       
  5357 
       
  5358       return componentDidUpdate;
       
  5359     }()
       
  5360   }, {
       
  5361     key: 'componentWillUnmount',
       
  5362     value: function () {
       
  5363       function componentWillUnmount() {
       
  5364         clearTimeout(this.setCalendarInfoWidthTimeout);
       
  5365       }
       
  5366 
       
  5367       return componentWillUnmount;
       
  5368     }()
       
  5369   }, {
       
  5370     key: 'onKeyDown',
       
  5371     value: function () {
       
  5372       function onKeyDown(e) {
       
  5373         e.stopPropagation();
       
  5374         if (!_constants.MODIFIER_KEY_NAMES.has(e.key)) {
       
  5375           this.throttledKeyDown(e);
       
  5376         }
       
  5377       }
       
  5378 
       
  5379       return onKeyDown;
       
  5380     }()
       
  5381   }, {
       
  5382     key: 'onFinalKeyDown',
       
  5383     value: function () {
       
  5384       function onFinalKeyDown(e) {
       
  5385         this.setState({ withMouseInteractions: false });
       
  5386 
       
  5387         var _props3 = this.props,
       
  5388             onBlur = _props3.onBlur,
       
  5389             isRTL = _props3.isRTL;
       
  5390         var _state2 = this.state,
       
  5391             focusedDate = _state2.focusedDate,
       
  5392             showKeyboardShortcuts = _state2.showKeyboardShortcuts;
       
  5393 
       
  5394         if (!focusedDate) return;
       
  5395 
       
  5396         var newFocusedDate = focusedDate.clone();
       
  5397 
       
  5398         var didTransitionMonth = false;
       
  5399 
       
  5400         // focus might be anywhere when the keyboard shortcuts panel is opened so we want to
       
  5401         // return it to wherever it was before when the panel was opened
       
  5402         var activeElement = (0, _getActiveElement2['default'])();
       
  5403         var onKeyboardShortcutsPanelClose = function () {
       
  5404           function onKeyboardShortcutsPanelClose() {
       
  5405             if (activeElement) activeElement.focus();
       
  5406           }
       
  5407 
       
  5408           return onKeyboardShortcutsPanelClose;
       
  5409         }();
       
  5410 
       
  5411         switch (e.key) {
       
  5412           case 'ArrowUp':
       
  5413             e.preventDefault();
       
  5414             newFocusedDate.subtract(1, 'week');
       
  5415             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
  5416             break;
       
  5417           case 'ArrowLeft':
       
  5418             e.preventDefault();
       
  5419             if (isRTL) {
       
  5420               newFocusedDate.add(1, 'day');
       
  5421             } else {
       
  5422               newFocusedDate.subtract(1, 'day');
       
  5423             }
       
  5424             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
  5425             break;
       
  5426           case 'Home':
       
  5427             e.preventDefault();
       
  5428             newFocusedDate.startOf('week');
       
  5429             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
  5430             break;
       
  5431           case 'PageUp':
       
  5432             e.preventDefault();
       
  5433             newFocusedDate.subtract(1, 'month');
       
  5434             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
  5435             break;
       
  5436 
       
  5437           case 'ArrowDown':
       
  5438             e.preventDefault();
       
  5439             newFocusedDate.add(1, 'week');
       
  5440             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
  5441             break;
       
  5442           case 'ArrowRight':
       
  5443             e.preventDefault();
       
  5444             if (isRTL) {
       
  5445               newFocusedDate.subtract(1, 'day');
       
  5446             } else {
       
  5447               newFocusedDate.add(1, 'day');
       
  5448             }
       
  5449             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
  5450             break;
       
  5451           case 'End':
       
  5452             e.preventDefault();
       
  5453             newFocusedDate.endOf('week');
       
  5454             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
  5455             break;
       
  5456           case 'PageDown':
       
  5457             e.preventDefault();
       
  5458             newFocusedDate.add(1, 'month');
       
  5459             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
  5460             break;
       
  5461 
       
  5462           case '?':
       
  5463             this.openKeyboardShortcutsPanel(onKeyboardShortcutsPanelClose);
       
  5464             break;
       
  5465 
       
  5466           case 'Escape':
       
  5467             if (showKeyboardShortcuts) {
       
  5468               this.closeKeyboardShortcutsPanel();
       
  5469             } else {
       
  5470               onBlur();
       
  5471             }
       
  5472             break;
       
  5473 
       
  5474           default:
       
  5475             break;
       
  5476         }
       
  5477 
       
  5478         // If there was a month transition, do not update the focused date until the transition has
       
  5479         // completed. Otherwise, attempting to focus on a DOM node may interrupt the CSS animation. If
       
  5480         // didTransitionMonth is true, the focusedDate gets updated in #updateStateAfterMonthTransition
       
  5481         if (!didTransitionMonth) {
       
  5482           this.setState({
       
  5483             focusedDate: newFocusedDate
       
  5484           });
       
  5485         }
       
  5486       }
       
  5487 
       
  5488       return onFinalKeyDown;
       
  5489     }()
       
  5490   }, {
       
  5491     key: 'onPrevMonthClick',
       
  5492     value: function () {
       
  5493       function onPrevMonthClick(nextFocusedDate, e) {
       
  5494         var _props4 = this.props,
       
  5495             daySize = _props4.daySize,
       
  5496             isRTL = _props4.isRTL,
       
  5497             numberOfMonths = _props4.numberOfMonths;
       
  5498         var _state3 = this.state,
       
  5499             calendarMonthWidth = _state3.calendarMonthWidth,
       
  5500             monthTitleHeight = _state3.monthTitleHeight;
       
  5501 
       
  5502 
       
  5503         if (e) e.preventDefault();
       
  5504 
       
  5505         var translationValue = void 0;
       
  5506         if (this.isVertical()) {
       
  5507           var calendarMonthWeeksHeight = this.calendarMonthWeeks[0] * (daySize - 1);
       
  5508           translationValue = monthTitleHeight + calendarMonthWeeksHeight + 1;
       
  5509         } else if (this.isHorizontal()) {
       
  5510           translationValue = calendarMonthWidth;
       
  5511           if (isRTL) {
       
  5512             translationValue = -2 * calendarMonthWidth;
       
  5513           }
       
  5514 
       
  5515           var visibleCalendarWeeks = this.calendarMonthWeeks.slice(0, numberOfMonths);
       
  5516           var _calendarMonthWeeksHeight = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
  5517           var newMonthHeight = monthTitleHeight + _calendarMonthWeeksHeight + 1;
       
  5518           this.adjustDayPickerHeight(newMonthHeight);
       
  5519         }
       
  5520 
       
  5521         this.setState({
       
  5522           monthTransition: PREV_TRANSITION,
       
  5523           translationValue: translationValue,
       
  5524           focusedDate: null,
       
  5525           nextFocusedDate: nextFocusedDate
       
  5526         });
       
  5527       }
       
  5528 
       
  5529       return onPrevMonthClick;
       
  5530     }()
       
  5531   }, {
       
  5532     key: 'onMonthChange',
       
  5533     value: function () {
       
  5534       function onMonthChange(currentMonth) {
       
  5535         this.setCalendarMonthWeeks(currentMonth);
       
  5536         this.calculateAndSetDayPickerHeight();
       
  5537 
       
  5538         // Translation value is a hack to force an invisible transition that
       
  5539         // properly rerenders the CalendarMonthGrid
       
  5540         this.setState({
       
  5541           monthTransition: MONTH_SELECTION_TRANSITION,
       
  5542           translationValue: 0.00001,
       
  5543           focusedDate: null,
       
  5544           nextFocusedDate: currentMonth,
       
  5545           currentMonth: currentMonth
       
  5546         });
       
  5547       }
       
  5548 
       
  5549       return onMonthChange;
       
  5550     }()
       
  5551   }, {
       
  5552     key: 'onYearChange',
       
  5553     value: function () {
       
  5554       function onYearChange(currentMonth) {
       
  5555         this.setCalendarMonthWeeks(currentMonth);
       
  5556         this.calculateAndSetDayPickerHeight();
       
  5557 
       
  5558         // Translation value is a hack to force an invisible transition that
       
  5559         // properly rerenders the CalendarMonthGrid
       
  5560         this.setState({
       
  5561           monthTransition: YEAR_SELECTION_TRANSITION,
       
  5562           translationValue: 0.0001,
       
  5563           focusedDate: null,
       
  5564           nextFocusedDate: currentMonth,
       
  5565           currentMonth: currentMonth
       
  5566         });
       
  5567       }
       
  5568 
       
  5569       return onYearChange;
       
  5570     }()
       
  5571   }, {
       
  5572     key: 'onNextMonthClick',
       
  5573     value: function () {
       
  5574       function onNextMonthClick(nextFocusedDate, e) {
       
  5575         var _props5 = this.props,
       
  5576             isRTL = _props5.isRTL,
       
  5577             numberOfMonths = _props5.numberOfMonths,
       
  5578             daySize = _props5.daySize;
       
  5579         var _state4 = this.state,
       
  5580             calendarMonthWidth = _state4.calendarMonthWidth,
       
  5581             monthTitleHeight = _state4.monthTitleHeight;
       
  5582 
       
  5583 
       
  5584         if (e) e.preventDefault();
       
  5585 
       
  5586         var translationValue = void 0;
       
  5587 
       
  5588         if (this.isVertical()) {
       
  5589           var firstVisibleMonthWeeks = this.calendarMonthWeeks[1];
       
  5590           var calendarMonthWeeksHeight = firstVisibleMonthWeeks * (daySize - 1);
       
  5591           translationValue = -(monthTitleHeight + calendarMonthWeeksHeight + 1);
       
  5592         }
       
  5593 
       
  5594         if (this.isHorizontal()) {
       
  5595           translationValue = -calendarMonthWidth;
       
  5596           if (isRTL) {
       
  5597             translationValue = 0;
       
  5598           }
       
  5599 
       
  5600           var visibleCalendarWeeks = this.calendarMonthWeeks.slice(2, numberOfMonths + 2);
       
  5601           var _calendarMonthWeeksHeight2 = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
  5602           var newMonthHeight = monthTitleHeight + _calendarMonthWeeksHeight2 + 1;
       
  5603           this.adjustDayPickerHeight(newMonthHeight);
       
  5604         }
       
  5605 
       
  5606         this.setState({
       
  5607           monthTransition: NEXT_TRANSITION,
       
  5608           translationValue: translationValue,
       
  5609           focusedDate: null,
       
  5610           nextFocusedDate: nextFocusedDate
       
  5611         });
       
  5612       }
       
  5613 
       
  5614       return onNextMonthClick;
       
  5615     }()
       
  5616   }, {
       
  5617     key: 'getFirstDayOfWeek',
       
  5618     value: function () {
       
  5619       function getFirstDayOfWeek() {
       
  5620         var firstDayOfWeek = this.props.firstDayOfWeek;
       
  5621 
       
  5622         if (firstDayOfWeek == null) {
       
  5623           return _moment2['default'].localeData().firstDayOfWeek();
       
  5624         }
       
  5625 
       
  5626         return firstDayOfWeek;
       
  5627       }
       
  5628 
       
  5629       return getFirstDayOfWeek;
       
  5630     }()
       
  5631   }, {
       
  5632     key: 'getFirstVisibleIndex',
       
  5633     value: function () {
       
  5634       function getFirstVisibleIndex() {
       
  5635         var orientation = this.props.orientation;
       
  5636         var monthTransition = this.state.monthTransition;
       
  5637 
       
  5638 
       
  5639         if (orientation === _constants.VERTICAL_SCROLLABLE) return 0;
       
  5640 
       
  5641         var firstVisibleMonthIndex = 1;
       
  5642         if (monthTransition === PREV_TRANSITION) {
       
  5643           firstVisibleMonthIndex -= 1;
       
  5644         } else if (monthTransition === NEXT_TRANSITION) {
       
  5645           firstVisibleMonthIndex += 1;
       
  5646         }
       
  5647 
       
  5648         return firstVisibleMonthIndex;
       
  5649       }
       
  5650 
       
  5651       return getFirstVisibleIndex;
       
  5652     }()
       
  5653   }, {
       
  5654     key: 'getFocusedDay',
       
  5655     value: function () {
       
  5656       function getFocusedDay(newMonth) {
       
  5657         var _props6 = this.props,
       
  5658             getFirstFocusableDay = _props6.getFirstFocusableDay,
       
  5659             numberOfMonths = _props6.numberOfMonths;
       
  5660 
       
  5661 
       
  5662         var focusedDate = void 0;
       
  5663         if (getFirstFocusableDay) {
       
  5664           focusedDate = getFirstFocusableDay(newMonth);
       
  5665         }
       
  5666 
       
  5667         if (newMonth && (!focusedDate || !(0, _isDayVisible2['default'])(focusedDate, newMonth, numberOfMonths))) {
       
  5668           focusedDate = newMonth.clone().startOf('month');
       
  5669         }
       
  5670 
       
  5671         return focusedDate;
       
  5672       }
       
  5673 
       
  5674       return getFocusedDay;
       
  5675     }()
       
  5676   }, {
       
  5677     key: 'setMonthTitleHeight',
       
  5678     value: function () {
       
  5679       function setMonthTitleHeight(monthTitleHeight) {
       
  5680         var _this3 = this;
       
  5681 
       
  5682         this.setState({
       
  5683           monthTitleHeight: monthTitleHeight
       
  5684         }, function () {
       
  5685           _this3.calculateAndSetDayPickerHeight();
       
  5686         });
       
  5687       }
       
  5688 
       
  5689       return setMonthTitleHeight;
       
  5690     }()
       
  5691   }, {
       
  5692     key: 'setCalendarMonthWeeks',
       
  5693     value: function () {
       
  5694       function setCalendarMonthWeeks(currentMonth) {
       
  5695         var numberOfMonths = this.props.numberOfMonths;
       
  5696 
       
  5697 
       
  5698         this.calendarMonthWeeks = [];
       
  5699         var month = currentMonth.clone().subtract(1, 'months');
       
  5700         var firstDayOfWeek = this.getFirstDayOfWeek();
       
  5701         for (var i = 0; i < numberOfMonths + 2; i += 1) {
       
  5702           var numberOfWeeks = (0, _getNumberOfCalendarMonthWeeks2['default'])(month, firstDayOfWeek);
       
  5703           this.calendarMonthWeeks.push(numberOfWeeks);
       
  5704           month = month.add(1, 'months');
       
  5705         }
       
  5706       }
       
  5707 
       
  5708       return setCalendarMonthWeeks;
       
  5709     }()
       
  5710   }, {
       
  5711     key: 'setContainerRef',
       
  5712     value: function () {
       
  5713       function setContainerRef(ref) {
       
  5714         this.container = ref;
       
  5715       }
       
  5716 
       
  5717       return setContainerRef;
       
  5718     }()
       
  5719   }, {
       
  5720     key: 'setCalendarInfoRef',
       
  5721     value: function () {
       
  5722       function setCalendarInfoRef(ref) {
       
  5723         this.calendarInfo = ref;
       
  5724       }
       
  5725 
       
  5726       return setCalendarInfoRef;
       
  5727     }()
       
  5728   }, {
       
  5729     key: 'setTransitionContainerRef',
       
  5730     value: function () {
       
  5731       function setTransitionContainerRef(ref) {
       
  5732         this.transitionContainer = ref;
       
  5733       }
       
  5734 
       
  5735       return setTransitionContainerRef;
       
  5736     }()
       
  5737   }, {
       
  5738     key: 'maybeTransitionNextMonth',
       
  5739     value: function () {
       
  5740       function maybeTransitionNextMonth(newFocusedDate) {
       
  5741         var numberOfMonths = this.props.numberOfMonths;
       
  5742         var _state5 = this.state,
       
  5743             currentMonth = _state5.currentMonth,
       
  5744             focusedDate = _state5.focusedDate;
       
  5745 
       
  5746 
       
  5747         var newFocusedDateMonth = newFocusedDate.month();
       
  5748         var focusedDateMonth = focusedDate.month();
       
  5749         var isNewFocusedDateVisible = (0, _isDayVisible2['default'])(newFocusedDate, currentMonth, numberOfMonths);
       
  5750         if (newFocusedDateMonth !== focusedDateMonth && !isNewFocusedDateVisible) {
       
  5751           this.onNextMonthClick(newFocusedDate);
       
  5752           return true;
       
  5753         }
       
  5754 
       
  5755         return false;
       
  5756       }
       
  5757 
       
  5758       return maybeTransitionNextMonth;
       
  5759     }()
       
  5760   }, {
       
  5761     key: 'maybeTransitionPrevMonth',
       
  5762     value: function () {
       
  5763       function maybeTransitionPrevMonth(newFocusedDate) {
       
  5764         var numberOfMonths = this.props.numberOfMonths;
       
  5765         var _state6 = this.state,
       
  5766             currentMonth = _state6.currentMonth,
       
  5767             focusedDate = _state6.focusedDate;
       
  5768 
       
  5769 
       
  5770         var newFocusedDateMonth = newFocusedDate.month();
       
  5771         var focusedDateMonth = focusedDate.month();
       
  5772         var isNewFocusedDateVisible = (0, _isDayVisible2['default'])(newFocusedDate, currentMonth, numberOfMonths);
       
  5773         if (newFocusedDateMonth !== focusedDateMonth && !isNewFocusedDateVisible) {
       
  5774           this.onPrevMonthClick(newFocusedDate);
       
  5775           return true;
       
  5776         }
       
  5777 
       
  5778         return false;
       
  5779       }
       
  5780 
       
  5781       return maybeTransitionPrevMonth;
       
  5782     }()
       
  5783   }, {
       
  5784     key: 'multiplyScrollableMonths',
       
  5785     value: function () {
       
  5786       function multiplyScrollableMonths(e) {
       
  5787         var onMultiplyScrollableMonths = this.props.onMultiplyScrollableMonths;
       
  5788 
       
  5789         if (e) e.preventDefault();
       
  5790 
       
  5791         if (onMultiplyScrollableMonths) onMultiplyScrollableMonths(e);
       
  5792 
       
  5793         this.setState(function (_ref) {
       
  5794           var scrollableMonthMultiple = _ref.scrollableMonthMultiple;
       
  5795           return {
       
  5796             scrollableMonthMultiple: scrollableMonthMultiple + 1
       
  5797           };
       
  5798         });
       
  5799       }
       
  5800 
       
  5801       return multiplyScrollableMonths;
       
  5802     }()
       
  5803   }, {
       
  5804     key: 'isHorizontal',
       
  5805     value: function () {
       
  5806       function isHorizontal() {
       
  5807         var orientation = this.props.orientation;
       
  5808 
       
  5809         return orientation === _constants.HORIZONTAL_ORIENTATION;
       
  5810       }
       
  5811 
       
  5812       return isHorizontal;
       
  5813     }()
       
  5814   }, {
       
  5815     key: 'isVertical',
       
  5816     value: function () {
       
  5817       function isVertical() {
       
  5818         var orientation = this.props.orientation;
       
  5819 
       
  5820         return orientation === _constants.VERTICAL_ORIENTATION || orientation === _constants.VERTICAL_SCROLLABLE;
       
  5821       }
       
  5822 
       
  5823       return isVertical;
       
  5824     }()
       
  5825   }, {
       
  5826     key: 'updateStateAfterMonthTransition',
       
  5827     value: function () {
       
  5828       function updateStateAfterMonthTransition() {
       
  5829         var _this4 = this;
       
  5830 
       
  5831         var _props7 = this.props,
       
  5832             onPrevMonthClick = _props7.onPrevMonthClick,
       
  5833             onNextMonthClick = _props7.onNextMonthClick,
       
  5834             numberOfMonths = _props7.numberOfMonths,
       
  5835             onMonthChange = _props7.onMonthChange,
       
  5836             onYearChange = _props7.onYearChange,
       
  5837             isRTL = _props7.isRTL;
       
  5838         var _state7 = this.state,
       
  5839             currentMonth = _state7.currentMonth,
       
  5840             monthTransition = _state7.monthTransition,
       
  5841             focusedDate = _state7.focusedDate,
       
  5842             nextFocusedDate = _state7.nextFocusedDate,
       
  5843             withMouseInteractions = _state7.withMouseInteractions,
       
  5844             calendarMonthWidth = _state7.calendarMonthWidth;
       
  5845 
       
  5846 
       
  5847         if (!monthTransition) return;
       
  5848 
       
  5849         var newMonth = currentMonth.clone();
       
  5850         var firstDayOfWeek = this.getFirstDayOfWeek();
       
  5851         if (monthTransition === PREV_TRANSITION) {
       
  5852           newMonth.subtract(1, 'month');
       
  5853           if (onPrevMonthClick) onPrevMonthClick(newMonth);
       
  5854           var newInvisibleMonth = newMonth.clone().subtract(1, 'month');
       
  5855           var numberOfWeeks = (0, _getNumberOfCalendarMonthWeeks2['default'])(newInvisibleMonth, firstDayOfWeek);
       
  5856           this.calendarMonthWeeks = [numberOfWeeks].concat(_toConsumableArray(this.calendarMonthWeeks.slice(0, -1)));
       
  5857         } else if (monthTransition === NEXT_TRANSITION) {
       
  5858           newMonth.add(1, 'month');
       
  5859           if (onNextMonthClick) onNextMonthClick(newMonth);
       
  5860           var _newInvisibleMonth = newMonth.clone().add(numberOfMonths, 'month');
       
  5861           var _numberOfWeeks = (0, _getNumberOfCalendarMonthWeeks2['default'])(_newInvisibleMonth, firstDayOfWeek);
       
  5862           this.calendarMonthWeeks = [].concat(_toConsumableArray(this.calendarMonthWeeks.slice(1)), [_numberOfWeeks]);
       
  5863         } else if (monthTransition === MONTH_SELECTION_TRANSITION) {
       
  5864           if (onMonthChange) onMonthChange(newMonth);
       
  5865         } else if (monthTransition === YEAR_SELECTION_TRANSITION) {
       
  5866           if (onYearChange) onYearChange(newMonth);
       
  5867         }
       
  5868 
       
  5869         var newFocusedDate = null;
       
  5870         if (nextFocusedDate) {
       
  5871           newFocusedDate = nextFocusedDate;
       
  5872         } else if (!focusedDate && !withMouseInteractions) {
       
  5873           newFocusedDate = this.getFocusedDay(newMonth);
       
  5874         }
       
  5875 
       
  5876         this.setState({
       
  5877           currentMonth: newMonth,
       
  5878           monthTransition: null,
       
  5879           translationValue: isRTL && this.isHorizontal() ? -calendarMonthWidth : 0,
       
  5880           nextFocusedDate: null,
       
  5881           focusedDate: newFocusedDate
       
  5882         }, function () {
       
  5883           // we don't want to focus on the relevant calendar day after a month transition
       
  5884           // if the user is navigating around using a mouse
       
  5885           if (withMouseInteractions) {
       
  5886             var activeElement = (0, _getActiveElement2['default'])();
       
  5887             if (activeElement && activeElement !== document.body && _this4.container.contains(activeElement)) {
       
  5888               activeElement.blur();
       
  5889             }
       
  5890           }
       
  5891         });
       
  5892       }
       
  5893 
       
  5894       return updateStateAfterMonthTransition;
       
  5895     }()
       
  5896   }, {
       
  5897     key: 'adjustDayPickerHeight',
       
  5898     value: function () {
       
  5899       function adjustDayPickerHeight(newMonthHeight) {
       
  5900         var _this5 = this;
       
  5901 
       
  5902         var monthHeight = newMonthHeight + MONTH_PADDING;
       
  5903         if (monthHeight !== this.calendarMonthGridHeight) {
       
  5904           this.transitionContainer.style.height = String(monthHeight) + 'px';
       
  5905           if (!this.calendarMonthGridHeight) {
       
  5906             setTimeout(function () {
       
  5907               _this5.setState({ hasSetHeight: true });
       
  5908             }, 0);
       
  5909           }
       
  5910           this.calendarMonthGridHeight = monthHeight;
       
  5911         }
       
  5912       }
       
  5913 
       
  5914       return adjustDayPickerHeight;
       
  5915     }()
       
  5916   }, {
       
  5917     key: 'calculateAndSetDayPickerHeight',
       
  5918     value: function () {
       
  5919       function calculateAndSetDayPickerHeight() {
       
  5920         var _props8 = this.props,
       
  5921             daySize = _props8.daySize,
       
  5922             numberOfMonths = _props8.numberOfMonths;
       
  5923         var monthTitleHeight = this.state.monthTitleHeight;
       
  5924 
       
  5925 
       
  5926         var visibleCalendarWeeks = this.calendarMonthWeeks.slice(1, numberOfMonths + 1);
       
  5927         var calendarMonthWeeksHeight = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
  5928         var newMonthHeight = monthTitleHeight + calendarMonthWeeksHeight + 1;
       
  5929 
       
  5930         if (this.isHorizontal()) {
       
  5931           this.adjustDayPickerHeight(newMonthHeight);
       
  5932         }
       
  5933       }
       
  5934 
       
  5935       return calculateAndSetDayPickerHeight;
       
  5936     }()
       
  5937   }, {
       
  5938     key: 'openKeyboardShortcutsPanel',
       
  5939     value: function () {
       
  5940       function openKeyboardShortcutsPanel(onCloseCallBack) {
       
  5941         this.setState({
       
  5942           showKeyboardShortcuts: true,
       
  5943           onKeyboardShortcutsPanelClose: onCloseCallBack
       
  5944         });
       
  5945       }
       
  5946 
       
  5947       return openKeyboardShortcutsPanel;
       
  5948     }()
       
  5949   }, {
       
  5950     key: 'closeKeyboardShortcutsPanel',
       
  5951     value: function () {
       
  5952       function closeKeyboardShortcutsPanel() {
       
  5953         var onKeyboardShortcutsPanelClose = this.state.onKeyboardShortcutsPanelClose;
       
  5954 
       
  5955 
       
  5956         if (onKeyboardShortcutsPanelClose) {
       
  5957           onKeyboardShortcutsPanelClose();
       
  5958         }
       
  5959 
       
  5960         this.setState({
       
  5961           onKeyboardShortcutsPanelClose: null,
       
  5962           showKeyboardShortcuts: false
       
  5963         });
       
  5964       }
       
  5965 
       
  5966       return closeKeyboardShortcutsPanel;
       
  5967     }()
       
  5968   }, {
       
  5969     key: 'renderNavigation',
       
  5970     value: function () {
       
  5971       function renderNavigation() {
       
  5972         var _this6 = this;
       
  5973 
       
  5974         var _props9 = this.props,
       
  5975             navPrev = _props9.navPrev,
       
  5976             navNext = _props9.navNext,
       
  5977             noNavButtons = _props9.noNavButtons,
       
  5978             orientation = _props9.orientation,
       
  5979             phrases = _props9.phrases,
       
  5980             isRTL = _props9.isRTL;
       
  5981 
       
  5982 
       
  5983         if (noNavButtons) {
       
  5984           return null;
       
  5985         }
       
  5986 
       
  5987         var onNextMonthClick = void 0;
       
  5988         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
  5989           onNextMonthClick = this.multiplyScrollableMonths;
       
  5990         } else {
       
  5991           onNextMonthClick = function () {
       
  5992             function onNextMonthClick(e) {
       
  5993               _this6.onNextMonthClick(null, e);
       
  5994             }
       
  5995 
       
  5996             return onNextMonthClick;
       
  5997           }();
       
  5998         }
       
  5999 
       
  6000         return _react2['default'].createElement(_DayPickerNavigation2['default'], {
       
  6001           onPrevMonthClick: function () {
       
  6002             function onPrevMonthClick(e) {
       
  6003               _this6.onPrevMonthClick(null, e);
       
  6004             }
       
  6005 
       
  6006             return onPrevMonthClick;
       
  6007           }(),
       
  6008           onNextMonthClick: onNextMonthClick,
       
  6009           navPrev: navPrev,
       
  6010           navNext: navNext,
       
  6011           orientation: orientation,
       
  6012           phrases: phrases,
       
  6013           isRTL: isRTL
       
  6014         });
       
  6015       }
       
  6016 
       
  6017       return renderNavigation;
       
  6018     }()
       
  6019   }, {
       
  6020     key: 'renderWeekHeader',
       
  6021     value: function () {
       
  6022       function renderWeekHeader(index) {
       
  6023         var _props10 = this.props,
       
  6024             daySize = _props10.daySize,
       
  6025             horizontalMonthPadding = _props10.horizontalMonthPadding,
       
  6026             orientation = _props10.orientation,
       
  6027             weekDayFormat = _props10.weekDayFormat,
       
  6028             styles = _props10.styles;
       
  6029         var calendarMonthWidth = this.state.calendarMonthWidth;
       
  6030 
       
  6031         var verticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
  6032         var horizontalStyle = {
       
  6033           left: index * calendarMonthWidth
       
  6034         };
       
  6035         var verticalStyle = {
       
  6036           marginLeft: -calendarMonthWidth / 2
       
  6037         };
       
  6038 
       
  6039         var weekHeaderStyle = {}; // no styles applied to the vertical-scrollable orientation
       
  6040         if (this.isHorizontal()) {
       
  6041           weekHeaderStyle = horizontalStyle;
       
  6042         } else if (this.isVertical() && !verticalScrollable) {
       
  6043           weekHeaderStyle = verticalStyle;
       
  6044         }
       
  6045 
       
  6046         var firstDayOfWeek = this.getFirstDayOfWeek();
       
  6047 
       
  6048         var header = [];
       
  6049         for (var i = 0; i < 7; i += 1) {
       
  6050           header.push(_react2['default'].createElement(
       
  6051             'li',
       
  6052             _extends({ key: i }, (0, _reactWithStyles.css)(styles.DayPicker_weekHeader_li, { width: daySize })),
       
  6053             _react2['default'].createElement(
       
  6054               'small',
       
  6055               null,
       
  6056               (0, _moment2['default'])().day((i + firstDayOfWeek) % 7).format(weekDayFormat)
       
  6057             )
       
  6058           ));
       
  6059         }
       
  6060 
       
  6061         return _react2['default'].createElement(
       
  6062           'div',
       
  6063           _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_weekHeader, this.isVertical() && styles.DayPicker_weekHeader__vertical, verticalScrollable && styles.DayPicker_weekHeader__verticalScrollable, weekHeaderStyle, { padding: '0 ' + String(horizontalMonthPadding) + 'px' }), {
       
  6064             key: 'week-' + String(index)
       
  6065           }),
       
  6066           _react2['default'].createElement(
       
  6067             'ul',
       
  6068             (0, _reactWithStyles.css)(styles.DayPicker_weekHeader_ul),
       
  6069             header
       
  6070           )
       
  6071         );
       
  6072       }
       
  6073 
       
  6074       return renderWeekHeader;
       
  6075     }()
       
  6076   }, {
       
  6077     key: 'render',
       
  6078     value: function () {
       
  6079       function render() {
       
  6080         var _this7 = this;
       
  6081 
       
  6082         var _state8 = this.state,
       
  6083             calendarMonthWidth = _state8.calendarMonthWidth,
       
  6084             currentMonth = _state8.currentMonth,
       
  6085             monthTransition = _state8.monthTransition,
       
  6086             translationValue = _state8.translationValue,
       
  6087             scrollableMonthMultiple = _state8.scrollableMonthMultiple,
       
  6088             focusedDate = _state8.focusedDate,
       
  6089             showKeyboardShortcuts = _state8.showKeyboardShortcuts,
       
  6090             isTouch = _state8.isTouchDevice,
       
  6091             hasSetHeight = _state8.hasSetHeight,
       
  6092             calendarInfoWidth = _state8.calendarInfoWidth,
       
  6093             monthTitleHeight = _state8.monthTitleHeight;
       
  6094         var _props11 = this.props,
       
  6095             enableOutsideDays = _props11.enableOutsideDays,
       
  6096             numberOfMonths = _props11.numberOfMonths,
       
  6097             orientation = _props11.orientation,
       
  6098             modifiers = _props11.modifiers,
       
  6099             withPortal = _props11.withPortal,
       
  6100             onDayClick = _props11.onDayClick,
       
  6101             onDayMouseEnter = _props11.onDayMouseEnter,
       
  6102             onDayMouseLeave = _props11.onDayMouseLeave,
       
  6103             firstDayOfWeek = _props11.firstDayOfWeek,
       
  6104             renderMonthText = _props11.renderMonthText,
       
  6105             renderCalendarDay = _props11.renderCalendarDay,
       
  6106             renderDayContents = _props11.renderDayContents,
       
  6107             renderCalendarInfo = _props11.renderCalendarInfo,
       
  6108             renderMonthElement = _props11.renderMonthElement,
       
  6109             calendarInfoPosition = _props11.calendarInfoPosition,
       
  6110             hideKeyboardShortcutsPanel = _props11.hideKeyboardShortcutsPanel,
       
  6111             onOutsideClick = _props11.onOutsideClick,
       
  6112             monthFormat = _props11.monthFormat,
       
  6113             daySize = _props11.daySize,
       
  6114             isFocused = _props11.isFocused,
       
  6115             isRTL = _props11.isRTL,
       
  6116             styles = _props11.styles,
       
  6117             theme = _props11.theme,
       
  6118             phrases = _props11.phrases,
       
  6119             verticalHeight = _props11.verticalHeight,
       
  6120             dayAriaLabelFormat = _props11.dayAriaLabelFormat,
       
  6121             noBorder = _props11.noBorder,
       
  6122             transitionDuration = _props11.transitionDuration,
       
  6123             verticalBorderSpacing = _props11.verticalBorderSpacing,
       
  6124             horizontalMonthPadding = _props11.horizontalMonthPadding;
       
  6125         var dayPickerHorizontalPadding = theme.reactDates.spacing.dayPickerHorizontalPadding;
       
  6126 
       
  6127 
       
  6128         var isHorizontal = this.isHorizontal();
       
  6129 
       
  6130         var numOfWeekHeaders = this.isVertical() ? 1 : numberOfMonths;
       
  6131         var weekHeaders = [];
       
  6132         for (var i = 0; i < numOfWeekHeaders; i += 1) {
       
  6133           weekHeaders.push(this.renderWeekHeader(i));
       
  6134         }
       
  6135 
       
  6136         var verticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
  6137         var height = void 0;
       
  6138         if (isHorizontal) {
       
  6139           height = this.calendarMonthGridHeight;
       
  6140         } else if (this.isVertical() && !verticalScrollable && !withPortal) {
       
  6141           // If the user doesn't set a desired height,
       
  6142           // we default back to this kind of made-up value that generally looks good
       
  6143           height = verticalHeight || 1.75 * calendarMonthWidth;
       
  6144         }
       
  6145 
       
  6146         var isCalendarMonthGridAnimating = monthTransition !== null;
       
  6147 
       
  6148         var shouldFocusDate = !isCalendarMonthGridAnimating && isFocused;
       
  6149 
       
  6150         var keyboardShortcutButtonLocation = _DayPickerKeyboardShortcuts.BOTTOM_RIGHT;
       
  6151         if (this.isVertical()) {
       
  6152           keyboardShortcutButtonLocation = withPortal ? _DayPickerKeyboardShortcuts.TOP_LEFT : _DayPickerKeyboardShortcuts.TOP_RIGHT;
       
  6153         }
       
  6154 
       
  6155         var shouldAnimateHeight = isHorizontal && hasSetHeight;
       
  6156 
       
  6157         var calendarInfoPositionTop = calendarInfoPosition === _constants.INFO_POSITION_TOP;
       
  6158         var calendarInfoPositionBottom = calendarInfoPosition === _constants.INFO_POSITION_BOTTOM;
       
  6159         var calendarInfoPositionBefore = calendarInfoPosition === _constants.INFO_POSITION_BEFORE;
       
  6160         var calendarInfoPositionAfter = calendarInfoPosition === _constants.INFO_POSITION_AFTER;
       
  6161         var calendarInfoIsInline = calendarInfoPositionBefore || calendarInfoPositionAfter;
       
  6162 
       
  6163         var calendarInfo = renderCalendarInfo && _react2['default'].createElement(
       
  6164           'div',
       
  6165           _extends({
       
  6166             ref: this.setCalendarInfoRef
       
  6167           }, (0, _reactWithStyles.css)(calendarInfoIsInline && styles.DayPicker_calendarInfo__horizontal)),
       
  6168           renderCalendarInfo()
       
  6169         );
       
  6170 
       
  6171         var calendarInfoPanelWidth = renderCalendarInfo && calendarInfoIsInline ? calendarInfoWidth : 0;
       
  6172 
       
  6173         var firstVisibleMonthIndex = this.getFirstVisibleIndex();
       
  6174         var wrapperHorizontalWidth = calendarMonthWidth * numberOfMonths + 2 * dayPickerHorizontalPadding;
       
  6175         // Adding `1px` because of whitespace between 2 inline-block
       
  6176         var fullHorizontalWidth = wrapperHorizontalWidth + calendarInfoPanelWidth + 1;
       
  6177 
       
  6178         var transitionContainerStyle = {
       
  6179           width: isHorizontal && wrapperHorizontalWidth,
       
  6180           height: height
       
  6181         };
       
  6182 
       
  6183         var dayPickerWrapperStyle = {
       
  6184           width: isHorizontal && wrapperHorizontalWidth
       
  6185         };
       
  6186 
       
  6187         var dayPickerStyle = {
       
  6188           width: isHorizontal && fullHorizontalWidth,
       
  6189 
       
  6190           // These values are to center the datepicker (approximately) on the page
       
  6191           marginLeft: isHorizontal && withPortal ? -fullHorizontalWidth / 2 : null,
       
  6192           marginTop: isHorizontal && withPortal ? -calendarMonthWidth / 2 : null
       
  6193         };
       
  6194 
       
  6195         return _react2['default'].createElement(
       
  6196           'div',
       
  6197           _extends({
       
  6198             role: 'application',
       
  6199             'aria-label': phrases.calendarLabel
       
  6200           }, (0, _reactWithStyles.css)(styles.DayPicker, isHorizontal && styles.DayPicker__horizontal, verticalScrollable && styles.DayPicker__verticalScrollable, isHorizontal && withPortal && styles.DayPicker_portal__horizontal, this.isVertical() && withPortal && styles.DayPicker_portal__vertical, dayPickerStyle, !monthTitleHeight && styles.DayPicker__hidden, !noBorder && styles.DayPicker__withBorder)),
       
  6201           _react2['default'].createElement(
       
  6202             _reactOutsideClickHandler2['default'],
       
  6203             { onOutsideClick: onOutsideClick },
       
  6204             (calendarInfoPositionTop || calendarInfoPositionBefore) && calendarInfo,
       
  6205             _react2['default'].createElement(
       
  6206               'div',
       
  6207               (0, _reactWithStyles.css)(dayPickerWrapperStyle, calendarInfoIsInline && isHorizontal && styles.DayPicker_wrapper__horizontal),
       
  6208               _react2['default'].createElement(
       
  6209                 'div',
       
  6210                 _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_weekHeaders, isHorizontal && styles.DayPicker_weekHeaders__horizontal), {
       
  6211                   'aria-hidden': 'true',
       
  6212                   role: 'presentation'
       
  6213                 }),
       
  6214                 weekHeaders
       
  6215               ),
       
  6216               _react2['default'].createElement(
       
  6217                 'div',
       
  6218                 _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_focusRegion), {
       
  6219                   ref: this.setContainerRef,
       
  6220                   onClick: function () {
       
  6221                     function onClick(e) {
       
  6222                       e.stopPropagation();
       
  6223                     }
       
  6224 
       
  6225                     return onClick;
       
  6226                   }(),
       
  6227                   onKeyDown: this.onKeyDown,
       
  6228                   onMouseUp: function () {
       
  6229                     function onMouseUp() {
       
  6230                       _this7.setState({ withMouseInteractions: true });
       
  6231                     }
       
  6232 
       
  6233                     return onMouseUp;
       
  6234                   }(),
       
  6235                   role: 'region',
       
  6236                   tabIndex: -1
       
  6237                 }),
       
  6238                 !verticalScrollable && this.renderNavigation(),
       
  6239                 _react2['default'].createElement(
       
  6240                   'div',
       
  6241                   _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_transitionContainer, shouldAnimateHeight && styles.DayPicker_transitionContainer__horizontal, this.isVertical() && styles.DayPicker_transitionContainer__vertical, verticalScrollable && styles.DayPicker_transitionContainer__verticalScrollable, transitionContainerStyle), {
       
  6242                     ref: this.setTransitionContainerRef
       
  6243                   }),
       
  6244                   _react2['default'].createElement(_CalendarMonthGrid2['default'], {
       
  6245                     setMonthTitleHeight: !monthTitleHeight ? this.setMonthTitleHeight : undefined,
       
  6246                     translationValue: translationValue,
       
  6247                     enableOutsideDays: enableOutsideDays,
       
  6248                     firstVisibleMonthIndex: firstVisibleMonthIndex,
       
  6249                     initialMonth: currentMonth,
       
  6250                     isAnimating: isCalendarMonthGridAnimating,
       
  6251                     modifiers: modifiers,
       
  6252                     orientation: orientation,
       
  6253                     numberOfMonths: numberOfMonths * scrollableMonthMultiple,
       
  6254                     onDayClick: onDayClick,
       
  6255                     onDayMouseEnter: onDayMouseEnter,
       
  6256                     onDayMouseLeave: onDayMouseLeave,
       
  6257                     onMonthChange: this.onMonthChange,
       
  6258                     onYearChange: this.onYearChange,
       
  6259                     renderMonthText: renderMonthText,
       
  6260                     renderCalendarDay: renderCalendarDay,
       
  6261                     renderDayContents: renderDayContents,
       
  6262                     renderMonthElement: renderMonthElement,
       
  6263                     onMonthTransitionEnd: this.updateStateAfterMonthTransition,
       
  6264                     monthFormat: monthFormat,
       
  6265                     daySize: daySize,
       
  6266                     firstDayOfWeek: firstDayOfWeek,
       
  6267                     isFocused: shouldFocusDate,
       
  6268                     focusedDate: focusedDate,
       
  6269                     phrases: phrases,
       
  6270                     isRTL: isRTL,
       
  6271                     dayAriaLabelFormat: dayAriaLabelFormat,
       
  6272                     transitionDuration: transitionDuration,
       
  6273                     verticalBorderSpacing: verticalBorderSpacing,
       
  6274                     horizontalMonthPadding: horizontalMonthPadding
       
  6275                   }),
       
  6276                   verticalScrollable && this.renderNavigation()
       
  6277                 ),
       
  6278                 !isTouch && !hideKeyboardShortcutsPanel && _react2['default'].createElement(_DayPickerKeyboardShortcuts2['default'], {
       
  6279                   block: this.isVertical() && !withPortal,
       
  6280                   buttonLocation: keyboardShortcutButtonLocation,
       
  6281                   showKeyboardShortcutsPanel: showKeyboardShortcuts,
       
  6282                   openKeyboardShortcutsPanel: this.openKeyboardShortcutsPanel,
       
  6283                   closeKeyboardShortcutsPanel: this.closeKeyboardShortcutsPanel,
       
  6284                   phrases: phrases
       
  6285                 })
       
  6286               )
       
  6287             ),
       
  6288             (calendarInfoPositionBottom || calendarInfoPositionAfter) && calendarInfo
       
  6289           )
       
  6290         );
       
  6291       }
       
  6292 
       
  6293       return render;
       
  6294     }()
       
  6295   }]);
       
  6296 
       
  6297   return DayPicker;
       
  6298 }(_react2['default'].Component);
       
  6299 
       
  6300 DayPicker.propTypes = propTypes;
       
  6301 DayPicker.defaultProps = defaultProps;
       
  6302 
       
  6303 exports.PureDayPicker = DayPicker;
       
  6304 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
  6305   var _ref2$reactDates = _ref2.reactDates,
       
  6306       color = _ref2$reactDates.color,
       
  6307       font = _ref2$reactDates.font,
       
  6308       noScrollBarOnVerticalScrollable = _ref2$reactDates.noScrollBarOnVerticalScrollable,
       
  6309       spacing = _ref2$reactDates.spacing,
       
  6310       zIndex = _ref2$reactDates.zIndex;
       
  6311   return {
       
  6312     DayPicker: {
       
  6313       background: color.background,
       
  6314       position: 'relative',
       
  6315       textAlign: 'left'
       
  6316     },
       
  6317 
       
  6318     DayPicker__horizontal: {
       
  6319       background: color.background
       
  6320     },
       
  6321 
       
  6322     DayPicker__verticalScrollable: {
       
  6323       height: '100%'
       
  6324     },
       
  6325 
       
  6326     DayPicker__hidden: {
       
  6327       visibility: 'hidden'
       
  6328     },
       
  6329 
       
  6330     DayPicker__withBorder: {
       
  6331       boxShadow: '0 2px 6px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.07)',
       
  6332       borderRadius: 3
       
  6333     },
       
  6334 
       
  6335     DayPicker_portal__horizontal: {
       
  6336       boxShadow: 'none',
       
  6337       position: 'absolute',
       
  6338       left: '50%',
       
  6339       top: '50%'
       
  6340     },
       
  6341 
       
  6342     DayPicker_portal__vertical: {
       
  6343       position: 'initial'
       
  6344     },
       
  6345 
       
  6346     DayPicker_focusRegion: {
       
  6347       outline: 'none'
       
  6348     },
       
  6349 
       
  6350     DayPicker_calendarInfo__horizontal: {
       
  6351       display: 'inline-block',
       
  6352       verticalAlign: 'top'
       
  6353     },
       
  6354 
       
  6355     DayPicker_wrapper__horizontal: {
       
  6356       display: 'inline-block',
       
  6357       verticalAlign: 'top'
       
  6358     },
       
  6359 
       
  6360     DayPicker_weekHeaders: {
       
  6361       position: 'relative'
       
  6362     },
       
  6363 
       
  6364     DayPicker_weekHeaders__horizontal: {
       
  6365       marginLeft: spacing.dayPickerHorizontalPadding
       
  6366     },
       
  6367 
       
  6368     DayPicker_weekHeader: {
       
  6369       color: color.placeholderText,
       
  6370       position: 'absolute',
       
  6371       top: 62,
       
  6372       zIndex: zIndex + 2,
       
  6373       textAlign: 'left'
       
  6374     },
       
  6375 
       
  6376     DayPicker_weekHeader__vertical: {
       
  6377       left: '50%'
       
  6378     },
       
  6379 
       
  6380     DayPicker_weekHeader__verticalScrollable: {
       
  6381       top: 0,
       
  6382       display: 'table-row',
       
  6383       borderBottom: '1px solid ' + String(color.core.border),
       
  6384       background: color.background,
       
  6385       marginLeft: 0,
       
  6386       left: 0,
       
  6387       width: '100%',
       
  6388       textAlign: 'center'
       
  6389     },
       
  6390 
       
  6391     DayPicker_weekHeader_ul: {
       
  6392       listStyle: 'none',
       
  6393       margin: '1px 0',
       
  6394       paddingLeft: 0,
       
  6395       paddingRight: 0,
       
  6396       fontSize: font.size
       
  6397     },
       
  6398 
       
  6399     DayPicker_weekHeader_li: {
       
  6400       display: 'inline-block',
       
  6401       textAlign: 'center'
       
  6402     },
       
  6403 
       
  6404     DayPicker_transitionContainer: {
       
  6405       position: 'relative',
       
  6406       overflow: 'hidden',
       
  6407       borderRadius: 3
       
  6408     },
       
  6409 
       
  6410     DayPicker_transitionContainer__horizontal: {
       
  6411       transition: 'height 0.2s ease-in-out'
       
  6412     },
       
  6413 
       
  6414     DayPicker_transitionContainer__vertical: {
       
  6415       width: '100%'
       
  6416     },
       
  6417 
       
  6418     DayPicker_transitionContainer__verticalScrollable: (0, _object2['default'])({
       
  6419       paddingTop: 20,
       
  6420       height: '100%',
       
  6421       position: 'absolute',
       
  6422       top: 0,
       
  6423       bottom: 0,
       
  6424       right: 0,
       
  6425       left: 0,
       
  6426       overflowY: 'scroll'
       
  6427     }, noScrollBarOnVerticalScrollable && {
       
  6428       '-webkitOverflowScrolling': 'touch',
       
  6429       '::-webkit-scrollbar': {
       
  6430         '-webkit-appearance': 'none',
       
  6431         display: 'none'
       
  6432       }
       
  6433     })
       
  6434   };
       
  6435 })(DayPicker);
       
  6436 
       
  6437 /***/ }),
       
  6438 /* 132 */,
       
  6439 /* 133 */,
       
  6440 /* 134 */,
       
  6441 /* 135 */,
       
  6442 /* 136 */,
       
  6443 /* 137 */,
       
  6444 /* 138 */,
       
  6445 /* 139 */,
       
  6446 /* 140 */
       
  6447 /***/ (function(module, exports, __webpack_require__) {
       
  6448 
       
  6449 "use strict";
       
  6450 
       
  6451 
       
  6452 /**
       
  6453  * Copyright 2015, Yahoo! Inc.
       
  6454  * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
       
  6455  */
       
  6456 var REACT_STATICS = {
       
  6457     childContextTypes: true,
       
  6458     contextTypes: true,
       
  6459     defaultProps: true,
       
  6460     displayName: true,
       
  6461     getDefaultProps: true,
       
  6462     getDerivedStateFromProps: true,
       
  6463     mixins: true,
       
  6464     propTypes: true,
       
  6465     type: true
       
  6466 };
       
  6467 
       
  6468 var KNOWN_STATICS = {
       
  6469     name: true,
       
  6470     length: true,
       
  6471     prototype: true,
       
  6472     caller: true,
       
  6473     callee: true,
       
  6474     arguments: true,
       
  6475     arity: true
       
  6476 };
       
  6477 
       
  6478 var defineProperty = Object.defineProperty;
       
  6479 var getOwnPropertyNames = Object.getOwnPropertyNames;
       
  6480 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
       
  6481 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
       
  6482 var getPrototypeOf = Object.getPrototypeOf;
       
  6483 var objectPrototype = getPrototypeOf && getPrototypeOf(Object);
       
  6484 
       
  6485 function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
       
  6486     if (typeof sourceComponent !== 'string') { // don't hoist over string (html) components
       
  6487 
       
  6488         if (objectPrototype) {
       
  6489             var inheritedComponent = getPrototypeOf(sourceComponent);
       
  6490             if (inheritedComponent && inheritedComponent !== objectPrototype) {
       
  6491                 hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
       
  6492             }
       
  6493         }
       
  6494 
       
  6495         var keys = getOwnPropertyNames(sourceComponent);
       
  6496 
       
  6497         if (getOwnPropertySymbols) {
       
  6498             keys = keys.concat(getOwnPropertySymbols(sourceComponent));
       
  6499         }
       
  6500 
       
  6501         for (var i = 0; i < keys.length; ++i) {
       
  6502             var key = keys[i];
       
  6503             if (!REACT_STATICS[key] && !KNOWN_STATICS[key] && (!blacklist || !blacklist[key])) {
       
  6504                 var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
       
  6505                 try { // Avoid failures from read-only properties
       
  6506                     defineProperty(targetComponent, key, descriptor);
       
  6507                 } catch (e) {}
       
  6508             }
       
  6509         }
       
  6510 
       
  6511         return targetComponent;
       
  6512     }
       
  6513 
       
  6514     return targetComponent;
       
  6515 }
       
  6516 
       
  6517 module.exports = hoistNonReactStatics;
       
  6518 
       
  6519 
       
  6520 /***/ }),
       
  6521 /* 141 */
       
  6522 /***/ (function(module, exports, __webpack_require__) {
       
  6523 
       
  6524 "use strict";
       
  6525 
       
  6526 
       
  6527 // modified from https://github.com/es-shims/es5-shim
       
  6528 var has = Object.prototype.hasOwnProperty;
       
  6529 var toStr = Object.prototype.toString;
       
  6530 var slice = Array.prototype.slice;
 15087 var slice = Array.prototype.slice;
  6531 var isArgs = __webpack_require__(266);
 15088 var isArgs = __webpack_require__(206);
  6532 var isEnumerable = Object.prototype.propertyIsEnumerable;
 15089 
  6533 var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');
 15090 var origKeys = Object.keys;
  6534 var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');
 15091 var keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(311);
  6535 var dontEnums = [
 15092 
  6536 	'toString',
 15093 var originalKeys = Object.keys;
  6537 	'toLocaleString',
       
  6538 	'valueOf',
       
  6539 	'hasOwnProperty',
       
  6540 	'isPrototypeOf',
       
  6541 	'propertyIsEnumerable',
       
  6542 	'constructor'
       
  6543 ];
       
  6544 var equalsConstructorPrototype = function (o) {
       
  6545 	var ctor = o.constructor;
       
  6546 	return ctor && ctor.prototype === o;
       
  6547 };
       
  6548 var excludedKeys = {
       
  6549 	$console: true,
       
  6550 	$external: true,
       
  6551 	$frame: true,
       
  6552 	$frameElement: true,
       
  6553 	$frames: true,
       
  6554 	$innerHeight: true,
       
  6555 	$innerWidth: true,
       
  6556 	$outerHeight: true,
       
  6557 	$outerWidth: true,
       
  6558 	$pageXOffset: true,
       
  6559 	$pageYOffset: true,
       
  6560 	$parent: true,
       
  6561 	$scrollLeft: true,
       
  6562 	$scrollTop: true,
       
  6563 	$scrollX: true,
       
  6564 	$scrollY: true,
       
  6565 	$self: true,
       
  6566 	$webkitIndexedDB: true,
       
  6567 	$webkitStorageInfo: true,
       
  6568 	$window: true
       
  6569 };
       
  6570 var hasAutomationEqualityBug = (function () {
       
  6571 	/* global window */
       
  6572 	if (typeof window === 'undefined') { return false; }
       
  6573 	for (var k in window) {
       
  6574 		try {
       
  6575 			if (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {
       
  6576 				try {
       
  6577 					equalsConstructorPrototype(window[k]);
       
  6578 				} catch (e) {
       
  6579 					return true;
       
  6580 				}
       
  6581 			}
       
  6582 		} catch (e) {
       
  6583 			return true;
       
  6584 		}
       
  6585 	}
       
  6586 	return false;
       
  6587 }());
       
  6588 var equalsConstructorPrototypeIfNotBuggy = function (o) {
       
  6589 	/* global window */
       
  6590 	if (typeof window === 'undefined' || !hasAutomationEqualityBug) {
       
  6591 		return equalsConstructorPrototype(o);
       
  6592 	}
       
  6593 	try {
       
  6594 		return equalsConstructorPrototype(o);
       
  6595 	} catch (e) {
       
  6596 		return false;
       
  6597 	}
       
  6598 };
       
  6599 
       
  6600 var keysShim = function keys(object) {
       
  6601 	var isObject = object !== null && typeof object === 'object';
       
  6602 	var isFunction = toStr.call(object) === '[object Function]';
       
  6603 	var isArguments = isArgs(object);
       
  6604 	var isString = isObject && toStr.call(object) === '[object String]';
       
  6605 	var theKeys = [];
       
  6606 
       
  6607 	if (!isObject && !isFunction && !isArguments) {
       
  6608 		throw new TypeError('Object.keys called on a non-object');
       
  6609 	}
       
  6610 
       
  6611 	var skipProto = hasProtoEnumBug && isFunction;
       
  6612 	if (isString && object.length > 0 && !has.call(object, 0)) {
       
  6613 		for (var i = 0; i < object.length; ++i) {
       
  6614 			theKeys.push(String(i));
       
  6615 		}
       
  6616 	}
       
  6617 
       
  6618 	if (isArguments && object.length > 0) {
       
  6619 		for (var j = 0; j < object.length; ++j) {
       
  6620 			theKeys.push(String(j));
       
  6621 		}
       
  6622 	} else {
       
  6623 		for (var name in object) {
       
  6624 			if (!(skipProto && name === 'prototype') && has.call(object, name)) {
       
  6625 				theKeys.push(String(name));
       
  6626 			}
       
  6627 		}
       
  6628 	}
       
  6629 
       
  6630 	if (hasDontEnumBug) {
       
  6631 		var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
       
  6632 
       
  6633 		for (var k = 0; k < dontEnums.length; ++k) {
       
  6634 			if (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {
       
  6635 				theKeys.push(dontEnums[k]);
       
  6636 			}
       
  6637 		}
       
  6638 	}
       
  6639 	return theKeys;
       
  6640 };
       
  6641 
 15094 
  6642 keysShim.shim = function shimObjectKeys() {
 15095 keysShim.shim = function shimObjectKeys() {
  6643 	if (Object.keys) {
 15096 	if (Object.keys) {
  6644 		var keysWorksWithArguments = (function () {
 15097 		var keysWorksWithArguments = (function () {
  6645 			// Safari 5.0 bug
 15098 			// Safari 5.0 bug
  6646 			return (Object.keys(arguments) || '').length === 2;
 15099 			var args = Object.keys(arguments);
       
 15100 			return args && args.length === arguments.length;
  6647 		}(1, 2));
 15101 		}(1, 2));
  6648 		if (!keysWorksWithArguments) {
 15102 		if (!keysWorksWithArguments) {
  6649 			var originalKeys = Object.keys;
 15103 			Object.keys = function keys(object) { // eslint-disable-line func-name-matching
  6650 			Object.keys = function keys(object) {
       
  6651 				if (isArgs(object)) {
 15104 				if (isArgs(object)) {
  6652 					return originalKeys(slice.call(object));
 15105 					return originalKeys(slice.call(object));
  6653 				} else {
       
  6654 					return originalKeys(object);
       
  6655 				}
 15106 				}
       
 15107 				return originalKeys(object);
  6656 			};
 15108 			};
  6657 		}
 15109 		}
  6658 	} else {
 15110 	} else {
  6659 		Object.keys = keysShim;
 15111 		Object.keys = keysShim;
  6660 	}
 15112 	}
  6663 
 15115 
  6664 module.exports = keysShim;
 15116 module.exports = keysShim;
  6665 
 15117 
  6666 
 15118 
  6667 /***/ }),
 15119 /***/ }),
  6668 /* 142 */
 15120 /* 182 */
  6669 /***/ (function(module, exports, __webpack_require__) {
 15121 /***/ (function(module, exports, __webpack_require__) {
  6670 
 15122 
  6671 "use strict";
 15123 "use strict";
  6672 
 15124 
  6673 
 15125 
  6674 var ES = __webpack_require__(269);
 15126 var bind = __webpack_require__(118);
  6675 
 15127 
  6676 var MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER || (Math.pow(2, 53) - 1);
 15128 var GetIntrinsic = __webpack_require__(58);
  6677 
 15129 
  6678 // eslint-disable-next-line max-params, max-statements
 15130 var $apply = GetIntrinsic('%Function.prototype.apply%');
  6679 var FlattenIntoArray = function FlattenIntoArray(target, source, sourceLen, start, depth) {
 15131 var $call = GetIntrinsic('%Function.prototype.call%');
  6680 	var targetIndex = start;
 15132 var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);
  6681 	var sourceIndex = 0;
 15133 
  6682 
 15134 module.exports = function callBind() {
  6683 	/*
 15135 	return $reflectApply(bind, $call, arguments);
  6684 	var mapperFunction;
 15136 };
  6685 	if (arguments.length > 5) {
 15137 
  6686 		mapperFunction = arguments[5];
 15138 module.exports.apply = function applyBind() {
       
 15139 	return $reflectApply(bind, $apply, arguments);
       
 15140 };
       
 15141 
       
 15142 
       
 15143 /***/ }),
       
 15144 /* 183 */
       
 15145 /***/ (function(module, exports, __webpack_require__) {
       
 15146 
       
 15147 "use strict";
       
 15148 
       
 15149 
       
 15150 var GetIntrinsic = __webpack_require__(58);
       
 15151 
       
 15152 var $TypeError = GetIntrinsic('%TypeError%');
       
 15153 
       
 15154 var inspect = __webpack_require__(315);
       
 15155 
       
 15156 var IsPropertyKey = __webpack_require__(128);
       
 15157 var Type = __webpack_require__(90);
       
 15158 
       
 15159 /**
       
 15160  * 7.3.1 Get (O, P) - https://ecma-international.org/ecma-262/6.0/#sec-get-o-p
       
 15161  * 1. Assert: Type(O) is Object.
       
 15162  * 2. Assert: IsPropertyKey(P) is true.
       
 15163  * 3. Return O.[[Get]](P, O).
       
 15164  */
       
 15165 
       
 15166 module.exports = function Get(O, P) {
       
 15167 	// 7.3.1.1
       
 15168 	if (Type(O) !== 'Object') {
       
 15169 		throw new $TypeError('Assertion failed: Type(O) is not Object');
  6687 	}
 15170 	}
  6688 	*/
 15171 	// 7.3.1.2
  6689 
 15172 	if (!IsPropertyKey(P)) {
  6690 	while (sourceIndex < sourceLen) {
 15173 		throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true, got ' + inspect(P));
  6691 		var P = ES.ToString(sourceIndex);
 15174 	}
  6692 		var exists = ES.HasProperty(source, P);
 15175 	// 7.3.1.3
  6693 		if (exists) {
 15176 	return O[P];
  6694 			var element = ES.Get(source, P);
 15177 };
  6695 			/*
 15178 
  6696 			if (typeof mapperFunction !== 'undefined') {
 15179 
  6697 				if (arguments.length <= 6) {
 15180 /***/ }),
  6698 					throw new TypeError('Assertion failed: thisArg is required when mapperFunction is provided');
 15181 /* 184 */
  6699 				}
 15182 /***/ (function(module, exports, __webpack_require__) {
  6700 				element = ES.Call(mapperFunction, arguments[6], [element, sourceIndex, source]);
 15183 
  6701 			}
 15184 "use strict";
  6702 			*/
 15185 
  6703 			var shouldFlatten = false;
 15186 
  6704 			if (depth > 0) {
 15187 var GetIntrinsic = __webpack_require__(58);
  6705 				shouldFlatten = ES.IsArray(element);
 15188 
  6706 			}
 15189 var $Array = GetIntrinsic('%Array%');
  6707 			if (shouldFlatten) {
 15190 
  6708 				var elementLen = ES.ToLength(ES.Get(element, 'length'));
 15191 // eslint-disable-next-line global-require
  6709 				targetIndex = FlattenIntoArray(target, element, elementLen, targetIndex, depth - 1);
 15192 var toStr = !$Array.isArray && __webpack_require__(140)('Object.prototype.toString');
  6710 			} else {
 15193 
  6711 				if (targetIndex >= MAX_SAFE_INTEGER) {
 15194 // https://www.ecma-international.org/ecma-262/6.0/#sec-isarray
  6712 					throw new TypeError('index too large');
 15195 
  6713 				}
 15196 module.exports = $Array.isArray || function IsArray(argument) {
  6714 				ES.CreateDataPropertyOrThrow(target, ES.ToString(targetIndex), element);
 15197 	return toStr(argument) === '[object Array]';
  6715 				targetIndex += 1;
 15198 };
       
 15199 
       
 15200 
       
 15201 /***/ }),
       
 15202 /* 185 */
       
 15203 /***/ (function(module, exports, __webpack_require__) {
       
 15204 
       
 15205 "use strict";
       
 15206 
       
 15207 
       
 15208 var GetIntrinsic = __webpack_require__(58);
       
 15209 
       
 15210 var $TypeError = GetIntrinsic('%TypeError%');
       
 15211 var $SyntaxError = GetIntrinsic('%SyntaxError%');
       
 15212 
       
 15213 var has = __webpack_require__(91);
       
 15214 
       
 15215 var predicates = {
       
 15216 	// https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
       
 15217 	'Property Descriptor': function isPropertyDescriptor(Type, Desc) {
       
 15218 		if (Type(Desc) !== 'Object') {
       
 15219 			return false;
       
 15220 		}
       
 15221 		var allowed = {
       
 15222 			'[[Configurable]]': true,
       
 15223 			'[[Enumerable]]': true,
       
 15224 			'[[Get]]': true,
       
 15225 			'[[Set]]': true,
       
 15226 			'[[Value]]': true,
       
 15227 			'[[Writable]]': true
       
 15228 		};
       
 15229 
       
 15230 		for (var key in Desc) { // eslint-disable-line
       
 15231 			if (has(Desc, key) && !allowed[key]) {
       
 15232 				return false;
  6716 			}
 15233 			}
  6717 		}
 15234 		}
  6718 		sourceIndex += 1;
 15235 
       
 15236 		var isData = has(Desc, '[[Value]]');
       
 15237 		var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
       
 15238 		if (isData && IsAccessor) {
       
 15239 			throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
       
 15240 		}
       
 15241 		return true;
  6719 	}
 15242 	}
  6720 
       
  6721 	return targetIndex;
       
  6722 };
 15243 };
  6723 
 15244 
  6724 module.exports = function flat() {
 15245 module.exports = function assertRecord(Type, recordType, argumentName, value) {
  6725 	var O = ES.ToObject(this);
 15246 	var predicate = predicates[recordType];
  6726 	var sourceLen = ES.ToLength(ES.Get(O, 'length'));
 15247 	if (typeof predicate !== 'function') {
  6727 
 15248 		throw new $SyntaxError('unknown record type: ' + recordType);
  6728 	var depthNum = 1;
       
  6729 	if (arguments.length > 0 && typeof arguments[0] !== 'undefined') {
       
  6730 		depthNum = ES.ToInteger(arguments[0]);
       
  6731 	}
 15249 	}
  6732 
 15250 	if (!predicate(Type, value)) {
  6733 	var A = ES.ArraySpeciesCreate(O, 0);
 15251 		throw new $TypeError(argumentName + ' must be a ' + recordType);
  6734 	FlattenIntoArray(A, O, sourceLen, 0, depthNum);
 15252 	}
  6735 	return A;
       
  6736 };
 15253 };
  6737 
 15254 
  6738 
 15255 
  6739 /***/ }),
 15256 /***/ }),
  6740 /* 143 */
 15257 /* 186 */
  6741 /***/ (function(module, exports, __webpack_require__) {
 15258 /***/ (function(module, exports, __webpack_require__) {
  6742 
 15259 
  6743 "use strict";
 15260 "use strict";
  6744 
 15261 
  6745 
 15262 
  6746 var ES2015 = __webpack_require__(270);
 15263 module.exports = Number.isNaN || function isNaN(a) {
  6747 var assign = __webpack_require__(124);
 15264 	return a !== a;
  6748 
 15265 };
  6749 var ES2016 = assign(assign({}, ES2015), {
       
  6750 	// https://github.com/tc39/ecma262/pull/60
       
  6751 	SameValueNonNumber: function SameValueNonNumber(x, y) {
       
  6752 		if (typeof x === 'number' || typeof x !== typeof y) {
       
  6753 			throw new TypeError('SameValueNonNumber requires two non-number values of the same type.');
       
  6754 		}
       
  6755 		return this.SameValue(x, y);
       
  6756 	}
       
  6757 });
       
  6758 
       
  6759 module.exports = ES2016;
       
  6760 
 15266 
  6761 
 15267 
  6762 /***/ }),
 15268 /***/ }),
  6763 /* 144 */
 15269 /* 187 */
  6764 /***/ (function(module, exports) {
       
  6765 
       
  6766 module.exports = function isPrimitive(value) {
       
  6767 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
       
  6768 };
       
  6769 
       
  6770 
       
  6771 /***/ }),
       
  6772 /* 145 */
       
  6773 /***/ (function(module, exports, __webpack_require__) {
 15270 /***/ (function(module, exports, __webpack_require__) {
  6774 
 15271 
  6775 "use strict";
 15272 "use strict";
  6776 
 15273 
  6777 
 15274 
  6778 var toStr = Object.prototype.toString;
 15275 var toStr = Object.prototype.toString;
  6779 var hasSymbols = __webpack_require__(274)();
 15276 var hasSymbols = __webpack_require__(342)();
  6780 
 15277 
  6781 if (hasSymbols) {
 15278 if (hasSymbols) {
  6782 	var symToStr = Symbol.prototype.toString;
 15279 	var symToStr = Symbol.prototype.toString;
  6783 	var symStringRegex = /^Symbol\(.*\)$/;
 15280 	var symStringRegex = /^Symbol\(.*\)$/;
  6784 	var isSymbolObject = function isRealSymbolObject(value) {
 15281 	var isSymbolObject = function isRealSymbolObject(value) {
  6809 	};
 15306 	};
  6810 }
 15307 }
  6811 
 15308 
  6812 
 15309 
  6813 /***/ }),
 15310 /***/ }),
  6814 /* 146 */
 15311 /* 188 */
  6815 /***/ (function(module, exports, __webpack_require__) {
 15312 /***/ (function(module, exports, __webpack_require__) {
  6816 
 15313 
  6817 "use strict";
 15314 "use strict";
  6818 
 15315 
  6819 
 15316 
  6820 /* eslint complexity: [2, 17], max-statements: [2, 33] */
 15317 var fnToStr = Function.prototype.toString;
  6821 module.exports = function hasSymbols() {
 15318 
  6822 	if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
 15319 var constructorRegex = /^\s*class\b/;
  6823 	if (typeof Symbol.iterator === 'symbol') { return true; }
 15320 var isES6ClassFn = function isES6ClassFunction(value) {
  6824 
 15321 	try {
  6825 	var obj = {};
 15322 		var fnStr = fnToStr.call(value);
  6826 	var sym = Symbol('test');
 15323 		return constructorRegex.test(fnStr);
  6827 	var symObj = Object(sym);
 15324 	} catch (e) {
  6828 	if (typeof sym === 'string') { return false; }
 15325 		return false; // not a function
  6829 
       
  6830 	if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
       
  6831 	if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
       
  6832 
       
  6833 	// temp disabled per https://github.com/ljharb/object.assign/issues/17
       
  6834 	// if (sym instanceof Symbol) { return false; }
       
  6835 	// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
       
  6836 	// if (!(symObj instanceof Symbol)) { return false; }
       
  6837 
       
  6838 	// if (typeof Symbol.prototype.toString !== 'function') { return false; }
       
  6839 	// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
       
  6840 
       
  6841 	var symVal = 42;
       
  6842 	obj[sym] = symVal;
       
  6843 	for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax
       
  6844 	if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
       
  6845 
       
  6846 	if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
       
  6847 
       
  6848 	var syms = Object.getOwnPropertySymbols(obj);
       
  6849 	if (syms.length !== 1 || syms[0] !== sym) { return false; }
       
  6850 
       
  6851 	if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
       
  6852 
       
  6853 	if (typeof Object.getOwnPropertyDescriptor === 'function') {
       
  6854 		var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
       
  6855 		if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
       
  6856 	}
 15326 	}
  6857 
       
  6858 	return true;
       
  6859 };
 15327 };
  6860 
 15328 
       
 15329 var tryFunctionObject = function tryFunctionToStr(value) {
       
 15330 	try {
       
 15331 		if (isES6ClassFn(value)) { return false; }
       
 15332 		fnToStr.call(value);
       
 15333 		return true;
       
 15334 	} catch (e) {
       
 15335 		return false;
       
 15336 	}
       
 15337 };
       
 15338 var toStr = Object.prototype.toString;
       
 15339 var fnClass = '[object Function]';
       
 15340 var genClass = '[object GeneratorFunction]';
       
 15341 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
 15342 
       
 15343 module.exports = function isCallable(value) {
       
 15344 	if (!value) { return false; }
       
 15345 	if (typeof value !== 'function' && typeof value !== 'object') { return false; }
       
 15346 	if (typeof value === 'function' && !value.prototype) { return true; }
       
 15347 	if (hasToStringTag) { return tryFunctionObject(value); }
       
 15348 	if (isES6ClassFn(value)) { return false; }
       
 15349 	var strClass = toStr.call(value);
       
 15350 	return strClass === fnClass || strClass === genClass;
       
 15351 };
       
 15352 
  6861 
 15353 
  6862 /***/ }),
 15354 /***/ }),
  6863 /* 147 */
 15355 /* 189 */
  6864 /***/ (function(module, exports, __webpack_require__) {
 15356 /***/ (function(module, exports, __webpack_require__) {
  6865 
 15357 
  6866 "use strict";
 15358 "use strict";
  6867 
 15359 
  6868 
 15360 
  7042 	return INTRINSICS[key];
 15534 	return INTRINSICS[key];
  7043 };
 15535 };
  7044 
 15536 
  7045 
 15537 
  7046 /***/ }),
 15538 /***/ }),
  7047 /* 148 */
 15539 /* 190 */
       
 15540 /***/ (function(module, exports, __webpack_require__) {
       
 15541 
       
 15542 "use strict";
       
 15543 
       
 15544 
       
 15545 Object.defineProperty(exports, "__esModule", {
       
 15546   value: true
       
 15547 });
       
 15548 exports['default'] = isSameDay;
       
 15549 
       
 15550 var _moment = __webpack_require__(43);
       
 15551 
       
 15552 var _moment2 = _interopRequireDefault(_moment);
       
 15553 
       
 15554 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 15555 
       
 15556 function isSameDay(a, b) {
       
 15557   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
 15558   // Compare least significant, most likely to change units first
       
 15559   // Moment's isSame clones moment inputs and is a tad slow
       
 15560   return a.date() === b.date() && a.month() === b.month() && a.year() === b.year();
       
 15561 }
       
 15562 
       
 15563 /***/ }),
       
 15564 /* 191 */
       
 15565 /***/ (function(module, exports, __webpack_require__) {
       
 15566 
       
 15567 "use strict";
       
 15568 
       
 15569 
       
 15570 Object.defineProperty(exports, "__esModule", {
       
 15571   value: true
       
 15572 });
       
 15573 exports['default'] = toISOMonthString;
       
 15574 
       
 15575 var _moment = __webpack_require__(43);
       
 15576 
       
 15577 var _moment2 = _interopRequireDefault(_moment);
       
 15578 
       
 15579 var _toMomentObject = __webpack_require__(241);
       
 15580 
       
 15581 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
       
 15582 
       
 15583 var _constants = __webpack_require__(77);
       
 15584 
       
 15585 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 15586 
       
 15587 function toISOMonthString(date, currentFormat) {
       
 15588   var dateObj = _moment2['default'].isMoment(date) ? date : (0, _toMomentObject2['default'])(date, currentFormat);
       
 15589   if (!dateObj) return null;
       
 15590 
       
 15591   return dateObj.format(_constants.ISO_MONTH_FORMAT);
       
 15592 }
       
 15593 
       
 15594 /***/ }),
       
 15595 /* 192 */
  7048 /***/ (function(module, exports) {
 15596 /***/ (function(module, exports) {
  7049 
 15597 
  7050 module.exports = Number.isNaN || function isNaN(a) {
 15598 /**
  7051 	return a !== a;
 15599  * Checks if `value` is the
       
 15600  * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
       
 15601  * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
       
 15602  *
       
 15603  * @static
       
 15604  * @memberOf _
       
 15605  * @since 0.1.0
       
 15606  * @category Lang
       
 15607  * @param {*} value The value to check.
       
 15608  * @returns {boolean} Returns `true` if `value` is an object, else `false`.
       
 15609  * @example
       
 15610  *
       
 15611  * _.isObject({});
       
 15612  * // => true
       
 15613  *
       
 15614  * _.isObject([1, 2, 3]);
       
 15615  * // => true
       
 15616  *
       
 15617  * _.isObject(_.noop);
       
 15618  * // => true
       
 15619  *
       
 15620  * _.isObject(null);
       
 15621  * // => false
       
 15622  */
       
 15623 function isObject(value) {
       
 15624   var type = typeof value;
       
 15625   return value != null && (type == 'object' || type == 'function');
       
 15626 }
       
 15627 
       
 15628 module.exports = isObject;
       
 15629 
       
 15630 
       
 15631 /***/ }),
       
 15632 /* 193 */
       
 15633 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 15634 
       
 15635 "use strict";
       
 15636 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return Consumer; });
       
 15637 /* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(18);
       
 15638 /* harmony import */ var _babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20);
       
 15639 /* harmony import */ var _babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(19);
       
 15640 /* harmony import */ var _babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12);
       
 15641 /* harmony import */ var _babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(23);
       
 15642 /* harmony import */ var _babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(16);
       
 15643 /* harmony import */ var _babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(22);
       
 15644 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(0);
       
 15645 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__);
       
 15646 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(2);
       
 15647 /* harmony import */ var lodash__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(lodash__WEBPACK_IMPORTED_MODULE_8__);
       
 15648 
       
 15649 
       
 15650 
       
 15651 
       
 15652 
       
 15653 
       
 15654 
       
 15655 
       
 15656 
       
 15657 function _createSuper(Derived) { return function () { var Super = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(_babel_runtime_helpers_esm_getPrototypeOf__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(_babel_runtime_helpers_esm_possibleConstructorReturn__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(this, result); }; }
       
 15658 
       
 15659 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 15660 
       
 15661 /**
       
 15662  * External dependencies
       
 15663  */
       
 15664 
       
 15665 /**
       
 15666  * WordPress dependencies
       
 15667  */
       
 15668 
       
 15669 
       
 15670 
       
 15671 var _createContext = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createContext"])({
       
 15672   focusHistory: []
       
 15673 }),
       
 15674     Provider = _createContext.Provider,
       
 15675     Consumer = _createContext.Consumer;
       
 15676 
       
 15677 Provider.displayName = 'FocusReturnProvider';
       
 15678 Consumer.displayName = 'FocusReturnConsumer';
       
 15679 /**
       
 15680  * The maximum history length to capture for the focus stack. When exceeded,
       
 15681  * items should be shifted from the stack for each consecutive push.
       
 15682  *
       
 15683  * @type {number}
       
 15684  */
       
 15685 
       
 15686 var MAX_STACK_LENGTH = 100;
       
 15687 
       
 15688 var FocusReturnProvider = /*#__PURE__*/function (_Component) {
       
 15689   Object(_babel_runtime_helpers_esm_inherits__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(FocusReturnProvider, _Component);
       
 15690 
       
 15691   var _super = _createSuper(FocusReturnProvider);
       
 15692 
       
 15693   function FocusReturnProvider() {
       
 15694     var _this;
       
 15695 
       
 15696     Object(_babel_runtime_helpers_esm_classCallCheck__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"])(this, FocusReturnProvider);
       
 15697 
       
 15698     _this = _super.apply(this, arguments);
       
 15699     _this.onFocus = _this.onFocus.bind(Object(_babel_runtime_helpers_esm_assertThisInitialized__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"])(_this));
       
 15700     _this.state = {
       
 15701       focusHistory: []
       
 15702     };
       
 15703     return _this;
       
 15704   }
       
 15705 
       
 15706   Object(_babel_runtime_helpers_esm_createClass__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"])(FocusReturnProvider, [{
       
 15707     key: "onFocus",
       
 15708     value: function onFocus(event) {
       
 15709       var focusHistory = this.state.focusHistory; // Push the focused element to the history stack, keeping only unique
       
 15710       // members but preferring the _last_ occurrence of any duplicates.
       
 15711       // Lodash's `uniq` behavior favors the first occurrence, so the array
       
 15712       // is temporarily reversed prior to it being called upon. Uniqueness
       
 15713       // helps avoid situations where, such as in a constrained tabbing area,
       
 15714       // the user changes focus enough within a transient element that the
       
 15715       // stack may otherwise only consist of members pending destruction, at
       
 15716       // which point focus might have been lost.
       
 15717 
       
 15718       var nextFocusHistory = Object(lodash__WEBPACK_IMPORTED_MODULE_8__["uniq"])([].concat(Object(_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])(focusHistory), [event.target]).slice(-1 * MAX_STACK_LENGTH).reverse()).reverse();
       
 15719       this.setState({
       
 15720         focusHistory: nextFocusHistory
       
 15721       });
       
 15722     }
       
 15723   }, {
       
 15724     key: "render",
       
 15725     value: function render() {
       
 15726       var _this$props = this.props,
       
 15727           children = _this$props.children,
       
 15728           className = _this$props.className;
       
 15729       return Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])(Provider, {
       
 15730         value: this.state
       
 15731       }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["createElement"])("div", {
       
 15732         onFocus: this.onFocus,
       
 15733         className: className
       
 15734       }, children));
       
 15735     }
       
 15736   }]);
       
 15737 
       
 15738   return FocusReturnProvider;
       
 15739 }(_wordpress_element__WEBPACK_IMPORTED_MODULE_7__["Component"]);
       
 15740 
       
 15741 /* harmony default export */ __webpack_exports__["b"] = (FocusReturnProvider);
       
 15742 
       
 15743 
       
 15744 
       
 15745 /***/ }),
       
 15746 /* 194 */
       
 15747 /***/ (function(module, exports, __webpack_require__) {
       
 15748 
       
 15749 "use strict";
       
 15750 
       
 15751 
       
 15752 if (true) {
       
 15753   module.exports = __webpack_require__(304);
       
 15754 } else {}
       
 15755 
       
 15756 
       
 15757 /***/ }),
       
 15758 /* 195 */
       
 15759 /***/ (function(module, exports) {
       
 15760 
       
 15761 // Copyright (c) 2014 Rafael Caricio. All rights reserved.
       
 15762 // Use of this source code is governed by a BSD-style license that can be
       
 15763 // found in the LICENSE file.
       
 15764 
       
 15765 var GradientParser = {};
       
 15766 
       
 15767 GradientParser.parse = (function() {
       
 15768 
       
 15769   var tokens = {
       
 15770     linearGradient: /^(\-(webkit|o|ms|moz)\-)?(linear\-gradient)/i,
       
 15771     repeatingLinearGradient: /^(\-(webkit|o|ms|moz)\-)?(repeating\-linear\-gradient)/i,
       
 15772     radialGradient: /^(\-(webkit|o|ms|moz)\-)?(radial\-gradient)/i,
       
 15773     repeatingRadialGradient: /^(\-(webkit|o|ms|moz)\-)?(repeating\-radial\-gradient)/i,
       
 15774     sideOrCorner: /^to (left (top|bottom)|right (top|bottom)|left|right|top|bottom)/i,
       
 15775     extentKeywords: /^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,
       
 15776     positionKeywords: /^(left|center|right|top|bottom)/i,
       
 15777     pixelValue: /^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,
       
 15778     percentageValue: /^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,
       
 15779     emValue: /^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,
       
 15780     angleValue: /^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,
       
 15781     startCall: /^\(/,
       
 15782     endCall: /^\)/,
       
 15783     comma: /^,/,
       
 15784     hexColor: /^\#([0-9a-fA-F]+)/,
       
 15785     literalColor: /^([a-zA-Z]+)/,
       
 15786     rgbColor: /^rgb/i,
       
 15787     rgbaColor: /^rgba/i,
       
 15788     number: /^(([0-9]*\.[0-9]+)|([0-9]+\.?))/
       
 15789   };
       
 15790 
       
 15791   var input = '';
       
 15792 
       
 15793   function error(msg) {
       
 15794     var err = new Error(input + ': ' + msg);
       
 15795     err.source = input;
       
 15796     throw err;
       
 15797   }
       
 15798 
       
 15799   function getAST() {
       
 15800     var ast = matchListDefinitions();
       
 15801 
       
 15802     if (input.length > 0) {
       
 15803       error('Invalid input not EOF');
       
 15804     }
       
 15805 
       
 15806     return ast;
       
 15807   }
       
 15808 
       
 15809   function matchListDefinitions() {
       
 15810     return matchListing(matchDefinition);
       
 15811   }
       
 15812 
       
 15813   function matchDefinition() {
       
 15814     return matchGradient(
       
 15815             'linear-gradient',
       
 15816             tokens.linearGradient,
       
 15817             matchLinearOrientation) ||
       
 15818 
       
 15819           matchGradient(
       
 15820             'repeating-linear-gradient',
       
 15821             tokens.repeatingLinearGradient,
       
 15822             matchLinearOrientation) ||
       
 15823 
       
 15824           matchGradient(
       
 15825             'radial-gradient',
       
 15826             tokens.radialGradient,
       
 15827             matchListRadialOrientations) ||
       
 15828 
       
 15829           matchGradient(
       
 15830             'repeating-radial-gradient',
       
 15831             tokens.repeatingRadialGradient,
       
 15832             matchListRadialOrientations);
       
 15833   }
       
 15834 
       
 15835   function matchGradient(gradientType, pattern, orientationMatcher) {
       
 15836     return matchCall(pattern, function(captures) {
       
 15837 
       
 15838       var orientation = orientationMatcher();
       
 15839       if (orientation) {
       
 15840         if (!scan(tokens.comma)) {
       
 15841           error('Missing comma before color stops');
       
 15842         }
       
 15843       }
       
 15844 
       
 15845       return {
       
 15846         type: gradientType,
       
 15847         orientation: orientation,
       
 15848         colorStops: matchListing(matchColorStop)
       
 15849       };
       
 15850     });
       
 15851   }
       
 15852 
       
 15853   function matchCall(pattern, callback) {
       
 15854     var captures = scan(pattern);
       
 15855 
       
 15856     if (captures) {
       
 15857       if (!scan(tokens.startCall)) {
       
 15858         error('Missing (');
       
 15859       }
       
 15860 
       
 15861       result = callback(captures);
       
 15862 
       
 15863       if (!scan(tokens.endCall)) {
       
 15864         error('Missing )');
       
 15865       }
       
 15866 
       
 15867       return result;
       
 15868     }
       
 15869   }
       
 15870 
       
 15871   function matchLinearOrientation() {
       
 15872     return matchSideOrCorner() ||
       
 15873       matchAngle();
       
 15874   }
       
 15875 
       
 15876   function matchSideOrCorner() {
       
 15877     return match('directional', tokens.sideOrCorner, 1);
       
 15878   }
       
 15879 
       
 15880   function matchAngle() {
       
 15881     return match('angular', tokens.angleValue, 1);
       
 15882   }
       
 15883 
       
 15884   function matchListRadialOrientations() {
       
 15885     var radialOrientations,
       
 15886         radialOrientation = matchRadialOrientation(),
       
 15887         lookaheadCache;
       
 15888 
       
 15889     if (radialOrientation) {
       
 15890       radialOrientations = [];
       
 15891       radialOrientations.push(radialOrientation);
       
 15892 
       
 15893       lookaheadCache = input;
       
 15894       if (scan(tokens.comma)) {
       
 15895         radialOrientation = matchRadialOrientation();
       
 15896         if (radialOrientation) {
       
 15897           radialOrientations.push(radialOrientation);
       
 15898         } else {
       
 15899           input = lookaheadCache;
       
 15900         }
       
 15901       }
       
 15902     }
       
 15903 
       
 15904     return radialOrientations;
       
 15905   }
       
 15906 
       
 15907   function matchRadialOrientation() {
       
 15908     var radialType = matchCircle() ||
       
 15909       matchEllipse();
       
 15910 
       
 15911     if (radialType) {
       
 15912       radialType.at = matchAtPosition();
       
 15913     } else {
       
 15914       var defaultPosition = matchPositioning();
       
 15915       if (defaultPosition) {
       
 15916         radialType = {
       
 15917           type: 'default-radial',
       
 15918           at: defaultPosition
       
 15919         };
       
 15920       }
       
 15921     }
       
 15922 
       
 15923     return radialType;
       
 15924   }
       
 15925 
       
 15926   function matchCircle() {
       
 15927     var circle = match('shape', /^(circle)/i, 0);
       
 15928 
       
 15929     if (circle) {
       
 15930       circle.style = matchLength() || matchExtentKeyword();
       
 15931     }
       
 15932 
       
 15933     return circle;
       
 15934   }
       
 15935 
       
 15936   function matchEllipse() {
       
 15937     var ellipse = match('shape', /^(ellipse)/i, 0);
       
 15938 
       
 15939     if (ellipse) {
       
 15940       ellipse.style =  matchDistance() || matchExtentKeyword();
       
 15941     }
       
 15942 
       
 15943     return ellipse;
       
 15944   }
       
 15945 
       
 15946   function matchExtentKeyword() {
       
 15947     return match('extent-keyword', tokens.extentKeywords, 1);
       
 15948   }
       
 15949 
       
 15950   function matchAtPosition() {
       
 15951     if (match('position', /^at/, 0)) {
       
 15952       var positioning = matchPositioning();
       
 15953 
       
 15954       if (!positioning) {
       
 15955         error('Missing positioning value');
       
 15956       }
       
 15957 
       
 15958       return positioning;
       
 15959     }
       
 15960   }
       
 15961 
       
 15962   function matchPositioning() {
       
 15963     var location = matchCoordinates();
       
 15964 
       
 15965     if (location.x || location.y) {
       
 15966       return {
       
 15967         type: 'position',
       
 15968         value: location
       
 15969       };
       
 15970     }
       
 15971   }
       
 15972 
       
 15973   function matchCoordinates() {
       
 15974     return {
       
 15975       x: matchDistance(),
       
 15976       y: matchDistance()
       
 15977     };
       
 15978   }
       
 15979 
       
 15980   function matchListing(matcher) {
       
 15981     var captures = matcher(),
       
 15982       result = [];
       
 15983 
       
 15984     if (captures) {
       
 15985       result.push(captures);
       
 15986       while (scan(tokens.comma)) {
       
 15987         captures = matcher();
       
 15988         if (captures) {
       
 15989           result.push(captures);
       
 15990         } else {
       
 15991           error('One extra comma');
       
 15992         }
       
 15993       }
       
 15994     }
       
 15995 
       
 15996     return result;
       
 15997   }
       
 15998 
       
 15999   function matchColorStop() {
       
 16000     var color = matchColor();
       
 16001 
       
 16002     if (!color) {
       
 16003       error('Expected color definition');
       
 16004     }
       
 16005 
       
 16006     color.length = matchDistance();
       
 16007     return color;
       
 16008   }
       
 16009 
       
 16010   function matchColor() {
       
 16011     return matchHexColor() ||
       
 16012       matchRGBAColor() ||
       
 16013       matchRGBColor() ||
       
 16014       matchLiteralColor();
       
 16015   }
       
 16016 
       
 16017   function matchLiteralColor() {
       
 16018     return match('literal', tokens.literalColor, 0);
       
 16019   }
       
 16020 
       
 16021   function matchHexColor() {
       
 16022     return match('hex', tokens.hexColor, 1);
       
 16023   }
       
 16024 
       
 16025   function matchRGBColor() {
       
 16026     return matchCall(tokens.rgbColor, function() {
       
 16027       return  {
       
 16028         type: 'rgb',
       
 16029         value: matchListing(matchNumber)
       
 16030       };
       
 16031     });
       
 16032   }
       
 16033 
       
 16034   function matchRGBAColor() {
       
 16035     return matchCall(tokens.rgbaColor, function() {
       
 16036       return  {
       
 16037         type: 'rgba',
       
 16038         value: matchListing(matchNumber)
       
 16039       };
       
 16040     });
       
 16041   }
       
 16042 
       
 16043   function matchNumber() {
       
 16044     return scan(tokens.number)[1];
       
 16045   }
       
 16046 
       
 16047   function matchDistance() {
       
 16048     return match('%', tokens.percentageValue, 1) ||
       
 16049       matchPositionKeyword() ||
       
 16050       matchLength();
       
 16051   }
       
 16052 
       
 16053   function matchPositionKeyword() {
       
 16054     return match('position-keyword', tokens.positionKeywords, 1);
       
 16055   }
       
 16056 
       
 16057   function matchLength() {
       
 16058     return match('px', tokens.pixelValue, 1) ||
       
 16059       match('em', tokens.emValue, 1);
       
 16060   }
       
 16061 
       
 16062   function match(type, pattern, captureIndex) {
       
 16063     var captures = scan(pattern);
       
 16064     if (captures) {
       
 16065       return {
       
 16066         type: type,
       
 16067         value: captures[captureIndex]
       
 16068       };
       
 16069     }
       
 16070   }
       
 16071 
       
 16072   function scan(regexp) {
       
 16073     var captures,
       
 16074         blankCaptures;
       
 16075 
       
 16076     blankCaptures = /^[\n\r\t\s]+/.exec(input);
       
 16077     if (blankCaptures) {
       
 16078         consume(blankCaptures[0].length);
       
 16079     }
       
 16080 
       
 16081     captures = regexp.exec(input);
       
 16082     if (captures) {
       
 16083         consume(captures[0].length);
       
 16084     }
       
 16085 
       
 16086     return captures;
       
 16087   }
       
 16088 
       
 16089   function consume(size) {
       
 16090     input = input.substr(size);
       
 16091   }
       
 16092 
       
 16093   return function(code) {
       
 16094     input = code.toString();
       
 16095     return getAST();
       
 16096   };
       
 16097 })();
       
 16098 
       
 16099 exports.parse = (GradientParser || {}).parse;
       
 16100 
       
 16101 
       
 16102 /***/ }),
       
 16103 /* 196 */,
       
 16104 /* 197 */,
       
 16105 /* 198 */,
       
 16106 /* 199 */,
       
 16107 /* 200 */,
       
 16108 /* 201 */,
       
 16109 /* 202 */,
       
 16110 /* 203 */,
       
 16111 /* 204 */
       
 16112 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 16113 
       
 16114 "use strict";
       
 16115 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 16116 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 16117 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 16118 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 16119 
       
 16120 
       
 16121 /**
       
 16122  * WordPress dependencies
       
 16123  */
       
 16124 
       
 16125 var upload = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 16126   xmlns: "http://www.w3.org/2000/svg",
       
 16127   viewBox: "0 0 24 24"
       
 16128 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 16129   d: "M18.5 15v3.5H13V6.7l4.5 4.1 1-1.1-6.2-5.8-5.8 5.8 1 1.1 4-4v11.7h-6V15H4v5h16v-5z"
       
 16130 }));
       
 16131 /* harmony default export */ __webpack_exports__["a"] = (upload);
       
 16132 
       
 16133 
       
 16134 /***/ }),
       
 16135 /* 205 */
       
 16136 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 16137 
       
 16138 "use strict";
       
 16139 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 16140 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 16141 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 16142 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 16143 
       
 16144 
       
 16145 /**
       
 16146  * WordPress dependencies
       
 16147  */
       
 16148 
       
 16149 var linkOff = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 16150   xmlns: "http://www.w3.org/2000/svg",
       
 16151   viewBox: "0 0 24 24"
       
 16152 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 16153   d: "M15.6 7.3h-.7l1.6-3.5-.9-.4-3.9 8.5H9v1.5h2l-1.3 2.8H8.4c-2 0-3.7-1.7-3.7-3.7s1.7-3.7 3.7-3.7H10V7.3H8.4c-2.9 0-5.2 2.3-5.2 5.2 0 2.9 2.3 5.2 5.2 5.2H9l-1.4 3.2.9.4 5.7-12.5h1.4c2 0 3.7 1.7 3.7 3.7s-1.7 3.7-3.7 3.7H14v1.5h1.6c2.9 0 5.2-2.3 5.2-5.2 0-2.9-2.4-5.2-5.2-5.2z"
       
 16154 }));
       
 16155 /* harmony default export */ __webpack_exports__["a"] = (linkOff);
       
 16156 
       
 16157 
       
 16158 /***/ }),
       
 16159 /* 206 */
       
 16160 /***/ (function(module, exports, __webpack_require__) {
       
 16161 
       
 16162 "use strict";
       
 16163 
       
 16164 
       
 16165 var toStr = Object.prototype.toString;
       
 16166 
       
 16167 module.exports = function isArguments(value) {
       
 16168 	var str = toStr.call(value);
       
 16169 	var isArgs = str === '[object Arguments]';
       
 16170 	if (!isArgs) {
       
 16171 		isArgs = str !== '[object Array]' &&
       
 16172 			value !== null &&
       
 16173 			typeof value === 'object' &&
       
 16174 			typeof value.length === 'number' &&
       
 16175 			value.length >= 0 &&
       
 16176 			toStr.call(value.callee) === '[object Function]';
       
 16177 	}
       
 16178 	return isArgs;
  7052 };
 16179 };
  7053 
 16180 
  7054 
 16181 
  7055 /***/ }),
 16182 /***/ }),
  7056 /* 149 */
 16183 /* 207 */
  7057 /***/ (function(module, exports) {
 16184 /***/ (function(module, exports, __webpack_require__) {
       
 16185 
       
 16186 "use strict";
       
 16187 /* WEBPACK VAR INJECTION */(function(global) {
       
 16188 
       
 16189 var origSymbol = global.Symbol;
       
 16190 var hasSymbolSham = __webpack_require__(313);
       
 16191 
       
 16192 module.exports = function hasNativeSymbols() {
       
 16193 	if (typeof origSymbol !== 'function') { return false; }
       
 16194 	if (typeof Symbol !== 'function') { return false; }
       
 16195 	if (typeof origSymbol('foo') !== 'symbol') { return false; }
       
 16196 	if (typeof Symbol('bar') !== 'symbol') { return false; }
       
 16197 
       
 16198 	return hasSymbolSham();
       
 16199 };
       
 16200 
       
 16201 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(127)))
       
 16202 
       
 16203 /***/ }),
       
 16204 /* 208 */
       
 16205 /***/ (function(module, exports, __webpack_require__) {
       
 16206 
       
 16207 "use strict";
       
 16208 
       
 16209 
       
 16210 var ArraySpeciesCreate = __webpack_require__(314);
       
 16211 var FlattenIntoArray = __webpack_require__(324);
       
 16212 var Get = __webpack_require__(183);
       
 16213 var ToInteger = __webpack_require__(220);
       
 16214 var ToLength = __webpack_require__(219);
       
 16215 var ToObject = __webpack_require__(344);
       
 16216 
       
 16217 module.exports = function flat() {
       
 16218 	var O = ToObject(this);
       
 16219 	var sourceLen = ToLength(Get(O, 'length'));
       
 16220 
       
 16221 	var depthNum = 1;
       
 16222 	if (arguments.length > 0 && typeof arguments[0] !== 'undefined') {
       
 16223 		depthNum = ToInteger(arguments[0]);
       
 16224 	}
       
 16225 
       
 16226 	var A = ArraySpeciesCreate(O, 0);
       
 16227 	FlattenIntoArray(A, O, sourceLen, 0, depthNum);
       
 16228 	return A;
       
 16229 };
       
 16230 
       
 16231 
       
 16232 /***/ }),
       
 16233 /* 209 */
       
 16234 /***/ (function(module, exports, __webpack_require__) {
       
 16235 
       
 16236 "use strict";
       
 16237 
       
 16238 
       
 16239 var GetIntrinsic = __webpack_require__(58);
       
 16240 
       
 16241 var $defineProperty = GetIntrinsic('%Object.defineProperty%', true);
       
 16242 
       
 16243 if ($defineProperty) {
       
 16244 	try {
       
 16245 		$defineProperty({}, 'a', { value: 1 });
       
 16246 	} catch (e) {
       
 16247 		// IE 8 has a broken defineProperty
       
 16248 		$defineProperty = null;
       
 16249 	}
       
 16250 }
       
 16251 
       
 16252 var callBound = __webpack_require__(140);
       
 16253 
       
 16254 var $isEnumerable = callBound('Object.prototype.propertyIsEnumerable');
       
 16255 
       
 16256 // eslint-disable-next-line max-params
       
 16257 module.exports = function DefineOwnProperty(IsDataDescriptor, SameValue, FromPropertyDescriptor, O, P, desc) {
       
 16258 	if (!$defineProperty) {
       
 16259 		if (!IsDataDescriptor(desc)) {
       
 16260 			// ES3 does not support getters/setters
       
 16261 			return false;
       
 16262 		}
       
 16263 		if (!desc['[[Configurable]]'] || !desc['[[Writable]]']) {
       
 16264 			return false;
       
 16265 		}
       
 16266 
       
 16267 		// fallback for ES3
       
 16268 		if (P in O && $isEnumerable(O, P) !== !!desc['[[Enumerable]]']) {
       
 16269 			// a non-enumerable existing property
       
 16270 			return false;
       
 16271 		}
       
 16272 
       
 16273 		// property does not exist at all, or exists but is enumerable
       
 16274 		var V = desc['[[Value]]'];
       
 16275 		// eslint-disable-next-line no-param-reassign
       
 16276 		O[P] = V; // will use [[Define]]
       
 16277 		return SameValue(O[P], V);
       
 16278 	}
       
 16279 	$defineProperty(O, P, FromPropertyDescriptor(desc));
       
 16280 	return true;
       
 16281 };
       
 16282 
       
 16283 
       
 16284 /***/ }),
       
 16285 /* 210 */
       
 16286 /***/ (function(module, exports, __webpack_require__) {
       
 16287 
       
 16288 "use strict";
       
 16289 
       
 16290 
       
 16291 var assertRecord = __webpack_require__(185);
       
 16292 
       
 16293 var Type = __webpack_require__(90);
       
 16294 
       
 16295 // https://www.ecma-international.org/ecma-262/6.0/#sec-frompropertydescriptor
       
 16296 
       
 16297 module.exports = function FromPropertyDescriptor(Desc) {
       
 16298 	if (typeof Desc === 'undefined') {
       
 16299 		return Desc;
       
 16300 	}
       
 16301 
       
 16302 	assertRecord(Type, 'Property Descriptor', 'Desc', Desc);
       
 16303 
       
 16304 	var obj = {};
       
 16305 	if ('[[Value]]' in Desc) {
       
 16306 		obj.value = Desc['[[Value]]'];
       
 16307 	}
       
 16308 	if ('[[Writable]]' in Desc) {
       
 16309 		obj.writable = Desc['[[Writable]]'];
       
 16310 	}
       
 16311 	if ('[[Get]]' in Desc) {
       
 16312 		obj.get = Desc['[[Get]]'];
       
 16313 	}
       
 16314 	if ('[[Set]]' in Desc) {
       
 16315 		obj.set = Desc['[[Set]]'];
       
 16316 	}
       
 16317 	if ('[[Enumerable]]' in Desc) {
       
 16318 		obj.enumerable = Desc['[[Enumerable]]'];
       
 16319 	}
       
 16320 	if ('[[Configurable]]' in Desc) {
       
 16321 		obj.configurable = Desc['[[Configurable]]'];
       
 16322 	}
       
 16323 	return obj;
       
 16324 };
       
 16325 
       
 16326 
       
 16327 /***/ }),
       
 16328 /* 211 */
       
 16329 /***/ (function(module, exports, __webpack_require__) {
       
 16330 
       
 16331 "use strict";
       
 16332 
       
 16333 
       
 16334 var has = __webpack_require__(91);
       
 16335 
       
 16336 var assertRecord = __webpack_require__(185);
       
 16337 
       
 16338 var Type = __webpack_require__(90);
       
 16339 
       
 16340 // https://www.ecma-international.org/ecma-262/6.0/#sec-isdatadescriptor
       
 16341 
       
 16342 module.exports = function IsDataDescriptor(Desc) {
       
 16343 	if (typeof Desc === 'undefined') {
       
 16344 		return false;
       
 16345 	}
       
 16346 
       
 16347 	assertRecord(Type, 'Property Descriptor', 'Desc', Desc);
       
 16348 
       
 16349 	if (!has(Desc, '[[Value]]') && !has(Desc, '[[Writable]]')) {
       
 16350 		return false;
       
 16351 	}
       
 16352 
       
 16353 	return true;
       
 16354 };
       
 16355 
       
 16356 
       
 16357 /***/ }),
       
 16358 /* 212 */
       
 16359 /***/ (function(module, exports, __webpack_require__) {
       
 16360 
       
 16361 "use strict";
       
 16362 
       
 16363 
       
 16364 var $isNaN = __webpack_require__(186);
       
 16365 
       
 16366 // http://www.ecma-international.org/ecma-262/5.1/#sec-9.12
       
 16367 
       
 16368 module.exports = function SameValue(x, y) {
       
 16369 	if (x === y) { // 0 === -0, but they are not identical.
       
 16370 		if (x === 0) { return 1 / x === 1 / y; }
       
 16371 		return true;
       
 16372 	}
       
 16373 	return $isNaN(x) && $isNaN(y);
       
 16374 };
       
 16375 
       
 16376 
       
 16377 /***/ }),
       
 16378 /* 213 */
       
 16379 /***/ (function(module, exports, __webpack_require__) {
       
 16380 
       
 16381 "use strict";
       
 16382 
       
 16383 
       
 16384 var has = __webpack_require__(91);
       
 16385 
       
 16386 var GetIntrinsic = __webpack_require__(58);
       
 16387 
       
 16388 var $TypeError = GetIntrinsic('%TypeError%');
       
 16389 
       
 16390 var Type = __webpack_require__(90);
       
 16391 var ToBoolean = __webpack_require__(214);
       
 16392 var IsCallable = __webpack_require__(322);
       
 16393 
       
 16394 // https://ecma-international.org/ecma-262/5.1/#sec-8.10.5
       
 16395 
       
 16396 module.exports = function ToPropertyDescriptor(Obj) {
       
 16397 	if (Type(Obj) !== 'Object') {
       
 16398 		throw new $TypeError('ToPropertyDescriptor requires an object');
       
 16399 	}
       
 16400 
       
 16401 	var desc = {};
       
 16402 	if (has(Obj, 'enumerable')) {
       
 16403 		desc['[[Enumerable]]'] = ToBoolean(Obj.enumerable);
       
 16404 	}
       
 16405 	if (has(Obj, 'configurable')) {
       
 16406 		desc['[[Configurable]]'] = ToBoolean(Obj.configurable);
       
 16407 	}
       
 16408 	if (has(Obj, 'value')) {
       
 16409 		desc['[[Value]]'] = Obj.value;
       
 16410 	}
       
 16411 	if (has(Obj, 'writable')) {
       
 16412 		desc['[[Writable]]'] = ToBoolean(Obj.writable);
       
 16413 	}
       
 16414 	if (has(Obj, 'get')) {
       
 16415 		var getter = Obj.get;
       
 16416 		if (typeof getter !== 'undefined' && !IsCallable(getter)) {
       
 16417 			throw new TypeError('getter must be a function');
       
 16418 		}
       
 16419 		desc['[[Get]]'] = getter;
       
 16420 	}
       
 16421 	if (has(Obj, 'set')) {
       
 16422 		var setter = Obj.set;
       
 16423 		if (typeof setter !== 'undefined' && !IsCallable(setter)) {
       
 16424 			throw new $TypeError('setter must be a function');
       
 16425 		}
       
 16426 		desc['[[Set]]'] = setter;
       
 16427 	}
       
 16428 
       
 16429 	if ((has(desc, '[[Get]]') || has(desc, '[[Set]]')) && (has(desc, '[[Value]]') || has(desc, '[[Writable]]'))) {
       
 16430 		throw new $TypeError('Invalid property descriptor. Cannot both specify accessors and a value or writable attribute');
       
 16431 	}
       
 16432 	return desc;
       
 16433 };
       
 16434 
       
 16435 
       
 16436 /***/ }),
       
 16437 /* 214 */
       
 16438 /***/ (function(module, exports, __webpack_require__) {
       
 16439 
       
 16440 "use strict";
       
 16441 
       
 16442 
       
 16443 // http://www.ecma-international.org/ecma-262/5.1/#sec-9.2
       
 16444 
       
 16445 module.exports = function ToBoolean(value) { return !!value; };
       
 16446 
       
 16447 
       
 16448 /***/ }),
       
 16449 /* 215 */
       
 16450 /***/ (function(module, exports, __webpack_require__) {
       
 16451 
       
 16452 "use strict";
       
 16453 
       
 16454 
       
 16455 var fnToStr = Function.prototype.toString;
       
 16456 var reflectApply = typeof Reflect === 'object' && Reflect !== null && Reflect.apply;
       
 16457 var badArrayLike;
       
 16458 var isCallableMarker;
       
 16459 if (typeof reflectApply === 'function' && typeof Object.defineProperty === 'function') {
       
 16460 	try {
       
 16461 		badArrayLike = Object.defineProperty({}, 'length', {
       
 16462 			get: function () {
       
 16463 				throw isCallableMarker;
       
 16464 			}
       
 16465 		});
       
 16466 		isCallableMarker = {};
       
 16467 	} catch (_) {
       
 16468 		reflectApply = null;
       
 16469 	}
       
 16470 } else {
       
 16471 	reflectApply = null;
       
 16472 }
       
 16473 
       
 16474 var constructorRegex = /^\s*class\b/;
       
 16475 var isES6ClassFn = function isES6ClassFunction(value) {
       
 16476 	try {
       
 16477 		var fnStr = fnToStr.call(value);
       
 16478 		return constructorRegex.test(fnStr);
       
 16479 	} catch (e) {
       
 16480 		return false; // not a function
       
 16481 	}
       
 16482 };
       
 16483 
       
 16484 var tryFunctionObject = function tryFunctionToStr(value) {
       
 16485 	try {
       
 16486 		if (isES6ClassFn(value)) { return false; }
       
 16487 		fnToStr.call(value);
       
 16488 		return true;
       
 16489 	} catch (e) {
       
 16490 		return false;
       
 16491 	}
       
 16492 };
       
 16493 var toStr = Object.prototype.toString;
       
 16494 var fnClass = '[object Function]';
       
 16495 var genClass = '[object GeneratorFunction]';
       
 16496 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
 16497 
       
 16498 module.exports = reflectApply
       
 16499 	? function isCallable(value) {
       
 16500 		if (!value) { return false; }
       
 16501 		if (typeof value !== 'function' && typeof value !== 'object') { return false; }
       
 16502 		if (typeof value === 'function' && !value.prototype) { return true; }
       
 16503 		try {
       
 16504 			reflectApply(value, null, badArrayLike);
       
 16505 		} catch (e) {
       
 16506 			if (e !== isCallableMarker) { return false; }
       
 16507 		}
       
 16508 		return !isES6ClassFn(value);
       
 16509 	}
       
 16510 	: function isCallable(value) {
       
 16511 		if (!value) { return false; }
       
 16512 		if (typeof value !== 'function' && typeof value !== 'object') { return false; }
       
 16513 		if (typeof value === 'function' && !value.prototype) { return true; }
       
 16514 		if (hasToStringTag) { return tryFunctionObject(value); }
       
 16515 		if (isES6ClassFn(value)) { return false; }
       
 16516 		var strClass = toStr.call(value);
       
 16517 		return strClass === fnClass || strClass === genClass;
       
 16518 	};
       
 16519 
       
 16520 
       
 16521 /***/ }),
       
 16522 /* 216 */
       
 16523 /***/ (function(module, exports, __webpack_require__) {
       
 16524 
       
 16525 "use strict";
       
 16526 
  7058 
 16527 
  7059 var $isNaN = Number.isNaN || function (a) { return a !== a; };
 16528 var $isNaN = Number.isNaN || function (a) { return a !== a; };
  7060 
 16529 
  7061 module.exports = Number.isFinite || function (x) { return typeof x === 'number' && !$isNaN(x) && x !== Infinity && x !== -Infinity; };
 16530 module.exports = Number.isFinite || function (x) { return typeof x === 'number' && !$isNaN(x) && x !== Infinity && x !== -Infinity; };
  7062 
 16531 
  7063 
 16532 
  7064 /***/ }),
 16533 /***/ }),
  7065 /* 150 */
 16534 /* 217 */
  7066 /***/ (function(module, exports) {
 16535 /***/ (function(module, exports, __webpack_require__) {
  7067 
 16536 
  7068 module.exports = function sign(number) {
 16537 "use strict";
  7069 	return number >= 0 ? 1 : -1;
 16538 
       
 16539 
       
 16540 var GetIntrinsic = __webpack_require__(58);
       
 16541 
       
 16542 var $Math = GetIntrinsic('%Math%');
       
 16543 var $Number = GetIntrinsic('%Number%');
       
 16544 
       
 16545 module.exports = $Number.MAX_SAFE_INTEGER || $Math.pow(2, 53) - 1;
       
 16546 
       
 16547 
       
 16548 /***/ }),
       
 16549 /* 218 */
       
 16550 /***/ (function(module, exports, __webpack_require__) {
       
 16551 
       
 16552 "use strict";
       
 16553 
       
 16554 
       
 16555 module.exports = function isPrimitive(value) {
       
 16556 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
  7070 };
 16557 };
  7071 
 16558 
  7072 
 16559 
  7073 /***/ }),
 16560 /***/ }),
  7074 /* 151 */
 16561 /* 219 */
  7075 /***/ (function(module, exports) {
 16562 /***/ (function(module, exports, __webpack_require__) {
  7076 
 16563 
  7077 module.exports = function mod(number, modulo) {
 16564 "use strict";
  7078 	var remain = number % modulo;
 16565 
  7079 	return Math.floor(remain >= 0 ? remain : remain + modulo);
 16566 
       
 16567 var MAX_SAFE_INTEGER = __webpack_require__(217);
       
 16568 
       
 16569 var ToInteger = __webpack_require__(220);
       
 16570 
       
 16571 module.exports = function ToLength(argument) {
       
 16572 	var len = ToInteger(argument);
       
 16573 	if (len <= 0) { return 0; } // includes converting -0 to +0
       
 16574 	if (len > MAX_SAFE_INTEGER) { return MAX_SAFE_INTEGER; }
       
 16575 	return len;
  7080 };
 16576 };
  7081 
 16577 
  7082 
 16578 
  7083 /***/ }),
 16579 /***/ }),
  7084 /* 152 */
 16580 /* 220 */
  7085 /***/ (function(module, exports, __webpack_require__) {
 16581 /***/ (function(module, exports, __webpack_require__) {
  7086 
 16582 
  7087 "use strict";
 16583 "use strict";
  7088 
 16584 
  7089 
 16585 
  7090 var implementation = __webpack_require__(142);
 16586 var ES5ToInteger = __webpack_require__(334);
       
 16587 
       
 16588 var ToNumber = __webpack_require__(337);
       
 16589 
       
 16590 // https://www.ecma-international.org/ecma-262/6.0/#sec-tointeger
       
 16591 
       
 16592 module.exports = function ToInteger(value) {
       
 16593 	var number = ToNumber(value);
       
 16594 	return ES5ToInteger(number);
       
 16595 };
       
 16596 
       
 16597 
       
 16598 /***/ }),
       
 16599 /* 221 */
       
 16600 /***/ (function(module, exports, __webpack_require__) {
       
 16601 
       
 16602 "use strict";
       
 16603 
       
 16604 
       
 16605 var getDay = Date.prototype.getDay;
       
 16606 var tryDateObject = function tryDateObject(value) {
       
 16607 	try {
       
 16608 		getDay.call(value);
       
 16609 		return true;
       
 16610 	} catch (e) {
       
 16611 		return false;
       
 16612 	}
       
 16613 };
       
 16614 
       
 16615 var toStr = Object.prototype.toString;
       
 16616 var dateClass = '[object Date]';
       
 16617 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
 16618 
       
 16619 module.exports = function isDateObject(value) {
       
 16620 	if (typeof value !== 'object' || value === null) { return false; }
       
 16621 	return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;
       
 16622 };
       
 16623 
       
 16624 
       
 16625 /***/ }),
       
 16626 /* 222 */
       
 16627 /***/ (function(module, exports, __webpack_require__) {
       
 16628 
       
 16629 "use strict";
       
 16630 
       
 16631 
       
 16632 /* eslint complexity: [2, 17], max-statements: [2, 33] */
       
 16633 module.exports = function hasSymbols() {
       
 16634 	if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
       
 16635 	if (typeof Symbol.iterator === 'symbol') { return true; }
       
 16636 
       
 16637 	var obj = {};
       
 16638 	var sym = Symbol('test');
       
 16639 	var symObj = Object(sym);
       
 16640 	if (typeof sym === 'string') { return false; }
       
 16641 
       
 16642 	if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
       
 16643 	if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
       
 16644 
       
 16645 	// temp disabled per https://github.com/ljharb/object.assign/issues/17
       
 16646 	// if (sym instanceof Symbol) { return false; }
       
 16647 	// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
       
 16648 	// if (!(symObj instanceof Symbol)) { return false; }
       
 16649 
       
 16650 	// if (typeof Symbol.prototype.toString !== 'function') { return false; }
       
 16651 	// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
       
 16652 
       
 16653 	var symVal = 42;
       
 16654 	obj[sym] = symVal;
       
 16655 	for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax
       
 16656 	if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
       
 16657 
       
 16658 	if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
       
 16659 
       
 16660 	var syms = Object.getOwnPropertySymbols(obj);
       
 16661 	if (syms.length !== 1 || syms[0] !== sym) { return false; }
       
 16662 
       
 16663 	if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
       
 16664 
       
 16665 	if (typeof Object.getOwnPropertyDescriptor === 'function') {
       
 16666 		var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
       
 16667 		if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
       
 16668 	}
       
 16669 
       
 16670 	return true;
       
 16671 };
       
 16672 
       
 16673 
       
 16674 /***/ }),
       
 16675 /* 223 */
       
 16676 /***/ (function(module, exports, __webpack_require__) {
       
 16677 
       
 16678 "use strict";
       
 16679 
       
 16680 
       
 16681 var implementation = __webpack_require__(208);
  7091 
 16682 
  7092 module.exports = function getPolyfill() {
 16683 module.exports = function getPolyfill() {
  7093 	return Array.prototype.flat || implementation;
 16684 	return Array.prototype.flat || implementation;
  7094 };
 16685 };
  7095 
 16686 
  7096 
 16687 
  7097 /***/ }),
 16688 /***/ }),
  7098 /* 153 */
 16689 /* 224 */
  7099 /***/ (function(module, exports, __webpack_require__) {
 16690 /***/ (function(module, exports, __webpack_require__) {
       
 16691 
       
 16692 "use strict";
       
 16693 
  7100 
 16694 
  7101 Object.defineProperty(exports, "__esModule", {
 16695 Object.defineProperty(exports, "__esModule", {
  7102   value: true
 16696   value: true
  7103 });
 16697 });
  7104 var styleInterface = void 0;
 16698 var styleInterface = void 0;
  7105 var styleTheme = void 0;
 16699 var styleTheme = void 0;
       
 16700 
       
 16701 var START_MARK = 'react-with-styles.resolve.start';
       
 16702 var END_MARK = 'react-with-styles.resolve.end';
       
 16703 var MEASURE_MARK = '\uD83D\uDC69\u200D\uD83C\uDFA8 [resolve]';
  7106 
 16704 
  7107 function registerTheme(theme) {
 16705 function registerTheme(theme) {
  7108   styleTheme = theme;
 16706   styleTheme = theme;
  7109 }
 16707 }
  7110 
 16708 
  7187   resolveRTL: resolveRTL,
 16785   resolveRTL: resolveRTL,
  7188   flush: flush
 16786   flush: flush
  7189 };
 16787 };
  7190 
 16788 
  7191 /***/ }),
 16789 /***/ }),
  7192 /* 154 */
 16790 /* 225 */
  7193 /***/ (function(module, exports, __webpack_require__) {
 16791 /***/ (function(module, exports, __webpack_require__) {
  7194 
 16792 
  7195 "use strict";
 16793 "use strict";
  7196 
 16794 
  7197 
 16795 
  7393     }
 16991     }
  7394   }
 16992   }
  7395 };
 16993 };
  7396 
 16994 
  7397 /***/ }),
 16995 /***/ }),
  7398 /* 155 */
 16996 /* 226 */
  7399 /***/ (function(module, exports, __webpack_require__) {
 16997 /***/ (function(module, exports, __webpack_require__) {
  7400 
 16998 
  7401 "use strict";
 16999 "use strict";
  7402 
 17000 
  7403 
 17001 
  7404 // modified from https://github.com/es-shims/es6-shim
 17002 // modified from https://github.com/es-shims/es6-shim
  7405 var keys = __webpack_require__(141);
 17003 var keys = __webpack_require__(181);
  7406 var bind = __webpack_require__(74);
 17004 var bind = __webpack_require__(118);
  7407 var canBeObject = function (obj) {
 17005 var canBeObject = function (obj) {
  7408 	return typeof obj !== 'undefined' && obj !== null;
 17006 	return typeof obj !== 'undefined' && obj !== null;
  7409 };
 17007 };
  7410 var hasSymbols = __webpack_require__(146)();
 17008 var hasSymbols = __webpack_require__(222)();
  7411 var toObject = Object;
 17009 var toObject = Object;
  7412 var push = bind.call(Function.call, Array.prototype.push);
 17010 var push = bind.call(Function.call, Array.prototype.push);
  7413 var propIsEnumerable = bind.call(Function.call, Object.prototype.propertyIsEnumerable);
 17011 var propIsEnumerable = bind.call(Function.call, Object.prototype.propertyIsEnumerable);
  7414 var originalGetSymbols = hasSymbols ? Object.getOwnPropertySymbols : null;
 17012 var originalGetSymbols = hasSymbols ? Object.getOwnPropertySymbols : null;
  7415 
 17013 
  7441 	return objTarget;
 17039 	return objTarget;
  7442 };
 17040 };
  7443 
 17041 
  7444 
 17042 
  7445 /***/ }),
 17043 /***/ }),
  7446 /* 156 */
 17044 /* 227 */
  7447 /***/ (function(module, exports, __webpack_require__) {
 17045 /***/ (function(module, exports, __webpack_require__) {
  7448 
 17046 
  7449 "use strict";
 17047 "use strict";
  7450 
 17048 
  7451 
 17049 
  7452 var implementation = __webpack_require__(155);
 17050 var implementation = __webpack_require__(226);
  7453 
 17051 
  7454 var lacksProperEnumerationOrder = function () {
 17052 var lacksProperEnumerationOrder = function () {
  7455 	if (!Object.assign) {
 17053 	if (!Object.assign) {
  7456 		return false;
 17054 		return false;
  7457 	}
 17055 	}
  7499 	return Object.assign;
 17097 	return Object.assign;
  7500 };
 17098 };
  7501 
 17099 
  7502 
 17100 
  7503 /***/ }),
 17101 /***/ }),
  7504 /* 157 */
 17102 /* 228 */
  7505 /***/ (function(module, exports, __webpack_require__) {
 17103 /***/ (function(module, exports, __webpack_require__) {
  7506 
 17104 
  7507 "use strict";
 17105 "use strict";
  7508 
 17106 
  7509 
 17107 
  7510 Object.defineProperty(exports, "__esModule", {
 17108 var define = __webpack_require__(101);
  7511   value: true
 17109 
       
 17110 var implementation = __webpack_require__(229);
       
 17111 var getPolyfill = __webpack_require__(237);
       
 17112 var shim = __webpack_require__(366);
       
 17113 
       
 17114 var polyfill = getPolyfill();
       
 17115 
       
 17116 define(polyfill, {
       
 17117 	getPolyfill: getPolyfill,
       
 17118 	implementation: implementation,
       
 17119 	shim: shim
  7512 });
 17120 });
  7513 exports['default'] = getCalendarDaySettings;
 17121 
  7514 
 17122 module.exports = polyfill;
  7515 var _getPhrase = __webpack_require__(294);
 17123 
  7516 
       
  7517 var _getPhrase2 = _interopRequireDefault(_getPhrase);
       
  7518 
       
  7519 var _constants = __webpack_require__(39);
       
  7520 
       
  7521 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  7522 
       
  7523 function getCalendarDaySettings(day, ariaLabelFormat, daySize, modifiers, phrases) {
       
  7524   var chooseAvailableDate = phrases.chooseAvailableDate,
       
  7525       dateIsUnavailable = phrases.dateIsUnavailable,
       
  7526       dateIsSelected = phrases.dateIsSelected;
       
  7527 
       
  7528 
       
  7529   var daySizeStyles = {
       
  7530     width: daySize,
       
  7531     height: daySize - 1
       
  7532   };
       
  7533 
       
  7534   var useDefaultCursor = modifiers.has('blocked-minimum-nights') || modifiers.has('blocked-calendar') || modifiers.has('blocked-out-of-range');
       
  7535 
       
  7536   var selected = modifiers.has('selected') || modifiers.has('selected-start') || modifiers.has('selected-end');
       
  7537 
       
  7538   var hoveredSpan = !selected && (modifiers.has('hovered-span') || modifiers.has('after-hovered-start'));
       
  7539 
       
  7540   var isOutsideRange = modifiers.has('blocked-out-of-range');
       
  7541 
       
  7542   var formattedDate = { date: day.format(ariaLabelFormat) };
       
  7543 
       
  7544   var ariaLabel = (0, _getPhrase2['default'])(chooseAvailableDate, formattedDate);
       
  7545   if (modifiers.has(_constants.BLOCKED_MODIFIER)) {
       
  7546     ariaLabel = (0, _getPhrase2['default'])(dateIsUnavailable, formattedDate);
       
  7547   } else if (selected) {
       
  7548     ariaLabel = (0, _getPhrase2['default'])(dateIsSelected, formattedDate);
       
  7549   }
       
  7550 
       
  7551   return {
       
  7552     daySizeStyles: daySizeStyles,
       
  7553     useDefaultCursor: useDefaultCursor,
       
  7554     selected: selected,
       
  7555     hoveredSpan: hoveredSpan,
       
  7556     isOutsideRange: isOutsideRange,
       
  7557     ariaLabel: ariaLabel
       
  7558   };
       
  7559 }
       
  7560 
 17124 
  7561 /***/ }),
 17125 /***/ }),
  7562 /* 158 */
 17126 /* 229 */
  7563 /***/ (function(module, exports, __webpack_require__) {
 17127 /***/ (function(module, exports, __webpack_require__) {
  7564 
 17128 
  7565 "use strict";
 17129 "use strict";
  7566 
 17130 
  7567 
 17131 
  7568 Object.defineProperty(exports, "__esModule", {
 17132 var ES = __webpack_require__(357);
  7569   value: true
       
  7570 });
       
  7571 
       
  7572 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
  7573 
       
  7574 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
  7575 
       
  7576 var _object = __webpack_require__(46);
       
  7577 
       
  7578 var _object2 = _interopRequireDefault(_object);
       
  7579 
       
  7580 var _react = __webpack_require__(27);
       
  7581 
       
  7582 var _react2 = _interopRequireDefault(_react);
       
  7583 
       
  7584 var _propTypes = __webpack_require__(31);
       
  7585 
       
  7586 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  7587 
       
  7588 var _reactAddonsShallowCompare = __webpack_require__(78);
       
  7589 
       
  7590 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
  7591 
       
  7592 var _reactMomentProptypes = __webpack_require__(64);
       
  7593 
       
  7594 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
  7595 
       
  7596 var _airbnbPropTypes = __webpack_require__(43);
       
  7597 
       
  7598 var _reactWithStyles = __webpack_require__(56);
       
  7599 
       
  7600 var _moment = __webpack_require__(29);
       
  7601 
       
  7602 var _moment2 = _interopRequireDefault(_moment);
       
  7603 
       
  7604 var _defaultPhrases = __webpack_require__(47);
       
  7605 
       
  7606 var _getPhrasePropTypes = __webpack_require__(51);
       
  7607 
       
  7608 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
  7609 
       
  7610 var _CalendarWeek = __webpack_require__(295);
       
  7611 
       
  7612 var _CalendarWeek2 = _interopRequireDefault(_CalendarWeek);
       
  7613 
       
  7614 var _CalendarDay = __webpack_require__(125);
       
  7615 
       
  7616 var _CalendarDay2 = _interopRequireDefault(_CalendarDay);
       
  7617 
       
  7618 var _calculateDimension = __webpack_require__(159);
       
  7619 
       
  7620 var _calculateDimension2 = _interopRequireDefault(_calculateDimension);
       
  7621 
       
  7622 var _getCalendarMonthWeeks = __webpack_require__(297);
       
  7623 
       
  7624 var _getCalendarMonthWeeks2 = _interopRequireDefault(_getCalendarMonthWeeks);
       
  7625 
       
  7626 var _isSameDay = __webpack_require__(79);
       
  7627 
       
  7628 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
  7629 
       
  7630 var _toISODateString = __webpack_require__(102);
       
  7631 
       
  7632 var _toISODateString2 = _interopRequireDefault(_toISODateString);
       
  7633 
       
  7634 var _ModifiersShape = __webpack_require__(101);
       
  7635 
       
  7636 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
  7637 
       
  7638 var _ScrollableOrientationShape = __webpack_require__(81);
       
  7639 
       
  7640 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
  7641 
       
  7642 var _DayOfWeekShape = __webpack_require__(75);
       
  7643 
       
  7644 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
  7645 
       
  7646 var _constants = __webpack_require__(39);
       
  7647 
       
  7648 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  7649 
       
  7650 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
  7651 
       
  7652 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
  7653 
       
  7654 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint react/no-array-index-key: 0 */
       
  7655 
       
  7656 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
  7657   month: _reactMomentProptypes2['default'].momentObj,
       
  7658   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
  7659   isVisible: _propTypes2['default'].bool,
       
  7660   enableOutsideDays: _propTypes2['default'].bool,
       
  7661   modifiers: _propTypes2['default'].objectOf(_ModifiersShape2['default']),
       
  7662   orientation: _ScrollableOrientationShape2['default'],
       
  7663   daySize: _airbnbPropTypes.nonNegativeInteger,
       
  7664   onDayClick: _propTypes2['default'].func,
       
  7665   onDayMouseEnter: _propTypes2['default'].func,
       
  7666   onDayMouseLeave: _propTypes2['default'].func,
       
  7667   onMonthSelect: _propTypes2['default'].func,
       
  7668   onYearSelect: _propTypes2['default'].func,
       
  7669   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  7670   renderCalendarDay: _propTypes2['default'].func,
       
  7671   renderDayContents: _propTypes2['default'].func,
       
  7672   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  7673   firstDayOfWeek: _DayOfWeekShape2['default'],
       
  7674   setMonthTitleHeight: _propTypes2['default'].func,
       
  7675   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
  7676 
       
  7677   focusedDate: _reactMomentProptypes2['default'].momentObj, // indicates focusable day
       
  7678   isFocused: _propTypes2['default'].bool, // indicates whether or not to move focus to focusable day
       
  7679 
       
  7680   // i18n
       
  7681   monthFormat: _propTypes2['default'].string,
       
  7682   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases)),
       
  7683   dayAriaLabelFormat: _propTypes2['default'].string
       
  7684 }));
       
  7685 
       
  7686 var defaultProps = {
       
  7687   month: (0, _moment2['default'])(),
       
  7688   horizontalMonthPadding: 13,
       
  7689   isVisible: true,
       
  7690   enableOutsideDays: false,
       
  7691   modifiers: {},
       
  7692   orientation: _constants.HORIZONTAL_ORIENTATION,
       
  7693   daySize: _constants.DAY_SIZE,
       
  7694   onDayClick: function () {
       
  7695     function onDayClick() {}
       
  7696 
       
  7697     return onDayClick;
       
  7698   }(),
       
  7699   onDayMouseEnter: function () {
       
  7700     function onDayMouseEnter() {}
       
  7701 
       
  7702     return onDayMouseEnter;
       
  7703   }(),
       
  7704   onDayMouseLeave: function () {
       
  7705     function onDayMouseLeave() {}
       
  7706 
       
  7707     return onDayMouseLeave;
       
  7708   }(),
       
  7709   onMonthSelect: function () {
       
  7710     function onMonthSelect() {}
       
  7711 
       
  7712     return onMonthSelect;
       
  7713   }(),
       
  7714   onYearSelect: function () {
       
  7715     function onYearSelect() {}
       
  7716 
       
  7717     return onYearSelect;
       
  7718   }(),
       
  7719 
       
  7720   renderMonthText: null,
       
  7721   renderCalendarDay: function () {
       
  7722     function renderCalendarDay(props) {
       
  7723       return _react2['default'].createElement(_CalendarDay2['default'], props);
       
  7724     }
       
  7725 
       
  7726     return renderCalendarDay;
       
  7727   }(),
       
  7728   renderDayContents: null,
       
  7729   renderMonthElement: null,
       
  7730   firstDayOfWeek: null,
       
  7731   setMonthTitleHeight: null,
       
  7732 
       
  7733   focusedDate: null,
       
  7734   isFocused: false,
       
  7735 
       
  7736   // i18n
       
  7737   monthFormat: 'MMMM YYYY', // english locale
       
  7738   phrases: _defaultPhrases.CalendarDayPhrases,
       
  7739   dayAriaLabelFormat: undefined,
       
  7740   verticalBorderSpacing: undefined
       
  7741 };
       
  7742 
       
  7743 var CalendarMonth = function (_React$Component) {
       
  7744   _inherits(CalendarMonth, _React$Component);
       
  7745 
       
  7746   function CalendarMonth(props) {
       
  7747     _classCallCheck(this, CalendarMonth);
       
  7748 
       
  7749     var _this = _possibleConstructorReturn(this, (CalendarMonth.__proto__ || Object.getPrototypeOf(CalendarMonth)).call(this, props));
       
  7750 
       
  7751     _this.state = {
       
  7752       weeks: (0, _getCalendarMonthWeeks2['default'])(props.month, props.enableOutsideDays, props.firstDayOfWeek == null ? _moment2['default'].localeData().firstDayOfWeek() : props.firstDayOfWeek)
       
  7753     };
       
  7754 
       
  7755     _this.setCaptionRef = _this.setCaptionRef.bind(_this);
       
  7756     _this.setMonthTitleHeight = _this.setMonthTitleHeight.bind(_this);
       
  7757     return _this;
       
  7758   }
       
  7759 
       
  7760   _createClass(CalendarMonth, [{
       
  7761     key: 'componentDidMount',
       
  7762     value: function () {
       
  7763       function componentDidMount() {
       
  7764         this.setMonthTitleHeightTimeout = setTimeout(this.setMonthTitleHeight, 0);
       
  7765       }
       
  7766 
       
  7767       return componentDidMount;
       
  7768     }()
       
  7769   }, {
       
  7770     key: 'componentWillReceiveProps',
       
  7771     value: function () {
       
  7772       function componentWillReceiveProps(nextProps) {
       
  7773         var month = nextProps.month,
       
  7774             enableOutsideDays = nextProps.enableOutsideDays,
       
  7775             firstDayOfWeek = nextProps.firstDayOfWeek;
       
  7776         var _props = this.props,
       
  7777             prevMonth = _props.month,
       
  7778             prevEnableOutsideDays = _props.enableOutsideDays,
       
  7779             prevFirstDayOfWeek = _props.firstDayOfWeek;
       
  7780 
       
  7781         if (!month.isSame(prevMonth) || enableOutsideDays !== prevEnableOutsideDays || firstDayOfWeek !== prevFirstDayOfWeek) {
       
  7782           this.setState({
       
  7783             weeks: (0, _getCalendarMonthWeeks2['default'])(month, enableOutsideDays, firstDayOfWeek == null ? _moment2['default'].localeData().firstDayOfWeek() : firstDayOfWeek)
       
  7784           });
       
  7785         }
       
  7786       }
       
  7787 
       
  7788       return componentWillReceiveProps;
       
  7789     }()
       
  7790   }, {
       
  7791     key: 'shouldComponentUpdate',
       
  7792     value: function () {
       
  7793       function shouldComponentUpdate(nextProps, nextState) {
       
  7794         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
  7795       }
       
  7796 
       
  7797       return shouldComponentUpdate;
       
  7798     }()
       
  7799   }, {
       
  7800     key: 'componentWillUnmount',
       
  7801     value: function () {
       
  7802       function componentWillUnmount() {
       
  7803         if (this.setMonthTitleHeightTimeout) {
       
  7804           clearTimeout(this.setMonthTitleHeightTimeout);
       
  7805         }
       
  7806       }
       
  7807 
       
  7808       return componentWillUnmount;
       
  7809     }()
       
  7810   }, {
       
  7811     key: 'setMonthTitleHeight',
       
  7812     value: function () {
       
  7813       function setMonthTitleHeight() {
       
  7814         var setMonthTitleHeight = this.props.setMonthTitleHeight;
       
  7815 
       
  7816         if (setMonthTitleHeight) {
       
  7817           var captionHeight = (0, _calculateDimension2['default'])(this.captionRef, 'height', true, true);
       
  7818           setMonthTitleHeight(captionHeight);
       
  7819         }
       
  7820       }
       
  7821 
       
  7822       return setMonthTitleHeight;
       
  7823     }()
       
  7824   }, {
       
  7825     key: 'setCaptionRef',
       
  7826     value: function () {
       
  7827       function setCaptionRef(ref) {
       
  7828         this.captionRef = ref;
       
  7829       }
       
  7830 
       
  7831       return setCaptionRef;
       
  7832     }()
       
  7833   }, {
       
  7834     key: 'render',
       
  7835     value: function () {
       
  7836       function render() {
       
  7837         var _props2 = this.props,
       
  7838             dayAriaLabelFormat = _props2.dayAriaLabelFormat,
       
  7839             daySize = _props2.daySize,
       
  7840             focusedDate = _props2.focusedDate,
       
  7841             horizontalMonthPadding = _props2.horizontalMonthPadding,
       
  7842             isFocused = _props2.isFocused,
       
  7843             isVisible = _props2.isVisible,
       
  7844             modifiers = _props2.modifiers,
       
  7845             month = _props2.month,
       
  7846             monthFormat = _props2.monthFormat,
       
  7847             onDayClick = _props2.onDayClick,
       
  7848             onDayMouseEnter = _props2.onDayMouseEnter,
       
  7849             onDayMouseLeave = _props2.onDayMouseLeave,
       
  7850             onMonthSelect = _props2.onMonthSelect,
       
  7851             onYearSelect = _props2.onYearSelect,
       
  7852             orientation = _props2.orientation,
       
  7853             phrases = _props2.phrases,
       
  7854             renderCalendarDay = _props2.renderCalendarDay,
       
  7855             renderDayContents = _props2.renderDayContents,
       
  7856             renderMonthElement = _props2.renderMonthElement,
       
  7857             renderMonthText = _props2.renderMonthText,
       
  7858             styles = _props2.styles,
       
  7859             verticalBorderSpacing = _props2.verticalBorderSpacing;
       
  7860         var weeks = this.state.weeks;
       
  7861 
       
  7862         var monthTitle = renderMonthText ? renderMonthText(month) : month.format(monthFormat);
       
  7863 
       
  7864         var verticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
  7865 
       
  7866         return _react2['default'].createElement(
       
  7867           'div',
       
  7868           _extends({}, (0, _reactWithStyles.css)(styles.CalendarMonth, { padding: '0 ' + String(horizontalMonthPadding) + 'px' }), {
       
  7869             'data-visible': isVisible
       
  7870           }),
       
  7871           _react2['default'].createElement(
       
  7872             'div',
       
  7873             _extends({
       
  7874               ref: this.setCaptionRef
       
  7875             }, (0, _reactWithStyles.css)(styles.CalendarMonth_caption, verticalScrollable && styles.CalendarMonth_caption__verticalScrollable)),
       
  7876             renderMonthElement ? renderMonthElement({ month: month, onMonthSelect: onMonthSelect, onYearSelect: onYearSelect }) : _react2['default'].createElement(
       
  7877               'strong',
       
  7878               null,
       
  7879               monthTitle
       
  7880             )
       
  7881           ),
       
  7882           _react2['default'].createElement(
       
  7883             'table',
       
  7884             _extends({}, (0, _reactWithStyles.css)(!verticalBorderSpacing && styles.CalendarMonth_table, verticalBorderSpacing && styles.CalendarMonth_verticalSpacing, verticalBorderSpacing && { borderSpacing: '0px ' + String(verticalBorderSpacing) + 'px' }), {
       
  7885               role: 'presentation'
       
  7886             }),
       
  7887             _react2['default'].createElement(
       
  7888               'tbody',
       
  7889               null,
       
  7890               weeks.map(function (week, i) {
       
  7891                 return _react2['default'].createElement(
       
  7892                   _CalendarWeek2['default'],
       
  7893                   { key: i },
       
  7894                   week.map(function (day, dayOfWeek) {
       
  7895                     return renderCalendarDay({
       
  7896                       key: dayOfWeek,
       
  7897                       day: day,
       
  7898                       daySize: daySize,
       
  7899                       isOutsideDay: !day || day.month() !== month.month(),
       
  7900                       tabIndex: isVisible && (0, _isSameDay2['default'])(day, focusedDate) ? 0 : -1,
       
  7901                       isFocused: isFocused,
       
  7902                       onDayMouseEnter: onDayMouseEnter,
       
  7903                       onDayMouseLeave: onDayMouseLeave,
       
  7904                       onDayClick: onDayClick,
       
  7905                       renderDayContents: renderDayContents,
       
  7906                       phrases: phrases,
       
  7907                       modifiers: modifiers[(0, _toISODateString2['default'])(day)],
       
  7908                       ariaLabelFormat: dayAriaLabelFormat
       
  7909                     });
       
  7910                   })
       
  7911                 );
       
  7912               })
       
  7913             )
       
  7914           )
       
  7915         );
       
  7916       }
       
  7917 
       
  7918       return render;
       
  7919     }()
       
  7920   }]);
       
  7921 
       
  7922   return CalendarMonth;
       
  7923 }(_react2['default'].Component);
       
  7924 
       
  7925 CalendarMonth.propTypes = propTypes;
       
  7926 CalendarMonth.defaultProps = defaultProps;
       
  7927 
       
  7928 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
  7929   var _ref$reactDates = _ref.reactDates,
       
  7930       color = _ref$reactDates.color,
       
  7931       font = _ref$reactDates.font,
       
  7932       spacing = _ref$reactDates.spacing;
       
  7933   return {
       
  7934     CalendarMonth: {
       
  7935       background: color.background,
       
  7936       textAlign: 'center',
       
  7937       verticalAlign: 'top',
       
  7938       userSelect: 'none'
       
  7939     },
       
  7940 
       
  7941     CalendarMonth_table: {
       
  7942       borderCollapse: 'collapse',
       
  7943       borderSpacing: 0
       
  7944     },
       
  7945 
       
  7946     CalendarMonth_verticalSpacing: {
       
  7947       borderCollapse: 'separate'
       
  7948     },
       
  7949 
       
  7950     CalendarMonth_caption: {
       
  7951       color: color.text,
       
  7952       fontSize: font.captionSize,
       
  7953       textAlign: 'center',
       
  7954       paddingTop: spacing.captionPaddingTop,
       
  7955       paddingBottom: spacing.captionPaddingBottom,
       
  7956       captionSide: 'initial'
       
  7957     },
       
  7958 
       
  7959     CalendarMonth_caption__verticalScrollable: {
       
  7960       paddingTop: 12,
       
  7961       paddingBottom: 7
       
  7962     }
       
  7963   };
       
  7964 })(CalendarMonth);
       
  7965 
       
  7966 /***/ }),
       
  7967 /* 159 */
       
  7968 /***/ (function(module, exports, __webpack_require__) {
       
  7969 
       
  7970 "use strict";
       
  7971 
       
  7972 
       
  7973 Object.defineProperty(exports, "__esModule", {
       
  7974   value: true
       
  7975 });
       
  7976 exports['default'] = calculateDimension;
       
  7977 function calculateDimension(el, axis) {
       
  7978   var borderBox = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
       
  7979   var withMargin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
       
  7980 
       
  7981   if (!el) {
       
  7982     return 0;
       
  7983   }
       
  7984 
       
  7985   var axisStart = axis === 'width' ? 'Left' : 'Top';
       
  7986   var axisEnd = axis === 'width' ? 'Right' : 'Bottom';
       
  7987 
       
  7988   // Only read styles if we need to
       
  7989   var style = !borderBox || withMargin ? window.getComputedStyle(el) : null;
       
  7990 
       
  7991   // Offset includes border and padding
       
  7992   var offsetWidth = el.offsetWidth,
       
  7993       offsetHeight = el.offsetHeight;
       
  7994 
       
  7995   var size = axis === 'width' ? offsetWidth : offsetHeight;
       
  7996 
       
  7997   // Get the inner size
       
  7998   if (!borderBox) {
       
  7999     size -= parseFloat(style['padding' + axisStart]) + parseFloat(style['padding' + axisEnd]) + parseFloat(style['border' + axisStart + 'Width']) + parseFloat(style['border' + axisEnd + 'Width']);
       
  8000   }
       
  8001 
       
  8002   // Apply margin
       
  8003   if (withMargin) {
       
  8004     size += parseFloat(style['margin' + axisStart]) + parseFloat(style['margin' + axisEnd]);
       
  8005   }
       
  8006 
       
  8007   return size;
       
  8008 }
       
  8009 
       
  8010 /***/ }),
       
  8011 /* 160 */
       
  8012 /***/ (function(module, exports, __webpack_require__) {
       
  8013 
       
  8014 "use strict";
       
  8015 
       
  8016 
       
  8017 Object.defineProperty(exports, "__esModule", {
       
  8018   value: true
       
  8019 });
       
  8020 
       
  8021 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
  8022 
       
  8023 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
  8024 
       
  8025 var _object = __webpack_require__(46);
       
  8026 
       
  8027 var _object2 = _interopRequireDefault(_object);
       
  8028 
       
  8029 var _react = __webpack_require__(27);
       
  8030 
       
  8031 var _react2 = _interopRequireDefault(_react);
       
  8032 
       
  8033 var _propTypes = __webpack_require__(31);
       
  8034 
       
  8035 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  8036 
       
  8037 var _reactAddonsShallowCompare = __webpack_require__(78);
       
  8038 
       
  8039 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
  8040 
       
  8041 var _reactMomentProptypes = __webpack_require__(64);
       
  8042 
       
  8043 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
  8044 
       
  8045 var _airbnbPropTypes = __webpack_require__(43);
       
  8046 
       
  8047 var _reactWithStyles = __webpack_require__(56);
       
  8048 
       
  8049 var _moment = __webpack_require__(29);
       
  8050 
       
  8051 var _moment2 = _interopRequireDefault(_moment);
       
  8052 
       
  8053 var _consolidatedEvents = __webpack_require__(103);
       
  8054 
       
  8055 var _defaultPhrases = __webpack_require__(47);
       
  8056 
       
  8057 var _getPhrasePropTypes = __webpack_require__(51);
       
  8058 
       
  8059 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
  8060 
       
  8061 var _CalendarMonth = __webpack_require__(158);
       
  8062 
       
  8063 var _CalendarMonth2 = _interopRequireDefault(_CalendarMonth);
       
  8064 
       
  8065 var _isTransitionEndSupported = __webpack_require__(298);
       
  8066 
       
  8067 var _isTransitionEndSupported2 = _interopRequireDefault(_isTransitionEndSupported);
       
  8068 
       
  8069 var _getTransformStyles = __webpack_require__(299);
       
  8070 
       
  8071 var _getTransformStyles2 = _interopRequireDefault(_getTransformStyles);
       
  8072 
       
  8073 var _getCalendarMonthWidth = __webpack_require__(161);
       
  8074 
       
  8075 var _getCalendarMonthWidth2 = _interopRequireDefault(_getCalendarMonthWidth);
       
  8076 
       
  8077 var _toISOMonthString = __webpack_require__(104);
       
  8078 
       
  8079 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
  8080 
       
  8081 var _isPrevMonth = __webpack_require__(300);
       
  8082 
       
  8083 var _isPrevMonth2 = _interopRequireDefault(_isPrevMonth);
       
  8084 
       
  8085 var _isNextMonth = __webpack_require__(301);
       
  8086 
       
  8087 var _isNextMonth2 = _interopRequireDefault(_isNextMonth);
       
  8088 
       
  8089 var _ModifiersShape = __webpack_require__(101);
       
  8090 
       
  8091 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
  8092 
       
  8093 var _ScrollableOrientationShape = __webpack_require__(81);
       
  8094 
       
  8095 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
  8096 
       
  8097 var _DayOfWeekShape = __webpack_require__(75);
       
  8098 
       
  8099 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
  8100 
       
  8101 var _constants = __webpack_require__(39);
       
  8102 
       
  8103 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  8104 
       
  8105 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
  8106 
       
  8107 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
  8108 
       
  8109 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
  8110 
       
  8111 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
  8112   enableOutsideDays: _propTypes2['default'].bool,
       
  8113   firstVisibleMonthIndex: _propTypes2['default'].number,
       
  8114   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
  8115   initialMonth: _reactMomentProptypes2['default'].momentObj,
       
  8116   isAnimating: _propTypes2['default'].bool,
       
  8117   numberOfMonths: _propTypes2['default'].number,
       
  8118   modifiers: _propTypes2['default'].objectOf(_propTypes2['default'].objectOf(_ModifiersShape2['default'])),
       
  8119   orientation: _ScrollableOrientationShape2['default'],
       
  8120   onDayClick: _propTypes2['default'].func,
       
  8121   onDayMouseEnter: _propTypes2['default'].func,
       
  8122   onDayMouseLeave: _propTypes2['default'].func,
       
  8123   onMonthTransitionEnd: _propTypes2['default'].func,
       
  8124   onMonthChange: _propTypes2['default'].func,
       
  8125   onYearChange: _propTypes2['default'].func,
       
  8126   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  8127   renderCalendarDay: _propTypes2['default'].func,
       
  8128   renderDayContents: _propTypes2['default'].func,
       
  8129   translationValue: _propTypes2['default'].number,
       
  8130   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  8131   daySize: _airbnbPropTypes.nonNegativeInteger,
       
  8132   focusedDate: _reactMomentProptypes2['default'].momentObj, // indicates focusable day
       
  8133   isFocused: _propTypes2['default'].bool, // indicates whether or not to move focus to focusable day
       
  8134   firstDayOfWeek: _DayOfWeekShape2['default'],
       
  8135   setMonthTitleHeight: _propTypes2['default'].func,
       
  8136   isRTL: _propTypes2['default'].bool,
       
  8137   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
  8138   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
  8139 
       
  8140   // i18n
       
  8141   monthFormat: _propTypes2['default'].string,
       
  8142   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases)),
       
  8143   dayAriaLabelFormat: _propTypes2['default'].string
       
  8144 }));
       
  8145 
       
  8146 var defaultProps = {
       
  8147   enableOutsideDays: false,
       
  8148   firstVisibleMonthIndex: 0,
       
  8149   horizontalMonthPadding: 13,
       
  8150   initialMonth: (0, _moment2['default'])(),
       
  8151   isAnimating: false,
       
  8152   numberOfMonths: 1,
       
  8153   modifiers: {},
       
  8154   orientation: _constants.HORIZONTAL_ORIENTATION,
       
  8155   onDayClick: function () {
       
  8156     function onDayClick() {}
       
  8157 
       
  8158     return onDayClick;
       
  8159   }(),
       
  8160   onDayMouseEnter: function () {
       
  8161     function onDayMouseEnter() {}
       
  8162 
       
  8163     return onDayMouseEnter;
       
  8164   }(),
       
  8165   onDayMouseLeave: function () {
       
  8166     function onDayMouseLeave() {}
       
  8167 
       
  8168     return onDayMouseLeave;
       
  8169   }(),
       
  8170   onMonthChange: function () {
       
  8171     function onMonthChange() {}
       
  8172 
       
  8173     return onMonthChange;
       
  8174   }(),
       
  8175   onYearChange: function () {
       
  8176     function onYearChange() {}
       
  8177 
       
  8178     return onYearChange;
       
  8179   }(),
       
  8180   onMonthTransitionEnd: function () {
       
  8181     function onMonthTransitionEnd() {}
       
  8182 
       
  8183     return onMonthTransitionEnd;
       
  8184   }(),
       
  8185 
       
  8186   renderMonthText: null,
       
  8187   renderCalendarDay: undefined,
       
  8188   renderDayContents: null,
       
  8189   translationValue: null,
       
  8190   renderMonthElement: null,
       
  8191   daySize: _constants.DAY_SIZE,
       
  8192   focusedDate: null,
       
  8193   isFocused: false,
       
  8194   firstDayOfWeek: null,
       
  8195   setMonthTitleHeight: null,
       
  8196   isRTL: false,
       
  8197   transitionDuration: 200,
       
  8198   verticalBorderSpacing: undefined,
       
  8199 
       
  8200   // i18n
       
  8201   monthFormat: 'MMMM YYYY', // english locale
       
  8202   phrases: _defaultPhrases.CalendarDayPhrases,
       
  8203   dayAriaLabelFormat: undefined
       
  8204 };
       
  8205 
       
  8206 function getMonths(initialMonth, numberOfMonths, withoutTransitionMonths) {
       
  8207   var month = initialMonth.clone();
       
  8208   if (!withoutTransitionMonths) month = month.subtract(1, 'month');
       
  8209 
       
  8210   var months = [];
       
  8211   for (var i = 0; i < (withoutTransitionMonths ? numberOfMonths : numberOfMonths + 2); i += 1) {
       
  8212     months.push(month);
       
  8213     month = month.clone().add(1, 'month');
       
  8214   }
       
  8215 
       
  8216   return months;
       
  8217 }
       
  8218 
       
  8219 var CalendarMonthGrid = function (_React$Component) {
       
  8220   _inherits(CalendarMonthGrid, _React$Component);
       
  8221 
       
  8222   function CalendarMonthGrid(props) {
       
  8223     _classCallCheck(this, CalendarMonthGrid);
       
  8224 
       
  8225     var _this = _possibleConstructorReturn(this, (CalendarMonthGrid.__proto__ || Object.getPrototypeOf(CalendarMonthGrid)).call(this, props));
       
  8226 
       
  8227     var withoutTransitionMonths = props.orientation === _constants.VERTICAL_SCROLLABLE;
       
  8228     _this.state = {
       
  8229       months: getMonths(props.initialMonth, props.numberOfMonths, withoutTransitionMonths)
       
  8230     };
       
  8231 
       
  8232     _this.isTransitionEndSupported = (0, _isTransitionEndSupported2['default'])();
       
  8233     _this.onTransitionEnd = _this.onTransitionEnd.bind(_this);
       
  8234     _this.setContainerRef = _this.setContainerRef.bind(_this);
       
  8235 
       
  8236     _this.locale = _moment2['default'].locale();
       
  8237     _this.onMonthSelect = _this.onMonthSelect.bind(_this);
       
  8238     _this.onYearSelect = _this.onYearSelect.bind(_this);
       
  8239     return _this;
       
  8240   }
       
  8241 
       
  8242   _createClass(CalendarMonthGrid, [{
       
  8243     key: 'componentDidMount',
       
  8244     value: function () {
       
  8245       function componentDidMount() {
       
  8246         this.removeEventListener = (0, _consolidatedEvents.addEventListener)(this.container, 'transitionend', this.onTransitionEnd);
       
  8247       }
       
  8248 
       
  8249       return componentDidMount;
       
  8250     }()
       
  8251   }, {
       
  8252     key: 'componentWillReceiveProps',
       
  8253     value: function () {
       
  8254       function componentWillReceiveProps(nextProps) {
       
  8255         var _this2 = this;
       
  8256 
       
  8257         var initialMonth = nextProps.initialMonth,
       
  8258             numberOfMonths = nextProps.numberOfMonths,
       
  8259             orientation = nextProps.orientation;
       
  8260         var months = this.state.months;
       
  8261         var _props = this.props,
       
  8262             prevInitialMonth = _props.initialMonth,
       
  8263             prevNumberOfMonths = _props.numberOfMonths;
       
  8264 
       
  8265         var hasMonthChanged = !prevInitialMonth.isSame(initialMonth, 'month');
       
  8266         var hasNumberOfMonthsChanged = prevNumberOfMonths !== numberOfMonths;
       
  8267         var newMonths = months;
       
  8268 
       
  8269         if (hasMonthChanged && !hasNumberOfMonthsChanged) {
       
  8270           if ((0, _isNextMonth2['default'])(prevInitialMonth, initialMonth)) {
       
  8271             newMonths = months.slice(1);
       
  8272             newMonths.push(months[months.length - 1].clone().add(1, 'month'));
       
  8273           } else if ((0, _isPrevMonth2['default'])(prevInitialMonth, initialMonth)) {
       
  8274             newMonths = months.slice(0, months.length - 1);
       
  8275             newMonths.unshift(months[0].clone().subtract(1, 'month'));
       
  8276           } else {
       
  8277             var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
  8278             newMonths = getMonths(initialMonth, numberOfMonths, withoutTransitionMonths);
       
  8279           }
       
  8280         }
       
  8281 
       
  8282         if (hasNumberOfMonthsChanged) {
       
  8283           var _withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
  8284           newMonths = getMonths(initialMonth, numberOfMonths, _withoutTransitionMonths);
       
  8285         }
       
  8286 
       
  8287         var momentLocale = _moment2['default'].locale();
       
  8288         if (this.locale !== momentLocale) {
       
  8289           this.locale = momentLocale;
       
  8290           newMonths = newMonths.map(function (m) {
       
  8291             return m.locale(_this2.locale);
       
  8292           });
       
  8293         }
       
  8294 
       
  8295         this.setState({
       
  8296           months: newMonths
       
  8297         });
       
  8298       }
       
  8299 
       
  8300       return componentWillReceiveProps;
       
  8301     }()
       
  8302   }, {
       
  8303     key: 'shouldComponentUpdate',
       
  8304     value: function () {
       
  8305       function shouldComponentUpdate(nextProps, nextState) {
       
  8306         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
  8307       }
       
  8308 
       
  8309       return shouldComponentUpdate;
       
  8310     }()
       
  8311   }, {
       
  8312     key: 'componentDidUpdate',
       
  8313     value: function () {
       
  8314       function componentDidUpdate() {
       
  8315         var _props2 = this.props,
       
  8316             isAnimating = _props2.isAnimating,
       
  8317             transitionDuration = _props2.transitionDuration,
       
  8318             onMonthTransitionEnd = _props2.onMonthTransitionEnd;
       
  8319 
       
  8320         // For IE9, immediately call onMonthTransitionEnd instead of
       
  8321         // waiting for the animation to complete. Similarly, if transitionDuration
       
  8322         // is set to 0, also immediately invoke the onMonthTransitionEnd callback
       
  8323 
       
  8324         if ((!this.isTransitionEndSupported || !transitionDuration) && isAnimating) {
       
  8325           onMonthTransitionEnd();
       
  8326         }
       
  8327       }
       
  8328 
       
  8329       return componentDidUpdate;
       
  8330     }()
       
  8331   }, {
       
  8332     key: 'componentWillUnmount',
       
  8333     value: function () {
       
  8334       function componentWillUnmount() {
       
  8335         if (this.removeEventListener) this.removeEventListener();
       
  8336       }
       
  8337 
       
  8338       return componentWillUnmount;
       
  8339     }()
       
  8340   }, {
       
  8341     key: 'onTransitionEnd',
       
  8342     value: function () {
       
  8343       function onTransitionEnd() {
       
  8344         var onMonthTransitionEnd = this.props.onMonthTransitionEnd;
       
  8345 
       
  8346         onMonthTransitionEnd();
       
  8347       }
       
  8348 
       
  8349       return onTransitionEnd;
       
  8350     }()
       
  8351   }, {
       
  8352     key: 'onMonthSelect',
       
  8353     value: function () {
       
  8354       function onMonthSelect(currentMonth, newMonthVal) {
       
  8355         var newMonth = currentMonth.clone();
       
  8356         var _props3 = this.props,
       
  8357             onMonthChange = _props3.onMonthChange,
       
  8358             orientation = _props3.orientation;
       
  8359         var months = this.state.months;
       
  8360 
       
  8361         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
  8362         var initialMonthSubtraction = months.indexOf(currentMonth);
       
  8363         if (!withoutTransitionMonths) {
       
  8364           initialMonthSubtraction -= 1;
       
  8365         }
       
  8366         newMonth.set('month', newMonthVal).subtract(initialMonthSubtraction, 'months');
       
  8367         onMonthChange(newMonth);
       
  8368       }
       
  8369 
       
  8370       return onMonthSelect;
       
  8371     }()
       
  8372   }, {
       
  8373     key: 'onYearSelect',
       
  8374     value: function () {
       
  8375       function onYearSelect(currentMonth, newYearVal) {
       
  8376         var newMonth = currentMonth.clone();
       
  8377         var _props4 = this.props,
       
  8378             onYearChange = _props4.onYearChange,
       
  8379             orientation = _props4.orientation;
       
  8380         var months = this.state.months;
       
  8381 
       
  8382         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
  8383         var initialMonthSubtraction = months.indexOf(currentMonth);
       
  8384         if (!withoutTransitionMonths) {
       
  8385           initialMonthSubtraction -= 1;
       
  8386         }
       
  8387         newMonth.set('year', newYearVal).subtract(initialMonthSubtraction, 'months');
       
  8388         onYearChange(newMonth);
       
  8389       }
       
  8390 
       
  8391       return onYearSelect;
       
  8392     }()
       
  8393   }, {
       
  8394     key: 'setContainerRef',
       
  8395     value: function () {
       
  8396       function setContainerRef(ref) {
       
  8397         this.container = ref;
       
  8398       }
       
  8399 
       
  8400       return setContainerRef;
       
  8401     }()
       
  8402   }, {
       
  8403     key: 'render',
       
  8404     value: function () {
       
  8405       function render() {
       
  8406         var _this3 = this;
       
  8407 
       
  8408         var _props5 = this.props,
       
  8409             enableOutsideDays = _props5.enableOutsideDays,
       
  8410             firstVisibleMonthIndex = _props5.firstVisibleMonthIndex,
       
  8411             horizontalMonthPadding = _props5.horizontalMonthPadding,
       
  8412             isAnimating = _props5.isAnimating,
       
  8413             modifiers = _props5.modifiers,
       
  8414             numberOfMonths = _props5.numberOfMonths,
       
  8415             monthFormat = _props5.monthFormat,
       
  8416             orientation = _props5.orientation,
       
  8417             translationValue = _props5.translationValue,
       
  8418             daySize = _props5.daySize,
       
  8419             onDayMouseEnter = _props5.onDayMouseEnter,
       
  8420             onDayMouseLeave = _props5.onDayMouseLeave,
       
  8421             onDayClick = _props5.onDayClick,
       
  8422             renderMonthText = _props5.renderMonthText,
       
  8423             renderCalendarDay = _props5.renderCalendarDay,
       
  8424             renderDayContents = _props5.renderDayContents,
       
  8425             renderMonthElement = _props5.renderMonthElement,
       
  8426             onMonthTransitionEnd = _props5.onMonthTransitionEnd,
       
  8427             firstDayOfWeek = _props5.firstDayOfWeek,
       
  8428             focusedDate = _props5.focusedDate,
       
  8429             isFocused = _props5.isFocused,
       
  8430             isRTL = _props5.isRTL,
       
  8431             styles = _props5.styles,
       
  8432             phrases = _props5.phrases,
       
  8433             dayAriaLabelFormat = _props5.dayAriaLabelFormat,
       
  8434             transitionDuration = _props5.transitionDuration,
       
  8435             verticalBorderSpacing = _props5.verticalBorderSpacing,
       
  8436             setMonthTitleHeight = _props5.setMonthTitleHeight;
       
  8437         var months = this.state.months;
       
  8438 
       
  8439         var isVertical = orientation === _constants.VERTICAL_ORIENTATION;
       
  8440         var isVerticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
  8441         var isHorizontal = orientation === _constants.HORIZONTAL_ORIENTATION;
       
  8442 
       
  8443         var calendarMonthWidth = (0, _getCalendarMonthWidth2['default'])(daySize, horizontalMonthPadding);
       
  8444 
       
  8445         var width = isVertical || isVerticalScrollable ? calendarMonthWidth : (numberOfMonths + 2) * calendarMonthWidth;
       
  8446 
       
  8447         var transformType = isVertical || isVerticalScrollable ? 'translateY' : 'translateX';
       
  8448         var transformValue = transformType + '(' + String(translationValue) + 'px)';
       
  8449 
       
  8450         return _react2['default'].createElement(
       
  8451           'div',
       
  8452           _extends({}, (0, _reactWithStyles.css)(styles.CalendarMonthGrid, isHorizontal && styles.CalendarMonthGrid__horizontal, isVertical && styles.CalendarMonthGrid__vertical, isVerticalScrollable && styles.CalendarMonthGrid__vertical_scrollable, isAnimating && styles.CalendarMonthGrid__animating, isAnimating && transitionDuration && {
       
  8453             transition: 'transform ' + String(transitionDuration) + 'ms ease-in-out'
       
  8454           }, (0, _object2['default'])({}, (0, _getTransformStyles2['default'])(transformValue), {
       
  8455             width: width
       
  8456           })), {
       
  8457             ref: this.setContainerRef,
       
  8458             onTransitionEnd: onMonthTransitionEnd
       
  8459           }),
       
  8460           months.map(function (month, i) {
       
  8461             var isVisible = i >= firstVisibleMonthIndex && i < firstVisibleMonthIndex + numberOfMonths;
       
  8462             var hideForAnimation = i === 0 && !isVisible;
       
  8463             var showForAnimation = i === 0 && isAnimating && isVisible;
       
  8464             var monthString = (0, _toISOMonthString2['default'])(month);
       
  8465             return _react2['default'].createElement(
       
  8466               'div',
       
  8467               _extends({
       
  8468                 key: monthString
       
  8469               }, (0, _reactWithStyles.css)(isHorizontal && styles.CalendarMonthGrid_month__horizontal, hideForAnimation && styles.CalendarMonthGrid_month__hideForAnimation, showForAnimation && !isVertical && !isRTL && {
       
  8470                 position: 'absolute',
       
  8471                 left: -calendarMonthWidth
       
  8472               }, showForAnimation && !isVertical && isRTL && {
       
  8473                 position: 'absolute',
       
  8474                 right: 0
       
  8475               }, showForAnimation && isVertical && {
       
  8476                 position: 'absolute',
       
  8477                 top: -translationValue
       
  8478               }, !isVisible && !isAnimating && styles.CalendarMonthGrid_month__hidden)),
       
  8479               _react2['default'].createElement(_CalendarMonth2['default'], {
       
  8480                 month: month,
       
  8481                 isVisible: isVisible,
       
  8482                 enableOutsideDays: enableOutsideDays,
       
  8483                 modifiers: modifiers[monthString],
       
  8484                 monthFormat: monthFormat,
       
  8485                 orientation: orientation,
       
  8486                 onDayMouseEnter: onDayMouseEnter,
       
  8487                 onDayMouseLeave: onDayMouseLeave,
       
  8488                 onDayClick: onDayClick,
       
  8489                 onMonthSelect: _this3.onMonthSelect,
       
  8490                 onYearSelect: _this3.onYearSelect,
       
  8491                 renderMonthText: renderMonthText,
       
  8492                 renderCalendarDay: renderCalendarDay,
       
  8493                 renderDayContents: renderDayContents,
       
  8494                 renderMonthElement: renderMonthElement,
       
  8495                 firstDayOfWeek: firstDayOfWeek,
       
  8496                 daySize: daySize,
       
  8497                 focusedDate: isVisible ? focusedDate : null,
       
  8498                 isFocused: isFocused,
       
  8499                 phrases: phrases,
       
  8500                 setMonthTitleHeight: setMonthTitleHeight,
       
  8501                 dayAriaLabelFormat: dayAriaLabelFormat,
       
  8502                 verticalBorderSpacing: verticalBorderSpacing,
       
  8503                 horizontalMonthPadding: horizontalMonthPadding
       
  8504               })
       
  8505             );
       
  8506           })
       
  8507         );
       
  8508       }
       
  8509 
       
  8510       return render;
       
  8511     }()
       
  8512   }]);
       
  8513 
       
  8514   return CalendarMonthGrid;
       
  8515 }(_react2['default'].Component);
       
  8516 
       
  8517 CalendarMonthGrid.propTypes = propTypes;
       
  8518 CalendarMonthGrid.defaultProps = defaultProps;
       
  8519 
       
  8520 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
  8521   var _ref$reactDates = _ref.reactDates,
       
  8522       color = _ref$reactDates.color,
       
  8523       noScrollBarOnVerticalScrollable = _ref$reactDates.noScrollBarOnVerticalScrollable,
       
  8524       spacing = _ref$reactDates.spacing,
       
  8525       zIndex = _ref$reactDates.zIndex;
       
  8526   return {
       
  8527     CalendarMonthGrid: {
       
  8528       background: color.background,
       
  8529       textAlign: 'left',
       
  8530       zIndex: zIndex
       
  8531     },
       
  8532 
       
  8533     CalendarMonthGrid__animating: {
       
  8534       zIndex: zIndex + 1
       
  8535     },
       
  8536 
       
  8537     CalendarMonthGrid__horizontal: {
       
  8538       position: 'absolute',
       
  8539       left: spacing.dayPickerHorizontalPadding
       
  8540     },
       
  8541 
       
  8542     CalendarMonthGrid__vertical: {
       
  8543       margin: '0 auto'
       
  8544     },
       
  8545 
       
  8546     CalendarMonthGrid__vertical_scrollable: (0, _object2['default'])({
       
  8547       margin: '0 auto',
       
  8548       overflowY: 'scroll'
       
  8549     }, noScrollBarOnVerticalScrollable && {
       
  8550       '-webkitOverflowScrolling': 'touch',
       
  8551       '::-webkit-scrollbar': {
       
  8552         '-webkit-appearance': 'none',
       
  8553         display: 'none'
       
  8554       }
       
  8555     }),
       
  8556 
       
  8557     CalendarMonthGrid_month__horizontal: {
       
  8558       display: 'inline-block',
       
  8559       verticalAlign: 'top',
       
  8560       minHeight: '100%'
       
  8561     },
       
  8562 
       
  8563     CalendarMonthGrid_month__hideForAnimation: {
       
  8564       position: 'absolute',
       
  8565       zIndex: zIndex - 1,
       
  8566       opacity: 0,
       
  8567       pointerEvents: 'none'
       
  8568     },
       
  8569 
       
  8570     CalendarMonthGrid_month__hidden: {
       
  8571       visibility: 'hidden'
       
  8572     }
       
  8573   };
       
  8574 })(CalendarMonthGrid);
       
  8575 
       
  8576 /***/ }),
       
  8577 /* 161 */
       
  8578 /***/ (function(module, exports, __webpack_require__) {
       
  8579 
       
  8580 "use strict";
       
  8581 
       
  8582 
       
  8583 Object.defineProperty(exports, "__esModule", {
       
  8584   value: true
       
  8585 });
       
  8586 exports["default"] = getCalendarMonthWidth;
       
  8587 function getCalendarMonthWidth(daySize, calendarMonthPadding) {
       
  8588   return 7 * daySize + 2 * calendarMonthPadding + 1;
       
  8589 }
       
  8590 
       
  8591 /***/ }),
       
  8592 /* 162 */
       
  8593 /***/ (function(module, exports, __webpack_require__) {
       
  8594 
       
  8595 "use strict";
       
  8596 
       
  8597 
       
  8598 Object.defineProperty(exports, "__esModule", {
       
  8599   value: true
       
  8600 });
       
  8601 exports['default'] = isSameMonth;
       
  8602 
       
  8603 var _moment = __webpack_require__(29);
       
  8604 
       
  8605 var _moment2 = _interopRequireDefault(_moment);
       
  8606 
       
  8607 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  8608 
       
  8609 function isSameMonth(a, b) {
       
  8610   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
  8611   // Compare least significant, most likely to change units first
       
  8612   // Moment's isSame clones moment inputs and is a tad slow
       
  8613   return a.month() === b.month() && a.year() === b.year();
       
  8614 }
       
  8615 
       
  8616 /***/ }),
       
  8617 /* 163 */
       
  8618 /***/ (function(module, exports, __webpack_require__) {
       
  8619 
       
  8620 "use strict";
       
  8621 
       
  8622 
       
  8623 var keys = __webpack_require__(308);
       
  8624 var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
       
  8625 
       
  8626 var toStr = Object.prototype.toString;
       
  8627 var concat = Array.prototype.concat;
       
  8628 var origDefineProperty = Object.defineProperty;
       
  8629 
       
  8630 var isFunction = function (fn) {
       
  8631 	return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
       
  8632 };
       
  8633 
       
  8634 var arePropertyDescriptorsSupported = function () {
       
  8635 	var obj = {};
       
  8636 	try {
       
  8637 		origDefineProperty(obj, 'x', { enumerable: false, value: obj });
       
  8638 		// eslint-disable-next-line no-unused-vars, no-restricted-syntax
       
  8639 		for (var _ in obj) { // jscs:ignore disallowUnusedVariables
       
  8640 			return false;
       
  8641 		}
       
  8642 		return obj.x === obj;
       
  8643 	} catch (e) { /* this is IE 8. */
       
  8644 		return false;
       
  8645 	}
       
  8646 };
       
  8647 var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();
       
  8648 
       
  8649 var defineProperty = function (object, name, value, predicate) {
       
  8650 	if (name in object && (!isFunction(predicate) || !predicate())) {
       
  8651 		return;
       
  8652 	}
       
  8653 	if (supportsDescriptors) {
       
  8654 		origDefineProperty(object, name, {
       
  8655 			configurable: true,
       
  8656 			enumerable: false,
       
  8657 			value: value,
       
  8658 			writable: true
       
  8659 		});
       
  8660 	} else {
       
  8661 		object[name] = value;
       
  8662 	}
       
  8663 };
       
  8664 
       
  8665 var defineProperties = function (object, map) {
       
  8666 	var predicates = arguments.length > 2 ? arguments[2] : {};
       
  8667 	var props = keys(map);
       
  8668 	if (hasSymbols) {
       
  8669 		props = concat.call(props, Object.getOwnPropertySymbols(map));
       
  8670 	}
       
  8671 	for (var i = 0; i < props.length; i += 1) {
       
  8672 		defineProperty(object, props[i], map[props[i]], predicates[props[i]]);
       
  8673 	}
       
  8674 };
       
  8675 
       
  8676 defineProperties.supportsDescriptors = !!supportsDescriptors;
       
  8677 
       
  8678 module.exports = defineProperties;
       
  8679 
       
  8680 
       
  8681 /***/ }),
       
  8682 /* 164 */
       
  8683 /***/ (function(module, exports, __webpack_require__) {
       
  8684 
       
  8685 "use strict";
       
  8686 
       
  8687 
       
  8688 var toStr = Object.prototype.toString;
       
  8689 
       
  8690 module.exports = function isArguments(value) {
       
  8691 	var str = toStr.call(value);
       
  8692 	var isArgs = str === '[object Arguments]';
       
  8693 	if (!isArgs) {
       
  8694 		isArgs = str !== '[object Array]' &&
       
  8695 			value !== null &&
       
  8696 			typeof value === 'object' &&
       
  8697 			typeof value.length === 'number' &&
       
  8698 			value.length >= 0 &&
       
  8699 			toStr.call(value.callee) === '[object Function]';
       
  8700 	}
       
  8701 	return isArgs;
       
  8702 };
       
  8703 
       
  8704 
       
  8705 /***/ }),
       
  8706 /* 165 */
       
  8707 /***/ (function(module, exports, __webpack_require__) {
       
  8708 
       
  8709 "use strict";
       
  8710 
       
  8711 
       
  8712 var ES = __webpack_require__(166);
       
  8713 var has = __webpack_require__(91);
 17133 var has = __webpack_require__(91);
  8714 var bind = __webpack_require__(74);
 17134 var bind = __webpack_require__(118);
  8715 var isEnumerable = bind.call(Function.call, Object.prototype.propertyIsEnumerable);
 17135 var isEnumerable = bind.call(Function.call, Object.prototype.propertyIsEnumerable);
  8716 
 17136 
  8717 module.exports = function values(O) {
 17137 module.exports = function values(O) {
  8718 	var obj = ES.RequireObjectCoercible(O);
 17138 	var obj = ES.RequireObjectCoercible(O);
  8719 	var vals = [];
 17139 	var vals = [];
  8725 	return vals;
 17145 	return vals;
  8726 };
 17146 };
  8727 
 17147 
  8728 
 17148 
  8729 /***/ }),
 17149 /***/ }),
  8730 /* 166 */
 17150 /* 230 */
       
 17151 /***/ (function(module, exports) {
       
 17152 
       
 17153 module.exports = function isPrimitive(value) {
       
 17154 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
       
 17155 };
       
 17156 
       
 17157 
       
 17158 /***/ }),
       
 17159 /* 231 */
  8731 /***/ (function(module, exports, __webpack_require__) {
 17160 /***/ (function(module, exports, __webpack_require__) {
  8732 
 17161 
  8733 "use strict";
 17162 "use strict";
  8734 
 17163 
  8735 
 17164 
  8736 module.exports = __webpack_require__(143);
 17165 var GetIntrinsic = __webpack_require__(189);
       
 17166 
       
 17167 var $TypeError = GetIntrinsic('%TypeError%');
       
 17168 var $SyntaxError = GetIntrinsic('%SyntaxError%');
       
 17169 
       
 17170 var has = __webpack_require__(91);
       
 17171 
       
 17172 var predicates = {
       
 17173   // https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
       
 17174   'Property Descriptor': function isPropertyDescriptor(ES, Desc) {
       
 17175     if (ES.Type(Desc) !== 'Object') {
       
 17176       return false;
       
 17177     }
       
 17178     var allowed = {
       
 17179       '[[Configurable]]': true,
       
 17180       '[[Enumerable]]': true,
       
 17181       '[[Get]]': true,
       
 17182       '[[Set]]': true,
       
 17183       '[[Value]]': true,
       
 17184       '[[Writable]]': true
       
 17185     };
       
 17186 
       
 17187     for (var key in Desc) { // eslint-disable-line
       
 17188       if (has(Desc, key) && !allowed[key]) {
       
 17189         return false;
       
 17190       }
       
 17191     }
       
 17192 
       
 17193     var isData = has(Desc, '[[Value]]');
       
 17194     var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
       
 17195     if (isData && IsAccessor) {
       
 17196       throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
       
 17197     }
       
 17198     return true;
       
 17199   }
       
 17200 };
       
 17201 
       
 17202 module.exports = function assertRecord(ES, recordType, argumentName, value) {
       
 17203   var predicate = predicates[recordType];
       
 17204   if (typeof predicate !== 'function') {
       
 17205     throw new $SyntaxError('unknown record type: ' + recordType);
       
 17206   }
       
 17207   if (!predicate(ES, value)) {
       
 17208     throw new $TypeError(argumentName + ' must be a ' + recordType);
       
 17209   }
       
 17210   console.log(predicate(ES, value), value);
       
 17211 };
  8737 
 17212 
  8738 
 17213 
  8739 /***/ }),
 17214 /***/ }),
  8740 /* 167 */
 17215 /* 232 */
       
 17216 /***/ (function(module, exports) {
       
 17217 
       
 17218 module.exports = Number.isNaN || function isNaN(a) {
       
 17219 	return a !== a;
       
 17220 };
       
 17221 
       
 17222 
       
 17223 /***/ }),
       
 17224 /* 233 */
       
 17225 /***/ (function(module, exports) {
       
 17226 
       
 17227 var $isNaN = Number.isNaN || function (a) { return a !== a; };
       
 17228 
       
 17229 module.exports = Number.isFinite || function (x) { return typeof x === 'number' && !$isNaN(x) && x !== Infinity && x !== -Infinity; };
       
 17230 
       
 17231 
       
 17232 /***/ }),
       
 17233 /* 234 */
  8741 /***/ (function(module, exports, __webpack_require__) {
 17234 /***/ (function(module, exports, __webpack_require__) {
  8742 
 17235 
       
 17236 var bind = __webpack_require__(118);
       
 17237 var has = bind.call(Function.call, Object.prototype.hasOwnProperty);
       
 17238 
       
 17239 var $assign = Object.assign;
       
 17240 
       
 17241 module.exports = function assign(target, source) {
       
 17242 	if ($assign) {
       
 17243 		return $assign(target, source);
       
 17244 	}
       
 17245 
       
 17246 	for (var key in source) {
       
 17247 		if (has(source, key)) {
       
 17248 			target[key] = source[key];
       
 17249 		}
       
 17250 	}
       
 17251 	return target;
       
 17252 };
       
 17253 
       
 17254 
       
 17255 /***/ }),
       
 17256 /* 235 */
       
 17257 /***/ (function(module, exports) {
       
 17258 
       
 17259 module.exports = function sign(number) {
       
 17260 	return number >= 0 ? 1 : -1;
       
 17261 };
       
 17262 
       
 17263 
       
 17264 /***/ }),
       
 17265 /* 236 */
       
 17266 /***/ (function(module, exports) {
       
 17267 
       
 17268 module.exports = function mod(number, modulo) {
       
 17269 	var remain = number % modulo;
       
 17270 	return Math.floor(remain >= 0 ? remain : remain + modulo);
       
 17271 };
       
 17272 
       
 17273 
       
 17274 /***/ }),
       
 17275 /* 237 */
       
 17276 /***/ (function(module, exports, __webpack_require__) {
       
 17277 
  8743 "use strict";
 17278 "use strict";
  8744 
 17279 
  8745 
 17280 
  8746 var implementation = __webpack_require__(165);
 17281 var implementation = __webpack_require__(229);
  8747 
 17282 
  8748 module.exports = function getPolyfill() {
 17283 module.exports = function getPolyfill() {
  8749 	return typeof Object.values === 'function' ? Object.values : implementation;
 17284 	return typeof Object.values === 'function' ? Object.values : implementation;
  8750 };
 17285 };
  8751 
 17286 
  8752 
 17287 
  8753 /***/ }),
 17288 /***/ }),
  8754 /* 168 */
 17289 /* 238 */
       
 17290 /***/ (function(module, exports) {
       
 17291 
       
 17292 Object.defineProperty(exports, "__esModule", {
       
 17293   value: true
       
 17294 });
       
 17295 exports['default'] = isTouchDevice;
       
 17296 function isTouchDevice() {
       
 17297   return !!(typeof window !== 'undefined' && ('ontouchstart' in window || window.DocumentTouch && typeof document !== 'undefined' && document instanceof window.DocumentTouch)) || !!(typeof navigator !== 'undefined' && (navigator.maxTouchPoints || navigator.msMaxTouchPoints));
       
 17298 }
       
 17299 module.exports = exports['default'];
       
 17300 
       
 17301 /***/ }),
       
 17302 /* 239 */
  8755 /***/ (function(module, exports, __webpack_require__) {
 17303 /***/ (function(module, exports, __webpack_require__) {
  8756 
 17304 
  8757 "use strict";
 17305 "use strict";
  8758 
 17306 
  8759 
 17307 
  8760 var keys = __webpack_require__(312);
 17308 Object.defineProperty(exports, "__esModule", {
  8761 var hasSymbols = typeof Symbol === 'function' && typeof Symbol('foo') === 'symbol';
 17309   value: true
  8762 
 17310 });
  8763 var toStr = Object.prototype.toString;
 17311 exports['default'] = isAfterDay;
  8764 var concat = Array.prototype.concat;
 17312 
  8765 var origDefineProperty = Object.defineProperty;
 17313 var _moment = __webpack_require__(43);
  8766 
 17314 
  8767 var isFunction = function (fn) {
 17315 var _moment2 = _interopRequireDefault(_moment);
  8768 	return typeof fn === 'function' && toStr.call(fn) === '[object Function]';
 17316 
  8769 };
 17317 var _isBeforeDay = __webpack_require__(240);
  8770 
 17318 
  8771 var arePropertyDescriptorsSupported = function () {
 17319 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
  8772 	var obj = {};
 17320 
  8773 	try {
 17321 var _isSameDay = __webpack_require__(190);
  8774 		origDefineProperty(obj, 'x', { enumerable: false, value: obj });
 17322 
  8775 		// eslint-disable-next-line no-unused-vars, no-restricted-syntax
 17323 var _isSameDay2 = _interopRequireDefault(_isSameDay);
  8776 		for (var _ in obj) { // jscs:ignore disallowUnusedVariables
 17324 
  8777 			return false;
 17325 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  8778 		}
 17326 
  8779 		return obj.x === obj;
 17327 function isAfterDay(a, b) {
  8780 	} catch (e) { /* this is IE 8. */
 17328   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
  8781 		return false;
 17329   return !(0, _isBeforeDay2['default'])(a, b) && !(0, _isSameDay2['default'])(a, b);
  8782 	}
 17330 }
  8783 };
       
  8784 var supportsDescriptors = origDefineProperty && arePropertyDescriptorsSupported();
       
  8785 
       
  8786 var defineProperty = function (object, name, value, predicate) {
       
  8787 	if (name in object && (!isFunction(predicate) || !predicate())) {
       
  8788 		return;
       
  8789 	}
       
  8790 	if (supportsDescriptors) {
       
  8791 		origDefineProperty(object, name, {
       
  8792 			configurable: true,
       
  8793 			enumerable: false,
       
  8794 			value: value,
       
  8795 			writable: true
       
  8796 		});
       
  8797 	} else {
       
  8798 		object[name] = value;
       
  8799 	}
       
  8800 };
       
  8801 
       
  8802 var defineProperties = function (object, map) {
       
  8803 	var predicates = arguments.length > 2 ? arguments[2] : {};
       
  8804 	var props = keys(map);
       
  8805 	if (hasSymbols) {
       
  8806 		props = concat.call(props, Object.getOwnPropertySymbols(map));
       
  8807 	}
       
  8808 	for (var i = 0; i < props.length; i += 1) {
       
  8809 		defineProperty(object, props[i], map[props[i]], predicates[props[i]]);
       
  8810 	}
       
  8811 };
       
  8812 
       
  8813 defineProperties.supportsDescriptors = !!supportsDescriptors;
       
  8814 
       
  8815 module.exports = defineProperties;
       
  8816 
       
  8817 
 17331 
  8818 /***/ }),
 17332 /***/ }),
  8819 /* 169 */
 17333 /* 240 */
  8820 /***/ (function(module, exports, __webpack_require__) {
 17334 /***/ (function(module, exports, __webpack_require__) {
  8821 
 17335 
  8822 "use strict";
 17336 "use strict";
  8823 
 17337 
  8824 
 17338 
  8825 var toStr = Object.prototype.toString;
 17339 Object.defineProperty(exports, "__esModule", {
  8826 
 17340   value: true
  8827 module.exports = function isArguments(value) {
 17341 });
  8828 	var str = toStr.call(value);
 17342 exports['default'] = isBeforeDay;
  8829 	var isArgs = str === '[object Arguments]';
 17343 
  8830 	if (!isArgs) {
 17344 var _moment = __webpack_require__(43);
  8831 		isArgs = str !== '[object Array]' &&
 17345 
  8832 			value !== null &&
 17346 var _moment2 = _interopRequireDefault(_moment);
  8833 			typeof value === 'object' &&
 17347 
  8834 			typeof value.length === 'number' &&
 17348 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  8835 			value.length >= 0 &&
 17349 
  8836 			toStr.call(value.callee) === '[object Function]';
 17350 function isBeforeDay(a, b) {
  8837 	}
 17351   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
  8838 	return isArgs;
 17352 
  8839 };
 17353   var aYear = a.year();
  8840 
 17354   var aMonth = a.month();
       
 17355 
       
 17356   var bYear = b.year();
       
 17357   var bMonth = b.month();
       
 17358 
       
 17359   var isSameYear = aYear === bYear;
       
 17360   var isSameMonth = aMonth === bMonth;
       
 17361 
       
 17362   if (isSameYear && isSameMonth) return a.date() < b.date();
       
 17363   if (isSameYear) return aMonth < bMonth;
       
 17364   return aYear < bYear;
       
 17365 }
  8841 
 17366 
  8842 /***/ }),
 17367 /***/ }),
  8843 /* 170 */
 17368 /* 241 */
       
 17369 /***/ (function(module, exports, __webpack_require__) {
       
 17370 
       
 17371 "use strict";
       
 17372 
       
 17373 
       
 17374 Object.defineProperty(exports, "__esModule", {
       
 17375   value: true
       
 17376 });
       
 17377 exports['default'] = toMomentObject;
       
 17378 
       
 17379 var _moment = __webpack_require__(43);
       
 17380 
       
 17381 var _moment2 = _interopRequireDefault(_moment);
       
 17382 
       
 17383 var _constants = __webpack_require__(77);
       
 17384 
       
 17385 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 17386 
       
 17387 function toMomentObject(dateString, customFormat) {
       
 17388   var dateFormats = customFormat ? [customFormat, _constants.DISPLAY_FORMAT, _constants.ISO_FORMAT] : [_constants.DISPLAY_FORMAT, _constants.ISO_FORMAT];
       
 17389 
       
 17390   var date = (0, _moment2['default'])(dateString, dateFormats, true);
       
 17391   return date.isValid() ? date.hour(12) : null;
       
 17392 }
       
 17393 
       
 17394 /***/ }),
       
 17395 /* 242 */
       
 17396 /***/ (function(module, exports, __webpack_require__) {
       
 17397 
       
 17398 "use strict";
       
 17399 
       
 17400 
       
 17401 Object.defineProperty(exports, "__esModule", {
       
 17402   value: true
       
 17403 });
       
 17404 exports['default'] = isDayVisible;
       
 17405 
       
 17406 var _isBeforeDay = __webpack_require__(240);
       
 17407 
       
 17408 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
       
 17409 
       
 17410 var _isAfterDay = __webpack_require__(239);
       
 17411 
       
 17412 var _isAfterDay2 = _interopRequireDefault(_isAfterDay);
       
 17413 
       
 17414 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 17415 
       
 17416 function isDayVisible(day, month, numberOfMonths, enableOutsideDays) {
       
 17417   var firstDayOfFirstMonth = month.clone().startOf('month');
       
 17418   if (enableOutsideDays) firstDayOfFirstMonth = firstDayOfFirstMonth.startOf('week');
       
 17419   if ((0, _isBeforeDay2['default'])(day, firstDayOfFirstMonth)) return false;
       
 17420 
       
 17421   var lastDayOfLastMonth = month.clone().add(numberOfMonths - 1, 'months').endOf('month');
       
 17422   if (enableOutsideDays) lastDayOfLastMonth = lastDayOfLastMonth.endOf('week');
       
 17423   return !(0, _isAfterDay2['default'])(day, lastDayOfLastMonth);
       
 17424 }
       
 17425 
       
 17426 /***/ }),
       
 17427 /* 243 */
       
 17428 /***/ (function(module, exports, __webpack_require__) {
       
 17429 
       
 17430 "use strict";
       
 17431 
       
 17432 
       
 17433 Object.defineProperty(exports, "__esModule", {
       
 17434   value: true
       
 17435 });
       
 17436 exports['default'] = toISODateString;
       
 17437 
       
 17438 var _moment = __webpack_require__(43);
       
 17439 
       
 17440 var _moment2 = _interopRequireDefault(_moment);
       
 17441 
       
 17442 var _toMomentObject = __webpack_require__(241);
       
 17443 
       
 17444 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
       
 17445 
       
 17446 var _constants = __webpack_require__(77);
       
 17447 
       
 17448 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 17449 
       
 17450 function toISODateString(date, currentFormat) {
       
 17451   var dateObj = _moment2['default'].isMoment(date) ? date : (0, _toMomentObject2['default'])(date, currentFormat);
       
 17452   if (!dateObj) return null;
       
 17453 
       
 17454   return dateObj.format(_constants.ISO_FORMAT);
       
 17455 }
       
 17456 
       
 17457 /***/ }),
       
 17458 /* 244 */
       
 17459 /***/ (function(module, exports, __webpack_require__) {
       
 17460 
       
 17461 "use strict";
       
 17462 
       
 17463 
       
 17464 Object.defineProperty(exports, "__esModule", {
       
 17465   value: true
       
 17466 });
       
 17467 
       
 17468 var _propTypes = __webpack_require__(28);
       
 17469 
       
 17470 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 17471 
       
 17472 var _constants = __webpack_require__(77);
       
 17473 
       
 17474 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 17475 
       
 17476 exports['default'] = _propTypes2['default'].oneOf([_constants.INFO_POSITION_TOP, _constants.INFO_POSITION_BOTTOM, _constants.INFO_POSITION_BEFORE, _constants.INFO_POSITION_AFTER]);
       
 17477 
       
 17478 /***/ }),
       
 17479 /* 245 */
       
 17480 /***/ (function(module, exports, __webpack_require__) {
       
 17481 
       
 17482 var freeGlobal = __webpack_require__(378);
       
 17483 
       
 17484 /** Detect free variable `self`. */
       
 17485 var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
       
 17486 
       
 17487 /** Used as a reference to the global object. */
       
 17488 var root = freeGlobal || freeSelf || Function('return this')();
       
 17489 
       
 17490 module.exports = root;
       
 17491 
       
 17492 
       
 17493 /***/ }),
       
 17494 /* 246 */
       
 17495 /***/ (function(module, exports, __webpack_require__) {
       
 17496 
       
 17497 var root = __webpack_require__(245);
       
 17498 
       
 17499 /** Built-in value references. */
       
 17500 var Symbol = root.Symbol;
       
 17501 
       
 17502 module.exports = Symbol;
       
 17503 
       
 17504 
       
 17505 /***/ }),
       
 17506 /* 247 */
       
 17507 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 17508 
       
 17509 "use strict";
       
 17510 __webpack_require__.r(__webpack_exports__);
       
 17511 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "addEventListener", function() { return addEventListener; });
       
 17512 var CAN_USE_DOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
       
 17513 
       
 17514 // Adapted from Modernizr
       
 17515 // https://github.com/Modernizr/Modernizr/blob/acb3f0d9/feature-detects/dom/passiveeventlisteners.js#L26-L37
       
 17516 function testPassiveEventListeners() {
       
 17517   if (!CAN_USE_DOM) {
       
 17518     return false;
       
 17519   }
       
 17520 
       
 17521   if (!window.addEventListener || !window.removeEventListener || !Object.defineProperty) {
       
 17522     return false;
       
 17523   }
       
 17524 
       
 17525   var supportsPassiveOption = false;
       
 17526   try {
       
 17527     var opts = Object.defineProperty({}, 'passive', {
       
 17528       // eslint-disable-next-line getter-return
       
 17529       get: function () {
       
 17530         function get() {
       
 17531           supportsPassiveOption = true;
       
 17532         }
       
 17533 
       
 17534         return get;
       
 17535       }()
       
 17536     });
       
 17537     var noop = function noop() {};
       
 17538     window.addEventListener('testPassiveEventSupport', noop, opts);
       
 17539     window.removeEventListener('testPassiveEventSupport', noop, opts);
       
 17540   } catch (e) {
       
 17541     // do nothing
       
 17542   }
       
 17543 
       
 17544   return supportsPassiveOption;
       
 17545 }
       
 17546 
       
 17547 var memoized = void 0;
       
 17548 
       
 17549 function canUsePassiveEventListeners() {
       
 17550   if (memoized === undefined) {
       
 17551     memoized = testPassiveEventListeners();
       
 17552   }
       
 17553   return memoized;
       
 17554 }
       
 17555 
       
 17556 function normalizeEventOptions(eventOptions) {
       
 17557   if (!eventOptions) {
       
 17558     return undefined;
       
 17559   }
       
 17560 
       
 17561   if (!canUsePassiveEventListeners()) {
       
 17562     // If the browser does not support the passive option, then it is expecting
       
 17563     // a boolean for the options argument to specify whether it should use
       
 17564     // capture or not. In more modern browsers, this is passed via the `capture`
       
 17565     // option, so let's just hoist that value up.
       
 17566     return !!eventOptions.capture;
       
 17567   }
       
 17568 
       
 17569   return eventOptions;
       
 17570 }
       
 17571 
       
 17572 /* eslint-disable no-bitwise */
       
 17573 
       
 17574 /**
       
 17575  * Generate a unique key for any set of event options
       
 17576  */
       
 17577 function eventOptionsKey(normalizedEventOptions) {
       
 17578   if (!normalizedEventOptions) {
       
 17579     return 0;
       
 17580   }
       
 17581 
       
 17582   // If the browser does not support passive event listeners, the normalized
       
 17583   // event options will be a boolean.
       
 17584   if (normalizedEventOptions === true) {
       
 17585     return 100;
       
 17586   }
       
 17587 
       
 17588   // At this point, the browser supports passive event listeners, so we expect
       
 17589   // the event options to be an object with possible properties of capture,
       
 17590   // passive, and once.
       
 17591   //
       
 17592   // We want to consistently return the same value, regardless of the order of
       
 17593   // these properties, so let's use binary maths to assign each property to a
       
 17594   // bit, and then add those together (with an offset to account for the
       
 17595   // booleans at the beginning of this function).
       
 17596   var capture = normalizedEventOptions.capture << 0;
       
 17597   var passive = normalizedEventOptions.passive << 1;
       
 17598   var once = normalizedEventOptions.once << 2;
       
 17599   return capture + passive + once;
       
 17600 }
       
 17601 
       
 17602 function ensureCanMutateNextEventHandlers(eventHandlers) {
       
 17603   if (eventHandlers.handlers === eventHandlers.nextHandlers) {
       
 17604     // eslint-disable-next-line no-param-reassign
       
 17605     eventHandlers.nextHandlers = eventHandlers.handlers.slice();
       
 17606   }
       
 17607 }
       
 17608 
       
 17609 function TargetEventHandlers(target) {
       
 17610   this.target = target;
       
 17611   this.events = {};
       
 17612 }
       
 17613 
       
 17614 TargetEventHandlers.prototype.getEventHandlers = function () {
       
 17615   function getEventHandlers(eventName, options) {
       
 17616     var key = String(eventName) + ' ' + String(eventOptionsKey(options));
       
 17617 
       
 17618     if (!this.events[key]) {
       
 17619       this.events[key] = {
       
 17620         handlers: [],
       
 17621         handleEvent: undefined
       
 17622       };
       
 17623       this.events[key].nextHandlers = this.events[key].handlers;
       
 17624     }
       
 17625 
       
 17626     return this.events[key];
       
 17627   }
       
 17628 
       
 17629   return getEventHandlers;
       
 17630 }();
       
 17631 
       
 17632 TargetEventHandlers.prototype.handleEvent = function () {
       
 17633   function handleEvent(eventName, options, event) {
       
 17634     var eventHandlers = this.getEventHandlers(eventName, options);
       
 17635     eventHandlers.handlers = eventHandlers.nextHandlers;
       
 17636     eventHandlers.handlers.forEach(function (handler) {
       
 17637       if (handler) {
       
 17638         // We need to check for presence here because a handler function may
       
 17639         // cause later handlers to get removed. This can happen if you for
       
 17640         // instance have a waypoint that unmounts another waypoint as part of an
       
 17641         // onEnter/onLeave handler.
       
 17642         handler(event);
       
 17643       }
       
 17644     });
       
 17645   }
       
 17646 
       
 17647   return handleEvent;
       
 17648 }();
       
 17649 
       
 17650 TargetEventHandlers.prototype.add = function () {
       
 17651   function add(eventName, listener, options) {
       
 17652     var _this = this;
       
 17653 
       
 17654     // options has already been normalized at this point.
       
 17655     var eventHandlers = this.getEventHandlers(eventName, options);
       
 17656 
       
 17657     ensureCanMutateNextEventHandlers(eventHandlers);
       
 17658 
       
 17659     if (eventHandlers.nextHandlers.length === 0) {
       
 17660       eventHandlers.handleEvent = this.handleEvent.bind(this, eventName, options);
       
 17661 
       
 17662       this.target.addEventListener(eventName, eventHandlers.handleEvent, options);
       
 17663     }
       
 17664 
       
 17665     eventHandlers.nextHandlers.push(listener);
       
 17666 
       
 17667     var isSubscribed = true;
       
 17668     var unsubscribe = function () {
       
 17669       function unsubscribe() {
       
 17670         if (!isSubscribed) {
       
 17671           return;
       
 17672         }
       
 17673 
       
 17674         isSubscribed = false;
       
 17675 
       
 17676         ensureCanMutateNextEventHandlers(eventHandlers);
       
 17677         var index = eventHandlers.nextHandlers.indexOf(listener);
       
 17678         eventHandlers.nextHandlers.splice(index, 1);
       
 17679 
       
 17680         if (eventHandlers.nextHandlers.length === 0) {
       
 17681           // All event handlers have been removed, so we want to remove the event
       
 17682           // listener from the target node.
       
 17683 
       
 17684           if (_this.target) {
       
 17685             // There can be a race condition where the target may no longer exist
       
 17686             // when this function is called, e.g. when a React component is
       
 17687             // unmounting. Guarding against this prevents the following error:
       
 17688             //
       
 17689             //   Cannot read property 'removeEventListener' of undefined
       
 17690             _this.target.removeEventListener(eventName, eventHandlers.handleEvent, options);
       
 17691           }
       
 17692 
       
 17693           eventHandlers.handleEvent = undefined;
       
 17694         }
       
 17695       }
       
 17696 
       
 17697       return unsubscribe;
       
 17698     }();
       
 17699     return unsubscribe;
       
 17700   }
       
 17701 
       
 17702   return add;
       
 17703 }();
       
 17704 
       
 17705 var EVENT_HANDLERS_KEY = '__consolidated_events_handlers__';
       
 17706 
       
 17707 // eslint-disable-next-line import/prefer-default-export
       
 17708 function addEventListener(target, eventName, listener, options) {
       
 17709   if (!target[EVENT_HANDLERS_KEY]) {
       
 17710     // eslint-disable-next-line no-param-reassign
       
 17711     target[EVENT_HANDLERS_KEY] = new TargetEventHandlers(target);
       
 17712   }
       
 17713   var normalizedEventOptions = normalizeEventOptions(options);
       
 17714   return target[EVENT_HANDLERS_KEY].add(eventName, listener, normalizedEventOptions);
       
 17715 }
       
 17716 
       
 17717 
       
 17718 
       
 17719 
       
 17720 /***/ }),
       
 17721 /* 248 */
  8844 /***/ (function(module, exports, __webpack_require__) {
 17722 /***/ (function(module, exports, __webpack_require__) {
  8845 
 17723 
  8846 "use strict";
 17724 "use strict";
  8847 
 17725 
  8848 
 17726 
  8867 	return false;
 17745 	return false;
  8868 };
 17746 };
  8869 
 17747 
  8870 
 17748 
  8871 /***/ }),
 17749 /***/ }),
  8872 /* 171 */
 17750 /* 249 */
  8873 /***/ (function(module, exports, __webpack_require__) {
 17751 /***/ (function(module, exports, __webpack_require__) {
  8874 
 17752 
  8875 "use strict";
 17753 "use strict";
  8876 
 17754 
  8877 
 17755 
  8878 var implementation = __webpack_require__(170);
 17756 var implementation = __webpack_require__(248);
  8879 
 17757 
  8880 module.exports = function getPolyfill() {
 17758 module.exports = function getPolyfill() {
  8881 	if (typeof document !== 'undefined') {
 17759 	if (typeof document !== 'undefined') {
  8882 		if (document.contains) {
 17760 		if (document.contains) {
  8883 			return document.contains;
 17761 			return document.contains;
  8884 		}
 17762 		}
  8885 		if (document.body && document.body.contains) {
 17763 		if (document.body && document.body.contains) {
  8886 			return document.body.contains;
 17764 			try {
       
 17765 				if (typeof document.body.contains.call(document, '') === 'boolean') {
       
 17766 					return document.body.contains;
       
 17767 				}
       
 17768 			} catch (e) { /**/ }
  8887 		}
 17769 		}
  8888 	}
 17770 	}
  8889 	return implementation;
 17771 	return implementation;
  8890 };
 17772 };
  8891 
 17773 
  8892 
 17774 
  8893 /***/ }),
 17775 /***/ }),
  8894 /* 172 */
 17776 /* 250 */
  8895 /***/ (function(module, exports, __webpack_require__) {
 17777 /***/ (function(module, exports, __webpack_require__) {
  8896 
 17778 
  8897 "use strict";
 17779 "use strict";
  8898 
 17780 
  8899 
 17781 
  8900 Object.defineProperty(exports, "__esModule", {
 17782 Object.defineProperty(exports, "__esModule", {
  8901   value: true
 17783   value: true
  8902 });
 17784 });
  8903 
 17785 exports.PureCalendarDay = undefined;
  8904 var _propTypes = __webpack_require__(31);
 17786 
       
 17787 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 17788 
       
 17789 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 17790 
       
 17791 var _object = __webpack_require__(92);
       
 17792 
       
 17793 var _object2 = _interopRequireDefault(_object);
       
 17794 
       
 17795 var _react = __webpack_require__(13);
       
 17796 
       
 17797 var _react2 = _interopRequireDefault(_react);
       
 17798 
       
 17799 var _propTypes = __webpack_require__(28);
  8905 
 17800 
  8906 var _propTypes2 = _interopRequireDefault(_propTypes);
 17801 var _propTypes2 = _interopRequireDefault(_propTypes);
  8907 
 17802 
  8908 var _reactMomentProptypes = __webpack_require__(64);
 17803 var _reactAddonsShallowCompare = __webpack_require__(143);
       
 17804 
       
 17805 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
 17806 
       
 17807 var _reactMomentProptypes = __webpack_require__(141);
  8909 
 17808 
  8910 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
 17809 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
  8911 
 17810 
  8912 var _airbnbPropTypes = __webpack_require__(43);
 17811 var _airbnbPropTypes = __webpack_require__(85);
  8913 
 17812 
  8914 var _defaultPhrases = __webpack_require__(47);
 17813 var _reactWithStyles = __webpack_require__(109);
  8915 
 17814 
  8916 var _getPhrasePropTypes = __webpack_require__(51);
 17815 var _moment = __webpack_require__(43);
       
 17816 
       
 17817 var _moment2 = _interopRequireDefault(_moment);
       
 17818 
       
 17819 var _defaultPhrases = __webpack_require__(107);
       
 17820 
       
 17821 var _getPhrasePropTypes = __webpack_require__(108);
  8917 
 17822 
  8918 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
 17823 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
  8919 
 17824 
  8920 var _FocusedInputShape = __webpack_require__(173);
 17825 var _getCalendarDaySettings = __webpack_require__(251);
  8921 
 17826 
  8922 var _FocusedInputShape2 = _interopRequireDefault(_FocusedInputShape);
 17827 var _getCalendarDaySettings2 = _interopRequireDefault(_getCalendarDaySettings);
  8923 
 17828 
  8924 var _IconPositionShape = __webpack_require__(92);
 17829 var _ModifiersShape = __webpack_require__(157);
  8925 
 17830 
  8926 var _IconPositionShape2 = _interopRequireDefault(_IconPositionShape);
 17831 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
  8927 
 17832 
  8928 var _OrientationShape = __webpack_require__(174);
 17833 var _constants = __webpack_require__(77);
  8929 
       
  8930 var _OrientationShape2 = _interopRequireDefault(_OrientationShape);
       
  8931 
       
  8932 var _DisabledShape = __webpack_require__(105);
       
  8933 
       
  8934 var _DisabledShape2 = _interopRequireDefault(_DisabledShape);
       
  8935 
       
  8936 var _AnchorDirectionShape = __webpack_require__(175);
       
  8937 
       
  8938 var _AnchorDirectionShape2 = _interopRequireDefault(_AnchorDirectionShape);
       
  8939 
       
  8940 var _OpenDirectionShape = __webpack_require__(83);
       
  8941 
       
  8942 var _OpenDirectionShape2 = _interopRequireDefault(_OpenDirectionShape);
       
  8943 
       
  8944 var _DayOfWeekShape = __webpack_require__(75);
       
  8945 
       
  8946 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
  8947 
       
  8948 var _CalendarInfoPositionShape = __webpack_require__(93);
       
  8949 
       
  8950 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
  8951 
 17834 
  8952 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 17835 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
  8953 
 17836 
  8954 exports['default'] = {
       
  8955   // required props for a functional interactive DateRangePicker
       
  8956   startDate: _reactMomentProptypes2['default'].momentObj,
       
  8957   endDate: _reactMomentProptypes2['default'].momentObj,
       
  8958   onDatesChange: _propTypes2['default'].func.isRequired,
       
  8959 
       
  8960   focusedInput: _FocusedInputShape2['default'],
       
  8961   onFocusChange: _propTypes2['default'].func.isRequired,
       
  8962 
       
  8963   onClose: _propTypes2['default'].func,
       
  8964 
       
  8965   // input related props
       
  8966   startDateId: _propTypes2['default'].string.isRequired,
       
  8967   startDatePlaceholderText: _propTypes2['default'].string,
       
  8968   endDateId: _propTypes2['default'].string.isRequired,
       
  8969   endDatePlaceholderText: _propTypes2['default'].string,
       
  8970   disabled: _DisabledShape2['default'],
       
  8971   required: _propTypes2['default'].bool,
       
  8972   readOnly: _propTypes2['default'].bool,
       
  8973   screenReaderInputMessage: _propTypes2['default'].string,
       
  8974   showClearDates: _propTypes2['default'].bool,
       
  8975   showDefaultInputIcon: _propTypes2['default'].bool,
       
  8976   inputIconPosition: _IconPositionShape2['default'],
       
  8977   customInputIcon: _propTypes2['default'].node,
       
  8978   customArrowIcon: _propTypes2['default'].node,
       
  8979   customCloseIcon: _propTypes2['default'].node,
       
  8980   noBorder: _propTypes2['default'].bool,
       
  8981   block: _propTypes2['default'].bool,
       
  8982   small: _propTypes2['default'].bool,
       
  8983   regular: _propTypes2['default'].bool,
       
  8984   keepFocusOnInput: _propTypes2['default'].bool,
       
  8985 
       
  8986   // calendar presentation and interaction related props
       
  8987   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  8988   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
  8989   orientation: _OrientationShape2['default'],
       
  8990   anchorDirection: _AnchorDirectionShape2['default'],
       
  8991   openDirection: _OpenDirectionShape2['default'],
       
  8992   horizontalMargin: _propTypes2['default'].number,
       
  8993   withPortal: _propTypes2['default'].bool,
       
  8994   withFullScreenPortal: _propTypes2['default'].bool,
       
  8995   appendToBody: _propTypes2['default'].bool,
       
  8996   disableScroll: _propTypes2['default'].bool,
       
  8997   daySize: _airbnbPropTypes.nonNegativeInteger,
       
  8998   isRTL: _propTypes2['default'].bool,
       
  8999   firstDayOfWeek: _DayOfWeekShape2['default'],
       
  9000   initialVisibleMonth: _propTypes2['default'].func,
       
  9001   numberOfMonths: _propTypes2['default'].number,
       
  9002   keepOpenOnDateSelect: _propTypes2['default'].bool,
       
  9003   reopenPickerOnClearDates: _propTypes2['default'].bool,
       
  9004   renderCalendarInfo: _propTypes2['default'].func,
       
  9005   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
  9006   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
  9007   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
  9008   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
  9009   verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
       
  9010 
       
  9011   // navigation related props
       
  9012   navPrev: _propTypes2['default'].node,
       
  9013   navNext: _propTypes2['default'].node,
       
  9014   onPrevMonthClick: _propTypes2['default'].func,
       
  9015   onNextMonthClick: _propTypes2['default'].func,
       
  9016 
       
  9017   // day presentation and interaction related props
       
  9018   renderCalendarDay: _propTypes2['default'].func,
       
  9019   renderDayContents: _propTypes2['default'].func,
       
  9020   minimumNights: _propTypes2['default'].number,
       
  9021   enableOutsideDays: _propTypes2['default'].bool,
       
  9022   isDayBlocked: _propTypes2['default'].func,
       
  9023   isOutsideRange: _propTypes2['default'].func,
       
  9024   isDayHighlighted: _propTypes2['default'].func,
       
  9025 
       
  9026   // internationalization props
       
  9027   displayFormat: _propTypes2['default'].oneOfType([_propTypes2['default'].string, _propTypes2['default'].func]),
       
  9028   monthFormat: _propTypes2['default'].string,
       
  9029   weekDayFormat: _propTypes2['default'].string,
       
  9030   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DateRangePickerPhrases)),
       
  9031   dayAriaLabelFormat: _propTypes2['default'].string
       
  9032 };
       
  9033 
       
  9034 /***/ }),
       
  9035 /* 173 */
       
  9036 /***/ (function(module, exports, __webpack_require__) {
       
  9037 
       
  9038 "use strict";
       
  9039 
       
  9040 
       
  9041 Object.defineProperty(exports, "__esModule", {
       
  9042   value: true
       
  9043 });
       
  9044 
       
  9045 var _propTypes = __webpack_require__(31);
       
  9046 
       
  9047 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  9048 
       
  9049 var _constants = __webpack_require__(39);
       
  9050 
       
  9051 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  9052 
       
  9053 exports['default'] = _propTypes2['default'].oneOf([_constants.START_DATE, _constants.END_DATE]);
       
  9054 
       
  9055 /***/ }),
       
  9056 /* 174 */
       
  9057 /***/ (function(module, exports, __webpack_require__) {
       
  9058 
       
  9059 "use strict";
       
  9060 
       
  9061 
       
  9062 Object.defineProperty(exports, "__esModule", {
       
  9063   value: true
       
  9064 });
       
  9065 
       
  9066 var _propTypes = __webpack_require__(31);
       
  9067 
       
  9068 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  9069 
       
  9070 var _constants = __webpack_require__(39);
       
  9071 
       
  9072 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  9073 
       
  9074 exports['default'] = _propTypes2['default'].oneOf([_constants.HORIZONTAL_ORIENTATION, _constants.VERTICAL_ORIENTATION]);
       
  9075 
       
  9076 /***/ }),
       
  9077 /* 175 */
       
  9078 /***/ (function(module, exports, __webpack_require__) {
       
  9079 
       
  9080 "use strict";
       
  9081 
       
  9082 
       
  9083 Object.defineProperty(exports, "__esModule", {
       
  9084   value: true
       
  9085 });
       
  9086 
       
  9087 var _propTypes = __webpack_require__(31);
       
  9088 
       
  9089 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  9090 
       
  9091 var _constants = __webpack_require__(39);
       
  9092 
       
  9093 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  9094 
       
  9095 exports['default'] = _propTypes2['default'].oneOf([_constants.ANCHOR_LEFT, _constants.ANCHOR_RIGHT]);
       
  9096 
       
  9097 /***/ }),
       
  9098 /* 176 */
       
  9099 /***/ (function(module, exports, __webpack_require__) {
       
  9100 
       
  9101 "use strict";
       
  9102 
       
  9103 
       
  9104 Object.defineProperty(exports, "__esModule", {
       
  9105   value: true
       
  9106 });
       
  9107 exports['default'] = getResponsiveContainerStyles;
       
  9108 
       
  9109 var _constants = __webpack_require__(39);
       
  9110 
       
  9111 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
       
  9112 
       
  9113 function getResponsiveContainerStyles(anchorDirection, currentOffset, containerEdge, margin) {
       
  9114   var windowWidth = typeof window !== 'undefined' ? window.innerWidth : 0;
       
  9115   var calculatedOffset = anchorDirection === _constants.ANCHOR_LEFT ? windowWidth - containerEdge : containerEdge;
       
  9116   var calculatedMargin = margin || 0;
       
  9117 
       
  9118   return _defineProperty({}, anchorDirection, Math.min(currentOffset + calculatedOffset - calculatedMargin, 0));
       
  9119 }
       
  9120 
       
  9121 /***/ }),
       
  9122 /* 177 */
       
  9123 /***/ (function(module, exports, __webpack_require__) {
       
  9124 
       
  9125 "use strict";
       
  9126 
       
  9127 
       
  9128 Object.defineProperty(exports, "__esModule", {
       
  9129   value: true
       
  9130 });
       
  9131 exports['default'] = getDetachedContainerStyles;
       
  9132 
       
  9133 var _constants = __webpack_require__(39);
       
  9134 
       
  9135 /**
       
  9136  * Calculate and return a CSS transform style to position a detached element
       
  9137  * next to a reference element. The open and anchor direction indicate wether
       
  9138  * it should be positioned above/below and/or to the left/right of the
       
  9139  * reference element.
       
  9140  *
       
  9141  * Assuming r(0,0), r(1,1), d(0,0), d(1,1) for the bottom-left and top-right
       
  9142  * corners of the reference and detached elements, respectively:
       
  9143  *  - openDirection = DOWN, anchorDirection = LEFT => d(0,1) == r(0,1)
       
  9144  *  - openDirection = UP, anchorDirection = LEFT => d(0,0) == r(0,0)
       
  9145  *  - openDirection = DOWN, anchorDirection = RIGHT => d(1,1) == r(1,1)
       
  9146  *  - openDirection = UP, anchorDirection = RIGHT => d(1,0) == r(1,0)
       
  9147  *
       
  9148  * By using a CSS transform, we allow to further position it using
       
  9149  * top/bottom CSS properties for the anchor gutter.
       
  9150  *
       
  9151  * @param {string} openDirection The vertical positioning of the popup
       
  9152  * @param {string} anchorDirection The horizontal position of the popup
       
  9153  * @param {HTMLElement} referenceEl The reference element
       
  9154  */
       
  9155 function getDetachedContainerStyles(openDirection, anchorDirection, referenceEl) {
       
  9156   var referenceRect = referenceEl.getBoundingClientRect();
       
  9157   var offsetX = referenceRect.left;
       
  9158   var offsetY = referenceRect.top;
       
  9159 
       
  9160   if (openDirection === _constants.OPEN_UP) {
       
  9161     offsetY = -(window.innerHeight - referenceRect.bottom);
       
  9162   }
       
  9163 
       
  9164   if (anchorDirection === _constants.ANCHOR_RIGHT) {
       
  9165     offsetX = -(window.innerWidth - referenceRect.right);
       
  9166   }
       
  9167 
       
  9168   return {
       
  9169     transform: 'translate3d(' + String(Math.round(offsetX)) + 'px, ' + String(Math.round(offsetY)) + 'px, 0)'
       
  9170   };
       
  9171 }
       
  9172 
       
  9173 /***/ }),
       
  9174 /* 178 */
       
  9175 /***/ (function(module, exports, __webpack_require__) {
       
  9176 
       
  9177 "use strict";
       
  9178 
       
  9179 
       
  9180 Object.defineProperty(exports, "__esModule", {
       
  9181   value: true
       
  9182 });
       
  9183 exports.getScrollParent = getScrollParent;
       
  9184 exports.getScrollAncestorsOverflowY = getScrollAncestorsOverflowY;
       
  9185 exports['default'] = disableScroll;
       
  9186 var getScrollingRoot = function getScrollingRoot() {
       
  9187   return document.scrollingElement || document.documentElement;
       
  9188 };
       
  9189 
       
  9190 /**
       
  9191  * Recursively finds the scroll parent of a node. The scroll parrent of a node
       
  9192  * is the closest node that is scrollable. A node is scrollable if:
       
  9193  *  - it is allowed to scroll via CSS ('overflow-y' not visible or hidden);
       
  9194  *  - and its children/content are "bigger" than the node's box height.
       
  9195  *
       
  9196  * The root of the document always scrolls by default.
       
  9197  *
       
  9198  * @param {HTMLElement} node Any DOM element.
       
  9199  * @return {HTMLElement} The scroll parent element.
       
  9200  */
       
  9201 function getScrollParent(node) {
       
  9202   var parent = node.parentElement;
       
  9203 
       
  9204   if (parent == null) return getScrollingRoot();
       
  9205 
       
  9206   var _window$getComputedSt = window.getComputedStyle(parent),
       
  9207       overflowY = _window$getComputedSt.overflowY;
       
  9208 
       
  9209   var canScroll = overflowY !== 'visible' && overflowY !== 'hidden';
       
  9210 
       
  9211   if (canScroll && parent.scrollHeight > parent.clientHeight) {
       
  9212     return parent;
       
  9213   }
       
  9214 
       
  9215   return getScrollParent(parent);
       
  9216 }
       
  9217 
       
  9218 /**
       
  9219  * Recursively traverses the tree upwards from the given node, capturing all
       
  9220  * ancestor nodes that scroll along with their current 'overflow-y' CSS
       
  9221  * property.
       
  9222  *
       
  9223  * @param {HTMLElement} node Any DOM element.
       
  9224  * @param {Map<HTMLElement,string>} [acc] Accumulator map.
       
  9225  * @return {Map<HTMLElement,string>} Map of ancestors with their 'overflow-y' value.
       
  9226  */
       
  9227 function getScrollAncestorsOverflowY(node) {
       
  9228   var acc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : new Map();
       
  9229 
       
  9230   var scrollingRoot = getScrollingRoot();
       
  9231   var scrollParent = getScrollParent(node);
       
  9232   acc.set(scrollParent, scrollParent.style.overflowY);
       
  9233 
       
  9234   if (scrollParent === scrollingRoot) return acc;
       
  9235   return getScrollAncestorsOverflowY(scrollParent, acc);
       
  9236 }
       
  9237 
       
  9238 /**
       
  9239  * Disabling the scroll on a node involves finding all the scrollable ancestors
       
  9240  * and set their 'overflow-y' CSS property to 'hidden'. When all ancestors have
       
  9241  * 'overflow-y: hidden' (up to the document element) there is no scroll
       
  9242  * container, thus all the scroll outside of the node is disabled. In order to
       
  9243  * enable scroll again, we store the previous value of the 'overflow-y' for
       
  9244  * every ancestor in a closure and reset it back.
       
  9245  *
       
  9246  * @param {HTMLElement} node Any DOM element.
       
  9247  */
       
  9248 function disableScroll(node) {
       
  9249   var scrollAncestorsOverflowY = getScrollAncestorsOverflowY(node);
       
  9250   var toggle = function toggle(on) {
       
  9251     return scrollAncestorsOverflowY.forEach(function (overflowY, ancestor) {
       
  9252       ancestor.style.setProperty('overflow-y', on ? 'hidden' : overflowY);
       
  9253     });
       
  9254   };
       
  9255 
       
  9256   toggle(true);
       
  9257   return function () {
       
  9258     return toggle(false);
       
  9259   };
       
  9260 }
       
  9261 
       
  9262 /***/ }),
       
  9263 /* 179 */
       
  9264 /***/ (function(module, exports, __webpack_require__) {
       
  9265 
       
  9266 "use strict";
       
  9267 
       
  9268 
       
  9269 Object.defineProperty(exports, "__esModule", {
       
  9270   value: true
       
  9271 });
       
  9272 
       
  9273 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
  9274 
       
  9275 var _react = __webpack_require__(27);
       
  9276 
       
  9277 var _react2 = _interopRequireDefault(_react);
       
  9278 
       
  9279 var _propTypes = __webpack_require__(31);
       
  9280 
       
  9281 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  9282 
       
  9283 var _moment = __webpack_require__(29);
       
  9284 
       
  9285 var _moment2 = _interopRequireDefault(_moment);
       
  9286 
       
  9287 var _reactMomentProptypes = __webpack_require__(64);
       
  9288 
       
  9289 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
  9290 
       
  9291 var _airbnbPropTypes = __webpack_require__(43);
       
  9292 
       
  9293 var _OpenDirectionShape = __webpack_require__(83);
       
  9294 
       
  9295 var _OpenDirectionShape2 = _interopRequireDefault(_OpenDirectionShape);
       
  9296 
       
  9297 var _defaultPhrases = __webpack_require__(47);
       
  9298 
       
  9299 var _getPhrasePropTypes = __webpack_require__(51);
       
  9300 
       
  9301 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
  9302 
       
  9303 var _DateRangePickerInput = __webpack_require__(180);
       
  9304 
       
  9305 var _DateRangePickerInput2 = _interopRequireDefault(_DateRangePickerInput);
       
  9306 
       
  9307 var _IconPositionShape = __webpack_require__(92);
       
  9308 
       
  9309 var _IconPositionShape2 = _interopRequireDefault(_IconPositionShape);
       
  9310 
       
  9311 var _DisabledShape = __webpack_require__(105);
       
  9312 
       
  9313 var _DisabledShape2 = _interopRequireDefault(_DisabledShape);
       
  9314 
       
  9315 var _toMomentObject = __webpack_require__(80);
       
  9316 
       
  9317 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
       
  9318 
       
  9319 var _toLocalizedDateString = __webpack_require__(129);
       
  9320 
       
  9321 var _toLocalizedDateString2 = _interopRequireDefault(_toLocalizedDateString);
       
  9322 
       
  9323 var _isInclusivelyAfterDay = __webpack_require__(94);
       
  9324 
       
  9325 var _isInclusivelyAfterDay2 = _interopRequireDefault(_isInclusivelyAfterDay);
       
  9326 
       
  9327 var _isBeforeDay = __webpack_require__(95);
       
  9328 
       
  9329 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
       
  9330 
       
  9331 var _constants = __webpack_require__(39);
       
  9332 
       
  9333 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  9334 
       
  9335 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 17837 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
  9336 
 17838 
  9337 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 17839 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
  9338 
 17840 
  9339 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
 17841 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
  9340 
       
  9341 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
  9342   startDate: _reactMomentProptypes2['default'].momentObj,
       
  9343   startDateId: _propTypes2['default'].string,
       
  9344   startDatePlaceholderText: _propTypes2['default'].string,
       
  9345   isStartDateFocused: _propTypes2['default'].bool,
       
  9346 
       
  9347   endDate: _reactMomentProptypes2['default'].momentObj,
       
  9348   endDateId: _propTypes2['default'].string,
       
  9349   endDatePlaceholderText: _propTypes2['default'].string,
       
  9350   isEndDateFocused: _propTypes2['default'].bool,
       
  9351 
       
  9352   screenReaderMessage: _propTypes2['default'].string,
       
  9353   showClearDates: _propTypes2['default'].bool,
       
  9354   showCaret: _propTypes2['default'].bool,
       
  9355   showDefaultInputIcon: _propTypes2['default'].bool,
       
  9356   inputIconPosition: _IconPositionShape2['default'],
       
  9357   disabled: _DisabledShape2['default'],
       
  9358   required: _propTypes2['default'].bool,
       
  9359   readOnly: _propTypes2['default'].bool,
       
  9360   openDirection: _OpenDirectionShape2['default'],
       
  9361   noBorder: _propTypes2['default'].bool,
       
  9362   block: _propTypes2['default'].bool,
       
  9363   small: _propTypes2['default'].bool,
       
  9364   regular: _propTypes2['default'].bool,
       
  9365   verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
       
  9366 
       
  9367   keepOpenOnDateSelect: _propTypes2['default'].bool,
       
  9368   reopenPickerOnClearDates: _propTypes2['default'].bool,
       
  9369   withFullScreenPortal: _propTypes2['default'].bool,
       
  9370   minimumNights: _airbnbPropTypes.nonNegativeInteger,
       
  9371   isOutsideRange: _propTypes2['default'].func,
       
  9372   displayFormat: _propTypes2['default'].oneOfType([_propTypes2['default'].string, _propTypes2['default'].func]),
       
  9373 
       
  9374   onFocusChange: _propTypes2['default'].func,
       
  9375   onClose: _propTypes2['default'].func,
       
  9376   onDatesChange: _propTypes2['default'].func,
       
  9377   onKeyDownArrowDown: _propTypes2['default'].func,
       
  9378   onKeyDownQuestionMark: _propTypes2['default'].func,
       
  9379 
       
  9380   customInputIcon: _propTypes2['default'].node,
       
  9381   customArrowIcon: _propTypes2['default'].node,
       
  9382   customCloseIcon: _propTypes2['default'].node,
       
  9383 
       
  9384   // accessibility
       
  9385   isFocused: _propTypes2['default'].bool,
       
  9386 
       
  9387   // i18n
       
  9388   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DateRangePickerInputPhrases)),
       
  9389 
       
  9390   isRTL: _propTypes2['default'].bool
       
  9391 });
       
  9392 
       
  9393 var defaultProps = {
       
  9394   startDate: null,
       
  9395   startDateId: _constants.START_DATE,
       
  9396   startDatePlaceholderText: 'Start Date',
       
  9397   isStartDateFocused: false,
       
  9398 
       
  9399   endDate: null,
       
  9400   endDateId: _constants.END_DATE,
       
  9401   endDatePlaceholderText: 'End Date',
       
  9402   isEndDateFocused: false,
       
  9403 
       
  9404   screenReaderMessage: '',
       
  9405   showClearDates: false,
       
  9406   showCaret: false,
       
  9407   showDefaultInputIcon: false,
       
  9408   inputIconPosition: _constants.ICON_BEFORE_POSITION,
       
  9409   disabled: false,
       
  9410   required: false,
       
  9411   readOnly: false,
       
  9412   openDirection: _constants.OPEN_DOWN,
       
  9413   noBorder: false,
       
  9414   block: false,
       
  9415   small: false,
       
  9416   regular: false,
       
  9417   verticalSpacing: undefined,
       
  9418 
       
  9419   keepOpenOnDateSelect: false,
       
  9420   reopenPickerOnClearDates: false,
       
  9421   withFullScreenPortal: false,
       
  9422   minimumNights: 1,
       
  9423   isOutsideRange: function () {
       
  9424     function isOutsideRange(day) {
       
  9425       return !(0, _isInclusivelyAfterDay2['default'])(day, (0, _moment2['default'])());
       
  9426     }
       
  9427 
       
  9428     return isOutsideRange;
       
  9429   }(),
       
  9430   displayFormat: function () {
       
  9431     function displayFormat() {
       
  9432       return _moment2['default'].localeData().longDateFormat('L');
       
  9433     }
       
  9434 
       
  9435     return displayFormat;
       
  9436   }(),
       
  9437 
       
  9438   onFocusChange: function () {
       
  9439     function onFocusChange() {}
       
  9440 
       
  9441     return onFocusChange;
       
  9442   }(),
       
  9443   onClose: function () {
       
  9444     function onClose() {}
       
  9445 
       
  9446     return onClose;
       
  9447   }(),
       
  9448   onDatesChange: function () {
       
  9449     function onDatesChange() {}
       
  9450 
       
  9451     return onDatesChange;
       
  9452   }(),
       
  9453   onKeyDownArrowDown: function () {
       
  9454     function onKeyDownArrowDown() {}
       
  9455 
       
  9456     return onKeyDownArrowDown;
       
  9457   }(),
       
  9458   onKeyDownQuestionMark: function () {
       
  9459     function onKeyDownQuestionMark() {}
       
  9460 
       
  9461     return onKeyDownQuestionMark;
       
  9462   }(),
       
  9463 
       
  9464 
       
  9465   customInputIcon: null,
       
  9466   customArrowIcon: null,
       
  9467   customCloseIcon: null,
       
  9468 
       
  9469   // accessibility
       
  9470   isFocused: false,
       
  9471 
       
  9472   // i18n
       
  9473   phrases: _defaultPhrases.DateRangePickerInputPhrases,
       
  9474 
       
  9475   isRTL: false
       
  9476 };
       
  9477 
       
  9478 var DateRangePickerInputController = function (_React$Component) {
       
  9479   _inherits(DateRangePickerInputController, _React$Component);
       
  9480 
       
  9481   function DateRangePickerInputController(props) {
       
  9482     _classCallCheck(this, DateRangePickerInputController);
       
  9483 
       
  9484     var _this = _possibleConstructorReturn(this, (DateRangePickerInputController.__proto__ || Object.getPrototypeOf(DateRangePickerInputController)).call(this, props));
       
  9485 
       
  9486     _this.onClearFocus = _this.onClearFocus.bind(_this);
       
  9487     _this.onStartDateChange = _this.onStartDateChange.bind(_this);
       
  9488     _this.onStartDateFocus = _this.onStartDateFocus.bind(_this);
       
  9489     _this.onEndDateChange = _this.onEndDateChange.bind(_this);
       
  9490     _this.onEndDateFocus = _this.onEndDateFocus.bind(_this);
       
  9491     _this.clearDates = _this.clearDates.bind(_this);
       
  9492     return _this;
       
  9493   }
       
  9494 
       
  9495   _createClass(DateRangePickerInputController, [{
       
  9496     key: 'onClearFocus',
       
  9497     value: function () {
       
  9498       function onClearFocus() {
       
  9499         var _props = this.props,
       
  9500             onFocusChange = _props.onFocusChange,
       
  9501             onClose = _props.onClose,
       
  9502             startDate = _props.startDate,
       
  9503             endDate = _props.endDate;
       
  9504 
       
  9505 
       
  9506         onFocusChange(null);
       
  9507         onClose({ startDate: startDate, endDate: endDate });
       
  9508       }
       
  9509 
       
  9510       return onClearFocus;
       
  9511     }()
       
  9512   }, {
       
  9513     key: 'onEndDateChange',
       
  9514     value: function () {
       
  9515       function onEndDateChange(endDateString) {
       
  9516         var _props2 = this.props,
       
  9517             startDate = _props2.startDate,
       
  9518             isOutsideRange = _props2.isOutsideRange,
       
  9519             minimumNights = _props2.minimumNights,
       
  9520             keepOpenOnDateSelect = _props2.keepOpenOnDateSelect,
       
  9521             onDatesChange = _props2.onDatesChange;
       
  9522 
       
  9523 
       
  9524         var endDate = (0, _toMomentObject2['default'])(endDateString, this.getDisplayFormat());
       
  9525 
       
  9526         var isEndDateValid = endDate && !isOutsideRange(endDate) && !(startDate && (0, _isBeforeDay2['default'])(endDate, startDate.clone().add(minimumNights, 'days')));
       
  9527         if (isEndDateValid) {
       
  9528           onDatesChange({ startDate: startDate, endDate: endDate });
       
  9529           if (!keepOpenOnDateSelect) this.onClearFocus();
       
  9530         } else {
       
  9531           onDatesChange({
       
  9532             startDate: startDate,
       
  9533             endDate: null
       
  9534           });
       
  9535         }
       
  9536       }
       
  9537 
       
  9538       return onEndDateChange;
       
  9539     }()
       
  9540   }, {
       
  9541     key: 'onEndDateFocus',
       
  9542     value: function () {
       
  9543       function onEndDateFocus() {
       
  9544         var _props3 = this.props,
       
  9545             startDate = _props3.startDate,
       
  9546             onFocusChange = _props3.onFocusChange,
       
  9547             withFullScreenPortal = _props3.withFullScreenPortal,
       
  9548             disabled = _props3.disabled;
       
  9549 
       
  9550 
       
  9551         if (!startDate && withFullScreenPortal && (!disabled || disabled === _constants.END_DATE)) {
       
  9552           // When the datepicker is full screen, we never want to focus the end date first
       
  9553           // because there's no indication that that is the case once the datepicker is open and it
       
  9554           // might confuse the user
       
  9555           onFocusChange(_constants.START_DATE);
       
  9556         } else if (!disabled || disabled === _constants.START_DATE) {
       
  9557           onFocusChange(_constants.END_DATE);
       
  9558         }
       
  9559       }
       
  9560 
       
  9561       return onEndDateFocus;
       
  9562     }()
       
  9563   }, {
       
  9564     key: 'onStartDateChange',
       
  9565     value: function () {
       
  9566       function onStartDateChange(startDateString) {
       
  9567         var endDate = this.props.endDate;
       
  9568         var _props4 = this.props,
       
  9569             isOutsideRange = _props4.isOutsideRange,
       
  9570             minimumNights = _props4.minimumNights,
       
  9571             onDatesChange = _props4.onDatesChange,
       
  9572             onFocusChange = _props4.onFocusChange,
       
  9573             disabled = _props4.disabled;
       
  9574 
       
  9575 
       
  9576         var startDate = (0, _toMomentObject2['default'])(startDateString, this.getDisplayFormat());
       
  9577         var isEndDateBeforeStartDate = startDate && (0, _isBeforeDay2['default'])(endDate, startDate.clone().add(minimumNights, 'days'));
       
  9578         var isStartDateValid = startDate && !isOutsideRange(startDate) && !(disabled === _constants.END_DATE && isEndDateBeforeStartDate);
       
  9579 
       
  9580         if (isStartDateValid) {
       
  9581           if (isEndDateBeforeStartDate) {
       
  9582             endDate = null;
       
  9583           }
       
  9584 
       
  9585           onDatesChange({ startDate: startDate, endDate: endDate });
       
  9586           onFocusChange(_constants.END_DATE);
       
  9587         } else {
       
  9588           onDatesChange({
       
  9589             startDate: null,
       
  9590             endDate: endDate
       
  9591           });
       
  9592         }
       
  9593       }
       
  9594 
       
  9595       return onStartDateChange;
       
  9596     }()
       
  9597   }, {
       
  9598     key: 'onStartDateFocus',
       
  9599     value: function () {
       
  9600       function onStartDateFocus() {
       
  9601         var _props5 = this.props,
       
  9602             disabled = _props5.disabled,
       
  9603             onFocusChange = _props5.onFocusChange;
       
  9604 
       
  9605         if (!disabled || disabled === _constants.END_DATE) {
       
  9606           onFocusChange(_constants.START_DATE);
       
  9607         }
       
  9608       }
       
  9609 
       
  9610       return onStartDateFocus;
       
  9611     }()
       
  9612   }, {
       
  9613     key: 'getDisplayFormat',
       
  9614     value: function () {
       
  9615       function getDisplayFormat() {
       
  9616         var displayFormat = this.props.displayFormat;
       
  9617 
       
  9618         return typeof displayFormat === 'string' ? displayFormat : displayFormat();
       
  9619       }
       
  9620 
       
  9621       return getDisplayFormat;
       
  9622     }()
       
  9623   }, {
       
  9624     key: 'getDateString',
       
  9625     value: function () {
       
  9626       function getDateString(date) {
       
  9627         var displayFormat = this.getDisplayFormat();
       
  9628         if (date && displayFormat) {
       
  9629           return date && date.format(displayFormat);
       
  9630         }
       
  9631         return (0, _toLocalizedDateString2['default'])(date);
       
  9632       }
       
  9633 
       
  9634       return getDateString;
       
  9635     }()
       
  9636   }, {
       
  9637     key: 'clearDates',
       
  9638     value: function () {
       
  9639       function clearDates() {
       
  9640         var _props6 = this.props,
       
  9641             onDatesChange = _props6.onDatesChange,
       
  9642             reopenPickerOnClearDates = _props6.reopenPickerOnClearDates,
       
  9643             onFocusChange = _props6.onFocusChange;
       
  9644 
       
  9645         onDatesChange({ startDate: null, endDate: null });
       
  9646         if (reopenPickerOnClearDates) {
       
  9647           onFocusChange(_constants.START_DATE);
       
  9648         }
       
  9649       }
       
  9650 
       
  9651       return clearDates;
       
  9652     }()
       
  9653   }, {
       
  9654     key: 'render',
       
  9655     value: function () {
       
  9656       function render() {
       
  9657         var _props7 = this.props,
       
  9658             startDate = _props7.startDate,
       
  9659             startDateId = _props7.startDateId,
       
  9660             startDatePlaceholderText = _props7.startDatePlaceholderText,
       
  9661             isStartDateFocused = _props7.isStartDateFocused,
       
  9662             endDate = _props7.endDate,
       
  9663             endDateId = _props7.endDateId,
       
  9664             endDatePlaceholderText = _props7.endDatePlaceholderText,
       
  9665             isEndDateFocused = _props7.isEndDateFocused,
       
  9666             screenReaderMessage = _props7.screenReaderMessage,
       
  9667             showClearDates = _props7.showClearDates,
       
  9668             showCaret = _props7.showCaret,
       
  9669             showDefaultInputIcon = _props7.showDefaultInputIcon,
       
  9670             inputIconPosition = _props7.inputIconPosition,
       
  9671             customInputIcon = _props7.customInputIcon,
       
  9672             customArrowIcon = _props7.customArrowIcon,
       
  9673             customCloseIcon = _props7.customCloseIcon,
       
  9674             disabled = _props7.disabled,
       
  9675             required = _props7.required,
       
  9676             readOnly = _props7.readOnly,
       
  9677             openDirection = _props7.openDirection,
       
  9678             isFocused = _props7.isFocused,
       
  9679             phrases = _props7.phrases,
       
  9680             onKeyDownArrowDown = _props7.onKeyDownArrowDown,
       
  9681             onKeyDownQuestionMark = _props7.onKeyDownQuestionMark,
       
  9682             isRTL = _props7.isRTL,
       
  9683             noBorder = _props7.noBorder,
       
  9684             block = _props7.block,
       
  9685             small = _props7.small,
       
  9686             regular = _props7.regular,
       
  9687             verticalSpacing = _props7.verticalSpacing;
       
  9688 
       
  9689 
       
  9690         var startDateString = this.getDateString(startDate);
       
  9691         var endDateString = this.getDateString(endDate);
       
  9692 
       
  9693         return _react2['default'].createElement(_DateRangePickerInput2['default'], {
       
  9694           startDate: startDateString,
       
  9695           startDateId: startDateId,
       
  9696           startDatePlaceholderText: startDatePlaceholderText,
       
  9697           isStartDateFocused: isStartDateFocused,
       
  9698           endDate: endDateString,
       
  9699           endDateId: endDateId,
       
  9700           endDatePlaceholderText: endDatePlaceholderText,
       
  9701           isEndDateFocused: isEndDateFocused,
       
  9702           isFocused: isFocused,
       
  9703           disabled: disabled,
       
  9704           required: required,
       
  9705           readOnly: readOnly,
       
  9706           openDirection: openDirection,
       
  9707           showCaret: showCaret,
       
  9708           showDefaultInputIcon: showDefaultInputIcon,
       
  9709           inputIconPosition: inputIconPosition,
       
  9710           customInputIcon: customInputIcon,
       
  9711           customArrowIcon: customArrowIcon,
       
  9712           customCloseIcon: customCloseIcon,
       
  9713           phrases: phrases,
       
  9714           onStartDateChange: this.onStartDateChange,
       
  9715           onStartDateFocus: this.onStartDateFocus,
       
  9716           onStartDateShiftTab: this.onClearFocus,
       
  9717           onEndDateChange: this.onEndDateChange,
       
  9718           onEndDateFocus: this.onEndDateFocus,
       
  9719           onEndDateTab: this.onClearFocus,
       
  9720           showClearDates: showClearDates,
       
  9721           onClearDates: this.clearDates,
       
  9722           screenReaderMessage: screenReaderMessage,
       
  9723           onKeyDownArrowDown: onKeyDownArrowDown,
       
  9724           onKeyDownQuestionMark: onKeyDownQuestionMark,
       
  9725           isRTL: isRTL,
       
  9726           noBorder: noBorder,
       
  9727           block: block,
       
  9728           small: small,
       
  9729           regular: regular,
       
  9730           verticalSpacing: verticalSpacing
       
  9731         });
       
  9732       }
       
  9733 
       
  9734       return render;
       
  9735     }()
       
  9736   }]);
       
  9737 
       
  9738   return DateRangePickerInputController;
       
  9739 }(_react2['default'].Component);
       
  9740 
       
  9741 exports['default'] = DateRangePickerInputController;
       
  9742 
       
  9743 
       
  9744 DateRangePickerInputController.propTypes = propTypes;
       
  9745 DateRangePickerInputController.defaultProps = defaultProps;
       
  9746 
       
  9747 /***/ }),
       
  9748 /* 180 */
       
  9749 /***/ (function(module, exports, __webpack_require__) {
       
  9750 
       
  9751 "use strict";
       
  9752 
       
  9753 
       
  9754 Object.defineProperty(exports, "__esModule", {
       
  9755   value: true
       
  9756 });
       
  9757 
       
  9758 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
  9759 
       
  9760 var _object = __webpack_require__(46);
       
  9761 
       
  9762 var _object2 = _interopRequireDefault(_object);
       
  9763 
       
  9764 var _react = __webpack_require__(27);
       
  9765 
       
  9766 var _react2 = _interopRequireDefault(_react);
       
  9767 
       
  9768 var _propTypes = __webpack_require__(31);
       
  9769 
       
  9770 var _propTypes2 = _interopRequireDefault(_propTypes);
       
  9771 
       
  9772 var _airbnbPropTypes = __webpack_require__(43);
       
  9773 
       
  9774 var _reactWithStyles = __webpack_require__(56);
       
  9775 
       
  9776 var _defaultPhrases = __webpack_require__(47);
       
  9777 
       
  9778 var _getPhrasePropTypes = __webpack_require__(51);
       
  9779 
       
  9780 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
  9781 
       
  9782 var _OpenDirectionShape = __webpack_require__(83);
       
  9783 
       
  9784 var _OpenDirectionShape2 = _interopRequireDefault(_OpenDirectionShape);
       
  9785 
       
  9786 var _DateInput = __webpack_require__(181);
       
  9787 
       
  9788 var _DateInput2 = _interopRequireDefault(_DateInput);
       
  9789 
       
  9790 var _IconPositionShape = __webpack_require__(92);
       
  9791 
       
  9792 var _IconPositionShape2 = _interopRequireDefault(_IconPositionShape);
       
  9793 
       
  9794 var _DisabledShape = __webpack_require__(105);
       
  9795 
       
  9796 var _DisabledShape2 = _interopRequireDefault(_DisabledShape);
       
  9797 
       
  9798 var _RightArrow = __webpack_require__(185);
       
  9799 
       
  9800 var _RightArrow2 = _interopRequireDefault(_RightArrow);
       
  9801 
       
  9802 var _LeftArrow = __webpack_require__(186);
       
  9803 
       
  9804 var _LeftArrow2 = _interopRequireDefault(_LeftArrow);
       
  9805 
       
  9806 var _CloseButton = __webpack_require__(96);
       
  9807 
       
  9808 var _CloseButton2 = _interopRequireDefault(_CloseButton);
       
  9809 
       
  9810 var _CalendarIcon = __webpack_require__(187);
       
  9811 
       
  9812 var _CalendarIcon2 = _interopRequireDefault(_CalendarIcon);
       
  9813 
       
  9814 var _constants = __webpack_require__(39);
       
  9815 
       
  9816 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
  9817 
       
  9818 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
  9819   startDateId: _propTypes2['default'].string,
       
  9820   startDatePlaceholderText: _propTypes2['default'].string,
       
  9821   screenReaderMessage: _propTypes2['default'].string,
       
  9822 
       
  9823   endDateId: _propTypes2['default'].string,
       
  9824   endDatePlaceholderText: _propTypes2['default'].string,
       
  9825 
       
  9826   onStartDateFocus: _propTypes2['default'].func,
       
  9827   onEndDateFocus: _propTypes2['default'].func,
       
  9828   onStartDateChange: _propTypes2['default'].func,
       
  9829   onEndDateChange: _propTypes2['default'].func,
       
  9830   onStartDateShiftTab: _propTypes2['default'].func,
       
  9831   onEndDateTab: _propTypes2['default'].func,
       
  9832   onClearDates: _propTypes2['default'].func,
       
  9833   onKeyDownArrowDown: _propTypes2['default'].func,
       
  9834   onKeyDownQuestionMark: _propTypes2['default'].func,
       
  9835 
       
  9836   startDate: _propTypes2['default'].string,
       
  9837   endDate: _propTypes2['default'].string,
       
  9838 
       
  9839   isStartDateFocused: _propTypes2['default'].bool,
       
  9840   isEndDateFocused: _propTypes2['default'].bool,
       
  9841   showClearDates: _propTypes2['default'].bool,
       
  9842   disabled: _DisabledShape2['default'],
       
  9843   required: _propTypes2['default'].bool,
       
  9844   readOnly: _propTypes2['default'].bool,
       
  9845   openDirection: _OpenDirectionShape2['default'],
       
  9846   showCaret: _propTypes2['default'].bool,
       
  9847   showDefaultInputIcon: _propTypes2['default'].bool,
       
  9848   inputIconPosition: _IconPositionShape2['default'],
       
  9849   customInputIcon: _propTypes2['default'].node,
       
  9850   customArrowIcon: _propTypes2['default'].node,
       
  9851   customCloseIcon: _propTypes2['default'].node,
       
  9852   noBorder: _propTypes2['default'].bool,
       
  9853   block: _propTypes2['default'].bool,
       
  9854   small: _propTypes2['default'].bool,
       
  9855   regular: _propTypes2['default'].bool,
       
  9856   verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
       
  9857 
       
  9858   // accessibility
       
  9859   isFocused: _propTypes2['default'].bool, // describes actual DOM focus
       
  9860 
       
  9861   // i18n
       
  9862   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DateRangePickerInputPhrases)),
       
  9863 
       
  9864   isRTL: _propTypes2['default'].bool
       
  9865 }));
       
  9866 
       
  9867 var defaultProps = {
       
  9868   startDateId: _constants.START_DATE,
       
  9869   endDateId: _constants.END_DATE,
       
  9870   startDatePlaceholderText: 'Start Date',
       
  9871   endDatePlaceholderText: 'End Date',
       
  9872   screenReaderMessage: '',
       
  9873   onStartDateFocus: function () {
       
  9874     function onStartDateFocus() {}
       
  9875 
       
  9876     return onStartDateFocus;
       
  9877   }(),
       
  9878   onEndDateFocus: function () {
       
  9879     function onEndDateFocus() {}
       
  9880 
       
  9881     return onEndDateFocus;
       
  9882   }(),
       
  9883   onStartDateChange: function () {
       
  9884     function onStartDateChange() {}
       
  9885 
       
  9886     return onStartDateChange;
       
  9887   }(),
       
  9888   onEndDateChange: function () {
       
  9889     function onEndDateChange() {}
       
  9890 
       
  9891     return onEndDateChange;
       
  9892   }(),
       
  9893   onStartDateShiftTab: function () {
       
  9894     function onStartDateShiftTab() {}
       
  9895 
       
  9896     return onStartDateShiftTab;
       
  9897   }(),
       
  9898   onEndDateTab: function () {
       
  9899     function onEndDateTab() {}
       
  9900 
       
  9901     return onEndDateTab;
       
  9902   }(),
       
  9903   onClearDates: function () {
       
  9904     function onClearDates() {}
       
  9905 
       
  9906     return onClearDates;
       
  9907   }(),
       
  9908   onKeyDownArrowDown: function () {
       
  9909     function onKeyDownArrowDown() {}
       
  9910 
       
  9911     return onKeyDownArrowDown;
       
  9912   }(),
       
  9913   onKeyDownQuestionMark: function () {
       
  9914     function onKeyDownQuestionMark() {}
       
  9915 
       
  9916     return onKeyDownQuestionMark;
       
  9917   }(),
       
  9918 
       
  9919 
       
  9920   startDate: '',
       
  9921   endDate: '',
       
  9922 
       
  9923   isStartDateFocused: false,
       
  9924   isEndDateFocused: false,
       
  9925   showClearDates: false,
       
  9926   disabled: false,
       
  9927   required: false,
       
  9928   readOnly: false,
       
  9929   openDirection: _constants.OPEN_DOWN,
       
  9930   showCaret: false,
       
  9931   showDefaultInputIcon: false,
       
  9932   inputIconPosition: _constants.ICON_BEFORE_POSITION,
       
  9933   customInputIcon: null,
       
  9934   customArrowIcon: null,
       
  9935   customCloseIcon: null,
       
  9936   noBorder: false,
       
  9937   block: false,
       
  9938   small: false,
       
  9939   regular: false,
       
  9940   verticalSpacing: undefined,
       
  9941 
       
  9942   // accessibility
       
  9943   isFocused: false,
       
  9944 
       
  9945   // i18n
       
  9946   phrases: _defaultPhrases.DateRangePickerInputPhrases,
       
  9947 
       
  9948   isRTL: false
       
  9949 };
       
  9950 
       
  9951 function DateRangePickerInput(_ref) {
       
  9952   var startDate = _ref.startDate,
       
  9953       startDateId = _ref.startDateId,
       
  9954       startDatePlaceholderText = _ref.startDatePlaceholderText,
       
  9955       screenReaderMessage = _ref.screenReaderMessage,
       
  9956       isStartDateFocused = _ref.isStartDateFocused,
       
  9957       onStartDateChange = _ref.onStartDateChange,
       
  9958       onStartDateFocus = _ref.onStartDateFocus,
       
  9959       onStartDateShiftTab = _ref.onStartDateShiftTab,
       
  9960       endDate = _ref.endDate,
       
  9961       endDateId = _ref.endDateId,
       
  9962       endDatePlaceholderText = _ref.endDatePlaceholderText,
       
  9963       isEndDateFocused = _ref.isEndDateFocused,
       
  9964       onEndDateChange = _ref.onEndDateChange,
       
  9965       onEndDateFocus = _ref.onEndDateFocus,
       
  9966       onEndDateTab = _ref.onEndDateTab,
       
  9967       onKeyDownArrowDown = _ref.onKeyDownArrowDown,
       
  9968       onKeyDownQuestionMark = _ref.onKeyDownQuestionMark,
       
  9969       onClearDates = _ref.onClearDates,
       
  9970       showClearDates = _ref.showClearDates,
       
  9971       disabled = _ref.disabled,
       
  9972       required = _ref.required,
       
  9973       readOnly = _ref.readOnly,
       
  9974       showCaret = _ref.showCaret,
       
  9975       openDirection = _ref.openDirection,
       
  9976       showDefaultInputIcon = _ref.showDefaultInputIcon,
       
  9977       inputIconPosition = _ref.inputIconPosition,
       
  9978       customInputIcon = _ref.customInputIcon,
       
  9979       customArrowIcon = _ref.customArrowIcon,
       
  9980       customCloseIcon = _ref.customCloseIcon,
       
  9981       isFocused = _ref.isFocused,
       
  9982       phrases = _ref.phrases,
       
  9983       isRTL = _ref.isRTL,
       
  9984       noBorder = _ref.noBorder,
       
  9985       block = _ref.block,
       
  9986       verticalSpacing = _ref.verticalSpacing,
       
  9987       small = _ref.small,
       
  9988       regular = _ref.regular,
       
  9989       styles = _ref.styles;
       
  9990 
       
  9991   var calendarIcon = customInputIcon || _react2['default'].createElement(_CalendarIcon2['default'], (0, _reactWithStyles.css)(styles.DateRangePickerInput_calendarIcon_svg));
       
  9992 
       
  9993   var arrowIcon = customArrowIcon || _react2['default'].createElement(_RightArrow2['default'], (0, _reactWithStyles.css)(styles.DateRangePickerInput_arrow_svg));
       
  9994   if (isRTL) arrowIcon = _react2['default'].createElement(_LeftArrow2['default'], (0, _reactWithStyles.css)(styles.DateRangePickerInput_arrow_svg));
       
  9995   if (small) arrowIcon = '-';
       
  9996 
       
  9997   var closeIcon = customCloseIcon || _react2['default'].createElement(_CloseButton2['default'], (0, _reactWithStyles.css)(styles.DateRangePickerInput_clearDates_svg, small && styles.DateRangePickerInput_clearDates_svg__small));
       
  9998   var screenReaderText = screenReaderMessage || phrases.keyboardNavigationInstructions;
       
  9999   var inputIcon = (showDefaultInputIcon || customInputIcon !== null) && _react2['default'].createElement(
       
 10000     'button',
       
 10001     _extends({}, (0, _reactWithStyles.css)(styles.DateRangePickerInput_calendarIcon), {
       
 10002       type: 'button',
       
 10003       disabled: disabled,
       
 10004       'aria-label': phrases.focusStartDate,
       
 10005       onClick: onKeyDownArrowDown
       
 10006     }),
       
 10007     calendarIcon
       
 10008   );
       
 10009   var startDateDisabled = disabled === _constants.START_DATE || disabled === true;
       
 10010   var endDateDisabled = disabled === _constants.END_DATE || disabled === true;
       
 10011 
       
 10012   return _react2['default'].createElement(
       
 10013     'div',
       
 10014     (0, _reactWithStyles.css)(styles.DateRangePickerInput, disabled && styles.DateRangePickerInput__disabled, isRTL && styles.DateRangePickerInput__rtl, !noBorder && styles.DateRangePickerInput__withBorder, block && styles.DateRangePickerInput__block, showClearDates && styles.DateRangePickerInput__showClearDates),
       
 10015     inputIconPosition === _constants.ICON_BEFORE_POSITION && inputIcon,
       
 10016     _react2['default'].createElement(_DateInput2['default'], {
       
 10017       id: startDateId,
       
 10018       placeholder: startDatePlaceholderText,
       
 10019       displayValue: startDate,
       
 10020       screenReaderMessage: screenReaderText,
       
 10021       focused: isStartDateFocused,
       
 10022       isFocused: isFocused,
       
 10023       disabled: startDateDisabled,
       
 10024       required: required,
       
 10025       readOnly: readOnly,
       
 10026       showCaret: showCaret,
       
 10027       openDirection: openDirection,
       
 10028       onChange: onStartDateChange,
       
 10029       onFocus: onStartDateFocus,
       
 10030       onKeyDownShiftTab: onStartDateShiftTab,
       
 10031       onKeyDownArrowDown: onKeyDownArrowDown,
       
 10032       onKeyDownQuestionMark: onKeyDownQuestionMark,
       
 10033       verticalSpacing: verticalSpacing,
       
 10034       small: small,
       
 10035       regular: regular
       
 10036     }),
       
 10037     _react2['default'].createElement(
       
 10038       'div',
       
 10039       _extends({}, (0, _reactWithStyles.css)(styles.DateRangePickerInput_arrow), {
       
 10040         'aria-hidden': 'true',
       
 10041         role: 'presentation'
       
 10042       }),
       
 10043       arrowIcon
       
 10044     ),
       
 10045     _react2['default'].createElement(_DateInput2['default'], {
       
 10046       id: endDateId,
       
 10047       placeholder: endDatePlaceholderText,
       
 10048       displayValue: endDate,
       
 10049       screenReaderMessage: screenReaderText,
       
 10050       focused: isEndDateFocused,
       
 10051       isFocused: isFocused,
       
 10052       disabled: endDateDisabled,
       
 10053       required: required,
       
 10054       readOnly: readOnly,
       
 10055       showCaret: showCaret,
       
 10056       openDirection: openDirection,
       
 10057       onChange: onEndDateChange,
       
 10058       onFocus: onEndDateFocus,
       
 10059       onKeyDownTab: onEndDateTab,
       
 10060       onKeyDownArrowDown: onKeyDownArrowDown,
       
 10061       onKeyDownQuestionMark: onKeyDownQuestionMark,
       
 10062       verticalSpacing: verticalSpacing,
       
 10063       small: small,
       
 10064       regular: regular
       
 10065     }),
       
 10066     showClearDates && _react2['default'].createElement(
       
 10067       'button',
       
 10068       _extends({
       
 10069         type: 'button',
       
 10070         'aria-label': phrases.clearDates
       
 10071       }, (0, _reactWithStyles.css)(styles.DateRangePickerInput_clearDates, small && styles.DateRangePickerInput_clearDates__small, !customCloseIcon && styles.DateRangePickerInput_clearDates_default, !(startDate || endDate) && styles.DateRangePickerInput_clearDates__hide), {
       
 10072         onClick: onClearDates,
       
 10073         disabled: disabled
       
 10074       }),
       
 10075       closeIcon
       
 10076     ),
       
 10077     inputIconPosition === _constants.ICON_AFTER_POSITION && inputIcon
       
 10078   );
       
 10079 }
       
 10080 
       
 10081 DateRangePickerInput.propTypes = propTypes;
       
 10082 DateRangePickerInput.defaultProps = defaultProps;
       
 10083 
       
 10084 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 10085   var _ref2$reactDates = _ref2.reactDates,
       
 10086       border = _ref2$reactDates.border,
       
 10087       color = _ref2$reactDates.color,
       
 10088       sizing = _ref2$reactDates.sizing;
       
 10089   return {
       
 10090     DateRangePickerInput: {
       
 10091       backgroundColor: color.background,
       
 10092       display: 'inline-block'
       
 10093     },
       
 10094 
       
 10095     DateRangePickerInput__disabled: {
       
 10096       background: color.disabled
       
 10097     },
       
 10098 
       
 10099     DateRangePickerInput__withBorder: {
       
 10100       borderColor: color.border,
       
 10101       borderWidth: border.pickerInput.borderWidth,
       
 10102       borderStyle: border.pickerInput.borderStyle,
       
 10103       borderRadius: border.pickerInput.borderRadius
       
 10104     },
       
 10105 
       
 10106     DateRangePickerInput__rtl: {
       
 10107       direction: 'rtl'
       
 10108     },
       
 10109 
       
 10110     DateRangePickerInput__block: {
       
 10111       display: 'block'
       
 10112     },
       
 10113 
       
 10114     DateRangePickerInput__showClearDates: {
       
 10115       paddingRight: 30
       
 10116     },
       
 10117 
       
 10118     DateRangePickerInput_arrow: {
       
 10119       display: 'inline-block',
       
 10120       verticalAlign: 'middle',
       
 10121       color: color.text
       
 10122     },
       
 10123 
       
 10124     DateRangePickerInput_arrow_svg: {
       
 10125       verticalAlign: 'middle',
       
 10126       fill: color.text,
       
 10127       height: sizing.arrowWidth,
       
 10128       width: sizing.arrowWidth
       
 10129     },
       
 10130 
       
 10131     DateRangePickerInput_clearDates: {
       
 10132       background: 'none',
       
 10133       border: 0,
       
 10134       color: 'inherit',
       
 10135       font: 'inherit',
       
 10136       lineHeight: 'normal',
       
 10137       overflow: 'visible',
       
 10138 
       
 10139       cursor: 'pointer',
       
 10140       padding: 10,
       
 10141       margin: '0 10px 0 5px',
       
 10142       position: 'absolute',
       
 10143       right: 0,
       
 10144       top: '50%',
       
 10145       transform: 'translateY(-50%)'
       
 10146     },
       
 10147 
       
 10148     DateRangePickerInput_clearDates__small: {
       
 10149       padding: 6
       
 10150     },
       
 10151 
       
 10152     DateRangePickerInput_clearDates_default: {
       
 10153       ':focus': {
       
 10154         background: color.core.border,
       
 10155         borderRadius: '50%'
       
 10156       },
       
 10157 
       
 10158       ':hover': {
       
 10159         background: color.core.border,
       
 10160         borderRadius: '50%'
       
 10161       }
       
 10162     },
       
 10163 
       
 10164     DateRangePickerInput_clearDates__hide: {
       
 10165       visibility: 'hidden'
       
 10166     },
       
 10167 
       
 10168     DateRangePickerInput_clearDates_svg: {
       
 10169       fill: color.core.grayLight,
       
 10170       height: 12,
       
 10171       width: 15,
       
 10172       verticalAlign: 'middle'
       
 10173     },
       
 10174 
       
 10175     DateRangePickerInput_clearDates_svg__small: {
       
 10176       height: 9
       
 10177     },
       
 10178 
       
 10179     DateRangePickerInput_calendarIcon: {
       
 10180       background: 'none',
       
 10181       border: 0,
       
 10182       color: 'inherit',
       
 10183       font: 'inherit',
       
 10184       lineHeight: 'normal',
       
 10185       overflow: 'visible',
       
 10186 
       
 10187       cursor: 'pointer',
       
 10188       display: 'inline-block',
       
 10189       verticalAlign: 'middle',
       
 10190       padding: 10,
       
 10191       margin: '0 5px 0 10px'
       
 10192     },
       
 10193 
       
 10194     DateRangePickerInput_calendarIcon_svg: {
       
 10195       fill: color.core.grayLight,
       
 10196       height: 15,
       
 10197       width: 14,
       
 10198       verticalAlign: 'middle'
       
 10199     }
       
 10200   };
       
 10201 })(DateRangePickerInput);
       
 10202 
       
 10203 /***/ }),
       
 10204 /* 181 */
       
 10205 /***/ (function(module, exports, __webpack_require__) {
       
 10206 
       
 10207 "use strict";
       
 10208 
       
 10209 
       
 10210 Object.defineProperty(exports, "__esModule", {
       
 10211   value: true
       
 10212 });
       
 10213 
       
 10214 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 10215 
       
 10216 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 10217 
       
 10218 var _object = __webpack_require__(46);
       
 10219 
       
 10220 var _object2 = _interopRequireDefault(_object);
       
 10221 
       
 10222 var _react = __webpack_require__(27);
       
 10223 
       
 10224 var _react2 = _interopRequireDefault(_react);
       
 10225 
       
 10226 var _propTypes = __webpack_require__(31);
       
 10227 
       
 10228 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 10229 
       
 10230 var _airbnbPropTypes = __webpack_require__(43);
       
 10231 
       
 10232 var _reactWithStyles = __webpack_require__(56);
       
 10233 
       
 10234 var _throttle = __webpack_require__(182);
       
 10235 
       
 10236 var _throttle2 = _interopRequireDefault(_throttle);
       
 10237 
       
 10238 var _isTouchDevice = __webpack_require__(82);
       
 10239 
       
 10240 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
 10241 
       
 10242 var _getInputHeight = __webpack_require__(127);
       
 10243 
       
 10244 var _getInputHeight2 = _interopRequireDefault(_getInputHeight);
       
 10245 
       
 10246 var _OpenDirectionShape = __webpack_require__(83);
       
 10247 
       
 10248 var _OpenDirectionShape2 = _interopRequireDefault(_OpenDirectionShape);
       
 10249 
       
 10250 var _constants = __webpack_require__(39);
       
 10251 
       
 10252 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 10253 
       
 10254 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 10255 
       
 10256 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 10257 
       
 10258 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 10259 
       
 10260 var FANG_PATH_TOP = 'M0,' + String(_constants.FANG_HEIGHT_PX) + ' ' + String(_constants.FANG_WIDTH_PX) + ',' + String(_constants.FANG_HEIGHT_PX) + ' ' + _constants.FANG_WIDTH_PX / 2 + ',0z';
       
 10261 var FANG_STROKE_TOP = 'M0,' + String(_constants.FANG_HEIGHT_PX) + ' ' + _constants.FANG_WIDTH_PX / 2 + ',0 ' + String(_constants.FANG_WIDTH_PX) + ',' + String(_constants.FANG_HEIGHT_PX);
       
 10262 var FANG_PATH_BOTTOM = 'M0,0 ' + String(_constants.FANG_WIDTH_PX) + ',0 ' + _constants.FANG_WIDTH_PX / 2 + ',' + String(_constants.FANG_HEIGHT_PX) + 'z';
       
 10263 var FANG_STROKE_BOTTOM = 'M0,0 ' + _constants.FANG_WIDTH_PX / 2 + ',' + String(_constants.FANG_HEIGHT_PX) + ' ' + String(_constants.FANG_WIDTH_PX) + ',0';
       
 10264 
       
 10265 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 10266   id: _propTypes2['default'].string.isRequired,
       
 10267   placeholder: _propTypes2['default'].string, // also used as label
       
 10268   displayValue: _propTypes2['default'].string,
       
 10269   screenReaderMessage: _propTypes2['default'].string,
       
 10270   focused: _propTypes2['default'].bool,
       
 10271   disabled: _propTypes2['default'].bool,
       
 10272   required: _propTypes2['default'].bool,
       
 10273   readOnly: _propTypes2['default'].bool,
       
 10274   openDirection: _OpenDirectionShape2['default'],
       
 10275   showCaret: _propTypes2['default'].bool,
       
 10276   verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 10277   small: _propTypes2['default'].bool,
       
 10278   block: _propTypes2['default'].bool,
       
 10279   regular: _propTypes2['default'].bool,
       
 10280 
       
 10281   onChange: _propTypes2['default'].func,
       
 10282   onFocus: _propTypes2['default'].func,
       
 10283   onKeyDownShiftTab: _propTypes2['default'].func,
       
 10284   onKeyDownTab: _propTypes2['default'].func,
       
 10285 
       
 10286   onKeyDownArrowDown: _propTypes2['default'].func,
       
 10287   onKeyDownQuestionMark: _propTypes2['default'].func,
       
 10288 
       
 10289   // accessibility
       
 10290   isFocused: _propTypes2['default'].bool // describes actual DOM focus
       
 10291 }));
       
 10292 
       
 10293 var defaultProps = {
       
 10294   placeholder: 'Select Date',
       
 10295   displayValue: '',
       
 10296   screenReaderMessage: '',
       
 10297   focused: false,
       
 10298   disabled: false,
       
 10299   required: false,
       
 10300   readOnly: null,
       
 10301   openDirection: _constants.OPEN_DOWN,
       
 10302   showCaret: false,
       
 10303   verticalSpacing: _constants.DEFAULT_VERTICAL_SPACING,
       
 10304   small: false,
       
 10305   block: false,
       
 10306   regular: false,
       
 10307 
       
 10308   onChange: function () {
       
 10309     function onChange() {}
       
 10310 
       
 10311     return onChange;
       
 10312   }(),
       
 10313   onFocus: function () {
       
 10314     function onFocus() {}
       
 10315 
       
 10316     return onFocus;
       
 10317   }(),
       
 10318   onKeyDownShiftTab: function () {
       
 10319     function onKeyDownShiftTab() {}
       
 10320 
       
 10321     return onKeyDownShiftTab;
       
 10322   }(),
       
 10323   onKeyDownTab: function () {
       
 10324     function onKeyDownTab() {}
       
 10325 
       
 10326     return onKeyDownTab;
       
 10327   }(),
       
 10328   onKeyDownArrowDown: function () {
       
 10329     function onKeyDownArrowDown() {}
       
 10330 
       
 10331     return onKeyDownArrowDown;
       
 10332   }(),
       
 10333   onKeyDownQuestionMark: function () {
       
 10334     function onKeyDownQuestionMark() {}
       
 10335 
       
 10336     return onKeyDownQuestionMark;
       
 10337   }(),
       
 10338 
       
 10339 
       
 10340   // accessibility
       
 10341   isFocused: false
       
 10342 };
       
 10343 
       
 10344 var DateInput = function (_React$Component) {
       
 10345   _inherits(DateInput, _React$Component);
       
 10346 
       
 10347   function DateInput(props) {
       
 10348     _classCallCheck(this, DateInput);
       
 10349 
       
 10350     var _this = _possibleConstructorReturn(this, (DateInput.__proto__ || Object.getPrototypeOf(DateInput)).call(this, props));
       
 10351 
       
 10352     _this.state = {
       
 10353       dateString: '',
       
 10354       isTouchDevice: false
       
 10355     };
       
 10356 
       
 10357     _this.onChange = _this.onChange.bind(_this);
       
 10358     _this.onKeyDown = _this.onKeyDown.bind(_this);
       
 10359     _this.setInputRef = _this.setInputRef.bind(_this);
       
 10360     _this.throttledKeyDown = (0, _throttle2['default'])(_this.onFinalKeyDown, 300, { trailing: false });
       
 10361     return _this;
       
 10362   }
       
 10363 
       
 10364   _createClass(DateInput, [{
       
 10365     key: 'componentDidMount',
       
 10366     value: function () {
       
 10367       function componentDidMount() {
       
 10368         this.setState({ isTouchDevice: (0, _isTouchDevice2['default'])() });
       
 10369       }
       
 10370 
       
 10371       return componentDidMount;
       
 10372     }()
       
 10373   }, {
       
 10374     key: 'componentWillReceiveProps',
       
 10375     value: function () {
       
 10376       function componentWillReceiveProps(nextProps) {
       
 10377         var dateString = this.state.dateString;
       
 10378 
       
 10379         if (dateString && nextProps.displayValue) {
       
 10380           this.setState({
       
 10381             dateString: ''
       
 10382           });
       
 10383         }
       
 10384       }
       
 10385 
       
 10386       return componentWillReceiveProps;
       
 10387     }()
       
 10388   }, {
       
 10389     key: 'componentDidUpdate',
       
 10390     value: function () {
       
 10391       function componentDidUpdate(prevProps) {
       
 10392         var _props = this.props,
       
 10393             focused = _props.focused,
       
 10394             isFocused = _props.isFocused;
       
 10395 
       
 10396         if (prevProps.focused === focused && prevProps.isFocused === isFocused) return;
       
 10397 
       
 10398         if (focused && isFocused) {
       
 10399           this.inputRef.focus();
       
 10400         }
       
 10401       }
       
 10402 
       
 10403       return componentDidUpdate;
       
 10404     }()
       
 10405   }, {
       
 10406     key: 'onChange',
       
 10407     value: function () {
       
 10408       function onChange(e) {
       
 10409         var _props2 = this.props,
       
 10410             onChange = _props2.onChange,
       
 10411             onKeyDownQuestionMark = _props2.onKeyDownQuestionMark;
       
 10412 
       
 10413         var dateString = e.target.value;
       
 10414 
       
 10415         // In Safari, onKeyDown does not consistently fire ahead of onChange. As a result, we need to
       
 10416         // special case the `?` key so that it always triggers the appropriate callback, instead of
       
 10417         // modifying the input value
       
 10418         if (dateString[dateString.length - 1] === '?') {
       
 10419           onKeyDownQuestionMark(e);
       
 10420         } else {
       
 10421           this.setState({ dateString: dateString }, function () {
       
 10422             return onChange(dateString);
       
 10423           });
       
 10424         }
       
 10425       }
       
 10426 
       
 10427       return onChange;
       
 10428     }()
       
 10429   }, {
       
 10430     key: 'onKeyDown',
       
 10431     value: function () {
       
 10432       function onKeyDown(e) {
       
 10433         e.stopPropagation();
       
 10434         if (!_constants.MODIFIER_KEY_NAMES.has(e.key)) {
       
 10435           this.throttledKeyDown(e);
       
 10436         }
       
 10437       }
       
 10438 
       
 10439       return onKeyDown;
       
 10440     }()
       
 10441   }, {
       
 10442     key: 'onFinalKeyDown',
       
 10443     value: function () {
       
 10444       function onFinalKeyDown(e) {
       
 10445         var _props3 = this.props,
       
 10446             onKeyDownShiftTab = _props3.onKeyDownShiftTab,
       
 10447             onKeyDownTab = _props3.onKeyDownTab,
       
 10448             onKeyDownArrowDown = _props3.onKeyDownArrowDown,
       
 10449             onKeyDownQuestionMark = _props3.onKeyDownQuestionMark;
       
 10450         var key = e.key;
       
 10451 
       
 10452 
       
 10453         if (key === 'Tab') {
       
 10454           if (e.shiftKey) {
       
 10455             onKeyDownShiftTab(e);
       
 10456           } else {
       
 10457             onKeyDownTab(e);
       
 10458           }
       
 10459         } else if (key === 'ArrowDown') {
       
 10460           onKeyDownArrowDown(e);
       
 10461         } else if (key === '?') {
       
 10462           e.preventDefault();
       
 10463           onKeyDownQuestionMark(e);
       
 10464         }
       
 10465       }
       
 10466 
       
 10467       return onFinalKeyDown;
       
 10468     }()
       
 10469   }, {
       
 10470     key: 'setInputRef',
       
 10471     value: function () {
       
 10472       function setInputRef(ref) {
       
 10473         this.inputRef = ref;
       
 10474       }
       
 10475 
       
 10476       return setInputRef;
       
 10477     }()
       
 10478   }, {
       
 10479     key: 'render',
       
 10480     value: function () {
       
 10481       function render() {
       
 10482         var _state = this.state,
       
 10483             dateString = _state.dateString,
       
 10484             isTouch = _state.isTouchDevice;
       
 10485         var _props4 = this.props,
       
 10486             id = _props4.id,
       
 10487             placeholder = _props4.placeholder,
       
 10488             displayValue = _props4.displayValue,
       
 10489             screenReaderMessage = _props4.screenReaderMessage,
       
 10490             focused = _props4.focused,
       
 10491             showCaret = _props4.showCaret,
       
 10492             onFocus = _props4.onFocus,
       
 10493             disabled = _props4.disabled,
       
 10494             required = _props4.required,
       
 10495             readOnly = _props4.readOnly,
       
 10496             openDirection = _props4.openDirection,
       
 10497             verticalSpacing = _props4.verticalSpacing,
       
 10498             small = _props4.small,
       
 10499             regular = _props4.regular,
       
 10500             block = _props4.block,
       
 10501             styles = _props4.styles,
       
 10502             reactDates = _props4.theme.reactDates;
       
 10503 
       
 10504 
       
 10505         var value = dateString || displayValue || '';
       
 10506         var screenReaderMessageId = 'DateInput__screen-reader-message-' + String(id);
       
 10507 
       
 10508         var withFang = showCaret && focused;
       
 10509 
       
 10510         var inputHeight = (0, _getInputHeight2['default'])(reactDates, small);
       
 10511 
       
 10512         return _react2['default'].createElement(
       
 10513           'div',
       
 10514           (0, _reactWithStyles.css)(styles.DateInput, small && styles.DateInput__small, block && styles.DateInput__block, withFang && styles.DateInput__withFang, disabled && styles.DateInput__disabled, withFang && openDirection === _constants.OPEN_DOWN && styles.DateInput__openDown, withFang && openDirection === _constants.OPEN_UP && styles.DateInput__openUp),
       
 10515           _react2['default'].createElement('input', _extends({}, (0, _reactWithStyles.css)(styles.DateInput_input, small && styles.DateInput_input__small, regular && styles.DateInput_input__regular, readOnly && styles.DateInput_input__readOnly, focused && styles.DateInput_input__focused, disabled && styles.DateInput_input__disabled), {
       
 10516             'aria-label': placeholder,
       
 10517             type: 'text',
       
 10518             id: id,
       
 10519             name: id,
       
 10520             ref: this.setInputRef,
       
 10521             value: value,
       
 10522             onChange: this.onChange,
       
 10523             onKeyDown: this.onKeyDown,
       
 10524             onFocus: onFocus,
       
 10525             placeholder: placeholder,
       
 10526             autoComplete: 'off',
       
 10527             disabled: disabled,
       
 10528             readOnly: typeof readOnly === 'boolean' ? readOnly : isTouch,
       
 10529             required: required,
       
 10530             'aria-describedby': screenReaderMessage && screenReaderMessageId
       
 10531           })),
       
 10532           withFang && _react2['default'].createElement(
       
 10533             'svg',
       
 10534             _extends({
       
 10535               role: 'presentation',
       
 10536               focusable: 'false'
       
 10537             }, (0, _reactWithStyles.css)(styles.DateInput_fang, openDirection === _constants.OPEN_DOWN && {
       
 10538               top: inputHeight + verticalSpacing - _constants.FANG_HEIGHT_PX - 1
       
 10539             }, openDirection === _constants.OPEN_UP && {
       
 10540               bottom: inputHeight + verticalSpacing - _constants.FANG_HEIGHT_PX - 1
       
 10541             })),
       
 10542             _react2['default'].createElement('path', _extends({}, (0, _reactWithStyles.css)(styles.DateInput_fangShape), {
       
 10543               d: openDirection === _constants.OPEN_DOWN ? FANG_PATH_TOP : FANG_PATH_BOTTOM
       
 10544             })),
       
 10545             _react2['default'].createElement('path', _extends({}, (0, _reactWithStyles.css)(styles.DateInput_fangStroke), {
       
 10546               d: openDirection === _constants.OPEN_DOWN ? FANG_STROKE_TOP : FANG_STROKE_BOTTOM
       
 10547             }))
       
 10548           ),
       
 10549           screenReaderMessage && _react2['default'].createElement(
       
 10550             'p',
       
 10551             _extends({}, (0, _reactWithStyles.css)(styles.DateInput_screenReaderMessage), { id: screenReaderMessageId }),
       
 10552             screenReaderMessage
       
 10553           )
       
 10554         );
       
 10555       }
       
 10556 
       
 10557       return render;
       
 10558     }()
       
 10559   }]);
       
 10560 
       
 10561   return DateInput;
       
 10562 }(_react2['default'].Component);
       
 10563 
       
 10564 DateInput.propTypes = propTypes;
       
 10565 DateInput.defaultProps = defaultProps;
       
 10566 
       
 10567 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
 10568   var _ref$reactDates = _ref.reactDates,
       
 10569       border = _ref$reactDates.border,
       
 10570       color = _ref$reactDates.color,
       
 10571       sizing = _ref$reactDates.sizing,
       
 10572       spacing = _ref$reactDates.spacing,
       
 10573       font = _ref$reactDates.font,
       
 10574       zIndex = _ref$reactDates.zIndex;
       
 10575   return {
       
 10576     DateInput: {
       
 10577       margin: 0,
       
 10578       padding: spacing.inputPadding,
       
 10579       background: color.background,
       
 10580       position: 'relative',
       
 10581       display: 'inline-block',
       
 10582       width: sizing.inputWidth,
       
 10583       verticalAlign: 'middle'
       
 10584     },
       
 10585 
       
 10586     DateInput__small: {
       
 10587       width: sizing.inputWidth_small
       
 10588     },
       
 10589 
       
 10590     DateInput__block: {
       
 10591       width: '100%'
       
 10592     },
       
 10593 
       
 10594     DateInput__disabled: {
       
 10595       background: color.disabled,
       
 10596       color: color.textDisabled
       
 10597     },
       
 10598 
       
 10599     DateInput_input: {
       
 10600       fontWeight: 200,
       
 10601       fontSize: font.input.size,
       
 10602       lineHeight: font.input.lineHeight,
       
 10603       color: color.text,
       
 10604       backgroundColor: color.background,
       
 10605       width: '100%',
       
 10606       padding: String(spacing.displayTextPaddingVertical) + 'px ' + String(spacing.displayTextPaddingHorizontal) + 'px',
       
 10607       paddingTop: spacing.displayTextPaddingTop,
       
 10608       paddingBottom: spacing.displayTextPaddingBottom,
       
 10609       paddingLeft: spacing.displayTextPaddingLeft,
       
 10610       paddingRight: spacing.displayTextPaddingRight,
       
 10611       border: border.input.border,
       
 10612       borderTop: border.input.borderTop,
       
 10613       borderRight: border.input.borderRight,
       
 10614       borderBottom: border.input.borderBottom,
       
 10615       borderLeft: border.input.borderLeft,
       
 10616       borderRadius: border.input.borderRadius
       
 10617     },
       
 10618 
       
 10619     DateInput_input__small: {
       
 10620       fontSize: font.input.size_small,
       
 10621       lineHeight: font.input.lineHeight_small,
       
 10622       letterSpacing: font.input.letterSpacing_small,
       
 10623       padding: String(spacing.displayTextPaddingVertical_small) + 'px ' + String(spacing.displayTextPaddingHorizontal_small) + 'px',
       
 10624       paddingTop: spacing.displayTextPaddingTop_small,
       
 10625       paddingBottom: spacing.displayTextPaddingBottom_small,
       
 10626       paddingLeft: spacing.displayTextPaddingLeft_small,
       
 10627       paddingRight: spacing.displayTextPaddingRight_small
       
 10628     },
       
 10629 
       
 10630     DateInput_input__regular: {
       
 10631       fontWeight: 'auto'
       
 10632     },
       
 10633 
       
 10634     DateInput_input__readOnly: {
       
 10635       userSelect: 'none'
       
 10636     },
       
 10637 
       
 10638     DateInput_input__focused: {
       
 10639       outline: border.input.outlineFocused,
       
 10640       background: color.backgroundFocused,
       
 10641       border: border.input.borderFocused,
       
 10642       borderTop: border.input.borderTopFocused,
       
 10643       borderRight: border.input.borderRightFocused,
       
 10644       borderBottom: border.input.borderBottomFocused,
       
 10645       borderLeft: border.input.borderLeftFocused
       
 10646     },
       
 10647 
       
 10648     DateInput_input__disabled: {
       
 10649       background: color.disabled,
       
 10650       fontStyle: font.input.styleDisabled
       
 10651     },
       
 10652 
       
 10653     DateInput_screenReaderMessage: {
       
 10654       border: 0,
       
 10655       clip: 'rect(0, 0, 0, 0)',
       
 10656       height: 1,
       
 10657       margin: -1,
       
 10658       overflow: 'hidden',
       
 10659       padding: 0,
       
 10660       position: 'absolute',
       
 10661       width: 1
       
 10662     },
       
 10663 
       
 10664     DateInput_fang: {
       
 10665       position: 'absolute',
       
 10666       width: _constants.FANG_WIDTH_PX,
       
 10667       height: _constants.FANG_HEIGHT_PX,
       
 10668       left: 22,
       
 10669       zIndex: zIndex + 2
       
 10670     },
       
 10671 
       
 10672     DateInput_fangShape: {
       
 10673       fill: color.background
       
 10674     },
       
 10675 
       
 10676     DateInput_fangStroke: {
       
 10677       stroke: color.core.border,
       
 10678       fill: 'transparent'
       
 10679     }
       
 10680   };
       
 10681 })(DateInput);
       
 10682 
       
 10683 /***/ }),
       
 10684 /* 182 */
       
 10685 /***/ (function(module, exports, __webpack_require__) {
       
 10686 
       
 10687 var debounce = __webpack_require__(315),
       
 10688     isObject = __webpack_require__(128);
       
 10689 
       
 10690 /** Error message constants. */
       
 10691 var FUNC_ERROR_TEXT = 'Expected a function';
       
 10692 
       
 10693 /**
       
 10694  * Creates a throttled function that only invokes `func` at most once per
       
 10695  * every `wait` milliseconds. The throttled function comes with a `cancel`
       
 10696  * method to cancel delayed `func` invocations and a `flush` method to
       
 10697  * immediately invoke them. Provide `options` to indicate whether `func`
       
 10698  * should be invoked on the leading and/or trailing edge of the `wait`
       
 10699  * timeout. The `func` is invoked with the last arguments provided to the
       
 10700  * throttled function. Subsequent calls to the throttled function return the
       
 10701  * result of the last `func` invocation.
       
 10702  *
       
 10703  * **Note:** If `leading` and `trailing` options are `true`, `func` is
       
 10704  * invoked on the trailing edge of the timeout only if the throttled function
       
 10705  * is invoked more than once during the `wait` timeout.
       
 10706  *
       
 10707  * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
       
 10708  * until to the next tick, similar to `setTimeout` with a timeout of `0`.
       
 10709  *
       
 10710  * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
       
 10711  * for details over the differences between `_.throttle` and `_.debounce`.
       
 10712  *
       
 10713  * @static
       
 10714  * @memberOf _
       
 10715  * @since 0.1.0
       
 10716  * @category Function
       
 10717  * @param {Function} func The function to throttle.
       
 10718  * @param {number} [wait=0] The number of milliseconds to throttle invocations to.
       
 10719  * @param {Object} [options={}] The options object.
       
 10720  * @param {boolean} [options.leading=true]
       
 10721  *  Specify invoking on the leading edge of the timeout.
       
 10722  * @param {boolean} [options.trailing=true]
       
 10723  *  Specify invoking on the trailing edge of the timeout.
       
 10724  * @returns {Function} Returns the new throttled function.
       
 10725  * @example
       
 10726  *
       
 10727  * // Avoid excessively updating the position while scrolling.
       
 10728  * jQuery(window).on('scroll', _.throttle(updatePosition, 100));
       
 10729  *
       
 10730  * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.
       
 10731  * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });
       
 10732  * jQuery(element).on('click', throttled);
       
 10733  *
       
 10734  * // Cancel the trailing throttled invocation.
       
 10735  * jQuery(window).on('popstate', throttled.cancel);
       
 10736  */
       
 10737 function throttle(func, wait, options) {
       
 10738   var leading = true,
       
 10739       trailing = true;
       
 10740 
       
 10741   if (typeof func != 'function') {
       
 10742     throw new TypeError(FUNC_ERROR_TEXT);
       
 10743   }
       
 10744   if (isObject(options)) {
       
 10745     leading = 'leading' in options ? !!options.leading : leading;
       
 10746     trailing = 'trailing' in options ? !!options.trailing : trailing;
       
 10747   }
       
 10748   return debounce(func, wait, {
       
 10749     'leading': leading,
       
 10750     'maxWait': wait,
       
 10751     'trailing': trailing
       
 10752   });
       
 10753 }
       
 10754 
       
 10755 module.exports = throttle;
       
 10756 
       
 10757 
       
 10758 /***/ }),
       
 10759 /* 183 */
       
 10760 /***/ (function(module, exports, __webpack_require__) {
       
 10761 
       
 10762 var freeGlobal = __webpack_require__(317);
       
 10763 
       
 10764 /** Detect free variable `self`. */
       
 10765 var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
       
 10766 
       
 10767 /** Used as a reference to the global object. */
       
 10768 var root = freeGlobal || freeSelf || Function('return this')();
       
 10769 
       
 10770 module.exports = root;
       
 10771 
       
 10772 
       
 10773 /***/ }),
       
 10774 /* 184 */
       
 10775 /***/ (function(module, exports, __webpack_require__) {
       
 10776 
       
 10777 var root = __webpack_require__(183);
       
 10778 
       
 10779 /** Built-in value references. */
       
 10780 var Symbol = root.Symbol;
       
 10781 
       
 10782 module.exports = Symbol;
       
 10783 
       
 10784 
       
 10785 /***/ }),
       
 10786 /* 185 */
       
 10787 /***/ (function(module, exports, __webpack_require__) {
       
 10788 
       
 10789 "use strict";
       
 10790 
       
 10791 
       
 10792 Object.defineProperty(exports, "__esModule", {
       
 10793   value: true
       
 10794 });
       
 10795 
       
 10796 var _react = __webpack_require__(27);
       
 10797 
       
 10798 var _react2 = _interopRequireDefault(_react);
       
 10799 
       
 10800 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 10801 
       
 10802 var RightArrow = function () {
       
 10803   function RightArrow(props) {
       
 10804     return _react2['default'].createElement(
       
 10805       'svg',
       
 10806       props,
       
 10807       _react2['default'].createElement('path', {
       
 10808         d: 'M694.4 242.4l249.1 249.1c11 11 11 21 0 32L694.4 772.7c-5 5-10 7-16 7s-11-2-16-7c-11-11-11-21 0-32l210.1-210.1H67.1c-13 0-23-10-23-23s10-23 23-23h805.4L662.4 274.5c-21-21.1 11-53.1 32-32.1z'
       
 10809       })
       
 10810     );
       
 10811   }
       
 10812 
       
 10813   return RightArrow;
       
 10814 }();
       
 10815 
       
 10816 RightArrow.defaultProps = {
       
 10817   viewBox: '0 0 1000 1000'
       
 10818 };
       
 10819 exports['default'] = RightArrow;
       
 10820 
       
 10821 /***/ }),
       
 10822 /* 186 */
       
 10823 /***/ (function(module, exports, __webpack_require__) {
       
 10824 
       
 10825 "use strict";
       
 10826 
       
 10827 
       
 10828 Object.defineProperty(exports, "__esModule", {
       
 10829   value: true
       
 10830 });
       
 10831 
       
 10832 var _react = __webpack_require__(27);
       
 10833 
       
 10834 var _react2 = _interopRequireDefault(_react);
       
 10835 
       
 10836 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 10837 
       
 10838 var LeftArrow = function () {
       
 10839   function LeftArrow(props) {
       
 10840     return _react2['default'].createElement(
       
 10841       'svg',
       
 10842       props,
       
 10843       _react2['default'].createElement('path', {
       
 10844         d: 'M336.2 274.5l-210.1 210h805.4c13 0 23 10 23 23s-10 23-23 23H126.1l210.1 210.1c11 11 11 21 0 32-5 5-10 7-16 7s-11-2-16-7l-249.1-249c-11-11-11-21 0-32l249.1-249.1c21-21.1 53 10.9 32 32z'
       
 10845       })
       
 10846     );
       
 10847   }
       
 10848 
       
 10849   return LeftArrow;
       
 10850 }();
       
 10851 
       
 10852 LeftArrow.defaultProps = {
       
 10853   viewBox: '0 0 1000 1000'
       
 10854 };
       
 10855 exports['default'] = LeftArrow;
       
 10856 
       
 10857 /***/ }),
       
 10858 /* 187 */
       
 10859 /***/ (function(module, exports, __webpack_require__) {
       
 10860 
       
 10861 "use strict";
       
 10862 
       
 10863 
       
 10864 Object.defineProperty(exports, "__esModule", {
       
 10865   value: true
       
 10866 });
       
 10867 
       
 10868 var _react = __webpack_require__(27);
       
 10869 
       
 10870 var _react2 = _interopRequireDefault(_react);
       
 10871 
       
 10872 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 10873 
       
 10874 var CalendarIcon = function () {
       
 10875   function CalendarIcon(props) {
       
 10876     return _react2['default'].createElement(
       
 10877       'svg',
       
 10878       props,
       
 10879       _react2['default'].createElement('path', {
       
 10880         d: 'M107.2 1392.9h241.1v-241.1H107.2v241.1zm294.7 0h267.9v-241.1H401.9v241.1zm-294.7-294.7h241.1V830.4H107.2v267.8zm294.7 0h267.9V830.4H401.9v267.8zM107.2 776.8h241.1V535.7H107.2v241.1zm616.2 616.1h267.9v-241.1H723.4v241.1zM401.9 776.8h267.9V535.7H401.9v241.1zm642.9 616.1H1286v-241.1h-241.1v241.1zm-321.4-294.7h267.9V830.4H723.4v267.8zM428.7 375V133.9c0-7.3-2.7-13.5-8-18.8-5.3-5.3-11.6-8-18.8-8h-53.6c-7.3 0-13.5 2.7-18.8 8-5.3 5.3-8 11.6-8 18.8V375c0 7.3 2.7 13.5 8 18.8 5.3 5.3 11.6 8 18.8 8h53.6c7.3 0 13.5-2.7 18.8-8 5.3-5.3 8-11.5 8-18.8zm616.1 723.2H1286V830.4h-241.1v267.8zM723.4 776.8h267.9V535.7H723.4v241.1zm321.4 0H1286V535.7h-241.1v241.1zm26.8-401.8V133.9c0-7.3-2.7-13.5-8-18.8-5.3-5.3-11.6-8-18.8-8h-53.6c-7.3 0-13.5 2.7-18.8 8-5.3 5.3-8 11.6-8 18.8V375c0 7.3 2.7 13.5 8 18.8 5.3 5.3 11.6 8 18.8 8h53.6c7.3 0 13.5-2.7 18.8-8 5.4-5.3 8-11.5 8-18.8zm321.5-53.6v1071.4c0 29-10.6 54.1-31.8 75.3-21.2 21.2-46.3 31.8-75.3 31.8H107.2c-29 0-54.1-10.6-75.3-31.8C10.6 1447 0 1421.9 0 1392.9V321.4c0-29 10.6-54.1 31.8-75.3s46.3-31.8 75.3-31.8h107.2v-80.4c0-36.8 13.1-68.4 39.3-94.6S311.4 0 348.3 0h53.6c36.8 0 68.4 13.1 94.6 39.3 26.2 26.2 39.3 57.8 39.3 94.6v80.4h321.5v-80.4c0-36.8 13.1-68.4 39.3-94.6C922.9 13.1 954.4 0 991.3 0h53.6c36.8 0 68.4 13.1 94.6 39.3s39.3 57.8 39.3 94.6v80.4H1286c29 0 54.1 10.6 75.3 31.8 21.2 21.2 31.8 46.3 31.8 75.3z'
       
 10881       })
       
 10882     );
       
 10883   }
       
 10884 
       
 10885   return CalendarIcon;
       
 10886 }();
       
 10887 
       
 10888 CalendarIcon.defaultProps = {
       
 10889   viewBox: '0 0 1393.1 1500'
       
 10890 };
       
 10891 exports['default'] = CalendarIcon;
       
 10892 
       
 10893 /***/ }),
       
 10894 /* 188 */
       
 10895 /***/ (function(module, exports, __webpack_require__) {
       
 10896 
       
 10897 "use strict";
       
 10898 
       
 10899 
       
 10900 Object.defineProperty(exports, "__esModule", {
       
 10901   value: true
       
 10902 });
       
 10903 
       
 10904 var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
       
 10905 
       
 10906 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 10907 
       
 10908 var _object = __webpack_require__(46);
       
 10909 
       
 10910 var _object2 = _interopRequireDefault(_object);
       
 10911 
       
 10912 var _react = __webpack_require__(27);
       
 10913 
       
 10914 var _react2 = _interopRequireDefault(_react);
       
 10915 
       
 10916 var _propTypes = __webpack_require__(31);
       
 10917 
       
 10918 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 10919 
       
 10920 var _reactMomentProptypes = __webpack_require__(64);
       
 10921 
       
 10922 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 10923 
       
 10924 var _airbnbPropTypes = __webpack_require__(43);
       
 10925 
       
 10926 var _moment = __webpack_require__(29);
       
 10927 
       
 10928 var _moment2 = _interopRequireDefault(_moment);
       
 10929 
       
 10930 var _object3 = __webpack_require__(189);
       
 10931 
       
 10932 var _object4 = _interopRequireDefault(_object3);
       
 10933 
       
 10934 var _isTouchDevice = __webpack_require__(82);
       
 10935 
       
 10936 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
 10937 
       
 10938 var _defaultPhrases = __webpack_require__(47);
       
 10939 
       
 10940 var _getPhrasePropTypes = __webpack_require__(51);
       
 10941 
       
 10942 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 10943 
       
 10944 var _isInclusivelyAfterDay = __webpack_require__(94);
       
 10945 
       
 10946 var _isInclusivelyAfterDay2 = _interopRequireDefault(_isInclusivelyAfterDay);
       
 10947 
       
 10948 var _isNextDay = __webpack_require__(192);
       
 10949 
       
 10950 var _isNextDay2 = _interopRequireDefault(_isNextDay);
       
 10951 
       
 10952 var _isSameDay = __webpack_require__(79);
       
 10953 
       
 10954 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
 10955 
       
 10956 var _isAfterDay = __webpack_require__(106);
       
 10957 
       
 10958 var _isAfterDay2 = _interopRequireDefault(_isAfterDay);
       
 10959 
       
 10960 var _isBeforeDay = __webpack_require__(95);
       
 10961 
       
 10962 var _isBeforeDay2 = _interopRequireDefault(_isBeforeDay);
       
 10963 
       
 10964 var _getVisibleDays = __webpack_require__(193);
       
 10965 
       
 10966 var _getVisibleDays2 = _interopRequireDefault(_getVisibleDays);
       
 10967 
       
 10968 var _isDayVisible = __webpack_require__(130);
       
 10969 
       
 10970 var _isDayVisible2 = _interopRequireDefault(_isDayVisible);
       
 10971 
       
 10972 var _getSelectedDateOffset = __webpack_require__(325);
       
 10973 
       
 10974 var _getSelectedDateOffset2 = _interopRequireDefault(_getSelectedDateOffset);
       
 10975 
       
 10976 var _toISODateString = __webpack_require__(102);
       
 10977 
       
 10978 var _toISODateString2 = _interopRequireDefault(_toISODateString);
       
 10979 
       
 10980 var _toISOMonthString = __webpack_require__(104);
       
 10981 
       
 10982 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
 10983 
       
 10984 var _DisabledShape = __webpack_require__(105);
       
 10985 
       
 10986 var _DisabledShape2 = _interopRequireDefault(_DisabledShape);
       
 10987 
       
 10988 var _FocusedInputShape = __webpack_require__(173);
       
 10989 
       
 10990 var _FocusedInputShape2 = _interopRequireDefault(_FocusedInputShape);
       
 10991 
       
 10992 var _ScrollableOrientationShape = __webpack_require__(81);
       
 10993 
       
 10994 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 10995 
       
 10996 var _DayOfWeekShape = __webpack_require__(75);
       
 10997 
       
 10998 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 10999 
       
 11000 var _CalendarInfoPositionShape = __webpack_require__(93);
       
 11001 
       
 11002 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
 11003 
       
 11004 var _constants = __webpack_require__(39);
       
 11005 
       
 11006 var _DayPicker = __webpack_require__(131);
       
 11007 
       
 11008 var _DayPicker2 = _interopRequireDefault(_DayPicker);
       
 11009 
       
 11010 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 11011 
       
 11012 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
       
 11013 
       
 11014 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 11015 
       
 11016 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 11017 
       
 11018 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 11019 
       
 11020 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 11021   startDate: _reactMomentProptypes2['default'].momentObj,
       
 11022   endDate: _reactMomentProptypes2['default'].momentObj,
       
 11023   onDatesChange: _propTypes2['default'].func,
       
 11024   startDateOffset: _propTypes2['default'].func,
       
 11025   endDateOffset: _propTypes2['default'].func,
       
 11026 
       
 11027   focusedInput: _FocusedInputShape2['default'],
       
 11028   onFocusChange: _propTypes2['default'].func,
       
 11029   onClose: _propTypes2['default'].func,
       
 11030 
       
 11031   keepOpenOnDateSelect: _propTypes2['default'].bool,
       
 11032   minimumNights: _propTypes2['default'].number,
       
 11033   disabled: _DisabledShape2['default'],
       
 11034   isOutsideRange: _propTypes2['default'].func,
       
 11035   isDayBlocked: _propTypes2['default'].func,
       
 11036   isDayHighlighted: _propTypes2['default'].func,
       
 11037 
       
 11038   // DayPicker props
       
 11039   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 11040   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 11041   enableOutsideDays: _propTypes2['default'].bool,
       
 11042   numberOfMonths: _propTypes2['default'].number,
       
 11043   orientation: _ScrollableOrientationShape2['default'],
       
 11044   withPortal: _propTypes2['default'].bool,
       
 11045   initialVisibleMonth: _propTypes2['default'].func,
       
 11046   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 11047   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 11048   noBorder: _propTypes2['default'].bool,
       
 11049   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 11050   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 11051 
       
 11052   navPrev: _propTypes2['default'].node,
       
 11053   navNext: _propTypes2['default'].node,
       
 11054   noNavButtons: _propTypes2['default'].bool,
       
 11055 
       
 11056   onPrevMonthClick: _propTypes2['default'].func,
       
 11057   onNextMonthClick: _propTypes2['default'].func,
       
 11058   onOutsideClick: _propTypes2['default'].func,
       
 11059   renderCalendarDay: _propTypes2['default'].func,
       
 11060   renderDayContents: _propTypes2['default'].func,
       
 11061   renderCalendarInfo: _propTypes2['default'].func,
       
 11062   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
 11063   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 11064   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
 11065   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
 11066 
       
 11067   // accessibility
       
 11068   onBlur: _propTypes2['default'].func,
       
 11069   isFocused: _propTypes2['default'].bool,
       
 11070   showKeyboardShortcuts: _propTypes2['default'].bool,
       
 11071 
       
 11072   // i18n
       
 11073   monthFormat: _propTypes2['default'].string,
       
 11074   weekDayFormat: _propTypes2['default'].string,
       
 11075   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerPhrases)),
       
 11076   dayAriaLabelFormat: _propTypes2['default'].string,
       
 11077 
       
 11078   isRTL: _propTypes2['default'].bool
       
 11079 });
       
 11080 
       
 11081 var defaultProps = {
       
 11082   startDate: undefined, // TODO: use null
       
 11083   endDate: undefined, // TODO: use null
       
 11084   onDatesChange: function () {
       
 11085     function onDatesChange() {}
       
 11086 
       
 11087     return onDatesChange;
       
 11088   }(),
       
 11089 
       
 11090   startDateOffset: undefined,
       
 11091   endDateOffset: undefined,
       
 11092 
       
 11093   focusedInput: null,
       
 11094   onFocusChange: function () {
       
 11095     function onFocusChange() {}
       
 11096 
       
 11097     return onFocusChange;
       
 11098   }(),
       
 11099   onClose: function () {
       
 11100     function onClose() {}
       
 11101 
       
 11102     return onClose;
       
 11103   }(),
       
 11104 
       
 11105 
       
 11106   keepOpenOnDateSelect: false,
       
 11107   minimumNights: 1,
       
 11108   disabled: false,
       
 11109   isOutsideRange: function () {
       
 11110     function isOutsideRange() {}
       
 11111 
       
 11112     return isOutsideRange;
       
 11113   }(),
       
 11114   isDayBlocked: function () {
       
 11115     function isDayBlocked() {}
       
 11116 
       
 11117     return isDayBlocked;
       
 11118   }(),
       
 11119   isDayHighlighted: function () {
       
 11120     function isDayHighlighted() {}
       
 11121 
       
 11122     return isDayHighlighted;
       
 11123   }(),
       
 11124 
       
 11125 
       
 11126   // DayPicker props
       
 11127   renderMonthText: null,
       
 11128   enableOutsideDays: false,
       
 11129   numberOfMonths: 1,
       
 11130   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 11131   withPortal: false,
       
 11132   hideKeyboardShortcutsPanel: false,
       
 11133   initialVisibleMonth: null,
       
 11134   daySize: _constants.DAY_SIZE,
       
 11135 
       
 11136   navPrev: null,
       
 11137   navNext: null,
       
 11138   noNavButtons: false,
       
 11139 
       
 11140   onPrevMonthClick: function () {
       
 11141     function onPrevMonthClick() {}
       
 11142 
       
 11143     return onPrevMonthClick;
       
 11144   }(),
       
 11145   onNextMonthClick: function () {
       
 11146     function onNextMonthClick() {}
       
 11147 
       
 11148     return onNextMonthClick;
       
 11149   }(),
       
 11150   onOutsideClick: function () {
       
 11151     function onOutsideClick() {}
       
 11152 
       
 11153     return onOutsideClick;
       
 11154   }(),
       
 11155 
       
 11156 
       
 11157   renderCalendarDay: undefined,
       
 11158   renderDayContents: null,
       
 11159   renderCalendarInfo: null,
       
 11160   renderMonthElement: null,
       
 11161   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
       
 11162   firstDayOfWeek: null,
       
 11163   verticalHeight: null,
       
 11164   noBorder: false,
       
 11165   transitionDuration: undefined,
       
 11166   verticalBorderSpacing: undefined,
       
 11167   horizontalMonthPadding: 13,
       
 11168 
       
 11169   // accessibility
       
 11170   onBlur: function () {
       
 11171     function onBlur() {}
       
 11172 
       
 11173     return onBlur;
       
 11174   }(),
       
 11175 
       
 11176   isFocused: false,
       
 11177   showKeyboardShortcuts: false,
       
 11178 
       
 11179   // i18n
       
 11180   monthFormat: 'MMMM YYYY',
       
 11181   weekDayFormat: 'dd',
       
 11182   phrases: _defaultPhrases.DayPickerPhrases,
       
 11183   dayAriaLabelFormat: undefined,
       
 11184 
       
 11185   isRTL: false
       
 11186 };
       
 11187 
       
 11188 var getChooseAvailableDatePhrase = function getChooseAvailableDatePhrase(phrases, focusedInput) {
       
 11189   if (focusedInput === _constants.START_DATE) {
       
 11190     return phrases.chooseAvailableStartDate;
       
 11191   }
       
 11192   if (focusedInput === _constants.END_DATE) {
       
 11193     return phrases.chooseAvailableEndDate;
       
 11194   }
       
 11195   return phrases.chooseAvailableDate;
       
 11196 };
       
 11197 
       
 11198 var DayPickerRangeController = function (_React$Component) {
       
 11199   _inherits(DayPickerRangeController, _React$Component);
       
 11200 
       
 11201   function DayPickerRangeController(props) {
       
 11202     _classCallCheck(this, DayPickerRangeController);
       
 11203 
       
 11204     var _this = _possibleConstructorReturn(this, (DayPickerRangeController.__proto__ || Object.getPrototypeOf(DayPickerRangeController)).call(this, props));
       
 11205 
       
 11206     _this.isTouchDevice = (0, _isTouchDevice2['default'])();
       
 11207     _this.today = (0, _moment2['default'])();
       
 11208     _this.modifiers = {
       
 11209       today: function () {
       
 11210         function today(day) {
       
 11211           return _this.isToday(day);
       
 11212         }
       
 11213 
       
 11214         return today;
       
 11215       }(),
       
 11216       blocked: function () {
       
 11217         function blocked(day) {
       
 11218           return _this.isBlocked(day);
       
 11219         }
       
 11220 
       
 11221         return blocked;
       
 11222       }(),
       
 11223       'blocked-calendar': function () {
       
 11224         function blockedCalendar(day) {
       
 11225           return props.isDayBlocked(day);
       
 11226         }
       
 11227 
       
 11228         return blockedCalendar;
       
 11229       }(),
       
 11230       'blocked-out-of-range': function () {
       
 11231         function blockedOutOfRange(day) {
       
 11232           return props.isOutsideRange(day);
       
 11233         }
       
 11234 
       
 11235         return blockedOutOfRange;
       
 11236       }(),
       
 11237       'highlighted-calendar': function () {
       
 11238         function highlightedCalendar(day) {
       
 11239           return props.isDayHighlighted(day);
       
 11240         }
       
 11241 
       
 11242         return highlightedCalendar;
       
 11243       }(),
       
 11244       valid: function () {
       
 11245         function valid(day) {
       
 11246           return !_this.isBlocked(day);
       
 11247         }
       
 11248 
       
 11249         return valid;
       
 11250       }(),
       
 11251       'selected-start': function () {
       
 11252         function selectedStart(day) {
       
 11253           return _this.isStartDate(day);
       
 11254         }
       
 11255 
       
 11256         return selectedStart;
       
 11257       }(),
       
 11258       'selected-end': function () {
       
 11259         function selectedEnd(day) {
       
 11260           return _this.isEndDate(day);
       
 11261         }
       
 11262 
       
 11263         return selectedEnd;
       
 11264       }(),
       
 11265       'blocked-minimum-nights': function () {
       
 11266         function blockedMinimumNights(day) {
       
 11267           return _this.doesNotMeetMinimumNights(day);
       
 11268         }
       
 11269 
       
 11270         return blockedMinimumNights;
       
 11271       }(),
       
 11272       'selected-span': function () {
       
 11273         function selectedSpan(day) {
       
 11274           return _this.isInSelectedSpan(day);
       
 11275         }
       
 11276 
       
 11277         return selectedSpan;
       
 11278       }(),
       
 11279       'last-in-range': function () {
       
 11280         function lastInRange(day) {
       
 11281           return _this.isLastInRange(day);
       
 11282         }
       
 11283 
       
 11284         return lastInRange;
       
 11285       }(),
       
 11286       hovered: function () {
       
 11287         function hovered(day) {
       
 11288           return _this.isHovered(day);
       
 11289         }
       
 11290 
       
 11291         return hovered;
       
 11292       }(),
       
 11293       'hovered-span': function () {
       
 11294         function hoveredSpan(day) {
       
 11295           return _this.isInHoveredSpan(day);
       
 11296         }
       
 11297 
       
 11298         return hoveredSpan;
       
 11299       }(),
       
 11300       'hovered-offset': function () {
       
 11301         function hoveredOffset(day) {
       
 11302           return _this.isInHoveredSpan(day);
       
 11303         }
       
 11304 
       
 11305         return hoveredOffset;
       
 11306       }(),
       
 11307       'after-hovered-start': function () {
       
 11308         function afterHoveredStart(day) {
       
 11309           return _this.isDayAfterHoveredStartDate(day);
       
 11310         }
       
 11311 
       
 11312         return afterHoveredStart;
       
 11313       }(),
       
 11314       'first-day-of-week': function () {
       
 11315         function firstDayOfWeek(day) {
       
 11316           return _this.isFirstDayOfWeek(day);
       
 11317         }
       
 11318 
       
 11319         return firstDayOfWeek;
       
 11320       }(),
       
 11321       'last-day-of-week': function () {
       
 11322         function lastDayOfWeek(day) {
       
 11323           return _this.isLastDayOfWeek(day);
       
 11324         }
       
 11325 
       
 11326         return lastDayOfWeek;
       
 11327       }()
       
 11328     };
       
 11329 
       
 11330     var _this$getStateForNewM = _this.getStateForNewMonth(props),
       
 11331         currentMonth = _this$getStateForNewM.currentMonth,
       
 11332         visibleDays = _this$getStateForNewM.visibleDays;
       
 11333 
       
 11334     // initialize phrases
       
 11335     // set the appropriate CalendarDay phrase based on focusedInput
       
 11336 
       
 11337 
       
 11338     var chooseAvailableDate = getChooseAvailableDatePhrase(props.phrases, props.focusedInput);
       
 11339 
       
 11340     _this.state = {
       
 11341       hoverDate: null,
       
 11342       currentMonth: currentMonth,
       
 11343       phrases: (0, _object2['default'])({}, props.phrases, {
       
 11344         chooseAvailableDate: chooseAvailableDate
       
 11345       }),
       
 11346       visibleDays: visibleDays
       
 11347     };
       
 11348 
       
 11349     _this.onDayClick = _this.onDayClick.bind(_this);
       
 11350     _this.onDayMouseEnter = _this.onDayMouseEnter.bind(_this);
       
 11351     _this.onDayMouseLeave = _this.onDayMouseLeave.bind(_this);
       
 11352     _this.onPrevMonthClick = _this.onPrevMonthClick.bind(_this);
       
 11353     _this.onNextMonthClick = _this.onNextMonthClick.bind(_this);
       
 11354     _this.onMonthChange = _this.onMonthChange.bind(_this);
       
 11355     _this.onYearChange = _this.onYearChange.bind(_this);
       
 11356     _this.onMultiplyScrollableMonths = _this.onMultiplyScrollableMonths.bind(_this);
       
 11357     _this.getFirstFocusableDay = _this.getFirstFocusableDay.bind(_this);
       
 11358     return _this;
       
 11359   }
       
 11360 
       
 11361   _createClass(DayPickerRangeController, [{
       
 11362     key: 'componentWillReceiveProps',
       
 11363     value: function () {
       
 11364       function componentWillReceiveProps(nextProps) {
       
 11365         var _this2 = this;
       
 11366 
       
 11367         var startDate = nextProps.startDate,
       
 11368             endDate = nextProps.endDate,
       
 11369             focusedInput = nextProps.focusedInput,
       
 11370             minimumNights = nextProps.minimumNights,
       
 11371             isOutsideRange = nextProps.isOutsideRange,
       
 11372             isDayBlocked = nextProps.isDayBlocked,
       
 11373             isDayHighlighted = nextProps.isDayHighlighted,
       
 11374             phrases = nextProps.phrases,
       
 11375             initialVisibleMonth = nextProps.initialVisibleMonth,
       
 11376             numberOfMonths = nextProps.numberOfMonths,
       
 11377             enableOutsideDays = nextProps.enableOutsideDays;
       
 11378         var _props = this.props,
       
 11379             prevStartDate = _props.startDate,
       
 11380             prevEndDate = _props.endDate,
       
 11381             prevFocusedInput = _props.focusedInput,
       
 11382             prevMinimumNights = _props.minimumNights,
       
 11383             prevIsOutsideRange = _props.isOutsideRange,
       
 11384             prevIsDayBlocked = _props.isDayBlocked,
       
 11385             prevIsDayHighlighted = _props.isDayHighlighted,
       
 11386             prevPhrases = _props.phrases,
       
 11387             prevInitialVisibleMonth = _props.initialVisibleMonth,
       
 11388             prevNumberOfMonths = _props.numberOfMonths,
       
 11389             prevEnableOutsideDays = _props.enableOutsideDays;
       
 11390         var visibleDays = this.state.visibleDays;
       
 11391 
       
 11392 
       
 11393         var recomputeOutsideRange = false;
       
 11394         var recomputeDayBlocked = false;
       
 11395         var recomputeDayHighlighted = false;
       
 11396 
       
 11397         if (isOutsideRange !== prevIsOutsideRange) {
       
 11398           this.modifiers['blocked-out-of-range'] = function (day) {
       
 11399             return isOutsideRange(day);
       
 11400           };
       
 11401           recomputeOutsideRange = true;
       
 11402         }
       
 11403 
       
 11404         if (isDayBlocked !== prevIsDayBlocked) {
       
 11405           this.modifiers['blocked-calendar'] = function (day) {
       
 11406             return isDayBlocked(day);
       
 11407           };
       
 11408           recomputeDayBlocked = true;
       
 11409         }
       
 11410 
       
 11411         if (isDayHighlighted !== prevIsDayHighlighted) {
       
 11412           this.modifiers['highlighted-calendar'] = function (day) {
       
 11413             return isDayHighlighted(day);
       
 11414           };
       
 11415           recomputeDayHighlighted = true;
       
 11416         }
       
 11417 
       
 11418         var recomputePropModifiers = recomputeOutsideRange || recomputeDayBlocked || recomputeDayHighlighted;
       
 11419 
       
 11420         var didStartDateChange = startDate !== prevStartDate;
       
 11421         var didEndDateChange = endDate !== prevEndDate;
       
 11422         var didFocusChange = focusedInput !== prevFocusedInput;
       
 11423 
       
 11424         if (numberOfMonths !== prevNumberOfMonths || enableOutsideDays !== prevEnableOutsideDays || initialVisibleMonth !== prevInitialVisibleMonth && !prevFocusedInput && didFocusChange) {
       
 11425           var newMonthState = this.getStateForNewMonth(nextProps);
       
 11426           var currentMonth = newMonthState.currentMonth;
       
 11427           visibleDays = newMonthState.visibleDays;
       
 11428 
       
 11429           this.setState({
       
 11430             currentMonth: currentMonth,
       
 11431             visibleDays: visibleDays
       
 11432           });
       
 11433         }
       
 11434 
       
 11435         var modifiers = {};
       
 11436 
       
 11437         if (didStartDateChange) {
       
 11438           modifiers = this.deleteModifier(modifiers, prevStartDate, 'selected-start');
       
 11439           modifiers = this.addModifier(modifiers, startDate, 'selected-start');
       
 11440 
       
 11441           if (prevStartDate) {
       
 11442             var startSpan = prevStartDate.clone().add(1, 'day');
       
 11443             var endSpan = prevStartDate.clone().add(prevMinimumNights + 1, 'days');
       
 11444             modifiers = this.deleteModifierFromRange(modifiers, startSpan, endSpan, 'after-hovered-start');
       
 11445           }
       
 11446         }
       
 11447 
       
 11448         if (didEndDateChange) {
       
 11449           modifiers = this.deleteModifier(modifiers, prevEndDate, 'selected-end');
       
 11450           modifiers = this.addModifier(modifiers, endDate, 'selected-end');
       
 11451         }
       
 11452 
       
 11453         if (didStartDateChange || didEndDateChange) {
       
 11454           if (prevStartDate && prevEndDate) {
       
 11455             modifiers = this.deleteModifierFromRange(modifiers, prevStartDate, prevEndDate.clone().add(1, 'day'), 'selected-span');
       
 11456           }
       
 11457 
       
 11458           if (startDate && endDate) {
       
 11459             modifiers = this.deleteModifierFromRange(modifiers, startDate, endDate.clone().add(1, 'day'), 'hovered-span');
       
 11460 
       
 11461             modifiers = this.addModifierToRange(modifiers, startDate.clone().add(1, 'day'), endDate, 'selected-span');
       
 11462           }
       
 11463         }
       
 11464 
       
 11465         if (!this.isTouchDevice && didStartDateChange && startDate && !endDate) {
       
 11466           var _startSpan = startDate.clone().add(1, 'day');
       
 11467           var _endSpan = startDate.clone().add(minimumNights + 1, 'days');
       
 11468           modifiers = this.addModifierToRange(modifiers, _startSpan, _endSpan, 'after-hovered-start');
       
 11469         }
       
 11470 
       
 11471         if (prevMinimumNights > 0) {
       
 11472           if (didFocusChange || didStartDateChange || minimumNights !== prevMinimumNights) {
       
 11473             var _startSpan2 = prevStartDate || this.today;
       
 11474             modifiers = this.deleteModifierFromRange(modifiers, _startSpan2, _startSpan2.clone().add(prevMinimumNights, 'days'), 'blocked-minimum-nights');
       
 11475 
       
 11476             modifiers = this.deleteModifierFromRange(modifiers, _startSpan2, _startSpan2.clone().add(prevMinimumNights, 'days'), 'blocked');
       
 11477           }
       
 11478         }
       
 11479 
       
 11480         if (didFocusChange || recomputePropModifiers) {
       
 11481           (0, _object4['default'])(visibleDays).forEach(function (days) {
       
 11482             Object.keys(days).forEach(function (day) {
       
 11483               var momentObj = (0, _moment2['default'])(day);
       
 11484               var isBlocked = false;
       
 11485 
       
 11486               if (didFocusChange || recomputeOutsideRange) {
       
 11487                 if (isOutsideRange(momentObj)) {
       
 11488                   modifiers = _this2.addModifier(modifiers, momentObj, 'blocked-out-of-range');
       
 11489                   isBlocked = true;
       
 11490                 } else {
       
 11491                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked-out-of-range');
       
 11492                 }
       
 11493               }
       
 11494 
       
 11495               if (didFocusChange || recomputeDayBlocked) {
       
 11496                 if (isDayBlocked(momentObj)) {
       
 11497                   modifiers = _this2.addModifier(modifiers, momentObj, 'blocked-calendar');
       
 11498                   isBlocked = true;
       
 11499                 } else {
       
 11500                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked-calendar');
       
 11501                 }
       
 11502               }
       
 11503 
       
 11504               if (isBlocked) {
       
 11505                 modifiers = _this2.addModifier(modifiers, momentObj, 'blocked');
       
 11506               } else {
       
 11507                 modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked');
       
 11508               }
       
 11509 
       
 11510               if (didFocusChange || recomputeDayHighlighted) {
       
 11511                 if (isDayHighlighted(momentObj)) {
       
 11512                   modifiers = _this2.addModifier(modifiers, momentObj, 'highlighted-calendar');
       
 11513                 } else {
       
 11514                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'highlighted-calendar');
       
 11515                 }
       
 11516               }
       
 11517             });
       
 11518           });
       
 11519         }
       
 11520 
       
 11521         if (minimumNights > 0 && startDate && focusedInput === _constants.END_DATE) {
       
 11522           modifiers = this.addModifierToRange(modifiers, startDate, startDate.clone().add(minimumNights, 'days'), 'blocked-minimum-nights');
       
 11523 
       
 11524           modifiers = this.addModifierToRange(modifiers, startDate, startDate.clone().add(minimumNights, 'days'), 'blocked');
       
 11525         }
       
 11526 
       
 11527         var today = (0, _moment2['default'])();
       
 11528         if (!(0, _isSameDay2['default'])(this.today, today)) {
       
 11529           modifiers = this.deleteModifier(modifiers, this.today, 'today');
       
 11530           modifiers = this.addModifier(modifiers, today, 'today');
       
 11531           this.today = today;
       
 11532         }
       
 11533 
       
 11534         if (Object.keys(modifiers).length > 0) {
       
 11535           this.setState({
       
 11536             visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 11537           });
       
 11538         }
       
 11539 
       
 11540         if (didFocusChange || phrases !== prevPhrases) {
       
 11541           // set the appropriate CalendarDay phrase based on focusedInput
       
 11542           var chooseAvailableDate = getChooseAvailableDatePhrase(phrases, focusedInput);
       
 11543 
       
 11544           this.setState({
       
 11545             phrases: (0, _object2['default'])({}, phrases, {
       
 11546               chooseAvailableDate: chooseAvailableDate
       
 11547             })
       
 11548           });
       
 11549         }
       
 11550       }
       
 11551 
       
 11552       return componentWillReceiveProps;
       
 11553     }()
       
 11554   }, {
       
 11555     key: 'onDayClick',
       
 11556     value: function () {
       
 11557       function onDayClick(day, e) {
       
 11558         var _props2 = this.props,
       
 11559             keepOpenOnDateSelect = _props2.keepOpenOnDateSelect,
       
 11560             minimumNights = _props2.minimumNights,
       
 11561             onBlur = _props2.onBlur,
       
 11562             focusedInput = _props2.focusedInput,
       
 11563             onFocusChange = _props2.onFocusChange,
       
 11564             onClose = _props2.onClose,
       
 11565             onDatesChange = _props2.onDatesChange,
       
 11566             startDateOffset = _props2.startDateOffset,
       
 11567             endDateOffset = _props2.endDateOffset,
       
 11568             disabled = _props2.disabled;
       
 11569 
       
 11570 
       
 11571         if (e) e.preventDefault();
       
 11572         if (this.isBlocked(day)) return;
       
 11573 
       
 11574         var _props3 = this.props,
       
 11575             startDate = _props3.startDate,
       
 11576             endDate = _props3.endDate;
       
 11577 
       
 11578 
       
 11579         if (startDateOffset || endDateOffset) {
       
 11580           startDate = (0, _getSelectedDateOffset2['default'])(startDateOffset, day);
       
 11581           endDate = (0, _getSelectedDateOffset2['default'])(endDateOffset, day);
       
 11582 
       
 11583           if (!keepOpenOnDateSelect) {
       
 11584             onFocusChange(null);
       
 11585             onClose({ startDate: startDate, endDate: endDate });
       
 11586           }
       
 11587         } else if (focusedInput === _constants.START_DATE) {
       
 11588           var lastAllowedStartDate = endDate && endDate.clone().subtract(minimumNights, 'days');
       
 11589           var isStartDateAfterEndDate = (0, _isBeforeDay2['default'])(lastAllowedStartDate, day) || (0, _isAfterDay2['default'])(startDate, endDate);
       
 11590           var isEndDateDisabled = disabled === _constants.END_DATE;
       
 11591 
       
 11592           if (!isEndDateDisabled || !isStartDateAfterEndDate) {
       
 11593             startDate = day;
       
 11594             if (isStartDateAfterEndDate) {
       
 11595               endDate = null;
       
 11596             }
       
 11597           }
       
 11598 
       
 11599           if (isEndDateDisabled && !isStartDateAfterEndDate) {
       
 11600             onFocusChange(null);
       
 11601             onClose({ startDate: startDate, endDate: endDate });
       
 11602           } else if (!isEndDateDisabled) {
       
 11603             onFocusChange(_constants.END_DATE);
       
 11604           }
       
 11605         } else if (focusedInput === _constants.END_DATE) {
       
 11606           var firstAllowedEndDate = startDate && startDate.clone().add(minimumNights, 'days');
       
 11607 
       
 11608           if (!startDate) {
       
 11609             endDate = day;
       
 11610             onFocusChange(_constants.START_DATE);
       
 11611           } else if ((0, _isInclusivelyAfterDay2['default'])(day, firstAllowedEndDate)) {
       
 11612             endDate = day;
       
 11613             if (!keepOpenOnDateSelect) {
       
 11614               onFocusChange(null);
       
 11615               onClose({ startDate: startDate, endDate: endDate });
       
 11616             }
       
 11617           } else if (disabled !== _constants.START_DATE) {
       
 11618             startDate = day;
       
 11619             endDate = null;
       
 11620           }
       
 11621         }
       
 11622 
       
 11623         onDatesChange({ startDate: startDate, endDate: endDate });
       
 11624         onBlur();
       
 11625       }
       
 11626 
       
 11627       return onDayClick;
       
 11628     }()
       
 11629   }, {
       
 11630     key: 'onDayMouseEnter',
       
 11631     value: function () {
       
 11632       function onDayMouseEnter(day) {
       
 11633         /* eslint react/destructuring-assignment: 1 */
       
 11634         if (this.isTouchDevice) return;
       
 11635         var _props4 = this.props,
       
 11636             startDate = _props4.startDate,
       
 11637             endDate = _props4.endDate,
       
 11638             focusedInput = _props4.focusedInput,
       
 11639             minimumNights = _props4.minimumNights,
       
 11640             startDateOffset = _props4.startDateOffset,
       
 11641             endDateOffset = _props4.endDateOffset;
       
 11642         var _state = this.state,
       
 11643             hoverDate = _state.hoverDate,
       
 11644             visibleDays = _state.visibleDays;
       
 11645 
       
 11646         var dateOffset = null;
       
 11647 
       
 11648         if (focusedInput) {
       
 11649           var hasOffset = startDateOffset || endDateOffset;
       
 11650           var modifiers = {};
       
 11651 
       
 11652           if (hasOffset) {
       
 11653             var start = (0, _getSelectedDateOffset2['default'])(startDateOffset, day);
       
 11654             var end = (0, _getSelectedDateOffset2['default'])(endDateOffset, day, function (rangeDay) {
       
 11655               return rangeDay.add(1, 'day');
       
 11656             });
       
 11657 
       
 11658             dateOffset = {
       
 11659               start: start,
       
 11660               end: end
       
 11661             };
       
 11662 
       
 11663             // eslint-disable-next-line react/destructuring-assignment
       
 11664             if (this.state.dateOffset && this.state.dateOffset.start && this.state.dateOffset.end) {
       
 11665               modifiers = this.deleteModifierFromRange(modifiers, this.state.dateOffset.start, this.state.dateOffset.end, 'hovered-offset');
       
 11666             }
       
 11667             modifiers = this.addModifierToRange(modifiers, start, end, 'hovered-offset');
       
 11668           }
       
 11669 
       
 11670           if (!hasOffset) {
       
 11671             modifiers = this.deleteModifier(modifiers, hoverDate, 'hovered');
       
 11672             modifiers = this.addModifier(modifiers, day, 'hovered');
       
 11673 
       
 11674             if (startDate && !endDate && focusedInput === _constants.END_DATE) {
       
 11675               if ((0, _isAfterDay2['default'])(hoverDate, startDate)) {
       
 11676                 var endSpan = hoverDate.clone().add(1, 'day');
       
 11677                 modifiers = this.deleteModifierFromRange(modifiers, startDate, endSpan, 'hovered-span');
       
 11678               }
       
 11679 
       
 11680               if (!this.isBlocked(day) && (0, _isAfterDay2['default'])(day, startDate)) {
       
 11681                 var _endSpan2 = day.clone().add(1, 'day');
       
 11682                 modifiers = this.addModifierToRange(modifiers, startDate, _endSpan2, 'hovered-span');
       
 11683               }
       
 11684             }
       
 11685 
       
 11686             if (!startDate && endDate && focusedInput === _constants.START_DATE) {
       
 11687               if ((0, _isBeforeDay2['default'])(hoverDate, endDate)) {
       
 11688                 modifiers = this.deleteModifierFromRange(modifiers, hoverDate, endDate, 'hovered-span');
       
 11689               }
       
 11690 
       
 11691               if (!this.isBlocked(day) && (0, _isBeforeDay2['default'])(day, endDate)) {
       
 11692                 modifiers = this.addModifierToRange(modifiers, day, endDate, 'hovered-span');
       
 11693               }
       
 11694             }
       
 11695 
       
 11696             if (startDate) {
       
 11697               var startSpan = startDate.clone().add(1, 'day');
       
 11698               var _endSpan3 = startDate.clone().add(minimumNights + 1, 'days');
       
 11699               modifiers = this.deleteModifierFromRange(modifiers, startSpan, _endSpan3, 'after-hovered-start');
       
 11700 
       
 11701               if ((0, _isSameDay2['default'])(day, startDate)) {
       
 11702                 var newStartSpan = startDate.clone().add(1, 'day');
       
 11703                 var newEndSpan = startDate.clone().add(minimumNights + 1, 'days');
       
 11704                 modifiers = this.addModifierToRange(modifiers, newStartSpan, newEndSpan, 'after-hovered-start');
       
 11705               }
       
 11706             }
       
 11707           }
       
 11708 
       
 11709           this.setState({
       
 11710             hoverDate: day,
       
 11711             dateOffset: dateOffset,
       
 11712             visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 11713           });
       
 11714         }
       
 11715       }
       
 11716 
       
 11717       return onDayMouseEnter;
       
 11718     }()
       
 11719   }, {
       
 11720     key: 'onDayMouseLeave',
       
 11721     value: function () {
       
 11722       function onDayMouseLeave(day) {
       
 11723         var _props5 = this.props,
       
 11724             startDate = _props5.startDate,
       
 11725             endDate = _props5.endDate,
       
 11726             minimumNights = _props5.minimumNights;
       
 11727         var _state2 = this.state,
       
 11728             hoverDate = _state2.hoverDate,
       
 11729             visibleDays = _state2.visibleDays,
       
 11730             dateOffset = _state2.dateOffset;
       
 11731 
       
 11732         if (this.isTouchDevice || !hoverDate) return;
       
 11733 
       
 11734         var modifiers = {};
       
 11735         modifiers = this.deleteModifier(modifiers, hoverDate, 'hovered');
       
 11736 
       
 11737         if (dateOffset) {
       
 11738           modifiers = this.deleteModifierFromRange(modifiers, this.state.dateOffset.start, this.state.dateOffset.end, 'hovered-offset');
       
 11739         }
       
 11740 
       
 11741         if (startDate && !endDate && (0, _isAfterDay2['default'])(hoverDate, startDate)) {
       
 11742           var endSpan = hoverDate.clone().add(1, 'day');
       
 11743           modifiers = this.deleteModifierFromRange(modifiers, startDate, endSpan, 'hovered-span');
       
 11744         }
       
 11745 
       
 11746         if (!startDate && endDate && (0, _isAfterDay2['default'])(endDate, hoverDate)) {
       
 11747           modifiers = this.deleteModifierFromRange(modifiers, hoverDate, endDate, 'hovered-span');
       
 11748         }
       
 11749 
       
 11750         if (startDate && (0, _isSameDay2['default'])(day, startDate)) {
       
 11751           var startSpan = startDate.clone().add(1, 'day');
       
 11752           var _endSpan4 = startDate.clone().add(minimumNights + 1, 'days');
       
 11753           modifiers = this.deleteModifierFromRange(modifiers, startSpan, _endSpan4, 'after-hovered-start');
       
 11754         }
       
 11755 
       
 11756         this.setState({
       
 11757           hoverDate: null,
       
 11758           visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 11759         });
       
 11760       }
       
 11761 
       
 11762       return onDayMouseLeave;
       
 11763     }()
       
 11764   }, {
       
 11765     key: 'onPrevMonthClick',
       
 11766     value: function () {
       
 11767       function onPrevMonthClick() {
       
 11768         var _props6 = this.props,
       
 11769             onPrevMonthClick = _props6.onPrevMonthClick,
       
 11770             numberOfMonths = _props6.numberOfMonths,
       
 11771             enableOutsideDays = _props6.enableOutsideDays;
       
 11772         var _state3 = this.state,
       
 11773             currentMonth = _state3.currentMonth,
       
 11774             visibleDays = _state3.visibleDays;
       
 11775 
       
 11776 
       
 11777         var newVisibleDays = {};
       
 11778         Object.keys(visibleDays).sort().slice(0, numberOfMonths + 1).forEach(function (month) {
       
 11779           newVisibleDays[month] = visibleDays[month];
       
 11780         });
       
 11781 
       
 11782         var prevMonth = currentMonth.clone().subtract(2, 'months');
       
 11783         var prevMonthVisibleDays = (0, _getVisibleDays2['default'])(prevMonth, 1, enableOutsideDays, true);
       
 11784 
       
 11785         var newCurrentMonth = currentMonth.clone().subtract(1, 'month');
       
 11786         this.setState({
       
 11787           currentMonth: newCurrentMonth,
       
 11788           visibleDays: (0, _object2['default'])({}, newVisibleDays, this.getModifiers(prevMonthVisibleDays))
       
 11789         }, function () {
       
 11790           onPrevMonthClick(newCurrentMonth.clone());
       
 11791         });
       
 11792       }
       
 11793 
       
 11794       return onPrevMonthClick;
       
 11795     }()
       
 11796   }, {
       
 11797     key: 'onNextMonthClick',
       
 11798     value: function () {
       
 11799       function onNextMonthClick() {
       
 11800         var _props7 = this.props,
       
 11801             onNextMonthClick = _props7.onNextMonthClick,
       
 11802             numberOfMonths = _props7.numberOfMonths,
       
 11803             enableOutsideDays = _props7.enableOutsideDays;
       
 11804         var _state4 = this.state,
       
 11805             currentMonth = _state4.currentMonth,
       
 11806             visibleDays = _state4.visibleDays;
       
 11807 
       
 11808 
       
 11809         var newVisibleDays = {};
       
 11810         Object.keys(visibleDays).sort().slice(1).forEach(function (month) {
       
 11811           newVisibleDays[month] = visibleDays[month];
       
 11812         });
       
 11813 
       
 11814         var nextMonth = currentMonth.clone().add(numberOfMonths + 1, 'month');
       
 11815         var nextMonthVisibleDays = (0, _getVisibleDays2['default'])(nextMonth, 1, enableOutsideDays, true);
       
 11816 
       
 11817         var newCurrentMonth = currentMonth.clone().add(1, 'month');
       
 11818         this.setState({
       
 11819           currentMonth: newCurrentMonth,
       
 11820           visibleDays: (0, _object2['default'])({}, newVisibleDays, this.getModifiers(nextMonthVisibleDays))
       
 11821         }, function () {
       
 11822           onNextMonthClick(newCurrentMonth.clone());
       
 11823         });
       
 11824       }
       
 11825 
       
 11826       return onNextMonthClick;
       
 11827     }()
       
 11828   }, {
       
 11829     key: 'onMonthChange',
       
 11830     value: function () {
       
 11831       function onMonthChange(newMonth) {
       
 11832         var _props8 = this.props,
       
 11833             numberOfMonths = _props8.numberOfMonths,
       
 11834             enableOutsideDays = _props8.enableOutsideDays,
       
 11835             orientation = _props8.orientation;
       
 11836 
       
 11837         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 11838         var newVisibleDays = (0, _getVisibleDays2['default'])(newMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths);
       
 11839 
       
 11840         this.setState({
       
 11841           currentMonth: newMonth.clone(),
       
 11842           visibleDays: this.getModifiers(newVisibleDays)
       
 11843         });
       
 11844       }
       
 11845 
       
 11846       return onMonthChange;
       
 11847     }()
       
 11848   }, {
       
 11849     key: 'onYearChange',
       
 11850     value: function () {
       
 11851       function onYearChange(newMonth) {
       
 11852         var _props9 = this.props,
       
 11853             numberOfMonths = _props9.numberOfMonths,
       
 11854             enableOutsideDays = _props9.enableOutsideDays,
       
 11855             orientation = _props9.orientation;
       
 11856 
       
 11857         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 11858         var newVisibleDays = (0, _getVisibleDays2['default'])(newMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths);
       
 11859 
       
 11860         this.setState({
       
 11861           currentMonth: newMonth.clone(),
       
 11862           visibleDays: this.getModifiers(newVisibleDays)
       
 11863         });
       
 11864       }
       
 11865 
       
 11866       return onYearChange;
       
 11867     }()
       
 11868   }, {
       
 11869     key: 'onMultiplyScrollableMonths',
       
 11870     value: function () {
       
 11871       function onMultiplyScrollableMonths() {
       
 11872         var _props10 = this.props,
       
 11873             numberOfMonths = _props10.numberOfMonths,
       
 11874             enableOutsideDays = _props10.enableOutsideDays;
       
 11875         var _state5 = this.state,
       
 11876             currentMonth = _state5.currentMonth,
       
 11877             visibleDays = _state5.visibleDays;
       
 11878 
       
 11879 
       
 11880         var numberOfVisibleMonths = Object.keys(visibleDays).length;
       
 11881         var nextMonth = currentMonth.clone().add(numberOfVisibleMonths, 'month');
       
 11882         var newVisibleDays = (0, _getVisibleDays2['default'])(nextMonth, numberOfMonths, enableOutsideDays, true);
       
 11883 
       
 11884         this.setState({
       
 11885           visibleDays: (0, _object2['default'])({}, visibleDays, this.getModifiers(newVisibleDays))
       
 11886         });
       
 11887       }
       
 11888 
       
 11889       return onMultiplyScrollableMonths;
       
 11890     }()
       
 11891   }, {
       
 11892     key: 'getFirstFocusableDay',
       
 11893     value: function () {
       
 11894       function getFirstFocusableDay(newMonth) {
       
 11895         var _this3 = this;
       
 11896 
       
 11897         var _props11 = this.props,
       
 11898             startDate = _props11.startDate,
       
 11899             endDate = _props11.endDate,
       
 11900             focusedInput = _props11.focusedInput,
       
 11901             minimumNights = _props11.minimumNights,
       
 11902             numberOfMonths = _props11.numberOfMonths;
       
 11903 
       
 11904 
       
 11905         var focusedDate = newMonth.clone().startOf('month');
       
 11906         if (focusedInput === _constants.START_DATE && startDate) {
       
 11907           focusedDate = startDate.clone();
       
 11908         } else if (focusedInput === _constants.END_DATE && !endDate && startDate) {
       
 11909           focusedDate = startDate.clone().add(minimumNights, 'days');
       
 11910         } else if (focusedInput === _constants.END_DATE && endDate) {
       
 11911           focusedDate = endDate.clone();
       
 11912         }
       
 11913 
       
 11914         if (this.isBlocked(focusedDate)) {
       
 11915           var days = [];
       
 11916           var lastVisibleDay = newMonth.clone().add(numberOfMonths - 1, 'months').endOf('month');
       
 11917           var currentDay = focusedDate.clone();
       
 11918           while (!(0, _isAfterDay2['default'])(currentDay, lastVisibleDay)) {
       
 11919             currentDay = currentDay.clone().add(1, 'day');
       
 11920             days.push(currentDay);
       
 11921           }
       
 11922 
       
 11923           var viableDays = days.filter(function (day) {
       
 11924             return !_this3.isBlocked(day);
       
 11925           });
       
 11926 
       
 11927           if (viableDays.length > 0) {
       
 11928             var _viableDays = _slicedToArray(viableDays, 1);
       
 11929 
       
 11930             focusedDate = _viableDays[0];
       
 11931           }
       
 11932         }
       
 11933 
       
 11934         return focusedDate;
       
 11935       }
       
 11936 
       
 11937       return getFirstFocusableDay;
       
 11938     }()
       
 11939   }, {
       
 11940     key: 'getModifiers',
       
 11941     value: function () {
       
 11942       function getModifiers(visibleDays) {
       
 11943         var _this4 = this;
       
 11944 
       
 11945         var modifiers = {};
       
 11946         Object.keys(visibleDays).forEach(function (month) {
       
 11947           modifiers[month] = {};
       
 11948           visibleDays[month].forEach(function (day) {
       
 11949             modifiers[month][(0, _toISODateString2['default'])(day)] = _this4.getModifiersForDay(day);
       
 11950           });
       
 11951         });
       
 11952 
       
 11953         return modifiers;
       
 11954       }
       
 11955 
       
 11956       return getModifiers;
       
 11957     }()
       
 11958   }, {
       
 11959     key: 'getModifiersForDay',
       
 11960     value: function () {
       
 11961       function getModifiersForDay(day) {
       
 11962         var _this5 = this;
       
 11963 
       
 11964         return new Set(Object.keys(this.modifiers).filter(function (modifier) {
       
 11965           return _this5.modifiers[modifier](day);
       
 11966         }));
       
 11967       }
       
 11968 
       
 11969       return getModifiersForDay;
       
 11970     }()
       
 11971   }, {
       
 11972     key: 'getStateForNewMonth',
       
 11973     value: function () {
       
 11974       function getStateForNewMonth(nextProps) {
       
 11975         var _this6 = this;
       
 11976 
       
 11977         var initialVisibleMonth = nextProps.initialVisibleMonth,
       
 11978             numberOfMonths = nextProps.numberOfMonths,
       
 11979             enableOutsideDays = nextProps.enableOutsideDays,
       
 11980             orientation = nextProps.orientation,
       
 11981             startDate = nextProps.startDate;
       
 11982 
       
 11983         var initialVisibleMonthThunk = initialVisibleMonth || (startDate ? function () {
       
 11984           return startDate;
       
 11985         } : function () {
       
 11986           return _this6.today;
       
 11987         });
       
 11988         var currentMonth = initialVisibleMonthThunk();
       
 11989         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 11990         var visibleDays = this.getModifiers((0, _getVisibleDays2['default'])(currentMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths));
       
 11991         return { currentMonth: currentMonth, visibleDays: visibleDays };
       
 11992       }
       
 11993 
       
 11994       return getStateForNewMonth;
       
 11995     }()
       
 11996   }, {
       
 11997     key: 'addModifier',
       
 11998     value: function () {
       
 11999       function addModifier(updatedDays, day, modifier) {
       
 12000         var _props12 = this.props,
       
 12001             numberOfVisibleMonths = _props12.numberOfMonths,
       
 12002             enableOutsideDays = _props12.enableOutsideDays,
       
 12003             orientation = _props12.orientation;
       
 12004         var _state6 = this.state,
       
 12005             firstVisibleMonth = _state6.currentMonth,
       
 12006             visibleDays = _state6.visibleDays;
       
 12007 
       
 12008 
       
 12009         var currentMonth = firstVisibleMonth;
       
 12010         var numberOfMonths = numberOfVisibleMonths;
       
 12011         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 12012           numberOfMonths = Object.keys(visibleDays).length;
       
 12013         } else {
       
 12014           currentMonth = currentMonth.clone().subtract(1, 'month');
       
 12015           numberOfMonths += 2;
       
 12016         }
       
 12017         if (!day || !(0, _isDayVisible2['default'])(day, currentMonth, numberOfMonths, enableOutsideDays)) {
       
 12018           return updatedDays;
       
 12019         }
       
 12020 
       
 12021         var iso = (0, _toISODateString2['default'])(day);
       
 12022 
       
 12023         var updatedDaysAfterAddition = (0, _object2['default'])({}, updatedDays);
       
 12024         if (enableOutsideDays) {
       
 12025           var monthsToUpdate = Object.keys(visibleDays).filter(function (monthKey) {
       
 12026             return Object.keys(visibleDays[monthKey]).indexOf(iso) > -1;
       
 12027           });
       
 12028 
       
 12029           updatedDaysAfterAddition = monthsToUpdate.reduce(function (days, monthIso) {
       
 12030             var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 12031             var modifiers = new Set(month[iso]);
       
 12032             modifiers.add(modifier);
       
 12033             return (0, _object2['default'])({}, days, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 12034           }, updatedDaysAfterAddition);
       
 12035         } else {
       
 12036           var monthIso = (0, _toISOMonthString2['default'])(day);
       
 12037           var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 12038 
       
 12039           var modifiers = new Set(month[iso]);
       
 12040           modifiers.add(modifier);
       
 12041           updatedDaysAfterAddition = (0, _object2['default'])({}, updatedDaysAfterAddition, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 12042         }
       
 12043 
       
 12044         return updatedDaysAfterAddition;
       
 12045       }
       
 12046 
       
 12047       return addModifier;
       
 12048     }()
       
 12049   }, {
       
 12050     key: 'addModifierToRange',
       
 12051     value: function () {
       
 12052       function addModifierToRange(updatedDays, start, end, modifier) {
       
 12053         var days = updatedDays;
       
 12054 
       
 12055         var spanStart = start.clone();
       
 12056         while ((0, _isBeforeDay2['default'])(spanStart, end)) {
       
 12057           days = this.addModifier(days, spanStart, modifier);
       
 12058           spanStart = spanStart.clone().add(1, 'day');
       
 12059         }
       
 12060 
       
 12061         return days;
       
 12062       }
       
 12063 
       
 12064       return addModifierToRange;
       
 12065     }()
       
 12066   }, {
       
 12067     key: 'deleteModifier',
       
 12068     value: function () {
       
 12069       function deleteModifier(updatedDays, day, modifier) {
       
 12070         var _props13 = this.props,
       
 12071             numberOfVisibleMonths = _props13.numberOfMonths,
       
 12072             enableOutsideDays = _props13.enableOutsideDays,
       
 12073             orientation = _props13.orientation;
       
 12074         var _state7 = this.state,
       
 12075             firstVisibleMonth = _state7.currentMonth,
       
 12076             visibleDays = _state7.visibleDays;
       
 12077 
       
 12078         var currentMonth = firstVisibleMonth;
       
 12079         var numberOfMonths = numberOfVisibleMonths;
       
 12080         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 12081           numberOfMonths = Object.keys(visibleDays).length;
       
 12082         } else {
       
 12083           currentMonth = currentMonth.clone().subtract(1, 'month');
       
 12084           numberOfMonths += 2;
       
 12085         }
       
 12086         if (!day || !(0, _isDayVisible2['default'])(day, currentMonth, numberOfMonths, enableOutsideDays)) {
       
 12087           return updatedDays;
       
 12088         }
       
 12089 
       
 12090         var iso = (0, _toISODateString2['default'])(day);
       
 12091 
       
 12092         var updatedDaysAfterDeletion = (0, _object2['default'])({}, updatedDays);
       
 12093         if (enableOutsideDays) {
       
 12094           var monthsToUpdate = Object.keys(visibleDays).filter(function (monthKey) {
       
 12095             return Object.keys(visibleDays[monthKey]).indexOf(iso) > -1;
       
 12096           });
       
 12097 
       
 12098           updatedDaysAfterDeletion = monthsToUpdate.reduce(function (days, monthIso) {
       
 12099             var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 12100             var modifiers = new Set(month[iso]);
       
 12101             modifiers['delete'](modifier);
       
 12102             return (0, _object2['default'])({}, days, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 12103           }, updatedDaysAfterDeletion);
       
 12104         } else {
       
 12105           var monthIso = (0, _toISOMonthString2['default'])(day);
       
 12106           var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 12107 
       
 12108           var modifiers = new Set(month[iso]);
       
 12109           modifiers['delete'](modifier);
       
 12110           updatedDaysAfterDeletion = (0, _object2['default'])({}, updatedDaysAfterDeletion, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 12111         }
       
 12112 
       
 12113         return updatedDaysAfterDeletion;
       
 12114       }
       
 12115 
       
 12116       return deleteModifier;
       
 12117     }()
       
 12118   }, {
       
 12119     key: 'deleteModifierFromRange',
       
 12120     value: function () {
       
 12121       function deleteModifierFromRange(updatedDays, start, end, modifier) {
       
 12122         var days = updatedDays;
       
 12123 
       
 12124         var spanStart = start.clone();
       
 12125         while ((0, _isBeforeDay2['default'])(spanStart, end)) {
       
 12126           days = this.deleteModifier(days, spanStart, modifier);
       
 12127           spanStart = spanStart.clone().add(1, 'day');
       
 12128         }
       
 12129 
       
 12130         return days;
       
 12131       }
       
 12132 
       
 12133       return deleteModifierFromRange;
       
 12134     }()
       
 12135   }, {
       
 12136     key: 'doesNotMeetMinimumNights',
       
 12137     value: function () {
       
 12138       function doesNotMeetMinimumNights(day) {
       
 12139         var _props14 = this.props,
       
 12140             startDate = _props14.startDate,
       
 12141             isOutsideRange = _props14.isOutsideRange,
       
 12142             focusedInput = _props14.focusedInput,
       
 12143             minimumNights = _props14.minimumNights;
       
 12144 
       
 12145         if (focusedInput !== _constants.END_DATE) return false;
       
 12146 
       
 12147         if (startDate) {
       
 12148           var dayDiff = day.diff(startDate.clone().startOf('day').hour(12), 'days');
       
 12149           return dayDiff < minimumNights && dayDiff >= 0;
       
 12150         }
       
 12151         return isOutsideRange((0, _moment2['default'])(day).subtract(minimumNights, 'days'));
       
 12152       }
       
 12153 
       
 12154       return doesNotMeetMinimumNights;
       
 12155     }()
       
 12156   }, {
       
 12157     key: 'isDayAfterHoveredStartDate',
       
 12158     value: function () {
       
 12159       function isDayAfterHoveredStartDate(day) {
       
 12160         var _props15 = this.props,
       
 12161             startDate = _props15.startDate,
       
 12162             endDate = _props15.endDate,
       
 12163             minimumNights = _props15.minimumNights;
       
 12164 
       
 12165         var _ref = this.state || {},
       
 12166             hoverDate = _ref.hoverDate;
       
 12167 
       
 12168         return !!startDate && !endDate && !this.isBlocked(day) && (0, _isNextDay2['default'])(hoverDate, day) && minimumNights > 0 && (0, _isSameDay2['default'])(hoverDate, startDate);
       
 12169       }
       
 12170 
       
 12171       return isDayAfterHoveredStartDate;
       
 12172     }()
       
 12173   }, {
       
 12174     key: 'isEndDate',
       
 12175     value: function () {
       
 12176       function isEndDate(day) {
       
 12177         var endDate = this.props.endDate;
       
 12178 
       
 12179         return (0, _isSameDay2['default'])(day, endDate);
       
 12180       }
       
 12181 
       
 12182       return isEndDate;
       
 12183     }()
       
 12184   }, {
       
 12185     key: 'isHovered',
       
 12186     value: function () {
       
 12187       function isHovered(day) {
       
 12188         var _ref2 = this.state || {},
       
 12189             hoverDate = _ref2.hoverDate;
       
 12190 
       
 12191         var focusedInput = this.props.focusedInput;
       
 12192 
       
 12193         return !!focusedInput && (0, _isSameDay2['default'])(day, hoverDate);
       
 12194       }
       
 12195 
       
 12196       return isHovered;
       
 12197     }()
       
 12198   }, {
       
 12199     key: 'isInHoveredSpan',
       
 12200     value: function () {
       
 12201       function isInHoveredSpan(day) {
       
 12202         var _props16 = this.props,
       
 12203             startDate = _props16.startDate,
       
 12204             endDate = _props16.endDate;
       
 12205 
       
 12206         var _ref3 = this.state || {},
       
 12207             hoverDate = _ref3.hoverDate;
       
 12208 
       
 12209         var isForwardRange = !!startDate && !endDate && (day.isBetween(startDate, hoverDate) || (0, _isSameDay2['default'])(hoverDate, day));
       
 12210         var isBackwardRange = !!endDate && !startDate && (day.isBetween(hoverDate, endDate) || (0, _isSameDay2['default'])(hoverDate, day));
       
 12211 
       
 12212         var isValidDayHovered = hoverDate && !this.isBlocked(hoverDate);
       
 12213 
       
 12214         return (isForwardRange || isBackwardRange) && isValidDayHovered;
       
 12215       }
       
 12216 
       
 12217       return isInHoveredSpan;
       
 12218     }()
       
 12219   }, {
       
 12220     key: 'isInSelectedSpan',
       
 12221     value: function () {
       
 12222       function isInSelectedSpan(day) {
       
 12223         var _props17 = this.props,
       
 12224             startDate = _props17.startDate,
       
 12225             endDate = _props17.endDate;
       
 12226 
       
 12227         return day.isBetween(startDate, endDate);
       
 12228       }
       
 12229 
       
 12230       return isInSelectedSpan;
       
 12231     }()
       
 12232   }, {
       
 12233     key: 'isLastInRange',
       
 12234     value: function () {
       
 12235       function isLastInRange(day) {
       
 12236         var endDate = this.props.endDate;
       
 12237 
       
 12238         return this.isInSelectedSpan(day) && (0, _isNextDay2['default'])(day, endDate);
       
 12239       }
       
 12240 
       
 12241       return isLastInRange;
       
 12242     }()
       
 12243   }, {
       
 12244     key: 'isStartDate',
       
 12245     value: function () {
       
 12246       function isStartDate(day) {
       
 12247         var startDate = this.props.startDate;
       
 12248 
       
 12249         return (0, _isSameDay2['default'])(day, startDate);
       
 12250       }
       
 12251 
       
 12252       return isStartDate;
       
 12253     }()
       
 12254   }, {
       
 12255     key: 'isBlocked',
       
 12256     value: function () {
       
 12257       function isBlocked(day) {
       
 12258         var _props18 = this.props,
       
 12259             isDayBlocked = _props18.isDayBlocked,
       
 12260             isOutsideRange = _props18.isOutsideRange;
       
 12261 
       
 12262         return isDayBlocked(day) || isOutsideRange(day) || this.doesNotMeetMinimumNights(day);
       
 12263       }
       
 12264 
       
 12265       return isBlocked;
       
 12266     }()
       
 12267   }, {
       
 12268     key: 'isToday',
       
 12269     value: function () {
       
 12270       function isToday(day) {
       
 12271         return (0, _isSameDay2['default'])(day, this.today);
       
 12272       }
       
 12273 
       
 12274       return isToday;
       
 12275     }()
       
 12276   }, {
       
 12277     key: 'isFirstDayOfWeek',
       
 12278     value: function () {
       
 12279       function isFirstDayOfWeek(day) {
       
 12280         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 12281 
       
 12282         return day.day() === (firstDayOfWeek || _moment2['default'].localeData().firstDayOfWeek());
       
 12283       }
       
 12284 
       
 12285       return isFirstDayOfWeek;
       
 12286     }()
       
 12287   }, {
       
 12288     key: 'isLastDayOfWeek',
       
 12289     value: function () {
       
 12290       function isLastDayOfWeek(day) {
       
 12291         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 12292 
       
 12293         return day.day() === ((firstDayOfWeek || _moment2['default'].localeData().firstDayOfWeek()) + 6) % 7;
       
 12294       }
       
 12295 
       
 12296       return isLastDayOfWeek;
       
 12297     }()
       
 12298   }, {
       
 12299     key: 'render',
       
 12300     value: function () {
       
 12301       function render() {
       
 12302         var _props19 = this.props,
       
 12303             numberOfMonths = _props19.numberOfMonths,
       
 12304             orientation = _props19.orientation,
       
 12305             monthFormat = _props19.monthFormat,
       
 12306             renderMonthText = _props19.renderMonthText,
       
 12307             navPrev = _props19.navPrev,
       
 12308             navNext = _props19.navNext,
       
 12309             noNavButtons = _props19.noNavButtons,
       
 12310             onOutsideClick = _props19.onOutsideClick,
       
 12311             withPortal = _props19.withPortal,
       
 12312             enableOutsideDays = _props19.enableOutsideDays,
       
 12313             firstDayOfWeek = _props19.firstDayOfWeek,
       
 12314             hideKeyboardShortcutsPanel = _props19.hideKeyboardShortcutsPanel,
       
 12315             daySize = _props19.daySize,
       
 12316             focusedInput = _props19.focusedInput,
       
 12317             renderCalendarDay = _props19.renderCalendarDay,
       
 12318             renderDayContents = _props19.renderDayContents,
       
 12319             renderCalendarInfo = _props19.renderCalendarInfo,
       
 12320             renderMonthElement = _props19.renderMonthElement,
       
 12321             calendarInfoPosition = _props19.calendarInfoPosition,
       
 12322             onBlur = _props19.onBlur,
       
 12323             isFocused = _props19.isFocused,
       
 12324             showKeyboardShortcuts = _props19.showKeyboardShortcuts,
       
 12325             isRTL = _props19.isRTL,
       
 12326             weekDayFormat = _props19.weekDayFormat,
       
 12327             dayAriaLabelFormat = _props19.dayAriaLabelFormat,
       
 12328             verticalHeight = _props19.verticalHeight,
       
 12329             noBorder = _props19.noBorder,
       
 12330             transitionDuration = _props19.transitionDuration,
       
 12331             verticalBorderSpacing = _props19.verticalBorderSpacing,
       
 12332             horizontalMonthPadding = _props19.horizontalMonthPadding;
       
 12333         var _state8 = this.state,
       
 12334             currentMonth = _state8.currentMonth,
       
 12335             phrases = _state8.phrases,
       
 12336             visibleDays = _state8.visibleDays;
       
 12337 
       
 12338 
       
 12339         return _react2['default'].createElement(_DayPicker2['default'], {
       
 12340           orientation: orientation,
       
 12341           enableOutsideDays: enableOutsideDays,
       
 12342           modifiers: visibleDays,
       
 12343           numberOfMonths: numberOfMonths,
       
 12344           onDayClick: this.onDayClick,
       
 12345           onDayMouseEnter: this.onDayMouseEnter,
       
 12346           onDayMouseLeave: this.onDayMouseLeave,
       
 12347           onPrevMonthClick: this.onPrevMonthClick,
       
 12348           onNextMonthClick: this.onNextMonthClick,
       
 12349           onMonthChange: this.onMonthChange,
       
 12350           onYearChange: this.onYearChange,
       
 12351           onMultiplyScrollableMonths: this.onMultiplyScrollableMonths,
       
 12352           monthFormat: monthFormat,
       
 12353           renderMonthText: renderMonthText,
       
 12354           withPortal: withPortal,
       
 12355           hidden: !focusedInput,
       
 12356           initialVisibleMonth: function () {
       
 12357             function initialVisibleMonth() {
       
 12358               return currentMonth;
       
 12359             }
       
 12360 
       
 12361             return initialVisibleMonth;
       
 12362           }(),
       
 12363           daySize: daySize,
       
 12364           onOutsideClick: onOutsideClick,
       
 12365           navPrev: navPrev,
       
 12366           navNext: navNext,
       
 12367           noNavButtons: noNavButtons,
       
 12368           renderCalendarDay: renderCalendarDay,
       
 12369           renderDayContents: renderDayContents,
       
 12370           renderCalendarInfo: renderCalendarInfo,
       
 12371           renderMonthElement: renderMonthElement,
       
 12372           calendarInfoPosition: calendarInfoPosition,
       
 12373           firstDayOfWeek: firstDayOfWeek,
       
 12374           hideKeyboardShortcutsPanel: hideKeyboardShortcutsPanel,
       
 12375           isFocused: isFocused,
       
 12376           getFirstFocusableDay: this.getFirstFocusableDay,
       
 12377           onBlur: onBlur,
       
 12378           showKeyboardShortcuts: showKeyboardShortcuts,
       
 12379           phrases: phrases,
       
 12380           isRTL: isRTL,
       
 12381           weekDayFormat: weekDayFormat,
       
 12382           dayAriaLabelFormat: dayAriaLabelFormat,
       
 12383           verticalHeight: verticalHeight,
       
 12384           verticalBorderSpacing: verticalBorderSpacing,
       
 12385           noBorder: noBorder,
       
 12386           transitionDuration: transitionDuration,
       
 12387           horizontalMonthPadding: horizontalMonthPadding
       
 12388         });
       
 12389       }
       
 12390 
       
 12391       return render;
       
 12392     }()
       
 12393   }]);
       
 12394 
       
 12395   return DayPickerRangeController;
       
 12396 }(_react2['default'].Component);
       
 12397 
       
 12398 exports['default'] = DayPickerRangeController;
       
 12399 
       
 12400 
       
 12401 DayPickerRangeController.propTypes = propTypes;
       
 12402 DayPickerRangeController.defaultProps = defaultProps;
       
 12403 
       
 12404 /***/ }),
       
 12405 /* 189 */
       
 12406 /***/ (function(module, exports, __webpack_require__) {
       
 12407 
       
 12408 "use strict";
       
 12409 
       
 12410 
       
 12411 var define = __webpack_require__(73);
       
 12412 
       
 12413 var implementation = __webpack_require__(190);
       
 12414 var getPolyfill = __webpack_require__(191);
       
 12415 var shim = __webpack_require__(324);
       
 12416 
       
 12417 var polyfill = getPolyfill();
       
 12418 
       
 12419 define(polyfill, {
       
 12420 	getPolyfill: getPolyfill,
       
 12421 	implementation: implementation,
       
 12422 	shim: shim
       
 12423 });
       
 12424 
       
 12425 module.exports = polyfill;
       
 12426 
       
 12427 
       
 12428 /***/ }),
       
 12429 /* 190 */
       
 12430 /***/ (function(module, exports, __webpack_require__) {
       
 12431 
       
 12432 "use strict";
       
 12433 
       
 12434 
       
 12435 var ES = __webpack_require__(166);
       
 12436 var has = __webpack_require__(91);
       
 12437 var bind = __webpack_require__(74);
       
 12438 var isEnumerable = bind.call(Function.call, Object.prototype.propertyIsEnumerable);
       
 12439 
       
 12440 module.exports = function values(O) {
       
 12441 	var obj = ES.RequireObjectCoercible(O);
       
 12442 	var vals = [];
       
 12443 	for (var key in obj) {
       
 12444 		if (has(obj, key) && isEnumerable(obj, key)) {
       
 12445 			vals.push(obj[key]);
       
 12446 		}
       
 12447 	}
       
 12448 	return vals;
       
 12449 };
       
 12450 
       
 12451 
       
 12452 /***/ }),
       
 12453 /* 191 */
       
 12454 /***/ (function(module, exports, __webpack_require__) {
       
 12455 
       
 12456 "use strict";
       
 12457 
       
 12458 
       
 12459 var implementation = __webpack_require__(190);
       
 12460 
       
 12461 module.exports = function getPolyfill() {
       
 12462 	return typeof Object.values === 'function' ? Object.values : implementation;
       
 12463 };
       
 12464 
       
 12465 
       
 12466 /***/ }),
       
 12467 /* 192 */
       
 12468 /***/ (function(module, exports, __webpack_require__) {
       
 12469 
       
 12470 "use strict";
       
 12471 
       
 12472 
       
 12473 Object.defineProperty(exports, "__esModule", {
       
 12474   value: true
       
 12475 });
       
 12476 exports['default'] = isNextDay;
       
 12477 
       
 12478 var _moment = __webpack_require__(29);
       
 12479 
       
 12480 var _moment2 = _interopRequireDefault(_moment);
       
 12481 
       
 12482 var _isSameDay = __webpack_require__(79);
       
 12483 
       
 12484 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
 12485 
       
 12486 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 12487 
       
 12488 function isNextDay(a, b) {
       
 12489   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
 12490   var nextDay = (0, _moment2['default'])(a).add(1, 'day');
       
 12491   return (0, _isSameDay2['default'])(nextDay, b);
       
 12492 }
       
 12493 
       
 12494 /***/ }),
       
 12495 /* 193 */
       
 12496 /***/ (function(module, exports, __webpack_require__) {
       
 12497 
       
 12498 "use strict";
       
 12499 
       
 12500 
       
 12501 Object.defineProperty(exports, "__esModule", {
       
 12502   value: true
       
 12503 });
       
 12504 exports['default'] = getVisibleDays;
       
 12505 
       
 12506 var _moment = __webpack_require__(29);
       
 12507 
       
 12508 var _moment2 = _interopRequireDefault(_moment);
       
 12509 
       
 12510 var _toISOMonthString = __webpack_require__(104);
       
 12511 
       
 12512 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
 12513 
       
 12514 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 12515 
       
 12516 function getVisibleDays(month, numberOfMonths, enableOutsideDays, withoutTransitionMonths) {
       
 12517   if (!_moment2['default'].isMoment(month)) return {};
       
 12518 
       
 12519   var visibleDaysByMonth = {};
       
 12520   var currentMonth = withoutTransitionMonths ? month.clone() : month.clone().subtract(1, 'month');
       
 12521   for (var i = 0; i < (withoutTransitionMonths ? numberOfMonths : numberOfMonths + 2); i += 1) {
       
 12522     var visibleDays = [];
       
 12523 
       
 12524     // set utc offset to get correct dates in future (when timezone changes)
       
 12525     var baseDate = currentMonth.clone();
       
 12526     var firstOfMonth = baseDate.clone().startOf('month').hour(12);
       
 12527     var lastOfMonth = baseDate.clone().endOf('month').hour(12);
       
 12528 
       
 12529     var currentDay = firstOfMonth.clone();
       
 12530 
       
 12531     // days belonging to the previous month
       
 12532     if (enableOutsideDays) {
       
 12533       for (var j = 0; j < currentDay.weekday(); j += 1) {
       
 12534         var prevDay = currentDay.clone().subtract(j + 1, 'day');
       
 12535         visibleDays.unshift(prevDay);
       
 12536       }
       
 12537     }
       
 12538 
       
 12539     while (currentDay < lastOfMonth) {
       
 12540       visibleDays.push(currentDay.clone());
       
 12541       currentDay.add(1, 'day');
       
 12542     }
       
 12543 
       
 12544     if (enableOutsideDays) {
       
 12545       // weekday() returns the index of the day of the week according to the locale
       
 12546       // this means if the week starts on Monday, weekday() will return 0 for a Monday date, not 1
       
 12547       if (currentDay.weekday() !== 0) {
       
 12548         // days belonging to the next month
       
 12549         for (var k = currentDay.weekday(), count = 0; k < 7; k += 1, count += 1) {
       
 12550           var nextDay = currentDay.clone().add(count, 'day');
       
 12551           visibleDays.push(nextDay);
       
 12552         }
       
 12553       }
       
 12554     }
       
 12555 
       
 12556     visibleDaysByMonth[(0, _toISOMonthString2['default'])(currentMonth)] = visibleDays;
       
 12557     currentMonth = currentMonth.clone().add(1, 'month');
       
 12558   }
       
 12559 
       
 12560   return visibleDaysByMonth;
       
 12561 }
       
 12562 
       
 12563 /***/ }),
       
 12564 /* 194 */
       
 12565 /***/ (function(module, exports, __webpack_require__) {
       
 12566 
       
 12567 "use strict";
       
 12568 
       
 12569 
       
 12570 Object.defineProperty(exports, "__esModule", {
       
 12571   value: true
       
 12572 });
       
 12573 
       
 12574 var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
       
 12575 
       
 12576 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 12577 
       
 12578 var _object = __webpack_require__(46);
       
 12579 
       
 12580 var _object2 = _interopRequireDefault(_object);
       
 12581 
       
 12582 var _react = __webpack_require__(27);
       
 12583 
       
 12584 var _react2 = _interopRequireDefault(_react);
       
 12585 
       
 12586 var _propTypes = __webpack_require__(31);
       
 12587 
       
 12588 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 12589 
       
 12590 var _reactMomentProptypes = __webpack_require__(64);
       
 12591 
       
 12592 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 12593 
       
 12594 var _airbnbPropTypes = __webpack_require__(43);
       
 12595 
       
 12596 var _moment = __webpack_require__(29);
       
 12597 
       
 12598 var _moment2 = _interopRequireDefault(_moment);
       
 12599 
       
 12600 var _object3 = __webpack_require__(189);
       
 12601 
       
 12602 var _object4 = _interopRequireDefault(_object3);
       
 12603 
       
 12604 var _isTouchDevice = __webpack_require__(82);
       
 12605 
       
 12606 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
 12607 
       
 12608 var _defaultPhrases = __webpack_require__(47);
       
 12609 
       
 12610 var _getPhrasePropTypes = __webpack_require__(51);
       
 12611 
       
 12612 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 12613 
       
 12614 var _isSameDay = __webpack_require__(79);
       
 12615 
       
 12616 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
 12617 
       
 12618 var _isAfterDay = __webpack_require__(106);
       
 12619 
       
 12620 var _isAfterDay2 = _interopRequireDefault(_isAfterDay);
       
 12621 
       
 12622 var _getVisibleDays = __webpack_require__(193);
       
 12623 
       
 12624 var _getVisibleDays2 = _interopRequireDefault(_getVisibleDays);
       
 12625 
       
 12626 var _isDayVisible = __webpack_require__(130);
       
 12627 
       
 12628 var _isDayVisible2 = _interopRequireDefault(_isDayVisible);
       
 12629 
       
 12630 var _toISODateString = __webpack_require__(102);
       
 12631 
       
 12632 var _toISODateString2 = _interopRequireDefault(_toISODateString);
       
 12633 
       
 12634 var _toISOMonthString = __webpack_require__(104);
       
 12635 
       
 12636 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
 12637 
       
 12638 var _ScrollableOrientationShape = __webpack_require__(81);
       
 12639 
       
 12640 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 12641 
       
 12642 var _DayOfWeekShape = __webpack_require__(75);
       
 12643 
       
 12644 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 12645 
       
 12646 var _CalendarInfoPositionShape = __webpack_require__(93);
       
 12647 
       
 12648 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
 12649 
       
 12650 var _constants = __webpack_require__(39);
       
 12651 
       
 12652 var _DayPicker = __webpack_require__(131);
       
 12653 
       
 12654 var _DayPicker2 = _interopRequireDefault(_DayPicker);
       
 12655 
       
 12656 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 12657 
       
 12658 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
       
 12659 
       
 12660 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 12661 
       
 12662 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 12663 
       
 12664 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 12665 
       
 12666 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 12667   date: _reactMomentProptypes2['default'].momentObj,
       
 12668   onDateChange: _propTypes2['default'].func,
       
 12669 
       
 12670   focused: _propTypes2['default'].bool,
       
 12671   onFocusChange: _propTypes2['default'].func,
       
 12672   onClose: _propTypes2['default'].func,
       
 12673 
       
 12674   keepOpenOnDateSelect: _propTypes2['default'].bool,
       
 12675   isOutsideRange: _propTypes2['default'].func,
       
 12676   isDayBlocked: _propTypes2['default'].func,
       
 12677   isDayHighlighted: _propTypes2['default'].func,
       
 12678 
       
 12679   // DayPicker props
       
 12680   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 12681   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 12682   enableOutsideDays: _propTypes2['default'].bool,
       
 12683   numberOfMonths: _propTypes2['default'].number,
       
 12684   orientation: _ScrollableOrientationShape2['default'],
       
 12685   withPortal: _propTypes2['default'].bool,
       
 12686   initialVisibleMonth: _propTypes2['default'].func,
       
 12687   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 12688   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 12689   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 12690   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
 12691   noBorder: _propTypes2['default'].bool,
       
 12692   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 12693   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
 12694   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 12695 
       
 12696   navPrev: _propTypes2['default'].node,
       
 12697   navNext: _propTypes2['default'].node,
       
 12698 
       
 12699   onPrevMonthClick: _propTypes2['default'].func,
       
 12700   onNextMonthClick: _propTypes2['default'].func,
       
 12701   onOutsideClick: _propTypes2['default'].func,
       
 12702   renderCalendarDay: _propTypes2['default'].func,
       
 12703   renderDayContents: _propTypes2['default'].func,
       
 12704   renderCalendarInfo: _propTypes2['default'].func,
       
 12705   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
 12706 
       
 12707   // accessibility
       
 12708   onBlur: _propTypes2['default'].func,
       
 12709   isFocused: _propTypes2['default'].bool,
       
 12710   showKeyboardShortcuts: _propTypes2['default'].bool,
       
 12711 
       
 12712   // i18n
       
 12713   monthFormat: _propTypes2['default'].string,
       
 12714   weekDayFormat: _propTypes2['default'].string,
       
 12715   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerPhrases)),
       
 12716   dayAriaLabelFormat: _propTypes2['default'].string,
       
 12717 
       
 12718   isRTL: _propTypes2['default'].bool
       
 12719 });
       
 12720 
       
 12721 var defaultProps = {
       
 12722   date: undefined, // TODO: use null
       
 12723   onDateChange: function () {
       
 12724     function onDateChange() {}
       
 12725 
       
 12726     return onDateChange;
       
 12727   }(),
       
 12728 
       
 12729 
       
 12730   focused: false,
       
 12731   onFocusChange: function () {
       
 12732     function onFocusChange() {}
       
 12733 
       
 12734     return onFocusChange;
       
 12735   }(),
       
 12736   onClose: function () {
       
 12737     function onClose() {}
       
 12738 
       
 12739     return onClose;
       
 12740   }(),
       
 12741 
       
 12742 
       
 12743   keepOpenOnDateSelect: false,
       
 12744   isOutsideRange: function () {
       
 12745     function isOutsideRange() {}
       
 12746 
       
 12747     return isOutsideRange;
       
 12748   }(),
       
 12749   isDayBlocked: function () {
       
 12750     function isDayBlocked() {}
       
 12751 
       
 12752     return isDayBlocked;
       
 12753   }(),
       
 12754   isDayHighlighted: function () {
       
 12755     function isDayHighlighted() {}
       
 12756 
       
 12757     return isDayHighlighted;
       
 12758   }(),
       
 12759 
       
 12760 
       
 12761   // DayPicker props
       
 12762   renderMonthText: null,
       
 12763   enableOutsideDays: false,
       
 12764   numberOfMonths: 1,
       
 12765   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 12766   withPortal: false,
       
 12767   hideKeyboardShortcutsPanel: false,
       
 12768   initialVisibleMonth: null,
       
 12769   firstDayOfWeek: null,
       
 12770   daySize: _constants.DAY_SIZE,
       
 12771   verticalHeight: null,
       
 12772   noBorder: false,
       
 12773   verticalBorderSpacing: undefined,
       
 12774   transitionDuration: undefined,
       
 12775   horizontalMonthPadding: 13,
       
 12776 
       
 12777   navPrev: null,
       
 12778   navNext: null,
       
 12779 
       
 12780   onPrevMonthClick: function () {
       
 12781     function onPrevMonthClick() {}
       
 12782 
       
 12783     return onPrevMonthClick;
       
 12784   }(),
       
 12785   onNextMonthClick: function () {
       
 12786     function onNextMonthClick() {}
       
 12787 
       
 12788     return onNextMonthClick;
       
 12789   }(),
       
 12790   onOutsideClick: function () {
       
 12791     function onOutsideClick() {}
       
 12792 
       
 12793     return onOutsideClick;
       
 12794   }(),
       
 12795 
       
 12796 
       
 12797   renderCalendarDay: undefined,
       
 12798   renderDayContents: null,
       
 12799   renderCalendarInfo: null,
       
 12800   renderMonthElement: null,
       
 12801   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
       
 12802 
       
 12803   // accessibility
       
 12804   onBlur: function () {
       
 12805     function onBlur() {}
       
 12806 
       
 12807     return onBlur;
       
 12808   }(),
       
 12809 
       
 12810   isFocused: false,
       
 12811   showKeyboardShortcuts: false,
       
 12812 
       
 12813   // i18n
       
 12814   monthFormat: 'MMMM YYYY',
       
 12815   weekDayFormat: 'dd',
       
 12816   phrases: _defaultPhrases.DayPickerPhrases,
       
 12817   dayAriaLabelFormat: undefined,
       
 12818 
       
 12819   isRTL: false
       
 12820 };
       
 12821 
       
 12822 var DayPickerSingleDateController = function (_React$Component) {
       
 12823   _inherits(DayPickerSingleDateController, _React$Component);
       
 12824 
       
 12825   function DayPickerSingleDateController(props) {
       
 12826     _classCallCheck(this, DayPickerSingleDateController);
       
 12827 
       
 12828     var _this = _possibleConstructorReturn(this, (DayPickerSingleDateController.__proto__ || Object.getPrototypeOf(DayPickerSingleDateController)).call(this, props));
       
 12829 
       
 12830     _this.isTouchDevice = false;
       
 12831     _this.today = (0, _moment2['default'])();
       
 12832 
       
 12833     _this.modifiers = {
       
 12834       today: function () {
       
 12835         function today(day) {
       
 12836           return _this.isToday(day);
       
 12837         }
       
 12838 
       
 12839         return today;
       
 12840       }(),
       
 12841       blocked: function () {
       
 12842         function blocked(day) {
       
 12843           return _this.isBlocked(day);
       
 12844         }
       
 12845 
       
 12846         return blocked;
       
 12847       }(),
       
 12848       'blocked-calendar': function () {
       
 12849         function blockedCalendar(day) {
       
 12850           return props.isDayBlocked(day);
       
 12851         }
       
 12852 
       
 12853         return blockedCalendar;
       
 12854       }(),
       
 12855       'blocked-out-of-range': function () {
       
 12856         function blockedOutOfRange(day) {
       
 12857           return props.isOutsideRange(day);
       
 12858         }
       
 12859 
       
 12860         return blockedOutOfRange;
       
 12861       }(),
       
 12862       'highlighted-calendar': function () {
       
 12863         function highlightedCalendar(day) {
       
 12864           return props.isDayHighlighted(day);
       
 12865         }
       
 12866 
       
 12867         return highlightedCalendar;
       
 12868       }(),
       
 12869       valid: function () {
       
 12870         function valid(day) {
       
 12871           return !_this.isBlocked(day);
       
 12872         }
       
 12873 
       
 12874         return valid;
       
 12875       }(),
       
 12876       hovered: function () {
       
 12877         function hovered(day) {
       
 12878           return _this.isHovered(day);
       
 12879         }
       
 12880 
       
 12881         return hovered;
       
 12882       }(),
       
 12883       selected: function () {
       
 12884         function selected(day) {
       
 12885           return _this.isSelected(day);
       
 12886         }
       
 12887 
       
 12888         return selected;
       
 12889       }(),
       
 12890       'first-day-of-week': function () {
       
 12891         function firstDayOfWeek(day) {
       
 12892           return _this.isFirstDayOfWeek(day);
       
 12893         }
       
 12894 
       
 12895         return firstDayOfWeek;
       
 12896       }(),
       
 12897       'last-day-of-week': function () {
       
 12898         function lastDayOfWeek(day) {
       
 12899           return _this.isLastDayOfWeek(day);
       
 12900         }
       
 12901 
       
 12902         return lastDayOfWeek;
       
 12903       }()
       
 12904     };
       
 12905 
       
 12906     var _this$getStateForNewM = _this.getStateForNewMonth(props),
       
 12907         currentMonth = _this$getStateForNewM.currentMonth,
       
 12908         visibleDays = _this$getStateForNewM.visibleDays;
       
 12909 
       
 12910     _this.state = {
       
 12911       hoverDate: null,
       
 12912       currentMonth: currentMonth,
       
 12913       visibleDays: visibleDays
       
 12914     };
       
 12915 
       
 12916     _this.onDayMouseEnter = _this.onDayMouseEnter.bind(_this);
       
 12917     _this.onDayMouseLeave = _this.onDayMouseLeave.bind(_this);
       
 12918     _this.onDayClick = _this.onDayClick.bind(_this);
       
 12919 
       
 12920     _this.onPrevMonthClick = _this.onPrevMonthClick.bind(_this);
       
 12921     _this.onNextMonthClick = _this.onNextMonthClick.bind(_this);
       
 12922     _this.onMonthChange = _this.onMonthChange.bind(_this);
       
 12923     _this.onYearChange = _this.onYearChange.bind(_this);
       
 12924 
       
 12925     _this.getFirstFocusableDay = _this.getFirstFocusableDay.bind(_this);
       
 12926     return _this;
       
 12927   }
       
 12928 
       
 12929   _createClass(DayPickerSingleDateController, [{
       
 12930     key: 'componentDidMount',
       
 12931     value: function () {
       
 12932       function componentDidMount() {
       
 12933         this.isTouchDevice = (0, _isTouchDevice2['default'])();
       
 12934       }
       
 12935 
       
 12936       return componentDidMount;
       
 12937     }()
       
 12938   }, {
       
 12939     key: 'componentWillReceiveProps',
       
 12940     value: function () {
       
 12941       function componentWillReceiveProps(nextProps) {
       
 12942         var _this2 = this;
       
 12943 
       
 12944         var date = nextProps.date,
       
 12945             focused = nextProps.focused,
       
 12946             isOutsideRange = nextProps.isOutsideRange,
       
 12947             isDayBlocked = nextProps.isDayBlocked,
       
 12948             isDayHighlighted = nextProps.isDayHighlighted,
       
 12949             initialVisibleMonth = nextProps.initialVisibleMonth,
       
 12950             numberOfMonths = nextProps.numberOfMonths,
       
 12951             enableOutsideDays = nextProps.enableOutsideDays;
       
 12952         var _props = this.props,
       
 12953             prevIsOutsideRange = _props.isOutsideRange,
       
 12954             prevIsDayBlocked = _props.isDayBlocked,
       
 12955             prevIsDayHighlighted = _props.isDayHighlighted,
       
 12956             prevNumberOfMonths = _props.numberOfMonths,
       
 12957             prevEnableOutsideDays = _props.enableOutsideDays,
       
 12958             prevInitialVisibleMonth = _props.initialVisibleMonth,
       
 12959             prevFocused = _props.focused,
       
 12960             prevDate = _props.date;
       
 12961         var visibleDays = this.state.visibleDays;
       
 12962 
       
 12963 
       
 12964         var recomputeOutsideRange = false;
       
 12965         var recomputeDayBlocked = false;
       
 12966         var recomputeDayHighlighted = false;
       
 12967 
       
 12968         if (isOutsideRange !== prevIsOutsideRange) {
       
 12969           this.modifiers['blocked-out-of-range'] = function (day) {
       
 12970             return isOutsideRange(day);
       
 12971           };
       
 12972           recomputeOutsideRange = true;
       
 12973         }
       
 12974 
       
 12975         if (isDayBlocked !== prevIsDayBlocked) {
       
 12976           this.modifiers['blocked-calendar'] = function (day) {
       
 12977             return isDayBlocked(day);
       
 12978           };
       
 12979           recomputeDayBlocked = true;
       
 12980         }
       
 12981 
       
 12982         if (isDayHighlighted !== prevIsDayHighlighted) {
       
 12983           this.modifiers['highlighted-calendar'] = function (day) {
       
 12984             return isDayHighlighted(day);
       
 12985           };
       
 12986           recomputeDayHighlighted = true;
       
 12987         }
       
 12988 
       
 12989         var recomputePropModifiers = recomputeOutsideRange || recomputeDayBlocked || recomputeDayHighlighted;
       
 12990 
       
 12991         if (numberOfMonths !== prevNumberOfMonths || enableOutsideDays !== prevEnableOutsideDays || initialVisibleMonth !== prevInitialVisibleMonth && !prevFocused && focused) {
       
 12992           var newMonthState = this.getStateForNewMonth(nextProps);
       
 12993           var currentMonth = newMonthState.currentMonth;
       
 12994           visibleDays = newMonthState.visibleDays;
       
 12995 
       
 12996           this.setState({
       
 12997             currentMonth: currentMonth,
       
 12998             visibleDays: visibleDays
       
 12999           });
       
 13000         }
       
 13001 
       
 13002         var didDateChange = date !== prevDate;
       
 13003         var didFocusChange = focused !== prevFocused;
       
 13004 
       
 13005         var modifiers = {};
       
 13006 
       
 13007         if (didDateChange) {
       
 13008           modifiers = this.deleteModifier(modifiers, prevDate, 'selected');
       
 13009           modifiers = this.addModifier(modifiers, date, 'selected');
       
 13010         }
       
 13011 
       
 13012         if (didFocusChange || recomputePropModifiers) {
       
 13013           (0, _object4['default'])(visibleDays).forEach(function (days) {
       
 13014             Object.keys(days).forEach(function (day) {
       
 13015               var momentObj = (0, _moment2['default'])(day);
       
 13016               if (_this2.isBlocked(momentObj)) {
       
 13017                 modifiers = _this2.addModifier(modifiers, momentObj, 'blocked');
       
 13018               } else {
       
 13019                 modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked');
       
 13020               }
       
 13021 
       
 13022               if (didFocusChange || recomputeOutsideRange) {
       
 13023                 if (isOutsideRange(momentObj)) {
       
 13024                   modifiers = _this2.addModifier(modifiers, momentObj, 'blocked-out-of-range');
       
 13025                 } else {
       
 13026                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked-out-of-range');
       
 13027                 }
       
 13028               }
       
 13029 
       
 13030               if (didFocusChange || recomputeDayBlocked) {
       
 13031                 if (isDayBlocked(momentObj)) {
       
 13032                   modifiers = _this2.addModifier(modifiers, momentObj, 'blocked-calendar');
       
 13033                 } else {
       
 13034                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked-calendar');
       
 13035                 }
       
 13036               }
       
 13037 
       
 13038               if (didFocusChange || recomputeDayHighlighted) {
       
 13039                 if (isDayHighlighted(momentObj)) {
       
 13040                   modifiers = _this2.addModifier(modifiers, momentObj, 'highlighted-calendar');
       
 13041                 } else {
       
 13042                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'highlighted-calendar');
       
 13043                 }
       
 13044               }
       
 13045             });
       
 13046           });
       
 13047         }
       
 13048 
       
 13049         var today = (0, _moment2['default'])();
       
 13050         if (!(0, _isSameDay2['default'])(this.today, today)) {
       
 13051           modifiers = this.deleteModifier(modifiers, this.today, 'today');
       
 13052           modifiers = this.addModifier(modifiers, today, 'today');
       
 13053           this.today = today;
       
 13054         }
       
 13055 
       
 13056         if (Object.keys(modifiers).length > 0) {
       
 13057           this.setState({
       
 13058             visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 13059           });
       
 13060         }
       
 13061       }
       
 13062 
       
 13063       return componentWillReceiveProps;
       
 13064     }()
       
 13065   }, {
       
 13066     key: 'componentWillUpdate',
       
 13067     value: function () {
       
 13068       function componentWillUpdate() {
       
 13069         this.today = (0, _moment2['default'])();
       
 13070       }
       
 13071 
       
 13072       return componentWillUpdate;
       
 13073     }()
       
 13074   }, {
       
 13075     key: 'onDayClick',
       
 13076     value: function () {
       
 13077       function onDayClick(day, e) {
       
 13078         if (e) e.preventDefault();
       
 13079         if (this.isBlocked(day)) return;
       
 13080         var _props2 = this.props,
       
 13081             onDateChange = _props2.onDateChange,
       
 13082             keepOpenOnDateSelect = _props2.keepOpenOnDateSelect,
       
 13083             onFocusChange = _props2.onFocusChange,
       
 13084             onClose = _props2.onClose;
       
 13085 
       
 13086 
       
 13087         onDateChange(day);
       
 13088         if (!keepOpenOnDateSelect) {
       
 13089           onFocusChange({ focused: false });
       
 13090           onClose({ date: day });
       
 13091         }
       
 13092       }
       
 13093 
       
 13094       return onDayClick;
       
 13095     }()
       
 13096   }, {
       
 13097     key: 'onDayMouseEnter',
       
 13098     value: function () {
       
 13099       function onDayMouseEnter(day) {
       
 13100         if (this.isTouchDevice) return;
       
 13101         var _state = this.state,
       
 13102             hoverDate = _state.hoverDate,
       
 13103             visibleDays = _state.visibleDays;
       
 13104 
       
 13105 
       
 13106         var modifiers = this.deleteModifier({}, hoverDate, 'hovered');
       
 13107         modifiers = this.addModifier(modifiers, day, 'hovered');
       
 13108 
       
 13109         this.setState({
       
 13110           hoverDate: day,
       
 13111           visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 13112         });
       
 13113       }
       
 13114 
       
 13115       return onDayMouseEnter;
       
 13116     }()
       
 13117   }, {
       
 13118     key: 'onDayMouseLeave',
       
 13119     value: function () {
       
 13120       function onDayMouseLeave() {
       
 13121         var _state2 = this.state,
       
 13122             hoverDate = _state2.hoverDate,
       
 13123             visibleDays = _state2.visibleDays;
       
 13124 
       
 13125         if (this.isTouchDevice || !hoverDate) return;
       
 13126 
       
 13127         var modifiers = this.deleteModifier({}, hoverDate, 'hovered');
       
 13128 
       
 13129         this.setState({
       
 13130           hoverDate: null,
       
 13131           visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 13132         });
       
 13133       }
       
 13134 
       
 13135       return onDayMouseLeave;
       
 13136     }()
       
 13137   }, {
       
 13138     key: 'onPrevMonthClick',
       
 13139     value: function () {
       
 13140       function onPrevMonthClick() {
       
 13141         var _props3 = this.props,
       
 13142             onPrevMonthClick = _props3.onPrevMonthClick,
       
 13143             numberOfMonths = _props3.numberOfMonths,
       
 13144             enableOutsideDays = _props3.enableOutsideDays;
       
 13145         var _state3 = this.state,
       
 13146             currentMonth = _state3.currentMonth,
       
 13147             visibleDays = _state3.visibleDays;
       
 13148 
       
 13149 
       
 13150         var newVisibleDays = {};
       
 13151         Object.keys(visibleDays).sort().slice(0, numberOfMonths + 1).forEach(function (month) {
       
 13152           newVisibleDays[month] = visibleDays[month];
       
 13153         });
       
 13154 
       
 13155         var prevMonth = currentMonth.clone().subtract(1, 'month');
       
 13156         var prevMonthVisibleDays = (0, _getVisibleDays2['default'])(prevMonth, 1, enableOutsideDays);
       
 13157 
       
 13158         this.setState({
       
 13159           currentMonth: prevMonth,
       
 13160           visibleDays: (0, _object2['default'])({}, newVisibleDays, this.getModifiers(prevMonthVisibleDays))
       
 13161         }, function () {
       
 13162           onPrevMonthClick(prevMonth.clone());
       
 13163         });
       
 13164       }
       
 13165 
       
 13166       return onPrevMonthClick;
       
 13167     }()
       
 13168   }, {
       
 13169     key: 'onNextMonthClick',
       
 13170     value: function () {
       
 13171       function onNextMonthClick() {
       
 13172         var _props4 = this.props,
       
 13173             onNextMonthClick = _props4.onNextMonthClick,
       
 13174             numberOfMonths = _props4.numberOfMonths,
       
 13175             enableOutsideDays = _props4.enableOutsideDays;
       
 13176         var _state4 = this.state,
       
 13177             currentMonth = _state4.currentMonth,
       
 13178             visibleDays = _state4.visibleDays;
       
 13179 
       
 13180 
       
 13181         var newVisibleDays = {};
       
 13182         Object.keys(visibleDays).sort().slice(1).forEach(function (month) {
       
 13183           newVisibleDays[month] = visibleDays[month];
       
 13184         });
       
 13185 
       
 13186         var nextMonth = currentMonth.clone().add(numberOfMonths, 'month');
       
 13187         var nextMonthVisibleDays = (0, _getVisibleDays2['default'])(nextMonth, 1, enableOutsideDays);
       
 13188 
       
 13189         var newCurrentMonth = currentMonth.clone().add(1, 'month');
       
 13190         this.setState({
       
 13191           currentMonth: newCurrentMonth,
       
 13192           visibleDays: (0, _object2['default'])({}, newVisibleDays, this.getModifiers(nextMonthVisibleDays))
       
 13193         }, function () {
       
 13194           onNextMonthClick(newCurrentMonth.clone());
       
 13195         });
       
 13196       }
       
 13197 
       
 13198       return onNextMonthClick;
       
 13199     }()
       
 13200   }, {
       
 13201     key: 'onMonthChange',
       
 13202     value: function () {
       
 13203       function onMonthChange(newMonth) {
       
 13204         var _props5 = this.props,
       
 13205             numberOfMonths = _props5.numberOfMonths,
       
 13206             enableOutsideDays = _props5.enableOutsideDays,
       
 13207             orientation = _props5.orientation;
       
 13208 
       
 13209         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 13210         var newVisibleDays = (0, _getVisibleDays2['default'])(newMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths);
       
 13211 
       
 13212         this.setState({
       
 13213           currentMonth: newMonth.clone(),
       
 13214           visibleDays: this.getModifiers(newVisibleDays)
       
 13215         });
       
 13216       }
       
 13217 
       
 13218       return onMonthChange;
       
 13219     }()
       
 13220   }, {
       
 13221     key: 'onYearChange',
       
 13222     value: function () {
       
 13223       function onYearChange(newMonth) {
       
 13224         var _props6 = this.props,
       
 13225             numberOfMonths = _props6.numberOfMonths,
       
 13226             enableOutsideDays = _props6.enableOutsideDays,
       
 13227             orientation = _props6.orientation;
       
 13228 
       
 13229         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 13230         var newVisibleDays = (0, _getVisibleDays2['default'])(newMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths);
       
 13231 
       
 13232         this.setState({
       
 13233           currentMonth: newMonth.clone(),
       
 13234           visibleDays: this.getModifiers(newVisibleDays)
       
 13235         });
       
 13236       }
       
 13237 
       
 13238       return onYearChange;
       
 13239     }()
       
 13240   }, {
       
 13241     key: 'getFirstFocusableDay',
       
 13242     value: function () {
       
 13243       function getFirstFocusableDay(newMonth) {
       
 13244         var _this3 = this;
       
 13245 
       
 13246         var _props7 = this.props,
       
 13247             date = _props7.date,
       
 13248             numberOfMonths = _props7.numberOfMonths;
       
 13249 
       
 13250 
       
 13251         var focusedDate = newMonth.clone().startOf('month');
       
 13252         if (date) {
       
 13253           focusedDate = date.clone();
       
 13254         }
       
 13255 
       
 13256         if (this.isBlocked(focusedDate)) {
       
 13257           var days = [];
       
 13258           var lastVisibleDay = newMonth.clone().add(numberOfMonths - 1, 'months').endOf('month');
       
 13259           var currentDay = focusedDate.clone();
       
 13260           while (!(0, _isAfterDay2['default'])(currentDay, lastVisibleDay)) {
       
 13261             currentDay = currentDay.clone().add(1, 'day');
       
 13262             days.push(currentDay);
       
 13263           }
       
 13264 
       
 13265           var viableDays = days.filter(function (day) {
       
 13266             return !_this3.isBlocked(day) && (0, _isAfterDay2['default'])(day, focusedDate);
       
 13267           });
       
 13268           if (viableDays.length > 0) {
       
 13269             var _viableDays = _slicedToArray(viableDays, 1);
       
 13270 
       
 13271             focusedDate = _viableDays[0];
       
 13272           }
       
 13273         }
       
 13274 
       
 13275         return focusedDate;
       
 13276       }
       
 13277 
       
 13278       return getFirstFocusableDay;
       
 13279     }()
       
 13280   }, {
       
 13281     key: 'getModifiers',
       
 13282     value: function () {
       
 13283       function getModifiers(visibleDays) {
       
 13284         var _this4 = this;
       
 13285 
       
 13286         var modifiers = {};
       
 13287         Object.keys(visibleDays).forEach(function (month) {
       
 13288           modifiers[month] = {};
       
 13289           visibleDays[month].forEach(function (day) {
       
 13290             modifiers[month][(0, _toISODateString2['default'])(day)] = _this4.getModifiersForDay(day);
       
 13291           });
       
 13292         });
       
 13293 
       
 13294         return modifiers;
       
 13295       }
       
 13296 
       
 13297       return getModifiers;
       
 13298     }()
       
 13299   }, {
       
 13300     key: 'getModifiersForDay',
       
 13301     value: function () {
       
 13302       function getModifiersForDay(day) {
       
 13303         var _this5 = this;
       
 13304 
       
 13305         return new Set(Object.keys(this.modifiers).filter(function (modifier) {
       
 13306           return _this5.modifiers[modifier](day);
       
 13307         }));
       
 13308       }
       
 13309 
       
 13310       return getModifiersForDay;
       
 13311     }()
       
 13312   }, {
       
 13313     key: 'getStateForNewMonth',
       
 13314     value: function () {
       
 13315       function getStateForNewMonth(nextProps) {
       
 13316         var _this6 = this;
       
 13317 
       
 13318         var initialVisibleMonth = nextProps.initialVisibleMonth,
       
 13319             date = nextProps.date,
       
 13320             numberOfMonths = nextProps.numberOfMonths,
       
 13321             enableOutsideDays = nextProps.enableOutsideDays;
       
 13322 
       
 13323         var initialVisibleMonthThunk = initialVisibleMonth || (date ? function () {
       
 13324           return date;
       
 13325         } : function () {
       
 13326           return _this6.today;
       
 13327         });
       
 13328         var currentMonth = initialVisibleMonthThunk();
       
 13329         var visibleDays = this.getModifiers((0, _getVisibleDays2['default'])(currentMonth, numberOfMonths, enableOutsideDays));
       
 13330         return { currentMonth: currentMonth, visibleDays: visibleDays };
       
 13331       }
       
 13332 
       
 13333       return getStateForNewMonth;
       
 13334     }()
       
 13335   }, {
       
 13336     key: 'addModifier',
       
 13337     value: function () {
       
 13338       function addModifier(updatedDays, day, modifier) {
       
 13339         var _props8 = this.props,
       
 13340             numberOfVisibleMonths = _props8.numberOfMonths,
       
 13341             enableOutsideDays = _props8.enableOutsideDays,
       
 13342             orientation = _props8.orientation;
       
 13343         var _state5 = this.state,
       
 13344             firstVisibleMonth = _state5.currentMonth,
       
 13345             visibleDays = _state5.visibleDays;
       
 13346 
       
 13347 
       
 13348         var currentMonth = firstVisibleMonth;
       
 13349         var numberOfMonths = numberOfVisibleMonths;
       
 13350         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 13351           numberOfMonths = Object.keys(visibleDays).length;
       
 13352         } else {
       
 13353           currentMonth = currentMonth.clone().subtract(1, 'month');
       
 13354           numberOfMonths += 2;
       
 13355         }
       
 13356         if (!day || !(0, _isDayVisible2['default'])(day, currentMonth, numberOfMonths, enableOutsideDays)) {
       
 13357           return updatedDays;
       
 13358         }
       
 13359 
       
 13360         var iso = (0, _toISODateString2['default'])(day);
       
 13361 
       
 13362         var updatedDaysAfterAddition = (0, _object2['default'])({}, updatedDays);
       
 13363         if (enableOutsideDays) {
       
 13364           var monthsToUpdate = Object.keys(visibleDays).filter(function (monthKey) {
       
 13365             return Object.keys(visibleDays[monthKey]).indexOf(iso) > -1;
       
 13366           });
       
 13367 
       
 13368           updatedDaysAfterAddition = monthsToUpdate.reduce(function (days, monthIso) {
       
 13369             var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 13370             var modifiers = new Set(month[iso]);
       
 13371             modifiers.add(modifier);
       
 13372             return (0, _object2['default'])({}, days, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 13373           }, updatedDaysAfterAddition);
       
 13374         } else {
       
 13375           var monthIso = (0, _toISOMonthString2['default'])(day);
       
 13376           var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 13377 
       
 13378           var modifiers = new Set(month[iso]);
       
 13379           modifiers.add(modifier);
       
 13380           updatedDaysAfterAddition = (0, _object2['default'])({}, updatedDaysAfterAddition, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 13381         }
       
 13382 
       
 13383         return updatedDaysAfterAddition;
       
 13384       }
       
 13385 
       
 13386       return addModifier;
       
 13387     }()
       
 13388   }, {
       
 13389     key: 'deleteModifier',
       
 13390     value: function () {
       
 13391       function deleteModifier(updatedDays, day, modifier) {
       
 13392         var _props9 = this.props,
       
 13393             numberOfVisibleMonths = _props9.numberOfMonths,
       
 13394             enableOutsideDays = _props9.enableOutsideDays,
       
 13395             orientation = _props9.orientation;
       
 13396         var _state6 = this.state,
       
 13397             firstVisibleMonth = _state6.currentMonth,
       
 13398             visibleDays = _state6.visibleDays;
       
 13399 
       
 13400 
       
 13401         var currentMonth = firstVisibleMonth;
       
 13402         var numberOfMonths = numberOfVisibleMonths;
       
 13403         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 13404           numberOfMonths = Object.keys(visibleDays).length;
       
 13405         } else {
       
 13406           currentMonth = currentMonth.clone().subtract(1, 'month');
       
 13407           numberOfMonths += 2;
       
 13408         }
       
 13409         if (!day || !(0, _isDayVisible2['default'])(day, currentMonth, numberOfMonths, enableOutsideDays)) {
       
 13410           return updatedDays;
       
 13411         }
       
 13412 
       
 13413         var iso = (0, _toISODateString2['default'])(day);
       
 13414 
       
 13415         var updatedDaysAfterDeletion = (0, _object2['default'])({}, updatedDays);
       
 13416         if (enableOutsideDays) {
       
 13417           var monthsToUpdate = Object.keys(visibleDays).filter(function (monthKey) {
       
 13418             return Object.keys(visibleDays[monthKey]).indexOf(iso) > -1;
       
 13419           });
       
 13420 
       
 13421           updatedDaysAfterDeletion = monthsToUpdate.reduce(function (days, monthIso) {
       
 13422             var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 13423             var modifiers = new Set(month[iso]);
       
 13424             modifiers['delete'](modifier);
       
 13425             return (0, _object2['default'])({}, days, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 13426           }, updatedDaysAfterDeletion);
       
 13427         } else {
       
 13428           var monthIso = (0, _toISOMonthString2['default'])(day);
       
 13429           var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 13430 
       
 13431           var modifiers = new Set(month[iso]);
       
 13432           modifiers['delete'](modifier);
       
 13433           updatedDaysAfterDeletion = (0, _object2['default'])({}, updatedDaysAfterDeletion, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 13434         }
       
 13435 
       
 13436         return updatedDaysAfterDeletion;
       
 13437       }
       
 13438 
       
 13439       return deleteModifier;
       
 13440     }()
       
 13441   }, {
       
 13442     key: 'isBlocked',
       
 13443     value: function () {
       
 13444       function isBlocked(day) {
       
 13445         var _props10 = this.props,
       
 13446             isDayBlocked = _props10.isDayBlocked,
       
 13447             isOutsideRange = _props10.isOutsideRange;
       
 13448 
       
 13449         return isDayBlocked(day) || isOutsideRange(day);
       
 13450       }
       
 13451 
       
 13452       return isBlocked;
       
 13453     }()
       
 13454   }, {
       
 13455     key: 'isHovered',
       
 13456     value: function () {
       
 13457       function isHovered(day) {
       
 13458         var _ref = this.state || {},
       
 13459             hoverDate = _ref.hoverDate;
       
 13460 
       
 13461         return (0, _isSameDay2['default'])(day, hoverDate);
       
 13462       }
       
 13463 
       
 13464       return isHovered;
       
 13465     }()
       
 13466   }, {
       
 13467     key: 'isSelected',
       
 13468     value: function () {
       
 13469       function isSelected(day) {
       
 13470         var date = this.props.date;
       
 13471 
       
 13472         return (0, _isSameDay2['default'])(day, date);
       
 13473       }
       
 13474 
       
 13475       return isSelected;
       
 13476     }()
       
 13477   }, {
       
 13478     key: 'isToday',
       
 13479     value: function () {
       
 13480       function isToday(day) {
       
 13481         return (0, _isSameDay2['default'])(day, this.today);
       
 13482       }
       
 13483 
       
 13484       return isToday;
       
 13485     }()
       
 13486   }, {
       
 13487     key: 'isFirstDayOfWeek',
       
 13488     value: function () {
       
 13489       function isFirstDayOfWeek(day) {
       
 13490         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 13491 
       
 13492         return day.day() === (firstDayOfWeek || _moment2['default'].localeData().firstDayOfWeek());
       
 13493       }
       
 13494 
       
 13495       return isFirstDayOfWeek;
       
 13496     }()
       
 13497   }, {
       
 13498     key: 'isLastDayOfWeek',
       
 13499     value: function () {
       
 13500       function isLastDayOfWeek(day) {
       
 13501         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 13502 
       
 13503         return day.day() === ((firstDayOfWeek || _moment2['default'].localeData().firstDayOfWeek()) + 6) % 7;
       
 13504       }
       
 13505 
       
 13506       return isLastDayOfWeek;
       
 13507     }()
       
 13508   }, {
       
 13509     key: 'render',
       
 13510     value: function () {
       
 13511       function render() {
       
 13512         var _props11 = this.props,
       
 13513             numberOfMonths = _props11.numberOfMonths,
       
 13514             orientation = _props11.orientation,
       
 13515             monthFormat = _props11.monthFormat,
       
 13516             renderMonthText = _props11.renderMonthText,
       
 13517             navPrev = _props11.navPrev,
       
 13518             navNext = _props11.navNext,
       
 13519             onOutsideClick = _props11.onOutsideClick,
       
 13520             withPortal = _props11.withPortal,
       
 13521             focused = _props11.focused,
       
 13522             enableOutsideDays = _props11.enableOutsideDays,
       
 13523             hideKeyboardShortcutsPanel = _props11.hideKeyboardShortcutsPanel,
       
 13524             daySize = _props11.daySize,
       
 13525             firstDayOfWeek = _props11.firstDayOfWeek,
       
 13526             renderCalendarDay = _props11.renderCalendarDay,
       
 13527             renderDayContents = _props11.renderDayContents,
       
 13528             renderCalendarInfo = _props11.renderCalendarInfo,
       
 13529             renderMonthElement = _props11.renderMonthElement,
       
 13530             calendarInfoPosition = _props11.calendarInfoPosition,
       
 13531             isFocused = _props11.isFocused,
       
 13532             isRTL = _props11.isRTL,
       
 13533             phrases = _props11.phrases,
       
 13534             dayAriaLabelFormat = _props11.dayAriaLabelFormat,
       
 13535             onBlur = _props11.onBlur,
       
 13536             showKeyboardShortcuts = _props11.showKeyboardShortcuts,
       
 13537             weekDayFormat = _props11.weekDayFormat,
       
 13538             verticalHeight = _props11.verticalHeight,
       
 13539             noBorder = _props11.noBorder,
       
 13540             transitionDuration = _props11.transitionDuration,
       
 13541             verticalBorderSpacing = _props11.verticalBorderSpacing,
       
 13542             horizontalMonthPadding = _props11.horizontalMonthPadding;
       
 13543         var _state7 = this.state,
       
 13544             currentMonth = _state7.currentMonth,
       
 13545             visibleDays = _state7.visibleDays;
       
 13546 
       
 13547 
       
 13548         return _react2['default'].createElement(_DayPicker2['default'], {
       
 13549           orientation: orientation,
       
 13550           enableOutsideDays: enableOutsideDays,
       
 13551           modifiers: visibleDays,
       
 13552           numberOfMonths: numberOfMonths,
       
 13553           onDayClick: this.onDayClick,
       
 13554           onDayMouseEnter: this.onDayMouseEnter,
       
 13555           onDayMouseLeave: this.onDayMouseLeave,
       
 13556           onPrevMonthClick: this.onPrevMonthClick,
       
 13557           onNextMonthClick: this.onNextMonthClick,
       
 13558           onMonthChange: this.onMonthChange,
       
 13559           onYearChange: this.onYearChange,
       
 13560           monthFormat: monthFormat,
       
 13561           withPortal: withPortal,
       
 13562           hidden: !focused,
       
 13563           hideKeyboardShortcutsPanel: hideKeyboardShortcutsPanel,
       
 13564           initialVisibleMonth: function () {
       
 13565             function initialVisibleMonth() {
       
 13566               return currentMonth;
       
 13567             }
       
 13568 
       
 13569             return initialVisibleMonth;
       
 13570           }(),
       
 13571           firstDayOfWeek: firstDayOfWeek,
       
 13572           onOutsideClick: onOutsideClick,
       
 13573           navPrev: navPrev,
       
 13574           navNext: navNext,
       
 13575           renderMonthText: renderMonthText,
       
 13576           renderCalendarDay: renderCalendarDay,
       
 13577           renderDayContents: renderDayContents,
       
 13578           renderCalendarInfo: renderCalendarInfo,
       
 13579           renderMonthElement: renderMonthElement,
       
 13580           calendarInfoPosition: calendarInfoPosition,
       
 13581           isFocused: isFocused,
       
 13582           getFirstFocusableDay: this.getFirstFocusableDay,
       
 13583           onBlur: onBlur,
       
 13584           phrases: phrases,
       
 13585           daySize: daySize,
       
 13586           isRTL: isRTL,
       
 13587           showKeyboardShortcuts: showKeyboardShortcuts,
       
 13588           weekDayFormat: weekDayFormat,
       
 13589           dayAriaLabelFormat: dayAriaLabelFormat,
       
 13590           verticalHeight: verticalHeight,
       
 13591           noBorder: noBorder,
       
 13592           transitionDuration: transitionDuration,
       
 13593           verticalBorderSpacing: verticalBorderSpacing,
       
 13594           horizontalMonthPadding: horizontalMonthPadding
       
 13595         });
       
 13596       }
       
 13597 
       
 13598       return render;
       
 13599     }()
       
 13600   }]);
       
 13601 
       
 13602   return DayPickerSingleDateController;
       
 13603 }(_react2['default'].Component);
       
 13604 
       
 13605 exports['default'] = DayPickerSingleDateController;
       
 13606 
       
 13607 
       
 13608 DayPickerSingleDateController.propTypes = propTypes;
       
 13609 DayPickerSingleDateController.defaultProps = defaultProps;
       
 13610 
       
 13611 /***/ }),
       
 13612 /* 195 */
       
 13613 /***/ (function(module, exports, __webpack_require__) {
       
 13614 
       
 13615 "use strict";
       
 13616 
       
 13617 
       
 13618 Object.defineProperty(exports, "__esModule", {
       
 13619   value: true
       
 13620 });
       
 13621 
       
 13622 var _propTypes = __webpack_require__(31);
       
 13623 
       
 13624 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 13625 
       
 13626 var _reactMomentProptypes = __webpack_require__(64);
       
 13627 
       
 13628 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 13629 
       
 13630 var _airbnbPropTypes = __webpack_require__(43);
       
 13631 
       
 13632 var _defaultPhrases = __webpack_require__(47);
       
 13633 
       
 13634 var _getPhrasePropTypes = __webpack_require__(51);
       
 13635 
       
 13636 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 13637 
       
 13638 var _IconPositionShape = __webpack_require__(92);
       
 13639 
       
 13640 var _IconPositionShape2 = _interopRequireDefault(_IconPositionShape);
       
 13641 
       
 13642 var _OrientationShape = __webpack_require__(174);
       
 13643 
       
 13644 var _OrientationShape2 = _interopRequireDefault(_OrientationShape);
       
 13645 
       
 13646 var _AnchorDirectionShape = __webpack_require__(175);
       
 13647 
       
 13648 var _AnchorDirectionShape2 = _interopRequireDefault(_AnchorDirectionShape);
       
 13649 
       
 13650 var _OpenDirectionShape = __webpack_require__(83);
       
 13651 
       
 13652 var _OpenDirectionShape2 = _interopRequireDefault(_OpenDirectionShape);
       
 13653 
       
 13654 var _DayOfWeekShape = __webpack_require__(75);
       
 13655 
       
 13656 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 13657 
       
 13658 var _CalendarInfoPositionShape = __webpack_require__(93);
       
 13659 
       
 13660 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
 13661 
       
 13662 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 13663 
       
 13664 exports['default'] = {
       
 13665   // required props for a functional interactive SingleDatePicker
       
 13666   date: _reactMomentProptypes2['default'].momentObj,
       
 13667   onDateChange: _propTypes2['default'].func.isRequired,
       
 13668 
       
 13669   focused: _propTypes2['default'].bool,
       
 13670   onFocusChange: _propTypes2['default'].func.isRequired,
       
 13671 
       
 13672   // input related props
       
 13673   id: _propTypes2['default'].string.isRequired,
       
 13674   placeholder: _propTypes2['default'].string,
       
 13675   disabled: _propTypes2['default'].bool,
       
 13676   required: _propTypes2['default'].bool,
       
 13677   readOnly: _propTypes2['default'].bool,
       
 13678   screenReaderInputMessage: _propTypes2['default'].string,
       
 13679   showClearDate: _propTypes2['default'].bool,
       
 13680   customCloseIcon: _propTypes2['default'].node,
       
 13681   showDefaultInputIcon: _propTypes2['default'].bool,
       
 13682   inputIconPosition: _IconPositionShape2['default'],
       
 13683   customInputIcon: _propTypes2['default'].node,
       
 13684   noBorder: _propTypes2['default'].bool,
       
 13685   block: _propTypes2['default'].bool,
       
 13686   small: _propTypes2['default'].bool,
       
 13687   regular: _propTypes2['default'].bool,
       
 13688   verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 13689   keepFocusOnInput: _propTypes2['default'].bool,
       
 13690 
       
 13691   // calendar presentation and interaction related props
       
 13692   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 13693   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 13694   orientation: _OrientationShape2['default'],
       
 13695   anchorDirection: _AnchorDirectionShape2['default'],
       
 13696   openDirection: _OpenDirectionShape2['default'],
       
 13697   horizontalMargin: _propTypes2['default'].number,
       
 13698   withPortal: _propTypes2['default'].bool,
       
 13699   withFullScreenPortal: _propTypes2['default'].bool,
       
 13700   appendToBody: _propTypes2['default'].bool,
       
 13701   disableScroll: _propTypes2['default'].bool,
       
 13702   initialVisibleMonth: _propTypes2['default'].func,
       
 13703   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 13704   numberOfMonths: _propTypes2['default'].number,
       
 13705   keepOpenOnDateSelect: _propTypes2['default'].bool,
       
 13706   reopenPickerOnClearDate: _propTypes2['default'].bool,
       
 13707   renderCalendarInfo: _propTypes2['default'].func,
       
 13708   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
 13709   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 13710   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 13711   isRTL: _propTypes2['default'].bool,
       
 13712   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
 13713   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
 13714   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 13715 
       
 13716   // navigation related props
       
 13717   navPrev: _propTypes2['default'].node,
       
 13718   navNext: _propTypes2['default'].node,
       
 13719 
       
 13720   onPrevMonthClick: _propTypes2['default'].func,
       
 13721   onNextMonthClick: _propTypes2['default'].func,
       
 13722   onClose: _propTypes2['default'].func,
       
 13723 
       
 13724   // day presentation and interaction related props
       
 13725   renderCalendarDay: _propTypes2['default'].func,
       
 13726   renderDayContents: _propTypes2['default'].func,
       
 13727   enableOutsideDays: _propTypes2['default'].bool,
       
 13728   isDayBlocked: _propTypes2['default'].func,
       
 13729   isOutsideRange: _propTypes2['default'].func,
       
 13730   isDayHighlighted: _propTypes2['default'].func,
       
 13731 
       
 13732   // internationalization props
       
 13733   displayFormat: _propTypes2['default'].oneOfType([_propTypes2['default'].string, _propTypes2['default'].func]),
       
 13734   monthFormat: _propTypes2['default'].string,
       
 13735   weekDayFormat: _propTypes2['default'].string,
       
 13736   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.SingleDatePickerPhrases)),
       
 13737   dayAriaLabelFormat: _propTypes2['default'].string
       
 13738 };
       
 13739 
       
 13740 /***/ }),
       
 13741 /* 196 */
       
 13742 /***/ (function(module, exports, __webpack_require__) {
       
 13743 
       
 13744 "use strict";
       
 13745 
       
 13746 
       
 13747 Object.defineProperty(exports, "__esModule", {
       
 13748   value: true
       
 13749 });
       
 13750 
       
 13751 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 13752 
       
 13753 var _object = __webpack_require__(46);
       
 13754 
       
 13755 var _object2 = _interopRequireDefault(_object);
       
 13756 
       
 13757 var _react = __webpack_require__(27);
       
 13758 
       
 13759 var _react2 = _interopRequireDefault(_react);
       
 13760 
       
 13761 var _propTypes = __webpack_require__(31);
       
 13762 
       
 13763 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 13764 
       
 13765 var _airbnbPropTypes = __webpack_require__(43);
       
 13766 
       
 13767 var _reactWithStyles = __webpack_require__(56);
       
 13768 
       
 13769 var _defaultPhrases = __webpack_require__(47);
       
 13770 
       
 13771 var _getPhrasePropTypes = __webpack_require__(51);
       
 13772 
       
 13773 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 13774 
       
 13775 var _DateInput = __webpack_require__(181);
       
 13776 
       
 13777 var _DateInput2 = _interopRequireDefault(_DateInput);
       
 13778 
       
 13779 var _IconPositionShape = __webpack_require__(92);
       
 13780 
       
 13781 var _IconPositionShape2 = _interopRequireDefault(_IconPositionShape);
       
 13782 
       
 13783 var _CloseButton = __webpack_require__(96);
       
 13784 
       
 13785 var _CloseButton2 = _interopRequireDefault(_CloseButton);
       
 13786 
       
 13787 var _CalendarIcon = __webpack_require__(187);
       
 13788 
       
 13789 var _CalendarIcon2 = _interopRequireDefault(_CalendarIcon);
       
 13790 
       
 13791 var _OpenDirectionShape = __webpack_require__(83);
       
 13792 
       
 13793 var _OpenDirectionShape2 = _interopRequireDefault(_OpenDirectionShape);
       
 13794 
       
 13795 var _constants = __webpack_require__(39);
       
 13796 
       
 13797 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 13798 
       
 13799 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 13800   id: _propTypes2['default'].string.isRequired,
       
 13801   placeholder: _propTypes2['default'].string, // also used as label
       
 13802   displayValue: _propTypes2['default'].string,
       
 13803   screenReaderMessage: _propTypes2['default'].string,
       
 13804   focused: _propTypes2['default'].bool,
       
 13805   isFocused: _propTypes2['default'].bool, // describes actual DOM focus
       
 13806   disabled: _propTypes2['default'].bool,
       
 13807   required: _propTypes2['default'].bool,
       
 13808   readOnly: _propTypes2['default'].bool,
       
 13809   openDirection: _OpenDirectionShape2['default'],
       
 13810   showCaret: _propTypes2['default'].bool,
       
 13811   showClearDate: _propTypes2['default'].bool,
       
 13812   customCloseIcon: _propTypes2['default'].node,
       
 13813   showDefaultInputIcon: _propTypes2['default'].bool,
       
 13814   inputIconPosition: _IconPositionShape2['default'],
       
 13815   customInputIcon: _propTypes2['default'].node,
       
 13816   isRTL: _propTypes2['default'].bool,
       
 13817   noBorder: _propTypes2['default'].bool,
       
 13818   block: _propTypes2['default'].bool,
       
 13819   small: _propTypes2['default'].bool,
       
 13820   regular: _propTypes2['default'].bool,
       
 13821   verticalSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 13822 
       
 13823   onChange: _propTypes2['default'].func,
       
 13824   onClearDate: _propTypes2['default'].func,
       
 13825   onFocus: _propTypes2['default'].func,
       
 13826   onKeyDownShiftTab: _propTypes2['default'].func,
       
 13827   onKeyDownTab: _propTypes2['default'].func,
       
 13828   onKeyDownArrowDown: _propTypes2['default'].func,
       
 13829   onKeyDownQuestionMark: _propTypes2['default'].func,
       
 13830 
       
 13831   // i18n
       
 13832   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.SingleDatePickerInputPhrases))
       
 13833 }));
       
 13834 
       
 13835 var defaultProps = {
       
 13836   placeholder: 'Select Date',
       
 13837   displayValue: '',
       
 13838   screenReaderMessage: '',
       
 13839   focused: false,
       
 13840   isFocused: false,
       
 13841   disabled: false,
       
 13842   required: false,
       
 13843   readOnly: false,
       
 13844   openDirection: _constants.OPEN_DOWN,
       
 13845   showCaret: false,
       
 13846   showClearDate: false,
       
 13847   showDefaultInputIcon: false,
       
 13848   inputIconPosition: _constants.ICON_BEFORE_POSITION,
       
 13849   customCloseIcon: null,
       
 13850   customInputIcon: null,
       
 13851   isRTL: false,
       
 13852   noBorder: false,
       
 13853   block: false,
       
 13854   small: false,
       
 13855   regular: false,
       
 13856   verticalSpacing: undefined,
       
 13857 
       
 13858   onChange: function () {
       
 13859     function onChange() {}
       
 13860 
       
 13861     return onChange;
       
 13862   }(),
       
 13863   onClearDate: function () {
       
 13864     function onClearDate() {}
       
 13865 
       
 13866     return onClearDate;
       
 13867   }(),
       
 13868   onFocus: function () {
       
 13869     function onFocus() {}
       
 13870 
       
 13871     return onFocus;
       
 13872   }(),
       
 13873   onKeyDownShiftTab: function () {
       
 13874     function onKeyDownShiftTab() {}
       
 13875 
       
 13876     return onKeyDownShiftTab;
       
 13877   }(),
       
 13878   onKeyDownTab: function () {
       
 13879     function onKeyDownTab() {}
       
 13880 
       
 13881     return onKeyDownTab;
       
 13882   }(),
       
 13883   onKeyDownArrowDown: function () {
       
 13884     function onKeyDownArrowDown() {}
       
 13885 
       
 13886     return onKeyDownArrowDown;
       
 13887   }(),
       
 13888   onKeyDownQuestionMark: function () {
       
 13889     function onKeyDownQuestionMark() {}
       
 13890 
       
 13891     return onKeyDownQuestionMark;
       
 13892   }(),
       
 13893 
       
 13894 
       
 13895   // i18n
       
 13896   phrases: _defaultPhrases.SingleDatePickerInputPhrases
       
 13897 };
       
 13898 
       
 13899 /* eslint react/no-this-in-sfc: 1 */
       
 13900 
       
 13901 function SingleDatePickerInput(_ref) {
       
 13902   var id = _ref.id,
       
 13903       placeholder = _ref.placeholder,
       
 13904       displayValue = _ref.displayValue,
       
 13905       focused = _ref.focused,
       
 13906       isFocused = _ref.isFocused,
       
 13907       disabled = _ref.disabled,
       
 13908       required = _ref.required,
       
 13909       readOnly = _ref.readOnly,
       
 13910       showCaret = _ref.showCaret,
       
 13911       showClearDate = _ref.showClearDate,
       
 13912       showDefaultInputIcon = _ref.showDefaultInputIcon,
       
 13913       inputIconPosition = _ref.inputIconPosition,
       
 13914       phrases = _ref.phrases,
       
 13915       onClearDate = _ref.onClearDate,
       
 13916       onChange = _ref.onChange,
       
 13917       onFocus = _ref.onFocus,
       
 13918       onKeyDownShiftTab = _ref.onKeyDownShiftTab,
       
 13919       onKeyDownTab = _ref.onKeyDownTab,
       
 13920       onKeyDownArrowDown = _ref.onKeyDownArrowDown,
       
 13921       onKeyDownQuestionMark = _ref.onKeyDownQuestionMark,
       
 13922       screenReaderMessage = _ref.screenReaderMessage,
       
 13923       customCloseIcon = _ref.customCloseIcon,
       
 13924       customInputIcon = _ref.customInputIcon,
       
 13925       openDirection = _ref.openDirection,
       
 13926       isRTL = _ref.isRTL,
       
 13927       noBorder = _ref.noBorder,
       
 13928       block = _ref.block,
       
 13929       small = _ref.small,
       
 13930       regular = _ref.regular,
       
 13931       verticalSpacing = _ref.verticalSpacing,
       
 13932       styles = _ref.styles;
       
 13933 
       
 13934   var calendarIcon = customInputIcon || _react2['default'].createElement(_CalendarIcon2['default'], (0, _reactWithStyles.css)(styles.SingleDatePickerInput_calendarIcon_svg));
       
 13935   var closeIcon = customCloseIcon || _react2['default'].createElement(_CloseButton2['default'], (0, _reactWithStyles.css)(styles.SingleDatePickerInput_clearDate_svg, small && styles.SingleDatePickerInput_clearDate_svg__small));
       
 13936 
       
 13937   var screenReaderText = screenReaderMessage || phrases.keyboardNavigationInstructions;
       
 13938   var inputIcon = (showDefaultInputIcon || customInputIcon !== null) && _react2['default'].createElement(
       
 13939     'button',
       
 13940     _extends({}, (0, _reactWithStyles.css)(styles.SingleDatePickerInput_calendarIcon), {
       
 13941       type: 'button',
       
 13942       disabled: disabled,
       
 13943       'aria-label': phrases.focusStartDate,
       
 13944       onClick: onFocus
       
 13945     }),
       
 13946     calendarIcon
       
 13947   );
       
 13948 
       
 13949   return _react2['default'].createElement(
       
 13950     'div',
       
 13951     (0, _reactWithStyles.css)(styles.SingleDatePickerInput, disabled && styles.SingleDatePickerInput__disabled, isRTL && styles.SingleDatePickerInput__rtl, !noBorder && styles.SingleDatePickerInput__withBorder, block && styles.SingleDatePickerInput__block, showClearDate && styles.SingleDatePickerInput__showClearDate),
       
 13952     inputIconPosition === _constants.ICON_BEFORE_POSITION && inputIcon,
       
 13953     _react2['default'].createElement(_DateInput2['default'], {
       
 13954       id: id,
       
 13955       placeholder: placeholder // also used as label
       
 13956       , displayValue: displayValue,
       
 13957       screenReaderMessage: screenReaderText,
       
 13958       focused: focused,
       
 13959       isFocused: isFocused,
       
 13960       disabled: disabled,
       
 13961       required: required,
       
 13962       readOnly: readOnly,
       
 13963       showCaret: showCaret,
       
 13964       onChange: onChange,
       
 13965       onFocus: onFocus,
       
 13966       onKeyDownShiftTab: onKeyDownShiftTab,
       
 13967       onKeyDownTab: onKeyDownTab,
       
 13968       onKeyDownArrowDown: onKeyDownArrowDown,
       
 13969       onKeyDownQuestionMark: onKeyDownQuestionMark,
       
 13970       openDirection: openDirection,
       
 13971       verticalSpacing: verticalSpacing,
       
 13972       small: small,
       
 13973       regular: regular,
       
 13974       block: block
       
 13975     }),
       
 13976     showClearDate && _react2['default'].createElement(
       
 13977       'button',
       
 13978       _extends({}, (0, _reactWithStyles.css)(styles.SingleDatePickerInput_clearDate, small && styles.SingleDatePickerInput_clearDate__small, !customCloseIcon && styles.SingleDatePickerInput_clearDate__default, !displayValue && styles.SingleDatePickerInput_clearDate__hide), {
       
 13979         type: 'button',
       
 13980         'aria-label': phrases.clearDate,
       
 13981         disabled: disabled,
       
 13982         onMouseEnter: this && this.onClearDateMouseEnter,
       
 13983         onMouseLeave: this && this.onClearDateMouseLeave,
       
 13984         onClick: onClearDate
       
 13985       }),
       
 13986       closeIcon
       
 13987     ),
       
 13988     inputIconPosition === _constants.ICON_AFTER_POSITION && inputIcon
       
 13989   );
       
 13990 }
       
 13991 
       
 13992 SingleDatePickerInput.propTypes = propTypes;
       
 13993 SingleDatePickerInput.defaultProps = defaultProps;
       
 13994 
       
 13995 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 13996   var _ref2$reactDates = _ref2.reactDates,
       
 13997       border = _ref2$reactDates.border,
       
 13998       color = _ref2$reactDates.color;
       
 13999   return {
       
 14000     SingleDatePickerInput: {
       
 14001       display: 'inline-block',
       
 14002       backgroundColor: color.background
       
 14003     },
       
 14004 
       
 14005     SingleDatePickerInput__withBorder: {
       
 14006       borderColor: color.border,
       
 14007       borderWidth: border.pickerInput.borderWidth,
       
 14008       borderStyle: border.pickerInput.borderStyle,
       
 14009       borderRadius: border.pickerInput.borderRadius
       
 14010     },
       
 14011 
       
 14012     SingleDatePickerInput__rtl: {
       
 14013       direction: 'rtl'
       
 14014     },
       
 14015 
       
 14016     SingleDatePickerInput__disabled: {
       
 14017       backgroundColor: color.disabled
       
 14018     },
       
 14019 
       
 14020     SingleDatePickerInput__block: {
       
 14021       display: 'block'
       
 14022     },
       
 14023 
       
 14024     SingleDatePickerInput__showClearDate: {
       
 14025       paddingRight: 30
       
 14026     },
       
 14027 
       
 14028     SingleDatePickerInput_clearDate: {
       
 14029       background: 'none',
       
 14030       border: 0,
       
 14031       color: 'inherit',
       
 14032       font: 'inherit',
       
 14033       lineHeight: 'normal',
       
 14034       overflow: 'visible',
       
 14035 
       
 14036       cursor: 'pointer',
       
 14037       padding: 10,
       
 14038       margin: '0 10px 0 5px',
       
 14039       position: 'absolute',
       
 14040       right: 0,
       
 14041       top: '50%',
       
 14042       transform: 'translateY(-50%)'
       
 14043     },
       
 14044 
       
 14045     SingleDatePickerInput_clearDate__default: {
       
 14046       ':focus': {
       
 14047         background: color.core.border,
       
 14048         borderRadius: '50%'
       
 14049       },
       
 14050 
       
 14051       ':hover': {
       
 14052         background: color.core.border,
       
 14053         borderRadius: '50%'
       
 14054       }
       
 14055     },
       
 14056 
       
 14057     SingleDatePickerInput_clearDate__small: {
       
 14058       padding: 6
       
 14059     },
       
 14060 
       
 14061     SingleDatePickerInput_clearDate__hide: {
       
 14062       visibility: 'hidden'
       
 14063     },
       
 14064 
       
 14065     SingleDatePickerInput_clearDate_svg: {
       
 14066       fill: color.core.grayLight,
       
 14067       height: 12,
       
 14068       width: 15,
       
 14069       verticalAlign: 'middle'
       
 14070     },
       
 14071 
       
 14072     SingleDatePickerInput_clearDate_svg__small: {
       
 14073       height: 9
       
 14074     },
       
 14075 
       
 14076     SingleDatePickerInput_calendarIcon: {
       
 14077       background: 'none',
       
 14078       border: 0,
       
 14079       color: 'inherit',
       
 14080       font: 'inherit',
       
 14081       lineHeight: 'normal',
       
 14082       overflow: 'visible',
       
 14083 
       
 14084       cursor: 'pointer',
       
 14085       display: 'inline-block',
       
 14086       verticalAlign: 'middle',
       
 14087       padding: 10,
       
 14088       margin: '0 5px 0 10px'
       
 14089     },
       
 14090 
       
 14091     SingleDatePickerInput_calendarIcon_svg: {
       
 14092       fill: color.core.grayLight,
       
 14093       height: 15,
       
 14094       width: 14,
       
 14095       verticalAlign: 'middle'
       
 14096     }
       
 14097   };
       
 14098 })(SingleDatePickerInput);
       
 14099 
       
 14100 /***/ }),
       
 14101 /* 197 */,
       
 14102 /* 198 */,
       
 14103 /* 199 */,
       
 14104 /* 200 */,
       
 14105 /* 201 */,
       
 14106 /* 202 */,
       
 14107 /* 203 */
       
 14108 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 14109 
       
 14110 "use strict";
       
 14111 __webpack_require__.r(__webpack_exports__);
       
 14112 
       
 14113 // EXTERNAL MODULE: external "ReactDOM"
       
 14114 var external_ReactDOM_ = __webpack_require__(52);
       
 14115 var external_ReactDOM_default = /*#__PURE__*/__webpack_require__.n(external_ReactDOM_);
       
 14116 
       
 14117 // EXTERNAL MODULE: external "React"
       
 14118 var external_React_ = __webpack_require__(27);
       
 14119 var external_React_default = /*#__PURE__*/__webpack_require__.n(external_React_);
       
 14120 
       
 14121 // EXTERNAL MODULE: ./node_modules/prop-types/index.js
       
 14122 var prop_types = __webpack_require__(31);
       
 14123 var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
       
 14124 
       
 14125 // CONCATENATED MODULE: ./node_modules/react-portal/es/utils.js
       
 14126 var canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);
       
 14127 // CONCATENATED MODULE: ./node_modules/react-portal/es/Portal.js
       
 14128 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 14129 
       
 14130 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 14131 
       
 14132 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 14133 
       
 14134 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 14135 
       
 14136 
       
 14137 
       
 14138 
       
 14139 
       
 14140 
       
 14141 var Portal_Portal = function (_React$Component) {
       
 14142   _inherits(Portal, _React$Component);
       
 14143 
       
 14144   function Portal() {
       
 14145     _classCallCheck(this, Portal);
       
 14146 
       
 14147     return _possibleConstructorReturn(this, (Portal.__proto__ || Object.getPrototypeOf(Portal)).apply(this, arguments));
       
 14148   }
       
 14149 
       
 14150   _createClass(Portal, [{
       
 14151     key: 'componentWillUnmount',
       
 14152     value: function componentWillUnmount() {
       
 14153       if (this.defaultNode) {
       
 14154         document.body.removeChild(this.defaultNode);
       
 14155       }
       
 14156       this.defaultNode = null;
       
 14157     }
       
 14158   }, {
       
 14159     key: 'render',
       
 14160     value: function render() {
       
 14161       if (!canUseDOM) {
       
 14162         return null;
       
 14163       }
       
 14164       if (!this.props.node && !this.defaultNode) {
       
 14165         this.defaultNode = document.createElement('div');
       
 14166         document.body.appendChild(this.defaultNode);
       
 14167       }
       
 14168       return external_ReactDOM_default.a.createPortal(this.props.children, this.props.node || this.defaultNode);
       
 14169     }
       
 14170   }]);
       
 14171 
       
 14172   return Portal;
       
 14173 }(external_React_default.a.Component);
       
 14174 
       
 14175 Portal_Portal.propTypes = {
       
 14176   children: prop_types_default.a.node.isRequired,
       
 14177   node: prop_types_default.a.any
       
 14178 };
       
 14179 
       
 14180 /* harmony default export */ var es_Portal = (Portal_Portal);
       
 14181 // CONCATENATED MODULE: ./node_modules/react-portal/es/LegacyPortal.js
       
 14182 var LegacyPortal_createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 14183 
       
 14184 function LegacyPortal_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 14185 
       
 14186 function LegacyPortal_possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 14187 
       
 14188 function LegacyPortal_inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 14189 
       
 14190 // This file is a fallback for a consumer who is not yet on React 16
       
 14191 // as createPortal was introduced in React 16
       
 14192 
       
 14193 
       
 14194 
       
 14195 
       
 14196 
       
 14197 var LegacyPortal_Portal = function (_React$Component) {
       
 14198   LegacyPortal_inherits(Portal, _React$Component);
       
 14199 
       
 14200   function Portal() {
       
 14201     LegacyPortal_classCallCheck(this, Portal);
       
 14202 
       
 14203     return LegacyPortal_possibleConstructorReturn(this, (Portal.__proto__ || Object.getPrototypeOf(Portal)).apply(this, arguments));
       
 14204   }
       
 14205 
       
 14206   LegacyPortal_createClass(Portal, [{
       
 14207     key: 'componentDidMount',
       
 14208     value: function componentDidMount() {
       
 14209       this.renderPortal();
       
 14210     }
       
 14211   }, {
       
 14212     key: 'componentDidUpdate',
       
 14213     value: function componentDidUpdate(props) {
       
 14214       this.renderPortal();
       
 14215     }
       
 14216   }, {
       
 14217     key: 'componentWillUnmount',
       
 14218     value: function componentWillUnmount() {
       
 14219       external_ReactDOM_default.a.unmountComponentAtNode(this.defaultNode || this.props.node);
       
 14220       if (this.defaultNode) {
       
 14221         document.body.removeChild(this.defaultNode);
       
 14222       }
       
 14223       this.defaultNode = null;
       
 14224       this.portal = null;
       
 14225     }
       
 14226   }, {
       
 14227     key: 'renderPortal',
       
 14228     value: function renderPortal(props) {
       
 14229       if (!this.props.node && !this.defaultNode) {
       
 14230         this.defaultNode = document.createElement('div');
       
 14231         document.body.appendChild(this.defaultNode);
       
 14232       }
       
 14233 
       
 14234       var children = this.props.children;
       
 14235       // https://gist.github.com/jimfb/d99e0678e9da715ccf6454961ef04d1b
       
 14236       if (typeof this.props.children.type === 'function') {
       
 14237         children = external_React_default.a.cloneElement(this.props.children);
       
 14238       }
       
 14239 
       
 14240       this.portal = external_ReactDOM_default.a.unstable_renderSubtreeIntoContainer(this, children, this.props.node || this.defaultNode);
       
 14241     }
       
 14242   }, {
       
 14243     key: 'render',
       
 14244     value: function render() {
       
 14245       return null;
       
 14246     }
       
 14247   }]);
       
 14248 
       
 14249   return Portal;
       
 14250 }(external_React_default.a.Component);
       
 14251 
       
 14252 /* harmony default export */ var LegacyPortal = (LegacyPortal_Portal);
       
 14253 
       
 14254 
       
 14255 LegacyPortal_Portal.propTypes = {
       
 14256   children: prop_types_default.a.node.isRequired,
       
 14257   node: prop_types_default.a.any
       
 14258 };
       
 14259 // CONCATENATED MODULE: ./node_modules/react-portal/es/PortalCompat.js
       
 14260 
       
 14261 
       
 14262 
       
 14263 
       
 14264 
       
 14265 var PortalCompat_Portal = void 0;
       
 14266 
       
 14267 if (external_ReactDOM_default.a.createPortal) {
       
 14268   PortalCompat_Portal = es_Portal;
       
 14269 } else {
       
 14270   PortalCompat_Portal = LegacyPortal;
       
 14271 }
       
 14272 
       
 14273 /* harmony default export */ var PortalCompat = (PortalCompat_Portal);
       
 14274 // CONCATENATED MODULE: ./node_modules/react-portal/es/PortalWithState.js
       
 14275 var PortalWithState_createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 14276 
       
 14277 function PortalWithState_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 14278 
       
 14279 function PortalWithState_possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 14280 
       
 14281 function PortalWithState_inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 14282 
       
 14283 
       
 14284 
       
 14285 
       
 14286 
       
 14287 var KEYCODES = {
       
 14288   ESCAPE: 27
       
 14289 };
       
 14290 
       
 14291 var PortalWithState_PortalWithState = function (_React$Component) {
       
 14292   PortalWithState_inherits(PortalWithState, _React$Component);
       
 14293 
       
 14294   function PortalWithState(props) {
       
 14295     PortalWithState_classCallCheck(this, PortalWithState);
       
 14296 
       
 14297     var _this = PortalWithState_possibleConstructorReturn(this, (PortalWithState.__proto__ || Object.getPrototypeOf(PortalWithState)).call(this, props));
       
 14298 
       
 14299     _this.portalNode = null;
       
 14300     _this.state = { active: !!props.defaultOpen };
       
 14301     _this.openPortal = _this.openPortal.bind(_this);
       
 14302     _this.closePortal = _this.closePortal.bind(_this);
       
 14303     _this.wrapWithPortal = _this.wrapWithPortal.bind(_this);
       
 14304     _this.handleOutsideMouseClick = _this.handleOutsideMouseClick.bind(_this);
       
 14305     _this.handleKeydown = _this.handleKeydown.bind(_this);
       
 14306     return _this;
       
 14307   }
       
 14308 
       
 14309   PortalWithState_createClass(PortalWithState, [{
       
 14310     key: 'componentDidMount',
       
 14311     value: function componentDidMount() {
       
 14312       if (this.props.closeOnEsc) {
       
 14313         document.addEventListener('keydown', this.handleKeydown);
       
 14314       }
       
 14315       if (this.props.closeOnOutsideClick) {
       
 14316         document.addEventListener('click', this.handleOutsideMouseClick);
       
 14317       }
       
 14318     }
       
 14319   }, {
       
 14320     key: 'componentWillUnmount',
       
 14321     value: function componentWillUnmount() {
       
 14322       if (this.props.closeOnEsc) {
       
 14323         document.removeEventListener('keydown', this.handleKeydown);
       
 14324       }
       
 14325       if (this.props.closeOnOutsideClick) {
       
 14326         document.removeEventListener('click', this.handleOutsideMouseClick);
       
 14327       }
       
 14328     }
       
 14329   }, {
       
 14330     key: 'openPortal',
       
 14331     value: function openPortal(e) {
       
 14332       if (this.state.active) {
       
 14333         return;
       
 14334       }
       
 14335       if (e && e.nativeEvent) {
       
 14336         e.nativeEvent.stopImmediatePropagation();
       
 14337       }
       
 14338       this.setState({ active: true }, this.props.onOpen);
       
 14339     }
       
 14340   }, {
       
 14341     key: 'closePortal',
       
 14342     value: function closePortal() {
       
 14343       if (!this.state.active) {
       
 14344         return;
       
 14345       }
       
 14346       this.setState({ active: false }, this.props.onClose);
       
 14347     }
       
 14348   }, {
       
 14349     key: 'wrapWithPortal',
       
 14350     value: function wrapWithPortal(children) {
       
 14351       var _this2 = this;
       
 14352 
       
 14353       if (!this.state.active) {
       
 14354         return null;
       
 14355       }
       
 14356       return external_React_default.a.createElement(
       
 14357         PortalCompat,
       
 14358         {
       
 14359           node: this.props.node,
       
 14360           key: 'react-portal',
       
 14361           ref: function ref(portalNode) {
       
 14362             return _this2.portalNode = portalNode;
       
 14363           }
       
 14364         },
       
 14365         children
       
 14366       );
       
 14367     }
       
 14368   }, {
       
 14369     key: 'handleOutsideMouseClick',
       
 14370     value: function handleOutsideMouseClick(e) {
       
 14371       if (!this.state.active) {
       
 14372         return;
       
 14373       }
       
 14374       var root = this.portalNode.props.node || this.portalNode.defaultNode;
       
 14375       if (!root || root.contains(e.target) || e.button && e.button !== 0) {
       
 14376         return;
       
 14377       }
       
 14378       this.closePortal();
       
 14379     }
       
 14380   }, {
       
 14381     key: 'handleKeydown',
       
 14382     value: function handleKeydown(e) {
       
 14383       if (e.keyCode === KEYCODES.ESCAPE && this.state.active) {
       
 14384         this.closePortal();
       
 14385       }
       
 14386     }
       
 14387   }, {
       
 14388     key: 'render',
       
 14389     value: function render() {
       
 14390       return this.props.children({
       
 14391         openPortal: this.openPortal,
       
 14392         closePortal: this.closePortal,
       
 14393         portal: this.wrapWithPortal,
       
 14394         isOpen: this.state.active
       
 14395       });
       
 14396     }
       
 14397   }]);
       
 14398 
       
 14399   return PortalWithState;
       
 14400 }(external_React_default.a.Component);
       
 14401 
       
 14402 PortalWithState_PortalWithState.propTypes = {
       
 14403   children: prop_types_default.a.func.isRequired,
       
 14404   defaultOpen: prop_types_default.a.bool,
       
 14405   node: prop_types_default.a.any,
       
 14406   closeOnEsc: prop_types_default.a.bool,
       
 14407   closeOnOutsideClick: prop_types_default.a.bool,
       
 14408   onOpen: prop_types_default.a.func,
       
 14409   onClose: prop_types_default.a.func
       
 14410 };
       
 14411 
       
 14412 PortalWithState_PortalWithState.defaultProps = {
       
 14413   onOpen: function onOpen() {},
       
 14414   onClose: function onClose() {}
       
 14415 };
       
 14416 
       
 14417 /* harmony default export */ var es_PortalWithState = (PortalWithState_PortalWithState);
       
 14418 // CONCATENATED MODULE: ./node_modules/react-portal/es/index.js
       
 14419 /* concated harmony reexport Portal */__webpack_require__.d(__webpack_exports__, "Portal", function() { return PortalCompat; });
       
 14420 /* concated harmony reexport PortalWithState */__webpack_require__.d(__webpack_exports__, "PortalWithState", function() { return es_PortalWithState; });
       
 14421 
       
 14422 
       
 14423 
       
 14424 
       
 14425 
       
 14426 /***/ }),
       
 14427 /* 204 */,
       
 14428 /* 205 */,
       
 14429 /* 206 */,
       
 14430 /* 207 */,
       
 14431 /* 208 */,
       
 14432 /* 209 */,
       
 14433 /* 210 */,
       
 14434 /* 211 */,
       
 14435 /* 212 */,
       
 14436 /* 213 */,
       
 14437 /* 214 */,
       
 14438 /* 215 */,
       
 14439 /* 216 */,
       
 14440 /* 217 */,
       
 14441 /* 218 */,
       
 14442 /* 219 */,
       
 14443 /* 220 */,
       
 14444 /* 221 */
       
 14445 /***/ (function(module, exports, __webpack_require__) {
       
 14446 
       
 14447 /*!
       
 14448  * clipboard.js v2.0.4
       
 14449  * https://zenorocha.github.io/clipboard.js
       
 14450  * 
       
 14451  * Licensed MIT © Zeno Rocha
       
 14452  */
       
 14453 (function webpackUniversalModuleDefinition(root, factory) {
       
 14454 	if(true)
       
 14455 		module.exports = factory();
       
 14456 	else {}
       
 14457 })(this, function() {
       
 14458 return /******/ (function(modules) { // webpackBootstrap
       
 14459 /******/ 	// The module cache
       
 14460 /******/ 	var installedModules = {};
       
 14461 /******/
       
 14462 /******/ 	// The require function
       
 14463 /******/ 	function __webpack_require__(moduleId) {
       
 14464 /******/
       
 14465 /******/ 		// Check if module is in cache
       
 14466 /******/ 		if(installedModules[moduleId]) {
       
 14467 /******/ 			return installedModules[moduleId].exports;
       
 14468 /******/ 		}
       
 14469 /******/ 		// Create a new module (and put it into the cache)
       
 14470 /******/ 		var module = installedModules[moduleId] = {
       
 14471 /******/ 			i: moduleId,
       
 14472 /******/ 			l: false,
       
 14473 /******/ 			exports: {}
       
 14474 /******/ 		};
       
 14475 /******/
       
 14476 /******/ 		// Execute the module function
       
 14477 /******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
       
 14478 /******/
       
 14479 /******/ 		// Flag the module as loaded
       
 14480 /******/ 		module.l = true;
       
 14481 /******/
       
 14482 /******/ 		// Return the exports of the module
       
 14483 /******/ 		return module.exports;
       
 14484 /******/ 	}
       
 14485 /******/
       
 14486 /******/
       
 14487 /******/ 	// expose the modules object (__webpack_modules__)
       
 14488 /******/ 	__webpack_require__.m = modules;
       
 14489 /******/
       
 14490 /******/ 	// expose the module cache
       
 14491 /******/ 	__webpack_require__.c = installedModules;
       
 14492 /******/
       
 14493 /******/ 	// define getter function for harmony exports
       
 14494 /******/ 	__webpack_require__.d = function(exports, name, getter) {
       
 14495 /******/ 		if(!__webpack_require__.o(exports, name)) {
       
 14496 /******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
       
 14497 /******/ 		}
       
 14498 /******/ 	};
       
 14499 /******/
       
 14500 /******/ 	// define __esModule on exports
       
 14501 /******/ 	__webpack_require__.r = function(exports) {
       
 14502 /******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
       
 14503 /******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
       
 14504 /******/ 		}
       
 14505 /******/ 		Object.defineProperty(exports, '__esModule', { value: true });
       
 14506 /******/ 	};
       
 14507 /******/
       
 14508 /******/ 	// create a fake namespace object
       
 14509 /******/ 	// mode & 1: value is a module id, require it
       
 14510 /******/ 	// mode & 2: merge all properties of value into the ns
       
 14511 /******/ 	// mode & 4: return value when already ns object
       
 14512 /******/ 	// mode & 8|1: behave like require
       
 14513 /******/ 	__webpack_require__.t = function(value, mode) {
       
 14514 /******/ 		if(mode & 1) value = __webpack_require__(value);
       
 14515 /******/ 		if(mode & 8) return value;
       
 14516 /******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
       
 14517 /******/ 		var ns = Object.create(null);
       
 14518 /******/ 		__webpack_require__.r(ns);
       
 14519 /******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
       
 14520 /******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
       
 14521 /******/ 		return ns;
       
 14522 /******/ 	};
       
 14523 /******/
       
 14524 /******/ 	// getDefaultExport function for compatibility with non-harmony modules
       
 14525 /******/ 	__webpack_require__.n = function(module) {
       
 14526 /******/ 		var getter = module && module.__esModule ?
       
 14527 /******/ 			function getDefault() { return module['default']; } :
       
 14528 /******/ 			function getModuleExports() { return module; };
       
 14529 /******/ 		__webpack_require__.d(getter, 'a', getter);
       
 14530 /******/ 		return getter;
       
 14531 /******/ 	};
       
 14532 /******/
       
 14533 /******/ 	// Object.prototype.hasOwnProperty.call
       
 14534 /******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
       
 14535 /******/
       
 14536 /******/ 	// __webpack_public_path__
       
 14537 /******/ 	__webpack_require__.p = "";
       
 14538 /******/
       
 14539 /******/
       
 14540 /******/ 	// Load entry module and return exports
       
 14541 /******/ 	return __webpack_require__(__webpack_require__.s = 0);
       
 14542 /******/ })
       
 14543 /************************************************************************/
       
 14544 /******/ ([
       
 14545 /* 0 */
       
 14546 /***/ (function(module, exports, __webpack_require__) {
       
 14547 
       
 14548 "use strict";
       
 14549 
       
 14550 
       
 14551 var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
       
 14552 
       
 14553 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 14554 
       
 14555 var _clipboardAction = __webpack_require__(1);
       
 14556 
       
 14557 var _clipboardAction2 = _interopRequireDefault(_clipboardAction);
       
 14558 
       
 14559 var _tinyEmitter = __webpack_require__(3);
       
 14560 
       
 14561 var _tinyEmitter2 = _interopRequireDefault(_tinyEmitter);
       
 14562 
       
 14563 var _goodListener = __webpack_require__(4);
       
 14564 
       
 14565 var _goodListener2 = _interopRequireDefault(_goodListener);
       
 14566 
       
 14567 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
       
 14568 
       
 14569 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 14570 
       
 14571 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 14572 
       
 14573 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 14574 
       
 14575 /**
       
 14576  * Base class which takes one or more elements, adds event listeners to them,
       
 14577  * and instantiates a new `ClipboardAction` on each click.
       
 14578  */
       
 14579 var Clipboard = function (_Emitter) {
       
 14580     _inherits(Clipboard, _Emitter);
       
 14581 
       
 14582     /**
       
 14583      * @param {String|HTMLElement|HTMLCollection|NodeList} trigger
       
 14584      * @param {Object} options
       
 14585      */
       
 14586     function Clipboard(trigger, options) {
       
 14587         _classCallCheck(this, Clipboard);
       
 14588 
       
 14589         var _this = _possibleConstructorReturn(this, (Clipboard.__proto__ || Object.getPrototypeOf(Clipboard)).call(this));
       
 14590 
       
 14591         _this.resolveOptions(options);
       
 14592         _this.listenClick(trigger);
       
 14593         return _this;
       
 14594     }
       
 14595 
       
 14596     /**
       
 14597      * Defines if attributes would be resolved using internal setter functions
       
 14598      * or custom functions that were passed in the constructor.
       
 14599      * @param {Object} options
       
 14600      */
       
 14601 
       
 14602 
       
 14603     _createClass(Clipboard, [{
       
 14604         key: 'resolveOptions',
       
 14605         value: function resolveOptions() {
       
 14606             var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 14607 
       
 14608             this.action = typeof options.action === 'function' ? options.action : this.defaultAction;
       
 14609             this.target = typeof options.target === 'function' ? options.target : this.defaultTarget;
       
 14610             this.text = typeof options.text === 'function' ? options.text : this.defaultText;
       
 14611             this.container = _typeof(options.container) === 'object' ? options.container : document.body;
       
 14612         }
       
 14613 
       
 14614         /**
       
 14615          * Adds a click event listener to the passed trigger.
       
 14616          * @param {String|HTMLElement|HTMLCollection|NodeList} trigger
       
 14617          */
       
 14618 
       
 14619     }, {
       
 14620         key: 'listenClick',
       
 14621         value: function listenClick(trigger) {
       
 14622             var _this2 = this;
       
 14623 
       
 14624             this.listener = (0, _goodListener2.default)(trigger, 'click', function (e) {
       
 14625                 return _this2.onClick(e);
       
 14626             });
       
 14627         }
       
 14628 
       
 14629         /**
       
 14630          * Defines a new `ClipboardAction` on each click event.
       
 14631          * @param {Event} e
       
 14632          */
       
 14633 
       
 14634     }, {
       
 14635         key: 'onClick',
       
 14636         value: function onClick(e) {
       
 14637             var trigger = e.delegateTarget || e.currentTarget;
       
 14638 
       
 14639             if (this.clipboardAction) {
       
 14640                 this.clipboardAction = null;
       
 14641             }
       
 14642 
       
 14643             this.clipboardAction = new _clipboardAction2.default({
       
 14644                 action: this.action(trigger),
       
 14645                 target: this.target(trigger),
       
 14646                 text: this.text(trigger),
       
 14647                 container: this.container,
       
 14648                 trigger: trigger,
       
 14649                 emitter: this
       
 14650             });
       
 14651         }
       
 14652 
       
 14653         /**
       
 14654          * Default `action` lookup function.
       
 14655          * @param {Element} trigger
       
 14656          */
       
 14657 
       
 14658     }, {
       
 14659         key: 'defaultAction',
       
 14660         value: function defaultAction(trigger) {
       
 14661             return getAttributeValue('action', trigger);
       
 14662         }
       
 14663 
       
 14664         /**
       
 14665          * Default `target` lookup function.
       
 14666          * @param {Element} trigger
       
 14667          */
       
 14668 
       
 14669     }, {
       
 14670         key: 'defaultTarget',
       
 14671         value: function defaultTarget(trigger) {
       
 14672             var selector = getAttributeValue('target', trigger);
       
 14673 
       
 14674             if (selector) {
       
 14675                 return document.querySelector(selector);
       
 14676             }
       
 14677         }
       
 14678 
       
 14679         /**
       
 14680          * Returns the support of the given action, or all actions if no action is
       
 14681          * given.
       
 14682          * @param {String} [action]
       
 14683          */
       
 14684 
       
 14685     }, {
       
 14686         key: 'defaultText',
       
 14687 
       
 14688 
       
 14689         /**
       
 14690          * Default `text` lookup function.
       
 14691          * @param {Element} trigger
       
 14692          */
       
 14693         value: function defaultText(trigger) {
       
 14694             return getAttributeValue('text', trigger);
       
 14695         }
       
 14696 
       
 14697         /**
       
 14698          * Destroy lifecycle.
       
 14699          */
       
 14700 
       
 14701     }, {
       
 14702         key: 'destroy',
       
 14703         value: function destroy() {
       
 14704             this.listener.destroy();
       
 14705 
       
 14706             if (this.clipboardAction) {
       
 14707                 this.clipboardAction.destroy();
       
 14708                 this.clipboardAction = null;
       
 14709             }
       
 14710         }
       
 14711     }], [{
       
 14712         key: 'isSupported',
       
 14713         value: function isSupported() {
       
 14714             var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut'];
       
 14715 
       
 14716             var actions = typeof action === 'string' ? [action] : action;
       
 14717             var support = !!document.queryCommandSupported;
       
 14718 
       
 14719             actions.forEach(function (action) {
       
 14720                 support = support && !!document.queryCommandSupported(action);
       
 14721             });
       
 14722 
       
 14723             return support;
       
 14724         }
       
 14725     }]);
       
 14726 
       
 14727     return Clipboard;
       
 14728 }(_tinyEmitter2.default);
       
 14729 
       
 14730 /**
       
 14731  * Helper function to retrieve attribute value.
       
 14732  * @param {String} suffix
       
 14733  * @param {Element} element
       
 14734  */
       
 14735 
       
 14736 
       
 14737 function getAttributeValue(suffix, element) {
       
 14738     var attribute = 'data-clipboard-' + suffix;
       
 14739 
       
 14740     if (!element.hasAttribute(attribute)) {
       
 14741         return;
       
 14742     }
       
 14743 
       
 14744     return element.getAttribute(attribute);
       
 14745 }
       
 14746 
       
 14747 module.exports = Clipboard;
       
 14748 
       
 14749 /***/ }),
       
 14750 /* 1 */
       
 14751 /***/ (function(module, exports, __webpack_require__) {
       
 14752 
       
 14753 "use strict";
       
 14754 
       
 14755 
       
 14756 var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
       
 14757 
       
 14758 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 14759 
       
 14760 var _select = __webpack_require__(2);
       
 14761 
       
 14762 var _select2 = _interopRequireDefault(_select);
       
 14763 
       
 14764 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
       
 14765 
       
 14766 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 14767 
       
 14768 /**
       
 14769  * Inner class which performs selection from either `text` or `target`
       
 14770  * properties and then executes copy or cut operations.
       
 14771  */
       
 14772 var ClipboardAction = function () {
       
 14773     /**
       
 14774      * @param {Object} options
       
 14775      */
       
 14776     function ClipboardAction(options) {
       
 14777         _classCallCheck(this, ClipboardAction);
       
 14778 
       
 14779         this.resolveOptions(options);
       
 14780         this.initSelection();
       
 14781     }
       
 14782 
       
 14783     /**
       
 14784      * Defines base properties passed from constructor.
       
 14785      * @param {Object} options
       
 14786      */
       
 14787 
       
 14788 
       
 14789     _createClass(ClipboardAction, [{
       
 14790         key: 'resolveOptions',
       
 14791         value: function resolveOptions() {
       
 14792             var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 14793 
       
 14794             this.action = options.action;
       
 14795             this.container = options.container;
       
 14796             this.emitter = options.emitter;
       
 14797             this.target = options.target;
       
 14798             this.text = options.text;
       
 14799             this.trigger = options.trigger;
       
 14800 
       
 14801             this.selectedText = '';
       
 14802         }
       
 14803 
       
 14804         /**
       
 14805          * Decides which selection strategy is going to be applied based
       
 14806          * on the existence of `text` and `target` properties.
       
 14807          */
       
 14808 
       
 14809     }, {
       
 14810         key: 'initSelection',
       
 14811         value: function initSelection() {
       
 14812             if (this.text) {
       
 14813                 this.selectFake();
       
 14814             } else if (this.target) {
       
 14815                 this.selectTarget();
       
 14816             }
       
 14817         }
       
 14818 
       
 14819         /**
       
 14820          * Creates a fake textarea element, sets its value from `text` property,
       
 14821          * and makes a selection on it.
       
 14822          */
       
 14823 
       
 14824     }, {
       
 14825         key: 'selectFake',
       
 14826         value: function selectFake() {
       
 14827             var _this = this;
       
 14828 
       
 14829             var isRTL = document.documentElement.getAttribute('dir') == 'rtl';
       
 14830 
       
 14831             this.removeFake();
       
 14832 
       
 14833             this.fakeHandlerCallback = function () {
       
 14834                 return _this.removeFake();
       
 14835             };
       
 14836             this.fakeHandler = this.container.addEventListener('click', this.fakeHandlerCallback) || true;
       
 14837 
       
 14838             this.fakeElem = document.createElement('textarea');
       
 14839             // Prevent zooming on iOS
       
 14840             this.fakeElem.style.fontSize = '12pt';
       
 14841             // Reset box model
       
 14842             this.fakeElem.style.border = '0';
       
 14843             this.fakeElem.style.padding = '0';
       
 14844             this.fakeElem.style.margin = '0';
       
 14845             // Move element out of screen horizontally
       
 14846             this.fakeElem.style.position = 'absolute';
       
 14847             this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px';
       
 14848             // Move element to the same position vertically
       
 14849             var yPosition = window.pageYOffset || document.documentElement.scrollTop;
       
 14850             this.fakeElem.style.top = yPosition + 'px';
       
 14851 
       
 14852             this.fakeElem.setAttribute('readonly', '');
       
 14853             this.fakeElem.value = this.text;
       
 14854 
       
 14855             this.container.appendChild(this.fakeElem);
       
 14856 
       
 14857             this.selectedText = (0, _select2.default)(this.fakeElem);
       
 14858             this.copyText();
       
 14859         }
       
 14860 
       
 14861         /**
       
 14862          * Only removes the fake element after another click event, that way
       
 14863          * a user can hit `Ctrl+C` to copy because selection still exists.
       
 14864          */
       
 14865 
       
 14866     }, {
       
 14867         key: 'removeFake',
       
 14868         value: function removeFake() {
       
 14869             if (this.fakeHandler) {
       
 14870                 this.container.removeEventListener('click', this.fakeHandlerCallback);
       
 14871                 this.fakeHandler = null;
       
 14872                 this.fakeHandlerCallback = null;
       
 14873             }
       
 14874 
       
 14875             if (this.fakeElem) {
       
 14876                 this.container.removeChild(this.fakeElem);
       
 14877                 this.fakeElem = null;
       
 14878             }
       
 14879         }
       
 14880 
       
 14881         /**
       
 14882          * Selects the content from element passed on `target` property.
       
 14883          */
       
 14884 
       
 14885     }, {
       
 14886         key: 'selectTarget',
       
 14887         value: function selectTarget() {
       
 14888             this.selectedText = (0, _select2.default)(this.target);
       
 14889             this.copyText();
       
 14890         }
       
 14891 
       
 14892         /**
       
 14893          * Executes the copy operation based on the current selection.
       
 14894          */
       
 14895 
       
 14896     }, {
       
 14897         key: 'copyText',
       
 14898         value: function copyText() {
       
 14899             var succeeded = void 0;
       
 14900 
       
 14901             try {
       
 14902                 succeeded = document.execCommand(this.action);
       
 14903             } catch (err) {
       
 14904                 succeeded = false;
       
 14905             }
       
 14906 
       
 14907             this.handleResult(succeeded);
       
 14908         }
       
 14909 
       
 14910         /**
       
 14911          * Fires an event based on the copy operation result.
       
 14912          * @param {Boolean} succeeded
       
 14913          */
       
 14914 
       
 14915     }, {
       
 14916         key: 'handleResult',
       
 14917         value: function handleResult(succeeded) {
       
 14918             this.emitter.emit(succeeded ? 'success' : 'error', {
       
 14919                 action: this.action,
       
 14920                 text: this.selectedText,
       
 14921                 trigger: this.trigger,
       
 14922                 clearSelection: this.clearSelection.bind(this)
       
 14923             });
       
 14924         }
       
 14925 
       
 14926         /**
       
 14927          * Moves focus away from `target` and back to the trigger, removes current selection.
       
 14928          */
       
 14929 
       
 14930     }, {
       
 14931         key: 'clearSelection',
       
 14932         value: function clearSelection() {
       
 14933             if (this.trigger) {
       
 14934                 this.trigger.focus();
       
 14935             }
       
 14936 
       
 14937             window.getSelection().removeAllRanges();
       
 14938         }
       
 14939 
       
 14940         /**
       
 14941          * Sets the `action` to be performed which can be either 'copy' or 'cut'.
       
 14942          * @param {String} action
       
 14943          */
       
 14944 
       
 14945     }, {
       
 14946         key: 'destroy',
       
 14947 
       
 14948 
       
 14949         /**
       
 14950          * Destroy lifecycle.
       
 14951          */
       
 14952         value: function destroy() {
       
 14953             this.removeFake();
       
 14954         }
       
 14955     }, {
       
 14956         key: 'action',
       
 14957         set: function set() {
       
 14958             var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'copy';
       
 14959 
       
 14960             this._action = action;
       
 14961 
       
 14962             if (this._action !== 'copy' && this._action !== 'cut') {
       
 14963                 throw new Error('Invalid "action" value, use either "copy" or "cut"');
       
 14964             }
       
 14965         }
       
 14966 
       
 14967         /**
       
 14968          * Gets the `action` property.
       
 14969          * @return {String}
       
 14970          */
       
 14971         ,
       
 14972         get: function get() {
       
 14973             return this._action;
       
 14974         }
       
 14975 
       
 14976         /**
       
 14977          * Sets the `target` property using an element
       
 14978          * that will be have its content copied.
       
 14979          * @param {Element} target
       
 14980          */
       
 14981 
       
 14982     }, {
       
 14983         key: 'target',
       
 14984         set: function set(target) {
       
 14985             if (target !== undefined) {
       
 14986                 if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) {
       
 14987                     if (this.action === 'copy' && target.hasAttribute('disabled')) {
       
 14988                         throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');
       
 14989                     }
       
 14990 
       
 14991                     if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) {
       
 14992                         throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes');
       
 14993                     }
       
 14994 
       
 14995                     this._target = target;
       
 14996                 } else {
       
 14997                     throw new Error('Invalid "target" value, use a valid Element');
       
 14998                 }
       
 14999             }
       
 15000         }
       
 15001 
       
 15002         /**
       
 15003          * Gets the `target` property.
       
 15004          * @return {String|HTMLElement}
       
 15005          */
       
 15006         ,
       
 15007         get: function get() {
       
 15008             return this._target;
       
 15009         }
       
 15010     }]);
       
 15011 
       
 15012     return ClipboardAction;
       
 15013 }();
       
 15014 
       
 15015 module.exports = ClipboardAction;
       
 15016 
       
 15017 /***/ }),
       
 15018 /* 2 */
       
 15019 /***/ (function(module, exports) {
       
 15020 
       
 15021 function select(element) {
       
 15022     var selectedText;
       
 15023 
       
 15024     if (element.nodeName === 'SELECT') {
       
 15025         element.focus();
       
 15026 
       
 15027         selectedText = element.value;
       
 15028     }
       
 15029     else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') {
       
 15030         var isReadOnly = element.hasAttribute('readonly');
       
 15031 
       
 15032         if (!isReadOnly) {
       
 15033             element.setAttribute('readonly', '');
       
 15034         }
       
 15035 
       
 15036         element.select();
       
 15037         element.setSelectionRange(0, element.value.length);
       
 15038 
       
 15039         if (!isReadOnly) {
       
 15040             element.removeAttribute('readonly');
       
 15041         }
       
 15042 
       
 15043         selectedText = element.value;
       
 15044     }
       
 15045     else {
       
 15046         if (element.hasAttribute('contenteditable')) {
       
 15047             element.focus();
       
 15048         }
       
 15049 
       
 15050         var selection = window.getSelection();
       
 15051         var range = document.createRange();
       
 15052 
       
 15053         range.selectNodeContents(element);
       
 15054         selection.removeAllRanges();
       
 15055         selection.addRange(range);
       
 15056 
       
 15057         selectedText = selection.toString();
       
 15058     }
       
 15059 
       
 15060     return selectedText;
       
 15061 }
       
 15062 
       
 15063 module.exports = select;
       
 15064 
       
 15065 
       
 15066 /***/ }),
       
 15067 /* 3 */
       
 15068 /***/ (function(module, exports) {
       
 15069 
       
 15070 function E () {
       
 15071   // Keep this empty so it's easier to inherit from
       
 15072   // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)
       
 15073 }
       
 15074 
       
 15075 E.prototype = {
       
 15076   on: function (name, callback, ctx) {
       
 15077     var e = this.e || (this.e = {});
       
 15078 
       
 15079     (e[name] || (e[name] = [])).push({
       
 15080       fn: callback,
       
 15081       ctx: ctx
       
 15082     });
       
 15083 
       
 15084     return this;
       
 15085   },
       
 15086 
       
 15087   once: function (name, callback, ctx) {
       
 15088     var self = this;
       
 15089     function listener () {
       
 15090       self.off(name, listener);
       
 15091       callback.apply(ctx, arguments);
       
 15092     };
       
 15093 
       
 15094     listener._ = callback
       
 15095     return this.on(name, listener, ctx);
       
 15096   },
       
 15097 
       
 15098   emit: function (name) {
       
 15099     var data = [].slice.call(arguments, 1);
       
 15100     var evtArr = ((this.e || (this.e = {}))[name] || []).slice();
       
 15101     var i = 0;
       
 15102     var len = evtArr.length;
       
 15103 
       
 15104     for (i; i < len; i++) {
       
 15105       evtArr[i].fn.apply(evtArr[i].ctx, data);
       
 15106     }
       
 15107 
       
 15108     return this;
       
 15109   },
       
 15110 
       
 15111   off: function (name, callback) {
       
 15112     var e = this.e || (this.e = {});
       
 15113     var evts = e[name];
       
 15114     var liveEvents = [];
       
 15115 
       
 15116     if (evts && callback) {
       
 15117       for (var i = 0, len = evts.length; i < len; i++) {
       
 15118         if (evts[i].fn !== callback && evts[i].fn._ !== callback)
       
 15119           liveEvents.push(evts[i]);
       
 15120       }
       
 15121     }
       
 15122 
       
 15123     // Remove event from queue to prevent memory leak
       
 15124     // Suggested by https://github.com/lazd
       
 15125     // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910
       
 15126 
       
 15127     (liveEvents.length)
       
 15128       ? e[name] = liveEvents
       
 15129       : delete e[name];
       
 15130 
       
 15131     return this;
       
 15132   }
       
 15133 };
       
 15134 
       
 15135 module.exports = E;
       
 15136 
       
 15137 
       
 15138 /***/ }),
       
 15139 /* 4 */
       
 15140 /***/ (function(module, exports, __webpack_require__) {
       
 15141 
       
 15142 var is = __webpack_require__(5);
       
 15143 var delegate = __webpack_require__(6);
       
 15144 
       
 15145 /**
       
 15146  * Validates all params and calls the right
       
 15147  * listener function based on its target type.
       
 15148  *
       
 15149  * @param {String|HTMLElement|HTMLCollection|NodeList} target
       
 15150  * @param {String} type
       
 15151  * @param {Function} callback
       
 15152  * @return {Object}
       
 15153  */
       
 15154 function listen(target, type, callback) {
       
 15155     if (!target && !type && !callback) {
       
 15156         throw new Error('Missing required arguments');
       
 15157     }
       
 15158 
       
 15159     if (!is.string(type)) {
       
 15160         throw new TypeError('Second argument must be a String');
       
 15161     }
       
 15162 
       
 15163     if (!is.fn(callback)) {
       
 15164         throw new TypeError('Third argument must be a Function');
       
 15165     }
       
 15166 
       
 15167     if (is.node(target)) {
       
 15168         return listenNode(target, type, callback);
       
 15169     }
       
 15170     else if (is.nodeList(target)) {
       
 15171         return listenNodeList(target, type, callback);
       
 15172     }
       
 15173     else if (is.string(target)) {
       
 15174         return listenSelector(target, type, callback);
       
 15175     }
       
 15176     else {
       
 15177         throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList');
       
 15178     }
       
 15179 }
       
 15180 
       
 15181 /**
       
 15182  * Adds an event listener to a HTML element
       
 15183  * and returns a remove listener function.
       
 15184  *
       
 15185  * @param {HTMLElement} node
       
 15186  * @param {String} type
       
 15187  * @param {Function} callback
       
 15188  * @return {Object}
       
 15189  */
       
 15190 function listenNode(node, type, callback) {
       
 15191     node.addEventListener(type, callback);
       
 15192 
       
 15193     return {
       
 15194         destroy: function() {
       
 15195             node.removeEventListener(type, callback);
       
 15196         }
       
 15197     }
       
 15198 }
       
 15199 
       
 15200 /**
       
 15201  * Add an event listener to a list of HTML elements
       
 15202  * and returns a remove listener function.
       
 15203  *
       
 15204  * @param {NodeList|HTMLCollection} nodeList
       
 15205  * @param {String} type
       
 15206  * @param {Function} callback
       
 15207  * @return {Object}
       
 15208  */
       
 15209 function listenNodeList(nodeList, type, callback) {
       
 15210     Array.prototype.forEach.call(nodeList, function(node) {
       
 15211         node.addEventListener(type, callback);
       
 15212     });
       
 15213 
       
 15214     return {
       
 15215         destroy: function() {
       
 15216             Array.prototype.forEach.call(nodeList, function(node) {
       
 15217                 node.removeEventListener(type, callback);
       
 15218             });
       
 15219         }
       
 15220     }
       
 15221 }
       
 15222 
       
 15223 /**
       
 15224  * Add an event listener to a selector
       
 15225  * and returns a remove listener function.
       
 15226  *
       
 15227  * @param {String} selector
       
 15228  * @param {String} type
       
 15229  * @param {Function} callback
       
 15230  * @return {Object}
       
 15231  */
       
 15232 function listenSelector(selector, type, callback) {
       
 15233     return delegate(document.body, selector, type, callback);
       
 15234 }
       
 15235 
       
 15236 module.exports = listen;
       
 15237 
       
 15238 
       
 15239 /***/ }),
       
 15240 /* 5 */
       
 15241 /***/ (function(module, exports) {
       
 15242 
       
 15243 /**
       
 15244  * Check if argument is a HTML element.
       
 15245  *
       
 15246  * @param {Object} value
       
 15247  * @return {Boolean}
       
 15248  */
       
 15249 exports.node = function(value) {
       
 15250     return value !== undefined
       
 15251         && value instanceof HTMLElement
       
 15252         && value.nodeType === 1;
       
 15253 };
       
 15254 
       
 15255 /**
       
 15256  * Check if argument is a list of HTML elements.
       
 15257  *
       
 15258  * @param {Object} value
       
 15259  * @return {Boolean}
       
 15260  */
       
 15261 exports.nodeList = function(value) {
       
 15262     var type = Object.prototype.toString.call(value);
       
 15263 
       
 15264     return value !== undefined
       
 15265         && (type === '[object NodeList]' || type === '[object HTMLCollection]')
       
 15266         && ('length' in value)
       
 15267         && (value.length === 0 || exports.node(value[0]));
       
 15268 };
       
 15269 
       
 15270 /**
       
 15271  * Check if argument is a string.
       
 15272  *
       
 15273  * @param {Object} value
       
 15274  * @return {Boolean}
       
 15275  */
       
 15276 exports.string = function(value) {
       
 15277     return typeof value === 'string'
       
 15278         || value instanceof String;
       
 15279 };
       
 15280 
       
 15281 /**
       
 15282  * Check if argument is a function.
       
 15283  *
       
 15284  * @param {Object} value
       
 15285  * @return {Boolean}
       
 15286  */
       
 15287 exports.fn = function(value) {
       
 15288     var type = Object.prototype.toString.call(value);
       
 15289 
       
 15290     return type === '[object Function]';
       
 15291 };
       
 15292 
       
 15293 
       
 15294 /***/ }),
       
 15295 /* 6 */
       
 15296 /***/ (function(module, exports, __webpack_require__) {
       
 15297 
       
 15298 var closest = __webpack_require__(7);
       
 15299 
       
 15300 /**
       
 15301  * Delegates event to a selector.
       
 15302  *
       
 15303  * @param {Element} element
       
 15304  * @param {String} selector
       
 15305  * @param {String} type
       
 15306  * @param {Function} callback
       
 15307  * @param {Boolean} useCapture
       
 15308  * @return {Object}
       
 15309  */
       
 15310 function _delegate(element, selector, type, callback, useCapture) {
       
 15311     var listenerFn = listener.apply(this, arguments);
       
 15312 
       
 15313     element.addEventListener(type, listenerFn, useCapture);
       
 15314 
       
 15315     return {
       
 15316         destroy: function() {
       
 15317             element.removeEventListener(type, listenerFn, useCapture);
       
 15318         }
       
 15319     }
       
 15320 }
       
 15321 
       
 15322 /**
       
 15323  * Delegates event to a selector.
       
 15324  *
       
 15325  * @param {Element|String|Array} [elements]
       
 15326  * @param {String} selector
       
 15327  * @param {String} type
       
 15328  * @param {Function} callback
       
 15329  * @param {Boolean} useCapture
       
 15330  * @return {Object}
       
 15331  */
       
 15332 function delegate(elements, selector, type, callback, useCapture) {
       
 15333     // Handle the regular Element usage
       
 15334     if (typeof elements.addEventListener === 'function') {
       
 15335         return _delegate.apply(null, arguments);
       
 15336     }
       
 15337 
       
 15338     // Handle Element-less usage, it defaults to global delegation
       
 15339     if (typeof type === 'function') {
       
 15340         // Use `document` as the first parameter, then apply arguments
       
 15341         // This is a short way to .unshift `arguments` without running into deoptimizations
       
 15342         return _delegate.bind(null, document).apply(null, arguments);
       
 15343     }
       
 15344 
       
 15345     // Handle Selector-based usage
       
 15346     if (typeof elements === 'string') {
       
 15347         elements = document.querySelectorAll(elements);
       
 15348     }
       
 15349 
       
 15350     // Handle Array-like based usage
       
 15351     return Array.prototype.map.call(elements, function (element) {
       
 15352         return _delegate(element, selector, type, callback, useCapture);
       
 15353     });
       
 15354 }
       
 15355 
       
 15356 /**
       
 15357  * Finds closest match and invokes callback.
       
 15358  *
       
 15359  * @param {Element} element
       
 15360  * @param {String} selector
       
 15361  * @param {String} type
       
 15362  * @param {Function} callback
       
 15363  * @return {Function}
       
 15364  */
       
 15365 function listener(element, selector, type, callback) {
       
 15366     return function(e) {
       
 15367         e.delegateTarget = closest(e.target, selector);
       
 15368 
       
 15369         if (e.delegateTarget) {
       
 15370             callback.call(element, e);
       
 15371         }
       
 15372     }
       
 15373 }
       
 15374 
       
 15375 module.exports = delegate;
       
 15376 
       
 15377 
       
 15378 /***/ }),
       
 15379 /* 7 */
       
 15380 /***/ (function(module, exports) {
       
 15381 
       
 15382 var DOCUMENT_NODE_TYPE = 9;
       
 15383 
       
 15384 /**
       
 15385  * A polyfill for Element.matches()
       
 15386  */
       
 15387 if (typeof Element !== 'undefined' && !Element.prototype.matches) {
       
 15388     var proto = Element.prototype;
       
 15389 
       
 15390     proto.matches = proto.matchesSelector ||
       
 15391                     proto.mozMatchesSelector ||
       
 15392                     proto.msMatchesSelector ||
       
 15393                     proto.oMatchesSelector ||
       
 15394                     proto.webkitMatchesSelector;
       
 15395 }
       
 15396 
       
 15397 /**
       
 15398  * Finds the closest parent that matches a selector.
       
 15399  *
       
 15400  * @param {Element} element
       
 15401  * @param {String} selector
       
 15402  * @return {Function}
       
 15403  */
       
 15404 function closest (element, selector) {
       
 15405     while (element && element.nodeType !== DOCUMENT_NODE_TYPE) {
       
 15406         if (typeof element.matches === 'function' &&
       
 15407             element.matches(selector)) {
       
 15408           return element;
       
 15409         }
       
 15410         element = element.parentNode;
       
 15411     }
       
 15412 }
       
 15413 
       
 15414 module.exports = closest;
       
 15415 
       
 15416 
       
 15417 /***/ })
       
 15418 /******/ ]);
       
 15419 });
       
 15420 
       
 15421 /***/ }),
       
 15422 /* 222 */
       
 15423 /***/ (function(module, exports, __webpack_require__) {
       
 15424 
       
 15425 var __WEBPACK_AMD_DEFINE_RESULT__;/*global define:false */
       
 15426 /**
       
 15427  * Copyright 2012-2017 Craig Campbell
       
 15428  *
       
 15429  * Licensed under the Apache License, Version 2.0 (the "License");
       
 15430  * you may not use this file except in compliance with the License.
       
 15431  * You may obtain a copy of the License at
       
 15432  *
       
 15433  * http://www.apache.org/licenses/LICENSE-2.0
       
 15434  *
       
 15435  * Unless required by applicable law or agreed to in writing, software
       
 15436  * distributed under the License is distributed on an "AS IS" BASIS,
       
 15437  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
       
 15438  * See the License for the specific language governing permissions and
       
 15439  * limitations under the License.
       
 15440  *
       
 15441  * Mousetrap is a simple keyboard shortcut library for Javascript with
       
 15442  * no external dependencies
       
 15443  *
       
 15444  * @version 1.6.3
       
 15445  * @url craig.is/killing/mice
       
 15446  */
       
 15447 (function(window, document, undefined) {
       
 15448 
       
 15449     // Check if mousetrap is used inside browser, if not, return
       
 15450     if (!window) {
       
 15451         return;
       
 15452     }
       
 15453 
       
 15454     /**
       
 15455      * mapping of special keycodes to their corresponding keys
       
 15456      *
       
 15457      * everything in this dictionary cannot use keypress events
       
 15458      * so it has to be here to map to the correct keycodes for
       
 15459      * keyup/keydown events
       
 15460      *
       
 15461      * @type {Object}
       
 15462      */
       
 15463     var _MAP = {
       
 15464         8: 'backspace',
       
 15465         9: 'tab',
       
 15466         13: 'enter',
       
 15467         16: 'shift',
       
 15468         17: 'ctrl',
       
 15469         18: 'alt',
       
 15470         20: 'capslock',
       
 15471         27: 'esc',
       
 15472         32: 'space',
       
 15473         33: 'pageup',
       
 15474         34: 'pagedown',
       
 15475         35: 'end',
       
 15476         36: 'home',
       
 15477         37: 'left',
       
 15478         38: 'up',
       
 15479         39: 'right',
       
 15480         40: 'down',
       
 15481         45: 'ins',
       
 15482         46: 'del',
       
 15483         91: 'meta',
       
 15484         93: 'meta',
       
 15485         224: 'meta'
       
 15486     };
       
 15487 
       
 15488     /**
       
 15489      * mapping for special characters so they can support
       
 15490      *
       
 15491      * this dictionary is only used incase you want to bind a
       
 15492      * keyup or keydown event to one of these keys
       
 15493      *
       
 15494      * @type {Object}
       
 15495      */
       
 15496     var _KEYCODE_MAP = {
       
 15497         106: '*',
       
 15498         107: '+',
       
 15499         109: '-',
       
 15500         110: '.',
       
 15501         111 : '/',
       
 15502         186: ';',
       
 15503         187: '=',
       
 15504         188: ',',
       
 15505         189: '-',
       
 15506         190: '.',
       
 15507         191: '/',
       
 15508         192: '`',
       
 15509         219: '[',
       
 15510         220: '\\',
       
 15511         221: ']',
       
 15512         222: '\''
       
 15513     };
       
 15514 
       
 15515     /**
       
 15516      * this is a mapping of keys that require shift on a US keypad
       
 15517      * back to the non shift equivelents
       
 15518      *
       
 15519      * this is so you can use keyup events with these keys
       
 15520      *
       
 15521      * note that this will only work reliably on US keyboards
       
 15522      *
       
 15523      * @type {Object}
       
 15524      */
       
 15525     var _SHIFT_MAP = {
       
 15526         '~': '`',
       
 15527         '!': '1',
       
 15528         '@': '2',
       
 15529         '#': '3',
       
 15530         '$': '4',
       
 15531         '%': '5',
       
 15532         '^': '6',
       
 15533         '&': '7',
       
 15534         '*': '8',
       
 15535         '(': '9',
       
 15536         ')': '0',
       
 15537         '_': '-',
       
 15538         '+': '=',
       
 15539         ':': ';',
       
 15540         '\"': '\'',
       
 15541         '<': ',',
       
 15542         '>': '.',
       
 15543         '?': '/',
       
 15544         '|': '\\'
       
 15545     };
       
 15546 
       
 15547     /**
       
 15548      * this is a list of special strings you can use to map
       
 15549      * to modifier keys when you specify your keyboard shortcuts
       
 15550      *
       
 15551      * @type {Object}
       
 15552      */
       
 15553     var _SPECIAL_ALIASES = {
       
 15554         'option': 'alt',
       
 15555         'command': 'meta',
       
 15556         'return': 'enter',
       
 15557         'escape': 'esc',
       
 15558         'plus': '+',
       
 15559         'mod': /Mac|iPod|iPhone|iPad/.test(navigator.platform) ? 'meta' : 'ctrl'
       
 15560     };
       
 15561 
       
 15562     /**
       
 15563      * variable to store the flipped version of _MAP from above
       
 15564      * needed to check if we should use keypress or not when no action
       
 15565      * is specified
       
 15566      *
       
 15567      * @type {Object|undefined}
       
 15568      */
       
 15569     var _REVERSE_MAP;
       
 15570 
       
 15571     /**
       
 15572      * loop through the f keys, f1 to f19 and add them to the map
       
 15573      * programatically
       
 15574      */
       
 15575     for (var i = 1; i < 20; ++i) {
       
 15576         _MAP[111 + i] = 'f' + i;
       
 15577     }
       
 15578 
       
 15579     /**
       
 15580      * loop through to map numbers on the numeric keypad
       
 15581      */
       
 15582     for (i = 0; i <= 9; ++i) {
       
 15583 
       
 15584         // This needs to use a string cause otherwise since 0 is falsey
       
 15585         // mousetrap will never fire for numpad 0 pressed as part of a keydown
       
 15586         // event.
       
 15587         //
       
 15588         // @see https://github.com/ccampbell/mousetrap/pull/258
       
 15589         _MAP[i + 96] = i.toString();
       
 15590     }
       
 15591 
       
 15592     /**
       
 15593      * cross browser add event method
       
 15594      *
       
 15595      * @param {Element|HTMLDocument} object
       
 15596      * @param {string} type
       
 15597      * @param {Function} callback
       
 15598      * @returns void
       
 15599      */
       
 15600     function _addEvent(object, type, callback) {
       
 15601         if (object.addEventListener) {
       
 15602             object.addEventListener(type, callback, false);
       
 15603             return;
       
 15604         }
       
 15605 
       
 15606         object.attachEvent('on' + type, callback);
       
 15607     }
       
 15608 
       
 15609     /**
       
 15610      * takes the event and returns the key character
       
 15611      *
       
 15612      * @param {Event} e
       
 15613      * @return {string}
       
 15614      */
       
 15615     function _characterFromEvent(e) {
       
 15616 
       
 15617         // for keypress events we should return the character as is
       
 15618         if (e.type == 'keypress') {
       
 15619             var character = String.fromCharCode(e.which);
       
 15620 
       
 15621             // if the shift key is not pressed then it is safe to assume
       
 15622             // that we want the character to be lowercase.  this means if
       
 15623             // you accidentally have caps lock on then your key bindings
       
 15624             // will continue to work
       
 15625             //
       
 15626             // the only side effect that might not be desired is if you
       
 15627             // bind something like 'A' cause you want to trigger an
       
 15628             // event when capital A is pressed caps lock will no longer
       
 15629             // trigger the event.  shift+a will though.
       
 15630             if (!e.shiftKey) {
       
 15631                 character = character.toLowerCase();
       
 15632             }
       
 15633 
       
 15634             return character;
       
 15635         }
       
 15636 
       
 15637         // for non keypress events the special maps are needed
       
 15638         if (_MAP[e.which]) {
       
 15639             return _MAP[e.which];
       
 15640         }
       
 15641 
       
 15642         if (_KEYCODE_MAP[e.which]) {
       
 15643             return _KEYCODE_MAP[e.which];
       
 15644         }
       
 15645 
       
 15646         // if it is not in the special map
       
 15647 
       
 15648         // with keydown and keyup events the character seems to always
       
 15649         // come in as an uppercase character whether you are pressing shift
       
 15650         // or not.  we should make sure it is always lowercase for comparisons
       
 15651         return String.fromCharCode(e.which).toLowerCase();
       
 15652     }
       
 15653 
       
 15654     /**
       
 15655      * checks if two arrays are equal
       
 15656      *
       
 15657      * @param {Array} modifiers1
       
 15658      * @param {Array} modifiers2
       
 15659      * @returns {boolean}
       
 15660      */
       
 15661     function _modifiersMatch(modifiers1, modifiers2) {
       
 15662         return modifiers1.sort().join(',') === modifiers2.sort().join(',');
       
 15663     }
       
 15664 
       
 15665     /**
       
 15666      * takes a key event and figures out what the modifiers are
       
 15667      *
       
 15668      * @param {Event} e
       
 15669      * @returns {Array}
       
 15670      */
       
 15671     function _eventModifiers(e) {
       
 15672         var modifiers = [];
       
 15673 
       
 15674         if (e.shiftKey) {
       
 15675             modifiers.push('shift');
       
 15676         }
       
 15677 
       
 15678         if (e.altKey) {
       
 15679             modifiers.push('alt');
       
 15680         }
       
 15681 
       
 15682         if (e.ctrlKey) {
       
 15683             modifiers.push('ctrl');
       
 15684         }
       
 15685 
       
 15686         if (e.metaKey) {
       
 15687             modifiers.push('meta');
       
 15688         }
       
 15689 
       
 15690         return modifiers;
       
 15691     }
       
 15692 
       
 15693     /**
       
 15694      * prevents default for this event
       
 15695      *
       
 15696      * @param {Event} e
       
 15697      * @returns void
       
 15698      */
       
 15699     function _preventDefault(e) {
       
 15700         if (e.preventDefault) {
       
 15701             e.preventDefault();
       
 15702             return;
       
 15703         }
       
 15704 
       
 15705         e.returnValue = false;
       
 15706     }
       
 15707 
       
 15708     /**
       
 15709      * stops propogation for this event
       
 15710      *
       
 15711      * @param {Event} e
       
 15712      * @returns void
       
 15713      */
       
 15714     function _stopPropagation(e) {
       
 15715         if (e.stopPropagation) {
       
 15716             e.stopPropagation();
       
 15717             return;
       
 15718         }
       
 15719 
       
 15720         e.cancelBubble = true;
       
 15721     }
       
 15722 
       
 15723     /**
       
 15724      * determines if the keycode specified is a modifier key or not
       
 15725      *
       
 15726      * @param {string} key
       
 15727      * @returns {boolean}
       
 15728      */
       
 15729     function _isModifier(key) {
       
 15730         return key == 'shift' || key == 'ctrl' || key == 'alt' || key == 'meta';
       
 15731     }
       
 15732 
       
 15733     /**
       
 15734      * reverses the map lookup so that we can look for specific keys
       
 15735      * to see what can and can't use keypress
       
 15736      *
       
 15737      * @return {Object}
       
 15738      */
       
 15739     function _getReverseMap() {
       
 15740         if (!_REVERSE_MAP) {
       
 15741             _REVERSE_MAP = {};
       
 15742             for (var key in _MAP) {
       
 15743 
       
 15744                 // pull out the numeric keypad from here cause keypress should
       
 15745                 // be able to detect the keys from the character
       
 15746                 if (key > 95 && key < 112) {
       
 15747                     continue;
       
 15748                 }
       
 15749 
       
 15750                 if (_MAP.hasOwnProperty(key)) {
       
 15751                     _REVERSE_MAP[_MAP[key]] = key;
       
 15752                 }
       
 15753             }
       
 15754         }
       
 15755         return _REVERSE_MAP;
       
 15756     }
       
 15757 
       
 15758     /**
       
 15759      * picks the best action based on the key combination
       
 15760      *
       
 15761      * @param {string} key - character for key
       
 15762      * @param {Array} modifiers
       
 15763      * @param {string=} action passed in
       
 15764      */
       
 15765     function _pickBestAction(key, modifiers, action) {
       
 15766 
       
 15767         // if no action was picked in we should try to pick the one
       
 15768         // that we think would work best for this key
       
 15769         if (!action) {
       
 15770             action = _getReverseMap()[key] ? 'keydown' : 'keypress';
       
 15771         }
       
 15772 
       
 15773         // modifier keys don't work as expected with keypress,
       
 15774         // switch to keydown
       
 15775         if (action == 'keypress' && modifiers.length) {
       
 15776             action = 'keydown';
       
 15777         }
       
 15778 
       
 15779         return action;
       
 15780     }
       
 15781 
       
 15782     /**
       
 15783      * Converts from a string key combination to an array
       
 15784      *
       
 15785      * @param  {string} combination like "command+shift+l"
       
 15786      * @return {Array}
       
 15787      */
       
 15788     function _keysFromString(combination) {
       
 15789         if (combination === '+') {
       
 15790             return ['+'];
       
 15791         }
       
 15792 
       
 15793         combination = combination.replace(/\+{2}/g, '+plus');
       
 15794         return combination.split('+');
       
 15795     }
       
 15796 
       
 15797     /**
       
 15798      * Gets info for a specific key combination
       
 15799      *
       
 15800      * @param  {string} combination key combination ("command+s" or "a" or "*")
       
 15801      * @param  {string=} action
       
 15802      * @returns {Object}
       
 15803      */
       
 15804     function _getKeyInfo(combination, action) {
       
 15805         var keys;
       
 15806         var key;
       
 15807         var i;
       
 15808         var modifiers = [];
       
 15809 
       
 15810         // take the keys from this pattern and figure out what the actual
       
 15811         // pattern is all about
       
 15812         keys = _keysFromString(combination);
       
 15813 
       
 15814         for (i = 0; i < keys.length; ++i) {
       
 15815             key = keys[i];
       
 15816 
       
 15817             // normalize key names
       
 15818             if (_SPECIAL_ALIASES[key]) {
       
 15819                 key = _SPECIAL_ALIASES[key];
       
 15820             }
       
 15821 
       
 15822             // if this is not a keypress event then we should
       
 15823             // be smart about using shift keys
       
 15824             // this will only work for US keyboards however
       
 15825             if (action && action != 'keypress' && _SHIFT_MAP[key]) {
       
 15826                 key = _SHIFT_MAP[key];
       
 15827                 modifiers.push('shift');
       
 15828             }
       
 15829 
       
 15830             // if this key is a modifier then add it to the list of modifiers
       
 15831             if (_isModifier(key)) {
       
 15832                 modifiers.push(key);
       
 15833             }
       
 15834         }
       
 15835 
       
 15836         // depending on what the key combination is
       
 15837         // we will try to pick the best event for it
       
 15838         action = _pickBestAction(key, modifiers, action);
       
 15839 
       
 15840         return {
       
 15841             key: key,
       
 15842             modifiers: modifiers,
       
 15843             action: action
       
 15844         };
       
 15845     }
       
 15846 
       
 15847     function _belongsTo(element, ancestor) {
       
 15848         if (element === null || element === document) {
       
 15849             return false;
       
 15850         }
       
 15851 
       
 15852         if (element === ancestor) {
       
 15853             return true;
       
 15854         }
       
 15855 
       
 15856         return _belongsTo(element.parentNode, ancestor);
       
 15857     }
       
 15858 
       
 15859     function Mousetrap(targetElement) {
       
 15860         var self = this;
       
 15861 
       
 15862         targetElement = targetElement || document;
       
 15863 
       
 15864         if (!(self instanceof Mousetrap)) {
       
 15865             return new Mousetrap(targetElement);
       
 15866         }
       
 15867 
       
 15868         /**
       
 15869          * element to attach key events to
       
 15870          *
       
 15871          * @type {Element}
       
 15872          */
       
 15873         self.target = targetElement;
       
 15874 
       
 15875         /**
       
 15876          * a list of all the callbacks setup via Mousetrap.bind()
       
 15877          *
       
 15878          * @type {Object}
       
 15879          */
       
 15880         self._callbacks = {};
       
 15881 
       
 15882         /**
       
 15883          * direct map of string combinations to callbacks used for trigger()
       
 15884          *
       
 15885          * @type {Object}
       
 15886          */
       
 15887         self._directMap = {};
       
 15888 
       
 15889         /**
       
 15890          * keeps track of what level each sequence is at since multiple
       
 15891          * sequences can start out with the same sequence
       
 15892          *
       
 15893          * @type {Object}
       
 15894          */
       
 15895         var _sequenceLevels = {};
       
 15896 
       
 15897         /**
       
 15898          * variable to store the setTimeout call
       
 15899          *
       
 15900          * @type {null|number}
       
 15901          */
       
 15902         var _resetTimer;
       
 15903 
       
 15904         /**
       
 15905          * temporary state where we will ignore the next keyup
       
 15906          *
       
 15907          * @type {boolean|string}
       
 15908          */
       
 15909         var _ignoreNextKeyup = false;
       
 15910 
       
 15911         /**
       
 15912          * temporary state where we will ignore the next keypress
       
 15913          *
       
 15914          * @type {boolean}
       
 15915          */
       
 15916         var _ignoreNextKeypress = false;
       
 15917 
       
 15918         /**
       
 15919          * are we currently inside of a sequence?
       
 15920          * type of action ("keyup" or "keydown" or "keypress") or false
       
 15921          *
       
 15922          * @type {boolean|string}
       
 15923          */
       
 15924         var _nextExpectedAction = false;
       
 15925 
       
 15926         /**
       
 15927          * resets all sequence counters except for the ones passed in
       
 15928          *
       
 15929          * @param {Object} doNotReset
       
 15930          * @returns void
       
 15931          */
       
 15932         function _resetSequences(doNotReset) {
       
 15933             doNotReset = doNotReset || {};
       
 15934 
       
 15935             var activeSequences = false,
       
 15936                 key;
       
 15937 
       
 15938             for (key in _sequenceLevels) {
       
 15939                 if (doNotReset[key]) {
       
 15940                     activeSequences = true;
       
 15941                     continue;
       
 15942                 }
       
 15943                 _sequenceLevels[key] = 0;
       
 15944             }
       
 15945 
       
 15946             if (!activeSequences) {
       
 15947                 _nextExpectedAction = false;
       
 15948             }
       
 15949         }
       
 15950 
       
 15951         /**
       
 15952          * finds all callbacks that match based on the keycode, modifiers,
       
 15953          * and action
       
 15954          *
       
 15955          * @param {string} character
       
 15956          * @param {Array} modifiers
       
 15957          * @param {Event|Object} e
       
 15958          * @param {string=} sequenceName - name of the sequence we are looking for
       
 15959          * @param {string=} combination
       
 15960          * @param {number=} level
       
 15961          * @returns {Array}
       
 15962          */
       
 15963         function _getMatches(character, modifiers, e, sequenceName, combination, level) {
       
 15964             var i;
       
 15965             var callback;
       
 15966             var matches = [];
       
 15967             var action = e.type;
       
 15968 
       
 15969             // if there are no events related to this keycode
       
 15970             if (!self._callbacks[character]) {
       
 15971                 return [];
       
 15972             }
       
 15973 
       
 15974             // if a modifier key is coming up on its own we should allow it
       
 15975             if (action == 'keyup' && _isModifier(character)) {
       
 15976                 modifiers = [character];
       
 15977             }
       
 15978 
       
 15979             // loop through all callbacks for the key that was pressed
       
 15980             // and see if any of them match
       
 15981             for (i = 0; i < self._callbacks[character].length; ++i) {
       
 15982                 callback = self._callbacks[character][i];
       
 15983 
       
 15984                 // if a sequence name is not specified, but this is a sequence at
       
 15985                 // the wrong level then move onto the next match
       
 15986                 if (!sequenceName && callback.seq && _sequenceLevels[callback.seq] != callback.level) {
       
 15987                     continue;
       
 15988                 }
       
 15989 
       
 15990                 // if the action we are looking for doesn't match the action we got
       
 15991                 // then we should keep going
       
 15992                 if (action != callback.action) {
       
 15993                     continue;
       
 15994                 }
       
 15995 
       
 15996                 // if this is a keypress event and the meta key and control key
       
 15997                 // are not pressed that means that we need to only look at the
       
 15998                 // character, otherwise check the modifiers as well
       
 15999                 //
       
 16000                 // chrome will not fire a keypress if meta or control is down
       
 16001                 // safari will fire a keypress if meta or meta+shift is down
       
 16002                 // firefox will fire a keypress if meta or control is down
       
 16003                 if ((action == 'keypress' && !e.metaKey && !e.ctrlKey) || _modifiersMatch(modifiers, callback.modifiers)) {
       
 16004 
       
 16005                     // when you bind a combination or sequence a second time it
       
 16006                     // should overwrite the first one.  if a sequenceName or
       
 16007                     // combination is specified in this call it does just that
       
 16008                     //
       
 16009                     // @todo make deleting its own method?
       
 16010                     var deleteCombo = !sequenceName && callback.combo == combination;
       
 16011                     var deleteSequence = sequenceName && callback.seq == sequenceName && callback.level == level;
       
 16012                     if (deleteCombo || deleteSequence) {
       
 16013                         self._callbacks[character].splice(i, 1);
       
 16014                     }
       
 16015 
       
 16016                     matches.push(callback);
       
 16017                 }
       
 16018             }
       
 16019 
       
 16020             return matches;
       
 16021         }
       
 16022 
       
 16023         /**
       
 16024          * actually calls the callback function
       
 16025          *
       
 16026          * if your callback function returns false this will use the jquery
       
 16027          * convention - prevent default and stop propogation on the event
       
 16028          *
       
 16029          * @param {Function} callback
       
 16030          * @param {Event} e
       
 16031          * @returns void
       
 16032          */
       
 16033         function _fireCallback(callback, e, combo, sequence) {
       
 16034 
       
 16035             // if this event should not happen stop here
       
 16036             if (self.stopCallback(e, e.target || e.srcElement, combo, sequence)) {
       
 16037                 return;
       
 16038             }
       
 16039 
       
 16040             if (callback(e, combo) === false) {
       
 16041                 _preventDefault(e);
       
 16042                 _stopPropagation(e);
       
 16043             }
       
 16044         }
       
 16045 
       
 16046         /**
       
 16047          * handles a character key event
       
 16048          *
       
 16049          * @param {string} character
       
 16050          * @param {Array} modifiers
       
 16051          * @param {Event} e
       
 16052          * @returns void
       
 16053          */
       
 16054         self._handleKey = function(character, modifiers, e) {
       
 16055             var callbacks = _getMatches(character, modifiers, e);
       
 16056             var i;
       
 16057             var doNotReset = {};
       
 16058             var maxLevel = 0;
       
 16059             var processedSequenceCallback = false;
       
 16060 
       
 16061             // Calculate the maxLevel for sequences so we can only execute the longest callback sequence
       
 16062             for (i = 0; i < callbacks.length; ++i) {
       
 16063                 if (callbacks[i].seq) {
       
 16064                     maxLevel = Math.max(maxLevel, callbacks[i].level);
       
 16065                 }
       
 16066             }
       
 16067 
       
 16068             // loop through matching callbacks for this key event
       
 16069             for (i = 0; i < callbacks.length; ++i) {
       
 16070 
       
 16071                 // fire for all sequence callbacks
       
 16072                 // this is because if for example you have multiple sequences
       
 16073                 // bound such as "g i" and "g t" they both need to fire the
       
 16074                 // callback for matching g cause otherwise you can only ever
       
 16075                 // match the first one
       
 16076                 if (callbacks[i].seq) {
       
 16077 
       
 16078                     // only fire callbacks for the maxLevel to prevent
       
 16079                     // subsequences from also firing
       
 16080                     //
       
 16081                     // for example 'a option b' should not cause 'option b' to fire
       
 16082                     // even though 'option b' is part of the other sequence
       
 16083                     //
       
 16084                     // any sequences that do not match here will be discarded
       
 16085                     // below by the _resetSequences call
       
 16086                     if (callbacks[i].level != maxLevel) {
       
 16087                         continue;
       
 16088                     }
       
 16089 
       
 16090                     processedSequenceCallback = true;
       
 16091 
       
 16092                     // keep a list of which sequences were matches for later
       
 16093                     doNotReset[callbacks[i].seq] = 1;
       
 16094                     _fireCallback(callbacks[i].callback, e, callbacks[i].combo, callbacks[i].seq);
       
 16095                     continue;
       
 16096                 }
       
 16097 
       
 16098                 // if there were no sequence matches but we are still here
       
 16099                 // that means this is a regular match so we should fire that
       
 16100                 if (!processedSequenceCallback) {
       
 16101                     _fireCallback(callbacks[i].callback, e, callbacks[i].combo);
       
 16102                 }
       
 16103             }
       
 16104 
       
 16105             // if the key you pressed matches the type of sequence without
       
 16106             // being a modifier (ie "keyup" or "keypress") then we should
       
 16107             // reset all sequences that were not matched by this event
       
 16108             //
       
 16109             // this is so, for example, if you have the sequence "h a t" and you
       
 16110             // type "h e a r t" it does not match.  in this case the "e" will
       
 16111             // cause the sequence to reset
       
 16112             //
       
 16113             // modifier keys are ignored because you can have a sequence
       
 16114             // that contains modifiers such as "enter ctrl+space" and in most
       
 16115             // cases the modifier key will be pressed before the next key
       
 16116             //
       
 16117             // also if you have a sequence such as "ctrl+b a" then pressing the
       
 16118             // "b" key will trigger a "keypress" and a "keydown"
       
 16119             //
       
 16120             // the "keydown" is expected when there is a modifier, but the
       
 16121             // "keypress" ends up matching the _nextExpectedAction since it occurs
       
 16122             // after and that causes the sequence to reset
       
 16123             //
       
 16124             // we ignore keypresses in a sequence that directly follow a keydown
       
 16125             // for the same character
       
 16126             var ignoreThisKeypress = e.type == 'keypress' && _ignoreNextKeypress;
       
 16127             if (e.type == _nextExpectedAction && !_isModifier(character) && !ignoreThisKeypress) {
       
 16128                 _resetSequences(doNotReset);
       
 16129             }
       
 16130 
       
 16131             _ignoreNextKeypress = processedSequenceCallback && e.type == 'keydown';
       
 16132         };
       
 16133 
       
 16134         /**
       
 16135          * handles a keydown event
       
 16136          *
       
 16137          * @param {Event} e
       
 16138          * @returns void
       
 16139          */
       
 16140         function _handleKeyEvent(e) {
       
 16141 
       
 16142             // normalize e.which for key events
       
 16143             // @see http://stackoverflow.com/questions/4285627/javascript-keycode-vs-charcode-utter-confusion
       
 16144             if (typeof e.which !== 'number') {
       
 16145                 e.which = e.keyCode;
       
 16146             }
       
 16147 
       
 16148             var character = _characterFromEvent(e);
       
 16149 
       
 16150             // no character found then stop
       
 16151             if (!character) {
       
 16152                 return;
       
 16153             }
       
 16154 
       
 16155             // need to use === for the character check because the character can be 0
       
 16156             if (e.type == 'keyup' && _ignoreNextKeyup === character) {
       
 16157                 _ignoreNextKeyup = false;
       
 16158                 return;
       
 16159             }
       
 16160 
       
 16161             self.handleKey(character, _eventModifiers(e), e);
       
 16162         }
       
 16163 
       
 16164         /**
       
 16165          * called to set a 1 second timeout on the specified sequence
       
 16166          *
       
 16167          * this is so after each key press in the sequence you have 1 second
       
 16168          * to press the next key before you have to start over
       
 16169          *
       
 16170          * @returns void
       
 16171          */
       
 16172         function _resetSequenceTimer() {
       
 16173             clearTimeout(_resetTimer);
       
 16174             _resetTimer = setTimeout(_resetSequences, 1000);
       
 16175         }
       
 16176 
       
 16177         /**
       
 16178          * binds a key sequence to an event
       
 16179          *
       
 16180          * @param {string} combo - combo specified in bind call
       
 16181          * @param {Array} keys
       
 16182          * @param {Function} callback
       
 16183          * @param {string=} action
       
 16184          * @returns void
       
 16185          */
       
 16186         function _bindSequence(combo, keys, callback, action) {
       
 16187 
       
 16188             // start off by adding a sequence level record for this combination
       
 16189             // and setting the level to 0
       
 16190             _sequenceLevels[combo] = 0;
       
 16191 
       
 16192             /**
       
 16193              * callback to increase the sequence level for this sequence and reset
       
 16194              * all other sequences that were active
       
 16195              *
       
 16196              * @param {string} nextAction
       
 16197              * @returns {Function}
       
 16198              */
       
 16199             function _increaseSequence(nextAction) {
       
 16200                 return function() {
       
 16201                     _nextExpectedAction = nextAction;
       
 16202                     ++_sequenceLevels[combo];
       
 16203                     _resetSequenceTimer();
       
 16204                 };
       
 16205             }
       
 16206 
       
 16207             /**
       
 16208              * wraps the specified callback inside of another function in order
       
 16209              * to reset all sequence counters as soon as this sequence is done
       
 16210              *
       
 16211              * @param {Event} e
       
 16212              * @returns void
       
 16213              */
       
 16214             function _callbackAndReset(e) {
       
 16215                 _fireCallback(callback, e, combo);
       
 16216 
       
 16217                 // we should ignore the next key up if the action is key down
       
 16218                 // or keypress.  this is so if you finish a sequence and
       
 16219                 // release the key the final key will not trigger a keyup
       
 16220                 if (action !== 'keyup') {
       
 16221                     _ignoreNextKeyup = _characterFromEvent(e);
       
 16222                 }
       
 16223 
       
 16224                 // weird race condition if a sequence ends with the key
       
 16225                 // another sequence begins with
       
 16226                 setTimeout(_resetSequences, 10);
       
 16227             }
       
 16228 
       
 16229             // loop through keys one at a time and bind the appropriate callback
       
 16230             // function.  for any key leading up to the final one it should
       
 16231             // increase the sequence. after the final, it should reset all sequences
       
 16232             //
       
 16233             // if an action is specified in the original bind call then that will
       
 16234             // be used throughout.  otherwise we will pass the action that the
       
 16235             // next key in the sequence should match.  this allows a sequence
       
 16236             // to mix and match keypress and keydown events depending on which
       
 16237             // ones are better suited to the key provided
       
 16238             for (var i = 0; i < keys.length; ++i) {
       
 16239                 var isFinal = i + 1 === keys.length;
       
 16240                 var wrappedCallback = isFinal ? _callbackAndReset : _increaseSequence(action || _getKeyInfo(keys[i + 1]).action);
       
 16241                 _bindSingle(keys[i], wrappedCallback, action, combo, i);
       
 16242             }
       
 16243         }
       
 16244 
       
 16245         /**
       
 16246          * binds a single keyboard combination
       
 16247          *
       
 16248          * @param {string} combination
       
 16249          * @param {Function} callback
       
 16250          * @param {string=} action
       
 16251          * @param {string=} sequenceName - name of sequence if part of sequence
       
 16252          * @param {number=} level - what part of the sequence the command is
       
 16253          * @returns void
       
 16254          */
       
 16255         function _bindSingle(combination, callback, action, sequenceName, level) {
       
 16256 
       
 16257             // store a direct mapped reference for use with Mousetrap.trigger
       
 16258             self._directMap[combination + ':' + action] = callback;
       
 16259 
       
 16260             // make sure multiple spaces in a row become a single space
       
 16261             combination = combination.replace(/\s+/g, ' ');
       
 16262 
       
 16263             var sequence = combination.split(' ');
       
 16264             var info;
       
 16265 
       
 16266             // if this pattern is a sequence of keys then run through this method
       
 16267             // to reprocess each pattern one key at a time
       
 16268             if (sequence.length > 1) {
       
 16269                 _bindSequence(combination, sequence, callback, action);
       
 16270                 return;
       
 16271             }
       
 16272 
       
 16273             info = _getKeyInfo(combination, action);
       
 16274 
       
 16275             // make sure to initialize array if this is the first time
       
 16276             // a callback is added for this key
       
 16277             self._callbacks[info.key] = self._callbacks[info.key] || [];
       
 16278 
       
 16279             // remove an existing match if there is one
       
 16280             _getMatches(info.key, info.modifiers, {type: info.action}, sequenceName, combination, level);
       
 16281 
       
 16282             // add this call back to the array
       
 16283             // if it is a sequence put it at the beginning
       
 16284             // if not put it at the end
       
 16285             //
       
 16286             // this is important because the way these are processed expects
       
 16287             // the sequence ones to come first
       
 16288             self._callbacks[info.key][sequenceName ? 'unshift' : 'push']({
       
 16289                 callback: callback,
       
 16290                 modifiers: info.modifiers,
       
 16291                 action: info.action,
       
 16292                 seq: sequenceName,
       
 16293                 level: level,
       
 16294                 combo: combination
       
 16295             });
       
 16296         }
       
 16297 
       
 16298         /**
       
 16299          * binds multiple combinations to the same callback
       
 16300          *
       
 16301          * @param {Array} combinations
       
 16302          * @param {Function} callback
       
 16303          * @param {string|undefined} action
       
 16304          * @returns void
       
 16305          */
       
 16306         self._bindMultiple = function(combinations, callback, action) {
       
 16307             for (var i = 0; i < combinations.length; ++i) {
       
 16308                 _bindSingle(combinations[i], callback, action);
       
 16309             }
       
 16310         };
       
 16311 
       
 16312         // start!
       
 16313         _addEvent(targetElement, 'keypress', _handleKeyEvent);
       
 16314         _addEvent(targetElement, 'keydown', _handleKeyEvent);
       
 16315         _addEvent(targetElement, 'keyup', _handleKeyEvent);
       
 16316     }
       
 16317 
       
 16318     /**
       
 16319      * binds an event to mousetrap
       
 16320      *
       
 16321      * can be a single key, a combination of keys separated with +,
       
 16322      * an array of keys, or a sequence of keys separated by spaces
       
 16323      *
       
 16324      * be sure to list the modifier keys first to make sure that the
       
 16325      * correct key ends up getting bound (the last key in the pattern)
       
 16326      *
       
 16327      * @param {string|Array} keys
       
 16328      * @param {Function} callback
       
 16329      * @param {string=} action - 'keypress', 'keydown', or 'keyup'
       
 16330      * @returns void
       
 16331      */
       
 16332     Mousetrap.prototype.bind = function(keys, callback, action) {
       
 16333         var self = this;
       
 16334         keys = keys instanceof Array ? keys : [keys];
       
 16335         self._bindMultiple.call(self, keys, callback, action);
       
 16336         return self;
       
 16337     };
       
 16338 
       
 16339     /**
       
 16340      * unbinds an event to mousetrap
       
 16341      *
       
 16342      * the unbinding sets the callback function of the specified key combo
       
 16343      * to an empty function and deletes the corresponding key in the
       
 16344      * _directMap dict.
       
 16345      *
       
 16346      * TODO: actually remove this from the _callbacks dictionary instead
       
 16347      * of binding an empty function
       
 16348      *
       
 16349      * the keycombo+action has to be exactly the same as
       
 16350      * it was defined in the bind method
       
 16351      *
       
 16352      * @param {string|Array} keys
       
 16353      * @param {string} action
       
 16354      * @returns void
       
 16355      */
       
 16356     Mousetrap.prototype.unbind = function(keys, action) {
       
 16357         var self = this;
       
 16358         return self.bind.call(self, keys, function() {}, action);
       
 16359     };
       
 16360 
       
 16361     /**
       
 16362      * triggers an event that has already been bound
       
 16363      *
       
 16364      * @param {string} keys
       
 16365      * @param {string=} action
       
 16366      * @returns void
       
 16367      */
       
 16368     Mousetrap.prototype.trigger = function(keys, action) {
       
 16369         var self = this;
       
 16370         if (self._directMap[keys + ':' + action]) {
       
 16371             self._directMap[keys + ':' + action]({}, keys);
       
 16372         }
       
 16373         return self;
       
 16374     };
       
 16375 
       
 16376     /**
       
 16377      * resets the library back to its initial state.  this is useful
       
 16378      * if you want to clear out the current keyboard shortcuts and bind
       
 16379      * new ones - for example if you switch to another page
       
 16380      *
       
 16381      * @returns void
       
 16382      */
       
 16383     Mousetrap.prototype.reset = function() {
       
 16384         var self = this;
       
 16385         self._callbacks = {};
       
 16386         self._directMap = {};
       
 16387         return self;
       
 16388     };
       
 16389 
       
 16390     /**
       
 16391      * should we stop this event before firing off callbacks
       
 16392      *
       
 16393      * @param {Event} e
       
 16394      * @param {Element} element
       
 16395      * @return {boolean}
       
 16396      */
       
 16397     Mousetrap.prototype.stopCallback = function(e, element) {
       
 16398         var self = this;
       
 16399 
       
 16400         // if the element has the class "mousetrap" then no need to stop
       
 16401         if ((' ' + element.className + ' ').indexOf(' mousetrap ') > -1) {
       
 16402             return false;
       
 16403         }
       
 16404 
       
 16405         if (_belongsTo(element, self.target)) {
       
 16406             return false;
       
 16407         }
       
 16408 
       
 16409         // Events originating from a shadow DOM are re-targetted and `e.target` is the shadow host,
       
 16410         // not the initial event target in the shadow tree. Note that not all events cross the
       
 16411         // shadow boundary.
       
 16412         // For shadow trees with `mode: 'open'`, the initial event target is the first element in
       
 16413         // the event’s composed path. For shadow trees with `mode: 'closed'`, the initial event
       
 16414         // target cannot be obtained.
       
 16415         if ('composedPath' in e && typeof e.composedPath === 'function') {
       
 16416             // For open shadow trees, update `element` so that the following check works.
       
 16417             var initialEventTarget = e.composedPath()[0];
       
 16418             if (initialEventTarget !== e.target) {
       
 16419                 element = initialEventTarget;
       
 16420             }
       
 16421         }
       
 16422 
       
 16423         // stop for input, select, and textarea
       
 16424         return element.tagName == 'INPUT' || element.tagName == 'SELECT' || element.tagName == 'TEXTAREA' || element.isContentEditable;
       
 16425     };
       
 16426 
       
 16427     /**
       
 16428      * exposes _handleKey publicly so it can be overwritten by extensions
       
 16429      */
       
 16430     Mousetrap.prototype.handleKey = function() {
       
 16431         var self = this;
       
 16432         return self._handleKey.apply(self, arguments);
       
 16433     };
       
 16434 
       
 16435     /**
       
 16436      * allow custom key mappings
       
 16437      */
       
 16438     Mousetrap.addKeycodes = function(object) {
       
 16439         for (var key in object) {
       
 16440             if (object.hasOwnProperty(key)) {
       
 16441                 _MAP[key] = object[key];
       
 16442             }
       
 16443         }
       
 16444         _REVERSE_MAP = null;
       
 16445     };
       
 16446 
       
 16447     /**
       
 16448      * Init the global mousetrap functions
       
 16449      *
       
 16450      * This method is needed to allow the global mousetrap functions to work
       
 16451      * now that mousetrap is a constructor function.
       
 16452      */
       
 16453     Mousetrap.init = function() {
       
 16454         var documentMousetrap = Mousetrap(document);
       
 16455         for (var method in documentMousetrap) {
       
 16456             if (method.charAt(0) !== '_') {
       
 16457                 Mousetrap[method] = (function(method) {
       
 16458                     return function() {
       
 16459                         return documentMousetrap[method].apply(documentMousetrap, arguments);
       
 16460                     };
       
 16461                 } (method));
       
 16462             }
       
 16463         }
       
 16464     };
       
 16465 
       
 16466     Mousetrap.init();
       
 16467 
       
 16468     // expose mousetrap to the global object
       
 16469     window.Mousetrap = Mousetrap;
       
 16470 
       
 16471     // expose as a common js module
       
 16472     if ( true && module.exports) {
       
 16473         module.exports = Mousetrap;
       
 16474     }
       
 16475 
       
 16476     // expose mousetrap as an AMD module
       
 16477     if (true) {
       
 16478         !(__WEBPACK_AMD_DEFINE_RESULT__ = (function() {
       
 16479             return Mousetrap;
       
 16480         }).call(exports, __webpack_require__, exports, module),
       
 16481 				__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
       
 16482     }
       
 16483 }) (typeof window !== 'undefined' ? window : null, typeof  window !== 'undefined' ? document : null);
       
 16484 
       
 16485 
       
 16486 /***/ }),
       
 16487 /* 223 */
       
 16488 /***/ (function(module, exports, __webpack_require__) {
       
 16489 
       
 16490 // eslint-disable-next-line import/no-unresolved
       
 16491 module.exports = __webpack_require__(285);
       
 16492 
       
 16493 
       
 16494 /***/ }),
       
 16495 /* 224 */,
       
 16496 /* 225 */,
       
 16497 /* 226 */,
       
 16498 /* 227 */,
       
 16499 /* 228 */,
       
 16500 /* 229 */,
       
 16501 /* 230 */,
       
 16502 /* 231 */,
       
 16503 /* 232 */,
       
 16504 /* 233 */,
       
 16505 /* 234 */,
       
 16506 /* 235 */,
       
 16507 /* 236 */,
       
 16508 /* 237 */,
       
 16509 /* 238 */,
       
 16510 /* 239 */,
       
 16511 /* 240 */,
       
 16512 /* 241 */,
       
 16513 /* 242 */,
       
 16514 /* 243 */,
       
 16515 /* 244 */,
       
 16516 /* 245 */,
       
 16517 /* 246 */,
       
 16518 /* 247 */,
       
 16519 /* 248 */,
       
 16520 /* 249 */,
       
 16521 /* 250 */,
       
 16522 /* 251 */,
       
 16523 /* 252 */,
       
 16524 /* 253 */,
       
 16525 /* 254 */,
       
 16526 /* 255 */,
       
 16527 /* 256 */,
       
 16528 /* 257 */,
       
 16529 /* 258 */,
       
 16530 /* 259 */
       
 16531 /***/ (function(module, exports) {
       
 16532 
       
 16533 /**
       
 16534  * adds a bindGlobal method to Mousetrap that allows you to
       
 16535  * bind specific keyboard shortcuts that will still work
       
 16536  * inside a text input field
       
 16537  *
       
 16538  * usage:
       
 16539  * Mousetrap.bindGlobal('ctrl+s', _saveChanges);
       
 16540  */
       
 16541 /* global Mousetrap:true */
       
 16542 (function(Mousetrap) {
       
 16543     var _globalCallbacks = {};
       
 16544     var _originalStopCallback = Mousetrap.prototype.stopCallback;
       
 16545 
       
 16546     Mousetrap.prototype.stopCallback = function(e, element, combo, sequence) {
       
 16547         var self = this;
       
 16548 
       
 16549         if (self.paused) {
       
 16550             return true;
       
 16551         }
       
 16552 
       
 16553         if (_globalCallbacks[combo] || _globalCallbacks[sequence]) {
       
 16554             return false;
       
 16555         }
       
 16556 
       
 16557         return _originalStopCallback.call(self, e, element, combo);
       
 16558     };
       
 16559 
       
 16560     Mousetrap.prototype.bindGlobal = function(keys, callback, action) {
       
 16561         var self = this;
       
 16562         self.bind(keys, callback, action);
       
 16563 
       
 16564         if (keys instanceof Array) {
       
 16565             for (var i = 0; i < keys.length; i++) {
       
 16566                 _globalCallbacks[keys[i]] = true;
       
 16567             }
       
 16568             return;
       
 16569         }
       
 16570 
       
 16571         _globalCallbacks[keys] = true;
       
 16572     };
       
 16573 
       
 16574     Mousetrap.init();
       
 16575 }) (Mousetrap);
       
 16576 
       
 16577 
       
 16578 /***/ }),
       
 16579 /* 260 */
       
 16580 /***/ (function(module, exports, __webpack_require__) {
       
 16581 
       
 16582 // eslint-disable-next-line import/no-unresolved
       
 16583 __webpack_require__(261);
       
 16584 
       
 16585 
       
 16586 /***/ }),
       
 16587 /* 261 */
       
 16588 /***/ (function(module, exports, __webpack_require__) {
       
 16589 
       
 16590 "use strict";
       
 16591 
       
 16592 
       
 16593 var _registerCSSInterfaceWithDefaultTheme = __webpack_require__(262);
       
 16594 
       
 16595 var _registerCSSInterfaceWithDefaultTheme2 = _interopRequireDefault(_registerCSSInterfaceWithDefaultTheme);
       
 16596 
       
 16597 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 16598 
       
 16599 (0, _registerCSSInterfaceWithDefaultTheme2['default'])();
       
 16600 
       
 16601 /***/ }),
       
 16602 /* 262 */
       
 16603 /***/ (function(module, exports, __webpack_require__) {
       
 16604 
       
 16605 "use strict";
       
 16606 
       
 16607 
       
 16608 Object.defineProperty(exports, "__esModule", {
       
 16609   value: true
       
 16610 });
       
 16611 exports['default'] = registerCSSInterfaceWithDefaultTheme;
       
 16612 
       
 16613 var _reactWithStylesInterfaceCss = __webpack_require__(263);
       
 16614 
       
 16615 var _reactWithStylesInterfaceCss2 = _interopRequireDefault(_reactWithStylesInterfaceCss);
       
 16616 
       
 16617 var _registerInterfaceWithDefaultTheme = __webpack_require__(284);
       
 16618 
       
 16619 var _registerInterfaceWithDefaultTheme2 = _interopRequireDefault(_registerInterfaceWithDefaultTheme);
       
 16620 
       
 16621 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 16622 
       
 16623 function registerCSSInterfaceWithDefaultTheme() {
       
 16624   (0, _registerInterfaceWithDefaultTheme2['default'])(_reactWithStylesInterfaceCss2['default']);
       
 16625 }
       
 16626 
       
 16627 /***/ }),
       
 16628 /* 263 */
       
 16629 /***/ (function(module, exports, __webpack_require__) {
       
 16630 
       
 16631 // eslint-disable-next-line import/no-unresolved
       
 16632 module.exports = __webpack_require__(264).default;
       
 16633 
       
 16634 
       
 16635 /***/ }),
       
 16636 /* 264 */
       
 16637 /***/ (function(module, exports, __webpack_require__) {
       
 16638 
       
 16639 Object.defineProperty(exports, "__esModule", {
       
 16640   value: true
       
 16641 });
       
 16642 
       
 16643 var _arrayPrototype = __webpack_require__(265);
       
 16644 
       
 16645 var _arrayPrototype2 = _interopRequireDefault(_arrayPrototype);
       
 16646 
       
 16647 var _globalCache = __webpack_require__(280);
       
 16648 
       
 16649 var _globalCache2 = _interopRequireDefault(_globalCache);
       
 16650 
       
 16651 var _constants = __webpack_require__(281);
       
 16652 
       
 16653 var _getClassName = __webpack_require__(282);
       
 16654 
       
 16655 var _getClassName2 = _interopRequireDefault(_getClassName);
       
 16656 
       
 16657 var _separateStyles2 = __webpack_require__(283);
       
 16658 
       
 16659 var _separateStyles3 = _interopRequireDefault(_separateStyles2);
       
 16660 
       
 16661 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 16662 
       
 16663 /**
       
 16664  * Function required as part of the react-with-styles interface. Parses the styles provided by
       
 16665  * react-with-styles to produce class names based on the style name and optionally the namespace if
       
 16666  * available.
       
 16667  *
       
 16668  * stylesObject {Object} The styles object passed to withStyles.
       
 16669  *
       
 16670  * Return an object mapping style names to class names.
       
 16671  */
       
 16672 function create(stylesObject) {
       
 16673   var stylesToClasses = {};
       
 16674   var styleNames = Object.keys(stylesObject);
       
 16675   var sharedState = _globalCache2['default'].get(_constants.GLOBAL_CACHE_KEY) || {};
       
 16676   var _sharedState$namespac = sharedState.namespace,
       
 16677       namespace = _sharedState$namespac === undefined ? '' : _sharedState$namespac;
       
 16678 
       
 16679   styleNames.forEach(function (styleName) {
       
 16680     var className = (0, _getClassName2['default'])(namespace, styleName);
       
 16681     stylesToClasses[styleName] = className;
       
 16682   });
       
 16683   return stylesToClasses;
       
 16684 }
       
 16685 
       
 16686 /**
       
 16687  * Process styles to be consumed by a component.
       
 16688  *
       
 16689  * stylesArray {Array} Array of the following: values returned by create, plain JavaScript objects
       
 16690  * representing inline styles, or arrays thereof.
       
 16691  *
       
 16692  * Return an object with optional className and style properties to be spread on a component.
       
 16693  */
       
 16694 function resolve(stylesArray) {
       
 16695   var flattenedStyles = (0, _arrayPrototype2['default'])(stylesArray, Infinity);
       
 16696 
       
 16697   var _separateStyles = (0, _separateStyles3['default'])(flattenedStyles),
       
 16698       classNames = _separateStyles.classNames,
       
 16699       hasInlineStyles = _separateStyles.hasInlineStyles,
       
 16700       inlineStyles = _separateStyles.inlineStyles;
       
 16701 
       
 16702   var specificClassNames = classNames.map(function (name, index) {
       
 16703     return String(name) + ' ' + String(name) + '_' + String(index + 1);
       
 16704   });
       
 16705   var className = specificClassNames.join(' ');
       
 16706 
       
 16707   var result = { className: className };
       
 16708   if (hasInlineStyles) result.style = inlineStyles;
       
 16709   return result;
       
 16710 }
       
 16711 
       
 16712 exports['default'] = { create: create, resolve: resolve };
       
 16713 
       
 16714 /***/ }),
       
 16715 /* 265 */
       
 16716 /***/ (function(module, exports, __webpack_require__) {
       
 16717 
       
 16718 "use strict";
       
 16719 
       
 16720 
       
 16721 var define = __webpack_require__(73);
       
 16722 var bind = __webpack_require__(74);
       
 16723 
       
 16724 var implementation = __webpack_require__(142);
       
 16725 var getPolyfill = __webpack_require__(152);
       
 16726 var polyfill = getPolyfill();
       
 16727 var shim = __webpack_require__(279);
       
 16728 
       
 16729 var boundFlat = bind.call(Function.call, polyfill);
       
 16730 
       
 16731 define(boundFlat, {
       
 16732 	getPolyfill: getPolyfill,
       
 16733 	implementation: implementation,
       
 16734 	shim: shim
       
 16735 });
       
 16736 
       
 16737 module.exports = boundFlat;
       
 16738 
       
 16739 
       
 16740 /***/ }),
       
 16741 /* 266 */
       
 16742 /***/ (function(module, exports, __webpack_require__) {
       
 16743 
       
 16744 "use strict";
       
 16745 
       
 16746 
       
 16747 var toStr = Object.prototype.toString;
       
 16748 
       
 16749 module.exports = function isArguments(value) {
       
 16750 	var str = toStr.call(value);
       
 16751 	var isArgs = str === '[object Arguments]';
       
 16752 	if (!isArgs) {
       
 16753 		isArgs = str !== '[object Array]' &&
       
 16754 			value !== null &&
       
 16755 			typeof value === 'object' &&
       
 16756 			typeof value.length === 'number' &&
       
 16757 			value.length >= 0 &&
       
 16758 			toStr.call(value.callee) === '[object Function]';
       
 16759 	}
       
 16760 	return isArgs;
       
 16761 };
       
 16762 
       
 16763 
       
 16764 /***/ }),
       
 16765 /* 267 */
       
 16766 /***/ (function(module, exports) {
       
 16767 
       
 16768 
       
 16769 var hasOwn = Object.prototype.hasOwnProperty;
       
 16770 var toString = Object.prototype.toString;
       
 16771 
       
 16772 module.exports = function forEach (obj, fn, ctx) {
       
 16773     if (toString.call(fn) !== '[object Function]') {
       
 16774         throw new TypeError('iterator must be a function');
       
 16775     }
       
 16776     var l = obj.length;
       
 16777     if (l === +l) {
       
 16778         for (var i = 0; i < l; i++) {
       
 16779             fn.call(ctx, obj[i], i, obj);
       
 16780         }
       
 16781     } else {
       
 16782         for (var k in obj) {
       
 16783             if (hasOwn.call(obj, k)) {
       
 16784                 fn.call(ctx, obj[k], k, obj);
       
 16785             }
       
 16786         }
       
 16787     }
       
 16788 };
       
 16789 
       
 16790 
       
 16791 
       
 16792 /***/ }),
       
 16793 /* 268 */
       
 16794 /***/ (function(module, exports, __webpack_require__) {
       
 16795 
       
 16796 "use strict";
       
 16797 
       
 16798 
       
 16799 /* eslint no-invalid-this: 1 */
       
 16800 
       
 16801 var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
       
 16802 var slice = Array.prototype.slice;
       
 16803 var toStr = Object.prototype.toString;
       
 16804 var funcType = '[object Function]';
       
 16805 
       
 16806 module.exports = function bind(that) {
       
 16807     var target = this;
       
 16808     if (typeof target !== 'function' || toStr.call(target) !== funcType) {
       
 16809         throw new TypeError(ERROR_MESSAGE + target);
       
 16810     }
       
 16811     var args = slice.call(arguments, 1);
       
 16812 
       
 16813     var bound;
       
 16814     var binder = function () {
       
 16815         if (this instanceof bound) {
       
 16816             var result = target.apply(
       
 16817                 this,
       
 16818                 args.concat(slice.call(arguments))
       
 16819             );
       
 16820             if (Object(result) === result) {
       
 16821                 return result;
       
 16822             }
       
 16823             return this;
       
 16824         } else {
       
 16825             return target.apply(
       
 16826                 that,
       
 16827                 args.concat(slice.call(arguments))
       
 16828             );
       
 16829         }
       
 16830     };
       
 16831 
       
 16832     var boundLength = Math.max(0, target.length - args.length);
       
 16833     var boundArgs = [];
       
 16834     for (var i = 0; i < boundLength; i++) {
       
 16835         boundArgs.push('$' + i);
       
 16836     }
       
 16837 
       
 16838     bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);
       
 16839 
       
 16840     if (target.prototype) {
       
 16841         var Empty = function Empty() {};
       
 16842         Empty.prototype = target.prototype;
       
 16843         bound.prototype = new Empty();
       
 16844         Empty.prototype = null;
       
 16845     }
       
 16846 
       
 16847     return bound;
       
 16848 };
       
 16849 
       
 16850 
       
 16851 /***/ }),
       
 16852 /* 269 */
       
 16853 /***/ (function(module, exports, __webpack_require__) {
       
 16854 
       
 16855 "use strict";
       
 16856 
       
 16857 
       
 16858 var ES2016 = __webpack_require__(143);
       
 16859 var assign = __webpack_require__(124);
       
 16860 
       
 16861 var ES2017 = assign(assign({}, ES2016), {
       
 16862 	ToIndex: function ToIndex(value) {
       
 16863 		if (typeof value === 'undefined') {
       
 16864 			return 0;
       
 16865 		}
       
 16866 		var integerIndex = this.ToInteger(value);
       
 16867 		if (integerIndex < 0) {
       
 16868 			throw new RangeError('index must be >= 0');
       
 16869 		}
       
 16870 		var index = this.ToLength(integerIndex);
       
 16871 		if (!this.SameValueZero(integerIndex, index)) {
       
 16872 			throw new RangeError('index must be >= 0 and < 2 ** 53 - 1');
       
 16873 		}
       
 16874 		return index;
       
 16875 	}
       
 16876 });
       
 16877 
       
 16878 delete ES2017.EnumerableOwnNames; // replaced with EnumerableOwnProperties
       
 16879 
       
 16880 module.exports = ES2017;
       
 16881 
       
 16882 
       
 16883 /***/ }),
       
 16884 /* 270 */
       
 16885 /***/ (function(module, exports, __webpack_require__) {
       
 16886 
       
 16887 "use strict";
       
 16888 
       
 16889 
       
 16890 var has = __webpack_require__(91);
       
 16891 var toPrimitive = __webpack_require__(271);
       
 16892 
       
 16893 var GetIntrinsic = __webpack_require__(147);
       
 16894 
       
 16895 var $TypeError = GetIntrinsic('%TypeError%');
       
 16896 var $SyntaxError = GetIntrinsic('%SyntaxError%');
       
 16897 var $Array = GetIntrinsic('%Array%');
       
 16898 var $String = GetIntrinsic('%String%');
       
 16899 var $Object = GetIntrinsic('%Object%');
       
 16900 var $Number = GetIntrinsic('%Number%');
       
 16901 var $Symbol = GetIntrinsic('%Symbol%', true);
       
 16902 var $RegExp = GetIntrinsic('%RegExp%');
       
 16903 
       
 16904 var hasSymbols = !!$Symbol;
       
 16905 
       
 16906 var $isNaN = __webpack_require__(148);
       
 16907 var $isFinite = __webpack_require__(149);
       
 16908 var MAX_SAFE_INTEGER = $Number.MAX_SAFE_INTEGER || Math.pow(2, 53) - 1;
       
 16909 
       
 16910 var assign = __webpack_require__(124);
       
 16911 var sign = __webpack_require__(150);
       
 16912 var mod = __webpack_require__(151);
       
 16913 var isPrimitive = __webpack_require__(275);
       
 16914 var parseInteger = parseInt;
       
 16915 var bind = __webpack_require__(74);
       
 16916 var arraySlice = bind.call(Function.call, $Array.prototype.slice);
       
 16917 var strSlice = bind.call(Function.call, $String.prototype.slice);
       
 16918 var isBinary = bind.call(Function.call, $RegExp.prototype.test, /^0b[01]+$/i);
       
 16919 var isOctal = bind.call(Function.call, $RegExp.prototype.test, /^0o[0-7]+$/i);
       
 16920 var regexExec = bind.call(Function.call, $RegExp.prototype.exec);
       
 16921 var nonWS = ['\u0085', '\u200b', '\ufffe'].join('');
       
 16922 var nonWSregex = new $RegExp('[' + nonWS + ']', 'g');
       
 16923 var hasNonWS = bind.call(Function.call, $RegExp.prototype.test, nonWSregex);
       
 16924 var invalidHexLiteral = /^[-+]0x[0-9a-f]+$/i;
       
 16925 var isInvalidHexLiteral = bind.call(Function.call, $RegExp.prototype.test, invalidHexLiteral);
       
 16926 var $charCodeAt = bind.call(Function.call, $String.prototype.charCodeAt);
       
 16927 
       
 16928 var toStr = bind.call(Function.call, Object.prototype.toString);
       
 16929 
       
 16930 var $floor = Math.floor;
       
 16931 var $abs = Math.abs;
       
 16932 
       
 16933 var $ObjectCreate = Object.create;
       
 16934 var $gOPD = $Object.getOwnPropertyDescriptor;
       
 16935 
       
 16936 var $isExtensible = $Object.isExtensible;
       
 16937 
       
 16938 // whitespace from: http://es5.github.io/#x15.5.4.20
       
 16939 // implementation from https://github.com/es-shims/es5-shim/blob/v3.4.0/es5-shim.js#L1304-L1324
       
 16940 var ws = [
       
 16941 	'\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003',
       
 16942 	'\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028',
       
 16943 	'\u2029\uFEFF'
       
 16944 ].join('');
       
 16945 var trimRegex = new RegExp('(^[' + ws + ']+)|([' + ws + ']+$)', 'g');
       
 16946 var replace = bind.call(Function.call, $String.prototype.replace);
       
 16947 var trim = function (value) {
       
 16948 	return replace(value, trimRegex, '');
       
 16949 };
       
 16950 
       
 16951 var ES5 = __webpack_require__(276);
       
 16952 
       
 16953 var hasRegExpMatcher = __webpack_require__(278);
       
 16954 
       
 16955 // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-abstract-operations
       
 16956 var ES6 = assign(assign({}, ES5), {
       
 16957 
       
 16958 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-call-f-v-args
       
 16959 	Call: function Call(F, V) {
       
 16960 		var args = arguments.length > 2 ? arguments[2] : [];
       
 16961 		if (!this.IsCallable(F)) {
       
 16962 			throw new $TypeError(F + ' is not a function');
       
 16963 		}
       
 16964 		return F.apply(V, args);
       
 16965 	},
       
 16966 
       
 16967 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toprimitive
       
 16968 	ToPrimitive: toPrimitive,
       
 16969 
       
 16970 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toboolean
       
 16971 	// ToBoolean: ES5.ToBoolean,
       
 16972 
       
 16973 	// https://ecma-international.org/ecma-262/6.0/#sec-tonumber
       
 16974 	ToNumber: function ToNumber(argument) {
       
 16975 		var value = isPrimitive(argument) ? argument : toPrimitive(argument, $Number);
       
 16976 		if (typeof value === 'symbol') {
       
 16977 			throw new $TypeError('Cannot convert a Symbol value to a number');
       
 16978 		}
       
 16979 		if (typeof value === 'string') {
       
 16980 			if (isBinary(value)) {
       
 16981 				return this.ToNumber(parseInteger(strSlice(value, 2), 2));
       
 16982 			} else if (isOctal(value)) {
       
 16983 				return this.ToNumber(parseInteger(strSlice(value, 2), 8));
       
 16984 			} else if (hasNonWS(value) || isInvalidHexLiteral(value)) {
       
 16985 				return NaN;
       
 16986 			} else {
       
 16987 				var trimmed = trim(value);
       
 16988 				if (trimmed !== value) {
       
 16989 					return this.ToNumber(trimmed);
       
 16990 				}
       
 16991 			}
       
 16992 		}
       
 16993 		return $Number(value);
       
 16994 	},
       
 16995 
       
 16996 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tointeger
       
 16997 	// ToInteger: ES5.ToNumber,
       
 16998 
       
 16999 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint32
       
 17000 	// ToInt32: ES5.ToInt32,
       
 17001 
       
 17002 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint32
       
 17003 	// ToUint32: ES5.ToUint32,
       
 17004 
       
 17005 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint16
       
 17006 	ToInt16: function ToInt16(argument) {
       
 17007 		var int16bit = this.ToUint16(argument);
       
 17008 		return int16bit >= 0x8000 ? int16bit - 0x10000 : int16bit;
       
 17009 	},
       
 17010 
       
 17011 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint16
       
 17012 	// ToUint16: ES5.ToUint16,
       
 17013 
       
 17014 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint8
       
 17015 	ToInt8: function ToInt8(argument) {
       
 17016 		var int8bit = this.ToUint8(argument);
       
 17017 		return int8bit >= 0x80 ? int8bit - 0x100 : int8bit;
       
 17018 	},
       
 17019 
       
 17020 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint8
       
 17021 	ToUint8: function ToUint8(argument) {
       
 17022 		var number = this.ToNumber(argument);
       
 17023 		if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; }
       
 17024 		var posInt = sign(number) * $floor($abs(number));
       
 17025 		return mod(posInt, 0x100);
       
 17026 	},
       
 17027 
       
 17028 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint8clamp
       
 17029 	ToUint8Clamp: function ToUint8Clamp(argument) {
       
 17030 		var number = this.ToNumber(argument);
       
 17031 		if ($isNaN(number) || number <= 0) { return 0; }
       
 17032 		if (number >= 0xFF) { return 0xFF; }
       
 17033 		var f = $floor(argument);
       
 17034 		if (f + 0.5 < number) { return f + 1; }
       
 17035 		if (number < f + 0.5) { return f; }
       
 17036 		if (f % 2 !== 0) { return f + 1; }
       
 17037 		return f;
       
 17038 	},
       
 17039 
       
 17040 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tostring
       
 17041 	ToString: function ToString(argument) {
       
 17042 		if (typeof argument === 'symbol') {
       
 17043 			throw new $TypeError('Cannot convert a Symbol value to a string');
       
 17044 		}
       
 17045 		return $String(argument);
       
 17046 	},
       
 17047 
       
 17048 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toobject
       
 17049 	ToObject: function ToObject(value) {
       
 17050 		this.RequireObjectCoercible(value);
       
 17051 		return $Object(value);
       
 17052 	},
       
 17053 
       
 17054 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-topropertykey
       
 17055 	ToPropertyKey: function ToPropertyKey(argument) {
       
 17056 		var key = this.ToPrimitive(argument, $String);
       
 17057 		return typeof key === 'symbol' ? key : this.ToString(key);
       
 17058 	},
       
 17059 
       
 17060 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
       
 17061 	ToLength: function ToLength(argument) {
       
 17062 		var len = this.ToInteger(argument);
       
 17063 		if (len <= 0) { return 0; } // includes converting -0 to +0
       
 17064 		if (len > MAX_SAFE_INTEGER) { return MAX_SAFE_INTEGER; }
       
 17065 		return len;
       
 17066 	},
       
 17067 
       
 17068 	// https://ecma-international.org/ecma-262/6.0/#sec-canonicalnumericindexstring
       
 17069 	CanonicalNumericIndexString: function CanonicalNumericIndexString(argument) {
       
 17070 		if (toStr(argument) !== '[object String]') {
       
 17071 			throw new $TypeError('must be a string');
       
 17072 		}
       
 17073 		if (argument === '-0') { return -0; }
       
 17074 		var n = this.ToNumber(argument);
       
 17075 		if (this.SameValue(this.ToString(n), argument)) { return n; }
       
 17076 		return void 0;
       
 17077 	},
       
 17078 
       
 17079 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-requireobjectcoercible
       
 17080 	RequireObjectCoercible: ES5.CheckObjectCoercible,
       
 17081 
       
 17082 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isarray
       
 17083 	IsArray: $Array.isArray || function IsArray(argument) {
       
 17084 		return toStr(argument) === '[object Array]';
       
 17085 	},
       
 17086 
       
 17087 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-iscallable
       
 17088 	// IsCallable: ES5.IsCallable,
       
 17089 
       
 17090 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isconstructor
       
 17091 	IsConstructor: function IsConstructor(argument) {
       
 17092 		return typeof argument === 'function' && !!argument.prototype; // unfortunately there's no way to truly check this without try/catch `new argument`
       
 17093 	},
       
 17094 
       
 17095 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isextensible-o
       
 17096 	IsExtensible: Object.preventExtensions
       
 17097 		? function IsExtensible(obj) {
       
 17098 			if (isPrimitive(obj)) {
       
 17099 				return false;
       
 17100 			}
       
 17101 			return $isExtensible(obj);
       
 17102 		}
       
 17103 		: function isExtensible(obj) { return true; }, // eslint-disable-line no-unused-vars
       
 17104 
       
 17105 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isinteger
       
 17106 	IsInteger: function IsInteger(argument) {
       
 17107 		if (typeof argument !== 'number' || $isNaN(argument) || !$isFinite(argument)) {
       
 17108 			return false;
       
 17109 		}
       
 17110 		var abs = $abs(argument);
       
 17111 		return $floor(abs) === abs;
       
 17112 	},
       
 17113 
       
 17114 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-ispropertykey
       
 17115 	IsPropertyKey: function IsPropertyKey(argument) {
       
 17116 		return typeof argument === 'string' || typeof argument === 'symbol';
       
 17117 	},
       
 17118 
       
 17119 	// https://ecma-international.org/ecma-262/6.0/#sec-isregexp
       
 17120 	IsRegExp: function IsRegExp(argument) {
       
 17121 		if (!argument || typeof argument !== 'object') {
       
 17122 			return false;
       
 17123 		}
       
 17124 		if (hasSymbols) {
       
 17125 			var isRegExp = argument[$Symbol.match];
       
 17126 			if (typeof isRegExp !== 'undefined') {
       
 17127 				return ES5.ToBoolean(isRegExp);
       
 17128 			}
       
 17129 		}
       
 17130 		return hasRegExpMatcher(argument);
       
 17131 	},
       
 17132 
       
 17133 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevalue
       
 17134 	// SameValue: ES5.SameValue,
       
 17135 
       
 17136 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero
       
 17137 	SameValueZero: function SameValueZero(x, y) {
       
 17138 		return (x === y) || ($isNaN(x) && $isNaN(y));
       
 17139 	},
       
 17140 
       
 17141 	/**
       
 17142 	 * 7.3.2 GetV (V, P)
       
 17143 	 * 1. Assert: IsPropertyKey(P) is true.
       
 17144 	 * 2. Let O be ToObject(V).
       
 17145 	 * 3. ReturnIfAbrupt(O).
       
 17146 	 * 4. Return O.[[Get]](P, V).
       
 17147 	 */
       
 17148 	GetV: function GetV(V, P) {
       
 17149 		// 7.3.2.1
       
 17150 		if (!this.IsPropertyKey(P)) {
       
 17151 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 17152 		}
       
 17153 
       
 17154 		// 7.3.2.2-3
       
 17155 		var O = this.ToObject(V);
       
 17156 
       
 17157 		// 7.3.2.4
       
 17158 		return O[P];
       
 17159 	},
       
 17160 
       
 17161 	/**
       
 17162 	 * 7.3.9 - https://ecma-international.org/ecma-262/6.0/#sec-getmethod
       
 17163 	 * 1. Assert: IsPropertyKey(P) is true.
       
 17164 	 * 2. Let func be GetV(O, P).
       
 17165 	 * 3. ReturnIfAbrupt(func).
       
 17166 	 * 4. If func is either undefined or null, return undefined.
       
 17167 	 * 5. If IsCallable(func) is false, throw a TypeError exception.
       
 17168 	 * 6. Return func.
       
 17169 	 */
       
 17170 	GetMethod: function GetMethod(O, P) {
       
 17171 		// 7.3.9.1
       
 17172 		if (!this.IsPropertyKey(P)) {
       
 17173 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 17174 		}
       
 17175 
       
 17176 		// 7.3.9.2
       
 17177 		var func = this.GetV(O, P);
       
 17178 
       
 17179 		// 7.3.9.4
       
 17180 		if (func == null) {
       
 17181 			return void 0;
       
 17182 		}
       
 17183 
       
 17184 		// 7.3.9.5
       
 17185 		if (!this.IsCallable(func)) {
       
 17186 			throw new $TypeError(P + 'is not a function');
       
 17187 		}
       
 17188 
       
 17189 		// 7.3.9.6
       
 17190 		return func;
       
 17191 	},
       
 17192 
       
 17193 	/**
       
 17194 	 * 7.3.1 Get (O, P) - https://ecma-international.org/ecma-262/6.0/#sec-get-o-p
       
 17195 	 * 1. Assert: Type(O) is Object.
       
 17196 	 * 2. Assert: IsPropertyKey(P) is true.
       
 17197 	 * 3. Return O.[[Get]](P, O).
       
 17198 	 */
       
 17199 	Get: function Get(O, P) {
       
 17200 		// 7.3.1.1
       
 17201 		if (this.Type(O) !== 'Object') {
       
 17202 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 17203 		}
       
 17204 		// 7.3.1.2
       
 17205 		if (!this.IsPropertyKey(P)) {
       
 17206 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 17207 		}
       
 17208 		// 7.3.1.3
       
 17209 		return O[P];
       
 17210 	},
       
 17211 
       
 17212 	Type: function Type(x) {
       
 17213 		if (typeof x === 'symbol') {
       
 17214 			return 'Symbol';
       
 17215 		}
       
 17216 		return ES5.Type(x);
       
 17217 	},
       
 17218 
       
 17219 	// https://ecma-international.org/ecma-262/6.0/#sec-speciesconstructor
       
 17220 	SpeciesConstructor: function SpeciesConstructor(O, defaultConstructor) {
       
 17221 		if (this.Type(O) !== 'Object') {
       
 17222 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 17223 		}
       
 17224 		var C = O.constructor;
       
 17225 		if (typeof C === 'undefined') {
       
 17226 			return defaultConstructor;
       
 17227 		}
       
 17228 		if (this.Type(C) !== 'Object') {
       
 17229 			throw new $TypeError('O.constructor is not an Object');
       
 17230 		}
       
 17231 		var S = hasSymbols && $Symbol.species ? C[$Symbol.species] : void 0;
       
 17232 		if (S == null) {
       
 17233 			return defaultConstructor;
       
 17234 		}
       
 17235 		if (this.IsConstructor(S)) {
       
 17236 			return S;
       
 17237 		}
       
 17238 		throw new $TypeError('no constructor found');
       
 17239 	},
       
 17240 
       
 17241 	// https://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor
       
 17242 	CompletePropertyDescriptor: function CompletePropertyDescriptor(Desc) {
       
 17243 		if (!this.IsPropertyDescriptor(Desc)) {
       
 17244 			throw new $TypeError('Desc must be a Property Descriptor');
       
 17245 		}
       
 17246 
       
 17247 		if (this.IsGenericDescriptor(Desc) || this.IsDataDescriptor(Desc)) {
       
 17248 			if (!has(Desc, '[[Value]]')) {
       
 17249 				Desc['[[Value]]'] = void 0;
       
 17250 			}
       
 17251 			if (!has(Desc, '[[Writable]]')) {
       
 17252 				Desc['[[Writable]]'] = false;
       
 17253 			}
       
 17254 		} else {
       
 17255 			if (!has(Desc, '[[Get]]')) {
       
 17256 				Desc['[[Get]]'] = void 0;
       
 17257 			}
       
 17258 			if (!has(Desc, '[[Set]]')) {
       
 17259 				Desc['[[Set]]'] = void 0;
       
 17260 			}
       
 17261 		}
       
 17262 		if (!has(Desc, '[[Enumerable]]')) {
       
 17263 			Desc['[[Enumerable]]'] = false;
       
 17264 		}
       
 17265 		if (!has(Desc, '[[Configurable]]')) {
       
 17266 			Desc['[[Configurable]]'] = false;
       
 17267 		}
       
 17268 		return Desc;
       
 17269 	},
       
 17270 
       
 17271 	// https://ecma-international.org/ecma-262/6.0/#sec-set-o-p-v-throw
       
 17272 	Set: function Set(O, P, V, Throw) {
       
 17273 		if (this.Type(O) !== 'Object') {
       
 17274 			throw new $TypeError('O must be an Object');
       
 17275 		}
       
 17276 		if (!this.IsPropertyKey(P)) {
       
 17277 			throw new $TypeError('P must be a Property Key');
       
 17278 		}
       
 17279 		if (this.Type(Throw) !== 'Boolean') {
       
 17280 			throw new $TypeError('Throw must be a Boolean');
       
 17281 		}
       
 17282 		if (Throw) {
       
 17283 			O[P] = V;
       
 17284 			return true;
       
 17285 		} else {
       
 17286 			try {
       
 17287 				O[P] = V;
       
 17288 			} catch (e) {
       
 17289 				return false;
       
 17290 			}
       
 17291 		}
       
 17292 	},
       
 17293 
       
 17294 	// https://ecma-international.org/ecma-262/6.0/#sec-hasownproperty
       
 17295 	HasOwnProperty: function HasOwnProperty(O, P) {
       
 17296 		if (this.Type(O) !== 'Object') {
       
 17297 			throw new $TypeError('O must be an Object');
       
 17298 		}
       
 17299 		if (!this.IsPropertyKey(P)) {
       
 17300 			throw new $TypeError('P must be a Property Key');
       
 17301 		}
       
 17302 		return has(O, P);
       
 17303 	},
       
 17304 
       
 17305 	// https://ecma-international.org/ecma-262/6.0/#sec-hasproperty
       
 17306 	HasProperty: function HasProperty(O, P) {
       
 17307 		if (this.Type(O) !== 'Object') {
       
 17308 			throw new $TypeError('O must be an Object');
       
 17309 		}
       
 17310 		if (!this.IsPropertyKey(P)) {
       
 17311 			throw new $TypeError('P must be a Property Key');
       
 17312 		}
       
 17313 		return P in O;
       
 17314 	},
       
 17315 
       
 17316 	// https://ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable
       
 17317 	IsConcatSpreadable: function IsConcatSpreadable(O) {
       
 17318 		if (this.Type(O) !== 'Object') {
       
 17319 			return false;
       
 17320 		}
       
 17321 		if (hasSymbols && typeof $Symbol.isConcatSpreadable === 'symbol') {
       
 17322 			var spreadable = this.Get(O, Symbol.isConcatSpreadable);
       
 17323 			if (typeof spreadable !== 'undefined') {
       
 17324 				return this.ToBoolean(spreadable);
       
 17325 			}
       
 17326 		}
       
 17327 		return this.IsArray(O);
       
 17328 	},
       
 17329 
       
 17330 	// https://ecma-international.org/ecma-262/6.0/#sec-invoke
       
 17331 	Invoke: function Invoke(O, P) {
       
 17332 		if (!this.IsPropertyKey(P)) {
       
 17333 			throw new $TypeError('P must be a Property Key');
       
 17334 		}
       
 17335 		var argumentsList = arraySlice(arguments, 2);
       
 17336 		var func = this.GetV(O, P);
       
 17337 		return this.Call(func, O, argumentsList);
       
 17338 	},
       
 17339 
       
 17340 	// https://ecma-international.org/ecma-262/6.0/#sec-getiterator
       
 17341 	GetIterator: function GetIterator(obj, method) {
       
 17342 		if (!hasSymbols) {
       
 17343 			throw new SyntaxError('ES.GetIterator depends on native iterator support.');
       
 17344 		}
       
 17345 
       
 17346 		var actualMethod = method;
       
 17347 		if (arguments.length < 2) {
       
 17348 			actualMethod = this.GetMethod(obj, $Symbol.iterator);
       
 17349 		}
       
 17350 		var iterator = this.Call(actualMethod, obj);
       
 17351 		if (this.Type(iterator) !== 'Object') {
       
 17352 			throw new $TypeError('iterator must return an object');
       
 17353 		}
       
 17354 
       
 17355 		return iterator;
       
 17356 	},
       
 17357 
       
 17358 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratornext
       
 17359 	IteratorNext: function IteratorNext(iterator, value) {
       
 17360 		var result = this.Invoke(iterator, 'next', arguments.length < 2 ? [] : [value]);
       
 17361 		if (this.Type(result) !== 'Object') {
       
 17362 			throw new $TypeError('iterator next must return an object');
       
 17363 		}
       
 17364 		return result;
       
 17365 	},
       
 17366 
       
 17367 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorcomplete
       
 17368 	IteratorComplete: function IteratorComplete(iterResult) {
       
 17369 		if (this.Type(iterResult) !== 'Object') {
       
 17370 			throw new $TypeError('Assertion failed: Type(iterResult) is not Object');
       
 17371 		}
       
 17372 		return this.ToBoolean(this.Get(iterResult, 'done'));
       
 17373 	},
       
 17374 
       
 17375 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorvalue
       
 17376 	IteratorValue: function IteratorValue(iterResult) {
       
 17377 		if (this.Type(iterResult) !== 'Object') {
       
 17378 			throw new $TypeError('Assertion failed: Type(iterResult) is not Object');
       
 17379 		}
       
 17380 		return this.Get(iterResult, 'value');
       
 17381 	},
       
 17382 
       
 17383 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorstep
       
 17384 	IteratorStep: function IteratorStep(iterator) {
       
 17385 		var result = this.IteratorNext(iterator);
       
 17386 		var done = this.IteratorComplete(result);
       
 17387 		return done === true ? false : result;
       
 17388 	},
       
 17389 
       
 17390 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorclose
       
 17391 	IteratorClose: function IteratorClose(iterator, completion) {
       
 17392 		if (this.Type(iterator) !== 'Object') {
       
 17393 			throw new $TypeError('Assertion failed: Type(iterator) is not Object');
       
 17394 		}
       
 17395 		if (!this.IsCallable(completion)) {
       
 17396 			throw new $TypeError('Assertion failed: completion is not a thunk for a Completion Record');
       
 17397 		}
       
 17398 		var completionThunk = completion;
       
 17399 
       
 17400 		var iteratorReturn = this.GetMethod(iterator, 'return');
       
 17401 
       
 17402 		if (typeof iteratorReturn === 'undefined') {
       
 17403 			return completionThunk();
       
 17404 		}
       
 17405 
       
 17406 		var completionRecord;
       
 17407 		try {
       
 17408 			var innerResult = this.Call(iteratorReturn, iterator, []);
       
 17409 		} catch (e) {
       
 17410 			// if we hit here, then "e" is the innerResult completion that needs re-throwing
       
 17411 
       
 17412 			// if the completion is of type "throw", this will throw.
       
 17413 			completionRecord = completionThunk();
       
 17414 			completionThunk = null; // ensure it's not called twice.
       
 17415 
       
 17416 			// if not, then return the innerResult completion
       
 17417 			throw e;
       
 17418 		}
       
 17419 		completionRecord = completionThunk(); // if innerResult worked, then throw if the completion does
       
 17420 		completionThunk = null; // ensure it's not called twice.
       
 17421 
       
 17422 		if (this.Type(innerResult) !== 'Object') {
       
 17423 			throw new $TypeError('iterator .return must return an object');
       
 17424 		}
       
 17425 
       
 17426 		return completionRecord;
       
 17427 	},
       
 17428 
       
 17429 	// https://ecma-international.org/ecma-262/6.0/#sec-createiterresultobject
       
 17430 	CreateIterResultObject: function CreateIterResultObject(value, done) {
       
 17431 		if (this.Type(done) !== 'Boolean') {
       
 17432 			throw new $TypeError('Assertion failed: Type(done) is not Boolean');
       
 17433 		}
       
 17434 		return {
       
 17435 			value: value,
       
 17436 			done: done
       
 17437 		};
       
 17438 	},
       
 17439 
       
 17440 	// https://ecma-international.org/ecma-262/6.0/#sec-regexpexec
       
 17441 	RegExpExec: function RegExpExec(R, S) {
       
 17442 		if (this.Type(R) !== 'Object') {
       
 17443 			throw new $TypeError('R must be an Object');
       
 17444 		}
       
 17445 		if (this.Type(S) !== 'String') {
       
 17446 			throw new $TypeError('S must be a String');
       
 17447 		}
       
 17448 		var exec = this.Get(R, 'exec');
       
 17449 		if (this.IsCallable(exec)) {
       
 17450 			var result = this.Call(exec, R, [S]);
       
 17451 			if (result === null || this.Type(result) === 'Object') {
       
 17452 				return result;
       
 17453 			}
       
 17454 			throw new $TypeError('"exec" method must return `null` or an Object');
       
 17455 		}
       
 17456 		return regexExec(R, S);
       
 17457 	},
       
 17458 
       
 17459 	// https://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate
       
 17460 	ArraySpeciesCreate: function ArraySpeciesCreate(originalArray, length) {
       
 17461 		if (!this.IsInteger(length) || length < 0) {
       
 17462 			throw new $TypeError('Assertion failed: length must be an integer >= 0');
       
 17463 		}
       
 17464 		var len = length === 0 ? 0 : length;
       
 17465 		var C;
       
 17466 		var isArray = this.IsArray(originalArray);
       
 17467 		if (isArray) {
       
 17468 			C = this.Get(originalArray, 'constructor');
       
 17469 			// TODO: figure out how to make a cross-realm normal Array, a same-realm Array
       
 17470 			// if (this.IsConstructor(C)) {
       
 17471 			// 	if C is another realm's Array, C = undefined
       
 17472 			// 	Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(Array))) === null ?
       
 17473 			// }
       
 17474 			if (this.Type(C) === 'Object' && hasSymbols && $Symbol.species) {
       
 17475 				C = this.Get(C, $Symbol.species);
       
 17476 				if (C === null) {
       
 17477 					C = void 0;
       
 17478 				}
       
 17479 			}
       
 17480 		}
       
 17481 		if (typeof C === 'undefined') {
       
 17482 			return $Array(len);
       
 17483 		}
       
 17484 		if (!this.IsConstructor(C)) {
       
 17485 			throw new $TypeError('C must be a constructor');
       
 17486 		}
       
 17487 		return new C(len); // this.Construct(C, len);
       
 17488 	},
       
 17489 
       
 17490 	CreateDataProperty: function CreateDataProperty(O, P, V) {
       
 17491 		if (this.Type(O) !== 'Object') {
       
 17492 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 17493 		}
       
 17494 		if (!this.IsPropertyKey(P)) {
       
 17495 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 17496 		}
       
 17497 		var oldDesc = $gOPD(O, P);
       
 17498 		var extensible = oldDesc || (typeof $isExtensible !== 'function' || $isExtensible(O));
       
 17499 		var immutable = oldDesc && (!oldDesc.writable || !oldDesc.configurable);
       
 17500 		if (immutable || !extensible) {
       
 17501 			return false;
       
 17502 		}
       
 17503 		var newDesc = {
       
 17504 			configurable: true,
       
 17505 			enumerable: true,
       
 17506 			value: V,
       
 17507 			writable: true
       
 17508 		};
       
 17509 		Object.defineProperty(O, P, newDesc);
       
 17510 		return true;
       
 17511 	},
       
 17512 
       
 17513 	// https://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow
       
 17514 	CreateDataPropertyOrThrow: function CreateDataPropertyOrThrow(O, P, V) {
       
 17515 		if (this.Type(O) !== 'Object') {
       
 17516 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 17517 		}
       
 17518 		if (!this.IsPropertyKey(P)) {
       
 17519 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 17520 		}
       
 17521 		var success = this.CreateDataProperty(O, P, V);
       
 17522 		if (!success) {
       
 17523 			throw new $TypeError('unable to create data property');
       
 17524 		}
       
 17525 		return success;
       
 17526 	},
       
 17527 
       
 17528 	// https://www.ecma-international.org/ecma-262/6.0/#sec-objectcreate
       
 17529 	ObjectCreate: function ObjectCreate(proto, internalSlotsList) {
       
 17530 		if (proto !== null && this.Type(proto) !== 'Object') {
       
 17531 			throw new $TypeError('Assertion failed: proto must be null or an object');
       
 17532 		}
       
 17533 		var slots = arguments.length < 2 ? [] : internalSlotsList;
       
 17534 		if (slots.length > 0) {
       
 17535 			throw new $SyntaxError('es-abstract does not yet support internal slots');
       
 17536 		}
       
 17537 
       
 17538 		if (proto === null && !$ObjectCreate) {
       
 17539 			throw new $SyntaxError('native Object.create support is required to create null objects');
       
 17540 		}
       
 17541 
       
 17542 		return $ObjectCreate(proto);
       
 17543 	},
       
 17544 
       
 17545 	// https://ecma-international.org/ecma-262/6.0/#sec-advancestringindex
       
 17546 	AdvanceStringIndex: function AdvanceStringIndex(S, index, unicode) {
       
 17547 		if (this.Type(S) !== 'String') {
       
 17548 			throw new $TypeError('S must be a String');
       
 17549 		}
       
 17550 		if (!this.IsInteger(index) || index < 0 || index > MAX_SAFE_INTEGER) {
       
 17551 			throw new $TypeError('Assertion failed: length must be an integer >= 0 and <= 2**53');
       
 17552 		}
       
 17553 		if (this.Type(unicode) !== 'Boolean') {
       
 17554 			throw new $TypeError('Assertion failed: unicode must be a Boolean');
       
 17555 		}
       
 17556 		if (!unicode) {
       
 17557 			return index + 1;
       
 17558 		}
       
 17559 		var length = S.length;
       
 17560 		if ((index + 1) >= length) {
       
 17561 			return index + 1;
       
 17562 		}
       
 17563 
       
 17564 		var first = $charCodeAt(S, index);
       
 17565 		if (first < 0xD800 || first > 0xDBFF) {
       
 17566 			return index + 1;
       
 17567 		}
       
 17568 
       
 17569 		var second = $charCodeAt(S, index + 1);
       
 17570 		if (second < 0xDC00 || second > 0xDFFF) {
       
 17571 			return index + 1;
       
 17572 		}
       
 17573 
       
 17574 		return index + 2;
       
 17575 	}
       
 17576 });
       
 17577 
       
 17578 delete ES6.CheckObjectCoercible; // renamed in ES6 to RequireObjectCoercible
       
 17579 
       
 17580 module.exports = ES6;
       
 17581 
       
 17582 
       
 17583 /***/ }),
       
 17584 /* 271 */
       
 17585 /***/ (function(module, exports, __webpack_require__) {
       
 17586 
       
 17587 "use strict";
       
 17588 
       
 17589 
       
 17590 module.exports = __webpack_require__(272);
       
 17591 
       
 17592 
       
 17593 /***/ }),
       
 17594 /* 272 */
       
 17595 /***/ (function(module, exports, __webpack_require__) {
       
 17596 
       
 17597 "use strict";
       
 17598 
       
 17599 
       
 17600 var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
       
 17601 
       
 17602 var isPrimitive = __webpack_require__(144);
       
 17603 var isCallable = __webpack_require__(123);
       
 17604 var isDate = __webpack_require__(273);
       
 17605 var isSymbol = __webpack_require__(145);
       
 17606 
       
 17607 var ordinaryToPrimitive = function OrdinaryToPrimitive(O, hint) {
       
 17608 	if (typeof O === 'undefined' || O === null) {
       
 17609 		throw new TypeError('Cannot call method on ' + O);
       
 17610 	}
       
 17611 	if (typeof hint !== 'string' || (hint !== 'number' && hint !== 'string')) {
       
 17612 		throw new TypeError('hint must be "string" or "number"');
       
 17613 	}
       
 17614 	var methodNames = hint === 'string' ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
       
 17615 	var method, result, i;
       
 17616 	for (i = 0; i < methodNames.length; ++i) {
       
 17617 		method = O[methodNames[i]];
       
 17618 		if (isCallable(method)) {
       
 17619 			result = method.call(O);
       
 17620 			if (isPrimitive(result)) {
       
 17621 				return result;
       
 17622 			}
       
 17623 		}
       
 17624 	}
       
 17625 	throw new TypeError('No default value');
       
 17626 };
       
 17627 
       
 17628 var GetMethod = function GetMethod(O, P) {
       
 17629 	var func = O[P];
       
 17630 	if (func !== null && typeof func !== 'undefined') {
       
 17631 		if (!isCallable(func)) {
       
 17632 			throw new TypeError(func + ' returned for property ' + P + ' of object ' + O + ' is not a function');
       
 17633 		}
       
 17634 		return func;
       
 17635 	}
       
 17636 	return void 0;
       
 17637 };
       
 17638 
       
 17639 // http://www.ecma-international.org/ecma-262/6.0/#sec-toprimitive
       
 17640 module.exports = function ToPrimitive(input) {
       
 17641 	if (isPrimitive(input)) {
       
 17642 		return input;
       
 17643 	}
       
 17644 	var hint = 'default';
       
 17645 	if (arguments.length > 1) {
       
 17646 		if (arguments[1] === String) {
       
 17647 			hint = 'string';
       
 17648 		} else if (arguments[1] === Number) {
       
 17649 			hint = 'number';
       
 17650 		}
       
 17651 	}
       
 17652 
       
 17653 	var exoticToPrim;
       
 17654 	if (hasSymbols) {
       
 17655 		if (Symbol.toPrimitive) {
       
 17656 			exoticToPrim = GetMethod(input, Symbol.toPrimitive);
       
 17657 		} else if (isSymbol(input)) {
       
 17658 			exoticToPrim = Symbol.prototype.valueOf;
       
 17659 		}
       
 17660 	}
       
 17661 	if (typeof exoticToPrim !== 'undefined') {
       
 17662 		var result = exoticToPrim.call(input, hint);
       
 17663 		if (isPrimitive(result)) {
       
 17664 			return result;
       
 17665 		}
       
 17666 		throw new TypeError('unable to convert exotic object to primitive');
       
 17667 	}
       
 17668 	if (hint === 'default' && (isDate(input) || isSymbol(input))) {
       
 17669 		hint = 'string';
       
 17670 	}
       
 17671 	return ordinaryToPrimitive(input, hint === 'default' ? 'number' : hint);
       
 17672 };
       
 17673 
       
 17674 
       
 17675 /***/ }),
       
 17676 /* 273 */
       
 17677 /***/ (function(module, exports, __webpack_require__) {
       
 17678 
       
 17679 "use strict";
       
 17680 
       
 17681 
       
 17682 var getDay = Date.prototype.getDay;
       
 17683 var tryDateObject = function tryDateObject(value) {
       
 17684 	try {
       
 17685 		getDay.call(value);
       
 17686 		return true;
       
 17687 	} catch (e) {
       
 17688 		return false;
       
 17689 	}
       
 17690 };
       
 17691 
       
 17692 var toStr = Object.prototype.toString;
       
 17693 var dateClass = '[object Date]';
       
 17694 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
 17695 
       
 17696 module.exports = function isDateObject(value) {
       
 17697 	if (typeof value !== 'object' || value === null) { return false; }
       
 17698 	return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;
       
 17699 };
       
 17700 
       
 17701 
       
 17702 /***/ }),
       
 17703 /* 274 */
       
 17704 /***/ (function(module, exports, __webpack_require__) {
       
 17705 
       
 17706 "use strict";
       
 17707 /* WEBPACK VAR INJECTION */(function(global) {
       
 17708 
       
 17709 var origSymbol = global.Symbol;
       
 17710 var hasSymbolSham = __webpack_require__(146);
       
 17711 
       
 17712 module.exports = function hasNativeSymbols() {
       
 17713 	if (typeof origSymbol !== 'function') { return false; }
       
 17714 	if (typeof Symbol !== 'function') { return false; }
       
 17715 	if (typeof origSymbol('foo') !== 'symbol') { return false; }
       
 17716 	if (typeof Symbol('bar') !== 'symbol') { return false; }
       
 17717 
       
 17718 	return hasSymbolSham();
       
 17719 };
       
 17720 
       
 17721 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(59)))
       
 17722 
       
 17723 /***/ }),
       
 17724 /* 275 */
       
 17725 /***/ (function(module, exports) {
       
 17726 
       
 17727 module.exports = function isPrimitive(value) {
       
 17728 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
       
 17729 };
       
 17730 
       
 17731 
       
 17732 /***/ }),
       
 17733 /* 276 */
       
 17734 /***/ (function(module, exports, __webpack_require__) {
       
 17735 
       
 17736 "use strict";
       
 17737 
       
 17738 
       
 17739 var GetIntrinsic = __webpack_require__(147);
       
 17740 
       
 17741 var $Object = GetIntrinsic('%Object%');
       
 17742 var $TypeError = GetIntrinsic('%TypeError%');
       
 17743 var $String = GetIntrinsic('%String%');
       
 17744 
       
 17745 var $isNaN = __webpack_require__(148);
       
 17746 var $isFinite = __webpack_require__(149);
       
 17747 
       
 17748 var sign = __webpack_require__(150);
       
 17749 var mod = __webpack_require__(151);
       
 17750 
       
 17751 var IsCallable = __webpack_require__(123);
       
 17752 var toPrimitive = __webpack_require__(277);
       
 17753 
       
 17754 var has = __webpack_require__(91);
       
 17755 
       
 17756 // https://es5.github.io/#x9
       
 17757 var ES5 = {
       
 17758 	ToPrimitive: toPrimitive,
       
 17759 
       
 17760 	ToBoolean: function ToBoolean(value) {
       
 17761 		return !!value;
       
 17762 	},
       
 17763 	ToNumber: function ToNumber(value) {
       
 17764 		return +value; // eslint-disable-line no-implicit-coercion
       
 17765 	},
       
 17766 	ToInteger: function ToInteger(value) {
       
 17767 		var number = this.ToNumber(value);
       
 17768 		if ($isNaN(number)) { return 0; }
       
 17769 		if (number === 0 || !$isFinite(number)) { return number; }
       
 17770 		return sign(number) * Math.floor(Math.abs(number));
       
 17771 	},
       
 17772 	ToInt32: function ToInt32(x) {
       
 17773 		return this.ToNumber(x) >> 0;
       
 17774 	},
       
 17775 	ToUint32: function ToUint32(x) {
       
 17776 		return this.ToNumber(x) >>> 0;
       
 17777 	},
       
 17778 	ToUint16: function ToUint16(value) {
       
 17779 		var number = this.ToNumber(value);
       
 17780 		if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; }
       
 17781 		var posInt = sign(number) * Math.floor(Math.abs(number));
       
 17782 		return mod(posInt, 0x10000);
       
 17783 	},
       
 17784 	ToString: function ToString(value) {
       
 17785 		return $String(value);
       
 17786 	},
       
 17787 	ToObject: function ToObject(value) {
       
 17788 		this.CheckObjectCoercible(value);
       
 17789 		return $Object(value);
       
 17790 	},
       
 17791 	CheckObjectCoercible: function CheckObjectCoercible(value, optMessage) {
       
 17792 		/* jshint eqnull:true */
       
 17793 		if (value == null) {
       
 17794 			throw new $TypeError(optMessage || 'Cannot call method on ' + value);
       
 17795 		}
       
 17796 		return value;
       
 17797 	},
       
 17798 	IsCallable: IsCallable,
       
 17799 	SameValue: function SameValue(x, y) {
       
 17800 		if (x === y) { // 0 === -0, but they are not identical.
       
 17801 			if (x === 0) { return 1 / x === 1 / y; }
       
 17802 			return true;
       
 17803 		}
       
 17804 		return $isNaN(x) && $isNaN(y);
       
 17805 	},
       
 17806 
       
 17807 	// https://www.ecma-international.org/ecma-262/5.1/#sec-8
       
 17808 	Type: function Type(x) {
       
 17809 		if (x === null) {
       
 17810 			return 'Null';
       
 17811 		}
       
 17812 		if (typeof x === 'undefined') {
       
 17813 			return 'Undefined';
       
 17814 		}
       
 17815 		if (typeof x === 'function' || typeof x === 'object') {
       
 17816 			return 'Object';
       
 17817 		}
       
 17818 		if (typeof x === 'number') {
       
 17819 			return 'Number';
       
 17820 		}
       
 17821 		if (typeof x === 'boolean') {
       
 17822 			return 'Boolean';
       
 17823 		}
       
 17824 		if (typeof x === 'string') {
       
 17825 			return 'String';
       
 17826 		}
       
 17827 	},
       
 17828 
       
 17829 	// https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
       
 17830 	IsPropertyDescriptor: function IsPropertyDescriptor(Desc) {
       
 17831 		if (this.Type(Desc) !== 'Object') {
       
 17832 			return false;
       
 17833 		}
       
 17834 		var allowed = {
       
 17835 			'[[Configurable]]': true,
       
 17836 			'[[Enumerable]]': true,
       
 17837 			'[[Get]]': true,
       
 17838 			'[[Set]]': true,
       
 17839 			'[[Value]]': true,
       
 17840 			'[[Writable]]': true
       
 17841 		};
       
 17842 		// jscs:disable
       
 17843 		for (var key in Desc) { // eslint-disable-line
       
 17844 			if (has(Desc, key) && !allowed[key]) {
       
 17845 				return false;
       
 17846 			}
       
 17847 		}
       
 17848 		// jscs:enable
       
 17849 		var isData = has(Desc, '[[Value]]');
       
 17850 		var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
       
 17851 		if (isData && IsAccessor) {
       
 17852 			throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
       
 17853 		}
       
 17854 		return true;
       
 17855 	},
       
 17856 
       
 17857 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.1
       
 17858 	IsAccessorDescriptor: function IsAccessorDescriptor(Desc) {
       
 17859 		if (typeof Desc === 'undefined') {
       
 17860 			return false;
       
 17861 		}
       
 17862 
       
 17863 		if (!this.IsPropertyDescriptor(Desc)) {
       
 17864 			throw new $TypeError('Desc must be a Property Descriptor');
       
 17865 		}
       
 17866 
       
 17867 		if (!has(Desc, '[[Get]]') && !has(Desc, '[[Set]]')) {
       
 17868 			return false;
       
 17869 		}
       
 17870 
       
 17871 		return true;
       
 17872 	},
       
 17873 
       
 17874 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.2
       
 17875 	IsDataDescriptor: function IsDataDescriptor(Desc) {
       
 17876 		if (typeof Desc === 'undefined') {
       
 17877 			return false;
       
 17878 		}
       
 17879 
       
 17880 		if (!this.IsPropertyDescriptor(Desc)) {
       
 17881 			throw new $TypeError('Desc must be a Property Descriptor');
       
 17882 		}
       
 17883 
       
 17884 		if (!has(Desc, '[[Value]]') && !has(Desc, '[[Writable]]')) {
       
 17885 			return false;
       
 17886 		}
       
 17887 
       
 17888 		return true;
       
 17889 	},
       
 17890 
       
 17891 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.3
       
 17892 	IsGenericDescriptor: function IsGenericDescriptor(Desc) {
       
 17893 		if (typeof Desc === 'undefined') {
       
 17894 			return false;
       
 17895 		}
       
 17896 
       
 17897 		if (!this.IsPropertyDescriptor(Desc)) {
       
 17898 			throw new $TypeError('Desc must be a Property Descriptor');
       
 17899 		}
       
 17900 
       
 17901 		if (!this.IsAccessorDescriptor(Desc) && !this.IsDataDescriptor(Desc)) {
       
 17902 			return true;
       
 17903 		}
       
 17904 
       
 17905 		return false;
       
 17906 	},
       
 17907 
       
 17908 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.4
       
 17909 	FromPropertyDescriptor: function FromPropertyDescriptor(Desc) {
       
 17910 		if (typeof Desc === 'undefined') {
       
 17911 			return Desc;
       
 17912 		}
       
 17913 
       
 17914 		if (!this.IsPropertyDescriptor(Desc)) {
       
 17915 			throw new $TypeError('Desc must be a Property Descriptor');
       
 17916 		}
       
 17917 
       
 17918 		if (this.IsDataDescriptor(Desc)) {
       
 17919 			return {
       
 17920 				value: Desc['[[Value]]'],
       
 17921 				writable: !!Desc['[[Writable]]'],
       
 17922 				enumerable: !!Desc['[[Enumerable]]'],
       
 17923 				configurable: !!Desc['[[Configurable]]']
       
 17924 			};
       
 17925 		} else if (this.IsAccessorDescriptor(Desc)) {
       
 17926 			return {
       
 17927 				get: Desc['[[Get]]'],
       
 17928 				set: Desc['[[Set]]'],
       
 17929 				enumerable: !!Desc['[[Enumerable]]'],
       
 17930 				configurable: !!Desc['[[Configurable]]']
       
 17931 			};
       
 17932 		} else {
       
 17933 			throw new $TypeError('FromPropertyDescriptor must be called with a fully populated Property Descriptor');
       
 17934 		}
       
 17935 	},
       
 17936 
       
 17937 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.5
       
 17938 	ToPropertyDescriptor: function ToPropertyDescriptor(Obj) {
       
 17939 		if (this.Type(Obj) !== 'Object') {
       
 17940 			throw new $TypeError('ToPropertyDescriptor requires an object');
       
 17941 		}
       
 17942 
       
 17943 		var desc = {};
       
 17944 		if (has(Obj, 'enumerable')) {
       
 17945 			desc['[[Enumerable]]'] = this.ToBoolean(Obj.enumerable);
       
 17946 		}
       
 17947 		if (has(Obj, 'configurable')) {
       
 17948 			desc['[[Configurable]]'] = this.ToBoolean(Obj.configurable);
       
 17949 		}
       
 17950 		if (has(Obj, 'value')) {
       
 17951 			desc['[[Value]]'] = Obj.value;
       
 17952 		}
       
 17953 		if (has(Obj, 'writable')) {
       
 17954 			desc['[[Writable]]'] = this.ToBoolean(Obj.writable);
       
 17955 		}
       
 17956 		if (has(Obj, 'get')) {
       
 17957 			var getter = Obj.get;
       
 17958 			if (typeof getter !== 'undefined' && !this.IsCallable(getter)) {
       
 17959 				throw new TypeError('getter must be a function');
       
 17960 			}
       
 17961 			desc['[[Get]]'] = getter;
       
 17962 		}
       
 17963 		if (has(Obj, 'set')) {
       
 17964 			var setter = Obj.set;
       
 17965 			if (typeof setter !== 'undefined' && !this.IsCallable(setter)) {
       
 17966 				throw new $TypeError('setter must be a function');
       
 17967 			}
       
 17968 			desc['[[Set]]'] = setter;
       
 17969 		}
       
 17970 
       
 17971 		if ((has(desc, '[[Get]]') || has(desc, '[[Set]]')) && (has(desc, '[[Value]]') || has(desc, '[[Writable]]'))) {
       
 17972 			throw new $TypeError('Invalid property descriptor. Cannot both specify accessors and a value or writable attribute');
       
 17973 		}
       
 17974 		return desc;
       
 17975 	}
       
 17976 };
       
 17977 
       
 17978 module.exports = ES5;
       
 17979 
       
 17980 
       
 17981 /***/ }),
       
 17982 /* 277 */
       
 17983 /***/ (function(module, exports, __webpack_require__) {
       
 17984 
       
 17985 "use strict";
       
 17986 
       
 17987 
       
 17988 var toStr = Object.prototype.toString;
       
 17989 
       
 17990 var isPrimitive = __webpack_require__(144);
       
 17991 
       
 17992 var isCallable = __webpack_require__(123);
       
 17993 
       
 17994 // http://ecma-international.org/ecma-262/5.1/#sec-8.12.8
       
 17995 var ES5internalSlots = {
       
 17996 	'[[DefaultValue]]': function (O) {
       
 17997 		var actualHint;
       
 17998 		if (arguments.length > 1) {
       
 17999 			actualHint = arguments[1];
       
 18000 		} else {
       
 18001 			actualHint = toStr.call(O) === '[object Date]' ? String : Number;
       
 18002 		}
       
 18003 
       
 18004 		if (actualHint === String || actualHint === Number) {
       
 18005 			var methods = actualHint === String ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
       
 18006 			var value, i;
       
 18007 			for (i = 0; i < methods.length; ++i) {
       
 18008 				if (isCallable(O[methods[i]])) {
       
 18009 					value = O[methods[i]]();
       
 18010 					if (isPrimitive(value)) {
       
 18011 						return value;
       
 18012 					}
       
 18013 				}
       
 18014 			}
       
 18015 			throw new TypeError('No default value');
       
 18016 		}
       
 18017 		throw new TypeError('invalid [[DefaultValue]] hint supplied');
       
 18018 	}
       
 18019 };
       
 18020 
       
 18021 // http://ecma-international.org/ecma-262/5.1/#sec-9.1
       
 18022 module.exports = function ToPrimitive(input) {
       
 18023 	if (isPrimitive(input)) {
       
 18024 		return input;
       
 18025 	}
       
 18026 	if (arguments.length > 1) {
       
 18027 		return ES5internalSlots['[[DefaultValue]]'](input, arguments[1]);
       
 18028 	}
       
 18029 	return ES5internalSlots['[[DefaultValue]]'](input);
       
 18030 };
       
 18031 
       
 18032 
       
 18033 /***/ }),
       
 18034 /* 278 */
       
 18035 /***/ (function(module, exports, __webpack_require__) {
       
 18036 
       
 18037 "use strict";
       
 18038 
       
 18039 
       
 18040 var has = __webpack_require__(91);
       
 18041 var regexExec = RegExp.prototype.exec;
       
 18042 var gOPD = Object.getOwnPropertyDescriptor;
       
 18043 
       
 18044 var tryRegexExecCall = function tryRegexExec(value) {
       
 18045 	try {
       
 18046 		var lastIndex = value.lastIndex;
       
 18047 		value.lastIndex = 0;
       
 18048 
       
 18049 		regexExec.call(value);
       
 18050 		return true;
       
 18051 	} catch (e) {
       
 18052 		return false;
       
 18053 	} finally {
       
 18054 		value.lastIndex = lastIndex;
       
 18055 	}
       
 18056 };
       
 18057 var toStr = Object.prototype.toString;
       
 18058 var regexClass = '[object RegExp]';
       
 18059 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
 18060 
       
 18061 module.exports = function isRegex(value) {
       
 18062 	if (!value || typeof value !== 'object') {
       
 18063 		return false;
       
 18064 	}
       
 18065 	if (!hasToStringTag) {
       
 18066 		return toStr.call(value) === regexClass;
       
 18067 	}
       
 18068 
       
 18069 	var descriptor = gOPD(value, 'lastIndex');
       
 18070 	var hasLastIndexDataProperty = descriptor && has(descriptor, 'value');
       
 18071 	if (!hasLastIndexDataProperty) {
       
 18072 		return false;
       
 18073 	}
       
 18074 
       
 18075 	return tryRegexExecCall(value);
       
 18076 };
       
 18077 
       
 18078 
       
 18079 /***/ }),
       
 18080 /* 279 */
       
 18081 /***/ (function(module, exports, __webpack_require__) {
       
 18082 
       
 18083 "use strict";
       
 18084 
       
 18085 
       
 18086 var define = __webpack_require__(73);
       
 18087 var getPolyfill = __webpack_require__(152);
       
 18088 
       
 18089 module.exports = function shimFlat() {
       
 18090 	var polyfill = getPolyfill();
       
 18091 	define(
       
 18092 		Array.prototype,
       
 18093 		{ flat: polyfill },
       
 18094 		{ flat: function () { return Array.prototype.flat !== polyfill; } }
       
 18095 	);
       
 18096 	return polyfill;
       
 18097 };
       
 18098 
       
 18099 
       
 18100 /***/ }),
       
 18101 /* 280 */
       
 18102 /***/ (function(module, exports, __webpack_require__) {
       
 18103 
       
 18104 "use strict";
       
 18105 /* WEBPACK VAR INJECTION */(function(global) {
       
 18106 
       
 18107 var define = __webpack_require__(73);
       
 18108 var isSymbol = __webpack_require__(145);
       
 18109 
       
 18110 var globalKey = '__ global cache key __';
       
 18111 /* istanbul ignore else */
       
 18112 // eslint-disable-next-line no-restricted-properties
       
 18113 if (typeof Symbol === 'function' && isSymbol(Symbol('foo')) && typeof Symbol['for'] === 'function') {
       
 18114 	// eslint-disable-next-line no-restricted-properties
       
 18115 	globalKey = Symbol['for'](globalKey);
       
 18116 }
       
 18117 
       
 18118 var trueThunk = function () {
       
 18119 	return true;
       
 18120 };
       
 18121 
       
 18122 var ensureCache = function ensureCache() {
       
 18123 	if (!global[globalKey]) {
       
 18124 		var properties = {};
       
 18125 		properties[globalKey] = {};
       
 18126 		var predicates = {};
       
 18127 		predicates[globalKey] = trueThunk;
       
 18128 		define(global, properties, predicates);
       
 18129 	}
       
 18130 	return global[globalKey];
       
 18131 };
       
 18132 
       
 18133 var cache = ensureCache();
       
 18134 
       
 18135 var isPrimitive = function isPrimitive(val) {
       
 18136 	return val === null || (typeof val !== 'object' && typeof val !== 'function');
       
 18137 };
       
 18138 
       
 18139 var getPrimitiveKey = function getPrimitiveKey(val) {
       
 18140 	if (isSymbol(val)) {
       
 18141 		return Symbol.prototype.valueOf.call(val);
       
 18142 	}
       
 18143 	return typeof val + ' | ' + String(val);
       
 18144 };
       
 18145 
       
 18146 var requirePrimitiveKey = function requirePrimitiveKey(val) {
       
 18147 	if (!isPrimitive(val)) {
       
 18148 		throw new TypeError('key must not be an object');
       
 18149 	}
       
 18150 };
       
 18151 
       
 18152 var globalCache = {
       
 18153 	clear: function clear() {
       
 18154 		delete global[globalKey];
       
 18155 		cache = ensureCache();
       
 18156 	},
       
 18157 
       
 18158 	'delete': function deleteKey(key) {
       
 18159 		requirePrimitiveKey(key);
       
 18160 		delete cache[getPrimitiveKey(key)];
       
 18161 		return !globalCache.has(key);
       
 18162 	},
       
 18163 
       
 18164 	get: function get(key) {
       
 18165 		requirePrimitiveKey(key);
       
 18166 		return cache[getPrimitiveKey(key)];
       
 18167 	},
       
 18168 
       
 18169 	has: function has(key) {
       
 18170 		requirePrimitiveKey(key);
       
 18171 		return getPrimitiveKey(key) in cache;
       
 18172 	},
       
 18173 
       
 18174 	set: function set(key, value) {
       
 18175 		requirePrimitiveKey(key);
       
 18176 		var primitiveKey = getPrimitiveKey(key);
       
 18177 		var props = {};
       
 18178 		props[primitiveKey] = value;
       
 18179 		var predicates = {};
       
 18180 		predicates[primitiveKey] = trueThunk;
       
 18181 		define(cache, props, predicates);
       
 18182 		return globalCache.has(key);
       
 18183 	},
       
 18184 
       
 18185 	setIfMissingThenGet: function setIfMissingThenGet(key, valueThunk) {
       
 18186 		if (globalCache.has(key)) {
       
 18187 			return globalCache.get(key);
       
 18188 		}
       
 18189 		var item = valueThunk();
       
 18190 		globalCache.set(key, item);
       
 18191 		return item;
       
 18192 	}
       
 18193 };
       
 18194 
       
 18195 module.exports = globalCache;
       
 18196 
       
 18197 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(59)))
       
 18198 
       
 18199 /***/ }),
       
 18200 /* 281 */
       
 18201 /***/ (function(module, exports) {
       
 18202 
       
 18203 Object.defineProperty(exports, "__esModule", {
       
 18204   value: true
       
 18205 });
       
 18206 var GLOBAL_CACHE_KEY = 'reactWithStylesInterfaceCSS';
       
 18207 var MAX_SPECIFICITY = 20;
       
 18208 
       
 18209 exports.GLOBAL_CACHE_KEY = GLOBAL_CACHE_KEY;
       
 18210 exports.MAX_SPECIFICITY = MAX_SPECIFICITY;
       
 18211 
       
 18212 /***/ }),
       
 18213 /* 282 */
       
 18214 /***/ (function(module, exports) {
       
 18215 
       
 18216 Object.defineProperty(exports, "__esModule", {
       
 18217   value: true
       
 18218 });
       
 18219 exports['default'] = getClassName;
       
 18220 /**
       
 18221  * Construct a class name.
       
 18222  *
       
 18223  * namespace {String} Used to construct unique class names.
       
 18224  * styleName {String} Name identifying the specific style.
       
 18225  *
       
 18226  * Return the class name.
       
 18227  */
       
 18228 function getClassName(namespace, styleName) {
       
 18229   var namespaceSegment = namespace.length > 0 ? String(namespace) + '__' : '';
       
 18230   return '' + namespaceSegment + String(styleName);
       
 18231 }
       
 18232 
       
 18233 /***/ }),
       
 18234 /* 283 */
       
 18235 /***/ (function(module, exports) {
       
 18236 
       
 18237 Object.defineProperty(exports, "__esModule", {
       
 18238   value: true
       
 18239 });
       
 18240 // This function takes an array of styles and separates them into styles that
       
 18241 // are handled by Aphrodite and inline styles.
       
 18242 function separateStyles(stylesArray) {
       
 18243   var classNames = [];
       
 18244 
       
 18245   // Since determining if an Object is empty requires collecting all of its
       
 18246   // keys, and we want the best performance in this code because we are in the
       
 18247   // render path, we are going to do a little bookkeeping ourselves.
       
 18248   var hasInlineStyles = false;
       
 18249   var inlineStyles = {};
       
 18250 
       
 18251   // This is run on potentially every node in the tree when rendering, where
       
 18252   // performance is critical. Normally we would prefer using `forEach`, but
       
 18253   // old-fashioned for loops are faster so that's what we have chosen here.
       
 18254   for (var i = 0; i < stylesArray.length; i++) {
       
 18255     // eslint-disable-line no-plusplus
       
 18256     var style = stylesArray[i];
       
 18257 
       
 18258     // If this  style is falsy, we just want to disregard it. This allows for
       
 18259     // syntax like:
       
 18260     //
       
 18261     //   css(isFoo && styles.foo)
       
 18262     if (style) {
       
 18263       if (typeof style === 'string') {
       
 18264         classNames.push(style);
       
 18265       } else {
       
 18266         Object.assign(inlineStyles, style);
       
 18267         hasInlineStyles = true;
       
 18268       }
       
 18269     }
       
 18270   }
       
 18271 
       
 18272   return {
       
 18273     classNames: classNames,
       
 18274     hasInlineStyles: hasInlineStyles,
       
 18275     inlineStyles: inlineStyles
       
 18276   };
       
 18277 }
       
 18278 
       
 18279 exports['default'] = separateStyles;
       
 18280 
       
 18281 /***/ }),
       
 18282 /* 284 */
       
 18283 /***/ (function(module, exports, __webpack_require__) {
       
 18284 
       
 18285 "use strict";
       
 18286 
       
 18287 
       
 18288 Object.defineProperty(exports, "__esModule", {
       
 18289   value: true
       
 18290 });
       
 18291 exports['default'] = registerInterfaceWithDefaultTheme;
       
 18292 
       
 18293 var _ThemedStyleSheet = __webpack_require__(153);
       
 18294 
       
 18295 var _ThemedStyleSheet2 = _interopRequireDefault(_ThemedStyleSheet);
       
 18296 
       
 18297 var _DefaultTheme = __webpack_require__(154);
       
 18298 
       
 18299 var _DefaultTheme2 = _interopRequireDefault(_DefaultTheme);
       
 18300 
       
 18301 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 18302 
       
 18303 function registerInterfaceWithDefaultTheme(reactWithStylesInterface) {
       
 18304   _ThemedStyleSheet2['default'].registerInterface(reactWithStylesInterface);
       
 18305   _ThemedStyleSheet2['default'].registerTheme(_DefaultTheme2['default']);
       
 18306 }
       
 18307 
       
 18308 /***/ }),
       
 18309 /* 285 */
       
 18310 /***/ (function(module, exports, __webpack_require__) {
       
 18311 
       
 18312 "use strict";
       
 18313 
       
 18314 
       
 18315 Object.defineProperty(exports, "__esModule", {
       
 18316   value: true
       
 18317 });
       
 18318 
       
 18319 var _CalendarDay = __webpack_require__(125);
       
 18320 
       
 18321 Object.defineProperty(exports, 'CalendarDay', {
       
 18322   enumerable: true,
       
 18323   get: function () {
       
 18324     function get() {
       
 18325       return _interopRequireDefault(_CalendarDay)['default'];
       
 18326     }
       
 18327 
       
 18328     return get;
       
 18329   }()
       
 18330 });
       
 18331 
       
 18332 var _CalendarMonth = __webpack_require__(158);
       
 18333 
       
 18334 Object.defineProperty(exports, 'CalendarMonth', {
       
 18335   enumerable: true,
       
 18336   get: function () {
       
 18337     function get() {
       
 18338       return _interopRequireDefault(_CalendarMonth)['default'];
       
 18339     }
       
 18340 
       
 18341     return get;
       
 18342   }()
       
 18343 });
       
 18344 
       
 18345 var _CalendarMonthGrid = __webpack_require__(160);
       
 18346 
       
 18347 Object.defineProperty(exports, 'CalendarMonthGrid', {
       
 18348   enumerable: true,
       
 18349   get: function () {
       
 18350     function get() {
       
 18351       return _interopRequireDefault(_CalendarMonthGrid)['default'];
       
 18352     }
       
 18353 
       
 18354     return get;
       
 18355   }()
       
 18356 });
       
 18357 
       
 18358 var _DateRangePicker = __webpack_require__(302);
       
 18359 
       
 18360 Object.defineProperty(exports, 'DateRangePicker', {
       
 18361   enumerable: true,
       
 18362   get: function () {
       
 18363     function get() {
       
 18364       return _interopRequireDefault(_DateRangePicker)['default'];
       
 18365     }
       
 18366 
       
 18367     return get;
       
 18368   }()
       
 18369 });
       
 18370 
       
 18371 var _DateRangePickerInput = __webpack_require__(180);
       
 18372 
       
 18373 Object.defineProperty(exports, 'DateRangePickerInput', {
       
 18374   enumerable: true,
       
 18375   get: function () {
       
 18376     function get() {
       
 18377       return _interopRequireDefault(_DateRangePickerInput)['default'];
       
 18378     }
       
 18379 
       
 18380     return get;
       
 18381   }()
       
 18382 });
       
 18383 
       
 18384 var _DateRangePickerInputController = __webpack_require__(179);
       
 18385 
       
 18386 Object.defineProperty(exports, 'DateRangePickerInputController', {
       
 18387   enumerable: true,
       
 18388   get: function () {
       
 18389     function get() {
       
 18390       return _interopRequireDefault(_DateRangePickerInputController)['default'];
       
 18391     }
       
 18392 
       
 18393     return get;
       
 18394   }()
       
 18395 });
       
 18396 
       
 18397 var _DateRangePickerShape = __webpack_require__(172);
       
 18398 
       
 18399 Object.defineProperty(exports, 'DateRangePickerShape', {
       
 18400   enumerable: true,
       
 18401   get: function () {
       
 18402     function get() {
       
 18403       return _interopRequireDefault(_DateRangePickerShape)['default'];
       
 18404     }
       
 18405 
       
 18406     return get;
       
 18407   }()
       
 18408 });
       
 18409 
       
 18410 var _DayPicker = __webpack_require__(131);
       
 18411 
       
 18412 Object.defineProperty(exports, 'DayPicker', {
       
 18413   enumerable: true,
       
 18414   get: function () {
       
 18415     function get() {
       
 18416       return _interopRequireDefault(_DayPicker)['default'];
       
 18417     }
       
 18418 
       
 18419     return get;
       
 18420   }()
       
 18421 });
       
 18422 
       
 18423 var _DayPickerRangeController = __webpack_require__(188);
       
 18424 
       
 18425 Object.defineProperty(exports, 'DayPickerRangeController', {
       
 18426   enumerable: true,
       
 18427   get: function () {
       
 18428     function get() {
       
 18429       return _interopRequireDefault(_DayPickerRangeController)['default'];
       
 18430     }
       
 18431 
       
 18432     return get;
       
 18433   }()
       
 18434 });
       
 18435 
       
 18436 var _DayPickerSingleDateController = __webpack_require__(194);
       
 18437 
       
 18438 Object.defineProperty(exports, 'DayPickerSingleDateController', {
       
 18439   enumerable: true,
       
 18440   get: function () {
       
 18441     function get() {
       
 18442       return _interopRequireDefault(_DayPickerSingleDateController)['default'];
       
 18443     }
       
 18444 
       
 18445     return get;
       
 18446   }()
       
 18447 });
       
 18448 
       
 18449 var _SingleDatePicker = __webpack_require__(333);
       
 18450 
       
 18451 Object.defineProperty(exports, 'SingleDatePicker', {
       
 18452   enumerable: true,
       
 18453   get: function () {
       
 18454     function get() {
       
 18455       return _interopRequireDefault(_SingleDatePicker)['default'];
       
 18456     }
       
 18457 
       
 18458     return get;
       
 18459   }()
       
 18460 });
       
 18461 
       
 18462 var _SingleDatePickerInput = __webpack_require__(196);
       
 18463 
       
 18464 Object.defineProperty(exports, 'SingleDatePickerInput', {
       
 18465   enumerable: true,
       
 18466   get: function () {
       
 18467     function get() {
       
 18468       return _interopRequireDefault(_SingleDatePickerInput)['default'];
       
 18469     }
       
 18470 
       
 18471     return get;
       
 18472   }()
       
 18473 });
       
 18474 
       
 18475 var _SingleDatePickerShape = __webpack_require__(195);
       
 18476 
       
 18477 Object.defineProperty(exports, 'SingleDatePickerShape', {
       
 18478   enumerable: true,
       
 18479   get: function () {
       
 18480     function get() {
       
 18481       return _interopRequireDefault(_SingleDatePickerShape)['default'];
       
 18482     }
       
 18483 
       
 18484     return get;
       
 18485   }()
       
 18486 });
       
 18487 
       
 18488 var _isInclusivelyAfterDay = __webpack_require__(94);
       
 18489 
       
 18490 Object.defineProperty(exports, 'isInclusivelyAfterDay', {
       
 18491   enumerable: true,
       
 18492   get: function () {
       
 18493     function get() {
       
 18494       return _interopRequireDefault(_isInclusivelyAfterDay)['default'];
       
 18495     }
       
 18496 
       
 18497     return get;
       
 18498   }()
       
 18499 });
       
 18500 
       
 18501 var _isInclusivelyBeforeDay = __webpack_require__(334);
       
 18502 
       
 18503 Object.defineProperty(exports, 'isInclusivelyBeforeDay', {
       
 18504   enumerable: true,
       
 18505   get: function () {
       
 18506     function get() {
       
 18507       return _interopRequireDefault(_isInclusivelyBeforeDay)['default'];
       
 18508     }
       
 18509 
       
 18510     return get;
       
 18511   }()
       
 18512 });
       
 18513 
       
 18514 var _isNextDay = __webpack_require__(192);
       
 18515 
       
 18516 Object.defineProperty(exports, 'isNextDay', {
       
 18517   enumerable: true,
       
 18518   get: function () {
       
 18519     function get() {
       
 18520       return _interopRequireDefault(_isNextDay)['default'];
       
 18521     }
       
 18522 
       
 18523     return get;
       
 18524   }()
       
 18525 });
       
 18526 
       
 18527 var _isSameDay = __webpack_require__(79);
       
 18528 
       
 18529 Object.defineProperty(exports, 'isSameDay', {
       
 18530   enumerable: true,
       
 18531   get: function () {
       
 18532     function get() {
       
 18533       return _interopRequireDefault(_isSameDay)['default'];
       
 18534     }
       
 18535 
       
 18536     return get;
       
 18537   }()
       
 18538 });
       
 18539 
       
 18540 var _toISODateString = __webpack_require__(102);
       
 18541 
       
 18542 Object.defineProperty(exports, 'toISODateString', {
       
 18543   enumerable: true,
       
 18544   get: function () {
       
 18545     function get() {
       
 18546       return _interopRequireDefault(_toISODateString)['default'];
       
 18547     }
       
 18548 
       
 18549     return get;
       
 18550   }()
       
 18551 });
       
 18552 
       
 18553 var _toLocalizedDateString = __webpack_require__(129);
       
 18554 
       
 18555 Object.defineProperty(exports, 'toLocalizedDateString', {
       
 18556   enumerable: true,
       
 18557   get: function () {
       
 18558     function get() {
       
 18559       return _interopRequireDefault(_toLocalizedDateString)['default'];
       
 18560     }
       
 18561 
       
 18562     return get;
       
 18563   }()
       
 18564 });
       
 18565 
       
 18566 var _toMomentObject = __webpack_require__(80);
       
 18567 
       
 18568 Object.defineProperty(exports, 'toMomentObject', {
       
 18569   enumerable: true,
       
 18570   get: function () {
       
 18571     function get() {
       
 18572       return _interopRequireDefault(_toMomentObject)['default'];
       
 18573     }
       
 18574 
       
 18575     return get;
       
 18576   }()
       
 18577 });
       
 18578 
       
 18579 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 18580 
       
 18581 /***/ }),
       
 18582 /* 286 */
       
 18583 /***/ (function(module, exports, __webpack_require__) {
       
 18584 
       
 18585 "use strict";
       
 18586 
       
 18587 
       
 18588 var define = __webpack_require__(73);
       
 18589 var getPolyfill = __webpack_require__(156);
       
 18590 
       
 18591 module.exports = function shimAssign() {
       
 18592 	var polyfill = getPolyfill();
       
 18593 	define(
       
 18594 		Object,
       
 18595 		{ assign: polyfill },
       
 18596 		{ assign: function () { return Object.assign !== polyfill; } }
       
 18597 	);
       
 18598 	return polyfill;
       
 18599 };
       
 18600 
       
 18601 
       
 18602 /***/ }),
       
 18603 /* 287 */
       
 18604 /***/ (function(module, exports, __webpack_require__) {
       
 18605 
       
 18606 "use strict";
       
 18607 /**
       
 18608  * Copyright (c) 2013-present, Facebook, Inc.
       
 18609  *
       
 18610  * This source code is licensed under the MIT license found in the
       
 18611  * LICENSE file in the root directory of this source tree.
       
 18612  *
       
 18613  * @typechecks
       
 18614  * 
       
 18615  */
       
 18616 
       
 18617 /*eslint-disable no-self-compare */
       
 18618 
       
 18619 
       
 18620 
       
 18621 var hasOwnProperty = Object.prototype.hasOwnProperty;
       
 18622 
       
 18623 /**
       
 18624  * inlined Object.is polyfill to avoid requiring consumers ship their own
       
 18625  * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
       
 18626  */
       
 18627 function is(x, y) {
       
 18628   // SameValue algorithm
       
 18629   if (x === y) {
       
 18630     // Steps 1-5, 7-10
       
 18631     // Steps 6.b-6.e: +0 != -0
       
 18632     // Added the nonzero y check to make Flow happy, but it is redundant
       
 18633     return x !== 0 || y !== 0 || 1 / x === 1 / y;
       
 18634   } else {
       
 18635     // Step 6.a: NaN == NaN
       
 18636     return x !== x && y !== y;
       
 18637   }
       
 18638 }
       
 18639 
       
 18640 /**
       
 18641  * Performs equality by iterating through keys on an object and returning false
       
 18642  * when any key has values which are not strictly equal between the arguments.
       
 18643  * Returns true when the values of all keys are strictly equal.
       
 18644  */
       
 18645 function shallowEqual(objA, objB) {
       
 18646   if (is(objA, objB)) {
       
 18647     return true;
       
 18648   }
       
 18649 
       
 18650   if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
       
 18651     return false;
       
 18652   }
       
 18653 
       
 18654   var keysA = Object.keys(objA);
       
 18655   var keysB = Object.keys(objB);
       
 18656 
       
 18657   if (keysA.length !== keysB.length) {
       
 18658     return false;
       
 18659   }
       
 18660 
       
 18661   // Test for A's keys different from B.
       
 18662   for (var i = 0; i < keysA.length; i++) {
       
 18663     if (!hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
       
 18664       return false;
       
 18665     }
       
 18666   }
       
 18667 
       
 18668   return true;
       
 18669 }
       
 18670 
       
 18671 module.exports = shallowEqual;
       
 18672 
       
 18673 /***/ }),
       
 18674 /* 288 */
       
 18675 /***/ (function(module, exports, __webpack_require__) {
       
 18676 
       
 18677 var moment = __webpack_require__(29);
       
 18678 
       
 18679 function isValidMoment(testMoment) {
       
 18680   if (typeof moment.isMoment === 'function' && !moment.isMoment(testMoment)) {
       
 18681     return false;
       
 18682   }
       
 18683 
       
 18684   /* istanbul ignore else  */
       
 18685   if (typeof testMoment.isValid === 'function') {
       
 18686     // moment 1.7.0+
       
 18687     return testMoment.isValid();
       
 18688   }
       
 18689 
       
 18690   /* istanbul ignore next */
       
 18691   return !isNaN(testMoment);
       
 18692 }
       
 18693 
       
 18694 module.exports = {
       
 18695   isValidMoment : isValidMoment,
       
 18696 };
       
 18697 
       
 18698 
       
 18699 /***/ }),
       
 18700 /* 289 */
       
 18701 /***/ (function(module, exports) {
       
 18702 
       
 18703 var messages = {
       
 18704   invalidPredicate: '`predicate` must be a function',
       
 18705   invalidPropValidator: '`propValidator` must be a function',
       
 18706   requiredCore: 'is marked as required',
       
 18707   invalidTypeCore: 'Invalid input type',
       
 18708   predicateFailureCore: 'Failed to succeed with predicate',
       
 18709   anonymousMessage: '<<anonymous>>',
       
 18710   baseInvalidMessage: 'Invalid ',
       
 18711 };
       
 18712 
       
 18713 function constructPropValidatorVariations(propValidator) {
       
 18714   if (typeof propValidator !== 'function') {
       
 18715     throw new Error(messages.invalidPropValidator);
       
 18716   }
       
 18717 
       
 18718   var requiredPropValidator = propValidator.bind(null, false, null);
       
 18719   requiredPropValidator.isRequired = propValidator.bind(null, true, null);
       
 18720 
       
 18721   requiredPropValidator.withPredicate = function predicateApplication(predicate) {
       
 18722     if (typeof predicate !== 'function') {
       
 18723       throw new Error(messages.invalidPredicate);
       
 18724     }
       
 18725     var basePropValidator = propValidator.bind(null, false, predicate);
       
 18726     basePropValidator.isRequired = propValidator.bind(null, true, predicate);
       
 18727     return basePropValidator;
       
 18728   };
       
 18729 
       
 18730   return requiredPropValidator;
       
 18731 }
       
 18732 
       
 18733 function createInvalidRequiredErrorMessage(propName, componentName, value) {
       
 18734   return new Error(
       
 18735     'The prop `' + propName + '` ' + messages.requiredCore +
       
 18736     ' in `' + componentName + '`, but its value is `' + value + '`.'
       
 18737   );
       
 18738 }
       
 18739 
       
 18740 var independentGuardianValue = -1;
       
 18741 
       
 18742 function preValidationRequireCheck(isRequired, componentName, propFullName, propValue) {
       
 18743   var isPropValueUndefined = typeof propValue === 'undefined';
       
 18744   var isPropValueNull = propValue === null;
       
 18745 
       
 18746   if (isRequired) {
       
 18747     if (isPropValueUndefined) {
       
 18748       return createInvalidRequiredErrorMessage(propFullName, componentName, 'undefined');
       
 18749     } else if (isPropValueNull) {
       
 18750       return createInvalidRequiredErrorMessage(propFullName, componentName, 'null');
       
 18751     }
       
 18752   }
       
 18753 
       
 18754   if (isPropValueUndefined || isPropValueNull) {
       
 18755     return null;
       
 18756   }
       
 18757 
       
 18758   return independentGuardianValue;
       
 18759 }
       
 18760 
       
 18761 function createMomentChecker(type, typeValidator, validator, momentType) {
       
 18762 
       
 18763   function propValidator(
       
 18764     isRequired, // Bound parameter to indicate with the propType is required
       
 18765     predicate, // Bound parameter to allow user to add dynamic validation
       
 18766     props,
       
 18767     propName,
       
 18768     componentName,
       
 18769     location,
       
 18770     propFullName
       
 18771   ) {
       
 18772     var propValue = props[ propName ];
       
 18773     var propType = typeof propValue;
       
 18774 
       
 18775     componentName = componentName || messages.anonymousMessage;
       
 18776     propFullName = propFullName || propName;
       
 18777 
       
 18778     var preValidationRequireCheckValue = preValidationRequireCheck(
       
 18779       isRequired, componentName, propFullName, propValue
       
 18780     );
       
 18781 
       
 18782     if (preValidationRequireCheckValue !== independentGuardianValue) {
       
 18783       return preValidationRequireCheckValue;
       
 18784     }
       
 18785 
       
 18786     if (typeValidator && !typeValidator(propValue)) {
       
 18787       return new Error(
       
 18788         messages.invalidTypeCore + ': `' + propName + '` of type `' + propType + '` ' +
       
 18789         'supplied to `' + componentName + '`, expected `' + type + '`.'
       
 18790       );
       
 18791     }
       
 18792 
       
 18793     if (!validator(propValue)) {
       
 18794       return new Error(
       
 18795         messages.baseInvalidMessage + location + ' `' + propName + '` of type `' + propType + '` ' +
       
 18796         'supplied to `' + componentName + '`, expected `' + momentType + '`.'
       
 18797       );
       
 18798     }
       
 18799 
       
 18800     if (predicate && !predicate(propValue)) {
       
 18801       var predicateName = predicate.name || messages.anonymousMessage;
       
 18802       return new Error(
       
 18803         messages.baseInvalidMessage + location + ' `' + propName + '` of type `' + propType + '` ' +
       
 18804         'supplied to `' + componentName + '`. ' + messages.predicateFailureCore + ' `' +
       
 18805         predicateName + '`.'
       
 18806       );
       
 18807     }
       
 18808 
       
 18809     return null;
       
 18810 
       
 18811   }
       
 18812 
       
 18813   return constructPropValidatorVariations(propValidator);
       
 18814 
       
 18815 }
       
 18816 
       
 18817 module.exports = {
       
 18818   constructPropValidatorVariations: constructPropValidatorVariations,
       
 18819   createMomentChecker: createMomentChecker,
       
 18820   messages: messages,
       
 18821 };
       
 18822 
       
 18823 
       
 18824 /***/ }),
       
 18825 /* 290 */
       
 18826 /***/ (function(module, exports, __webpack_require__) {
       
 18827 
       
 18828 "use strict";
       
 18829 
       
 18830 
       
 18831 function noop() {
       
 18832   return null;
       
 18833 }
       
 18834 
       
 18835 noop.isRequired = noop;
       
 18836 
       
 18837 function noopThunk() {
       
 18838   return noop;
       
 18839 }
       
 18840 
       
 18841 module.exports = {
       
 18842   and: noopThunk,
       
 18843   between: noopThunk,
       
 18844   booleanSome: noopThunk,
       
 18845   childrenHavePropXorChildren: noopThunk,
       
 18846   childrenOf: noopThunk,
       
 18847   childrenOfType: noopThunk,
       
 18848   childrenSequenceOf: noopThunk,
       
 18849   componentWithName: noopThunk,
       
 18850   disallowedIf: noopThunk,
       
 18851   elementType: noopThunk,
       
 18852   empty: noopThunk,
       
 18853   explicitNull: noopThunk,
       
 18854   forbidExtraProps: Object,
       
 18855   integer: noopThunk,
       
 18856   keysOf: noopThunk,
       
 18857   mutuallyExclusiveProps: noopThunk,
       
 18858   mutuallyExclusiveTrueProps: noopThunk,
       
 18859   nChildren: noopThunk,
       
 18860   nonNegativeInteger: noop,
       
 18861   nonNegativeNumber: noopThunk,
       
 18862   numericString: noopThunk,
       
 18863   object: noopThunk,
       
 18864   or: noopThunk,
       
 18865   range: noopThunk,
       
 18866   ref: noopThunk,
       
 18867   requiredBy: noopThunk,
       
 18868   restrictedProp: noopThunk,
       
 18869   sequenceOf: noopThunk,
       
 18870   shape: noopThunk,
       
 18871   stringStartsWith: noopThunk,
       
 18872   uniqueArray: noopThunk,
       
 18873   uniqueArrayOf: noopThunk,
       
 18874   valuesOf: noopThunk,
       
 18875   withShape: noopThunk
       
 18876 };
       
 18877 
       
 18878 
       
 18879 /***/ }),
       
 18880 /* 291 */
       
 18881 /***/ (function(module, exports, __webpack_require__) {
       
 18882 
       
 18883 "use strict";
       
 18884 
       
 18885 
       
 18886 var isMergeableObject = function isMergeableObject(value) {
       
 18887 	return isNonNullObject(value)
       
 18888 		&& !isSpecial(value)
       
 18889 };
       
 18890 
       
 18891 function isNonNullObject(value) {
       
 18892 	return !!value && typeof value === 'object'
       
 18893 }
       
 18894 
       
 18895 function isSpecial(value) {
       
 18896 	var stringValue = Object.prototype.toString.call(value);
       
 18897 
       
 18898 	return stringValue === '[object RegExp]'
       
 18899 		|| stringValue === '[object Date]'
       
 18900 		|| isReactElement(value)
       
 18901 }
       
 18902 
       
 18903 // see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25
       
 18904 var canUseSymbol = typeof Symbol === 'function' && Symbol.for;
       
 18905 var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;
       
 18906 
       
 18907 function isReactElement(value) {
       
 18908 	return value.$$typeof === REACT_ELEMENT_TYPE
       
 18909 }
       
 18910 
       
 18911 function emptyTarget(val) {
       
 18912     return Array.isArray(val) ? [] : {}
       
 18913 }
       
 18914 
       
 18915 function cloneIfNecessary(value, optionsArgument) {
       
 18916     var clone = optionsArgument && optionsArgument.clone === true;
       
 18917     return (clone && isMergeableObject(value)) ? deepmerge(emptyTarget(value), value, optionsArgument) : value
       
 18918 }
       
 18919 
       
 18920 function defaultArrayMerge(target, source, optionsArgument) {
       
 18921     var destination = target.slice();
       
 18922     source.forEach(function(e, i) {
       
 18923         if (typeof destination[i] === 'undefined') {
       
 18924             destination[i] = cloneIfNecessary(e, optionsArgument);
       
 18925         } else if (isMergeableObject(e)) {
       
 18926             destination[i] = deepmerge(target[i], e, optionsArgument);
       
 18927         } else if (target.indexOf(e) === -1) {
       
 18928             destination.push(cloneIfNecessary(e, optionsArgument));
       
 18929         }
       
 18930     });
       
 18931     return destination
       
 18932 }
       
 18933 
       
 18934 function mergeObject(target, source, optionsArgument) {
       
 18935     var destination = {};
       
 18936     if (isMergeableObject(target)) {
       
 18937         Object.keys(target).forEach(function(key) {
       
 18938             destination[key] = cloneIfNecessary(target[key], optionsArgument);
       
 18939         });
       
 18940     }
       
 18941     Object.keys(source).forEach(function(key) {
       
 18942         if (!isMergeableObject(source[key]) || !target[key]) {
       
 18943             destination[key] = cloneIfNecessary(source[key], optionsArgument);
       
 18944         } else {
       
 18945             destination[key] = deepmerge(target[key], source[key], optionsArgument);
       
 18946         }
       
 18947     });
       
 18948     return destination
       
 18949 }
       
 18950 
       
 18951 function deepmerge(target, source, optionsArgument) {
       
 18952     var sourceIsArray = Array.isArray(source);
       
 18953     var targetIsArray = Array.isArray(target);
       
 18954     var options = optionsArgument || { arrayMerge: defaultArrayMerge };
       
 18955     var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;
       
 18956 
       
 18957     if (!sourceAndTargetTypesMatch) {
       
 18958         return cloneIfNecessary(source, optionsArgument)
       
 18959     } else if (sourceIsArray) {
       
 18960         var arrayMerge = options.arrayMerge || defaultArrayMerge;
       
 18961         return arrayMerge(target, source, optionsArgument)
       
 18962     } else {
       
 18963         return mergeObject(target, source, optionsArgument)
       
 18964     }
       
 18965 }
       
 18966 
       
 18967 deepmerge.all = function deepmergeAll(array, optionsArgument) {
       
 18968     if (!Array.isArray(array) || array.length < 2) {
       
 18969         throw new Error('first argument should be an array with at least two elements')
       
 18970     }
       
 18971 
       
 18972     // we are sure there are at least 2 values, so it is safe to have no initial value
       
 18973     return array.reduce(function(prev, next) {
       
 18974         return deepmerge(prev, next, optionsArgument)
       
 18975     })
       
 18976 };
       
 18977 
       
 18978 var deepmerge_1 = deepmerge;
       
 18979 
       
 18980 module.exports = deepmerge_1;
       
 18981 
       
 18982 
       
 18983 /***/ }),
       
 18984 /* 292 */
       
 18985 /***/ (function(module, exports) {
       
 18986 
       
 18987 Object.defineProperty(exports, "__esModule", {
       
 18988   value: true
       
 18989 });
       
 18990 var CHANNEL = exports.CHANNEL = '__direction__';
       
 18991 
       
 18992 var DIRECTIONS = exports.DIRECTIONS = {
       
 18993   LTR: 'ltr',
       
 18994   RTL: 'rtl'
       
 18995 };
       
 18996 
       
 18997 /***/ }),
       
 18998 /* 293 */
       
 18999 /***/ (function(module, exports, __webpack_require__) {
       
 19000 
       
 19001 Object.defineProperty(exports, "__esModule", {
       
 19002   value: true
       
 19003 });
       
 19004 
       
 19005 var _propTypes = __webpack_require__(31);
       
 19006 
       
 19007 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 19008 
       
 19009 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 19010 
       
 19011 exports['default'] = _propTypes2['default'].shape({
       
 19012   getState: _propTypes2['default'].func,
       
 19013   setState: _propTypes2['default'].func,
       
 19014   subscribe: _propTypes2['default'].func
       
 19015 });
       
 19016 
       
 19017 /***/ }),
       
 19018 /* 294 */
       
 19019 /***/ (function(module, exports, __webpack_require__) {
       
 19020 
       
 19021 "use strict";
       
 19022 
       
 19023 
       
 19024 Object.defineProperty(exports, "__esModule", {
       
 19025   value: true
       
 19026 });
       
 19027 exports['default'] = getPhrase;
       
 19028 function getPhrase(phrase, args) {
       
 19029   if (typeof phrase === 'string') return phrase;
       
 19030 
       
 19031   if (typeof phrase === 'function') {
       
 19032     return phrase(args);
       
 19033   }
       
 19034 
       
 19035   return '';
       
 19036 }
       
 19037 
       
 19038 /***/ }),
       
 19039 /* 295 */
       
 19040 /***/ (function(module, exports, __webpack_require__) {
       
 19041 
       
 19042 "use strict";
       
 19043 
       
 19044 
       
 19045 Object.defineProperty(exports, "__esModule", {
       
 19046   value: true
       
 19047 });
       
 19048 exports['default'] = CalendarWeek;
       
 19049 
       
 19050 var _react = __webpack_require__(27);
       
 19051 
       
 19052 var _react2 = _interopRequireDefault(_react);
       
 19053 
       
 19054 var _airbnbPropTypes = __webpack_require__(43);
       
 19055 
       
 19056 var _CalendarDay = __webpack_require__(125);
       
 19057 
       
 19058 var _CalendarDay2 = _interopRequireDefault(_CalendarDay);
       
 19059 
       
 19060 var _CustomizableCalendarDay = __webpack_require__(296);
       
 19061 
       
 19062 var _CustomizableCalendarDay2 = _interopRequireDefault(_CustomizableCalendarDay);
       
 19063 
       
 19064 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 19065 
       
 19066 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 19067   children: (0, _airbnbPropTypes.or)([(0, _airbnbPropTypes.childrenOfType)(_CalendarDay2['default']), (0, _airbnbPropTypes.childrenOfType)(_CustomizableCalendarDay2['default'])]).isRequired
       
 19068 });
       
 19069 
       
 19070 function CalendarWeek(_ref) {
       
 19071   var children = _ref.children;
       
 19072 
       
 19073   return _react2['default'].createElement(
       
 19074     'tr',
       
 19075     null,
       
 19076     children
       
 19077   );
       
 19078 }
       
 19079 
       
 19080 CalendarWeek.propTypes = propTypes;
       
 19081 
       
 19082 /***/ }),
       
 19083 /* 296 */
       
 19084 /***/ (function(module, exports, __webpack_require__) {
       
 19085 
       
 19086 "use strict";
       
 19087 
       
 19088 
       
 19089 Object.defineProperty(exports, "__esModule", {
       
 19090   value: true
       
 19091 });
       
 19092 exports.PureCustomizableCalendarDay = exports.selectedStyles = exports.lastInRangeStyles = exports.selectedSpanStyles = exports.hoveredSpanStyles = exports.blockedOutOfRangeStyles = exports.blockedCalendarStyles = exports.blockedMinNightsStyles = exports.highlightedCalendarStyles = exports.outsideStyles = exports.defaultStyles = undefined;
       
 19093 
       
 19094 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 19095 
       
 19096 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 19097 
       
 19098 var _object = __webpack_require__(46);
       
 19099 
       
 19100 var _object2 = _interopRequireDefault(_object);
       
 19101 
       
 19102 var _react = __webpack_require__(27);
       
 19103 
       
 19104 var _react2 = _interopRequireDefault(_react);
       
 19105 
       
 19106 var _propTypes = __webpack_require__(31);
       
 19107 
       
 19108 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 19109 
       
 19110 var _reactAddonsShallowCompare = __webpack_require__(78);
       
 19111 
       
 19112 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
 19113 
       
 19114 var _reactMomentProptypes = __webpack_require__(64);
       
 19115 
       
 19116 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 19117 
       
 19118 var _airbnbPropTypes = __webpack_require__(43);
       
 19119 
       
 19120 var _reactWithStyles = __webpack_require__(56);
       
 19121 
       
 19122 var _moment = __webpack_require__(29);
       
 19123 
       
 19124 var _moment2 = _interopRequireDefault(_moment);
       
 19125 
       
 19126 var _defaultPhrases = __webpack_require__(47);
       
 19127 
       
 19128 var _getPhrasePropTypes = __webpack_require__(51);
       
 19129 
       
 19130 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 19131 
       
 19132 var _getCalendarDaySettings = __webpack_require__(157);
       
 19133 
       
 19134 var _getCalendarDaySettings2 = _interopRequireDefault(_getCalendarDaySettings);
       
 19135 
       
 19136 var _constants = __webpack_require__(39);
       
 19137 
       
 19138 var _DefaultTheme = __webpack_require__(154);
       
 19139 
       
 19140 var _DefaultTheme2 = _interopRequireDefault(_DefaultTheme);
       
 19141 
       
 19142 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 19143 
       
 19144 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 19145 
       
 19146 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 19147 
       
 19148 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 19149 
       
 19150 var color = _DefaultTheme2['default'].reactDates.color;
       
 19151 
       
 19152 
       
 19153 function getStyles(stylesObj, isHovered) {
       
 19154   if (!stylesObj) return null;
       
 19155 
       
 19156   var hover = stylesObj.hover;
       
 19157 
       
 19158   if (isHovered && hover) {
       
 19159     return hover;
       
 19160   }
       
 19161 
       
 19162   return stylesObj;
       
 19163 }
       
 19164 
       
 19165 var DayStyleShape = _propTypes2['default'].shape({
       
 19166   background: _propTypes2['default'].string,
       
 19167   border: (0, _airbnbPropTypes.or)([_propTypes2['default'].string, _propTypes2['default'].number]),
       
 19168   color: _propTypes2['default'].string,
       
 19169 
       
 19170   hover: _propTypes2['default'].shape({
       
 19171     background: _propTypes2['default'].string,
       
 19172     border: (0, _airbnbPropTypes.or)([_propTypes2['default'].string, _propTypes2['default'].number]),
       
 19173     color: _propTypes2['default'].string
       
 19174   })
       
 19175 });
       
 19176 
 17842 
 19177 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
 17843 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
 19178   day: _reactMomentProptypes2['default'].momentObj,
 17844   day: _reactMomentProptypes2['default'].momentObj,
 19179   daySize: _airbnbPropTypes.nonNegativeInteger,
 17845   daySize: _airbnbPropTypes.nonNegativeInteger,
 19180   isOutsideDay: _propTypes2['default'].bool,
 17846   isOutsideDay: _propTypes2['default'].bool,
 19181   modifiers: _propTypes2['default'].instanceOf(Set),
 17847   modifiers: _ModifiersShape2['default'],
 19182   isFocused: _propTypes2['default'].bool,
 17848   isFocused: _propTypes2['default'].bool,
 19183   tabIndex: _propTypes2['default'].oneOf([0, -1]),
 17849   tabIndex: _propTypes2['default'].oneOf([0, -1]),
 19184   onDayClick: _propTypes2['default'].func,
 17850   onDayClick: _propTypes2['default'].func,
 19185   onDayMouseEnter: _propTypes2['default'].func,
 17851   onDayMouseEnter: _propTypes2['default'].func,
 19186   onDayMouseLeave: _propTypes2['default'].func,
 17852   onDayMouseLeave: _propTypes2['default'].func,
 19187   renderDayContents: _propTypes2['default'].func,
 17853   renderDayContents: _propTypes2['default'].func,
 19188   ariaLabelFormat: _propTypes2['default'].string,
 17854   ariaLabelFormat: _propTypes2['default'].string,
 19189 
 17855 
 19190   // style overrides
       
 19191   defaultStyles: DayStyleShape,
       
 19192   outsideStyles: DayStyleShape,
       
 19193   todayStyles: DayStyleShape,
       
 19194   firstDayOfWeekStyles: DayStyleShape,
       
 19195   lastDayOfWeekStyles: DayStyleShape,
       
 19196   highlightedCalendarStyles: DayStyleShape,
       
 19197   blockedMinNightsStyles: DayStyleShape,
       
 19198   blockedCalendarStyles: DayStyleShape,
       
 19199   blockedOutOfRangeStyles: DayStyleShape,
       
 19200   hoveredSpanStyles: DayStyleShape,
       
 19201   selectedSpanStyles: DayStyleShape,
       
 19202   lastInRangeStyles: DayStyleShape,
       
 19203   selectedStyles: DayStyleShape,
       
 19204   selectedStartStyles: DayStyleShape,
       
 19205   selectedEndStyles: DayStyleShape,
       
 19206   afterHoveredStartStyles: DayStyleShape,
       
 19207 
       
 19208   // internationalization
 17856   // internationalization
 19209   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases))
 17857   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases))
 19210 }));
 17858 }));
 19211 
       
 19212 var defaultStyles = exports.defaultStyles = {
       
 19213   border: '1px solid ' + String(color.core.borderLight),
       
 19214   color: color.text,
       
 19215   background: color.background,
       
 19216 
       
 19217   hover: {
       
 19218     background: color.core.borderLight,
       
 19219     border: '1px double ' + String(color.core.borderLight),
       
 19220     color: 'inherit'
       
 19221   }
       
 19222 };
       
 19223 
       
 19224 var outsideStyles = exports.outsideStyles = {
       
 19225   background: color.outside.backgroundColor,
       
 19226   border: 0,
       
 19227   color: color.outside.color
       
 19228 };
       
 19229 
       
 19230 var highlightedCalendarStyles = exports.highlightedCalendarStyles = {
       
 19231   background: color.highlighted.backgroundColor,
       
 19232   color: color.highlighted.color,
       
 19233 
       
 19234   hover: {
       
 19235     background: color.highlighted.backgroundColor_hover,
       
 19236     color: color.highlighted.color_active
       
 19237   }
       
 19238 };
       
 19239 
       
 19240 var blockedMinNightsStyles = exports.blockedMinNightsStyles = {
       
 19241   background: color.minimumNights.backgroundColor,
       
 19242   border: '1px solid ' + String(color.minimumNights.borderColor),
       
 19243   color: color.minimumNights.color,
       
 19244 
       
 19245   hover: {
       
 19246     background: color.minimumNights.backgroundColor_hover,
       
 19247     color: color.minimumNights.color_active
       
 19248   }
       
 19249 };
       
 19250 
       
 19251 var blockedCalendarStyles = exports.blockedCalendarStyles = {
       
 19252   background: color.blocked_calendar.backgroundColor,
       
 19253   border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
 19254   color: color.blocked_calendar.color,
       
 19255 
       
 19256   hover: {
       
 19257     background: color.blocked_calendar.backgroundColor_hover,
       
 19258     border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
 19259     color: color.blocked_calendar.color_active
       
 19260   }
       
 19261 };
       
 19262 
       
 19263 var blockedOutOfRangeStyles = exports.blockedOutOfRangeStyles = {
       
 19264   background: color.blocked_out_of_range.backgroundColor,
       
 19265   border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
 19266   color: color.blocked_out_of_range.color,
       
 19267 
       
 19268   hover: {
       
 19269     background: color.blocked_out_of_range.backgroundColor_hover,
       
 19270     border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
 19271     color: color.blocked_out_of_range.color_active
       
 19272   }
       
 19273 };
       
 19274 
       
 19275 var hoveredSpanStyles = exports.hoveredSpanStyles = {
       
 19276   background: color.hoveredSpan.backgroundColor,
       
 19277   border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
 19278   color: color.hoveredSpan.color,
       
 19279 
       
 19280   hover: {
       
 19281     background: color.hoveredSpan.backgroundColor_hover,
       
 19282     border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
 19283     color: color.hoveredSpan.color_active
       
 19284   }
       
 19285 };
       
 19286 
       
 19287 var selectedSpanStyles = exports.selectedSpanStyles = {
       
 19288   background: color.selectedSpan.backgroundColor,
       
 19289   border: '1px solid ' + String(color.selectedSpan.borderColor),
       
 19290   color: color.selectedSpan.color,
       
 19291 
       
 19292   hover: {
       
 19293     background: color.selectedSpan.backgroundColor_hover,
       
 19294     border: '1px solid ' + String(color.selectedSpan.borderColor),
       
 19295     color: color.selectedSpan.color_active
       
 19296   }
       
 19297 };
       
 19298 
       
 19299 var lastInRangeStyles = exports.lastInRangeStyles = {
       
 19300   borderRight: color.core.primary
       
 19301 };
       
 19302 
       
 19303 var selectedStyles = exports.selectedStyles = {
       
 19304   background: color.selected.backgroundColor,
       
 19305   border: '1px solid ' + String(color.selected.borderColor),
       
 19306   color: color.selected.color,
       
 19307 
       
 19308   hover: {
       
 19309     background: color.selected.backgroundColor_hover,
       
 19310     border: '1px solid ' + String(color.selected.borderColor),
       
 19311     color: color.selected.color_active
       
 19312   }
       
 19313 };
       
 19314 
 17859 
 19315 var defaultProps = {
 17860 var defaultProps = {
 19316   day: (0, _moment2['default'])(),
 17861   day: (0, _moment2['default'])(),
 19317   daySize: _constants.DAY_SIZE,
 17862   daySize: _constants.DAY_SIZE,
 19318   isOutsideDay: false,
 17863   isOutsideDay: false,
 19336   }(),
 17881   }(),
 19337 
 17882 
 19338   renderDayContents: null,
 17883   renderDayContents: null,
 19339   ariaLabelFormat: 'dddd, LL',
 17884   ariaLabelFormat: 'dddd, LL',
 19340 
 17885 
 19341   // style defaults
       
 19342   defaultStyles: defaultStyles,
       
 19343   outsideStyles: outsideStyles,
       
 19344   todayStyles: {},
       
 19345   highlightedCalendarStyles: highlightedCalendarStyles,
       
 19346   blockedMinNightsStyles: blockedMinNightsStyles,
       
 19347   blockedCalendarStyles: blockedCalendarStyles,
       
 19348   blockedOutOfRangeStyles: blockedOutOfRangeStyles,
       
 19349   hoveredSpanStyles: hoveredSpanStyles,
       
 19350   selectedSpanStyles: selectedSpanStyles,
       
 19351   lastInRangeStyles: lastInRangeStyles,
       
 19352   selectedStyles: selectedStyles,
       
 19353   selectedStartStyles: {},
       
 19354   selectedEndStyles: {},
       
 19355   afterHoveredStartStyles: {},
       
 19356   firstDayOfWeekStyles: {},
       
 19357   lastDayOfWeekStyles: {},
       
 19358 
       
 19359   // internationalization
 17886   // internationalization
 19360   phrases: _defaultPhrases.CalendarDayPhrases
 17887   phrases: _defaultPhrases.CalendarDayPhrases
 19361 };
 17888 };
 19362 
 17889 
 19363 var CustomizableCalendarDay = function (_React$Component) {
 17890 var CalendarDay = function (_React$Component) {
 19364   _inherits(CustomizableCalendarDay, _React$Component);
 17891   _inherits(CalendarDay, _React$Component);
 19365 
 17892 
 19366   function CustomizableCalendarDay() {
 17893   function CalendarDay() {
 19367     var _ref;
 17894     var _ref;
 19368 
 17895 
 19369     _classCallCheck(this, CustomizableCalendarDay);
 17896     _classCallCheck(this, CalendarDay);
 19370 
 17897 
 19371     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
 17898     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
 19372       args[_key] = arguments[_key];
 17899       args[_key] = arguments[_key];
 19373     }
 17900     }
 19374 
 17901 
 19375     var _this = _possibleConstructorReturn(this, (_ref = CustomizableCalendarDay.__proto__ || Object.getPrototypeOf(CustomizableCalendarDay)).call.apply(_ref, [this].concat(args)));
 17902     var _this = _possibleConstructorReturn(this, (_ref = CalendarDay.__proto__ || Object.getPrototypeOf(CalendarDay)).call.apply(_ref, [this].concat(args)));
 19376 
       
 19377     _this.state = {
       
 19378       isHovered: false
       
 19379     };
       
 19380 
 17903 
 19381     _this.setButtonRef = _this.setButtonRef.bind(_this);
 17904     _this.setButtonRef = _this.setButtonRef.bind(_this);
 19382     return _this;
 17905     return _this;
 19383   }
 17906   }
 19384 
 17907 
 19385   _createClass(CustomizableCalendarDay, [{
 17908   _createClass(CalendarDay, [{
 19386     key: 'shouldComponentUpdate',
 17909     key: 'shouldComponentUpdate',
 19387     value: function () {
 17910     value: function () {
 19388       function shouldComponentUpdate(nextProps, nextState) {
 17911       function shouldComponentUpdate(nextProps, nextState) {
 19389         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
 17912         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
 19390       }
 17913       }
 19423     key: 'onDayMouseEnter',
 17946     key: 'onDayMouseEnter',
 19424     value: function () {
 17947     value: function () {
 19425       function onDayMouseEnter(day, e) {
 17948       function onDayMouseEnter(day, e) {
 19426         var onDayMouseEnter = this.props.onDayMouseEnter;
 17949         var onDayMouseEnter = this.props.onDayMouseEnter;
 19427 
 17950 
 19428         this.setState({ isHovered: true });
       
 19429         onDayMouseEnter(day, e);
 17951         onDayMouseEnter(day, e);
 19430       }
 17952       }
 19431 
 17953 
 19432       return onDayMouseEnter;
 17954       return onDayMouseEnter;
 19433     }()
 17955     }()
 19435     key: 'onDayMouseLeave',
 17957     key: 'onDayMouseLeave',
 19436     value: function () {
 17958     value: function () {
 19437       function onDayMouseLeave(day, e) {
 17959       function onDayMouseLeave(day, e) {
 19438         var onDayMouseLeave = this.props.onDayMouseLeave;
 17960         var onDayMouseLeave = this.props.onDayMouseLeave;
 19439 
 17961 
 19440         this.setState({ isHovered: false });
       
 19441         onDayMouseLeave(day, e);
 17962         onDayMouseLeave(day, e);
 19442       }
 17963       }
 19443 
 17964 
 19444       return onDayMouseLeave;
 17965       return onDayMouseLeave;
 19445     }()
 17966     }()
 19476             day = _props2.day,
 17997             day = _props2.day,
 19477             ariaLabelFormat = _props2.ariaLabelFormat,
 17998             ariaLabelFormat = _props2.ariaLabelFormat,
 19478             daySize = _props2.daySize,
 17999             daySize = _props2.daySize,
 19479             isOutsideDay = _props2.isOutsideDay,
 18000             isOutsideDay = _props2.isOutsideDay,
 19480             modifiers = _props2.modifiers,
 18001             modifiers = _props2.modifiers,
       
 18002             renderDayContents = _props2.renderDayContents,
 19481             tabIndex = _props2.tabIndex,
 18003             tabIndex = _props2.tabIndex,
 19482             renderDayContents = _props2.renderDayContents,
       
 19483             styles = _props2.styles,
 18004             styles = _props2.styles,
 19484             phrases = _props2.phrases,
 18005             phrases = _props2.phrases;
 19485             defaultStylesWithHover = _props2.defaultStyles,
       
 19486             outsideStylesWithHover = _props2.outsideStyles,
       
 19487             todayStylesWithHover = _props2.todayStyles,
       
 19488             firstDayOfWeekStylesWithHover = _props2.firstDayOfWeekStyles,
       
 19489             lastDayOfWeekStylesWithHover = _props2.lastDayOfWeekStyles,
       
 19490             highlightedCalendarStylesWithHover = _props2.highlightedCalendarStyles,
       
 19491             blockedMinNightsStylesWithHover = _props2.blockedMinNightsStyles,
       
 19492             blockedCalendarStylesWithHover = _props2.blockedCalendarStyles,
       
 19493             blockedOutOfRangeStylesWithHover = _props2.blockedOutOfRangeStyles,
       
 19494             hoveredSpanStylesWithHover = _props2.hoveredSpanStyles,
       
 19495             selectedSpanStylesWithHover = _props2.selectedSpanStyles,
       
 19496             lastInRangeStylesWithHover = _props2.lastInRangeStyles,
       
 19497             selectedStylesWithHover = _props2.selectedStyles,
       
 19498             selectedStartStylesWithHover = _props2.selectedStartStyles,
       
 19499             selectedEndStylesWithHover = _props2.selectedEndStyles,
       
 19500             afterHoveredStartStylesWithHover = _props2.afterHoveredStartStyles;
       
 19501         var isHovered = this.state.isHovered;
       
 19502 
 18006 
 19503 
 18007 
 19504         if (!day) return _react2['default'].createElement('td', null);
 18008         if (!day) return _react2['default'].createElement('td', null);
 19505 
 18009 
 19506         var _getCalendarDaySettin = (0, _getCalendarDaySettings2['default'])(day, ariaLabelFormat, daySize, modifiers, phrases),
 18010         var _getCalendarDaySettin = (0, _getCalendarDaySettings2['default'])(day, ariaLabelFormat, daySize, modifiers, phrases),
 19511             isOutsideRange = _getCalendarDaySettin.isOutsideRange,
 18015             isOutsideRange = _getCalendarDaySettin.isOutsideRange,
 19512             ariaLabel = _getCalendarDaySettin.ariaLabel;
 18016             ariaLabel = _getCalendarDaySettin.ariaLabel;
 19513 
 18017 
 19514         return _react2['default'].createElement(
 18018         return _react2['default'].createElement(
 19515           'td',
 18019           'td',
 19516           _extends({}, (0, _reactWithStyles.css)(styles.CalendarDay, useDefaultCursor && styles.CalendarDay__defaultCursor, daySizeStyles, getStyles(defaultStylesWithHover, isHovered), isOutsideDay && getStyles(outsideStylesWithHover, isHovered), modifiers.has('today') && getStyles(todayStylesWithHover, isHovered), modifiers.has('first-day-of-week') && getStyles(firstDayOfWeekStylesWithHover, isHovered), modifiers.has('last-day-of-week') && getStyles(lastDayOfWeekStylesWithHover, isHovered), modifiers.has('highlighted-calendar') && getStyles(highlightedCalendarStylesWithHover, isHovered), modifiers.has('blocked-minimum-nights') && getStyles(blockedMinNightsStylesWithHover, isHovered), modifiers.has('blocked-calendar') && getStyles(blockedCalendarStylesWithHover, isHovered), hoveredSpan && getStyles(hoveredSpanStylesWithHover, isHovered), modifiers.has('after-hovered-start') && getStyles(afterHoveredStartStylesWithHover, isHovered), modifiers.has('selected-span') && getStyles(selectedSpanStylesWithHover, isHovered), modifiers.has('last-in-range') && getStyles(lastInRangeStylesWithHover, isHovered), selected && getStyles(selectedStylesWithHover, isHovered), modifiers.has('selected-start') && getStyles(selectedStartStylesWithHover, isHovered), modifiers.has('selected-end') && getStyles(selectedEndStylesWithHover, isHovered), isOutsideRange && getStyles(blockedOutOfRangeStylesWithHover, isHovered)), {
 18020           _extends({}, (0, _reactWithStyles.css)(styles.CalendarDay, useDefaultCursor && styles.CalendarDay__defaultCursor, styles.CalendarDay__default, isOutsideDay && styles.CalendarDay__outside, modifiers.has('today') && styles.CalendarDay__today, modifiers.has('first-day-of-week') && styles.CalendarDay__firstDayOfWeek, modifiers.has('last-day-of-week') && styles.CalendarDay__lastDayOfWeek, modifiers.has('hovered-offset') && styles.CalendarDay__hovered_offset, modifiers.has('highlighted-calendar') && styles.CalendarDay__highlighted_calendar, modifiers.has('blocked-minimum-nights') && styles.CalendarDay__blocked_minimum_nights, modifiers.has('blocked-calendar') && styles.CalendarDay__blocked_calendar, hoveredSpan && styles.CalendarDay__hovered_span, modifiers.has('selected-span') && styles.CalendarDay__selected_span, modifiers.has('last-in-range') && styles.CalendarDay__last_in_range, modifiers.has('selected-start') && styles.CalendarDay__selected_start, modifiers.has('selected-end') && styles.CalendarDay__selected_end, selected && styles.CalendarDay__selected, isOutsideRange && styles.CalendarDay__blocked_out_of_range, daySizeStyles), {
 19517             role: 'button' // eslint-disable-line jsx-a11y/no-noninteractive-element-to-interactive-role
 18021             role: 'button' // eslint-disable-line jsx-a11y/no-noninteractive-element-to-interactive-role
 19518             , ref: this.setButtonRef,
 18022             , ref: this.setButtonRef,
 19519             'aria-label': ariaLabel,
 18023             'aria-label': ariaLabel,
 19520             onMouseEnter: function () {
 18024             onMouseEnter: function () {
 19521               function onMouseEnter(e) {
 18025               function onMouseEnter(e) {
 19560 
 18064 
 19561       return render;
 18065       return render;
 19562     }()
 18066     }()
 19563   }]);
 18067   }]);
 19564 
 18068 
 19565   return CustomizableCalendarDay;
 18069   return CalendarDay;
 19566 }(_react2['default'].Component);
 18070 }(_react2['default'].Component);
 19567 
 18071 
 19568 CustomizableCalendarDay.propTypes = propTypes;
 18072 CalendarDay.propTypes = propTypes;
 19569 CustomizableCalendarDay.defaultProps = defaultProps;
 18073 CalendarDay.defaultProps = defaultProps;
 19570 
 18074 
 19571 exports.PureCustomizableCalendarDay = CustomizableCalendarDay;
 18075 exports.PureCalendarDay = CalendarDay;
 19572 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
 18076 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
 19573   var font = _ref2.reactDates.font;
 18077   var _ref2$reactDates = _ref2.reactDates,
       
 18078       color = _ref2$reactDates.color,
       
 18079       font = _ref2$reactDates.font;
 19574   return {
 18080   return {
 19575     CalendarDay: {
 18081     CalendarDay: {
 19576       boxSizing: 'border-box',
 18082       boxSizing: 'border-box',
 19577       cursor: 'pointer',
 18083       cursor: 'pointer',
 19578       fontSize: font.size,
 18084       fontSize: font.size,
 19583       }
 18089       }
 19584     },
 18090     },
 19585 
 18091 
 19586     CalendarDay__defaultCursor: {
 18092     CalendarDay__defaultCursor: {
 19587       cursor: 'default'
 18093       cursor: 'default'
 19588     }
 18094     },
       
 18095 
       
 18096     CalendarDay__default: {
       
 18097       border: '1px solid ' + String(color.core.borderLight),
       
 18098       color: color.text,
       
 18099       background: color.background,
       
 18100 
       
 18101       ':hover': {
       
 18102         background: color.core.borderLight,
       
 18103         border: '1px double ' + String(color.core.borderLight),
       
 18104         color: 'inherit'
       
 18105       }
       
 18106     },
       
 18107 
       
 18108     CalendarDay__hovered_offset: {
       
 18109       background: color.core.borderBright,
       
 18110       border: '1px double ' + String(color.core.borderLight),
       
 18111       color: 'inherit'
       
 18112     },
       
 18113 
       
 18114     CalendarDay__outside: {
       
 18115       border: 0,
       
 18116       background: color.outside.backgroundColor,
       
 18117       color: color.outside.color,
       
 18118 
       
 18119       ':hover': {
       
 18120         border: 0
       
 18121       }
       
 18122     },
       
 18123 
       
 18124     CalendarDay__blocked_minimum_nights: {
       
 18125       background: color.minimumNights.backgroundColor,
       
 18126       border: '1px solid ' + String(color.minimumNights.borderColor),
       
 18127       color: color.minimumNights.color,
       
 18128 
       
 18129       ':hover': {
       
 18130         background: color.minimumNights.backgroundColor_hover,
       
 18131         color: color.minimumNights.color_active
       
 18132       },
       
 18133 
       
 18134       ':active': {
       
 18135         background: color.minimumNights.backgroundColor_active,
       
 18136         color: color.minimumNights.color_active
       
 18137       }
       
 18138     },
       
 18139 
       
 18140     CalendarDay__highlighted_calendar: {
       
 18141       background: color.highlighted.backgroundColor,
       
 18142       color: color.highlighted.color,
       
 18143 
       
 18144       ':hover': {
       
 18145         background: color.highlighted.backgroundColor_hover,
       
 18146         color: color.highlighted.color_active
       
 18147       },
       
 18148 
       
 18149       ':active': {
       
 18150         background: color.highlighted.backgroundColor_active,
       
 18151         color: color.highlighted.color_active
       
 18152       }
       
 18153     },
       
 18154 
       
 18155     CalendarDay__selected_span: {
       
 18156       background: color.selectedSpan.backgroundColor,
       
 18157       border: '1px solid ' + String(color.selectedSpan.borderColor),
       
 18158       color: color.selectedSpan.color,
       
 18159 
       
 18160       ':hover': {
       
 18161         background: color.selectedSpan.backgroundColor_hover,
       
 18162         border: '1px solid ' + String(color.selectedSpan.borderColor),
       
 18163         color: color.selectedSpan.color_active
       
 18164       },
       
 18165 
       
 18166       ':active': {
       
 18167         background: color.selectedSpan.backgroundColor_active,
       
 18168         border: '1px solid ' + String(color.selectedSpan.borderColor),
       
 18169         color: color.selectedSpan.color_active
       
 18170       }
       
 18171     },
       
 18172 
       
 18173     CalendarDay__last_in_range: {
       
 18174       borderRight: color.core.primary
       
 18175     },
       
 18176 
       
 18177     CalendarDay__selected: {
       
 18178       background: color.selected.backgroundColor,
       
 18179       border: '1px solid ' + String(color.selected.borderColor),
       
 18180       color: color.selected.color,
       
 18181 
       
 18182       ':hover': {
       
 18183         background: color.selected.backgroundColor_hover,
       
 18184         border: '1px solid ' + String(color.selected.borderColor),
       
 18185         color: color.selected.color_active
       
 18186       },
       
 18187 
       
 18188       ':active': {
       
 18189         background: color.selected.backgroundColor_active,
       
 18190         border: '1px solid ' + String(color.selected.borderColor),
       
 18191         color: color.selected.color_active
       
 18192       }
       
 18193     },
       
 18194 
       
 18195     CalendarDay__hovered_span: {
       
 18196       background: color.hoveredSpan.backgroundColor,
       
 18197       border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
 18198       color: color.hoveredSpan.color,
       
 18199 
       
 18200       ':hover': {
       
 18201         background: color.hoveredSpan.backgroundColor_hover,
       
 18202         border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
 18203         color: color.hoveredSpan.color_active
       
 18204       },
       
 18205 
       
 18206       ':active': {
       
 18207         background: color.hoveredSpan.backgroundColor_active,
       
 18208         border: '1px solid ' + String(color.hoveredSpan.borderColor),
       
 18209         color: color.hoveredSpan.color_active
       
 18210       }
       
 18211     },
       
 18212 
       
 18213     CalendarDay__blocked_calendar: {
       
 18214       background: color.blocked_calendar.backgroundColor,
       
 18215       border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
 18216       color: color.blocked_calendar.color,
       
 18217 
       
 18218       ':hover': {
       
 18219         background: color.blocked_calendar.backgroundColor_hover,
       
 18220         border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
 18221         color: color.blocked_calendar.color_active
       
 18222       },
       
 18223 
       
 18224       ':active': {
       
 18225         background: color.blocked_calendar.backgroundColor_active,
       
 18226         border: '1px solid ' + String(color.blocked_calendar.borderColor),
       
 18227         color: color.blocked_calendar.color_active
       
 18228       }
       
 18229     },
       
 18230 
       
 18231     CalendarDay__blocked_out_of_range: {
       
 18232       background: color.blocked_out_of_range.backgroundColor,
       
 18233       border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
 18234       color: color.blocked_out_of_range.color,
       
 18235 
       
 18236       ':hover': {
       
 18237         background: color.blocked_out_of_range.backgroundColor_hover,
       
 18238         border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
 18239         color: color.blocked_out_of_range.color_active
       
 18240       },
       
 18241 
       
 18242       ':active': {
       
 18243         background: color.blocked_out_of_range.backgroundColor_active,
       
 18244         border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
       
 18245         color: color.blocked_out_of_range.color_active
       
 18246       }
       
 18247     },
       
 18248 
       
 18249     CalendarDay__selected_start: {},
       
 18250     CalendarDay__selected_end: {},
       
 18251     CalendarDay__today: {},
       
 18252     CalendarDay__firstDayOfWeek: {},
       
 18253     CalendarDay__lastDayOfWeek: {}
 19589   };
 18254   };
 19590 })(CustomizableCalendarDay);
 18255 })(CalendarDay);
 19591 
 18256 
 19592 /***/ }),
 18257 /***/ }),
 19593 /* 297 */
 18258 /* 251 */
 19594 /***/ (function(module, exports, __webpack_require__) {
 18259 /***/ (function(module, exports, __webpack_require__) {
 19595 
 18260 
 19596 "use strict";
 18261 "use strict";
 19597 
 18262 
 19598 
 18263 
 19599 Object.defineProperty(exports, "__esModule", {
 18264 Object.defineProperty(exports, "__esModule", {
 19600   value: true
 18265   value: true
 19601 });
 18266 });
 19602 exports['default'] = getCalendarMonthWeeks;
 18267 exports['default'] = getCalendarDaySettings;
 19603 
 18268 
 19604 var _moment = __webpack_require__(29);
 18269 var _getPhrase = __webpack_require__(392);
 19605 
 18270 
 19606 var _moment2 = _interopRequireDefault(_moment);
 18271 var _getPhrase2 = _interopRequireDefault(_getPhrase);
 19607 
 18272 
 19608 var _constants = __webpack_require__(39);
 18273 var _constants = __webpack_require__(77);
 19609 
 18274 
 19610 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 18275 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 19611 
 18276 
 19612 function getCalendarMonthWeeks(month, enableOutsideDays) {
 18277 function getCalendarDaySettings(day, ariaLabelFormat, daySize, modifiers, phrases) {
 19613   var firstDayOfWeek = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _moment2['default'].localeData().firstDayOfWeek();
 18278   var chooseAvailableDate = phrases.chooseAvailableDate,
 19614 
 18279       dateIsUnavailable = phrases.dateIsUnavailable,
 19615   if (!_moment2['default'].isMoment(month) || !month.isValid()) {
 18280       dateIsSelected = phrases.dateIsSelected;
 19616     throw new TypeError('`month` must be a valid moment object');
 18281 
 19617   }
 18282 
 19618   if (_constants.WEEKDAYS.indexOf(firstDayOfWeek) === -1) {
 18283   var daySizeStyles = {
 19619     throw new TypeError('`firstDayOfWeek` must be an integer between 0 and 6');
 18284     width: daySize,
 19620   }
 18285     height: daySize - 1
 19621 
 18286   };
 19622   // set utc offset to get correct dates in future (when timezone changes)
 18287 
 19623   var firstOfMonth = month.clone().startOf('month').hour(12);
 18288   var useDefaultCursor = modifiers.has('blocked-minimum-nights') || modifiers.has('blocked-calendar') || modifiers.has('blocked-out-of-range');
 19624   var lastOfMonth = month.clone().endOf('month').hour(12);
 18289 
 19625 
 18290   var selected = modifiers.has('selected') || modifiers.has('selected-start') || modifiers.has('selected-end');
 19626   // calculate the exact first and last days to fill the entire matrix
 18291 
 19627   // (considering days outside month)
 18292   var hoveredSpan = !selected && (modifiers.has('hovered-span') || modifiers.has('after-hovered-start'));
 19628   var prevDays = (firstOfMonth.day() + 7 - firstDayOfWeek) % 7;
 18293 
 19629   var nextDays = (firstDayOfWeek + 6 - lastOfMonth.day()) % 7;
 18294   var isOutsideRange = modifiers.has('blocked-out-of-range');
 19630   var firstDay = firstOfMonth.clone().subtract(prevDays, 'day');
 18295 
 19631   var lastDay = lastOfMonth.clone().add(nextDays, 'day');
 18296   var formattedDate = { date: day.format(ariaLabelFormat) };
 19632 
 18297 
 19633   var totalDays = lastDay.diff(firstDay, 'days') + 1;
 18298   var ariaLabel = (0, _getPhrase2['default'])(chooseAvailableDate, formattedDate);
 19634 
 18299   if (modifiers.has(_constants.BLOCKED_MODIFIER)) {
 19635   var currentDay = firstDay.clone();
 18300     ariaLabel = (0, _getPhrase2['default'])(dateIsUnavailable, formattedDate);
 19636   var weeksInMonth = [];
 18301   } else if (selected) {
 19637 
 18302     ariaLabel = (0, _getPhrase2['default'])(dateIsSelected, formattedDate);
 19638   for (var i = 0; i < totalDays; i += 1) {
 18303   }
 19639     if (i % 7 === 0) {
 18304 
 19640       weeksInMonth.push([]);
 18305   return {
 19641     }
 18306     daySizeStyles: daySizeStyles,
 19642 
 18307     useDefaultCursor: useDefaultCursor,
 19643     var day = null;
 18308     selected: selected,
 19644     if (i >= prevDays && i < totalDays - nextDays || enableOutsideDays) {
 18309     hoveredSpan: hoveredSpan,
 19645       day = currentDay.clone();
 18310     isOutsideRange: isOutsideRange,
 19646     }
 18311     ariaLabel: ariaLabel
 19647 
 18312   };
 19648     weeksInMonth[weeksInMonth.length - 1].push(day);
       
 19649 
       
 19650     currentDay.add(1, 'day');
       
 19651   }
       
 19652 
       
 19653   return weeksInMonth;
       
 19654 }
 18313 }
 19655 
 18314 
 19656 /***/ }),
 18315 /***/ }),
 19657 /* 298 */
 18316 /* 252 */
 19658 /***/ (function(module, exports, __webpack_require__) {
 18317 /***/ (function(module, exports, __webpack_require__) {
 19659 
 18318 
 19660 "use strict";
 18319 "use strict";
 19661 
 18320 
 19662 
 18321 
 19663 Object.defineProperty(exports, "__esModule", {
 18322 Object.defineProperty(exports, "__esModule", {
 19664   value: true
 18323   value: true
 19665 });
 18324 });
 19666 exports['default'] = isTransitionEndSupported;
 18325 exports['default'] = calculateDimension;
 19667 function isTransitionEndSupported() {
 18326 function calculateDimension(el, axis) {
 19668   return !!(typeof window !== 'undefined' && 'TransitionEvent' in window);
 18327   var borderBox = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
       
 18328   var withMargin = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
       
 18329 
       
 18330   if (!el) {
       
 18331     return 0;
       
 18332   }
       
 18333 
       
 18334   var axisStart = axis === 'width' ? 'Left' : 'Top';
       
 18335   var axisEnd = axis === 'width' ? 'Right' : 'Bottom';
       
 18336 
       
 18337   // Only read styles if we need to
       
 18338   var style = !borderBox || withMargin ? window.getComputedStyle(el) : null;
       
 18339 
       
 18340   // Offset includes border and padding
       
 18341   var offsetWidth = el.offsetWidth,
       
 18342       offsetHeight = el.offsetHeight;
       
 18343 
       
 18344   var size = axis === 'width' ? offsetWidth : offsetHeight;
       
 18345 
       
 18346   // Get the inner size
       
 18347   if (!borderBox) {
       
 18348     size -= parseFloat(style['padding' + axisStart]) + parseFloat(style['padding' + axisEnd]) + parseFloat(style['border' + axisStart + 'Width']) + parseFloat(style['border' + axisEnd + 'Width']);
       
 18349   }
       
 18350 
       
 18351   // Apply margin
       
 18352   if (withMargin) {
       
 18353     size += parseFloat(style['margin' + axisStart]) + parseFloat(style['margin' + axisEnd]);
       
 18354   }
       
 18355 
       
 18356   return size;
 19669 }
 18357 }
 19670 
 18358 
 19671 /***/ }),
 18359 /***/ }),
 19672 /* 299 */
 18360 /* 253 */
 19673 /***/ (function(module, exports, __webpack_require__) {
 18361 /***/ (function(module, exports, __webpack_require__) {
 19674 
 18362 
 19675 "use strict";
 18363 "use strict";
 19676 
 18364 
 19677 
 18365 
 19678 Object.defineProperty(exports, "__esModule", {
 18366 Object.defineProperty(exports, "__esModule", {
 19679   value: true
 18367   value: true
 19680 });
 18368 });
 19681 exports["default"] = getTransformStyles;
 18369 exports["default"] = getCalendarMonthWidth;
 19682 function getTransformStyles(transformValue) {
 18370 function getCalendarMonthWidth(daySize, calendarMonthPadding) {
 19683   return {
 18371   return 7 * daySize + 2 * calendarMonthPadding + 1;
 19684     transform: transformValue,
       
 19685     msTransform: transformValue,
       
 19686     MozTransform: transformValue,
       
 19687     WebkitTransform: transformValue
       
 19688   };
       
 19689 }
 18372 }
 19690 
 18373 
 19691 /***/ }),
 18374 /***/ }),
 19692 /* 300 */
 18375 /* 254 */
 19693 /***/ (function(module, exports, __webpack_require__) {
 18376 /***/ (function(module, exports, __webpack_require__) {
 19694 
 18377 
 19695 "use strict";
 18378 "use strict";
 19696 
 18379 
 19697 
 18380 
 19698 Object.defineProperty(exports, "__esModule", {
 18381 Object.defineProperty(exports, "__esModule", {
 19699   value: true
 18382   value: true
 19700 });
 18383 });
 19701 exports['default'] = isPrevMonth;
 18384 exports['default'] = isSameMonth;
 19702 
 18385 
 19703 var _moment = __webpack_require__(29);
 18386 var _moment = __webpack_require__(43);
 19704 
 18387 
 19705 var _moment2 = _interopRequireDefault(_moment);
 18388 var _moment2 = _interopRequireDefault(_moment);
 19706 
 18389 
 19707 var _isSameMonth = __webpack_require__(162);
       
 19708 
       
 19709 var _isSameMonth2 = _interopRequireDefault(_isSameMonth);
       
 19710 
       
 19711 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 18390 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 19712 
 18391 
 19713 function isPrevMonth(a, b) {
 18392 function isSameMonth(a, b) {
 19714   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
 18393   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
 19715   return (0, _isSameMonth2['default'])(a.clone().subtract(1, 'month'), b);
 18394   // Compare least significant, most likely to change units first
       
 18395   // Moment's isSame clones moment inputs and is a tad slow
       
 18396   return a.month() === b.month() && a.year() === b.year();
 19716 }
 18397 }
 19717 
 18398 
 19718 /***/ }),
 18399 /***/ }),
 19719 /* 301 */
 18400 /* 255 */,
 19720 /***/ (function(module, exports, __webpack_require__) {
 18401 /* 256 */,
       
 18402 /* 257 */,
       
 18403 /* 258 */,
       
 18404 /* 259 */,
       
 18405 /* 260 */
       
 18406 /***/ (function(module, __webpack_exports__, __webpack_require__) {
 19721 
 18407 
 19722 "use strict";
 18408 "use strict";
 19723 
 18409 // ESM COMPAT FLAG
 19724 
 18410 __webpack_require__.r(__webpack_exports__);
 19725 Object.defineProperty(exports, "__esModule", {
 18411 
 19726   value: true
 18412 // EXPORTS
       
 18413 __webpack_require__.d(__webpack_exports__, "SVG", function() { return /* reexport */ external_this_wp_primitives_["SVG"]; });
       
 18414 __webpack_require__.d(__webpack_exports__, "Path", function() { return /* reexport */ external_this_wp_primitives_["Path"]; });
       
 18415 __webpack_require__.d(__webpack_exports__, "Circle", function() { return /* reexport */ external_this_wp_primitives_["Circle"]; });
       
 18416 __webpack_require__.d(__webpack_exports__, "Polygon", function() { return /* reexport */ external_this_wp_primitives_["Polygon"]; });
       
 18417 __webpack_require__.d(__webpack_exports__, "Rect", function() { return /* reexport */ external_this_wp_primitives_["Rect"]; });
       
 18418 __webpack_require__.d(__webpack_exports__, "G", function() { return /* reexport */ external_this_wp_primitives_["G"]; });
       
 18419 __webpack_require__.d(__webpack_exports__, "HorizontalRule", function() { return /* reexport */ external_this_wp_primitives_["HorizontalRule"]; });
       
 18420 __webpack_require__.d(__webpack_exports__, "BlockQuotation", function() { return /* reexport */ external_this_wp_primitives_["BlockQuotation"]; });
       
 18421 __webpack_require__.d(__webpack_exports__, "__experimentalAlignmentMatrixControl", function() { return /* reexport */ AlignmentMatrixControl; });
       
 18422 __webpack_require__.d(__webpack_exports__, "Animate", function() { return /* reexport */ animate["a" /* default */]; });
       
 18423 __webpack_require__.d(__webpack_exports__, "AnglePickerControl", function() { return /* reexport */ AnglePickerControl; });
       
 18424 __webpack_require__.d(__webpack_exports__, "Autocomplete", function() { return /* reexport */ autocomplete; });
       
 18425 __webpack_require__.d(__webpack_exports__, "BaseControl", function() { return /* reexport */ base_control; });
       
 18426 __webpack_require__.d(__webpack_exports__, "__experimentalBoxControl", function() { return /* reexport */ BoxControl; });
       
 18427 __webpack_require__.d(__webpack_exports__, "Button", function() { return /* reexport */ build_module_button["a" /* default */]; });
       
 18428 __webpack_require__.d(__webpack_exports__, "ButtonGroup", function() { return /* reexport */ button_group; });
       
 18429 __webpack_require__.d(__webpack_exports__, "Card", function() { return /* reexport */ card; });
       
 18430 __webpack_require__.d(__webpack_exports__, "CardBody", function() { return /* reexport */ card_body; });
       
 18431 __webpack_require__.d(__webpack_exports__, "CardDivider", function() { return /* reexport */ divider; });
       
 18432 __webpack_require__.d(__webpack_exports__, "CardFooter", function() { return /* reexport */ footer; });
       
 18433 __webpack_require__.d(__webpack_exports__, "CardHeader", function() { return /* reexport */ card_header; });
       
 18434 __webpack_require__.d(__webpack_exports__, "CardMedia", function() { return /* reexport */ media; });
       
 18435 __webpack_require__.d(__webpack_exports__, "CheckboxControl", function() { return /* reexport */ CheckboxControl; });
       
 18436 __webpack_require__.d(__webpack_exports__, "ClipboardButton", function() { return /* reexport */ ClipboardButton; });
       
 18437 __webpack_require__.d(__webpack_exports__, "ColorIndicator", function() { return /* reexport */ color_indicator; });
       
 18438 __webpack_require__.d(__webpack_exports__, "ColorPalette", function() { return /* reexport */ ColorPalette; });
       
 18439 __webpack_require__.d(__webpack_exports__, "ColorPicker", function() { return /* reexport */ color_picker_ColorPicker; });
       
 18440 __webpack_require__.d(__webpack_exports__, "CustomSelectControl", function() { return /* reexport */ CustomSelectControl; });
       
 18441 __webpack_require__.d(__webpack_exports__, "Dashicon", function() { return /* reexport */ dashicon["a" /* default */]; });
       
 18442 __webpack_require__.d(__webpack_exports__, "DateTimePicker", function() { return /* reexport */ date_time_DateTimePicker; });
       
 18443 __webpack_require__.d(__webpack_exports__, "DatePicker", function() { return /* reexport */ date_time_date; });
       
 18444 __webpack_require__.d(__webpack_exports__, "TimePicker", function() { return /* reexport */ time; });
       
 18445 __webpack_require__.d(__webpack_exports__, "__experimentalDimensionControl", function() { return /* reexport */ dimension_control; });
       
 18446 __webpack_require__.d(__webpack_exports__, "Disabled", function() { return /* reexport */ build_module_disabled; });
       
 18447 __webpack_require__.d(__webpack_exports__, "Draggable", function() { return /* reexport */ draggable; });
       
 18448 __webpack_require__.d(__webpack_exports__, "DropZone", function() { return /* reexport */ drop_zone; });
       
 18449 __webpack_require__.d(__webpack_exports__, "__unstableUseDropZone", function() { return /* reexport */ useDropZone; });
       
 18450 __webpack_require__.d(__webpack_exports__, "DropZoneProvider", function() { return /* reexport */ provider; });
       
 18451 __webpack_require__.d(__webpack_exports__, "Dropdown", function() { return /* reexport */ Dropdown; });
       
 18452 __webpack_require__.d(__webpack_exports__, "DropdownMenu", function() { return /* reexport */ dropdown_menu; });
       
 18453 __webpack_require__.d(__webpack_exports__, "ExternalLink", function() { return /* reexport */ external_link; });
       
 18454 __webpack_require__.d(__webpack_exports__, "Flex", function() { return /* reexport */ flex; });
       
 18455 __webpack_require__.d(__webpack_exports__, "FlexBlock", function() { return /* reexport */ block; });
       
 18456 __webpack_require__.d(__webpack_exports__, "FlexItem", function() { return /* reexport */ flex_item; });
       
 18457 __webpack_require__.d(__webpack_exports__, "FocalPointPicker", function() { return /* reexport */ focal_point_picker; });
       
 18458 __webpack_require__.d(__webpack_exports__, "FocusableIframe", function() { return /* reexport */ focusable_iframe; });
       
 18459 __webpack_require__.d(__webpack_exports__, "FontSizePicker", function() { return /* reexport */ FontSizePicker; });
       
 18460 __webpack_require__.d(__webpack_exports__, "FormFileUpload", function() { return /* reexport */ form_file_upload; });
       
 18461 __webpack_require__.d(__webpack_exports__, "FormToggle", function() { return /* reexport */ form_toggle; });
       
 18462 __webpack_require__.d(__webpack_exports__, "FormTokenField", function() { return /* reexport */ form_token_field; });
       
 18463 __webpack_require__.d(__webpack_exports__, "__experimentalGradientPicker", function() { return /* reexport */ GradientPicker; });
       
 18464 __webpack_require__.d(__webpack_exports__, "__experimentalCustomGradientPicker", function() { return /* reexport */ CustomGradientPicker; });
       
 18465 __webpack_require__.d(__webpack_exports__, "Guide", function() { return /* reexport */ Guide; });
       
 18466 __webpack_require__.d(__webpack_exports__, "GuidePage", function() { return /* reexport */ GuidePage; });
       
 18467 __webpack_require__.d(__webpack_exports__, "Icon", function() { return /* reexport */ components_build_module_icon["a" /* default */]; });
       
 18468 __webpack_require__.d(__webpack_exports__, "IconButton", function() { return /* reexport */ deprecated; });
       
 18469 __webpack_require__.d(__webpack_exports__, "__experimentalInputControl", function() { return /* reexport */ input_control; });
       
 18470 __webpack_require__.d(__webpack_exports__, "KeyboardShortcuts", function() { return /* reexport */ keyboard_shortcuts; });
       
 18471 __webpack_require__.d(__webpack_exports__, "MenuGroup", function() { return /* reexport */ menu_group; });
       
 18472 __webpack_require__.d(__webpack_exports__, "MenuItem", function() { return /* reexport */ menu_item; });
       
 18473 __webpack_require__.d(__webpack_exports__, "MenuItemsChoice", function() { return /* reexport */ MenuItemsChoice; });
       
 18474 __webpack_require__.d(__webpack_exports__, "Modal", function() { return /* reexport */ modal; });
       
 18475 __webpack_require__.d(__webpack_exports__, "ScrollLock", function() { return /* reexport */ scroll_lock["a" /* default */]; });
       
 18476 __webpack_require__.d(__webpack_exports__, "NavigableMenu", function() { return /* reexport */ menu; });
       
 18477 __webpack_require__.d(__webpack_exports__, "TabbableContainer", function() { return /* reexport */ tabbable; });
       
 18478 __webpack_require__.d(__webpack_exports__, "Notice", function() { return /* reexport */ build_module_notice; });
       
 18479 __webpack_require__.d(__webpack_exports__, "__experimentalNumberControl", function() { return /* reexport */ number_control; });
       
 18480 __webpack_require__.d(__webpack_exports__, "NoticeList", function() { return /* reexport */ list; });
       
 18481 __webpack_require__.d(__webpack_exports__, "Panel", function() { return /* reexport */ panel; });
       
 18482 __webpack_require__.d(__webpack_exports__, "PanelBody", function() { return /* reexport */ panel_body; });
       
 18483 __webpack_require__.d(__webpack_exports__, "PanelHeader", function() { return /* reexport */ panel_header; });
       
 18484 __webpack_require__.d(__webpack_exports__, "PanelRow", function() { return /* reexport */ row; });
       
 18485 __webpack_require__.d(__webpack_exports__, "Placeholder", function() { return /* reexport */ placeholder; });
       
 18486 __webpack_require__.d(__webpack_exports__, "Popover", function() { return /* reexport */ popover["a" /* default */]; });
       
 18487 __webpack_require__.d(__webpack_exports__, "QueryControls", function() { return /* reexport */ QueryControls; });
       
 18488 __webpack_require__.d(__webpack_exports__, "__experimentalRadio", function() { return /* reexport */ build_module_radio; });
       
 18489 __webpack_require__.d(__webpack_exports__, "__experimentalRadioGroup", function() { return /* reexport */ radio_group; });
       
 18490 __webpack_require__.d(__webpack_exports__, "RadioControl", function() { return /* reexport */ RadioControl; });
       
 18491 __webpack_require__.d(__webpack_exports__, "RangeControl", function() { return /* reexport */ range_control; });
       
 18492 __webpack_require__.d(__webpack_exports__, "ResizableBox", function() { return /* reexport */ resizable_box; });
       
 18493 __webpack_require__.d(__webpack_exports__, "ResponsiveWrapper", function() { return /* reexport */ responsive_wrapper; });
       
 18494 __webpack_require__.d(__webpack_exports__, "SandBox", function() { return /* reexport */ sandbox; });
       
 18495 __webpack_require__.d(__webpack_exports__, "SelectControl", function() { return /* reexport */ SelectControl; });
       
 18496 __webpack_require__.d(__webpack_exports__, "Snackbar", function() { return /* reexport */ snackbar["a" /* default */]; });
       
 18497 __webpack_require__.d(__webpack_exports__, "SnackbarList", function() { return /* reexport */ snackbar_list; });
       
 18498 __webpack_require__.d(__webpack_exports__, "Spinner", function() { return /* reexport */ Spinner; });
       
 18499 __webpack_require__.d(__webpack_exports__, "TabPanel", function() { return /* reexport */ TabPanel; });
       
 18500 __webpack_require__.d(__webpack_exports__, "__experimentalText", function() { return /* reexport */ build_module_text; });
       
 18501 __webpack_require__.d(__webpack_exports__, "TextControl", function() { return /* reexport */ TextControl; });
       
 18502 __webpack_require__.d(__webpack_exports__, "TextareaControl", function() { return /* reexport */ TextareaControl; });
       
 18503 __webpack_require__.d(__webpack_exports__, "TextHighlight", function() { return /* reexport */ text_highlight; });
       
 18504 __webpack_require__.d(__webpack_exports__, "Tip", function() { return /* reexport */ tip; });
       
 18505 __webpack_require__.d(__webpack_exports__, "ToggleControl", function() { return /* reexport */ ToggleControl; });
       
 18506 __webpack_require__.d(__webpack_exports__, "Toolbar", function() { return /* reexport */ toolbar; });
       
 18507 __webpack_require__.d(__webpack_exports__, "ToolbarButton", function() { return /* reexport */ toolbar_button; });
       
 18508 __webpack_require__.d(__webpack_exports__, "__experimentalToolbarContext", function() { return /* reexport */ toolbar_context["a" /* default */]; });
       
 18509 __webpack_require__.d(__webpack_exports__, "ToolbarGroup", function() { return /* reexport */ toolbar_group; });
       
 18510 __webpack_require__.d(__webpack_exports__, "__experimentalToolbarItem", function() { return /* reexport */ toolbar_item["a" /* default */]; });
       
 18511 __webpack_require__.d(__webpack_exports__, "Tooltip", function() { return /* reexport */ build_module_tooltip["a" /* default */]; });
       
 18512 __webpack_require__.d(__webpack_exports__, "__experimentalTreeGrid", function() { return /* reexport */ TreeGrid; });
       
 18513 __webpack_require__.d(__webpack_exports__, "__experimentalTreeGridRow", function() { return /* reexport */ tree_grid_row; });
       
 18514 __webpack_require__.d(__webpack_exports__, "__experimentalTreeGridCell", function() { return /* reexport */ tree_grid_cell; });
       
 18515 __webpack_require__.d(__webpack_exports__, "__experimentalTreeGridItem", function() { return /* reexport */ tree_grid_item; });
       
 18516 __webpack_require__.d(__webpack_exports__, "TreeSelect", function() { return /* reexport */ TreeSelect; });
       
 18517 __webpack_require__.d(__webpack_exports__, "__experimentalUnitControl", function() { return /* reexport */ unit_control; });
       
 18518 __webpack_require__.d(__webpack_exports__, "VisuallyHidden", function() { return /* reexport */ visually_hidden; });
       
 18519 __webpack_require__.d(__webpack_exports__, "IsolatedEventContainer", function() { return /* reexport */ isolated_event_container["a" /* default */]; });
       
 18520 __webpack_require__.d(__webpack_exports__, "createSlotFill", function() { return /* reexport */ slot_fill["c" /* createSlotFill */]; });
       
 18521 __webpack_require__.d(__webpack_exports__, "Slot", function() { return /* reexport */ slot_fill["b" /* Slot */]; });
       
 18522 __webpack_require__.d(__webpack_exports__, "Fill", function() { return /* reexport */ slot_fill["a" /* Fill */]; });
       
 18523 __webpack_require__.d(__webpack_exports__, "SlotFillProvider", function() { return /* reexport */ slot_fill_context["b" /* default */]; });
       
 18524 __webpack_require__.d(__webpack_exports__, "__experimentalUseSlot", function() { return /* reexport */ use_slot["a" /* default */]; });
       
 18525 __webpack_require__.d(__webpack_exports__, "navigateRegions", function() { return /* reexport */ navigate_regions; });
       
 18526 __webpack_require__.d(__webpack_exports__, "withConstrainedTabbing", function() { return /* reexport */ with_constrained_tabbing["a" /* default */]; });
       
 18527 __webpack_require__.d(__webpack_exports__, "withFallbackStyles", function() { return /* reexport */ with_fallback_styles; });
       
 18528 __webpack_require__.d(__webpack_exports__, "withFilters", function() { return /* reexport */ withFilters; });
       
 18529 __webpack_require__.d(__webpack_exports__, "withFocusOutside", function() { return /* reexport */ with_focus_outside["a" /* default */]; });
       
 18530 __webpack_require__.d(__webpack_exports__, "withFocusReturn", function() { return /* reexport */ with_focus_return["a" /* default */]; });
       
 18531 __webpack_require__.d(__webpack_exports__, "FocusReturnProvider", function() { return /* reexport */ with_focus_return_context["b" /* default */]; });
       
 18532 __webpack_require__.d(__webpack_exports__, "withNotices", function() { return /* reexport */ with_notices; });
       
 18533 __webpack_require__.d(__webpack_exports__, "withSpokenMessages", function() { return /* reexport */ with_spoken_messages; });
       
 18534 
       
 18535 // EXTERNAL MODULE: external {"this":["wp","primitives"]}
       
 18536 var external_this_wp_primitives_ = __webpack_require__(6);
       
 18537 
       
 18538 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
       
 18539 var esm_extends = __webpack_require__(8);
       
 18540 
       
 18541 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
       
 18542 var slicedToArray = __webpack_require__(14);
       
 18543 
       
 18544 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js
       
 18545 var objectWithoutProperties = __webpack_require__(15);
       
 18546 
       
 18547 // EXTERNAL MODULE: external {"this":["wp","element"]}
       
 18548 var external_this_wp_element_ = __webpack_require__(0);
       
 18549 
       
 18550 // EXTERNAL MODULE: external {"this":"lodash"}
       
 18551 var external_this_lodash_ = __webpack_require__(2);
       
 18552 
       
 18553 // EXTERNAL MODULE: ./node_modules/classnames/index.js
       
 18554 var classnames = __webpack_require__(11);
       
 18555 var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
       
 18556 
       
 18557 // EXTERNAL MODULE: ./node_modules/reakit/es/CompositeState-3a25dcee.js
       
 18558 var CompositeState_3a25dcee = __webpack_require__(51);
       
 18559 
       
 18560 // EXTERNAL MODULE: ./node_modules/reakit/es/Composite/Composite.js
       
 18561 var Composite = __webpack_require__(119);
       
 18562 
       
 18563 // EXTERNAL MODULE: ./node_modules/reakit/es/_rollupPluginBabelHelpers-1f0bf8c2.js
       
 18564 var _rollupPluginBabelHelpers_1f0bf8c2 = __webpack_require__(17);
       
 18565 
       
 18566 // EXTERNAL MODULE: ./node_modules/reakit-system/es/createComponent.js + 1 modules
       
 18567 var createComponent = __webpack_require__(49);
       
 18568 
       
 18569 // EXTERNAL MODULE: ./node_modules/reakit-system/es/createHook.js + 4 modules
       
 18570 var createHook = __webpack_require__(48);
       
 18571 
       
 18572 // EXTERNAL MODULE: external {"this":"React"}
       
 18573 var external_this_React_ = __webpack_require__(13);
       
 18574 var external_this_React_default = /*#__PURE__*/__webpack_require__.n(external_this_React_);
       
 18575 
       
 18576 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/useForkRef.js
       
 18577 var useForkRef = __webpack_require__(63);
       
 18578 
       
 18579 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/useIsomorphicEffect.js
       
 18580 var useIsomorphicEffect = __webpack_require__(59);
       
 18581 
       
 18582 // EXTERNAL MODULE: ./node_modules/reakit/es/Box/Box.js
       
 18583 var Box = __webpack_require__(67);
       
 18584 
       
 18585 // CONCATENATED MODULE: ./node_modules/reakit/es/Group/Group.js
       
 18586 
       
 18587 
       
 18588 
       
 18589 
       
 18590 
       
 18591 
       
 18592 var useGroup = Object(createHook["a" /* createHook */])({
       
 18593   name: "Group",
       
 18594   compose: Box["a" /* useBox */],
       
 18595   useProps: function useProps(_, htmlProps) {
       
 18596     return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({
       
 18597       role: "group"
       
 18598     }, htmlProps);
       
 18599   }
 19727 });
 18600 });
 19728 exports['default'] = isNextMonth;
 18601 var Group = Object(createComponent["a" /* createComponent */])({
 19729 
 18602   as: "div",
 19730 var _moment = __webpack_require__(29);
 18603   useHook: useGroup
 19731 
       
 19732 var _moment2 = _interopRequireDefault(_moment);
       
 19733 
       
 19734 var _isSameMonth = __webpack_require__(162);
       
 19735 
       
 19736 var _isSameMonth2 = _interopRequireDefault(_isSameMonth);
       
 19737 
       
 19738 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 19739 
       
 19740 function isNextMonth(a, b) {
       
 19741   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
 19742   return (0, _isSameMonth2['default'])(a.clone().add(1, 'month'), b);
       
 19743 }
       
 19744 
       
 19745 /***/ }),
       
 19746 /* 302 */
       
 19747 /***/ (function(module, exports, __webpack_require__) {
       
 19748 
       
 19749 "use strict";
       
 19750 
       
 19751 
       
 19752 Object.defineProperty(exports, "__esModule", {
       
 19753   value: true
       
 19754 });
 18604 });
 19755 exports.PureDateRangePicker = undefined;
 18605 
 19756 
 18606 
 19757 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
 18607 
 19758 
 18608 // EXTERNAL MODULE: ./node_modules/reakit/es/Id/Id.js
 19759 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
 18609 var Id = __webpack_require__(93);
 19760 
 18610 
 19761 var _object = __webpack_require__(46);
 18611 // CONCATENATED MODULE: ./node_modules/reakit/es/Composite/CompositeGroup.js
 19762 
 18612 
 19763 var _object2 = _interopRequireDefault(_object);
 18613 
 19764 
 18614 
 19765 var _react = __webpack_require__(27);
 18615 
 19766 
 18616 
 19767 var _react2 = _interopRequireDefault(_react);
 18617 
 19768 
 18618 
 19769 var _reactAddonsShallowCompare = __webpack_require__(78);
 18619 
 19770 
 18620 
 19771 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
 18621 
 19772 
 18622 
 19773 var _moment = __webpack_require__(29);
 18623 
 19774 
 18624 
 19775 var _moment2 = _interopRequireDefault(_moment);
 18625 
 19776 
 18626 
 19777 var _reactWithStyles = __webpack_require__(56);
 18627 
 19778 
 18628 var useCompositeGroup = Object(createHook["a" /* createHook */])({
 19779 var _reactPortal = __webpack_require__(203);
 18629   name: "CompositeGroup",
 19780 
 18630   compose: [useGroup, Id["a" /* unstable_useId */]],
 19781 var _airbnbPropTypes = __webpack_require__(43);
 18631   useState: CompositeState_3a25dcee["g" /* u */],
 19782 
 18632   propsAreEqual: function propsAreEqual(prev, next) {
 19783 var _consolidatedEvents = __webpack_require__(103);
 18633     if (!next.id || prev.id !== next.id) {
 19784 
 18634       return useGroup.unstable_propsAreEqual(prev, next);
 19785 var _isTouchDevice = __webpack_require__(82);
 18635     }
 19786 
 18636 
 19787 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
 18637     var prevCurrentId = prev.currentId,
 19788 
 18638         prevMoves = prev.unstable_moves,
 19789 var _reactOutsideClickHandler = __webpack_require__(126);
 18639         prevProps = Object(_rollupPluginBabelHelpers_1f0bf8c2["a" /* _ */])(prev, ["currentId", "unstable_moves"]);
 19790 
 18640 
 19791 var _reactOutsideClickHandler2 = _interopRequireDefault(_reactOutsideClickHandler);
 18641     var nextCurrentId = next.currentId,
 19792 
 18642         nextMoves = next.unstable_moves,
 19793 var _DateRangePickerShape = __webpack_require__(172);
 18643         nextProps = Object(_rollupPluginBabelHelpers_1f0bf8c2["a" /* _ */])(next, ["currentId", "unstable_moves"]);
 19794 
 18644 
 19795 var _DateRangePickerShape2 = _interopRequireDefault(_DateRangePickerShape);
 18645     if (prev.items && next.items) {
 19796 
 18646       var prevCurrentItem = Object(CompositeState_3a25dcee["d" /* f */])(prev.items, prevCurrentId);
 19797 var _defaultPhrases = __webpack_require__(47);
 18647       var nextCurrentItem = Object(CompositeState_3a25dcee["d" /* f */])(next.items, nextCurrentId);
 19798 
 18648       var prevGroupId = prevCurrentItem === null || prevCurrentItem === void 0 ? void 0 : prevCurrentItem.groupId;
 19799 var _getResponsiveContainerStyles = __webpack_require__(176);
 18649       var nextGroupId = nextCurrentItem === null || nextCurrentItem === void 0 ? void 0 : nextCurrentItem.groupId;
 19800 
 18650 
 19801 var _getResponsiveContainerStyles2 = _interopRequireDefault(_getResponsiveContainerStyles);
 18651       if (next.id === nextGroupId || next.id === prevGroupId) {
 19802 
 18652         return false;
 19803 var _getDetachedContainerStyles = __webpack_require__(177);
 18653       }
 19804 
 18654     }
 19805 var _getDetachedContainerStyles2 = _interopRequireDefault(_getDetachedContainerStyles);
 18655 
 19806 
 18656     return useGroup.unstable_propsAreEqual(prevProps, nextProps);
 19807 var _getInputHeight = __webpack_require__(127);
 18657   },
 19808 
 18658   useProps: function useProps(options, _ref) {
 19809 var _getInputHeight2 = _interopRequireDefault(_getInputHeight);
 18659     var htmlRef = _ref.ref,
 19810 
 18660         htmlProps = Object(_rollupPluginBabelHelpers_1f0bf8c2["a" /* _ */])(_ref, ["ref"]);
 19811 var _isInclusivelyAfterDay = __webpack_require__(94);
 18661 
 19812 
 18662     var ref = Object(external_this_React_["useRef"])(null);
 19813 var _isInclusivelyAfterDay2 = _interopRequireDefault(_isInclusivelyAfterDay);
 18663     var id = options.id; // We need this to be called before CompositeItems' register
 19814 
 18664 
 19815 var _disableScroll2 = __webpack_require__(178);
 18665     Object(useIsomorphicEffect["a" /* useIsomorphicEffect */])(function () {
 19816 
 18666       var _options$registerGrou;
 19817 var _disableScroll3 = _interopRequireDefault(_disableScroll2);
 18667 
 19818 
 18668       if (!id) return undefined;
 19819 var _DateRangePickerInputController = __webpack_require__(179);
 18669       (_options$registerGrou = options.registerGroup) === null || _options$registerGrou === void 0 ? void 0 : _options$registerGrou.call(options, {
 19820 
 18670         id: id,
 19821 var _DateRangePickerInputController2 = _interopRequireDefault(_DateRangePickerInputController);
 18671         ref: ref
 19822 
 18672       });
 19823 var _DayPickerRangeController = __webpack_require__(188);
 18673       return function () {
 19824 
 18674         var _options$unregisterGr;
 19825 var _DayPickerRangeController2 = _interopRequireDefault(_DayPickerRangeController);
 18675 
 19826 
 18676         (_options$unregisterGr = options.unregisterGroup) === null || _options$unregisterGr === void 0 ? void 0 : _options$unregisterGr.call(options, id);
 19827 var _CloseButton = __webpack_require__(96);
 18677       };
 19828 
 18678     }, [id, options.registerGroup, options.unregisterGroup]);
 19829 var _CloseButton2 = _interopRequireDefault(_CloseButton);
 18679     return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({
 19830 
 18680       ref: Object(useForkRef["a" /* useForkRef */])(ref, htmlRef)
 19831 var _constants = __webpack_require__(39);
 18681     }, htmlProps);
 19832 
 18682   }
 19833 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
 18683 });
 19834 
 18684 var CompositeGroup = Object(createComponent["a" /* createComponent */])({
 19835 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
 18685   as: "div",
 19836 
 18686   useHook: useCompositeGroup
 19837 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
 18687 });
 19838 
 18688 
 19839 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
 18689 
 19840 
 18690 
 19841 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, _DateRangePickerShape2['default']));
 18691 // EXTERNAL MODULE: external {"this":["wp","i18n"]}
 19842 
 18692 var external_this_wp_i18n_ = __webpack_require__(1);
 19843 var defaultProps = {
 18693 
 19844   // required props for a functional interactive DateRangePicker
 18694 // EXTERNAL MODULE: external {"this":["wp","compose"]}
 19845   startDate: null,
 18695 var external_this_wp_compose_ = __webpack_require__(9);
 19846   endDate: null,
 18696 
 19847   focusedInput: null,
 18697 // EXTERNAL MODULE: ./node_modules/reakit/es/Composite/CompositeItem.js
 19848 
 18698 var CompositeItem = __webpack_require__(120);
 19849   // input related props
 18699 
 19850   startDatePlaceholderText: 'Start Date',
 18700 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/tooltip/index.js
 19851   endDatePlaceholderText: 'End Date',
 18701 var build_module_tooltip = __webpack_require__(86);
 19852   disabled: false,
 18702 
 19853   required: false,
 18703 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
 19854   readOnly: false,
 18704 var defineProperty = __webpack_require__(5);
 19855   screenReaderInputMessage: '',
 18705 
 19856   showClearDates: false,
 18706 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/visually-hidden/utils.js
 19857   showDefaultInputIcon: false,
 18707 
 19858   inputIconPosition: _constants.ICON_BEFORE_POSITION,
 18708 
 19859   customInputIcon: null,
 18709 
 19860   customArrowIcon: null,
 18710 /**
 19861   customCloseIcon: null,
 18711  * Utility Functions
 19862   noBorder: false,
 18712  */
 19863   block: false,
 18713 
 19864   small: false,
 18714 /**
 19865   regular: false,
 18715  * renderAsRenderProps is used to wrap a component and convert
 19866   keepFocusOnInput: false,
 18716  * the passed property "as" either a string or component, to the
 19867 
 18717  * rendered tag if a string, or component.
 19868   // calendar presentation and interaction related props
 18718  *
 19869   renderMonthText: null,
 18719  * See VisuallyHidden hidden for example.
 19870   orientation: _constants.HORIZONTAL_ORIENTATION,
 18720  *
 19871   anchorDirection: _constants.ANCHOR_LEFT,
 18721  * @param {string|WPComponent} as A tag or component to render.
 19872   openDirection: _constants.OPEN_DOWN,
 18722  * @return {WPComponent} The rendered component.
 19873   horizontalMargin: 0,
 18723  */
 19874   withPortal: false,
 18724 function renderAsRenderProps(_ref) {
 19875   withFullScreenPortal: false,
 18725   var _ref$as = _ref.as,
 19876   appendToBody: false,
 18726       Component = _ref$as === void 0 ? 'div' : _ref$as,
 19877   disableScroll: false,
 18727       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["as"]);
 19878   initialVisibleMonth: null,
 18728 
 19879   numberOfMonths: 2,
 18729   if (typeof props.children === 'function') {
 19880   keepOpenOnDateSelect: false,
 18730     return props.children(props);
 19881   reopenPickerOnClearDates: false,
 18731   }
 19882   renderCalendarInfo: null,
 18732 
 19883   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
 18733   return Object(external_this_wp_element_["createElement"])(Component, props);
 19884   hideKeyboardShortcutsPanel: false,
 18734 }
 19885   daySize: _constants.DAY_SIZE,
 18735 
 19886   isRTL: false,
 18736 
 19887   firstDayOfWeek: null,
 18737 
 19888   verticalHeight: null,
 18738 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/visually-hidden/index.js
 19889   transitionDuration: undefined,
 18739 
 19890   verticalSpacing: _constants.DEFAULT_VERTICAL_SPACING,
 18740 
 19891 
 18741 
 19892   // navigation related props
 18742 function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
 19893   navPrev: null,
 18743 
 19894   navNext: null,
 18744 function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 19895 
 18745 
 19896   onPrevMonthClick: function () {
 18746 /**
 19897     function onPrevMonthClick() {}
 18747  * External dependencies
 19898 
 18748  */
 19899     return onPrevMonthClick;
 18749 
 19900   }(),
 18750 /**
 19901   onNextMonthClick: function () {
 18751  * Internal dependencies
 19902     function onNextMonthClick() {}
 18752  */
 19903 
 18753 
 19904     return onNextMonthClick;
 18754 
 19905   }(),
 18755 /**
 19906   onClose: function () {
 18756  * VisuallyHidden component to render text out non-visually
 19907     function onClose() {}
 18757  * for use in devices such as a screen reader.
 19908 
 18758  *
 19909     return onClose;
 18759  * @param {Object}             props             Component props.
 19910   }(),
 18760  * @param {string|WPComponent} [props.as="div"]  A tag or component to render.
 19911 
 18761  * @param {string}             [props.className] Class to set on the container.
 19912 
 18762  */
 19913   // day presentation and interaction related props
 18763 
 19914   renderCalendarDay: undefined,
 18764 function VisuallyHidden(_ref) {
 19915   renderDayContents: null,
 18765   var _ref$as = _ref.as,
 19916   renderMonthElement: null,
 18766       as = _ref$as === void 0 ? 'div' : _ref$as,
 19917   minimumNights: 1,
 18767       className = _ref.className,
 19918   enableOutsideDays: false,
 18768       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["as", "className"]);
 19919   isDayBlocked: function () {
 18769 
 19920     function isDayBlocked() {
 18770   return renderAsRenderProps(_objectSpread({
 19921       return false;
 18771     as: as,
 19922     }
 18772     className: classnames_default()('components-visually-hidden', className)
 19923 
 18773   }, props));
 19924     return isDayBlocked;
 18774 }
 19925   }(),
 18775 
 19926   isOutsideRange: function () {
 18776 /* harmony default export */ var visually_hidden = (VisuallyHidden);
 19927     function isOutsideRange(day) {
 18777 
 19928       return !(0, _isInclusivelyAfterDay2['default'])(day, (0, _moment2['default'])());
 18778 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/alignment-matrix-control/utils.js
 19929     }
 18779 /**
 19930 
 18780  * External dependencies
 19931     return isOutsideRange;
 18781  */
 19932   }(),
 18782 
 19933   isDayHighlighted: function () {
 18783 /**
 19934     function isDayHighlighted() {
 18784  * WordPress dependencies
 19935       return false;
 18785  */
 19936     }
 18786 
 19937 
 18787 
 19938     return isDayHighlighted;
 18788 var GRID = [['top left', 'top center', 'top right'], ['center left', 'center center', 'center right'], ['bottom left', 'bottom center', 'bottom right']]; // Stored as map as i18n __() only accepts strings (not variables)
 19939   }(),
 18789 
 19940 
 18790 var ALIGNMENT_LABEL = {
 19941   // internationalization
 18791   'top left': Object(external_this_wp_i18n_["__"])('Top Left'),
 19942   displayFormat: function () {
 18792   'top center': Object(external_this_wp_i18n_["__"])('Top Center'),
 19943     function displayFormat() {
 18793   'top right': Object(external_this_wp_i18n_["__"])('Top Right'),
 19944       return _moment2['default'].localeData().longDateFormat('L');
 18794   'center left': Object(external_this_wp_i18n_["__"])('Center Left'),
 19945     }
 18795   'center center': Object(external_this_wp_i18n_["__"])('Center Center'),
 19946 
 18796   'center right': Object(external_this_wp_i18n_["__"])('Center Right'),
 19947     return displayFormat;
 18797   'bottom left': Object(external_this_wp_i18n_["__"])('Bottom Left'),
 19948   }(),
 18798   'bottom center': Object(external_this_wp_i18n_["__"])('Bottom Center'),
 19949   monthFormat: 'MMMM YYYY',
 18799   'bottom right': Object(external_this_wp_i18n_["__"])('Bottom Right')
 19950   weekDayFormat: 'dd',
 18800 }; // Transforms GRID into a flat Array of values
 19951   phrases: _defaultPhrases.DateRangePickerPhrases,
 18801 
 19952   dayAriaLabelFormat: undefined
 18802 var ALIGNMENTS = Object(external_this_lodash_["flattenDeep"])(GRID);
 19953 };
 18803 /**
 19954 
 18804  * Parses and transforms an incoming value to better match the alignment values
 19955 var DateRangePicker = function (_React$Component) {
 18805  *
 19956   _inherits(DateRangePicker, _React$Component);
 18806  * @param {string} value An alignment value to parse.
 19957 
 18807  *
 19958   function DateRangePicker(props) {
 18808  * @return {string} The parsed value.
 19959     _classCallCheck(this, DateRangePicker);
 18809  */
 19960 
 18810 
 19961     var _this = _possibleConstructorReturn(this, (DateRangePicker.__proto__ || Object.getPrototypeOf(DateRangePicker)).call(this, props));
 18811 function transformValue(value) {
 19962 
 18812   var nextValue = value === 'center' ? 'center center' : value;
 19963     _this.state = {
 18813   return nextValue.replace('-', ' ');
 19964       dayPickerContainerStyles: {},
 18814 }
 19965       isDateRangePickerInputFocused: false,
 18815 /**
 19966       isDayPickerFocused: false,
 18816  * Creates an item ID based on a prefix ID and an alignment value.
 19967       showKeyboardShortcuts: false
 18817  *
 19968     };
 18818  * @param {string} prefixId An ID to prefix.
 19969 
 18819  * @param {string} value An alignment value.
 19970     _this.isTouchDevice = false;
 18820  *
 19971 
 18821  * @return {string} The item id.
 19972     _this.onOutsideClick = _this.onOutsideClick.bind(_this);
 18822  */
 19973     _this.onDateRangePickerInputFocus = _this.onDateRangePickerInputFocus.bind(_this);
 18823 
 19974     _this.onDayPickerFocus = _this.onDayPickerFocus.bind(_this);
 18824 function getItemId(prefixId, value) {
 19975     _this.onDayPickerBlur = _this.onDayPickerBlur.bind(_this);
 18825   var valueId = transformValue(value).replace(' ', '-');
 19976     _this.showKeyboardShortcutsPanel = _this.showKeyboardShortcutsPanel.bind(_this);
 18826   return "".concat(prefixId, "-").concat(valueId);
 19977 
 18827 }
 19978     _this.responsivizePickerPosition = _this.responsivizePickerPosition.bind(_this);
 18828 /**
 19979     _this.disableScroll = _this.disableScroll.bind(_this);
 18829  * Retrieves the alignment index from a value.
 19980 
 18830  *
 19981     _this.setDayPickerContainerRef = _this.setDayPickerContainerRef.bind(_this);
 18831  * @param {string} alignment Value to check.
 19982     _this.setContainerRef = _this.setContainerRef.bind(_this);
 18832  *
 19983     return _this;
 18833  * @return {number} The index of a matching alignment.
 19984   }
 18834  */
 19985 
 18835 
 19986   _createClass(DateRangePicker, [{
 18836 function getAlignmentIndex() {
 19987     key: 'componentDidMount',
 18837   var alignment = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'center';
 19988     value: function () {
 18838   var item = transformValue(alignment).replace('-', ' ');
 19989       function componentDidMount() {
 18839   var index = ALIGNMENTS.indexOf(item);
 19990         this.removeEventListener = (0, _consolidatedEvents.addEventListener)(window, 'resize', this.responsivizePickerPosition, { passive: true });
 18840   return index > -1 ? index : undefined;
 19991         this.responsivizePickerPosition();
 18841 }
 19992         this.disableScroll();
 18842 
 19993 
 18843 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js
 19994         var focusedInput = this.props.focusedInput;
 18844 var helpers_defineProperty = __webpack_require__(270);
 19995 
 18845 var defineProperty_default = /*#__PURE__*/__webpack_require__.n(helpers_defineProperty);
 19996         if (focusedInput) {
 18846 
 19997           this.setState({
 18847 // CONCATENATED MODULE: ./node_modules/@emotion/memoize/dist/memoize.browser.esm.js
 19998             isDateRangePickerInputFocused: true
 18848 function memoize(fn) {
 19999           });
 18849   var cache = {};
       
 18850   return function (arg) {
       
 18851     if (cache[arg] === undefined) cache[arg] = fn(arg);
       
 18852     return cache[arg];
       
 18853   };
       
 18854 }
       
 18855 
       
 18856 /* harmony default export */ var memoize_browser_esm = (memoize);
       
 18857 
       
 18858 // CONCATENATED MODULE: ./node_modules/@emotion/is-prop-valid/dist/is-prop-valid.browser.esm.js
       
 18859 
       
 18860 
       
 18861 var reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|inert|itemProp|itemScope|itemType|itemID|itemRef|on|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23
       
 18862 
       
 18863 var is_prop_valid_browser_esm_index = memoize_browser_esm(function (prop) {
       
 18864   return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111
       
 18865   /* o */
       
 18866   && prop.charCodeAt(1) === 110
       
 18867   /* n */
       
 18868   && prop.charCodeAt(2) < 91;
       
 18869 }
       
 18870 /* Z+1 */
       
 18871 );
       
 18872 
       
 18873 /* harmony default export */ var is_prop_valid_browser_esm = (is_prop_valid_browser_esm_index);
       
 18874 
       
 18875 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/inheritsLoose.js
       
 18876 var inheritsLoose = __webpack_require__(145);
       
 18877 var inheritsLoose_default = /*#__PURE__*/__webpack_require__.n(inheritsLoose);
       
 18878 
       
 18879 // CONCATENATED MODULE: ./node_modules/@emotion/sheet/dist/sheet.browser.esm.js
       
 18880 /*
       
 18881 
       
 18882 Based off glamor's StyleSheet, thanks Sunil ❤️
       
 18883 
       
 18884 high performance StyleSheet for css-in-js systems
       
 18885 
       
 18886 - uses multiple style tags behind the scenes for millions of rules
       
 18887 - uses `insertRule` for appending in production for *much* faster performance
       
 18888 
       
 18889 // usage
       
 18890 
       
 18891 import { StyleSheet } from '@emotion/sheet'
       
 18892 
       
 18893 let styleSheet = new StyleSheet({ key: '', container: document.head })
       
 18894 
       
 18895 styleSheet.insert('#box { border: 1px solid red; }')
       
 18896 - appends a css rule into the stylesheet
       
 18897 
       
 18898 styleSheet.flush()
       
 18899 - empties the stylesheet of all its contents
       
 18900 
       
 18901 */
       
 18902 // $FlowFixMe
       
 18903 function sheetForTag(tag) {
       
 18904   if (tag.sheet) {
       
 18905     // $FlowFixMe
       
 18906     return tag.sheet;
       
 18907   } // this weirdness brought to you by firefox
       
 18908 
       
 18909   /* istanbul ignore next */
       
 18910 
       
 18911 
       
 18912   for (var i = 0; i < document.styleSheets.length; i++) {
       
 18913     if (document.styleSheets[i].ownerNode === tag) {
       
 18914       // $FlowFixMe
       
 18915       return document.styleSheets[i];
       
 18916     }
       
 18917   }
       
 18918 }
       
 18919 
       
 18920 function createStyleElement(options) {
       
 18921   var tag = document.createElement('style');
       
 18922   tag.setAttribute('data-emotion', options.key);
       
 18923 
       
 18924   if (options.nonce !== undefined) {
       
 18925     tag.setAttribute('nonce', options.nonce);
       
 18926   }
       
 18927 
       
 18928   tag.appendChild(document.createTextNode(''));
       
 18929   return tag;
       
 18930 }
       
 18931 
       
 18932 var StyleSheet =
       
 18933 /*#__PURE__*/
       
 18934 function () {
       
 18935   function StyleSheet(options) {
       
 18936     this.isSpeedy = options.speedy === undefined ? "production" === 'production' : options.speedy;
       
 18937     this.tags = [];
       
 18938     this.ctr = 0;
       
 18939     this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets
       
 18940 
       
 18941     this.key = options.key;
       
 18942     this.container = options.container;
       
 18943     this.before = null;
       
 18944   }
       
 18945 
       
 18946   var _proto = StyleSheet.prototype;
       
 18947 
       
 18948   _proto.insert = function insert(rule) {
       
 18949     // the max length is how many rules we have per style tag, it's 65000 in speedy mode
       
 18950     // it's 1 in dev because we insert source maps that map a single rule to a location
       
 18951     // and you can only have one source map per style tag
       
 18952     if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {
       
 18953       var _tag = createStyleElement(this);
       
 18954 
       
 18955       var before;
       
 18956 
       
 18957       if (this.tags.length === 0) {
       
 18958         before = this.before;
       
 18959       } else {
       
 18960         before = this.tags[this.tags.length - 1].nextSibling;
       
 18961       }
       
 18962 
       
 18963       this.container.insertBefore(_tag, before);
       
 18964       this.tags.push(_tag);
       
 18965     }
       
 18966 
       
 18967     var tag = this.tags[this.tags.length - 1];
       
 18968 
       
 18969     if (this.isSpeedy) {
       
 18970       var sheet = sheetForTag(tag);
       
 18971 
       
 18972       try {
       
 18973         // this is a really hot path
       
 18974         // we check the second character first because having "i"
       
 18975         // as the second character will happen less often than
       
 18976         // having "@" as the first character
       
 18977         var isImportRule = rule.charCodeAt(1) === 105 && rule.charCodeAt(0) === 64; // this is the ultrafast version, works across browsers
       
 18978         // the big drawback is that the css won't be editable in devtools
       
 18979 
       
 18980         sheet.insertRule(rule, // we need to insert @import rules before anything else
       
 18981         // otherwise there will be an error
       
 18982         // technically this means that the @import rules will
       
 18983         // _usually_(not always since there could be multiple style tags)
       
 18984         // be the first ones in prod and generally later in dev
       
 18985         // this shouldn't really matter in the real world though
       
 18986         // @import is generally only used for font faces from google fonts and etc.
       
 18987         // so while this could be technically correct then it would be slower and larger
       
 18988         // for a tiny bit of correctness that won't matter in the real world
       
 18989         isImportRule ? 0 : sheet.cssRules.length);
       
 18990       } catch (e) {
       
 18991         if (false) {}
       
 18992       }
       
 18993     } else {
       
 18994       tag.appendChild(document.createTextNode(rule));
       
 18995     }
       
 18996 
       
 18997     this.ctr++;
       
 18998   };
       
 18999 
       
 19000   _proto.flush = function flush() {
       
 19001     // $FlowFixMe
       
 19002     this.tags.forEach(function (tag) {
       
 19003       return tag.parentNode.removeChild(tag);
       
 19004     });
       
 19005     this.tags = [];
       
 19006     this.ctr = 0;
       
 19007   };
       
 19008 
       
 19009   return StyleSheet;
       
 19010 }();
       
 19011 
       
 19012 
       
 19013 
       
 19014 // CONCATENATED MODULE: ./node_modules/@emotion/stylis/dist/stylis.browser.esm.js
       
 19015 function stylis_min (W) {
       
 19016   function M(d, c, e, h, a) {
       
 19017     for (var m = 0, b = 0, v = 0, n = 0, q, g, x = 0, K = 0, k, u = k = q = 0, l = 0, r = 0, I = 0, t = 0, B = e.length, J = B - 1, y, f = '', p = '', F = '', G = '', C; l < B;) {
       
 19018       g = e.charCodeAt(l);
       
 19019       l === J && 0 !== b + n + v + m && (0 !== b && (g = 47 === b ? 10 : 47), n = v = m = 0, B++, J++);
       
 19020 
       
 19021       if (0 === b + n + v + m) {
       
 19022         if (l === J && (0 < r && (f = f.replace(N, '')), 0 < f.trim().length)) {
       
 19023           switch (g) {
       
 19024             case 32:
       
 19025             case 9:
       
 19026             case 59:
       
 19027             case 13:
       
 19028             case 10:
       
 19029               break;
       
 19030 
       
 19031             default:
       
 19032               f += e.charAt(l);
       
 19033           }
       
 19034 
       
 19035           g = 59;
 20000         }
 19036         }
 20001 
 19037 
 20002         this.isTouchDevice = (0, _isTouchDevice2['default'])();
 19038         switch (g) {
 20003       }
 19039           case 123:
 20004 
 19040             f = f.trim();
 20005       return componentDidMount;
 19041             q = f.charCodeAt(0);
 20006     }()
 19042             k = 1;
 20007   }, {
 19043 
 20008     key: 'shouldComponentUpdate',
 19044             for (t = ++l; l < B;) {
 20009     value: function () {
 19045               switch (g = e.charCodeAt(l)) {
 20010       function shouldComponentUpdate(nextProps, nextState) {
 19046                 case 123:
 20011         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
 19047                   k++;
 20012       }
 19048                   break;
 20013 
 19049 
 20014       return shouldComponentUpdate;
 19050                 case 125:
 20015     }()
 19051                   k--;
 20016   }, {
 19052                   break;
 20017     key: 'componentDidUpdate',
 19053 
 20018     value: function () {
 19054                 case 47:
 20019       function componentDidUpdate(prevProps) {
 19055                   switch (g = e.charCodeAt(l + 1)) {
 20020         var focusedInput = this.props.focusedInput;
 19056                     case 42:
 20021 
 19057                     case 47:
 20022         if (!prevProps.focusedInput && focusedInput && this.isOpened()) {
 19058                       a: {
 20023           // The date picker just changed from being closed to being open.
 19059                         for (u = l + 1; u < J; ++u) {
 20024           this.responsivizePickerPosition();
 19060                           switch (e.charCodeAt(u)) {
 20025           this.disableScroll();
 19061                             case 47:
 20026         } else if (prevProps.focusedInput && !focusedInput && !this.isOpened()) {
 19062                               if (42 === g && 42 === e.charCodeAt(u - 1) && l + 2 !== u) {
 20027           // The date picker just changed from being open to being closed.
 19063                                 l = u + 1;
 20028           if (this.enableScroll) this.enableScroll();
 19064                                 break a;
       
 19065                               }
       
 19066 
       
 19067                               break;
       
 19068 
       
 19069                             case 10:
       
 19070                               if (47 === g) {
       
 19071                                 l = u + 1;
       
 19072                                 break a;
       
 19073                               }
       
 19074 
       
 19075                           }
       
 19076                         }
       
 19077 
       
 19078                         l = u;
       
 19079                       }
       
 19080 
       
 19081                   }
       
 19082 
       
 19083                   break;
       
 19084 
       
 19085                 case 91:
       
 19086                   g++;
       
 19087 
       
 19088                 case 40:
       
 19089                   g++;
       
 19090 
       
 19091                 case 34:
       
 19092                 case 39:
       
 19093                   for (; l++ < J && e.charCodeAt(l) !== g;) {
       
 19094                   }
       
 19095 
       
 19096               }
       
 19097 
       
 19098               if (0 === k) break;
       
 19099               l++;
       
 19100             }
       
 19101 
       
 19102             k = e.substring(t, l);
       
 19103             0 === q && (q = (f = f.replace(ca, '').trim()).charCodeAt(0));
       
 19104 
       
 19105             switch (q) {
       
 19106               case 64:
       
 19107                 0 < r && (f = f.replace(N, ''));
       
 19108                 g = f.charCodeAt(1);
       
 19109 
       
 19110                 switch (g) {
       
 19111                   case 100:
       
 19112                   case 109:
       
 19113                   case 115:
       
 19114                   case 45:
       
 19115                     r = c;
       
 19116                     break;
       
 19117 
       
 19118                   default:
       
 19119                     r = O;
       
 19120                 }
       
 19121 
       
 19122                 k = M(c, r, k, g, a + 1);
       
 19123                 t = k.length;
       
 19124                 0 < A && (r = X(O, f, I), C = H(3, k, r, c, D, z, t, g, a, h), f = r.join(''), void 0 !== C && 0 === (t = (k = C.trim()).length) && (g = 0, k = ''));
       
 19125                 if (0 < t) switch (g) {
       
 19126                   case 115:
       
 19127                     f = f.replace(da, ea);
       
 19128 
       
 19129                   case 100:
       
 19130                   case 109:
       
 19131                   case 45:
       
 19132                     k = f + '{' + k + '}';
       
 19133                     break;
       
 19134 
       
 19135                   case 107:
       
 19136                     f = f.replace(fa, '$1 $2');
       
 19137                     k = f + '{' + k + '}';
       
 19138                     k = 1 === w || 2 === w && L('@' + k, 3) ? '@-webkit-' + k + '@' + k : '@' + k;
       
 19139                     break;
       
 19140 
       
 19141                   default:
       
 19142                     k = f + k, 112 === h && (k = (p += k, ''));
       
 19143                 } else k = '';
       
 19144                 break;
       
 19145 
       
 19146               default:
       
 19147                 k = M(c, X(c, f, I), k, h, a + 1);
       
 19148             }
       
 19149 
       
 19150             F += k;
       
 19151             k = I = r = u = q = 0;
       
 19152             f = '';
       
 19153             g = e.charCodeAt(++l);
       
 19154             break;
       
 19155 
       
 19156           case 125:
       
 19157           case 59:
       
 19158             f = (0 < r ? f.replace(N, '') : f).trim();
       
 19159             if (1 < (t = f.length)) switch (0 === u && (q = f.charCodeAt(0), 45 === q || 96 < q && 123 > q) && (t = (f = f.replace(' ', ':')).length), 0 < A && void 0 !== (C = H(1, f, c, d, D, z, p.length, h, a, h)) && 0 === (t = (f = C.trim()).length) && (f = '\x00\x00'), q = f.charCodeAt(0), g = f.charCodeAt(1), q) {
       
 19160               case 0:
       
 19161                 break;
       
 19162 
       
 19163               case 64:
       
 19164                 if (105 === g || 99 === g) {
       
 19165                   G += f + e.charAt(l);
       
 19166                   break;
       
 19167                 }
       
 19168 
       
 19169               default:
       
 19170                 58 !== f.charCodeAt(t - 1) && (p += P(f, q, g, f.charCodeAt(2)));
       
 19171             }
       
 19172             I = r = u = q = 0;
       
 19173             f = '';
       
 19174             g = e.charCodeAt(++l);
 20029         }
 19175         }
 20030       }
 19176       }
 20031 
 19177 
 20032       return componentDidUpdate;
 19178       switch (g) {
 20033     }()
 19179         case 13:
 20034   }, {
 19180         case 10:
 20035     key: 'componentWillUnmount',
 19181           47 === b ? b = 0 : 0 === 1 + q && 107 !== h && 0 < f.length && (r = 1, f += '\x00');
 20036     value: function () {
 19182           0 < A * Y && H(0, f, c, d, D, z, p.length, h, a, h);
 20037       function componentWillUnmount() {
 19183           z = 1;
 20038         if (this.removeEventListener) this.removeEventListener();
 19184           D++;
 20039         if (this.enableScroll) this.enableScroll();
 19185           break;
       
 19186 
       
 19187         case 59:
       
 19188         case 125:
       
 19189           if (0 === b + n + v + m) {
       
 19190             z++;
       
 19191             break;
       
 19192           }
       
 19193 
       
 19194         default:
       
 19195           z++;
       
 19196           y = e.charAt(l);
       
 19197 
       
 19198           switch (g) {
       
 19199             case 9:
       
 19200             case 32:
       
 19201               if (0 === n + m + b) switch (x) {
       
 19202                 case 44:
       
 19203                 case 58:
       
 19204                 case 9:
       
 19205                 case 32:
       
 19206                   y = '';
       
 19207                   break;
       
 19208 
       
 19209                 default:
       
 19210                   32 !== g && (y = ' ');
       
 19211               }
       
 19212               break;
       
 19213 
       
 19214             case 0:
       
 19215               y = '\\0';
       
 19216               break;
       
 19217 
       
 19218             case 12:
       
 19219               y = '\\f';
       
 19220               break;
       
 19221 
       
 19222             case 11:
       
 19223               y = '\\v';
       
 19224               break;
       
 19225 
       
 19226             case 38:
       
 19227               0 === n + b + m && (r = I = 1, y = '\f' + y);
       
 19228               break;
       
 19229 
       
 19230             case 108:
       
 19231               if (0 === n + b + m + E && 0 < u) switch (l - u) {
       
 19232                 case 2:
       
 19233                   112 === x && 58 === e.charCodeAt(l - 3) && (E = x);
       
 19234 
       
 19235                 case 8:
       
 19236                   111 === K && (E = K);
       
 19237               }
       
 19238               break;
       
 19239 
       
 19240             case 58:
       
 19241               0 === n + b + m && (u = l);
       
 19242               break;
       
 19243 
       
 19244             case 44:
       
 19245               0 === b + v + n + m && (r = 1, y += '\r');
       
 19246               break;
       
 19247 
       
 19248             case 34:
       
 19249             case 39:
       
 19250               0 === b && (n = n === g ? 0 : 0 === n ? g : n);
       
 19251               break;
       
 19252 
       
 19253             case 91:
       
 19254               0 === n + b + v && m++;
       
 19255               break;
       
 19256 
       
 19257             case 93:
       
 19258               0 === n + b + v && m--;
       
 19259               break;
       
 19260 
       
 19261             case 41:
       
 19262               0 === n + b + m && v--;
       
 19263               break;
       
 19264 
       
 19265             case 40:
       
 19266               if (0 === n + b + m) {
       
 19267                 if (0 === q) switch (2 * x + 3 * K) {
       
 19268                   case 533:
       
 19269                     break;
       
 19270 
       
 19271                   default:
       
 19272                     q = 1;
       
 19273                 }
       
 19274                 v++;
       
 19275               }
       
 19276 
       
 19277               break;
       
 19278 
       
 19279             case 64:
       
 19280               0 === b + v + n + m + u + k && (k = 1);
       
 19281               break;
       
 19282 
       
 19283             case 42:
       
 19284             case 47:
       
 19285               if (!(0 < n + m + v)) switch (b) {
       
 19286                 case 0:
       
 19287                   switch (2 * g + 3 * e.charCodeAt(l + 1)) {
       
 19288                     case 235:
       
 19289                       b = 47;
       
 19290                       break;
       
 19291 
       
 19292                     case 220:
       
 19293                       t = l, b = 42;
       
 19294                   }
       
 19295 
       
 19296                   break;
       
 19297 
       
 19298                 case 42:
       
 19299                   47 === g && 42 === x && t + 2 !== l && (33 === e.charCodeAt(t + 2) && (p += e.substring(t, l + 1)), y = '', b = 0);
       
 19300               }
       
 19301           }
       
 19302 
       
 19303           0 === b && (f += y);
 20040       }
 19304       }
 20041 
 19305 
 20042       return componentWillUnmount;
 19306       K = x;
 20043     }()
 19307       x = g;
 20044   }, {
 19308       l++;
 20045     key: 'onOutsideClick',
 19309     }
 20046     value: function () {
 19310 
 20047       function onOutsideClick(event) {
 19311     t = p.length;
 20048         var _props = this.props,
 19312 
 20049             onFocusChange = _props.onFocusChange,
 19313     if (0 < t) {
 20050             onClose = _props.onClose,
 19314       r = c;
 20051             startDate = _props.startDate,
 19315       if (0 < A && (C = H(2, p, r, d, D, z, t, h, a, h), void 0 !== C && 0 === (p = C).length)) return G + p + F;
 20052             endDate = _props.endDate,
 19316       p = r.join(',') + '{' + p + '}';
 20053             appendToBody = _props.appendToBody;
 19317 
 20054 
 19318       if (0 !== w * E) {
 20055         if (!this.isOpened()) return;
 19319         2 !== w || L(p, 2) || (E = 0);
 20056         if (appendToBody && this.dayPickerContainer.contains(event.target)) return;
 19320 
 20057 
 19321         switch (E) {
 20058         this.setState({
 19322           case 111:
 20059           isDateRangePickerInputFocused: false,
 19323             p = p.replace(ha, ':-moz-$1') + p;
 20060           isDayPickerFocused: false,
 19324             break;
 20061           showKeyboardShortcuts: false
 19325 
 20062         });
 19326           case 112:
 20063 
 19327             p = p.replace(Q, '::-webkit-input-$1') + p.replace(Q, '::-moz-$1') + p.replace(Q, ':-ms-input-$1') + p;
 20064         onFocusChange(null);
 19328         }
 20065         onClose({ startDate: startDate, endDate: endDate });
 19329 
       
 19330         E = 0;
 20066       }
 19331       }
 20067 
 19332     }
 20068       return onOutsideClick;
 19333 
 20069     }()
 19334     return G + p + F;
 20070   }, {
 19335   }
 20071     key: 'onDateRangePickerInputFocus',
 19336 
 20072     value: function () {
 19337   function X(d, c, e) {
 20073       function onDateRangePickerInputFocus(focusedInput) {
 19338     var h = c.trim().split(ia);
 20074         var _props2 = this.props,
 19339     c = h;
 20075             onFocusChange = _props2.onFocusChange,
 19340     var a = h.length,
 20076             readOnly = _props2.readOnly,
 19341         m = d.length;
 20077             withPortal = _props2.withPortal,
 19342 
 20078             withFullScreenPortal = _props2.withFullScreenPortal,
 19343     switch (m) {
 20079             keepFocusOnInput = _props2.keepFocusOnInput;
 19344       case 0:
 20080 
 19345       case 1:
 20081 
 19346         var b = 0;
 20082         if (focusedInput) {
 19347 
 20083           var withAnyPortal = withPortal || withFullScreenPortal;
 19348         for (d = 0 === m ? '' : d[0] + ' '; b < a; ++b) {
 20084           var moveFocusToDayPicker = withAnyPortal || readOnly && !keepFocusOnInput || this.isTouchDevice && !keepFocusOnInput;
 19349           c[b] = Z(d, c[b], e).trim();
 20085 
 19350         }
 20086           if (moveFocusToDayPicker) {
 19351 
 20087             this.onDayPickerFocus();
 19352         break;
 20088           } else {
 19353 
 20089             this.onDayPickerBlur();
 19354       default:
       
 19355         var v = b = 0;
       
 19356 
       
 19357         for (c = []; b < a; ++b) {
       
 19358           for (var n = 0; n < m; ++n) {
       
 19359             c[v++] = Z(d[n] + ' ', h[b], e).trim();
 20090           }
 19360           }
 20091         }
 19361         }
 20092 
 19362 
 20093         onFocusChange(focusedInput);
 19363     }
       
 19364 
       
 19365     return c;
       
 19366   }
       
 19367 
       
 19368   function Z(d, c, e) {
       
 19369     var h = c.charCodeAt(0);
       
 19370     33 > h && (h = (c = c.trim()).charCodeAt(0));
       
 19371 
       
 19372     switch (h) {
       
 19373       case 38:
       
 19374         return c.replace(F, '$1' + d.trim());
       
 19375 
       
 19376       case 58:
       
 19377         return d.trim() + c.replace(F, '$1' + d.trim());
       
 19378 
       
 19379       default:
       
 19380         if (0 < 1 * e && 0 < c.indexOf('\f')) return c.replace(F, (58 === d.charCodeAt(0) ? '' : '$1') + d.trim());
       
 19381     }
       
 19382 
       
 19383     return d + c;
       
 19384   }
       
 19385 
       
 19386   function P(d, c, e, h) {
       
 19387     var a = d + ';',
       
 19388         m = 2 * c + 3 * e + 4 * h;
       
 19389 
       
 19390     if (944 === m) {
       
 19391       d = a.indexOf(':', 9) + 1;
       
 19392       var b = a.substring(d, a.length - 1).trim();
       
 19393       b = a.substring(0, d).trim() + b + ';';
       
 19394       return 1 === w || 2 === w && L(b, 1) ? '-webkit-' + b + b : b;
       
 19395     }
       
 19396 
       
 19397     if (0 === w || 2 === w && !L(a, 1)) return a;
       
 19398 
       
 19399     switch (m) {
       
 19400       case 1015:
       
 19401         return 97 === a.charCodeAt(10) ? '-webkit-' + a + a : a;
       
 19402 
       
 19403       case 951:
       
 19404         return 116 === a.charCodeAt(3) ? '-webkit-' + a + a : a;
       
 19405 
       
 19406       case 963:
       
 19407         return 110 === a.charCodeAt(5) ? '-webkit-' + a + a : a;
       
 19408 
       
 19409       case 1009:
       
 19410         if (100 !== a.charCodeAt(4)) break;
       
 19411 
       
 19412       case 969:
       
 19413       case 942:
       
 19414         return '-webkit-' + a + a;
       
 19415 
       
 19416       case 978:
       
 19417         return '-webkit-' + a + '-moz-' + a + a;
       
 19418 
       
 19419       case 1019:
       
 19420       case 983:
       
 19421         return '-webkit-' + a + '-moz-' + a + '-ms-' + a + a;
       
 19422 
       
 19423       case 883:
       
 19424         if (45 === a.charCodeAt(8)) return '-webkit-' + a + a;
       
 19425         if (0 < a.indexOf('image-set(', 11)) return a.replace(ja, '$1-webkit-$2') + a;
       
 19426         break;
       
 19427 
       
 19428       case 932:
       
 19429         if (45 === a.charCodeAt(4)) switch (a.charCodeAt(5)) {
       
 19430           case 103:
       
 19431             return '-webkit-box-' + a.replace('-grow', '') + '-webkit-' + a + '-ms-' + a.replace('grow', 'positive') + a;
       
 19432 
       
 19433           case 115:
       
 19434             return '-webkit-' + a + '-ms-' + a.replace('shrink', 'negative') + a;
       
 19435 
       
 19436           case 98:
       
 19437             return '-webkit-' + a + '-ms-' + a.replace('basis', 'preferred-size') + a;
       
 19438         }
       
 19439         return '-webkit-' + a + '-ms-' + a + a;
       
 19440 
       
 19441       case 964:
       
 19442         return '-webkit-' + a + '-ms-flex-' + a + a;
       
 19443 
       
 19444       case 1023:
       
 19445         if (99 !== a.charCodeAt(8)) break;
       
 19446         b = a.substring(a.indexOf(':', 15)).replace('flex-', '').replace('space-between', 'justify');
       
 19447         return '-webkit-box-pack' + b + '-webkit-' + a + '-ms-flex-pack' + b + a;
       
 19448 
       
 19449       case 1005:
       
 19450         return ka.test(a) ? a.replace(aa, ':-webkit-') + a.replace(aa, ':-moz-') + a : a;
       
 19451 
       
 19452       case 1e3:
       
 19453         b = a.substring(13).trim();
       
 19454         c = b.indexOf('-') + 1;
       
 19455 
       
 19456         switch (b.charCodeAt(0) + b.charCodeAt(c)) {
       
 19457           case 226:
       
 19458             b = a.replace(G, 'tb');
       
 19459             break;
       
 19460 
       
 19461           case 232:
       
 19462             b = a.replace(G, 'tb-rl');
       
 19463             break;
       
 19464 
       
 19465           case 220:
       
 19466             b = a.replace(G, 'lr');
       
 19467             break;
       
 19468 
       
 19469           default:
       
 19470             return a;
       
 19471         }
       
 19472 
       
 19473         return '-webkit-' + a + '-ms-' + b + a;
       
 19474 
       
 19475       case 1017:
       
 19476         if (-1 === a.indexOf('sticky', 9)) break;
       
 19477 
       
 19478       case 975:
       
 19479         c = (a = d).length - 10;
       
 19480         b = (33 === a.charCodeAt(c) ? a.substring(0, c) : a).substring(d.indexOf(':', 7) + 1).trim();
       
 19481 
       
 19482         switch (m = b.charCodeAt(0) + (b.charCodeAt(7) | 0)) {
       
 19483           case 203:
       
 19484             if (111 > b.charCodeAt(8)) break;
       
 19485 
       
 19486           case 115:
       
 19487             a = a.replace(b, '-webkit-' + b) + ';' + a;
       
 19488             break;
       
 19489 
       
 19490           case 207:
       
 19491           case 102:
       
 19492             a = a.replace(b, '-webkit-' + (102 < m ? 'inline-' : '') + 'box') + ';' + a.replace(b, '-webkit-' + b) + ';' + a.replace(b, '-ms-' + b + 'box') + ';' + a;
       
 19493         }
       
 19494 
       
 19495         return a + ';';
       
 19496 
       
 19497       case 938:
       
 19498         if (45 === a.charCodeAt(5)) switch (a.charCodeAt(6)) {
       
 19499           case 105:
       
 19500             return b = a.replace('-items', ''), '-webkit-' + a + '-webkit-box-' + b + '-ms-flex-' + b + a;
       
 19501 
       
 19502           case 115:
       
 19503             return '-webkit-' + a + '-ms-flex-item-' + a.replace(ba, '') + a;
       
 19504 
       
 19505           default:
       
 19506             return '-webkit-' + a + '-ms-flex-line-pack' + a.replace('align-content', '').replace(ba, '') + a;
       
 19507         }
       
 19508         break;
       
 19509 
       
 19510       case 973:
       
 19511       case 989:
       
 19512         if (45 !== a.charCodeAt(3) || 122 === a.charCodeAt(4)) break;
       
 19513 
       
 19514       case 931:
       
 19515       case 953:
       
 19516         if (!0 === la.test(d)) return 115 === (b = d.substring(d.indexOf(':') + 1)).charCodeAt(0) ? P(d.replace('stretch', 'fill-available'), c, e, h).replace(':fill-available', ':stretch') : a.replace(b, '-webkit-' + b) + a.replace(b, '-moz-' + b.replace('fill-', '')) + a;
       
 19517         break;
       
 19518 
       
 19519       case 962:
       
 19520         if (a = '-webkit-' + a + (102 === a.charCodeAt(5) ? '-ms-' + a : '') + a, 211 === e + h && 105 === a.charCodeAt(13) && 0 < a.indexOf('transform', 10)) return a.substring(0, a.indexOf(';', 27) + 1).replace(ma, '$1-webkit-$2') + a;
       
 19521     }
       
 19522 
       
 19523     return a;
       
 19524   }
       
 19525 
       
 19526   function L(d, c) {
       
 19527     var e = d.indexOf(1 === c ? ':' : '{'),
       
 19528         h = d.substring(0, 3 !== c ? e : 10);
       
 19529     e = d.substring(e + 1, d.length - 1);
       
 19530     return R(2 !== c ? h : h.replace(na, '$1'), e, c);
       
 19531   }
       
 19532 
       
 19533   function ea(d, c) {
       
 19534     var e = P(c, c.charCodeAt(0), c.charCodeAt(1), c.charCodeAt(2));
       
 19535     return e !== c + ';' ? e.replace(oa, ' or ($1)').substring(4) : '(' + c + ')';
       
 19536   }
       
 19537 
       
 19538   function H(d, c, e, h, a, m, b, v, n, q) {
       
 19539     for (var g = 0, x = c, w; g < A; ++g) {
       
 19540       switch (w = S[g].call(B, d, x, e, h, a, m, b, v, n, q)) {
       
 19541         case void 0:
       
 19542         case !1:
       
 19543         case !0:
       
 19544         case null:
       
 19545           break;
       
 19546 
       
 19547         default:
       
 19548           x = w;
 20094       }
 19549       }
 20095 
 19550     }
 20096       return onDateRangePickerInputFocus;
 19551 
 20097     }()
 19552     if (x !== c) return x;
 20098   }, {
 19553   }
 20099     key: 'onDayPickerFocus',
 19554 
 20100     value: function () {
 19555   function T(d) {
 20101       function onDayPickerFocus() {
 19556     switch (d) {
 20102         var _props3 = this.props,
 19557       case void 0:
 20103             focusedInput = _props3.focusedInput,
 19558       case null:
 20104             onFocusChange = _props3.onFocusChange;
 19559         A = S.length = 0;
 20105 
 19560         break;
 20106         if (!focusedInput) onFocusChange(_constants.START_DATE);
 19561 
 20107 
 19562       default:
 20108         this.setState({
 19563         if ('function' === typeof d) S[A++] = d;else if ('object' === typeof d) for (var c = 0, e = d.length; c < e; ++c) {
 20109           isDateRangePickerInputFocused: false,
 19564           T(d[c]);
 20110           isDayPickerFocused: true,
 19565         } else Y = !!d | 0;
 20111           showKeyboardShortcuts: false
 19566     }
 20112         });
 19567 
       
 19568     return T;
       
 19569   }
       
 19570 
       
 19571   function U(d) {
       
 19572     d = d.prefix;
       
 19573     void 0 !== d && (R = null, d ? 'function' !== typeof d ? w = 1 : (w = 2, R = d) : w = 0);
       
 19574     return U;
       
 19575   }
       
 19576 
       
 19577   function B(d, c) {
       
 19578     var e = d;
       
 19579     33 > e.charCodeAt(0) && (e = e.trim());
       
 19580     V = e;
       
 19581     e = [V];
       
 19582 
       
 19583     if (0 < A) {
       
 19584       var h = H(-1, c, e, e, D, z, 0, 0, 0, 0);
       
 19585       void 0 !== h && 'string' === typeof h && (c = h);
       
 19586     }
       
 19587 
       
 19588     var a = M(O, e, c, 0, 0);
       
 19589     0 < A && (h = H(-2, a, e, e, D, z, a.length, 0, 0, 0), void 0 !== h && (a = h));
       
 19590     V = '';
       
 19591     E = 0;
       
 19592     z = D = 1;
       
 19593     return a;
       
 19594   }
       
 19595 
       
 19596   var ca = /^\0+/g,
       
 19597       N = /[\0\r\f]/g,
       
 19598       aa = /: */g,
       
 19599       ka = /zoo|gra/,
       
 19600       ma = /([,: ])(transform)/g,
       
 19601       ia = /,\r+?/g,
       
 19602       F = /([\t\r\n ])*\f?&/g,
       
 19603       fa = /@(k\w+)\s*(\S*)\s*/,
       
 19604       Q = /::(place)/g,
       
 19605       ha = /:(read-only)/g,
       
 19606       G = /[svh]\w+-[tblr]{2}/,
       
 19607       da = /\(\s*(.*)\s*\)/g,
       
 19608       oa = /([\s\S]*?);/g,
       
 19609       ba = /-self|flex-/g,
       
 19610       na = /[^]*?(:[rp][el]a[\w-]+)[^]*/,
       
 19611       la = /stretch|:\s*\w+\-(?:conte|avail)/,
       
 19612       ja = /([^-])(image-set\()/,
       
 19613       z = 1,
       
 19614       D = 1,
       
 19615       E = 0,
       
 19616       w = 1,
       
 19617       O = [],
       
 19618       S = [],
       
 19619       A = 0,
       
 19620       R = null,
       
 19621       Y = 0,
       
 19622       V = '';
       
 19623   B.use = T;
       
 19624   B.set = U;
       
 19625   void 0 !== W && U(W);
       
 19626   return B;
       
 19627 }
       
 19628 
       
 19629 /* harmony default export */ var stylis_browser_esm = (stylis_min);
       
 19630 
       
 19631 // CONCATENATED MODULE: ./node_modules/@emotion/weak-memoize/dist/weak-memoize.browser.esm.js
       
 19632 var weakMemoize = function weakMemoize(func) {
       
 19633   // $FlowFixMe flow doesn't include all non-primitive types as allowed for weakmaps
       
 19634   var cache = new WeakMap();
       
 19635   return function (arg) {
       
 19636     if (cache.has(arg)) {
       
 19637       // $FlowFixMe
       
 19638       return cache.get(arg);
       
 19639     }
       
 19640 
       
 19641     var ret = func(arg);
       
 19642     cache.set(arg, ret);
       
 19643     return ret;
       
 19644   };
       
 19645 };
       
 19646 
       
 19647 /* harmony default export */ var weak_memoize_browser_esm = (weakMemoize);
       
 19648 
       
 19649 // CONCATENATED MODULE: ./node_modules/@emotion/cache/dist/cache.browser.esm.js
       
 19650 
       
 19651 
       
 19652 
       
 19653 
       
 19654 // https://github.com/thysultan/stylis.js/tree/master/plugins/rule-sheet
       
 19655 // inlined to avoid umd wrapper and peerDep warnings/installing stylis
       
 19656 // since we use stylis after closure compiler
       
 19657 var delimiter = '/*|*/';
       
 19658 var needle = delimiter + '}';
       
 19659 
       
 19660 function toSheet(block) {
       
 19661   if (block) {
       
 19662     Sheet.current.insert(block + '}');
       
 19663   }
       
 19664 }
       
 19665 
       
 19666 var Sheet = {
       
 19667   current: null
       
 19668 };
       
 19669 var ruleSheet = function ruleSheet(context, content, selectors, parents, line, column, length, ns, depth, at) {
       
 19670   switch (context) {
       
 19671     // property
       
 19672     case 1:
       
 19673       {
       
 19674         switch (content.charCodeAt(0)) {
       
 19675           case 64:
       
 19676             {
       
 19677               // @import
       
 19678               Sheet.current.insert(content + ';');
       
 19679               return '';
       
 19680             }
       
 19681           // charcode for l
       
 19682 
       
 19683           case 108:
       
 19684             {
       
 19685               // charcode for b
       
 19686               // this ignores label
       
 19687               if (content.charCodeAt(2) === 98) {
       
 19688                 return '';
       
 19689               }
       
 19690             }
       
 19691         }
       
 19692 
       
 19693         break;
 20113       }
 19694       }
 20114 
 19695     // selector
 20115       return onDayPickerFocus;
 19696 
 20116     }()
 19697     case 2:
 20117   }, {
 19698       {
 20118     key: 'onDayPickerBlur',
 19699         if (ns === 0) return content + delimiter;
 20119     value: function () {
 19700         break;
 20120       function onDayPickerBlur() {
       
 20121         this.setState({
       
 20122           isDateRangePickerInputFocused: true,
       
 20123           isDayPickerFocused: false,
       
 20124           showKeyboardShortcuts: false
       
 20125         });
       
 20126       }
 19701       }
 20127 
 19702     // at-rule
 20128       return onDayPickerBlur;
 19703 
 20129     }()
 19704     case 3:
 20130   }, {
 19705       {
 20131     key: 'setDayPickerContainerRef',
 19706         switch (ns) {
 20132     value: function () {
 19707           // @font-face, @page
 20133       function setDayPickerContainerRef(ref) {
 19708           case 102:
 20134         this.dayPickerContainer = ref;
 19709           case 112:
       
 19710             {
       
 19711               Sheet.current.insert(selectors[0] + content);
       
 19712               return '';
       
 19713             }
       
 19714 
       
 19715           default:
       
 19716             {
       
 19717               return content + (at === 0 ? delimiter : '');
       
 19718             }
       
 19719         }
 20135       }
 19720       }
 20136 
 19721 
 20137       return setDayPickerContainerRef;
 19722     case -2:
 20138     }()
 19723       {
 20139   }, {
 19724         content.split(needle).forEach(toSheet);
 20140     key: 'setContainerRef',
       
 20141     value: function () {
       
 20142       function setContainerRef(ref) {
       
 20143         this.container = ref;
       
 20144       }
 19725       }
 20145 
 19726   }
 20146       return setContainerRef;
 19727 };
 20147     }()
 19728 
 20148   }, {
 19729 var cache_browser_esm_createCache = function createCache(options) {
 20149     key: 'isOpened',
 19730   if (options === undefined) options = {};
 20150     value: function () {
 19731   var key = options.key || 'css';
 20151       function isOpened() {
 19732   var stylisOptions;
 20152         var focusedInput = this.props.focusedInput;
 19733 
 20153 
 19734   if (options.prefix !== undefined) {
 20154         return focusedInput === _constants.START_DATE || focusedInput === _constants.END_DATE;
 19735     stylisOptions = {
       
 19736       prefix: options.prefix
       
 19737     };
       
 19738   }
       
 19739 
       
 19740   var stylis = new stylis_browser_esm(stylisOptions);
       
 19741 
       
 19742   if (false) {}
       
 19743 
       
 19744   var inserted = {}; // $FlowFixMe
       
 19745 
       
 19746   var container;
       
 19747 
       
 19748   {
       
 19749     container = options.container || document.head;
       
 19750     var nodes = document.querySelectorAll("style[data-emotion-" + key + "]");
       
 19751     Array.prototype.forEach.call(nodes, function (node) {
       
 19752       var attrib = node.getAttribute("data-emotion-" + key); // $FlowFixMe
       
 19753 
       
 19754       attrib.split(' ').forEach(function (id) {
       
 19755         inserted[id] = true;
       
 19756       });
       
 19757 
       
 19758       if (node.parentNode !== container) {
       
 19759         container.appendChild(node);
 20155       }
 19760       }
 20156 
 19761     });
 20157       return isOpened;
 19762   }
 20158     }()
 19763 
 20159   }, {
 19764   var _insert;
 20160     key: 'disableScroll',
 19765 
 20161     value: function () {
 19766   {
 20162       function disableScroll() {
 19767     stylis.use(options.stylisPlugins)(ruleSheet);
 20163         var _props4 = this.props,
 19768 
 20164             appendToBody = _props4.appendToBody,
 19769     _insert = function insert(selector, serialized, sheet, shouldCache) {
 20165             propDisableScroll = _props4.disableScroll;
 19770       var name = serialized.name;
 20166 
 19771       Sheet.current = sheet;
 20167         if (!appendToBody && !propDisableScroll) return;
 19772 
 20168         if (!this.isOpened()) return;
 19773       if (false) { var map; }
 20169 
 19774 
 20170         // Disable scroll for every ancestor of this DateRangePicker up to the
 19775       stylis(selector, serialized.styles);
 20171         // document level. This ensures the input and the picker never move. Other
 19776 
 20172         // sibling elements or the picker itself can scroll.
 19777       if (shouldCache) {
 20173         this.enableScroll = (0, _disableScroll3['default'])(this.container);
 19778         cache.inserted[name] = true;
 20174       }
 19779       }
 20175 
 19780     };
 20176       return disableScroll;
 19781   }
 20177     }()
 19782 
 20178   }, {
 19783   if (false) { var commentEnd, commentStart; }
 20179     key: 'responsivizePickerPosition',
 19784 
 20180     value: function () {
 19785   var cache = {
 20181       function responsivizePickerPosition() {
 19786     key: key,
 20182         // It's possible the portal props have been changed in response to window resizes
 19787     sheet: new StyleSheet({
 20183         // So let's ensure we reset this back to the base state each time
 19788       key: key,
 20184         this.setState({ dayPickerContainerStyles: {} });
 19789       container: container,
 20185 
 19790       nonce: options.nonce,
 20186         if (!this.isOpened()) {
 19791       speedy: options.speedy
 20187           return;
 19792     }),
 20188         }
 19793     nonce: options.nonce,
 20189 
 19794     inserted: inserted,
 20190         var _props5 = this.props,
 19795     registered: {},
 20191             openDirection = _props5.openDirection,
 19796     insert: _insert
 20192             anchorDirection = _props5.anchorDirection,
 19797   };
 20193             horizontalMargin = _props5.horizontalMargin,
 19798   return cache;
 20194             withPortal = _props5.withPortal,
 19799 };
 20195             withFullScreenPortal = _props5.withFullScreenPortal,
 19800 
 20196             appendToBody = _props5.appendToBody;
 19801 /* harmony default export */ var cache_browser_esm = (cache_browser_esm_createCache);
 20197         var dayPickerContainerStyles = this.state.dayPickerContainerStyles;
 19802 
 20198 
 19803 // CONCATENATED MODULE: ./node_modules/@emotion/utils/dist/utils.browser.esm.js
 20199 
 19804 var isBrowser = "object" !== 'undefined';
 20200         var isAnchoredLeft = anchorDirection === _constants.ANCHOR_LEFT;
 19805 function getRegisteredStyles(registered, registeredStyles, classNames) {
 20201         if (!withPortal && !withFullScreenPortal) {
 19806   var rawClassName = '';
 20202           var containerRect = this.dayPickerContainer.getBoundingClientRect();
 19807   classNames.split(' ').forEach(function (className) {
 20203           var currentOffset = dayPickerContainerStyles[anchorDirection] || 0;
 19808     if (registered[className] !== undefined) {
 20204           var containerEdge = isAnchoredLeft ? containerRect[_constants.ANCHOR_RIGHT] : containerRect[_constants.ANCHOR_LEFT];
 19809       registeredStyles.push(registered[className]);
 20205 
 19810     } else {
 20206           this.setState({
 19811       rawClassName += className + " ";
 20207             dayPickerContainerStyles: (0, _object2['default'])({}, (0, _getResponsiveContainerStyles2['default'])(anchorDirection, currentOffset, containerEdge, horizontalMargin), appendToBody && (0, _getDetachedContainerStyles2['default'])(openDirection, anchorDirection, this.container))
 19812     }
       
 19813   });
       
 19814   return rawClassName;
       
 19815 }
       
 19816 var insertStyles = function insertStyles(cache, serialized, isStringTag) {
       
 19817   var className = cache.key + "-" + serialized.name;
       
 19818 
       
 19819   if ( // we only need to add the styles to the registered cache if the
       
 19820   // class name could be used further down
       
 19821   // the tree but if it's a string tag, we know it won't
       
 19822   // so we don't have to add it to registered cache.
       
 19823   // this improves memory usage since we can avoid storing the whole style string
       
 19824   (isStringTag === false || // we need to always store it if we're in compat mode and
       
 19825   // in node since emotion-server relies on whether a style is in
       
 19826   // the registered cache to know whether a style is global or not
       
 19827   // also, note that this check will be dead code eliminated in the browser
       
 19828   isBrowser === false && cache.compat !== undefined) && cache.registered[className] === undefined) {
       
 19829     cache.registered[className] = serialized.styles;
       
 19830   }
       
 19831 
       
 19832   if (cache.inserted[serialized.name] === undefined) {
       
 19833     var current = serialized;
       
 19834 
       
 19835     do {
       
 19836       var maybeStyles = cache.insert("." + className, current, cache.sheet, true);
       
 19837 
       
 19838       current = current.next;
       
 19839     } while (current !== undefined);
       
 19840   }
       
 19841 };
       
 19842 
       
 19843 
       
 19844 
       
 19845 // CONCATENATED MODULE: ./node_modules/@emotion/hash/dist/hash.browser.esm.js
       
 19846 /* eslint-disable */
       
 19847 // Inspired by https://github.com/garycourt/murmurhash-js
       
 19848 // Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86
       
 19849 function murmur2(str) {
       
 19850   // 'm' and 'r' are mixing constants generated offline.
       
 19851   // They're not really 'magic', they just happen to work well.
       
 19852   // const m = 0x5bd1e995;
       
 19853   // const r = 24;
       
 19854   // Initialize the hash
       
 19855   var h = 0; // Mix 4 bytes at a time into the hash
       
 19856 
       
 19857   var k,
       
 19858       i = 0,
       
 19859       len = str.length;
       
 19860 
       
 19861   for (; len >= 4; ++i, len -= 4) {
       
 19862     k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;
       
 19863     k =
       
 19864     /* Math.imul(k, m): */
       
 19865     (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);
       
 19866     k ^=
       
 19867     /* k >>> r: */
       
 19868     k >>> 24;
       
 19869     h =
       
 19870     /* Math.imul(k, m): */
       
 19871     (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^
       
 19872     /* Math.imul(h, m): */
       
 19873     (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
       
 19874   } // Handle the last few bytes of the input array
       
 19875 
       
 19876 
       
 19877   switch (len) {
       
 19878     case 3:
       
 19879       h ^= (str.charCodeAt(i + 2) & 0xff) << 16;
       
 19880 
       
 19881     case 2:
       
 19882       h ^= (str.charCodeAt(i + 1) & 0xff) << 8;
       
 19883 
       
 19884     case 1:
       
 19885       h ^= str.charCodeAt(i) & 0xff;
       
 19886       h =
       
 19887       /* Math.imul(h, m): */
       
 19888       (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
       
 19889   } // Do a few final mixes of the hash to ensure the last few
       
 19890   // bytes are well-incorporated.
       
 19891 
       
 19892 
       
 19893   h ^= h >>> 13;
       
 19894   h =
       
 19895   /* Math.imul(h, m): */
       
 19896   (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);
       
 19897   return ((h ^ h >>> 15) >>> 0).toString(36);
       
 19898 }
       
 19899 
       
 19900 /* harmony default export */ var hash_browser_esm = (murmur2);
       
 19901 
       
 19902 // CONCATENATED MODULE: ./node_modules/@emotion/unitless/dist/unitless.browser.esm.js
       
 19903 var unitlessKeys = {
       
 19904   animationIterationCount: 1,
       
 19905   borderImageOutset: 1,
       
 19906   borderImageSlice: 1,
       
 19907   borderImageWidth: 1,
       
 19908   boxFlex: 1,
       
 19909   boxFlexGroup: 1,
       
 19910   boxOrdinalGroup: 1,
       
 19911   columnCount: 1,
       
 19912   columns: 1,
       
 19913   flex: 1,
       
 19914   flexGrow: 1,
       
 19915   flexPositive: 1,
       
 19916   flexShrink: 1,
       
 19917   flexNegative: 1,
       
 19918   flexOrder: 1,
       
 19919   gridRow: 1,
       
 19920   gridRowEnd: 1,
       
 19921   gridRowSpan: 1,
       
 19922   gridRowStart: 1,
       
 19923   gridColumn: 1,
       
 19924   gridColumnEnd: 1,
       
 19925   gridColumnSpan: 1,
       
 19926   gridColumnStart: 1,
       
 19927   msGridRow: 1,
       
 19928   msGridRowSpan: 1,
       
 19929   msGridColumn: 1,
       
 19930   msGridColumnSpan: 1,
       
 19931   fontWeight: 1,
       
 19932   lineHeight: 1,
       
 19933   opacity: 1,
       
 19934   order: 1,
       
 19935   orphans: 1,
       
 19936   tabSize: 1,
       
 19937   widows: 1,
       
 19938   zIndex: 1,
       
 19939   zoom: 1,
       
 19940   WebkitLineClamp: 1,
       
 19941   // SVG-related properties
       
 19942   fillOpacity: 1,
       
 19943   floodOpacity: 1,
       
 19944   stopOpacity: 1,
       
 19945   strokeDasharray: 1,
       
 19946   strokeDashoffset: 1,
       
 19947   strokeMiterlimit: 1,
       
 19948   strokeOpacity: 1,
       
 19949   strokeWidth: 1
       
 19950 };
       
 19951 
       
 19952 /* harmony default export */ var unitless_browser_esm = (unitlessKeys);
       
 19953 
       
 19954 // CONCATENATED MODULE: ./node_modules/@emotion/serialize/dist/serialize.browser.esm.js
       
 19955 
       
 19956 
       
 19957 
       
 19958 
       
 19959 var ILLEGAL_ESCAPE_SEQUENCE_ERROR = "You have illegal escape sequence in your template literal, most likely inside content's property value.\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \"content: '\\00d7';\" should become \"content: '\\\\00d7';\".\nYou can read more about this here:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences";
       
 19960 var UNDEFINED_AS_OBJECT_KEY_ERROR = "You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).";
       
 19961 var hyphenateRegex = /[A-Z]|^ms/g;
       
 19962 var animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;
       
 19963 
       
 19964 var isCustomProperty = function isCustomProperty(property) {
       
 19965   return property.charCodeAt(1) === 45;
       
 19966 };
       
 19967 
       
 19968 var isProcessableValue = function isProcessableValue(value) {
       
 19969   return value != null && typeof value !== 'boolean';
       
 19970 };
       
 19971 
       
 19972 var processStyleName = memoize_browser_esm(function (styleName) {
       
 19973   return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();
       
 19974 });
       
 19975 
       
 19976 var serialize_browser_esm_processStyleValue = function processStyleValue(key, value) {
       
 19977   switch (key) {
       
 19978     case 'animation':
       
 19979     case 'animationName':
       
 19980       {
       
 19981         if (typeof value === 'string') {
       
 19982           return value.replace(animationRegex, function (match, p1, p2) {
       
 19983             cursor = {
       
 19984               name: p1,
       
 19985               styles: p2,
       
 19986               next: cursor
       
 19987             };
       
 19988             return p1;
 20208           });
 19989           });
 20209         }
 19990         }
 20210       }
 19991       }
 20211 
 19992   }
 20212       return responsivizePickerPosition;
 19993 
 20213     }()
 19994   if (unitless_browser_esm[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {
 20214   }, {
 19995     return value + 'px';
 20215     key: 'showKeyboardShortcutsPanel',
 19996   }
 20216     value: function () {
 19997 
 20217       function showKeyboardShortcutsPanel() {
 19998   return value;
 20218         this.setState({
 19999 };
 20219           isDateRangePickerInputFocused: false,
 20000 
 20220           isDayPickerFocused: true,
 20001 if (false) { var hyphenatedCache, hyphenPattern, msPattern, oldProcessStyleValue, contentValues, contentValuePattern; }
 20221           showKeyboardShortcuts: true
 20002 
 20222         });
 20003 var shouldWarnAboutInterpolatingClassNameFromCss = true;
       
 20004 
       
 20005 function handleInterpolation(mergedProps, registered, interpolation, couldBeSelectorInterpolation) {
       
 20006   if (interpolation == null) {
       
 20007     return '';
       
 20008   }
       
 20009 
       
 20010   if (interpolation.__emotion_styles !== undefined) {
       
 20011     if (false) {}
       
 20012 
       
 20013     return interpolation;
       
 20014   }
       
 20015 
       
 20016   switch (typeof interpolation) {
       
 20017     case 'boolean':
       
 20018       {
       
 20019         return '';
 20223       }
 20020       }
 20224 
 20021 
 20225       return showKeyboardShortcutsPanel;
 20022     case 'object':
 20226     }()
 20023       {
 20227   }, {
 20024         if (interpolation.anim === 1) {
 20228     key: 'maybeRenderDayPickerWithPortal',
 20025           cursor = {
 20229     value: function () {
 20026             name: interpolation.name,
 20230       function maybeRenderDayPickerWithPortal() {
 20027             styles: interpolation.styles,
 20231         var _props6 = this.props,
 20028             next: cursor
 20232             withPortal = _props6.withPortal,
 20029           };
 20233             withFullScreenPortal = _props6.withFullScreenPortal,
 20030           return interpolation.name;
 20234             appendToBody = _props6.appendToBody;
       
 20235 
       
 20236 
       
 20237         if (!this.isOpened()) {
       
 20238           return null;
       
 20239         }
 20031         }
 20240 
 20032 
 20241         if (withPortal || withFullScreenPortal || appendToBody) {
 20033         if (interpolation.styles !== undefined) {
 20242           return _react2['default'].createElement(
 20034           var next = interpolation.next;
 20243             _reactPortal.Portal,
 20035 
 20244             null,
 20036           if (next !== undefined) {
 20245             this.renderDayPicker()
 20037             // not the most efficient thing ever but this is a pretty rare case
 20246           );
 20038             // and there will be very few iterations of this generally
       
 20039             while (next !== undefined) {
       
 20040               cursor = {
       
 20041                 name: next.name,
       
 20042                 styles: next.styles,
       
 20043                 next: cursor
       
 20044               };
       
 20045               next = next.next;
       
 20046             }
       
 20047           }
       
 20048 
       
 20049           var styles = interpolation.styles + ";";
       
 20050 
       
 20051           if (false) {}
       
 20052 
       
 20053           return styles;
 20247         }
 20054         }
 20248 
 20055 
 20249         return this.renderDayPicker();
 20056         return createStringFromObject(mergedProps, registered, interpolation);
 20250       }
 20057       }
 20251 
 20058 
 20252       return maybeRenderDayPickerWithPortal;
 20059     case 'function':
 20253     }()
 20060       {
 20254   }, {
 20061         if (mergedProps !== undefined) {
 20255     key: 'renderDayPicker',
 20062           var previousCursor = cursor;
 20256     value: function () {
 20063           var result = interpolation(mergedProps);
 20257       function renderDayPicker() {
 20064           cursor = previousCursor;
 20258         var _props7 = this.props,
 20065           return handleInterpolation(mergedProps, registered, result, couldBeSelectorInterpolation);
 20259             anchorDirection = _props7.anchorDirection,
 20066         } else if (false) {}
 20260             openDirection = _props7.openDirection,
 20067 
 20261             isDayBlocked = _props7.isDayBlocked,
 20068         break;
 20262             isDayHighlighted = _props7.isDayHighlighted,
       
 20263             isOutsideRange = _props7.isOutsideRange,
       
 20264             numberOfMonths = _props7.numberOfMonths,
       
 20265             orientation = _props7.orientation,
       
 20266             monthFormat = _props7.monthFormat,
       
 20267             renderMonthText = _props7.renderMonthText,
       
 20268             navPrev = _props7.navPrev,
       
 20269             navNext = _props7.navNext,
       
 20270             onPrevMonthClick = _props7.onPrevMonthClick,
       
 20271             onNextMonthClick = _props7.onNextMonthClick,
       
 20272             onDatesChange = _props7.onDatesChange,
       
 20273             onFocusChange = _props7.onFocusChange,
       
 20274             withPortal = _props7.withPortal,
       
 20275             withFullScreenPortal = _props7.withFullScreenPortal,
       
 20276             daySize = _props7.daySize,
       
 20277             enableOutsideDays = _props7.enableOutsideDays,
       
 20278             focusedInput = _props7.focusedInput,
       
 20279             startDate = _props7.startDate,
       
 20280             endDate = _props7.endDate,
       
 20281             minimumNights = _props7.minimumNights,
       
 20282             keepOpenOnDateSelect = _props7.keepOpenOnDateSelect,
       
 20283             renderCalendarDay = _props7.renderCalendarDay,
       
 20284             renderDayContents = _props7.renderDayContents,
       
 20285             renderCalendarInfo = _props7.renderCalendarInfo,
       
 20286             renderMonthElement = _props7.renderMonthElement,
       
 20287             calendarInfoPosition = _props7.calendarInfoPosition,
       
 20288             firstDayOfWeek = _props7.firstDayOfWeek,
       
 20289             initialVisibleMonth = _props7.initialVisibleMonth,
       
 20290             hideKeyboardShortcutsPanel = _props7.hideKeyboardShortcutsPanel,
       
 20291             customCloseIcon = _props7.customCloseIcon,
       
 20292             onClose = _props7.onClose,
       
 20293             phrases = _props7.phrases,
       
 20294             dayAriaLabelFormat = _props7.dayAriaLabelFormat,
       
 20295             isRTL = _props7.isRTL,
       
 20296             weekDayFormat = _props7.weekDayFormat,
       
 20297             styles = _props7.styles,
       
 20298             verticalHeight = _props7.verticalHeight,
       
 20299             transitionDuration = _props7.transitionDuration,
       
 20300             verticalSpacing = _props7.verticalSpacing,
       
 20301             small = _props7.small,
       
 20302             disabled = _props7.disabled,
       
 20303             reactDates = _props7.theme.reactDates;
       
 20304         var _state = this.state,
       
 20305             dayPickerContainerStyles = _state.dayPickerContainerStyles,
       
 20306             isDayPickerFocused = _state.isDayPickerFocused,
       
 20307             showKeyboardShortcuts = _state.showKeyboardShortcuts;
       
 20308 
       
 20309 
       
 20310         var onOutsideClick = !withFullScreenPortal && withPortal ? this.onOutsideClick : undefined;
       
 20311         var initialVisibleMonthThunk = initialVisibleMonth || function () {
       
 20312           return startDate || endDate || (0, _moment2['default'])();
       
 20313         };
       
 20314 
       
 20315         var closeIcon = customCloseIcon || _react2['default'].createElement(_CloseButton2['default'], (0, _reactWithStyles.css)(styles.DateRangePicker_closeButton_svg));
       
 20316 
       
 20317         var inputHeight = (0, _getInputHeight2['default'])(reactDates, small);
       
 20318 
       
 20319         var withAnyPortal = withPortal || withFullScreenPortal;
       
 20320 
       
 20321         return _react2['default'].createElement(
       
 20322           'div',
       
 20323           _extends({ // eslint-disable-line jsx-a11y/no-static-element-interactions
       
 20324             ref: this.setDayPickerContainerRef
       
 20325           }, (0, _reactWithStyles.css)(styles.DateRangePicker_picker, anchorDirection === _constants.ANCHOR_LEFT && styles.DateRangePicker_picker__directionLeft, anchorDirection === _constants.ANCHOR_RIGHT && styles.DateRangePicker_picker__directionRight, orientation === _constants.HORIZONTAL_ORIENTATION && styles.DateRangePicker_picker__horizontal, orientation === _constants.VERTICAL_ORIENTATION && styles.DateRangePicker_picker__vertical, !withAnyPortal && openDirection === _constants.OPEN_DOWN && {
       
 20326             top: inputHeight + verticalSpacing
       
 20327           }, !withAnyPortal && openDirection === _constants.OPEN_UP && {
       
 20328             bottom: inputHeight + verticalSpacing
       
 20329           }, withAnyPortal && styles.DateRangePicker_picker__portal, withFullScreenPortal && styles.DateRangePicker_picker__fullScreenPortal, isRTL && styles.DateRangePicker_picker__rtl, dayPickerContainerStyles), {
       
 20330             onClick: onOutsideClick
       
 20331           }),
       
 20332           _react2['default'].createElement(_DayPickerRangeController2['default'], {
       
 20333             orientation: orientation,
       
 20334             enableOutsideDays: enableOutsideDays,
       
 20335             numberOfMonths: numberOfMonths,
       
 20336             onPrevMonthClick: onPrevMonthClick,
       
 20337             onNextMonthClick: onNextMonthClick,
       
 20338             onDatesChange: onDatesChange,
       
 20339             onFocusChange: onFocusChange,
       
 20340             onClose: onClose,
       
 20341             focusedInput: focusedInput,
       
 20342             startDate: startDate,
       
 20343             endDate: endDate,
       
 20344             monthFormat: monthFormat,
       
 20345             renderMonthText: renderMonthText,
       
 20346             withPortal: withAnyPortal,
       
 20347             daySize: daySize,
       
 20348             initialVisibleMonth: initialVisibleMonthThunk,
       
 20349             hideKeyboardShortcutsPanel: hideKeyboardShortcutsPanel,
       
 20350             navPrev: navPrev,
       
 20351             navNext: navNext,
       
 20352             minimumNights: minimumNights,
       
 20353             isOutsideRange: isOutsideRange,
       
 20354             isDayHighlighted: isDayHighlighted,
       
 20355             isDayBlocked: isDayBlocked,
       
 20356             keepOpenOnDateSelect: keepOpenOnDateSelect,
       
 20357             renderCalendarDay: renderCalendarDay,
       
 20358             renderDayContents: renderDayContents,
       
 20359             renderCalendarInfo: renderCalendarInfo,
       
 20360             renderMonthElement: renderMonthElement,
       
 20361             calendarInfoPosition: calendarInfoPosition,
       
 20362             isFocused: isDayPickerFocused,
       
 20363             showKeyboardShortcuts: showKeyboardShortcuts,
       
 20364             onBlur: this.onDayPickerBlur,
       
 20365             phrases: phrases,
       
 20366             dayAriaLabelFormat: dayAriaLabelFormat,
       
 20367             isRTL: isRTL,
       
 20368             firstDayOfWeek: firstDayOfWeek,
       
 20369             weekDayFormat: weekDayFormat,
       
 20370             verticalHeight: verticalHeight,
       
 20371             transitionDuration: transitionDuration,
       
 20372             disabled: disabled
       
 20373           }),
       
 20374           withFullScreenPortal && _react2['default'].createElement(
       
 20375             'button',
       
 20376             _extends({}, (0, _reactWithStyles.css)(styles.DateRangePicker_closeButton), {
       
 20377               type: 'button',
       
 20378               onClick: this.onOutsideClick,
       
 20379               'aria-label': phrases.closeDatePicker
       
 20380             }),
       
 20381             closeIcon
       
 20382           )
       
 20383         );
       
 20384       }
 20069       }
 20385 
 20070 
 20386       return renderDayPicker;
 20071     case 'string':
 20387     }()
 20072       if (false) { var replaced, matched; }
 20388   }, {
 20073 
 20389     key: 'render',
 20074       break;
 20390     value: function () {
 20075   } // finalize string values (regular strings and functions interpolated into css calls)
 20391       function render() {
 20076 
 20392         var _props8 = this.props,
 20077 
 20393             startDate = _props8.startDate,
 20078   if (registered == null) {
 20394             startDateId = _props8.startDateId,
 20079     return interpolation;
 20395             startDatePlaceholderText = _props8.startDatePlaceholderText,
 20080   }
 20396             endDate = _props8.endDate,
 20081 
 20397             endDateId = _props8.endDateId,
 20082   var cached = registered[interpolation];
 20398             endDatePlaceholderText = _props8.endDatePlaceholderText,
 20083 
 20399             focusedInput = _props8.focusedInput,
 20084   if (false) {}
 20400             screenReaderInputMessage = _props8.screenReaderInputMessage,
 20085 
 20401             showClearDates = _props8.showClearDates,
 20086   return cached !== undefined && !couldBeSelectorInterpolation ? cached : interpolation;
 20402             showDefaultInputIcon = _props8.showDefaultInputIcon,
 20087 }
 20403             inputIconPosition = _props8.inputIconPosition,
 20088 
 20404             customInputIcon = _props8.customInputIcon,
 20089 function createStringFromObject(mergedProps, registered, obj) {
 20405             customArrowIcon = _props8.customArrowIcon,
 20090   var string = '';
 20406             customCloseIcon = _props8.customCloseIcon,
 20091 
 20407             disabled = _props8.disabled,
 20092   if (Array.isArray(obj)) {
 20408             required = _props8.required,
 20093     for (var i = 0; i < obj.length; i++) {
 20409             readOnly = _props8.readOnly,
 20094       string += handleInterpolation(mergedProps, registered, obj[i], false);
 20410             openDirection = _props8.openDirection,
 20095     }
 20411             phrases = _props8.phrases,
 20096   } else {
 20412             isOutsideRange = _props8.isOutsideRange,
 20097     for (var _key in obj) {
 20413             minimumNights = _props8.minimumNights,
 20098       var value = obj[_key];
 20414             withPortal = _props8.withPortal,
 20099 
 20415             withFullScreenPortal = _props8.withFullScreenPortal,
 20100       if (typeof value !== 'object') {
 20416             displayFormat = _props8.displayFormat,
 20101         if (registered != null && registered[value] !== undefined) {
 20417             reopenPickerOnClearDates = _props8.reopenPickerOnClearDates,
 20102           string += _key + "{" + registered[value] + "}";
 20418             keepOpenOnDateSelect = _props8.keepOpenOnDateSelect,
 20103         } else if (isProcessableValue(value)) {
 20419             onDatesChange = _props8.onDatesChange,
 20104           string += processStyleName(_key) + ":" + serialize_browser_esm_processStyleValue(_key, value) + ";";
 20420             onClose = _props8.onClose,
 20105         }
 20421             isRTL = _props8.isRTL,
 20106       } else {
 20422             noBorder = _props8.noBorder,
 20107         if (_key === 'NO_COMPONENT_SELECTOR' && "production" !== 'production') {
 20423             block = _props8.block,
 20108           throw new Error('Component selectors can only be used in conjunction with babel-plugin-emotion.');
 20424             verticalSpacing = _props8.verticalSpacing,
 20109         }
 20425             small = _props8.small,
 20110 
 20426             regular = _props8.regular,
 20111         if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {
 20427             styles = _props8.styles;
 20112           for (var _i = 0; _i < value.length; _i++) {
 20428         var isDateRangePickerInputFocused = this.state.isDateRangePickerInputFocused;
 20113             if (isProcessableValue(value[_i])) {
 20429 
 20114               string += processStyleName(_key) + ":" + serialize_browser_esm_processStyleValue(_key, value[_i]) + ";";
 20430 
 20115             }
 20431         var enableOutsideClick = !withPortal && !withFullScreenPortal;
 20116           }
 20432 
 20117         } else {
 20433         var hideFang = verticalSpacing < _constants.FANG_HEIGHT_PX;
 20118           var interpolated = handleInterpolation(mergedProps, registered, value, false);
 20434 
 20119 
 20435         var input = _react2['default'].createElement(_DateRangePickerInputController2['default'], {
 20120           switch (_key) {
 20436           startDate: startDate,
 20121             case 'animation':
 20437           startDateId: startDateId,
 20122             case 'animationName':
 20438           startDatePlaceholderText: startDatePlaceholderText,
 20123               {
 20439           isStartDateFocused: focusedInput === _constants.START_DATE,
 20124                 string += processStyleName(_key) + ":" + interpolated + ";";
 20440           endDate: endDate,
 20125                 break;
 20441           endDateId: endDateId,
 20126               }
 20442           endDatePlaceholderText: endDatePlaceholderText,
 20127 
 20443           isEndDateFocused: focusedInput === _constants.END_DATE,
 20128             default:
 20444           displayFormat: displayFormat,
 20129               {
 20445           showClearDates: showClearDates,
 20130                 if (false) {}
 20446           showCaret: !withPortal && !withFullScreenPortal && !hideFang,
 20131 
 20447           showDefaultInputIcon: showDefaultInputIcon,
 20132                 string += _key + "{" + interpolated + "}";
 20448           inputIconPosition: inputIconPosition,
 20133               }
 20449           customInputIcon: customInputIcon,
       
 20450           customArrowIcon: customArrowIcon,
       
 20451           customCloseIcon: customCloseIcon,
       
 20452           disabled: disabled,
       
 20453           required: required,
       
 20454           readOnly: readOnly,
       
 20455           openDirection: openDirection,
       
 20456           reopenPickerOnClearDates: reopenPickerOnClearDates,
       
 20457           keepOpenOnDateSelect: keepOpenOnDateSelect,
       
 20458           isOutsideRange: isOutsideRange,
       
 20459           minimumNights: minimumNights,
       
 20460           withFullScreenPortal: withFullScreenPortal,
       
 20461           onDatesChange: onDatesChange,
       
 20462           onFocusChange: this.onDateRangePickerInputFocus,
       
 20463           onKeyDownArrowDown: this.onDayPickerFocus,
       
 20464           onKeyDownQuestionMark: this.showKeyboardShortcutsPanel,
       
 20465           onClose: onClose,
       
 20466           phrases: phrases,
       
 20467           screenReaderMessage: screenReaderInputMessage,
       
 20468           isFocused: isDateRangePickerInputFocused,
       
 20469           isRTL: isRTL,
       
 20470           noBorder: noBorder,
       
 20471           block: block,
       
 20472           small: small,
       
 20473           regular: regular,
       
 20474           verticalSpacing: verticalSpacing
       
 20475         });
       
 20476 
       
 20477         return _react2['default'].createElement(
       
 20478           'div',
       
 20479           _extends({
       
 20480             ref: this.setContainerRef
       
 20481           }, (0, _reactWithStyles.css)(styles.DateRangePicker, block && styles.DateRangePicker__block)),
       
 20482           enableOutsideClick && _react2['default'].createElement(
       
 20483             _reactOutsideClickHandler2['default'],
       
 20484             { onOutsideClick: this.onOutsideClick },
       
 20485             input,
       
 20486             this.maybeRenderDayPickerWithPortal()
       
 20487           ),
       
 20488           !enableOutsideClick && input,
       
 20489           !enableOutsideClick && this.maybeRenderDayPickerWithPortal()
       
 20490         );
       
 20491       }
       
 20492 
       
 20493       return render;
       
 20494     }()
       
 20495   }]);
       
 20496 
       
 20497   return DateRangePicker;
       
 20498 }(_react2['default'].Component);
       
 20499 
       
 20500 DateRangePicker.propTypes = propTypes;
       
 20501 DateRangePicker.defaultProps = defaultProps;
       
 20502 
       
 20503 exports.PureDateRangePicker = DateRangePicker;
       
 20504 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
 20505   var _ref$reactDates = _ref.reactDates,
       
 20506       color = _ref$reactDates.color,
       
 20507       zIndex = _ref$reactDates.zIndex;
       
 20508   return {
       
 20509     DateRangePicker: {
       
 20510       position: 'relative',
       
 20511       display: 'inline-block'
       
 20512     },
       
 20513 
       
 20514     DateRangePicker__block: {
       
 20515       display: 'block'
       
 20516     },
       
 20517 
       
 20518     DateRangePicker_picker: {
       
 20519       zIndex: zIndex + 1,
       
 20520       backgroundColor: color.background,
       
 20521       position: 'absolute'
       
 20522     },
       
 20523 
       
 20524     DateRangePicker_picker__rtl: {
       
 20525       direction: 'rtl'
       
 20526     },
       
 20527 
       
 20528     DateRangePicker_picker__directionLeft: {
       
 20529       left: 0
       
 20530     },
       
 20531 
       
 20532     DateRangePicker_picker__directionRight: {
       
 20533       right: 0
       
 20534     },
       
 20535 
       
 20536     DateRangePicker_picker__portal: {
       
 20537       backgroundColor: 'rgba(0, 0, 0, 0.3)',
       
 20538       position: 'fixed',
       
 20539       top: 0,
       
 20540       left: 0,
       
 20541       height: '100%',
       
 20542       width: '100%'
       
 20543     },
       
 20544 
       
 20545     DateRangePicker_picker__fullScreenPortal: {
       
 20546       backgroundColor: color.background
       
 20547     },
       
 20548 
       
 20549     DateRangePicker_closeButton: {
       
 20550       background: 'none',
       
 20551       border: 0,
       
 20552       color: 'inherit',
       
 20553       font: 'inherit',
       
 20554       lineHeight: 'normal',
       
 20555       overflow: 'visible',
       
 20556       cursor: 'pointer',
       
 20557 
       
 20558       position: 'absolute',
       
 20559       top: 0,
       
 20560       right: 0,
       
 20561       padding: 15,
       
 20562       zIndex: zIndex + 2,
       
 20563 
       
 20564       ':hover': {
       
 20565         color: 'darken(' + String(color.core.grayLighter) + ', 10%)',
       
 20566         textDecoration: 'none'
       
 20567       },
       
 20568 
       
 20569       ':focus': {
       
 20570         color: 'darken(' + String(color.core.grayLighter) + ', 10%)',
       
 20571         textDecoration: 'none'
       
 20572       }
       
 20573     },
       
 20574 
       
 20575     DateRangePicker_closeButton_svg: {
       
 20576       height: 15,
       
 20577       width: 15,
       
 20578       fill: color.core.grayLighter
       
 20579     }
       
 20580   };
       
 20581 })(DateRangePicker);
       
 20582 
       
 20583 /***/ }),
       
 20584 /* 303 */
       
 20585 /***/ (function(module, exports, __webpack_require__) {
       
 20586 
       
 20587 "use strict";
       
 20588 
       
 20589 
       
 20590 Object.defineProperty(exports, "__esModule", {
       
 20591   value: true
       
 20592 });
       
 20593 
       
 20594 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 20595 
       
 20596 var _react = __webpack_require__(27);
       
 20597 
       
 20598 var _react2 = _interopRequireDefault(_react);
       
 20599 
       
 20600 var _propTypes = __webpack_require__(304);
       
 20601 
       
 20602 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 20603 
       
 20604 var _airbnbPropTypes = __webpack_require__(43);
       
 20605 
       
 20606 var _consolidatedEvents = __webpack_require__(103);
       
 20607 
       
 20608 var _object = __webpack_require__(307);
       
 20609 
       
 20610 var _object2 = _interopRequireDefault(_object);
       
 20611 
       
 20612 var _document = __webpack_require__(311);
       
 20613 
       
 20614 var _document2 = _interopRequireDefault(_document);
       
 20615 
       
 20616 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 20617 
       
 20618 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 20619 
       
 20620 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 20621 
       
 20622 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 20623 
       
 20624 var DISPLAY = {
       
 20625   BLOCK: 'block',
       
 20626   FLEX: 'flex',
       
 20627   INLINE_BLOCK: 'inline-block'
       
 20628 };
       
 20629 
       
 20630 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 20631   children: _propTypes2['default'].node.isRequired,
       
 20632   onOutsideClick: _propTypes2['default'].func.isRequired,
       
 20633   disabled: _propTypes2['default'].bool,
       
 20634   useCapture: _propTypes2['default'].bool,
       
 20635   display: _propTypes2['default'].oneOf((0, _object2['default'])(DISPLAY))
       
 20636 });
       
 20637 
       
 20638 var defaultProps = {
       
 20639   disabled: false,
       
 20640 
       
 20641   // `useCapture` is set to true by default so that a `stopPropagation` in the
       
 20642   // children will not prevent all outside click handlers from firing - maja
       
 20643   useCapture: true,
       
 20644   display: DISPLAY.BLOCK
       
 20645 };
       
 20646 
       
 20647 var OutsideClickHandler = function (_React$Component) {
       
 20648   _inherits(OutsideClickHandler, _React$Component);
       
 20649 
       
 20650   function OutsideClickHandler() {
       
 20651     var _ref;
       
 20652 
       
 20653     _classCallCheck(this, OutsideClickHandler);
       
 20654 
       
 20655     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
       
 20656       args[_key] = arguments[_key];
       
 20657     }
       
 20658 
       
 20659     var _this = _possibleConstructorReturn(this, (_ref = OutsideClickHandler.__proto__ || Object.getPrototypeOf(OutsideClickHandler)).call.apply(_ref, [this].concat(args)));
       
 20660 
       
 20661     _this.onMouseDown = _this.onMouseDown.bind(_this);
       
 20662     _this.onMouseUp = _this.onMouseUp.bind(_this);
       
 20663     _this.setChildNodeRef = _this.setChildNodeRef.bind(_this);
       
 20664     return _this;
       
 20665   }
       
 20666 
       
 20667   _createClass(OutsideClickHandler, [{
       
 20668     key: 'componentDidMount',
       
 20669     value: function () {
       
 20670       function componentDidMount() {
       
 20671         var _props = this.props,
       
 20672             disabled = _props.disabled,
       
 20673             useCapture = _props.useCapture;
       
 20674 
       
 20675 
       
 20676         if (!disabled) this.addMouseDownEventListener(useCapture);
       
 20677       }
       
 20678 
       
 20679       return componentDidMount;
       
 20680     }()
       
 20681   }, {
       
 20682     key: 'componentWillReceiveProps',
       
 20683     value: function () {
       
 20684       function componentWillReceiveProps(_ref2) {
       
 20685         var disabled = _ref2.disabled,
       
 20686             useCapture = _ref2.useCapture;
       
 20687         var prevDisabled = this.props.disabled;
       
 20688 
       
 20689         if (prevDisabled !== disabled) {
       
 20690           if (disabled) {
       
 20691             this.removeEventListeners();
       
 20692           } else {
       
 20693             this.addMouseDownEventListener(useCapture);
       
 20694           }
 20134           }
 20695         }
 20135         }
 20696       }
 20136       }
 20697 
 20137     }
 20698       return componentWillReceiveProps;
 20138   }
 20699     }()
 20139 
 20700   }, {
 20140   return string;
 20701     key: 'componentWillUnmount',
 20141 }
 20702     value: function () {
 20142 
 20703       function componentWillUnmount() {
 20143 var labelPattern = /label:\s*([^\s;\n{]+)\s*;/g;
 20704         this.removeEventListeners();
 20144 var sourceMapPattern;
       
 20145 
       
 20146 if (false) {} // this is the cursor for keyframes
       
 20147 // keyframes are stored on the SerializedStyles object as a linked list
       
 20148 
       
 20149 
       
 20150 var cursor;
       
 20151 var serialize_browser_esm_serializeStyles = function serializeStyles(args, registered, mergedProps) {
       
 20152   if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {
       
 20153     return args[0];
       
 20154   }
       
 20155 
       
 20156   var stringMode = true;
       
 20157   var styles = '';
       
 20158   cursor = undefined;
       
 20159   var strings = args[0];
       
 20160 
       
 20161   if (strings == null || strings.raw === undefined) {
       
 20162     stringMode = false;
       
 20163     styles += handleInterpolation(mergedProps, registered, strings, false);
       
 20164   } else {
       
 20165     if (false) {}
       
 20166 
       
 20167     styles += strings[0];
       
 20168   } // we start at 1 since we've already handled the first arg
       
 20169 
       
 20170 
       
 20171   for (var i = 1; i < args.length; i++) {
       
 20172     styles += handleInterpolation(mergedProps, registered, args[i], styles.charCodeAt(styles.length - 1) === 46);
       
 20173 
       
 20174     if (stringMode) {
       
 20175       if (false) {}
       
 20176 
       
 20177       styles += strings[i];
       
 20178     }
       
 20179   }
       
 20180 
       
 20181   var sourceMap;
       
 20182 
       
 20183   if (false) {} // using a global regex with .exec is stateful so lastIndex has to be reset each time
       
 20184 
       
 20185 
       
 20186   labelPattern.lastIndex = 0;
       
 20187   var identifierName = '';
       
 20188   var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5
       
 20189 
       
 20190   while ((match = labelPattern.exec(styles)) !== null) {
       
 20191     identifierName += '-' + // $FlowFixMe we know it's not null
       
 20192     match[1];
       
 20193   }
       
 20194 
       
 20195   var name = hash_browser_esm(styles) + identifierName;
       
 20196 
       
 20197   if (false) {}
       
 20198 
       
 20199   return {
       
 20200     name: name,
       
 20201     styles: styles,
       
 20202     next: cursor
       
 20203   };
       
 20204 };
       
 20205 
       
 20206 
       
 20207 
       
 20208 // CONCATENATED MODULE: ./node_modules/@emotion/css/dist/css.browser.esm.js
       
 20209 
       
 20210 
       
 20211 function css_browser_esm_css() {
       
 20212   for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
       
 20213     args[_key] = arguments[_key];
       
 20214   }
       
 20215 
       
 20216   return serialize_browser_esm_serializeStyles(args);
       
 20217 }
       
 20218 
       
 20219 /* harmony default export */ var css_browser_esm = (css_browser_esm_css);
       
 20220 
       
 20221 // CONCATENATED MODULE: ./node_modules/@emotion/core/dist/core.browser.esm.js
       
 20222 
       
 20223 
       
 20224 
       
 20225 
       
 20226 
       
 20227 
       
 20228 
       
 20229 
       
 20230 
       
 20231 var EmotionCacheContext = Object(external_this_React_["createContext"])( // we're doing this to avoid preconstruct's dead code elimination in this one case
       
 20232 // because this module is primarily intended for the browser and node
       
 20233 // but it's also required in react native and similar environments sometimes
       
 20234 // and we could have a special build just for that
       
 20235 // but this is much easier and the native packages
       
 20236 // might use a different theme context in the future anyway
       
 20237 typeof HTMLElement !== 'undefined' ? cache_browser_esm() : null);
       
 20238 var ThemeContext = Object(external_this_React_["createContext"])({});
       
 20239 var CacheProvider = EmotionCacheContext.Provider;
       
 20240 
       
 20241 var core_browser_esm_withEmotionCache = function withEmotionCache(func) {
       
 20242   var render = function render(props, ref) {
       
 20243     return Object(external_this_React_["createElement"])(EmotionCacheContext.Consumer, null, function (cache) {
       
 20244       return func(props, cache, ref);
       
 20245     });
       
 20246   }; // $FlowFixMe
       
 20247 
       
 20248 
       
 20249   return Object(external_this_React_["forwardRef"])(render);
       
 20250 };
       
 20251 
       
 20252 // thus we only need to replace what is a valid character for JS, but not for CSS
       
 20253 
       
 20254 var sanitizeIdentifier = function sanitizeIdentifier(identifier) {
       
 20255   return identifier.replace(/\$/g, '-');
       
 20256 };
       
 20257 
       
 20258 var typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';
       
 20259 var labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';
       
 20260 var core_browser_esm_hasOwnProperty = Object.prototype.hasOwnProperty;
       
 20261 
       
 20262 var core_browser_esm_render = function render(cache, props, theme, ref) {
       
 20263   var cssProp = theme === null ? props.css : props.css(theme); // so that using `css` from `emotion` and passing the result to the css prop works
       
 20264   // not passing the registered cache to serializeStyles because it would
       
 20265   // make certain babel optimisations not possible
       
 20266 
       
 20267   if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {
       
 20268     cssProp = cache.registered[cssProp];
       
 20269   }
       
 20270 
       
 20271   var type = props[typePropName];
       
 20272   var registeredStyles = [cssProp];
       
 20273   var className = '';
       
 20274 
       
 20275   if (typeof props.className === 'string') {
       
 20276     className = getRegisteredStyles(cache.registered, registeredStyles, props.className);
       
 20277   } else if (props.className != null) {
       
 20278     className = props.className + " ";
       
 20279   }
       
 20280 
       
 20281   var serialized = serialize_browser_esm_serializeStyles(registeredStyles);
       
 20282 
       
 20283   if (false) { var labelFromStack; }
       
 20284 
       
 20285   var rules = insertStyles(cache, serialized, typeof type === 'string');
       
 20286   className += cache.key + "-" + serialized.name;
       
 20287   var newProps = {};
       
 20288 
       
 20289   for (var key in props) {
       
 20290     if (core_browser_esm_hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && ( true || false)) {
       
 20291       newProps[key] = props[key];
       
 20292     }
       
 20293   }
       
 20294 
       
 20295   newProps.ref = ref;
       
 20296   newProps.className = className;
       
 20297   var ele = Object(external_this_React_["createElement"])(type, newProps);
       
 20298 
       
 20299   return ele;
       
 20300 };
       
 20301 
       
 20302 var Emotion =
       
 20303 /* #__PURE__ */
       
 20304 core_browser_esm_withEmotionCache(function (props, cache, ref) {
       
 20305   // use Context.read for the theme when it's stable
       
 20306   if (typeof props.css === 'function') {
       
 20307     return Object(external_this_React_["createElement"])(ThemeContext.Consumer, null, function (theme) {
       
 20308       return core_browser_esm_render(cache, props, theme, ref);
       
 20309     });
       
 20310   }
       
 20311 
       
 20312   return core_browser_esm_render(cache, props, null, ref);
       
 20313 });
       
 20314 
       
 20315 if (false) {} // $FlowFixMe
       
 20316 
       
 20317 
       
 20318 var core_browser_esm_jsx = function jsx(type, props) {
       
 20319   var args = arguments;
       
 20320 
       
 20321   if (props == null || !core_browser_esm_hasOwnProperty.call(props, 'css')) {
       
 20322     // $FlowFixMe
       
 20323     return external_this_React_["createElement"].apply(undefined, args);
       
 20324   }
       
 20325 
       
 20326   if (false) {}
       
 20327 
       
 20328   var argsLength = args.length;
       
 20329   var createElementArgArray = new Array(argsLength);
       
 20330   createElementArgArray[0] = Emotion;
       
 20331   var newProps = {};
       
 20332 
       
 20333   for (var key in props) {
       
 20334     if (core_browser_esm_hasOwnProperty.call(props, key)) {
       
 20335       newProps[key] = props[key];
       
 20336     }
       
 20337   }
       
 20338 
       
 20339   newProps[typePropName] = type;
       
 20340 
       
 20341   if (false) { var match, error; }
       
 20342 
       
 20343   createElementArgArray[1] = newProps;
       
 20344 
       
 20345   for (var i = 2; i < argsLength; i++) {
       
 20346     createElementArgArray[i] = args[i];
       
 20347   } // $FlowFixMe
       
 20348 
       
 20349 
       
 20350   return external_this_React_["createElement"].apply(null, createElementArgArray);
       
 20351 };
       
 20352 
       
 20353 var warnedAboutCssPropForGlobal = false;
       
 20354 var Global =
       
 20355 /* #__PURE__ */
       
 20356 core_browser_esm_withEmotionCache(function (props, cache) {
       
 20357   if (false) {}
       
 20358 
       
 20359   var styles = props.styles;
       
 20360 
       
 20361   if (typeof styles === 'function') {
       
 20362     return Object(external_this_React_["createElement"])(ThemeContext.Consumer, null, function (theme) {
       
 20363       var serialized = serialize_browser_esm_serializeStyles([styles(theme)]);
       
 20364       return Object(external_this_React_["createElement"])(core_browser_esm_InnerGlobal, {
       
 20365         serialized: serialized,
       
 20366         cache: cache
       
 20367       });
       
 20368     });
       
 20369   }
       
 20370 
       
 20371   var serialized = serialize_browser_esm_serializeStyles([styles]);
       
 20372   return Object(external_this_React_["createElement"])(core_browser_esm_InnerGlobal, {
       
 20373     serialized: serialized,
       
 20374     cache: cache
       
 20375   });
       
 20376 });
       
 20377 
       
 20378 // maintain place over rerenders.
       
 20379 // initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild
       
 20380 // initial client-side render from SSR, use place of hydrating tag
       
 20381 var core_browser_esm_InnerGlobal =
       
 20382 /*#__PURE__*/
       
 20383 function (_React$Component) {
       
 20384   inheritsLoose_default()(InnerGlobal, _React$Component);
       
 20385 
       
 20386   function InnerGlobal(props, context, updater) {
       
 20387     return _React$Component.call(this, props, context, updater) || this;
       
 20388   }
       
 20389 
       
 20390   var _proto = InnerGlobal.prototype;
       
 20391 
       
 20392   _proto.componentDidMount = function componentDidMount() {
       
 20393     this.sheet = new StyleSheet({
       
 20394       key: this.props.cache.key + "-global",
       
 20395       nonce: this.props.cache.sheet.nonce,
       
 20396       container: this.props.cache.sheet.container
       
 20397     }); // $FlowFixMe
       
 20398 
       
 20399     var node = document.querySelector("style[data-emotion-" + this.props.cache.key + "=\"" + this.props.serialized.name + "\"]");
       
 20400 
       
 20401     if (node !== null) {
       
 20402       this.sheet.tags.push(node);
       
 20403     }
       
 20404 
       
 20405     if (this.props.cache.sheet.tags.length) {
       
 20406       this.sheet.before = this.props.cache.sheet.tags[0];
       
 20407     }
       
 20408 
       
 20409     this.insertStyles();
       
 20410   };
       
 20411 
       
 20412   _proto.componentDidUpdate = function componentDidUpdate(prevProps) {
       
 20413     if (prevProps.serialized.name !== this.props.serialized.name) {
       
 20414       this.insertStyles();
       
 20415     }
       
 20416   };
       
 20417 
       
 20418   _proto.insertStyles = function insertStyles$1() {
       
 20419     if (this.props.serialized.next !== undefined) {
       
 20420       // insert keyframes
       
 20421       insertStyles(this.props.cache, this.props.serialized.next, true);
       
 20422     }
       
 20423 
       
 20424     if (this.sheet.tags.length) {
       
 20425       // if this doesn't exist then it will be null so the style element will be appended
       
 20426       var element = this.sheet.tags[this.sheet.tags.length - 1].nextElementSibling;
       
 20427       this.sheet.before = element;
       
 20428       this.sheet.flush();
       
 20429     }
       
 20430 
       
 20431     this.props.cache.insert("", this.props.serialized, this.sheet, false);
       
 20432   };
       
 20433 
       
 20434   _proto.componentWillUnmount = function componentWillUnmount() {
       
 20435     this.sheet.flush();
       
 20436   };
       
 20437 
       
 20438   _proto.render = function render() {
       
 20439 
       
 20440     return null;
       
 20441   };
       
 20442 
       
 20443   return InnerGlobal;
       
 20444 }(external_this_React_["Component"]);
       
 20445 
       
 20446 var core_browser_esm_keyframes = function keyframes() {
       
 20447   var insertable = css_browser_esm.apply(void 0, arguments);
       
 20448   var name = "animation-" + insertable.name; // $FlowFixMe
       
 20449 
       
 20450   return {
       
 20451     name: name,
       
 20452     styles: "@keyframes " + name + "{" + insertable.styles + "}",
       
 20453     anim: 1,
       
 20454     toString: function toString() {
       
 20455       return "_EMO_" + this.name + "_" + this.styles + "_EMO_";
       
 20456     }
       
 20457   };
       
 20458 };
       
 20459 
       
 20460 var core_browser_esm_classnames = function classnames(args) {
       
 20461   var len = args.length;
       
 20462   var i = 0;
       
 20463   var cls = '';
       
 20464 
       
 20465   for (; i < len; i++) {
       
 20466     var arg = args[i];
       
 20467     if (arg == null) continue;
       
 20468     var toAdd = void 0;
       
 20469 
       
 20470     switch (typeof arg) {
       
 20471       case 'boolean':
       
 20472         break;
       
 20473 
       
 20474       case 'object':
       
 20475         {
       
 20476           if (Array.isArray(arg)) {
       
 20477             toAdd = classnames(arg);
       
 20478           } else {
       
 20479             toAdd = '';
       
 20480 
       
 20481             for (var k in arg) {
       
 20482               if (arg[k] && k) {
       
 20483                 toAdd && (toAdd += ' ');
       
 20484                 toAdd += k;
       
 20485               }
       
 20486             }
       
 20487           }
       
 20488 
       
 20489           break;
       
 20490         }
       
 20491 
       
 20492       default:
       
 20493         {
       
 20494           toAdd = arg;
       
 20495         }
       
 20496     }
       
 20497 
       
 20498     if (toAdd) {
       
 20499       cls && (cls += ' ');
       
 20500       cls += toAdd;
       
 20501     }
       
 20502   }
       
 20503 
       
 20504   return cls;
       
 20505 };
       
 20506 
       
 20507 function merge(registered, css, className) {
       
 20508   var registeredStyles = [];
       
 20509   var rawClassName = getRegisteredStyles(registered, registeredStyles, className);
       
 20510 
       
 20511   if (registeredStyles.length < 2) {
       
 20512     return className;
       
 20513   }
       
 20514 
       
 20515   return rawClassName + css(registeredStyles);
       
 20516 }
       
 20517 
       
 20518 var ClassNames = core_browser_esm_withEmotionCache(function (props, context) {
       
 20519   return Object(external_this_React_["createElement"])(ThemeContext.Consumer, null, function (theme) {
       
 20520     var hasRendered = false;
       
 20521 
       
 20522     var css = function css() {
       
 20523       if (hasRendered && "production" !== 'production') {
       
 20524         throw new Error('css can only be used during render');
 20705       }
 20525       }
 20706 
 20526 
 20707       return componentWillUnmount;
 20527       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
 20708     }()
 20528         args[_key] = arguments[_key];
 20709 
 20529       }
 20710     // Use mousedown/mouseup to enforce that clicks remain outside the root's
 20530 
 20711     // descendant tree, even when dragged. This should also get triggered on
 20531       var serialized = serialize_browser_esm_serializeStyles(args, context.registered);
 20712     // touch devices.
 20532 
 20713 
 20533       {
 20714   }, {
 20534         insertStyles(context, serialized, false);
 20715     key: 'onMouseDown',
 20535       }
 20716     value: function () {
 20536 
 20717       function onMouseDown(e) {
 20537       return context.key + "-" + serialized.name;
 20718         var useCapture = this.props.useCapture;
 20538     };
 20719 
 20539 
 20720 
 20540     var cx = function cx() {
 20721         var isDescendantOfRoot = this.childNode && (0, _document2['default'])(this.childNode, e.target);
 20541       if (hasRendered && "production" !== 'production') {
 20722         if (!isDescendantOfRoot) {
 20542         throw new Error('cx can only be used during render');
 20723           this.removeMouseUp = (0, _consolidatedEvents.addEventListener)(document, 'mouseup', this.onMouseUp, { capture: useCapture });
 20543       }
       
 20544 
       
 20545       for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
       
 20546         args[_key2] = arguments[_key2];
       
 20547       }
       
 20548 
       
 20549       return merge(context.registered, css, core_browser_esm_classnames(args));
       
 20550     };
       
 20551 
       
 20552     var content = {
       
 20553       css: css,
       
 20554       cx: cx,
       
 20555       theme: theme
       
 20556     };
       
 20557     var ele = props.children(content);
       
 20558     hasRendered = true;
       
 20559 
       
 20560     return ele;
       
 20561   });
       
 20562 });
       
 20563 
       
 20564 
       
 20565 
       
 20566 // CONCATENATED MODULE: ./node_modules/@emotion/styled-base/dist/styled-base.browser.esm.js
       
 20567 
       
 20568 
       
 20569 
       
 20570 
       
 20571 
       
 20572 
       
 20573 
       
 20574 var testOmitPropsOnStringTag = is_prop_valid_browser_esm;
       
 20575 
       
 20576 var testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {
       
 20577   return key !== 'theme' && key !== 'innerRef';
       
 20578 };
       
 20579 
       
 20580 var getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {
       
 20581   return typeof tag === 'string' && // 96 is one less than the char code
       
 20582   // for "a" so this is checking that
       
 20583   // it's a lowercase character
       
 20584   tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;
       
 20585 };
       
 20586 
       
 20587 function styled_base_browser_esm_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 20588 
       
 20589 function styled_base_browser_esm_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { styled_base_browser_esm_ownKeys(source, true).forEach(function (key) { defineProperty_default()(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { styled_base_browser_esm_ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 20590 var styled_base_browser_esm_ILLEGAL_ESCAPE_SEQUENCE_ERROR = "You have illegal escape sequence in your template literal, most likely inside content's property value.\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \"content: '\\00d7';\" should become \"content: '\\\\00d7';\".\nYou can read more about this here:\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences";
       
 20591 
       
 20592 var styled_base_browser_esm_createStyled = function createStyled(tag, options) {
       
 20593   if (false) {}
       
 20594 
       
 20595   var identifierName;
       
 20596   var shouldForwardProp;
       
 20597   var targetClassName;
       
 20598 
       
 20599   if (options !== undefined) {
       
 20600     identifierName = options.label;
       
 20601     targetClassName = options.target;
       
 20602     shouldForwardProp = tag.__emotion_forwardProp && options.shouldForwardProp ? function (propName) {
       
 20603       return tag.__emotion_forwardProp(propName) && // $FlowFixMe
       
 20604       options.shouldForwardProp(propName);
       
 20605     } : options.shouldForwardProp;
       
 20606   }
       
 20607 
       
 20608   var isReal = tag.__emotion_real === tag;
       
 20609   var baseTag = isReal && tag.__emotion_base || tag;
       
 20610 
       
 20611   if (typeof shouldForwardProp !== 'function' && isReal) {
       
 20612     shouldForwardProp = tag.__emotion_forwardProp;
       
 20613   }
       
 20614 
       
 20615   var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);
       
 20616   var shouldUseAs = !defaultShouldForwardProp('as');
       
 20617   return function () {
       
 20618     var args = arguments;
       
 20619     var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];
       
 20620 
       
 20621     if (identifierName !== undefined) {
       
 20622       styles.push("label:" + identifierName + ";");
       
 20623     }
       
 20624 
       
 20625     if (args[0] == null || args[0].raw === undefined) {
       
 20626       styles.push.apply(styles, args);
       
 20627     } else {
       
 20628       if (false) {}
       
 20629 
       
 20630       styles.push(args[0][0]);
       
 20631       var len = args.length;
       
 20632       var i = 1;
       
 20633 
       
 20634       for (; i < len; i++) {
       
 20635         if (false) {}
       
 20636 
       
 20637         styles.push(args[i], args[0][i]);
       
 20638       }
       
 20639     } // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class
       
 20640 
       
 20641 
       
 20642     var Styled = core_browser_esm_withEmotionCache(function (props, context, ref) {
       
 20643       return Object(external_this_React_["createElement"])(ThemeContext.Consumer, null, function (theme) {
       
 20644         var finalTag = shouldUseAs && props.as || baseTag;
       
 20645         var className = '';
       
 20646         var classInterpolations = [];
       
 20647         var mergedProps = props;
       
 20648 
       
 20649         if (props.theme == null) {
       
 20650           mergedProps = {};
       
 20651 
       
 20652           for (var key in props) {
       
 20653             mergedProps[key] = props[key];
       
 20654           }
       
 20655 
       
 20656           mergedProps.theme = theme;
 20724         }
 20657         }
 20725       }
 20658 
 20726 
 20659         if (typeof props.className === 'string') {
 20727       return onMouseDown;
 20660           className = getRegisteredStyles(context.registered, classInterpolations, props.className);
 20728     }()
 20661         } else if (props.className != null) {
 20729 
 20662           className = props.className + " ";
 20730     // Use mousedown/mouseup to enforce that clicks remain outside the root's
       
 20731     // descendant tree, even when dragged. This should also get triggered on
       
 20732     // touch devices.
       
 20733 
       
 20734   }, {
       
 20735     key: 'onMouseUp',
       
 20736     value: function () {
       
 20737       function onMouseUp(e) {
       
 20738         var onOutsideClick = this.props.onOutsideClick;
       
 20739 
       
 20740 
       
 20741         var isDescendantOfRoot = this.childNode && (0, _document2['default'])(this.childNode, e.target);
       
 20742         if (this.removeMouseUp) this.removeMouseUp();
       
 20743         this.removeMouseUp = null;
       
 20744 
       
 20745         if (!isDescendantOfRoot) {
       
 20746           onOutsideClick(e);
       
 20747         }
 20663         }
 20748       }
 20664 
 20749 
 20665         var serialized = serialize_browser_esm_serializeStyles(styles.concat(classInterpolations), context.registered, mergedProps);
 20750       return onMouseUp;
 20666         var rules = insertStyles(context, serialized, typeof finalTag === 'string');
 20751     }()
 20667         className += context.key + "-" + serialized.name;
 20752   }, {
 20668 
 20753     key: 'setChildNodeRef',
 20669         if (targetClassName !== undefined) {
 20754     value: function () {
 20670           className += " " + targetClassName;
 20755       function setChildNodeRef(ref) {
       
 20756         this.childNode = ref;
       
 20757       }
       
 20758 
       
 20759       return setChildNodeRef;
       
 20760     }()
       
 20761   }, {
       
 20762     key: 'addMouseDownEventListener',
       
 20763     value: function () {
       
 20764       function addMouseDownEventListener(useCapture) {
       
 20765         this.removeMouseDown = (0, _consolidatedEvents.addEventListener)(document, 'mousedown', this.onMouseDown, { capture: useCapture });
       
 20766       }
       
 20767 
       
 20768       return addMouseDownEventListener;
       
 20769     }()
       
 20770   }, {
       
 20771     key: 'removeEventListeners',
       
 20772     value: function () {
       
 20773       function removeEventListeners() {
       
 20774         if (this.removeMouseDown) this.removeMouseDown();
       
 20775         if (this.removeMouseUp) this.removeMouseUp();
       
 20776       }
       
 20777 
       
 20778       return removeEventListeners;
       
 20779     }()
       
 20780   }, {
       
 20781     key: 'render',
       
 20782     value: function () {
       
 20783       function render() {
       
 20784         var _props2 = this.props,
       
 20785             children = _props2.children,
       
 20786             display = _props2.display;
       
 20787 
       
 20788 
       
 20789         return _react2['default'].createElement(
       
 20790           'div',
       
 20791           {
       
 20792             ref: this.setChildNodeRef,
       
 20793             style: display !== DISPLAY.BLOCK && (0, _object2['default'])(DISPLAY).includes(display) ? { display: display } : undefined
       
 20794           },
       
 20795           children
       
 20796         );
       
 20797       }
       
 20798 
       
 20799       return render;
       
 20800     }()
       
 20801   }]);
       
 20802 
       
 20803   return OutsideClickHandler;
       
 20804 }(_react2['default'].Component);
       
 20805 
       
 20806 exports['default'] = OutsideClickHandler;
       
 20807 
       
 20808 
       
 20809 OutsideClickHandler.propTypes = propTypes;
       
 20810 OutsideClickHandler.defaultProps = defaultProps;
       
 20811 
       
 20812 /***/ }),
       
 20813 /* 304 */
       
 20814 /***/ (function(module, exports, __webpack_require__) {
       
 20815 
       
 20816 /**
       
 20817  * Copyright (c) 2013-present, Facebook, Inc.
       
 20818  *
       
 20819  * This source code is licensed under the MIT license found in the
       
 20820  * LICENSE file in the root directory of this source tree.
       
 20821  */
       
 20822 
       
 20823 if (false) { var throwOnDirectAccess, ReactIs; } else {
       
 20824   // By explicitly using `prop-types` you are opting into new production behavior.
       
 20825   // http://fb.me/prop-types-in-prod
       
 20826   module.exports = __webpack_require__(305)();
       
 20827 }
       
 20828 
       
 20829 
       
 20830 /***/ }),
       
 20831 /* 305 */
       
 20832 /***/ (function(module, exports, __webpack_require__) {
       
 20833 
       
 20834 "use strict";
       
 20835 /**
       
 20836  * Copyright (c) 2013-present, Facebook, Inc.
       
 20837  *
       
 20838  * This source code is licensed under the MIT license found in the
       
 20839  * LICENSE file in the root directory of this source tree.
       
 20840  */
       
 20841 
       
 20842 
       
 20843 
       
 20844 var ReactPropTypesSecret = __webpack_require__(306);
       
 20845 
       
 20846 function emptyFunction() {}
       
 20847 function emptyFunctionWithReset() {}
       
 20848 emptyFunctionWithReset.resetWarningCache = emptyFunction;
       
 20849 
       
 20850 module.exports = function() {
       
 20851   function shim(props, propName, componentName, location, propFullName, secret) {
       
 20852     if (secret === ReactPropTypesSecret) {
       
 20853       // It is still safe when called from React.
       
 20854       return;
       
 20855     }
       
 20856     var err = new Error(
       
 20857       'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +
       
 20858       'Use PropTypes.checkPropTypes() to call them. ' +
       
 20859       'Read more at http://fb.me/use-check-prop-types'
       
 20860     );
       
 20861     err.name = 'Invariant Violation';
       
 20862     throw err;
       
 20863   };
       
 20864   shim.isRequired = shim;
       
 20865   function getShim() {
       
 20866     return shim;
       
 20867   };
       
 20868   // Important!
       
 20869   // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.
       
 20870   var ReactPropTypes = {
       
 20871     array: shim,
       
 20872     bool: shim,
       
 20873     func: shim,
       
 20874     number: shim,
       
 20875     object: shim,
       
 20876     string: shim,
       
 20877     symbol: shim,
       
 20878 
       
 20879     any: shim,
       
 20880     arrayOf: getShim,
       
 20881     element: shim,
       
 20882     elementType: shim,
       
 20883     instanceOf: getShim,
       
 20884     node: shim,
       
 20885     objectOf: getShim,
       
 20886     oneOf: getShim,
       
 20887     oneOfType: getShim,
       
 20888     shape: getShim,
       
 20889     exact: getShim,
       
 20890 
       
 20891     checkPropTypes: emptyFunctionWithReset,
       
 20892     resetWarningCache: emptyFunction
       
 20893   };
       
 20894 
       
 20895   ReactPropTypes.PropTypes = ReactPropTypes;
       
 20896 
       
 20897   return ReactPropTypes;
       
 20898 };
       
 20899 
       
 20900 
       
 20901 /***/ }),
       
 20902 /* 306 */
       
 20903 /***/ (function(module, exports, __webpack_require__) {
       
 20904 
       
 20905 "use strict";
       
 20906 /**
       
 20907  * Copyright (c) 2013-present, Facebook, Inc.
       
 20908  *
       
 20909  * This source code is licensed under the MIT license found in the
       
 20910  * LICENSE file in the root directory of this source tree.
       
 20911  */
       
 20912 
       
 20913 
       
 20914 
       
 20915 var ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';
       
 20916 
       
 20917 module.exports = ReactPropTypesSecret;
       
 20918 
       
 20919 
       
 20920 /***/ }),
       
 20921 /* 307 */
       
 20922 /***/ (function(module, exports, __webpack_require__) {
       
 20923 
       
 20924 "use strict";
       
 20925 
       
 20926 
       
 20927 var define = __webpack_require__(163);
       
 20928 
       
 20929 var implementation = __webpack_require__(165);
       
 20930 var getPolyfill = __webpack_require__(167);
       
 20931 var shim = __webpack_require__(310);
       
 20932 
       
 20933 var polyfill = getPolyfill();
       
 20934 
       
 20935 define(polyfill, {
       
 20936 	getPolyfill: getPolyfill,
       
 20937 	implementation: implementation,
       
 20938 	shim: shim
       
 20939 });
       
 20940 
       
 20941 module.exports = polyfill;
       
 20942 
       
 20943 
       
 20944 /***/ }),
       
 20945 /* 308 */
       
 20946 /***/ (function(module, exports, __webpack_require__) {
       
 20947 
       
 20948 "use strict";
       
 20949 
       
 20950 
       
 20951 var slice = Array.prototype.slice;
       
 20952 var isArgs = __webpack_require__(164);
       
 20953 
       
 20954 var origKeys = Object.keys;
       
 20955 var keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(309);
       
 20956 
       
 20957 var originalKeys = Object.keys;
       
 20958 
       
 20959 keysShim.shim = function shimObjectKeys() {
       
 20960 	if (Object.keys) {
       
 20961 		var keysWorksWithArguments = (function () {
       
 20962 			// Safari 5.0 bug
       
 20963 			var args = Object.keys(arguments);
       
 20964 			return args && args.length === arguments.length;
       
 20965 		}(1, 2));
       
 20966 		if (!keysWorksWithArguments) {
       
 20967 			Object.keys = function keys(object) { // eslint-disable-line func-name-matching
       
 20968 				if (isArgs(object)) {
       
 20969 					return originalKeys(slice.call(object));
       
 20970 				}
       
 20971 				return originalKeys(object);
       
 20972 			};
       
 20973 		}
       
 20974 	} else {
       
 20975 		Object.keys = keysShim;
       
 20976 	}
       
 20977 	return Object.keys || keysShim;
       
 20978 };
       
 20979 
       
 20980 module.exports = keysShim;
       
 20981 
       
 20982 
       
 20983 /***/ }),
       
 20984 /* 309 */
       
 20985 /***/ (function(module, exports, __webpack_require__) {
       
 20986 
       
 20987 "use strict";
       
 20988 
       
 20989 
       
 20990 var keysShim;
       
 20991 if (!Object.keys) {
       
 20992 	// modified from https://github.com/es-shims/es5-shim
       
 20993 	var has = Object.prototype.hasOwnProperty;
       
 20994 	var toStr = Object.prototype.toString;
       
 20995 	var isArgs = __webpack_require__(164); // eslint-disable-line global-require
       
 20996 	var isEnumerable = Object.prototype.propertyIsEnumerable;
       
 20997 	var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');
       
 20998 	var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');
       
 20999 	var dontEnums = [
       
 21000 		'toString',
       
 21001 		'toLocaleString',
       
 21002 		'valueOf',
       
 21003 		'hasOwnProperty',
       
 21004 		'isPrototypeOf',
       
 21005 		'propertyIsEnumerable',
       
 21006 		'constructor'
       
 21007 	];
       
 21008 	var equalsConstructorPrototype = function (o) {
       
 21009 		var ctor = o.constructor;
       
 21010 		return ctor && ctor.prototype === o;
       
 21011 	};
       
 21012 	var excludedKeys = {
       
 21013 		$applicationCache: true,
       
 21014 		$console: true,
       
 21015 		$external: true,
       
 21016 		$frame: true,
       
 21017 		$frameElement: true,
       
 21018 		$frames: true,
       
 21019 		$innerHeight: true,
       
 21020 		$innerWidth: true,
       
 21021 		$onmozfullscreenchange: true,
       
 21022 		$onmozfullscreenerror: true,
       
 21023 		$outerHeight: true,
       
 21024 		$outerWidth: true,
       
 21025 		$pageXOffset: true,
       
 21026 		$pageYOffset: true,
       
 21027 		$parent: true,
       
 21028 		$scrollLeft: true,
       
 21029 		$scrollTop: true,
       
 21030 		$scrollX: true,
       
 21031 		$scrollY: true,
       
 21032 		$self: true,
       
 21033 		$webkitIndexedDB: true,
       
 21034 		$webkitStorageInfo: true,
       
 21035 		$window: true
       
 21036 	};
       
 21037 	var hasAutomationEqualityBug = (function () {
       
 21038 		/* global window */
       
 21039 		if (typeof window === 'undefined') { return false; }
       
 21040 		for (var k in window) {
       
 21041 			try {
       
 21042 				if (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {
       
 21043 					try {
       
 21044 						equalsConstructorPrototype(window[k]);
       
 21045 					} catch (e) {
       
 21046 						return true;
       
 21047 					}
       
 21048 				}
       
 21049 			} catch (e) {
       
 21050 				return true;
       
 21051 			}
       
 21052 		}
       
 21053 		return false;
       
 21054 	}());
       
 21055 	var equalsConstructorPrototypeIfNotBuggy = function (o) {
       
 21056 		/* global window */
       
 21057 		if (typeof window === 'undefined' || !hasAutomationEqualityBug) {
       
 21058 			return equalsConstructorPrototype(o);
       
 21059 		}
       
 21060 		try {
       
 21061 			return equalsConstructorPrototype(o);
       
 21062 		} catch (e) {
       
 21063 			return false;
       
 21064 		}
       
 21065 	};
       
 21066 
       
 21067 	keysShim = function keys(object) {
       
 21068 		var isObject = object !== null && typeof object === 'object';
       
 21069 		var isFunction = toStr.call(object) === '[object Function]';
       
 21070 		var isArguments = isArgs(object);
       
 21071 		var isString = isObject && toStr.call(object) === '[object String]';
       
 21072 		var theKeys = [];
       
 21073 
       
 21074 		if (!isObject && !isFunction && !isArguments) {
       
 21075 			throw new TypeError('Object.keys called on a non-object');
       
 21076 		}
       
 21077 
       
 21078 		var skipProto = hasProtoEnumBug && isFunction;
       
 21079 		if (isString && object.length > 0 && !has.call(object, 0)) {
       
 21080 			for (var i = 0; i < object.length; ++i) {
       
 21081 				theKeys.push(String(i));
       
 21082 			}
       
 21083 		}
       
 21084 
       
 21085 		if (isArguments && object.length > 0) {
       
 21086 			for (var j = 0; j < object.length; ++j) {
       
 21087 				theKeys.push(String(j));
       
 21088 			}
       
 21089 		} else {
       
 21090 			for (var name in object) {
       
 21091 				if (!(skipProto && name === 'prototype') && has.call(object, name)) {
       
 21092 					theKeys.push(String(name));
       
 21093 				}
       
 21094 			}
       
 21095 		}
       
 21096 
       
 21097 		if (hasDontEnumBug) {
       
 21098 			var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
       
 21099 
       
 21100 			for (var k = 0; k < dontEnums.length; ++k) {
       
 21101 				if (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {
       
 21102 					theKeys.push(dontEnums[k]);
       
 21103 				}
       
 21104 			}
       
 21105 		}
       
 21106 		return theKeys;
       
 21107 	};
       
 21108 }
       
 21109 module.exports = keysShim;
       
 21110 
       
 21111 
       
 21112 /***/ }),
       
 21113 /* 310 */
       
 21114 /***/ (function(module, exports, __webpack_require__) {
       
 21115 
       
 21116 "use strict";
       
 21117 
       
 21118 
       
 21119 var getPolyfill = __webpack_require__(167);
       
 21120 var define = __webpack_require__(163);
       
 21121 
       
 21122 module.exports = function shimValues() {
       
 21123 	var polyfill = getPolyfill();
       
 21124 	define(Object, { values: polyfill }, {
       
 21125 		values: function testValues() {
       
 21126 			return Object.values !== polyfill;
       
 21127 		}
       
 21128 	});
       
 21129 	return polyfill;
       
 21130 };
       
 21131 
       
 21132 
       
 21133 /***/ }),
       
 21134 /* 311 */
       
 21135 /***/ (function(module, exports, __webpack_require__) {
       
 21136 
       
 21137 "use strict";
       
 21138 
       
 21139 
       
 21140 var define = __webpack_require__(168);
       
 21141 
       
 21142 var implementation = __webpack_require__(170);
       
 21143 var getPolyfill = __webpack_require__(171);
       
 21144 var polyfill = getPolyfill();
       
 21145 var shim = __webpack_require__(314);
       
 21146 
       
 21147 var boundContains = function contains(node, other) {
       
 21148 	return polyfill.apply(node, [other]);
       
 21149 };
       
 21150 
       
 21151 define(boundContains, {
       
 21152 	getPolyfill: getPolyfill,
       
 21153 	implementation: implementation,
       
 21154 	shim: shim
       
 21155 });
       
 21156 
       
 21157 module.exports = boundContains;
       
 21158 
       
 21159 
       
 21160 /***/ }),
       
 21161 /* 312 */
       
 21162 /***/ (function(module, exports, __webpack_require__) {
       
 21163 
       
 21164 "use strict";
       
 21165 
       
 21166 
       
 21167 var slice = Array.prototype.slice;
       
 21168 var isArgs = __webpack_require__(169);
       
 21169 
       
 21170 var origKeys = Object.keys;
       
 21171 var keysShim = origKeys ? function keys(o) { return origKeys(o); } : __webpack_require__(313);
       
 21172 
       
 21173 var originalKeys = Object.keys;
       
 21174 
       
 21175 keysShim.shim = function shimObjectKeys() {
       
 21176 	if (Object.keys) {
       
 21177 		var keysWorksWithArguments = (function () {
       
 21178 			// Safari 5.0 bug
       
 21179 			var args = Object.keys(arguments);
       
 21180 			return args && args.length === arguments.length;
       
 21181 		}(1, 2));
       
 21182 		if (!keysWorksWithArguments) {
       
 21183 			Object.keys = function keys(object) { // eslint-disable-line func-name-matching
       
 21184 				if (isArgs(object)) {
       
 21185 					return originalKeys(slice.call(object));
       
 21186 				}
       
 21187 				return originalKeys(object);
       
 21188 			};
       
 21189 		}
       
 21190 	} else {
       
 21191 		Object.keys = keysShim;
       
 21192 	}
       
 21193 	return Object.keys || keysShim;
       
 21194 };
       
 21195 
       
 21196 module.exports = keysShim;
       
 21197 
       
 21198 
       
 21199 /***/ }),
       
 21200 /* 313 */
       
 21201 /***/ (function(module, exports, __webpack_require__) {
       
 21202 
       
 21203 "use strict";
       
 21204 
       
 21205 
       
 21206 var keysShim;
       
 21207 if (!Object.keys) {
       
 21208 	// modified from https://github.com/es-shims/es5-shim
       
 21209 	var has = Object.prototype.hasOwnProperty;
       
 21210 	var toStr = Object.prototype.toString;
       
 21211 	var isArgs = __webpack_require__(169); // eslint-disable-line global-require
       
 21212 	var isEnumerable = Object.prototype.propertyIsEnumerable;
       
 21213 	var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');
       
 21214 	var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');
       
 21215 	var dontEnums = [
       
 21216 		'toString',
       
 21217 		'toLocaleString',
       
 21218 		'valueOf',
       
 21219 		'hasOwnProperty',
       
 21220 		'isPrototypeOf',
       
 21221 		'propertyIsEnumerable',
       
 21222 		'constructor'
       
 21223 	];
       
 21224 	var equalsConstructorPrototype = function (o) {
       
 21225 		var ctor = o.constructor;
       
 21226 		return ctor && ctor.prototype === o;
       
 21227 	};
       
 21228 	var excludedKeys = {
       
 21229 		$applicationCache: true,
       
 21230 		$console: true,
       
 21231 		$external: true,
       
 21232 		$frame: true,
       
 21233 		$frameElement: true,
       
 21234 		$frames: true,
       
 21235 		$innerHeight: true,
       
 21236 		$innerWidth: true,
       
 21237 		$onmozfullscreenchange: true,
       
 21238 		$onmozfullscreenerror: true,
       
 21239 		$outerHeight: true,
       
 21240 		$outerWidth: true,
       
 21241 		$pageXOffset: true,
       
 21242 		$pageYOffset: true,
       
 21243 		$parent: true,
       
 21244 		$scrollLeft: true,
       
 21245 		$scrollTop: true,
       
 21246 		$scrollX: true,
       
 21247 		$scrollY: true,
       
 21248 		$self: true,
       
 21249 		$webkitIndexedDB: true,
       
 21250 		$webkitStorageInfo: true,
       
 21251 		$window: true
       
 21252 	};
       
 21253 	var hasAutomationEqualityBug = (function () {
       
 21254 		/* global window */
       
 21255 		if (typeof window === 'undefined') { return false; }
       
 21256 		for (var k in window) {
       
 21257 			try {
       
 21258 				if (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {
       
 21259 					try {
       
 21260 						equalsConstructorPrototype(window[k]);
       
 21261 					} catch (e) {
       
 21262 						return true;
       
 21263 					}
       
 21264 				}
       
 21265 			} catch (e) {
       
 21266 				return true;
       
 21267 			}
       
 21268 		}
       
 21269 		return false;
       
 21270 	}());
       
 21271 	var equalsConstructorPrototypeIfNotBuggy = function (o) {
       
 21272 		/* global window */
       
 21273 		if (typeof window === 'undefined' || !hasAutomationEqualityBug) {
       
 21274 			return equalsConstructorPrototype(o);
       
 21275 		}
       
 21276 		try {
       
 21277 			return equalsConstructorPrototype(o);
       
 21278 		} catch (e) {
       
 21279 			return false;
       
 21280 		}
       
 21281 	};
       
 21282 
       
 21283 	keysShim = function keys(object) {
       
 21284 		var isObject = object !== null && typeof object === 'object';
       
 21285 		var isFunction = toStr.call(object) === '[object Function]';
       
 21286 		var isArguments = isArgs(object);
       
 21287 		var isString = isObject && toStr.call(object) === '[object String]';
       
 21288 		var theKeys = [];
       
 21289 
       
 21290 		if (!isObject && !isFunction && !isArguments) {
       
 21291 			throw new TypeError('Object.keys called on a non-object');
       
 21292 		}
       
 21293 
       
 21294 		var skipProto = hasProtoEnumBug && isFunction;
       
 21295 		if (isString && object.length > 0 && !has.call(object, 0)) {
       
 21296 			for (var i = 0; i < object.length; ++i) {
       
 21297 				theKeys.push(String(i));
       
 21298 			}
       
 21299 		}
       
 21300 
       
 21301 		if (isArguments && object.length > 0) {
       
 21302 			for (var j = 0; j < object.length; ++j) {
       
 21303 				theKeys.push(String(j));
       
 21304 			}
       
 21305 		} else {
       
 21306 			for (var name in object) {
       
 21307 				if (!(skipProto && name === 'prototype') && has.call(object, name)) {
       
 21308 					theKeys.push(String(name));
       
 21309 				}
       
 21310 			}
       
 21311 		}
       
 21312 
       
 21313 		if (hasDontEnumBug) {
       
 21314 			var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
       
 21315 
       
 21316 			for (var k = 0; k < dontEnums.length; ++k) {
       
 21317 				if (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {
       
 21318 					theKeys.push(dontEnums[k]);
       
 21319 				}
       
 21320 			}
       
 21321 		}
       
 21322 		return theKeys;
       
 21323 	};
       
 21324 }
       
 21325 module.exports = keysShim;
       
 21326 
       
 21327 
       
 21328 /***/ }),
       
 21329 /* 314 */
       
 21330 /***/ (function(module, exports, __webpack_require__) {
       
 21331 
       
 21332 "use strict";
       
 21333 
       
 21334 
       
 21335 var define = __webpack_require__(168);
       
 21336 var getPolyfill = __webpack_require__(171);
       
 21337 
       
 21338 module.exports = function shimContains() {
       
 21339 	var polyfill = getPolyfill();
       
 21340 	if (typeof document !== 'undefined') {
       
 21341 		define(
       
 21342 			document,
       
 21343 			{ contains: polyfill },
       
 21344 			{ contains: function () { return document.contains !== polyfill; } }
       
 21345 		);
       
 21346 		if (typeof Element !== 'undefined') {
       
 21347 			define(
       
 21348 				Element.prototype,
       
 21349 				{ contains: polyfill },
       
 21350 				{ contains: function () { return Element.prototype.contains !== polyfill; } }
       
 21351 			);
       
 21352 		}
       
 21353 	}
       
 21354 	return polyfill;
       
 21355 };
       
 21356 
       
 21357 
       
 21358 /***/ }),
       
 21359 /* 315 */
       
 21360 /***/ (function(module, exports, __webpack_require__) {
       
 21361 
       
 21362 var isObject = __webpack_require__(128),
       
 21363     now = __webpack_require__(316),
       
 21364     toNumber = __webpack_require__(318);
       
 21365 
       
 21366 /** Error message constants. */
       
 21367 var FUNC_ERROR_TEXT = 'Expected a function';
       
 21368 
       
 21369 /* Built-in method references for those with the same name as other `lodash` methods. */
       
 21370 var nativeMax = Math.max,
       
 21371     nativeMin = Math.min;
       
 21372 
       
 21373 /**
       
 21374  * Creates a debounced function that delays invoking `func` until after `wait`
       
 21375  * milliseconds have elapsed since the last time the debounced function was
       
 21376  * invoked. The debounced function comes with a `cancel` method to cancel
       
 21377  * delayed `func` invocations and a `flush` method to immediately invoke them.
       
 21378  * Provide `options` to indicate whether `func` should be invoked on the
       
 21379  * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
       
 21380  * with the last arguments provided to the debounced function. Subsequent
       
 21381  * calls to the debounced function return the result of the last `func`
       
 21382  * invocation.
       
 21383  *
       
 21384  * **Note:** If `leading` and `trailing` options are `true`, `func` is
       
 21385  * invoked on the trailing edge of the timeout only if the debounced function
       
 21386  * is invoked more than once during the `wait` timeout.
       
 21387  *
       
 21388  * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
       
 21389  * until to the next tick, similar to `setTimeout` with a timeout of `0`.
       
 21390  *
       
 21391  * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
       
 21392  * for details over the differences between `_.debounce` and `_.throttle`.
       
 21393  *
       
 21394  * @static
       
 21395  * @memberOf _
       
 21396  * @since 0.1.0
       
 21397  * @category Function
       
 21398  * @param {Function} func The function to debounce.
       
 21399  * @param {number} [wait=0] The number of milliseconds to delay.
       
 21400  * @param {Object} [options={}] The options object.
       
 21401  * @param {boolean} [options.leading=false]
       
 21402  *  Specify invoking on the leading edge of the timeout.
       
 21403  * @param {number} [options.maxWait]
       
 21404  *  The maximum time `func` is allowed to be delayed before it's invoked.
       
 21405  * @param {boolean} [options.trailing=true]
       
 21406  *  Specify invoking on the trailing edge of the timeout.
       
 21407  * @returns {Function} Returns the new debounced function.
       
 21408  * @example
       
 21409  *
       
 21410  * // Avoid costly calculations while the window size is in flux.
       
 21411  * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
       
 21412  *
       
 21413  * // Invoke `sendMail` when clicked, debouncing subsequent calls.
       
 21414  * jQuery(element).on('click', _.debounce(sendMail, 300, {
       
 21415  *   'leading': true,
       
 21416  *   'trailing': false
       
 21417  * }));
       
 21418  *
       
 21419  * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
       
 21420  * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
       
 21421  * var source = new EventSource('/stream');
       
 21422  * jQuery(source).on('message', debounced);
       
 21423  *
       
 21424  * // Cancel the trailing debounced invocation.
       
 21425  * jQuery(window).on('popstate', debounced.cancel);
       
 21426  */
       
 21427 function debounce(func, wait, options) {
       
 21428   var lastArgs,
       
 21429       lastThis,
       
 21430       maxWait,
       
 21431       result,
       
 21432       timerId,
       
 21433       lastCallTime,
       
 21434       lastInvokeTime = 0,
       
 21435       leading = false,
       
 21436       maxing = false,
       
 21437       trailing = true;
       
 21438 
       
 21439   if (typeof func != 'function') {
       
 21440     throw new TypeError(FUNC_ERROR_TEXT);
       
 21441   }
       
 21442   wait = toNumber(wait) || 0;
       
 21443   if (isObject(options)) {
       
 21444     leading = !!options.leading;
       
 21445     maxing = 'maxWait' in options;
       
 21446     maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
       
 21447     trailing = 'trailing' in options ? !!options.trailing : trailing;
       
 21448   }
       
 21449 
       
 21450   function invokeFunc(time) {
       
 21451     var args = lastArgs,
       
 21452         thisArg = lastThis;
       
 21453 
       
 21454     lastArgs = lastThis = undefined;
       
 21455     lastInvokeTime = time;
       
 21456     result = func.apply(thisArg, args);
       
 21457     return result;
       
 21458   }
       
 21459 
       
 21460   function leadingEdge(time) {
       
 21461     // Reset any `maxWait` timer.
       
 21462     lastInvokeTime = time;
       
 21463     // Start the timer for the trailing edge.
       
 21464     timerId = setTimeout(timerExpired, wait);
       
 21465     // Invoke the leading edge.
       
 21466     return leading ? invokeFunc(time) : result;
       
 21467   }
       
 21468 
       
 21469   function remainingWait(time) {
       
 21470     var timeSinceLastCall = time - lastCallTime,
       
 21471         timeSinceLastInvoke = time - lastInvokeTime,
       
 21472         timeWaiting = wait - timeSinceLastCall;
       
 21473 
       
 21474     return maxing
       
 21475       ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
       
 21476       : timeWaiting;
       
 21477   }
       
 21478 
       
 21479   function shouldInvoke(time) {
       
 21480     var timeSinceLastCall = time - lastCallTime,
       
 21481         timeSinceLastInvoke = time - lastInvokeTime;
       
 21482 
       
 21483     // Either this is the first call, activity has stopped and we're at the
       
 21484     // trailing edge, the system time has gone backwards and we're treating
       
 21485     // it as the trailing edge, or we've hit the `maxWait` limit.
       
 21486     return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
       
 21487       (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
       
 21488   }
       
 21489 
       
 21490   function timerExpired() {
       
 21491     var time = now();
       
 21492     if (shouldInvoke(time)) {
       
 21493       return trailingEdge(time);
       
 21494     }
       
 21495     // Restart the timer.
       
 21496     timerId = setTimeout(timerExpired, remainingWait(time));
       
 21497   }
       
 21498 
       
 21499   function trailingEdge(time) {
       
 21500     timerId = undefined;
       
 21501 
       
 21502     // Only invoke if we have `lastArgs` which means `func` has been
       
 21503     // debounced at least once.
       
 21504     if (trailing && lastArgs) {
       
 21505       return invokeFunc(time);
       
 21506     }
       
 21507     lastArgs = lastThis = undefined;
       
 21508     return result;
       
 21509   }
       
 21510 
       
 21511   function cancel() {
       
 21512     if (timerId !== undefined) {
       
 21513       clearTimeout(timerId);
       
 21514     }
       
 21515     lastInvokeTime = 0;
       
 21516     lastArgs = lastCallTime = lastThis = timerId = undefined;
       
 21517   }
       
 21518 
       
 21519   function flush() {
       
 21520     return timerId === undefined ? result : trailingEdge(now());
       
 21521   }
       
 21522 
       
 21523   function debounced() {
       
 21524     var time = now(),
       
 21525         isInvoking = shouldInvoke(time);
       
 21526 
       
 21527     lastArgs = arguments;
       
 21528     lastThis = this;
       
 21529     lastCallTime = time;
       
 21530 
       
 21531     if (isInvoking) {
       
 21532       if (timerId === undefined) {
       
 21533         return leadingEdge(lastCallTime);
       
 21534       }
       
 21535       if (maxing) {
       
 21536         // Handle invocations in a tight loop.
       
 21537         timerId = setTimeout(timerExpired, wait);
       
 21538         return invokeFunc(lastCallTime);
       
 21539       }
       
 21540     }
       
 21541     if (timerId === undefined) {
       
 21542       timerId = setTimeout(timerExpired, wait);
       
 21543     }
       
 21544     return result;
       
 21545   }
       
 21546   debounced.cancel = cancel;
       
 21547   debounced.flush = flush;
       
 21548   return debounced;
       
 21549 }
       
 21550 
       
 21551 module.exports = debounce;
       
 21552 
       
 21553 
       
 21554 /***/ }),
       
 21555 /* 316 */
       
 21556 /***/ (function(module, exports, __webpack_require__) {
       
 21557 
       
 21558 var root = __webpack_require__(183);
       
 21559 
       
 21560 /**
       
 21561  * Gets the timestamp of the number of milliseconds that have elapsed since
       
 21562  * the Unix epoch (1 January 1970 00:00:00 UTC).
       
 21563  *
       
 21564  * @static
       
 21565  * @memberOf _
       
 21566  * @since 2.4.0
       
 21567  * @category Date
       
 21568  * @returns {number} Returns the timestamp.
       
 21569  * @example
       
 21570  *
       
 21571  * _.defer(function(stamp) {
       
 21572  *   console.log(_.now() - stamp);
       
 21573  * }, _.now());
       
 21574  * // => Logs the number of milliseconds it took for the deferred invocation.
       
 21575  */
       
 21576 var now = function() {
       
 21577   return root.Date.now();
       
 21578 };
       
 21579 
       
 21580 module.exports = now;
       
 21581 
       
 21582 
       
 21583 /***/ }),
       
 21584 /* 317 */
       
 21585 /***/ (function(module, exports, __webpack_require__) {
       
 21586 
       
 21587 /* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
       
 21588 var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
       
 21589 
       
 21590 module.exports = freeGlobal;
       
 21591 
       
 21592 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(59)))
       
 21593 
       
 21594 /***/ }),
       
 21595 /* 318 */
       
 21596 /***/ (function(module, exports, __webpack_require__) {
       
 21597 
       
 21598 var isObject = __webpack_require__(128),
       
 21599     isSymbol = __webpack_require__(319);
       
 21600 
       
 21601 /** Used as references for various `Number` constants. */
       
 21602 var NAN = 0 / 0;
       
 21603 
       
 21604 /** Used to match leading and trailing whitespace. */
       
 21605 var reTrim = /^\s+|\s+$/g;
       
 21606 
       
 21607 /** Used to detect bad signed hexadecimal string values. */
       
 21608 var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
       
 21609 
       
 21610 /** Used to detect binary string values. */
       
 21611 var reIsBinary = /^0b[01]+$/i;
       
 21612 
       
 21613 /** Used to detect octal string values. */
       
 21614 var reIsOctal = /^0o[0-7]+$/i;
       
 21615 
       
 21616 /** Built-in method references without a dependency on `root`. */
       
 21617 var freeParseInt = parseInt;
       
 21618 
       
 21619 /**
       
 21620  * Converts `value` to a number.
       
 21621  *
       
 21622  * @static
       
 21623  * @memberOf _
       
 21624  * @since 4.0.0
       
 21625  * @category Lang
       
 21626  * @param {*} value The value to process.
       
 21627  * @returns {number} Returns the number.
       
 21628  * @example
       
 21629  *
       
 21630  * _.toNumber(3.2);
       
 21631  * // => 3.2
       
 21632  *
       
 21633  * _.toNumber(Number.MIN_VALUE);
       
 21634  * // => 5e-324
       
 21635  *
       
 21636  * _.toNumber(Infinity);
       
 21637  * // => Infinity
       
 21638  *
       
 21639  * _.toNumber('3.2');
       
 21640  * // => 3.2
       
 21641  */
       
 21642 function toNumber(value) {
       
 21643   if (typeof value == 'number') {
       
 21644     return value;
       
 21645   }
       
 21646   if (isSymbol(value)) {
       
 21647     return NAN;
       
 21648   }
       
 21649   if (isObject(value)) {
       
 21650     var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
       
 21651     value = isObject(other) ? (other + '') : other;
       
 21652   }
       
 21653   if (typeof value != 'string') {
       
 21654     return value === 0 ? value : +value;
       
 21655   }
       
 21656   value = value.replace(reTrim, '');
       
 21657   var isBinary = reIsBinary.test(value);
       
 21658   return (isBinary || reIsOctal.test(value))
       
 21659     ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
       
 21660     : (reIsBadHex.test(value) ? NAN : +value);
       
 21661 }
       
 21662 
       
 21663 module.exports = toNumber;
       
 21664 
       
 21665 
       
 21666 /***/ }),
       
 21667 /* 319 */
       
 21668 /***/ (function(module, exports, __webpack_require__) {
       
 21669 
       
 21670 var baseGetTag = __webpack_require__(320),
       
 21671     isObjectLike = __webpack_require__(323);
       
 21672 
       
 21673 /** `Object#toString` result references. */
       
 21674 var symbolTag = '[object Symbol]';
       
 21675 
       
 21676 /**
       
 21677  * Checks if `value` is classified as a `Symbol` primitive or object.
       
 21678  *
       
 21679  * @static
       
 21680  * @memberOf _
       
 21681  * @since 4.0.0
       
 21682  * @category Lang
       
 21683  * @param {*} value The value to check.
       
 21684  * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
       
 21685  * @example
       
 21686  *
       
 21687  * _.isSymbol(Symbol.iterator);
       
 21688  * // => true
       
 21689  *
       
 21690  * _.isSymbol('abc');
       
 21691  * // => false
       
 21692  */
       
 21693 function isSymbol(value) {
       
 21694   return typeof value == 'symbol' ||
       
 21695     (isObjectLike(value) && baseGetTag(value) == symbolTag);
       
 21696 }
       
 21697 
       
 21698 module.exports = isSymbol;
       
 21699 
       
 21700 
       
 21701 /***/ }),
       
 21702 /* 320 */
       
 21703 /***/ (function(module, exports, __webpack_require__) {
       
 21704 
       
 21705 var Symbol = __webpack_require__(184),
       
 21706     getRawTag = __webpack_require__(321),
       
 21707     objectToString = __webpack_require__(322);
       
 21708 
       
 21709 /** `Object#toString` result references. */
       
 21710 var nullTag = '[object Null]',
       
 21711     undefinedTag = '[object Undefined]';
       
 21712 
       
 21713 /** Built-in value references. */
       
 21714 var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
       
 21715 
       
 21716 /**
       
 21717  * The base implementation of `getTag` without fallbacks for buggy environments.
       
 21718  *
       
 21719  * @private
       
 21720  * @param {*} value The value to query.
       
 21721  * @returns {string} Returns the `toStringTag`.
       
 21722  */
       
 21723 function baseGetTag(value) {
       
 21724   if (value == null) {
       
 21725     return value === undefined ? undefinedTag : nullTag;
       
 21726   }
       
 21727   return (symToStringTag && symToStringTag in Object(value))
       
 21728     ? getRawTag(value)
       
 21729     : objectToString(value);
       
 21730 }
       
 21731 
       
 21732 module.exports = baseGetTag;
       
 21733 
       
 21734 
       
 21735 /***/ }),
       
 21736 /* 321 */
       
 21737 /***/ (function(module, exports, __webpack_require__) {
       
 21738 
       
 21739 var Symbol = __webpack_require__(184);
       
 21740 
       
 21741 /** Used for built-in method references. */
       
 21742 var objectProto = Object.prototype;
       
 21743 
       
 21744 /** Used to check objects for own properties. */
       
 21745 var hasOwnProperty = objectProto.hasOwnProperty;
       
 21746 
       
 21747 /**
       
 21748  * Used to resolve the
       
 21749  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
       
 21750  * of values.
       
 21751  */
       
 21752 var nativeObjectToString = objectProto.toString;
       
 21753 
       
 21754 /** Built-in value references. */
       
 21755 var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
       
 21756 
       
 21757 /**
       
 21758  * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
       
 21759  *
       
 21760  * @private
       
 21761  * @param {*} value The value to query.
       
 21762  * @returns {string} Returns the raw `toStringTag`.
       
 21763  */
       
 21764 function getRawTag(value) {
       
 21765   var isOwn = hasOwnProperty.call(value, symToStringTag),
       
 21766       tag = value[symToStringTag];
       
 21767 
       
 21768   try {
       
 21769     value[symToStringTag] = undefined;
       
 21770     var unmasked = true;
       
 21771   } catch (e) {}
       
 21772 
       
 21773   var result = nativeObjectToString.call(value);
       
 21774   if (unmasked) {
       
 21775     if (isOwn) {
       
 21776       value[symToStringTag] = tag;
       
 21777     } else {
       
 21778       delete value[symToStringTag];
       
 21779     }
       
 21780   }
       
 21781   return result;
       
 21782 }
       
 21783 
       
 21784 module.exports = getRawTag;
       
 21785 
       
 21786 
       
 21787 /***/ }),
       
 21788 /* 322 */
       
 21789 /***/ (function(module, exports) {
       
 21790 
       
 21791 /** Used for built-in method references. */
       
 21792 var objectProto = Object.prototype;
       
 21793 
       
 21794 /**
       
 21795  * Used to resolve the
       
 21796  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
       
 21797  * of values.
       
 21798  */
       
 21799 var nativeObjectToString = objectProto.toString;
       
 21800 
       
 21801 /**
       
 21802  * Converts `value` to a string using `Object.prototype.toString`.
       
 21803  *
       
 21804  * @private
       
 21805  * @param {*} value The value to convert.
       
 21806  * @returns {string} Returns the converted string.
       
 21807  */
       
 21808 function objectToString(value) {
       
 21809   return nativeObjectToString.call(value);
       
 21810 }
       
 21811 
       
 21812 module.exports = objectToString;
       
 21813 
       
 21814 
       
 21815 /***/ }),
       
 21816 /* 323 */
       
 21817 /***/ (function(module, exports) {
       
 21818 
       
 21819 /**
       
 21820  * Checks if `value` is object-like. A value is object-like if it's not `null`
       
 21821  * and has a `typeof` result of "object".
       
 21822  *
       
 21823  * @static
       
 21824  * @memberOf _
       
 21825  * @since 4.0.0
       
 21826  * @category Lang
       
 21827  * @param {*} value The value to check.
       
 21828  * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
       
 21829  * @example
       
 21830  *
       
 21831  * _.isObjectLike({});
       
 21832  * // => true
       
 21833  *
       
 21834  * _.isObjectLike([1, 2, 3]);
       
 21835  * // => true
       
 21836  *
       
 21837  * _.isObjectLike(_.noop);
       
 21838  * // => false
       
 21839  *
       
 21840  * _.isObjectLike(null);
       
 21841  * // => false
       
 21842  */
       
 21843 function isObjectLike(value) {
       
 21844   return value != null && typeof value == 'object';
       
 21845 }
       
 21846 
       
 21847 module.exports = isObjectLike;
       
 21848 
       
 21849 
       
 21850 /***/ }),
       
 21851 /* 324 */
       
 21852 /***/ (function(module, exports, __webpack_require__) {
       
 21853 
       
 21854 "use strict";
       
 21855 
       
 21856 
       
 21857 var getPolyfill = __webpack_require__(191);
       
 21858 var define = __webpack_require__(73);
       
 21859 
       
 21860 module.exports = function shimValues() {
       
 21861 	var polyfill = getPolyfill();
       
 21862 	define(Object, { values: polyfill }, {
       
 21863 		values: function testValues() {
       
 21864 			return Object.values !== polyfill;
       
 21865 		}
       
 21866 	});
       
 21867 	return polyfill;
       
 21868 };
       
 21869 
       
 21870 
       
 21871 /***/ }),
       
 21872 /* 325 */
       
 21873 /***/ (function(module, exports, __webpack_require__) {
       
 21874 
       
 21875 "use strict";
       
 21876 
       
 21877 
       
 21878 Object.defineProperty(exports, "__esModule", {
       
 21879   value: true
       
 21880 });
       
 21881 exports["default"] = getSelectedDateOffset;
       
 21882 var defaultModifier = function defaultModifier(day) {
       
 21883   return day;
       
 21884 };
       
 21885 
       
 21886 function getSelectedDateOffset(fn, day) {
       
 21887   var modifier = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : defaultModifier;
       
 21888 
       
 21889   if (!fn) return day;
       
 21890   return modifier(fn(day.clone()));
       
 21891 }
       
 21892 
       
 21893 /***/ }),
       
 21894 /* 326 */
       
 21895 /***/ (function(module, exports, __webpack_require__) {
       
 21896 
       
 21897 "use strict";
       
 21898 
       
 21899 
       
 21900 Object.defineProperty(exports, "__esModule", {
       
 21901   value: true
       
 21902 });
       
 21903 
       
 21904 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 21905 
       
 21906 var _object = __webpack_require__(46);
       
 21907 
       
 21908 var _object2 = _interopRequireDefault(_object);
       
 21909 
       
 21910 var _react = __webpack_require__(27);
       
 21911 
       
 21912 var _react2 = _interopRequireDefault(_react);
       
 21913 
       
 21914 var _propTypes = __webpack_require__(31);
       
 21915 
       
 21916 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 21917 
       
 21918 var _airbnbPropTypes = __webpack_require__(43);
       
 21919 
       
 21920 var _reactWithStyles = __webpack_require__(56);
       
 21921 
       
 21922 var _defaultPhrases = __webpack_require__(47);
       
 21923 
       
 21924 var _getPhrasePropTypes = __webpack_require__(51);
       
 21925 
       
 21926 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 21927 
       
 21928 var _LeftArrow = __webpack_require__(186);
       
 21929 
       
 21930 var _LeftArrow2 = _interopRequireDefault(_LeftArrow);
       
 21931 
       
 21932 var _RightArrow = __webpack_require__(185);
       
 21933 
       
 21934 var _RightArrow2 = _interopRequireDefault(_RightArrow);
       
 21935 
       
 21936 var _ChevronUp = __webpack_require__(327);
       
 21937 
       
 21938 var _ChevronUp2 = _interopRequireDefault(_ChevronUp);
       
 21939 
       
 21940 var _ChevronDown = __webpack_require__(328);
       
 21941 
       
 21942 var _ChevronDown2 = _interopRequireDefault(_ChevronDown);
       
 21943 
       
 21944 var _ScrollableOrientationShape = __webpack_require__(81);
       
 21945 
       
 21946 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 21947 
       
 21948 var _constants = __webpack_require__(39);
       
 21949 
       
 21950 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 21951 
       
 21952 function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
       
 21953 
       
 21954 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 21955   navPrev: _propTypes2['default'].node,
       
 21956   navNext: _propTypes2['default'].node,
       
 21957   orientation: _ScrollableOrientationShape2['default'],
       
 21958 
       
 21959   onPrevMonthClick: _propTypes2['default'].func,
       
 21960   onNextMonthClick: _propTypes2['default'].func,
       
 21961 
       
 21962   // internationalization
       
 21963   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerNavigationPhrases)),
       
 21964 
       
 21965   isRTL: _propTypes2['default'].bool
       
 21966 }));
       
 21967 
       
 21968 var defaultProps = {
       
 21969   navPrev: null,
       
 21970   navNext: null,
       
 21971   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 21972 
       
 21973   onPrevMonthClick: function () {
       
 21974     function onPrevMonthClick() {}
       
 21975 
       
 21976     return onPrevMonthClick;
       
 21977   }(),
       
 21978   onNextMonthClick: function () {
       
 21979     function onNextMonthClick() {}
       
 21980 
       
 21981     return onNextMonthClick;
       
 21982   }(),
       
 21983 
       
 21984 
       
 21985   // internationalization
       
 21986   phrases: _defaultPhrases.DayPickerNavigationPhrases,
       
 21987   isRTL: false
       
 21988 };
       
 21989 
       
 21990 function DayPickerNavigation(_ref) {
       
 21991   var navPrev = _ref.navPrev,
       
 21992       navNext = _ref.navNext,
       
 21993       onPrevMonthClick = _ref.onPrevMonthClick,
       
 21994       onNextMonthClick = _ref.onNextMonthClick,
       
 21995       orientation = _ref.orientation,
       
 21996       phrases = _ref.phrases,
       
 21997       isRTL = _ref.isRTL,
       
 21998       styles = _ref.styles;
       
 21999 
       
 22000   var isHorizontal = orientation === _constants.HORIZONTAL_ORIENTATION;
       
 22001   var isVertical = orientation !== _constants.HORIZONTAL_ORIENTATION;
       
 22002   var isVerticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
 22003 
       
 22004   var navPrevIcon = navPrev;
       
 22005   var navNextIcon = navNext;
       
 22006   var isDefaultNavPrev = false;
       
 22007   var isDefaultNavNext = false;
       
 22008   if (!navPrevIcon) {
       
 22009     isDefaultNavPrev = true;
       
 22010     var Icon = isVertical ? _ChevronUp2['default'] : _LeftArrow2['default'];
       
 22011     if (isRTL && !isVertical) {
       
 22012       Icon = _RightArrow2['default'];
       
 22013     }
       
 22014     navPrevIcon = _react2['default'].createElement(Icon, (0, _reactWithStyles.css)(isHorizontal && styles.DayPickerNavigation_svg__horizontal, isVertical && styles.DayPickerNavigation_svg__vertical));
       
 22015   }
       
 22016 
       
 22017   if (!navNextIcon) {
       
 22018     isDefaultNavNext = true;
       
 22019     var _Icon = isVertical ? _ChevronDown2['default'] : _RightArrow2['default'];
       
 22020     if (isRTL && !isVertical) {
       
 22021       _Icon = _LeftArrow2['default'];
       
 22022     }
       
 22023     navNextIcon = _react2['default'].createElement(_Icon, (0, _reactWithStyles.css)(isHorizontal && styles.DayPickerNavigation_svg__horizontal, isVertical && styles.DayPickerNavigation_svg__vertical));
       
 22024   }
       
 22025 
       
 22026   var isDefaultNav = isVerticalScrollable ? isDefaultNavNext : isDefaultNavNext || isDefaultNavPrev;
       
 22027 
       
 22028   return _react2['default'].createElement(
       
 22029     'div',
       
 22030     _reactWithStyles.css.apply(undefined, [styles.DayPickerNavigation, isHorizontal && styles.DayPickerNavigation__horizontal].concat(_toConsumableArray(isVertical && [styles.DayPickerNavigation__vertical, isDefaultNav && styles.DayPickerNavigation__verticalDefault]), _toConsumableArray(isVerticalScrollable && [styles.DayPickerNavigation__verticalScrollable, isDefaultNav && styles.DayPickerNavigation__verticalScrollableDefault]))),
       
 22031     !isVerticalScrollable && _react2['default'].createElement(
       
 22032       'div',
       
 22033       _extends({
       
 22034         role: 'button',
       
 22035         tabIndex: '0'
       
 22036       }, _reactWithStyles.css.apply(undefined, [styles.DayPickerNavigation_button, isDefaultNavPrev && styles.DayPickerNavigation_button__default].concat(_toConsumableArray(isHorizontal && [styles.DayPickerNavigation_button__horizontal].concat(_toConsumableArray(isDefaultNavPrev && [styles.DayPickerNavigation_button__horizontalDefault, !isRTL && styles.DayPickerNavigation_leftButton__horizontalDefault, isRTL && styles.DayPickerNavigation_rightButton__horizontalDefault]))), _toConsumableArray(isVertical && [styles.DayPickerNavigation_button__vertical].concat(_toConsumableArray(isDefaultNavPrev && [styles.DayPickerNavigation_button__verticalDefault, styles.DayPickerNavigation_prevButton__verticalDefault]))))), {
       
 22037         'aria-label': phrases.jumpToPrevMonth,
       
 22038         onClick: onPrevMonthClick,
       
 22039         onKeyUp: function () {
       
 22040           function onKeyUp(e) {
       
 22041             var key = e.key;
       
 22042 
       
 22043             if (key === 'Enter' || key === ' ') onPrevMonthClick(e);
       
 22044           }
       
 22045 
       
 22046           return onKeyUp;
       
 22047         }(),
       
 22048         onMouseUp: function () {
       
 22049           function onMouseUp(e) {
       
 22050             e.currentTarget.blur();
       
 22051           }
       
 22052 
       
 22053           return onMouseUp;
       
 22054         }()
       
 22055       }),
       
 22056       navPrevIcon
       
 22057     ),
       
 22058     _react2['default'].createElement(
       
 22059       'div',
       
 22060       _extends({
       
 22061         role: 'button',
       
 22062         tabIndex: '0'
       
 22063       }, _reactWithStyles.css.apply(undefined, [styles.DayPickerNavigation_button, isDefaultNavNext && styles.DayPickerNavigation_button__default].concat(_toConsumableArray(isHorizontal && [styles.DayPickerNavigation_button__horizontal].concat(_toConsumableArray(isDefaultNavNext && [styles.DayPickerNavigation_button__horizontalDefault, isRTL && styles.DayPickerNavigation_leftButton__horizontalDefault, !isRTL && styles.DayPickerNavigation_rightButton__horizontalDefault]))), _toConsumableArray(isVertical && [styles.DayPickerNavigation_button__vertical, styles.DayPickerNavigation_nextButton__vertical].concat(_toConsumableArray(isDefaultNavNext && [styles.DayPickerNavigation_button__verticalDefault, styles.DayPickerNavigation_nextButton__verticalDefault, isVerticalScrollable && styles.DayPickerNavigation_nextButton__verticalScrollableDefault]))))), {
       
 22064         'aria-label': phrases.jumpToNextMonth,
       
 22065         onClick: onNextMonthClick,
       
 22066         onKeyUp: function () {
       
 22067           function onKeyUp(e) {
       
 22068             var key = e.key;
       
 22069 
       
 22070             if (key === 'Enter' || key === ' ') onNextMonthClick(e);
       
 22071           }
       
 22072 
       
 22073           return onKeyUp;
       
 22074         }(),
       
 22075         onMouseUp: function () {
       
 22076           function onMouseUp(e) {
       
 22077             e.currentTarget.blur();
       
 22078           }
       
 22079 
       
 22080           return onMouseUp;
       
 22081         }()
       
 22082       }),
       
 22083       navNextIcon
       
 22084     )
       
 22085   );
       
 22086 }
       
 22087 
       
 22088 DayPickerNavigation.propTypes = propTypes;
       
 22089 DayPickerNavigation.defaultProps = defaultProps;
       
 22090 
       
 22091 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 22092   var _ref2$reactDates = _ref2.reactDates,
       
 22093       color = _ref2$reactDates.color,
       
 22094       zIndex = _ref2$reactDates.zIndex;
       
 22095   return {
       
 22096     DayPickerNavigation: {
       
 22097       position: 'relative',
       
 22098       zIndex: zIndex + 2
       
 22099     },
       
 22100 
       
 22101     DayPickerNavigation__horizontal: {
       
 22102       height: 0
       
 22103     },
       
 22104 
       
 22105     DayPickerNavigation__vertical: {},
       
 22106     DayPickerNavigation__verticalScrollable: {},
       
 22107 
       
 22108     DayPickerNavigation__verticalDefault: {
       
 22109       position: 'absolute',
       
 22110       width: '100%',
       
 22111       height: 52,
       
 22112       bottom: 0,
       
 22113       left: 0
       
 22114     },
       
 22115 
       
 22116     DayPickerNavigation__verticalScrollableDefault: {
       
 22117       position: 'relative'
       
 22118     },
       
 22119 
       
 22120     DayPickerNavigation_button: {
       
 22121       cursor: 'pointer',
       
 22122       userSelect: 'none',
       
 22123       border: 0,
       
 22124       padding: 0,
       
 22125       margin: 0
       
 22126     },
       
 22127 
       
 22128     DayPickerNavigation_button__default: {
       
 22129       border: '1px solid ' + String(color.core.borderLight),
       
 22130       backgroundColor: color.background,
       
 22131       color: color.placeholderText,
       
 22132 
       
 22133       ':focus': {
       
 22134         border: '1px solid ' + String(color.core.borderMedium)
       
 22135       },
       
 22136 
       
 22137       ':hover': {
       
 22138         border: '1px solid ' + String(color.core.borderMedium)
       
 22139       },
       
 22140 
       
 22141       ':active': {
       
 22142         background: color.backgroundDark
       
 22143       }
       
 22144     },
       
 22145 
       
 22146     DayPickerNavigation_button__horizontal: {},
       
 22147 
       
 22148     DayPickerNavigation_button__horizontalDefault: {
       
 22149       position: 'absolute',
       
 22150       top: 18,
       
 22151       lineHeight: 0.78,
       
 22152       borderRadius: 3,
       
 22153       padding: '6px 9px'
       
 22154     },
       
 22155 
       
 22156     DayPickerNavigation_leftButton__horizontalDefault: {
       
 22157       left: 22
       
 22158     },
       
 22159 
       
 22160     DayPickerNavigation_rightButton__horizontalDefault: {
       
 22161       right: 22
       
 22162     },
       
 22163 
       
 22164     DayPickerNavigation_button__vertical: {},
       
 22165 
       
 22166     DayPickerNavigation_button__verticalDefault: {
       
 22167       padding: 5,
       
 22168       background: color.background,
       
 22169       boxShadow: '0 0 5px 2px rgba(0, 0, 0, 0.1)',
       
 22170       position: 'relative',
       
 22171       display: 'inline-block',
       
 22172       height: '100%',
       
 22173       width: '50%'
       
 22174     },
       
 22175 
       
 22176     DayPickerNavigation_prevButton__verticalDefault: {},
       
 22177 
       
 22178     DayPickerNavigation_nextButton__verticalDefault: {
       
 22179       borderLeft: 0
       
 22180     },
       
 22181 
       
 22182     DayPickerNavigation_nextButton__verticalScrollableDefault: {
       
 22183       width: '100%'
       
 22184     },
       
 22185 
       
 22186     DayPickerNavigation_svg__horizontal: {
       
 22187       height: 19,
       
 22188       width: 19,
       
 22189       fill: color.core.grayLight,
       
 22190       display: 'block'
       
 22191     },
       
 22192 
       
 22193     DayPickerNavigation_svg__vertical: {
       
 22194       height: 42,
       
 22195       width: 42,
       
 22196       fill: color.text,
       
 22197       display: 'block'
       
 22198     }
       
 22199   };
       
 22200 })(DayPickerNavigation);
       
 22201 
       
 22202 /***/ }),
       
 22203 /* 327 */
       
 22204 /***/ (function(module, exports, __webpack_require__) {
       
 22205 
       
 22206 "use strict";
       
 22207 
       
 22208 
       
 22209 Object.defineProperty(exports, "__esModule", {
       
 22210   value: true
       
 22211 });
       
 22212 
       
 22213 var _react = __webpack_require__(27);
       
 22214 
       
 22215 var _react2 = _interopRequireDefault(_react);
       
 22216 
       
 22217 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 22218 
       
 22219 var ChevronUp = function () {
       
 22220   function ChevronUp(props) {
       
 22221     return _react2['default'].createElement(
       
 22222       'svg',
       
 22223       props,
       
 22224       _react2['default'].createElement('path', {
       
 22225         d: 'M32.1 712.6l453.2-452.2c11-11 21-11 32 0l453.2 452.2c4 5 6 10 6 16 0 13-10 23-22 23-7 0-12-2-16-7L501.3 308.5 64.1 744.7c-4 5-9 7-15 7-7 0-12-2-17-7-9-11-9-21 0-32.1z'
       
 22226       })
       
 22227     );
       
 22228   }
       
 22229 
       
 22230   return ChevronUp;
       
 22231 }();
       
 22232 
       
 22233 ChevronUp.defaultProps = {
       
 22234   viewBox: '0 0 1000 1000'
       
 22235 };
       
 22236 exports['default'] = ChevronUp;
       
 22237 
       
 22238 /***/ }),
       
 22239 /* 328 */
       
 22240 /***/ (function(module, exports, __webpack_require__) {
       
 22241 
       
 22242 "use strict";
       
 22243 
       
 22244 
       
 22245 Object.defineProperty(exports, "__esModule", {
       
 22246   value: true
       
 22247 });
       
 22248 
       
 22249 var _react = __webpack_require__(27);
       
 22250 
       
 22251 var _react2 = _interopRequireDefault(_react);
       
 22252 
       
 22253 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 22254 
       
 22255 var ChevronDown = function () {
       
 22256   function ChevronDown(props) {
       
 22257     return _react2['default'].createElement(
       
 22258       'svg',
       
 22259       props,
       
 22260       _react2['default'].createElement('path', {
       
 22261         d: 'M967.5 288.5L514.3 740.7c-11 11-21 11-32 0L29.1 288.5c-4-5-6-11-6-16 0-13 10-23 23-23 6 0 11 2 15 7l437.2 436.2 437.2-436.2c4-5 9-7 16-7 6 0 11 2 16 7 9 10.9 9 21 0 32z'
       
 22262       })
       
 22263     );
       
 22264   }
       
 22265 
       
 22266   return ChevronDown;
       
 22267 }();
       
 22268 
       
 22269 ChevronDown.defaultProps = {
       
 22270   viewBox: '0 0 1000 1000'
       
 22271 };
       
 22272 exports['default'] = ChevronDown;
       
 22273 
       
 22274 /***/ }),
       
 22275 /* 329 */
       
 22276 /***/ (function(module, exports, __webpack_require__) {
       
 22277 
       
 22278 "use strict";
       
 22279 
       
 22280 
       
 22281 Object.defineProperty(exports, "__esModule", {
       
 22282   value: true
       
 22283 });
       
 22284 exports.BOTTOM_RIGHT = exports.TOP_RIGHT = exports.TOP_LEFT = undefined;
       
 22285 
       
 22286 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 22287 
       
 22288 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 22289 
       
 22290 var _object = __webpack_require__(46);
       
 22291 
       
 22292 var _object2 = _interopRequireDefault(_object);
       
 22293 
       
 22294 var _react = __webpack_require__(27);
       
 22295 
       
 22296 var _react2 = _interopRequireDefault(_react);
       
 22297 
       
 22298 var _propTypes = __webpack_require__(31);
       
 22299 
       
 22300 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 22301 
       
 22302 var _airbnbPropTypes = __webpack_require__(43);
       
 22303 
       
 22304 var _reactWithStyles = __webpack_require__(56);
       
 22305 
       
 22306 var _defaultPhrases = __webpack_require__(47);
       
 22307 
       
 22308 var _getPhrasePropTypes = __webpack_require__(51);
       
 22309 
       
 22310 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 22311 
       
 22312 var _KeyboardShortcutRow = __webpack_require__(330);
       
 22313 
       
 22314 var _KeyboardShortcutRow2 = _interopRequireDefault(_KeyboardShortcutRow);
       
 22315 
       
 22316 var _CloseButton = __webpack_require__(96);
       
 22317 
       
 22318 var _CloseButton2 = _interopRequireDefault(_CloseButton);
       
 22319 
       
 22320 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 22321 
       
 22322 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 22323 
       
 22324 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 22325 
       
 22326 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 22327 
       
 22328 var TOP_LEFT = exports.TOP_LEFT = 'top-left';
       
 22329 var TOP_RIGHT = exports.TOP_RIGHT = 'top-right';
       
 22330 var BOTTOM_RIGHT = exports.BOTTOM_RIGHT = 'bottom-right';
       
 22331 
       
 22332 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 22333   block: _propTypes2['default'].bool,
       
 22334   buttonLocation: _propTypes2['default'].oneOf([TOP_LEFT, TOP_RIGHT, BOTTOM_RIGHT]),
       
 22335   showKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 22336   openKeyboardShortcutsPanel: _propTypes2['default'].func,
       
 22337   closeKeyboardShortcutsPanel: _propTypes2['default'].func,
       
 22338   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerKeyboardShortcutsPhrases))
       
 22339 }));
       
 22340 
       
 22341 var defaultProps = {
       
 22342   block: false,
       
 22343   buttonLocation: BOTTOM_RIGHT,
       
 22344   showKeyboardShortcutsPanel: false,
       
 22345   openKeyboardShortcutsPanel: function () {
       
 22346     function openKeyboardShortcutsPanel() {}
       
 22347 
       
 22348     return openKeyboardShortcutsPanel;
       
 22349   }(),
       
 22350   closeKeyboardShortcutsPanel: function () {
       
 22351     function closeKeyboardShortcutsPanel() {}
       
 22352 
       
 22353     return closeKeyboardShortcutsPanel;
       
 22354   }(),
       
 22355 
       
 22356   phrases: _defaultPhrases.DayPickerKeyboardShortcutsPhrases
       
 22357 };
       
 22358 
       
 22359 function getKeyboardShortcuts(phrases) {
       
 22360   return [{
       
 22361     unicode: '↵',
       
 22362     label: phrases.enterKey,
       
 22363     action: phrases.selectFocusedDate
       
 22364   }, {
       
 22365     unicode: '←/→',
       
 22366     label: phrases.leftArrowRightArrow,
       
 22367     action: phrases.moveFocusByOneDay
       
 22368   }, {
       
 22369     unicode: '↑/↓',
       
 22370     label: phrases.upArrowDownArrow,
       
 22371     action: phrases.moveFocusByOneWeek
       
 22372   }, {
       
 22373     unicode: 'PgUp/PgDn',
       
 22374     label: phrases.pageUpPageDown,
       
 22375     action: phrases.moveFocusByOneMonth
       
 22376   }, {
       
 22377     unicode: 'Home/End',
       
 22378     label: phrases.homeEnd,
       
 22379     action: phrases.moveFocustoStartAndEndOfWeek
       
 22380   }, {
       
 22381     unicode: 'Esc',
       
 22382     label: phrases.escape,
       
 22383     action: phrases.returnFocusToInput
       
 22384   }, {
       
 22385     unicode: '?',
       
 22386     label: phrases.questionMark,
       
 22387     action: phrases.openThisPanel
       
 22388   }];
       
 22389 }
       
 22390 
       
 22391 var DayPickerKeyboardShortcuts = function (_React$Component) {
       
 22392   _inherits(DayPickerKeyboardShortcuts, _React$Component);
       
 22393 
       
 22394   function DayPickerKeyboardShortcuts() {
       
 22395     var _ref;
       
 22396 
       
 22397     _classCallCheck(this, DayPickerKeyboardShortcuts);
       
 22398 
       
 22399     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
       
 22400       args[_key] = arguments[_key];
       
 22401     }
       
 22402 
       
 22403     var _this = _possibleConstructorReturn(this, (_ref = DayPickerKeyboardShortcuts.__proto__ || Object.getPrototypeOf(DayPickerKeyboardShortcuts)).call.apply(_ref, [this].concat(args)));
       
 22404 
       
 22405     var phrases = _this.props.phrases;
       
 22406 
       
 22407     _this.keyboardShortcuts = getKeyboardShortcuts(phrases);
       
 22408 
       
 22409     _this.onShowKeyboardShortcutsButtonClick = _this.onShowKeyboardShortcutsButtonClick.bind(_this);
       
 22410     _this.setShowKeyboardShortcutsButtonRef = _this.setShowKeyboardShortcutsButtonRef.bind(_this);
       
 22411     _this.setHideKeyboardShortcutsButtonRef = _this.setHideKeyboardShortcutsButtonRef.bind(_this);
       
 22412     _this.handleFocus = _this.handleFocus.bind(_this);
       
 22413     _this.onKeyDown = _this.onKeyDown.bind(_this);
       
 22414     return _this;
       
 22415   }
       
 22416 
       
 22417   _createClass(DayPickerKeyboardShortcuts, [{
       
 22418     key: 'componentWillReceiveProps',
       
 22419     value: function () {
       
 22420       function componentWillReceiveProps(nextProps) {
       
 22421         var phrases = this.props.phrases;
       
 22422 
       
 22423         if (nextProps.phrases !== phrases) {
       
 22424           this.keyboardShortcuts = getKeyboardShortcuts(nextProps.phrases);
       
 22425         }
 20671         }
 22426       }
 20672 
 22427 
 20673         var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(finalTag) : defaultShouldForwardProp;
 22428       return componentWillReceiveProps;
 20674         var newProps = {};
 22429     }()
 20675 
 22430   }, {
 20676         for (var _key in props) {
 22431     key: 'componentDidUpdate',
 20677           if (shouldUseAs && _key === 'as') continue;
 22432     value: function () {
 20678 
 22433       function componentDidUpdate() {
 20679           if ( // $FlowFixMe
 22434         this.handleFocus();
 20680           finalShouldForwardProp(_key)) {
 22435       }
 20681             newProps[_key] = props[_key];
 22436 
       
 22437       return componentDidUpdate;
       
 22438     }()
       
 22439   }, {
       
 22440     key: 'onKeyDown',
       
 22441     value: function () {
       
 22442       function onKeyDown(e) {
       
 22443         e.stopPropagation();
       
 22444 
       
 22445         var closeKeyboardShortcutsPanel = this.props.closeKeyboardShortcutsPanel;
       
 22446         // Because the close button is the only focusable element inside of the panel, this
       
 22447         // amounts to a very basic focus trap. The user can exit the panel by "pressing" the
       
 22448         // close button or hitting escape
       
 22449 
       
 22450         switch (e.key) {
       
 22451           case 'Enter':
       
 22452           case ' ':
       
 22453           case 'Spacebar': // for older browsers
       
 22454           case 'Escape':
       
 22455             closeKeyboardShortcutsPanel();
       
 22456             break;
       
 22457 
       
 22458           // do nothing - this allows the up and down arrows continue their
       
 22459           // default behavior of scrolling the content of the Keyboard Shortcuts Panel
       
 22460           // which is needed when only a single month is shown for instance.
       
 22461           case 'ArrowUp':
       
 22462           case 'ArrowDown':
       
 22463             break;
       
 22464 
       
 22465           // completely block the rest of the keys that have functionality outside of this panel
       
 22466           case 'Tab':
       
 22467           case 'Home':
       
 22468           case 'End':
       
 22469           case 'PageUp':
       
 22470           case 'PageDown':
       
 22471           case 'ArrowLeft':
       
 22472           case 'ArrowRight':
       
 22473             e.preventDefault();
       
 22474             break;
       
 22475 
       
 22476           default:
       
 22477             break;
       
 22478         }
       
 22479       }
       
 22480 
       
 22481       return onKeyDown;
       
 22482     }()
       
 22483   }, {
       
 22484     key: 'onShowKeyboardShortcutsButtonClick',
       
 22485     value: function () {
       
 22486       function onShowKeyboardShortcutsButtonClick() {
       
 22487         var _this2 = this;
       
 22488 
       
 22489         var openKeyboardShortcutsPanel = this.props.openKeyboardShortcutsPanel;
       
 22490 
       
 22491         // we want to return focus to this button after closing the keyboard shortcuts panel
       
 22492 
       
 22493         openKeyboardShortcutsPanel(function () {
       
 22494           _this2.showKeyboardShortcutsButton.focus();
       
 22495         });
       
 22496       }
       
 22497 
       
 22498       return onShowKeyboardShortcutsButtonClick;
       
 22499     }()
       
 22500   }, {
       
 22501     key: 'setShowKeyboardShortcutsButtonRef',
       
 22502     value: function () {
       
 22503       function setShowKeyboardShortcutsButtonRef(ref) {
       
 22504         this.showKeyboardShortcutsButton = ref;
       
 22505       }
       
 22506 
       
 22507       return setShowKeyboardShortcutsButtonRef;
       
 22508     }()
       
 22509   }, {
       
 22510     key: 'setHideKeyboardShortcutsButtonRef',
       
 22511     value: function () {
       
 22512       function setHideKeyboardShortcutsButtonRef(ref) {
       
 22513         this.hideKeyboardShortcutsButton = ref;
       
 22514       }
       
 22515 
       
 22516       return setHideKeyboardShortcutsButtonRef;
       
 22517     }()
       
 22518   }, {
       
 22519     key: 'handleFocus',
       
 22520     value: function () {
       
 22521       function handleFocus() {
       
 22522         if (this.hideKeyboardShortcutsButton) {
       
 22523           // automatically move focus into the dialog by moving
       
 22524           // to the only interactive element, the hide button
       
 22525           this.hideKeyboardShortcutsButton.focus();
       
 22526         }
       
 22527       }
       
 22528 
       
 22529       return handleFocus;
       
 22530     }()
       
 22531   }, {
       
 22532     key: 'render',
       
 22533     value: function () {
       
 22534       function render() {
       
 22535         var _this3 = this;
       
 22536 
       
 22537         var _props = this.props,
       
 22538             block = _props.block,
       
 22539             buttonLocation = _props.buttonLocation,
       
 22540             showKeyboardShortcutsPanel = _props.showKeyboardShortcutsPanel,
       
 22541             closeKeyboardShortcutsPanel = _props.closeKeyboardShortcutsPanel,
       
 22542             styles = _props.styles,
       
 22543             phrases = _props.phrases;
       
 22544 
       
 22545 
       
 22546         var toggleButtonText = showKeyboardShortcutsPanel ? phrases.hideKeyboardShortcutsPanel : phrases.showKeyboardShortcutsPanel;
       
 22547 
       
 22548         var bottomRight = buttonLocation === BOTTOM_RIGHT;
       
 22549         var topRight = buttonLocation === TOP_RIGHT;
       
 22550         var topLeft = buttonLocation === TOP_LEFT;
       
 22551 
       
 22552         return _react2['default'].createElement(
       
 22553           'div',
       
 22554           null,
       
 22555           _react2['default'].createElement(
       
 22556             'button',
       
 22557             _extends({
       
 22558               ref: this.setShowKeyboardShortcutsButtonRef
       
 22559             }, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_buttonReset, styles.DayPickerKeyboardShortcuts_show, bottomRight && styles.DayPickerKeyboardShortcuts_show__bottomRight, topRight && styles.DayPickerKeyboardShortcuts_show__topRight, topLeft && styles.DayPickerKeyboardShortcuts_show__topLeft), {
       
 22560               type: 'button',
       
 22561               'aria-label': toggleButtonText,
       
 22562               onClick: this.onShowKeyboardShortcutsButtonClick,
       
 22563               onKeyDown: function () {
       
 22564                 function onKeyDown(e) {
       
 22565                   if (e.key === 'Enter') {
       
 22566                     e.preventDefault();
       
 22567                   } else if (e.key === 'Space') {
       
 22568                     _this3.onShowKeyboardShortcutsButtonClick(e);
       
 22569                   }
       
 22570                 }
       
 22571 
       
 22572                 return onKeyDown;
       
 22573               }(),
       
 22574               onMouseUp: function () {
       
 22575                 function onMouseUp(e) {
       
 22576                   e.currentTarget.blur();
       
 22577                 }
       
 22578 
       
 22579                 return onMouseUp;
       
 22580               }()
       
 22581             }),
       
 22582             _react2['default'].createElement(
       
 22583               'span',
       
 22584               (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_showSpan, bottomRight && styles.DayPickerKeyboardShortcuts_showSpan__bottomRight, topRight && styles.DayPickerKeyboardShortcuts_showSpan__topRight, topLeft && styles.DayPickerKeyboardShortcuts_showSpan__topLeft),
       
 22585               '?'
       
 22586             )
       
 22587           ),
       
 22588           showKeyboardShortcutsPanel && _react2['default'].createElement(
       
 22589             'div',
       
 22590             _extends({}, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_panel), {
       
 22591               role: 'dialog',
       
 22592               'aria-labelledby': 'DayPickerKeyboardShortcuts_title',
       
 22593               'aria-describedby': 'DayPickerKeyboardShortcuts_description'
       
 22594             }),
       
 22595             _react2['default'].createElement(
       
 22596               'div',
       
 22597               _extends({}, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_title), {
       
 22598                 id: 'DayPickerKeyboardShortcuts_title'
       
 22599               }),
       
 22600               phrases.keyboardShortcuts
       
 22601             ),
       
 22602             _react2['default'].createElement(
       
 22603               'button',
       
 22604               _extends({
       
 22605                 ref: this.setHideKeyboardShortcutsButtonRef
       
 22606               }, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_buttonReset, styles.DayPickerKeyboardShortcuts_close), {
       
 22607                 type: 'button',
       
 22608                 tabIndex: '0',
       
 22609                 'aria-label': phrases.hideKeyboardShortcutsPanel,
       
 22610                 onClick: closeKeyboardShortcutsPanel,
       
 22611                 onKeyDown: this.onKeyDown
       
 22612               }),
       
 22613               _react2['default'].createElement(_CloseButton2['default'], (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_closeSvg))
       
 22614             ),
       
 22615             _react2['default'].createElement(
       
 22616               'ul',
       
 22617               _extends({}, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_list), {
       
 22618                 id: 'DayPickerKeyboardShortcuts_description'
       
 22619               }),
       
 22620               this.keyboardShortcuts.map(function (_ref2) {
       
 22621                 var unicode = _ref2.unicode,
       
 22622                     label = _ref2.label,
       
 22623                     action = _ref2.action;
       
 22624                 return _react2['default'].createElement(_KeyboardShortcutRow2['default'], {
       
 22625                   key: label,
       
 22626                   unicode: unicode,
       
 22627                   label: label,
       
 22628                   action: action,
       
 22629                   block: block
       
 22630                 });
       
 22631               })
       
 22632             )
       
 22633           )
       
 22634         );
       
 22635       }
       
 22636 
       
 22637       return render;
       
 22638     }()
       
 22639   }]);
       
 22640 
       
 22641   return DayPickerKeyboardShortcuts;
       
 22642 }(_react2['default'].Component);
       
 22643 
       
 22644 DayPickerKeyboardShortcuts.propTypes = propTypes;
       
 22645 DayPickerKeyboardShortcuts.defaultProps = defaultProps;
       
 22646 
       
 22647 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref3) {
       
 22648   var _ref3$reactDates = _ref3.reactDates,
       
 22649       color = _ref3$reactDates.color,
       
 22650       font = _ref3$reactDates.font,
       
 22651       zIndex = _ref3$reactDates.zIndex;
       
 22652   return {
       
 22653     DayPickerKeyboardShortcuts_buttonReset: {
       
 22654       background: 'none',
       
 22655       border: 0,
       
 22656       borderRadius: 0,
       
 22657       color: 'inherit',
       
 22658       font: 'inherit',
       
 22659       lineHeight: 'normal',
       
 22660       overflow: 'visible',
       
 22661       padding: 0,
       
 22662       cursor: 'pointer',
       
 22663       fontSize: font.size,
       
 22664 
       
 22665       ':active': {
       
 22666         outline: 'none'
       
 22667       }
       
 22668     },
       
 22669 
       
 22670     DayPickerKeyboardShortcuts_show: {
       
 22671       width: 22,
       
 22672       position: 'absolute',
       
 22673       zIndex: zIndex + 2
       
 22674     },
       
 22675 
       
 22676     DayPickerKeyboardShortcuts_show__bottomRight: {
       
 22677       borderTop: '26px solid transparent',
       
 22678       borderRight: '33px solid ' + String(color.core.primary),
       
 22679       bottom: 0,
       
 22680       right: 0,
       
 22681 
       
 22682       ':hover': {
       
 22683         borderRight: '33px solid ' + String(color.core.primary_dark)
       
 22684       }
       
 22685     },
       
 22686 
       
 22687     DayPickerKeyboardShortcuts_show__topRight: {
       
 22688       borderBottom: '26px solid transparent',
       
 22689       borderRight: '33px solid ' + String(color.core.primary),
       
 22690       top: 0,
       
 22691       right: 0,
       
 22692 
       
 22693       ':hover': {
       
 22694         borderRight: '33px solid ' + String(color.core.primary_dark)
       
 22695       }
       
 22696     },
       
 22697 
       
 22698     DayPickerKeyboardShortcuts_show__topLeft: {
       
 22699       borderBottom: '26px solid transparent',
       
 22700       borderLeft: '33px solid ' + String(color.core.primary),
       
 22701       top: 0,
       
 22702       left: 0,
       
 22703 
       
 22704       ':hover': {
       
 22705         borderLeft: '33px solid ' + String(color.core.primary_dark)
       
 22706       }
       
 22707     },
       
 22708 
       
 22709     DayPickerKeyboardShortcuts_showSpan: {
       
 22710       color: color.core.white,
       
 22711       position: 'absolute'
       
 22712     },
       
 22713 
       
 22714     DayPickerKeyboardShortcuts_showSpan__bottomRight: {
       
 22715       bottom: 0,
       
 22716       right: -28
       
 22717     },
       
 22718 
       
 22719     DayPickerKeyboardShortcuts_showSpan__topRight: {
       
 22720       top: 1,
       
 22721       right: -28
       
 22722     },
       
 22723 
       
 22724     DayPickerKeyboardShortcuts_showSpan__topLeft: {
       
 22725       top: 1,
       
 22726       left: -28
       
 22727     },
       
 22728 
       
 22729     DayPickerKeyboardShortcuts_panel: {
       
 22730       overflow: 'auto',
       
 22731       background: color.background,
       
 22732       border: '1px solid ' + String(color.core.border),
       
 22733       borderRadius: 2,
       
 22734       position: 'absolute',
       
 22735       top: 0,
       
 22736       bottom: 0,
       
 22737       right: 0,
       
 22738       left: 0,
       
 22739       zIndex: zIndex + 2,
       
 22740       padding: 22,
       
 22741       margin: 33
       
 22742     },
       
 22743 
       
 22744     DayPickerKeyboardShortcuts_title: {
       
 22745       fontSize: 16,
       
 22746       fontWeight: 'bold',
       
 22747       margin: 0
       
 22748     },
       
 22749 
       
 22750     DayPickerKeyboardShortcuts_list: {
       
 22751       listStyle: 'none',
       
 22752       padding: 0,
       
 22753       fontSize: font.size
       
 22754     },
       
 22755 
       
 22756     DayPickerKeyboardShortcuts_close: {
       
 22757       position: 'absolute',
       
 22758       right: 22,
       
 22759       top: 22,
       
 22760       zIndex: zIndex + 2,
       
 22761 
       
 22762       ':active': {
       
 22763         outline: 'none'
       
 22764       }
       
 22765     },
       
 22766 
       
 22767     DayPickerKeyboardShortcuts_closeSvg: {
       
 22768       height: 15,
       
 22769       width: 15,
       
 22770       fill: color.core.grayLighter,
       
 22771 
       
 22772       ':hover': {
       
 22773         fill: color.core.grayLight
       
 22774       },
       
 22775 
       
 22776       ':focus': {
       
 22777         fill: color.core.grayLight
       
 22778       }
       
 22779     }
       
 22780   };
       
 22781 })(DayPickerKeyboardShortcuts);
       
 22782 
       
 22783 /***/ }),
       
 22784 /* 330 */
       
 22785 /***/ (function(module, exports, __webpack_require__) {
       
 22786 
       
 22787 "use strict";
       
 22788 
       
 22789 
       
 22790 Object.defineProperty(exports, "__esModule", {
       
 22791   value: true
       
 22792 });
       
 22793 
       
 22794 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 22795 
       
 22796 var _object = __webpack_require__(46);
       
 22797 
       
 22798 var _object2 = _interopRequireDefault(_object);
       
 22799 
       
 22800 var _react = __webpack_require__(27);
       
 22801 
       
 22802 var _react2 = _interopRequireDefault(_react);
       
 22803 
       
 22804 var _propTypes = __webpack_require__(31);
       
 22805 
       
 22806 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 22807 
       
 22808 var _airbnbPropTypes = __webpack_require__(43);
       
 22809 
       
 22810 var _reactWithStyles = __webpack_require__(56);
       
 22811 
       
 22812 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 22813 
       
 22814 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 22815   unicode: _propTypes2['default'].string.isRequired,
       
 22816   label: _propTypes2['default'].string.isRequired,
       
 22817   action: _propTypes2['default'].string.isRequired,
       
 22818   block: _propTypes2['default'].bool
       
 22819 }));
       
 22820 
       
 22821 var defaultProps = {
       
 22822   block: false
       
 22823 };
       
 22824 
       
 22825 function KeyboardShortcutRow(_ref) {
       
 22826   var unicode = _ref.unicode,
       
 22827       label = _ref.label,
       
 22828       action = _ref.action,
       
 22829       block = _ref.block,
       
 22830       styles = _ref.styles;
       
 22831 
       
 22832   return _react2['default'].createElement(
       
 22833     'li',
       
 22834     (0, _reactWithStyles.css)(styles.KeyboardShortcutRow, block && styles.KeyboardShortcutRow__block),
       
 22835     _react2['default'].createElement(
       
 22836       'div',
       
 22837       (0, _reactWithStyles.css)(styles.KeyboardShortcutRow_keyContainer, block && styles.KeyboardShortcutRow_keyContainer__block),
       
 22838       _react2['default'].createElement(
       
 22839         'span',
       
 22840         _extends({}, (0, _reactWithStyles.css)(styles.KeyboardShortcutRow_key), {
       
 22841           role: 'img',
       
 22842           'aria-label': String(label) + ',' // add comma so screen readers will pause before reading action
       
 22843         }),
       
 22844         unicode
       
 22845       )
       
 22846     ),
       
 22847     _react2['default'].createElement(
       
 22848       'div',
       
 22849       (0, _reactWithStyles.css)(styles.KeyboardShortcutRow_action),
       
 22850       action
       
 22851     )
       
 22852   );
       
 22853 }
       
 22854 
       
 22855 KeyboardShortcutRow.propTypes = propTypes;
       
 22856 KeyboardShortcutRow.defaultProps = defaultProps;
       
 22857 
       
 22858 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 22859   var color = _ref2.reactDates.color;
       
 22860   return {
       
 22861     KeyboardShortcutRow: {
       
 22862       listStyle: 'none',
       
 22863       margin: '6px 0'
       
 22864     },
       
 22865 
       
 22866     KeyboardShortcutRow__block: {
       
 22867       marginBottom: 16
       
 22868     },
       
 22869 
       
 22870     KeyboardShortcutRow_keyContainer: {
       
 22871       display: 'inline-block',
       
 22872       whiteSpace: 'nowrap',
       
 22873       textAlign: 'right',
       
 22874       marginRight: 6
       
 22875     },
       
 22876 
       
 22877     KeyboardShortcutRow_keyContainer__block: {
       
 22878       textAlign: 'left',
       
 22879       display: 'inline'
       
 22880     },
       
 22881 
       
 22882     KeyboardShortcutRow_key: {
       
 22883       fontFamily: 'monospace',
       
 22884       fontSize: 12,
       
 22885       textTransform: 'uppercase',
       
 22886       background: color.core.grayLightest,
       
 22887       padding: '2px 6px'
       
 22888     },
       
 22889 
       
 22890     KeyboardShortcutRow_action: {
       
 22891       display: 'inline',
       
 22892       wordBreak: 'break-word',
       
 22893       marginLeft: 8
       
 22894     }
       
 22895   };
       
 22896 })(KeyboardShortcutRow);
       
 22897 
       
 22898 /***/ }),
       
 22899 /* 331 */
       
 22900 /***/ (function(module, exports, __webpack_require__) {
       
 22901 
       
 22902 "use strict";
       
 22903 
       
 22904 
       
 22905 Object.defineProperty(exports, "__esModule", {
       
 22906   value: true
       
 22907 });
       
 22908 exports['default'] = getNumberOfCalendarMonthWeeks;
       
 22909 
       
 22910 var _moment = __webpack_require__(29);
       
 22911 
       
 22912 var _moment2 = _interopRequireDefault(_moment);
       
 22913 
       
 22914 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 22915 
       
 22916 function getBlankDaysBeforeFirstDay(firstDayOfMonth, firstDayOfWeek) {
       
 22917   var weekDayDiff = firstDayOfMonth.day() - firstDayOfWeek;
       
 22918   return (weekDayDiff + 7) % 7;
       
 22919 }
       
 22920 
       
 22921 function getNumberOfCalendarMonthWeeks(month) {
       
 22922   var firstDayOfWeek = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _moment2['default'].localeData().firstDayOfWeek();
       
 22923 
       
 22924   var firstDayOfMonth = month.clone().startOf('month');
       
 22925   var numBlankDays = getBlankDaysBeforeFirstDay(firstDayOfMonth, firstDayOfWeek);
       
 22926   return Math.ceil((numBlankDays + month.daysInMonth()) / 7);
       
 22927 }
       
 22928 
       
 22929 /***/ }),
       
 22930 /* 332 */
       
 22931 /***/ (function(module, exports, __webpack_require__) {
       
 22932 
       
 22933 "use strict";
       
 22934 
       
 22935 
       
 22936 Object.defineProperty(exports, "__esModule", {
       
 22937   value: true
       
 22938 });
       
 22939 exports['default'] = getActiveElement;
       
 22940 function getActiveElement() {
       
 22941   return typeof document !== 'undefined' && document.activeElement;
       
 22942 }
       
 22943 
       
 22944 /***/ }),
       
 22945 /* 333 */
       
 22946 /***/ (function(module, exports, __webpack_require__) {
       
 22947 
       
 22948 "use strict";
       
 22949 
       
 22950 
       
 22951 Object.defineProperty(exports, "__esModule", {
       
 22952   value: true
       
 22953 });
       
 22954 exports.PureSingleDatePicker = undefined;
       
 22955 
       
 22956 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 22957 
       
 22958 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 22959 
       
 22960 var _object = __webpack_require__(46);
       
 22961 
       
 22962 var _object2 = _interopRequireDefault(_object);
       
 22963 
       
 22964 var _react = __webpack_require__(27);
       
 22965 
       
 22966 var _react2 = _interopRequireDefault(_react);
       
 22967 
       
 22968 var _moment = __webpack_require__(29);
       
 22969 
       
 22970 var _moment2 = _interopRequireDefault(_moment);
       
 22971 
       
 22972 var _reactWithStyles = __webpack_require__(56);
       
 22973 
       
 22974 var _reactPortal = __webpack_require__(203);
       
 22975 
       
 22976 var _airbnbPropTypes = __webpack_require__(43);
       
 22977 
       
 22978 var _consolidatedEvents = __webpack_require__(103);
       
 22979 
       
 22980 var _isTouchDevice = __webpack_require__(82);
       
 22981 
       
 22982 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
 22983 
       
 22984 var _reactOutsideClickHandler = __webpack_require__(126);
       
 22985 
       
 22986 var _reactOutsideClickHandler2 = _interopRequireDefault(_reactOutsideClickHandler);
       
 22987 
       
 22988 var _SingleDatePickerShape = __webpack_require__(195);
       
 22989 
       
 22990 var _SingleDatePickerShape2 = _interopRequireDefault(_SingleDatePickerShape);
       
 22991 
       
 22992 var _defaultPhrases = __webpack_require__(47);
       
 22993 
       
 22994 var _toMomentObject = __webpack_require__(80);
       
 22995 
       
 22996 var _toMomentObject2 = _interopRequireDefault(_toMomentObject);
       
 22997 
       
 22998 var _toLocalizedDateString = __webpack_require__(129);
       
 22999 
       
 23000 var _toLocalizedDateString2 = _interopRequireDefault(_toLocalizedDateString);
       
 23001 
       
 23002 var _getResponsiveContainerStyles = __webpack_require__(176);
       
 23003 
       
 23004 var _getResponsiveContainerStyles2 = _interopRequireDefault(_getResponsiveContainerStyles);
       
 23005 
       
 23006 var _getDetachedContainerStyles = __webpack_require__(177);
       
 23007 
       
 23008 var _getDetachedContainerStyles2 = _interopRequireDefault(_getDetachedContainerStyles);
       
 23009 
       
 23010 var _getInputHeight = __webpack_require__(127);
       
 23011 
       
 23012 var _getInputHeight2 = _interopRequireDefault(_getInputHeight);
       
 23013 
       
 23014 var _isInclusivelyAfterDay = __webpack_require__(94);
       
 23015 
       
 23016 var _isInclusivelyAfterDay2 = _interopRequireDefault(_isInclusivelyAfterDay);
       
 23017 
       
 23018 var _disableScroll2 = __webpack_require__(178);
       
 23019 
       
 23020 var _disableScroll3 = _interopRequireDefault(_disableScroll2);
       
 23021 
       
 23022 var _SingleDatePickerInput = __webpack_require__(196);
       
 23023 
       
 23024 var _SingleDatePickerInput2 = _interopRequireDefault(_SingleDatePickerInput);
       
 23025 
       
 23026 var _DayPickerSingleDateController = __webpack_require__(194);
       
 23027 
       
 23028 var _DayPickerSingleDateController2 = _interopRequireDefault(_DayPickerSingleDateController);
       
 23029 
       
 23030 var _CloseButton = __webpack_require__(96);
       
 23031 
       
 23032 var _CloseButton2 = _interopRequireDefault(_CloseButton);
       
 23033 
       
 23034 var _constants = __webpack_require__(39);
       
 23035 
       
 23036 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 23037 
       
 23038 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 23039 
       
 23040 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 23041 
       
 23042 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 23043 
       
 23044 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, _SingleDatePickerShape2['default']));
       
 23045 
       
 23046 var defaultProps = {
       
 23047   // required props for a functional interactive SingleDatePicker
       
 23048   date: null,
       
 23049   focused: false,
       
 23050 
       
 23051   // input related props
       
 23052   id: 'date',
       
 23053   placeholder: 'Date',
       
 23054   disabled: false,
       
 23055   required: false,
       
 23056   readOnly: false,
       
 23057   screenReaderInputMessage: '',
       
 23058   showClearDate: false,
       
 23059   showDefaultInputIcon: false,
       
 23060   inputIconPosition: _constants.ICON_BEFORE_POSITION,
       
 23061   customInputIcon: null,
       
 23062   customCloseIcon: null,
       
 23063   noBorder: false,
       
 23064   block: false,
       
 23065   small: false,
       
 23066   regular: false,
       
 23067   verticalSpacing: _constants.DEFAULT_VERTICAL_SPACING,
       
 23068   keepFocusOnInput: false,
       
 23069 
       
 23070   // calendar presentation and interaction related props
       
 23071   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 23072   anchorDirection: _constants.ANCHOR_LEFT,
       
 23073   openDirection: _constants.OPEN_DOWN,
       
 23074   horizontalMargin: 0,
       
 23075   withPortal: false,
       
 23076   withFullScreenPortal: false,
       
 23077   appendToBody: false,
       
 23078   disableScroll: false,
       
 23079   initialVisibleMonth: null,
       
 23080   firstDayOfWeek: null,
       
 23081   numberOfMonths: 2,
       
 23082   keepOpenOnDateSelect: false,
       
 23083   reopenPickerOnClearDate: false,
       
 23084   renderCalendarInfo: null,
       
 23085   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
       
 23086   hideKeyboardShortcutsPanel: false,
       
 23087   daySize: _constants.DAY_SIZE,
       
 23088   isRTL: false,
       
 23089   verticalHeight: null,
       
 23090   transitionDuration: undefined,
       
 23091   horizontalMonthPadding: 13,
       
 23092 
       
 23093   // navigation related props
       
 23094   navPrev: null,
       
 23095   navNext: null,
       
 23096 
       
 23097   onPrevMonthClick: function () {
       
 23098     function onPrevMonthClick() {}
       
 23099 
       
 23100     return onPrevMonthClick;
       
 23101   }(),
       
 23102   onNextMonthClick: function () {
       
 23103     function onNextMonthClick() {}
       
 23104 
       
 23105     return onNextMonthClick;
       
 23106   }(),
       
 23107   onClose: function () {
       
 23108     function onClose() {}
       
 23109 
       
 23110     return onClose;
       
 23111   }(),
       
 23112 
       
 23113 
       
 23114   // month presentation and interaction related props
       
 23115   renderMonthText: null,
       
 23116 
       
 23117   // day presentation and interaction related props
       
 23118   renderCalendarDay: undefined,
       
 23119   renderDayContents: null,
       
 23120   renderMonthElement: null,
       
 23121   enableOutsideDays: false,
       
 23122   isDayBlocked: function () {
       
 23123     function isDayBlocked() {
       
 23124       return false;
       
 23125     }
       
 23126 
       
 23127     return isDayBlocked;
       
 23128   }(),
       
 23129   isOutsideRange: function () {
       
 23130     function isOutsideRange(day) {
       
 23131       return !(0, _isInclusivelyAfterDay2['default'])(day, (0, _moment2['default'])());
       
 23132     }
       
 23133 
       
 23134     return isOutsideRange;
       
 23135   }(),
       
 23136   isDayHighlighted: function () {
       
 23137     function isDayHighlighted() {}
       
 23138 
       
 23139     return isDayHighlighted;
       
 23140   }(),
       
 23141 
       
 23142   // internationalization props
       
 23143   displayFormat: function () {
       
 23144     function displayFormat() {
       
 23145       return _moment2['default'].localeData().longDateFormat('L');
       
 23146     }
       
 23147 
       
 23148     return displayFormat;
       
 23149   }(),
       
 23150   monthFormat: 'MMMM YYYY',
       
 23151   weekDayFormat: 'dd',
       
 23152   phrases: _defaultPhrases.SingleDatePickerPhrases,
       
 23153   dayAriaLabelFormat: undefined
       
 23154 };
       
 23155 
       
 23156 var SingleDatePicker = function (_React$Component) {
       
 23157   _inherits(SingleDatePicker, _React$Component);
       
 23158 
       
 23159   function SingleDatePicker(props) {
       
 23160     _classCallCheck(this, SingleDatePicker);
       
 23161 
       
 23162     var _this = _possibleConstructorReturn(this, (SingleDatePicker.__proto__ || Object.getPrototypeOf(SingleDatePicker)).call(this, props));
       
 23163 
       
 23164     _this.isTouchDevice = false;
       
 23165 
       
 23166     _this.state = {
       
 23167       dayPickerContainerStyles: {},
       
 23168       isDayPickerFocused: false,
       
 23169       isInputFocused: false,
       
 23170       showKeyboardShortcuts: false
       
 23171     };
       
 23172 
       
 23173     _this.onDayPickerFocus = _this.onDayPickerFocus.bind(_this);
       
 23174     _this.onDayPickerBlur = _this.onDayPickerBlur.bind(_this);
       
 23175     _this.showKeyboardShortcutsPanel = _this.showKeyboardShortcutsPanel.bind(_this);
       
 23176 
       
 23177     _this.onChange = _this.onChange.bind(_this);
       
 23178     _this.onFocus = _this.onFocus.bind(_this);
       
 23179     _this.onClearFocus = _this.onClearFocus.bind(_this);
       
 23180     _this.clearDate = _this.clearDate.bind(_this);
       
 23181 
       
 23182     _this.responsivizePickerPosition = _this.responsivizePickerPosition.bind(_this);
       
 23183     _this.disableScroll = _this.disableScroll.bind(_this);
       
 23184 
       
 23185     _this.setDayPickerContainerRef = _this.setDayPickerContainerRef.bind(_this);
       
 23186     _this.setContainerRef = _this.setContainerRef.bind(_this);
       
 23187     return _this;
       
 23188   }
       
 23189 
       
 23190   /* istanbul ignore next */
       
 23191 
       
 23192 
       
 23193   _createClass(SingleDatePicker, [{
       
 23194     key: 'componentDidMount',
       
 23195     value: function () {
       
 23196       function componentDidMount() {
       
 23197         this.removeEventListener = (0, _consolidatedEvents.addEventListener)(window, 'resize', this.responsivizePickerPosition, { passive: true });
       
 23198         this.responsivizePickerPosition();
       
 23199         this.disableScroll();
       
 23200 
       
 23201         var focused = this.props.focused;
       
 23202 
       
 23203 
       
 23204         if (focused) {
       
 23205           this.setState({
       
 23206             isInputFocused: true
       
 23207           });
       
 23208         }
       
 23209 
       
 23210         this.isTouchDevice = (0, _isTouchDevice2['default'])();
       
 23211       }
       
 23212 
       
 23213       return componentDidMount;
       
 23214     }()
       
 23215   }, {
       
 23216     key: 'componentDidUpdate',
       
 23217     value: function () {
       
 23218       function componentDidUpdate(prevProps) {
       
 23219         var focused = this.props.focused;
       
 23220 
       
 23221         if (!prevProps.focused && focused) {
       
 23222           this.responsivizePickerPosition();
       
 23223           this.disableScroll();
       
 23224         } else if (prevProps.focused && !focused) {
       
 23225           if (this.enableScroll) this.enableScroll();
       
 23226         }
       
 23227       }
       
 23228 
       
 23229       return componentDidUpdate;
       
 23230     }()
       
 23231 
       
 23232     /* istanbul ignore next */
       
 23233 
       
 23234   }, {
       
 23235     key: 'componentWillUnmount',
       
 23236     value: function () {
       
 23237       function componentWillUnmount() {
       
 23238         if (this.removeEventListener) this.removeEventListener();
       
 23239         if (this.enableScroll) this.enableScroll();
       
 23240       }
       
 23241 
       
 23242       return componentWillUnmount;
       
 23243     }()
       
 23244   }, {
       
 23245     key: 'onChange',
       
 23246     value: function () {
       
 23247       function onChange(dateString) {
       
 23248         var _props = this.props,
       
 23249             isOutsideRange = _props.isOutsideRange,
       
 23250             keepOpenOnDateSelect = _props.keepOpenOnDateSelect,
       
 23251             onDateChange = _props.onDateChange,
       
 23252             onFocusChange = _props.onFocusChange,
       
 23253             onClose = _props.onClose;
       
 23254 
       
 23255         var newDate = (0, _toMomentObject2['default'])(dateString, this.getDisplayFormat());
       
 23256 
       
 23257         var isValid = newDate && !isOutsideRange(newDate);
       
 23258         if (isValid) {
       
 23259           onDateChange(newDate);
       
 23260           if (!keepOpenOnDateSelect) {
       
 23261             onFocusChange({ focused: false });
       
 23262             onClose({ date: newDate });
       
 23263           }
       
 23264         } else {
       
 23265           onDateChange(null);
       
 23266         }
       
 23267       }
       
 23268 
       
 23269       return onChange;
       
 23270     }()
       
 23271   }, {
       
 23272     key: 'onFocus',
       
 23273     value: function () {
       
 23274       function onFocus() {
       
 23275         var _props2 = this.props,
       
 23276             disabled = _props2.disabled,
       
 23277             onFocusChange = _props2.onFocusChange,
       
 23278             readOnly = _props2.readOnly,
       
 23279             withPortal = _props2.withPortal,
       
 23280             withFullScreenPortal = _props2.withFullScreenPortal,
       
 23281             keepFocusOnInput = _props2.keepFocusOnInput;
       
 23282 
       
 23283 
       
 23284         var withAnyPortal = withPortal || withFullScreenPortal;
       
 23285         var moveFocusToDayPicker = withAnyPortal || readOnly && !keepFocusOnInput || this.isTouchDevice && !keepFocusOnInput;
       
 23286 
       
 23287         if (moveFocusToDayPicker) {
       
 23288           this.onDayPickerFocus();
       
 23289         } else {
       
 23290           this.onDayPickerBlur();
       
 23291         }
       
 23292 
       
 23293         if (!disabled) {
       
 23294           onFocusChange({ focused: true });
       
 23295         }
       
 23296       }
       
 23297 
       
 23298       return onFocus;
       
 23299     }()
       
 23300   }, {
       
 23301     key: 'onClearFocus',
       
 23302     value: function () {
       
 23303       function onClearFocus(event) {
       
 23304         var _props3 = this.props,
       
 23305             date = _props3.date,
       
 23306             focused = _props3.focused,
       
 23307             onFocusChange = _props3.onFocusChange,
       
 23308             onClose = _props3.onClose,
       
 23309             appendToBody = _props3.appendToBody;
       
 23310 
       
 23311         if (!focused) return;
       
 23312         if (appendToBody && this.dayPickerContainer.contains(event.target)) return;
       
 23313 
       
 23314         this.setState({
       
 23315           isInputFocused: false,
       
 23316           isDayPickerFocused: false
       
 23317         });
       
 23318 
       
 23319         onFocusChange({ focused: false });
       
 23320         onClose({ date: date });
       
 23321       }
       
 23322 
       
 23323       return onClearFocus;
       
 23324     }()
       
 23325   }, {
       
 23326     key: 'onDayPickerFocus',
       
 23327     value: function () {
       
 23328       function onDayPickerFocus() {
       
 23329         this.setState({
       
 23330           isInputFocused: false,
       
 23331           isDayPickerFocused: true,
       
 23332           showKeyboardShortcuts: false
       
 23333         });
       
 23334       }
       
 23335 
       
 23336       return onDayPickerFocus;
       
 23337     }()
       
 23338   }, {
       
 23339     key: 'onDayPickerBlur',
       
 23340     value: function () {
       
 23341       function onDayPickerBlur() {
       
 23342         this.setState({
       
 23343           isInputFocused: true,
       
 23344           isDayPickerFocused: false,
       
 23345           showKeyboardShortcuts: false
       
 23346         });
       
 23347       }
       
 23348 
       
 23349       return onDayPickerBlur;
       
 23350     }()
       
 23351   }, {
       
 23352     key: 'getDateString',
       
 23353     value: function () {
       
 23354       function getDateString(date) {
       
 23355         var displayFormat = this.getDisplayFormat();
       
 23356         if (date && displayFormat) {
       
 23357           return date && date.format(displayFormat);
       
 23358         }
       
 23359         return (0, _toLocalizedDateString2['default'])(date);
       
 23360       }
       
 23361 
       
 23362       return getDateString;
       
 23363     }()
       
 23364   }, {
       
 23365     key: 'getDisplayFormat',
       
 23366     value: function () {
       
 23367       function getDisplayFormat() {
       
 23368         var displayFormat = this.props.displayFormat;
       
 23369 
       
 23370         return typeof displayFormat === 'string' ? displayFormat : displayFormat();
       
 23371       }
       
 23372 
       
 23373       return getDisplayFormat;
       
 23374     }()
       
 23375   }, {
       
 23376     key: 'setDayPickerContainerRef',
       
 23377     value: function () {
       
 23378       function setDayPickerContainerRef(ref) {
       
 23379         this.dayPickerContainer = ref;
       
 23380       }
       
 23381 
       
 23382       return setDayPickerContainerRef;
       
 23383     }()
       
 23384   }, {
       
 23385     key: 'setContainerRef',
       
 23386     value: function () {
       
 23387       function setContainerRef(ref) {
       
 23388         this.container = ref;
       
 23389       }
       
 23390 
       
 23391       return setContainerRef;
       
 23392     }()
       
 23393   }, {
       
 23394     key: 'clearDate',
       
 23395     value: function () {
       
 23396       function clearDate() {
       
 23397         var _props4 = this.props,
       
 23398             onDateChange = _props4.onDateChange,
       
 23399             reopenPickerOnClearDate = _props4.reopenPickerOnClearDate,
       
 23400             onFocusChange = _props4.onFocusChange;
       
 23401 
       
 23402         onDateChange(null);
       
 23403         if (reopenPickerOnClearDate) {
       
 23404           onFocusChange({ focused: true });
       
 23405         }
       
 23406       }
       
 23407 
       
 23408       return clearDate;
       
 23409     }()
       
 23410   }, {
       
 23411     key: 'disableScroll',
       
 23412     value: function () {
       
 23413       function disableScroll() {
       
 23414         var _props5 = this.props,
       
 23415             appendToBody = _props5.appendToBody,
       
 23416             propDisableScroll = _props5.disableScroll,
       
 23417             focused = _props5.focused;
       
 23418 
       
 23419         if (!appendToBody && !propDisableScroll) return;
       
 23420         if (!focused) return;
       
 23421 
       
 23422         // Disable scroll for every ancestor of this <SingleDatePicker> up to the
       
 23423         // document level. This ensures the input and the picker never move. Other
       
 23424         // sibling elements or the picker itself can scroll.
       
 23425         this.enableScroll = (0, _disableScroll3['default'])(this.container);
       
 23426       }
       
 23427 
       
 23428       return disableScroll;
       
 23429     }()
       
 23430 
       
 23431     /* istanbul ignore next */
       
 23432 
       
 23433   }, {
       
 23434     key: 'responsivizePickerPosition',
       
 23435     value: function () {
       
 23436       function responsivizePickerPosition() {
       
 23437         // It's possible the portal props have been changed in response to window resizes
       
 23438         // So let's ensure we reset this back to the base state each time
       
 23439         this.setState({ dayPickerContainerStyles: {} });
       
 23440 
       
 23441         var _props6 = this.props,
       
 23442             openDirection = _props6.openDirection,
       
 23443             anchorDirection = _props6.anchorDirection,
       
 23444             horizontalMargin = _props6.horizontalMargin,
       
 23445             withPortal = _props6.withPortal,
       
 23446             withFullScreenPortal = _props6.withFullScreenPortal,
       
 23447             appendToBody = _props6.appendToBody,
       
 23448             focused = _props6.focused;
       
 23449         var dayPickerContainerStyles = this.state.dayPickerContainerStyles;
       
 23450 
       
 23451 
       
 23452         if (!focused) {
       
 23453           return;
       
 23454         }
       
 23455 
       
 23456         var isAnchoredLeft = anchorDirection === _constants.ANCHOR_LEFT;
       
 23457 
       
 23458         if (!withPortal && !withFullScreenPortal) {
       
 23459           var containerRect = this.dayPickerContainer.getBoundingClientRect();
       
 23460           var currentOffset = dayPickerContainerStyles[anchorDirection] || 0;
       
 23461           var containerEdge = isAnchoredLeft ? containerRect[_constants.ANCHOR_RIGHT] : containerRect[_constants.ANCHOR_LEFT];
       
 23462 
       
 23463           this.setState({
       
 23464             dayPickerContainerStyles: (0, _object2['default'])({}, (0, _getResponsiveContainerStyles2['default'])(anchorDirection, currentOffset, containerEdge, horizontalMargin), appendToBody && (0, _getDetachedContainerStyles2['default'])(openDirection, anchorDirection, this.container))
       
 23465           });
       
 23466         }
       
 23467       }
       
 23468 
       
 23469       return responsivizePickerPosition;
       
 23470     }()
       
 23471   }, {
       
 23472     key: 'showKeyboardShortcutsPanel',
       
 23473     value: function () {
       
 23474       function showKeyboardShortcutsPanel() {
       
 23475         this.setState({
       
 23476           isInputFocused: false,
       
 23477           isDayPickerFocused: true,
       
 23478           showKeyboardShortcuts: true
       
 23479         });
       
 23480       }
       
 23481 
       
 23482       return showKeyboardShortcutsPanel;
       
 23483     }()
       
 23484   }, {
       
 23485     key: 'maybeRenderDayPickerWithPortal',
       
 23486     value: function () {
       
 23487       function maybeRenderDayPickerWithPortal() {
       
 23488         var _props7 = this.props,
       
 23489             focused = _props7.focused,
       
 23490             withPortal = _props7.withPortal,
       
 23491             withFullScreenPortal = _props7.withFullScreenPortal,
       
 23492             appendToBody = _props7.appendToBody;
       
 23493 
       
 23494 
       
 23495         if (!focused) {
       
 23496           return null;
       
 23497         }
       
 23498 
       
 23499         if (withPortal || withFullScreenPortal || appendToBody) {
       
 23500           return _react2['default'].createElement(
       
 23501             _reactPortal.Portal,
       
 23502             null,
       
 23503             this.renderDayPicker()
       
 23504           );
       
 23505         }
       
 23506 
       
 23507         return this.renderDayPicker();
       
 23508       }
       
 23509 
       
 23510       return maybeRenderDayPickerWithPortal;
       
 23511     }()
       
 23512   }, {
       
 23513     key: 'renderDayPicker',
       
 23514     value: function () {
       
 23515       function renderDayPicker() {
       
 23516         var _props8 = this.props,
       
 23517             anchorDirection = _props8.anchorDirection,
       
 23518             openDirection = _props8.openDirection,
       
 23519             onDateChange = _props8.onDateChange,
       
 23520             date = _props8.date,
       
 23521             onFocusChange = _props8.onFocusChange,
       
 23522             focused = _props8.focused,
       
 23523             enableOutsideDays = _props8.enableOutsideDays,
       
 23524             numberOfMonths = _props8.numberOfMonths,
       
 23525             orientation = _props8.orientation,
       
 23526             monthFormat = _props8.monthFormat,
       
 23527             navPrev = _props8.navPrev,
       
 23528             navNext = _props8.navNext,
       
 23529             onPrevMonthClick = _props8.onPrevMonthClick,
       
 23530             onNextMonthClick = _props8.onNextMonthClick,
       
 23531             onClose = _props8.onClose,
       
 23532             withPortal = _props8.withPortal,
       
 23533             withFullScreenPortal = _props8.withFullScreenPortal,
       
 23534             keepOpenOnDateSelect = _props8.keepOpenOnDateSelect,
       
 23535             initialVisibleMonth = _props8.initialVisibleMonth,
       
 23536             renderMonthText = _props8.renderMonthText,
       
 23537             renderCalendarDay = _props8.renderCalendarDay,
       
 23538             renderDayContents = _props8.renderDayContents,
       
 23539             renderCalendarInfo = _props8.renderCalendarInfo,
       
 23540             renderMonthElement = _props8.renderMonthElement,
       
 23541             calendarInfoPosition = _props8.calendarInfoPosition,
       
 23542             hideKeyboardShortcutsPanel = _props8.hideKeyboardShortcutsPanel,
       
 23543             firstDayOfWeek = _props8.firstDayOfWeek,
       
 23544             customCloseIcon = _props8.customCloseIcon,
       
 23545             phrases = _props8.phrases,
       
 23546             dayAriaLabelFormat = _props8.dayAriaLabelFormat,
       
 23547             daySize = _props8.daySize,
       
 23548             isRTL = _props8.isRTL,
       
 23549             isOutsideRange = _props8.isOutsideRange,
       
 23550             isDayBlocked = _props8.isDayBlocked,
       
 23551             isDayHighlighted = _props8.isDayHighlighted,
       
 23552             weekDayFormat = _props8.weekDayFormat,
       
 23553             styles = _props8.styles,
       
 23554             verticalHeight = _props8.verticalHeight,
       
 23555             transitionDuration = _props8.transitionDuration,
       
 23556             verticalSpacing = _props8.verticalSpacing,
       
 23557             horizontalMonthPadding = _props8.horizontalMonthPadding,
       
 23558             small = _props8.small,
       
 23559             reactDates = _props8.theme.reactDates;
       
 23560         var _state = this.state,
       
 23561             dayPickerContainerStyles = _state.dayPickerContainerStyles,
       
 23562             isDayPickerFocused = _state.isDayPickerFocused,
       
 23563             showKeyboardShortcuts = _state.showKeyboardShortcuts;
       
 23564 
       
 23565 
       
 23566         var onOutsideClick = !withFullScreenPortal && withPortal ? this.onClearFocus : undefined;
       
 23567         var closeIcon = customCloseIcon || _react2['default'].createElement(_CloseButton2['default'], null);
       
 23568 
       
 23569         var inputHeight = (0, _getInputHeight2['default'])(reactDates, small);
       
 23570 
       
 23571         var withAnyPortal = withPortal || withFullScreenPortal;
       
 23572 
       
 23573         return _react2['default'].createElement(
       
 23574           'div',
       
 23575           _extends({ // eslint-disable-line jsx-a11y/no-static-element-interactions
       
 23576             ref: this.setDayPickerContainerRef
       
 23577           }, (0, _reactWithStyles.css)(styles.SingleDatePicker_picker, anchorDirection === _constants.ANCHOR_LEFT && styles.SingleDatePicker_picker__directionLeft, anchorDirection === _constants.ANCHOR_RIGHT && styles.SingleDatePicker_picker__directionRight, openDirection === _constants.OPEN_DOWN && styles.SingleDatePicker_picker__openDown, openDirection === _constants.OPEN_UP && styles.SingleDatePicker_picker__openUp, !withAnyPortal && openDirection === _constants.OPEN_DOWN && {
       
 23578             top: inputHeight + verticalSpacing
       
 23579           }, !withAnyPortal && openDirection === _constants.OPEN_UP && {
       
 23580             bottom: inputHeight + verticalSpacing
       
 23581           }, orientation === _constants.HORIZONTAL_ORIENTATION && styles.SingleDatePicker_picker__horizontal, orientation === _constants.VERTICAL_ORIENTATION && styles.SingleDatePicker_picker__vertical, withAnyPortal && styles.SingleDatePicker_picker__portal, withFullScreenPortal && styles.SingleDatePicker_picker__fullScreenPortal, isRTL && styles.SingleDatePicker_picker__rtl, dayPickerContainerStyles), {
       
 23582             onClick: onOutsideClick
       
 23583           }),
       
 23584           _react2['default'].createElement(_DayPickerSingleDateController2['default'], {
       
 23585             date: date,
       
 23586             onDateChange: onDateChange,
       
 23587             onFocusChange: onFocusChange,
       
 23588             orientation: orientation,
       
 23589             enableOutsideDays: enableOutsideDays,
       
 23590             numberOfMonths: numberOfMonths,
       
 23591             monthFormat: monthFormat,
       
 23592             withPortal: withAnyPortal,
       
 23593             focused: focused,
       
 23594             keepOpenOnDateSelect: keepOpenOnDateSelect,
       
 23595             hideKeyboardShortcutsPanel: hideKeyboardShortcutsPanel,
       
 23596             initialVisibleMonth: initialVisibleMonth,
       
 23597             navPrev: navPrev,
       
 23598             navNext: navNext,
       
 23599             onPrevMonthClick: onPrevMonthClick,
       
 23600             onNextMonthClick: onNextMonthClick,
       
 23601             onClose: onClose,
       
 23602             renderMonthText: renderMonthText,
       
 23603             renderCalendarDay: renderCalendarDay,
       
 23604             renderDayContents: renderDayContents,
       
 23605             renderCalendarInfo: renderCalendarInfo,
       
 23606             renderMonthElement: renderMonthElement,
       
 23607             calendarInfoPosition: calendarInfoPosition,
       
 23608             isFocused: isDayPickerFocused,
       
 23609             showKeyboardShortcuts: showKeyboardShortcuts,
       
 23610             onBlur: this.onDayPickerBlur,
       
 23611             phrases: phrases,
       
 23612             dayAriaLabelFormat: dayAriaLabelFormat,
       
 23613             daySize: daySize,
       
 23614             isRTL: isRTL,
       
 23615             isOutsideRange: isOutsideRange,
       
 23616             isDayBlocked: isDayBlocked,
       
 23617             isDayHighlighted: isDayHighlighted,
       
 23618             firstDayOfWeek: firstDayOfWeek,
       
 23619             weekDayFormat: weekDayFormat,
       
 23620             verticalHeight: verticalHeight,
       
 23621             transitionDuration: transitionDuration,
       
 23622             horizontalMonthPadding: horizontalMonthPadding
       
 23623           }),
       
 23624           withFullScreenPortal && _react2['default'].createElement(
       
 23625             'button',
       
 23626             _extends({}, (0, _reactWithStyles.css)(styles.SingleDatePicker_closeButton), {
       
 23627               'aria-label': phrases.closeDatePicker,
       
 23628               type: 'button',
       
 23629               onClick: this.onClearFocus
       
 23630             }),
       
 23631             _react2['default'].createElement(
       
 23632               'div',
       
 23633               (0, _reactWithStyles.css)(styles.SingleDatePicker_closeButton_svg),
       
 23634               closeIcon
       
 23635             )
       
 23636           )
       
 23637         );
       
 23638       }
       
 23639 
       
 23640       return renderDayPicker;
       
 23641     }()
       
 23642   }, {
       
 23643     key: 'render',
       
 23644     value: function () {
       
 23645       function render() {
       
 23646         var _props9 = this.props,
       
 23647             id = _props9.id,
       
 23648             placeholder = _props9.placeholder,
       
 23649             disabled = _props9.disabled,
       
 23650             focused = _props9.focused,
       
 23651             required = _props9.required,
       
 23652             readOnly = _props9.readOnly,
       
 23653             openDirection = _props9.openDirection,
       
 23654             showClearDate = _props9.showClearDate,
       
 23655             showDefaultInputIcon = _props9.showDefaultInputIcon,
       
 23656             inputIconPosition = _props9.inputIconPosition,
       
 23657             customCloseIcon = _props9.customCloseIcon,
       
 23658             customInputIcon = _props9.customInputIcon,
       
 23659             date = _props9.date,
       
 23660             phrases = _props9.phrases,
       
 23661             withPortal = _props9.withPortal,
       
 23662             withFullScreenPortal = _props9.withFullScreenPortal,
       
 23663             screenReaderInputMessage = _props9.screenReaderInputMessage,
       
 23664             isRTL = _props9.isRTL,
       
 23665             noBorder = _props9.noBorder,
       
 23666             block = _props9.block,
       
 23667             small = _props9.small,
       
 23668             regular = _props9.regular,
       
 23669             verticalSpacing = _props9.verticalSpacing,
       
 23670             styles = _props9.styles;
       
 23671         var isInputFocused = this.state.isInputFocused;
       
 23672 
       
 23673 
       
 23674         var displayValue = this.getDateString(date);
       
 23675 
       
 23676         var enableOutsideClick = !withPortal && !withFullScreenPortal;
       
 23677 
       
 23678         var hideFang = verticalSpacing < _constants.FANG_HEIGHT_PX;
       
 23679 
       
 23680         var input = _react2['default'].createElement(_SingleDatePickerInput2['default'], {
       
 23681           id: id,
       
 23682           placeholder: placeholder,
       
 23683           focused: focused,
       
 23684           isFocused: isInputFocused,
       
 23685           disabled: disabled,
       
 23686           required: required,
       
 23687           readOnly: readOnly,
       
 23688           openDirection: openDirection,
       
 23689           showCaret: !withPortal && !withFullScreenPortal && !hideFang,
       
 23690           onClearDate: this.clearDate,
       
 23691           showClearDate: showClearDate,
       
 23692           showDefaultInputIcon: showDefaultInputIcon,
       
 23693           inputIconPosition: inputIconPosition,
       
 23694           customCloseIcon: customCloseIcon,
       
 23695           customInputIcon: customInputIcon,
       
 23696           displayValue: displayValue,
       
 23697           onChange: this.onChange,
       
 23698           onFocus: this.onFocus,
       
 23699           onKeyDownShiftTab: this.onClearFocus,
       
 23700           onKeyDownTab: this.onClearFocus,
       
 23701           onKeyDownArrowDown: this.onDayPickerFocus,
       
 23702           onKeyDownQuestionMark: this.showKeyboardShortcutsPanel,
       
 23703           screenReaderMessage: screenReaderInputMessage,
       
 23704           phrases: phrases,
       
 23705           isRTL: isRTL,
       
 23706           noBorder: noBorder,
       
 23707           block: block,
       
 23708           small: small,
       
 23709           regular: regular,
       
 23710           verticalSpacing: verticalSpacing
       
 23711         });
       
 23712 
       
 23713         return _react2['default'].createElement(
       
 23714           'div',
       
 23715           _extends({
       
 23716             ref: this.setContainerRef
       
 23717           }, (0, _reactWithStyles.css)(styles.SingleDatePicker, block && styles.SingleDatePicker__block)),
       
 23718           enableOutsideClick && _react2['default'].createElement(
       
 23719             _reactOutsideClickHandler2['default'],
       
 23720             { onOutsideClick: this.onClearFocus },
       
 23721             input,
       
 23722             this.maybeRenderDayPickerWithPortal()
       
 23723           ),
       
 23724           !enableOutsideClick && input,
       
 23725           !enableOutsideClick && this.maybeRenderDayPickerWithPortal()
       
 23726         );
       
 23727       }
       
 23728 
       
 23729       return render;
       
 23730     }()
       
 23731   }]);
       
 23732 
       
 23733   return SingleDatePicker;
       
 23734 }(_react2['default'].Component);
       
 23735 
       
 23736 SingleDatePicker.propTypes = propTypes;
       
 23737 SingleDatePicker.defaultProps = defaultProps;
       
 23738 
       
 23739 exports.PureSingleDatePicker = SingleDatePicker;
       
 23740 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
 23741   var _ref$reactDates = _ref.reactDates,
       
 23742       color = _ref$reactDates.color,
       
 23743       zIndex = _ref$reactDates.zIndex;
       
 23744   return {
       
 23745     SingleDatePicker: {
       
 23746       position: 'relative',
       
 23747       display: 'inline-block'
       
 23748     },
       
 23749 
       
 23750     SingleDatePicker__block: {
       
 23751       display: 'block'
       
 23752     },
       
 23753 
       
 23754     SingleDatePicker_picker: {
       
 23755       zIndex: zIndex + 1,
       
 23756       backgroundColor: color.background,
       
 23757       position: 'absolute'
       
 23758     },
       
 23759 
       
 23760     SingleDatePicker_picker__rtl: {
       
 23761       direction: 'rtl'
       
 23762     },
       
 23763 
       
 23764     SingleDatePicker_picker__directionLeft: {
       
 23765       left: 0
       
 23766     },
       
 23767 
       
 23768     SingleDatePicker_picker__directionRight: {
       
 23769       right: 0
       
 23770     },
       
 23771 
       
 23772     SingleDatePicker_picker__portal: {
       
 23773       backgroundColor: 'rgba(0, 0, 0, 0.3)',
       
 23774       position: 'fixed',
       
 23775       top: 0,
       
 23776       left: 0,
       
 23777       height: '100%',
       
 23778       width: '100%'
       
 23779     },
       
 23780 
       
 23781     SingleDatePicker_picker__fullScreenPortal: {
       
 23782       backgroundColor: color.background
       
 23783     },
       
 23784 
       
 23785     SingleDatePicker_closeButton: {
       
 23786       background: 'none',
       
 23787       border: 0,
       
 23788       color: 'inherit',
       
 23789       font: 'inherit',
       
 23790       lineHeight: 'normal',
       
 23791       overflow: 'visible',
       
 23792       cursor: 'pointer',
       
 23793 
       
 23794       position: 'absolute',
       
 23795       top: 0,
       
 23796       right: 0,
       
 23797       padding: 15,
       
 23798       zIndex: zIndex + 2,
       
 23799 
       
 23800       ':hover': {
       
 23801         color: 'darken(' + String(color.core.grayLighter) + ', 10%)',
       
 23802         textDecoration: 'none'
       
 23803       },
       
 23804 
       
 23805       ':focus': {
       
 23806         color: 'darken(' + String(color.core.grayLighter) + ', 10%)',
       
 23807         textDecoration: 'none'
       
 23808       }
       
 23809     },
       
 23810 
       
 23811     SingleDatePicker_closeButton_svg: {
       
 23812       height: 15,
       
 23813       width: 15,
       
 23814       fill: color.core.grayLighter
       
 23815     }
       
 23816   };
       
 23817 })(SingleDatePicker);
       
 23818 
       
 23819 /***/ }),
       
 23820 /* 334 */
       
 23821 /***/ (function(module, exports, __webpack_require__) {
       
 23822 
       
 23823 "use strict";
       
 23824 
       
 23825 
       
 23826 Object.defineProperty(exports, "__esModule", {
       
 23827   value: true
       
 23828 });
       
 23829 exports['default'] = isInclusivelyBeforeDay;
       
 23830 
       
 23831 var _moment = __webpack_require__(29);
       
 23832 
       
 23833 var _moment2 = _interopRequireDefault(_moment);
       
 23834 
       
 23835 var _isAfterDay = __webpack_require__(106);
       
 23836 
       
 23837 var _isAfterDay2 = _interopRequireDefault(_isAfterDay);
       
 23838 
       
 23839 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 23840 
       
 23841 function isInclusivelyBeforeDay(a, b) {
       
 23842   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
 23843   return !(0, _isAfterDay2['default'])(a, b);
       
 23844 }
       
 23845 
       
 23846 /***/ }),
       
 23847 /* 335 */,
       
 23848 /* 336 */,
       
 23849 /* 337 */,
       
 23850 /* 338 */,
       
 23851 /* 339 */,
       
 23852 /* 340 */,
       
 23853 /* 341 */,
       
 23854 /* 342 */,
       
 23855 /* 343 */,
       
 23856 /* 344 */,
       
 23857 /* 345 */,
       
 23858 /* 346 */,
       
 23859 /* 347 */,
       
 23860 /* 348 */,
       
 23861 /* 349 */,
       
 23862 /* 350 */,
       
 23863 /* 351 */,
       
 23864 /* 352 */,
       
 23865 /* 353 */,
       
 23866 /* 354 */,
       
 23867 /* 355 */,
       
 23868 /* 356 */,
       
 23869 /* 357 */,
       
 23870 /* 358 */,
       
 23871 /* 359 */
       
 23872 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 23873 
       
 23874 "use strict";
       
 23875 __webpack_require__.r(__webpack_exports__);
       
 23876 
       
 23877 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectSpread.js
       
 23878 var objectSpread = __webpack_require__(7);
       
 23879 
       
 23880 // EXTERNAL MODULE: external {"this":["wp","element"]}
       
 23881 var external_this_wp_element_ = __webpack_require__(0);
       
 23882 
       
 23883 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/primitives/svg/index.js
       
 23884 
       
 23885 
       
 23886 /**
       
 23887  * WordPress dependencies
       
 23888  */
       
 23889 
       
 23890 var svg_Circle = function Circle(props) {
       
 23891   return Object(external_this_wp_element_["createElement"])('circle', props);
       
 23892 };
       
 23893 var svg_G = function G(props) {
       
 23894   return Object(external_this_wp_element_["createElement"])('g', props);
       
 23895 };
       
 23896 var svg_Path = function Path(props) {
       
 23897   return Object(external_this_wp_element_["createElement"])('path', props);
       
 23898 };
       
 23899 var svg_Polygon = function Polygon(props) {
       
 23900   return Object(external_this_wp_element_["createElement"])('polygon', props);
       
 23901 };
       
 23902 var svg_Rect = function Rect(props) {
       
 23903   return Object(external_this_wp_element_["createElement"])('rect', props);
       
 23904 };
       
 23905 var svg_SVG = function SVG(props) {
       
 23906   var appliedProps = Object(objectSpread["a" /* default */])({}, props, {
       
 23907     role: 'img',
       
 23908     'aria-hidden': 'true',
       
 23909     focusable: 'false'
       
 23910   }); // Disable reason: We need to have a way to render HTML tag for web.
       
 23911   // eslint-disable-next-line react/forbid-elements
       
 23912 
       
 23913 
       
 23914   return Object(external_this_wp_element_["createElement"])("svg", appliedProps);
       
 23915 };
       
 23916 
       
 23917 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/primitives/index.js
       
 23918 
       
 23919 
       
 23920 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/defineProperty.js
       
 23921 var defineProperty = __webpack_require__(15);
       
 23922 
       
 23923 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 1 modules
       
 23924 var slicedToArray = __webpack_require__(28);
       
 23925 
       
 23926 // EXTERNAL MODULE: ./node_modules/classnames/index.js
       
 23927 var classnames = __webpack_require__(16);
       
 23928 var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
       
 23929 
       
 23930 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/animate/index.js
       
 23931 
       
 23932 
       
 23933 
       
 23934 /**
       
 23935  * External dependencies
       
 23936  */
       
 23937 
       
 23938 
       
 23939 function Animate(_ref) {
       
 23940   var type = _ref.type,
       
 23941       _ref$options = _ref.options,
       
 23942       options = _ref$options === void 0 ? {} : _ref$options,
       
 23943       children = _ref.children;
       
 23944 
       
 23945   if (type === 'appear') {
       
 23946     var _classnames;
       
 23947 
       
 23948     var _options$origin = options.origin,
       
 23949         origin = _options$origin === void 0 ? 'top' : _options$origin;
       
 23950 
       
 23951     var _origin$split = origin.split(' '),
       
 23952         _origin$split2 = Object(slicedToArray["a" /* default */])(_origin$split, 2),
       
 23953         yAxis = _origin$split2[0],
       
 23954         _origin$split2$ = _origin$split2[1],
       
 23955         xAxis = _origin$split2$ === void 0 ? 'center' : _origin$split2$;
       
 23956 
       
 23957     return children({
       
 23958       className: classnames_default()('components-animate__appear', (_classnames = {}, Object(defineProperty["a" /* default */])(_classnames, 'is-from-' + xAxis, xAxis !== 'center'), Object(defineProperty["a" /* default */])(_classnames, 'is-from-' + yAxis, yAxis !== 'middle'), _classnames))
       
 23959     });
       
 23960   }
       
 23961 
       
 23962   if (type === 'slide-in') {
       
 23963     var _options$origin2 = options.origin,
       
 23964         _origin = _options$origin2 === void 0 ? 'left' : _options$origin2;
       
 23965 
       
 23966     return children({
       
 23967       className: classnames_default()('components-animate__slide-in', 'is-from-' + _origin)
       
 23968     });
       
 23969   }
       
 23970 
       
 23971   return children({});
       
 23972 }
       
 23973 
       
 23974 /* harmony default export */ var build_module_animate = (Animate);
       
 23975 
       
 23976 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
       
 23977 var classCallCheck = __webpack_require__(10);
       
 23978 
       
 23979 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
       
 23980 var possibleConstructorReturn = __webpack_require__(11);
       
 23981 
       
 23982 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
       
 23983 var getPrototypeOf = __webpack_require__(12);
       
 23984 
       
 23985 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
       
 23986 var createClass = __webpack_require__(9);
       
 23987 
       
 23988 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
       
 23989 var inherits = __webpack_require__(13);
       
 23990 
       
 23991 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
       
 23992 var assertThisInitialized = __webpack_require__(3);
       
 23993 
       
 23994 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
       
 23995 var toConsumableArray = __webpack_require__(17);
       
 23996 
       
 23997 // EXTERNAL MODULE: external "lodash"
       
 23998 var external_lodash_ = __webpack_require__(2);
       
 23999 
       
 24000 // EXTERNAL MODULE: external {"this":["wp","keycodes"]}
       
 24001 var external_this_wp_keycodes_ = __webpack_require__(18);
       
 24002 
       
 24003 // EXTERNAL MODULE: external {"this":["wp","i18n"]}
       
 24004 var external_this_wp_i18n_ = __webpack_require__(1);
       
 24005 
       
 24006 // EXTERNAL MODULE: external {"this":["wp","compose"]}
       
 24007 var external_this_wp_compose_ = __webpack_require__(6);
       
 24008 
       
 24009 // EXTERNAL MODULE: external {"this":["wp","richText"]}
       
 24010 var external_this_wp_richText_ = __webpack_require__(20);
       
 24011 
       
 24012 // EXTERNAL MODULE: external {"this":["wp","dom"]}
       
 24013 var external_this_wp_dom_ = __webpack_require__(24);
       
 24014 
       
 24015 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
       
 24016 var esm_extends = __webpack_require__(19);
       
 24017 
       
 24018 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-outside/index.js
       
 24019 
       
 24020 
       
 24021 
       
 24022 
       
 24023 
       
 24024 
       
 24025 
       
 24026 
       
 24027 
       
 24028 /**
       
 24029  * External dependencies
       
 24030  */
       
 24031 
       
 24032 /**
       
 24033  * WordPress dependencies
       
 24034  */
       
 24035 
       
 24036 
       
 24037 
       
 24038 /**
       
 24039  * Input types which are classified as button types, for use in considering
       
 24040  * whether element is a (focus-normalized) button.
       
 24041  *
       
 24042  * @type {string[]}
       
 24043  */
       
 24044 
       
 24045 var INPUT_BUTTON_TYPES = ['button', 'submit'];
       
 24046 /**
       
 24047  * Returns true if the given element is a button element subject to focus
       
 24048  * normalization, or false otherwise.
       
 24049  *
       
 24050  * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
       
 24051  *
       
 24052  * @param {Element} element Element to test.
       
 24053  *
       
 24054  * @return {boolean} Whether element is a button.
       
 24055  */
       
 24056 
       
 24057 function isFocusNormalizedButton(element) {
       
 24058   switch (element.nodeName) {
       
 24059     case 'A':
       
 24060     case 'BUTTON':
       
 24061       return true;
       
 24062 
       
 24063     case 'INPUT':
       
 24064       return Object(external_lodash_["includes"])(INPUT_BUTTON_TYPES, element.type);
       
 24065   }
       
 24066 
       
 24067   return false;
       
 24068 }
       
 24069 
       
 24070 /* harmony default export */ var with_focus_outside = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
       
 24071   return (
       
 24072     /*#__PURE__*/
       
 24073     function (_Component) {
       
 24074       Object(inherits["a" /* default */])(_class, _Component);
       
 24075 
       
 24076       function _class() {
       
 24077         var _this;
       
 24078 
       
 24079         Object(classCallCheck["a" /* default */])(this, _class);
       
 24080 
       
 24081         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(_class).apply(this, arguments));
       
 24082         _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 24083         _this.cancelBlurCheck = _this.cancelBlurCheck.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 24084         _this.queueBlurCheck = _this.queueBlurCheck.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 24085         _this.normalizeButtonFocus = _this.normalizeButtonFocus.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 24086         return _this;
       
 24087       }
       
 24088 
       
 24089       Object(createClass["a" /* default */])(_class, [{
       
 24090         key: "componentWillUnmount",
       
 24091         value: function componentWillUnmount() {
       
 24092           this.cancelBlurCheck();
       
 24093         }
       
 24094       }, {
       
 24095         key: "bindNode",
       
 24096         value: function bindNode(node) {
       
 24097           if (node) {
       
 24098             this.node = node;
       
 24099           } else {
       
 24100             delete this.node;
       
 24101             this.cancelBlurCheck();
       
 24102           }
 20682           }
 24103         }
 20683         }
 24104       }, {
 20684 
 24105         key: "queueBlurCheck",
 20685         newProps.className = className;
 24106         value: function queueBlurCheck(event) {
 20686         newProps.ref = ref || props.innerRef;
 24107           var _this2 = this;
 20687 
 24108 
 20688         if (false) {}
 24109           // React does not allow using an event reference asynchronously
 20689 
 24110           // due to recycling behavior, except when explicitly persisted.
 20690         var ele = Object(external_this_React_["createElement"])(finalTag, newProps);
 24111           event.persist(); // Skip blur check if clicking button. See `normalizeButtonFocus`.
 20691 
 24112 
 20692         return ele;
 24113           if (this.preventBlurCheck) {
 20693       });
 24114             return;
 20694     });
 24115           }
 20695     Styled.displayName = identifierName !== undefined ? identifierName : "Styled(" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + ")";
 24116 
 20696     Styled.defaultProps = tag.defaultProps;
 24117           this.blurCheckTimeout = setTimeout(function () {
 20697     Styled.__emotion_real = Styled;
 24118             if ('function' === typeof _this2.node.handleFocusOutside) {
 20698     Styled.__emotion_base = baseTag;
 24119               _this2.node.handleFocusOutside(event);
 20699     Styled.__emotion_styles = styles;
 24120             }
 20700     Styled.__emotion_forwardProp = shouldForwardProp;
 24121           }, 0);
 20701     Object.defineProperty(Styled, 'toString', {
       
 20702       value: function value() {
       
 20703         if (targetClassName === undefined && "production" !== 'production') {
       
 20704           return 'NO_COMPONENT_SELECTOR';
       
 20705         } // $FlowFixMe: coerce undefined to string
       
 20706 
       
 20707 
       
 20708         return "." + targetClassName;
       
 20709       }
       
 20710     });
       
 20711 
       
 20712     Styled.withComponent = function (nextTag, nextOptions) {
       
 20713       return createStyled(nextTag, nextOptions !== undefined ? styled_base_browser_esm_objectSpread({}, options || {}, {}, nextOptions) : options).apply(void 0, styles);
       
 20714     };
       
 20715 
       
 20716     return Styled;
       
 20717   };
       
 20718 };
       
 20719 
       
 20720 /* harmony default export */ var styled_base_browser_esm = (styled_base_browser_esm_createStyled);
       
 20721 
       
 20722 // EXTERNAL MODULE: ./node_modules/tinycolor2/tinycolor.js
       
 20723 var tinycolor = __webpack_require__(66);
       
 20724 var tinycolor_default = /*#__PURE__*/__webpack_require__.n(tinycolor);
       
 20725 
       
 20726 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/colors-values.js
       
 20727 
       
 20728 
       
 20729 function colors_values_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 20730 
       
 20731 function colors_values_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { colors_values_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { colors_values_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 20732 
       
 20733 /**
       
 20734  * External dependencies
       
 20735  */
       
 20736 
       
 20737 /**
       
 20738  * Internal dependencies
       
 20739  */
       
 20740 
       
 20741 
       
 20742 var BASE = {
       
 20743   black: '#000',
       
 20744   white: '#fff'
       
 20745 };
       
 20746 /**
       
 20747  * TODO: Continue to update values as "G2" design evolves.
       
 20748  *
       
 20749  * "G2" refers to the movement to advance the interface of the block editor.
       
 20750  * https://github.com/WordPress/gutenberg/issues/18667
       
 20751  */
       
 20752 
       
 20753 var G2 = {
       
 20754   blue: {
       
 20755     medium: {
       
 20756       focus: '#007cba',
       
 20757       focusDark: '#fff'
       
 20758     }
       
 20759   },
       
 20760   darkGray: {
       
 20761     primary: '#1e1e1e'
       
 20762   },
       
 20763   mediumGray: {
       
 20764     text: '#757575'
       
 20765   },
       
 20766   lightGray: {
       
 20767     ui: '#949494',
       
 20768     secondary: '#ccc',
       
 20769     tertiary: '#e7e8e9'
       
 20770   }
       
 20771 };
       
 20772 var DARK_GRAY = {
       
 20773   900: '#191e23',
       
 20774   800: '#23282d',
       
 20775   700: '#32373c',
       
 20776   600: '#40464d',
       
 20777   500: '#555d66',
       
 20778   // Use this most of the time for dark items.
       
 20779   400: '#606a73',
       
 20780   300: '#6c7781',
       
 20781   // Lightest gray that can be used for AA text contrast.
       
 20782   200: '#7e8993',
       
 20783   150: '#8d96a0',
       
 20784   // Lightest gray that can be used for AA non-text contrast.
       
 20785   100: '#8f98a1'
       
 20786 };
       
 20787 var DARK_OPACITY = {
       
 20788   900: rgba('#000510', 0.9),
       
 20789   800: rgba('#00000a', 0.85),
       
 20790   700: rgba('#06060b', 0.8),
       
 20791   600: rgba('#000913', 0.75),
       
 20792   500: rgba('#0a1829', 0.7),
       
 20793   400: rgba('#0a1829', 0.65),
       
 20794   300: rgba('#0e1c2e', 0.62),
       
 20795   200: rgba('#162435', 0.55),
       
 20796   100: rgba('#223443', 0.5),
       
 20797   backgroundFill: rgba(DARK_GRAY[700], 0.7)
       
 20798 };
       
 20799 var DARK_OPACITY_LIGHT = {
       
 20800   900: rgba('#304455', 0.45),
       
 20801   800: rgba('#425863', 0.4),
       
 20802   700: rgba('#667886', 0.35),
       
 20803   600: rgba('#7b86a2', 0.3),
       
 20804   500: rgba('#9197a2', 0.25),
       
 20805   400: rgba('#95959c', 0.2),
       
 20806   300: rgba('#829493', 0.15),
       
 20807   200: rgba('#8b8b96', 0.1),
       
 20808   100: rgba('#747474', 0.05)
       
 20809 };
       
 20810 var LIGHT_GRAY = {
       
 20811   900: '#a2aab2',
       
 20812   800: '#b5bcc2',
       
 20813   700: '#ccd0d4',
       
 20814   600: '#d7dade',
       
 20815   500: '#e2e4e7',
       
 20816   // Good for "grayed" items and borders.
       
 20817   400: '#e8eaeb',
       
 20818   // Good for "readonly" input fields and special text selection.
       
 20819   300: '#edeff0',
       
 20820   200: '#f3f4f5',
       
 20821   100: '#f8f9f9'
       
 20822 };
       
 20823 var LIGHT_OPACITY_LIGHT = {
       
 20824   900: rgba(BASE.white, 0.5),
       
 20825   800: rgba(BASE.white, 0.45),
       
 20826   700: rgba(BASE.white, 0.4),
       
 20827   600: rgba(BASE.white, 0.35),
       
 20828   500: rgba(BASE.white, 0.3),
       
 20829   400: rgba(BASE.white, 0.25),
       
 20830   300: rgba(BASE.white, 0.2),
       
 20831   200: rgba(BASE.white, 0.15),
       
 20832   100: rgba(BASE.white, 0.1),
       
 20833   backgroundFill: rgba(LIGHT_GRAY[300], 0.8)
       
 20834 }; // Additional colors.
       
 20835 // Some are from https://make.wordpress.org/design/handbook/foundations/colors/.
       
 20836 
       
 20837 var BLUE = {
       
 20838   wordpress: {
       
 20839     700: '#00669b'
       
 20840   },
       
 20841   dark: {
       
 20842     900: '#0071a1'
       
 20843   },
       
 20844   medium: {
       
 20845     900: '#006589',
       
 20846     800: '#00739c',
       
 20847     700: '#007fac',
       
 20848     600: '#008dbe',
       
 20849     500: '#00a0d2',
       
 20850     400: '#33b3db',
       
 20851     300: '#66c6e4',
       
 20852     200: '#bfe7f3',
       
 20853     100: '#e5f5fa',
       
 20854     highlight: '#b3e7fe',
       
 20855     focus: '#007cba'
       
 20856   }
       
 20857 };
       
 20858 var ALERT = {
       
 20859   yellow: '#f0b849',
       
 20860   red: '#d94f4f',
       
 20861   green: '#4ab866'
       
 20862 };
       
 20863 var ADMIN = {
       
 20864   theme: "var( --wp-admin-theme-color, ".concat(BLUE.wordpress[700], ")"),
       
 20865   themeDark10: "var( --wp-admin-theme-color-darker-10, ".concat(BLUE.medium.focus, ")")
       
 20866 }; // Namespaced values for raw colors hex codes
       
 20867 
       
 20868 var UI = {
       
 20869   theme: ADMIN.theme,
       
 20870   background: BASE.white,
       
 20871   backgroundDisabled: LIGHT_GRAY[200],
       
 20872   border: G2.darkGray.primary,
       
 20873   borderFocus: ADMIN.themeDark10,
       
 20874   borderDisabled: DARK_GRAY[700],
       
 20875   borderLight: LIGHT_GRAY[600],
       
 20876   label: DARK_GRAY[500],
       
 20877   textDisabled: DARK_GRAY[150],
       
 20878   textDark: BASE.white,
       
 20879   textLight: BASE.black
       
 20880 };
       
 20881 var COLORS = colors_values_objectSpread({}, BASE, {
       
 20882   darkGray: Object(external_this_lodash_["merge"])({}, DARK_GRAY, G2.darkGray),
       
 20883   darkOpacity: DARK_OPACITY,
       
 20884   darkOpacityLight: DARK_OPACITY_LIGHT,
       
 20885   mediumGray: G2.mediumGray,
       
 20886   lightGray: Object(external_this_lodash_["merge"])({}, LIGHT_GRAY, G2.lightGray),
       
 20887   lightGrayLight: LIGHT_OPACITY_LIGHT,
       
 20888   blue: Object(external_this_lodash_["merge"])({}, BLUE, G2.blue),
       
 20889   alert: ALERT,
       
 20890   admin: ADMIN,
       
 20891   ui: UI
       
 20892 });
       
 20893 /* harmony default export */ var colors_values = (COLORS);
       
 20894 
       
 20895 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/colors.js
       
 20896 /**
       
 20897  * External dependencies
       
 20898  */
       
 20899 
       
 20900 
       
 20901 /**
       
 20902  * Internal dependencies
       
 20903  */
       
 20904 
       
 20905 
       
 20906 /**
       
 20907  * Generating a CSS complient rgba() color value.
       
 20908  *
       
 20909  * @param {string} hexValue The hex value to convert to rgba().
       
 20910  * @param {number} alpha The alpha value for opacity.
       
 20911  * @return {string} The converted rgba() color value.
       
 20912  *
       
 20913  * @example
       
 20914  * rgba( '#000000', 0.5 )
       
 20915  * // rgba(0, 0, 0, 0.5)
       
 20916  */
       
 20917 
       
 20918 function rgba() {
       
 20919   var hexValue = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
       
 20920   var alpha = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
       
 20921 
       
 20922   var _tinycolor$toRgb = tinycolor_default()(hexValue).toRgb(),
       
 20923       r = _tinycolor$toRgb.r,
       
 20924       g = _tinycolor$toRgb.g,
       
 20925       b = _tinycolor$toRgb.b;
       
 20926 
       
 20927   return "rgba(".concat(r, ", ").concat(g, ", ").concat(b, ", ").concat(alpha, ")");
       
 20928 }
       
 20929 /**
       
 20930  * Retrieves a color from the color palette.
       
 20931  *
       
 20932  * @param {string} value The value to retrieve.
       
 20933  * @return {string} The color (or fallback, if not found).
       
 20934  *
       
 20935  * @example
       
 20936  * color( 'blue.wordpress.700' )
       
 20937  * // #00669b
       
 20938  */
       
 20939 
       
 20940 function colors_color(value) {
       
 20941   var fallbackColor = '#000';
       
 20942   return Object(external_this_lodash_["get"])(COLORS, value, fallbackColor);
       
 20943 }
       
 20944 
       
 20945 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/reduce-motion.js
       
 20946 /**
       
 20947  * Allows users to opt-out of animations via OS-level preferences.
       
 20948  *
       
 20949  * @param {string} prop CSS Property name
       
 20950  * @return {string} Generated CSS code for the reduced style
       
 20951  */
       
 20952 function reduceMotion() {
       
 20953   var prop = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'transition';
       
 20954   var style;
       
 20955 
       
 20956   switch (prop) {
       
 20957     case 'transition':
       
 20958       style = 'transition-duration: 0ms;';
       
 20959       break;
       
 20960 
       
 20961     case 'animation':
       
 20962       style = 'animation-duration: 1ms;';
       
 20963       break;
       
 20964 
       
 20965     default:
       
 20966       style = "\n\t\t\t\tanimation-duration: 1ms;\n\t\t\t\ttransition-duration: 0ms;\n\t\t\t";
       
 20967   }
       
 20968 
       
 20969   return "\n\t\t@media ( prefers-reduced-motion: reduce ) {\n\t\t\t".concat(style, ";\n\t\t}\n\t");
       
 20970 }
       
 20971 
       
 20972 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/alignment-matrix-control/styles/alignment-matrix-control-styles.js
       
 20973 
       
 20974 
       
 20975 function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 20976 
       
 20977 
       
 20978 /**
       
 20979  * Internal dependencies
       
 20980  */
       
 20981 
       
 20982 
       
 20983 
       
 20984 var alignment_matrix_control_styles_ref =  true ? {
       
 20985   name: "1xiracb",
       
 20986   styles: "border-radius:2px;box-sizing:border-box;display:grid;grid-template-columns:repeat( 3,1fr );outline:none;"
       
 20987 } : undefined;
       
 20988 
       
 20989 var rootBase = function rootBase() {
       
 20990   return alignment_matrix_control_styles_ref;
       
 20991 };
       
 20992 
       
 20993 var alignment_matrix_control_styles_rootSize = function rootSize(_ref2) {
       
 20994   var _ref2$size = _ref2.size,
       
 20995       size = _ref2$size === void 0 ? 92 : _ref2$size;
       
 20996   return /*#__PURE__*/css_browser_esm("grid-template-rows:repeat( 3,calc( ", size, "px / 3 ) );width:", size, "px;" + ( true ? "" : undefined));
       
 20997 };
       
 20998 
       
 20999 var Root = styled_base_browser_esm("div", {
       
 21000   target: "e1od1u4s0",
       
 21001   label: "Root"
       
 21002 })(rootBase, ";border:1px solid transparent;cursor:pointer;grid-template-columns:auto;", alignment_matrix_control_styles_rootSize, ";" + ( true ? "" : undefined));
       
 21003 var Row = styled_base_browser_esm("div", {
       
 21004   target: "e1od1u4s1",
       
 21005   label: "Row"
       
 21006 })( true ? {
       
 21007   name: "1177s8r",
       
 21008   styles: "box-sizing:border-box;display:grid;grid-template-columns:repeat( 3,1fr );"
       
 21009 } : undefined);
       
 21010 
       
 21011 var alignment_matrix_control_styles_pointActive = function pointActive(_ref3) {
       
 21012   var isActive = _ref3.isActive;
       
 21013   var boxShadow = isActive ? "0 0 0 2px ".concat(colors_color('black')) : null;
       
 21014   var pointColor = isActive ? colors_color('black') : colors_color('lightGray.800');
       
 21015   var pointColorHover = isActive ? colors_color('black') : colors_color('blue.medium.focus');
       
 21016   return /*#__PURE__*/css_browser_esm("box-shadow:", boxShadow, ";color:", pointColor, ";*:hover > &{color:", pointColorHover, ";}" + ( true ? "" : undefined));
       
 21017 };
       
 21018 
       
 21019 var alignment_matrix_control_styles_pointBase = function pointBase(props) {
       
 21020   return /*#__PURE__*/css_browser_esm("background:currentColor;box-sizing:border-box;display:grid;margin:auto;transition:all 120ms linear;", reduceMotion('transition'), " ", alignment_matrix_control_styles_pointActive(props),  true ? "" : undefined);
       
 21021 };
       
 21022 var Point = styled_base_browser_esm("span", {
       
 21023   target: "e1od1u4s2",
       
 21024   label: "Point"
       
 21025 })("height:6px;width:6px;", alignment_matrix_control_styles_pointBase,  true ? "" : undefined);
       
 21026 var Cell = styled_base_browser_esm("span", {
       
 21027   target: "e1od1u4s3",
       
 21028   label: "Cell"
       
 21029 })( true ? {
       
 21030   name: "10ro24i",
       
 21031   styles: "appearance:none;border:none;box-sizing:border-box;margin:0;display:flex;position:relative;outline:none;align-items:center;justify-content:center;padding:0;"
       
 21032 } : undefined);
       
 21033 
       
 21034 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/alignment-matrix-control/cell.js
       
 21035 
       
 21036 
       
 21037 
       
 21038 
       
 21039 /**
       
 21040  * External dependencies
       
 21041  */
       
 21042 
       
 21043 /**
       
 21044  * Internal dependencies
       
 21045  */
       
 21046 
       
 21047 
       
 21048 
       
 21049 /**
       
 21050  * Internal dependencies
       
 21051  */
       
 21052 
       
 21053 
       
 21054 
       
 21055 function cell_Cell(_ref) {
       
 21056   var _ref$isActive = _ref.isActive,
       
 21057       isActive = _ref$isActive === void 0 ? false : _ref$isActive,
       
 21058       value = _ref.value,
       
 21059       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["isActive", "value"]);
       
 21060 
       
 21061   var tooltipText = ALIGNMENT_LABEL[value];
       
 21062   return Object(external_this_wp_element_["createElement"])(build_module_tooltip["a" /* default */], {
       
 21063     text: tooltipText
       
 21064   }, Object(external_this_wp_element_["createElement"])(CompositeItem["a" /* CompositeItem */], Object(esm_extends["a" /* default */])({
       
 21065     as: Cell,
       
 21066     role: "gridcell"
       
 21067   }, props), Object(external_this_wp_element_["createElement"])(visually_hidden, null, value), Object(external_this_wp_element_["createElement"])(Point, {
       
 21068     isActive: isActive,
       
 21069     role: "presentation"
       
 21070   })));
       
 21071 }
       
 21072 
       
 21073 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/rtl.js
       
 21074 /**
       
 21075  * External dependencies
       
 21076  */
       
 21077 
       
 21078 
       
 21079 var LOWER_LEFT_REGEXP = new RegExp(/-left/g);
       
 21080 var LOWER_RIGHT_REGEXP = new RegExp(/-right/g);
       
 21081 var UPPER_LEFT_REGEXP = new RegExp(/Left/g);
       
 21082 var UPPER_RIGHT_REGEXP = new RegExp(/Right/g);
       
 21083 /**
       
 21084  * Checks to see whether the document is set to rtl.
       
 21085  *
       
 21086  * @return {boolean} Whether document is RTL.
       
 21087  */
       
 21088 
       
 21089 function getRTL() {
       
 21090   return !!(document && document.documentElement.dir === 'rtl');
       
 21091 }
       
 21092 /**
       
 21093  * Simple hook to retrieve RTL direction value
       
 21094  *
       
 21095  * @return {boolean} Whether document is RTL.
       
 21096  */
       
 21097 
       
 21098 function useRTL() {
       
 21099   return getRTL();
       
 21100 }
       
 21101 /**
       
 21102  * Flips a CSS property from left <-> right.
       
 21103  *
       
 21104  * @param {string} key The CSS property name.
       
 21105  *
       
 21106  * @return {string} The flipped CSS property name, if applicable.
       
 21107  */
       
 21108 
       
 21109 function getConvertedKey(key) {
       
 21110   if (key === 'left') {
       
 21111     return 'right';
       
 21112   }
       
 21113 
       
 21114   if (key === 'right') {
       
 21115     return 'left';
       
 21116   }
       
 21117 
       
 21118   if (LOWER_LEFT_REGEXP.test(key)) {
       
 21119     return key.replace(LOWER_LEFT_REGEXP, '-right');
       
 21120   }
       
 21121 
       
 21122   if (LOWER_RIGHT_REGEXP.test(key)) {
       
 21123     return key.replace(LOWER_RIGHT_REGEXP, '-left');
       
 21124   }
       
 21125 
       
 21126   if (UPPER_LEFT_REGEXP.test(key)) {
       
 21127     return key.replace(UPPER_LEFT_REGEXP, 'Right');
       
 21128   }
       
 21129 
       
 21130   if (UPPER_RIGHT_REGEXP.test(key)) {
       
 21131     return key.replace(UPPER_RIGHT_REGEXP, 'Left');
       
 21132   }
       
 21133 
       
 21134   return key;
       
 21135 }
       
 21136 /**
       
 21137  * An incredibly basic ltr -> rtl converter for style properties
       
 21138  *
       
 21139  * @param {Object} ltrStyles
       
 21140  *
       
 21141  * @return {Object} Converted ltr -> rtl styles
       
 21142  */
       
 21143 
       
 21144 
       
 21145 var rtl_convertLTRToRTL = function convertLTRToRTL() {
       
 21146   var ltrStyles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 21147   return Object(external_this_lodash_["mapKeys"])(ltrStyles, function (_value, key) {
       
 21148     return getConvertedKey(key);
       
 21149   });
       
 21150 };
       
 21151 /**
       
 21152  * A higher-order function that create an incredibly basic ltr -> rtl style converter for CSS objects.
       
 21153  *
       
 21154  * @param {Object} ltrStyles Ltr styles. Converts and renders from ltr -> rtl styles, if applicable.
       
 21155  * @param {null|Object} rtlStyles Rtl styles. Renders if provided.
       
 21156  *
       
 21157  * @return {Function} A function to output CSS styles for Emotion's renderer
       
 21158  */
       
 21159 
       
 21160 function rtl() {
       
 21161   var ltrStyles = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 21162   var rtlStyles = arguments.length > 1 ? arguments[1] : undefined;
       
 21163   return function () {
       
 21164     var isRTL = getRTL();
       
 21165 
       
 21166     if (rtlStyles) {
       
 21167       return isRTL ? /*#__PURE__*/css_browser_esm(rtlStyles,  true ? "" : undefined) : /*#__PURE__*/css_browser_esm(ltrStyles,  true ? "" : undefined);
       
 21168     }
       
 21169 
       
 21170     return isRTL ? /*#__PURE__*/css_browser_esm(rtl_convertLTRToRTL(ltrStyles),  true ? "" : undefined) : /*#__PURE__*/css_browser_esm(ltrStyles,  true ? "" : undefined);
       
 21171   };
       
 21172 }
       
 21173 
       
 21174 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/alignment-matrix-control/styles/alignment-matrix-control-icon-styles.js
       
 21175 
       
 21176 
       
 21177 function alignment_matrix_control_icon_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 21178 
       
 21179 
       
 21180 /**
       
 21181  * Internal dependencies
       
 21182  */
       
 21183 
       
 21184 
       
 21185 
       
 21186 var alignment_matrix_control_icon_styles_rootSize = function rootSize() {
       
 21187   var padding = 1.5;
       
 21188   var size = 24;
       
 21189   return /*#__PURE__*/css_browser_esm({
       
 21190     gridTemplateRows: "repeat( 3, calc( ".concat(size - padding * 2, "px / 3))"),
       
 21191     padding: padding,
       
 21192     maxHeight: size,
       
 21193     maxWidth: size
       
 21194   },  true ? "" : undefined);
       
 21195 };
       
 21196 
       
 21197 var alignment_matrix_control_icon_styles_rootPointerEvents = function rootPointerEvents(_ref) {
       
 21198   var disablePointerEvents = _ref.disablePointerEvents;
       
 21199   return /*#__PURE__*/css_browser_esm({
       
 21200     pointerEvents: disablePointerEvents ? 'none' : null
       
 21201   },  true ? "" : undefined);
       
 21202 };
       
 21203 
       
 21204 var alignment_matrix_control_icon_styles_Wrapper = styled_base_browser_esm("div", {
       
 21205   target: "elqsdmc0",
       
 21206   label: "Wrapper"
       
 21207 })( true ? {
       
 21208   name: "co61ta",
       
 21209   styles: "box-sizing:border-box;padding:2px;"
       
 21210 } : undefined);
       
 21211 var alignment_matrix_control_icon_styles_Root = styled_base_browser_esm("div", {
       
 21212   target: "elqsdmc1",
       
 21213   label: "Root"
       
 21214 })("transform-origin:top left;height:100%;width:100%;", rootBase, ";", alignment_matrix_control_icon_styles_rootSize, ";", alignment_matrix_control_icon_styles_rootPointerEvents, ";" + ( true ? "" : undefined));
       
 21215 
       
 21216 var alignment_matrix_control_icon_styles_pointActive = function pointActive(_ref2) {
       
 21217   var isActive = _ref2.isActive;
       
 21218   var boxShadow = isActive ? "0 0 0 1px currentColor" : null;
       
 21219   return /*#__PURE__*/css_browser_esm("box-shadow:", boxShadow, ";color:currentColor;*:hover > &{color:currentColor;}" + ( true ? "" : undefined));
       
 21220 };
       
 21221 
       
 21222 var alignment_matrix_control_icon_styles_Point = styled_base_browser_esm("span", {
       
 21223   target: "elqsdmc2",
       
 21224   label: "Point"
       
 21225 })("height:2px;width:2px;", alignment_matrix_control_styles_pointBase, ";", alignment_matrix_control_icon_styles_pointActive, ";" + ( true ? "" : undefined));
       
 21226 var alignment_matrix_control_icon_styles_Cell = Cell;
       
 21227 
       
 21228 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/alignment-matrix-control/icon.js
       
 21229 
       
 21230 
       
 21231 
       
 21232 
       
 21233 
       
 21234 function icon_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 21235 
       
 21236 function icon_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { icon_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { icon_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 21237 
       
 21238 /**
       
 21239  * External dependencies
       
 21240  */
       
 21241 
       
 21242 /**
       
 21243  * Internal dependencies
       
 21244  */
       
 21245 
       
 21246 
       
 21247 
       
 21248 var BASE_SIZE = 24;
       
 21249 function AlignmentMatrixControlIcon(_ref) {
       
 21250   var className = _ref.className,
       
 21251       _ref$disablePointerEv = _ref.disablePointerEvents,
       
 21252       disablePointerEvents = _ref$disablePointerEv === void 0 ? true : _ref$disablePointerEv,
       
 21253       _ref$size = _ref.size,
       
 21254       size = _ref$size === void 0 ? BASE_SIZE : _ref$size,
       
 21255       _ref$style = _ref.style,
       
 21256       style = _ref$style === void 0 ? {} : _ref$style,
       
 21257       _ref$value = _ref.value,
       
 21258       value = _ref$value === void 0 ? 'center' : _ref$value,
       
 21259       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "disablePointerEvents", "size", "style", "value"]);
       
 21260 
       
 21261   var alignIndex = getAlignmentIndex(value);
       
 21262   var scale = (size / BASE_SIZE).toFixed(2);
       
 21263   var classes = classnames_default()('component-alignment-matrix-control-icon', className);
       
 21264 
       
 21265   var styles = icon_objectSpread({}, style, {
       
 21266     transform: "scale(".concat(scale, ")")
       
 21267   });
       
 21268 
       
 21269   return Object(external_this_wp_element_["createElement"])(alignment_matrix_control_icon_styles_Root, Object(esm_extends["a" /* default */])({}, props, {
       
 21270     className: classes,
       
 21271     disablePointerEvents: disablePointerEvents,
       
 21272     role: "presentation",
       
 21273     size: size,
       
 21274     style: styles
       
 21275   }), ALIGNMENTS.map(function (align, index) {
       
 21276     var isActive = alignIndex === index;
       
 21277     return Object(external_this_wp_element_["createElement"])(alignment_matrix_control_icon_styles_Cell, {
       
 21278       key: align
       
 21279     }, Object(external_this_wp_element_["createElement"])(alignment_matrix_control_icon_styles_Point, {
       
 21280       isActive: isActive
       
 21281     }));
       
 21282   }));
       
 21283 }
       
 21284 
       
 21285 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/alignment-matrix-control/index.js
       
 21286 
       
 21287 
       
 21288 
       
 21289 
       
 21290 
       
 21291 /**
       
 21292  * External dependencies
       
 21293  */
       
 21294 
       
 21295 
       
 21296 
       
 21297 /**
       
 21298  * WordPress dependencies
       
 21299  */
       
 21300 
       
 21301 
       
 21302 
       
 21303 
       
 21304 /**
       
 21305  * Internal dependencies
       
 21306  */
       
 21307 
       
 21308 
       
 21309 
       
 21310 
       
 21311 
       
 21312 
       
 21313 
       
 21314 function useBaseId(id) {
       
 21315   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(AlignmentMatrixControl, 'alignment-matrix-control');
       
 21316   return id || instanceId;
       
 21317 }
       
 21318 
       
 21319 function AlignmentMatrixControl(_ref) {
       
 21320   var className = _ref.className,
       
 21321       id = _ref.id,
       
 21322       _ref$label = _ref.label,
       
 21323       label = _ref$label === void 0 ? Object(external_this_wp_i18n_["__"])('Alignment Matrix Control') : _ref$label,
       
 21324       _ref$defaultValue = _ref.defaultValue,
       
 21325       defaultValue = _ref$defaultValue === void 0 ? 'center center' : _ref$defaultValue,
       
 21326       value = _ref.value,
       
 21327       _ref$onChange = _ref.onChange,
       
 21328       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 21329       _ref$width = _ref.width,
       
 21330       width = _ref$width === void 0 ? 92 : _ref$width,
       
 21331       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "id", "label", "defaultValue", "value", "onChange", "width"]);
       
 21332 
       
 21333   var _useState = Object(external_this_wp_element_["useState"])(value !== null && value !== void 0 ? value : defaultValue),
       
 21334       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 1),
       
 21335       immutableDefaultValue = _useState2[0];
       
 21336 
       
 21337   var isRTL = useRTL();
       
 21338   var baseId = useBaseId(id);
       
 21339   var initialCurrentId = getItemId(baseId, immutableDefaultValue);
       
 21340   var composite = Object(CompositeState_3a25dcee["g" /* u */])({
       
 21341     baseId: baseId,
       
 21342     currentId: initialCurrentId,
       
 21343     rtl: isRTL
       
 21344   });
       
 21345 
       
 21346   var handleOnChange = function handleOnChange(nextValue) {
       
 21347     onChange(nextValue);
       
 21348   };
       
 21349 
       
 21350   Object(external_this_wp_element_["useEffect"])(function () {
       
 21351     if (typeof value !== 'undefined') {
       
 21352       composite.setCurrentId(getItemId(baseId, value));
       
 21353     }
       
 21354   }, [value, composite.setCurrentId]);
       
 21355   var classes = classnames_default()('component-alignment-matrix-control', className);
       
 21356   return Object(external_this_wp_element_["createElement"])(Composite["a" /* Composite */], Object(esm_extends["a" /* default */])({}, props, composite, {
       
 21357     "aria-label": label,
       
 21358     as: Root,
       
 21359     className: classes,
       
 21360     role: "grid",
       
 21361     width: width
       
 21362   }), GRID.map(function (cells, index) {
       
 21363     return Object(external_this_wp_element_["createElement"])(CompositeGroup, Object(esm_extends["a" /* default */])({}, composite, {
       
 21364       as: Row,
       
 21365       role: "row",
       
 21366       key: index
       
 21367     }), cells.map(function (cell) {
       
 21368       var cellId = getItemId(baseId, cell);
       
 21369       var isActive = composite.currentId === cellId;
       
 21370       return Object(external_this_wp_element_["createElement"])(cell_Cell, Object(esm_extends["a" /* default */])({}, composite, {
       
 21371         id: cellId,
       
 21372         isActive: isActive,
       
 21373         key: cell,
       
 21374         value: cell,
       
 21375         onFocus: function onFocus() {
       
 21376           return handleOnChange(cell);
 24122         }
 21377         }
 24123       }, {
 21378       }));
 24124         key: "cancelBlurCheck",
 21379     }));
 24125         value: function cancelBlurCheck() {
 21380   }));
 24126           clearTimeout(this.blurCheckTimeout);
 21381 }
 24127         }
 21382 AlignmentMatrixControl.Icon = AlignmentMatrixControlIcon;
 24128         /**
 21383 
 24129          * Handles a mousedown or mouseup event to respectively assign and
 21384 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/animate/index.js
 24130          * unassign a flag for preventing blur check on button elements. Some
 21385 var animate = __webpack_require__(160);
 24131          * browsers, namely Firefox and Safari, do not emit a focus event on
 21386 
 24132          * button elements when clicked, while others do. The logic here
 21387 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/base-control/index.js
 24133          * intends to normalize this as treating click on buttons as focus.
       
 24134          *
       
 24135          * @see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/button#Clicking_and_focus
       
 24136          *
       
 24137          * @param {MouseEvent} event Event for mousedown or mouseup.
       
 24138          */
       
 24139 
       
 24140       }, {
       
 24141         key: "normalizeButtonFocus",
       
 24142         value: function normalizeButtonFocus(event) {
       
 24143           var type = event.type,
       
 24144               target = event.target;
       
 24145           var isInteractionEnd = Object(external_lodash_["includes"])(['mouseup', 'touchend'], type);
       
 24146 
       
 24147           if (isInteractionEnd) {
       
 24148             this.preventBlurCheck = false;
       
 24149           } else if (isFocusNormalizedButton(target)) {
       
 24150             this.preventBlurCheck = true;
       
 24151           }
       
 24152         }
       
 24153       }, {
       
 24154         key: "render",
       
 24155         value: function render() {
       
 24156           // Disable reason: See `normalizeButtonFocus` for browser-specific
       
 24157           // focus event normalization.
       
 24158 
       
 24159           /* eslint-disable jsx-a11y/no-static-element-interactions */
       
 24160           return Object(external_this_wp_element_["createElement"])("div", {
       
 24161             onFocus: this.cancelBlurCheck,
       
 24162             onMouseDown: this.normalizeButtonFocus,
       
 24163             onMouseUp: this.normalizeButtonFocus,
       
 24164             onTouchStart: this.normalizeButtonFocus,
       
 24165             onTouchEnd: this.normalizeButtonFocus,
       
 24166             onBlur: this.queueBlurCheck
       
 24167           }, Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({
       
 24168             ref: this.bindNode
       
 24169           }, this.props)));
       
 24170           /* eslint-enable jsx-a11y/no-static-element-interactions */
       
 24171         }
       
 24172       }]);
       
 24173 
       
 24174       return _class;
       
 24175     }(external_this_wp_element_["Component"])
       
 24176   );
       
 24177 }, 'withFocusOutside'));
       
 24178 
       
 24179 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js + 1 modules
       
 24180 var objectWithoutProperties = __webpack_require__(21);
       
 24181 
       
 24182 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/button/index.js
       
 24183 
       
 24184 
 21388 
 24185 
 21389 
 24186 /**
 21390 /**
 24187  * External dependencies
 21391  * External dependencies
 24188  */
 21392  */
 24189 
 21393 
 24190 /**
 21394 /**
       
 21395  * Internal dependencies
       
 21396  */
       
 21397 
       
 21398 
       
 21399 
       
 21400 function BaseControl(_ref) {
       
 21401   var id = _ref.id,
       
 21402       label = _ref.label,
       
 21403       hideLabelFromVision = _ref.hideLabelFromVision,
       
 21404       help = _ref.help,
       
 21405       className = _ref.className,
       
 21406       children = _ref.children;
       
 21407   return Object(external_this_wp_element_["createElement"])("div", {
       
 21408     className: classnames_default()('components-base-control', className)
       
 21409   }, Object(external_this_wp_element_["createElement"])("div", {
       
 21410     className: "components-base-control__field"
       
 21411   }, label && id && (hideLabelFromVision ? Object(external_this_wp_element_["createElement"])(visually_hidden, {
       
 21412     as: "label",
       
 21413     htmlFor: id
       
 21414   }, label) : Object(external_this_wp_element_["createElement"])("label", {
       
 21415     className: "components-base-control__label",
       
 21416     htmlFor: id
       
 21417   }, label)), label && !id && (hideLabelFromVision ? Object(external_this_wp_element_["createElement"])(visually_hidden, {
       
 21418     as: "label"
       
 21419   }, label) : Object(external_this_wp_element_["createElement"])(BaseControl.VisualLabel, null, label)), children), !!help && Object(external_this_wp_element_["createElement"])("p", {
       
 21420     id: id + '__help',
       
 21421     className: "components-base-control__help"
       
 21422   }, help));
       
 21423 }
       
 21424 
       
 21425 BaseControl.VisualLabel = function (_ref2) {
       
 21426   var className = _ref2.className,
       
 21427       children = _ref2.children;
       
 21428   className = classnames_default()('components-base-control__label', className);
       
 21429   return Object(external_this_wp_element_["createElement"])("span", {
       
 21430     className: className
       
 21431   }, children);
       
 21432 };
       
 21433 
       
 21434 /* harmony default export */ var base_control = (BaseControl);
       
 21435 
       
 21436 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/angle-picker-control/index.js
       
 21437 
       
 21438 
       
 21439 
       
 21440 
       
 21441 /**
 24191  * WordPress dependencies
 21442  * WordPress dependencies
 24192  */
 21443  */
 24193 
 21444 
 24194 
 21445 
 24195 function Button(props, ref) {
       
 24196   var href = props.href,
       
 24197       target = props.target,
       
 24198       isPrimary = props.isPrimary,
       
 24199       isLarge = props.isLarge,
       
 24200       isSmall = props.isSmall,
       
 24201       isTertiary = props.isTertiary,
       
 24202       isToggled = props.isToggled,
       
 24203       isBusy = props.isBusy,
       
 24204       isDefault = props.isDefault,
       
 24205       isLink = props.isLink,
       
 24206       isDestructive = props.isDestructive,
       
 24207       className = props.className,
       
 24208       disabled = props.disabled,
       
 24209       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["href", "target", "isPrimary", "isLarge", "isSmall", "isTertiary", "isToggled", "isBusy", "isDefault", "isLink", "isDestructive", "className", "disabled"]);
       
 24210 
       
 24211   var classes = classnames_default()('components-button', className, {
       
 24212     'is-button': isDefault || isPrimary || isLarge || isSmall,
       
 24213     'is-default': isDefault || isLarge || isSmall,
       
 24214     'is-primary': isPrimary,
       
 24215     'is-large': isLarge,
       
 24216     'is-small': isSmall,
       
 24217     'is-tertiary': isTertiary,
       
 24218     'is-toggled': isToggled,
       
 24219     'is-busy': isBusy,
       
 24220     'is-link': isLink,
       
 24221     'is-destructive': isDestructive
       
 24222   });
       
 24223   var tag = href !== undefined && !disabled ? 'a' : 'button';
       
 24224   var tagProps = tag === 'a' ? {
       
 24225     href: href,
       
 24226     target: target
       
 24227   } : {
       
 24228     type: 'button',
       
 24229     disabled: disabled
       
 24230   };
       
 24231   return Object(external_this_wp_element_["createElement"])(tag, Object(objectSpread["a" /* default */])({}, tagProps, additionalProps, {
       
 24232     className: classes,
       
 24233     ref: ref
       
 24234   }));
       
 24235 }
       
 24236 /* harmony default export */ var build_module_button = (Object(external_this_wp_element_["forwardRef"])(Button));
       
 24237 
       
 24238 // EXTERNAL MODULE: external {"this":["wp","isShallowEqual"]}
       
 24239 var external_this_wp_isShallowEqual_ = __webpack_require__(42);
       
 24240 var external_this_wp_isShallowEqual_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_isShallowEqual_);
       
 24241 
       
 24242 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/utils.js
       
 24243 
       
 24244 
       
 24245 
       
 24246 /**
       
 24247  * Module constants
       
 24248  */
       
 24249 var HEIGHT_OFFSET = 10; // used by the arrow and a bit of empty space
       
 24250 
       
 24251 var isMobileViewport = function isMobileViewport() {
       
 24252   return window.innerWidth < 782;
       
 24253 };
       
 24254 
       
 24255 var isRTL = function isRTL() {
       
 24256   return document.documentElement.dir === 'rtl';
       
 24257 };
       
 24258 /**
       
 24259  * Utility used to compute the popover position over the xAxis
       
 24260  *
       
 24261  * @param {Object} anchorRect       Anchor Rect.
       
 24262  * @param {Object} contentSize      Content Size.
       
 24263  * @param {string} xAxis            Desired xAxis.
       
 24264  * @param {string} chosenYAxis      yAxis to be used.
       
 24265  * @param {boolean} expandOnMobile  Whether to expand the popover on mobile or not.
       
 24266  *
       
 24267  * @return {Object} Popover xAxis position and constraints.
       
 24268  */
       
 24269 
       
 24270 
       
 24271 function computePopoverXAxisPosition(anchorRect, contentSize, xAxis, chosenYAxis) {
       
 24272   var width = contentSize.width; // Correct xAxis for RTL support
       
 24273 
       
 24274   if (xAxis === 'left' && isRTL()) {
       
 24275     xAxis = 'right';
       
 24276   } else if (xAxis === 'right' && isRTL()) {
       
 24277     xAxis = 'left';
       
 24278   } // x axis alignment choices
       
 24279 
       
 24280 
       
 24281   var anchorMidPoint = Math.round(anchorRect.left + anchorRect.width / 2);
       
 24282   var centerAlignment = {
       
 24283     popoverLeft: anchorMidPoint,
       
 24284     contentWidth: (anchorMidPoint - width / 2 > 0 ? width / 2 : anchorMidPoint) + (anchorMidPoint + width / 2 > window.innerWidth ? window.innerWidth - anchorMidPoint : width / 2)
       
 24285   };
       
 24286   var leftAlignmentX = chosenYAxis === 'middle' ? anchorRect.left : anchorMidPoint;
       
 24287   var leftAlignment = {
       
 24288     popoverLeft: leftAlignmentX,
       
 24289     contentWidth: leftAlignmentX - width > 0 ? width : leftAlignmentX
       
 24290   };
       
 24291   var rightAlignmentX = chosenYAxis === 'middle' ? anchorRect.right : anchorMidPoint;
       
 24292   var rightAlignment = {
       
 24293     popoverLeft: rightAlignmentX,
       
 24294     contentWidth: rightAlignmentX + width > window.innerWidth ? window.innerWidth - rightAlignmentX : width
       
 24295   }; // Choosing the x axis
       
 24296 
       
 24297   var chosenXAxis;
       
 24298   var contentWidth = null;
       
 24299 
       
 24300   if (xAxis === 'center' && centerAlignment.contentWidth === width) {
       
 24301     chosenXAxis = 'center';
       
 24302   } else if (xAxis === 'left' && leftAlignment.contentWidth === width) {
       
 24303     chosenXAxis = 'left';
       
 24304   } else if (xAxis === 'right' && rightAlignment.contentWidth === width) {
       
 24305     chosenXAxis = 'right';
       
 24306   } else {
       
 24307     chosenXAxis = leftAlignment.contentWidth > rightAlignment.contentWidth ? 'left' : 'right';
       
 24308     var chosenWidth = chosenXAxis === 'left' ? leftAlignment.contentWidth : rightAlignment.contentWidth;
       
 24309     contentWidth = chosenWidth !== width ? chosenWidth : null;
       
 24310   }
       
 24311 
       
 24312   var popoverLeft;
       
 24313 
       
 24314   if (chosenXAxis === 'center') {
       
 24315     popoverLeft = centerAlignment.popoverLeft;
       
 24316   } else if (chosenXAxis === 'left') {
       
 24317     popoverLeft = leftAlignment.popoverLeft;
       
 24318   } else {
       
 24319     popoverLeft = rightAlignment.popoverLeft;
       
 24320   }
       
 24321 
       
 24322   return {
       
 24323     xAxis: chosenXAxis,
       
 24324     popoverLeft: popoverLeft,
       
 24325     contentWidth: contentWidth
       
 24326   };
       
 24327 }
       
 24328 /**
       
 24329  * Utility used to compute the popover position over the yAxis
       
 24330  *
       
 24331  * @param {Object} anchorRect       Anchor Rect.
       
 24332  * @param {Object} contentSize      Content Size.
       
 24333  * @param {string} yAxis            Desired yAxis.
       
 24334  * @param {boolean} expandOnMobile  Whether to expand the popover on mobile or not.
       
 24335  *
       
 24336  * @return {Object} Popover xAxis position and constraints.
       
 24337  */
       
 24338 
       
 24339 function computePopoverYAxisPosition(anchorRect, contentSize, yAxis) {
       
 24340   var height = contentSize.height; // y axis alignment choices
       
 24341 
       
 24342   var anchorMidPoint = anchorRect.top + anchorRect.height / 2;
       
 24343   var middleAlignment = {
       
 24344     popoverTop: anchorMidPoint,
       
 24345     contentHeight: (anchorMidPoint - height / 2 > 0 ? height / 2 : anchorMidPoint) + (anchorMidPoint + height / 2 > window.innerHeight ? window.innerHeight - anchorMidPoint : height / 2)
       
 24346   };
       
 24347   var topAlignment = {
       
 24348     popoverTop: anchorRect.top,
       
 24349     contentHeight: anchorRect.top - HEIGHT_OFFSET - height > 0 ? height : anchorRect.top - HEIGHT_OFFSET
       
 24350   };
       
 24351   var bottomAlignment = {
       
 24352     popoverTop: anchorRect.bottom,
       
 24353     contentHeight: anchorRect.bottom + HEIGHT_OFFSET + height > window.innerHeight ? window.innerHeight - HEIGHT_OFFSET - anchorRect.bottom : height
       
 24354   }; // Choosing the y axis
       
 24355 
       
 24356   var chosenYAxis;
       
 24357   var contentHeight = null;
       
 24358 
       
 24359   if (yAxis === 'middle' && middleAlignment.contentHeight === height) {
       
 24360     chosenYAxis = 'middle';
       
 24361   } else if (yAxis === 'top' && topAlignment.contentHeight === height) {
       
 24362     chosenYAxis = 'top';
       
 24363   } else if (yAxis === 'bottom' && bottomAlignment.contentHeight === height) {
       
 24364     chosenYAxis = 'bottom';
       
 24365   } else {
       
 24366     chosenYAxis = topAlignment.contentHeight > bottomAlignment.contentHeight ? 'top' : 'bottom';
       
 24367     var chosenHeight = chosenYAxis === 'top' ? topAlignment.contentHeight : bottomAlignment.contentHeight;
       
 24368     contentHeight = chosenHeight !== height ? chosenHeight : null;
       
 24369   }
       
 24370 
       
 24371   var popoverTop;
       
 24372 
       
 24373   if (chosenYAxis === 'middle') {
       
 24374     popoverTop = middleAlignment.popoverTop;
       
 24375   } else if (chosenYAxis === 'top') {
       
 24376     popoverTop = topAlignment.popoverTop;
       
 24377   } else {
       
 24378     popoverTop = bottomAlignment.popoverTop;
       
 24379   }
       
 24380 
       
 24381   return {
       
 24382     yAxis: chosenYAxis,
       
 24383     popoverTop: popoverTop,
       
 24384     contentHeight: contentHeight
       
 24385   };
       
 24386 }
       
 24387 /**
       
 24388  * Utility used to compute the popover position and the content max width/height for a popover
       
 24389  * given its anchor rect and its content size.
       
 24390  *
       
 24391  * @param {Object} anchorRect       Anchor Rect.
       
 24392  * @param {Object} contentSize      Content Size.
       
 24393  * @param {string} position         Position.
       
 24394  * @param {boolean} expandOnMobile  Whether to expand the popover on mobile or not.
       
 24395  *
       
 24396  * @return {Object} Popover position and constraints.
       
 24397  */
       
 24398 
       
 24399 function utils_computePopoverPosition(anchorRect, contentSize) {
       
 24400   var position = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'top';
       
 24401   var expandOnMobile = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
       
 24402 
       
 24403   var _position$split = position.split(' '),
       
 24404       _position$split2 = Object(slicedToArray["a" /* default */])(_position$split, 2),
       
 24405       yAxis = _position$split2[0],
       
 24406       _position$split2$ = _position$split2[1],
       
 24407       xAxis = _position$split2$ === void 0 ? 'center' : _position$split2$;
       
 24408 
       
 24409   var yAxisPosition = computePopoverYAxisPosition(anchorRect, contentSize, yAxis);
       
 24410   var xAxisPosition = computePopoverXAxisPosition(anchorRect, contentSize, xAxis, yAxisPosition.yAxis);
       
 24411   return Object(objectSpread["a" /* default */])({
       
 24412     isMobile: isMobileViewport() && expandOnMobile
       
 24413   }, xAxisPosition, yAxisPosition);
       
 24414 }
       
 24415 
       
 24416 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/context.js
       
 24417 
       
 24418 
       
 24419 
       
 24420 
       
 24421 
       
 24422 
       
 24423 
       
 24424 
       
 24425 
       
 24426 /**
       
 24427  * External dependencies
       
 24428  */
       
 24429 
       
 24430 /**
       
 24431  * WordPress dependencies
       
 24432  */
       
 24433 
       
 24434 
       
 24435 
       
 24436 var _createContext = Object(external_this_wp_element_["createContext"])({
       
 24437   focusHistory: []
       
 24438 }),
       
 24439     Provider = _createContext.Provider,
       
 24440     Consumer = _createContext.Consumer;
       
 24441 
       
 24442 Provider.displayName = 'FocusReturnProvider';
       
 24443 Consumer.displayName = 'FocusReturnConsumer';
       
 24444 /**
       
 24445  * The maximum history length to capture for the focus stack. When exceeded,
       
 24446  * items should be shifted from the stack for each consecutive push.
       
 24447  *
       
 24448  * @type {number}
       
 24449  */
       
 24450 
       
 24451 var MAX_STACK_LENGTH = 100;
       
 24452 
       
 24453 var context_FocusReturnProvider =
       
 24454 /*#__PURE__*/
       
 24455 function (_Component) {
       
 24456   Object(inherits["a" /* default */])(FocusReturnProvider, _Component);
       
 24457 
       
 24458   function FocusReturnProvider() {
       
 24459     var _this;
       
 24460 
       
 24461     Object(classCallCheck["a" /* default */])(this, FocusReturnProvider);
       
 24462 
       
 24463     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FocusReturnProvider).apply(this, arguments));
       
 24464     _this.onFocus = _this.onFocus.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 24465     _this.state = {
       
 24466       focusHistory: []
       
 24467     };
       
 24468     return _this;
       
 24469   }
       
 24470 
       
 24471   Object(createClass["a" /* default */])(FocusReturnProvider, [{
       
 24472     key: "onFocus",
       
 24473     value: function onFocus(event) {
       
 24474       var focusHistory = this.state.focusHistory; // Push the focused element to the history stack, keeping only unique
       
 24475       // members but preferring the _last_ occurrence of any duplicates.
       
 24476       // Lodash's `uniq` behavior favors the first occurrence, so the array
       
 24477       // is temporarily reversed prior to it being called upon. Uniqueness
       
 24478       // helps avoid situations where, such as in a constrained tabbing area,
       
 24479       // the user changes focus enough within a transient element that the
       
 24480       // stack may otherwise only consist of members pending destruction, at
       
 24481       // which point focus might have been lost.
       
 24482 
       
 24483       var nextFocusHistory = Object(external_lodash_["uniq"])([].concat(Object(toConsumableArray["a" /* default */])(focusHistory), [event.target]).slice(-1 * MAX_STACK_LENGTH).reverse()).reverse();
       
 24484       this.setState({
       
 24485         focusHistory: nextFocusHistory
       
 24486       });
       
 24487     }
       
 24488   }, {
       
 24489     key: "render",
       
 24490     value: function render() {
       
 24491       var _this$props = this.props,
       
 24492           children = _this$props.children,
       
 24493           className = _this$props.className;
       
 24494       return Object(external_this_wp_element_["createElement"])(Provider, {
       
 24495         value: this.state
       
 24496       }, Object(external_this_wp_element_["createElement"])("div", {
       
 24497         onFocus: this.onFocus,
       
 24498         className: className
       
 24499       }, children));
       
 24500     }
       
 24501   }]);
       
 24502 
       
 24503   return FocusReturnProvider;
       
 24504 }(external_this_wp_element_["Component"]);
       
 24505 
       
 24506 /* harmony default export */ var with_focus_return_context = (context_FocusReturnProvider);
       
 24507 
       
 24508 
       
 24509 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/index.js
       
 24510 
       
 24511 
       
 24512 
       
 24513 
       
 24514 
       
 24515 
       
 24516 
       
 24517 
       
 24518 
       
 24519 /**
       
 24520  * External dependencies
       
 24521  */
       
 24522 
       
 24523 /**
       
 24524  * WordPress dependencies
       
 24525  */
       
 24526 
       
 24527 
       
 24528 
 21446 
 24529 /**
 21447 /**
 24530  * Internal dependencies
 21448  * Internal dependencies
 24531  */
 21449  */
 24532 
 21450 
 24533 
 21451 
 24534 /**
 21452 
 24535  * Returns true if the given object is component-like. An object is component-
 21453 function getAngle(centerX, centerY, pointX, pointY) {
 24536  * like if it is an instance of wp.element.Component, or is a function.
 21454   var y = pointY - centerY;
 24537  *
 21455   var x = pointX - centerX;
 24538  * @param {*} object Object to test.
 21456   var angleInRadians = Math.atan2(y, x);
 24539  *
 21457   var angleInDeg = Math.round(angleInRadians * (180 / Math.PI)) + 90;
 24540  * @return {boolean} Whether object is component-like.
 21458 
 24541  */
 21459   if (angleInDeg < 0) {
 24542 
 21460     return 360 + angleInDeg;
 24543 function isComponentLike(object) {
 21461   }
 24544   return object instanceof external_this_wp_element_["Component"] || typeof object === 'function';
 21462 
 24545 }
 21463   return angleInDeg;
 24546 /**
 21464 }
 24547  * Higher Order Component used to be used to wrap disposable elements like
 21465 
 24548  * sidebars, modals, dropdowns. When mounting the wrapped component, we track a
 21466 var angle_picker_control_AngleCircle = function AngleCircle(_ref) {
 24549  * reference to the current active element so we know where to restore focus
 21467   var value = _ref.value,
 24550  * when the component is unmounted.
 21468       onChange = _ref.onChange,
 24551  *
 21469       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["value", "onChange"]);
 24552  * @param {(WPComponent|Object)} options The component to be enhanced with
 21470 
 24553  *                                       focus return behavior, or an object
 21471   var angleCircleRef = Object(external_this_wp_element_["useRef"])();
 24554  *                                       describing the component and the
 21472   var angleCircleCenter = Object(external_this_wp_element_["useRef"])();
 24555  *                                       focus return characteristics.
 21473 
 24556  *
 21474   var setAngleCircleCenter = function setAngleCircleCenter() {
 24557  * @return {Component} Component with the focus restauration behaviour.
 21475     var rect = angleCircleRef.current.getBoundingClientRect();
 24558  */
 21476     angleCircleCenter.current = {
 24559 
 21477       x: rect.x + rect.width / 2,
 24560 
 21478       y: rect.y + rect.height / 2
 24561 function withFocusReturn(options) {
       
 24562   // Normalize as overloaded form `withFocusReturn( options )( Component )`
       
 24563   // or as `withFocusReturn( Component )`.
       
 24564   if (isComponentLike(options)) {
       
 24565     var WrappedComponent = options;
       
 24566     return withFocusReturn({})(WrappedComponent);
       
 24567   }
       
 24568 
       
 24569   var _options$onFocusRetur = options.onFocusReturn,
       
 24570       onFocusReturn = _options$onFocusRetur === void 0 ? external_lodash_["stubTrue"] : _options$onFocusRetur;
       
 24571   return function (WrappedComponent) {
       
 24572     var FocusReturn =
       
 24573     /*#__PURE__*/
       
 24574     function (_Component) {
       
 24575       Object(inherits["a" /* default */])(FocusReturn, _Component);
       
 24576 
       
 24577       function FocusReturn() {
       
 24578         var _this;
       
 24579 
       
 24580         Object(classCallCheck["a" /* default */])(this, FocusReturn);
       
 24581 
       
 24582         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FocusReturn).apply(this, arguments));
       
 24583         _this.ownFocusedElements = new Set();
       
 24584         _this.activeElementOnMount = document.activeElement;
       
 24585 
       
 24586         _this.setIsFocusedFalse = function () {
       
 24587           return _this.isFocused = false;
       
 24588         };
       
 24589 
       
 24590         _this.setIsFocusedTrue = function (event) {
       
 24591           _this.ownFocusedElements.add(event.target);
       
 24592 
       
 24593           _this.isFocused = true;
       
 24594         };
       
 24595 
       
 24596         return _this;
       
 24597       }
       
 24598 
       
 24599       Object(createClass["a" /* default */])(FocusReturn, [{
       
 24600         key: "componentWillUnmount",
       
 24601         value: function componentWillUnmount() {
       
 24602           var activeElementOnMount = this.activeElementOnMount,
       
 24603               isFocused = this.isFocused,
       
 24604               ownFocusedElements = this.ownFocusedElements;
       
 24605 
       
 24606           if (!isFocused) {
       
 24607             return;
       
 24608           } // Defer to the component's own explicit focus return behavior,
       
 24609           // if specified. The function should return `false` to prevent
       
 24610           // the default behavior otherwise occurring here. This allows
       
 24611           // for support that the `onFocusReturn` decides to allow the
       
 24612           // default behavior to occur under some conditions.
       
 24613 
       
 24614 
       
 24615           if (onFocusReturn() === false) {
       
 24616             return;
       
 24617           }
       
 24618 
       
 24619           var stack = [].concat(Object(toConsumableArray["a" /* default */])(external_lodash_["without"].apply(void 0, [this.props.focusHistory].concat(Object(toConsumableArray["a" /* default */])(ownFocusedElements)))), [activeElementOnMount]);
       
 24620           var candidate;
       
 24621 
       
 24622           while (candidate = stack.pop()) {
       
 24623             if (document.body.contains(candidate)) {
       
 24624               candidate.focus();
       
 24625               return;
       
 24626             }
       
 24627           }
       
 24628         }
       
 24629       }, {
       
 24630         key: "render",
       
 24631         value: function render() {
       
 24632           return Object(external_this_wp_element_["createElement"])("div", {
       
 24633             onFocus: this.setIsFocusedTrue,
       
 24634             onBlur: this.setIsFocusedFalse
       
 24635           }, Object(external_this_wp_element_["createElement"])(WrappedComponent, this.props));
       
 24636         }
       
 24637       }]);
       
 24638 
       
 24639       return FocusReturn;
       
 24640     }(external_this_wp_element_["Component"]);
       
 24641 
       
 24642     return function (props) {
       
 24643       return Object(external_this_wp_element_["createElement"])(Consumer, null, function (context) {
       
 24644         return Object(external_this_wp_element_["createElement"])(FocusReturn, Object(esm_extends["a" /* default */])({}, props, context));
       
 24645       });
       
 24646     };
 21479     };
 24647   };
 21480   };
 24648 }
 21481 
 24649 
 21482   var changeAngleToPosition = function changeAngleToPosition(event) {
 24650 /* harmony default export */ var with_focus_return = (Object(external_this_wp_compose_["createHigherOrderComponent"])(withFocusReturn, 'withFocusReturn'));
 21483     var _angleCircleCenter$cu = angleCircleCenter.current,
 24651 
 21484         centerX = _angleCircleCenter$cu.x,
 24652 
 21485         centerY = _angleCircleCenter$cu.y; // Prevent (drag) mouse events from selecting and accidentally
 24653 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-constrained-tabbing/index.js
 21486     // triggering actions from other elements.
 24654 
 21487 
 24655 
 21488     event.preventDefault();
 24656 
 21489     onChange(getAngle(centerX, centerY, event.clientX, event.clientY));
 24657 
 21490   };
 24658 
 21491 
 24659 
 21492   var _useDragging = Object(external_this_wp_compose_["__experimentalUseDragging"])({
 24660 
 21493     onDragStart: function onDragStart(event) {
 24661 
 21494       setAngleCircleCenter();
 24662 /**
 21495       changeAngleToPosition(event);
 24663  * WordPress dependencies
 21496     },
 24664  */
 21497     onDragMove: changeAngleToPosition,
 24665 
 21498     onDragEnd: changeAngleToPosition
 24666 
 21499   }),
 24667 
 21500       startDrag = _useDragging.startDrag,
 24668 
 21501       isDragging = _useDragging.isDragging;
 24669 var withConstrainedTabbing = Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
 21502 
 24670   return (
 21503   return (
 24671     /*#__PURE__*/
 21504     /* eslint-disable jsx-a11y/no-static-element-interactions */
 24672     function (_Component) {
 21505     Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({
 24673       Object(inherits["a" /* default */])(_class, _Component);
 21506       ref: angleCircleRef,
 24674 
 21507       onMouseDown: startDrag,
 24675       function _class() {
 21508       className: "components-angle-picker-control__angle-circle",
 24676         var _this;
 21509       style: isDragging ? {
 24677 
 21510         cursor: 'grabbing'
 24678         Object(classCallCheck["a" /* default */])(this, _class);
 21511       } : undefined
 24679 
 21512     }, props), Object(external_this_wp_element_["createElement"])("div", {
 24680         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(_class).apply(this, arguments));
 21513       style: value ? {
 24681         _this.focusContainRef = Object(external_this_wp_element_["createRef"])();
 21514         transform: "rotate(".concat(value, "deg)")
 24682         _this.handleTabBehaviour = _this.handleTabBehaviour.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 21515       } : undefined,
 24683         return _this;
 21516       className: "components-angle-picker-control__angle-circle-indicator-wrapper"
 24684       }
 21517     }, Object(external_this_wp_element_["createElement"])("span", {
 24685 
 21518       className: "components-angle-picker-control__angle-circle-indicator"
 24686       Object(createClass["a" /* default */])(_class, [{
 21519     })))
 24687         key: "handleTabBehaviour",
 21520     /* eslint-enable jsx-a11y/no-static-element-interactions */
 24688         value: function handleTabBehaviour(event) {
 21521 
 24689           if (event.keyCode !== external_this_wp_keycodes_["TAB"]) {
       
 24690             return;
       
 24691           }
       
 24692 
       
 24693           var tabbables = external_this_wp_dom_["focus"].tabbable.find(this.focusContainRef.current);
       
 24694 
       
 24695           if (!tabbables.length) {
       
 24696             return;
       
 24697           }
       
 24698 
       
 24699           var firstTabbable = tabbables[0];
       
 24700           var lastTabbable = tabbables[tabbables.length - 1];
       
 24701 
       
 24702           if (event.shiftKey && event.target === firstTabbable) {
       
 24703             event.preventDefault();
       
 24704             lastTabbable.focus();
       
 24705           } else if (!event.shiftKey && event.target === lastTabbable) {
       
 24706             event.preventDefault();
       
 24707             firstTabbable.focus();
       
 24708             /*
       
 24709              * When pressing Tab and none of the tabbables has focus, the keydown
       
 24710              * event happens on the wrapper div: move focus on the first tabbable.
       
 24711              */
       
 24712           } else if (!tabbables.includes(event.target)) {
       
 24713             event.preventDefault();
       
 24714             firstTabbable.focus();
       
 24715           }
       
 24716         }
       
 24717       }, {
       
 24718         key: "render",
       
 24719         value: function render() {
       
 24720           // Disable reason: this component is non-interactive, but must capture
       
 24721           // events from the wrapped component to determine when the Tab key is used.
       
 24722 
       
 24723           /* eslint-disable jsx-a11y/no-static-element-interactions */
       
 24724           return Object(external_this_wp_element_["createElement"])("div", {
       
 24725             onKeyDown: this.handleTabBehaviour,
       
 24726             ref: this.focusContainRef,
       
 24727             tabIndex: "-1"
       
 24728           }, Object(external_this_wp_element_["createElement"])(WrappedComponent, this.props));
       
 24729           /* eslint-enable jsx-a11y/no-static-element-interactions */
       
 24730         }
       
 24731       }]);
       
 24732 
       
 24733       return _class;
       
 24734     }(external_this_wp_element_["Component"])
       
 24735   );
 21522   );
 24736 }, 'withConstrainedTabbing');
       
 24737 /* harmony default export */ var with_constrained_tabbing = (withConstrainedTabbing);
       
 24738 
       
 24739 // EXTERNAL MODULE: ./node_modules/react-click-outside/dist/index.js
       
 24740 var dist = __webpack_require__(108);
       
 24741 var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
       
 24742 
       
 24743 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/detect-outside.js
       
 24744 
       
 24745 
       
 24746 
       
 24747 
       
 24748 
       
 24749 
       
 24750 /**
       
 24751  * External dependencies
       
 24752  */
       
 24753 
       
 24754 /**
       
 24755  * WordPress dependencies
       
 24756  */
       
 24757 
       
 24758 
       
 24759 
       
 24760 var detect_outside_PopoverDetectOutside =
       
 24761 /*#__PURE__*/
       
 24762 function (_Component) {
       
 24763   Object(inherits["a" /* default */])(PopoverDetectOutside, _Component);
       
 24764 
       
 24765   function PopoverDetectOutside() {
       
 24766     Object(classCallCheck["a" /* default */])(this, PopoverDetectOutside);
       
 24767 
       
 24768     return Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PopoverDetectOutside).apply(this, arguments));
       
 24769   }
       
 24770 
       
 24771   Object(createClass["a" /* default */])(PopoverDetectOutside, [{
       
 24772     key: "handleClickOutside",
       
 24773     value: function handleClickOutside(event) {
       
 24774       var onClickOutside = this.props.onClickOutside;
       
 24775 
       
 24776       if (onClickOutside) {
       
 24777         onClickOutside(event);
       
 24778       }
       
 24779     }
       
 24780   }, {
       
 24781     key: "render",
       
 24782     value: function render() {
       
 24783       return this.props.children;
       
 24784     }
       
 24785   }]);
       
 24786 
       
 24787   return PopoverDetectOutside;
       
 24788 }(external_this_wp_element_["Component"]);
       
 24789 
       
 24790 /* harmony default export */ var detect_outside = (dist_default()(detect_outside_PopoverDetectOutside));
       
 24791 
       
 24792 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/shortcut/index.js
       
 24793 
       
 24794 
       
 24795 /**
       
 24796  * External dependencies
       
 24797  */
       
 24798 
       
 24799 
       
 24800 function Shortcut(_ref) {
       
 24801   var shortcut = _ref.shortcut,
       
 24802       className = _ref.className;
       
 24803 
       
 24804   if (!shortcut) {
       
 24805     return null;
       
 24806   }
       
 24807 
       
 24808   var displayText;
       
 24809   var ariaLabel;
       
 24810 
       
 24811   if (Object(external_lodash_["isString"])(shortcut)) {
       
 24812     displayText = shortcut;
       
 24813   }
       
 24814 
       
 24815   if (Object(external_lodash_["isObject"])(shortcut)) {
       
 24816     displayText = shortcut.display;
       
 24817     ariaLabel = shortcut.ariaLabel;
       
 24818   }
       
 24819 
       
 24820   return Object(external_this_wp_element_["createElement"])("span", {
       
 24821     className: className,
       
 24822     "aria-label": ariaLabel
       
 24823   }, displayText);
       
 24824 }
       
 24825 
       
 24826 /* harmony default export */ var build_module_shortcut = (Shortcut);
       
 24827 
       
 24828 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tooltip/index.js
       
 24829 
       
 24830 
       
 24831 
       
 24832 
       
 24833 
       
 24834 
       
 24835 
       
 24836 /**
       
 24837  * External dependencies
       
 24838  */
       
 24839 
       
 24840 /**
       
 24841  * WordPress dependencies
       
 24842  */
       
 24843 
       
 24844 
       
 24845 /**
       
 24846  * Internal dependencies
       
 24847  */
       
 24848 
       
 24849 
       
 24850 
       
 24851 /**
       
 24852  * Time over children to wait before showing tooltip
       
 24853  *
       
 24854  * @type {Number}
       
 24855  */
       
 24856 
       
 24857 var TOOLTIP_DELAY = 700;
       
 24858 
       
 24859 var tooltip_Tooltip =
       
 24860 /*#__PURE__*/
       
 24861 function (_Component) {
       
 24862   Object(inherits["a" /* default */])(Tooltip, _Component);
       
 24863 
       
 24864   function Tooltip() {
       
 24865     var _this;
       
 24866 
       
 24867     Object(classCallCheck["a" /* default */])(this, Tooltip);
       
 24868 
       
 24869     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Tooltip).apply(this, arguments));
       
 24870     _this.delayedSetIsOver = Object(external_lodash_["debounce"])(function (isOver) {
       
 24871       return _this.setState({
       
 24872         isOver: isOver
       
 24873       });
       
 24874     }, TOOLTIP_DELAY);
       
 24875     _this.state = {
       
 24876       isOver: false
       
 24877     };
       
 24878     return _this;
       
 24879   }
       
 24880 
       
 24881   Object(createClass["a" /* default */])(Tooltip, [{
       
 24882     key: "componentWillUnmount",
       
 24883     value: function componentWillUnmount() {
       
 24884       this.delayedSetIsOver.cancel();
       
 24885     }
       
 24886   }, {
       
 24887     key: "emitToChild",
       
 24888     value: function emitToChild(eventName, event) {
       
 24889       var children = this.props.children;
       
 24890 
       
 24891       if (external_this_wp_element_["Children"].count(children) !== 1) {
       
 24892         return;
       
 24893       }
       
 24894 
       
 24895       var child = external_this_wp_element_["Children"].only(children);
       
 24896 
       
 24897       if (typeof child.props[eventName] === 'function') {
       
 24898         child.props[eventName](event);
       
 24899       }
       
 24900     }
       
 24901   }, {
       
 24902     key: "createToggleIsOver",
       
 24903     value: function createToggleIsOver(eventName, isDelayed) {
       
 24904       var _this2 = this;
       
 24905 
       
 24906       return function (event) {
       
 24907         // Preserve original child callback behavior
       
 24908         _this2.emitToChild(eventName, event); // Mouse events behave unreliably in React for disabled elements,
       
 24909         // firing on mouseenter but not mouseleave.  Further, the default
       
 24910         // behavior for disabled elements in some browsers is to ignore
       
 24911         // mouse events. Don't bother trying to to handle them.
       
 24912         //
       
 24913         // See: https://github.com/facebook/react/issues/4251
       
 24914 
       
 24915 
       
 24916         if (event.currentTarget.disabled) {
       
 24917           return;
       
 24918         } // Needed in case unsetting is over while delayed set pending, i.e.
       
 24919         // quickly blur/mouseleave before delayedSetIsOver is called
       
 24920 
       
 24921 
       
 24922         _this2.delayedSetIsOver.cancel();
       
 24923 
       
 24924         var isOver = Object(external_lodash_["includes"])(['focus', 'mouseenter'], event.type);
       
 24925 
       
 24926         if (isOver === _this2.state.isOver) {
       
 24927           return;
       
 24928         }
       
 24929 
       
 24930         if (isDelayed) {
       
 24931           _this2.delayedSetIsOver(isOver);
       
 24932         } else {
       
 24933           _this2.setState({
       
 24934             isOver: isOver
       
 24935           });
       
 24936         }
       
 24937       };
       
 24938     }
       
 24939   }, {
       
 24940     key: "render",
       
 24941     value: function render() {
       
 24942       var _this$props = this.props,
       
 24943           children = _this$props.children,
       
 24944           position = _this$props.position,
       
 24945           text = _this$props.text,
       
 24946           shortcut = _this$props.shortcut;
       
 24947 
       
 24948       if (external_this_wp_element_["Children"].count(children) !== 1) {
       
 24949         if (false) {}
       
 24950 
       
 24951         return children;
       
 24952       }
       
 24953 
       
 24954       var child = external_this_wp_element_["Children"].only(children);
       
 24955       var isOver = this.state.isOver;
       
 24956       return Object(external_this_wp_element_["cloneElement"])(child, {
       
 24957         onMouseEnter: this.createToggleIsOver('onMouseEnter', true),
       
 24958         onMouseLeave: this.createToggleIsOver('onMouseLeave'),
       
 24959         onClick: this.createToggleIsOver('onClick'),
       
 24960         onFocus: this.createToggleIsOver('onFocus'),
       
 24961         onBlur: this.createToggleIsOver('onBlur'),
       
 24962         children: Object(external_this_wp_element_["concatChildren"])(child.props.children, isOver && Object(external_this_wp_element_["createElement"])(popover, {
       
 24963           focusOnMount: false,
       
 24964           position: position,
       
 24965           className: "components-tooltip",
       
 24966           "aria-hidden": "true",
       
 24967           animate: false
       
 24968         }, text, Object(external_this_wp_element_["createElement"])(build_module_shortcut, {
       
 24969           className: "components-tooltip__shortcut",
       
 24970           shortcut: shortcut
       
 24971         })))
       
 24972       });
       
 24973     }
       
 24974   }]);
       
 24975 
       
 24976   return Tooltip;
       
 24977 }(external_this_wp_element_["Component"]);
       
 24978 
       
 24979 /* harmony default export */ var build_module_tooltip = (tooltip_Tooltip);
       
 24980 
       
 24981 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dashicon/icon-class.js
       
 24982 var IconClass = function IconClass(props) {
       
 24983   var icon = props.icon,
       
 24984       className = props.className;
       
 24985   return ['dashicon', 'dashicons-' + icon, className].filter(Boolean).join(' ');
       
 24986 };
 21523 };
 24987 
 21524 
 24988 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dashicon/index.js
 21525 function AnglePickerControl(_ref2) {
 24989 
 21526   var value = _ref2.value,
 24990 
 21527       _onChange = _ref2.onChange,
 24991 
 21528       _ref2$label = _ref2.label,
 24992 
 21529       label = _ref2$label === void 0 ? Object(external_this_wp_i18n_["__"])('Angle') : _ref2$label;
 24993 
 21530   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(AnglePickerControl);
 24994 
 21531   var inputId = "components-angle-picker-control__input-".concat(instanceId);
 24995 
 21532   return Object(external_this_wp_element_["createElement"])(base_control, {
 24996 /* !!!
 21533     label: label,
 24997 IF YOU ARE EDITING dashicon/index.jsx
 21534     id: inputId,
 24998 THEN YOU ARE EDITING A FILE THAT GETS OUTPUT FROM THE DASHICONS REPO!
 21535     className: "components-angle-picker-control"
 24999 DO NOT EDIT THAT FILE! EDIT index-header.jsx and index-footer.jsx instead
 21536   }, Object(external_this_wp_element_["createElement"])(angle_picker_control_AngleCircle, {
 25000 OR if you're looking to change now SVGs get output, you'll need to edit strings in the Gruntfile :)
 21537     value: value,
 25001 !!! */
 21538     onChange: _onChange,
 25002 
 21539     "aria-hidden": "true"
 25003 /**
 21540   }), Object(external_this_wp_element_["createElement"])("input", {
 25004  * WordPress dependencies
 21541     className: "components-angle-picker-control__input-field",
 25005  */
 21542     type: "number",
 25006 
 21543     id: inputId,
 25007 /**
 21544     onChange: function onChange(event) {
 25008  * Internal dependencies
 21545       var unprocessedValue = event.target.value;
 25009  */
 21546       var inputValue = unprocessedValue !== '' ? parseInt(event.target.value, 10) : 0;
 25010 
 21547 
 25011 
 21548       _onChange(inputValue);
 25012 
 21549     },
 25013 
 21550     value: value,
 25014 var dashicon_Dashicon =
 21551     min: 0,
 25015 /*#__PURE__*/
 21552     max: 360,
 25016 function (_Component) {
 21553     step: "1"
 25017   Object(inherits["a" /* default */])(Dashicon, _Component);
 21554   }));
 25018 
 21555 }
 25019   function Dashicon() {
 21556 
 25020     Object(classCallCheck["a" /* default */])(this, Dashicon);
 21557 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/classCallCheck.js
 25021 
 21558 var classCallCheck = __webpack_require__(20);
 25022     return Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Dashicon).apply(this, arguments));
 21559 
 25023   }
 21560 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js
 25024 
 21561 var assertThisInitialized = __webpack_require__(12);
 25025   Object(createClass["a" /* default */])(Dashicon, [{
 21562 
 25026     key: "shouldComponentUpdate",
 21563 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/createClass.js
 25027     value: function shouldComponentUpdate(nextProps) {
 21564 var createClass = __webpack_require__(19);
 25028       return this.props.icon !== nextProps.icon || this.props.size !== nextProps.size || this.props.className !== nextProps.className || this.props.ariaPressed !== nextProps.ariaPressed;
 21565 
 25029     }
 21566 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js
 25030   }, {
 21567 var possibleConstructorReturn = __webpack_require__(23);
 25031     key: "render",
 21568 
 25032     value: function render() {
 21569 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js
 25033       var _this$props = this.props,
 21570 var getPrototypeOf = __webpack_require__(16);
 25034           icon = _this$props.icon,
 21571 
 25035           _this$props$size = _this$props.size,
 21572 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inherits.js + 1 modules
 25036           size = _this$props$size === void 0 ? 20 : _this$props$size;
 21573 var inherits = __webpack_require__(22);
 25037       var path;
 21574 
 25038 
 21575 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
 25039       switch (icon) {
 21576 var toConsumableArray = __webpack_require__(18);
 25040         case 'admin-appearance':
 21577 
 25041           path = 'M14.48 11.06L7.41 3.99l1.5-1.5c.5-.56 2.3-.47 3.51.32 1.21.8 1.43 1.28 2.91 2.1 1.18.64 2.45 1.26 4.45.85zm-.71.71L6.7 4.7 4.93 6.47c-.39.39-.39 1.02 0 1.41l1.06 1.06c.39.39.39 1.03 0 1.42-.6.6-1.43 1.11-2.21 1.69-.35.26-.7.53-1.01.84C1.43 14.23.4 16.08 1.4 17.07c.99 1 2.84-.03 4.18-1.36.31-.31.58-.66.85-1.02.57-.78 1.08-1.61 1.69-2.21.39-.39 1.02-.39 1.41 0l1.06 1.06c.39.39 1.02.39 1.41 0z';
 21578 // EXTERNAL MODULE: external {"this":["wp","keycodes"]}
 25042           break;
 21579 var external_this_wp_keycodes_ = __webpack_require__(21);
 25043 
 21580 
 25044         case 'admin-collapse':
 21581 // EXTERNAL MODULE: external {"this":["wp","richText"]}
 25045           path = 'M10 2.16c4.33 0 7.84 3.51 7.84 7.84s-3.51 7.84-7.84 7.84S2.16 14.33 2.16 10 5.71 2.16 10 2.16zm2 11.72V6.12L6.18 9.97z';
 21582 var external_this_wp_richText_ = __webpack_require__(25);
 25046           break;
 21583 
 25047 
 21584 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/button/index.js
 25048         case 'admin-comments':
 21585 var build_module_button = __webpack_require__(34);
 25049           path = 'M5 2h9c1.1 0 2 .9 2 2v7c0 1.1-.9 2-2 2h-2l-5 5v-5H5c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2z';
 21586 
 25050           break;
 21587 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/popover/index.js + 2 modules
 25051 
 21588 var popover = __webpack_require__(112);
 25052         case 'admin-customizer':
       
 25053           path = 'M18.33 3.57s.27-.8-.31-1.36c-.53-.52-1.22-.24-1.22-.24-.61.3-5.76 3.47-7.67 5.57-.86.96-2.06 3.79-1.09 4.82.92.98 3.96-.17 4.79-1 2.06-2.06 5.21-7.17 5.5-7.79zM1.4 17.65c2.37-1.56 1.46-3.41 3.23-4.64.93-.65 2.22-.62 3.08.29.63.67.8 2.57-.16 3.46-1.57 1.45-4 1.55-6.15.89z';
       
 25054           break;
       
 25055 
       
 25056         case 'admin-generic':
       
 25057           path = 'M18 12h-2.18c-.17.7-.44 1.35-.81 1.93l1.54 1.54-2.1 2.1-1.54-1.54c-.58.36-1.23.63-1.91.79V19H8v-2.18c-.68-.16-1.33-.43-1.91-.79l-1.54 1.54-2.12-2.12 1.54-1.54c-.36-.58-.63-1.23-.79-1.91H1V9.03h2.17c.16-.7.44-1.35.8-1.94L2.43 5.55l2.1-2.1 1.54 1.54c.58-.37 1.24-.64 1.93-.81V2h3v2.18c.68.16 1.33.43 1.91.79l1.54-1.54 2.12 2.12-1.54 1.54c.36.59.64 1.24.8 1.94H18V12zm-8.5 1.5c1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3 1.34 3 3 3z';
       
 25058           break;
       
 25059 
       
 25060         case 'admin-home':
       
 25061           path = 'M16 8.5l1.53 1.53-1.06 1.06L10 4.62l-6.47 6.47-1.06-1.06L10 2.5l4 4v-2h2v4zm-6-2.46l6 5.99V18H4v-5.97zM12 17v-5H8v5h4z';
       
 25062           break;
       
 25063 
       
 25064         case 'admin-links':
       
 25065           path = 'M17.74 2.76c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-1.12 1.12-2.7 1.47-4.14 1.09l2.62-2.61.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-3.38 3.38c-.37-1.44-.02-3.02 1.1-4.14l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM8.59 13.43l5.34-5.34c.42-.42.42-1.1 0-1.52-.44-.43-1.13-.39-1.53 0l-5.33 5.34c-.42.42-.42 1.1 0 1.52.44.43 1.13.39 1.52 0zm-.76 2.29l4.14-4.15c.38 1.44.03 3.02-1.09 4.14l-1.52 1.53c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.53-1.52c1.12-1.12 2.7-1.47 4.14-1.1l-4.14 4.15c-.85.84-.85 2.2 0 3.05.84.84 2.2.84 3.04 0z';
       
 25066           break;
       
 25067 
       
 25068         case 'admin-media':
       
 25069           path = 'M13 11V4c0-.55-.45-1-1-1h-1.67L9 1H5L3.67 3H2c-.55 0-1 .45-1 1v7c0 .55.45 1 1 1h10c.55 0 1-.45 1-1zM7 4.5c1.38 0 2.5 1.12 2.5 2.5S8.38 9.5 7 9.5 4.5 8.38 4.5 7 5.62 4.5 7 4.5zM14 6h5v10.5c0 1.38-1.12 2.5-2.5 2.5S14 17.88 14 16.5s1.12-2.5 2.5-2.5c.17 0 .34.02.5.05V9h-3V6zm-4 8.05V13h2v3.5c0 1.38-1.12 2.5-2.5 2.5S7 17.88 7 16.5 8.12 14 9.5 14c.17 0 .34.02.5.05z';
       
 25070           break;
       
 25071 
       
 25072         case 'admin-multisite':
       
 25073           path = 'M14.27 6.87L10 3.14 5.73 6.87 5 6.14l5-4.38 5 4.38zM14 8.42l-4.05 3.43L6 8.38v-.74l4-3.5 4 3.5v.78zM11 9.7V8H9v1.7h2zm-1.73 4.03L5 10 .73 13.73 0 13l5-4.38L10 13zm10 0L15 10l-4.27 3.73L10 13l5-4.38L20 13zM5 11l4 3.5V18H1v-3.5zm10 0l4 3.5V18h-8v-3.5zm-9 6v-2H4v2h2zm10 0v-2h-2v2h2z';
       
 25074           break;
       
 25075 
       
 25076         case 'admin-network':
       
 25077           path = 'M16.95 2.58c1.96 1.95 1.96 5.12 0 7.07-1.51 1.51-3.75 1.84-5.59 1.01l-1.87 3.31-2.99.31L5 18H2l-1-2 7.95-7.69c-.92-1.87-.62-4.18.93-5.73 1.95-1.96 5.12-1.96 7.07 0zm-2.51 3.79c.74 0 1.33-.6 1.33-1.34 0-.73-.59-1.33-1.33-1.33-.73 0-1.33.6-1.33 1.33 0 .74.6 1.34 1.33 1.34z';
       
 25078           break;
       
 25079 
       
 25080         case 'admin-page':
       
 25081           path = 'M6 15V2h10v13H6zm-1 1h8v2H3V5h2v11z';
       
 25082           break;
       
 25083 
       
 25084         case 'admin-plugins':
       
 25085           path = 'M13.11 4.36L9.87 7.6 8 5.73l3.24-3.24c.35-.34 1.05-.2 1.56.32.52.51.66 1.21.31 1.55zm-8 1.77l.91-1.12 9.01 9.01-1.19.84c-.71.71-2.63 1.16-3.82 1.16H6.14L4.9 17.26c-.59.59-1.54.59-2.12 0-.59-.58-.59-1.53 0-2.12l1.24-1.24v-3.88c0-1.13.4-3.19 1.09-3.89zm7.26 3.97l3.24-3.24c.34-.35 1.04-.21 1.55.31.52.51.66 1.21.31 1.55l-3.24 3.25z';
       
 25086           break;
       
 25087 
       
 25088         case 'admin-post':
       
 25089           path = 'M10.44 3.02l1.82-1.82 6.36 6.35-1.83 1.82c-1.05-.68-2.48-.57-3.41.36l-.75.75c-.92.93-1.04 2.35-.35 3.41l-1.83 1.82-2.41-2.41-2.8 2.79c-.42.42-3.38 2.71-3.8 2.29s1.86-3.39 2.28-3.81l2.79-2.79L4.1 9.36l1.83-1.82c1.05.69 2.48.57 3.4-.36l.75-.75c.93-.92 1.05-2.35.36-3.41z';
       
 25090           break;
       
 25091 
       
 25092         case 'admin-settings':
       
 25093           path = 'M18 16V4c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h13c.55 0 1-.45 1-1zM8 11h1c.55 0 1 .45 1 1s-.45 1-1 1H8v1.5c0 .28-.22.5-.5.5s-.5-.22-.5-.5V13H6c-.55 0-1-.45-1-1s.45-1 1-1h1V5.5c0-.28.22-.5.5-.5s.5.22.5.5V11zm5-2h-1c-.55 0-1-.45-1-1s.45-1 1-1h1V5.5c0-.28.22-.5.5-.5s.5.22.5.5V7h1c.55 0 1 .45 1 1s-.45 1-1 1h-1v5.5c0 .28-.22.5-.5.5s-.5-.22-.5-.5V9z';
       
 25094           break;
       
 25095 
       
 25096         case 'admin-site-alt':
       
 25097           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zm7.5 6.48c-.274.896-.908 1.64-1.75 2.05-.45-1.69-1.658-3.074-3.27-3.75.13-.444.41-.83.79-1.09-.43-.28-1-.42-1.34.07-.53.69 0 1.61.21 2v.14c-.555-.337-.99-.84-1.24-1.44-.966-.03-1.922.208-2.76.69-.087-.565-.032-1.142.16-1.68.733.07 1.453-.23 1.92-.8.46-.52-.13-1.18-.59-1.58h.36c1.36-.01 2.702.335 3.89 1 1.36 1.005 2.194 2.57 2.27 4.26.24 0 .7-.55.91-.92.172.34.32.69.44 1.05zM9 16.84c-2.05-2.08.25-3.75-1-5.24-.92-.85-2.29-.26-3.11-1.23-.282-1.473.267-2.982 1.43-3.93.52-.44 4-1 5.42.22.83.715 1.415 1.674 1.67 2.74.46.035.918-.066 1.32-.29.41 2.98-3.15 6.74-5.73 7.73zM5.15 2.09c.786-.3 1.676-.028 2.16.66-.42.38-.94.63-1.5.72.02-.294.085-.584.19-.86l-.85-.52z';
       
 25098           break;
       
 25099 
       
 25100         case 'admin-site-alt2':
       
 25101           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zm2.92 12.34c0 .35.14.63.36.66.22.03.47-.22.58-.6l.2.08c.718.384 1.07 1.22.84 2-.15.69-.743 1.198-1.45 1.24-.49-1.21-2.11.06-3.56-.22-.612-.154-1.11-.6-1.33-1.19 1.19-.11 2.85-1.73 4.36-1.97zM8 11.27c.918 0 1.695-.68 1.82-1.59.44.54.41 1.324-.07 1.83-.255.223-.594.325-.93.28-.335-.047-.635-.236-.82-.52zm3-.76c.41.39 3-.06 3.52 1.09-.95-.2-2.95.61-3.47-1.08l-.05-.01zM9.73 5.45v.27c-.65-.77-1.33-1.07-1.61-.57-.28.5 1 1.11.76 1.88-.24.77-1.27.56-1.88 1.61-.61 1.05-.49 2.42 1.24 3.67-1.192-.132-2.19-.962-2.54-2.11-.4-1.2-.09-2.26-.78-2.46C4 7.46 3 8.71 3 9.8c-1.26-1.26.05-2.86-1.2-4.18C3.5 1.998 7.644.223 11.44 1.49c-1.1 1.02-1.722 2.458-1.71 3.96z';
       
 25102           break;
       
 25103 
       
 25104         case 'admin-site-alt3':
       
 25105           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zM1.11 9.68h2.51c.04.91.167 1.814.38 2.7H1.84c-.403-.85-.65-1.764-.73-2.7zm8.57-5.4V1.19c.964.366 1.756 1.08 2.22 2 .205.347.386.708.54 1.08l-2.76.01zm3.22 1.35c.232.883.37 1.788.41 2.7H9.68v-2.7h3.22zM8.32 1.19v3.09H5.56c.154-.372.335-.733.54-1.08.462-.924 1.255-1.64 2.22-2.01zm0 4.44v2.7H4.7c.04-.912.178-1.817.41-2.7h3.21zm-4.7 2.69H1.11c.08-.936.327-1.85.73-2.7H4c-.213.886-.34 1.79-.38 2.7zM4.7 9.68h3.62v2.7H5.11c-.232-.883-.37-1.788-.41-2.7zm3.63 4v3.09c-.964-.366-1.756-1.08-2.22-2-.205-.347-.386-.708-.54-1.08l2.76-.01zm1.35 3.09v-3.04h2.76c-.154.372-.335.733-.54 1.08-.464.92-1.256 1.634-2.22 2v-.04zm0-4.44v-2.7h3.62c-.04.912-.178 1.817-.41 2.7H9.68zm4.71-2.7h2.51c-.08.936-.327 1.85-.73 2.7H14c.21-.87.337-1.757.38-2.65l.01-.05zm0-1.35c-.046-.894-.176-1.78-.39-2.65h2.16c.403.85.65 1.764.73 2.7l-2.5-.05zm1-4H13.6c-.324-.91-.793-1.76-1.39-2.52 1.244.56 2.325 1.426 3.14 2.52h.04zm-9.6-2.52c-.597.76-1.066 1.61-1.39 2.52H2.65c.815-1.094 1.896-1.96 3.14-2.52zm-3.15 12H4.4c.324.91.793 1.76 1.39 2.52-1.248-.567-2.33-1.445-3.14-2.55l-.01.03zm9.56 2.52c.597-.76 1.066-1.61 1.39-2.52h1.76c-.82 1.08-1.9 1.933-3.14 2.48l-.01.04z';
       
 25106           break;
       
 25107 
       
 25108         case 'admin-site':
       
 25109           path = 'M9 0C4.03 0 0 4.03 0 9s4.03 9 9 9 9-4.03 9-9-4.03-9-9-9zm3.46 11.95c0 1.47-.8 3.3-4.06 4.7.3-4.17-2.52-3.69-3.2-5 .126-1.1.804-2.063 1.8-2.55-1.552-.266-3-.96-4.18-2 .05.47.28.904.64 1.21-.782-.295-1.458-.817-1.94-1.5.977-3.225 3.883-5.482 7.25-5.63-.84 1.38-1.5 4.13 0 5.57C7.23 7 6.26 5 5.41 5.79c-1.13 1.06.33 2.51 3.42 3.08 3.29.59 3.66 1.58 3.63 3.08zm1.34-4c-.32-1.11.62-2.23 1.69-3.14 1.356 1.955 1.67 4.45.84 6.68-.77-1.89-2.17-2.32-2.53-3.57v.03z';
       
 25110           break;
       
 25111 
       
 25112         case 'admin-tools':
       
 25113           path = 'M16.68 9.77c-1.34 1.34-3.3 1.67-4.95.99l-5.41 6.52c-.99.99-2.59.99-3.58 0s-.99-2.59 0-3.57l6.52-5.42c-.68-1.65-.35-3.61.99-4.95 1.28-1.28 3.12-1.62 4.72-1.06l-2.89 2.89 2.82 2.82 2.86-2.87c.53 1.58.18 3.39-1.08 4.65zM3.81 16.21c.4.39 1.04.39 1.43 0 .4-.4.4-1.04 0-1.43-.39-.4-1.03-.4-1.43 0-.39.39-.39 1.03 0 1.43z';
       
 25114           break;
       
 25115 
       
 25116         case 'admin-users':
       
 25117           path = 'M10 9.25c-2.27 0-2.73-3.44-2.73-3.44C7 4.02 7.82 2 9.97 2c2.16 0 2.98 2.02 2.71 3.81 0 0-.41 3.44-2.68 3.44zm0 2.57L12.72 10c2.39 0 4.52 2.33 4.52 4.53v2.49s-3.65 1.13-7.24 1.13c-3.65 0-7.24-1.13-7.24-1.13v-2.49c0-2.25 1.94-4.48 4.47-4.48z';
       
 25118           break;
       
 25119 
       
 25120         case 'album':
       
 25121           path = 'M0 18h10v-.26c1.52.4 3.17.35 4.76-.24 4.14-1.52 6.27-6.12 4.75-10.26-1.43-3.89-5.58-6-9.51-4.98V2H0v16zM9 3v14H1V3h8zm5.45 8.22c-.68 1.35-2.32 1.9-3.67 1.23-.31-.15-.57-.35-.78-.59V8.13c.8-.86 2.11-1.13 3.22-.58 1.35.68 1.9 2.32 1.23 3.67zm-2.75-.82c.22.16.53.12.7-.1.16-.22.12-.53-.1-.7s-.53-.12-.7.1c-.16.21-.12.53.1.7zm3.01 3.67c-1.17.78-2.56.99-3.83.69-.27-.06-.44-.34-.37-.61s.34-.43.62-.36l.17.04c.96.17 1.98-.01 2.86-.59.47-.32.86-.72 1.14-1.18.15-.23.45-.3.69-.16.23.15.3.46.16.69-.36.57-.84 1.08-1.44 1.48zm1.05 1.57c-1.48.99-3.21 1.32-4.84 1.06-.28-.05-.47-.32-.41-.6.05-.27.32-.45.61-.39l.22.04c1.31.15 2.68-.14 3.87-.94.71-.47 1.27-1.07 1.7-1.74.14-.24.45-.31.68-.16.24.14.31.45.16.69-.49.79-1.16 1.49-1.99 2.04z';
       
 25122           break;
       
 25123 
       
 25124         case 'align-center':
       
 25125           path = 'M3 5h14V3H3v2zm12 8V7H5v6h10zM3 17h14v-2H3v2z';
       
 25126           break;
       
 25127 
       
 25128         case 'align-full-width':
       
 25129           path = 'M17 13V3H3v10h14zM5 17h10v-2H5v2z';
       
 25130           break;
       
 25131 
       
 25132         case 'align-left':
       
 25133           path = 'M3 5h14V3H3v2zm9 8V7H3v6h9zm2-4h3V7h-3v2zm0 4h3v-2h-3v2zM3 17h14v-2H3v2z';
       
 25134           break;
       
 25135 
       
 25136         case 'align-none':
       
 25137           path = 'M3 5h14V3H3v2zm10 8V7H3v6h10zM3 17h14v-2H3v2z';
       
 25138           break;
       
 25139 
       
 25140         case 'align-pull-left':
       
 25141           path = 'M9 16V4H3v12h6zm2-7h6V7h-6v2zm0 4h6v-2h-6v2z';
       
 25142           break;
       
 25143 
       
 25144         case 'align-pull-right':
       
 25145           path = 'M17 16V4h-6v12h6zM9 7H3v2h6V7zm0 4H3v2h6v-2z';
       
 25146           break;
       
 25147 
       
 25148         case 'align-right':
       
 25149           path = 'M3 5h14V3H3v2zm0 4h3V7H3v2zm14 4V7H8v6h9zM3 13h3v-2H3v2zm0 4h14v-2H3v2z';
       
 25150           break;
       
 25151 
       
 25152         case 'align-wide':
       
 25153           path = 'M5 5h10V3H5v2zm12 8V7H3v6h14zM5 17h10v-2H5v2z';
       
 25154           break;
       
 25155 
       
 25156         case 'analytics':
       
 25157           path = 'M18 18V2H2v16h16zM16 5H4V4h12v1zM7 7v3h3c0 1.66-1.34 3-3 3s-3-1.34-3-3 1.34-3 3-3zm1 2V7c1.1 0 2 .9 2 2H8zm8-1h-4V7h4v1zm0 3h-4V9h4v2zm0 2h-4v-1h4v1zm0 3H4v-1h12v1z';
       
 25158           break;
       
 25159 
       
 25160         case 'archive':
       
 25161           path = 'M19 4v2H1V4h18zM2 7h16v10H2V7zm11 3V9H7v1h6z';
       
 25162           break;
       
 25163 
       
 25164         case 'arrow-down-alt':
       
 25165           path = 'M9 2h2v12l4-4 2 1-7 7-7-7 2-1 4 4V2z';
       
 25166           break;
       
 25167 
       
 25168         case 'arrow-down-alt2':
       
 25169           path = 'M5 6l5 5 5-5 2 1-7 7-7-7z';
       
 25170           break;
       
 25171 
       
 25172         case 'arrow-down':
       
 25173           path = 'M15 8l-4.03 6L7 8h8z';
       
 25174           break;
       
 25175 
       
 25176         case 'arrow-left-alt':
       
 25177           path = 'M18 9v2H6l4 4-1 2-7-7 7-7 1 2-4 4h12z';
       
 25178           break;
       
 25179 
       
 25180         case 'arrow-left-alt2':
       
 25181           path = 'M14 5l-5 5 5 5-1 2-7-7 7-7z';
       
 25182           break;
       
 25183 
       
 25184         case 'arrow-left':
       
 25185           path = 'M13 14L7 9.97 13 6v8z';
       
 25186           break;
       
 25187 
       
 25188         case 'arrow-right-alt':
       
 25189           path = 'M2 11V9h12l-4-4 1-2 7 7-7 7-1-2 4-4H2z';
       
 25190           break;
       
 25191 
       
 25192         case 'arrow-right-alt2':
       
 25193           path = 'M6 15l5-5-5-5 1-2 7 7-7 7z';
       
 25194           break;
       
 25195 
       
 25196         case 'arrow-right':
       
 25197           path = 'M8 6l6 4.03L8 14V6z';
       
 25198           break;
       
 25199 
       
 25200         case 'arrow-up-alt':
       
 25201           path = 'M11 18H9V6l-4 4-2-1 7-7 7 7-2 1-4-4v12z';
       
 25202           break;
       
 25203 
       
 25204         case 'arrow-up-alt2':
       
 25205           path = 'M15 14l-5-5-5 5-2-1 7-7 7 7z';
       
 25206           break;
       
 25207 
       
 25208         case 'arrow-up':
       
 25209           path = 'M7 13l4.03-6L15 13H7z';
       
 25210           break;
       
 25211 
       
 25212         case 'art':
       
 25213           path = 'M8.55 3.06c1.01.34-1.95 2.01-.1 3.13 1.04.63 3.31-2.22 4.45-2.86.97-.54 2.67-.65 3.53 1.23 1.09 2.38.14 8.57-3.79 11.06-3.97 2.5-8.97 1.23-10.7-2.66-2.01-4.53 3.12-11.09 6.61-9.9zm1.21 6.45c.73 1.64 4.7-.5 3.79-2.8-.59-1.49-4.48 1.25-3.79 2.8z';
       
 25214           break;
       
 25215 
       
 25216         case 'awards':
       
 25217           path = 'M4.46 5.16L5 7.46l-.54 2.29 2.01 1.24L7.7 13l2.3-.54 2.3.54 1.23-2.01 2.01-1.24L15 7.46l.54-2.3-2-1.24-1.24-2.01-2.3.55-2.29-.54-1.25 2zm5.55 6.34C7.79 11.5 6 9.71 6 7.49c0-2.2 1.79-3.99 4.01-3.99 2.2 0 3.99 1.79 3.99 3.99 0 2.22-1.79 4.01-3.99 4.01zm-.02-1C8.33 10.5 7 9.16 7 7.5c0-1.65 1.33-3 2.99-3S13 5.85 13 7.5c0 1.66-1.35 3-3.01 3zm3.84 1.1l-1.28 2.24-2.08-.47L13 19.2l1.4-2.2h2.5zm-7.7.07l1.25 2.25 2.13-.51L7 19.2 5.6 17H3.1z';
       
 25218           break;
       
 25219 
       
 25220         case 'backup':
       
 25221           path = 'M13.65 2.88c3.93 2.01 5.48 6.84 3.47 10.77s-6.83 5.48-10.77 3.47c-1.87-.96-3.2-2.56-3.86-4.4l1.64-1.03c.45 1.57 1.52 2.95 3.08 3.76 3.01 1.54 6.69.35 8.23-2.66 1.55-3.01.36-6.69-2.65-8.24C9.78 3.01 6.1 4.2 4.56 7.21l1.88.97-4.95 3.08-.39-5.82 1.78.91C4.9 2.4 9.75.89 13.65 2.88zm-4.36 7.83C9.11 10.53 9 10.28 9 10c0-.07.03-.12.04-.19h-.01L10 5l.97 4.81L14 13l-4.5-2.12.02-.02c-.08-.04-.16-.09-.23-.15z';
       
 25222           break;
       
 25223 
       
 25224         case 'block-default':
       
 25225           path = 'M15 6V4h-3v2H8V4H5v2H4c-.6 0-1 .4-1 1v8h14V7c0-.6-.4-1-1-1h-1z';
       
 25226           break;
       
 25227 
       
 25228         case 'book-alt':
       
 25229           path = 'M5 17h13v2H5c-1.66 0-3-1.34-3-3V4c0-1.66 1.34-3 3-3h13v14H5c-.55 0-1 .45-1 1s.45 1 1 1zm2-3.5v-11c0-.28-.22-.5-.5-.5s-.5.22-.5.5v11c0 .28.22.5.5.5s.5-.22.5-.5z';
       
 25230           break;
       
 25231 
       
 25232         case 'book':
       
 25233           path = 'M16 3h2v16H5c-1.66 0-3-1.34-3-3V4c0-1.66 1.34-3 3-3h9v14H5c-.55 0-1 .45-1 1s.45 1 1 1h11V3z';
       
 25234           break;
       
 25235 
       
 25236         case 'buddicons-activity':
       
 25237           path = 'M8 1v7h2V6c0-1.52 1.45-3 3-3v.86c.55-.52 1.26-.86 2-.86v3h1c1.1 0 2 .9 2 2s-.9 2-2 2h-1v6c0 .55-.45 1-1 1s-1-.45-1-1v-2.18c-.31.11-.65.18-1 .18v2c0 .55-.45 1-1 1s-1-.45-1-1v-2H8v2c0 .55-.45 1-1 1s-1-.45-1-1v-2c-.35 0-.69-.07-1-.18V16c0 .55-.45 1-1 1s-1-.45-1-1v-4H2v-1c0-1.66 1.34-3 3-3h2V1h1zm5 7c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1z';
       
 25238           break;
       
 25239 
       
 25240         case 'buddicons-bbpress-logo':
       
 25241           path = 'M8.5 12.6c.3-1.3 0-2.3-1.1-2.3-.8 0-1.6.6-1.8 1.5l-.3 1.7c-.3 1 .3 1.5 1 1.5 1.2 0 1.9-1.1 2.2-2.4zm-4-6.4C3.7 7.3 3.3 8.6 3.3 10c0 1 .2 1.9.6 2.8l1-4.6c.3-1.7.4-2-.4-2zm9.3 6.4c.3-1.3 0-2.3-1.1-2.3-.8 0-1.6.6-1.8 1.5l-.4 1.7c-.2 1.1.4 1.6 1.1 1.6 1.1-.1 1.9-1.2 2.2-2.5zM10 3.3c-2 0-3.9.9-5.1 2.3.6-.1 1.4-.2 1.8-.3.2 0 .2.1.2.2 0 .2-1 4.8-1 4.8.5-.3 1.2-.7 1.8-.7.9 0 1.5.4 1.9.9l.5-2.4c.4-1.6.4-1.9-.4-1.9-.4 0-.4-.5 0-.6.6-.1 1.8-.2 2.3-.3.2 0 .2.1.2.2l-1 4.8c.5-.4 1.2-.7 1.9-.7 1.7 0 2.5 1.3 2.1 3-.3 1.7-2 3-3.8 3-1.3 0-2.1-.7-2.3-1.4-.7.8-1.7 1.3-2.8 1.4 1.1.7 2.4 1.1 3.7 1.1 3.7 0 6.7-3 6.7-6.7s-3-6.7-6.7-6.7zM10 2c-4.4 0-8 3.6-8 8s3.6 8 8 8 8-3.6 8-8-3.6-8-8-8zm0 15.5c-2.1 0-4-.8-5.3-2.2-.3-.4-.7-.8-1-1.2-.7-1.2-1.2-2.6-1.2-4.1 0-4.1 3.4-7.5 7.5-7.5s7.5 3.4 7.5 7.5-3.4 7.5-7.5 7.5z';
       
 25242           break;
       
 25243 
       
 25244         case 'buddicons-buddypress-logo':
       
 25245           path = 'M10 0c5.52 0 10 4.48 10 10s-4.48 10-10 10S0 15.52 0 10 4.48 0 10 0zm0 .5C4.75.5.5 4.75.5 10s4.25 9.5 9.5 9.5 9.5-4.25 9.5-9.5S15.25.5 10 .5zm0 1c4.7 0 8.5 3.8 8.5 8.5s-3.8 8.5-8.5 8.5-8.5-3.8-8.5-8.5S5.3 1.5 10 1.5zm1.8 1.71c-.57 0-1.1.17-1.55.45 1.56.37 2.73 1.77 2.73 3.45 0 .69-.21 1.33-.55 1.87 1.31-.29 2.29-1.45 2.29-2.85 0-1.61-1.31-2.92-2.92-2.92zm-2.38 1c-1.61 0-2.92 1.31-2.92 2.93 0 1.61 1.31 2.92 2.92 2.92 1.62 0 2.93-1.31 2.93-2.92 0-1.62-1.31-2.93-2.93-2.93zm4.25 5.01l-.51.59c2.34.69 2.45 3.61 2.45 3.61h1.28c0-4.71-3.22-4.2-3.22-4.2zm-2.1.8l-2.12 2.09-2.12-2.09C3.12 10.24 3.89 15 3.89 15h11.08c.47-4.98-3.4-4.98-3.4-4.98z';
       
 25246           break;
       
 25247 
       
 25248         case 'buddicons-community':
       
 25249           path = 'M9 3c0-.67-.47-1.43-1-2-.5.5-1 1.38-1 2 0 .48.45 1 1 1s1-.47 1-1zm4 0c0-.67-.47-1.43-1-2-.5.5-1 1.38-1 2 0 .48.45 1 1 1s1-.47 1-1zM9 9V5.5c0-.55-.45-1-1-1-.57 0-1 .49-1 1V9c0 .55.45 1 1 1 .57 0 1-.49 1-1zm4 0V5.5c0-.55-.45-1-1-1-.57 0-1 .49-1 1V9c0 .55.45 1 1 1 .57 0 1-.49 1-1zm4 1c0-1.48-1.41-2.77-3.5-3.46V9c0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5V6.01c-.17 0-.33-.01-.5-.01s-.33.01-.5.01V9c0 .83-.67 1.5-1.5 1.5S6.5 9.83 6.5 9V6.54C4.41 7.23 3 8.52 3 10c0 1.41.95 2.65 3.21 3.37 1.11.35 2.39 1.12 3.79 1.12s2.69-.78 3.79-1.13C16.04 12.65 17 11.41 17 10zm-7 5.43c1.43 0 2.74-.79 3.88-1.11 1.9-.53 2.49-1.34 3.12-2.32v3c0 2.21-3.13 4-7 4s-7-1.79-7-4v-3c.64.99 1.32 1.8 3.15 2.33 1.13.33 2.44 1.1 3.85 1.1z';
       
 25250           break;
       
 25251 
       
 25252         case 'buddicons-forums':
       
 25253           path = 'M13.5 7h-7C5.67 7 5 6.33 5 5.5S5.67 4 6.5 4h1.59C8.04 3.84 8 3.68 8 3.5 8 2.67 8.67 2 9.5 2h1c.83 0 1.5.67 1.5 1.5 0 .18-.04.34-.09.5h1.59c.83 0 1.5.67 1.5 1.5S14.33 7 13.5 7zM4 8h12c.55 0 1 .45 1 1s-.45 1-1 1H4c-.55 0-1-.45-1-1s.45-1 1-1zm1 3h10c.55 0 1 .45 1 1s-.45 1-1 1H5c-.55 0-1-.45-1-1s.45-1 1-1zm2 3h6c.55 0 1 .45 1 1s-.45 1-1 1h-1.09c.05.16.09.32.09.5 0 .83-.67 1.5-1.5 1.5h-1c-.83 0-1.5-.67-1.5-1.5 0-.18.04-.34.09-.5H7c-.55 0-1-.45-1-1s.45-1 1-1z';
       
 25254           break;
       
 25255 
       
 25256         case 'buddicons-friends':
       
 25257           path = 'M8.75 5.77C8.75 4.39 7 2 7 2S5.25 4.39 5.25 5.77 5.9 7.5 7 7.5s1.75-.35 1.75-1.73zm6 0C14.75 4.39 13 2 13 2s-1.75 2.39-1.75 3.77S11.9 7.5 13 7.5s1.75-.35 1.75-1.73zM9 17V9c0-.55-.45-1-1-1H6c-.55 0-1 .45-1 1v8c0 .55.45 1 1 1h2c.55 0 1-.45 1-1zm6 0V9c0-.55-.45-1-1-1h-2c-.55 0-1 .45-1 1v8c0 .55.45 1 1 1h2c.55 0 1-.45 1-1zm-9-6l2-1v2l-2 1v-2zm6 0l2-1v2l-2 1v-2zm-6 3l2-1v2l-2 1v-2zm6 0l2-1v2l-2 1v-2z';
       
 25258           break;
       
 25259 
       
 25260         case 'buddicons-groups':
       
 25261           path = 'M15.45 6.25c1.83.94 1.98 3.18.7 4.98-.8 1.12-2.33 1.88-3.46 1.78L10.05 18H9l-2.65-4.99c-1.13.16-2.73-.63-3.55-1.79-1.28-1.8-1.13-4.04.71-4.97.48-.24.96-.33 1.43-.31-.01.4.01.8.07 1.21.26 1.69 1.41 3.53 2.86 4.37-.19.55-.49.99-.88 1.25L9 16.58v-5.66C7.64 10.55 6.26 8.76 6 7c-.4-2.65 1-5 3.5-5s3.9 2.35 3.5 5c-.26 1.76-1.64 3.55-3 3.92v5.77l2.07-3.84c-.44-.23-.77-.71-.99-1.3 1.48-.83 2.65-2.69 2.91-4.4.06-.41.08-.82.07-1.22.46-.01.92.08 1.39.32z';
       
 25262           break;
       
 25263 
       
 25264         case 'buddicons-pm':
       
 25265           path = 'M10 2c3 0 8 5 8 5v11H2V7s5-5 8-5zm7 14.72l-3.73-2.92L17 11l-.43-.37-2.26 1.3.24-4.31-8.77-.52-.46 4.54-1.99-.95L3 11l3.73 2.8-3.44 2.85.4.43L10 13l6.53 4.15z';
       
 25266           break;
       
 25267 
       
 25268         case 'buddicons-replies':
       
 25269           path = 'M17.54 10.29c1.17 1.17 1.17 3.08 0 4.25-1.18 1.17-3.08 1.17-4.25 0l-.34-.52c0 3.66-2 4.38-2.95 4.98-.82-.6-2.95-1.28-2.95-4.98l-.34.52c-1.17 1.17-3.07 1.17-4.25 0-1.17-1.17-1.17-3.08 0-4.25 0 0 1.02-.67 2.1-1.3C3.71 7.84 3.2 6.42 3.2 4.88c0-.34.03-.67.08-1C3.53 5.66 4.47 7.22 5.8 8.3c.67-.35 1.85-.83 2.37-.92H8c-1.1 0-2-.9-2-2s.9-2 2-2v-.5c0-.28.22-.5.5-.5s.5.22.5.5v.5h2v-.5c0-.28.22-.5.5-.5s.5.22.5.5v.5c1.1 0 2 .9 2 2s-.9 2-2 2h-.17c.51.09 1.78.61 2.38.92 1.33-1.08 2.27-2.64 2.52-4.42.05.33.08.66.08 1 0 1.54-.51 2.96-1.36 4.11 1.08.63 2.09 1.3 2.09 1.3zM8.5 6.38c.5 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm3-2c-.55 0-1 .45-1 1s.45 1 1 1 1-.45 1-1-.45-1-1-1zm-2.3 5.73c-.12.11-.19.26-.19.43.02.25.23.46.49.46h1c.26 0 .47-.21.49-.46 0-.15-.07-.29-.19-.43-.08-.06-.18-.11-.3-.11h-1c-.12 0-.22.05-.3.11zM12 12.5c0-.12-.06-.28-.19-.38-.09-.07-.19-.12-.31-.12h-3c-.12 0-.22.05-.31.12-.11.1-.19.25-.19.38 0 .28.22.5.5.5h3c.28 0 .5-.22.5-.5zM8.5 15h3c.28 0 .5-.22.5-.5s-.22-.5-.5-.5h-3c-.28 0-.5.22-.5.5s.22.5.5.5zm1 2h1c.28 0 .5-.22.5-.5s-.22-.5-.5-.5h-1c-.28 0-.5.22-.5.5s.22.5.5.5z';
       
 25270           break;
       
 25271 
       
 25272         case 'buddicons-topics':
       
 25273           path = 'M10.44 1.66c-.59-.58-1.54-.58-2.12 0L2.66 7.32c-.58.58-.58 1.53 0 2.12.6.6 1.56.56 2.12 0l5.66-5.66c.58-.58.59-1.53 0-2.12zm2.83 2.83c-.59-.59-1.54-.59-2.12 0l-5.66 5.66c-.59.58-.59 1.53 0 2.12.6.6 1.56.55 2.12 0l5.66-5.66c.58-.58.58-1.53 0-2.12zm1.06 6.72l4.18 4.18c.59.58.59 1.53 0 2.12s-1.54.59-2.12 0l-4.18-4.18-1.77 1.77c-.59.58-1.54.58-2.12 0-.59-.59-.59-1.54 0-2.13l5.66-5.65c.58-.59 1.53-.59 2.12 0 .58.58.58 1.53 0 2.12zM5 15c0-1.59-1.66-4-1.66-4S2 13.78 2 15s.6 2 1.34 2h.32C4.4 17 5 16.59 5 15z';
       
 25274           break;
       
 25275 
       
 25276         case 'buddicons-tracking':
       
 25277           path = 'M10.98 6.78L15.5 15c-1 2-3.5 3-5.5 3s-4.5-1-5.5-3L9 6.82c-.75-1.23-2.28-1.98-4.29-2.03l2.46-2.92c1.68 1.19 2.46 2.32 2.97 3.31.56-.87 1.2-1.68 2.7-2.12l1.83 2.86c-1.42-.34-2.64.08-3.69.86zM8.17 10.4l-.93 1.69c.49.11 1 .16 1.54.16 1.35 0 2.58-.36 3.55-.95l-1.01-1.82c-.87.53-1.96.86-3.15.92zm.86 5.38c1.99 0 3.73-.74 4.74-1.86l-.98-1.76c-1 1.12-2.74 1.87-4.74 1.87-.62 0-1.21-.08-1.76-.21l-.63 1.15c.94.5 2.1.81 3.37.81z';
       
 25278           break;
       
 25279 
       
 25280         case 'building':
       
 25281           path = 'M3 20h14V0H3v20zM7 3H5V1h2v2zm4 0H9V1h2v2zm4 0h-2V1h2v2zM7 6H5V4h2v2zm4 0H9V4h2v2zm4 0h-2V4h2v2zM7 9H5V7h2v2zm4 0H9V7h2v2zm4 0h-2V7h2v2zm-8 3H5v-2h2v2zm4 0H9v-2h2v2zm4 0h-2v-2h2v2zm-4 7H5v-6h6v6zm4-4h-2v-2h2v2zm0 3h-2v-2h2v2z';
       
 25282           break;
       
 25283 
       
 25284         case 'businessman':
       
 25285           path = 'M7.3 6l-.03-.19c-.04-.37-.05-.73-.03-1.08.02-.36.1-.71.25-1.04.14-.32.31-.61.52-.86s.49-.46.83-.6c.34-.15.72-.23 1.13-.23.69 0 1.26.2 1.71.59s.76.87.91 1.44.18 1.16.09 1.78l-.03.19c-.01.09-.05.25-.11.48-.05.24-.12.47-.2.69-.08.21-.19.45-.34.72-.14.27-.3.49-.47.69-.18.19-.4.34-.67.48-.27.13-.55.19-.86.19s-.59-.06-.87-.19c-.26-.13-.49-.29-.67-.5-.18-.2-.34-.42-.49-.66-.15-.25-.26-.49-.34-.73-.09-.25-.16-.47-.21-.67-.06-.21-.1-.37-.12-.5zm9.2 6.24c.41.7.5 1.41.5 2.14v2.49c0 .03-.12.08-.29.13-.18.04-.42.13-.97.27-.55.12-1.1.24-1.65.34s-1.19.19-1.95.27c-.75.08-1.46.12-2.13.12-.68 0-1.39-.04-2.14-.12-.75-.07-1.4-.17-1.98-.27-.58-.11-1.08-.23-1.56-.34-.49-.11-.8-.21-1.06-.29L3 16.87v-2.49c0-.75.07-1.46.46-2.15s.81-1.25 1.5-1.68C5.66 10.12 7.19 10 8 10l1.67 1.67L9 13v3l1.02 1.08L11 16v-3l-.68-1.33L11.97 10c.77 0 2.2.07 2.9.52.71.45 1.21 1.02 1.63 1.72z';
       
 25286           break;
       
 25287 
       
 25288         case 'button':
       
 25289           path = 'M17 5H3c-1.1 0-2 .9-2 2v6c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm1 7c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1V7c0-.6.4-1 1-1h14c.6 0 1 .4 1 1v5z';
       
 25290           break;
       
 25291 
       
 25292         case 'calendar-alt':
       
 25293           path = 'M15 4h3v15H2V4h3V3c0-.41.15-.76.44-1.06.29-.29.65-.44 1.06-.44s.77.15 1.06.44c.29.3.44.65.44 1.06v1h4V3c0-.41.15-.76.44-1.06.29-.29.65-.44 1.06-.44s.77.15 1.06.44c.29.3.44.65.44 1.06v1zM6 3v2.5c0 .14.05.26.15.36.09.09.21.14.35.14s.26-.05.35-.14c.1-.1.15-.22.15-.36V3c0-.14-.05-.26-.15-.35-.09-.1-.21-.15-.35-.15s-.26.05-.35.15c-.1.09-.15.21-.15.35zm7 0v2.5c0 .14.05.26.14.36.1.09.22.14.36.14s.26-.05.36-.14c.09-.1.14-.22.14-.36V3c0-.14-.05-.26-.14-.35-.1-.1-.22-.15-.36-.15s-.26.05-.36.15c-.09.09-.14.21-.14.35zm4 15V8H3v10h14zM7 9v2H5V9h2zm2 0h2v2H9V9zm4 2V9h2v2h-2zm-6 1v2H5v-2h2zm2 0h2v2H9v-2zm4 2v-2h2v2h-2zm-6 1v2H5v-2h2zm4 2H9v-2h2v2zm4 0h-2v-2h2v2z';
       
 25294           break;
       
 25295 
       
 25296         case 'calendar':
       
 25297           path = 'M15 4h3v14H2V4h3V3c0-.83.67-1.5 1.5-1.5S8 2.17 8 3v1h4V3c0-.83.67-1.5 1.5-1.5S15 2.17 15 3v1zM6 3v2.5c0 .28.22.5.5.5s.5-.22.5-.5V3c0-.28-.22-.5-.5-.5S6 2.72 6 3zm7 0v2.5c0 .28.22.5.5.5s.5-.22.5-.5V3c0-.28-.22-.5-.5-.5s-.5.22-.5.5zm4 14V8H3v9h14zM7 16V9H5v7h2zm4 0V9H9v7h2zm4 0V9h-2v7h2z';
       
 25298           break;
       
 25299 
       
 25300         case 'camera':
       
 25301           path = 'M6 5V3H3v2h3zm12 10V4H9L7 6H2v9h16zm-7-8c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3z';
       
 25302           break;
       
 25303 
       
 25304         case 'carrot':
       
 25305           path = 'M2 18.43c1.51 1.36 11.64-4.67 13.14-7.21.72-1.22-.13-3.01-1.52-4.44C15.2 5.73 16.59 9 17.91 8.31c.6-.32.99-1.31.7-1.92-.52-1.08-2.25-1.08-3.42-1.21.83-.2 2.82-1.05 2.86-2.25.04-.92-1.13-1.97-2.05-1.86-1.21.14-1.65 1.88-2.06 3-.05-.71-.2-2.27-.98-2.95-1.04-.91-2.29-.05-2.32 1.05-.04 1.33 2.82 2.07 1.92 3.67C11.04 4.67 9.25 4.03 8.1 4.7c-.49.31-1.05.91-1.63 1.69.89.94 2.12 2.07 3.09 2.72.2.14.26.42.11.62-.14.21-.42.26-.62.12-.99-.67-2.2-1.78-3.1-2.71-.45.67-.91 1.43-1.34 2.23.85.86 1.93 1.83 2.79 2.41.2.14.25.42.11.62-.14.21-.42.26-.63.12-.85-.58-1.86-1.48-2.71-2.32C2.4 13.69 1.1 17.63 2 18.43z';
       
 25306           break;
       
 25307 
       
 25308         case 'cart':
       
 25309           path = 'M6 13h9c.55 0 1 .45 1 1s-.45 1-1 1H5c-.55 0-1-.45-1-1V4H2c-.55 0-1-.45-1-1s.45-1 1-1h3c.55 0 1 .45 1 1v2h13l-4 7H6v1zm-.5 3c.83 0 1.5.67 1.5 1.5S6.33 19 5.5 19 4 18.33 4 17.5 4.67 16 5.5 16zm9 0c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5z';
       
 25310           break;
       
 25311 
       
 25312         case 'category':
       
 25313           path = 'M5 7h13v10H2V4h7l2 2H4v9h1V7z';
       
 25314           break;
       
 25315 
       
 25316         case 'chart-area':
       
 25317           path = 'M18 18l.01-12.28c.59-.35.99-.99.99-1.72 0-1.1-.9-2-2-2s-2 .9-2 2c0 .8.47 1.48 1.14 1.8l-4.13 6.58c-.33-.24-.73-.38-1.16-.38-.84 0-1.55.51-1.85 1.24l-2.14-1.53c.09-.22.14-.46.14-.71 0-1.11-.89-2-2-2-1.1 0-2 .89-2 2 0 .73.4 1.36.98 1.71L1 18h17zM17 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM5 10c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm5.85 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1z';
       
 25318           break;
       
 25319 
       
 25320         case 'chart-bar':
       
 25321           path = 'M18 18V2h-4v16h4zm-6 0V7H8v11h4zm-6 0v-8H2v8h4z';
       
 25322           break;
       
 25323 
       
 25324         case 'chart-line':
       
 25325           path = 'M18 3.5c0 .62-.38 1.16-.92 1.38v13.11H1.99l4.22-6.73c-.13-.23-.21-.48-.21-.76C6 9.67 6.67 9 7.5 9S9 9.67 9 10.5c0 .13-.02.25-.05.37l1.44.63c.27-.3.67-.5 1.11-.5.18 0 .35.04.51.09l3.58-6.41c-.36-.27-.59-.7-.59-1.18 0-.83.67-1.5 1.5-1.5.19 0 .36.04.53.1l.05-.09v.11c.54.22.92.76.92 1.38zm-1.92 13.49V5.85l-3.29 5.89c.13.23.21.48.21.76 0 .83-.67 1.5-1.5 1.5s-1.5-.67-1.5-1.5l.01-.07-1.63-.72c-.25.18-.55.29-.88.29-.18 0-.35-.04-.51-.1l-3.2 5.09h12.29z';
       
 25326           break;
       
 25327 
       
 25328         case 'chart-pie':
       
 25329           path = 'M10 10V3c3.87 0 7 3.13 7 7h-7zM9 4v7h7c0 3.87-3.13 7-7 7s-7-3.13-7-7 3.13-7 7-7z';
       
 25330           break;
       
 25331 
       
 25332         case 'clipboard':
       
 25333           path = 'M11.9.39l1.4 1.4c1.61.19 3.5-.74 4.61.37s.18 3 .37 4.61l1.4 1.4c.39.39.39 1.02 0 1.41l-9.19 9.2c-.4.39-1.03.39-1.42 0L1.29 11c-.39-.39-.39-1.02 0-1.42l9.2-9.19c.39-.39 1.02-.39 1.41 0zm.58 2.25l-.58.58 4.95 4.95.58-.58c-.19-.6-.2-1.22-.15-1.82.02-.31.05-.62.09-.92.12-1 .18-1.63-.17-1.98s-.98-.29-1.98-.17c-.3.04-.61.07-.92.09-.6.05-1.22.04-1.82-.15zm4.02.93c.39.39.39 1.03 0 1.42s-1.03.39-1.42 0-.39-1.03 0-1.42 1.03-.39 1.42 0zm-6.72.36l-.71.7L15.44 11l.7-.71zM8.36 5.34l-.7.71 6.36 6.36.71-.7zM6.95 6.76l-.71.7 6.37 6.37.7-.71zM5.54 8.17l-.71.71 6.36 6.36.71-.71zM4.12 9.58l-.71.71 6.37 6.37.71-.71z';
       
 25334           break;
       
 25335 
       
 25336         case 'clock':
       
 25337           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm0 14c3.31 0 6-2.69 6-6s-2.69-6-6-6-6 2.69-6 6 2.69 6 6 6zm-.71-5.29c.07.05.14.1.23.15l-.02.02L14 13l-3.03-3.19L10 5l-.97 4.81h.01c0 .02-.01.05-.02.09S9 9.97 9 10c0 .28.1.52.29.71z';
       
 25338           break;
       
 25339 
       
 25340         case 'cloud-saved':
       
 25341           path = 'M14.8 9c.1-.3.2-.6.2-1 0-2.2-1.8-4-4-4-1.5 0-2.9.9-3.5 2.2-.3-.1-.7-.2-1-.2C5.1 6 4 7.1 4 8.5c0 .2 0 .4.1.5-1.8.3-3.1 1.7-3.1 3.5C1 14.4 2.6 16 4.5 16h10c1.9 0 3.5-1.6 3.5-3.5 0-1.8-1.4-3.3-3.2-3.5zm-6.3 5.9l-3.2-3.2 1.4-1.4 1.8 1.8 3.8-3.8 1.4 1.4-5.2 5.2z';
       
 25342           break;
       
 25343 
       
 25344         case 'cloud-upload':
       
 25345           path = 'M14.8 9c.1-.3.2-.6.2-1 0-2.2-1.8-4-4-4-1.5 0-2.9.9-3.5 2.2-.3-.1-.7-.2-1-.2C5.1 6 4 7.1 4 8.5c0 .2 0 .4.1.5-1.8.3-3.1 1.7-3.1 3.5C1 14.4 2.6 16 4.5 16H8v-3H5l4.5-4.5L14 13h-3v3h3.5c1.9 0 3.5-1.6 3.5-3.5 0-1.8-1.4-3.3-3.2-3.5z';
       
 25346           break;
       
 25347 
       
 25348         case 'cloud':
       
 25349           path = 'M14.9 9c1.8.2 3.1 1.7 3.1 3.5 0 1.9-1.6 3.5-3.5 3.5h-10C2.6 16 1 14.4 1 12.5 1 10.7 2.3 9.3 4.1 9 4 8.9 4 8.7 4 8.5 4 7.1 5.1 6 6.5 6c.3 0 .7.1.9.2C8.1 4.9 9.4 4 11 4c2.2 0 4 1.8 4 4 0 .4-.1.7-.1 1z';
       
 25350           break;
       
 25351 
       
 25352         case 'columns':
       
 25353           path = 'M3 15h6V5H3v10zm8 0h6V5h-6v10z';
       
 25354           break;
       
 25355 
       
 25356         case 'controls-back':
       
 25357           path = 'M2 10l10-6v3.6L18 4v12l-6-3.6V16z';
       
 25358           break;
       
 25359 
       
 25360         case 'controls-forward':
       
 25361           path = 'M18 10L8 16v-3.6L2 16V4l6 3.6V4z';
       
 25362           break;
       
 25363 
       
 25364         case 'controls-pause':
       
 25365           path = 'M5 16V4h3v12H5zm7-12h3v12h-3V4z';
       
 25366           break;
       
 25367 
       
 25368         case 'controls-play':
       
 25369           path = 'M5 4l10 6-10 6V4z';
       
 25370           break;
       
 25371 
       
 25372         case 'controls-repeat':
       
 25373           path = 'M5 7v3l-2 1.5V5h11V3l4 3.01L14 9V7H5zm10 6v-3l2-1.5V15H6v2l-4-3.01L6 11v2h9z';
       
 25374           break;
       
 25375 
       
 25376         case 'controls-skipback':
       
 25377           path = 'M11.98 7.63l6-3.6v12l-6-3.6v3.6l-8-4.8v4.8h-2v-12h2v4.8l8-4.8v3.6z';
       
 25378           break;
       
 25379 
       
 25380         case 'controls-skipforward':
       
 25381           path = 'M8 12.4L2 16V4l6 3.6V4l8 4.8V4h2v12h-2v-4.8L8 16v-3.6z';
       
 25382           break;
       
 25383 
       
 25384         case 'controls-volumeoff':
       
 25385           path = 'M2 7h4l5-4v14l-5-4H2V7z';
       
 25386           break;
       
 25387 
       
 25388         case 'controls-volumeon':
       
 25389           path = 'M2 7h4l5-4v14l-5-4H2V7zm12.69-2.46C14.82 4.59 18 5.92 18 10s-3.18 5.41-3.31 5.46c-.06.03-.13.04-.19.04-.2 0-.39-.12-.46-.31-.11-.26.02-.55.27-.65.11-.05 2.69-1.15 2.69-4.54 0-3.41-2.66-4.53-2.69-4.54-.25-.1-.38-.39-.27-.65.1-.25.39-.38.65-.27zM16 10c0 2.57-2.23 3.43-2.32 3.47-.06.02-.12.03-.18.03-.2 0-.39-.12-.47-.32-.1-.26.04-.55.29-.65.07-.02 1.68-.67 1.68-2.53s-1.61-2.51-1.68-2.53c-.25-.1-.38-.39-.29-.65.1-.25.39-.39.65-.29.09.04 2.32.9 2.32 3.47z';
       
 25390           break;
       
 25391 
       
 25392         case 'cover-image':
       
 25393           path = 'M2.2 1h15.5c.7 0 1.3.6 1.3 1.2v11.5c0 .7-.6 1.2-1.2 1.2H2.2c-.6.1-1.2-.5-1.2-1.1V2.2C1 1.6 1.6 1 2.2 1zM17 13V3H3v10h14zm-4-4s0-5 3-5v7c0 .6-.4 1-1 1H5c-.6 0-1-.4-1-1V7c2 0 3 4 3 4s1-4 3-4 3 2 3 2zM4 17h12v2H4z';
       
 25394           break;
       
 25395 
       
 25396         case 'dashboard':
       
 25397           path = 'M3.76 16h12.48c1.1-1.37 1.76-3.11 1.76-5 0-4.42-3.58-8-8-8s-8 3.58-8 8c0 1.89.66 3.63 1.76 5zM10 4c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zM6 6c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm8 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm-5.37 5.55L12 7v6c0 1.1-.9 2-2 2s-2-.9-2-2c0-.57.24-1.08.63-1.45zM4 10c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm12 0c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm-5 3c0-.55-.45-1-1-1s-1 .45-1 1 .45 1 1 1 1-.45 1-1z';
       
 25398           break;
       
 25399 
       
 25400         case 'desktop':
       
 25401           path = 'M3 2h14c.55 0 1 .45 1 1v10c0 .55-.45 1-1 1h-5v2h2c.55 0 1 .45 1 1v1H5v-1c0-.55.45-1 1-1h2v-2H3c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm13 9V4H4v7h12zM5 5h9L5 9V5z';
       
 25402           break;
       
 25403 
       
 25404         case 'dismiss':
       
 25405           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm5 11l-3-3 3-3-2-2-3 3-3-3-2 2 3 3-3 3 2 2 3-3 3 3z';
       
 25406           break;
       
 25407 
       
 25408         case 'download':
       
 25409           path = 'M14.01 4v6h2V2H4v8h2.01V4h8zm-2 2v6h3l-5 6-5-6h3V6h4z';
       
 25410           break;
       
 25411 
       
 25412         case 'edit':
       
 25413           path = 'M13.89 3.39l2.71 2.72c.46.46.42 1.24.03 1.64l-8.01 8.02-5.56 1.16 1.16-5.58s7.6-7.63 7.99-8.03c.39-.39 1.22-.39 1.68.07zm-2.73 2.79l-5.59 5.61 1.11 1.11 5.54-5.65zm-2.97 8.23l5.58-5.6-1.07-1.08-5.59 5.6z';
       
 25414           break;
       
 25415 
       
 25416         case 'editor-aligncenter':
       
 25417           path = 'M14 5V3H6v2h8zm3 4V7H3v2h14zm-3 4v-2H6v2h8zm3 4v-2H3v2h14z';
       
 25418           break;
       
 25419 
       
 25420         case 'editor-alignleft':
       
 25421           path = 'M12 5V3H3v2h9zm5 4V7H3v2h14zm-5 4v-2H3v2h9zm5 4v-2H3v2h14z';
       
 25422           break;
       
 25423 
       
 25424         case 'editor-alignright':
       
 25425           path = 'M17 5V3H8v2h9zm0 4V7H3v2h14zm0 4v-2H8v2h9zm0 4v-2H3v2h14z';
       
 25426           break;
       
 25427 
       
 25428         case 'editor-bold':
       
 25429           path = 'M6 4v13h4.54c1.37 0 2.46-.33 3.26-1 .8-.66 1.2-1.58 1.2-2.77 0-.84-.17-1.51-.51-2.01s-.9-.85-1.67-1.03v-.09c.57-.1 1.02-.4 1.36-.9s.51-1.13.51-1.91c0-1.14-.39-1.98-1.17-2.5C12.75 4.26 11.5 4 9.78 4H6zm2.57 5.15V6.26h1.36c.73 0 1.27.11 1.61.32.34.22.51.58.51 1.07 0 .54-.16.92-.47 1.15s-.82.35-1.51.35h-1.5zm0 2.19h1.6c1.44 0 2.16.53 2.16 1.61 0 .6-.17 1.05-.51 1.34s-.86.43-1.57.43H8.57v-3.38z';
       
 25430           break;
       
 25431 
       
 25432         case 'editor-break':
       
 25433           path = 'M16 4h2v9H7v3l-5-4 5-4v3h9V4z';
       
 25434           break;
       
 25435 
       
 25436         case 'editor-code':
       
 25437           path = 'M9 6l-4 4 4 4-1 2-6-6 6-6zm2 8l4-4-4-4 1-2 6 6-6 6z';
       
 25438           break;
       
 25439 
       
 25440         case 'editor-contract':
       
 25441           path = 'M15.75 6.75L18 3v14l-2.25-3.75L17 12h-4v4l1.25-1.25L18 17H2l3.75-2.25L7 16v-4H3l1.25 1.25L2 17V3l2.25 3.75L3 8h4V4L5.75 5.25 2 3h16l-3.75 2.25L13 4v4h4z';
       
 25442           break;
       
 25443 
       
 25444         case 'editor-customchar':
       
 25445           path = 'M10 5.4c1.27 0 2.24.36 2.91 1.08.66.71 1 1.76 1 3.13 0 1.28-.23 2.37-.69 3.27-.47.89-1.27 1.52-2.22 2.12v2h6v-2h-3.69c.92-.64 1.62-1.34 2.12-2.34.49-1.01.74-2.13.74-3.35 0-1.78-.55-3.19-1.65-4.22S11.92 3.54 10 3.54s-3.43.53-4.52 1.57c-1.1 1.04-1.65 2.44-1.65 4.2 0 1.21.24 2.31.73 3.33.48 1.01 1.19 1.71 2.1 2.36H3v2h6v-2c-.98-.64-1.8-1.28-2.24-2.17-.45-.89-.67-1.96-.67-3.22 0-1.37.33-2.41 1-3.13C7.75 5.76 8.72 5.4 10 5.4z';
       
 25446           break;
       
 25447 
       
 25448         case 'editor-expand':
       
 25449           path = 'M7 8h6v4H7zm-5 5v4h4l-1.2-1.2L7 12l-3.8 2.2M14 17h4v-4l-1.2 1.2L13 12l2.2 3.8M14 3l1.3 1.3L13 8l3.8-2.2L18 7V3M6 3H2v4l1.2-1.2L7 8 4.7 4.3';
       
 25450           break;
       
 25451 
       
 25452         case 'editor-help':
       
 25453           path = 'M17 10c0-3.87-3.14-7-7-7-3.87 0-7 3.13-7 7s3.13 7 7 7c3.86 0 7-3.13 7-7zm-6.3 1.48H9.14v-.43c0-.38.08-.7.24-.98s.46-.57.88-.89c.41-.29.68-.53.81-.71.14-.18.2-.39.2-.62 0-.25-.09-.44-.28-.58-.19-.13-.45-.19-.79-.19-.58 0-1.25.19-2 .57l-.64-1.28c.87-.49 1.8-.74 2.77-.74.81 0 1.45.2 1.92.58.48.39.71.91.71 1.55 0 .43-.09.8-.29 1.11-.19.32-.57.67-1.11 1.06-.38.28-.61.49-.71.63-.1.15-.15.34-.15.57v.35zm-1.47 2.74c-.18-.17-.27-.42-.27-.73 0-.33.08-.58.26-.75s.43-.25.77-.25c.32 0 .57.09.75.26s.27.42.27.74c0 .3-.09.55-.27.72-.18.18-.43.27-.75.27-.33 0-.58-.09-.76-.26z';
       
 25454           break;
       
 25455 
       
 25456         case 'editor-indent':
       
 25457           path = 'M3 5V3h9v2H3zm10-1V3h4v1h-4zm0 3h2V5l4 3.5-4 3.5v-2h-2V7zM3 8V6h9v2H3zm2 3V9h7v2H5zm-2 3v-2h9v2H3zm10 0v-1h4v1h-4zm-4 3v-2h3v2H9z';
       
 25458           break;
       
 25459 
       
 25460         case 'editor-insertmore':
       
 25461           path = 'M17 7V3H3v4h14zM6 11V9H3v2h3zm6 0V9H8v2h4zm5 0V9h-3v2h3zm0 6v-4H3v4h14z';
       
 25462           break;
       
 25463 
       
 25464         case 'editor-italic':
       
 25465           path = 'M14.78 6h-2.13l-2.8 9h2.12l-.62 2H4.6l.62-2h2.14l2.8-9H8.03l.62-2h6.75z';
       
 25466           break;
       
 25467 
       
 25468         case 'editor-justify':
       
 25469           path = 'M2 3h16v2H2V3zm0 4h16v2H2V7zm0 4h16v2H2v-2zm0 4h16v2H2v-2z';
       
 25470           break;
       
 25471 
       
 25472         case 'editor-kitchensink':
       
 25473           path = 'M19 2v6H1V2h18zm-1 5V3H2v4h16zM5 4v2H3V4h2zm3 0v2H6V4h2zm3 0v2H9V4h2zm3 0v2h-2V4h2zm3 0v2h-2V4h2zm2 5v9H1V9h18zm-1 8v-7H2v7h16zM5 11v2H3v-2h2zm3 0v2H6v-2h2zm3 0v2H9v-2h2zm6 0v2h-5v-2h5zm-6 3v2H3v-2h8zm3 0v2h-2v-2h2zm3 0v2h-2v-2h2z';
       
 25474           break;
       
 25475 
       
 25476         case 'editor-ltr':
       
 25477           path = 'M5.52 2h7.43c.55 0 1 .45 1 1s-.45 1-1 1h-1v13c0 .55-.45 1-1 1s-1-.45-1-1V5c0-.55-.45-1-1-1s-1 .45-1 1v12c0 .55-.45 1-1 1s-1-.45-1-1v-5.96h-.43C3.02 11.04 1 9.02 1 6.52S3.02 2 5.52 2zM14 14l5-4-5-4v8z';
       
 25478           break;
       
 25479 
       
 25480         case 'editor-ol-rtl':
       
 25481           path = 'M15.025 8.75a1.048 1.048 0 0 1 .45-.1.507.507 0 0 1 .35.11.455.455 0 0 1 .13.36.803.803 0 0 1-.06.3 1.448 1.448 0 0 1-.19.33c-.09.11-.29.32-.58.62l-.99 1v.58h2.76v-.7h-1.72v-.04l.51-.48a7.276 7.276 0 0 0 .7-.71 1.75 1.75 0 0 0 .3-.49 1.254 1.254 0 0 0 .1-.51.968.968 0 0 0-.16-.56 1.007 1.007 0 0 0-.44-.37 1.512 1.512 0 0 0-.65-.14 1.98 1.98 0 0 0-.51.06 1.9 1.9 0 0 0-.42.15 3.67 3.67 0 0 0-.48.35l.45.54a2.505 2.505 0 0 1 .45-.3zM16.695 15.29a1.29 1.29 0 0 0-.74-.3v-.02a1.203 1.203 0 0 0 .65-.37.973.973 0 0 0 .23-.65.81.81 0 0 0-.37-.71 1.72 1.72 0 0 0-1-.26 2.185 2.185 0 0 0-1.33.4l.4.6a1.79 1.79 0 0 1 .46-.23 1.18 1.18 0 0 1 .41-.07c.38 0 .58.15.58.46a.447.447 0 0 1-.22.43 1.543 1.543 0 0 1-.7.12h-.31v.66h.31a1.764 1.764 0 0 1 .75.12.433.433 0 0 1 .23.41.55.55 0 0 1-.2.47 1.084 1.084 0 0 1-.63.15 2.24 2.24 0 0 1-.57-.08 2.671 2.671 0 0 1-.52-.2v.74a2.923 2.923 0 0 0 1.18.22 1.948 1.948 0 0 0 1.22-.33 1.077 1.077 0 0 0 .43-.92.836.836 0 0 0-.26-.64zM15.005 4.17c.06-.05.16-.14.3-.28l-.02.42V7h.84V3h-.69l-1.29 1.03.4.51zM4.02 5h9v1h-9zM4.02 10h9v1h-9zM4.02 15h9v1h-9z';
       
 25482           break;
       
 25483 
       
 25484         case 'editor-ol':
       
 25485           path = 'M6 7V3h-.69L4.02 4.03l.4.51.46-.37c.06-.05.16-.14.3-.28l-.02.42V7H6zm2-2h9v1H8V5zm-1.23 6.95v-.7H5.05v-.04l.51-.48c.33-.31.57-.54.7-.71.14-.17.24-.33.3-.49.07-.16.1-.33.1-.51 0-.21-.05-.4-.16-.56-.1-.16-.25-.28-.44-.37s-.41-.14-.65-.14c-.19 0-.36.02-.51.06-.15.03-.29.09-.42.15-.12.07-.29.19-.48.35l.45.54c.16-.13.31-.23.45-.3.15-.07.3-.1.45-.1.14 0 .26.03.35.11s.13.2.13.36c0 .1-.02.2-.06.3s-.1.21-.19.33c-.09.11-.29.32-.58.62l-.99 1v.58h2.76zM8 10h9v1H8v-1zm-1.29 3.95c0-.3-.12-.54-.37-.71-.24-.17-.58-.26-1-.26-.52 0-.96.13-1.33.4l.4.6c.17-.11.32-.19.46-.23.14-.05.27-.07.41-.07.38 0 .58.15.58.46 0 .2-.07.35-.22.43s-.38.12-.7.12h-.31v.66h.31c.34 0 .59.04.75.12.15.08.23.22.23.41 0 .22-.07.37-.2.47-.14.1-.35.15-.63.15-.19 0-.38-.03-.57-.08s-.36-.12-.52-.2v.74c.34.15.74.22 1.18.22.53 0 .94-.11 1.22-.33.29-.22.43-.52.43-.92 0-.27-.09-.48-.26-.64s-.42-.26-.74-.3v-.02c.27-.06.49-.19.65-.37.15-.18.23-.39.23-.65zM8 15h9v1H8v-1z';
       
 25486           break;
       
 25487 
       
 25488         case 'editor-outdent':
       
 25489           path = 'M7 4V3H3v1h4zm10 1V3H8v2h9zM7 7H5V5L1 8.5 5 12v-2h2V7zm10 1V6H8v2h9zm-2 3V9H8v2h7zm2 3v-2H8v2h9zM7 14v-1H3v1h4zm4 3v-2H8v2h3z';
       
 25490           break;
       
 25491 
       
 25492         case 'editor-paragraph':
       
 25493           path = 'M15 2H7.54c-.83 0-1.59.2-2.28.6-.7.41-1.25.96-1.65 1.65C3.2 4.94 3 5.7 3 6.52s.2 1.58.61 2.27c.4.69.95 1.24 1.65 1.64.69.41 1.45.61 2.28.61h.43V17c0 .27.1.51.29.71.2.19.44.29.71.29.28 0 .51-.1.71-.29.2-.2.3-.44.3-.71V5c0-.27.09-.51.29-.71.2-.19.44-.29.71-.29s.51.1.71.29c.19.2.29.44.29.71v12c0 .27.1.51.3.71.2.19.43.29.71.29.27 0 .51-.1.71-.29.19-.2.29-.44.29-.71V4H15c.27 0 .5-.1.7-.3.2-.19.3-.43.3-.7s-.1-.51-.3-.71C15.5 2.1 15.27 2 15 2z';
       
 25494           break;
       
 25495 
       
 25496         case 'editor-paste-text':
       
 25497           path = 'M12.38 2L15 5v1H5V5l2.64-3h4.74zM10 5c.55 0 1-.44 1-1 0-.55-.45-1-1-1s-1 .45-1 1c0 .56.45 1 1 1zm5.45-1H17c.55 0 1 .45 1 1v12c0 .56-.45 1-1 1H3c-.55 0-1-.44-1-1V5c0-.55.45-1 1-1h1.55L4 4.63V7h12V4.63zM14 11V9H6v2h3v5h2v-5h3z';
       
 25498           break;
       
 25499 
       
 25500         case 'editor-paste-word':
       
 25501           path = 'M12.38 2L15 5v1H5V5l2.64-3h4.74zM10 5c.55 0 1-.45 1-1s-.45-1-1-1-1 .45-1 1 .45 1 1 1zm8 12V5c0-.55-.45-1-1-1h-1.54l.54.63V7H4V4.62L4.55 4H3c-.55 0-1 .45-1 1v12c0 .55.45 1 1 1h14c.55 0 1-.45 1-1zm-3-8l-2 7h-2l-1-5-1 5H6.92L5 9h2l1 5 1-5h2l1 5 1-5h2z';
       
 25502           break;
       
 25503 
       
 25504         case 'editor-quote':
       
 25505           path = 'M9.49 13.22c0-.74-.2-1.38-.61-1.9-.62-.78-1.83-.88-2.53-.72-.29-1.65 1.11-3.75 2.92-4.65L7.88 4c-2.73 1.3-5.42 4.28-4.96 8.05C3.21 14.43 4.59 16 6.54 16c.85 0 1.56-.25 2.12-.75s.83-1.18.83-2.03zm8.05 0c0-.74-.2-1.38-.61-1.9-.63-.78-1.83-.88-2.53-.72-.29-1.65 1.11-3.75 2.92-4.65L15.93 4c-2.73 1.3-5.41 4.28-4.95 8.05.29 2.38 1.66 3.95 3.61 3.95.85 0 1.56-.25 2.12-.75s.83-1.18.83-2.03z';
       
 25506           break;
       
 25507 
       
 25508         case 'editor-removeformatting':
       
 25509           path = 'M14.29 4.59l1.1 1.11c.41.4.61.94.61 1.47v2.12c0 .53-.2 1.07-.61 1.47l-6.63 6.63c-.4.41-.94.61-1.47.61s-1.07-.2-1.47-.61l-1.11-1.1-1.1-1.11c-.41-.4-.61-.94-.61-1.47v-2.12c0-.54.2-1.07.61-1.48l6.63-6.62c.4-.41.94-.61 1.47-.61s1.06.2 1.47.61zm-6.21 9.7l6.42-6.42c.39-.39.39-1.03 0-1.43L12.36 4.3c-.19-.19-.45-.29-.72-.29s-.52.1-.71.29l-6.42 6.42c-.39.4-.39 1.04 0 1.43l2.14 2.14c.38.38 1.04.38 1.43 0z';
       
 25510           break;
       
 25511 
       
 25512         case 'editor-rtl':
       
 25513           path = 'M5.52 2h7.43c.55 0 1 .45 1 1s-.45 1-1 1h-1v13c0 .55-.45 1-1 1s-1-.45-1-1V5c0-.55-.45-1-1-1s-1 .45-1 1v12c0 .55-.45 1-1 1s-1-.45-1-1v-5.96h-.43C3.02 11.04 1 9.02 1 6.52S3.02 2 5.52 2zM19 6l-5 4 5 4V6z';
       
 25514           break;
       
 25515 
       
 25516         case 'editor-spellcheck':
       
 25517           path = 'M15.84 2.76c.25 0 .49.04.71.11.23.07.44.16.64.25l.35-.81c-.52-.26-1.08-.39-1.69-.39-.58 0-1.09.13-1.52.37-.43.25-.76.61-.99 1.08C13.11 3.83 13 4.38 13 5c0 .99.23 1.75.7 2.28s1.15.79 2.02.79c.6 0 1.13-.09 1.6-.26v-.84c-.26.08-.51.14-.74.19-.24.05-.49.08-.74.08-.59 0-1.04-.19-1.34-.57-.32-.37-.47-.93-.47-1.66 0-.7.16-1.25.48-1.65.33-.4.77-.6 1.33-.6zM6.5 8h1.04L5.3 2H4.24L2 8h1.03l.58-1.66H5.9zM8 2v6h2.17c.67 0 1.19-.15 1.57-.46.38-.3.56-.72.56-1.26 0-.4-.1-.72-.3-.95-.19-.24-.5-.39-.93-.47v-.04c.35-.06.6-.21.78-.44.18-.24.28-.53.28-.88 0-.52-.19-.9-.56-1.14-.36-.24-.96-.36-1.79-.36H8zm.98 2.48V2.82h.85c.44 0 .77.06.97.19.21.12.31.33.31.61 0 .31-.1.53-.29.66-.18.13-.48.2-.89.2h-.95zM5.64 5.5H3.9l.54-1.56c.14-.4.25-.76.32-1.1l.15.52c.07.23.13.4.17.51zm3.34-.23h.99c.44 0 .76.08.98.23.21.15.32.38.32.69 0 .34-.11.59-.32.75s-.52.24-.93.24H8.98V5.27zM4 13l5 5 9-8-1-1-8 6-4-3z';
       
 25518           break;
       
 25519 
       
 25520         case 'editor-strikethrough':
       
 25521           path = 'M15.82 12.25c.26 0 .5-.02.74-.07.23-.05.48-.12.73-.2v.84c-.46.17-.99.26-1.58.26-.88 0-1.54-.26-2.01-.79-.39-.44-.62-1.04-.68-1.79h-.94c.12.21.18.48.18.79 0 .54-.18.95-.55 1.26-.38.3-.9.45-1.56.45H8v-2.5H6.59l.93 2.5H6.49l-.59-1.67H3.62L3.04 13H2l.93-2.5H2v-1h1.31l.93-2.49H5.3l.92 2.49H8V7h1.77c1 0 1.41.17 1.77.41.37.24.55.62.55 1.13 0 .35-.09.64-.27.87l-.08.09h1.29c.05-.4.15-.77.31-1.1.23-.46.55-.82.98-1.06.43-.25.93-.37 1.51-.37.61 0 1.17.12 1.69.38l-.35.81c-.2-.1-.42-.18-.64-.25s-.46-.11-.71-.11c-.55 0-.99.2-1.31.59-.23.29-.38.66-.44 1.11H17v1h-2.95c.06.5.2.9.44 1.19.3.37.75.56 1.33.56zM4.44 8.96l-.18.54H5.3l-.22-.61c-.04-.11-.09-.28-.17-.51-.07-.24-.12-.41-.14-.51-.08.33-.18.69-.33 1.09zm4.53-1.09V9.5h1.19c.28-.02.49-.09.64-.18.19-.13.28-.35.28-.66 0-.28-.1-.48-.3-.61-.2-.12-.53-.18-.97-.18h-.84zm-3.33 2.64v-.01H3.91v.01h1.73zm5.28.01l-.03-.02H8.97v1.68h1.04c.4 0 .71-.08.92-.23.21-.16.31-.4.31-.74 0-.31-.11-.54-.32-.69z';
       
 25522           break;
       
 25523 
       
 25524         case 'editor-table':
       
 25525           path = 'M18 17V3H2v14h16zM16 7H4V5h12v2zm-7 4H4V9h5v2zm7 0h-5V9h5v2zm-7 4H4v-2h5v2zm7 0h-5v-2h5v2z';
       
 25526           break;
       
 25527 
       
 25528         case 'editor-textcolor':
       
 25529           path = 'M13.23 15h1.9L11 4H9L5 15h1.88l1.07-3h4.18zm-1.53-4.54H8.51L10 5.6z';
       
 25530           break;
       
 25531 
       
 25532         case 'editor-ul':
       
 25533           path = 'M5.5 7C4.67 7 4 6.33 4 5.5 4 4.68 4.67 4 5.5 4 6.32 4 7 4.68 7 5.5 7 6.33 6.32 7 5.5 7zM8 5h9v1H8V5zm-2.5 7c-.83 0-1.5-.67-1.5-1.5C4 9.68 4.67 9 5.5 9c.82 0 1.5.68 1.5 1.5 0 .83-.68 1.5-1.5 1.5zM8 10h9v1H8v-1zm-2.5 7c-.83 0-1.5-.67-1.5-1.5 0-.82.67-1.5 1.5-1.5.82 0 1.5.68 1.5 1.5 0 .83-.68 1.5-1.5 1.5zM8 15h9v1H8v-1z';
       
 25534           break;
       
 25535 
       
 25536         case 'editor-underline':
       
 25537           path = 'M14 5h-2v5.71c0 1.99-1.12 2.98-2.45 2.98-1.32 0-2.55-1-2.55-2.96V5H5v5.87c0 1.91 1 4.54 4.48 4.54 3.49 0 4.52-2.58 4.52-4.5V5zm0 13v-2H5v2h9z';
       
 25538           break;
       
 25539 
       
 25540         case 'editor-unlink':
       
 25541           path = 'M17.74 2.26c1.68 1.69 1.68 4.41 0 6.1l-1.53 1.52c-.32.33-.69.58-1.08.77L13 10l1.69-1.64.76-.77.76-.76c.84-.84.84-2.2 0-3.04-.84-.85-2.2-.85-3.04 0l-.77.76-.76.76L10 7l-.65-2.14c.19-.38.44-.75.77-1.07l1.52-1.53c1.69-1.68 4.42-1.68 6.1 0zM2 4l8 6-6-8zm4-2l4 8-2-8H6zM2 6l8 4-8-2V6zm7.36 7.69L10 13l.74 2.35-1.38 1.39c-1.69 1.68-4.41 1.68-6.1 0-1.68-1.68-1.68-4.42 0-6.1l1.39-1.38L7 10l-.69.64-1.52 1.53c-.85.84-.85 2.2 0 3.04.84.85 2.2.85 3.04 0zM18 16l-8-6 6 8zm-4 2l-4-8 2 8h2zm4-4l-8-4 8 2v2z';
       
 25542           break;
       
 25543 
       
 25544         case 'editor-video':
       
 25545           path = 'M16 2h-3v1H7V2H4v15h3v-1h6v1h3V2zM6 3v1H5V3h1zm9 0v1h-1V3h1zm-2 1v5H7V4h6zM6 5v1H5V5h1zm9 0v1h-1V5h1zM6 7v1H5V7h1zm9 0v1h-1V7h1zM6 9v1H5V9h1zm9 0v1h-1V9h1zm-2 1v5H7v-5h6zm-7 1v1H5v-1h1zm9 0v1h-1v-1h1zm-9 2v1H5v-1h1zm9 0v1h-1v-1h1zm-9 2v1H5v-1h1zm9 0v1h-1v-1h1z';
       
 25546           break;
       
 25547 
       
 25548         case 'ellipsis':
       
 25549           path = 'M5 10c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm12-2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm-7 0c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z';
       
 25550           break;
       
 25551 
       
 25552         case 'email-alt':
       
 25553           path = 'M19 14.5v-9c0-.83-.67-1.5-1.5-1.5H3.49c-.83 0-1.5.67-1.5 1.5v9c0 .83.67 1.5 1.5 1.5H17.5c.83 0 1.5-.67 1.5-1.5zm-1.31-9.11c.33.33.15.67-.03.84L13.6 9.95l3.9 4.06c.12.14.2.36.06.51-.13.16-.43.15-.56.05l-4.37-3.73-2.14 1.95-2.13-1.95-4.37 3.73c-.13.1-.43.11-.56-.05-.14-.15-.06-.37.06-.51l3.9-4.06-4.06-3.72c-.18-.17-.36-.51-.03-.84s.67-.17.95.07l6.24 5.04 6.25-5.04c.28-.24.62-.4.95-.07z';
       
 25554           break;
       
 25555 
       
 25556         case 'email-alt2':
       
 25557           path = 'M18.01 11.18V2.51c0-1.19-.9-1.81-2-1.37L4 5.91c-1.1.44-2 1.77-2 2.97v8.66c0 1.2.9 1.81 2 1.37l12.01-4.77c1.1-.44 2-1.76 2-2.96zm-1.43-7.46l-6.04 9.33-6.65-4.6c-.1-.07-.36-.32-.17-.64.21-.36.65-.21.65-.21l6.3 2.32s4.83-6.34 5.11-6.7c.13-.17.43-.34.73-.13.29.2.16.49.07.63z';
       
 25558           break;
       
 25559 
       
 25560         case 'email':
       
 25561           path = 'M3.87 4h13.25C18.37 4 19 4.59 19 5.79v8.42c0 1.19-.63 1.79-1.88 1.79H3.87c-1.25 0-1.88-.6-1.88-1.79V5.79c0-1.2.63-1.79 1.88-1.79zm6.62 8.6l6.74-5.53c.24-.2.43-.66.13-1.07-.29-.41-.82-.42-1.17-.17l-5.7 3.86L4.8 5.83c-.35-.25-.88-.24-1.17.17-.3.41-.11.87.13 1.07z';
       
 25562           break;
       
 25563 
       
 25564         case 'embed-audio':
       
 25565           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-7 3H7v4c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2c.4 0 .7.1 1 .3V5h4v2zm4 3.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 25566           break;
       
 25567 
       
 25568         case 'embed-generic':
       
 25569           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-3 6.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 25570           break;
       
 25571 
       
 25572         case 'embed-photo':
       
 25573           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-7 8H3V6h7v6zm4-1.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3zm-6-4V8.5L7.2 10 6 9.2 4 11h5zM4.6 8.6c.6 0 1-.4 1-1s-.4-1-1-1-1 .4-1 1 .4 1 1 1z';
       
 25574           break;
       
 25575 
       
 25576         case 'embed-post':
       
 25577           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zM8.6 9l-.4.3c-.4.4-.5 1.1-.2 1.6l-.8.8-1.1-1.1-1.3 1.3c-.2.2-1.6 1.3-1.8 1.1-.2-.2.9-1.6 1.1-1.8l1.3-1.3-1.1-1.1.8-.8c.5.3 1.2.3 1.6-.2l.3-.3c.5-.5.5-1.2.2-1.7L8 5l3 2.9-.8.8c-.5-.2-1.2-.2-1.6.3zm5.4 1.5L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 25578           break;
       
 25579 
       
 25580         case 'embed-video':
       
 25581           path = 'M17 4H3c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-7 6.5L8 9.1V11H3V6h5v1.8l2-1.3v4zm4 0L12.5 12l1.5 1.5V15l-3-3 3-3v1.5zm1 4.5v-1.5l1.5-1.5-1.5-1.5V9l3 3-3 3z';
       
 25582           break;
       
 25583 
       
 25584         case 'excerpt-view':
       
 25585           path = 'M19 18V2c0-.55-.45-1-1-1H2c-.55 0-1 .45-1 1v16c0 .55.45 1 1 1h16c.55 0 1-.45 1-1zM4 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v6H6V3h11zM4 11c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v6H6v-6h11z';
       
 25586           break;
       
 25587 
       
 25588         case 'exit':
       
 25589           path = 'M13 3v2h2v10h-2v2h4V3h-4zm0 8V9H5.4l4.3-4.3-1.4-1.4L1.6 10l6.7 6.7 1.4-1.4L5.4 11H13z';
       
 25590           break;
       
 25591 
       
 25592         case 'external':
       
 25593           path = 'M9 3h8v8l-2-1V6.92l-5.6 5.59-1.41-1.41L14.08 5H10zm3 12v-3l2-2v7H3V6h8L9 8H5v7h7z';
       
 25594           break;
       
 25595 
       
 25596         case 'facebook-alt':
       
 25597           path = 'M8.46 18h2.93v-7.3h2.45l.37-2.84h-2.82V6.04c0-.82.23-1.38 1.41-1.38h1.51V2.11c-.26-.03-1.15-.11-2.19-.11-2.18 0-3.66 1.33-3.66 3.76v2.1H6v2.84h2.46V18z';
       
 25598           break;
       
 25599 
       
 25600         case 'facebook':
       
 25601           path = 'M2.89 2h14.23c.49 0 .88.39.88.88v14.24c0 .48-.39.88-.88.88h-4.08v-6.2h2.08l.31-2.41h-2.39V7.85c0-.7.2-1.18 1.2-1.18h1.28V4.51c-.22-.03-.98-.09-1.86-.09-1.85 0-3.11 1.12-3.11 3.19v1.78H8.46v2.41h2.09V18H2.89c-.49 0-.89-.4-.89-.88V2.88c0-.49.4-.88.89-.88z';
       
 25602           break;
       
 25603 
       
 25604         case 'feedback':
       
 25605           path = 'M2 2h16c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H2c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm15 14V7H3v9h14zM4 8v1h3V8H4zm4 0v3h8V8H8zm-4 4v1h3v-1H4zm4 0v3h8v-3H8z';
       
 25606           break;
       
 25607 
       
 25608         case 'filter':
       
 25609           path = 'M3 4.5v-2s3.34-1 7-1 7 1 7 1v2l-5 7.03v6.97s-1.22-.09-2.25-.59S8 16.5 8 16.5v-4.97z';
       
 25610           break;
       
 25611 
       
 25612         case 'flag':
       
 25613           path = 'M5 18V3H3v15h2zm1-6V4c3-1 7 1 11 0v8c-3 1.27-8-1-11 0z';
       
 25614           break;
       
 25615 
       
 25616         case 'format-aside':
       
 25617           path = 'M1 1h18v12l-6 6H1V1zm3 3v1h12V4H4zm0 4v1h12V8H4zm6 5v-1H4v1h6zm2 4l5-5h-5v5z';
       
 25618           break;
       
 25619 
       
 25620         case 'format-audio':
       
 25621           path = 'M6.99 3.08l11.02-2c.55-.08.99.45.99 1V14.5c0 1.94-1.57 3.5-3.5 3.5S12 16.44 12 14.5c0-1.93 1.57-3.5 3.5-3.5.54 0 1.04.14 1.5.35V5.08l-9 2V16c-.24 1.7-1.74 3-3.5 3C2.57 19 1 17.44 1 15.5 1 13.57 2.57 12 4.5 12c.54 0 1.04.14 1.5.35V4.08c0-.55.44-.91.99-1z';
       
 25622           break;
       
 25623 
       
 25624         case 'format-chat':
       
 25625           path = 'M11 6h-.82C9.07 6 8 7.2 8 8.16V10l-3 3v-3H3c-1.1 0-2-.9-2-2V3c0-1.1.9-2 2-2h6c1.1 0 2 .9 2 2v3zm0 1h6c1.1 0 2 .9 2 2v5c0 1.1-.9 2-2 2h-2v3l-3-3h-1c-1.1 0-2-.9-2-2V9c0-1.1.9-2 2-2z';
       
 25626           break;
       
 25627 
       
 25628         case 'format-gallery':
       
 25629           path = 'M16 4h1.96c.57 0 1.04.47 1.04 1.04v12.92c0 .57-.47 1.04-1.04 1.04H5.04C4.47 19 4 18.53 4 17.96V16H2.04C1.47 16 1 15.53 1 14.96V2.04C1 1.47 1.47 1 2.04 1h12.92c.57 0 1.04.47 1.04 1.04V4zM3 14h11V3H3v11zm5-8.5C8 4.67 7.33 4 6.5 4S5 4.67 5 5.5 5.67 7 6.5 7 8 6.33 8 5.5zm2 4.5s1-5 3-5v8H4V7c2 0 2 3 2 3s.33-2 2-2 2 2 2 2zm7 7V6h-1v8.96c0 .57-.47 1.04-1.04 1.04H6v1h11z';
       
 25630           break;
       
 25631 
       
 25632         case 'format-image':
       
 25633           path = 'M2.25 1h15.5c.69 0 1.25.56 1.25 1.25v15.5c0 .69-.56 1.25-1.25 1.25H2.25C1.56 19 1 18.44 1 17.75V2.25C1 1.56 1.56 1 2.25 1zM17 17V3H3v14h14zM10 6c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2zm3 5s0-6 3-6v10c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1V8c2 0 3 4 3 4s1-3 3-3 3 2 3 2z';
       
 25634           break;
       
 25635 
       
 25636         case 'format-quote':
       
 25637           path = 'M8.54 12.74c0-.87-.24-1.61-.72-2.22-.73-.92-2.14-1.03-2.96-.85-.34-1.93 1.3-4.39 3.42-5.45L6.65 1.94C3.45 3.46.31 6.96.85 11.37 1.19 14.16 2.8 16 5.08 16c1 0 1.83-.29 2.48-.88.66-.59.98-1.38.98-2.38zm9.43 0c0-.87-.24-1.61-.72-2.22-.73-.92-2.14-1.03-2.96-.85-.34-1.93 1.3-4.39 3.42-5.45l-1.63-2.28c-3.2 1.52-6.34 5.02-5.8 9.43.34 2.79 1.95 4.63 4.23 4.63 1 0 1.83-.29 2.48-.88.66-.59.98-1.38.98-2.38z';
       
 25638           break;
       
 25639 
       
 25640         case 'format-status':
       
 25641           path = 'M10 1c7 0 9 2.91 9 6.5S17 14 10 14s-9-2.91-9-6.5S3 1 10 1zM5.5 9C6.33 9 7 8.33 7 7.5S6.33 6 5.5 6 4 6.67 4 7.5 4.67 9 5.5 9zM10 9c.83 0 1.5-.67 1.5-1.5S10.83 6 10 6s-1.5.67-1.5 1.5S9.17 9 10 9zm4.5 0c.83 0 1.5-.67 1.5-1.5S15.33 6 14.5 6 13 6.67 13 7.5 13.67 9 14.5 9zM6 14.5c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5zm-3 2c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1z';
       
 25642           break;
       
 25643 
       
 25644         case 'format-video':
       
 25645           path = 'M2 1h16c.55 0 1 .45 1 1v16l-18-.02V2c0-.55.45-1 1-1zm4 1L4 5h1l2-3H6zm4 0H9L7 5h1zm3 0h-1l-2 3h1zm3 0h-1l-2 3h1zm1 14V6H3v10h14zM8 7l6 4-6 4V7z';
       
 25646           break;
       
 25647 
       
 25648         case 'forms':
       
 25649           path = 'M2 2h7v7H2V2zm9 0v7h7V2h-7zM5.5 4.5L7 3H4zM12 8V3h5v5h-5zM4.5 5.5L3 4v3zM8 4L6.5 5.5 8 7V4zM5.5 6.5L4 8h3zM9 18v-7H2v7h7zm9 0h-7v-7h7v7zM8 12v5H3v-5h5zm6.5 1.5L16 12h-3zM12 16l1.5-1.5L12 13v3zm3.5-1.5L17 16v-3zm-1 1L13 17h3z';
       
 25650           break;
       
 25651 
       
 25652         case 'googleplus':
       
 25653           path = 'M6.73 10h5.4c.05.29.09.57.09.95 0 3.27-2.19 5.6-5.49 5.6-3.17 0-5.73-2.57-5.73-5.73 0-3.17 2.56-5.73 5.73-5.73 1.54 0 2.84.57 3.83 1.5l-1.55 1.5c-.43-.41-1.17-.89-2.28-.89-1.96 0-3.55 1.62-3.55 3.62 0 1.99 1.59 3.61 3.55 3.61 2.26 0 3.11-1.62 3.24-2.47H6.73V10zM19 10v1.64h-1.64v1.63h-1.63v-1.63h-1.64V10h1.64V8.36h1.63V10H19z';
       
 25654           break;
       
 25655 
       
 25656         case 'grid-view':
       
 25657           path = 'M2 1h16c.55 0 1 .45 1 1v16c0 .55-.45 1-1 1H2c-.55 0-1-.45-1-1V2c0-.55.45-1 1-1zm7.01 7.99v-6H3v6h6.01zm8 0v-6h-6v6h6zm-8 8.01v-6H3v6h6.01zm8 0v-6h-6v6h6z';
       
 25658           break;
       
 25659 
       
 25660         case 'groups':
       
 25661           path = 'M8.03 4.46c-.29 1.28.55 3.46 1.97 3.46 1.41 0 2.25-2.18 1.96-3.46-.22-.98-1.08-1.63-1.96-1.63-.89 0-1.74.65-1.97 1.63zm-4.13.9c-.25 1.08.47 2.93 1.67 2.93s1.92-1.85 1.67-2.93c-.19-.83-.92-1.39-1.67-1.39s-1.48.56-1.67 1.39zm8.86 0c-.25 1.08.47 2.93 1.66 2.93 1.2 0 1.92-1.85 1.67-2.93-.19-.83-.92-1.39-1.67-1.39-.74 0-1.47.56-1.66 1.39zm-.59 11.43l1.25-4.3C14.2 10 12.71 8.47 10 8.47c-2.72 0-4.21 1.53-3.44 4.02l1.26 4.3C8.05 17.51 9 18 10 18c.98 0 1.94-.49 2.17-1.21zm-6.1-7.63c-.49.67-.96 1.83-.42 3.59l1.12 3.79c-.34.2-.77.31-1.2.31-.85 0-1.65-.41-1.85-1.03l-1.07-3.65c-.65-2.11.61-3.4 2.92-3.4.27 0 .54.02.79.06-.1.1-.2.22-.29.33zm8.35-.39c2.31 0 3.58 1.29 2.92 3.4l-1.07 3.65c-.2.62-1 1.03-1.85 1.03-.43 0-.86-.11-1.2-.31l1.11-3.77c.55-1.78.08-2.94-.42-3.61-.08-.11-.18-.23-.28-.33.25-.04.51-.06.79-.06z';
       
 25662           break;
       
 25663 
       
 25664         case 'hammer':
       
 25665           path = 'M17.7 6.32l1.41 1.42-3.47 3.41-1.42-1.42.84-.82c-.32-.76-.81-1.57-1.51-2.31l-4.61 6.59-5.26 4.7c-.39.39-1.02.39-1.42 0l-1.2-1.21c-.39-.39-.39-1.02 0-1.41l10.97-9.92c-1.37-.86-3.21-1.46-5.67-1.48 2.7-.82 4.95-.93 6.58-.3 1.7.66 2.82 2.2 3.91 3.58z';
       
 25666           break;
       
 25667 
       
 25668         case 'heading':
       
 25669           path = 'M12.5 4v5.2h-5V4H5v13h2.5v-5.2h5V17H15V4';
       
 25670           break;
       
 25671 
       
 25672         case 'heart':
       
 25673           path = 'M10 17.12c3.33-1.4 5.74-3.79 7.04-6.21 1.28-2.41 1.46-4.81.32-6.25-1.03-1.29-2.37-1.78-3.73-1.74s-2.68.63-3.63 1.46c-.95-.83-2.27-1.42-3.63-1.46s-2.7.45-3.73 1.74c-1.14 1.44-.96 3.84.34 6.25 1.28 2.42 3.69 4.81 7.02 6.21z';
       
 25674           break;
       
 25675 
       
 25676         case 'hidden':
       
 25677           path = 'M17.2 3.3l.16.17c.39.39.39 1.02 0 1.41L4.55 17.7c-.39.39-1.03.39-1.41 0l-.17-.17c-.39-.39-.39-1.02 0-1.41l1.59-1.6c-1.57-1-2.76-2.3-3.56-3.93.81-1.65 2.03-2.98 3.64-3.99S8.04 5.09 10 5.09c1.2 0 2.33.21 3.4.6l2.38-2.39c.39-.39 1.03-.39 1.42 0zm-7.09 4.01c-.23.25-.34.54-.34.88 0 .31.12.58.31.81l1.8-1.79c-.13-.12-.28-.21-.45-.26-.11-.01-.28-.03-.49-.04-.33.03-.6.16-.83.4zM2.4 10.59c.69 1.23 1.71 2.25 3.05 3.05l1.28-1.28c-.51-.69-.77-1.47-.77-2.36 0-1.06.36-1.98 1.09-2.76-1.04.27-1.96.7-2.76 1.26-.8.58-1.43 1.27-1.89 2.09zm13.22-2.13l.96-.96c1.02.86 1.83 1.89 2.42 3.09-.81 1.65-2.03 2.98-3.64 3.99s-3.4 1.51-5.36 1.51c-.63 0-1.24-.07-1.83-.18l1.07-1.07c.25.02.5.05.76.05 1.63 0 3.13-.4 4.5-1.21s2.4-1.84 3.1-3.09c-.46-.82-1.09-1.51-1.89-2.09-.03-.01-.06-.03-.09-.04zm-5.58 5.58l4-4c-.01 1.1-.41 2.04-1.18 2.81-.78.78-1.72 1.18-2.82 1.19z';
       
 25678           break;
       
 25679 
       
 25680         case 'html':
       
 25681           path = 'M4 16v-2H2v2H1v-5h1v2h2v-2h1v5H4zM7 16v-4H5.6v-1h3.7v1H8v4H7zM10 16v-5h1l1.4 3.4h.1L14 11h1v5h-1v-3.1h-.1l-1.1 2.5h-.6l-1.1-2.5H11V16h-1zM19 16h-3v-5h1v4h2v1zM9.4 4.2L7.1 6.5l2.3 2.3-.6 1.2-3.5-3.5L8.8 3l.6 1.2zm1.2 4.6l2.3-2.3-2.3-2.3.6-1.2 3.5 3.5-3.5 3.5-.6-1.2z';
       
 25682           break;
       
 25683 
       
 25684         case 'id-alt':
       
 25685           path = 'M18 18H2V2h16v16zM8.05 7.53c.13-.07.24-.15.33-.24.09-.1.17-.21.24-.34.07-.14.13-.26.17-.37s.07-.22.1-.34L8.95 6c0-.04.01-.07.01-.09.05-.32.03-.61-.04-.9-.08-.28-.23-.52-.46-.72C8.23 4.1 7.95 4 7.6 4c-.2 0-.39.04-.56.11-.17.08-.31.18-.41.3-.11.13-.2.27-.27.44-.07.16-.11.33-.12.51s0 .36.01.55l.02.09c.01.06.03.15.06.25s.06.21.1.33.1.25.17.37c.08.12.16.23.25.33s.2.19.34.25c.13.06.28.09.43.09s.3-.03.43-.09zM16 5V4h-5v1h5zm0 2V6h-5v1h5zM7.62 8.83l-1.38-.88c-.41 0-.79.11-1.14.32-.35.22-.62.5-.81.85-.19.34-.29.7-.29 1.07v1.25l.2.05c.13.04.31.09.55.14.24.06.51.12.8.17.29.06.62.1 1 .14.37.04.73.06 1.07.06s.69-.02 1.07-.06.7-.09.98-.14c.27-.05.54-.1.82-.17.27-.06.45-.11.54-.13.09-.03.16-.05.21-.06v-1.25c0-.36-.1-.72-.31-1.07s-.49-.64-.84-.86-.72-.33-1.11-.33zM16 9V8h-3v1h3zm0 2v-1h-3v1h3zm0 3v-1H4v1h12zm0 2v-1H4v1h12z';
       
 25686           break;
       
 25687 
       
 25688         case 'id':
       
 25689           path = 'M18 16H2V4h16v12zM7.05 8.53c.13-.07.24-.15.33-.24.09-.1.17-.21.24-.34.07-.14.13-.26.17-.37s.07-.22.1-.34L7.95 7c0-.04.01-.07.01-.09.05-.32.03-.61-.04-.9-.08-.28-.23-.52-.46-.72C7.23 5.1 6.95 5 6.6 5c-.2 0-.39.04-.56.11-.17.08-.31.18-.41.3-.11.13-.2.27-.27.44-.07.16-.11.33-.12.51s0 .36.01.55l.02.09c.01.06.03.15.06.25s.06.21.1.33.1.25.17.37c.08.12.16.23.25.33s.2.19.34.25c.13.06.28.09.43.09s.3-.03.43-.09zM17 9V5h-5v4h5zm-10.38.83l-1.38-.88c-.41 0-.79.11-1.14.32-.35.22-.62.5-.81.85-.19.34-.29.7-.29 1.07v1.25l.2.05c.13.04.31.09.55.14.24.06.51.12.8.17.29.06.62.1 1 .14.37.04.73.06 1.07.06s.69-.02 1.07-.06.7-.09.98-.14c.27-.05.54-.1.82-.17.27-.06.45-.11.54-.13.09-.03.16-.05.21-.06v-1.25c0-.36-.1-.72-.31-1.07s-.49-.64-.84-.86-.72-.33-1.11-.33zM17 11v-1h-5v1h5zm0 2v-1h-5v1h5zm0 2v-1H3v1h14z';
       
 25690           break;
       
 25691 
       
 25692         case 'image-crop':
       
 25693           path = 'M19 12v3h-4v4h-3v-4H4V7H0V4h4V0h3v4h7l3-3 1 1-3 3v7h4zm-8-5H7v4zm-3 5h4V8z';
       
 25694           break;
       
 25695 
       
 25696         case 'image-filter':
       
 25697           path = 'M14 5.87c0-2.2-1.79-4-4-4s-4 1.8-4 4c0 2.21 1.79 4 4 4s4-1.79 4-4zM3.24 10.66c-1.92 1.1-2.57 3.55-1.47 5.46 1.11 1.92 3.55 2.57 5.47 1.47 1.91-1.11 2.57-3.55 1.46-5.47-1.1-1.91-3.55-2.56-5.46-1.46zm9.52 6.93c1.92 1.1 4.36.45 5.47-1.46 1.1-1.92.45-4.36-1.47-5.47-1.91-1.1-4.36-.45-5.46 1.46-1.11 1.92-.45 4.36 1.46 5.47z';
       
 25698           break;
       
 25699 
       
 25700         case 'image-flip-horizontal':
       
 25701           path = 'M19 3v14h-8v3H9v-3H1V3h8V0h2v3h8zm-8.5 14V3h-1v14h1zM7 6.5L3 10l4 3.5v-7zM17 10l-4-3.5v7z';
       
 25702           break;
       
 25703 
       
 25704         case 'image-flip-vertical':
       
 25705           path = 'M20 9v2h-3v8H3v-8H0V9h3V1h14v8h3zM6.5 7h7L10 3zM17 9.5H3v1h14v-1zM13.5 13h-7l3.5 4z';
       
 25706           break;
       
 25707 
       
 25708         case 'image-rotate-left':
       
 25709           path = 'M7 5H5.05c0-1.74.85-2.9 2.95-2.9V0C4.85 0 2.96 2.11 2.96 5H1.18L3.8 8.39zm13-4v14h-5v5H1V10h9V1h10zm-2 2h-6v7h3v3h3V3zm-5 9H3v6h10v-6z';
       
 25710           break;
       
 25711 
       
 25712         case 'image-rotate-right':
       
 25713           path = 'M15.95 5H14l3.2 3.39L19.82 5h-1.78c0-2.89-1.89-5-5.04-5v2.1c2.1 0 2.95 1.16 2.95 2.9zM1 1h10v9h9v10H6v-5H1V1zm2 2v10h3v-3h3V3H3zm5 9v6h10v-6H8z';
       
 25714           break;
       
 25715 
       
 25716         case 'image-rotate':
       
 25717           path = 'M10.25 1.02c5.1 0 8.75 4.04 8.75 9s-3.65 9-8.75 9c-3.2 0-6.02-1.59-7.68-3.99l2.59-1.52c1.1 1.5 2.86 2.51 4.84 2.51 3.3 0 6-2.79 6-6s-2.7-6-6-6c-1.97 0-3.72 1-4.82 2.49L7 8.02l-6 2v-7L2.89 4.6c1.69-2.17 4.36-3.58 7.36-3.58z';
       
 25718           break;
       
 25719 
       
 25720         case 'images-alt':
       
 25721           path = 'M4 15v-3H2V2h12v3h2v3h2v10H6v-3H4zm7-12c-1.1 0-2 .9-2 2h4c0-1.1-.89-2-2-2zm-7 8V6H3v5h1zm7-3h4c0-1.1-.89-2-2-2-1.1 0-2 .9-2 2zm-5 6V9H5v5h1zm9-1c1.1 0 2-.89 2-2 0-1.1-.9-2-2-2s-2 .9-2 2c0 1.11.9 2 2 2zm2 4v-2c-5 0-5-3-10-3v5h10z';
       
 25722           break;
       
 25723 
       
 25724         case 'images-alt2':
       
 25725           path = 'M5 3h14v11h-2v2h-2v2H1V7h2V5h2V3zm13 10V4H6v9h12zm-3-4c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm1 6v-1H5V6H4v9h12zM7 6l10 6H7V6zm7 11v-1H3V8H2v9h12z';
       
 25726           break;
       
 25727 
       
 25728         case 'index-card':
       
 25729           path = 'M1 3.17V18h18V4H8v-.83c0-.32-.12-.6-.35-.83S7.14 2 6.82 2H2.18c-.33 0-.6.11-.83.34-.24.23-.35.51-.35.83zM10 6v2H3V6h7zm7 0v10h-5V6h5zm-7 4v2H3v-2h7zm0 4v2H3v-2h7z';
       
 25730           break;
       
 25731 
       
 25732         case 'info-outline':
       
 25733           path = 'M9 15h2V9H9v6zm1-10c-.5 0-1 .5-1 1s.5 1 1 1 1-.5 1-1-.5-1-1-1zm0-4c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7z';
       
 25734           break;
       
 25735 
       
 25736         case 'info':
       
 25737           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm1 4c0-.55-.45-1-1-1s-1 .45-1 1 .45 1 1 1 1-.45 1-1zm0 9V9H9v6h2z';
       
 25738           break;
       
 25739 
       
 25740         case 'insert-after':
       
 25741           path = 'M9 12h2v-2h2V8h-2V6H9v2H7v2h2v2zm1 4c3.9 0 7-3.1 7-7s-3.1-7-7-7-7 3.1-7 7 3.1 7 7 7zm0-12c2.8 0 5 2.2 5 5s-2.2 5-5 5-5-2.2-5-5 2.2-5 5-5zM3 19h14v-2H3v2z';
       
 25742           break;
       
 25743 
       
 25744         case 'insert-before':
       
 25745           path = 'M11 8H9v2H7v2h2v2h2v-2h2v-2h-2V8zm-1-4c-3.9 0-7 3.1-7 7s3.1 7 7 7 7-3.1 7-7-3.1-7-7-7zm0 12c-2.8 0-5-2.2-5-5s2.2-5 5-5 5 2.2 5 5-2.2 5-5 5zM3 1v2h14V1H3z';
       
 25746           break;
       
 25747 
       
 25748         case 'insert':
       
 25749           path = 'M10 1c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7zm1-11H9v3H6v2h3v3h2v-3h3V9h-3V6z';
       
 25750           break;
       
 25751 
       
 25752         case 'instagram':
       
 25753           path = 'M12.67 10A2.67 2.67 0 1 0 10 12.67 2.68 2.68 0 0 0 12.67 10zm1.43 0A4.1 4.1 0 1 1 10 5.9a4.09 4.09 0 0 1 4.1 4.1zm1.13-4.27a1 1 0 1 1-1-1 1 1 0 0 1 1 1zM10 3.44c-1.17 0-3.67-.1-4.72.32a2.67 2.67 0 0 0-1.52 1.52c-.42 1-.32 3.55-.32 4.72s-.1 3.67.32 4.72a2.74 2.74 0 0 0 1.52 1.52c1 .42 3.55.32 4.72.32s3.67.1 4.72-.32a2.83 2.83 0 0 0 1.52-1.52c.42-1.05.32-3.55.32-4.72s.1-3.67-.32-4.72a2.74 2.74 0 0 0-1.52-1.52c-1.05-.42-3.55-.32-4.72-.32zM18 10c0 1.1 0 2.2-.05 3.3a4.84 4.84 0 0 1-1.29 3.36A4.8 4.8 0 0 1 13.3 18H6.7a4.84 4.84 0 0 1-3.36-1.29 4.84 4.84 0 0 1-1.29-3.41C2 12.2 2 11.1 2 10V6.7a4.84 4.84 0 0 1 1.34-3.36A4.8 4.8 0 0 1 6.7 2.05C7.8 2 8.9 2 10 2h3.3a4.84 4.84 0 0 1 3.36 1.29A4.8 4.8 0 0 1 18 6.7V10z';
       
 25754           break;
       
 25755 
       
 25756         case 'keyboard-hide':
       
 25757           path = 'M18,0 L2,0 C0.9,0 0.01,0.9 0.01,2 L0,12 C0,13.1 0.9,14 2,14 L18,14 C19.1,14 20,13.1 20,12 L20,2 C20,0.9 19.1,0 18,0 Z M18,12 L2,12 L2,2 L18,2 L18,12 Z M9,3 L11,3 L11,5 L9,5 L9,3 Z M9,6 L11,6 L11,8 L9,8 L9,6 Z M6,3 L8,3 L8,5 L6,5 L6,3 Z M6,6 L8,6 L8,8 L6,8 L6,6 Z M3,6 L5,6 L5,8 L3,8 L3,6 Z M3,3 L5,3 L5,5 L3,5 L3,3 Z M6,9 L14,9 L14,11 L6,11 L6,9 Z M12,6 L14,6 L14,8 L12,8 L12,6 Z M12,3 L14,3 L14,5 L12,5 L12,3 Z M15,6 L17,6 L17,8 L15,8 L15,6 Z M15,3 L17,3 L17,5 L15,5 L15,3 Z M10,20 L14,16 L6,16 L10,20 Z';
       
 25758           break;
       
 25759 
       
 25760         case 'laptop':
       
 25761           path = 'M3 3h14c.6 0 1 .4 1 1v10c0 .6-.4 1-1 1H3c-.6 0-1-.4-1-1V4c0-.6.4-1 1-1zm13 2H4v8h12V5zm-3 1H5v4zm6 11v-1H1v1c0 .6.5 1 1.1 1h15.8c.6 0 1.1-.4 1.1-1z';
       
 25762           break;
       
 25763 
       
 25764         case 'layout':
       
 25765           path = 'M2 2h5v11H2V2zm6 0h5v5H8V2zm6 0h4v16h-4V2zM8 8h5v5H8V8zm-6 6h11v4H2v-4z';
       
 25766           break;
       
 25767 
       
 25768         case 'leftright':
       
 25769           path = 'M3 10.03L9 6v8zM11 6l6 4.03L11 14V6z';
       
 25770           break;
       
 25771 
       
 25772         case 'lightbulb':
       
 25773           path = 'M10 1c3.11 0 5.63 2.52 5.63 5.62 0 1.84-2.03 4.58-2.03 4.58-.33.44-.6 1.25-.6 1.8v1c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1v-1c0-.55-.27-1.36-.6-1.8 0 0-2.02-2.74-2.02-4.58C4.38 3.52 6.89 1 10 1zM7 16.87V16h6v.87c0 .62-.13 1.13-.75 1.13H12c0 .62-.4 1-1.02 1h-2c-.61 0-.98-.38-.98-1h-.25c-.62 0-.75-.51-.75-1.13z';
       
 25774           break;
       
 25775 
       
 25776         case 'list-view':
       
 25777           path = 'M2 19h16c.55 0 1-.45 1-1V2c0-.55-.45-1-1-1H2c-.55 0-1 .45-1 1v16c0 .55.45 1 1 1zM4 3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6V3h11zM4 7c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6V7h11zM4 11c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6v-2h11zM4 15c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm13 0v2H6v-2h11z';
       
 25778           break;
       
 25779 
       
 25780         case 'location-alt':
       
 25781           path = 'M13 13.14l1.17-5.94c.79-.43 1.33-1.25 1.33-2.2 0-1.38-1.12-2.5-2.5-2.5S10.5 3.62 10.5 5c0 .95.54 1.77 1.33 2.2zm0-9.64c.83 0 1.5.67 1.5 1.5s-.67 1.5-1.5 1.5-1.5-.67-1.5-1.5.67-1.5 1.5-1.5zm1.72 4.8L18 6.97v9L13.12 18 7 15.97l-5 2v-9l5-2 4.27 1.41 1.73 7.3z';
       
 25782           break;
       
 25783 
       
 25784         case 'location':
       
 25785           path = 'M10 2C6.69 2 4 4.69 4 8c0 2.02 1.17 3.71 2.53 4.89.43.37 1.18.96 1.85 1.83.74.97 1.41 2.01 1.62 2.71.21-.7.88-1.74 1.62-2.71.67-.87 1.42-1.46 1.85-1.83C14.83 11.71 16 10.02 16 8c0-3.31-2.69-6-6-6zm0 2.56c1.9 0 3.44 1.54 3.44 3.44S11.9 11.44 10 11.44 6.56 9.9 6.56 8 8.1 4.56 10 4.56z';
       
 25786           break;
       
 25787 
       
 25788         case 'lock':
       
 25789           path = 'M14 9h1c.55 0 1 .45 1 1v7c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1v-7c0-.55.45-1 1-1h1V6c0-2.21 1.79-4 4-4s4 1.79 4 4v3zm-2 0V6c0-1.1-.9-2-2-2s-2 .9-2 2v3h4zm-1 7l-.36-2.15c.51-.24.86-.75.86-1.35 0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5c0 .6.35 1.11.86 1.35L9 16h2z';
       
 25790           break;
       
 25791 
       
 25792         case 'marker':
       
 25793           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm0 13c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5z';
       
 25794           break;
       
 25795 
       
 25796         case 'media-archive':
       
 25797           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zM8 3.5v2l1.8-1zM11 5L9.2 6 11 7V5zM8 6.5v2l1.8-1zM11 8L9.2 9l1.8 1V8zM8 9.5v2l1.8-1zm3 1.5l-1.8 1 1.8 1v-2zm-1.5 6c.83 0 1.62-.72 1.5-1.63-.05-.38-.49-1.61-.49-1.61l-1.99-1.1s-.45 1.95-.52 2.71c-.07.77.67 1.63 1.5 1.63zm0-2.39c.42 0 .76.34.76.76 0 .43-.34.77-.76.77s-.76-.34-.76-.77c0-.42.34-.76.76-.76z';
       
 25798           break;
       
 25799 
       
 25800         case 'media-audio':
       
 25801           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zm1 7.26V8.09c0-.11-.04-.21-.12-.29-.07-.08-.16-.11-.27-.1 0 0-3.97.71-4.25.78C8.07 8.54 8 8.8 8 9v3.37c-.2-.09-.42-.07-.6-.07-.38 0-.7.13-.96.39-.26.27-.4.58-.4.96 0 .37.14.69.4.95.26.27.58.4.96.4.34 0 .7-.04.96-.26.26-.23.64-.65.64-1.12V10.3l3-.6V12c-.67-.2-1.17.04-1.44.31-.26.26-.39.58-.39.95 0 .38.13.69.39.96.27.26.71.39 1.08.39.38 0 .7-.13.96-.39.26-.27.4-.58.4-.96z';
       
 25802           break;
       
 25803 
       
 25804         case 'media-code':
       
 25805           path = 'M12 2l4 4v12H4V2h8zM9 13l-2-2 2-2-1-1-3 3 3 3zm3 1l3-3-3-3-1 1 2 2-2 2z';
       
 25806           break;
       
 25807 
       
 25808         case 'media-default':
       
 25809           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3z';
       
 25810           break;
       
 25811 
       
 25812         case 'media-document':
       
 25813           path = 'M12 2l4 4v12H4V2h8zM5 3v1h6V3H5zm7 3h3l-3-3v3zM5 5v1h6V5H5zm10 3V7H5v1h10zM5 9v1h4V9H5zm10 3V9h-5v3h5zM5 11v1h4v-1H5zm10 3v-1H5v1h10zm-3 2v-1H5v1h7z';
       
 25814           break;
       
 25815 
       
 25816         case 'media-interactive':
       
 25817           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zm2 8V8H6v6h3l-1 2h1l1-2 1 2h1l-1-2h3zm-6-3c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1zm5-2v2h-3V9h3zm0 3v1H7v-1h6z';
       
 25818           break;
       
 25819 
       
 25820         case 'media-spreadsheet':
       
 25821           path = 'M12 2l4 4v12H4V2h8zm-1 4V3H5v3h6zM8 8V7H5v1h3zm3 0V7H9v1h2zm4 0V7h-3v1h3zm-7 2V9H5v1h3zm3 0V9H9v1h2zm4 0V9h-3v1h3zm-7 2v-1H5v1h3zm3 0v-1H9v1h2zm4 0v-1h-3v1h3zm-7 2v-1H5v1h3zm3 0v-1H9v1h2zm4 0v-1h-3v1h3zm-7 2v-1H5v1h3zm3 0v-1H9v1h2z';
       
 25822           break;
       
 25823 
       
 25824         case 'media-text':
       
 25825           path = 'M12 2l4 4v12H4V2h8zM5 3v1h6V3H5zm7 3h3l-3-3v3zM5 5v1h6V5H5zm10 3V7H5v1h10zm0 2V9H5v1h10zm0 2v-1H5v1h10zm-4 2v-1H5v1h6z';
       
 25826           break;
       
 25827 
       
 25828         case 'media-video':
       
 25829           path = 'M12 2l4 4v12H4V2h8zm0 4h3l-3-3v3zm-1 8v-3c0-.27-.1-.51-.29-.71-.2-.19-.44-.29-.71-.29H7c-.27 0-.51.1-.71.29-.19.2-.29.44-.29.71v3c0 .27.1.51.29.71.2.19.44.29.71.29h3c.27 0 .51-.1.71-.29.19-.2.29-.44.29-.71zm3 1v-5l-2 2v1z';
       
 25830           break;
       
 25831 
       
 25832         case 'megaphone':
       
 25833           path = 'M18.15 5.94c.46 1.62.38 3.22-.02 4.48-.42 1.28-1.26 2.18-2.3 2.48-.16.06-.26.06-.4.06-.06.02-.12.02-.18.02-.06.02-.14.02-.22.02h-6.8l2.22 5.5c.02.14-.06.26-.14.34-.08.1-.24.16-.34.16H6.95c-.1 0-.26-.06-.34-.16-.08-.08-.16-.2-.14-.34l-1-5.5H4.25l-.02-.02c-.5.06-1.08-.18-1.54-.62s-.88-1.08-1.06-1.88c-.24-.8-.2-1.56-.02-2.2.18-.62.58-1.08 1.06-1.3l.02-.02 9-5.4c.1-.06.18-.1.24-.16.06-.04.14-.08.24-.12.16-.08.28-.12.5-.18 1.04-.3 2.24.1 3.22.98s1.84 2.24 2.26 3.86zm-2.58 5.98h-.02c.4-.1.74-.34 1.04-.7.58-.7.86-1.76.86-3.04 0-.64-.1-1.3-.28-1.98-.34-1.36-1.02-2.5-1.78-3.24s-1.68-1.1-2.46-.88c-.82.22-1.4.96-1.7 2-.32 1.04-.28 2.36.06 3.72.38 1.36 1 2.5 1.8 3.24.78.74 1.62 1.1 2.48.88zm-2.54-7.08c.22-.04.42-.02.62.04.38.16.76.48 1.02 1s.42 1.2.42 1.78c0 .3-.04.56-.12.8-.18.48-.44.84-.86.94-.34.1-.8-.06-1.14-.4s-.64-.86-.78-1.5c-.18-.62-.12-1.24.02-1.72s.48-.84.82-.94z';
       
 25834           break;
       
 25835 
       
 25836         case 'menu-alt':
       
 25837           path = 'M3 4h14v2H3V4zm0 5h14v2H3V9zm0 5h14v2H3v-2z';
       
 25838           break;
       
 25839 
       
 25840         case 'menu':
       
 25841           path = 'M17 7V5H3v2h14zm0 4V9H3v2h14zm0 4v-2H3v2h14z';
       
 25842           break;
       
 25843 
       
 25844         case 'microphone':
       
 25845           path = 'M12 9V3c0-1.1-.89-2-2-2-1.12 0-2 .94-2 2v6c0 1.1.9 2 2 2 1.13 0 2-.94 2-2zm4 0c0 2.97-2.16 5.43-5 5.91V17h2c.56 0 1 .45 1 1s-.44 1-1 1H7c-.55 0-1-.45-1-1s.45-1 1-1h2v-2.09C6.17 14.43 4 11.97 4 9c0-.55.45-1 1-1 .56 0 1 .45 1 1 0 2.21 1.8 4 4 4 2.21 0 4-1.79 4-4 0-.55.45-1 1-1 .56 0 1 .45 1 1z';
       
 25846           break;
       
 25847 
       
 25848         case 'migrate':
       
 25849           path = 'M4 6h6V4H2v12.01h8V14H4V6zm2 2h6V5l6 5-6 5v-3H6V8z';
       
 25850           break;
       
 25851 
       
 25852         case 'minus':
       
 25853           path = 'M4 9h12v2H4V9z';
       
 25854           break;
       
 25855 
       
 25856         case 'money':
       
 25857           path = 'M0 3h20v12h-.75c0-1.79-1.46-3.25-3.25-3.25-1.31 0-2.42.79-2.94 1.91-.25-.1-.52-.16-.81-.16-.98 0-1.8.63-2.11 1.5H0V3zm8.37 3.11c-.06.15-.1.31-.11.47s-.01.33.01.5l.02.08c.01.06.02.14.05.23.02.1.06.2.1.31.03.11.09.22.15.33.07.12.15.22.23.31s.18.17.31.23c.12.06.25.09.4.09.14 0 .27-.03.39-.09s.22-.14.3-.22c.09-.09.16-.2.22-.32.07-.12.12-.23.16-.33s.07-.2.09-.31c.03-.11.04-.18.05-.22s.01-.07.01-.09c.05-.29.03-.56-.04-.82s-.21-.48-.41-.66c-.21-.18-.47-.27-.79-.27-.19 0-.36.03-.52.1-.15.07-.28.16-.38.28-.09.11-.17.25-.24.4zm4.48 6.04v-1.14c0-.33-.1-.66-.29-.98s-.45-.59-.77-.79c-.32-.21-.66-.31-1.02-.31l-1.24.84-1.28-.82c-.37 0-.72.1-1.04.3-.31.2-.56.46-.74.77-.18.32-.27.65-.27.99v1.14l.18.05c.12.04.29.08.51.14.23.05.47.1.74.15.26.05.57.09.91.13.34.03.67.05.99.05.3 0 .63-.02.98-.05.34-.04.64-.08.89-.13.25-.04.5-.1.76-.16l.5-.12c.08-.02.14-.04.19-.06zm3.15.1c1.52 0 2.75 1.23 2.75 2.75s-1.23 2.75-2.75 2.75c-.73 0-1.38-.3-1.87-.77.23-.35.37-.78.37-1.23 0-.77-.39-1.46-.99-1.86.43-.96 1.37-1.64 2.49-1.64zm-5.5 3.5c0-.96.79-1.75 1.75-1.75s1.75.79 1.75 1.75-.79 1.75-1.75 1.75-1.75-.79-1.75-1.75z';
       
 25858           break;
       
 25859 
       
 25860         case 'move':
       
 25861           path = 'M19 10l-4 4v-3h-4v4h3l-4 4-4-4h3v-4H5v3l-4-4 4-4v3h4V5H6l4-4 4 4h-3v4h4V6z';
       
 25862           break;
       
 25863 
       
 25864         case 'nametag':
       
 25865           path = 'M12 5V2c0-.55-.45-1-1-1H9c-.55 0-1 .45-1 1v3c0 .55.45 1 1 1h2c.55 0 1-.45 1-1zm-2-3c.55 0 1 .45 1 1s-.45 1-1 1-1-.45-1-1 .45-1 1-1zm8 13V7c0-1.1-.9-2-2-2h-3v.33C13 6.25 12.25 7 11.33 7H8.67C7.75 7 7 6.25 7 5.33V5H4c-1.1 0-2 .9-2 2v8c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2zm-1-6v6H3V9h14zm-8 2c0-.55-.22-1-.5-1s-.5.45-.5 1 .22 1 .5 1 .5-.45.5-1zm3 0c0-.55-.22-1-.5-1s-.5.45-.5 1 .22 1 .5 1 .5-.45.5-1zm-5.96 1.21c.92.48 2.34.79 3.96.79s3.04-.31 3.96-.79c-.21 1-1.89 1.79-3.96 1.79s-3.75-.79-3.96-1.79z';
       
 25866           break;
       
 25867 
       
 25868         case 'networking':
       
 25869           path = 'M18 13h1c.55 0 1 .45 1 1.01v2.98c0 .56-.45 1.01-1 1.01h-4c-.55 0-1-.45-1-1.01v-2.98c0-.56.45-1.01 1-1.01h1v-2h-5v2h1c.55 0 1 .45 1 1.01v2.98c0 .56-.45 1.01-1 1.01H8c-.55 0-1-.45-1-1.01v-2.98c0-.56.45-1.01 1-1.01h1v-2H4v2h1c.55 0 1 .45 1 1.01v2.98C6 17.55 5.55 18 5 18H1c-.55 0-1-.45-1-1.01v-2.98C0 13.45.45 13 1 13h1v-2c0-1.1.9-2 2-2h5V7H8c-.55 0-1-.45-1-1.01V3.01C7 2.45 7.45 2 8 2h4c.55 0 1 .45 1 1.01v2.98C13 6.55 12.55 7 12 7h-1v2h5c1.1 0 2 .9 2 2v2z';
       
 25870           break;
       
 25871 
       
 25872         case 'no-alt':
       
 25873           path = 'M14.95 6.46L11.41 10l3.54 3.54-1.41 1.41L10 11.42l-3.53 3.53-1.42-1.42L8.58 10 5.05 6.47l1.42-1.42L10 8.58l3.54-3.53z';
       
 25874           break;
       
 25875 
       
 25876         case 'no':
       
 25877           path = 'M12.12 10l3.53 3.53-2.12 2.12L10 12.12l-3.54 3.54-2.12-2.12L7.88 10 4.34 6.46l2.12-2.12L10 7.88l3.54-3.53 2.12 2.12z';
       
 25878           break;
       
 25879 
       
 25880         case 'palmtree':
       
 25881           path = 'M8.58 2.39c.32 0 .59.05.81.14 1.25.55 1.69 2.24 1.7 3.97.59-.82 2.15-2.29 3.41-2.29s2.94.73 3.53 3.55c-1.13-.65-2.42-.94-3.65-.94-1.26 0-2.45.32-3.29.89.4-.11.86-.16 1.33-.16 1.39 0 2.9.45 3.4 1.31.68 1.16.47 3.38-.76 4.14-.14-2.1-1.69-4.12-3.47-4.12-.44 0-.88.12-1.33.38C8 10.62 7 14.56 7 19H2c0-5.53 4.21-9.65 7.68-10.79-.56-.09-1.17-.15-1.82-.15C6.1 8.06 4.05 8.5 2 10c.76-2.96 2.78-4.1 4.69-4.1 1.25 0 2.45.5 3.2 1.29-.66-2.24-2.49-2.86-4.08-2.86-.8 0-1.55.16-2.05.35.91-1.29 3.31-2.29 4.82-2.29zM13 11.5c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5.67 1.5 1.5 1.5 1.5-.67 1.5-1.5z';
       
 25882           break;
       
 25883 
       
 25884         case 'paperclip':
       
 25885           path = 'M17.05 2.7c1.93 1.94 1.93 5.13 0 7.07L10 16.84c-1.88 1.89-4.91 1.93-6.86.15-.06-.05-.13-.09-.19-.15-1.93-1.94-1.93-5.12 0-7.07l4.94-4.95c.91-.92 2.28-1.1 3.39-.58.3.15.59.33.83.58 1.17 1.17 1.17 3.07 0 4.24l-4.93 4.95c-.39.39-1.02.39-1.41 0s-.39-1.02 0-1.41l4.93-4.95c.39-.39.39-1.02 0-1.41-.38-.39-1.02-.39-1.4 0l-4.94 4.95c-.91.92-1.1 2.29-.57 3.4.14.3.32.59.57.84s.54.43.84.57c1.11.53 2.47.35 3.39-.57l7.05-7.07c1.16-1.17 1.16-3.08 0-4.25-.56-.55-1.28-.83-2-.86-.08.01-.16.01-.24 0-.22-.03-.43-.11-.6-.27-.39-.4-.38-1.05.02-1.45.16-.16.36-.24.56-.28.14-.02.27-.01.4.02 1.19.06 2.36.52 3.27 1.43z';
       
 25886           break;
       
 25887 
       
 25888         case 'performance':
       
 25889           path = 'M3.76 17.01h12.48C17.34 15.63 18 13.9 18 12c0-4.41-3.58-8-8-8s-8 3.59-8 8c0 1.9.66 3.63 1.76 5.01zM9 6c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zM4 8c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zm4.52 3.4c.84-.83 6.51-3.5 6.51-3.5s-2.66 5.68-3.49 6.51c-.84.84-2.18.84-3.02 0-.83-.83-.83-2.18 0-3.01zM3 13c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zm6 0c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1zm6 0c0-.55.45-1 1-1s1 .45 1 1c0 .56-.45 1-1 1s-1-.44-1-1z';
       
 25890           break;
       
 25891 
       
 25892         case 'phone':
       
 25893           path = 'M12.06 6l-.21-.2c-.52-.54-.43-.79.08-1.3l2.72-2.75c.81-.82.96-1.21 1.73-.48l.21.2zm.53.45l4.4-4.4c.7.94 2.34 3.47 1.53 5.34-.73 1.67-1.09 1.75-2 3-1.85 2.11-4.18 4.37-6 6.07-1.26.91-1.31 1.33-3 2-1.8.71-4.4-.89-5.38-1.56l4.4-4.4 1.18 1.62c.34.46 1.2-.06 1.8-.66 1.04-1.05 3.18-3.18 4-4.07.59-.59 1.12-1.45.66-1.8zM1.57 16.5l-.21-.21c-.68-.74-.29-.9.52-1.7l2.74-2.72c.51-.49.75-.6 1.27-.11l.2.21z';
       
 25894           break;
       
 25895 
       
 25896         case 'playlist-audio':
       
 25897           path = 'M17 3V1H2v2h15zm0 4V5H2v2h15zm-7 4V9H2v2h8zm7.45-1.96l-6 1.12c-.16.02-.19.03-.29.13-.11.09-.16.22-.16.37v4.59c-.29-.13-.66-.14-.93-.14-.54 0-1 .19-1.38.57s-.56.84-.56 1.38c0 .53.18.99.56 1.37s.84.57 1.38.57c.49 0 .92-.16 1.29-.48s.59-.71.65-1.19v-4.95L17 11.27v3.48c-.29-.13-.56-.19-.83-.19-.54 0-1.11.19-1.49.57-.38.37-.57.83-.57 1.37s.19.99.57 1.37.84.57 1.38.57c.53 0 .99-.19 1.37-.57s.57-.83.57-1.37V9.6c0-.16-.05-.3-.16-.41-.11-.12-.24-.17-.39-.15zM8 15v-2H2v2h6zm-2 4v-2H2v2h4z';
       
 25898           break;
       
 25899 
       
 25900         case 'playlist-video':
       
 25901           path = 'M17 3V1H2v2h15zm0 4V5H2v2h15zM6 11V9H2v2h4zm2-2h9c.55 0 1 .45 1 1v8c0 .55-.45 1-1 1H8c-.55 0-1-.45-1-1v-8c0-.55.45-1 1-1zm3 7l3.33-2L11 12v4zm-5-1v-2H2v2h4zm0 4v-2H2v2h4z';
       
 25902           break;
       
 25903 
       
 25904         case 'plus-alt':
       
 25905           path = 'M15.8 4.2c3.2 3.21 3.2 8.39 0 11.6-3.21 3.2-8.39 3.2-11.6 0C1 12.59 1 7.41 4.2 4.2 7.41 1 12.59 1 15.8 4.2zm-4.3 11.3v-4h4v-3h-4v-4h-3v4h-4v3h4v4h3z';
       
 25906           break;
       
 25907 
       
 25908         case 'plus-light':
       
 25909           path = 'M17 9v2h-6v6H9v-6H3V9h6V3h2v6h6z';
       
 25910           break;
       
 25911 
       
 25912         case 'plus':
       
 25913           path = 'M17 7v3h-5v5H9v-5H4V7h5V2h3v5h5z';
       
 25914           break;
       
 25915 
       
 25916         case 'portfolio':
       
 25917           path = 'M4 5H.78c-.37 0-.74.32-.69.84l1.56 9.99S3.5 8.47 3.86 6.7c.11-.53.61-.7.98-.7H10s-.7-2.08-.77-2.31C9.11 3.25 8.89 3 8.45 3H5.14c-.36 0-.7.23-.8.64C4.25 4.04 4 5 4 5zm4.88 0h-4s.42-1 .87-1h2.13c.48 0 1 1 1 1zM2.67 16.25c-.31.47-.76.75-1.26.75h15.73c.54 0 .92-.31 1.03-.83.44-2.19 1.68-8.44 1.68-8.44.07-.5-.3-.73-.62-.73H16V5.53c0-.16-.26-.53-.66-.53h-3.76c-.52 0-.87.58-.87.58L10 7H5.59c-.32 0-.63.19-.69.5 0 0-1.59 6.7-1.72 7.33-.07.37-.22.99-.51 1.42zM15.38 7H11s.58-1 1.13-1h2.29c.71 0 .96 1 .96 1z';
       
 25918           break;
       
 25919 
       
 25920         case 'post-status':
       
 25921           path = 'M14 6c0 1.86-1.28 3.41-3 3.86V16c0 1-2 2-2 2V9.86c-1.72-.45-3-2-3-3.86 0-2.21 1.79-4 4-4s4 1.79 4 4zM8 5c0 .55.45 1 1 1s1-.45 1-1-.45-1-1-1-1 .45-1 1z';
       
 25922           break;
       
 25923 
       
 25924         case 'pressthis':
       
 25925           path = 'M14.76 1C16.55 1 18 2.46 18 4.25c0 1.78-1.45 3.24-3.24 3.24-.23 0-.47-.03-.7-.08L13 8.47V19H2V4h9.54c.13-2 1.52-3 3.22-3zm0 5.49C16 6.49 17 5.48 17 4.25 17 3.01 16 2 14.76 2s-2.24 1.01-2.24 2.25c0 .37.1.72.27 1.03L9.57 8.5c-.28.28-1.77 2.22-1.5 2.49.02.03.06.04.1.04.49 0 2.14-1.28 2.39-1.53l3.24-3.24c.29.14.61.23.96.23z';
       
 25926           break;
       
 25927 
       
 25928         case 'products':
       
 25929           path = 'M17 8h1v11H2V8h1V6c0-2.76 2.24-5 5-5 .71 0 1.39.15 2 .42.61-.27 1.29-.42 2-.42 2.76 0 5 2.24 5 5v2zM5 6v2h2V6c0-1.13.39-2.16 1.02-3H8C6.35 3 5 4.35 5 6zm10 2V6c0-1.65-1.35-3-3-3h-.02c.63.84 1.02 1.87 1.02 3v2h2zm-5-4.22C9.39 4.33 9 5.12 9 6v2h2V6c0-.88-.39-1.67-1-2.22z';
       
 25930           break;
       
 25931 
       
 25932         case 'randomize':
       
 25933           path = 'M18 6.01L14 9V7h-4l-5 8H2v-2h2l5-8h5V3zM2 5h3l1.15 2.17-1.12 1.8L4 7H2V5zm16 9.01L14 17v-2H9l-1.15-2.17 1.12-1.8L10 13h4v-2z';
       
 25934           break;
       
 25935 
       
 25936         case 'redo':
       
 25937           path = 'M8 5h5V2l6 4-6 4V7H8c-2.2 0-4 1.8-4 4s1.8 4 4 4h5v2H8c-3.3 0-6-2.7-6-6s2.7-6 6-6z';
       
 25938           break;
       
 25939 
       
 25940         case 'rest-api':
       
 25941           path = 'M3 4h2v12H3z';
       
 25942           break;
       
 25943 
       
 25944         case 'rss':
       
 25945           path = 'M14.92 18H18C18 9.32 10.82 2.25 2 2.25v3.02c7.12 0 12.92 5.71 12.92 12.73zm-5.44 0h3.08C12.56 12.27 7.82 7.6 2 7.6v3.02c2 0 3.87.77 5.29 2.16C8.7 14.17 9.48 16.03 9.48 18zm-5.35-.02c1.17 0 2.13-.93 2.13-2.09 0-1.15-.96-2.09-2.13-2.09-1.18 0-2.13.94-2.13 2.09 0 1.16.95 2.09 2.13 2.09z';
       
 25946           break;
       
 25947 
       
 25948         case 'saved':
       
 25949           path = 'M15.3 5.3l-6.8 6.8-2.8-2.8-1.4 1.4 4.2 4.2 8.2-8.2';
       
 25950           break;
       
 25951 
       
 25952         case 'schedule':
       
 25953           path = 'M2 2h16v4H2V2zm0 10V8h4v4H2zm6-2V8h4v2H8zm6 3V8h4v5h-4zm-6 5v-6h4v6H8zm-6 0v-4h4v4H2zm12 0v-3h4v3h-4z';
       
 25954           break;
       
 25955 
       
 25956         case 'screenoptions':
       
 25957           path = 'M9 9V3H3v6h6zm8 0V3h-6v6h6zm-8 8v-6H3v6h6zm8 0v-6h-6v6h6z';
       
 25958           break;
       
 25959 
       
 25960         case 'search':
       
 25961           path = 'M12.14 4.18c1.87 1.87 2.11 4.75.72 6.89.12.1.22.21.36.31.2.16.47.36.81.59.34.24.56.39.66.47.42.31.73.57.94.78.32.32.6.65.84 1 .25.35.44.69.59 1.04.14.35.21.68.18 1-.02.32-.14.59-.36.81s-.49.34-.81.36c-.31.02-.65-.04-.99-.19-.35-.14-.7-.34-1.04-.59-.35-.24-.68-.52-1-.84-.21-.21-.47-.52-.77-.93-.1-.13-.25-.35-.47-.66-.22-.32-.4-.57-.56-.78-.16-.2-.29-.35-.44-.5-2.07 1.09-4.69.76-6.44-.98-2.14-2.15-2.14-5.64 0-7.78 2.15-2.15 5.63-2.15 7.78 0zm-1.41 6.36c1.36-1.37 1.36-3.58 0-4.95-1.37-1.37-3.59-1.37-4.95 0-1.37 1.37-1.37 3.58 0 4.95 1.36 1.37 3.58 1.37 4.95 0z';
       
 25962           break;
       
 25963 
       
 25964         case 'share-alt':
       
 25965           path = 'M16.22 5.8c.47.69.29 1.62-.4 2.08-.69.47-1.62.29-2.08-.4-.16-.24-.35-.46-.55-.67-.21-.2-.43-.39-.67-.55s-.5-.3-.77-.41c-.27-.12-.55-.21-.84-.26-.59-.13-1.23-.13-1.82-.01-.29.06-.57.15-.84.27-.27.11-.53.25-.77.41s-.46.35-.66.55c-.21.21-.4.43-.56.67s-.3.5-.41.76c-.01.02-.01.03-.01.04-.1.24-.17.48-.23.72H1V6h2.66c.04-.07.07-.13.12-.2.27-.4.57-.77.91-1.11s.72-.65 1.11-.91c.4-.27.83-.51 1.28-.7s.93-.34 1.41-.43c.99-.21 2.03-.21 3.02 0 .48.09.96.24 1.41.43s.88.43 1.28.7c.39.26.77.57 1.11.91s.64.71.91 1.11zM12.5 10c0-1.38-1.12-2.5-2.5-2.5S7.5 8.62 7.5 10s1.12 2.5 2.5 2.5 2.5-1.12 2.5-2.5zm-8.72 4.2c-.47-.69-.29-1.62.4-2.09.69-.46 1.62-.28 2.08.41.16.24.35.46.55.67.21.2.43.39.67.55s.5.3.77.41c.27.12.55.2.84.26.59.13 1.23.12 1.82 0 .29-.06.57-.14.84-.26.27-.11.53-.25.77-.41s.46-.35.66-.55c.21-.21.4-.44.56-.67.16-.25.3-.5.41-.76.01-.02.01-.03.01-.04.1-.24.17-.48.23-.72H19v3h-2.66c-.04.06-.07.13-.12.2-.27.4-.57.77-.91 1.11s-.72.65-1.11.91c-.4.27-.83.51-1.28.7s-.93.33-1.41.43c-.99.21-2.03.21-3.02 0-.48-.1-.96-.24-1.41-.43s-.88-.43-1.28-.7c-.39-.26-.77-.57-1.11-.91s-.64-.71-.91-1.11z';
       
 25966           break;
       
 25967 
       
 25968         case 'share-alt2':
       
 25969           path = 'M18 8l-5 4V9.01c-2.58.06-4.88.45-7 2.99.29-3.57 2.66-5.66 7-5.94V3zM4 14h11v-2l2-1.6V16H2V5h9.43c-1.83.32-3.31 1-4.41 2H4v7z';
       
 25970           break;
       
 25971 
       
 25972         case 'share':
       
 25973           path = 'M14.5 12c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3c0-.24.03-.46.09-.69l-4.38-2.3c-.55.61-1.33.99-2.21.99-1.66 0-3-1.34-3-3s1.34-3 3-3c.88 0 1.66.39 2.21.99l4.38-2.3c-.06-.23-.09-.45-.09-.69 0-1.66 1.34-3 3-3s3 1.34 3 3-1.34 3-3 3c-.88 0-1.66-.39-2.21-.99l-4.38 2.3c.06.23.09.45.09.69s-.03.46-.09.69l4.38 2.3c.55-.61 1.33-.99 2.21-.99z';
       
 25974           break;
       
 25975 
       
 25976         case 'shield-alt':
       
 25977           path = 'M10 2s3 2 7 2c0 11-7 14-7 14S3 15 3 4c4 0 7-2 7-2z';
       
 25978           break;
       
 25979 
       
 25980         case 'shield':
       
 25981           path = 'M10 2s3 2 7 2c0 11-7 14-7 14S3 15 3 4c4 0 7-2 7-2zm0 8h5s1-1 1-5c0 0-5-1-6-2v7H5c1 4 5 7 5 7v-7z';
       
 25982           break;
       
 25983 
       
 25984         case 'shortcode':
       
 25985           path = 'M6 14H4V6h2V4H2v12h4M7.1 17h2.1l3.7-14h-2.1M14 4v2h2v8h-2v2h4V4';
       
 25986           break;
       
 25987 
       
 25988         case 'slides':
       
 25989           path = 'M5 14V6h10v8H5zm-3-1V7h2v6H2zm4-6v6h8V7H6zm10 0h2v6h-2V7zm-3 2V8H7v1h6zm0 3v-2H7v2h6z';
       
 25990           break;
       
 25991 
       
 25992         case 'smartphone':
       
 25993           path = 'M6 2h8c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H6c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm7 12V4H7v10h6zM8 5h4l-4 5V5z';
       
 25994           break;
       
 25995 
       
 25996         case 'smiley':
       
 25997           path = 'M7 5.2c1.1 0 2 .89 2 2 0 .37-.11.71-.28 1C8.72 8.2 8 8 7 8s-1.72.2-1.72.2c-.17-.29-.28-.63-.28-1 0-1.11.9-2 2-2zm6 0c1.11 0 2 .89 2 2 0 .37-.11.71-.28 1 0 0-.72-.2-1.72-.2s-1.72.2-1.72.2c-.17-.29-.28-.63-.28-1 0-1.11.89-2 2-2zm-3 13.7c3.72 0 7.03-2.36 8.23-5.88l-1.32-.46C15.9 15.52 13.12 17.5 10 17.5s-5.9-1.98-6.91-4.94l-1.32.46c1.2 3.52 4.51 5.88 8.23 5.88z';
       
 25998           break;
       
 25999 
       
 26000         case 'sort':
       
 26001           path = 'M11 7H1l5 7zm-2 7h10l-5-7z';
       
 26002           break;
       
 26003 
       
 26004         case 'sos':
       
 26005           path = 'M18 10c0-4.42-3.58-8-8-8s-8 3.58-8 8 3.58 8 8 8 8-3.58 8-8zM7.23 3.57L8.72 7.3c-.62.29-1.13.8-1.42 1.42L3.57 7.23c.71-1.64 2.02-2.95 3.66-3.66zm9.2 3.66L12.7 8.72c-.29-.62-.8-1.13-1.42-1.42l1.49-3.73c1.64.71 2.95 2.02 3.66 3.66zM10 12c-1.1 0-2-.9-2-2s.9-2 2-2 2 .9 2 2-.9 2-2 2zm-6.43.77l3.73-1.49c.29.62.8 1.13 1.42 1.42l-1.49 3.73c-1.64-.71-2.95-2.02-3.66-3.66zm9.2 3.66l-1.49-3.73c.62-.29 1.13-.8 1.42-1.42l3.73 1.49c-.71 1.64-2.02 2.95-3.66 3.66z';
       
 26006           break;
       
 26007 
       
 26008         case 'star-empty':
       
 26009           path = 'M10 1L7 7l-6 .75 4.13 4.62L4 19l6-3 6 3-1.12-6.63L19 7.75 13 7zm0 2.24l2.34 4.69 4.65.58-3.18 3.56.87 5.15L10 14.88l-4.68 2.34.87-5.15-3.18-3.56 4.65-.58z';
       
 26010           break;
       
 26011 
       
 26012         case 'star-filled':
       
 26013           path = 'M10 1l3 6 6 .75-4.12 4.62L16 19l-6-3-6 3 1.13-6.63L1 7.75 7 7z';
       
 26014           break;
       
 26015 
       
 26016         case 'star-half':
       
 26017           path = 'M10 1L7 7l-6 .75 4.13 4.62L4 19l6-3 6 3-1.12-6.63L19 7.75 13 7zm0 2.24l2.34 4.69 4.65.58-3.18 3.56.87 5.15L10 14.88V3.24z';
       
 26018           break;
       
 26019 
       
 26020         case 'sticky':
       
 26021           path = 'M5 3.61V1.04l8.99-.01-.01 2.58c-1.22.26-2.16 1.35-2.16 2.67v.5c.01 1.31.93 2.4 2.17 2.66l-.01 2.58h-3.41l-.01 2.57c0 .6-.47 4.41-1.06 4.41-.6 0-1.08-3.81-1.08-4.41v-2.56L5 12.02l.01-2.58c1.23-.25 2.15-1.35 2.15-2.66v-.5c0-1.31-.92-2.41-2.16-2.67z';
       
 26022           break;
       
 26023 
       
 26024         case 'store':
       
 26025           path = 'M1 10c.41.29.96.43 1.5.43.55 0 1.09-.14 1.5-.43.62-.46 1-1.17 1-2 0 .83.37 1.54 1 2 .41.29.96.43 1.5.43.55 0 1.09-.14 1.5-.43.62-.46 1-1.17 1-2 0 .83.37 1.54 1 2 .41.29.96.43 1.51.43.54 0 1.08-.14 1.49-.43.62-.46 1-1.17 1-2 0 .83.37 1.54 1 2 .41.29.96.43 1.5.43.55 0 1.09-.14 1.5-.43.63-.46 1-1.17 1-2V7l-3-7H4L0 7v1c0 .83.37 1.54 1 2zm2 8.99h5v-5h4v5h5v-7c-.37-.05-.72-.22-1-.43-.63-.45-1-.73-1-1.56 0 .83-.38 1.11-1 1.56-.41.3-.95.43-1.49.44-.55 0-1.1-.14-1.51-.44-.63-.45-1-.73-1-1.56 0 .83-.38 1.11-1 1.56-.41.3-.95.43-1.5.44-.54 0-1.09-.14-1.5-.44-.63-.45-1-.73-1-1.57 0 .84-.38 1.12-1 1.57-.29.21-.63.38-1 .44v6.99z';
       
 26026           break;
       
 26027 
       
 26028         case 'table-col-after':
       
 26029           path = 'M14.08 12.864V9.216h3.648V7.424H14.08V3.776h-1.728v3.648H8.64v1.792h3.712v3.648zM0 17.92V0h20.48v17.92H0zM6.4 1.28H1.28v3.84H6.4V1.28zm0 5.12H1.28v3.84H6.4V6.4zm0 5.12H1.28v3.84H6.4v-3.84zM19.2 1.28H7.68v14.08H19.2V1.28z';
       
 26030           break;
       
 26031 
       
 26032         case 'table-col-before':
       
 26033           path = 'M6.4 3.776v3.648H2.752v1.792H6.4v3.648h1.728V9.216h3.712V7.424H8.128V3.776zM0 17.92V0h20.48v17.92H0zM12.8 1.28H1.28v14.08H12.8V1.28zm6.4 0h-5.12v3.84h5.12V1.28zm0 5.12h-5.12v3.84h5.12V6.4zm0 5.12h-5.12v3.84h5.12v-3.84z';
       
 26034           break;
       
 26035 
       
 26036         case 'table-col-delete':
       
 26037           path = 'M6.4 9.98L7.68 8.7v-.256L6.4 7.164V9.98zm6.4-1.532l1.28-1.28V9.92L12.8 8.64v-.192zm7.68 9.472V0H0v17.92h20.48zm-1.28-2.56h-5.12v-1.024l-.256.256-1.024-1.024v1.792H7.68v-1.792l-1.024 1.024-.256-.256v1.024H1.28V1.28H6.4v2.368l.704-.704.576.576V1.216h5.12V3.52l.96-.96.32.32V1.216h5.12V15.36zm-5.76-2.112l-3.136-3.136-3.264 3.264-1.536-1.536 3.264-3.264L5.632 5.44l1.536-1.536 3.136 3.136 3.2-3.2 1.536 1.536-3.2 3.2 3.136 3.136-1.536 1.536z';
       
 26038           break;
       
 26039 
       
 26040         case 'table-row-after':
       
 26041           path = 'M13.824 10.176h-2.88v-2.88H9.536v2.88h-2.88v1.344h2.88v2.88h1.408v-2.88h2.88zM0 17.92V0h20.48v17.92H0zM6.4 1.28H1.28v3.84H6.4V1.28zm6.4 0H7.68v3.84h5.12V1.28zm6.4 0h-5.12v3.84h5.12V1.28zm0 5.056H1.28v9.024H19.2V6.336z';
       
 26042           break;
       
 26043 
       
 26044         case 'table-row-before':
       
 26045           path = 'M6.656 6.464h2.88v2.88h1.408v-2.88h2.88V5.12h-2.88V2.24H9.536v2.88h-2.88zM0 17.92V0h20.48v17.92H0zm7.68-2.56h5.12v-3.84H7.68v3.84zm-6.4 0H6.4v-3.84H1.28v3.84zM19.2 1.28H1.28v9.024H19.2V1.28zm0 10.24h-5.12v3.84h5.12v-3.84z';
       
 26046           break;
       
 26047 
       
 26048         case 'table-row-delete':
       
 26049           path = 'M17.728 11.456L14.592 8.32l3.2-3.2-1.536-1.536-3.2 3.2L9.92 3.648 8.384 5.12l3.2 3.2-3.264 3.264 1.536 1.536 3.264-3.264 3.136 3.136 1.472-1.536zM0 17.92V0h20.48v17.92H0zm19.2-6.4h-.448l-1.28-1.28H19.2V6.4h-1.792l1.28-1.28h.512V1.28H1.28v3.84h6.208l1.28 1.28H1.28v3.84h7.424l-1.28 1.28H1.28v3.84H19.2v-3.84z';
       
 26050           break;
       
 26051 
       
 26052         case 'tablet':
       
 26053           path = 'M4 2h12c.55 0 1 .45 1 1v14c0 .55-.45 1-1 1H4c-.55 0-1-.45-1-1V3c0-.55.45-1 1-1zm11 14V4H5v12h10zM6 5h6l-6 5V5z';
       
 26054           break;
       
 26055 
       
 26056         case 'tag':
       
 26057           path = 'M11 2h7v7L8 19l-7-7zm3 6c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2z';
       
 26058           break;
       
 26059 
       
 26060         case 'tagcloud':
       
 26061           path = 'M11 3v4H1V3h10zm8 0v4h-7V3h7zM7 8v3H1V8h6zm12 0v3H8V8h11zM9 12v2H1v-2h8zm10 0v2h-9v-2h9zM6 15v1H1v-1h5zm5 0v1H7v-1h4zm3 0v1h-2v-1h2zm5 0v1h-4v-1h4z';
       
 26062           break;
       
 26063 
       
 26064         case 'testimonial':
       
 26065           path = 'M4 3h12c.55 0 1.02.2 1.41.59S18 4.45 18 5v7c0 .55-.2 1.02-.59 1.41S16.55 14 16 14h-1l-5 5v-5H4c-.55 0-1.02-.2-1.41-.59S2 12.55 2 12V5c0-.55.2-1.02.59-1.41S3.45 3 4 3zm11 2H4v1h11V5zm1 3H4v1h12V8zm-3 3H4v1h9v-1z';
       
 26066           break;
       
 26067 
       
 26068         case 'text':
       
 26069           path = 'M18 3v2H2V3h16zm-6 4v2H2V7h10zm6 0v2h-4V7h4zM8 11v2H2v-2h6zm10 0v2h-8v-2h8zm-4 4v2H2v-2h12z';
       
 26070           break;
       
 26071 
       
 26072         case 'thumbs-down':
       
 26073           path = 'M7.28 18c-.15.02-.26-.02-.41-.07-.56-.19-.83-.79-.66-1.35.17-.55 1-3.04 1-3.58 0-.53-.75-1-1.35-1h-3c-.6 0-1-.4-1-1s2-7 2-7c.17-.39.55-1 1-1H14v9h-2.14c-.41.41-3.3 4.71-3.58 5.27-.21.41-.6.68-1 .73zM18 12h-2V3h2v9z';
       
 26074           break;
       
 26075 
       
 26076         case 'thumbs-up':
       
 26077           path = 'M12.72 2c.15-.02.26.02.41.07.56.19.83.79.66 1.35-.17.55-1 3.04-1 3.58 0 .53.75 1 1.35 1h3c.6 0 1 .4 1 1s-2 7-2 7c-.17.39-.55 1-1 1H6V8h2.14c.41-.41 3.3-4.71 3.58-5.27.21-.41.6-.68 1-.73zM2 8h2v9H2V8z';
       
 26078           break;
       
 26079 
       
 26080         case 'tickets-alt':
       
 26081           path = 'M20 6.38L18.99 9.2v-.01c-.52-.19-1.03-.16-1.53.08s-.85.62-1.04 1.14-.16 1.03.07 1.53c.24.5.62.84 1.15 1.03v.01l-1.01 2.82-15.06-5.38.99-2.79c.52.19 1.03.16 1.53-.08.5-.23.84-.61 1.03-1.13s.16-1.03-.08-1.53c-.23-.49-.61-.83-1.13-1.02L4.93 1zm-4.97 5.69l1.37-3.76c.12-.31.1-.65-.04-.95s-.39-.53-.7-.65L8.14 3.98c-.64-.23-1.37.12-1.6.74L5.17 8.48c-.24.65.1 1.37.74 1.6l7.52 2.74c.14.05.28.08.43.08.52 0 1-.33 1.17-.83zM7.97 4.45l7.51 2.73c.19.07.34.21.43.39.08.18.09.38.02.57l-1.37 3.76c-.13.38-.58.59-.96.45L6.09 9.61c-.39-.14-.59-.57-.45-.96l1.37-3.76c.1-.29.39-.49.7-.49.09 0 .17.02.26.05zm6.82 12.14c.35.27.75.41 1.2.41H16v3H0v-2.96c.55 0 1.03-.2 1.41-.59.39-.38.59-.86.59-1.41s-.2-1.02-.59-1.41-.86-.59-1.41-.59V10h1.05l-.28.8 2.87 1.02c-.51.16-.89.62-.89 1.18v4c0 .69.56 1.25 1.25 1.25h8c.69 0 1.25-.56 1.25-1.25v-1.75l.83.3c.12.43.36.78.71 1.04zM3.25 17v-4c0-.41.34-.75.75-.75h.83l7.92 2.83V17c0 .41-.34.75-.75.75H4c-.41 0-.75-.34-.75-.75z';
       
 26082           break;
       
 26083 
       
 26084         case 'tickets':
       
 26085           path = 'M20 5.38L18.99 8.2v-.01c-1.04-.37-2.19.18-2.57 1.22-.37 1.04.17 2.19 1.22 2.56v.01l-1.01 2.82L1.57 9.42l.99-2.79c1.04.38 2.19-.17 2.56-1.21s-.17-2.18-1.21-2.55L4.93 0zm-5.45 3.37c.74-2.08-.34-4.37-2.42-5.12-2.08-.74-4.37.35-5.11 2.42-.74 2.08.34 4.38 2.42 5.12 2.07.74 4.37-.35 5.11-2.42zm-2.56-4.74c.89.32 1.57.94 1.97 1.71-.01-.01-.02-.01-.04-.02-.33-.12-.67.09-.78.4-.1.28-.03.57.05.91.04.27.09.62-.06 1.04-.1.29-.33.58-.65 1l-.74 1.01.08-4.08.4.11c.19.04.26-.24.08-.29 0 0-.57-.15-.92-.28-.34-.12-.88-.36-.88-.36-.18-.08-.3.19-.12.27 0 0 .16.08.34.16l.01 1.63L9.2 9.18l.08-4.11c.2.06.4.11.4.11.19.04.26-.23.07-.29 0 0-.56-.15-.91-.28-.07-.02-.14-.05-.22-.08.93-.7 2.19-.94 3.37-.52zM7.4 6.19c.17-.49.44-.92.78-1.27l.04 5c-.94-.95-1.3-2.39-.82-3.73zm4.04 4.75l2.1-2.63c.37-.41.57-.77.69-1.12.05-.12.08-.24.11-.35.09.57.04 1.18-.17 1.77-.45 1.25-1.51 2.1-2.73 2.33zm-.7-3.22l.02 3.22c0 .02 0 .04.01.06-.4 0-.8-.07-1.2-.21-.33-.12-.63-.28-.9-.48zm1.24 6.08l2.1.75c.24.84 1 1.45 1.91 1.45H16v3H0v-2.96c1.1 0 2-.89 2-2 0-1.1-.9-2-2-2V9h1.05l-.28.8 4.28 1.52C4.4 12.03 4 12.97 4 14c0 2.21 1.79 4 4 4s4-1.79 4-4c0-.07-.02-.13-.02-.2zm-6.53-2.33l1.48.53c-.14.04-.15.27.03.28 0 0 .18.02.37.03l.56 1.54-.78 2.36-1.31-3.9c.21-.01.41-.03.41-.03.19-.02.17-.31-.02-.3 0 0-.59.05-.96.05-.07 0-.15 0-.23-.01.13-.2.28-.38.45-.55zM4.4 14c0-.52.12-1.02.32-1.46l1.71 4.7C5.23 16.65 4.4 15.42 4.4 14zm4.19-1.41l1.72.62c.07.17.12.37.12.61 0 .31-.12.66-.28 1.16l-.35 1.2zM11.6 14c0 1.33-.72 2.49-1.79 3.11l1.1-3.18c.06-.17.1-.31.14-.46l.52.19c.02.11.03.22.03.34zm-4.62 3.45l1.08-3.14 1.11 3.03c.01.02.01.04.02.05-.37.13-.77.21-1.19.21-.35 0-.69-.06-1.02-.15z';
       
 26086           break;
       
 26087 
       
 26088         case 'tide':
       
 26089           path = 'M17 7.2V3H3v7.1c2.6-.5 4.5-1.5 6.4-2.6.2-.2.4-.3.6-.5v3c-1.9 1.1-4 2.2-7 2.8V17h14V9.9c-2.6.5-4.4 1.5-6.2 2.6-.3.1-.5.3-.8.4V10c2-1.1 4-2.2 7-2.8z';
       
 26090           break;
       
 26091 
       
 26092         case 'translation':
       
 26093           path = 'M11 7H9.49c-.63 0-1.25.3-1.59.7L7 5H4.13l-2.39 7h1.69l.74-2H7v4H2c-1.1 0-2-.9-2-2V5c0-1.1.9-2 2-2h7c1.1 0 2 .9 2 2v2zM6.51 9H4.49l1-2.93zM10 8h7c1.1 0 2 .9 2 2v7c0 1.1-.9 2-2 2h-7c-1.1 0-2-.9-2-2v-7c0-1.1.9-2 2-2zm7.25 5v-1.08h-3.17V9.75h-1.16v2.17H9.75V13h1.28c.11.85.56 1.85 1.28 2.62-.87.36-1.89.62-2.31.62-.01.02.22.97.2 1.46.84 0 2.21-.5 3.28-1.15 1.09.65 2.48 1.15 3.34 1.15-.02-.49.2-1.44.2-1.46-.43 0-1.49-.27-2.38-.63.7-.77 1.14-1.77 1.25-2.61h1.36zm-3.81 1.93c-.5-.46-.85-1.13-1.01-1.93h2.09c-.17.8-.51 1.47-1 1.93l-.04.03s-.03-.02-.04-.03z';
       
 26094           break;
       
 26095 
       
 26096         case 'trash':
       
 26097           path = 'M12 4h3c.6 0 1 .4 1 1v1H3V5c0-.6.5-1 1-1h3c.2-1.1 1.3-2 2.5-2s2.3.9 2.5 2zM8 4h3c-.2-.6-.9-1-1.5-1S8.2 3.4 8 4zM4 7h11l-.9 10.1c0 .5-.5.9-1 .9H5.9c-.5 0-.9-.4-1-.9L4 7z';
       
 26098           break;
       
 26099 
       
 26100         case 'twitter':
       
 26101           path = 'M18.94 4.46c-.49.73-1.11 1.38-1.83 1.9.01.15.01.31.01.47 0 4.85-3.69 10.44-10.43 10.44-2.07 0-4-.61-5.63-1.65.29.03.58.05.88.05 1.72 0 3.3-.59 4.55-1.57-1.6-.03-2.95-1.09-3.42-2.55.22.04.45.07.69.07.33 0 .66-.05.96-.13-1.67-.34-2.94-1.82-2.94-3.6v-.04c.5.27 1.06.44 1.66.46-.98-.66-1.63-1.78-1.63-3.06 0-.67.18-1.3.5-1.84 1.81 2.22 4.51 3.68 7.56 3.83-.06-.27-.1-.55-.1-.84 0-2.02 1.65-3.66 3.67-3.66 1.06 0 2.01.44 2.68 1.16.83-.17 1.62-.47 2.33-.89-.28.85-.86 1.57-1.62 2.02.75-.08 1.45-.28 2.11-.57z';
       
 26102           break;
       
 26103 
       
 26104         case 'undo':
       
 26105           path = 'M12 5H7V2L1 6l6 4V7h5c2.2 0 4 1.8 4 4s-1.8 4-4 4H7v2h5c3.3 0 6-2.7 6-6s-2.7-6-6-6z';
       
 26106           break;
       
 26107 
       
 26108         case 'universal-access-alt':
       
 26109           path = 'M19 10c0-4.97-4.03-9-9-9s-9 4.03-9 9 4.03 9 9 9 9-4.03 9-9zm-9-7.4c.83 0 1.5.67 1.5 1.5s-.67 1.51-1.5 1.51c-.82 0-1.5-.68-1.5-1.51s.68-1.5 1.5-1.5zM3.4 7.36c0-.65 6.6-.76 6.6-.76s6.6.11 6.6.76-4.47 1.4-4.47 1.4 1.69 8.14 1.06 8.38c-.62.24-3.19-5.19-3.19-5.19s-2.56 5.43-3.18 5.19c-.63-.24 1.06-8.38 1.06-8.38S3.4 8.01 3.4 7.36z';
       
 26110           break;
       
 26111 
       
 26112         case 'universal-access':
       
 26113           path = 'M10 2.6c.83 0 1.5.67 1.5 1.5s-.67 1.51-1.5 1.51c-.82 0-1.5-.68-1.5-1.51s.68-1.5 1.5-1.5zM3.4 7.36c0-.65 6.6-.76 6.6-.76s6.6.11 6.6.76-4.47 1.4-4.47 1.4 1.69 8.14 1.06 8.38c-.62.24-3.19-5.19-3.19-5.19s-2.56 5.43-3.18 5.19c-.63-.24 1.06-8.38 1.06-8.38S3.4 8.01 3.4 7.36z';
       
 26114           break;
       
 26115 
       
 26116         case 'unlock':
       
 26117           path = 'M12 9V6c0-1.1-.9-2-2-2s-2 .9-2 2H6c0-2.21 1.79-4 4-4s4 1.79 4 4v3h1c.55 0 1 .45 1 1v7c0 .55-.45 1-1 1H5c-.55 0-1-.45-1-1v-7c0-.55.45-1 1-1h7zm-1 7l-.36-2.15c.51-.24.86-.75.86-1.35 0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5c0 .6.35 1.11.86 1.35L9 16h2z';
       
 26118           break;
       
 26119 
       
 26120         case 'update':
       
 26121           path = 'M10.2 3.28c3.53 0 6.43 2.61 6.92 6h2.08l-3.5 4-3.5-4h2.32c-.45-1.97-2.21-3.45-4.32-3.45-1.45 0-2.73.71-3.54 1.78L4.95 5.66C6.23 4.2 8.11 3.28 10.2 3.28zm-.4 13.44c-3.52 0-6.43-2.61-6.92-6H.8l3.5-4c1.17 1.33 2.33 2.67 3.5 4H5.48c.45 1.97 2.21 3.45 4.32 3.45 1.45 0 2.73-.71 3.54-1.78l1.71 1.95c-1.28 1.46-3.15 2.38-5.25 2.38z';
       
 26122           break;
       
 26123 
       
 26124         case 'upload':
       
 26125           path = 'M8 14V8H5l5-6 5 6h-3v6H8zm-2 2v-6H4v8h12.01v-8H14v6H6z';
       
 26126           break;
       
 26127 
       
 26128         case 'vault':
       
 26129           path = 'M18 17V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v14c0 .55.45 1 1 1h14c.55 0 1-.45 1-1zm-1 0H3V3h14v14zM4.75 4h10.5c.41 0 .75.34.75.75V6h-1v3h1v2h-1v3h1v1.25c0 .41-.34.75-.75.75H4.75c-.41 0-.75-.34-.75-.75V4.75c0-.41.34-.75.75-.75zM13 10c0-2.21-1.79-4-4-4s-4 1.79-4 4 1.79 4 4 4 4-1.79 4-4zM9 7l.77 1.15C10.49 8.46 11 9.17 11 10c0 1.1-.9 2-2 2s-2-.9-2-2c0-.83.51-1.54 1.23-1.85z';
       
 26130           break;
       
 26131 
       
 26132         case 'video-alt':
       
 26133           path = 'M8 5c0-.55-.45-1-1-1H2c-.55 0-1 .45-1 1 0 .57.49 1 1 1h5c.55 0 1-.45 1-1zm6 5l4-4v10l-4-4v-2zm-1 4V8c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h8c.55 0 1-.45 1-1z';
       
 26134           break;
       
 26135 
       
 26136         case 'video-alt2':
       
 26137           path = 'M12 13V7c0-1.1-.9-2-2-2H3c-1.1 0-2 .9-2 2v6c0 1.1.9 2 2 2h7c1.1 0 2-.9 2-2zm1-2.5l6 4.5V5l-6 4.5v1z';
       
 26138           break;
       
 26139 
       
 26140         case 'video-alt3':
       
 26141           path = 'M19 15V5c0-1.1-.9-2-2-2H4c-1.1 0-2 .9-2 2v10c0 1.1.9 2 2 2h13c1.1 0 2-.9 2-2zM8 14V6l6 4z';
       
 26142           break;
       
 26143 
       
 26144         case 'visibility':
       
 26145           path = 'M19.7 9.4C17.7 6 14 3.9 10 3.9S2.3 6 .3 9.4L0 10l.3.6c2 3.4 5.7 5.5 9.7 5.5s7.7-2.1 9.7-5.5l.3-.6-.3-.6zM10 14.1c-3.1 0-6-1.6-7.7-4.1C3.6 8 5.7 6.6 8 6.1c-.9.6-1.5 1.7-1.5 2.9 0 1.9 1.6 3.5 3.5 3.5s3.5-1.6 3.5-3.5c0-1.2-.6-2.3-1.5-2.9 2.3.5 4.4 1.9 5.7 3.9-1.7 2.5-4.6 4.1-7.7 4.1z';
       
 26146           break;
       
 26147 
       
 26148         case 'warning':
       
 26149           path = 'M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm1.13 9.38l.35-6.46H8.52l.35 6.46h2.26zm-.09 3.36c.24-.23.37-.55.37-.96 0-.42-.12-.74-.36-.97s-.59-.35-1.06-.35-.82.12-1.07.35-.37.55-.37.97c0 .41.13.73.38.96.26.23.61.34 1.06.34s.8-.11 1.05-.34z';
       
 26150           break;
       
 26151 
       
 26152         case 'welcome-add-page':
       
 26153           path = 'M17 7V4h-2V2h-3v1H3v15h11V9h1V7h2zm-1-2v1h-2v2h-1V6h-2V5h2V3h1v2h2z';
       
 26154           break;
       
 26155 
       
 26156         case 'welcome-comments':
       
 26157           path = 'M5 2h10c1.1 0 2 .9 2 2v8c0 1.1-.9 2-2 2h-2l-5 5v-5H5c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2zm8.5 8.5L11 8l2.5-2.5-1-1L10 7 7.5 4.5l-1 1L9 8l-2.5 2.5 1 1L10 9l2.5 2.5z';
       
 26158           break;
       
 26159 
       
 26160         case 'welcome-learn-more':
       
 26161           path = 'M10 10L2.54 7.02 3 18H1l.48-11.41L0 6l10-4 10 4zm0-5c-.55 0-1 .22-1 .5s.45.5 1 .5 1-.22 1-.5-.45-.5-1-.5zm0 6l5.57-2.23c.71.94 1.2 2.07 1.36 3.3-.3-.04-.61-.07-.93-.07-2.55 0-4.78 1.37-6 3.41C8.78 13.37 6.55 12 4 12c-.32 0-.63.03-.93.07.16-1.23.65-2.36 1.36-3.3z';
       
 26162           break;
       
 26163 
       
 26164         case 'welcome-view-site':
       
 26165           path = 'M18 14V4c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h14c.55 0 1-.45 1-1zm-8-8c2.3 0 4.4 1.14 6 3-1.6 1.86-3.7 3-6 3s-4.4-1.14-6-3c1.6-1.86 3.7-3 6-3zm2 3c0-1.1-.9-2-2-2s-2 .9-2 2 .9 2 2 2 2-.9 2-2zm2 8h3v1H3v-1h3v-1h8v1z';
       
 26166           break;
       
 26167 
       
 26168         case 'welcome-widgets-menus':
       
 26169           path = 'M19 16V3c0-.55-.45-1-1-1H3c-.55 0-1 .45-1 1v13c0 .55.45 1 1 1h15c.55 0 1-.45 1-1zM4 4h13v4H4V4zm1 1v2h3V5H5zm4 0v2h3V5H9zm4 0v2h3V5h-3zm-8.5 5c.28 0 .5.22.5.5s-.22.5-.5.5-.5-.22-.5-.5.22-.5.5-.5zM6 10h4v1H6v-1zm6 0h5v5h-5v-5zm-7.5 2c.28 0 .5.22.5.5s-.22.5-.5.5-.5-.22-.5-.5.22-.5.5-.5zM6 12h4v1H6v-1zm7 0v2h3v-2h-3zm-8.5 2c.28 0 .5.22.5.5s-.22.5-.5.5-.5-.22-.5-.5.22-.5.5-.5zM6 14h4v1H6v-1z';
       
 26170           break;
       
 26171 
       
 26172         case 'welcome-write-blog':
       
 26173           path = 'M16.89 1.2l1.41 1.41c.39.39.39 1.02 0 1.41L14 8.33V18H3V3h10.67l1.8-1.8c.4-.39 1.03-.4 1.42 0zm-5.66 8.48l5.37-5.36-1.42-1.42-5.36 5.37-.71 2.12z';
       
 26174           break;
       
 26175 
       
 26176         case 'wordpress-alt':
       
 26177           path = 'M20 10c0-5.51-4.49-10-10-10C4.48 0 0 4.49 0 10c0 5.52 4.48 10 10 10 5.51 0 10-4.48 10-10zM7.78 15.37L4.37 6.22c.55-.02 1.17-.08 1.17-.08.5-.06.44-1.13-.06-1.11 0 0-1.45.11-2.37.11-.18 0-.37 0-.58-.01C4.12 2.69 6.87 1.11 10 1.11c2.33 0 4.45.87 6.05 2.34-.68-.11-1.65.39-1.65 1.58 0 .74.45 1.36.9 2.1.35.61.55 1.36.55 2.46 0 1.49-1.4 5-1.4 5l-3.03-8.37c.54-.02.82-.17.82-.17.5-.05.44-1.25-.06-1.22 0 0-1.44.12-2.38.12-.87 0-2.33-.12-2.33-.12-.5-.03-.56 1.2-.06 1.22l.92.08 1.26 3.41zM17.41 10c.24-.64.74-1.87.43-4.25.7 1.29 1.05 2.71 1.05 4.25 0 3.29-1.73 6.24-4.4 7.78.97-2.59 1.94-5.2 2.92-7.78zM6.1 18.09C3.12 16.65 1.11 13.53 1.11 10c0-1.3.23-2.48.72-3.59C3.25 10.3 4.67 14.2 6.1 18.09zm4.03-6.63l2.58 6.98c-.86.29-1.76.45-2.71.45-.79 0-1.57-.11-2.29-.33.81-2.38 1.62-4.74 2.42-7.1z';
       
 26178           break;
       
 26179 
       
 26180         case 'wordpress':
       
 26181           path = 'M20 10c0-5.52-4.48-10-10-10S0 4.48 0 10s4.48 10 10 10 10-4.48 10-10zM10 1.01c4.97 0 8.99 4.02 8.99 8.99s-4.02 8.99-8.99 8.99S1.01 14.97 1.01 10 5.03 1.01 10 1.01zM8.01 14.82L4.96 6.61c.49-.03 1.05-.08 1.05-.08.43-.05.38-1.01-.06-.99 0 0-1.29.1-2.13.1-.15 0-.33 0-.52-.01 1.44-2.17 3.9-3.6 6.7-3.6 2.09 0 3.99.79 5.41 2.09-.6-.08-1.45.35-1.45 1.42 0 .66.38 1.22.79 1.88.31.54.5 1.22.5 2.21 0 1.34-1.27 4.48-1.27 4.48l-2.71-7.5c.48-.03.75-.16.75-.16.43-.05.38-1.1-.05-1.08 0 0-1.3.11-2.14.11-.78 0-2.11-.11-2.11-.11-.43-.02-.48 1.06-.05 1.08l.84.08 1.12 3.04zm6.02 2.15L16.64 10s.67-1.69.39-3.81c.63 1.14.94 2.42.94 3.81 0 2.96-1.56 5.58-3.94 6.97zM2.68 6.77L6.5 17.25c-2.67-1.3-4.47-4.08-4.47-7.25 0-1.16.2-2.23.65-3.23zm7.45 4.53l2.29 6.25c-.75.27-1.57.42-2.42.42-.72 0-1.41-.11-2.06-.3z';
       
 26182           break;
       
 26183 
       
 26184         case 'yes-alt':
       
 26185           path = 'M10 2c-4.42 0-8 3.58-8 8s3.58 8 8 8 8-3.58 8-8-3.58-8-8-8zm-.615 12.66h-1.34l-3.24-4.54 1.34-1.25 2.57 2.4 5.14-5.93 1.34.94-5.81 8.38z';
       
 26186           break;
       
 26187 
       
 26188         case 'yes':
       
 26189           path = 'M14.83 4.89l1.34.94-5.81 8.38H9.02L5.78 9.67l1.34-1.25 2.57 2.4z';
       
 26190           break;
       
 26191       }
       
 26192 
       
 26193       if (!path) {
       
 26194         return null;
       
 26195       }
       
 26196 
       
 26197       var iconClass = IconClass(this.props);
       
 26198       return Object(external_this_wp_element_["createElement"])(svg_SVG, {
       
 26199         "aria-hidden": true,
       
 26200         role: "img",
       
 26201         focusable: "false",
       
 26202         className: iconClass,
       
 26203         xmlns: "http://www.w3.org/2000/svg",
       
 26204         width: size,
       
 26205         height: size,
       
 26206         viewBox: "0 0 20 20"
       
 26207       }, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 26208         d: path
       
 26209       }));
       
 26210     }
       
 26211   }]);
       
 26212 
       
 26213   return Dashicon;
       
 26214 }(external_this_wp_element_["Component"]);
       
 26215 
       
 26216 
       
 26217 
       
 26218 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/icon-button/index.js
       
 26219 
       
 26220 
       
 26221 
       
 26222 
       
 26223 /**
       
 26224  * External dependencies
       
 26225  */
       
 26226 
       
 26227 
       
 26228 /**
       
 26229  * WordPress dependencies
       
 26230  */
       
 26231 
       
 26232 
       
 26233 /**
       
 26234  * Internal dependencies
       
 26235  */
       
 26236 
       
 26237 
       
 26238 
       
 26239 
       
 26240 
       
 26241 function IconButton(props, ref) {
       
 26242   var icon = props.icon,
       
 26243       children = props.children,
       
 26244       label = props.label,
       
 26245       className = props.className,
       
 26246       tooltip = props.tooltip,
       
 26247       shortcut = props.shortcut,
       
 26248       labelPosition = props.labelPosition,
       
 26249       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["icon", "children", "label", "className", "tooltip", "shortcut", "labelPosition"]);
       
 26250 
       
 26251   var ariaPressed = additionalProps['aria-pressed'];
       
 26252   var classes = classnames_default()('components-icon-button', className, {
       
 26253     'has-text': children
       
 26254   });
       
 26255   var tooltipText = tooltip || label; // Should show the tooltip if...
       
 26256 
       
 26257   var showTooltip = !additionalProps.disabled && ( // an explicit tooltip is passed or...
       
 26258   tooltip || // there's a shortcut or...
       
 26259   shortcut || // there's a label and...
       
 26260   !!label && ( // the children are empty and...
       
 26261   !children || Object(external_lodash_["isArray"])(children) && !children.length) && // the tooltip is not explicitly disabled.
       
 26262   false !== tooltip);
       
 26263   var element = Object(external_this_wp_element_["createElement"])(build_module_button, Object(esm_extends["a" /* default */])({
       
 26264     "aria-label": label
       
 26265   }, additionalProps, {
       
 26266     className: classes,
       
 26267     ref: ref
       
 26268   }), Object(external_lodash_["isString"])(icon) ? Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
       
 26269     icon: icon,
       
 26270     ariaPressed: ariaPressed
       
 26271   }) : icon, children);
       
 26272 
       
 26273   if (showTooltip) {
       
 26274     element = Object(external_this_wp_element_["createElement"])(build_module_tooltip, {
       
 26275       text: tooltipText,
       
 26276       shortcut: shortcut,
       
 26277       position: labelPosition
       
 26278     }, element);
       
 26279   }
       
 26280 
       
 26281   return element;
       
 26282 }
       
 26283 
       
 26284 /* harmony default export */ var icon_button = (Object(external_this_wp_element_["forwardRef"])(IconButton));
       
 26285 
       
 26286 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/scroll-lock/index.js
       
 26287 
       
 26288 
       
 26289 
       
 26290 
       
 26291 
       
 26292 
       
 26293 /**
       
 26294  * WordPress dependencies
       
 26295  */
       
 26296 
       
 26297 /**
       
 26298  * Creates a ScrollLock component bound to the specified document.
       
 26299  *
       
 26300  * This function creates a ScrollLock component for the specified document
       
 26301  * and is exposed so we can create an isolated component for unit testing.
       
 26302  *
       
 26303  * @param {Object} args Keyword args.
       
 26304  * @param {HTMLDocument} args.htmlDocument The document to lock the scroll for.
       
 26305  * @param {string} args.className The name of the class used to lock scrolling.
       
 26306  * @return {Component} The bound ScrollLock component.
       
 26307  */
       
 26308 
       
 26309 function createScrollLockComponent() {
       
 26310   var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
       
 26311       _ref$htmlDocument = _ref.htmlDocument,
       
 26312       htmlDocument = _ref$htmlDocument === void 0 ? document : _ref$htmlDocument,
       
 26313       _ref$className = _ref.className,
       
 26314       className = _ref$className === void 0 ? 'lockscroll' : _ref$className;
       
 26315 
       
 26316   var lockCounter = 0;
       
 26317   /*
       
 26318    * Setting `overflow: hidden` on html and body elements resets body scroll in iOS.
       
 26319    * Save scroll top so we can restore it after locking scroll.
       
 26320    *
       
 26321    * NOTE: It would be cleaner and possibly safer to find a localized solution such
       
 26322    * as preventing default on certain touchmove events.
       
 26323    */
       
 26324 
       
 26325   var previousScrollTop = 0;
       
 26326   /**
       
 26327    * Locks and unlocks scroll depending on the boolean argument.
       
 26328    *
       
 26329    * @param {boolean} locked Whether or not scroll should be locked.
       
 26330    */
       
 26331 
       
 26332   function setLocked(locked) {
       
 26333     var scrollingElement = htmlDocument.scrollingElement || htmlDocument.body;
       
 26334 
       
 26335     if (locked) {
       
 26336       previousScrollTop = scrollingElement.scrollTop;
       
 26337     }
       
 26338 
       
 26339     var methodName = locked ? 'add' : 'remove';
       
 26340     scrollingElement.classList[methodName](className); // Adding the class to the document element seems to be necessary in iOS.
       
 26341 
       
 26342     htmlDocument.documentElement.classList[methodName](className);
       
 26343 
       
 26344     if (!locked) {
       
 26345       scrollingElement.scrollTop = previousScrollTop;
       
 26346     }
       
 26347   }
       
 26348   /**
       
 26349    * Requests scroll lock.
       
 26350    *
       
 26351    * This function tracks requests for scroll lock. It locks scroll on the first
       
 26352    * request and counts each request so `releaseLock` can unlock scroll when
       
 26353    * all requests have been released.
       
 26354    */
       
 26355 
       
 26356 
       
 26357   function requestLock() {
       
 26358     if (lockCounter === 0) {
       
 26359       setLocked(true);
       
 26360     }
       
 26361 
       
 26362     ++lockCounter;
       
 26363   }
       
 26364   /**
       
 26365    * Releases a request for scroll lock.
       
 26366    *
       
 26367    * This function tracks released requests for scroll lock. When all requests
       
 26368    * have been released, it unlocks scroll.
       
 26369    */
       
 26370 
       
 26371 
       
 26372   function releaseLock() {
       
 26373     if (lockCounter === 1) {
       
 26374       setLocked(false);
       
 26375     }
       
 26376 
       
 26377     --lockCounter;
       
 26378   }
       
 26379 
       
 26380   return (
       
 26381     /*#__PURE__*/
       
 26382     function (_Component) {
       
 26383       Object(inherits["a" /* default */])(ScrollLock, _Component);
       
 26384 
       
 26385       function ScrollLock() {
       
 26386         Object(classCallCheck["a" /* default */])(this, ScrollLock);
       
 26387 
       
 26388         return Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ScrollLock).apply(this, arguments));
       
 26389       }
       
 26390 
       
 26391       Object(createClass["a" /* default */])(ScrollLock, [{
       
 26392         key: "componentDidMount",
       
 26393 
       
 26394         /**
       
 26395          * Requests scroll lock on mount.
       
 26396          */
       
 26397         value: function componentDidMount() {
       
 26398           requestLock();
       
 26399         }
       
 26400         /**
       
 26401          * Releases scroll lock before unmount.
       
 26402          */
       
 26403 
       
 26404       }, {
       
 26405         key: "componentWillUnmount",
       
 26406         value: function componentWillUnmount() {
       
 26407           releaseLock();
       
 26408         }
       
 26409         /**
       
 26410          * Render nothing as this component is merely a way to declare scroll lock.
       
 26411          *
       
 26412          * @return {null} Render nothing by returning `null`.
       
 26413          */
       
 26414 
       
 26415       }, {
       
 26416         key: "render",
       
 26417         value: function render() {
       
 26418           return null;
       
 26419         }
       
 26420       }]);
       
 26421 
       
 26422       return ScrollLock;
       
 26423     }(external_this_wp_element_["Component"])
       
 26424   );
       
 26425 }
       
 26426 /* harmony default export */ var scroll_lock = (createScrollLockComponent());
       
 26427 
       
 26428 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/isolated-event-container/index.js
       
 26429 
       
 26430 
       
 26431 
       
 26432 
       
 26433 
       
 26434 
       
 26435 
       
 26436 
       
 26437 
       
 26438 
       
 26439 /**
       
 26440  * WordPress dependencies
       
 26441  */
       
 26442 
       
 26443 
       
 26444 var isolated_event_container_IsolatedEventContainer =
       
 26445 /*#__PURE__*/
       
 26446 function (_Component) {
       
 26447   Object(inherits["a" /* default */])(IsolatedEventContainer, _Component);
       
 26448 
       
 26449   function IsolatedEventContainer(props) {
       
 26450     var _this;
       
 26451 
       
 26452     Object(classCallCheck["a" /* default */])(this, IsolatedEventContainer);
       
 26453 
       
 26454     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(IsolatedEventContainer).call(this, props));
       
 26455     _this.stopEventPropagationOutsideContainer = _this.stopEventPropagationOutsideContainer.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26456     return _this;
       
 26457   }
       
 26458 
       
 26459   Object(createClass["a" /* default */])(IsolatedEventContainer, [{
       
 26460     key: "stopEventPropagationOutsideContainer",
       
 26461     value: function stopEventPropagationOutsideContainer(event) {
       
 26462       event.stopPropagation();
       
 26463     }
       
 26464   }, {
       
 26465     key: "render",
       
 26466     value: function render() {
       
 26467       var _this$props = this.props,
       
 26468           children = _this$props.children,
       
 26469           props = Object(objectWithoutProperties["a" /* default */])(_this$props, ["children"]); // Disable reason: this stops certain events from propagating outside of the component.
       
 26470       //   - onMouseDown is disabled as this can cause interactions with other DOM elements
       
 26471 
       
 26472       /* eslint-disable jsx-a11y/no-static-element-interactions */
       
 26473 
       
 26474 
       
 26475       return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, props, {
       
 26476         onMouseDown: this.stopEventPropagationOutsideContainer
       
 26477       }), children);
       
 26478     }
       
 26479   }]);
       
 26480 
       
 26481   return IsolatedEventContainer;
       
 26482 }(external_this_wp_element_["Component"]);
       
 26483 
       
 26484 /* harmony default export */ var isolated_event_container = (isolated_event_container_IsolatedEventContainer);
       
 26485 
       
 26486 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/context.js
       
 26487 
       
 26488 
       
 26489 
       
 26490 
       
 26491 
       
 26492 
       
 26493 
       
 26494 
       
 26495 
       
 26496 /**
       
 26497  * External dependencies
       
 26498  */
       
 26499 
       
 26500 /**
       
 26501  * WordPress dependencies
       
 26502  */
       
 26503 
       
 26504 
       
 26505 
       
 26506 var context_createContext = Object(external_this_wp_element_["createContext"])({
       
 26507   registerSlot: function registerSlot() {},
       
 26508   unregisterSlot: function unregisterSlot() {},
       
 26509   registerFill: function registerFill() {},
       
 26510   unregisterFill: function unregisterFill() {},
       
 26511   getSlot: function getSlot() {},
       
 26512   getFills: function getFills() {}
       
 26513 }),
       
 26514     context_Provider = context_createContext.Provider,
       
 26515     context_Consumer = context_createContext.Consumer;
       
 26516 
       
 26517 var context_SlotFillProvider =
       
 26518 /*#__PURE__*/
       
 26519 function (_Component) {
       
 26520   Object(inherits["a" /* default */])(SlotFillProvider, _Component);
       
 26521 
       
 26522   function SlotFillProvider() {
       
 26523     var _this;
       
 26524 
       
 26525     Object(classCallCheck["a" /* default */])(this, SlotFillProvider);
       
 26526 
       
 26527     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(SlotFillProvider).apply(this, arguments));
       
 26528     _this.registerSlot = _this.registerSlot.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26529     _this.registerFill = _this.registerFill.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26530     _this.unregisterSlot = _this.unregisterSlot.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26531     _this.unregisterFill = _this.unregisterFill.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26532     _this.getSlot = _this.getSlot.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26533     _this.getFills = _this.getFills.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26534     _this.slots = {};
       
 26535     _this.fills = {};
       
 26536     _this.state = {
       
 26537       registerSlot: _this.registerSlot,
       
 26538       unregisterSlot: _this.unregisterSlot,
       
 26539       registerFill: _this.registerFill,
       
 26540       unregisterFill: _this.unregisterFill,
       
 26541       getSlot: _this.getSlot,
       
 26542       getFills: _this.getFills
       
 26543     };
       
 26544     return _this;
       
 26545   }
       
 26546 
       
 26547   Object(createClass["a" /* default */])(SlotFillProvider, [{
       
 26548     key: "registerSlot",
       
 26549     value: function registerSlot(name, slot) {
       
 26550       var previousSlot = this.slots[name];
       
 26551       this.slots[name] = slot;
       
 26552       this.forceUpdateFills(name); // Sometimes the fills are registered after the initial render of slot
       
 26553       // But before the registerSlot call, we need to rerender the slot
       
 26554 
       
 26555       this.forceUpdateSlot(name); // If a new instance of a slot is being mounted while another with the
       
 26556       // same name exists, force its update _after_ the new slot has been
       
 26557       // assigned into the instance, such that its own rendering of children
       
 26558       // will be empty (the new Slot will subsume all fills for this name).
       
 26559 
       
 26560       if (previousSlot) {
       
 26561         previousSlot.forceUpdate();
       
 26562       }
       
 26563     }
       
 26564   }, {
       
 26565     key: "registerFill",
       
 26566     value: function registerFill(name, instance) {
       
 26567       this.fills[name] = [].concat(Object(toConsumableArray["a" /* default */])(this.fills[name] || []), [instance]);
       
 26568       this.forceUpdateSlot(name);
       
 26569     }
       
 26570   }, {
       
 26571     key: "unregisterSlot",
       
 26572     value: function unregisterSlot(name, instance) {
       
 26573       // If a previous instance of a Slot by this name unmounts, do nothing,
       
 26574       // as the slot and its fills should only be removed for the current
       
 26575       // known instance.
       
 26576       if (this.slots[name] !== instance) {
       
 26577         return;
       
 26578       }
       
 26579 
       
 26580       delete this.slots[name];
       
 26581       this.forceUpdateFills(name);
       
 26582     }
       
 26583   }, {
       
 26584     key: "unregisterFill",
       
 26585     value: function unregisterFill(name, instance) {
       
 26586       this.fills[name] = Object(external_lodash_["without"])(this.fills[name], instance);
       
 26587       this.resetFillOccurrence(name);
       
 26588       this.forceUpdateSlot(name);
       
 26589     }
       
 26590   }, {
       
 26591     key: "getSlot",
       
 26592     value: function getSlot(name) {
       
 26593       return this.slots[name];
       
 26594     }
       
 26595   }, {
       
 26596     key: "getFills",
       
 26597     value: function getFills(name, slotInstance) {
       
 26598       // Fills should only be returned for the current instance of the slot
       
 26599       // in which they occupy.
       
 26600       if (this.slots[name] !== slotInstance) {
       
 26601         return [];
       
 26602       }
       
 26603 
       
 26604       return Object(external_lodash_["sortBy"])(this.fills[name], 'occurrence');
       
 26605     }
       
 26606   }, {
       
 26607     key: "resetFillOccurrence",
       
 26608     value: function resetFillOccurrence(name) {
       
 26609       Object(external_lodash_["forEach"])(this.fills[name], function (instance) {
       
 26610         instance.resetOccurrence();
       
 26611       });
       
 26612     }
       
 26613   }, {
       
 26614     key: "forceUpdateFills",
       
 26615     value: function forceUpdateFills(name) {
       
 26616       Object(external_lodash_["forEach"])(this.fills[name], function (instance) {
       
 26617         instance.forceUpdate();
       
 26618       });
       
 26619     }
       
 26620   }, {
       
 26621     key: "forceUpdateSlot",
       
 26622     value: function forceUpdateSlot(name) {
       
 26623       var slot = this.getSlot(name);
       
 26624 
       
 26625       if (slot) {
       
 26626         slot.forceUpdate();
       
 26627       }
       
 26628     }
       
 26629   }, {
       
 26630     key: "render",
       
 26631     value: function render() {
       
 26632       return Object(external_this_wp_element_["createElement"])(context_Provider, {
       
 26633         value: this.state
       
 26634       }, this.props.children);
       
 26635     }
       
 26636   }]);
       
 26637 
       
 26638   return SlotFillProvider;
       
 26639 }(external_this_wp_element_["Component"]);
       
 26640 
       
 26641 /* harmony default export */ var slot_fill_context = (context_SlotFillProvider);
       
 26642 
       
 26643 
       
 26644 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/slot.js
       
 26645 
       
 26646 
       
 26647 
       
 26648 
       
 26649 
       
 26650 
       
 26651 
       
 26652 
       
 26653 
       
 26654 /**
       
 26655  * External dependencies
       
 26656  */
       
 26657 
       
 26658 /**
       
 26659  * WordPress dependencies
       
 26660  */
       
 26661 
       
 26662 
       
 26663 /**
       
 26664  * Internal dependencies
       
 26665  */
       
 26666 
       
 26667 
       
 26668 
       
 26669 var slot_SlotComponent =
       
 26670 /*#__PURE__*/
       
 26671 function (_Component) {
       
 26672   Object(inherits["a" /* default */])(SlotComponent, _Component);
       
 26673 
       
 26674   function SlotComponent() {
       
 26675     var _this;
       
 26676 
       
 26677     Object(classCallCheck["a" /* default */])(this, SlotComponent);
       
 26678 
       
 26679     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(SlotComponent).apply(this, arguments));
       
 26680     _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26681     return _this;
       
 26682   }
       
 26683 
       
 26684   Object(createClass["a" /* default */])(SlotComponent, [{
       
 26685     key: "componentDidMount",
       
 26686     value: function componentDidMount() {
       
 26687       var registerSlot = this.props.registerSlot;
       
 26688       registerSlot(this.props.name, this);
       
 26689     }
       
 26690   }, {
       
 26691     key: "componentWillUnmount",
       
 26692     value: function componentWillUnmount() {
       
 26693       var unregisterSlot = this.props.unregisterSlot;
       
 26694       unregisterSlot(this.props.name, this);
       
 26695     }
       
 26696   }, {
       
 26697     key: "componentDidUpdate",
       
 26698     value: function componentDidUpdate(prevProps) {
       
 26699       var _this$props = this.props,
       
 26700           name = _this$props.name,
       
 26701           unregisterSlot = _this$props.unregisterSlot,
       
 26702           registerSlot = _this$props.registerSlot;
       
 26703 
       
 26704       if (prevProps.name !== name) {
       
 26705         unregisterSlot(prevProps.name);
       
 26706         registerSlot(name, this);
       
 26707       }
       
 26708     }
       
 26709   }, {
       
 26710     key: "bindNode",
       
 26711     value: function bindNode(node) {
       
 26712       this.node = node;
       
 26713     }
       
 26714   }, {
       
 26715     key: "render",
       
 26716     value: function render() {
       
 26717       var _this$props2 = this.props,
       
 26718           children = _this$props2.children,
       
 26719           name = _this$props2.name,
       
 26720           _this$props2$bubblesV = _this$props2.bubblesVirtually,
       
 26721           bubblesVirtually = _this$props2$bubblesV === void 0 ? false : _this$props2$bubblesV,
       
 26722           _this$props2$fillProp = _this$props2.fillProps,
       
 26723           fillProps = _this$props2$fillProp === void 0 ? {} : _this$props2$fillProp,
       
 26724           getFills = _this$props2.getFills;
       
 26725 
       
 26726       if (bubblesVirtually) {
       
 26727         return Object(external_this_wp_element_["createElement"])("div", {
       
 26728           ref: this.bindNode
       
 26729         });
       
 26730       }
       
 26731 
       
 26732       var fills = Object(external_lodash_["map"])(getFills(name, this), function (fill) {
       
 26733         var fillKey = fill.occurrence;
       
 26734         var fillChildren = Object(external_lodash_["isFunction"])(fill.props.children) ? fill.props.children(fillProps) : fill.props.children;
       
 26735         return external_this_wp_element_["Children"].map(fillChildren, function (child, childIndex) {
       
 26736           if (!child || Object(external_lodash_["isString"])(child)) {
       
 26737             return child;
       
 26738           }
       
 26739 
       
 26740           var childKey = "".concat(fillKey, "---").concat(child.key || childIndex);
       
 26741           return Object(external_this_wp_element_["cloneElement"])(child, {
       
 26742             key: childKey
       
 26743           });
       
 26744         });
       
 26745       }).filter( // In some cases fills are rendered only when some conditions apply.
       
 26746       // This ensures that we only use non-empty fills when rendering, i.e.,
       
 26747       // it allows us to render wrappers only when the fills are actually present.
       
 26748       Object(external_lodash_["negate"])(external_this_wp_element_["isEmptyElement"]));
       
 26749       return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_lodash_["isFunction"])(children) ? children(fills) : fills);
       
 26750     }
       
 26751   }]);
       
 26752 
       
 26753   return SlotComponent;
       
 26754 }(external_this_wp_element_["Component"]);
       
 26755 
       
 26756 var slot_Slot = function Slot(props) {
       
 26757   return Object(external_this_wp_element_["createElement"])(context_Consumer, null, function (_ref) {
       
 26758     var registerSlot = _ref.registerSlot,
       
 26759         unregisterSlot = _ref.unregisterSlot,
       
 26760         getFills = _ref.getFills;
       
 26761     return Object(external_this_wp_element_["createElement"])(slot_SlotComponent, Object(esm_extends["a" /* default */])({}, props, {
       
 26762       registerSlot: registerSlot,
       
 26763       unregisterSlot: unregisterSlot,
       
 26764       getFills: getFills
       
 26765     }));
       
 26766   });
       
 26767 };
       
 26768 
       
 26769 /* harmony default export */ var slot_fill_slot = (slot_Slot);
       
 26770 
       
 26771 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/fill.js
       
 26772 
       
 26773 
       
 26774 
       
 26775 
       
 26776 
       
 26777 
       
 26778 
       
 26779 
       
 26780 /**
       
 26781  * External dependencies
       
 26782  */
       
 26783 
       
 26784 /**
       
 26785  * WordPress dependencies
       
 26786  */
       
 26787 
       
 26788 
       
 26789 /**
       
 26790  * Internal dependencies
       
 26791  */
       
 26792 
       
 26793 
       
 26794 var occurrences = 0;
       
 26795 
       
 26796 var fill_FillComponent =
       
 26797 /*#__PURE__*/
       
 26798 function (_Component) {
       
 26799   Object(inherits["a" /* default */])(FillComponent, _Component);
       
 26800 
       
 26801   function FillComponent() {
       
 26802     var _this;
       
 26803 
       
 26804     Object(classCallCheck["a" /* default */])(this, FillComponent);
       
 26805 
       
 26806     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FillComponent).apply(this, arguments));
       
 26807     _this.occurrence = ++occurrences;
       
 26808     return _this;
       
 26809   }
       
 26810 
       
 26811   Object(createClass["a" /* default */])(FillComponent, [{
       
 26812     key: "componentDidMount",
       
 26813     value: function componentDidMount() {
       
 26814       var registerFill = this.props.registerFill;
       
 26815       registerFill(this.props.name, this);
       
 26816     }
       
 26817   }, {
       
 26818     key: "componentWillUpdate",
       
 26819     value: function componentWillUpdate() {
       
 26820       if (!this.occurrence) {
       
 26821         this.occurrence = ++occurrences;
       
 26822       }
       
 26823 
       
 26824       var getSlot = this.props.getSlot;
       
 26825       var slot = getSlot(this.props.name);
       
 26826 
       
 26827       if (slot && !slot.props.bubblesVirtually) {
       
 26828         slot.forceUpdate();
       
 26829       }
       
 26830     }
       
 26831   }, {
       
 26832     key: "componentWillUnmount",
       
 26833     value: function componentWillUnmount() {
       
 26834       var unregisterFill = this.props.unregisterFill;
       
 26835       unregisterFill(this.props.name, this);
       
 26836     }
       
 26837   }, {
       
 26838     key: "componentDidUpdate",
       
 26839     value: function componentDidUpdate(prevProps) {
       
 26840       var _this$props = this.props,
       
 26841           name = _this$props.name,
       
 26842           unregisterFill = _this$props.unregisterFill,
       
 26843           registerFill = _this$props.registerFill;
       
 26844 
       
 26845       if (prevProps.name !== name) {
       
 26846         unregisterFill(prevProps.name, this);
       
 26847         registerFill(name, this);
       
 26848       }
       
 26849     }
       
 26850   }, {
       
 26851     key: "resetOccurrence",
       
 26852     value: function resetOccurrence() {
       
 26853       this.occurrence = null;
       
 26854     }
       
 26855   }, {
       
 26856     key: "render",
       
 26857     value: function render() {
       
 26858       var _this$props2 = this.props,
       
 26859           name = _this$props2.name,
       
 26860           getSlot = _this$props2.getSlot;
       
 26861       var children = this.props.children;
       
 26862       var slot = getSlot(name);
       
 26863 
       
 26864       if (!slot || !slot.node || !slot.props.bubblesVirtually) {
       
 26865         return null;
       
 26866       } // If a function is passed as a child, provide it with the fillProps.
       
 26867 
       
 26868 
       
 26869       if (Object(external_lodash_["isFunction"])(children)) {
       
 26870         children = children(slot.props.fillProps);
       
 26871       }
       
 26872 
       
 26873       return Object(external_this_wp_element_["createPortal"])(children, slot.node);
       
 26874     }
       
 26875   }]);
       
 26876 
       
 26877   return FillComponent;
       
 26878 }(external_this_wp_element_["Component"]);
       
 26879 
       
 26880 var fill_Fill = function Fill(props) {
       
 26881   return Object(external_this_wp_element_["createElement"])(context_Consumer, null, function (_ref) {
       
 26882     var getSlot = _ref.getSlot,
       
 26883         registerFill = _ref.registerFill,
       
 26884         unregisterFill = _ref.unregisterFill;
       
 26885     return Object(external_this_wp_element_["createElement"])(fill_FillComponent, Object(esm_extends["a" /* default */])({}, props, {
       
 26886       getSlot: getSlot,
       
 26887       registerFill: registerFill,
       
 26888       unregisterFill: unregisterFill
       
 26889     }));
       
 26890   });
       
 26891 };
       
 26892 
       
 26893 /* harmony default export */ var slot_fill_fill = (fill_Fill);
       
 26894 
       
 26895 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/index.js
       
 26896 
       
 26897 
       
 26898 
       
 26899 /**
       
 26900  * Internal dependencies
       
 26901  */
       
 26902 
       
 26903 
       
 26904 
       
 26905 
       
 26906 
       
 26907 
       
 26908 function createSlotFill(name) {
       
 26909   var FillComponent = function FillComponent(props) {
       
 26910     return Object(external_this_wp_element_["createElement"])(slot_fill_fill, Object(esm_extends["a" /* default */])({
       
 26911       name: name
       
 26912     }, props));
       
 26913   };
       
 26914 
       
 26915   FillComponent.displayName = name + 'Fill';
       
 26916 
       
 26917   var SlotComponent = function SlotComponent(props) {
       
 26918     return Object(external_this_wp_element_["createElement"])(slot_fill_slot, Object(esm_extends["a" /* default */])({
       
 26919       name: name
       
 26920     }, props));
       
 26921   };
       
 26922 
       
 26923   SlotComponent.displayName = name + 'Slot';
       
 26924   return {
       
 26925     Fill: FillComponent,
       
 26926     Slot: SlotComponent
       
 26927   };
       
 26928 }
       
 26929 
       
 26930 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/popover/index.js
       
 26931 
       
 26932 
       
 26933 
       
 26934 
       
 26935 
       
 26936 
       
 26937 
       
 26938 
       
 26939 
       
 26940 
       
 26941 /**
       
 26942  * External dependencies
       
 26943  */
       
 26944 
       
 26945 /**
       
 26946  * WordPress dependencies
       
 26947  */
       
 26948 
       
 26949 
       
 26950 
       
 26951 
       
 26952 
       
 26953 /**
       
 26954  * Internal dependencies
       
 26955  */
       
 26956 
       
 26957 
       
 26958 
       
 26959 
       
 26960 
       
 26961 
       
 26962 
       
 26963 
       
 26964 
       
 26965 
       
 26966 var FocusManaged = with_constrained_tabbing(with_focus_return(function (_ref) {
       
 26967   var children = _ref.children;
       
 26968   return children;
       
 26969 }));
       
 26970 /**
       
 26971  * Name of slot in which popover should fill.
       
 26972  *
       
 26973  * @type {String}
       
 26974  */
       
 26975 
       
 26976 var SLOT_NAME = 'Popover';
       
 26977 
       
 26978 var popover_Popover =
       
 26979 /*#__PURE__*/
       
 26980 function (_Component) {
       
 26981   Object(inherits["a" /* default */])(Popover, _Component);
       
 26982 
       
 26983   function Popover() {
       
 26984     var _this;
       
 26985 
       
 26986     Object(classCallCheck["a" /* default */])(this, Popover);
       
 26987 
       
 26988     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Popover).apply(this, arguments));
       
 26989     _this.getAnchorRect = _this.getAnchorRect.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26990     _this.computePopoverPosition = _this.computePopoverPosition.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26991     _this.maybeClose = _this.maybeClose.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26992     _this.throttledRefresh = _this.throttledRefresh.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26993     _this.refresh = _this.refresh.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26994     _this.refreshOnAnchorMove = _this.refreshOnAnchorMove.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 26995     _this.contentNode = Object(external_this_wp_element_["createRef"])();
       
 26996     _this.anchorNode = Object(external_this_wp_element_["createRef"])();
       
 26997     _this.state = {
       
 26998       popoverLeft: null,
       
 26999       popoverTop: null,
       
 27000       yAxis: 'top',
       
 27001       xAxis: 'center',
       
 27002       contentHeight: null,
       
 27003       contentWidth: null,
       
 27004       isMobile: false,
       
 27005       popoverSize: null,
       
 27006       // Delay the animation after the initial render
       
 27007       // because the animation have impact on the height of the popover
       
 27008       // causing the computed position to be wrong.
       
 27009       isReadyToAnimate: false
       
 27010     }; // Property used keep track of the previous anchor rect
       
 27011     // used to compute the popover position and size.
       
 27012 
       
 27013     _this.anchorRect = {};
       
 27014     return _this;
       
 27015   }
       
 27016 
       
 27017   Object(createClass["a" /* default */])(Popover, [{
       
 27018     key: "componentDidMount",
       
 27019     value: function componentDidMount() {
       
 27020       var _this2 = this;
       
 27021 
       
 27022       this.toggleAutoRefresh(!this.props.hasOwnProperty('anchorRect'));
       
 27023       this.refresh();
       
 27024       /*
       
 27025        * Without the setTimeout, the dom node is not being focused. Related:
       
 27026        * https://stackoverflow.com/questions/35522220/react-ref-with-focus-doesnt-work-without-settimeout-my-example
       
 27027        *
       
 27028        * TODO: Treat the cause, not the symptom.
       
 27029        */
       
 27030 
       
 27031       this.focusTimeout = setTimeout(function () {
       
 27032         _this2.focus();
       
 27033       }, 0);
       
 27034     }
       
 27035   }, {
       
 27036     key: "componentDidUpdate",
       
 27037     value: function componentDidUpdate(prevProps) {
       
 27038       if (prevProps.position !== this.props.position) {
       
 27039         this.computePopoverPosition(this.state.popoverSize, this.anchorRect);
       
 27040       }
       
 27041 
       
 27042       if (prevProps.anchorRect !== this.props.anchorRect) {
       
 27043         this.refreshOnAnchorMove();
       
 27044       }
       
 27045 
       
 27046       var hasAnchorRect = this.props.hasOwnProperty('anchorRect');
       
 27047 
       
 27048       if (hasAnchorRect !== prevProps.hasOwnProperty('anchorRect')) {
       
 27049         this.toggleAutoRefresh(!hasAnchorRect);
       
 27050       }
       
 27051     }
       
 27052   }, {
       
 27053     key: "componentWillUnmount",
       
 27054     value: function componentWillUnmount() {
       
 27055       clearTimeout(this.focusTimeout);
       
 27056       this.toggleAutoRefresh(false);
       
 27057     }
       
 27058   }, {
       
 27059     key: "toggleAutoRefresh",
       
 27060     value: function toggleAutoRefresh(isActive) {
       
 27061       window.cancelAnimationFrame(this.rafHandle); // Refresh the popover every time the window is resized or scrolled
       
 27062 
       
 27063       var handler = isActive ? 'addEventListener' : 'removeEventListener';
       
 27064       window[handler]('resize', this.throttledRefresh);
       
 27065       window[handler]('scroll', this.throttledRefresh, true);
       
 27066       /*
       
 27067        * There are sometimes we need to reposition or resize the popover that are not
       
 27068        * handled by the resize/scroll window events (i.e. CSS changes in the layout
       
 27069        * that changes the position of the anchor).
       
 27070        *
       
 27071        * For these situations, we refresh the popover every 0.5s
       
 27072        */
       
 27073 
       
 27074       if (isActive) {
       
 27075         this.autoRefresh = setInterval(this.refreshOnAnchorMove, 500);
       
 27076       } else {
       
 27077         clearInterval(this.autoRefresh);
       
 27078       }
       
 27079     }
       
 27080   }, {
       
 27081     key: "throttledRefresh",
       
 27082     value: function throttledRefresh(event) {
       
 27083       window.cancelAnimationFrame(this.rafHandle);
       
 27084 
       
 27085       if (event && event.type === 'scroll' && this.contentNode.current.contains(event.target)) {
       
 27086         return;
       
 27087       }
       
 27088 
       
 27089       this.rafHandle = window.requestAnimationFrame(this.refresh);
       
 27090     }
       
 27091     /**
       
 27092      * Calling refreshOnAnchorMove
       
 27093      * will only refresh the popover position if the anchor moves.
       
 27094      */
       
 27095 
       
 27096   }, {
       
 27097     key: "refreshOnAnchorMove",
       
 27098     value: function refreshOnAnchorMove() {
       
 27099       var anchorRect = this.getAnchorRect(this.anchorNode.current);
       
 27100       var didAnchorRectChange = !external_this_wp_isShallowEqual_default()(anchorRect, this.anchorRect);
       
 27101 
       
 27102       if (didAnchorRectChange) {
       
 27103         this.anchorRect = anchorRect;
       
 27104         this.computePopoverPosition(this.state.popoverSize, anchorRect);
       
 27105       }
       
 27106     }
       
 27107     /**
       
 27108      * Calling `refresh()` will force the Popover to recalculate its size and
       
 27109      * position. This is useful when a DOM change causes the anchor node to change
       
 27110      * position.
       
 27111      */
       
 27112 
       
 27113   }, {
       
 27114     key: "refresh",
       
 27115     value: function refresh() {
       
 27116       var anchorRect = this.getAnchorRect(this.anchorNode.current);
       
 27117       var contentRect = this.contentNode.current.getBoundingClientRect();
       
 27118       var popoverSize = {
       
 27119         width: contentRect.width,
       
 27120         height: contentRect.height
       
 27121       };
       
 27122       var didPopoverSizeChange = !this.state.popoverSize || popoverSize.width !== this.state.popoverSize.width || popoverSize.height !== this.state.popoverSize.height;
       
 27123 
       
 27124       if (didPopoverSizeChange) {
       
 27125         this.setState({
       
 27126           popoverSize: popoverSize,
       
 27127           isReadyToAnimate: true
       
 27128         });
       
 27129       }
       
 27130 
       
 27131       this.anchorRect = anchorRect;
       
 27132       this.computePopoverPosition(popoverSize, anchorRect);
       
 27133     }
       
 27134   }, {
       
 27135     key: "focus",
       
 27136     value: function focus() {
       
 27137       var focusOnMount = this.props.focusOnMount;
       
 27138 
       
 27139       if (!focusOnMount || !this.contentNode.current) {
       
 27140         return;
       
 27141       }
       
 27142 
       
 27143       if (focusOnMount === 'firstElement') {
       
 27144         // Find first tabbable node within content and shift focus, falling
       
 27145         // back to the popover panel itself.
       
 27146         var firstTabbable = external_this_wp_dom_["focus"].tabbable.find(this.contentNode.current)[0];
       
 27147 
       
 27148         if (firstTabbable) {
       
 27149           firstTabbable.focus();
       
 27150         } else {
       
 27151           this.contentNode.current.focus();
       
 27152         }
       
 27153 
       
 27154         return;
       
 27155       }
       
 27156 
       
 27157       if (focusOnMount === 'container') {
       
 27158         // Focus the popover panel itself so items in the popover are easily
       
 27159         // accessed via keyboard navigation.
       
 27160         this.contentNode.current.focus();
       
 27161       }
       
 27162     }
       
 27163   }, {
       
 27164     key: "getAnchorRect",
       
 27165     value: function getAnchorRect(anchor) {
       
 27166       var _this$props = this.props,
       
 27167           getAnchorRect = _this$props.getAnchorRect,
       
 27168           anchorRect = _this$props.anchorRect;
       
 27169 
       
 27170       if (anchorRect) {
       
 27171         return anchorRect;
       
 27172       }
       
 27173 
       
 27174       if (getAnchorRect) {
       
 27175         return getAnchorRect(anchor);
       
 27176       }
       
 27177 
       
 27178       if (!anchor || !anchor.parentNode) {
       
 27179         return;
       
 27180       }
       
 27181 
       
 27182       var rect = anchor.parentNode.getBoundingClientRect(); // subtract padding
       
 27183 
       
 27184       var _window$getComputedSt = window.getComputedStyle(anchor.parentNode),
       
 27185           paddingTop = _window$getComputedSt.paddingTop,
       
 27186           paddingBottom = _window$getComputedSt.paddingBottom;
       
 27187 
       
 27188       var topPad = parseInt(paddingTop, 10);
       
 27189       var bottomPad = parseInt(paddingBottom, 10);
       
 27190       return {
       
 27191         x: rect.left,
       
 27192         y: rect.top + topPad,
       
 27193         width: rect.width,
       
 27194         height: rect.height - topPad - bottomPad,
       
 27195         left: rect.left,
       
 27196         right: rect.right,
       
 27197         top: rect.top + topPad,
       
 27198         bottom: rect.bottom - bottomPad
       
 27199       };
       
 27200     }
       
 27201   }, {
       
 27202     key: "computePopoverPosition",
       
 27203     value: function computePopoverPosition(popoverSize, anchorRect) {
       
 27204       var _this$props2 = this.props,
       
 27205           _this$props2$position = _this$props2.position,
       
 27206           position = _this$props2$position === void 0 ? 'top' : _this$props2$position,
       
 27207           expandOnMobile = _this$props2.expandOnMobile;
       
 27208 
       
 27209       var newPopoverPosition = utils_computePopoverPosition(anchorRect, popoverSize, position, expandOnMobile);
       
 27210 
       
 27211       if (this.state.yAxis !== newPopoverPosition.yAxis || this.state.xAxis !== newPopoverPosition.xAxis || this.state.popoverLeft !== newPopoverPosition.popoverLeft || this.state.popoverTop !== newPopoverPosition.popoverTop || this.state.contentHeight !== newPopoverPosition.contentHeight || this.state.contentWidth !== newPopoverPosition.contentWidth || this.state.isMobile !== newPopoverPosition.isMobile) {
       
 27212         this.setState(newPopoverPosition);
       
 27213       }
       
 27214     }
       
 27215   }, {
       
 27216     key: "maybeClose",
       
 27217     value: function maybeClose(event) {
       
 27218       var _this$props3 = this.props,
       
 27219           onKeyDown = _this$props3.onKeyDown,
       
 27220           onClose = _this$props3.onClose; // Close on escape
       
 27221 
       
 27222       if (event.keyCode === external_this_wp_keycodes_["ESCAPE"] && onClose) {
       
 27223         event.stopPropagation();
       
 27224         onClose();
       
 27225       } // Preserve original content prop behavior
       
 27226 
       
 27227 
       
 27228       if (onKeyDown) {
       
 27229         onKeyDown(event);
       
 27230       }
       
 27231     }
       
 27232   }, {
       
 27233     key: "render",
       
 27234     value: function render() {
       
 27235       var _this3 = this;
       
 27236 
       
 27237       var _this$props4 = this.props,
       
 27238           headerTitle = _this$props4.headerTitle,
       
 27239           onClose = _this$props4.onClose,
       
 27240           children = _this$props4.children,
       
 27241           className = _this$props4.className,
       
 27242           _this$props4$onClickO = _this$props4.onClickOutside,
       
 27243           onClickOutside = _this$props4$onClickO === void 0 ? onClose : _this$props4$onClickO,
       
 27244           noArrow = _this$props4.noArrow,
       
 27245           position = _this$props4.position,
       
 27246           range = _this$props4.range,
       
 27247           focusOnMount = _this$props4.focusOnMount,
       
 27248           getAnchorRect = _this$props4.getAnchorRect,
       
 27249           expandOnMobile = _this$props4.expandOnMobile,
       
 27250           _this$props4$animate = _this$props4.animate,
       
 27251           animate = _this$props4$animate === void 0 ? true : _this$props4$animate,
       
 27252           contentProps = Object(objectWithoutProperties["a" /* default */])(_this$props4, ["headerTitle", "onClose", "children", "className", "onClickOutside", "noArrow", "position", "range", "focusOnMount", "getAnchorRect", "expandOnMobile", "animate"]);
       
 27253 
       
 27254       var _this$state = this.state,
       
 27255           popoverLeft = _this$state.popoverLeft,
       
 27256           popoverTop = _this$state.popoverTop,
       
 27257           yAxis = _this$state.yAxis,
       
 27258           xAxis = _this$state.xAxis,
       
 27259           contentHeight = _this$state.contentHeight,
       
 27260           contentWidth = _this$state.contentWidth,
       
 27261           popoverSize = _this$state.popoverSize,
       
 27262           isMobile = _this$state.isMobile,
       
 27263           isReadyToAnimate = _this$state.isReadyToAnimate; // Compute the animation position
       
 27264 
       
 27265       var yAxisMapping = {
       
 27266         top: 'bottom',
       
 27267         bottom: 'top'
       
 27268       };
       
 27269       var xAxisMapping = {
       
 27270         left: 'right',
       
 27271         right: 'left'
       
 27272       };
       
 27273       var animateYAxis = yAxisMapping[yAxis] || 'middle';
       
 27274       var animateXAxis = xAxisMapping[xAxis] || 'center';
       
 27275       var classes = classnames_default()('components-popover', className, 'is-' + yAxis, 'is-' + xAxis, {
       
 27276         'is-mobile': isMobile,
       
 27277         'is-without-arrow': noArrow || xAxis === 'center' && yAxis === 'middle'
       
 27278       }); // Disable reason: We care to capture the _bubbled_ events from inputs
       
 27279       // within popover as inferring close intent.
       
 27280 
       
 27281       /* eslint-disable jsx-a11y/no-static-element-interactions */
       
 27282 
       
 27283       var content = Object(external_this_wp_element_["createElement"])(detect_outside, {
       
 27284         onClickOutside: onClickOutside
       
 27285       }, Object(external_this_wp_element_["createElement"])(build_module_animate, {
       
 27286         type: animate && isReadyToAnimate ? 'appear' : null,
       
 27287         options: {
       
 27288           origin: animateYAxis + ' ' + animateXAxis
       
 27289         }
       
 27290       }, function (_ref2) {
       
 27291         var animateClassName = _ref2.className;
       
 27292         return Object(external_this_wp_element_["createElement"])(isolated_event_container, Object(esm_extends["a" /* default */])({
       
 27293           className: classnames_default()(classes, animateClassName),
       
 27294           style: {
       
 27295             top: !isMobile && popoverTop ? popoverTop + 'px' : undefined,
       
 27296             left: !isMobile && popoverLeft ? popoverLeft + 'px' : undefined,
       
 27297             visibility: popoverSize ? undefined : 'hidden'
       
 27298           }
       
 27299         }, contentProps, {
       
 27300           onKeyDown: _this3.maybeClose
       
 27301         }), isMobile && Object(external_this_wp_element_["createElement"])("div", {
       
 27302           className: "components-popover__header"
       
 27303         }, Object(external_this_wp_element_["createElement"])("span", {
       
 27304           className: "components-popover__header-title"
       
 27305         }, headerTitle), Object(external_this_wp_element_["createElement"])(icon_button, {
       
 27306           className: "components-popover__close",
       
 27307           icon: "no-alt",
       
 27308           onClick: onClose
       
 27309         })), Object(external_this_wp_element_["createElement"])("div", {
       
 27310           ref: _this3.contentNode,
       
 27311           className: "components-popover__content",
       
 27312           style: {
       
 27313             maxHeight: !isMobile && contentHeight ? contentHeight + 'px' : undefined,
       
 27314             maxWidth: !isMobile && contentWidth ? contentWidth + 'px' : undefined
       
 27315           },
       
 27316           tabIndex: "-1"
       
 27317         }, children));
       
 27318       }));
       
 27319       /* eslint-enable jsx-a11y/no-static-element-interactions */
       
 27320       // Apply focus to element as long as focusOnMount is truthy; false is
       
 27321       // the only "disabled" value.
       
 27322 
       
 27323       if (focusOnMount) {
       
 27324         content = Object(external_this_wp_element_["createElement"])(FocusManaged, null, content);
       
 27325       }
       
 27326 
       
 27327       return Object(external_this_wp_element_["createElement"])(context_Consumer, null, function (_ref3) {
       
 27328         var getSlot = _ref3.getSlot;
       
 27329 
       
 27330         // In case there is no slot context in which to render,
       
 27331         // default to an in-place rendering.
       
 27332         if (getSlot && getSlot(SLOT_NAME)) {
       
 27333           content = Object(external_this_wp_element_["createElement"])(slot_fill_fill, {
       
 27334             name: SLOT_NAME
       
 27335           }, content);
       
 27336         }
       
 27337 
       
 27338         return Object(external_this_wp_element_["createElement"])("span", {
       
 27339           ref: _this3.anchorNode
       
 27340         }, content, isMobile && expandOnMobile && Object(external_this_wp_element_["createElement"])(scroll_lock, null));
       
 27341       });
       
 27342     }
       
 27343   }]);
       
 27344 
       
 27345   return Popover;
       
 27346 }(external_this_wp_element_["Component"]);
       
 27347 
       
 27348 popover_Popover.defaultProps = {
       
 27349   focusOnMount: 'firstElement',
       
 27350   noArrow: false
       
 27351 };
       
 27352 var PopoverContainer = popover_Popover;
       
 27353 
       
 27354 PopoverContainer.Slot = function () {
       
 27355   return Object(external_this_wp_element_["createElement"])(slot_fill_slot, {
       
 27356     bubblesVirtually: true,
       
 27357     name: SLOT_NAME
       
 27358   });
       
 27359 };
       
 27360 
       
 27361 /* harmony default export */ var popover = (PopoverContainer);
       
 27362 
 21589 
 27363 // EXTERNAL MODULE: external {"this":["wp","a11y"]}
 21590 // EXTERNAL MODULE: external {"this":["wp","a11y"]}
 27364 var external_this_wp_a11y_ = __webpack_require__(48);
 21591 var external_this_wp_a11y_ = __webpack_require__(54);
 27365 
 21592 
 27366 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-spoken-messages/index.js
 21593 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-spoken-messages/index.js
 27367 
 21594 
 27368 
 21595 
 27369 
 21596 
 27370 
 21597 
 27371 
 21598 
 27372 
 21599 
 27373 
 21600 
 27374 
 21601 
       
 21602 
       
 21603 function _createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 21604 
       
 21605 function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 27375 
 21606 
 27376 /**
 21607 /**
 27377  * External dependencies
 21608  * External dependencies
 27378  */
 21609  */
 27379 
 21610 
 27386 
 21617 
 27387 /**
 21618 /**
 27388  * A Higher Order Component used to be provide a unique instance ID by
 21619  * A Higher Order Component used to be provide a unique instance ID by
 27389  * component.
 21620  * component.
 27390  *
 21621  *
 27391  * @param {WPElement} WrappedComponent  The wrapped component.
 21622  * @param {WPComponent} WrappedComponent  The wrapped component.
 27392  *
 21623  *
 27393  * @return {Component} Component with an instanceId prop.
 21624  * @return {WPComponent} The component to be rendered.
 27394  */
 21625  */
 27395 
 21626 
 27396 /* harmony default export */ var with_spoken_messages = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
 21627 /* harmony default export */ var with_spoken_messages = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
 27397   return (
 21628   return /*#__PURE__*/function (_Component) {
 27398     /*#__PURE__*/
 21629     Object(inherits["a" /* default */])(_class, _Component);
 27399     function (_Component) {
 21630 
 27400       Object(inherits["a" /* default */])(_class, _Component);
 21631     var _super = _createSuper(_class);
 27401 
 21632 
 27402       function _class() {
 21633     function _class() {
 27403         var _this;
 21634       var _this;
 27404 
 21635 
 27405         Object(classCallCheck["a" /* default */])(this, _class);
 21636       Object(classCallCheck["a" /* default */])(this, _class);
 27406 
 21637 
 27407         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(_class).apply(this, arguments));
 21638       _this = _super.apply(this, arguments);
 27408         _this.debouncedSpeak = Object(external_lodash_["debounce"])(_this.speak.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this))), 500);
 21639       _this.debouncedSpeak = Object(external_this_lodash_["debounce"])(_this.speak.bind(Object(assertThisInitialized["a" /* default */])(_this)), 500);
 27409         return _this;
 21640       return _this;
       
 21641     }
       
 21642 
       
 21643     Object(createClass["a" /* default */])(_class, [{
       
 21644       key: "speak",
       
 21645       value: function speak(message) {
       
 21646         var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'polite';
       
 21647 
       
 21648         Object(external_this_wp_a11y_["speak"])(message, type);
 27410       }
 21649       }
 27411 
 21650     }, {
 27412       Object(createClass["a" /* default */])(_class, [{
 21651       key: "componentWillUnmount",
 27413         key: "speak",
 21652       value: function componentWillUnmount() {
 27414         value: function speak(message) {
 21653         this.debouncedSpeak.cancel();
 27415           var type = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'polite';
 21654       }
 27416 
 21655     }, {
 27417           Object(external_this_wp_a11y_["speak"])(message, type);
 21656       key: "render",
 27418         }
 21657       value: function render() {
 27419       }, {
 21658         return Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, this.props, {
 27420         key: "componentWillUnmount",
 21659           speak: this.speak,
 27421         value: function componentWillUnmount() {
 21660           debouncedSpeak: this.debouncedSpeak
 27422           this.debouncedSpeak.cancel();
 21661         }));
 27423         }
 21662       }
 27424       }, {
 21663     }]);
 27425         key: "render",
 21664 
 27426         value: function render() {
 21665     return _class;
 27427           return Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, this.props, {
 21666   }(external_this_wp_element_["Component"]);
 27428             speak: this.speak,
       
 27429             debouncedSpeak: this.debouncedSpeak
       
 27430           }));
       
 27431         }
       
 27432       }]);
       
 27433 
       
 27434       return _class;
       
 27435     }(external_this_wp_element_["Component"])
       
 27436   );
       
 27437 }, 'withSpokenMessages'));
 21667 }, 'withSpokenMessages'));
 27438 
 21668 
 27439 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/autocomplete/index.js
 21669 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/autocomplete/index.js
 27440 
 21670 
 27441 
 21671 
 27445 
 21675 
 27446 
 21676 
 27447 
 21677 
 27448 
 21678 
 27449 
 21679 
       
 21680 function autocomplete_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (autocomplete_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 21681 
       
 21682 function autocomplete_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 27450 
 21683 
 27451 /**
 21684 /**
 27452  * External dependencies
 21685  * External dependencies
 27453  */
 21686  */
 27454 
 21687 
 27460 
 21693 
 27461 
 21694 
 27462 
 21695 
 27463 
 21696 
 27464 
 21697 
 27465 
       
 27466 /**
 21698 /**
 27467  * Internal dependencies
 21699  * Internal dependencies
 27468  */
 21700  */
 27469 
 21701 
 27470 
 21702 
 27471 
 21703 
 27472 
 21704 
 27473 
       
 27474 /**
 21705 /**
 27475  * A raw completer option.
 21706  * A raw completer option.
       
 21707  *
 27476  * @typedef {*} CompleterOption
 21708  * @typedef {*} CompleterOption
 27477  */
 21709  */
 27478 
 21710 
 27479 /**
 21711 /**
 27480  * @callback FnGetOptions
 21712  * @callback FnGetOptions
 27481  *
 21713  *
 27482  * @returns {(CompleterOption[]|Promise.<CompleterOption[]>)} The completer options or a promise for them.
 21714  * @return {(CompleterOption[]|Promise.<CompleterOption[]>)} The completer options or a promise for them.
 27483  */
 21715  */
 27484 
 21716 
 27485 /**
 21717 /**
 27486  * @callback FnGetOptionKeywords
 21718  * @callback FnGetOptionKeywords
 27487  * @param {CompleterOption} option a completer option.
 21719  * @param {CompleterOption} option a completer option.
 27488  *
 21720  *
 27489  * @returns {string[]} list of key words to search.
 21721  * @return {string[]} list of key words to search.
 27490  */
 21722  */
 27491 
 21723 
 27492 /**
 21724 /**
 27493  * @callback FnIsOptionDisabled
 21725  * @callback FnIsOptionDisabled
 27494  * @param {CompleterOption} option a completer option.
 21726  * @param {CompleterOption} option a completer option.
 27495  *
 21727  *
 27496  * @returns {string[]} whether or not the given option is disabled.
 21728  * @return {string[]} whether or not the given option is disabled.
 27497  */
 21729  */
 27498 
 21730 
 27499 /**
 21731 /**
 27500  * @callback FnGetOptionLabel
 21732  * @callback FnGetOptionLabel
 27501  * @param {CompleterOption} option a completer option.
 21733  * @param {CompleterOption} option a completer option.
 27502  *
 21734  *
 27503  * @returns {(string|Array.<(string|Component)>)} list of react components to render.
 21735  * @return {(string|Array.<(string|Component)>)} list of react components to render.
 27504  */
 21736  */
 27505 
 21737 
 27506 /**
 21738 /**
 27507  * @callback FnAllowNode
 21739  * @callback FnAllowContext
 27508  * @param {Node} textNode check if the completer can handle this text node.
 21740  * @param {string} before the string before the auto complete trigger and query.
       
 21741  * @param {string} after  the string after the autocomplete trigger and query.
 27509  *
 21742  *
 27510  * @returns {boolean} true if the completer can handle this text node.
 21743  * @return {boolean} true if the completer can handle.
 27511  */
 21744  */
 27512 
 21745 
 27513 /**
 21746 /**
 27514  * @callback FnAllowContext
 21747  * @typedef {Object} OptionCompletion
 27515  * @param {Range} before the range before the auto complete trigger and query.
 21748  * @property {'insert-at-caret'|'replace'} action the intended placement of the completion.
 27516  * @param {Range} after the range after the autocomplete trigger and query.
 21749  * @property {OptionCompletionValue} value the completion value.
       
 21750  */
       
 21751 
       
 21752 /**
       
 21753  * A completion value.
 27517  *
 21754  *
 27518  * @returns {boolean} true if the completer can handle these ranges.
 21755  * @typedef {(string|WPElement|Object)} OptionCompletionValue
 27519  */
       
 27520 
       
 27521 /**
       
 27522  * @typedef {Object} OptionCompletion
       
 27523  * @property {('insert-at-caret', 'replace')} action the intended placement of the completion.
       
 27524  * @property {OptionCompletionValue} value the completion value.
       
 27525  */
       
 27526 
       
 27527 /**
       
 27528  * A completion value.
       
 27529  * @typedef {(String|WPElement|Object)} OptionCompletionValue
       
 27530  */
 21756  */
 27531 
 21757 
 27532 /**
 21758 /**
 27533  * @callback FnGetOptionCompletion
 21759  * @callback FnGetOptionCompletion
 27534  * @param {CompleterOption} value the value of the completer option.
 21760  * @param {CompleterOption} value the value of the completer option.
 27535  * @param {Range} range the nodes included in the autocomplete trigger and query.
 21761  * @param {string} query the text value of the autocomplete query.
 27536  * @param {String} query the text value of the autocomplete query.
       
 27537  *
 21762  *
 27538  * @returns {(OptionCompletion|OptionCompletionValue)} the completion for the given option. If an
 21763  * @return {(OptionCompletion|OptionCompletionValue)} the completion for the given option. If an
 27539  * 													   OptionCompletionValue is returned, the
 21764  * 													   OptionCompletionValue is returned, the
 27540  * 													   completion action defaults to `insert-at-caret`.
 21765  * 													   completion action defaults to `insert-at-caret`.
 27541  */
 21766  */
 27542 
 21767 
 27543 /**
 21768 /**
 27544  * @typedef {Object} Completer
 21769  * @typedef {Object} WPCompleter
 27545  * @property {String} name a way to identify a completer, useful for selective overriding.
 21770  * @property {string} name a way to identify a completer, useful for selective overriding.
 27546  * @property {?String} className A class to apply to the popup menu.
 21771  * @property {?string} className A class to apply to the popup menu.
 27547  * @property {String} triggerPrefix the prefix that will display the menu.
 21772  * @property {string} triggerPrefix the prefix that will display the menu.
 27548  * @property {(CompleterOption[]|FnGetOptions)} options the completer options or a function to get them.
 21773  * @property {(CompleterOption[]|FnGetOptions)} options the completer options or a function to get them.
 27549  * @property {?FnGetOptionKeywords} getOptionKeywords get the keywords for a given option.
 21774  * @property {?FnGetOptionKeywords} getOptionKeywords get the keywords for a given option.
 27550  * @property {?FnIsOptionDisabled} isOptionDisabled get whether or not the given option is disabled.
 21775  * @property {?FnIsOptionDisabled} isOptionDisabled get whether or not the given option is disabled.
 27551  * @property {FnGetOptionLabel} getOptionLabel get the label for a given option.
 21776  * @property {FnGetOptionLabel} getOptionLabel get the label for a given option.
 27552  * @property {?FnAllowNode} allowNode filter the allowed text nodes in the autocomplete.
       
 27553  * @property {?FnAllowContext} allowContext filter the context under which the autocomplete activates.
 21777  * @property {?FnAllowContext} allowContext filter the context under which the autocomplete activates.
 27554  * @property {FnGetOptionCompletion} getOptionCompletion get the completion associated with a given option.
 21778  * @property {FnGetOptionCompletion} getOptionCompletion get the completion associated with a given option.
 27555  */
 21779  */
 27556 
 21780 
 27557 function filterOptions(search) {
 21781 function filterOptions(search) {
 27568     if ('string' === typeof option.label) {
 21792     if ('string' === typeof option.label) {
 27569       keywords = [].concat(Object(toConsumableArray["a" /* default */])(keywords), [option.label]);
 21793       keywords = [].concat(Object(toConsumableArray["a" /* default */])(keywords), [option.label]);
 27570     }
 21794     }
 27571 
 21795 
 27572     var isMatch = keywords.some(function (keyword) {
 21796     var isMatch = keywords.some(function (keyword) {
 27573       return search.test(Object(external_lodash_["deburr"])(keyword));
 21797       return search.test(Object(external_this_lodash_["deburr"])(keyword));
 27574     });
 21798     });
 27575 
 21799 
 27576     if (!isMatch) {
 21800     if (!isMatch) {
 27577       continue;
 21801       continue;
 27578     }
 21802     }
 27585   }
 21809   }
 27586 
 21810 
 27587   return filtered;
 21811   return filtered;
 27588 }
 21812 }
 27589 
 21813 
 27590 function getCaretRect() {
 21814 function getRange() {
 27591   var range = window.getSelection().getRangeAt(0);
 21815   var selection = window.getSelection();
 27592 
 21816   return selection.rangeCount ? selection.getRangeAt(0) : null;
 27593   if (range) {
 21817 }
 27594     return Object(external_this_wp_dom_["getRectangleFromRange"])(range);
 21818 
 27595   }
 21819 var autocomplete_getAutoCompleterUI = function getAutoCompleterUI(autocompleter) {
 27596 }
 21820   var useItems = autocompleter.useItems ? autocompleter.useItems : function (filterValue) {
 27597 
 21821     var _useState = Object(external_this_wp_element_["useState"])([]),
 27598 var autocomplete_Autocomplete =
 21822         _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
 27599 /*#__PURE__*/
 21823         items = _useState2[0],
 27600 function (_Component) {
 21824         setItems = _useState2[1];
       
 21825     /*
       
 21826      * We support both synchronous and asynchronous retrieval of completer options
       
 21827      * but internally treat all as async so we maintain a single, consistent code path.
       
 21828      *
       
 21829      * Because networks can be slow, and the internet is wonderfully unpredictable,
       
 21830      * we don't want two promises updating the state at once. This ensures that only
       
 21831      * the most recent promise will act on `optionsData`. This doesn't use the state
       
 21832      * because `setState` is batched, and so there's no guarantee that setting
       
 21833      * `activePromise` in the state would result in it actually being in `this.state`
       
 21834      * before the promise resolves and we check to see if this is the active promise or not.
       
 21835      */
       
 21836 
       
 21837 
       
 21838     Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 21839       var options = autocompleter.options,
       
 21840           isDebounced = autocompleter.isDebounced;
       
 21841       var loadOptions = Object(external_this_lodash_["debounce"])(function () {
       
 21842         var promise = Promise.resolve(typeof options === 'function' ? options(filterValue) : options).then(function (optionsData) {
       
 21843           if (promise.canceled) {
       
 21844             return;
       
 21845           }
       
 21846 
       
 21847           var keyedOptions = optionsData.map(function (optionData, optionIndex) {
       
 21848             return {
       
 21849               key: "".concat(autocompleter.name, "-").concat(optionIndex),
       
 21850               value: optionData,
       
 21851               label: autocompleter.getOptionLabel(optionData),
       
 21852               keywords: autocompleter.getOptionKeywords ? autocompleter.getOptionKeywords(optionData) : [],
       
 21853               isDisabled: autocompleter.isOptionDisabled ? autocompleter.isOptionDisabled(optionData) : false
       
 21854             };
       
 21855           }); // create a regular expression to filter the options
       
 21856 
       
 21857           var search = new RegExp('(?:\\b|\\s|^)' + Object(external_this_lodash_["escapeRegExp"])(filterValue), 'i');
       
 21858           setItems(filterOptions(search, keyedOptions));
       
 21859         });
       
 21860         return promise;
       
 21861       }, isDebounced ? 250 : 0);
       
 21862       var promise = loadOptions();
       
 21863       return function () {
       
 21864         loadOptions.cancel();
       
 21865 
       
 21866         if (promise) {
       
 21867           promise.canceled = true;
       
 21868         }
       
 21869       };
       
 21870     }, [filterValue]);
       
 21871     return [items];
       
 21872   };
       
 21873 
       
 21874   function AutocompleterUI(_ref) {
       
 21875     var filterValue = _ref.filterValue,
       
 21876         instanceId = _ref.instanceId,
       
 21877         listBoxId = _ref.listBoxId,
       
 21878         className = _ref.className,
       
 21879         selectedIndex = _ref.selectedIndex,
       
 21880         onChangeOptions = _ref.onChangeOptions,
       
 21881         onSelect = _ref.onSelect,
       
 21882         onReset = _ref.onReset;
       
 21883 
       
 21884     var _useItems = useItems(filterValue),
       
 21885         _useItems2 = Object(slicedToArray["a" /* default */])(_useItems, 1),
       
 21886         items = _useItems2[0];
       
 21887 
       
 21888     Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 21889       onChangeOptions(items);
       
 21890     }, [items]);
       
 21891 
       
 21892     if (!items.length > 0) {
       
 21893       return null;
       
 21894     }
       
 21895 
       
 21896     return Object(external_this_wp_element_["createElement"])(popover["a" /* default */], {
       
 21897       focusOnMount: false,
       
 21898       onClose: onReset,
       
 21899       position: "top right",
       
 21900       className: "components-autocomplete__popover",
       
 21901       anchorRef: getRange()
       
 21902     }, Object(external_this_wp_element_["createElement"])("div", {
       
 21903       id: listBoxId,
       
 21904       role: "listbox",
       
 21905       className: "components-autocomplete__results"
       
 21906     }, Object(external_this_lodash_["map"])(items, function (option, index) {
       
 21907       return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 21908         key: option.key,
       
 21909         id: "components-autocomplete-item-".concat(instanceId, "-").concat(option.key),
       
 21910         role: "option",
       
 21911         "aria-selected": index === selectedIndex,
       
 21912         disabled: option.isDisabled,
       
 21913         className: classnames_default()('components-autocomplete__result', className, {
       
 21914           'is-selected': index === selectedIndex
       
 21915         }),
       
 21916         onClick: function onClick() {
       
 21917           return onSelect(option);
       
 21918         }
       
 21919       }, option.label);
       
 21920     })));
       
 21921   }
       
 21922 
       
 21923   return AutocompleterUI;
       
 21924 };
       
 21925 
       
 21926 var autocomplete_Autocomplete = /*#__PURE__*/function (_Component) {
 27601   Object(inherits["a" /* default */])(Autocomplete, _Component);
 21927   Object(inherits["a" /* default */])(Autocomplete, _Component);
       
 21928 
       
 21929   var _super = autocomplete_createSuper(Autocomplete);
 27602 
 21930 
 27603   Object(createClass["a" /* default */])(Autocomplete, null, [{
 21931   Object(createClass["a" /* default */])(Autocomplete, null, [{
 27604     key: "getInitialState",
 21932     key: "getInitialState",
 27605     value: function getInitialState() {
 21933     value: function getInitialState() {
 27606       return {
 21934       return {
 27607         search: /./,
       
 27608         selectedIndex: 0,
 21935         selectedIndex: 0,
 27609         suppress: undefined,
 21936         filteredOptions: [],
 27610         open: undefined,
 21937         filterValue: '',
 27611         query: undefined,
 21938         autocompleter: null,
 27612         filteredOptions: []
 21939         AutocompleterUI: null
 27613       };
 21940       };
 27614     }
 21941     }
 27615   }]);
 21942   }]);
 27616 
 21943 
 27617   function Autocomplete() {
 21944   function Autocomplete() {
 27618     var _this;
 21945     var _this;
 27619 
 21946 
 27620     Object(classCallCheck["a" /* default */])(this, Autocomplete);
 21947     Object(classCallCheck["a" /* default */])(this, Autocomplete);
 27621 
 21948 
 27622     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Autocomplete).apply(this, arguments));
 21949     _this = _super.apply(this, arguments);
 27623     _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 21950     _this.select = _this.select.bind(Object(assertThisInitialized["a" /* default */])(_this));
 27624     _this.select = _this.select.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 21951     _this.reset = _this.reset.bind(Object(assertThisInitialized["a" /* default */])(_this));
 27625     _this.reset = _this.reset.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 21952     _this.onChangeOptions = _this.onChangeOptions.bind(Object(assertThisInitialized["a" /* default */])(_this));
 27626     _this.resetWhenSuppressed = _this.resetWhenSuppressed.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 21953     _this.handleKeyDown = _this.handleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 27627     _this.handleKeyDown = _this.handleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 27628     _this.debouncedLoadOptions = Object(external_lodash_["debounce"])(_this.loadOptions, 250);
       
 27629     _this.state = _this.constructor.getInitialState();
 21954     _this.state = _this.constructor.getInitialState();
 27630     return _this;
 21955     return _this;
 27631   }
 21956   }
 27632 
 21957 
 27633   Object(createClass["a" /* default */])(Autocomplete, [{
 21958   Object(createClass["a" /* default */])(Autocomplete, [{
 27634     key: "bindNode",
       
 27635     value: function bindNode(node) {
       
 27636       this.node = node;
       
 27637     }
       
 27638   }, {
       
 27639     key: "insertCompletion",
 21959     key: "insertCompletion",
 27640     value: function insertCompletion(replacement) {
 21960     value: function insertCompletion(replacement) {
 27641       var _this$state = this.state,
 21961       var _this$state = this.state,
 27642           open = _this$state.open,
 21962           autocompleter = _this$state.autocompleter,
 27643           query = _this$state.query;
 21963           filterValue = _this$state.filterValue;
 27644       var _this$props = this.props,
 21964       var _this$props = this.props,
 27645           record = _this$props.record,
 21965           record = _this$props.record,
 27646           onChange = _this$props.onChange;
 21966           onChange = _this$props.onChange;
 27647       var end = record.start;
 21967       var end = record.start;
 27648       var start = end - open.triggerPrefix.length - query.length;
 21968       var start = end - autocompleter.triggerPrefix.length - filterValue.length;
 27649       var toInsert = Object(external_this_wp_richText_["create"])({
 21969       var toInsert = Object(external_this_wp_richText_["create"])({
 27650         html: Object(external_this_wp_element_["renderToString"])(replacement)
 21970         html: Object(external_this_wp_element_["renderToString"])(replacement)
 27651       });
 21971       });
 27652       onChange(Object(external_this_wp_richText_["insert"])(record, toInsert, start, end));
 21972       onChange(Object(external_this_wp_richText_["insert"])(record, toInsert, start, end));
 27653     }
 21973     }
 27654   }, {
 21974   }, {
 27655     key: "select",
 21975     key: "select",
 27656     value: function select(option) {
 21976     value: function select(option) {
 27657       var onReplace = this.props.onReplace;
 21977       var onReplace = this.props.onReplace;
 27658       var _this$state2 = this.state,
 21978       var _this$state2 = this.state,
 27659           open = _this$state2.open,
 21979           autocompleter = _this$state2.autocompleter,
 27660           query = _this$state2.query;
 21980           filterValue = _this$state2.filterValue;
 27661 
 21981 
 27662       var _ref = open || {},
 21982       var _ref2 = autocompleter || {},
 27663           getOptionCompletion = _ref.getOptionCompletion;
 21983           getOptionCompletion = _ref2.getOptionCompletion;
 27664 
 21984 
 27665       if (option.isDisabled) {
 21985       if (option.isDisabled) {
 27666         return;
 21986         return;
 27667       }
 21987       }
 27668 
 21988 
 27669       if (getOptionCompletion) {
 21989       if (getOptionCompletion) {
 27670         var completion = getOptionCompletion(option.value, query);
 21990         var completion = getOptionCompletion(option.value, filterValue);
 27671 
 21991 
 27672         var _ref2 = undefined === completion.action || undefined === completion.value ? {
 21992         var _ref3 = undefined === completion.action || undefined === completion.value ? {
 27673           action: 'insert-at-caret',
 21993           action: 'insert-at-caret',
 27674           value: completion
 21994           value: completion
 27675         } : completion,
 21995         } : completion,
 27676             action = _ref2.action,
 21996             action = _ref3.action,
 27677             value = _ref2.value;
 21997             value = _ref3.value;
 27678 
 21998 
 27679         if ('replace' === action) {
 21999         if ('replace' === action) {
 27680           onReplace([value]);
 22000           onReplace([value]);
 27681         } else if ('insert-at-caret' === action) {
 22001         } else if ('insert-at-caret' === action) {
 27682           this.insertCompletion(value);
 22002           this.insertCompletion(value);
 27688       this.reset();
 22008       this.reset();
 27689     }
 22009     }
 27690   }, {
 22010   }, {
 27691     key: "reset",
 22011     key: "reset",
 27692     value: function reset() {
 22012     value: function reset() {
 27693       var isMounted = !!this.node; // Autocompletions may replace the block containing this component,
 22013       this.setState(this.constructor.getInitialState());
 27694       // so we make sure it is mounted before resetting the state.
       
 27695 
       
 27696       if (isMounted) {
       
 27697         this.setState(this.constructor.getInitialState());
       
 27698       }
       
 27699     }
       
 27700   }, {
       
 27701     key: "resetWhenSuppressed",
       
 27702     value: function resetWhenSuppressed() {
       
 27703       var _this$state3 = this.state,
       
 27704           open = _this$state3.open,
       
 27705           suppress = _this$state3.suppress;
       
 27706 
       
 27707       if (open && suppress === open.idx) {
       
 27708         this.reset();
       
 27709       }
       
 27710     }
       
 27711   }, {
       
 27712     key: "handleFocusOutside",
       
 27713     value: function handleFocusOutside() {
       
 27714       this.reset();
       
 27715     }
 22014     }
 27716   }, {
 22015   }, {
 27717     key: "announce",
 22016     key: "announce",
 27718     value: function announce(filteredOptions) {
 22017     value: function announce(filteredOptions) {
 27719       var debouncedSpeak = this.props.debouncedSpeak;
 22018       var debouncedSpeak = this.props.debouncedSpeak;
 27721       if (!debouncedSpeak) {
 22020       if (!debouncedSpeak) {
 27722         return;
 22021         return;
 27723       }
 22022       }
 27724 
 22023 
 27725       if (!!filteredOptions.length) {
 22024       if (!!filteredOptions.length) {
 27726         debouncedSpeak(Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_n"])('%d result found, use up and down arrow keys to navigate.', '%d results found, use up and down arrow keys to navigate.', filteredOptions.length), filteredOptions.length), 'assertive');
 22025         debouncedSpeak(Object(external_this_wp_i18n_["sprintf"])(
       
 22026         /* translators: %d: number of results. */
       
 22027         Object(external_this_wp_i18n_["_n"])('%d result found, use up and down arrow keys to navigate.', '%d results found, use up and down arrow keys to navigate.', filteredOptions.length), filteredOptions.length), 'assertive');
 27727       } else {
 22028       } else {
 27728         debouncedSpeak(Object(external_this_wp_i18n_["__"])('No results.'), 'assertive');
 22029         debouncedSpeak(Object(external_this_wp_i18n_["__"])('No results.'), 'assertive');
 27729       }
 22030       }
 27730     }
 22031     }
 27731     /**
 22032     /**
 27732      * Load options for an autocompleter.
 22033      * Load options for an autocompleter.
 27733      *
 22034      *
 27734      * @param {Completer} completer The autocompleter.
 22035      * @param {Array} filteredOptions
 27735      * @param {string}    query     The query, if any.
       
 27736      */
 22036      */
 27737 
 22037 
 27738   }, {
 22038   }, {
 27739     key: "loadOptions",
 22039     key: "onChangeOptions",
 27740     value: function loadOptions(completer, query) {
 22040     value: function onChangeOptions(filteredOptions) {
 27741       var _this2 = this;
 22041       var selectedIndex = filteredOptions.length === this.state.filteredOptions.length ? this.state.selectedIndex : 0;
 27742 
 22042       this.setState({
 27743       var options = completer.options;
 22043         filteredOptions: filteredOptions,
 27744       /*
 22044         selectedIndex: selectedIndex
 27745        * We support both synchronous and asynchronous retrieval of completer options
       
 27746        * but internally treat all as async so we maintain a single, consistent code path.
       
 27747        *
       
 27748        * Because networks can be slow, and the internet is wonderfully unpredictable,
       
 27749        * we don't want two promises updating the state at once. This ensures that only
       
 27750        * the most recent promise will act on `optionsData`. This doesn't use the state
       
 27751        * because `setState` is batched, and so there's no guarantee that setting
       
 27752        * `activePromise` in the state would result in it actually being in `this.state`
       
 27753        * before the promise resolves and we check to see if this is the active promise or not.
       
 27754        */
       
 27755 
       
 27756       var promise = this.activePromise = Promise.resolve(typeof options === 'function' ? options(query) : options).then(function (optionsData) {
       
 27757         var _this2$setState;
       
 27758 
       
 27759         if (promise !== _this2.activePromise) {
       
 27760           // Another promise has become active since this one was asked to resolve, so do nothing,
       
 27761           // or else we might end triggering a race condition updating the state.
       
 27762           return;
       
 27763         }
       
 27764 
       
 27765         var keyedOptions = optionsData.map(function (optionData, optionIndex) {
       
 27766           return {
       
 27767             key: "".concat(completer.idx, "-").concat(optionIndex),
       
 27768             value: optionData,
       
 27769             label: completer.getOptionLabel(optionData),
       
 27770             keywords: completer.getOptionKeywords ? completer.getOptionKeywords(optionData) : [],
       
 27771             isDisabled: completer.isOptionDisabled ? completer.isOptionDisabled(optionData) : false
       
 27772           };
       
 27773         });
       
 27774         var filteredOptions = filterOptions(_this2.state.search, keyedOptions);
       
 27775         var selectedIndex = filteredOptions.length === _this2.state.filteredOptions.length ? _this2.state.selectedIndex : 0;
       
 27776 
       
 27777         _this2.setState((_this2$setState = {}, Object(defineProperty["a" /* default */])(_this2$setState, 'options_' + completer.idx, keyedOptions), Object(defineProperty["a" /* default */])(_this2$setState, "filteredOptions", filteredOptions), Object(defineProperty["a" /* default */])(_this2$setState, "selectedIndex", selectedIndex), _this2$setState));
       
 27778 
       
 27779         _this2.announce(filteredOptions);
       
 27780       });
 22045       });
       
 22046       this.announce(filteredOptions);
 27781     }
 22047     }
 27782   }, {
 22048   }, {
 27783     key: "handleKeyDown",
 22049     key: "handleKeyDown",
 27784     value: function handleKeyDown(event) {
 22050     value: function handleKeyDown(event) {
 27785       var _this$state4 = this.state,
 22051       var _this$state3 = this.state,
 27786           open = _this$state4.open,
 22052           autocompleter = _this$state3.autocompleter,
 27787           suppress = _this$state4.suppress,
 22053           selectedIndex = _this$state3.selectedIndex,
 27788           selectedIndex = _this$state4.selectedIndex,
 22054           filteredOptions = _this$state3.filteredOptions;
 27789           filteredOptions = _this$state4.filteredOptions;
 22055 
 27790 
 22056       if (!autocompleter) {
 27791       if (!open) {
       
 27792         return;
       
 27793       }
       
 27794 
       
 27795       if (suppress === open.idx) {
       
 27796         switch (event.keyCode) {
       
 27797           // cancel popup suppression on CTRL+SPACE
       
 27798           case external_this_wp_keycodes_["SPACE"]:
       
 27799             var ctrlKey = event.ctrlKey,
       
 27800                 shiftKey = event.shiftKey,
       
 27801                 altKey = event.altKey,
       
 27802                 metaKey = event.metaKey;
       
 27803 
       
 27804             if (ctrlKey && !(shiftKey || altKey || metaKey)) {
       
 27805               this.setState({
       
 27806                 suppress: undefined
       
 27807               });
       
 27808               event.preventDefault();
       
 27809               event.stopPropagation();
       
 27810             }
       
 27811 
       
 27812             break;
       
 27813           // reset on cursor movement
       
 27814 
       
 27815           case external_this_wp_keycodes_["UP"]:
       
 27816           case external_this_wp_keycodes_["DOWN"]:
       
 27817           case external_this_wp_keycodes_["LEFT"]:
       
 27818           case external_this_wp_keycodes_["RIGHT"]:
       
 27819             this.reset();
       
 27820         }
       
 27821 
       
 27822         return;
 22057         return;
 27823       }
 22058       }
 27824 
 22059 
 27825       if (filteredOptions.length === 0) {
 22060       if (filteredOptions.length === 0) {
 27826         return;
 22061         return;
 27843           });
 22078           });
 27844           break;
 22079           break;
 27845 
 22080 
 27846         case external_this_wp_keycodes_["ESCAPE"]:
 22081         case external_this_wp_keycodes_["ESCAPE"]:
 27847           this.setState({
 22082           this.setState({
 27848             suppress: open.idx
 22083             autocompleter: null,
       
 22084             AutocompleterUI: null
 27849           });
 22085           });
 27850           break;
 22086           break;
 27851 
 22087 
 27852         case external_this_wp_keycodes_["ENTER"]:
 22088         case external_this_wp_keycodes_["ENTER"]:
 27853           this.select(filteredOptions[selectedIndex]);
 22089           this.select(filteredOptions[selectedIndex]);
 27866 
 22102 
 27867       event.preventDefault();
 22103       event.preventDefault();
 27868       event.stopPropagation();
 22104       event.stopPropagation();
 27869     }
 22105     }
 27870   }, {
 22106   }, {
 27871     key: "toggleKeyEvents",
       
 27872     value: function toggleKeyEvents(isListening) {
       
 27873       // This exists because we must capture ENTER key presses before RichText.
       
 27874       // It seems that react fires the simulated capturing events after the
       
 27875       // native browser event has already bubbled so we can't stopPropagation
       
 27876       // and avoid RichText getting the event from TinyMCE, hence we must
       
 27877       // register a native event handler.
       
 27878       var handler = isListening ? 'addEventListener' : 'removeEventListener';
       
 27879       this.node[handler]('keydown', this.handleKeyDown, true);
       
 27880     }
       
 27881   }, {
       
 27882     key: "componentDidUpdate",
 22107     key: "componentDidUpdate",
 27883     value: function componentDidUpdate(prevProps, prevState) {
 22108     value: function componentDidUpdate(prevProps) {
 27884       var _this$props2 = this.props,
 22109       var _this$props2 = this.props,
 27885           record = _this$props2.record,
 22110           record = _this$props2.record,
 27886           completers = _this$props2.completers;
 22111           completers = _this$props2.completers;
 27887       var prevRecord = prevProps.record;
 22112       var prevRecord = prevProps.record;
 27888       var prevOpen = prevState.open;
       
 27889 
       
 27890       if (!this.state.open !== !prevOpen) {
       
 27891         this.toggleKeyEvents(!!this.state.open);
       
 27892       }
       
 27893 
 22113 
 27894       if (Object(external_this_wp_richText_["isCollapsed"])(record)) {
 22114       if (Object(external_this_wp_richText_["isCollapsed"])(record)) {
 27895         var text = Object(external_lodash_["deburr"])(Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["slice"])(record, 0)));
 22115         var text = Object(external_this_lodash_["deburr"])(Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["slice"])(record, 0)));
 27896         var prevText = Object(external_lodash_["deburr"])(Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["slice"])(prevRecord, 0)));
 22116         var prevText = Object(external_this_lodash_["deburr"])(Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["slice"])(prevRecord, 0)));
 27897 
 22117 
 27898         if (text !== prevText) {
 22118         if (text !== prevText) {
 27899           var textAfterSelection = Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["slice"])(record, undefined, Object(external_this_wp_richText_["getTextContent"])(record).length));
 22119           var textAfterSelection = Object(external_this_wp_richText_["getTextContent"])(Object(external_this_wp_richText_["slice"])(record, undefined, Object(external_this_wp_richText_["getTextContent"])(record).length));
 27900           var allCompleters = Object(external_lodash_["map"])(completers, function (completer, idx) {
 22120           var autocompleter = Object(external_this_lodash_["find"])(completers, function (_ref4) {
 27901             return Object(objectSpread["a" /* default */])({}, completer, {
 22121             var triggerPrefix = _ref4.triggerPrefix,
 27902               idx: idx
 22122                 allowContext = _ref4.allowContext;
 27903             });
       
 27904           });
       
 27905           var open = Object(external_lodash_["find"])(allCompleters, function (_ref3) {
       
 27906             var triggerPrefix = _ref3.triggerPrefix,
       
 27907                 allowContext = _ref3.allowContext;
       
 27908             var index = text.lastIndexOf(triggerPrefix);
 22123             var index = text.lastIndexOf(triggerPrefix);
 27909 
 22124 
 27910             if (index === -1) {
 22125             if (index === -1) {
 27911               return false;
 22126               return false;
 27912             }
 22127             }
 27916             }
 22131             }
 27917 
 22132 
 27918             return /^\S*$/.test(text.slice(index + triggerPrefix.length));
 22133             return /^\S*$/.test(text.slice(index + triggerPrefix.length));
 27919           });
 22134           });
 27920 
 22135 
 27921           if (!open) {
 22136           if (!autocompleter) {
 27922             this.reset();
 22137             this.reset();
 27923             return;
 22138             return;
 27924           }
 22139           }
 27925 
 22140 
 27926           var safeTrigger = Object(external_lodash_["escapeRegExp"])(open.triggerPrefix);
 22141           var safeTrigger = Object(external_this_lodash_["escapeRegExp"])(autocompleter.triggerPrefix);
 27927           var match = text.match(new RegExp("".concat(safeTrigger, "(\\S*)$")));
 22142           var match = text.match(new RegExp("".concat(safeTrigger, "(\\S*)$")));
 27928           var query = match && match[1];
 22143           var query = match && match[1];
 27929           var _this$state5 = this.state,
 22144           this.setState({
 27930               wasOpen = _this$state5.open,
 22145             autocompleter: autocompleter,
 27931               wasSuppress = _this$state5.suppress,
 22146             AutocompleterUI: autocompleter !== this.state.autocompleter ? autocomplete_getAutoCompleterUI(autocompleter) : this.state.AutocompleterUI,
 27932               wasQuery = _this$state5.query;
 22147             filterValue: query
 27933 
 22148           });
 27934           if (open && (!wasOpen || open.idx !== wasOpen.idx || query !== wasQuery)) {
       
 27935             if (open.isDebounced) {
       
 27936               this.debouncedLoadOptions(open, query);
       
 27937             } else {
       
 27938               this.loadOptions(open, query);
       
 27939             }
       
 27940           } // create a regular expression to filter the options
       
 27941 
       
 27942 
       
 27943           var search = open ? new RegExp('(?:\\b|\\s|^)' + Object(external_lodash_["escapeRegExp"])(query), 'i') : /./; // filter the options we already have
       
 27944 
       
 27945           var filteredOptions = open ? filterOptions(search, this.state['options_' + open.idx]) : []; // check if we should still suppress the popover
       
 27946 
       
 27947           var suppress = open && wasSuppress === open.idx ? wasSuppress : undefined; // update the state
       
 27948 
       
 27949           if (wasOpen || open) {
       
 27950             this.setState({
       
 27951               selectedIndex: 0,
       
 27952               filteredOptions: filteredOptions,
       
 27953               suppress: suppress,
       
 27954               search: search,
       
 27955               open: open,
       
 27956               query: query
       
 27957             });
       
 27958           } // announce the count of filtered options but only if they have loaded
       
 27959 
       
 27960 
       
 27961           if (open && this.state['options_' + open.idx]) {
       
 27962             this.announce(filteredOptions);
       
 27963           }
       
 27964         }
 22149         }
 27965       }
 22150       }
 27966     }
       
 27967   }, {
       
 27968     key: "componentWillUnmount",
       
 27969     value: function componentWillUnmount() {
       
 27970       this.toggleKeyEvents(false);
       
 27971       this.debouncedLoadOptions.cancel();
       
 27972     }
 22151     }
 27973   }, {
 22152   }, {
 27974     key: "render",
 22153     key: "render",
 27975     value: function render() {
 22154     value: function render() {
 27976       var _this3 = this;
       
 27977 
       
 27978       var _this$props3 = this.props,
 22155       var _this$props3 = this.props,
 27979           children = _this$props3.children,
 22156           children = _this$props3.children,
 27980           instanceId = _this$props3.instanceId;
 22157           instanceId = _this$props3.instanceId,
 27981       var _this$state6 = this.state,
 22158           isSelected = _this$props3.isSelected;
 27982           open = _this$state6.open,
 22159       var _this$state4 = this.state,
 27983           suppress = _this$state6.suppress,
 22160           autocompleter = _this$state4.autocompleter,
 27984           selectedIndex = _this$state6.selectedIndex,
 22161           selectedIndex = _this$state4.selectedIndex,
 27985           filteredOptions = _this$state6.filteredOptions;
 22162           filteredOptions = _this$state4.filteredOptions,
 27986 
 22163           AutocompleterUI = _this$state4.AutocompleterUI,
 27987       var _ref4 = filteredOptions[selectedIndex] || {},
 22164           filterValue = _this$state4.filterValue;
 27988           _ref4$key = _ref4.key,
 22165 
 27989           selectedKey = _ref4$key === void 0 ? '' : _ref4$key;
 22166       var _ref5 = filteredOptions[selectedIndex] || {},
 27990 
 22167           _ref5$key = _ref5.key,
 27991       var _ref5 = open || {},
 22168           selectedKey = _ref5$key === void 0 ? '' : _ref5$key;
 27992           className = _ref5.className,
 22169 
 27993           idx = _ref5.idx;
 22170       var _ref6 = autocompleter || {},
 27994 
 22171           className = _ref6.className;
 27995       var isExpanded = suppress !== idx && filteredOptions.length > 0;
 22172 
       
 22173       var isExpanded = !!autocompleter && filteredOptions.length > 0;
 27996       var listBoxId = isExpanded ? "components-autocomplete-listbox-".concat(instanceId) : null;
 22174       var listBoxId = isExpanded ? "components-autocomplete-listbox-".concat(instanceId) : null;
 27997       var activeId = isExpanded ? "components-autocomplete-item-".concat(instanceId, "-").concat(selectedKey) : null; // Disable reason: Clicking the editor should reset the autocomplete when the menu is suppressed
 22175       var activeId = isExpanded ? "components-autocomplete-item-".concat(instanceId, "-").concat(selectedKey) : null;
 27998 
 22176       return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, children({
 27999       /* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/onclick-has-role, jsx-a11y/click-events-have-key-events */
       
 28000 
       
 28001       return Object(external_this_wp_element_["createElement"])("div", {
       
 28002         ref: this.bindNode,
       
 28003         onClick: this.resetWhenSuppressed,
       
 28004         className: "components-autocomplete"
       
 28005       }, children({
       
 28006         isExpanded: isExpanded,
 22177         isExpanded: isExpanded,
 28007         listBoxId: listBoxId,
 22178         listBoxId: listBoxId,
 28008         activeId: activeId
 22179         activeId: activeId,
 28009       }), isExpanded && Object(external_this_wp_element_["createElement"])(popover, {
 22180         onKeyDown: this.handleKeyDown
 28010         focusOnMount: false,
 22181       }), isSelected && AutocompleterUI && Object(external_this_wp_element_["createElement"])(AutocompleterUI, {
 28011         onClose: this.reset,
 22182         className: className,
 28012         position: "top right",
 22183         filterValue: filterValue,
 28013         className: "components-autocomplete__popover",
 22184         instanceId: instanceId,
 28014         getAnchorRect: getCaretRect
 22185         listBoxId: listBoxId,
 28015       }, Object(external_this_wp_element_["createElement"])("div", {
 22186         selectedIndex: selectedIndex,
 28016         id: listBoxId,
 22187         onChangeOptions: this.onChangeOptions,
 28017         role: "listbox",
 22188         onSelect: this.select,
 28018         className: "components-autocomplete__results"
 22189         onReset: this.onReset
 28019       }, isExpanded && Object(external_lodash_["map"])(filteredOptions, function (option, index) {
 22190       }));
 28020         return Object(external_this_wp_element_["createElement"])(build_module_button, {
       
 28021           key: option.key,
       
 28022           id: "components-autocomplete-item-".concat(instanceId, "-").concat(option.key),
       
 28023           role: "option",
       
 28024           "aria-selected": index === selectedIndex,
       
 28025           disabled: option.isDisabled,
       
 28026           className: classnames_default()('components-autocomplete__result', className, {
       
 28027             'is-selected': index === selectedIndex
       
 28028           }),
       
 28029           onClick: function onClick() {
       
 28030             return _this3.select(option);
       
 28031           }
       
 28032         }, option.label);
       
 28033       }))));
       
 28034       /* eslint-enable jsx-a11y/no-static-element-interactions, jsx-a11y/onclick-has-role, jsx-a11y/click-events-have-key-events */
       
 28035     }
 22191     }
 28036   }]);
 22192   }]);
 28037 
 22193 
 28038   return Autocomplete;
 22194   return Autocomplete;
 28039 }(external_this_wp_element_["Component"]);
 22195 }(external_this_wp_element_["Component"]);
 28040 /* harmony default export */ var autocomplete = (Object(external_this_wp_compose_["compose"])([with_spoken_messages, external_this_wp_compose_["withInstanceId"], with_focus_outside])(autocomplete_Autocomplete));
 22196 /* harmony default export */ var autocomplete = (Object(external_this_wp_compose_["compose"])([with_spoken_messages, external_this_wp_compose_["withInstanceId"]])(autocomplete_Autocomplete));
 28041 
 22197 
 28042 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/base-control/index.js
 22198 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/flex/styles/flex-styles.js
 28043 
 22199 
       
 22200 
       
 22201 function flex_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
 28044 
 22202 
 28045 /**
 22203 /**
 28046  * External dependencies
 22204  * External dependencies
 28047  */
 22205  */
 28048 
 22206 
 28049 
 22207 
 28050 function BaseControl(_ref) {
 22208 var flex_styles_alignStyle = function alignStyle(_ref2) {
 28051   var id = _ref.id,
 22209   var align = _ref2.align;
 28052       label = _ref.label,
 22210   var aligns = {
 28053       help = _ref.help,
 22211     top: 'flex-start',
 28054       className = _ref.className,
 22212     bottom: 'flex-end'
 28055       children = _ref.children;
 22213   };
 28056   return Object(external_this_wp_element_["createElement"])("div", {
 22214   var value = aligns[align] || align;
 28057     className: classnames_default()('components-base-control', className)
 22215   return /*#__PURE__*/css_browser_esm({
 28058   }, Object(external_this_wp_element_["createElement"])("div", {
 22216     alignItems: value
 28059     className: "components-base-control__field"
 22217   },  true ? "" : undefined);
 28060   }, label && id && Object(external_this_wp_element_["createElement"])("label", {
 22218 };
 28061     className: "components-base-control__label",
 22219 
 28062     htmlFor: id
 22220 var flex_styles_justifyStyle = function justifyStyle(_ref3) {
 28063   }, label), label && !id && Object(external_this_wp_element_["createElement"])("span", {
 22221   var justify = _ref3.justify,
 28064     className: "components-base-control__label"
 22222       isReversed = _ref3.isReversed;
 28065   }, label), children), !!help && Object(external_this_wp_element_["createElement"])("p", {
 22223   var justifies = {
 28066     id: id + '__help',
 22224     left: 'flex-start',
 28067     className: "components-base-control__help"
 22225     right: 'flex-end'
 28068   }, help));
 22226   };
 28069 }
 22227   var value = justifies[justify] || justify;
 28070 
 22228 
 28071 /* harmony default export */ var base_control = (BaseControl);
 22229   if (isReversed && justifies[justify]) {
 28072 
 22230     value = justify === 'left' ? justifies.right : justifies.left;
 28073 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/button-group/index.js
 22231   }
       
 22232 
       
 22233   return /*#__PURE__*/css_browser_esm({
       
 22234     justifyContent: value
       
 22235   },  true ? "" : undefined);
       
 22236 };
       
 22237 
       
 22238 var flex_styles_gapStyle = function gapStyle(_ref4) {
       
 22239   var gap = _ref4.gap,
       
 22240       isReversed = _ref4.isReversed;
       
 22241   var base = 4;
       
 22242   var value = typeof gap === 'number' ? base * gap : base;
       
 22243   var dir = isReversed ? 'left' : 'right';
       
 22244   var padding = "padding-".concat(dir);
       
 22245   return /*#__PURE__*/css_browser_esm("> *{", padding, ":", value, "px;&:last-child{", padding, ":0;}}" + ( true ? "" : undefined));
       
 22246 };
       
 22247 
       
 22248 var flex_styles_ref =  true ? {
       
 22249   name: "8kj89b",
       
 22250   styles: "flex-direction:row-reverse;"
       
 22251 } : undefined;
       
 22252 
       
 22253 var reversedStyles = function reversedStyles(_ref5) {
       
 22254   var isReversed = _ref5.isReversed;
       
 22255   if (!isReversed) return '';
       
 22256   return flex_styles_ref;
       
 22257 };
       
 22258 
       
 22259 var Flex = styled_base_browser_esm("div", {
       
 22260   target: "eboqfv50",
       
 22261   label: "Flex"
       
 22262 })("box-sizing:border-box;display:flex;", flex_styles_alignStyle, ";", flex_styles_justifyStyle, ";", flex_styles_gapStyle, ";", reversedStyles, ";" + ( true ? "" : undefined));
       
 22263 var Item = styled_base_browser_esm("div", {
       
 22264   target: "eboqfv51",
       
 22265   label: "Item"
       
 22266 })( true ? {
       
 22267   name: "13luw5d",
       
 22268   styles: "box-sizing:border-box;min-width:0;max-width:100%;"
       
 22269 } : undefined);
       
 22270 var Block = /*#__PURE__*/styled_base_browser_esm(Item, {
       
 22271   target: "eboqfv52",
       
 22272   label: "Block"
       
 22273 })( true ? {
       
 22274   name: "1rr4qq7",
       
 22275   styles: "flex:1;"
       
 22276 } : undefined);
       
 22277 
       
 22278 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/flex/item.js
 28074 
 22279 
 28075 
 22280 
 28076 
 22281 
 28077 
 22282 
 28078 /**
 22283 /**
 28079  * External dependencies
 22284  * External dependencies
 28080  */
 22285  */
 28081 
 22286 
 28082 
 22287 /**
 28083 function ButtonGroup(_ref) {
 22288  * Internal dependencies
       
 22289  */
       
 22290 
       
 22291 
       
 22292 /**
       
 22293  * WordPress dependencies
       
 22294  */
       
 22295 
       
 22296 
       
 22297 
       
 22298 function FlexItem(_ref, ref) {
 28084   var className = _ref.className,
 22299   var className = _ref.className,
 28085       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className"]);
 22300       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className"]);
 28086 
 22301 
       
 22302   var classes = classnames_default()('components-flex__item', className);
       
 22303   return Object(external_this_wp_element_["createElement"])(Item, Object(esm_extends["a" /* default */])({}, props, {
       
 22304     className: classes,
       
 22305     ref: ref
       
 22306   }));
       
 22307 }
       
 22308 
       
 22309 /* harmony default export */ var flex_item = (Object(external_this_wp_element_["forwardRef"])(FlexItem));
       
 22310 
       
 22311 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/flex/block.js
       
 22312 
       
 22313 
       
 22314 
       
 22315 
       
 22316 /**
       
 22317  * External dependencies
       
 22318  */
       
 22319 
       
 22320 /**
       
 22321  * Internal dependencies
       
 22322  */
       
 22323 
       
 22324 
       
 22325 /**
       
 22326  * WordPress dependencies
       
 22327  */
       
 22328 
       
 22329 
       
 22330 
       
 22331 function FlexBlock(_ref, ref) {
       
 22332   var className = _ref.className,
       
 22333       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className"]);
       
 22334 
       
 22335   var classes = classnames_default()('components-flex__block', className);
       
 22336   return Object(external_this_wp_element_["createElement"])(Block, Object(esm_extends["a" /* default */])({}, props, {
       
 22337     className: classes,
       
 22338     ref: ref
       
 22339   }));
       
 22340 }
       
 22341 
       
 22342 /* harmony default export */ var block = (Object(external_this_wp_element_["forwardRef"])(FlexBlock));
       
 22343 
       
 22344 // CONCATENATED MODULE: ./node_modules/react-use-gesture/dist/react-use-gesture.esm.js
       
 22345 
       
 22346 
       
 22347 // vector add
       
 22348 function addV(v1, v2) {
       
 22349   return v1.map(function (v, i) {
       
 22350     return v + v2[i];
       
 22351   });
       
 22352 } // vector substract
       
 22353 
       
 22354 function subV(v1, v2) {
       
 22355   return v1.map(function (v, i) {
       
 22356     return v - v2[i];
       
 22357   });
       
 22358 }
       
 22359 /**
       
 22360  * Calculates velocity
       
 22361  * @param delta the difference between current and previous vectors
       
 22362  * @param delta_t the time offset
       
 22363  * @param len the length of the delta vector
       
 22364  * @returns velocity
       
 22365  */
       
 22366 
       
 22367 function calculateVelocity(delta, delta_t, len) {
       
 22368   len = len || Math.hypot.apply(Math, delta);
       
 22369   return delta_t ? len / delta_t : 0;
       
 22370 }
       
 22371 /**
       
 22372  * Calculates velocities vector
       
 22373  * @template T the expected vector type
       
 22374  * @param delta the difference between current and previous vectors
       
 22375  * @param delta_t the time offset
       
 22376  * @returns velocities vector
       
 22377  */
       
 22378 
       
 22379 function calculateVelocities(delta, delta_t) {
       
 22380   return delta_t ? delta.map(function (v) {
       
 22381     return v / delta_t;
       
 22382   }) : Array(delta.length).fill(0);
       
 22383 }
       
 22384 /**
       
 22385  * Calculates distance
       
 22386  * @param movement the difference between current and initial vectors
       
 22387  * @returns distance
       
 22388  */
       
 22389 
       
 22390 function calculateDistance(movement) {
       
 22391   return Math.hypot.apply(Math, movement);
       
 22392 }
       
 22393 /**
       
 22394  * Calculates direction
       
 22395  * @template T the expected vector type
       
 22396  * @param delta
       
 22397  * @param len
       
 22398  * @returns direction
       
 22399  */
       
 22400 
       
 22401 function calculateDirection(delta, len) {
       
 22402   len = len || Math.hypot.apply(Math, delta) || 1;
       
 22403   return delta.map(function (v) {
       
 22404     return v / len;
       
 22405   });
       
 22406 }
       
 22407 /**
       
 22408  * Calculates all kinematics
       
 22409  * @template T the expected vector type
       
 22410  * @param movement the difference between current and initial vectors
       
 22411  * @param delta the difference between current and previous vectors
       
 22412  * @param delta_t the time difference between current and previous timestamps
       
 22413  * @returns all kinematics
       
 22414  */
       
 22415 
       
 22416 function calculateAllKinematics(movement, delta, delta_t) {
       
 22417   var len = Math.hypot.apply(Math, delta);
       
 22418   return {
       
 22419     velocities: calculateVelocities(delta, delta_t),
       
 22420     velocity: calculateVelocity(delta, delta_t, len),
       
 22421     distance: calculateDistance(movement),
       
 22422     direction: calculateDirection(delta, len)
       
 22423   };
       
 22424 }
       
 22425 function getIntentionalDisplacement(movement, threshold) {
       
 22426   var abs = Math.abs(movement);
       
 22427   return abs >= threshold ? Math.sign(movement) * threshold : false;
       
 22428 }
       
 22429 
       
 22430 function minMax(value, min, max) {
       
 22431   return Math.max(min, Math.min(value, max));
       
 22432 } // Based on @aholachek ;)
       
 22433 // https://twitter.com/chpwn/status/285540192096497664
       
 22434 // iOS constant = 0.55
       
 22435 // https://medium.com/@nathangitter/building-fluid-interfaces-ios-swift-9732bb934bf5
       
 22436 
       
 22437 
       
 22438 function rubberband2(distance, constant) {
       
 22439   // default constant from the article is 0.7
       
 22440   return Math.pow(distance, constant * 5);
       
 22441 }
       
 22442 
       
 22443 function rubberband(distance, dimension, constant) {
       
 22444   if (dimension === 0 || Math.abs(dimension) === Infinity) return rubberband2(distance, constant);
       
 22445   return distance * dimension * constant / (dimension + constant * distance);
       
 22446 }
       
 22447 
       
 22448 function rubberbandIfOutOfBounds(position, min, max, constant) {
       
 22449   if (constant === void 0) {
       
 22450     constant = 0.15;
       
 22451   }
       
 22452 
       
 22453   if (constant === 0) return minMax(position, min, max);
       
 22454 
       
 22455   if (position < min) {
       
 22456     return -rubberband(min - position, max - min, constant) + min;
       
 22457   }
       
 22458 
       
 22459   if (position > max) {
       
 22460     return rubberband(position - max, max - min, constant) + max;
       
 22461   }
       
 22462 
       
 22463   return position;
       
 22464 }
       
 22465 
       
 22466 function _defineProperties(target, props) {
       
 22467   for (var i = 0; i < props.length; i++) {
       
 22468     var descriptor = props[i];
       
 22469     descriptor.enumerable = descriptor.enumerable || false;
       
 22470     descriptor.configurable = true;
       
 22471     if ("value" in descriptor) descriptor.writable = true;
       
 22472     Object.defineProperty(target, descriptor.key, descriptor);
       
 22473   }
       
 22474 }
       
 22475 
       
 22476 function _createClass(Constructor, protoProps, staticProps) {
       
 22477   if (protoProps) _defineProperties(Constructor.prototype, protoProps);
       
 22478   if (staticProps) _defineProperties(Constructor, staticProps);
       
 22479   return Constructor;
       
 22480 }
       
 22481 
       
 22482 function _extends() {
       
 22483   _extends = Object.assign || function (target) {
       
 22484     for (var i = 1; i < arguments.length; i++) {
       
 22485       var source = arguments[i];
       
 22486 
       
 22487       for (var key in source) {
       
 22488         if (Object.prototype.hasOwnProperty.call(source, key)) {
       
 22489           target[key] = source[key];
       
 22490         }
       
 22491       }
       
 22492     }
       
 22493 
       
 22494     return target;
       
 22495   };
       
 22496 
       
 22497   return _extends.apply(this, arguments);
       
 22498 }
       
 22499 
       
 22500 function _inheritsLoose(subClass, superClass) {
       
 22501   subClass.prototype = Object.create(superClass.prototype);
       
 22502   subClass.prototype.constructor = subClass;
       
 22503   subClass.__proto__ = superClass;
       
 22504 }
       
 22505 
       
 22506 function _objectWithoutPropertiesLoose(source, excluded) {
       
 22507   if (source == null) return {};
       
 22508   var target = {};
       
 22509   var sourceKeys = Object.keys(source);
       
 22510   var key, i;
       
 22511 
       
 22512   for (i = 0; i < sourceKeys.length; i++) {
       
 22513     key = sourceKeys[i];
       
 22514     if (excluded.indexOf(key) >= 0) continue;
       
 22515     target[key] = source[key];
       
 22516   }
       
 22517 
       
 22518   return target;
       
 22519 }
       
 22520 
       
 22521 function _assertThisInitialized(self) {
       
 22522   if (self === void 0) {
       
 22523     throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
       
 22524   }
       
 22525 
       
 22526   return self;
       
 22527 }
       
 22528 
       
 22529 function _unsupportedIterableToArray(o, minLen) {
       
 22530   if (!o) return;
       
 22531   if (typeof o === "string") return _arrayLikeToArray(o, minLen);
       
 22532   var n = Object.prototype.toString.call(o).slice(8, -1);
       
 22533   if (n === "Object" && o.constructor) n = o.constructor.name;
       
 22534   if (n === "Map" || n === "Set") return Array.from(n);
       
 22535   if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
       
 22536 }
       
 22537 
       
 22538 function _arrayLikeToArray(arr, len) {
       
 22539   if (len == null || len > arr.length) len = arr.length;
       
 22540 
       
 22541   for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
       
 22542 
       
 22543   return arr2;
       
 22544 }
       
 22545 
       
 22546 function _createForOfIteratorHelperLoose(o) {
       
 22547   var i = 0;
       
 22548 
       
 22549   if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) {
       
 22550     if (Array.isArray(o) || (o = _unsupportedIterableToArray(o))) return function () {
       
 22551       if (i >= o.length) return {
       
 22552         done: true
       
 22553       };
       
 22554       return {
       
 22555         done: false,
       
 22556         value: o[i++]
       
 22557       };
       
 22558     };
       
 22559     throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
       
 22560   }
       
 22561 
       
 22562   i = o[Symbol.iterator]();
       
 22563   return i.next.bind(i);
       
 22564 }
       
 22565 
       
 22566 // blank function
       
 22567 function noop() {} // returns a function that chains all functions given as parameters
       
 22568 
       
 22569 var chainFns = function chainFns() {
       
 22570   for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {
       
 22571     fns[_key] = arguments[_key];
       
 22572   }
       
 22573 
       
 22574   return function () {
       
 22575     for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
       
 22576       args[_key2] = arguments[_key2];
       
 22577     }
       
 22578 
       
 22579     return fns.forEach(function (fn) {
       
 22580       return fn.apply(void 0, args);
       
 22581     });
       
 22582   };
       
 22583 };
       
 22584 var def = {
       
 22585   array: function array(value) {
       
 22586     return Array.isArray(value) ? value : [value, value];
       
 22587   },
       
 22588   withDefault: function withDefault(value, defaultIfUndefined) {
       
 22589     return value !== void 0 ? value : defaultIfUndefined;
       
 22590   }
       
 22591 };
       
 22592 function matchKeysFromObject(obj, matchingObject) {
       
 22593   var o = {};
       
 22594   Object.entries(obj).forEach(function (_ref) {
       
 22595     var key = _ref[0],
       
 22596         value = _ref[1];
       
 22597     return (value !== void 0 || key in matchingObject) && (o[key] = value);
       
 22598   });
       
 22599   return o;
       
 22600 }
       
 22601 function valueFn(v) {
       
 22602   return typeof v === 'function' ? v() : v;
       
 22603 }
       
 22604 
       
 22605 function getInitialState() {
       
 22606   // common initial state for all gestures
       
 22607   var initialCommon = {
       
 22608     _active: false,
       
 22609     _blocked: false,
       
 22610     _intentional: [false, false],
       
 22611     _movement: [0, 0],
       
 22612     _initial: [0, 0],
       
 22613     _lastEventType: undefined,
       
 22614     event: undefined,
       
 22615     // currentTarget: undefined,
       
 22616     // pointerId: undefined,
       
 22617     values: [0, 0],
       
 22618     velocities: [0, 0],
       
 22619     delta: [0, 0],
       
 22620     movement: [0, 0],
       
 22621     offset: [0, 0],
       
 22622     lastOffset: [0, 0],
       
 22623     direction: [0, 0],
       
 22624     initial: [0, 0],
       
 22625     previous: [0, 0],
       
 22626     first: false,
       
 22627     last: false,
       
 22628     active: false,
       
 22629     timeStamp: 0,
       
 22630     startTime: 0,
       
 22631     elapsedTime: 0,
       
 22632     cancel: noop,
       
 22633     canceled: false,
       
 22634     memo: undefined,
       
 22635     args: undefined
       
 22636   }; // initial state for coordinates-based gestures
       
 22637 
       
 22638   var initialCoordinates = {
       
 22639     axis: undefined,
       
 22640     xy: [0, 0],
       
 22641     vxvy: [0, 0],
       
 22642     velocity: 0,
       
 22643     distance: 0
       
 22644   }; // initial state for distance and angle-based gestures (pinch)
       
 22645 
       
 22646   var initialDistanceAngle = {
       
 22647     da: [0, 0],
       
 22648     vdva: [0, 0],
       
 22649     origin: undefined,
       
 22650     turns: 0
       
 22651   }; // initial state object (used by the gesture controller)
       
 22652 
       
 22653   return {
       
 22654     shared: {
       
 22655       hovering: false,
       
 22656       scrolling: false,
       
 22657       wheeling: false,
       
 22658       dragging: false,
       
 22659       moving: false,
       
 22660       pinching: false,
       
 22661       touches: 0,
       
 22662       buttons: 0,
       
 22663       down: false,
       
 22664       shiftKey: false,
       
 22665       altKey: false,
       
 22666       metaKey: false,
       
 22667       ctrlKey: false
       
 22668     },
       
 22669     drag: _extends({}, initialCommon, {}, initialCoordinates, {
       
 22670       _isTap: true,
       
 22671       _delayedEvent: false,
       
 22672       tap: false,
       
 22673       swipe: [0, 0]
       
 22674     }),
       
 22675     pinch: _extends({}, initialCommon, {}, initialDistanceAngle),
       
 22676     wheel: _extends({}, initialCommon, {}, initialCoordinates),
       
 22677     move: _extends({}, initialCommon, {}, initialCoordinates),
       
 22678     scroll: _extends({}, initialCommon, {}, initialCoordinates)
       
 22679   };
       
 22680 }
       
 22681 
       
 22682 var setListeners = function setListeners(add) {
       
 22683   return function (el, listeners, options) {
       
 22684     var action = add ? 'addEventListener' : 'removeEventListener';
       
 22685     listeners.forEach(function (_ref) {
       
 22686       var eventName = _ref[0],
       
 22687           fn = _ref[1];
       
 22688       return el[action](eventName, fn, options);
       
 22689     });
       
 22690   };
       
 22691 };
       
 22692 /**
       
 22693  * Whether the browser supports GestureEvent (ie Safari)
       
 22694  * @returns true if the browser supports gesture event
       
 22695  */
       
 22696 
       
 22697 
       
 22698 function supportsGestureEvents() {
       
 22699   try {
       
 22700     // TODO [TS] possibly find GestureEvent definitions?
       
 22701     // @ts-ignore: no type definitions for webkit GestureEvents
       
 22702     return 'constructor' in GestureEvent;
       
 22703   } catch (e) {
       
 22704     return false;
       
 22705   }
       
 22706 }
       
 22707 var addListeners = /*#__PURE__*/setListeners(true);
       
 22708 var removeListeners = /*#__PURE__*/setListeners(false);
       
 22709 /**
       
 22710  * Gets modifier keys from event
       
 22711  * @param event
       
 22712  * @returns modifier keys
       
 22713  */
       
 22714 
       
 22715 function getModifierKeys(event) {
       
 22716   var shiftKey = event.shiftKey,
       
 22717       altKey = event.altKey,
       
 22718       metaKey = event.metaKey,
       
 22719       ctrlKey = event.ctrlKey;
       
 22720   return {
       
 22721     shiftKey: shiftKey,
       
 22722     altKey: altKey,
       
 22723     metaKey: metaKey,
       
 22724     ctrlKey: ctrlKey
       
 22725   };
       
 22726 }
       
 22727 
       
 22728 function getTouchEvents(event) {
       
 22729   if ('touches' in event) {
       
 22730     var touches = event.touches,
       
 22731         changedTouches = event.changedTouches;
       
 22732     return touches.length > 0 ? touches : changedTouches;
       
 22733   }
       
 22734 
       
 22735   return null;
       
 22736 }
       
 22737 
       
 22738 function getGenericEventData(event) {
       
 22739   var buttons = 'buttons' in event ? event.buttons : 0;
       
 22740   var touchEvents = getTouchEvents(event);
       
 22741   var touches = touchEvents && touchEvents.length || 0;
       
 22742   var down = touches > 0 || buttons > 0;
       
 22743   return _extends({
       
 22744     touches: touches,
       
 22745     down: down,
       
 22746     buttons: buttons
       
 22747   }, getModifierKeys(event));
       
 22748 }
       
 22749 /**
       
 22750  * Gets scroll event values
       
 22751  * @param event
       
 22752  * @returns scroll event values
       
 22753  */
       
 22754 
       
 22755 function getScrollEventValues(event) {
       
 22756   // If the currentTarget is the window then we return the scrollX/Y position.
       
 22757   // If not (ie the currentTarget is a DOM element), then we return scrollLeft/Top
       
 22758   var _event$currentTarget = event.currentTarget,
       
 22759       scrollX = _event$currentTarget.scrollX,
       
 22760       scrollY = _event$currentTarget.scrollY,
       
 22761       scrollLeft = _event$currentTarget.scrollLeft,
       
 22762       scrollTop = _event$currentTarget.scrollTop;
       
 22763   return {
       
 22764     values: [scrollX || scrollLeft || 0, scrollY || scrollTop || 0]
       
 22765   };
       
 22766 }
       
 22767 /**
       
 22768  * Gets wheel event values.
       
 22769  * @param event
       
 22770  * @returns wheel event values
       
 22771  */
       
 22772 
       
 22773 function getWheelEventValues(event) {
       
 22774   var deltaX = event.deltaX,
       
 22775       deltaY = event.deltaY; //TODO implement polyfill ?
       
 22776   // https://developer.mozilla.org/en-US/docs/Web/Events/wheel#Polyfill
       
 22777 
       
 22778   return {
       
 22779     values: [deltaX, deltaY]
       
 22780   };
       
 22781 }
       
 22782 /**
       
 22783  * Gets pointer event values.
       
 22784  * @param event
       
 22785  * @returns pointer event values
       
 22786  */
       
 22787 
       
 22788 function getPointerEventValues(event) {
       
 22789   var touchEvents = getTouchEvents(event);
       
 22790 
       
 22791   var _ref2 = touchEvents ? touchEvents[0] : event,
       
 22792       clientX = _ref2.clientX,
       
 22793       clientY = _ref2.clientY;
       
 22794 
       
 22795   return {
       
 22796     values: [clientX, clientY]
       
 22797   };
       
 22798 }
       
 22799 var WEBKIT_DISTANCE_SCALE_FACTOR = 260;
       
 22800 /**
       
 22801  * Gets webkit gesture event values.
       
 22802  * @param event
       
 22803  * @returns webkit gesture event values
       
 22804  */
       
 22805 
       
 22806 function getWebkitGestureEventValues(event) {
       
 22807   return {
       
 22808     values: [event.scale * WEBKIT_DISTANCE_SCALE_FACTOR, event.rotation]
       
 22809   };
       
 22810 }
       
 22811 /**
       
 22812  * Gets two touches event data
       
 22813  * @param event
       
 22814  * @returns two touches event data
       
 22815  */
       
 22816 
       
 22817 function getTwoTouchesEventData(event) {
       
 22818   var touches = event.touches;
       
 22819   var dx = touches[1].clientX - touches[0].clientX;
       
 22820   var dy = touches[1].clientY - touches[0].clientY;
       
 22821   var values = [Math.hypot(dx, dy), -(Math.atan2(dx, dy) * 180) / Math.PI];
       
 22822   var origin = [(touches[1].clientX + touches[0].clientX) / 2, (touches[1].clientY + touches[0].clientY) / 2];
       
 22823   return {
       
 22824     values: values,
       
 22825     origin: origin
       
 22826   };
       
 22827 }
       
 22828 
       
 22829 /**
       
 22830  * The controller will keep track of the state for all gestures and also keep
       
 22831  * track of timeouts, and window listeners.
       
 22832  *
       
 22833  * @template BinderType the type the bind function should return
       
 22834  */
       
 22835 
       
 22836 var Controller = function Controller() {
       
 22837   var _this = this;
       
 22838 
       
 22839   this.state = getInitialState(); // state for all gestures
       
 22840 
       
 22841   this.timeouts = {}; // keeping track of timeouts for debounced gestures (such as move, scroll, wheel)
       
 22842 
       
 22843   this.domListeners = []; // when config.domTarget is set, we attach events directly to the dom
       
 22844 
       
 22845   this.windowListeners = {}; // keeps track of window listeners added by gestures (drag only at the moment)
       
 22846 
       
 22847   this.bindings = {}; // an object holding the handlers associated to the gestures
       
 22848 
       
 22849   /**
       
 22850    * Function ran on component unmount: cleans timeouts and removes dom listeners set by the bind function.
       
 22851    */
       
 22852 
       
 22853   this.clean = function () {
       
 22854     _this.resetBindings();
       
 22855 
       
 22856     Object.values(_this.timeouts).forEach(clearTimeout);
       
 22857     Object.keys(_this.windowListeners).forEach(function (stateKey) {
       
 22858       return _this.removeWindowListeners(stateKey);
       
 22859     });
       
 22860   };
       
 22861   /**
       
 22862    * Function run every time the bind function is run (ie on every render).
       
 22863    * Resets the binding object and remove dom listeners attached to config.domTarget
       
 22864    */
       
 22865 
       
 22866 
       
 22867   this.resetBindings = function () {
       
 22868     _this.bindings = {};
       
 22869 
       
 22870     var domTarget = _this.getDomTarget();
       
 22871 
       
 22872     if (domTarget) {
       
 22873       removeListeners(domTarget, _this.domListeners, _this.config.eventOptions);
       
 22874       _this.domListeners = [];
       
 22875     }
       
 22876   };
       
 22877   /**
       
 22878    * Returns the domTarget element and parses a ref if needed.
       
 22879    */
       
 22880 
       
 22881 
       
 22882   this.getDomTarget = function () {
       
 22883     var domTarget = _this.config.domTarget;
       
 22884     return domTarget && 'current' in domTarget ? domTarget.current : domTarget;
       
 22885   };
       
 22886   /**
       
 22887    * Commodity function to let recognizers simply add listeners to config.window.
       
 22888    */
       
 22889 
       
 22890 
       
 22891   this.addWindowListeners = function (stateKey, listeners) {
       
 22892     if (!_this.config.window) return; // we use this.windowListeners to keep track of the listeners we add
       
 22893 
       
 22894     _this.windowListeners[stateKey] = listeners;
       
 22895     addListeners(_this.config.window, listeners, _this.config.eventOptions);
       
 22896   };
       
 22897   /**
       
 22898    * Commodity function to let recognizers simply remove listeners to config.window.
       
 22899    */
       
 22900 
       
 22901 
       
 22902   this.removeWindowListeners = function (stateKey) {
       
 22903     if (!_this.config.window) return;
       
 22904     var listeners = _this.windowListeners[stateKey];
       
 22905 
       
 22906     if (listeners) {
       
 22907       removeListeners(_this.config.window, listeners, _this.config.eventOptions);
       
 22908       delete _this.windowListeners[stateKey];
       
 22909     }
       
 22910   };
       
 22911   /**
       
 22912    * When config.domTarget is set, this function will add dom listeners to it
       
 22913    */
       
 22914 
       
 22915 
       
 22916   this.addDomTargetListeners = function (target) {
       
 22917     /** We iterate on the entries of this.binding for each event, then we chain
       
 22918      * the array of functions mapped to it and push them to this.domListeners
       
 22919      */
       
 22920     Object.entries(_this.bindings).forEach(function (_ref) {
       
 22921       var event = _ref[0],
       
 22922           fns = _ref[1];
       
 22923 
       
 22924       _this.domListeners.push([event.substr(2).toLowerCase(), chainFns.apply(void 0, fns)]);
       
 22925     });
       
 22926     addListeners(target, _this.domListeners, _this.config.eventOptions);
       
 22927   };
       
 22928   /**
       
 22929    * this.bindings is an object which keys match ReactEventHandlerKeys.
       
 22930    * Since a recognizer might want to bind a handler function to an event key already used by a previously
       
 22931    * added recognizer, we need to make sure that each event key is an array of all the functions mapped for
       
 22932    * that key.
       
 22933    */
       
 22934 
       
 22935 
       
 22936   this.addBindings = function (eventNames, fn) {
       
 22937     var eventNamesArray = !Array.isArray(eventNames) ? [eventNames] : eventNames;
       
 22938     eventNamesArray.forEach(function (eventName) {
       
 22939       if (_this.bindings[eventName]) _this.bindings[eventName].push(fn);else _this.bindings[eventName] = [fn];
       
 22940     });
       
 22941   };
       
 22942   /**
       
 22943    * getBindings will return an object that will be bound by users
       
 22944    * to the react component they want to interact with.
       
 22945    */
       
 22946 
       
 22947 
       
 22948   this.getBindings = function () {
       
 22949     var bindings = {};
       
 22950     var captureString = _this.config.captureString;
       
 22951     Object.entries(_this.bindings).forEach(function (_ref2) {
       
 22952       var event = _ref2[0],
       
 22953           fns = _ref2[1];
       
 22954       var fnsArray = Array.isArray(fns) ? fns : [fns];
       
 22955       var key = event + captureString;
       
 22956       bindings[key] = chainFns.apply(void 0, fnsArray);
       
 22957     });
       
 22958     return bindings;
       
 22959   };
       
 22960 
       
 22961   this.getBind = function () {
       
 22962     // If config.domTarget is set we add event listeners to it and return the clean function.
       
 22963     if (_this.config.domTarget) {
       
 22964       var domTarget = _this.getDomTarget();
       
 22965 
       
 22966       domTarget && _this.addDomTargetListeners(domTarget);
       
 22967       return _this.clean;
       
 22968     } // If not, we return an object that contains gesture handlers mapped to react handler event keys.
       
 22969 
       
 22970 
       
 22971     return _this.getBindings();
       
 22972   };
       
 22973 };
       
 22974 
       
 22975 /**
       
 22976  * @private
       
 22977  *
       
 22978  * Utility hook called by all gesture hooks and that will be responsible for the internals.
       
 22979  *
       
 22980  * @param {Partial<InternalHandlers>} handlers
       
 22981  * @param {RecognizerClasses} classes
       
 22982  * @param {InternalConfig} config
       
 22983  * @param {NativeHandlersPartial} nativeHandlers - native handlers such as onClick, onMouseDown, etc.
       
 22984  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 22985  */
       
 22986 
       
 22987 function useRecognizers(handlers, classes, config, nativeHandlers) {
       
 22988   // The gesture controller keeping track of all gesture states
       
 22989   var controller = external_this_React_default.a.useMemo(function () {
       
 22990     var current = new Controller();
       
 22991     /**
       
 22992      * The bind function will create gesture recognizers and return the right
       
 22993      * bind object depending on whether `domTarget` was specified in the config object.
       
 22994      */
       
 22995 
       
 22996     var bind = function bind() {
       
 22997       current.resetBindings();
       
 22998 
       
 22999       for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
       
 23000         args[_key] = arguments[_key];
       
 23001       }
       
 23002 
       
 23003       for (var _iterator = _createForOfIteratorHelperLoose(classes), _step; !(_step = _iterator()).done;) {
       
 23004         var RecognizerClass = _step.value;
       
 23005         new RecognizerClass(current, args).addBindings();
       
 23006       } // we also add event bindings for native handlers
       
 23007 
       
 23008 
       
 23009       if (controller.nativeRefs) {
       
 23010         for (var eventName in controller.nativeRefs) {
       
 23011           current.addBindings(eventName, // @ts-ignore we're cheating when it comes to event type :(
       
 23012           controller.nativeRefs[eventName]);
       
 23013         }
       
 23014       }
       
 23015 
       
 23016       return current.getBind();
       
 23017     };
       
 23018 
       
 23019     return {
       
 23020       nativeRefs: nativeHandlers,
       
 23021       current: current,
       
 23022       bind: bind
       
 23023     };
       
 23024   }, []); // We reassign the config and handlers to the controller on every render.
       
 23025 
       
 23026   controller.current.config = config;
       
 23027   controller.current.handlers = handlers; // We assign nativeHandlers, otherwise they won't be refreshed on the next render.
       
 23028 
       
 23029   controller.nativeRefs = nativeHandlers; // Run controller clean functions on unmount.
       
 23030 
       
 23031   external_this_React_default.a.useEffect(function () {
       
 23032     return controller.current.clean;
       
 23033   }, []);
       
 23034   return controller.bind;
       
 23035 }
       
 23036 
       
 23037 /**
       
 23038  * @private
       
 23039  * Recognizer abstract class.
       
 23040  *
       
 23041  * @protected
       
 23042  * @abstract
       
 23043  * @type {StateKey<T>} whether the Recognizer should deal with coordinates or distance / angle
       
 23044  */
       
 23045 
       
 23046 var Recognizer = /*#__PURE__*/function () {
       
 23047   /**
       
 23048    * Creates an instance of a gesture recognizer.
       
 23049    * @param stateKey drag, move, pinch, etc.
       
 23050    * @param controller the controller attached to the gesture
       
 23051    * @param [args] the args that should be passed to the gesture handler
       
 23052    */
       
 23053   function Recognizer(stateKey, controller, args) {
       
 23054     var _this = this;
       
 23055 
       
 23056     if (args === void 0) {
       
 23057       args = [];
       
 23058     }
       
 23059 
       
 23060     this.stateKey = stateKey;
       
 23061     this.controller = controller;
       
 23062     this.args = args;
       
 23063     this.debounced = true; // Convenience method to set a timeout for a given gesture
       
 23064 
       
 23065     this.setTimeout = function (callback, ms) {
       
 23066       var _window;
       
 23067 
       
 23068       if (ms === void 0) {
       
 23069         ms = 140;
       
 23070       }
       
 23071 
       
 23072       for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) {
       
 23073         args[_key - 2] = arguments[_key];
       
 23074       }
       
 23075 
       
 23076       _this.controller.timeouts[_this.stateKey] = (_window = window).setTimeout.apply(_window, [callback, ms].concat(args));
       
 23077     }; // Convenience method to clear a timeout for a given gesture
       
 23078 
       
 23079 
       
 23080     this.clearTimeout = function () {
       
 23081       clearTimeout(_this.controller.timeouts[_this.stateKey]);
       
 23082     }; // Convenience method to add window listeners for a given gesture
       
 23083 
       
 23084 
       
 23085     this.addWindowListeners = function (listeners) {
       
 23086       _this.controller.addWindowListeners(_this.stateKey, listeners);
       
 23087     }; // Convenience method to remove window listeners for a given gesture
       
 23088 
       
 23089 
       
 23090     this.removeWindowListeners = function () {
       
 23091       _this.controller.removeWindowListeners(_this.stateKey);
       
 23092     };
       
 23093     /**
       
 23094      * Returns the reinitialized start state for the gesture.
       
 23095      * Should be common to all gestures.
       
 23096      *
       
 23097      * @param {Vector2} values
       
 23098      * @param {UseGestureEvent} event
       
 23099      * @returns - the start state for the gesture
       
 23100      */
       
 23101 
       
 23102 
       
 23103     this.getStartGestureState = function (values, event) {
       
 23104       return _extends({}, getInitialState()[_this.stateKey], {
       
 23105         _active: true,
       
 23106         values: values,
       
 23107         initial: values,
       
 23108         offset: _this.state.offset,
       
 23109         lastOffset: _this.state.offset,
       
 23110         startTime: event.timeStamp
       
 23111       });
       
 23112     }; // Runs rubberband on a vector
       
 23113 
       
 23114 
       
 23115     this.rubberband = function (vector, rubberband) {
       
 23116       var bounds = _this.config.bounds;
       
 23117       /**
       
 23118        * [x, y]: [rubberband(x, min, max), rubberband(y, min, max)]
       
 23119        */
       
 23120 
       
 23121       return vector.map(function (v, i) {
       
 23122         return rubberbandIfOutOfBounds(v, bounds[i][0], bounds[i][1], rubberband[i]);
       
 23123       });
       
 23124     };
       
 23125     /**
       
 23126      * Fires the gesture handler
       
 23127      *
       
 23128      * @param {boolean} [forceFlag] - if true, then the handler will fire even if the gesture is not intentional
       
 23129      */
       
 23130 
       
 23131 
       
 23132     this.fireGestureHandler = function (forceFlag) {
       
 23133       /**
       
 23134        * If the gesture has been blocked (this can happen when the gesture has started in an unwanted direction),
       
 23135        * clean everything and don't do anything.
       
 23136        */
       
 23137       if (_this.state._blocked) {
       
 23138         // we need debounced gestures to end by themselves
       
 23139         if (!_this.debounced) {
       
 23140           _this.state._active = false;
       
 23141 
       
 23142           _this.clean();
       
 23143         }
       
 23144 
       
 23145         return null;
       
 23146       } // If the gesture has no intentional dimension, don't do fire the handler.
       
 23147 
       
 23148 
       
 23149       var _this$state$_intentio = _this.state._intentional,
       
 23150           intentionalX = _this$state$_intentio[0],
       
 23151           intentionalY = _this$state$_intentio[1];
       
 23152       if (!forceFlag && intentionalX === false && intentionalY === false) return null;
       
 23153       var _this$state = _this.state,
       
 23154           _active = _this$state._active,
       
 23155           active = _this$state.active;
       
 23156       _this.state.active = _active;
       
 23157       _this.state.first = _active && !active; // `first` is true when the gesture becomes active
       
 23158 
       
 23159       _this.state.last = active && !_active; // `last` is true when the gesture becomes inactive
       
 23160 
       
 23161       _this.controller.state.shared[_this.ingKey] = _active; // Sets dragging, pinching, etc. to the gesture active state
       
 23162 
       
 23163       var state = _extends({}, _this.controller.state.shared, {}, _this.state, {}, _this.mapStateValues(_this.state)); // @ts-ignore
       
 23164 
       
 23165 
       
 23166       var newMemo = _this.handler(state); // Sets memo to the returned value of the handler (unless it's not undefined)
       
 23167 
       
 23168 
       
 23169       _this.state.memo = newMemo !== void 0 ? newMemo : _this.state.memo; // Cleans the gesture when the gesture is no longer active.
       
 23170 
       
 23171       if (!_active) _this.clean();
       
 23172       return state;
       
 23173     };
       
 23174   } // Returns the gesture config
       
 23175 
       
 23176 
       
 23177   var _proto = Recognizer.prototype;
       
 23178 
       
 23179   // Conveninence method to update the shared state
       
 23180   _proto.updateSharedState = function updateSharedState(sharedState) {
       
 23181     Object.assign(this.controller.state.shared, sharedState);
       
 23182   } // Conveninence method to update the gesture state
       
 23183   ;
       
 23184 
       
 23185   _proto.updateGestureState = function updateGestureState(gestureState) {
       
 23186     Object.assign(this.state, gestureState);
       
 23187   }
       
 23188   /**
       
 23189    * Returns a generic, common payload for all gestures from an event.
       
 23190    *
       
 23191    * @param {UseGestureEvent} event
       
 23192    * @param {boolean} [isStartEvent]
       
 23193    * @returns - the generic gesture payload
       
 23194    */
       
 23195   ;
       
 23196 
       
 23197   _proto.getGenericPayload = function getGenericPayload(event, isStartEvent) {
       
 23198     var timeStamp = event.timeStamp,
       
 23199         type = event.type;
       
 23200     var _this$state2 = this.state,
       
 23201         values = _this$state2.values,
       
 23202         startTime = _this$state2.startTime;
       
 23203     return {
       
 23204       _lastEventType: type,
       
 23205       event: event,
       
 23206       timeStamp: timeStamp,
       
 23207       elapsedTime: isStartEvent ? 0 : timeStamp - startTime,
       
 23208       args: this.args,
       
 23209       previous: values
       
 23210     };
       
 23211   }
       
 23212   /**
       
 23213    * Returns state properties depending on the movement and state.
       
 23214    *
       
 23215    * Should be overriden for custom behavior, doesn't do anything in the implementation
       
 23216    * below.
       
 23217    */
       
 23218   ;
       
 23219 
       
 23220   _proto.checkIntentionality = function checkIntentionality(_intentional, _movement, _state) {
       
 23221     return {
       
 23222       _intentional: _intentional,
       
 23223       _blocked: false
       
 23224     };
       
 23225   }
       
 23226   /**
       
 23227    * Returns basic movement properties for the gesture based on the next values and current state.
       
 23228    */
       
 23229   ;
       
 23230 
       
 23231   _proto.getMovement = function getMovement(values, state) {
       
 23232     if (state === void 0) {
       
 23233       state = this.state;
       
 23234     }
       
 23235 
       
 23236     var _this$config = this.config,
       
 23237         initial = _this$config.initial,
       
 23238         threshold = _this$config.threshold,
       
 23239         rubberband = _this$config.rubberband;
       
 23240     var t0 = threshold[0],
       
 23241         t1 = threshold[1];
       
 23242     var _state2 = state,
       
 23243         _initial = _state2._initial,
       
 23244         _active = _state2._active,
       
 23245         intentional = _state2._intentional,
       
 23246         lastOffset = _state2.lastOffset,
       
 23247         prevMovement = _state2.movement;
       
 23248     var i0 = intentional[0],
       
 23249         i1 = intentional[1];
       
 23250 
       
 23251     var _this$getInternalMove = this.getInternalMovement(values, state),
       
 23252         _m0 = _this$getInternalMove[0],
       
 23253         _m1 = _this$getInternalMove[1];
       
 23254     /**
       
 23255      * For both dimensions of the gesture, check its intentionality on each frame.
       
 23256      */
       
 23257 
       
 23258 
       
 23259     if (i0 === false) {
       
 23260       i0 = getIntentionalDisplacement(_m0, t0);
       
 23261     }
       
 23262 
       
 23263     if (i1 === false) {
       
 23264       i1 = getIntentionalDisplacement(_m1, t1);
       
 23265     } // Get gesture specific state properties based on intentionality and movement.
       
 23266 
       
 23267 
       
 23268     var intentionalityCheck = this.checkIntentionality([i0, i1], [_m0, _m1], state);
       
 23269     var _intentional = intentionalityCheck._intentional,
       
 23270         _blocked = intentionalityCheck._blocked;
       
 23271     var _i0 = _intentional[0],
       
 23272         _i1 = _intentional[1];
       
 23273     var _movement = [_m0, _m1];
       
 23274     if (_i0 !== false && intentional[0] === false) _initial[0] = valueFn(initial)[0];
       
 23275     if (_i1 !== false && intentional[1] === false) _initial[1] = valueFn(initial)[1];
       
 23276     /**
       
 23277      * If the gesture has been blocked (from gesture specific checkIntentionality),
       
 23278      * stop right there.
       
 23279      */
       
 23280 
       
 23281     if (_blocked) return _extends({}, intentionalityCheck, {
       
 23282       _movement: _movement,
       
 23283       delta: [0, 0]
       
 23284     });
       
 23285     /**
       
 23286      * The movement sent to the handler has 0 in its dimensions when intentionality is false.
       
 23287      * It is calculated from the actual movement minus the threshold.
       
 23288      */
       
 23289 
       
 23290     var movement = [_i0 !== false ? _m0 - _i0 : valueFn(initial)[0], _i1 !== false ? _m1 - _i1 : valueFn(initial)[1]];
       
 23291     var offset = addV(movement, lastOffset);
       
 23292     /**
       
 23293      * Rubberband should be 0 when the gesture is no longer active, so that movement
       
 23294      * and offset can return within their bounds.
       
 23295      */
       
 23296 
       
 23297     var _rubberband = _active ? rubberband : [0, 0];
       
 23298 
       
 23299     movement = this.rubberband(addV(movement, _initial), _rubberband); // rubberbanded movement
       
 23300 
       
 23301     return _extends({}, intentionalityCheck, {
       
 23302       _initial: _initial,
       
 23303       _movement: _movement,
       
 23304       movement: movement,
       
 23305       offset: this.rubberband(offset, _rubberband),
       
 23306       delta: subV(movement, prevMovement)
       
 23307     });
       
 23308   } // Cleans the gesture. Can be overriden by gestures.
       
 23309   ;
       
 23310 
       
 23311   _proto.clean = function clean() {
       
 23312     this.clearTimeout();
       
 23313     this.removeWindowListeners();
       
 23314   };
       
 23315 
       
 23316   _createClass(Recognizer, [{
       
 23317     key: "config",
       
 23318     get: function get() {
       
 23319       return this.controller.config[this.stateKey];
       
 23320     } // Is the gesture enabled
       
 23321 
       
 23322   }, {
       
 23323     key: "enabled",
       
 23324     get: function get() {
       
 23325       return this.controller.config.enabled && this.config.enabled;
       
 23326     } // Returns the controller state for a given gesture
       
 23327 
       
 23328   }, {
       
 23329     key: "state",
       
 23330     get: function get() {
       
 23331       return this.controller.state[this.stateKey];
       
 23332     } // Returns the gesture handler
       
 23333 
       
 23334   }, {
       
 23335     key: "handler",
       
 23336     get: function get() {
       
 23337       return this.controller.handlers[this.stateKey];
       
 23338     }
       
 23339   }]);
       
 23340 
       
 23341   return Recognizer;
       
 23342 }();
       
 23343 
       
 23344 /**
       
 23345  * @private
       
 23346  * Abstract class for coordinates-based gesture recongizers
       
 23347  * @abstract
       
 23348  * @class CoordinatesRecognizer
       
 23349  * @extends {Recognizer<T>}
       
 23350  * @template T
       
 23351  */
       
 23352 
       
 23353 var CoordinatesRecognizer = /*#__PURE__*/function (_Recognizer) {
       
 23354   _inheritsLoose(CoordinatesRecognizer, _Recognizer);
       
 23355 
       
 23356   function CoordinatesRecognizer() {
       
 23357     return _Recognizer.apply(this, arguments) || this;
       
 23358   }
       
 23359 
       
 23360   var _proto = CoordinatesRecognizer.prototype;
       
 23361 
       
 23362   /**
       
 23363    * Returns the real movement (without taking intentionality into acount)
       
 23364    */
       
 23365   _proto.getInternalMovement = function getInternalMovement(values, state) {
       
 23366     return subV(values, state.initial);
       
 23367   }
       
 23368   /**
       
 23369    * In coordinates-based gesture, this function will detect the first intentional axis,
       
 23370    * lock the gesture axis if lockDirection is specified in the config, block the gesture
       
 23371    * if the first intentional axis doesn't match the specified axis in config.
       
 23372    *
       
 23373    * @param {[FalseOrNumber, FalseOrNumber]} _intentional
       
 23374    * @param {Vector2} _movement
       
 23375    * @param {PartialGestureState<T>} state
       
 23376    */
       
 23377   ;
       
 23378 
       
 23379   _proto.checkIntentionality = function checkIntentionality(_intentional, _movement, state) {
       
 23380     var _intentional2 = _intentional,
       
 23381         _ix = _intentional2[0],
       
 23382         _iy = _intentional2[1];
       
 23383     var intentionalMovement = _ix !== false || _iy !== false;
       
 23384     var axis = state.axis;
       
 23385     var _blocked = false; // If the movement is intentional, we can compute axis.
       
 23386 
       
 23387     if (intentionalMovement) {
       
 23388       var _movement$map = _movement.map(Math.abs),
       
 23389           absX = _movement$map[0],
       
 23390           absY = _movement$map[1];
       
 23391 
       
 23392       var _this$config = this.config,
       
 23393           configAxis = _this$config.axis,
       
 23394           lockDirection = _this$config.lockDirection; // We make sure we only set axis value if it hadn't been detected before.
       
 23395 
       
 23396       axis = axis || (absX > absY ? 'x' : absX < absY ? 'y' : undefined);
       
 23397 
       
 23398       if (!!configAxis || lockDirection) {
       
 23399         if (!!axis) {
       
 23400           // If the detected axis doesn't match the config axis we block the gesture
       
 23401           if (!!configAxis && axis !== configAxis) _blocked = true;else {
       
 23402             // Otherwise we prevent the gesture from updating the unwanted axis.
       
 23403             var lockedIndex = axis === 'x' ? 1 : 0;
       
 23404             _intentional[lockedIndex] = false;
       
 23405           }
       
 23406         } else {
       
 23407           // Until we've detected the axis, we prevent the hnadler from updating.
       
 23408           _intentional = [false, false];
       
 23409         }
       
 23410       }
       
 23411     }
       
 23412 
       
 23413     return {
       
 23414       _intentional: _intentional,
       
 23415       _blocked: _blocked,
       
 23416       axis: axis
       
 23417     };
       
 23418   };
       
 23419 
       
 23420   _proto.getKinematics = function getKinematics(values, event) {
       
 23421     var timeStamp = this.state.timeStamp;
       
 23422     var movementDetection = this.getMovement(values, this.state);
       
 23423     var _blocked = movementDetection._blocked,
       
 23424         delta = movementDetection.delta,
       
 23425         movement = movementDetection.movement;
       
 23426     if (_blocked) return movementDetection;
       
 23427     var delta_t = event.timeStamp - timeStamp;
       
 23428     var kinematics = calculateAllKinematics(movement, delta, delta_t);
       
 23429     return _extends({
       
 23430       values: values,
       
 23431       delta: delta
       
 23432     }, movementDetection, {}, kinematics);
       
 23433   };
       
 23434 
       
 23435   _proto.mapStateValues = function mapStateValues(state) {
       
 23436     return {
       
 23437       xy: state.values,
       
 23438       vxvy: state.velocities
       
 23439     };
       
 23440   };
       
 23441 
       
 23442   return CoordinatesRecognizer;
       
 23443 }(Recognizer);
       
 23444 
       
 23445 var TAP_DISTANCE_THRESHOLD = 3;
       
 23446 var SWIPE_MAX_ELAPSED_TIME = 220;
       
 23447 var FILTER_REPEATED_EVENTS_DELAY = 200;
       
 23448 
       
 23449 var DragRecognizer = /*#__PURE__*/function (_CoordinatesRecognize) {
       
 23450   _inheritsLoose(DragRecognizer, _CoordinatesRecognize);
       
 23451 
       
 23452   function DragRecognizer(controller, args) {
       
 23453     var _this;
       
 23454 
       
 23455     _this = _CoordinatesRecognize.call(this, 'drag', controller, args) || this;
       
 23456     _this.ingKey = 'dragging';
       
 23457     _this.wasTouch = false;
       
 23458 
       
 23459     _this.isEventTypeTouch = function (type) {
       
 23460       return !!type && type.indexOf('touch') === 0;
       
 23461     };
       
 23462 
       
 23463     _this.dragShouldStart = function (event) {
       
 23464       var _getGenericEventData = getGenericEventData(event),
       
 23465           touches = _getGenericEventData.touches;
       
 23466 
       
 23467       var _lastEventType = _this.state._lastEventType;
       
 23468       /**
       
 23469        * This tries to filter out mouse events triggered by touch screens
       
 23470        * */
       
 23471       // If the previous gesture was touch-based, and the current one is mouse based,
       
 23472       // this means that we might be dealing with mouse simulated events if they're close to
       
 23473       // each other. We're only doing this check when we're not using pointer events.
       
 23474 
       
 23475       if (!_this.controller.config.pointer && _this.isEventTypeTouch(_lastEventType) && !_this.isEventTypeTouch(event.type)) {
       
 23476         var delay = Math.abs(event.timeStamp - _this.state.startTime);
       
 23477         if (delay < FILTER_REPEATED_EVENTS_DELAY) return false;
       
 23478       }
       
 23479 
       
 23480       return _this.enabled && touches < 2;
       
 23481     };
       
 23482 
       
 23483     _this.setPointers = function (event) {
       
 23484       var currentTarget = event.currentTarget,
       
 23485           pointerId = event.pointerId;
       
 23486       if (currentTarget) currentTarget.setPointerCapture(pointerId);
       
 23487 
       
 23488       _this.updateGestureState({
       
 23489         currentTarget: currentTarget,
       
 23490         pointerId: pointerId
       
 23491       });
       
 23492     };
       
 23493 
       
 23494     _this.removePointers = function () {
       
 23495       var _this$state = _this.state,
       
 23496           currentTarget = _this$state.currentTarget,
       
 23497           pointerId = _this$state.pointerId;
       
 23498       if (currentTarget && pointerId) currentTarget.releasePointerCapture(pointerId);
       
 23499     };
       
 23500 
       
 23501     _this.setListeners = function (isTouch) {
       
 23502       _this.removeWindowListeners();
       
 23503 
       
 23504       var dragListeners = isTouch ? [['touchmove', _this.onDragChange], ['touchend', _this.onDragEnd], ['touchcancel', _this.onDragEnd]] : [['mousemove', _this.onDragChange], ['mouseup', _this.onDragEnd]];
       
 23505 
       
 23506       _this.addWindowListeners(dragListeners);
       
 23507     };
       
 23508 
       
 23509     _this.onDragStart = function (event) {
       
 23510       if (!_this.dragShouldStart(event)) return; // if pointers events
       
 23511 
       
 23512       if (_this.controller.config.pointer) _this.setPointers(event);else _this.setListeners(_this.isEventTypeTouch(event.type));
       
 23513 
       
 23514       if (_this.config.delay > 0) {
       
 23515         _this.state._delayedEvent = true;
       
 23516         if (typeof event.persist === 'function') event.persist();
       
 23517 
       
 23518         _this.setTimeout(function () {
       
 23519           return _this.startDrag(event);
       
 23520         }, _this.config.delay);
       
 23521       } else {
       
 23522         _this.startDrag(event);
       
 23523       }
       
 23524     };
       
 23525 
       
 23526     _this.onDragChange = function (event) {
       
 23527       var canceled = _this.state.canceled;
       
 23528       if (canceled) return;
       
 23529 
       
 23530       if (!_this.state._active) {
       
 23531         if (_this.state._delayedEvent) {
       
 23532           _this.clearTimeout();
       
 23533 
       
 23534           _this.startDrag(event);
       
 23535         }
       
 23536 
       
 23537         return;
       
 23538       }
       
 23539 
       
 23540       var genericEventData = getGenericEventData(event);
       
 23541 
       
 23542       if (!genericEventData.down) {
       
 23543         _this.onDragEnd(event);
       
 23544 
       
 23545         return;
       
 23546       }
       
 23547 
       
 23548       _this.updateSharedState(genericEventData);
       
 23549 
       
 23550       var _getPointerEventValue = getPointerEventValues(event),
       
 23551           values = _getPointerEventValue.values;
       
 23552 
       
 23553       var kinematics = _this.getKinematics(values, event);
       
 23554 
       
 23555       var _isTap = _this.state._isTap;
       
 23556       if (_isTap && calculateDistance(kinematics._movement) >= TAP_DISTANCE_THRESHOLD) _isTap = false;
       
 23557 
       
 23558       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics, {
       
 23559         _isTap: _isTap,
       
 23560         cancel: function cancel() {
       
 23561           return _this.onCancel();
       
 23562         }
       
 23563       }));
       
 23564 
       
 23565       _this.fireGestureHandler();
       
 23566     };
       
 23567 
       
 23568     _this.onDragEnd = function (event) {
       
 23569       _this.state._active = false;
       
 23570 
       
 23571       _this.updateSharedState({
       
 23572         down: false,
       
 23573         buttons: 0,
       
 23574         touches: 0
       
 23575       });
       
 23576 
       
 23577       var _this$state2 = _this.state,
       
 23578           _isTap = _this$state2._isTap,
       
 23579           values = _this$state2.values,
       
 23580           _this$state2$velociti = _this$state2.velocities,
       
 23581           vx = _this$state2$velociti[0],
       
 23582           vy = _this$state2$velociti[1],
       
 23583           _this$state2$movement = _this$state2.movement,
       
 23584           mx = _this$state2$movement[0],
       
 23585           my = _this$state2$movement[1],
       
 23586           _this$state2$_intenti = _this$state2._intentional,
       
 23587           ix = _this$state2$_intenti[0],
       
 23588           iy = _this$state2$_intenti[1];
       
 23589 
       
 23590       var endState = _extends({}, _this.getGenericPayload(event), {}, _this.getMovement(values));
       
 23591 
       
 23592       var elapsedTime = endState.elapsedTime;
       
 23593       var _this$config = _this.config,
       
 23594           _this$config$swipeVel = _this$config.swipeVelocity,
       
 23595           svx = _this$config$swipeVel[0],
       
 23596           svy = _this$config$swipeVel[1],
       
 23597           _this$config$swipeDis = _this$config.swipeDistance,
       
 23598           sx = _this$config$swipeDis[0],
       
 23599           sy = _this$config$swipeDis[1];
       
 23600       var swipe = [0, 0];
       
 23601 
       
 23602       if (elapsedTime < SWIPE_MAX_ELAPSED_TIME) {
       
 23603         if (ix !== false && Math.abs(vx) > svx && Math.abs(mx) > sx) swipe[0] = Math.sign(vx);
       
 23604         if (iy !== false && Math.abs(vy) > svy && Math.abs(my) > sy) swipe[1] = Math.sign(vy);
       
 23605       }
       
 23606 
       
 23607       _this.updateGestureState(_extends({
       
 23608         event: event
       
 23609       }, endState, {
       
 23610         tap: _isTap,
       
 23611         swipe: swipe
       
 23612       }));
       
 23613 
       
 23614       _this.fireGestureHandler(_this.config.filterTaps && _this.state._isTap);
       
 23615     };
       
 23616 
       
 23617     _this.clean = function () {
       
 23618       _CoordinatesRecognize.prototype.clean.call(_assertThisInitialized(_this));
       
 23619 
       
 23620       _this.state._delayedEvent = false;
       
 23621       if (_this.controller.config.pointer) _this.removePointers();
       
 23622     };
       
 23623 
       
 23624     _this.onCancel = function () {
       
 23625       _this.updateGestureState({
       
 23626         canceled: true,
       
 23627         cancel: noop
       
 23628       });
       
 23629 
       
 23630       _this.state._active = false;
       
 23631 
       
 23632       _this.updateSharedState({
       
 23633         down: false,
       
 23634         buttons: 0,
       
 23635         touches: 0
       
 23636       });
       
 23637 
       
 23638       requestAnimationFrame(function () {
       
 23639         return _this.fireGestureHandler();
       
 23640       });
       
 23641     };
       
 23642 
       
 23643     return _this;
       
 23644   }
       
 23645 
       
 23646   var _proto = DragRecognizer.prototype;
       
 23647 
       
 23648   _proto.startDrag = function startDrag(event) {
       
 23649     var _this2 = this;
       
 23650 
       
 23651     var _getPointerEventValue2 = getPointerEventValues(event),
       
 23652         values = _getPointerEventValue2.values;
       
 23653 
       
 23654     this.updateSharedState(getGenericEventData(event));
       
 23655 
       
 23656     var startState = _extends({}, this.getStartGestureState(values, event), {}, this.getGenericPayload(event, true));
       
 23657 
       
 23658     this.updateGestureState(_extends({}, startState, {}, this.getMovement(values, startState), {
       
 23659       cancel: function cancel() {
       
 23660         return _this2.onCancel();
       
 23661       }
       
 23662     }));
       
 23663     this.fireGestureHandler();
       
 23664   };
       
 23665 
       
 23666   _proto.addBindings = function addBindings() {
       
 23667     if (this.controller.config.pointer) {
       
 23668       this.controller.addBindings('onPointerDown', this.onDragStart);
       
 23669       this.controller.addBindings('onPointerMove', this.onDragChange);
       
 23670       this.controller.addBindings(['onPointerUp', 'onPointerCancel'], this.onDragEnd);
       
 23671     } else {
       
 23672       this.controller.addBindings(['onTouchStart', 'onMouseDown'], this.onDragStart);
       
 23673     }
       
 23674   };
       
 23675 
       
 23676   return DragRecognizer;
       
 23677 }(CoordinatesRecognizer);
       
 23678 
       
 23679 var DEFAULT_DRAG_DELAY = 180;
       
 23680 var DEFAULT_RUBBERBAND = 0.15;
       
 23681 var DEFAULT_SWIPE_VELOCITY = 0.5;
       
 23682 var DEFAULT_SWIPE_DISTANCE = 60;
       
 23683 var defaultWindow = typeof window !== 'undefined' ? window : undefined;
       
 23684 var defaultCoordinatesOptions = {
       
 23685   lockDirection: false,
       
 23686   axis: undefined,
       
 23687   bounds: undefined
       
 23688 };
       
 23689 /**
       
 23690  * @private
       
 23691  *
       
 23692  * Returns the internal generic option object.
       
 23693  *
       
 23694  * @param {Partial<GenericOptions>} [config={}]
       
 23695  * @returns {InternalGenericOptions}
       
 23696  */
       
 23697 
       
 23698 function getInternalGenericOptions(config) {
       
 23699   if (config === void 0) {
       
 23700     config = {};
       
 23701   }
       
 23702 
       
 23703   var _config = config,
       
 23704       _config$eventOptions = _config.eventOptions;
       
 23705   _config$eventOptions = _config$eventOptions === void 0 ? {} : _config$eventOptions;
       
 23706 
       
 23707   var _config$eventOptions$ = _config$eventOptions.passive,
       
 23708       passive = _config$eventOptions$ === void 0 ? true : _config$eventOptions$,
       
 23709       _config$eventOptions$2 = _config$eventOptions.capture,
       
 23710       capture = _config$eventOptions$2 === void 0 ? false : _config$eventOptions$2,
       
 23711       _config$eventOptions$3 = _config$eventOptions.pointer,
       
 23712       pointer = _config$eventOptions$3 === void 0 ? false : _config$eventOptions$3,
       
 23713       _config$window = _config.window,
       
 23714       window = _config$window === void 0 ? defaultWindow : _config$window,
       
 23715       _config$domTarget = _config.domTarget,
       
 23716       domTarget = _config$domTarget === void 0 ? undefined : _config$domTarget,
       
 23717       _config$enabled = _config.enabled,
       
 23718       enabled = _config$enabled === void 0 ? true : _config$enabled,
       
 23719       restConfig = _objectWithoutPropertiesLoose(_config, ["eventOptions", "window", "domTarget", "enabled"]);
       
 23720 
       
 23721   return _extends({}, restConfig, {
       
 23722     enabled: enabled,
       
 23723     domTarget: domTarget,
       
 23724     window: window,
       
 23725     // passive is always true if there's no domTarget
       
 23726     eventOptions: {
       
 23727       passive: !domTarget || !!passive,
       
 23728       capture: !!capture
       
 23729     },
       
 23730     captureString: capture ? 'Capture' : '',
       
 23731     pointer: !!pointer
       
 23732   });
       
 23733 }
       
 23734 function getInternalGestureOptions(gestureConfig) {
       
 23735   var _gestureConfig$thresh = gestureConfig.threshold,
       
 23736       threshold = _gestureConfig$thresh === void 0 ? undefined : _gestureConfig$thresh,
       
 23737       _gestureConfig$rubber = gestureConfig.rubberband,
       
 23738       rubberband = _gestureConfig$rubber === void 0 ? 0 : _gestureConfig$rubber,
       
 23739       _gestureConfig$enable = gestureConfig.enabled,
       
 23740       enabled = _gestureConfig$enable === void 0 ? true : _gestureConfig$enable,
       
 23741       _gestureConfig$initia = gestureConfig.initial,
       
 23742       initial = _gestureConfig$initia === void 0 ? [0, 0] : _gestureConfig$initia;
       
 23743   if (typeof rubberband === 'boolean') rubberband = rubberband ? DEFAULT_RUBBERBAND : 0;
       
 23744   if (threshold === void 0) threshold = 0;
       
 23745   return {
       
 23746     enabled: enabled,
       
 23747     initial: initial,
       
 23748     threshold: def.array(threshold),
       
 23749     rubberband: def.array(rubberband)
       
 23750   };
       
 23751 }
       
 23752 function getInternalCoordinatesOptions(coordinatesConfig) {
       
 23753   if (coordinatesConfig === void 0) {
       
 23754     coordinatesConfig = {};
       
 23755   }
       
 23756 
       
 23757   var _coordinatesConfig = coordinatesConfig,
       
 23758       axis = _coordinatesConfig.axis,
       
 23759       lockDirection = _coordinatesConfig.lockDirection,
       
 23760       _coordinatesConfig$bo = _coordinatesConfig.bounds,
       
 23761       bounds = _coordinatesConfig$bo === void 0 ? {} : _coordinatesConfig$bo,
       
 23762       internalOptions = _objectWithoutPropertiesLoose(_coordinatesConfig, ["axis", "lockDirection", "bounds"]);
       
 23763 
       
 23764   var boundsArray = [[def.withDefault(bounds.left, -Infinity), def.withDefault(bounds.right, Infinity)], [def.withDefault(bounds.top, -Infinity), def.withDefault(bounds.bottom, Infinity)]];
       
 23765   return _extends({}, getInternalGestureOptions(internalOptions), {}, defaultCoordinatesOptions, {}, matchKeysFromObject({
       
 23766     axis: axis,
       
 23767     lockDirection: lockDirection
       
 23768   }, coordinatesConfig), {
       
 23769     bounds: boundsArray
       
 23770   });
       
 23771 }
       
 23772 function getInternalDistanceAngleOptions(distanceAngleConfig) {
       
 23773   if (distanceAngleConfig === void 0) {
       
 23774     distanceAngleConfig = {};
       
 23775   }
       
 23776 
       
 23777   var _distanceAngleConfig = distanceAngleConfig,
       
 23778       _distanceAngleConfig$ = _distanceAngleConfig.distanceBounds,
       
 23779       distanceBounds = _distanceAngleConfig$ === void 0 ? {} : _distanceAngleConfig$,
       
 23780       _distanceAngleConfig$2 = _distanceAngleConfig.angleBounds,
       
 23781       angleBounds = _distanceAngleConfig$2 === void 0 ? {} : _distanceAngleConfig$2,
       
 23782       internalOptions = _objectWithoutPropertiesLoose(_distanceAngleConfig, ["distanceBounds", "angleBounds"]);
       
 23783 
       
 23784   var boundsArray = [[def.withDefault(distanceBounds.min, -Infinity), def.withDefault(distanceBounds.max, Infinity)], [def.withDefault(angleBounds.min, -Infinity), def.withDefault(angleBounds.max, Infinity)]];
       
 23785   return _extends({}, getInternalGestureOptions(internalOptions), {
       
 23786     bounds: boundsArray
       
 23787   });
       
 23788 }
       
 23789 function getInternalDragOptions(dragConfig) {
       
 23790   if (dragConfig === void 0) {
       
 23791     dragConfig = {};
       
 23792   }
       
 23793 
       
 23794   var _dragConfig = dragConfig,
       
 23795       enabled = _dragConfig.enabled,
       
 23796       threshold = _dragConfig.threshold,
       
 23797       bounds = _dragConfig.bounds,
       
 23798       rubberband = _dragConfig.rubberband,
       
 23799       initial = _dragConfig.initial,
       
 23800       dragOptions = _objectWithoutPropertiesLoose(_dragConfig, ["enabled", "threshold", "bounds", "rubberband", "initial"]);
       
 23801 
       
 23802   var _dragOptions$swipeVel = dragOptions.swipeVelocity,
       
 23803       swipeVelocity = _dragOptions$swipeVel === void 0 ? DEFAULT_SWIPE_VELOCITY : _dragOptions$swipeVel,
       
 23804       _dragOptions$swipeDis = dragOptions.swipeDistance,
       
 23805       swipeDistance = _dragOptions$swipeDis === void 0 ? DEFAULT_SWIPE_DISTANCE : _dragOptions$swipeDis,
       
 23806       _dragOptions$delay = dragOptions.delay,
       
 23807       delay = _dragOptions$delay === void 0 ? false : _dragOptions$delay,
       
 23808       _dragOptions$filterTa = dragOptions.filterTaps,
       
 23809       filterTaps = _dragOptions$filterTa === void 0 ? false : _dragOptions$filterTa,
       
 23810       axis = dragOptions.axis,
       
 23811       lockDirection = dragOptions.lockDirection;
       
 23812 
       
 23813   if (threshold === void 0) {
       
 23814     threshold = Math.max(0, filterTaps ? 3 : 0, lockDirection || axis ? 1 : 0);
       
 23815   } else {
       
 23816     filterTaps = true;
       
 23817   }
       
 23818 
       
 23819   var internalCoordinatesOptions = getInternalCoordinatesOptions(matchKeysFromObject({
       
 23820     enabled: enabled,
       
 23821     threshold: threshold,
       
 23822     bounds: bounds,
       
 23823     rubberband: rubberband,
       
 23824     axis: axis,
       
 23825     lockDirection: lockDirection,
       
 23826     initial: initial
       
 23827   }, dragConfig));
       
 23828   return _extends({}, internalCoordinatesOptions, {
       
 23829     filterTaps: filterTaps || internalCoordinatesOptions.threshold[0] + internalCoordinatesOptions.threshold[1] > 0,
       
 23830     swipeVelocity: def.array(swipeVelocity),
       
 23831     swipeDistance: def.array(swipeDistance),
       
 23832     delay: typeof delay === 'number' ? delay : delay ? DEFAULT_DRAG_DELAY : 0
       
 23833   });
       
 23834 }
       
 23835 
       
 23836 /**
       
 23837  * @public
       
 23838  *
       
 23839  * Drag hook.
       
 23840  *
       
 23841  * @param {Handler<'drag'>} handler - the function fired every time the drag gesture updates
       
 23842  * @param {(Config | {})} [config={}] - the config object including generic options and drag options
       
 23843  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 23844  */
       
 23845 
       
 23846 function useDrag(handler, config) {
       
 23847   if (config === void 0) {
       
 23848     config = {};
       
 23849   }
       
 23850 
       
 23851   var _config = config,
       
 23852       domTarget = _config.domTarget,
       
 23853       eventOptions = _config.eventOptions,
       
 23854       window = _config.window,
       
 23855       drag = _objectWithoutPropertiesLoose(_config, ["domTarget", "eventOptions", "window"]);
       
 23856   /**
       
 23857    * TODO: at the moment we recompute the config object at every render
       
 23858    * this could probably be optimized
       
 23859    */
       
 23860 
       
 23861 
       
 23862   var mergedConfig = _extends({}, getInternalGenericOptions({
       
 23863     domTarget: domTarget,
       
 23864     eventOptions: eventOptions,
       
 23865     window: window
       
 23866   }), {
       
 23867     drag: getInternalDragOptions(drag)
       
 23868   });
       
 23869 
       
 23870   return useRecognizers({
       
 23871     drag: handler
       
 23872   }, [DragRecognizer], mergedConfig);
       
 23873 }
       
 23874 
       
 23875 /**
       
 23876  * @private
       
 23877  * Abstract class for distance/angle-based gesture recongizers
       
 23878  * @abstract
       
 23879  * @class DistanceAngleRecognizer
       
 23880  * @extends {Recognizer<T>}
       
 23881  * @template T
       
 23882  */
       
 23883 
       
 23884 var DistanceAngleRecognizer = /*#__PURE__*/function (_Recognizer) {
       
 23885   _inheritsLoose(DistanceAngleRecognizer, _Recognizer);
       
 23886 
       
 23887   function DistanceAngleRecognizer() {
       
 23888     return _Recognizer.apply(this, arguments) || this;
       
 23889   }
       
 23890 
       
 23891   var _proto = DistanceAngleRecognizer.prototype;
       
 23892 
       
 23893   /**
       
 23894    * Returns the real movement (without taking intentionality into acount)
       
 23895    */
       
 23896   _proto.getInternalMovement = function getInternalMovement(_ref, state) {
       
 23897     var d = _ref[0],
       
 23898         a = _ref[1];
       
 23899     var da = state.values,
       
 23900         turns = state.turns,
       
 23901         initial = state.initial; // angle might not be defined when ctrl wheel is used for zoom only
       
 23902     // in that case we set it to the previous angle value
       
 23903 
       
 23904     a = a !== void 0 ? a : da[1];
       
 23905     var delta_a = a - da[1];
       
 23906     /**
       
 23907      * The angle value might jump from 179deg to -179deg when we actually want to
       
 23908      * read 181deg to ensure continuity. To make that happen, we detect when the jump
       
 23909      * is supsiciously high (ie > 270deg) and increase the `turns` value
       
 23910      */
       
 23911 
       
 23912     var newTurns = Math.abs(delta_a) > 270 ? turns + Math.sign(delta_a) : turns; // we update the angle difference to its corrected value
       
 23913 
       
 23914     var movement_d = d - initial[0];
       
 23915     var movement_a = a - 360 * newTurns - initial[1];
       
 23916     return [movement_d, movement_a];
       
 23917   };
       
 23918 
       
 23919   _proto.getKinematics = function getKinematics(values, event) {
       
 23920     var _this$state = this.state,
       
 23921         timeStamp = _this$state.timeStamp,
       
 23922         initial = _this$state.initial;
       
 23923     var movementDetection = this.getMovement(values, this.state);
       
 23924     var delta = movementDetection.delta,
       
 23925         movement = movementDetection.movement;
       
 23926     var turns = (values[1] - movement[1] - initial[1]) / 360;
       
 23927     var delta_t = event.timeStamp - timeStamp;
       
 23928     var kinematics = calculateAllKinematics(movement, delta, delta_t);
       
 23929     return _extends({
       
 23930       values: values,
       
 23931       delta: delta,
       
 23932       turns: turns
       
 23933     }, movementDetection, {}, kinematics);
       
 23934   };
       
 23935 
       
 23936   _proto.mapStateValues = function mapStateValues(state) {
       
 23937     return {
       
 23938       da: state.values,
       
 23939       vdva: state.velocities
       
 23940     };
       
 23941   };
       
 23942 
       
 23943   return DistanceAngleRecognizer;
       
 23944 }(Recognizer);
       
 23945 
       
 23946 var PinchRecognizer = /*#__PURE__*/function (_DistanceAngleRecogni) {
       
 23947   _inheritsLoose(PinchRecognizer, _DistanceAngleRecogni);
       
 23948 
       
 23949   function PinchRecognizer(controller, args) {
       
 23950     var _this;
       
 23951 
       
 23952     _this = _DistanceAngleRecogni.call(this, 'pinch', controller, args) || this;
       
 23953     _this.ingKey = 'pinching';
       
 23954 
       
 23955     _this.pinchShouldStart = function (event) {
       
 23956       var _getGenericEventData = getGenericEventData(event),
       
 23957           touches = _getGenericEventData.touches;
       
 23958 
       
 23959       return _this.enabled && touches === 2;
       
 23960     };
       
 23961 
       
 23962     _this.onPinchStart = function (event) {
       
 23963       if (!_this.pinchShouldStart(event)) return;
       
 23964 
       
 23965       var _getTwoTouchesEventDa = getTwoTouchesEventData(event),
       
 23966           values = _getTwoTouchesEventDa.values,
       
 23967           origin = _getTwoTouchesEventDa.origin;
       
 23968 
       
 23969       _this.updateSharedState(getGenericEventData(event));
       
 23970 
       
 23971       var startState = _extends({}, _this.getStartGestureState(values, event), {}, _this.getGenericPayload(event, true));
       
 23972 
       
 23973       _this.updateGestureState(_extends({}, startState, {}, _this.getMovement(values, startState), {
       
 23974         origin: origin,
       
 23975         cancel: function cancel() {
       
 23976           return _this.onCancel();
       
 23977         }
       
 23978       }));
       
 23979 
       
 23980       _this.fireGestureHandler();
       
 23981     };
       
 23982 
       
 23983     _this.onPinchChange = function (event) {
       
 23984       var _this$state = _this.state,
       
 23985           canceled = _this$state.canceled,
       
 23986           timeStamp = _this$state.timeStamp,
       
 23987           _active = _this$state._active;
       
 23988       if (canceled || !_active) return;
       
 23989       var genericEventData = getGenericEventData(event);
       
 23990       if (genericEventData.touches !== 2 || event.timeStamp === timeStamp) return;
       
 23991 
       
 23992       _this.updateSharedState(genericEventData);
       
 23993 
       
 23994       var _getTwoTouchesEventDa2 = getTwoTouchesEventData(event),
       
 23995           values = _getTwoTouchesEventDa2.values,
       
 23996           origin = _getTwoTouchesEventDa2.origin;
       
 23997 
       
 23998       var kinematics = _this.getKinematics(values, event);
       
 23999 
       
 24000       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics, {
       
 24001         origin: origin,
       
 24002         cancel: function cancel() {
       
 24003           return _this.onCancel();
       
 24004         }
       
 24005       }));
       
 24006 
       
 24007       _this.fireGestureHandler();
       
 24008     };
       
 24009 
       
 24010     _this.onPinchEnd = function (event) {
       
 24011       if (!_this.state.active) return;
       
 24012       _this.state._active = false;
       
 24013 
       
 24014       _this.updateSharedState({
       
 24015         down: false,
       
 24016         touches: 0
       
 24017       });
       
 24018 
       
 24019       _this.updateGestureState(_extends({
       
 24020         event: event
       
 24021       }, _this.getGenericPayload(event), {}, _this.getMovement(_this.state.values)));
       
 24022 
       
 24023       _this.fireGestureHandler();
       
 24024     };
       
 24025 
       
 24026     _this.onCancel = function () {
       
 24027       _this.state._active = false;
       
 24028 
       
 24029       _this.updateGestureState({
       
 24030         canceled: true,
       
 24031         cancel: noop
       
 24032       });
       
 24033 
       
 24034       _this.updateSharedState({
       
 24035         down: false,
       
 24036         touches: 0
       
 24037       });
       
 24038 
       
 24039       requestAnimationFrame(function () {
       
 24040         return _this.fireGestureHandler();
       
 24041       });
       
 24042     };
       
 24043     /**
       
 24044      * PINCH WITH WEBKIT GESTURES
       
 24045      */
       
 24046 
       
 24047 
       
 24048     _this.onGestureStart = function (event) {
       
 24049       if (!_this.enabled) return;
       
 24050       event.preventDefault();
       
 24051 
       
 24052       var _getWebkitGestureEven = getWebkitGestureEventValues(event),
       
 24053           values = _getWebkitGestureEven.values;
       
 24054 
       
 24055       _this.updateSharedState(getGenericEventData(event));
       
 24056 
       
 24057       var startState = _extends({}, _this.getStartGestureState(values, event), {}, _this.getGenericPayload(event, true));
       
 24058 
       
 24059       _this.updateGestureState(_extends({}, startState, {}, _this.getMovement(values, startState), {
       
 24060         cancel: function cancel() {
       
 24061           return _this.onCancel();
       
 24062         }
       
 24063       }));
       
 24064 
       
 24065       _this.fireGestureHandler();
       
 24066     };
       
 24067 
       
 24068     _this.onGestureChange = function (event) {
       
 24069       var _this$state2 = _this.state,
       
 24070           canceled = _this$state2.canceled,
       
 24071           _active = _this$state2._active;
       
 24072       if (canceled || !_active) return;
       
 24073       event.preventDefault();
       
 24074       var genericEventData = getGenericEventData(event);
       
 24075 
       
 24076       _this.updateSharedState(genericEventData);
       
 24077 
       
 24078       var _getWebkitGestureEven2 = getWebkitGestureEventValues(event),
       
 24079           values = _getWebkitGestureEven2.values;
       
 24080 
       
 24081       var kinematics = _this.getKinematics(values, event);
       
 24082 
       
 24083       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics, {
       
 24084         cancel: function cancel() {
       
 24085           return _this.onCancel();
       
 24086         }
       
 24087       }));
       
 24088 
       
 24089       _this.fireGestureHandler();
       
 24090     };
       
 24091 
       
 24092     _this.onGestureEnd = function (event) {
       
 24093       event.preventDefault();
       
 24094       if (!_this.state.active) return;
       
 24095       _this.state._active = false;
       
 24096 
       
 24097       _this.updateSharedState({
       
 24098         down: false,
       
 24099         touches: 0
       
 24100       });
       
 24101 
       
 24102       _this.updateGestureState(_extends({
       
 24103         event: event
       
 24104       }, _this.getGenericPayload(event), {}, _this.getMovement(_this.state.values)));
       
 24105 
       
 24106       _this.fireGestureHandler();
       
 24107     };
       
 24108 
       
 24109     _this.updateTouchData = function (event) {
       
 24110       if (!_this.enabled || event.touches.length !== 2 || !_this.state._active) return;
       
 24111 
       
 24112       var _getTwoTouchesEventDa3 = getTwoTouchesEventData(event),
       
 24113           origin = _getTwoTouchesEventDa3.origin;
       
 24114 
       
 24115       _this.state.origin = origin;
       
 24116     };
       
 24117     /**
       
 24118      * PINCH WITH WHEEL
       
 24119      */
       
 24120 
       
 24121 
       
 24122     _this.wheelShouldRun = function (event) {
       
 24123       return _this.enabled && event.ctrlKey;
       
 24124     };
       
 24125 
       
 24126     _this.getWheelValuesFromEvent = function (event) {
       
 24127       var _getWheelEventValues = getWheelEventValues(event),
       
 24128           _getWheelEventValues$ = _getWheelEventValues.values,
       
 24129           delta_d = _getWheelEventValues$[1];
       
 24130 
       
 24131       var _this$state$values = _this.state.values,
       
 24132           prev_d = _this$state$values[0],
       
 24133           prev_a = _this$state$values[1];
       
 24134       var d = prev_d - delta_d;
       
 24135       var a = prev_a !== void 0 ? prev_a : 0;
       
 24136       return {
       
 24137         values: [d, a],
       
 24138         origin: [event.clientX, event.clientY],
       
 24139         delta: [0, delta_d]
       
 24140       };
       
 24141     };
       
 24142 
       
 24143     _this.onWheel = function (event) {
       
 24144       if (!_this.wheelShouldRun(event)) return;
       
 24145 
       
 24146       _this.clearTimeout();
       
 24147 
       
 24148       _this.setTimeout(_this.onWheelEnd);
       
 24149 
       
 24150       if (!_this.state._active) _this.onWheelStart(event);else _this.onWheelChange(event);
       
 24151     };
       
 24152 
       
 24153     _this.onWheelStart = function (event) {
       
 24154       var _this$getWheelValuesF = _this.getWheelValuesFromEvent(event),
       
 24155           values = _this$getWheelValuesF.values,
       
 24156           delta = _this$getWheelValuesF.delta,
       
 24157           origin = _this$getWheelValuesF.origin;
       
 24158 
       
 24159       if (!_this.controller.config.eventOptions.passive) {
       
 24160         event.preventDefault();
       
 24161       } else if (false) {}
       
 24162 
       
 24163       _this.updateSharedState(getGenericEventData(event));
       
 24164 
       
 24165       var startState = _extends({}, _this.getStartGestureState(values, event), {}, _this.getGenericPayload(event, true), {
       
 24166         initial: _this.state.values
       
 24167       });
       
 24168 
       
 24169       _this.updateGestureState(_extends({}, startState, {}, _this.getMovement(values, startState), {
       
 24170         offset: values,
       
 24171         delta: delta,
       
 24172         origin: origin
       
 24173       }));
       
 24174 
       
 24175       _this.fireGestureHandler();
       
 24176     };
       
 24177 
       
 24178     _this.onWheelChange = function (event) {
       
 24179       var genericEventData = getGenericEventData(event);
       
 24180 
       
 24181       _this.updateSharedState(genericEventData);
       
 24182 
       
 24183       var _this$getWheelValuesF2 = _this.getWheelValuesFromEvent(event),
       
 24184           values = _this$getWheelValuesF2.values,
       
 24185           origin = _this$getWheelValuesF2.origin,
       
 24186           delta = _this$getWheelValuesF2.delta;
       
 24187 
       
 24188       var kinematics = _this.getKinematics(values, event);
       
 24189 
       
 24190       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics, {
       
 24191         origin: origin,
       
 24192         delta: delta
       
 24193       }));
       
 24194 
       
 24195       _this.fireGestureHandler();
       
 24196     };
       
 24197 
       
 24198     _this.onWheelEnd = function () {
       
 24199       _this.state._active = false;
       
 24200 
       
 24201       _this.updateGestureState(_this.getMovement(_this.state.values));
       
 24202 
       
 24203       _this.fireGestureHandler();
       
 24204     };
       
 24205 
       
 24206     return _this;
       
 24207   }
       
 24208 
       
 24209   var _proto = PinchRecognizer.prototype;
       
 24210 
       
 24211   _proto.addBindings = function addBindings() {
       
 24212     // Only try to use gesture events when they are supported and domTarget is set
       
 24213     // as React doesn't support gesture handlers.
       
 24214     if (this.controller.config.domTarget && supportsGestureEvents()) {
       
 24215       this.controller.addBindings('onGestureStart', this.onGestureStart);
       
 24216       this.controller.addBindings('onGestureChange', this.onGestureChange);
       
 24217       this.controller.addBindings(['onGestureEnd', 'onTouchCancel'], this.onGestureEnd);
       
 24218       this.controller.addBindings(['onTouchStart', 'onTouchMove'], this.updateTouchData);
       
 24219     } else {
       
 24220       this.controller.addBindings('onTouchStart', this.onPinchStart);
       
 24221       this.controller.addBindings('onTouchMove', this.onPinchChange);
       
 24222       this.controller.addBindings(['onTouchEnd', 'onTouchCancel'], this.onPinchEnd);
       
 24223       this.controller.addBindings('onWheel', this.onWheel);
       
 24224     }
       
 24225   };
       
 24226 
       
 24227   return PinchRecognizer;
       
 24228 }(DistanceAngleRecognizer);
       
 24229 
       
 24230 /**
       
 24231  * @public
       
 24232  *
       
 24233  * Pinch hook.
       
 24234  *
       
 24235  * @param {Handler<'pinch'>} handler - the function fired every time the pinch gesture updates
       
 24236  * @param {(Config | {})} [config={}] - the config object including generic options and pinch options
       
 24237  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 24238  */
       
 24239 
       
 24240 function usePinch(handler, config) {
       
 24241   if (config === void 0) {
       
 24242     config = {};
       
 24243   }
       
 24244 
       
 24245   var _config = config,
       
 24246       domTarget = _config.domTarget,
       
 24247       eventOptions = _config.eventOptions,
       
 24248       window = _config.window,
       
 24249       pinch = _objectWithoutPropertiesLoose(_config, ["domTarget", "eventOptions", "window"]);
       
 24250   /**
       
 24251    * TODO: at the moment we recompute the config object at every render
       
 24252    * this could probably be optimized
       
 24253    */
       
 24254 
       
 24255 
       
 24256   var mergedConfig = _extends({}, getInternalGenericOptions({
       
 24257     domTarget: domTarget,
       
 24258     eventOptions: eventOptions,
       
 24259     window: window
       
 24260   }), {
       
 24261     pinch: getInternalDistanceAngleOptions(pinch)
       
 24262   });
       
 24263 
       
 24264   return useRecognizers({
       
 24265     pinch: handler
       
 24266   }, [PinchRecognizer], mergedConfig);
       
 24267 }
       
 24268 
       
 24269 var WheelRecognizer = /*#__PURE__*/function (_CoordinatesRecognize) {
       
 24270   _inheritsLoose(WheelRecognizer, _CoordinatesRecognize);
       
 24271 
       
 24272   function WheelRecognizer(controller, args) {
       
 24273     var _this;
       
 24274 
       
 24275     _this = _CoordinatesRecognize.call(this, 'wheel', controller, args) || this;
       
 24276     _this.ingKey = 'wheeling';
       
 24277     _this.debounced = true;
       
 24278 
       
 24279     _this.wheelShouldRun = function (event) {
       
 24280       if (event.ctrlKey && 'pinch' in _this.controller.handlers) return false;
       
 24281       return _this.enabled;
       
 24282     };
       
 24283 
       
 24284     _this.getValuesFromEvent = function (event) {
       
 24285       var prevValues = _this.state.values;
       
 24286 
       
 24287       var _getWheelEventValues = getWheelEventValues(event),
       
 24288           values = _getWheelEventValues.values;
       
 24289 
       
 24290       return {
       
 24291         values: addV(values, prevValues)
       
 24292       };
       
 24293     };
       
 24294 
       
 24295     _this.onWheel = function (event) {
       
 24296       if (!_this.wheelShouldRun(event)) return;
       
 24297 
       
 24298       _this.clearTimeout();
       
 24299 
       
 24300       _this.setTimeout(_this.onWheelEnd);
       
 24301 
       
 24302       if (!_this.state._active) _this.onWheelStart(event);else _this.onWheelChange(event);
       
 24303     };
       
 24304 
       
 24305     _this.onWheelStart = function (event) {
       
 24306       var _this$getValuesFromEv = _this.getValuesFromEvent(event),
       
 24307           values = _this$getValuesFromEv.values;
       
 24308 
       
 24309       _this.updateSharedState(getGenericEventData(event));
       
 24310 
       
 24311       var startState = _extends({}, _this.getStartGestureState(values, event), {}, _this.getGenericPayload(event, true), {
       
 24312         initial: _this.state.values
       
 24313       });
       
 24314 
       
 24315       var movementDetection = _this.getMovement(values, startState);
       
 24316 
       
 24317       var delta = movementDetection.delta;
       
 24318 
       
 24319       _this.updateGestureState(_extends({}, startState, {}, movementDetection, {
       
 24320         distance: calculateDistance(delta),
       
 24321         direction: calculateDirection(delta)
       
 24322       }));
       
 24323 
       
 24324       _this.fireGestureHandler();
       
 24325     };
       
 24326 
       
 24327     _this.onWheelChange = function (event) {
       
 24328       var genericEventData = getGenericEventData(event);
       
 24329 
       
 24330       _this.updateSharedState(genericEventData);
       
 24331 
       
 24332       var _this$getValuesFromEv2 = _this.getValuesFromEvent(event),
       
 24333           values = _this$getValuesFromEv2.values;
       
 24334 
       
 24335       var kinematics = _this.getKinematics(values, event);
       
 24336 
       
 24337       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics));
       
 24338 
       
 24339       _this.fireGestureHandler();
       
 24340     };
       
 24341 
       
 24342     _this.onWheelEnd = function () {
       
 24343       _this.state._active = false;
       
 24344 
       
 24345       _this.updateGestureState(_extends({}, _this.getMovement(_this.state.values), {
       
 24346         velocities: [0, 0],
       
 24347         velocity: 0
       
 24348       }));
       
 24349 
       
 24350       _this.fireGestureHandler();
       
 24351     };
       
 24352 
       
 24353     return _this;
       
 24354   }
       
 24355 
       
 24356   var _proto = WheelRecognizer.prototype;
       
 24357 
       
 24358   _proto.addBindings = function addBindings() {
       
 24359     this.controller.addBindings('onWheel', this.onWheel);
       
 24360   };
       
 24361 
       
 24362   return WheelRecognizer;
       
 24363 }(CoordinatesRecognizer);
       
 24364 
       
 24365 /**
       
 24366  * @public
       
 24367  *
       
 24368  * Wheel hook.
       
 24369  *
       
 24370  * @param {Handler<'wheel'>} handler - the function fired every time the wheel gesture updates
       
 24371  * @param {(Config | {})} [config={}] - the config object including generic options and wheel options
       
 24372  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 24373  */
       
 24374 
       
 24375 function useWheel(handler, config) {
       
 24376   if (config === void 0) {
       
 24377     config = {};
       
 24378   }
       
 24379 
       
 24380   var _config = config,
       
 24381       domTarget = _config.domTarget,
       
 24382       eventOptions = _config.eventOptions,
       
 24383       window = _config.window,
       
 24384       wheel = _objectWithoutPropertiesLoose(_config, ["domTarget", "eventOptions", "window"]);
       
 24385   /**
       
 24386    * TODO: at the moment we recompute the config object at every render
       
 24387    * this could probably be optimized
       
 24388    */
       
 24389 
       
 24390 
       
 24391   var mergedConfig = _extends({}, getInternalGenericOptions({
       
 24392     domTarget: domTarget,
       
 24393     eventOptions: eventOptions,
       
 24394     window: window
       
 24395   }), {
       
 24396     wheel: getInternalCoordinatesOptions(wheel)
       
 24397   });
       
 24398 
       
 24399   return useRecognizers({
       
 24400     wheel: handler
       
 24401   }, [WheelRecognizer], mergedConfig);
       
 24402 }
       
 24403 
       
 24404 var MoveRecognizer = /*#__PURE__*/function (_CoordinatesRecognize) {
       
 24405   _inheritsLoose(MoveRecognizer, _CoordinatesRecognize);
       
 24406 
       
 24407   function MoveRecognizer(controller, args) {
       
 24408     var _this;
       
 24409 
       
 24410     _this = _CoordinatesRecognize.call(this, 'move', controller, args) || this;
       
 24411     _this.ingKey = 'moving';
       
 24412     _this.debounced = true;
       
 24413 
       
 24414     _this.moveShouldRun = function () {
       
 24415       return _this.enabled;
       
 24416     };
       
 24417 
       
 24418     _this.onMove = function (event) {
       
 24419       if (!_this.moveShouldRun()) return;
       
 24420 
       
 24421       _this.clearTimeout();
       
 24422 
       
 24423       _this.setTimeout(_this.onMoveEnd);
       
 24424 
       
 24425       if (!_this.state._active) _this.onMoveStart(event);else _this.onMoveChange(event);
       
 24426     };
       
 24427 
       
 24428     _this.onMoveStart = function (event) {
       
 24429       var _getPointerEventValue = getPointerEventValues(event),
       
 24430           values = _getPointerEventValue.values;
       
 24431 
       
 24432       _this.updateSharedState(getGenericEventData(event));
       
 24433 
       
 24434       var startState = _extends({}, _this.getStartGestureState(values, event), {}, _this.getGenericPayload(event, true));
       
 24435 
       
 24436       _this.updateGestureState(_extends({}, startState, {}, _this.getMovement(values, startState)));
       
 24437 
       
 24438       _this.fireGestureHandler();
       
 24439     };
       
 24440 
       
 24441     _this.onMoveChange = function (event) {
       
 24442       var genericEventData = getGenericEventData(event);
       
 24443 
       
 24444       _this.updateSharedState(genericEventData);
       
 24445 
       
 24446       var _getPointerEventValue2 = getPointerEventValues(event),
       
 24447           values = _getPointerEventValue2.values;
       
 24448 
       
 24449       var kinematics = _this.getKinematics(values, event);
       
 24450 
       
 24451       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics));
       
 24452 
       
 24453       _this.fireGestureHandler();
       
 24454     };
       
 24455 
       
 24456     _this.onMoveEnd = function () {
       
 24457       _this.state._active = false;
       
 24458 
       
 24459       _this.updateGestureState(_extends({}, _this.getMovement(_this.state.values), {
       
 24460         velocities: [0, 0],
       
 24461         velocity: 0
       
 24462       }));
       
 24463 
       
 24464       _this.fireGestureHandler();
       
 24465     };
       
 24466 
       
 24467     _this.onPointerEnter = function (event) {
       
 24468       _this.controller.state.shared.hovering = true;
       
 24469       if (!_this.controller.config.enabled) return;
       
 24470 
       
 24471       if (_this.controller.config.hover.enabled) {
       
 24472         var _getPointerEventValue3 = getPointerEventValues(event),
       
 24473             values = _getPointerEventValue3.values;
       
 24474 
       
 24475         var state = _extends({}, _this.controller.state.shared, {}, _this.state, {}, _this.getGenericPayload(event, true), {
       
 24476           values: values,
       
 24477           active: true,
       
 24478           hovering: true
       
 24479         });
       
 24480 
       
 24481         _this.controller.handlers.hover(_extends({}, state, {}, _this.mapStateValues(state)));
       
 24482       }
       
 24483 
       
 24484       if ('move' in _this.controller.handlers) _this.onMoveStart(event);
       
 24485     };
       
 24486 
       
 24487     _this.onPointerLeave = function (event) {
       
 24488       _this.controller.state.shared.hovering = false;
       
 24489       if ('move' in _this.controller.handlers) _this.onMoveEnd();
       
 24490 
       
 24491       if (_this.controller.config.hover.enabled) {
       
 24492         var _getPointerEventValue4 = getPointerEventValues(event),
       
 24493             values = _getPointerEventValue4.values;
       
 24494 
       
 24495         var state = _extends({}, _this.controller.state.shared, {}, _this.state, {}, _this.getGenericPayload(event), {
       
 24496           values: values,
       
 24497           active: false
       
 24498         });
       
 24499 
       
 24500         _this.controller.handlers.hover(_extends({}, state, {}, _this.mapStateValues(state)));
       
 24501       }
       
 24502     };
       
 24503 
       
 24504     return _this;
       
 24505   }
       
 24506 
       
 24507   var _proto = MoveRecognizer.prototype;
       
 24508 
       
 24509   _proto.addBindings = function addBindings() {
       
 24510     if (this.controller.config.pointer) {
       
 24511       if ('move' in this.controller.handlers) {
       
 24512         this.controller.addBindings('onPointerMove', this.onMove);
       
 24513       }
       
 24514 
       
 24515       if ('hover' in this.controller.handlers) {
       
 24516         this.controller.addBindings('onPointerEnter', this.onPointerEnter);
       
 24517         this.controller.addBindings('onPointerLeave', this.onPointerLeave);
       
 24518       }
       
 24519     } else {
       
 24520       if ('move' in this.controller.handlers) {
       
 24521         this.controller.addBindings('onMouseMove', this.onMove);
       
 24522       }
       
 24523 
       
 24524       if ('hover' in this.controller.handlers) {
       
 24525         this.controller.addBindings('onMouseEnter', this.onPointerEnter);
       
 24526         this.controller.addBindings('onMouseLeave', this.onPointerLeave);
       
 24527       }
       
 24528     }
       
 24529   };
       
 24530 
       
 24531   return MoveRecognizer;
       
 24532 }(CoordinatesRecognizer);
       
 24533 
       
 24534 /**
       
 24535  * @public
       
 24536  *
       
 24537  * Move hook.
       
 24538  *
       
 24539  * @param {Handler<'move'>} handler - the function fired every time the move gesture updates
       
 24540  * @param {(Config | {})} [config={}] - the config object including generic options and move options
       
 24541  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 24542  */
       
 24543 
       
 24544 function useMove(handler, config) {
       
 24545   if (config === void 0) {
       
 24546     config = {};
       
 24547   }
       
 24548 
       
 24549   var _config = config,
       
 24550       domTarget = _config.domTarget,
       
 24551       eventOptions = _config.eventOptions,
       
 24552       window = _config.window,
       
 24553       move = _objectWithoutPropertiesLoose(_config, ["domTarget", "eventOptions", "window"]);
       
 24554   /**
       
 24555    * TODO: at the moment we recompute the config object at every render
       
 24556    * this could probably be optimized
       
 24557    */
       
 24558 
       
 24559 
       
 24560   var mergedConfig = _extends({}, getInternalGenericOptions({
       
 24561     domTarget: domTarget,
       
 24562     eventOptions: eventOptions,
       
 24563     window: window
       
 24564   }), {
       
 24565     move: getInternalCoordinatesOptions(move)
       
 24566   });
       
 24567 
       
 24568   return useRecognizers({
       
 24569     move: handler
       
 24570   }, [MoveRecognizer], mergedConfig);
       
 24571 }
       
 24572 
       
 24573 /**
       
 24574  * @public
       
 24575  *
       
 24576  * Hover hook.
       
 24577  *
       
 24578  * @param {Handler<'hover'>} handler - the function fired every time the hover gesture updates
       
 24579  * @param {(Config | {})} [config={}] - the config object including generic options and hover options
       
 24580  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 24581  */
       
 24582 
       
 24583 function useHover(handler, config) {
       
 24584   if (config === void 0) {
       
 24585     config = {};
       
 24586   }
       
 24587 
       
 24588   var _config = config,
       
 24589       domTarget = _config.domTarget,
       
 24590       eventOptions = _config.eventOptions,
       
 24591       window = _config.window,
       
 24592       hover = _objectWithoutPropertiesLoose(_config, ["domTarget", "eventOptions", "window"]);
       
 24593   /**
       
 24594    * TODO: at the moment we recompute the config object at every render
       
 24595    * this could probably be optimized
       
 24596    */
       
 24597 
       
 24598 
       
 24599   var mergedConfig = _extends({}, getInternalGenericOptions({
       
 24600     domTarget: domTarget,
       
 24601     eventOptions: eventOptions,
       
 24602     window: window
       
 24603   }), {
       
 24604     hover: _extends({
       
 24605       enabled: true
       
 24606     }, hover)
       
 24607   });
       
 24608 
       
 24609   return useRecognizers({
       
 24610     hover: handler
       
 24611   }, [MoveRecognizer], mergedConfig);
       
 24612 }
       
 24613 
       
 24614 var ScrollRecognizer = /*#__PURE__*/function (_CoordinatesRecognize) {
       
 24615   _inheritsLoose(ScrollRecognizer, _CoordinatesRecognize);
       
 24616 
       
 24617   function ScrollRecognizer(controller, args) {
       
 24618     var _this;
       
 24619 
       
 24620     _this = _CoordinatesRecognize.call(this, 'scroll', controller, args) || this;
       
 24621     _this.ingKey = 'scrolling';
       
 24622     _this.debounced = true;
       
 24623 
       
 24624     _this.scrollShouldRun = function () {
       
 24625       return _this.enabled;
       
 24626     };
       
 24627 
       
 24628     _this.onScroll = function (event) {
       
 24629       if (!_this.scrollShouldRun()) return;
       
 24630 
       
 24631       _this.clearTimeout();
       
 24632 
       
 24633       _this.setTimeout(_this.onScrollEnd);
       
 24634 
       
 24635       if (!_this.state._active) _this.onScrollStart(event);else _this.onScrollChange(event);
       
 24636     };
       
 24637 
       
 24638     _this.onScrollStart = function (event) {
       
 24639       var _getScrollEventValues = getScrollEventValues(event),
       
 24640           values = _getScrollEventValues.values;
       
 24641 
       
 24642       _this.updateSharedState(getGenericEventData(event));
       
 24643 
       
 24644       var startState = _extends({}, _this.getStartGestureState(values, event), {}, _this.getGenericPayload(event, true), {
       
 24645         initial: _this.state.values
       
 24646       });
       
 24647 
       
 24648       var movementDetection = _this.getMovement(values, startState);
       
 24649 
       
 24650       var delta = movementDetection.delta;
       
 24651 
       
 24652       _this.updateGestureState(_extends({}, startState, {}, movementDetection, {
       
 24653         distance: calculateDistance(delta),
       
 24654         direction: calculateDirection(delta)
       
 24655       }));
       
 24656 
       
 24657       _this.fireGestureHandler();
       
 24658     };
       
 24659 
       
 24660     _this.onScrollChange = function (event) {
       
 24661       var genericEventData = getGenericEventData(event);
       
 24662 
       
 24663       _this.updateSharedState(genericEventData);
       
 24664 
       
 24665       var _getScrollEventValues2 = getScrollEventValues(event),
       
 24666           values = _getScrollEventValues2.values;
       
 24667 
       
 24668       var kinematics = _this.getKinematics(values, event);
       
 24669 
       
 24670       _this.updateGestureState(_extends({}, _this.getGenericPayload(event), {}, kinematics));
       
 24671 
       
 24672       _this.fireGestureHandler();
       
 24673     };
       
 24674 
       
 24675     _this.onScrollEnd = function () {
       
 24676       _this.state._active = false;
       
 24677 
       
 24678       _this.updateGestureState(_extends({}, _this.getMovement(_this.state.values), {
       
 24679         velocities: [0, 0],
       
 24680         velocity: 0
       
 24681       }));
       
 24682 
       
 24683       _this.fireGestureHandler();
       
 24684     };
       
 24685 
       
 24686     return _this;
       
 24687   }
       
 24688 
       
 24689   var _proto = ScrollRecognizer.prototype;
       
 24690 
       
 24691   _proto.addBindings = function addBindings() {
       
 24692     this.controller.addBindings('onScroll', this.onScroll);
       
 24693   };
       
 24694 
       
 24695   return ScrollRecognizer;
       
 24696 }(CoordinatesRecognizer);
       
 24697 
       
 24698 /**
       
 24699  * @public
       
 24700  *
       
 24701  * Scroll hook.
       
 24702  *
       
 24703  * @param {Handler<'scroll'>} handler - the function fired every time the scroll gesture updates
       
 24704  * @param {(Config | {})} [config={}] - the config object including generic options and scroll options
       
 24705  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 24706  */
       
 24707 
       
 24708 function useScroll(handler, config) {
       
 24709   if (config === void 0) {
       
 24710     config = {};
       
 24711   }
       
 24712 
       
 24713   var _config = config,
       
 24714       domTarget = _config.domTarget,
       
 24715       eventOptions = _config.eventOptions,
       
 24716       window = _config.window,
       
 24717       scroll = _objectWithoutPropertiesLoose(_config, ["domTarget", "eventOptions", "window"]);
       
 24718   /**
       
 24719    * TODO: at the moment we recompute the config object at every render
       
 24720    * this could probably be optimized
       
 24721    */
       
 24722 
       
 24723 
       
 24724   var mergedConfig = _extends({}, getInternalGenericOptions({
       
 24725     domTarget: domTarget,
       
 24726     eventOptions: eventOptions,
       
 24727     window: window
       
 24728   }), {
       
 24729     scroll: getInternalCoordinatesOptions(scroll)
       
 24730   });
       
 24731 
       
 24732   return useRecognizers({
       
 24733     scroll: handler
       
 24734   }, [ScrollRecognizer], mergedConfig);
       
 24735 }
       
 24736 
       
 24737 /**
       
 24738  * @public
       
 24739  *
       
 24740  * The most complete gesture hook, allowing support for multiple gestures.
       
 24741  *
       
 24742  * @param {UserHandlersPartial} handlers - an object with on[Gesture] keys containg gesture handlers
       
 24743  * @param {UseGestureConfig} [config={}] - the full config object
       
 24744  * @returns {(...args: any[]) => HookReturnType<Config>}
       
 24745  */
       
 24746 
       
 24747 function useGesture(handlers, config) {
       
 24748   if (config === void 0) {
       
 24749     config = {};
       
 24750   }
       
 24751 
       
 24752   /**
       
 24753    * If handlers contains {onDragStart, onDrag, onDragEnd, onMoveStart, onMove}
       
 24754    * actions will include 'onDrag' and 'onMove.
       
 24755    */
       
 24756   var _React$useState = external_this_React_default.a.useState(function () {
       
 24757     return new Set(Object.keys(handlers).map(function (k) {
       
 24758       return k.replace(/End|Start/, '');
       
 24759     }));
       
 24760   }),
       
 24761       actions = _React$useState[0];
       
 24762   /**
       
 24763    * Here we compute the derived internal config based on the provided config object.
       
 24764    * We decompose the config into its generic and gesture options and compute each.
       
 24765    * TODO: this is currently done on every render!
       
 24766    */
       
 24767 
       
 24768 
       
 24769   var _config = config,
       
 24770       drag = _config.drag,
       
 24771       wheel = _config.wheel,
       
 24772       move = _config.move,
       
 24773       scroll = _config.scroll,
       
 24774       pinch = _config.pinch,
       
 24775       hover = _config.hover,
       
 24776       restConfig = _objectWithoutPropertiesLoose(_config, ["drag", "wheel", "move", "scroll", "pinch", "hover"]);
       
 24777 
       
 24778   var mergedConfig = getInternalGenericOptions(restConfig);
       
 24779   var classes = [];
       
 24780   var internalHandlers = {}; // will hold reference to native handlers such as onClick, onMouseDown, etc.
       
 24781 
       
 24782   var _nativeHandlers = _extends({}, handlers);
       
 24783 
       
 24784   if (actions.has('onDrag')) {
       
 24785     classes.push(DragRecognizer);
       
 24786     internalHandlers.drag = includeStartEndHandlers(handlers, 'onDrag', _nativeHandlers);
       
 24787     mergedConfig.drag = getInternalDragOptions(drag);
       
 24788   }
       
 24789 
       
 24790   if (actions.has('onWheel')) {
       
 24791     classes.push(WheelRecognizer);
       
 24792     internalHandlers.wheel = includeStartEndHandlers(handlers, 'onWheel', _nativeHandlers);
       
 24793     mergedConfig.wheel = getInternalCoordinatesOptions(wheel);
       
 24794   }
       
 24795 
       
 24796   if (actions.has('onScroll')) {
       
 24797     classes.push(ScrollRecognizer);
       
 24798     internalHandlers.scroll = includeStartEndHandlers(handlers, 'onScroll', _nativeHandlers);
       
 24799     mergedConfig.scroll = getInternalCoordinatesOptions(scroll);
       
 24800   }
       
 24801 
       
 24802   if (actions.has('onMove')) {
       
 24803     classes.push(MoveRecognizer);
       
 24804     internalHandlers.move = includeStartEndHandlers(handlers, 'onMove', _nativeHandlers);
       
 24805     mergedConfig.move = getInternalCoordinatesOptions(move);
       
 24806   }
       
 24807 
       
 24808   if (actions.has('onPinch')) {
       
 24809     classes.push(PinchRecognizer);
       
 24810     internalHandlers.pinch = includeStartEndHandlers(handlers, 'onPinch', _nativeHandlers);
       
 24811     mergedConfig.pinch = getInternalDistanceAngleOptions(pinch);
       
 24812   }
       
 24813 
       
 24814   if (actions.has('onHover')) {
       
 24815     if (!actions.has('onMove')) classes.push(MoveRecognizer);
       
 24816     internalHandlers.hover = handlers.onHover;
       
 24817     mergedConfig.hover = _extends({
       
 24818       enabled: true
       
 24819     }, hover);
       
 24820     delete _nativeHandlers.onHover;
       
 24821   }
       
 24822 
       
 24823   return useRecognizers(internalHandlers, classes, mergedConfig, _nativeHandlers);
       
 24824 }
       
 24825 /**
       
 24826  * @private
       
 24827  *
       
 24828  * This utility function will integrate start and end handlers into the regular
       
 24829  * handler function by using first and last conditions.
       
 24830  *
       
 24831  * @param {UserHandlersPartial} handlers - the handlers function object
       
 24832  * @param {HandlerKey} handlerKey - the key for which to integrate start and end handlers
       
 24833  * @returns
       
 24834  */
       
 24835 
       
 24836 function includeStartEndHandlers(handlers, handlerKey, _nativeHandlers) {
       
 24837   var startKey = handlerKey + 'Start';
       
 24838   var endKey = handlerKey + 'End';
       
 24839   delete _nativeHandlers[handlerKey];
       
 24840   delete _nativeHandlers[startKey];
       
 24841   delete _nativeHandlers[endKey];
       
 24842 
       
 24843   var fn = function fn(state) {
       
 24844     var memo = undefined;
       
 24845     if (state.first && startKey in handlers) handlers[startKey](state);
       
 24846     if (handlerKey in handlers) memo = handlers[handlerKey](state);
       
 24847     if (state.last && endKey in handlers) handlers[endKey](state);
       
 24848     return memo;
       
 24849   };
       
 24850 
       
 24851   return fn;
       
 24852 }
       
 24853 
       
 24854 
       
 24855 
       
 24856 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/flex/index.js
       
 24857 
       
 24858 
       
 24859 
       
 24860 
       
 24861 /**
       
 24862  * External dependencies
       
 24863  */
       
 24864 
       
 24865 /**
       
 24866  * WordPress dependencies
       
 24867  */
       
 24868 
       
 24869 
       
 24870 /**
       
 24871  * Internal dependencies
       
 24872  */
       
 24873 
       
 24874 
       
 24875 
       
 24876 
       
 24877 
       
 24878 function FlexComponent(_ref, ref) {
       
 24879   var _ref$align = _ref.align,
       
 24880       align = _ref$align === void 0 ? 'center' : _ref$align,
       
 24881       className = _ref.className,
       
 24882       _ref$gap = _ref.gap,
       
 24883       gap = _ref$gap === void 0 ? 2 : _ref$gap,
       
 24884       _ref$justify = _ref.justify,
       
 24885       justify = _ref$justify === void 0 ? 'space-between' : _ref$justify,
       
 24886       _ref$isReversed = _ref.isReversed,
       
 24887       isReversed = _ref$isReversed === void 0 ? false : _ref$isReversed,
       
 24888       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["align", "className", "gap", "justify", "isReversed"]);
       
 24889 
       
 24890   var classes = classnames_default()('components-flex', className);
       
 24891   return Object(external_this_wp_element_["createElement"])(Flex, Object(esm_extends["a" /* default */])({}, props, {
       
 24892     align: align,
       
 24893     className: classes,
       
 24894     ref: ref,
       
 24895     gap: gap,
       
 24896     justify: justify,
       
 24897     isReversed: isReversed
       
 24898   }));
       
 24899 }
       
 24900 
       
 24901 var flex_Flex = Object(external_this_wp_element_["forwardRef"])(FlexComponent);
       
 24902 /* harmony default export */ var flex = (flex_Flex);
       
 24903 
       
 24904 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/state.js
       
 24905 
       
 24906 
       
 24907 
       
 24908 function state_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 24909 
       
 24910 function state_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { state_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { state_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 24911 
       
 24912 /**
       
 24913  * External dependencies
       
 24914  */
       
 24915 
       
 24916 /**
       
 24917  * WordPress dependencies
       
 24918  */
       
 24919 
       
 24920 
       
 24921 
       
 24922 var initialStateReducer = function initialStateReducer(state) {
       
 24923   return state;
       
 24924 };
       
 24925 
       
 24926 var initialInputControlState = {
       
 24927   _event: {},
       
 24928   error: null,
       
 24929   initialValue: '',
       
 24930   isDirty: false,
       
 24931   isDragEnabled: false,
       
 24932   isDragging: false,
       
 24933   isPressEnterToChange: false,
       
 24934   value: ''
       
 24935 };
       
 24936 var actionTypes = {
       
 24937   CHANGE: 'CHANGE',
       
 24938   COMMIT: 'COMMIT',
       
 24939   DRAG_END: 'DRAG_END',
       
 24940   DRAG_START: 'DRAG_START',
       
 24941   DRAG: 'DRAG',
       
 24942   INVALIDATE: 'INVALIDATE',
       
 24943   PRESS_DOWN: 'PRESS_DOWN',
       
 24944   PRESS_ENTER: 'PRESS_ENTER',
       
 24945   PRESS_UP: 'PRESS_UP',
       
 24946   RESET: 'RESET',
       
 24947   UPDATE: 'UPDATE'
       
 24948 };
       
 24949 var inputControlActionTypes = actionTypes;
       
 24950 /**
       
 24951  * Prepares initialState for the reducer.
       
 24952  *
       
 24953  * @param {Object} initialState The initial state.
       
 24954  * @return {Object} Prepared initialState for the reducer
       
 24955  */
       
 24956 
       
 24957 function mergeInitialState() {
       
 24958   var initialState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialInputControlState;
       
 24959   var value = initialState.value;
       
 24960   return state_objectSpread({}, initialInputControlState, {}, initialState, {
       
 24961     initialValue: value
       
 24962   });
       
 24963 }
       
 24964 /**
       
 24965  * Composes multiple stateReducers into a single stateReducer, building
       
 24966  * the pipeline to control the flow for state and actions.
       
 24967  *
       
 24968  * @param  {...Function} fns State reducers.
       
 24969  * @return {Function} The single composed stateReducer.
       
 24970  */
       
 24971 
       
 24972 
       
 24973 var state_composeStateReducers = function composeStateReducers() {
       
 24974   for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {
       
 24975     fns[_key] = arguments[_key];
       
 24976   }
       
 24977 
       
 24978   return function () {
       
 24979     for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
       
 24980       args[_key2] = arguments[_key2];
       
 24981     }
       
 24982 
       
 24983     return fns.reduceRight(function (state, fn) {
       
 24984       var fnState = fn.apply(void 0, args);
       
 24985       return Object(external_this_lodash_["isEmpty"])(fnState) ? state : state_objectSpread({}, state, {}, fnState);
       
 24986     }, {});
       
 24987   };
       
 24988 };
       
 24989 /**
       
 24990  * Creates a reducer that opens the channel for external state subscription
       
 24991  * and modification.
       
 24992  *
       
 24993  * This technique uses the "stateReducer" design pattern:
       
 24994  * https://kentcdodds.com/blog/the-state-reducer-pattern/
       
 24995  *
       
 24996  * @param {Function} composedStateReducers A custom reducer that can subscribe and modify state.
       
 24997  * @return {Function} The reducer.
       
 24998  */
       
 24999 
       
 25000 function inputControlStateReducer(composedStateReducers) {
       
 25001   return function (state, action) {
       
 25002     var nextState = state_objectSpread({}, state);
       
 25003 
       
 25004     var type = action.type,
       
 25005         payload = action.payload;
       
 25006 
       
 25007     switch (type) {
       
 25008       /**
       
 25009        * Keyboard events
       
 25010        */
       
 25011       case actionTypes.PRESS_UP:
       
 25012         nextState.isDirty = false;
       
 25013         break;
       
 25014 
       
 25015       case actionTypes.PRESS_DOWN:
       
 25016         nextState.isDirty = false;
       
 25017         break;
       
 25018 
       
 25019       /**
       
 25020        * Drag events
       
 25021        */
       
 25022 
       
 25023       case actionTypes.DRAG_START:
       
 25024         nextState.isDragging = true;
       
 25025         break;
       
 25026 
       
 25027       case actionTypes.DRAG_END:
       
 25028         nextState.isDragging = false;
       
 25029         break;
       
 25030 
       
 25031       /**
       
 25032        * Input events
       
 25033        */
       
 25034 
       
 25035       case actionTypes.CHANGE:
       
 25036         nextState.error = null;
       
 25037         nextState.value = payload.value;
       
 25038 
       
 25039         if (state.isPressEnterToChange) {
       
 25040           nextState.isDirty = true;
       
 25041         }
       
 25042 
       
 25043         break;
       
 25044 
       
 25045       case actionTypes.COMMIT:
       
 25046         nextState.value = payload.value;
       
 25047         nextState.isDirty = false;
       
 25048         break;
       
 25049 
       
 25050       case actionTypes.RESET:
       
 25051         nextState.error = null;
       
 25052         nextState.isDirty = false;
       
 25053         nextState.value = payload.value || state.initialValue;
       
 25054         break;
       
 25055 
       
 25056       case actionTypes.UPDATE:
       
 25057         if (payload.value !== state.value) {
       
 25058           nextState.value = payload.value;
       
 25059           nextState.isDirty = false;
       
 25060         }
       
 25061 
       
 25062         break;
       
 25063 
       
 25064       /**
       
 25065        * Validation
       
 25066        */
       
 25067 
       
 25068       case actionTypes.INVALIDATE:
       
 25069         nextState.error = payload.error;
       
 25070         break;
       
 25071     }
       
 25072 
       
 25073     if (payload.event) {
       
 25074       nextState._event = payload.event;
       
 25075     }
       
 25076     /**
       
 25077      * Send the nextState + action to the composedReducers via
       
 25078      * this "bridge" mechanism. This allows external stateReducers
       
 25079      * to hook into actions, and modify state if needed.
       
 25080      */
       
 25081 
       
 25082 
       
 25083     return composedStateReducers(nextState, action);
       
 25084   };
       
 25085 }
       
 25086 /**
       
 25087  * A custom hook that connects and external stateReducer with an internal
       
 25088  * reducer. This hook manages the internal state of InputControl.
       
 25089  * However, by connecting an external stateReducer function, other
       
 25090  * components can react to actions as well as modify state before it is
       
 25091  * applied.
       
 25092  *
       
 25093  * This technique uses the "stateReducer" design pattern:
       
 25094  * https://kentcdodds.com/blog/the-state-reducer-pattern/
       
 25095  *
       
 25096  * @param {Function} stateReducer An external state reducer.
       
 25097  * @param {Object} initialState The initial state for the reducer.
       
 25098  * @return {Object} State, dispatch, and a collection of actions.
       
 25099  */
       
 25100 
       
 25101 
       
 25102 function useInputControlStateReducer() {
       
 25103   var stateReducer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialStateReducer;
       
 25104   var initialState = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : initialInputControlState;
       
 25105 
       
 25106   var _useReducer = Object(external_this_wp_element_["useReducer"])(inputControlStateReducer(stateReducer), mergeInitialState(initialState)),
       
 25107       _useReducer2 = Object(slicedToArray["a" /* default */])(_useReducer, 2),
       
 25108       state = _useReducer2[0],
       
 25109       dispatch = _useReducer2[1];
       
 25110 
       
 25111   var createChangeEvent = function createChangeEvent(type) {
       
 25112     return function (nextValue, event) {
       
 25113       /**
       
 25114        * Persist allows for the (Synthetic) event to be used outside of
       
 25115        * this function call.
       
 25116        * https://reactjs.org/docs/events.html#event-pooling
       
 25117        */
       
 25118       if (event && event.persist) {
       
 25119         event.persist();
       
 25120       }
       
 25121 
       
 25122       dispatch({
       
 25123         type: type,
       
 25124         payload: {
       
 25125           value: nextValue,
       
 25126           event: event
       
 25127         }
       
 25128       });
       
 25129     };
       
 25130   };
       
 25131 
       
 25132   var createKeyEvent = function createKeyEvent(type) {
       
 25133     return function (event) {
       
 25134       /**
       
 25135        * Persist allows for the (Synthetic) event to be used outside of
       
 25136        * this function call.
       
 25137        * https://reactjs.org/docs/events.html#event-pooling
       
 25138        */
       
 25139       if (event && event.persist) {
       
 25140         event.persist();
       
 25141       }
       
 25142 
       
 25143       dispatch({
       
 25144         type: type,
       
 25145         payload: {
       
 25146           event: event
       
 25147         }
       
 25148       });
       
 25149     };
       
 25150   };
       
 25151 
       
 25152   var createDragEvent = function createDragEvent(type) {
       
 25153     return function (dragProps) {
       
 25154       dispatch({
       
 25155         type: type,
       
 25156         payload: dragProps
       
 25157       });
       
 25158     };
       
 25159   };
       
 25160   /**
       
 25161    * Actions for the reducer
       
 25162    */
       
 25163 
       
 25164 
       
 25165   var change = createChangeEvent(actionTypes.CHANGE);
       
 25166   var inValidate = createChangeEvent(actionTypes.INVALIDATE);
       
 25167   var reset = createChangeEvent(actionTypes.RESET);
       
 25168   var commit = createChangeEvent(actionTypes.COMMIT);
       
 25169   var update = createChangeEvent(actionTypes.UPDATE);
       
 25170   var dragStart = createDragEvent(actionTypes.DRAG_START);
       
 25171   var drag = createDragEvent(actionTypes.DRAG);
       
 25172   var dragEnd = createDragEvent(actionTypes.DRAG_END);
       
 25173   var pressUp = createKeyEvent(actionTypes.PRESS_UP);
       
 25174   var pressDown = createKeyEvent(actionTypes.PRESS_DOWN);
       
 25175   var pressEnter = createKeyEvent(actionTypes.PRESS_ENTER);
       
 25176   return {
       
 25177     change: change,
       
 25178     commit: commit,
       
 25179     dispatch: dispatch,
       
 25180     drag: drag,
       
 25181     dragEnd: dragEnd,
       
 25182     dragStart: dragStart,
       
 25183     inValidate: inValidate,
       
 25184     pressDown: pressDown,
       
 25185     pressEnter: pressEnter,
       
 25186     pressUp: pressUp,
       
 25187     reset: reset,
       
 25188     state: state,
       
 25189     update: update
       
 25190   };
       
 25191 }
       
 25192 
       
 25193 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js
       
 25194 function _taggedTemplateLiteral(strings, raw) {
       
 25195   if (!raw) {
       
 25196     raw = strings.slice(0);
       
 25197   }
       
 25198 
       
 25199   return Object.freeze(Object.defineProperties(strings, {
       
 25200     raw: {
       
 25201       value: Object.freeze(raw)
       
 25202     }
       
 25203   }));
       
 25204 }
       
 25205 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/styles/font-family.js
       
 25206 var fontFamily = "font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto,\nOxygen-Sans, Ubuntu, Cantarell, \"Helvetica Neue\", sans-serif;";
       
 25207 
       
 25208 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/styles/emotion-css.js
       
 25209 /**
       
 25210  * External dependencies
       
 25211  */
       
 25212 
       
 25213 /* harmony default export */ var emotion_css = (css_browser_esm);
       
 25214 
       
 25215 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/styles/text-mixins.js
       
 25216 
       
 25217 
       
 25218 function _templateObject9() {
       
 25219   var data = _taggedTemplateLiteral(["\n\t", "\n\t", "\n"]);
       
 25220 
       
 25221   _templateObject9 = function _templateObject9() {
       
 25222     return data;
       
 25223   };
       
 25224 
       
 25225   return data;
       
 25226 }
       
 25227 
       
 25228 function _templateObject8() {
       
 25229   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25230 
       
 25231   _templateObject8 = function _templateObject8() {
       
 25232     return data;
       
 25233   };
       
 25234 
       
 25235   return data;
       
 25236 }
       
 25237 
       
 25238 function _templateObject7() {
       
 25239   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25240 
       
 25241   _templateObject7 = function _templateObject7() {
       
 25242     return data;
       
 25243   };
       
 25244 
       
 25245   return data;
       
 25246 }
       
 25247 
       
 25248 function _templateObject6() {
       
 25249   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t"]);
       
 25250 
       
 25251   _templateObject6 = function _templateObject6() {
       
 25252     return data;
       
 25253   };
       
 25254 
       
 25255   return data;
       
 25256 }
       
 25257 
       
 25258 function _templateObject5() {
       
 25259   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25260 
       
 25261   _templateObject5 = function _templateObject5() {
       
 25262     return data;
       
 25263   };
       
 25264 
       
 25265   return data;
       
 25266 }
       
 25267 
       
 25268 function _templateObject4() {
       
 25269   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25270 
       
 25271   _templateObject4 = function _templateObject4() {
       
 25272     return data;
       
 25273   };
       
 25274 
       
 25275   return data;
       
 25276 }
       
 25277 
       
 25278 function _templateObject3() {
       
 25279   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25280 
       
 25281   _templateObject3 = function _templateObject3() {
       
 25282     return data;
       
 25283   };
       
 25284 
       
 25285   return data;
       
 25286 }
       
 25287 
       
 25288 function _templateObject2() {
       
 25289   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25290 
       
 25291   _templateObject2 = function _templateObject2() {
       
 25292     return data;
       
 25293   };
       
 25294 
       
 25295   return data;
       
 25296 }
       
 25297 
       
 25298 function _templateObject() {
       
 25299   var data = _taggedTemplateLiteral(["\n\t\t\t\t", "\n\t\t\t\t", "\n\t\t\t"]);
       
 25300 
       
 25301   _templateObject = function _templateObject() {
       
 25302     return data;
       
 25303   };
       
 25304 
       
 25305   return data;
       
 25306 }
       
 25307 
       
 25308 /**
       
 25309  * Internal dependencies
       
 25310  */
       
 25311 
       
 25312 
       
 25313 var fontWeightNormal = "font-weight: 400;";
       
 25314 var fontWeightSemibold = "font-weight: 600;";
       
 25315 var text_mixins_title = "\n  ".concat(fontWeightNormal, "\n");
       
 25316 var titleLarge = "\n\tfont-size: 32px;\n\tline-height: 40px;\n";
       
 25317 var titleMedium = "\n\tfont-size: 24px;\n\tline-height: 32px;\n";
       
 25318 var titleSmall = "\n\tfont-size: 20px;\n\tline-height: 28px;\n";
       
 25319 var subtitle = "\n\t".concat(fontWeightSemibold, "\n\tfont-size: 14px;\n\tline-height: 20px;\n");
       
 25320 var subtitleLarge = "\n\tfont-size: 16px;\n\tline-height: 24px;\n";
       
 25321 var subtitleSmall = "\n\tfont-size: 14px;\n\tline-height: 20px;\n";
       
 25322 var text_mixins_body = "\n\t".concat(fontWeightNormal, "\n");
       
 25323 var bodyLarge = "\n\tfont-size: 16px;\n\tline-height: 24px;\n";
       
 25324 var bodySmall = "\n\tfont-size: 14px;\n\tline-height: 20px;\n";
       
 25325 var text_mixins_button = "\n  ".concat(fontWeightSemibold, "\n  font-size: 14px;\n  line-height: 20px;\n");
       
 25326 var caption = "\n\t".concat(fontWeightNormal, "\n\tfont-size: 12px;\n\tline-height: 16px;\n");
       
 25327 var text_mixins_label = "\n\t".concat(fontWeightSemibold, "\n\tfont-size: 12px;\n\tline-height: 16px;\n");
       
 25328 /**
       
 25329  * @typedef {'title.large'|'title.medium'|'title.small'|'subtitle'|'subtitle.small'|'body'|'body.large'|'body.small'|'button'|'caption'|'label'} TextVariant
       
 25330  */
       
 25331 
       
 25332 /**
       
 25333  * @param {TextVariant} variantName
       
 25334  */
       
 25335 
       
 25336 var text_mixins_variant = function variant() {
       
 25337   var variantName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'body';
       
 25338 
       
 25339   switch (variantName) {
       
 25340     case 'title.large':
       
 25341       return emotion_css(_templateObject(), text_mixins_title, titleLarge);
       
 25342 
       
 25343     case 'title.medium':
       
 25344       return emotion_css(_templateObject2(), text_mixins_title, titleMedium);
       
 25345 
       
 25346     case 'title.small':
       
 25347       return emotion_css(_templateObject3(), text_mixins_title, titleSmall);
       
 25348 
       
 25349     case 'subtitle':
       
 25350       return emotion_css(_templateObject4(), subtitle, subtitleLarge);
       
 25351 
       
 25352     case 'subtitle.small':
       
 25353       return emotion_css(_templateObject5(), subtitle, subtitleSmall);
       
 25354 
       
 25355     case 'body':
       
 25356       return emotion_css(_templateObject6(), text_mixins_body);
       
 25357 
       
 25358     case 'body.large':
       
 25359       return emotion_css(_templateObject7(), text_mixins_body, bodyLarge);
       
 25360 
       
 25361     case 'body.small':
       
 25362       return emotion_css(_templateObject8(), text_mixins_body, bodySmall);
       
 25363 
       
 25364     case 'button':
       
 25365       return text_mixins_button;
       
 25366 
       
 25367     case 'caption':
       
 25368       return caption;
       
 25369 
       
 25370     case 'label':
       
 25371       return text_mixins_label;
       
 25372   }
       
 25373 };
       
 25374 /**
       
 25375  * @typedef {Object} TextProps
       
 25376  * @property {TextVariant} variant one of TextVariant to be used
       
 25377  */
       
 25378 
       
 25379 /**
       
 25380  * @param {TextProps} props
       
 25381  */
       
 25382 
       
 25383 
       
 25384 var text_mixins_text = function text(props) {
       
 25385   return emotion_css(_templateObject9(), fontFamily, text_mixins_variant(props.variant));
       
 25386 };
       
 25387 
       
 25388 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text/index.js
       
 25389 
       
 25390 
       
 25391 /**
       
 25392  * Internal dependencies
       
 25393  */
       
 25394 
       
 25395 
       
 25396 var Text = styled_base_browser_esm("p", {
       
 25397   target: "e15wbhsk0",
       
 25398   label: "Text"
       
 25399 })("\n\tbox-sizing: border-box;\n\tmargin: 0;\n", text_mixins_text,  true ? "" : undefined);
       
 25400 
       
 25401 /* harmony default export */ var build_module_text = (Text);
       
 25402 
       
 25403 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/styles/input-control-styles.js
       
 25404 
       
 25405 
       
 25406 
       
 25407 
       
 25408 function input_control_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 25409 
       
 25410 /**
       
 25411  * External dependencies
       
 25412  */
       
 25413 
       
 25414 
       
 25415 /**
       
 25416  * Internal dependencies
       
 25417  */
       
 25418 
       
 25419 
       
 25420 var FLOATING_LABEL_TRANSITION_SPEED = '60ms';
       
 25421 
       
 25422 var input_control_styles_rootFloatLabelStyles = function rootFloatLabelStyles(_ref3) {
       
 25423   var isFloatingLabel = _ref3.isFloatingLabel;
       
 25424   var paddingTop = isFloatingLabel ? 5 : 0;
       
 25425   return /*#__PURE__*/css_browser_esm({
       
 25426     paddingTop: paddingTop
       
 25427   },  true ? "" : undefined);
       
 25428 };
       
 25429 
       
 25430 var input_control_styles_ref =  true ? {
       
 25431   name: "r6z5ec",
       
 25432   styles: "z-index:1;"
       
 25433 } : undefined;
       
 25434 
       
 25435 var rootFocusedStyles = function rootFocusedStyles(_ref4) {
       
 25436   var isFocused = _ref4.isFocused;
       
 25437   if (!isFocused) return '';
       
 25438   return input_control_styles_ref;
       
 25439 };
       
 25440 
       
 25441 var input_control_styles_Root = styled_base_browser_esm("div", {
       
 25442   target: "e1cr7zh10",
       
 25443   label: "Root"
       
 25444 })("box-sizing:border-box;position:relative;border-radius:2px;", input_control_styles_rootFloatLabelStyles, ";", rootFocusedStyles, ";" + ( true ? "" : undefined));
       
 25445 
       
 25446 var input_control_styles_containerDisabledStyle = function containerDisabledStyle(_ref5) {
       
 25447   var disabled = _ref5.disabled;
       
 25448   var backgroundColor = disabled ? colors_color('ui.backgroundDisabled') : colors_color('ui.background');
       
 25449   return /*#__PURE__*/css_browser_esm({
       
 25450     backgroundColor: backgroundColor
       
 25451   },  true ? "" : undefined);
       
 25452 };
       
 25453 
       
 25454 var Container = styled_base_browser_esm("div", {
       
 25455   target: "e1cr7zh11",
       
 25456   label: "Container"
       
 25457 })("align-items:center;box-sizing:border-box;border-radius:inherit;display:flex;position:relative;", input_control_styles_containerDisabledStyle, ";" + ( true ? "" : undefined));
       
 25458 
       
 25459 var input_control_styles_disabledStyles = function disabledStyles(_ref6) {
       
 25460   var disabled = _ref6.disabled;
       
 25461   if (!disabled) return '';
       
 25462   return /*#__PURE__*/css_browser_esm({
       
 25463     color: colors_color('ui.textDisabled')
       
 25464   },  true ? "" : undefined);
       
 25465 };
       
 25466 
       
 25467 var input_control_styles_fontSizeStyles = function fontSizeStyles(_ref7) {
       
 25468   var size = _ref7.size;
       
 25469   var sizes = {
       
 25470     default: '13px',
       
 25471     small: '11px'
       
 25472   };
       
 25473   var fontSize = sizes[size];
       
 25474   var fontSizeMobile = '16px';
       
 25475   if (!fontSize) return '';
       
 25476   return /*#__PURE__*/css_browser_esm("font-size:", fontSizeMobile, ";@media ( min-width:600px ){font-size:", fontSize, ";}" + ( true ? "" : undefined));
       
 25477 };
       
 25478 
       
 25479 var input_control_styles_sizeStyles = function sizeStyles(_ref8) {
       
 25480   var size = _ref8.size;
       
 25481   var sizes = {
       
 25482     default: {
       
 25483       height: 30,
       
 25484       lineHeight: 1,
       
 25485       minHeight: 30
       
 25486     },
       
 25487     small: {
       
 25488       height: 24,
       
 25489       lineHeight: 1,
       
 25490       minHeight: 24
       
 25491     }
       
 25492   };
       
 25493   var style = sizes[size] || sizes.default;
       
 25494   return /*#__PURE__*/css_browser_esm(style,  true ? "" : undefined);
       
 25495 };
       
 25496 
       
 25497 var input_control_styles_placeholderStyles = function placeholderStyles(_ref9) {
       
 25498   var isFilled = _ref9.isFilled,
       
 25499       isFloating = _ref9.isFloating,
       
 25500       isFloatingLabel = _ref9.isFloatingLabel;
       
 25501   var opacity = 1;
       
 25502 
       
 25503   if (isFloatingLabel) {
       
 25504     if (!isFilled && !isFloating) {
       
 25505       opacity = 0;
       
 25506     }
       
 25507   }
       
 25508 
       
 25509   return /*#__PURE__*/css_browser_esm("&::placeholder{opacity:", opacity, ";}&::-webkit-input-placeholder{line-height:normal;}" + ( true ? "" : undefined));
       
 25510 };
       
 25511 
       
 25512 var input_control_styles_dragStyles = function dragStyles(_ref10) {
       
 25513   var isDragging = _ref10.isDragging,
       
 25514       dragCursor = _ref10.dragCursor;
       
 25515   var defaultArrowStyles = '';
       
 25516   var activeDragCursorStyles = '';
       
 25517 
       
 25518   if (isDragging) {
       
 25519     defaultArrowStyles = /*#__PURE__*/css_browser_esm("cursor:", dragCursor, ";user-select:none;&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none !important;margin:0 !important;}" + ( true ? "" : undefined));
       
 25520   }
       
 25521 
       
 25522   if (isDragging && dragCursor) {
       
 25523     activeDragCursorStyles = /*#__PURE__*/css_browser_esm("&:active{cursor:", dragCursor, ";}" + ( true ? "" : undefined));
       
 25524   }
       
 25525 
       
 25526   return /*#__PURE__*/css_browser_esm(defaultArrowStyles, ";", activeDragCursorStyles, ";" + ( true ? "" : undefined));
       
 25527 }; // TODO: Resolve need to use &&& to increase specificity
       
 25528 // https://github.com/WordPress/gutenberg/issues/18483
       
 25529 
       
 25530 
       
 25531 var input_control_styles_Input = styled_base_browser_esm("input", {
       
 25532   target: "e1cr7zh12",
       
 25533   label: "Input"
       
 25534 })("&&&{background-color:transparent;box-sizing:border-box;border:none;box-shadow:none !important;color:", colors_color('black'), ";display:block;outline:none;padding-left:8px;padding-right:8px;width:100%;", input_control_styles_dragStyles, ";", input_control_styles_disabledStyles, ";", input_control_styles_fontSizeStyles, ";", input_control_styles_sizeStyles, ";", input_control_styles_placeholderStyles, ";}" + ( true ? "" : undefined));
       
 25535 
       
 25536 var input_control_styles_laberColor = function laberColor(_ref11) {
       
 25537   var isFloatingLabel = _ref11.isFloatingLabel,
       
 25538       isFilled = _ref11.isFilled,
       
 25539       isFloating = _ref11.isFloating;
       
 25540   var isPlaceholder = isFloatingLabel && !isFilled;
       
 25541   var textColor = isPlaceholder || isFloating ? colors_color('ui.textDisabled') : 'currentColor';
       
 25542   return /*#__PURE__*/css_browser_esm({
       
 25543     color: textColor
       
 25544   },  true ? "" : undefined);
       
 25545 };
       
 25546 
       
 25547 var input_control_styles_labelFontSize = function labelFontSize(_ref12) {
       
 25548   var isFloatingLabel = _ref12.isFloatingLabel,
       
 25549       size = _ref12.size;
       
 25550   var sizes = {
       
 25551     default: '13px',
       
 25552     small: '11px'
       
 25553   };
       
 25554   var fontSize = sizes[size];
       
 25555   var lineHeight = isFloatingLabel ? 1.2 : null;
       
 25556   return /*#__PURE__*/css_browser_esm({
       
 25557     fontSize: fontSize,
       
 25558     lineHeight: lineHeight
       
 25559   },  true ? "" : undefined);
       
 25560 };
       
 25561 
       
 25562 var input_control_styles_labelPosition = function labelPosition(_ref13) {
       
 25563   var isFloatingLabel = _ref13.isFloatingLabel,
       
 25564       isFloating = _ref13.isFloating,
       
 25565       size = _ref13.size;
       
 25566   var paddingBottom = isFloatingLabel ? 0 : 4;
       
 25567   var position = isFloatingLabel ? 'absolute' : null;
       
 25568   var pointerEvents = isFloating ? null : 'none';
       
 25569   var isSmall = size === 'small';
       
 25570   var offsetTop = isSmall ? 1 : 2;
       
 25571   var offset = isSmall ? '-1px' : '-3px';
       
 25572   var marginTop = isFloating ? 0 : offsetTop;
       
 25573   var marginLeft = isFloatingLabel ? 8 : 0;
       
 25574   var transform = isFloating ? "translate( 0, calc(-100% + ".concat(offset, ") ) scale( 0.75 )") : 'translate( 0, -50%) scale(1)';
       
 25575 
       
 25576   if (!isFloatingLabel) {
       
 25577     transform = null;
       
 25578   }
       
 25579 
       
 25580   var transition = isFloatingLabel ? "transform ".concat(FLOATING_LABEL_TRANSITION_SPEED, " linear") : null;
       
 25581   return /*#__PURE__*/css_browser_esm({
       
 25582     marginTop: marginTop,
       
 25583     paddingBottom: paddingBottom,
       
 25584     position: position,
       
 25585     pointerEvents: pointerEvents,
       
 25586     transition: transition,
       
 25587     transform: transform
       
 25588   }, rtl({
       
 25589     marginLeft: marginLeft
       
 25590   })(), rtl({
       
 25591     transformOrigin: 'top left'
       
 25592   }, {
       
 25593     transformOrigin: 'top right'
       
 25594   })(),  true ? "" : undefined);
       
 25595 };
       
 25596 
       
 25597 var input_control_styles_ref2 =  true ? {
       
 25598   name: "fjfd5j",
       
 25599   styles: "max-width:calc( 100% - 10px );overflow:hidden;text-overflow:ellipsis;white-space:nowrap;"
       
 25600 } : undefined;
       
 25601 
       
 25602 var labelTruncation = function labelTruncation(_ref14) {
       
 25603   var isFloating = _ref14.isFloating;
       
 25604   if (isFloating) return '';
       
 25605   return input_control_styles_ref2;
       
 25606 };
       
 25607 
       
 25608 var BaseLabel = /*#__PURE__*/styled_base_browser_esm(build_module_text, {
       
 25609   target: "e1cr7zh13",
       
 25610   label: "BaseLabel"
       
 25611 })("&&&{box-sizing:border-box;display:block;margin:0;max-width:100%;padding:0;pointer-events:none;top:50%;transition:transform ", FLOATING_LABEL_TRANSITION_SPEED, " linear,max-width ", FLOATING_LABEL_TRANSITION_SPEED, " linear;z-index:1;", input_control_styles_laberColor, ";", input_control_styles_labelFontSize, ";", input_control_styles_labelPosition, ";", labelTruncation, ";", reduceMotion('transition'), ";", rtl({
       
 25612   left: 0
       
 25613 }), "}" + ( true ? "" : undefined));
       
 25614 
       
 25615 var input_control_styles_Label = function Label(props) {
       
 25616   return Object(external_this_wp_element_["createElement"])(BaseLabel, Object(esm_extends["a" /* default */])({}, props, {
       
 25617     as: "label"
       
 25618   }));
       
 25619 };
       
 25620 
       
 25621 var input_control_styles_fieldsetTopStyles = function fieldsetTopStyles(_ref15) {
       
 25622   var isFloatingLabel = _ref15.isFloatingLabel;
       
 25623   var top = isFloatingLabel ? -5 : 0;
       
 25624   return /*#__PURE__*/css_browser_esm({
       
 25625     top: top
       
 25626   },  true ? "" : undefined);
       
 25627 };
       
 25628 
       
 25629 var input_control_styles_fieldsetFocusedStyles = function fieldsetFocusedStyles(_ref16) {
       
 25630   var disabled = _ref16.disabled,
       
 25631       isFocused = _ref16.isFocused;
       
 25632   var borderColor = isFocused ? colors_color('ui.borderFocus') : colors_color('ui.border');
       
 25633 
       
 25634   if (disabled) {
       
 25635     borderColor = 'ui.borderDisabled';
       
 25636   }
       
 25637 
       
 25638   var borderWidth = isFocused ? 2 : 1;
       
 25639   var borderStyle = 'solid';
       
 25640   return /*#__PURE__*/css_browser_esm({
       
 25641     borderColor: borderColor,
       
 25642     borderStyle: borderStyle,
       
 25643     borderWidth: borderWidth
       
 25644   },  true ? "" : undefined);
       
 25645 };
       
 25646 
       
 25647 var Fieldset = styled_base_browser_esm("fieldset", {
       
 25648   target: "e1cr7zh14",
       
 25649   label: "Fieldset"
       
 25650 })("&&&{box-sizing:border-box;border-radius:inherit;bottom:0;left:0;margin:0;padding:0;pointer-events:none;position:absolute;right:0;", input_control_styles_fieldsetFocusedStyles, ";", input_control_styles_fieldsetTopStyles, ";", rtl({
       
 25651   paddingLeft: 2
       
 25652 }), "}" + ( true ? "" : undefined));
       
 25653 
       
 25654 var input_control_styles_legendSize = function legendSize(_ref17) {
       
 25655   var isFloating = _ref17.isFloating,
       
 25656       size = _ref17.size;
       
 25657   var maxWidth = isFloating ? 1000 : 0.01;
       
 25658   var sizes = {
       
 25659     default: 9.75,
       
 25660     small: 8.25
       
 25661   };
       
 25662   var fontSize = sizes[size];
       
 25663   return /*#__PURE__*/css_browser_esm({
       
 25664     fontSize: fontSize,
       
 25665     maxWidth: maxWidth
       
 25666   },  true ? "" : undefined);
       
 25667 };
       
 25668 
       
 25669 var Legend = styled_base_browser_esm("legend", {
       
 25670   target: "e1cr7zh15",
       
 25671   label: "Legend"
       
 25672 })("&&&{box-sizing:border-box;display:block;height:11px;line-height:11px;margin:0;padding:0;transition:max-width ", FLOATING_LABEL_TRANSITION_SPEED, " linear;visibility:hidden;width:auto;", input_control_styles_legendSize, ";", reduceMotion('transition'), ";}" + ( true ? "" : undefined));
       
 25673 
       
 25674 var BaseLegendText = /*#__PURE__*/styled_base_browser_esm(build_module_text, {
       
 25675   target: "e1cr7zh16",
       
 25676   label: "BaseLegendText"
       
 25677 })("box-sizing:border-box;display:inline-block;", rtl({
       
 25678   paddingLeft: 4,
       
 25679   paddingRight: 5
       
 25680 }),  true ? "" : undefined);
       
 25681 
       
 25682 var input_control_styles_LegendText = function LegendText(props) {
       
 25683   return Object(external_this_wp_element_["createElement"])(BaseLegendText, Object(esm_extends["a" /* default */])({}, props, {
       
 25684     as: "span"
       
 25685   }));
       
 25686 };
       
 25687 var Suffix = styled_base_browser_esm("span", {
       
 25688   target: "e1cr7zh17",
       
 25689   label: "Suffix"
       
 25690 })( true ? {
       
 25691   name: "1pxuk39",
       
 25692   styles: "box-sizing:border-box;display:block;"
       
 25693 } : undefined);
       
 25694 
       
 25695 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/backdrop.js
       
 25696 
       
 25697 
       
 25698 /**
       
 25699  * WordPress dependencies
       
 25700  */
       
 25701 
       
 25702 /**
       
 25703  * Internal dependencies
       
 25704  */
       
 25705 
       
 25706 
       
 25707 
       
 25708 function Backdrop(_ref) {
       
 25709   var _ref$disabled = _ref.disabled,
       
 25710       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
       
 25711       _ref$isFloating = _ref.isFloating,
       
 25712       isFloating = _ref$isFloating === void 0 ? false : _ref$isFloating,
       
 25713       _ref$isFloatingLabel = _ref.isFloatingLabel,
       
 25714       isFloatingLabel = _ref$isFloatingLabel === void 0 ? false : _ref$isFloatingLabel,
       
 25715       _ref$isFocused = _ref.isFocused,
       
 25716       isFocused = _ref$isFocused === void 0 ? false : _ref$isFocused,
       
 25717       label = _ref.label,
       
 25718       _ref$size = _ref.size,
       
 25719       size = _ref$size === void 0 ? 'default' : _ref$size;
       
 25720   return Object(external_this_wp_element_["createElement"])(Fieldset, {
       
 25721     "aria-hidden": "true",
       
 25722     className: "components-input-control__backdrop",
       
 25723     disabled: disabled,
       
 25724     isFloatingLabel: isFloatingLabel,
       
 25725     isFocused: isFocused
       
 25726   }, isFloatingLabel && Object(external_this_wp_element_["createElement"])(Legend, {
       
 25727     "aria-hidden": "true",
       
 25728     className: "components-input-control__backdrop-label",
       
 25729     isFloating: isFloating,
       
 25730     size: size
       
 25731   }, Object(external_this_wp_element_["createElement"])(input_control_styles_LegendText, {
       
 25732     className: "components-input-control__backdrop-text"
       
 25733   }, label)));
       
 25734 }
       
 25735 
       
 25736 var MemoizedBackdrop = Object(external_this_wp_element_["memo"])(Backdrop);
       
 25737 /* harmony default export */ var backdrop = (MemoizedBackdrop);
       
 25738 
       
 25739 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/utils.js
       
 25740 /**
       
 25741  * WordPress dependencies
       
 25742  */
       
 25743 
       
 25744 /**
       
 25745  * Gets a CSS cursor value based on a drag direction.
       
 25746  *
       
 25747  * @param {string} dragDirection The drag direction.
       
 25748  * @return {string} The CSS cursor value.
       
 25749  */
       
 25750 
       
 25751 function getDragCursor(dragDirection) {
       
 25752   var dragCursor = 'ns-resize';
       
 25753 
       
 25754   switch (dragDirection) {
       
 25755     case 'n':
       
 25756     case 's':
       
 25757       dragCursor = 'ns-resize';
       
 25758       break;
       
 25759 
       
 25760     case 'e':
       
 25761     case 'w':
       
 25762       dragCursor = 'ew-resize';
       
 25763       break;
       
 25764   }
       
 25765 
       
 25766   return dragCursor;
       
 25767 }
       
 25768 /**
       
 25769  * Custom hook that renders a drag cursor when dragging.
       
 25770  *
       
 25771  * @param {boolean} isDragging The dragging state.
       
 25772  * @param {string} dragDirection The drag direction.
       
 25773  *
       
 25774  * @return {string} The CSS cursor value.
       
 25775  */
       
 25776 
       
 25777 function useDragCursor(isDragging, dragDirection) {
       
 25778   var dragCursor = getDragCursor(dragDirection);
       
 25779   Object(external_this_wp_element_["useEffect"])(function () {
       
 25780     if (isDragging) {
       
 25781       document.documentElement.style.cursor = dragCursor;
       
 25782       document.documentElement.style.pointerEvents = 'none';
       
 25783     } else {
       
 25784       document.documentElement.style.cursor = null;
       
 25785       document.documentElement.style.pointerEvents = null;
       
 25786     }
       
 25787   }, [isDragging]);
       
 25788   return dragCursor;
       
 25789 }
       
 25790 
       
 25791 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/values.js
       
 25792 /**
       
 25793  * Determines if a value is null or undefined.
       
 25794  *
       
 25795  * @param {any} value The value to check.
       
 25796  * @return {boolean} Whether value is null or undefined.
       
 25797  */
       
 25798 function isValueDefined(value) {
       
 25799   return value !== undefined && value !== null;
       
 25800 }
       
 25801 /**
       
 25802  * Determines if a value is empty, null, or undefined.
       
 25803  *
       
 25804  * @param {any} value The value to check.
       
 25805  * @return {boolean} Whether value is empty.
       
 25806  */
       
 25807 
       
 25808 function isValueEmpty(value) {
       
 25809   var isEmptyString = value === '';
       
 25810   return !isValueDefined(value) || isEmptyString;
       
 25811 }
       
 25812 /**
       
 25813  * Attempts to get a defined/non-null value from a collection of arguments.
       
 25814  *
       
 25815  * @param {Array<any>} values Values to derive from.
       
 25816  * @param {any} fallbackValue Fallback value if there are no defined values.
       
 25817  * @return {any} A defined value or the fallback value.
       
 25818  */
       
 25819 
       
 25820 function getDefinedValue() {
       
 25821   var _values$find;
       
 25822 
       
 25823   var values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
       
 25824   var fallbackValue = arguments.length > 1 ? arguments[1] : undefined;
       
 25825   return (_values$find = values.find(isValueDefined)) !== null && _values$find !== void 0 ? _values$find : fallbackValue;
       
 25826 }
       
 25827 
       
 25828 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/input-field.js
       
 25829 
       
 25830 
       
 25831 
       
 25832 
       
 25833 /**
       
 25834  * External dependencies
       
 25835  */
       
 25836 
       
 25837 
       
 25838 /**
       
 25839  * WordPress dependencies
       
 25840  */
       
 25841 
       
 25842 
       
 25843 
       
 25844 /**
       
 25845  * Internal dependencies
       
 25846  */
       
 25847 
       
 25848 
       
 25849 
       
 25850 
       
 25851 
       
 25852 
       
 25853 function InputField(_ref, ref) {
       
 25854   var _ref$disabled = _ref.disabled,
       
 25855       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
       
 25856       _ref$dragDirection = _ref.dragDirection,
       
 25857       dragDirection = _ref$dragDirection === void 0 ? 'n' : _ref$dragDirection,
       
 25858       _ref$dragThreshold = _ref.dragThreshold,
       
 25859       dragThreshold = _ref$dragThreshold === void 0 ? 10 : _ref$dragThreshold,
       
 25860       id = _ref.id,
       
 25861       _ref$isDragEnabled = _ref.isDragEnabled,
       
 25862       isDragEnabled = _ref$isDragEnabled === void 0 ? false : _ref$isDragEnabled,
       
 25863       _ref$isFloating = _ref.isFloating,
       
 25864       isFloating = _ref$isFloating === void 0 ? false : _ref$isFloating,
       
 25865       _ref$isFloatingLabelS = _ref.isFloatingLabelSet,
       
 25866       isFloatingLabelSet = _ref$isFloatingLabelS === void 0 ? false : _ref$isFloatingLabelS,
       
 25867       _ref$isPressEnterToCh = _ref.isPressEnterToChange,
       
 25868       isPressEnterToChange = _ref$isPressEnterToCh === void 0 ? false : _ref$isPressEnterToCh,
       
 25869       _ref$onBlur = _ref.onBlur,
       
 25870       onBlur = _ref$onBlur === void 0 ? external_this_lodash_["noop"] : _ref$onBlur,
       
 25871       _ref$onChange = _ref.onChange,
       
 25872       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 25873       _ref$onDrag = _ref.onDrag,
       
 25874       onDrag = _ref$onDrag === void 0 ? external_this_lodash_["noop"] : _ref$onDrag,
       
 25875       _ref$onDragEnd = _ref.onDragEnd,
       
 25876       onDragEnd = _ref$onDragEnd === void 0 ? external_this_lodash_["noop"] : _ref$onDragEnd,
       
 25877       _ref$onDragStart = _ref.onDragStart,
       
 25878       onDragStart = _ref$onDragStart === void 0 ? external_this_lodash_["noop"] : _ref$onDragStart,
       
 25879       _ref$onFocus = _ref.onFocus,
       
 25880       onFocus = _ref$onFocus === void 0 ? external_this_lodash_["noop"] : _ref$onFocus,
       
 25881       _ref$onKeyDown = _ref.onKeyDown,
       
 25882       onKeyDown = _ref$onKeyDown === void 0 ? external_this_lodash_["noop"] : _ref$onKeyDown,
       
 25883       onUpdateValue = _ref.onUpdateValue,
       
 25884       _ref$onValidate = _ref.onValidate,
       
 25885       onValidate = _ref$onValidate === void 0 ? external_this_lodash_["noop"] : _ref$onValidate,
       
 25886       _ref$size = _ref.size,
       
 25887       size = _ref$size === void 0 ? 'default' : _ref$size,
       
 25888       _ref$stateReducer = _ref.stateReducer,
       
 25889       stateReducer = _ref$stateReducer === void 0 ? function (state) {
       
 25890     return state;
       
 25891   } : _ref$stateReducer,
       
 25892       valueProp = _ref.value,
       
 25893       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["disabled", "dragDirection", "dragThreshold", "id", "isDragEnabled", "isFloating", "isFloatingLabelSet", "isPressEnterToChange", "onBlur", "onChange", "onDrag", "onDragEnd", "onDragStart", "onFocus", "onKeyDown", "onUpdateValue", "onValidate", "size", "stateReducer", "value"]);
       
 25894 
       
 25895   var _useInputControlState = useInputControlStateReducer(stateReducer, {
       
 25896     isDragEnabled: isDragEnabled,
       
 25897     value: valueProp,
       
 25898     isPressEnterToChange: isPressEnterToChange
       
 25899   }),
       
 25900       state = _useInputControlState.state,
       
 25901       change = _useInputControlState.change,
       
 25902       commit = _useInputControlState.commit,
       
 25903       drag = _useInputControlState.drag,
       
 25904       dragEnd = _useInputControlState.dragEnd,
       
 25905       dragStart = _useInputControlState.dragStart,
       
 25906       invalidate = _useInputControlState.invalidate,
       
 25907       pressDown = _useInputControlState.pressDown,
       
 25908       pressEnter = _useInputControlState.pressEnter,
       
 25909       pressUp = _useInputControlState.pressUp,
       
 25910       reset = _useInputControlState.reset,
       
 25911       update = _useInputControlState.update;
       
 25912 
       
 25913   var _event = state._event,
       
 25914       value = state.value,
       
 25915       isDragging = state.isDragging,
       
 25916       isDirty = state.isDirty;
       
 25917   var valueRef = Object(external_this_wp_element_["useRef"])(value);
       
 25918   var dragCursor = useDragCursor(isDragging, dragDirection);
       
 25919   Object(external_this_wp_element_["useEffect"])(function () {
       
 25920     /**
       
 25921      * Handles syncing incoming value changes with internal state.
       
 25922      * This effectively enables a "controlled" state.
       
 25923      * https://reactjs.org/docs/forms.html#controlled-components
       
 25924      */
       
 25925     if (valueProp !== valueRef.current) {
       
 25926       update(valueProp);
       
 25927       valueRef.current = valueProp; // Quick return to avoid firing the onChange callback
       
 25928 
       
 25929       return;
       
 25930     }
       
 25931     /**
       
 25932      * Fires the onChange callback when internal state value changes.
       
 25933      */
       
 25934 
       
 25935 
       
 25936     if (value !== valueRef.current && !isDirty) {
       
 25937       onChange(value, {
       
 25938         event: _event
       
 25939       });
       
 25940       onUpdateValue(!isValueEmpty(value));
       
 25941       valueRef.current = value;
       
 25942     }
       
 25943   }, [value, isDirty, valueProp]);
       
 25944 
       
 25945   var handleOnBlur = function handleOnBlur(event) {
       
 25946     onBlur(event);
       
 25947     /**
       
 25948      * If isPressEnterToChange is set, this commits the value to
       
 25949      * the onChange callback.
       
 25950      */
       
 25951 
       
 25952     if (isPressEnterToChange && isDirty) {
       
 25953       if (!isValueEmpty(value)) {
       
 25954         handleOnCommit({
       
 25955           target: {
       
 25956             value: value
       
 25957           }
       
 25958         }, event);
       
 25959       } else {
       
 25960         reset(valueProp);
       
 25961       }
       
 25962     }
       
 25963   };
       
 25964 
       
 25965   var handleOnFocus = function handleOnFocus(event) {
       
 25966     onFocus(event);
       
 25967   };
       
 25968 
       
 25969   var handleOnChange = function handleOnChange(event) {
       
 25970     var nextValue = event.target.value;
       
 25971     change(nextValue, event);
       
 25972   };
       
 25973 
       
 25974   var handleOnCommit = function handleOnCommit(event) {
       
 25975     var nextValue = event.target.value;
       
 25976 
       
 25977     try {
       
 25978       onValidate(nextValue, {
       
 25979         event: event
       
 25980       });
       
 25981       commit(nextValue, event);
       
 25982     } catch (err) {
       
 25983       invalidate(err, {
       
 25984         event: event
       
 25985       });
       
 25986     }
       
 25987   };
       
 25988 
       
 25989   var handleOnKeyDown = function handleOnKeyDown(event) {
       
 25990     var keyCode = event.keyCode;
       
 25991     onKeyDown(event);
       
 25992 
       
 25993     switch (keyCode) {
       
 25994       case external_this_wp_keycodes_["UP"]:
       
 25995         pressUp(event);
       
 25996         break;
       
 25997 
       
 25998       case external_this_wp_keycodes_["DOWN"]:
       
 25999         pressDown(event);
       
 26000         break;
       
 26001 
       
 26002       case external_this_wp_keycodes_["ENTER"]:
       
 26003         pressEnter(event);
       
 26004 
       
 26005         if (isPressEnterToChange) {
       
 26006           event.preventDefault();
       
 26007           handleOnCommit(event);
       
 26008         }
       
 26009 
       
 26010         break;
       
 26011     }
       
 26012   };
       
 26013 
       
 26014   var dragGestureProps = useDrag(function (dragProps) {
       
 26015     var distance = dragProps.distance,
       
 26016         dragging = dragProps.dragging,
       
 26017         event = dragProps.event;
       
 26018     if (!isDragEnabled) return;
       
 26019     if (!distance) return;
       
 26020     event.stopPropagation();
       
 26021     /**
       
 26022      * Quick return if no longer dragging.
       
 26023      * This prevents unnecessary value calculations.
       
 26024      */
       
 26025 
       
 26026     if (!dragging) {
       
 26027       onDragEnd(dragProps);
       
 26028       dragEnd(dragProps);
       
 26029       return;
       
 26030     }
       
 26031 
       
 26032     onDrag(dragProps);
       
 26033     drag(dragProps);
       
 26034 
       
 26035     if (!isDragging) {
       
 26036       onDragStart(dragProps);
       
 26037       dragStart(dragProps);
       
 26038     }
       
 26039   }, {
       
 26040     threshold: dragThreshold,
       
 26041     enabled: isDragEnabled
       
 26042   });
       
 26043   return Object(external_this_wp_element_["createElement"])(input_control_styles_Input, Object(esm_extends["a" /* default */])({}, props, dragGestureProps(), {
       
 26044     className: "components-input-control__input",
       
 26045     disabled: disabled,
       
 26046     dragCursor: dragCursor,
       
 26047     isDragging: isDragging,
       
 26048     id: id,
       
 26049     isFloating: isFloating,
       
 26050     isFloatingLabel: isFloatingLabelSet,
       
 26051     onBlur: handleOnBlur,
       
 26052     onChange: handleOnChange,
       
 26053     onFocus: handleOnFocus,
       
 26054     onKeyDown: handleOnKeyDown,
       
 26055     ref: ref,
       
 26056     size: size,
       
 26057     value: value
       
 26058   }));
       
 26059 }
       
 26060 
       
 26061 var ForwardedComponent = Object(external_this_wp_element_["forwardRef"])(InputField);
       
 26062 /* harmony default export */ var input_field = (ForwardedComponent);
       
 26063 
       
 26064 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/label.js
       
 26065 
       
 26066 
       
 26067 
       
 26068 
       
 26069 /**
       
 26070  * Internal dependencies
       
 26071  */
       
 26072 
       
 26073 
       
 26074 function label_Label(_ref) {
       
 26075   var children = _ref.children,
       
 26076       hideLabelFromVision = _ref.hideLabelFromVision,
       
 26077       htmlFor = _ref.htmlFor,
       
 26078       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "hideLabelFromVision", "htmlFor"]);
       
 26079 
       
 26080   if (!children) return null;
       
 26081 
       
 26082   if (hideLabelFromVision) {
       
 26083     return Object(external_this_wp_element_["createElement"])(visually_hidden, {
       
 26084       as: "label",
       
 26085       htmlFor: htmlFor
       
 26086     }, children);
       
 26087   }
       
 26088 
       
 26089   return Object(external_this_wp_element_["createElement"])(input_control_styles_Label, Object(esm_extends["a" /* default */])({
       
 26090     htmlFor: htmlFor
       
 26091   }, props), children);
       
 26092 }
       
 26093 
       
 26094 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/input-control/index.js
       
 26095 
       
 26096 
       
 26097 
       
 26098 
       
 26099 
       
 26100 /**
       
 26101  * External dependencies
       
 26102  */
       
 26103 
       
 26104 
       
 26105 /**
       
 26106  * WordPress dependencies
       
 26107  */
       
 26108 
       
 26109 
       
 26110 
       
 26111 /**
       
 26112  * Internal dependencies
       
 26113  */
       
 26114 
       
 26115 
       
 26116 
       
 26117 
       
 26118 
       
 26119 
       
 26120 
       
 26121 function useUniqueId(idProp) {
       
 26122   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(InputControl);
       
 26123   var id = "inspector-input-control-".concat(instanceId);
       
 26124   return idProp || id;
       
 26125 }
       
 26126 
       
 26127 function InputControl(_ref, ref) {
       
 26128   var _ref$__unstableStateR = _ref.__unstableStateReducer,
       
 26129       stateReducer = _ref$__unstableStateR === void 0 ? function (state) {
       
 26130     return state;
       
 26131   } : _ref$__unstableStateR,
       
 26132       children = _ref.children,
       
 26133       className = _ref.className,
       
 26134       _ref$disabled = _ref.disabled,
       
 26135       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
       
 26136       _ref$hideLabelFromVis = _ref.hideLabelFromVision,
       
 26137       hideLabelFromVision = _ref$hideLabelFromVis === void 0 ? false : _ref$hideLabelFromVis,
       
 26138       idProp = _ref.id,
       
 26139       _ref$isPressEnterToCh = _ref.isPressEnterToChange,
       
 26140       isPressEnterToChange = _ref$isPressEnterToCh === void 0 ? false : _ref$isPressEnterToCh,
       
 26141       _ref$isFloatingLabel = _ref.isFloatingLabel,
       
 26142       isFloatingLabel = _ref$isFloatingLabel === void 0 ? false : _ref$isFloatingLabel,
       
 26143       label = _ref.label,
       
 26144       _ref$onBlur = _ref.onBlur,
       
 26145       onBlur = _ref$onBlur === void 0 ? external_this_lodash_["noop"] : _ref$onBlur,
       
 26146       _ref$onChange = _ref.onChange,
       
 26147       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 26148       _ref$onFocus = _ref.onFocus,
       
 26149       onFocus = _ref$onFocus === void 0 ? external_this_lodash_["noop"] : _ref$onFocus,
       
 26150       _ref$onValidate = _ref.onValidate,
       
 26151       onValidate = _ref$onValidate === void 0 ? external_this_lodash_["noop"] : _ref$onValidate,
       
 26152       _ref$onKeyDown = _ref.onKeyDown,
       
 26153       onKeyDown = _ref$onKeyDown === void 0 ? external_this_lodash_["noop"] : _ref$onKeyDown,
       
 26154       _ref$size = _ref.size,
       
 26155       size = _ref$size === void 0 ? 'default' : _ref$size,
       
 26156       suffix = _ref.suffix,
       
 26157       value = _ref.value,
       
 26158       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["__unstableStateReducer", "children", "className", "disabled", "hideLabelFromVision", "id", "isPressEnterToChange", "isFloatingLabel", "label", "onBlur", "onChange", "onFocus", "onValidate", "onKeyDown", "size", "suffix", "value"]);
       
 26159 
       
 26160   var _useState = Object(external_this_wp_element_["useState"])(false),
       
 26161       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 26162       isFocused = _useState2[0],
       
 26163       setIsFocused = _useState2[1];
       
 26164 
       
 26165   var _useState3 = Object(external_this_wp_element_["useState"])(!isValueEmpty(value)),
       
 26166       _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
       
 26167       isFilled = _useState4[0],
       
 26168       setIsFilled = _useState4[1];
       
 26169 
       
 26170   var id = useUniqueId(idProp);
       
 26171   var classes = classnames_default()('components-input-control', className);
       
 26172 
       
 26173   var handleOnBlur = function handleOnBlur(event) {
       
 26174     onBlur(event);
       
 26175     setIsFocused(false);
       
 26176   };
       
 26177 
       
 26178   var handleOnFocus = function handleOnFocus(event) {
       
 26179     onFocus(event);
       
 26180     setIsFocused(true);
       
 26181   };
       
 26182 
       
 26183   var isInputFilled = isFilled || !isValueEmpty(value);
       
 26184   var isFloating = isFloatingLabel ? isInputFilled || isFocused : false;
       
 26185   var isFloatingLabelSet = !hideLabelFromVision && isFloatingLabel && label;
       
 26186   return Object(external_this_wp_element_["createElement"])(input_control_styles_Root, {
       
 26187     className: classes,
       
 26188     isFloatingLabel: isFloatingLabelSet,
       
 26189     isFocused: isFocused
       
 26190   }, Object(external_this_wp_element_["createElement"])(label_Label, {
       
 26191     className: "components-input-control__label",
       
 26192     hideLabelFromVision: hideLabelFromVision,
       
 26193     htmlFor: id,
       
 26194     isFilled: isFilled,
       
 26195     isFloating: isFloating,
       
 26196     isFloatingLabel: isFloatingLabel,
       
 26197     size: size
       
 26198   }, label), Object(external_this_wp_element_["createElement"])(Container, {
       
 26199     className: "components-input-control__container",
       
 26200     disabled: disabled,
       
 26201     isFocused: isFocused
       
 26202   }, Object(external_this_wp_element_["createElement"])(input_field, Object(esm_extends["a" /* default */])({}, props, {
       
 26203     className: "components-input-control__input",
       
 26204     disabled: disabled,
       
 26205     id: id,
       
 26206     isFloating: isFloating,
       
 26207     isFloatingLabelSet: isFloatingLabelSet,
       
 26208     isPressEnterToChange: isPressEnterToChange,
       
 26209     onBlur: handleOnBlur,
       
 26210     onChange: onChange,
       
 26211     onFocus: handleOnFocus,
       
 26212     onKeyDown: onKeyDown,
       
 26213     onUpdateValue: setIsFilled,
       
 26214     onValidate: onValidate,
       
 26215     ref: ref,
       
 26216     setIsFocused: setIsFocused,
       
 26217     size: size,
       
 26218     stateReducer: stateReducer,
       
 26219     value: value
       
 26220   })), suffix && Object(external_this_wp_element_["createElement"])(Suffix, {
       
 26221     className: "components-input-control__suffix"
       
 26222   }, suffix), Object(external_this_wp_element_["createElement"])(backdrop, {
       
 26223     "aria-hidden": "true",
       
 26224     disabled: disabled,
       
 26225     isFloating: isFloating,
       
 26226     isFloatingLabel: isFloatingLabelSet,
       
 26227     isFocused: isFocused,
       
 26228     label: label,
       
 26229     size: size
       
 26230   }), children));
       
 26231 }
       
 26232 /* harmony default export */ var input_control = (Object(external_this_wp_element_["forwardRef"])(InputControl));
       
 26233 
       
 26234 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/number-control/styles/number-control-styles.js
       
 26235 
       
 26236 
       
 26237 function number_control_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 26238 
       
 26239 /**
       
 26240  * External dependencies
       
 26241  */
       
 26242 
       
 26243 
       
 26244 /**
       
 26245  * Internal dependencies
       
 26246  */
       
 26247 
       
 26248 
       
 26249 var number_control_styles_ref =  true ? {
       
 26250   name: "1b9wwt5",
       
 26251   styles: "&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none !important;margin:0 !important;}"
       
 26252 } : undefined;
       
 26253 
       
 26254 var htmlArrowStyles = function htmlArrowStyles(_ref2) {
       
 26255   var hideHTMLArrows = _ref2.hideHTMLArrows;
       
 26256   if (!hideHTMLArrows) return "";
       
 26257   return number_control_styles_ref;
       
 26258 };
       
 26259 
       
 26260 var number_control_styles_Input = /*#__PURE__*/styled_base_browser_esm(input_control, {
       
 26261   target: "ep48uk90",
       
 26262   label: "Input"
       
 26263 })(htmlArrowStyles, ";" + ( true ? "" : undefined));
       
 26264 
       
 26265 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/math.js
       
 26266 /**
       
 26267  * External dependencies
       
 26268  */
       
 26269 
       
 26270 /**
       
 26271  * Parses and retrieves a number value.
       
 26272  *
       
 26273  * @param {any} value The incoming value.
       
 26274  *
       
 26275  * @return {number} The parsed number value.
       
 26276  */
       
 26277 
       
 26278 function getNumber(value) {
       
 26279   var number = Number(value);
       
 26280   return isNaN(number) ? 0 : number;
       
 26281 }
       
 26282 /**
       
 26283  * Safely adds 2 values.
       
 26284  *
       
 26285  * @param {number|string} args Values to add together.
       
 26286  *
       
 26287  * @return {number} The sum of values.
       
 26288  */
       
 26289 
       
 26290 function add() {
       
 26291   for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
       
 26292     args[_key] = arguments[_key];
       
 26293   }
       
 26294 
       
 26295   return args.reduce(function (sum, arg) {
       
 26296     return sum + getNumber(arg);
       
 26297   }, 0);
       
 26298 }
       
 26299 /**
       
 26300  * Safely subtracts 2 values.
       
 26301  *
       
 26302  * @param {number|string} args Values to subtract together.
       
 26303  *
       
 26304  * @return {number} The difference of the 2 values.
       
 26305  */
       
 26306 
       
 26307 function subtract() {
       
 26308   for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
       
 26309     args[_key2] = arguments[_key2];
       
 26310   }
       
 26311 
       
 26312   return args.reduce(function (diff, arg, index) {
       
 26313     var value = getNumber(arg);
       
 26314     return index === 0 ? value : diff - value;
       
 26315   });
       
 26316 }
       
 26317 /**
       
 26318  * Determines the decimal position of a number value.
       
 26319  *
       
 26320  * @param {number} value The number to evaluate.
       
 26321  *
       
 26322  * @return {number} The number of decimal places.
       
 26323  */
       
 26324 
       
 26325 function getPrecision(value) {
       
 26326   var split = (value + '').split('.');
       
 26327   return split[1] !== undefined ? split[1].length : 0;
       
 26328 }
       
 26329 /**
       
 26330  * Clamps a value based on a min/max range with rounding
       
 26331  *
       
 26332  * @param {number} value The value.
       
 26333  * @param {number} min The minimum range.
       
 26334  * @param {number} max The maximum range.
       
 26335  * @param {number} step A multiplier for the value.
       
 26336  *
       
 26337  * @return {number} The rounded and clamped value.
       
 26338  */
       
 26339 
       
 26340 
       
 26341 function roundClamp() {
       
 26342   var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
       
 26343   var min = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Infinity;
       
 26344   var max = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : Infinity;
       
 26345   var step = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;
       
 26346   var baseValue = getNumber(value);
       
 26347   var stepValue = getNumber(step);
       
 26348   var precision = getPrecision(step);
       
 26349   var rounded = Math.round(baseValue / stepValue) * stepValue;
       
 26350   var clampedValue = Object(external_this_lodash_["clamp"])(rounded, min, max);
       
 26351   return precision ? getNumber(clampedValue.toFixed(precision)) : clampedValue;
       
 26352 }
       
 26353 /**
       
 26354  * Clamps a value based on a min/max range with rounding.
       
 26355  * Returns a string.
       
 26356  *
       
 26357  * @param {any} args Arguments for roundClamp().
       
 26358  * @property {number} value The value.
       
 26359  * @property {number} min The minimum range.
       
 26360  * @property {number} max The maximum range.
       
 26361  * @property {number} step A multiplier for the value.
       
 26362  *
       
 26363  * @return {string} The rounded and clamped value.
       
 26364  */
       
 26365 
       
 26366 function roundClampString() {
       
 26367   return roundClamp.apply(void 0, arguments).toString();
       
 26368 }
       
 26369 
       
 26370 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/hooks/use-jump-step.js
       
 26371 
       
 26372 
       
 26373 /**
       
 26374  * WordPress dependencies
       
 26375  */
       
 26376 
       
 26377 /**
       
 26378  * A custom hook that calculates a step value (used by elements like input
       
 26379  * [type="number"]). This value can be modified based on whether the Shift
       
 26380  * key is being held down.
       
 26381  *
       
 26382  * For example, a shiftStep of 10, and a step of 1...
       
 26383  * Starting from 10, the next incremented value will be 11.
       
 26384  *
       
 26385  * Holding down shift...
       
 26386  * Starting from 10, the next incremented value will be 20.
       
 26387  *
       
 26388  * @param {Object} props Properties for the hook.
       
 26389  * @param {boolean} [props.isShiftStepEnabled=true] Determines if jumping values with shift is enabled
       
 26390  * @param {number} [props.shiftStep=10] Multiplier to jump by, when holding shift key.
       
 26391  * @param {number} [props.step=1] Multiplier to jump by, when not-holding shift key.
       
 26392  *
       
 26393  * @return {number} The jump step value.
       
 26394  */
       
 26395 
       
 26396 function useJumpStep(_ref) {
       
 26397   var _ref$isShiftStepEnabl = _ref.isShiftStepEnabled,
       
 26398       isShiftStepEnabled = _ref$isShiftStepEnabl === void 0 ? true : _ref$isShiftStepEnabl,
       
 26399       _ref$shiftStep = _ref.shiftStep,
       
 26400       shiftStep = _ref$shiftStep === void 0 ? 10 : _ref$shiftStep,
       
 26401       _ref$step = _ref.step,
       
 26402       step = _ref$step === void 0 ? 1 : _ref$step;
       
 26403 
       
 26404   var _useState = Object(external_this_wp_element_["useState"])(false),
       
 26405       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 26406       isShiftKey = _useState2[0],
       
 26407       setIsShiftKey = _useState2[1];
       
 26408 
       
 26409   Object(external_this_wp_element_["useEffect"])(function () {
       
 26410     var handleShiftKeyToggle = function handleShiftKeyToggle(event) {
       
 26411       setIsShiftKey(event.shiftKey);
       
 26412     };
       
 26413 
       
 26414     window.addEventListener('keydown', handleShiftKeyToggle);
       
 26415     window.addEventListener('keyup', handleShiftKeyToggle);
       
 26416     return function () {
       
 26417       window.removeEventListener('keydown', handleShiftKeyToggle);
       
 26418       window.removeEventListener('keyup', handleShiftKeyToggle);
       
 26419     };
       
 26420   }, []);
       
 26421   var isEnabled = isShiftStepEnabled && isShiftKey;
       
 26422   return isEnabled ? shiftStep * step : step;
       
 26423 }
       
 26424 
       
 26425 /* harmony default export */ var use_jump_step = (useJumpStep);
       
 26426 
       
 26427 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/number-control/index.js
       
 26428 
       
 26429 
       
 26430 
       
 26431 
       
 26432 
       
 26433 /**
       
 26434  * External dependencies
       
 26435  */
       
 26436 
       
 26437 /**
       
 26438  * WordPress dependencies
       
 26439  */
       
 26440 
       
 26441 
       
 26442 /**
       
 26443  * Internal dependencies
       
 26444  */
       
 26445 
       
 26446 
       
 26447 
       
 26448 
       
 26449 
       
 26450 
       
 26451 
       
 26452 function NumberControl(_ref, ref) {
       
 26453   var _ref$__unstableStateR = _ref.__unstableStateReducer,
       
 26454       stateReducer = _ref$__unstableStateR === void 0 ? function (state) {
       
 26455     return state;
       
 26456   } : _ref$__unstableStateR,
       
 26457       className = _ref.className,
       
 26458       _ref$dragDirection = _ref.dragDirection,
       
 26459       dragDirection = _ref$dragDirection === void 0 ? 'n' : _ref$dragDirection,
       
 26460       _ref$hideHTMLArrows = _ref.hideHTMLArrows,
       
 26461       hideHTMLArrows = _ref$hideHTMLArrows === void 0 ? false : _ref$hideHTMLArrows,
       
 26462       _ref$isDragEnabled = _ref.isDragEnabled,
       
 26463       isDragEnabled = _ref$isDragEnabled === void 0 ? true : _ref$isDragEnabled,
       
 26464       _ref$isShiftStepEnabl = _ref.isShiftStepEnabled,
       
 26465       isShiftStepEnabled = _ref$isShiftStepEnabl === void 0 ? true : _ref$isShiftStepEnabl,
       
 26466       label = _ref.label,
       
 26467       _ref$max = _ref.max,
       
 26468       max = _ref$max === void 0 ? Infinity : _ref$max,
       
 26469       _ref$min = _ref.min,
       
 26470       min = _ref$min === void 0 ? -Infinity : _ref$min,
       
 26471       _ref$shiftStep = _ref.shiftStep,
       
 26472       shiftStep = _ref$shiftStep === void 0 ? 10 : _ref$shiftStep,
       
 26473       _ref$step = _ref.step,
       
 26474       step = _ref$step === void 0 ? 1 : _ref$step,
       
 26475       _ref$type = _ref.type,
       
 26476       typeProp = _ref$type === void 0 ? 'number' : _ref$type,
       
 26477       valueProp = _ref.value,
       
 26478       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["__unstableStateReducer", "className", "dragDirection", "hideHTMLArrows", "isDragEnabled", "isShiftStepEnabled", "label", "max", "min", "shiftStep", "step", "type", "value"]);
       
 26479 
       
 26480   var isRtl = useRTL();
       
 26481   var baseValue = roundClamp(0, min, max, step);
       
 26482   var jumpStep = use_jump_step({
       
 26483     step: step,
       
 26484     shiftStep: shiftStep,
       
 26485     isShiftStepEnabled: isShiftStepEnabled
       
 26486   });
       
 26487   var autoComplete = typeProp === 'number' ? 'off' : null;
       
 26488   var classes = classnames_default()('components-number-control', className);
       
 26489   /**
       
 26490    * "Middleware" function that intercepts updates from InputControl.
       
 26491    * This allows us to tap into actions to transform the (next) state for
       
 26492    * InputControl.
       
 26493    *
       
 26494    * @param {Object} state State from InputControl
       
 26495    * @param {Object} action Action triggering state change
       
 26496    * @return {Object} The updated state to apply to InputControl
       
 26497    */
       
 26498 
       
 26499   var numberControlStateReducer = function numberControlStateReducer(state, action) {
       
 26500     var type = action.type,
       
 26501         payload = action.payload;
       
 26502     var event = payload === null || payload === void 0 ? void 0 : payload.event;
       
 26503     var currentValue = state.value;
       
 26504     /**
       
 26505      * Handles custom UP and DOWN Keyboard events
       
 26506      */
       
 26507 
       
 26508     if (type === inputControlActionTypes.PRESS_UP || type === inputControlActionTypes.PRESS_DOWN) {
       
 26509       var enableShift = event.shiftKey && isShiftStepEnabled;
       
 26510       var incrementalValue = enableShift ? parseFloat(shiftStep) * parseFloat(step) : parseFloat(step);
       
 26511       var nextValue = isValueEmpty(currentValue) ? baseValue : currentValue;
       
 26512 
       
 26513       if (event === null || event === void 0 ? void 0 : event.preventDefault) {
       
 26514         event.preventDefault();
       
 26515       }
       
 26516 
       
 26517       if (type === inputControlActionTypes.PRESS_UP) {
       
 26518         nextValue = add(nextValue, incrementalValue);
       
 26519       }
       
 26520 
       
 26521       if (type === inputControlActionTypes.PRESS_DOWN) {
       
 26522         nextValue = subtract(nextValue, incrementalValue);
       
 26523       }
       
 26524 
       
 26525       nextValue = roundClamp(nextValue, min, max, incrementalValue);
       
 26526       state.value = nextValue;
       
 26527     }
       
 26528     /**
       
 26529      * Handles drag to update events
       
 26530      */
       
 26531 
       
 26532 
       
 26533     if (type === inputControlActionTypes.DRAG && isDragEnabled) {
       
 26534       var delta = payload.delta,
       
 26535           shiftKey = payload.shiftKey;
       
 26536 
       
 26537       var _delta = Object(slicedToArray["a" /* default */])(delta, 2),
       
 26538           x = _delta[0],
       
 26539           y = _delta[1];
       
 26540 
       
 26541       var modifier = shiftKey ? parseFloat(shiftStep) * parseFloat(step) : parseFloat(step);
       
 26542       var directionModifier;
       
 26543       var directionBaseValue;
       
 26544 
       
 26545       switch (dragDirection) {
       
 26546         case 'n':
       
 26547           directionBaseValue = y;
       
 26548           directionModifier = -1;
       
 26549           break;
       
 26550 
       
 26551         case 'e':
       
 26552           directionBaseValue = x;
       
 26553           directionModifier = isRtl ? -1 : 1;
       
 26554           break;
       
 26555 
       
 26556         case 's':
       
 26557           directionBaseValue = y;
       
 26558           directionModifier = 1;
       
 26559           break;
       
 26560 
       
 26561         case 'w':
       
 26562           directionBaseValue = x;
       
 26563           directionModifier = isRtl ? 1 : -1;
       
 26564           break;
       
 26565       }
       
 26566 
       
 26567       var distance = directionBaseValue * modifier * directionModifier;
       
 26568 
       
 26569       var _nextValue;
       
 26570 
       
 26571       if (distance !== 0) {
       
 26572         _nextValue = roundClamp(add(currentValue, distance), min, max, modifier);
       
 26573         state.value = _nextValue;
       
 26574       }
       
 26575     }
       
 26576     /**
       
 26577      * Handles ENTER key press and submit
       
 26578      */
       
 26579 
       
 26580 
       
 26581     if (type === inputControlActionTypes.PRESS_ENTER || type === inputControlActionTypes.SUBMIT) {
       
 26582       state.value = roundClamp(currentValue, min, max);
       
 26583     }
       
 26584 
       
 26585     return state;
       
 26586   };
       
 26587 
       
 26588   return Object(external_this_wp_element_["createElement"])(number_control_styles_Input, Object(esm_extends["a" /* default */])({
       
 26589     autoComplete: autoComplete,
       
 26590     inputMode: "numeric"
       
 26591   }, props, {
       
 26592     className: classes,
       
 26593     dragDirection: dragDirection,
       
 26594     hideHTMLArrows: hideHTMLArrows,
       
 26595     isDragEnabled: isDragEnabled,
       
 26596     label: label,
       
 26597     max: max,
       
 26598     min: min,
       
 26599     ref: ref,
       
 26600     step: jumpStep,
       
 26601     type: typeProp,
       
 26602     value: valueProp,
       
 26603     __unstableStateReducer: state_composeStateReducers(numberControlStateReducer, stateReducer)
       
 26604   }));
       
 26605 }
       
 26606 /* harmony default export */ var number_control = (Object(external_this_wp_element_["forwardRef"])(NumberControl));
       
 26607 
       
 26608 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/unit-control/styles/unit-control-styles.js
       
 26609 
       
 26610 
       
 26611 function unit_control_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 26612 
       
 26613 /**
       
 26614  * External dependencies
       
 26615  */
       
 26616 
       
 26617 
       
 26618 /**
       
 26619  * Internal dependencies
       
 26620  */
       
 26621 
       
 26622 
       
 26623 var unit_control_styles_Root = styled_base_browser_esm("div", {
       
 26624   target: "e1agakv00",
       
 26625   label: "Root"
       
 26626 })( true ? {
       
 26627   name: "1bt0omd",
       
 26628   styles: "box-sizing:border-box;position:relative;"
       
 26629 } : undefined);
       
 26630 
       
 26631 var unit_control_styles_paddingStyles = function paddingStyles(_ref2) {
       
 26632   var disableUnits = _ref2.disableUnits;
       
 26633   var value = disableUnits ? 3 : 24;
       
 26634   return /*#__PURE__*/css_browser_esm(rtl({
       
 26635     paddingRight: value
       
 26636   })(), ";" + ( true ? "" : undefined));
       
 26637 };
       
 26638 
       
 26639 var unit_control_styles_ref =  true ? {
       
 26640   name: "1y65o8",
       
 26641   styles: "&::-webkit-outer-spin-button,&::-webkit-inner-spin-button{-webkit-appearance:none;margin:0;}"
       
 26642 } : undefined;
       
 26643 
       
 26644 var arrowStyles = function arrowStyles(_ref3) {
       
 26645   var disableUnits = _ref3.disableUnits;
       
 26646   if (disableUnits) return '';
       
 26647   return unit_control_styles_ref;
       
 26648 }; // TODO: Resolve need to use &&& to increase specificity
       
 26649 // https://github.com/WordPress/gutenberg/issues/18483
       
 26650 
       
 26651 
       
 26652 var ValueInput = /*#__PURE__*/styled_base_browser_esm(number_control, {
       
 26653   target: "e1agakv01",
       
 26654   label: "ValueInput"
       
 26655 })("&&&{input{appearance:none;-moz-appearance:textfield;display:block;width:100%;", arrowStyles, ";", unit_control_styles_paddingStyles, ";}}" + ( true ? "" : undefined));
       
 26656 
       
 26657 var unit_control_styles_unitSizeStyles = function unitSizeStyles(_ref4) {
       
 26658   var size = _ref4.size;
       
 26659   var sizes = {
       
 26660     default: {
       
 26661       height: 28,
       
 26662       lineHeight: '24px',
       
 26663       minHeight: 28,
       
 26664       top: 1
       
 26665     },
       
 26666     small: {
       
 26667       height: 22,
       
 26668       lineHeight: '18px',
       
 26669       minHeight: 22,
       
 26670       top: 1
       
 26671     }
       
 26672   };
       
 26673   return /*#__PURE__*/css_browser_esm(sizes[size],  true ? "" : undefined);
       
 26674 };
       
 26675 
       
 26676 var unit_control_styles_baseUnitLabelStyles = function baseUnitLabelStyles(props) {
       
 26677   return /*#__PURE__*/css_browser_esm("appearance:none;background:transparent;border-radius:2px;border:none;box-sizing:border-box;color:", colors_color('darkGray.500'), ";display:block;font-size:8px;line-height:1;letter-spacing:-0.5px;outline:none;padding:2px 1px;position:absolute;text-align-last:center;text-transform:uppercase;width:20px;", rtl({
       
 26678     borderTopLeftRadius: 0,
       
 26679     borderBottomLeftRadius: 0
       
 26680   })(), " ", rtl({
       
 26681     right: 0
       
 26682   })(), " ", unit_control_styles_unitSizeStyles(props),  true ? "" : undefined);
       
 26683 };
       
 26684 
       
 26685 var UnitLabel = styled_base_browser_esm("div", {
       
 26686   target: "e1agakv02",
       
 26687   label: "UnitLabel"
       
 26688 })("&&&{pointer-events:none;", unit_control_styles_baseUnitLabelStyles, ";}" + ( true ? "" : undefined));
       
 26689 var UnitSelect = styled_base_browser_esm("select", {
       
 26690   target: "e1agakv03",
       
 26691   label: "UnitSelect"
       
 26692 })("&&&{", unit_control_styles_baseUnitLabelStyles, ";cursor:pointer;border:1px solid transparent;&:hover{background-color:", colors_color('lightGray.300'), ";}&:focus{border-color:", colors_color('ui.borderFocus'), ";outline:2px solid transparent;outline-offset:0;}&:disabled{cursor:initial;&:hover{background-color:transparent;}}}" + ( true ? "" : undefined));
       
 26693 
       
 26694 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/unit-control/utils.js
       
 26695 
       
 26696 
       
 26697 /**
       
 26698  * External dependencies
       
 26699  */
       
 26700 
       
 26701 var CSS_UNITS = [{
       
 26702   value: 'px',
       
 26703   label: 'px',
       
 26704   default: 0
       
 26705 }, {
       
 26706   value: '%',
       
 26707   label: '%',
       
 26708   default: 10
       
 26709 }, {
       
 26710   value: 'em',
       
 26711   label: 'em',
       
 26712   default: 0
       
 26713 }, {
       
 26714   value: 'rem',
       
 26715   label: 'rem',
       
 26716   default: 0
       
 26717 }, {
       
 26718   value: 'vw',
       
 26719   label: 'vw',
       
 26720   default: 10
       
 26721 }, {
       
 26722   value: 'vh',
       
 26723   label: 'vh',
       
 26724   default: 10
       
 26725 }];
       
 26726 var DEFAULT_UNIT = CSS_UNITS[0];
       
 26727 /**
       
 26728  * Handles legacy value + unit handling.
       
 26729  * This component use to manage both incoming value and units separately.
       
 26730  *
       
 26731  * Moving forward, ideally the value should be a string that contains both
       
 26732  * the value and unit, example: '10px'
       
 26733  *
       
 26734  * @param {number|string} value Value
       
 26735  * @param {string} unit Unit value
       
 26736  * @param {Array<Object>} units Units to derive from.
       
 26737  * @return {Array<number, string>} The extracted number and unit.
       
 26738  */
       
 26739 
       
 26740 function getParsedValue(value, unit, units) {
       
 26741   var initialValue = unit ? "".concat(value).concat(unit) : value;
       
 26742   return parseUnit(initialValue, units);
       
 26743 }
       
 26744 /**
       
 26745  * Checks if units are defined.
       
 26746  *
       
 26747  * @param {any} units Units to check.
       
 26748  * @return {boolean} Whether units are defined.
       
 26749  */
       
 26750 
       
 26751 function hasUnits(units) {
       
 26752   return !Object(external_this_lodash_["isEmpty"])(units) && units.length > 1 && units !== false;
       
 26753 }
       
 26754 /**
       
 26755  * Parses a number and unit from a value.
       
 26756  *
       
 26757  * @param {string} initialValue Value to parse
       
 26758  * @param {Array<Object>} units Units to derive from.
       
 26759  * @return {Array<number, string>} The extracted number and unit.
       
 26760  */
       
 26761 
       
 26762 function parseUnit(initialValue) {
       
 26763   var units = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : CSS_UNITS;
       
 26764   var value = String(initialValue).trim();
       
 26765   var num = parseFloat(value, 10);
       
 26766   num = isNaN(num) ? '' : num;
       
 26767   var unitMatch = value.match(/[\d.\-\+]*\s*(.*)/)[1];
       
 26768   var unit = unitMatch !== undefined ? unitMatch : '';
       
 26769   unit = unit.toLowerCase();
       
 26770 
       
 26771   if (hasUnits(units)) {
       
 26772     var match = units.find(function (item) {
       
 26773       return item.value === unit;
       
 26774     });
       
 26775     unit = match === null || match === void 0 ? void 0 : match.value;
       
 26776   }
       
 26777 
       
 26778   return [num, unit];
       
 26779 }
       
 26780 /**
       
 26781  * Parses a number and unit from a value. Validates parsed value, using fallback
       
 26782  * value if invalid.
       
 26783  *
       
 26784  * @param {number|string} next The next value.
       
 26785  * @param {Array<Object>} units Units to derive from.
       
 26786  * @param {number|string} fallbackValue The fallback value.
       
 26787  * @param {string} fallbackUnit The fallback value.
       
 26788  * @return {Array<number, string>} The extracted number and unit.
       
 26789  */
       
 26790 
       
 26791 function getValidParsedUnit(next, units, fallbackValue, fallbackUnit) {
       
 26792   var _parseUnit = parseUnit(next, units),
       
 26793       _parseUnit2 = Object(slicedToArray["a" /* default */])(_parseUnit, 2),
       
 26794       parsedValue = _parseUnit2[0],
       
 26795       parsedUnit = _parseUnit2[1];
       
 26796 
       
 26797   var baseValue = parsedValue;
       
 26798   var baseUnit;
       
 26799 
       
 26800   if (isNaN(parsedValue) || parsedValue === '') {
       
 26801     baseValue = fallbackValue;
       
 26802   }
       
 26803 
       
 26804   baseUnit = parsedUnit || fallbackUnit;
       
 26805   /**
       
 26806    * If no unit is found, attempt to use the first value from the collection
       
 26807    * of units as a default fallback.
       
 26808    */
       
 26809 
       
 26810   if (hasUnits(units) && !baseUnit) {
       
 26811     var _units$;
       
 26812 
       
 26813     baseUnit = (_units$ = units[0]) === null || _units$ === void 0 ? void 0 : _units$.value;
       
 26814   }
       
 26815 
       
 26816   return [baseValue, baseUnit];
       
 26817 }
       
 26818 
       
 26819 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/unit-control/unit-select-control.js
       
 26820 
       
 26821 
       
 26822 
       
 26823 
       
 26824 /**
       
 26825  * External dependencies
       
 26826  */
       
 26827 
       
 26828 
       
 26829 /**
       
 26830  * Internal dependencies
       
 26831  */
       
 26832 
       
 26833 
       
 26834 
       
 26835 /**
       
 26836  * Renders a `select` if there are multiple units.
       
 26837  * Otherwise, renders a non-selectable label.
       
 26838  *
       
 26839  * @param {Object}   props                     Component props.
       
 26840  * @param {string}   [props.className]         Class to set on the `select` element.
       
 26841  * @param {boolean}  [props.isTabbable=true]   Whether the control can be focused via keyboard navigation.
       
 26842  * @param {Array}    [props.options=CSS_UNITS] Available units to select from.
       
 26843  * @param {Function} [props.onChange=noop]     A callback function invoked when the value is changed.
       
 26844  * @param {string}   [props.size="default"]    Size of the control option. Supports "default" and "small".
       
 26845  * @param {string}   [props.value="px"]        Current unit.
       
 26846  */
       
 26847 
       
 26848 function UnitSelectControl(_ref) {
       
 26849   var className = _ref.className,
       
 26850       _ref$isTabbable = _ref.isTabbable,
       
 26851       isTabbable = _ref$isTabbable === void 0 ? true : _ref$isTabbable,
       
 26852       _ref$options = _ref.options,
       
 26853       options = _ref$options === void 0 ? CSS_UNITS : _ref$options,
       
 26854       _ref$onChange = _ref.onChange,
       
 26855       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 26856       _ref$size = _ref.size,
       
 26857       size = _ref$size === void 0 ? 'default' : _ref$size,
       
 26858       _ref$value = _ref.value,
       
 26859       value = _ref$value === void 0 ? 'px' : _ref$value,
       
 26860       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "isTabbable", "options", "onChange", "size", "value"]);
       
 26861 
       
 26862   if (!hasUnits(options)) {
       
 26863     return Object(external_this_wp_element_["createElement"])(UnitLabel, {
       
 26864       className: "components-unit-control__unit-label",
       
 26865       size: size
       
 26866     }, value);
       
 26867   }
       
 26868 
       
 26869   var handleOnChange = function handleOnChange(event) {
       
 26870     var unitValue = event.target.value;
       
 26871     var data = options.find(function (option) {
       
 26872       return option.value === unitValue;
       
 26873     });
       
 26874     onChange(unitValue, {
       
 26875       event: event,
       
 26876       data: data
       
 26877     });
       
 26878   };
       
 26879 
       
 26880   var classes = classnames_default()('components-unit-control__select', className);
       
 26881   return Object(external_this_wp_element_["createElement"])(UnitSelect, Object(esm_extends["a" /* default */])({
       
 26882     className: classes,
       
 26883     onChange: handleOnChange,
       
 26884     size: size,
       
 26885     tabIndex: isTabbable ? null : '-1',
       
 26886     value: value
       
 26887   }, props), options.map(function (option) {
       
 26888     return Object(external_this_wp_element_["createElement"])("option", {
       
 26889       value: option.value,
       
 26890       key: option.value
       
 26891     }, option.label);
       
 26892   }));
       
 26893 }
       
 26894 
       
 26895 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/hooks/use-controlled-state.js
       
 26896 
       
 26897 
       
 26898 
       
 26899 function use_controlled_state_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 26900 
       
 26901 function use_controlled_state_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { use_controlled_state_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { use_controlled_state_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 26902 
       
 26903 /**
       
 26904  * WordPress dependencies
       
 26905  */
       
 26906 
       
 26907 /**
       
 26908  * Internal dependencies
       
 26909  */
       
 26910 
       
 26911 
       
 26912 var defaultOptions = {
       
 26913   initial: undefined,
       
 26914 
       
 26915   /**
       
 26916    * Defaults to empty string, as that is preferred for usage with
       
 26917    * <input />, <textarea />, and <select /> form elements.
       
 26918    */
       
 26919   fallback: ''
       
 26920 };
       
 26921 /**
       
 26922  * Custom hooks for "controlled" components to track and consolidate internal
       
 26923  * state and incoming values. This is useful for components that render
       
 26924  * `input`, `textarea`, or `select` HTML elements.
       
 26925  *
       
 26926  * https://reactjs.org/docs/forms.html#controlled-components
       
 26927  *
       
 26928  * At first, a component using useControlledState receives an initial prop
       
 26929  * value, which is used as initial internal state.
       
 26930  *
       
 26931  * This internal state can be maintained and updated without
       
 26932  * relying on new incoming prop values.
       
 26933  *
       
 26934  * Unlike the basic useState hook, useControlledState's state can
       
 26935  * be updated if a new incoming prop value is changed.
       
 26936  *
       
 26937  * @param {any} currentState The current value.
       
 26938  * @param {Object} options Additional options for the hook.
       
 26939  * @param {any} options.initial The initial state.
       
 26940  * @param {any} options.fallback The state to use when no state is defined.
       
 26941  *
       
 26942  * @return {[*, Function]} The controlled value and the value setter.
       
 26943  */
       
 26944 
       
 26945 function useControlledState(currentState) {
       
 26946   var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : defaultOptions;
       
 26947 
       
 26948   var _defaultOptions$optio = use_controlled_state_objectSpread({}, defaultOptions, {}, options),
       
 26949       initial = _defaultOptions$optio.initial,
       
 26950       fallback = _defaultOptions$optio.fallback;
       
 26951 
       
 26952   var _useState = Object(external_this_wp_element_["useState"])(currentState),
       
 26953       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 26954       internalState = _useState2[0],
       
 26955       setInternalState = _useState2[1];
       
 26956 
       
 26957   var hasCurrentState = isValueDefined(currentState);
       
 26958   var state = getDefinedValue([currentState, internalState, initial], fallback);
       
 26959 
       
 26960   var setState = function setState(nextState) {
       
 26961     if (!hasCurrentState) {
       
 26962       setInternalState(nextState);
       
 26963     }
       
 26964   };
       
 26965 
       
 26966   return [state, setState];
       
 26967 }
       
 26968 
       
 26969 /* harmony default export */ var use_controlled_state = (useControlledState);
       
 26970 
       
 26971 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/unit-control/index.js
       
 26972 
       
 26973 
       
 26974 
       
 26975 
       
 26976 
       
 26977 /**
       
 26978  * External dependencies
       
 26979  */
       
 26980 
       
 26981 
       
 26982 /**
       
 26983  * WordPress dependencies
       
 26984  */
       
 26985 
       
 26986 
       
 26987 /**
       
 26988  * Internal dependencies
       
 26989  */
       
 26990 
       
 26991 
       
 26992 
       
 26993 
       
 26994 
       
 26995 
       
 26996 
       
 26997 function UnitControl(_ref, ref) {
       
 26998   var _ref$__unstableStateR = _ref.__unstableStateReducer,
       
 26999       stateReducer = _ref$__unstableStateR === void 0 ? function (state) {
       
 27000     return state;
       
 27001   } : _ref$__unstableStateR,
       
 27002       _ref$autoComplete = _ref.autoComplete,
       
 27003       autoComplete = _ref$autoComplete === void 0 ? 'off' : _ref$autoComplete,
       
 27004       className = _ref.className,
       
 27005       _ref$disabled = _ref.disabled,
       
 27006       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
       
 27007       _ref$disableUnits = _ref.disableUnits,
       
 27008       disableUnits = _ref$disableUnits === void 0 ? false : _ref$disableUnits,
       
 27009       _ref$isPressEnterToCh = _ref.isPressEnterToChange,
       
 27010       isPressEnterToChange = _ref$isPressEnterToCh === void 0 ? false : _ref$isPressEnterToCh,
       
 27011       _ref$isResetValueOnUn = _ref.isResetValueOnUnitChange,
       
 27012       isResetValueOnUnitChange = _ref$isResetValueOnUn === void 0 ? false : _ref$isResetValueOnUn,
       
 27013       _ref$isUnitSelectTabb = _ref.isUnitSelectTabbable,
       
 27014       isUnitSelectTabbable = _ref$isUnitSelectTabb === void 0 ? false : _ref$isUnitSelectTabb,
       
 27015       label = _ref.label,
       
 27016       _ref$onChange = _ref.onChange,
       
 27017       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 27018       _ref$onUnitChange = _ref.onUnitChange,
       
 27019       onUnitChange = _ref$onUnitChange === void 0 ? external_this_lodash_["noop"] : _ref$onUnitChange,
       
 27020       _ref$size = _ref.size,
       
 27021       size = _ref$size === void 0 ? 'default' : _ref$size,
       
 27022       style = _ref.style,
       
 27023       unitProp = _ref.unit,
       
 27024       _ref$units = _ref.units,
       
 27025       units = _ref$units === void 0 ? CSS_UNITS : _ref$units,
       
 27026       valueProp = _ref.value,
       
 27027       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["__unstableStateReducer", "autoComplete", "className", "disabled", "disableUnits", "isPressEnterToChange", "isResetValueOnUnitChange", "isUnitSelectTabbable", "label", "onChange", "onUnitChange", "size", "style", "unit", "units", "value"]);
       
 27028 
       
 27029   var _getParsedValue = getParsedValue(valueProp, unitProp, units),
       
 27030       _getParsedValue2 = Object(slicedToArray["a" /* default */])(_getParsedValue, 2),
       
 27031       value = _getParsedValue2[0],
       
 27032       initialUnit = _getParsedValue2[1];
       
 27033 
       
 27034   var _useControlledState = use_controlled_state(unitProp, {
       
 27035     initial: initialUnit
       
 27036   }),
       
 27037       _useControlledState2 = Object(slicedToArray["a" /* default */])(_useControlledState, 2),
       
 27038       unit = _useControlledState2[0],
       
 27039       setUnit = _useControlledState2[1];
       
 27040 
       
 27041   var classes = classnames_default()('components-unit-control', className);
       
 27042 
       
 27043   var handleOnChange = function handleOnChange(next, changeProps) {
       
 27044     /**
       
 27045      * Customizing the onChange callback.
       
 27046      * This allows as to broadcast a combined value+unit to onChange.
       
 27047      */
       
 27048     var _getValidParsedUnit = getValidParsedUnit(next, units, value, unit),
       
 27049         _getValidParsedUnit2 = Object(slicedToArray["a" /* default */])(_getValidParsedUnit, 2),
       
 27050         parsedValue = _getValidParsedUnit2[0],
       
 27051         parsedUnit = _getValidParsedUnit2[1];
       
 27052 
       
 27053     var nextValue = "".concat(parsedValue).concat(parsedUnit);
       
 27054     onChange(nextValue, changeProps);
       
 27055   };
       
 27056 
       
 27057   var handleOnUnitChange = function handleOnUnitChange(next, changeProps) {
       
 27058     var data = changeProps.data;
       
 27059     var nextValue = "".concat(value).concat(next);
       
 27060 
       
 27061     if (isResetValueOnUnitChange && (data === null || data === void 0 ? void 0 : data.default) !== undefined) {
       
 27062       nextValue = "".concat(data.default).concat(next);
       
 27063     }
       
 27064 
       
 27065     onChange(nextValue, changeProps);
       
 27066     onUnitChange(next, changeProps);
       
 27067     setUnit(next);
       
 27068   };
       
 27069   /**
       
 27070    * "Middleware" function that intercepts updates from InputControl.
       
 27071    * This allows us to tap into actions to transform the (next) state for
       
 27072    * InputControl.
       
 27073    *
       
 27074    * @param {Object} state State from InputControl
       
 27075    * @param {Object} action Action triggering state change
       
 27076    * @return {Object} The updated state to apply to InputControl
       
 27077    */
       
 27078 
       
 27079 
       
 27080   var unitControlStateReducer = function unitControlStateReducer(state, action) {
       
 27081     var type = action.type,
       
 27082         payload = action.payload;
       
 27083     var event = payload === null || payload === void 0 ? void 0 : payload.event;
       
 27084     /**
       
 27085      * Customizes the commit interaction.
       
 27086      *
       
 27087      * This occurs when pressing ENTER to fire a change.
       
 27088      * By intercepting the state change, we can parse the incoming
       
 27089      * value to determine if the unit needs to be updated.
       
 27090      */
       
 27091 
       
 27092     if (type === inputControlActionTypes.COMMIT) {
       
 27093       var _event$target;
       
 27094 
       
 27095       var valueToParse = event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value;
       
 27096 
       
 27097       var _getValidParsedUnit3 = getValidParsedUnit(valueToParse, units, value, unit),
       
 27098           _getValidParsedUnit4 = Object(slicedToArray["a" /* default */])(_getValidParsedUnit3, 2),
       
 27099           parsedValue = _getValidParsedUnit4[0],
       
 27100           parsedUnit = _getValidParsedUnit4[1];
       
 27101 
       
 27102       state.value = parsedValue; // Update unit if the incoming parsed unit is different.
       
 27103 
       
 27104       if (unit !== parsedUnit) {
       
 27105         handleOnUnitChange(parsedUnit, {
       
 27106           event: event
       
 27107         });
       
 27108       }
       
 27109     }
       
 27110 
       
 27111     return state;
       
 27112   };
       
 27113 
       
 27114   var inputSuffix = !disableUnits ? Object(external_this_wp_element_["createElement"])(UnitSelectControl, {
       
 27115     disabled: disabled,
       
 27116     isTabbable: isUnitSelectTabbable,
       
 27117     options: units,
       
 27118     onChange: handleOnUnitChange,
       
 27119     size: size,
       
 27120     value: unit
       
 27121   }) : null;
       
 27122   return Object(external_this_wp_element_["createElement"])(unit_control_styles_Root, {
       
 27123     className: "components-unit-control-wrapper",
       
 27124     style: style
       
 27125   }, Object(external_this_wp_element_["createElement"])(ValueInput, Object(esm_extends["a" /* default */])({
       
 27126     "aria-label": label,
       
 27127     type: isPressEnterToChange ? 'text' : 'number'
       
 27128   }, props, {
       
 27129     autoComplete: autoComplete,
       
 27130     className: classes,
       
 27131     disabled: disabled,
       
 27132     disableUnits: disableUnits,
       
 27133     isPressEnterToChange: isPressEnterToChange,
       
 27134     label: label,
       
 27135     onChange: handleOnChange,
       
 27136     ref: ref,
       
 27137     size: size,
       
 27138     suffix: inputSuffix,
       
 27139     value: value,
       
 27140     __unstableStateReducer: state_composeStateReducers(unitControlStateReducer, stateReducer)
       
 27141   })));
       
 27142 }
       
 27143 
       
 27144 var ForwardedUnitControl = Object(external_this_wp_element_["forwardRef"])(UnitControl);
       
 27145 /* harmony default export */ var unit_control = (ForwardedUnitControl);
       
 27146 
       
 27147 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/styles/box-control-styles.js
       
 27148 
       
 27149 
       
 27150 function box_control_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 27151 
       
 27152 /**
       
 27153  * External dependencies
       
 27154  */
       
 27155 
       
 27156 
       
 27157 /**
       
 27158  * Internal dependencies
       
 27159  */
       
 27160 
       
 27161 
       
 27162 
       
 27163 var box_control_styles_Root = styled_base_browser_esm("div", {
       
 27164   target: "e7pk0lh0",
       
 27165   label: "Root"
       
 27166 })( true ? {
       
 27167   name: "vho1ao",
       
 27168   styles: "box-sizing:border-box;max-width:235px;padding-bottom:12px;width:100%;"
       
 27169 } : undefined);
       
 27170 var Header = /*#__PURE__*/styled_base_browser_esm(flex_Flex, {
       
 27171   target: "e7pk0lh1",
       
 27172   label: "Header"
       
 27173 })("color:", colors_color('ui.label'), ";padding-bottom:8px;" + ( true ? "" : undefined));
       
 27174 var HeaderControlWrapper = /*#__PURE__*/styled_base_browser_esm(flex_Flex, {
       
 27175   target: "e7pk0lh2",
       
 27176   label: "HeaderControlWrapper"
       
 27177 })( true ? {
       
 27178   name: "19de7qh",
       
 27179   styles: "min-height:30px;"
       
 27180 } : undefined);
       
 27181 var UnitControlWrapper = styled_base_browser_esm("div", {
       
 27182   target: "e7pk0lh3",
       
 27183   label: "UnitControlWrapper"
       
 27184 })( true ? {
       
 27185   name: "zypm0w",
       
 27186   styles: "box-sizing:border-box;max-width:80px;"
       
 27187 } : undefined);
       
 27188 var LayoutContainer = /*#__PURE__*/styled_base_browser_esm(flex_Flex, {
       
 27189   target: "e7pk0lh4",
       
 27190   label: "LayoutContainer"
       
 27191 })( true ? {
       
 27192   name: "39f89t",
       
 27193   styles: "justify-content:center;padding-top:8px;"
       
 27194 } : undefined);
       
 27195 var Layout = /*#__PURE__*/styled_base_browser_esm(flex_Flex, {
       
 27196   target: "e7pk0lh5",
       
 27197   label: "Layout"
       
 27198 })( true ? {
       
 27199   name: "ojqyia",
       
 27200   styles: "position:relative;height:100%;width:100%;"
       
 27201 } : undefined);
       
 27202 
       
 27203 var box_control_styles_ref =  true ? {
       
 27204   name: "icip60",
       
 27205   styles: "border-radius:2px;"
       
 27206 } : undefined;
       
 27207 
       
 27208 var box_control_styles_ref2 =  true ? {
       
 27209   name: "1k07npk",
       
 27210   styles: "border-radius:0;"
       
 27211 } : undefined;
       
 27212 
       
 27213 var box_control_styles_unitControlBorderRadiusStyles = function unitControlBorderRadiusStyles(_ref3) {
       
 27214   var isFirst = _ref3.isFirst,
       
 27215       isLast = _ref3.isLast,
       
 27216       isOnly = _ref3.isOnly;
       
 27217 
       
 27218   if (isFirst) {
       
 27219     return rtl({
       
 27220       borderTopRightRadius: 0,
       
 27221       borderBottomRightRadius: 0
       
 27222     })();
       
 27223   }
       
 27224 
       
 27225   if (isLast) {
       
 27226     return rtl({
       
 27227       borderTopLeftRadius: 0,
       
 27228       borderBottomLeftRadius: 0
       
 27229     })();
       
 27230   }
       
 27231 
       
 27232   if (isOnly) {
       
 27233     return box_control_styles_ref;
       
 27234   }
       
 27235 
       
 27236   return box_control_styles_ref2;
       
 27237 };
       
 27238 
       
 27239 var box_control_styles_unitControlMarginStyles = function unitControlMarginStyles(_ref4) {
       
 27240   var isFirst = _ref4.isFirst;
       
 27241   var marginLeft = isFirst ? 0 : -1;
       
 27242   return rtl({
       
 27243     marginLeft: marginLeft
       
 27244   })();
       
 27245 };
       
 27246 
       
 27247 var box_control_styles_UnitControl = /*#__PURE__*/styled_base_browser_esm(unit_control, {
       
 27248   target: "e7pk0lh6",
       
 27249   label: "UnitControl"
       
 27250 })("max-width:60px;", box_control_styles_unitControlBorderRadiusStyles, ";", box_control_styles_unitControlMarginStyles, ";" + ( true ? "" : undefined));
       
 27251 
       
 27252 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/unit-control.js
       
 27253 
       
 27254 
       
 27255 
       
 27256 
       
 27257 /**
       
 27258  * External dependencies
       
 27259  */
       
 27260 
       
 27261 
       
 27262 /**
       
 27263  * Internal dependencies
       
 27264  */
       
 27265 
       
 27266 
       
 27267 
       
 27268 function BoxUnitControl(_ref) {
       
 27269   var isFirst = _ref.isFirst,
       
 27270       isLast = _ref.isLast,
       
 27271       isOnly = _ref.isOnly,
       
 27272       _ref$onHoverOn = _ref.onHoverOn,
       
 27273       onHoverOn = _ref$onHoverOn === void 0 ? external_this_lodash_["noop"] : _ref$onHoverOn,
       
 27274       _ref$onHoverOff = _ref.onHoverOff,
       
 27275       onHoverOff = _ref$onHoverOff === void 0 ? external_this_lodash_["noop"] : _ref$onHoverOff,
       
 27276       label = _ref.label,
       
 27277       value = _ref.value,
       
 27278       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["isFirst", "isLast", "isOnly", "onHoverOn", "onHoverOff", "label", "value"]);
       
 27279 
       
 27280   var bindHoverGesture = useHover(function (_ref2) {
       
 27281     var event = _ref2.event,
       
 27282         state = Object(objectWithoutProperties["a" /* default */])(_ref2, ["event"]);
       
 27283 
       
 27284     if (state.hovering) {
       
 27285       onHoverOn(event, state);
       
 27286     } else {
       
 27287       onHoverOff(event, state);
       
 27288     }
       
 27289   });
       
 27290   return Object(external_this_wp_element_["createElement"])(UnitControlWrapper, Object(esm_extends["a" /* default */])({
       
 27291     "aria-label": label
       
 27292   }, bindHoverGesture()), Object(external_this_wp_element_["createElement"])(Tooltip, {
       
 27293     text: label
       
 27294   }, Object(external_this_wp_element_["createElement"])(box_control_styles_UnitControl, Object(esm_extends["a" /* default */])({
       
 27295     className: "component-box-control__unit-control",
       
 27296     hideHTMLArrows: true,
       
 27297     isFirst: isFirst,
       
 27298     isLast: isLast,
       
 27299     isOnly: isOnly,
       
 27300     isPressEnterToChange: true,
       
 27301     isFloatingLabel: true,
       
 27302     isResetValueOnUnitChange: false,
       
 27303     value: value
       
 27304   }, props))));
       
 27305 }
       
 27306 
       
 27307 function Tooltip(_ref3) {
       
 27308   var children = _ref3.children,
       
 27309       text = _ref3.text;
       
 27310   if (!text) return children;
       
 27311   return Object(external_this_wp_element_["createElement"])(build_module_tooltip["a" /* default */], {
       
 27312     text: text,
       
 27313     position: "top"
       
 27314   }, children);
       
 27315 }
       
 27316 
       
 27317 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/utils.js
       
 27318 /**
       
 27319  * External dependencies
       
 27320  */
       
 27321 
       
 27322 /**
       
 27323  * WordPress dependencies
       
 27324  */
       
 27325 
       
 27326 
       
 27327 /**
       
 27328  * Internal dependencies
       
 27329  */
       
 27330 
       
 27331 
       
 27332 var LABELS = {
       
 27333   all: Object(external_this_wp_i18n_["__"])('All'),
       
 27334   top: Object(external_this_wp_i18n_["__"])('Top'),
       
 27335   bottom: Object(external_this_wp_i18n_["__"])('Bottom'),
       
 27336   left: Object(external_this_wp_i18n_["__"])('Left'),
       
 27337   right: Object(external_this_wp_i18n_["__"])('Right'),
       
 27338   mixed: Object(external_this_wp_i18n_["__"])('Mixed')
       
 27339 };
       
 27340 var DEFAULT_VALUES = {
       
 27341   top: null,
       
 27342   right: null,
       
 27343   bottom: null,
       
 27344   left: null
       
 27345 };
       
 27346 var DEFAULT_VISUALIZER_VALUES = {
       
 27347   top: false,
       
 27348   right: false,
       
 27349   bottom: false,
       
 27350   left: false
       
 27351 };
       
 27352 /**
       
 27353  * Gets an items with the most occurance within an array
       
 27354  * https://stackoverflow.com/a/20762713
       
 27355  *
       
 27356  * @param {Array<any>} arr Array of items to check.
       
 27357  * @return {any} The item with the most occurances.
       
 27358  */
       
 27359 
       
 27360 function mode(arr) {
       
 27361   return arr.sort(function (a, b) {
       
 27362     return arr.filter(function (v) {
       
 27363       return v === a;
       
 27364     }).length - arr.filter(function (v) {
       
 27365       return v === b;
       
 27366     }).length;
       
 27367   }).pop();
       
 27368 }
       
 27369 /**
       
 27370  * Gets the 'all' input value and unit from values data.
       
 27371  *
       
 27372  * @param {Object} values Box values.
       
 27373  * @return {string} A value + unit for the 'all' input.
       
 27374  */
       
 27375 
       
 27376 
       
 27377 function getAllValue() {
       
 27378   var values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 27379   var parsedValues = Object.values(values).map(parseUnit);
       
 27380   var allValues = parsedValues.map(function (value) {
       
 27381     return value[0];
       
 27382   });
       
 27383   var allUnits = parsedValues.map(function (value) {
       
 27384     return value[1];
       
 27385   });
       
 27386   var value = allValues.every(function (v) {
       
 27387     return v === allValues[0];
       
 27388   }) ? allValues[0] : '';
       
 27389   var unit = mode(allUnits);
       
 27390   /**
       
 27391    * The isNumber check is important. On reset actions, the incoming value
       
 27392    * may be null or an empty string.
       
 27393    *
       
 27394    * Also, the value may also be zero (0), which is considered a valid unit value.
       
 27395    *
       
 27396    * isNumber() is more specific for these cases, rather than relying on a
       
 27397    * simple truthy check.
       
 27398    */
       
 27399 
       
 27400   var allValue = Object(external_this_lodash_["isNumber"])(value) ? "".concat(value).concat(unit) : null;
       
 27401   return allValue;
       
 27402 }
       
 27403 /**
       
 27404  * Checks to determine if values are mixed.
       
 27405  *
       
 27406  * @param {Object} values Box values.
       
 27407  * @return {boolean} Whether values are mixed.
       
 27408  */
       
 27409 
       
 27410 function isValuesMixed() {
       
 27411   var values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 27412   var allValue = getAllValue(values);
       
 27413   var isMixed = isNaN(parseFloat(allValue));
       
 27414   return isMixed;
       
 27415 }
       
 27416 /**
       
 27417  * Checks to determine if values are defined.
       
 27418  *
       
 27419  * @param {Object} values Box values.
       
 27420  *
       
 27421  * @return {boolean} Whether values are mixed.
       
 27422  */
       
 27423 
       
 27424 function isValuesDefined(values) {
       
 27425   return values !== undefined && !Object(external_this_lodash_["isEmpty"])(Object.values(values).filter(Boolean));
       
 27426 }
       
 27427 
       
 27428 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/all-input-control.js
       
 27429 
       
 27430 
       
 27431 
       
 27432 
       
 27433 
       
 27434 function all_input_control_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 27435 
       
 27436 function all_input_control_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { all_input_control_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { all_input_control_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 27437 
       
 27438 /**
       
 27439  * External dependencies
       
 27440  */
       
 27441 
       
 27442 /**
       
 27443  * Internal dependencies
       
 27444  */
       
 27445 
       
 27446 
       
 27447 
       
 27448 function AllInputControl(_ref) {
       
 27449   var _ref$onChange = _ref.onChange,
       
 27450       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 27451       _ref$onFocus = _ref.onFocus,
       
 27452       onFocus = _ref$onFocus === void 0 ? external_this_lodash_["noop"] : _ref$onFocus,
       
 27453       _ref$onHoverOn = _ref.onHoverOn,
       
 27454       onHoverOn = _ref$onHoverOn === void 0 ? external_this_lodash_["noop"] : _ref$onHoverOn,
       
 27455       _ref$onHoverOff = _ref.onHoverOff,
       
 27456       onHoverOff = _ref$onHoverOff === void 0 ? external_this_lodash_["noop"] : _ref$onHoverOff,
       
 27457       values = _ref.values,
       
 27458       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["onChange", "onFocus", "onHoverOn", "onHoverOff", "values"]);
       
 27459 
       
 27460   var allValue = getAllValue(values);
       
 27461   var hasValues = isValuesDefined(values);
       
 27462   var isMixed = hasValues && isValuesMixed(values);
       
 27463   var allPlaceholder = isMixed ? LABELS.mixed : null;
       
 27464 
       
 27465   var handleOnFocus = function handleOnFocus(event) {
       
 27466     onFocus(event, {
       
 27467       side: 'all'
       
 27468     });
       
 27469   };
       
 27470 
       
 27471   var handleOnChange = function handleOnChange(next) {
       
 27472     var nextValues = all_input_control_objectSpread({}, values);
       
 27473 
       
 27474     nextValues.top = next;
       
 27475     nextValues.bottom = next;
       
 27476     nextValues.left = next;
       
 27477     nextValues.right = next;
       
 27478     onChange(nextValues);
       
 27479   };
       
 27480 
       
 27481   var handleOnHoverOn = function handleOnHoverOn() {
       
 27482     onHoverOn({
       
 27483       top: true,
       
 27484       bottom: true,
       
 27485       left: true,
       
 27486       right: true
       
 27487     });
       
 27488   };
       
 27489 
       
 27490   var handleOnHoverOff = function handleOnHoverOff() {
       
 27491     onHoverOff({
       
 27492       top: false,
       
 27493       bottom: false,
       
 27494       left: false,
       
 27495       right: false
       
 27496     });
       
 27497   };
       
 27498 
       
 27499   return Object(external_this_wp_element_["createElement"])(BoxUnitControl, Object(esm_extends["a" /* default */])({}, props, {
       
 27500     disableUnits: isMixed,
       
 27501     isOnly: true,
       
 27502     value: allValue,
       
 27503     onChange: handleOnChange,
       
 27504     onFocus: handleOnFocus,
       
 27505     onHoverOn: handleOnHoverOn,
       
 27506     onHoverOff: handleOnHoverOff,
       
 27507     placeholder: allPlaceholder
       
 27508   }));
       
 27509 }
       
 27510 
       
 27511 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/input-controls.js
       
 27512 
       
 27513 
       
 27514 
       
 27515 
       
 27516 
       
 27517 function input_controls_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 27518 
       
 27519 function input_controls_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { input_controls_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { input_controls_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 27520 
       
 27521 /**
       
 27522  * External dependencies
       
 27523  */
       
 27524 
       
 27525 /**
       
 27526  * Internal dependencies
       
 27527  */
       
 27528 
       
 27529 
       
 27530 
       
 27531 
       
 27532 function BoxInputControls(_ref) {
       
 27533   var _ref$onChange = _ref.onChange,
       
 27534       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 27535       _ref$onFocus = _ref.onFocus,
       
 27536       onFocus = _ref$onFocus === void 0 ? external_this_lodash_["noop"] : _ref$onFocus,
       
 27537       _ref$onHoverOn = _ref.onHoverOn,
       
 27538       onHoverOn = _ref$onHoverOn === void 0 ? external_this_lodash_["noop"] : _ref$onHoverOn,
       
 27539       _ref$onHoverOff = _ref.onHoverOff,
       
 27540       onHoverOff = _ref$onHoverOff === void 0 ? external_this_lodash_["noop"] : _ref$onHoverOff,
       
 27541       values = _ref.values,
       
 27542       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["onChange", "onFocus", "onHoverOn", "onHoverOff", "values"]);
       
 27543 
       
 27544   var createHandleOnFocus = function createHandleOnFocus(side) {
       
 27545     return function (event) {
       
 27546       onFocus(event, {
       
 27547         side: side
       
 27548       });
       
 27549     };
       
 27550   };
       
 27551 
       
 27552   var createHandleOnHoverOn = function createHandleOnHoverOn(side) {
       
 27553     return function () {
       
 27554       onHoverOn(Object(defineProperty["a" /* default */])({}, side, true));
       
 27555     };
       
 27556   };
       
 27557 
       
 27558   var createHandleOnHoverOff = function createHandleOnHoverOff(side) {
       
 27559     return function () {
       
 27560       onHoverOff(Object(defineProperty["a" /* default */])({}, side, false));
       
 27561     };
       
 27562   };
       
 27563 
       
 27564   var handleOnChange = function handleOnChange(nextValues) {
       
 27565     onChange(nextValues);
       
 27566   };
       
 27567 
       
 27568   var top = values.top,
       
 27569       right = values.right,
       
 27570       bottom = values.bottom,
       
 27571       left = values.left;
       
 27572 
       
 27573   var createHandleOnChange = function createHandleOnChange(side) {
       
 27574     return function (next, _ref2) {
       
 27575       var event = _ref2.event;
       
 27576       var altKey = event.altKey;
       
 27577 
       
 27578       var nextValues = input_controls_objectSpread({}, values);
       
 27579 
       
 27580       nextValues[side] = next;
       
 27581       /**
       
 27582        * Supports changing pair sides. For example, holding the ALT key
       
 27583        * when changing the TOP will also update BOTTOM.
       
 27584        */
       
 27585 
       
 27586       if (altKey) {
       
 27587         switch (side) {
       
 27588           case 'top':
       
 27589             nextValues.bottom = next;
       
 27590             break;
       
 27591 
       
 27592           case 'bottom':
       
 27593             nextValues.top = next;
       
 27594             break;
       
 27595 
       
 27596           case 'left':
       
 27597             nextValues.right = next;
       
 27598             break;
       
 27599 
       
 27600           case 'right':
       
 27601             nextValues.left = next;
       
 27602             break;
       
 27603         }
       
 27604       }
       
 27605 
       
 27606       handleOnChange(nextValues);
       
 27607     };
       
 27608   };
       
 27609 
       
 27610   return Object(external_this_wp_element_["createElement"])(LayoutContainer, {
       
 27611     className: "component-box-control__input-controls-wrapper"
       
 27612   }, Object(external_this_wp_element_["createElement"])(Layout, {
       
 27613     gap: 0,
       
 27614     align: "top",
       
 27615     className: "component-box-control__input-controls"
       
 27616   }, Object(external_this_wp_element_["createElement"])(BoxUnitControl, Object(esm_extends["a" /* default */])({}, props, {
       
 27617     isFirst: true,
       
 27618     value: top,
       
 27619     onChange: createHandleOnChange('top'),
       
 27620     onFocus: createHandleOnFocus('top'),
       
 27621     onHoverOn: createHandleOnHoverOn('top'),
       
 27622     onHoverOff: createHandleOnHoverOff('top'),
       
 27623     label: LABELS.top
       
 27624   })), Object(external_this_wp_element_["createElement"])(BoxUnitControl, Object(esm_extends["a" /* default */])({}, props, {
       
 27625     value: right,
       
 27626     onChange: createHandleOnChange('right'),
       
 27627     onFocus: createHandleOnFocus('right'),
       
 27628     onHoverOn: createHandleOnHoverOn('right'),
       
 27629     onHoverOff: createHandleOnHoverOff('right'),
       
 27630     label: LABELS.right
       
 27631   })), Object(external_this_wp_element_["createElement"])(BoxUnitControl, Object(esm_extends["a" /* default */])({}, props, {
       
 27632     value: bottom,
       
 27633     onChange: createHandleOnChange('bottom'),
       
 27634     onFocus: createHandleOnFocus('bottom'),
       
 27635     onHoverOn: createHandleOnHoverOn('bottom'),
       
 27636     onHoverOff: createHandleOnHoverOff('bottom'),
       
 27637     label: LABELS.bottom
       
 27638   })), Object(external_this_wp_element_["createElement"])(BoxUnitControl, Object(esm_extends["a" /* default */])({}, props, {
       
 27639     isLast: true,
       
 27640     value: left,
       
 27641     onChange: createHandleOnChange('left'),
       
 27642     onFocus: createHandleOnFocus('left'),
       
 27643     onHoverOn: createHandleOnHoverOn('left'),
       
 27644     onHoverOff: createHandleOnHoverOff('left'),
       
 27645     label: LABELS.left
       
 27646   }))));
       
 27647 }
       
 27648 
       
 27649 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/styles/box-control-icon-styles.js
       
 27650 
       
 27651 
       
 27652 function box_control_icon_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 27653 
       
 27654 /**
       
 27655  * External dependencies
       
 27656  */
       
 27657 
       
 27658 var box_control_icon_styles_Root = styled_base_browser_esm("span", {
       
 27659   target: "eaw9yqk0",
       
 27660   label: "Root"
       
 27661 })( true ? {
       
 27662   name: "1qtciqq",
       
 27663   styles: "box-sizing:border-box;display:block;width:24px;height:24px;position:relative;padding:4px;"
       
 27664 } : undefined);
       
 27665 var Viewbox = styled_base_browser_esm("span", {
       
 27666   target: "eaw9yqk1",
       
 27667   label: "Viewbox"
       
 27668 })( true ? {
       
 27669   name: "be7uli",
       
 27670   styles: "box-sizing:border-box;display:block;position:relative;width:100%;height:100%;"
       
 27671 } : undefined);
       
 27672 
       
 27673 var box_control_icon_styles_strokeFocus = function strokeFocus(_ref) {
       
 27674   var isFocused = _ref.isFocused;
       
 27675   return /*#__PURE__*/css_browser_esm({
       
 27676     backgroundColor: 'currentColor',
       
 27677     opacity: isFocused ? 1 : 0.3
       
 27678   },  true ? "" : undefined);
       
 27679 };
       
 27680 
       
 27681 var Stroke = styled_base_browser_esm("span", {
       
 27682   target: "eaw9yqk2",
       
 27683   label: "Stroke"
       
 27684 })("box-sizing:border-box;display:block;pointer-events:none;position:absolute;", box_control_icon_styles_strokeFocus, ";" + ( true ? "" : undefined));
       
 27685 
       
 27686 var VerticalStroke = /*#__PURE__*/styled_base_browser_esm(Stroke, {
       
 27687   target: "eaw9yqk3",
       
 27688   label: "VerticalStroke"
       
 27689 })( true ? {
       
 27690   name: "r820ty",
       
 27691   styles: "bottom:3px;top:3px;width:2px;"
       
 27692 } : undefined);
       
 27693 
       
 27694 var HorizontalStroke = /*#__PURE__*/styled_base_browser_esm(Stroke, {
       
 27695   target: "eaw9yqk4",
       
 27696   label: "HorizontalStroke"
       
 27697 })( true ? {
       
 27698   name: "1gteeqa",
       
 27699   styles: "height:2px;left:3px;right:3px;"
       
 27700 } : undefined);
       
 27701 
       
 27702 var TopStroke = /*#__PURE__*/styled_base_browser_esm(HorizontalStroke, {
       
 27703   target: "eaw9yqk5",
       
 27704   label: "TopStroke"
       
 27705 })( true ? {
       
 27706   name: "1etxbbi",
       
 27707   styles: "top:0;"
       
 27708 } : undefined);
       
 27709 var RightStroke = /*#__PURE__*/styled_base_browser_esm(VerticalStroke, {
       
 27710   target: "eaw9yqk6",
       
 27711   label: "RightStroke"
       
 27712 })( true ? {
       
 27713   name: "19zs6va",
       
 27714   styles: "right:0;"
       
 27715 } : undefined);
       
 27716 var BottomStroke = /*#__PURE__*/styled_base_browser_esm(HorizontalStroke, {
       
 27717   target: "eaw9yqk7",
       
 27718   label: "BottomStroke"
       
 27719 })( true ? {
       
 27720   name: "lh0t43",
       
 27721   styles: "bottom:0;"
       
 27722 } : undefined);
       
 27723 var LeftStroke = /*#__PURE__*/styled_base_browser_esm(VerticalStroke, {
       
 27724   target: "eaw9yqk8",
       
 27725   label: "LeftStroke"
       
 27726 })( true ? {
       
 27727   name: "260zpl",
       
 27728   styles: "left:0;"
       
 27729 } : undefined);
       
 27730 
       
 27731 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/icon.js
       
 27732 
       
 27733 
       
 27734 
       
 27735 
       
 27736 /**
       
 27737  * Internal dependencies
       
 27738  */
       
 27739 
       
 27740 var BASE_ICON_SIZE = 24;
       
 27741 function BoxControlIcon(_ref) {
       
 27742   var _ref$size = _ref.size,
       
 27743       size = _ref$size === void 0 ? 24 : _ref$size,
       
 27744       _ref$side = _ref.side,
       
 27745       side = _ref$side === void 0 ? 'all' : _ref$side,
       
 27746       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["size", "side"]);
       
 27747 
       
 27748   var top = getSide(side, 'top');
       
 27749   var right = getSide(side, 'right');
       
 27750   var bottom = getSide(side, 'bottom');
       
 27751   var left = getSide(side, 'left'); // Simulates SVG Icon scaling
       
 27752 
       
 27753   var scale = size / BASE_ICON_SIZE;
       
 27754   return Object(external_this_wp_element_["createElement"])(box_control_icon_styles_Root, Object(esm_extends["a" /* default */])({
       
 27755     style: {
       
 27756       transform: "scale(".concat(scale, ")")
       
 27757     }
       
 27758   }, props), Object(external_this_wp_element_["createElement"])(Viewbox, null, Object(external_this_wp_element_["createElement"])(TopStroke, {
       
 27759     isFocused: top
       
 27760   }), Object(external_this_wp_element_["createElement"])(RightStroke, {
       
 27761     isFocused: right
       
 27762   }), Object(external_this_wp_element_["createElement"])(BottomStroke, {
       
 27763     isFocused: bottom
       
 27764   }), Object(external_this_wp_element_["createElement"])(LeftStroke, {
       
 27765     isFocused: left
       
 27766   })));
       
 27767 }
       
 27768 
       
 27769 function getSide(side, value) {
       
 27770   return side === 'all' || side === value;
       
 27771 }
       
 27772 
       
 27773 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/link.js
       
 27774 var library_link = __webpack_require__(180);
       
 27775 
       
 27776 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/link-off.js
       
 27777 var link_off = __webpack_require__(205);
       
 27778 
       
 27779 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/linked-button.js
       
 27780 
       
 27781 
       
 27782 
       
 27783 
       
 27784 /**
       
 27785  * WordPress dependencies
       
 27786  */
       
 27787 
       
 27788 
       
 27789 /**
       
 27790  * Internal dependencies
       
 27791  */
       
 27792 
       
 27793 
       
 27794 
       
 27795 function LinkedButton(_ref) {
       
 27796   var isLinked = _ref.isLinked,
       
 27797       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["isLinked"]);
       
 27798 
       
 27799   var linkedTooltipText = isLinked ? Object(external_this_wp_i18n_["__"])('Unlink Sides') : Object(external_this_wp_i18n_["__"])('Link Sides');
       
 27800   return Object(external_this_wp_element_["createElement"])(build_module_tooltip["a" /* default */], {
       
 27801     text: linkedTooltipText
       
 27802   }, Object(external_this_wp_element_["createElement"])("span", null, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({}, props, {
       
 27803     className: "component-box-control__linked-button",
       
 27804     isPrimary: isLinked,
       
 27805     isSecondary: !isLinked,
       
 27806     isSmall: true,
       
 27807     icon: isLinked ? library_link["a" /* default */] : link_off["a" /* default */],
       
 27808     iconSize: 16
       
 27809   }))));
       
 27810 }
       
 27811 
       
 27812 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/styles/box-control-visualizer-styles.js
       
 27813 
       
 27814 
       
 27815 function box_control_visualizer_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 27816 
       
 27817 /**
       
 27818  * External dependencies
       
 27819  */
       
 27820 
       
 27821 
       
 27822 /**
       
 27823  * Internal dependencies
       
 27824  */
       
 27825 
       
 27826 
       
 27827 var box_control_visualizer_styles_ref =  true ? {
       
 27828   name: "tbck19",
       
 27829   styles: "bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;z-index:1;"
       
 27830 } : undefined;
       
 27831 
       
 27832 var containerPositionStyles = function containerPositionStyles(_ref2) {
       
 27833   var isPositionAbsolute = _ref2.isPositionAbsolute;
       
 27834   if (!isPositionAbsolute) return '';
       
 27835   return box_control_visualizer_styles_ref;
       
 27836 };
       
 27837 
       
 27838 var box_control_visualizer_styles_Container = styled_base_browser_esm("div", {
       
 27839   target: "e1df9b4q0",
       
 27840   label: "Container"
       
 27841 })("box-sizing:border-box;position:relative;", containerPositionStyles, ";" + ( true ? "" : undefined));
       
 27842 var Side = styled_base_browser_esm("div", {
       
 27843   target: "e1df9b4q1",
       
 27844   label: "Side"
       
 27845 })("box-sizing:border-box;background:", colors_color('blue.wordpress.700'), ";background:", colors_color('ui.theme'), ";filter:brightness( 1 );opacity:0;position:absolute;pointer-events:none;transition:opacity 120ms linear;z-index:1;", function (_ref3) {
       
 27846   var isActive = _ref3.isActive;
       
 27847   return isActive && "\n\t\topacity: 0.3;\n\t";
       
 27848 },  true ? "" : undefined);
       
 27849 var TopView = /*#__PURE__*/styled_base_browser_esm(Side, {
       
 27850   target: "e1df9b4q2",
       
 27851   label: "TopView"
       
 27852 })( true ? {
       
 27853   name: "1pb21am",
       
 27854   styles: "top:0;left:0;right:0;"
       
 27855 } : undefined);
       
 27856 var RightView = /*#__PURE__*/styled_base_browser_esm(Side, {
       
 27857   target: "e1df9b4q3",
       
 27858   label: "RightView"
       
 27859 })("top:0;bottom:0;", rtl({
       
 27860   right: 0
       
 27861 }), ";" + ( true ? "" : undefined));
       
 27862 var BottomView = /*#__PURE__*/styled_base_browser_esm(Side, {
       
 27863   target: "e1df9b4q4",
       
 27864   label: "BottomView"
       
 27865 })( true ? {
       
 27866   name: "w87m56",
       
 27867   styles: "bottom:0;left:0;right:0;"
       
 27868 } : undefined);
       
 27869 var LeftView = /*#__PURE__*/styled_base_browser_esm(Side, {
       
 27870   target: "e1df9b4q5",
       
 27871   label: "LeftView"
       
 27872 })("top:0;bottom:0;", rtl({
       
 27873   left: 0
       
 27874 }), ";" + ( true ? "" : undefined));
       
 27875 
       
 27876 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/visualizer.js
       
 27877 
       
 27878 
       
 27879 
       
 27880 
       
 27881 
       
 27882 /**
       
 27883  * WordPress dependencies
       
 27884  */
       
 27885 
       
 27886 /**
       
 27887  * Internal dependencies
       
 27888  */
       
 27889 
       
 27890 
       
 27891 
       
 27892 function BoxControlVisualizer(_ref) {
       
 27893   var children = _ref.children,
       
 27894       _ref$showValues = _ref.showValues,
       
 27895       showValues = _ref$showValues === void 0 ? DEFAULT_VISUALIZER_VALUES : _ref$showValues,
       
 27896       _ref$values = _ref.values,
       
 27897       valuesProp = _ref$values === void 0 ? DEFAULT_VALUES : _ref$values,
       
 27898       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "showValues", "values"]);
       
 27899 
       
 27900   var isPositionAbsolute = !children;
       
 27901   return Object(external_this_wp_element_["createElement"])(box_control_visualizer_styles_Container, Object(esm_extends["a" /* default */])({}, props, {
       
 27902     isPositionAbsolute: isPositionAbsolute,
       
 27903     "aria-hidden": "true"
       
 27904   }), Object(external_this_wp_element_["createElement"])(Sides, {
       
 27905     showValues: showValues,
       
 27906     values: valuesProp
       
 27907   }), children);
       
 27908 }
       
 27909 
       
 27910 function Sides(_ref2) {
       
 27911   var _ref2$showValues = _ref2.showValues,
       
 27912       showValues = _ref2$showValues === void 0 ? DEFAULT_VISUALIZER_VALUES : _ref2$showValues,
       
 27913       values = _ref2.values;
       
 27914   var top = values.top,
       
 27915       right = values.right,
       
 27916       bottom = values.bottom,
       
 27917       left = values.left;
       
 27918   return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(Top, {
       
 27919     isVisible: showValues.top,
       
 27920     value: top
       
 27921   }), Object(external_this_wp_element_["createElement"])(Right, {
       
 27922     isVisible: showValues.right,
       
 27923     value: right
       
 27924   }), Object(external_this_wp_element_["createElement"])(Bottom, {
       
 27925     isVisible: showValues.bottom,
       
 27926     value: bottom
       
 27927   }), Object(external_this_wp_element_["createElement"])(Left, {
       
 27928     isVisible: showValues.left,
       
 27929     value: left
       
 27930   }));
       
 27931 }
       
 27932 
       
 27933 function Top(_ref3) {
       
 27934   var _ref3$isVisible = _ref3.isVisible,
       
 27935       isVisible = _ref3$isVisible === void 0 ? false : _ref3$isVisible,
       
 27936       value = _ref3.value;
       
 27937   var height = value;
       
 27938   var animationProps = useSideAnimation(height);
       
 27939   var isActive = animationProps.isActive || isVisible;
       
 27940   return Object(external_this_wp_element_["createElement"])(TopView, {
       
 27941     isActive: isActive,
       
 27942     style: {
       
 27943       height: height
       
 27944     }
       
 27945   });
       
 27946 }
       
 27947 
       
 27948 function Right(_ref4) {
       
 27949   var _ref4$isVisible = _ref4.isVisible,
       
 27950       isVisible = _ref4$isVisible === void 0 ? false : _ref4$isVisible,
       
 27951       value = _ref4.value;
       
 27952   var width = value;
       
 27953   var animationProps = useSideAnimation(width);
       
 27954   var isActive = animationProps.isActive || isVisible;
       
 27955   return Object(external_this_wp_element_["createElement"])(RightView, {
       
 27956     isActive: isActive,
       
 27957     style: {
       
 27958       width: width
       
 27959     }
       
 27960   });
       
 27961 }
       
 27962 
       
 27963 function Bottom(_ref5) {
       
 27964   var _ref5$isVisible = _ref5.isVisible,
       
 27965       isVisible = _ref5$isVisible === void 0 ? false : _ref5$isVisible,
       
 27966       value = _ref5.value;
       
 27967   var height = value;
       
 27968   var animationProps = useSideAnimation(height);
       
 27969   var isActive = animationProps.isActive || isVisible;
       
 27970   return Object(external_this_wp_element_["createElement"])(BottomView, {
       
 27971     isActive: isActive,
       
 27972     style: {
       
 27973       height: height
       
 27974     }
       
 27975   });
       
 27976 }
       
 27977 
       
 27978 function Left(_ref6) {
       
 27979   var _ref6$isVisible = _ref6.isVisible,
       
 27980       isVisible = _ref6$isVisible === void 0 ? false : _ref6$isVisible,
       
 27981       value = _ref6.value;
       
 27982   var width = value;
       
 27983   var animationProps = useSideAnimation(width);
       
 27984   var isActive = animationProps.isActive || isVisible;
       
 27985   return Object(external_this_wp_element_["createElement"])(LeftView, {
       
 27986     isActive: isActive,
       
 27987     style: {
       
 27988       width: width
       
 27989     }
       
 27990   });
       
 27991 }
       
 27992 /**
       
 27993  * Custom hook that renders the "flash" animation whenever the value changes.
       
 27994  *
       
 27995  * @param {string} value Value of (box) side.
       
 27996  */
       
 27997 
       
 27998 
       
 27999 function useSideAnimation(value) {
       
 28000   var _useState = Object(external_this_wp_element_["useState"])(false),
       
 28001       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 28002       isActive = _useState2[0],
       
 28003       setIsActive = _useState2[1];
       
 28004 
       
 28005   var valueRef = Object(external_this_wp_element_["useRef"])(value);
       
 28006   var timeoutRef = Object(external_this_wp_element_["useRef"])();
       
 28007 
       
 28008   var clearTimer = function clearTimer() {
       
 28009     if (timeoutRef.current) {
       
 28010       window.clearTimeout(timeoutRef.current);
       
 28011     }
       
 28012   };
       
 28013 
       
 28014   Object(external_this_wp_element_["useEffect"])(function () {
       
 28015     if (value !== valueRef.current) {
       
 28016       setIsActive(true);
       
 28017       valueRef.current = value;
       
 28018       clearTimer();
       
 28019       timeoutRef.current = setTimeout(function () {
       
 28020         setIsActive(false);
       
 28021       }, 400);
       
 28022     }
       
 28023 
       
 28024     return function () {
       
 28025       return clearTimer();
       
 28026     };
       
 28027   }, [value]);
       
 28028   return {
       
 28029     isActive: isActive
       
 28030   };
       
 28031 }
       
 28032 
       
 28033 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/box-control/index.js
       
 28034 
       
 28035 
       
 28036 
       
 28037 
       
 28038 function box_control_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 28039 
       
 28040 function box_control_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { box_control_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { box_control_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 28041 
       
 28042 /**
       
 28043  * External dependencies
       
 28044  */
       
 28045 
       
 28046 /**
       
 28047  * WordPress dependencies
       
 28048  */
       
 28049 
       
 28050 
       
 28051 
       
 28052 
       
 28053 /**
       
 28054  * Internal dependencies
       
 28055  */
       
 28056 
       
 28057 
       
 28058 
       
 28059 
       
 28060 
       
 28061 
       
 28062 
       
 28063 
       
 28064 
       
 28065 
       
 28066 
       
 28067 
       
 28068 var defaultInputProps = {
       
 28069   min: 0
       
 28070 };
       
 28071 
       
 28072 function box_control_useUniqueId(idProp) {
       
 28073   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(BoxControl, 'inspector-box-control');
       
 28074   return idProp || instanceId;
       
 28075 }
       
 28076 
       
 28077 function BoxControl(_ref) {
       
 28078   var idProp = _ref.id,
       
 28079       _ref$inputProps = _ref.inputProps,
       
 28080       inputProps = _ref$inputProps === void 0 ? defaultInputProps : _ref$inputProps,
       
 28081       _ref$onChange = _ref.onChange,
       
 28082       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 28083       _ref$onChangeShowVisu = _ref.onChangeShowVisualizer,
       
 28084       onChangeShowVisualizer = _ref$onChangeShowVisu === void 0 ? external_this_lodash_["noop"] : _ref$onChangeShowVisu,
       
 28085       _ref$label = _ref.label,
       
 28086       label = _ref$label === void 0 ? Object(external_this_wp_i18n_["__"])('Box Control') : _ref$label,
       
 28087       valuesProp = _ref.values,
       
 28088       units = _ref.units;
       
 28089 
       
 28090   var _useControlledState = use_controlled_state(valuesProp),
       
 28091       _useControlledState2 = Object(slicedToArray["a" /* default */])(_useControlledState, 2),
       
 28092       values = _useControlledState2[0],
       
 28093       setValues = _useControlledState2[1];
       
 28094 
       
 28095   var inputValues = values || DEFAULT_VALUES;
       
 28096   var hasInitialValue = isValuesDefined(valuesProp);
       
 28097 
       
 28098   var _useState = Object(external_this_wp_element_["useState"])(hasInitialValue),
       
 28099       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 28100       isDirty = _useState2[0],
       
 28101       setIsDirty = _useState2[1];
       
 28102 
       
 28103   var _useState3 = Object(external_this_wp_element_["useState"])(!hasInitialValue || !isValuesMixed(inputValues)),
       
 28104       _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
       
 28105       isLinked = _useState4[0],
       
 28106       setIsLinked = _useState4[1];
       
 28107 
       
 28108   var _useState5 = Object(external_this_wp_element_["useState"])(isLinked ? 'all' : 'top'),
       
 28109       _useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),
       
 28110       side = _useState6[0],
       
 28111       setSide = _useState6[1];
       
 28112 
       
 28113   var id = box_control_useUniqueId(idProp);
       
 28114   var headingId = "".concat(id, "-heading");
       
 28115 
       
 28116   var toggleLinked = function toggleLinked() {
       
 28117     setIsLinked(!isLinked);
       
 28118     setSide(!isLinked ? 'all' : 'top');
       
 28119   };
       
 28120 
       
 28121   var handleOnFocus = function handleOnFocus(event, _ref2) {
       
 28122     var nextSide = _ref2.side;
       
 28123     setSide(nextSide);
       
 28124   };
       
 28125 
       
 28126   var handleOnChange = function handleOnChange(nextValues) {
       
 28127     onChange(nextValues);
       
 28128     setValues(nextValues);
       
 28129     setIsDirty(true);
       
 28130   };
       
 28131 
       
 28132   var handleOnHoverOn = function handleOnHoverOn() {
       
 28133     var next = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 28134     onChangeShowVisualizer(box_control_objectSpread({}, DEFAULT_VISUALIZER_VALUES, {}, next));
       
 28135   };
       
 28136 
       
 28137   var handleOnHoverOff = function handleOnHoverOff() {
       
 28138     var next = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
       
 28139     onChangeShowVisualizer(box_control_objectSpread({}, DEFAULT_VISUALIZER_VALUES, {}, next));
       
 28140   };
       
 28141 
       
 28142   var handleOnReset = function handleOnReset() {
       
 28143     var initialValues = DEFAULT_VALUES;
       
 28144     onChange(initialValues);
       
 28145     setValues(initialValues);
       
 28146     setIsDirty(false);
       
 28147   };
       
 28148 
       
 28149   var inputControlProps = box_control_objectSpread({}, inputProps, {
       
 28150     onChange: handleOnChange,
       
 28151     onFocus: handleOnFocus,
       
 28152     onHoverOn: handleOnHoverOn,
       
 28153     onHoverOff: handleOnHoverOff,
       
 28154     isLinked: isLinked,
       
 28155     units: units,
       
 28156     values: inputValues
       
 28157   });
       
 28158 
       
 28159   return Object(external_this_wp_element_["createElement"])(box_control_styles_Root, {
       
 28160     id: id,
       
 28161     role: "region",
       
 28162     "aria-labelledby": headingId
       
 28163   }, Object(external_this_wp_element_["createElement"])(Header, {
       
 28164     className: "component-box-control__header"
       
 28165   }, Object(external_this_wp_element_["createElement"])(flex_item, null, Object(external_this_wp_element_["createElement"])(build_module_text, {
       
 28166     id: headingId,
       
 28167     className: "component-box-control__label"
       
 28168   }, label)), Object(external_this_wp_element_["createElement"])(flex_item, null, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 28169     className: "component-box-control__reset-button",
       
 28170     isSecondary: true,
       
 28171     isSmall: true,
       
 28172     onClick: handleOnReset,
       
 28173     disabled: !isDirty
       
 28174   }, Object(external_this_wp_i18n_["__"])('Reset')))), Object(external_this_wp_element_["createElement"])(HeaderControlWrapper, {
       
 28175     className: "component-box-control__header-control-wrapper"
       
 28176   }, Object(external_this_wp_element_["createElement"])(flex_item, null, Object(external_this_wp_element_["createElement"])(BoxControlIcon, {
       
 28177     side: side
       
 28178   })), isLinked && Object(external_this_wp_element_["createElement"])(block, null, Object(external_this_wp_element_["createElement"])(AllInputControl, inputControlProps)), Object(external_this_wp_element_["createElement"])(flex_item, null, Object(external_this_wp_element_["createElement"])(LinkedButton, {
       
 28179     onClick: toggleLinked,
       
 28180     isLinked: isLinked
       
 28181   }))), !isLinked && Object(external_this_wp_element_["createElement"])(BoxInputControls, inputControlProps));
       
 28182 }
       
 28183 BoxControl.__Visualizer = BoxControlVisualizer;
       
 28184 
       
 28185 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/button-group/index.js
       
 28186 
       
 28187 
       
 28188 
       
 28189 
       
 28190 /**
       
 28191  * External dependencies
       
 28192  */
       
 28193 
       
 28194 /**
       
 28195  * WordPress dependencies
       
 28196  */
       
 28197 
       
 28198 
       
 28199 
       
 28200 function ButtonGroup(_ref, ref) {
       
 28201   var className = _ref.className,
       
 28202       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className"]);
       
 28203 
 28087   var classes = classnames_default()('components-button-group', className);
 28204   var classes = classnames_default()('components-button-group', className);
 28088   return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, props, {
 28205   return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({
       
 28206     ref: ref,
       
 28207     role: "group",
       
 28208     className: classes
       
 28209   }, props));
       
 28210 }
       
 28211 
       
 28212 /* harmony default export */ var button_group = (Object(external_this_wp_element_["forwardRef"])(ButtonGroup));
       
 28213 
       
 28214 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/context.js
       
 28215 /**
       
 28216  * WordPress dependencies
       
 28217  */
       
 28218 
       
 28219 var CardContext = Object(external_this_wp_element_["createContext"])({});
       
 28220 var context_useCardContext = function useCardContext() {
       
 28221   return Object(external_this_wp_element_["useContext"])(CardContext);
       
 28222 };
       
 28223 
       
 28224 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/utils/space.js
       
 28225 var SPACE_GRID_BASE = 8;
       
 28226 /**
       
 28227  * Creates a spacing CSS value (px) based on grid system values.
       
 28228  *
       
 28229  * @param {number} value Multiplier against the grid base value (8)
       
 28230  * @return {string} The spacing value (px).
       
 28231  */
       
 28232 
       
 28233 function space() {
       
 28234   var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
       
 28235   if (isNaN(value)) return "".concat(SPACE_GRID_BASE, "px");
       
 28236   return "".concat(SPACE_GRID_BASE * value, "px");
       
 28237 }
       
 28238 
       
 28239 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/styles/card-styles.js
       
 28240 
       
 28241 
       
 28242 /**
       
 28243  * WordPress dependencies
       
 28244  */
       
 28245 
       
 28246 /**
       
 28247  * Internal dependencies
       
 28248  */
       
 28249 
       
 28250 
       
 28251 
       
 28252 var styleProps = {
       
 28253   borderColor: colors_color('lightGray.500'),
       
 28254   borderRadius: '3px',
       
 28255   backgroundShady: colors_color('lightGray.200')
       
 28256 };
       
 28257 var card_styles_borderColor = styleProps.borderColor,
       
 28258     borderRadius = styleProps.borderRadius,
       
 28259     backgroundShady = styleProps.backgroundShady;
       
 28260 var CardUI = styled_base_browser_esm("div", {
       
 28261   target: "e1q7k77g0",
       
 28262   label: "CardUI"
       
 28263 })("background:", colors_color('white'), ";box-sizing:border-box;border-radius:", borderRadius, ";border:1px solid ", card_styles_borderColor, ";", handleBorderless, ";&.is-elevated{box-shadow:0px 1px 3px 0px rgba( 0,0,0,0.2 ),0px 1px 1px 0px rgba( 0,0,0,0.14 ),0px 2px 1px -1px rgba( 0,0,0,0.12 );}" + ( true ? "" : undefined));
       
 28264 var HeaderUI = /*#__PURE__*/styled_base_browser_esm(flex, {
       
 28265   target: "e1q7k77g1",
       
 28266   label: "HeaderUI"
       
 28267 })("border-bottom:1px solid ", card_styles_borderColor, ";border-top-left-radius:", borderRadius, ";border-top-right-radius:", borderRadius, ";box-sizing:border-box;&:last-child{border-bottom:none;}", headerFooterSizes, ";", handleBorderless, ";", handleShady, ";" + ( true ? "" : undefined));
       
 28268 var MediaUI = styled_base_browser_esm("div", {
       
 28269   target: "e1q7k77g2",
       
 28270   label: "MediaUI"
       
 28271 })("box-sizing:border-box;overflow:hidden;& > img,& > iframe{display:block;height:auto;max-width:100%;width:100%;}&:first-of-type{border-top-left-radius:", borderRadius, ";border-top-right-radius:", borderRadius, ";}&:last-of-type{border-bottom-left-radius:", borderRadius, ";border-bottom-right-radius:", borderRadius, ";}" + ( true ? "" : undefined));
       
 28272 var BodyUI = styled_base_browser_esm("div", {
       
 28273   target: "e1q7k77g3",
       
 28274   label: "BodyUI"
       
 28275 })("box-sizing:border-box;", bodySize, ";", handleShady, ";" + ( true ? "" : undefined));
       
 28276 var FooterUI = /*#__PURE__*/styled_base_browser_esm(flex, {
       
 28277   target: "e1q7k77g4",
       
 28278   label: "FooterUI"
       
 28279 })("border-top:1px solid ", card_styles_borderColor, ";border-bottom-left-radius:", borderRadius, ";border-bottom-right-radius:", borderRadius, ";box-sizing:border-box;&:first-of-type{border-top:none;}", headerFooterSizes, ";", handleBorderless, ";", handleShady, ";" + ( true ? "" : undefined));
       
 28280 var DividerUI = /*#__PURE__*/styled_base_browser_esm(external_this_wp_primitives_["HorizontalRule"], {
       
 28281   target: "e1q7k77g5",
       
 28282   label: "DividerUI"
       
 28283 })("all:unset;border-top:1px solid ", card_styles_borderColor, ";box-sizing:border-box;display:block;height:0;width:100%;" + ( true ? "" : undefined));
       
 28284 function bodySize() {
       
 28285   return "\n\t\t&.is-size {\n\t\t\t&-large {\n\t\t\t\tpadding: ".concat(space(3), " ").concat(space(4), ";\n\t\t\t}\n\t\t\t&-medium {\n\t\t\t\tpadding: ").concat(space(2), " ").concat(space(3), ";\n\t\t\t}\n\t\t\t&-small {\n\t\t\t\tpadding: ").concat(space(2), ";\n\t\t\t}\n\t\t\t&-extraSmall {\n\t\t\t\tpadding: ").concat(space(1), ";\n\t\t\t}\n\t\t}\n\t");
       
 28286 }
       
 28287 function headerFooterSizes() {
       
 28288   return "\n\t\t&.is-size {\n\t\t\t&-large {\n\t\t\t\tpadding: ".concat(space(3), " ").concat(space(4), ";\n\t\t\t}\n\t\t\t&-medium {\n\t\t\t\tpadding: ").concat(space(2), " ").concat(space(3), ";\n\t\t\t}\n\t\t\t&-small {\n\t\t\t\tpadding: ").concat(space(2), ";\n\t\t\t}\n\t\t\t&-extraSmall {\n\t\t\t\tpadding: ").concat(space(1), ";\n\t\t\t}\n\t\t}\n\t");
       
 28289 }
       
 28290 function handleBorderless() {
       
 28291   return "\n\t\t&.is-borderless {\n\t\t\tborder: none;\n\t\t}\n\t";
       
 28292 }
       
 28293 function handleShady() {
       
 28294   return "\n\t\t&.is-shady {\n\t\t\tbackground: ".concat(backgroundShady, ";\n\t\t}\n\t");
       
 28295 }
       
 28296 
       
 28297 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/index.js
       
 28298 
       
 28299 
       
 28300 
       
 28301 
       
 28302 /**
       
 28303  * External dependencies
       
 28304  */
       
 28305 
       
 28306 /**
       
 28307  * Internal dependencies
       
 28308  */
       
 28309 
       
 28310 
       
 28311 
       
 28312 var card_defaultProps = {
       
 28313   isBorderless: false,
       
 28314   isElevated: false,
       
 28315   size: 'medium'
       
 28316 };
       
 28317 function Card(props) {
       
 28318   var className = props.className,
       
 28319       isBorderless = props.isBorderless,
       
 28320       isElevated = props.isElevated,
       
 28321       size = props.size,
       
 28322       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["className", "isBorderless", "isElevated", "size"]);
       
 28323 
       
 28324   var Provider = CardContext.Provider;
       
 28325   var contextProps = {
       
 28326     isBorderless: isBorderless,
       
 28327     isElevated: isElevated,
       
 28328     size: size
       
 28329   };
       
 28330   var classes = classnames_default()('components-card', isBorderless && 'is-borderless', isElevated && 'is-elevated', size && "is-size-".concat(size), className);
       
 28331   return Object(external_this_wp_element_["createElement"])(Provider, {
       
 28332     value: contextProps
       
 28333   }, Object(external_this_wp_element_["createElement"])(CardUI, Object(esm_extends["a" /* default */])({}, additionalProps, {
       
 28334     className: classes
       
 28335   })));
       
 28336 }
       
 28337 Card.defaultProps = card_defaultProps;
       
 28338 /* harmony default export */ var card = (Card);
       
 28339 
       
 28340 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/body.js
       
 28341 
       
 28342 
       
 28343 
       
 28344 
       
 28345 
       
 28346 function body_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 28347 
       
 28348 function body_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { body_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { body_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 28349 
       
 28350 /**
       
 28351  * External dependencies
       
 28352  */
       
 28353 
       
 28354 /**
       
 28355  * Internal dependencies
       
 28356  */
       
 28357 
       
 28358 
       
 28359 
       
 28360 var body_defaultProps = {
       
 28361   isShady: false,
       
 28362   size: 'medium'
       
 28363 };
       
 28364 function CardBody(props) {
       
 28365   var className = props.className,
       
 28366       isShady = props.isShady,
       
 28367       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["className", "isShady"]);
       
 28368 
       
 28369   var mergedProps = body_objectSpread({}, body_defaultProps, {}, context_useCardContext(), {}, props);
       
 28370 
       
 28371   var size = mergedProps.size;
       
 28372   var classes = classnames_default()('components-card__body', isShady && 'is-shady', size && "is-size-".concat(size), className);
       
 28373   return Object(external_this_wp_element_["createElement"])(BodyUI, Object(esm_extends["a" /* default */])({}, additionalProps, {
       
 28374     className: classes
       
 28375   }));
       
 28376 }
       
 28377 /* harmony default export */ var card_body = (CardBody);
       
 28378 
       
 28379 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/divider.js
       
 28380 
       
 28381 
       
 28382 
       
 28383 
       
 28384 /**
       
 28385  * External dependencies
       
 28386  */
       
 28387 
       
 28388 /**
       
 28389  * Internal dependencies
       
 28390  */
       
 28391 
       
 28392 
       
 28393 function CardDivider(props) {
       
 28394   var className = props.className,
       
 28395       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["className"]);
       
 28396 
       
 28397   var classes = classnames_default()('components-card__divider', className);
       
 28398   return Object(external_this_wp_element_["createElement"])(DividerUI, Object(esm_extends["a" /* default */])({}, additionalProps, {
       
 28399     children: null,
 28089     className: classes,
 28400     className: classes,
 28090     role: "group"
 28401     role: "separator"
 28091   }));
 28402   }));
 28092 }
 28403 }
 28093 
 28404 /* harmony default export */ var divider = (CardDivider);
 28094 /* harmony default export */ var button_group = (ButtonGroup);
 28405 
       
 28406 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/footer.js
       
 28407 
       
 28408 
       
 28409 
       
 28410 
       
 28411 
       
 28412 function footer_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 28413 
       
 28414 function footer_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { footer_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { footer_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 28415 
       
 28416 /**
       
 28417  * External dependencies
       
 28418  */
       
 28419 
       
 28420 /**
       
 28421  * Internal dependencies
       
 28422  */
       
 28423 
       
 28424 
       
 28425 
       
 28426 var footer_defaultProps = {
       
 28427   isBorderless: false,
       
 28428   isShady: false,
       
 28429   size: 'medium'
       
 28430 };
       
 28431 function CardFooter(props) {
       
 28432   var className = props.className,
       
 28433       isShady = props.isShady,
       
 28434       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["className", "isShady"]);
       
 28435 
       
 28436   var mergedProps = footer_objectSpread({}, footer_defaultProps, {}, context_useCardContext(), {}, props);
       
 28437 
       
 28438   var isBorderless = mergedProps.isBorderless,
       
 28439       size = mergedProps.size;
       
 28440   var classes = classnames_default()('components-card__footer', isBorderless && 'is-borderless', isShady && 'is-shady', size && "is-size-".concat(size), className);
       
 28441   return Object(external_this_wp_element_["createElement"])(FooterUI, Object(esm_extends["a" /* default */])({}, additionalProps, {
       
 28442     className: classes
       
 28443   }));
       
 28444 }
       
 28445 /* harmony default export */ var footer = (CardFooter);
       
 28446 
       
 28447 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/header.js
       
 28448 
       
 28449 
       
 28450 
       
 28451 
       
 28452 
       
 28453 function header_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 28454 
       
 28455 function header_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { header_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { header_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 28456 
       
 28457 /**
       
 28458  * External dependencies
       
 28459  */
       
 28460 
       
 28461 /**
       
 28462  * Internal dependencies
       
 28463  */
       
 28464 
       
 28465 
       
 28466 
       
 28467 var header_defaultProps = {
       
 28468   isBorderless: false,
       
 28469   isShady: false,
       
 28470   size: 'medium'
       
 28471 };
       
 28472 function CardHeader(props) {
       
 28473   var className = props.className,
       
 28474       isShady = props.isShady,
       
 28475       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["className", "isShady"]);
       
 28476 
       
 28477   var mergedProps = header_objectSpread({}, header_defaultProps, {}, context_useCardContext(), {}, props);
       
 28478 
       
 28479   var isBorderless = mergedProps.isBorderless,
       
 28480       size = mergedProps.size;
       
 28481   var classes = classnames_default()('components-card__header', isBorderless && 'is-borderless', isShady && 'is-shady', size && "is-size-".concat(size), className);
       
 28482   return Object(external_this_wp_element_["createElement"])(HeaderUI, Object(esm_extends["a" /* default */])({}, additionalProps, {
       
 28483     className: classes
       
 28484   }));
       
 28485 }
       
 28486 /* harmony default export */ var card_header = (CardHeader);
       
 28487 
       
 28488 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/card/media.js
       
 28489 
       
 28490 
       
 28491 
       
 28492 
       
 28493 /**
       
 28494  * External dependencies
       
 28495  */
       
 28496 
       
 28497 /**
       
 28498  * Internal dependencies
       
 28499  */
       
 28500 
       
 28501 
       
 28502 function CardMedia(props) {
       
 28503   var className = props.className,
       
 28504       additionalProps = Object(objectWithoutProperties["a" /* default */])(props, ["className"]);
       
 28505 
       
 28506   var classes = classnames_default()('components-card__media', className);
       
 28507   return Object(external_this_wp_element_["createElement"])(MediaUI, Object(esm_extends["a" /* default */])({}, additionalProps, {
       
 28508     className: classes
       
 28509   }));
       
 28510 }
       
 28511 /* harmony default export */ var media = (CardMedia);
       
 28512 
       
 28513 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/icon/index.js
       
 28514 var build_module_icon = __webpack_require__(137);
       
 28515 
       
 28516 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/check.js
       
 28517 var check = __webpack_require__(155);
 28095 
 28518 
 28096 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/checkbox-control/index.js
 28519 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/checkbox-control/index.js
 28097 
 28520 
 28098 
 28521 
 28099 
 28522 
 28100 
 28523 
 28101 /**
 28524 /**
 28102  * WordPress dependencies
 28525  * WordPress dependencies
 28103  */
 28526  */
 28104 
 28527 
       
 28528 
 28105 /**
 28529 /**
 28106  * Internal dependencies
 28530  * Internal dependencies
 28107  */
 28531  */
 28108 
       
 28109 
 28532 
 28110 
 28533 
 28111 function CheckboxControl(_ref) {
 28534 function CheckboxControl(_ref) {
 28112   var label = _ref.label,
 28535   var label = _ref.label,
 28113       className = _ref.className,
 28536       className = _ref.className,
 28114       heading = _ref.heading,
 28537       heading = _ref.heading,
 28115       checked = _ref.checked,
 28538       checked = _ref.checked,
 28116       help = _ref.help,
 28539       help = _ref.help,
 28117       instanceId = _ref.instanceId,
       
 28118       onChange = _ref.onChange,
 28540       onChange = _ref.onChange,
 28119       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "className", "heading", "checked", "help", "instanceId", "onChange"]);
 28541       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "className", "heading", "checked", "help", "onChange"]);
 28120 
 28542 
       
 28543   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(CheckboxControl);
 28121   var id = "inspector-checkbox-control-".concat(instanceId);
 28544   var id = "inspector-checkbox-control-".concat(instanceId);
 28122 
 28545 
 28123   var onChangeValue = function onChangeValue(event) {
 28546   var onChangeValue = function onChangeValue(event) {
 28124     return onChange(event.target.checked);
 28547     return onChange(event.target.checked);
 28125   };
 28548   };
 28127   return Object(external_this_wp_element_["createElement"])(base_control, {
 28550   return Object(external_this_wp_element_["createElement"])(base_control, {
 28128     label: heading,
 28551     label: heading,
 28129     id: id,
 28552     id: id,
 28130     help: help,
 28553     help: help,
 28131     className: className
 28554     className: className
       
 28555   }, Object(external_this_wp_element_["createElement"])("span", {
       
 28556     className: "components-checkbox-control__input-container"
 28132   }, Object(external_this_wp_element_["createElement"])("input", Object(esm_extends["a" /* default */])({
 28557   }, Object(external_this_wp_element_["createElement"])("input", Object(esm_extends["a" /* default */])({
 28133     id: id,
 28558     id: id,
 28134     className: "components-checkbox-control__input",
 28559     className: "components-checkbox-control__input",
 28135     type: "checkbox",
 28560     type: "checkbox",
 28136     value: "1",
 28561     value: "1",
 28137     onChange: onChangeValue,
 28562     onChange: onChangeValue,
 28138     checked: checked,
 28563     checked: checked,
 28139     "aria-describedby": !!help ? id + '__help' : undefined
 28564     "aria-describedby": !!help ? id + '__help' : undefined
 28140   }, props)), Object(external_this_wp_element_["createElement"])("label", {
 28565   }, props)), checked ? Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
       
 28566     icon: check["a" /* default */],
       
 28567     className: "components-checkbox-control__checked",
       
 28568     role: "presentation"
       
 28569   }) : null), Object(external_this_wp_element_["createElement"])("label", {
 28141     className: "components-checkbox-control__label",
 28570     className: "components-checkbox-control__label",
 28142     htmlFor: id
 28571     htmlFor: id
 28143   }, label));
 28572   }, label));
 28144 }
 28573 }
 28145 
 28574 
 28146 /* harmony default export */ var checkbox_control = (Object(external_this_wp_compose_["withInstanceId"])(CheckboxControl));
       
 28147 
       
 28148 // EXTERNAL MODULE: ./node_modules/clipboard/dist/clipboard.js
       
 28149 var clipboard = __webpack_require__(221);
       
 28150 var clipboard_default = /*#__PURE__*/__webpack_require__.n(clipboard);
       
 28151 
       
 28152 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/clipboard-button/index.js
 28575 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/clipboard-button/index.js
 28153 
 28576 
 28154 
 28577 
 28155 
 28578 
 28156 
 28579 
 28157 
       
 28158 
       
 28159 
       
 28160 
       
 28161 
       
 28162 
       
 28163 /**
 28580 /**
 28164  * External dependencies
 28581  * External dependencies
 28165  */
 28582  */
 28166 
 28583 
 28167 
       
 28168 /**
 28584 /**
 28169  * WordPress dependencies
 28585  * WordPress dependencies
 28170  */
 28586  */
 28171 
 28587 
 28172 
 28588 
       
 28589 
 28173 /**
 28590 /**
 28174  * Internal dependencies
 28591  * Internal dependencies
 28175  */
 28592  */
 28176 
 28593 
 28177 
 28594 
 28178 
 28595 function ClipboardButton(_ref) {
 28179 
 28596   var className = _ref.className,
 28180 var clipboard_button_ClipboardButton =
 28597       children = _ref.children,
 28181 /*#__PURE__*/
 28598       onCopy = _ref.onCopy,
 28182 function (_Component) {
 28599       onFinishCopy = _ref.onFinishCopy,
 28183   Object(inherits["a" /* default */])(ClipboardButton, _Component);
 28600       text = _ref.text,
 28184 
 28601       buttonProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "children", "onCopy", "onFinishCopy", "text"]);
 28185   function ClipboardButton() {
 28602 
 28186     var _this;
 28603   var ref = Object(external_this_wp_element_["useRef"])();
 28187 
 28604   var hasCopied = Object(external_this_wp_compose_["useCopyOnClick"])(ref, text);
 28188     Object(classCallCheck["a" /* default */])(this, ClipboardButton);
 28605   var lastHasCopied = Object(external_this_wp_element_["useRef"])(hasCopied);
 28189 
 28606   Object(external_this_wp_element_["useEffect"])(function () {
 28190     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ClipboardButton).apply(this, arguments));
 28607     if (lastHasCopied.current === hasCopied) {
 28191     _this.bindContainer = _this.bindContainer.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 28608       return;
 28192     _this.onCopy = _this.onCopy.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 28609     }
 28193     _this.getText = _this.getText.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 28610 
 28194     return _this;
 28611     if (hasCopied) {
 28195   }
 28612       onCopy();
 28196 
 28613     } else if (onFinishCopy) {
 28197   Object(createClass["a" /* default */])(ClipboardButton, [{
 28614       onFinishCopy();
 28198     key: "componentDidMount",
 28615     }
 28199     value: function componentDidMount() {
 28616 
 28200       var container = this.container,
 28617     lastHasCopied.current = hasCopied;
 28201           getText = this.getText,
 28618   }, [onCopy, onFinishCopy, hasCopied]);
 28202           onCopy = this.onCopy;
 28619   var classes = classnames_default()('components-clipboard-button', className); // Workaround for inconsistent behavior in Safari, where <textarea> is not
 28203       var button = container.firstChild;
 28620   // the document.activeElement at the moment when the copy event fires.
 28204       this.clipboard = new clipboard_default.a(button, {
 28621   // This causes documentHasSelection() in the copy-handler component to
 28205         text: getText,
 28622   // mistakenly override the ClipboardButton, and copy a serialized string
 28206         container: container
 28623   // of the current block instead.
 28207       });
 28624 
 28208       this.clipboard.on('success', onCopy);
 28625   var focusOnCopyEventTarget = function focusOnCopyEventTarget(event) {
 28209     }
 28626     event.target.focus();
 28210   }, {
 28627   };
 28211     key: "componentWillUnmount",
 28628 
 28212     value: function componentWillUnmount() {
 28629   return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({}, buttonProps, {
 28213       this.clipboard.destroy();
 28630     className: classes,
 28214       delete this.clipboard;
 28631     ref: ref,
 28215       clearTimeout(this.onCopyTimeout);
 28632     onCopy: focusOnCopyEventTarget
 28216     }
 28633   }), children);
 28217   }, {
 28634 }
 28218     key: "bindContainer",
       
 28219     value: function bindContainer(container) {
       
 28220       this.container = container;
       
 28221     }
       
 28222   }, {
       
 28223     key: "onCopy",
       
 28224     value: function onCopy(args) {
       
 28225       // Clearing selection will move focus back to the triggering button,
       
 28226       // ensuring that it is not reset to the body, and further that it is
       
 28227       // kept within the rendered node.
       
 28228       args.clearSelection();
       
 28229       var _this$props = this.props,
       
 28230           onCopy = _this$props.onCopy,
       
 28231           onFinishCopy = _this$props.onFinishCopy;
       
 28232 
       
 28233       if (onCopy) {
       
 28234         onCopy(); // For convenience and consistency, ClipboardButton offers to call
       
 28235         // a secondary callback with delay. This is useful to reset
       
 28236         // consumers' state, e.g. to revert a label from "Copied" to
       
 28237         // "Copy".
       
 28238 
       
 28239         if (onFinishCopy) {
       
 28240           clearTimeout(this.onCopyTimeout);
       
 28241           this.onCopyTimeout = setTimeout(onFinishCopy, 4000);
       
 28242         }
       
 28243       }
       
 28244     }
       
 28245   }, {
       
 28246     key: "getText",
       
 28247     value: function getText() {
       
 28248       var text = this.props.text;
       
 28249 
       
 28250       if ('function' === typeof text) {
       
 28251         text = text();
       
 28252       }
       
 28253 
       
 28254       return text;
       
 28255     }
       
 28256   }, {
       
 28257     key: "render",
       
 28258     value: function render() {
       
 28259       // Disable reason: Exclude from spread props passed to Button
       
 28260       // eslint-disable-next-line no-unused-vars
       
 28261       var _this$props2 = this.props,
       
 28262           className = _this$props2.className,
       
 28263           children = _this$props2.children,
       
 28264           onCopy = _this$props2.onCopy,
       
 28265           onFinishCopy = _this$props2.onFinishCopy,
       
 28266           text = _this$props2.text,
       
 28267           buttonProps = Object(objectWithoutProperties["a" /* default */])(_this$props2, ["className", "children", "onCopy", "onFinishCopy", "text"]);
       
 28268 
       
 28269       var icon = buttonProps.icon;
       
 28270       var classes = classnames_default()('components-clipboard-button', className);
       
 28271       var ComponentToUse = icon ? icon_button : build_module_button; // Workaround for inconsistent behavior in Safari, where <textarea> is not
       
 28272       // the document.activeElement at the moment when the copy event fires.
       
 28273       // This causes documentHasSelection() in the copy-handler component to
       
 28274       // mistakenly override the ClipboardButton, and copy a serialized string
       
 28275       // of the current block instead.
       
 28276 
       
 28277       var focusOnCopyEventTarget = function focusOnCopyEventTarget(event) {
       
 28278         event.target.focus();
       
 28279       };
       
 28280 
       
 28281       return Object(external_this_wp_element_["createElement"])("span", {
       
 28282         ref: this.bindContainer,
       
 28283         onCopy: focusOnCopyEventTarget
       
 28284       }, Object(external_this_wp_element_["createElement"])(ComponentToUse, Object(esm_extends["a" /* default */])({}, buttonProps, {
       
 28285         className: classes
       
 28286       }), children));
       
 28287     }
       
 28288   }]);
       
 28289 
       
 28290   return ClipboardButton;
       
 28291 }(external_this_wp_element_["Component"]);
       
 28292 
       
 28293 /* harmony default export */ var clipboard_button = (clipboard_button_ClipboardButton);
       
 28294 
 28635 
 28295 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-indicator/index.js
 28636 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-indicator/index.js
 28296 
 28637 
 28297 
 28638 
 28298 
 28639 
 28314     }
 28655     }
 28315   }, props));
 28656   }, props));
 28316 };
 28657 };
 28317 
 28658 
 28318 /* harmony default export */ var color_indicator = (color_indicator_ColorIndicator);
 28659 /* harmony default export */ var color_indicator = (color_indicator_ColorIndicator);
 28319 
       
 28320 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dropdown/index.js
       
 28321 
       
 28322 
       
 28323 
       
 28324 
       
 28325 
       
 28326 
       
 28327 
       
 28328 
       
 28329 /**
       
 28330  * WordPress dependencies
       
 28331  */
       
 28332 
       
 28333 /**
       
 28334  * Internal dependencies
       
 28335  */
       
 28336 
       
 28337 
       
 28338 
       
 28339 var dropdown_Dropdown =
       
 28340 /*#__PURE__*/
       
 28341 function (_Component) {
       
 28342   Object(inherits["a" /* default */])(Dropdown, _Component);
       
 28343 
       
 28344   function Dropdown() {
       
 28345     var _this;
       
 28346 
       
 28347     Object(classCallCheck["a" /* default */])(this, Dropdown);
       
 28348 
       
 28349     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Dropdown).apply(this, arguments));
       
 28350     _this.toggle = _this.toggle.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 28351     _this.close = _this.close.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 28352     _this.closeIfClickOutside = _this.closeIfClickOutside.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 28353     _this.containerRef = Object(external_this_wp_element_["createRef"])();
       
 28354     _this.state = {
       
 28355       isOpen: false
       
 28356     };
       
 28357     return _this;
       
 28358   }
       
 28359 
       
 28360   Object(createClass["a" /* default */])(Dropdown, [{
       
 28361     key: "componentWillUnmount",
       
 28362     value: function componentWillUnmount() {
       
 28363       var isOpen = this.state.isOpen;
       
 28364       var onToggle = this.props.onToggle;
       
 28365 
       
 28366       if (isOpen && onToggle) {
       
 28367         onToggle(false);
       
 28368       }
       
 28369     }
       
 28370   }, {
       
 28371     key: "componentDidUpdate",
       
 28372     value: function componentDidUpdate(prevProps, prevState) {
       
 28373       var isOpen = this.state.isOpen;
       
 28374       var onToggle = this.props.onToggle;
       
 28375 
       
 28376       if (prevState.isOpen !== isOpen && onToggle) {
       
 28377         onToggle(isOpen);
       
 28378       }
       
 28379     }
       
 28380   }, {
       
 28381     key: "toggle",
       
 28382     value: function toggle() {
       
 28383       this.setState(function (state) {
       
 28384         return {
       
 28385           isOpen: !state.isOpen
       
 28386         };
       
 28387       });
       
 28388     }
       
 28389     /**
       
 28390      * Closes the dropdown if a click occurs outside the dropdown wrapper. This
       
 28391      * is intentionally distinct from `onClose` in that a click outside the
       
 28392      * popover may occur in the toggling of the dropdown via its toggle button.
       
 28393      * The correct behavior is to keep the dropdown closed.
       
 28394      *
       
 28395      * @param {MouseEvent} event Click event triggering `onClickOutside`.
       
 28396      */
       
 28397 
       
 28398   }, {
       
 28399     key: "closeIfClickOutside",
       
 28400     value: function closeIfClickOutside(event) {
       
 28401       if (!this.containerRef.current.contains(event.target)) {
       
 28402         this.close();
       
 28403       }
       
 28404     }
       
 28405   }, {
       
 28406     key: "close",
       
 28407     value: function close() {
       
 28408       this.setState({
       
 28409         isOpen: false
       
 28410       });
       
 28411     }
       
 28412   }, {
       
 28413     key: "render",
       
 28414     value: function render() {
       
 28415       var isOpen = this.state.isOpen;
       
 28416       var _this$props = this.props,
       
 28417           renderContent = _this$props.renderContent,
       
 28418           renderToggle = _this$props.renderToggle,
       
 28419           _this$props$position = _this$props.position,
       
 28420           position = _this$props$position === void 0 ? 'bottom' : _this$props$position,
       
 28421           className = _this$props.className,
       
 28422           contentClassName = _this$props.contentClassName,
       
 28423           expandOnMobile = _this$props.expandOnMobile,
       
 28424           headerTitle = _this$props.headerTitle,
       
 28425           focusOnMount = _this$props.focusOnMount;
       
 28426       var args = {
       
 28427         isOpen: isOpen,
       
 28428         onToggle: this.toggle,
       
 28429         onClose: this.close
       
 28430       };
       
 28431       return Object(external_this_wp_element_["createElement"])("div", {
       
 28432         className: className,
       
 28433         ref: this.containerRef
       
 28434       }, renderToggle(args), isOpen && Object(external_this_wp_element_["createElement"])(popover, {
       
 28435         className: contentClassName,
       
 28436         position: position,
       
 28437         onClose: this.close,
       
 28438         onClickOutside: this.closeIfClickOutside,
       
 28439         expandOnMobile: expandOnMobile,
       
 28440         headerTitle: headerTitle,
       
 28441         focusOnMount: focusOnMount
       
 28442       }, renderContent(args)));
       
 28443     }
       
 28444   }]);
       
 28445 
       
 28446   return Dropdown;
       
 28447 }(external_this_wp_element_["Component"]);
       
 28448 
       
 28449 /* harmony default export */ var dropdown = (dropdown_Dropdown);
       
 28450 
       
 28451 // EXTERNAL MODULE: ./node_modules/tinycolor2/tinycolor.js
       
 28452 var tinycolor = __webpack_require__(45);
       
 28453 var tinycolor_default = /*#__PURE__*/__webpack_require__.n(tinycolor);
       
 28454 
 28660 
 28455 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/utils.js
 28661 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/utils.js
 28456 /**
 28662 /**
 28457  * Parts of this source were derived and modified from react-color,
 28663  * Parts of this source were derived and modified from react-color,
 28458  * released under the MIT license.
 28664  * released under the MIT license.
 28585 
 28791 
 28586 function simpleCheckForValidColor(data) {
 28792 function simpleCheckForValidColor(data) {
 28587   var keysToCheck = ['r', 'g', 'b', 'a', 'h', 's', 'l', 'v'];
 28793   var keysToCheck = ['r', 'g', 'b', 'a', 'h', 's', 'l', 'v'];
 28588   var checked = 0;
 28794   var checked = 0;
 28589   var passed = 0;
 28795   var passed = 0;
 28590   Object(external_lodash_["each"])(keysToCheck, function (letter) {
 28796   Object(external_this_lodash_["each"])(keysToCheck, function (letter) {
 28591     if (data[letter]) {
 28797     if (data[letter]) {
 28592       checked += 1;
 28798       checked += 1;
 28593 
 28799 
 28594       if (!isNaN(data[letter])) {
 28800       if (!isNaN(data[letter])) {
 28595         passed += 1;
 28801         passed += 1;
 28686     a: props.hsl.a,
 28892     a: props.hsl.a,
 28687     source: 'rgb'
 28893     source: 'rgb'
 28688   };
 28894   };
 28689 }
 28895 }
 28690 
 28896 
 28691 // EXTERNAL MODULE: ./node_modules/mousetrap/mousetrap.js
       
 28692 var mousetrap = __webpack_require__(222);
       
 28693 var mousetrap_default = /*#__PURE__*/__webpack_require__.n(mousetrap);
       
 28694 
       
 28695 // EXTERNAL MODULE: ./node_modules/mousetrap/plugins/global-bind/mousetrap-global-bind.js
       
 28696 var mousetrap_global_bind = __webpack_require__(259);
       
 28697 
       
 28698 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/keyboard-shortcuts/index.js
 28897 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/keyboard-shortcuts/index.js
 28699 
 28898 
 28700 
 28899 
 28701 
       
 28702 
       
 28703 
       
 28704 
       
 28705 
       
 28706 
       
 28707 /**
 28900 /**
 28708  * External dependencies
 28901  * External dependencies
 28709  */
 28902  */
 28710 
 28903 
 28711 
       
 28712 
       
 28713 /**
 28904 /**
 28714  * WordPress dependencies
 28905  * WordPress dependencies
 28715  */
 28906  */
 28716 
 28907 
 28717 
 28908 
 28718 
 28909 
 28719 var keyboard_shortcuts_KeyboardShortcuts =
 28910 
 28720 /*#__PURE__*/
 28911 function KeyboardShortcut(_ref) {
 28721 function (_Component) {
 28912   var target = _ref.target,
 28722   Object(inherits["a" /* default */])(KeyboardShortcuts, _Component);
 28913       callback = _ref.callback,
 28723 
 28914       shortcut = _ref.shortcut,
 28724   function KeyboardShortcuts() {
 28915       bindGlobal = _ref.bindGlobal,
 28725     var _this;
 28916       eventName = _ref.eventName;
 28726 
 28917   Object(external_this_wp_compose_["useKeyboardShortcut"])(shortcut, callback, {
 28727     Object(classCallCheck["a" /* default */])(this, KeyboardShortcuts);
 28918     bindGlobal: bindGlobal,
 28728 
 28919     target: target,
 28729     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(KeyboardShortcuts).apply(this, arguments));
 28920     eventName: eventName
 28730     _this.bindKeyTarget = _this.bindKeyTarget.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 28921   });
 28731     return _this;
 28922   return null;
 28732   }
 28923 }
 28733 
 28924 
 28734   Object(createClass["a" /* default */])(KeyboardShortcuts, [{
 28925 function KeyboardShortcuts(_ref2) {
 28735     key: "componentDidMount",
 28926   var children = _ref2.children,
 28736     value: function componentDidMount() {
 28927       shortcuts = _ref2.shortcuts,
 28737       var _this2 = this;
 28928       bindGlobal = _ref2.bindGlobal,
 28738 
 28929       eventName = _ref2.eventName;
 28739       var _this$keyTarget = this.keyTarget,
 28930   var target = Object(external_this_wp_element_["useRef"])();
 28740           keyTarget = _this$keyTarget === void 0 ? document : _this$keyTarget;
 28931   var element = Object(external_this_lodash_["map"])(shortcuts, function (callback, shortcut) {
 28741       this.mousetrap = new mousetrap_default.a(keyTarget);
 28932     return Object(external_this_wp_element_["createElement"])(KeyboardShortcut, {
 28742       Object(external_lodash_["forEach"])(this.props.shortcuts, function (callback, key) {
 28933       key: shortcut,
 28743         if (false) { var hasShift, hasAlt, modifiers, keys; }
 28934       shortcut: shortcut,
 28744 
 28935       callback: callback,
 28745         var _this2$props = _this2.props,
 28936       bindGlobal: bindGlobal,
 28746             bindGlobal = _this2$props.bindGlobal,
 28937       eventName: eventName,
 28747             eventName = _this2$props.eventName;
 28938       target: target
 28748         var bindFn = bindGlobal ? 'bindGlobal' : 'bind';
 28939     });
 28749 
 28940   }); // Render as non-visual if there are no children pressed. Keyboard
 28750         _this2.mousetrap[bindFn](key, callback, eventName);
 28941   // events will be bound to the document instead.
 28751       });
 28942 
 28752     }
 28943   if (!external_this_wp_element_["Children"].count(children)) {
 28753   }, {
 28944     return element;
 28754     key: "componentWillUnmount",
 28945   }
 28755     value: function componentWillUnmount() {
 28946 
 28756       this.mousetrap.reset();
 28947   return Object(external_this_wp_element_["createElement"])("div", {
 28757     }
 28948     ref: target
 28758     /**
 28949   }, element, children);
 28759      * When rendering with children, binds the wrapper node on which events
 28950 }
 28760      * will be bound.
 28951 
 28761      *
 28952 /* harmony default export */ var keyboard_shortcuts = (KeyboardShortcuts);
 28762      * @param {Element} node Key event target.
       
 28763      */
       
 28764 
       
 28765   }, {
       
 28766     key: "bindKeyTarget",
       
 28767     value: function bindKeyTarget(node) {
       
 28768       this.keyTarget = node;
       
 28769     }
       
 28770   }, {
       
 28771     key: "render",
       
 28772     value: function render() {
       
 28773       // Render as non-visual if there are no children pressed. Keyboard
       
 28774       // events will be bound to the document instead.
       
 28775       var children = this.props.children;
       
 28776 
       
 28777       if (!external_this_wp_element_["Children"].count(children)) {
       
 28778         return null;
       
 28779       }
       
 28780 
       
 28781       return Object(external_this_wp_element_["createElement"])("div", {
       
 28782         ref: this.bindKeyTarget
       
 28783       }, children);
       
 28784     }
       
 28785   }]);
       
 28786 
       
 28787   return KeyboardShortcuts;
       
 28788 }(external_this_wp_element_["Component"]);
       
 28789 
       
 28790 /* harmony default export */ var keyboard_shortcuts = (keyboard_shortcuts_KeyboardShortcuts);
       
 28791 
 28953 
 28792 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/alpha.js
 28954 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/alpha.js
 28793 
 28955 
 28794 
 28956 
 28795 
 28957 
 28796 
 28958 
 28797 
 28959 
 28798 
 28960 
 28799 
 28961 
       
 28962 
       
 28963 function alpha_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (alpha_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 28964 
       
 28965 function alpha_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 28800 
 28966 
 28801 /**
 28967 /**
 28802  * Parts of this source were derived and modified from react-color,
 28968  * Parts of this source were derived and modified from react-color,
 28803  * released under the MIT license.
 28969  * released under the MIT license.
 28804  *
 28970  *
 28834  */
 29000  */
 28835 
 29001 
 28836 
 29002 
 28837 
 29003 
 28838 
 29004 
       
 29005 
 28839 /**
 29006 /**
 28840  * Internal dependencies
 29007  * Internal dependencies
 28841  */
 29008  */
 28842 
 29009 
 28843 
 29010 
 28844 
 29011 
 28845 var alpha_Alpha =
 29012 var alpha_Alpha = /*#__PURE__*/function (_Component) {
 28846 /*#__PURE__*/
       
 28847 function (_Component) {
       
 28848   Object(inherits["a" /* default */])(Alpha, _Component);
 29013   Object(inherits["a" /* default */])(Alpha, _Component);
       
 29014 
       
 29015   var _super = alpha_createSuper(Alpha);
 28849 
 29016 
 28850   function Alpha() {
 29017   function Alpha() {
 28851     var _this;
 29018     var _this;
 28852 
 29019 
 28853     Object(classCallCheck["a" /* default */])(this, Alpha);
 29020     Object(classCallCheck["a" /* default */])(this, Alpha);
 28854 
 29021 
 28855     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Alpha).apply(this, arguments));
 29022     _this = _super.apply(this, arguments);
 28856     _this.container = Object(external_this_wp_element_["createRef"])();
 29023     _this.container = Object(external_this_wp_element_["createRef"])();
 28857     _this.increase = _this.increase.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29024     _this.increase = _this.increase.bind(Object(assertThisInitialized["a" /* default */])(_this));
 28858     _this.decrease = _this.decrease.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29025     _this.decrease = _this.decrease.bind(Object(assertThisInitialized["a" /* default */])(_this));
 28859     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29026     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 28860     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29027     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 28861     _this.handleMouseUp = _this.handleMouseUp.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29028     _this.handleMouseUp = _this.handleMouseUp.bind(Object(assertThisInitialized["a" /* default */])(_this));
 28862     return _this;
 29029     return _this;
 28863   }
 29030   }
 28864 
 29031 
 28865   Object(createClass["a" /* default */])(Alpha, [{
 29032   Object(createClass["a" /* default */])(Alpha, [{
 28866     key: "componentWillUnmount",
 29033     key: "componentWillUnmount",
 28872     value: function increase() {
 29039     value: function increase() {
 28873       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 29040       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 28874       var _this$props = this.props,
 29041       var _this$props = this.props,
 28875           hsl = _this$props.hsl,
 29042           hsl = _this$props.hsl,
 28876           _this$props$onChange = _this$props.onChange,
 29043           _this$props$onChange = _this$props.onChange,
 28877           onChange = _this$props$onChange === void 0 ? external_lodash_["noop"] : _this$props$onChange;
 29044           onChange = _this$props$onChange === void 0 ? external_this_lodash_["noop"] : _this$props$onChange;
 28878       amount = parseInt(amount * 100, 10);
 29045       amount = parseInt(amount * 100, 10);
 28879       var change = {
 29046       var change = {
 28880         h: hsl.h,
 29047         h: hsl.h,
 28881         s: hsl.s,
 29048         s: hsl.s,
 28882         l: hsl.l,
 29049         l: hsl.l,
 28890     value: function decrease() {
 29057     value: function decrease() {
 28891       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 29058       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 28892       var _this$props2 = this.props,
 29059       var _this$props2 = this.props,
 28893           hsl = _this$props2.hsl,
 29060           hsl = _this$props2.hsl,
 28894           _this$props2$onChange = _this$props2.onChange,
 29061           _this$props2$onChange = _this$props2.onChange,
 28895           onChange = _this$props2$onChange === void 0 ? external_lodash_["noop"] : _this$props2$onChange;
 29062           onChange = _this$props2$onChange === void 0 ? external_this_lodash_["noop"] : _this$props2$onChange;
 28896       var intValue = parseInt(hsl.a * 100, 10) - parseInt(amount * 100, 10);
 29063       var intValue = parseInt(hsl.a * 100, 10) - parseInt(amount * 100, 10);
 28897       var change = {
 29064       var change = {
 28898         h: hsl.h,
 29065         h: hsl.h,
 28899         s: hsl.s,
 29066         s: hsl.s,
 28900         l: hsl.l,
 29067         l: hsl.l,
 28905     }
 29072     }
 28906   }, {
 29073   }, {
 28907     key: "handleChange",
 29074     key: "handleChange",
 28908     value: function handleChange(e) {
 29075     value: function handleChange(e) {
 28909       var _this$props$onChange2 = this.props.onChange,
 29076       var _this$props$onChange2 = this.props.onChange,
 28910           onChange = _this$props$onChange2 === void 0 ? external_lodash_["noop"] : _this$props$onChange2;
 29077           onChange = _this$props$onChange2 === void 0 ? external_this_lodash_["noop"] : _this$props$onChange2;
 28911       var change = calculateAlphaChange(e, this.props, this.container.current);
 29078       var change = calculateAlphaChange(e, this.props, this.container.current);
 28912 
 29079 
 28913       if (change) {
 29080       if (change) {
 28914         onChange(change, e);
 29081         onChange(change, e);
 28915       }
 29082       }
 29020     }
 29187     }
 29021   }]);
 29188   }]);
 29022 
 29189 
 29023   return Alpha;
 29190   return Alpha;
 29024 }(external_this_wp_element_["Component"]);
 29191 }(external_this_wp_element_["Component"]);
 29025 /* harmony default export */ var alpha = (alpha_Alpha);
 29192 /* harmony default export */ var color_picker_alpha = (Object(external_this_wp_compose_["pure"])(alpha_Alpha));
 29026 
 29193 
 29027 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/hue.js
 29194 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/hue.js
 29028 
 29195 
 29029 
 29196 
 29030 
 29197 
 29031 
 29198 
 29032 
 29199 
 29033 
 29200 
 29034 
 29201 
       
 29202 
       
 29203 function hue_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (hue_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 29204 
       
 29205 function hue_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 29035 
 29206 
 29036 /**
 29207 /**
 29037  * Parts of this source were derived and modified from react-color,
 29208  * Parts of this source were derived and modified from react-color,
 29038  * released under the MIT license.
 29209  * released under the MIT license.
 29039  *
 29210  *
 29076  * Internal dependencies
 29247  * Internal dependencies
 29077  */
 29248  */
 29078 
 29249 
 29079 
 29250 
 29080 
 29251 
 29081 var hue_Hue =
 29252 
 29082 /*#__PURE__*/
 29253 var hue_Hue = /*#__PURE__*/function (_Component) {
 29083 function (_Component) {
       
 29084   Object(inherits["a" /* default */])(Hue, _Component);
 29254   Object(inherits["a" /* default */])(Hue, _Component);
       
 29255 
       
 29256   var _super = hue_createSuper(Hue);
 29085 
 29257 
 29086   function Hue() {
 29258   function Hue() {
 29087     var _this;
 29259     var _this;
 29088 
 29260 
 29089     Object(classCallCheck["a" /* default */])(this, Hue);
 29261     Object(classCallCheck["a" /* default */])(this, Hue);
 29090 
 29262 
 29091     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Hue).apply(this, arguments));
 29263     _this = _super.apply(this, arguments);
 29092     _this.container = Object(external_this_wp_element_["createRef"])();
 29264     _this.container = Object(external_this_wp_element_["createRef"])();
 29093     _this.increase = _this.increase.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29265     _this.increase = _this.increase.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29094     _this.decrease = _this.decrease.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29266     _this.decrease = _this.decrease.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29095     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29267     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29096     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29268     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29097     _this.handleMouseUp = _this.handleMouseUp.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29269     _this.handleMouseUp = _this.handleMouseUp.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29098     return _this;
 29270     return _this;
 29099   }
 29271   }
 29100 
 29272 
 29101   Object(createClass["a" /* default */])(Hue, [{
 29273   Object(createClass["a" /* default */])(Hue, [{
 29102     key: "componentWillUnmount",
 29274     key: "componentWillUnmount",
 29108     value: function increase() {
 29280     value: function increase() {
 29109       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
 29281       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
 29110       var _this$props = this.props,
 29282       var _this$props = this.props,
 29111           hsl = _this$props.hsl,
 29283           hsl = _this$props.hsl,
 29112           _this$props$onChange = _this$props.onChange,
 29284           _this$props$onChange = _this$props.onChange,
 29113           onChange = _this$props$onChange === void 0 ? external_lodash_["noop"] : _this$props$onChange;
 29285           onChange = _this$props$onChange === void 0 ? external_this_lodash_["noop"] : _this$props$onChange;
 29114       var change = {
 29286       var change = {
 29115         h: hsl.h + amount >= 359 ? 359 : hsl.h + amount,
 29287         h: hsl.h + amount >= 359 ? 359 : hsl.h + amount,
 29116         s: hsl.s,
 29288         s: hsl.s,
 29117         l: hsl.l,
 29289         l: hsl.l,
 29118         a: hsl.a,
 29290         a: hsl.a,
 29125     value: function decrease() {
 29297     value: function decrease() {
 29126       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
 29298       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;
 29127       var _this$props2 = this.props,
 29299       var _this$props2 = this.props,
 29128           hsl = _this$props2.hsl,
 29300           hsl = _this$props2.hsl,
 29129           _this$props2$onChange = _this$props2.onChange,
 29301           _this$props2$onChange = _this$props2.onChange,
 29130           onChange = _this$props2$onChange === void 0 ? external_lodash_["noop"] : _this$props2$onChange;
 29302           onChange = _this$props2$onChange === void 0 ? external_this_lodash_["noop"] : _this$props2$onChange;
 29131       var change = {
 29303       var change = {
 29132         h: hsl.h <= amount ? 0 : hsl.h - amount,
 29304         h: hsl.h <= amount ? 0 : hsl.h - amount,
 29133         s: hsl.s,
 29305         s: hsl.s,
 29134         l: hsl.l,
 29306         l: hsl.l,
 29135         a: hsl.a,
 29307         a: hsl.a,
 29139     }
 29311     }
 29140   }, {
 29312   }, {
 29141     key: "handleChange",
 29313     key: "handleChange",
 29142     value: function handleChange(e) {
 29314     value: function handleChange(e) {
 29143       var _this$props$onChange2 = this.props.onChange,
 29315       var _this$props$onChange2 = this.props.onChange,
 29144           onChange = _this$props$onChange2 === void 0 ? external_lodash_["noop"] : _this$props$onChange2;
 29316           onChange = _this$props$onChange2 === void 0 ? external_this_lodash_["noop"] : _this$props$onChange2;
 29145       var change = calculateHueChange(e, this.props, this.container.current);
 29317       var change = calculateHueChange(e, this.props, this.container.current);
 29146 
 29318 
 29147       if (change) {
 29319       if (change) {
 29148         onChange(change, e);
 29320         onChange(change, e);
 29149       }
 29321       }
 29247         "aria-label": Object(external_this_wp_i18n_["__"])('Hue value in degrees, from 0 to 359.'),
 29419         "aria-label": Object(external_this_wp_i18n_["__"])('Hue value in degrees, from 0 to 359.'),
 29248         "aria-describedby": "components-color-picker__hue-description-".concat(instanceId),
 29420         "aria-describedby": "components-color-picker__hue-description-".concat(instanceId),
 29249         className: "components-color-picker__hue-pointer",
 29421         className: "components-color-picker__hue-pointer",
 29250         style: pointerLocation,
 29422         style: pointerLocation,
 29251         onKeyDown: this.preventKeyEvents
 29423         onKeyDown: this.preventKeyEvents
 29252       }), Object(external_this_wp_element_["createElement"])("p", {
 29424       }), Object(external_this_wp_element_["createElement"])(visually_hidden, {
 29253         className: "components-color-picker__hue-description screen-reader-text",
 29425         as: "p",
 29254         id: "components-color-picker__hue-description-".concat(instanceId)
 29426         id: "components-color-picker__hue-description-".concat(instanceId)
 29255       }, Object(external_this_wp_i18n_["__"])('Move the arrow left or right to change hue.')))));
 29427       }, Object(external_this_wp_i18n_["__"])('Move the arrow left or right to change hue.')))));
 29256     }
 29428     }
 29257   }]);
 29429   }]);
 29258 
 29430 
 29259   return Hue;
 29431   return Hue;
 29260 }(external_this_wp_element_["Component"]);
 29432 }(external_this_wp_element_["Component"]);
 29261 /* harmony default export */ var hue = (Object(external_this_wp_compose_["withInstanceId"])(hue_Hue));
 29433 /* harmony default export */ var hue = (Object(external_this_wp_compose_["compose"])(external_this_wp_compose_["pure"], external_this_wp_compose_["withInstanceId"])(hue_Hue));
       
 29434 
       
 29435 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/chevron-down.js
       
 29436 var chevron_down = __webpack_require__(295);
 29262 
 29437 
 29263 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text-control/index.js
 29438 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text-control/index.js
 29264 
 29439 
 29265 
 29440 
 29266 
 29441 
 29270  */
 29445  */
 29271 
 29446 
 29272 /**
 29447 /**
 29273  * Internal dependencies
 29448  * Internal dependencies
 29274  */
 29449  */
 29275 
       
 29276 
 29450 
 29277 
 29451 
 29278 function TextControl(_ref) {
 29452 function TextControl(_ref) {
 29279   var label = _ref.label,
 29453   var label = _ref.label,
       
 29454       hideLabelFromVision = _ref.hideLabelFromVision,
 29280       value = _ref.value,
 29455       value = _ref.value,
 29281       help = _ref.help,
 29456       help = _ref.help,
 29282       className = _ref.className,
 29457       className = _ref.className,
 29283       instanceId = _ref.instanceId,
       
 29284       onChange = _ref.onChange,
 29458       onChange = _ref.onChange,
 29285       _ref$type = _ref.type,
 29459       _ref$type = _ref.type,
 29286       type = _ref$type === void 0 ? 'text' : _ref$type,
 29460       type = _ref$type === void 0 ? 'text' : _ref$type,
 29287       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "value", "help", "className", "instanceId", "onChange", "type"]);
 29461       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "hideLabelFromVision", "value", "help", "className", "onChange", "type"]);
 29288 
 29462 
       
 29463   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(TextControl);
 29289   var id = "inspector-text-control-".concat(instanceId);
 29464   var id = "inspector-text-control-".concat(instanceId);
 29290 
 29465 
 29291   var onChangeValue = function onChangeValue(event) {
 29466   var onChangeValue = function onChangeValue(event) {
 29292     return onChange(event.target.value);
 29467     return onChange(event.target.value);
 29293   };
 29468   };
 29294 
 29469 
 29295   return Object(external_this_wp_element_["createElement"])(base_control, {
 29470   return Object(external_this_wp_element_["createElement"])(base_control, {
 29296     label: label,
 29471     label: label,
       
 29472     hideLabelFromVision: hideLabelFromVision,
 29297     id: id,
 29473     id: id,
 29298     help: help,
 29474     help: help,
 29299     className: className
 29475     className: className
 29300   }, Object(external_this_wp_element_["createElement"])("input", Object(esm_extends["a" /* default */])({
 29476   }, Object(external_this_wp_element_["createElement"])("input", Object(esm_extends["a" /* default */])({
 29301     className: "components-text-control__input",
 29477     className: "components-text-control__input",
 29305     onChange: onChangeValue,
 29481     onChange: onChangeValue,
 29306     "aria-describedby": !!help ? id + '__help' : undefined
 29482     "aria-describedby": !!help ? id + '__help' : undefined
 29307   }, props)));
 29483   }, props)));
 29308 }
 29484 }
 29309 
 29485 
 29310 /* harmony default export */ var text_control = (Object(external_this_wp_compose_["withInstanceId"])(TextControl));
       
 29311 
       
 29312 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/inputs.js
 29486 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/inputs.js
 29313 
 29487 
 29314 
 29488 
 29315 
 29489 
 29316 
 29490 
 29318 
 29492 
 29319 
 29493 
 29320 
 29494 
 29321 
 29495 
 29322 
 29496 
       
 29497 function inputs_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (inputs_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 29498 
       
 29499 function inputs_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 29323 
 29500 
 29324 /**
 29501 /**
 29325  * External dependencies
 29502  * External dependencies
 29326  */
 29503  */
 29327 
 29504 
 29331 
 29508 
 29332 
 29509 
 29333 
 29510 
 29334 
 29511 
 29335 
 29512 
       
 29513 
       
 29514 
 29336 /**
 29515 /**
 29337  * Internal dependencies
 29516  * Internal dependencies
 29338  */
 29517  */
 29339 
 29518 
 29340 
 29519 
 29341 
 29520 
 29342 
 29521 
       
 29522 
 29343 /* Wrapper for TextControl, only used to handle intermediate state while typing. */
 29523 /* Wrapper for TextControl, only used to handle intermediate state while typing. */
 29344 
 29524 
 29345 var inputs_Input =
 29525 var inputs_Input = /*#__PURE__*/function (_Component) {
 29346 /*#__PURE__*/
       
 29347 function (_Component) {
       
 29348   Object(inherits["a" /* default */])(Input, _Component);
 29526   Object(inherits["a" /* default */])(Input, _Component);
 29349 
 29527 
 29350   function Input(_ref) {
 29528   var _super = inputs_createSuper(Input);
       
 29529 
       
 29530   function Input() {
 29351     var _this;
 29531     var _this;
 29352 
 29532 
 29353     var value = _ref.value;
       
 29354 
       
 29355     Object(classCallCheck["a" /* default */])(this, Input);
 29533     Object(classCallCheck["a" /* default */])(this, Input);
 29356 
 29534 
 29357     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Input).apply(this, arguments));
 29535     _this = _super.apply(this, arguments);
 29358     _this.state = {
 29536     _this.handleBlur = _this.handleBlur.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29359       value: String(value).toLowerCase()
 29537     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29360     };
 29538     _this.handleKeyDown = _this.handleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29361     _this.handleBlur = _this.handleBlur.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 29362     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 29363     _this.handleKeyDown = _this.handleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 29364     return _this;
 29539     return _this;
 29365   }
 29540   }
 29366 
 29541 
 29367   Object(createClass["a" /* default */])(Input, [{
 29542   Object(createClass["a" /* default */])(Input, [{
 29368     key: "componentWillReceiveProps",
       
 29369     value: function componentWillReceiveProps(nextProps) {
       
 29370       if (nextProps.value !== this.props.value) {
       
 29371         this.setState({
       
 29372           value: String(nextProps.value).toLowerCase()
       
 29373         });
       
 29374       }
       
 29375     }
       
 29376   }, {
       
 29377     key: "handleBlur",
 29543     key: "handleBlur",
 29378     value: function handleBlur() {
 29544     value: function handleBlur() {
 29379       var _this$props = this.props,
 29545       var _this$props = this.props,
       
 29546           value = _this$props.value,
 29380           valueKey = _this$props.valueKey,
 29547           valueKey = _this$props.valueKey,
 29381           onChange = _this$props.onChange;
 29548           onChange = _this$props.onChange,
 29382       var value = this.state.value;
 29549           source = _this$props.source;
 29383       onChange(Object(defineProperty["a" /* default */])({}, valueKey, value));
 29550       onChange({
       
 29551         source: source,
       
 29552         state: 'commit',
       
 29553         value: value,
       
 29554         valueKey: valueKey
       
 29555       });
 29384     }
 29556     }
 29385   }, {
 29557   }, {
 29386     key: "handleChange",
 29558     key: "handleChange",
 29387     value: function handleChange(value) {
 29559     value: function handleChange(value) {
 29388       var _this$props2 = this.props,
 29560       var _this$props2 = this.props,
 29389           valueKey = _this$props2.valueKey,
 29561           valueKey = _this$props2.valueKey,
 29390           onChange = _this$props2.onChange; // Protect against expanding a value while we're typing.
 29562           onChange = _this$props2.onChange,
 29391 
 29563           source = _this$props2.source;
 29392       if (value.length > 4) {
 29564 
 29393         onChange(Object(defineProperty["a" /* default */])({}, valueKey, value));
 29565       if (value.length > 4 && isValidHex(value)) {
       
 29566         onChange({
       
 29567           source: source,
       
 29568           state: 'commit',
       
 29569           value: value,
       
 29570           valueKey: valueKey
       
 29571         });
       
 29572       } else {
       
 29573         onChange({
       
 29574           source: source,
       
 29575           state: 'draft',
       
 29576           value: value,
       
 29577           valueKey: valueKey
       
 29578         });
 29394       }
 29579       }
 29395 
       
 29396       this.setState({
       
 29397         value: value
       
 29398       });
       
 29399     }
 29580     }
 29400   }, {
 29581   }, {
 29401     key: "handleKeyDown",
 29582     key: "handleKeyDown",
 29402     value: function handleKeyDown(_ref2) {
 29583     value: function handleKeyDown(_ref) {
 29403       var keyCode = _ref2.keyCode;
 29584       var keyCode = _ref.keyCode;
 29404 
 29585 
 29405       if (keyCode !== external_this_wp_keycodes_["ENTER"] && keyCode !== external_this_wp_keycodes_["UP"] && keyCode !== external_this_wp_keycodes_["DOWN"]) {
 29586       if (keyCode !== external_this_wp_keycodes_["ENTER"] && keyCode !== external_this_wp_keycodes_["UP"] && keyCode !== external_this_wp_keycodes_["DOWN"]) {
 29406         return;
 29587         return;
 29407       }
 29588       }
 29408 
 29589 
 29409       var value = this.state.value;
       
 29410       var _this$props3 = this.props,
 29590       var _this$props3 = this.props,
       
 29591           value = _this$props3.value,
 29411           valueKey = _this$props3.valueKey,
 29592           valueKey = _this$props3.valueKey,
 29412           onChange = _this$props3.onChange;
 29593           onChange = _this$props3.onChange,
 29413       onChange(Object(defineProperty["a" /* default */])({}, valueKey, value));
 29594           source = _this$props3.source;
       
 29595       onChange({
       
 29596         source: source,
       
 29597         state: 'commit',
       
 29598         value: value,
       
 29599         valueKey: valueKey
       
 29600       });
 29414     }
 29601     }
 29415   }, {
 29602   }, {
 29416     key: "render",
 29603     key: "render",
 29417     value: function render() {
 29604     value: function render() {
 29418       var _this2 = this;
 29605       var _this2 = this;
 29419 
 29606 
 29420       var _this$props4 = this.props,
 29607       var _this$props4 = this.props,
 29421           label = _this$props4.label,
 29608           label = _this$props4.label,
 29422           props = Object(objectWithoutProperties["a" /* default */])(_this$props4, ["label"]);
 29609           value = _this$props4.value,
 29423 
 29610           props = Object(objectWithoutProperties["a" /* default */])(_this$props4, ["label", "value"]);
 29424       var value = this.state.value;
 29611 
 29425       return Object(external_this_wp_element_["createElement"])(text_control, Object(esm_extends["a" /* default */])({
 29612       return Object(external_this_wp_element_["createElement"])(TextControl, Object(esm_extends["a" /* default */])({
 29426         className: "components-color-picker__inputs-field",
 29613         className: "components-color-picker__inputs-field",
 29427         label: label,
 29614         label: label,
 29428         value: value,
 29615         value: value,
 29429         onChange: function onChange(newValue) {
 29616         onChange: function onChange(newValue) {
 29430           return _this2.handleChange(newValue);
 29617           return _this2.handleChange(newValue);
 29431         },
 29618         },
 29432         onBlur: this.handleBlur,
 29619         onBlur: this.handleBlur,
 29433         onKeyDown: this.handleKeyDown
 29620         onKeyDown: this.handleKeyDown
 29434       }, Object(external_lodash_["omit"])(props, ['onChange', 'value', 'valueKey'])));
 29621       }, Object(external_this_lodash_["omit"])(props, ['onChange', 'valueKey', 'source'])));
 29435     }
 29622     }
 29436   }]);
 29623   }]);
 29437 
 29624 
 29438   return Input;
 29625   return Input;
 29439 }(external_this_wp_element_["Component"]);
 29626 }(external_this_wp_element_["Component"]);
 29440 
 29627 var PureButton = Object(external_this_wp_compose_["pure"])(build_module_button["a" /* default */]);
 29441 var inputs_Inputs =
 29628 var inputs_Inputs = /*#__PURE__*/function (_Component2) {
 29442 /*#__PURE__*/
       
 29443 function (_Component2) {
       
 29444   Object(inherits["a" /* default */])(Inputs, _Component2);
 29629   Object(inherits["a" /* default */])(Inputs, _Component2);
 29445 
 29630 
 29446   function Inputs(_ref3) {
 29631   var _super2 = inputs_createSuper(Inputs);
       
 29632 
       
 29633   function Inputs(_ref2) {
 29447     var _this3;
 29634     var _this3;
 29448 
 29635 
 29449     var hsl = _ref3.hsl;
 29636     var hsl = _ref2.hsl;
 29450 
 29637 
 29451     Object(classCallCheck["a" /* default */])(this, Inputs);
 29638     Object(classCallCheck["a" /* default */])(this, Inputs);
 29452 
 29639 
 29453     _this3 = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Inputs).apply(this, arguments));
 29640     _this3 = _super2.apply(this, arguments);
 29454     var view = hsl.a === 1 ? 'hex' : 'rgb';
 29641     var view = hsl.a === 1 ? 'hex' : 'rgb';
 29455     _this3.state = {
 29642     _this3.state = {
 29456       view: view
 29643       view: view
 29457     };
 29644     };
 29458     _this3.toggleViews = _this3.toggleViews.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this3)));
 29645     _this3.toggleViews = _this3.toggleViews.bind(Object(assertThisInitialized["a" /* default */])(_this3));
 29459     _this3.handleChange = _this3.handleChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this3)));
 29646     _this3.resetDraftValues = _this3.resetDraftValues.bind(Object(assertThisInitialized["a" /* default */])(_this3));
       
 29647     _this3.handleChange = _this3.handleChange.bind(Object(assertThisInitialized["a" /* default */])(_this3));
       
 29648     _this3.normalizeValue = _this3.normalizeValue.bind(Object(assertThisInitialized["a" /* default */])(_this3));
 29460     return _this3;
 29649     return _this3;
 29461   }
 29650   }
 29462 
 29651 
 29463   Object(createClass["a" /* default */])(Inputs, [{
 29652   Object(createClass["a" /* default */])(Inputs, [{
 29464     key: "toggleViews",
 29653     key: "toggleViews",
 29465     value: function toggleViews() {
 29654     value: function toggleViews() {
 29466       if (this.state.view === 'hex') {
 29655       if (this.state.view === 'hex') {
 29467         this.setState({
 29656         this.setState({
 29468           view: 'rgb'
 29657           view: 'rgb'
 29469         });
 29658         }, this.resetDraftValues);
 29470         Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('RGB mode active'));
 29659         Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('RGB mode active'));
 29471       } else if (this.state.view === 'rgb') {
 29660       } else if (this.state.view === 'rgb') {
 29472         this.setState({
 29661         this.setState({
 29473           view: 'hsl'
 29662           view: 'hsl'
 29474         });
 29663         }, this.resetDraftValues);
 29475         Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('Hue/saturation/lightness mode active'));
 29664         Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('Hue/saturation/lightness mode active'));
 29476       } else if (this.state.view === 'hsl') {
 29665       } else if (this.state.view === 'hsl') {
 29477         if (this.props.hsl.a === 1) {
 29666         if (this.props.hsl.a === 1) {
 29478           this.setState({
 29667           this.setState({
 29479             view: 'hex'
 29668             view: 'hex'
 29480           });
 29669           }, this.resetDraftValues);
 29481           Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('Hex color mode active'));
 29670           Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('Hex color mode active'));
 29482         } else {
 29671         } else {
 29483           this.setState({
 29672           this.setState({
 29484             view: 'rgb'
 29673             view: 'rgb'
 29485           });
 29674           }, this.resetDraftValues);
 29486           Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('RGB mode active'));
 29675           Object(external_this_wp_a11y_["speak"])(Object(external_this_wp_i18n_["__"])('RGB mode active'));
 29487         }
 29676         }
 29488       }
 29677       }
 29489     }
 29678     }
 29490   }, {
 29679   }, {
       
 29680     key: "resetDraftValues",
       
 29681     value: function resetDraftValues() {
       
 29682       return this.props.onChange({
       
 29683         state: 'reset'
       
 29684       });
       
 29685     }
       
 29686   }, {
       
 29687     key: "normalizeValue",
       
 29688     value: function normalizeValue(valueKey, value) {
       
 29689       if (valueKey !== 'a') {
       
 29690         return value;
       
 29691       }
       
 29692 
       
 29693       if (value < 0) {
       
 29694         return 0;
       
 29695       } else if (value > 1) {
       
 29696         return 1;
       
 29697       }
       
 29698 
       
 29699       return Math.round(value * 100) / 100;
       
 29700     }
       
 29701   }, {
 29491     key: "handleChange",
 29702     key: "handleChange",
 29492     value: function handleChange(data) {
 29703     value: function handleChange(_ref3) {
 29493       if (data.hex) {
 29704       var source = _ref3.source,
 29494         if (isValidHex(data.hex)) {
 29705           state = _ref3.state,
 29495           this.props.onChange({
 29706           value = _ref3.value,
 29496             hex: data.hex,
 29707           valueKey = _ref3.valueKey;
 29497             source: 'hex'
 29708       this.props.onChange({
 29498           });
 29709         source: source,
 29499         }
 29710         state: state,
 29500       } else if (data.r || data.g || data.b) {
 29711         valueKey: valueKey,
 29501         this.props.onChange({
 29712         value: this.normalizeValue(valueKey, value)
 29502           r: data.r || this.props.rgb.r,
 29713       });
 29503           g: data.g || this.props.rgb.g,
       
 29504           b: data.b || this.props.rgb.b,
       
 29505           source: 'rgb'
       
 29506         });
       
 29507       } else if (data.a) {
       
 29508         if (data.a < 0) {
       
 29509           data.a = 0;
       
 29510         } else if (data.a > 1) {
       
 29511           data.a = 1;
       
 29512         }
       
 29513 
       
 29514         this.props.onChange({
       
 29515           h: this.props.hsl.h,
       
 29516           s: this.props.hsl.s,
       
 29517           l: this.props.hsl.l,
       
 29518           a: Math.round(data.a * 100) / 100,
       
 29519           source: 'rgb'
       
 29520         });
       
 29521       } else if (data.h || data.s || data.l) {
       
 29522         this.props.onChange({
       
 29523           h: data.h || this.props.hsl.h,
       
 29524           s: data.s || this.props.hsl.s,
       
 29525           l: data.l || this.props.hsl.l,
       
 29526           source: 'hsl'
       
 29527         });
       
 29528       }
       
 29529     }
 29714     }
 29530   }, {
 29715   }, {
 29531     key: "renderFields",
 29716     key: "renderFields",
 29532     value: function renderFields() {
 29717     value: function renderFields() {
 29533       var _this$props$disableAl = this.props.disableAlpha,
 29718       var _this$props$disableAl = this.props.disableAlpha,
 29535 
 29720 
 29536       if (this.state.view === 'hex') {
 29721       if (this.state.view === 'hex') {
 29537         return Object(external_this_wp_element_["createElement"])("div", {
 29722         return Object(external_this_wp_element_["createElement"])("div", {
 29538           className: "components-color-picker__inputs-fields"
 29723           className: "components-color-picker__inputs-fields"
 29539         }, Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29724         }, Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29725           source: this.state.view,
 29540           label: Object(external_this_wp_i18n_["__"])('Color value in hexadecimal'),
 29726           label: Object(external_this_wp_i18n_["__"])('Color value in hexadecimal'),
 29541           valueKey: "hex",
 29727           valueKey: "hex",
 29542           value: this.props.hex,
 29728           value: this.props.hex,
 29543           onChange: this.handleChange
 29729           onChange: this.handleChange
 29544         }));
 29730         }));
 29545       } else if (this.state.view === 'rgb') {
 29731       } else if (this.state.view === 'rgb') {
 29546         return Object(external_this_wp_element_["createElement"])("fieldset", null, Object(external_this_wp_element_["createElement"])("legend", {
 29732         var legend = disableAlpha ? Object(external_this_wp_i18n_["__"])('Color value in RGB') : Object(external_this_wp_i18n_["__"])('Color value in RGBA');
 29547           className: "screen-reader-text"
 29733         return Object(external_this_wp_element_["createElement"])("fieldset", null, Object(external_this_wp_element_["createElement"])(visually_hidden, {
 29548         }, Object(external_this_wp_i18n_["__"])('Color value in RGB')), Object(external_this_wp_element_["createElement"])("div", {
 29734           as: "legend"
       
 29735         }, legend), Object(external_this_wp_element_["createElement"])("div", {
 29549           className: "components-color-picker__inputs-fields"
 29736           className: "components-color-picker__inputs-fields"
 29550         }, Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29737         }, Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29738           source: this.state.view,
 29551           label: "r",
 29739           label: "r",
 29552           valueKey: "r",
 29740           valueKey: "r",
 29553           value: this.props.rgb.r,
 29741           value: this.props.rgb.r,
 29554           onChange: this.handleChange,
 29742           onChange: this.handleChange,
 29555           type: "number",
 29743           type: "number",
 29556           min: "0",
 29744           min: "0",
 29557           max: "255"
 29745           max: "255"
 29558         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29746         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29747           source: this.state.view,
 29559           label: "g",
 29748           label: "g",
 29560           valueKey: "g",
 29749           valueKey: "g",
 29561           value: this.props.rgb.g,
 29750           value: this.props.rgb.g,
 29562           onChange: this.handleChange,
 29751           onChange: this.handleChange,
 29563           type: "number",
 29752           type: "number",
 29564           min: "0",
 29753           min: "0",
 29565           max: "255"
 29754           max: "255"
 29566         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29755         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29756           source: this.state.view,
 29567           label: "b",
 29757           label: "b",
 29568           valueKey: "b",
 29758           valueKey: "b",
 29569           value: this.props.rgb.b,
 29759           value: this.props.rgb.b,
 29570           onChange: this.handleChange,
 29760           onChange: this.handleChange,
 29571           type: "number",
 29761           type: "number",
 29572           min: "0",
 29762           min: "0",
 29573           max: "255"
 29763           max: "255"
 29574         }), disableAlpha ? null : Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29764         }), disableAlpha ? null : Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29765           source: this.state.view,
 29575           label: "a",
 29766           label: "a",
 29576           valueKey: "a",
 29767           valueKey: "a",
 29577           value: this.props.rgb.a,
 29768           value: this.props.rgb.a,
 29578           onChange: this.handleChange,
 29769           onChange: this.handleChange,
 29579           type: "number",
 29770           type: "number",
 29580           min: "0",
 29771           min: "0",
 29581           max: "1",
 29772           max: "1",
 29582           step: "0.05"
 29773           step: "0.01"
 29583         })));
 29774         })));
 29584       } else if (this.state.view === 'hsl') {
 29775       } else if (this.state.view === 'hsl') {
 29585         return Object(external_this_wp_element_["createElement"])("fieldset", null, Object(external_this_wp_element_["createElement"])("legend", {
 29776         var _legend = disableAlpha ? Object(external_this_wp_i18n_["__"])('Color value in HSL') : Object(external_this_wp_i18n_["__"])('Color value in HSLA');
 29586           className: "screen-reader-text"
 29777 
 29587         }, Object(external_this_wp_i18n_["__"])('Color value in HSL')), Object(external_this_wp_element_["createElement"])("div", {
 29778         return Object(external_this_wp_element_["createElement"])("fieldset", null, Object(external_this_wp_element_["createElement"])(visually_hidden, {
       
 29779           as: "legend"
       
 29780         }, _legend), Object(external_this_wp_element_["createElement"])("div", {
 29588           className: "components-color-picker__inputs-fields"
 29781           className: "components-color-picker__inputs-fields"
 29589         }, Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29782         }, Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29783           source: this.state.view,
 29590           label: "h",
 29784           label: "h",
 29591           valueKey: "h",
 29785           valueKey: "h",
 29592           value: this.props.hsl.h,
 29786           value: this.props.hsl.h,
 29593           onChange: this.handleChange,
 29787           onChange: this.handleChange,
 29594           type: "number",
 29788           type: "number",
 29595           min: "0",
 29789           min: "0",
 29596           max: "359"
 29790           max: "359"
 29597         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29791         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29792           source: this.state.view,
 29598           label: "s",
 29793           label: "s",
 29599           valueKey: "s",
 29794           valueKey: "s",
 29600           value: this.props.hsl.s,
 29795           value: this.props.hsl.s,
 29601           onChange: this.handleChange,
 29796           onChange: this.handleChange,
 29602           type: "number",
 29797           type: "number",
 29603           min: "0",
 29798           min: "0",
 29604           max: "100"
 29799           max: "100"
 29605         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29800         }), Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29801           source: this.state.view,
 29606           label: "l",
 29802           label: "l",
 29607           valueKey: "l",
 29803           valueKey: "l",
 29608           value: this.props.hsl.l,
 29804           value: this.props.hsl.l,
 29609           onChange: this.handleChange,
 29805           onChange: this.handleChange,
 29610           type: "number",
 29806           type: "number",
 29611           min: "0",
 29807           min: "0",
 29612           max: "100"
 29808           max: "100"
 29613         }), disableAlpha ? null : Object(external_this_wp_element_["createElement"])(inputs_Input, {
 29809         }), disableAlpha ? null : Object(external_this_wp_element_["createElement"])(inputs_Input, {
       
 29810           source: this.state.view,
 29614           label: "a",
 29811           label: "a",
 29615           valueKey: "a",
 29812           valueKey: "a",
 29616           value: this.props.hsl.a,
 29813           value: this.props.hsl.a,
 29617           onChange: this.handleChange,
 29814           onChange: this.handleChange,
 29618           type: "number",
 29815           type: "number",
 29626     key: "render",
 29823     key: "render",
 29627     value: function render() {
 29824     value: function render() {
 29628       return Object(external_this_wp_element_["createElement"])("div", {
 29825       return Object(external_this_wp_element_["createElement"])("div", {
 29629         className: "components-color-picker__inputs-wrapper"
 29826         className: "components-color-picker__inputs-wrapper"
 29630       }, this.renderFields(), Object(external_this_wp_element_["createElement"])("div", {
 29827       }, this.renderFields(), Object(external_this_wp_element_["createElement"])("div", {
 29631         className: "components-color-picker__inputs-toggle"
 29828         className: "components-color-picker__inputs-toggle-wrapper"
 29632       }, Object(external_this_wp_element_["createElement"])(icon_button, {
 29829       }, Object(external_this_wp_element_["createElement"])(PureButton, {
 29633         icon: "arrow-down-alt2",
 29830         className: "components-color-picker__inputs-toggle",
       
 29831         icon: chevron_down["a" /* default */],
 29634         label: Object(external_this_wp_i18n_["__"])('Change color format'),
 29832         label: Object(external_this_wp_i18n_["__"])('Change color format'),
 29635         onClick: this.toggleViews
 29833         onClick: this.toggleViews
 29636       })));
 29834       })));
 29637     }
 29835     }
 29638   }], [{
 29836   }], [{
 29658 
 29856 
 29659 
 29857 
 29660 
 29858 
 29661 
 29859 
 29662 
 29860 
       
 29861 
       
 29862 function saturation_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (saturation_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 29863 
       
 29864 function saturation_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 29663 
 29865 
 29664 /**
 29866 /**
 29665  * Parts of this source were derived and modified from react-color,
 29867  * Parts of this source were derived and modified from react-color,
 29666  * released under the MIT license.
 29868  * released under the MIT license.
 29667  *
 29869  *
 29704  * Internal dependencies
 29906  * Internal dependencies
 29705  */
 29907  */
 29706 
 29908 
 29707 
 29909 
 29708 
 29910 
 29709 var saturation_Saturation =
 29911 
 29710 /*#__PURE__*/
 29912 
 29711 function (_Component) {
 29913 var saturation_Saturation = /*#__PURE__*/function (_Component) {
 29712   Object(inherits["a" /* default */])(Saturation, _Component);
 29914   Object(inherits["a" /* default */])(Saturation, _Component);
       
 29915 
       
 29916   var _super = saturation_createSuper(Saturation);
 29713 
 29917 
 29714   function Saturation(props) {
 29918   function Saturation(props) {
 29715     var _this;
 29919     var _this;
 29716 
 29920 
 29717     Object(classCallCheck["a" /* default */])(this, Saturation);
 29921     Object(classCallCheck["a" /* default */])(this, Saturation);
 29718 
 29922 
 29719     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Saturation).call(this, props));
 29923     _this = _super.call(this, props);
 29720     _this.throttle = Object(external_lodash_["throttle"])(function (fn, data, e) {
 29924     _this.throttle = Object(external_this_lodash_["throttle"])(function (fn, data, e) {
 29721       fn(data, e);
 29925       fn(data, e);
 29722     }, 50);
 29926     }, 50);
 29723     _this.container = Object(external_this_wp_element_["createRef"])();
 29927     _this.container = Object(external_this_wp_element_["createRef"])();
 29724     _this.saturate = _this.saturate.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29928     _this.saturate = _this.saturate.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29725     _this.brighten = _this.brighten.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29929     _this.brighten = _this.brighten.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29726     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29930     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29727     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29931     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29728     _this.handleMouseUp = _this.handleMouseUp.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 29932     _this.handleMouseUp = _this.handleMouseUp.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29729     return _this;
 29933     return _this;
 29730   }
 29934   }
 29731 
 29935 
 29732   Object(createClass["a" /* default */])(Saturation, [{
 29936   Object(createClass["a" /* default */])(Saturation, [{
 29733     key: "componentWillUnmount",
 29937     key: "componentWillUnmount",
 29740     value: function saturate() {
 29944     value: function saturate() {
 29741       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 29945       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 29742       var _this$props = this.props,
 29946       var _this$props = this.props,
 29743           hsv = _this$props.hsv,
 29947           hsv = _this$props.hsv,
 29744           _this$props$onChange = _this$props.onChange,
 29948           _this$props$onChange = _this$props.onChange,
 29745           onChange = _this$props$onChange === void 0 ? external_lodash_["noop"] : _this$props$onChange;
 29949           onChange = _this$props$onChange === void 0 ? external_this_lodash_["noop"] : _this$props$onChange;
 29746       var intSaturation = Object(external_lodash_["clamp"])(hsv.s + Math.round(amount * 100), 0, 100);
 29950       var intSaturation = Object(external_this_lodash_["clamp"])(hsv.s + Math.round(amount * 100), 0, 100);
 29747       var change = {
 29951       var change = {
 29748         h: hsv.h,
 29952         h: hsv.h,
 29749         s: intSaturation,
 29953         s: intSaturation,
 29750         v: hsv.v,
 29954         v: hsv.v,
 29751         a: hsv.a,
 29955         a: hsv.a,
 29758     value: function brighten() {
 29962     value: function brighten() {
 29759       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 29963       var amount = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.01;
 29760       var _this$props2 = this.props,
 29964       var _this$props2 = this.props,
 29761           hsv = _this$props2.hsv,
 29965           hsv = _this$props2.hsv,
 29762           _this$props2$onChange = _this$props2.onChange,
 29966           _this$props2$onChange = _this$props2.onChange,
 29763           onChange = _this$props2$onChange === void 0 ? external_lodash_["noop"] : _this$props2$onChange;
 29967           onChange = _this$props2$onChange === void 0 ? external_this_lodash_["noop"] : _this$props2$onChange;
 29764       var intValue = Object(external_lodash_["clamp"])(hsv.v + Math.round(amount * 100), 0, 100);
 29968       var intValue = Object(external_this_lodash_["clamp"])(hsv.v + Math.round(amount * 100), 0, 100);
 29765       var change = {
 29969       var change = {
 29766         h: hsv.h,
 29970         h: hsv.h,
 29767         s: hsv.s,
 29971         s: hsv.s,
 29768         v: intValue,
 29972         v: intValue,
 29769         a: hsv.a,
 29973         a: hsv.a,
 29773     }
 29977     }
 29774   }, {
 29978   }, {
 29775     key: "handleChange",
 29979     key: "handleChange",
 29776     value: function handleChange(e) {
 29980     value: function handleChange(e) {
 29777       var _this$props$onChange2 = this.props.onChange,
 29981       var _this$props$onChange2 = this.props.onChange,
 29778           onChange = _this$props$onChange2 === void 0 ? external_lodash_["noop"] : _this$props$onChange2;
 29982           onChange = _this$props$onChange2 === void 0 ? external_this_lodash_["noop"] : _this$props$onChange2;
 29779       var change = calculateSaturationChange(e, this.props, this.container.current);
 29983       var change = calculateSaturationChange(e, this.props, this.container.current);
 29780       this.throttle(onChange, change, e);
 29984       this.throttle(onChange, change, e);
 29781     }
 29985     }
 29782   }, {
 29986   }, {
 29783     key: "handleMouseDown",
 29987     key: "handleMouseDown",
 29855         },
 30059         },
 29856         home: function home() {
 30060         home: function home() {
 29857           return _this2.saturate(-1);
 30061           return _this2.saturate(-1);
 29858         }
 30062         }
 29859       };
 30063       };
 29860       /* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/no-noninteractive-element-interactions */
 30064       /* eslint-disable jsx-a11y/no-noninteractive-element-interactions */
 29861 
 30065 
 29862       return Object(external_this_wp_element_["createElement"])(keyboard_shortcuts, {
 30066       return Object(external_this_wp_element_["createElement"])(keyboard_shortcuts, {
 29863         shortcuts: shortcuts
 30067         shortcuts: shortcuts
 29864       }, Object(external_this_wp_element_["createElement"])("div", {
 30068       }, Object(external_this_wp_element_["createElement"])("div", {
 29865         style: {
 30069         style: {
 29873         role: "application"
 30077         role: "application"
 29874       }, Object(external_this_wp_element_["createElement"])("div", {
 30078       }, Object(external_this_wp_element_["createElement"])("div", {
 29875         className: "components-color-picker__saturation-white"
 30079         className: "components-color-picker__saturation-white"
 29876       }), Object(external_this_wp_element_["createElement"])("div", {
 30080       }), Object(external_this_wp_element_["createElement"])("div", {
 29877         className: "components-color-picker__saturation-black"
 30081         className: "components-color-picker__saturation-black"
 29878       }), Object(external_this_wp_element_["createElement"])("button", {
 30082       }), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 29879         "aria-label": Object(external_this_wp_i18n_["__"])('Choose a shade'),
 30083         "aria-label": Object(external_this_wp_i18n_["__"])('Choose a shade'),
 29880         "aria-describedby": "color-picker-saturation-".concat(instanceId),
 30084         "aria-describedby": "color-picker-saturation-".concat(instanceId),
 29881         className: "components-color-picker__saturation-pointer",
 30085         className: "components-color-picker__saturation-pointer",
 29882         style: pointerLocation,
 30086         style: pointerLocation,
 29883         onKeyDown: this.preventKeyEvents
 30087         onKeyDown: this.preventKeyEvents
 29884       }), Object(external_this_wp_element_["createElement"])("div", {
 30088       }), Object(external_this_wp_element_["createElement"])(visually_hidden, {
 29885         className: "screen-reader-text",
       
 29886         id: "color-picker-saturation-".concat(instanceId)
 30089         id: "color-picker-saturation-".concat(instanceId)
 29887       }, Object(external_this_wp_i18n_["__"])('Use your arrow keys to change the base color. Move up to lighten the color, down to darken, left to decrease saturation, and right to increase saturation.'))));
 30090       }, Object(external_this_wp_i18n_["__"])('Use your arrow keys to change the base color. Move up to lighten the color, down to darken, left to decrease saturation, and right to increase saturation.'))));
 29888       /* eslint-enable jsx-a11y/no-static-element-interactions, jsx-a11y/no-noninteractive-element-interactions */
 30091       /* eslint-enable jsx-a11y/no-noninteractive-element-interactions */
 29889     }
 30092     }
 29890   }]);
 30093   }]);
 29891 
 30094 
 29892   return Saturation;
 30095   return Saturation;
 29893 }(external_this_wp_element_["Component"]);
 30096 }(external_this_wp_element_["Component"]);
 29894 /* harmony default export */ var saturation = (Object(external_this_wp_compose_["withInstanceId"])(saturation_Saturation));
 30097 /* harmony default export */ var saturation = (Object(external_this_wp_compose_["compose"])(external_this_wp_compose_["pure"], external_this_wp_compose_["withInstanceId"])(saturation_Saturation));
 29895 
 30098 
 29896 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/index.js
 30099 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-picker/index.js
 29897 
 30100 
 29898 
 30101 
 29899 
 30102 
 29900 
 30103 
 29901 
 30104 
 29902 
 30105 
 29903 
 30106 
       
 30107 
       
 30108 
       
 30109 function color_picker_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (color_picker_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 30110 
       
 30111 function color_picker_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 30112 
       
 30113 function color_picker_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 30114 
       
 30115 function color_picker_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { color_picker_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { color_picker_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 29904 
 30116 
 29905 /**
 30117 /**
 29906  * Parts of this source were derived and modified from react-color,
 30118  * Parts of this source were derived and modified from react-color,
 29907  * released under the MIT license.
 30119  * released under the MIT license.
 29908  *
 30120  *
 29947 
 30159 
 29948 
 30160 
 29949 
 30161 
 29950 
 30162 
 29951 
 30163 
 29952 var color_picker_ColorPicker =
 30164 var toLowerCase = function toLowerCase(value) {
 29953 /*#__PURE__*/
 30165   return String(value).toLowerCase();
 29954 function (_Component) {
 30166 };
       
 30167 
       
 30168 var color_picker_isValueEmpty = function isValueEmpty(data) {
       
 30169   if (data.source === 'hex' && !data.hex) {
       
 30170     return true;
       
 30171   } else if (data.source === 'hsl' && (!data.h || !data.s || !data.l)) {
       
 30172     return true;
       
 30173   } else if (data.source === 'rgb' && (!data.r || !data.g || !data.b) && (!data.h || !data.s || !data.v || !data.a) && (!data.h || !data.s || !data.l || !data.a)) {
       
 30174     return true;
       
 30175   }
       
 30176 
       
 30177   return false;
       
 30178 };
       
 30179 
       
 30180 var color_picker_isValidColor = function isValidColor(colors) {
       
 30181   return colors.hex ? isValidHex(colors.hex) : simpleCheckForValidColor(colors);
       
 30182 };
       
 30183 /**
       
 30184  * Function that creates the new color object
       
 30185  * from old data and the new value.
       
 30186  *
       
 30187  * @param {Object} oldColors The old color object.
       
 30188  * @param {string} oldColors.hex
       
 30189  * @param {Object} oldColors.rgb
       
 30190  * @param {number} oldColors.rgb.r
       
 30191  * @param {number} oldColors.rgb.g
       
 30192  * @param {number} oldColors.rgb.b
       
 30193  * @param {number} oldColors.rgb.a
       
 30194  * @param {Object} oldColors.hsl
       
 30195  * @param {number} oldColors.hsl.h
       
 30196  * @param {number} oldColors.hsl.s
       
 30197  * @param {number} oldColors.hsl.l
       
 30198  * @param {number} oldColors.hsl.a
       
 30199  * @param {string} oldColors.draftHex Same format as oldColors.hex
       
 30200  * @param {Object} oldColors.draftRgb Same format as oldColors.rgb
       
 30201  * @param {Object} oldColors.draftHsl Same format as oldColors.hsl
       
 30202  * @param {Object} data Data containing the new value to update.
       
 30203  * @param {Object} data.source One of `hex`, `rgb`, `hsl`.
       
 30204  * @param {string|number} data.value Value to update.
       
 30205  * @param {string} data.valueKey Depends on `data.source` values:
       
 30206  *   - when source = `rgb`, valuKey can be `r`, `g`, `b`, or `a`.
       
 30207  *   - when source = `hsl`, valuKey can be `h`, `s`, `l`, or `a`.
       
 30208  * @return {Object} A new color object for a specific source. For example:
       
 30209  * { source: 'rgb', r: 1, g: 2, b:3, a:0 }
       
 30210  */
       
 30211 
       
 30212 
       
 30213 var color_picker_dataToColors = function dataToColors(oldColors, _ref) {
       
 30214   var source = _ref.source,
       
 30215       valueKey = _ref.valueKey,
       
 30216       value = _ref.value;
       
 30217 
       
 30218   if (source === 'hex') {
       
 30219     return Object(defineProperty["a" /* default */])({
       
 30220       source: source
       
 30221     }, source, value);
       
 30222   }
       
 30223 
       
 30224   return color_picker_objectSpread({
       
 30225     source: source
       
 30226   }, color_picker_objectSpread({}, oldColors[source], {}, Object(defineProperty["a" /* default */])({}, valueKey, value)));
       
 30227 };
       
 30228 
       
 30229 var color_picker_ColorPicker = /*#__PURE__*/function (_Component) {
 29955   Object(inherits["a" /* default */])(ColorPicker, _Component);
 30230   Object(inherits["a" /* default */])(ColorPicker, _Component);
 29956 
 30231 
 29957   function ColorPicker(_ref) {
 30232   var _super = color_picker_createSuper(ColorPicker);
       
 30233 
       
 30234   function ColorPicker(_ref3) {
 29958     var _this;
 30235     var _this;
 29959 
 30236 
 29960     var _ref$color = _ref.color,
 30237     var _ref3$color = _ref3.color,
 29961         color = _ref$color === void 0 ? '0071a1' : _ref$color;
 30238         color = _ref3$color === void 0 ? '0071a1' : _ref3$color;
 29962 
 30239 
 29963     Object(classCallCheck["a" /* default */])(this, ColorPicker);
 30240     Object(classCallCheck["a" /* default */])(this, ColorPicker);
 29964 
 30241 
 29965     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ColorPicker).apply(this, arguments));
 30242     _this = _super.apply(this, arguments);
 29966     _this.state = colorToState(color);
 30243     var colors = colorToState(color);
 29967     _this.handleChange = _this.handleChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 30244     _this.state = color_picker_objectSpread({}, colors, {
       
 30245       draftHex: toLowerCase(colors.hex),
       
 30246       draftRgb: colors.rgb,
       
 30247       draftHsl: colors.hsl
       
 30248     });
       
 30249     _this.commitValues = _this.commitValues.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 30250     _this.setDraftValues = _this.setDraftValues.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 30251     _this.resetDraftValues = _this.resetDraftValues.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 30252     _this.handleInputChange = _this.handleInputChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 29968     return _this;
 30253     return _this;
 29969   }
 30254   }
 29970 
 30255 
 29971   Object(createClass["a" /* default */])(ColorPicker, [{
 30256   Object(createClass["a" /* default */])(ColorPicker, [{
 29972     key: "handleChange",
 30257     key: "commitValues",
 29973     value: function handleChange(data) {
 30258     value: function commitValues(data) {
 29974       var _this$props = this.props,
 30259       var _this$props = this.props,
 29975           oldHue = _this$props.oldHue,
 30260           oldHue = _this$props.oldHue,
 29976           _this$props$onChangeC = _this$props.onChangeComplete,
 30261           _this$props$onChangeC = _this$props.onChangeComplete,
 29977           onChangeComplete = _this$props$onChangeC === void 0 ? external_lodash_["noop"] : _this$props$onChangeC;
 30262           onChangeComplete = _this$props$onChangeC === void 0 ? external_this_lodash_["noop"] : _this$props$onChangeC;
 29978       var isValidColor = simpleCheckForValidColor(data);
 30263 
 29979 
 30264       if (color_picker_isValidColor(data)) {
 29980       if (isValidColor) {
       
 29981         var colors = colorToState(data, data.h || oldHue);
 30265         var colors = colorToState(data, data.h || oldHue);
 29982         this.setState(colors, Object(external_lodash_["debounce"])(Object(external_lodash_["partial"])(onChangeComplete, colors), 100));
 30266         this.setState(color_picker_objectSpread({}, colors, {
       
 30267           draftHex: toLowerCase(colors.hex),
       
 30268           draftHsl: colors.hsl,
       
 30269           draftRgb: colors.rgb
       
 30270         }), Object(external_this_lodash_["debounce"])(Object(external_this_lodash_["partial"])(onChangeComplete, colors), 100));
       
 30271       }
       
 30272     }
       
 30273   }, {
       
 30274     key: "resetDraftValues",
       
 30275     value: function resetDraftValues() {
       
 30276       this.setState({
       
 30277         draftHex: this.state.hex,
       
 30278         draftHsl: this.state.hsl,
       
 30279         draftRgb: this.state.rgb
       
 30280       });
       
 30281     }
       
 30282   }, {
       
 30283     key: "setDraftValues",
       
 30284     value: function setDraftValues(data) {
       
 30285       switch (data.source) {
       
 30286         case 'hex':
       
 30287           this.setState({
       
 30288             draftHex: toLowerCase(data.hex)
       
 30289           });
       
 30290           break;
       
 30291 
       
 30292         case 'rgb':
       
 30293           this.setState({
       
 30294             draftRgb: data
       
 30295           });
       
 30296           break;
       
 30297 
       
 30298         case 'hsl':
       
 30299           this.setState({
       
 30300             draftHsl: data
       
 30301           });
       
 30302           break;
       
 30303       }
       
 30304     }
       
 30305   }, {
       
 30306     key: "handleInputChange",
       
 30307     value: function handleInputChange(data) {
       
 30308       switch (data.state) {
       
 30309         case 'reset':
       
 30310           this.resetDraftValues();
       
 30311           break;
       
 30312 
       
 30313         case 'commit':
       
 30314           var colors = color_picker_dataToColors(this.state, data);
       
 30315 
       
 30316           if (!color_picker_isValueEmpty(colors)) {
       
 30317             this.commitValues(colors);
       
 30318           }
       
 30319 
       
 30320           break;
       
 30321 
       
 30322         case 'draft':
       
 30323           this.setDraftValues(color_picker_dataToColors(this.state, data));
       
 30324           break;
 29983       }
 30325       }
 29984     }
 30326     }
 29985   }, {
 30327   }, {
 29986     key: "render",
 30328     key: "render",
 29987     value: function render() {
 30329     value: function render() {
 29988       var _this$props2 = this.props,
 30330       var _this$props2 = this.props,
 29989           className = _this$props2.className,
 30331           className = _this$props2.className,
 29990           disableAlpha = _this$props2.disableAlpha;
 30332           disableAlpha = _this$props2.disableAlpha;
 29991       var _this$state = this.state,
 30333       var _this$state = this.state,
 29992           color = _this$state.color,
 30334           color = _this$state.color,
 29993           hex = _this$state.hex,
       
 29994           hsl = _this$state.hsl,
 30335           hsl = _this$state.hsl,
 29995           hsv = _this$state.hsv,
 30336           hsv = _this$state.hsv,
 29996           rgb = _this$state.rgb;
 30337           rgb = _this$state.rgb,
       
 30338           draftHex = _this$state.draftHex,
       
 30339           draftHsl = _this$state.draftHsl,
       
 30340           draftRgb = _this$state.draftRgb;
 29997       var classes = classnames_default()(className, {
 30341       var classes = classnames_default()(className, {
 29998         'components-color-picker': true,
 30342         'components-color-picker': true,
 29999         'is-alpha-disabled': disableAlpha,
 30343         'is-alpha-disabled': disableAlpha,
 30000         'is-alpha-enabled': !disableAlpha
 30344         'is-alpha-enabled': !disableAlpha
 30001       });
 30345       });
 30004       }, Object(external_this_wp_element_["createElement"])("div", {
 30348       }, Object(external_this_wp_element_["createElement"])("div", {
 30005         className: "components-color-picker__saturation"
 30349         className: "components-color-picker__saturation"
 30006       }, Object(external_this_wp_element_["createElement"])(saturation, {
 30350       }, Object(external_this_wp_element_["createElement"])(saturation, {
 30007         hsl: hsl,
 30351         hsl: hsl,
 30008         hsv: hsv,
 30352         hsv: hsv,
 30009         onChange: this.handleChange
 30353         onChange: this.commitValues
 30010       })), Object(external_this_wp_element_["createElement"])("div", {
 30354       })), Object(external_this_wp_element_["createElement"])("div", {
 30011         className: "components-color-picker__body"
 30355         className: "components-color-picker__body"
 30012       }, Object(external_this_wp_element_["createElement"])("div", {
 30356       }, Object(external_this_wp_element_["createElement"])("div", {
 30013         className: "components-color-picker__controls"
 30357         className: "components-color-picker__controls"
 30014       }, Object(external_this_wp_element_["createElement"])("div", {
 30358       }, Object(external_this_wp_element_["createElement"])("div", {
 30020         }
 30364         }
 30021       })), Object(external_this_wp_element_["createElement"])("div", {
 30365       })), Object(external_this_wp_element_["createElement"])("div", {
 30022         className: "components-color-picker__toggles"
 30366         className: "components-color-picker__toggles"
 30023       }, Object(external_this_wp_element_["createElement"])(hue, {
 30367       }, Object(external_this_wp_element_["createElement"])(hue, {
 30024         hsl: hsl,
 30368         hsl: hsl,
 30025         onChange: this.handleChange
 30369         onChange: this.commitValues
 30026       }), disableAlpha ? null : Object(external_this_wp_element_["createElement"])(alpha, {
 30370       }), disableAlpha ? null : Object(external_this_wp_element_["createElement"])(color_picker_alpha, {
 30027         rgb: rgb,
 30371         rgb: rgb,
 30028         hsl: hsl,
 30372         hsl: hsl,
 30029         onChange: this.handleChange
 30373         onChange: this.commitValues
 30030       }))), Object(external_this_wp_element_["createElement"])(inputs, {
 30374       }))), Object(external_this_wp_element_["createElement"])(inputs, {
 30031         rgb: rgb,
 30375         rgb: draftRgb,
 30032         hsl: hsl,
 30376         hsl: draftHsl,
 30033         hex: hex,
 30377         hex: draftHex,
 30034         onChange: this.handleChange,
 30378         onChange: this.handleInputChange,
 30035         disableAlpha: disableAlpha
 30379         disableAlpha: disableAlpha
 30036       })));
 30380       })));
 30037     }
 30381     }
 30038   }]);
 30382   }]);
 30039 
 30383 
 30040   return ColorPicker;
 30384   return ColorPicker;
 30041 }(external_this_wp_element_["Component"]);
 30385 }(external_this_wp_element_["Component"]);
 30042 
 30386 
 30043 
 30387 
 30044 
 30388 
 30045 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-palette/index.js
 30389 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dropdown/index.js
       
 30390 
       
 30391 
 30046 
 30392 
 30047 
 30393 
 30048 /**
 30394 /**
 30049  * External dependencies
 30395  * External dependencies
 30050  */
 30396  */
 30051 
 30397 
 30052 
       
 30053 /**
 30398 /**
 30054  * WordPress dependencies
 30399  * WordPress dependencies
 30055  */
 30400  */
 30056 
 30401 
 30057 
 30402 
 30059  * Internal dependencies
 30404  * Internal dependencies
 30060  */
 30405  */
 30061 
 30406 
 30062 
 30407 
 30063 
 30408 
 30064 
 30409 function useObservableState(initialState, onStateChange) {
 30065 
 30410   var _useState = Object(external_this_wp_element_["useState"])(initialState),
 30066 
 30411       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
 30067 function ColorPalette(_ref) {
 30412       state = _useState2[0],
 30068   var colors = _ref.colors,
 30413       setState = _useState2[1];
 30069       _ref$disableCustomCol = _ref.disableCustomColors,
 30414 
 30070       disableCustomColors = _ref$disableCustomCol === void 0 ? false : _ref$disableCustomCol,
 30415   return [state, function (value) {
 30071       value = _ref.value,
 30416     setState(value);
 30072       onChange = _ref.onChange,
 30417 
 30073       className = _ref.className;
 30418     if (onStateChange) {
 30074 
 30419       onStateChange(value);
 30075   function applyOrUnset(color) {
 30420     }
       
 30421   }];
       
 30422 }
       
 30423 
       
 30424 function Dropdown(_ref) {
       
 30425   var renderContent = _ref.renderContent,
       
 30426       renderToggle = _ref.renderToggle,
       
 30427       _ref$position = _ref.position,
       
 30428       position = _ref$position === void 0 ? 'bottom right' : _ref$position,
       
 30429       className = _ref.className,
       
 30430       contentClassName = _ref.contentClassName,
       
 30431       expandOnMobile = _ref.expandOnMobile,
       
 30432       headerTitle = _ref.headerTitle,
       
 30433       focusOnMount = _ref.focusOnMount,
       
 30434       popoverProps = _ref.popoverProps,
       
 30435       onClose = _ref.onClose,
       
 30436       onToggle = _ref.onToggle;
       
 30437   var containerRef = Object(external_this_wp_element_["useRef"])();
       
 30438 
       
 30439   var _useObservableState = useObservableState(false, onToggle),
       
 30440       _useObservableState2 = Object(slicedToArray["a" /* default */])(_useObservableState, 2),
       
 30441       isOpen = _useObservableState2[0],
       
 30442       setIsOpen = _useObservableState2[1];
       
 30443 
       
 30444   Object(external_this_wp_element_["useEffect"])(function () {
 30076     return function () {
 30445     return function () {
 30077       return onChange(value === color ? undefined : color);
 30446       if (onToggle) {
       
 30447         onToggle(false);
       
 30448       }
 30078     };
 30449     };
 30079   }
 30450   }, []);
 30080 
 30451 
 30081   var customColorPickerLabel = Object(external_this_wp_i18n_["__"])('Custom color picker');
 30452   function toggle() {
 30082 
 30453     setIsOpen(!isOpen);
 30083   var classes = classnames_default()('components-color-palette', className);
 30454   }
       
 30455   /**
       
 30456    * Closes the dropdown if a focus leaves the dropdown wrapper. This is
       
 30457    * intentionally distinct from `onClose` since focus loss from the popover
       
 30458    * is expected to occur when using the Dropdown's toggle button, in which
       
 30459    * case the correct behavior is to keep the dropdown closed. The same applies
       
 30460    * in case when focus is moved to the modal dialog.
       
 30461    */
       
 30462 
       
 30463 
       
 30464   function closeIfFocusOutside() {
       
 30465     if (!containerRef.current.contains(document.activeElement) && !document.activeElement.closest('[role="dialog"]')) {
       
 30466       close();
       
 30467     }
       
 30468   }
       
 30469 
       
 30470   function close() {
       
 30471     if (onClose) {
       
 30472       onClose();
       
 30473     }
       
 30474 
       
 30475     setIsOpen(false);
       
 30476   }
       
 30477 
       
 30478   var args = {
       
 30479     isOpen: isOpen,
       
 30480     onToggle: toggle,
       
 30481     onClose: close
       
 30482   };
 30084   return Object(external_this_wp_element_["createElement"])("div", {
 30483   return Object(external_this_wp_element_["createElement"])("div", {
 30085     className: classes
 30484     className: classnames_default()('components-dropdown', className),
 30086   }, Object(external_lodash_["map"])(colors, function (_ref2) {
 30485     ref: containerRef
 30087     var color = _ref2.color,
 30486   }, renderToggle(args), isOpen && Object(external_this_wp_element_["createElement"])(popover["a" /* default */], Object(esm_extends["a" /* default */])({
 30088         name = _ref2.name;
 30487     position: position,
 30089     var style = {
 30488     onClose: close,
 30090       color: color
 30489     onFocusOutside: closeIfFocusOutside,
 30091     };
 30490     expandOnMobile: expandOnMobile,
 30092     var itemClasses = classnames_default()('components-color-palette__item', {
 30491     headerTitle: headerTitle,
 30093       'is-active': value === color
 30492     focusOnMount: focusOnMount
 30094     });
 30493   }, popoverProps, {
 30095     return Object(external_this_wp_element_["createElement"])("div", {
 30494     anchorRef: containerRef.current,
 30096       key: color,
 30495     className: classnames_default()('components-dropdown__content', popoverProps ? popoverProps.className : undefined, contentClassName)
 30097       className: "components-color-palette__item-wrapper"
 30496   }), renderContent(args)));
 30098     }, Object(external_this_wp_element_["createElement"])(build_module_tooltip, {
 30497 }
 30099       text: name || // translators: %s: color hex code e.g: "#f00".
 30498 
 30100       Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Color code: %s'), color)
 30499 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/circular-option-picker/index.js
 30101     }, Object(external_this_wp_element_["createElement"])("button", {
 30500 
 30102       type: "button",
 30501 
 30103       className: itemClasses,
 30502 
 30104       style: style,
 30503 
 30105       onClick: applyOrUnset(color),
 30504 /**
 30106       "aria-label": name ? // translators: %s: The name of the color e.g: "vivid red".
 30505  * External dependencies
 30107       Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Color: %s'), name) : // translators: %s: color hex code e.g: "#f00".
 30506  */
 30108       Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Color code: %s'), color),
 30507 
 30109       "aria-pressed": value === color
 30508 /**
 30110     })), value === color && Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
 30509  * WordPress dependencies
 30111       icon: "saved"
 30510  */
 30112     }));
 30511 
 30113   }), Object(external_this_wp_element_["createElement"])("div", {
 30512 
 30114     className: "components-color-palette__custom-clear-wrapper"
 30513 /**
 30115   }, !disableCustomColors && Object(external_this_wp_element_["createElement"])(dropdown, {
 30514  * Internal dependencies
 30116     className: "components-color-palette__custom-color",
 30515  */
 30117     contentClassName: "components-color-palette__picker",
 30516 
       
 30517 
       
 30518 
       
 30519 
       
 30520 
       
 30521 function Option(_ref) {
       
 30522   var className = _ref.className,
       
 30523       isSelected = _ref.isSelected,
       
 30524       selectedIconProps = _ref.selectedIconProps,
       
 30525       tooltipText = _ref.tooltipText,
       
 30526       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "isSelected", "selectedIconProps", "tooltipText"]);
       
 30527 
       
 30528   var optionButton = Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
       
 30529     isPressed: isSelected,
       
 30530     className: classnames_default()(className, 'components-circular-option-picker__option')
       
 30531   }, additionalProps));
       
 30532   return Object(external_this_wp_element_["createElement"])("div", {
       
 30533     className: "components-circular-option-picker__option-wrapper"
       
 30534   }, tooltipText ? Object(external_this_wp_element_["createElement"])(build_module_tooltip["a" /* default */], {
       
 30535     text: tooltipText
       
 30536   }, optionButton) : optionButton, isSelected && Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], Object(esm_extends["a" /* default */])({
       
 30537     icon: check["a" /* default */]
       
 30538   }, selectedIconProps ? selectedIconProps : {})));
       
 30539 }
       
 30540 
       
 30541 function DropdownLinkAction(_ref2) {
       
 30542   var buttonProps = _ref2.buttonProps,
       
 30543       className = _ref2.className,
       
 30544       dropdownProps = _ref2.dropdownProps,
       
 30545       linkText = _ref2.linkText;
       
 30546   return Object(external_this_wp_element_["createElement"])(Dropdown, Object(esm_extends["a" /* default */])({
       
 30547     className: classnames_default()('components-circular-option-picker__dropdown-link-action', className),
 30118     renderToggle: function renderToggle(_ref3) {
 30548     renderToggle: function renderToggle(_ref3) {
 30119       var isOpen = _ref3.isOpen,
 30549       var isOpen = _ref3.isOpen,
 30120           onToggle = _ref3.onToggle;
 30550           onToggle = _ref3.onToggle;
 30121       return Object(external_this_wp_element_["createElement"])(build_module_button, {
 30551       return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
 30122         "aria-expanded": isOpen,
 30552         "aria-expanded": isOpen,
 30123         onClick: onToggle,
 30553         onClick: onToggle,
 30124         "aria-label": customColorPickerLabel,
       
 30125         isLink: true
 30554         isLink: true
 30126       }, Object(external_this_wp_i18n_["__"])('Custom Color'));
 30555       }, buttonProps), linkText);
       
 30556     }
       
 30557   }, dropdownProps));
       
 30558 }
       
 30559 
       
 30560 function ButtonAction(_ref4) {
       
 30561   var className = _ref4.className,
       
 30562       children = _ref4.children,
       
 30563       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref4, ["className", "children"]);
       
 30564 
       
 30565   return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
       
 30566     className: classnames_default()('components-circular-option-picker__clear', className),
       
 30567     isSmall: true,
       
 30568     isSecondary: true
       
 30569   }, additionalProps), children);
       
 30570 }
       
 30571 
       
 30572 function CircularOptionPicker(_ref5) {
       
 30573   var actions = _ref5.actions,
       
 30574       className = _ref5.className,
       
 30575       options = _ref5.options,
       
 30576       children = _ref5.children;
       
 30577   return Object(external_this_wp_element_["createElement"])("div", {
       
 30578     className: classnames_default()('components-circular-option-picker', className)
       
 30579   }, options, children, actions && Object(external_this_wp_element_["createElement"])("div", {
       
 30580     className: "components-circular-option-picker__custom-clear-wrapper"
       
 30581   }, actions));
       
 30582 }
       
 30583 CircularOptionPicker.Option = Option;
       
 30584 CircularOptionPicker.ButtonAction = ButtonAction;
       
 30585 CircularOptionPicker.DropdownLinkAction = DropdownLinkAction;
       
 30586 
       
 30587 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/color-palette/index.js
       
 30588 
       
 30589 
       
 30590 /**
       
 30591  * External dependencies
       
 30592  */
       
 30593 
       
 30594 
       
 30595 /**
       
 30596  * WordPress dependencies
       
 30597  */
       
 30598 
       
 30599 
       
 30600 
       
 30601 /**
       
 30602  * Internal dependencies
       
 30603  */
       
 30604 
       
 30605 
       
 30606 
       
 30607 function ColorPalette(_ref) {
       
 30608   var _ref$clearable = _ref.clearable,
       
 30609       clearable = _ref$clearable === void 0 ? true : _ref$clearable,
       
 30610       className = _ref.className,
       
 30611       colors = _ref.colors,
       
 30612       _ref$disableCustomCol = _ref.disableCustomColors,
       
 30613       disableCustomColors = _ref$disableCustomCol === void 0 ? false : _ref$disableCustomCol,
       
 30614       onChange = _ref.onChange,
       
 30615       value = _ref.value;
       
 30616   var clearColor = Object(external_this_wp_element_["useCallback"])(function () {
       
 30617     return onChange(undefined);
       
 30618   }, [onChange]);
       
 30619   var colorOptions = Object(external_this_wp_element_["useMemo"])(function () {
       
 30620     return Object(external_this_lodash_["map"])(colors, function (_ref2) {
       
 30621       var color = _ref2.color,
       
 30622           name = _ref2.name;
       
 30623       return Object(external_this_wp_element_["createElement"])(CircularOptionPicker.Option, {
       
 30624         key: color,
       
 30625         isSelected: value === color,
       
 30626         selectedIconProps: value === color ? {
       
 30627           fill: tinycolor_default.a.mostReadable(color, ['#000', '#fff']).toHexString()
       
 30628         } : {},
       
 30629         tooltipText: name || // translators: %s: color hex code e.g: "#f00".
       
 30630         Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Color code: %s'), color),
       
 30631         style: {
       
 30632           backgroundColor: color,
       
 30633           color: color
       
 30634         },
       
 30635         onClick: value === color ? clearColor : function () {
       
 30636           return onChange(color);
       
 30637         },
       
 30638         "aria-label": name ? // translators: %s: The name of the color e.g: "vivid red".
       
 30639         Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Color: %s'), name) : // translators: %s: color hex code e.g: "#f00".
       
 30640         Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Color code: %s'), color)
       
 30641       });
       
 30642     });
       
 30643   }, [colors, value, onChange, clearColor]);
       
 30644 
       
 30645   var renderCustomColorPicker = function renderCustomColorPicker() {
       
 30646     return Object(external_this_wp_element_["createElement"])(color_picker_ColorPicker, {
       
 30647       color: value,
       
 30648       onChangeComplete: function onChangeComplete(color) {
       
 30649         return onChange(color.hex);
       
 30650       },
       
 30651       disableAlpha: true
       
 30652     });
       
 30653   };
       
 30654 
       
 30655   return Object(external_this_wp_element_["createElement"])(CircularOptionPicker, {
       
 30656     className: className,
       
 30657     options: colorOptions,
       
 30658     actions: Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, !disableCustomColors && Object(external_this_wp_element_["createElement"])(CircularOptionPicker.DropdownLinkAction, {
       
 30659       dropdownProps: {
       
 30660         renderContent: renderCustomColorPicker,
       
 30661         contentClassName: 'components-color-palette__picker'
       
 30662       },
       
 30663       buttonProps: {
       
 30664         'aria-label': Object(external_this_wp_i18n_["__"])('Custom color picker')
       
 30665       },
       
 30666       linkText: Object(external_this_wp_i18n_["__"])('Custom color')
       
 30667     }), !!clearable && Object(external_this_wp_element_["createElement"])(CircularOptionPicker.ButtonAction, {
       
 30668       onClick: clearColor
       
 30669     }, Object(external_this_wp_i18n_["__"])('Clear')))
       
 30670   });
       
 30671 }
       
 30672 
       
 30673 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js
       
 30674 var objectWithoutPropertiesLoose = __webpack_require__(41);
       
 30675 
       
 30676 // CONCATENATED MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
       
 30677 function inheritsLoose_inheritsLoose(subClass, superClass) {
       
 30678   subClass.prototype = Object.create(superClass.prototype);
       
 30679   subClass.prototype.constructor = subClass;
       
 30680   subClass.__proto__ = superClass;
       
 30681 }
       
 30682 // EXTERNAL MODULE: ./node_modules/prop-types/index.js
       
 30683 var prop_types = __webpack_require__(28);
       
 30684 var prop_types_default = /*#__PURE__*/__webpack_require__.n(prop_types);
       
 30685 
       
 30686 // EXTERNAL MODULE: ./node_modules/downshift/node_modules/react-is/index.js
       
 30687 var react_is = __webpack_require__(194);
       
 30688 
       
 30689 // CONCATENATED MODULE: ./node_modules/compute-scroll-into-view/es/index.js
       
 30690 function isElement(el) {
       
 30691   return el != null && typeof el === 'object' && el.nodeType === 1;
       
 30692 }
       
 30693 
       
 30694 function canOverflow(overflow, skipOverflowHiddenElements) {
       
 30695   if (skipOverflowHiddenElements && overflow === 'hidden') {
       
 30696     return false;
       
 30697   }
       
 30698 
       
 30699   return overflow !== 'visible' && overflow !== 'clip';
       
 30700 }
       
 30701 
       
 30702 function getFrameElement(el) {
       
 30703   if (!el.ownerDocument || !el.ownerDocument.defaultView) {
       
 30704     return null;
       
 30705   }
       
 30706 
       
 30707   try {
       
 30708     return el.ownerDocument.defaultView.frameElement;
       
 30709   } catch (e) {
       
 30710     return null;
       
 30711   }
       
 30712 }
       
 30713 
       
 30714 function isHiddenByFrame(el) {
       
 30715   var frame = getFrameElement(el);
       
 30716 
       
 30717   if (!frame) {
       
 30718     return false;
       
 30719   }
       
 30720 
       
 30721   return frame.clientHeight < el.scrollHeight || frame.clientWidth < el.scrollWidth;
       
 30722 }
       
 30723 
       
 30724 function isScrollable(el, skipOverflowHiddenElements) {
       
 30725   if (el.clientHeight < el.scrollHeight || el.clientWidth < el.scrollWidth) {
       
 30726     var style = getComputedStyle(el, null);
       
 30727     return canOverflow(style.overflowY, skipOverflowHiddenElements) || canOverflow(style.overflowX, skipOverflowHiddenElements) || isHiddenByFrame(el);
       
 30728   }
       
 30729 
       
 30730   return false;
       
 30731 }
       
 30732 
       
 30733 function alignNearest(scrollingEdgeStart, scrollingEdgeEnd, scrollingSize, scrollingBorderStart, scrollingBorderEnd, elementEdgeStart, elementEdgeEnd, elementSize) {
       
 30734   if (elementEdgeStart < scrollingEdgeStart && elementEdgeEnd > scrollingEdgeEnd || elementEdgeStart > scrollingEdgeStart && elementEdgeEnd < scrollingEdgeEnd) {
       
 30735     return 0;
       
 30736   }
       
 30737 
       
 30738   if (elementEdgeStart <= scrollingEdgeStart && elementSize <= scrollingSize || elementEdgeEnd >= scrollingEdgeEnd && elementSize >= scrollingSize) {
       
 30739     return elementEdgeStart - scrollingEdgeStart - scrollingBorderStart;
       
 30740   }
       
 30741 
       
 30742   if (elementEdgeEnd > scrollingEdgeEnd && elementSize < scrollingSize || elementEdgeStart < scrollingEdgeStart && elementSize > scrollingSize) {
       
 30743     return elementEdgeEnd - scrollingEdgeEnd + scrollingBorderEnd;
       
 30744   }
       
 30745 
       
 30746   return 0;
       
 30747 }
       
 30748 
       
 30749 /* harmony default export */ var es = (function (target, options) {
       
 30750   var scrollMode = options.scrollMode,
       
 30751       block = options.block,
       
 30752       inline = options.inline,
       
 30753       boundary = options.boundary,
       
 30754       skipOverflowHiddenElements = options.skipOverflowHiddenElements;
       
 30755   var checkBoundary = typeof boundary === 'function' ? boundary : function (node) {
       
 30756     return node !== boundary;
       
 30757   };
       
 30758 
       
 30759   if (!isElement(target)) {
       
 30760     throw new TypeError('Invalid target');
       
 30761   }
       
 30762 
       
 30763   var scrollingElement = document.scrollingElement || document.documentElement;
       
 30764   var frames = [];
       
 30765   var cursor = target;
       
 30766 
       
 30767   while (isElement(cursor) && checkBoundary(cursor)) {
       
 30768     cursor = cursor.parentNode;
       
 30769 
       
 30770     if (cursor === scrollingElement) {
       
 30771       frames.push(cursor);
       
 30772       break;
       
 30773     }
       
 30774 
       
 30775     if (cursor === document.body && isScrollable(cursor) && !isScrollable(document.documentElement)) {
       
 30776       continue;
       
 30777     }
       
 30778 
       
 30779     if (isScrollable(cursor, skipOverflowHiddenElements)) {
       
 30780       frames.push(cursor);
       
 30781     }
       
 30782   }
       
 30783 
       
 30784   var viewportWidth = window.visualViewport ? visualViewport.width : innerWidth;
       
 30785   var viewportHeight = window.visualViewport ? visualViewport.height : innerHeight;
       
 30786   var viewportX = window.scrollX || pageXOffset;
       
 30787   var viewportY = window.scrollY || pageYOffset;
       
 30788 
       
 30789   var _target$getBoundingCl = target.getBoundingClientRect(),
       
 30790       targetHeight = _target$getBoundingCl.height,
       
 30791       targetWidth = _target$getBoundingCl.width,
       
 30792       targetTop = _target$getBoundingCl.top,
       
 30793       targetRight = _target$getBoundingCl.right,
       
 30794       targetBottom = _target$getBoundingCl.bottom,
       
 30795       targetLeft = _target$getBoundingCl.left;
       
 30796 
       
 30797   var targetBlock = block === 'start' || block === 'nearest' ? targetTop : block === 'end' ? targetBottom : targetTop + targetHeight / 2;
       
 30798   var targetInline = inline === 'center' ? targetLeft + targetWidth / 2 : inline === 'end' ? targetRight : targetLeft;
       
 30799   var computations = [];
       
 30800 
       
 30801   for (var index = 0; index < frames.length; index++) {
       
 30802     var frame = frames[index];
       
 30803 
       
 30804     var _frame$getBoundingCli = frame.getBoundingClientRect(),
       
 30805         height = _frame$getBoundingCli.height,
       
 30806         width = _frame$getBoundingCli.width,
       
 30807         top = _frame$getBoundingCli.top,
       
 30808         right = _frame$getBoundingCli.right,
       
 30809         bottom = _frame$getBoundingCli.bottom,
       
 30810         left = _frame$getBoundingCli.left;
       
 30811 
       
 30812     if (scrollMode === 'if-needed' && targetTop >= 0 && targetLeft >= 0 && targetBottom <= viewportHeight && targetRight <= viewportWidth && targetTop >= top && targetBottom <= bottom && targetLeft >= left && targetRight <= right) {
       
 30813       return computations;
       
 30814     }
       
 30815 
       
 30816     var frameStyle = getComputedStyle(frame);
       
 30817     var borderLeft = parseInt(frameStyle.borderLeftWidth, 10);
       
 30818     var borderTop = parseInt(frameStyle.borderTopWidth, 10);
       
 30819     var borderRight = parseInt(frameStyle.borderRightWidth, 10);
       
 30820     var borderBottom = parseInt(frameStyle.borderBottomWidth, 10);
       
 30821     var blockScroll = 0;
       
 30822     var inlineScroll = 0;
       
 30823     var scrollbarWidth = 'offsetWidth' in frame ? frame.offsetWidth - frame.clientWidth - borderLeft - borderRight : 0;
       
 30824     var scrollbarHeight = 'offsetHeight' in frame ? frame.offsetHeight - frame.clientHeight - borderTop - borderBottom : 0;
       
 30825 
       
 30826     if (scrollingElement === frame) {
       
 30827       if (block === 'start') {
       
 30828         blockScroll = targetBlock;
       
 30829       } else if (block === 'end') {
       
 30830         blockScroll = targetBlock - viewportHeight;
       
 30831       } else if (block === 'nearest') {
       
 30832         blockScroll = alignNearest(viewportY, viewportY + viewportHeight, viewportHeight, borderTop, borderBottom, viewportY + targetBlock, viewportY + targetBlock + targetHeight, targetHeight);
       
 30833       } else {
       
 30834         blockScroll = targetBlock - viewportHeight / 2;
       
 30835       }
       
 30836 
       
 30837       if (inline === 'start') {
       
 30838         inlineScroll = targetInline;
       
 30839       } else if (inline === 'center') {
       
 30840         inlineScroll = targetInline - viewportWidth / 2;
       
 30841       } else if (inline === 'end') {
       
 30842         inlineScroll = targetInline - viewportWidth;
       
 30843       } else {
       
 30844         inlineScroll = alignNearest(viewportX, viewportX + viewportWidth, viewportWidth, borderLeft, borderRight, viewportX + targetInline, viewportX + targetInline + targetWidth, targetWidth);
       
 30845       }
       
 30846 
       
 30847       blockScroll = Math.max(0, blockScroll + viewportY);
       
 30848       inlineScroll = Math.max(0, inlineScroll + viewportX);
       
 30849     } else {
       
 30850       if (block === 'start') {
       
 30851         blockScroll = targetBlock - top - borderTop;
       
 30852       } else if (block === 'end') {
       
 30853         blockScroll = targetBlock - bottom + borderBottom + scrollbarHeight;
       
 30854       } else if (block === 'nearest') {
       
 30855         blockScroll = alignNearest(top, bottom, height, borderTop, borderBottom + scrollbarHeight, targetBlock, targetBlock + targetHeight, targetHeight);
       
 30856       } else {
       
 30857         blockScroll = targetBlock - (top + height / 2) + scrollbarHeight / 2;
       
 30858       }
       
 30859 
       
 30860       if (inline === 'start') {
       
 30861         inlineScroll = targetInline - left - borderLeft;
       
 30862       } else if (inline === 'center') {
       
 30863         inlineScroll = targetInline - (left + width / 2) + scrollbarWidth / 2;
       
 30864       } else if (inline === 'end') {
       
 30865         inlineScroll = targetInline - right + borderRight + scrollbarWidth;
       
 30866       } else {
       
 30867         inlineScroll = alignNearest(left, right, width, borderLeft, borderRight + scrollbarWidth, targetInline, targetInline + targetWidth, targetWidth);
       
 30868       }
       
 30869 
       
 30870       var scrollLeft = frame.scrollLeft,
       
 30871           scrollTop = frame.scrollTop;
       
 30872       blockScroll = Math.max(0, Math.min(scrollTop + blockScroll, frame.scrollHeight - height + scrollbarHeight));
       
 30873       inlineScroll = Math.max(0, Math.min(scrollLeft + inlineScroll, frame.scrollWidth - width + scrollbarWidth));
       
 30874       targetBlock += scrollTop - blockScroll;
       
 30875       targetInline += scrollLeft - inlineScroll;
       
 30876     }
       
 30877 
       
 30878     computations.push({
       
 30879       el: frame,
       
 30880       top: blockScroll,
       
 30881       left: inlineScroll
       
 30882     });
       
 30883   }
       
 30884 
       
 30885   return computations;
       
 30886 });
       
 30887 // CONCATENATED MODULE: ./node_modules/downshift/dist/downshift.esm.js
       
 30888 
       
 30889 
       
 30890 
       
 30891 
       
 30892 
       
 30893 
       
 30894 
       
 30895 
       
 30896 
       
 30897 var idCounter = 0;
       
 30898 /**
       
 30899  * Accepts a parameter and returns it if it's a function
       
 30900  * or a noop function if it's not. This allows us to
       
 30901  * accept a callback, but not worry about it if it's not
       
 30902  * passed.
       
 30903  * @param {Function} cb the callback
       
 30904  * @return {Function} a function
       
 30905  */
       
 30906 
       
 30907 function cbToCb(cb) {
       
 30908   return typeof cb === 'function' ? cb : downshift_esm_noop;
       
 30909 }
       
 30910 
       
 30911 function downshift_esm_noop() {}
       
 30912 /**
       
 30913  * Scroll node into view if necessary
       
 30914  * @param {HTMLElement} node the element that should scroll into view
       
 30915  * @param {HTMLElement} menuNode the menu element of the component
       
 30916  */
       
 30917 
       
 30918 
       
 30919 function downshift_esm_scrollIntoView(node, menuNode) {
       
 30920   if (!node) {
       
 30921     return;
       
 30922   }
       
 30923 
       
 30924   var actions = es(node, {
       
 30925     boundary: menuNode,
       
 30926     block: 'nearest',
       
 30927     scrollMode: 'if-needed'
       
 30928   });
       
 30929   actions.forEach(function (_ref) {
       
 30930     var el = _ref.el,
       
 30931         top = _ref.top,
       
 30932         left = _ref.left;
       
 30933     el.scrollTop = top;
       
 30934     el.scrollLeft = left;
       
 30935   });
       
 30936 }
       
 30937 /**
       
 30938  * @param {HTMLElement} parent the parent node
       
 30939  * @param {HTMLElement} child the child node
       
 30940  * @return {Boolean} whether the parent is the child or the child is in the parent
       
 30941  */
       
 30942 
       
 30943 
       
 30944 function isOrContainsNode(parent, child) {
       
 30945   return parent === child || parent.contains && parent.contains(child);
       
 30946 }
       
 30947 /**
       
 30948  * Simple debounce implementation. Will call the given
       
 30949  * function once after the time given has passed since
       
 30950  * it was last called.
       
 30951  * @param {Function} fn the function to call after the time
       
 30952  * @param {Number} time the time to wait
       
 30953  * @return {Function} the debounced function
       
 30954  */
       
 30955 
       
 30956 
       
 30957 function debounce(fn, time) {
       
 30958   var timeoutId;
       
 30959 
       
 30960   function cancel() {
       
 30961     if (timeoutId) {
       
 30962       clearTimeout(timeoutId);
       
 30963     }
       
 30964   }
       
 30965 
       
 30966   function wrapper() {
       
 30967     for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
       
 30968       args[_key] = arguments[_key];
       
 30969     }
       
 30970 
       
 30971     cancel();
       
 30972     timeoutId = setTimeout(function () {
       
 30973       timeoutId = null;
       
 30974       fn.apply(void 0, args);
       
 30975     }, time);
       
 30976   }
       
 30977 
       
 30978   wrapper.cancel = cancel;
       
 30979   return wrapper;
       
 30980 }
       
 30981 /**
       
 30982  * This is intended to be used to compose event handlers.
       
 30983  * They are executed in order until one of them sets
       
 30984  * `event.preventDownshiftDefault = true`.
       
 30985  * @param {...Function} fns the event handler functions
       
 30986  * @return {Function} the event handler to add to an element
       
 30987  */
       
 30988 
       
 30989 
       
 30990 function callAllEventHandlers() {
       
 30991   for (var _len2 = arguments.length, fns = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
       
 30992     fns[_key2] = arguments[_key2];
       
 30993   }
       
 30994 
       
 30995   return function (event) {
       
 30996     for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
       
 30997       args[_key3 - 1] = arguments[_key3];
       
 30998     }
       
 30999 
       
 31000     return fns.some(function (fn) {
       
 31001       if (fn) {
       
 31002         fn.apply(void 0, [event].concat(args));
       
 31003       }
       
 31004 
       
 31005       return event.preventDownshiftDefault || event.hasOwnProperty('nativeEvent') && event.nativeEvent.preventDownshiftDefault;
       
 31006     });
       
 31007   };
       
 31008 }
       
 31009 
       
 31010 function handleRefs() {
       
 31011   for (var _len4 = arguments.length, refs = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
       
 31012     refs[_key4] = arguments[_key4];
       
 31013   }
       
 31014 
       
 31015   return function (node) {
       
 31016     refs.forEach(function (ref) {
       
 31017       if (typeof ref === 'function') {
       
 31018         ref(node);
       
 31019       } else if (ref) {
       
 31020         ref.current = node;
       
 31021       }
       
 31022     });
       
 31023   };
       
 31024 }
       
 31025 /**
       
 31026  * This generates a unique ID for an instance of Downshift
       
 31027  * @return {String} the unique ID
       
 31028  */
       
 31029 
       
 31030 
       
 31031 function generateId() {
       
 31032   return String(idCounter++);
       
 31033 }
       
 31034 /**
       
 31035  * Resets idCounter to 0. Used for SSR.
       
 31036  */
       
 31037 
       
 31038 
       
 31039 function resetIdCounter() {
       
 31040   idCounter = 0;
       
 31041 }
       
 31042 /**
       
 31043  * Default implementation for status message. Only added when menu is open.
       
 31044  * Will specift if there are results in the list, and if so, how many,
       
 31045  * and what keys are relevant.
       
 31046  *
       
 31047  * @param {Object} param the downshift state and other relevant properties
       
 31048  * @return {String} the a11y status message
       
 31049  */
       
 31050 
       
 31051 
       
 31052 function downshift_esm_getA11yStatusMessage(_ref2) {
       
 31053   var isOpen = _ref2.isOpen,
       
 31054       resultCount = _ref2.resultCount,
       
 31055       previousResultCount = _ref2.previousResultCount;
       
 31056 
       
 31057   if (!isOpen) {
       
 31058     return '';
       
 31059   }
       
 31060 
       
 31061   if (!resultCount) {
       
 31062     return 'No results are available.';
       
 31063   }
       
 31064 
       
 31065   if (resultCount !== previousResultCount) {
       
 31066     return resultCount + " result" + (resultCount === 1 ? ' is' : 's are') + " available, use up and down arrow keys to navigate. Press Enter key to select.";
       
 31067   }
       
 31068 
       
 31069   return '';
       
 31070 }
       
 31071 /**
       
 31072  * Takes an argument and if it's an array, returns the first item in the array
       
 31073  * otherwise returns the argument
       
 31074  * @param {*} arg the maybe-array
       
 31075  * @param {*} defaultValue the value if arg is falsey not defined
       
 31076  * @return {*} the arg or it's first item
       
 31077  */
       
 31078 
       
 31079 
       
 31080 function unwrapArray(arg, defaultValue) {
       
 31081   arg = Array.isArray(arg) ?
       
 31082   /* istanbul ignore next (preact) */
       
 31083   arg[0] : arg;
       
 31084 
       
 31085   if (!arg && defaultValue) {
       
 31086     return defaultValue;
       
 31087   } else {
       
 31088     return arg;
       
 31089   }
       
 31090 }
       
 31091 /**
       
 31092  * @param {Object} element (P)react element
       
 31093  * @return {Boolean} whether it's a DOM element
       
 31094  */
       
 31095 
       
 31096 
       
 31097 function isDOMElement(element) {
       
 31098   // then we assume this is react
       
 31099   return typeof element.type === 'string';
       
 31100 }
       
 31101 /**
       
 31102  * @param {Object} element (P)react element
       
 31103  * @return {Object} the props
       
 31104  */
       
 31105 
       
 31106 
       
 31107 function getElementProps(element) {
       
 31108   return element.props;
       
 31109 }
       
 31110 /**
       
 31111  * Throws a helpful error message for required properties. Useful
       
 31112  * to be used as a default in destructuring or object params.
       
 31113  * @param {String} fnName the function name
       
 31114  * @param {String} propName the prop name
       
 31115  */
       
 31116 
       
 31117 
       
 31118 function requiredProp(fnName, propName) {
       
 31119   // eslint-disable-next-line no-console
       
 31120   console.error("The property \"" + propName + "\" is required in \"" + fnName + "\"");
       
 31121 }
       
 31122 
       
 31123 var stateKeys = ['highlightedIndex', 'inputValue', 'isOpen', 'selectedItem', 'type'];
       
 31124 /**
       
 31125  * @param {Object} state the state object
       
 31126  * @return {Object} state that is relevant to downshift
       
 31127  */
       
 31128 
       
 31129 function pickState(state) {
       
 31130   if (state === void 0) {
       
 31131     state = {};
       
 31132   }
       
 31133 
       
 31134   var result = {};
       
 31135   stateKeys.forEach(function (k) {
       
 31136     if (state.hasOwnProperty(k)) {
       
 31137       result[k] = state[k];
       
 31138     }
       
 31139   });
       
 31140   return result;
       
 31141 }
       
 31142 /**
       
 31143  * This will perform a shallow merge of the given state object
       
 31144  * with the state coming from props
       
 31145  * (for the controlled component scenario)
       
 31146  * This is used in state updater functions so they're referencing
       
 31147  * the right state regardless of where it comes from.
       
 31148  *
       
 31149  * @param {Object} state The state of the component/hook.
       
 31150  * @param {Object} props The props that may contain controlled values.
       
 31151  * @returns {Object} The merged controlled state.
       
 31152  */
       
 31153 
       
 31154 
       
 31155 function getState(state, props) {
       
 31156   return Object.keys(state).reduce(function (prevState, key) {
       
 31157     prevState[key] = isControlledProp(props, key) ? props[key] : state[key];
       
 31158     return prevState;
       
 31159   }, {});
       
 31160 }
       
 31161 /**
       
 31162  * This determines whether a prop is a "controlled prop" meaning it is
       
 31163  * state which is controlled by the outside of this component rather
       
 31164  * than within this component.
       
 31165  *
       
 31166  * @param {Object} props The props that may contain controlled values.
       
 31167  * @param {String} key the key to check
       
 31168  * @return {Boolean} whether it is a controlled controlled prop
       
 31169  */
       
 31170 
       
 31171 
       
 31172 function isControlledProp(props, key) {
       
 31173   return props[key] !== undefined;
       
 31174 }
       
 31175 /**
       
 31176  * Normalizes the 'key' property of a KeyboardEvent in IE/Edge
       
 31177  * @param {Object} event a keyboardEvent object
       
 31178  * @return {String} keyboard key
       
 31179  */
       
 31180 
       
 31181 
       
 31182 function normalizeArrowKey(event) {
       
 31183   var key = event.key,
       
 31184       keyCode = event.keyCode;
       
 31185   /* istanbul ignore next (ie) */
       
 31186 
       
 31187   if (keyCode >= 37 && keyCode <= 40 && key.indexOf('Arrow') !== 0) {
       
 31188     return "Arrow" + key;
       
 31189   }
       
 31190 
       
 31191   return key;
       
 31192 }
       
 31193 /**
       
 31194  * Simple check if the value passed is object literal
       
 31195  * @param {*} obj any things
       
 31196  * @return {Boolean} whether it's object literal
       
 31197  */
       
 31198 
       
 31199 
       
 31200 function isPlainObject(obj) {
       
 31201   return Object.prototype.toString.call(obj) === '[object Object]';
       
 31202 }
       
 31203 /**
       
 31204  * Returns the new index in the list, in a circular way. If next value is out of bonds from the total,
       
 31205  * it will wrap to either 0 or itemCount - 1.
       
 31206  *
       
 31207  * @param {number} moveAmount Number of positions to move. Negative to move backwards, positive forwards.
       
 31208  * @param {number} baseIndex The initial position to move from.
       
 31209  * @param {number} itemCount The total number of items.
       
 31210  * @param {Function} getItemNodeFromIndex Used to check if item is disabled.
       
 31211  * @param {boolean} circular Specify if navigation is circular. Default is true.
       
 31212  * @returns {number} The new index after the move.
       
 31213  */
       
 31214 
       
 31215 
       
 31216 function getNextWrappingIndex(moveAmount, baseIndex, itemCount, getItemNodeFromIndex, circular) {
       
 31217   if (circular === void 0) {
       
 31218     circular = true;
       
 31219   }
       
 31220 
       
 31221   if (itemCount === 0) {
       
 31222     return -1;
       
 31223   }
       
 31224 
       
 31225   var itemsLastIndex = itemCount - 1;
       
 31226 
       
 31227   if (typeof baseIndex !== 'number' || baseIndex < 0 || baseIndex >= itemCount) {
       
 31228     baseIndex = moveAmount > 0 ? -1 : itemsLastIndex + 1;
       
 31229   }
       
 31230 
       
 31231   var newIndex = baseIndex + moveAmount;
       
 31232 
       
 31233   if (newIndex < 0) {
       
 31234     newIndex = circular ? itemsLastIndex : 0;
       
 31235   } else if (newIndex > itemsLastIndex) {
       
 31236     newIndex = circular ? 0 : itemsLastIndex;
       
 31237   }
       
 31238 
       
 31239   var nonDisabledNewIndex = getNextNonDisabledIndex(moveAmount, newIndex, itemCount, getItemNodeFromIndex, circular);
       
 31240 
       
 31241   if (nonDisabledNewIndex === -1) {
       
 31242     return baseIndex >= itemCount ? -1 : baseIndex;
       
 31243   }
       
 31244 
       
 31245   return nonDisabledNewIndex;
       
 31246 }
       
 31247 /**
       
 31248  * Returns the next index in the list of an item that is not disabled.
       
 31249  *
       
 31250  * @param {number} moveAmount Number of positions to move. Negative to move backwards, positive forwards.
       
 31251  * @param {number} baseIndex The initial position to move from.
       
 31252  * @param {number} itemCount The total number of items.
       
 31253  * @param {Function} getItemNodeFromIndex Used to check if item is disabled.
       
 31254  * @param {boolean} circular Specify if navigation is circular. Default is true.
       
 31255  * @returns {number} The new index. Returns baseIndex if item is not disabled. Returns next non-disabled item otherwise. If no non-disabled found it will return -1.
       
 31256  */
       
 31257 
       
 31258 
       
 31259 function getNextNonDisabledIndex(moveAmount, baseIndex, itemCount, getItemNodeFromIndex, circular) {
       
 31260   var currentElementNode = getItemNodeFromIndex(baseIndex);
       
 31261 
       
 31262   if (!currentElementNode || !currentElementNode.hasAttribute('disabled')) {
       
 31263     return baseIndex;
       
 31264   }
       
 31265 
       
 31266   if (moveAmount > 0) {
       
 31267     for (var index = baseIndex + 1; index < itemCount; index++) {
       
 31268       if (!getItemNodeFromIndex(index).hasAttribute('disabled')) {
       
 31269         return index;
       
 31270       }
       
 31271     }
       
 31272   } else {
       
 31273     for (var _index = baseIndex - 1; _index >= 0; _index--) {
       
 31274       if (!getItemNodeFromIndex(_index).hasAttribute('disabled')) {
       
 31275         return _index;
       
 31276       }
       
 31277     }
       
 31278   }
       
 31279 
       
 31280   if (circular) {
       
 31281     return moveAmount > 0 ? getNextNonDisabledIndex(1, 0, itemCount, getItemNodeFromIndex, false) : getNextNonDisabledIndex(-1, itemCount - 1, itemCount, getItemNodeFromIndex, false);
       
 31282   }
       
 31283 
       
 31284   return -1;
       
 31285 }
       
 31286 /**
       
 31287  * Checks if event target is within the downshift elements.
       
 31288  *
       
 31289  * @param {EventTarget} target Target to check.
       
 31290  * @param {HTMLElement[]} downshiftElements The elements that form downshift (list, toggle button etc).
       
 31291  * @param {Document} document The document.
       
 31292  * @param {boolean} checkActiveElement Whether to also check activeElement.
       
 31293  *
       
 31294  * @returns {boolean} Whether or not the target is within downshift elements.
       
 31295  */
       
 31296 
       
 31297 
       
 31298 function targetWithinDownshift(target, downshiftElements, document, checkActiveElement) {
       
 31299   if (checkActiveElement === void 0) {
       
 31300     checkActiveElement = true;
       
 31301   }
       
 31302 
       
 31303   return downshiftElements.some(function (contextNode) {
       
 31304     return contextNode && (isOrContainsNode(contextNode, target) || checkActiveElement && isOrContainsNode(contextNode, document.activeElement));
       
 31305   });
       
 31306 }
       
 31307 
       
 31308 function validateControlledUnchanged(state, prevProps, nextProps) {
       
 31309   if (true) {
       
 31310     return;
       
 31311   }
       
 31312 
       
 31313   var warningDescription = "This prop should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled Downshift element for the lifetime of the component. More info: https://github.com/downshift-js/downshift#control-props";
       
 31314   Object.keys(state).forEach(function (propKey) {
       
 31315     if (prevProps[propKey] !== undefined && nextProps[propKey] === undefined) {
       
 31316       // eslint-disable-next-line no-console
       
 31317       console.error("downshift: A component has changed the controlled prop \"" + propKey + "\" to be uncontrolled. " + warningDescription);
       
 31318     } else if (prevProps[propKey] === undefined && nextProps[propKey] !== undefined) {
       
 31319       // eslint-disable-next-line no-console
       
 31320       console.error("downshift: A component has changed the uncontrolled prop \"" + propKey + "\" to be controlled. " + warningDescription);
       
 31321     }
       
 31322   });
       
 31323 }
       
 31324 
       
 31325 var cleanupStatus = debounce(function () {
       
 31326   getStatusDiv().textContent = '';
       
 31327 }, 500);
       
 31328 /**
       
 31329  * @param {String} status the status message
       
 31330  * @param {Object} documentProp document passed by the user.
       
 31331  */
       
 31332 
       
 31333 function setStatus(status, documentProp) {
       
 31334   var div = getStatusDiv(documentProp);
       
 31335 
       
 31336   if (!status) {
       
 31337     return;
       
 31338   }
       
 31339 
       
 31340   div.textContent = status;
       
 31341   cleanupStatus();
       
 31342 }
       
 31343 /**
       
 31344  * Get the status node or create it if it does not already exist.
       
 31345  * @param {Object} documentProp document passed by the user.
       
 31346  * @return {HTMLElement} the status node.
       
 31347  */
       
 31348 
       
 31349 
       
 31350 function getStatusDiv(documentProp) {
       
 31351   if (documentProp === void 0) {
       
 31352     documentProp = document;
       
 31353   }
       
 31354 
       
 31355   var statusDiv = documentProp.getElementById('a11y-status-message');
       
 31356 
       
 31357   if (statusDiv) {
       
 31358     return statusDiv;
       
 31359   }
       
 31360 
       
 31361   statusDiv = documentProp.createElement('div');
       
 31362   statusDiv.setAttribute('id', 'a11y-status-message');
       
 31363   statusDiv.setAttribute('role', 'status');
       
 31364   statusDiv.setAttribute('aria-live', 'polite');
       
 31365   statusDiv.setAttribute('aria-relevant', 'additions text');
       
 31366   Object.assign(statusDiv.style, {
       
 31367     border: '0',
       
 31368     clip: 'rect(0 0 0 0)',
       
 31369     height: '1px',
       
 31370     margin: '-1px',
       
 31371     overflow: 'hidden',
       
 31372     padding: '0',
       
 31373     position: 'absolute',
       
 31374     width: '1px'
       
 31375   });
       
 31376   documentProp.body.appendChild(statusDiv);
       
 31377   return statusDiv;
       
 31378 }
       
 31379 
       
 31380 var unknown =  false ? undefined : 0;
       
 31381 var mouseUp =  false ? undefined : 1;
       
 31382 var itemMouseEnter =  false ? undefined : 2;
       
 31383 var keyDownArrowUp =  false ? undefined : 3;
       
 31384 var keyDownArrowDown =  false ? undefined : 4;
       
 31385 var keyDownEscape =  false ? undefined : 5;
       
 31386 var keyDownEnter =  false ? undefined : 6;
       
 31387 var keyDownHome =  false ? undefined : 7;
       
 31388 var keyDownEnd =  false ? undefined : 8;
       
 31389 var clickItem =  false ? undefined : 9;
       
 31390 var blurInput =  false ? undefined : 10;
       
 31391 var changeInput =  false ? undefined : 11;
       
 31392 var keyDownSpaceButton =  false ? undefined : 12;
       
 31393 var clickButton =  false ? undefined : 13;
       
 31394 var blurButton =  false ? undefined : 14;
       
 31395 var controlledPropUpdatedSelectedItem =  false ? undefined : 15;
       
 31396 var touchEnd =  false ? undefined : 16;
       
 31397 
       
 31398 var stateChangeTypes = /*#__PURE__*/Object.freeze({
       
 31399   __proto__: null,
       
 31400   unknown: unknown,
       
 31401   mouseUp: mouseUp,
       
 31402   itemMouseEnter: itemMouseEnter,
       
 31403   keyDownArrowUp: keyDownArrowUp,
       
 31404   keyDownArrowDown: keyDownArrowDown,
       
 31405   keyDownEscape: keyDownEscape,
       
 31406   keyDownEnter: keyDownEnter,
       
 31407   keyDownHome: keyDownHome,
       
 31408   keyDownEnd: keyDownEnd,
       
 31409   clickItem: clickItem,
       
 31410   blurInput: blurInput,
       
 31411   changeInput: changeInput,
       
 31412   keyDownSpaceButton: keyDownSpaceButton,
       
 31413   clickButton: clickButton,
       
 31414   blurButton: blurButton,
       
 31415   controlledPropUpdatedSelectedItem: controlledPropUpdatedSelectedItem,
       
 31416   touchEnd: touchEnd
       
 31417 });
       
 31418 
       
 31419 var downshift_esm_Downshift =
       
 31420 /*#__PURE__*/
       
 31421 function () {
       
 31422   var Downshift =
       
 31423   /*#__PURE__*/
       
 31424   function (_Component) {
       
 31425     inheritsLoose_inheritsLoose(Downshift, _Component);
       
 31426 
       
 31427     function Downshift(_props) {
       
 31428       var _this = _Component.call(this, _props) || this;
       
 31429 
       
 31430       _this.id = _this.props.id || "downshift-" + generateId();
       
 31431       _this.menuId = _this.props.menuId || _this.id + "-menu";
       
 31432       _this.labelId = _this.props.labelId || _this.id + "-label";
       
 31433       _this.inputId = _this.props.inputId || _this.id + "-input";
       
 31434 
       
 31435       _this.getItemId = _this.props.getItemId || function (index) {
       
 31436         return _this.id + "-item-" + index;
       
 31437       };
       
 31438 
       
 31439       _this.input = null;
       
 31440       _this.items = [];
       
 31441       _this.itemCount = null;
       
 31442       _this.previousResultCount = 0;
       
 31443       _this.timeoutIds = [];
       
 31444 
       
 31445       _this.internalSetTimeout = function (fn, time) {
       
 31446         var id = setTimeout(function () {
       
 31447           _this.timeoutIds = _this.timeoutIds.filter(function (i) {
       
 31448             return i !== id;
       
 31449           });
       
 31450           fn();
       
 31451         }, time);
       
 31452 
       
 31453         _this.timeoutIds.push(id);
       
 31454       };
       
 31455 
       
 31456       _this.setItemCount = function (count) {
       
 31457         _this.itemCount = count;
       
 31458       };
       
 31459 
       
 31460       _this.unsetItemCount = function () {
       
 31461         _this.itemCount = null;
       
 31462       };
       
 31463 
       
 31464       _this.setHighlightedIndex = function (highlightedIndex, otherStateToSet) {
       
 31465         if (highlightedIndex === void 0) {
       
 31466           highlightedIndex = _this.props.defaultHighlightedIndex;
       
 31467         }
       
 31468 
       
 31469         if (otherStateToSet === void 0) {
       
 31470           otherStateToSet = {};
       
 31471         }
       
 31472 
       
 31473         otherStateToSet = pickState(otherStateToSet);
       
 31474 
       
 31475         _this.internalSetState(Object(esm_extends["a" /* default */])({
       
 31476           highlightedIndex: highlightedIndex
       
 31477         }, otherStateToSet));
       
 31478       };
       
 31479 
       
 31480       _this.clearSelection = function (cb) {
       
 31481         _this.internalSetState({
       
 31482           selectedItem: null,
       
 31483           inputValue: '',
       
 31484           highlightedIndex: _this.props.defaultHighlightedIndex,
       
 31485           isOpen: _this.props.defaultIsOpen
       
 31486         }, cb);
       
 31487       };
       
 31488 
       
 31489       _this.selectItem = function (item, otherStateToSet, cb) {
       
 31490         otherStateToSet = pickState(otherStateToSet);
       
 31491 
       
 31492         _this.internalSetState(Object(esm_extends["a" /* default */])({
       
 31493           isOpen: _this.props.defaultIsOpen,
       
 31494           highlightedIndex: _this.props.defaultHighlightedIndex,
       
 31495           selectedItem: item,
       
 31496           inputValue: _this.props.itemToString(item)
       
 31497         }, otherStateToSet), cb);
       
 31498       };
       
 31499 
       
 31500       _this.selectItemAtIndex = function (itemIndex, otherStateToSet, cb) {
       
 31501         var item = _this.items[itemIndex];
       
 31502 
       
 31503         if (item == null) {
       
 31504           return;
       
 31505         }
       
 31506 
       
 31507         _this.selectItem(item, otherStateToSet, cb);
       
 31508       };
       
 31509 
       
 31510       _this.selectHighlightedItem = function (otherStateToSet, cb) {
       
 31511         return _this.selectItemAtIndex(_this.getState().highlightedIndex, otherStateToSet, cb);
       
 31512       };
       
 31513 
       
 31514       _this.internalSetState = function (stateToSet, cb) {
       
 31515         var isItemSelected, onChangeArg;
       
 31516         var onStateChangeArg = {};
       
 31517         var isStateToSetFunction = typeof stateToSet === 'function'; // we want to call `onInputValueChange` before the `setState` call
       
 31518         // so someone controlling the `inputValue` state gets notified of
       
 31519         // the input change as soon as possible. This avoids issues with
       
 31520         // preserving the cursor position.
       
 31521         // See https://github.com/downshift-js/downshift/issues/217 for more info.
       
 31522 
       
 31523         if (!isStateToSetFunction && stateToSet.hasOwnProperty('inputValue')) {
       
 31524           _this.props.onInputValueChange(stateToSet.inputValue, Object(esm_extends["a" /* default */])({}, _this.getStateAndHelpers(), stateToSet));
       
 31525         }
       
 31526 
       
 31527         return _this.setState(function (state) {
       
 31528           state = _this.getState(state);
       
 31529           var newStateToSet = isStateToSetFunction ? stateToSet(state) : stateToSet; // Your own function that could modify the state that will be set.
       
 31530 
       
 31531           newStateToSet = _this.props.stateReducer(state, newStateToSet); // checks if an item is selected, regardless of if it's different from
       
 31532           // what was selected before
       
 31533           // used to determine if onSelect and onChange callbacks should be called
       
 31534 
       
 31535           isItemSelected = newStateToSet.hasOwnProperty('selectedItem'); // this keeps track of the object we want to call with setState
       
 31536 
       
 31537           var nextState = {}; // this is just used to tell whether the state changed
       
 31538 
       
 31539           var nextFullState = {}; // we need to call on change if the outside world is controlling any of our state
       
 31540           // and we're trying to update that state. OR if the selection has changed and we're
       
 31541           // trying to update the selection
       
 31542 
       
 31543           if (isItemSelected && newStateToSet.selectedItem !== state.selectedItem) {
       
 31544             onChangeArg = newStateToSet.selectedItem;
       
 31545           }
       
 31546 
       
 31547           newStateToSet.type = newStateToSet.type || unknown;
       
 31548           Object.keys(newStateToSet).forEach(function (key) {
       
 31549             // onStateChangeArg should only have the state that is
       
 31550             // actually changing
       
 31551             if (state[key] !== newStateToSet[key]) {
       
 31552               onStateChangeArg[key] = newStateToSet[key];
       
 31553             } // the type is useful for the onStateChangeArg
       
 31554             // but we don't actually want to set it in internal state.
       
 31555             // this is an undocumented feature for now... Not all internalSetState
       
 31556             // calls support it and I'm not certain we want them to yet.
       
 31557             // But it enables users controlling the isOpen state to know when
       
 31558             // the isOpen state changes due to mouseup events which is quite handy.
       
 31559 
       
 31560 
       
 31561             if (key === 'type') {
       
 31562               return;
       
 31563             }
       
 31564 
       
 31565             nextFullState[key] = newStateToSet[key]; // if it's coming from props, then we don't care to set it internally
       
 31566 
       
 31567             if (!isControlledProp(_this.props, key)) {
       
 31568               nextState[key] = newStateToSet[key];
       
 31569             }
       
 31570           }); // if stateToSet is a function, then we weren't able to call onInputValueChange
       
 31571           // earlier, so we'll call it now that we know what the inputValue state will be.
       
 31572 
       
 31573           if (isStateToSetFunction && newStateToSet.hasOwnProperty('inputValue')) {
       
 31574             _this.props.onInputValueChange(newStateToSet.inputValue, Object(esm_extends["a" /* default */])({}, _this.getStateAndHelpers(), newStateToSet));
       
 31575           }
       
 31576 
       
 31577           return nextState;
       
 31578         }, function () {
       
 31579           // call the provided callback if it's a function
       
 31580           cbToCb(cb)(); // only call the onStateChange and onChange callbacks if
       
 31581           // we have relevant information to pass them.
       
 31582 
       
 31583           var hasMoreStateThanType = Object.keys(onStateChangeArg).length > 1;
       
 31584 
       
 31585           if (hasMoreStateThanType) {
       
 31586             _this.props.onStateChange(onStateChangeArg, _this.getStateAndHelpers());
       
 31587           }
       
 31588 
       
 31589           if (isItemSelected) {
       
 31590             _this.props.onSelect(stateToSet.selectedItem, _this.getStateAndHelpers());
       
 31591           }
       
 31592 
       
 31593           if (onChangeArg !== undefined) {
       
 31594             _this.props.onChange(onChangeArg, _this.getStateAndHelpers());
       
 31595           } // this is currently undocumented and therefore subject to change
       
 31596           // We'll try to not break it, but just be warned.
       
 31597 
       
 31598 
       
 31599           _this.props.onUserAction(onStateChangeArg, _this.getStateAndHelpers());
       
 31600         });
       
 31601       };
       
 31602 
       
 31603       _this.rootRef = function (node) {
       
 31604         return _this._rootNode = node;
       
 31605       };
       
 31606 
       
 31607       _this.getRootProps = function (_temp, _temp2) {
       
 31608         var _extends2;
       
 31609 
       
 31610         var _ref = _temp === void 0 ? {} : _temp,
       
 31611             _ref$refKey = _ref.refKey,
       
 31612             refKey = _ref$refKey === void 0 ? 'ref' : _ref$refKey,
       
 31613             ref = _ref.ref,
       
 31614             rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref, ["refKey", "ref"]);
       
 31615 
       
 31616         var _ref2 = _temp2 === void 0 ? {} : _temp2,
       
 31617             _ref2$suppressRefErro = _ref2.suppressRefError,
       
 31618             suppressRefError = _ref2$suppressRefErro === void 0 ? false : _ref2$suppressRefErro;
       
 31619 
       
 31620         // this is used in the render to know whether the user has called getRootProps.
       
 31621         // It uses that to know whether to apply the props automatically
       
 31622         _this.getRootProps.called = true;
       
 31623         _this.getRootProps.refKey = refKey;
       
 31624         _this.getRootProps.suppressRefError = suppressRefError;
       
 31625 
       
 31626         var _this$getState = _this.getState(),
       
 31627             isOpen = _this$getState.isOpen;
       
 31628 
       
 31629         return Object(esm_extends["a" /* default */])((_extends2 = {}, _extends2[refKey] = handleRefs(ref, _this.rootRef), _extends2.role = 'combobox', _extends2['aria-expanded'] = isOpen, _extends2['aria-haspopup'] = 'listbox', _extends2['aria-owns'] = isOpen ? _this.menuId : null, _extends2['aria-labelledby'] = _this.labelId, _extends2), rest);
       
 31630       };
       
 31631 
       
 31632       _this.keyDownHandlers = {
       
 31633         ArrowDown: function ArrowDown(event) {
       
 31634           var _this2 = this;
       
 31635 
       
 31636           event.preventDefault();
       
 31637 
       
 31638           if (this.getState().isOpen) {
       
 31639             var amount = event.shiftKey ? 5 : 1;
       
 31640             this.moveHighlightedIndex(amount, {
       
 31641               type: keyDownArrowDown
       
 31642             });
       
 31643           } else {
       
 31644             this.internalSetState({
       
 31645               isOpen: true,
       
 31646               type: keyDownArrowDown
       
 31647             }, function () {
       
 31648               var itemCount = _this2.getItemCount();
       
 31649 
       
 31650               if (itemCount > 0) {
       
 31651                 var _this2$getState = _this2.getState(),
       
 31652                     highlightedIndex = _this2$getState.highlightedIndex;
       
 31653 
       
 31654                 var nextHighlightedIndex = getNextWrappingIndex(1, highlightedIndex, itemCount, function (index) {
       
 31655                   return _this2.getItemNodeFromIndex(index);
       
 31656                 });
       
 31657 
       
 31658                 _this2.setHighlightedIndex(nextHighlightedIndex, {
       
 31659                   type: keyDownArrowDown
       
 31660                 });
       
 31661               }
       
 31662             });
       
 31663           }
       
 31664         },
       
 31665         ArrowUp: function ArrowUp(event) {
       
 31666           var _this3 = this;
       
 31667 
       
 31668           event.preventDefault();
       
 31669 
       
 31670           if (this.getState().isOpen) {
       
 31671             var amount = event.shiftKey ? -5 : -1;
       
 31672             this.moveHighlightedIndex(amount, {
       
 31673               type: keyDownArrowUp
       
 31674             });
       
 31675           } else {
       
 31676             this.internalSetState({
       
 31677               isOpen: true,
       
 31678               type: keyDownArrowUp
       
 31679             }, function () {
       
 31680               var itemCount = _this3.getItemCount();
       
 31681 
       
 31682               if (itemCount > 0) {
       
 31683                 var _this3$getState = _this3.getState(),
       
 31684                     highlightedIndex = _this3$getState.highlightedIndex;
       
 31685 
       
 31686                 var nextHighlightedIndex = getNextWrappingIndex(-1, highlightedIndex, itemCount, function (index) {
       
 31687                   return _this3.getItemNodeFromIndex(index);
       
 31688                 });
       
 31689 
       
 31690                 _this3.setHighlightedIndex(nextHighlightedIndex, {
       
 31691                   type: keyDownArrowUp
       
 31692                 });
       
 31693               }
       
 31694             });
       
 31695           }
       
 31696         },
       
 31697         Enter: function Enter(event) {
       
 31698           if (event.which === 229) {
       
 31699             return;
       
 31700           }
       
 31701 
       
 31702           var _this$getState2 = this.getState(),
       
 31703               isOpen = _this$getState2.isOpen,
       
 31704               highlightedIndex = _this$getState2.highlightedIndex;
       
 31705 
       
 31706           if (isOpen && highlightedIndex != null) {
       
 31707             event.preventDefault();
       
 31708             var item = this.items[highlightedIndex];
       
 31709             var itemNode = this.getItemNodeFromIndex(highlightedIndex);
       
 31710 
       
 31711             if (item == null || itemNode && itemNode.hasAttribute('disabled')) {
       
 31712               return;
       
 31713             }
       
 31714 
       
 31715             this.selectHighlightedItem({
       
 31716               type: keyDownEnter
       
 31717             });
       
 31718           }
       
 31719         },
       
 31720         Escape: function Escape(event) {
       
 31721           event.preventDefault();
       
 31722           this.reset({
       
 31723             type: keyDownEscape,
       
 31724             selectedItem: null,
       
 31725             inputValue: ''
       
 31726           });
       
 31727         }
       
 31728       };
       
 31729       _this.buttonKeyDownHandlers = Object(esm_extends["a" /* default */])({}, _this.keyDownHandlers, {
       
 31730         ' ': function _(event) {
       
 31731           event.preventDefault();
       
 31732           this.toggleMenu({
       
 31733             type: keyDownSpaceButton
       
 31734           });
       
 31735         }
       
 31736       });
       
 31737       _this.inputKeyDownHandlers = Object(esm_extends["a" /* default */])({}, _this.keyDownHandlers, {
       
 31738         Home: function Home(event) {
       
 31739           var _this4 = this;
       
 31740 
       
 31741           event.preventDefault();
       
 31742           var itemCount = this.getItemCount();
       
 31743 
       
 31744           var _this$getState3 = this.getState(),
       
 31745               isOpen = _this$getState3.isOpen;
       
 31746 
       
 31747           if (itemCount <= 0 || !isOpen) {
       
 31748             return;
       
 31749           } // get next non-disabled starting downwards from 0 if that's disabled.
       
 31750 
       
 31751 
       
 31752           var newHighlightedIndex = getNextNonDisabledIndex(1, 0, itemCount, function (index) {
       
 31753             return _this4.getItemNodeFromIndex(index);
       
 31754           }, false);
       
 31755           this.setHighlightedIndex(newHighlightedIndex, {
       
 31756             type: keyDownHome
       
 31757           });
       
 31758         },
       
 31759         End: function End(event) {
       
 31760           var _this5 = this;
       
 31761 
       
 31762           event.preventDefault();
       
 31763           var itemCount = this.getItemCount();
       
 31764 
       
 31765           var _this$getState4 = this.getState(),
       
 31766               isOpen = _this$getState4.isOpen;
       
 31767 
       
 31768           if (itemCount <= 0 || !isOpen) {
       
 31769             return;
       
 31770           } // get next non-disabled starting upwards from last index if that's disabled.
       
 31771 
       
 31772 
       
 31773           var newHighlightedIndex = getNextNonDisabledIndex(-1, itemCount - 1, itemCount, function (index) {
       
 31774             return _this5.getItemNodeFromIndex(index);
       
 31775           }, false);
       
 31776           this.setHighlightedIndex(newHighlightedIndex, {
       
 31777             type: keyDownEnd
       
 31778           });
       
 31779         }
       
 31780       });
       
 31781 
       
 31782       _this.getToggleButtonProps = function (_temp3) {
       
 31783         var _ref3 = _temp3 === void 0 ? {} : _temp3,
       
 31784             onClick = _ref3.onClick,
       
 31785             onPress = _ref3.onPress,
       
 31786             onKeyDown = _ref3.onKeyDown,
       
 31787             onKeyUp = _ref3.onKeyUp,
       
 31788             onBlur = _ref3.onBlur,
       
 31789             rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref3, ["onClick", "onPress", "onKeyDown", "onKeyUp", "onBlur"]);
       
 31790 
       
 31791         var _this$getState5 = _this.getState(),
       
 31792             isOpen = _this$getState5.isOpen;
       
 31793 
       
 31794         var enabledEventHandlers = {
       
 31795           onClick: callAllEventHandlers(onClick, _this.buttonHandleClick),
       
 31796           onKeyDown: callAllEventHandlers(onKeyDown, _this.buttonHandleKeyDown),
       
 31797           onKeyUp: callAllEventHandlers(onKeyUp, _this.buttonHandleKeyUp),
       
 31798           onBlur: callAllEventHandlers(onBlur, _this.buttonHandleBlur)
       
 31799         };
       
 31800         var eventHandlers = rest.disabled ? {} : enabledEventHandlers;
       
 31801         return Object(esm_extends["a" /* default */])({
       
 31802           type: 'button',
       
 31803           role: 'button',
       
 31804           'aria-label': isOpen ? 'close menu' : 'open menu',
       
 31805           'aria-haspopup': true,
       
 31806           'data-toggle': true
       
 31807         }, eventHandlers, rest);
       
 31808       };
       
 31809 
       
 31810       _this.buttonHandleKeyUp = function (event) {
       
 31811         // Prevent click event from emitting in Firefox
       
 31812         event.preventDefault();
       
 31813       };
       
 31814 
       
 31815       _this.buttonHandleKeyDown = function (event) {
       
 31816         var key = normalizeArrowKey(event);
       
 31817 
       
 31818         if (_this.buttonKeyDownHandlers[key]) {
       
 31819           _this.buttonKeyDownHandlers[key].call(Object(assertThisInitialized["a" /* default */])(_this), event);
       
 31820         }
       
 31821       };
       
 31822 
       
 31823       _this.buttonHandleClick = function (event) {
       
 31824         event.preventDefault(); // handle odd case for Safari and Firefox which
       
 31825         // don't give the button the focus properly.
       
 31826 
       
 31827         /* istanbul ignore if (can't reasonably test this) */
       
 31828 
       
 31829         if ( _this.props.environment.document.activeElement === _this.props.environment.document.body) {
       
 31830           event.target.focus();
       
 31831         } // to simplify testing components that use downshift, we'll not wrap this in a setTimeout
       
 31832         // if the NODE_ENV is test. With the proper build system, this should be dead code eliminated
       
 31833         // when building for production and should therefore have no impact on production code.
       
 31834 
       
 31835 
       
 31836         if (false) {} else {
       
 31837           // Ensure that toggle of menu occurs after the potential blur event in iOS
       
 31838           _this.internalSetTimeout(function () {
       
 31839             return _this.toggleMenu({
       
 31840               type: clickButton
       
 31841             });
       
 31842           });
       
 31843         }
       
 31844       };
       
 31845 
       
 31846       _this.buttonHandleBlur = function (event) {
       
 31847         var blurTarget = event.target; // Save blur target for comparison with activeElement later
       
 31848         // Need setTimeout, so that when the user presses Tab, the activeElement is the next focused element, not body element
       
 31849 
       
 31850         _this.internalSetTimeout(function () {
       
 31851           if (!_this.isMouseDown && (_this.props.environment.document.activeElement == null || _this.props.environment.document.activeElement.id !== _this.inputId) && _this.props.environment.document.activeElement !== blurTarget // Do nothing if we refocus the same element again (to solve issue in Safari on iOS)
       
 31852           ) {
       
 31853               _this.reset({
       
 31854                 type: blurButton
       
 31855               });
       
 31856             }
       
 31857         });
       
 31858       };
       
 31859 
       
 31860       _this.getLabelProps = function (props) {
       
 31861         return Object(esm_extends["a" /* default */])({
       
 31862           htmlFor: _this.inputId,
       
 31863           id: _this.labelId
       
 31864         }, props);
       
 31865       };
       
 31866 
       
 31867       _this.getInputProps = function (_temp4) {
       
 31868         var _ref4 = _temp4 === void 0 ? {} : _temp4,
       
 31869             onKeyDown = _ref4.onKeyDown,
       
 31870             onBlur = _ref4.onBlur,
       
 31871             onChange = _ref4.onChange,
       
 31872             onInput = _ref4.onInput,
       
 31873             onChangeText = _ref4.onChangeText,
       
 31874             rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref4, ["onKeyDown", "onBlur", "onChange", "onInput", "onChangeText"]);
       
 31875 
       
 31876         var onChangeKey;
       
 31877         var eventHandlers = {};
       
 31878         /* istanbul ignore next (preact) */
       
 31879 
       
 31880         onChangeKey = 'onChange';
       
 31881 
       
 31882         var _this$getState6 = _this.getState(),
       
 31883             inputValue = _this$getState6.inputValue,
       
 31884             isOpen = _this$getState6.isOpen,
       
 31885             highlightedIndex = _this$getState6.highlightedIndex;
       
 31886 
       
 31887         if (!rest.disabled) {
       
 31888           var _eventHandlers;
       
 31889 
       
 31890           eventHandlers = (_eventHandlers = {}, _eventHandlers[onChangeKey] = callAllEventHandlers(onChange, onInput, _this.inputHandleChange), _eventHandlers.onKeyDown = callAllEventHandlers(onKeyDown, _this.inputHandleKeyDown), _eventHandlers.onBlur = callAllEventHandlers(onBlur, _this.inputHandleBlur), _eventHandlers);
       
 31891         }
       
 31892         /* istanbul ignore if (react-native) */
       
 31893 
       
 31894 
       
 31895         return Object(esm_extends["a" /* default */])({
       
 31896           'aria-autocomplete': 'list',
       
 31897           'aria-activedescendant': isOpen && typeof highlightedIndex === 'number' && highlightedIndex >= 0 ? _this.getItemId(highlightedIndex) : null,
       
 31898           'aria-controls': isOpen ? _this.menuId : null,
       
 31899           'aria-labelledby': _this.labelId,
       
 31900           // https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
       
 31901           // revert back since autocomplete="nope" is ignored on latest Chrome and Opera
       
 31902           autoComplete: 'off',
       
 31903           value: inputValue,
       
 31904           id: _this.inputId
       
 31905         }, eventHandlers, rest);
       
 31906       };
       
 31907 
       
 31908       _this.inputHandleKeyDown = function (event) {
       
 31909         var key = normalizeArrowKey(event);
       
 31910 
       
 31911         if (key && _this.inputKeyDownHandlers[key]) {
       
 31912           _this.inputKeyDownHandlers[key].call(Object(assertThisInitialized["a" /* default */])(_this), event);
       
 31913         }
       
 31914       };
       
 31915 
       
 31916       _this.inputHandleChange = function (event) {
       
 31917         _this.internalSetState({
       
 31918           type: changeInput,
       
 31919           isOpen: true,
       
 31920           inputValue: event.target.value,
       
 31921           highlightedIndex: _this.props.defaultHighlightedIndex
       
 31922         });
       
 31923       };
       
 31924 
       
 31925       _this.inputHandleBlur = function () {
       
 31926         // Need setTimeout, so that when the user presses Tab, the activeElement is the next focused element, not the body element
       
 31927         _this.internalSetTimeout(function () {
       
 31928           var downshiftButtonIsActive = _this.props.environment.document && !!_this.props.environment.document.activeElement && !!_this.props.environment.document.activeElement.dataset && _this.props.environment.document.activeElement.dataset.toggle && _this._rootNode && _this._rootNode.contains(_this.props.environment.document.activeElement);
       
 31929 
       
 31930           if (!_this.isMouseDown && !downshiftButtonIsActive) {
       
 31931             _this.reset({
       
 31932               type: blurInput
       
 31933             });
       
 31934           }
       
 31935         });
       
 31936       };
       
 31937 
       
 31938       _this.menuRef = function (node) {
       
 31939         _this._menuNode = node;
       
 31940       };
       
 31941 
       
 31942       _this.getMenuProps = function (_temp5, _temp6) {
       
 31943         var _extends3;
       
 31944 
       
 31945         var _ref5 = _temp5 === void 0 ? {} : _temp5,
       
 31946             _ref5$refKey = _ref5.refKey,
       
 31947             refKey = _ref5$refKey === void 0 ? 'ref' : _ref5$refKey,
       
 31948             ref = _ref5.ref,
       
 31949             props = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref5, ["refKey", "ref"]);
       
 31950 
       
 31951         var _ref6 = _temp6 === void 0 ? {} : _temp6,
       
 31952             _ref6$suppressRefErro = _ref6.suppressRefError,
       
 31953             suppressRefError = _ref6$suppressRefErro === void 0 ? false : _ref6$suppressRefErro;
       
 31954 
       
 31955         _this.getMenuProps.called = true;
       
 31956         _this.getMenuProps.refKey = refKey;
       
 31957         _this.getMenuProps.suppressRefError = suppressRefError;
       
 31958         return Object(esm_extends["a" /* default */])((_extends3 = {}, _extends3[refKey] = handleRefs(ref, _this.menuRef), _extends3.role = 'listbox', _extends3['aria-labelledby'] = props && props['aria-label'] ? null : _this.labelId, _extends3.id = _this.menuId, _extends3), props);
       
 31959       };
       
 31960 
       
 31961       _this.getItemProps = function (_temp7) {
       
 31962         var _enabledEventHandlers;
       
 31963 
       
 31964         var _ref7 = _temp7 === void 0 ? {} : _temp7,
       
 31965             onMouseMove = _ref7.onMouseMove,
       
 31966             onMouseDown = _ref7.onMouseDown,
       
 31967             onClick = _ref7.onClick,
       
 31968             onPress = _ref7.onPress,
       
 31969             index = _ref7.index,
       
 31970             _ref7$item = _ref7.item,
       
 31971             item = _ref7$item === void 0 ?  true ?
       
 31972         /* istanbul ignore next */
       
 31973         undefined : undefined : _ref7$item,
       
 31974             rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref7, ["onMouseMove", "onMouseDown", "onClick", "onPress", "index", "item"]);
       
 31975 
       
 31976         if (index === undefined) {
       
 31977           _this.items.push(item);
       
 31978 
       
 31979           index = _this.items.indexOf(item);
       
 31980         } else {
       
 31981           _this.items[index] = item;
       
 31982         }
       
 31983 
       
 31984         var onSelectKey = 'onClick';
       
 31985         var customClickHandler = onClick;
       
 31986         var enabledEventHandlers = (_enabledEventHandlers = {
       
 31987           // onMouseMove is used over onMouseEnter here. onMouseMove
       
 31988           // is only triggered on actual mouse movement while onMouseEnter
       
 31989           // can fire on DOM changes, interrupting keyboard navigation
       
 31990           onMouseMove: callAllEventHandlers(onMouseMove, function () {
       
 31991             if (index === _this.getState().highlightedIndex) {
       
 31992               return;
       
 31993             }
       
 31994 
       
 31995             _this.setHighlightedIndex(index, {
       
 31996               type: itemMouseEnter
       
 31997             }); // We never want to manually scroll when changing state based
       
 31998             // on `onMouseMove` because we will be moving the element out
       
 31999             // from under the user which is currently scrolling/moving the
       
 32000             // cursor
       
 32001 
       
 32002 
       
 32003             _this.avoidScrolling = true;
       
 32004 
       
 32005             _this.internalSetTimeout(function () {
       
 32006               return _this.avoidScrolling = false;
       
 32007             }, 250);
       
 32008           }),
       
 32009           onMouseDown: callAllEventHandlers(onMouseDown, function (event) {
       
 32010             // This prevents the activeElement from being changed
       
 32011             // to the item so it can remain with the current activeElement
       
 32012             // which is a more common use case.
       
 32013             event.preventDefault();
       
 32014           })
       
 32015         }, _enabledEventHandlers[onSelectKey] = callAllEventHandlers(customClickHandler, function () {
       
 32016           _this.selectItemAtIndex(index, {
       
 32017             type: clickItem
       
 32018           });
       
 32019         }), _enabledEventHandlers); // Passing down the onMouseDown handler to prevent redirect
       
 32020         // of the activeElement if clicking on disabled items
       
 32021 
       
 32022         var eventHandlers = rest.disabled ? {
       
 32023           onMouseDown: enabledEventHandlers.onMouseDown
       
 32024         } : enabledEventHandlers;
       
 32025         return Object(esm_extends["a" /* default */])({
       
 32026           id: _this.getItemId(index),
       
 32027           role: 'option',
       
 32028           'aria-selected': _this.getState().highlightedIndex === index
       
 32029         }, eventHandlers, rest);
       
 32030       };
       
 32031 
       
 32032       _this.clearItems = function () {
       
 32033         _this.items = [];
       
 32034       };
       
 32035 
       
 32036       _this.reset = function (otherStateToSet, cb) {
       
 32037         if (otherStateToSet === void 0) {
       
 32038           otherStateToSet = {};
       
 32039         }
       
 32040 
       
 32041         otherStateToSet = pickState(otherStateToSet);
       
 32042 
       
 32043         _this.internalSetState(function (_ref8) {
       
 32044           var selectedItem = _ref8.selectedItem;
       
 32045           return Object(esm_extends["a" /* default */])({
       
 32046             isOpen: _this.props.defaultIsOpen,
       
 32047             highlightedIndex: _this.props.defaultHighlightedIndex,
       
 32048             inputValue: _this.props.itemToString(selectedItem)
       
 32049           }, otherStateToSet);
       
 32050         }, cb);
       
 32051       };
       
 32052 
       
 32053       _this.toggleMenu = function (otherStateToSet, cb) {
       
 32054         if (otherStateToSet === void 0) {
       
 32055           otherStateToSet = {};
       
 32056         }
       
 32057 
       
 32058         otherStateToSet = pickState(otherStateToSet);
       
 32059 
       
 32060         _this.internalSetState(function (_ref9) {
       
 32061           var isOpen = _ref9.isOpen;
       
 32062           return Object(esm_extends["a" /* default */])({
       
 32063             isOpen: !isOpen
       
 32064           }, isOpen && {
       
 32065             highlightedIndex: _this.props.defaultHighlightedIndex
       
 32066           }, otherStateToSet);
       
 32067         }, function () {
       
 32068           var _this$getState7 = _this.getState(),
       
 32069               isOpen = _this$getState7.isOpen,
       
 32070               highlightedIndex = _this$getState7.highlightedIndex;
       
 32071 
       
 32072           if (isOpen) {
       
 32073             if (_this.getItemCount() > 0 && typeof highlightedIndex === 'number') {
       
 32074               _this.setHighlightedIndex(highlightedIndex, otherStateToSet);
       
 32075             }
       
 32076           }
       
 32077 
       
 32078           cbToCb(cb)();
       
 32079         });
       
 32080       };
       
 32081 
       
 32082       _this.openMenu = function (cb) {
       
 32083         _this.internalSetState({
       
 32084           isOpen: true
       
 32085         }, cb);
       
 32086       };
       
 32087 
       
 32088       _this.closeMenu = function (cb) {
       
 32089         _this.internalSetState({
       
 32090           isOpen: false
       
 32091         }, cb);
       
 32092       };
       
 32093 
       
 32094       _this.updateStatus = debounce(function () {
       
 32095         var state = _this.getState();
       
 32096 
       
 32097         var item = _this.items[state.highlightedIndex];
       
 32098 
       
 32099         var resultCount = _this.getItemCount();
       
 32100 
       
 32101         var status = _this.props.getA11yStatusMessage(Object(esm_extends["a" /* default */])({
       
 32102           itemToString: _this.props.itemToString,
       
 32103           previousResultCount: _this.previousResultCount,
       
 32104           resultCount: resultCount,
       
 32105           highlightedItem: item
       
 32106         }, state));
       
 32107 
       
 32108         _this.previousResultCount = resultCount;
       
 32109         setStatus(status, _this.props.environment.document);
       
 32110       }, 200);
       
 32111 
       
 32112       // fancy destructuring + defaults + aliases
       
 32113       // this basically says each value of state should either be set to
       
 32114       // the initial value or the default value if the initial value is not provided
       
 32115       var _this$props = _this.props,
       
 32116           defaultHighlightedIndex = _this$props.defaultHighlightedIndex,
       
 32117           _this$props$initialHi = _this$props.initialHighlightedIndex,
       
 32118           _highlightedIndex = _this$props$initialHi === void 0 ? defaultHighlightedIndex : _this$props$initialHi,
       
 32119           defaultIsOpen = _this$props.defaultIsOpen,
       
 32120           _this$props$initialIs = _this$props.initialIsOpen,
       
 32121           _isOpen = _this$props$initialIs === void 0 ? defaultIsOpen : _this$props$initialIs,
       
 32122           _this$props$initialIn = _this$props.initialInputValue,
       
 32123           _inputValue = _this$props$initialIn === void 0 ? '' : _this$props$initialIn,
       
 32124           _this$props$initialSe = _this$props.initialSelectedItem,
       
 32125           _selectedItem = _this$props$initialSe === void 0 ? null : _this$props$initialSe;
       
 32126 
       
 32127       var _state = _this.getState({
       
 32128         highlightedIndex: _highlightedIndex,
       
 32129         isOpen: _isOpen,
       
 32130         inputValue: _inputValue,
       
 32131         selectedItem: _selectedItem
       
 32132       });
       
 32133 
       
 32134       if (_state.selectedItem != null && _this.props.initialInputValue === undefined) {
       
 32135         _state.inputValue = _this.props.itemToString(_state.selectedItem);
       
 32136       }
       
 32137 
       
 32138       _this.state = _state;
       
 32139       return _this;
       
 32140     }
       
 32141 
       
 32142     var _proto = Downshift.prototype;
       
 32143 
       
 32144     /**
       
 32145      * Clear all running timeouts
       
 32146      */
       
 32147     _proto.internalClearTimeouts = function internalClearTimeouts() {
       
 32148       this.timeoutIds.forEach(function (id) {
       
 32149         clearTimeout(id);
       
 32150       });
       
 32151       this.timeoutIds = [];
       
 32152     }
       
 32153     /**
       
 32154      * Gets the state based on internal state or props
       
 32155      * If a state value is passed via props, then that
       
 32156      * is the value given, otherwise it's retrieved from
       
 32157      * stateToMerge
       
 32158      *
       
 32159      * @param {Object} stateToMerge defaults to this.state
       
 32160      * @return {Object} the state
       
 32161      */
       
 32162     ;
       
 32163 
       
 32164     _proto.getState = function getState$1(stateToMerge) {
       
 32165       if (stateToMerge === void 0) {
       
 32166         stateToMerge = this.state;
       
 32167       }
       
 32168 
       
 32169       return getState(stateToMerge, this.props);
       
 32170     };
       
 32171 
       
 32172     _proto.getItemCount = function getItemCount() {
       
 32173       // things read better this way. They're in priority order:
       
 32174       // 1. `this.itemCount`
       
 32175       // 2. `this.props.itemCount`
       
 32176       // 3. `this.items.length`
       
 32177       var itemCount = this.items.length;
       
 32178 
       
 32179       if (this.itemCount != null) {
       
 32180         itemCount = this.itemCount;
       
 32181       } else if (this.props.itemCount !== undefined) {
       
 32182         itemCount = this.props.itemCount;
       
 32183       }
       
 32184 
       
 32185       return itemCount;
       
 32186     };
       
 32187 
       
 32188     _proto.getItemNodeFromIndex = function getItemNodeFromIndex(index) {
       
 32189       return this.props.environment.document.getElementById(this.getItemId(index));
       
 32190     };
       
 32191 
       
 32192     _proto.scrollHighlightedItemIntoView = function scrollHighlightedItemIntoView() {
       
 32193       /* istanbul ignore else (react-native) */
       
 32194       {
       
 32195         var node = this.getItemNodeFromIndex(this.getState().highlightedIndex);
       
 32196         this.props.scrollIntoView(node, this._menuNode);
       
 32197       }
       
 32198     };
       
 32199 
       
 32200     _proto.moveHighlightedIndex = function moveHighlightedIndex(amount, otherStateToSet) {
       
 32201       var _this6 = this;
       
 32202 
       
 32203       var itemCount = this.getItemCount();
       
 32204 
       
 32205       var _this$getState8 = this.getState(),
       
 32206           highlightedIndex = _this$getState8.highlightedIndex;
       
 32207 
       
 32208       if (itemCount > 0) {
       
 32209         var nextHighlightedIndex = getNextWrappingIndex(amount, highlightedIndex, itemCount, function (index) {
       
 32210           return _this6.getItemNodeFromIndex(index);
       
 32211         });
       
 32212         this.setHighlightedIndex(nextHighlightedIndex, otherStateToSet);
       
 32213       }
       
 32214     };
       
 32215 
       
 32216     _proto.getStateAndHelpers = function getStateAndHelpers() {
       
 32217       var _this$getState9 = this.getState(),
       
 32218           highlightedIndex = _this$getState9.highlightedIndex,
       
 32219           inputValue = _this$getState9.inputValue,
       
 32220           selectedItem = _this$getState9.selectedItem,
       
 32221           isOpen = _this$getState9.isOpen;
       
 32222 
       
 32223       var itemToString = this.props.itemToString;
       
 32224       var id = this.id;
       
 32225       var getRootProps = this.getRootProps,
       
 32226           getToggleButtonProps = this.getToggleButtonProps,
       
 32227           getLabelProps = this.getLabelProps,
       
 32228           getMenuProps = this.getMenuProps,
       
 32229           getInputProps = this.getInputProps,
       
 32230           getItemProps = this.getItemProps,
       
 32231           openMenu = this.openMenu,
       
 32232           closeMenu = this.closeMenu,
       
 32233           toggleMenu = this.toggleMenu,
       
 32234           selectItem = this.selectItem,
       
 32235           selectItemAtIndex = this.selectItemAtIndex,
       
 32236           selectHighlightedItem = this.selectHighlightedItem,
       
 32237           setHighlightedIndex = this.setHighlightedIndex,
       
 32238           clearSelection = this.clearSelection,
       
 32239           clearItems = this.clearItems,
       
 32240           reset = this.reset,
       
 32241           setItemCount = this.setItemCount,
       
 32242           unsetItemCount = this.unsetItemCount,
       
 32243           setState = this.internalSetState;
       
 32244       return {
       
 32245         // prop getters
       
 32246         getRootProps: getRootProps,
       
 32247         getToggleButtonProps: getToggleButtonProps,
       
 32248         getLabelProps: getLabelProps,
       
 32249         getMenuProps: getMenuProps,
       
 32250         getInputProps: getInputProps,
       
 32251         getItemProps: getItemProps,
       
 32252         // actions
       
 32253         reset: reset,
       
 32254         openMenu: openMenu,
       
 32255         closeMenu: closeMenu,
       
 32256         toggleMenu: toggleMenu,
       
 32257         selectItem: selectItem,
       
 32258         selectItemAtIndex: selectItemAtIndex,
       
 32259         selectHighlightedItem: selectHighlightedItem,
       
 32260         setHighlightedIndex: setHighlightedIndex,
       
 32261         clearSelection: clearSelection,
       
 32262         clearItems: clearItems,
       
 32263         setItemCount: setItemCount,
       
 32264         unsetItemCount: unsetItemCount,
       
 32265         setState: setState,
       
 32266         // props
       
 32267         itemToString: itemToString,
       
 32268         // derived
       
 32269         id: id,
       
 32270         // state
       
 32271         highlightedIndex: highlightedIndex,
       
 32272         inputValue: inputValue,
       
 32273         isOpen: isOpen,
       
 32274         selectedItem: selectedItem
       
 32275       };
       
 32276     } //////////////////////////// ROOT
       
 32277     ;
       
 32278 
       
 32279     _proto.componentDidMount = function componentDidMount() {
       
 32280       var _this7 = this;
       
 32281 
       
 32282       /* istanbul ignore if (react-native) */
       
 32283       if (false) {}
       
 32284       /* istanbul ignore if (react-native) */
       
 32285 
       
 32286 
       
 32287       {
       
 32288         // this.isMouseDown helps us track whether the mouse is currently held down.
       
 32289         // This is useful when the user clicks on an item in the list, but holds the mouse
       
 32290         // down long enough for the list to disappear (because the blur event fires on the input)
       
 32291         // this.isMouseDown is used in the blur handler on the input to determine whether the blur event should
       
 32292         // trigger hiding the menu.
       
 32293         var onMouseDown = function () {
       
 32294           _this7.isMouseDown = true;
       
 32295         };
       
 32296 
       
 32297         var onMouseUp = function (event) {
       
 32298           _this7.isMouseDown = false; // if the target element or the activeElement is within a downshift node
       
 32299           // then we don't want to reset downshift
       
 32300 
       
 32301           var contextWithinDownshift = targetWithinDownshift(event.target, [_this7._rootNode, _this7._menuNode], _this7.props.environment.document);
       
 32302 
       
 32303           if (!contextWithinDownshift && _this7.getState().isOpen) {
       
 32304             _this7.reset({
       
 32305               type: mouseUp
       
 32306             }, function () {
       
 32307               return _this7.props.onOuterClick(_this7.getStateAndHelpers());
       
 32308             });
       
 32309           }
       
 32310         }; // Touching an element in iOS gives focus and hover states, but touching out of
       
 32311         // the element will remove hover, and persist the focus state, resulting in the
       
 32312         // blur event not being triggered.
       
 32313         // this.isTouchMove helps us track whether the user is tapping or swiping on a touch screen.
       
 32314         // If the user taps outside of Downshift, the component should be reset,
       
 32315         // but not if the user is swiping
       
 32316 
       
 32317 
       
 32318         var onTouchStart = function () {
       
 32319           _this7.isTouchMove = false;
       
 32320         };
       
 32321 
       
 32322         var onTouchMove = function () {
       
 32323           _this7.isTouchMove = true;
       
 32324         };
       
 32325 
       
 32326         var onTouchEnd = function (event) {
       
 32327           var contextWithinDownshift = targetWithinDownshift(event.target, [_this7._rootNode, _this7._menuNode], _this7.props.environment.document, false);
       
 32328 
       
 32329           if (!_this7.isTouchMove && !contextWithinDownshift && _this7.getState().isOpen) {
       
 32330             _this7.reset({
       
 32331               type: touchEnd
       
 32332             }, function () {
       
 32333               return _this7.props.onOuterClick(_this7.getStateAndHelpers());
       
 32334             });
       
 32335           }
       
 32336         };
       
 32337 
       
 32338         var environment = this.props.environment;
       
 32339         environment.addEventListener('mousedown', onMouseDown);
       
 32340         environment.addEventListener('mouseup', onMouseUp);
       
 32341         environment.addEventListener('touchstart', onTouchStart);
       
 32342         environment.addEventListener('touchmove', onTouchMove);
       
 32343         environment.addEventListener('touchend', onTouchEnd);
       
 32344 
       
 32345         this.cleanup = function () {
       
 32346           _this7.internalClearTimeouts();
       
 32347 
       
 32348           _this7.updateStatus.cancel();
       
 32349 
       
 32350           environment.removeEventListener('mousedown', onMouseDown);
       
 32351           environment.removeEventListener('mouseup', onMouseUp);
       
 32352           environment.removeEventListener('touchstart', onTouchStart);
       
 32353           environment.removeEventListener('touchmove', onTouchMove);
       
 32354           environment.removeEventListener('touchend', onTouchEnd);
       
 32355         };
       
 32356       }
       
 32357     };
       
 32358 
       
 32359     _proto.shouldScroll = function shouldScroll(prevState, prevProps) {
       
 32360       var _ref10 = this.props.highlightedIndex === undefined ? this.getState() : this.props,
       
 32361           currentHighlightedIndex = _ref10.highlightedIndex;
       
 32362 
       
 32363       var _ref11 = prevProps.highlightedIndex === undefined ? prevState : prevProps,
       
 32364           prevHighlightedIndex = _ref11.highlightedIndex;
       
 32365 
       
 32366       var scrollWhenOpen = currentHighlightedIndex && this.getState().isOpen && !prevState.isOpen;
       
 32367       return scrollWhenOpen || currentHighlightedIndex !== prevHighlightedIndex;
       
 32368     };
       
 32369 
       
 32370     _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {
       
 32371       if (false) {}
       
 32372 
       
 32373       if (isControlledProp(this.props, 'selectedItem') && this.props.selectedItemChanged(prevProps.selectedItem, this.props.selectedItem)) {
       
 32374         this.internalSetState({
       
 32375           type: controlledPropUpdatedSelectedItem,
       
 32376           inputValue: this.props.itemToString(this.props.selectedItem)
       
 32377         });
       
 32378       }
       
 32379 
       
 32380       if (!this.avoidScrolling && this.shouldScroll(prevState, prevProps)) {
       
 32381         this.scrollHighlightedItemIntoView();
       
 32382       }
       
 32383       /* istanbul ignore else (react-native) */
       
 32384 
       
 32385 
       
 32386       this.updateStatus();
       
 32387     };
       
 32388 
       
 32389     _proto.componentWillUnmount = function componentWillUnmount() {
       
 32390       this.cleanup(); // avoids memory leak
       
 32391     };
       
 32392 
       
 32393     _proto.render = function render() {
       
 32394       var children = unwrapArray(this.props.children, downshift_esm_noop); // because the items are rerendered every time we call the children
       
 32395       // we clear this out each render and it will be populated again as
       
 32396       // getItemProps is called.
       
 32397 
       
 32398       this.clearItems(); // we reset this so we know whether the user calls getRootProps during
       
 32399       // this render. If they do then we don't need to do anything,
       
 32400       // if they don't then we need to clone the element they return and
       
 32401       // apply the props for them.
       
 32402 
       
 32403       this.getRootProps.called = false;
       
 32404       this.getRootProps.refKey = undefined;
       
 32405       this.getRootProps.suppressRefError = undefined; // we do something similar for getMenuProps
       
 32406 
       
 32407       this.getMenuProps.called = false;
       
 32408       this.getMenuProps.refKey = undefined;
       
 32409       this.getMenuProps.suppressRefError = undefined; // we do something similar for getLabelProps
       
 32410 
       
 32411       this.getLabelProps.called = false; // and something similar for getInputProps
       
 32412 
       
 32413       this.getInputProps.called = false;
       
 32414       var element = unwrapArray(children(this.getStateAndHelpers()));
       
 32415 
       
 32416       if (!element) {
       
 32417         return null;
       
 32418       }
       
 32419 
       
 32420       if (this.getRootProps.called || this.props.suppressRefError) {
       
 32421         if (false) {}
       
 32422 
       
 32423         return element;
       
 32424       } else if (isDOMElement(element)) {
       
 32425         // they didn't apply the root props, but we can clone
       
 32426         // this and apply the props ourselves
       
 32427         return Object(external_this_React_["cloneElement"])(element, this.getRootProps(getElementProps(element)));
       
 32428       }
       
 32429       /* istanbul ignore else */
       
 32430 
       
 32431 
       
 32432       if (false) {}
       
 32433       /* istanbul ignore next */
       
 32434 
       
 32435 
       
 32436       return undefined;
       
 32437     };
       
 32438 
       
 32439     return Downshift;
       
 32440   }(external_this_React_["Component"]);
       
 32441 
       
 32442   Downshift.defaultProps = {
       
 32443     defaultHighlightedIndex: null,
       
 32444     defaultIsOpen: false,
       
 32445     getA11yStatusMessage: downshift_esm_getA11yStatusMessage,
       
 32446     itemToString: function itemToString(i) {
       
 32447       if (i == null) {
       
 32448         return '';
       
 32449       }
       
 32450 
       
 32451       if (false) {}
       
 32452 
       
 32453       return String(i);
 30127     },
 32454     },
 30128     renderContent: function renderContent() {
 32455     onStateChange: downshift_esm_noop,
 30129       return Object(external_this_wp_element_["createElement"])(color_picker_ColorPicker, {
 32456     onInputValueChange: downshift_esm_noop,
 30130         color: value,
 32457     onUserAction: downshift_esm_noop,
 30131         onChangeComplete: function onChangeComplete(color) {
 32458     onChange: downshift_esm_noop,
 30132           return onChange(color.hex);
 32459     onSelect: downshift_esm_noop,
 30133         },
 32460     onOuterClick: downshift_esm_noop,
 30134         disableAlpha: true
 32461     selectedItemChanged: function selectedItemChanged(prevItem, item) {
       
 32462       return prevItem !== item;
       
 32463     },
       
 32464     environment: typeof window === 'undefined'
       
 32465     /* istanbul ignore next (ssr) */
       
 32466     ? {} : window,
       
 32467     stateReducer: function stateReducer(state, stateToSet) {
       
 32468       return stateToSet;
       
 32469     },
       
 32470     suppressRefError: false,
       
 32471     scrollIntoView: downshift_esm_scrollIntoView
       
 32472   };
       
 32473   Downshift.stateChangeTypes = stateChangeTypes;
       
 32474   return Downshift;
       
 32475 }();
       
 32476 
       
 32477  false ? undefined : void 0;
       
 32478 
       
 32479 function validateGetMenuPropsCalledCorrectly(node, _ref12) {
       
 32480   var refKey = _ref12.refKey;
       
 32481 
       
 32482   if (!node) {
       
 32483     // eslint-disable-next-line no-console
       
 32484     console.error("downshift: The ref prop \"" + refKey + "\" from getMenuProps was not applied correctly on your menu element.");
       
 32485   }
       
 32486 }
       
 32487 
       
 32488 function validateGetRootPropsCalledCorrectly(element, _ref13) {
       
 32489   var refKey = _ref13.refKey;
       
 32490   var refKeySpecified = refKey !== 'ref';
       
 32491   var isComposite = !isDOMElement(element);
       
 32492 
       
 32493   if (isComposite && !refKeySpecified && !Object(react_is["isForwardRef"])(element)) {
       
 32494     // eslint-disable-next-line no-console
       
 32495     console.error('downshift: You returned a non-DOM element. You must specify a refKey in getRootProps');
       
 32496   } else if (!isComposite && refKeySpecified) {
       
 32497     // eslint-disable-next-line no-console
       
 32498     console.error("downshift: You returned a DOM element. You should not specify a refKey in getRootProps. You specified \"" + refKey + "\"");
       
 32499   }
       
 32500 
       
 32501   if (!Object(react_is["isForwardRef"])(element) && !getElementProps(element)[refKey]) {
       
 32502     // eslint-disable-next-line no-console
       
 32503     console.error("downshift: You must apply the ref prop \"" + refKey + "\" from getRootProps onto your root element.");
       
 32504   }
       
 32505 }
       
 32506 
       
 32507 var dropdownDefaultStateValues = {
       
 32508   highlightedIndex: -1,
       
 32509   isOpen: false,
       
 32510   selectedItem: null,
       
 32511   inputValue: ''
       
 32512 };
       
 32513 
       
 32514 function callOnChangeProps(action, state, newState) {
       
 32515   var props = action.props,
       
 32516       type = action.type;
       
 32517   var changes = {};
       
 32518   Object.keys(state).forEach(function (key) {
       
 32519     invokeOnChangeHandler(key, props, state, newState);
       
 32520 
       
 32521     if (newState[key] !== state[key]) {
       
 32522       changes[key] = newState[key];
       
 32523     }
       
 32524   });
       
 32525 
       
 32526   if (props.onStateChange && Object.keys(changes).length) {
       
 32527     props.onStateChange(Object(esm_extends["a" /* default */])({
       
 32528       type: type
       
 32529     }, changes));
       
 32530   }
       
 32531 }
       
 32532 
       
 32533 function invokeOnChangeHandler(key, props, state, newState) {
       
 32534   var handler = "on" + capitalizeString(key) + "Change";
       
 32535 
       
 32536   if (props[handler] && newState[key] !== undefined && newState[key] !== state[key]) {
       
 32537     props[handler](newState);
       
 32538   }
       
 32539 }
       
 32540 /**
       
 32541  * Default state reducer that returns the changes.
       
 32542  *
       
 32543  * @param {Object} s state.
       
 32544  * @param {Object} a action with changes.
       
 32545  * @returns {Object} changes.
       
 32546  */
       
 32547 
       
 32548 
       
 32549 function downshift_esm_stateReducer(s, a) {
       
 32550   return a.changes;
       
 32551 }
       
 32552 /**
       
 32553  * Returns a message to be added to aria-live region when item is selected.
       
 32554  *
       
 32555  * @param {Object} selectionParameters Parameters required to build the message.
       
 32556  * @returns {string} The a11y message.
       
 32557  */
       
 32558 
       
 32559 
       
 32560 function downshift_esm_getA11ySelectionMessage(selectionParameters) {
       
 32561   var selectedItem = selectionParameters.selectedItem,
       
 32562       itemToStringLocal = selectionParameters.itemToString;
       
 32563   return selectedItem ? itemToStringLocal(selectedItem) + " has been selected." : '';
       
 32564 }
       
 32565 /**
       
 32566  * Debounced call for updating the a11y message.
       
 32567  */
       
 32568 
       
 32569 
       
 32570 var updateA11yStatus = debounce(function (getA11yMessage, document) {
       
 32571   setStatus(getA11yMessage(), document);
       
 32572 }, 200);
       
 32573 function getElementIds(_ref) {
       
 32574   var id = _ref.id,
       
 32575       labelId = _ref.labelId,
       
 32576       menuId = _ref.menuId,
       
 32577       getItemId = _ref.getItemId,
       
 32578       toggleButtonId = _ref.toggleButtonId;
       
 32579   var uniqueId = id === undefined ? "downshift-" + generateId() : id;
       
 32580   return {
       
 32581     labelId: labelId || uniqueId + "-label",
       
 32582     menuId: menuId || uniqueId + "-menu",
       
 32583     getItemId: getItemId || function (index) {
       
 32584       return uniqueId + "-item-" + index;
       
 32585     },
       
 32586     toggleButtonId: toggleButtonId || uniqueId + "-toggle-button"
       
 32587   };
       
 32588 }
       
 32589 function getItemIndex(index, item, items) {
       
 32590   if (index !== undefined) {
       
 32591     return index;
       
 32592   }
       
 32593 
       
 32594   if (items.length === 0) {
       
 32595     return -1;
       
 32596   }
       
 32597 
       
 32598   return items.indexOf(item);
       
 32599 }
       
 32600 
       
 32601 function downshift_esm_itemToString(item) {
       
 32602   return item ? String(item) : '';
       
 32603 }
       
 32604 
       
 32605 function getPropTypesValidator(caller, propTypes) {
       
 32606   // istanbul ignore next
       
 32607   return function (options) {
       
 32608     if (options === void 0) {
       
 32609       options = {};
       
 32610     }
       
 32611 
       
 32612     Object.keys(propTypes).forEach(function (key) {
       
 32613       prop_types_default.a.checkPropTypes(propTypes, options, key, caller.name);
       
 32614     });
       
 32615   };
       
 32616 }
       
 32617 function isAcceptedCharacterKey(key) {
       
 32618   return /^\S{1}$/.test(key);
       
 32619 }
       
 32620 function capitalizeString(string) {
       
 32621   return "" + string.slice(0, 1).toUpperCase() + string.slice(1);
       
 32622 }
       
 32623 function useLatestRef(val) {
       
 32624   var ref = Object(external_this_React_["useRef"])(val); // technically this is not "concurrent mode safe" because we're manipulating
       
 32625   // the value during render (so it's not idempotent). However, the places this
       
 32626   // hook is used is to support memoizing callbacks which will be called
       
 32627   // *during* render, so we need the latest values *during* render.
       
 32628   // If not for this, then we'd probably want to use useLayoutEffect instead.
       
 32629 
       
 32630   ref.current = val;
       
 32631   return ref;
       
 32632 }
       
 32633 /**
       
 32634  * Computes the controlled state using a the previous state, props,
       
 32635  * two reducers, one from downshift and an optional one from the user.
       
 32636  * Also calls the onChange handlers for state values that have changed.
       
 32637  *
       
 32638  * @param {Function} reducer Reducer function from downshift.
       
 32639  * @param {Object} initialState Initial state of the hook.
       
 32640  * @param {Object} props The hook props.
       
 32641  * @returns {Array} An array with the state and an action dispatcher.
       
 32642  */
       
 32643 
       
 32644 function useEnhancedReducer(reducer, initialState, props) {
       
 32645   var prevStateRef = Object(external_this_React_["useRef"])();
       
 32646   var actionRef = Object(external_this_React_["useRef"])();
       
 32647   var enhancedReducer = Object(external_this_React_["useCallback"])(function (state, action) {
       
 32648     actionRef.current = action;
       
 32649     state = getState(state, action.props);
       
 32650     var changes = reducer(state, action);
       
 32651     var newState = action.props.stateReducer(state, Object(esm_extends["a" /* default */])({}, action, {
       
 32652       changes: changes
       
 32653     }));
       
 32654     return newState;
       
 32655   }, [reducer]);
       
 32656 
       
 32657   var _useReducer = Object(external_this_React_["useReducer"])(enhancedReducer, initialState),
       
 32658       state = _useReducer[0],
       
 32659       dispatch = _useReducer[1];
       
 32660 
       
 32661   var propsRef = useLatestRef(props);
       
 32662   var dispatchWithProps = Object(external_this_React_["useCallback"])(function (action) {
       
 32663     return dispatch(Object(esm_extends["a" /* default */])({
       
 32664       props: propsRef.current
       
 32665     }, action));
       
 32666   }, [propsRef]);
       
 32667   var action = actionRef.current;
       
 32668   Object(external_this_React_["useEffect"])(function () {
       
 32669     if (action && prevStateRef.current && prevStateRef.current !== state) {
       
 32670       callOnChangeProps(action, getState(prevStateRef.current, action.props), state);
       
 32671     }
       
 32672 
       
 32673     prevStateRef.current = state;
       
 32674   }, [state, props, action]);
       
 32675   return [state, dispatchWithProps];
       
 32676 }
       
 32677 /**
       
 32678  * Wraps the useEnhancedReducer and applies the controlled prop values before
       
 32679  * returning the new state.
       
 32680  *
       
 32681  * @param {Function} reducer Reducer function from downshift.
       
 32682  * @param {Object} initialState Initial state of the hook.
       
 32683  * @param {Object} props The hook props.
       
 32684  * @returns {Array} An array with the state and an action dispatcher.
       
 32685  */
       
 32686 
       
 32687 function useControlledReducer(reducer, initialState, props) {
       
 32688   var _useEnhancedReducer = useEnhancedReducer(reducer, initialState, props),
       
 32689       state = _useEnhancedReducer[0],
       
 32690       dispatch = _useEnhancedReducer[1];
       
 32691 
       
 32692   return [getState(state, props), dispatch];
       
 32693 }
       
 32694 var downshift_esm_defaultProps = {
       
 32695   itemToString: downshift_esm_itemToString,
       
 32696   stateReducer: downshift_esm_stateReducer,
       
 32697   getA11ySelectionMessage: downshift_esm_getA11ySelectionMessage,
       
 32698   scrollIntoView: downshift_esm_scrollIntoView,
       
 32699   circularNavigation: false,
       
 32700   environment: typeof window === 'undefined'
       
 32701   /* istanbul ignore next (ssr) */
       
 32702   ? {} : window
       
 32703 };
       
 32704 function getDefaultValue(props, propKey, defaultStateValues) {
       
 32705   if (defaultStateValues === void 0) {
       
 32706     defaultStateValues = dropdownDefaultStateValues;
       
 32707   }
       
 32708 
       
 32709   var defaultPropKey = "default" + capitalizeString(propKey);
       
 32710 
       
 32711   if (defaultPropKey in props) {
       
 32712     return props[defaultPropKey];
       
 32713   }
       
 32714 
       
 32715   return defaultStateValues[propKey];
       
 32716 }
       
 32717 function getInitialValue(props, propKey, defaultStateValues) {
       
 32718   if (defaultStateValues === void 0) {
       
 32719     defaultStateValues = dropdownDefaultStateValues;
       
 32720   }
       
 32721 
       
 32722   if (propKey in props) {
       
 32723     return props[propKey];
       
 32724   }
       
 32725 
       
 32726   var initialPropKey = "initial" + capitalizeString(propKey);
       
 32727 
       
 32728   if (initialPropKey in props) {
       
 32729     return props[initialPropKey];
       
 32730   }
       
 32731 
       
 32732   return getDefaultValue(props, propKey, defaultStateValues);
       
 32733 }
       
 32734 function downshift_esm_getInitialState(props) {
       
 32735   var selectedItem = getInitialValue(props, 'selectedItem');
       
 32736   var isOpen = getInitialValue(props, 'isOpen');
       
 32737   var highlightedIndex = getInitialValue(props, 'highlightedIndex');
       
 32738   var inputValue = getInitialValue(props, 'inputValue');
       
 32739   return {
       
 32740     highlightedIndex: highlightedIndex < 0 && selectedItem && isOpen ? props.items.indexOf(selectedItem) : highlightedIndex,
       
 32741     isOpen: isOpen,
       
 32742     selectedItem: selectedItem,
       
 32743     inputValue: inputValue
       
 32744   };
       
 32745 }
       
 32746 function getHighlightedIndexOnOpen(props, state, offset, getItemNodeFromIndex) {
       
 32747   var items = props.items,
       
 32748       initialHighlightedIndex = props.initialHighlightedIndex,
       
 32749       defaultHighlightedIndex = props.defaultHighlightedIndex;
       
 32750   var selectedItem = state.selectedItem,
       
 32751       highlightedIndex = state.highlightedIndex;
       
 32752 
       
 32753   if (items.length === 0) {
       
 32754     return -1;
       
 32755   } // initialHighlightedIndex will give value to highlightedIndex on initial state only.
       
 32756 
       
 32757 
       
 32758   if (initialHighlightedIndex !== undefined && highlightedIndex === initialHighlightedIndex) {
       
 32759     return initialHighlightedIndex;
       
 32760   }
       
 32761 
       
 32762   if (defaultHighlightedIndex !== undefined) {
       
 32763     return defaultHighlightedIndex;
       
 32764   }
       
 32765 
       
 32766   if (selectedItem) {
       
 32767     if (offset === 0) {
       
 32768       return items.indexOf(selectedItem);
       
 32769     }
       
 32770 
       
 32771     return getNextWrappingIndex(offset, items.indexOf(selectedItem), items.length, getItemNodeFromIndex, false);
       
 32772   }
       
 32773 
       
 32774   if (offset === 0) {
       
 32775     return -1;
       
 32776   }
       
 32777 
       
 32778   return offset < 0 ? items.length - 1 : 0;
       
 32779 }
       
 32780 /**
       
 32781  * Reuse the movement tracking of mouse and touch events.
       
 32782  *
       
 32783  * @param {boolean} isOpen Whether the dropdown is open or not.
       
 32784  * @param {Array<Object>} downshiftElementRefs Downshift element refs to track movement (toggleButton, menu etc.)
       
 32785  * @param {Object} environment Environment where component/hook exists.
       
 32786  * @param {Function} handleBlur Handler on blur from mouse or touch.
       
 32787  * @returns {Object} Ref containing whether mouseDown or touchMove event is happening
       
 32788  */
       
 32789 
       
 32790 function useMouseAndTouchTracker(isOpen, downshiftElementRefs, environment, handleBlur) {
       
 32791   var mouseAndTouchTrackersRef = Object(external_this_React_["useRef"])({
       
 32792     isMouseDown: false,
       
 32793     isTouchMove: false
       
 32794   });
       
 32795   Object(external_this_React_["useEffect"])(function () {
       
 32796     // The same strategy for checking if a click occurred inside or outside downsift
       
 32797     // as in downshift.js.
       
 32798     var onMouseDown = function () {
       
 32799       mouseAndTouchTrackersRef.current.isMouseDown = true;
       
 32800     };
       
 32801 
       
 32802     var onMouseUp = function (event) {
       
 32803       mouseAndTouchTrackersRef.current.isMouseDown = false;
       
 32804 
       
 32805       if (isOpen && !targetWithinDownshift(event.target, downshiftElementRefs.map(function (ref) {
       
 32806         return ref.current;
       
 32807       }), environment.document)) {
       
 32808         handleBlur();
       
 32809       }
       
 32810     };
       
 32811 
       
 32812     var onTouchStart = function () {
       
 32813       mouseAndTouchTrackersRef.current.isTouchMove = false;
       
 32814     };
       
 32815 
       
 32816     var onTouchMove = function () {
       
 32817       mouseAndTouchTrackersRef.current.isTouchMove = true;
       
 32818     };
       
 32819 
       
 32820     var onTouchEnd = function (event) {
       
 32821       if (isOpen && !mouseAndTouchTrackersRef.current.isTouchMove && !targetWithinDownshift(event.target, downshiftElementRefs.map(function (ref) {
       
 32822         return ref.current;
       
 32823       }), environment.document, false)) {
       
 32824         handleBlur();
       
 32825       }
       
 32826     };
       
 32827 
       
 32828     environment.addEventListener('mousedown', onMouseDown);
       
 32829     environment.addEventListener('mouseup', onMouseUp);
       
 32830     environment.addEventListener('touchstart', onTouchStart);
       
 32831     environment.addEventListener('touchmove', onTouchMove);
       
 32832     environment.addEventListener('touchend', onTouchEnd);
       
 32833     return function () {
       
 32834       environment.removeEventListener('mousedown', onMouseDown);
       
 32835       environment.removeEventListener('mouseup', onMouseUp);
       
 32836       environment.removeEventListener('touchstart', onTouchStart);
       
 32837       environment.removeEventListener('touchmove', onTouchMove);
       
 32838       environment.removeEventListener('touchend', onTouchEnd);
       
 32839     }; // eslint-disable-next-line react-hooks/exhaustive-deps
       
 32840   }, [isOpen, environment]);
       
 32841   return mouseAndTouchTrackersRef;
       
 32842 }
       
 32843 /**
       
 32844  * Custom hook that checks if getter props are called correctly.
       
 32845  *
       
 32846  * @param  {...any} propKeys Getter prop names to be handled.
       
 32847  * @returns {Function} Setter function called inside getter props to set call information.
       
 32848  */
       
 32849 
       
 32850 function useGetterPropsCalledChecker() {
       
 32851   var isNotProduction = "production" !== 'production';
       
 32852   var isInitialMountRef = Object(external_this_React_["useRef"])(true);
       
 32853 
       
 32854   for (var _len = arguments.length, propKeys = new Array(_len), _key = 0; _key < _len; _key++) {
       
 32855     propKeys[_key] = arguments[_key];
       
 32856   }
       
 32857 
       
 32858   var getterPropsCalledRef = Object(external_this_React_["useRef"])(propKeys.reduce(function (acc, propKey) {
       
 32859     acc[propKey] = {};
       
 32860     return acc;
       
 32861   }, {}));
       
 32862   Object(external_this_React_["useEffect"])(function () {
       
 32863     if (!isNotProduction) {
       
 32864       return;
       
 32865     }
       
 32866 
       
 32867     Object.keys(getterPropsCalledRef.current).forEach(function (propKey) {
       
 32868       var propCallInfo = getterPropsCalledRef.current[propKey];
       
 32869 
       
 32870       if (isInitialMountRef.current) {
       
 32871         if (!Object.keys(propCallInfo).length) {
       
 32872           // eslint-disable-next-line no-console
       
 32873           console.error("downshift: You forgot to call the " + propKey + " getter function on your component / element.");
       
 32874           return;
       
 32875         }
       
 32876       }
       
 32877 
       
 32878       var suppressRefError = propCallInfo.suppressRefError,
       
 32879           refKey = propCallInfo.refKey,
       
 32880           elementRef = propCallInfo.elementRef;
       
 32881 
       
 32882       if ((!elementRef || !elementRef.current) && !suppressRefError) {
       
 32883         // eslint-disable-next-line no-console
       
 32884         console.error("downshift: The ref prop \"" + refKey + "\" from " + propKey + " was not applied correctly on your element.");
       
 32885       }
       
 32886     });
       
 32887     isInitialMountRef.current = false;
       
 32888   });
       
 32889   var setGetterPropCallInfo = Object(external_this_React_["useCallback"])(function (propKey, suppressRefError, refKey, elementRef) {
       
 32890     if (false) {}
       
 32891   }, []);
       
 32892   return setGetterPropCallInfo;
       
 32893 }
       
 32894 
       
 32895 function getItemIndexByCharacterKey(keysSoFar, highlightedIndex, items, itemToStringParam, getItemNodeFromIndex) {
       
 32896   var lowerCasedItemStrings = items.map(function (item) {
       
 32897     return itemToStringParam(item).toLowerCase();
       
 32898   });
       
 32899   var lowerCasedKeysSoFar = keysSoFar.toLowerCase();
       
 32900 
       
 32901   var isValid = function (itemString, index) {
       
 32902     var element = getItemNodeFromIndex(index);
       
 32903     return itemString.startsWith(lowerCasedKeysSoFar) && !(element && element.hasAttribute('disabled'));
       
 32904   };
       
 32905 
       
 32906   for (var index = highlightedIndex + 1; index < lowerCasedItemStrings.length; index++) {
       
 32907     var itemString = lowerCasedItemStrings[index];
       
 32908 
       
 32909     if (isValid(itemString, index)) {
       
 32910       return index;
       
 32911     }
       
 32912   }
       
 32913 
       
 32914   for (var _index = 0; _index < highlightedIndex; _index++) {
       
 32915     var _itemString = lowerCasedItemStrings[_index];
       
 32916 
       
 32917     if (isValid(_itemString, _index)) {
       
 32918       return _index;
       
 32919     }
       
 32920   }
       
 32921 
       
 32922   return highlightedIndex;
       
 32923 }
       
 32924 
       
 32925 var downshift_esm_propTypes = {
       
 32926   items: prop_types_default.a.array.isRequired,
       
 32927   itemToString: prop_types_default.a.func,
       
 32928   getA11yStatusMessage: prop_types_default.a.func,
       
 32929   getA11ySelectionMessage: prop_types_default.a.func,
       
 32930   circularNavigation: prop_types_default.a.bool,
       
 32931   highlightedIndex: prop_types_default.a.number,
       
 32932   defaultHighlightedIndex: prop_types_default.a.number,
       
 32933   initialHighlightedIndex: prop_types_default.a.number,
       
 32934   isOpen: prop_types_default.a.bool,
       
 32935   defaultIsOpen: prop_types_default.a.bool,
       
 32936   initialIsOpen: prop_types_default.a.bool,
       
 32937   selectedItem: prop_types_default.a.any,
       
 32938   initialSelectedItem: prop_types_default.a.any,
       
 32939   defaultSelectedItem: prop_types_default.a.any,
       
 32940   id: prop_types_default.a.string,
       
 32941   labelId: prop_types_default.a.string,
       
 32942   menuId: prop_types_default.a.string,
       
 32943   getItemId: prop_types_default.a.func,
       
 32944   toggleButtonId: prop_types_default.a.string,
       
 32945   stateReducer: prop_types_default.a.func,
       
 32946   onSelectedItemChange: prop_types_default.a.func,
       
 32947   onHighlightedIndexChange: prop_types_default.a.func,
       
 32948   onStateChange: prop_types_default.a.func,
       
 32949   onIsOpenChange: prop_types_default.a.func,
       
 32950   environment: prop_types_default.a.shape({
       
 32951     addEventListener: prop_types_default.a.func,
       
 32952     removeEventListener: prop_types_default.a.func,
       
 32953     document: prop_types_default.a.shape({
       
 32954       getElementById: prop_types_default.a.func,
       
 32955       activeElement: prop_types_default.a.any,
       
 32956       body: prop_types_default.a.any
       
 32957     })
       
 32958   })
       
 32959 };
       
 32960 /**
       
 32961  * Default implementation for status message. Only added when menu is open.
       
 32962  * Will specift if there are results in the list, and if so, how many,
       
 32963  * and what keys are relevant.
       
 32964  *
       
 32965  * @param {Object} param the downshift state and other relevant properties
       
 32966  * @return {String} the a11y status message
       
 32967  */
       
 32968 
       
 32969 function getA11yStatusMessage$1(_ref) {
       
 32970   var isOpen = _ref.isOpen,
       
 32971       resultCount = _ref.resultCount,
       
 32972       previousResultCount = _ref.previousResultCount;
       
 32973 
       
 32974   if (!isOpen) {
       
 32975     return '';
       
 32976   }
       
 32977 
       
 32978   if (!resultCount) {
       
 32979     return 'No results are available.';
       
 32980   }
       
 32981 
       
 32982   if (resultCount !== previousResultCount) {
       
 32983     return resultCount + " result" + (resultCount === 1 ? ' is' : 's are') + " available, use up and down arrow keys to navigate. Press Enter or Space Bar keys to select.";
       
 32984   }
       
 32985 
       
 32986   return '';
       
 32987 }
       
 32988 
       
 32989 var defaultProps$1 = Object(esm_extends["a" /* default */])({}, downshift_esm_defaultProps, {
       
 32990   getA11yStatusMessage: getA11yStatusMessage$1
       
 32991 });
       
 32992 
       
 32993 var MenuKeyDownArrowDown =  false ? undefined : 0;
       
 32994 var MenuKeyDownArrowUp =  false ? undefined : 1;
       
 32995 var MenuKeyDownEscape =  false ? undefined : 2;
       
 32996 var MenuKeyDownHome =  false ? undefined : 3;
       
 32997 var MenuKeyDownEnd =  false ? undefined : 4;
       
 32998 var MenuKeyDownEnter =  false ? undefined : 5;
       
 32999 var MenuKeyDownSpaceButton =  false ? undefined : 6;
       
 33000 var MenuKeyDownCharacter =  false ? undefined : 7;
       
 33001 var MenuBlur =  false ? undefined : 8;
       
 33002 var MenuMouseLeave =  false ? undefined : 9;
       
 33003 var ItemMouseMove =  false ? undefined : 10;
       
 33004 var ItemClick =  false ? undefined : 11;
       
 33005 var ToggleButtonClick =  false ? undefined : 12;
       
 33006 var ToggleButtonKeyDownArrowDown =  false ? undefined : 13;
       
 33007 var ToggleButtonKeyDownArrowUp =  false ? undefined : 14;
       
 33008 var ToggleButtonKeyDownCharacter =  false ? undefined : 15;
       
 33009 var FunctionToggleMenu =  false ? undefined : 16;
       
 33010 var FunctionOpenMenu =  false ? undefined : 17;
       
 33011 var FunctionCloseMenu =  false ? undefined : 18;
       
 33012 var FunctionSetHighlightedIndex =  false ? undefined : 19;
       
 33013 var FunctionSelectItem =  false ? undefined : 20;
       
 33014 var FunctionSetInputValue =  false ? undefined : 21;
       
 33015 var FunctionReset =  false ? undefined : 22;
       
 33016 
       
 33017 var stateChangeTypes$1 = /*#__PURE__*/Object.freeze({
       
 33018   __proto__: null,
       
 33019   MenuKeyDownArrowDown: MenuKeyDownArrowDown,
       
 33020   MenuKeyDownArrowUp: MenuKeyDownArrowUp,
       
 33021   MenuKeyDownEscape: MenuKeyDownEscape,
       
 33022   MenuKeyDownHome: MenuKeyDownHome,
       
 33023   MenuKeyDownEnd: MenuKeyDownEnd,
       
 33024   MenuKeyDownEnter: MenuKeyDownEnter,
       
 33025   MenuKeyDownSpaceButton: MenuKeyDownSpaceButton,
       
 33026   MenuKeyDownCharacter: MenuKeyDownCharacter,
       
 33027   MenuBlur: MenuBlur,
       
 33028   MenuMouseLeave: MenuMouseLeave,
       
 33029   ItemMouseMove: ItemMouseMove,
       
 33030   ItemClick: ItemClick,
       
 33031   ToggleButtonClick: ToggleButtonClick,
       
 33032   ToggleButtonKeyDownArrowDown: ToggleButtonKeyDownArrowDown,
       
 33033   ToggleButtonKeyDownArrowUp: ToggleButtonKeyDownArrowUp,
       
 33034   ToggleButtonKeyDownCharacter: ToggleButtonKeyDownCharacter,
       
 33035   FunctionToggleMenu: FunctionToggleMenu,
       
 33036   FunctionOpenMenu: FunctionOpenMenu,
       
 33037   FunctionCloseMenu: FunctionCloseMenu,
       
 33038   FunctionSetHighlightedIndex: FunctionSetHighlightedIndex,
       
 33039   FunctionSelectItem: FunctionSelectItem,
       
 33040   FunctionSetInputValue: FunctionSetInputValue,
       
 33041   FunctionReset: FunctionReset
       
 33042 });
       
 33043 
       
 33044 /* eslint-disable complexity */
       
 33045 
       
 33046 function downshiftSelectReducer(state, action) {
       
 33047   var type = action.type,
       
 33048       props = action.props,
       
 33049       shiftKey = action.shiftKey;
       
 33050   var changes;
       
 33051 
       
 33052   switch (type) {
       
 33053     case ItemMouseMove:
       
 33054       changes = {
       
 33055         highlightedIndex: action.index
       
 33056       };
       
 33057       break;
       
 33058 
       
 33059     case ItemClick:
       
 33060       changes = {
       
 33061         isOpen: getDefaultValue(props, 'isOpen'),
       
 33062         highlightedIndex: getDefaultValue(props, 'highlightedIndex'),
       
 33063         selectedItem: props.items[action.index]
       
 33064       };
       
 33065       break;
       
 33066 
       
 33067     case ToggleButtonKeyDownCharacter:
       
 33068       {
       
 33069         var lowercasedKey = action.key;
       
 33070         var inputValue = "" + state.inputValue + lowercasedKey;
       
 33071         var itemIndex = getItemIndexByCharacterKey(inputValue, state.selectedItem ? props.items.indexOf(state.selectedItem) : -1, props.items, props.itemToString, action.getItemNodeFromIndex);
       
 33072         changes = Object(esm_extends["a" /* default */])({
       
 33073           inputValue: inputValue
       
 33074         }, itemIndex >= 0 && {
       
 33075           selectedItem: props.items[itemIndex]
       
 33076         });
       
 33077       }
       
 33078       break;
       
 33079 
       
 33080     case ToggleButtonKeyDownArrowDown:
       
 33081       changes = {
       
 33082         highlightedIndex: getHighlightedIndexOnOpen(props, state, 1, action.getItemNodeFromIndex),
       
 33083         isOpen: true
       
 33084       };
       
 33085       break;
       
 33086 
       
 33087     case ToggleButtonKeyDownArrowUp:
       
 33088       changes = {
       
 33089         highlightedIndex: getHighlightedIndexOnOpen(props, state, -1, action.getItemNodeFromIndex),
       
 33090         isOpen: true
       
 33091       };
       
 33092       break;
       
 33093 
       
 33094     case MenuKeyDownEnter:
       
 33095     case MenuKeyDownSpaceButton:
       
 33096       changes = Object(esm_extends["a" /* default */])({
       
 33097         isOpen: getDefaultValue(props, 'isOpen'),
       
 33098         highlightedIndex: getDefaultValue(props, 'highlightedIndex')
       
 33099       }, state.highlightedIndex >= 0 && {
       
 33100         selectedItem: props.items[state.highlightedIndex]
 30135       });
 33101       });
 30136     }
 33102       break;
 30137   }), Object(external_this_wp_element_["createElement"])(build_module_button, {
 33103 
 30138     className: "components-color-palette__clear",
 33104     case MenuKeyDownHome:
 30139     type: "button",
 33105       changes = {
 30140     onClick: function onClick() {
 33106         highlightedIndex: getNextNonDisabledIndex(1, 0, props.items.length, action.getItemNodeFromIndex, false)
 30141       return onChange(undefined);
 33107       };
 30142     },
 33108       break;
 30143     isSmall: true,
 33109 
 30144     isDefault: true
 33110     case MenuKeyDownEnd:
 30145   }, Object(external_this_wp_i18n_["__"])('Clear'))));
 33111       changes = {
 30146 }
 33112         highlightedIndex: getNextNonDisabledIndex(-1, props.items.length - 1, props.items.length, action.getItemNodeFromIndex, false)
       
 33113       };
       
 33114       break;
       
 33115 
       
 33116     case MenuKeyDownEscape:
       
 33117       changes = {
       
 33118         isOpen: false,
       
 33119         highlightedIndex: -1
       
 33120       };
       
 33121       break;
       
 33122 
       
 33123     case MenuBlur:
       
 33124       changes = {
       
 33125         isOpen: false,
       
 33126         highlightedIndex: -1
       
 33127       };
       
 33128       break;
       
 33129 
       
 33130     case MenuKeyDownCharacter:
       
 33131       {
       
 33132         var _lowercasedKey = action.key;
       
 33133 
       
 33134         var _inputValue = "" + state.inputValue + _lowercasedKey;
       
 33135 
       
 33136         var highlightedIndex = getItemIndexByCharacterKey(_inputValue, state.highlightedIndex, props.items, props.itemToString, action.getItemNodeFromIndex);
       
 33137         changes = Object(esm_extends["a" /* default */])({
       
 33138           inputValue: _inputValue
       
 33139         }, highlightedIndex >= 0 && {
       
 33140           highlightedIndex: highlightedIndex
       
 33141         });
       
 33142       }
       
 33143       break;
       
 33144 
       
 33145     case MenuKeyDownArrowDown:
       
 33146       changes = {
       
 33147         highlightedIndex: getNextWrappingIndex(shiftKey ? 5 : 1, state.highlightedIndex, props.items.length, action.getItemNodeFromIndex, props.circularNavigation)
       
 33148       };
       
 33149       break;
       
 33150 
       
 33151     case MenuKeyDownArrowUp:
       
 33152       changes = {
       
 33153         highlightedIndex: getNextWrappingIndex(shiftKey ? -5 : -1, state.highlightedIndex, props.items.length, action.getItemNodeFromIndex, props.circularNavigation)
       
 33154       };
       
 33155       break;
       
 33156 
       
 33157     case MenuMouseLeave:
       
 33158       changes = {
       
 33159         highlightedIndex: -1
       
 33160       };
       
 33161       break;
       
 33162 
       
 33163     case ToggleButtonClick:
       
 33164     case FunctionToggleMenu:
       
 33165       changes = {
       
 33166         isOpen: !state.isOpen,
       
 33167         highlightedIndex: state.isOpen ? -1 : getHighlightedIndexOnOpen(props, state, 0)
       
 33168       };
       
 33169       break;
       
 33170 
       
 33171     case FunctionOpenMenu:
       
 33172       changes = {
       
 33173         isOpen: true,
       
 33174         highlightedIndex: getHighlightedIndexOnOpen(props, state, 0)
       
 33175       };
       
 33176       break;
       
 33177 
       
 33178     case FunctionCloseMenu:
       
 33179       changes = {
       
 33180         isOpen: false
       
 33181       };
       
 33182       break;
       
 33183 
       
 33184     case FunctionSetHighlightedIndex:
       
 33185       changes = {
       
 33186         highlightedIndex: action.highlightedIndex
       
 33187       };
       
 33188       break;
       
 33189 
       
 33190     case FunctionSelectItem:
       
 33191       changes = {
       
 33192         selectedItem: action.selectedItem
       
 33193       };
       
 33194       break;
       
 33195 
       
 33196     case FunctionSetInputValue:
       
 33197       changes = {
       
 33198         inputValue: action.inputValue
       
 33199       };
       
 33200       break;
       
 33201 
       
 33202     case FunctionReset:
       
 33203       changes = {
       
 33204         highlightedIndex: getDefaultValue(props, 'highlightedIndex'),
       
 33205         isOpen: getDefaultValue(props, 'isOpen'),
       
 33206         selectedItem: getDefaultValue(props, 'selectedItem'),
       
 33207         inputValue: getDefaultValue(props, 'inputValue')
       
 33208       };
       
 33209       break;
       
 33210 
       
 33211     default:
       
 33212       throw new Error('Reducer called without proper action type.');
       
 33213   }
       
 33214 
       
 33215   return Object(esm_extends["a" /* default */])({}, state, changes);
       
 33216 }
       
 33217 /* eslint-enable complexity */
       
 33218 
       
 33219 var validatePropTypes =  true ?
       
 33220 /* istanbul ignore next */
       
 33221 null : undefined;
       
 33222 useSelect.stateChangeTypes = stateChangeTypes$1;
       
 33223 
       
 33224 function useSelect(userProps) {
       
 33225   if (userProps === void 0) {
       
 33226     userProps = {};
       
 33227   }
       
 33228 
       
 33229   /* istanbul ignore else */
       
 33230   if (false) {} // Props defaults and destructuring.
       
 33231 
       
 33232 
       
 33233   var props = Object(esm_extends["a" /* default */])({}, defaultProps$1, userProps);
       
 33234 
       
 33235   var items = props.items,
       
 33236       scrollIntoView = props.scrollIntoView,
       
 33237       environment = props.environment,
       
 33238       initialIsOpen = props.initialIsOpen,
       
 33239       defaultIsOpen = props.defaultIsOpen,
       
 33240       itemToString = props.itemToString,
       
 33241       getA11ySelectionMessage = props.getA11ySelectionMessage,
       
 33242       getA11yStatusMessage = props.getA11yStatusMessage; // Initial state depending on controlled props.
       
 33243 
       
 33244   var initialState = downshift_esm_getInitialState(props);
       
 33245 
       
 33246   var _useControlledReducer = useControlledReducer(downshiftSelectReducer, initialState, props),
       
 33247       state = _useControlledReducer[0],
       
 33248       dispatch = _useControlledReducer[1];
       
 33249 
       
 33250   var isOpen = state.isOpen,
       
 33251       highlightedIndex = state.highlightedIndex,
       
 33252       selectedItem = state.selectedItem,
       
 33253       inputValue = state.inputValue; // Element efs.
       
 33254 
       
 33255   var toggleButtonRef = Object(external_this_React_["useRef"])(null);
       
 33256   var menuRef = Object(external_this_React_["useRef"])(null);
       
 33257   var itemRefs = Object(external_this_React_["useRef"])();
       
 33258   itemRefs.current = {}; // used not to scroll when highlight by mouse.
       
 33259 
       
 33260   var shouldScrollRef = Object(external_this_React_["useRef"])(true); // used not to trigger menu blur action in some scenarios.
       
 33261 
       
 33262   var shouldBlurRef = Object(external_this_React_["useRef"])(true); // used to keep the inputValue clearTimeout object between renders.
       
 33263 
       
 33264   var clearTimeoutRef = Object(external_this_React_["useRef"])(null); // prevent id re-generation between renders.
       
 33265 
       
 33266   var elementIdsRef = Object(external_this_React_["useRef"])(getElementIds(props)); // used to keep track of how many items we had on previous cycle.
       
 33267 
       
 33268   var previousResultCountRef = Object(external_this_React_["useRef"])();
       
 33269   var isInitialMountRef = Object(external_this_React_["useRef"])(true); // used for checking when props are moving from controlled to uncontrolled.
       
 33270 
       
 33271   var prevPropsRef = Object(external_this_React_["useRef"])(props); // utility callback to get item element.
       
 33272 
       
 33273   var latest = useLatestRef({
       
 33274     state: state,
       
 33275     props: props
       
 33276   }); // Some utils.
       
 33277 
       
 33278   var getItemNodeFromIndex = function (index) {
       
 33279     return itemRefs.current[elementIdsRef.current.getItemId(index)];
       
 33280   }; // Effects.
       
 33281   // Sets a11y status message on changes in state.
       
 33282 
       
 33283 
       
 33284   Object(external_this_React_["useEffect"])(function () {
       
 33285     if (isInitialMountRef.current) {
       
 33286       return;
       
 33287     }
       
 33288 
       
 33289     var previousResultCount = previousResultCountRef.current;
       
 33290     updateA11yStatus(function () {
       
 33291       return getA11yStatusMessage({
       
 33292         isOpen: isOpen,
       
 33293         highlightedIndex: highlightedIndex,
       
 33294         selectedItem: selectedItem,
       
 33295         inputValue: inputValue,
       
 33296         highlightedItem: items[highlightedIndex],
       
 33297         resultCount: items.length,
       
 33298         itemToString: itemToString,
       
 33299         previousResultCount: previousResultCount
       
 33300       });
       
 33301     }, environment.document); // eslint-disable-next-line react-hooks/exhaustive-deps
       
 33302   }, [isOpen, highlightedIndex, inputValue, items]); // Sets a11y status message on changes in selectedItem.
       
 33303 
       
 33304   Object(external_this_React_["useEffect"])(function () {
       
 33305     if (isInitialMountRef.current) {
       
 33306       return;
       
 33307     }
       
 33308 
       
 33309     var previousResultCount = previousResultCountRef.current;
       
 33310     updateA11yStatus(function () {
       
 33311       return getA11ySelectionMessage({
       
 33312         isOpen: isOpen,
       
 33313         highlightedIndex: highlightedIndex,
       
 33314         selectedItem: selectedItem,
       
 33315         inputValue: inputValue,
       
 33316         highlightedItem: items[highlightedIndex],
       
 33317         resultCount: items.length,
       
 33318         itemToString: itemToString,
       
 33319         previousResultCount: previousResultCount
       
 33320       });
       
 33321     }, environment.document); // eslint-disable-next-line react-hooks/exhaustive-deps
       
 33322   }, [selectedItem]); // Sets cleanup for the keysSoFar after 500ms.
       
 33323 
       
 33324   Object(external_this_React_["useEffect"])(function () {
       
 33325     // init the clean function here as we need access to dispatch.
       
 33326     if (isInitialMountRef.current) {
       
 33327       clearTimeoutRef.current = debounce(function (outerDispatch) {
       
 33328         outerDispatch({
       
 33329           type: FunctionSetInputValue,
       
 33330           inputValue: ''
       
 33331         });
       
 33332       }, 500);
       
 33333     }
       
 33334 
       
 33335     if (!inputValue) {
       
 33336       return;
       
 33337     }
       
 33338 
       
 33339     clearTimeoutRef.current(dispatch); // eslint-disable-next-line react-hooks/exhaustive-deps
       
 33340   }, [inputValue]);
       
 33341   /* Controls the focus on the menu or the toggle button. */
       
 33342 
       
 33343   Object(external_this_React_["useEffect"])(function () {
       
 33344     // Don't focus menu on first render.
       
 33345     if (isInitialMountRef.current) {
       
 33346       // Unless it was initialised as open.
       
 33347       if ((initialIsOpen || defaultIsOpen || isOpen) && menuRef.current) {
       
 33348         menuRef.current.focus();
       
 33349       }
       
 33350 
       
 33351       return;
       
 33352     } // Focus menu on open.
       
 33353 
       
 33354 
       
 33355     if (isOpen) {
       
 33356       // istanbul ignore else
       
 33357       if (menuRef.current) {
       
 33358         menuRef.current.focus();
       
 33359       }
       
 33360 
       
 33361       return;
       
 33362     } // Focus toggleButton on close, but not if it was closed with (Shift+)Tab.
       
 33363 
       
 33364 
       
 33365     if (environment.document.activeElement === menuRef.current) {
       
 33366       // istanbul ignore else
       
 33367       if (toggleButtonRef.current) {
       
 33368         shouldBlurRef.current = false;
       
 33369         toggleButtonRef.current.focus();
       
 33370       }
       
 33371     } // eslint-disable-next-line react-hooks/exhaustive-deps
       
 33372 
       
 33373   }, [isOpen]); // Scroll on highlighted item if change comes from keyboard.
       
 33374 
       
 33375   Object(external_this_React_["useEffect"])(function () {
       
 33376     if (highlightedIndex < 0 || !isOpen || !Object.keys(itemRefs.current).length) {
       
 33377       return;
       
 33378     }
       
 33379 
       
 33380     if (shouldScrollRef.current === false) {
       
 33381       shouldScrollRef.current = true;
       
 33382     } else {
       
 33383       scrollIntoView(getItemNodeFromIndex(highlightedIndex), menuRef.current);
       
 33384     } // eslint-disable-next-line react-hooks/exhaustive-deps
       
 33385 
       
 33386   }, [highlightedIndex]);
       
 33387   Object(external_this_React_["useEffect"])(function () {
       
 33388     if (isInitialMountRef.current) {
       
 33389       return;
       
 33390     }
       
 33391 
       
 33392     previousResultCountRef.current = items.length;
       
 33393   });
       
 33394   Object(external_this_React_["useEffect"])(function () {
       
 33395     if (isInitialMountRef.current) {
       
 33396       return;
       
 33397     }
       
 33398 
       
 33399     validateControlledUnchanged(state, prevPropsRef.current, props);
       
 33400     prevPropsRef.current = props;
       
 33401   }, [state, props]); // Add mouse/touch events to document.
       
 33402 
       
 33403   var mouseAndTouchTrackersRef = useMouseAndTouchTracker(isOpen, [menuRef, toggleButtonRef], environment, function () {
       
 33404     dispatch({
       
 33405       type: MenuBlur
       
 33406     });
       
 33407   });
       
 33408   var setGetterPropCallInfo = useGetterPropsCalledChecker('getMenuProps', 'getToggleButtonProps'); // Make initial ref false.
       
 33409 
       
 33410   Object(external_this_React_["useEffect"])(function () {
       
 33411     isInitialMountRef.current = false;
       
 33412   }, []); // Event handler functions.
       
 33413 
       
 33414   var toggleButtonKeyDownHandlers = Object(external_this_React_["useMemo"])(function () {
       
 33415     return {
       
 33416       ArrowDown: function ArrowDown(event) {
       
 33417         event.preventDefault();
       
 33418         dispatch({
       
 33419           type: ToggleButtonKeyDownArrowDown,
       
 33420           getItemNodeFromIndex: getItemNodeFromIndex,
       
 33421           shiftKey: event.shiftKey
       
 33422         });
       
 33423       },
       
 33424       ArrowUp: function ArrowUp(event) {
       
 33425         event.preventDefault();
       
 33426         dispatch({
       
 33427           type: ToggleButtonKeyDownArrowUp,
       
 33428           getItemNodeFromIndex: getItemNodeFromIndex,
       
 33429           shiftKey: event.shiftKey
       
 33430         });
       
 33431       }
       
 33432     };
       
 33433   }, [dispatch]);
       
 33434   var menuKeyDownHandlers = Object(external_this_React_["useMemo"])(function () {
       
 33435     return {
       
 33436       ArrowDown: function ArrowDown(event) {
       
 33437         event.preventDefault();
       
 33438         dispatch({
       
 33439           type: MenuKeyDownArrowDown,
       
 33440           getItemNodeFromIndex: getItemNodeFromIndex,
       
 33441           shiftKey: event.shiftKey
       
 33442         });
       
 33443       },
       
 33444       ArrowUp: function ArrowUp(event) {
       
 33445         event.preventDefault();
       
 33446         dispatch({
       
 33447           type: MenuKeyDownArrowUp,
       
 33448           getItemNodeFromIndex: getItemNodeFromIndex,
       
 33449           shiftKey: event.shiftKey
       
 33450         });
       
 33451       },
       
 33452       Home: function Home(event) {
       
 33453         event.preventDefault();
       
 33454         dispatch({
       
 33455           type: MenuKeyDownHome,
       
 33456           getItemNodeFromIndex: getItemNodeFromIndex
       
 33457         });
       
 33458       },
       
 33459       End: function End(event) {
       
 33460         event.preventDefault();
       
 33461         dispatch({
       
 33462           type: MenuKeyDownEnd,
       
 33463           getItemNodeFromIndex: getItemNodeFromIndex
       
 33464         });
       
 33465       },
       
 33466       Escape: function Escape() {
       
 33467         dispatch({
       
 33468           type: MenuKeyDownEscape
       
 33469         });
       
 33470       },
       
 33471       Enter: function Enter(event) {
       
 33472         event.preventDefault();
       
 33473         dispatch({
       
 33474           type: MenuKeyDownEnter
       
 33475         });
       
 33476       },
       
 33477       ' ': function _(event) {
       
 33478         event.preventDefault();
       
 33479         dispatch({
       
 33480           type: MenuKeyDownSpaceButton
       
 33481         });
       
 33482       }
       
 33483     };
       
 33484   }, [dispatch]); // Action functions.
       
 33485 
       
 33486   var toggleMenu = Object(external_this_React_["useCallback"])(function () {
       
 33487     dispatch({
       
 33488       type: FunctionToggleMenu
       
 33489     });
       
 33490   }, [dispatch]);
       
 33491   var closeMenu = Object(external_this_React_["useCallback"])(function () {
       
 33492     dispatch({
       
 33493       type: FunctionCloseMenu
       
 33494     });
       
 33495   }, [dispatch]);
       
 33496   var openMenu = Object(external_this_React_["useCallback"])(function () {
       
 33497     dispatch({
       
 33498       type: FunctionOpenMenu
       
 33499     });
       
 33500   }, [dispatch]);
       
 33501   var setHighlightedIndex = Object(external_this_React_["useCallback"])(function (newHighlightedIndex) {
       
 33502     dispatch({
       
 33503       type: FunctionSetHighlightedIndex,
       
 33504       highlightedIndex: newHighlightedIndex
       
 33505     });
       
 33506   }, [dispatch]);
       
 33507   var selectItem = Object(external_this_React_["useCallback"])(function (newSelectedItem) {
       
 33508     dispatch({
       
 33509       type: FunctionSelectItem,
       
 33510       selectedItem: newSelectedItem
       
 33511     });
       
 33512   }, [dispatch]);
       
 33513   var reset = Object(external_this_React_["useCallback"])(function () {
       
 33514     dispatch({
       
 33515       type: FunctionReset
       
 33516     });
       
 33517   }, [dispatch]);
       
 33518   var setInputValue = Object(external_this_React_["useCallback"])(function (newInputValue) {
       
 33519     dispatch({
       
 33520       type: FunctionSetInputValue,
       
 33521       inputValue: newInputValue
       
 33522     });
       
 33523   }, [dispatch]); // Getter functions.
       
 33524 
       
 33525   var getLabelProps = Object(external_this_React_["useCallback"])(function (labelProps) {
       
 33526     return Object(esm_extends["a" /* default */])({
       
 33527       id: elementIdsRef.current.labelId,
       
 33528       htmlFor: elementIdsRef.current.toggleButtonId
       
 33529     }, labelProps);
       
 33530   }, []);
       
 33531   var getMenuProps = Object(external_this_React_["useCallback"])(function (_temp, _temp2) {
       
 33532     var _extends2;
       
 33533 
       
 33534     var _ref = _temp === void 0 ? {} : _temp,
       
 33535         onMouseLeave = _ref.onMouseLeave,
       
 33536         _ref$refKey = _ref.refKey,
       
 33537         refKey = _ref$refKey === void 0 ? 'ref' : _ref$refKey,
       
 33538         onKeyDown = _ref.onKeyDown,
       
 33539         onBlur = _ref.onBlur,
       
 33540         ref = _ref.ref,
       
 33541         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref, ["onMouseLeave", "refKey", "onKeyDown", "onBlur", "ref"]);
       
 33542 
       
 33543     var _ref2 = _temp2 === void 0 ? {} : _temp2,
       
 33544         _ref2$suppressRefErro = _ref2.suppressRefError,
       
 33545         suppressRefError = _ref2$suppressRefErro === void 0 ? false : _ref2$suppressRefErro;
       
 33546 
       
 33547     var latestState = latest.current.state;
       
 33548     setGetterPropCallInfo('getMenuProps', suppressRefError, refKey, menuRef);
       
 33549     return Object(esm_extends["a" /* default */])((_extends2 = {}, _extends2[refKey] = handleRefs(ref, function (menuNode) {
       
 33550       menuRef.current = menuNode;
       
 33551     }), _extends2.id = elementIdsRef.current.menuId, _extends2.role = 'listbox', _extends2['aria-labelledby'] = elementIdsRef.current.labelId, _extends2.tabIndex = -1, _extends2), latestState.isOpen && latestState.highlightedIndex > -1 && {
       
 33552       'aria-activedescendant': elementIdsRef.current.getItemId(latestState.highlightedIndex)
       
 33553     }, {
       
 33554       onMouseLeave: callAllEventHandlers(onMouseLeave, function menuHandleMouseLeave() {
       
 33555         dispatch({
       
 33556           type: MenuMouseLeave
       
 33557         });
       
 33558       }),
       
 33559       onKeyDown: callAllEventHandlers(onKeyDown, function menuHandleKeyDown(event) {
       
 33560         var key = normalizeArrowKey(event);
       
 33561 
       
 33562         if (key && menuKeyDownHandlers[key]) {
       
 33563           menuKeyDownHandlers[key](event);
       
 33564         } else if (isAcceptedCharacterKey(key)) {
       
 33565           dispatch({
       
 33566             type: MenuKeyDownCharacter,
       
 33567             key: key,
       
 33568             getItemNodeFromIndex: getItemNodeFromIndex
       
 33569           });
       
 33570         }
       
 33571       }),
       
 33572       onBlur: callAllEventHandlers(onBlur, function menuHandleBlur() {
       
 33573         // if the blur was a result of selection, we don't trigger this action.
       
 33574         if (shouldBlurRef.current === false) {
       
 33575           shouldBlurRef.current = true;
       
 33576           return;
       
 33577         }
       
 33578 
       
 33579         var shouldBlur = !mouseAndTouchTrackersRef.current.isMouseDown;
       
 33580         /* istanbul ignore else */
       
 33581 
       
 33582         if (shouldBlur) {
       
 33583           dispatch({
       
 33584             type: MenuBlur
       
 33585           });
       
 33586         }
       
 33587       })
       
 33588     }, rest);
       
 33589   }, [dispatch, latest, menuKeyDownHandlers, mouseAndTouchTrackersRef, setGetterPropCallInfo]);
       
 33590   var getToggleButtonProps = Object(external_this_React_["useCallback"])(function (_temp3, _temp4) {
       
 33591     var _extends3;
       
 33592 
       
 33593     var _ref3 = _temp3 === void 0 ? {} : _temp3,
       
 33594         onClick = _ref3.onClick,
       
 33595         onKeyDown = _ref3.onKeyDown,
       
 33596         _ref3$refKey = _ref3.refKey,
       
 33597         refKey = _ref3$refKey === void 0 ? 'ref' : _ref3$refKey,
       
 33598         ref = _ref3.ref,
       
 33599         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref3, ["onClick", "onKeyDown", "refKey", "ref"]);
       
 33600 
       
 33601     var _ref4 = _temp4 === void 0 ? {} : _temp4,
       
 33602         _ref4$suppressRefErro = _ref4.suppressRefError,
       
 33603         suppressRefError = _ref4$suppressRefErro === void 0 ? false : _ref4$suppressRefErro;
       
 33604 
       
 33605     var toggleButtonHandleClick = function () {
       
 33606       dispatch({
       
 33607         type: ToggleButtonClick
       
 33608       });
       
 33609     };
       
 33610 
       
 33611     var toggleButtonHandleKeyDown = function (event) {
       
 33612       var key = normalizeArrowKey(event);
       
 33613 
       
 33614       if (key && toggleButtonKeyDownHandlers[key]) {
       
 33615         toggleButtonKeyDownHandlers[key](event);
       
 33616       } else if (isAcceptedCharacterKey(key)) {
       
 33617         dispatch({
       
 33618           type: ToggleButtonKeyDownCharacter,
       
 33619           key: key,
       
 33620           getItemNodeFromIndex: getItemNodeFromIndex
       
 33621         });
       
 33622       }
       
 33623     };
       
 33624 
       
 33625     var toggleProps = Object(esm_extends["a" /* default */])((_extends3 = {}, _extends3[refKey] = handleRefs(ref, function (toggleButtonNode) {
       
 33626       toggleButtonRef.current = toggleButtonNode;
       
 33627     }), _extends3.id = elementIdsRef.current.toggleButtonId, _extends3['aria-haspopup'] = 'listbox', _extends3['aria-expanded'] = latest.current.state.isOpen, _extends3['aria-labelledby'] = elementIdsRef.current.labelId + " " + elementIdsRef.current.toggleButtonId, _extends3), rest);
       
 33628 
       
 33629     if (!rest.disabled) {
       
 33630       toggleProps.onClick = callAllEventHandlers(onClick, toggleButtonHandleClick);
       
 33631       toggleProps.onKeyDown = callAllEventHandlers(onKeyDown, toggleButtonHandleKeyDown);
       
 33632     }
       
 33633 
       
 33634     setGetterPropCallInfo('getToggleButtonProps', suppressRefError, refKey, toggleButtonRef);
       
 33635     return toggleProps;
       
 33636   }, [dispatch, latest, toggleButtonKeyDownHandlers, setGetterPropCallInfo]);
       
 33637   var getItemProps = Object(external_this_React_["useCallback"])(function (_temp5) {
       
 33638     var _extends4;
       
 33639 
       
 33640     var _ref5 = _temp5 === void 0 ? {} : _temp5,
       
 33641         item = _ref5.item,
       
 33642         index = _ref5.index,
       
 33643         onMouseMove = _ref5.onMouseMove,
       
 33644         onClick = _ref5.onClick,
       
 33645         _ref5$refKey = _ref5.refKey,
       
 33646         refKey = _ref5$refKey === void 0 ? 'ref' : _ref5$refKey,
       
 33647         ref = _ref5.ref,
       
 33648         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref5, ["item", "index", "onMouseMove", "onClick", "refKey", "ref"]);
       
 33649 
       
 33650     var _latest$current = latest.current,
       
 33651         latestState = _latest$current.state,
       
 33652         latestProps = _latest$current.props;
       
 33653 
       
 33654     var itemHandleMouseMove = function () {
       
 33655       if (index === latestState.highlightedIndex) {
       
 33656         return;
       
 33657       }
       
 33658 
       
 33659       shouldScrollRef.current = false;
       
 33660       dispatch({
       
 33661         type: ItemMouseMove,
       
 33662         index: index
       
 33663       });
       
 33664     };
       
 33665 
       
 33666     var itemHandleClick = function () {
       
 33667       dispatch({
       
 33668         type: ItemClick,
       
 33669         index: index
       
 33670       });
       
 33671     };
       
 33672 
       
 33673     var itemIndex = getItemIndex(index, item, latestProps.items);
       
 33674 
       
 33675     if (itemIndex < 0) {
       
 33676       throw new Error('Pass either item or item index in getItemProps!');
       
 33677     }
       
 33678 
       
 33679     var itemProps = Object(esm_extends["a" /* default */])((_extends4 = {
       
 33680       role: 'option',
       
 33681       'aria-selected': "" + (itemIndex === latestState.highlightedIndex),
       
 33682       id: elementIdsRef.current.getItemId(itemIndex)
       
 33683     }, _extends4[refKey] = handleRefs(ref, function (itemNode) {
       
 33684       if (itemNode) {
       
 33685         itemRefs.current[elementIdsRef.current.getItemId(itemIndex)] = itemNode;
       
 33686       }
       
 33687     }), _extends4), rest);
       
 33688 
       
 33689     if (!rest.disabled) {
       
 33690       itemProps.onMouseMove = callAllEventHandlers(onMouseMove, itemHandleMouseMove);
       
 33691       itemProps.onClick = callAllEventHandlers(onClick, itemHandleClick);
       
 33692     }
       
 33693 
       
 33694     return itemProps;
       
 33695   }, [dispatch, latest]);
       
 33696   return {
       
 33697     // prop getters.
       
 33698     getToggleButtonProps: getToggleButtonProps,
       
 33699     getLabelProps: getLabelProps,
       
 33700     getMenuProps: getMenuProps,
       
 33701     getItemProps: getItemProps,
       
 33702     // actions.
       
 33703     toggleMenu: toggleMenu,
       
 33704     openMenu: openMenu,
       
 33705     closeMenu: closeMenu,
       
 33706     setHighlightedIndex: setHighlightedIndex,
       
 33707     selectItem: selectItem,
       
 33708     reset: reset,
       
 33709     setInputValue: setInputValue,
       
 33710     // state.
       
 33711     highlightedIndex: highlightedIndex,
       
 33712     isOpen: isOpen,
       
 33713     selectedItem: selectedItem,
       
 33714     inputValue: inputValue
       
 33715   };
       
 33716 }
       
 33717 
       
 33718 var InputKeyDownArrowDown =  false ? undefined : 0;
       
 33719 var InputKeyDownArrowUp =  false ? undefined : 1;
       
 33720 var InputKeyDownEscape =  false ? undefined : 2;
       
 33721 var InputKeyDownHome =  false ? undefined : 3;
       
 33722 var InputKeyDownEnd =  false ? undefined : 4;
       
 33723 var InputKeyDownEnter =  false ? undefined : 5;
       
 33724 var InputChange =  false ? undefined : 6;
       
 33725 var InputBlur =  false ? undefined : 7;
       
 33726 var MenuMouseLeave$1 =  false ? undefined : 8;
       
 33727 var ItemMouseMove$1 =  false ? undefined : 9;
       
 33728 var ItemClick$1 =  false ? undefined : 10;
       
 33729 var ToggleButtonClick$1 =  false ? undefined : 11;
       
 33730 var FunctionToggleMenu$1 =  false ? undefined : 12;
       
 33731 var FunctionOpenMenu$1 =  false ? undefined : 13;
       
 33732 var FunctionCloseMenu$1 =  false ? undefined : 14;
       
 33733 var FunctionSetHighlightedIndex$1 =  false ? undefined : 15;
       
 33734 var FunctionSelectItem$1 =  false ? undefined : 16;
       
 33735 var FunctionSetInputValue$1 =  false ? undefined : 17;
       
 33736 var FunctionReset$1 =  false ? undefined : 18;
       
 33737 var ControlledPropUpdatedSelectedItem =  false ? undefined : 19;
       
 33738 
       
 33739 var stateChangeTypes$2 = /*#__PURE__*/Object.freeze({
       
 33740   __proto__: null,
       
 33741   InputKeyDownArrowDown: InputKeyDownArrowDown,
       
 33742   InputKeyDownArrowUp: InputKeyDownArrowUp,
       
 33743   InputKeyDownEscape: InputKeyDownEscape,
       
 33744   InputKeyDownHome: InputKeyDownHome,
       
 33745   InputKeyDownEnd: InputKeyDownEnd,
       
 33746   InputKeyDownEnter: InputKeyDownEnter,
       
 33747   InputChange: InputChange,
       
 33748   InputBlur: InputBlur,
       
 33749   MenuMouseLeave: MenuMouseLeave$1,
       
 33750   ItemMouseMove: ItemMouseMove$1,
       
 33751   ItemClick: ItemClick$1,
       
 33752   ToggleButtonClick: ToggleButtonClick$1,
       
 33753   FunctionToggleMenu: FunctionToggleMenu$1,
       
 33754   FunctionOpenMenu: FunctionOpenMenu$1,
       
 33755   FunctionCloseMenu: FunctionCloseMenu$1,
       
 33756   FunctionSetHighlightedIndex: FunctionSetHighlightedIndex$1,
       
 33757   FunctionSelectItem: FunctionSelectItem$1,
       
 33758   FunctionSetInputValue: FunctionSetInputValue$1,
       
 33759   FunctionReset: FunctionReset$1,
       
 33760   ControlledPropUpdatedSelectedItem: ControlledPropUpdatedSelectedItem
       
 33761 });
       
 33762 
       
 33763 function getElementIds$1(_ref) {
       
 33764   var id = _ref.id,
       
 33765       inputId = _ref.inputId,
       
 33766       rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref, ["id", "inputId"]);
       
 33767 
       
 33768   var uniqueId = id === undefined ? "downshift-" + generateId() : id;
       
 33769   return Object(esm_extends["a" /* default */])({
       
 33770     inputId: inputId || uniqueId + "-input"
       
 33771   }, getElementIds(Object(esm_extends["a" /* default */])({
       
 33772     id: id
       
 33773   }, rest)));
       
 33774 }
       
 33775 function getInitialState$1(props) {
       
 33776   var initialState = downshift_esm_getInitialState(props);
       
 33777   var selectedItem = initialState.selectedItem;
       
 33778   var inputValue = initialState.inputValue;
       
 33779 
       
 33780   if (inputValue === '' && selectedItem && props.defaultInputValue === undefined && props.initialInputValue === undefined && props.inputValue === undefined) {
       
 33781     inputValue = props.itemToString(selectedItem);
       
 33782   }
       
 33783 
       
 33784   return Object(esm_extends["a" /* default */])({}, initialState, {
       
 33785     inputValue: inputValue
       
 33786   });
       
 33787 }
       
 33788 var propTypes$1 = {
       
 33789   items: prop_types_default.a.array.isRequired,
       
 33790   itemToString: prop_types_default.a.func,
       
 33791   getA11yStatusMessage: prop_types_default.a.func,
       
 33792   getA11ySelectionMessage: prop_types_default.a.func,
       
 33793   circularNavigation: prop_types_default.a.bool,
       
 33794   highlightedIndex: prop_types_default.a.number,
       
 33795   defaultHighlightedIndex: prop_types_default.a.number,
       
 33796   initialHighlightedIndex: prop_types_default.a.number,
       
 33797   isOpen: prop_types_default.a.bool,
       
 33798   defaultIsOpen: prop_types_default.a.bool,
       
 33799   initialIsOpen: prop_types_default.a.bool,
       
 33800   selectedItem: prop_types_default.a.any,
       
 33801   initialSelectedItem: prop_types_default.a.any,
       
 33802   defaultSelectedItem: prop_types_default.a.any,
       
 33803   inputValue: prop_types_default.a.string,
       
 33804   defaultInputValue: prop_types_default.a.string,
       
 33805   initialInputValue: prop_types_default.a.string,
       
 33806   id: prop_types_default.a.string,
       
 33807   labelId: prop_types_default.a.string,
       
 33808   menuId: prop_types_default.a.string,
       
 33809   getItemId: prop_types_default.a.func,
       
 33810   inputId: prop_types_default.a.string,
       
 33811   toggleButtonId: prop_types_default.a.string,
       
 33812   stateReducer: prop_types_default.a.func,
       
 33813   onSelectedItemChange: prop_types_default.a.func,
       
 33814   onHighlightedIndexChange: prop_types_default.a.func,
       
 33815   onStateChange: prop_types_default.a.func,
       
 33816   onIsOpenChange: prop_types_default.a.func,
       
 33817   onInputValueChange: prop_types_default.a.func,
       
 33818   environment: prop_types_default.a.shape({
       
 33819     addEventListener: prop_types_default.a.func,
       
 33820     removeEventListener: prop_types_default.a.func,
       
 33821     document: prop_types_default.a.shape({
       
 33822       getElementById: prop_types_default.a.func,
       
 33823       activeElement: prop_types_default.a.any,
       
 33824       body: prop_types_default.a.any
       
 33825     })
       
 33826   })
       
 33827 };
       
 33828 /**
       
 33829  * The useCombobox version of useControlledReducer, which also
       
 33830  * checks if the controlled prop selectedItem changed between
       
 33831  * renders. If so, it will also update inputValue with its
       
 33832  * string equivalent. It uses the common useEnhancedReducer to
       
 33833  * compute the rest of the state.
       
 33834  *
       
 33835  * @param {Function} reducer Reducer function from downshift.
       
 33836  * @param {Object} initialState Initial state of the hook.
       
 33837  * @param {Object} props The hook props.
       
 33838  * @returns {Array} An array with the state and an action dispatcher.
       
 33839  */
       
 33840 
       
 33841 function useControlledReducer$1(reducer, initialState, props) {
       
 33842   var previousSelectedItemRef = Object(external_this_React_["useRef"])();
       
 33843 
       
 33844   var _useEnhancedReducer = useEnhancedReducer(reducer, initialState, props),
       
 33845       state = _useEnhancedReducer[0],
       
 33846       dispatch = _useEnhancedReducer[1]; // ToDo: if needed, make same approach as selectedItemChanged from Downshift.
       
 33847 
       
 33848 
       
 33849   Object(external_this_React_["useEffect"])(function () {
       
 33850     if (isControlledProp(props, 'selectedItem')) {
       
 33851       if (previousSelectedItemRef.current !== props.selectedItem) {
       
 33852         dispatch({
       
 33853           type: ControlledPropUpdatedSelectedItem,
       
 33854           inputValue: props.itemToString(props.selectedItem)
       
 33855         });
       
 33856       }
       
 33857 
       
 33858       previousSelectedItemRef.current = state.selectedItem === previousSelectedItemRef.current ? props.selectedItem : state.selectedItem;
       
 33859     }
       
 33860   });
       
 33861   return [getState(state, props), dispatch];
       
 33862 }
       
 33863 var defaultProps$2 = Object(esm_extends["a" /* default */])({}, downshift_esm_defaultProps, {
       
 33864   getA11yStatusMessage: downshift_esm_getA11yStatusMessage,
       
 33865   circularNavigation: true
       
 33866 });
       
 33867 
       
 33868 /* eslint-disable complexity */
       
 33869 
       
 33870 function downshiftUseComboboxReducer(state, action) {
       
 33871   var type = action.type,
       
 33872       props = action.props,
       
 33873       shiftKey = action.shiftKey;
       
 33874   var changes;
       
 33875 
       
 33876   switch (type) {
       
 33877     case ItemMouseMove$1:
       
 33878       changes = {
       
 33879         highlightedIndex: action.index
       
 33880       };
       
 33881       break;
       
 33882 
       
 33883     case ItemClick$1:
       
 33884       changes = {
       
 33885         isOpen: getDefaultValue(props, 'isOpen'),
       
 33886         highlightedIndex: getDefaultValue(props, 'highlightedIndex'),
       
 33887         selectedItem: props.items[action.index],
       
 33888         inputValue: props.itemToString(props.items[action.index])
       
 33889       };
       
 33890       break;
       
 33891 
       
 33892     case InputKeyDownArrowDown:
       
 33893       if (state.isOpen) {
       
 33894         changes = {
       
 33895           highlightedIndex: getNextWrappingIndex(shiftKey ? 5 : 1, state.highlightedIndex, props.items.length, action.getItemNodeFromIndex, props.circularNavigation)
       
 33896         };
       
 33897       } else {
       
 33898         changes = {
       
 33899           highlightedIndex: getHighlightedIndexOnOpen(props, state, 1, action.getItemNodeFromIndex),
       
 33900           isOpen: true
       
 33901         };
       
 33902       }
       
 33903 
       
 33904       break;
       
 33905 
       
 33906     case InputKeyDownArrowUp:
       
 33907       if (state.isOpen) {
       
 33908         changes = {
       
 33909           highlightedIndex: getNextWrappingIndex(shiftKey ? -5 : -1, state.highlightedIndex, props.items.length, action.getItemNodeFromIndex, props.circularNavigation)
       
 33910         };
       
 33911       } else {
       
 33912         changes = {
       
 33913           highlightedIndex: getHighlightedIndexOnOpen(props, state, -1, action.getItemNodeFromIndex),
       
 33914           isOpen: true
       
 33915         };
       
 33916       }
       
 33917 
       
 33918       break;
       
 33919 
       
 33920     case InputKeyDownEnter:
       
 33921       changes = Object(esm_extends["a" /* default */])({}, state.highlightedIndex >= 0 && {
       
 33922         selectedItem: props.items[state.highlightedIndex],
       
 33923         isOpen: getDefaultValue(props, 'isOpen'),
       
 33924         highlightedIndex: getDefaultValue(props, 'highlightedIndex'),
       
 33925         inputValue: props.itemToString(props.items[state.highlightedIndex])
       
 33926       });
       
 33927       break;
       
 33928 
       
 33929     case InputKeyDownEscape:
       
 33930       changes = {
       
 33931         isOpen: false,
       
 33932         selectedItem: null,
       
 33933         highlightedIndex: -1,
       
 33934         inputValue: ''
       
 33935       };
       
 33936       break;
       
 33937 
       
 33938     case InputKeyDownHome:
       
 33939       changes = {
       
 33940         highlightedIndex: getNextNonDisabledIndex(1, 0, props.items.length, action.getItemNodeFromIndex, false)
       
 33941       };
       
 33942       break;
       
 33943 
       
 33944     case InputKeyDownEnd:
       
 33945       changes = {
       
 33946         highlightedIndex: getNextNonDisabledIndex(-1, props.items.length - 1, props.items.length, action.getItemNodeFromIndex, false)
       
 33947       };
       
 33948       break;
       
 33949 
       
 33950     case InputBlur:
       
 33951       changes = Object(esm_extends["a" /* default */])({
       
 33952         isOpen: false
       
 33953       }, state.highlightedIndex >= 0 && {
       
 33954         selectedItem: props.items[state.highlightedIndex],
       
 33955         inputValue: props.itemToString(props.items[state.highlightedIndex]),
       
 33956         highlightedIndex: -1
       
 33957       });
       
 33958       break;
       
 33959 
       
 33960     case InputChange:
       
 33961       changes = {
       
 33962         isOpen: true,
       
 33963         highlightedIndex: getDefaultValue(props, 'highlightedIndex'),
       
 33964         inputValue: action.inputValue
       
 33965       };
       
 33966       break;
       
 33967 
       
 33968     case MenuMouseLeave$1:
       
 33969       changes = {
       
 33970         highlightedIndex: -1
       
 33971       };
       
 33972       break;
       
 33973 
       
 33974     case ToggleButtonClick$1:
       
 33975     case FunctionToggleMenu$1:
       
 33976       changes = {
       
 33977         isOpen: !state.isOpen,
       
 33978         highlightedIndex: state.isOpen ? -1 : getHighlightedIndexOnOpen(props, state, 0)
       
 33979       };
       
 33980       break;
       
 33981 
       
 33982     case FunctionOpenMenu$1:
       
 33983       changes = {
       
 33984         isOpen: true,
       
 33985         highlightedIndex: getHighlightedIndexOnOpen(props, state, 0)
       
 33986       };
       
 33987       break;
       
 33988 
       
 33989     case FunctionCloseMenu$1:
       
 33990       changes = {
       
 33991         isOpen: false
       
 33992       };
       
 33993       break;
       
 33994 
       
 33995     case FunctionSetHighlightedIndex$1:
       
 33996       changes = {
       
 33997         highlightedIndex: action.highlightedIndex
       
 33998       };
       
 33999       break;
       
 34000 
       
 34001     case FunctionSelectItem$1:
       
 34002       changes = {
       
 34003         selectedItem: action.selectedItem,
       
 34004         inputValue: props.itemToString(action.selectedItem)
       
 34005       };
       
 34006       break;
       
 34007 
       
 34008     case ControlledPropUpdatedSelectedItem:
       
 34009     case FunctionSetInputValue$1:
       
 34010       changes = {
       
 34011         inputValue: action.inputValue
       
 34012       };
       
 34013       break;
       
 34014 
       
 34015     case FunctionReset$1:
       
 34016       changes = {
       
 34017         highlightedIndex: getDefaultValue(props, 'highlightedIndex'),
       
 34018         isOpen: getDefaultValue(props, 'isOpen'),
       
 34019         selectedItem: getDefaultValue(props, 'selectedItem'),
       
 34020         inputValue: getDefaultValue(props, 'inputValue')
       
 34021       };
       
 34022       break;
       
 34023 
       
 34024     default:
       
 34025       throw new Error('Reducer called without proper action type.');
       
 34026   }
       
 34027 
       
 34028   return Object(esm_extends["a" /* default */])({}, state, changes);
       
 34029 }
       
 34030 /* eslint-enable complexity */
       
 34031 
       
 34032 var validatePropTypes$1 =  true ?
       
 34033 /* istanbul ignore next */
       
 34034 null : undefined;
       
 34035 useCombobox.stateChangeTypes = stateChangeTypes$2;
       
 34036 
       
 34037 function useCombobox(userProps) {
       
 34038   if (userProps === void 0) {
       
 34039     userProps = {};
       
 34040   }
       
 34041 
       
 34042   /* istanbul ignore else */
       
 34043   if (false) {} // Props defaults and destructuring.
       
 34044 
       
 34045 
       
 34046   var props = Object(esm_extends["a" /* default */])({}, defaultProps$2, userProps);
       
 34047 
       
 34048   var initialIsOpen = props.initialIsOpen,
       
 34049       defaultIsOpen = props.defaultIsOpen,
       
 34050       items = props.items,
       
 34051       scrollIntoView = props.scrollIntoView,
       
 34052       environment = props.environment,
       
 34053       getA11yStatusMessage = props.getA11yStatusMessage,
       
 34054       getA11ySelectionMessage = props.getA11ySelectionMessage,
       
 34055       itemToString = props.itemToString; // Initial state depending on controlled props.
       
 34056 
       
 34057   var initialState = getInitialState$1(props);
       
 34058 
       
 34059   var _useControlledReducer = useControlledReducer$1(downshiftUseComboboxReducer, initialState, props),
       
 34060       state = _useControlledReducer[0],
       
 34061       dispatch = _useControlledReducer[1];
       
 34062 
       
 34063   var isOpen = state.isOpen,
       
 34064       highlightedIndex = state.highlightedIndex,
       
 34065       selectedItem = state.selectedItem,
       
 34066       inputValue = state.inputValue; // Element refs.
       
 34067 
       
 34068   var menuRef = Object(external_this_React_["useRef"])(null);
       
 34069   var itemRefs = Object(external_this_React_["useRef"])();
       
 34070   var inputRef = Object(external_this_React_["useRef"])(null);
       
 34071   var toggleButtonRef = Object(external_this_React_["useRef"])(null);
       
 34072   var comboboxRef = Object(external_this_React_["useRef"])(null);
       
 34073   itemRefs.current = {}; // used not to scroll on highlight by mouse.
       
 34074 
       
 34075   var shouldScrollRef = Object(external_this_React_["useRef"])(true);
       
 34076   var isInitialMountRef = Object(external_this_React_["useRef"])(true); // prevent id re-generation between renders.
       
 34077 
       
 34078   var elementIdsRef = Object(external_this_React_["useRef"])(getElementIds$1(props)); // used to keep track of how many items we had on previous cycle.
       
 34079 
       
 34080   var previousResultCountRef = Object(external_this_React_["useRef"])(); // used for checking when props are moving from controlled to uncontrolled.
       
 34081 
       
 34082   var prevPropsRef = Object(external_this_React_["useRef"])(props); // utility callback to get item element.
       
 34083 
       
 34084   var latest = useLatestRef({
       
 34085     state: state,
       
 34086     props: props
       
 34087   });
       
 34088 
       
 34089   var getItemNodeFromIndex = function (index) {
       
 34090     return itemRefs.current[elementIdsRef.current.getItemId(index)];
       
 34091   }; // Effects.
       
 34092   // Sets a11y status message on changes in state.
       
 34093 
       
 34094 
       
 34095   Object(external_this_React_["useEffect"])(function () {
       
 34096     if (isInitialMountRef.current) {
       
 34097       return;
       
 34098     }
       
 34099 
       
 34100     var previousResultCount = previousResultCountRef.current;
       
 34101     updateA11yStatus(function () {
       
 34102       return getA11yStatusMessage({
       
 34103         isOpen: isOpen,
       
 34104         highlightedIndex: highlightedIndex,
       
 34105         selectedItem: selectedItem,
       
 34106         inputValue: inputValue,
       
 34107         highlightedItem: items[highlightedIndex],
       
 34108         resultCount: items.length,
       
 34109         itemToString: itemToString,
       
 34110         previousResultCount: previousResultCount
       
 34111       });
       
 34112     }, environment.document); // eslint-disable-next-line react-hooks/exhaustive-deps
       
 34113   }, [isOpen, highlightedIndex, inputValue, items]); // Sets a11y status message on changes in selectedItem.
       
 34114 
       
 34115   Object(external_this_React_["useEffect"])(function () {
       
 34116     if (isInitialMountRef.current) {
       
 34117       return;
       
 34118     }
       
 34119 
       
 34120     var previousResultCount = previousResultCountRef.current;
       
 34121     updateA11yStatus(function () {
       
 34122       return getA11ySelectionMessage({
       
 34123         isOpen: isOpen,
       
 34124         highlightedIndex: highlightedIndex,
       
 34125         selectedItem: selectedItem,
       
 34126         inputValue: inputValue,
       
 34127         highlightedItem: items[highlightedIndex],
       
 34128         resultCount: items.length,
       
 34129         itemToString: itemToString,
       
 34130         previousResultCount: previousResultCount
       
 34131       });
       
 34132     }, environment.document); // eslint-disable-next-line react-hooks/exhaustive-deps
       
 34133   }, [selectedItem]); // Scroll on highlighted item if change comes from keyboard.
       
 34134 
       
 34135   Object(external_this_React_["useEffect"])(function () {
       
 34136     if (highlightedIndex < 0 || !isOpen || !Object.keys(itemRefs.current).length) {
       
 34137       return;
       
 34138     }
       
 34139 
       
 34140     if (shouldScrollRef.current === false) {
       
 34141       shouldScrollRef.current = true;
       
 34142     } else {
       
 34143       scrollIntoView(getItemNodeFromIndex(highlightedIndex), menuRef.current);
       
 34144     } // eslint-disable-next-line react-hooks/exhaustive-deps
       
 34145 
       
 34146   }, [highlightedIndex]); // Controls the focus on the menu or the toggle button.
       
 34147 
       
 34148   Object(external_this_React_["useEffect"])(function () {
       
 34149     // Don't focus menu on first render.
       
 34150     if (isInitialMountRef.current) {
       
 34151       // Unless it was initialised as open.
       
 34152       if (initialIsOpen || defaultIsOpen || isOpen) {
       
 34153         if (inputRef.current) {
       
 34154           inputRef.current.focus();
       
 34155         }
       
 34156       }
       
 34157     } // eslint-disable-next-line react-hooks/exhaustive-deps
       
 34158 
       
 34159   }, [isOpen]);
       
 34160   Object(external_this_React_["useEffect"])(function () {
       
 34161     if (isInitialMountRef.current) {
       
 34162       return;
       
 34163     }
       
 34164 
       
 34165     previousResultCountRef.current = items.length;
       
 34166   });
       
 34167   Object(external_this_React_["useEffect"])(function () {
       
 34168     if (isInitialMountRef.current) {
       
 34169       return;
       
 34170     }
       
 34171 
       
 34172     validateControlledUnchanged(state, prevPropsRef.current, props);
       
 34173     prevPropsRef.current = props;
       
 34174   }, [state, props]); // Add mouse/touch events to document.
       
 34175 
       
 34176   var mouseAndTouchTrackersRef = useMouseAndTouchTracker(isOpen, [comboboxRef, menuRef, toggleButtonRef], environment, function () {
       
 34177     dispatch({
       
 34178       type: InputBlur
       
 34179     });
       
 34180   });
       
 34181   var setGetterPropCallInfo = useGetterPropsCalledChecker('getInputProps', 'getComboboxProps', 'getMenuProps'); // Make initial ref false.
       
 34182 
       
 34183   Object(external_this_React_["useEffect"])(function () {
       
 34184     isInitialMountRef.current = false;
       
 34185   }, []);
       
 34186   /* Event handler functions */
       
 34187 
       
 34188   var inputKeyDownHandlers = Object(external_this_React_["useMemo"])(function () {
       
 34189     return {
       
 34190       ArrowDown: function ArrowDown(event) {
       
 34191         event.preventDefault();
       
 34192         dispatch({
       
 34193           type: InputKeyDownArrowDown,
       
 34194           shiftKey: event.shiftKey,
       
 34195           getItemNodeFromIndex: getItemNodeFromIndex
       
 34196         });
       
 34197       },
       
 34198       ArrowUp: function ArrowUp(event) {
       
 34199         event.preventDefault();
       
 34200         dispatch({
       
 34201           type: InputKeyDownArrowUp,
       
 34202           shiftKey: event.shiftKey,
       
 34203           getItemNodeFromIndex: getItemNodeFromIndex
       
 34204         });
       
 34205       },
       
 34206       Home: function Home(event) {
       
 34207         event.preventDefault();
       
 34208         dispatch({
       
 34209           type: InputKeyDownHome,
       
 34210           getItemNodeFromIndex: getItemNodeFromIndex
       
 34211         });
       
 34212       },
       
 34213       End: function End(event) {
       
 34214         event.preventDefault();
       
 34215         dispatch({
       
 34216           type: InputKeyDownEnd,
       
 34217           getItemNodeFromIndex: getItemNodeFromIndex
       
 34218         });
       
 34219       },
       
 34220       Escape: function Escape() {
       
 34221         dispatch({
       
 34222           type: InputKeyDownEscape
       
 34223         });
       
 34224       },
       
 34225       Enter: function Enter(event) {
       
 34226         // if IME composing, wait for next Enter keydown event.
       
 34227         if (event.which === 229) {
       
 34228           return;
       
 34229         }
       
 34230 
       
 34231         var latestState = latest.current.state;
       
 34232 
       
 34233         if (latestState.isOpen && latestState.highlightedIndex > -1) {
       
 34234           event.preventDefault();
       
 34235           dispatch({
       
 34236             type: InputKeyDownEnter,
       
 34237             getItemNodeFromIndex: getItemNodeFromIndex
       
 34238           });
       
 34239         }
       
 34240       }
       
 34241     };
       
 34242   }, [dispatch, latest]); // Getter props.
       
 34243 
       
 34244   var getLabelProps = Object(external_this_React_["useCallback"])(function (labelProps) {
       
 34245     return Object(esm_extends["a" /* default */])({
       
 34246       id: elementIdsRef.current.labelId,
       
 34247       htmlFor: elementIdsRef.current.inputId
       
 34248     }, labelProps);
       
 34249   }, []);
       
 34250   var getMenuProps = Object(external_this_React_["useCallback"])(function (_temp, _temp2) {
       
 34251     var _extends2;
       
 34252 
       
 34253     var _ref = _temp === void 0 ? {} : _temp,
       
 34254         onMouseLeave = _ref.onMouseLeave,
       
 34255         _ref$refKey = _ref.refKey,
       
 34256         refKey = _ref$refKey === void 0 ? 'ref' : _ref$refKey,
       
 34257         ref = _ref.ref,
       
 34258         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref, ["onMouseLeave", "refKey", "ref"]);
       
 34259 
       
 34260     var _ref2 = _temp2 === void 0 ? {} : _temp2,
       
 34261         _ref2$suppressRefErro = _ref2.suppressRefError,
       
 34262         suppressRefError = _ref2$suppressRefErro === void 0 ? false : _ref2$suppressRefErro;
       
 34263 
       
 34264     setGetterPropCallInfo('getMenuProps', suppressRefError, refKey, menuRef);
       
 34265     return Object(esm_extends["a" /* default */])((_extends2 = {}, _extends2[refKey] = handleRefs(ref, function (menuNode) {
       
 34266       menuRef.current = menuNode;
       
 34267     }), _extends2.id = elementIdsRef.current.menuId, _extends2.role = 'listbox', _extends2['aria-labelledby'] = elementIdsRef.current.labelId, _extends2.onMouseLeave = callAllEventHandlers(onMouseLeave, function () {
       
 34268       dispatch({
       
 34269         type: MenuMouseLeave$1
       
 34270       });
       
 34271     }), _extends2), rest);
       
 34272   }, [dispatch, setGetterPropCallInfo]);
       
 34273   var getItemProps = Object(external_this_React_["useCallback"])(function (_temp3) {
       
 34274     var _extends3, _ref4;
       
 34275 
       
 34276     var _ref3 = _temp3 === void 0 ? {} : _temp3,
       
 34277         item = _ref3.item,
       
 34278         index = _ref3.index,
       
 34279         _ref3$refKey = _ref3.refKey,
       
 34280         refKey = _ref3$refKey === void 0 ? 'ref' : _ref3$refKey,
       
 34281         ref = _ref3.ref,
       
 34282         onMouseMove = _ref3.onMouseMove,
       
 34283         onClick = _ref3.onClick,
       
 34284         onPress = _ref3.onPress,
       
 34285         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref3, ["item", "index", "refKey", "ref", "onMouseMove", "onClick", "onPress"]);
       
 34286 
       
 34287     var _latest$current = latest.current,
       
 34288         latestProps = _latest$current.props,
       
 34289         latestState = _latest$current.state;
       
 34290     var itemIndex = getItemIndex(index, item, latestProps.items);
       
 34291 
       
 34292     if (itemIndex < 0) {
       
 34293       throw new Error('Pass either item or item index in getItemProps!');
       
 34294     }
       
 34295 
       
 34296     var onSelectKey = 'onClick';
       
 34297     var customClickHandler = onClick;
       
 34298     return Object(esm_extends["a" /* default */])((_extends3 = {}, _extends3[refKey] = handleRefs(ref, function (itemNode) {
       
 34299       if (itemNode) {
       
 34300         itemRefs.current[elementIdsRef.current.getItemId(itemIndex)] = itemNode;
       
 34301       }
       
 34302     }), _extends3.role = 'option', _extends3['aria-selected'] = "" + (itemIndex === latestState.highlightedIndex), _extends3.id = elementIdsRef.current.getItemId(itemIndex), _extends3), !rest.disabled && (_ref4 = {
       
 34303       onMouseMove: callAllEventHandlers(onMouseMove, function itemHandleMouseMove() {
       
 34304         if (index === latestState.highlightedIndex) {
       
 34305           return;
       
 34306         }
       
 34307 
       
 34308         shouldScrollRef.current = false;
       
 34309         dispatch({
       
 34310           type: ItemMouseMove$1,
       
 34311           index: index
       
 34312         });
       
 34313       })
       
 34314     }, _ref4[onSelectKey] = callAllEventHandlers(customClickHandler, function itemHandleClick() {
       
 34315       dispatch({
       
 34316         type: ItemClick$1,
       
 34317         index: index
       
 34318       });
       
 34319 
       
 34320       if (inputRef.current) {
       
 34321         inputRef.current.focus();
       
 34322       }
       
 34323     }), _ref4), rest);
       
 34324   }, [dispatch, latest]);
       
 34325   var getToggleButtonProps = Object(external_this_React_["useCallback"])(function (_temp4) {
       
 34326     var _extends4;
       
 34327 
       
 34328     var _ref5 = _temp4 === void 0 ? {} : _temp4,
       
 34329         onClick = _ref5.onClick,
       
 34330         onPress = _ref5.onPress,
       
 34331         _ref5$refKey = _ref5.refKey,
       
 34332         refKey = _ref5$refKey === void 0 ? 'ref' : _ref5$refKey,
       
 34333         ref = _ref5.ref,
       
 34334         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref5, ["onClick", "onPress", "refKey", "ref"]);
       
 34335 
       
 34336     var toggleButtonHandleClick = function () {
       
 34337       dispatch({
       
 34338         type: ToggleButtonClick$1
       
 34339       });
       
 34340 
       
 34341       if (!latest.current.state.isOpen && inputRef.current) {
       
 34342         inputRef.current.focus();
       
 34343       }
       
 34344     };
       
 34345 
       
 34346     return Object(esm_extends["a" /* default */])((_extends4 = {}, _extends4[refKey] = handleRefs(ref, function (toggleButtonNode) {
       
 34347       toggleButtonRef.current = toggleButtonNode;
       
 34348     }), _extends4.id = elementIdsRef.current.toggleButtonId, _extends4.tabIndex = -1, _extends4), !rest.disabled && Object(esm_extends["a" /* default */])({}, {
       
 34349       onClick: callAllEventHandlers(onClick, toggleButtonHandleClick)
       
 34350     }), rest);
       
 34351   }, [dispatch, latest]);
       
 34352   var getInputProps = Object(external_this_React_["useCallback"])(function (_temp5, _temp6) {
       
 34353     var _extends5;
       
 34354 
       
 34355     var _ref6 = _temp5 === void 0 ? {} : _temp5,
       
 34356         onKeyDown = _ref6.onKeyDown,
       
 34357         onChange = _ref6.onChange,
       
 34358         onInput = _ref6.onInput,
       
 34359         onBlur = _ref6.onBlur,
       
 34360         onChangeText = _ref6.onChangeText,
       
 34361         _ref6$refKey = _ref6.refKey,
       
 34362         refKey = _ref6$refKey === void 0 ? 'ref' : _ref6$refKey,
       
 34363         ref = _ref6.ref,
       
 34364         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref6, ["onKeyDown", "onChange", "onInput", "onBlur", "onChangeText", "refKey", "ref"]);
       
 34365 
       
 34366     var _ref7 = _temp6 === void 0 ? {} : _temp6,
       
 34367         _ref7$suppressRefErro = _ref7.suppressRefError,
       
 34368         suppressRefError = _ref7$suppressRefErro === void 0 ? false : _ref7$suppressRefErro;
       
 34369 
       
 34370     setGetterPropCallInfo('getInputProps', suppressRefError, refKey, inputRef);
       
 34371     var latestState = latest.current.state;
       
 34372 
       
 34373     var inputHandleKeyDown = function (event) {
       
 34374       var key = normalizeArrowKey(event);
       
 34375 
       
 34376       if (key && inputKeyDownHandlers[key]) {
       
 34377         inputKeyDownHandlers[key](event);
       
 34378       }
       
 34379     };
       
 34380 
       
 34381     var inputHandleChange = function (event) {
       
 34382       dispatch({
       
 34383         type: InputChange,
       
 34384         inputValue: event.target.value
       
 34385       });
       
 34386     };
       
 34387 
       
 34388     var inputHandleBlur = function () {
       
 34389       /* istanbul ignore else */
       
 34390       if (!mouseAndTouchTrackersRef.current.isMouseDown) {
       
 34391         dispatch({
       
 34392           type: InputBlur
       
 34393         });
       
 34394       }
       
 34395     };
       
 34396     /* istanbul ignore next (preact) */
       
 34397 
       
 34398 
       
 34399     var onChangeKey = 'onChange';
       
 34400     var eventHandlers = {};
       
 34401 
       
 34402     if (!rest.disabled) {
       
 34403       var _eventHandlers;
       
 34404 
       
 34405       eventHandlers = (_eventHandlers = {}, _eventHandlers[onChangeKey] = callAllEventHandlers(onChange, onInput, inputHandleChange), _eventHandlers.onKeyDown = callAllEventHandlers(onKeyDown, inputHandleKeyDown), _eventHandlers.onBlur = callAllEventHandlers(onBlur, inputHandleBlur), _eventHandlers);
       
 34406     }
       
 34407     /* istanbul ignore if (react-native) */
       
 34408 
       
 34409 
       
 34410     return Object(esm_extends["a" /* default */])((_extends5 = {}, _extends5[refKey] = handleRefs(ref, function (inputNode) {
       
 34411       inputRef.current = inputNode;
       
 34412     }), _extends5.id = elementIdsRef.current.inputId, _extends5['aria-autocomplete'] = 'list', _extends5['aria-controls'] = elementIdsRef.current.menuId, _extends5), latestState.isOpen && latestState.highlightedIndex > -1 && {
       
 34413       'aria-activedescendant': elementIdsRef.current.getItemId(latestState.highlightedIndex)
       
 34414     }, {
       
 34415       'aria-labelledby': elementIdsRef.current.labelId,
       
 34416       // https://developer.mozilla.org/en-US/docs/Web/Security/Securing_your_site/Turning_off_form_autocompletion
       
 34417       // revert back since autocomplete="nope" is ignored on latest Chrome and Opera
       
 34418       autoComplete: 'off',
       
 34419       value: latestState.inputValue
       
 34420     }, eventHandlers, rest);
       
 34421   }, [dispatch, inputKeyDownHandlers, latest, mouseAndTouchTrackersRef, setGetterPropCallInfo]);
       
 34422   var getComboboxProps = Object(external_this_React_["useCallback"])(function (_temp7, _temp8) {
       
 34423     var _extends6;
       
 34424 
       
 34425     var _ref8 = _temp7 === void 0 ? {} : _temp7,
       
 34426         _ref8$refKey = _ref8.refKey,
       
 34427         refKey = _ref8$refKey === void 0 ? 'ref' : _ref8$refKey,
       
 34428         ref = _ref8.ref,
       
 34429         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref8, ["refKey", "ref"]);
       
 34430 
       
 34431     var _ref9 = _temp8 === void 0 ? {} : _temp8,
       
 34432         _ref9$suppressRefErro = _ref9.suppressRefError,
       
 34433         suppressRefError = _ref9$suppressRefErro === void 0 ? false : _ref9$suppressRefErro;
       
 34434 
       
 34435     setGetterPropCallInfo('getComboboxProps', suppressRefError, refKey, comboboxRef);
       
 34436     return Object(esm_extends["a" /* default */])((_extends6 = {}, _extends6[refKey] = handleRefs(ref, function (comboboxNode) {
       
 34437       comboboxRef.current = comboboxNode;
       
 34438     }), _extends6.role = 'combobox', _extends6['aria-haspopup'] = 'listbox', _extends6['aria-owns'] = elementIdsRef.current.menuId, _extends6['aria-expanded'] = latest.current.state.isOpen, _extends6), rest);
       
 34439   }, [latest, setGetterPropCallInfo]); // returns
       
 34440 
       
 34441   var toggleMenu = Object(external_this_React_["useCallback"])(function () {
       
 34442     dispatch({
       
 34443       type: FunctionToggleMenu$1
       
 34444     });
       
 34445   }, [dispatch]);
       
 34446   var closeMenu = Object(external_this_React_["useCallback"])(function () {
       
 34447     dispatch({
       
 34448       type: FunctionCloseMenu$1
       
 34449     });
       
 34450   }, [dispatch]);
       
 34451   var openMenu = Object(external_this_React_["useCallback"])(function () {
       
 34452     dispatch({
       
 34453       type: FunctionOpenMenu$1
       
 34454     });
       
 34455   }, [dispatch]);
       
 34456   var setHighlightedIndex = Object(external_this_React_["useCallback"])(function (newHighlightedIndex) {
       
 34457     dispatch({
       
 34458       type: FunctionSetHighlightedIndex$1,
       
 34459       highlightedIndex: newHighlightedIndex
       
 34460     });
       
 34461   }, [dispatch]);
       
 34462   var selectItem = Object(external_this_React_["useCallback"])(function (newSelectedItem) {
       
 34463     dispatch({
       
 34464       type: FunctionSelectItem$1,
       
 34465       selectedItem: newSelectedItem
       
 34466     });
       
 34467   }, [dispatch]);
       
 34468   var setInputValue = Object(external_this_React_["useCallback"])(function (newInputValue) {
       
 34469     dispatch({
       
 34470       type: FunctionSetInputValue$1,
       
 34471       inputValue: newInputValue
       
 34472     });
       
 34473   }, [dispatch]);
       
 34474   var reset = Object(external_this_React_["useCallback"])(function () {
       
 34475     dispatch({
       
 34476       type: FunctionReset$1
       
 34477     });
       
 34478   }, [dispatch]);
       
 34479   return {
       
 34480     // prop getters.
       
 34481     getItemProps: getItemProps,
       
 34482     getLabelProps: getLabelProps,
       
 34483     getMenuProps: getMenuProps,
       
 34484     getInputProps: getInputProps,
       
 34485     getComboboxProps: getComboboxProps,
       
 34486     getToggleButtonProps: getToggleButtonProps,
       
 34487     // actions.
       
 34488     toggleMenu: toggleMenu,
       
 34489     openMenu: openMenu,
       
 34490     closeMenu: closeMenu,
       
 34491     setHighlightedIndex: setHighlightedIndex,
       
 34492     setInputValue: setInputValue,
       
 34493     selectItem: selectItem,
       
 34494     reset: reset,
       
 34495     // state.
       
 34496     highlightedIndex: highlightedIndex,
       
 34497     isOpen: isOpen,
       
 34498     selectedItem: selectedItem,
       
 34499     inputValue: inputValue
       
 34500   };
       
 34501 }
       
 34502 
       
 34503 var defaultStateValues = {
       
 34504   activeIndex: -1,
       
 34505   selectedItems: []
       
 34506 };
       
 34507 /**
       
 34508  * Returns the initial value for a state key in the following order:
       
 34509  * 1. controlled prop, 2. initial prop, 3. default prop, 4. default
       
 34510  * value from Downshift.
       
 34511  *
       
 34512  * @param {Object} props Props passed to the hook.
       
 34513  * @param {string} propKey Props key to generate the value for.
       
 34514  * @returns {any} The initial value for that prop.
       
 34515  */
       
 34516 
       
 34517 function getInitialValue$1(props, propKey) {
       
 34518   return getInitialValue(props, propKey, defaultStateValues);
       
 34519 }
       
 34520 /**
       
 34521  * Returns the default value for a state key in the following order:
       
 34522  * 1. controlled prop, 2. default prop, 3. default value from Downshift.
       
 34523  *
       
 34524  * @param {Object} props Props passed to the hook.
       
 34525  * @param {string} propKey Props key to generate the value for.
       
 34526  * @returns {any} The initial value for that prop.
       
 34527  */
       
 34528 
       
 34529 
       
 34530 function getDefaultValue$1(props, propKey) {
       
 34531   return getDefaultValue(props, propKey, defaultStateValues);
       
 34532 }
       
 34533 /**
       
 34534  * Gets the initial state based on the provided props. It uses initial, default
       
 34535  * and controlled props related to state in order to compute the initial value.
       
 34536  *
       
 34537  * @param {Object} props Props passed to the hook.
       
 34538  * @returns {Object} The initial state.
       
 34539  */
       
 34540 
       
 34541 function getInitialState$2(props) {
       
 34542   var activeIndex = getInitialValue$1(props, 'activeIndex');
       
 34543   var selectedItems = getInitialValue$1(props, 'selectedItems');
       
 34544   return {
       
 34545     activeIndex: activeIndex,
       
 34546     selectedItems: selectedItems
       
 34547   };
       
 34548 }
       
 34549 /**
       
 34550  * Returns true if dropdown keydown operation is permitted. Should not be
       
 34551  * allowed on keydown with modifier keys (ctrl, alt, shift, meta), on
       
 34552  * input element with text content that is either highlighted or selection
       
 34553  * cursor is not at the starting position.
       
 34554  *
       
 34555  * @param {KeyboardEvent} event The event from keydown.
       
 34556  * @returns {boolean} Whether the operation is allowed.
       
 34557  */
       
 34558 
       
 34559 function isKeyDownOperationPermitted(event) {
       
 34560   if (event.shiftKey || event.metaKey || event.ctrlKey || event.altKey) {
       
 34561     return false;
       
 34562   }
       
 34563 
       
 34564   var element = event.target;
       
 34565 
       
 34566   if (element instanceof HTMLInputElement && // if element is a text input
       
 34567   element.value !== '' && ( // and we have text in it
       
 34568   // and cursor is either not at the start or is currently highlighting text.
       
 34569   element.selectionStart !== 0 || element.selectionEnd !== 0)) {
       
 34570     return false;
       
 34571   }
       
 34572 
       
 34573   return true;
       
 34574 }
       
 34575 /**
       
 34576  * Returns a message to be added to aria-live region when item is removed.
       
 34577  *
       
 34578  * @param {Object} selectionParameters Parameters required to build the message.
       
 34579  * @returns {string} The a11y message.
       
 34580  */
       
 34581 
       
 34582 function downshift_esm_getA11yRemovalMessage(selectionParameters) {
       
 34583   var removedSelectedItem = selectionParameters.removedSelectedItem,
       
 34584       itemToStringLocal = selectionParameters.itemToString;
       
 34585   return itemToStringLocal(removedSelectedItem) + " has been removed.";
       
 34586 }
       
 34587 
       
 34588 var propTypes$2 = {
       
 34589   selectedItems: prop_types_default.a.array,
       
 34590   initialSelectedItems: prop_types_default.a.array,
       
 34591   defaultSelectedItems: prop_types_default.a.array,
       
 34592   itemToString: prop_types_default.a.func,
       
 34593   getA11yRemovalMessage: prop_types_default.a.func,
       
 34594   stateReducer: prop_types_default.a.func,
       
 34595   activeIndex: prop_types_default.a.number,
       
 34596   initialActiveIndex: prop_types_default.a.number,
       
 34597   defaultActiveIndex: prop_types_default.a.number,
       
 34598   onActiveIndexChange: prop_types_default.a.func,
       
 34599   onSelectedItemsChange: prop_types_default.a.func,
       
 34600   keyNavigationNext: prop_types_default.a.string,
       
 34601   keyNavigationPrevious: prop_types_default.a.string,
       
 34602   environment: prop_types_default.a.shape({
       
 34603     addEventListener: prop_types_default.a.func,
       
 34604     removeEventListener: prop_types_default.a.func,
       
 34605     document: prop_types_default.a.shape({
       
 34606       getElementById: prop_types_default.a.func,
       
 34607       activeElement: prop_types_default.a.any,
       
 34608       body: prop_types_default.a.any
       
 34609     })
       
 34610   })
       
 34611 };
       
 34612 var defaultProps$3 = {
       
 34613   itemToString: downshift_esm_defaultProps.itemToString,
       
 34614   stateReducer: downshift_esm_defaultProps.stateReducer,
       
 34615   environment: downshift_esm_defaultProps.environment,
       
 34616   getA11yRemovalMessage: downshift_esm_getA11yRemovalMessage,
       
 34617   keyNavigationNext: 'ArrowRight',
       
 34618   keyNavigationPrevious: 'ArrowLeft'
       
 34619 };
       
 34620 
       
 34621 var SelectedItemClick =  false ? undefined : 0;
       
 34622 var SelectedItemKeyDownDelete =  false ? undefined : 1;
       
 34623 var SelectedItemKeyDownBackspace =  false ? undefined : 2;
       
 34624 var SelectedItemKeyDownNavigationNext =  false ? undefined : 3;
       
 34625 var SelectedItemKeyDownNavigationPrevious =  false ? undefined : 4;
       
 34626 var DropdownKeyDownNavigationPrevious =  false ? undefined : 5;
       
 34627 var DropdownKeyDownBackspace =  false ? undefined : 6;
       
 34628 var DropdownClick =  false ? undefined : 7;
       
 34629 var FunctionAddSelectedItem =  false ? undefined : 8;
       
 34630 var FunctionRemoveSelectedItem =  false ? undefined : 9;
       
 34631 var FunctionSetSelectedItems =  false ? undefined : 10;
       
 34632 var FunctionSetActiveIndex =  false ? undefined : 11;
       
 34633 var FunctionReset$2 =  false ? undefined : 12;
       
 34634 
       
 34635 var stateChangeTypes$3 = /*#__PURE__*/Object.freeze({
       
 34636   __proto__: null,
       
 34637   SelectedItemClick: SelectedItemClick,
       
 34638   SelectedItemKeyDownDelete: SelectedItemKeyDownDelete,
       
 34639   SelectedItemKeyDownBackspace: SelectedItemKeyDownBackspace,
       
 34640   SelectedItemKeyDownNavigationNext: SelectedItemKeyDownNavigationNext,
       
 34641   SelectedItemKeyDownNavigationPrevious: SelectedItemKeyDownNavigationPrevious,
       
 34642   DropdownKeyDownNavigationPrevious: DropdownKeyDownNavigationPrevious,
       
 34643   DropdownKeyDownBackspace: DropdownKeyDownBackspace,
       
 34644   DropdownClick: DropdownClick,
       
 34645   FunctionAddSelectedItem: FunctionAddSelectedItem,
       
 34646   FunctionRemoveSelectedItem: FunctionRemoveSelectedItem,
       
 34647   FunctionSetSelectedItems: FunctionSetSelectedItems,
       
 34648   FunctionSetActiveIndex: FunctionSetActiveIndex,
       
 34649   FunctionReset: FunctionReset$2
       
 34650 });
       
 34651 
       
 34652 /* eslint-disable complexity */
       
 34653 
       
 34654 function downshiftMultipleSelectionReducer(state, action) {
       
 34655   var type = action.type,
       
 34656       index = action.index,
       
 34657       props = action.props,
       
 34658       selectedItem = action.selectedItem;
       
 34659   var activeIndex = state.activeIndex,
       
 34660       selectedItems = state.selectedItems;
       
 34661   var changes;
       
 34662 
       
 34663   switch (type) {
       
 34664     case SelectedItemClick:
       
 34665       changes = {
       
 34666         activeIndex: index
       
 34667       };
       
 34668       break;
       
 34669 
       
 34670     case SelectedItemKeyDownNavigationPrevious:
       
 34671       changes = {
       
 34672         activeIndex: activeIndex - 1 < 0 ? 0 : activeIndex - 1
       
 34673       };
       
 34674       break;
       
 34675 
       
 34676     case SelectedItemKeyDownNavigationNext:
       
 34677       changes = {
       
 34678         activeIndex: activeIndex + 1 >= selectedItems.length ? -1 : activeIndex + 1
       
 34679       };
       
 34680       break;
       
 34681 
       
 34682     case SelectedItemKeyDownBackspace:
       
 34683     case SelectedItemKeyDownDelete:
       
 34684       {
       
 34685         var newActiveIndex = activeIndex;
       
 34686 
       
 34687         if (selectedItems.length === 1) {
       
 34688           newActiveIndex = -1;
       
 34689         } else if (activeIndex === selectedItems.length - 1) {
       
 34690           newActiveIndex = selectedItems.length - 2;
       
 34691         }
       
 34692 
       
 34693         changes = Object(esm_extends["a" /* default */])({
       
 34694           selectedItems: [].concat(selectedItems.slice(0, activeIndex), selectedItems.slice(activeIndex + 1))
       
 34695         }, {
       
 34696           activeIndex: newActiveIndex
       
 34697         });
       
 34698         break;
       
 34699       }
       
 34700 
       
 34701     case DropdownKeyDownNavigationPrevious:
       
 34702       changes = {
       
 34703         activeIndex: selectedItems.length - 1
       
 34704       };
       
 34705       break;
       
 34706 
       
 34707     case DropdownKeyDownBackspace:
       
 34708       changes = {
       
 34709         selectedItems: selectedItems.slice(0, selectedItems.length - 1)
       
 34710       };
       
 34711       break;
       
 34712 
       
 34713     case FunctionAddSelectedItem:
       
 34714       changes = {
       
 34715         selectedItems: [].concat(selectedItems, [selectedItem])
       
 34716       };
       
 34717       break;
       
 34718 
       
 34719     case DropdownClick:
       
 34720       changes = {
       
 34721         activeIndex: -1
       
 34722       };
       
 34723       break;
       
 34724 
       
 34725     case FunctionRemoveSelectedItem:
       
 34726       {
       
 34727         var _newActiveIndex = activeIndex;
       
 34728         var selectedItemIndex = selectedItems.indexOf(selectedItem);
       
 34729 
       
 34730         if (selectedItems.length === 1) {
       
 34731           _newActiveIndex = -1;
       
 34732         } else if (selectedItemIndex === selectedItems.length - 1) {
       
 34733           _newActiveIndex = selectedItems.length - 2;
       
 34734         }
       
 34735 
       
 34736         changes = Object(esm_extends["a" /* default */])({
       
 34737           selectedItems: [].concat(selectedItems.slice(0, selectedItemIndex), selectedItems.slice(selectedItemIndex + 1))
       
 34738         }, {
       
 34739           activeIndex: _newActiveIndex
       
 34740         });
       
 34741         break;
       
 34742       }
       
 34743 
       
 34744     case FunctionSetSelectedItems:
       
 34745       {
       
 34746         var newSelectedItems = action.selectedItems;
       
 34747         changes = {
       
 34748           selectedItems: newSelectedItems
       
 34749         };
       
 34750         break;
       
 34751       }
       
 34752 
       
 34753     case FunctionSetActiveIndex:
       
 34754       {
       
 34755         var _newActiveIndex2 = action.activeIndex;
       
 34756         changes = {
       
 34757           activeIndex: _newActiveIndex2
       
 34758         };
       
 34759         break;
       
 34760       }
       
 34761 
       
 34762     case FunctionReset$2:
       
 34763       changes = {
       
 34764         activeIndex: getDefaultValue$1(props, 'activeIndex'),
       
 34765         selectedItems: getDefaultValue$1(props, 'selectedItems')
       
 34766       };
       
 34767       break;
       
 34768 
       
 34769     default:
       
 34770       throw new Error('Reducer called without proper action type.');
       
 34771   }
       
 34772 
       
 34773   return Object(esm_extends["a" /* default */])({}, state, changes);
       
 34774 }
       
 34775 
       
 34776 useMultipleSelection.stateChangeTypes = stateChangeTypes$3;
       
 34777 
       
 34778 function useMultipleSelection(userProps) {
       
 34779   if (userProps === void 0) {
       
 34780     userProps = {};
       
 34781   }
       
 34782 
       
 34783   // Props defaults and destructuring.
       
 34784   var props = Object(esm_extends["a" /* default */])({}, defaultProps$3, userProps);
       
 34785 
       
 34786   var getA11yRemovalMessage = props.getA11yRemovalMessage,
       
 34787       itemToString = props.itemToString,
       
 34788       environment = props.environment,
       
 34789       keyNavigationNext = props.keyNavigationNext,
       
 34790       keyNavigationPrevious = props.keyNavigationPrevious; // Reducer init.
       
 34791 
       
 34792   var _useControlledReducer = useControlledReducer(downshiftMultipleSelectionReducer, getInitialState$2(props), props),
       
 34793       state = _useControlledReducer[0],
       
 34794       dispatch = _useControlledReducer[1];
       
 34795 
       
 34796   var activeIndex = state.activeIndex,
       
 34797       selectedItems = state.selectedItems; // Refs.
       
 34798 
       
 34799   var isInitialMountRef = Object(external_this_React_["useRef"])(true);
       
 34800   var dropdownRef = Object(external_this_React_["useRef"])(null);
       
 34801   var previousSelectedItemsRef = Object(external_this_React_["useRef"])(selectedItems);
       
 34802   var selectedItemRefs = Object(external_this_React_["useRef"])();
       
 34803   selectedItemRefs.current = []; // used for checking when props are moving from controlled to uncontrolled.
       
 34804 
       
 34805   var prevPropsRef = Object(external_this_React_["useRef"])(props);
       
 34806   var latest = useLatestRef({
       
 34807     state: state,
       
 34808     props: props
       
 34809   }); // Effects.
       
 34810 
       
 34811   /* Sets a11y status message on changes in selectedItem. */
       
 34812 
       
 34813   Object(external_this_React_["useEffect"])(function () {
       
 34814     if (isInitialMountRef.current) {
       
 34815       return;
       
 34816     }
       
 34817 
       
 34818     if (selectedItems.length < previousSelectedItemsRef.current.length) {
       
 34819       var removedSelectedItem = previousSelectedItemsRef.current.find(function (item) {
       
 34820         return selectedItems.indexOf(item) < 0;
       
 34821       });
       
 34822       setStatus(getA11yRemovalMessage({
       
 34823         itemToString: itemToString,
       
 34824         resultCount: selectedItems.length,
       
 34825         removedSelectedItem: removedSelectedItem,
       
 34826         activeIndex: activeIndex,
       
 34827         activeSelectedItem: selectedItems[activeIndex]
       
 34828       }), environment.document);
       
 34829     }
       
 34830 
       
 34831     previousSelectedItemsRef.current = selectedItems; // eslint-disable-next-line react-hooks/exhaustive-deps
       
 34832   }, [selectedItems.length]); // Sets focus on active item.
       
 34833 
       
 34834   Object(external_this_React_["useEffect"])(function () {
       
 34835     if (isInitialMountRef.current) {
       
 34836       return;
       
 34837     }
       
 34838 
       
 34839     if (activeIndex === -1 && dropdownRef.current) {
       
 34840       dropdownRef.current.focus();
       
 34841     } else if (selectedItemRefs.current[activeIndex]) {
       
 34842       selectedItemRefs.current[activeIndex].focus();
       
 34843     }
       
 34844   }, [activeIndex]);
       
 34845   Object(external_this_React_["useEffect"])(function () {
       
 34846     if (isInitialMountRef.current) {
       
 34847       return;
       
 34848     }
       
 34849 
       
 34850     validateControlledUnchanged(state, prevPropsRef.current, props);
       
 34851     prevPropsRef.current = props;
       
 34852   }, [state, props]);
       
 34853   var setGetterPropCallInfo = useGetterPropsCalledChecker('getDropdownProps'); // Make initial ref false.
       
 34854 
       
 34855   Object(external_this_React_["useEffect"])(function () {
       
 34856     isInitialMountRef.current = false;
       
 34857   }, []); // Event handler functions.
       
 34858 
       
 34859   var selectedItemKeyDownHandlers = Object(external_this_React_["useMemo"])(function () {
       
 34860     var _ref;
       
 34861 
       
 34862     return _ref = {}, _ref[keyNavigationPrevious] = function () {
       
 34863       dispatch({
       
 34864         type: SelectedItemKeyDownNavigationPrevious
       
 34865       });
       
 34866     }, _ref[keyNavigationNext] = function () {
       
 34867       dispatch({
       
 34868         type: SelectedItemKeyDownNavigationNext
       
 34869       });
       
 34870     }, _ref.Delete = function Delete() {
       
 34871       dispatch({
       
 34872         type: SelectedItemKeyDownDelete
       
 34873       });
       
 34874     }, _ref.Backspace = function Backspace() {
       
 34875       dispatch({
       
 34876         type: SelectedItemKeyDownBackspace
       
 34877       });
       
 34878     }, _ref;
       
 34879   }, [dispatch, keyNavigationNext, keyNavigationPrevious]);
       
 34880   var dropdownKeyDownHandlers = Object(external_this_React_["useMemo"])(function () {
       
 34881     var _ref2;
       
 34882 
       
 34883     return _ref2 = {}, _ref2[keyNavigationPrevious] = function (event) {
       
 34884       if (isKeyDownOperationPermitted(event)) {
       
 34885         dispatch({
       
 34886           type: DropdownKeyDownNavigationPrevious
       
 34887         });
       
 34888       }
       
 34889     }, _ref2.Backspace = function Backspace(event) {
       
 34890       if (isKeyDownOperationPermitted(event)) {
       
 34891         dispatch({
       
 34892           type: DropdownKeyDownBackspace
       
 34893         });
       
 34894       }
       
 34895     }, _ref2;
       
 34896   }, [dispatch, keyNavigationPrevious]); // Getter props.
       
 34897 
       
 34898   var getSelectedItemProps = Object(external_this_React_["useCallback"])(function (_temp) {
       
 34899     var _extends2;
       
 34900 
       
 34901     var _ref3 = _temp === void 0 ? {} : _temp,
       
 34902         _ref3$refKey = _ref3.refKey,
       
 34903         refKey = _ref3$refKey === void 0 ? 'ref' : _ref3$refKey,
       
 34904         ref = _ref3.ref,
       
 34905         onClick = _ref3.onClick,
       
 34906         onKeyDown = _ref3.onKeyDown,
       
 34907         selectedItem = _ref3.selectedItem,
       
 34908         index = _ref3.index,
       
 34909         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref3, ["refKey", "ref", "onClick", "onKeyDown", "selectedItem", "index"]);
       
 34910 
       
 34911     var latestState = latest.current.state;
       
 34912     var itemIndex = getItemIndex(index, selectedItem, latestState.selectedItems);
       
 34913 
       
 34914     if (itemIndex < 0) {
       
 34915       throw new Error('Pass either selectedItem or index in getSelectedItemProps!');
       
 34916     }
       
 34917 
       
 34918     return Object(esm_extends["a" /* default */])((_extends2 = {}, _extends2[refKey] = handleRefs(ref, function (selectedItemNode) {
       
 34919       if (selectedItemNode) {
       
 34920         selectedItemRefs.current.push(selectedItemNode);
       
 34921       }
       
 34922     }), _extends2.tabIndex = index === latestState.activeIndex ? 0 : -1, _extends2.onClick = callAllEventHandlers(onClick, function selectedItemHandleClick() {
       
 34923       dispatch({
       
 34924         type: SelectedItemClick,
       
 34925         index: index
       
 34926       });
       
 34927     }), _extends2.onKeyDown = callAllEventHandlers(onKeyDown, function selectedItemHandleKeyDown(event) {
       
 34928       var key = normalizeArrowKey(event);
       
 34929 
       
 34930       if (key && selectedItemKeyDownHandlers[key]) {
       
 34931         selectedItemKeyDownHandlers[key](event);
       
 34932       }
       
 34933     }), _extends2), rest);
       
 34934   }, [dispatch, latest, selectedItemKeyDownHandlers]);
       
 34935   var getDropdownProps = Object(external_this_React_["useCallback"])(function (_temp2, _temp3) {
       
 34936     var _extends3;
       
 34937 
       
 34938     var _ref4 = _temp2 === void 0 ? {} : _temp2,
       
 34939         _ref4$refKey = _ref4.refKey,
       
 34940         refKey = _ref4$refKey === void 0 ? 'ref' : _ref4$refKey,
       
 34941         ref = _ref4.ref,
       
 34942         onKeyDown = _ref4.onKeyDown,
       
 34943         onClick = _ref4.onClick,
       
 34944         _ref4$preventKeyActio = _ref4.preventKeyAction,
       
 34945         preventKeyAction = _ref4$preventKeyActio === void 0 ? false : _ref4$preventKeyActio,
       
 34946         rest = Object(objectWithoutPropertiesLoose["a" /* default */])(_ref4, ["refKey", "ref", "onKeyDown", "onClick", "preventKeyAction"]);
       
 34947 
       
 34948     var _ref5 = _temp3 === void 0 ? {} : _temp3,
       
 34949         _ref5$suppressRefErro = _ref5.suppressRefError,
       
 34950         suppressRefError = _ref5$suppressRefErro === void 0 ? false : _ref5$suppressRefErro;
       
 34951 
       
 34952     setGetterPropCallInfo('getDropdownProps', suppressRefError, refKey, dropdownRef);
       
 34953     return Object(esm_extends["a" /* default */])((_extends3 = {}, _extends3[refKey] = handleRefs(ref, function (dropdownNode) {
       
 34954       if (dropdownNode) {
       
 34955         dropdownRef.current = dropdownNode;
       
 34956       }
       
 34957     }), _extends3), !preventKeyAction && {
       
 34958       onKeyDown: callAllEventHandlers(onKeyDown, function dropdownHandleKeyDown(event) {
       
 34959         var key = normalizeArrowKey(event);
       
 34960 
       
 34961         if (key && dropdownKeyDownHandlers[key]) {
       
 34962           dropdownKeyDownHandlers[key](event);
       
 34963         }
       
 34964       }),
       
 34965       onClick: callAllEventHandlers(onClick, function dropdownHandleClick() {
       
 34966         dispatch({
       
 34967           type: DropdownClick
       
 34968         });
       
 34969       })
       
 34970     }, rest);
       
 34971   }, [dispatch, dropdownKeyDownHandlers, setGetterPropCallInfo]); // returns
       
 34972 
       
 34973   var addSelectedItem = Object(external_this_React_["useCallback"])(function (selectedItem) {
       
 34974     dispatch({
       
 34975       type: FunctionAddSelectedItem,
       
 34976       selectedItem: selectedItem
       
 34977     });
       
 34978   }, [dispatch]);
       
 34979   var removeSelectedItem = Object(external_this_React_["useCallback"])(function (selectedItem) {
       
 34980     dispatch({
       
 34981       type: FunctionRemoveSelectedItem,
       
 34982       selectedItem: selectedItem
       
 34983     });
       
 34984   }, [dispatch]);
       
 34985   var setSelectedItems = Object(external_this_React_["useCallback"])(function (newSelectedItems) {
       
 34986     dispatch({
       
 34987       type: FunctionSetSelectedItems,
       
 34988       selectedItems: newSelectedItems
       
 34989     });
       
 34990   }, [dispatch]);
       
 34991   var setActiveIndex = Object(external_this_React_["useCallback"])(function (newActiveIndex) {
       
 34992     dispatch({
       
 34993       type: FunctionSetActiveIndex,
       
 34994       activeIndex: newActiveIndex
       
 34995     });
       
 34996   }, [dispatch]);
       
 34997   var reset = Object(external_this_React_["useCallback"])(function () {
       
 34998     dispatch({
       
 34999       type: FunctionReset$2
       
 35000     });
       
 35001   }, [dispatch]);
       
 35002   return {
       
 35003     getSelectedItemProps: getSelectedItemProps,
       
 35004     getDropdownProps: getDropdownProps,
       
 35005     addSelectedItem: addSelectedItem,
       
 35006     removeSelectedItem: removeSelectedItem,
       
 35007     setSelectedItems: setSelectedItems,
       
 35008     setActiveIndex: setActiveIndex,
       
 35009     reset: reset,
       
 35010     selectedItems: selectedItems,
       
 35011     activeIndex: activeIndex
       
 35012   };
       
 35013 }
       
 35014 
       
 35015 /* harmony default export */ var downshift_esm = (downshift_esm_Downshift);
       
 35016 
       
 35017 
       
 35018 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-select-control/index.js
       
 35019 
       
 35020 
       
 35021 
       
 35022 /**
       
 35023  * External dependencies
       
 35024  */
       
 35025 
       
 35026 
       
 35027 /**
       
 35028  * WordPress dependencies
       
 35029  */
       
 35030 
       
 35031 
       
 35032 /**
       
 35033  * Internal dependencies
       
 35034  */
       
 35035 
       
 35036 
       
 35037 
       
 35038 var custom_select_control_itemToString = function itemToString(item) {
       
 35039   return item && item.name;
       
 35040 }; // This is needed so that in Windows, where
       
 35041 // the menu does not necessarily open on
       
 35042 // key up/down, you can still switch between
       
 35043 // options with the menu closed.
       
 35044 
       
 35045 
       
 35046 var custom_select_control_stateReducer = function stateReducer(_ref, _ref2) {
       
 35047   var selectedItem = _ref.selectedItem;
       
 35048   var type = _ref2.type,
       
 35049       changes = _ref2.changes,
       
 35050       items = _ref2.props.items;
       
 35051 
       
 35052   switch (type) {
       
 35053     case useSelect.stateChangeTypes.ToggleButtonKeyDownArrowDown:
       
 35054       // If we already have a selected item, try to select the next one,
       
 35055       // without circular navigation. Otherwise, select the first item.
       
 35056       return {
       
 35057         selectedItem: items[selectedItem ? Math.min(items.indexOf(selectedItem) + 1, items.length - 1) : 0]
       
 35058       };
       
 35059 
       
 35060     case useSelect.stateChangeTypes.ToggleButtonKeyDownArrowUp:
       
 35061       // If we already have a selected item, try to select the previous one,
       
 35062       // without circular navigation. Otherwise, select the last item.
       
 35063       return {
       
 35064         selectedItem: items[selectedItem ? Math.max(items.indexOf(selectedItem) - 1, 0) : items.length - 1]
       
 35065       };
       
 35066 
       
 35067     default:
       
 35068       return changes;
       
 35069   }
       
 35070 };
       
 35071 
       
 35072 function CustomSelectControl(_ref3) {
       
 35073   var className = _ref3.className,
       
 35074       hideLabelFromVision = _ref3.hideLabelFromVision,
       
 35075       label = _ref3.label,
       
 35076       items = _ref3.options,
       
 35077       onSelectedItemChange = _ref3.onChange,
       
 35078       _selectedItem = _ref3.value;
       
 35079 
       
 35080   var _useSelect = useSelect({
       
 35081     initialSelectedItem: items[0],
       
 35082     items: items,
       
 35083     itemToString: custom_select_control_itemToString,
       
 35084     onSelectedItemChange: onSelectedItemChange,
       
 35085     selectedItem: _selectedItem,
       
 35086     stateReducer: custom_select_control_stateReducer
       
 35087   }),
       
 35088       getLabelProps = _useSelect.getLabelProps,
       
 35089       getToggleButtonProps = _useSelect.getToggleButtonProps,
       
 35090       getMenuProps = _useSelect.getMenuProps,
       
 35091       getItemProps = _useSelect.getItemProps,
       
 35092       isOpen = _useSelect.isOpen,
       
 35093       highlightedIndex = _useSelect.highlightedIndex,
       
 35094       selectedItem = _useSelect.selectedItem;
       
 35095 
       
 35096   var menuProps = getMenuProps({
       
 35097     className: 'components-custom-select-control__menu',
       
 35098     'aria-hidden': !isOpen
       
 35099   }); // We need this here, because the null active descendant is not
       
 35100   // fully ARIA compliant.
       
 35101 
       
 35102   if (menuProps['aria-activedescendant'] && menuProps['aria-activedescendant'].slice(0, 'downshift-null'.length) === 'downshift-null') {
       
 35103     delete menuProps['aria-activedescendant'];
       
 35104   }
       
 35105 
       
 35106   return Object(external_this_wp_element_["createElement"])("div", {
       
 35107     className: classnames_default()('components-custom-select-control', className)
       
 35108   }, hideLabelFromVision ? Object(external_this_wp_element_["createElement"])(visually_hidden, Object(esm_extends["a" /* default */])({
       
 35109     as: "label"
       
 35110   }, getLabelProps()), label) :
       
 35111   /* eslint-disable-next-line jsx-a11y/label-has-associated-control, jsx-a11y/label-has-for */
       
 35112   Object(external_this_wp_element_["createElement"])("label", getLabelProps({
       
 35113     className: 'components-custom-select-control__label'
       
 35114   }), label), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], getToggleButtonProps({
       
 35115     // This is needed because some speech recognition software don't support `aria-labelledby`.
       
 35116     'aria-label': label,
       
 35117     'aria-labelledby': undefined,
       
 35118     className: 'components-custom-select-control__button',
       
 35119     isSmall: true
       
 35120   }), custom_select_control_itemToString(selectedItem), Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
       
 35121     icon: chevron_down["a" /* default */],
       
 35122     className: "components-custom-select-control__button-icon"
       
 35123   })), Object(external_this_wp_element_["createElement"])("ul", menuProps, isOpen && items.map(function (item, index) {
       
 35124     return (// eslint-disable-next-line react/jsx-key
       
 35125       Object(external_this_wp_element_["createElement"])("li", getItemProps({
       
 35126         item: item,
       
 35127         index: index,
       
 35128         key: item.key,
       
 35129         className: classnames_default()(item.className, 'components-custom-select-control__item', {
       
 35130           'is-highlighted': index === highlightedIndex
       
 35131         }),
       
 35132         style: item.style
       
 35133       }), item === selectedItem && Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
       
 35134         icon: check["a" /* default */],
       
 35135         className: "components-custom-select-control__item-icon"
       
 35136       }), item.name)
       
 35137     );
       
 35138   })));
       
 35139 }
       
 35140 
       
 35141 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/dashicon/index.js
       
 35142 var dashicon = __webpack_require__(148);
 30147 
 35143 
 30148 // EXTERNAL MODULE: ./node_modules/react-dates/initialize.js
 35144 // EXTERNAL MODULE: ./node_modules/react-dates/initialize.js
 30149 var initialize = __webpack_require__(260);
 35145 var initialize = __webpack_require__(305);
 30150 
 35146 
 30151 // EXTERNAL MODULE: external "moment"
 35147 // EXTERNAL MODULE: external {"this":"moment"}
 30152 var external_moment_ = __webpack_require__(29);
 35148 var external_this_moment_ = __webpack_require__(43);
 30153 var external_moment_default = /*#__PURE__*/__webpack_require__.n(external_moment_);
 35149 var external_this_moment_default = /*#__PURE__*/__webpack_require__.n(external_this_moment_);
 30154 
 35150 
 30155 // EXTERNAL MODULE: ./node_modules/react-dates/index.js
 35151 // EXTERNAL MODULE: ./node_modules/react-dates/lib/components/DayPickerSingleDateController.js
 30156 var react_dates = __webpack_require__(223);
 35152 var DayPickerSingleDateController = __webpack_require__(271);
       
 35153 var DayPickerSingleDateController_default = /*#__PURE__*/__webpack_require__.n(DayPickerSingleDateController);
 30157 
 35154 
 30158 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/date-time/date.js
 35155 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/date-time/date.js
 30159 
 35156 
 30160 
 35157 
 30161 
 35158 
 30162 
 35159 
 30163 
 35160 
 30164 
 35161 
 30165 
 35162 
 30166 
 35163 
       
 35164 function date_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (date_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 35165 
       
 35166 function date_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 35167 
 30167 /**
 35168 /**
 30168  * External dependencies
 35169  * External dependencies
 30169  */
 35170  */
       
 35171  // react-dates doesn't tree-shake correctly, so we import from the individual
       
 35172 // component here, to avoid including too much of the library
 30170 
 35173 
 30171 
 35174 
 30172 /**
 35175 /**
 30173  * WordPress dependencies
 35176  * WordPress dependencies
 30174  */
 35177  */
 30182 
 35185 
 30183 var date_isRTL = function isRTL() {
 35186 var date_isRTL = function isRTL() {
 30184   return document.documentElement.dir === 'rtl';
 35187   return document.documentElement.dir === 'rtl';
 30185 };
 35188 };
 30186 
 35189 
 30187 var date_DatePicker =
 35190 var date_DatePicker = /*#__PURE__*/function (_Component) {
 30188 /*#__PURE__*/
       
 30189 function (_Component) {
       
 30190   Object(inherits["a" /* default */])(DatePicker, _Component);
 35191   Object(inherits["a" /* default */])(DatePicker, _Component);
       
 35192 
       
 35193   var _super = date_createSuper(DatePicker);
 30191 
 35194 
 30192   function DatePicker() {
 35195   function DatePicker() {
 30193     var _this;
 35196     var _this;
 30194 
 35197 
 30195     Object(classCallCheck["a" /* default */])(this, DatePicker);
 35198     Object(classCallCheck["a" /* default */])(this, DatePicker);
 30196 
 35199 
 30197     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(DatePicker).apply(this, arguments));
 35200     _this = _super.apply(this, arguments);
 30198     _this.onChangeMoment = _this.onChangeMoment.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35201     _this.onChangeMoment = _this.onChangeMoment.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 35202     _this.nodeRef = Object(external_this_wp_element_["createRef"])();
       
 35203     _this.keepFocusInside = _this.keepFocusInside.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30199     return _this;
 35204     return _this;
 30200   }
 35205   }
       
 35206   /*
       
 35207    * Todo: We should remove this function ASAP.
       
 35208    * It is kept because focus is lost when we click on the previous and next month buttons.
       
 35209    * This focus loss closes the date picker popover.
       
 35210    * Ideally we should add an upstream commit on react-dates to fix this issue.
       
 35211    */
       
 35212 
 30201 
 35213 
 30202   Object(createClass["a" /* default */])(DatePicker, [{
 35214   Object(createClass["a" /* default */])(DatePicker, [{
       
 35215     key: "keepFocusInside",
       
 35216     value: function keepFocusInside() {
       
 35217       if (!this.nodeRef.current) {
       
 35218         return;
       
 35219       } // If focus was lost.
       
 35220 
       
 35221 
       
 35222       if (!document.activeElement || !this.nodeRef.current.contains(document.activeElement)) {
       
 35223         // Retrieve the focus region div.
       
 35224         var focusRegion = this.nodeRef.current.querySelector('.DayPicker_focusRegion');
       
 35225 
       
 35226         if (!focusRegion) {
       
 35227           return;
       
 35228         } // Keep the focus on focus region.
       
 35229 
       
 35230 
       
 35231         focusRegion.focus();
       
 35232       }
       
 35233     }
       
 35234   }, {
 30203     key: "onChangeMoment",
 35235     key: "onChangeMoment",
 30204     value: function onChangeMoment(newDate) {
 35236     value: function onChangeMoment(newDate) {
 30205       var _this$props = this.props,
 35237       var _this$props = this.props,
 30206           currentDate = _this$props.currentDate,
 35238           currentDate = _this$props.currentDate,
 30207           onChange = _this$props.onChange; // If currentDate is null, use now as momentTime to designate hours, minutes, seconds.
 35239           onChange = _this$props.onChange; // If currentDate is null, use now as momentTime to designate hours, minutes, seconds.
 30208 
 35240 
 30209       var momentDate = currentDate ? external_moment_default()(currentDate) : external_moment_default()();
 35241       var momentDate = currentDate ? external_this_moment_default()(currentDate) : external_this_moment_default()();
 30210       var momentTime = {
 35242       var momentTime = {
 30211         hours: momentDate.hours(),
 35243         hours: momentDate.hours(),
 30212         minutes: momentDate.minutes(),
 35244         minutes: momentDate.minutes(),
 30213         seconds: momentDate.seconds()
 35245         seconds: 0
 30214       };
 35246       };
 30215       onChange(newDate.set(momentTime).format(TIMEZONELESS_FORMAT));
 35247       onChange(newDate.set(momentTime).format(TIMEZONELESS_FORMAT));
 30216     }
 35248     }
 30217     /**
 35249     /**
 30218      * Create a Moment object from a date string. With no currentDate supplied, default to a Moment
 35250      * Create a Moment object from a date string. With no currentDate supplied, default to a Moment
 30219      * object representing now. If a null value is passed, return a null value.
 35251      * object representing now. If a null value is passed, return a null value.
 30220      *
 35252      *
 30221      * @param {?string} currentDate Date representing the currently selected date or null to signify no selection.
 35253      * @param {?string} currentDate Date representing the currently selected date or null to signify no selection.
 30222      * @return {?Moment} Moment object for selected date or null.
 35254      * @return {?moment.Moment} Moment object for selected date or null.
 30223      */
 35255      */
 30224 
 35256 
 30225   }, {
 35257   }, {
 30226     key: "getMomentDate",
 35258     key: "getMomentDate",
 30227     value: function getMomentDate(currentDate) {
 35259     value: function getMomentDate(currentDate) {
 30228       if (null === currentDate) {
 35260       if (null === currentDate) {
 30229         return null;
 35261         return null;
 30230       }
 35262       }
 30231 
 35263 
 30232       return currentDate ? external_moment_default()(currentDate) : external_moment_default()();
 35264       return currentDate ? external_this_moment_default()(currentDate) : external_this_moment_default()();
 30233     }
 35265     }
 30234   }, {
 35266   }, {
 30235     key: "render",
 35267     key: "render",
 30236     value: function render() {
 35268     value: function render() {
 30237       var _this$props2 = this.props,
 35269       var _this$props2 = this.props,
 30238           currentDate = _this$props2.currentDate,
 35270           currentDate = _this$props2.currentDate,
 30239           isInvalidDate = _this$props2.isInvalidDate;
 35271           isInvalidDate = _this$props2.isInvalidDate;
 30240       var momentDate = this.getMomentDate(currentDate);
 35272       var momentDate = this.getMomentDate(currentDate);
 30241       return Object(external_this_wp_element_["createElement"])("div", {
 35273       return Object(external_this_wp_element_["createElement"])("div", {
 30242         className: "components-datetime__date"
 35274         className: "components-datetime__date",
 30243       }, Object(external_this_wp_element_["createElement"])(react_dates["DayPickerSingleDateController"], {
 35275         ref: this.nodeRef
       
 35276       }, Object(external_this_wp_element_["createElement"])(DayPickerSingleDateController_default.a, {
 30244         date: momentDate,
 35277         date: momentDate,
 30245         daySize: 30,
 35278         daySize: 30,
 30246         focused: true,
 35279         focused: true,
 30247         hideKeyboardShortcutsPanel: true // This is a hack to force the calendar to update on month or year change
 35280         hideKeyboardShortcutsPanel: true // This is a hack to force the calendar to update on month or year change
 30248         // https://github.com/airbnb/react-dates/issues/240#issuecomment-361776665
 35281         // https://github.com/airbnb/react-dates/issues/240#issuecomment-361776665
 30254         transitionDuration: 0,
 35287         transitionDuration: 0,
 30255         weekDayFormat: "ddd",
 35288         weekDayFormat: "ddd",
 30256         isRTL: date_isRTL(),
 35289         isRTL: date_isRTL(),
 30257         isOutsideRange: function isOutsideRange(date) {
 35290         isOutsideRange: function isOutsideRange(date) {
 30258           return isInvalidDate && isInvalidDate(date.toDate());
 35291           return isInvalidDate && isInvalidDate(date.toDate());
 30259         }
 35292         },
       
 35293         onPrevMonthClick: this.keepFocusInside,
       
 35294         onNextMonthClick: this.keepFocusInside
 30260       }));
 35295       }));
 30261     }
 35296     }
 30262   }]);
 35297   }]);
 30263 
 35298 
 30264   return DatePicker;
 35299   return DatePicker;
 30273 
 35308 
 30274 
 35309 
 30275 
 35310 
 30276 
 35311 
 30277 
 35312 
       
 35313 function time_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (time_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 35314 
       
 35315 function time_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 35316 
 30278 /**
 35317 /**
 30279  * External dependencies
 35318  * External dependencies
 30280  */
 35319  */
 30281 
 35320 
 30282 
 35321 
 30290 /**
 35329 /**
 30291  * Internal dependencies
 35330  * Internal dependencies
 30292  */
 35331  */
 30293 
 35332 
 30294 
 35333 
       
 35334 
 30295 /**
 35335 /**
 30296  * Module Constants
 35336  * Module Constants
 30297  */
 35337  */
 30298 
 35338 
 30299 var time_TIMEZONELESS_FORMAT = 'YYYY-MM-DDTHH:mm:ss';
 35339 var time_TIMEZONELESS_FORMAT = 'YYYY-MM-DDTHH:mm:ss';
 30300 
 35340 
 30301 var time_TimePicker =
 35341 var time_TimePicker = /*#__PURE__*/function (_Component) {
 30302 /*#__PURE__*/
       
 30303 function (_Component) {
       
 30304   Object(inherits["a" /* default */])(TimePicker, _Component);
 35342   Object(inherits["a" /* default */])(TimePicker, _Component);
       
 35343 
       
 35344   var _super = time_createSuper(TimePicker);
 30305 
 35345 
 30306   function TimePicker() {
 35346   function TimePicker() {
 30307     var _this;
 35347     var _this;
 30308 
 35348 
 30309     Object(classCallCheck["a" /* default */])(this, TimePicker);
 35349     Object(classCallCheck["a" /* default */])(this, TimePicker);
 30310 
 35350 
 30311     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(TimePicker).apply(this, arguments));
 35351     _this = _super.apply(this, arguments);
 30312     _this.state = {
 35352     _this.state = {
 30313       day: '',
 35353       day: '',
 30314       month: '',
 35354       month: '',
 30315       year: '',
 35355       year: '',
 30316       hours: '',
 35356       hours: '',
 30317       minutes: '',
 35357       minutes: '',
 30318       am: true,
 35358       am: '',
 30319       date: null
 35359       date: null
 30320     };
 35360     };
 30321     _this.updateMonth = _this.updateMonth.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35361     _this.changeDate = _this.changeDate.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30322     _this.onChangeMonth = _this.onChangeMonth.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35362     _this.updateMonth = _this.updateMonth.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30323     _this.updateDay = _this.updateDay.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35363     _this.onChangeMonth = _this.onChangeMonth.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30324     _this.onChangeDay = _this.onChangeDay.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35364     _this.updateDay = _this.updateDay.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30325     _this.updateYear = _this.updateYear.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35365     _this.onChangeDay = _this.onChangeDay.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30326     _this.onChangeYear = _this.onChangeYear.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35366     _this.updateYear = _this.updateYear.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30327     _this.updateHours = _this.updateHours.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35367     _this.onChangeYear = _this.onChangeYear.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30328     _this.updateMinutes = _this.updateMinutes.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35368     _this.updateHours = _this.updateHours.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30329     _this.onChangeHours = _this.onChangeHours.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35369     _this.updateMinutes = _this.updateMinutes.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30330     _this.onChangeMinutes = _this.onChangeMinutes.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35370     _this.onChangeHours = _this.onChangeHours.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30331     _this.renderMonth = _this.renderMonth.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35371     _this.onChangeMinutes = _this.onChangeMinutes.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30332     _this.renderDay = _this.renderDay.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35372     _this.renderMonth = _this.renderMonth.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30333     _this.renderDayMonthFormat = _this.renderDayMonthFormat.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35373     _this.renderDay = _this.renderDay.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 35374     _this.renderDayMonthFormat = _this.renderDayMonthFormat.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30334     return _this;
 35375     return _this;
 30335   }
 35376   }
 30336 
 35377 
 30337   Object(createClass["a" /* default */])(TimePicker, [{
 35378   Object(createClass["a" /* default */])(TimePicker, [{
 30338     key: "componentDidMount",
 35379     key: "componentDidMount",
 30348 
 35389 
 30349       if (currentTime !== prevProps.currentTime || is12Hour !== prevProps.is12Hour) {
 35390       if (currentTime !== prevProps.currentTime || is12Hour !== prevProps.is12Hour) {
 30350         this.syncState(this.props);
 35391         this.syncState(this.props);
 30351       }
 35392       }
 30352     }
 35393     }
       
 35394     /**
       
 35395      * Function that sets the date state and calls the onChange with a new date.
       
 35396      * The date is truncated at the minutes.
       
 35397      *
       
 35398      * @param {Object} newDate The date object.
       
 35399      */
       
 35400 
       
 35401   }, {
       
 35402     key: "changeDate",
       
 35403     value: function changeDate(newDate) {
       
 35404       var dateWithStartOfMinutes = newDate.clone().startOf('minute');
       
 35405       this.setState({
       
 35406         date: dateWithStartOfMinutes
       
 35407       });
       
 35408       this.props.onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 35409     }
 30353   }, {
 35410   }, {
 30354     key: "getMaxHours",
 35411     key: "getMaxHours",
 30355     value: function getMaxHours() {
 35412     value: function getMaxHours() {
 30356       return this.props.is12Hour ? 12 : 23;
 35413       return this.props.is12Hour ? 12 : 23;
 30357     }
 35414     }
 30363   }, {
 35420   }, {
 30364     key: "syncState",
 35421     key: "syncState",
 30365     value: function syncState(_ref) {
 35422     value: function syncState(_ref) {
 30366       var currentTime = _ref.currentTime,
 35423       var currentTime = _ref.currentTime,
 30367           is12Hour = _ref.is12Hour;
 35424           is12Hour = _ref.is12Hour;
 30368       var selected = currentTime ? external_moment_default()(currentTime) : external_moment_default()();
 35425       var selected = currentTime ? external_this_moment_default()(currentTime) : external_this_moment_default()();
 30369       var day = selected.format('DD');
 35426       var day = selected.format('DD');
 30370       var month = selected.format('MM');
 35427       var month = selected.format('MM');
 30371       var year = selected.format('YYYY');
 35428       var year = selected.format('YYYY');
 30372       var minutes = selected.format('mm');
 35429       var minutes = selected.format('mm');
 30373       var am = selected.format('A');
 35430       var am = selected.format('H') <= 11 ? 'AM' : 'PM';
 30374       var hours = selected.format(is12Hour ? 'hh' : 'HH');
 35431       var hours = selected.format(is12Hour ? 'hh' : 'HH');
 30375       var date = currentTime ? external_moment_default()(currentTime) : external_moment_default()();
 35432       var date = currentTime ? external_this_moment_default()(currentTime) : external_this_moment_default()();
 30376       this.setState({
 35433       this.setState({
 30377         day: day,
 35434         day: day,
 30378         month: month,
 35435         month: month,
 30379         year: year,
 35436         year: year,
 30380         minutes: minutes,
 35437         minutes: minutes,
 30384       });
 35441       });
 30385     }
 35442     }
 30386   }, {
 35443   }, {
 30387     key: "updateHours",
 35444     key: "updateHours",
 30388     value: function updateHours() {
 35445     value: function updateHours() {
 30389       var _this$props2 = this.props,
 35446       var is12Hour = this.props.is12Hour;
 30390           is12Hour = _this$props2.is12Hour,
       
 30391           onChange = _this$props2.onChange;
       
 30392       var _this$state = this.state,
 35447       var _this$state = this.state,
 30393           am = _this$state.am,
 35448           am = _this$state.am,
 30394           hours = _this$state.hours,
 35449           hours = _this$state.hours,
 30395           date = _this$state.date;
 35450           date = _this$state.date;
 30396       var value = parseInt(hours, 10);
 35451       var value = parseInt(hours, 10);
 30397 
 35452 
 30398       if (!Object(external_lodash_["isInteger"])(value) || is12Hour && (value < 1 || value > 12) || !is12Hour && (value < 0 || value > 23)) {
 35453       if (value === date.hour()) {
       
 35454         return;
       
 35455       }
       
 35456 
       
 35457       if (!Object(external_this_lodash_["isInteger"])(value) || is12Hour && (value < 1 || value > 12) || !is12Hour && (value < 0 || value > 23)) {
 30399         this.syncState(this.props);
 35458         this.syncState(this.props);
 30400         return;
 35459         return;
 30401       }
 35460       }
 30402 
 35461 
 30403       var newDate = is12Hour ? date.clone().hours(am === 'AM' ? value % 12 : (value % 12 + 12) % 24) : date.clone().hours(value);
 35462       var newDate = is12Hour ? date.clone().hours(am === 'AM' ? value % 12 : (value % 12 + 12) % 24) : date.clone().hours(value);
 30404       this.setState({
 35463       this.changeDate(newDate);
 30405         date: newDate
       
 30406       });
       
 30407       onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 30408     }
 35464     }
 30409   }, {
 35465   }, {
 30410     key: "updateMinutes",
 35466     key: "updateMinutes",
 30411     value: function updateMinutes() {
 35467     value: function updateMinutes() {
 30412       var onChange = this.props.onChange;
       
 30413       var _this$state2 = this.state,
 35468       var _this$state2 = this.state,
 30414           minutes = _this$state2.minutes,
 35469           minutes = _this$state2.minutes,
 30415           date = _this$state2.date;
 35470           date = _this$state2.date;
 30416       var value = parseInt(minutes, 10);
 35471       var value = parseInt(minutes, 10);
 30417 
 35472 
 30418       if (!Object(external_lodash_["isInteger"])(value) || value < 0 || value > 59) {
 35473       if (value === date.minute()) {
       
 35474         return;
       
 35475       }
       
 35476 
       
 35477       if (!Object(external_this_lodash_["isInteger"])(value) || value < 0 || value > 59) {
 30419         this.syncState(this.props);
 35478         this.syncState(this.props);
 30420         return;
 35479         return;
 30421       }
 35480       }
 30422 
 35481 
 30423       var newDate = date.clone().minutes(value);
 35482       var newDate = date.clone().minutes(value);
 30424       this.setState({
 35483       this.changeDate(newDate);
 30425         date: newDate
       
 30426       });
       
 30427       onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 30428     }
 35484     }
 30429   }, {
 35485   }, {
 30430     key: "updateDay",
 35486     key: "updateDay",
 30431     value: function updateDay() {
 35487     value: function updateDay() {
 30432       var onChange = this.props.onChange;
       
 30433       var _this$state3 = this.state,
 35488       var _this$state3 = this.state,
 30434           day = _this$state3.day,
 35489           day = _this$state3.day,
 30435           date = _this$state3.date;
 35490           date = _this$state3.date;
 30436       var value = parseInt(day, 10);
 35491       var value = parseInt(day, 10);
 30437 
 35492 
 30438       if (!Object(external_lodash_["isInteger"])(value) || value < 1 || value > 31) {
 35493       if (value === date.date()) {
       
 35494         return;
       
 35495       }
       
 35496 
       
 35497       if (!Object(external_this_lodash_["isInteger"])(value) || value < 1 || value > 31) {
 30439         this.syncState(this.props);
 35498         this.syncState(this.props);
 30440         return;
 35499         return;
 30441       }
 35500       }
 30442 
 35501 
 30443       var newDate = date.clone().date(value);
 35502       var newDate = date.clone().date(value);
 30444       this.setState({
 35503       this.changeDate(newDate);
 30445         date: newDate
       
 30446       });
       
 30447       onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 30448     }
 35504     }
 30449   }, {
 35505   }, {
 30450     key: "updateMonth",
 35506     key: "updateMonth",
 30451     value: function updateMonth() {
 35507     value: function updateMonth() {
 30452       var onChange = this.props.onChange;
       
 30453       var _this$state4 = this.state,
 35508       var _this$state4 = this.state,
 30454           month = _this$state4.month,
 35509           month = _this$state4.month,
 30455           date = _this$state4.date;
 35510           date = _this$state4.date;
 30456       var value = parseInt(month, 10);
 35511       var value = parseInt(month, 10);
 30457 
 35512 
 30458       if (!Object(external_lodash_["isInteger"])(value) || value < 1 || value > 12) {
 35513       if (value === date.month() + 1) {
       
 35514         return;
       
 35515       }
       
 35516 
       
 35517       if (!Object(external_this_lodash_["isInteger"])(value) || value < 1 || value > 12) {
 30459         this.syncState(this.props);
 35518         this.syncState(this.props);
 30460         return;
 35519         return;
 30461       }
 35520       }
 30462 
 35521 
 30463       var newDate = date.clone().month(value - 1);
 35522       var newDate = date.clone().month(value - 1);
 30464       this.setState({
 35523       this.changeDate(newDate);
 30465         date: newDate
       
 30466       });
       
 30467       onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 30468     }
 35524     }
 30469   }, {
 35525   }, {
 30470     key: "updateYear",
 35526     key: "updateYear",
 30471     value: function updateYear() {
 35527     value: function updateYear() {
 30472       var onChange = this.props.onChange;
       
 30473       var _this$state5 = this.state,
 35528       var _this$state5 = this.state,
 30474           year = _this$state5.year,
 35529           year = _this$state5.year,
 30475           date = _this$state5.date;
 35530           date = _this$state5.date;
 30476       var value = parseInt(year, 10);
 35531       var value = parseInt(year, 10);
 30477 
 35532 
 30478       if (!Object(external_lodash_["isInteger"])(value) || value < 0 || value > 9999) {
 35533       if (value === date.year()) {
       
 35534         return;
       
 35535       }
       
 35536 
       
 35537       if (!Object(external_this_lodash_["isInteger"])(value) || value < 0 || value > 9999) {
 30479         this.syncState(this.props);
 35538         this.syncState(this.props);
 30480         return;
 35539         return;
 30481       }
 35540       }
 30482 
 35541 
 30483       var newDate = date.clone().year(value);
 35542       var newDate = date.clone().year(value);
 30484       this.setState({
 35543       this.changeDate(newDate);
 30485         date: newDate
       
 30486       });
       
 30487       onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 30488     }
 35544     }
 30489   }, {
 35545   }, {
 30490     key: "updateAmPm",
 35546     key: "updateAmPm",
 30491     value: function updateAmPm(value) {
 35547     value: function updateAmPm(value) {
 30492       var _this2 = this;
 35548       var _this2 = this;
 30493 
 35549 
 30494       return function () {
 35550       return function () {
 30495         var onChange = _this2.props.onChange;
       
 30496         var _this2$state = _this2.state,
 35551         var _this2$state = _this2.state,
 30497             am = _this2$state.am,
 35552             am = _this2$state.am,
 30498             date = _this2$state.date,
 35553             date = _this2$state.date,
 30499             hours = _this2$state.hours;
 35554             hours = _this2$state.hours;
 30500 
 35555 
 30508           newDate = date.clone().hours((parseInt(hours, 10) % 12 + 12) % 24);
 35563           newDate = date.clone().hours((parseInt(hours, 10) % 12 + 12) % 24);
 30509         } else {
 35564         } else {
 30510           newDate = date.clone().hours(parseInt(hours, 10) % 12);
 35565           newDate = date.clone().hours(parseInt(hours, 10) % 12);
 30511         }
 35566         }
 30512 
 35567 
 30513         _this2.setState({
 35568         _this2.changeDate(newDate);
 30514           date: newDate
       
 30515         });
       
 30516 
       
 30517         onChange(newDate.format(time_TIMEZONELESS_FORMAT));
       
 30518       };
 35569       };
 30519     }
 35570     }
 30520   }, {
 35571   }, {
 30521     key: "onChangeDay",
 35572     key: "onChangeDay",
 30522     value: function onChangeDay(event) {
 35573     value: function onChangeDay(event) {
 30546       });
 35597       });
 30547     }
 35598     }
 30548   }, {
 35599   }, {
 30549     key: "onChangeMinutes",
 35600     key: "onChangeMinutes",
 30550     value: function onChangeMinutes(event) {
 35601     value: function onChangeMinutes(event) {
       
 35602       var minutes = event.target.value;
 30551       this.setState({
 35603       this.setState({
 30552         minutes: event.target.value
 35604         minutes: minutes === '' ? '' : ('0' + minutes).slice(-2)
 30553       });
 35605       });
 30554     }
 35606     }
 30555   }, {
 35607   }, {
 30556     key: "renderMonth",
 35608     key: "renderMonth",
 30557     value: function renderMonth(month) {
 35609     value: function renderMonth(month) {
 30667         min: 0,
 35719         min: 0,
 30668         max: 59,
 35720         max: 59,
 30669         value: minutes,
 35721         value: minutes,
 30670         onChange: this.onChangeMinutes,
 35722         onChange: this.onChangeMinutes,
 30671         onBlur: this.updateMinutes
 35723         onBlur: this.updateMinutes
 30672       })), is12Hour && Object(external_this_wp_element_["createElement"])("div", {
 35724       })), is12Hour && Object(external_this_wp_element_["createElement"])(button_group, {
 30673         className: "components-datetime__time-field components-datetime__time-field-am-pm"
 35725         className: "components-datetime__time-field components-datetime__time-field-am-pm"
 30674       }, Object(external_this_wp_element_["createElement"])(build_module_button, {
 35726       }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 30675         "aria-pressed": am === 'AM',
 35727         isPrimary: am === 'AM',
 30676         isDefault: true,
 35728         isSecondary: am !== 'AM',
 30677         className: "components-datetime__time-am-button",
 35729         onClick: this.updateAmPm('AM'),
 30678         isToggled: am === 'AM',
 35730         className: "components-datetime__time-am-button"
 30679         onClick: this.updateAmPm('AM')
 35731       }, Object(external_this_wp_i18n_["__"])('AM')), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 30680       }, Object(external_this_wp_i18n_["__"])('AM')), Object(external_this_wp_element_["createElement"])(build_module_button, {
 35732         isPrimary: am === 'PM',
 30681         "aria-pressed": am === 'PM',
 35733         isSecondary: am !== 'PM',
 30682         isDefault: true,
 35734         onClick: this.updateAmPm('PM'),
 30683         className: "components-datetime__time-pm-button",
 35735         className: "components-datetime__time-pm-button"
 30684         isToggled: am === 'PM',
       
 30685         onClick: this.updateAmPm('PM')
       
 30686       }, Object(external_this_wp_i18n_["__"])('PM'))))));
 35736       }, Object(external_this_wp_i18n_["__"])('PM'))))));
 30687     }
 35737     }
 30688   }]);
 35738   }]);
 30689 
 35739 
 30690   return TimePicker;
 35740   return TimePicker;
 30699 
 35749 
 30700 
 35750 
 30701 
 35751 
 30702 
 35752 
 30703 
 35753 
       
 35754 function date_time_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (date_time_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 35755 
       
 35756 function date_time_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 35757 
 30704 /**
 35758 /**
 30705  * External dependencies
 35759  * External dependencies
 30706  */
 35760  */
 30707 // Needed to initialise the default datepicker styles.
 35761 // Needed to initialise the default datepicker styles.
 30708 // See: https://github.com/airbnb/react-dates#initialize
 35762 // See: https://github.com/airbnb/react-dates#initialize
 30719 
 35773 
 30720 
 35774 
 30721 
 35775 
 30722 
 35776 
 30723 
 35777 
 30724 var date_time_DateTimePicker =
 35778 var date_time_DateTimePicker = /*#__PURE__*/function (_Component) {
 30725 /*#__PURE__*/
       
 30726 function (_Component) {
       
 30727   Object(inherits["a" /* default */])(DateTimePicker, _Component);
 35779   Object(inherits["a" /* default */])(DateTimePicker, _Component);
       
 35780 
       
 35781   var _super = date_time_createSuper(DateTimePicker);
 30728 
 35782 
 30729   function DateTimePicker() {
 35783   function DateTimePicker() {
 30730     var _this;
 35784     var _this;
 30731 
 35785 
 30732     Object(classCallCheck["a" /* default */])(this, DateTimePicker);
 35786     Object(classCallCheck["a" /* default */])(this, DateTimePicker);
 30733 
 35787 
 30734     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(DateTimePicker).apply(this, arguments));
 35788     _this = _super.apply(this, arguments);
 30735     _this.state = {
 35789     _this.state = {
 30736       calendarHelpIsVisible: false
 35790       calendarHelpIsVisible: false
 30737     };
 35791     };
 30738     _this.onClickDescriptionToggle = _this.onClickDescriptionToggle.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 35792     _this.onClickDescriptionToggle = _this.onClickDescriptionToggle.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30739     return _this;
 35793     return _this;
 30740   }
 35794   }
 30741 
 35795 
 30742   Object(createClass["a" /* default */])(DateTimePicker, [{
 35796   Object(createClass["a" /* default */])(DateTimePicker, [{
 30743     key: "onClickDescriptionToggle",
 35797     key: "onClickDescriptionToggle",
 30750     key: "render",
 35804     key: "render",
 30751     value: function render() {
 35805     value: function render() {
 30752       var _this$props = this.props,
 35806       var _this$props = this.props,
 30753           currentDate = _this$props.currentDate,
 35807           currentDate = _this$props.currentDate,
 30754           is12Hour = _this$props.is12Hour,
 35808           is12Hour = _this$props.is12Hour,
       
 35809           isInvalidDate = _this$props.isInvalidDate,
 30755           onChange = _this$props.onChange;
 35810           onChange = _this$props.onChange;
 30756       return Object(external_this_wp_element_["createElement"])("div", {
 35811       return Object(external_this_wp_element_["createElement"])("div", {
 30757         className: "components-datetime"
 35812         className: "components-datetime"
 30758       }, !this.state.calendarHelpIsVisible && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(time, {
 35813       }, !this.state.calendarHelpIsVisible && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(time, {
 30759         currentTime: currentDate,
 35814         currentTime: currentDate,
 30760         onChange: onChange,
 35815         onChange: onChange,
 30761         is12Hour: is12Hour
 35816         is12Hour: is12Hour
 30762       }), Object(external_this_wp_element_["createElement"])(date_time_date, {
 35817       }), Object(external_this_wp_element_["createElement"])(date_time_date, {
 30763         currentDate: currentDate,
 35818         currentDate: currentDate,
 30764         onChange: onChange
 35819         onChange: onChange,
       
 35820         isInvalidDate: isInvalidDate
 30765       })), this.state.calendarHelpIsVisible && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("div", {
 35821       })), this.state.calendarHelpIsVisible && Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])("div", {
 30766         className: "components-datetime__calendar-help"
 35822         className: "components-datetime__calendar-help"
 30767       }, Object(external_this_wp_element_["createElement"])("h4", null, Object(external_this_wp_i18n_["__"])('Click to Select')), Object(external_this_wp_element_["createElement"])("ul", null, Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_i18n_["__"])('Click the right or left arrows to select other months in the past or the future.')), Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_i18n_["__"])('Click the desired day to select it.'))), Object(external_this_wp_element_["createElement"])("h4", null, Object(external_this_wp_i18n_["__"])('Navigating with a keyboard')), Object(external_this_wp_element_["createElement"])("ul", null, Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_element_["createElement"])("abbr", {
 35823       }, Object(external_this_wp_element_["createElement"])("h4", null, Object(external_this_wp_i18n_["__"])('Click to Select')), Object(external_this_wp_element_["createElement"])("ul", null, Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_i18n_["__"])('Click the right or left arrows to select other months in the past or the future.')), Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_i18n_["__"])('Click the desired day to select it.'))), Object(external_this_wp_element_["createElement"])("h4", null, Object(external_this_wp_i18n_["__"])('Navigating with a keyboard')), Object(external_this_wp_element_["createElement"])("ul", null, Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_element_["createElement"])("abbr", {
 30768         "aria-label": Object(external_this_wp_i18n_["_x"])('Enter', 'keyboard button')
 35824         "aria-label": Object(external_this_wp_i18n_["_x"])('Enter', 'keyboard button')
 30769       }, "\u21B5"), ' '
 35825       }, "\u21B5"), ' '
 30782       /* JSX removes whitespace, but a space is required for screen readers. */
 35838       /* JSX removes whitespace, but a space is required for screen readers. */
 30783       , Object(external_this_wp_i18n_["__"])('Move backward (PgUp) or forward (PgDn) by one month.')), Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_element_["createElement"])("abbr", {
 35839       , Object(external_this_wp_i18n_["__"])('Move backward (PgUp) or forward (PgDn) by one month.')), Object(external_this_wp_element_["createElement"])("li", null, Object(external_this_wp_element_["createElement"])("abbr", {
 30784         "aria-label": Object(external_this_wp_i18n_["__"])('Home and End')
 35840         "aria-label": Object(external_this_wp_i18n_["__"])('Home and End')
 30785       }, Object(external_this_wp_i18n_["__"])('Home/End')), ' '
 35841       }, Object(external_this_wp_i18n_["__"])('Home/End')), ' '
 30786       /* JSX removes whitespace, but a space is required for screen readers. */
 35842       /* JSX removes whitespace, but a space is required for screen readers. */
 30787       , Object(external_this_wp_i18n_["__"])('Go to the first (home) or last (end) day of a week.'))), Object(external_this_wp_element_["createElement"])(build_module_button, {
 35843       , Object(external_this_wp_i18n_["__"])('Go to the first (home) or last (end) day of a week.'))))), Object(external_this_wp_element_["createElement"])("div", {
 30788         isSmall: true,
 35844         className: "components-datetime__buttons"
 30789         onClick: this.onClickDescriptionToggle
 35845       }, !this.state.calendarHelpIsVisible && currentDate && Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 30790       }, Object(external_this_wp_i18n_["__"])('Close')))), !this.state.calendarHelpIsVisible && Object(external_this_wp_element_["createElement"])(build_module_button, {
 35846         className: "components-datetime__date-reset-button",
 30791         className: "components-datetime__date-help-button",
 35847         isLink: true,
       
 35848         onClick: function onClick() {
       
 35849           return onChange(null);
       
 35850         }
       
 35851       }, Object(external_this_wp_i18n_["__"])('Reset')), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 35852         className: "components-datetime__date-help-toggle",
 30792         isLink: true,
 35853         isLink: true,
 30793         onClick: this.onClickDescriptionToggle
 35854         onClick: this.onClickDescriptionToggle
 30794       }, Object(external_this_wp_i18n_["__"])('Calendar Help')));
 35855       }, this.state.calendarHelpIsVisible ? Object(external_this_wp_i18n_["__"])('Close') : Object(external_this_wp_i18n_["__"])('Calendar Help'))));
 30795     }
 35856     }
 30796   }]);
 35857   }]);
 30797 
 35858 
 30798   return DateTimePicker;
 35859   return DateTimePicker;
 30799 }(external_this_wp_element_["Component"]);
 35860 }(external_this_wp_element_["Component"]);
 30800 
 35861 
       
 35862 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/icon/index.js
       
 35863 var components_build_module_icon = __webpack_require__(88);
       
 35864 
       
 35865 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/select-control/index.js
       
 35866 
       
 35867 
       
 35868 
       
 35869 
       
 35870 
       
 35871 /**
       
 35872  * External dependencies
       
 35873  */
       
 35874 
       
 35875 /**
       
 35876  * WordPress dependencies
       
 35877  */
       
 35878 
       
 35879 
       
 35880 /**
       
 35881  * Internal dependencies
       
 35882  */
       
 35883 
       
 35884 
       
 35885 function SelectControl(_ref) {
       
 35886   var help = _ref.help,
       
 35887       label = _ref.label,
       
 35888       _ref$multiple = _ref.multiple,
       
 35889       multiple = _ref$multiple === void 0 ? false : _ref$multiple,
       
 35890       onChange = _ref.onChange,
       
 35891       _ref$options = _ref.options,
       
 35892       options = _ref$options === void 0 ? [] : _ref$options,
       
 35893       className = _ref.className,
       
 35894       hideLabelFromVision = _ref.hideLabelFromVision,
       
 35895       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["help", "label", "multiple", "onChange", "options", "className", "hideLabelFromVision"]);
       
 35896 
       
 35897   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(SelectControl);
       
 35898   var id = "inspector-select-control-".concat(instanceId);
       
 35899 
       
 35900   var onChangeValue = function onChangeValue(event) {
       
 35901     if (multiple) {
       
 35902       var selectedOptions = Object(toConsumableArray["a" /* default */])(event.target.options).filter(function (_ref2) {
       
 35903         var selected = _ref2.selected;
       
 35904         return selected;
       
 35905       });
       
 35906 
       
 35907       var newValues = selectedOptions.map(function (_ref3) {
       
 35908         var value = _ref3.value;
       
 35909         return value;
       
 35910       });
       
 35911       onChange(newValues);
       
 35912       return;
       
 35913     }
       
 35914 
       
 35915     onChange(event.target.value);
       
 35916   }; // Disable reason: A select with an onchange throws a warning
       
 35917 
       
 35918   /* eslint-disable jsx-a11y/no-onchange */
       
 35919 
       
 35920 
       
 35921   return !Object(external_this_lodash_["isEmpty"])(options) && Object(external_this_wp_element_["createElement"])(base_control, {
       
 35922     label: label,
       
 35923     hideLabelFromVision: hideLabelFromVision,
       
 35924     id: id,
       
 35925     help: help,
       
 35926     className: className
       
 35927   }, Object(external_this_wp_element_["createElement"])("select", Object(esm_extends["a" /* default */])({
       
 35928     id: id,
       
 35929     className: "components-select-control__input",
       
 35930     onChange: onChangeValue,
       
 35931     "aria-describedby": !!help ? "".concat(id, "__help") : undefined,
       
 35932     multiple: multiple
       
 35933   }, props), options.map(function (option, index) {
       
 35934     return Object(external_this_wp_element_["createElement"])("option", {
       
 35935       key: "".concat(option.label, "-").concat(option.value, "-").concat(index),
       
 35936       value: option.value,
       
 35937       disabled: option.disabled
       
 35938     }, option.label);
       
 35939   })));
       
 35940   /* eslint-enable jsx-a11y/no-onchange */
       
 35941 }
       
 35942 
       
 35943 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dimension-control/sizes.js
       
 35944 /**
       
 35945  * Sizes
       
 35946  *
       
 35947  * defines the sizes used in dimension controls
       
 35948  * all hardcoded `size` values are based on the value of
       
 35949  * the Sass variable `$block-padding` from
       
 35950  * `packages/block-editor/src/components/dimension-control/sizes.js`.
       
 35951  */
       
 35952 
       
 35953 /**
       
 35954  * WordPress dependencies
       
 35955  */
       
 35956 
       
 35957 /**
       
 35958  * Finds the correct size object from the provided sizes
       
 35959  * table by size slug (eg: `medium`)
       
 35960  *
       
 35961  * @param  {Array}  sizes containing objects for each size definition
       
 35962  * @param  {string} slug  a string representation of the size (eg: `medium`)
       
 35963  * @return {Object}       the matching size definition
       
 35964  */
       
 35965 
       
 35966 var findSizeBySlug = function findSizeBySlug(sizes, slug) {
       
 35967   return sizes.find(function (size) {
       
 35968     return slug === size.slug;
       
 35969   });
       
 35970 };
       
 35971 /* harmony default export */ var dimension_control_sizes = ([{
       
 35972   name: Object(external_this_wp_i18n_["__"])('None'),
       
 35973   slug: 'none'
       
 35974 }, {
       
 35975   name: Object(external_this_wp_i18n_["__"])('Small'),
       
 35976   slug: 'small'
       
 35977 }, {
       
 35978   name: Object(external_this_wp_i18n_["__"])('Medium'),
       
 35979   slug: 'medium'
       
 35980 }, {
       
 35981   name: Object(external_this_wp_i18n_["__"])('Large'),
       
 35982   slug: 'large'
       
 35983 }, {
       
 35984   name: Object(external_this_wp_i18n_["__"])('Extra Large'),
       
 35985   slug: 'xlarge'
       
 35986 }]);
       
 35987 
       
 35988 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dimension-control/index.js
       
 35989 
       
 35990 
       
 35991 /**
       
 35992  * External dependencies
       
 35993  */
       
 35994 
       
 35995 
       
 35996 /**
       
 35997  * WordPress dependencies
       
 35998  */
       
 35999 
       
 36000 /**
       
 36001  * Internal dependencies
       
 36002  */
       
 36003 
       
 36004 
       
 36005 
       
 36006 
       
 36007 /**
       
 36008  * Internal dependencies
       
 36009  */
       
 36010 
       
 36011 
       
 36012 function DimensionControl(props) {
       
 36013   var label = props.label,
       
 36014       value = props.value,
       
 36015       _props$sizes = props.sizes,
       
 36016       sizes = _props$sizes === void 0 ? dimension_control_sizes : _props$sizes,
       
 36017       icon = props.icon,
       
 36018       onChange = props.onChange,
       
 36019       _props$className = props.className,
       
 36020       className = _props$className === void 0 ? '' : _props$className;
       
 36021 
       
 36022   var onChangeSpacingSize = function onChangeSpacingSize(val) {
       
 36023     var theSize = findSizeBySlug(sizes, val);
       
 36024 
       
 36025     if (!theSize || value === theSize.slug) {
       
 36026       onChange(undefined);
       
 36027     } else if (Object(external_this_lodash_["isFunction"])(onChange)) {
       
 36028       onChange(theSize.slug);
       
 36029     }
       
 36030   };
       
 36031 
       
 36032   var formatSizesAsOptions = function formatSizesAsOptions(theSizes) {
       
 36033     var options = theSizes.map(function (_ref) {
       
 36034       var name = _ref.name,
       
 36035           slug = _ref.slug;
       
 36036       return {
       
 36037         label: name,
       
 36038         value: slug
       
 36039       };
       
 36040     });
       
 36041     return [{
       
 36042       label: Object(external_this_wp_i18n_["__"])('Default'),
       
 36043       value: ''
       
 36044     }].concat(options);
       
 36045   };
       
 36046 
       
 36047   var selectLabel = Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, icon && Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
       
 36048     icon: icon
       
 36049   }), label);
       
 36050   return Object(external_this_wp_element_["createElement"])(SelectControl, {
       
 36051     className: classnames_default()(className, 'block-editor-dimension-control'),
       
 36052     label: selectLabel,
       
 36053     hideLabelFromVision: false,
       
 36054     value: value,
       
 36055     onChange: onChangeSpacingSize,
       
 36056     options: formatSizesAsOptions(sizes)
       
 36057   });
       
 36058 }
       
 36059 /* harmony default export */ var dimension_control = (DimensionControl);
       
 36060 
       
 36061 // EXTERNAL MODULE: external {"this":["wp","dom"]}
       
 36062 var external_this_wp_dom_ = __webpack_require__(30);
       
 36063 
 30801 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/disabled/index.js
 36064 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/disabled/index.js
 30802 
 36065 
 30803 
 36066 
 30804 
 36067 
 30805 
 36068 
 30807 
 36070 
 30808 
 36071 
 30809 
 36072 
 30810 
 36073 
 30811 
 36074 
       
 36075 function disabled_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (disabled_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 36076 
       
 36077 function disabled_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 36078 
 30812 /**
 36079 /**
 30813  * External dependencies
 36080  * External dependencies
 30814  */
 36081  */
 30815 
 36082 
 30816 
 36083 
 30819  */
 36086  */
 30820 
 36087 
 30821 
 36088 
 30822 
 36089 
 30823 
 36090 
 30824 var disabled_createContext = Object(external_this_wp_element_["createContext"])(false),
 36091 var _createContext = Object(external_this_wp_element_["createContext"])(false),
 30825     disabled_Consumer = disabled_createContext.Consumer,
 36092     Consumer = _createContext.Consumer,
 30826     disabled_Provider = disabled_createContext.Provider;
 36093     disabled_Provider = _createContext.Provider;
 30827 /**
 36094 /**
 30828  * Names of control nodes which qualify for disabled behavior.
 36095  * Names of control nodes which qualify for disabled behavior.
 30829  *
 36096  *
 30830  * See WHATWG HTML Standard: 4.10.18.5: "Enabling and disabling form controls: the disabled attribute".
 36097  * See WHATWG HTML Standard: 4.10.18.5: "Enabling and disabling form controls: the disabled attribute".
 30831  *
 36098  *
 30832  * @link https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#enabling-and-disabling-form-controls:-the-disabled-attribute
 36099  * @see https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#enabling-and-disabling-form-controls:-the-disabled-attribute
 30833  *
 36100  *
 30834  * @type {string[]}
 36101  * @type {string[]}
 30835  */
 36102  */
 30836 
 36103 
 30837 
 36104 
 30838 var DISABLED_ELIGIBLE_NODE_NAMES = ['BUTTON', 'FIELDSET', 'INPUT', 'OPTGROUP', 'OPTION', 'SELECT', 'TEXTAREA'];
 36105 var DISABLED_ELIGIBLE_NODE_NAMES = ['BUTTON', 'FIELDSET', 'INPUT', 'OPTGROUP', 'OPTION', 'SELECT', 'TEXTAREA'];
 30839 
 36106 
 30840 var disabled_Disabled =
 36107 var disabled_Disabled = /*#__PURE__*/function (_Component) {
 30841 /*#__PURE__*/
       
 30842 function (_Component) {
       
 30843   Object(inherits["a" /* default */])(Disabled, _Component);
 36108   Object(inherits["a" /* default */])(Disabled, _Component);
       
 36109 
       
 36110   var _super = disabled_createSuper(Disabled);
 30844 
 36111 
 30845   function Disabled() {
 36112   function Disabled() {
 30846     var _this;
 36113     var _this;
 30847 
 36114 
 30848     Object(classCallCheck["a" /* default */])(this, Disabled);
 36115     Object(classCallCheck["a" /* default */])(this, Disabled);
 30849 
 36116 
 30850     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Disabled).apply(this, arguments));
 36117     _this = _super.apply(this, arguments);
 30851     _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36118     _this.bindNode = _this.bindNode.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30852     _this.disable = _this.disable.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this))); // Debounce re-disable since disabling process itself will incur
 36119     _this.disable = _this.disable.bind(Object(assertThisInitialized["a" /* default */])(_this)); // Debounce re-disable since disabling process itself will incur
 30853     // additional mutations which should be ignored.
 36120     // additional mutations which should be ignored.
 30854 
 36121 
 30855     _this.debouncedDisable = Object(external_lodash_["debounce"])(_this.disable, {
 36122     _this.debouncedDisable = Object(external_this_lodash_["debounce"])(_this.disable, {
 30856       leading: true
 36123       leading: true
 30857     });
 36124     });
 30858     return _this;
 36125     return _this;
 30859   }
 36126   }
 30860 
 36127 
 30882     }
 36149     }
 30883   }, {
 36150   }, {
 30884     key: "disable",
 36151     key: "disable",
 30885     value: function disable() {
 36152     value: function disable() {
 30886       external_this_wp_dom_["focus"].focusable.find(this.node).forEach(function (focusable) {
 36153       external_this_wp_dom_["focus"].focusable.find(this.node).forEach(function (focusable) {
 30887         if (Object(external_lodash_["includes"])(DISABLED_ELIGIBLE_NODE_NAMES, focusable.nodeName)) {
 36154         if (Object(external_this_lodash_["includes"])(DISABLED_ELIGIBLE_NODE_NAMES, focusable.nodeName)) {
 30888           focusable.setAttribute('disabled', '');
 36155           focusable.setAttribute('disabled', '');
 30889         }
 36156         }
 30890 
 36157 
 30891         if (focusable.hasAttribute('tabindex')) {
 36158         if (focusable.hasAttribute('tabindex')) {
 30892           focusable.removeAttribute('tabindex');
 36159           focusable.removeAttribute('tabindex');
 30914   }]);
 36181   }]);
 30915 
 36182 
 30916   return Disabled;
 36183   return Disabled;
 30917 }(external_this_wp_element_["Component"]);
 36184 }(external_this_wp_element_["Component"]);
 30918 
 36185 
 30919 disabled_Disabled.Consumer = disabled_Consumer;
 36186 disabled_Disabled.Consumer = Consumer;
 30920 /* harmony default export */ var build_module_disabled = (disabled_Disabled);
 36187 /* harmony default export */ var build_module_disabled = (disabled_Disabled);
 30921 
 36188 
 30922 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/draggable/index.js
 36189 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/draggable/index.js
 30923 
 36190 
 30924 
 36191 
 30925 
 36192 
 30926 
 36193 
 30927 
 36194 
 30928 
 36195 
 30929 
 36196 
       
 36197 
       
 36198 function draggable_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (draggable_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 36199 
       
 36200 function draggable_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 30930 
 36201 
 30931 /**
 36202 /**
 30932  * External dependencies
 36203  * External dependencies
 30933  */
 36204  */
 30934 
 36205 
 30939 
 36210 
 30940 
 36211 
 30941 var dragImageClass = 'components-draggable__invisible-drag-image';
 36212 var dragImageClass = 'components-draggable__invisible-drag-image';
 30942 var cloneWrapperClass = 'components-draggable__clone';
 36213 var cloneWrapperClass = 'components-draggable__clone';
 30943 var cloneHeightTransformationBreakpoint = 700;
 36214 var cloneHeightTransformationBreakpoint = 700;
 30944 var clonePadding = 20;
 36215 var clonePadding = 0;
 30945 
 36216 
 30946 var isChromeUA = function isChromeUA() {
 36217 var draggable_Draggable = /*#__PURE__*/function (_Component) {
 30947   return /Chrome/i.test(window.navigator.userAgent);
       
 30948 };
       
 30949 
       
 30950 var draggable_documentHasIframes = function documentHasIframes() {
       
 30951   return Object(toConsumableArray["a" /* default */])(document.getElementById('editor').querySelectorAll('iframe')).length > 0;
       
 30952 };
       
 30953 
       
 30954 var draggable_Draggable =
       
 30955 /*#__PURE__*/
       
 30956 function (_Component) {
       
 30957   Object(inherits["a" /* default */])(Draggable, _Component);
 36218   Object(inherits["a" /* default */])(Draggable, _Component);
       
 36219 
       
 36220   var _super = draggable_createSuper(Draggable);
 30958 
 36221 
 30959   function Draggable() {
 36222   function Draggable() {
 30960     var _this;
 36223     var _this;
 30961 
 36224 
 30962     Object(classCallCheck["a" /* default */])(this, Draggable);
 36225     Object(classCallCheck["a" /* default */])(this, Draggable);
 30963 
 36226 
 30964     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Draggable).apply(this, arguments));
 36227     _this = _super.apply(this, arguments);
 30965     _this.onDragStart = _this.onDragStart.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36228     _this.onDragStart = _this.onDragStart.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30966     _this.onDragOver = _this.onDragOver.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36229     _this.onDragOver = _this.onDragOver.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30967     _this.onDrop = _this.onDrop.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36230     _this.onDragEnd = _this.onDragEnd.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30968     _this.onDragEnd = _this.onDragEnd.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36231     _this.resetDragState = _this.resetDragState.bind(Object(assertThisInitialized["a" /* default */])(_this));
 30969     _this.resetDragState = _this.resetDragState.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36232     _this.dragComponentRef = Object(external_this_wp_element_["createRef"])();
 30970     _this.isChromeAndHasIframes = false;
       
 30971     return _this;
 36233     return _this;
 30972   }
 36234   }
 30973 
 36235 
 30974   Object(createClass["a" /* default */])(Draggable, [{
 36236   Object(createClass["a" /* default */])(Draggable, [{
 30975     key: "componentWillUnmount",
 36237     key: "componentWillUnmount",
 30976     value: function componentWillUnmount() {
 36238     value: function componentWillUnmount() {
 30977       this.resetDragState();
 36239       this.resetDragState();
 30978     }
 36240     }
 30979     /**
 36241     /**
 30980      * Removes the element clone, resets cursor, and removes drag listener.
 36242      * Removes the element clone, resets cursor, and removes drag listener.
 30981      * @param  {Object} event     The non-custom DragEvent.
 36243      *
       
 36244      * @param  {Object} event The non-custom DragEvent.
 30982      */
 36245      */
 30983 
 36246 
 30984   }, {
 36247   }, {
 30985     key: "onDragEnd",
 36248     key: "onDragEnd",
 30986     value: function onDragEnd(event) {
 36249     value: function onDragEnd(event) {
 30987       var _this$props$onDragEnd = this.props.onDragEnd,
 36250       var _this$props$onDragEnd = this.props.onDragEnd,
 30988           onDragEnd = _this$props$onDragEnd === void 0 ? external_lodash_["noop"] : _this$props$onDragEnd;
 36251           onDragEnd = _this$props$onDragEnd === void 0 ? external_this_lodash_["noop"] : _this$props$onDragEnd;
 30989 
 36252       event.preventDefault();
 30990       if (event) {
 36253       this.resetDragState(); // Allow the Synthetic Event to be accessed from asynchronous code.
 30991         event.preventDefault();
 36254       // https://reactjs.org/docs/events.html#event-pooling
 30992       }
 36255 
 30993 
 36256       event.persist();
 30994       this.resetDragState();
 36257       this.props.setTimeout(onDragEnd.bind(this, event));
 30995       this.props.setTimeout(onDragEnd);
 36258     }
 30996     }
 36259     /**
 30997     /*
       
 30998      * Updates positioning of element clone based on mouse movement during dragging.
 36260      * Updates positioning of element clone based on mouse movement during dragging.
 30999      * @param  {Object} event     The non-custom DragEvent.
 36261      *
       
 36262      * @param  {Object} event The non-custom DragEvent.
 31000      */
 36263      */
 31001 
 36264 
 31002   }, {
 36265   }, {
 31003     key: "onDragOver",
 36266     key: "onDragOver",
 31004     value: function onDragOver(event) {
 36267     value: function onDragOver(event) {
 31005       this.cloneWrapper.style.top = "".concat(parseInt(this.cloneWrapper.style.top, 10) + event.clientY - this.cursorTop, "px");
 36268       this.cloneWrapper.style.top = "".concat(parseInt(this.cloneWrapper.style.top, 10) + event.clientY - this.cursorTop, "px");
 31006       this.cloneWrapper.style.left = "".concat(parseInt(this.cloneWrapper.style.left, 10) + event.clientX - this.cursorLeft, "px"); // Update cursor coordinates.
 36269       this.cloneWrapper.style.left = "".concat(parseInt(this.cloneWrapper.style.left, 10) + event.clientX - this.cursorLeft, "px"); // Update cursor coordinates.
 31007 
 36270 
 31008       this.cursorLeft = event.clientX;
 36271       this.cursorLeft = event.clientX;
 31009       this.cursorTop = event.clientY;
 36272       this.cursorTop = event.clientY;
 31010     }
 36273       var _this$props$onDragOve = this.props.onDragOver,
 31011   }, {
 36274           onDragOver = _this$props$onDragOve === void 0 ? external_this_lodash_["noop"] : _this$props$onDragOve; // The `event` from `onDragOver` is not a SyntheticEvent
 31012     key: "onDrop",
 36275       // and so it doesn't require `event.persist()`.
 31013     value: function onDrop() {
 36276 
 31014       // As per https://html.spec.whatwg.org/multipage/dnd.html#dndevents
 36277       this.props.setTimeout(onDragOver.bind(this, event));
 31015       // the target node for the dragend is the source node that started the drag operation,
       
 31016       // while drop event's target is the current target element.
       
 31017       this.onDragEnd(null);
       
 31018     }
 36278     }
 31019     /**
 36279     /**
 31020      *  - Clones the current element and spawns clone over original element.
 36280      * This method does a couple of things:
 31021      *  - Adds a fake temporary drag image to avoid browser defaults.
 36281      *
 31022      *  - Sets transfer data.
 36282      * - Clones the current element and spawns clone over original element.
 31023      *  - Adds dragover listener.
 36283      * - Adds a fake temporary drag image to avoid browser defaults.
 31024      * @param  {Object} event					The non-custom DragEvent.
 36284      * - Sets transfer data.
 31025      * @param  {string} elementId				The HTML id of the element to be dragged.
 36285      * - Adds dragover listener.
 31026      * @param  {Object} transferData			The data to be set to the event's dataTransfer - to be accessible in any later drop logic.
 36286      *
       
 36287      * @param  {Object} event The non-custom DragEvent.
 31027      */
 36288      */
 31028 
 36289 
 31029   }, {
 36290   }, {
 31030     key: "onDragStart",
 36291     key: "onDragStart",
 31031     value: function onDragStart(event) {
 36292     value: function onDragStart(event) {
 31032       var _this$props = this.props,
 36293       var _this$props = this.props,
       
 36294           cloneClassname = _this$props.cloneClassname,
 31033           elementId = _this$props.elementId,
 36295           elementId = _this$props.elementId,
 31034           transferData = _this$props.transferData,
 36296           transferData = _this$props.transferData,
 31035           _this$props$onDragSta = _this$props.onDragStart,
 36297           _this$props$onDragSta = _this$props.onDragStart,
 31036           onDragStart = _this$props$onDragSta === void 0 ? external_lodash_["noop"] : _this$props$onDragSta;
 36298           onDragStart = _this$props$onDragSta === void 0 ? external_this_lodash_["noop"] : _this$props$onDragSta;
 31037       var element = document.getElementById(elementId);
 36299       var element = document.getElementById(elementId);
 31038 
 36300 
 31039       if (!element) {
 36301       if (!element) {
 31040         event.preventDefault();
 36302         event.preventDefault();
 31041         return;
 36303         return;
 31059 
 36321 
 31060       var elementRect = element.getBoundingClientRect();
 36322       var elementRect = element.getBoundingClientRect();
 31061       var elementWrapper = element.parentNode;
 36323       var elementWrapper = element.parentNode;
 31062       var elementTopOffset = parseInt(elementRect.top, 10);
 36324       var elementTopOffset = parseInt(elementRect.top, 10);
 31063       var elementLeftOffset = parseInt(elementRect.left, 10);
 36325       var elementLeftOffset = parseInt(elementRect.left, 10);
 31064       var clone = element.cloneNode(true);
       
 31065       clone.id = "clone-".concat(elementId);
       
 31066       this.cloneWrapper = document.createElement('div');
 36326       this.cloneWrapper = document.createElement('div');
 31067       this.cloneWrapper.classList.add(cloneWrapperClass);
 36327       this.cloneWrapper.classList.add(cloneWrapperClass);
 31068       this.cloneWrapper.style.width = "".concat(elementRect.width + clonePadding * 2, "px");
 36328 
 31069 
 36329       if (cloneClassname) {
 31070       if (elementRect.height > cloneHeightTransformationBreakpoint) {
 36330         this.cloneWrapper.classList.add(cloneClassname);
 31071         // Scale down clone if original element is larger than 700px.
 36331       }
 31072         this.cloneWrapper.style.transform = 'scale(0.5)';
 36332 
 31073         this.cloneWrapper.style.transformOrigin = 'top left'; // Position clone near the cursor.
 36333       this.cloneWrapper.style.width = "".concat(elementRect.width + clonePadding * 2, "px"); // If a dragComponent is defined, the following logic will clone the
 31074 
 36334       // HTML node and inject it into the cloneWrapper.
 31075         this.cloneWrapper.style.top = "".concat(event.clientY - 100, "px");
 36335 
 31076         this.cloneWrapper.style.left = "".concat(event.clientX, "px");
 36336       if (this.dragComponentRef.current) {
 31077       } else {
       
 31078         // Position clone right over the original element (20px padding).
 36337         // Position clone right over the original element (20px padding).
 31079         this.cloneWrapper.style.top = "".concat(elementTopOffset - clonePadding, "px");
 36338         this.cloneWrapper.style.top = "".concat(elementTopOffset - clonePadding, "px");
 31080         this.cloneWrapper.style.left = "".concat(elementLeftOffset - clonePadding, "px");
 36339         this.cloneWrapper.style.left = "".concat(elementLeftOffset - clonePadding, "px");
 31081       } // Hack: Remove iFrames as it's causing the embeds drag clone to freeze
 36340         var clonedDragComponent = document.createElement('div');
 31082 
 36341         clonedDragComponent.innerHTML = this.dragComponentRef.current.innerHTML;
 31083 
 36342         this.cloneWrapper.appendChild(clonedDragComponent);
 31084       Object(toConsumableArray["a" /* default */])(clone.querySelectorAll('iframe')).forEach(function (child) {
 36343       } else {
 31085         return child.parentNode.removeChild(child);
 36344         var clone = element.cloneNode(true);
 31086       });
 36345         clone.id = "clone-".concat(elementId);
 31087 
 36346 
 31088       this.cloneWrapper.appendChild(clone);
 36347         if (elementRect.height > cloneHeightTransformationBreakpoint) {
       
 36348           // Scale down clone if original element is larger than 700px.
       
 36349           this.cloneWrapper.style.transform = 'scale(0.5)';
       
 36350           this.cloneWrapper.style.transformOrigin = 'top left'; // Position clone near the cursor.
       
 36351 
       
 36352           this.cloneWrapper.style.top = "".concat(event.clientY - 100, "px");
       
 36353           this.cloneWrapper.style.left = "".concat(event.clientX, "px");
       
 36354         } else {
       
 36355           // Position clone right over the original element (20px padding).
       
 36356           this.cloneWrapper.style.top = "".concat(elementTopOffset - clonePadding, "px");
       
 36357           this.cloneWrapper.style.left = "".concat(elementLeftOffset - clonePadding, "px");
       
 36358         } // Hack: Remove iFrames as it's causing the embeds drag clone to freeze
       
 36359 
       
 36360 
       
 36361         Array.from(clone.querySelectorAll('iframe')).forEach(function (child) {
       
 36362           return child.parentNode.removeChild(child);
       
 36363         });
       
 36364         this.cloneWrapper.appendChild(clone);
       
 36365       } // Inject the cloneWrapper into the DOM.
       
 36366 
       
 36367 
 31089       elementWrapper.appendChild(this.cloneWrapper); // Mark the current cursor coordinates.
 36368       elementWrapper.appendChild(this.cloneWrapper); // Mark the current cursor coordinates.
 31090 
 36369 
 31091       this.cursorLeft = event.clientX;
 36370       this.cursorLeft = event.clientX;
 31092       this.cursorTop = event.clientY; // Update cursor to 'grabbing', document wide.
 36371       this.cursorTop = event.clientY; // Update cursor to 'grabbing', document wide.
 31093 
 36372 
 31094       document.body.classList.add('is-dragging-components-draggable');
 36373       document.body.classList.add('is-dragging-components-draggable');
 31095       document.addEventListener('dragover', this.onDragOver); // Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=737691#c8
 36374       document.addEventListener('dragover', this.onDragOver); // Allow the Synthetic Event to be accessed from asynchronous code.
 31096       // dragend event won't be dispatched in the chrome browser
 36375       // https://reactjs.org/docs/events.html#event-pooling
 31097       // when iframes are affected by the drag operation. So, in that case,
 36376 
 31098       // we use the drop event to wrap up the dragging operation.
 36377       event.persist();
 31099       // This way the hack is contained to a specific use case and the external API
 36378       this.props.setTimeout(onDragStart.bind(this, event));
 31100       // still relies mostly on the dragend event.
       
 31101 
       
 31102       if (isChromeUA() && draggable_documentHasIframes()) {
       
 31103         this.isChromeAndHasIframes = true;
       
 31104         document.addEventListener('drop', this.onDrop);
       
 31105       }
       
 31106 
       
 31107       this.props.setTimeout(onDragStart);
       
 31108     }
 36379     }
 31109     /**
 36380     /**
 31110      * Cleans up drag state when drag has completed, or component unmounts
 36381      * Cleans up drag state when drag has completed, or component unmounts
 31111      * while dragging.
 36382      * while dragging.
 31112      */
 36383      */
 31120       if (this.cloneWrapper && this.cloneWrapper.parentNode) {
 36391       if (this.cloneWrapper && this.cloneWrapper.parentNode) {
 31121         this.cloneWrapper.parentNode.removeChild(this.cloneWrapper);
 36392         this.cloneWrapper.parentNode.removeChild(this.cloneWrapper);
 31122         this.cloneWrapper = null;
 36393         this.cloneWrapper = null;
 31123       }
 36394       }
 31124 
 36395 
 31125       if (this.isChromeAndHasIframes) {
 36396       this.cursorLeft = null;
 31126         this.isChromeAndHasIframes = false;
 36397       this.cursorTop = null; // Reset cursor.
 31127         document.removeEventListener('drop', this.onDrop);
       
 31128       } // Reset cursor.
       
 31129 
       
 31130 
 36398 
 31131       document.body.classList.remove('is-dragging-components-draggable');
 36399       document.body.classList.remove('is-dragging-components-draggable');
 31132     }
 36400     }
 31133   }, {
 36401   }, {
 31134     key: "render",
 36402     key: "render",
 31135     value: function render() {
 36403     value: function render() {
 31136       var children = this.props.children;
 36404       var _this$props2 = this.props,
 31137       return children({
 36405           children = _this$props2.children,
       
 36406           dragComponent = _this$props2.__experimentalDragComponent;
       
 36407       return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, children({
 31138         onDraggableStart: this.onDragStart,
 36408         onDraggableStart: this.onDragStart,
 31139         onDraggableEnd: this.onDragEnd
 36409         onDraggableEnd: this.onDragEnd
 31140       });
 36410       }), dragComponent && Object(external_this_wp_element_["createElement"])("div", {
       
 36411         className: "components-draggable-drag-component-root",
       
 36412         style: {
       
 36413           display: 'none'
       
 36414         },
       
 36415         ref: this.dragComponentRef
       
 36416       }, dragComponent));
 31141     }
 36417     }
 31142   }]);
 36418   }]);
 31143 
 36419 
 31144   return Draggable;
 36420   return Draggable;
 31145 }(external_this_wp_element_["Component"]);
 36421 }(external_this_wp_element_["Component"]);
 31146 
 36422 
 31147 /* harmony default export */ var draggable = (Object(external_this_wp_compose_["withSafeTimeout"])(draggable_Draggable));
 36423 /* harmony default export */ var draggable = (Object(external_this_wp_compose_["withSafeTimeout"])(draggable_Draggable));
 31148 
 36424 
       
 36425 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/upload.js
       
 36426 var upload = __webpack_require__(204);
       
 36427 
       
 36428 // EXTERNAL MODULE: external {"this":["wp","isShallowEqual"]}
       
 36429 var external_this_wp_isShallowEqual_ = __webpack_require__(64);
       
 36430 var external_this_wp_isShallowEqual_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_isShallowEqual_);
       
 36431 
 31149 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/drop-zone/provider.js
 36432 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/drop-zone/provider.js
 31150 
 36433 
 31151 
 36434 
 31152 
 36435 
 31153 
 36436 
 31154 
 36437 
 31155 
 36438 
 31156 
 36439 
 31157 
 36440 
 31158 
 36441 
       
 36442 function provider_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (provider_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 36443 
       
 36444 function provider_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 36445 
 31159 /**
 36446 /**
 31160  * External dependencies
 36447  * External dependencies
 31161  */
 36448  */
 31162 
 36449 
 31163 /**
 36450 /**
 31164  * WordPress dependencies
 36451  * WordPress dependencies
 31165  */
 36452  */
 31166 
 36453 
 31167 
 36454 
 31168 
 36455 
 31169 
 36456 var Context = Object(external_this_wp_element_["createContext"])({
 31170 var provider_createContext = Object(external_this_wp_element_["createContext"])({
       
 31171   addDropZone: function addDropZone() {},
 36457   addDropZone: function addDropZone() {},
 31172   removeDropZone: function removeDropZone() {}
 36458   removeDropZone: function removeDropZone() {}
 31173 }),
 36459 });
 31174     provider_Provider = provider_createContext.Provider,
 36460 var provider_Provider = Context.Provider,
 31175     provider_Consumer = provider_createContext.Consumer;
 36461     provider_Consumer = Context.Consumer;
 31176 
 36462 
 31177 var provider_getDragEventType = function getDragEventType(_ref) {
 36463 var provider_getDragEventType = function getDragEventType(_ref) {
 31178   var dataTransfer = _ref.dataTransfer;
 36464   var dataTransfer = _ref.dataTransfer;
 31179 
 36465 
 31180   if (dataTransfer) {
 36466   if (dataTransfer) {
 31181     // Use lodash `includes` here as in the Edge browser `types` is implemented
 36467     // Use lodash `includes` here as in the Edge browser `types` is implemented
 31182     // as a DomStringList, whereas in other browsers it's an array. `includes`
 36468     // as a DomStringList, whereas in other browsers it's an array. `includes`
 31183     // happily works with both types.
 36469     // happily works with both types.
 31184     if (Object(external_lodash_["includes"])(dataTransfer.types, 'Files')) {
 36470     if (Object(external_this_lodash_["includes"])(dataTransfer.types, 'Files')) {
 31185       return 'file';
 36471       return 'file';
 31186     }
 36472     }
 31187 
 36473 
 31188     if (Object(external_lodash_["includes"])(dataTransfer.types, 'text/html')) {
 36474     if (Object(external_this_lodash_["includes"])(dataTransfer.types, 'text/html')) {
 31189       return 'html';
 36475       return 'html';
 31190     }
 36476     }
 31191   }
 36477   }
 31192 
 36478 
 31193   return 'default';
 36479   return 'default';
 31205   }
 36491   }
 31206 
 36492 
 31207   return x >= rect.left && x <= rect.right && y >= rect.top && y <= rect.bottom;
 36493   return x >= rect.left && x <= rect.right && y >= rect.top && y <= rect.bottom;
 31208 };
 36494 };
 31209 
 36495 
 31210 var provider_DropZoneProvider =
 36496 var provider_DropZoneProvider = /*#__PURE__*/function (_Component) {
 31211 /*#__PURE__*/
       
 31212 function (_Component) {
       
 31213   Object(inherits["a" /* default */])(DropZoneProvider, _Component);
 36497   Object(inherits["a" /* default */])(DropZoneProvider, _Component);
       
 36498 
       
 36499   var _super = provider_createSuper(DropZoneProvider);
 31214 
 36500 
 31215   function DropZoneProvider() {
 36501   function DropZoneProvider() {
 31216     var _this;
 36502     var _this;
 31217 
 36503 
 31218     Object(classCallCheck["a" /* default */])(this, DropZoneProvider);
 36504     Object(classCallCheck["a" /* default */])(this, DropZoneProvider);
 31219 
 36505 
 31220     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(DropZoneProvider).apply(this, arguments)); // Event listeners
 36506     _this = _super.apply(this, arguments); // Event listeners
 31221 
 36507 
 31222     _this.onDragOver = _this.onDragOver.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36508     _this.onDragOver = _this.onDragOver.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31223     _this.onDrop = _this.onDrop.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this))); // Context methods so this component can receive data from consumers
 36509     _this.onDrop = _this.onDrop.bind(Object(assertThisInitialized["a" /* default */])(_this)); // Context methods so this component can receive data from consumers
 31224 
 36510 
 31225     _this.addDropZone = _this.addDropZone.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36511     _this.addDropZone = _this.addDropZone.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31226     _this.removeDropZone = _this.removeDropZone.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this))); // Utility methods
 36512     _this.removeDropZone = _this.removeDropZone.bind(Object(assertThisInitialized["a" /* default */])(_this)); // Utility methods
 31227 
 36513 
 31228     _this.resetDragState = _this.resetDragState.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36514     _this.resetDragState = _this.resetDragState.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31229     _this.toggleDraggingOverDocument = Object(external_lodash_["throttle"])(_this.toggleDraggingOverDocument.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this))), 200);
 36515     _this.toggleDraggingOverDocument = Object(external_this_lodash_["throttle"])(_this.toggleDraggingOverDocument.bind(Object(assertThisInitialized["a" /* default */])(_this)), 200);
 31230     _this.dropZones = [];
 36516     _this.dropZones = [];
 31231     _this.dropZoneCallbacks = {
 36517     _this.dropZoneCallbacks = {
 31232       addDropZone: _this.addDropZone,
 36518       addDropZone: _this.addDropZone,
 31233       removeDropZone: _this.removeDropZone
 36519       removeDropZone: _this.removeDropZone
 31234     };
 36520     };
 31235     _this.state = {
 36521     _this.state = {
 31236       hoveredDropZone: -1,
 36522       hoveredDropZone: -1,
 31237       isDraggingOverDocument: false,
 36523       isDraggingOverDocument: false,
 31238       isDraggingOverElement: false,
 36524       position: null
 31239       position: null,
       
 31240       type: null
       
 31241     };
 36525     };
 31242     return _this;
 36526     return _this;
 31243   }
 36527   }
 31244 
 36528 
 31245   Object(createClass["a" /* default */])(DropZoneProvider, [{
 36529   Object(createClass["a" /* default */])(DropZoneProvider, [{
 31260       this.dropZones.push(dropZone);
 36544       this.dropZones.push(dropZone);
 31261     }
 36545     }
 31262   }, {
 36546   }, {
 31263     key: "removeDropZone",
 36547     key: "removeDropZone",
 31264     value: function removeDropZone(dropZone) {
 36548     value: function removeDropZone(dropZone) {
 31265       this.dropZones = Object(external_lodash_["filter"])(this.dropZones, function (dz) {
 36549       this.dropZones = Object(external_this_lodash_["filter"])(this.dropZones, function (dz) {
 31266         return dz !== dropZone;
 36550         return dz !== dropZone;
 31267       });
 36551       });
 31268     }
 36552     }
 31269   }, {
 36553   }, {
 31270     key: "resetDragState",
 36554     key: "resetDragState",
 31280       }
 36564       }
 31281 
 36565 
 31282       this.setState({
 36566       this.setState({
 31283         hoveredDropZone: -1,
 36567         hoveredDropZone: -1,
 31284         isDraggingOverDocument: false,
 36568         isDraggingOverDocument: false,
 31285         isDraggingOverElement: false,
 36569         position: null
 31286         position: null,
       
 31287         type: null
       
 31288       });
 36570       });
 31289       this.dropZones.forEach(function (dropZone) {
 36571       this.dropZones.forEach(function (dropZone) {
 31290         return dropZone.setState({
 36572         return dropZone.setState({
 31291           isDraggingOverDocument: false,
 36573           isDraggingOverDocument: false,
 31292           isDraggingOverElement: false,
 36574           isDraggingOverElement: false,
 31306       // as the `detail` property.
 36588       // as the `detail` property.
 31307       //
 36589       //
 31308       // See: https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events
 36590       // See: https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Creating_and_triggering_events
 31309       var detail = window.CustomEvent && event instanceof window.CustomEvent ? event.detail : event; // Index of hovered dropzone.
 36591       var detail = window.CustomEvent && event instanceof window.CustomEvent ? event.detail : event; // Index of hovered dropzone.
 31310 
 36592 
 31311       var hoveredDropZones = Object(external_lodash_["filter"])(this.dropZones, function (dropZone) {
 36593       var hoveredDropZones = Object(external_this_lodash_["filter"])(this.dropZones, function (dropZone) {
 31312         return isTypeSupportedByDropZone(dragEventType, dropZone) && isWithinElementBounds(dropZone.element, detail.clientX, detail.clientY);
 36594         return isTypeSupportedByDropZone(dragEventType, dropZone) && isWithinElementBounds(dropZone.element.current, detail.clientX, detail.clientY);
 31313       }); // Find the leaf dropzone not containing another dropzone
 36595       }); // Find the leaf dropzone not containing another dropzone
 31314 
 36596 
 31315       var hoveredDropZone = Object(external_lodash_["find"])(hoveredDropZones, function (zone) {
 36597       var hoveredDropZone = Object(external_this_lodash_["find"])(hoveredDropZones, function (zone) {
 31316         return !Object(external_lodash_["some"])(hoveredDropZones, function (subZone) {
 36598         var container = zone.isRelative ? zone.element.current.parentElement : zone.element.current;
 31317           return subZone !== zone && zone.element.parentElement.contains(subZone.element);
 36599         return !Object(external_this_lodash_["some"])(hoveredDropZones, function (subZone) {
       
 36600           return subZone !== zone && container.contains(subZone.element.current);
 31318         });
 36601         });
 31319       });
 36602       });
 31320       var hoveredDropZoneIndex = this.dropZones.indexOf(hoveredDropZone);
 36603       var hoveredDropZoneIndex = this.dropZones.indexOf(hoveredDropZone);
 31321       var position = null;
 36604       var position = null;
 31322 
 36605 
 31323       if (hoveredDropZone) {
 36606       if (hoveredDropZone && hoveredDropZone.withPosition) {
 31324         var rect = hoveredDropZone.element.getBoundingClientRect();
       
 31325         position = {
 36607         position = {
 31326           x: detail.clientX - rect.left < rect.right - detail.clientX ? 'left' : 'right',
 36608           x: detail.clientX,
 31327           y: detail.clientY - rect.top < rect.bottom - detail.clientY ? 'top' : 'bottom'
 36609           y: detail.clientY
 31328         };
 36610         };
 31329       } // Optimisation: Only update the changed dropzones
 36611       } // Optimisation: Only update the changed dropzones
 31330 
 36612 
 31331 
 36613 
 31332       var toUpdate = [];
 36614       var toUpdate = [];
 31339         }
 36621         }
 31340 
 36622 
 31341         if (hoveredDropZone) {
 36623         if (hoveredDropZone) {
 31342           toUpdate.push(hoveredDropZone);
 36624           toUpdate.push(hoveredDropZone);
 31343         }
 36625         }
 31344       } else if (hoveredDropZone && hoveredDropZoneIndex === this.state.hoveredDropZone && !Object(external_lodash_["isEqual"])(position, this.state.position)) {
 36626       } else if (hoveredDropZone && hoveredDropZoneIndex === this.state.hoveredDropZone && !Object(external_this_lodash_["isEqual"])(position, this.state.position)) {
 31345         toUpdate.push(hoveredDropZone);
 36627         toUpdate.push(hoveredDropZone);
 31346       } // Notifying the dropzones
 36628       } // Notifying the dropzones
 31347 
 36629 
 31348 
 36630 
 31349       toUpdate.forEach(function (dropZone) {
 36631       toUpdate.forEach(function (dropZone) {
 31427 
 36709 
 31428 
 36710 
 31429 
 36711 
 31430 
 36712 
 31431 
 36713 
 31432 
       
 31433 
       
 31434 
       
 31435 
       
 31436 
       
 31437 /**
 36714 /**
 31438  * External dependencies
 36715  * External dependencies
 31439  */
 36716  */
 31440 
 36717 
 31441 /**
 36718 /**
 31442  * WordPress dependencies
 36719  * WordPress dependencies
 31443  */
 36720  */
 31444 
 36721 
 31445 
 36722 
 31446 
 36723 
       
 36724 
 31447 /**
 36725 /**
 31448  * Internal dependencies
 36726  * Internal dependencies
 31449  */
 36727  */
 31450 
 36728 
 31451 
 36729 
 31452 
 36730 function useDropZone(_ref) {
       
 36731   var element = _ref.element,
       
 36732       onFilesDrop = _ref.onFilesDrop,
       
 36733       onHTMLDrop = _ref.onHTMLDrop,
       
 36734       onDrop = _ref.onDrop,
       
 36735       isDisabled = _ref.isDisabled,
       
 36736       withPosition = _ref.withPosition,
       
 36737       _ref$__unstableIsRela = _ref.__unstableIsRelative,
       
 36738       __unstableIsRelative = _ref$__unstableIsRela === void 0 ? false : _ref$__unstableIsRela;
       
 36739 
       
 36740   var _useContext = Object(external_this_wp_element_["useContext"])(Context),
       
 36741       addDropZone = _useContext.addDropZone,
       
 36742       removeDropZone = _useContext.removeDropZone;
       
 36743 
       
 36744   var _useState = Object(external_this_wp_element_["useState"])({
       
 36745     isDraggingOverDocument: false,
       
 36746     isDraggingOverElement: false,
       
 36747     type: null
       
 36748   }),
       
 36749       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 36750       state = _useState2[0],
       
 36751       setState = _useState2[1];
       
 36752 
       
 36753   Object(external_this_wp_element_["useEffect"])(function () {
       
 36754     if (!isDisabled) {
       
 36755       var dropZone = {
       
 36756         element: element,
       
 36757         onDrop: onDrop,
       
 36758         onFilesDrop: onFilesDrop,
       
 36759         onHTMLDrop: onHTMLDrop,
       
 36760         setState: setState,
       
 36761         withPosition: withPosition,
       
 36762         isRelative: __unstableIsRelative
       
 36763       };
       
 36764       addDropZone(dropZone);
       
 36765       return function () {
       
 36766         removeDropZone(dropZone);
       
 36767       };
       
 36768     }
       
 36769   }, [isDisabled, onDrop, onFilesDrop, onHTMLDrop, withPosition]);
       
 36770   return state;
       
 36771 }
 31453 
 36772 
 31454 var drop_zone_DropZone = function DropZone(props) {
 36773 var drop_zone_DropZone = function DropZone(props) {
 31455   return Object(external_this_wp_element_["createElement"])(provider_Consumer, null, function (_ref) {
 36774   return Object(external_this_wp_element_["createElement"])(provider_Consumer, null, function (_ref2) {
 31456     var addDropZone = _ref.addDropZone,
 36775     var addDropZone = _ref2.addDropZone,
 31457         removeDropZone = _ref.removeDropZone;
 36776         removeDropZone = _ref2.removeDropZone;
 31458     return Object(external_this_wp_element_["createElement"])(drop_zone_DropZoneComponent, Object(esm_extends["a" /* default */])({
 36777     return Object(external_this_wp_element_["createElement"])(DropZoneComponent, Object(esm_extends["a" /* default */])({
 31459       addDropZone: addDropZone,
 36778       addDropZone: addDropZone,
 31460       removeDropZone: removeDropZone
 36779       removeDropZone: removeDropZone
 31461     }, props));
 36780     }, props));
 31462   });
 36781   });
 31463 };
 36782 };
 31464 
 36783 
 31465 var drop_zone_DropZoneComponent =
 36784 function DropZoneComponent(_ref3) {
 31466 /*#__PURE__*/
 36785   var className = _ref3.className,
 31467 function (_Component) {
 36786       label = _ref3.label,
 31468   Object(inherits["a" /* default */])(DropZoneComponent, _Component);
 36787       onFilesDrop = _ref3.onFilesDrop,
 31469 
 36788       onHTMLDrop = _ref3.onHTMLDrop,
 31470   function DropZoneComponent() {
 36789       onDrop = _ref3.onDrop;
 31471     var _this;
 36790   var element = Object(external_this_wp_element_["useRef"])();
 31472 
 36791 
 31473     Object(classCallCheck["a" /* default */])(this, DropZoneComponent);
 36792   var _useDropZone = useDropZone({
 31474 
 36793     element: element,
 31475     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(DropZoneComponent).apply(this, arguments));
 36794     onFilesDrop: onFilesDrop,
 31476     _this.dropZoneElement = Object(external_this_wp_element_["createRef"])();
 36795     onHTMLDrop: onHTMLDrop,
 31477     _this.dropZone = {
 36796     onDrop: onDrop,
 31478       element: null,
 36797     __unstableIsRelative: true
 31479       onDrop: _this.props.onDrop,
 36798   }),
 31480       onFilesDrop: _this.props.onFilesDrop,
 36799       isDraggingOverDocument = _useDropZone.isDraggingOverDocument,
 31481       onHTMLDrop: _this.props.onHTMLDrop,
 36800       isDraggingOverElement = _useDropZone.isDraggingOverElement,
 31482       setState: _this.setState.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)))
 36801       type = _useDropZone.type;
 31483     };
 36802 
 31484     _this.state = {
 36803   var children;
 31485       isDraggingOverDocument: false,
 36804 
 31486       isDraggingOverElement: false,
 36805   if (isDraggingOverElement) {
 31487       position: null,
 36806     children = Object(external_this_wp_element_["createElement"])("div", {
 31488       type: null
 36807       className: "components-drop-zone__content"
 31489     };
 36808     }, Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
 31490     return _this;
 36809       icon: upload["a" /* default */],
 31491   }
 36810       className: "components-drop-zone__content-icon"
 31492 
 36811     }), Object(external_this_wp_element_["createElement"])("span", {
 31493   Object(createClass["a" /* default */])(DropZoneComponent, [{
 36812       className: "components-drop-zone__content-text"
 31494     key: "componentDidMount",
 36813     }, label ? label : Object(external_this_wp_i18n_["__"])('Drop files to upload')));
 31495     value: function componentDidMount() {
 36814   }
 31496       // Set element after the component has a node assigned in the DOM
 36815 
 31497       this.dropZone.element = this.dropZoneElement.current;
 36816   var classes = classnames_default()('components-drop-zone', className, Object(defineProperty["a" /* default */])({
 31498       this.props.addDropZone(this.dropZone);
 36817     'is-active': (isDraggingOverDocument || isDraggingOverElement) && (type === 'file' && onFilesDrop || type === 'html' && onHTMLDrop || type === 'default' && onDrop),
 31499     }
 36818     'is-dragging-over-document': isDraggingOverDocument,
 31500   }, {
 36819     'is-dragging-over-element': isDraggingOverElement
 31501     key: "componentWillUnmount",
 36820   }, "is-dragging-".concat(type), !!type));
 31502     value: function componentWillUnmount() {
 36821   return Object(external_this_wp_element_["createElement"])("div", {
 31503       this.props.removeDropZone(this.dropZone);
 36822     ref: element,
 31504     }
 36823     className: classes
 31505   }, {
 36824   }, children);
 31506     key: "render",
 36825 }
 31507     value: function render() {
       
 31508       var _this$props = this.props,
       
 31509           className = _this$props.className,
       
 31510           label = _this$props.label;
       
 31511       var _this$state = this.state,
       
 31512           isDraggingOverDocument = _this$state.isDraggingOverDocument,
       
 31513           isDraggingOverElement = _this$state.isDraggingOverElement,
       
 31514           position = _this$state.position,
       
 31515           type = _this$state.type;
       
 31516       var classes = classnames_default()('components-drop-zone', className, Object(defineProperty["a" /* default */])({
       
 31517         'is-active': isDraggingOverDocument || isDraggingOverElement,
       
 31518         'is-dragging-over-document': isDraggingOverDocument,
       
 31519         'is-dragging-over-element': isDraggingOverElement,
       
 31520         'is-close-to-top': position && position.y === 'top',
       
 31521         'is-close-to-bottom': position && position.y === 'bottom',
       
 31522         'is-close-to-left': position && position.x === 'left',
       
 31523         'is-close-to-right': position && position.x === 'right'
       
 31524       }, "is-dragging-".concat(type), !!type));
       
 31525       var children;
       
 31526 
       
 31527       if (isDraggingOverElement) {
       
 31528         children = Object(external_this_wp_element_["createElement"])("div", {
       
 31529           className: "components-drop-zone__content"
       
 31530         }, Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
       
 31531           icon: "upload",
       
 31532           size: "40",
       
 31533           className: "components-drop-zone__content-icon"
       
 31534         }), Object(external_this_wp_element_["createElement"])("span", {
       
 31535           className: "components-drop-zone__content-text"
       
 31536         }, label ? label : Object(external_this_wp_i18n_["__"])('Drop files to upload')));
       
 31537       }
       
 31538 
       
 31539       return Object(external_this_wp_element_["createElement"])("div", {
       
 31540         ref: this.dropZoneElement,
       
 31541         className: classes
       
 31542       }, children);
       
 31543     }
       
 31544   }]);
       
 31545 
       
 31546   return DropZoneComponent;
       
 31547 }(external_this_wp_element_["Component"]);
       
 31548 
 36826 
 31549 /* harmony default export */ var drop_zone = (drop_zone_DropZone);
 36827 /* harmony default export */ var drop_zone = (drop_zone_DropZone);
 31550 
 36828 
       
 36829 // EXTERNAL MODULE: external {"this":["wp","deprecated"]}
       
 36830 var external_this_wp_deprecated_ = __webpack_require__(37);
       
 36831 var external_this_wp_deprecated_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_deprecated_);
       
 36832 
 31551 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigable-container/container.js
 36833 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigable-container/container.js
 31552 
 36834 
 31553 
 36835 
 31554 
 36836 
 31555 
 36837 
 31557 
 36839 
 31558 
 36840 
 31559 
 36841 
 31560 
 36842 
 31561 
 36843 
       
 36844 function container_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (container_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 36845 
       
 36846 function container_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 36847 
 31562 /**
 36848 /**
 31563  * External dependencies
 36849  * External dependencies
 31564  */
 36850  */
 31565 
 36851 
 31566 /**
 36852 /**
 31567  * WordPress dependencies
 36853  * WordPress dependencies
 31568  */
 36854  */
 31569 
 36855 
 31570 
 36856 
 31571 
 36857 
       
 36858 var MENU_ITEM_ROLES = ['menuitem', 'menuitemradio', 'menuitemcheckbox'];
 31572 
 36859 
 31573 function cycleValue(value, total, offset) {
 36860 function cycleValue(value, total, offset) {
 31574   var nextValue = value + offset;
 36861   var nextValue = value + offset;
 31575 
 36862 
 31576   if (nextValue < 0) {
 36863   if (nextValue < 0) {
 31580   }
 36867   }
 31581 
 36868 
 31582   return nextValue;
 36869   return nextValue;
 31583 }
 36870 }
 31584 
 36871 
 31585 var container_NavigableContainer =
 36872 var container_NavigableContainer = /*#__PURE__*/function (_Component) {
 31586 /*#__PURE__*/
       
 31587 function (_Component) {
       
 31588   Object(inherits["a" /* default */])(NavigableContainer, _Component);
 36873   Object(inherits["a" /* default */])(NavigableContainer, _Component);
       
 36874 
       
 36875   var _super = container_createSuper(NavigableContainer);
 31589 
 36876 
 31590   function NavigableContainer() {
 36877   function NavigableContainer() {
 31591     var _this;
 36878     var _this;
 31592 
 36879 
 31593     Object(classCallCheck["a" /* default */])(this, NavigableContainer);
 36880     Object(classCallCheck["a" /* default */])(this, NavigableContainer);
 31594 
 36881 
 31595     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(NavigableContainer).apply(this, arguments));
 36882     _this = _super.apply(this, arguments);
 31596     _this.onKeyDown = _this.onKeyDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36883     _this.onKeyDown = _this.onKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31597     _this.bindContainer = _this.bindContainer.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36884     _this.bindContainer = _this.bindContainer.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31598     _this.getFocusableContext = _this.getFocusableContext.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36885     _this.getFocusableContext = _this.getFocusableContext.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31599     _this.getFocusableIndex = _this.getFocusableIndex.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 36886     _this.getFocusableIndex = _this.getFocusableIndex.bind(Object(assertThisInitialized["a" /* default */])(_this));
 31600     return _this;
 36887     return _this;
 31601   }
 36888   }
 31602 
 36889 
 31603   Object(createClass["a" /* default */])(NavigableContainer, [{
 36890   Object(createClass["a" /* default */])(NavigableContainer, [{
       
 36891     key: "componentDidMount",
       
 36892     value: function componentDidMount() {
       
 36893       // We use DOM event listeners instead of React event listeners
       
 36894       // because we want to catch events from the underlying DOM tree
       
 36895       // The React Tree can be different from the DOM tree when using
       
 36896       // portals. Block Toolbars for instance are rendered in a separate
       
 36897       // React Trees.
       
 36898       this.container.addEventListener('keydown', this.onKeyDown);
       
 36899       this.container.addEventListener('focus', this.onFocus);
       
 36900     }
       
 36901   }, {
       
 36902     key: "componentWillUnmount",
       
 36903     value: function componentWillUnmount() {
       
 36904       this.container.removeEventListener('keydown', this.onKeyDown);
       
 36905       this.container.removeEventListener('focus', this.onFocus);
       
 36906     }
       
 36907   }, {
 31604     key: "bindContainer",
 36908     key: "bindContainer",
 31605     value: function bindContainer(ref) {
 36909     value: function bindContainer(ref) {
 31606       var forwardedRef = this.props.forwardedRef;
 36910       var forwardedRef = this.props.forwardedRef;
 31607       this.container = ref;
 36911       this.container = ref;
 31608 
 36912 
 31609       if (Object(external_lodash_["isFunction"])(forwardedRef)) {
 36913       if (Object(external_this_lodash_["isFunction"])(forwardedRef)) {
 31610         forwardedRef(ref);
 36914         forwardedRef(ref);
 31611       } else if (forwardedRef && 'current' in forwardedRef) {
 36915       } else if (forwardedRef && 'current' in forwardedRef) {
 31612         forwardedRef.current = ref;
 36916         forwardedRef.current = ref;
 31613       }
 36917       }
 31614     }
 36918     }
 31650       var _this$props = this.props,
 36954       var _this$props = this.props,
 31651           _this$props$cycle = _this$props.cycle,
 36955           _this$props$cycle = _this$props.cycle,
 31652           cycle = _this$props$cycle === void 0 ? true : _this$props$cycle,
 36956           cycle = _this$props$cycle === void 0 ? true : _this$props$cycle,
 31653           eventToOffset = _this$props.eventToOffset,
 36957           eventToOffset = _this$props.eventToOffset,
 31654           _this$props$onNavigat = _this$props.onNavigate,
 36958           _this$props$onNavigat = _this$props.onNavigate,
 31655           onNavigate = _this$props$onNavigat === void 0 ? external_lodash_["noop"] : _this$props$onNavigat,
 36959           onNavigate = _this$props$onNavigat === void 0 ? external_this_lodash_["noop"] : _this$props$onNavigat,
 31656           stopNavigationEvents = _this$props.stopNavigationEvents;
 36960           stopNavigationEvents = _this$props.stopNavigationEvents;
 31657       var offset = eventToOffset(event); // eventToOffset returns undefined if the event is not handled by the component
 36961       var offset = eventToOffset(event); // eventToOffset returns undefined if the event is not handled by the component
 31658 
 36962 
 31659       if (offset !== undefined && stopNavigationEvents) {
 36963       if (offset !== undefined && stopNavigationEvents) {
 31660         // Prevents arrow key handlers bound to the document directly interfering
 36964         // Prevents arrow key handlers bound to the document directly interfering
 31661         event.nativeEvent.stopImmediatePropagation(); // When navigating a collection of items, prevent scroll containers
 36965         event.stopImmediatePropagation(); // When navigating a collection of items, prevent scroll containers
 31662         // from scrolling.
 36966         // from scrolling. The preventDefault also prevents Voiceover from
 31663 
 36967         // 'handling' the event, as voiceover will try to use arrow keys
 31664         if (event.target.getAttribute('role') === 'menuitem') {
 36968         // for highlighting text.
       
 36969 
       
 36970         var targetRole = event.target.getAttribute('role');
       
 36971 
       
 36972         if (MENU_ITEM_ROLES.includes(targetRole)) {
 31665           event.preventDefault();
 36973           event.preventDefault();
 31666         }
 36974         }
 31667 
       
 31668         event.stopPropagation();
       
 31669       }
 36975       }
 31670 
 36976 
 31671       if (!offset) {
 36977       if (!offset) {
 31672         return;
 36978         return;
 31673       }
 36979       }
 31690   }, {
 36996   }, {
 31691     key: "render",
 36997     key: "render",
 31692     value: function render() {
 36998     value: function render() {
 31693       var _this$props2 = this.props,
 36999       var _this$props2 = this.props,
 31694           children = _this$props2.children,
 37000           children = _this$props2.children,
 31695           props = Object(objectWithoutProperties["a" /* default */])(_this$props2, ["children"]); // Disable reason: Assumed role is applied by parent via props spread.
 37001           props = Object(objectWithoutProperties["a" /* default */])(_this$props2, ["children"]);
 31696 
       
 31697       /* eslint-disable jsx-a11y/no-static-element-interactions */
       
 31698 
       
 31699 
 37002 
 31700       return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({
 37003       return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({
 31701         ref: this.bindContainer
 37004         ref: this.bindContainer
 31702       }, Object(external_lodash_["omit"])(props, ['stopNavigationEvents', 'eventToOffset', 'onNavigate', 'cycle', 'onlyBrowserTabstops', 'forwardedRef']), {
 37005       }, Object(external_this_lodash_["omit"])(props, ['stopNavigationEvents', 'eventToOffset', 'onNavigate', 'onKeyDown', 'cycle', 'onlyBrowserTabstops', 'forwardedRef'])), children);
 31703         onKeyDown: this.onKeyDown,
       
 31704         onFocus: this.onFocus
       
 31705       }), children);
       
 31706     }
 37006     }
 31707   }]);
 37007   }]);
 31708 
 37008 
 31709   return NavigableContainer;
 37009   return NavigableContainer;
 31710 }(external_this_wp_element_["Component"]);
 37010 }(external_this_wp_element_["Component"]);
 31758     if (orientation === 'both') {
 37058     if (orientation === 'both') {
 31759       next = [external_this_wp_keycodes_["RIGHT"], external_this_wp_keycodes_["DOWN"]];
 37059       next = [external_this_wp_keycodes_["RIGHT"], external_this_wp_keycodes_["DOWN"]];
 31760       previous = [external_this_wp_keycodes_["LEFT"], external_this_wp_keycodes_["UP"]];
 37060       previous = [external_this_wp_keycodes_["LEFT"], external_this_wp_keycodes_["UP"]];
 31761     }
 37061     }
 31762 
 37062 
 31763     if (Object(external_lodash_["includes"])(next, keyCode)) {
 37063     if (Object(external_this_lodash_["includes"])(next, keyCode)) {
 31764       return 1;
 37064       return 1;
 31765     } else if (Object(external_lodash_["includes"])(previous, keyCode)) {
 37065     } else if (Object(external_this_lodash_["includes"])(previous, keyCode)) {
 31766       return -1;
 37066       return -1;
       
 37067     } else if (Object(external_this_lodash_["includes"])([external_this_wp_keycodes_["DOWN"], external_this_wp_keycodes_["UP"], external_this_wp_keycodes_["LEFT"], external_this_wp_keycodes_["RIGHT"]], keyCode)) {
       
 37068       // Key press should be handled, e.g. have event propagation and
       
 37069       // default behavior handled by NavigableContainer but not result
       
 37070       // in an offset.
       
 37071       return 0;
 31767     }
 37072     }
 31768   };
 37073   };
 31769 
 37074 
 31770   return Object(external_this_wp_element_["createElement"])(navigable_container_container, Object(esm_extends["a" /* default */])({
 37075   return Object(external_this_wp_element_["createElement"])(navigable_container_container, Object(esm_extends["a" /* default */])({
 31771     ref: ref,
 37076     ref: ref,
 31776     eventToOffset: eventToOffset
 37081     eventToOffset: eventToOffset
 31777   }, rest));
 37082   }, rest));
 31778 }
 37083 }
 31779 /* harmony default export */ var menu = (Object(external_this_wp_element_["forwardRef"])(NavigableMenu));
 37084 /* harmony default export */ var menu = (Object(external_this_wp_element_["forwardRef"])(NavigableMenu));
 31780 
 37085 
 31781 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigable-container/tabbable.js
 37086 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dropdown-menu/index.js
 31782 
 37087 
 31783 
 37088 
       
 37089 
       
 37090 
       
 37091 function dropdown_menu_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 37092 
       
 37093 function dropdown_menu_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { dropdown_menu_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { dropdown_menu_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 37094 
       
 37095 /**
       
 37096  * External dependencies
       
 37097  */
 31784 
 37098 
 31785 
 37099 
 31786 /**
 37100 /**
 31787  * WordPress dependencies
 37101  * WordPress dependencies
 31788  */
 37102  */
 31789 
 37103 
 31790 
 37104 
       
 37105 
 31791 /**
 37106 /**
 31792  * Internal dependencies
 37107  * Internal dependencies
 31793  */
 37108  */
 31794 
 37109 
 31795 
 37110 
 31796 function TabbableContainer(_ref, ref) {
 37111 
 31797   var eventToOffset = _ref.eventToOffset,
 37112 
 31798       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["eventToOffset"]);
 37113 
 31799 
 37114 function mergeProps() {
 31800   var innerEventToOffset = function innerEventToOffset(evt) {
 37115   var defaultProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
 31801     var keyCode = evt.keyCode,
 37116   var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
 31802         shiftKey = evt.shiftKey;
 37117 
 31803 
 37118   var mergedProps = dropdown_menu_objectSpread({}, defaultProps, {}, props);
 31804     if (external_this_wp_keycodes_["TAB"] === keyCode) {
 37119 
 31805       return shiftKey ? -1 : 1;
 37120   if (props.className && defaultProps.className) {
 31806     } // Allow custom handling of keys besides Tab.
 37121     mergedProps.className = classnames_default()(props.className, defaultProps.className);
 31807     //
 37122   }
 31808     // By default, TabbableContainer will move focus forward on Tab and
 37123 
 31809     // backward on Shift+Tab. The handler below will be used for all other
 37124   return mergedProps;
 31810     // events. The semantics for `eventToOffset`'s return
 37125 }
 31811     // values are the following:
       
 31812     //
       
 31813     // - +1: move focus forward
       
 31814     // - -1: move focus backward
       
 31815     // -  0: don't move focus, but acknowledge event and thus stop it
       
 31816     // - undefined: do nothing, let the event propagate
       
 31817 
       
 31818 
       
 31819     if (eventToOffset) {
       
 31820       return eventToOffset(evt);
       
 31821     }
       
 31822   };
       
 31823 
       
 31824   return Object(external_this_wp_element_["createElement"])(navigable_container_container, Object(esm_extends["a" /* default */])({
       
 31825     ref: ref,
       
 31826     stopNavigationEvents: true,
       
 31827     onlyBrowserTabstops: true,
       
 31828     eventToOffset: innerEventToOffset
       
 31829   }, props));
       
 31830 }
       
 31831 /* harmony default export */ var tabbable = (Object(external_this_wp_element_["forwardRef"])(TabbableContainer));
       
 31832 
       
 31833 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigable-container/index.js
       
 31834 /**
       
 31835  * Internal Dependencies
       
 31836  */
       
 31837 
       
 31838 
       
 31839 
       
 31840 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/dropdown-menu/index.js
       
 31841 
       
 31842 
       
 31843 /**
       
 31844  * External dependencies
       
 31845  */
       
 31846 
       
 31847 
       
 31848 /**
       
 31849  * WordPress dependencies
       
 31850  */
       
 31851 
       
 31852 
       
 31853 /**
       
 31854  * Internal dependencies
       
 31855  */
       
 31856 
       
 31857 
       
 31858 
       
 31859 
       
 31860 
 37126 
 31861 function DropdownMenu(_ref) {
 37127 function DropdownMenu(_ref) {
 31862   var _ref$icon = _ref.icon,
 37128   var children = _ref.children,
       
 37129       className = _ref.className,
       
 37130       controls = _ref.controls,
       
 37131       _ref$icon = _ref.icon,
 31863       icon = _ref$icon === void 0 ? 'menu' : _ref$icon,
 37132       icon = _ref$icon === void 0 ? 'menu' : _ref$icon,
 31864       label = _ref.label,
 37133       label = _ref.label,
       
 37134       popoverProps = _ref.popoverProps,
       
 37135       toggleProps = _ref.toggleProps,
       
 37136       menuProps = _ref.menuProps,
       
 37137       _ref$disableOpenOnArr = _ref.disableOpenOnArrowDown,
       
 37138       disableOpenOnArrowDown = _ref$disableOpenOnArr === void 0 ? false : _ref$disableOpenOnArr,
 31865       menuLabel = _ref.menuLabel,
 37139       menuLabel = _ref.menuLabel,
 31866       controls = _ref.controls,
 37140       position = _ref.position,
 31867       className = _ref.className,
 37141       noIcons = _ref.noIcons;
 31868       position = _ref.position;
 37142 
 31869 
 37143   if (menuLabel) {
 31870   if (!controls || !controls.length) {
 37144     external_this_wp_deprecated_default()('`menuLabel` prop in `DropdownComponent`', {
       
 37145       alternative: '`menuProps` object and its `aria-label` property',
       
 37146       plugin: 'Gutenberg'
       
 37147     });
       
 37148   }
       
 37149 
       
 37150   if (position) {
       
 37151     external_this_wp_deprecated_default()('`position` prop in `DropdownComponent`', {
       
 37152       alternative: '`popoverProps` object and its `position` property',
       
 37153       plugin: 'Gutenberg'
       
 37154     });
       
 37155   }
       
 37156 
       
 37157   if (Object(external_this_lodash_["isEmpty"])(controls) && !Object(external_this_lodash_["isFunction"])(children)) {
 31871     return null;
 37158     return null;
 31872   } // Normalize controls to nested array of objects (sets of controls)
 37159   } // Normalize controls to nested array of objects (sets of controls)
 31873 
 37160 
 31874 
 37161 
 31875   var controlSets = controls;
 37162   var controlSets;
 31876 
 37163 
 31877   if (!Array.isArray(controlSets[0])) {
 37164   if (!Object(external_this_lodash_["isEmpty"])(controls)) {
 31878     controlSets = [controlSets];
 37165     controlSets = controls;
 31879   }
 37166 
 31880 
 37167     if (!Array.isArray(controlSets[0])) {
 31881   return Object(external_this_wp_element_["createElement"])(dropdown, {
 37168       controlSets = [controlSets];
       
 37169     }
       
 37170   }
       
 37171 
       
 37172   var mergedPopoverProps = mergeProps({
       
 37173     className: 'components-dropdown-menu__popover',
       
 37174     position: position
       
 37175   }, popoverProps);
       
 37176   return Object(external_this_wp_element_["createElement"])(Dropdown, {
 31882     className: classnames_default()('components-dropdown-menu', className),
 37177     className: classnames_default()('components-dropdown-menu', className),
 31883     contentClassName: "components-dropdown-menu__popover",
 37178     popoverProps: mergedPopoverProps,
 31884     position: position,
       
 31885     renderToggle: function renderToggle(_ref2) {
 37179     renderToggle: function renderToggle(_ref2) {
 31886       var isOpen = _ref2.isOpen,
 37180       var isOpen = _ref2.isOpen,
 31887           onToggle = _ref2.onToggle;
 37181           onToggle = _ref2.onToggle;
 31888 
 37182 
 31889       var openOnArrowDown = function openOnArrowDown(event) {
 37183       var openOnArrowDown = function openOnArrowDown(event) {
       
 37184         if (disableOpenOnArrowDown) {
       
 37185           return;
       
 37186         }
       
 37187 
 31890         if (!isOpen && event.keyCode === external_this_wp_keycodes_["DOWN"]) {
 37188         if (!isOpen && event.keyCode === external_this_wp_keycodes_["DOWN"]) {
 31891           event.preventDefault();
 37189           event.preventDefault();
 31892           event.stopPropagation();
 37190           event.stopPropagation();
 31893           onToggle();
 37191           onToggle();
 31894         }
 37192         }
 31895       };
 37193       };
 31896 
 37194 
 31897       return Object(external_this_wp_element_["createElement"])(icon_button, {
 37195       var mergedToggleProps = mergeProps({
 31898         className: "components-dropdown-menu__toggle",
 37196         className: classnames_default()('components-dropdown-menu__toggle', {
       
 37197           'is-opened': isOpen
       
 37198         })
       
 37199       }, toggleProps);
       
 37200       return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({}, mergedToggleProps, {
 31899         icon: icon,
 37201         icon: icon,
 31900         onClick: onToggle,
 37202         onClick: function onClick(event) {
 31901         onKeyDown: openOnArrowDown,
 37203           onToggle(event);
       
 37204 
       
 37205           if (mergedToggleProps.onClick) {
       
 37206             mergedToggleProps.onClick(event);
       
 37207           }
       
 37208         },
       
 37209         onKeyDown: function onKeyDown(event) {
       
 37210           openOnArrowDown(event);
       
 37211 
       
 37212           if (mergedToggleProps.onKeyDown) {
       
 37213             mergedToggleProps.onKeyDown(event);
       
 37214           }
       
 37215         },
 31902         "aria-haspopup": "true",
 37216         "aria-haspopup": "true",
 31903         "aria-expanded": isOpen,
 37217         "aria-expanded": isOpen,
 31904         label: label,
 37218         label: label,
 31905         tooltip: label
 37219         showTooltip: true
 31906       }, Object(external_this_wp_element_["createElement"])("span", {
 37220       }), mergedToggleProps.children);
 31907         className: "components-dropdown-menu__indicator"
       
 31908       }));
       
 31909     },
 37221     },
 31910     renderContent: function renderContent(_ref3) {
 37222     renderContent: function renderContent(props) {
 31911       var onClose = _ref3.onClose;
 37223       var mergedMenuProps = mergeProps({
 31912       return Object(external_this_wp_element_["createElement"])(menu, {
 37224         'aria-label': menuLabel || label,
 31913         className: "components-dropdown-menu__menu",
 37225         className: classnames_default()('components-dropdown-menu__menu', {
 31914         role: "menu",
 37226           'no-icons': noIcons
 31915         "aria-label": menuLabel
 37227         })
 31916       }, Object(external_lodash_["flatMap"])(controlSets, function (controlSet, indexOfSet) {
 37228       }, menuProps);
       
 37229       return Object(external_this_wp_element_["createElement"])(menu, Object(esm_extends["a" /* default */])({}, mergedMenuProps, {
       
 37230         role: "menu"
       
 37231       }), Object(external_this_lodash_["isFunction"])(children) ? children(props) : null, Object(external_this_lodash_["flatMap"])(controlSets, function (controlSet, indexOfSet) {
 31917         return controlSet.map(function (control, indexOfControl) {
 37232         return controlSet.map(function (control, indexOfControl) {
 31918           return Object(external_this_wp_element_["createElement"])(icon_button, {
 37233           return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 31919             key: [indexOfSet, indexOfControl].join(),
 37234             key: [indexOfSet, indexOfControl].join(),
 31920             onClick: function onClick(event) {
 37235             onClick: function onClick(event) {
 31921               event.stopPropagation();
 37236               event.stopPropagation();
 31922               onClose();
 37237               props.onClose();
 31923 
 37238 
 31924               if (control.onClick) {
 37239               if (control.onClick) {
 31925                 control.onClick();
 37240                 control.onClick();
 31926               }
 37241               }
 31927             },
 37242             },
 31928             className: classnames_default()('components-dropdown-menu__menu-item', {
 37243             className: classnames_default()('components-dropdown-menu__menu-item', {
 31929               'has-separator': indexOfSet > 0 && indexOfControl === 0,
 37244               'has-separator': indexOfSet > 0 && indexOfControl === 0,
 31930               'is-active': control.isActive
 37245               'is-active': control.isActive
 31931             }),
 37246             }),
 31932             icon: control.icon,
 37247             icon: control.icon,
 31933             role: "menuitem",
 37248             "aria-checked": control.role === 'menuitemcheckbox' || control.role === 'menuitemradio' ? control.isActive : undefined,
       
 37249             role: control.role === 'menuitemcheckbox' || control.role === 'menuitemradio' ? control.role : 'menuitem',
 31934             disabled: control.isDisabled
 37250             disabled: control.isDisabled
 31935           }, control.title);
 37251           }, control.title);
 31936         });
 37252         });
 31937       }));
 37253       }));
 31938     }
 37254     }
 31939   });
 37255   });
 31940 }
 37256 }
 31941 
 37257 
 31942 /* harmony default export */ var dropdown_menu = (DropdownMenu);
 37258 /* harmony default export */ var dropdown_menu = (DropdownMenu);
 31943 
 37259 
       
 37260 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/external.js
       
 37261 var external = __webpack_require__(409);
       
 37262 
 31944 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/external-link/index.js
 37263 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/external-link/index.js
 31945 
 37264 
 31946 
 37265 
 31947 
 37266 
 31948 
 37267 
 31953 
 37272 
 31954 
 37273 
 31955 /**
 37274 /**
 31956  * WordPress dependencies
 37275  * WordPress dependencies
 31957  */
 37276  */
       
 37277 
 31958 
 37278 
 31959 
 37279 
 31960 
 37280 
 31961 /**
 37281 /**
 31962  * Internal dependencies
 37282  * Internal dependencies
 31969       className = _ref.className,
 37289       className = _ref.className,
 31970       _ref$rel = _ref.rel,
 37290       _ref$rel = _ref.rel,
 31971       rel = _ref$rel === void 0 ? '' : _ref$rel,
 37291       rel = _ref$rel === void 0 ? '' : _ref$rel,
 31972       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["href", "children", "className", "rel"]);
 37292       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["href", "children", "className", "rel"]);
 31973 
 37293 
 31974   rel = Object(external_lodash_["uniq"])(Object(external_lodash_["compact"])([].concat(Object(toConsumableArray["a" /* default */])(rel.split(' ')), ['external', 'noreferrer', 'noopener']))).join(' ');
 37294   rel = Object(external_this_lodash_["uniq"])(Object(external_this_lodash_["compact"])([].concat(Object(toConsumableArray["a" /* default */])(rel.split(' ')), ['external', 'noreferrer', 'noopener']))).join(' ');
 31975   var classes = classnames_default()('components-external-link', className);
 37295   var classes = classnames_default()('components-external-link', className);
 31976   return Object(external_this_wp_element_["createElement"])("a", Object(esm_extends["a" /* default */])({}, additionalProps, {
 37296   return Object(external_this_wp_element_["createElement"])("a", Object(esm_extends["a" /* default */])({}, additionalProps, {
 31977     className: classes,
 37297     className: classes,
 31978     href: href,
 37298     href: href // eslint-disable-next-line react/jsx-no-target-blank
       
 37299     ,
 31979     target: "_blank",
 37300     target: "_blank",
 31980     rel: rel,
 37301     rel: rel,
 31981     ref: ref
 37302     ref: ref
 31982   }), " ", children, Object(external_this_wp_element_["createElement"])("span", {
 37303   }), children, Object(external_this_wp_element_["createElement"])(visually_hidden, {
 31983     className: "screen-reader-text"
 37304     as: "span"
 31984   },
 37305   },
 31985   /* translators: accessibility text */
 37306   /* translators: accessibility text */
 31986   Object(external_this_wp_i18n_["__"])('(opens in a new tab)')), Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
 37307   Object(external_this_wp_i18n_["__"])('(opens in a new tab)')), Object(external_this_wp_element_["createElement"])(build_module_icon["a" /* default */], {
 31987     icon: "external",
 37308     icon: external["a" /* default */],
 31988     className: "components-external-link__icon"
 37309     className: "components-external-link__icon"
 31989   }));
 37310   }));
 31990 }
 37311 }
 31991 /* harmony default export */ var external_link = (Object(external_this_wp_element_["forwardRef"])(ExternalLink));
 37312 /* harmony default export */ var external_link = (Object(external_this_wp_element_["forwardRef"])(ExternalLink));
 31992 
 37313 
       
 37314 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-outside/index.js
       
 37315 var with_focus_outside = __webpack_require__(111);
       
 37316 
 31993 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/focal-point-picker/index.js
 37317 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/focal-point-picker/index.js
 31994 
 37318 
 31995 
 37319 
 31996 
 37320 
 31997 
 37321 
 31998 
 37322 
 31999 
 37323 
 32000 
 37324 
 32001 
 37325 
       
 37326 function focal_point_picker_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (focal_point_picker_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 37327 
       
 37328 function focal_point_picker_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 37329 
 32002 /**
 37330 /**
 32003  * External dependencies
 37331  * External dependencies
 32004  */
 37332  */
 32005 
 37333 
 32006 /**
 37334 /**
 32008  */
 37336  */
 32009 
 37337 
 32010 
 37338 
 32011 
 37339 
 32012 
 37340 
       
 37341 
 32013 /**
 37342 /**
 32014  * Internal dependencies
 37343  * Internal dependencies
 32015  */
 37344  */
 32016 
       
 32017 
 37345 
 32018 
 37346 
 32019 
 37347 
 32020 var TEXTCONTROL_MIN = 0;
 37348 var TEXTCONTROL_MIN = 0;
 32021 var TEXTCONTROL_MAX = 100;
 37349 var TEXTCONTROL_MAX = 100;
 32022 var focal_point_picker_FocalPointPicker =
 37350 var focal_point_picker_FocalPointPicker = /*#__PURE__*/function (_Component) {
 32023 /*#__PURE__*/
       
 32024 function (_Component) {
       
 32025   Object(inherits["a" /* default */])(FocalPointPicker, _Component);
 37351   Object(inherits["a" /* default */])(FocalPointPicker, _Component);
 32026 
 37352 
 32027   function FocalPointPicker() {
 37353   var _super = focal_point_picker_createSuper(FocalPointPicker);
       
 37354 
       
 37355   function FocalPointPicker(props) {
 32028     var _this;
 37356     var _this;
 32029 
 37357 
 32030     Object(classCallCheck["a" /* default */])(this, FocalPointPicker);
 37358     Object(classCallCheck["a" /* default */])(this, FocalPointPicker);
 32031 
 37359 
 32032     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FocalPointPicker).apply(this, arguments));
 37360     _this = _super.call(this, props);
 32033     _this.onMouseMove = _this.onMouseMove.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 37361     _this.onMouseMove = _this.onMouseMove.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32034     _this.state = {
 37362     _this.state = {
 32035       isDragging: false,
 37363       isDragging: false,
 32036       bounds: {},
 37364       bounds: {},
 32037       percentages: {}
 37365       percentages: props.value
 32038     };
 37366     };
 32039     _this.containerRef = Object(external_this_wp_element_["createRef"])();
 37367     _this.containerRef = Object(external_this_wp_element_["createRef"])();
 32040     _this.imageRef = Object(external_this_wp_element_["createRef"])();
 37368     _this.imageRef = Object(external_this_wp_element_["createRef"])();
 32041     _this.horizontalPositionChanged = _this.horizontalPositionChanged.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 37369     _this.horizontalPositionChanged = _this.horizontalPositionChanged.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32042     _this.verticalPositionChanged = _this.verticalPositionChanged.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 37370     _this.verticalPositionChanged = _this.verticalPositionChanged.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32043     _this.onLoad = _this.onLoad.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 37371     _this.onLoad = _this.onLoad.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32044     return _this;
 37372     return _this;
 32045   }
 37373   }
 32046 
 37374 
 32047   Object(createClass["a" /* default */])(FocalPointPicker, [{
 37375   Object(createClass["a" /* default */])(FocalPointPicker, [{
 32048     key: "componentDidMount",
       
 32049     value: function componentDidMount() {
       
 32050       this.setState({
       
 32051         percentages: this.props.value
       
 32052       });
       
 32053     }
       
 32054   }, {
       
 32055     key: "componentDidUpdate",
 37376     key: "componentDidUpdate",
 32056     value: function componentDidUpdate(prevProps) {
 37377     value: function componentDidUpdate(prevProps) {
 32057       if (prevProps.url !== this.props.url) {
 37378       if (prevProps.url !== this.props.url) {
 32058         this.setState({
 37379         this.setState({
 32059           isDragging: false
 37380           isDragging: false
 32120           top: event.pageY - pickerDimensions.top
 37441           top: event.pageY - pickerDimensions.top
 32121         };
 37442         };
 32122         var left = Math.max(bounds.left, Math.min(cursorPosition.left, bounds.right));
 37443         var left = Math.max(bounds.left, Math.min(cursorPosition.left, bounds.right));
 32123         var top = Math.max(bounds.top, Math.min(cursorPosition.top, bounds.bottom));
 37444         var top = Math.max(bounds.top, Math.min(cursorPosition.top, bounds.bottom));
 32124         var percentages = {
 37445         var percentages = {
 32125           x: (left - bounds.left) / (pickerDimensions.width - bounds.left * 2),
 37446           x: ((left - bounds.left) / (pickerDimensions.width - bounds.left * 2)).toFixed(2),
 32126           y: (top - bounds.top) / (pickerDimensions.height - bounds.top * 2)
 37447           y: ((top - bounds.top) / (pickerDimensions.height - bounds.top * 2)).toFixed(2)
 32127         };
 37448         };
 32128         this.setState({
 37449         this.setState({
 32129           percentages: percentages
 37450           percentages: percentages
 32130         }, function () {
 37451         }, function () {
 32131           onChange({
 37452           onChange({
 32154     key: "positionChangeFromTextControl",
 37475     key: "positionChangeFromTextControl",
 32155     value: function positionChangeFromTextControl(axis, value) {
 37476     value: function positionChangeFromTextControl(axis, value) {
 32156       var onChange = this.props.onChange;
 37477       var onChange = this.props.onChange;
 32157       var percentages = this.state.percentages;
 37478       var percentages = this.state.percentages;
 32158       var cleanValue = Math.max(Math.min(parseInt(value), 100), 0);
 37479       var cleanValue = Math.max(Math.min(parseInt(value), 100), 0);
 32159       percentages[axis] = cleanValue ? cleanValue / 100 : 0;
 37480       percentages[axis] = (cleanValue ? cleanValue / 100 : 0).toFixed(2);
 32160       this.setState({
 37481       this.setState({
 32161         percentages: percentages
 37482         percentages: percentages
 32162       }, function () {
 37483       }, function () {
 32163         onChange({
 37484         onChange({
 32164           x: this.state.percentages.x,
 37485           x: this.state.percentages.x,
 32218         top: "".concat(iconCoordinates.top, "px")
 37539         top: "".concat(iconCoordinates.top, "px")
 32219       };
 37540       };
 32220       var iconContainerClasses = classnames_default()('components-focal-point-picker__icon_container', isDragging ? 'is-dragging' : null);
 37541       var iconContainerClasses = classnames_default()('components-focal-point-picker__icon_container', isDragging ? 'is-dragging' : null);
 32221       var id = "inspector-focal-point-picker-control-".concat(instanceId);
 37542       var id = "inspector-focal-point-picker-control-".concat(instanceId);
 32222       var horizontalPositionId = "inspector-focal-point-picker-control-horizontal-position-".concat(instanceId);
 37543       var horizontalPositionId = "inspector-focal-point-picker-control-horizontal-position-".concat(instanceId);
 32223       var verticalPositionId = "inspector-focal-point-picker-control-horizontal-position-".concat(instanceId);
 37544       var verticalPositionId = "inspector-focal-point-picker-control-vertical-position-".concat(instanceId);
 32224       return Object(external_this_wp_element_["createElement"])(base_control, {
 37545       return Object(external_this_wp_element_["createElement"])(base_control, {
 32225         label: label,
 37546         label: label,
 32226         id: id,
 37547         id: id,
 32227         help: help,
 37548         help: help,
 32228         className: className
 37549         className: className
 32261         src: url,
 37582         src: url,
 32262         draggable: "false"
 37583         draggable: "false"
 32263       }), Object(external_this_wp_element_["createElement"])("div", {
 37584       }), Object(external_this_wp_element_["createElement"])("div", {
 32264         className: iconContainerClasses,
 37585         className: iconContainerClasses,
 32265         style: iconContainerStyle
 37586         style: iconContainerStyle
 32266       }, Object(external_this_wp_element_["createElement"])(svg_SVG, {
 37587       }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
 32267         className: "components-focal-point-picker__icon",
 37588         className: "components-focal-point-picker__icon",
 32268         xmlns: "http://www.w3.org/2000/svg",
 37589         xmlns: "http://www.w3.org/2000/svg",
 32269         viewBox: "0 0 30 30"
 37590         viewBox: "0 0 30 30"
 32270       }, Object(external_this_wp_element_["createElement"])(svg_Path, {
 37591       }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], {
 32271         className: "components-focal-point-picker__icon-outline",
 37592         className: "components-focal-point-picker__icon-outline",
 32272         d: "M15 1C7.3 1 1 7.3 1 15s6.3 14 14 14 14-6.3 14-14S22.7 1 15 1zm0 22c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z"
 37593         d: "M15 1C7.3 1 1 7.3 1 15s6.3 14 14 14 14-6.3 14-14S22.7 1 15 1zm0 22c-4.4 0-8-3.6-8-8s3.6-8 8-8 8 3.6 8 8-3.6 8-8 8z"
 32273       }), Object(external_this_wp_element_["createElement"])(svg_Path, {
 37594       }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], {
 32274         className: "components-focal-point-picker__icon-fill",
 37595         className: "components-focal-point-picker__icon-fill",
 32275         d: "M15 3C8.4 3 3 8.4 3 15s5.4 12 12 12 12-5.4 12-12S21.6 3 15 3zm0 22C9.5 25 5 20.5 5 15S9.5 5 15 5s10 4.5 10 10-4.5 10-10 10z"
 37596         d: "M15 3C8.4 3 3 8.4 3 15s5.4 12 12 12 12-5.4 12-12S21.6 3 15 3zm0 22C9.5 25 5 20.5 5 15S9.5 5 15 5s10 4.5 10 10-4.5 10-10 10z"
 32276       }))))), Object(external_this_wp_element_["createElement"])("div", {
 37597       }))))), Object(external_this_wp_element_["createElement"])("div", {
 32277         className: "components-focal-point-picker_position-display-container"
 37598         className: "components-focal-point-picker_position-display-container"
 32278       }, Object(external_this_wp_element_["createElement"])(base_control, {
 37599       }, Object(external_this_wp_element_["createElement"])(base_control, {
 32279         label: Object(external_this_wp_i18n_["__"])('Horizontal Pos.'),
 37600         label: Object(external_this_wp_i18n_["__"])('Horizontal pos.'),
 32280         id: horizontalPositionId
 37601         id: horizontalPositionId
 32281       }, Object(external_this_wp_element_["createElement"])("input", {
 37602       }, Object(external_this_wp_element_["createElement"])("input", {
 32282         className: "components-text-control__input",
 37603         className: "components-text-control__input",
 32283         id: horizontalPositionId,
 37604         id: horizontalPositionId,
 32284         max: TEXTCONTROL_MAX,
 37605         max: TEXTCONTROL_MAX,
 32285         min: TEXTCONTROL_MIN,
 37606         min: TEXTCONTROL_MIN,
 32286         onChange: this.horizontalPositionChanged,
 37607         onChange: this.horizontalPositionChanged,
 32287         type: "number",
 37608         type: "number",
 32288         value: this.fractionToPercentage(percentages.x)
 37609         value: this.fractionToPercentage(percentages.x)
 32289       }), Object(external_this_wp_element_["createElement"])("span", null, "%")), Object(external_this_wp_element_["createElement"])(base_control, {
 37610       }), Object(external_this_wp_element_["createElement"])("span", null, "%")), Object(external_this_wp_element_["createElement"])(base_control, {
 32290         label: Object(external_this_wp_i18n_["__"])('Vertical Pos.'),
 37611         label: Object(external_this_wp_i18n_["__"])('Vertical pos.'),
 32291         id: verticalPositionId
 37612         id: verticalPositionId
 32292       }, Object(external_this_wp_element_["createElement"])("input", {
 37613       }, Object(external_this_wp_element_["createElement"])("input", {
 32293         className: "components-text-control__input",
 37614         className: "components-text-control__input",
 32294         id: verticalPositionId,
 37615         id: verticalPositionId,
 32295         max: TEXTCONTROL_MAX,
 37616         max: TEXTCONTROL_MAX,
 32309     x: 0.5,
 37630     x: 0.5,
 32310     y: 0.5
 37631     y: 0.5
 32311   },
 37632   },
 32312   onChange: function onChange() {}
 37633   onChange: function onChange() {}
 32313 };
 37634 };
 32314 /* harmony default export */ var focal_point_picker = (Object(external_this_wp_compose_["compose"])([external_this_wp_compose_["withInstanceId"], with_focus_outside])(focal_point_picker_FocalPointPicker));
 37635 /* harmony default export */ var focal_point_picker = (Object(external_this_wp_compose_["compose"])([external_this_wp_compose_["withInstanceId"], with_focus_outside["a" /* default */]])(focal_point_picker_FocalPointPicker));
 32315 
 37636 
 32316 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/focusable-iframe/index.js
 37637 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/focusable-iframe/index.js
 32317 
 37638 
 32318 
 37639 
 32319 
 37640 
 32320 
 37641 
 32321 
 37642 
 32322 
 37643 
 32323 
 37644 
 32324 
 37645 
       
 37646 
       
 37647 function focusable_iframe_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (focusable_iframe_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 37648 
       
 37649 function focusable_iframe_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 32325 
 37650 
 32326 /**
 37651 /**
 32327  * External dependencies
 37652  * External dependencies
 32328  */
 37653  */
 32329 
 37654 
 32338  */
 37663  */
 32339 
 37664 
 32340 var _window = window,
 37665 var _window = window,
 32341     FocusEvent = _window.FocusEvent;
 37666     FocusEvent = _window.FocusEvent;
 32342 
 37667 
 32343 var focusable_iframe_FocusableIframe =
 37668 var focusable_iframe_FocusableIframe = /*#__PURE__*/function (_Component) {
 32344 /*#__PURE__*/
       
 32345 function (_Component) {
       
 32346   Object(inherits["a" /* default */])(FocusableIframe, _Component);
 37669   Object(inherits["a" /* default */])(FocusableIframe, _Component);
       
 37670 
       
 37671   var _super = focusable_iframe_createSuper(FocusableIframe);
 32347 
 37672 
 32348   function FocusableIframe(props) {
 37673   function FocusableIframe(props) {
 32349     var _this;
 37674     var _this;
 32350 
 37675 
 32351     Object(classCallCheck["a" /* default */])(this, FocusableIframe);
 37676     Object(classCallCheck["a" /* default */])(this, FocusableIframe);
 32352 
 37677 
 32353     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FocusableIframe).apply(this, arguments));
 37678     _this = _super.apply(this, arguments);
 32354     _this.checkFocus = _this.checkFocus.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 37679     _this.checkFocus = _this.checkFocus.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32355     _this.node = props.iframeRef || Object(external_this_wp_element_["createRef"])();
 37680     _this.node = props.iframeRef || Object(external_this_wp_element_["createRef"])();
 32356     return _this;
 37681     return _this;
 32357   }
 37682   }
 32358   /**
 37683   /**
 32359    * Checks whether the iframe is the activeElement, inferring that it has
 37684    * Checks whether the iframe is the activeElement, inferring that it has
 32388       // responsibility of the parent to assign a title.
 37713       // responsibility of the parent to assign a title.
 32389 
 37714 
 32390       /* eslint-disable jsx-a11y/iframe-has-title */
 37715       /* eslint-disable jsx-a11y/iframe-has-title */
 32391       return Object(external_this_wp_element_["createElement"])("iframe", Object(esm_extends["a" /* default */])({
 37716       return Object(external_this_wp_element_["createElement"])("iframe", Object(esm_extends["a" /* default */])({
 32392         ref: this.node
 37717         ref: this.node
 32393       }, Object(external_lodash_["omit"])(this.props, ['iframeRef', 'onFocus'])));
 37718       }, Object(external_this_lodash_["omit"])(this.props, ['iframeRef', 'onFocus'])));
 32394       /* eslint-enable jsx-a11y/iframe-has-title */
 37719       /* eslint-enable jsx-a11y/iframe-has-title */
 32395     }
 37720     }
 32396   }]);
 37721   }]);
 32397 
 37722 
 32398   return FocusableIframe;
 37723   return FocusableIframe;
 32400 
 37725 
 32401 /* harmony default export */ var focusable_iframe = (Object(external_this_wp_compose_["withGlobalEvents"])({
 37726 /* harmony default export */ var focusable_iframe = (Object(external_this_wp_compose_["withGlobalEvents"])({
 32402   blur: 'checkFocus'
 37727   blur: 'checkFocus'
 32403 })(focusable_iframe_FocusableIframe));
 37728 })(focusable_iframe_FocusableIframe));
 32404 
 37729 
       
 37730 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/text-color.js
       
 37731 var text_color = __webpack_require__(410);
       
 37732 
       
 37733 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/utils.js
       
 37734 
       
 37735 
       
 37736 /**
       
 37737  * External dependencies
       
 37738  */
       
 37739 
       
 37740 /**
       
 37741  * WordPress dependencies
       
 37742  */
       
 37743 
       
 37744 
       
 37745 /**
       
 37746  * Internal dependencies
       
 37747  */
       
 37748 
       
 37749 
       
 37750 /**
       
 37751  * A float supported clamp function for a specific value.
       
 37752  *
       
 37753  * @param {number|null} value The value to clamp.
       
 37754  * @param {number}      min   The minimum value.
       
 37755  * @param {number}      max   The maximum value.
       
 37756  *
       
 37757  * @return {number} A (float) number
       
 37758  */
       
 37759 
       
 37760 function floatClamp(value, min, max) {
       
 37761   if (typeof value !== 'number') {
       
 37762     return null;
       
 37763   }
       
 37764 
       
 37765   return parseFloat(Object(external_this_lodash_["clamp"])(value, min, max));
       
 37766 }
       
 37767 /**
       
 37768  * Hook to store a clamped value, derived from props.
       
 37769  *
       
 37770  * @param {Object} settings         Hook settings.
       
 37771  * @param {number} settings.min     The minimum value.
       
 37772  * @param {number} settings.max     The maximum value.
       
 37773  * @param {number} settings.value  	The current value.
       
 37774  * @param {any}    settings.initial The initial value.
       
 37775  *
       
 37776  * @return {[*, Function]} The controlled value and the value setter.
       
 37777  */
       
 37778 
       
 37779 function useControlledRangeValue(_ref) {
       
 37780   var min = _ref.min,
       
 37781       max = _ref.max,
       
 37782       valueProp = _ref.value,
       
 37783       initial = _ref.initial;
       
 37784 
       
 37785   var _useControlledState = use_controlled_state(floatClamp(valueProp, min, max), {
       
 37786     initial: initial,
       
 37787     fallback: null
       
 37788   }),
       
 37789       _useControlledState2 = Object(slicedToArray["a" /* default */])(_useControlledState, 2),
       
 37790       state = _useControlledState2[0],
       
 37791       setInternalState = _useControlledState2[1];
       
 37792 
       
 37793   var setState = Object(external_this_wp_element_["useCallback"])(function (nextValue) {
       
 37794     if (nextValue === null) {
       
 37795       setInternalState(null);
       
 37796     } else {
       
 37797       setInternalState(floatClamp(nextValue, min, max));
       
 37798     }
       
 37799   }, [min, max]);
       
 37800   return [state, setState];
       
 37801 }
       
 37802 /**
       
 37803  * Hook to encapsulate the debouncing "hover" to better handle the showing
       
 37804  * and hiding of the Tooltip.
       
 37805  *
       
 37806  * @param {Object}   settings                     Hook settings.
       
 37807  * @param {Function} [settings.onShow=noop]       A callback function invoked when the element is shown.
       
 37808  * @param {Function} [settings.onHide=noop]       A callback function invoked when the element is hidden.
       
 37809  * @param {Function} [settings.onMouseMove=noop]  A callback function invoked when the mouse is moved.
       
 37810  * @param {Function} [settings.onMouseLeave=noop] A callback function invoked when the mouse is moved out of the element.
       
 37811  * @param {number}   [settings.timeout=300]       Timeout before the element is shown or hidden.
       
 37812  *
       
 37813  * @return {Object} Bound properties for use on a React.Node.
       
 37814  */
       
 37815 
       
 37816 function useDebouncedHoverInteraction(_ref2) {
       
 37817   var _ref2$onHide = _ref2.onHide,
       
 37818       onHide = _ref2$onHide === void 0 ? external_this_lodash_["noop"] : _ref2$onHide,
       
 37819       _ref2$onMouseLeave = _ref2.onMouseLeave,
       
 37820       onMouseLeave = _ref2$onMouseLeave === void 0 ? external_this_lodash_["noop"] : _ref2$onMouseLeave,
       
 37821       _ref2$onMouseMove = _ref2.onMouseMove,
       
 37822       onMouseMove = _ref2$onMouseMove === void 0 ? external_this_lodash_["noop"] : _ref2$onMouseMove,
       
 37823       _ref2$onShow = _ref2.onShow,
       
 37824       onShow = _ref2$onShow === void 0 ? external_this_lodash_["noop"] : _ref2$onShow,
       
 37825       _ref2$timeout = _ref2.timeout,
       
 37826       timeout = _ref2$timeout === void 0 ? 300 : _ref2$timeout;
       
 37827 
       
 37828   var _useState = Object(external_this_wp_element_["useState"])(false),
       
 37829       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 37830       show = _useState2[0],
       
 37831       setShow = _useState2[1];
       
 37832 
       
 37833   var timeoutRef = Object(external_this_wp_element_["useRef"])();
       
 37834   var setDebouncedTimeout = Object(external_this_wp_element_["useCallback"])(function (callback) {
       
 37835     window.clearTimeout(timeoutRef.current);
       
 37836     timeoutRef.current = setTimeout(callback, timeout);
       
 37837   }, [timeout]);
       
 37838   var handleOnMouseMove = Object(external_this_wp_element_["useCallback"])(function (event) {
       
 37839     onMouseMove(event);
       
 37840     setDebouncedTimeout(function () {
       
 37841       if (!show) {
       
 37842         setShow(true);
       
 37843         onShow();
       
 37844       }
       
 37845     });
       
 37846   }, []);
       
 37847   var handleOnMouseLeave = Object(external_this_wp_element_["useCallback"])(function (event) {
       
 37848     onMouseLeave(event);
       
 37849     setDebouncedTimeout(function () {
       
 37850       setShow(false);
       
 37851       onHide();
       
 37852     });
       
 37853   }, []);
       
 37854   Object(external_this_wp_element_["useEffect"])(function () {
       
 37855     return function () {
       
 37856       window.clearTimeout(timeoutRef.current);
       
 37857     };
       
 37858   });
       
 37859   return {
       
 37860     onMouseMove: handleOnMouseMove,
       
 37861     onMouseLeave: handleOnMouseLeave
       
 37862   };
       
 37863 }
       
 37864 
       
 37865 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/styles/range-control-styles.js
       
 37866 
       
 37867 
       
 37868 function range_control_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
       
 37869 
       
 37870 /**
       
 37871  * External dependencies
       
 37872  */
       
 37873 
       
 37874 
       
 37875 /**
       
 37876  * Internal dependencies
       
 37877  */
       
 37878 
       
 37879 
       
 37880 
       
 37881 var range_control_styles_ref =  true ? {
       
 37882   name: "tdik1c",
       
 37883   styles: "height:30px;min-height:30px;"
       
 37884 } : undefined;
       
 37885 
       
 37886 var rangeHeight = function rangeHeight() {
       
 37887   return range_control_styles_ref;
       
 37888 };
       
 37889 
       
 37890 var range_control_styles_Root = styled_base_browser_esm("span", {
       
 37891   target: "exqw8y20",
       
 37892   label: "Root"
       
 37893 })( true ? {
       
 37894   name: "1916452",
       
 37895   styles: "-webkit-tap-highlight-color:transparent;box-sizing:border-box;cursor:pointer;align-items:flex-start;display:inline-flex;justify-content:flex-start;padding:0;position:relative;touch-action:none;width:100%;"
       
 37896 } : undefined);
       
 37897 
       
 37898 var range_control_styles_wrapperColor = function wrapperColor(_ref4) {
       
 37899   var _ref4$color = _ref4.color,
       
 37900       colorProp = _ref4$color === void 0 ? colors_color('ui.borderFocus') : _ref4$color;
       
 37901   return /*#__PURE__*/css_browser_esm({
       
 37902     color: colorProp
       
 37903   },  true ? "" : undefined);
       
 37904 };
       
 37905 
       
 37906 var range_control_styles_wrapperMargin = function wrapperMargin(_ref5) {
       
 37907   var marks = _ref5.marks;
       
 37908   return /*#__PURE__*/css_browser_esm({
       
 37909     marginBottom: marks ? 16 : null
       
 37910   },  true ? "" : undefined);
       
 37911 };
       
 37912 
       
 37913 var range_control_styles_Wrapper = styled_base_browser_esm("span", {
       
 37914   target: "exqw8y21",
       
 37915   label: "Wrapper"
       
 37916 })("box-sizing:border-box;color:", colors_color('blue.medium.focus'), ";display:block;flex:1;padding-top:15px;position:relative;width:100%;", range_control_styles_wrapperColor, ";", rangeHeight, ";", range_control_styles_wrapperMargin, ";", rtl({
       
 37917   marginLeft: 10
       
 37918 }),  true ? "" : undefined);
       
 37919 var BeforeIconWrapper = styled_base_browser_esm("span", {
       
 37920   target: "exqw8y22",
       
 37921   label: "BeforeIconWrapper"
       
 37922 })("margin-top:3px;", rtl({
       
 37923   marginRight: 6
       
 37924 }),  true ? "" : undefined);
       
 37925 var AfterIconWrapper = styled_base_browser_esm("span", {
       
 37926   target: "exqw8y23",
       
 37927   label: "AfterIconWrapper"
       
 37928 })("margin-top:3px;", rtl({
       
 37929   marginLeft: 16
       
 37930 }),  true ? "" : undefined);
       
 37931 
       
 37932 var range_control_styles_railBackgroundColor = function railBackgroundColor(_ref6) {
       
 37933   var disabled = _ref6.disabled,
       
 37934       railColor = _ref6.railColor;
       
 37935   var background = railColor || null;
       
 37936 
       
 37937   if (disabled) {
       
 37938     background = colors_color('lightGray.400');
       
 37939   }
       
 37940 
       
 37941   return /*#__PURE__*/css_browser_esm({
       
 37942     background: background
       
 37943   },  true ? "" : undefined);
       
 37944 };
       
 37945 
       
 37946 var Rail = styled_base_browser_esm("span", {
       
 37947   target: "exqw8y24",
       
 37948   label: "Rail"
       
 37949 })("background-color:", colors_color('lightGray.600'), ";box-sizing:border-box;left:0;pointer-events:none;right:0;display:block;height:3px;position:absolute;margin-top:14px;top:0;", range_control_styles_railBackgroundColor, ";" + ( true ? "" : undefined));
       
 37950 
       
 37951 var range_control_styles_trackBackgroundColor = function trackBackgroundColor(_ref7) {
       
 37952   var disabled = _ref7.disabled,
       
 37953       trackColor = _ref7.trackColor;
       
 37954   var background = trackColor || 'currentColor';
       
 37955 
       
 37956   if (disabled) {
       
 37957     background = colors_color('lightGray.800');
       
 37958   }
       
 37959 
       
 37960   return /*#__PURE__*/css_browser_esm({
       
 37961     background: background
       
 37962   },  true ? "" : undefined);
       
 37963 };
       
 37964 
       
 37965 var Track = styled_base_browser_esm("span", {
       
 37966   target: "exqw8y25",
       
 37967   label: "Track"
       
 37968 })("background-color:currentColor;border-radius:1px;box-sizing:border-box;height:3px;pointer-events:none;display:block;position:absolute;margin-top:14px;top:0;", range_control_styles_trackBackgroundColor, ";" + ( true ? "" : undefined));
       
 37969 var MarksWrapper = styled_base_browser_esm("span", {
       
 37970   target: "exqw8y26",
       
 37971   label: "MarksWrapper"
       
 37972 })( true ? {
       
 37973   name: "sx8y8z",
       
 37974   styles: "box-sizing:border-box;display:block;position:relative;width:100%;user-select:none;"
       
 37975 } : undefined);
       
 37976 
       
 37977 var range_control_styles_markFill = function markFill(_ref8) {
       
 37978   var disabled = _ref8.disabled,
       
 37979       isFilled = _ref8.isFilled;
       
 37980   var backgroundColor = isFilled ? 'currentColor' : colors_color('lightGray.600');
       
 37981 
       
 37982   if (disabled) {
       
 37983     backgroundColor = colors_color('lightGray.800');
       
 37984   }
       
 37985 
       
 37986   return /*#__PURE__*/css_browser_esm({
       
 37987     backgroundColor: backgroundColor
       
 37988   },  true ? "" : undefined);
       
 37989 };
       
 37990 
       
 37991 var Mark = styled_base_browser_esm("span", {
       
 37992   target: "exqw8y27",
       
 37993   label: "Mark"
       
 37994 })("box-sizing:border-box;height:9px;left:0;position:absolute;top:-4px;width:1px;", range_control_styles_markFill, ";" + ( true ? "" : undefined));
       
 37995 
       
 37996 var range_control_styles_markLabelFill = function markLabelFill(_ref9) {
       
 37997   var isFilled = _ref9.isFilled;
       
 37998   return /*#__PURE__*/css_browser_esm({
       
 37999     color: isFilled ? colors_color('darkGray.300') : colors_color('lightGray.600')
       
 38000   },  true ? "" : undefined);
       
 38001 };
       
 38002 
       
 38003 var MarkLabel = styled_base_browser_esm("span", {
       
 38004   target: "exqw8y28",
       
 38005   label: "MarkLabel"
       
 38006 })("box-sizing:border-box;color:", colors_color('lightGray.600'), ";left:0;font-size:11px;position:absolute;top:12px;transform:translateX( -50% );white-space:nowrap;", range_control_styles_markLabelFill, ";" + ( true ? "" : undefined));
       
 38007 var ThumbWrapper = styled_base_browser_esm("span", {
       
 38008   target: "exqw8y29",
       
 38009   label: "ThumbWrapper"
       
 38010 })("align-items:center;box-sizing:border-box;display:flex;height:20px;justify-content:center;margin-top:5px;outline:0;pointer-events:none;position:absolute;top:0;user-select:none;width:20px;", rtl({
       
 38011   marginLeft: -10
       
 38012 }),  true ? "" : undefined);
       
 38013 
       
 38014 var range_control_styles_thumbFocus = function thumbFocus(_ref10) {
       
 38015   var isFocused = _ref10.isFocused;
       
 38016   return /*#__PURE__*/css_browser_esm({
       
 38017     borderColor: isFocused ? colors_color('ui.borderFocus') : colors_color('darkGray.200'),
       
 38018     boxShadow: isFocused ? "\n\t\t\t\t0 0 0 1px ".concat(colors_color('ui.borderFocus'), "\n\t\t\t") : "\n\t\t\t\t0 0 0 rgba(0, 0, 0, 0)\n\t\t\t"
       
 38019   },  true ? "" : undefined);
       
 38020 };
       
 38021 
       
 38022 var Thumb = styled_base_browser_esm("span", {
       
 38023   target: "exqw8y210",
       
 38024   label: "Thumb"
       
 38025 })("align-items:center;background-color:white;border-radius:50%;border:1px solid ", colors_color('darkGray.200'), ";box-sizing:border-box;height:100%;outline:0;pointer-events:none;position:absolute;user-select:none;width:100%;", range_control_styles_thumbFocus, ";" + ( true ? "" : undefined));
       
 38026 var InputRange = styled_base_browser_esm("input", {
       
 38027   target: "exqw8y211",
       
 38028   label: "InputRange"
       
 38029 })( true ? {
       
 38030   name: "cvc9dl",
       
 38031   styles: "box-sizing:border-box;cursor:pointer;display:block;height:100%;left:0;margin:0;opacity:0;outline:none;position:absolute;right:0;top:0;width:100%;"
       
 38032 } : undefined);
       
 38033 
       
 38034 var range_control_styles_tooltipShow = function tooltipShow(_ref11) {
       
 38035   var show = _ref11.show;
       
 38036   return /*#__PURE__*/css_browser_esm({
       
 38037     opacity: show ? 1 : 0
       
 38038   },  true ? "" : undefined);
       
 38039 };
       
 38040 
       
 38041 var range_control_styles_ref2 =  true ? {
       
 38042   name: "5qqmyx",
       
 38043   styles: "top:-80%;"
       
 38044 } : undefined;
       
 38045 
       
 38046 var range_control_styles_ref3 =  true ? {
       
 38047   name: "eda4eg",
       
 38048   styles: "bottom:-80%;"
       
 38049 } : undefined;
       
 38050 
       
 38051 var tooltipPosition = function tooltipPosition(_ref12) {
       
 38052   var position = _ref12.position;
       
 38053   var isTop = position === 'top';
       
 38054 
       
 38055   if (isTop) {
       
 38056     return range_control_styles_ref2;
       
 38057   }
       
 38058 
       
 38059   return range_control_styles_ref3;
       
 38060 };
       
 38061 
       
 38062 var range_control_styles_Tooltip = styled_base_browser_esm("span", {
       
 38063   target: "exqw8y212",
       
 38064   label: "Tooltip"
       
 38065 })("background:", colors_color('ui.border'), ";border-radius:2px;box-sizing:border-box;color:white;display:inline-block;font-size:12px;min-width:32px;opacity:0;padding:4px 8px;pointer-events:none;position:absolute;text-align:center;transition:opacity 120ms ease;user-select:none;line-height:1.4;", range_control_styles_tooltipShow, ";", tooltipPosition, ";", reduceMotion('transition'), ";", rtl({
       
 38066   transform: 'translateX(-50%)'
       
 38067 }, {
       
 38068   transform: 'translateX(50%)'
       
 38069 }),  true ? "" : undefined);
       
 38070 var InputNumber = /*#__PURE__*/styled_base_browser_esm(number_control, {
       
 38071   target: "exqw8y213",
       
 38072   label: "InputNumber"
       
 38073 })("box-sizing:border-box;display:inline-block;font-size:13px;margin-top:0;width:", space(8), ";input[type='number']&{", rangeHeight, ";}", rtl({
       
 38074   marginLeft: space(2)
       
 38075 }),  true ? "" : undefined);
       
 38076 var ActionRightWrapper = styled_base_browser_esm("span", {
       
 38077   target: "exqw8y214",
       
 38078   label: "ActionRightWrapper"
       
 38079 })("box-sizing:border-box;display:block;margin-top:0;button,button.is-small{margin-left:0;", rangeHeight, ";}", rtl({
       
 38080   marginLeft: 8
       
 38081 }),  true ? "" : undefined);
       
 38082 
       
 38083 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/input-range.js
       
 38084 
       
 38085 
       
 38086 
       
 38087 
       
 38088 /**
       
 38089  * External dependencies
       
 38090  */
       
 38091 
       
 38092 /**
       
 38093  * WordPress dependencies
       
 38094  */
       
 38095 
       
 38096 
       
 38097 /**
       
 38098  * Internal dependencies
       
 38099  */
       
 38100 
       
 38101 
       
 38102 
       
 38103 
       
 38104 
       
 38105 function input_range_InputRange(_ref, ref) {
       
 38106   var describedBy = _ref.describedBy,
       
 38107       _ref$isShiftStepEnabl = _ref.isShiftStepEnabled,
       
 38108       isShiftStepEnabled = _ref$isShiftStepEnabl === void 0 ? true : _ref$isShiftStepEnabl,
       
 38109       label = _ref.label,
       
 38110       _ref$onHideTooltip = _ref.onHideTooltip,
       
 38111       onHideTooltip = _ref$onHideTooltip === void 0 ? external_this_lodash_["noop"] : _ref$onHideTooltip,
       
 38112       _ref$onMouseLeave = _ref.onMouseLeave,
       
 38113       onMouseLeave = _ref$onMouseLeave === void 0 ? external_this_lodash_["noop"] : _ref$onMouseLeave,
       
 38114       _ref$step = _ref.step,
       
 38115       step = _ref$step === void 0 ? 1 : _ref$step,
       
 38116       _ref$onBlur = _ref.onBlur,
       
 38117       onBlur = _ref$onBlur === void 0 ? external_this_lodash_["noop"] : _ref$onBlur,
       
 38118       _ref$onChange = _ref.onChange,
       
 38119       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 38120       _ref$onFocus = _ref.onFocus,
       
 38121       onFocus = _ref$onFocus === void 0 ? external_this_lodash_["noop"] : _ref$onFocus,
       
 38122       _ref$onMouseMove = _ref.onMouseMove,
       
 38123       onMouseMove = _ref$onMouseMove === void 0 ? external_this_lodash_["noop"] : _ref$onMouseMove,
       
 38124       _ref$onShowTooltip = _ref.onShowTooltip,
       
 38125       onShowTooltip = _ref$onShowTooltip === void 0 ? external_this_lodash_["noop"] : _ref$onShowTooltip,
       
 38126       _ref$shiftStep = _ref.shiftStep,
       
 38127       shiftStep = _ref$shiftStep === void 0 ? 10 : _ref$shiftStep,
       
 38128       value = _ref.value,
       
 38129       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["describedBy", "isShiftStepEnabled", "label", "onHideTooltip", "onMouseLeave", "step", "onBlur", "onChange", "onFocus", "onMouseMove", "onShowTooltip", "shiftStep", "value"]);
       
 38130 
       
 38131   var jumpStep = use_jump_step({
       
 38132     step: step,
       
 38133     shiftStep: shiftStep,
       
 38134     isShiftStepEnabled: isShiftStepEnabled
       
 38135   });
       
 38136   var hoverInteractions = useDebouncedHoverInteraction({
       
 38137     onHide: onHideTooltip,
       
 38138     onMouseLeave: onMouseLeave,
       
 38139     onMouseMove: onMouseMove,
       
 38140     onShow: onShowTooltip
       
 38141   });
       
 38142   return Object(external_this_wp_element_["createElement"])(InputRange, Object(esm_extends["a" /* default */])({}, props, hoverInteractions, {
       
 38143     "aria-describedby": describedBy,
       
 38144     "aria-label": label,
       
 38145     "aria-hidden": false,
       
 38146     onBlur: onBlur,
       
 38147     onChange: onChange,
       
 38148     onFocus: onFocus,
       
 38149     ref: ref,
       
 38150     step: jumpStep,
       
 38151     tabIndex: 0,
       
 38152     type: "range",
       
 38153     value: value
       
 38154   }));
       
 38155 }
       
 38156 
       
 38157 var input_range_ForwardedComponent = Object(external_this_wp_element_["forwardRef"])(input_range_InputRange);
       
 38158 /* harmony default export */ var input_range = (input_range_ForwardedComponent);
       
 38159 
       
 38160 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/mark.js
       
 38161 
       
 38162 
       
 38163 
       
 38164 
       
 38165 /**
       
 38166  * External dependencies
       
 38167  */
       
 38168 
       
 38169 /**
       
 38170  * Internal dependencies
       
 38171  */
       
 38172 
       
 38173 
       
 38174 function RangeMark(_ref) {
       
 38175   var className = _ref.className,
       
 38176       _ref$isFilled = _ref.isFilled,
       
 38177       isFilled = _ref$isFilled === void 0 ? false : _ref$isFilled,
       
 38178       label = _ref.label,
       
 38179       _ref$style = _ref.style,
       
 38180       style = _ref$style === void 0 ? {} : _ref$style,
       
 38181       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "isFilled", "label", "style"]);
       
 38182 
       
 38183   var classes = classnames_default()('components-range-control__mark', isFilled && 'is-filled', className);
       
 38184   var labelClasses = classnames_default()('components-range-control__mark-label', isFilled && 'is-filled');
       
 38185   return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(Mark, Object(esm_extends["a" /* default */])({}, props, {
       
 38186     "aria-hidden": "true",
       
 38187     className: classes,
       
 38188     isFilled: isFilled,
       
 38189     style: style
       
 38190   })), label && Object(external_this_wp_element_["createElement"])(MarkLabel, {
       
 38191     "aria-hidden": "true",
       
 38192     className: labelClasses,
       
 38193     isFilled: isFilled,
       
 38194     style: style
       
 38195   }, label));
       
 38196 }
       
 38197 
       
 38198 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/rail.js
       
 38199 
       
 38200 
       
 38201 
       
 38202 
       
 38203 
       
 38204 
       
 38205 function rail_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 38206 
       
 38207 function rail_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { rail_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { rail_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 38208 
       
 38209 /**
       
 38210  * Internal dependencies
       
 38211  */
       
 38212 
       
 38213 
       
 38214 function RangeRail(_ref) {
       
 38215   var _ref$disabled = _ref.disabled,
       
 38216       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
       
 38217       _ref$marks = _ref.marks,
       
 38218       marks = _ref$marks === void 0 ? false : _ref$marks,
       
 38219       _ref$min = _ref.min,
       
 38220       min = _ref$min === void 0 ? 0 : _ref$min,
       
 38221       _ref$max = _ref.max,
       
 38222       max = _ref$max === void 0 ? 100 : _ref$max,
       
 38223       _ref$step = _ref.step,
       
 38224       step = _ref$step === void 0 ? 1 : _ref$step,
       
 38225       _ref$value = _ref.value,
       
 38226       value = _ref$value === void 0 ? 0 : _ref$value,
       
 38227       restProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["disabled", "marks", "min", "max", "step", "value"]);
       
 38228 
       
 38229   return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(Rail, Object(esm_extends["a" /* default */])({
       
 38230     disabled: disabled
       
 38231   }, restProps)), marks && Object(external_this_wp_element_["createElement"])(Marks, {
       
 38232     disabled: disabled,
       
 38233     marks: marks,
       
 38234     min: min,
       
 38235     max: max,
       
 38236     step: step,
       
 38237     value: value
       
 38238   }));
       
 38239 }
       
 38240 
       
 38241 function Marks(_ref2) {
       
 38242   var _ref2$disabled = _ref2.disabled,
       
 38243       disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
       
 38244       _ref2$marks = _ref2.marks,
       
 38245       marks = _ref2$marks === void 0 ? false : _ref2$marks,
       
 38246       _ref2$min = _ref2.min,
       
 38247       min = _ref2$min === void 0 ? 0 : _ref2$min,
       
 38248       _ref2$max = _ref2.max,
       
 38249       max = _ref2$max === void 0 ? 100 : _ref2$max,
       
 38250       _ref2$step = _ref2.step,
       
 38251       step = _ref2$step === void 0 ? 1 : _ref2$step,
       
 38252       _ref2$value = _ref2.value,
       
 38253       value = _ref2$value === void 0 ? 0 : _ref2$value;
       
 38254   var marksData = useMarks({
       
 38255     marks: marks,
       
 38256     min: min,
       
 38257     max: max,
       
 38258     step: step,
       
 38259     value: value
       
 38260   });
       
 38261   return Object(external_this_wp_element_["createElement"])(MarksWrapper, {
       
 38262     "aria-hidden": "true",
       
 38263     className: "components-range-control__marks"
       
 38264   }, marksData.map(function (mark) {
       
 38265     return Object(external_this_wp_element_["createElement"])(RangeMark, Object(esm_extends["a" /* default */])({}, mark, {
       
 38266       key: mark.key,
       
 38267       "aria-hidden": "true",
       
 38268       disabled: disabled
       
 38269     }));
       
 38270   }));
       
 38271 }
       
 38272 
       
 38273 function useMarks(_ref3) {
       
 38274   var marks = _ref3.marks,
       
 38275       _ref3$min = _ref3.min,
       
 38276       min = _ref3$min === void 0 ? 0 : _ref3$min,
       
 38277       _ref3$max = _ref3.max,
       
 38278       max = _ref3$max === void 0 ? 100 : _ref3$max,
       
 38279       _ref3$step = _ref3.step,
       
 38280       step = _ref3$step === void 0 ? 1 : _ref3$step,
       
 38281       _ref3$value = _ref3.value,
       
 38282       value = _ref3$value === void 0 ? 0 : _ref3$value;
       
 38283   var isRTL = document.documentElement.dir === 'rtl';
       
 38284 
       
 38285   if (!marks) {
       
 38286     return [];
       
 38287   }
       
 38288 
       
 38289   var isCustomMarks = Array.isArray(marks);
       
 38290   var markCount = Math.round((max - min) / step);
       
 38291   var marksArray = isCustomMarks ? marks : Object(toConsumableArray["a" /* default */])(Array(markCount + 1)).map(function (_, index) {
       
 38292     return {
       
 38293       value: index
       
 38294     };
       
 38295   });
       
 38296   var enhancedMarks = marksArray.map(function (mark, index) {
       
 38297     var markValue = mark.value !== undefined ? mark.value : value;
       
 38298     var key = "mark-".concat(index);
       
 38299     var isFilled = markValue * step + min <= value;
       
 38300     var offset = "".concat(markValue / markCount * 100, "%");
       
 38301 
       
 38302     var offsetStyle = Object(defineProperty["a" /* default */])({}, isRTL ? 'right' : 'left', offset);
       
 38303 
       
 38304     return rail_objectSpread({}, mark, {
       
 38305       isFilled: isFilled,
       
 38306       key: key,
       
 38307       style: offsetStyle
       
 38308     });
       
 38309   });
       
 38310   return enhancedMarks;
       
 38311 }
       
 38312 
       
 38313 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/tooltip.js
       
 38314 
       
 38315 
       
 38316 
       
 38317 
       
 38318 
       
 38319 
       
 38320 function tooltip_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 38321 
       
 38322 function tooltip_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { tooltip_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { tooltip_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 38323 
       
 38324 /**
       
 38325  * External dependencies
       
 38326  */
       
 38327 
       
 38328 /**
       
 38329  * WordPress dependencies
       
 38330  */
       
 38331 
       
 38332 
       
 38333 /**
       
 38334  * Internal dependencies
       
 38335  */
       
 38336 
       
 38337 
       
 38338 var TOOLTIP_OFFSET_HEIGHT = 32;
       
 38339 function SimpleTooltip(_ref) {
       
 38340   var className = _ref.className,
       
 38341       inputRef = _ref.inputRef,
       
 38342       _ref$position = _ref.position,
       
 38343       positionProp = _ref$position === void 0 ? 'auto' : _ref$position,
       
 38344       _ref$show = _ref.show,
       
 38345       show = _ref$show === void 0 ? false : _ref$show,
       
 38346       _ref$style = _ref.style,
       
 38347       style = _ref$style === void 0 ? {} : _ref$style,
       
 38348       _ref$value = _ref.value,
       
 38349       value = _ref$value === void 0 ? 0 : _ref$value,
       
 38350       _ref$renderTooltipCon = _ref.renderTooltipContent,
       
 38351       renderTooltipContent = _ref$renderTooltipCon === void 0 ? function (v) {
       
 38352     return v;
       
 38353   } : _ref$renderTooltipCon,
       
 38354       _ref$zIndex = _ref.zIndex,
       
 38355       zIndex = _ref$zIndex === void 0 ? 100 : _ref$zIndex,
       
 38356       restProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "inputRef", "position", "show", "style", "value", "renderTooltipContent", "zIndex"]);
       
 38357 
       
 38358   var position = useTooltipPosition({
       
 38359     inputRef: inputRef,
       
 38360     position: positionProp
       
 38361   });
       
 38362   var classes = classnames_default()('components-simple-tooltip', className);
       
 38363 
       
 38364   var styles = tooltip_objectSpread({}, style, {
       
 38365     zIndex: zIndex
       
 38366   });
       
 38367 
       
 38368   return Object(external_this_wp_element_["createElement"])(range_control_styles_Tooltip, Object(esm_extends["a" /* default */])({}, restProps, {
       
 38369     "aria-hidden": show,
       
 38370     className: classes,
       
 38371     position: position,
       
 38372     show: show,
       
 38373     role: "tooltip",
       
 38374     style: styles
       
 38375   }), renderTooltipContent(value));
       
 38376 }
       
 38377 
       
 38378 function useTooltipPosition(_ref2) {
       
 38379   var inputRef = _ref2.inputRef,
       
 38380       positionProp = _ref2.position;
       
 38381 
       
 38382   var _useState = Object(external_this_wp_element_["useState"])('top'),
       
 38383       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 38384       position = _useState2[0],
       
 38385       setPosition = _useState2[1];
       
 38386 
       
 38387   var calculatePosition = Object(external_this_wp_element_["useCallback"])(function () {
       
 38388     if (inputRef && inputRef.current) {
       
 38389       var nextPosition = positionProp;
       
 38390 
       
 38391       if (positionProp === 'auto') {
       
 38392         var _inputRef$current$get = inputRef.current.getBoundingClientRect(),
       
 38393             top = _inputRef$current$get.top;
       
 38394 
       
 38395         var isOffscreenTop = top - TOOLTIP_OFFSET_HEIGHT < 0;
       
 38396         nextPosition = isOffscreenTop ? 'bottom' : 'top';
       
 38397       }
       
 38398 
       
 38399       setPosition(nextPosition);
       
 38400     }
       
 38401   }, [positionProp]);
       
 38402   Object(external_this_wp_element_["useEffect"])(function () {
       
 38403     calculatePosition();
       
 38404   }, [calculatePosition]);
       
 38405   Object(external_this_wp_element_["useEffect"])(function () {
       
 38406     window.addEventListener('resize', calculatePosition);
       
 38407     return function () {
       
 38408       window.removeEventListener('resize', calculatePosition);
       
 38409     };
       
 38410   });
       
 38411   return position;
       
 38412 }
       
 38413 
       
 38414 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/input-field.js
       
 38415 
       
 38416 
       
 38417 
       
 38418 
       
 38419 
       
 38420 /**
       
 38421  * External dependencies
       
 38422  */
       
 38423 
       
 38424 /**
       
 38425  * WordPress dependencies
       
 38426  */
       
 38427 
       
 38428 
       
 38429 /**
       
 38430  * Internal dependencies
       
 38431  */
       
 38432 
       
 38433 
       
 38434 
       
 38435 function input_field_InputField(_ref) {
       
 38436   var label = _ref.label,
       
 38437       _ref$onBlur = _ref.onBlur,
       
 38438       onBlur = _ref$onBlur === void 0 ? external_this_lodash_["noop"] : _ref$onBlur,
       
 38439       _ref$onChange = _ref.onChange,
       
 38440       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
       
 38441       _ref$onReset = _ref.onReset,
       
 38442       onReset = _ref$onReset === void 0 ? external_this_lodash_["noop"] : _ref$onReset,
       
 38443       _ref$onKeyDown = _ref.onKeyDown,
       
 38444       onKeyDown = _ref$onKeyDown === void 0 ? external_this_lodash_["noop"] : _ref$onKeyDown,
       
 38445       valueProp = _ref.value,
       
 38446       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "onBlur", "onChange", "onReset", "onKeyDown", "value"]);
       
 38447 
       
 38448   /**
       
 38449    * This component stores an internal (input) value state, derived from
       
 38450    * the incoming value prop.
       
 38451    *
       
 38452    * This allows for the <input /> to be updated independently before the
       
 38453    * value is applied and propagated. This independent updating action is
       
 38454    * necessary to accommodate individual keystroke values that may not
       
 38455    * be considered "valid" (e.g. within the min - max range).
       
 38456    */
       
 38457   var _useControlledState = use_controlled_state(valueProp),
       
 38458       _useControlledState2 = Object(slicedToArray["a" /* default */])(_useControlledState, 2),
       
 38459       value = _useControlledState2[0],
       
 38460       setValue = _useControlledState2[1];
       
 38461 
       
 38462   var handleOnReset = function handleOnReset(event) {
       
 38463     onReset(event);
       
 38464     setValue('');
       
 38465   };
       
 38466 
       
 38467   var handleOnCommit = function handleOnCommit(event) {
       
 38468     var nextValue = parseFloat(event.target.value);
       
 38469 
       
 38470     if (isNaN(nextValue)) {
       
 38471       handleOnReset();
       
 38472       return;
       
 38473     }
       
 38474 
       
 38475     setValue(nextValue);
       
 38476     onChange(nextValue);
       
 38477   };
       
 38478 
       
 38479   var handleOnBlur = function handleOnBlur(event) {
       
 38480     onBlur(event);
       
 38481     handleOnCommit(event);
       
 38482   };
       
 38483 
       
 38484   var handleOnChange = function handleOnChange(next) {
       
 38485     handleOnCommit({
       
 38486       target: {
       
 38487         value: next
       
 38488       }
       
 38489     });
       
 38490   };
       
 38491 
       
 38492   var handleOnKeyDown = function handleOnKeyDown(event) {
       
 38493     var keyCode = event.keyCode;
       
 38494     onKeyDown(event);
       
 38495 
       
 38496     if (keyCode === external_this_wp_keycodes_["ENTER"]) {
       
 38497       event.preventDefault();
       
 38498       handleOnCommit(event);
       
 38499     }
       
 38500   };
       
 38501 
       
 38502   return Object(external_this_wp_element_["createElement"])(InputNumber, Object(esm_extends["a" /* default */])({
       
 38503     "aria-label": label,
       
 38504     className: "components-range-control__number",
       
 38505     inputMode: "decimal",
       
 38506     onBlur: handleOnBlur,
       
 38507     onChange: handleOnChange,
       
 38508     onKeyDown: handleOnKeyDown,
       
 38509     type: "number",
       
 38510     value: value
       
 38511   }, props));
       
 38512 }
       
 38513 
 32405 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/index.js
 38514 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/range-control/index.js
 32406 
 38515 
 32407 
 38516 
 32408 
 38517 
 32409 
 38518 
       
 38519 
       
 38520 
 32410 /**
 38521 /**
 32411  * External dependencies
 38522  * External dependencies
 32412  */
 38523  */
 32413 
 38524 
 32414 
 38525 
 32416  * WordPress dependencies
 38527  * WordPress dependencies
 32417  */
 38528  */
 32418 
 38529 
 32419 
 38530 
 32420 
 38531 
       
 38532 
 32421 /**
 38533 /**
 32422  * Internal dependencies
 38534  * Internal dependencies
 32423  */
 38535  */
 32424 
 38536 
 32425 
 38537 
 32426 
 38538 
 32427 function RangeControl(_ref) {
 38539 
 32428   var className = _ref.className,
 38540 
       
 38541 
       
 38542 
       
 38543 
       
 38544 
       
 38545 
       
 38546 
       
 38547 
       
 38548 
       
 38549 function RangeControl(_ref, ref) {
       
 38550   var _inputRef$current;
       
 38551 
       
 38552   var afterIcon = _ref.afterIcon,
       
 38553       _ref$allowReset = _ref.allowReset,
       
 38554       allowReset = _ref$allowReset === void 0 ? false : _ref$allowReset,
       
 38555       beforeIcon = _ref.beforeIcon,
       
 38556       className = _ref.className,
 32429       currentInput = _ref.currentInput,
 38557       currentInput = _ref.currentInput,
       
 38558       _ref$color = _ref.color,
       
 38559       colorProp = _ref$color === void 0 ? colors_color('ui.theme') : _ref$color,
       
 38560       _ref$disabled = _ref.disabled,
       
 38561       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
       
 38562       help = _ref.help,
       
 38563       initialPosition = _ref.initialPosition,
       
 38564       _ref$isShiftStepEnabl = _ref.isShiftStepEnabled,
       
 38565       isShiftStepEnabled = _ref$isShiftStepEnabl === void 0 ? true : _ref$isShiftStepEnabl,
 32430       label = _ref.label,
 38566       label = _ref.label,
 32431       value = _ref.value,
 38567       _ref$marks = _ref.marks,
 32432       instanceId = _ref.instanceId,
 38568       marks = _ref$marks === void 0 ? false : _ref$marks,
 32433       onChange = _ref.onChange,
 38569       _ref$max = _ref.max,
 32434       beforeIcon = _ref.beforeIcon,
 38570       max = _ref$max === void 0 ? 100 : _ref$max,
 32435       afterIcon = _ref.afterIcon,
 38571       _ref$min = _ref.min,
 32436       help = _ref.help,
 38572       min = _ref$min === void 0 ? 0 : _ref$min,
 32437       allowReset = _ref.allowReset,
 38573       _ref$onBlur = _ref.onBlur,
 32438       initialPosition = _ref.initialPosition,
 38574       onBlur = _ref$onBlur === void 0 ? external_this_lodash_["noop"] : _ref$onBlur,
 32439       min = _ref.min,
 38575       _ref$onChange = _ref.onChange,
 32440       max = _ref.max,
 38576       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
 32441       setState = _ref.setState,
 38577       _ref$onFocus = _ref.onFocus,
 32442       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "currentInput", "label", "value", "instanceId", "onChange", "beforeIcon", "afterIcon", "help", "allowReset", "initialPosition", "min", "max", "setState"]);
 38578       onFocus = _ref$onFocus === void 0 ? external_this_lodash_["noop"] : _ref$onFocus,
 32443 
 38579       _ref$onMouseMove = _ref.onMouseMove,
 32444   var id = "inspector-range-control-".concat(instanceId);
 38580       onMouseMove = _ref$onMouseMove === void 0 ? external_this_lodash_["noop"] : _ref$onMouseMove,
 32445   var currentInputValue = currentInput === null ? value : currentInput;
 38581       _ref$onMouseLeave = _ref.onMouseLeave,
 32446 
 38582       onMouseLeave = _ref$onMouseLeave === void 0 ? external_this_lodash_["noop"] : _ref$onMouseLeave,
 32447   var resetValue = function resetValue() {
 38583       railColor = _ref.railColor,
 32448     resetCurrentInput();
 38584       resetFallbackValue = _ref.resetFallbackValue,
 32449     onChange();
 38585       _ref$renderTooltipCon = _ref.renderTooltipContent,
       
 38586       renderTooltipContent = _ref$renderTooltipCon === void 0 ? function (v) {
       
 38587     return v;
       
 38588   } : _ref$renderTooltipCon,
       
 38589       showTooltipProp = _ref.showTooltip,
       
 38590       _ref$shiftStep = _ref.shiftStep,
       
 38591       shiftStep = _ref$shiftStep === void 0 ? 10 : _ref$shiftStep,
       
 38592       _ref$step = _ref.step,
       
 38593       step = _ref$step === void 0 ? 1 : _ref$step,
       
 38594       trackColor = _ref.trackColor,
       
 38595       valueProp = _ref.value,
       
 38596       _ref$withInputField = _ref.withInputField,
       
 38597       withInputField = _ref$withInputField === void 0 ? true : _ref$withInputField,
       
 38598       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["afterIcon", "allowReset", "beforeIcon", "className", "currentInput", "color", "disabled", "help", "initialPosition", "isShiftStepEnabled", "label", "marks", "max", "min", "onBlur", "onChange", "onFocus", "onMouseMove", "onMouseLeave", "railColor", "resetFallbackValue", "renderTooltipContent", "showTooltip", "shiftStep", "step", "trackColor", "value", "withInputField"]);
       
 38599 
       
 38600   var isRTL = useRTL();
       
 38601 
       
 38602   var _useControlledRangeVa = useControlledRangeValue({
       
 38603     min: min,
       
 38604     max: max,
       
 38605     value: valueProp,
       
 38606     initial: initialPosition
       
 38607   }),
       
 38608       _useControlledRangeVa2 = Object(slicedToArray["a" /* default */])(_useControlledRangeVa, 2),
       
 38609       value = _useControlledRangeVa2[0],
       
 38610       setValue = _useControlledRangeVa2[1];
       
 38611 
       
 38612   var _useState = Object(external_this_wp_element_["useState"])(showTooltipProp),
       
 38613       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 38614       showTooltip = _useState2[0],
       
 38615       setShowTooltip = _useState2[1];
       
 38616 
       
 38617   var _useState3 = Object(external_this_wp_element_["useState"])(false),
       
 38618       _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
       
 38619       isFocused = _useState4[0],
       
 38620       setIsFocused = _useState4[1];
       
 38621 
       
 38622   var inputRef = Object(external_this_wp_element_["useRef"])();
       
 38623 
       
 38624   var setRef = function setRef(nodeRef) {
       
 38625     inputRef.current = nodeRef;
       
 38626 
       
 38627     if (ref) {
       
 38628       ref(nodeRef);
       
 38629     }
 32450   };
 38630   };
 32451 
 38631 
 32452   var resetCurrentInput = function resetCurrentInput() {
 38632   var isCurrentlyFocused = (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.matches(':focus');
 32453     if (currentInput !== null) {
 38633   var isThumbFocused = !disabled && isFocused;
 32454       setState({
 38634   var isValueReset = value === null;
 32455         currentInput: null
 38635   var currentValue = value !== undefined ? value : currentInput;
 32456       });
 38636   var inputSliderValue = isValueReset ? '' : currentValue;
 32457     }
 38637   var rangeFillValue = isValueReset ? floatClamp(max / 2, min, max) : value;
       
 38638   var calculatedFillValue = (value - min) / (max - min) * 100;
       
 38639   var fillValue = isValueReset ? 50 : calculatedFillValue;
       
 38640   var fillValueOffset = "".concat(Object(external_this_lodash_["clamp"])(fillValue, 0, 100), "%");
       
 38641   var classes = classnames_default()('components-range-control', className);
       
 38642   var wrapperClasses = classnames_default()('components-range-control__wrapper', !!marks && 'is-marked');
       
 38643   var id = Object(external_this_wp_compose_["useInstanceId"])(RangeControl, 'inspector-range-control');
       
 38644   var describedBy = !!help ? "".concat(id, "__help") : undefined;
       
 38645   var enableTooltip = showTooltipProp !== false && Object(external_this_lodash_["isFinite"])(value);
       
 38646 
       
 38647   var handleOnRangeChange = function handleOnRangeChange(event) {
       
 38648     var nextValue = parseFloat(event.target.value);
       
 38649     handleOnChange(nextValue);
 32458   };
 38650   };
 32459 
 38651 
 32460   var onChangeValue = function onChangeValue(event) {
 38652   var handleOnChange = function handleOnChange(nextValue) {
 32461     var newValue = event.target.value; // If the input value is invalid temporarily save it to the state,
 38653     if (isNaN(nextValue)) {
 32462     // without calling on change.
 38654       handleOnReset();
 32463 
       
 32464     if (!event.target.checkValidity()) {
       
 32465       setState({
       
 32466         currentInput: newValue
       
 32467       });
       
 32468       return;
 38655       return;
 32469     } // The input is valid, reset the local state property used to temporaly save the value,
 38656     }
 32470     // and call onChange with the new value as a number.
 38657 
 32471 
 38658     setValue(nextValue);
 32472 
 38659     onChange(nextValue);
 32473     resetCurrentInput();
       
 32474     onChange(newValue === '' ? undefined : parseFloat(newValue));
       
 32475   };
 38660   };
 32476 
 38661 
 32477   var initialSliderValue = Object(external_lodash_["isFinite"])(currentInputValue) ? currentInputValue : initialPosition || '';
 38662   var handleOnReset = function handleOnReset() {
       
 38663     var resetValue = parseFloat(resetFallbackValue);
       
 38664     var onChangeResetValue = resetValue;
       
 38665 
       
 38666     if (isNaN(resetValue)) {
       
 38667       resetValue = null;
       
 38668       onChangeResetValue = undefined;
       
 38669     }
       
 38670 
       
 38671     setValue(resetValue);
       
 38672     /**
       
 38673      * Previously, this callback would always receive undefined as
       
 38674      * an argument. This behavior is unexpected, specifically
       
 38675      * when resetFallbackValue is defined.
       
 38676      *
       
 38677      * The value of undefined is not ideal. Passing it through
       
 38678      * to internal <input /> elements would change it from a
       
 38679      * controlled component to an uncontrolled component.
       
 38680      *
       
 38681      * For now, to minimize unexpected regressions, we're going to
       
 38682      * preserve the undefined callback argument, except when a
       
 38683      * resetFallbackValue is defined.
       
 38684      */
       
 38685 
       
 38686     onChange(onChangeResetValue);
       
 38687   };
       
 38688 
       
 38689   var handleShowTooltip = function handleShowTooltip() {
       
 38690     return setShowTooltip(true);
       
 38691   };
       
 38692 
       
 38693   var handleHideTooltip = function handleHideTooltip() {
       
 38694     return setShowTooltip(false);
       
 38695   };
       
 38696 
       
 38697   var handleOnBlur = function handleOnBlur(event) {
       
 38698     onBlur(event);
       
 38699     setIsFocused(false);
       
 38700     handleHideTooltip();
       
 38701   };
       
 38702 
       
 38703   var handleOnFocus = function handleOnFocus(event) {
       
 38704     onFocus(event);
       
 38705     setIsFocused(true);
       
 38706     handleShowTooltip();
       
 38707   };
       
 38708 
       
 38709   var offsetStyle = Object(defineProperty["a" /* default */])({}, isRTL ? 'right' : 'left', fillValueOffset);
       
 38710 
 32478   return Object(external_this_wp_element_["createElement"])(base_control, {
 38711   return Object(external_this_wp_element_["createElement"])(base_control, {
       
 38712     className: classes,
 32479     label: label,
 38713     label: label,
 32480     id: id,
 38714     id: id,
 32481     help: help,
 38715     help: help
 32482     className: classnames_default()('components-range-control', className)
 38716   }, Object(external_this_wp_element_["createElement"])(range_control_styles_Root, {
 32483   }, beforeIcon && Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
 38717     className: "components-range-control__root",
       
 38718     isRTL: isRTL
       
 38719   }, beforeIcon && Object(external_this_wp_element_["createElement"])(BeforeIconWrapper, null, Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
 32484     icon: beforeIcon
 38720     icon: beforeIcon
 32485   }), Object(external_this_wp_element_["createElement"])("input", Object(esm_extends["a" /* default */])({
 38721   })), Object(external_this_wp_element_["createElement"])(range_control_styles_Wrapper, {
       
 38722     className: wrapperClasses,
       
 38723     color: colorProp,
       
 38724     marks: !!marks
       
 38725   }, Object(external_this_wp_element_["createElement"])(input_range, Object(esm_extends["a" /* default */])({}, props, {
 32486     className: "components-range-control__slider",
 38726     className: "components-range-control__slider",
       
 38727     describedBy: describedBy,
       
 38728     disabled: disabled,
 32487     id: id,
 38729     id: id,
 32488     type: "range",
 38730     isShiftStepEnabled: isShiftStepEnabled,
 32489     value: initialSliderValue,
 38731     label: label,
 32490     onChange: onChangeValue,
 38732     max: max,
 32491     "aria-describedby": !!help ? id + '__help' : undefined,
       
 32492     min: min,
 38733     min: min,
 32493     max: max
 38734     onBlur: handleOnBlur,
 32494   }, props)), afterIcon && Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
 38735     onChange: handleOnRangeChange,
       
 38736     onFocus: handleOnFocus,
       
 38737     onMouseMove: onMouseMove,
       
 38738     onMouseLeave: onMouseLeave,
       
 38739     ref: setRef,
       
 38740     shiftStep: shiftStep,
       
 38741     step: step,
       
 38742     value: inputSliderValue
       
 38743   })), Object(external_this_wp_element_["createElement"])(RangeRail, {
       
 38744     "aria-hidden": true,
       
 38745     disabled: disabled,
       
 38746     marks: marks,
       
 38747     max: max,
       
 38748     min: min,
       
 38749     railColor: railColor,
       
 38750     step: step,
       
 38751     value: rangeFillValue
       
 38752   }), Object(external_this_wp_element_["createElement"])(Track, {
       
 38753     "aria-hidden": true,
       
 38754     className: "components-range-control__track",
       
 38755     disabled: disabled,
       
 38756     style: {
       
 38757       width: fillValueOffset
       
 38758     },
       
 38759     trackColor: trackColor
       
 38760   }), Object(external_this_wp_element_["createElement"])(ThumbWrapper, {
       
 38761     style: offsetStyle
       
 38762   }, Object(external_this_wp_element_["createElement"])(Thumb, {
       
 38763     "aria-hidden": true,
       
 38764     isFocused: isThumbFocused
       
 38765   })), enableTooltip && Object(external_this_wp_element_["createElement"])(SimpleTooltip, {
       
 38766     className: "components-range-control__tooltip",
       
 38767     inputRef: inputRef,
       
 38768     renderTooltipContent: renderTooltipContent,
       
 38769     show: isCurrentlyFocused || showTooltip,
       
 38770     style: offsetStyle,
       
 38771     value: value
       
 38772   })), afterIcon && Object(external_this_wp_element_["createElement"])(AfterIconWrapper, null, Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
 32495     icon: afterIcon
 38773     icon: afterIcon
 32496   }), Object(external_this_wp_element_["createElement"])("input", Object(esm_extends["a" /* default */])({
 38774   })), withInputField && Object(external_this_wp_element_["createElement"])(input_field_InputField, {
 32497     className: "components-range-control__number",
 38775     disabled: disabled,
 32498     type: "number",
 38776     isShiftStepEnabled: isShiftStepEnabled,
 32499     onChange: onChangeValue,
 38777     label: label,
 32500     "aria-label": label,
 38778     max: max,
 32501     value: currentInputValue,
       
 32502     min: min,
 38779     min: min,
 32503     max: max,
 38780     onChange: handleOnChange,
 32504     onBlur: resetCurrentInput
 38781     onReset: handleOnReset,
 32505   }, props)), allowReset && Object(external_this_wp_element_["createElement"])(build_module_button, {
 38782     shiftStep: shiftStep,
 32506     onClick: resetValue,
 38783     step: step,
 32507     disabled: value === undefined
 38784     value: inputSliderValue
 32508   }, Object(external_this_wp_i18n_["__"])('Reset')));
 38785   }), allowReset && Object(external_this_wp_element_["createElement"])(ActionRightWrapper, null, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 32509 }
 38786     className: "components-range-control__reset",
 32510 
 38787     disabled: disabled || value === undefined,
 32511 /* harmony default export */ var range_control = (Object(external_this_wp_compose_["compose"])([external_this_wp_compose_["withInstanceId"], Object(external_this_wp_compose_["withState"])({
 38788     isSecondary: true,
 32512   currentInput: null
 38789     isSmall: true,
 32513 })])(RangeControl));
 38790     onClick: handleOnReset
       
 38791   }, Object(external_this_wp_i18n_["__"])('Reset')))));
       
 38792 }
       
 38793 
       
 38794 var range_control_ForwardedComponent = Object(external_this_wp_element_["forwardRef"])(RangeControl);
       
 38795 /* harmony default export */ var range_control = (range_control_ForwardedComponent);
 32514 
 38796 
 32515 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/font-size-picker/index.js
 38797 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/font-size-picker/index.js
 32516 
 38798 
 32517 
 38799 
 32518 /**
       
 32519  * External dependencies
       
 32520  */
       
 32521 
 38800 
 32522 /**
 38801 /**
 32523  * WordPress dependencies
 38802  * WordPress dependencies
 32524  */
 38803  */
 32525 
 38804 
 32526 
 38805 
       
 38806 
       
 38807 
 32527 /**
 38808 /**
 32528  * Internal dependencies
 38809  * Internal dependencies
 32529  */
 38810  */
 32530 
 38811 
 32531 
 38812 
 32532 
 38813 
 32533 
 38814 
 32534 
 38815 
 32535 
 38816 var DEFAULT_FONT_SIZE = 'default';
 32536 
 38817 var CUSTOM_FONT_SIZE = 'custom';
       
 38818 
       
 38819 function getSelectValueFromFontSize(fontSizes, value) {
       
 38820   if (value) {
       
 38821     var fontSizeValue = fontSizes.find(function (font) {
       
 38822       return font.size === Number(value);
       
 38823     });
       
 38824     return fontSizeValue ? fontSizeValue.slug : CUSTOM_FONT_SIZE;
       
 38825   }
       
 38826 
       
 38827   return DEFAULT_FONT_SIZE;
       
 38828 }
       
 38829 
       
 38830 function getSelectOptions(optionsArray, disableCustomFontSizes) {
       
 38831   if (disableCustomFontSizes && !optionsArray.length) {
       
 38832     return null;
       
 38833   }
       
 38834 
       
 38835   optionsArray = [{
       
 38836     slug: DEFAULT_FONT_SIZE,
       
 38837     name: Object(external_this_wp_i18n_["__"])('Default')
       
 38838   }].concat(Object(toConsumableArray["a" /* default */])(optionsArray), Object(toConsumableArray["a" /* default */])(disableCustomFontSizes ? [] : [{
       
 38839     slug: CUSTOM_FONT_SIZE,
       
 38840     name: Object(external_this_wp_i18n_["__"])('Custom')
       
 38841   }]));
       
 38842   return optionsArray.map(function (option) {
       
 38843     return {
       
 38844       key: option.slug,
       
 38845       name: option.name,
       
 38846       style: {
       
 38847         fontSize: option.size
       
 38848       }
       
 38849     };
       
 38850   });
       
 38851 }
 32537 
 38852 
 32538 function FontSizePicker(_ref) {
 38853 function FontSizePicker(_ref) {
 32539   var fallbackFontSize = _ref.fallbackFontSize,
 38854   var fallbackFontSize = _ref.fallbackFontSize,
 32540       _ref$fontSizes = _ref.fontSizes,
 38855       _ref$fontSizes = _ref.fontSizes,
 32541       fontSizes = _ref$fontSizes === void 0 ? [] : _ref$fontSizes,
 38856       fontSizes = _ref$fontSizes === void 0 ? [] : _ref$fontSizes,
 32542       _ref$disableCustomFon = _ref.disableCustomFontSizes,
 38857       _ref$disableCustomFon = _ref.disableCustomFontSizes,
 32543       disableCustomFontSizes = _ref$disableCustomFon === void 0 ? false : _ref$disableCustomFon,
 38858       disableCustomFontSizes = _ref$disableCustomFon === void 0 ? false : _ref$disableCustomFon,
 32544       onChange = _ref.onChange,
 38859       _onChange = _ref.onChange,
 32545       value = _ref.value,
 38860       value = _ref.value,
 32546       _ref$withSlider = _ref.withSlider,
 38861       _ref$withSlider = _ref.withSlider,
 32547       withSlider = _ref$withSlider === void 0 ? false : _ref$withSlider;
 38862       withSlider = _ref$withSlider === void 0 ? false : _ref$withSlider;
 32548 
 38863   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(FontSizePicker);
 32549   if (disableCustomFontSizes && !fontSizes.length) {
 38864   var options = Object(external_this_wp_element_["useMemo"])(function () {
       
 38865     return getSelectOptions(fontSizes, disableCustomFontSizes);
       
 38866   }, [fontSizes, disableCustomFontSizes]);
       
 38867 
       
 38868   if (!options) {
 32550     return null;
 38869     return null;
 32551   }
 38870   }
 32552 
 38871 
 32553   var onChangeValue = function onChangeValue(event) {
 38872   var selectedFontSizeSlug = getSelectValueFromFontSize(fontSizes, value);
 32554     var newValue = event.target.value;
 38873   var fontSizePickerNumberId = "components-font-size-picker__number#".concat(instanceId);
 32555 
 38874   return Object(external_this_wp_element_["createElement"])("fieldset", {
 32556     if (newValue === '') {
 38875     className: "components-font-size-picker"
 32557       onChange(undefined);
 38876   }, Object(external_this_wp_element_["createElement"])(visually_hidden, {
 32558       return;
 38877     as: "legend"
 32559     }
 38878   }, Object(external_this_wp_i18n_["__"])('Font size')), Object(external_this_wp_element_["createElement"])("div", {
 32560 
 38879     className: "components-font-size-picker__controls"
 32561     onChange(Number(newValue));
 38880   }, fontSizes.length > 0 && Object(external_this_wp_element_["createElement"])(CustomSelectControl, {
 32562   };
 38881     className: 'components-font-size-picker__select',
 32563 
 38882     label: Object(external_this_wp_i18n_["__"])('Preset size'),
 32564   var currentFont = fontSizes.find(function (font) {
 38883     options: options,
 32565     return font.size === value;
 38884     value: options.find(function (option) {
 32566   });
 38885       return option.key === selectedFontSizeSlug;
 32567 
 38886     }),
 32568   var currentFontSizeName = currentFont && currentFont.name || !value && Object(external_this_wp_i18n_["_x"])('Normal', 'font size name') || Object(external_this_wp_i18n_["_x"])('Custom', 'font size name');
 38887     onChange: function onChange(_ref2) {
 32569 
 38888       var selectedItem = _ref2.selectedItem;
 32570   return Object(external_this_wp_element_["createElement"])(base_control, {
 38889       var selectedValue = selectedItem.style && selectedItem.style.fontSize;
 32571     label: Object(external_this_wp_i18n_["__"])('Font Size')
 38890 
 32572   }, Object(external_this_wp_element_["createElement"])("div", {
 38891       _onChange(Number(selectedValue));
 32573     className: "components-font-size-picker__buttons"
 38892     }
 32574   }, fontSizes.length > 0 && Object(external_this_wp_element_["createElement"])(dropdown, {
 38893   }), !withSlider && !disableCustomFontSizes && Object(external_this_wp_element_["createElement"])("div", {
 32575     className: "components-font-size-picker__dropdown",
 38894     className: "components-font-size-picker__number-container"
 32576     contentClassName: "components-font-size-picker__dropdown-content",
 38895   }, Object(external_this_wp_element_["createElement"])("label", {
 32577     position: "bottom",
 38896     htmlFor: fontSizePickerNumberId
 32578     renderToggle: function renderToggle(_ref2) {
 38897   }, Object(external_this_wp_i18n_["__"])('Custom')), Object(external_this_wp_element_["createElement"])("input", {
 32579       var isOpen = _ref2.isOpen,
 38898     id: fontSizePickerNumberId,
 32580           onToggle = _ref2.onToggle;
 38899     className: "components-font-size-picker__number",
 32581       return Object(external_this_wp_element_["createElement"])(build_module_button, {
 38900     type: "number",
 32582         className: "components-font-size-picker__selector",
 38901     min: 1,
 32583         isLarge: true,
 38902     onChange: function onChange(event) {
 32584         onClick: onToggle,
 38903       _onChange(Number(event.target.value));
 32585         "aria-expanded": isOpen,
       
 32586         "aria-label": Object(external_this_wp_i18n_["sprintf"])(
       
 32587         /* translators: %s: font size name */
       
 32588         Object(external_this_wp_i18n_["__"])('Font size: %s'), currentFontSizeName)
       
 32589       }, currentFontSizeName);
       
 32590     },
 38904     },
 32591     renderContent: function renderContent() {
 38905     "aria-label": Object(external_this_wp_i18n_["__"])('Custom'),
 32592       return Object(external_this_wp_element_["createElement"])(menu, null, Object(external_lodash_["map"])(fontSizes, function (_ref3) {
       
 32593         var name = _ref3.name,
       
 32594             size = _ref3.size,
       
 32595             slug = _ref3.slug;
       
 32596         var isSelected = value === size || !value && slug === 'normal';
       
 32597         return Object(external_this_wp_element_["createElement"])(build_module_button, {
       
 32598           key: slug,
       
 32599           onClick: function onClick() {
       
 32600             return onChange(slug === 'normal' ? undefined : size);
       
 32601           },
       
 32602           className: "is-font-".concat(slug),
       
 32603           role: "menuitemradio",
       
 32604           "aria-checked": isSelected
       
 32605         }, isSelected && Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
       
 32606           icon: "saved"
       
 32607         }), Object(external_this_wp_element_["createElement"])("span", {
       
 32608           className: "components-font-size-picker__dropdown-text-size",
       
 32609           style: {
       
 32610             fontSize: size
       
 32611           }
       
 32612         }, name));
       
 32613       }));
       
 32614     }
       
 32615   }), !withSlider && !disableCustomFontSizes && Object(external_this_wp_element_["createElement"])("input", {
       
 32616     className: "components-range-control__number",
       
 32617     type: "number",
       
 32618     onChange: onChangeValue,
       
 32619     "aria-label": Object(external_this_wp_i18n_["__"])('Custom font size'),
       
 32620     value: value || ''
 38906     value: value || ''
 32621   }), Object(external_this_wp_element_["createElement"])(build_module_button, {
 38907   })), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 32622     className: "components-color-palette__clear",
 38908     className: "components-color-palette__clear",
 32623     type: "button",
       
 32624     disabled: value === undefined,
 38909     disabled: value === undefined,
 32625     onClick: function onClick() {
 38910     onClick: function onClick() {
 32626       return onChange(undefined);
 38911       _onChange(undefined);
 32627     },
 38912     },
 32628     isSmall: true,
 38913     isSmall: true,
 32629     isDefault: true
 38914     isSecondary: true
 32630   }, Object(external_this_wp_i18n_["__"])('Reset'))), withSlider && Object(external_this_wp_element_["createElement"])(range_control, {
 38915   }, Object(external_this_wp_i18n_["__"])('Reset'))), withSlider && Object(external_this_wp_element_["createElement"])(range_control, {
 32631     className: "components-font-size-picker__custom-input",
 38916     className: "components-font-size-picker__custom-input",
 32632     label: Object(external_this_wp_i18n_["__"])('Custom Size'),
 38917     label: Object(external_this_wp_i18n_["__"])('Custom Size'),
 32633     value: value || '',
 38918     value: value || '',
 32634     initialPosition: fallbackFontSize,
 38919     initialPosition: fallbackFontSize,
 32635     onChange: onChange,
 38920     onChange: function onChange(newValue) {
       
 38921       _onChange(newValue);
       
 38922     },
 32636     min: 12,
 38923     min: 12,
 32637     max: 100,
 38924     max: 100,
 32638     beforeIcon: "editor-textcolor",
 38925     beforeIcon: text_color["a" /* default */],
 32639     afterIcon: "editor-textcolor"
 38926     afterIcon: text_color["a" /* default */]
 32640   }));
 38927   }));
 32641 }
 38928 }
 32642 
 38929 
 32643 /* harmony default export */ var font_size_picker = (FontSizePicker);
       
 32644 
       
 32645 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-file-upload/index.js
 38930 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-file-upload/index.js
 32646 
 38931 
 32647 
 38932 
 32648 
 38933 
 32649 
 38934 
 32650 
       
 32651 
       
 32652 
       
 32653 
       
 32654 
       
 32655 
       
 32656 /**
 38935 /**
 32657  * WordPress dependencies
 38936  * WordPress dependencies
 32658  */
 38937  */
 32659 
 38938 
 32660 /**
 38939 /**
 32661  * Internal dependencies
 38940  * Internal dependencies
 32662  */
 38941  */
 32663 
 38942 
 32664 
 38943 
 32665 
 38944 
 32666 var form_file_upload_FormFileUpload =
 38945 function FormFileUpload(_ref) {
 32667 /*#__PURE__*/
 38946   var accept = _ref.accept,
 32668 function (_Component) {
 38947       children = _ref.children,
 32669   Object(inherits["a" /* default */])(FormFileUpload, _Component);
 38948       _ref$multiple = _ref.multiple,
 32670 
 38949       multiple = _ref$multiple === void 0 ? false : _ref$multiple,
 32671   function FormFileUpload() {
 38950       onChange = _ref.onChange,
 32672     var _this;
 38951       render = _ref.render,
 32673 
 38952       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["accept", "children", "multiple", "onChange", "render"]);
 32674     Object(classCallCheck["a" /* default */])(this, FormFileUpload);
 38953 
 32675 
 38954   var ref = Object(external_this_wp_element_["useRef"])();
 32676     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FormFileUpload).apply(this, arguments));
 38955 
 32677     _this.openFileDialog = _this.openFileDialog.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 38956   var openFileDialog = function openFileDialog() {
 32678     _this.bindInput = _this.bindInput.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 38957     ref.current.click();
 32679     return _this;
 38958   };
 32680   }
 38959 
 32681 
 38960   var ui = render ? render({
 32682   Object(createClass["a" /* default */])(FormFileUpload, [{
 38961     openFileDialog: openFileDialog
 32683     key: "openFileDialog",
 38962   }) : Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
 32684     value: function openFileDialog() {
 38963     onClick: openFileDialog
 32685       this.input.click();
 38964   }, props), children);
 32686     }
 38965   return Object(external_this_wp_element_["createElement"])("div", {
 32687   }, {
 38966     className: "components-form-file-upload"
 32688     key: "bindInput",
 38967   }, ui, Object(external_this_wp_element_["createElement"])("input", {
 32689     value: function bindInput(ref) {
 38968     type: "file",
 32690       this.input = ref;
 38969     ref: ref,
 32691     }
 38970     multiple: multiple,
 32692   }, {
 38971     style: {
 32693     key: "render",
 38972       display: 'none'
 32694     value: function render() {
 38973     },
 32695       var _this$props = this.props,
 38974     accept: accept,
 32696           children = _this$props.children,
 38975     onChange: onChange
 32697           _this$props$multiple = _this$props.multiple,
 38976   }));
 32698           multiple = _this$props$multiple === void 0 ? false : _this$props$multiple,
 38977 }
 32699           accept = _this$props.accept,
 38978 
 32700           onChange = _this$props.onChange,
 38979 /* harmony default export */ var form_file_upload = (FormFileUpload);
 32701           _this$props$icon = _this$props.icon,
       
 32702           icon = _this$props$icon === void 0 ? 'upload' : _this$props$icon,
       
 32703           props = Object(objectWithoutProperties["a" /* default */])(_this$props, ["children", "multiple", "accept", "onChange", "icon"]);
       
 32704 
       
 32705       return Object(external_this_wp_element_["createElement"])("div", {
       
 32706         className: "components-form-file-upload"
       
 32707       }, Object(external_this_wp_element_["createElement"])(icon_button, Object(esm_extends["a" /* default */])({
       
 32708         icon: icon,
       
 32709         onClick: this.openFileDialog
       
 32710       }, props), children), Object(external_this_wp_element_["createElement"])("input", {
       
 32711         type: "file",
       
 32712         ref: this.bindInput,
       
 32713         multiple: multiple,
       
 32714         style: {
       
 32715           display: 'none'
       
 32716         },
       
 32717         accept: accept,
       
 32718         onChange: onChange
       
 32719       }));
       
 32720     }
       
 32721   }]);
       
 32722 
       
 32723   return FormFileUpload;
       
 32724 }(external_this_wp_element_["Component"]);
       
 32725 
       
 32726 /* harmony default export */ var form_file_upload = (form_file_upload_FormFileUpload);
       
 32727 
 38980 
 32728 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-toggle/index.js
 38981 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-toggle/index.js
 32729 
 38982 
 32730 
 38983 
 32731 
 38984 
 32732 
 38985 
 32733 /**
 38986 /**
 32734  * External dependencies
 38987  * External dependencies
 32735  */
       
 32736 
       
 32737 
       
 32738 /**
       
 32739  * Internal dependencies
       
 32740  */
 38988  */
 32741 
 38989 
 32742 
 38990 
 32743 
 38991 
 32744 function FormToggle(_ref) {
 38992 function FormToggle(_ref) {
 32745   var className = _ref.className,
 38993   var className = _ref.className,
 32746       checked = _ref.checked,
 38994       checked = _ref.checked,
 32747       id = _ref.id,
 38995       id = _ref.id,
 32748       _ref$onChange = _ref.onChange,
 38996       _ref$onChange = _ref.onChange,
 32749       onChange = _ref$onChange === void 0 ? external_lodash_["noop"] : _ref$onChange,
 38997       onChange = _ref$onChange === void 0 ? external_this_lodash_["noop"] : _ref$onChange,
 32750       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "checked", "id", "onChange"]);
 38998       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "checked", "id", "onChange"]);
 32751 
 38999 
 32752   var wrapperClasses = classnames_default()('components-form-toggle', className, {
 39000   var wrapperClasses = classnames_default()('components-form-toggle', className, {
 32753     'is-checked': checked
 39001     'is-checked': checked
 32754   });
 39002   });
 32762     onChange: onChange
 39010     onChange: onChange
 32763   }, props)), Object(external_this_wp_element_["createElement"])("span", {
 39011   }, props)), Object(external_this_wp_element_["createElement"])("span", {
 32764     className: "components-form-toggle__track"
 39012     className: "components-form-toggle__track"
 32765   }), Object(external_this_wp_element_["createElement"])("span", {
 39013   }), Object(external_this_wp_element_["createElement"])("span", {
 32766     className: "components-form-toggle__thumb"
 39014     className: "components-form-toggle__thumb"
 32767   }), checked ? Object(external_this_wp_element_["createElement"])(svg_SVG, {
 39015   }));
 32768     className: "components-form-toggle__on",
       
 32769     width: "2",
       
 32770     height: "6",
       
 32771     xmlns: "http://www.w3.org/2000/svg",
       
 32772     viewBox: "0 0 2 6"
       
 32773   }, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 32774     d: "M0 0h2v6H0z"
       
 32775   })) : Object(external_this_wp_element_["createElement"])(svg_SVG, {
       
 32776     className: "components-form-toggle__off",
       
 32777     width: "6",
       
 32778     height: "6",
       
 32779     "aria-hidden": "true",
       
 32780     role: "img",
       
 32781     focusable: "false",
       
 32782     xmlns: "http://www.w3.org/2000/svg",
       
 32783     viewBox: "0 0 6 6"
       
 32784   }, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 32785     d: "M3 1.5c.8 0 1.5.7 1.5 1.5S3.8 4.5 3 4.5 1.5 3.8 1.5 3 2.2 1.5 3 1.5M3 0C1.3 0 0 1.3 0 3s1.3 3 3 3 3-1.3 3-3-1.3-3-3-3z"
       
 32786   })));
       
 32787 }
 39016 }
 32788 
 39017 
 32789 /* harmony default export */ var form_toggle = (FormToggle);
 39018 /* harmony default export */ var form_toggle = (FormToggle);
 32790 
 39019 
 32791 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
 39020 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/typeof.js
 32792 var esm_typeof = __webpack_require__(32);
 39021 var esm_typeof = __webpack_require__(40);
       
 39022 
       
 39023 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/close-circle-filled.js
       
 39024 
       
 39025 
       
 39026 /**
       
 39027  * WordPress dependencies
       
 39028  */
       
 39029 
       
 39030 var closeCircleFilled = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
       
 39031   xmlns: "http://www.w3.org/2000/svg",
       
 39032   viewBox: "-2 -2 24 24"
       
 39033 }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], {
       
 39034   d: "M10 2c4.42 0 8 3.58 8 8s-3.58 8-8 8-8-3.58-8-8 3.58-8 8-8zm5 11l-3-3 3-3-2-2-3 3-3-3-2 2 3 3-3 3 2 2 3-3 3 3z"
       
 39035 }));
       
 39036 /* harmony default export */ var close_circle_filled = (closeCircleFilled);
 32793 
 39037 
 32794 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/token.js
 39038 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/token.js
 32795 
 39039 
 32796 
 39040 
 32797 /**
 39041 /**
 32800 
 39044 
 32801 
 39045 
 32802 /**
 39046 /**
 32803  * WordPress dependencies
 39047  * WordPress dependencies
 32804  */
 39048  */
       
 39049 
 32805 
 39050 
 32806 
 39051 
 32807 
 39052 
 32808 /**
 39053 /**
 32809  * Internal dependencies
 39054  * Internal dependencies
 32819       _ref$isBorderless = _ref.isBorderless,
 39064       _ref$isBorderless = _ref.isBorderless,
 32820       isBorderless = _ref$isBorderless === void 0 ? false : _ref$isBorderless,
 39065       isBorderless = _ref$isBorderless === void 0 ? false : _ref$isBorderless,
 32821       _ref$disabled = _ref.disabled,
 39066       _ref$disabled = _ref.disabled,
 32822       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
 39067       disabled = _ref$disabled === void 0 ? false : _ref$disabled,
 32823       _ref$onClickRemove = _ref.onClickRemove,
 39068       _ref$onClickRemove = _ref.onClickRemove,
 32824       onClickRemove = _ref$onClickRemove === void 0 ? external_lodash_["noop"] : _ref$onClickRemove,
 39069       onClickRemove = _ref$onClickRemove === void 0 ? external_this_lodash_["noop"] : _ref$onClickRemove,
 32825       onMouseEnter = _ref.onMouseEnter,
 39070       onMouseEnter = _ref.onMouseEnter,
 32826       onMouseLeave = _ref.onMouseLeave,
 39071       onMouseLeave = _ref.onMouseLeave,
 32827       messages = _ref.messages,
 39072       messages = _ref.messages,
 32828       termPosition = _ref.termPosition,
 39073       termPosition = _ref.termPosition,
 32829       termsCount = _ref.termsCount,
 39074       termsCount = _ref.termsCount;
 32830       instanceId = _ref.instanceId;
 39075   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(Token);
 32831   var tokenClasses = classnames_default()('components-form-token-field__token', {
 39076   var tokenClasses = classnames_default()('components-form-token-field__token', {
 32832     'is-error': 'error' === status,
 39077     'is-error': 'error' === status,
 32833     'is-success': 'success' === status,
 39078     'is-success': 'success' === status,
 32834     'is-validating': 'validating' === status,
 39079     'is-validating': 'validating' === status,
 32835     'is-borderless': isBorderless,
 39080     'is-borderless': isBorderless,
 32852     onMouseLeave: onMouseLeave,
 39097     onMouseLeave: onMouseLeave,
 32853     title: title
 39098     title: title
 32854   }, Object(external_this_wp_element_["createElement"])("span", {
 39099   }, Object(external_this_wp_element_["createElement"])("span", {
 32855     className: "components-form-token-field__token-text",
 39100     className: "components-form-token-field__token-text",
 32856     id: "components-form-token-field__token-text-".concat(instanceId)
 39101     id: "components-form-token-field__token-text-".concat(instanceId)
 32857   }, Object(external_this_wp_element_["createElement"])("span", {
 39102   }, Object(external_this_wp_element_["createElement"])(visually_hidden, {
 32858     className: "screen-reader-text"
 39103     as: "span"
 32859   }, termPositionAndCount), Object(external_this_wp_element_["createElement"])("span", {
 39104   }, termPositionAndCount), Object(external_this_wp_element_["createElement"])("span", {
 32860     "aria-hidden": "true"
 39105     "aria-hidden": "true"
 32861   }, transformedValue)), Object(external_this_wp_element_["createElement"])(icon_button, {
 39106   }, transformedValue)), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 32862     className: "components-form-token-field__remove-token",
 39107     className: "components-form-token-field__remove-token",
 32863     icon: "dismiss",
 39108     icon: close_circle_filled,
 32864     onClick: !disabled && onClick,
 39109     onClick: !disabled && onClick,
 32865     label: messages.remove,
 39110     label: messages.remove,
 32866     "aria-describedby": "components-form-token-field__token-text-".concat(instanceId)
 39111     "aria-describedby": "components-form-token-field__token-text-".concat(instanceId)
 32867   }));
 39112   }));
 32868 }
 39113 }
 32869 
 39114 
 32870 /* harmony default export */ var form_token_field_token = (Object(external_this_wp_compose_["withInstanceId"])(Token));
       
 32871 
       
 32872 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/token-input.js
 39115 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/token-input.js
 32873 
 39116 
 32874 
 39117 
 32875 
 39118 
 32876 
 39119 
 32878 
 39121 
 32879 
 39122 
 32880 
 39123 
 32881 
 39124 
 32882 
 39125 
       
 39126 function token_input_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (token_input_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 39127 
       
 39128 function token_input_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 39129 
 32883 /**
 39130 /**
 32884  * WordPress dependencies
 39131  * WordPress dependencies
 32885  */
 39132  */
 32886 
 39133 
 32887 
 39134 
 32888 var token_input_TokenInput =
 39135 var token_input_TokenInput = /*#__PURE__*/function (_Component) {
 32889 /*#__PURE__*/
       
 32890 function (_Component) {
       
 32891   Object(inherits["a" /* default */])(TokenInput, _Component);
 39136   Object(inherits["a" /* default */])(TokenInput, _Component);
       
 39137 
       
 39138   var _super = token_input_createSuper(TokenInput);
 32892 
 39139 
 32893   function TokenInput() {
 39140   function TokenInput() {
 32894     var _this;
 39141     var _this;
 32895 
 39142 
 32896     Object(classCallCheck["a" /* default */])(this, TokenInput);
 39143     Object(classCallCheck["a" /* default */])(this, TokenInput);
 32897 
 39144 
 32898     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(TokenInput).apply(this, arguments));
 39145     _this = _super.apply(this, arguments);
 32899     _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39146     _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32900     _this.bindInput = _this.bindInput.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39147     _this.bindInput = _this.bindInput.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32901     return _this;
 39148     return _this;
 32902   }
 39149   }
 32903 
 39150 
 32904   Object(createClass["a" /* default */])(TokenInput, [{
 39151   Object(createClass["a" /* default */])(TokenInput, [{
 32905     key: "focus",
 39152     key: "focus",
 32957 }(external_this_wp_element_["Component"]);
 39204 }(external_this_wp_element_["Component"]);
 32958 
 39205 
 32959 /* harmony default export */ var token_input = (token_input_TokenInput);
 39206 /* harmony default export */ var token_input = (token_input_TokenInput);
 32960 
 39207 
 32961 // EXTERNAL MODULE: ./node_modules/dom-scroll-into-view/lib/index.js
 39208 // EXTERNAL MODULE: ./node_modules/dom-scroll-into-view/lib/index.js
 32962 var lib = __webpack_require__(67);
 39209 var lib = __webpack_require__(123);
 32963 var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
 39210 var lib_default = /*#__PURE__*/__webpack_require__.n(lib);
 32964 
 39211 
 32965 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/suggestions-list.js
 39212 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/suggestions-list.js
 32966 
 39213 
 32967 
 39214 
 32969 
 39216 
 32970 
 39217 
 32971 
 39218 
 32972 
 39219 
 32973 
 39220 
       
 39221 function suggestions_list_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (suggestions_list_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 39222 
       
 39223 function suggestions_list_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 39224 
 32974 /**
 39225 /**
 32975  * External dependencies
 39226  * External dependencies
 32976  */
 39227  */
 32977 
 39228 
 32978 
 39229 
 32981  * WordPress dependencies
 39232  * WordPress dependencies
 32982  */
 39233  */
 32983 
 39234 
 32984 
 39235 
 32985 
 39236 
 32986 var suggestions_list_SuggestionsList =
 39237 
 32987 /*#__PURE__*/
 39238 var suggestions_list_SuggestionsList = /*#__PURE__*/function (_Component) {
 32988 function (_Component) {
       
 32989   Object(inherits["a" /* default */])(SuggestionsList, _Component);
 39239   Object(inherits["a" /* default */])(SuggestionsList, _Component);
       
 39240 
       
 39241   var _super = suggestions_list_createSuper(SuggestionsList);
 32990 
 39242 
 32991   function SuggestionsList() {
 39243   function SuggestionsList() {
 32992     var _this;
 39244     var _this;
 32993 
 39245 
 32994     Object(classCallCheck["a" /* default */])(this, SuggestionsList);
 39246     Object(classCallCheck["a" /* default */])(this, SuggestionsList);
 32995 
 39247 
 32996     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(SuggestionsList).apply(this, arguments));
 39248     _this = _super.apply(this, arguments);
 32997     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39249     _this.handleMouseDown = _this.handleMouseDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32998     _this.bindList = _this.bindList.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39250     _this.bindList = _this.bindList.bind(Object(assertThisInitialized["a" /* default */])(_this));
 32999     return _this;
 39251     return _this;
 33000   }
 39252   }
 33001 
 39253 
 33002   Object(createClass["a" /* default */])(SuggestionsList, [{
 39254   Object(createClass["a" /* default */])(SuggestionsList, [{
 33003     key: "componentDidUpdate",
 39255     key: "componentDidUpdate",
 33009       if (this.props.selectedIndex > -1 && this.props.scrollIntoView) {
 39261       if (this.props.selectedIndex > -1 && this.props.scrollIntoView) {
 33010         this.scrollingIntoView = true;
 39262         this.scrollingIntoView = true;
 33011         lib_default()(this.list.children[this.props.selectedIndex], this.list, {
 39263         lib_default()(this.list.children[this.props.selectedIndex], this.list, {
 33012           onlyScrollIfNeeded: true
 39264           onlyScrollIfNeeded: true
 33013         });
 39265         });
 33014         setTimeout(function () {
 39266         this.props.setTimeout(function () {
 33015           _this2.scrollingIntoView = false;
 39267           _this2.scrollingIntoView = false;
 33016         }, 100);
 39268         }, 100);
 33017       }
 39269       }
 33018     }
 39270     }
 33019   }, {
 39271   }, {
 33076       return Object(external_this_wp_element_["createElement"])("ul", {
 39328       return Object(external_this_wp_element_["createElement"])("ul", {
 33077         ref: this.bindList,
 39329         ref: this.bindList,
 33078         className: "components-form-token-field__suggestions-list",
 39330         className: "components-form-token-field__suggestions-list",
 33079         id: "components-form-token-suggestions-".concat(this.props.instanceId),
 39331         id: "components-form-token-suggestions-".concat(this.props.instanceId),
 33080         role: "listbox"
 39332         role: "listbox"
 33081       }, Object(external_lodash_["map"])(this.props.suggestions, function (suggestion, index) {
 39333       }, Object(external_this_lodash_["map"])(this.props.suggestions, function (suggestion, index) {
 33082         var match = _this5.computeSuggestionMatch(suggestion);
 39334         var match = _this5.computeSuggestionMatch(suggestion);
 33083 
 39335 
 33084         var classeName = classnames_default()('components-form-token-field__suggestion', {
 39336         var classeName = classnames_default()('components-form-token-field__suggestion', {
 33085           'is-selected': index === _this5.props.selectedIndex
 39337           'is-selected': index === _this5.props.selectedIndex
 33086         });
 39338         });
 33087         /* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */
 39339         /* eslint-disable jsx-a11y/click-events-have-key-events */
 33088 
 39340 
 33089         return Object(external_this_wp_element_["createElement"])("li", {
 39341         return Object(external_this_wp_element_["createElement"])("li", {
 33090           id: "components-form-token-suggestions-".concat(_this5.props.instanceId, "-").concat(index),
 39342           id: "components-form-token-suggestions-".concat(_this5.props.instanceId, "-").concat(index),
 33091           role: "option",
 39343           role: "option",
 33092           className: classeName,
 39344           className: classeName,
 33098         }, match ? Object(external_this_wp_element_["createElement"])("span", {
 39350         }, match ? Object(external_this_wp_element_["createElement"])("span", {
 33099           "aria-label": _this5.props.displayTransform(suggestion)
 39351           "aria-label": _this5.props.displayTransform(suggestion)
 33100         }, match.suggestionBeforeMatch, Object(external_this_wp_element_["createElement"])("strong", {
 39352         }, match.suggestionBeforeMatch, Object(external_this_wp_element_["createElement"])("strong", {
 33101           className: "components-form-token-field__suggestion-match"
 39353           className: "components-form-token-field__suggestion-match"
 33102         }, match.suggestionMatch), match.suggestionAfterMatch) : _this5.props.displayTransform(suggestion));
 39354         }, match.suggestionMatch), match.suggestionAfterMatch) : _this5.props.displayTransform(suggestion));
 33103         /* eslint-enable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */
 39355         /* eslint-enable jsx-a11y/click-events-have-key-events */
 33104       }));
 39356       }));
 33105     }
 39357     }
 33106   }]);
 39358   }]);
 33107 
 39359 
 33108   return SuggestionsList;
 39360   return SuggestionsList;
 33112   match: '',
 39364   match: '',
 33113   onHover: function onHover() {},
 39365   onHover: function onHover() {},
 33114   onSelect: function onSelect() {},
 39366   onSelect: function onSelect() {},
 33115   suggestions: Object.freeze([])
 39367   suggestions: Object.freeze([])
 33116 };
 39368 };
 33117 /* harmony default export */ var suggestions_list = (suggestions_list_SuggestionsList);
 39369 /* harmony default export */ var suggestions_list = (Object(external_this_wp_compose_["withSafeTimeout"])(suggestions_list_SuggestionsList));
 33118 
 39370 
 33119 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/index.js
 39371 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/form-token-field/index.js
 33120 
 39372 
 33121 
 39373 
 33122 
 39374 
 33125 
 39377 
 33126 
 39378 
 33127 
 39379 
 33128 
 39380 
 33129 
 39381 
       
 39382 function form_token_field_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 39383 
       
 39384 function form_token_field_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { form_token_field_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { form_token_field_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 39385 
       
 39386 function form_token_field_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (form_token_field_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 39387 
       
 39388 function form_token_field_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 39389 
 33130 /**
 39390 /**
 33131  * External dependencies
 39391  * External dependencies
 33132  */
 39392  */
 33133 
 39393 
 33134 
 39394 
 33138 
 39398 
 33139 
 39399 
 33140 
 39400 
 33141 
 39401 
 33142 
 39402 
       
 39403 
 33143 /**
 39404 /**
 33144  * Internal dependencies
 39405  * Internal dependencies
 33145  */
 39406  */
 33146 
 39407 
 33147 
 39408 
 33148 
 39409 
 33149 
 39410 
 33150 
 39411 
 33151 var initialState = {
 39412 var form_token_field_initialState = {
 33152   incompleteTokenValue: '',
 39413   incompleteTokenValue: '',
 33153   inputOffsetFromEnd: 0,
 39414   inputOffsetFromEnd: 0,
 33154   isActive: false,
 39415   isActive: false,
 33155   isExpanded: false,
 39416   isExpanded: false,
 33156   selectedSuggestionIndex: -1,
 39417   selectedSuggestionIndex: -1,
 33157   selectedSuggestionScroll: false
 39418   selectedSuggestionScroll: false
 33158 };
 39419 };
 33159 
 39420 
 33160 var form_token_field_FormTokenField =
 39421 var form_token_field_FormTokenField = /*#__PURE__*/function (_Component) {
 33161 /*#__PURE__*/
       
 33162 function (_Component) {
       
 33163   Object(inherits["a" /* default */])(FormTokenField, _Component);
 39422   Object(inherits["a" /* default */])(FormTokenField, _Component);
       
 39423 
       
 39424   var _super = form_token_field_createSuper(FormTokenField);
 33164 
 39425 
 33165   function FormTokenField() {
 39426   function FormTokenField() {
 33166     var _this;
 39427     var _this;
 33167 
 39428 
 33168     Object(classCallCheck["a" /* default */])(this, FormTokenField);
 39429     Object(classCallCheck["a" /* default */])(this, FormTokenField);
 33169 
 39430 
 33170     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FormTokenField).apply(this, arguments));
 39431     _this = _super.apply(this, arguments);
 33171     _this.state = initialState;
 39432     _this.state = form_token_field_initialState;
 33172     _this.onKeyDown = _this.onKeyDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39433     _this.onKeyDown = _this.onKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33173     _this.onKeyPress = _this.onKeyPress.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39434     _this.onKeyPress = _this.onKeyPress.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33174     _this.onFocus = _this.onFocus.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39435     _this.onFocus = _this.onFocus.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33175     _this.onBlur = _this.onBlur.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39436     _this.onBlur = _this.onBlur.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33176     _this.deleteTokenBeforeInput = _this.deleteTokenBeforeInput.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39437     _this.deleteTokenBeforeInput = _this.deleteTokenBeforeInput.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33177     _this.deleteTokenAfterInput = _this.deleteTokenAfterInput.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39438     _this.deleteTokenAfterInput = _this.deleteTokenAfterInput.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33178     _this.addCurrentToken = _this.addCurrentToken.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39439     _this.addCurrentToken = _this.addCurrentToken.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33179     _this.onContainerTouched = _this.onContainerTouched.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39440     _this.onContainerTouched = _this.onContainerTouched.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33180     _this.renderToken = _this.renderToken.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39441     _this.renderToken = _this.renderToken.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33181     _this.onTokenClickRemove = _this.onTokenClickRemove.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39442     _this.onTokenClickRemove = _this.onTokenClickRemove.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33182     _this.onSuggestionHovered = _this.onSuggestionHovered.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39443     _this.onSuggestionHovered = _this.onSuggestionHovered.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33183     _this.onSuggestionSelected = _this.onSuggestionSelected.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39444     _this.onSuggestionSelected = _this.onSuggestionSelected.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33184     _this.onInputChange = _this.onInputChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39445     _this.onInputChange = _this.onInputChange.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33185     _this.bindInput = _this.bindInput.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39446     _this.bindInput = _this.bindInput.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33186     _this.bindTokensAndInput = _this.bindTokensAndInput.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 39447     _this.bindTokensAndInput = _this.bindTokensAndInput.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 39448     _this.updateSuggestions = _this.updateSuggestions.bind(Object(assertThisInitialized["a" /* default */])(_this));
 33187     return _this;
 39449     return _this;
 33188   }
 39450   }
 33189 
 39451 
 33190   Object(createClass["a" /* default */])(FormTokenField, [{
 39452   Object(createClass["a" /* default */])(FormTokenField, [{
 33191     key: "componentDidUpdate",
 39453     key: "componentDidUpdate",
 33192     value: function componentDidUpdate() {
 39454     value: function componentDidUpdate(prevProps) {
 33193       // Make sure to focus the input when the isActive state is true.
 39455       // Make sure to focus the input when the isActive state is true.
 33194       if (this.state.isActive && !this.input.hasFocus()) {
 39456       if (this.state.isActive && !this.input.hasFocus()) {
 33195         this.input.focus();
 39457         this.input.focus();
       
 39458       }
       
 39459 
       
 39460       var _this$props = this.props,
       
 39461           suggestions = _this$props.suggestions,
       
 39462           value = _this$props.value;
       
 39463       var suggestionsDidUpdate = !external_this_wp_isShallowEqual_default()(suggestions, prevProps.suggestions);
       
 39464 
       
 39465       if (suggestionsDidUpdate || value !== prevProps.value) {
       
 39466         this.updateSuggestions(suggestionsDidUpdate);
 33196       }
 39467       }
 33197     }
 39468     }
 33198   }, {
 39469   }, {
 33199     key: "bindInput",
 39470     key: "bindInput",
 33200     value: function bindInput(ref) {
 39471     value: function bindInput(ref) {
 33234       if (this.inputHasValidValue()) {
 39505       if (this.inputHasValidValue()) {
 33235         this.setState({
 39506         this.setState({
 33236           isActive: false
 39507           isActive: false
 33237         });
 39508         });
 33238       } else {
 39509       } else {
 33239         this.setState(initialState);
 39510         this.setState(form_token_field_initialState);
 33240       }
 39511       }
 33241     }
 39512     }
 33242   }, {
 39513   }, {
 33243     key: "onKeyDown",
 39514     key: "onKeyDown",
 33244     value: function onKeyDown(event) {
 39515     value: function onKeyDown(event) {
 33348     key: "onInputChange",
 39619     key: "onInputChange",
 33349     value: function onInputChange(event) {
 39620     value: function onInputChange(event) {
 33350       var text = event.value;
 39621       var text = event.value;
 33351       var separator = this.props.tokenizeOnSpace ? /[ ,\t]+/ : /[,\t]+/;
 39622       var separator = this.props.tokenizeOnSpace ? /[ ,\t]+/ : /[,\t]+/;
 33352       var items = text.split(separator);
 39623       var items = text.split(separator);
 33353       var tokenValue = Object(external_lodash_["last"])(items) || '';
 39624       var tokenValue = Object(external_this_lodash_["last"])(items) || '';
 33354       var inputHasMinimumChars = tokenValue.trim().length > 1;
       
 33355       var matchingSuggestions = this.getMatchingSuggestions(tokenValue);
       
 33356       var hasVisibleSuggestions = inputHasMinimumChars && !!matchingSuggestions.length;
       
 33357 
 39625 
 33358       if (items.length > 1) {
 39626       if (items.length > 1) {
 33359         this.addNewTokens(items.slice(0, -1));
 39627         this.addNewTokens(items.slice(0, -1));
 33360       }
 39628       }
 33361 
 39629 
 33362       this.setState({
 39630       this.setState({
 33363         incompleteTokenValue: tokenValue,
 39631         incompleteTokenValue: tokenValue
 33364         selectedSuggestionIndex: -1,
 39632       }, this.updateSuggestions);
 33365         selectedSuggestionScroll: false,
       
 33366         isExpanded: false
       
 33367       });
       
 33368       this.props.onInputChange(tokenValue);
 39633       this.props.onInputChange(tokenValue);
 33369 
       
 33370       if (inputHasMinimumChars) {
       
 33371         this.setState({
       
 33372           isExpanded: hasVisibleSuggestions
       
 33373         });
       
 33374 
       
 33375         if (!!matchingSuggestions.length) {
       
 33376           this.props.debouncedSpeak(Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["_n"])('%d result found, use up and down arrow keys to navigate.', '%d results found, use up and down arrow keys to navigate.', matchingSuggestions.length), matchingSuggestions.length), 'assertive');
       
 33377         } else {
       
 33378           this.props.debouncedSpeak(Object(external_this_wp_i18n_["__"])('No results.'), 'assertive');
       
 33379         }
       
 33380       }
       
 33381     }
 39634     }
 33382   }, {
 39635   }, {
 33383     key: "handleDeleteKey",
 39636     key: "handleDeleteKey",
 33384     value: function handleDeleteKey(deleteToken) {
 39637     value: function handleDeleteKey(deleteToken) {
 33385       var preventDefault = false;
 39638       var preventDefault = false;
 33527   }, {
 39780   }, {
 33528     key: "addNewTokens",
 39781     key: "addNewTokens",
 33529     value: function addNewTokens(tokens) {
 39782     value: function addNewTokens(tokens) {
 33530       var _this4 = this;
 39783       var _this4 = this;
 33531 
 39784 
 33532       var tokensToAdd = Object(external_lodash_["uniq"])(tokens.map(this.props.saveTransform).filter(Boolean).filter(function (token) {
 39785       var tokensToAdd = Object(external_this_lodash_["uniq"])(tokens.map(this.props.saveTransform).filter(Boolean).filter(function (token) {
 33533         return !_this4.valueContainsToken(token);
 39786         return !_this4.valueContainsToken(token);
 33534       }));
 39787       }));
 33535 
 39788 
 33536       if (tokensToAdd.length > 0) {
 39789       if (tokensToAdd.length > 0) {
 33537         var newValue = Object(external_lodash_["clone"])(this.props.value);
 39790         var newValue = Object(external_this_lodash_["clone"])(this.props.value);
 33538         newValue.splice.apply(newValue, [this.getIndexOfInput(), 0].concat(tokensToAdd));
 39791         newValue.splice.apply(newValue, [this.getIndexOfInput(), 0].concat(tokensToAdd));
 33539         this.props.onChange(newValue);
 39792         this.props.onChange(newValue);
 33540       }
 39793       }
 33541     }
 39794     }
 33542   }, {
 39795   }, {
 33586       var match = saveTransform(searchValue);
 39839       var match = saveTransform(searchValue);
 33587       var startsWithMatch = [];
 39840       var startsWithMatch = [];
 33588       var containsMatch = [];
 39841       var containsMatch = [];
 33589 
 39842 
 33590       if (match.length === 0) {
 39843       if (match.length === 0) {
 33591         suggestions = Object(external_lodash_["difference"])(suggestions, value);
 39844         suggestions = Object(external_this_lodash_["difference"])(suggestions, value);
 33592       } else {
 39845       } else {
 33593         match = match.toLocaleLowerCase();
 39846         match = match.toLocaleLowerCase();
 33594         Object(external_lodash_["each"])(suggestions, function (suggestion) {
 39847         Object(external_this_lodash_["each"])(suggestions, function (suggestion) {
 33595           var index = suggestion.toLocaleLowerCase().indexOf(match);
 39848           var index = suggestion.toLocaleLowerCase().indexOf(match);
 33596 
 39849 
 33597           if (value.indexOf(suggestion) === -1) {
 39850           if (value.indexOf(suggestion) === -1) {
 33598             if (index === 0) {
 39851             if (index === 0) {
 33599               startsWithMatch.push(suggestion);
 39852               startsWithMatch.push(suggestion);
 33603           }
 39856           }
 33604         });
 39857         });
 33605         suggestions = startsWithMatch.concat(containsMatch);
 39858         suggestions = startsWithMatch.concat(containsMatch);
 33606       }
 39859       }
 33607 
 39860 
 33608       return Object(external_lodash_["take"])(suggestions, maxSuggestions);
 39861       return Object(external_this_lodash_["take"])(suggestions, maxSuggestions);
 33609     }
 39862     }
 33610   }, {
 39863   }, {
 33611     key: "getSelectedSuggestion",
 39864     key: "getSelectedSuggestion",
 33612     value: function getSelectedSuggestion() {
 39865     value: function getSelectedSuggestion() {
 33613       if (this.state.selectedSuggestionIndex !== -1) {
 39866       if (this.state.selectedSuggestionIndex !== -1) {
 33617   }, {
 39870   }, {
 33618     key: "valueContainsToken",
 39871     key: "valueContainsToken",
 33619     value: function valueContainsToken(token) {
 39872     value: function valueContainsToken(token) {
 33620       var _this6 = this;
 39873       var _this6 = this;
 33621 
 39874 
 33622       return Object(external_lodash_["some"])(this.props.value, function (item) {
 39875       return Object(external_this_lodash_["some"])(this.props.value, function (item) {
 33623         return _this6.getTokenValue(token) === _this6.getTokenValue(item);
 39876         return _this6.getTokenValue(token) === _this6.getTokenValue(item);
 33624       });
 39877       });
 33625     }
 39878     }
 33626   }, {
 39879   }, {
 33627     key: "getIndexOfInput",
 39880     key: "getIndexOfInput",
 33637     key: "inputHasValidValue",
 39890     key: "inputHasValidValue",
 33638     value: function inputHasValidValue() {
 39891     value: function inputHasValidValue() {
 33639       return this.props.saveTransform(this.state.incompleteTokenValue).length > 0;
 39892       return this.props.saveTransform(this.state.incompleteTokenValue).length > 0;
 33640     }
 39893     }
 33641   }, {
 39894   }, {
       
 39895     key: "updateSuggestions",
       
 39896     value: function updateSuggestions() {
       
 39897       var resetSelectedSuggestion = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
       
 39898       var incompleteTokenValue = this.state.incompleteTokenValue;
       
 39899       var inputHasMinimumChars = incompleteTokenValue.trim().length > 1;
       
 39900       var matchingSuggestions = this.getMatchingSuggestions(incompleteTokenValue);
       
 39901       var hasMatchingSuggestions = matchingSuggestions.length > 0;
       
 39902       var newState = {
       
 39903         isExpanded: inputHasMinimumChars && hasMatchingSuggestions
       
 39904       };
       
 39905 
       
 39906       if (resetSelectedSuggestion) {
       
 39907         newState.selectedSuggestionIndex = -1;
       
 39908         newState.selectedSuggestionScroll = false;
       
 39909       }
       
 39910 
       
 39911       this.setState(newState);
       
 39912 
       
 39913       if (inputHasMinimumChars) {
       
 39914         var debouncedSpeak = this.props.debouncedSpeak;
       
 39915         var message = hasMatchingSuggestions ? Object(external_this_wp_i18n_["sprintf"])(
       
 39916         /* translators: %d: number of results. */
       
 39917         Object(external_this_wp_i18n_["_n"])('%d result found, use up and down arrow keys to navigate.', '%d results found, use up and down arrow keys to navigate.', matchingSuggestions.length), matchingSuggestions.length) : Object(external_this_wp_i18n_["__"])('No results.');
       
 39918         debouncedSpeak(message, 'assertive');
       
 39919       }
       
 39920     }
       
 39921   }, {
 33642     key: "renderTokensAndInput",
 39922     key: "renderTokensAndInput",
 33643     value: function renderTokensAndInput() {
 39923     value: function renderTokensAndInput() {
 33644       var components = Object(external_lodash_["map"])(this.props.value, this.renderToken);
 39924       var components = Object(external_this_lodash_["map"])(this.props.value, this.renderToken);
 33645       components.splice(this.getIndexOfInput(), 0, this.renderInput());
 39925       components.splice(this.getIndexOfInput(), 0, this.renderInput());
 33646       return components;
 39926       return components;
 33647     }
 39927     }
 33648   }, {
 39928   }, {
 33649     key: "renderToken",
 39929     key: "renderToken",
 33650     value: function renderToken(token, index, tokens) {
 39930     value: function renderToken(token, index, tokens) {
 33651       var value = this.getTokenValue(token);
 39931       var value = this.getTokenValue(token);
 33652       var status = token.status ? token.status : undefined;
 39932       var status = token.status ? token.status : undefined;
 33653       var termPosition = index + 1;
 39933       var termPosition = index + 1;
 33654       var termsCount = tokens.length;
 39934       var termsCount = tokens.length;
 33655       return Object(external_this_wp_element_["createElement"])(form_token_field_token, {
 39935       return Object(external_this_wp_element_["createElement"])(Token, {
 33656         key: 'token-' + value,
 39936         key: 'token-' + value,
 33657         value: value,
 39937         value: value,
 33658         status: status,
 39938         status: status,
 33659         title: token.title,
 39939         title: token.title,
 33660         displayTransform: this.props.displayTransform,
 39940         displayTransform: this.props.displayTransform,
 33669       });
 39949       });
 33670     }
 39950     }
 33671   }, {
 39951   }, {
 33672     key: "renderInput",
 39952     key: "renderInput",
 33673     value: function renderInput() {
 39953     value: function renderInput() {
 33674       var _this$props = this.props,
 39954       var _this$props2 = this.props,
 33675           autoCapitalize = _this$props.autoCapitalize,
 39955           autoCapitalize = _this$props2.autoCapitalize,
 33676           autoComplete = _this$props.autoComplete,
 39956           autoComplete = _this$props2.autoComplete,
 33677           maxLength = _this$props.maxLength,
 39957           maxLength = _this$props2.maxLength,
 33678           value = _this$props.value,
 39958           value = _this$props2.value,
 33679           instanceId = _this$props.instanceId;
 39959           instanceId = _this$props2.instanceId;
 33680       var props = {
 39960       var props = {
 33681         instanceId: instanceId,
 39961         instanceId: instanceId,
 33682         autoCapitalize: autoCapitalize,
 39962         autoCapitalize: autoCapitalize,
 33683         autoComplete: autoComplete,
 39963         autoComplete: autoComplete,
 33684         ref: this.bindInput,
 39964         ref: this.bindInput,
 33689         isExpanded: this.state.isExpanded,
 39969         isExpanded: this.state.isExpanded,
 33690         selectedSuggestionIndex: this.state.selectedSuggestionIndex
 39970         selectedSuggestionIndex: this.state.selectedSuggestionIndex
 33691       };
 39971       };
 33692 
 39972 
 33693       if (!(maxLength && value.length >= maxLength)) {
 39973       if (!(maxLength && value.length >= maxLength)) {
 33694         props = Object(objectSpread["a" /* default */])({}, props, {
 39974         props = form_token_field_objectSpread({}, props, {
 33695           onChange: this.onInputChange
 39975           onChange: this.onInputChange
 33696         });
 39976         });
 33697       }
 39977       }
 33698 
 39978 
 33699       return Object(external_this_wp_element_["createElement"])(token_input, props);
 39979       return Object(external_this_wp_element_["createElement"])(token_input, props);
 33700     }
 39980     }
 33701   }, {
 39981   }, {
 33702     key: "render",
 39982     key: "render",
 33703     value: function render() {
 39983     value: function render() {
 33704       var _this$props2 = this.props,
 39984       var _this$props3 = this.props,
 33705           disabled = _this$props2.disabled,
 39985           disabled = _this$props3.disabled,
 33706           _this$props2$label = _this$props2.label,
 39986           _this$props3$label = _this$props3.label,
 33707           label = _this$props2$label === void 0 ? Object(external_this_wp_i18n_["__"])('Add item') : _this$props2$label,
 39987           label = _this$props3$label === void 0 ? Object(external_this_wp_i18n_["__"])('Add item') : _this$props3$label,
 33708           instanceId = _this$props2.instanceId,
 39988           instanceId = _this$props3.instanceId,
 33709           className = _this$props2.className;
 39989           className = _this$props3.className;
 33710       var isExpanded = this.state.isExpanded;
 39990       var isExpanded = this.state.isExpanded;
 33711       var classes = classnames_default()(className, 'components-form-token-field__input-container', {
 39991       var classes = classnames_default()(className, 'components-form-token-field__input-container', {
 33712         'is-active': this.state.isActive,
 39992         'is-active': this.state.isActive,
 33713         'is-disabled': disabled
 39993         'is-disabled': disabled
 33714       });
 39994       });
 33747         suggestions: matchingSuggestions,
 40027         suggestions: matchingSuggestions,
 33748         selectedIndex: this.state.selectedSuggestionIndex,
 40028         selectedIndex: this.state.selectedSuggestionIndex,
 33749         scrollIntoView: this.state.selectedSuggestionScroll,
 40029         scrollIntoView: this.state.selectedSuggestionScroll,
 33750         onHover: this.onSuggestionHovered,
 40030         onHover: this.onSuggestionHovered,
 33751         onSelect: this.onSuggestionSelected
 40031         onSelect: this.onSuggestionSelected
 33752       })), Object(external_this_wp_element_["createElement"])("div", {
 40032       })), Object(external_this_wp_element_["createElement"])("p", {
 33753         id: "components-form-token-suggestions-howto-".concat(instanceId),
 40033         id: "components-form-token-suggestions-howto-".concat(instanceId),
 33754         className: "screen-reader-text"
 40034         className: "components-form-token-field__help"
 33755       }, Object(external_this_wp_i18n_["__"])('Separate with commas')));
 40035       }, this.props.tokenizeOnSpace ? Object(external_this_wp_i18n_["__"])('Separate with commas, spaces, or the Enter key.') : Object(external_this_wp_i18n_["__"])('Separate with commas or the Enter key.')));
 33756       /* eslint-enable jsx-a11y/no-static-element-interactions */
 40036       /* eslint-enable jsx-a11y/no-static-element-interactions */
 33757     }
 40037     }
 33758   }], [{
 40038   }], [{
 33759     key: "getDerivedStateFromProps",
 40039     key: "getDerivedStateFromProps",
 33760     value: function getDerivedStateFromProps(props, state) {
 40040     value: function getDerivedStateFromProps(props, state) {
 33774 
 40054 
 33775 form_token_field_FormTokenField.defaultProps = {
 40055 form_token_field_FormTokenField.defaultProps = {
 33776   suggestions: Object.freeze([]),
 40056   suggestions: Object.freeze([]),
 33777   maxSuggestions: 100,
 40057   maxSuggestions: 100,
 33778   value: Object.freeze([]),
 40058   value: Object.freeze([]),
 33779   displayTransform: external_lodash_["identity"],
 40059   displayTransform: external_this_lodash_["identity"],
 33780   saveTransform: function saveTransform(token) {
 40060   saveTransform: function saveTransform(token) {
 33781     return token.trim();
 40061     return token.trim();
 33782   },
 40062   },
 33783   onChange: function onChange() {},
 40063   onChange: function onChange() {},
 33784   onInputChange: function onInputChange() {},
 40064   onInputChange: function onInputChange() {},
 33791     remove: Object(external_this_wp_i18n_["__"])('Remove item')
 40071     remove: Object(external_this_wp_i18n_["__"])('Remove item')
 33792   }
 40072   }
 33793 };
 40073 };
 33794 /* harmony default export */ var form_token_field = (with_spoken_messages(Object(external_this_wp_compose_["withInstanceId"])(form_token_field_FormTokenField)));
 40074 /* harmony default export */ var form_token_field = (with_spoken_messages(Object(external_this_wp_compose_["withInstanceId"])(form_token_field_FormTokenField)));
 33795 
 40075 
 33796 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/icon/index.js
 40076 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/icons.js
 33797 
 40077 
 33798 
 40078 
 33799 /**
 40079 /**
 33800  * WordPress dependencies
 40080  * WordPress dependencies
 33801  */
 40081  */
 33802 
 40082 
       
 40083 
 33803 /**
 40084 /**
 33804  * Internal dependencies
 40085  * Internal dependencies
 33805  */
 40086  */
 33806 
 40087 
 33807 
 40088 var LinearGradientIcon = Object(external_this_wp_compose_["withInstanceId"])(function (_ref) {
 33808 
 40089   var instanceId = _ref.instanceId;
 33809 function Icon(_ref) {
 40090   var linerGradientId = "linear-gradient-".concat(instanceId);
 33810   var _ref$icon = _ref.icon,
 40091   return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
 33811       icon = _ref$icon === void 0 ? null : _ref$icon,
 40092     fill: "none",
 33812       size = _ref.size,
 40093     height: "20",
 33813       className = _ref.className;
 40094     viewBox: "0 0 20 20",
 33814   var iconSize;
 40095     width: "20",
 33815 
 40096     xmlns: "http://www.w3.org/2000/svg"
 33816   if ('string' === typeof icon) {
 40097   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["LinearGradient"], {
 33817     // Dashicons should be 20x20 by default
 40098     id: linerGradientId,
 33818     iconSize = size || 20;
 40099     gradientUnits: "userSpaceOnUse",
 33819     return Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
 40100     x1: "10",
 33820       icon: icon,
 40101     x2: "10",
 33821       size: iconSize,
 40102     y1: "1",
 33822       className: className
 40103     y2: "19"
       
 40104   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Stop"], {
       
 40105     offset: "0",
       
 40106     stopColor: "#000000"
       
 40107   }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Stop"], {
       
 40108     offset: "1",
       
 40109     stopColor: "#ffffff"
       
 40110   })), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], {
       
 40111     d: "m1 1h18v18h-18z",
       
 40112     fill: "url(#".concat(linerGradientId, ")")
       
 40113   }));
       
 40114 });
       
 40115 var RadialGradientIcon = Object(external_this_wp_compose_["withInstanceId"])(function (_ref2) {
       
 40116   var instanceId = _ref2.instanceId;
       
 40117   var radialGradientId = "radial-gradient-".concat(instanceId);
       
 40118   return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
       
 40119     fill: "none",
       
 40120     height: "20",
       
 40121     viewBox: "0 0 20 20",
       
 40122     width: "20",
       
 40123     xmlns: "http://www.w3.org/2000/svg"
       
 40124   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["RadialGradient"], {
       
 40125     id: radialGradientId,
       
 40126     cx: "0",
       
 40127     cy: "0",
       
 40128     gradientTransform: "matrix(0 9 -9 0 10 10)",
       
 40129     gradientUnits: "userSpaceOnUse",
       
 40130     r: "1"
       
 40131   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Stop"], {
       
 40132     offset: "0",
       
 40133     stopColor: "#000000"
       
 40134   }), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Stop"], {
       
 40135     offset: "1",
       
 40136     stopColor: "#ffffff"
       
 40137   })), Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Circle"], {
       
 40138     cx: "10",
       
 40139     cy: "10",
       
 40140     fill: "url(#".concat(radialGradientId, ")"),
       
 40141     r: "9"
       
 40142   }));
       
 40143 });
       
 40144 
       
 40145 // CONCATENATED MODULE: ./node_modules/@wordpress/icons/build-module/library/plus-circle.js
       
 40146 
       
 40147 
       
 40148 /**
       
 40149  * WordPress dependencies
       
 40150  */
       
 40151 
       
 40152 var plusCircle = Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
       
 40153   xmlns: "http://www.w3.org/2000/svg",
       
 40154   viewBox: "-2 -2 24 24"
       
 40155 }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], {
       
 40156   d: "M10 1c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7zm1-11H9v3H6v2h3v3h2v-3h3V9h-3V6zM10 1c-5 0-9 4-9 9s4 9 9 9 9-4 9-9-4-9-9-9zm0 16c-3.9 0-7-3.1-7-7s3.1-7 7-7 7 3.1 7 7-3.1 7-7 7zm1-11H9v3H6v2h3v3h2v-3h3V9h-3V6z"
       
 40157 }));
       
 40158 /* harmony default export */ var plus_circle = (plusCircle);
       
 40159 
       
 40160 // EXTERNAL MODULE: ./node_modules/gradient-parser/build/node.js
       
 40161 var build_node = __webpack_require__(195);
       
 40162 var node_default = /*#__PURE__*/__webpack_require__.n(build_node);
       
 40163 
       
 40164 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/constants.js
       
 40165 var INSERT_POINT_WIDTH = 23;
       
 40166 var GRADIENT_MARKERS_WIDTH = 18;
       
 40167 var MINIMUM_DISTANCE_BETWEEN_INSERTER_AND_MARKER = (INSERT_POINT_WIDTH + GRADIENT_MARKERS_WIDTH) / 2;
       
 40168 var MINIMUM_ABSOLUTE_LEFT_POSITION = 5;
       
 40169 var MINIMUM_DISTANCE_BETWEEN_POINTS = 9;
       
 40170 var MINIMUM_SIGNIFICANT_MOVE = 5;
       
 40171 var DEFAULT_GRADIENT = 'linear-gradient(135deg, rgba(6, 147, 227, 1) 0%, rgb(155, 81, 224) 100%)';
       
 40172 var COLOR_POPOVER_PROPS = {
       
 40173   className: 'components-custom-gradient-picker__color-picker-popover',
       
 40174   position: 'top'
       
 40175 };
       
 40176 var DEFAULT_LINEAR_GRADIENT_ANGLE = 180;
       
 40177 var HORIZONTAL_GRADIENT_ORIENTATION = {
       
 40178   type: 'angular',
       
 40179   value: 90
       
 40180 };
       
 40181 
       
 40182 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/serializer.js
       
 40183 
       
 40184 
       
 40185 /**
       
 40186  * External dependencies
       
 40187  */
       
 40188 
       
 40189 function serializeGradientColor(_ref) {
       
 40190   var type = _ref.type,
       
 40191       value = _ref.value;
       
 40192 
       
 40193   if (type === 'literal' || type === 'hex') {
       
 40194     return value;
       
 40195   }
       
 40196 
       
 40197   return "".concat(type, "(").concat(value.join(','), ")");
       
 40198 }
       
 40199 function serializeGradientPosition(_ref2) {
       
 40200   var type = _ref2.type,
       
 40201       value = _ref2.value;
       
 40202   return "".concat(value).concat(type);
       
 40203 }
       
 40204 function serializeGradientColorStop(_ref3) {
       
 40205   var type = _ref3.type,
       
 40206       value = _ref3.value,
       
 40207       length = _ref3.length;
       
 40208   return "".concat(serializeGradientColor({
       
 40209     type: type,
       
 40210     value: value
       
 40211   }), " ").concat(serializeGradientPosition(length));
       
 40212 }
       
 40213 function serializeGradientOrientation(orientation) {
       
 40214   if (!orientation || orientation.type !== 'angular') {
       
 40215     return;
       
 40216   }
       
 40217 
       
 40218   return "".concat(orientation.value, "deg");
       
 40219 }
       
 40220 function serializeGradient(_ref4) {
       
 40221   var type = _ref4.type,
       
 40222       orientation = _ref4.orientation,
       
 40223       colorStops = _ref4.colorStops;
       
 40224   var serializedOrientation = serializeGradientOrientation(orientation);
       
 40225   var serializedColorStops = colorStops.sort(function (colorStop1, colorStop2) {
       
 40226     return Object(external_this_lodash_["get"])(colorStop1, ['length', 'value'], 0) - Object(external_this_lodash_["get"])(colorStop2, ['length', 'value'], 0);
       
 40227   }).map(serializeGradientColorStop);
       
 40228   return "".concat(type, "(").concat(Object(external_this_lodash_["compact"])([serializedOrientation].concat(Object(toConsumableArray["a" /* default */])(serializedColorStops))).join(','), ")");
       
 40229 }
       
 40230 
       
 40231 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/utils.js
       
 40232 
       
 40233 
       
 40234 
       
 40235 function utils_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 40236 
       
 40237 function utils_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { utils_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { utils_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 40238 
       
 40239 /**
       
 40240  * External dependencies
       
 40241  */
       
 40242 
       
 40243 
       
 40244 /**
       
 40245  * Internal dependencies
       
 40246  */
       
 40247 
       
 40248 
       
 40249 
       
 40250 
       
 40251 function tinyColorRgbToGradientColorStop(_ref) {
       
 40252   var r = _ref.r,
       
 40253       g = _ref.g,
       
 40254       b = _ref.b,
       
 40255       a = _ref.a;
       
 40256 
       
 40257   if (a === 1) {
       
 40258     return {
       
 40259       type: 'rgb',
       
 40260       value: [r, g, b]
       
 40261     };
       
 40262   }
       
 40263 
       
 40264   return {
       
 40265     type: 'rgba',
       
 40266     value: [r, g, b, a]
       
 40267   };
       
 40268 }
       
 40269 
       
 40270 function getGradientWithColorStopAdded(gradientAST, relativePosition, rgbaColor) {
       
 40271   var colorStop = tinyColorRgbToGradientColorStop(rgbaColor);
       
 40272   colorStop.length = {
       
 40273     type: '%',
       
 40274     value: relativePosition
       
 40275   };
       
 40276   return utils_objectSpread({}, gradientAST, {
       
 40277     colorStops: [].concat(Object(toConsumableArray["a" /* default */])(gradientAST.colorStops), [colorStop])
       
 40278   });
       
 40279 }
       
 40280 function getGradientWithPositionAtIndexChanged(gradientAST, index, relativePosition) {
       
 40281   return utils_objectSpread({}, gradientAST, {
       
 40282     colorStops: gradientAST.colorStops.map(function (colorStop, colorStopIndex) {
       
 40283       if (colorStopIndex !== index) {
       
 40284         return colorStop;
       
 40285       }
       
 40286 
       
 40287       return utils_objectSpread({}, colorStop, {
       
 40288         length: utils_objectSpread({}, colorStop.length, {
       
 40289           value: relativePosition
       
 40290         })
       
 40291       });
       
 40292     })
       
 40293   });
       
 40294 }
       
 40295 function isControlPointOverlapping(gradientAST, position, initialIndex) {
       
 40296   var initialPosition = parseInt(gradientAST.colorStops[initialIndex].length.value);
       
 40297   var minPosition = Math.min(initialPosition, position);
       
 40298   var maxPosition = Math.max(initialPosition, position);
       
 40299   return Object(external_this_lodash_["some"])(gradientAST.colorStops, function (_ref2, index) {
       
 40300     var length = _ref2.length;
       
 40301     var itemPosition = parseInt(length.value);
       
 40302     return index !== initialIndex && (Math.abs(itemPosition - position) < MINIMUM_DISTANCE_BETWEEN_POINTS || minPosition < itemPosition && itemPosition < maxPosition);
       
 40303   });
       
 40304 }
       
 40305 
       
 40306 function getGradientWithPositionAtIndexSummed(gradientAST, index, valueToSum) {
       
 40307   var currentPosition = gradientAST.colorStops[index].length.value;
       
 40308   var newPosition = Math.max(0, Math.min(100, parseInt(currentPosition) + valueToSum));
       
 40309 
       
 40310   if (isControlPointOverlapping(gradientAST, newPosition, index)) {
       
 40311     return gradientAST;
       
 40312   }
       
 40313 
       
 40314   return getGradientWithPositionAtIndexChanged(gradientAST, index, newPosition);
       
 40315 }
       
 40316 
       
 40317 function getGradientWithPositionAtIndexIncreased(gradientAST, index) {
       
 40318   return getGradientWithPositionAtIndexSummed(gradientAST, index, MINIMUM_DISTANCE_BETWEEN_POINTS);
       
 40319 }
       
 40320 function getGradientWithPositionAtIndexDecreased(gradientAST, index) {
       
 40321   return getGradientWithPositionAtIndexSummed(gradientAST, index, -MINIMUM_DISTANCE_BETWEEN_POINTS);
       
 40322 }
       
 40323 function getGradientWithColorAtIndexChanged(gradientAST, index, rgbaColor) {
       
 40324   return utils_objectSpread({}, gradientAST, {
       
 40325     colorStops: gradientAST.colorStops.map(function (colorStop, colorStopIndex) {
       
 40326       if (colorStopIndex !== index) {
       
 40327         return colorStop;
       
 40328       }
       
 40329 
       
 40330       return utils_objectSpread({}, colorStop, {}, tinyColorRgbToGradientColorStop(rgbaColor));
       
 40331     })
       
 40332   });
       
 40333 }
       
 40334 function getGradientWithColorAtPositionChanged(gradientAST, relativePositionValue, rgbaColor) {
       
 40335   var index = Object(external_this_lodash_["findIndex"])(gradientAST.colorStops, function (colorStop) {
       
 40336     return colorStop && colorStop.length && colorStop.length.type === '%' && colorStop.length.value === relativePositionValue.toString();
       
 40337   });
       
 40338   return getGradientWithColorAtIndexChanged(gradientAST, index, rgbaColor);
       
 40339 }
       
 40340 function getGradientWithControlPointRemoved(gradientAST, index) {
       
 40341   return utils_objectSpread({}, gradientAST, {
       
 40342     colorStops: gradientAST.colorStops.filter(function (elem, elemIndex) {
       
 40343       return elemIndex !== index;
       
 40344     })
       
 40345   });
       
 40346 }
       
 40347 function getHorizontalRelativeGradientPosition(mouseXCoordinate, containerElement, positionedElementWidth) {
       
 40348   if (!containerElement) {
       
 40349     return;
       
 40350   }
       
 40351 
       
 40352   var _containerElement$get = containerElement.getBoundingClientRect(),
       
 40353       x = _containerElement$get.x,
       
 40354       width = _containerElement$get.width;
       
 40355 
       
 40356   var absolutePositionValue = mouseXCoordinate - x - MINIMUM_ABSOLUTE_LEFT_POSITION - positionedElementWidth / 2;
       
 40357   var availableWidth = width - MINIMUM_ABSOLUTE_LEFT_POSITION - INSERT_POINT_WIDTH;
       
 40358   return Math.round(Math.min(Math.max(absolutePositionValue * 100 / availableWidth, 0), 100));
       
 40359 }
       
 40360 /**
       
 40361  * Returns the marker points from a gradient AST.
       
 40362  *
       
 40363  * @param {Object} gradientAST An object representing the gradient AST.
       
 40364  *
       
 40365  * @return {Array.<{color: string, position: string, positionValue: number}>}
       
 40366  *         An array of markerPoint objects.
       
 40367  *         color:         A string with the color code ready to be used in css style e.g: "rgba( 1, 2 , 3, 0.5)".
       
 40368  *         position:      A string with the position ready to be used in css style e.g: "70%".
       
 40369  *         positionValue: A number with the relative position value e.g: 70.
       
 40370  */
       
 40371 
       
 40372 function getMarkerPoints(gradientAST) {
       
 40373   if (!gradientAST) {
       
 40374     return [];
       
 40375   }
       
 40376 
       
 40377   return Object(external_this_lodash_["map"])(gradientAST.colorStops, function (colorStop) {
       
 40378     if (!colorStop || !colorStop.length || colorStop.length.type !== '%') {
       
 40379       return null;
       
 40380     }
       
 40381 
       
 40382     return {
       
 40383       color: serializeGradientColor(colorStop),
       
 40384       position: serializeGradientPosition(colorStop.length),
       
 40385       positionValue: parseInt(colorStop.length.value)
       
 40386     };
       
 40387   });
       
 40388 }
       
 40389 function getLinearGradientRepresentationOfARadial(gradientAST) {
       
 40390   return serializeGradient({
       
 40391     type: 'linear-gradient',
       
 40392     orientation: HORIZONTAL_GRADIENT_ORIENTATION,
       
 40393     colorStops: gradientAST.colorStops
       
 40394   });
       
 40395 }
       
 40396 var DIRECTIONAL_ORIENTATION_ANGLE_MAP = {
       
 40397   top: 0,
       
 40398   'top right': 45,
       
 40399   'right top': 45,
       
 40400   right: 90,
       
 40401   'right bottom': 135,
       
 40402   'bottom right': 135,
       
 40403   bottom: 180,
       
 40404   'bottom left': 225,
       
 40405   'left bottom': 225,
       
 40406   left: 270,
       
 40407   'top left': 315,
       
 40408   'left top': 315
       
 40409 };
       
 40410 function getGradientParsed(value) {
       
 40411   var hasGradient = !!value; // gradientAST will contain the gradient AST as parsed by gradient-parser npm module.
       
 40412   // More information of its structure available at https://www.npmjs.com/package/gradient-parser#ast.
       
 40413 
       
 40414   var gradientAST;
       
 40415   var gradientValue;
       
 40416 
       
 40417   try {
       
 40418     gradientAST = node_default.a.parse(value || DEFAULT_GRADIENT)[0];
       
 40419     gradientValue = value || DEFAULT_GRADIENT;
       
 40420   } catch (error) {
       
 40421     hasGradient = false;
       
 40422     gradientAST = node_default.a.parse(DEFAULT_GRADIENT)[0];
       
 40423     gradientValue = DEFAULT_GRADIENT;
       
 40424   }
       
 40425 
       
 40426   if (gradientAST.orientation && gradientAST.orientation.type === 'directional') {
       
 40427     gradientAST.orientation.type = 'angular';
       
 40428     gradientAST.orientation.value = DIRECTIONAL_ORIENTATION_ANGLE_MAP[gradientAST.orientation.value].toString();
       
 40429   }
       
 40430 
       
 40431   return {
       
 40432     hasGradient: hasGradient,
       
 40433     gradientAST: gradientAST,
       
 40434     gradientValue: gradientValue
       
 40435   };
       
 40436 }
       
 40437 
       
 40438 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/control-points.js
       
 40439 
       
 40440 
       
 40441 
       
 40442 
       
 40443 
       
 40444 
       
 40445 
       
 40446 
       
 40447 
       
 40448 
       
 40449 function control_points_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (control_points_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 40450 
       
 40451 function control_points_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 40452 
       
 40453 /**
       
 40454  * External dependencies
       
 40455  */
       
 40456 
       
 40457 /**
       
 40458  * WordPress dependencies
       
 40459  */
       
 40460 
       
 40461 
       
 40462 
       
 40463 
       
 40464 /**
       
 40465  * Internal dependencies
       
 40466  */
       
 40467 
       
 40468 
       
 40469 
       
 40470 
       
 40471 
       
 40472 
       
 40473 
       
 40474 
       
 40475 
       
 40476 var control_points_ControlPointKeyboardMove = /*#__PURE__*/function (_Component) {
       
 40477   Object(inherits["a" /* default */])(ControlPointKeyboardMove, _Component);
       
 40478 
       
 40479   var _super = control_points_createSuper(ControlPointKeyboardMove);
       
 40480 
       
 40481   function ControlPointKeyboardMove() {
       
 40482     var _this;
       
 40483 
       
 40484     Object(classCallCheck["a" /* default */])(this, ControlPointKeyboardMove);
       
 40485 
       
 40486     _this = _super.apply(this, arguments);
       
 40487     _this.increase = _this.increase.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 40488     _this.decrease = _this.decrease.bind(Object(assertThisInitialized["a" /* default */])(_this));
       
 40489     _this.shortcuts = {
       
 40490       right: _this.increase,
       
 40491       left: _this.decrease
       
 40492     };
       
 40493     return _this;
       
 40494   }
       
 40495 
       
 40496   Object(createClass["a" /* default */])(ControlPointKeyboardMove, [{
       
 40497     key: "increase",
       
 40498     value: function increase(event) {
       
 40499       // Stop propagation of the key press event to avoid focus moving
       
 40500       // to another editor area.
       
 40501       event.stopPropagation();
       
 40502       var _this$props = this.props,
       
 40503           gradientIndex = _this$props.gradientIndex,
       
 40504           onChange = _this$props.onChange,
       
 40505           gradientAST = _this$props.gradientAST;
       
 40506       onChange(getGradientWithPositionAtIndexIncreased(gradientAST, gradientIndex));
       
 40507     }
       
 40508   }, {
       
 40509     key: "decrease",
       
 40510     value: function decrease(event) {
       
 40511       // Stop propagation of the key press event to avoid focus moving
       
 40512       // to another editor area.
       
 40513       event.stopPropagation();
       
 40514       var _this$props2 = this.props,
       
 40515           gradientIndex = _this$props2.gradientIndex,
       
 40516           onChange = _this$props2.onChange,
       
 40517           gradientAST = _this$props2.gradientAST;
       
 40518       onChange(getGradientWithPositionAtIndexDecreased(gradientAST, gradientIndex));
       
 40519     }
       
 40520   }, {
       
 40521     key: "render",
       
 40522     value: function render() {
       
 40523       var children = this.props.children;
       
 40524       return Object(external_this_wp_element_["createElement"])(keyboard_shortcuts, {
       
 40525         shortcuts: this.shortcuts
       
 40526       }, children);
       
 40527     }
       
 40528   }]);
       
 40529 
       
 40530   return ControlPointKeyboardMove;
       
 40531 }(external_this_wp_element_["Component"]);
       
 40532 
       
 40533 function ControlPointButton(_ref) {
       
 40534   var isOpen = _ref.isOpen,
       
 40535       position = _ref.position,
       
 40536       color = _ref.color,
       
 40537       onChange = _ref.onChange,
       
 40538       gradientIndex = _ref.gradientIndex,
       
 40539       gradientAST = _ref.gradientAST,
       
 40540       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["isOpen", "position", "color", "onChange", "gradientIndex", "gradientAST"]);
       
 40541 
       
 40542   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(ControlPointButton);
       
 40543   var descriptionId = "components-custom-gradient-picker__control-point-button-description-".concat(instanceId);
       
 40544   return Object(external_this_wp_element_["createElement"])(control_points_ControlPointKeyboardMove, {
       
 40545     onChange: onChange,
       
 40546     gradientIndex: gradientIndex,
       
 40547     gradientAST: gradientAST
       
 40548   }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
       
 40549     "aria-label": Object(external_this_wp_i18n_["sprintf"])( // translators: %1$s: gradient position e.g: 70%, %2$s: gradient color code e.g: rgb(52,121,151).
       
 40550     Object(external_this_wp_i18n_["__"])('Gradient control point at position %1$s with color code %2$s.'), position, color),
       
 40551     "aria-describedby": descriptionId,
       
 40552     "aria-expanded": isOpen,
       
 40553     className: classnames_default()('components-custom-gradient-picker__control-point-button', {
       
 40554       'is-active': isOpen
       
 40555     }),
       
 40556     style: {
       
 40557       left: position
       
 40558     }
       
 40559   }, additionalProps)), Object(external_this_wp_element_["createElement"])(visually_hidden, {
       
 40560     id: descriptionId
       
 40561   }, Object(external_this_wp_i18n_["__"])('Use your left or right arrow keys or drag and drop with the mouse to change the gradient position. Press the button to change the color or remove the control point.')));
       
 40562 }
       
 40563 
       
 40564 function ControlPoints(_ref2) {
       
 40565   var gradientPickerDomRef = _ref2.gradientPickerDomRef,
       
 40566       ignoreMarkerPosition = _ref2.ignoreMarkerPosition,
       
 40567       markerPoints = _ref2.markerPoints,
       
 40568       onChange = _ref2.onChange,
       
 40569       gradientAST = _ref2.gradientAST,
       
 40570       onStartControlPointChange = _ref2.onStartControlPointChange,
       
 40571       onStopControlPointChange = _ref2.onStopControlPointChange;
       
 40572   var controlPointMoveState = Object(external_this_wp_element_["useRef"])();
       
 40573 
       
 40574   var onMouseMove = function onMouseMove(event) {
       
 40575     var relativePosition = getHorizontalRelativeGradientPosition(event.clientX, gradientPickerDomRef.current, GRADIENT_MARKERS_WIDTH);
       
 40576     var _controlPointMoveStat = controlPointMoveState.current,
       
 40577         referenceGradientAST = _controlPointMoveStat.gradientAST,
       
 40578         position = _controlPointMoveStat.position,
       
 40579         significantMoveHappened = _controlPointMoveStat.significantMoveHappened;
       
 40580 
       
 40581     if (!significantMoveHappened) {
       
 40582       var initialPosition = referenceGradientAST.colorStops[position].length.value;
       
 40583 
       
 40584       if (Math.abs(initialPosition - relativePosition) >= MINIMUM_SIGNIFICANT_MOVE) {
       
 40585         controlPointMoveState.current.significantMoveHappened = true;
       
 40586       }
       
 40587     }
       
 40588 
       
 40589     if (!isControlPointOverlapping(referenceGradientAST, relativePosition, position)) {
       
 40590       onChange(getGradientWithPositionAtIndexChanged(referenceGradientAST, position, relativePosition));
       
 40591     }
       
 40592   };
       
 40593 
       
 40594   var cleanEventListeners = function cleanEventListeners() {
       
 40595     if (window && window.removeEventListener && controlPointMoveState.current && controlPointMoveState.current.listenersActivated) {
       
 40596       window.removeEventListener('mousemove', onMouseMove);
       
 40597       window.removeEventListener('mouseup', cleanEventListeners);
       
 40598       onStopControlPointChange();
       
 40599       controlPointMoveState.current.listenersActivated = false;
       
 40600     }
       
 40601   };
       
 40602 
       
 40603   Object(external_this_wp_element_["useEffect"])(function () {
       
 40604     return function () {
       
 40605       cleanEventListeners();
       
 40606     };
       
 40607   }, []);
       
 40608   return markerPoints.map(function (point, index) {
       
 40609     return point && ignoreMarkerPosition !== point.positionValue && Object(external_this_wp_element_["createElement"])(Dropdown, {
       
 40610       key: index,
       
 40611       onClose: onStopControlPointChange,
       
 40612       renderToggle: function renderToggle(_ref3) {
       
 40613         var isOpen = _ref3.isOpen,
       
 40614             onToggle = _ref3.onToggle;
       
 40615         return Object(external_this_wp_element_["createElement"])(ControlPointButton, {
       
 40616           key: index,
       
 40617           onClick: function onClick() {
       
 40618             if (controlPointMoveState.current && controlPointMoveState.current.significantMoveHappened) {
       
 40619               return;
       
 40620             }
       
 40621 
       
 40622             if (isOpen) {
       
 40623               onStopControlPointChange();
       
 40624             } else {
       
 40625               onStartControlPointChange();
       
 40626             }
       
 40627 
       
 40628             onToggle();
       
 40629           },
       
 40630           onMouseDown: function onMouseDown() {
       
 40631             if (window && window.addEventListener) {
       
 40632               controlPointMoveState.current = {
       
 40633                 gradientAST: gradientAST,
       
 40634                 position: index,
       
 40635                 significantMoveHappened: false,
       
 40636                 listenersActivated: true
       
 40637               };
       
 40638               onStartControlPointChange();
       
 40639               window.addEventListener('mousemove', onMouseMove);
       
 40640               window.addEventListener('mouseup', cleanEventListeners);
       
 40641             }
       
 40642           },
       
 40643           isOpen: isOpen,
       
 40644           position: point.position,
       
 40645           color: point.color,
       
 40646           onChange: onChange,
       
 40647           gradientAST: gradientAST,
       
 40648           gradientIndex: index
       
 40649         });
       
 40650       },
       
 40651       renderContent: function renderContent(_ref4) {
       
 40652         var onClose = _ref4.onClose;
       
 40653         return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["Fragment"], null, Object(external_this_wp_element_["createElement"])(color_picker_ColorPicker, {
       
 40654           color: point.color,
       
 40655           onChangeComplete: function onChangeComplete(_ref5) {
       
 40656             var rgb = _ref5.rgb;
       
 40657             onChange(getGradientWithColorAtIndexChanged(gradientAST, index, rgb));
       
 40658           }
       
 40659         }), Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 40660           className: "components-custom-gradient-picker__remove-control-point",
       
 40661           onClick: function onClick() {
       
 40662             onChange(getGradientWithControlPointRemoved(gradientAST, index));
       
 40663             onClose();
       
 40664           },
       
 40665           isLink: true
       
 40666         }, Object(external_this_wp_i18n_["__"])('Remove Control Point')));
       
 40667       },
       
 40668       popoverProps: COLOR_POPOVER_PROPS
 33823     });
 40669     });
 33824   } // Any other icons should be 24x24 by default
 40670   });
 33825 
 40671 }
 33826 
 40672 
 33827   iconSize = size || 24;
 40673 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/custom-gradient-bar.js
 33828 
 40674 
 33829   if ('function' === typeof icon) {
 40675 
 33830     if (icon.prototype instanceof external_this_wp_element_["Component"]) {
 40676 
 33831       return Object(external_this_wp_element_["createElement"])(icon, {
 40677 /**
 33832         className: className,
 40678  * External dependencies
 33833         size: iconSize
 40679  */
       
 40680 
       
 40681 
       
 40682 /**
       
 40683  * WordPress dependencies
       
 40684  */
       
 40685 
       
 40686 
       
 40687 
       
 40688 /**
       
 40689  * Internal dependencies
       
 40690  */
       
 40691 
       
 40692 
       
 40693 
       
 40694 
       
 40695 
       
 40696 
       
 40697 
       
 40698 
       
 40699 
       
 40700 function InsertPoint(_ref) {
       
 40701   var onChange = _ref.onChange,
       
 40702       gradientAST = _ref.gradientAST,
       
 40703       onOpenInserter = _ref.onOpenInserter,
       
 40704       onCloseInserter = _ref.onCloseInserter,
       
 40705       insertPosition = _ref.insertPosition;
       
 40706 
       
 40707   var _useState = Object(external_this_wp_element_["useState"])(false),
       
 40708       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 40709       alreadyInsertedPoint = _useState2[0],
       
 40710       setAlreadyInsertedPoint = _useState2[1];
       
 40711 
       
 40712   return Object(external_this_wp_element_["createElement"])(Dropdown, {
       
 40713     className: "components-custom-gradient-picker__inserter",
       
 40714     onClose: function onClose() {
       
 40715       onCloseInserter();
       
 40716     },
       
 40717     renderToggle: function renderToggle(_ref2) {
       
 40718       var isOpen = _ref2.isOpen,
       
 40719           onToggle = _ref2.onToggle;
       
 40720       return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 40721         "aria-expanded": isOpen,
       
 40722         onClick: function onClick() {
       
 40723           if (isOpen) {
       
 40724             onCloseInserter();
       
 40725           } else {
       
 40726             setAlreadyInsertedPoint(false);
       
 40727             onOpenInserter();
       
 40728           }
       
 40729 
       
 40730           onToggle();
       
 40731         },
       
 40732         className: "components-custom-gradient-picker__insert-point",
       
 40733         icon: plus_circle,
       
 40734         style: {
       
 40735           left: insertPosition !== null ? "".concat(insertPosition, "%") : undefined
       
 40736         }
 33834       });
 40737       });
 33835     }
 40738     },
 33836 
 40739     renderContent: function renderContent() {
 33837     return icon();
 40740       return Object(external_this_wp_element_["createElement"])(color_picker_ColorPicker, {
 33838   }
 40741         onChangeComplete: function onChangeComplete(_ref3) {
 33839 
 40742           var rgb = _ref3.rgb;
 33840   if (icon && (icon.type === 'svg' || icon.type === svg_SVG)) {
 40743           var newGradient;
 33841     var appliedProps = Object(objectSpread["a" /* default */])({
 40744 
 33842       className: className,
 40745           if (alreadyInsertedPoint) {
 33843       width: iconSize,
 40746             newGradient = getGradientWithColorAtPositionChanged(gradientAST, insertPosition, rgb);
 33844       height: iconSize
 40747           } else {
 33845     }, icon.props);
 40748             newGradient = getGradientWithColorStopAdded(gradientAST, insertPosition, rgb);
 33846 
 40749             setAlreadyInsertedPoint(true);
 33847     return Object(external_this_wp_element_["createElement"])(svg_SVG, appliedProps);
 40750           }
 33848   }
 40751 
 33849 
 40752           onChange(newGradient);
 33850   if (Object(external_this_wp_element_["isValidElement"])(icon)) {
 40753         }
 33851     return Object(external_this_wp_element_["cloneElement"])(icon, {
 40754       });
 33852       className: className,
 40755     },
 33853       size: iconSize
 40756     popoverProps: COLOR_POPOVER_PROPS
       
 40757   });
       
 40758 }
       
 40759 
       
 40760 function customGradientBarReducer(state, action) {
       
 40761   switch (action.type) {
       
 40762     case 'MOVE_INSERTER':
       
 40763       if (state.id === 'IDLE' || state.id === 'MOVING_INSERTER') {
       
 40764         return {
       
 40765           id: 'MOVING_INSERTER',
       
 40766           insertPosition: action.insertPosition
       
 40767         };
       
 40768       }
       
 40769 
       
 40770       break;
       
 40771 
       
 40772     case 'STOP_INSERTER_MOVE':
       
 40773       if (state.id === 'MOVING_INSERTER') {
       
 40774         return {
       
 40775           id: 'IDLE'
       
 40776         };
       
 40777       }
       
 40778 
       
 40779       break;
       
 40780 
       
 40781     case 'OPEN_INSERTER':
       
 40782       if (state.id === 'MOVING_INSERTER') {
       
 40783         return {
       
 40784           id: 'INSERTING_CONTROL_POINT',
       
 40785           insertPosition: state.insertPosition
       
 40786         };
       
 40787       }
       
 40788 
       
 40789       break;
       
 40790 
       
 40791     case 'CLOSE_INSERTER':
       
 40792       if (state.id === 'INSERTING_CONTROL_POINT') {
       
 40793         return {
       
 40794           id: 'IDLE'
       
 40795         };
       
 40796       }
       
 40797 
       
 40798       break;
       
 40799 
       
 40800     case 'START_CONTROL_CHANGE':
       
 40801       if (state.id === 'IDLE') {
       
 40802         return {
       
 40803           id: 'MOVING_CONTROL_POINT'
       
 40804         };
       
 40805       }
       
 40806 
       
 40807       break;
       
 40808 
       
 40809     case 'STOP_CONTROL_CHANGE':
       
 40810       if (state.id === 'MOVING_CONTROL_POINT') {
       
 40811         return {
       
 40812           id: 'IDLE'
       
 40813         };
       
 40814       }
       
 40815 
       
 40816       break;
       
 40817   }
       
 40818 
       
 40819   return state;
       
 40820 }
       
 40821 
       
 40822 var customGradientBarReducerInitialState = {
       
 40823   id: 'IDLE'
       
 40824 };
       
 40825 function CustomGradientBar(_ref4) {
       
 40826   var value = _ref4.value,
       
 40827       onChange = _ref4.onChange;
       
 40828 
       
 40829   var _getGradientParsed = getGradientParsed(value),
       
 40830       gradientAST = _getGradientParsed.gradientAST,
       
 40831       gradientValue = _getGradientParsed.gradientValue,
       
 40832       hasGradient = _getGradientParsed.hasGradient;
       
 40833 
       
 40834   var onGradientStructureChange = function onGradientStructureChange(newGradientStructure) {
       
 40835     onChange(serializeGradient(newGradientStructure));
       
 40836   };
       
 40837 
       
 40838   var gradientPickerDomRef = Object(external_this_wp_element_["useRef"])();
       
 40839   var markerPoints = getMarkerPoints(gradientAST);
       
 40840 
       
 40841   var _useReducer = Object(external_this_wp_element_["useReducer"])(customGradientBarReducer, customGradientBarReducerInitialState),
       
 40842       _useReducer2 = Object(slicedToArray["a" /* default */])(_useReducer, 2),
       
 40843       gradientBarState = _useReducer2[0],
       
 40844       gradientBarStateDispatch = _useReducer2[1];
       
 40845 
       
 40846   var onMouseEnterAndMove = function onMouseEnterAndMove(event) {
       
 40847     var insertPosition = getHorizontalRelativeGradientPosition(event.clientX, gradientPickerDomRef.current, INSERT_POINT_WIDTH); // If the insert point is close to an existing control point don't show it.
       
 40848 
       
 40849     if (Object(external_this_lodash_["some"])(markerPoints, function (_ref5) {
       
 40850       var positionValue = _ref5.positionValue;
       
 40851       return Math.abs(insertPosition - positionValue) < MINIMUM_DISTANCE_BETWEEN_POINTS;
       
 40852     })) {
       
 40853       if (gradientBarState.id === 'MOVING_INSERTER') {
       
 40854         gradientBarStateDispatch({
       
 40855           type: 'STOP_INSERTER_MOVE'
       
 40856         });
       
 40857       }
       
 40858 
       
 40859       return;
       
 40860     }
       
 40861 
       
 40862     gradientBarStateDispatch({
       
 40863       type: 'MOVE_INSERTER',
       
 40864       insertPosition: insertPosition
 33854     });
 40865     });
 33855   }
 40866   };
 33856 
 40867 
 33857   return icon;
 40868   var onMouseLeave = function onMouseLeave() {
 33858 }
 40869     gradientBarStateDispatch({
 33859 
 40870       type: 'STOP_INSERTER_MOVE'
 33860 /* harmony default export */ var build_module_icon = (Icon);
 40871     });
 33861 
 40872   };
 33862 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-group/index.js
 40873 
       
 40874   var isMovingInserter = gradientBarState.id === 'MOVING_INSERTER';
       
 40875   var isInsertingControlPoint = gradientBarState.id === 'INSERTING_CONTROL_POINT';
       
 40876   return Object(external_this_wp_element_["createElement"])("div", {
       
 40877     ref: gradientPickerDomRef,
       
 40878     className: classnames_default()('components-custom-gradient-picker__gradient-bar', {
       
 40879       'has-gradient': hasGradient
       
 40880     }),
       
 40881     onMouseEnter: onMouseEnterAndMove,
       
 40882     onMouseMove: onMouseEnterAndMove // On radial gradients the bar should display a linear gradient.
       
 40883     // On radial gradients the bar represents a slice of the gradient from the center until the outside.
       
 40884     ,
       
 40885     style: {
       
 40886       background: gradientAST.type === 'radial-gradient' ? getLinearGradientRepresentationOfARadial(gradientAST) : gradientValue
       
 40887     },
       
 40888     onMouseLeave: onMouseLeave
       
 40889   }, Object(external_this_wp_element_["createElement"])("div", {
       
 40890     className: "components-custom-gradient-picker__markers-container"
       
 40891   }, (isMovingInserter || isInsertingControlPoint) && Object(external_this_wp_element_["createElement"])(InsertPoint, {
       
 40892     insertPosition: gradientBarState.insertPosition,
       
 40893     onChange: onGradientStructureChange,
       
 40894     gradientAST: gradientAST,
       
 40895     onOpenInserter: function onOpenInserter() {
       
 40896       gradientBarStateDispatch({
       
 40897         type: 'OPEN_INSERTER'
       
 40898       });
       
 40899     },
       
 40900     onCloseInserter: function onCloseInserter() {
       
 40901       gradientBarStateDispatch({
       
 40902         type: 'CLOSE_INSERTER'
       
 40903       });
       
 40904     }
       
 40905   }), Object(external_this_wp_element_["createElement"])(ControlPoints, {
       
 40906     gradientPickerDomRef: gradientPickerDomRef,
       
 40907     ignoreMarkerPosition: isInsertingControlPoint ? gradientBarState.insertPosition : undefined,
       
 40908     markerPoints: markerPoints,
       
 40909     onChange: onGradientStructureChange,
       
 40910     gradientAST: gradientAST,
       
 40911     onStartControlPointChange: function onStartControlPointChange() {
       
 40912       gradientBarStateDispatch({
       
 40913         type: 'START_CONTROL_CHANGE'
       
 40914       });
       
 40915     },
       
 40916     onStopControlPointChange: function onStopControlPointChange() {
       
 40917       gradientBarStateDispatch({
       
 40918         type: 'STOP_CONTROL_CHANGE'
       
 40919       });
       
 40920     }
       
 40921   })));
       
 40922 }
       
 40923 
       
 40924 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/toolbar-item/index.js
       
 40925 var toolbar_item = __webpack_require__(132);
       
 40926 
       
 40927 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/toolbar-context/index.js
       
 40928 var toolbar_context = __webpack_require__(87);
       
 40929 
       
 40930 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-button/toolbar-button-container.js
       
 40931 
       
 40932 
       
 40933 var toolbar_button_container_ToolbarButtonContainer = function ToolbarButtonContainer(props) {
       
 40934   return Object(external_this_wp_element_["createElement"])("div", {
       
 40935     className: props.className
       
 40936   }, props.children);
       
 40937 };
       
 40938 
       
 40939 /* harmony default export */ var toolbar_button_container = (toolbar_button_container_ToolbarButtonContainer);
       
 40940 
       
 40941 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-button/index.js
       
 40942 
       
 40943 
 33863 
 40944 
 33864 
 40945 
 33865 /**
 40946 /**
 33866  * External dependencies
 40947  * External dependencies
 33867  */
 40948  */
 33869 /**
 40950 /**
 33870  * WordPress dependencies
 40951  * WordPress dependencies
 33871  */
 40952  */
 33872 
 40953 
 33873 
 40954 
 33874 
       
 33875 /**
 40955 /**
 33876  * Internal dependencies
 40956  * Internal dependencies
 33877  */
 40957  */
 33878 
 40958 
 33879 
 40959 
 33880 function MenuGroup(_ref) {
 40960 
 33881   var children = _ref.children,
 40961 
 33882       _ref$className = _ref.className,
 40962 
 33883       className = _ref$className === void 0 ? '' : _ref$className,
 40963 
 33884       instanceId = _ref.instanceId,
 40964 function ToolbarButton(_ref, ref) {
 33885       label = _ref.label;
 40965   var containerClassName = _ref.containerClassName,
 33886 
 40966       className = _ref.className,
 33887   if (!external_this_wp_element_["Children"].count(children)) {
 40967       extraProps = _ref.extraProps,
       
 40968       children = _ref.children,
       
 40969       title = _ref.title,
       
 40970       isActive = _ref.isActive,
       
 40971       isDisabled = _ref.isDisabled,
       
 40972       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["containerClassName", "className", "extraProps", "children", "title", "isActive", "isDisabled"]);
       
 40973 
       
 40974   var accessibleToolbarState = Object(external_this_wp_element_["useContext"])(toolbar_context["a" /* default */]);
       
 40975 
       
 40976   if (!accessibleToolbarState) {
       
 40977     // This should be deprecated when <Toolbar __experimentalAccessibilityLabel="label">
       
 40978     // becomes stable.
       
 40979     return Object(external_this_wp_element_["createElement"])(toolbar_button_container, {
       
 40980       className: containerClassName
       
 40981     }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
       
 40982       ref: ref,
       
 40983       icon: props.icon,
       
 40984       label: title,
       
 40985       shortcut: props.shortcut,
       
 40986       "data-subscript": props.subscript,
       
 40987       onClick: function onClick(event) {
       
 40988         event.stopPropagation();
       
 40989 
       
 40990         if (props.onClick) {
       
 40991           props.onClick(event);
       
 40992         }
       
 40993       },
       
 40994       className: classnames_default()('components-toolbar__control', className),
       
 40995       isPressed: isActive,
       
 40996       disabled: isDisabled,
       
 40997       "data-experimental-toolbar-item": true
       
 40998     }, extraProps, props), children));
       
 40999   } // ToobarItem will pass all props to the render prop child, which will pass
       
 41000   // all props to Button. This means that ToolbarButton has the same API as
       
 41001   // Button.
       
 41002 
       
 41003 
       
 41004   return Object(external_this_wp_element_["createElement"])(toolbar_item["a" /* default */], Object(esm_extends["a" /* default */])({
       
 41005     className: classnames_default()('components-toolbar-button', className)
       
 41006   }, extraProps, props, {
       
 41007     ref: ref
       
 41008   }), function (toolbarItemProps) {
       
 41009     return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
       
 41010       label: title,
       
 41011       isPressed: isActive,
       
 41012       disabled: isDisabled
       
 41013     }, toolbarItemProps), children);
       
 41014   });
       
 41015 }
       
 41016 
       
 41017 /* harmony default export */ var toolbar_button = (Object(external_this_wp_element_["forwardRef"])(ToolbarButton));
       
 41018 
       
 41019 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-group/toolbar-group-container.js
       
 41020 
       
 41021 
       
 41022 
       
 41023 
       
 41024 var toolbar_group_container_ToolbarGroupContainer = function ToolbarGroupContainer(_ref) {
       
 41025   var className = _ref.className,
       
 41026       children = _ref.children,
       
 41027       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "children"]);
       
 41028 
       
 41029   return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({
       
 41030     className: className
       
 41031   }, props), children);
       
 41032 };
       
 41033 
       
 41034 /* harmony default export */ var toolbar_group_container = (toolbar_group_container_ToolbarGroupContainer);
       
 41035 
       
 41036 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-group/toolbar-group-collapsed.js
       
 41037 
       
 41038 
       
 41039 
       
 41040 
       
 41041 
       
 41042 function toolbar_group_collapsed_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 41043 
       
 41044 function toolbar_group_collapsed_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { toolbar_group_collapsed_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { toolbar_group_collapsed_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 41045 
       
 41046 /**
       
 41047  * WordPress dependencies
       
 41048  */
       
 41049 
       
 41050 /**
       
 41051  * Internal dependencies
       
 41052  */
       
 41053 
       
 41054 
       
 41055 
       
 41056 
       
 41057 
       
 41058 function ToolbarGroupCollapsed(_ref) {
       
 41059   var _ref$controls = _ref.controls,
       
 41060       controls = _ref$controls === void 0 ? [] : _ref$controls,
       
 41061       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["controls"]);
       
 41062 
       
 41063   // It'll contain state if `ToolbarGroup` is being used within
       
 41064   // `<Toolbar __experimentalAccessibilityLabel="label" />`
       
 41065   var accessibleToolbarState = Object(external_this_wp_element_["useContext"])(toolbar_context["a" /* default */]);
       
 41066 
       
 41067   var renderDropdownMenu = function renderDropdownMenu(toggleProps) {
       
 41068     return Object(external_this_wp_element_["createElement"])(dropdown_menu, Object(esm_extends["a" /* default */])({
       
 41069       controls: controls,
       
 41070       toggleProps: toolbar_group_collapsed_objectSpread({}, toggleProps, {
       
 41071         'data-experimental-toolbar-item': true
       
 41072       })
       
 41073     }, props));
       
 41074   };
       
 41075 
       
 41076   if (accessibleToolbarState) {
       
 41077     return Object(external_this_wp_element_["createElement"])(toolbar_item["a" /* default */], null, renderDropdownMenu);
       
 41078   }
       
 41079 
       
 41080   return renderDropdownMenu();
       
 41081 }
       
 41082 
       
 41083 /* harmony default export */ var toolbar_group_collapsed = (ToolbarGroupCollapsed);
       
 41084 
       
 41085 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-group/index.js
       
 41086 
       
 41087 
       
 41088 
       
 41089 
       
 41090 /**
       
 41091  * External dependencies
       
 41092  */
       
 41093 
       
 41094 
       
 41095 /**
       
 41096  * WordPress dependencies
       
 41097  */
       
 41098 
       
 41099 
       
 41100 /**
       
 41101  * Internal dependencies
       
 41102  */
       
 41103 
       
 41104 
       
 41105 
       
 41106 
       
 41107 
       
 41108 /**
       
 41109  * Renders a collapsible group of controls
       
 41110  *
       
 41111  * The `controls` prop accepts an array of sets. A set is an array of controls.
       
 41112  * Controls have the following shape:
       
 41113  *
       
 41114  * ```
       
 41115  * {
       
 41116  *   icon: string,
       
 41117  *   title: string,
       
 41118  *   subscript: string,
       
 41119  *   onClick: Function,
       
 41120  *   isActive: boolean,
       
 41121  *   isDisabled: boolean
       
 41122  * }
       
 41123  * ```
       
 41124  *
       
 41125  * For convenience it is also possible to pass only an array of controls. It is
       
 41126  * then assumed this is the only set.
       
 41127  *
       
 41128  * Either `controls` or `children` is required, otherwise this components
       
 41129  * renders nothing.
       
 41130  *
       
 41131  * @param {Object}    props               Component props.
       
 41132  * @param {Array}     [props.controls]    The controls to render in this toolbar.
       
 41133  * @param {WPElement} [props.children]    Any other things to render inside the toolbar besides the controls.
       
 41134  * @param {string}    [props.className]   Class to set on the container div.
       
 41135  * @param {boolean}   [props.isCollapsed] Turns ToolbarGroup into a dropdown menu.
       
 41136  * @param {string}    [props.title]       ARIA label for dropdown menu if is collapsed.
       
 41137  */
       
 41138 
       
 41139 function ToolbarGroup(_ref) {
       
 41140   var _ref$controls = _ref.controls,
       
 41141       controls = _ref$controls === void 0 ? [] : _ref$controls,
       
 41142       children = _ref.children,
       
 41143       className = _ref.className,
       
 41144       isCollapsed = _ref.isCollapsed,
       
 41145       title = _ref.title,
       
 41146       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["controls", "children", "className", "isCollapsed", "title"]);
       
 41147 
       
 41148   // It'll contain state if `ToolbarGroup` is being used within
       
 41149   // `<Toolbar accessibilityLabel="label" />`
       
 41150   var accessibleToolbarState = Object(external_this_wp_element_["useContext"])(toolbar_context["a" /* default */]);
       
 41151 
       
 41152   if ((!controls || !controls.length) && !children) {
 33888     return null;
 41153     return null;
 33889   }
 41154   }
 33890 
 41155 
 33891   var labelId = "components-menu-group-label-".concat(instanceId);
 41156   var finalClassName = classnames_default()( // Unfortunately, there's legacy code referencing to `.components-toolbar`
 33892   var classNames = classnames_default()(className, 'components-menu-group');
 41157   // So we can't get rid of it
       
 41158   accessibleToolbarState ? 'components-toolbar-group' : 'components-toolbar', className); // Normalize controls to nested array of objects (sets of controls)
       
 41159 
       
 41160   var controlSets = controls;
       
 41161 
       
 41162   if (!Array.isArray(controlSets[0])) {
       
 41163     controlSets = [controlSets];
       
 41164   }
       
 41165 
       
 41166   if (isCollapsed) {
       
 41167     return Object(external_this_wp_element_["createElement"])(toolbar_group_collapsed, Object(esm_extends["a" /* default */])({
       
 41168       label: title,
       
 41169       controls: controlSets,
       
 41170       className: finalClassName,
       
 41171       children: children
       
 41172     }, props));
       
 41173   }
       
 41174 
       
 41175   return Object(external_this_wp_element_["createElement"])(toolbar_group_container, Object(esm_extends["a" /* default */])({
       
 41176     className: finalClassName
       
 41177   }, props), Object(external_this_lodash_["flatMap"])(controlSets, function (controlSet, indexOfSet) {
       
 41178     return controlSet.map(function (control, indexOfControl) {
       
 41179       return Object(external_this_wp_element_["createElement"])(toolbar_button, Object(esm_extends["a" /* default */])({
       
 41180         key: [indexOfSet, indexOfControl].join(),
       
 41181         containerClassName: indexOfSet > 0 && indexOfControl === 0 ? 'has-left-divider' : null
       
 41182       }, control));
       
 41183     });
       
 41184   }), children);
       
 41185 }
       
 41186 
       
 41187 /* harmony default export */ var toolbar_group = (ToolbarGroup);
       
 41188 
       
 41189 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/custom-gradient-picker/index.js
       
 41190 
       
 41191 
       
 41192 
       
 41193 function custom_gradient_picker_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 41194 
       
 41195 function custom_gradient_picker_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { custom_gradient_picker_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { custom_gradient_picker_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 41196 
       
 41197 /**
       
 41198  * External dependencies
       
 41199  */
       
 41200 
       
 41201 /**
       
 41202  * WordPress dependencies
       
 41203  */
       
 41204 
       
 41205 
       
 41206 /**
       
 41207  * Internal dependencies
       
 41208  */
       
 41209 
       
 41210 
       
 41211 
       
 41212 
       
 41213 
       
 41214 
       
 41215 
       
 41216 
       
 41217 
       
 41218 
       
 41219 var custom_gradient_picker_GradientAnglePicker = function GradientAnglePicker(_ref) {
       
 41220   var gradientAST = _ref.gradientAST,
       
 41221       hasGradient = _ref.hasGradient,
       
 41222       onChange = _ref.onChange;
       
 41223   var angle = Object(external_this_lodash_["get"])(gradientAST, ['orientation', 'value'], DEFAULT_LINEAR_GRADIENT_ANGLE);
       
 41224 
       
 41225   var onAngleChange = function onAngleChange(newAngle) {
       
 41226     onChange(serializeGradient(custom_gradient_picker_objectSpread({}, gradientAST, {
       
 41227       orientation: {
       
 41228         type: 'angular',
       
 41229         value: newAngle
       
 41230       }
       
 41231     })));
       
 41232   };
       
 41233 
       
 41234   return Object(external_this_wp_element_["createElement"])(AnglePickerControl, {
       
 41235     value: hasGradient ? angle : '',
       
 41236     onChange: onAngleChange
       
 41237   });
       
 41238 };
       
 41239 
       
 41240 var custom_gradient_picker_GradientTypePicker = function GradientTypePicker(_ref2) {
       
 41241   var gradientAST = _ref2.gradientAST,
       
 41242       hasGradient = _ref2.hasGradient,
       
 41243       onChange = _ref2.onChange;
       
 41244   var type = gradientAST.type;
       
 41245 
       
 41246   var onSetLinearGradient = function onSetLinearGradient() {
       
 41247     onChange(serializeGradient(custom_gradient_picker_objectSpread({}, gradientAST, {}, gradientAST.orientation ? {} : {
       
 41248       orientation: HORIZONTAL_GRADIENT_ORIENTATION
       
 41249     }, {
       
 41250       type: 'linear-gradient'
       
 41251     })));
       
 41252   };
       
 41253 
       
 41254   var onSetRadialGradient = function onSetRadialGradient() {
       
 41255     onChange(serializeGradient(custom_gradient_picker_objectSpread({}, Object(external_this_lodash_["omit"])(gradientAST, ['orientation']), {
       
 41256       type: 'radial-gradient'
       
 41257     })));
       
 41258   };
       
 41259 
       
 41260   return Object(external_this_wp_element_["createElement"])(base_control, {
       
 41261     className: "components-custom-gradient-picker__type-picker"
       
 41262   }, Object(external_this_wp_element_["createElement"])(base_control.VisualLabel, null, Object(external_this_wp_i18n_["__"])('Type')), Object(external_this_wp_element_["createElement"])(toolbar_group, {
       
 41263     className: "components-custom-gradient-picker__toolbar",
       
 41264     controls: [{
       
 41265       icon: Object(external_this_wp_element_["createElement"])(LinearGradientIcon, null),
       
 41266       title: Object(external_this_wp_i18n_["__"])('Linear Gradient'),
       
 41267       isActive: hasGradient && type === 'linear-gradient',
       
 41268       onClick: onSetLinearGradient
       
 41269     }, {
       
 41270       icon: Object(external_this_wp_element_["createElement"])(RadialGradientIcon, null),
       
 41271       title: Object(external_this_wp_i18n_["__"])('Radial Gradient'),
       
 41272       isActive: hasGradient && type === 'radial-gradient',
       
 41273       onClick: onSetRadialGradient
       
 41274     }]
       
 41275   }));
       
 41276 };
       
 41277 
       
 41278 function CustomGradientPicker(_ref3) {
       
 41279   var value = _ref3.value,
       
 41280       onChange = _ref3.onChange;
       
 41281 
       
 41282   var _getGradientParsed = getGradientParsed(value),
       
 41283       gradientAST = _getGradientParsed.gradientAST,
       
 41284       hasGradient = _getGradientParsed.hasGradient;
       
 41285 
       
 41286   var type = gradientAST.type;
 33893   return Object(external_this_wp_element_["createElement"])("div", {
 41287   return Object(external_this_wp_element_["createElement"])("div", {
 33894     className: classNames
 41288     className: "components-custom-gradient-picker"
 33895   }, label && Object(external_this_wp_element_["createElement"])("div", {
 41289   }, Object(external_this_wp_element_["createElement"])(CustomGradientBar, {
 33896     className: "components-menu-group__label",
 41290     value: value,
 33897     id: labelId
 41291     onChange: onChange
 33898   }, label), Object(external_this_wp_element_["createElement"])(menu, {
 41292   }), Object(external_this_wp_element_["createElement"])("div", {
 33899     orientation: "vertical",
 41293     className: "components-custom-gradient-picker__ui-line"
 33900     "aria-labelledby": label ? labelId : null
 41294   }, Object(external_this_wp_element_["createElement"])(custom_gradient_picker_GradientTypePicker, {
 33901   }, children));
 41295     gradientAST: gradientAST,
 33902 }
 41296     hasGradient: hasGradient,
 33903 /* harmony default export */ var menu_group = (Object(external_this_wp_compose_["withInstanceId"])(MenuGroup));
 41297     onChange: onChange
 33904 
 41298   }), type === 'linear-gradient' && Object(external_this_wp_element_["createElement"])(custom_gradient_picker_GradientAnglePicker, {
 33905 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-item/index.js
 41299     gradientAST: gradientAST,
 33906 
 41300     hasGradient: hasGradient,
       
 41301     onChange: onChange
       
 41302   })));
       
 41303 }
       
 41304 
       
 41305 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/gradient-picker/index.js
 33907 
 41306 
 33908 
 41307 
 33909 /**
 41308 /**
 33910  * External dependencies
 41309  * External dependencies
 33911  */
 41310  */
 33912 
 41311 
 33913 
       
 33914 /**
 41312 /**
 33915  * WordPress dependencies
 41313  * WordPress dependencies
 33916  */
 41314  */
 33917 
 41315 
 33918 
 41316 
 33921  * Internal dependencies
 41319  * Internal dependencies
 33922  */
 41320  */
 33923 
 41321 
 33924 
 41322 
 33925 
 41323 
 33926 
 41324 function GradientPicker(_ref) {
 33927 /**
 41325   var className = _ref.className,
 33928  * Renders a generic menu item for use inside the more menu.
 41326       gradients = _ref.gradients,
 33929  *
 41327       onChange = _ref.onChange,
 33930  * @return {WPElement} More menu item.
 41328       value = _ref.value,
 33931  */
 41329       _ref$clearable = _ref.clearable,
 33932 
 41330       clearable = _ref$clearable === void 0 ? true : _ref$clearable,
 33933 function MenuItem(_ref) {
 41331       _ref$disableCustomGra = _ref.disableCustomGradients,
 33934   var children = _ref.children,
 41332       disableCustomGradients = _ref$disableCustomGra === void 0 ? false : _ref$disableCustomGra;
 33935       info = _ref.info,
 41333   var clearGradient = Object(external_this_wp_element_["useCallback"])(function () {
 33936       className = _ref.className,
 41334     return onChange(undefined);
 33937       icon = _ref.icon,
 41335   }, [onChange]);
 33938       shortcut = _ref.shortcut,
 41336   var gradientOptions = Object(external_this_wp_element_["useMemo"])(function () {
 33939       isSelected = _ref.isSelected,
 41337     return Object(external_this_lodash_["map"])(gradients, function (_ref2) {
 33940       _ref$role = _ref.role,
 41338       var gradient = _ref2.gradient,
 33941       role = _ref$role === void 0 ? 'menuitem' : _ref$role,
 41339           name = _ref2.name;
 33942       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "info", "className", "icon", "shortcut", "isSelected", "role"]);
 41340       return Object(external_this_wp_element_["createElement"])(CircularOptionPicker.Option, {
 33943 
 41341         key: gradient,
 33944   className = classnames_default()('components-menu-item__button', className, {
 41342         value: gradient,
 33945     'has-icon': icon
 41343         isSelected: value === gradient,
 33946   });
 41344         tooltipText: name || // translators: %s: gradient code e.g: "linear-gradient(90deg, rgba(98,16,153,1) 0%, rgba(172,110,22,1) 100%);".
 33947 
 41345         Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Gradient code: %s'), gradient),
 33948   if (info) {
 41346         style: {
 33949     children = Object(external_this_wp_element_["createElement"])("span", {
 41347           color: 'rgba( 0,0,0,0 )',
 33950       className: "components-menu-item__info-wrapper"
 41348           background: gradient
 33951     }, children, Object(external_this_wp_element_["createElement"])("span", {
 41349         },
 33952       className: "components-menu-item__info"
 41350         onClick: value === gradient ? clearGradient : function () {
 33953     }, info));
 41351           return onChange(gradient);
 33954   }
 41352         },
 33955 
 41353         "aria-label": name ? // translators: %s: The name of the gradient e.g: "Angular red to blue".
 33956   var tagName = build_module_button;
 41354         Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Gradient: %s'), name) : // translators: %s: gradient code e.g: "linear-gradient(90deg, rgba(98,16,153,1) 0%, rgba(172,110,22,1) 100%);".
 33957 
 41355         Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Gradient code: %s'), gradient)
 33958   if (icon) {
       
 33959     if (!Object(external_lodash_["isString"])(icon)) {
       
 33960       icon = Object(external_this_wp_element_["cloneElement"])(icon, {
       
 33961         className: 'components-menu-items__item-icon',
       
 33962         height: 20,
       
 33963         width: 20
       
 33964       });
 41356       });
 33965     }
 41357     });
 33966 
 41358   }, [gradients, value, onChange, clearGradient]);
 33967     tagName = icon_button;
 41359   return Object(external_this_wp_element_["createElement"])(CircularOptionPicker, {
 33968     props.icon = icon;
 41360     className: className,
 33969   }
 41361     options: gradientOptions,
 33970 
 41362     actions: clearable && Object(external_this_wp_element_["createElement"])(CircularOptionPicker.ButtonAction, {
 33971   return Object(external_this_wp_element_["createElement"])(tagName, Object(objectSpread["a" /* default */])({
 41363       onClick: clearGradient
 33972     // Make sure aria-checked matches spec https://www.w3.org/TR/wai-aria-1.1/#aria-checked
 41364     }, Object(external_this_wp_i18n_["__"])('Clear'))
 33973     'aria-checked': role === 'menuitemcheckbox' || role === 'menuitemradio' ? isSelected : undefined,
 41365   }, !disableCustomGradients && Object(external_this_wp_element_["createElement"])(CustomGradientPicker, {
 33974     role: role,
 41366     value: value,
 33975     className: className
 41367     onChange: onChange
 33976   }, props), children, Object(external_this_wp_element_["createElement"])(build_module_shortcut, {
       
 33977     className: "components-menu-item__shortcut",
       
 33978     shortcut: shortcut
       
 33979   }));
 41368   }));
 33980 }
 41369 }
 33981 /* harmony default export */ var menu_item = (Object(external_this_wp_compose_["withInstanceId"])(MenuItem));
 41370 
 33982 
 41371 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/isolated-event-container/index.js
 33983 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-items-choice/index.js
 41372 var isolated_event_container = __webpack_require__(131);
       
 41373 
       
 41374 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/index.js
       
 41375 var with_focus_return = __webpack_require__(130);
       
 41376 
       
 41377 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-constrained-tabbing/index.js
       
 41378 var with_constrained_tabbing = __webpack_require__(129);
       
 41379 
       
 41380 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/modal/frame.js
       
 41381 
       
 41382 
       
 41383 
       
 41384 
       
 41385 
       
 41386 
       
 41387 
       
 41388 
       
 41389 function frame_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (frame_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 41390 
       
 41391 function frame_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 41392 
       
 41393 /**
       
 41394  * External dependencies
       
 41395  */
       
 41396 
       
 41397 /**
       
 41398  * WordPress dependencies
       
 41399  */
       
 41400 
       
 41401 
 33984 
 41402 
 33985 
 41403 
 33986 /**
 41404 /**
 33987  * Internal dependencies
 41405  * Internal dependencies
 33988  */
 41406  */
 33989 
 41407 
 33990 function MenuItemsChoice(_ref) {
 41408 
 33991   var _ref$choices = _ref.choices,
 41409 
 33992       choices = _ref$choices === void 0 ? [] : _ref$choices,
 41410 
 33993       onSelect = _ref.onSelect,
 41411 
 33994       value = _ref.value;
 41412 
 33995   return choices.map(function (item) {
 41413 var frame_ModalFrame = /*#__PURE__*/function (_Component) {
 33996     var isSelected = value === item.value;
       
 33997     return Object(external_this_wp_element_["createElement"])(menu_item, {
       
 33998       key: item.value,
       
 33999       role: "menuitemradio",
       
 34000       icon: isSelected && 'yes',
       
 34001       isSelected: isSelected,
       
 34002       shortcut: item.shortcut,
       
 34003       onClick: function onClick() {
       
 34004         if (!isSelected) {
       
 34005           onSelect(item.value);
       
 34006         }
       
 34007       }
       
 34008     }, item.label);
       
 34009   });
       
 34010 }
       
 34011 
       
 34012 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/modal/frame.js
       
 34013 
       
 34014 
       
 34015 
       
 34016 
       
 34017 
       
 34018 
       
 34019 
       
 34020 
       
 34021 /**
       
 34022  * WordPress dependencies
       
 34023  */
       
 34024 
       
 34025 
       
 34026 
       
 34027 
       
 34028 /**
       
 34029  * External dependencies
       
 34030  */
       
 34031 
       
 34032 
       
 34033 /**
       
 34034  * Internal dependencies
       
 34035  */
       
 34036 
       
 34037 
       
 34038 
       
 34039 
       
 34040 var frame_ModalFrame =
       
 34041 /*#__PURE__*/
       
 34042 function (_Component) {
       
 34043   Object(inherits["a" /* default */])(ModalFrame, _Component);
 41414   Object(inherits["a" /* default */])(ModalFrame, _Component);
       
 41415 
       
 41416   var _super = frame_createSuper(ModalFrame);
 34044 
 41417 
 34045   function ModalFrame() {
 41418   function ModalFrame() {
 34046     var _this;
 41419     var _this;
 34047 
 41420 
 34048     Object(classCallCheck["a" /* default */])(this, ModalFrame);
 41421     Object(classCallCheck["a" /* default */])(this, ModalFrame);
 34049 
 41422 
 34050     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ModalFrame).apply(this, arguments));
 41423     _this = _super.apply(this, arguments);
 34051     _this.containerRef = Object(external_this_wp_element_["createRef"])();
 41424     _this.containerRef = Object(external_this_wp_element_["createRef"])();
 34052     _this.handleKeyDown = _this.handleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 41425     _this.handleKeyDown = _this.handleKeyDown.bind(Object(assertThisInitialized["a" /* default */])(_this));
 34053     _this.handleClickOutside = _this.handleClickOutside.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 41426     _this.handleFocusOutside = _this.handleFocusOutside.bind(Object(assertThisInitialized["a" /* default */])(_this));
 34054     _this.focusFirstTabbable = _this.focusFirstTabbable.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 34055     return _this;
 41427     return _this;
 34056   }
 41428   }
 34057   /**
 41429   /**
 34058    * Focuses the first tabbable element when props.focusOnMount is true.
 41430    * Focuses the first tabbable element when props.focusOnMount is true.
 34059    */
 41431    */
 34062   Object(createClass["a" /* default */])(ModalFrame, [{
 41434   Object(createClass["a" /* default */])(ModalFrame, [{
 34063     key: "componentDidMount",
 41435     key: "componentDidMount",
 34064     value: function componentDidMount() {
 41436     value: function componentDidMount() {
 34065       // Focus on mount
 41437       // Focus on mount
 34066       if (this.props.focusOnMount) {
 41438       if (this.props.focusOnMount) {
 34067         this.focusFirstTabbable();
 41439         this.containerRef.current.focus();
 34068       }
       
 34069     }
       
 34070     /**
       
 34071      * Focuses the first tabbable element.
       
 34072      */
       
 34073 
       
 34074   }, {
       
 34075     key: "focusFirstTabbable",
       
 34076     value: function focusFirstTabbable() {
       
 34077       var tabbables = external_this_wp_dom_["focus"].tabbable.find(this.containerRef.current);
       
 34078 
       
 34079       if (tabbables.length) {
       
 34080         tabbables[0].focus();
       
 34081       }
 41440       }
 34082     }
 41441     }
 34083     /**
 41442     /**
 34084      * Callback function called when clicked outside the modal.
 41443      * Callback function called when clicked outside the modal.
 34085      *
 41444      *
 34086      * @param {Object} event Mouse click event.
 41445      * @param {Object} event Mouse click event.
 34087      */
 41446      */
 34088 
 41447 
 34089   }, {
 41448   }, {
 34090     key: "handleClickOutside",
 41449     key: "handleFocusOutside",
 34091     value: function handleClickOutside(event) {
 41450     value: function handleFocusOutside(event) {
 34092       if (this.props.shouldCloseOnClickOutside) {
 41451       if (this.props.shouldCloseOnClickOutside) {
 34093         this.onRequestClose(event);
 41452         this.onRequestClose(event);
 34094       }
 41453       }
 34095     }
 41454     }
 34096     /**
 41455     /**
 34107       }
 41466       }
 34108     }
 41467     }
 34109     /**
 41468     /**
 34110      * Handles a escape key down event.
 41469      * Handles a escape key down event.
 34111      *
 41470      *
 34112      * Calls onRequestClose and prevents default key press behaviour.
 41471      * Calls onRequestClose and prevents propagation of the event outside the modal.
 34113      *
 41472      *
 34114      * @param {Object} event Key down event.
 41473      * @param {Object} event Key down event.
 34115      */
 41474      */
 34116 
 41475 
 34117   }, {
 41476   }, {
 34118     key: "handleEscapeKeyDown",
 41477     key: "handleEscapeKeyDown",
 34119     value: function handleEscapeKeyDown(event) {
 41478     value: function handleEscapeKeyDown(event) {
 34120       if (this.props.shouldCloseOnEsc) {
 41479       if (this.props.shouldCloseOnEsc) {
 34121         event.preventDefault();
 41480         event.stopPropagation();
 34122         this.onRequestClose(event);
 41481         this.onRequestClose(event);
 34123       }
 41482       }
 34124     }
 41483     }
 34125     /**
 41484     /**
 34126      * Calls the onRequestClose callback props when it is available.
 41485      * Calls the onRequestClose callback props when it is available.
 34145 
 41504 
 34146   }, {
 41505   }, {
 34147     key: "render",
 41506     key: "render",
 34148     value: function render() {
 41507     value: function render() {
 34149       var _this$props = this.props,
 41508       var _this$props = this.props,
       
 41509           overlayClassName = _this$props.overlayClassName,
 34150           contentLabel = _this$props.contentLabel,
 41510           contentLabel = _this$props.contentLabel,
 34151           _this$props$aria = _this$props.aria,
 41511           _this$props$aria = _this$props.aria,
 34152           describedby = _this$props$aria.describedby,
 41512           describedby = _this$props$aria.describedby,
 34153           labelledby = _this$props$aria.labelledby,
 41513           labelledby = _this$props$aria.labelledby,
 34154           children = _this$props.children,
 41514           children = _this$props.children,
 34155           className = _this$props.className,
 41515           className = _this$props.className,
 34156           role = _this$props.role,
 41516           role = _this$props.role,
 34157           style = _this$props.style;
 41517           style = _this$props.style;
 34158       return Object(external_this_wp_element_["createElement"])("div", {
 41518       return Object(external_this_wp_element_["createElement"])(isolated_event_container["a" /* default */], {
 34159         className: className,
 41519         className: classnames_default()('components-modal__screen-overlay', overlayClassName),
       
 41520         onKeyDown: this.handleKeyDown
       
 41521       }, Object(external_this_wp_element_["createElement"])("div", {
       
 41522         className: classnames_default()('components-modal__frame', className),
 34160         style: style,
 41523         style: style,
 34161         ref: this.containerRef,
 41524         ref: this.containerRef,
 34162         role: role,
 41525         role: role,
 34163         "aria-label": contentLabel,
 41526         "aria-label": contentLabel,
 34164         "aria-labelledby": contentLabel ? null : labelledby,
 41527         "aria-labelledby": contentLabel ? null : labelledby,
 34165         "aria-describedby": describedby,
 41528         "aria-describedby": describedby,
 34166         tabIndex: "-1"
 41529         tabIndex: "-1"
 34167       }, children);
 41530       }, children));
 34168     }
 41531     }
 34169   }]);
 41532   }]);
 34170 
 41533 
 34171   return ModalFrame;
 41534   return ModalFrame;
 34172 }(external_this_wp_element_["Component"]);
 41535 }(external_this_wp_element_["Component"]);
 34173 
 41536 
 34174 /* harmony default export */ var modal_frame = (Object(external_this_wp_compose_["compose"])([with_focus_return, with_constrained_tabbing, dist_default.a, Object(external_this_wp_compose_["withGlobalEvents"])({
 41537 /* harmony default export */ var modal_frame = (Object(external_this_wp_compose_["compose"])([with_focus_return["a" /* default */], with_constrained_tabbing["a" /* default */], with_focus_outside["a" /* default */]])(frame_ModalFrame));
 34175   keydown: 'handleKeyDown'
 41538 
 34176 })])(frame_ModalFrame));
 41539 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/close.js
       
 41540 var library_close = __webpack_require__(154);
 34177 
 41541 
 34178 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/modal/header.js
 41542 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/modal/header.js
 34179 
 41543 
 34180 
 41544 
 34181 /**
 41545 /**
 34182  * WordPress dependencies
 41546  * WordPress dependencies
 34183  */
 41547  */
       
 41548 
 34184 
 41549 
 34185 /**
 41550 /**
 34186  * Internal dependencies
 41551  * Internal dependencies
 34187  */
 41552  */
 34188 
 41553 
 34192   var icon = _ref.icon,
 41557   var icon = _ref.icon,
 34193       title = _ref.title,
 41558       title = _ref.title,
 34194       onClose = _ref.onClose,
 41559       onClose = _ref.onClose,
 34195       closeLabel = _ref.closeLabel,
 41560       closeLabel = _ref.closeLabel,
 34196       headingId = _ref.headingId,
 41561       headingId = _ref.headingId,
 34197       isDismissable = _ref.isDismissable;
 41562       isDismissible = _ref.isDismissible;
 34198   var label = closeLabel ? closeLabel : Object(external_this_wp_i18n_["__"])('Close dialog');
 41563   var label = closeLabel ? closeLabel : Object(external_this_wp_i18n_["__"])('Close dialog');
 34199   return Object(external_this_wp_element_["createElement"])("div", {
 41564   return Object(external_this_wp_element_["createElement"])("div", {
 34200     className: "components-modal__header"
 41565     className: "components-modal__header"
 34201   }, Object(external_this_wp_element_["createElement"])("div", {
 41566   }, Object(external_this_wp_element_["createElement"])("div", {
 34202     className: "components-modal__header-heading-container"
 41567     className: "components-modal__header-heading-container"
 34204     className: "components-modal__icon-container",
 41569     className: "components-modal__icon-container",
 34205     "aria-hidden": true
 41570     "aria-hidden": true
 34206   }, icon), title && Object(external_this_wp_element_["createElement"])("h1", {
 41571   }, icon), title && Object(external_this_wp_element_["createElement"])("h1", {
 34207     id: headingId,
 41572     id: headingId,
 34208     className: "components-modal__header-heading"
 41573     className: "components-modal__header-heading"
 34209   }, title)), isDismissable && Object(external_this_wp_element_["createElement"])(icon_button, {
 41574   }, title)), isDismissible && Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 34210     onClick: onClose,
 41575     onClick: onClose,
 34211     icon: "no-alt",
 41576     icon: library_close["a" /* default */],
 34212     label: label
 41577     label: label
 34213   }));
 41578   }));
 34214 };
 41579 };
 34215 
 41580 
 34216 /* harmony default export */ var modal_header = (header_ModalHeader);
 41581 /* harmony default export */ var modal_header = (header_ModalHeader);
 34240   if (isHidden) {
 41605   if (isHidden) {
 34241     return;
 41606     return;
 34242   }
 41607   }
 34243 
 41608 
 34244   var elements = document.body.children;
 41609   var elements = document.body.children;
 34245   Object(external_lodash_["forEach"])(elements, function (element) {
 41610   Object(external_this_lodash_["forEach"])(elements, function (element) {
 34246     if (element === unhiddenElement) {
 41611     if (element === unhiddenElement) {
 34247       return;
 41612       return;
 34248     }
 41613     }
 34249 
 41614 
 34250     if (elementShouldBeHidden(element)) {
 41615     if (elementShouldBeHidden(element)) {
 34274 function showApp() {
 41639 function showApp() {
 34275   if (!isHidden) {
 41640   if (!isHidden) {
 34276     return;
 41641     return;
 34277   }
 41642   }
 34278 
 41643 
 34279   Object(external_lodash_["forEach"])(hiddenElements, function (element) {
 41644   Object(external_this_lodash_["forEach"])(hiddenElements, function (element) {
 34280     element.removeAttribute('aria-hidden');
 41645     element.removeAttribute('aria-hidden');
 34281   });
 41646   });
 34282   hiddenElements = [];
 41647   hiddenElements = [];
 34283   isHidden = false;
 41648   isHidden = false;
 34284 }
 41649 }
 34291 
 41656 
 34292 
 41657 
 34293 
 41658 
 34294 
 41659 
 34295 
 41660 
 34296 /**
 41661 function modal_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (modal_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
 34297  * External dependencies
 41662 
 34298  */
 41663 function modal_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 34299 
       
 34300 
 41664 
 34301 /**
 41665 /**
 34302  * WordPress dependencies
 41666  * WordPress dependencies
 34303  */
 41667  */
 34304 
 41668 
 34305 
 41669 
 34306 
 41670 
 34307 /**
 41671 /**
 34308  * Internal dependencies
 41672  * Internal dependencies
 34309  */
 41673  */
 34310 
       
 34311 
 41674 
 34312 
 41675 
 34313 
 41676 
 34314  // Used to count the number of open modals.
 41677  // Used to count the number of open modals.
 34315 
 41678 
 34316 var parentElement,
 41679 var parentElement,
 34317     openModalCount = 0;
 41680     openModalCount = 0;
 34318 
 41681 
 34319 var modal_Modal =
 41682 var modal_Modal = /*#__PURE__*/function (_Component) {
 34320 /*#__PURE__*/
       
 34321 function (_Component) {
       
 34322   Object(inherits["a" /* default */])(Modal, _Component);
 41683   Object(inherits["a" /* default */])(Modal, _Component);
       
 41684 
       
 41685   var _super = modal_createSuper(Modal);
 34323 
 41686 
 34324   function Modal(props) {
 41687   function Modal(props) {
 34325     var _this;
 41688     var _this;
 34326 
 41689 
 34327     Object(classCallCheck["a" /* default */])(this, Modal);
 41690     Object(classCallCheck["a" /* default */])(this, Modal);
 34328 
 41691 
 34329     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Modal).call(this, props));
 41692     _this = _super.call(this, props);
 34330 
 41693 
 34331     _this.prepareDOM();
 41694     _this.prepareDOM();
 34332 
 41695 
 34333     return _this;
 41696     return _this;
 34334   }
 41697   }
 34427 
 41790 
 34428   }, {
 41791   }, {
 34429     key: "render",
 41792     key: "render",
 34430     value: function render() {
 41793     value: function render() {
 34431       var _this$props = this.props,
 41794       var _this$props = this.props,
 34432           overlayClassName = _this$props.overlayClassName,
       
 34433           className = _this$props.className,
       
 34434           onRequestClose = _this$props.onRequestClose,
 41795           onRequestClose = _this$props.onRequestClose,
 34435           title = _this$props.title,
 41796           title = _this$props.title,
 34436           icon = _this$props.icon,
 41797           icon = _this$props.icon,
 34437           closeButtonLabel = _this$props.closeButtonLabel,
 41798           closeButtonLabel = _this$props.closeButtonLabel,
 34438           children = _this$props.children,
 41799           children = _this$props.children,
 34439           aria = _this$props.aria,
 41800           aria = _this$props.aria,
 34440           instanceId = _this$props.instanceId,
 41801           instanceId = _this$props.instanceId,
       
 41802           isDismissible = _this$props.isDismissible,
 34441           isDismissable = _this$props.isDismissable,
 41803           isDismissable = _this$props.isDismissable,
 34442           otherProps = Object(objectWithoutProperties["a" /* default */])(_this$props, ["overlayClassName", "className", "onRequestClose", "title", "icon", "closeButtonLabel", "children", "aria", "instanceId", "isDismissable"]);
 41804           otherProps = Object(objectWithoutProperties["a" /* default */])(_this$props, ["onRequestClose", "title", "icon", "closeButtonLabel", "children", "aria", "instanceId", "isDismissible", "isDismissable"]);
 34443 
 41805 
 34444       var headingId = aria.labelledby || "components-modal-header-".concat(instanceId); // Disable reason: this stops mouse events from triggering tooltips and
 41806       var headingId = aria.labelledby || "components-modal-header-".concat(instanceId);
       
 41807 
       
 41808       if (isDismissable) {
       
 41809         external_this_wp_deprecated_default()('isDismissable prop of the Modal component', {
       
 41810           alternative: 'isDismissible prop (renamed) of the Modal component'
       
 41811         });
       
 41812       } // Disable reason: this stops mouse events from triggering tooltips and
 34445       // other elements underneath the modal overlay.
 41813       // other elements underneath the modal overlay.
 34446 
 41814 
 34447       /* eslint-disable jsx-a11y/no-static-element-interactions */
 41815 
 34448 
 41816       return Object(external_this_wp_element_["createPortal"])(Object(external_this_wp_element_["createElement"])(modal_frame, Object(esm_extends["a" /* default */])({
 34449       return Object(external_this_wp_element_["createPortal"])(Object(external_this_wp_element_["createElement"])(isolated_event_container, {
       
 34450         className: classnames_default()('components-modal__screen-overlay', overlayClassName)
       
 34451       }, Object(external_this_wp_element_["createElement"])(modal_frame, Object(esm_extends["a" /* default */])({
       
 34452         className: classnames_default()('components-modal__frame', className),
       
 34453         onRequestClose: onRequestClose,
 41817         onRequestClose: onRequestClose,
 34454         aria: {
 41818         aria: {
 34455           labelledby: title ? headingId : null,
 41819           labelledby: title ? headingId : null,
 34456           describedby: aria.describedby
 41820           describedby: aria.describedby
 34457         }
 41821         }
 34458       }, otherProps), Object(external_this_wp_element_["createElement"])("div", {
 41822       }, otherProps), Object(external_this_wp_element_["createElement"])("div", {
 34459         className: 'components-modal__content',
 41823         className: 'components-modal__content',
 34460         tabIndex: "0"
 41824         role: "document"
 34461       }, Object(external_this_wp_element_["createElement"])(modal_header, {
 41825       }, Object(external_this_wp_element_["createElement"])(modal_header, {
 34462         closeLabel: closeButtonLabel,
 41826         closeLabel: closeButtonLabel,
 34463         headingId: headingId,
 41827         headingId: headingId,
 34464         icon: icon,
 41828         icon: icon,
 34465         isDismissable: isDismissable,
 41829         isDismissible: isDismissible || isDismissable,
 34466         onClose: onRequestClose,
 41830         onClose: onRequestClose,
 34467         title: title
 41831         title: title
 34468       }), children))), this.node);
 41832       }), children)), this.node);
 34469       /* eslint-enable jsx-a11y/no-static-element-interactions */
       
 34470     }
 41833     }
 34471   }]);
 41834   }]);
 34472 
 41835 
 34473   return Modal;
 41836   return Modal;
 34474 }(external_this_wp_element_["Component"]);
 41837 }(external_this_wp_element_["Component"]);
 34475 
 41838 
 34476 modal_Modal.defaultProps = {
 41839 modal_Modal.defaultProps = {
 34477   bodyOpenClassName: 'modal-open',
 41840   bodyOpenClassName: 'modal-open',
 34478   role: 'dialog',
 41841   role: 'dialog',
 34479   title: null,
 41842   title: null,
 34480   onRequestClose: external_lodash_["noop"],
       
 34481   focusOnMount: true,
 41843   focusOnMount: true,
 34482   shouldCloseOnEsc: true,
 41844   shouldCloseOnEsc: true,
 34483   shouldCloseOnClickOutside: true,
 41845   shouldCloseOnClickOutside: true,
 34484   isDismissable: true,
 41846   isDismissible: true,
 34485 
 41847 
 34486   /* accessibility */
 41848   /* accessibility */
 34487   aria: {
 41849   aria: {
 34488     labelledby: null,
 41850     labelledby: null,
 34489     describedby: null
 41851     describedby: null
 34490   }
 41852   }
 34491 };
 41853 };
 34492 /* harmony default export */ var modal = (Object(external_this_wp_compose_["withInstanceId"])(modal_Modal));
 41854 /* harmony default export */ var modal = (Object(external_this_wp_compose_["withInstanceId"])(modal_Modal));
 34493 
 41855 
       
 41856 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/guide/icons.js
       
 41857 
       
 41858 
       
 41859 /**
       
 41860  * WordPress dependencies
       
 41861  */
       
 41862 
       
 41863 var icons_PageControlIcon = function PageControlIcon(_ref) {
       
 41864   var isSelected = _ref.isSelected;
       
 41865   return Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
       
 41866     width: "8",
       
 41867     height: "8",
       
 41868     fill: "none",
       
 41869     xmlns: "http://www.w3.org/2000/svg"
       
 41870   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Circle"], {
       
 41871     cx: "4",
       
 41872     cy: "4",
       
 41873     r: "4",
       
 41874     fill: isSelected ? '#419ECD' : '#E1E3E6'
       
 41875   }));
       
 41876 };
       
 41877 
       
 41878 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/guide/page-control.js
       
 41879 
       
 41880 
       
 41881 /**
       
 41882  * External dependencies
       
 41883  */
       
 41884 
       
 41885 /**
       
 41886  * WordPress dependencies
       
 41887  */
       
 41888 
       
 41889 
       
 41890 /**
       
 41891  * Internal dependencies
       
 41892  */
       
 41893 
       
 41894 
       
 41895 
       
 41896 function PageControl(_ref) {
       
 41897   var currentPage = _ref.currentPage,
       
 41898       numberOfPages = _ref.numberOfPages,
       
 41899       setCurrentPage = _ref.setCurrentPage;
       
 41900   return Object(external_this_wp_element_["createElement"])("ul", {
       
 41901     className: "components-guide__page-control",
       
 41902     "aria-label": Object(external_this_wp_i18n_["__"])('Guide controls')
       
 41903   }, Object(external_this_lodash_["times"])(numberOfPages, function (page) {
       
 41904     return Object(external_this_wp_element_["createElement"])("li", {
       
 41905       key: page // Set aria-current="step" on the active page, see https://www.w3.org/TR/wai-aria-1.1/#aria-current
       
 41906       ,
       
 41907       "aria-current": page === currentPage ? 'step' : undefined
       
 41908     }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 41909       key: page,
       
 41910       icon: Object(external_this_wp_element_["createElement"])(icons_PageControlIcon, {
       
 41911         isSelected: page === currentPage
       
 41912       }),
       
 41913       "aria-label": Object(external_this_wp_i18n_["sprintf"])(
       
 41914       /* translators: 1: current page number 2: total number of pages */
       
 41915       Object(external_this_wp_i18n_["__"])('Page %1$d of %2$d'), page + 1, numberOfPages),
       
 41916       onClick: function onClick() {
       
 41917         return setCurrentPage(page);
       
 41918       }
       
 41919     }));
       
 41920   }));
       
 41921 }
       
 41922 
       
 41923 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/guide/finish-button.js
       
 41924 
       
 41925 
       
 41926 /**
       
 41927  * WordPress dependencies
       
 41928  */
       
 41929 
       
 41930 /**
       
 41931  * Internal dependencies
       
 41932  */
       
 41933 
       
 41934 
       
 41935 function FinishButton(_ref) {
       
 41936   var className = _ref.className,
       
 41937       onClick = _ref.onClick,
       
 41938       children = _ref.children;
       
 41939   var button = Object(external_this_wp_element_["useRef"])(null); // Focus the button on mount if nothing else is focused. This prevents a
       
 41940   // focus loss when the 'Next' button is swapped out.
       
 41941 
       
 41942   Object(external_this_wp_element_["useLayoutEffect"])(function () {
       
 41943     if (!document.activeElement || document.activeElement === document.body) {
       
 41944       button.current.focus();
       
 41945     }
       
 41946   }, [button]);
       
 41947   return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 41948     ref: button,
       
 41949     className: className,
       
 41950     isPrimary: true,
       
 41951     onClick: onClick
       
 41952   }, children);
       
 41953 }
       
 41954 
       
 41955 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/guide/index.js
       
 41956 
       
 41957 
       
 41958 
       
 41959 /**
       
 41960  * External dependencies
       
 41961  */
       
 41962 
       
 41963 /**
       
 41964  * WordPress dependencies
       
 41965  */
       
 41966 
       
 41967 
       
 41968 
       
 41969 
       
 41970 /**
       
 41971  * Internal dependencies
       
 41972  */
       
 41973 
       
 41974 
       
 41975 
       
 41976 
       
 41977 
       
 41978 
       
 41979 function Guide(_ref) {
       
 41980   var children = _ref.children,
       
 41981       className = _ref.className,
       
 41982       contentLabel = _ref.contentLabel,
       
 41983       finishButtonText = _ref.finishButtonText,
       
 41984       onFinish = _ref.onFinish,
       
 41985       _ref$pages = _ref.pages,
       
 41986       pages = _ref$pages === void 0 ? [] : _ref$pages;
       
 41987 
       
 41988   var _useState = Object(external_this_wp_element_["useState"])(0),
       
 41989       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 41990       currentPage = _useState2[0],
       
 41991       setCurrentPage = _useState2[1];
       
 41992 
       
 41993   Object(external_this_wp_element_["useEffect"])(function () {
       
 41994     if (external_this_wp_element_["Children"].count(children)) {
       
 41995       external_this_wp_deprecated_default()('Passing children to <Guide>', {
       
 41996         alternative: 'the `pages` prop'
       
 41997       });
       
 41998     }
       
 41999   }, [children]);
       
 42000 
       
 42001   if (external_this_wp_element_["Children"].count(children)) {
       
 42002     pages = external_this_wp_element_["Children"].map(children, function (child) {
       
 42003       return {
       
 42004         content: child
       
 42005       };
       
 42006     });
       
 42007   }
       
 42008 
       
 42009   var canGoBack = currentPage > 0;
       
 42010   var canGoForward = currentPage < pages.length - 1;
       
 42011 
       
 42012   var goBack = function goBack() {
       
 42013     if (canGoBack) {
       
 42014       setCurrentPage(currentPage - 1);
       
 42015     }
       
 42016   };
       
 42017 
       
 42018   var goForward = function goForward() {
       
 42019     if (canGoForward) {
       
 42020       setCurrentPage(currentPage + 1);
       
 42021     }
       
 42022   };
       
 42023 
       
 42024   if (pages.length === 0) {
       
 42025     return null;
       
 42026   }
       
 42027 
       
 42028   return Object(external_this_wp_element_["createElement"])(modal, {
       
 42029     className: classnames_default()('components-guide', className),
       
 42030     contentLabel: contentLabel,
       
 42031     onRequestClose: onFinish
       
 42032   }, Object(external_this_wp_element_["createElement"])(keyboard_shortcuts, {
       
 42033     key: currentPage,
       
 42034     shortcuts: {
       
 42035       left: goBack,
       
 42036       right: goForward
       
 42037     }
       
 42038   }), Object(external_this_wp_element_["createElement"])("div", {
       
 42039     className: "components-guide__container"
       
 42040   }, Object(external_this_wp_element_["createElement"])("div", {
       
 42041     className: "components-guide__page"
       
 42042   }, pages[currentPage].image, Object(external_this_wp_element_["createElement"])(PageControl, {
       
 42043     currentPage: currentPage,
       
 42044     numberOfPages: pages.length,
       
 42045     setCurrentPage: setCurrentPage
       
 42046   }), pages[currentPage].content, !canGoForward && Object(external_this_wp_element_["createElement"])(FinishButton, {
       
 42047     className: "components-guide__inline-finish-button",
       
 42048     onClick: onFinish
       
 42049   }, finishButtonText || Object(external_this_wp_i18n_["__"])('Finish'))), Object(external_this_wp_element_["createElement"])("div", {
       
 42050     className: "components-guide__footer"
       
 42051   }, canGoBack && Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 42052     className: "components-guide__back-button",
       
 42053     onClick: goBack
       
 42054   }, Object(external_this_wp_i18n_["__"])('Previous')), canGoForward && Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
       
 42055     className: "components-guide__forward-button",
       
 42056     onClick: goForward
       
 42057   }, Object(external_this_wp_i18n_["__"])('Next')), !canGoForward && Object(external_this_wp_element_["createElement"])(FinishButton, {
       
 42058     className: "components-guide__finish-button",
       
 42059     onClick: onFinish
       
 42060   }, finishButtonText || Object(external_this_wp_i18n_["__"])('Finish')))));
       
 42061 }
       
 42062 
       
 42063 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/guide/page.js
       
 42064 
       
 42065 
       
 42066 /**
       
 42067  * WordPress dependencies
       
 42068  */
       
 42069 
       
 42070 
       
 42071 function GuidePage(props) {
       
 42072   Object(external_this_wp_element_["useEffect"])(function () {
       
 42073     external_this_wp_deprecated_default()('<GuidePage>', {
       
 42074       alternative: 'the `pages` prop in <Guide>'
       
 42075     });
       
 42076   }, []);
       
 42077   return Object(external_this_wp_element_["createElement"])("div", props);
       
 42078 }
       
 42079 
       
 42080 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/button/deprecated.js
       
 42081 
       
 42082 
       
 42083 
       
 42084 
       
 42085 /**
       
 42086  * WordPress dependencies
       
 42087  */
       
 42088 
       
 42089 
       
 42090 /**
       
 42091  * Internal dependencies
       
 42092  */
       
 42093 
       
 42094 
       
 42095 
       
 42096 function IconButton(_ref, ref) {
       
 42097   var labelPosition = _ref.labelPosition,
       
 42098       size = _ref.size,
       
 42099       tooltip = _ref.tooltip,
       
 42100       label = _ref.label,
       
 42101       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["labelPosition", "size", "tooltip", "label"]);
       
 42102 
       
 42103   external_this_wp_deprecated_default()('wp.components.IconButton', {
       
 42104     alternative: 'wp.components.Button'
       
 42105   });
       
 42106   return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({}, props, {
       
 42107     ref: ref,
       
 42108     tooltipPosition: labelPosition,
       
 42109     iconSize: size,
       
 42110     showTooltip: tooltip !== undefined ? !!tooltip : undefined,
       
 42111     label: tooltip || label
       
 42112   }));
       
 42113 }
       
 42114 
       
 42115 /* harmony default export */ var deprecated = (Object(external_this_wp_element_["forwardRef"])(IconButton));
       
 42116 
       
 42117 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-group/index.js
       
 42118 
       
 42119 
       
 42120 /**
       
 42121  * External dependencies
       
 42122  */
       
 42123 
       
 42124 /**
       
 42125  * WordPress dependencies
       
 42126  */
       
 42127 
       
 42128 
       
 42129 
       
 42130 function MenuGroup(_ref) {
       
 42131   var children = _ref.children,
       
 42132       _ref$className = _ref.className,
       
 42133       className = _ref$className === void 0 ? '' : _ref$className,
       
 42134       label = _ref.label;
       
 42135   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(MenuGroup);
       
 42136 
       
 42137   if (!external_this_wp_element_["Children"].count(children)) {
       
 42138     return null;
       
 42139   }
       
 42140 
       
 42141   var labelId = "components-menu-group-label-".concat(instanceId);
       
 42142   var classNames = classnames_default()(className, 'components-menu-group');
       
 42143   return Object(external_this_wp_element_["createElement"])("div", {
       
 42144     className: classNames
       
 42145   }, label && Object(external_this_wp_element_["createElement"])("div", {
       
 42146     className: "components-menu-group__label",
       
 42147     id: labelId,
       
 42148     "aria-hidden": "true"
       
 42149   }, label), Object(external_this_wp_element_["createElement"])("div", {
       
 42150     role: "group",
       
 42151     "aria-labelledby": label ? labelId : null
       
 42152   }, children));
       
 42153 }
       
 42154 /* harmony default export */ var menu_group = (MenuGroup);
       
 42155 
       
 42156 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/shortcut/index.js
       
 42157 var build_module_shortcut = __webpack_require__(166);
       
 42158 
       
 42159 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-item/index.js
       
 42160 
       
 42161 
       
 42162 
       
 42163 
       
 42164 /**
       
 42165  * External dependencies
       
 42166  */
       
 42167 
       
 42168 
       
 42169 /**
       
 42170  * WordPress dependencies
       
 42171  */
       
 42172 
       
 42173 
       
 42174 /**
       
 42175  * Internal dependencies
       
 42176  */
       
 42177 
       
 42178 
       
 42179 
       
 42180 /**
       
 42181  * Renders a generic menu item for use inside the more menu.
       
 42182  *
       
 42183  * @param {Object}        props                   Component props.
       
 42184  * @param {WPElement}     props.children          Element to render as child of button.
       
 42185  * @param {string}        props.info              Text to use as description for button text.
       
 42186  * @param {string}        props.className         Class to set on the container.
       
 42187  * @param {WPIcon}        props.icon              Button's `icon` prop.
       
 42188  * @param {string|Object} props.shortcut          Shortcut's `shortcut` prop.
       
 42189  * @param {boolean}       props.isSelected        Whether or not the menu item is currently selected.
       
 42190  * @param {string}        [props.role="menuitem"] ARIA role of the menu item.
       
 42191  * @param {Object}        ref                     React Element ref.
       
 42192  *
       
 42193  * @return {WPComponent} The component to be rendered.
       
 42194  */
       
 42195 
       
 42196 function MenuItem(_ref, ref) {
       
 42197   var children = _ref.children,
       
 42198       info = _ref.info,
       
 42199       className = _ref.className,
       
 42200       icon = _ref.icon,
       
 42201       shortcut = _ref.shortcut,
       
 42202       isSelected = _ref.isSelected,
       
 42203       _ref$role = _ref.role,
       
 42204       role = _ref$role === void 0 ? 'menuitem' : _ref$role,
       
 42205       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "info", "className", "icon", "shortcut", "isSelected", "role"]);
       
 42206 
       
 42207   className = classnames_default()('components-menu-item__button', className);
       
 42208 
       
 42209   if (info) {
       
 42210     children = Object(external_this_wp_element_["createElement"])("span", {
       
 42211       className: "components-menu-item__info-wrapper"
       
 42212     }, children, Object(external_this_wp_element_["createElement"])("span", {
       
 42213       className: "components-menu-item__info"
       
 42214     }, info));
       
 42215   }
       
 42216 
       
 42217   if (icon && !Object(external_this_lodash_["isString"])(icon)) {
       
 42218     icon = Object(external_this_wp_element_["cloneElement"])(icon, {
       
 42219       className: 'components-menu-items__item-icon'
       
 42220     });
       
 42221   }
       
 42222 
       
 42223   return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
       
 42224     ref: ref,
       
 42225     icon: icon // Make sure aria-checked matches spec https://www.w3.org/TR/wai-aria-1.1/#aria-checked
       
 42226     ,
       
 42227     "aria-checked": role === 'menuitemcheckbox' || role === 'menuitemradio' ? isSelected : undefined,
       
 42228     role: role,
       
 42229     className: className
       
 42230   }, props), children, Object(external_this_wp_element_["createElement"])(build_module_shortcut["a" /* default */], {
       
 42231     className: "components-menu-item__shortcut",
       
 42232     shortcut: shortcut
       
 42233   }));
       
 42234 }
       
 42235 /* harmony default export */ var menu_item = (Object(external_this_wp_element_["forwardRef"])(MenuItem));
       
 42236 
       
 42237 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/menu-items-choice/index.js
       
 42238 
       
 42239 
       
 42240 /**
       
 42241  * External dependencies
       
 42242  */
       
 42243 
       
 42244 /**
       
 42245  * WordPress dependencies
       
 42246  */
       
 42247 
       
 42248 
       
 42249 /**
       
 42250  * Internal dependencies
       
 42251  */
       
 42252 
       
 42253 
       
 42254 function MenuItemsChoice(_ref) {
       
 42255   var _ref$choices = _ref.choices,
       
 42256       choices = _ref$choices === void 0 ? [] : _ref$choices,
       
 42257       _ref$onHover = _ref.onHover,
       
 42258       onHover = _ref$onHover === void 0 ? external_this_lodash_["noop"] : _ref$onHover,
       
 42259       onSelect = _ref.onSelect,
       
 42260       value = _ref.value;
       
 42261   return choices.map(function (item) {
       
 42262     var isSelected = value === item.value;
       
 42263     return Object(external_this_wp_element_["createElement"])(menu_item, {
       
 42264       key: item.value,
       
 42265       role: "menuitemradio",
       
 42266       icon: isSelected && check["a" /* default */],
       
 42267       isSelected: isSelected,
       
 42268       shortcut: item.shortcut,
       
 42269       className: "components-menu-items-choice",
       
 42270       onClick: function onClick() {
       
 42271         if (!isSelected) {
       
 42272           onSelect(item.value);
       
 42273         }
       
 42274       },
       
 42275       onMouseEnter: function onMouseEnter() {
       
 42276         return onHover(item.value);
       
 42277       },
       
 42278       onMouseLeave: function onMouseLeave() {
       
 42279         return onHover(null);
       
 42280       }
       
 42281     }, item.label);
       
 42282   });
       
 42283 }
       
 42284 
       
 42285 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/scroll-lock/index.js
       
 42286 var scroll_lock = __webpack_require__(161);
       
 42287 
       
 42288 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/navigable-container/tabbable.js
       
 42289 
       
 42290 
       
 42291 
       
 42292 
       
 42293 /**
       
 42294  * WordPress dependencies
       
 42295  */
       
 42296 
       
 42297 
       
 42298 /**
       
 42299  * Internal dependencies
       
 42300  */
       
 42301 
       
 42302 
       
 42303 function TabbableContainer(_ref, ref) {
       
 42304   var eventToOffset = _ref.eventToOffset,
       
 42305       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["eventToOffset"]);
       
 42306 
       
 42307   var innerEventToOffset = function innerEventToOffset(evt) {
       
 42308     var keyCode = evt.keyCode,
       
 42309         shiftKey = evt.shiftKey;
       
 42310 
       
 42311     if (external_this_wp_keycodes_["TAB"] === keyCode) {
       
 42312       return shiftKey ? -1 : 1;
       
 42313     } // Allow custom handling of keys besides Tab.
       
 42314     //
       
 42315     // By default, TabbableContainer will move focus forward on Tab and
       
 42316     // backward on Shift+Tab. The handler below will be used for all other
       
 42317     // events. The semantics for `eventToOffset`'s return
       
 42318     // values are the following:
       
 42319     //
       
 42320     // - +1: move focus forward
       
 42321     // - -1: move focus backward
       
 42322     // -  0: don't move focus, but acknowledge event and thus stop it
       
 42323     // - undefined: do nothing, let the event propagate
       
 42324 
       
 42325 
       
 42326     if (eventToOffset) {
       
 42327       return eventToOffset(evt);
       
 42328     }
       
 42329   };
       
 42330 
       
 42331   return Object(external_this_wp_element_["createElement"])(navigable_container_container, Object(esm_extends["a" /* default */])({
       
 42332     ref: ref,
       
 42333     stopNavigationEvents: true,
       
 42334     onlyBrowserTabstops: true,
       
 42335     eventToOffset: innerEventToOffset
       
 42336   }, props));
       
 42337 }
       
 42338 /* harmony default export */ var tabbable = (Object(external_this_wp_element_["forwardRef"])(TabbableContainer));
       
 42339 
 34494 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/notice/index.js
 42340 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/notice/index.js
 34495 
 42341 
 34496 
 42342 
 34497 /**
 42343 /**
 34498  * External dependencies
 42344  * External dependencies
 34503  * WordPress dependencies
 42349  * WordPress dependencies
 34504  */
 42350  */
 34505 
 42351 
 34506 
 42352 
 34507 
 42353 
       
 42354 
       
 42355 
 34508 /**
 42356 /**
 34509  * Internal dependencies
 42357  * Internal dependencies
 34510  */
 42358  */
 34511 
 42359 
 34512 
 42360 
       
 42361 /** @typedef {import('@wordpress/element').WPElement} WPElement */
       
 42362 
       
 42363 /**
       
 42364  * Custom hook which announces the message with the given politeness, if a
       
 42365  * valid message is provided.
       
 42366  *
       
 42367  * @param {string|WPElement}     [message]  Message to announce.
       
 42368  * @param {'polite'|'assertive'} politeness Politeness to announce.
       
 42369  */
       
 42370 
       
 42371 function useSpokenMessage(message, politeness) {
       
 42372   var spokenMessage = typeof message === 'string' ? message : Object(external_this_wp_element_["renderToString"])(message);
       
 42373   Object(external_this_wp_element_["useEffect"])(function () {
       
 42374     if (spokenMessage) {
       
 42375       Object(external_this_wp_a11y_["speak"])(spokenMessage, politeness);
       
 42376     }
       
 42377   }, [spokenMessage, politeness]);
       
 42378 }
       
 42379 /**
       
 42380  * Given a notice status, returns an assumed default politeness for the status.
       
 42381  * Defaults to 'assertive'.
       
 42382  *
       
 42383  * @param {string} [status] Notice status.
       
 42384  *
       
 42385  * @return {'polite'|'assertive'} Notice politeness.
       
 42386  */
       
 42387 
       
 42388 
       
 42389 function getDefaultPoliteness(status) {
       
 42390   switch (status) {
       
 42391     case 'success':
       
 42392     case 'warning':
       
 42393     case 'info':
       
 42394       return 'polite';
       
 42395 
       
 42396     case 'error':
       
 42397     default:
       
 42398       return 'assertive';
       
 42399   }
       
 42400 }
 34513 
 42401 
 34514 function Notice(_ref) {
 42402 function Notice(_ref) {
 34515   var className = _ref.className,
 42403   var className = _ref.className,
 34516       status = _ref.status,
 42404       _ref$status = _ref.status,
       
 42405       status = _ref$status === void 0 ? 'info' : _ref$status,
 34517       children = _ref.children,
 42406       children = _ref.children,
       
 42407       _ref$spokenMessage = _ref.spokenMessage,
       
 42408       spokenMessage = _ref$spokenMessage === void 0 ? children : _ref$spokenMessage,
 34518       _ref$onRemove = _ref.onRemove,
 42409       _ref$onRemove = _ref.onRemove,
 34519       onRemove = _ref$onRemove === void 0 ? external_lodash_["noop"] : _ref$onRemove,
 42410       onRemove = _ref$onRemove === void 0 ? external_this_lodash_["noop"] : _ref$onRemove,
 34520       _ref$isDismissible = _ref.isDismissible,
 42411       _ref$isDismissible = _ref.isDismissible,
 34521       isDismissible = _ref$isDismissible === void 0 ? true : _ref$isDismissible,
 42412       isDismissible = _ref$isDismissible === void 0 ? true : _ref$isDismissible,
 34522       _ref$actions = _ref.actions,
 42413       _ref$actions = _ref.actions,
 34523       actions = _ref$actions === void 0 ? [] : _ref$actions,
 42414       actions = _ref$actions === void 0 ? [] : _ref$actions,
       
 42415       _ref$politeness = _ref.politeness,
       
 42416       politeness = _ref$politeness === void 0 ? getDefaultPoliteness(status) : _ref$politeness,
 34524       __unstableHTML = _ref.__unstableHTML;
 42417       __unstableHTML = _ref.__unstableHTML;
       
 42418   useSpokenMessage(spokenMessage, politeness);
 34525   var classes = classnames_default()(className, 'components-notice', 'is-' + status, {
 42419   var classes = classnames_default()(className, 'components-notice', 'is-' + status, {
 34526     'is-dismissible': isDismissible
 42420     'is-dismissible': isDismissible
 34527   });
 42421   });
 34528 
 42422 
 34529   if (__unstableHTML) {
 42423   if (__unstableHTML) {
 34535   }, Object(external_this_wp_element_["createElement"])("div", {
 42429   }, Object(external_this_wp_element_["createElement"])("div", {
 34536     className: "components-notice__content"
 42430     className: "components-notice__content"
 34537   }, children, actions.map(function (_ref2, index) {
 42431   }, children, actions.map(function (_ref2, index) {
 34538     var buttonCustomClasses = _ref2.className,
 42432     var buttonCustomClasses = _ref2.className,
 34539         label = _ref2.label,
 42433         label = _ref2.label,
       
 42434         isPrimary = _ref2.isPrimary,
 34540         _ref2$noDefaultClasse = _ref2.noDefaultClasses,
 42435         _ref2$noDefaultClasse = _ref2.noDefaultClasses,
 34541         noDefaultClasses = _ref2$noDefaultClasse === void 0 ? false : _ref2$noDefaultClasse,
 42436         noDefaultClasses = _ref2$noDefaultClasse === void 0 ? false : _ref2$noDefaultClasse,
 34542         onClick = _ref2.onClick,
 42437         onClick = _ref2.onClick,
 34543         url = _ref2.url;
 42438         url = _ref2.url;
 34544     return Object(external_this_wp_element_["createElement"])(build_module_button, {
 42439     return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 34545       key: index,
 42440       key: index,
 34546       href: url,
 42441       href: url,
 34547       isDefault: !noDefaultClasses && !url,
 42442       isPrimary: isPrimary,
       
 42443       isSecondary: !noDefaultClasses && !url,
 34548       isLink: !noDefaultClasses && !!url,
 42444       isLink: !noDefaultClasses && !!url,
 34549       onClick: url ? undefined : onClick,
 42445       onClick: url ? undefined : onClick,
 34550       className: classnames_default()('components-notice__action', buttonCustomClasses)
 42446       className: classnames_default()('components-notice__action', buttonCustomClasses)
 34551     }, label);
 42447     }, label);
 34552   })), isDismissible && Object(external_this_wp_element_["createElement"])(icon_button, {
 42448   })), isDismissible && Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 34553     className: "components-notice__dismiss",
 42449     className: "components-notice__dismiss",
 34554     icon: "no",
 42450     icon: library_close["a" /* default */],
 34555     label: Object(external_this_wp_i18n_["__"])('Dismiss this notice'),
 42451     label: Object(external_this_wp_i18n_["__"])('Dismiss this notice'),
 34556     onClick: onRemove,
 42452     onClick: onRemove,
 34557     tooltip: false
 42453     showTooltip: false
 34558   }));
 42454   }));
 34559 }
 42455 }
 34560 
 42456 
 34561 /* harmony default export */ var build_module_notice = (Notice);
 42457 /* harmony default export */ var build_module_notice = (Notice);
 34562 
 42458 
 34574  * Internal dependencies
 42470  * Internal dependencies
 34575  */
 42471  */
 34576 
 42472 
 34577 
 42473 
 34578 /**
 42474 /**
 34579 * Renders a list of notices.
 42475  * Renders a list of notices.
 34580 *
 42476  *
 34581 * @param  {Object}   $0           Props passed to the component.
 42477  * @param  {Object}   $0           Props passed to the component.
 34582 * @param  {Array}    $0.notices   Array of notices to render.
 42478  * @param  {Array}    $0.notices   Array of notices to render.
 34583 * @param  {Function} $0.onRemove  Function called when a notice should be removed / dismissed.
 42479  * @param  {Function} $0.onRemove  Function called when a notice should be removed / dismissed.
 34584 * @param  {Object}   $0.className Name of the class used by the component.
 42480  * @param  {Object}   $0.className Name of the class used by the component.
 34585 * @param  {Object}   $0.children  Array of children to be rendered inside the notice list.
 42481  * @param  {Object}   $0.children  Array of children to be rendered inside the notice list.
 34586 * @return {Object}                The rendered notices list.
 42482  * @return {Object}                The rendered notices list.
 34587 */
 42483  */
 34588 
 42484 
 34589 function NoticeList(_ref) {
 42485 function NoticeList(_ref) {
 34590   var notices = _ref.notices,
 42486   var notices = _ref.notices,
 34591       _ref$onRemove = _ref.onRemove,
 42487       _ref$onRemove = _ref.onRemove,
 34592       onRemove = _ref$onRemove === void 0 ? external_lodash_["noop"] : _ref$onRemove,
 42488       onRemove = _ref$onRemove === void 0 ? external_this_lodash_["noop"] : _ref$onRemove,
 34593       className = _ref.className,
 42489       className = _ref.className,
 34594       children = _ref.children;
 42490       children = _ref.children;
 34595 
 42491 
 34596   var removeNotice = function removeNotice(id) {
 42492   var removeNotice = function removeNotice(id) {
 34597     return function () {
 42493     return function () {
 34601 
 42497 
 34602   className = classnames_default()('components-notice-list', className);
 42498   className = classnames_default()('components-notice-list', className);
 34603   return Object(external_this_wp_element_["createElement"])("div", {
 42499   return Object(external_this_wp_element_["createElement"])("div", {
 34604     className: className
 42500     className: className
 34605   }, children, Object(toConsumableArray["a" /* default */])(notices).reverse().map(function (notice) {
 42501   }, children, Object(toConsumableArray["a" /* default */])(notices).reverse().map(function (notice) {
 34606     return Object(external_this_wp_element_["createElement"])(build_module_notice, Object(esm_extends["a" /* default */])({}, Object(external_lodash_["omit"])(notice, ['content']), {
 42502     return Object(external_this_wp_element_["createElement"])(build_module_notice, Object(esm_extends["a" /* default */])({}, Object(external_this_lodash_["omit"])(notice, ['content']), {
 34607       key: notice.id,
 42503       key: notice.id,
 34608       onRemove: removeNotice(notice.id)
 42504       onRemove: removeNotice(notice.id)
 34609     }), notice.content);
 42505     }), notice.content);
 34610   }));
 42506   }));
 34611 }
 42507 }
 34650   }), children);
 42546   }), children);
 34651 }
 42547 }
 34652 
 42548 
 34653 /* harmony default export */ var panel = (Panel);
 42549 /* harmony default export */ var panel = (Panel);
 34654 
 42550 
       
 42551 // EXTERNAL MODULE: ./node_modules/@wordpress/icons/build-module/library/chevron-up.js
       
 42552 var chevron_up = __webpack_require__(294);
       
 42553 
 34655 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/panel/body.js
 42554 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/panel/body.js
 34656 
 42555 
 34657 
 42556 
 34658 
 42557 
 34659 
 42558 
 34660 
 42559 
 34661 
 42560 
 34662 
 42561 
 34663 
 42562 
 34664 
 42563 
       
 42564 function body_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (body_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 42565 
       
 42566 function body_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 42567 
 34665 /**
 42568 /**
 34666  * External dependencies
 42569  * External dependencies
 34667  */
 42570  */
 34668 
 42571 
 34669 /**
 42572 /**
 34670  * WordPress dependencies
 42573  * WordPress dependencies
 34671  */
 42574  */
 34672 
 42575 
 34673 
 42576 
       
 42577 
 34674 /**
 42578 /**
 34675  * Internal dependencies
 42579  * Internal dependencies
 34676  */
 42580  */
 34677 
 42581 
 34678 
 42582 
 34679 
 42583 
 34680 
 42584 var body_PanelBody = /*#__PURE__*/function (_Component) {
 34681 var body_PanelBody =
       
 34682 /*#__PURE__*/
       
 34683 function (_Component) {
       
 34684   Object(inherits["a" /* default */])(PanelBody, _Component);
 42585   Object(inherits["a" /* default */])(PanelBody, _Component);
       
 42586 
       
 42587   var _super = body_createSuper(PanelBody);
 34685 
 42588 
 34686   function PanelBody(props) {
 42589   function PanelBody(props) {
 34687     var _this;
 42590     var _this;
 34688 
 42591 
 34689     Object(classCallCheck["a" /* default */])(this, PanelBody);
 42592     Object(classCallCheck["a" /* default */])(this, PanelBody);
 34690 
 42593 
 34691     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PanelBody).apply(this, arguments));
 42594     _this = _super.apply(this, arguments);
 34692     _this.state = {
 42595     _this.state = {
 34693       opened: props.initialOpen === undefined ? true : props.initialOpen
 42596       opened: props.initialOpen === undefined ? true : props.initialOpen
 34694     };
 42597     };
 34695     _this.toggle = _this.toggle.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 42598     _this.toggle = _this.toggle.bind(Object(assertThisInitialized["a" /* default */])(_this));
 34696     return _this;
 42599     return _this;
 34697   }
 42600   }
 34698 
 42601 
 34699   Object(createClass["a" /* default */])(PanelBody, [{
 42602   Object(createClass["a" /* default */])(PanelBody, [{
 34700     key: "toggle",
 42603     key: "toggle",
 34730       return Object(external_this_wp_element_["createElement"])("div", {
 42633       return Object(external_this_wp_element_["createElement"])("div", {
 34731         className: classes,
 42634         className: classes,
 34732         ref: forwardedRef
 42635         ref: forwardedRef
 34733       }, !!title && Object(external_this_wp_element_["createElement"])("h2", {
 42636       }, !!title && Object(external_this_wp_element_["createElement"])("h2", {
 34734         className: "components-panel__body-title"
 42637         className: "components-panel__body-title"
 34735       }, Object(external_this_wp_element_["createElement"])(build_module_button, {
 42638       }, Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], {
 34736         className: "components-panel__body-toggle",
 42639         className: "components-panel__body-toggle",
 34737         onClick: this.toggle,
 42640         onClick: this.toggle,
 34738         "aria-expanded": isOpened
 42641         "aria-expanded": isOpened
 34739       }, Object(external_this_wp_element_["createElement"])("span", {
 42642       }, Object(external_this_wp_element_["createElement"])("span", {
 34740         "aria-hidden": "true"
 42643         "aria-hidden": "true"
 34741       }, isOpened ? Object(external_this_wp_element_["createElement"])(svg_SVG, {
 42644       }, Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
 34742         className: "components-panel__arrow",
 42645         className: "components-panel__arrow",
 34743         width: "24px",
 42646         icon: isOpened ? chevron_up["a" /* default */] : chevron_down["a" /* default */]
 34744         height: "24px",
 42647       })), title, icon && Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
 34745         viewBox: "0 0 24 24",
       
 34746         xmlns: "http://www.w3.org/2000/svg"
       
 34747       }, Object(external_this_wp_element_["createElement"])(svg_G, null, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 34748         fill: "none",
       
 34749         d: "M0,0h24v24H0V0z"
       
 34750       })), Object(external_this_wp_element_["createElement"])(svg_G, null, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 34751         d: "M12,8l-6,6l1.41,1.41L12,10.83l4.59,4.58L18,14L12,8z"
       
 34752       }))) : Object(external_this_wp_element_["createElement"])(svg_SVG, {
       
 34753         className: "components-panel__arrow",
       
 34754         width: "24px",
       
 34755         height: "24px",
       
 34756         viewBox: "0 0 24 24",
       
 34757         xmlns: "http://www.w3.org/2000/svg"
       
 34758       }, Object(external_this_wp_element_["createElement"])(svg_G, null, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 34759         fill: "none",
       
 34760         d: "M0,0h24v24H0V0z"
       
 34761       })), Object(external_this_wp_element_["createElement"])(svg_G, null, Object(external_this_wp_element_["createElement"])(svg_Path, {
       
 34762         d: "M7.41,8.59L12,13.17l4.59-4.58L18,10l-6,6l-6-6L7.41,8.59z"
       
 34763       })))), title, icon && Object(external_this_wp_element_["createElement"])(build_module_icon, {
       
 34764         icon: icon,
 42648         icon: icon,
 34765         className: "components-panel__icon",
 42649         className: "components-panel__icon",
 34766         size: 20
 42650         size: 20
 34767       }))), isOpened && children);
 42651       }))), isOpened && children);
 34768     }
 42652     }
 34802 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/placeholder/index.js
 42686 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/placeholder/index.js
 34803 
 42687 
 34804 
 42688 
 34805 
 42689 
 34806 
 42690 
       
 42691 
 34807 /**
 42692 /**
 34808  * External dependencies
 42693  * External dependencies
 34809  */
 42694  */
 34810 
 42695 
       
 42696 /**
       
 42697  * WordPress dependencies
       
 42698  */
       
 42699 
 34811 
 42700 
 34812 /**
 42701 /**
 34813  * Internal dependencies
 42702  * Internal dependencies
 34814  */
 42703  */
 34815 
 42704 
 34816 
 42705 
 34817 /**
 42706 /**
 34818 * Renders a placeholder. Normally used by blocks to render their empty state.
 42707  * Renders a placeholder. Normally used by blocks to render their empty state.
 34819 *
 42708  *
 34820 * @param  {Object} props The component props.
 42709  * @param {Object}    props                The component props.
 34821 * @return {Object}       The rendered placeholder.
 42710  * @param {WPIcon}    props.icon           An icon rendered before the label.
 34822 */
 42711  * @param {WPElement} props.children       Children to be rendered.
       
 42712  * @param {string}    props.label          Title of the placeholder.
       
 42713  * @param {string}    props.instructions   Instructions of the placeholder.
       
 42714  * @param {string}    props.className      Class to set on the container div.
       
 42715  * @param {Object}    props.notices        A rendered notices list.
       
 42716  * @param {Object}    props.preview        Preview to be rendered in the placeholder.
       
 42717  * @param {boolean}   props.isColumnLayout Whether a column layout should be used.
       
 42718  *
       
 42719  * @return {Object}       The rendered placeholder.
       
 42720  */
 34823 
 42721 
 34824 function Placeholder(_ref) {
 42722 function Placeholder(_ref) {
 34825   var icon = _ref.icon,
 42723   var icon = _ref.icon,
 34826       children = _ref.children,
 42724       children = _ref.children,
 34827       label = _ref.label,
 42725       label = _ref.label,
 34828       instructions = _ref.instructions,
 42726       instructions = _ref.instructions,
 34829       className = _ref.className,
 42727       className = _ref.className,
 34830       notices = _ref.notices,
 42728       notices = _ref.notices,
 34831       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["icon", "children", "label", "instructions", "className", "notices"]);
 42729       preview = _ref.preview,
 34832 
 42730       isColumnLayout = _ref.isColumnLayout,
 34833   var classes = classnames_default()('components-placeholder', className);
 42731       additionalProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["icon", "children", "label", "instructions", "className", "notices", "preview", "isColumnLayout"]);
       
 42732 
       
 42733   var _useResizeObserver = Object(external_this_wp_compose_["useResizeObserver"])(),
       
 42734       _useResizeObserver2 = Object(slicedToArray["a" /* default */])(_useResizeObserver, 2),
       
 42735       resizeListener = _useResizeObserver2[0],
       
 42736       width = _useResizeObserver2[1].width; // Since `useResizeObserver` will report a width of `null` until after the
       
 42737   // first render, avoid applying any modifier classes until width is known.
       
 42738 
       
 42739 
       
 42740   var modifierClassNames;
       
 42741 
       
 42742   if (typeof width === 'number') {
       
 42743     modifierClassNames = {
       
 42744       'is-large': width >= 320,
       
 42745       'is-medium': width >= 160 && width < 320,
       
 42746       'is-small': width < 160
       
 42747     };
       
 42748   }
       
 42749 
       
 42750   var classes = classnames_default()('components-placeholder', className, modifierClassNames);
       
 42751   var fieldsetClasses = classnames_default()('components-placeholder__fieldset', {
       
 42752     'is-column-layout': isColumnLayout
       
 42753   });
 34834   return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, additionalProps, {
 42754   return Object(external_this_wp_element_["createElement"])("div", Object(esm_extends["a" /* default */])({}, additionalProps, {
 34835     className: classes
 42755     className: classes
 34836   }), notices, Object(external_this_wp_element_["createElement"])("div", {
 42756   }), resizeListener, notices, preview && Object(external_this_wp_element_["createElement"])("div", {
       
 42757     className: "components-placeholder__preview"
       
 42758   }, preview), Object(external_this_wp_element_["createElement"])("div", {
 34837     className: "components-placeholder__label"
 42759     className: "components-placeholder__label"
 34838   }, Object(external_lodash_["isString"])(icon) ? Object(external_this_wp_element_["createElement"])(dashicon_Dashicon, {
 42760   }, Object(external_this_wp_element_["createElement"])(components_build_module_icon["a" /* default */], {
 34839     icon: icon
 42761     icon: icon
 34840   }) : icon, label), !!instructions && Object(external_this_wp_element_["createElement"])("div", {
 42762   }), label), !!instructions && Object(external_this_wp_element_["createElement"])("div", {
 34841     className: "components-placeholder__instructions"
 42763     className: "components-placeholder__instructions"
 34842   }, instructions), Object(external_this_wp_element_["createElement"])("div", {
 42764   }, instructions), Object(external_this_wp_element_["createElement"])("div", {
 34843     className: "components-placeholder__fieldset"
 42765     className: fieldsetClasses
 34844   }, children));
 42766   }, children));
 34845 }
 42767 }
 34846 
 42768 
 34847 /* harmony default export */ var placeholder = (Placeholder);
 42769 /* harmony default export */ var placeholder = (Placeholder);
 34848 
 42770 
 34849 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/positioned-at-selection/index.js
       
 34850 
       
 34851 
       
 34852 
       
 34853 
       
 34854 
       
 34855 
       
 34856 
       
 34857 /**
       
 34858  * WordPress dependencies
       
 34859  */
       
 34860 
       
 34861 
       
 34862 /**
       
 34863  * Returns a style object for applying as `position: absolute` for an element
       
 34864  * relative to the bottom-center of the current selection. Includes `top` and
       
 34865  * `left` style properties.
       
 34866  *
       
 34867  * @return {Object} Style object.
       
 34868  */
       
 34869 
       
 34870 function getCurrentCaretPositionStyle() {
       
 34871   var selection = window.getSelection(); // Unlikely, but in the case there is no selection, return empty styles so
       
 34872   // as to avoid a thrown error by `Selection#getRangeAt` on invalid index.
       
 34873 
       
 34874   if (selection.rangeCount === 0) {
       
 34875     return {};
       
 34876   } // Get position relative viewport.
       
 34877 
       
 34878 
       
 34879   var rect = Object(external_this_wp_dom_["getRectangleFromRange"])(selection.getRangeAt(0));
       
 34880   var top = rect.top + rect.height;
       
 34881   var left = rect.left + rect.width / 2; // Offset by positioned parent, if one exists.
       
 34882 
       
 34883   var offsetParent = Object(external_this_wp_dom_["getOffsetParent"])(selection.anchorNode);
       
 34884 
       
 34885   if (offsetParent) {
       
 34886     var parentRect = offsetParent.getBoundingClientRect();
       
 34887     top -= parentRect.top;
       
 34888     left -= parentRect.left;
       
 34889   }
       
 34890 
       
 34891   return {
       
 34892     top: top,
       
 34893     left: left
       
 34894   };
       
 34895 }
       
 34896 /**
       
 34897  * Component which renders itself positioned under the current caret selection.
       
 34898  * The position is calculated at the time of the component being mounted, so it
       
 34899  * should only be mounted after the desired selection has been made.
       
 34900  *
       
 34901  * @type {WPComponent}
       
 34902  */
       
 34903 
       
 34904 
       
 34905 var positioned_at_selection_PositionedAtSelection =
       
 34906 /*#__PURE__*/
       
 34907 function (_Component) {
       
 34908   Object(inherits["a" /* default */])(PositionedAtSelection, _Component);
       
 34909 
       
 34910   function PositionedAtSelection() {
       
 34911     var _this;
       
 34912 
       
 34913     Object(classCallCheck["a" /* default */])(this, PositionedAtSelection);
       
 34914 
       
 34915     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(PositionedAtSelection).apply(this, arguments));
       
 34916     _this.state = {
       
 34917       style: getCurrentCaretPositionStyle()
       
 34918     };
       
 34919     return _this;
       
 34920   }
       
 34921 
       
 34922   Object(createClass["a" /* default */])(PositionedAtSelection, [{
       
 34923     key: "render",
       
 34924     value: function render() {
       
 34925       var children = this.props.children;
       
 34926       var style = this.state.style;
       
 34927       return Object(external_this_wp_element_["createElement"])("div", {
       
 34928         className: "editor-format-toolbar__selection-position block-editor-format-toolbar__selection-position",
       
 34929         style: style
       
 34930       }, children);
       
 34931     }
       
 34932   }]);
       
 34933 
       
 34934   return PositionedAtSelection;
       
 34935 }(external_this_wp_element_["Component"]);
       
 34936 
       
 34937 
       
 34938 
       
 34939 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/terms.js
 42771 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/terms.js
 34940 
 42772 
       
 42773 
       
 42774 function terms_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 42775 
       
 42776 function terms_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { terms_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { terms_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 34941 
 42777 
 34942 /**
 42778 /**
 34943  * External dependencies
 42779  * External dependencies
 34944  */
 42780  */
 34945 
 42781 
 34951  * @return {Array} Array of terms in tree format.
 42787  * @return {Array} Array of terms in tree format.
 34952  */
 42788  */
 34953 
 42789 
 34954 function buildTermsTree(flatTerms) {
 42790 function buildTermsTree(flatTerms) {
 34955   var flatTermsWithParentAndChildren = flatTerms.map(function (term) {
 42791   var flatTermsWithParentAndChildren = flatTerms.map(function (term) {
 34956     return Object(objectSpread["a" /* default */])({
 42792     return terms_objectSpread({
 34957       children: [],
 42793       children: [],
 34958       parent: null
 42794       parent: null
 34959     }, term);
 42795     }, term);
 34960   });
 42796   });
 34961   var termsByParent = Object(external_lodash_["groupBy"])(flatTermsWithParentAndChildren, 'parent');
 42797   var termsByParent = Object(external_this_lodash_["groupBy"])(flatTermsWithParentAndChildren, 'parent');
 34962 
 42798 
 34963   if (termsByParent.null && termsByParent.null.length) {
 42799   if (termsByParent.null && termsByParent.null.length) {
 34964     return flatTermsWithParentAndChildren;
 42800     return flatTermsWithParentAndChildren;
 34965   }
 42801   }
 34966 
 42802 
 34967   var fillWithChildren = function fillWithChildren(terms) {
 42803   var fillWithChildren = function fillWithChildren(terms) {
 34968     return terms.map(function (term) {
 42804     return terms.map(function (term) {
 34969       var children = termsByParent[term.id];
 42805       var children = termsByParent[term.id];
 34970       return Object(objectSpread["a" /* default */])({}, term, {
 42806       return terms_objectSpread({}, term, {
 34971         children: children && children.length ? fillWithChildren(children) : []
 42807         children: children && children.length ? fillWithChildren(children) : []
 34972       });
 42808       });
 34973     });
 42809     });
 34974   };
 42810   };
 34975 
 42811 
 34990  * Internal dependencies
 42826  * Internal dependencies
 34991  */
 42827  */
 34992 
 42828 
 34993 
 42829 
 34994 
 42830 
 34995 function getSelectOptions(tree) {
 42831 function tree_select_getSelectOptions(tree) {
 34996   var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
 42832   var level = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
 34997   return Object(external_lodash_["flatMap"])(tree, function (treeNode) {
 42833   return Object(external_this_lodash_["flatMap"])(tree, function (treeNode) {
 34998     return [{
 42834     return [{
 34999       value: treeNode.id,
 42835       value: treeNode.id,
 35000       label: Object(external_lodash_["repeat"])("\xA0", level * 3) + Object(external_lodash_["unescape"])(treeNode.name)
 42836       label: Object(external_this_lodash_["repeat"])("\xA0", level * 3) + Object(external_this_lodash_["unescape"])(treeNode.name)
 35001     }].concat(Object(toConsumableArray["a" /* default */])(getSelectOptions(treeNode.children || [], level + 1)));
 42837     }].concat(Object(toConsumableArray["a" /* default */])(tree_select_getSelectOptions(treeNode.children || [], level + 1)));
 35002   });
 42838   });
 35003 }
 42839 }
 35004 
 42840 
 35005 function TreeSelect(_ref) {
 42841 function TreeSelect(_ref) {
 35006   var label = _ref.label,
 42842   var label = _ref.label,
 35008       onChange = _ref.onChange,
 42844       onChange = _ref.onChange,
 35009       selectedId = _ref.selectedId,
 42845       selectedId = _ref.selectedId,
 35010       tree = _ref.tree,
 42846       tree = _ref.tree,
 35011       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "noOptionLabel", "onChange", "selectedId", "tree"]);
 42847       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "noOptionLabel", "onChange", "selectedId", "tree"]);
 35012 
 42848 
 35013   var options = Object(external_lodash_["compact"])([noOptionLabel && {
 42849   var options = Object(external_this_lodash_["compact"])([noOptionLabel && {
 35014     value: '',
 42850     value: '',
 35015     label: noOptionLabel
 42851     label: noOptionLabel
 35016   }].concat(Object(toConsumableArray["a" /* default */])(getSelectOptions(tree))));
 42852   }].concat(Object(toConsumableArray["a" /* default */])(tree_select_getSelectOptions(tree))));
 35017   return Object(external_this_wp_element_["createElement"])(select_control, Object(esm_extends["a" /* default */])({
 42853   return Object(external_this_wp_element_["createElement"])(SelectControl, Object(esm_extends["a" /* default */])({
 35018     label: label,
 42854     label: label,
 35019     options: options,
 42855     options: options,
 35020     onChange: onChange
 42856     onChange: onChange
 35021   }, {
 42857   }, {
 35022     value: selectedId
 42858     value: selectedId
 35025 
 42861 
 35026 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/category-select.js
 42862 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/category-select.js
 35027 
 42863 
 35028 
 42864 
 35029 
 42865 
       
 42866 
 35030 /**
 42867 /**
 35031  * Internal dependencies
 42868  * Internal dependencies
 35032  */
 42869  */
 35033 
 42870 
 35034 
 42871 
 35035 function CategorySelect(_ref) {
 42872 function CategorySelect(_ref) {
 35036   var label = _ref.label,
 42873   var label = _ref.label,
 35037       noOptionLabel = _ref.noOptionLabel,
 42874       noOptionLabel = _ref.noOptionLabel,
 35038       categoriesList = _ref.categoriesList,
 42875       categoriesList = _ref.categoriesList,
 35039       selectedCategoryId = _ref.selectedCategoryId,
 42876       selectedCategoryId = _ref.selectedCategoryId,
 35040       onChange = _ref.onChange;
 42877       onChange = _ref.onChange,
       
 42878       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "noOptionLabel", "categoriesList", "selectedCategoryId", "onChange"]);
       
 42879 
 35041   var termsTree = buildTermsTree(categoriesList);
 42880   var termsTree = buildTermsTree(categoriesList);
 35042   return Object(external_this_wp_element_["createElement"])(TreeSelect, Object(esm_extends["a" /* default */])({
 42881   return Object(external_this_wp_element_["createElement"])(TreeSelect, Object(esm_extends["a" /* default */])({
 35043     label: label,
 42882     label: label,
 35044     noOptionLabel: noOptionLabel,
 42883     noOptionLabel: noOptionLabel,
 35045     onChange: onChange
 42884     onChange: onChange
 35046   }, {
 42885   }, {
 35047     tree: termsTree,
 42886     tree: termsTree,
 35048     selectedId: selectedCategoryId
 42887     selectedId: selectedCategoryId
       
 42888   }, props));
       
 42889 }
       
 42890 
       
 42891 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/author-select.js
       
 42892 
       
 42893 
       
 42894 
       
 42895 /**
       
 42896  * Internal dependencies
       
 42897  */
       
 42898 
       
 42899 
       
 42900 function AuthorSelect(_ref) {
       
 42901   var label = _ref.label,
       
 42902       noOptionLabel = _ref.noOptionLabel,
       
 42903       authorList = _ref.authorList,
       
 42904       selectedAuthorId = _ref.selectedAuthorId,
       
 42905       onChange = _ref.onChange;
       
 42906   var termsTree = buildTermsTree(authorList);
       
 42907   return Object(external_this_wp_element_["createElement"])(TreeSelect, Object(esm_extends["a" /* default */])({
       
 42908     label: label,
       
 42909     noOptionLabel: noOptionLabel,
       
 42910     onChange: onChange
       
 42911   }, {
       
 42912     tree: termsTree,
       
 42913     selectedId: selectedAuthorId
 35049   }));
 42914   }));
 35050 }
 42915 }
 35051 
 42916 
 35052 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/index.js
 42917 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/query-controls/index.js
 35053 
 42918 
 35058  */
 42923  */
 35059 
 42924 
 35060 /**
 42925 /**
 35061  * Internal dependencies
 42926  * Internal dependencies
 35062  */
 42927  */
       
 42928 
 35063 
 42929 
 35064 
 42930 
 35065 
 42931 
 35066 var DEFAULT_MIN_ITEMS = 1;
 42932 var DEFAULT_MIN_ITEMS = 1;
 35067 var DEFAULT_MAX_ITEMS = 100;
 42933 var DEFAULT_MAX_ITEMS = 100;
       
 42934 var MAX_CATEGORIES_SUGGESTIONS = 20;
 35068 function QueryControls(_ref) {
 42935 function QueryControls(_ref) {
 35069   var categoriesList = _ref.categoriesList,
 42936   var authorList = _ref.authorList,
       
 42937       selectedAuthorId = _ref.selectedAuthorId,
       
 42938       categoriesList = _ref.categoriesList,
 35070       selectedCategoryId = _ref.selectedCategoryId,
 42939       selectedCategoryId = _ref.selectedCategoryId,
       
 42940       categorySuggestions = _ref.categorySuggestions,
       
 42941       selectedCategories = _ref.selectedCategories,
 35071       numberOfItems = _ref.numberOfItems,
 42942       numberOfItems = _ref.numberOfItems,
 35072       order = _ref.order,
 42943       order = _ref.order,
 35073       orderBy = _ref.orderBy,
 42944       orderBy = _ref.orderBy,
 35074       _ref$maxItems = _ref.maxItems,
 42945       _ref$maxItems = _ref.maxItems,
 35075       maxItems = _ref$maxItems === void 0 ? DEFAULT_MAX_ITEMS : _ref$maxItems,
 42946       maxItems = _ref$maxItems === void 0 ? DEFAULT_MAX_ITEMS : _ref$maxItems,
 35076       _ref$minItems = _ref.minItems,
 42947       _ref$minItems = _ref.minItems,
 35077       minItems = _ref$minItems === void 0 ? DEFAULT_MIN_ITEMS : _ref$minItems,
 42948       minItems = _ref$minItems === void 0 ? DEFAULT_MIN_ITEMS : _ref$minItems,
 35078       onCategoryChange = _ref.onCategoryChange,
 42949       onCategoryChange = _ref.onCategoryChange,
       
 42950       onAuthorChange = _ref.onAuthorChange,
 35079       onNumberOfItemsChange = _ref.onNumberOfItemsChange,
 42951       onNumberOfItemsChange = _ref.onNumberOfItemsChange,
 35080       onOrderChange = _ref.onOrderChange,
 42952       onOrderChange = _ref.onOrderChange,
 35081       onOrderByChange = _ref.onOrderByChange;
 42953       onOrderByChange = _ref.onOrderByChange;
 35082   return [onOrderChange && onOrderByChange && Object(external_this_wp_element_["createElement"])(select_control, {
 42954   return [onOrderChange && onOrderByChange && Object(external_this_wp_element_["createElement"])(SelectControl, {
 35083     key: "query-controls-order-select",
 42955     key: "query-controls-order-select",
 35084     label: Object(external_this_wp_i18n_["__"])('Order by'),
 42956     label: Object(external_this_wp_i18n_["__"])('Order by'),
 35085     value: "".concat(orderBy, "/").concat(order),
 42957     value: "".concat(orderBy, "/").concat(order),
 35086     options: [{
 42958     options: [{
 35087       label: Object(external_this_wp_i18n_["__"])('Newest to Oldest'),
 42959       label: Object(external_this_wp_i18n_["__"])('Newest to oldest'),
 35088       value: 'date/desc'
 42960       value: 'date/desc'
 35089     }, {
 42961     }, {
 35090       label: Object(external_this_wp_i18n_["__"])('Oldest to Newest'),
 42962       label: Object(external_this_wp_i18n_["__"])('Oldest to newest'),
 35091       value: 'date/asc'
 42963       value: 'date/asc'
 35092     }, {
 42964     }, {
 35093       /* translators: label for ordering posts by title in ascending order */
 42965       /* translators: label for ordering posts by title in ascending order */
 35094       label: Object(external_this_wp_i18n_["__"])('A → Z'),
 42966       label: Object(external_this_wp_i18n_["__"])('A → Z'),
 35095       value: 'title/asc'
 42967       value: 'title/asc'
 35110 
 42982 
 35111       if (newOrderBy !== orderBy) {
 42983       if (newOrderBy !== orderBy) {
 35112         onOrderByChange(newOrderBy);
 42984         onOrderByChange(newOrderBy);
 35113       }
 42985       }
 35114     }
 42986     }
 35115   }), onCategoryChange && Object(external_this_wp_element_["createElement"])(CategorySelect, {
 42987   }), categoriesList && onCategoryChange && Object(external_this_wp_element_["createElement"])(CategorySelect, {
 35116     key: "query-controls-category-select",
 42988     key: "query-controls-category-select",
 35117     categoriesList: categoriesList,
 42989     categoriesList: categoriesList,
 35118     label: Object(external_this_wp_i18n_["__"])('Category'),
 42990     label: Object(external_this_wp_i18n_["__"])('Category'),
 35119     noOptionLabel: Object(external_this_wp_i18n_["__"])('All'),
 42991     noOptionLabel: Object(external_this_wp_i18n_["__"])('All'),
 35120     selectedCategoryId: selectedCategoryId,
 42992     selectedCategoryId: selectedCategoryId,
 35121     onChange: onCategoryChange
 42993     onChange: onCategoryChange
       
 42994   }), categorySuggestions && onCategoryChange && Object(external_this_wp_element_["createElement"])(form_token_field, {
       
 42995     key: "query-controls-categories-select",
       
 42996     label: Object(external_this_wp_i18n_["__"])('Categories'),
       
 42997     value: selectedCategories && selectedCategories.map(function (item) {
       
 42998       return {
       
 42999         id: item.id,
       
 43000         value: item.name || item.value
       
 43001       };
       
 43002     }),
       
 43003     suggestions: Object.keys(categorySuggestions),
       
 43004     onChange: onCategoryChange,
       
 43005     maxSuggestions: MAX_CATEGORIES_SUGGESTIONS
       
 43006   }), onAuthorChange && Object(external_this_wp_element_["createElement"])(AuthorSelect, {
       
 43007     key: "query-controls-author-select",
       
 43008     authorList: authorList,
       
 43009     label: Object(external_this_wp_i18n_["__"])('Author'),
       
 43010     noOptionLabel: Object(external_this_wp_i18n_["__"])('All'),
       
 43011     selectedAuthorId: selectedAuthorId,
       
 43012     onChange: onAuthorChange
 35122   }), onNumberOfItemsChange && Object(external_this_wp_element_["createElement"])(range_control, {
 43013   }), onNumberOfItemsChange && Object(external_this_wp_element_["createElement"])(range_control, {
 35123     key: "query-controls-range-control",
 43014     key: "query-controls-range-control",
 35124     label: Object(external_this_wp_i18n_["__"])('Number of items'),
 43015     label: Object(external_this_wp_i18n_["__"])('Number of items'),
 35125     value: numberOfItems,
 43016     value: numberOfItems,
 35126     onChange: onNumberOfItemsChange,
 43017     onChange: onNumberOfItemsChange,
 35128     max: maxItems,
 43019     max: maxItems,
 35129     required: true
 43020     required: true
 35130   })];
 43021   })];
 35131 }
 43022 }
 35132 
 43023 
       
 43024 // EXTERNAL MODULE: ./node_modules/reakit-warning/es/index.js + 2 modules
       
 43025 var reakit_warning_es = __webpack_require__(80);
       
 43026 
       
 43027 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/useLiveRef.js
       
 43028 var useLiveRef = __webpack_require__(46);
       
 43029 
       
 43030 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/createEvent.js
       
 43031 var createEvent = __webpack_require__(122);
       
 43032 
       
 43033 // EXTERNAL MODULE: ./node_modules/reakit-warning/es/warning.js
       
 43034 var warning = __webpack_require__(106);
       
 43035 
       
 43036 // EXTERNAL MODULE: ./node_modules/reakit-utils/es/useSealedState.js
       
 43037 var useSealedState = __webpack_require__(62);
       
 43038 
       
 43039 // CONCATENATED MODULE: ./node_modules/reakit/es/Radio/RadioState.js
       
 43040 
       
 43041 
       
 43042 
       
 43043 
       
 43044 
       
 43045 
       
 43046 
       
 43047 
       
 43048 
       
 43049 
       
 43050 
       
 43051 
       
 43052 
       
 43053 
       
 43054 
       
 43055 
       
 43056 
       
 43057 
       
 43058 
       
 43059 
       
 43060 
       
 43061 
       
 43062 
       
 43063 
       
 43064 
       
 43065 
       
 43066 
       
 43067 
       
 43068 
       
 43069 
       
 43070 
       
 43071 
       
 43072 
       
 43073 
       
 43074 
       
 43075 
       
 43076 
       
 43077 function useRadioState(initialState) {
       
 43078   if (initialState === void 0) {
       
 43079     initialState = {};
       
 43080   }
       
 43081 
       
 43082   var _useSealedState = Object(useSealedState["a" /* useSealedState */])(initialState),
       
 43083       initialValue = _useSealedState.state,
       
 43084       _useSealedState$loop = _useSealedState.loop,
       
 43085       loop = _useSealedState$loop === void 0 ? true : _useSealedState$loop,
       
 43086       sealed = Object(_rollupPluginBabelHelpers_1f0bf8c2["a" /* _ */])(_useSealedState, ["state", "loop"]);
       
 43087 
       
 43088   var _React$useState = Object(external_this_React_["useState"])(initialValue),
       
 43089       state = _React$useState[0],
       
 43090       setState = _React$useState[1];
       
 43091 
       
 43092   var composite = Object(CompositeState_3a25dcee["g" /* u */])(Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])(Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({}, sealed), {}, {
       
 43093     loop: loop
       
 43094   }));
       
 43095   return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])(Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({}, composite), {}, {
       
 43096     state: state,
       
 43097     setState: setState
       
 43098   });
       
 43099 }
       
 43100 var keys = [].concat(CompositeState_3a25dcee["g" /* u */].__keys, ["state", "setState"]);
       
 43101 useRadioState.__keys = keys;
       
 43102 
       
 43103 
       
 43104 
       
 43105 // CONCATENATED MODULE: ./node_modules/reakit/es/Radio/Radio.js
       
 43106 
       
 43107 
       
 43108 
       
 43109 
       
 43110 
       
 43111 
       
 43112 
       
 43113 
       
 43114 
       
 43115 
       
 43116 
       
 43117 
       
 43118 
       
 43119 
       
 43120 
       
 43121 
       
 43122 
       
 43123 
       
 43124 
       
 43125 
       
 43126 
       
 43127 
       
 43128 
       
 43129 
       
 43130 
       
 43131 
       
 43132 
       
 43133 
       
 43134 
       
 43135 
       
 43136 
       
 43137 
       
 43138 
       
 43139 
       
 43140 
       
 43141 
       
 43142 
       
 43143 
       
 43144 
       
 43145 
       
 43146 function getChecked(options) {
       
 43147   if (typeof options.checked !== "undefined") {
       
 43148     return options.checked;
       
 43149   }
       
 43150 
       
 43151   return typeof options.value !== "undefined" && options.state === options.value;
       
 43152 }
       
 43153 
       
 43154 function useInitialChecked(options) {
       
 43155   var _React$useState = Object(external_this_React_["useState"])(function () {
       
 43156     return getChecked(options);
       
 43157   }),
       
 43158       initialChecked = _React$useState[0];
       
 43159 
       
 43160   var _React$useState2 = Object(external_this_React_["useState"])(options.currentId),
       
 43161       initialCurrentId = _React$useState2[0];
       
 43162 
       
 43163   var id = options.id,
       
 43164       setCurrentId = options.setCurrentId;
       
 43165   Object(external_this_React_["useEffect"])(function () {
       
 43166     if (initialChecked && id && initialCurrentId !== id) {
       
 43167       setCurrentId === null || setCurrentId === void 0 ? void 0 : setCurrentId(id);
       
 43168     }
       
 43169   }, [initialChecked, id, setCurrentId, initialCurrentId]);
       
 43170 }
       
 43171 
       
 43172 function fireChange(element, onChange) {
       
 43173   var event = Object(createEvent["a" /* createEvent */])(element, "change");
       
 43174   Object.defineProperties(event, {
       
 43175     type: {
       
 43176       value: "change"
       
 43177     },
       
 43178     target: {
       
 43179       value: element
       
 43180     },
       
 43181     currentTarget: {
       
 43182       value: element
       
 43183     }
       
 43184   });
       
 43185   onChange === null || onChange === void 0 ? void 0 : onChange(event);
       
 43186 }
       
 43187 
       
 43188 var useRadio = Object(createHook["a" /* createHook */])({
       
 43189   name: "Radio",
       
 43190   compose: CompositeItem["b" /* useCompositeItem */],
       
 43191   useState: useRadioState,
       
 43192   keys: ["value", "checked", "unstable_checkOnFocus"],
       
 43193   useOptions: function useOptions(_ref, _ref2) {
       
 43194     var _options$value;
       
 43195 
       
 43196     var value = _ref2.value,
       
 43197         checked = _ref2.checked;
       
 43198 
       
 43199     var _ref$unstable_clickOn = _ref.unstable_clickOnEnter,
       
 43200         unstable_clickOnEnter = _ref$unstable_clickOn === void 0 ? false : _ref$unstable_clickOn,
       
 43201         _ref$unstable_checkOn = _ref.unstable_checkOnFocus,
       
 43202         unstable_checkOnFocus = _ref$unstable_checkOn === void 0 ? true : _ref$unstable_checkOn,
       
 43203         options = Object(_rollupPluginBabelHelpers_1f0bf8c2["a" /* _ */])(_ref, ["unstable_clickOnEnter", "unstable_checkOnFocus"]);
       
 43204 
       
 43205     return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])(Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({
       
 43206       checked: checked,
       
 43207       unstable_clickOnEnter: unstable_clickOnEnter,
       
 43208       unstable_checkOnFocus: unstable_checkOnFocus
       
 43209     }, options), {}, {
       
 43210       value: (_options$value = options.value) != null ? _options$value : value
       
 43211     });
       
 43212   },
       
 43213   useProps: function useProps(options, _ref3) {
       
 43214     var htmlRef = _ref3.ref,
       
 43215         htmlOnChange = _ref3.onChange,
       
 43216         htmlOnClick = _ref3.onClick,
       
 43217         htmlProps = Object(_rollupPluginBabelHelpers_1f0bf8c2["a" /* _ */])(_ref3, ["ref", "onChange", "onClick"]);
       
 43218 
       
 43219     var ref = Object(external_this_React_["useRef"])(null);
       
 43220 
       
 43221     var _React$useState3 = Object(external_this_React_["useState"])(true),
       
 43222         isNativeRadio = _React$useState3[0],
       
 43223         setIsNativeRadio = _React$useState3[1];
       
 43224 
       
 43225     var checked = getChecked(options);
       
 43226     var isCurrentItemRef = Object(useLiveRef["a" /* useLiveRef */])(options.currentId === options.id);
       
 43227     var onChangeRef = Object(useLiveRef["a" /* useLiveRef */])(htmlOnChange);
       
 43228     var onClickRef = Object(useLiveRef["a" /* useLiveRef */])(htmlOnClick);
       
 43229     useInitialChecked(options);
       
 43230     Object(external_this_React_["useEffect"])(function () {
       
 43231       var element = ref.current;
       
 43232 
       
 43233       if (!element) {
       
 43234          false ? undefined : void 0;
       
 43235         return;
       
 43236       }
       
 43237 
       
 43238       if (element.tagName !== "INPUT" || element.type !== "radio") {
       
 43239         setIsNativeRadio(false);
       
 43240       }
       
 43241     }, []);
       
 43242     var onChange = Object(external_this_React_["useCallback"])(function (event) {
       
 43243       var _onChangeRef$current, _options$setState;
       
 43244 
       
 43245       (_onChangeRef$current = onChangeRef.current) === null || _onChangeRef$current === void 0 ? void 0 : _onChangeRef$current.call(onChangeRef, event);
       
 43246       if (event.defaultPrevented) return;
       
 43247       if (options.disabled) return;
       
 43248       (_options$setState = options.setState) === null || _options$setState === void 0 ? void 0 : _options$setState.call(options, options.value);
       
 43249     }, [options.disabled, options.setState, options.value]);
       
 43250     var onClick = Object(external_this_React_["useCallback"])(function (event) {
       
 43251       var _onClickRef$current;
       
 43252 
       
 43253       (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);
       
 43254       if (event.defaultPrevented) return;
       
 43255       fireChange(event.currentTarget, onChange);
       
 43256     }, [onChange]);
       
 43257     Object(external_this_React_["useEffect"])(function () {
       
 43258       var element = ref.current;
       
 43259       if (!element) return;
       
 43260 
       
 43261       if (options.unstable_moves && isCurrentItemRef.current && options.unstable_checkOnFocus) {
       
 43262         fireChange(element, onChange);
       
 43263       }
       
 43264     }, [options.unstable_moves, options.unstable_checkOnFocus, onChange]);
       
 43265     return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({
       
 43266       ref: Object(useForkRef["a" /* useForkRef */])(ref, htmlRef),
       
 43267       role: !isNativeRadio ? "radio" : undefined,
       
 43268       type: isNativeRadio ? "radio" : undefined,
       
 43269       value: isNativeRadio ? options.value : undefined,
       
 43270       "aria-checked": checked,
       
 43271       checked: checked,
       
 43272       onChange: onChange,
       
 43273       onClick: onClick
       
 43274     }, htmlProps);
       
 43275   }
       
 43276 });
       
 43277 var Radio = Object(createComponent["a" /* createComponent */])({
       
 43278   as: "input",
       
 43279   memo: true,
       
 43280   useHook: useRadio
       
 43281 });
       
 43282 
       
 43283 
       
 43284 
       
 43285 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/radio-context/index.js
       
 43286 /**
       
 43287  * WordPress dependencies
       
 43288  */
       
 43289 
       
 43290 var RadioContext = Object(external_this_wp_element_["createContext"])({
       
 43291   state: null,
       
 43292   setState: function setState() {}
       
 43293 });
       
 43294 /* harmony default export */ var radio_context = (RadioContext);
       
 43295 
       
 43296 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/radio/index.js
       
 43297 
       
 43298 
       
 43299 
       
 43300 
       
 43301 /**
       
 43302  * External dependencies
       
 43303  */
       
 43304 
       
 43305 /**
       
 43306  * WordPress dependencies
       
 43307  */
       
 43308 
       
 43309 
       
 43310 /**
       
 43311  * Internal dependencies
       
 43312  */
       
 43313 
       
 43314 
       
 43315 
       
 43316 
       
 43317 function radio_Radio(_ref, ref) {
       
 43318   var children = _ref.children,
       
 43319       value = _ref.value,
       
 43320       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "value"]);
       
 43321 
       
 43322   var radioContext = Object(external_this_wp_element_["useContext"])(radio_context);
       
 43323   var checked = radioContext.state === value;
       
 43324   return Object(external_this_wp_element_["createElement"])(Radio, Object(esm_extends["a" /* default */])({
       
 43325     ref: ref,
       
 43326     as: build_module_button["a" /* default */],
       
 43327     isPrimary: checked,
       
 43328     isSecondary: !checked,
       
 43329     value: value
       
 43330   }, radioContext, props), children || value);
       
 43331 }
       
 43332 
       
 43333 /* harmony default export */ var build_module_radio = (Object(external_this_wp_element_["forwardRef"])(radio_Radio));
       
 43334 
       
 43335 // EXTERNAL MODULE: ./node_modules/reakit-system/es/useCreateElement.js
       
 43336 var useCreateElement = __webpack_require__(78);
       
 43337 
       
 43338 // CONCATENATED MODULE: ./node_modules/reakit/es/Radio/RadioGroup.js
       
 43339 
       
 43340 
       
 43341 
       
 43342 
       
 43343 
       
 43344 
       
 43345 
       
 43346 
       
 43347 
       
 43348 
       
 43349 
       
 43350 
       
 43351 
       
 43352 
       
 43353 
       
 43354 
       
 43355 
       
 43356 
       
 43357 
       
 43358 
       
 43359 
       
 43360 
       
 43361 
       
 43362 
       
 43363 
       
 43364 
       
 43365 
       
 43366 
       
 43367 
       
 43368 
       
 43369 
       
 43370 
       
 43371 
       
 43372 
       
 43373 
       
 43374 
       
 43375 
       
 43376 
       
 43377 var useRadioGroup = Object(createHook["a" /* createHook */])({
       
 43378   name: "RadioGroup",
       
 43379   compose: Composite["b" /* useComposite */],
       
 43380   useState: useRadioState,
       
 43381   useProps: function useProps(_, htmlProps) {
       
 43382     return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({
       
 43383       role: "radiogroup"
       
 43384     }, htmlProps);
       
 43385   }
       
 43386 });
       
 43387 var RadioGroup = Object(createComponent["a" /* createComponent */])({
       
 43388   as: "div",
       
 43389   useHook: useRadioGroup,
       
 43390   useCreateElement: function useCreateElement$1(type, props, children) {
       
 43391      false ? undefined : void 0;
       
 43392     return Object(useCreateElement["a" /* useCreateElement */])(type, props, children);
       
 43393   }
       
 43394 });
       
 43395 
       
 43396 
       
 43397 
       
 43398 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/radio-group/index.js
       
 43399 
       
 43400 
       
 43401 
       
 43402 
       
 43403 
       
 43404 function radio_group_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 43405 
       
 43406 function radio_group_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { radio_group_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { radio_group_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 43407 
       
 43408 /**
       
 43409  * External dependencies
       
 43410  */
       
 43411 
       
 43412 /**
       
 43413  * WordPress dependencies
       
 43414  */
       
 43415 
       
 43416 
       
 43417 /**
       
 43418  * Internal dependencies
       
 43419  */
       
 43420 
       
 43421 
       
 43422 
       
 43423 
       
 43424 function radio_group_RadioGroup(_ref, ref) {
       
 43425   var accessibilityLabel = _ref.accessibilityLabel,
       
 43426       checked = _ref.checked,
       
 43427       defaultChecked = _ref.defaultChecked,
       
 43428       disabled = _ref.disabled,
       
 43429       onChange = _ref.onChange,
       
 43430       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["accessibilityLabel", "checked", "defaultChecked", "disabled", "onChange"]);
       
 43431 
       
 43432   var radioState = useRadioState({
       
 43433     state: defaultChecked,
       
 43434     baseId: props.id
       
 43435   });
       
 43436 
       
 43437   var radioContext = radio_group_objectSpread({}, radioState, {
       
 43438     disabled: disabled,
       
 43439     // controlled or uncontrolled
       
 43440     state: checked || radioState.state,
       
 43441     setState: onChange || radioState.setState
       
 43442   });
       
 43443 
       
 43444   return Object(external_this_wp_element_["createElement"])(radio_context.Provider, {
       
 43445     value: radioContext
       
 43446   }, Object(external_this_wp_element_["createElement"])(RadioGroup, Object(esm_extends["a" /* default */])({
       
 43447     ref: ref,
       
 43448     as: button_group,
       
 43449     "aria-label": accessibilityLabel
       
 43450   }, radioState, props)));
       
 43451 }
       
 43452 
       
 43453 /* harmony default export */ var radio_group = (Object(external_this_wp_element_["forwardRef"])(radio_group_RadioGroup));
       
 43454 
 35133 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/radio-control/index.js
 43455 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/radio-control/index.js
 35134 
 43456 
 35135 
 43457 
 35136 /**
 43458 /**
 35137  * External dependencies
 43459  * External dependencies
 35144 
 43466 
 35145 
 43467 
 35146 /**
 43468 /**
 35147  * Internal dependencies
 43469  * Internal dependencies
 35148  */
 43470  */
 35149 
       
 35150 
 43471 
 35151 
 43472 
 35152 function RadioControl(_ref) {
 43473 function RadioControl(_ref) {
 35153   var label = _ref.label,
 43474   var label = _ref.label,
 35154       className = _ref.className,
 43475       className = _ref.className,
 35155       selected = _ref.selected,
 43476       selected = _ref.selected,
 35156       help = _ref.help,
 43477       help = _ref.help,
 35157       instanceId = _ref.instanceId,
       
 35158       onChange = _ref.onChange,
 43478       onChange = _ref.onChange,
 35159       _ref$options = _ref.options,
 43479       _ref$options = _ref.options,
 35160       options = _ref$options === void 0 ? [] : _ref$options;
 43480       options = _ref$options === void 0 ? [] : _ref$options;
       
 43481   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(RadioControl);
 35161   var id = "inspector-radio-control-".concat(instanceId);
 43482   var id = "inspector-radio-control-".concat(instanceId);
 35162 
 43483 
 35163   var onChangeValue = function onChangeValue(event) {
 43484   var onChangeValue = function onChangeValue(event) {
 35164     return onChange(event.target.value);
 43485     return onChange(event.target.value);
 35165   };
 43486   };
 35166 
 43487 
 35167   return !Object(external_lodash_["isEmpty"])(options) && Object(external_this_wp_element_["createElement"])(base_control, {
 43488   return !Object(external_this_lodash_["isEmpty"])(options) && Object(external_this_wp_element_["createElement"])(base_control, {
 35168     label: label,
 43489     label: label,
 35169     id: id,
 43490     id: id,
 35170     help: help,
 43491     help: help,
 35171     className: classnames_default()(className, 'components-radio-control')
 43492     className: classnames_default()(className, 'components-radio-control')
 35172   }, options.map(function (option, index) {
 43493   }, options.map(function (option, index) {
 35186       htmlFor: "".concat(id, "-").concat(index)
 43507       htmlFor: "".concat(id, "-").concat(index)
 35187     }, option.label));
 43508     }, option.label));
 35188   }));
 43509   }));
 35189 }
 43510 }
 35190 
 43511 
 35191 /* harmony default export */ var radio_control = (Object(external_this_wp_compose_["withInstanceId"])(RadioControl));
 43512 // CONCATENATED MODULE: ./node_modules/re-resizable/lib/resizer.js
 35192 
 43513 var __extends = (undefined && undefined.__extends) || (function () {
 35193 // EXTERNAL MODULE: external "React"
 43514     var extendStatics = function (d, b) {
 35194 var external_React_ = __webpack_require__(27);
 43515         extendStatics = Object.setPrototypeOf ||
       
 43516             ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
       
 43517             function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
       
 43518         return extendStatics(d, b);
       
 43519     };
       
 43520     return function (d, b) {
       
 43521         extendStatics(d, b);
       
 43522         function __() { this.constructor = d; }
       
 43523         d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
       
 43524     };
       
 43525 })();
       
 43526 var __assign = (undefined && undefined.__assign) || function () {
       
 43527     __assign = Object.assign || function(t) {
       
 43528         for (var s, i = 1, n = arguments.length; i < n; i++) {
       
 43529             s = arguments[i];
       
 43530             for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
       
 43531                 t[p] = s[p];
       
 43532         }
       
 43533         return t;
       
 43534     };
       
 43535     return __assign.apply(this, arguments);
       
 43536 };
       
 43537 
       
 43538 var resizer_styles = {
       
 43539     top: {
       
 43540         width: '100%',
       
 43541         height: '10px',
       
 43542         top: '-5px',
       
 43543         left: '0px',
       
 43544         cursor: 'row-resize',
       
 43545     },
       
 43546     right: {
       
 43547         width: '10px',
       
 43548         height: '100%',
       
 43549         top: '0px',
       
 43550         right: '-5px',
       
 43551         cursor: 'col-resize',
       
 43552     },
       
 43553     bottom: {
       
 43554         width: '100%',
       
 43555         height: '10px',
       
 43556         bottom: '-5px',
       
 43557         left: '0px',
       
 43558         cursor: 'row-resize',
       
 43559     },
       
 43560     left: {
       
 43561         width: '10px',
       
 43562         height: '100%',
       
 43563         top: '0px',
       
 43564         left: '-5px',
       
 43565         cursor: 'col-resize',
       
 43566     },
       
 43567     topRight: {
       
 43568         width: '20px',
       
 43569         height: '20px',
       
 43570         position: 'absolute',
       
 43571         right: '-10px',
       
 43572         top: '-10px',
       
 43573         cursor: 'ne-resize',
       
 43574     },
       
 43575     bottomRight: {
       
 43576         width: '20px',
       
 43577         height: '20px',
       
 43578         position: 'absolute',
       
 43579         right: '-10px',
       
 43580         bottom: '-10px',
       
 43581         cursor: 'se-resize',
       
 43582     },
       
 43583     bottomLeft: {
       
 43584         width: '20px',
       
 43585         height: '20px',
       
 43586         position: 'absolute',
       
 43587         left: '-10px',
       
 43588         bottom: '-10px',
       
 43589         cursor: 'sw-resize',
       
 43590     },
       
 43591     topLeft: {
       
 43592         width: '20px',
       
 43593         height: '20px',
       
 43594         position: 'absolute',
       
 43595         left: '-10px',
       
 43596         top: '-10px',
       
 43597         cursor: 'nw-resize',
       
 43598     },
       
 43599 };
       
 43600 var resizer_Resizer = /** @class */ (function (_super) {
       
 43601     __extends(Resizer, _super);
       
 43602     function Resizer() {
       
 43603         var _this = _super !== null && _super.apply(this, arguments) || this;
       
 43604         _this.onMouseDown = function (e) {
       
 43605             _this.props.onResizeStart(e, _this.props.direction);
       
 43606         };
       
 43607         _this.onTouchStart = function (e) {
       
 43608             _this.props.onResizeStart(e, _this.props.direction);
       
 43609         };
       
 43610         return _this;
       
 43611     }
       
 43612     Resizer.prototype.render = function () {
       
 43613         return (external_this_React_["createElement"]("div", { className: this.props.className || '', style: __assign(__assign({ position: 'absolute', userSelect: 'none' }, resizer_styles[this.props.direction]), (this.props.replaceStyles || {})), onMouseDown: this.onMouseDown, onTouchStart: this.onTouchStart }, this.props.children));
       
 43614     };
       
 43615     return Resizer;
       
 43616 }(external_this_React_["PureComponent"]));
       
 43617 
       
 43618 
       
 43619 // EXTERNAL MODULE: ./node_modules/fast-memoize/src/index.js
       
 43620 var fast_memoize_src = __webpack_require__(116);
       
 43621 var src_default = /*#__PURE__*/__webpack_require__.n(fast_memoize_src);
 35195 
 43622 
 35196 // CONCATENATED MODULE: ./node_modules/re-resizable/lib/index.js
 43623 // CONCATENATED MODULE: ./node_modules/re-resizable/lib/index.js
 35197 
 43624 var lib_extends = (undefined && undefined.__extends) || (function () {
 35198 
 43625     var extendStatics = function (d, b) {
 35199 var lib_classCallCheck = function (instance, Constructor) {
 43626         extendStatics = Object.setPrototypeOf ||
 35200   if (!(instance instanceof Constructor)) {
 43627             ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
 35201     throw new TypeError("Cannot call a class as a function");
 43628             function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
 35202   }
 43629         return extendStatics(d, b);
       
 43630     };
       
 43631     return function (d, b) {
       
 43632         extendStatics(d, b);
       
 43633         function __() { this.constructor = d; }
       
 43634         d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
       
 43635     };
       
 43636 })();
       
 43637 var lib_assign = (undefined && undefined.__assign) || function () {
       
 43638     lib_assign = Object.assign || function(t) {
       
 43639         for (var s, i = 1, n = arguments.length; i < n; i++) {
       
 43640             s = arguments[i];
       
 43641             for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
       
 43642                 t[p] = s[p];
       
 43643         }
       
 43644         return t;
       
 43645     };
       
 43646     return lib_assign.apply(this, arguments);
 35203 };
 43647 };
 35204 
 43648 
 35205 var lib_createClass = function () {
 43649 
 35206   function defineProperties(target, props) {
 43650 
 35207     for (var i = 0; i < props.length; i++) {
 43651 var DEFAULT_SIZE = {
 35208       var descriptor = props[i];
 43652     width: 'auto',
 35209       descriptor.enumerable = descriptor.enumerable || false;
 43653     height: 'auto',
 35210       descriptor.configurable = true;
 43654 };
 35211       if ("value" in descriptor) descriptor.writable = true;
 43655 var clamp = src_default()(function (n, min, max) { return Math.max(Math.min(n, max), min); });
 35212       Object.defineProperty(target, descriptor.key, descriptor);
 43656 var snap = src_default()(function (n, size) { return Math.round(n / size) * size; });
 35213     }
 43657 var hasDirection = src_default()(function (dir, target) {
 35214   }
 43658     return new RegExp(dir, 'i').test(target);
 35215 
 43659 });
 35216   return function (Constructor, protoProps, staticProps) {
 43660 var findClosestSnap = src_default()(function (n, snapArray, snapGap) {
 35217     if (protoProps) defineProperties(Constructor.prototype, protoProps);
 43661     if (snapGap === void 0) { snapGap = 0; }
 35218     if (staticProps) defineProperties(Constructor, staticProps);
 43662     var closestGapIndex = snapArray.reduce(function (prev, curr, index) { return (Math.abs(curr - n) < Math.abs(snapArray[prev] - n) ? index : prev); }, 0);
 35219     return Constructor;
 43663     var gap = Math.abs(snapArray[closestGapIndex] - n);
       
 43664     return snapGap === 0 || gap < snapGap ? snapArray[closestGapIndex] : n;
       
 43665 });
       
 43666 var endsWith = src_default()(function (str, searchStr) {
       
 43667     return str.substr(str.length - searchStr.length, searchStr.length) === searchStr;
       
 43668 });
       
 43669 var getStringSize = src_default()(function (n) {
       
 43670     n = n.toString();
       
 43671     if (n === 'auto') {
       
 43672         return n;
       
 43673     }
       
 43674     if (endsWith(n, 'px')) {
       
 43675         return n;
       
 43676     }
       
 43677     if (endsWith(n, '%')) {
       
 43678         return n;
       
 43679     }
       
 43680     if (endsWith(n, 'vh')) {
       
 43681         return n;
       
 43682     }
       
 43683     if (endsWith(n, 'vw')) {
       
 43684         return n;
       
 43685     }
       
 43686     if (endsWith(n, 'vmax')) {
       
 43687         return n;
       
 43688     }
       
 43689     if (endsWith(n, 'vmin')) {
       
 43690         return n;
       
 43691     }
       
 43692     return n + "px";
       
 43693 });
       
 43694 var getPixelSize = function (size, parentSize, innerWidth, innerHeight) {
       
 43695     if (size && typeof size === 'string') {
       
 43696         if (endsWith(size, '%')) {
       
 43697             var ratio = Number(size.replace('%', '')) / 100;
       
 43698             return parentSize * ratio;
       
 43699         }
       
 43700         else if (endsWith(size, 'vw')) {
       
 43701             var ratio = Number(size.replace('vw', '')) / 100;
       
 43702             return innerWidth * ratio;
       
 43703         }
       
 43704         else if (endsWith(size, 'vh')) {
       
 43705             var ratio = Number(size.replace('vh', '')) / 100;
       
 43706             return innerHeight * ratio;
       
 43707         }
       
 43708     }
       
 43709     return size;
       
 43710 };
       
 43711 var calculateNewMax = src_default()(function (parentSize, innerWidth, innerHeight, maxWidth, maxHeight, minWidth, minHeight) {
       
 43712     maxWidth = getPixelSize(maxWidth, parentSize.width, innerWidth, innerHeight);
       
 43713     maxHeight = getPixelSize(maxHeight, parentSize.height, innerWidth, innerHeight);
       
 43714     minWidth = getPixelSize(minWidth, parentSize.width, innerWidth, innerHeight);
       
 43715     minHeight = getPixelSize(minHeight, parentSize.height, innerWidth, innerHeight);
       
 43716     return {
       
 43717         maxWidth: typeof maxWidth === 'undefined' ? undefined : Number(maxWidth),
       
 43718         maxHeight: typeof maxHeight === 'undefined' ? undefined : Number(maxHeight),
       
 43719         minWidth: typeof minWidth === 'undefined' ? undefined : Number(minWidth),
       
 43720         minHeight: typeof minHeight === 'undefined' ? undefined : Number(minHeight),
       
 43721     };
       
 43722 });
       
 43723 var definedProps = [
       
 43724     'as',
       
 43725     'style',
       
 43726     'className',
       
 43727     'grid',
       
 43728     'snap',
       
 43729     'bounds',
       
 43730     'size',
       
 43731     'defaultSize',
       
 43732     'minWidth',
       
 43733     'minHeight',
       
 43734     'maxWidth',
       
 43735     'maxHeight',
       
 43736     'lockAspectRatio',
       
 43737     'lockAspectRatioExtraWidth',
       
 43738     'lockAspectRatioExtraHeight',
       
 43739     'enable',
       
 43740     'handleStyles',
       
 43741     'handleClasses',
       
 43742     'handleWrapperStyle',
       
 43743     'handleWrapperClass',
       
 43744     'children',
       
 43745     'onResizeStart',
       
 43746     'onResize',
       
 43747     'onResizeStop',
       
 43748     'handleComponent',
       
 43749     'scale',
       
 43750     'resizeRatio',
       
 43751     'snapGap',
       
 43752 ];
       
 43753 // HACK: This class is used to calculate % size.
       
 43754 var baseClassName = '__resizable_base__';
       
 43755 var lib_Resizable = /** @class */ (function (_super) {
       
 43756     lib_extends(Resizable, _super);
       
 43757     function Resizable(props) {
       
 43758         var _this = _super.call(this, props) || this;
       
 43759         _this.ratio = 1;
       
 43760         _this.resizable = null;
       
 43761         // For parent boundary
       
 43762         _this.parentLeft = 0;
       
 43763         _this.parentTop = 0;
       
 43764         // For boundary
       
 43765         _this.resizableLeft = 0;
       
 43766         _this.resizableTop = 0;
       
 43767         // For target boundary
       
 43768         _this.targetLeft = 0;
       
 43769         _this.targetTop = 0;
       
 43770         _this.ref = function (c) {
       
 43771             if (c) {
       
 43772                 _this.resizable = c;
       
 43773             }
       
 43774         };
       
 43775         _this.state = {
       
 43776             isResizing: false,
       
 43777             width: typeof (_this.propsSize && _this.propsSize.width) === 'undefined'
       
 43778                 ? 'auto'
       
 43779                 : _this.propsSize && _this.propsSize.width,
       
 43780             height: typeof (_this.propsSize && _this.propsSize.height) === 'undefined'
       
 43781                 ? 'auto'
       
 43782                 : _this.propsSize && _this.propsSize.height,
       
 43783             direction: 'right',
       
 43784             original: {
       
 43785                 x: 0,
       
 43786                 y: 0,
       
 43787                 width: 0,
       
 43788                 height: 0,
       
 43789             },
       
 43790             backgroundStyle: {
       
 43791                 height: '100%',
       
 43792                 width: '100%',
       
 43793                 backgroundColor: 'rgba(0,0,0,0)',
       
 43794                 cursor: 'auto',
       
 43795                 opacity: 0,
       
 43796                 position: 'fixed',
       
 43797                 zIndex: 9999,
       
 43798                 top: '0',
       
 43799                 left: '0',
       
 43800                 bottom: '0',
       
 43801                 right: '0',
       
 43802             },
       
 43803             flexBasis: undefined,
       
 43804         };
       
 43805         _this.onResizeStart = _this.onResizeStart.bind(_this);
       
 43806         _this.onMouseMove = _this.onMouseMove.bind(_this);
       
 43807         _this.onMouseUp = _this.onMouseUp.bind(_this);
       
 43808         return _this;
       
 43809     }
       
 43810     Object.defineProperty(Resizable.prototype, "parentNode", {
       
 43811         get: function () {
       
 43812             if (!this.resizable) {
       
 43813                 return null;
       
 43814             }
       
 43815             return this.resizable.parentNode;
       
 43816         },
       
 43817         enumerable: true,
       
 43818         configurable: true
       
 43819     });
       
 43820     Object.defineProperty(Resizable.prototype, "window", {
       
 43821         get: function () {
       
 43822             if (!this.resizable) {
       
 43823                 return null;
       
 43824             }
       
 43825             if (!this.resizable.ownerDocument) {
       
 43826                 return null;
       
 43827             }
       
 43828             return this.resizable.ownerDocument.defaultView;
       
 43829         },
       
 43830         enumerable: true,
       
 43831         configurable: true
       
 43832     });
       
 43833     Object.defineProperty(Resizable.prototype, "propsSize", {
       
 43834         get: function () {
       
 43835             return this.props.size || this.props.defaultSize || DEFAULT_SIZE;
       
 43836         },
       
 43837         enumerable: true,
       
 43838         configurable: true
       
 43839     });
       
 43840     Object.defineProperty(Resizable.prototype, "base", {
       
 43841         get: function () {
       
 43842             var parent = this.parentNode;
       
 43843             if (!parent) {
       
 43844                 return undefined;
       
 43845             }
       
 43846             var children = [].slice.call(parent.children);
       
 43847             for (var _i = 0, children_1 = children; _i < children_1.length; _i++) {
       
 43848                 var n = children_1[_i];
       
 43849                 if (n.classList.contains(baseClassName)) {
       
 43850                     return n;
       
 43851                 }
       
 43852             }
       
 43853             return undefined;
       
 43854         },
       
 43855         enumerable: true,
       
 43856         configurable: true
       
 43857     });
       
 43858     Object.defineProperty(Resizable.prototype, "size", {
       
 43859         get: function () {
       
 43860             var width = 0;
       
 43861             var height = 0;
       
 43862             if (this.resizable && this.window) {
       
 43863                 var orgWidth = this.resizable.offsetWidth;
       
 43864                 var orgHeight = this.resizable.offsetHeight;
       
 43865                 // HACK: Set position `relative` to get parent size.
       
 43866                 //       This is because when re-resizable set `absolute`, I can not get base width correctly.
       
 43867                 var orgPosition = this.resizable.style.position;
       
 43868                 if (orgPosition !== 'relative') {
       
 43869                     this.resizable.style.position = 'relative';
       
 43870                 }
       
 43871                 // INFO: Use original width or height if set auto.
       
 43872                 width = this.resizable.style.width !== 'auto' ? this.resizable.offsetWidth : orgWidth;
       
 43873                 height = this.resizable.style.height !== 'auto' ? this.resizable.offsetHeight : orgHeight;
       
 43874                 // Restore original position
       
 43875                 this.resizable.style.position = orgPosition;
       
 43876             }
       
 43877             return { width: width, height: height };
       
 43878         },
       
 43879         enumerable: true,
       
 43880         configurable: true
       
 43881     });
       
 43882     Object.defineProperty(Resizable.prototype, "sizeStyle", {
       
 43883         get: function () {
       
 43884             var _this = this;
       
 43885             var size = this.props.size;
       
 43886             var getSize = function (key) {
       
 43887                 if (typeof _this.state[key] === 'undefined' || _this.state[key] === 'auto') {
       
 43888                     return 'auto';
       
 43889                 }
       
 43890                 if (_this.propsSize && _this.propsSize[key] && endsWith(_this.propsSize[key].toString(), '%')) {
       
 43891                     if (endsWith(_this.state[key].toString(), '%')) {
       
 43892                         return _this.state[key].toString();
       
 43893                     }
       
 43894                     var parentSize = _this.getParentSize();
       
 43895                     var value = Number(_this.state[key].toString().replace('px', ''));
       
 43896                     var percent = (value / parentSize[key]) * 100;
       
 43897                     return percent + "%";
       
 43898                 }
       
 43899                 return getStringSize(_this.state[key]);
       
 43900             };
       
 43901             var width = size && typeof size.width !== 'undefined' && !this.state.isResizing
       
 43902                 ? getStringSize(size.width)
       
 43903                 : getSize('width');
       
 43904             var height = size && typeof size.height !== 'undefined' && !this.state.isResizing
       
 43905                 ? getStringSize(size.height)
       
 43906                 : getSize('height');
       
 43907             return { width: width, height: height };
       
 43908         },
       
 43909         enumerable: true,
       
 43910         configurable: true
       
 43911     });
       
 43912     Resizable.prototype.getParentSize = function () {
       
 43913         if (!this.base || !this.parentNode) {
       
 43914             if (!this.window) {
       
 43915                 return { width: 0, height: 0 };
       
 43916             }
       
 43917             return { width: this.window.innerWidth, height: this.window.innerHeight };
       
 43918         }
       
 43919         // INFO: To calculate parent width with flex layout
       
 43920         var wrapChanged = false;
       
 43921         var wrap = this.parentNode.style.flexWrap;
       
 43922         var minWidth = this.base.style.minWidth;
       
 43923         if (wrap !== 'wrap') {
       
 43924             wrapChanged = true;
       
 43925             this.parentNode.style.flexWrap = 'wrap';
       
 43926             // HACK: Use relative to get parent padding size
       
 43927         }
       
 43928         this.base.style.position = 'relative';
       
 43929         this.base.style.minWidth = '100%';
       
 43930         var size = {
       
 43931             width: this.base.offsetWidth,
       
 43932             height: this.base.offsetHeight,
       
 43933         };
       
 43934         this.base.style.position = 'absolute';
       
 43935         if (wrapChanged) {
       
 43936             this.parentNode.style.flexWrap = wrap;
       
 43937         }
       
 43938         this.base.style.minWidth = minWidth;
       
 43939         return size;
       
 43940     };
       
 43941     Resizable.prototype.bindEvents = function () {
       
 43942         if (this.window) {
       
 43943             this.window.addEventListener('mouseup', this.onMouseUp);
       
 43944             this.window.addEventListener('mousemove', this.onMouseMove);
       
 43945             this.window.addEventListener('mouseleave', this.onMouseUp);
       
 43946             this.window.addEventListener('touchmove', this.onMouseMove, {
       
 43947                 capture: true,
       
 43948                 passive: false,
       
 43949             });
       
 43950             this.window.addEventListener('touchend', this.onMouseUp);
       
 43951         }
       
 43952     };
       
 43953     Resizable.prototype.unbindEvents = function () {
       
 43954         if (this.window) {
       
 43955             this.window.removeEventListener('mouseup', this.onMouseUp);
       
 43956             this.window.removeEventListener('mousemove', this.onMouseMove);
       
 43957             this.window.removeEventListener('mouseleave', this.onMouseUp);
       
 43958             this.window.removeEventListener('touchmove', this.onMouseMove, true);
       
 43959             this.window.removeEventListener('touchend', this.onMouseUp);
       
 43960         }
       
 43961     };
       
 43962     Resizable.prototype.componentDidMount = function () {
       
 43963         if (!this.resizable || !this.window) {
       
 43964             return;
       
 43965         }
       
 43966         var computedStyle = this.window.getComputedStyle(this.resizable);
       
 43967         this.setState({
       
 43968             width: this.state.width || this.size.width,
       
 43969             height: this.state.height || this.size.height,
       
 43970             flexBasis: computedStyle.flexBasis !== 'auto' ? computedStyle.flexBasis : undefined,
       
 43971         });
       
 43972         var parent = this.parentNode;
       
 43973         if (!parent) {
       
 43974             return;
       
 43975         }
       
 43976         if (this.base) {
       
 43977             return;
       
 43978         }
       
 43979         var element = this.window.document.createElement('div');
       
 43980         element.style.width = '100%';
       
 43981         element.style.height = '100%';
       
 43982         element.style.position = 'absolute';
       
 43983         element.style.transform = 'scale(0, 0)';
       
 43984         element.style.left = '0';
       
 43985         element.style.flex = '0';
       
 43986         if (element.classList) {
       
 43987             element.classList.add(baseClassName);
       
 43988         }
       
 43989         else {
       
 43990             element.className += baseClassName;
       
 43991         }
       
 43992         parent.appendChild(element);
       
 43993     };
       
 43994     Resizable.prototype.componentWillUnmount = function () {
       
 43995         if (this.window) {
       
 43996             this.unbindEvents();
       
 43997             var parent_1 = this.parentNode;
       
 43998             if (!this.base || !parent_1) {
       
 43999                 return;
       
 44000             }
       
 44001             if (!parent_1 || !this.base) {
       
 44002                 return;
       
 44003             }
       
 44004             parent_1.removeChild(this.base);
       
 44005         }
       
 44006     };
       
 44007     Resizable.prototype.createSizeForCssProperty = function (newSize, kind) {
       
 44008         var propsSize = this.propsSize && this.propsSize[kind];
       
 44009         return this.state[kind] === 'auto' &&
       
 44010             this.state.original[kind] === newSize &&
       
 44011             (typeof propsSize === 'undefined' || propsSize === 'auto')
       
 44012             ? 'auto'
       
 44013             : newSize;
       
 44014     };
       
 44015     Resizable.prototype.calculateNewMaxFromBoundary = function (maxWidth, maxHeight) {
       
 44016         if (this.props.bounds === 'parent') {
       
 44017             var parent_2 = this.parentNode;
       
 44018             if (parent_2) {
       
 44019                 var boundWidth = parent_2.offsetWidth + (this.parentLeft - this.resizableLeft);
       
 44020                 var boundHeight = parent_2.offsetHeight + (this.parentTop - this.resizableTop);
       
 44021                 maxWidth = maxWidth && maxWidth < boundWidth ? maxWidth : boundWidth;
       
 44022                 maxHeight = maxHeight && maxHeight < boundHeight ? maxHeight : boundHeight;
       
 44023             }
       
 44024         }
       
 44025         else if (this.props.bounds === 'window') {
       
 44026             if (this.window) {
       
 44027                 var boundWidth = this.window.innerWidth - this.resizableLeft;
       
 44028                 var boundHeight = this.window.innerHeight - this.resizableTop;
       
 44029                 maxWidth = maxWidth && maxWidth < boundWidth ? maxWidth : boundWidth;
       
 44030                 maxHeight = maxHeight && maxHeight < boundHeight ? maxHeight : boundHeight;
       
 44031             }
       
 44032         }
       
 44033         else if (this.props.bounds) {
       
 44034             var boundWidth = this.props.bounds.offsetWidth + (this.targetLeft - this.resizableLeft);
       
 44035             var boundHeight = this.props.bounds.offsetHeight + (this.targetTop - this.resizableTop);
       
 44036             maxWidth = maxWidth && maxWidth < boundWidth ? maxWidth : boundWidth;
       
 44037             maxHeight = maxHeight && maxHeight < boundHeight ? maxHeight : boundHeight;
       
 44038         }
       
 44039         return { maxWidth: maxWidth, maxHeight: maxHeight };
       
 44040     };
       
 44041     Resizable.prototype.calculateNewSizeFromDirection = function (clientX, clientY) {
       
 44042         var scale = this.props.scale || 1;
       
 44043         var resizeRatio = this.props.resizeRatio || 1;
       
 44044         var _a = this.state, direction = _a.direction, original = _a.original;
       
 44045         var _b = this.props, lockAspectRatio = _b.lockAspectRatio, lockAspectRatioExtraHeight = _b.lockAspectRatioExtraHeight, lockAspectRatioExtraWidth = _b.lockAspectRatioExtraWidth;
       
 44046         var newWidth = original.width;
       
 44047         var newHeight = original.height;
       
 44048         var extraHeight = lockAspectRatioExtraHeight || 0;
       
 44049         var extraWidth = lockAspectRatioExtraWidth || 0;
       
 44050         if (hasDirection('right', direction)) {
       
 44051             newWidth = original.width + ((clientX - original.x) * resizeRatio) / scale;
       
 44052             if (lockAspectRatio) {
       
 44053                 newHeight = (newWidth - extraWidth) / this.ratio + extraHeight;
       
 44054             }
       
 44055         }
       
 44056         if (hasDirection('left', direction)) {
       
 44057             newWidth = original.width - ((clientX - original.x) * resizeRatio) / scale;
       
 44058             if (lockAspectRatio) {
       
 44059                 newHeight = (newWidth - extraWidth) / this.ratio + extraHeight;
       
 44060             }
       
 44061         }
       
 44062         if (hasDirection('bottom', direction)) {
       
 44063             newHeight = original.height + ((clientY - original.y) * resizeRatio) / scale;
       
 44064             if (lockAspectRatio) {
       
 44065                 newWidth = (newHeight - extraHeight) * this.ratio + extraWidth;
       
 44066             }
       
 44067         }
       
 44068         if (hasDirection('top', direction)) {
       
 44069             newHeight = original.height - ((clientY - original.y) * resizeRatio) / scale;
       
 44070             if (lockAspectRatio) {
       
 44071                 newWidth = (newHeight - extraHeight) * this.ratio + extraWidth;
       
 44072             }
       
 44073         }
       
 44074         return { newWidth: newWidth, newHeight: newHeight };
       
 44075     };
       
 44076     Resizable.prototype.calculateNewSizeFromAspectRatio = function (newWidth, newHeight, max, min) {
       
 44077         var _a = this.props, lockAspectRatio = _a.lockAspectRatio, lockAspectRatioExtraHeight = _a.lockAspectRatioExtraHeight, lockAspectRatioExtraWidth = _a.lockAspectRatioExtraWidth;
       
 44078         var computedMinWidth = typeof min.width === 'undefined' ? 10 : min.width;
       
 44079         var computedMaxWidth = typeof max.width === 'undefined' || max.width < 0 ? newWidth : max.width;
       
 44080         var computedMinHeight = typeof min.height === 'undefined' ? 10 : min.height;
       
 44081         var computedMaxHeight = typeof max.height === 'undefined' || max.height < 0 ? newHeight : max.height;
       
 44082         var extraHeight = lockAspectRatioExtraHeight || 0;
       
 44083         var extraWidth = lockAspectRatioExtraWidth || 0;
       
 44084         if (lockAspectRatio) {
       
 44085             var extraMinWidth = (computedMinHeight - extraHeight) * this.ratio + extraWidth;
       
 44086             var extraMaxWidth = (computedMaxHeight - extraHeight) * this.ratio + extraWidth;
       
 44087             var extraMinHeight = (computedMinWidth - extraWidth) / this.ratio + extraHeight;
       
 44088             var extraMaxHeight = (computedMaxWidth - extraWidth) / this.ratio + extraHeight;
       
 44089             var lockedMinWidth = Math.max(computedMinWidth, extraMinWidth);
       
 44090             var lockedMaxWidth = Math.min(computedMaxWidth, extraMaxWidth);
       
 44091             var lockedMinHeight = Math.max(computedMinHeight, extraMinHeight);
       
 44092             var lockedMaxHeight = Math.min(computedMaxHeight, extraMaxHeight);
       
 44093             newWidth = clamp(newWidth, lockedMinWidth, lockedMaxWidth);
       
 44094             newHeight = clamp(newHeight, lockedMinHeight, lockedMaxHeight);
       
 44095         }
       
 44096         else {
       
 44097             newWidth = clamp(newWidth, computedMinWidth, computedMaxWidth);
       
 44098             newHeight = clamp(newHeight, computedMinHeight, computedMaxHeight);
       
 44099         }
       
 44100         return { newWidth: newWidth, newHeight: newHeight };
       
 44101     };
       
 44102     Resizable.prototype.setBoundingClientRect = function () {
       
 44103         // For parent boundary
       
 44104         if (this.props.bounds === 'parent') {
       
 44105             var parent_3 = this.parentNode;
       
 44106             if (parent_3) {
       
 44107                 var parentRect = parent_3.getBoundingClientRect();
       
 44108                 this.parentLeft = parentRect.left;
       
 44109                 this.parentTop = parentRect.top;
       
 44110             }
       
 44111         }
       
 44112         // For target(html element) boundary
       
 44113         if (this.props.bounds && typeof this.props.bounds !== 'string') {
       
 44114             var targetRect = this.props.bounds.getBoundingClientRect();
       
 44115             this.targetLeft = targetRect.left;
       
 44116             this.targetTop = targetRect.top;
       
 44117         }
       
 44118         // For boundary
       
 44119         if (this.resizable) {
       
 44120             var _a = this.resizable.getBoundingClientRect(), left = _a.left, top_1 = _a.top;
       
 44121             this.resizableLeft = left;
       
 44122             this.resizableTop = top_1;
       
 44123         }
       
 44124     };
       
 44125     Resizable.prototype.onResizeStart = function (event, direction) {
       
 44126         if (!this.resizable || !this.window) {
       
 44127             return;
       
 44128         }
       
 44129         var clientX = 0;
       
 44130         var clientY = 0;
       
 44131         if (event.nativeEvent instanceof this.window.MouseEvent) {
       
 44132             clientX = event.nativeEvent.clientX;
       
 44133             clientY = event.nativeEvent.clientY;
       
 44134             // When user click with right button the resize is stuck in resizing mode
       
 44135             // until users clicks again, dont continue if right click is used.
       
 44136             // HACK: MouseEvent does not have `which` from flow-bin v0.68.
       
 44137             if (event.nativeEvent.which === 3) {
       
 44138                 return;
       
 44139             }
       
 44140         }
       
 44141         else if (event.nativeEvent instanceof this.window.TouchEvent) {
       
 44142             clientX = event.nativeEvent.touches[0].clientX;
       
 44143             clientY = event.nativeEvent.touches[0].clientY;
       
 44144         }
       
 44145         if (this.props.onResizeStart) {
       
 44146             if (this.resizable) {
       
 44147                 var startResize = this.props.onResizeStart(event, direction, this.resizable);
       
 44148                 if (startResize === false) {
       
 44149                     return;
       
 44150                 }
       
 44151             }
       
 44152         }
       
 44153         // Fix #168
       
 44154         if (this.props.size) {
       
 44155             if (typeof this.props.size.height !== 'undefined' && this.props.size.height !== this.state.height) {
       
 44156                 this.setState({ height: this.props.size.height });
       
 44157             }
       
 44158             if (typeof this.props.size.width !== 'undefined' && this.props.size.width !== this.state.width) {
       
 44159                 this.setState({ width: this.props.size.width });
       
 44160             }
       
 44161         }
       
 44162         // For lockAspectRatio case
       
 44163         this.ratio =
       
 44164             typeof this.props.lockAspectRatio === 'number' ? this.props.lockAspectRatio : this.size.width / this.size.height;
       
 44165         var flexBasis;
       
 44166         var computedStyle = this.window.getComputedStyle(this.resizable);
       
 44167         if (computedStyle.flexBasis !== 'auto') {
       
 44168             var parent_4 = this.parentNode;
       
 44169             if (parent_4) {
       
 44170                 var dir = this.window.getComputedStyle(parent_4).flexDirection;
       
 44171                 this.flexDir = dir.startsWith('row') ? 'row' : 'column';
       
 44172                 flexBasis = computedStyle.flexBasis;
       
 44173             }
       
 44174         }
       
 44175         // For boundary
       
 44176         this.setBoundingClientRect();
       
 44177         this.bindEvents();
       
 44178         var state = {
       
 44179             original: {
       
 44180                 x: clientX,
       
 44181                 y: clientY,
       
 44182                 width: this.size.width,
       
 44183                 height: this.size.height,
       
 44184             },
       
 44185             isResizing: true,
       
 44186             backgroundStyle: lib_assign(lib_assign({}, this.state.backgroundStyle), { cursor: this.window.getComputedStyle(event.target).cursor || 'auto' }),
       
 44187             direction: direction,
       
 44188             flexBasis: flexBasis,
       
 44189         };
       
 44190         this.setState(state);
       
 44191     };
       
 44192     Resizable.prototype.onMouseMove = function (event) {
       
 44193         if (!this.state.isResizing || !this.resizable || !this.window) {
       
 44194             return;
       
 44195         }
       
 44196         if (this.window.TouchEvent && event instanceof this.window.TouchEvent) {
       
 44197             try {
       
 44198                 event.preventDefault();
       
 44199                 event.stopPropagation();
       
 44200             }
       
 44201             catch (e) {
       
 44202                 // Ignore on fail
       
 44203             }
       
 44204         }
       
 44205         var _a = this.props, maxWidth = _a.maxWidth, maxHeight = _a.maxHeight, minWidth = _a.minWidth, minHeight = _a.minHeight;
       
 44206         var clientX = event instanceof this.window.MouseEvent ? event.clientX : event.touches[0].clientX;
       
 44207         var clientY = event instanceof this.window.MouseEvent ? event.clientY : event.touches[0].clientY;
       
 44208         var _b = this.state, direction = _b.direction, original = _b.original, width = _b.width, height = _b.height;
       
 44209         var parentSize = this.getParentSize();
       
 44210         var max = calculateNewMax(parentSize, this.window.innerWidth, this.window.innerHeight, maxWidth, maxHeight, minWidth, minHeight);
       
 44211         maxWidth = max.maxWidth;
       
 44212         maxHeight = max.maxHeight;
       
 44213         minWidth = max.minWidth;
       
 44214         minHeight = max.minHeight;
       
 44215         // Calculate new size
       
 44216         var _c = this.calculateNewSizeFromDirection(clientX, clientY), newHeight = _c.newHeight, newWidth = _c.newWidth;
       
 44217         // Calculate max size from boundary settings
       
 44218         var boundaryMax = this.calculateNewMaxFromBoundary(maxWidth, maxHeight);
       
 44219         // Calculate new size from aspect ratio
       
 44220         var newSize = this.calculateNewSizeFromAspectRatio(newWidth, newHeight, { width: boundaryMax.maxWidth, height: boundaryMax.maxHeight }, { width: minWidth, height: minHeight });
       
 44221         newWidth = newSize.newWidth;
       
 44222         newHeight = newSize.newHeight;
       
 44223         if (this.props.grid) {
       
 44224             var newGridWidth = snap(newWidth, this.props.grid[0]);
       
 44225             var newGridHeight = snap(newHeight, this.props.grid[1]);
       
 44226             var gap = this.props.snapGap || 0;
       
 44227             newWidth = gap === 0 || Math.abs(newGridWidth - newWidth) <= gap ? newGridWidth : newWidth;
       
 44228             newHeight = gap === 0 || Math.abs(newGridHeight - newHeight) <= gap ? newGridHeight : newHeight;
       
 44229         }
       
 44230         if (this.props.snap && this.props.snap.x) {
       
 44231             newWidth = findClosestSnap(newWidth, this.props.snap.x, this.props.snapGap);
       
 44232         }
       
 44233         if (this.props.snap && this.props.snap.y) {
       
 44234             newHeight = findClosestSnap(newHeight, this.props.snap.y, this.props.snapGap);
       
 44235         }
       
 44236         var delta = {
       
 44237             width: newWidth - original.width,
       
 44238             height: newHeight - original.height,
       
 44239         };
       
 44240         if (width && typeof width === 'string') {
       
 44241             if (endsWith(width, '%')) {
       
 44242                 var percent = (newWidth / parentSize.width) * 100;
       
 44243                 newWidth = percent + "%";
       
 44244             }
       
 44245             else if (endsWith(width, 'vw')) {
       
 44246                 var vw = (newWidth / this.window.innerWidth) * 100;
       
 44247                 newWidth = vw + "vw";
       
 44248             }
       
 44249             else if (endsWith(width, 'vh')) {
       
 44250                 var vh = (newWidth / this.window.innerHeight) * 100;
       
 44251                 newWidth = vh + "vh";
       
 44252             }
       
 44253         }
       
 44254         if (height && typeof height === 'string') {
       
 44255             if (endsWith(height, '%')) {
       
 44256                 var percent = (newHeight / parentSize.height) * 100;
       
 44257                 newHeight = percent + "%";
       
 44258             }
       
 44259             else if (endsWith(height, 'vw')) {
       
 44260                 var vw = (newHeight / this.window.innerWidth) * 100;
       
 44261                 newHeight = vw + "vw";
       
 44262             }
       
 44263             else if (endsWith(height, 'vh')) {
       
 44264                 var vh = (newHeight / this.window.innerHeight) * 100;
       
 44265                 newHeight = vh + "vh";
       
 44266             }
       
 44267         }
       
 44268         var newState = {
       
 44269             width: this.createSizeForCssProperty(newWidth, 'width'),
       
 44270             height: this.createSizeForCssProperty(newHeight, 'height'),
       
 44271         };
       
 44272         if (this.flexDir === 'row') {
       
 44273             newState.flexBasis = newState.width;
       
 44274         }
       
 44275         else if (this.flexDir === 'column') {
       
 44276             newState.flexBasis = newState.height;
       
 44277         }
       
 44278         this.setState(newState);
       
 44279         if (this.props.onResize) {
       
 44280             this.props.onResize(event, direction, this.resizable, delta);
       
 44281         }
       
 44282     };
       
 44283     Resizable.prototype.onMouseUp = function (event) {
       
 44284         var _a = this.state, isResizing = _a.isResizing, direction = _a.direction, original = _a.original;
       
 44285         if (!isResizing || !this.resizable) {
       
 44286             return;
       
 44287         }
       
 44288         var delta = {
       
 44289             width: this.size.width - original.width,
       
 44290             height: this.size.height - original.height,
       
 44291         };
       
 44292         if (this.props.onResizeStop) {
       
 44293             this.props.onResizeStop(event, direction, this.resizable, delta);
       
 44294         }
       
 44295         if (this.props.size) {
       
 44296             this.setState(this.props.size);
       
 44297         }
       
 44298         this.unbindEvents();
       
 44299         this.setState({
       
 44300             isResizing: false,
       
 44301             backgroundStyle: lib_assign(lib_assign({}, this.state.backgroundStyle), { cursor: 'auto' }),
       
 44302         });
       
 44303     };
       
 44304     Resizable.prototype.updateSize = function (size) {
       
 44305         this.setState({ width: size.width, height: size.height });
       
 44306     };
       
 44307     Resizable.prototype.renderResizer = function () {
       
 44308         var _this = this;
       
 44309         var _a = this.props, enable = _a.enable, handleStyles = _a.handleStyles, handleClasses = _a.handleClasses, handleWrapperStyle = _a.handleWrapperStyle, handleWrapperClass = _a.handleWrapperClass, handleComponent = _a.handleComponent;
       
 44310         if (!enable) {
       
 44311             return null;
       
 44312         }
       
 44313         var resizers = Object.keys(enable).map(function (dir) {
       
 44314             if (enable[dir] !== false) {
       
 44315                 return (external_this_React_["createElement"](resizer_Resizer, { key: dir, direction: dir, onResizeStart: _this.onResizeStart, replaceStyles: handleStyles && handleStyles[dir], className: handleClasses && handleClasses[dir] }, handleComponent && handleComponent[dir] ? handleComponent[dir] : null));
       
 44316             }
       
 44317             return null;
       
 44318         });
       
 44319         // #93 Wrap the resize box in span (will not break 100% width/height)
       
 44320         return (external_this_React_["createElement"]("span", { className: handleWrapperClass, style: handleWrapperStyle }, resizers));
       
 44321     };
       
 44322     Resizable.prototype.render = function () {
       
 44323         var _this = this;
       
 44324         var _a;
       
 44325         var extendsProps = Object.keys(this.props).reduce(function (acc, key) {
       
 44326             if (definedProps.indexOf(key) !== -1) {
       
 44327                 return acc;
       
 44328             }
       
 44329             acc[key] = _this.props[key];
       
 44330             return acc;
       
 44331         }, {});
       
 44332         var style = lib_assign(lib_assign(lib_assign({ position: 'relative', userSelect: this.state.isResizing ? 'none' : 'auto' }, this.props.style), this.sizeStyle), { maxWidth: this.props.maxWidth, maxHeight: this.props.maxHeight, minWidth: this.props.minWidth, minHeight: this.props.minHeight, boxSizing: 'border-box', flexShrink: 0 });
       
 44333         if (this.state.flexBasis) {
       
 44334             style.flexBasis = this.state.flexBasis;
       
 44335         }
       
 44336         var Wrapper = (_a = this.props.as) !== null && _a !== void 0 ? _a : 'div';
       
 44337         return (external_this_React_["createElement"](Wrapper, lib_assign({ ref: this.ref, style: style, className: this.props.className }, extendsProps),
       
 44338             this.state.isResizing && external_this_React_["createElement"]("div", { style: this.state.backgroundStyle }),
       
 44339             this.props.children,
       
 44340             this.renderResizer()));
       
 44341     };
       
 44342     Resizable.defaultProps = {
       
 44343         as: 'div',
       
 44344         onResizeStart: function () { },
       
 44345         onResize: function () { },
       
 44346         onResizeStop: function () { },
       
 44347         enable: {
       
 44348             top: true,
       
 44349             right: true,
       
 44350             bottom: true,
       
 44351             left: true,
       
 44352             topRight: true,
       
 44353             bottomRight: true,
       
 44354             bottomLeft: true,
       
 44355             topLeft: true,
       
 44356         },
       
 44357         style: {},
       
 44358         grid: [1, 1],
       
 44359         lockAspectRatio: false,
       
 44360         lockAspectRatioExtraWidth: 0,
       
 44361         lockAspectRatioExtraHeight: 0,
       
 44362         scale: 1,
       
 44363         resizeRatio: 1,
       
 44364         snapGap: 0,
       
 44365     };
       
 44366     return Resizable;
       
 44367 }(external_this_React_["PureComponent"]));
       
 44368 
       
 44369 
       
 44370 // EXTERNAL MODULE: ./node_modules/react-resize-aware/dist/index.js
       
 44371 var dist = __webpack_require__(149);
       
 44372 var dist_default = /*#__PURE__*/__webpack_require__.n(dist);
       
 44373 
       
 44374 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/resizable-box/resize-tooltip/utils.js
       
 44375 
       
 44376 
       
 44377 /**
       
 44378  * External dependencies
       
 44379  */
       
 44380 
       
 44381 
       
 44382 /**
       
 44383  * WordPress dependencies
       
 44384  */
       
 44385 
       
 44386 
       
 44387 var utils_window = window,
       
 44388     utils_clearTimeout = utils_window.clearTimeout,
       
 44389     utils_setTimeout = utils_window.setTimeout;
       
 44390 var POSITIONS = {
       
 44391   bottom: 'bottom',
       
 44392   corner: 'corner'
       
 44393 };
       
 44394 /**
       
 44395  * @typedef {Object} UseResizeLabelProps
       
 44396  *
       
 44397  * @property {undefined|string} label The label value.
       
 44398  * @property {Function} resizeListener Element to be rendered for resize listening events.
       
 44399  */
       
 44400 
       
 44401 /**
       
 44402  * Custom hook that manages resize listener events. It also provides a label
       
 44403  * based on current resize width x height values.
       
 44404  *
       
 44405  * @param {Object} props
       
 44406  * @param {string} props.axis Only shows the label corresponding to the axis.
       
 44407  * @param {number} props.fadeTimeout Duration (ms) before deactivating the resize label.
       
 44408  * @param {boolean} props.onResize Callback when a resize occurs. Provides { width, height } callback.
       
 44409  * @param {string} props.position Adjusts label value.
       
 44410  * @param {boolean} props.showPx Whether to add `PX` to the label.
       
 44411  *
       
 44412  * @return {UseResizeLabelProps} Properties for hook.
       
 44413  */
       
 44414 
       
 44415 function useResizeLabel(_ref) {
       
 44416   var axis = _ref.axis,
       
 44417       _ref$fadeTimeout = _ref.fadeTimeout,
       
 44418       fadeTimeout = _ref$fadeTimeout === void 0 ? 180 : _ref$fadeTimeout,
       
 44419       _ref$onResize = _ref.onResize,
       
 44420       onResize = _ref$onResize === void 0 ? external_this_lodash_["noop"] : _ref$onResize,
       
 44421       _ref$position = _ref.position,
       
 44422       position = _ref$position === void 0 ? POSITIONS.bottom : _ref$position,
       
 44423       _ref$showPx = _ref.showPx,
       
 44424       showPx = _ref$showPx === void 0 ? false : _ref$showPx;
       
 44425 
       
 44426   /*
       
 44427    * The width/height values derive from this special useResizeAware hook.
       
 44428    * This custom hook uses injects an iFrame into the element, allowing it
       
 44429    * to tap into the onResize (window) callback events.
       
 44430    */
       
 44431   var _useResizeAware = dist_default()(),
       
 44432       _useResizeAware2 = Object(slicedToArray["a" /* default */])(_useResizeAware, 2),
       
 44433       resizeListener = _useResizeAware2[0],
       
 44434       sizes = _useResizeAware2[1];
       
 44435   /*
       
 44436    * Indicates if the x/y axis is preferred.
       
 44437    * If set, we will avoid resetting the moveX and moveY values.
       
 44438    * This will allow for the preferred axis values to persist in the label.
       
 44439    */
       
 44440 
       
 44441 
       
 44442   var isAxisControlled = !!axis;
       
 44443   /*
       
 44444    * The moveX and moveY values are used to track whether the label should
       
 44445    * display width, height, or width x height.
       
 44446    */
       
 44447 
       
 44448   var _useState = Object(external_this_wp_element_["useState"])(false),
       
 44449       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 44450       moveX = _useState2[0],
       
 44451       setMoveX = _useState2[1];
       
 44452 
       
 44453   var _useState3 = Object(external_this_wp_element_["useState"])(false),
       
 44454       _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),
       
 44455       moveY = _useState4[0],
       
 44456       setMoveY = _useState4[1];
       
 44457   /*
       
 44458    * Cached dimension values to check for width/height updates from the
       
 44459    * sizes property from useResizeAware()
       
 44460    */
       
 44461 
       
 44462 
       
 44463   var heightRef = Object(external_this_wp_element_["useRef"])(height);
       
 44464   var widthRef = Object(external_this_wp_element_["useRef"])(width);
       
 44465   /*
       
 44466    * This timeout is used with setMoveX and setMoveY to determine of
       
 44467    * both width and height values have changed at (roughly) the same time.
       
 44468    */
       
 44469 
       
 44470   var moveTimeoutRef = Object(external_this_wp_element_["useRef"])();
       
 44471   var width = sizes.width,
       
 44472       height = sizes.height;
       
 44473 
       
 44474   var unsetMoveXY = function unsetMoveXY() {
       
 44475     /*
       
 44476      * If axis is controlled, we will avoid resetting the moveX and moveY values.
       
 44477      * This will allow for the preferred axis values to persist in the label.
       
 44478      */
       
 44479     if (isAxisControlled) return;
       
 44480     setMoveX(false);
       
 44481     setMoveY(false);
 35220   };
 44482   };
 35221 }();
 44483 
 35222 
 44484   var debounceUnsetMoveXY = function debounceUnsetMoveXY() {
 35223 var _extends = Object.assign || function (target) {
 44485     if (moveTimeoutRef.current) {
 35224   for (var i = 1; i < arguments.length; i++) {
 44486       utils_clearTimeout(moveTimeoutRef.current);
 35225     var source = arguments[i];
 44487     }
 35226 
 44488 
 35227     for (var key in source) {
 44489     moveTimeoutRef.current = utils_setTimeout(unsetMoveXY, fadeTimeout);
 35228       if (Object.prototype.hasOwnProperty.call(source, key)) {
 44490   };
 35229         target[key] = source[key];
 44491 
 35230       }
 44492   Object(external_this_wp_element_["useEffect"])(function () {
 35231     }
 44493     /*
 35232   }
 44494      * On the initial render of useResizeAware, the height and width values are
 35233 
 44495      * null. They are calculated then set using via an internal useEffect hook.
 35234   return target;
 44496      */
 35235 };
 44497     var isRendered = width !== null || height !== null;
 35236 
 44498     if (!isRendered) return;
 35237 var lib_inherits = function (subClass, superClass) {
 44499     var didWidthChange = width !== widthRef.current;
 35238   if (typeof superClass !== "function" && superClass !== null) {
 44500     var didHeightChange = height !== heightRef.current;
 35239     throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);
 44501     if (!didWidthChange && !didHeightChange) return;
 35240   }
 44502     /*
 35241 
 44503      * After the initial render, the useResizeAware will set the first
 35242   subClass.prototype = Object.create(superClass && superClass.prototype, {
 44504      * width and height values. We'll sync those values with our
 35243     constructor: {
 44505      * width and height refs. However, we shouldn't render our Tooltip
 35244       value: subClass,
 44506      * label on this first cycle.
 35245       enumerable: false,
 44507      */
 35246       writable: true,
 44508 
 35247       configurable: true
 44509     if (width && !widthRef.current && height && !heightRef.current) {
 35248     }
 44510       widthRef.current = width;
       
 44511       heightRef.current = height;
       
 44512       return;
       
 44513     }
       
 44514     /*
       
 44515      * After the first cycle, we can track width and height changes.
       
 44516      */
       
 44517 
       
 44518 
       
 44519     if (didWidthChange) {
       
 44520       setMoveX(true);
       
 44521       widthRef.current = width;
       
 44522     }
       
 44523 
       
 44524     if (didHeightChange) {
       
 44525       setMoveY(true);
       
 44526       heightRef.current = height;
       
 44527     }
       
 44528 
       
 44529     onResize({
       
 44530       width: width,
       
 44531       height: height
       
 44532     });
       
 44533     debounceUnsetMoveXY();
       
 44534   }, [width, height]);
       
 44535   var label = getSizeLabel({
       
 44536     axis: axis,
       
 44537     height: height,
       
 44538     moveX: moveX,
       
 44539     moveY: moveY,
       
 44540     position: position,
       
 44541     showPx: showPx,
       
 44542     width: width
 35249   });
 44543   });
 35250   if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;
 44544   return {
 35251 };
 44545     label: label,
 35252 
 44546     resizeListener: resizeListener
 35253 var lib_possibleConstructorReturn = function (self, call) {
 44547   };
 35254   if (!self) {
 44548 }
 35255     throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
 44549 /**
 35256   }
 44550  * Gets the resize label based on width and height values (as well as recent changes).
 35257 
 44551  *
 35258   return call && (typeof call === "object" || typeof call === "function") ? call : self;
 44552  * @param {Object} props
 35259 };
 44553  * @param {string} props.axis Only shows the label corresponding to the axis.
 35260 
 44554  * @param {number} props.height Height value.
 35261 var styles = {
 44555  * @param {boolean} props.moveX Recent width (x axis) changes.
 35262   base: {
 44556  * @param {boolean} props.moveY Recent width (y axis) changes.
 35263     position: 'absolute',
 44557  * @param {string} props.position Adjusts label value.
 35264     userSelect: 'none',
 44558  * @param {boolean} props.showPx Whether to add `PX` to the label.
 35265     MsUserSelect: 'none'
 44559  * @param {number} props.width Width value.
 35266   },
 44560  *
 35267   top: {
 44561  * @return {undefined | string} The rendered label.
 35268     width: '100%',
 44562  */
 35269     height: '10px',
 44563 
 35270     top: '-5px',
 44564 function getSizeLabel(_ref2) {
 35271     left: '0px',
 44565   var axis = _ref2.axis,
 35272     cursor: 'row-resize'
 44566       height = _ref2.height,
 35273   },
 44567       _ref2$moveX = _ref2.moveX,
 35274   right: {
 44568       moveX = _ref2$moveX === void 0 ? false : _ref2$moveX,
 35275     width: '10px',
 44569       _ref2$moveY = _ref2.moveY,
 35276     height: '100%',
 44570       moveY = _ref2$moveY === void 0 ? false : _ref2$moveY,
 35277     top: '0px',
 44571       _ref2$position = _ref2.position,
 35278     right: '-5px',
 44572       position = _ref2$position === void 0 ? POSITIONS.bottom : _ref2$position,
 35279     cursor: 'col-resize'
 44573       _ref2$showPx = _ref2.showPx,
 35280   },
 44574       showPx = _ref2$showPx === void 0 ? false : _ref2$showPx,
 35281   bottom: {
 44575       width = _ref2.width;
 35282     width: '100%',
 44576   if (!moveX && !moveY) return null;
 35283     height: '10px',
 44577   /*
 35284     bottom: '-5px',
 44578    * Corner position...
 35285     left: '0px',
 44579    * We want the label to appear like width x height.
 35286     cursor: 'row-resize'
 44580    */
 35287   },
 44581 
 35288   left: {
 44582   if (position === POSITIONS.corner) {
 35289     width: '10px',
 44583     return "".concat(width, " x ").concat(height);
 35290     height: '100%',
 44584   }
 35291     top: '0px',
 44585   /*
 35292     left: '-5px',
 44586    * Other POSITIONS...
 35293     cursor: 'col-resize'
 44587    * The label will combine both width x height values if both
 35294   },
 44588    * values have recently been changed.
 35295   topRight: {
 44589    *
 35296     width: '20px',
 44590    * Otherwise, only width or height will be displayed.
 35297     height: '20px',
 44591    * The `PX` unit will be added, if specified by the `showPx` prop.
 35298     position: 'absolute',
 44592    */
 35299     right: '-10px',
 44593 
 35300     top: '-10px',
 44594 
 35301     cursor: 'ne-resize'
 44595   var labelUnit = showPx ? ' px' : '';
 35302   },
 44596 
 35303   bottomRight: {
 44597   if (axis) {
 35304     width: '20px',
 44598     if (axis === 'x' && moveX) {
 35305     height: '20px',
 44599       return "".concat(width).concat(labelUnit);
 35306     position: 'absolute',
 44600     }
 35307     right: '-10px',
 44601 
 35308     bottom: '-10px',
 44602     if (axis === 'y' && moveY) {
 35309     cursor: 'se-resize'
 44603       return "".concat(height).concat(labelUnit);
 35310   },
 44604     }
 35311   bottomLeft: {
 44605   }
 35312     width: '20px',
 44606 
 35313     height: '20px',
 44607   if (moveX && moveY) {
 35314     position: 'absolute',
 44608     return "".concat(width, " x ").concat(height);
 35315     left: '-10px',
 44609   }
 35316     bottom: '-10px',
 44610 
 35317     cursor: 'sw-resize'
 44611   if (moveX) {
 35318   },
 44612     return "".concat(width).concat(labelUnit);
 35319   topLeft: {
 44613   }
 35320     width: '20px',
 44614 
 35321     height: '20px',
 44615   if (moveY) {
 35322     position: 'absolute',
 44616     return "".concat(height).concat(labelUnit);
 35323     left: '-10px',
 44617   }
 35324     top: '-10px',
 44618 
 35325     cursor: 'nw-resize'
 44619   return null;
 35326   }
 44620 }
 35327 };
 44621 
 35328 
 44622 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/resizable-box/resize-tooltip/styles/resize-tooltip.styles.js
 35329 var Resizer = (function (props) {
 44623 
 35330   return Object(external_React_["createElement"])(
 44624 
 35331     'div',
 44625 function resize_tooltip_styles_EMOTION_STRINGIFIED_CSS_ERROR_() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
 35332     {
 44626 
 35333       className: props.className,
 44627 /**
 35334       style: _extends({}, styles.base, styles[props.direction], props.replaceStyles || {}),
 44628  * Internal dependencies
 35335       onMouseDown: function onMouseDown(e) {
 44629  */
 35336         props.onResizeStart(e, props.direction);
 44630 
 35337       },
 44631 
 35338       onTouchStart: function onTouchStart(e) {
 44632 
 35339         props.onResizeStart(e, props.direction);
 44633 var resize_tooltip_styles_Root = styled_base_browser_esm("div", {
 35340       }
 44634   target: "ekdag500",
 35341     },
 44635   label: "Root"
 35342     props.children
 44636 })( true ? {
 35343   );
 44637   name: "mt2ez5",
 35344 });
 44638   styles: "bottom:0;box-sizing:border-box;left:0;pointer-events:none;position:absolute;right:0;top:0;"
 35345 
 44639 } : undefined);
 35346 var userSelectNone = {
 44640 var TooltipWrapper = styled_base_browser_esm("div", {
 35347   userSelect: 'none',
 44641   target: "ekdag501",
 35348   MozUserSelect: 'none',
 44642   label: "TooltipWrapper"
 35349   WebkitUserSelect: 'none',
 44643 })( true ? {
 35350   MsUserSelect: 'none'
 44644   name: "1kllayo",
 35351 };
 44645   styles: "align-items:center;box-sizing:border-box;display:inline-flex;justify-content:center;opacity:0;pointer-events:none;transition:opacity 120ms linear;"
 35352 
 44646 } : undefined);
 35353 var userSelectAuto = {
 44647 var resize_tooltip_styles_Tooltip = styled_base_browser_esm("div", {
 35354   userSelect: 'auto',
 44648   target: "ekdag502",
 35355   MozUserSelect: 'auto',
 44649   label: "Tooltip"
 35356   WebkitUserSelect: 'auto',
 44650 })("background:", colors_color('ui.border'), ";border-radius:2px;box-sizing:border-box;font-size:12px;color:", colors_color('ui.textDark'), ";padding:4px 8px;position:relative;" + ( true ? "" : undefined)); // TODO: Resolve need to use &&& to increase specificity
 35357   MsUserSelect: 'auto'
 44651 // https://github.com/WordPress/gutenberg/issues/18483
 35358 };
 44652 
 35359 
 44653 var LabelText = /*#__PURE__*/styled_base_browser_esm(build_module_text, {
 35360 var clamp = function clamp(n, min, max) {
 44654   target: "ekdag503",
 35361   return Math.max(Math.min(n, max), min);
 44655   label: "LabelText"
 35362 };
 44656 })("&&&{", text_mixins_text, ";display:block;font-size:13px;line-height:1.4;}" + ( true ? "" : undefined));
 35363 var snap = function snap(n, size) {
 44657 
 35364   return Math.round(n / size) * size;
 44658 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/resizable-box/resize-tooltip/label.js
 35365 };
 44659 
 35366 
 44660 
 35367 var findClosestSnap = function findClosestSnap(n, snapArray) {
 44661 
 35368   return snapArray.reduce(function (prev, curr) {
 44662 
 35369     return Math.abs(curr - n) < Math.abs(prev - n) ? curr : prev;
 44663 
 35370   });
 44664 function label_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
 35371 };
 44665 
 35372 
 44666 function label_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { label_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { label_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
 35373 var endsWith = function endsWith(str, searchStr) {
 44667 
 35374   return str.substr(str.length - searchStr.length, searchStr.length) === searchStr;
 44668 /**
 35375 };
 44669  * WordPress dependencies
 35376 
 44670  */
 35377 var getStringSize = function getStringSize(n) {
 44671 
 35378   if (n.toString() === 'auto') return n.toString();
 44672 /**
 35379   if (endsWith(n.toString(), 'px')) return n.toString();
 44673  * Internal dependencies
 35380   if (endsWith(n.toString(), '%')) return n.toString();
 44674  */
 35381   if (endsWith(n.toString(), 'vh')) return n.toString();
 44675 
 35382   if (endsWith(n.toString(), 'vw')) return n.toString();
 44676 
 35383   if (endsWith(n.toString(), 'vmax')) return n.toString();
 44677 
 35384   if (endsWith(n.toString(), 'vmin')) return n.toString();
 44678 
 35385   return n + 'px';
 44679 var CORNER_OFFSET = 4;
 35386 };
 44680 var CURSOR_OFFSET_TOP = CORNER_OFFSET * 2.5;
 35387 
 44681 
 35388 var definedProps = ['style', 'className', 'grid', 'snap', 'bounds', 'size', 'defaultSize', 'minWidth', 'minHeight', 'maxWidth', 'maxHeight', 'lockAspectRatio', 'lockAspectRatioExtraWidth', 'lockAspectRatioExtraHeight', 'enable', 'handleStyles', 'handleClasses', 'handleWrapperStyle', 'handleWrapperClass', 'children', 'onResizeStart', 'onResize', 'onResizeStop', 'handleComponent', 'scale', 'resizeRatio'];
 44682 function resize_tooltip_label_Label(_ref, ref) {
 35389 
 44683   var label = _ref.label,
 35390 var baseClassName = '__resizable_base__';
 44684       _ref$position = _ref.position,
 35391 
 44685       position = _ref$position === void 0 ? POSITIONS.corner : _ref$position,
 35392 var lib_Resizable = function (_React$Component) {
 44686       _ref$zIndex = _ref.zIndex,
 35393   lib_inherits(Resizable, _React$Component);
 44687       zIndex = _ref$zIndex === void 0 ? 1000 : _ref$zIndex,
 35394 
 44688       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "position", "zIndex"]);
 35395   function Resizable(props) {
 44689 
 35396     lib_classCallCheck(this, Resizable);
 44690   var isRTL = useRTL();
 35397 
 44691   var showLabel = !!label;
 35398     var _this = lib_possibleConstructorReturn(this, (Resizable.__proto__ || Object.getPrototypeOf(Resizable)).call(this, props));
 44692   var isBottom = position === POSITIONS.bottom;
 35399 
 44693   var isCorner = position === POSITIONS.corner;
 35400     _this.state = {
 44694   if (!showLabel) return null;
 35401       isResizing: false,
 44695   var style = {
 35402       resizeCursor: 'auto',
 44696     opacity: showLabel ? 1 : null,
 35403       width: typeof (_this.propsSize && _this.propsSize.width) === 'undefined' ? 'auto' : _this.propsSize && _this.propsSize.width,
 44697     zIndex: zIndex
 35404       height: typeof (_this.propsSize && _this.propsSize.height) === 'undefined' ? 'auto' : _this.propsSize && _this.propsSize.height,
 44698   };
 35405       direction: 'right',
 44699   var labelStyle = {};
 35406       original: {
 44700 
 35407         x: 0,
 44701   if (isBottom) {
 35408         y: 0,
 44702     style = label_objectSpread({}, style, {
 35409         width: 0,
 44703       position: 'absolute',
 35410         height: 0
 44704       bottom: CURSOR_OFFSET_TOP * -1,
 35411       }
 44705       left: '50%',
       
 44706       transform: 'translate(-50%, 0)'
       
 44707     });
       
 44708     labelStyle = {
       
 44709       transform: "translate(0, 100%)"
 35412     };
 44710     };
 35413 
 44711   }
 35414     _this.updateExtendsProps(props);
 44712 
 35415     _this.onResizeStart = _this.onResizeStart.bind(_this);
 44713   if (isCorner) {
 35416     _this.onMouseMove = _this.onMouseMove.bind(_this);
 44714     style = label_objectSpread({}, style, {
 35417     _this.onMouseUp = _this.onMouseUp.bind(_this);
 44715       position: 'absolute',
 35418 
 44716       top: CORNER_OFFSET,
 35419     if (typeof window !== 'undefined') {
 44717       right: isRTL ? null : CORNER_OFFSET,
 35420       window.addEventListener('mouseup', _this.onMouseUp);
 44718       left: isRTL ? CORNER_OFFSET : null
 35421       window.addEventListener('mousemove', _this.onMouseMove);
 44719     });
 35422       window.addEventListener('mouseleave', _this.onMouseUp);
 44720   }
 35423       window.addEventListener('touchmove', _this.onMouseMove);
 44721 
 35424       window.addEventListener('touchend', _this.onMouseUp);
 44722   return Object(external_this_wp_element_["createElement"])(TooltipWrapper, Object(esm_extends["a" /* default */])({
 35425     }
 44723     "aria-hidden": "true",
 35426     return _this;
 44724     className: "components-resizable-tooltip__tooltip-wrapper",
 35427   }
 44725     isActive: showLabel,
 35428 
 44726     ref: ref,
 35429   lib_createClass(Resizable, [{
 44727     style: style
 35430     key: 'updateExtendsProps',
 44728   }, props), Object(external_this_wp_element_["createElement"])(resize_tooltip_styles_Tooltip, {
 35431     value: function updateExtendsProps(props) {
 44729     className: "components-resizable-tooltip__tooltip",
 35432       this.extendsProps = Object.keys(props).reduce(function (acc, key) {
 44730     style: labelStyle
 35433         if (definedProps.indexOf(key) !== -1) return acc;
 44731   }, Object(external_this_wp_element_["createElement"])(LabelText, {
 35434         acc[key] = props[key];
 44732     as: "span"
 35435         return acc;
 44733   }, label)));
 35436       }, {});
 44734 }
 35437     }
 44735 
 35438   }, {
 44736 var label_ForwardedComponent = Object(external_this_wp_element_["forwardRef"])(resize_tooltip_label_Label);
 35439     key: 'getParentSize',
 44737 /* harmony default export */ var resize_tooltip_label = (label_ForwardedComponent);
 35440     value: function getParentSize() {
 44738 
 35441       var base = this.base;
 44739 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/resizable-box/resize-tooltip/index.js
 35442 
 44740 
 35443       if (!base) return { width: window.innerWidth, height: window.innerHeight };
 44741 
 35444       // INFO: To calculate parent width with flex layout
 44742 
 35445       var wrapChanged = false;
 44743 
 35446       var wrap = this.parentNode.style.flexWrap;
 44744 /**
 35447       var minWidth = base.style.minWidth;
 44745  * External dependencies
 35448       if (wrap !== 'wrap') {
 44746  */
 35449         wrapChanged = true;
 44747 
 35450         this.parentNode.style.flexWrap = 'wrap';
 44748 
 35451         // HACK: Use relative to get parent padding size
 44749 /**
 35452       }
 44750  * WordPress dependencies
 35453       base.style.position = 'relative';
 44751  */
 35454       base.style.minWidth = '100%';
 44752 
 35455       var size = {
 44753 
 35456         width: base.offsetWidth,
 44754 /**
 35457         height: base.offsetHeight
 44755  * Internal dependencies
 35458       };
 44756  */
 35459       base.style.position = 'absolute';
 44757 
 35460       if (wrapChanged) this.parentNode.style.flexWrap = wrap;
 44758 
 35461       base.style.minWidth = minWidth;
 44759 
 35462       return size;
 44760 
 35463     }
 44761 
 35464   }, {
 44762 function ResizeTooltip(_ref, ref) {
 35465     key: 'componentDidMount',
 44763   var axis = _ref.axis,
 35466     value: function componentDidMount() {
 44764       className = _ref.className,
 35467       var size = this.size;
 44765       _ref$fadeTimeout = _ref.fadeTimeout,
 35468 
 44766       fadeTimeout = _ref$fadeTimeout === void 0 ? 180 : _ref$fadeTimeout,
 35469       this.setState({
 44767       _ref$isVisible = _ref.isVisible,
 35470         width: this.state.width || size.width,
 44768       isVisible = _ref$isVisible === void 0 ? true : _ref$isVisible,
 35471         height: this.state.height || size.height
 44769       labelRef = _ref.labelRef,
 35472       });
 44770       _ref$onResize = _ref.onResize,
 35473       var parent = this.parentNode;
 44771       onResize = _ref$onResize === void 0 ? external_this_lodash_["noop"] : _ref$onResize,
 35474       if (!(parent instanceof HTMLElement)) return;
 44772       _ref$position = _ref.position,
 35475       if (this.base) return;
 44773       position = _ref$position === void 0 ? POSITIONS.bottom : _ref$position,
 35476       var element = document.createElement('div');
 44774       _ref$showPx = _ref.showPx,
 35477       element.style.width = '100%';
 44775       showPx = _ref$showPx === void 0 ? true : _ref$showPx,
 35478       element.style.height = '100%';
 44776       _ref$zIndex = _ref.zIndex,
 35479       element.style.position = 'absolute';
 44777       zIndex = _ref$zIndex === void 0 ? 1000 : _ref$zIndex,
 35480       element.style.transform = 'scale(0, 0)';
 44778       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["axis", "className", "fadeTimeout", "isVisible", "labelRef", "onResize", "position", "showPx", "zIndex"]);
 35481       element.style.left = '0';
 44779 
 35482       element.style.flex = '0';
 44780   var _useResizeLabel = useResizeLabel({
 35483       if (element.classList) {
 44781     axis: axis,
 35484         element.classList.add(baseClassName);
 44782     fadeTimeout: fadeTimeout,
 35485       } else {
 44783     onResize: onResize,
 35486         element.className += baseClassName;
 44784     showPx: showPx,
 35487       }
 44785     position: position
 35488       parent.appendChild(element);
 44786   }),
 35489     }
 44787       label = _useResizeLabel.label,
 35490   }, {
 44788       resizeListener = _useResizeLabel.resizeListener;
 35491     key: 'componentWillReceiveProps',
 44789 
 35492     value: function componentWillReceiveProps(next) {
 44790   if (!isVisible) return null;
 35493       this.updateExtendsProps(next);
 44791   var classes = classnames_default()('components-resize-tooltip', className);
 35494     }
 44792   return Object(external_this_wp_element_["createElement"])(resize_tooltip_styles_Root, Object(esm_extends["a" /* default */])({
 35495   }, {
 44793     "aria-hidden": "true",
 35496     key: 'componentWillUnmount',
 44794     className: classes,
 35497     value: function componentWillUnmount() {
 44795     ref: ref
 35498       if (typeof window !== 'undefined') {
 44796   }, props), resizeListener, Object(external_this_wp_element_["createElement"])(resize_tooltip_label, {
 35499         window.removeEventListener('mouseup', this.onMouseUp);
 44797     "aria-hidden": props['aria-hidden'],
 35500         window.removeEventListener('mousemove', this.onMouseMove);
 44798     fadeTimeout: fadeTimeout,
 35501         window.removeEventListener('mouseleave', this.onMouseUp);
 44799     isVisible: isVisible,
 35502         window.removeEventListener('touchmove', this.onMouseMove);
 44800     label: label,
 35503         window.removeEventListener('touchend', this.onMouseUp);
 44801     position: position,
 35504         var parent = this.parentNode;
 44802     ref: labelRef,
 35505         var base = this.base;
 44803     zIndex: zIndex
 35506 
 44804   }));
 35507         if (!base || !parent) return;
 44805 }
 35508         if (!(parent instanceof HTMLElement) || !(base instanceof Node)) return;
 44806 
 35509         parent.removeChild(base);
 44807 var resize_tooltip_ForwardedComponent = Object(external_this_wp_element_["forwardRef"])(ResizeTooltip);
 35510       }
 44808 /* harmony default export */ var resize_tooltip = (resize_tooltip_ForwardedComponent);
 35511     }
       
 35512   }, {
       
 35513     key: 'calculateNewSize',
       
 35514     value: function calculateNewSize(newSize, kind) {
       
 35515       var propsSize = this.propsSize && this.propsSize[kind];
       
 35516       return this.state[kind] === 'auto' && this.state.original[kind] === newSize && (typeof propsSize === 'undefined' || propsSize === 'auto') ? 'auto' : newSize;
       
 35517     }
       
 35518   }, {
       
 35519     key: 'onResizeStart',
       
 35520     value: function onResizeStart(event, direction) {
       
 35521       var clientX = 0;
       
 35522       var clientY = 0;
       
 35523       if (event.nativeEvent instanceof MouseEvent) {
       
 35524         clientX = event.nativeEvent.clientX;
       
 35525         clientY = event.nativeEvent.clientY;
       
 35526 
       
 35527         // When user click with right button the resize is stuck in resizing mode
       
 35528         // until users clicks again, dont continue if right click is used.
       
 35529         // HACK: MouseEvent does not have `which` from flow-bin v0.68.
       
 35530         if (event.nativeEvent.which === 3) {
       
 35531           return;
       
 35532         }
       
 35533       } else if (event.nativeEvent instanceof TouchEvent) {
       
 35534         clientX = event.nativeEvent.touches[0].clientX;
       
 35535         clientY = event.nativeEvent.touches[0].clientY;
       
 35536       }
       
 35537       if (this.props.onResizeStart) {
       
 35538         this.props.onResizeStart(event, direction, this.resizable);
       
 35539       }
       
 35540 
       
 35541       // Fix #168
       
 35542       if (this.props.size) {
       
 35543         if (typeof this.props.size.height !== 'undefined' && this.props.size.height !== this.state.height) {
       
 35544           this.setState({ height: this.props.size.height });
       
 35545         }
       
 35546         if (typeof this.props.size.width !== 'undefined' && this.props.size.width !== this.state.width) {
       
 35547           this.setState({ width: this.props.size.width });
       
 35548         }
       
 35549       }
       
 35550 
       
 35551       this.setState({
       
 35552         original: {
       
 35553           x: clientX,
       
 35554           y: clientY,
       
 35555           width: this.size.width,
       
 35556           height: this.size.height
       
 35557         },
       
 35558         isResizing: true,
       
 35559         resizeCursor: window.getComputedStyle(event.target).cursor,
       
 35560         direction: direction
       
 35561       });
       
 35562     }
       
 35563   }, {
       
 35564     key: 'onMouseMove',
       
 35565     value: function onMouseMove(event) {
       
 35566       if (!this.state.isResizing) return;
       
 35567       var clientX = event instanceof MouseEvent ? event.clientX : event.touches[0].clientX;
       
 35568       var clientY = event instanceof MouseEvent ? event.clientY : event.touches[0].clientY;
       
 35569       var _state = this.state,
       
 35570           direction = _state.direction,
       
 35571           original = _state.original,
       
 35572           width = _state.width,
       
 35573           height = _state.height;
       
 35574       var _props = this.props,
       
 35575           lockAspectRatio = _props.lockAspectRatio,
       
 35576           lockAspectRatioExtraHeight = _props.lockAspectRatioExtraHeight,
       
 35577           lockAspectRatioExtraWidth = _props.lockAspectRatioExtraWidth;
       
 35578 
       
 35579       var scale = this.props.scale || 1;
       
 35580       var _props2 = this.props,
       
 35581           maxWidth = _props2.maxWidth,
       
 35582           maxHeight = _props2.maxHeight,
       
 35583           minWidth = _props2.minWidth,
       
 35584           minHeight = _props2.minHeight;
       
 35585 
       
 35586       var resizeRatio = this.props.resizeRatio || 1;
       
 35587 
       
 35588       // TODO: refactor
       
 35589       var parentSize = this.getParentSize();
       
 35590       if (maxWidth && typeof maxWidth === 'string' && endsWith(maxWidth, '%')) {
       
 35591         var _ratio = Number(maxWidth.replace('%', '')) / 100;
       
 35592         maxWidth = parentSize.width * _ratio;
       
 35593       }
       
 35594       if (maxHeight && typeof maxHeight === 'string' && endsWith(maxHeight, '%')) {
       
 35595         var _ratio2 = Number(maxHeight.replace('%', '')) / 100;
       
 35596         maxHeight = parentSize.height * _ratio2;
       
 35597       }
       
 35598       if (minWidth && typeof minWidth === 'string' && endsWith(minWidth, '%')) {
       
 35599         var _ratio3 = Number(minWidth.replace('%', '')) / 100;
       
 35600         minWidth = parentSize.width * _ratio3;
       
 35601       }
       
 35602       if (minHeight && typeof minHeight === 'string' && endsWith(minHeight, '%')) {
       
 35603         var _ratio4 = Number(minHeight.replace('%', '')) / 100;
       
 35604         minHeight = parentSize.height * _ratio4;
       
 35605       }
       
 35606       maxWidth = typeof maxWidth === 'undefined' ? undefined : Number(maxWidth);
       
 35607       maxHeight = typeof maxHeight === 'undefined' ? undefined : Number(maxHeight);
       
 35608       minWidth = typeof minWidth === 'undefined' ? undefined : Number(minWidth);
       
 35609       minHeight = typeof minHeight === 'undefined' ? undefined : Number(minHeight);
       
 35610 
       
 35611       var ratio = typeof lockAspectRatio === 'number' ? lockAspectRatio : original.width / original.height;
       
 35612       var newWidth = original.width;
       
 35613       var newHeight = original.height;
       
 35614       if (/right/i.test(direction)) {
       
 35615         newWidth = original.width + (clientX - original.x) * resizeRatio / scale;
       
 35616         if (lockAspectRatio) newHeight = (newWidth - lockAspectRatioExtraWidth) / ratio + lockAspectRatioExtraHeight;
       
 35617       }
       
 35618       if (/left/i.test(direction)) {
       
 35619         newWidth = original.width - (clientX - original.x) * resizeRatio / scale;
       
 35620         if (lockAspectRatio) newHeight = (newWidth - lockAspectRatioExtraWidth) / ratio + lockAspectRatioExtraHeight;
       
 35621       }
       
 35622       if (/bottom/i.test(direction)) {
       
 35623         newHeight = original.height + (clientY - original.y) * resizeRatio / scale;
       
 35624         if (lockAspectRatio) newWidth = (newHeight - lockAspectRatioExtraHeight) * ratio + lockAspectRatioExtraWidth;
       
 35625       }
       
 35626       if (/top/i.test(direction)) {
       
 35627         newHeight = original.height - (clientY - original.y) * resizeRatio / scale;
       
 35628         if (lockAspectRatio) newWidth = (newHeight - lockAspectRatioExtraHeight) * ratio + lockAspectRatioExtraWidth;
       
 35629       }
       
 35630 
       
 35631       if (this.props.bounds === 'parent') {
       
 35632         var parent = this.parentNode;
       
 35633         if (parent instanceof HTMLElement) {
       
 35634           var parentRect = parent.getBoundingClientRect();
       
 35635           var parentLeft = parentRect.left;
       
 35636           var parentTop = parentRect.top;
       
 35637 
       
 35638           var _resizable$getBoundin = this.resizable.getBoundingClientRect(),
       
 35639               _left = _resizable$getBoundin.left,
       
 35640               _top = _resizable$getBoundin.top;
       
 35641 
       
 35642           var boundWidth = parent.offsetWidth + (parentLeft - _left);
       
 35643           var boundHeight = parent.offsetHeight + (parentTop - _top);
       
 35644           maxWidth = maxWidth && maxWidth < boundWidth ? maxWidth : boundWidth;
       
 35645           maxHeight = maxHeight && maxHeight < boundHeight ? maxHeight : boundHeight;
       
 35646         }
       
 35647       } else if (this.props.bounds === 'window') {
       
 35648         if (typeof window !== 'undefined') {
       
 35649           var _resizable$getBoundin2 = this.resizable.getBoundingClientRect(),
       
 35650               _left2 = _resizable$getBoundin2.left,
       
 35651               _top2 = _resizable$getBoundin2.top;
       
 35652 
       
 35653           var _boundWidth = window.innerWidth - _left2;
       
 35654           var _boundHeight = window.innerHeight - _top2;
       
 35655           maxWidth = maxWidth && maxWidth < _boundWidth ? maxWidth : _boundWidth;
       
 35656           maxHeight = maxHeight && maxHeight < _boundHeight ? maxHeight : _boundHeight;
       
 35657         }
       
 35658       } else if (this.props.bounds instanceof HTMLElement) {
       
 35659         var targetRect = this.props.bounds.getBoundingClientRect();
       
 35660         var targetLeft = targetRect.left;
       
 35661         var targetTop = targetRect.top;
       
 35662 
       
 35663         var _resizable$getBoundin3 = this.resizable.getBoundingClientRect(),
       
 35664             _left3 = _resizable$getBoundin3.left,
       
 35665             _top3 = _resizable$getBoundin3.top;
       
 35666 
       
 35667         if (!(this.props.bounds instanceof HTMLElement)) return;
       
 35668         var _boundWidth2 = this.props.bounds.offsetWidth + (targetLeft - _left3);
       
 35669         var _boundHeight2 = this.props.bounds.offsetHeight + (targetTop - _top3);
       
 35670         maxWidth = maxWidth && maxWidth < _boundWidth2 ? maxWidth : _boundWidth2;
       
 35671         maxHeight = maxHeight && maxHeight < _boundHeight2 ? maxHeight : _boundHeight2;
       
 35672       }
       
 35673 
       
 35674       var computedMinWidth = typeof minWidth === 'undefined' ? 10 : minWidth;
       
 35675       var computedMaxWidth = typeof maxWidth === 'undefined' || maxWidth < 0 ? newWidth : maxWidth;
       
 35676       var computedMinHeight = typeof minHeight === 'undefined' ? 10 : minHeight;
       
 35677       var computedMaxHeight = typeof maxHeight === 'undefined' || maxHeight < 0 ? newHeight : maxHeight;
       
 35678 
       
 35679       if (lockAspectRatio) {
       
 35680         var extraMinWidth = (computedMinHeight - lockAspectRatioExtraHeight) * ratio + lockAspectRatioExtraWidth;
       
 35681         var extraMaxWidth = (computedMaxHeight - lockAspectRatioExtraHeight) * ratio + lockAspectRatioExtraWidth;
       
 35682         var extraMinHeight = (computedMinWidth - lockAspectRatioExtraWidth) / ratio + lockAspectRatioExtraHeight;
       
 35683         var extraMaxHeight = (computedMaxWidth - lockAspectRatioExtraWidth) / ratio + lockAspectRatioExtraHeight;
       
 35684         var lockedMinWidth = Math.max(computedMinWidth, extraMinWidth);
       
 35685         var lockedMaxWidth = Math.min(computedMaxWidth, extraMaxWidth);
       
 35686         var lockedMinHeight = Math.max(computedMinHeight, extraMinHeight);
       
 35687         var lockedMaxHeight = Math.min(computedMaxHeight, extraMaxHeight);
       
 35688         newWidth = clamp(newWidth, lockedMinWidth, lockedMaxWidth);
       
 35689         newHeight = clamp(newHeight, lockedMinHeight, lockedMaxHeight);
       
 35690       } else {
       
 35691         newWidth = clamp(newWidth, computedMinWidth, computedMaxWidth);
       
 35692         newHeight = clamp(newHeight, computedMinHeight, computedMaxHeight);
       
 35693       }
       
 35694       if (this.props.grid) {
       
 35695         newWidth = snap(newWidth, this.props.grid[0]);
       
 35696       }
       
 35697       if (this.props.grid) {
       
 35698         newHeight = snap(newHeight, this.props.grid[1]);
       
 35699       }
       
 35700 
       
 35701       if (this.props.snap && this.props.snap.x) {
       
 35702         newWidth = findClosestSnap(newWidth, this.props.snap.x);
       
 35703       }
       
 35704       if (this.props.snap && this.props.snap.y) {
       
 35705         newHeight = findClosestSnap(newHeight, this.props.snap.y);
       
 35706       }
       
 35707 
       
 35708       var delta = {
       
 35709         width: newWidth - original.width,
       
 35710         height: newHeight - original.height
       
 35711       };
       
 35712 
       
 35713       if (width && typeof width === 'string' && endsWith(width, '%')) {
       
 35714         var percent = newWidth / parentSize.width * 100;
       
 35715         newWidth = percent + '%';
       
 35716       }
       
 35717 
       
 35718       if (height && typeof height === 'string' && endsWith(height, '%')) {
       
 35719         var _percent = newHeight / parentSize.height * 100;
       
 35720         newHeight = _percent + '%';
       
 35721       }
       
 35722 
       
 35723       this.setState({
       
 35724         width: this.calculateNewSize(newWidth, 'width'),
       
 35725         height: this.calculateNewSize(newHeight, 'height')
       
 35726       });
       
 35727 
       
 35728       if (this.props.onResize) {
       
 35729         this.props.onResize(event, direction, this.resizable, delta);
       
 35730       }
       
 35731     }
       
 35732   }, {
       
 35733     key: 'onMouseUp',
       
 35734     value: function onMouseUp(event) {
       
 35735       var _state2 = this.state,
       
 35736           isResizing = _state2.isResizing,
       
 35737           direction = _state2.direction,
       
 35738           original = _state2.original;
       
 35739 
       
 35740       if (!isResizing) return;
       
 35741       var delta = {
       
 35742         width: this.size.width - original.width,
       
 35743         height: this.size.height - original.height
       
 35744       };
       
 35745       if (this.props.onResizeStop) {
       
 35746         this.props.onResizeStop(event, direction, this.resizable, delta);
       
 35747       }
       
 35748       if (this.props.size) {
       
 35749         this.setState(this.props.size);
       
 35750       }
       
 35751       this.setState({ isResizing: false, resizeCursor: 'auto' });
       
 35752     }
       
 35753   }, {
       
 35754     key: 'updateSize',
       
 35755     value: function updateSize(size) {
       
 35756       this.setState({ width: size.width, height: size.height });
       
 35757     }
       
 35758   }, {
       
 35759     key: 'renderResizer',
       
 35760     value: function renderResizer() {
       
 35761       var _this2 = this;
       
 35762 
       
 35763       var _props3 = this.props,
       
 35764           enable = _props3.enable,
       
 35765           handleStyles = _props3.handleStyles,
       
 35766           handleClasses = _props3.handleClasses,
       
 35767           handleWrapperStyle = _props3.handleWrapperStyle,
       
 35768           handleWrapperClass = _props3.handleWrapperClass,
       
 35769           handleComponent = _props3.handleComponent;
       
 35770 
       
 35771       if (!enable) return null;
       
 35772       var resizers = Object.keys(enable).map(function (dir) {
       
 35773         if (enable[dir] !== false) {
       
 35774           return Object(external_React_["createElement"])(
       
 35775             Resizer,
       
 35776             {
       
 35777               key: dir,
       
 35778               direction: dir,
       
 35779               onResizeStart: _this2.onResizeStart,
       
 35780               replaceStyles: handleStyles && handleStyles[dir],
       
 35781               className: handleClasses && handleClasses[dir]
       
 35782             },
       
 35783             handleComponent && handleComponent[dir] ? Object(external_React_["createElement"])(handleComponent[dir]) : null
       
 35784           );
       
 35785         }
       
 35786         return null;
       
 35787       });
       
 35788       // #93 Wrap the resize box in span (will not break 100% width/height)
       
 35789       return Object(external_React_["createElement"])(
       
 35790         'span',
       
 35791         { className: handleWrapperClass, style: handleWrapperStyle },
       
 35792         resizers
       
 35793       );
       
 35794     }
       
 35795   }, {
       
 35796     key: 'render',
       
 35797     value: function render() {
       
 35798       var _this3 = this;
       
 35799 
       
 35800       var userSelect = this.state.isResizing ? userSelectNone : userSelectAuto;
       
 35801       return Object(external_React_["createElement"])(
       
 35802         'div',
       
 35803         _extends({
       
 35804           ref: function ref(c) {
       
 35805             if (c) {
       
 35806               _this3.resizable = c;
       
 35807             }
       
 35808           },
       
 35809           style: _extends({
       
 35810             position: 'relative'
       
 35811           }, userSelect, this.props.style, this.sizeStyle, {
       
 35812             maxWidth: this.props.maxWidth,
       
 35813             maxHeight: this.props.maxHeight,
       
 35814             minWidth: this.props.minWidth,
       
 35815             minHeight: this.props.minHeight,
       
 35816             boxSizing: 'border-box'
       
 35817           }),
       
 35818           className: this.props.className
       
 35819         }, this.extendsProps),
       
 35820         this.state.isResizing && Object(external_React_["createElement"])('div', {
       
 35821           style: {
       
 35822             height: '100%',
       
 35823             width: '100%',
       
 35824             backgroundColor: 'rgba(0,0,0,0)',
       
 35825             cursor: '' + (this.state.resizeCursor || 'auto'),
       
 35826             opacity: '0',
       
 35827             position: 'fixed',
       
 35828             zIndex: '9999',
       
 35829             top: '0',
       
 35830             left: '0',
       
 35831             bottom: '0',
       
 35832             right: '0'
       
 35833           }
       
 35834         }),
       
 35835         this.props.children,
       
 35836         this.renderResizer()
       
 35837       );
       
 35838     }
       
 35839   }, {
       
 35840     key: 'parentNode',
       
 35841     get: function get$$1() {
       
 35842       return this.resizable.parentNode;
       
 35843     }
       
 35844   }, {
       
 35845     key: 'propsSize',
       
 35846     get: function get$$1() {
       
 35847       return this.props.size || this.props.defaultSize;
       
 35848     }
       
 35849   }, {
       
 35850     key: 'base',
       
 35851     get: function get$$1() {
       
 35852       var parent = this.parentNode;
       
 35853       if (!parent) return undefined;
       
 35854       var children = [].slice.call(parent.children);
       
 35855       for (var i = 0; i < children.length; i += 1) {
       
 35856         var n = children[i];
       
 35857         if (n instanceof HTMLElement) {
       
 35858           if (n.classList.contains(baseClassName)) {
       
 35859             return n;
       
 35860           }
       
 35861         }
       
 35862       }
       
 35863       return undefined;
       
 35864     }
       
 35865   }, {
       
 35866     key: 'size',
       
 35867     get: function get$$1() {
       
 35868       var width = 0;
       
 35869       var height = 0;
       
 35870       if (typeof window !== 'undefined') {
       
 35871         var orgWidth = this.resizable.offsetWidth;
       
 35872         var orgHeight = this.resizable.offsetHeight;
       
 35873         // HACK: Set position `relative` to get parent size.
       
 35874         //       This is because when re-resizable set `absolute`, I can not get base width correctly.
       
 35875         var orgPosition = this.resizable.style.position;
       
 35876         if (orgPosition !== 'relative') {
       
 35877           this.resizable.style.position = 'relative';
       
 35878         }
       
 35879         // INFO: Use original width or height if set auto.
       
 35880         width = this.resizable.style.width !== 'auto' ? this.resizable.offsetWidth : orgWidth;
       
 35881         height = this.resizable.style.height !== 'auto' ? this.resizable.offsetHeight : orgHeight;
       
 35882         // Restore original position
       
 35883         this.resizable.style.position = orgPosition;
       
 35884       }
       
 35885       return { width: width, height: height };
       
 35886     }
       
 35887   }, {
       
 35888     key: 'sizeStyle',
       
 35889     get: function get$$1() {
       
 35890       var _this4 = this;
       
 35891 
       
 35892       var size = this.props.size;
       
 35893 
       
 35894       var getSize = function getSize(key) {
       
 35895         if (typeof _this4.state[key] === 'undefined' || _this4.state[key] === 'auto') return 'auto';
       
 35896         if (_this4.propsSize && _this4.propsSize[key] && endsWith(_this4.propsSize[key].toString(), '%')) {
       
 35897           if (endsWith(_this4.state[key].toString(), '%')) return _this4.state[key].toString();
       
 35898           var parentSize = _this4.getParentSize();
       
 35899           var value = Number(_this4.state[key].toString().replace('px', ''));
       
 35900           var percent = value / parentSize[key] * 100;
       
 35901           return percent + '%';
       
 35902         }
       
 35903         return getStringSize(_this4.state[key]);
       
 35904       };
       
 35905       var width = size && typeof size.width !== 'undefined' && !this.state.isResizing ? getStringSize(size.width) : getSize('width');
       
 35906       var height = size && typeof size.height !== 'undefined' && !this.state.isResizing ? getStringSize(size.height) : getSize('height');
       
 35907       return { width: width, height: height };
       
 35908     }
       
 35909   }]);
       
 35910   return Resizable;
       
 35911 }(external_React_["Component"]);
       
 35912 
       
 35913 lib_Resizable.defaultProps = {
       
 35914   onResizeStart: function onResizeStart() {},
       
 35915   onResize: function onResize() {},
       
 35916   onResizeStop: function onResizeStop() {},
       
 35917   enable: {
       
 35918     top: true,
       
 35919     right: true,
       
 35920     bottom: true,
       
 35921     left: true,
       
 35922     topRight: true,
       
 35923     bottomRight: true,
       
 35924     bottomLeft: true,
       
 35925     topLeft: true
       
 35926   },
       
 35927   style: {},
       
 35928   grid: [1, 1],
       
 35929   lockAspectRatio: false,
       
 35930   lockAspectRatioExtraWidth: 0,
       
 35931   lockAspectRatioExtraHeight: 0,
       
 35932   scale: 1,
       
 35933   resizeRatio: 1
       
 35934 };
       
 35935 
       
 35936 /* harmony default export */ var re_resizable_lib = (lib_Resizable);
       
 35937 
 44809 
 35938 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/resizable-box/index.js
 44810 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/resizable-box/index.js
 35939 
 44811 
 35940 
 44812 
 35941 
 44813 
 35942 
 44814 
 35943 /**
 44815 /**
 35944  * External dependencies
 44816  * External dependencies
       
 44817  */
       
 44818 
       
 44819 
       
 44820 /**
       
 44821  * Internal dependencies
 35945  */
 44822  */
 35946 
 44823 
 35947 
 44824 
 35948 
 44825 
 35949 function ResizableBox(_ref) {
 44826 function ResizableBox(_ref) {
 35950   var className = _ref.className,
 44827   var className = _ref.className,
 35951       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className"]);
 44828       children = _ref.children,
       
 44829       _ref$showHandle = _ref.showHandle,
       
 44830       showHandle = _ref$showHandle === void 0 ? true : _ref$showHandle,
       
 44831       _ref$__experimentalSh = _ref.__experimentalShowTooltip,
       
 44832       showTooltip = _ref$__experimentalSh === void 0 ? false : _ref$__experimentalSh,
       
 44833       _ref$__experimentalTo = _ref.__experimentalTooltipProps,
       
 44834       tooltipProps = _ref$__experimentalTo === void 0 ? {} : _ref$__experimentalTo,
       
 44835       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "children", "showHandle", "__experimentalShowTooltip", "__experimentalTooltipProps"]);
 35952 
 44836 
 35953   // Removes the inline styles in the drag handles.
 44837   // Removes the inline styles in the drag handles.
 35954   var handleStylesOverrides = {
 44838   var handleStylesOverrides = {
 35955     width: null,
 44839     width: null,
 35956     height: null,
 44840     height: null,
 35958     right: null,
 44842     right: null,
 35959     bottom: null,
 44843     bottom: null,
 35960     left: null
 44844     left: null
 35961   };
 44845   };
 35962   var handleClassName = 'components-resizable-box__handle';
 44846   var handleClassName = 'components-resizable-box__handle';
 35963   return Object(external_this_wp_element_["createElement"])(re_resizable_lib, Object(esm_extends["a" /* default */])({
 44847   var sideHandleClassName = 'components-resizable-box__side-handle';
 35964     className: classnames_default()('components-resizable-box__container', className),
 44848   var cornerHandleClassName = 'components-resizable-box__corner-handle';
       
 44849   return Object(external_this_wp_element_["createElement"])(lib_Resizable, Object(esm_extends["a" /* default */])({
       
 44850     className: classnames_default()('components-resizable-box__container', showHandle && 'has-show-handle', className),
 35965     handleClasses: {
 44851     handleClasses: {
 35966       top: classnames_default()(handleClassName, 'components-resizable-box__handle-top'),
 44852       top: classnames_default()(handleClassName, sideHandleClassName, 'components-resizable-box__handle-top'),
 35967       right: classnames_default()(handleClassName, 'components-resizable-box__handle-right'),
 44853       right: classnames_default()(handleClassName, sideHandleClassName, 'components-resizable-box__handle-right'),
 35968       bottom: classnames_default()(handleClassName, 'components-resizable-box__handle-bottom'),
 44854       bottom: classnames_default()(handleClassName, sideHandleClassName, 'components-resizable-box__handle-bottom'),
 35969       left: classnames_default()(handleClassName, 'components-resizable-box__handle-left')
 44855       left: classnames_default()(handleClassName, sideHandleClassName, 'components-resizable-box__handle-left'),
       
 44856       topLeft: classnames_default()(handleClassName, cornerHandleClassName, 'components-resizable-box__handle-top', 'components-resizable-box__handle-left'),
       
 44857       topRight: classnames_default()(handleClassName, cornerHandleClassName, 'components-resizable-box__handle-top', 'components-resizable-box__handle-right'),
       
 44858       bottomRight: classnames_default()(handleClassName, cornerHandleClassName, 'components-resizable-box__handle-bottom', 'components-resizable-box__handle-right'),
       
 44859       bottomLeft: classnames_default()(handleClassName, cornerHandleClassName, 'components-resizable-box__handle-bottom', 'components-resizable-box__handle-left')
 35970     },
 44860     },
 35971     handleStyles: {
 44861     handleStyles: {
 35972       top: handleStylesOverrides,
 44862       top: handleStylesOverrides,
 35973       right: handleStylesOverrides,
 44863       right: handleStylesOverrides,
 35974       bottom: handleStylesOverrides,
 44864       bottom: handleStylesOverrides,
 35975       left: handleStylesOverrides
 44865       left: handleStylesOverrides,
 35976     }
 44866       topLeft: handleStylesOverrides,
 35977   }, props));
 44867       topRight: handleStylesOverrides,
       
 44868       bottomRight: handleStylesOverrides,
       
 44869       bottomLeft: handleStylesOverrides
       
 44870     }
       
 44871   }, props), children, showTooltip && Object(external_this_wp_element_["createElement"])(resize_tooltip, tooltipProps));
 35978 }
 44872 }
 35979 
 44873 
 35980 /* harmony default export */ var resizable_box = (ResizableBox);
 44874 /* harmony default export */ var resizable_box = (ResizableBox);
 35981 
 44875 
 35982 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/responsive-wrapper/index.js
 44876 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/responsive-wrapper/index.js
 35983 
 44877 
 35984 
 44878 
       
 44879 
 35985 /**
 44880 /**
 35986  * External dependencies
 44881  * External dependencies
 35987  */
 44882  */
 35988 
 44883 
 35989 /**
 44884 /**
 35990  * WordPress dependencies
 44885  * WordPress dependencies
 35991  */
 44886  */
       
 44887 
 35992 
 44888 
 35993 
 44889 
 35994 
 44890 
 35995 function ResponsiveWrapper(_ref) {
 44891 function ResponsiveWrapper(_ref) {
 35996   var naturalWidth = _ref.naturalWidth,
 44892   var naturalWidth = _ref.naturalWidth,
 35997       naturalHeight = _ref.naturalHeight,
 44893       naturalHeight = _ref.naturalHeight,
 35998       children = _ref.children;
 44894       children = _ref.children,
       
 44895       _ref$isInline = _ref.isInline,
       
 44896       isInline = _ref$isInline === void 0 ? false : _ref$isInline;
       
 44897 
       
 44898   var _useResizeObserver = Object(external_this_wp_compose_["useResizeObserver"])(),
       
 44899       _useResizeObserver2 = Object(slicedToArray["a" /* default */])(_useResizeObserver, 2),
       
 44900       containerResizeListener = _useResizeObserver2[0],
       
 44901       containerWidth = _useResizeObserver2[1].width;
 35999 
 44902 
 36000   if (external_this_wp_element_["Children"].count(children) !== 1) {
 44903   if (external_this_wp_element_["Children"].count(children) !== 1) {
 36001     return null;
 44904     return null;
 36002   }
 44905   }
 36003 
 44906 
 36004   var imageStyle = {
 44907   var imageStyle = {
 36005     paddingBottom: naturalHeight / naturalWidth * 100 + '%'
 44908     paddingBottom: naturalWidth < containerWidth ? naturalHeight : naturalHeight / naturalWidth * 100 + '%'
 36006   };
 44909   };
 36007   return Object(external_this_wp_element_["createElement"])("div", {
 44910   var TagName = isInline ? 'span' : 'div';
       
 44911   return Object(external_this_wp_element_["createElement"])(TagName, {
 36008     className: "components-responsive-wrapper"
 44912     className: "components-responsive-wrapper"
 36009   }, Object(external_this_wp_element_["createElement"])("div", {
 44913   }, containerResizeListener, Object(external_this_wp_element_["createElement"])(TagName, {
 36010     style: imageStyle
 44914     style: imageStyle
 36011   }), Object(external_this_wp_element_["cloneElement"])(children, {
 44915   }), Object(external_this_wp_element_["cloneElement"])(children, {
 36012     className: classnames_default()('components-responsive-wrapper__content', children.props.className)
 44916     className: classnames_default()('components-responsive-wrapper__content', children.props.className)
 36013   }));
 44917   }));
 36014 }
 44918 }
 36022 
 44926 
 36023 
 44927 
 36024 
 44928 
 36025 
 44929 
 36026 
 44930 
       
 44931 function sandbox_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (sandbox_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 44932 
       
 44933 function sandbox_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
       
 44934 
 36027 /**
 44935 /**
 36028  * WordPress dependencies
 44936  * WordPress dependencies
 36029  */
 44937  */
 36030 
 44938 
 36031 
 44939 
 36033  * Internal dependencies
 44941  * Internal dependencies
 36034  */
 44942  */
 36035 
 44943 
 36036 
 44944 
 36037 
 44945 
 36038 var sandbox_Sandbox =
 44946 var sandbox_Sandbox = /*#__PURE__*/function (_Component) {
 36039 /*#__PURE__*/
       
 36040 function (_Component) {
       
 36041   Object(inherits["a" /* default */])(Sandbox, _Component);
 44947   Object(inherits["a" /* default */])(Sandbox, _Component);
       
 44948 
       
 44949   var _super = sandbox_createSuper(Sandbox);
 36042 
 44950 
 36043   function Sandbox() {
 44951   function Sandbox() {
 36044     var _this;
 44952     var _this;
 36045 
 44953 
 36046     Object(classCallCheck["a" /* default */])(this, Sandbox);
 44954     Object(classCallCheck["a" /* default */])(this, Sandbox);
 36047 
 44955 
 36048     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(Sandbox).apply(this, arguments));
 44956     _this = _super.apply(this, arguments);
 36049     _this.trySandbox = _this.trySandbox.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 44957     _this.trySandbox = _this.trySandbox.bind(Object(assertThisInitialized["a" /* default */])(_this));
 36050     _this.checkMessageForResize = _this.checkMessageForResize.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 44958     _this.checkMessageForResize = _this.checkMessageForResize.bind(Object(assertThisInitialized["a" /* default */])(_this));
 36051     _this.iframe = Object(external_this_wp_element_["createRef"])();
 44959     _this.iframe = Object(external_this_wp_element_["createRef"])();
 36052     _this.state = {
 44960     _this.state = {
 36053       width: 0,
 44961       width: 0,
 36054       height: 0
 44962       height: 0
 36055     };
 44963     };
 36057   }
 44965   }
 36058 
 44966 
 36059   Object(createClass["a" /* default */])(Sandbox, [{
 44967   Object(createClass["a" /* default */])(Sandbox, [{
 36060     key: "componentDidMount",
 44968     key: "componentDidMount",
 36061     value: function componentDidMount() {
 44969     value: function componentDidMount() {
       
 44970       var _this2 = this;
       
 44971 
 36062       this.trySandbox();
 44972       this.trySandbox();
       
 44973 
       
 44974       this.trySandboxWithoutRerender = function () {
       
 44975         _this2.trySandbox(false);
       
 44976       }; // This used to be registered using <iframe onLoad={} />, but it made the iframe blank
       
 44977       // after reordering the containing block. See these two issues for more details:
       
 44978       // https://github.com/WordPress/gutenberg/issues/6146
       
 44979       // https://github.com/facebook/react/issues/18752
       
 44980 
       
 44981 
       
 44982       this.iframe.current.addEventListener('load', this.trySandboxWithoutRerender, false);
 36063     }
 44983     }
 36064   }, {
 44984   }, {
 36065     key: "componentDidUpdate",
 44985     key: "componentDidUpdate",
 36066     value: function componentDidUpdate() {
 44986     value: function componentDidUpdate(prevProps) {
 36067       this.trySandbox();
 44987       var forceRerender = prevProps.html !== this.props.html;
       
 44988       this.trySandbox(forceRerender);
       
 44989     }
       
 44990   }, {
       
 44991     key: "componentWillUnmount",
       
 44992     value: function componentWillUnmount() {
       
 44993       this.iframe.current.removeEventListener('load', this.trySandboxWithoutRerender);
 36068     }
 44994     }
 36069   }, {
 44995   }, {
 36070     key: "isFrameAccessible",
 44996     key: "isFrameAccessible",
 36071     value: function isFrameAccessible() {
 44997     value: function isFrameAccessible() {
 36072       try {
 44998       try {
 36083       var data = event.data || {};
 45009       var data = event.data || {};
 36084 
 45010 
 36085       if ('string' === typeof data) {
 45011       if ('string' === typeof data) {
 36086         try {
 45012         try {
 36087           data = JSON.parse(data);
 45013           data = JSON.parse(data);
 36088         } catch (e) {} // eslint-disable-line no-empty
 45014         } catch (e) {}
 36089 
       
 36090       } // Verify that the mounted element is the source of the message
 45015       } // Verify that the mounted element is the source of the message
 36091 
 45016 
 36092 
 45017 
 36093       if (!iframe || iframe.contentWindow !== event.source) {
 45018       if (!iframe || iframe.contentWindow !== event.source) {
 36094         return;
 45019         return;
 36112       }
 45037       }
 36113     }
 45038     }
 36114   }, {
 45039   }, {
 36115     key: "trySandbox",
 45040     key: "trySandbox",
 36116     value: function trySandbox() {
 45041     value: function trySandbox() {
       
 45042       var forceRerender = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
       
 45043 
 36117       if (!this.isFrameAccessible()) {
 45044       if (!this.isFrameAccessible()) {
 36118         return;
 45045         return;
 36119       }
 45046       }
 36120 
 45047 
 36121       var body = this.iframe.current.contentDocument.body;
 45048       var body = this.iframe.current.contentDocument.body;
 36122 
 45049 
 36123       if (null !== body.getAttribute('data-resizable-iframe-connected')) {
 45050       if (!forceRerender && null !== body.getAttribute('data-resizable-iframe-connected')) {
 36124         return;
 45051         return;
 36125       }
 45052       }
 36126 
 45053 
 36127       var observeAndResizeJS = "\n\t\t\t( function() {\n\t\t\t\tvar observer;\n\n\t\t\t\tif ( ! window.MutationObserver || ! document.body || ! window.parent ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfunction sendResize() {\n\t\t\t\t\tvar clientBoundingRect = document.body.getBoundingClientRect();\n\n\t\t\t\t\twindow.parent.postMessage( {\n\t\t\t\t\t\taction: 'resize',\n\t\t\t\t\t\twidth: clientBoundingRect.width,\n\t\t\t\t\t\theight: clientBoundingRect.height,\n\t\t\t\t\t}, '*' );\n\t\t\t\t}\n\n\t\t\t\tobserver = new MutationObserver( sendResize );\n\t\t\t\tobserver.observe( document.body, {\n\t\t\t\t\tattributes: true,\n\t\t\t\t\tattributeOldValue: false,\n\t\t\t\t\tcharacterData: true,\n\t\t\t\t\tcharacterDataOldValue: false,\n\t\t\t\t\tchildList: true,\n\t\t\t\t\tsubtree: true\n\t\t\t\t} );\n\n\t\t\t\twindow.addEventListener( 'load', sendResize, true );\n\n\t\t\t\t// Hack: Remove viewport unit styles, as these are relative\n\t\t\t\t// the iframe root and interfere with our mechanism for\n\t\t\t\t// determining the unconstrained page bounds.\n\t\t\t\tfunction removeViewportStyles( ruleOrNode ) {\n\t\t\t\t\tif( ruleOrNode.style ) {\n\t\t\t\t\t\t[ 'width', 'height', 'minHeight', 'maxHeight' ].forEach( function( style ) {\n\t\t\t\t\t\t\tif ( /^\\d+(vmin|vmax|vh|vw)$/.test( ruleOrNode.style[ style ] ) ) {\n\t\t\t\t\t\t\t\truleOrNode.style[ style ] = '';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tArray.prototype.forEach.call( document.querySelectorAll( '[style]' ), removeViewportStyles );\n\t\t\t\tArray.prototype.forEach.call( document.styleSheets, function( stylesheet ) {\n\t\t\t\t\tArray.prototype.forEach.call( stylesheet.cssRules || stylesheet.rules, removeViewportStyles );\n\t\t\t\t} );\n\n\t\t\t\tdocument.body.style.position = 'absolute';\n\t\t\t\tdocument.body.style.width = '100%';\n\t\t\t\tdocument.body.setAttribute( 'data-resizable-iframe-connected', '' );\n\n\t\t\t\tsendResize();\n\n\t\t\t\t// Resize events can change the width of elements with 100% width, but we don't\n\t\t\t\t// get an DOM mutations for that, so do the resize when the window is resized, too.\n\t\t\t\twindow.addEventListener( 'resize', sendResize, true );\n\t\t} )();";
 45054       var observeAndResizeJS = "\n\t\t\t( function() {\n\t\t\t\tvar observer;\n\n\t\t\t\tif ( ! window.MutationObserver || ! document.body || ! window.parent ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tfunction sendResize() {\n\t\t\t\t\tvar clientBoundingRect = document.body.getBoundingClientRect();\n\n\t\t\t\t\twindow.parent.postMessage( {\n\t\t\t\t\t\taction: 'resize',\n\t\t\t\t\t\twidth: clientBoundingRect.width,\n\t\t\t\t\t\theight: clientBoundingRect.height,\n\t\t\t\t\t}, '*' );\n\t\t\t\t}\n\n\t\t\t\tobserver = new MutationObserver( sendResize );\n\t\t\t\tobserver.observe( document.body, {\n\t\t\t\t\tattributes: true,\n\t\t\t\t\tattributeOldValue: false,\n\t\t\t\t\tcharacterData: true,\n\t\t\t\t\tcharacterDataOldValue: false,\n\t\t\t\t\tchildList: true,\n\t\t\t\t\tsubtree: true\n\t\t\t\t} );\n\n\t\t\t\twindow.addEventListener( 'load', sendResize, true );\n\n\t\t\t\t// Hack: Remove viewport unit styles, as these are relative\n\t\t\t\t// the iframe root and interfere with our mechanism for\n\t\t\t\t// determining the unconstrained page bounds.\n\t\t\t\tfunction removeViewportStyles( ruleOrNode ) {\n\t\t\t\t\tif( ruleOrNode.style ) {\n\t\t\t\t\t\t[ 'width', 'height', 'minHeight', 'maxHeight' ].forEach( function( style ) {\n\t\t\t\t\t\t\tif ( /^\\d+(vmin|vmax|vh|vw)$/.test( ruleOrNode.style[ style ] ) ) {\n\t\t\t\t\t\t\t\truleOrNode.style[ style ] = '';\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tArray.prototype.forEach.call( document.querySelectorAll( '[style]' ), removeViewportStyles );\n\t\t\t\tArray.prototype.forEach.call( document.styleSheets, function( stylesheet ) {\n\t\t\t\t\tArray.prototype.forEach.call( stylesheet.cssRules || stylesheet.rules, removeViewportStyles );\n\t\t\t\t} );\n\n\t\t\t\tdocument.body.style.position = 'absolute';\n\t\t\t\tdocument.body.style.width = '100%';\n\t\t\t\tdocument.body.setAttribute( 'data-resizable-iframe-connected', '' );\n\n\t\t\t\tsendResize();\n\n\t\t\t\t// Resize events can change the width of elements with 100% width, but we don't\n\t\t\t\t// get an DOM mutations for that, so do the resize when the window is resized, too.\n\t\t\t\twindow.addEventListener( 'resize', sendResize, true );\n\t\t} )();";
 36128       var style = "\n\t\t\tbody {\n\t\t\t\tmargin: 0;\n\t\t\t}\n\t\t\thtml,\n\t\t\tbody,\n\t\t\tbody > div,\n\t\t\tbody > div > iframe {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\thtml.wp-has-aspect-ratio,\n\t\t\tbody.wp-has-aspect-ratio,\n\t\t\tbody.wp-has-aspect-ratio > div,\n\t\t\tbody.wp-has-aspect-ratio > div > iframe {\n\t\t\t\theight: 100%;\n\t\t\t\toverflow: hidden; /* If it has an aspect ratio, it shouldn't scroll. */\n\t\t\t}\n\t\t\tbody > div > * {\n\t\t\t\tmargin-top: 0 !important; /* Has to have !important to override inline styles. */\n\t\t\t\tmargin-bottom: 0 !important;\n\t\t\t}\n\t\t"; // put the html snippet into a html document, and then write it to the iframe's document
 45055       var style = "\n\t\t\tbody {\n\t\t\t\tmargin: 0;\n\t\t\t}\n\t\t\thtml,\n\t\t\tbody,\n\t\t\tbody > div,\n\t\t\tbody > div > iframe {\n\t\t\t\twidth: 100%;\n\t\t\t}\n\t\t\thtml.wp-has-aspect-ratio,\n\t\t\tbody.wp-has-aspect-ratio,\n\t\t\tbody.wp-has-aspect-ratio > div,\n\t\t\tbody.wp-has-aspect-ratio > div > iframe {\n\t\t\t\theight: 100%;\n\t\t\t\toverflow: hidden; /* If it has an aspect ratio, it shouldn't scroll. */\n\t\t\t}\n\t\t\tbody > div > * {\n\t\t\t\tmargin-top: 0 !important; /* Has to have !important to override inline styles. */\n\t\t\t\tmargin-bottom: 0 !important;\n\t\t\t}\n\t\t"; // put the html snippet into a html document, and then write it to the iframe's document
 36179       return Object(external_this_wp_element_["createElement"])(focusable_iframe, {
 45106       return Object(external_this_wp_element_["createElement"])(focusable_iframe, {
 36180         iframeRef: this.iframe,
 45107         iframeRef: this.iframe,
 36181         title: title,
 45108         title: title,
 36182         className: "components-sandbox",
 45109         className: "components-sandbox",
 36183         sandbox: "allow-scripts allow-same-origin allow-presentation",
 45110         sandbox: "allow-scripts allow-same-origin allow-presentation",
 36184         onLoad: this.trySandbox,
       
 36185         onFocus: onFocus,
 45111         onFocus: onFocus,
 36186         width: Math.ceil(this.state.width),
 45112         width: Math.ceil(this.state.width),
 36187         height: Math.ceil(this.state.height)
 45113         height: Math.ceil(this.state.height)
 36188       });
 45114       });
 36189     }
 45115     }
 36203 sandbox_Sandbox = Object(external_this_wp_compose_["withGlobalEvents"])({
 45129 sandbox_Sandbox = Object(external_this_wp_compose_["withGlobalEvents"])({
 36204   message: 'checkMessageForResize'
 45130   message: 'checkMessageForResize'
 36205 })(sandbox_Sandbox);
 45131 })(sandbox_Sandbox);
 36206 /* harmony default export */ var sandbox = (sandbox_Sandbox);
 45132 /* harmony default export */ var sandbox = (sandbox_Sandbox);
 36207 
 45133 
 36208 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/select-control/index.js
 45134 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/snackbar/index.js
       
 45135 var snackbar = __webpack_require__(162);
       
 45136 
       
 45137 // EXTERNAL MODULE: external {"this":"regeneratorRuntime"}
       
 45138 var external_this_regeneratorRuntime_ = __webpack_require__(24);
       
 45139 var external_this_regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(external_this_regeneratorRuntime_);
       
 45140 
       
 45141 // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js
       
 45142 var asyncToGenerator = __webpack_require__(50);
       
 45143 
       
 45144 // EXTERNAL MODULE: ./node_modules/react-spring/web.cjs.js
       
 45145 var web_cjs = __webpack_require__(113);
       
 45146 
       
 45147 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/snackbar/list.js
       
 45148 
 36209 
 45149 
 36210 
 45150 
 36211 
 45151 
 36212 
 45152 
 36213 
 45153 
 36214 /**
 45154 /**
 36215  * External dependencies
 45155  * External dependencies
 36216  */
 45156  */
 36217 
 45157 
       
 45158 
       
 45159 
 36218 /**
 45160 /**
 36219  * WordPress dependencies
 45161  * WordPress dependencies
 36220  */
 45162  */
 36221 
 45163 
 36222 
 45164 
       
 45165 
 36223 /**
 45166 /**
 36224  * Internal dependencies
 45167  * Internal dependencies
 36225  */
 45168  */
 36226 
 45169 
 36227 
 45170 
 36228 
 45171 /**
 36229 function SelectControl(_ref) {
 45172  * Renders a list of notices.
 36230   var help = _ref.help,
 45173  *
 36231       instanceId = _ref.instanceId,
 45174  * @param  {Object}   $0           Props passed to the component.
 36232       label = _ref.label,
 45175  * @param  {Array}    $0.notices   Array of notices to render.
 36233       _ref$multiple = _ref.multiple,
 45176  * @param  {Function} $0.onRemove  Function called when a notice should be removed / dismissed.
 36234       multiple = _ref$multiple === void 0 ? false : _ref$multiple,
 45177  * @param  {Object}   $0.className Name of the class used by the component.
 36235       onChange = _ref.onChange,
 45178  * @param  {Object}   $0.children  Array of children to be rendered inside the notice list.
 36236       _ref$options = _ref.options,
 45179  * @return {Object}                The rendered notices list.
 36237       options = _ref$options === void 0 ? [] : _ref$options,
 45180  */
       
 45181 
       
 45182 function SnackbarList(_ref) {
       
 45183   var notices = _ref.notices,
 36238       className = _ref.className,
 45184       className = _ref.className,
 36239       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["help", "instanceId", "label", "multiple", "onChange", "options", "className"]);
 45185       children = _ref.children,
 36240 
 45186       _ref$onRemove = _ref.onRemove,
 36241   var id = "inspector-select-control-".concat(instanceId);
 45187       onRemove = _ref$onRemove === void 0 ? external_this_lodash_["noop"] : _ref$onRemove;
 36242 
 45188   var isReducedMotion = Object(external_this_wp_compose_["useReducedMotion"])();
 36243   var onChangeValue = function onChangeValue(event) {
 45189 
 36244     if (multiple) {
 45190   var _useState = Object(external_this_wp_element_["useState"])(function () {
 36245       var selectedOptions = Object(toConsumableArray["a" /* default */])(event.target.options).filter(function (_ref2) {
 45191     return new WeakMap();
 36246         var selected = _ref2.selected;
 45192   }),
 36247         return selected;
 45193       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 1),
 36248       });
 45194       refMap = _useState2[0];
 36249 
 45195 
 36250       var newValues = selectedOptions.map(function (_ref3) {
 45196   var transitions = Object(web_cjs["useTransition"])(notices, function (notice) {
 36251         var value = _ref3.value;
 45197     return notice.id;
 36252         return value;
 45198   }, {
 36253       });
 45199     from: {
 36254       onChange(newValues);
 45200       opacity: 0,
 36255       return;
 45201       height: 0
 36256     }
 45202     },
 36257 
 45203     enter: function enter(item) {
 36258     onChange(event.target.value);
 45204       return /*#__PURE__*/function () {
 36259   }; // Disable reason: A select with an onchange throws a warning
 45205         var _ref2 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/external_this_regeneratorRuntime_default.a.mark(function _callee(next) {
 36260 
 45206           return external_this_regeneratorRuntime_default.a.wrap(function _callee$(_context) {
 36261   /* eslint-disable jsx-a11y/no-onchange */
 45207             while (1) {
 36262 
 45208               switch (_context.prev = _context.next) {
 36263 
 45209                 case 0:
 36264   return !Object(external_lodash_["isEmpty"])(options) && Object(external_this_wp_element_["createElement"])(base_control, {
 45210                   _context.next = 2;
 36265     label: label,
 45211                   return next({
 36266     id: id,
 45212                     opacity: 1,
 36267     help: help,
 45213                     height: refMap.get(item).offsetHeight
       
 45214                   });
       
 45215 
       
 45216                 case 2:
       
 45217                   return _context.abrupt("return", _context.sent);
       
 45218 
       
 45219                 case 3:
       
 45220                 case "end":
       
 45221                   return _context.stop();
       
 45222               }
       
 45223             }
       
 45224           }, _callee);
       
 45225         }));
       
 45226 
       
 45227         return function (_x) {
       
 45228           return _ref2.apply(this, arguments);
       
 45229         };
       
 45230       }();
       
 45231     },
       
 45232     leave: function leave() {
       
 45233       return /*#__PURE__*/function () {
       
 45234         var _ref3 = Object(asyncToGenerator["a" /* default */])( /*#__PURE__*/external_this_regeneratorRuntime_default.a.mark(function _callee2(next) {
       
 45235           return external_this_regeneratorRuntime_default.a.wrap(function _callee2$(_context2) {
       
 45236             while (1) {
       
 45237               switch (_context2.prev = _context2.next) {
       
 45238                 case 0:
       
 45239                   _context2.next = 2;
       
 45240                   return next({
       
 45241                     opacity: 0
       
 45242                   });
       
 45243 
       
 45244                 case 2:
       
 45245                   _context2.next = 4;
       
 45246                   return next({
       
 45247                     height: 0
       
 45248                   });
       
 45249 
       
 45250                 case 4:
       
 45251                 case "end":
       
 45252                   return _context2.stop();
       
 45253               }
       
 45254             }
       
 45255           }, _callee2);
       
 45256         }));
       
 45257 
       
 45258         return function (_x2) {
       
 45259           return _ref3.apply(this, arguments);
       
 45260         };
       
 45261       }();
       
 45262     },
       
 45263     immediate: isReducedMotion
       
 45264   });
       
 45265   className = classnames_default()('components-snackbar-list', className);
       
 45266 
       
 45267   var removeNotice = function removeNotice(notice) {
       
 45268     return function () {
       
 45269       return onRemove(notice.id);
       
 45270     };
       
 45271   };
       
 45272 
       
 45273   return Object(external_this_wp_element_["createElement"])("div", {
 36268     className: className
 45274     className: className
 36269   }, Object(external_this_wp_element_["createElement"])("select", Object(esm_extends["a" /* default */])({
 45275   }, children, transitions.map(function (_ref4) {
 36270     id: id,
 45276     var notice = _ref4.item,
 36271     className: "components-select-control__input",
 45277         key = _ref4.key,
 36272     onChange: onChangeValue,
 45278         style = _ref4.props;
 36273     "aria-describedby": !!help ? "".concat(id, "__help") : undefined,
 45279     return Object(external_this_wp_element_["createElement"])(web_cjs["animated"].div, {
 36274     multiple: multiple
 45280       key: key,
 36275   }, props), options.map(function (option, index) {
 45281       style: style
 36276     return Object(external_this_wp_element_["createElement"])("option", {
 45282     }, Object(external_this_wp_element_["createElement"])("div", {
 36277       key: "".concat(option.label, "-").concat(option.value, "-").concat(index),
 45283       className: "components-snackbar-list__notice-container",
 36278       value: option.value
 45284       ref: function ref(_ref5) {
 36279     }, option.label);
 45285         return _ref5 && refMap.set(notice, _ref5);
 36280   })));
 45286       }
 36281   /* eslint-enable jsx-a11y/no-onchange */
 45287     }, Object(external_this_wp_element_["createElement"])(snackbar["a" /* default */], Object(esm_extends["a" /* default */])({}, Object(external_this_lodash_["omit"])(notice, ['content']), {
 36282 }
 45288       onRemove: removeNotice(notice)
 36283 
 45289     }), notice.content)));
 36284 /* harmony default export */ var select_control = (Object(external_this_wp_compose_["withInstanceId"])(SelectControl));
 45290   }));
       
 45291 }
       
 45292 
       
 45293 /* harmony default export */ var snackbar_list = (SnackbarList);
 36285 
 45294 
 36286 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/spinner/index.js
 45295 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/spinner/index.js
 36287 
 45296 
 36288 function Spinner() {
 45297 function Spinner() {
 36289   return Object(external_this_wp_element_["createElement"])("span", {
 45298   return Object(external_this_wp_element_["createElement"])("span", {
 36290     className: "components-spinner"
 45299     className: "components-spinner"
 36291   });
 45300   });
 36292 }
 45301 }
 36293 
 45302 
 36294 // EXTERNAL MODULE: external {"this":["wp","apiFetch"]}
 45303 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tab-panel/index.js
 36295 var external_this_wp_apiFetch_ = __webpack_require__(33);
       
 36296 var external_this_wp_apiFetch_default = /*#__PURE__*/__webpack_require__.n(external_this_wp_apiFetch_);
       
 36297 
       
 36298 // EXTERNAL MODULE: external {"this":["wp","url"]}
       
 36299 var external_this_wp_url_ = __webpack_require__(25);
       
 36300 
       
 36301 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/server-side-render/index.js
       
 36302 
       
 36303 
       
 36304 
 45304 
 36305 
 45305 
 36306 
 45306 
 36307 
 45307 
 36308 
 45308 
 36309 
 45309 
 36310 /**
 45310 /**
 36311  * External dependencies
 45311  * External dependencies
 36312  */
 45312  */
 36313 
 45313 
 36314 /**
       
 36315  * WordPress dependencies
       
 36316  */
       
 36317 
       
 36318 
       
 36319 
       
 36320 
       
 36321 
       
 36322 /**
       
 36323  * Internal dependencies
       
 36324  */
       
 36325 
       
 36326 
       
 36327 
       
 36328 function rendererPath(block) {
       
 36329   var attributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
       
 36330   var urlQueryArgs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
       
 36331   return Object(external_this_wp_url_["addQueryArgs"])("/wp/v2/block-renderer/".concat(block), Object(objectSpread["a" /* default */])({
       
 36332     context: 'edit'
       
 36333   }, null !== attributes ? {
       
 36334     attributes: attributes
       
 36335   } : {}, urlQueryArgs));
       
 36336 }
       
 36337 var server_side_render_ServerSideRender =
       
 36338 /*#__PURE__*/
       
 36339 function (_Component) {
       
 36340   Object(inherits["a" /* default */])(ServerSideRender, _Component);
       
 36341 
       
 36342   function ServerSideRender(props) {
       
 36343     var _this;
       
 36344 
       
 36345     Object(classCallCheck["a" /* default */])(this, ServerSideRender);
       
 36346 
       
 36347     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ServerSideRender).call(this, props));
       
 36348     _this.state = {
       
 36349       response: null
       
 36350     };
       
 36351     return _this;
       
 36352   }
       
 36353 
       
 36354   Object(createClass["a" /* default */])(ServerSideRender, [{
       
 36355     key: "componentDidMount",
       
 36356     value: function componentDidMount() {
       
 36357       this.isStillMounted = true;
       
 36358       this.fetch(this.props); // Only debounce once the initial fetch occurs to ensure that the first
       
 36359       // renders show data as soon as possible.
       
 36360 
       
 36361       this.fetch = Object(external_lodash_["debounce"])(this.fetch, 500);
       
 36362     }
       
 36363   }, {
       
 36364     key: "componentWillUnmount",
       
 36365     value: function componentWillUnmount() {
       
 36366       this.isStillMounted = false;
       
 36367     }
       
 36368   }, {
       
 36369     key: "componentDidUpdate",
       
 36370     value: function componentDidUpdate(prevProps) {
       
 36371       if (!Object(external_lodash_["isEqual"])(prevProps, this.props)) {
       
 36372         this.fetch(this.props);
       
 36373       }
       
 36374     }
       
 36375   }, {
       
 36376     key: "fetch",
       
 36377     value: function fetch(props) {
       
 36378       var _this2 = this;
       
 36379 
       
 36380       if (!this.isStillMounted) {
       
 36381         return;
       
 36382       }
       
 36383 
       
 36384       if (null !== this.state.response) {
       
 36385         this.setState({
       
 36386           response: null
       
 36387         });
       
 36388       }
       
 36389 
       
 36390       var block = props.block,
       
 36391           _props$attributes = props.attributes,
       
 36392           attributes = _props$attributes === void 0 ? null : _props$attributes,
       
 36393           _props$urlQueryArgs = props.urlQueryArgs,
       
 36394           urlQueryArgs = _props$urlQueryArgs === void 0 ? {} : _props$urlQueryArgs;
       
 36395       var path = rendererPath(block, attributes, urlQueryArgs); // Store the latest fetch request so that when we process it, we can
       
 36396       // check if it is the current request, to avoid race conditions on slow networks.
       
 36397 
       
 36398       var fetchRequest = this.currentFetchRequest = external_this_wp_apiFetch_default()({
       
 36399         path: path
       
 36400       }).then(function (response) {
       
 36401         if (_this2.isStillMounted && fetchRequest === _this2.currentFetchRequest && response && response.rendered) {
       
 36402           _this2.setState({
       
 36403             response: response.rendered
       
 36404           });
       
 36405         }
       
 36406       }).catch(function (error) {
       
 36407         if (_this2.isStillMounted && fetchRequest === _this2.currentFetchRequest) {
       
 36408           _this2.setState({
       
 36409             response: {
       
 36410               error: true,
       
 36411               errorMsg: error.message
       
 36412             }
       
 36413           });
       
 36414         }
       
 36415       });
       
 36416       return fetchRequest;
       
 36417     }
       
 36418   }, {
       
 36419     key: "render",
       
 36420     value: function render() {
       
 36421       var response = this.state.response;
       
 36422       var className = this.props.className;
       
 36423 
       
 36424       if (!response) {
       
 36425         return Object(external_this_wp_element_["createElement"])(placeholder, {
       
 36426           className: className
       
 36427         }, Object(external_this_wp_element_["createElement"])(Spinner, null));
       
 36428       } else if (response.error) {
       
 36429         // translators: %s: error message describing the problem
       
 36430         var errorMessage = Object(external_this_wp_i18n_["sprintf"])(Object(external_this_wp_i18n_["__"])('Error loading block: %s'), response.errorMsg);
       
 36431         return Object(external_this_wp_element_["createElement"])(placeholder, {
       
 36432           className: className
       
 36433         }, errorMessage);
       
 36434       } else if (!response.length) {
       
 36435         return Object(external_this_wp_element_["createElement"])(placeholder, {
       
 36436           className: className
       
 36437         }, Object(external_this_wp_i18n_["__"])('No results found.'));
       
 36438       }
       
 36439 
       
 36440       return Object(external_this_wp_element_["createElement"])(external_this_wp_element_["RawHTML"], {
       
 36441         key: "html",
       
 36442         className: className
       
 36443       }, response);
       
 36444     }
       
 36445   }]);
       
 36446 
       
 36447   return ServerSideRender;
       
 36448 }(external_this_wp_element_["Component"]);
       
 36449 /* harmony default export */ var server_side_render = (server_side_render_ServerSideRender);
       
 36450 
       
 36451 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tab-panel/index.js
       
 36452 
       
 36453 
       
 36454 
       
 36455 
       
 36456 
       
 36457 
       
 36458 
       
 36459 
       
 36460 
       
 36461 
       
 36462 /**
       
 36463  * External dependencies
       
 36464  */
       
 36465 
 45314 
 36466 /**
 45315 /**
 36467  * WordPress dependencies
 45316  * WordPress dependencies
 36468  */
 45317  */
 36469 
 45318 
 36481       onClick = _ref.onClick,
 45330       onClick = _ref.onClick,
 36482       children = _ref.children,
 45331       children = _ref.children,
 36483       selected = _ref.selected,
 45332       selected = _ref.selected,
 36484       rest = Object(objectWithoutProperties["a" /* default */])(_ref, ["tabId", "onClick", "children", "selected"]);
 45333       rest = Object(objectWithoutProperties["a" /* default */])(_ref, ["tabId", "onClick", "children", "selected"]);
 36485 
 45334 
 36486   return Object(external_this_wp_element_["createElement"])(build_module_button, Object(esm_extends["a" /* default */])({
 45335   return Object(external_this_wp_element_["createElement"])(build_module_button["a" /* default */], Object(esm_extends["a" /* default */])({
 36487     role: "tab",
 45336     role: "tab",
 36488     tabIndex: selected ? null : -1,
 45337     tabIndex: selected ? null : -1,
 36489     "aria-selected": selected,
 45338     "aria-selected": selected,
 36490     id: tabId,
 45339     id: tabId,
 36491     onClick: onClick
 45340     onClick: onClick
 36492   }, rest), children);
 45341   }, rest), children);
 36493 };
 45342 };
 36494 
 45343 
 36495 var tab_panel_TabPanel =
 45344 function TabPanel(_ref2) {
 36496 /*#__PURE__*/
 45345   var _selectedTab$name;
 36497 function (_Component) {
 45346 
 36498   Object(inherits["a" /* default */])(TabPanel, _Component);
 45347   var className = _ref2.className,
 36499 
 45348       children = _ref2.children,
 36500   function TabPanel() {
 45349       tabs = _ref2.tabs,
 36501     var _this;
 45350       initialTabName = _ref2.initialTabName,
 36502 
 45351       _ref2$orientation = _ref2.orientation,
 36503     Object(classCallCheck["a" /* default */])(this, TabPanel);
 45352       orientation = _ref2$orientation === void 0 ? 'horizontal' : _ref2$orientation,
 36504 
 45353       _ref2$activeClass = _ref2.activeClass,
 36505     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(TabPanel).apply(this, arguments));
 45354       activeClass = _ref2$activeClass === void 0 ? 'is-active' : _ref2$activeClass,
 36506     var _this$props = _this.props,
 45355       _ref2$onSelect = _ref2.onSelect,
 36507         tabs = _this$props.tabs,
 45356       onSelect = _ref2$onSelect === void 0 ? external_this_lodash_["noop"] : _ref2$onSelect;
 36508         initialTabName = _this$props.initialTabName;
 45357   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(TabPanel, 'tab-panel');
 36509     _this.handleClick = _this.handleClick.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 45358 
 36510     _this.onNavigate = _this.onNavigate.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 45359   var _useState = Object(external_this_wp_element_["useState"])(null),
 36511     _this.state = {
 45360       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
 36512       selected: initialTabName || (tabs.length > 0 ? tabs[0].name : null)
 45361       selected = _useState2[0],
 36513     };
 45362       setSelected = _useState2[1];
 36514     return _this;
 45363 
 36515   }
 45364   var handleClick = function handleClick(tabKey) {
 36516 
 45365     setSelected(tabKey);
 36517   Object(createClass["a" /* default */])(TabPanel, [{
 45366     onSelect(tabKey);
 36518     key: "handleClick",
 45367   };
 36519     value: function handleClick(tabKey) {
 45368 
 36520       var _this$props$onSelect = this.props.onSelect,
 45369   var onNavigate = function onNavigate(childIndex, child) {
 36521           onSelect = _this$props$onSelect === void 0 ? external_lodash_["noop"] : _this$props$onSelect;
 45370     child.click();
 36522       this.setState({
 45371   };
 36523         selected: tabKey
 45372 
 36524       });
 45373   var selectedTab = Object(external_this_lodash_["find"])(tabs, {
 36525       onSelect(tabKey);
 45374     name: selected
 36526     }
 45375   });
 36527   }, {
 45376   var selectedId = "".concat(instanceId, "-").concat((_selectedTab$name = selectedTab === null || selectedTab === void 0 ? void 0 : selectedTab.name) !== null && _selectedTab$name !== void 0 ? _selectedTab$name : 'none');
 36528     key: "onNavigate",
 45377   Object(external_this_wp_element_["useEffect"])(function () {
 36529     value: function onNavigate(childIndex, child) {
 45378     var newSelectedTab = Object(external_this_lodash_["find"])(tabs, {
 36530       child.click();
 45379       name: selected
 36531     }
 45380     });
 36532   }, {
 45381 
 36533     key: "render",
 45382     if (!newSelectedTab) {
 36534     value: function render() {
 45383       setSelected(initialTabName || (tabs.length > 0 ? tabs[0].name : null));
 36535       var _this2 = this;
 45384     }
 36536 
 45385   }, [tabs]);
 36537       var selected = this.state.selected;
 45386   return Object(external_this_wp_element_["createElement"])("div", {
 36538       var _this$props2 = this.props,
 45387     className: className
 36539           _this$props2$activeCl = _this$props2.activeClass,
 45388   }, Object(external_this_wp_element_["createElement"])(menu, {
 36540           activeClass = _this$props2$activeCl === void 0 ? 'is-active' : _this$props2$activeCl,
 45389     role: "tablist",
 36541           className = _this$props2.className,
 45390     orientation: orientation,
 36542           instanceId = _this$props2.instanceId,
 45391     onNavigate: onNavigate,
 36543           _this$props2$orientat = _this$props2.orientation,
 45392     className: "components-tab-panel__tabs"
 36544           orientation = _this$props2$orientat === void 0 ? 'horizontal' : _this$props2$orientat,
 45393   }, tabs.map(function (tab) {
 36545           tabs = _this$props2.tabs;
 45394     return Object(external_this_wp_element_["createElement"])(tab_panel_TabButton, {
 36546       var selectedTab = Object(external_lodash_["find"])(tabs, {
 45395       className: classnames_default()('components-tab-panel__tabs-item', tab.className, Object(defineProperty["a" /* default */])({}, activeClass, tab.name === selected)),
 36547         name: selected
 45396       tabId: "".concat(instanceId, "-").concat(tab.name),
 36548       });
 45397       "aria-controls": "".concat(instanceId, "-").concat(tab.name, "-view"),
 36549       var selectedId = instanceId + '-' + selectedTab.name;
 45398       selected: tab.name === selected,
 36550       return Object(external_this_wp_element_["createElement"])("div", {
 45399       key: tab.name,
 36551         className: className
 45400       onClick: Object(external_this_lodash_["partial"])(handleClick, tab.name)
 36552       }, Object(external_this_wp_element_["createElement"])(menu, {
 45401     }, tab.title);
 36553         role: "tablist",
 45402   })), selectedTab && Object(external_this_wp_element_["createElement"])("div", {
 36554         orientation: orientation,
 45403     "aria-labelledby": selectedId,
 36555         onNavigate: this.onNavigate,
 45404     role: "tabpanel",
 36556         className: "components-tab-panel__tabs"
 45405     id: "".concat(selectedId, "-view"),
 36557       }, tabs.map(function (tab) {
 45406     className: "components-tab-panel__tab-content"
 36558         return Object(external_this_wp_element_["createElement"])(tab_panel_TabButton, {
 45407   }, children(selectedTab)));
 36559           className: "".concat(tab.className, " ").concat(tab.name === selected ? activeClass : ''),
 45408 }
 36560           tabId: instanceId + '-' + tab.name,
       
 36561           "aria-controls": instanceId + '-' + tab.name + '-view',
       
 36562           selected: tab.name === selected,
       
 36563           key: tab.name,
       
 36564           onClick: Object(external_lodash_["partial"])(_this2.handleClick, tab.name)
       
 36565         }, tab.title);
       
 36566       })), selectedTab && Object(external_this_wp_element_["createElement"])("div", {
       
 36567         "aria-labelledby": selectedId,
       
 36568         role: "tabpanel",
       
 36569         id: selectedId + '-view',
       
 36570         className: "components-tab-panel__tab-content",
       
 36571         tabIndex: "0"
       
 36572       }, this.props.children(selectedTab)));
       
 36573     }
       
 36574   }]);
       
 36575 
       
 36576   return TabPanel;
       
 36577 }(external_this_wp_element_["Component"]);
       
 36578 
       
 36579 /* harmony default export */ var tab_panel = (Object(external_this_wp_compose_["withInstanceId"])(tab_panel_TabPanel));
       
 36580 
 45409 
 36581 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/textarea-control/index.js
 45410 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/textarea-control/index.js
 36582 
 45411 
 36583 
 45412 
 36584 
 45413 
 36588  */
 45417  */
 36589 
 45418 
 36590 /**
 45419 /**
 36591  * Internal dependencies
 45420  * Internal dependencies
 36592  */
 45421  */
 36593 
       
 36594 
 45422 
 36595 
 45423 
 36596 function TextareaControl(_ref) {
 45424 function TextareaControl(_ref) {
 36597   var label = _ref.label,
 45425   var label = _ref.label,
       
 45426       hideLabelFromVision = _ref.hideLabelFromVision,
 36598       value = _ref.value,
 45427       value = _ref.value,
 36599       help = _ref.help,
 45428       help = _ref.help,
 36600       instanceId = _ref.instanceId,
       
 36601       onChange = _ref.onChange,
 45429       onChange = _ref.onChange,
 36602       _ref$rows = _ref.rows,
 45430       _ref$rows = _ref.rows,
 36603       rows = _ref$rows === void 0 ? 4 : _ref$rows,
 45431       rows = _ref$rows === void 0 ? 4 : _ref$rows,
 36604       className = _ref.className,
 45432       className = _ref.className,
 36605       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "value", "help", "instanceId", "onChange", "rows", "className"]);
 45433       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["label", "hideLabelFromVision", "value", "help", "onChange", "rows", "className"]);
 36606 
 45434 
       
 45435   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(TextareaControl);
 36607   var id = "inspector-textarea-control-".concat(instanceId);
 45436   var id = "inspector-textarea-control-".concat(instanceId);
 36608 
 45437 
 36609   var onChangeValue = function onChangeValue(event) {
 45438   var onChangeValue = function onChangeValue(event) {
 36610     return onChange(event.target.value);
 45439     return onChange(event.target.value);
 36611   };
 45440   };
 36612 
 45441 
 36613   return Object(external_this_wp_element_["createElement"])(base_control, {
 45442   return Object(external_this_wp_element_["createElement"])(base_control, {
 36614     label: label,
 45443     label: label,
       
 45444     hideLabelFromVision: hideLabelFromVision,
 36615     id: id,
 45445     id: id,
 36616     help: help,
 45446     help: help,
 36617     className: className
 45447     className: className
 36618   }, Object(external_this_wp_element_["createElement"])("textarea", Object(esm_extends["a" /* default */])({
 45448   }, Object(external_this_wp_element_["createElement"])("textarea", Object(esm_extends["a" /* default */])({
 36619     className: "components-textarea-control__input",
 45449     className: "components-textarea-control__input",
 36623     "aria-describedby": !!help ? id + '__help' : undefined,
 45453     "aria-describedby": !!help ? id + '__help' : undefined,
 36624     value: value
 45454     value: value
 36625   }, props)));
 45455   }, props)));
 36626 }
 45456 }
 36627 
 45457 
 36628 /* harmony default export */ var textarea_control = (Object(external_this_wp_compose_["withInstanceId"])(TextareaControl));
 45458 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/text-highlight/index.js
       
 45459 
       
 45460 
       
 45461 /**
       
 45462  * External dependencies
       
 45463  */
       
 45464 
       
 45465 /**
       
 45466  * WordPress dependencies
       
 45467  */
       
 45468 
       
 45469 
       
 45470 
       
 45471 var text_highlight_TextHighlight = function TextHighlight(_ref) {
       
 45472   var _ref$text = _ref.text,
       
 45473       text = _ref$text === void 0 ? '' : _ref$text,
       
 45474       _ref$highlight = _ref.highlight,
       
 45475       highlight = _ref$highlight === void 0 ? '' : _ref$highlight;
       
 45476   var trimmedHighlightText = highlight.trim();
       
 45477 
       
 45478   if (!trimmedHighlightText) {
       
 45479     return text;
       
 45480   }
       
 45481 
       
 45482   var regex = new RegExp("(".concat(Object(external_this_lodash_["escapeRegExp"])(trimmedHighlightText), ")"), 'gi');
       
 45483   return Object(external_this_wp_element_["createInterpolateElement"])(text.replace(regex, '<mark>$&</mark>'), {
       
 45484     mark: Object(external_this_wp_element_["createElement"])("mark", null)
       
 45485   });
       
 45486 };
       
 45487 
       
 45488 /* harmony default export */ var text_highlight = (text_highlight_TextHighlight);
       
 45489 
       
 45490 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tip/index.js
       
 45491 
       
 45492 
       
 45493 /**
       
 45494  * Internal dependencies
       
 45495  */
       
 45496 
       
 45497 
       
 45498 function Tip(props) {
       
 45499   return Object(external_this_wp_element_["createElement"])("div", {
       
 45500     className: "components-tip"
       
 45501   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["SVG"], {
       
 45502     width: "24",
       
 45503     height: "24",
       
 45504     viewBox: "0 0 24 24"
       
 45505   }, Object(external_this_wp_element_["createElement"])(external_this_wp_primitives_["Path"], {
       
 45506     d: "M12 15.8c-3.7 0-6.8-3-6.8-6.8s3-6.8 6.8-6.8c3.7 0 6.8 3 6.8 6.8s-3.1 6.8-6.8 6.8zm0-12C9.1 3.8 6.8 6.1 6.8 9s2.4 5.2 5.2 5.2c2.9 0 5.2-2.4 5.2-5.2S14.9 3.8 12 3.8zM8 17.5h8V19H8zM10 20.5h4V22h-4z"
       
 45507   })), Object(external_this_wp_element_["createElement"])("p", null, props.children));
       
 45508 }
       
 45509 
       
 45510 /* harmony default export */ var tip = (Tip);
 36629 
 45511 
 36630 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toggle-control/index.js
 45512 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toggle-control/index.js
 36631 
 45513 
 36632 
 45514 
 36633 
       
 36634 
       
 36635 
       
 36636 
       
 36637 
       
 36638 
       
 36639 /**
 45515 /**
 36640  * External dependencies
 45516  * External dependencies
 36641  */
 45517  */
 36642 
 45518 
 36643 
 45519 
 36644 /**
 45520 /**
 36645  * WordPress dependencies
 45521  * WordPress dependencies
 36646  */
 45522  */
 36647 
 45523 
 36648 
 45524 
 36649 
       
 36650 /**
 45525 /**
 36651  * Internal dependencies
 45526  * Internal dependencies
 36652  */
 45527  */
 36653 
 45528 
 36654 
 45529 
 36655 
 45530 
 36656 
 45531 function ToggleControl(_ref) {
 36657 var toggle_control_ToggleControl =
 45532   var label = _ref.label,
 36658 /*#__PURE__*/
 45533       checked = _ref.checked,
 36659 function (_Component) {
 45534       help = _ref.help,
 36660   Object(inherits["a" /* default */])(ToggleControl, _Component);
 45535       className = _ref.className,
 36661 
 45536       onChange = _ref.onChange;
 36662   function ToggleControl() {
 45537 
 36663     var _this;
 45538   function onChangeToggle(event) {
 36664 
 45539     onChange(event.target.checked);
 36665     Object(classCallCheck["a" /* default */])(this, ToggleControl);
 45540   }
 36666 
 45541 
 36667     _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(ToggleControl).apply(this, arguments));
 45542   var instanceId = Object(external_this_wp_compose_["useInstanceId"])(ToggleControl);
 36668     _this.onChange = _this.onChange.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 45543   var id = "inspector-toggle-control-".concat(instanceId);
 36669     return _this;
 45544   var describedBy, helpLabel;
 36670   }
 45545 
 36671 
 45546   if (help) {
 36672   Object(createClass["a" /* default */])(ToggleControl, [{
 45547     describedBy = id + '__help';
 36673     key: "onChange",
 45548     helpLabel = Object(external_this_lodash_["isFunction"])(help) ? help(checked) : help;
 36674     value: function onChange(event) {
 45549   }
 36675       if (this.props.onChange) {
 45550 
 36676         this.props.onChange(event.target.checked);
 45551   return Object(external_this_wp_element_["createElement"])(base_control, {
       
 45552     id: id,
       
 45553     help: helpLabel,
       
 45554     className: classnames_default()('components-toggle-control', className)
       
 45555   }, Object(external_this_wp_element_["createElement"])(form_toggle, {
       
 45556     id: id,
       
 45557     checked: checked,
       
 45558     onChange: onChangeToggle,
       
 45559     "aria-describedby": describedBy
       
 45560   }), Object(external_this_wp_element_["createElement"])("label", {
       
 45561     htmlFor: id,
       
 45562     className: "components-toggle-control__label"
       
 45563   }, label));
       
 45564 }
       
 45565 
       
 45566 // EXTERNAL MODULE: ./node_modules/reakit/es/Toolbar/ToolbarState.js
       
 45567 var ToolbarState = __webpack_require__(167);
       
 45568 
       
 45569 // CONCATENATED MODULE: ./node_modules/reakit/es/Toolbar/Toolbar.js
       
 45570 
       
 45571 
       
 45572 
       
 45573 
       
 45574 
       
 45575 
       
 45576 
       
 45577 
       
 45578 
       
 45579 
       
 45580 
       
 45581 
       
 45582 
       
 45583 
       
 45584 
       
 45585 
       
 45586 
       
 45587 
       
 45588 
       
 45589 
       
 45590 
       
 45591 
       
 45592 
       
 45593 
       
 45594 
       
 45595 
       
 45596 
       
 45597 
       
 45598 
       
 45599 
       
 45600 var useToolbar = Object(createHook["a" /* createHook */])({
       
 45601   name: "Toolbar",
       
 45602   compose: Composite["b" /* useComposite */],
       
 45603   useState: ToolbarState["a" /* useToolbarState */],
       
 45604   useProps: function useProps(options, htmlProps) {
       
 45605     return Object(_rollupPluginBabelHelpers_1f0bf8c2["b" /* a */])({
       
 45606       role: "toolbar",
       
 45607       "aria-orientation": options.orientation
       
 45608     }, htmlProps);
       
 45609   }
       
 45610 });
       
 45611 var Toolbar = Object(createComponent["a" /* createComponent */])({
       
 45612   as: "div",
       
 45613   useHook: useToolbar,
       
 45614   useCreateElement: function useCreateElement$1(type, props, children) {
       
 45615      false ? undefined : void 0;
       
 45616     return Object(useCreateElement["a" /* useCreateElement */])(type, props, children);
       
 45617   }
       
 45618 });
       
 45619 
       
 45620 
       
 45621 
       
 45622 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar/toolbar-container.js
       
 45623 
       
 45624 
       
 45625 
       
 45626 
       
 45627 /**
       
 45628  * External dependencies
       
 45629  */
       
 45630 
       
 45631 /**
       
 45632  * WordPress dependencies
       
 45633  */
       
 45634 
       
 45635 
       
 45636 /**
       
 45637  * Internal dependencies
       
 45638  */
       
 45639 
       
 45640 
       
 45641 
       
 45642 
       
 45643 function ToolbarContainer(_ref, ref) {
       
 45644   var accessibilityLabel = _ref.accessibilityLabel,
       
 45645       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["accessibilityLabel"]);
       
 45646 
       
 45647   // https://reakit.io/docs/basic-concepts/#state-hooks
       
 45648   // Passing baseId for server side rendering (which includes snapshots)
       
 45649   // If an id prop is passed to Toolbar, toolbar items will use it as a base for their ids
       
 45650   var toolbarState = Object(ToolbarState["a" /* useToolbarState */])({
       
 45651     loop: true,
       
 45652     baseId: props.id,
       
 45653     rtl: getRTL()
       
 45654   });
       
 45655   return (// This will provide state for `ToolbarButton`'s
       
 45656     Object(external_this_wp_element_["createElement"])(toolbar_context["a" /* default */].Provider, {
       
 45657       value: toolbarState
       
 45658     }, Object(external_this_wp_element_["createElement"])(Toolbar, Object(esm_extends["a" /* default */])({
       
 45659       ref: ref,
       
 45660       "aria-label": accessibilityLabel
       
 45661     }, toolbarState, props)))
       
 45662   );
       
 45663 }
       
 45664 
       
 45665 /* harmony default export */ var toolbar_container = (Object(external_this_wp_element_["forwardRef"])(ToolbarContainer));
       
 45666 
       
 45667 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar/index.js
       
 45668 
       
 45669 
       
 45670 
       
 45671 
       
 45672 /**
       
 45673  * External dependencies
       
 45674  */
       
 45675 
       
 45676 /**
       
 45677  * WordPress dependencies
       
 45678  */
       
 45679 
       
 45680 
       
 45681 /**
       
 45682  * Internal dependencies
       
 45683  */
       
 45684 
       
 45685 
       
 45686 
       
 45687 /**
       
 45688  * Renders a toolbar.
       
 45689  *
       
 45690  * To add controls, simply pass `ToolbarButton` components as children.
       
 45691  *
       
 45692  * @param {Object} props                                    Component props.
       
 45693  * @param {string} [props.className]                        Class to set on the container div.
       
 45694  * @param {string} [props.__experimentalAccessibilityLabel] ARIA label for toolbar container.
       
 45695  * @param {Object} ref                                      React Element ref.
       
 45696  */
       
 45697 
       
 45698 function toolbar_Toolbar(_ref, ref) {
       
 45699   var className = _ref.className,
       
 45700       __experimentalAccessibilityLabel = _ref.__experimentalAccessibilityLabel,
       
 45701       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["className", "__experimentalAccessibilityLabel"]);
       
 45702 
       
 45703   if (__experimentalAccessibilityLabel) {
       
 45704     return Object(external_this_wp_element_["createElement"])(toolbar_container // `ToolbarGroup` already uses components-toolbar for compatibility reasons
       
 45705     , Object(esm_extends["a" /* default */])({
       
 45706       className: classnames_default()('components-accessible-toolbar', className),
       
 45707       accessibilityLabel: __experimentalAccessibilityLabel,
       
 45708       ref: ref
       
 45709     }, props));
       
 45710   } // When the __experimentalAccessibilityLabel prop is not passed, Toolbar will
       
 45711   // fallback to ToolbarGroup. This should be deprecated as soon as the new API
       
 45712   // gets stable.
       
 45713   // See https://github.com/WordPress/gutenberg/pull/20008#issuecomment-624503410
       
 45714 
       
 45715 
       
 45716   return Object(external_this_wp_element_["createElement"])(toolbar_group, Object(esm_extends["a" /* default */])({}, props, {
       
 45717     className: className
       
 45718   }));
       
 45719 }
       
 45720 
       
 45721 /* harmony default export */ var toolbar = (Object(external_this_wp_element_["forwardRef"])(toolbar_Toolbar));
       
 45722 
       
 45723 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/roving-tab-index-context.js
       
 45724 /**
       
 45725  * WordPress dependencies
       
 45726  */
       
 45727 
       
 45728 var RovingTabIndexContext = Object(external_this_wp_element_["createContext"])();
       
 45729 var roving_tab_index_context_useRovingTabIndexContext = function useRovingTabIndexContext() {
       
 45730   return Object(external_this_wp_element_["useContext"])(RovingTabIndexContext);
       
 45731 };
       
 45732 var RovingTabIndexProvider = RovingTabIndexContext.Provider;
       
 45733 
       
 45734 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/roving-tab-index.js
       
 45735 
       
 45736 
       
 45737 
       
 45738 /**
       
 45739  * WordPress dependencies
       
 45740  */
       
 45741 
       
 45742 /**
       
 45743  * Internal dependencies
       
 45744  */
       
 45745 
       
 45746 
       
 45747 /**
       
 45748  * Provider for adding roving tab index behaviors to tree grid structures.
       
 45749  *
       
 45750  * @see https://github.com/WordPress/gutenberg/blob/master/packages/components/src/tree-grid/README.md
       
 45751  *
       
 45752  * @param {Object}    props          Component props.
       
 45753  * @param {WPElement} props.children Children to be rendered
       
 45754  */
       
 45755 
       
 45756 function RovingTabIndex(_ref) {
       
 45757   var children = _ref.children;
       
 45758 
       
 45759   var _useState = Object(external_this_wp_element_["useState"])(),
       
 45760       _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 45761       lastFocusedElement = _useState2[0],
       
 45762       setLastFocusedElement = _useState2[1]; // Use `useMemo` to avoid creation of a new object for the providerValue
       
 45763   // on every render. Only create a new object when the `lastFocusedElement`
       
 45764   // value changes.
       
 45765 
       
 45766 
       
 45767   var providerValue = Object(external_this_wp_element_["useMemo"])(function () {
       
 45768     return {
       
 45769       lastFocusedElement: lastFocusedElement,
       
 45770       setLastFocusedElement: setLastFocusedElement
       
 45771     };
       
 45772   }, [lastFocusedElement]);
       
 45773   return Object(external_this_wp_element_["createElement"])(RovingTabIndexProvider, {
       
 45774     value: providerValue
       
 45775   }, children);
       
 45776 }
       
 45777 
       
 45778 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/index.js
       
 45779 
       
 45780 
       
 45781 
       
 45782 
       
 45783 /**
       
 45784  * External dependencies
       
 45785  */
       
 45786 
       
 45787 /**
       
 45788  * WordPress dependencies
       
 45789  */
       
 45790 
       
 45791 
       
 45792 
       
 45793 
       
 45794 /**
       
 45795  * Internal dependencies
       
 45796  */
       
 45797 
       
 45798 
       
 45799 /**
       
 45800  * Return focusables in a row element, excluding those from other branches
       
 45801  * nested within the row.
       
 45802  *
       
 45803  * @param {Element} rowElement The DOM element representing the row.
       
 45804  *
       
 45805  * @return {?Array} The array of focusables in the row.
       
 45806  */
       
 45807 
       
 45808 function getRowFocusables(rowElement) {
       
 45809   var focusablesInRow = external_this_wp_dom_["focus"].focusable.find(rowElement);
       
 45810 
       
 45811   if (!focusablesInRow || !focusablesInRow.length) {
       
 45812     return;
       
 45813   }
       
 45814 
       
 45815   return focusablesInRow.filter(function (focusable) {
       
 45816     return focusable.closest('[role="row"]') === rowElement;
       
 45817   });
       
 45818 }
       
 45819 /**
       
 45820  * Renders both a table and tbody element, used to create a tree hierarchy.
       
 45821  *
       
 45822  * @see https://github.com/WordPress/gutenberg/blob/master/packages/components/src/tree-grid/README.md
       
 45823  *
       
 45824  * @param {Object}    props          Component props.
       
 45825  * @param {WPElement} props.children Children to be rendered
       
 45826  */
       
 45827 
       
 45828 
       
 45829 function TreeGrid(_ref) {
       
 45830   var children = _ref.children,
       
 45831       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children"]);
       
 45832 
       
 45833   var onKeyDown = Object(external_this_wp_element_["useCallback"])(function (event) {
       
 45834     var keyCode = event.keyCode,
       
 45835         metaKey = event.metaKey,
       
 45836         ctrlKey = event.ctrlKey,
       
 45837         altKey = event.altKey,
       
 45838         shiftKey = event.shiftKey;
       
 45839     var hasModifierKeyPressed = metaKey || ctrlKey || altKey || shiftKey;
       
 45840 
       
 45841     if (hasModifierKeyPressed || !Object(external_this_lodash_["includes"])([external_this_wp_keycodes_["UP"], external_this_wp_keycodes_["DOWN"], external_this_wp_keycodes_["LEFT"], external_this_wp_keycodes_["RIGHT"]], keyCode)) {
       
 45842       return;
       
 45843     } // The event will be handled, stop propagation.
       
 45844 
       
 45845 
       
 45846     event.stopPropagation();
       
 45847     var _document = document,
       
 45848         activeElement = _document.activeElement;
       
 45849     var treeGridElement = event.currentTarget;
       
 45850 
       
 45851     if (!treeGridElement.contains(activeElement)) {
       
 45852       return;
       
 45853     } // Calculate the columnIndex of the active element.
       
 45854 
       
 45855 
       
 45856     var activeRow = activeElement.closest('[role="row"]');
       
 45857     var focusablesInRow = getRowFocusables(activeRow);
       
 45858     var currentColumnIndex = focusablesInRow.indexOf(activeElement);
       
 45859 
       
 45860     if (Object(external_this_lodash_["includes"])([external_this_wp_keycodes_["LEFT"], external_this_wp_keycodes_["RIGHT"]], keyCode)) {
       
 45861       // Calculate to the next element.
       
 45862       var nextIndex;
       
 45863 
       
 45864       if (keyCode === external_this_wp_keycodes_["LEFT"]) {
       
 45865         nextIndex = Math.max(0, currentColumnIndex - 1);
       
 45866       } else {
       
 45867         nextIndex = Math.min(currentColumnIndex + 1, focusablesInRow.length - 1);
       
 45868       } // Focus is either at the left or right edge of the grid. Do nothing.
       
 45869 
       
 45870 
       
 45871       if (nextIndex === currentColumnIndex) {
       
 45872         // Prevent key use for anything else. For example, Voiceover
       
 45873         // will start reading text on continued use of left/right arrow
       
 45874         // keys.
       
 45875         event.preventDefault();
       
 45876         return;
       
 45877       } // Focus the next element.
       
 45878 
       
 45879 
       
 45880       focusablesInRow[nextIndex].focus(); // Prevent key use for anything else. This ensures Voiceover
       
 45881       // doesn't try to handle key navigation.
       
 45882 
       
 45883       event.preventDefault();
       
 45884     } else if (Object(external_this_lodash_["includes"])([external_this_wp_keycodes_["UP"], external_this_wp_keycodes_["DOWN"]], keyCode)) {
       
 45885       // Calculate the rowIndex of the next row.
       
 45886       var rows = Array.from(treeGridElement.querySelectorAll('[role="row"]'));
       
 45887       var currentRowIndex = rows.indexOf(activeRow);
       
 45888       var nextRowIndex;
       
 45889 
       
 45890       if (keyCode === external_this_wp_keycodes_["UP"]) {
       
 45891         nextRowIndex = Math.max(0, currentRowIndex - 1);
       
 45892       } else {
       
 45893         nextRowIndex = Math.min(currentRowIndex + 1, rows.length - 1);
       
 45894       } // Focus is either at the top or bottom edge of the grid. Do nothing.
       
 45895 
       
 45896 
       
 45897       if (nextRowIndex === currentRowIndex) {
       
 45898         // Prevent key use for anything else. For example, Voiceover
       
 45899         // will start navigating horizontally when reaching the vertical
       
 45900         // bounds of a table.
       
 45901         event.preventDefault();
       
 45902         return;
       
 45903       } // Get the focusables in the next row.
       
 45904 
       
 45905 
       
 45906       var focusablesInNextRow = getRowFocusables(rows[nextRowIndex]); // If for some reason there are no focusables in the next row, do nothing.
       
 45907 
       
 45908       if (!focusablesInNextRow || !focusablesInNextRow.length) {
       
 45909         // Prevent key use for anything else. For example, Voiceover
       
 45910         // will still focus text when using arrow keys, while this
       
 45911         // component should limit navigation to focusables.
       
 45912         event.preventDefault();
       
 45913         return;
       
 45914       } // Try to focus the element in the next row that's at a similar column to the activeElement.
       
 45915 
       
 45916 
       
 45917       var _nextIndex = Math.min(currentColumnIndex, focusablesInNextRow.length - 1);
       
 45918 
       
 45919       focusablesInNextRow[_nextIndex].focus(); // Prevent key use for anything else. This ensures Voiceover
       
 45920       // doesn't try to handle key navigation.
       
 45921 
       
 45922 
       
 45923       event.preventDefault();
       
 45924     }
       
 45925   }, []);
       
 45926   return Object(external_this_wp_element_["createElement"])(RovingTabIndex, null, Object(external_this_wp_element_["createElement"])("table", Object(esm_extends["a" /* default */])({}, props, {
       
 45927     role: "treegrid",
       
 45928     onKeyDown: onKeyDown
       
 45929   }), Object(external_this_wp_element_["createElement"])("tbody", null, children)));
       
 45930 }
       
 45931 
       
 45932 
       
 45933 
       
 45934 
       
 45935 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/row.js
       
 45936 
       
 45937 
       
 45938 
       
 45939 
       
 45940 /**
       
 45941  * WordPress dependencies
       
 45942  */
       
 45943 
       
 45944 
       
 45945 function TreeGridRow(_ref, ref) {
       
 45946   var children = _ref.children,
       
 45947       level = _ref.level,
       
 45948       positionInSet = _ref.positionInSet,
       
 45949       setSize = _ref.setSize,
       
 45950       isExpanded = _ref.isExpanded,
       
 45951       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "level", "positionInSet", "setSize", "isExpanded"]);
       
 45952 
       
 45953   return (// Disable reason: Due to an error in the ARIA 1.1 specification, the
       
 45954     // aria-posinset and aria-setsize properties are not supported on row
       
 45955     // elements. This is being corrected in ARIA 1.2. Consequently, the
       
 45956     // linting rule fails when validating this markup.
       
 45957     //
       
 45958     // eslint-disable-next-line jsx-a11y/role-supports-aria-props
       
 45959     Object(external_this_wp_element_["createElement"])("tr", Object(esm_extends["a" /* default */])({}, props, {
       
 45960       ref: ref,
       
 45961       role: "row",
       
 45962       "aria-level": level,
       
 45963       "aria-posinset": positionInSet,
       
 45964       "aria-setsize": setSize,
       
 45965       "aria-expanded": isExpanded
       
 45966     }), children)
       
 45967   );
       
 45968 }
       
 45969 
       
 45970 /* harmony default export */ var tree_grid_row = (Object(external_this_wp_element_["forwardRef"])(TreeGridRow));
       
 45971 
       
 45972 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/roving-tab-index-item.js
       
 45973 
       
 45974 
       
 45975 
       
 45976 
       
 45977 function roving_tab_index_item_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 45978 
       
 45979 function roving_tab_index_item_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { roving_tab_index_item_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { roving_tab_index_item_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 45980 
       
 45981 /**
       
 45982  * WordPress dependencies
       
 45983  */
       
 45984 
       
 45985 /**
       
 45986  * Internal dependencies
       
 45987  */
       
 45988 
       
 45989 
       
 45990 /* harmony default export */ var roving_tab_index_item = (Object(external_this_wp_element_["forwardRef"])(function RovingTabIndexItem(_ref, forwardedRef) {
       
 45991   var children = _ref.children,
       
 45992       Component = _ref.as,
       
 45993       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "as"]);
       
 45994 
       
 45995   var localRef = Object(external_this_wp_element_["useRef"])();
       
 45996   var ref = forwardedRef || localRef;
       
 45997 
       
 45998   var _useRovingTabIndexCon = roving_tab_index_context_useRovingTabIndexContext(),
       
 45999       lastFocusedElement = _useRovingTabIndexCon.lastFocusedElement,
       
 46000       setLastFocusedElement = _useRovingTabIndexCon.setLastFocusedElement;
       
 46001 
       
 46002   var tabIndex;
       
 46003 
       
 46004   if (lastFocusedElement) {
       
 46005     tabIndex = lastFocusedElement === ref.current ? 0 : -1;
       
 46006   }
       
 46007 
       
 46008   var onFocus = function onFocus(event) {
       
 46009     return setLastFocusedElement(event.target);
       
 46010   };
       
 46011 
       
 46012   var allProps = roving_tab_index_item_objectSpread({
       
 46013     ref: ref,
       
 46014     tabIndex: tabIndex,
       
 46015     onFocus: onFocus
       
 46016   }, props);
       
 46017 
       
 46018   if (typeof children === 'function') {
       
 46019     return children(allProps);
       
 46020   }
       
 46021 
       
 46022   return Object(external_this_wp_element_["createElement"])(Component, allProps, children);
       
 46023 }));
       
 46024 
       
 46025 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/item.js
       
 46026 
       
 46027 
       
 46028 
       
 46029 
       
 46030 /**
       
 46031  * WordPress dependencies
       
 46032  */
       
 46033 
       
 46034 /**
       
 46035  * Internal dependencies
       
 46036  */
       
 46037 
       
 46038 
       
 46039 /* harmony default export */ var tree_grid_item = (Object(external_this_wp_element_["forwardRef"])(function TreeGridItem(_ref, ref) {
       
 46040   var children = _ref.children,
       
 46041       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children"]);
       
 46042 
       
 46043   return Object(external_this_wp_element_["createElement"])(roving_tab_index_item, Object(esm_extends["a" /* default */])({
       
 46044     ref: ref
       
 46045   }, props), children);
       
 46046 }));
       
 46047 
       
 46048 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/tree-grid/cell.js
       
 46049 
       
 46050 
       
 46051 
       
 46052 
       
 46053 /**
       
 46054  * WordPress dependencies
       
 46055  */
       
 46056 
       
 46057 /**
       
 46058  * Internal dependencies
       
 46059  */
       
 46060 
       
 46061 
       
 46062 /* harmony default export */ var tree_grid_cell = (Object(external_this_wp_element_["forwardRef"])(function TreeGridCell(_ref, ref) {
       
 46063   var children = _ref.children,
       
 46064       _ref$withoutGridItem = _ref.withoutGridItem,
       
 46065       withoutGridItem = _ref$withoutGridItem === void 0 ? false : _ref$withoutGridItem,
       
 46066       props = Object(objectWithoutProperties["a" /* default */])(_ref, ["children", "withoutGridItem"]);
       
 46067 
       
 46068   return Object(external_this_wp_element_["createElement"])("td", Object(esm_extends["a" /* default */])({}, props, {
       
 46069     role: "gridcell"
       
 46070   }), withoutGridItem ? children : Object(external_this_wp_element_["createElement"])(tree_grid_item, {
       
 46071     ref: ref
       
 46072   }, children));
       
 46073 }));
       
 46074 
       
 46075 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/index.js + 6 modules
       
 46076 var slot_fill = __webpack_require__(121);
       
 46077 
       
 46078 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/context.js + 1 modules
       
 46079 var slot_fill_context = __webpack_require__(124);
       
 46080 
       
 46081 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/slot-fill/bubbles-virtually/use-slot.js
       
 46082 var use_slot = __webpack_require__(159);
       
 46083 
       
 46084 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/navigate-regions/index.js
       
 46085 
       
 46086 
       
 46087 
       
 46088 
       
 46089 /**
       
 46090  * External dependencies
       
 46091  */
       
 46092 
       
 46093 /**
       
 46094  * WordPress dependencies
       
 46095  */
       
 46096 
       
 46097 
       
 46098 
       
 46099 
       
 46100 var defaultShortcuts = {
       
 46101   previous: ['ctrl+shift+`', external_this_wp_keycodes_["rawShortcut"].access('p')],
       
 46102   next: ['ctrl+`', external_this_wp_keycodes_["rawShortcut"].access('n')]
       
 46103 };
       
 46104 /* harmony default export */ var navigate_regions = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
       
 46105   return function (_ref) {
       
 46106     var _ref$shortcuts = _ref.shortcuts,
       
 46107         shortcuts = _ref$shortcuts === void 0 ? defaultShortcuts : _ref$shortcuts,
       
 46108         props = Object(objectWithoutProperties["a" /* default */])(_ref, ["shortcuts"]);
       
 46109 
       
 46110     var container = Object(external_this_wp_element_["useRef"])();
       
 46111 
       
 46112     var _useState = Object(external_this_wp_element_["useState"])(false),
       
 46113         _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),
       
 46114         isFocusingRegions = _useState2[0],
       
 46115         setIsFocusingRegions = _useState2[1];
       
 46116 
       
 46117     var className = classnames_default()('components-navigate-regions', {
       
 46118       'is-focusing-regions': isFocusingRegions
       
 46119     });
       
 46120 
       
 46121     function focusRegion(offset) {
       
 46122       var regions = Array.from(container.current.querySelectorAll('[role="region"]'));
       
 46123 
       
 46124       if (!regions.length) {
       
 46125         return;
 36677       }
 46126       }
 36678     }
 46127 
 36679   }, {
 46128       var nextRegion = regions[0];
 36680     key: "render",
 46129       var selectedIndex = regions.indexOf(document.activeElement);
 36681     value: function render() {
 46130 
 36682       var _this$props = this.props,
 46131       if (selectedIndex !== -1) {
 36683           label = _this$props.label,
 46132         var nextIndex = selectedIndex + offset;
 36684           checked = _this$props.checked,
 46133         nextIndex = nextIndex === -1 ? regions.length - 1 : nextIndex;
 36685           help = _this$props.help,
 46134         nextIndex = nextIndex === regions.length ? 0 : nextIndex;
 36686           instanceId = _this$props.instanceId,
 46135         nextRegion = regions[nextIndex];
 36687           className = _this$props.className;
       
 36688       var id = "inspector-toggle-control-".concat(instanceId);
       
 36689       var describedBy, helpLabel;
       
 36690 
       
 36691       if (help) {
       
 36692         describedBy = id + '__help';
       
 36693         helpLabel = Object(external_lodash_["isFunction"])(help) ? help(checked) : help;
       
 36694       }
 46136       }
 36695 
 46137 
 36696       return Object(external_this_wp_element_["createElement"])(base_control, {
 46138       nextRegion.focus();
 36697         id: id,
 46139       setIsFocusingRegions(true);
 36698         help: helpLabel,
 46140     }
 36699         className: classnames_default()('components-toggle-control', className)
 46141 
 36700       }, Object(external_this_wp_element_["createElement"])(form_toggle, {
 46142     var focusPrevious = Object(external_this_wp_element_["useCallback"])(function () {
 36701         id: id,
 46143       return focusRegion(-1);
 36702         checked: checked,
 46144     }, [container]);
 36703         onChange: this.onChange,
 46145     var focusNext = Object(external_this_wp_element_["useCallback"])(function () {
 36704         "aria-describedby": describedBy
 46146       return focusRegion(1);
 36705       }), Object(external_this_wp_element_["createElement"])("label", {
 46147     }, [container]);
 36706         htmlFor: id,
 46148     Object(external_this_wp_compose_["useKeyboardShortcut"])(shortcuts.previous, focusPrevious, {
 36707         className: "components-toggle-control__label"
 46149       bindGlobal: true
 36708       }, label));
 46150     });
 36709     }
 46151     Object(external_this_wp_compose_["useKeyboardShortcut"])(shortcuts.next, focusNext, {
 36710   }]);
 46152       bindGlobal: true
 36711 
 46153     }); // Disable reason: Clicking the editor should dismiss the regions focus style
 36712   return ToggleControl;
 46154 
 36713 }(external_this_wp_element_["Component"]);
 46155     /* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */
 36714 
 46156 
 36715 /* harmony default export */ var toggle_control = (Object(external_this_wp_compose_["withInstanceId"])(toggle_control_ToggleControl));
 46157     return Object(external_this_wp_element_["createElement"])("div", {
 36716 
 46158       ref: container,
 36717 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-button/toolbar-button-container.js
 46159       className: className,
 36718 
 46160       onClick: function onClick() {
 36719 
 46161         return setIsFocusingRegions(false);
 36720 var toolbar_button_container_ToolbarButtonContainer = function ToolbarButtonContainer(props) {
 46162       }
 36721   return Object(external_this_wp_element_["createElement"])("div", {
 46163     }, Object(external_this_wp_element_["createElement"])(WrappedComponent, props));
 36722     className: props.className
 46164     /* eslint-enable jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events */
 36723   }, props.children);
 46165   };
 36724 };
 46166 }, 'navigateRegions'));
 36725 
 46167 
 36726 /* harmony default export */ var toolbar_button_container = (toolbar_button_container_ToolbarButtonContainer);
 46168 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-fallback-styles/index.js
 36727 
 46169 
 36728 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar-button/index.js
 46170 
 36729 
 46171 
 36730 
 46172 
       
 46173 
       
 46174 
       
 46175 
       
 46176 
       
 46177 
       
 46178 function with_fallback_styles_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (with_fallback_styles_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 46179 
       
 46180 function with_fallback_styles_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 36731 
 46181 
 36732 /**
 46182 /**
 36733  * External dependencies
 46183  * External dependencies
 36734  */
 46184  */
 36735 
 46185 
 36736 /**
 46186 /**
 36737  * Internal dependencies
       
 36738  */
       
 36739 
       
 36740 
       
 36741 
       
 36742 
       
 36743 function ToolbarButton(_ref) {
       
 36744   var containerClassName = _ref.containerClassName,
       
 36745       icon = _ref.icon,
       
 36746       title = _ref.title,
       
 36747       shortcut = _ref.shortcut,
       
 36748       subscript = _ref.subscript,
       
 36749       _onClick = _ref.onClick,
       
 36750       className = _ref.className,
       
 36751       isActive = _ref.isActive,
       
 36752       isDisabled = _ref.isDisabled,
       
 36753       extraProps = _ref.extraProps,
       
 36754       children = _ref.children;
       
 36755   return Object(external_this_wp_element_["createElement"])(toolbar_button_container, {
       
 36756     className: containerClassName
       
 36757   }, Object(external_this_wp_element_["createElement"])(icon_button, Object(esm_extends["a" /* default */])({
       
 36758     icon: icon,
       
 36759     label: title,
       
 36760     shortcut: shortcut,
       
 36761     "data-subscript": subscript,
       
 36762     onClick: function onClick(event) {
       
 36763       event.stopPropagation();
       
 36764 
       
 36765       _onClick();
       
 36766     },
       
 36767     className: classnames_default()('components-toolbar__control', className, {
       
 36768       'is-active': isActive
       
 36769     }),
       
 36770     "aria-pressed": isActive,
       
 36771     disabled: isDisabled
       
 36772   }, extraProps)), children);
       
 36773 }
       
 36774 
       
 36775 /* harmony default export */ var toolbar_button = (ToolbarButton);
       
 36776 
       
 36777 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar/toolbar-container.js
       
 36778 
       
 36779 
       
 36780 var toolbar_container_ToolbarContainer = function ToolbarContainer(props) {
       
 36781   return Object(external_this_wp_element_["createElement"])("div", {
       
 36782     className: props.className
       
 36783   }, props.children);
       
 36784 };
       
 36785 
       
 36786 /* harmony default export */ var toolbar_container = (toolbar_container_ToolbarContainer);
       
 36787 
       
 36788 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/toolbar/index.js
       
 36789 
       
 36790 
       
 36791 
       
 36792 
       
 36793 /**
       
 36794  * External dependencies
       
 36795  */
       
 36796 
       
 36797 
       
 36798 /**
       
 36799  * Internal dependencies
       
 36800  */
       
 36801 
       
 36802 
       
 36803 
       
 36804 
       
 36805 /**
       
 36806  * Renders a toolbar with controls.
       
 36807  *
       
 36808  * The `controls` prop accepts an array of sets. A set is an array of controls.
       
 36809  * Controls have the following shape:
       
 36810  *
       
 36811  * ```
       
 36812  * {
       
 36813  *   icon: string,
       
 36814  *   title: string,
       
 36815  *   subscript: string,
       
 36816  *   onClick: Function,
       
 36817  *   isActive: boolean,
       
 36818  *   isDisabled: boolean
       
 36819  * }
       
 36820  * ```
       
 36821  *
       
 36822  * For convenience it is also possible to pass only an array of controls. It is
       
 36823  * then assumed this is the only set.
       
 36824  *
       
 36825  * Either `controls` or `children` is required, otherwise this components
       
 36826  * renders nothing.
       
 36827  *
       
 36828  * @param {?Array}        controls  The controls to render in this toolbar.
       
 36829  * @param {?ReactElement} children  Any other things to render inside the
       
 36830  *                                  toolbar besides the controls.
       
 36831  * @param {?string}       className Class to set on the container div.
       
 36832  *
       
 36833  * @return {ReactElement} The rendered toolbar.
       
 36834  */
       
 36835 
       
 36836 function Toolbar(_ref) {
       
 36837   var _ref$controls = _ref.controls,
       
 36838       controls = _ref$controls === void 0 ? [] : _ref$controls,
       
 36839       children = _ref.children,
       
 36840       className = _ref.className,
       
 36841       isCollapsed = _ref.isCollapsed,
       
 36842       icon = _ref.icon,
       
 36843       label = _ref.label,
       
 36844       otherProps = Object(objectWithoutProperties["a" /* default */])(_ref, ["controls", "children", "className", "isCollapsed", "icon", "label"]);
       
 36845 
       
 36846   if ((!controls || !controls.length) && !children) {
       
 36847     return null;
       
 36848   } // Normalize controls to nested array of objects (sets of controls)
       
 36849 
       
 36850 
       
 36851   var controlSets = controls;
       
 36852 
       
 36853   if (!Array.isArray(controlSets[0])) {
       
 36854     controlSets = [controlSets];
       
 36855   }
       
 36856 
       
 36857   if (isCollapsed) {
       
 36858     return Object(external_this_wp_element_["createElement"])(dropdown_menu, {
       
 36859       icon: icon,
       
 36860       label: label,
       
 36861       controls: controlSets,
       
 36862       className: classnames_default()('components-toolbar', className)
       
 36863     });
       
 36864   }
       
 36865 
       
 36866   return Object(external_this_wp_element_["createElement"])(toolbar_container, Object(esm_extends["a" /* default */])({
       
 36867     className: classnames_default()('components-toolbar', className)
       
 36868   }, otherProps), Object(external_lodash_["flatMap"])(controlSets, function (controlSet, indexOfSet) {
       
 36869     return controlSet.map(function (control, indexOfControl) {
       
 36870       return Object(external_this_wp_element_["createElement"])(toolbar_button, Object(esm_extends["a" /* default */])({
       
 36871         key: [indexOfSet, indexOfControl].join(),
       
 36872         containerClassName: indexOfSet > 0 && indexOfControl === 0 ? 'has-left-divider' : null
       
 36873       }, control));
       
 36874     });
       
 36875   }), children);
       
 36876 }
       
 36877 
       
 36878 /* harmony default export */ var toolbar = (Toolbar);
       
 36879 
       
 36880 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/navigate-regions/index.js
       
 36881 
       
 36882 
       
 36883 
       
 36884 
       
 36885 
       
 36886 
       
 36887 
       
 36888 
       
 36889 
       
 36890 
       
 36891 /**
       
 36892  * External dependencies
       
 36893  */
       
 36894 
       
 36895 /**
       
 36896  * WordPress dependencies
 46187  * WordPress dependencies
 36897  */
 46188  */
 36898 
 46189 
 36899 
 46190 
 36900 
 46191 
 36901 
 46192 /* harmony default export */ var with_fallback_styles = (function (mapNodeToProps) {
 36902 /**
 46193   return Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
 36903  * Internal dependencies
 46194     return /*#__PURE__*/function (_Component) {
 36904  */
       
 36905 
       
 36906 
       
 36907 /* harmony default export */ var navigate_regions = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
       
 36908   return (
       
 36909     /*#__PURE__*/
       
 36910     function (_Component) {
       
 36911       Object(inherits["a" /* default */])(_class, _Component);
 46195       Object(inherits["a" /* default */])(_class, _Component);
       
 46196 
       
 46197       var _super = with_fallback_styles_createSuper(_class);
 36912 
 46198 
 36913       function _class() {
 46199       function _class() {
 36914         var _this;
 46200         var _this;
 36915 
 46201 
 36916         Object(classCallCheck["a" /* default */])(this, _class);
 46202         Object(classCallCheck["a" /* default */])(this, _class);
 36917 
 46203 
 36918         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(_class).apply(this, arguments));
 46204         _this = _super.apply(this, arguments);
 36919         _this.bindContainer = _this.bindContainer.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 46205         _this.nodeRef = _this.props.node;
 36920         _this.focusNextRegion = _this.focusRegion.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)), 1);
       
 36921         _this.focusPreviousRegion = _this.focusRegion.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)), -1);
       
 36922         _this.onClick = _this.onClick.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 36923         _this.state = {
 46206         _this.state = {
 36924           isFocusingRegions: false
 46207           fallbackStyles: undefined,
       
 46208           grabStylesCompleted: false
 36925         };
 46209         };
       
 46210         _this.bindRef = _this.bindRef.bind(Object(assertThisInitialized["a" /* default */])(_this));
 36926         return _this;
 46211         return _this;
 36927       }
 46212       }
 36928 
 46213 
 36929       Object(createClass["a" /* default */])(_class, [{
 46214       Object(createClass["a" /* default */])(_class, [{
 36930         key: "bindContainer",
 46215         key: "bindRef",
 36931         value: function bindContainer(ref) {
 46216         value: function bindRef(node) {
 36932           this.container = ref;
 46217           if (!node) {
       
 46218             return;
       
 46219           }
       
 46220 
       
 46221           this.nodeRef = node;
 36933         }
 46222         }
 36934       }, {
 46223       }, {
 36935         key: "focusRegion",
 46224         key: "componentDidMount",
 36936         value: function focusRegion(offset) {
 46225         value: function componentDidMount() {
 36937           var regions = Object(toConsumableArray["a" /* default */])(this.container.querySelectorAll('[role="region"]'));
 46226           this.grabFallbackStyles();
 36938 
       
 36939           if (!regions.length) {
       
 36940             return;
       
 36941           }
       
 36942 
       
 36943           var nextRegion = regions[0];
       
 36944           var selectedIndex = regions.indexOf(document.activeElement);
       
 36945 
       
 36946           if (selectedIndex !== -1) {
       
 36947             var nextIndex = selectedIndex + offset;
       
 36948             nextIndex = nextIndex === -1 ? regions.length - 1 : nextIndex;
       
 36949             nextIndex = nextIndex === regions.length ? 0 : nextIndex;
       
 36950             nextRegion = regions[nextIndex];
       
 36951           }
       
 36952 
       
 36953           nextRegion.focus();
       
 36954           this.setState({
       
 36955             isFocusingRegions: true
       
 36956           });
       
 36957         }
 46227         }
 36958       }, {
 46228       }, {
 36959         key: "onClick",
 46229         key: "componentDidUpdate",
 36960         value: function onClick() {
 46230         value: function componentDidUpdate() {
 36961           this.setState({
 46231           this.grabFallbackStyles();
 36962             isFocusingRegions: false
 46232         }
 36963           });
 46233       }, {
       
 46234         key: "grabFallbackStyles",
       
 46235         value: function grabFallbackStyles() {
       
 46236           var _this$state = this.state,
       
 46237               grabStylesCompleted = _this$state.grabStylesCompleted,
       
 46238               fallbackStyles = _this$state.fallbackStyles;
       
 46239 
       
 46240           if (this.nodeRef && !grabStylesCompleted) {
       
 46241             var newFallbackStyles = mapNodeToProps(this.nodeRef, this.props);
       
 46242 
       
 46243             if (!Object(external_this_lodash_["isEqual"])(newFallbackStyles, fallbackStyles)) {
       
 46244               this.setState({
       
 46245                 fallbackStyles: newFallbackStyles,
       
 46246                 grabStylesCompleted: !!Object(external_this_lodash_["every"])(newFallbackStyles)
       
 46247               });
       
 46248             }
       
 46249           }
 36964         }
 46250         }
 36965       }, {
 46251       }, {
 36966         key: "render",
 46252         key: "render",
 36967         value: function render() {
 46253         value: function render() {
 36968           var _ref;
 46254           var wrappedComponent = Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, this.props, this.state.fallbackStyles));
 36969 
 46255           return this.props.node ? wrappedComponent : Object(external_this_wp_element_["createElement"])("div", {
 36970           var className = classnames_default()('components-navigate-regions', {
 46256             ref: this.bindRef
 36971             'is-focusing-regions': this.state.isFocusingRegions
 46257           }, " ", wrappedComponent, " ");
 36972           }); // Disable reason: Clicking the editor should dismiss the regions focus style
       
 36973 
       
 36974           /* eslint-disable jsx-a11y/no-static-element-interactions, jsx-a11y/onclick-has-role, jsx-a11y/click-events-have-key-events */
       
 36975 
       
 36976           return Object(external_this_wp_element_["createElement"])("div", {
       
 36977             ref: this.bindContainer,
       
 36978             className: className,
       
 36979             onClick: this.onClick
       
 36980           }, Object(external_this_wp_element_["createElement"])(keyboard_shortcuts, {
       
 36981             bindGlobal: true,
       
 36982             shortcuts: (_ref = {
       
 36983               'ctrl+`': this.focusNextRegion
       
 36984             }, Object(defineProperty["a" /* default */])(_ref, external_this_wp_keycodes_["rawShortcut"].access('n'), this.focusNextRegion), Object(defineProperty["a" /* default */])(_ref, 'ctrl+shift+`', this.focusPreviousRegion), Object(defineProperty["a" /* default */])(_ref, external_this_wp_keycodes_["rawShortcut"].access('p'), this.focusPreviousRegion), _ref)
       
 36985           }), Object(external_this_wp_element_["createElement"])(WrappedComponent, this.props));
       
 36986           /* eslint-enable jsx-a11y/no-static-element-interactions, jsx-a11y/onclick-has-role, jsx-a11y/click-events-have-key-events */
       
 36987         }
 46258         }
 36988       }]);
 46259       }]);
 36989 
 46260 
 36990       return _class;
 46261       return _class;
 36991     }(external_this_wp_element_["Component"])
 46262     }(external_this_wp_element_["Component"]);
 36992   );
       
 36993 }, 'navigateRegions'));
       
 36994 
       
 36995 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-fallback-styles/index.js
       
 36996 
       
 36997 
       
 36998 
       
 36999 
       
 37000 
       
 37001 
       
 37002 
       
 37003 
       
 37004 
       
 37005 /**
       
 37006  * External dependencies
       
 37007  */
       
 37008 
       
 37009 /**
       
 37010  * WordPress dependencies
       
 37011  */
       
 37012 
       
 37013 
       
 37014 
       
 37015 /* harmony default export */ var with_fallback_styles = (function (mapNodeToProps) {
       
 37016   return Object(external_this_wp_compose_["createHigherOrderComponent"])(function (WrappedComponent) {
       
 37017     return (
       
 37018       /*#__PURE__*/
       
 37019       function (_Component) {
       
 37020         Object(inherits["a" /* default */])(_class, _Component);
       
 37021 
       
 37022         function _class() {
       
 37023           var _this;
       
 37024 
       
 37025           Object(classCallCheck["a" /* default */])(this, _class);
       
 37026 
       
 37027           _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(_class).apply(this, arguments));
       
 37028           _this.nodeRef = _this.props.node;
       
 37029           _this.state = {
       
 37030             fallbackStyles: undefined,
       
 37031             grabStylesCompleted: false
       
 37032           };
       
 37033           _this.bindRef = _this.bindRef.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
       
 37034           return _this;
       
 37035         }
       
 37036 
       
 37037         Object(createClass["a" /* default */])(_class, [{
       
 37038           key: "bindRef",
       
 37039           value: function bindRef(node) {
       
 37040             if (!node) {
       
 37041               return;
       
 37042             }
       
 37043 
       
 37044             this.nodeRef = node;
       
 37045           }
       
 37046         }, {
       
 37047           key: "componentDidMount",
       
 37048           value: function componentDidMount() {
       
 37049             this.grabFallbackStyles();
       
 37050           }
       
 37051         }, {
       
 37052           key: "componentDidUpdate",
       
 37053           value: function componentDidUpdate() {
       
 37054             this.grabFallbackStyles();
       
 37055           }
       
 37056         }, {
       
 37057           key: "grabFallbackStyles",
       
 37058           value: function grabFallbackStyles() {
       
 37059             var _this$state = this.state,
       
 37060                 grabStylesCompleted = _this$state.grabStylesCompleted,
       
 37061                 fallbackStyles = _this$state.fallbackStyles;
       
 37062 
       
 37063             if (this.nodeRef && !grabStylesCompleted) {
       
 37064               var newFallbackStyles = mapNodeToProps(this.nodeRef, this.props);
       
 37065 
       
 37066               if (!Object(external_lodash_["isEqual"])(newFallbackStyles, fallbackStyles)) {
       
 37067                 this.setState({
       
 37068                   fallbackStyles: newFallbackStyles,
       
 37069                   grabStylesCompleted: !!Object(external_lodash_["every"])(newFallbackStyles)
       
 37070                 });
       
 37071               }
       
 37072             }
       
 37073           }
       
 37074         }, {
       
 37075           key: "render",
       
 37076           value: function render() {
       
 37077             var wrappedComponent = Object(external_this_wp_element_["createElement"])(WrappedComponent, Object(esm_extends["a" /* default */])({}, this.props, this.state.fallbackStyles));
       
 37078             return this.props.node ? wrappedComponent : Object(external_this_wp_element_["createElement"])("div", {
       
 37079               ref: this.bindRef
       
 37080             }, " ", wrappedComponent, " ");
       
 37081           }
       
 37082         }]);
       
 37083 
       
 37084         return _class;
       
 37085       }(external_this_wp_element_["Component"])
       
 37086     );
       
 37087   }, 'withFallbackStyles');
 46263   }, 'withFallbackStyles');
 37088 });
 46264 });
 37089 
 46265 
 37090 // EXTERNAL MODULE: external {"this":["wp","hooks"]}
 46266 // EXTERNAL MODULE: external {"this":["wp","hooks"]}
 37091 var external_this_wp_hooks_ = __webpack_require__(26);
 46267 var external_this_wp_hooks_ = __webpack_require__(32);
 37092 
 46268 
 37093 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-filters/index.js
 46269 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-filters/index.js
 37094 
 46270 
 37095 
 46271 
 37096 
 46272 
 37097 
 46273 
 37098 
 46274 
 37099 
 46275 
       
 46276 
       
 46277 function with_filters_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (with_filters_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 46278 
       
 46279 function with_filters_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 37100 
 46280 
 37101 /**
 46281 /**
 37102  * External dependencies
 46282  * External dependencies
 37103  */
 46283  */
 37104 
 46284 
 37142       if (FilteredComponent === undefined) {
 46322       if (FilteredComponent === undefined) {
 37143         FilteredComponent = Object(external_this_wp_hooks_["applyFilters"])(hookName, OriginalComponent);
 46323         FilteredComponent = Object(external_this_wp_hooks_["applyFilters"])(hookName, OriginalComponent);
 37144       }
 46324       }
 37145     }
 46325     }
 37146 
 46326 
 37147     var FilteredComponentRenderer =
 46327     var FilteredComponentRenderer = /*#__PURE__*/function (_Component) {
 37148     /*#__PURE__*/
       
 37149     function (_Component) {
       
 37150       Object(inherits["a" /* default */])(FilteredComponentRenderer, _Component);
 46328       Object(inherits["a" /* default */])(FilteredComponentRenderer, _Component);
       
 46329 
       
 46330       var _super = with_filters_createSuper(FilteredComponentRenderer);
 37151 
 46331 
 37152       function FilteredComponentRenderer() {
 46332       function FilteredComponentRenderer() {
 37153         var _this;
 46333         var _this;
 37154 
 46334 
 37155         Object(classCallCheck["a" /* default */])(this, FilteredComponentRenderer);
 46335         Object(classCallCheck["a" /* default */])(this, FilteredComponentRenderer);
 37156 
 46336 
 37157         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(FilteredComponentRenderer).apply(this, arguments));
 46337         _this = _super.apply(this, arguments);
 37158         ensureFilteredComponent();
 46338         ensureFilteredComponent();
 37159         return _this;
 46339         return _this;
 37160       }
 46340       }
 37161 
 46341 
 37162       Object(createClass["a" /* default */])(FilteredComponentRenderer, [{
 46342       Object(createClass["a" /* default */])(FilteredComponentRenderer, [{
 37171           }
 46351           }
 37172         }
 46352         }
 37173       }, {
 46353       }, {
 37174         key: "componentWillUnmount",
 46354         key: "componentWillUnmount",
 37175         value: function componentWillUnmount() {
 46355         value: function componentWillUnmount() {
 37176           FilteredComponentRenderer.instances = Object(external_lodash_["without"])(FilteredComponentRenderer.instances, this); // If this was the last of the mounted components filtered on
 46356           FilteredComponentRenderer.instances = Object(external_this_lodash_["without"])(FilteredComponentRenderer.instances, this); // If this was the last of the mounted components filtered on
 37177           // this hook, remove the hook handler.
 46357           // this hook, remove the hook handler.
 37178 
 46358 
 37179           if (FilteredComponentRenderer.instances.length === 0) {
 46359           if (FilteredComponentRenderer.instances.length === 0) {
 37180             Object(external_this_wp_hooks_["removeAction"])('hookRemoved', namespace);
 46360             Object(external_this_wp_hooks_["removeAction"])('hookRemoved', namespace);
 37181             Object(external_this_wp_hooks_["removeAction"])('hookAdded', namespace);
 46361             Object(external_this_wp_hooks_["removeAction"])('hookAdded', namespace);
 37195     /**
 46375     /**
 37196      * Updates the FilteredComponent definition, forcing a render for each
 46376      * Updates the FilteredComponent definition, forcing a render for each
 37197      * mounted instance. This occurs a maximum of once per animation frame.
 46377      * mounted instance. This occurs a maximum of once per animation frame.
 37198      */
 46378      */
 37199 
 46379 
 37200     var throttledForceUpdate = Object(external_lodash_["debounce"])(function () {
 46380     var throttledForceUpdate = Object(external_this_lodash_["debounce"])(function () {
 37201       // Recreate the filtered component, only after delay so that it's
 46381       // Recreate the filtered component, only after delay so that it's
 37202       // computed once, even if many filters added.
 46382       // computed once, even if many filters added.
 37203       FilteredComponent = Object(external_this_wp_hooks_["applyFilters"])(hookName, OriginalComponent); // Force each instance to render.
 46383       FilteredComponent = Object(external_this_wp_hooks_["applyFilters"])(hookName, OriginalComponent); // Force each instance to render.
 37204 
 46384 
 37205       FilteredComponentRenderer.instances.forEach(function (instance) {
 46385       FilteredComponentRenderer.instances.forEach(function (instance) {
 37222 
 46402 
 37223     return FilteredComponentRenderer;
 46403     return FilteredComponentRenderer;
 37224   }, 'withFilters');
 46404   }, 'withFilters');
 37225 }
 46405 }
 37226 
 46406 
 37227 // EXTERNAL MODULE: ./node_modules/uuid/v4.js
 46407 // EXTERNAL MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-focus-return/context.js
 37228 var v4 = __webpack_require__(65);
 46408 var with_focus_return_context = __webpack_require__(193);
 37229 var v4_default = /*#__PURE__*/__webpack_require__.n(v4);
 46409 
 37230 
 46410 // CONCATENATED MODULE: ./node_modules/@wordpress/components/node_modules/uuid/dist/esm-browser/rng.js
       
 46411 // Unique ID creation requires a high quality random # generator. In the browser we therefore
       
 46412 // require the crypto API and do not support built-in fallback to lower quality random number
       
 46413 // generators (like Math.random()).
       
 46414 // getRandomValues needs to be invoked in a context where "this" is a Crypto implementation. Also,
       
 46415 // find the complete implementation of crypto (msCrypto) on IE11.
       
 46416 var getRandomValues = typeof crypto != 'undefined' && crypto.getRandomValues && crypto.getRandomValues.bind(crypto) || typeof msCrypto != 'undefined' && typeof msCrypto.getRandomValues == 'function' && msCrypto.getRandomValues.bind(msCrypto);
       
 46417 var rnds8 = new Uint8Array(16); // eslint-disable-line no-undef
       
 46418 
       
 46419 function rng() {
       
 46420   if (!getRandomValues) {
       
 46421     throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
       
 46422   }
       
 46423 
       
 46424   return getRandomValues(rnds8);
       
 46425 }
       
 46426 // CONCATENATED MODULE: ./node_modules/@wordpress/components/node_modules/uuid/dist/esm-browser/bytesToUuid.js
       
 46427 /**
       
 46428  * Convert array of 16 byte values to UUID string format of the form:
       
 46429  * XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
       
 46430  */
       
 46431 var byteToHex = [];
       
 46432 
       
 46433 for (var bytesToUuid_i = 0; bytesToUuid_i < 256; ++bytesToUuid_i) {
       
 46434   byteToHex[bytesToUuid_i] = (bytesToUuid_i + 0x100).toString(16).substr(1);
       
 46435 }
       
 46436 
       
 46437 function bytesToUuid(buf, offset) {
       
 46438   var i = offset || 0;
       
 46439   var bth = byteToHex; // join used to fix memory issue caused by concatenation: https://bugs.chromium.org/p/v8/issues/detail?id=3175#c4
       
 46440 
       
 46441   return [bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], '-', bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]], bth[buf[i++]]].join('');
       
 46442 }
       
 46443 
       
 46444 /* harmony default export */ var esm_browser_bytesToUuid = (bytesToUuid);
       
 46445 // CONCATENATED MODULE: ./node_modules/@wordpress/components/node_modules/uuid/dist/esm-browser/v4.js
       
 46446 
       
 46447 
       
 46448 
       
 46449 function v4(options, buf, offset) {
       
 46450   var i = buf && offset || 0;
       
 46451 
       
 46452   if (typeof options == 'string') {
       
 46453     buf = options === 'binary' ? new Array(16) : null;
       
 46454     options = null;
       
 46455   }
       
 46456 
       
 46457   options = options || {};
       
 46458   var rnds = options.random || (options.rng || rng)(); // Per 4.4, set bits for version and `clock_seq_hi_and_reserved`
       
 46459 
       
 46460   rnds[6] = rnds[6] & 0x0f | 0x40;
       
 46461   rnds[8] = rnds[8] & 0x3f | 0x80; // Copy bytes to buffer, if provided
       
 46462 
       
 46463   if (buf) {
       
 46464     for (var ii = 0; ii < 16; ++ii) {
       
 46465       buf[i + ii] = rnds[ii];
       
 46466     }
       
 46467   }
       
 46468 
       
 46469   return buf || esm_browser_bytesToUuid(rnds);
       
 46470 }
       
 46471 
       
 46472 /* harmony default export */ var esm_browser_v4 = (v4);
 37231 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-notices/index.js
 46473 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/higher-order/with-notices/index.js
 37232 
 46474 
 37233 
 46475 
 37234 
 46476 
 37235 
 46477 
 37237 
 46479 
 37238 
 46480 
 37239 
 46481 
 37240 
 46482 
 37241 
 46483 
       
 46484 
       
 46485 function with_notices_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
       
 46486 
       
 46487 function with_notices_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { with_notices_ownKeys(Object(source), true).forEach(function (key) { Object(defineProperty["a" /* default */])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { with_notices_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
       
 46488 
       
 46489 function with_notices_createSuper(Derived) { return function () { var Super = Object(getPrototypeOf["a" /* default */])(Derived), result; if (with_notices_isNativeReflectConstruct()) { var NewTarget = Object(getPrototypeOf["a" /* default */])(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return Object(possibleConstructorReturn["a" /* default */])(this, result); }; }
       
 46490 
       
 46491 function with_notices_isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }
 37242 
 46492 
 37243 /**
 46493 /**
 37244  * External dependencies
 46494  * External dependencies
 37245  */
 46495  */
 37246 
 46496 
 37256 
 46506 
 37257 
 46507 
 37258 /**
 46508 /**
 37259  * Override the default edit UI to include notices if supported.
 46509  * Override the default edit UI to include notices if supported.
 37260  *
 46510  *
 37261  * @param  {function|Component} OriginalComponent Original component.
 46511  * @param  {WPComponent} OriginalComponent Original component.
 37262  * @return {Component}                            Wrapped component.
 46512  *
       
 46513  * @return {WPComponent} Wrapped component.
 37263  */
 46514  */
 37264 
 46515 
 37265 /* harmony default export */ var with_notices = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (OriginalComponent) {
 46516 /* harmony default export */ var with_notices = (Object(external_this_wp_compose_["createHigherOrderComponent"])(function (OriginalComponent) {
 37266   return (
 46517   return /*#__PURE__*/function (_Component) {
 37267     /*#__PURE__*/
 46518     Object(inherits["a" /* default */])(WrappedBlockEdit, _Component);
 37268     function (_Component) {
 46519 
 37269       Object(inherits["a" /* default */])(WrappedBlockEdit, _Component);
 46520     var _super = with_notices_createSuper(WrappedBlockEdit);
 37270 
 46521 
 37271       function WrappedBlockEdit() {
 46522     function WrappedBlockEdit() {
 37272         var _this;
 46523       var _this;
 37273 
 46524 
 37274         Object(classCallCheck["a" /* default */])(this, WrappedBlockEdit);
 46525       Object(classCallCheck["a" /* default */])(this, WrappedBlockEdit);
 37275 
 46526 
 37276         _this = Object(possibleConstructorReturn["a" /* default */])(this, Object(getPrototypeOf["a" /* default */])(WrappedBlockEdit).apply(this, arguments));
 46527       _this = _super.apply(this, arguments);
 37277         _this.createNotice = _this.createNotice.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 46528       _this.createNotice = _this.createNotice.bind(Object(assertThisInitialized["a" /* default */])(_this));
 37278         _this.createErrorNotice = _this.createErrorNotice.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 46529       _this.createErrorNotice = _this.createErrorNotice.bind(Object(assertThisInitialized["a" /* default */])(_this));
 37279         _this.removeNotice = _this.removeNotice.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 46530       _this.removeNotice = _this.removeNotice.bind(Object(assertThisInitialized["a" /* default */])(_this));
 37280         _this.removeAllNotices = _this.removeAllNotices.bind(Object(assertThisInitialized["a" /* default */])(Object(assertThisInitialized["a" /* default */])(_this)));
 46531       _this.removeAllNotices = _this.removeAllNotices.bind(Object(assertThisInitialized["a" /* default */])(_this));
 37281         _this.state = {
 46532       _this.state = {
 37282           noticeList: []
 46533         noticeList: []
 37283         };
 46534       };
 37284         _this.noticeOperations = {
 46535       _this.noticeOperations = {
 37285           createNotice: _this.createNotice,
 46536         createNotice: _this.createNotice,
 37286           createErrorNotice: _this.createErrorNotice,
 46537         createErrorNotice: _this.createErrorNotice,
 37287           removeAllNotices: _this.removeAllNotices,
 46538         removeAllNotices: _this.removeAllNotices,
 37288           removeNotice: _this.removeNotice
 46539         removeNotice: _this.removeNotice
 37289         };
 46540       };
 37290         return _this;
 46541       return _this;
       
 46542     }
       
 46543     /**
       
 46544      * Function passed down as a prop that adds a new notice.
       
 46545      *
       
 46546      * @param {Object} notice  Notice to add.
       
 46547      */
       
 46548 
       
 46549 
       
 46550     Object(createClass["a" /* default */])(WrappedBlockEdit, [{
       
 46551       key: "createNotice",
       
 46552       value: function createNotice(notice) {
       
 46553         var noticeToAdd = notice.id ? notice : with_notices_objectSpread({}, notice, {
       
 46554           id: esm_browser_v4()
       
 46555         });
       
 46556         this.setState(function (state) {
       
 46557           return {
       
 46558             noticeList: [].concat(Object(toConsumableArray["a" /* default */])(state.noticeList), [noticeToAdd])
       
 46559           };
       
 46560         });
 37291       }
 46561       }
 37292       /**
 46562       /**
 37293       * Function passed down as a prop that adds a new notice.
 46563        * Function passed as a prop that adds a new error notice.
 37294       *
 46564        *
 37295       * @param {Object} notice  Notice to add.
 46565        * @param {string} msg  Error message of the notice.
 37296       */
 46566        */
 37297 
 46567 
 37298 
 46568     }, {
 37299       Object(createClass["a" /* default */])(WrappedBlockEdit, [{
 46569       key: "createErrorNotice",
 37300         key: "createNotice",
 46570       value: function createErrorNotice(msg) {
 37301         value: function createNotice(notice) {
 46571         this.createNotice({
 37302           var noticeToAdd = notice.id ? notice : Object(objectSpread["a" /* default */])({}, notice, {
 46572           status: 'error',
 37303             id: v4_default()()
 46573           content: msg
 37304           });
 46574         });
 37305           this.setState(function (state) {
 46575       }
 37306             return {
 46576       /**
 37307               noticeList: [].concat(Object(toConsumableArray["a" /* default */])(state.noticeList), [noticeToAdd])
 46577        * Removes a notice by id.
 37308             };
 46578        *
       
 46579        * @param {string} id  Id of the notice to remove.
       
 46580        */
       
 46581 
       
 46582     }, {
       
 46583       key: "removeNotice",
       
 46584       value: function removeNotice(id) {
       
 46585         this.setState(function (state) {
       
 46586           return {
       
 46587             noticeList: state.noticeList.filter(function (notice) {
       
 46588               return notice.id !== id;
       
 46589             })
       
 46590           };
       
 46591         });
       
 46592       }
       
 46593       /**
       
 46594        * Removes all notices
       
 46595        */
       
 46596 
       
 46597     }, {
       
 46598       key: "removeAllNotices",
       
 46599       value: function removeAllNotices() {
       
 46600         this.setState({
       
 46601           noticeList: []
       
 46602         });
       
 46603       }
       
 46604     }, {
       
 46605       key: "render",
       
 46606       value: function render() {
       
 46607         return Object(external_this_wp_element_["createElement"])(OriginalComponent, Object(esm_extends["a" /* default */])({
       
 46608           noticeList: this.state.noticeList,
       
 46609           noticeOperations: this.noticeOperations,
       
 46610           noticeUI: this.state.noticeList.length > 0 && Object(external_this_wp_element_["createElement"])(list, {
       
 46611             className: "components-with-notices-ui",
       
 46612             notices: this.state.noticeList,
       
 46613             onRemove: this.removeNotice
       
 46614           })
       
 46615         }, this.props));
       
 46616       }
       
 46617     }]);
       
 46618 
       
 46619     return WrappedBlockEdit;
       
 46620   }(external_this_wp_element_["Component"]);
       
 46621 }));
       
 46622 
       
 46623 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/index.js
       
 46624 // Primitives
       
 46625  // Components
       
 46626 
       
 46627 
       
 46628 
       
 46629 
       
 46630 
       
 46631 
       
 46632 
       
 46633 
       
 46634 
       
 46635 
       
 46636 
       
 46637 
       
 46638 
       
 46639 
       
 46640 
       
 46641 
       
 46642 
       
 46643 
       
 46644 
       
 46645 
       
 46646 
       
 46647 
       
 46648 
       
 46649 
       
 46650 
       
 46651 
       
 46652 
       
 46653 
       
 46654 
       
 46655 
       
 46656 
       
 46657 
       
 46658 
       
 46659 
       
 46660 
       
 46661 
       
 46662 
       
 46663 
       
 46664 
       
 46665 
       
 46666 
       
 46667 
       
 46668 
       
 46669 
       
 46670 
       
 46671 
       
 46672 
       
 46673 
       
 46674 
       
 46675 
       
 46676 
       
 46677 
       
 46678 
       
 46679 
       
 46680 
       
 46681 
       
 46682 
       
 46683 
       
 46684 
       
 46685 
       
 46686 
       
 46687 
       
 46688 
       
 46689 
       
 46690 
       
 46691 
       
 46692 
       
 46693 
       
 46694 
       
 46695 
       
 46696 
       
 46697 
       
 46698 
       
 46699 
       
 46700 
       
 46701 
       
 46702 
       
 46703 
       
 46704 
       
 46705 
       
 46706 
       
 46707 
       
 46708 
       
 46709 
       
 46710 
       
 46711 
       
 46712 
       
 46713 
       
 46714 
       
 46715 
       
 46716 
       
 46717 
       
 46718 
       
 46719  // Higher-Order Components
       
 46720 
       
 46721 
       
 46722 
       
 46723 
       
 46724 
       
 46725 
       
 46726 
       
 46727 
       
 46728 
       
 46729 
       
 46730 
       
 46731 /***/ }),
       
 46732 /* 261 */,
       
 46733 /* 262 */,
       
 46734 /* 263 */,
       
 46735 /* 264 */,
       
 46736 /* 265 */,
       
 46737 /* 266 */,
       
 46738 /* 267 */,
       
 46739 /* 268 */,
       
 46740 /* 269 */,
       
 46741 /* 270 */
       
 46742 /***/ (function(module, exports) {
       
 46743 
       
 46744 function _defineProperty(obj, key, value) {
       
 46745   if (key in obj) {
       
 46746     Object.defineProperty(obj, key, {
       
 46747       value: value,
       
 46748       enumerable: true,
       
 46749       configurable: true,
       
 46750       writable: true
       
 46751     });
       
 46752   } else {
       
 46753     obj[key] = value;
       
 46754   }
       
 46755 
       
 46756   return obj;
       
 46757 }
       
 46758 
       
 46759 module.exports = _defineProperty;
       
 46760 
       
 46761 /***/ }),
       
 46762 /* 271 */
       
 46763 /***/ (function(module, exports, __webpack_require__) {
       
 46764 
       
 46765 "use strict";
       
 46766 
       
 46767 
       
 46768 Object.defineProperty(exports, "__esModule", {
       
 46769   value: true
       
 46770 });
       
 46771 
       
 46772 var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
       
 46773 
       
 46774 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 46775 
       
 46776 var _object = __webpack_require__(92);
       
 46777 
       
 46778 var _object2 = _interopRequireDefault(_object);
       
 46779 
       
 46780 var _react = __webpack_require__(13);
       
 46781 
       
 46782 var _react2 = _interopRequireDefault(_react);
       
 46783 
       
 46784 var _propTypes = __webpack_require__(28);
       
 46785 
       
 46786 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 46787 
       
 46788 var _reactMomentProptypes = __webpack_require__(141);
       
 46789 
       
 46790 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 46791 
       
 46792 var _airbnbPropTypes = __webpack_require__(85);
       
 46793 
       
 46794 var _moment = __webpack_require__(43);
       
 46795 
       
 46796 var _moment2 = _interopRequireDefault(_moment);
       
 46797 
       
 46798 var _object3 = __webpack_require__(228);
       
 46799 
       
 46800 var _object4 = _interopRequireDefault(_object3);
       
 46801 
       
 46802 var _isTouchDevice = __webpack_require__(238);
       
 46803 
       
 46804 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
 46805 
       
 46806 var _defaultPhrases = __webpack_require__(107);
       
 46807 
       
 46808 var _getPhrasePropTypes = __webpack_require__(108);
       
 46809 
       
 46810 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 46811 
       
 46812 var _isSameDay = __webpack_require__(190);
       
 46813 
       
 46814 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
 46815 
       
 46816 var _isAfterDay = __webpack_require__(239);
       
 46817 
       
 46818 var _isAfterDay2 = _interopRequireDefault(_isAfterDay);
       
 46819 
       
 46820 var _getVisibleDays = __webpack_require__(367);
       
 46821 
       
 46822 var _getVisibleDays2 = _interopRequireDefault(_getVisibleDays);
       
 46823 
       
 46824 var _isDayVisible = __webpack_require__(242);
       
 46825 
       
 46826 var _isDayVisible2 = _interopRequireDefault(_isDayVisible);
       
 46827 
       
 46828 var _toISODateString = __webpack_require__(243);
       
 46829 
       
 46830 var _toISODateString2 = _interopRequireDefault(_toISODateString);
       
 46831 
       
 46832 var _toISOMonthString = __webpack_require__(191);
       
 46833 
       
 46834 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
 46835 
       
 46836 var _ScrollableOrientationShape = __webpack_require__(142);
       
 46837 
       
 46838 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 46839 
       
 46840 var _DayOfWeekShape = __webpack_require__(156);
       
 46841 
       
 46842 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 46843 
       
 46844 var _CalendarInfoPositionShape = __webpack_require__(244);
       
 46845 
       
 46846 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
 46847 
       
 46848 var _constants = __webpack_require__(77);
       
 46849 
       
 46850 var _DayPicker = __webpack_require__(368);
       
 46851 
       
 46852 var _DayPicker2 = _interopRequireDefault(_DayPicker);
       
 46853 
       
 46854 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 46855 
       
 46856 function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
       
 46857 
       
 46858 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 46859 
       
 46860 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 46861 
       
 46862 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 46863 
       
 46864 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 46865   date: _reactMomentProptypes2['default'].momentObj,
       
 46866   onDateChange: _propTypes2['default'].func,
       
 46867 
       
 46868   focused: _propTypes2['default'].bool,
       
 46869   onFocusChange: _propTypes2['default'].func,
       
 46870   onClose: _propTypes2['default'].func,
       
 46871 
       
 46872   keepOpenOnDateSelect: _propTypes2['default'].bool,
       
 46873   isOutsideRange: _propTypes2['default'].func,
       
 46874   isDayBlocked: _propTypes2['default'].func,
       
 46875   isDayHighlighted: _propTypes2['default'].func,
       
 46876 
       
 46877   // DayPicker props
       
 46878   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 46879   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 46880   enableOutsideDays: _propTypes2['default'].bool,
       
 46881   numberOfMonths: _propTypes2['default'].number,
       
 46882   orientation: _ScrollableOrientationShape2['default'],
       
 46883   withPortal: _propTypes2['default'].bool,
       
 46884   initialVisibleMonth: _propTypes2['default'].func,
       
 46885   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 46886   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 46887   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 46888   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
 46889   noBorder: _propTypes2['default'].bool,
       
 46890   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 46891   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
 46892   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 46893 
       
 46894   navPrev: _propTypes2['default'].node,
       
 46895   navNext: _propTypes2['default'].node,
       
 46896 
       
 46897   onPrevMonthClick: _propTypes2['default'].func,
       
 46898   onNextMonthClick: _propTypes2['default'].func,
       
 46899   onOutsideClick: _propTypes2['default'].func,
       
 46900   renderCalendarDay: _propTypes2['default'].func,
       
 46901   renderDayContents: _propTypes2['default'].func,
       
 46902   renderCalendarInfo: _propTypes2['default'].func,
       
 46903   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
 46904 
       
 46905   // accessibility
       
 46906   onBlur: _propTypes2['default'].func,
       
 46907   isFocused: _propTypes2['default'].bool,
       
 46908   showKeyboardShortcuts: _propTypes2['default'].bool,
       
 46909 
       
 46910   // i18n
       
 46911   monthFormat: _propTypes2['default'].string,
       
 46912   weekDayFormat: _propTypes2['default'].string,
       
 46913   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerPhrases)),
       
 46914   dayAriaLabelFormat: _propTypes2['default'].string,
       
 46915 
       
 46916   isRTL: _propTypes2['default'].bool
       
 46917 });
       
 46918 
       
 46919 var defaultProps = {
       
 46920   date: undefined, // TODO: use null
       
 46921   onDateChange: function () {
       
 46922     function onDateChange() {}
       
 46923 
       
 46924     return onDateChange;
       
 46925   }(),
       
 46926 
       
 46927 
       
 46928   focused: false,
       
 46929   onFocusChange: function () {
       
 46930     function onFocusChange() {}
       
 46931 
       
 46932     return onFocusChange;
       
 46933   }(),
       
 46934   onClose: function () {
       
 46935     function onClose() {}
       
 46936 
       
 46937     return onClose;
       
 46938   }(),
       
 46939 
       
 46940 
       
 46941   keepOpenOnDateSelect: false,
       
 46942   isOutsideRange: function () {
       
 46943     function isOutsideRange() {}
       
 46944 
       
 46945     return isOutsideRange;
       
 46946   }(),
       
 46947   isDayBlocked: function () {
       
 46948     function isDayBlocked() {}
       
 46949 
       
 46950     return isDayBlocked;
       
 46951   }(),
       
 46952   isDayHighlighted: function () {
       
 46953     function isDayHighlighted() {}
       
 46954 
       
 46955     return isDayHighlighted;
       
 46956   }(),
       
 46957 
       
 46958 
       
 46959   // DayPicker props
       
 46960   renderMonthText: null,
       
 46961   enableOutsideDays: false,
       
 46962   numberOfMonths: 1,
       
 46963   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 46964   withPortal: false,
       
 46965   hideKeyboardShortcutsPanel: false,
       
 46966   initialVisibleMonth: null,
       
 46967   firstDayOfWeek: null,
       
 46968   daySize: _constants.DAY_SIZE,
       
 46969   verticalHeight: null,
       
 46970   noBorder: false,
       
 46971   verticalBorderSpacing: undefined,
       
 46972   transitionDuration: undefined,
       
 46973   horizontalMonthPadding: 13,
       
 46974 
       
 46975   navPrev: null,
       
 46976   navNext: null,
       
 46977 
       
 46978   onPrevMonthClick: function () {
       
 46979     function onPrevMonthClick() {}
       
 46980 
       
 46981     return onPrevMonthClick;
       
 46982   }(),
       
 46983   onNextMonthClick: function () {
       
 46984     function onNextMonthClick() {}
       
 46985 
       
 46986     return onNextMonthClick;
       
 46987   }(),
       
 46988   onOutsideClick: function () {
       
 46989     function onOutsideClick() {}
       
 46990 
       
 46991     return onOutsideClick;
       
 46992   }(),
       
 46993 
       
 46994 
       
 46995   renderCalendarDay: undefined,
       
 46996   renderDayContents: null,
       
 46997   renderCalendarInfo: null,
       
 46998   renderMonthElement: null,
       
 46999   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
       
 47000 
       
 47001   // accessibility
       
 47002   onBlur: function () {
       
 47003     function onBlur() {}
       
 47004 
       
 47005     return onBlur;
       
 47006   }(),
       
 47007 
       
 47008   isFocused: false,
       
 47009   showKeyboardShortcuts: false,
       
 47010 
       
 47011   // i18n
       
 47012   monthFormat: 'MMMM YYYY',
       
 47013   weekDayFormat: 'dd',
       
 47014   phrases: _defaultPhrases.DayPickerPhrases,
       
 47015   dayAriaLabelFormat: undefined,
       
 47016 
       
 47017   isRTL: false
       
 47018 };
       
 47019 
       
 47020 var DayPickerSingleDateController = function (_React$Component) {
       
 47021   _inherits(DayPickerSingleDateController, _React$Component);
       
 47022 
       
 47023   function DayPickerSingleDateController(props) {
       
 47024     _classCallCheck(this, DayPickerSingleDateController);
       
 47025 
       
 47026     var _this = _possibleConstructorReturn(this, (DayPickerSingleDateController.__proto__ || Object.getPrototypeOf(DayPickerSingleDateController)).call(this, props));
       
 47027 
       
 47028     _this.isTouchDevice = false;
       
 47029     _this.today = (0, _moment2['default'])();
       
 47030 
       
 47031     _this.modifiers = {
       
 47032       today: function () {
       
 47033         function today(day) {
       
 47034           return _this.isToday(day);
       
 47035         }
       
 47036 
       
 47037         return today;
       
 47038       }(),
       
 47039       blocked: function () {
       
 47040         function blocked(day) {
       
 47041           return _this.isBlocked(day);
       
 47042         }
       
 47043 
       
 47044         return blocked;
       
 47045       }(),
       
 47046       'blocked-calendar': function () {
       
 47047         function blockedCalendar(day) {
       
 47048           return props.isDayBlocked(day);
       
 47049         }
       
 47050 
       
 47051         return blockedCalendar;
       
 47052       }(),
       
 47053       'blocked-out-of-range': function () {
       
 47054         function blockedOutOfRange(day) {
       
 47055           return props.isOutsideRange(day);
       
 47056         }
       
 47057 
       
 47058         return blockedOutOfRange;
       
 47059       }(),
       
 47060       'highlighted-calendar': function () {
       
 47061         function highlightedCalendar(day) {
       
 47062           return props.isDayHighlighted(day);
       
 47063         }
       
 47064 
       
 47065         return highlightedCalendar;
       
 47066       }(),
       
 47067       valid: function () {
       
 47068         function valid(day) {
       
 47069           return !_this.isBlocked(day);
       
 47070         }
       
 47071 
       
 47072         return valid;
       
 47073       }(),
       
 47074       hovered: function () {
       
 47075         function hovered(day) {
       
 47076           return _this.isHovered(day);
       
 47077         }
       
 47078 
       
 47079         return hovered;
       
 47080       }(),
       
 47081       selected: function () {
       
 47082         function selected(day) {
       
 47083           return _this.isSelected(day);
       
 47084         }
       
 47085 
       
 47086         return selected;
       
 47087       }(),
       
 47088       'first-day-of-week': function () {
       
 47089         function firstDayOfWeek(day) {
       
 47090           return _this.isFirstDayOfWeek(day);
       
 47091         }
       
 47092 
       
 47093         return firstDayOfWeek;
       
 47094       }(),
       
 47095       'last-day-of-week': function () {
       
 47096         function lastDayOfWeek(day) {
       
 47097           return _this.isLastDayOfWeek(day);
       
 47098         }
       
 47099 
       
 47100         return lastDayOfWeek;
       
 47101       }()
       
 47102     };
       
 47103 
       
 47104     var _this$getStateForNewM = _this.getStateForNewMonth(props),
       
 47105         currentMonth = _this$getStateForNewM.currentMonth,
       
 47106         visibleDays = _this$getStateForNewM.visibleDays;
       
 47107 
       
 47108     _this.state = {
       
 47109       hoverDate: null,
       
 47110       currentMonth: currentMonth,
       
 47111       visibleDays: visibleDays
       
 47112     };
       
 47113 
       
 47114     _this.onDayMouseEnter = _this.onDayMouseEnter.bind(_this);
       
 47115     _this.onDayMouseLeave = _this.onDayMouseLeave.bind(_this);
       
 47116     _this.onDayClick = _this.onDayClick.bind(_this);
       
 47117 
       
 47118     _this.onPrevMonthClick = _this.onPrevMonthClick.bind(_this);
       
 47119     _this.onNextMonthClick = _this.onNextMonthClick.bind(_this);
       
 47120     _this.onMonthChange = _this.onMonthChange.bind(_this);
       
 47121     _this.onYearChange = _this.onYearChange.bind(_this);
       
 47122 
       
 47123     _this.getFirstFocusableDay = _this.getFirstFocusableDay.bind(_this);
       
 47124     return _this;
       
 47125   }
       
 47126 
       
 47127   _createClass(DayPickerSingleDateController, [{
       
 47128     key: 'componentDidMount',
       
 47129     value: function () {
       
 47130       function componentDidMount() {
       
 47131         this.isTouchDevice = (0, _isTouchDevice2['default'])();
       
 47132       }
       
 47133 
       
 47134       return componentDidMount;
       
 47135     }()
       
 47136   }, {
       
 47137     key: 'componentWillReceiveProps',
       
 47138     value: function () {
       
 47139       function componentWillReceiveProps(nextProps) {
       
 47140         var _this2 = this;
       
 47141 
       
 47142         var date = nextProps.date,
       
 47143             focused = nextProps.focused,
       
 47144             isOutsideRange = nextProps.isOutsideRange,
       
 47145             isDayBlocked = nextProps.isDayBlocked,
       
 47146             isDayHighlighted = nextProps.isDayHighlighted,
       
 47147             initialVisibleMonth = nextProps.initialVisibleMonth,
       
 47148             numberOfMonths = nextProps.numberOfMonths,
       
 47149             enableOutsideDays = nextProps.enableOutsideDays;
       
 47150         var _props = this.props,
       
 47151             prevIsOutsideRange = _props.isOutsideRange,
       
 47152             prevIsDayBlocked = _props.isDayBlocked,
       
 47153             prevIsDayHighlighted = _props.isDayHighlighted,
       
 47154             prevNumberOfMonths = _props.numberOfMonths,
       
 47155             prevEnableOutsideDays = _props.enableOutsideDays,
       
 47156             prevInitialVisibleMonth = _props.initialVisibleMonth,
       
 47157             prevFocused = _props.focused,
       
 47158             prevDate = _props.date;
       
 47159         var visibleDays = this.state.visibleDays;
       
 47160 
       
 47161 
       
 47162         var recomputeOutsideRange = false;
       
 47163         var recomputeDayBlocked = false;
       
 47164         var recomputeDayHighlighted = false;
       
 47165 
       
 47166         if (isOutsideRange !== prevIsOutsideRange) {
       
 47167           this.modifiers['blocked-out-of-range'] = function (day) {
       
 47168             return isOutsideRange(day);
       
 47169           };
       
 47170           recomputeOutsideRange = true;
       
 47171         }
       
 47172 
       
 47173         if (isDayBlocked !== prevIsDayBlocked) {
       
 47174           this.modifiers['blocked-calendar'] = function (day) {
       
 47175             return isDayBlocked(day);
       
 47176           };
       
 47177           recomputeDayBlocked = true;
       
 47178         }
       
 47179 
       
 47180         if (isDayHighlighted !== prevIsDayHighlighted) {
       
 47181           this.modifiers['highlighted-calendar'] = function (day) {
       
 47182             return isDayHighlighted(day);
       
 47183           };
       
 47184           recomputeDayHighlighted = true;
       
 47185         }
       
 47186 
       
 47187         var recomputePropModifiers = recomputeOutsideRange || recomputeDayBlocked || recomputeDayHighlighted;
       
 47188 
       
 47189         if (numberOfMonths !== prevNumberOfMonths || enableOutsideDays !== prevEnableOutsideDays || initialVisibleMonth !== prevInitialVisibleMonth && !prevFocused && focused) {
       
 47190           var newMonthState = this.getStateForNewMonth(nextProps);
       
 47191           var currentMonth = newMonthState.currentMonth;
       
 47192           visibleDays = newMonthState.visibleDays;
       
 47193 
       
 47194           this.setState({
       
 47195             currentMonth: currentMonth,
       
 47196             visibleDays: visibleDays
 37309           });
 47197           });
 37310         }
 47198         }
 37311         /**
 47199 
 37312         * Function passed as a prop that adds a new error notice.
 47200         var didDateChange = date !== prevDate;
 37313         *
 47201         var didFocusChange = focused !== prevFocused;
 37314         * @param {string} msg  Error message of the notice.
 47202 
 37315         */
 47203         var modifiers = {};
 37316 
 47204 
 37317       }, {
 47205         if (didDateChange) {
 37318         key: "createErrorNotice",
 47206           modifiers = this.deleteModifier(modifiers, prevDate, 'selected');
 37319         value: function createErrorNotice(msg) {
 47207           modifiers = this.addModifier(modifiers, date, 'selected');
 37320           this.createNotice({
 47208         }
 37321             status: 'error',
 47209 
 37322             content: msg
 47210         if (didFocusChange || recomputePropModifiers) {
       
 47211           (0, _object4['default'])(visibleDays).forEach(function (days) {
       
 47212             Object.keys(days).forEach(function (day) {
       
 47213               var momentObj = (0, _moment2['default'])(day);
       
 47214               if (_this2.isBlocked(momentObj)) {
       
 47215                 modifiers = _this2.addModifier(modifiers, momentObj, 'blocked');
       
 47216               } else {
       
 47217                 modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked');
       
 47218               }
       
 47219 
       
 47220               if (didFocusChange || recomputeOutsideRange) {
       
 47221                 if (isOutsideRange(momentObj)) {
       
 47222                   modifiers = _this2.addModifier(modifiers, momentObj, 'blocked-out-of-range');
       
 47223                 } else {
       
 47224                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked-out-of-range');
       
 47225                 }
       
 47226               }
       
 47227 
       
 47228               if (didFocusChange || recomputeDayBlocked) {
       
 47229                 if (isDayBlocked(momentObj)) {
       
 47230                   modifiers = _this2.addModifier(modifiers, momentObj, 'blocked-calendar');
       
 47231                 } else {
       
 47232                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'blocked-calendar');
       
 47233                 }
       
 47234               }
       
 47235 
       
 47236               if (didFocusChange || recomputeDayHighlighted) {
       
 47237                 if (isDayHighlighted(momentObj)) {
       
 47238                   modifiers = _this2.addModifier(modifiers, momentObj, 'highlighted-calendar');
       
 47239                 } else {
       
 47240                   modifiers = _this2.deleteModifier(modifiers, momentObj, 'highlighted-calendar');
       
 47241                 }
       
 47242               }
       
 47243             });
 37323           });
 47244           });
 37324         }
 47245         }
 37325         /**
 47246 
 37326         * Removes a notice by id.
 47247         var today = (0, _moment2['default'])();
 37327         *
 47248         if (!(0, _isSameDay2['default'])(this.today, today)) {
 37328         * @param {string} id  Id of the notice to remove.
 47249           modifiers = this.deleteModifier(modifiers, this.today, 'today');
 37329         */
 47250           modifiers = this.addModifier(modifiers, today, 'today');
 37330 
 47251           this.today = today;
 37331       }, {
 47252         }
 37332         key: "removeNotice",
 47253 
 37333         value: function removeNotice(id) {
 47254         if (Object.keys(modifiers).length > 0) {
 37334           this.setState(function (state) {
 47255           this.setState({
 37335             return {
 47256             visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
 37336               noticeList: state.noticeList.filter(function (notice) {
       
 37337                 return notice.id !== id;
       
 37338               })
       
 37339             };
       
 37340           });
 47257           });
 37341         }
 47258         }
 37342         /**
 47259       }
 37343         * Removes all notices
 47260 
 37344         */
 47261       return componentWillReceiveProps;
 37345 
 47262     }()
 37346       }, {
 47263   }, {
 37347         key: "removeAllNotices",
 47264     key: 'componentWillUpdate',
 37348         value: function removeAllNotices() {
 47265     value: function () {
       
 47266       function componentWillUpdate() {
       
 47267         this.today = (0, _moment2['default'])();
       
 47268       }
       
 47269 
       
 47270       return componentWillUpdate;
       
 47271     }()
       
 47272   }, {
       
 47273     key: 'onDayClick',
       
 47274     value: function () {
       
 47275       function onDayClick(day, e) {
       
 47276         if (e) e.preventDefault();
       
 47277         if (this.isBlocked(day)) return;
       
 47278         var _props2 = this.props,
       
 47279             onDateChange = _props2.onDateChange,
       
 47280             keepOpenOnDateSelect = _props2.keepOpenOnDateSelect,
       
 47281             onFocusChange = _props2.onFocusChange,
       
 47282             onClose = _props2.onClose;
       
 47283 
       
 47284 
       
 47285         onDateChange(day);
       
 47286         if (!keepOpenOnDateSelect) {
       
 47287           onFocusChange({ focused: false });
       
 47288           onClose({ date: day });
       
 47289         }
       
 47290       }
       
 47291 
       
 47292       return onDayClick;
       
 47293     }()
       
 47294   }, {
       
 47295     key: 'onDayMouseEnter',
       
 47296     value: function () {
       
 47297       function onDayMouseEnter(day) {
       
 47298         if (this.isTouchDevice) return;
       
 47299         var _state = this.state,
       
 47300             hoverDate = _state.hoverDate,
       
 47301             visibleDays = _state.visibleDays;
       
 47302 
       
 47303 
       
 47304         var modifiers = this.deleteModifier({}, hoverDate, 'hovered');
       
 47305         modifiers = this.addModifier(modifiers, day, 'hovered');
       
 47306 
       
 47307         this.setState({
       
 47308           hoverDate: day,
       
 47309           visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 47310         });
       
 47311       }
       
 47312 
       
 47313       return onDayMouseEnter;
       
 47314     }()
       
 47315   }, {
       
 47316     key: 'onDayMouseLeave',
       
 47317     value: function () {
       
 47318       function onDayMouseLeave() {
       
 47319         var _state2 = this.state,
       
 47320             hoverDate = _state2.hoverDate,
       
 47321             visibleDays = _state2.visibleDays;
       
 47322 
       
 47323         if (this.isTouchDevice || !hoverDate) return;
       
 47324 
       
 47325         var modifiers = this.deleteModifier({}, hoverDate, 'hovered');
       
 47326 
       
 47327         this.setState({
       
 47328           hoverDate: null,
       
 47329           visibleDays: (0, _object2['default'])({}, visibleDays, modifiers)
       
 47330         });
       
 47331       }
       
 47332 
       
 47333       return onDayMouseLeave;
       
 47334     }()
       
 47335   }, {
       
 47336     key: 'onPrevMonthClick',
       
 47337     value: function () {
       
 47338       function onPrevMonthClick() {
       
 47339         var _props3 = this.props,
       
 47340             onPrevMonthClick = _props3.onPrevMonthClick,
       
 47341             numberOfMonths = _props3.numberOfMonths,
       
 47342             enableOutsideDays = _props3.enableOutsideDays;
       
 47343         var _state3 = this.state,
       
 47344             currentMonth = _state3.currentMonth,
       
 47345             visibleDays = _state3.visibleDays;
       
 47346 
       
 47347 
       
 47348         var newVisibleDays = {};
       
 47349         Object.keys(visibleDays).sort().slice(0, numberOfMonths + 1).forEach(function (month) {
       
 47350           newVisibleDays[month] = visibleDays[month];
       
 47351         });
       
 47352 
       
 47353         var prevMonth = currentMonth.clone().subtract(1, 'month');
       
 47354         var prevMonthVisibleDays = (0, _getVisibleDays2['default'])(prevMonth, 1, enableOutsideDays);
       
 47355 
       
 47356         this.setState({
       
 47357           currentMonth: prevMonth,
       
 47358           visibleDays: (0, _object2['default'])({}, newVisibleDays, this.getModifiers(prevMonthVisibleDays))
       
 47359         }, function () {
       
 47360           onPrevMonthClick(prevMonth.clone());
       
 47361         });
       
 47362       }
       
 47363 
       
 47364       return onPrevMonthClick;
       
 47365     }()
       
 47366   }, {
       
 47367     key: 'onNextMonthClick',
       
 47368     value: function () {
       
 47369       function onNextMonthClick() {
       
 47370         var _props4 = this.props,
       
 47371             onNextMonthClick = _props4.onNextMonthClick,
       
 47372             numberOfMonths = _props4.numberOfMonths,
       
 47373             enableOutsideDays = _props4.enableOutsideDays;
       
 47374         var _state4 = this.state,
       
 47375             currentMonth = _state4.currentMonth,
       
 47376             visibleDays = _state4.visibleDays;
       
 47377 
       
 47378 
       
 47379         var newVisibleDays = {};
       
 47380         Object.keys(visibleDays).sort().slice(1).forEach(function (month) {
       
 47381           newVisibleDays[month] = visibleDays[month];
       
 47382         });
       
 47383 
       
 47384         var nextMonth = currentMonth.clone().add(numberOfMonths, 'month');
       
 47385         var nextMonthVisibleDays = (0, _getVisibleDays2['default'])(nextMonth, 1, enableOutsideDays);
       
 47386 
       
 47387         var newCurrentMonth = currentMonth.clone().add(1, 'month');
       
 47388         this.setState({
       
 47389           currentMonth: newCurrentMonth,
       
 47390           visibleDays: (0, _object2['default'])({}, newVisibleDays, this.getModifiers(nextMonthVisibleDays))
       
 47391         }, function () {
       
 47392           onNextMonthClick(newCurrentMonth.clone());
       
 47393         });
       
 47394       }
       
 47395 
       
 47396       return onNextMonthClick;
       
 47397     }()
       
 47398   }, {
       
 47399     key: 'onMonthChange',
       
 47400     value: function () {
       
 47401       function onMonthChange(newMonth) {
       
 47402         var _props5 = this.props,
       
 47403             numberOfMonths = _props5.numberOfMonths,
       
 47404             enableOutsideDays = _props5.enableOutsideDays,
       
 47405             orientation = _props5.orientation;
       
 47406 
       
 47407         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 47408         var newVisibleDays = (0, _getVisibleDays2['default'])(newMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths);
       
 47409 
       
 47410         this.setState({
       
 47411           currentMonth: newMonth.clone(),
       
 47412           visibleDays: this.getModifiers(newVisibleDays)
       
 47413         });
       
 47414       }
       
 47415 
       
 47416       return onMonthChange;
       
 47417     }()
       
 47418   }, {
       
 47419     key: 'onYearChange',
       
 47420     value: function () {
       
 47421       function onYearChange(newMonth) {
       
 47422         var _props6 = this.props,
       
 47423             numberOfMonths = _props6.numberOfMonths,
       
 47424             enableOutsideDays = _props6.enableOutsideDays,
       
 47425             orientation = _props6.orientation;
       
 47426 
       
 47427         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 47428         var newVisibleDays = (0, _getVisibleDays2['default'])(newMonth, numberOfMonths, enableOutsideDays, withoutTransitionMonths);
       
 47429 
       
 47430         this.setState({
       
 47431           currentMonth: newMonth.clone(),
       
 47432           visibleDays: this.getModifiers(newVisibleDays)
       
 47433         });
       
 47434       }
       
 47435 
       
 47436       return onYearChange;
       
 47437     }()
       
 47438   }, {
       
 47439     key: 'getFirstFocusableDay',
       
 47440     value: function () {
       
 47441       function getFirstFocusableDay(newMonth) {
       
 47442         var _this3 = this;
       
 47443 
       
 47444         var _props7 = this.props,
       
 47445             date = _props7.date,
       
 47446             numberOfMonths = _props7.numberOfMonths;
       
 47447 
       
 47448 
       
 47449         var focusedDate = newMonth.clone().startOf('month');
       
 47450         if (date) {
       
 47451           focusedDate = date.clone();
       
 47452         }
       
 47453 
       
 47454         if (this.isBlocked(focusedDate)) {
       
 47455           var days = [];
       
 47456           var lastVisibleDay = newMonth.clone().add(numberOfMonths - 1, 'months').endOf('month');
       
 47457           var currentDay = focusedDate.clone();
       
 47458           while (!(0, _isAfterDay2['default'])(currentDay, lastVisibleDay)) {
       
 47459             currentDay = currentDay.clone().add(1, 'day');
       
 47460             days.push(currentDay);
       
 47461           }
       
 47462 
       
 47463           var viableDays = days.filter(function (day) {
       
 47464             return !_this3.isBlocked(day) && (0, _isAfterDay2['default'])(day, focusedDate);
       
 47465           });
       
 47466           if (viableDays.length > 0) {
       
 47467             var _viableDays = _slicedToArray(viableDays, 1);
       
 47468 
       
 47469             focusedDate = _viableDays[0];
       
 47470           }
       
 47471         }
       
 47472 
       
 47473         return focusedDate;
       
 47474       }
       
 47475 
       
 47476       return getFirstFocusableDay;
       
 47477     }()
       
 47478   }, {
       
 47479     key: 'getModifiers',
       
 47480     value: function () {
       
 47481       function getModifiers(visibleDays) {
       
 47482         var _this4 = this;
       
 47483 
       
 47484         var modifiers = {};
       
 47485         Object.keys(visibleDays).forEach(function (month) {
       
 47486           modifiers[month] = {};
       
 47487           visibleDays[month].forEach(function (day) {
       
 47488             modifiers[month][(0, _toISODateString2['default'])(day)] = _this4.getModifiersForDay(day);
       
 47489           });
       
 47490         });
       
 47491 
       
 47492         return modifiers;
       
 47493       }
       
 47494 
       
 47495       return getModifiers;
       
 47496     }()
       
 47497   }, {
       
 47498     key: 'getModifiersForDay',
       
 47499     value: function () {
       
 47500       function getModifiersForDay(day) {
       
 47501         var _this5 = this;
       
 47502 
       
 47503         return new Set(Object.keys(this.modifiers).filter(function (modifier) {
       
 47504           return _this5.modifiers[modifier](day);
       
 47505         }));
       
 47506       }
       
 47507 
       
 47508       return getModifiersForDay;
       
 47509     }()
       
 47510   }, {
       
 47511     key: 'getStateForNewMonth',
       
 47512     value: function () {
       
 47513       function getStateForNewMonth(nextProps) {
       
 47514         var _this6 = this;
       
 47515 
       
 47516         var initialVisibleMonth = nextProps.initialVisibleMonth,
       
 47517             date = nextProps.date,
       
 47518             numberOfMonths = nextProps.numberOfMonths,
       
 47519             enableOutsideDays = nextProps.enableOutsideDays;
       
 47520 
       
 47521         var initialVisibleMonthThunk = initialVisibleMonth || (date ? function () {
       
 47522           return date;
       
 47523         } : function () {
       
 47524           return _this6.today;
       
 47525         });
       
 47526         var currentMonth = initialVisibleMonthThunk();
       
 47527         var visibleDays = this.getModifiers((0, _getVisibleDays2['default'])(currentMonth, numberOfMonths, enableOutsideDays));
       
 47528         return { currentMonth: currentMonth, visibleDays: visibleDays };
       
 47529       }
       
 47530 
       
 47531       return getStateForNewMonth;
       
 47532     }()
       
 47533   }, {
       
 47534     key: 'addModifier',
       
 47535     value: function () {
       
 47536       function addModifier(updatedDays, day, modifier) {
       
 47537         var _props8 = this.props,
       
 47538             numberOfVisibleMonths = _props8.numberOfMonths,
       
 47539             enableOutsideDays = _props8.enableOutsideDays,
       
 47540             orientation = _props8.orientation;
       
 47541         var _state5 = this.state,
       
 47542             firstVisibleMonth = _state5.currentMonth,
       
 47543             visibleDays = _state5.visibleDays;
       
 47544 
       
 47545 
       
 47546         var currentMonth = firstVisibleMonth;
       
 47547         var numberOfMonths = numberOfVisibleMonths;
       
 47548         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 47549           numberOfMonths = Object.keys(visibleDays).length;
       
 47550         } else {
       
 47551           currentMonth = currentMonth.clone().subtract(1, 'month');
       
 47552           numberOfMonths += 2;
       
 47553         }
       
 47554         if (!day || !(0, _isDayVisible2['default'])(day, currentMonth, numberOfMonths, enableOutsideDays)) {
       
 47555           return updatedDays;
       
 47556         }
       
 47557 
       
 47558         var iso = (0, _toISODateString2['default'])(day);
       
 47559 
       
 47560         var updatedDaysAfterAddition = (0, _object2['default'])({}, updatedDays);
       
 47561         if (enableOutsideDays) {
       
 47562           var monthsToUpdate = Object.keys(visibleDays).filter(function (monthKey) {
       
 47563             return Object.keys(visibleDays[monthKey]).indexOf(iso) > -1;
       
 47564           });
       
 47565 
       
 47566           updatedDaysAfterAddition = monthsToUpdate.reduce(function (days, monthIso) {
       
 47567             var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 47568             var modifiers = new Set(month[iso]);
       
 47569             modifiers.add(modifier);
       
 47570             return (0, _object2['default'])({}, days, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 47571           }, updatedDaysAfterAddition);
       
 47572         } else {
       
 47573           var monthIso = (0, _toISOMonthString2['default'])(day);
       
 47574           var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 47575 
       
 47576           var modifiers = new Set(month[iso]);
       
 47577           modifiers.add(modifier);
       
 47578           updatedDaysAfterAddition = (0, _object2['default'])({}, updatedDaysAfterAddition, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 47579         }
       
 47580 
       
 47581         return updatedDaysAfterAddition;
       
 47582       }
       
 47583 
       
 47584       return addModifier;
       
 47585     }()
       
 47586   }, {
       
 47587     key: 'deleteModifier',
       
 47588     value: function () {
       
 47589       function deleteModifier(updatedDays, day, modifier) {
       
 47590         var _props9 = this.props,
       
 47591             numberOfVisibleMonths = _props9.numberOfMonths,
       
 47592             enableOutsideDays = _props9.enableOutsideDays,
       
 47593             orientation = _props9.orientation;
       
 47594         var _state6 = this.state,
       
 47595             firstVisibleMonth = _state6.currentMonth,
       
 47596             visibleDays = _state6.visibleDays;
       
 47597 
       
 47598 
       
 47599         var currentMonth = firstVisibleMonth;
       
 47600         var numberOfMonths = numberOfVisibleMonths;
       
 47601         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 47602           numberOfMonths = Object.keys(visibleDays).length;
       
 47603         } else {
       
 47604           currentMonth = currentMonth.clone().subtract(1, 'month');
       
 47605           numberOfMonths += 2;
       
 47606         }
       
 47607         if (!day || !(0, _isDayVisible2['default'])(day, currentMonth, numberOfMonths, enableOutsideDays)) {
       
 47608           return updatedDays;
       
 47609         }
       
 47610 
       
 47611         var iso = (0, _toISODateString2['default'])(day);
       
 47612 
       
 47613         var updatedDaysAfterDeletion = (0, _object2['default'])({}, updatedDays);
       
 47614         if (enableOutsideDays) {
       
 47615           var monthsToUpdate = Object.keys(visibleDays).filter(function (monthKey) {
       
 47616             return Object.keys(visibleDays[monthKey]).indexOf(iso) > -1;
       
 47617           });
       
 47618 
       
 47619           updatedDaysAfterDeletion = monthsToUpdate.reduce(function (days, monthIso) {
       
 47620             var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 47621             var modifiers = new Set(month[iso]);
       
 47622             modifiers['delete'](modifier);
       
 47623             return (0, _object2['default'])({}, days, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 47624           }, updatedDaysAfterDeletion);
       
 47625         } else {
       
 47626           var monthIso = (0, _toISOMonthString2['default'])(day);
       
 47627           var month = updatedDays[monthIso] || visibleDays[monthIso];
       
 47628 
       
 47629           var modifiers = new Set(month[iso]);
       
 47630           modifiers['delete'](modifier);
       
 47631           updatedDaysAfterDeletion = (0, _object2['default'])({}, updatedDaysAfterDeletion, _defineProperty({}, monthIso, (0, _object2['default'])({}, month, _defineProperty({}, iso, modifiers))));
       
 47632         }
       
 47633 
       
 47634         return updatedDaysAfterDeletion;
       
 47635       }
       
 47636 
       
 47637       return deleteModifier;
       
 47638     }()
       
 47639   }, {
       
 47640     key: 'isBlocked',
       
 47641     value: function () {
       
 47642       function isBlocked(day) {
       
 47643         var _props10 = this.props,
       
 47644             isDayBlocked = _props10.isDayBlocked,
       
 47645             isOutsideRange = _props10.isOutsideRange;
       
 47646 
       
 47647         return isDayBlocked(day) || isOutsideRange(day);
       
 47648       }
       
 47649 
       
 47650       return isBlocked;
       
 47651     }()
       
 47652   }, {
       
 47653     key: 'isHovered',
       
 47654     value: function () {
       
 47655       function isHovered(day) {
       
 47656         var _ref = this.state || {},
       
 47657             hoverDate = _ref.hoverDate;
       
 47658 
       
 47659         return (0, _isSameDay2['default'])(day, hoverDate);
       
 47660       }
       
 47661 
       
 47662       return isHovered;
       
 47663     }()
       
 47664   }, {
       
 47665     key: 'isSelected',
       
 47666     value: function () {
       
 47667       function isSelected(day) {
       
 47668         var date = this.props.date;
       
 47669 
       
 47670         return (0, _isSameDay2['default'])(day, date);
       
 47671       }
       
 47672 
       
 47673       return isSelected;
       
 47674     }()
       
 47675   }, {
       
 47676     key: 'isToday',
       
 47677     value: function () {
       
 47678       function isToday(day) {
       
 47679         return (0, _isSameDay2['default'])(day, this.today);
       
 47680       }
       
 47681 
       
 47682       return isToday;
       
 47683     }()
       
 47684   }, {
       
 47685     key: 'isFirstDayOfWeek',
       
 47686     value: function () {
       
 47687       function isFirstDayOfWeek(day) {
       
 47688         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 47689 
       
 47690         return day.day() === (firstDayOfWeek || _moment2['default'].localeData().firstDayOfWeek());
       
 47691       }
       
 47692 
       
 47693       return isFirstDayOfWeek;
       
 47694     }()
       
 47695   }, {
       
 47696     key: 'isLastDayOfWeek',
       
 47697     value: function () {
       
 47698       function isLastDayOfWeek(day) {
       
 47699         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 47700 
       
 47701         return day.day() === ((firstDayOfWeek || _moment2['default'].localeData().firstDayOfWeek()) + 6) % 7;
       
 47702       }
       
 47703 
       
 47704       return isLastDayOfWeek;
       
 47705     }()
       
 47706   }, {
       
 47707     key: 'render',
       
 47708     value: function () {
       
 47709       function render() {
       
 47710         var _props11 = this.props,
       
 47711             numberOfMonths = _props11.numberOfMonths,
       
 47712             orientation = _props11.orientation,
       
 47713             monthFormat = _props11.monthFormat,
       
 47714             renderMonthText = _props11.renderMonthText,
       
 47715             navPrev = _props11.navPrev,
       
 47716             navNext = _props11.navNext,
       
 47717             onOutsideClick = _props11.onOutsideClick,
       
 47718             withPortal = _props11.withPortal,
       
 47719             focused = _props11.focused,
       
 47720             enableOutsideDays = _props11.enableOutsideDays,
       
 47721             hideKeyboardShortcutsPanel = _props11.hideKeyboardShortcutsPanel,
       
 47722             daySize = _props11.daySize,
       
 47723             firstDayOfWeek = _props11.firstDayOfWeek,
       
 47724             renderCalendarDay = _props11.renderCalendarDay,
       
 47725             renderDayContents = _props11.renderDayContents,
       
 47726             renderCalendarInfo = _props11.renderCalendarInfo,
       
 47727             renderMonthElement = _props11.renderMonthElement,
       
 47728             calendarInfoPosition = _props11.calendarInfoPosition,
       
 47729             isFocused = _props11.isFocused,
       
 47730             isRTL = _props11.isRTL,
       
 47731             phrases = _props11.phrases,
       
 47732             dayAriaLabelFormat = _props11.dayAriaLabelFormat,
       
 47733             onBlur = _props11.onBlur,
       
 47734             showKeyboardShortcuts = _props11.showKeyboardShortcuts,
       
 47735             weekDayFormat = _props11.weekDayFormat,
       
 47736             verticalHeight = _props11.verticalHeight,
       
 47737             noBorder = _props11.noBorder,
       
 47738             transitionDuration = _props11.transitionDuration,
       
 47739             verticalBorderSpacing = _props11.verticalBorderSpacing,
       
 47740             horizontalMonthPadding = _props11.horizontalMonthPadding;
       
 47741         var _state7 = this.state,
       
 47742             currentMonth = _state7.currentMonth,
       
 47743             visibleDays = _state7.visibleDays;
       
 47744 
       
 47745 
       
 47746         return _react2['default'].createElement(_DayPicker2['default'], {
       
 47747           orientation: orientation,
       
 47748           enableOutsideDays: enableOutsideDays,
       
 47749           modifiers: visibleDays,
       
 47750           numberOfMonths: numberOfMonths,
       
 47751           onDayClick: this.onDayClick,
       
 47752           onDayMouseEnter: this.onDayMouseEnter,
       
 47753           onDayMouseLeave: this.onDayMouseLeave,
       
 47754           onPrevMonthClick: this.onPrevMonthClick,
       
 47755           onNextMonthClick: this.onNextMonthClick,
       
 47756           onMonthChange: this.onMonthChange,
       
 47757           onYearChange: this.onYearChange,
       
 47758           monthFormat: monthFormat,
       
 47759           withPortal: withPortal,
       
 47760           hidden: !focused,
       
 47761           hideKeyboardShortcutsPanel: hideKeyboardShortcutsPanel,
       
 47762           initialVisibleMonth: function () {
       
 47763             function initialVisibleMonth() {
       
 47764               return currentMonth;
       
 47765             }
       
 47766 
       
 47767             return initialVisibleMonth;
       
 47768           }(),
       
 47769           firstDayOfWeek: firstDayOfWeek,
       
 47770           onOutsideClick: onOutsideClick,
       
 47771           navPrev: navPrev,
       
 47772           navNext: navNext,
       
 47773           renderMonthText: renderMonthText,
       
 47774           renderCalendarDay: renderCalendarDay,
       
 47775           renderDayContents: renderDayContents,
       
 47776           renderCalendarInfo: renderCalendarInfo,
       
 47777           renderMonthElement: renderMonthElement,
       
 47778           calendarInfoPosition: calendarInfoPosition,
       
 47779           isFocused: isFocused,
       
 47780           getFirstFocusableDay: this.getFirstFocusableDay,
       
 47781           onBlur: onBlur,
       
 47782           phrases: phrases,
       
 47783           daySize: daySize,
       
 47784           isRTL: isRTL,
       
 47785           showKeyboardShortcuts: showKeyboardShortcuts,
       
 47786           weekDayFormat: weekDayFormat,
       
 47787           dayAriaLabelFormat: dayAriaLabelFormat,
       
 47788           verticalHeight: verticalHeight,
       
 47789           noBorder: noBorder,
       
 47790           transitionDuration: transitionDuration,
       
 47791           verticalBorderSpacing: verticalBorderSpacing,
       
 47792           horizontalMonthPadding: horizontalMonthPadding
       
 47793         });
       
 47794       }
       
 47795 
       
 47796       return render;
       
 47797     }()
       
 47798   }]);
       
 47799 
       
 47800   return DayPickerSingleDateController;
       
 47801 }(_react2['default'].Component);
       
 47802 
       
 47803 exports['default'] = DayPickerSingleDateController;
       
 47804 
       
 47805 
       
 47806 DayPickerSingleDateController.propTypes = propTypes;
       
 47807 DayPickerSingleDateController.defaultProps = defaultProps;
       
 47808 
       
 47809 /***/ }),
       
 47810 /* 272 */,
       
 47811 /* 273 */,
       
 47812 /* 274 */,
       
 47813 /* 275 */,
       
 47814 /* 276 */,
       
 47815 /* 277 */,
       
 47816 /* 278 */,
       
 47817 /* 279 */,
       
 47818 /* 280 */,
       
 47819 /* 281 */,
       
 47820 /* 282 */,
       
 47821 /* 283 */,
       
 47822 /* 284 */,
       
 47823 /* 285 */,
       
 47824 /* 286 */,
       
 47825 /* 287 */,
       
 47826 /* 288 */,
       
 47827 /* 289 */,
       
 47828 /* 290 */,
       
 47829 /* 291 */,
       
 47830 /* 292 */,
       
 47831 /* 293 */,
       
 47832 /* 294 */
       
 47833 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 47834 
       
 47835 "use strict";
       
 47836 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 47837 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 47838 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 47839 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 47840 
       
 47841 
       
 47842 /**
       
 47843  * WordPress dependencies
       
 47844  */
       
 47845 
       
 47846 var chevronUp = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 47847   viewBox: "0 0 24 24",
       
 47848   xmlns: "http://www.w3.org/2000/svg"
       
 47849 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 47850   d: "M12 8l-6 5.4 1 1.2 5-4.6 5 4.6 1-1.2z"
       
 47851 }));
       
 47852 /* harmony default export */ __webpack_exports__["a"] = (chevronUp);
       
 47853 
       
 47854 
       
 47855 /***/ }),
       
 47856 /* 295 */
       
 47857 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 47858 
       
 47859 "use strict";
       
 47860 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 47861 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 47862 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 47863 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 47864 
       
 47865 
       
 47866 /**
       
 47867  * WordPress dependencies
       
 47868  */
       
 47869 
       
 47870 var chevronDown = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 47871   viewBox: "0 0 24 24",
       
 47872   xmlns: "http://www.w3.org/2000/svg"
       
 47873 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 47874   d: "M17 9.4L12 14 7 9.4l-1 1.2 6 5.4 6-5.4z"
       
 47875 }));
       
 47876 /* harmony default export */ __webpack_exports__["a"] = (chevronDown);
       
 47877 
       
 47878 
       
 47879 /***/ }),
       
 47880 /* 296 */,
       
 47881 /* 297 */,
       
 47882 /* 298 */,
       
 47883 /* 299 */,
       
 47884 /* 300 */,
       
 47885 /* 301 */,
       
 47886 /* 302 */,
       
 47887 /* 303 */,
       
 47888 /* 304 */
       
 47889 /***/ (function(module, exports, __webpack_require__) {
       
 47890 
       
 47891 "use strict";
       
 47892 /** @license React v16.13.1
       
 47893  * react-is.production.min.js
       
 47894  *
       
 47895  * Copyright (c) Facebook, Inc. and its affiliates.
       
 47896  *
       
 47897  * This source code is licensed under the MIT license found in the
       
 47898  * LICENSE file in the root directory of this source tree.
       
 47899  */
       
 47900 
       
 47901 var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?
       
 47902 Symbol.for("react.suspense_list"):60120,r=b?Symbol.for("react.memo"):60115,t=b?Symbol.for("react.lazy"):60116,v=b?Symbol.for("react.block"):60121,w=b?Symbol.for("react.fundamental"):60117,x=b?Symbol.for("react.responder"):60118,y=b?Symbol.for("react.scope"):60119;
       
 47903 function z(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;
       
 47904 exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};
       
 47905 exports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};
       
 47906 exports.isValidElementType=function(a){return"string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||"object"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;
       
 47907 
       
 47908 
       
 47909 /***/ }),
       
 47910 /* 305 */
       
 47911 /***/ (function(module, exports, __webpack_require__) {
       
 47912 
       
 47913 // eslint-disable-next-line import/no-unresolved
       
 47914 __webpack_require__(306);
       
 47915 
       
 47916 
       
 47917 /***/ }),
       
 47918 /* 306 */
       
 47919 /***/ (function(module, exports, __webpack_require__) {
       
 47920 
       
 47921 "use strict";
       
 47922 
       
 47923 
       
 47924 var _registerCSSInterfaceWithDefaultTheme = __webpack_require__(307);
       
 47925 
       
 47926 var _registerCSSInterfaceWithDefaultTheme2 = _interopRequireDefault(_registerCSSInterfaceWithDefaultTheme);
       
 47927 
       
 47928 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 47929 
       
 47930 (0, _registerCSSInterfaceWithDefaultTheme2['default'])();
       
 47931 
       
 47932 /***/ }),
       
 47933 /* 307 */
       
 47934 /***/ (function(module, exports, __webpack_require__) {
       
 47935 
       
 47936 "use strict";
       
 47937 
       
 47938 
       
 47939 Object.defineProperty(exports, "__esModule", {
       
 47940   value: true
       
 47941 });
       
 47942 exports['default'] = registerCSSInterfaceWithDefaultTheme;
       
 47943 
       
 47944 var _reactWithStylesInterfaceCss = __webpack_require__(308);
       
 47945 
       
 47946 var _reactWithStylesInterfaceCss2 = _interopRequireDefault(_reactWithStylesInterfaceCss);
       
 47947 
       
 47948 var _registerInterfaceWithDefaultTheme = __webpack_require__(352);
       
 47949 
       
 47950 var _registerInterfaceWithDefaultTheme2 = _interopRequireDefault(_registerInterfaceWithDefaultTheme);
       
 47951 
       
 47952 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 47953 
       
 47954 function registerCSSInterfaceWithDefaultTheme() {
       
 47955   (0, _registerInterfaceWithDefaultTheme2['default'])(_reactWithStylesInterfaceCss2['default']);
       
 47956 }
       
 47957 
       
 47958 /***/ }),
       
 47959 /* 308 */
       
 47960 /***/ (function(module, exports, __webpack_require__) {
       
 47961 
       
 47962 // eslint-disable-next-line import/no-unresolved
       
 47963 module.exports = __webpack_require__(309).default;
       
 47964 
       
 47965 
       
 47966 /***/ }),
       
 47967 /* 309 */
       
 47968 /***/ (function(module, exports, __webpack_require__) {
       
 47969 
       
 47970 Object.defineProperty(exports, "__esModule", {
       
 47971   value: true
       
 47972 });
       
 47973 
       
 47974 var _arrayPrototype = __webpack_require__(310);
       
 47975 
       
 47976 var _arrayPrototype2 = _interopRequireDefault(_arrayPrototype);
       
 47977 
       
 47978 var _globalCache = __webpack_require__(348);
       
 47979 
       
 47980 var _globalCache2 = _interopRequireDefault(_globalCache);
       
 47981 
       
 47982 var _constants = __webpack_require__(349);
       
 47983 
       
 47984 var _getClassName = __webpack_require__(350);
       
 47985 
       
 47986 var _getClassName2 = _interopRequireDefault(_getClassName);
       
 47987 
       
 47988 var _separateStyles2 = __webpack_require__(351);
       
 47989 
       
 47990 var _separateStyles3 = _interopRequireDefault(_separateStyles2);
       
 47991 
       
 47992 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 47993 
       
 47994 /**
       
 47995  * Function required as part of the react-with-styles interface. Parses the styles provided by
       
 47996  * react-with-styles to produce class names based on the style name and optionally the namespace if
       
 47997  * available.
       
 47998  *
       
 47999  * stylesObject {Object} The styles object passed to withStyles.
       
 48000  *
       
 48001  * Return an object mapping style names to class names.
       
 48002  */
       
 48003 function create(stylesObject) {
       
 48004   var stylesToClasses = {};
       
 48005   var styleNames = Object.keys(stylesObject);
       
 48006   var sharedState = _globalCache2['default'].get(_constants.GLOBAL_CACHE_KEY) || {};
       
 48007   var _sharedState$namespac = sharedState.namespace,
       
 48008       namespace = _sharedState$namespac === undefined ? '' : _sharedState$namespac;
       
 48009 
       
 48010   styleNames.forEach(function (styleName) {
       
 48011     var className = (0, _getClassName2['default'])(namespace, styleName);
       
 48012     stylesToClasses[styleName] = className;
       
 48013   });
       
 48014   return stylesToClasses;
       
 48015 }
       
 48016 
       
 48017 /**
       
 48018  * Process styles to be consumed by a component.
       
 48019  *
       
 48020  * stylesArray {Array} Array of the following: values returned by create, plain JavaScript objects
       
 48021  * representing inline styles, or arrays thereof.
       
 48022  *
       
 48023  * Return an object with optional className and style properties to be spread on a component.
       
 48024  */
       
 48025 function resolve(stylesArray) {
       
 48026   var flattenedStyles = (0, _arrayPrototype2['default'])(stylesArray, Infinity);
       
 48027 
       
 48028   var _separateStyles = (0, _separateStyles3['default'])(flattenedStyles),
       
 48029       classNames = _separateStyles.classNames,
       
 48030       hasInlineStyles = _separateStyles.hasInlineStyles,
       
 48031       inlineStyles = _separateStyles.inlineStyles;
       
 48032 
       
 48033   var specificClassNames = classNames.map(function (name, index) {
       
 48034     return String(name) + ' ' + String(name) + '_' + String(index + 1);
       
 48035   });
       
 48036   var className = specificClassNames.join(' ');
       
 48037 
       
 48038   var result = { className: className };
       
 48039   if (hasInlineStyles) result.style = inlineStyles;
       
 48040   return result;
       
 48041 }
       
 48042 
       
 48043 exports['default'] = { create: create, resolve: resolve };
       
 48044 
       
 48045 /***/ }),
       
 48046 /* 310 */
       
 48047 /***/ (function(module, exports, __webpack_require__) {
       
 48048 
       
 48049 "use strict";
       
 48050 
       
 48051 
       
 48052 var define = __webpack_require__(101);
       
 48053 var callBind = __webpack_require__(182);
       
 48054 
       
 48055 var implementation = __webpack_require__(208);
       
 48056 var getPolyfill = __webpack_require__(223);
       
 48057 var polyfill = getPolyfill();
       
 48058 var shim = __webpack_require__(347);
       
 48059 
       
 48060 var boundFlat = callBind(polyfill);
       
 48061 
       
 48062 define(boundFlat, {
       
 48063 	getPolyfill: getPolyfill,
       
 48064 	implementation: implementation,
       
 48065 	shim: shim
       
 48066 });
       
 48067 
       
 48068 module.exports = boundFlat;
       
 48069 
       
 48070 
       
 48071 /***/ }),
       
 48072 /* 311 */
       
 48073 /***/ (function(module, exports, __webpack_require__) {
       
 48074 
       
 48075 "use strict";
       
 48076 
       
 48077 
       
 48078 var keysShim;
       
 48079 if (!Object.keys) {
       
 48080 	// modified from https://github.com/es-shims/es5-shim
       
 48081 	var has = Object.prototype.hasOwnProperty;
       
 48082 	var toStr = Object.prototype.toString;
       
 48083 	var isArgs = __webpack_require__(206); // eslint-disable-line global-require
       
 48084 	var isEnumerable = Object.prototype.propertyIsEnumerable;
       
 48085 	var hasDontEnumBug = !isEnumerable.call({ toString: null }, 'toString');
       
 48086 	var hasProtoEnumBug = isEnumerable.call(function () {}, 'prototype');
       
 48087 	var dontEnums = [
       
 48088 		'toString',
       
 48089 		'toLocaleString',
       
 48090 		'valueOf',
       
 48091 		'hasOwnProperty',
       
 48092 		'isPrototypeOf',
       
 48093 		'propertyIsEnumerable',
       
 48094 		'constructor'
       
 48095 	];
       
 48096 	var equalsConstructorPrototype = function (o) {
       
 48097 		var ctor = o.constructor;
       
 48098 		return ctor && ctor.prototype === o;
       
 48099 	};
       
 48100 	var excludedKeys = {
       
 48101 		$applicationCache: true,
       
 48102 		$console: true,
       
 48103 		$external: true,
       
 48104 		$frame: true,
       
 48105 		$frameElement: true,
       
 48106 		$frames: true,
       
 48107 		$innerHeight: true,
       
 48108 		$innerWidth: true,
       
 48109 		$onmozfullscreenchange: true,
       
 48110 		$onmozfullscreenerror: true,
       
 48111 		$outerHeight: true,
       
 48112 		$outerWidth: true,
       
 48113 		$pageXOffset: true,
       
 48114 		$pageYOffset: true,
       
 48115 		$parent: true,
       
 48116 		$scrollLeft: true,
       
 48117 		$scrollTop: true,
       
 48118 		$scrollX: true,
       
 48119 		$scrollY: true,
       
 48120 		$self: true,
       
 48121 		$webkitIndexedDB: true,
       
 48122 		$webkitStorageInfo: true,
       
 48123 		$window: true
       
 48124 	};
       
 48125 	var hasAutomationEqualityBug = (function () {
       
 48126 		/* global window */
       
 48127 		if (typeof window === 'undefined') { return false; }
       
 48128 		for (var k in window) {
       
 48129 			try {
       
 48130 				if (!excludedKeys['$' + k] && has.call(window, k) && window[k] !== null && typeof window[k] === 'object') {
       
 48131 					try {
       
 48132 						equalsConstructorPrototype(window[k]);
       
 48133 					} catch (e) {
       
 48134 						return true;
       
 48135 					}
       
 48136 				}
       
 48137 			} catch (e) {
       
 48138 				return true;
       
 48139 			}
       
 48140 		}
       
 48141 		return false;
       
 48142 	}());
       
 48143 	var equalsConstructorPrototypeIfNotBuggy = function (o) {
       
 48144 		/* global window */
       
 48145 		if (typeof window === 'undefined' || !hasAutomationEqualityBug) {
       
 48146 			return equalsConstructorPrototype(o);
       
 48147 		}
       
 48148 		try {
       
 48149 			return equalsConstructorPrototype(o);
       
 48150 		} catch (e) {
       
 48151 			return false;
       
 48152 		}
       
 48153 	};
       
 48154 
       
 48155 	keysShim = function keys(object) {
       
 48156 		var isObject = object !== null && typeof object === 'object';
       
 48157 		var isFunction = toStr.call(object) === '[object Function]';
       
 48158 		var isArguments = isArgs(object);
       
 48159 		var isString = isObject && toStr.call(object) === '[object String]';
       
 48160 		var theKeys = [];
       
 48161 
       
 48162 		if (!isObject && !isFunction && !isArguments) {
       
 48163 			throw new TypeError('Object.keys called on a non-object');
       
 48164 		}
       
 48165 
       
 48166 		var skipProto = hasProtoEnumBug && isFunction;
       
 48167 		if (isString && object.length > 0 && !has.call(object, 0)) {
       
 48168 			for (var i = 0; i < object.length; ++i) {
       
 48169 				theKeys.push(String(i));
       
 48170 			}
       
 48171 		}
       
 48172 
       
 48173 		if (isArguments && object.length > 0) {
       
 48174 			for (var j = 0; j < object.length; ++j) {
       
 48175 				theKeys.push(String(j));
       
 48176 			}
       
 48177 		} else {
       
 48178 			for (var name in object) {
       
 48179 				if (!(skipProto && name === 'prototype') && has.call(object, name)) {
       
 48180 					theKeys.push(String(name));
       
 48181 				}
       
 48182 			}
       
 48183 		}
       
 48184 
       
 48185 		if (hasDontEnumBug) {
       
 48186 			var skipConstructor = equalsConstructorPrototypeIfNotBuggy(object);
       
 48187 
       
 48188 			for (var k = 0; k < dontEnums.length; ++k) {
       
 48189 				if (!(skipConstructor && dontEnums[k] === 'constructor') && has.call(object, dontEnums[k])) {
       
 48190 					theKeys.push(dontEnums[k]);
       
 48191 				}
       
 48192 			}
       
 48193 		}
       
 48194 		return theKeys;
       
 48195 	};
       
 48196 }
       
 48197 module.exports = keysShim;
       
 48198 
       
 48199 
       
 48200 /***/ }),
       
 48201 /* 312 */
       
 48202 /***/ (function(module, exports, __webpack_require__) {
       
 48203 
       
 48204 "use strict";
       
 48205 
       
 48206 
       
 48207 /* eslint no-invalid-this: 1 */
       
 48208 
       
 48209 var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
       
 48210 var slice = Array.prototype.slice;
       
 48211 var toStr = Object.prototype.toString;
       
 48212 var funcType = '[object Function]';
       
 48213 
       
 48214 module.exports = function bind(that) {
       
 48215     var target = this;
       
 48216     if (typeof target !== 'function' || toStr.call(target) !== funcType) {
       
 48217         throw new TypeError(ERROR_MESSAGE + target);
       
 48218     }
       
 48219     var args = slice.call(arguments, 1);
       
 48220 
       
 48221     var bound;
       
 48222     var binder = function () {
       
 48223         if (this instanceof bound) {
       
 48224             var result = target.apply(
       
 48225                 this,
       
 48226                 args.concat(slice.call(arguments))
       
 48227             );
       
 48228             if (Object(result) === result) {
       
 48229                 return result;
       
 48230             }
       
 48231             return this;
       
 48232         } else {
       
 48233             return target.apply(
       
 48234                 that,
       
 48235                 args.concat(slice.call(arguments))
       
 48236             );
       
 48237         }
       
 48238     };
       
 48239 
       
 48240     var boundLength = Math.max(0, target.length - args.length);
       
 48241     var boundArgs = [];
       
 48242     for (var i = 0; i < boundLength; i++) {
       
 48243         boundArgs.push('$' + i);
       
 48244     }
       
 48245 
       
 48246     bound = Function('binder', 'return function (' + boundArgs.join(',') + '){ return binder.apply(this,arguments); }')(binder);
       
 48247 
       
 48248     if (target.prototype) {
       
 48249         var Empty = function Empty() {};
       
 48250         Empty.prototype = target.prototype;
       
 48251         bound.prototype = new Empty();
       
 48252         Empty.prototype = null;
       
 48253     }
       
 48254 
       
 48255     return bound;
       
 48256 };
       
 48257 
       
 48258 
       
 48259 /***/ }),
       
 48260 /* 313 */
       
 48261 /***/ (function(module, exports, __webpack_require__) {
       
 48262 
       
 48263 "use strict";
       
 48264 
       
 48265 
       
 48266 /* eslint complexity: [2, 18], max-statements: [2, 33] */
       
 48267 module.exports = function hasSymbols() {
       
 48268 	if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
       
 48269 	if (typeof Symbol.iterator === 'symbol') { return true; }
       
 48270 
       
 48271 	var obj = {};
       
 48272 	var sym = Symbol('test');
       
 48273 	var symObj = Object(sym);
       
 48274 	if (typeof sym === 'string') { return false; }
       
 48275 
       
 48276 	if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
       
 48277 	if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
       
 48278 
       
 48279 	// temp disabled per https://github.com/ljharb/object.assign/issues/17
       
 48280 	// if (sym instanceof Symbol) { return false; }
       
 48281 	// temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
       
 48282 	// if (!(symObj instanceof Symbol)) { return false; }
       
 48283 
       
 48284 	// if (typeof Symbol.prototype.toString !== 'function') { return false; }
       
 48285 	// if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
       
 48286 
       
 48287 	var symVal = 42;
       
 48288 	obj[sym] = symVal;
       
 48289 	for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax
       
 48290 	if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
       
 48291 
       
 48292 	if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
       
 48293 
       
 48294 	var syms = Object.getOwnPropertySymbols(obj);
       
 48295 	if (syms.length !== 1 || syms[0] !== sym) { return false; }
       
 48296 
       
 48297 	if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
       
 48298 
       
 48299 	if (typeof Object.getOwnPropertyDescriptor === 'function') {
       
 48300 		var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
       
 48301 		if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
       
 48302 	}
       
 48303 
       
 48304 	return true;
       
 48305 };
       
 48306 
       
 48307 
       
 48308 /***/ }),
       
 48309 /* 314 */
       
 48310 /***/ (function(module, exports, __webpack_require__) {
       
 48311 
       
 48312 "use strict";
       
 48313 
       
 48314 
       
 48315 var GetIntrinsic = __webpack_require__(58);
       
 48316 
       
 48317 var $Array = GetIntrinsic('%Array%');
       
 48318 var $species = GetIntrinsic('%Symbol.species%', true);
       
 48319 var $TypeError = GetIntrinsic('%TypeError%');
       
 48320 
       
 48321 var Get = __webpack_require__(183);
       
 48322 var IsArray = __webpack_require__(184);
       
 48323 var IsConstructor = __webpack_require__(318);
       
 48324 var IsInteger = __webpack_require__(323);
       
 48325 var Type = __webpack_require__(90);
       
 48326 
       
 48327 // https://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate
       
 48328 
       
 48329 module.exports = function ArraySpeciesCreate(originalArray, length) {
       
 48330 	if (!IsInteger(length) || length < 0) {
       
 48331 		throw new $TypeError('Assertion failed: length must be an integer >= 0');
       
 48332 	}
       
 48333 	var len = length === 0 ? 0 : length;
       
 48334 	var C;
       
 48335 	var isArray = IsArray(originalArray);
       
 48336 	if (isArray) {
       
 48337 		C = Get(originalArray, 'constructor');
       
 48338 		// TODO: figure out how to make a cross-realm normal Array, a same-realm Array
       
 48339 		// if (IsConstructor(C)) {
       
 48340 		// 	if C is another realm's Array, C = undefined
       
 48341 		// 	Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(Array))) === null ?
       
 48342 		// }
       
 48343 		if ($species && Type(C) === 'Object') {
       
 48344 			C = Get(C, $species);
       
 48345 			if (C === null) {
       
 48346 				C = void 0;
       
 48347 			}
       
 48348 		}
       
 48349 	}
       
 48350 	if (typeof C === 'undefined') {
       
 48351 		return $Array(len);
       
 48352 	}
       
 48353 	if (!IsConstructor(C)) {
       
 48354 		throw new $TypeError('C must be a constructor');
       
 48355 	}
       
 48356 	return new C(len); // Construct(C, len);
       
 48357 };
       
 48358 
       
 48359 
       
 48360 
       
 48361 /***/ }),
       
 48362 /* 315 */
       
 48363 /***/ (function(module, exports, __webpack_require__) {
       
 48364 
       
 48365 var hasMap = typeof Map === 'function' && Map.prototype;
       
 48366 var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;
       
 48367 var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;
       
 48368 var mapForEach = hasMap && Map.prototype.forEach;
       
 48369 var hasSet = typeof Set === 'function' && Set.prototype;
       
 48370 var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;
       
 48371 var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;
       
 48372 var setForEach = hasSet && Set.prototype.forEach;
       
 48373 var hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;
       
 48374 var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;
       
 48375 var hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;
       
 48376 var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;
       
 48377 var booleanValueOf = Boolean.prototype.valueOf;
       
 48378 var objectToString = Object.prototype.toString;
       
 48379 var match = String.prototype.match;
       
 48380 var bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;
       
 48381 
       
 48382 var inspectCustom = __webpack_require__(316).custom;
       
 48383 var inspectSymbol = inspectCustom && isSymbol(inspectCustom) ? inspectCustom : null;
       
 48384 
       
 48385 module.exports = function inspect_(obj, options, depth, seen) {
       
 48386     var opts = options || {};
       
 48387 
       
 48388     if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {
       
 48389         throw new TypeError('option "quoteStyle" must be "single" or "double"');
       
 48390     }
       
 48391 
       
 48392     if (typeof obj === 'undefined') {
       
 48393         return 'undefined';
       
 48394     }
       
 48395     if (obj === null) {
       
 48396         return 'null';
       
 48397     }
       
 48398     if (typeof obj === 'boolean') {
       
 48399         return obj ? 'true' : 'false';
       
 48400     }
       
 48401 
       
 48402     if (typeof obj === 'string') {
       
 48403         return inspectString(obj, opts);
       
 48404     }
       
 48405     if (typeof obj === 'number') {
       
 48406         if (obj === 0) {
       
 48407             return Infinity / obj > 0 ? '0' : '-0';
       
 48408         }
       
 48409         return String(obj);
       
 48410     }
       
 48411     if (typeof obj === 'bigint') { // eslint-disable-line valid-typeof
       
 48412         return String(obj) + 'n';
       
 48413     }
       
 48414 
       
 48415     var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;
       
 48416     if (typeof depth === 'undefined') { depth = 0; }
       
 48417     if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {
       
 48418         return '[Object]';
       
 48419     }
       
 48420 
       
 48421     if (typeof seen === 'undefined') {
       
 48422         seen = [];
       
 48423     } else if (indexOf(seen, obj) >= 0) {
       
 48424         return '[Circular]';
       
 48425     }
       
 48426 
       
 48427     function inspect(value, from) {
       
 48428         if (from) {
       
 48429             seen = seen.slice();
       
 48430             seen.push(from);
       
 48431         }
       
 48432         return inspect_(value, opts, depth + 1, seen);
       
 48433     }
       
 48434 
       
 48435     if (typeof obj === 'function') {
       
 48436         var name = nameOf(obj);
       
 48437         return '[Function' + (name ? ': ' + name : '') + ']';
       
 48438     }
       
 48439     if (isSymbol(obj)) {
       
 48440         var symString = Symbol.prototype.toString.call(obj);
       
 48441         return typeof obj === 'object' ? markBoxed(symString) : symString;
       
 48442     }
       
 48443     if (isElement(obj)) {
       
 48444         var s = '<' + String(obj.nodeName).toLowerCase();
       
 48445         var attrs = obj.attributes || [];
       
 48446         for (var i = 0; i < attrs.length; i++) {
       
 48447             s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);
       
 48448         }
       
 48449         s += '>';
       
 48450         if (obj.childNodes && obj.childNodes.length) { s += '...'; }
       
 48451         s += '</' + String(obj.nodeName).toLowerCase() + '>';
       
 48452         return s;
       
 48453     }
       
 48454     if (isArray(obj)) {
       
 48455         if (obj.length === 0) { return '[]'; }
       
 48456         return '[ ' + arrObjKeys(obj, inspect).join(', ') + ' ]';
       
 48457     }
       
 48458     if (isError(obj)) {
       
 48459         var parts = arrObjKeys(obj, inspect);
       
 48460         if (parts.length === 0) { return '[' + String(obj) + ']'; }
       
 48461         return '{ [' + String(obj) + '] ' + parts.join(', ') + ' }';
       
 48462     }
       
 48463     if (typeof obj === 'object') {
       
 48464         if (inspectSymbol && typeof obj[inspectSymbol] === 'function') {
       
 48465             return obj[inspectSymbol]();
       
 48466         } else if (typeof obj.inspect === 'function') {
       
 48467             return obj.inspect();
       
 48468         }
       
 48469     }
       
 48470     if (isMap(obj)) {
       
 48471         var mapParts = [];
       
 48472         mapForEach.call(obj, function (value, key) {
       
 48473             mapParts.push(inspect(key, obj) + ' => ' + inspect(value, obj));
       
 48474         });
       
 48475         return collectionOf('Map', mapSize.call(obj), mapParts);
       
 48476     }
       
 48477     if (isSet(obj)) {
       
 48478         var setParts = [];
       
 48479         setForEach.call(obj, function (value) {
       
 48480             setParts.push(inspect(value, obj));
       
 48481         });
       
 48482         return collectionOf('Set', setSize.call(obj), setParts);
       
 48483     }
       
 48484     if (isWeakMap(obj)) {
       
 48485         return weakCollectionOf('WeakMap');
       
 48486     }
       
 48487     if (isWeakSet(obj)) {
       
 48488         return weakCollectionOf('WeakSet');
       
 48489     }
       
 48490     if (isNumber(obj)) {
       
 48491         return markBoxed(inspect(Number(obj)));
       
 48492     }
       
 48493     if (isBigInt(obj)) {
       
 48494         return markBoxed(inspect(bigIntValueOf.call(obj)));
       
 48495     }
       
 48496     if (isBoolean(obj)) {
       
 48497         return markBoxed(booleanValueOf.call(obj));
       
 48498     }
       
 48499     if (isString(obj)) {
       
 48500         return markBoxed(inspect(String(obj)));
       
 48501     }
       
 48502     if (!isDate(obj) && !isRegExp(obj)) {
       
 48503         var xs = arrObjKeys(obj, inspect);
       
 48504         if (xs.length === 0) { return '{}'; }
       
 48505         return '{ ' + xs.join(', ') + ' }';
       
 48506     }
       
 48507     return String(obj);
       
 48508 };
       
 48509 
       
 48510 function wrapQuotes(s, defaultStyle, opts) {
       
 48511     var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '"' : "'";
       
 48512     return quoteChar + s + quoteChar;
       
 48513 }
       
 48514 
       
 48515 function quote(s) {
       
 48516     return String(s).replace(/"/g, '&quot;');
       
 48517 }
       
 48518 
       
 48519 function isArray(obj) { return toStr(obj) === '[object Array]'; }
       
 48520 function isDate(obj) { return toStr(obj) === '[object Date]'; }
       
 48521 function isRegExp(obj) { return toStr(obj) === '[object RegExp]'; }
       
 48522 function isError(obj) { return toStr(obj) === '[object Error]'; }
       
 48523 function isSymbol(obj) { return toStr(obj) === '[object Symbol]'; }
       
 48524 function isString(obj) { return toStr(obj) === '[object String]'; }
       
 48525 function isNumber(obj) { return toStr(obj) === '[object Number]'; }
       
 48526 function isBigInt(obj) { return toStr(obj) === '[object BigInt]'; }
       
 48527 function isBoolean(obj) { return toStr(obj) === '[object Boolean]'; }
       
 48528 
       
 48529 var hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };
       
 48530 function has(obj, key) {
       
 48531     return hasOwn.call(obj, key);
       
 48532 }
       
 48533 
       
 48534 function toStr(obj) {
       
 48535     return objectToString.call(obj);
       
 48536 }
       
 48537 
       
 48538 function nameOf(f) {
       
 48539     if (f.name) { return f.name; }
       
 48540     var m = match.call(f, /^function\s*([\w$]+)/);
       
 48541     if (m) { return m[1]; }
       
 48542     return null;
       
 48543 }
       
 48544 
       
 48545 function indexOf(xs, x) {
       
 48546     if (xs.indexOf) { return xs.indexOf(x); }
       
 48547     for (var i = 0, l = xs.length; i < l; i++) {
       
 48548         if (xs[i] === x) { return i; }
       
 48549     }
       
 48550     return -1;
       
 48551 }
       
 48552 
       
 48553 function isMap(x) {
       
 48554     if (!mapSize || !x || typeof x !== 'object') {
       
 48555         return false;
       
 48556     }
       
 48557     try {
       
 48558         mapSize.call(x);
       
 48559         try {
       
 48560             setSize.call(x);
       
 48561         } catch (s) {
       
 48562             return true;
       
 48563         }
       
 48564         return x instanceof Map; // core-js workaround, pre-v2.5.0
       
 48565     } catch (e) {}
       
 48566     return false;
       
 48567 }
       
 48568 
       
 48569 function isWeakMap(x) {
       
 48570     if (!weakMapHas || !x || typeof x !== 'object') {
       
 48571         return false;
       
 48572     }
       
 48573     try {
       
 48574         weakMapHas.call(x, weakMapHas);
       
 48575         try {
       
 48576             weakSetHas.call(x, weakSetHas);
       
 48577         } catch (s) {
       
 48578             return true;
       
 48579         }
       
 48580         return x instanceof WeakMap; // core-js workaround, pre-v2.5.0
       
 48581     } catch (e) {}
       
 48582     return false;
       
 48583 }
       
 48584 
       
 48585 function isSet(x) {
       
 48586     if (!setSize || !x || typeof x !== 'object') {
       
 48587         return false;
       
 48588     }
       
 48589     try {
       
 48590         setSize.call(x);
       
 48591         try {
       
 48592             mapSize.call(x);
       
 48593         } catch (m) {
       
 48594             return true;
       
 48595         }
       
 48596         return x instanceof Set; // core-js workaround, pre-v2.5.0
       
 48597     } catch (e) {}
       
 48598     return false;
       
 48599 }
       
 48600 
       
 48601 function isWeakSet(x) {
       
 48602     if (!weakSetHas || !x || typeof x !== 'object') {
       
 48603         return false;
       
 48604     }
       
 48605     try {
       
 48606         weakSetHas.call(x, weakSetHas);
       
 48607         try {
       
 48608             weakMapHas.call(x, weakMapHas);
       
 48609         } catch (s) {
       
 48610             return true;
       
 48611         }
       
 48612         return x instanceof WeakSet; // core-js workaround, pre-v2.5.0
       
 48613     } catch (e) {}
       
 48614     return false;
       
 48615 }
       
 48616 
       
 48617 function isElement(x) {
       
 48618     if (!x || typeof x !== 'object') { return false; }
       
 48619     if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {
       
 48620         return true;
       
 48621     }
       
 48622     return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';
       
 48623 }
       
 48624 
       
 48625 function inspectString(str, opts) {
       
 48626     // eslint-disable-next-line no-control-regex
       
 48627     var s = str.replace(/(['\\])/g, '\\$1').replace(/[\x00-\x1f]/g, lowbyte);
       
 48628     return wrapQuotes(s, 'single', opts);
       
 48629 }
       
 48630 
       
 48631 function lowbyte(c) {
       
 48632     var n = c.charCodeAt(0);
       
 48633     var x = {
       
 48634         8: 'b', 9: 't', 10: 'n', 12: 'f', 13: 'r'
       
 48635     }[n];
       
 48636     if (x) { return '\\' + x; }
       
 48637     return '\\x' + (n < 0x10 ? '0' : '') + n.toString(16);
       
 48638 }
       
 48639 
       
 48640 function markBoxed(str) {
       
 48641     return 'Object(' + str + ')';
       
 48642 }
       
 48643 
       
 48644 function weakCollectionOf(type) {
       
 48645     return type + ' { ? }';
       
 48646 }
       
 48647 
       
 48648 function collectionOf(type, size, entries) {
       
 48649     return type + ' (' + size + ') {' + entries.join(', ') + '}';
       
 48650 }
       
 48651 
       
 48652 function arrObjKeys(obj, inspect) {
       
 48653     var isArr = isArray(obj);
       
 48654     var xs = [];
       
 48655     if (isArr) {
       
 48656         xs.length = obj.length;
       
 48657         for (var i = 0; i < obj.length; i++) {
       
 48658             xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';
       
 48659         }
       
 48660     }
       
 48661     for (var key in obj) { // eslint-disable-line no-restricted-syntax
       
 48662         if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
       
 48663         if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
       
 48664         if ((/[^\w$]/).test(key)) {
       
 48665             xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));
       
 48666         } else {
       
 48667             xs.push(key + ': ' + inspect(obj[key], obj));
       
 48668         }
       
 48669     }
       
 48670     return xs;
       
 48671 }
       
 48672 
       
 48673 
       
 48674 /***/ }),
       
 48675 /* 316 */
       
 48676 /***/ (function(module, exports) {
       
 48677 
       
 48678 /* (ignored) */
       
 48679 
       
 48680 /***/ }),
       
 48681 /* 317 */
       
 48682 /***/ (function(module, exports, __webpack_require__) {
       
 48683 
       
 48684 "use strict";
       
 48685 
       
 48686 
       
 48687 // https://www.ecma-international.org/ecma-262/5.1/#sec-8
       
 48688 
       
 48689 module.exports = function Type(x) {
       
 48690 	if (x === null) {
       
 48691 		return 'Null';
       
 48692 	}
       
 48693 	if (typeof x === 'undefined') {
       
 48694 		return 'Undefined';
       
 48695 	}
       
 48696 	if (typeof x === 'function' || typeof x === 'object') {
       
 48697 		return 'Object';
       
 48698 	}
       
 48699 	if (typeof x === 'number') {
       
 48700 		return 'Number';
       
 48701 	}
       
 48702 	if (typeof x === 'boolean') {
       
 48703 		return 'Boolean';
       
 48704 	}
       
 48705 	if (typeof x === 'string') {
       
 48706 		return 'String';
       
 48707 	}
       
 48708 };
       
 48709 
       
 48710 
       
 48711 /***/ }),
       
 48712 /* 318 */
       
 48713 /***/ (function(module, exports, __webpack_require__) {
       
 48714 
       
 48715 "use strict";
       
 48716 
       
 48717 
       
 48718 var GetIntrinsic = __webpack_require__(58);
       
 48719 
       
 48720 var $construct = GetIntrinsic('%Reflect.construct%', true);
       
 48721 
       
 48722 var DefinePropertyOrThrow = __webpack_require__(319);
       
 48723 try {
       
 48724 	DefinePropertyOrThrow({}, '', { '[[Get]]': function () {} });
       
 48725 } catch (e) {
       
 48726 	// Accessor properties aren't supported
       
 48727 	DefinePropertyOrThrow = null;
       
 48728 }
       
 48729 
       
 48730 // https://www.ecma-international.org/ecma-262/6.0/#sec-isconstructor
       
 48731 
       
 48732 if (DefinePropertyOrThrow && $construct) {
       
 48733 	var isConstructorMarker = {};
       
 48734 	var badArrayLike = {};
       
 48735 	DefinePropertyOrThrow(badArrayLike, 'length', {
       
 48736 		'[[Get]]': function () {
       
 48737 			throw isConstructorMarker;
       
 48738 		},
       
 48739 		'[[Enumerable]]': true
       
 48740 	});
       
 48741 
       
 48742 	module.exports = function IsConstructor(argument) {
       
 48743 		try {
       
 48744 			// `Reflect.construct` invokes `IsConstructor(target)` before `Get(args, 'length')`:
       
 48745 			$construct(argument, badArrayLike);
       
 48746 		} catch (err) {
       
 48747 			return err === isConstructorMarker;
       
 48748 		}
       
 48749 	};
       
 48750 } else {
       
 48751 	module.exports = function IsConstructor(argument) {
       
 48752 		// unfortunately there's no way to truly check this without try/catch `new argument` in old environments
       
 48753 		return typeof argument === 'function' && !!argument.prototype;
       
 48754 	};
       
 48755 }
       
 48756 
       
 48757 
       
 48758 /***/ }),
       
 48759 /* 319 */
       
 48760 /***/ (function(module, exports, __webpack_require__) {
       
 48761 
       
 48762 "use strict";
       
 48763 
       
 48764 
       
 48765 var GetIntrinsic = __webpack_require__(58);
       
 48766 
       
 48767 var $TypeError = GetIntrinsic('%TypeError%');
       
 48768 
       
 48769 var isPropertyDescriptor = __webpack_require__(320);
       
 48770 var DefineOwnProperty = __webpack_require__(209);
       
 48771 
       
 48772 var FromPropertyDescriptor = __webpack_require__(210);
       
 48773 var IsAccessorDescriptor = __webpack_require__(321);
       
 48774 var IsDataDescriptor = __webpack_require__(211);
       
 48775 var IsPropertyKey = __webpack_require__(128);
       
 48776 var SameValue = __webpack_require__(212);
       
 48777 var ToPropertyDescriptor = __webpack_require__(213);
       
 48778 var Type = __webpack_require__(90);
       
 48779 
       
 48780 // https://www.ecma-international.org/ecma-262/6.0/#sec-definepropertyorthrow
       
 48781 
       
 48782 module.exports = function DefinePropertyOrThrow(O, P, desc) {
       
 48783 	if (Type(O) !== 'Object') {
       
 48784 		throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 48785 	}
       
 48786 
       
 48787 	if (!IsPropertyKey(P)) {
       
 48788 		throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 48789 	}
       
 48790 
       
 48791 	var Desc = isPropertyDescriptor({
       
 48792 		Type: Type,
       
 48793 		IsDataDescriptor: IsDataDescriptor,
       
 48794 		IsAccessorDescriptor: IsAccessorDescriptor
       
 48795 	}, desc) ? desc : ToPropertyDescriptor(desc);
       
 48796 	if (!isPropertyDescriptor({
       
 48797 		Type: Type,
       
 48798 		IsDataDescriptor: IsDataDescriptor,
       
 48799 		IsAccessorDescriptor: IsAccessorDescriptor
       
 48800 	}, Desc)) {
       
 48801 		throw new $TypeError('Assertion failed: Desc is not a valid Property Descriptor');
       
 48802 	}
       
 48803 
       
 48804 	return DefineOwnProperty(
       
 48805 		IsDataDescriptor,
       
 48806 		SameValue,
       
 48807 		FromPropertyDescriptor,
       
 48808 		O,
       
 48809 		P,
       
 48810 		Desc
       
 48811 	);
       
 48812 };
       
 48813 
       
 48814 
       
 48815 /***/ }),
       
 48816 /* 320 */
       
 48817 /***/ (function(module, exports, __webpack_require__) {
       
 48818 
       
 48819 "use strict";
       
 48820 
       
 48821 
       
 48822 var GetIntrinsic = __webpack_require__(58);
       
 48823 
       
 48824 var has = __webpack_require__(91);
       
 48825 var $TypeError = GetIntrinsic('%TypeError%');
       
 48826 
       
 48827 module.exports = function IsPropertyDescriptor(ES, Desc) {
       
 48828 	if (ES.Type(Desc) !== 'Object') {
       
 48829 		return false;
       
 48830 	}
       
 48831 	var allowed = {
       
 48832 		'[[Configurable]]': true,
       
 48833 		'[[Enumerable]]': true,
       
 48834 		'[[Get]]': true,
       
 48835 		'[[Set]]': true,
       
 48836 		'[[Value]]': true,
       
 48837 		'[[Writable]]': true
       
 48838 	};
       
 48839 
       
 48840 	for (var key in Desc) { // eslint-disable-line no-restricted-syntax
       
 48841 		if (has(Desc, key) && !allowed[key]) {
       
 48842 			return false;
       
 48843 		}
       
 48844 	}
       
 48845 
       
 48846 	if (ES.IsDataDescriptor(Desc) && ES.IsAccessorDescriptor(Desc)) {
       
 48847 		throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
       
 48848 	}
       
 48849 	return true;
       
 48850 };
       
 48851 
       
 48852 
       
 48853 /***/ }),
       
 48854 /* 321 */
       
 48855 /***/ (function(module, exports, __webpack_require__) {
       
 48856 
       
 48857 "use strict";
       
 48858 
       
 48859 
       
 48860 var has = __webpack_require__(91);
       
 48861 
       
 48862 var assertRecord = __webpack_require__(185);
       
 48863 
       
 48864 var Type = __webpack_require__(90);
       
 48865 
       
 48866 // https://www.ecma-international.org/ecma-262/6.0/#sec-isaccessordescriptor
       
 48867 
       
 48868 module.exports = function IsAccessorDescriptor(Desc) {
       
 48869 	if (typeof Desc === 'undefined') {
       
 48870 		return false;
       
 48871 	}
       
 48872 
       
 48873 	assertRecord(Type, 'Property Descriptor', 'Desc', Desc);
       
 48874 
       
 48875 	if (!has(Desc, '[[Get]]') && !has(Desc, '[[Set]]')) {
       
 48876 		return false;
       
 48877 	}
       
 48878 
       
 48879 	return true;
       
 48880 };
       
 48881 
       
 48882 
       
 48883 /***/ }),
       
 48884 /* 322 */
       
 48885 /***/ (function(module, exports, __webpack_require__) {
       
 48886 
       
 48887 "use strict";
       
 48888 
       
 48889 
       
 48890 // http://www.ecma-international.org/ecma-262/5.1/#sec-9.11
       
 48891 
       
 48892 module.exports = __webpack_require__(215);
       
 48893 
       
 48894 
       
 48895 /***/ }),
       
 48896 /* 323 */
       
 48897 /***/ (function(module, exports, __webpack_require__) {
       
 48898 
       
 48899 "use strict";
       
 48900 
       
 48901 
       
 48902 var GetIntrinsic = __webpack_require__(58);
       
 48903 
       
 48904 var $Math = GetIntrinsic('%Math%');
       
 48905 
       
 48906 var $floor = $Math.floor;
       
 48907 var $abs = $Math.abs;
       
 48908 
       
 48909 var $isNaN = __webpack_require__(186);
       
 48910 var $isFinite = __webpack_require__(216);
       
 48911 
       
 48912 // https://www.ecma-international.org/ecma-262/6.0/#sec-isinteger
       
 48913 
       
 48914 module.exports = function IsInteger(argument) {
       
 48915 	if (typeof argument !== 'number' || $isNaN(argument) || !$isFinite(argument)) {
       
 48916 		return false;
       
 48917 	}
       
 48918 	var abs = $abs(argument);
       
 48919 	return $floor(abs) === abs;
       
 48920 };
       
 48921 
       
 48922 
       
 48923 /***/ }),
       
 48924 /* 324 */
       
 48925 /***/ (function(module, exports, __webpack_require__) {
       
 48926 
       
 48927 "use strict";
       
 48928 
       
 48929 
       
 48930 var GetIntrinsic = __webpack_require__(58);
       
 48931 
       
 48932 var $TypeError = GetIntrinsic('%TypeError%');
       
 48933 
       
 48934 var MAX_SAFE_INTEGER = __webpack_require__(217);
       
 48935 
       
 48936 var Call = __webpack_require__(325);
       
 48937 var CreateDataPropertyOrThrow = __webpack_require__(326);
       
 48938 var Get = __webpack_require__(183);
       
 48939 var HasProperty = __webpack_require__(333);
       
 48940 var IsArray = __webpack_require__(184);
       
 48941 var ToLength = __webpack_require__(219);
       
 48942 var ToString = __webpack_require__(343);
       
 48943 
       
 48944 // https://ecma-international.org/ecma-262/10.0/#sec-flattenintoarray
       
 48945 
       
 48946 // eslint-disable-next-line max-params, max-statements
       
 48947 module.exports = function FlattenIntoArray(target, source, sourceLen, start, depth) {
       
 48948 	var mapperFunction;
       
 48949 	if (arguments.length > 5) {
       
 48950 		mapperFunction = arguments[5];
       
 48951 	}
       
 48952 
       
 48953 	var targetIndex = start;
       
 48954 	var sourceIndex = 0;
       
 48955 	while (sourceIndex < sourceLen) {
       
 48956 		var P = ToString(sourceIndex);
       
 48957 		var exists = HasProperty(source, P);
       
 48958 		if (exists === true) {
       
 48959 			var element = Get(source, P);
       
 48960 			if (typeof mapperFunction !== 'undefined') {
       
 48961 				if (arguments.length <= 6) {
       
 48962 					throw new $TypeError('Assertion failed: thisArg is required when mapperFunction is provided');
       
 48963 				}
       
 48964 				element = Call(mapperFunction, arguments[6], [element, sourceIndex, source]);
       
 48965 			}
       
 48966 			var shouldFlatten = false;
       
 48967 			if (depth > 0) {
       
 48968 				shouldFlatten = IsArray(element);
       
 48969 			}
       
 48970 			if (shouldFlatten) {
       
 48971 				var elementLen = ToLength(Get(element, 'length'));
       
 48972 				targetIndex = FlattenIntoArray(target, element, elementLen, targetIndex, depth - 1);
       
 48973 			} else {
       
 48974 				if (targetIndex >= MAX_SAFE_INTEGER) {
       
 48975 					throw new $TypeError('index too large');
       
 48976 				}
       
 48977 				CreateDataPropertyOrThrow(target, ToString(targetIndex), element);
       
 48978 				targetIndex += 1;
       
 48979 			}
       
 48980 		}
       
 48981 		sourceIndex += 1;
       
 48982 	}
       
 48983 
       
 48984 	return targetIndex;
       
 48985 };
       
 48986 
       
 48987 
       
 48988 /***/ }),
       
 48989 /* 325 */
       
 48990 /***/ (function(module, exports, __webpack_require__) {
       
 48991 
       
 48992 "use strict";
       
 48993 
       
 48994 
       
 48995 var GetIntrinsic = __webpack_require__(58);
       
 48996 var callBound = __webpack_require__(140);
       
 48997 
       
 48998 var $apply = GetIntrinsic('%Reflect.apply%', true) || callBound('%Function.prototype.apply%');
       
 48999 
       
 49000 // https://www.ecma-international.org/ecma-262/6.0/#sec-call
       
 49001 
       
 49002 module.exports = function Call(F, V) {
       
 49003 	var args = arguments.length > 2 ? arguments[2] : [];
       
 49004 	return $apply(F, V, args);
       
 49005 };
       
 49006 
       
 49007 
       
 49008 /***/ }),
       
 49009 /* 326 */
       
 49010 /***/ (function(module, exports, __webpack_require__) {
       
 49011 
       
 49012 "use strict";
       
 49013 
       
 49014 
       
 49015 var GetIntrinsic = __webpack_require__(58);
       
 49016 
       
 49017 var $TypeError = GetIntrinsic('%TypeError%');
       
 49018 
       
 49019 var CreateDataProperty = __webpack_require__(327);
       
 49020 var IsPropertyKey = __webpack_require__(128);
       
 49021 var Type = __webpack_require__(90);
       
 49022 
       
 49023 // // https://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow
       
 49024 
       
 49025 module.exports = function CreateDataPropertyOrThrow(O, P, V) {
       
 49026 	if (Type(O) !== 'Object') {
       
 49027 		throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 49028 	}
       
 49029 	if (!IsPropertyKey(P)) {
       
 49030 		throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 49031 	}
       
 49032 	var success = CreateDataProperty(O, P, V);
       
 49033 	if (!success) {
       
 49034 		throw new $TypeError('unable to create data property');
       
 49035 	}
       
 49036 	return success;
       
 49037 };
       
 49038 
       
 49039 
       
 49040 /***/ }),
       
 49041 /* 327 */
       
 49042 /***/ (function(module, exports, __webpack_require__) {
       
 49043 
       
 49044 "use strict";
       
 49045 
       
 49046 
       
 49047 var GetIntrinsic = __webpack_require__(58);
       
 49048 
       
 49049 var $TypeError = GetIntrinsic('%TypeError%');
       
 49050 
       
 49051 var DefineOwnProperty = __webpack_require__(209);
       
 49052 
       
 49053 var FromPropertyDescriptor = __webpack_require__(210);
       
 49054 var OrdinaryGetOwnProperty = __webpack_require__(328);
       
 49055 var IsDataDescriptor = __webpack_require__(211);
       
 49056 var IsExtensible = __webpack_require__(332);
       
 49057 var IsPropertyKey = __webpack_require__(128);
       
 49058 var SameValue = __webpack_require__(212);
       
 49059 var Type = __webpack_require__(90);
       
 49060 
       
 49061 // https://www.ecma-international.org/ecma-262/6.0/#sec-createdataproperty
       
 49062 
       
 49063 module.exports = function CreateDataProperty(O, P, V) {
       
 49064 	if (Type(O) !== 'Object') {
       
 49065 		throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 49066 	}
       
 49067 	if (!IsPropertyKey(P)) {
       
 49068 		throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 49069 	}
       
 49070 	var oldDesc = OrdinaryGetOwnProperty(O, P);
       
 49071 	var extensible = !oldDesc || IsExtensible(O);
       
 49072 	var immutable = oldDesc && (!oldDesc['[[Writable]]'] || !oldDesc['[[Configurable]]']);
       
 49073 	if (immutable || !extensible) {
       
 49074 		return false;
       
 49075 	}
       
 49076 	return DefineOwnProperty(
       
 49077 		IsDataDescriptor,
       
 49078 		SameValue,
       
 49079 		FromPropertyDescriptor,
       
 49080 		O,
       
 49081 		P,
       
 49082 		{
       
 49083 			'[[Configurable]]': true,
       
 49084 			'[[Enumerable]]': true,
       
 49085 			'[[Value]]': V,
       
 49086 			'[[Writable]]': true
       
 49087 		}
       
 49088 	);
       
 49089 };
       
 49090 
       
 49091 
       
 49092 /***/ }),
       
 49093 /* 328 */
       
 49094 /***/ (function(module, exports, __webpack_require__) {
       
 49095 
       
 49096 "use strict";
       
 49097 
       
 49098 
       
 49099 var GetIntrinsic = __webpack_require__(58);
       
 49100 
       
 49101 var $gOPD = __webpack_require__(329);
       
 49102 var $TypeError = GetIntrinsic('%TypeError%');
       
 49103 
       
 49104 var callBound = __webpack_require__(140);
       
 49105 
       
 49106 var $isEnumerable = callBound('Object.prototype.propertyIsEnumerable');
       
 49107 
       
 49108 var has = __webpack_require__(91);
       
 49109 
       
 49110 var IsArray = __webpack_require__(184);
       
 49111 var IsPropertyKey = __webpack_require__(128);
       
 49112 var IsRegExp = __webpack_require__(330);
       
 49113 var ToPropertyDescriptor = __webpack_require__(213);
       
 49114 var Type = __webpack_require__(90);
       
 49115 
       
 49116 // https://www.ecma-international.org/ecma-262/6.0/#sec-ordinarygetownproperty
       
 49117 
       
 49118 module.exports = function OrdinaryGetOwnProperty(O, P) {
       
 49119 	if (Type(O) !== 'Object') {
       
 49120 		throw new $TypeError('Assertion failed: O must be an Object');
       
 49121 	}
       
 49122 	if (!IsPropertyKey(P)) {
       
 49123 		throw new $TypeError('Assertion failed: P must be a Property Key');
       
 49124 	}
       
 49125 	if (!has(O, P)) {
       
 49126 		return void 0;
       
 49127 	}
       
 49128 	if (!$gOPD) {
       
 49129 		// ES3 / IE 8 fallback
       
 49130 		var arrayLength = IsArray(O) && P === 'length';
       
 49131 		var regexLastIndex = IsRegExp(O) && P === 'lastIndex';
       
 49132 		return {
       
 49133 			'[[Configurable]]': !(arrayLength || regexLastIndex),
       
 49134 			'[[Enumerable]]': $isEnumerable(O, P),
       
 49135 			'[[Value]]': O[P],
       
 49136 			'[[Writable]]': true
       
 49137 		};
       
 49138 	}
       
 49139 	return ToPropertyDescriptor($gOPD(O, P));
       
 49140 };
       
 49141 
       
 49142 
       
 49143 /***/ }),
       
 49144 /* 329 */
       
 49145 /***/ (function(module, exports, __webpack_require__) {
       
 49146 
       
 49147 "use strict";
       
 49148 
       
 49149 
       
 49150 var GetIntrinsic = __webpack_require__(58);
       
 49151 
       
 49152 var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%');
       
 49153 if ($gOPD) {
       
 49154 	try {
       
 49155 		$gOPD([], 'length');
       
 49156 	} catch (e) {
       
 49157 		// IE 8 has a broken gOPD
       
 49158 		$gOPD = null;
       
 49159 	}
       
 49160 }
       
 49161 
       
 49162 module.exports = $gOPD;
       
 49163 
       
 49164 
       
 49165 /***/ }),
       
 49166 /* 330 */
       
 49167 /***/ (function(module, exports, __webpack_require__) {
       
 49168 
       
 49169 "use strict";
       
 49170 
       
 49171 
       
 49172 var GetIntrinsic = __webpack_require__(58);
       
 49173 
       
 49174 var $match = GetIntrinsic('%Symbol.match%', true);
       
 49175 
       
 49176 var hasRegExpMatcher = __webpack_require__(331);
       
 49177 
       
 49178 var ToBoolean = __webpack_require__(214);
       
 49179 
       
 49180 // https://ecma-international.org/ecma-262/6.0/#sec-isregexp
       
 49181 
       
 49182 module.exports = function IsRegExp(argument) {
       
 49183 	if (!argument || typeof argument !== 'object') {
       
 49184 		return false;
       
 49185 	}
       
 49186 	if ($match) {
       
 49187 		var isRegExp = argument[$match];
       
 49188 		if (typeof isRegExp !== 'undefined') {
       
 49189 			return ToBoolean(isRegExp);
       
 49190 		}
       
 49191 	}
       
 49192 	return hasRegExpMatcher(argument);
       
 49193 };
       
 49194 
       
 49195 
       
 49196 /***/ }),
       
 49197 /* 331 */
       
 49198 /***/ (function(module, exports, __webpack_require__) {
       
 49199 
       
 49200 "use strict";
       
 49201 
       
 49202 
       
 49203 var hasSymbols = __webpack_require__(207)();
       
 49204 var hasToStringTag = hasSymbols && typeof Symbol.toStringTag === 'symbol';
       
 49205 var hasOwnProperty;
       
 49206 var regexExec;
       
 49207 var isRegexMarker;
       
 49208 var badStringifier;
       
 49209 
       
 49210 if (hasToStringTag) {
       
 49211 	hasOwnProperty = Function.call.bind(Object.prototype.hasOwnProperty);
       
 49212 	regexExec = Function.call.bind(RegExp.prototype.exec);
       
 49213 	isRegexMarker = {};
       
 49214 
       
 49215 	var throwRegexMarker = function () {
       
 49216 		throw isRegexMarker;
       
 49217 	};
       
 49218 	badStringifier = {
       
 49219 		toString: throwRegexMarker,
       
 49220 		valueOf: throwRegexMarker
       
 49221 	};
       
 49222 
       
 49223 	if (typeof Symbol.toPrimitive === 'symbol') {
       
 49224 		badStringifier[Symbol.toPrimitive] = throwRegexMarker;
       
 49225 	}
       
 49226 }
       
 49227 
       
 49228 var toStr = Object.prototype.toString;
       
 49229 var gOPD = Object.getOwnPropertyDescriptor;
       
 49230 var regexClass = '[object RegExp]';
       
 49231 
       
 49232 module.exports = hasToStringTag
       
 49233 	// eslint-disable-next-line consistent-return
       
 49234 	? function isRegex(value) {
       
 49235 		if (!value || typeof value !== 'object') {
       
 49236 			return false;
       
 49237 		}
       
 49238 
       
 49239 		var descriptor = gOPD(value, 'lastIndex');
       
 49240 		var hasLastIndexDataProperty = descriptor && hasOwnProperty(descriptor, 'value');
       
 49241 		if (!hasLastIndexDataProperty) {
       
 49242 			return false;
       
 49243 		}
       
 49244 
       
 49245 		try {
       
 49246 			regexExec(value, badStringifier);
       
 49247 		} catch (e) {
       
 49248 			return e === isRegexMarker;
       
 49249 		}
       
 49250 	}
       
 49251 	: function isRegex(value) {
       
 49252 		// In older browsers, typeof regex incorrectly returns 'function'
       
 49253 		if (!value || (typeof value !== 'object' && typeof value !== 'function')) {
       
 49254 			return false;
       
 49255 		}
       
 49256 
       
 49257 		return toStr.call(value) === regexClass;
       
 49258 	};
       
 49259 
       
 49260 
       
 49261 /***/ }),
       
 49262 /* 332 */
       
 49263 /***/ (function(module, exports, __webpack_require__) {
       
 49264 
       
 49265 "use strict";
       
 49266 
       
 49267 
       
 49268 var GetIntrinsic = __webpack_require__(58);
       
 49269 
       
 49270 var $Object = GetIntrinsic('%Object%');
       
 49271 
       
 49272 var isPrimitive = __webpack_require__(218);
       
 49273 
       
 49274 var $preventExtensions = $Object.preventExtensions;
       
 49275 var $isExtensible = $Object.isExtensible;
       
 49276 
       
 49277 // https://www.ecma-international.org/ecma-262/6.0/#sec-isextensible-o
       
 49278 
       
 49279 module.exports = $preventExtensions
       
 49280 	? function IsExtensible(obj) {
       
 49281 		return !isPrimitive(obj) && $isExtensible(obj);
       
 49282 	}
       
 49283 	: function IsExtensible(obj) {
       
 49284 		return !isPrimitive(obj);
       
 49285 	};
       
 49286 
       
 49287 
       
 49288 /***/ }),
       
 49289 /* 333 */
       
 49290 /***/ (function(module, exports, __webpack_require__) {
       
 49291 
       
 49292 "use strict";
       
 49293 
       
 49294 
       
 49295 var GetIntrinsic = __webpack_require__(58);
       
 49296 
       
 49297 var $TypeError = GetIntrinsic('%TypeError%');
       
 49298 
       
 49299 var IsPropertyKey = __webpack_require__(128);
       
 49300 var Type = __webpack_require__(90);
       
 49301 
       
 49302 // https://ecma-international.org/ecma-262/6.0/#sec-hasproperty
       
 49303 
       
 49304 module.exports = function HasProperty(O, P) {
       
 49305 	if (Type(O) !== 'Object') {
       
 49306 		throw new $TypeError('Assertion failed: `O` must be an Object');
       
 49307 	}
       
 49308 	if (!IsPropertyKey(P)) {
       
 49309 		throw new $TypeError('Assertion failed: `P` must be a Property Key');
       
 49310 	}
       
 49311 	return P in O;
       
 49312 };
       
 49313 
       
 49314 
       
 49315 /***/ }),
       
 49316 /* 334 */
       
 49317 /***/ (function(module, exports, __webpack_require__) {
       
 49318 
       
 49319 "use strict";
       
 49320 
       
 49321 
       
 49322 var GetIntrinsic = __webpack_require__(58);
       
 49323 
       
 49324 var $Math = GetIntrinsic('%Math%');
       
 49325 
       
 49326 var ToNumber = __webpack_require__(335);
       
 49327 var $isNaN = __webpack_require__(186);
       
 49328 var $isFinite = __webpack_require__(216);
       
 49329 var $sign = __webpack_require__(336);
       
 49330 
       
 49331 var $floor = $Math.floor;
       
 49332 var $abs = $Math.abs;
       
 49333 
       
 49334 // http://www.ecma-international.org/ecma-262/5.1/#sec-9.4
       
 49335 
       
 49336 module.exports = function ToInteger(value) {
       
 49337 	var number = ToNumber(value);
       
 49338 	if ($isNaN(number)) { return 0; }
       
 49339 	if (number === 0 || !$isFinite(number)) { return number; }
       
 49340 	return $sign(number) * $floor($abs(number));
       
 49341 };
       
 49342 
       
 49343 
       
 49344 /***/ }),
       
 49345 /* 335 */
       
 49346 /***/ (function(module, exports, __webpack_require__) {
       
 49347 
       
 49348 "use strict";
       
 49349 
       
 49350 
       
 49351 // http://www.ecma-international.org/ecma-262/5.1/#sec-9.3
       
 49352 
       
 49353 module.exports = function ToNumber(value) {
       
 49354 	return +value; // eslint-disable-line no-implicit-coercion
       
 49355 };
       
 49356 
       
 49357 
       
 49358 /***/ }),
       
 49359 /* 336 */
       
 49360 /***/ (function(module, exports, __webpack_require__) {
       
 49361 
       
 49362 "use strict";
       
 49363 
       
 49364 
       
 49365 module.exports = function sign(number) {
       
 49366 	return number >= 0 ? 1 : -1;
       
 49367 };
       
 49368 
       
 49369 
       
 49370 /***/ }),
       
 49371 /* 337 */
       
 49372 /***/ (function(module, exports, __webpack_require__) {
       
 49373 
       
 49374 "use strict";
       
 49375 
       
 49376 
       
 49377 var GetIntrinsic = __webpack_require__(58);
       
 49378 
       
 49379 var $TypeError = GetIntrinsic('%TypeError%');
       
 49380 var $Number = GetIntrinsic('%Number%');
       
 49381 var $RegExp = GetIntrinsic('%RegExp%');
       
 49382 var $parseInteger = GetIntrinsic('%parseInt%');
       
 49383 
       
 49384 var callBound = __webpack_require__(140);
       
 49385 var regexTester = __webpack_require__(338);
       
 49386 var isPrimitive = __webpack_require__(218);
       
 49387 
       
 49388 var $strSlice = callBound('String.prototype.slice');
       
 49389 var isBinary = regexTester(/^0b[01]+$/i);
       
 49390 var isOctal = regexTester(/^0o[0-7]+$/i);
       
 49391 var isInvalidHexLiteral = regexTester(/^[-+]0x[0-9a-f]+$/i);
       
 49392 var nonWS = ['\u0085', '\u200b', '\ufffe'].join('');
       
 49393 var nonWSregex = new $RegExp('[' + nonWS + ']', 'g');
       
 49394 var hasNonWS = regexTester(nonWSregex);
       
 49395 
       
 49396 // whitespace from: https://es5.github.io/#x15.5.4.20
       
 49397 // implementation from https://github.com/es-shims/es5-shim/blob/v3.4.0/es5-shim.js#L1304-L1324
       
 49398 var ws = [
       
 49399 	'\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003',
       
 49400 	'\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028',
       
 49401 	'\u2029\uFEFF'
       
 49402 ].join('');
       
 49403 var trimRegex = new RegExp('(^[' + ws + ']+)|([' + ws + ']+$)', 'g');
       
 49404 var $replace = callBound('String.prototype.replace');
       
 49405 var $trim = function (value) {
       
 49406 	return $replace(value, trimRegex, '');
       
 49407 };
       
 49408 
       
 49409 var ToPrimitive = __webpack_require__(339);
       
 49410 
       
 49411 // https://www.ecma-international.org/ecma-262/6.0/#sec-tonumber
       
 49412 
       
 49413 module.exports = function ToNumber(argument) {
       
 49414 	var value = isPrimitive(argument) ? argument : ToPrimitive(argument, $Number);
       
 49415 	if (typeof value === 'symbol') {
       
 49416 		throw new $TypeError('Cannot convert a Symbol value to a number');
       
 49417 	}
       
 49418 	if (typeof value === 'string') {
       
 49419 		if (isBinary(value)) {
       
 49420 			return ToNumber($parseInteger($strSlice(value, 2), 2));
       
 49421 		} else if (isOctal(value)) {
       
 49422 			return ToNumber($parseInteger($strSlice(value, 2), 8));
       
 49423 		} else if (hasNonWS(value) || isInvalidHexLiteral(value)) {
       
 49424 			return NaN;
       
 49425 		} else {
       
 49426 			var trimmed = $trim(value);
       
 49427 			if (trimmed !== value) {
       
 49428 				return ToNumber(trimmed);
       
 49429 			}
       
 49430 		}
       
 49431 	}
       
 49432 	return $Number(value);
       
 49433 };
       
 49434 
       
 49435 
       
 49436 /***/ }),
       
 49437 /* 338 */
       
 49438 /***/ (function(module, exports, __webpack_require__) {
       
 49439 
       
 49440 "use strict";
       
 49441 
       
 49442 
       
 49443 var GetIntrinsic = __webpack_require__(58);
       
 49444 
       
 49445 var $test = GetIntrinsic('RegExp.prototype.test');
       
 49446 
       
 49447 var callBind = __webpack_require__(182);
       
 49448 
       
 49449 module.exports = function regexTester(regex) {
       
 49450 	return callBind($test, regex);
       
 49451 };
       
 49452 
       
 49453 
       
 49454 /***/ }),
       
 49455 /* 339 */
       
 49456 /***/ (function(module, exports, __webpack_require__) {
       
 49457 
       
 49458 "use strict";
       
 49459 
       
 49460 
       
 49461 var toPrimitive = __webpack_require__(340);
       
 49462 
       
 49463 // https://www.ecma-international.org/ecma-262/6.0/#sec-toprimitive
       
 49464 
       
 49465 module.exports = function ToPrimitive(input) {
       
 49466 	if (arguments.length > 1) {
       
 49467 		return toPrimitive(input, arguments[1]);
       
 49468 	}
       
 49469 	return toPrimitive(input);
       
 49470 };
       
 49471 
       
 49472 
       
 49473 /***/ }),
       
 49474 /* 340 */
       
 49475 /***/ (function(module, exports, __webpack_require__) {
       
 49476 
       
 49477 "use strict";
       
 49478 
       
 49479 
       
 49480 var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
       
 49481 
       
 49482 var isPrimitive = __webpack_require__(341);
       
 49483 var isCallable = __webpack_require__(215);
       
 49484 var isDate = __webpack_require__(221);
       
 49485 var isSymbol = __webpack_require__(187);
       
 49486 
       
 49487 var ordinaryToPrimitive = function OrdinaryToPrimitive(O, hint) {
       
 49488 	if (typeof O === 'undefined' || O === null) {
       
 49489 		throw new TypeError('Cannot call method on ' + O);
       
 49490 	}
       
 49491 	if (typeof hint !== 'string' || (hint !== 'number' && hint !== 'string')) {
       
 49492 		throw new TypeError('hint must be "string" or "number"');
       
 49493 	}
       
 49494 	var methodNames = hint === 'string' ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
       
 49495 	var method, result, i;
       
 49496 	for (i = 0; i < methodNames.length; ++i) {
       
 49497 		method = O[methodNames[i]];
       
 49498 		if (isCallable(method)) {
       
 49499 			result = method.call(O);
       
 49500 			if (isPrimitive(result)) {
       
 49501 				return result;
       
 49502 			}
       
 49503 		}
       
 49504 	}
       
 49505 	throw new TypeError('No default value');
       
 49506 };
       
 49507 
       
 49508 var GetMethod = function GetMethod(O, P) {
       
 49509 	var func = O[P];
       
 49510 	if (func !== null && typeof func !== 'undefined') {
       
 49511 		if (!isCallable(func)) {
       
 49512 			throw new TypeError(func + ' returned for property ' + P + ' of object ' + O + ' is not a function');
       
 49513 		}
       
 49514 		return func;
       
 49515 	}
       
 49516 	return void 0;
       
 49517 };
       
 49518 
       
 49519 // http://www.ecma-international.org/ecma-262/6.0/#sec-toprimitive
       
 49520 module.exports = function ToPrimitive(input) {
       
 49521 	if (isPrimitive(input)) {
       
 49522 		return input;
       
 49523 	}
       
 49524 	var hint = 'default';
       
 49525 	if (arguments.length > 1) {
       
 49526 		if (arguments[1] === String) {
       
 49527 			hint = 'string';
       
 49528 		} else if (arguments[1] === Number) {
       
 49529 			hint = 'number';
       
 49530 		}
       
 49531 	}
       
 49532 
       
 49533 	var exoticToPrim;
       
 49534 	if (hasSymbols) {
       
 49535 		if (Symbol.toPrimitive) {
       
 49536 			exoticToPrim = GetMethod(input, Symbol.toPrimitive);
       
 49537 		} else if (isSymbol(input)) {
       
 49538 			exoticToPrim = Symbol.prototype.valueOf;
       
 49539 		}
       
 49540 	}
       
 49541 	if (typeof exoticToPrim !== 'undefined') {
       
 49542 		var result = exoticToPrim.call(input, hint);
       
 49543 		if (isPrimitive(result)) {
       
 49544 			return result;
       
 49545 		}
       
 49546 		throw new TypeError('unable to convert exotic object to primitive');
       
 49547 	}
       
 49548 	if (hint === 'default' && (isDate(input) || isSymbol(input))) {
       
 49549 		hint = 'string';
       
 49550 	}
       
 49551 	return ordinaryToPrimitive(input, hint === 'default' ? 'number' : hint);
       
 49552 };
       
 49553 
       
 49554 
       
 49555 /***/ }),
       
 49556 /* 341 */
       
 49557 /***/ (function(module, exports, __webpack_require__) {
       
 49558 
       
 49559 "use strict";
       
 49560 
       
 49561 
       
 49562 module.exports = function isPrimitive(value) {
       
 49563 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
       
 49564 };
       
 49565 
       
 49566 
       
 49567 /***/ }),
       
 49568 /* 342 */
       
 49569 /***/ (function(module, exports, __webpack_require__) {
       
 49570 
       
 49571 "use strict";
       
 49572 /* WEBPACK VAR INJECTION */(function(global) {
       
 49573 
       
 49574 var origSymbol = global.Symbol;
       
 49575 var hasSymbolSham = __webpack_require__(222);
       
 49576 
       
 49577 module.exports = function hasNativeSymbols() {
       
 49578 	if (typeof origSymbol !== 'function') { return false; }
       
 49579 	if (typeof Symbol !== 'function') { return false; }
       
 49580 	if (typeof origSymbol('foo') !== 'symbol') { return false; }
       
 49581 	if (typeof Symbol('bar') !== 'symbol') { return false; }
       
 49582 
       
 49583 	return hasSymbolSham();
       
 49584 };
       
 49585 
       
 49586 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(127)))
       
 49587 
       
 49588 /***/ }),
       
 49589 /* 343 */
       
 49590 /***/ (function(module, exports, __webpack_require__) {
       
 49591 
       
 49592 "use strict";
       
 49593 
       
 49594 
       
 49595 var GetIntrinsic = __webpack_require__(58);
       
 49596 
       
 49597 var $String = GetIntrinsic('%String%');
       
 49598 var $TypeError = GetIntrinsic('%TypeError%');
       
 49599 
       
 49600 // https://www.ecma-international.org/ecma-262/6.0/#sec-tostring
       
 49601 
       
 49602 module.exports = function ToString(argument) {
       
 49603 	if (typeof argument === 'symbol') {
       
 49604 		throw new $TypeError('Cannot convert a Symbol value to a string');
       
 49605 	}
       
 49606 	return $String(argument);
       
 49607 };
       
 49608 
       
 49609 
       
 49610 /***/ }),
       
 49611 /* 344 */
       
 49612 /***/ (function(module, exports, __webpack_require__) {
       
 49613 
       
 49614 "use strict";
       
 49615 
       
 49616 
       
 49617 var GetIntrinsic = __webpack_require__(58);
       
 49618 
       
 49619 var $Object = GetIntrinsic('%Object%');
       
 49620 
       
 49621 var RequireObjectCoercible = __webpack_require__(345);
       
 49622 
       
 49623 // https://www.ecma-international.org/ecma-262/6.0/#sec-toobject
       
 49624 
       
 49625 module.exports = function ToObject(value) {
       
 49626 	RequireObjectCoercible(value);
       
 49627 	return $Object(value);
       
 49628 };
       
 49629 
       
 49630 
       
 49631 /***/ }),
       
 49632 /* 345 */
       
 49633 /***/ (function(module, exports, __webpack_require__) {
       
 49634 
       
 49635 "use strict";
       
 49636 
       
 49637 
       
 49638 module.exports = __webpack_require__(346);
       
 49639 
       
 49640 
       
 49641 /***/ }),
       
 49642 /* 346 */
       
 49643 /***/ (function(module, exports, __webpack_require__) {
       
 49644 
       
 49645 "use strict";
       
 49646 
       
 49647 
       
 49648 var GetIntrinsic = __webpack_require__(58);
       
 49649 
       
 49650 var $TypeError = GetIntrinsic('%TypeError%');
       
 49651 
       
 49652 // http://www.ecma-international.org/ecma-262/5.1/#sec-9.10
       
 49653 
       
 49654 module.exports = function CheckObjectCoercible(value, optMessage) {
       
 49655 	if (value == null) {
       
 49656 		throw new $TypeError(optMessage || ('Cannot call method on ' + value));
       
 49657 	}
       
 49658 	return value;
       
 49659 };
       
 49660 
       
 49661 
       
 49662 /***/ }),
       
 49663 /* 347 */
       
 49664 /***/ (function(module, exports, __webpack_require__) {
       
 49665 
       
 49666 "use strict";
       
 49667 
       
 49668 
       
 49669 var define = __webpack_require__(101);
       
 49670 var getPolyfill = __webpack_require__(223);
       
 49671 
       
 49672 module.exports = function shimFlat() {
       
 49673 	var polyfill = getPolyfill();
       
 49674 	define(
       
 49675 		Array.prototype,
       
 49676 		{ flat: polyfill },
       
 49677 		{ flat: function () { return Array.prototype.flat !== polyfill; } }
       
 49678 	);
       
 49679 	return polyfill;
       
 49680 };
       
 49681 
       
 49682 
       
 49683 /***/ }),
       
 49684 /* 348 */
       
 49685 /***/ (function(module, exports, __webpack_require__) {
       
 49686 
       
 49687 "use strict";
       
 49688 /* WEBPACK VAR INJECTION */(function(global) {
       
 49689 
       
 49690 var define = __webpack_require__(101);
       
 49691 var isSymbol = __webpack_require__(187);
       
 49692 
       
 49693 var globalKey = '__ global cache key __';
       
 49694 /* istanbul ignore else */
       
 49695 // eslint-disable-next-line no-restricted-properties
       
 49696 if (typeof Symbol === 'function' && isSymbol(Symbol('foo')) && typeof Symbol['for'] === 'function') {
       
 49697 	// eslint-disable-next-line no-restricted-properties
       
 49698 	globalKey = Symbol['for'](globalKey);
       
 49699 }
       
 49700 
       
 49701 var trueThunk = function () {
       
 49702 	return true;
       
 49703 };
       
 49704 
       
 49705 var ensureCache = function ensureCache() {
       
 49706 	if (!global[globalKey]) {
       
 49707 		var properties = {};
       
 49708 		properties[globalKey] = {};
       
 49709 		var predicates = {};
       
 49710 		predicates[globalKey] = trueThunk;
       
 49711 		define(global, properties, predicates);
       
 49712 	}
       
 49713 	return global[globalKey];
       
 49714 };
       
 49715 
       
 49716 var cache = ensureCache();
       
 49717 
       
 49718 var isPrimitive = function isPrimitive(val) {
       
 49719 	return val === null || (typeof val !== 'object' && typeof val !== 'function');
       
 49720 };
       
 49721 
       
 49722 var getPrimitiveKey = function getPrimitiveKey(val) {
       
 49723 	if (isSymbol(val)) {
       
 49724 		return Symbol.prototype.valueOf.call(val);
       
 49725 	}
       
 49726 	return typeof val + ' | ' + String(val);
       
 49727 };
       
 49728 
       
 49729 var requirePrimitiveKey = function requirePrimitiveKey(val) {
       
 49730 	if (!isPrimitive(val)) {
       
 49731 		throw new TypeError('key must not be an object');
       
 49732 	}
       
 49733 };
       
 49734 
       
 49735 var globalCache = {
       
 49736 	clear: function clear() {
       
 49737 		delete global[globalKey];
       
 49738 		cache = ensureCache();
       
 49739 	},
       
 49740 
       
 49741 	'delete': function deleteKey(key) {
       
 49742 		requirePrimitiveKey(key);
       
 49743 		delete cache[getPrimitiveKey(key)];
       
 49744 		return !globalCache.has(key);
       
 49745 	},
       
 49746 
       
 49747 	get: function get(key) {
       
 49748 		requirePrimitiveKey(key);
       
 49749 		return cache[getPrimitiveKey(key)];
       
 49750 	},
       
 49751 
       
 49752 	has: function has(key) {
       
 49753 		requirePrimitiveKey(key);
       
 49754 		return getPrimitiveKey(key) in cache;
       
 49755 	},
       
 49756 
       
 49757 	set: function set(key, value) {
       
 49758 		requirePrimitiveKey(key);
       
 49759 		var primitiveKey = getPrimitiveKey(key);
       
 49760 		var props = {};
       
 49761 		props[primitiveKey] = value;
       
 49762 		var predicates = {};
       
 49763 		predicates[primitiveKey] = trueThunk;
       
 49764 		define(cache, props, predicates);
       
 49765 		return globalCache.has(key);
       
 49766 	},
       
 49767 
       
 49768 	setIfMissingThenGet: function setIfMissingThenGet(key, valueThunk) {
       
 49769 		if (globalCache.has(key)) {
       
 49770 			return globalCache.get(key);
       
 49771 		}
       
 49772 		var item = valueThunk();
       
 49773 		globalCache.set(key, item);
       
 49774 		return item;
       
 49775 	}
       
 49776 };
       
 49777 
       
 49778 module.exports = globalCache;
       
 49779 
       
 49780 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(127)))
       
 49781 
       
 49782 /***/ }),
       
 49783 /* 349 */
       
 49784 /***/ (function(module, exports) {
       
 49785 
       
 49786 Object.defineProperty(exports, "__esModule", {
       
 49787   value: true
       
 49788 });
       
 49789 var GLOBAL_CACHE_KEY = 'reactWithStylesInterfaceCSS';
       
 49790 var MAX_SPECIFICITY = 20;
       
 49791 
       
 49792 exports.GLOBAL_CACHE_KEY = GLOBAL_CACHE_KEY;
       
 49793 exports.MAX_SPECIFICITY = MAX_SPECIFICITY;
       
 49794 
       
 49795 /***/ }),
       
 49796 /* 350 */
       
 49797 /***/ (function(module, exports) {
       
 49798 
       
 49799 Object.defineProperty(exports, "__esModule", {
       
 49800   value: true
       
 49801 });
       
 49802 exports['default'] = getClassName;
       
 49803 /**
       
 49804  * Construct a class name.
       
 49805  *
       
 49806  * namespace {String} Used to construct unique class names.
       
 49807  * styleName {String} Name identifying the specific style.
       
 49808  *
       
 49809  * Return the class name.
       
 49810  */
       
 49811 function getClassName(namespace, styleName) {
       
 49812   var namespaceSegment = namespace.length > 0 ? String(namespace) + '__' : '';
       
 49813   return '' + namespaceSegment + String(styleName);
       
 49814 }
       
 49815 
       
 49816 /***/ }),
       
 49817 /* 351 */
       
 49818 /***/ (function(module, exports) {
       
 49819 
       
 49820 Object.defineProperty(exports, "__esModule", {
       
 49821   value: true
       
 49822 });
       
 49823 // This function takes an array of styles and separates them into styles that
       
 49824 // are handled by Aphrodite and inline styles.
       
 49825 function separateStyles(stylesArray) {
       
 49826   var classNames = [];
       
 49827 
       
 49828   // Since determining if an Object is empty requires collecting all of its
       
 49829   // keys, and we want the best performance in this code because we are in the
       
 49830   // render path, we are going to do a little bookkeeping ourselves.
       
 49831   var hasInlineStyles = false;
       
 49832   var inlineStyles = {};
       
 49833 
       
 49834   // This is run on potentially every node in the tree when rendering, where
       
 49835   // performance is critical. Normally we would prefer using `forEach`, but
       
 49836   // old-fashioned for loops are faster so that's what we have chosen here.
       
 49837   for (var i = 0; i < stylesArray.length; i++) {
       
 49838     // eslint-disable-line no-plusplus
       
 49839     var style = stylesArray[i];
       
 49840 
       
 49841     // If this  style is falsy, we just want to disregard it. This allows for
       
 49842     // syntax like:
       
 49843     //
       
 49844     //   css(isFoo && styles.foo)
       
 49845     if (style) {
       
 49846       if (typeof style === 'string') {
       
 49847         classNames.push(style);
       
 49848       } else {
       
 49849         Object.assign(inlineStyles, style);
       
 49850         hasInlineStyles = true;
       
 49851       }
       
 49852     }
       
 49853   }
       
 49854 
       
 49855   return {
       
 49856     classNames: classNames,
       
 49857     hasInlineStyles: hasInlineStyles,
       
 49858     inlineStyles: inlineStyles
       
 49859   };
       
 49860 }
       
 49861 
       
 49862 exports['default'] = separateStyles;
       
 49863 
       
 49864 /***/ }),
       
 49865 /* 352 */
       
 49866 /***/ (function(module, exports, __webpack_require__) {
       
 49867 
       
 49868 "use strict";
       
 49869 
       
 49870 
       
 49871 Object.defineProperty(exports, "__esModule", {
       
 49872   value: true
       
 49873 });
       
 49874 exports['default'] = registerInterfaceWithDefaultTheme;
       
 49875 
       
 49876 var _ThemedStyleSheet = __webpack_require__(224);
       
 49877 
       
 49878 var _ThemedStyleSheet2 = _interopRequireDefault(_ThemedStyleSheet);
       
 49879 
       
 49880 var _DefaultTheme = __webpack_require__(225);
       
 49881 
       
 49882 var _DefaultTheme2 = _interopRequireDefault(_DefaultTheme);
       
 49883 
       
 49884 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 49885 
       
 49886 function registerInterfaceWithDefaultTheme(reactWithStylesInterface) {
       
 49887   _ThemedStyleSheet2['default'].registerInterface(reactWithStylesInterface);
       
 49888   _ThemedStyleSheet2['default'].registerTheme(_DefaultTheme2['default']);
       
 49889 }
       
 49890 
       
 49891 /***/ }),
       
 49892 /* 353 */
       
 49893 /***/ (function(module, exports, __webpack_require__) {
       
 49894 
       
 49895 "use strict";
       
 49896 
       
 49897 
       
 49898 var define = __webpack_require__(101);
       
 49899 var getPolyfill = __webpack_require__(227);
       
 49900 
       
 49901 module.exports = function shimAssign() {
       
 49902 	var polyfill = getPolyfill();
       
 49903 	define(
       
 49904 		Object,
       
 49905 		{ assign: polyfill },
       
 49906 		{ assign: function () { return Object.assign !== polyfill; } }
       
 49907 	);
       
 49908 	return polyfill;
       
 49909 };
       
 49910 
       
 49911 
       
 49912 /***/ }),
       
 49913 /* 354 */
       
 49914 /***/ (function(module, exports, __webpack_require__) {
       
 49915 
       
 49916 var moment = __webpack_require__(43);
       
 49917 
       
 49918 function isValidMoment(testMoment) {
       
 49919   if (typeof moment.isMoment === 'function' && !moment.isMoment(testMoment)) {
       
 49920     return false;
       
 49921   }
       
 49922 
       
 49923   /* istanbul ignore else  */
       
 49924   if (typeof testMoment.isValid === 'function') {
       
 49925     // moment 1.7.0+
       
 49926     return testMoment.isValid();
       
 49927   }
       
 49928 
       
 49929   /* istanbul ignore next */
       
 49930   return !isNaN(testMoment);
       
 49931 }
       
 49932 
       
 49933 module.exports = {
       
 49934   isValidMoment : isValidMoment,
       
 49935 };
       
 49936 
       
 49937 
       
 49938 /***/ }),
       
 49939 /* 355 */
       
 49940 /***/ (function(module, exports) {
       
 49941 
       
 49942 var messages = {
       
 49943   invalidPredicate: '`predicate` must be a function',
       
 49944   invalidPropValidator: '`propValidator` must be a function',
       
 49945   requiredCore: 'is marked as required',
       
 49946   invalidTypeCore: 'Invalid input type',
       
 49947   predicateFailureCore: 'Failed to succeed with predicate',
       
 49948   anonymousMessage: '<<anonymous>>',
       
 49949   baseInvalidMessage: 'Invalid ',
       
 49950 };
       
 49951 
       
 49952 function constructPropValidatorVariations(propValidator) {
       
 49953   if (typeof propValidator !== 'function') {
       
 49954     throw new Error(messages.invalidPropValidator);
       
 49955   }
       
 49956 
       
 49957   var requiredPropValidator = propValidator.bind(null, false, null);
       
 49958   requiredPropValidator.isRequired = propValidator.bind(null, true, null);
       
 49959 
       
 49960   requiredPropValidator.withPredicate = function predicateApplication(predicate) {
       
 49961     if (typeof predicate !== 'function') {
       
 49962       throw new Error(messages.invalidPredicate);
       
 49963     }
       
 49964     var basePropValidator = propValidator.bind(null, false, predicate);
       
 49965     basePropValidator.isRequired = propValidator.bind(null, true, predicate);
       
 49966     return basePropValidator;
       
 49967   };
       
 49968 
       
 49969   return requiredPropValidator;
       
 49970 }
       
 49971 
       
 49972 function createInvalidRequiredErrorMessage(propName, componentName, value) {
       
 49973   return new Error(
       
 49974     'The prop `' + propName + '` ' + messages.requiredCore +
       
 49975     ' in `' + componentName + '`, but its value is `' + value + '`.'
       
 49976   );
       
 49977 }
       
 49978 
       
 49979 var independentGuardianValue = -1;
       
 49980 
       
 49981 function preValidationRequireCheck(isRequired, componentName, propFullName, propValue) {
       
 49982   var isPropValueUndefined = typeof propValue === 'undefined';
       
 49983   var isPropValueNull = propValue === null;
       
 49984 
       
 49985   if (isRequired) {
       
 49986     if (isPropValueUndefined) {
       
 49987       return createInvalidRequiredErrorMessage(propFullName, componentName, 'undefined');
       
 49988     } else if (isPropValueNull) {
       
 49989       return createInvalidRequiredErrorMessage(propFullName, componentName, 'null');
       
 49990     }
       
 49991   }
       
 49992 
       
 49993   if (isPropValueUndefined || isPropValueNull) {
       
 49994     return null;
       
 49995   }
       
 49996 
       
 49997   return independentGuardianValue;
       
 49998 }
       
 49999 
       
 50000 function createMomentChecker(type, typeValidator, validator, momentType) {
       
 50001 
       
 50002   function propValidator(
       
 50003     isRequired, // Bound parameter to indicate with the propType is required
       
 50004     predicate, // Bound parameter to allow user to add dynamic validation
       
 50005     props,
       
 50006     propName,
       
 50007     componentName,
       
 50008     location,
       
 50009     propFullName
       
 50010   ) {
       
 50011     var propValue = props[ propName ];
       
 50012     var propType = typeof propValue;
       
 50013 
       
 50014     componentName = componentName || messages.anonymousMessage;
       
 50015     propFullName = propFullName || propName;
       
 50016 
       
 50017     var preValidationRequireCheckValue = preValidationRequireCheck(
       
 50018       isRequired, componentName, propFullName, propValue
       
 50019     );
       
 50020 
       
 50021     if (preValidationRequireCheckValue !== independentGuardianValue) {
       
 50022       return preValidationRequireCheckValue;
       
 50023     }
       
 50024 
       
 50025     if (typeValidator && !typeValidator(propValue)) {
       
 50026       return new Error(
       
 50027         messages.invalidTypeCore + ': `' + propName + '` of type `' + propType + '` ' +
       
 50028         'supplied to `' + componentName + '`, expected `' + type + '`.'
       
 50029       );
       
 50030     }
       
 50031 
       
 50032     if (!validator(propValue)) {
       
 50033       return new Error(
       
 50034         messages.baseInvalidMessage + location + ' `' + propName + '` of type `' + propType + '` ' +
       
 50035         'supplied to `' + componentName + '`, expected `' + momentType + '`.'
       
 50036       );
       
 50037     }
       
 50038 
       
 50039     if (predicate && !predicate(propValue)) {
       
 50040       var predicateName = predicate.name || messages.anonymousMessage;
       
 50041       return new Error(
       
 50042         messages.baseInvalidMessage + location + ' `' + propName + '` of type `' + propType + '` ' +
       
 50043         'supplied to `' + componentName + '`. ' + messages.predicateFailureCore + ' `' +
       
 50044         predicateName + '`.'
       
 50045       );
       
 50046     }
       
 50047 
       
 50048     return null;
       
 50049 
       
 50050   }
       
 50051 
       
 50052   return constructPropValidatorVariations(propValidator);
       
 50053 
       
 50054 }
       
 50055 
       
 50056 module.exports = {
       
 50057   constructPropValidatorVariations: constructPropValidatorVariations,
       
 50058   createMomentChecker: createMomentChecker,
       
 50059   messages: messages,
       
 50060 };
       
 50061 
       
 50062 
       
 50063 /***/ }),
       
 50064 /* 356 */
       
 50065 /***/ (function(module, exports, __webpack_require__) {
       
 50066 
       
 50067 "use strict";
       
 50068 
       
 50069 
       
 50070 function noop() {
       
 50071   return null;
       
 50072 }
       
 50073 
       
 50074 noop.isRequired = noop;
       
 50075 
       
 50076 function noopThunk() {
       
 50077   return noop;
       
 50078 }
       
 50079 
       
 50080 module.exports = {
       
 50081   and: noopThunk,
       
 50082   between: noopThunk,
       
 50083   booleanSome: noopThunk,
       
 50084   childrenHavePropXorChildren: noopThunk,
       
 50085   childrenOf: noopThunk,
       
 50086   childrenOfType: noopThunk,
       
 50087   childrenSequenceOf: noopThunk,
       
 50088   componentWithName: noopThunk,
       
 50089   disallowedIf: noopThunk,
       
 50090   elementType: noopThunk,
       
 50091   empty: noopThunk,
       
 50092   explicitNull: noopThunk,
       
 50093   forbidExtraProps: Object,
       
 50094   integer: noopThunk,
       
 50095   keysOf: noopThunk,
       
 50096   mutuallyExclusiveProps: noopThunk,
       
 50097   mutuallyExclusiveTrueProps: noopThunk,
       
 50098   nChildren: noopThunk,
       
 50099   nonNegativeInteger: noop,
       
 50100   nonNegativeNumber: noopThunk,
       
 50101   numericString: noopThunk,
       
 50102   object: noopThunk,
       
 50103   or: noopThunk,
       
 50104   predicate: noopThunk,
       
 50105   range: noopThunk,
       
 50106   ref: noopThunk,
       
 50107   requiredBy: noopThunk,
       
 50108   restrictedProp: noopThunk,
       
 50109   sequenceOf: noopThunk,
       
 50110   shape: noopThunk,
       
 50111   stringEndsWith: noopThunk,
       
 50112   stringStartsWith: noopThunk,
       
 50113   uniqueArray: noopThunk,
       
 50114   uniqueArrayOf: noopThunk,
       
 50115   valuesOf: noopThunk,
       
 50116   withShape: noopThunk
       
 50117 };
       
 50118 
       
 50119 
       
 50120 /***/ }),
       
 50121 /* 357 */
       
 50122 /***/ (function(module, exports, __webpack_require__) {
       
 50123 
       
 50124 "use strict";
       
 50125 
       
 50126 
       
 50127 module.exports = __webpack_require__(358);
       
 50128 
       
 50129 
       
 50130 /***/ }),
       
 50131 /* 358 */
       
 50132 /***/ (function(module, exports, __webpack_require__) {
       
 50133 
       
 50134 "use strict";
       
 50135 
       
 50136 
       
 50137 var ES2015 = __webpack_require__(359);
       
 50138 var assign = __webpack_require__(234);
       
 50139 
       
 50140 var ES2016 = assign(assign({}, ES2015), {
       
 50141 	// https://github.com/tc39/ecma262/pull/60
       
 50142 	SameValueNonNumber: function SameValueNonNumber(x, y) {
       
 50143 		if (typeof x === 'number' || typeof x !== typeof y) {
       
 50144 			throw new TypeError('SameValueNonNumber requires two non-number values of the same type.');
       
 50145 		}
       
 50146 		return this.SameValue(x, y);
       
 50147 	}
       
 50148 });
       
 50149 
       
 50150 module.exports = ES2016;
       
 50151 
       
 50152 
       
 50153 /***/ }),
       
 50154 /* 359 */
       
 50155 /***/ (function(module, exports, __webpack_require__) {
       
 50156 
       
 50157 "use strict";
       
 50158 
       
 50159 
       
 50160 var has = __webpack_require__(91);
       
 50161 var toPrimitive = __webpack_require__(360);
       
 50162 var keys = __webpack_require__(181);
       
 50163 
       
 50164 var GetIntrinsic = __webpack_require__(189);
       
 50165 
       
 50166 var $TypeError = GetIntrinsic('%TypeError%');
       
 50167 var $SyntaxError = GetIntrinsic('%SyntaxError%');
       
 50168 var $Array = GetIntrinsic('%Array%');
       
 50169 var $String = GetIntrinsic('%String%');
       
 50170 var $Object = GetIntrinsic('%Object%');
       
 50171 var $Number = GetIntrinsic('%Number%');
       
 50172 var $Symbol = GetIntrinsic('%Symbol%', true);
       
 50173 var $RegExp = GetIntrinsic('%RegExp%');
       
 50174 
       
 50175 var hasSymbols = !!$Symbol;
       
 50176 
       
 50177 var assertRecord = __webpack_require__(231);
       
 50178 var $isNaN = __webpack_require__(232);
       
 50179 var $isFinite = __webpack_require__(233);
       
 50180 var MAX_SAFE_INTEGER = $Number.MAX_SAFE_INTEGER || Math.pow(2, 53) - 1;
       
 50181 
       
 50182 var assign = __webpack_require__(234);
       
 50183 var sign = __webpack_require__(235);
       
 50184 var mod = __webpack_require__(236);
       
 50185 var isPrimitive = __webpack_require__(362);
       
 50186 var parseInteger = parseInt;
       
 50187 var bind = __webpack_require__(118);
       
 50188 var arraySlice = bind.call(Function.call, $Array.prototype.slice);
       
 50189 var strSlice = bind.call(Function.call, $String.prototype.slice);
       
 50190 var isBinary = bind.call(Function.call, $RegExp.prototype.test, /^0b[01]+$/i);
       
 50191 var isOctal = bind.call(Function.call, $RegExp.prototype.test, /^0o[0-7]+$/i);
       
 50192 var regexExec = bind.call(Function.call, $RegExp.prototype.exec);
       
 50193 var nonWS = ['\u0085', '\u200b', '\ufffe'].join('');
       
 50194 var nonWSregex = new $RegExp('[' + nonWS + ']', 'g');
       
 50195 var hasNonWS = bind.call(Function.call, $RegExp.prototype.test, nonWSregex);
       
 50196 var invalidHexLiteral = /^[-+]0x[0-9a-f]+$/i;
       
 50197 var isInvalidHexLiteral = bind.call(Function.call, $RegExp.prototype.test, invalidHexLiteral);
       
 50198 var $charCodeAt = bind.call(Function.call, $String.prototype.charCodeAt);
       
 50199 
       
 50200 var toStr = bind.call(Function.call, Object.prototype.toString);
       
 50201 
       
 50202 var $NumberValueOf = bind.call(Function.call, GetIntrinsic('%NumberPrototype%').valueOf);
       
 50203 var $BooleanValueOf = bind.call(Function.call, GetIntrinsic('%BooleanPrototype%').valueOf);
       
 50204 var $StringValueOf = bind.call(Function.call, GetIntrinsic('%StringPrototype%').valueOf);
       
 50205 var $DateValueOf = bind.call(Function.call, GetIntrinsic('%DatePrototype%').valueOf);
       
 50206 
       
 50207 var $floor = Math.floor;
       
 50208 var $abs = Math.abs;
       
 50209 
       
 50210 var $ObjectCreate = Object.create;
       
 50211 var $gOPD = $Object.getOwnPropertyDescriptor;
       
 50212 
       
 50213 var $isExtensible = $Object.isExtensible;
       
 50214 
       
 50215 var $defineProperty = $Object.defineProperty;
       
 50216 
       
 50217 // whitespace from: http://es5.github.io/#x15.5.4.20
       
 50218 // implementation from https://github.com/es-shims/es5-shim/blob/v3.4.0/es5-shim.js#L1304-L1324
       
 50219 var ws = [
       
 50220 	'\x09\x0A\x0B\x0C\x0D\x20\xA0\u1680\u180E\u2000\u2001\u2002\u2003',
       
 50221 	'\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028',
       
 50222 	'\u2029\uFEFF'
       
 50223 ].join('');
       
 50224 var trimRegex = new RegExp('(^[' + ws + ']+)|([' + ws + ']+$)', 'g');
       
 50225 var replace = bind.call(Function.call, $String.prototype.replace);
       
 50226 var trim = function (value) {
       
 50227 	return replace(value, trimRegex, '');
       
 50228 };
       
 50229 
       
 50230 var ES5 = __webpack_require__(363);
       
 50231 
       
 50232 var hasRegExpMatcher = __webpack_require__(365);
       
 50233 
       
 50234 // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-abstract-operations
       
 50235 var ES6 = assign(assign({}, ES5), {
       
 50236 
       
 50237 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-call-f-v-args
       
 50238 	Call: function Call(F, V) {
       
 50239 		var args = arguments.length > 2 ? arguments[2] : [];
       
 50240 		if (!this.IsCallable(F)) {
       
 50241 			throw new $TypeError(F + ' is not a function');
       
 50242 		}
       
 50243 		return F.apply(V, args);
       
 50244 	},
       
 50245 
       
 50246 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toprimitive
       
 50247 	ToPrimitive: toPrimitive,
       
 50248 
       
 50249 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toboolean
       
 50250 	// ToBoolean: ES5.ToBoolean,
       
 50251 
       
 50252 	// https://ecma-international.org/ecma-262/6.0/#sec-tonumber
       
 50253 	ToNumber: function ToNumber(argument) {
       
 50254 		var value = isPrimitive(argument) ? argument : toPrimitive(argument, $Number);
       
 50255 		if (typeof value === 'symbol') {
       
 50256 			throw new $TypeError('Cannot convert a Symbol value to a number');
       
 50257 		}
       
 50258 		if (typeof value === 'string') {
       
 50259 			if (isBinary(value)) {
       
 50260 				return this.ToNumber(parseInteger(strSlice(value, 2), 2));
       
 50261 			} else if (isOctal(value)) {
       
 50262 				return this.ToNumber(parseInteger(strSlice(value, 2), 8));
       
 50263 			} else if (hasNonWS(value) || isInvalidHexLiteral(value)) {
       
 50264 				return NaN;
       
 50265 			} else {
       
 50266 				var trimmed = trim(value);
       
 50267 				if (trimmed !== value) {
       
 50268 					return this.ToNumber(trimmed);
       
 50269 				}
       
 50270 			}
       
 50271 		}
       
 50272 		return $Number(value);
       
 50273 	},
       
 50274 
       
 50275 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tointeger
       
 50276 	// ToInteger: ES5.ToNumber,
       
 50277 
       
 50278 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint32
       
 50279 	// ToInt32: ES5.ToInt32,
       
 50280 
       
 50281 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint32
       
 50282 	// ToUint32: ES5.ToUint32,
       
 50283 
       
 50284 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint16
       
 50285 	ToInt16: function ToInt16(argument) {
       
 50286 		var int16bit = this.ToUint16(argument);
       
 50287 		return int16bit >= 0x8000 ? int16bit - 0x10000 : int16bit;
       
 50288 	},
       
 50289 
       
 50290 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint16
       
 50291 	// ToUint16: ES5.ToUint16,
       
 50292 
       
 50293 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toint8
       
 50294 	ToInt8: function ToInt8(argument) {
       
 50295 		var int8bit = this.ToUint8(argument);
       
 50296 		return int8bit >= 0x80 ? int8bit - 0x100 : int8bit;
       
 50297 	},
       
 50298 
       
 50299 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint8
       
 50300 	ToUint8: function ToUint8(argument) {
       
 50301 		var number = this.ToNumber(argument);
       
 50302 		if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; }
       
 50303 		var posInt = sign(number) * $floor($abs(number));
       
 50304 		return mod(posInt, 0x100);
       
 50305 	},
       
 50306 
       
 50307 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-touint8clamp
       
 50308 	ToUint8Clamp: function ToUint8Clamp(argument) {
       
 50309 		var number = this.ToNumber(argument);
       
 50310 		if ($isNaN(number) || number <= 0) { return 0; }
       
 50311 		if (number >= 0xFF) { return 0xFF; }
       
 50312 		var f = $floor(argument);
       
 50313 		if (f + 0.5 < number) { return f + 1; }
       
 50314 		if (number < f + 0.5) { return f; }
       
 50315 		if (f % 2 !== 0) { return f + 1; }
       
 50316 		return f;
       
 50317 	},
       
 50318 
       
 50319 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tostring
       
 50320 	ToString: function ToString(argument) {
       
 50321 		if (typeof argument === 'symbol') {
       
 50322 			throw new $TypeError('Cannot convert a Symbol value to a string');
       
 50323 		}
       
 50324 		return $String(argument);
       
 50325 	},
       
 50326 
       
 50327 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-toobject
       
 50328 	ToObject: function ToObject(value) {
       
 50329 		this.RequireObjectCoercible(value);
       
 50330 		return $Object(value);
       
 50331 	},
       
 50332 
       
 50333 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-topropertykey
       
 50334 	ToPropertyKey: function ToPropertyKey(argument) {
       
 50335 		var key = this.ToPrimitive(argument, $String);
       
 50336 		return typeof key === 'symbol' ? key : this.ToString(key);
       
 50337 	},
       
 50338 
       
 50339 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-tolength
       
 50340 	ToLength: function ToLength(argument) {
       
 50341 		var len = this.ToInteger(argument);
       
 50342 		if (len <= 0) { return 0; } // includes converting -0 to +0
       
 50343 		if (len > MAX_SAFE_INTEGER) { return MAX_SAFE_INTEGER; }
       
 50344 		return len;
       
 50345 	},
       
 50346 
       
 50347 	// https://ecma-international.org/ecma-262/6.0/#sec-canonicalnumericindexstring
       
 50348 	CanonicalNumericIndexString: function CanonicalNumericIndexString(argument) {
       
 50349 		if (toStr(argument) !== '[object String]') {
       
 50350 			throw new $TypeError('must be a string');
       
 50351 		}
       
 50352 		if (argument === '-0') { return -0; }
       
 50353 		var n = this.ToNumber(argument);
       
 50354 		if (this.SameValue(this.ToString(n), argument)) { return n; }
       
 50355 		return void 0;
       
 50356 	},
       
 50357 
       
 50358 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-requireobjectcoercible
       
 50359 	RequireObjectCoercible: ES5.CheckObjectCoercible,
       
 50360 
       
 50361 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isarray
       
 50362 	IsArray: $Array.isArray || function IsArray(argument) {
       
 50363 		return toStr(argument) === '[object Array]';
       
 50364 	},
       
 50365 
       
 50366 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-iscallable
       
 50367 	// IsCallable: ES5.IsCallable,
       
 50368 
       
 50369 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isconstructor
       
 50370 	IsConstructor: function IsConstructor(argument) {
       
 50371 		return typeof argument === 'function' && !!argument.prototype; // unfortunately there's no way to truly check this without try/catch `new argument`
       
 50372 	},
       
 50373 
       
 50374 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isextensible-o
       
 50375 	IsExtensible: Object.preventExtensions
       
 50376 		? function IsExtensible(obj) {
       
 50377 			if (isPrimitive(obj)) {
       
 50378 				return false;
       
 50379 			}
       
 50380 			return $isExtensible(obj);
       
 50381 		}
       
 50382 		: function isExtensible(obj) { return true; }, // eslint-disable-line no-unused-vars
       
 50383 
       
 50384 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-isinteger
       
 50385 	IsInteger: function IsInteger(argument) {
       
 50386 		if (typeof argument !== 'number' || $isNaN(argument) || !$isFinite(argument)) {
       
 50387 			return false;
       
 50388 		}
       
 50389 		var abs = $abs(argument);
       
 50390 		return $floor(abs) === abs;
       
 50391 	},
       
 50392 
       
 50393 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-ispropertykey
       
 50394 	IsPropertyKey: function IsPropertyKey(argument) {
       
 50395 		return typeof argument === 'string' || typeof argument === 'symbol';
       
 50396 	},
       
 50397 
       
 50398 	// https://ecma-international.org/ecma-262/6.0/#sec-isregexp
       
 50399 	IsRegExp: function IsRegExp(argument) {
       
 50400 		if (!argument || typeof argument !== 'object') {
       
 50401 			return false;
       
 50402 		}
       
 50403 		if (hasSymbols) {
       
 50404 			var isRegExp = argument[$Symbol.match];
       
 50405 			if (typeof isRegExp !== 'undefined') {
       
 50406 				return ES5.ToBoolean(isRegExp);
       
 50407 			}
       
 50408 		}
       
 50409 		return hasRegExpMatcher(argument);
       
 50410 	},
       
 50411 
       
 50412 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevalue
       
 50413 	// SameValue: ES5.SameValue,
       
 50414 
       
 50415 	// https://people.mozilla.org/~jorendorff/es6-draft.html#sec-samevaluezero
       
 50416 	SameValueZero: function SameValueZero(x, y) {
       
 50417 		return (x === y) || ($isNaN(x) && $isNaN(y));
       
 50418 	},
       
 50419 
       
 50420 	/**
       
 50421 	 * 7.3.2 GetV (V, P)
       
 50422 	 * 1. Assert: IsPropertyKey(P) is true.
       
 50423 	 * 2. Let O be ToObject(V).
       
 50424 	 * 3. ReturnIfAbrupt(O).
       
 50425 	 * 4. Return O.[[Get]](P, V).
       
 50426 	 */
       
 50427 	GetV: function GetV(V, P) {
       
 50428 		// 7.3.2.1
       
 50429 		if (!this.IsPropertyKey(P)) {
       
 50430 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50431 		}
       
 50432 
       
 50433 		// 7.3.2.2-3
       
 50434 		var O = this.ToObject(V);
       
 50435 
       
 50436 		// 7.3.2.4
       
 50437 		return O[P];
       
 50438 	},
       
 50439 
       
 50440 	/**
       
 50441 	 * 7.3.9 - https://ecma-international.org/ecma-262/6.0/#sec-getmethod
       
 50442 	 * 1. Assert: IsPropertyKey(P) is true.
       
 50443 	 * 2. Let func be GetV(O, P).
       
 50444 	 * 3. ReturnIfAbrupt(func).
       
 50445 	 * 4. If func is either undefined or null, return undefined.
       
 50446 	 * 5. If IsCallable(func) is false, throw a TypeError exception.
       
 50447 	 * 6. Return func.
       
 50448 	 */
       
 50449 	GetMethod: function GetMethod(O, P) {
       
 50450 		// 7.3.9.1
       
 50451 		if (!this.IsPropertyKey(P)) {
       
 50452 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50453 		}
       
 50454 
       
 50455 		// 7.3.9.2
       
 50456 		var func = this.GetV(O, P);
       
 50457 
       
 50458 		// 7.3.9.4
       
 50459 		if (func == null) {
       
 50460 			return void 0;
       
 50461 		}
       
 50462 
       
 50463 		// 7.3.9.5
       
 50464 		if (!this.IsCallable(func)) {
       
 50465 			throw new $TypeError(P + 'is not a function');
       
 50466 		}
       
 50467 
       
 50468 		// 7.3.9.6
       
 50469 		return func;
       
 50470 	},
       
 50471 
       
 50472 	/**
       
 50473 	 * 7.3.1 Get (O, P) - https://ecma-international.org/ecma-262/6.0/#sec-get-o-p
       
 50474 	 * 1. Assert: Type(O) is Object.
       
 50475 	 * 2. Assert: IsPropertyKey(P) is true.
       
 50476 	 * 3. Return O.[[Get]](P, O).
       
 50477 	 */
       
 50478 	Get: function Get(O, P) {
       
 50479 		// 7.3.1.1
       
 50480 		if (this.Type(O) !== 'Object') {
       
 50481 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50482 		}
       
 50483 		// 7.3.1.2
       
 50484 		if (!this.IsPropertyKey(P)) {
       
 50485 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50486 		}
       
 50487 		// 7.3.1.3
       
 50488 		return O[P];
       
 50489 	},
       
 50490 
       
 50491 	Type: function Type(x) {
       
 50492 		if (typeof x === 'symbol') {
       
 50493 			return 'Symbol';
       
 50494 		}
       
 50495 		return ES5.Type(x);
       
 50496 	},
       
 50497 
       
 50498 	// https://ecma-international.org/ecma-262/6.0/#sec-speciesconstructor
       
 50499 	SpeciesConstructor: function SpeciesConstructor(O, defaultConstructor) {
       
 50500 		if (this.Type(O) !== 'Object') {
       
 50501 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50502 		}
       
 50503 		var C = O.constructor;
       
 50504 		if (typeof C === 'undefined') {
       
 50505 			return defaultConstructor;
       
 50506 		}
       
 50507 		if (this.Type(C) !== 'Object') {
       
 50508 			throw new $TypeError('O.constructor is not an Object');
       
 50509 		}
       
 50510 		var S = hasSymbols && $Symbol.species ? C[$Symbol.species] : void 0;
       
 50511 		if (S == null) {
       
 50512 			return defaultConstructor;
       
 50513 		}
       
 50514 		if (this.IsConstructor(S)) {
       
 50515 			return S;
       
 50516 		}
       
 50517 		throw new $TypeError('no constructor found');
       
 50518 	},
       
 50519 
       
 50520 	// https://ecma-international.org/ecma-262/6.0/#sec-completepropertydescriptor
       
 50521 	CompletePropertyDescriptor: function CompletePropertyDescriptor(Desc) {
       
 50522 		assertRecord(this, 'Property Descriptor', 'Desc', Desc);
       
 50523 
       
 50524 		if (this.IsGenericDescriptor(Desc) || this.IsDataDescriptor(Desc)) {
       
 50525 			if (!has(Desc, '[[Value]]')) {
       
 50526 				Desc['[[Value]]'] = void 0;
       
 50527 			}
       
 50528 			if (!has(Desc, '[[Writable]]')) {
       
 50529 				Desc['[[Writable]]'] = false;
       
 50530 			}
       
 50531 		} else {
       
 50532 			if (!has(Desc, '[[Get]]')) {
       
 50533 				Desc['[[Get]]'] = void 0;
       
 50534 			}
       
 50535 			if (!has(Desc, '[[Set]]')) {
       
 50536 				Desc['[[Set]]'] = void 0;
       
 50537 			}
       
 50538 		}
       
 50539 		if (!has(Desc, '[[Enumerable]]')) {
       
 50540 			Desc['[[Enumerable]]'] = false;
       
 50541 		}
       
 50542 		if (!has(Desc, '[[Configurable]]')) {
       
 50543 			Desc['[[Configurable]]'] = false;
       
 50544 		}
       
 50545 		return Desc;
       
 50546 	},
       
 50547 
       
 50548 	// https://ecma-international.org/ecma-262/6.0/#sec-set-o-p-v-throw
       
 50549 	Set: function Set(O, P, V, Throw) {
       
 50550 		if (this.Type(O) !== 'Object') {
       
 50551 			throw new $TypeError('O must be an Object');
       
 50552 		}
       
 50553 		if (!this.IsPropertyKey(P)) {
       
 50554 			throw new $TypeError('P must be a Property Key');
       
 50555 		}
       
 50556 		if (this.Type(Throw) !== 'Boolean') {
       
 50557 			throw new $TypeError('Throw must be a Boolean');
       
 50558 		}
       
 50559 		if (Throw) {
       
 50560 			O[P] = V;
       
 50561 			return true;
       
 50562 		} else {
       
 50563 			try {
       
 50564 				O[P] = V;
       
 50565 			} catch (e) {
       
 50566 				return false;
       
 50567 			}
       
 50568 		}
       
 50569 	},
       
 50570 
       
 50571 	// https://ecma-international.org/ecma-262/6.0/#sec-hasownproperty
       
 50572 	HasOwnProperty: function HasOwnProperty(O, P) {
       
 50573 		if (this.Type(O) !== 'Object') {
       
 50574 			throw new $TypeError('O must be an Object');
       
 50575 		}
       
 50576 		if (!this.IsPropertyKey(P)) {
       
 50577 			throw new $TypeError('P must be a Property Key');
       
 50578 		}
       
 50579 		return has(O, P);
       
 50580 	},
       
 50581 
       
 50582 	// https://ecma-international.org/ecma-262/6.0/#sec-hasproperty
       
 50583 	HasProperty: function HasProperty(O, P) {
       
 50584 		if (this.Type(O) !== 'Object') {
       
 50585 			throw new $TypeError('O must be an Object');
       
 50586 		}
       
 50587 		if (!this.IsPropertyKey(P)) {
       
 50588 			throw new $TypeError('P must be a Property Key');
       
 50589 		}
       
 50590 		return P in O;
       
 50591 	},
       
 50592 
       
 50593 	// https://ecma-international.org/ecma-262/6.0/#sec-isconcatspreadable
       
 50594 	IsConcatSpreadable: function IsConcatSpreadable(O) {
       
 50595 		if (this.Type(O) !== 'Object') {
       
 50596 			return false;
       
 50597 		}
       
 50598 		if (hasSymbols && typeof $Symbol.isConcatSpreadable === 'symbol') {
       
 50599 			var spreadable = this.Get(O, Symbol.isConcatSpreadable);
       
 50600 			if (typeof spreadable !== 'undefined') {
       
 50601 				return this.ToBoolean(spreadable);
       
 50602 			}
       
 50603 		}
       
 50604 		return this.IsArray(O);
       
 50605 	},
       
 50606 
       
 50607 	// https://ecma-international.org/ecma-262/6.0/#sec-invoke
       
 50608 	Invoke: function Invoke(O, P) {
       
 50609 		if (!this.IsPropertyKey(P)) {
       
 50610 			throw new $TypeError('P must be a Property Key');
       
 50611 		}
       
 50612 		var argumentsList = arraySlice(arguments, 2);
       
 50613 		var func = this.GetV(O, P);
       
 50614 		return this.Call(func, O, argumentsList);
       
 50615 	},
       
 50616 
       
 50617 	// https://ecma-international.org/ecma-262/6.0/#sec-getiterator
       
 50618 	GetIterator: function GetIterator(obj, method) {
       
 50619 		if (!hasSymbols) {
       
 50620 			throw new SyntaxError('ES.GetIterator depends on native iterator support.');
       
 50621 		}
       
 50622 
       
 50623 		var actualMethod = method;
       
 50624 		if (arguments.length < 2) {
       
 50625 			actualMethod = this.GetMethod(obj, $Symbol.iterator);
       
 50626 		}
       
 50627 		var iterator = this.Call(actualMethod, obj);
       
 50628 		if (this.Type(iterator) !== 'Object') {
       
 50629 			throw new $TypeError('iterator must return an object');
       
 50630 		}
       
 50631 
       
 50632 		return iterator;
       
 50633 	},
       
 50634 
       
 50635 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratornext
       
 50636 	IteratorNext: function IteratorNext(iterator, value) {
       
 50637 		var result = this.Invoke(iterator, 'next', arguments.length < 2 ? [] : [value]);
       
 50638 		if (this.Type(result) !== 'Object') {
       
 50639 			throw new $TypeError('iterator next must return an object');
       
 50640 		}
       
 50641 		return result;
       
 50642 	},
       
 50643 
       
 50644 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorcomplete
       
 50645 	IteratorComplete: function IteratorComplete(iterResult) {
       
 50646 		if (this.Type(iterResult) !== 'Object') {
       
 50647 			throw new $TypeError('Assertion failed: Type(iterResult) is not Object');
       
 50648 		}
       
 50649 		return this.ToBoolean(this.Get(iterResult, 'done'));
       
 50650 	},
       
 50651 
       
 50652 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorvalue
       
 50653 	IteratorValue: function IteratorValue(iterResult) {
       
 50654 		if (this.Type(iterResult) !== 'Object') {
       
 50655 			throw new $TypeError('Assertion failed: Type(iterResult) is not Object');
       
 50656 		}
       
 50657 		return this.Get(iterResult, 'value');
       
 50658 	},
       
 50659 
       
 50660 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorstep
       
 50661 	IteratorStep: function IteratorStep(iterator) {
       
 50662 		var result = this.IteratorNext(iterator);
       
 50663 		var done = this.IteratorComplete(result);
       
 50664 		return done === true ? false : result;
       
 50665 	},
       
 50666 
       
 50667 	// https://ecma-international.org/ecma-262/6.0/#sec-iteratorclose
       
 50668 	IteratorClose: function IteratorClose(iterator, completion) {
       
 50669 		if (this.Type(iterator) !== 'Object') {
       
 50670 			throw new $TypeError('Assertion failed: Type(iterator) is not Object');
       
 50671 		}
       
 50672 		if (!this.IsCallable(completion)) {
       
 50673 			throw new $TypeError('Assertion failed: completion is not a thunk for a Completion Record');
       
 50674 		}
       
 50675 		var completionThunk = completion;
       
 50676 
       
 50677 		var iteratorReturn = this.GetMethod(iterator, 'return');
       
 50678 
       
 50679 		if (typeof iteratorReturn === 'undefined') {
       
 50680 			return completionThunk();
       
 50681 		}
       
 50682 
       
 50683 		var completionRecord;
       
 50684 		try {
       
 50685 			var innerResult = this.Call(iteratorReturn, iterator, []);
       
 50686 		} catch (e) {
       
 50687 			// if we hit here, then "e" is the innerResult completion that needs re-throwing
       
 50688 
       
 50689 			// if the completion is of type "throw", this will throw.
       
 50690 			completionRecord = completionThunk();
       
 50691 			completionThunk = null; // ensure it's not called twice.
       
 50692 
       
 50693 			// if not, then return the innerResult completion
       
 50694 			throw e;
       
 50695 		}
       
 50696 		completionRecord = completionThunk(); // if innerResult worked, then throw if the completion does
       
 50697 		completionThunk = null; // ensure it's not called twice.
       
 50698 
       
 50699 		if (this.Type(innerResult) !== 'Object') {
       
 50700 			throw new $TypeError('iterator .return must return an object');
       
 50701 		}
       
 50702 
       
 50703 		return completionRecord;
       
 50704 	},
       
 50705 
       
 50706 	// https://ecma-international.org/ecma-262/6.0/#sec-createiterresultobject
       
 50707 	CreateIterResultObject: function CreateIterResultObject(value, done) {
       
 50708 		if (this.Type(done) !== 'Boolean') {
       
 50709 			throw new $TypeError('Assertion failed: Type(done) is not Boolean');
       
 50710 		}
       
 50711 		return {
       
 50712 			value: value,
       
 50713 			done: done
       
 50714 		};
       
 50715 	},
       
 50716 
       
 50717 	// https://ecma-international.org/ecma-262/6.0/#sec-regexpexec
       
 50718 	RegExpExec: function RegExpExec(R, S) {
       
 50719 		if (this.Type(R) !== 'Object') {
       
 50720 			throw new $TypeError('R must be an Object');
       
 50721 		}
       
 50722 		if (this.Type(S) !== 'String') {
       
 50723 			throw new $TypeError('S must be a String');
       
 50724 		}
       
 50725 		var exec = this.Get(R, 'exec');
       
 50726 		if (this.IsCallable(exec)) {
       
 50727 			var result = this.Call(exec, R, [S]);
       
 50728 			if (result === null || this.Type(result) === 'Object') {
       
 50729 				return result;
       
 50730 			}
       
 50731 			throw new $TypeError('"exec" method must return `null` or an Object');
       
 50732 		}
       
 50733 		return regexExec(R, S);
       
 50734 	},
       
 50735 
       
 50736 	// https://ecma-international.org/ecma-262/6.0/#sec-arrayspeciescreate
       
 50737 	ArraySpeciesCreate: function ArraySpeciesCreate(originalArray, length) {
       
 50738 		if (!this.IsInteger(length) || length < 0) {
       
 50739 			throw new $TypeError('Assertion failed: length must be an integer >= 0');
       
 50740 		}
       
 50741 		var len = length === 0 ? 0 : length;
       
 50742 		var C;
       
 50743 		var isArray = this.IsArray(originalArray);
       
 50744 		if (isArray) {
       
 50745 			C = this.Get(originalArray, 'constructor');
       
 50746 			// TODO: figure out how to make a cross-realm normal Array, a same-realm Array
       
 50747 			// if (this.IsConstructor(C)) {
       
 50748 			// 	if C is another realm's Array, C = undefined
       
 50749 			// 	Object.getPrototypeOf(Object.getPrototypeOf(Object.getPrototypeOf(Array))) === null ?
       
 50750 			// }
       
 50751 			if (this.Type(C) === 'Object' && hasSymbols && $Symbol.species) {
       
 50752 				C = this.Get(C, $Symbol.species);
       
 50753 				if (C === null) {
       
 50754 					C = void 0;
       
 50755 				}
       
 50756 			}
       
 50757 		}
       
 50758 		if (typeof C === 'undefined') {
       
 50759 			return $Array(len);
       
 50760 		}
       
 50761 		if (!this.IsConstructor(C)) {
       
 50762 			throw new $TypeError('C must be a constructor');
       
 50763 		}
       
 50764 		return new C(len); // this.Construct(C, len);
       
 50765 	},
       
 50766 
       
 50767 	CreateDataProperty: function CreateDataProperty(O, P, V) {
       
 50768 		if (this.Type(O) !== 'Object') {
       
 50769 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50770 		}
       
 50771 		if (!this.IsPropertyKey(P)) {
       
 50772 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50773 		}
       
 50774 		var oldDesc = $gOPD(O, P);
       
 50775 		var extensible = oldDesc || (typeof $isExtensible !== 'function' || $isExtensible(O));
       
 50776 		var immutable = oldDesc && (!oldDesc.writable || !oldDesc.configurable);
       
 50777 		if (immutable || !extensible) {
       
 50778 			return false;
       
 50779 		}
       
 50780 		var newDesc = {
       
 50781 			configurable: true,
       
 50782 			enumerable: true,
       
 50783 			value: V,
       
 50784 			writable: true
       
 50785 		};
       
 50786 		$defineProperty(O, P, newDesc);
       
 50787 		return true;
       
 50788 	},
       
 50789 
       
 50790 	// https://ecma-international.org/ecma-262/6.0/#sec-createdatapropertyorthrow
       
 50791 	CreateDataPropertyOrThrow: function CreateDataPropertyOrThrow(O, P, V) {
       
 50792 		if (this.Type(O) !== 'Object') {
       
 50793 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50794 		}
       
 50795 		if (!this.IsPropertyKey(P)) {
       
 50796 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50797 		}
       
 50798 		var success = this.CreateDataProperty(O, P, V);
       
 50799 		if (!success) {
       
 50800 			throw new $TypeError('unable to create data property');
       
 50801 		}
       
 50802 		return success;
       
 50803 	},
       
 50804 
       
 50805 	// https://www.ecma-international.org/ecma-262/6.0/#sec-objectcreate
       
 50806 	ObjectCreate: function ObjectCreate(proto, internalSlotsList) {
       
 50807 		if (proto !== null && this.Type(proto) !== 'Object') {
       
 50808 			throw new $TypeError('Assertion failed: proto must be null or an object');
       
 50809 		}
       
 50810 		var slots = arguments.length < 2 ? [] : internalSlotsList;
       
 50811 		if (slots.length > 0) {
       
 50812 			throw new $SyntaxError('es-abstract does not yet support internal slots');
       
 50813 		}
       
 50814 
       
 50815 		if (proto === null && !$ObjectCreate) {
       
 50816 			throw new $SyntaxError('native Object.create support is required to create null objects');
       
 50817 		}
       
 50818 
       
 50819 		return $ObjectCreate(proto);
       
 50820 	},
       
 50821 
       
 50822 	// https://ecma-international.org/ecma-262/6.0/#sec-advancestringindex
       
 50823 	AdvanceStringIndex: function AdvanceStringIndex(S, index, unicode) {
       
 50824 		if (this.Type(S) !== 'String') {
       
 50825 			throw new $TypeError('S must be a String');
       
 50826 		}
       
 50827 		if (!this.IsInteger(index) || index < 0 || index > MAX_SAFE_INTEGER) {
       
 50828 			throw new $TypeError('Assertion failed: length must be an integer >= 0 and <= 2**53');
       
 50829 		}
       
 50830 		if (this.Type(unicode) !== 'Boolean') {
       
 50831 			throw new $TypeError('Assertion failed: unicode must be a Boolean');
       
 50832 		}
       
 50833 		if (!unicode) {
       
 50834 			return index + 1;
       
 50835 		}
       
 50836 		var length = S.length;
       
 50837 		if ((index + 1) >= length) {
       
 50838 			return index + 1;
       
 50839 		}
       
 50840 
       
 50841 		var first = $charCodeAt(S, index);
       
 50842 		if (first < 0xD800 || first > 0xDBFF) {
       
 50843 			return index + 1;
       
 50844 		}
       
 50845 
       
 50846 		var second = $charCodeAt(S, index + 1);
       
 50847 		if (second < 0xDC00 || second > 0xDFFF) {
       
 50848 			return index + 1;
       
 50849 		}
       
 50850 
       
 50851 		return index + 2;
       
 50852 	},
       
 50853 
       
 50854 	// https://www.ecma-international.org/ecma-262/6.0/#sec-createmethodproperty
       
 50855 	CreateMethodProperty: function CreateMethodProperty(O, P, V) {
       
 50856 		if (this.Type(O) !== 'Object') {
       
 50857 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50858 		}
       
 50859 
       
 50860 		if (!this.IsPropertyKey(P)) {
       
 50861 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50862 		}
       
 50863 
       
 50864 		var newDesc = {
       
 50865 			configurable: true,
       
 50866 			enumerable: false,
       
 50867 			value: V,
       
 50868 			writable: true
       
 50869 		};
       
 50870 		return !!$defineProperty(O, P, newDesc);
       
 50871 	},
       
 50872 
       
 50873 	// https://www.ecma-international.org/ecma-262/6.0/#sec-definepropertyorthrow
       
 50874 	DefinePropertyOrThrow: function DefinePropertyOrThrow(O, P, desc) {
       
 50875 		if (this.Type(O) !== 'Object') {
       
 50876 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50877 		}
       
 50878 
       
 50879 		if (!this.IsPropertyKey(P)) {
       
 50880 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50881 		}
       
 50882 
       
 50883 		return !!$defineProperty(O, P, desc);
       
 50884 	},
       
 50885 
       
 50886 	// https://www.ecma-international.org/ecma-262/6.0/#sec-deletepropertyorthrow
       
 50887 	DeletePropertyOrThrow: function DeletePropertyOrThrow(O, P) {
       
 50888 		if (this.Type(O) !== 'Object') {
       
 50889 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50890 		}
       
 50891 
       
 50892 		if (!this.IsPropertyKey(P)) {
       
 50893 			throw new $TypeError('Assertion failed: IsPropertyKey(P) is not true');
       
 50894 		}
       
 50895 
       
 50896 		var success = delete O[P];
       
 50897 		if (!success) {
       
 50898 			throw new TypeError('Attempt to delete property failed.');
       
 50899 		}
       
 50900 		return success;
       
 50901 	},
       
 50902 
       
 50903 	// https://www.ecma-international.org/ecma-262/6.0/#sec-enumerableownnames
       
 50904 	EnumerableOwnNames: function EnumerableOwnNames(O) {
       
 50905 		if (this.Type(O) !== 'Object') {
       
 50906 			throw new $TypeError('Assertion failed: Type(O) is not Object');
       
 50907 		}
       
 50908 
       
 50909 		return keys(O);
       
 50910 	},
       
 50911 
       
 50912 	// https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-number-prototype-object
       
 50913 	thisNumberValue: function thisNumberValue(value) {
       
 50914 		if (this.Type(value) === 'Number') {
       
 50915 			return value;
       
 50916 		}
       
 50917 
       
 50918 		return $NumberValueOf(value);
       
 50919 	},
       
 50920 
       
 50921 	// https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-boolean-prototype-object
       
 50922 	thisBooleanValue: function thisBooleanValue(value) {
       
 50923 		if (this.Type(value) === 'Boolean') {
       
 50924 			return value;
       
 50925 		}
       
 50926 
       
 50927 		return $BooleanValueOf(value);
       
 50928 	},
       
 50929 
       
 50930 	// https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-string-prototype-object
       
 50931 	thisStringValue: function thisStringValue(value) {
       
 50932 		if (this.Type(value) === 'String') {
       
 50933 			return value;
       
 50934 		}
       
 50935 
       
 50936 		return $StringValueOf(value);
       
 50937 	},
       
 50938 
       
 50939 	// https://ecma-international.org/ecma-262/6.0/#sec-properties-of-the-date-prototype-object
       
 50940 	thisTimeValue: function thisTimeValue(value) {
       
 50941 		return $DateValueOf(value);
       
 50942 	}
       
 50943 });
       
 50944 
       
 50945 delete ES6.CheckObjectCoercible; // renamed in ES6 to RequireObjectCoercible
       
 50946 
       
 50947 module.exports = ES6;
       
 50948 
       
 50949 
       
 50950 /***/ }),
       
 50951 /* 360 */
       
 50952 /***/ (function(module, exports, __webpack_require__) {
       
 50953 
       
 50954 "use strict";
       
 50955 
       
 50956 
       
 50957 module.exports = __webpack_require__(361);
       
 50958 
       
 50959 
       
 50960 /***/ }),
       
 50961 /* 361 */
       
 50962 /***/ (function(module, exports, __webpack_require__) {
       
 50963 
       
 50964 "use strict";
       
 50965 
       
 50966 
       
 50967 var hasSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol';
       
 50968 
       
 50969 var isPrimitive = __webpack_require__(230);
       
 50970 var isCallable = __webpack_require__(188);
       
 50971 var isDate = __webpack_require__(221);
       
 50972 var isSymbol = __webpack_require__(187);
       
 50973 
       
 50974 var ordinaryToPrimitive = function OrdinaryToPrimitive(O, hint) {
       
 50975 	if (typeof O === 'undefined' || O === null) {
       
 50976 		throw new TypeError('Cannot call method on ' + O);
       
 50977 	}
       
 50978 	if (typeof hint !== 'string' || (hint !== 'number' && hint !== 'string')) {
       
 50979 		throw new TypeError('hint must be "string" or "number"');
       
 50980 	}
       
 50981 	var methodNames = hint === 'string' ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
       
 50982 	var method, result, i;
       
 50983 	for (i = 0; i < methodNames.length; ++i) {
       
 50984 		method = O[methodNames[i]];
       
 50985 		if (isCallable(method)) {
       
 50986 			result = method.call(O);
       
 50987 			if (isPrimitive(result)) {
       
 50988 				return result;
       
 50989 			}
       
 50990 		}
       
 50991 	}
       
 50992 	throw new TypeError('No default value');
       
 50993 };
       
 50994 
       
 50995 var GetMethod = function GetMethod(O, P) {
       
 50996 	var func = O[P];
       
 50997 	if (func !== null && typeof func !== 'undefined') {
       
 50998 		if (!isCallable(func)) {
       
 50999 			throw new TypeError(func + ' returned for property ' + P + ' of object ' + O + ' is not a function');
       
 51000 		}
       
 51001 		return func;
       
 51002 	}
       
 51003 	return void 0;
       
 51004 };
       
 51005 
       
 51006 // http://www.ecma-international.org/ecma-262/6.0/#sec-toprimitive
       
 51007 module.exports = function ToPrimitive(input) {
       
 51008 	if (isPrimitive(input)) {
       
 51009 		return input;
       
 51010 	}
       
 51011 	var hint = 'default';
       
 51012 	if (arguments.length > 1) {
       
 51013 		if (arguments[1] === String) {
       
 51014 			hint = 'string';
       
 51015 		} else if (arguments[1] === Number) {
       
 51016 			hint = 'number';
       
 51017 		}
       
 51018 	}
       
 51019 
       
 51020 	var exoticToPrim;
       
 51021 	if (hasSymbols) {
       
 51022 		if (Symbol.toPrimitive) {
       
 51023 			exoticToPrim = GetMethod(input, Symbol.toPrimitive);
       
 51024 		} else if (isSymbol(input)) {
       
 51025 			exoticToPrim = Symbol.prototype.valueOf;
       
 51026 		}
       
 51027 	}
       
 51028 	if (typeof exoticToPrim !== 'undefined') {
       
 51029 		var result = exoticToPrim.call(input, hint);
       
 51030 		if (isPrimitive(result)) {
       
 51031 			return result;
       
 51032 		}
       
 51033 		throw new TypeError('unable to convert exotic object to primitive');
       
 51034 	}
       
 51035 	if (hint === 'default' && (isDate(input) || isSymbol(input))) {
       
 51036 		hint = 'string';
       
 51037 	}
       
 51038 	return ordinaryToPrimitive(input, hint === 'default' ? 'number' : hint);
       
 51039 };
       
 51040 
       
 51041 
       
 51042 /***/ }),
       
 51043 /* 362 */
       
 51044 /***/ (function(module, exports) {
       
 51045 
       
 51046 module.exports = function isPrimitive(value) {
       
 51047 	return value === null || (typeof value !== 'function' && typeof value !== 'object');
       
 51048 };
       
 51049 
       
 51050 
       
 51051 /***/ }),
       
 51052 /* 363 */
       
 51053 /***/ (function(module, exports, __webpack_require__) {
       
 51054 
       
 51055 "use strict";
       
 51056 
       
 51057 
       
 51058 var GetIntrinsic = __webpack_require__(189);
       
 51059 
       
 51060 var $Object = GetIntrinsic('%Object%');
       
 51061 var $TypeError = GetIntrinsic('%TypeError%');
       
 51062 var $String = GetIntrinsic('%String%');
       
 51063 
       
 51064 var assertRecord = __webpack_require__(231);
       
 51065 var $isNaN = __webpack_require__(232);
       
 51066 var $isFinite = __webpack_require__(233);
       
 51067 
       
 51068 var sign = __webpack_require__(235);
       
 51069 var mod = __webpack_require__(236);
       
 51070 
       
 51071 var IsCallable = __webpack_require__(188);
       
 51072 var toPrimitive = __webpack_require__(364);
       
 51073 
       
 51074 var has = __webpack_require__(91);
       
 51075 
       
 51076 // https://es5.github.io/#x9
       
 51077 var ES5 = {
       
 51078 	ToPrimitive: toPrimitive,
       
 51079 
       
 51080 	ToBoolean: function ToBoolean(value) {
       
 51081 		return !!value;
       
 51082 	},
       
 51083 	ToNumber: function ToNumber(value) {
       
 51084 		return +value; // eslint-disable-line no-implicit-coercion
       
 51085 	},
       
 51086 	ToInteger: function ToInteger(value) {
       
 51087 		var number = this.ToNumber(value);
       
 51088 		if ($isNaN(number)) { return 0; }
       
 51089 		if (number === 0 || !$isFinite(number)) { return number; }
       
 51090 		return sign(number) * Math.floor(Math.abs(number));
       
 51091 	},
       
 51092 	ToInt32: function ToInt32(x) {
       
 51093 		return this.ToNumber(x) >> 0;
       
 51094 	},
       
 51095 	ToUint32: function ToUint32(x) {
       
 51096 		return this.ToNumber(x) >>> 0;
       
 51097 	},
       
 51098 	ToUint16: function ToUint16(value) {
       
 51099 		var number = this.ToNumber(value);
       
 51100 		if ($isNaN(number) || number === 0 || !$isFinite(number)) { return 0; }
       
 51101 		var posInt = sign(number) * Math.floor(Math.abs(number));
       
 51102 		return mod(posInt, 0x10000);
       
 51103 	},
       
 51104 	ToString: function ToString(value) {
       
 51105 		return $String(value);
       
 51106 	},
       
 51107 	ToObject: function ToObject(value) {
       
 51108 		this.CheckObjectCoercible(value);
       
 51109 		return $Object(value);
       
 51110 	},
       
 51111 	CheckObjectCoercible: function CheckObjectCoercible(value, optMessage) {
       
 51112 		/* jshint eqnull:true */
       
 51113 		if (value == null) {
       
 51114 			throw new $TypeError(optMessage || 'Cannot call method on ' + value);
       
 51115 		}
       
 51116 		return value;
       
 51117 	},
       
 51118 	IsCallable: IsCallable,
       
 51119 	SameValue: function SameValue(x, y) {
       
 51120 		if (x === y) { // 0 === -0, but they are not identical.
       
 51121 			if (x === 0) { return 1 / x === 1 / y; }
       
 51122 			return true;
       
 51123 		}
       
 51124 		return $isNaN(x) && $isNaN(y);
       
 51125 	},
       
 51126 
       
 51127 	// https://www.ecma-international.org/ecma-262/5.1/#sec-8
       
 51128 	Type: function Type(x) {
       
 51129 		if (x === null) {
       
 51130 			return 'Null';
       
 51131 		}
       
 51132 		if (typeof x === 'undefined') {
       
 51133 			return 'Undefined';
       
 51134 		}
       
 51135 		if (typeof x === 'function' || typeof x === 'object') {
       
 51136 			return 'Object';
       
 51137 		}
       
 51138 		if (typeof x === 'number') {
       
 51139 			return 'Number';
       
 51140 		}
       
 51141 		if (typeof x === 'boolean') {
       
 51142 			return 'Boolean';
       
 51143 		}
       
 51144 		if (typeof x === 'string') {
       
 51145 			return 'String';
       
 51146 		}
       
 51147 	},
       
 51148 
       
 51149 	// https://ecma-international.org/ecma-262/6.0/#sec-property-descriptor-specification-type
       
 51150 	IsPropertyDescriptor: function IsPropertyDescriptor(Desc) {
       
 51151 		if (this.Type(Desc) !== 'Object') {
       
 51152 			return false;
       
 51153 		}
       
 51154 		var allowed = {
       
 51155 			'[[Configurable]]': true,
       
 51156 			'[[Enumerable]]': true,
       
 51157 			'[[Get]]': true,
       
 51158 			'[[Set]]': true,
       
 51159 			'[[Value]]': true,
       
 51160 			'[[Writable]]': true
       
 51161 		};
       
 51162 
       
 51163 		for (var key in Desc) { // eslint-disable-line
       
 51164 			if (has(Desc, key) && !allowed[key]) {
       
 51165 				return false;
       
 51166 			}
       
 51167 		}
       
 51168 
       
 51169 		var isData = has(Desc, '[[Value]]');
       
 51170 		var IsAccessor = has(Desc, '[[Get]]') || has(Desc, '[[Set]]');
       
 51171 		if (isData && IsAccessor) {
       
 51172 			throw new $TypeError('Property Descriptors may not be both accessor and data descriptors');
       
 51173 		}
       
 51174 		return true;
       
 51175 	},
       
 51176 
       
 51177 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.1
       
 51178 	IsAccessorDescriptor: function IsAccessorDescriptor(Desc) {
       
 51179 		if (typeof Desc === 'undefined') {
       
 51180 			return false;
       
 51181 		}
       
 51182 
       
 51183 		assertRecord(this, 'Property Descriptor', 'Desc', Desc);
       
 51184 
       
 51185 		if (!has(Desc, '[[Get]]') && !has(Desc, '[[Set]]')) {
       
 51186 			return false;
       
 51187 		}
       
 51188 
       
 51189 		return true;
       
 51190 	},
       
 51191 
       
 51192 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.2
       
 51193 	IsDataDescriptor: function IsDataDescriptor(Desc) {
       
 51194 		if (typeof Desc === 'undefined') {
       
 51195 			return false;
       
 51196 		}
       
 51197 
       
 51198 		assertRecord(this, 'Property Descriptor', 'Desc', Desc);
       
 51199 
       
 51200 		if (!has(Desc, '[[Value]]') && !has(Desc, '[[Writable]]')) {
       
 51201 			return false;
       
 51202 		}
       
 51203 
       
 51204 		return true;
       
 51205 	},
       
 51206 
       
 51207 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.3
       
 51208 	IsGenericDescriptor: function IsGenericDescriptor(Desc) {
       
 51209 		if (typeof Desc === 'undefined') {
       
 51210 			return false;
       
 51211 		}
       
 51212 
       
 51213 		assertRecord(this, 'Property Descriptor', 'Desc', Desc);
       
 51214 
       
 51215 		if (!this.IsAccessorDescriptor(Desc) && !this.IsDataDescriptor(Desc)) {
       
 51216 			return true;
       
 51217 		}
       
 51218 
       
 51219 		return false;
       
 51220 	},
       
 51221 
       
 51222 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.4
       
 51223 	FromPropertyDescriptor: function FromPropertyDescriptor(Desc) {
       
 51224 		if (typeof Desc === 'undefined') {
       
 51225 			return Desc;
       
 51226 		}
       
 51227 
       
 51228 		assertRecord(this, 'Property Descriptor', 'Desc', Desc);
       
 51229 
       
 51230 		if (this.IsDataDescriptor(Desc)) {
       
 51231 			return {
       
 51232 				value: Desc['[[Value]]'],
       
 51233 				writable: !!Desc['[[Writable]]'],
       
 51234 				enumerable: !!Desc['[[Enumerable]]'],
       
 51235 				configurable: !!Desc['[[Configurable]]']
       
 51236 			};
       
 51237 		} else if (this.IsAccessorDescriptor(Desc)) {
       
 51238 			return {
       
 51239 				get: Desc['[[Get]]'],
       
 51240 				set: Desc['[[Set]]'],
       
 51241 				enumerable: !!Desc['[[Enumerable]]'],
       
 51242 				configurable: !!Desc['[[Configurable]]']
       
 51243 			};
       
 51244 		} else {
       
 51245 			throw new $TypeError('FromPropertyDescriptor must be called with a fully populated Property Descriptor');
       
 51246 		}
       
 51247 	},
       
 51248 
       
 51249 	// https://ecma-international.org/ecma-262/5.1/#sec-8.10.5
       
 51250 	ToPropertyDescriptor: function ToPropertyDescriptor(Obj) {
       
 51251 		if (this.Type(Obj) !== 'Object') {
       
 51252 			throw new $TypeError('ToPropertyDescriptor requires an object');
       
 51253 		}
       
 51254 
       
 51255 		var desc = {};
       
 51256 		if (has(Obj, 'enumerable')) {
       
 51257 			desc['[[Enumerable]]'] = this.ToBoolean(Obj.enumerable);
       
 51258 		}
       
 51259 		if (has(Obj, 'configurable')) {
       
 51260 			desc['[[Configurable]]'] = this.ToBoolean(Obj.configurable);
       
 51261 		}
       
 51262 		if (has(Obj, 'value')) {
       
 51263 			desc['[[Value]]'] = Obj.value;
       
 51264 		}
       
 51265 		if (has(Obj, 'writable')) {
       
 51266 			desc['[[Writable]]'] = this.ToBoolean(Obj.writable);
       
 51267 		}
       
 51268 		if (has(Obj, 'get')) {
       
 51269 			var getter = Obj.get;
       
 51270 			if (typeof getter !== 'undefined' && !this.IsCallable(getter)) {
       
 51271 				throw new TypeError('getter must be a function');
       
 51272 			}
       
 51273 			desc['[[Get]]'] = getter;
       
 51274 		}
       
 51275 		if (has(Obj, 'set')) {
       
 51276 			var setter = Obj.set;
       
 51277 			if (typeof setter !== 'undefined' && !this.IsCallable(setter)) {
       
 51278 				throw new $TypeError('setter must be a function');
       
 51279 			}
       
 51280 			desc['[[Set]]'] = setter;
       
 51281 		}
       
 51282 
       
 51283 		if ((has(desc, '[[Get]]') || has(desc, '[[Set]]')) && (has(desc, '[[Value]]') || has(desc, '[[Writable]]'))) {
       
 51284 			throw new $TypeError('Invalid property descriptor. Cannot both specify accessors and a value or writable attribute');
       
 51285 		}
       
 51286 		return desc;
       
 51287 	}
       
 51288 };
       
 51289 
       
 51290 module.exports = ES5;
       
 51291 
       
 51292 
       
 51293 /***/ }),
       
 51294 /* 364 */
       
 51295 /***/ (function(module, exports, __webpack_require__) {
       
 51296 
       
 51297 "use strict";
       
 51298 
       
 51299 
       
 51300 var toStr = Object.prototype.toString;
       
 51301 
       
 51302 var isPrimitive = __webpack_require__(230);
       
 51303 
       
 51304 var isCallable = __webpack_require__(188);
       
 51305 
       
 51306 // http://ecma-international.org/ecma-262/5.1/#sec-8.12.8
       
 51307 var ES5internalSlots = {
       
 51308 	'[[DefaultValue]]': function (O) {
       
 51309 		var actualHint;
       
 51310 		if (arguments.length > 1) {
       
 51311 			actualHint = arguments[1];
       
 51312 		} else {
       
 51313 			actualHint = toStr.call(O) === '[object Date]' ? String : Number;
       
 51314 		}
       
 51315 
       
 51316 		if (actualHint === String || actualHint === Number) {
       
 51317 			var methods = actualHint === String ? ['toString', 'valueOf'] : ['valueOf', 'toString'];
       
 51318 			var value, i;
       
 51319 			for (i = 0; i < methods.length; ++i) {
       
 51320 				if (isCallable(O[methods[i]])) {
       
 51321 					value = O[methods[i]]();
       
 51322 					if (isPrimitive(value)) {
       
 51323 						return value;
       
 51324 					}
       
 51325 				}
       
 51326 			}
       
 51327 			throw new TypeError('No default value');
       
 51328 		}
       
 51329 		throw new TypeError('invalid [[DefaultValue]] hint supplied');
       
 51330 	}
       
 51331 };
       
 51332 
       
 51333 // http://ecma-international.org/ecma-262/5.1/#sec-9.1
       
 51334 module.exports = function ToPrimitive(input) {
       
 51335 	if (isPrimitive(input)) {
       
 51336 		return input;
       
 51337 	}
       
 51338 	if (arguments.length > 1) {
       
 51339 		return ES5internalSlots['[[DefaultValue]]'](input, arguments[1]);
       
 51340 	}
       
 51341 	return ES5internalSlots['[[DefaultValue]]'](input);
       
 51342 };
       
 51343 
       
 51344 
       
 51345 /***/ }),
       
 51346 /* 365 */
       
 51347 /***/ (function(module, exports, __webpack_require__) {
       
 51348 
       
 51349 "use strict";
       
 51350 
       
 51351 
       
 51352 var has = __webpack_require__(91);
       
 51353 var regexExec = RegExp.prototype.exec;
       
 51354 var gOPD = Object.getOwnPropertyDescriptor;
       
 51355 
       
 51356 var tryRegexExecCall = function tryRegexExec(value) {
       
 51357 	try {
       
 51358 		var lastIndex = value.lastIndex;
       
 51359 		value.lastIndex = 0;
       
 51360 
       
 51361 		regexExec.call(value);
       
 51362 		return true;
       
 51363 	} catch (e) {
       
 51364 		return false;
       
 51365 	} finally {
       
 51366 		value.lastIndex = lastIndex;
       
 51367 	}
       
 51368 };
       
 51369 var toStr = Object.prototype.toString;
       
 51370 var regexClass = '[object RegExp]';
       
 51371 var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';
       
 51372 
       
 51373 module.exports = function isRegex(value) {
       
 51374 	if (!value || typeof value !== 'object') {
       
 51375 		return false;
       
 51376 	}
       
 51377 	if (!hasToStringTag) {
       
 51378 		return toStr.call(value) === regexClass;
       
 51379 	}
       
 51380 
       
 51381 	var descriptor = gOPD(value, 'lastIndex');
       
 51382 	var hasLastIndexDataProperty = descriptor && has(descriptor, 'value');
       
 51383 	if (!hasLastIndexDataProperty) {
       
 51384 		return false;
       
 51385 	}
       
 51386 
       
 51387 	return tryRegexExecCall(value);
       
 51388 };
       
 51389 
       
 51390 
       
 51391 /***/ }),
       
 51392 /* 366 */
       
 51393 /***/ (function(module, exports, __webpack_require__) {
       
 51394 
       
 51395 "use strict";
       
 51396 
       
 51397 
       
 51398 var getPolyfill = __webpack_require__(237);
       
 51399 var define = __webpack_require__(101);
       
 51400 
       
 51401 module.exports = function shimValues() {
       
 51402 	var polyfill = getPolyfill();
       
 51403 	define(Object, { values: polyfill }, {
       
 51404 		values: function testValues() {
       
 51405 			return Object.values !== polyfill;
       
 51406 		}
       
 51407 	});
       
 51408 	return polyfill;
       
 51409 };
       
 51410 
       
 51411 
       
 51412 /***/ }),
       
 51413 /* 367 */
       
 51414 /***/ (function(module, exports, __webpack_require__) {
       
 51415 
       
 51416 "use strict";
       
 51417 
       
 51418 
       
 51419 Object.defineProperty(exports, "__esModule", {
       
 51420   value: true
       
 51421 });
       
 51422 exports['default'] = getVisibleDays;
       
 51423 
       
 51424 var _moment = __webpack_require__(43);
       
 51425 
       
 51426 var _moment2 = _interopRequireDefault(_moment);
       
 51427 
       
 51428 var _toISOMonthString = __webpack_require__(191);
       
 51429 
       
 51430 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
 51431 
       
 51432 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 51433 
       
 51434 function getVisibleDays(month, numberOfMonths, enableOutsideDays, withoutTransitionMonths) {
       
 51435   if (!_moment2['default'].isMoment(month)) return {};
       
 51436 
       
 51437   var visibleDaysByMonth = {};
       
 51438   var currentMonth = withoutTransitionMonths ? month.clone() : month.clone().subtract(1, 'month');
       
 51439   for (var i = 0; i < (withoutTransitionMonths ? numberOfMonths : numberOfMonths + 2); i += 1) {
       
 51440     var visibleDays = [];
       
 51441 
       
 51442     // set utc offset to get correct dates in future (when timezone changes)
       
 51443     var baseDate = currentMonth.clone();
       
 51444     var firstOfMonth = baseDate.clone().startOf('month').hour(12);
       
 51445     var lastOfMonth = baseDate.clone().endOf('month').hour(12);
       
 51446 
       
 51447     var currentDay = firstOfMonth.clone();
       
 51448 
       
 51449     // days belonging to the previous month
       
 51450     if (enableOutsideDays) {
       
 51451       for (var j = 0; j < currentDay.weekday(); j += 1) {
       
 51452         var prevDay = currentDay.clone().subtract(j + 1, 'day');
       
 51453         visibleDays.unshift(prevDay);
       
 51454       }
       
 51455     }
       
 51456 
       
 51457     while (currentDay < lastOfMonth) {
       
 51458       visibleDays.push(currentDay.clone());
       
 51459       currentDay.add(1, 'day');
       
 51460     }
       
 51461 
       
 51462     if (enableOutsideDays) {
       
 51463       // weekday() returns the index of the day of the week according to the locale
       
 51464       // this means if the week starts on Monday, weekday() will return 0 for a Monday date, not 1
       
 51465       if (currentDay.weekday() !== 0) {
       
 51466         // days belonging to the next month
       
 51467         for (var k = currentDay.weekday(), count = 0; k < 7; k += 1, count += 1) {
       
 51468           var nextDay = currentDay.clone().add(count, 'day');
       
 51469           visibleDays.push(nextDay);
       
 51470         }
       
 51471       }
       
 51472     }
       
 51473 
       
 51474     visibleDaysByMonth[(0, _toISOMonthString2['default'])(currentMonth)] = visibleDays;
       
 51475     currentMonth = currentMonth.clone().add(1, 'month');
       
 51476   }
       
 51477 
       
 51478   return visibleDaysByMonth;
       
 51479 }
       
 51480 
       
 51481 /***/ }),
       
 51482 /* 368 */
       
 51483 /***/ (function(module, exports, __webpack_require__) {
       
 51484 
       
 51485 "use strict";
       
 51486 
       
 51487 
       
 51488 Object.defineProperty(exports, "__esModule", {
       
 51489   value: true
       
 51490 });
       
 51491 exports.PureDayPicker = exports.defaultProps = undefined;
       
 51492 
       
 51493 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 51494 
       
 51495 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 51496 
       
 51497 var _object = __webpack_require__(92);
       
 51498 
       
 51499 var _object2 = _interopRequireDefault(_object);
       
 51500 
       
 51501 var _react = __webpack_require__(13);
       
 51502 
       
 51503 var _react2 = _interopRequireDefault(_react);
       
 51504 
       
 51505 var _propTypes = __webpack_require__(28);
       
 51506 
       
 51507 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 51508 
       
 51509 var _reactAddonsShallowCompare = __webpack_require__(143);
       
 51510 
       
 51511 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
 51512 
       
 51513 var _airbnbPropTypes = __webpack_require__(85);
       
 51514 
       
 51515 var _reactWithStyles = __webpack_require__(109);
       
 51516 
       
 51517 var _moment = __webpack_require__(43);
       
 51518 
       
 51519 var _moment2 = _interopRequireDefault(_moment);
       
 51520 
       
 51521 var _throttle = __webpack_require__(375);
       
 51522 
       
 51523 var _throttle2 = _interopRequireDefault(_throttle);
       
 51524 
       
 51525 var _isTouchDevice = __webpack_require__(238);
       
 51526 
       
 51527 var _isTouchDevice2 = _interopRequireDefault(_isTouchDevice);
       
 51528 
       
 51529 var _reactOutsideClickHandler = __webpack_require__(385);
       
 51530 
       
 51531 var _reactOutsideClickHandler2 = _interopRequireDefault(_reactOutsideClickHandler);
       
 51532 
       
 51533 var _defaultPhrases = __webpack_require__(107);
       
 51534 
       
 51535 var _getPhrasePropTypes = __webpack_require__(108);
       
 51536 
       
 51537 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 51538 
       
 51539 var _CalendarMonthGrid = __webpack_require__(389);
       
 51540 
       
 51541 var _CalendarMonthGrid2 = _interopRequireDefault(_CalendarMonthGrid);
       
 51542 
       
 51543 var _DayPickerNavigation = __webpack_require__(399);
       
 51544 
       
 51545 var _DayPickerNavigation2 = _interopRequireDefault(_DayPickerNavigation);
       
 51546 
       
 51547 var _DayPickerKeyboardShortcuts = __webpack_require__(404);
       
 51548 
       
 51549 var _DayPickerKeyboardShortcuts2 = _interopRequireDefault(_DayPickerKeyboardShortcuts);
       
 51550 
       
 51551 var _getNumberOfCalendarMonthWeeks = __webpack_require__(407);
       
 51552 
       
 51553 var _getNumberOfCalendarMonthWeeks2 = _interopRequireDefault(_getNumberOfCalendarMonthWeeks);
       
 51554 
       
 51555 var _getCalendarMonthWidth = __webpack_require__(253);
       
 51556 
       
 51557 var _getCalendarMonthWidth2 = _interopRequireDefault(_getCalendarMonthWidth);
       
 51558 
       
 51559 var _calculateDimension = __webpack_require__(252);
       
 51560 
       
 51561 var _calculateDimension2 = _interopRequireDefault(_calculateDimension);
       
 51562 
       
 51563 var _getActiveElement = __webpack_require__(408);
       
 51564 
       
 51565 var _getActiveElement2 = _interopRequireDefault(_getActiveElement);
       
 51566 
       
 51567 var _isDayVisible = __webpack_require__(242);
       
 51568 
       
 51569 var _isDayVisible2 = _interopRequireDefault(_isDayVisible);
       
 51570 
       
 51571 var _ModifiersShape = __webpack_require__(157);
       
 51572 
       
 51573 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
 51574 
       
 51575 var _ScrollableOrientationShape = __webpack_require__(142);
       
 51576 
       
 51577 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 51578 
       
 51579 var _DayOfWeekShape = __webpack_require__(156);
       
 51580 
       
 51581 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 51582 
       
 51583 var _CalendarInfoPositionShape = __webpack_require__(244);
       
 51584 
       
 51585 var _CalendarInfoPositionShape2 = _interopRequireDefault(_CalendarInfoPositionShape);
       
 51586 
       
 51587 var _constants = __webpack_require__(77);
       
 51588 
       
 51589 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 51590 
       
 51591 function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
       
 51592 
       
 51593 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 51594 
       
 51595 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 51596 
       
 51597 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 51598 
       
 51599 var MONTH_PADDING = 23;
       
 51600 var PREV_TRANSITION = 'prev';
       
 51601 var NEXT_TRANSITION = 'next';
       
 51602 var MONTH_SELECTION_TRANSITION = 'month_selection';
       
 51603 var YEAR_SELECTION_TRANSITION = 'year_selection';
       
 51604 
       
 51605 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 51606 
       
 51607   // calendar presentation props
       
 51608   enableOutsideDays: _propTypes2['default'].bool,
       
 51609   numberOfMonths: _propTypes2['default'].number,
       
 51610   orientation: _ScrollableOrientationShape2['default'],
       
 51611   withPortal: _propTypes2['default'].bool,
       
 51612   onOutsideClick: _propTypes2['default'].func,
       
 51613   hidden: _propTypes2['default'].bool,
       
 51614   initialVisibleMonth: _propTypes2['default'].func,
       
 51615   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 51616   renderCalendarInfo: _propTypes2['default'].func,
       
 51617   calendarInfoPosition: _CalendarInfoPositionShape2['default'],
       
 51618   hideKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 51619   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 51620   isRTL: _propTypes2['default'].bool,
       
 51621   verticalHeight: _airbnbPropTypes.nonNegativeInteger,
       
 51622   noBorder: _propTypes2['default'].bool,
       
 51623   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
 51624   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 51625   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 51626 
       
 51627   // navigation props
       
 51628   navPrev: _propTypes2['default'].node,
       
 51629   navNext: _propTypes2['default'].node,
       
 51630   noNavButtons: _propTypes2['default'].bool,
       
 51631   onPrevMonthClick: _propTypes2['default'].func,
       
 51632   onNextMonthClick: _propTypes2['default'].func,
       
 51633   onMonthChange: _propTypes2['default'].func,
       
 51634   onYearChange: _propTypes2['default'].func,
       
 51635   onMultiplyScrollableMonths: _propTypes2['default'].func, // VERTICAL_SCROLLABLE daypickers only
       
 51636 
       
 51637   // month props
       
 51638   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 51639   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 51640 
       
 51641   // day props
       
 51642   modifiers: _propTypes2['default'].objectOf(_propTypes2['default'].objectOf(_ModifiersShape2['default'])),
       
 51643   renderCalendarDay: _propTypes2['default'].func,
       
 51644   renderDayContents: _propTypes2['default'].func,
       
 51645   onDayClick: _propTypes2['default'].func,
       
 51646   onDayMouseEnter: _propTypes2['default'].func,
       
 51647   onDayMouseLeave: _propTypes2['default'].func,
       
 51648 
       
 51649   // accessibility props
       
 51650   isFocused: _propTypes2['default'].bool,
       
 51651   getFirstFocusableDay: _propTypes2['default'].func,
       
 51652   onBlur: _propTypes2['default'].func,
       
 51653   showKeyboardShortcuts: _propTypes2['default'].bool,
       
 51654 
       
 51655   // internationalization
       
 51656   monthFormat: _propTypes2['default'].string,
       
 51657   weekDayFormat: _propTypes2['default'].string,
       
 51658   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerPhrases)),
       
 51659   dayAriaLabelFormat: _propTypes2['default'].string
       
 51660 }));
       
 51661 
       
 51662 var defaultProps = exports.defaultProps = {
       
 51663   // calendar presentation props
       
 51664   enableOutsideDays: false,
       
 51665   numberOfMonths: 2,
       
 51666   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 51667   withPortal: false,
       
 51668   onOutsideClick: function () {
       
 51669     function onOutsideClick() {}
       
 51670 
       
 51671     return onOutsideClick;
       
 51672   }(),
       
 51673 
       
 51674   hidden: false,
       
 51675   initialVisibleMonth: function () {
       
 51676     function initialVisibleMonth() {
       
 51677       return (0, _moment2['default'])();
       
 51678     }
       
 51679 
       
 51680     return initialVisibleMonth;
       
 51681   }(),
       
 51682   firstDayOfWeek: null,
       
 51683   renderCalendarInfo: null,
       
 51684   calendarInfoPosition: _constants.INFO_POSITION_BOTTOM,
       
 51685   hideKeyboardShortcutsPanel: false,
       
 51686   daySize: _constants.DAY_SIZE,
       
 51687   isRTL: false,
       
 51688   verticalHeight: null,
       
 51689   noBorder: false,
       
 51690   transitionDuration: undefined,
       
 51691   verticalBorderSpacing: undefined,
       
 51692   horizontalMonthPadding: 13,
       
 51693 
       
 51694   // navigation props
       
 51695   navPrev: null,
       
 51696   navNext: null,
       
 51697   noNavButtons: false,
       
 51698   onPrevMonthClick: function () {
       
 51699     function onPrevMonthClick() {}
       
 51700 
       
 51701     return onPrevMonthClick;
       
 51702   }(),
       
 51703   onNextMonthClick: function () {
       
 51704     function onNextMonthClick() {}
       
 51705 
       
 51706     return onNextMonthClick;
       
 51707   }(),
       
 51708   onMonthChange: function () {
       
 51709     function onMonthChange() {}
       
 51710 
       
 51711     return onMonthChange;
       
 51712   }(),
       
 51713   onYearChange: function () {
       
 51714     function onYearChange() {}
       
 51715 
       
 51716     return onYearChange;
       
 51717   }(),
       
 51718   onMultiplyScrollableMonths: function () {
       
 51719     function onMultiplyScrollableMonths() {}
       
 51720 
       
 51721     return onMultiplyScrollableMonths;
       
 51722   }(),
       
 51723 
       
 51724 
       
 51725   // month props
       
 51726   renderMonthText: null,
       
 51727   renderMonthElement: null,
       
 51728 
       
 51729   // day props
       
 51730   modifiers: {},
       
 51731   renderCalendarDay: undefined,
       
 51732   renderDayContents: null,
       
 51733   onDayClick: function () {
       
 51734     function onDayClick() {}
       
 51735 
       
 51736     return onDayClick;
       
 51737   }(),
       
 51738   onDayMouseEnter: function () {
       
 51739     function onDayMouseEnter() {}
       
 51740 
       
 51741     return onDayMouseEnter;
       
 51742   }(),
       
 51743   onDayMouseLeave: function () {
       
 51744     function onDayMouseLeave() {}
       
 51745 
       
 51746     return onDayMouseLeave;
       
 51747   }(),
       
 51748 
       
 51749 
       
 51750   // accessibility props
       
 51751   isFocused: false,
       
 51752   getFirstFocusableDay: null,
       
 51753   onBlur: function () {
       
 51754     function onBlur() {}
       
 51755 
       
 51756     return onBlur;
       
 51757   }(),
       
 51758 
       
 51759   showKeyboardShortcuts: false,
       
 51760 
       
 51761   // internationalization
       
 51762   monthFormat: 'MMMM YYYY',
       
 51763   weekDayFormat: 'dd',
       
 51764   phrases: _defaultPhrases.DayPickerPhrases,
       
 51765   dayAriaLabelFormat: undefined
       
 51766 };
       
 51767 
       
 51768 var DayPicker = function (_React$Component) {
       
 51769   _inherits(DayPicker, _React$Component);
       
 51770 
       
 51771   function DayPicker(props) {
       
 51772     _classCallCheck(this, DayPicker);
       
 51773 
       
 51774     var _this = _possibleConstructorReturn(this, (DayPicker.__proto__ || Object.getPrototypeOf(DayPicker)).call(this, props));
       
 51775 
       
 51776     var currentMonth = props.hidden ? (0, _moment2['default'])() : props.initialVisibleMonth();
       
 51777 
       
 51778     var focusedDate = currentMonth.clone().startOf('month');
       
 51779     if (props.getFirstFocusableDay) {
       
 51780       focusedDate = props.getFirstFocusableDay(currentMonth);
       
 51781     }
       
 51782 
       
 51783     var horizontalMonthPadding = props.horizontalMonthPadding;
       
 51784 
       
 51785 
       
 51786     var translationValue = props.isRTL && _this.isHorizontal() ? -(0, _getCalendarMonthWidth2['default'])(props.daySize, horizontalMonthPadding) : 0;
       
 51787 
       
 51788     _this.hasSetInitialVisibleMonth = !props.hidden;
       
 51789     _this.state = {
       
 51790       currentMonth: currentMonth,
       
 51791       monthTransition: null,
       
 51792       translationValue: translationValue,
       
 51793       scrollableMonthMultiple: 1,
       
 51794       calendarMonthWidth: (0, _getCalendarMonthWidth2['default'])(props.daySize, horizontalMonthPadding),
       
 51795       focusedDate: !props.hidden || props.isFocused ? focusedDate : null,
       
 51796       nextFocusedDate: null,
       
 51797       showKeyboardShortcuts: props.showKeyboardShortcuts,
       
 51798       onKeyboardShortcutsPanelClose: function () {
       
 51799         function onKeyboardShortcutsPanelClose() {}
       
 51800 
       
 51801         return onKeyboardShortcutsPanelClose;
       
 51802       }(),
       
 51803 
       
 51804       isTouchDevice: (0, _isTouchDevice2['default'])(),
       
 51805       withMouseInteractions: true,
       
 51806       calendarInfoWidth: 0,
       
 51807       monthTitleHeight: null,
       
 51808       hasSetHeight: false
       
 51809     };
       
 51810 
       
 51811     _this.setCalendarMonthWeeks(currentMonth);
       
 51812 
       
 51813     _this.calendarMonthGridHeight = 0;
       
 51814     _this.setCalendarInfoWidthTimeout = null;
       
 51815 
       
 51816     _this.onKeyDown = _this.onKeyDown.bind(_this);
       
 51817     _this.throttledKeyDown = (0, _throttle2['default'])(_this.onFinalKeyDown, 200, { trailing: false });
       
 51818     _this.onPrevMonthClick = _this.onPrevMonthClick.bind(_this);
       
 51819     _this.onNextMonthClick = _this.onNextMonthClick.bind(_this);
       
 51820     _this.onMonthChange = _this.onMonthChange.bind(_this);
       
 51821     _this.onYearChange = _this.onYearChange.bind(_this);
       
 51822 
       
 51823     _this.multiplyScrollableMonths = _this.multiplyScrollableMonths.bind(_this);
       
 51824     _this.updateStateAfterMonthTransition = _this.updateStateAfterMonthTransition.bind(_this);
       
 51825 
       
 51826     _this.openKeyboardShortcutsPanel = _this.openKeyboardShortcutsPanel.bind(_this);
       
 51827     _this.closeKeyboardShortcutsPanel = _this.closeKeyboardShortcutsPanel.bind(_this);
       
 51828 
       
 51829     _this.setCalendarInfoRef = _this.setCalendarInfoRef.bind(_this);
       
 51830     _this.setContainerRef = _this.setContainerRef.bind(_this);
       
 51831     _this.setTransitionContainerRef = _this.setTransitionContainerRef.bind(_this);
       
 51832     _this.setMonthTitleHeight = _this.setMonthTitleHeight.bind(_this);
       
 51833     return _this;
       
 51834   }
       
 51835 
       
 51836   _createClass(DayPicker, [{
       
 51837     key: 'componentDidMount',
       
 51838     value: function () {
       
 51839       function componentDidMount() {
       
 51840         var currentMonth = this.state.currentMonth;
       
 51841 
       
 51842         if (this.calendarInfo) {
 37349           this.setState({
 51843           this.setState({
 37350             noticeList: []
 51844             isTouchDevice: (0, _isTouchDevice2['default'])(),
       
 51845             calendarInfoWidth: (0, _calculateDimension2['default'])(this.calendarInfo, 'width', true, true)
       
 51846           });
       
 51847         } else {
       
 51848           this.setState({ isTouchDevice: (0, _isTouchDevice2['default'])() });
       
 51849         }
       
 51850 
       
 51851         this.setCalendarMonthWeeks(currentMonth);
       
 51852       }
       
 51853 
       
 51854       return componentDidMount;
       
 51855     }()
       
 51856   }, {
       
 51857     key: 'componentWillReceiveProps',
       
 51858     value: function () {
       
 51859       function componentWillReceiveProps(nextProps) {
       
 51860         var hidden = nextProps.hidden,
       
 51861             isFocused = nextProps.isFocused,
       
 51862             showKeyboardShortcuts = nextProps.showKeyboardShortcuts,
       
 51863             onBlur = nextProps.onBlur,
       
 51864             renderMonthText = nextProps.renderMonthText,
       
 51865             horizontalMonthPadding = nextProps.horizontalMonthPadding;
       
 51866         var currentMonth = this.state.currentMonth;
       
 51867 
       
 51868 
       
 51869         if (!hidden) {
       
 51870           if (!this.hasSetInitialVisibleMonth) {
       
 51871             this.hasSetInitialVisibleMonth = true;
       
 51872             this.setState({
       
 51873               currentMonth: nextProps.initialVisibleMonth()
       
 51874             });
       
 51875           }
       
 51876         }
       
 51877 
       
 51878         var _props = this.props,
       
 51879             daySize = _props.daySize,
       
 51880             prevIsFocused = _props.isFocused,
       
 51881             prevRenderMonthText = _props.renderMonthText;
       
 51882 
       
 51883 
       
 51884         if (nextProps.daySize !== daySize) {
       
 51885           this.setState({
       
 51886             calendarMonthWidth: (0, _getCalendarMonthWidth2['default'])(nextProps.daySize, horizontalMonthPadding)
 37351           });
 51887           });
 37352         }
 51888         }
 37353       }, {
 51889 
 37354         key: "render",
 51890         if (isFocused !== prevIsFocused) {
 37355         value: function render() {
 51891           if (isFocused) {
 37356           return Object(external_this_wp_element_["createElement"])(OriginalComponent, Object(esm_extends["a" /* default */])({
 51892             var focusedDate = this.getFocusedDay(currentMonth);
 37357             noticeList: this.state.noticeList,
 51893 
 37358             noticeOperations: this.noticeOperations,
 51894             var onKeyboardShortcutsPanelClose = this.state.onKeyboardShortcutsPanelClose;
 37359             noticeUI: this.state.noticeList.length > 0 && Object(external_this_wp_element_["createElement"])(list, {
 51895 
 37360               className: "components-with-notices-ui",
 51896             if (nextProps.showKeyboardShortcuts) {
 37361               notices: this.state.noticeList,
 51897               // the ? shortcut came from the input and we should return input there once it is close
 37362               onRemove: this.removeNotice
 51898               onKeyboardShortcutsPanelClose = onBlur;
 37363             })
 51899             }
 37364           }, this.props));
 51900 
       
 51901             this.setState({
       
 51902               showKeyboardShortcuts: showKeyboardShortcuts,
       
 51903               onKeyboardShortcutsPanelClose: onKeyboardShortcutsPanelClose,
       
 51904               focusedDate: focusedDate,
       
 51905               withMouseInteractions: false
       
 51906             });
       
 51907           } else {
       
 51908             this.setState({ focusedDate: null });
       
 51909           }
 37365         }
 51910         }
 37366       }]);
 51911 
 37367 
 51912         if (renderMonthText !== prevRenderMonthText) {
 37368       return WrappedBlockEdit;
 51913           this.setState({
 37369     }(external_this_wp_element_["Component"])
 51914             monthTitleHeight: null
       
 51915           });
       
 51916         }
       
 51917       }
       
 51918 
       
 51919       return componentWillReceiveProps;
       
 51920     }()
       
 51921   }, {
       
 51922     key: 'shouldComponentUpdate',
       
 51923     value: function () {
       
 51924       function shouldComponentUpdate(nextProps, nextState) {
       
 51925         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
 51926       }
       
 51927 
       
 51928       return shouldComponentUpdate;
       
 51929     }()
       
 51930   }, {
       
 51931     key: 'componentWillUpdate',
       
 51932     value: function () {
       
 51933       function componentWillUpdate() {
       
 51934         var _this2 = this;
       
 51935 
       
 51936         var transitionDuration = this.props.transitionDuration;
       
 51937 
       
 51938         // Calculating the dimensions trigger a DOM repaint which
       
 51939         // breaks the CSS transition.
       
 51940         // The setTimeout will wait until the transition ends.
       
 51941 
       
 51942         if (this.calendarInfo) {
       
 51943           this.setCalendarInfoWidthTimeout = setTimeout(function () {
       
 51944             var calendarInfoWidth = _this2.state.calendarInfoWidth;
       
 51945 
       
 51946             var calendarInfoPanelWidth = (0, _calculateDimension2['default'])(_this2.calendarInfo, 'width', true, true);
       
 51947             if (calendarInfoWidth !== calendarInfoPanelWidth) {
       
 51948               _this2.setState({
       
 51949                 calendarInfoWidth: calendarInfoPanelWidth
       
 51950               });
       
 51951             }
       
 51952           }, transitionDuration);
       
 51953         }
       
 51954       }
       
 51955 
       
 51956       return componentWillUpdate;
       
 51957     }()
       
 51958   }, {
       
 51959     key: 'componentDidUpdate',
       
 51960     value: function () {
       
 51961       function componentDidUpdate(prevProps) {
       
 51962         var _props2 = this.props,
       
 51963             orientation = _props2.orientation,
       
 51964             daySize = _props2.daySize,
       
 51965             isFocused = _props2.isFocused,
       
 51966             numberOfMonths = _props2.numberOfMonths;
       
 51967         var _state = this.state,
       
 51968             focusedDate = _state.focusedDate,
       
 51969             monthTitleHeight = _state.monthTitleHeight;
       
 51970 
       
 51971 
       
 51972         if (this.isHorizontal() && (orientation !== prevProps.orientation || daySize !== prevProps.daySize)) {
       
 51973           var visibleCalendarWeeks = this.calendarMonthWeeks.slice(1, numberOfMonths + 1);
       
 51974           var calendarMonthWeeksHeight = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
 51975           var newMonthHeight = monthTitleHeight + calendarMonthWeeksHeight + 1;
       
 51976           this.adjustDayPickerHeight(newMonthHeight);
       
 51977         }
       
 51978 
       
 51979         if (!prevProps.isFocused && isFocused && !focusedDate) {
       
 51980           this.container.focus();
       
 51981         }
       
 51982       }
       
 51983 
       
 51984       return componentDidUpdate;
       
 51985     }()
       
 51986   }, {
       
 51987     key: 'componentWillUnmount',
       
 51988     value: function () {
       
 51989       function componentWillUnmount() {
       
 51990         clearTimeout(this.setCalendarInfoWidthTimeout);
       
 51991       }
       
 51992 
       
 51993       return componentWillUnmount;
       
 51994     }()
       
 51995   }, {
       
 51996     key: 'onKeyDown',
       
 51997     value: function () {
       
 51998       function onKeyDown(e) {
       
 51999         e.stopPropagation();
       
 52000         if (!_constants.MODIFIER_KEY_NAMES.has(e.key)) {
       
 52001           this.throttledKeyDown(e);
       
 52002         }
       
 52003       }
       
 52004 
       
 52005       return onKeyDown;
       
 52006     }()
       
 52007   }, {
       
 52008     key: 'onFinalKeyDown',
       
 52009     value: function () {
       
 52010       function onFinalKeyDown(e) {
       
 52011         this.setState({ withMouseInteractions: false });
       
 52012 
       
 52013         var _props3 = this.props,
       
 52014             onBlur = _props3.onBlur,
       
 52015             isRTL = _props3.isRTL;
       
 52016         var _state2 = this.state,
       
 52017             focusedDate = _state2.focusedDate,
       
 52018             showKeyboardShortcuts = _state2.showKeyboardShortcuts;
       
 52019 
       
 52020         if (!focusedDate) return;
       
 52021 
       
 52022         var newFocusedDate = focusedDate.clone();
       
 52023 
       
 52024         var didTransitionMonth = false;
       
 52025 
       
 52026         // focus might be anywhere when the keyboard shortcuts panel is opened so we want to
       
 52027         // return it to wherever it was before when the panel was opened
       
 52028         var activeElement = (0, _getActiveElement2['default'])();
       
 52029         var onKeyboardShortcutsPanelClose = function () {
       
 52030           function onKeyboardShortcutsPanelClose() {
       
 52031             if (activeElement) activeElement.focus();
       
 52032           }
       
 52033 
       
 52034           return onKeyboardShortcutsPanelClose;
       
 52035         }();
       
 52036 
       
 52037         switch (e.key) {
       
 52038           case 'ArrowUp':
       
 52039             e.preventDefault();
       
 52040             newFocusedDate.subtract(1, 'week');
       
 52041             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
 52042             break;
       
 52043           case 'ArrowLeft':
       
 52044             e.preventDefault();
       
 52045             if (isRTL) {
       
 52046               newFocusedDate.add(1, 'day');
       
 52047             } else {
       
 52048               newFocusedDate.subtract(1, 'day');
       
 52049             }
       
 52050             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
 52051             break;
       
 52052           case 'Home':
       
 52053             e.preventDefault();
       
 52054             newFocusedDate.startOf('week');
       
 52055             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
 52056             break;
       
 52057           case 'PageUp':
       
 52058             e.preventDefault();
       
 52059             newFocusedDate.subtract(1, 'month');
       
 52060             didTransitionMonth = this.maybeTransitionPrevMonth(newFocusedDate);
       
 52061             break;
       
 52062 
       
 52063           case 'ArrowDown':
       
 52064             e.preventDefault();
       
 52065             newFocusedDate.add(1, 'week');
       
 52066             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
 52067             break;
       
 52068           case 'ArrowRight':
       
 52069             e.preventDefault();
       
 52070             if (isRTL) {
       
 52071               newFocusedDate.subtract(1, 'day');
       
 52072             } else {
       
 52073               newFocusedDate.add(1, 'day');
       
 52074             }
       
 52075             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
 52076             break;
       
 52077           case 'End':
       
 52078             e.preventDefault();
       
 52079             newFocusedDate.endOf('week');
       
 52080             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
 52081             break;
       
 52082           case 'PageDown':
       
 52083             e.preventDefault();
       
 52084             newFocusedDate.add(1, 'month');
       
 52085             didTransitionMonth = this.maybeTransitionNextMonth(newFocusedDate);
       
 52086             break;
       
 52087 
       
 52088           case '?':
       
 52089             this.openKeyboardShortcutsPanel(onKeyboardShortcutsPanelClose);
       
 52090             break;
       
 52091 
       
 52092           case 'Escape':
       
 52093             if (showKeyboardShortcuts) {
       
 52094               this.closeKeyboardShortcutsPanel();
       
 52095             } else {
       
 52096               onBlur();
       
 52097             }
       
 52098             break;
       
 52099 
       
 52100           default:
       
 52101             break;
       
 52102         }
       
 52103 
       
 52104         // If there was a month transition, do not update the focused date until the transition has
       
 52105         // completed. Otherwise, attempting to focus on a DOM node may interrupt the CSS animation. If
       
 52106         // didTransitionMonth is true, the focusedDate gets updated in #updateStateAfterMonthTransition
       
 52107         if (!didTransitionMonth) {
       
 52108           this.setState({
       
 52109             focusedDate: newFocusedDate
       
 52110           });
       
 52111         }
       
 52112       }
       
 52113 
       
 52114       return onFinalKeyDown;
       
 52115     }()
       
 52116   }, {
       
 52117     key: 'onPrevMonthClick',
       
 52118     value: function () {
       
 52119       function onPrevMonthClick(nextFocusedDate, e) {
       
 52120         var _props4 = this.props,
       
 52121             daySize = _props4.daySize,
       
 52122             isRTL = _props4.isRTL,
       
 52123             numberOfMonths = _props4.numberOfMonths;
       
 52124         var _state3 = this.state,
       
 52125             calendarMonthWidth = _state3.calendarMonthWidth,
       
 52126             monthTitleHeight = _state3.monthTitleHeight;
       
 52127 
       
 52128 
       
 52129         if (e) e.preventDefault();
       
 52130 
       
 52131         var translationValue = void 0;
       
 52132         if (this.isVertical()) {
       
 52133           var calendarMonthWeeksHeight = this.calendarMonthWeeks[0] * (daySize - 1);
       
 52134           translationValue = monthTitleHeight + calendarMonthWeeksHeight + 1;
       
 52135         } else if (this.isHorizontal()) {
       
 52136           translationValue = calendarMonthWidth;
       
 52137           if (isRTL) {
       
 52138             translationValue = -2 * calendarMonthWidth;
       
 52139           }
       
 52140 
       
 52141           var visibleCalendarWeeks = this.calendarMonthWeeks.slice(0, numberOfMonths);
       
 52142           var _calendarMonthWeeksHeight = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
 52143           var newMonthHeight = monthTitleHeight + _calendarMonthWeeksHeight + 1;
       
 52144           this.adjustDayPickerHeight(newMonthHeight);
       
 52145         }
       
 52146 
       
 52147         this.setState({
       
 52148           monthTransition: PREV_TRANSITION,
       
 52149           translationValue: translationValue,
       
 52150           focusedDate: null,
       
 52151           nextFocusedDate: nextFocusedDate
       
 52152         });
       
 52153       }
       
 52154 
       
 52155       return onPrevMonthClick;
       
 52156     }()
       
 52157   }, {
       
 52158     key: 'onMonthChange',
       
 52159     value: function () {
       
 52160       function onMonthChange(currentMonth) {
       
 52161         this.setCalendarMonthWeeks(currentMonth);
       
 52162         this.calculateAndSetDayPickerHeight();
       
 52163 
       
 52164         // Translation value is a hack to force an invisible transition that
       
 52165         // properly rerenders the CalendarMonthGrid
       
 52166         this.setState({
       
 52167           monthTransition: MONTH_SELECTION_TRANSITION,
       
 52168           translationValue: 0.00001,
       
 52169           focusedDate: null,
       
 52170           nextFocusedDate: currentMonth,
       
 52171           currentMonth: currentMonth
       
 52172         });
       
 52173       }
       
 52174 
       
 52175       return onMonthChange;
       
 52176     }()
       
 52177   }, {
       
 52178     key: 'onYearChange',
       
 52179     value: function () {
       
 52180       function onYearChange(currentMonth) {
       
 52181         this.setCalendarMonthWeeks(currentMonth);
       
 52182         this.calculateAndSetDayPickerHeight();
       
 52183 
       
 52184         // Translation value is a hack to force an invisible transition that
       
 52185         // properly rerenders the CalendarMonthGrid
       
 52186         this.setState({
       
 52187           monthTransition: YEAR_SELECTION_TRANSITION,
       
 52188           translationValue: 0.0001,
       
 52189           focusedDate: null,
       
 52190           nextFocusedDate: currentMonth,
       
 52191           currentMonth: currentMonth
       
 52192         });
       
 52193       }
       
 52194 
       
 52195       return onYearChange;
       
 52196     }()
       
 52197   }, {
       
 52198     key: 'onNextMonthClick',
       
 52199     value: function () {
       
 52200       function onNextMonthClick(nextFocusedDate, e) {
       
 52201         var _props5 = this.props,
       
 52202             isRTL = _props5.isRTL,
       
 52203             numberOfMonths = _props5.numberOfMonths,
       
 52204             daySize = _props5.daySize;
       
 52205         var _state4 = this.state,
       
 52206             calendarMonthWidth = _state4.calendarMonthWidth,
       
 52207             monthTitleHeight = _state4.monthTitleHeight;
       
 52208 
       
 52209 
       
 52210         if (e) e.preventDefault();
       
 52211 
       
 52212         var translationValue = void 0;
       
 52213 
       
 52214         if (this.isVertical()) {
       
 52215           var firstVisibleMonthWeeks = this.calendarMonthWeeks[1];
       
 52216           var calendarMonthWeeksHeight = firstVisibleMonthWeeks * (daySize - 1);
       
 52217           translationValue = -(monthTitleHeight + calendarMonthWeeksHeight + 1);
       
 52218         }
       
 52219 
       
 52220         if (this.isHorizontal()) {
       
 52221           translationValue = -calendarMonthWidth;
       
 52222           if (isRTL) {
       
 52223             translationValue = 0;
       
 52224           }
       
 52225 
       
 52226           var visibleCalendarWeeks = this.calendarMonthWeeks.slice(2, numberOfMonths + 2);
       
 52227           var _calendarMonthWeeksHeight2 = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
 52228           var newMonthHeight = monthTitleHeight + _calendarMonthWeeksHeight2 + 1;
       
 52229           this.adjustDayPickerHeight(newMonthHeight);
       
 52230         }
       
 52231 
       
 52232         this.setState({
       
 52233           monthTransition: NEXT_TRANSITION,
       
 52234           translationValue: translationValue,
       
 52235           focusedDate: null,
       
 52236           nextFocusedDate: nextFocusedDate
       
 52237         });
       
 52238       }
       
 52239 
       
 52240       return onNextMonthClick;
       
 52241     }()
       
 52242   }, {
       
 52243     key: 'getFirstDayOfWeek',
       
 52244     value: function () {
       
 52245       function getFirstDayOfWeek() {
       
 52246         var firstDayOfWeek = this.props.firstDayOfWeek;
       
 52247 
       
 52248         if (firstDayOfWeek == null) {
       
 52249           return _moment2['default'].localeData().firstDayOfWeek();
       
 52250         }
       
 52251 
       
 52252         return firstDayOfWeek;
       
 52253       }
       
 52254 
       
 52255       return getFirstDayOfWeek;
       
 52256     }()
       
 52257   }, {
       
 52258     key: 'getFirstVisibleIndex',
       
 52259     value: function () {
       
 52260       function getFirstVisibleIndex() {
       
 52261         var orientation = this.props.orientation;
       
 52262         var monthTransition = this.state.monthTransition;
       
 52263 
       
 52264 
       
 52265         if (orientation === _constants.VERTICAL_SCROLLABLE) return 0;
       
 52266 
       
 52267         var firstVisibleMonthIndex = 1;
       
 52268         if (monthTransition === PREV_TRANSITION) {
       
 52269           firstVisibleMonthIndex -= 1;
       
 52270         } else if (monthTransition === NEXT_TRANSITION) {
       
 52271           firstVisibleMonthIndex += 1;
       
 52272         }
       
 52273 
       
 52274         return firstVisibleMonthIndex;
       
 52275       }
       
 52276 
       
 52277       return getFirstVisibleIndex;
       
 52278     }()
       
 52279   }, {
       
 52280     key: 'getFocusedDay',
       
 52281     value: function () {
       
 52282       function getFocusedDay(newMonth) {
       
 52283         var _props6 = this.props,
       
 52284             getFirstFocusableDay = _props6.getFirstFocusableDay,
       
 52285             numberOfMonths = _props6.numberOfMonths;
       
 52286 
       
 52287 
       
 52288         var focusedDate = void 0;
       
 52289         if (getFirstFocusableDay) {
       
 52290           focusedDate = getFirstFocusableDay(newMonth);
       
 52291         }
       
 52292 
       
 52293         if (newMonth && (!focusedDate || !(0, _isDayVisible2['default'])(focusedDate, newMonth, numberOfMonths))) {
       
 52294           focusedDate = newMonth.clone().startOf('month');
       
 52295         }
       
 52296 
       
 52297         return focusedDate;
       
 52298       }
       
 52299 
       
 52300       return getFocusedDay;
       
 52301     }()
       
 52302   }, {
       
 52303     key: 'setMonthTitleHeight',
       
 52304     value: function () {
       
 52305       function setMonthTitleHeight(monthTitleHeight) {
       
 52306         var _this3 = this;
       
 52307 
       
 52308         this.setState({
       
 52309           monthTitleHeight: monthTitleHeight
       
 52310         }, function () {
       
 52311           _this3.calculateAndSetDayPickerHeight();
       
 52312         });
       
 52313       }
       
 52314 
       
 52315       return setMonthTitleHeight;
       
 52316     }()
       
 52317   }, {
       
 52318     key: 'setCalendarMonthWeeks',
       
 52319     value: function () {
       
 52320       function setCalendarMonthWeeks(currentMonth) {
       
 52321         var numberOfMonths = this.props.numberOfMonths;
       
 52322 
       
 52323 
       
 52324         this.calendarMonthWeeks = [];
       
 52325         var month = currentMonth.clone().subtract(1, 'months');
       
 52326         var firstDayOfWeek = this.getFirstDayOfWeek();
       
 52327         for (var i = 0; i < numberOfMonths + 2; i += 1) {
       
 52328           var numberOfWeeks = (0, _getNumberOfCalendarMonthWeeks2['default'])(month, firstDayOfWeek);
       
 52329           this.calendarMonthWeeks.push(numberOfWeeks);
       
 52330           month = month.add(1, 'months');
       
 52331         }
       
 52332       }
       
 52333 
       
 52334       return setCalendarMonthWeeks;
       
 52335     }()
       
 52336   }, {
       
 52337     key: 'setContainerRef',
       
 52338     value: function () {
       
 52339       function setContainerRef(ref) {
       
 52340         this.container = ref;
       
 52341       }
       
 52342 
       
 52343       return setContainerRef;
       
 52344     }()
       
 52345   }, {
       
 52346     key: 'setCalendarInfoRef',
       
 52347     value: function () {
       
 52348       function setCalendarInfoRef(ref) {
       
 52349         this.calendarInfo = ref;
       
 52350       }
       
 52351 
       
 52352       return setCalendarInfoRef;
       
 52353     }()
       
 52354   }, {
       
 52355     key: 'setTransitionContainerRef',
       
 52356     value: function () {
       
 52357       function setTransitionContainerRef(ref) {
       
 52358         this.transitionContainer = ref;
       
 52359       }
       
 52360 
       
 52361       return setTransitionContainerRef;
       
 52362     }()
       
 52363   }, {
       
 52364     key: 'maybeTransitionNextMonth',
       
 52365     value: function () {
       
 52366       function maybeTransitionNextMonth(newFocusedDate) {
       
 52367         var numberOfMonths = this.props.numberOfMonths;
       
 52368         var _state5 = this.state,
       
 52369             currentMonth = _state5.currentMonth,
       
 52370             focusedDate = _state5.focusedDate;
       
 52371 
       
 52372 
       
 52373         var newFocusedDateMonth = newFocusedDate.month();
       
 52374         var focusedDateMonth = focusedDate.month();
       
 52375         var isNewFocusedDateVisible = (0, _isDayVisible2['default'])(newFocusedDate, currentMonth, numberOfMonths);
       
 52376         if (newFocusedDateMonth !== focusedDateMonth && !isNewFocusedDateVisible) {
       
 52377           this.onNextMonthClick(newFocusedDate);
       
 52378           return true;
       
 52379         }
       
 52380 
       
 52381         return false;
       
 52382       }
       
 52383 
       
 52384       return maybeTransitionNextMonth;
       
 52385     }()
       
 52386   }, {
       
 52387     key: 'maybeTransitionPrevMonth',
       
 52388     value: function () {
       
 52389       function maybeTransitionPrevMonth(newFocusedDate) {
       
 52390         var numberOfMonths = this.props.numberOfMonths;
       
 52391         var _state6 = this.state,
       
 52392             currentMonth = _state6.currentMonth,
       
 52393             focusedDate = _state6.focusedDate;
       
 52394 
       
 52395 
       
 52396         var newFocusedDateMonth = newFocusedDate.month();
       
 52397         var focusedDateMonth = focusedDate.month();
       
 52398         var isNewFocusedDateVisible = (0, _isDayVisible2['default'])(newFocusedDate, currentMonth, numberOfMonths);
       
 52399         if (newFocusedDateMonth !== focusedDateMonth && !isNewFocusedDateVisible) {
       
 52400           this.onPrevMonthClick(newFocusedDate);
       
 52401           return true;
       
 52402         }
       
 52403 
       
 52404         return false;
       
 52405       }
       
 52406 
       
 52407       return maybeTransitionPrevMonth;
       
 52408     }()
       
 52409   }, {
       
 52410     key: 'multiplyScrollableMonths',
       
 52411     value: function () {
       
 52412       function multiplyScrollableMonths(e) {
       
 52413         var onMultiplyScrollableMonths = this.props.onMultiplyScrollableMonths;
       
 52414 
       
 52415         if (e) e.preventDefault();
       
 52416 
       
 52417         if (onMultiplyScrollableMonths) onMultiplyScrollableMonths(e);
       
 52418 
       
 52419         this.setState(function (_ref) {
       
 52420           var scrollableMonthMultiple = _ref.scrollableMonthMultiple;
       
 52421           return {
       
 52422             scrollableMonthMultiple: scrollableMonthMultiple + 1
       
 52423           };
       
 52424         });
       
 52425       }
       
 52426 
       
 52427       return multiplyScrollableMonths;
       
 52428     }()
       
 52429   }, {
       
 52430     key: 'isHorizontal',
       
 52431     value: function () {
       
 52432       function isHorizontal() {
       
 52433         var orientation = this.props.orientation;
       
 52434 
       
 52435         return orientation === _constants.HORIZONTAL_ORIENTATION;
       
 52436       }
       
 52437 
       
 52438       return isHorizontal;
       
 52439     }()
       
 52440   }, {
       
 52441     key: 'isVertical',
       
 52442     value: function () {
       
 52443       function isVertical() {
       
 52444         var orientation = this.props.orientation;
       
 52445 
       
 52446         return orientation === _constants.VERTICAL_ORIENTATION || orientation === _constants.VERTICAL_SCROLLABLE;
       
 52447       }
       
 52448 
       
 52449       return isVertical;
       
 52450     }()
       
 52451   }, {
       
 52452     key: 'updateStateAfterMonthTransition',
       
 52453     value: function () {
       
 52454       function updateStateAfterMonthTransition() {
       
 52455         var _this4 = this;
       
 52456 
       
 52457         var _props7 = this.props,
       
 52458             onPrevMonthClick = _props7.onPrevMonthClick,
       
 52459             onNextMonthClick = _props7.onNextMonthClick,
       
 52460             numberOfMonths = _props7.numberOfMonths,
       
 52461             onMonthChange = _props7.onMonthChange,
       
 52462             onYearChange = _props7.onYearChange,
       
 52463             isRTL = _props7.isRTL;
       
 52464         var _state7 = this.state,
       
 52465             currentMonth = _state7.currentMonth,
       
 52466             monthTransition = _state7.monthTransition,
       
 52467             focusedDate = _state7.focusedDate,
       
 52468             nextFocusedDate = _state7.nextFocusedDate,
       
 52469             withMouseInteractions = _state7.withMouseInteractions,
       
 52470             calendarMonthWidth = _state7.calendarMonthWidth;
       
 52471 
       
 52472 
       
 52473         if (!monthTransition) return;
       
 52474 
       
 52475         var newMonth = currentMonth.clone();
       
 52476         var firstDayOfWeek = this.getFirstDayOfWeek();
       
 52477         if (monthTransition === PREV_TRANSITION) {
       
 52478           newMonth.subtract(1, 'month');
       
 52479           if (onPrevMonthClick) onPrevMonthClick(newMonth);
       
 52480           var newInvisibleMonth = newMonth.clone().subtract(1, 'month');
       
 52481           var numberOfWeeks = (0, _getNumberOfCalendarMonthWeeks2['default'])(newInvisibleMonth, firstDayOfWeek);
       
 52482           this.calendarMonthWeeks = [numberOfWeeks].concat(_toConsumableArray(this.calendarMonthWeeks.slice(0, -1)));
       
 52483         } else if (monthTransition === NEXT_TRANSITION) {
       
 52484           newMonth.add(1, 'month');
       
 52485           if (onNextMonthClick) onNextMonthClick(newMonth);
       
 52486           var _newInvisibleMonth = newMonth.clone().add(numberOfMonths, 'month');
       
 52487           var _numberOfWeeks = (0, _getNumberOfCalendarMonthWeeks2['default'])(_newInvisibleMonth, firstDayOfWeek);
       
 52488           this.calendarMonthWeeks = [].concat(_toConsumableArray(this.calendarMonthWeeks.slice(1)), [_numberOfWeeks]);
       
 52489         } else if (monthTransition === MONTH_SELECTION_TRANSITION) {
       
 52490           if (onMonthChange) onMonthChange(newMonth);
       
 52491         } else if (monthTransition === YEAR_SELECTION_TRANSITION) {
       
 52492           if (onYearChange) onYearChange(newMonth);
       
 52493         }
       
 52494 
       
 52495         var newFocusedDate = null;
       
 52496         if (nextFocusedDate) {
       
 52497           newFocusedDate = nextFocusedDate;
       
 52498         } else if (!focusedDate && !withMouseInteractions) {
       
 52499           newFocusedDate = this.getFocusedDay(newMonth);
       
 52500         }
       
 52501 
       
 52502         this.setState({
       
 52503           currentMonth: newMonth,
       
 52504           monthTransition: null,
       
 52505           translationValue: isRTL && this.isHorizontal() ? -calendarMonthWidth : 0,
       
 52506           nextFocusedDate: null,
       
 52507           focusedDate: newFocusedDate
       
 52508         }, function () {
       
 52509           // we don't want to focus on the relevant calendar day after a month transition
       
 52510           // if the user is navigating around using a mouse
       
 52511           if (withMouseInteractions) {
       
 52512             var activeElement = (0, _getActiveElement2['default'])();
       
 52513             if (activeElement && activeElement !== document.body && _this4.container.contains(activeElement)) {
       
 52514               activeElement.blur();
       
 52515             }
       
 52516           }
       
 52517         });
       
 52518       }
       
 52519 
       
 52520       return updateStateAfterMonthTransition;
       
 52521     }()
       
 52522   }, {
       
 52523     key: 'adjustDayPickerHeight',
       
 52524     value: function () {
       
 52525       function adjustDayPickerHeight(newMonthHeight) {
       
 52526         var _this5 = this;
       
 52527 
       
 52528         var monthHeight = newMonthHeight + MONTH_PADDING;
       
 52529         if (monthHeight !== this.calendarMonthGridHeight) {
       
 52530           this.transitionContainer.style.height = String(monthHeight) + 'px';
       
 52531           if (!this.calendarMonthGridHeight) {
       
 52532             setTimeout(function () {
       
 52533               _this5.setState({ hasSetHeight: true });
       
 52534             }, 0);
       
 52535           }
       
 52536           this.calendarMonthGridHeight = monthHeight;
       
 52537         }
       
 52538       }
       
 52539 
       
 52540       return adjustDayPickerHeight;
       
 52541     }()
       
 52542   }, {
       
 52543     key: 'calculateAndSetDayPickerHeight',
       
 52544     value: function () {
       
 52545       function calculateAndSetDayPickerHeight() {
       
 52546         var _props8 = this.props,
       
 52547             daySize = _props8.daySize,
       
 52548             numberOfMonths = _props8.numberOfMonths;
       
 52549         var monthTitleHeight = this.state.monthTitleHeight;
       
 52550 
       
 52551 
       
 52552         var visibleCalendarWeeks = this.calendarMonthWeeks.slice(1, numberOfMonths + 1);
       
 52553         var calendarMonthWeeksHeight = Math.max.apply(Math, [0].concat(_toConsumableArray(visibleCalendarWeeks))) * (daySize - 1);
       
 52554         var newMonthHeight = monthTitleHeight + calendarMonthWeeksHeight + 1;
       
 52555 
       
 52556         if (this.isHorizontal()) {
       
 52557           this.adjustDayPickerHeight(newMonthHeight);
       
 52558         }
       
 52559       }
       
 52560 
       
 52561       return calculateAndSetDayPickerHeight;
       
 52562     }()
       
 52563   }, {
       
 52564     key: 'openKeyboardShortcutsPanel',
       
 52565     value: function () {
       
 52566       function openKeyboardShortcutsPanel(onCloseCallBack) {
       
 52567         this.setState({
       
 52568           showKeyboardShortcuts: true,
       
 52569           onKeyboardShortcutsPanelClose: onCloseCallBack
       
 52570         });
       
 52571       }
       
 52572 
       
 52573       return openKeyboardShortcutsPanel;
       
 52574     }()
       
 52575   }, {
       
 52576     key: 'closeKeyboardShortcutsPanel',
       
 52577     value: function () {
       
 52578       function closeKeyboardShortcutsPanel() {
       
 52579         var onKeyboardShortcutsPanelClose = this.state.onKeyboardShortcutsPanelClose;
       
 52580 
       
 52581 
       
 52582         if (onKeyboardShortcutsPanelClose) {
       
 52583           onKeyboardShortcutsPanelClose();
       
 52584         }
       
 52585 
       
 52586         this.setState({
       
 52587           onKeyboardShortcutsPanelClose: null,
       
 52588           showKeyboardShortcuts: false
       
 52589         });
       
 52590       }
       
 52591 
       
 52592       return closeKeyboardShortcutsPanel;
       
 52593     }()
       
 52594   }, {
       
 52595     key: 'renderNavigation',
       
 52596     value: function () {
       
 52597       function renderNavigation() {
       
 52598         var _this6 = this;
       
 52599 
       
 52600         var _props9 = this.props,
       
 52601             navPrev = _props9.navPrev,
       
 52602             navNext = _props9.navNext,
       
 52603             noNavButtons = _props9.noNavButtons,
       
 52604             orientation = _props9.orientation,
       
 52605             phrases = _props9.phrases,
       
 52606             isRTL = _props9.isRTL;
       
 52607 
       
 52608 
       
 52609         if (noNavButtons) {
       
 52610           return null;
       
 52611         }
       
 52612 
       
 52613         var onNextMonthClick = void 0;
       
 52614         if (orientation === _constants.VERTICAL_SCROLLABLE) {
       
 52615           onNextMonthClick = this.multiplyScrollableMonths;
       
 52616         } else {
       
 52617           onNextMonthClick = function () {
       
 52618             function onNextMonthClick(e) {
       
 52619               _this6.onNextMonthClick(null, e);
       
 52620             }
       
 52621 
       
 52622             return onNextMonthClick;
       
 52623           }();
       
 52624         }
       
 52625 
       
 52626         return _react2['default'].createElement(_DayPickerNavigation2['default'], {
       
 52627           onPrevMonthClick: function () {
       
 52628             function onPrevMonthClick(e) {
       
 52629               _this6.onPrevMonthClick(null, e);
       
 52630             }
       
 52631 
       
 52632             return onPrevMonthClick;
       
 52633           }(),
       
 52634           onNextMonthClick: onNextMonthClick,
       
 52635           navPrev: navPrev,
       
 52636           navNext: navNext,
       
 52637           orientation: orientation,
       
 52638           phrases: phrases,
       
 52639           isRTL: isRTL
       
 52640         });
       
 52641       }
       
 52642 
       
 52643       return renderNavigation;
       
 52644     }()
       
 52645   }, {
       
 52646     key: 'renderWeekHeader',
       
 52647     value: function () {
       
 52648       function renderWeekHeader(index) {
       
 52649         var _props10 = this.props,
       
 52650             daySize = _props10.daySize,
       
 52651             horizontalMonthPadding = _props10.horizontalMonthPadding,
       
 52652             orientation = _props10.orientation,
       
 52653             weekDayFormat = _props10.weekDayFormat,
       
 52654             styles = _props10.styles;
       
 52655         var calendarMonthWidth = this.state.calendarMonthWidth;
       
 52656 
       
 52657         var verticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
 52658         var horizontalStyle = {
       
 52659           left: index * calendarMonthWidth
       
 52660         };
       
 52661         var verticalStyle = {
       
 52662           marginLeft: -calendarMonthWidth / 2
       
 52663         };
       
 52664 
       
 52665         var weekHeaderStyle = {}; // no styles applied to the vertical-scrollable orientation
       
 52666         if (this.isHorizontal()) {
       
 52667           weekHeaderStyle = horizontalStyle;
       
 52668         } else if (this.isVertical() && !verticalScrollable) {
       
 52669           weekHeaderStyle = verticalStyle;
       
 52670         }
       
 52671 
       
 52672         var firstDayOfWeek = this.getFirstDayOfWeek();
       
 52673 
       
 52674         var header = [];
       
 52675         for (var i = 0; i < 7; i += 1) {
       
 52676           header.push(_react2['default'].createElement(
       
 52677             'li',
       
 52678             _extends({ key: i }, (0, _reactWithStyles.css)(styles.DayPicker_weekHeader_li, { width: daySize })),
       
 52679             _react2['default'].createElement(
       
 52680               'small',
       
 52681               null,
       
 52682               (0, _moment2['default'])().day((i + firstDayOfWeek) % 7).format(weekDayFormat)
       
 52683             )
       
 52684           ));
       
 52685         }
       
 52686 
       
 52687         return _react2['default'].createElement(
       
 52688           'div',
       
 52689           _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_weekHeader, this.isVertical() && styles.DayPicker_weekHeader__vertical, verticalScrollable && styles.DayPicker_weekHeader__verticalScrollable, weekHeaderStyle, { padding: '0 ' + String(horizontalMonthPadding) + 'px' }), {
       
 52690             key: 'week-' + String(index)
       
 52691           }),
       
 52692           _react2['default'].createElement(
       
 52693             'ul',
       
 52694             (0, _reactWithStyles.css)(styles.DayPicker_weekHeader_ul),
       
 52695             header
       
 52696           )
       
 52697         );
       
 52698       }
       
 52699 
       
 52700       return renderWeekHeader;
       
 52701     }()
       
 52702   }, {
       
 52703     key: 'render',
       
 52704     value: function () {
       
 52705       function render() {
       
 52706         var _this7 = this;
       
 52707 
       
 52708         var _state8 = this.state,
       
 52709             calendarMonthWidth = _state8.calendarMonthWidth,
       
 52710             currentMonth = _state8.currentMonth,
       
 52711             monthTransition = _state8.monthTransition,
       
 52712             translationValue = _state8.translationValue,
       
 52713             scrollableMonthMultiple = _state8.scrollableMonthMultiple,
       
 52714             focusedDate = _state8.focusedDate,
       
 52715             showKeyboardShortcuts = _state8.showKeyboardShortcuts,
       
 52716             isTouch = _state8.isTouchDevice,
       
 52717             hasSetHeight = _state8.hasSetHeight,
       
 52718             calendarInfoWidth = _state8.calendarInfoWidth,
       
 52719             monthTitleHeight = _state8.monthTitleHeight;
       
 52720         var _props11 = this.props,
       
 52721             enableOutsideDays = _props11.enableOutsideDays,
       
 52722             numberOfMonths = _props11.numberOfMonths,
       
 52723             orientation = _props11.orientation,
       
 52724             modifiers = _props11.modifiers,
       
 52725             withPortal = _props11.withPortal,
       
 52726             onDayClick = _props11.onDayClick,
       
 52727             onDayMouseEnter = _props11.onDayMouseEnter,
       
 52728             onDayMouseLeave = _props11.onDayMouseLeave,
       
 52729             firstDayOfWeek = _props11.firstDayOfWeek,
       
 52730             renderMonthText = _props11.renderMonthText,
       
 52731             renderCalendarDay = _props11.renderCalendarDay,
       
 52732             renderDayContents = _props11.renderDayContents,
       
 52733             renderCalendarInfo = _props11.renderCalendarInfo,
       
 52734             renderMonthElement = _props11.renderMonthElement,
       
 52735             calendarInfoPosition = _props11.calendarInfoPosition,
       
 52736             hideKeyboardShortcutsPanel = _props11.hideKeyboardShortcutsPanel,
       
 52737             onOutsideClick = _props11.onOutsideClick,
       
 52738             monthFormat = _props11.monthFormat,
       
 52739             daySize = _props11.daySize,
       
 52740             isFocused = _props11.isFocused,
       
 52741             isRTL = _props11.isRTL,
       
 52742             styles = _props11.styles,
       
 52743             theme = _props11.theme,
       
 52744             phrases = _props11.phrases,
       
 52745             verticalHeight = _props11.verticalHeight,
       
 52746             dayAriaLabelFormat = _props11.dayAriaLabelFormat,
       
 52747             noBorder = _props11.noBorder,
       
 52748             transitionDuration = _props11.transitionDuration,
       
 52749             verticalBorderSpacing = _props11.verticalBorderSpacing,
       
 52750             horizontalMonthPadding = _props11.horizontalMonthPadding;
       
 52751         var dayPickerHorizontalPadding = theme.reactDates.spacing.dayPickerHorizontalPadding;
       
 52752 
       
 52753 
       
 52754         var isHorizontal = this.isHorizontal();
       
 52755 
       
 52756         var numOfWeekHeaders = this.isVertical() ? 1 : numberOfMonths;
       
 52757         var weekHeaders = [];
       
 52758         for (var i = 0; i < numOfWeekHeaders; i += 1) {
       
 52759           weekHeaders.push(this.renderWeekHeader(i));
       
 52760         }
       
 52761 
       
 52762         var verticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
 52763         var height = void 0;
       
 52764         if (isHorizontal) {
       
 52765           height = this.calendarMonthGridHeight;
       
 52766         } else if (this.isVertical() && !verticalScrollable && !withPortal) {
       
 52767           // If the user doesn't set a desired height,
       
 52768           // we default back to this kind of made-up value that generally looks good
       
 52769           height = verticalHeight || 1.75 * calendarMonthWidth;
       
 52770         }
       
 52771 
       
 52772         var isCalendarMonthGridAnimating = monthTransition !== null;
       
 52773 
       
 52774         var shouldFocusDate = !isCalendarMonthGridAnimating && isFocused;
       
 52775 
       
 52776         var keyboardShortcutButtonLocation = _DayPickerKeyboardShortcuts.BOTTOM_RIGHT;
       
 52777         if (this.isVertical()) {
       
 52778           keyboardShortcutButtonLocation = withPortal ? _DayPickerKeyboardShortcuts.TOP_LEFT : _DayPickerKeyboardShortcuts.TOP_RIGHT;
       
 52779         }
       
 52780 
       
 52781         var shouldAnimateHeight = isHorizontal && hasSetHeight;
       
 52782 
       
 52783         var calendarInfoPositionTop = calendarInfoPosition === _constants.INFO_POSITION_TOP;
       
 52784         var calendarInfoPositionBottom = calendarInfoPosition === _constants.INFO_POSITION_BOTTOM;
       
 52785         var calendarInfoPositionBefore = calendarInfoPosition === _constants.INFO_POSITION_BEFORE;
       
 52786         var calendarInfoPositionAfter = calendarInfoPosition === _constants.INFO_POSITION_AFTER;
       
 52787         var calendarInfoIsInline = calendarInfoPositionBefore || calendarInfoPositionAfter;
       
 52788 
       
 52789         var calendarInfo = renderCalendarInfo && _react2['default'].createElement(
       
 52790           'div',
       
 52791           _extends({
       
 52792             ref: this.setCalendarInfoRef
       
 52793           }, (0, _reactWithStyles.css)(calendarInfoIsInline && styles.DayPicker_calendarInfo__horizontal)),
       
 52794           renderCalendarInfo()
       
 52795         );
       
 52796 
       
 52797         var calendarInfoPanelWidth = renderCalendarInfo && calendarInfoIsInline ? calendarInfoWidth : 0;
       
 52798 
       
 52799         var firstVisibleMonthIndex = this.getFirstVisibleIndex();
       
 52800         var wrapperHorizontalWidth = calendarMonthWidth * numberOfMonths + 2 * dayPickerHorizontalPadding;
       
 52801         // Adding `1px` because of whitespace between 2 inline-block
       
 52802         var fullHorizontalWidth = wrapperHorizontalWidth + calendarInfoPanelWidth + 1;
       
 52803 
       
 52804         var transitionContainerStyle = {
       
 52805           width: isHorizontal && wrapperHorizontalWidth,
       
 52806           height: height
       
 52807         };
       
 52808 
       
 52809         var dayPickerWrapperStyle = {
       
 52810           width: isHorizontal && wrapperHorizontalWidth
       
 52811         };
       
 52812 
       
 52813         var dayPickerStyle = {
       
 52814           width: isHorizontal && fullHorizontalWidth,
       
 52815 
       
 52816           // These values are to center the datepicker (approximately) on the page
       
 52817           marginLeft: isHorizontal && withPortal ? -fullHorizontalWidth / 2 : null,
       
 52818           marginTop: isHorizontal && withPortal ? -calendarMonthWidth / 2 : null
       
 52819         };
       
 52820 
       
 52821         return _react2['default'].createElement(
       
 52822           'div',
       
 52823           _extends({
       
 52824             role: 'application',
       
 52825             'aria-label': phrases.calendarLabel
       
 52826           }, (0, _reactWithStyles.css)(styles.DayPicker, isHorizontal && styles.DayPicker__horizontal, verticalScrollable && styles.DayPicker__verticalScrollable, isHorizontal && withPortal && styles.DayPicker_portal__horizontal, this.isVertical() && withPortal && styles.DayPicker_portal__vertical, dayPickerStyle, !monthTitleHeight && styles.DayPicker__hidden, !noBorder && styles.DayPicker__withBorder)),
       
 52827           _react2['default'].createElement(
       
 52828             _reactOutsideClickHandler2['default'],
       
 52829             { onOutsideClick: onOutsideClick },
       
 52830             (calendarInfoPositionTop || calendarInfoPositionBefore) && calendarInfo,
       
 52831             _react2['default'].createElement(
       
 52832               'div',
       
 52833               (0, _reactWithStyles.css)(dayPickerWrapperStyle, calendarInfoIsInline && isHorizontal && styles.DayPicker_wrapper__horizontal),
       
 52834               _react2['default'].createElement(
       
 52835                 'div',
       
 52836                 _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_weekHeaders, isHorizontal && styles.DayPicker_weekHeaders__horizontal), {
       
 52837                   'aria-hidden': 'true',
       
 52838                   role: 'presentation'
       
 52839                 }),
       
 52840                 weekHeaders
       
 52841               ),
       
 52842               _react2['default'].createElement(
       
 52843                 'div',
       
 52844                 _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_focusRegion), {
       
 52845                   ref: this.setContainerRef,
       
 52846                   onClick: function () {
       
 52847                     function onClick(e) {
       
 52848                       e.stopPropagation();
       
 52849                     }
       
 52850 
       
 52851                     return onClick;
       
 52852                   }(),
       
 52853                   onKeyDown: this.onKeyDown,
       
 52854                   onMouseUp: function () {
       
 52855                     function onMouseUp() {
       
 52856                       _this7.setState({ withMouseInteractions: true });
       
 52857                     }
       
 52858 
       
 52859                     return onMouseUp;
       
 52860                   }(),
       
 52861                   role: 'region',
       
 52862                   tabIndex: -1
       
 52863                 }),
       
 52864                 !verticalScrollable && this.renderNavigation(),
       
 52865                 _react2['default'].createElement(
       
 52866                   'div',
       
 52867                   _extends({}, (0, _reactWithStyles.css)(styles.DayPicker_transitionContainer, shouldAnimateHeight && styles.DayPicker_transitionContainer__horizontal, this.isVertical() && styles.DayPicker_transitionContainer__vertical, verticalScrollable && styles.DayPicker_transitionContainer__verticalScrollable, transitionContainerStyle), {
       
 52868                     ref: this.setTransitionContainerRef
       
 52869                   }),
       
 52870                   _react2['default'].createElement(_CalendarMonthGrid2['default'], {
       
 52871                     setMonthTitleHeight: !monthTitleHeight ? this.setMonthTitleHeight : undefined,
       
 52872                     translationValue: translationValue,
       
 52873                     enableOutsideDays: enableOutsideDays,
       
 52874                     firstVisibleMonthIndex: firstVisibleMonthIndex,
       
 52875                     initialMonth: currentMonth,
       
 52876                     isAnimating: isCalendarMonthGridAnimating,
       
 52877                     modifiers: modifiers,
       
 52878                     orientation: orientation,
       
 52879                     numberOfMonths: numberOfMonths * scrollableMonthMultiple,
       
 52880                     onDayClick: onDayClick,
       
 52881                     onDayMouseEnter: onDayMouseEnter,
       
 52882                     onDayMouseLeave: onDayMouseLeave,
       
 52883                     onMonthChange: this.onMonthChange,
       
 52884                     onYearChange: this.onYearChange,
       
 52885                     renderMonthText: renderMonthText,
       
 52886                     renderCalendarDay: renderCalendarDay,
       
 52887                     renderDayContents: renderDayContents,
       
 52888                     renderMonthElement: renderMonthElement,
       
 52889                     onMonthTransitionEnd: this.updateStateAfterMonthTransition,
       
 52890                     monthFormat: monthFormat,
       
 52891                     daySize: daySize,
       
 52892                     firstDayOfWeek: firstDayOfWeek,
       
 52893                     isFocused: shouldFocusDate,
       
 52894                     focusedDate: focusedDate,
       
 52895                     phrases: phrases,
       
 52896                     isRTL: isRTL,
       
 52897                     dayAriaLabelFormat: dayAriaLabelFormat,
       
 52898                     transitionDuration: transitionDuration,
       
 52899                     verticalBorderSpacing: verticalBorderSpacing,
       
 52900                     horizontalMonthPadding: horizontalMonthPadding
       
 52901                   }),
       
 52902                   verticalScrollable && this.renderNavigation()
       
 52903                 ),
       
 52904                 !isTouch && !hideKeyboardShortcutsPanel && _react2['default'].createElement(_DayPickerKeyboardShortcuts2['default'], {
       
 52905                   block: this.isVertical() && !withPortal,
       
 52906                   buttonLocation: keyboardShortcutButtonLocation,
       
 52907                   showKeyboardShortcutsPanel: showKeyboardShortcuts,
       
 52908                   openKeyboardShortcutsPanel: this.openKeyboardShortcutsPanel,
       
 52909                   closeKeyboardShortcutsPanel: this.closeKeyboardShortcutsPanel,
       
 52910                   phrases: phrases
       
 52911                 })
       
 52912               )
       
 52913             ),
       
 52914             (calendarInfoPositionBottom || calendarInfoPositionAfter) && calendarInfo
       
 52915           )
       
 52916         );
       
 52917       }
       
 52918 
       
 52919       return render;
       
 52920     }()
       
 52921   }]);
       
 52922 
       
 52923   return DayPicker;
       
 52924 }(_react2['default'].Component);
       
 52925 
       
 52926 DayPicker.propTypes = propTypes;
       
 52927 DayPicker.defaultProps = defaultProps;
       
 52928 
       
 52929 exports.PureDayPicker = DayPicker;
       
 52930 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 52931   var _ref2$reactDates = _ref2.reactDates,
       
 52932       color = _ref2$reactDates.color,
       
 52933       font = _ref2$reactDates.font,
       
 52934       noScrollBarOnVerticalScrollable = _ref2$reactDates.noScrollBarOnVerticalScrollable,
       
 52935       spacing = _ref2$reactDates.spacing,
       
 52936       zIndex = _ref2$reactDates.zIndex;
       
 52937   return {
       
 52938     DayPicker: {
       
 52939       background: color.background,
       
 52940       position: 'relative',
       
 52941       textAlign: 'left'
       
 52942     },
       
 52943 
       
 52944     DayPicker__horizontal: {
       
 52945       background: color.background
       
 52946     },
       
 52947 
       
 52948     DayPicker__verticalScrollable: {
       
 52949       height: '100%'
       
 52950     },
       
 52951 
       
 52952     DayPicker__hidden: {
       
 52953       visibility: 'hidden'
       
 52954     },
       
 52955 
       
 52956     DayPicker__withBorder: {
       
 52957       boxShadow: '0 2px 6px rgba(0, 0, 0, 0.05), 0 0 0 1px rgba(0, 0, 0, 0.07)',
       
 52958       borderRadius: 3
       
 52959     },
       
 52960 
       
 52961     DayPicker_portal__horizontal: {
       
 52962       boxShadow: 'none',
       
 52963       position: 'absolute',
       
 52964       left: '50%',
       
 52965       top: '50%'
       
 52966     },
       
 52967 
       
 52968     DayPicker_portal__vertical: {
       
 52969       position: 'initial'
       
 52970     },
       
 52971 
       
 52972     DayPicker_focusRegion: {
       
 52973       outline: 'none'
       
 52974     },
       
 52975 
       
 52976     DayPicker_calendarInfo__horizontal: {
       
 52977       display: 'inline-block',
       
 52978       verticalAlign: 'top'
       
 52979     },
       
 52980 
       
 52981     DayPicker_wrapper__horizontal: {
       
 52982       display: 'inline-block',
       
 52983       verticalAlign: 'top'
       
 52984     },
       
 52985 
       
 52986     DayPicker_weekHeaders: {
       
 52987       position: 'relative'
       
 52988     },
       
 52989 
       
 52990     DayPicker_weekHeaders__horizontal: {
       
 52991       marginLeft: spacing.dayPickerHorizontalPadding
       
 52992     },
       
 52993 
       
 52994     DayPicker_weekHeader: {
       
 52995       color: color.placeholderText,
       
 52996       position: 'absolute',
       
 52997       top: 62,
       
 52998       zIndex: zIndex + 2,
       
 52999       textAlign: 'left'
       
 53000     },
       
 53001 
       
 53002     DayPicker_weekHeader__vertical: {
       
 53003       left: '50%'
       
 53004     },
       
 53005 
       
 53006     DayPicker_weekHeader__verticalScrollable: {
       
 53007       top: 0,
       
 53008       display: 'table-row',
       
 53009       borderBottom: '1px solid ' + String(color.core.border),
       
 53010       background: color.background,
       
 53011       marginLeft: 0,
       
 53012       left: 0,
       
 53013       width: '100%',
       
 53014       textAlign: 'center'
       
 53015     },
       
 53016 
       
 53017     DayPicker_weekHeader_ul: {
       
 53018       listStyle: 'none',
       
 53019       margin: '1px 0',
       
 53020       paddingLeft: 0,
       
 53021       paddingRight: 0,
       
 53022       fontSize: font.size
       
 53023     },
       
 53024 
       
 53025     DayPicker_weekHeader_li: {
       
 53026       display: 'inline-block',
       
 53027       textAlign: 'center'
       
 53028     },
       
 53029 
       
 53030     DayPicker_transitionContainer: {
       
 53031       position: 'relative',
       
 53032       overflow: 'hidden',
       
 53033       borderRadius: 3
       
 53034     },
       
 53035 
       
 53036     DayPicker_transitionContainer__horizontal: {
       
 53037       transition: 'height 0.2s ease-in-out'
       
 53038     },
       
 53039 
       
 53040     DayPicker_transitionContainer__vertical: {
       
 53041       width: '100%'
       
 53042     },
       
 53043 
       
 53044     DayPicker_transitionContainer__verticalScrollable: (0, _object2['default'])({
       
 53045       paddingTop: 20,
       
 53046       height: '100%',
       
 53047       position: 'absolute',
       
 53048       top: 0,
       
 53049       bottom: 0,
       
 53050       right: 0,
       
 53051       left: 0,
       
 53052       overflowY: 'scroll'
       
 53053     }, noScrollBarOnVerticalScrollable && {
       
 53054       '-webkitOverflowScrolling': 'touch',
       
 53055       '::-webkit-scrollbar': {
       
 53056         '-webkit-appearance': 'none',
       
 53057         display: 'none'
       
 53058       }
       
 53059     })
       
 53060   };
       
 53061 })(DayPicker);
       
 53062 
       
 53063 /***/ }),
       
 53064 /* 369 */
       
 53065 /***/ (function(module, exports, __webpack_require__) {
       
 53066 
       
 53067 "use strict";
       
 53068 /**
       
 53069  * Copyright (c) 2013-present, Facebook, Inc.
       
 53070  *
       
 53071  * This source code is licensed under the MIT license found in the
       
 53072  * LICENSE file in the root directory of this source tree.
       
 53073  *
       
 53074  * @typechecks
       
 53075  * 
       
 53076  */
       
 53077 
       
 53078 /*eslint-disable no-self-compare */
       
 53079 
       
 53080 
       
 53081 
       
 53082 var hasOwnProperty = Object.prototype.hasOwnProperty;
       
 53083 
       
 53084 /**
       
 53085  * inlined Object.is polyfill to avoid requiring consumers ship their own
       
 53086  * https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is
       
 53087  */
       
 53088 function is(x, y) {
       
 53089   // SameValue algorithm
       
 53090   if (x === y) {
       
 53091     // Steps 1-5, 7-10
       
 53092     // Steps 6.b-6.e: +0 != -0
       
 53093     // Added the nonzero y check to make Flow happy, but it is redundant
       
 53094     return x !== 0 || y !== 0 || 1 / x === 1 / y;
       
 53095   } else {
       
 53096     // Step 6.a: NaN == NaN
       
 53097     return x !== x && y !== y;
       
 53098   }
       
 53099 }
       
 53100 
       
 53101 /**
       
 53102  * Performs equality by iterating through keys on an object and returning false
       
 53103  * when any key has values which are not strictly equal between the arguments.
       
 53104  * Returns true when the values of all keys are strictly equal.
       
 53105  */
       
 53106 function shallowEqual(objA, objB) {
       
 53107   if (is(objA, objB)) {
       
 53108     return true;
       
 53109   }
       
 53110 
       
 53111   if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) {
       
 53112     return false;
       
 53113   }
       
 53114 
       
 53115   var keysA = Object.keys(objA);
       
 53116   var keysB = Object.keys(objB);
       
 53117 
       
 53118   if (keysA.length !== keysB.length) {
       
 53119     return false;
       
 53120   }
       
 53121 
       
 53122   // Test for A's keys different from B.
       
 53123   for (var i = 0; i < keysA.length; i++) {
       
 53124     if (!hasOwnProperty.call(objB, keysA[i]) || !is(objA[keysA[i]], objB[keysA[i]])) {
       
 53125       return false;
       
 53126     }
       
 53127   }
       
 53128 
       
 53129   return true;
       
 53130 }
       
 53131 
       
 53132 module.exports = shallowEqual;
       
 53133 
       
 53134 /***/ }),
       
 53135 /* 370 */
       
 53136 /***/ (function(module, exports, __webpack_require__) {
       
 53137 
       
 53138 "use strict";
       
 53139 
       
 53140 
       
 53141 var reactIs = __webpack_require__(371);
       
 53142 
       
 53143 /**
       
 53144  * Copyright 2015, Yahoo! Inc.
       
 53145  * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.
       
 53146  */
       
 53147 var REACT_STATICS = {
       
 53148   childContextTypes: true,
       
 53149   contextType: true,
       
 53150   contextTypes: true,
       
 53151   defaultProps: true,
       
 53152   displayName: true,
       
 53153   getDefaultProps: true,
       
 53154   getDerivedStateFromError: true,
       
 53155   getDerivedStateFromProps: true,
       
 53156   mixins: true,
       
 53157   propTypes: true,
       
 53158   type: true
       
 53159 };
       
 53160 var KNOWN_STATICS = {
       
 53161   name: true,
       
 53162   length: true,
       
 53163   prototype: true,
       
 53164   caller: true,
       
 53165   callee: true,
       
 53166   arguments: true,
       
 53167   arity: true
       
 53168 };
       
 53169 var FORWARD_REF_STATICS = {
       
 53170   '$$typeof': true,
       
 53171   render: true,
       
 53172   defaultProps: true,
       
 53173   displayName: true,
       
 53174   propTypes: true
       
 53175 };
       
 53176 var MEMO_STATICS = {
       
 53177   '$$typeof': true,
       
 53178   compare: true,
       
 53179   defaultProps: true,
       
 53180   displayName: true,
       
 53181   propTypes: true,
       
 53182   type: true
       
 53183 };
       
 53184 var TYPE_STATICS = {};
       
 53185 TYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;
       
 53186 TYPE_STATICS[reactIs.Memo] = MEMO_STATICS;
       
 53187 
       
 53188 function getStatics(component) {
       
 53189   // React v16.11 and below
       
 53190   if (reactIs.isMemo(component)) {
       
 53191     return MEMO_STATICS;
       
 53192   } // React v16.12 and above
       
 53193 
       
 53194 
       
 53195   return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;
       
 53196 }
       
 53197 
       
 53198 var defineProperty = Object.defineProperty;
       
 53199 var getOwnPropertyNames = Object.getOwnPropertyNames;
       
 53200 var getOwnPropertySymbols = Object.getOwnPropertySymbols;
       
 53201 var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
       
 53202 var getPrototypeOf = Object.getPrototypeOf;
       
 53203 var objectPrototype = Object.prototype;
       
 53204 function hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {
       
 53205   if (typeof sourceComponent !== 'string') {
       
 53206     // don't hoist over string (html) components
       
 53207     if (objectPrototype) {
       
 53208       var inheritedComponent = getPrototypeOf(sourceComponent);
       
 53209 
       
 53210       if (inheritedComponent && inheritedComponent !== objectPrototype) {
       
 53211         hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);
       
 53212       }
       
 53213     }
       
 53214 
       
 53215     var keys = getOwnPropertyNames(sourceComponent);
       
 53216 
       
 53217     if (getOwnPropertySymbols) {
       
 53218       keys = keys.concat(getOwnPropertySymbols(sourceComponent));
       
 53219     }
       
 53220 
       
 53221     var targetStatics = getStatics(targetComponent);
       
 53222     var sourceStatics = getStatics(sourceComponent);
       
 53223 
       
 53224     for (var i = 0; i < keys.length; ++i) {
       
 53225       var key = keys[i];
       
 53226 
       
 53227       if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {
       
 53228         var descriptor = getOwnPropertyDescriptor(sourceComponent, key);
       
 53229 
       
 53230         try {
       
 53231           // Avoid failures from read-only properties
       
 53232           defineProperty(targetComponent, key, descriptor);
       
 53233         } catch (e) {}
       
 53234       }
       
 53235     }
       
 53236   }
       
 53237 
       
 53238   return targetComponent;
       
 53239 }
       
 53240 
       
 53241 module.exports = hoistNonReactStatics;
       
 53242 
       
 53243 
       
 53244 /***/ }),
       
 53245 /* 371 */
       
 53246 /***/ (function(module, exports, __webpack_require__) {
       
 53247 
       
 53248 "use strict";
       
 53249 
       
 53250 
       
 53251 if (true) {
       
 53252   module.exports = __webpack_require__(372);
       
 53253 } else {}
       
 53254 
       
 53255 
       
 53256 /***/ }),
       
 53257 /* 372 */
       
 53258 /***/ (function(module, exports, __webpack_require__) {
       
 53259 
       
 53260 "use strict";
       
 53261 /** @license React v16.8.6
       
 53262  * react-is.production.min.js
       
 53263  *
       
 53264  * Copyright (c) Facebook, Inc. and its affiliates.
       
 53265  *
       
 53266  * This source code is licensed under the MIT license found in the
       
 53267  * LICENSE file in the root directory of this source tree.
       
 53268  */
       
 53269 
       
 53270 Object.defineProperty(exports,"__esModule",{value:!0});
       
 53271 var b="function"===typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,k=b?Symbol.for("react.context"):60110,l=b?Symbol.for("react.async_mode"):60111,m=b?Symbol.for("react.concurrent_mode"):60111,n=b?Symbol.for("react.forward_ref"):60112,p=b?Symbol.for("react.suspense"):60113,q=b?Symbol.for("react.memo"):
       
 53272 60115,r=b?Symbol.for("react.lazy"):60116;function t(a){if("object"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case h:return a;default:return u}}case r:case q:case d:return u}}}function v(a){return t(a)===m}exports.typeOf=t;exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;
       
 53273 exports.Fragment=e;exports.Lazy=r;exports.Memo=q;exports.Portal=d;exports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isValidElementType=function(a){return"string"===typeof a||"function"===typeof a||a===e||a===m||a===g||a===f||a===p||"object"===typeof a&&null!==a&&(a.$$typeof===r||a.$$typeof===q||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n)};exports.isAsyncMode=function(a){return v(a)||t(a)===l};exports.isConcurrentMode=v;exports.isContextConsumer=function(a){return t(a)===k};
       
 53274 exports.isContextProvider=function(a){return t(a)===h};exports.isElement=function(a){return"object"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return t(a)===n};exports.isFragment=function(a){return t(a)===e};exports.isLazy=function(a){return t(a)===r};exports.isMemo=function(a){return t(a)===q};exports.isPortal=function(a){return t(a)===d};exports.isProfiler=function(a){return t(a)===g};exports.isStrictMode=function(a){return t(a)===f};
       
 53275 exports.isSuspense=function(a){return t(a)===p};
       
 53276 
       
 53277 
       
 53278 /***/ }),
       
 53279 /* 373 */
       
 53280 /***/ (function(module, exports, __webpack_require__) {
       
 53281 
       
 53282 "use strict";
       
 53283 
       
 53284 
       
 53285 Object.defineProperty(exports, "__esModule", {
       
 53286   value: true
       
 53287 });
       
 53288 var CHANNEL = exports.CHANNEL = '__direction__';
       
 53289 
       
 53290 var DIRECTIONS = exports.DIRECTIONS = {
       
 53291   LTR: 'ltr',
       
 53292   RTL: 'rtl'
       
 53293 };
       
 53294 
       
 53295 /***/ }),
       
 53296 /* 374 */
       
 53297 /***/ (function(module, exports, __webpack_require__) {
       
 53298 
       
 53299 "use strict";
       
 53300 
       
 53301 
       
 53302 Object.defineProperty(exports, "__esModule", {
       
 53303   value: true
       
 53304 });
       
 53305 
       
 53306 var _propTypes = __webpack_require__(28);
       
 53307 
       
 53308 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 53309 
       
 53310 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 53311 
       
 53312 exports['default'] = _propTypes2['default'].shape({
       
 53313   getState: _propTypes2['default'].func,
       
 53314   setState: _propTypes2['default'].func,
       
 53315   subscribe: _propTypes2['default'].func
       
 53316 });
       
 53317 
       
 53318 /***/ }),
       
 53319 /* 375 */
       
 53320 /***/ (function(module, exports, __webpack_require__) {
       
 53321 
       
 53322 var debounce = __webpack_require__(376),
       
 53323     isObject = __webpack_require__(192);
       
 53324 
       
 53325 /** Error message constants. */
       
 53326 var FUNC_ERROR_TEXT = 'Expected a function';
       
 53327 
       
 53328 /**
       
 53329  * Creates a throttled function that only invokes `func` at most once per
       
 53330  * every `wait` milliseconds. The throttled function comes with a `cancel`
       
 53331  * method to cancel delayed `func` invocations and a `flush` method to
       
 53332  * immediately invoke them. Provide `options` to indicate whether `func`
       
 53333  * should be invoked on the leading and/or trailing edge of the `wait`
       
 53334  * timeout. The `func` is invoked with the last arguments provided to the
       
 53335  * throttled function. Subsequent calls to the throttled function return the
       
 53336  * result of the last `func` invocation.
       
 53337  *
       
 53338  * **Note:** If `leading` and `trailing` options are `true`, `func` is
       
 53339  * invoked on the trailing edge of the timeout only if the throttled function
       
 53340  * is invoked more than once during the `wait` timeout.
       
 53341  *
       
 53342  * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
       
 53343  * until to the next tick, similar to `setTimeout` with a timeout of `0`.
       
 53344  *
       
 53345  * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
       
 53346  * for details over the differences between `_.throttle` and `_.debounce`.
       
 53347  *
       
 53348  * @static
       
 53349  * @memberOf _
       
 53350  * @since 0.1.0
       
 53351  * @category Function
       
 53352  * @param {Function} func The function to throttle.
       
 53353  * @param {number} [wait=0] The number of milliseconds to throttle invocations to.
       
 53354  * @param {Object} [options={}] The options object.
       
 53355  * @param {boolean} [options.leading=true]
       
 53356  *  Specify invoking on the leading edge of the timeout.
       
 53357  * @param {boolean} [options.trailing=true]
       
 53358  *  Specify invoking on the trailing edge of the timeout.
       
 53359  * @returns {Function} Returns the new throttled function.
       
 53360  * @example
       
 53361  *
       
 53362  * // Avoid excessively updating the position while scrolling.
       
 53363  * jQuery(window).on('scroll', _.throttle(updatePosition, 100));
       
 53364  *
       
 53365  * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.
       
 53366  * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });
       
 53367  * jQuery(element).on('click', throttled);
       
 53368  *
       
 53369  * // Cancel the trailing throttled invocation.
       
 53370  * jQuery(window).on('popstate', throttled.cancel);
       
 53371  */
       
 53372 function throttle(func, wait, options) {
       
 53373   var leading = true,
       
 53374       trailing = true;
       
 53375 
       
 53376   if (typeof func != 'function') {
       
 53377     throw new TypeError(FUNC_ERROR_TEXT);
       
 53378   }
       
 53379   if (isObject(options)) {
       
 53380     leading = 'leading' in options ? !!options.leading : leading;
       
 53381     trailing = 'trailing' in options ? !!options.trailing : trailing;
       
 53382   }
       
 53383   return debounce(func, wait, {
       
 53384     'leading': leading,
       
 53385     'maxWait': wait,
       
 53386     'trailing': trailing
       
 53387   });
       
 53388 }
       
 53389 
       
 53390 module.exports = throttle;
       
 53391 
       
 53392 
       
 53393 /***/ }),
       
 53394 /* 376 */
       
 53395 /***/ (function(module, exports, __webpack_require__) {
       
 53396 
       
 53397 var isObject = __webpack_require__(192),
       
 53398     now = __webpack_require__(377),
       
 53399     toNumber = __webpack_require__(379);
       
 53400 
       
 53401 /** Error message constants. */
       
 53402 var FUNC_ERROR_TEXT = 'Expected a function';
       
 53403 
       
 53404 /* Built-in method references for those with the same name as other `lodash` methods. */
       
 53405 var nativeMax = Math.max,
       
 53406     nativeMin = Math.min;
       
 53407 
       
 53408 /**
       
 53409  * Creates a debounced function that delays invoking `func` until after `wait`
       
 53410  * milliseconds have elapsed since the last time the debounced function was
       
 53411  * invoked. The debounced function comes with a `cancel` method to cancel
       
 53412  * delayed `func` invocations and a `flush` method to immediately invoke them.
       
 53413  * Provide `options` to indicate whether `func` should be invoked on the
       
 53414  * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
       
 53415  * with the last arguments provided to the debounced function. Subsequent
       
 53416  * calls to the debounced function return the result of the last `func`
       
 53417  * invocation.
       
 53418  *
       
 53419  * **Note:** If `leading` and `trailing` options are `true`, `func` is
       
 53420  * invoked on the trailing edge of the timeout only if the debounced function
       
 53421  * is invoked more than once during the `wait` timeout.
       
 53422  *
       
 53423  * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
       
 53424  * until to the next tick, similar to `setTimeout` with a timeout of `0`.
       
 53425  *
       
 53426  * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
       
 53427  * for details over the differences between `_.debounce` and `_.throttle`.
       
 53428  *
       
 53429  * @static
       
 53430  * @memberOf _
       
 53431  * @since 0.1.0
       
 53432  * @category Function
       
 53433  * @param {Function} func The function to debounce.
       
 53434  * @param {number} [wait=0] The number of milliseconds to delay.
       
 53435  * @param {Object} [options={}] The options object.
       
 53436  * @param {boolean} [options.leading=false]
       
 53437  *  Specify invoking on the leading edge of the timeout.
       
 53438  * @param {number} [options.maxWait]
       
 53439  *  The maximum time `func` is allowed to be delayed before it's invoked.
       
 53440  * @param {boolean} [options.trailing=true]
       
 53441  *  Specify invoking on the trailing edge of the timeout.
       
 53442  * @returns {Function} Returns the new debounced function.
       
 53443  * @example
       
 53444  *
       
 53445  * // Avoid costly calculations while the window size is in flux.
       
 53446  * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
       
 53447  *
       
 53448  * // Invoke `sendMail` when clicked, debouncing subsequent calls.
       
 53449  * jQuery(element).on('click', _.debounce(sendMail, 300, {
       
 53450  *   'leading': true,
       
 53451  *   'trailing': false
       
 53452  * }));
       
 53453  *
       
 53454  * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
       
 53455  * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
       
 53456  * var source = new EventSource('/stream');
       
 53457  * jQuery(source).on('message', debounced);
       
 53458  *
       
 53459  * // Cancel the trailing debounced invocation.
       
 53460  * jQuery(window).on('popstate', debounced.cancel);
       
 53461  */
       
 53462 function debounce(func, wait, options) {
       
 53463   var lastArgs,
       
 53464       lastThis,
       
 53465       maxWait,
       
 53466       result,
       
 53467       timerId,
       
 53468       lastCallTime,
       
 53469       lastInvokeTime = 0,
       
 53470       leading = false,
       
 53471       maxing = false,
       
 53472       trailing = true;
       
 53473 
       
 53474   if (typeof func != 'function') {
       
 53475     throw new TypeError(FUNC_ERROR_TEXT);
       
 53476   }
       
 53477   wait = toNumber(wait) || 0;
       
 53478   if (isObject(options)) {
       
 53479     leading = !!options.leading;
       
 53480     maxing = 'maxWait' in options;
       
 53481     maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
       
 53482     trailing = 'trailing' in options ? !!options.trailing : trailing;
       
 53483   }
       
 53484 
       
 53485   function invokeFunc(time) {
       
 53486     var args = lastArgs,
       
 53487         thisArg = lastThis;
       
 53488 
       
 53489     lastArgs = lastThis = undefined;
       
 53490     lastInvokeTime = time;
       
 53491     result = func.apply(thisArg, args);
       
 53492     return result;
       
 53493   }
       
 53494 
       
 53495   function leadingEdge(time) {
       
 53496     // Reset any `maxWait` timer.
       
 53497     lastInvokeTime = time;
       
 53498     // Start the timer for the trailing edge.
       
 53499     timerId = setTimeout(timerExpired, wait);
       
 53500     // Invoke the leading edge.
       
 53501     return leading ? invokeFunc(time) : result;
       
 53502   }
       
 53503 
       
 53504   function remainingWait(time) {
       
 53505     var timeSinceLastCall = time - lastCallTime,
       
 53506         timeSinceLastInvoke = time - lastInvokeTime,
       
 53507         timeWaiting = wait - timeSinceLastCall;
       
 53508 
       
 53509     return maxing
       
 53510       ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke)
       
 53511       : timeWaiting;
       
 53512   }
       
 53513 
       
 53514   function shouldInvoke(time) {
       
 53515     var timeSinceLastCall = time - lastCallTime,
       
 53516         timeSinceLastInvoke = time - lastInvokeTime;
       
 53517 
       
 53518     // Either this is the first call, activity has stopped and we're at the
       
 53519     // trailing edge, the system time has gone backwards and we're treating
       
 53520     // it as the trailing edge, or we've hit the `maxWait` limit.
       
 53521     return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
       
 53522       (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
       
 53523   }
       
 53524 
       
 53525   function timerExpired() {
       
 53526     var time = now();
       
 53527     if (shouldInvoke(time)) {
       
 53528       return trailingEdge(time);
       
 53529     }
       
 53530     // Restart the timer.
       
 53531     timerId = setTimeout(timerExpired, remainingWait(time));
       
 53532   }
       
 53533 
       
 53534   function trailingEdge(time) {
       
 53535     timerId = undefined;
       
 53536 
       
 53537     // Only invoke if we have `lastArgs` which means `func` has been
       
 53538     // debounced at least once.
       
 53539     if (trailing && lastArgs) {
       
 53540       return invokeFunc(time);
       
 53541     }
       
 53542     lastArgs = lastThis = undefined;
       
 53543     return result;
       
 53544   }
       
 53545 
       
 53546   function cancel() {
       
 53547     if (timerId !== undefined) {
       
 53548       clearTimeout(timerId);
       
 53549     }
       
 53550     lastInvokeTime = 0;
       
 53551     lastArgs = lastCallTime = lastThis = timerId = undefined;
       
 53552   }
       
 53553 
       
 53554   function flush() {
       
 53555     return timerId === undefined ? result : trailingEdge(now());
       
 53556   }
       
 53557 
       
 53558   function debounced() {
       
 53559     var time = now(),
       
 53560         isInvoking = shouldInvoke(time);
       
 53561 
       
 53562     lastArgs = arguments;
       
 53563     lastThis = this;
       
 53564     lastCallTime = time;
       
 53565 
       
 53566     if (isInvoking) {
       
 53567       if (timerId === undefined) {
       
 53568         return leadingEdge(lastCallTime);
       
 53569       }
       
 53570       if (maxing) {
       
 53571         // Handle invocations in a tight loop.
       
 53572         clearTimeout(timerId);
       
 53573         timerId = setTimeout(timerExpired, wait);
       
 53574         return invokeFunc(lastCallTime);
       
 53575       }
       
 53576     }
       
 53577     if (timerId === undefined) {
       
 53578       timerId = setTimeout(timerExpired, wait);
       
 53579     }
       
 53580     return result;
       
 53581   }
       
 53582   debounced.cancel = cancel;
       
 53583   debounced.flush = flush;
       
 53584   return debounced;
       
 53585 }
       
 53586 
       
 53587 module.exports = debounce;
       
 53588 
       
 53589 
       
 53590 /***/ }),
       
 53591 /* 377 */
       
 53592 /***/ (function(module, exports, __webpack_require__) {
       
 53593 
       
 53594 var root = __webpack_require__(245);
       
 53595 
       
 53596 /**
       
 53597  * Gets the timestamp of the number of milliseconds that have elapsed since
       
 53598  * the Unix epoch (1 January 1970 00:00:00 UTC).
       
 53599  *
       
 53600  * @static
       
 53601  * @memberOf _
       
 53602  * @since 2.4.0
       
 53603  * @category Date
       
 53604  * @returns {number} Returns the timestamp.
       
 53605  * @example
       
 53606  *
       
 53607  * _.defer(function(stamp) {
       
 53608  *   console.log(_.now() - stamp);
       
 53609  * }, _.now());
       
 53610  * // => Logs the number of milliseconds it took for the deferred invocation.
       
 53611  */
       
 53612 var now = function() {
       
 53613   return root.Date.now();
       
 53614 };
       
 53615 
       
 53616 module.exports = now;
       
 53617 
       
 53618 
       
 53619 /***/ }),
       
 53620 /* 378 */
       
 53621 /***/ (function(module, exports, __webpack_require__) {
       
 53622 
       
 53623 /* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
       
 53624 var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
       
 53625 
       
 53626 module.exports = freeGlobal;
       
 53627 
       
 53628 /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__(127)))
       
 53629 
       
 53630 /***/ }),
       
 53631 /* 379 */
       
 53632 /***/ (function(module, exports, __webpack_require__) {
       
 53633 
       
 53634 var isObject = __webpack_require__(192),
       
 53635     isSymbol = __webpack_require__(380);
       
 53636 
       
 53637 /** Used as references for various `Number` constants. */
       
 53638 var NAN = 0 / 0;
       
 53639 
       
 53640 /** Used to match leading and trailing whitespace. */
       
 53641 var reTrim = /^\s+|\s+$/g;
       
 53642 
       
 53643 /** Used to detect bad signed hexadecimal string values. */
       
 53644 var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;
       
 53645 
       
 53646 /** Used to detect binary string values. */
       
 53647 var reIsBinary = /^0b[01]+$/i;
       
 53648 
       
 53649 /** Used to detect octal string values. */
       
 53650 var reIsOctal = /^0o[0-7]+$/i;
       
 53651 
       
 53652 /** Built-in method references without a dependency on `root`. */
       
 53653 var freeParseInt = parseInt;
       
 53654 
       
 53655 /**
       
 53656  * Converts `value` to a number.
       
 53657  *
       
 53658  * @static
       
 53659  * @memberOf _
       
 53660  * @since 4.0.0
       
 53661  * @category Lang
       
 53662  * @param {*} value The value to process.
       
 53663  * @returns {number} Returns the number.
       
 53664  * @example
       
 53665  *
       
 53666  * _.toNumber(3.2);
       
 53667  * // => 3.2
       
 53668  *
       
 53669  * _.toNumber(Number.MIN_VALUE);
       
 53670  * // => 5e-324
       
 53671  *
       
 53672  * _.toNumber(Infinity);
       
 53673  * // => Infinity
       
 53674  *
       
 53675  * _.toNumber('3.2');
       
 53676  * // => 3.2
       
 53677  */
       
 53678 function toNumber(value) {
       
 53679   if (typeof value == 'number') {
       
 53680     return value;
       
 53681   }
       
 53682   if (isSymbol(value)) {
       
 53683     return NAN;
       
 53684   }
       
 53685   if (isObject(value)) {
       
 53686     var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
       
 53687     value = isObject(other) ? (other + '') : other;
       
 53688   }
       
 53689   if (typeof value != 'string') {
       
 53690     return value === 0 ? value : +value;
       
 53691   }
       
 53692   value = value.replace(reTrim, '');
       
 53693   var isBinary = reIsBinary.test(value);
       
 53694   return (isBinary || reIsOctal.test(value))
       
 53695     ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
       
 53696     : (reIsBadHex.test(value) ? NAN : +value);
       
 53697 }
       
 53698 
       
 53699 module.exports = toNumber;
       
 53700 
       
 53701 
       
 53702 /***/ }),
       
 53703 /* 380 */
       
 53704 /***/ (function(module, exports, __webpack_require__) {
       
 53705 
       
 53706 var baseGetTag = __webpack_require__(381),
       
 53707     isObjectLike = __webpack_require__(384);
       
 53708 
       
 53709 /** `Object#toString` result references. */
       
 53710 var symbolTag = '[object Symbol]';
       
 53711 
       
 53712 /**
       
 53713  * Checks if `value` is classified as a `Symbol` primitive or object.
       
 53714  *
       
 53715  * @static
       
 53716  * @memberOf _
       
 53717  * @since 4.0.0
       
 53718  * @category Lang
       
 53719  * @param {*} value The value to check.
       
 53720  * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
       
 53721  * @example
       
 53722  *
       
 53723  * _.isSymbol(Symbol.iterator);
       
 53724  * // => true
       
 53725  *
       
 53726  * _.isSymbol('abc');
       
 53727  * // => false
       
 53728  */
       
 53729 function isSymbol(value) {
       
 53730   return typeof value == 'symbol' ||
       
 53731     (isObjectLike(value) && baseGetTag(value) == symbolTag);
       
 53732 }
       
 53733 
       
 53734 module.exports = isSymbol;
       
 53735 
       
 53736 
       
 53737 /***/ }),
       
 53738 /* 381 */
       
 53739 /***/ (function(module, exports, __webpack_require__) {
       
 53740 
       
 53741 var Symbol = __webpack_require__(246),
       
 53742     getRawTag = __webpack_require__(382),
       
 53743     objectToString = __webpack_require__(383);
       
 53744 
       
 53745 /** `Object#toString` result references. */
       
 53746 var nullTag = '[object Null]',
       
 53747     undefinedTag = '[object Undefined]';
       
 53748 
       
 53749 /** Built-in value references. */
       
 53750 var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
       
 53751 
       
 53752 /**
       
 53753  * The base implementation of `getTag` without fallbacks for buggy environments.
       
 53754  *
       
 53755  * @private
       
 53756  * @param {*} value The value to query.
       
 53757  * @returns {string} Returns the `toStringTag`.
       
 53758  */
       
 53759 function baseGetTag(value) {
       
 53760   if (value == null) {
       
 53761     return value === undefined ? undefinedTag : nullTag;
       
 53762   }
       
 53763   return (symToStringTag && symToStringTag in Object(value))
       
 53764     ? getRawTag(value)
       
 53765     : objectToString(value);
       
 53766 }
       
 53767 
       
 53768 module.exports = baseGetTag;
       
 53769 
       
 53770 
       
 53771 /***/ }),
       
 53772 /* 382 */
       
 53773 /***/ (function(module, exports, __webpack_require__) {
       
 53774 
       
 53775 var Symbol = __webpack_require__(246);
       
 53776 
       
 53777 /** Used for built-in method references. */
       
 53778 var objectProto = Object.prototype;
       
 53779 
       
 53780 /** Used to check objects for own properties. */
       
 53781 var hasOwnProperty = objectProto.hasOwnProperty;
       
 53782 
       
 53783 /**
       
 53784  * Used to resolve the
       
 53785  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
       
 53786  * of values.
       
 53787  */
       
 53788 var nativeObjectToString = objectProto.toString;
       
 53789 
       
 53790 /** Built-in value references. */
       
 53791 var symToStringTag = Symbol ? Symbol.toStringTag : undefined;
       
 53792 
       
 53793 /**
       
 53794  * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
       
 53795  *
       
 53796  * @private
       
 53797  * @param {*} value The value to query.
       
 53798  * @returns {string} Returns the raw `toStringTag`.
       
 53799  */
       
 53800 function getRawTag(value) {
       
 53801   var isOwn = hasOwnProperty.call(value, symToStringTag),
       
 53802       tag = value[symToStringTag];
       
 53803 
       
 53804   try {
       
 53805     value[symToStringTag] = undefined;
       
 53806     var unmasked = true;
       
 53807   } catch (e) {}
       
 53808 
       
 53809   var result = nativeObjectToString.call(value);
       
 53810   if (unmasked) {
       
 53811     if (isOwn) {
       
 53812       value[symToStringTag] = tag;
       
 53813     } else {
       
 53814       delete value[symToStringTag];
       
 53815     }
       
 53816   }
       
 53817   return result;
       
 53818 }
       
 53819 
       
 53820 module.exports = getRawTag;
       
 53821 
       
 53822 
       
 53823 /***/ }),
       
 53824 /* 383 */
       
 53825 /***/ (function(module, exports) {
       
 53826 
       
 53827 /** Used for built-in method references. */
       
 53828 var objectProto = Object.prototype;
       
 53829 
       
 53830 /**
       
 53831  * Used to resolve the
       
 53832  * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
       
 53833  * of values.
       
 53834  */
       
 53835 var nativeObjectToString = objectProto.toString;
       
 53836 
       
 53837 /**
       
 53838  * Converts `value` to a string using `Object.prototype.toString`.
       
 53839  *
       
 53840  * @private
       
 53841  * @param {*} value The value to convert.
       
 53842  * @returns {string} Returns the converted string.
       
 53843  */
       
 53844 function objectToString(value) {
       
 53845   return nativeObjectToString.call(value);
       
 53846 }
       
 53847 
       
 53848 module.exports = objectToString;
       
 53849 
       
 53850 
       
 53851 /***/ }),
       
 53852 /* 384 */
       
 53853 /***/ (function(module, exports) {
       
 53854 
       
 53855 /**
       
 53856  * Checks if `value` is object-like. A value is object-like if it's not `null`
       
 53857  * and has a `typeof` result of "object".
       
 53858  *
       
 53859  * @static
       
 53860  * @memberOf _
       
 53861  * @since 4.0.0
       
 53862  * @category Lang
       
 53863  * @param {*} value The value to check.
       
 53864  * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
       
 53865  * @example
       
 53866  *
       
 53867  * _.isObjectLike({});
       
 53868  * // => true
       
 53869  *
       
 53870  * _.isObjectLike([1, 2, 3]);
       
 53871  * // => true
       
 53872  *
       
 53873  * _.isObjectLike(_.noop);
       
 53874  * // => false
       
 53875  *
       
 53876  * _.isObjectLike(null);
       
 53877  * // => false
       
 53878  */
       
 53879 function isObjectLike(value) {
       
 53880   return value != null && typeof value == 'object';
       
 53881 }
       
 53882 
       
 53883 module.exports = isObjectLike;
       
 53884 
       
 53885 
       
 53886 /***/ }),
       
 53887 /* 385 */
       
 53888 /***/ (function(module, exports, __webpack_require__) {
       
 53889 
       
 53890 // eslint-disable-next-line import/no-unresolved
       
 53891 module.exports = __webpack_require__(386);
       
 53892 
       
 53893 
       
 53894 /***/ }),
       
 53895 /* 386 */
       
 53896 /***/ (function(module, exports, __webpack_require__) {
       
 53897 
       
 53898 "use strict";
       
 53899 
       
 53900 
       
 53901 Object.defineProperty(exports, "__esModule", {
       
 53902   value: true
       
 53903 });
       
 53904 
       
 53905 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 53906 
       
 53907 var _react = __webpack_require__(13);
       
 53908 
       
 53909 var _react2 = _interopRequireDefault(_react);
       
 53910 
       
 53911 var _propTypes = __webpack_require__(28);
       
 53912 
       
 53913 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 53914 
       
 53915 var _airbnbPropTypes = __webpack_require__(85);
       
 53916 
       
 53917 var _consolidatedEvents = __webpack_require__(247);
       
 53918 
       
 53919 var _object = __webpack_require__(228);
       
 53920 
       
 53921 var _object2 = _interopRequireDefault(_object);
       
 53922 
       
 53923 var _document = __webpack_require__(387);
       
 53924 
       
 53925 var _document2 = _interopRequireDefault(_document);
       
 53926 
       
 53927 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 53928 
       
 53929 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 53930 
       
 53931 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 53932 
       
 53933 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 53934 
       
 53935 var DISPLAY = {
       
 53936   BLOCK: 'block',
       
 53937   FLEX: 'flex',
       
 53938   INLINE: 'inline',
       
 53939   INLINE_BLOCK: 'inline-block',
       
 53940   CONTENTS: 'contents'
       
 53941 };
       
 53942 
       
 53943 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 53944   children: _propTypes2['default'].node.isRequired,
       
 53945   onOutsideClick: _propTypes2['default'].func.isRequired,
       
 53946   disabled: _propTypes2['default'].bool,
       
 53947   useCapture: _propTypes2['default'].bool,
       
 53948   display: _propTypes2['default'].oneOf((0, _object2['default'])(DISPLAY))
       
 53949 });
       
 53950 
       
 53951 var defaultProps = {
       
 53952   disabled: false,
       
 53953 
       
 53954   // `useCapture` is set to true by default so that a `stopPropagation` in the
       
 53955   // children will not prevent all outside click handlers from firing - maja
       
 53956   useCapture: true,
       
 53957   display: DISPLAY.BLOCK
       
 53958 };
       
 53959 
       
 53960 var OutsideClickHandler = function (_React$Component) {
       
 53961   _inherits(OutsideClickHandler, _React$Component);
       
 53962 
       
 53963   function OutsideClickHandler() {
       
 53964     var _ref;
       
 53965 
       
 53966     _classCallCheck(this, OutsideClickHandler);
       
 53967 
       
 53968     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
       
 53969       args[_key] = arguments[_key];
       
 53970     }
       
 53971 
       
 53972     var _this = _possibleConstructorReturn(this, (_ref = OutsideClickHandler.__proto__ || Object.getPrototypeOf(OutsideClickHandler)).call.apply(_ref, [this].concat(args)));
       
 53973 
       
 53974     _this.onMouseDown = _this.onMouseDown.bind(_this);
       
 53975     _this.onMouseUp = _this.onMouseUp.bind(_this);
       
 53976     _this.setChildNodeRef = _this.setChildNodeRef.bind(_this);
       
 53977     return _this;
       
 53978   }
       
 53979 
       
 53980   _createClass(OutsideClickHandler, [{
       
 53981     key: 'componentDidMount',
       
 53982     value: function () {
       
 53983       function componentDidMount() {
       
 53984         var _props = this.props,
       
 53985             disabled = _props.disabled,
       
 53986             useCapture = _props.useCapture;
       
 53987 
       
 53988 
       
 53989         if (!disabled) this.addMouseDownEventListener(useCapture);
       
 53990       }
       
 53991 
       
 53992       return componentDidMount;
       
 53993     }()
       
 53994   }, {
       
 53995     key: 'componentDidUpdate',
       
 53996     value: function () {
       
 53997       function componentDidUpdate(_ref2) {
       
 53998         var prevDisabled = _ref2.disabled;
       
 53999         var _props2 = this.props,
       
 54000             disabled = _props2.disabled,
       
 54001             useCapture = _props2.useCapture;
       
 54002 
       
 54003         if (prevDisabled !== disabled) {
       
 54004           if (disabled) {
       
 54005             this.removeEventListeners();
       
 54006           } else {
       
 54007             this.addMouseDownEventListener(useCapture);
       
 54008           }
       
 54009         }
       
 54010       }
       
 54011 
       
 54012       return componentDidUpdate;
       
 54013     }()
       
 54014   }, {
       
 54015     key: 'componentWillUnmount',
       
 54016     value: function () {
       
 54017       function componentWillUnmount() {
       
 54018         this.removeEventListeners();
       
 54019       }
       
 54020 
       
 54021       return componentWillUnmount;
       
 54022     }()
       
 54023 
       
 54024     // Use mousedown/mouseup to enforce that clicks remain outside the root's
       
 54025     // descendant tree, even when dragged. This should also get triggered on
       
 54026     // touch devices.
       
 54027 
       
 54028   }, {
       
 54029     key: 'onMouseDown',
       
 54030     value: function () {
       
 54031       function onMouseDown(e) {
       
 54032         var useCapture = this.props.useCapture;
       
 54033 
       
 54034 
       
 54035         var isDescendantOfRoot = this.childNode && (0, _document2['default'])(this.childNode, e.target);
       
 54036         if (!isDescendantOfRoot) {
       
 54037           if (this.removeMouseUp) {
       
 54038             this.removeMouseUp();
       
 54039             this.removeMouseUp = null;
       
 54040           }
       
 54041           this.removeMouseUp = (0, _consolidatedEvents.addEventListener)(document, 'mouseup', this.onMouseUp, { capture: useCapture });
       
 54042         }
       
 54043       }
       
 54044 
       
 54045       return onMouseDown;
       
 54046     }()
       
 54047 
       
 54048     // Use mousedown/mouseup to enforce that clicks remain outside the root's
       
 54049     // descendant tree, even when dragged. This should also get triggered on
       
 54050     // touch devices.
       
 54051 
       
 54052   }, {
       
 54053     key: 'onMouseUp',
       
 54054     value: function () {
       
 54055       function onMouseUp(e) {
       
 54056         var onOutsideClick = this.props.onOutsideClick;
       
 54057 
       
 54058 
       
 54059         var isDescendantOfRoot = this.childNode && (0, _document2['default'])(this.childNode, e.target);
       
 54060         if (this.removeMouseUp) {
       
 54061           this.removeMouseUp();
       
 54062           this.removeMouseUp = null;
       
 54063         }
       
 54064 
       
 54065         if (!isDescendantOfRoot) {
       
 54066           onOutsideClick(e);
       
 54067         }
       
 54068       }
       
 54069 
       
 54070       return onMouseUp;
       
 54071     }()
       
 54072   }, {
       
 54073     key: 'setChildNodeRef',
       
 54074     value: function () {
       
 54075       function setChildNodeRef(ref) {
       
 54076         this.childNode = ref;
       
 54077       }
       
 54078 
       
 54079       return setChildNodeRef;
       
 54080     }()
       
 54081   }, {
       
 54082     key: 'addMouseDownEventListener',
       
 54083     value: function () {
       
 54084       function addMouseDownEventListener(useCapture) {
       
 54085         this.removeMouseDown = (0, _consolidatedEvents.addEventListener)(document, 'mousedown', this.onMouseDown, { capture: useCapture });
       
 54086       }
       
 54087 
       
 54088       return addMouseDownEventListener;
       
 54089     }()
       
 54090   }, {
       
 54091     key: 'removeEventListeners',
       
 54092     value: function () {
       
 54093       function removeEventListeners() {
       
 54094         if (this.removeMouseDown) this.removeMouseDown();
       
 54095         if (this.removeMouseUp) this.removeMouseUp();
       
 54096       }
       
 54097 
       
 54098       return removeEventListeners;
       
 54099     }()
       
 54100   }, {
       
 54101     key: 'render',
       
 54102     value: function () {
       
 54103       function render() {
       
 54104         var _props3 = this.props,
       
 54105             children = _props3.children,
       
 54106             display = _props3.display;
       
 54107 
       
 54108 
       
 54109         return _react2['default'].createElement(
       
 54110           'div',
       
 54111           {
       
 54112             ref: this.setChildNodeRef,
       
 54113             style: display !== DISPLAY.BLOCK && (0, _object2['default'])(DISPLAY).includes(display) ? { display: display } : undefined
       
 54114           },
       
 54115           children
       
 54116         );
       
 54117       }
       
 54118 
       
 54119       return render;
       
 54120     }()
       
 54121   }]);
       
 54122 
       
 54123   return OutsideClickHandler;
       
 54124 }(_react2['default'].Component);
       
 54125 
       
 54126 exports['default'] = OutsideClickHandler;
       
 54127 
       
 54128 
       
 54129 OutsideClickHandler.propTypes = propTypes;
       
 54130 OutsideClickHandler.defaultProps = defaultProps;
       
 54131 
       
 54132 /***/ }),
       
 54133 /* 387 */
       
 54134 /***/ (function(module, exports, __webpack_require__) {
       
 54135 
       
 54136 "use strict";
       
 54137 
       
 54138 
       
 54139 var define = __webpack_require__(101);
       
 54140 
       
 54141 var implementation = __webpack_require__(248);
       
 54142 var getPolyfill = __webpack_require__(249);
       
 54143 var polyfill = getPolyfill();
       
 54144 var shim = __webpack_require__(388);
       
 54145 
       
 54146 var boundContains = function contains(node, other) {
       
 54147 	return polyfill.apply(node, [other]);
       
 54148 };
       
 54149 
       
 54150 define(boundContains, {
       
 54151 	getPolyfill: getPolyfill,
       
 54152 	implementation: implementation,
       
 54153 	shim: shim
       
 54154 });
       
 54155 
       
 54156 module.exports = boundContains;
       
 54157 
       
 54158 
       
 54159 /***/ }),
       
 54160 /* 388 */
       
 54161 /***/ (function(module, exports, __webpack_require__) {
       
 54162 
       
 54163 "use strict";
       
 54164 
       
 54165 
       
 54166 var define = __webpack_require__(101);
       
 54167 var getPolyfill = __webpack_require__(249);
       
 54168 
       
 54169 module.exports = function shimContains() {
       
 54170 	var polyfill = getPolyfill();
       
 54171 	if (typeof document !== 'undefined') {
       
 54172 		define(
       
 54173 			document,
       
 54174 			{ contains: polyfill },
       
 54175 			{ contains: function () { return document.contains !== polyfill; } }
       
 54176 		);
       
 54177 		if (typeof Element !== 'undefined') {
       
 54178 			define(
       
 54179 				Element.prototype,
       
 54180 				{ contains: polyfill },
       
 54181 				{ contains: function () { return Element.prototype.contains !== polyfill; } }
       
 54182 			);
       
 54183 		}
       
 54184 	}
       
 54185 	return polyfill;
       
 54186 };
       
 54187 
       
 54188 
       
 54189 /***/ }),
       
 54190 /* 389 */
       
 54191 /***/ (function(module, exports, __webpack_require__) {
       
 54192 
       
 54193 "use strict";
       
 54194 
       
 54195 
       
 54196 Object.defineProperty(exports, "__esModule", {
       
 54197   value: true
       
 54198 });
       
 54199 
       
 54200 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 54201 
       
 54202 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 54203 
       
 54204 var _object = __webpack_require__(92);
       
 54205 
       
 54206 var _object2 = _interopRequireDefault(_object);
       
 54207 
       
 54208 var _react = __webpack_require__(13);
       
 54209 
       
 54210 var _react2 = _interopRequireDefault(_react);
       
 54211 
       
 54212 var _propTypes = __webpack_require__(28);
       
 54213 
       
 54214 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 54215 
       
 54216 var _reactAddonsShallowCompare = __webpack_require__(143);
       
 54217 
       
 54218 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
 54219 
       
 54220 var _reactMomentProptypes = __webpack_require__(141);
       
 54221 
       
 54222 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 54223 
       
 54224 var _airbnbPropTypes = __webpack_require__(85);
       
 54225 
       
 54226 var _reactWithStyles = __webpack_require__(109);
       
 54227 
       
 54228 var _moment = __webpack_require__(43);
       
 54229 
       
 54230 var _moment2 = _interopRequireDefault(_moment);
       
 54231 
       
 54232 var _consolidatedEvents = __webpack_require__(247);
       
 54233 
       
 54234 var _defaultPhrases = __webpack_require__(107);
       
 54235 
       
 54236 var _getPhrasePropTypes = __webpack_require__(108);
       
 54237 
       
 54238 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 54239 
       
 54240 var _CalendarMonth = __webpack_require__(390);
       
 54241 
       
 54242 var _CalendarMonth2 = _interopRequireDefault(_CalendarMonth);
       
 54243 
       
 54244 var _isTransitionEndSupported = __webpack_require__(395);
       
 54245 
       
 54246 var _isTransitionEndSupported2 = _interopRequireDefault(_isTransitionEndSupported);
       
 54247 
       
 54248 var _getTransformStyles = __webpack_require__(396);
       
 54249 
       
 54250 var _getTransformStyles2 = _interopRequireDefault(_getTransformStyles);
       
 54251 
       
 54252 var _getCalendarMonthWidth = __webpack_require__(253);
       
 54253 
       
 54254 var _getCalendarMonthWidth2 = _interopRequireDefault(_getCalendarMonthWidth);
       
 54255 
       
 54256 var _toISOMonthString = __webpack_require__(191);
       
 54257 
       
 54258 var _toISOMonthString2 = _interopRequireDefault(_toISOMonthString);
       
 54259 
       
 54260 var _isPrevMonth = __webpack_require__(397);
       
 54261 
       
 54262 var _isPrevMonth2 = _interopRequireDefault(_isPrevMonth);
       
 54263 
       
 54264 var _isNextMonth = __webpack_require__(398);
       
 54265 
       
 54266 var _isNextMonth2 = _interopRequireDefault(_isNextMonth);
       
 54267 
       
 54268 var _ModifiersShape = __webpack_require__(157);
       
 54269 
       
 54270 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
 54271 
       
 54272 var _ScrollableOrientationShape = __webpack_require__(142);
       
 54273 
       
 54274 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 54275 
       
 54276 var _DayOfWeekShape = __webpack_require__(156);
       
 54277 
       
 54278 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 54279 
       
 54280 var _constants = __webpack_require__(77);
       
 54281 
       
 54282 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 54283 
       
 54284 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 54285 
       
 54286 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 54287 
       
 54288 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 54289 
       
 54290 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 54291   enableOutsideDays: _propTypes2['default'].bool,
       
 54292   firstVisibleMonthIndex: _propTypes2['default'].number,
       
 54293   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 54294   initialMonth: _reactMomentProptypes2['default'].momentObj,
       
 54295   isAnimating: _propTypes2['default'].bool,
       
 54296   numberOfMonths: _propTypes2['default'].number,
       
 54297   modifiers: _propTypes2['default'].objectOf(_propTypes2['default'].objectOf(_ModifiersShape2['default'])),
       
 54298   orientation: _ScrollableOrientationShape2['default'],
       
 54299   onDayClick: _propTypes2['default'].func,
       
 54300   onDayMouseEnter: _propTypes2['default'].func,
       
 54301   onDayMouseLeave: _propTypes2['default'].func,
       
 54302   onMonthTransitionEnd: _propTypes2['default'].func,
       
 54303   onMonthChange: _propTypes2['default'].func,
       
 54304   onYearChange: _propTypes2['default'].func,
       
 54305   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 54306   renderCalendarDay: _propTypes2['default'].func,
       
 54307   renderDayContents: _propTypes2['default'].func,
       
 54308   translationValue: _propTypes2['default'].number,
       
 54309   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 54310   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 54311   focusedDate: _reactMomentProptypes2['default'].momentObj, // indicates focusable day
       
 54312   isFocused: _propTypes2['default'].bool, // indicates whether or not to move focus to focusable day
       
 54313   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 54314   setMonthTitleHeight: _propTypes2['default'].func,
       
 54315   isRTL: _propTypes2['default'].bool,
       
 54316   transitionDuration: _airbnbPropTypes.nonNegativeInteger,
       
 54317   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 54318 
       
 54319   // i18n
       
 54320   monthFormat: _propTypes2['default'].string,
       
 54321   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases)),
       
 54322   dayAriaLabelFormat: _propTypes2['default'].string
       
 54323 }));
       
 54324 
       
 54325 var defaultProps = {
       
 54326   enableOutsideDays: false,
       
 54327   firstVisibleMonthIndex: 0,
       
 54328   horizontalMonthPadding: 13,
       
 54329   initialMonth: (0, _moment2['default'])(),
       
 54330   isAnimating: false,
       
 54331   numberOfMonths: 1,
       
 54332   modifiers: {},
       
 54333   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 54334   onDayClick: function () {
       
 54335     function onDayClick() {}
       
 54336 
       
 54337     return onDayClick;
       
 54338   }(),
       
 54339   onDayMouseEnter: function () {
       
 54340     function onDayMouseEnter() {}
       
 54341 
       
 54342     return onDayMouseEnter;
       
 54343   }(),
       
 54344   onDayMouseLeave: function () {
       
 54345     function onDayMouseLeave() {}
       
 54346 
       
 54347     return onDayMouseLeave;
       
 54348   }(),
       
 54349   onMonthChange: function () {
       
 54350     function onMonthChange() {}
       
 54351 
       
 54352     return onMonthChange;
       
 54353   }(),
       
 54354   onYearChange: function () {
       
 54355     function onYearChange() {}
       
 54356 
       
 54357     return onYearChange;
       
 54358   }(),
       
 54359   onMonthTransitionEnd: function () {
       
 54360     function onMonthTransitionEnd() {}
       
 54361 
       
 54362     return onMonthTransitionEnd;
       
 54363   }(),
       
 54364 
       
 54365   renderMonthText: null,
       
 54366   renderCalendarDay: undefined,
       
 54367   renderDayContents: null,
       
 54368   translationValue: null,
       
 54369   renderMonthElement: null,
       
 54370   daySize: _constants.DAY_SIZE,
       
 54371   focusedDate: null,
       
 54372   isFocused: false,
       
 54373   firstDayOfWeek: null,
       
 54374   setMonthTitleHeight: null,
       
 54375   isRTL: false,
       
 54376   transitionDuration: 200,
       
 54377   verticalBorderSpacing: undefined,
       
 54378 
       
 54379   // i18n
       
 54380   monthFormat: 'MMMM YYYY', // english locale
       
 54381   phrases: _defaultPhrases.CalendarDayPhrases,
       
 54382   dayAriaLabelFormat: undefined
       
 54383 };
       
 54384 
       
 54385 function getMonths(initialMonth, numberOfMonths, withoutTransitionMonths) {
       
 54386   var month = initialMonth.clone();
       
 54387   if (!withoutTransitionMonths) month = month.subtract(1, 'month');
       
 54388 
       
 54389   var months = [];
       
 54390   for (var i = 0; i < (withoutTransitionMonths ? numberOfMonths : numberOfMonths + 2); i += 1) {
       
 54391     months.push(month);
       
 54392     month = month.clone().add(1, 'month');
       
 54393   }
       
 54394 
       
 54395   return months;
       
 54396 }
       
 54397 
       
 54398 var CalendarMonthGrid = function (_React$Component) {
       
 54399   _inherits(CalendarMonthGrid, _React$Component);
       
 54400 
       
 54401   function CalendarMonthGrid(props) {
       
 54402     _classCallCheck(this, CalendarMonthGrid);
       
 54403 
       
 54404     var _this = _possibleConstructorReturn(this, (CalendarMonthGrid.__proto__ || Object.getPrototypeOf(CalendarMonthGrid)).call(this, props));
       
 54405 
       
 54406     var withoutTransitionMonths = props.orientation === _constants.VERTICAL_SCROLLABLE;
       
 54407     _this.state = {
       
 54408       months: getMonths(props.initialMonth, props.numberOfMonths, withoutTransitionMonths)
       
 54409     };
       
 54410 
       
 54411     _this.isTransitionEndSupported = (0, _isTransitionEndSupported2['default'])();
       
 54412     _this.onTransitionEnd = _this.onTransitionEnd.bind(_this);
       
 54413     _this.setContainerRef = _this.setContainerRef.bind(_this);
       
 54414 
       
 54415     _this.locale = _moment2['default'].locale();
       
 54416     _this.onMonthSelect = _this.onMonthSelect.bind(_this);
       
 54417     _this.onYearSelect = _this.onYearSelect.bind(_this);
       
 54418     return _this;
       
 54419   }
       
 54420 
       
 54421   _createClass(CalendarMonthGrid, [{
       
 54422     key: 'componentDidMount',
       
 54423     value: function () {
       
 54424       function componentDidMount() {
       
 54425         this.removeEventListener = (0, _consolidatedEvents.addEventListener)(this.container, 'transitionend', this.onTransitionEnd);
       
 54426       }
       
 54427 
       
 54428       return componentDidMount;
       
 54429     }()
       
 54430   }, {
       
 54431     key: 'componentWillReceiveProps',
       
 54432     value: function () {
       
 54433       function componentWillReceiveProps(nextProps) {
       
 54434         var _this2 = this;
       
 54435 
       
 54436         var initialMonth = nextProps.initialMonth,
       
 54437             numberOfMonths = nextProps.numberOfMonths,
       
 54438             orientation = nextProps.orientation;
       
 54439         var months = this.state.months;
       
 54440         var _props = this.props,
       
 54441             prevInitialMonth = _props.initialMonth,
       
 54442             prevNumberOfMonths = _props.numberOfMonths;
       
 54443 
       
 54444         var hasMonthChanged = !prevInitialMonth.isSame(initialMonth, 'month');
       
 54445         var hasNumberOfMonthsChanged = prevNumberOfMonths !== numberOfMonths;
       
 54446         var newMonths = months;
       
 54447 
       
 54448         if (hasMonthChanged && !hasNumberOfMonthsChanged) {
       
 54449           if ((0, _isNextMonth2['default'])(prevInitialMonth, initialMonth)) {
       
 54450             newMonths = months.slice(1);
       
 54451             newMonths.push(months[months.length - 1].clone().add(1, 'month'));
       
 54452           } else if ((0, _isPrevMonth2['default'])(prevInitialMonth, initialMonth)) {
       
 54453             newMonths = months.slice(0, months.length - 1);
       
 54454             newMonths.unshift(months[0].clone().subtract(1, 'month'));
       
 54455           } else {
       
 54456             var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 54457             newMonths = getMonths(initialMonth, numberOfMonths, withoutTransitionMonths);
       
 54458           }
       
 54459         }
       
 54460 
       
 54461         if (hasNumberOfMonthsChanged) {
       
 54462           var _withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 54463           newMonths = getMonths(initialMonth, numberOfMonths, _withoutTransitionMonths);
       
 54464         }
       
 54465 
       
 54466         var momentLocale = _moment2['default'].locale();
       
 54467         if (this.locale !== momentLocale) {
       
 54468           this.locale = momentLocale;
       
 54469           newMonths = newMonths.map(function (m) {
       
 54470             return m.locale(_this2.locale);
       
 54471           });
       
 54472         }
       
 54473 
       
 54474         this.setState({
       
 54475           months: newMonths
       
 54476         });
       
 54477       }
       
 54478 
       
 54479       return componentWillReceiveProps;
       
 54480     }()
       
 54481   }, {
       
 54482     key: 'shouldComponentUpdate',
       
 54483     value: function () {
       
 54484       function shouldComponentUpdate(nextProps, nextState) {
       
 54485         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
 54486       }
       
 54487 
       
 54488       return shouldComponentUpdate;
       
 54489     }()
       
 54490   }, {
       
 54491     key: 'componentDidUpdate',
       
 54492     value: function () {
       
 54493       function componentDidUpdate() {
       
 54494         var _props2 = this.props,
       
 54495             isAnimating = _props2.isAnimating,
       
 54496             transitionDuration = _props2.transitionDuration,
       
 54497             onMonthTransitionEnd = _props2.onMonthTransitionEnd;
       
 54498 
       
 54499         // For IE9, immediately call onMonthTransitionEnd instead of
       
 54500         // waiting for the animation to complete. Similarly, if transitionDuration
       
 54501         // is set to 0, also immediately invoke the onMonthTransitionEnd callback
       
 54502 
       
 54503         if ((!this.isTransitionEndSupported || !transitionDuration) && isAnimating) {
       
 54504           onMonthTransitionEnd();
       
 54505         }
       
 54506       }
       
 54507 
       
 54508       return componentDidUpdate;
       
 54509     }()
       
 54510   }, {
       
 54511     key: 'componentWillUnmount',
       
 54512     value: function () {
       
 54513       function componentWillUnmount() {
       
 54514         if (this.removeEventListener) this.removeEventListener();
       
 54515       }
       
 54516 
       
 54517       return componentWillUnmount;
       
 54518     }()
       
 54519   }, {
       
 54520     key: 'onTransitionEnd',
       
 54521     value: function () {
       
 54522       function onTransitionEnd() {
       
 54523         var onMonthTransitionEnd = this.props.onMonthTransitionEnd;
       
 54524 
       
 54525         onMonthTransitionEnd();
       
 54526       }
       
 54527 
       
 54528       return onTransitionEnd;
       
 54529     }()
       
 54530   }, {
       
 54531     key: 'onMonthSelect',
       
 54532     value: function () {
       
 54533       function onMonthSelect(currentMonth, newMonthVal) {
       
 54534         var newMonth = currentMonth.clone();
       
 54535         var _props3 = this.props,
       
 54536             onMonthChange = _props3.onMonthChange,
       
 54537             orientation = _props3.orientation;
       
 54538         var months = this.state.months;
       
 54539 
       
 54540         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 54541         var initialMonthSubtraction = months.indexOf(currentMonth);
       
 54542         if (!withoutTransitionMonths) {
       
 54543           initialMonthSubtraction -= 1;
       
 54544         }
       
 54545         newMonth.set('month', newMonthVal).subtract(initialMonthSubtraction, 'months');
       
 54546         onMonthChange(newMonth);
       
 54547       }
       
 54548 
       
 54549       return onMonthSelect;
       
 54550     }()
       
 54551   }, {
       
 54552     key: 'onYearSelect',
       
 54553     value: function () {
       
 54554       function onYearSelect(currentMonth, newYearVal) {
       
 54555         var newMonth = currentMonth.clone();
       
 54556         var _props4 = this.props,
       
 54557             onYearChange = _props4.onYearChange,
       
 54558             orientation = _props4.orientation;
       
 54559         var months = this.state.months;
       
 54560 
       
 54561         var withoutTransitionMonths = orientation === _constants.VERTICAL_SCROLLABLE;
       
 54562         var initialMonthSubtraction = months.indexOf(currentMonth);
       
 54563         if (!withoutTransitionMonths) {
       
 54564           initialMonthSubtraction -= 1;
       
 54565         }
       
 54566         newMonth.set('year', newYearVal).subtract(initialMonthSubtraction, 'months');
       
 54567         onYearChange(newMonth);
       
 54568       }
       
 54569 
       
 54570       return onYearSelect;
       
 54571     }()
       
 54572   }, {
       
 54573     key: 'setContainerRef',
       
 54574     value: function () {
       
 54575       function setContainerRef(ref) {
       
 54576         this.container = ref;
       
 54577       }
       
 54578 
       
 54579       return setContainerRef;
       
 54580     }()
       
 54581   }, {
       
 54582     key: 'render',
       
 54583     value: function () {
       
 54584       function render() {
       
 54585         var _this3 = this;
       
 54586 
       
 54587         var _props5 = this.props,
       
 54588             enableOutsideDays = _props5.enableOutsideDays,
       
 54589             firstVisibleMonthIndex = _props5.firstVisibleMonthIndex,
       
 54590             horizontalMonthPadding = _props5.horizontalMonthPadding,
       
 54591             isAnimating = _props5.isAnimating,
       
 54592             modifiers = _props5.modifiers,
       
 54593             numberOfMonths = _props5.numberOfMonths,
       
 54594             monthFormat = _props5.monthFormat,
       
 54595             orientation = _props5.orientation,
       
 54596             translationValue = _props5.translationValue,
       
 54597             daySize = _props5.daySize,
       
 54598             onDayMouseEnter = _props5.onDayMouseEnter,
       
 54599             onDayMouseLeave = _props5.onDayMouseLeave,
       
 54600             onDayClick = _props5.onDayClick,
       
 54601             renderMonthText = _props5.renderMonthText,
       
 54602             renderCalendarDay = _props5.renderCalendarDay,
       
 54603             renderDayContents = _props5.renderDayContents,
       
 54604             renderMonthElement = _props5.renderMonthElement,
       
 54605             onMonthTransitionEnd = _props5.onMonthTransitionEnd,
       
 54606             firstDayOfWeek = _props5.firstDayOfWeek,
       
 54607             focusedDate = _props5.focusedDate,
       
 54608             isFocused = _props5.isFocused,
       
 54609             isRTL = _props5.isRTL,
       
 54610             styles = _props5.styles,
       
 54611             phrases = _props5.phrases,
       
 54612             dayAriaLabelFormat = _props5.dayAriaLabelFormat,
       
 54613             transitionDuration = _props5.transitionDuration,
       
 54614             verticalBorderSpacing = _props5.verticalBorderSpacing,
       
 54615             setMonthTitleHeight = _props5.setMonthTitleHeight;
       
 54616         var months = this.state.months;
       
 54617 
       
 54618         var isVertical = orientation === _constants.VERTICAL_ORIENTATION;
       
 54619         var isVerticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
 54620         var isHorizontal = orientation === _constants.HORIZONTAL_ORIENTATION;
       
 54621 
       
 54622         var calendarMonthWidth = (0, _getCalendarMonthWidth2['default'])(daySize, horizontalMonthPadding);
       
 54623 
       
 54624         var width = isVertical || isVerticalScrollable ? calendarMonthWidth : (numberOfMonths + 2) * calendarMonthWidth;
       
 54625 
       
 54626         var transformType = isVertical || isVerticalScrollable ? 'translateY' : 'translateX';
       
 54627         var transformValue = transformType + '(' + String(translationValue) + 'px)';
       
 54628 
       
 54629         return _react2['default'].createElement(
       
 54630           'div',
       
 54631           _extends({}, (0, _reactWithStyles.css)(styles.CalendarMonthGrid, isHorizontal && styles.CalendarMonthGrid__horizontal, isVertical && styles.CalendarMonthGrid__vertical, isVerticalScrollable && styles.CalendarMonthGrid__vertical_scrollable, isAnimating && styles.CalendarMonthGrid__animating, isAnimating && transitionDuration && {
       
 54632             transition: 'transform ' + String(transitionDuration) + 'ms ease-in-out'
       
 54633           }, (0, _object2['default'])({}, (0, _getTransformStyles2['default'])(transformValue), {
       
 54634             width: width
       
 54635           })), {
       
 54636             ref: this.setContainerRef,
       
 54637             onTransitionEnd: onMonthTransitionEnd
       
 54638           }),
       
 54639           months.map(function (month, i) {
       
 54640             var isVisible = i >= firstVisibleMonthIndex && i < firstVisibleMonthIndex + numberOfMonths;
       
 54641             var hideForAnimation = i === 0 && !isVisible;
       
 54642             var showForAnimation = i === 0 && isAnimating && isVisible;
       
 54643             var monthString = (0, _toISOMonthString2['default'])(month);
       
 54644             return _react2['default'].createElement(
       
 54645               'div',
       
 54646               _extends({
       
 54647                 key: monthString
       
 54648               }, (0, _reactWithStyles.css)(isHorizontal && styles.CalendarMonthGrid_month__horizontal, hideForAnimation && styles.CalendarMonthGrid_month__hideForAnimation, showForAnimation && !isVertical && !isRTL && {
       
 54649                 position: 'absolute',
       
 54650                 left: -calendarMonthWidth
       
 54651               }, showForAnimation && !isVertical && isRTL && {
       
 54652                 position: 'absolute',
       
 54653                 right: 0
       
 54654               }, showForAnimation && isVertical && {
       
 54655                 position: 'absolute',
       
 54656                 top: -translationValue
       
 54657               }, !isVisible && !isAnimating && styles.CalendarMonthGrid_month__hidden)),
       
 54658               _react2['default'].createElement(_CalendarMonth2['default'], {
       
 54659                 month: month,
       
 54660                 isVisible: isVisible,
       
 54661                 enableOutsideDays: enableOutsideDays,
       
 54662                 modifiers: modifiers[monthString],
       
 54663                 monthFormat: monthFormat,
       
 54664                 orientation: orientation,
       
 54665                 onDayMouseEnter: onDayMouseEnter,
       
 54666                 onDayMouseLeave: onDayMouseLeave,
       
 54667                 onDayClick: onDayClick,
       
 54668                 onMonthSelect: _this3.onMonthSelect,
       
 54669                 onYearSelect: _this3.onYearSelect,
       
 54670                 renderMonthText: renderMonthText,
       
 54671                 renderCalendarDay: renderCalendarDay,
       
 54672                 renderDayContents: renderDayContents,
       
 54673                 renderMonthElement: renderMonthElement,
       
 54674                 firstDayOfWeek: firstDayOfWeek,
       
 54675                 daySize: daySize,
       
 54676                 focusedDate: isVisible ? focusedDate : null,
       
 54677                 isFocused: isFocused,
       
 54678                 phrases: phrases,
       
 54679                 setMonthTitleHeight: setMonthTitleHeight,
       
 54680                 dayAriaLabelFormat: dayAriaLabelFormat,
       
 54681                 verticalBorderSpacing: verticalBorderSpacing,
       
 54682                 horizontalMonthPadding: horizontalMonthPadding
       
 54683               })
       
 54684             );
       
 54685           })
       
 54686         );
       
 54687       }
       
 54688 
       
 54689       return render;
       
 54690     }()
       
 54691   }]);
       
 54692 
       
 54693   return CalendarMonthGrid;
       
 54694 }(_react2['default'].Component);
       
 54695 
       
 54696 CalendarMonthGrid.propTypes = propTypes;
       
 54697 CalendarMonthGrid.defaultProps = defaultProps;
       
 54698 
       
 54699 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
 54700   var _ref$reactDates = _ref.reactDates,
       
 54701       color = _ref$reactDates.color,
       
 54702       noScrollBarOnVerticalScrollable = _ref$reactDates.noScrollBarOnVerticalScrollable,
       
 54703       spacing = _ref$reactDates.spacing,
       
 54704       zIndex = _ref$reactDates.zIndex;
       
 54705   return {
       
 54706     CalendarMonthGrid: {
       
 54707       background: color.background,
       
 54708       textAlign: 'left',
       
 54709       zIndex: zIndex
       
 54710     },
       
 54711 
       
 54712     CalendarMonthGrid__animating: {
       
 54713       zIndex: zIndex + 1
       
 54714     },
       
 54715 
       
 54716     CalendarMonthGrid__horizontal: {
       
 54717       position: 'absolute',
       
 54718       left: spacing.dayPickerHorizontalPadding
       
 54719     },
       
 54720 
       
 54721     CalendarMonthGrid__vertical: {
       
 54722       margin: '0 auto'
       
 54723     },
       
 54724 
       
 54725     CalendarMonthGrid__vertical_scrollable: (0, _object2['default'])({
       
 54726       margin: '0 auto',
       
 54727       overflowY: 'scroll'
       
 54728     }, noScrollBarOnVerticalScrollable && {
       
 54729       '-webkitOverflowScrolling': 'touch',
       
 54730       '::-webkit-scrollbar': {
       
 54731         '-webkit-appearance': 'none',
       
 54732         display: 'none'
       
 54733       }
       
 54734     }),
       
 54735 
       
 54736     CalendarMonthGrid_month__horizontal: {
       
 54737       display: 'inline-block',
       
 54738       verticalAlign: 'top',
       
 54739       minHeight: '100%'
       
 54740     },
       
 54741 
       
 54742     CalendarMonthGrid_month__hideForAnimation: {
       
 54743       position: 'absolute',
       
 54744       zIndex: zIndex - 1,
       
 54745       opacity: 0,
       
 54746       pointerEvents: 'none'
       
 54747     },
       
 54748 
       
 54749     CalendarMonthGrid_month__hidden: {
       
 54750       visibility: 'hidden'
       
 54751     }
       
 54752   };
       
 54753 })(CalendarMonthGrid);
       
 54754 
       
 54755 /***/ }),
       
 54756 /* 390 */
       
 54757 /***/ (function(module, exports, __webpack_require__) {
       
 54758 
       
 54759 "use strict";
       
 54760 
       
 54761 
       
 54762 Object.defineProperty(exports, "__esModule", {
       
 54763   value: true
       
 54764 });
       
 54765 
       
 54766 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 54767 
       
 54768 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 54769 
       
 54770 var _object = __webpack_require__(92);
       
 54771 
       
 54772 var _object2 = _interopRequireDefault(_object);
       
 54773 
       
 54774 var _react = __webpack_require__(13);
       
 54775 
       
 54776 var _react2 = _interopRequireDefault(_react);
       
 54777 
       
 54778 var _propTypes = __webpack_require__(28);
       
 54779 
       
 54780 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 54781 
       
 54782 var _reactAddonsShallowCompare = __webpack_require__(143);
       
 54783 
       
 54784 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
 54785 
       
 54786 var _reactMomentProptypes = __webpack_require__(141);
       
 54787 
       
 54788 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 54789 
       
 54790 var _airbnbPropTypes = __webpack_require__(85);
       
 54791 
       
 54792 var _reactWithStyles = __webpack_require__(109);
       
 54793 
       
 54794 var _moment = __webpack_require__(43);
       
 54795 
       
 54796 var _moment2 = _interopRequireDefault(_moment);
       
 54797 
       
 54798 var _defaultPhrases = __webpack_require__(107);
       
 54799 
       
 54800 var _getPhrasePropTypes = __webpack_require__(108);
       
 54801 
       
 54802 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 54803 
       
 54804 var _CalendarWeek = __webpack_require__(391);
       
 54805 
       
 54806 var _CalendarWeek2 = _interopRequireDefault(_CalendarWeek);
       
 54807 
       
 54808 var _CalendarDay = __webpack_require__(250);
       
 54809 
       
 54810 var _CalendarDay2 = _interopRequireDefault(_CalendarDay);
       
 54811 
       
 54812 var _calculateDimension = __webpack_require__(252);
       
 54813 
       
 54814 var _calculateDimension2 = _interopRequireDefault(_calculateDimension);
       
 54815 
       
 54816 var _getCalendarMonthWeeks = __webpack_require__(394);
       
 54817 
       
 54818 var _getCalendarMonthWeeks2 = _interopRequireDefault(_getCalendarMonthWeeks);
       
 54819 
       
 54820 var _isSameDay = __webpack_require__(190);
       
 54821 
       
 54822 var _isSameDay2 = _interopRequireDefault(_isSameDay);
       
 54823 
       
 54824 var _toISODateString = __webpack_require__(243);
       
 54825 
       
 54826 var _toISODateString2 = _interopRequireDefault(_toISODateString);
       
 54827 
       
 54828 var _ModifiersShape = __webpack_require__(157);
       
 54829 
       
 54830 var _ModifiersShape2 = _interopRequireDefault(_ModifiersShape);
       
 54831 
       
 54832 var _ScrollableOrientationShape = __webpack_require__(142);
       
 54833 
       
 54834 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 54835 
       
 54836 var _DayOfWeekShape = __webpack_require__(156);
       
 54837 
       
 54838 var _DayOfWeekShape2 = _interopRequireDefault(_DayOfWeekShape);
       
 54839 
       
 54840 var _constants = __webpack_require__(77);
       
 54841 
       
 54842 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 54843 
       
 54844 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 54845 
       
 54846 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 54847 
       
 54848 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } /* eslint react/no-array-index-key: 0 */
       
 54849 
       
 54850 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 54851   month: _reactMomentProptypes2['default'].momentObj,
       
 54852   horizontalMonthPadding: _airbnbPropTypes.nonNegativeInteger,
       
 54853   isVisible: _propTypes2['default'].bool,
       
 54854   enableOutsideDays: _propTypes2['default'].bool,
       
 54855   modifiers: _propTypes2['default'].objectOf(_ModifiersShape2['default']),
       
 54856   orientation: _ScrollableOrientationShape2['default'],
       
 54857   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 54858   onDayClick: _propTypes2['default'].func,
       
 54859   onDayMouseEnter: _propTypes2['default'].func,
       
 54860   onDayMouseLeave: _propTypes2['default'].func,
       
 54861   onMonthSelect: _propTypes2['default'].func,
       
 54862   onYearSelect: _propTypes2['default'].func,
       
 54863   renderMonthText: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 54864   renderCalendarDay: _propTypes2['default'].func,
       
 54865   renderDayContents: _propTypes2['default'].func,
       
 54866   renderMonthElement: (0, _airbnbPropTypes.mutuallyExclusiveProps)(_propTypes2['default'].func, 'renderMonthText', 'renderMonthElement'),
       
 54867   firstDayOfWeek: _DayOfWeekShape2['default'],
       
 54868   setMonthTitleHeight: _propTypes2['default'].func,
       
 54869   verticalBorderSpacing: _airbnbPropTypes.nonNegativeInteger,
       
 54870 
       
 54871   focusedDate: _reactMomentProptypes2['default'].momentObj, // indicates focusable day
       
 54872   isFocused: _propTypes2['default'].bool, // indicates whether or not to move focus to focusable day
       
 54873 
       
 54874   // i18n
       
 54875   monthFormat: _propTypes2['default'].string,
       
 54876   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases)),
       
 54877   dayAriaLabelFormat: _propTypes2['default'].string
       
 54878 }));
       
 54879 
       
 54880 var defaultProps = {
       
 54881   month: (0, _moment2['default'])(),
       
 54882   horizontalMonthPadding: 13,
       
 54883   isVisible: true,
       
 54884   enableOutsideDays: false,
       
 54885   modifiers: {},
       
 54886   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 54887   daySize: _constants.DAY_SIZE,
       
 54888   onDayClick: function () {
       
 54889     function onDayClick() {}
       
 54890 
       
 54891     return onDayClick;
       
 54892   }(),
       
 54893   onDayMouseEnter: function () {
       
 54894     function onDayMouseEnter() {}
       
 54895 
       
 54896     return onDayMouseEnter;
       
 54897   }(),
       
 54898   onDayMouseLeave: function () {
       
 54899     function onDayMouseLeave() {}
       
 54900 
       
 54901     return onDayMouseLeave;
       
 54902   }(),
       
 54903   onMonthSelect: function () {
       
 54904     function onMonthSelect() {}
       
 54905 
       
 54906     return onMonthSelect;
       
 54907   }(),
       
 54908   onYearSelect: function () {
       
 54909     function onYearSelect() {}
       
 54910 
       
 54911     return onYearSelect;
       
 54912   }(),
       
 54913 
       
 54914   renderMonthText: null,
       
 54915   renderCalendarDay: function () {
       
 54916     function renderCalendarDay(props) {
       
 54917       return _react2['default'].createElement(_CalendarDay2['default'], props);
       
 54918     }
       
 54919 
       
 54920     return renderCalendarDay;
       
 54921   }(),
       
 54922   renderDayContents: null,
       
 54923   renderMonthElement: null,
       
 54924   firstDayOfWeek: null,
       
 54925   setMonthTitleHeight: null,
       
 54926 
       
 54927   focusedDate: null,
       
 54928   isFocused: false,
       
 54929 
       
 54930   // i18n
       
 54931   monthFormat: 'MMMM YYYY', // english locale
       
 54932   phrases: _defaultPhrases.CalendarDayPhrases,
       
 54933   dayAriaLabelFormat: undefined,
       
 54934   verticalBorderSpacing: undefined
       
 54935 };
       
 54936 
       
 54937 var CalendarMonth = function (_React$Component) {
       
 54938   _inherits(CalendarMonth, _React$Component);
       
 54939 
       
 54940   function CalendarMonth(props) {
       
 54941     _classCallCheck(this, CalendarMonth);
       
 54942 
       
 54943     var _this = _possibleConstructorReturn(this, (CalendarMonth.__proto__ || Object.getPrototypeOf(CalendarMonth)).call(this, props));
       
 54944 
       
 54945     _this.state = {
       
 54946       weeks: (0, _getCalendarMonthWeeks2['default'])(props.month, props.enableOutsideDays, props.firstDayOfWeek == null ? _moment2['default'].localeData().firstDayOfWeek() : props.firstDayOfWeek)
       
 54947     };
       
 54948 
       
 54949     _this.setCaptionRef = _this.setCaptionRef.bind(_this);
       
 54950     _this.setMonthTitleHeight = _this.setMonthTitleHeight.bind(_this);
       
 54951     return _this;
       
 54952   }
       
 54953 
       
 54954   _createClass(CalendarMonth, [{
       
 54955     key: 'componentDidMount',
       
 54956     value: function () {
       
 54957       function componentDidMount() {
       
 54958         this.setMonthTitleHeightTimeout = setTimeout(this.setMonthTitleHeight, 0);
       
 54959       }
       
 54960 
       
 54961       return componentDidMount;
       
 54962     }()
       
 54963   }, {
       
 54964     key: 'componentWillReceiveProps',
       
 54965     value: function () {
       
 54966       function componentWillReceiveProps(nextProps) {
       
 54967         var month = nextProps.month,
       
 54968             enableOutsideDays = nextProps.enableOutsideDays,
       
 54969             firstDayOfWeek = nextProps.firstDayOfWeek;
       
 54970         var _props = this.props,
       
 54971             prevMonth = _props.month,
       
 54972             prevEnableOutsideDays = _props.enableOutsideDays,
       
 54973             prevFirstDayOfWeek = _props.firstDayOfWeek;
       
 54974 
       
 54975         if (!month.isSame(prevMonth) || enableOutsideDays !== prevEnableOutsideDays || firstDayOfWeek !== prevFirstDayOfWeek) {
       
 54976           this.setState({
       
 54977             weeks: (0, _getCalendarMonthWeeks2['default'])(month, enableOutsideDays, firstDayOfWeek == null ? _moment2['default'].localeData().firstDayOfWeek() : firstDayOfWeek)
       
 54978           });
       
 54979         }
       
 54980       }
       
 54981 
       
 54982       return componentWillReceiveProps;
       
 54983     }()
       
 54984   }, {
       
 54985     key: 'shouldComponentUpdate',
       
 54986     value: function () {
       
 54987       function shouldComponentUpdate(nextProps, nextState) {
       
 54988         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
 54989       }
       
 54990 
       
 54991       return shouldComponentUpdate;
       
 54992     }()
       
 54993   }, {
       
 54994     key: 'componentWillUnmount',
       
 54995     value: function () {
       
 54996       function componentWillUnmount() {
       
 54997         if (this.setMonthTitleHeightTimeout) {
       
 54998           clearTimeout(this.setMonthTitleHeightTimeout);
       
 54999         }
       
 55000       }
       
 55001 
       
 55002       return componentWillUnmount;
       
 55003     }()
       
 55004   }, {
       
 55005     key: 'setMonthTitleHeight',
       
 55006     value: function () {
       
 55007       function setMonthTitleHeight() {
       
 55008         var setMonthTitleHeight = this.props.setMonthTitleHeight;
       
 55009 
       
 55010         if (setMonthTitleHeight) {
       
 55011           var captionHeight = (0, _calculateDimension2['default'])(this.captionRef, 'height', true, true);
       
 55012           setMonthTitleHeight(captionHeight);
       
 55013         }
       
 55014       }
       
 55015 
       
 55016       return setMonthTitleHeight;
       
 55017     }()
       
 55018   }, {
       
 55019     key: 'setCaptionRef',
       
 55020     value: function () {
       
 55021       function setCaptionRef(ref) {
       
 55022         this.captionRef = ref;
       
 55023       }
       
 55024 
       
 55025       return setCaptionRef;
       
 55026     }()
       
 55027   }, {
       
 55028     key: 'render',
       
 55029     value: function () {
       
 55030       function render() {
       
 55031         var _props2 = this.props,
       
 55032             dayAriaLabelFormat = _props2.dayAriaLabelFormat,
       
 55033             daySize = _props2.daySize,
       
 55034             focusedDate = _props2.focusedDate,
       
 55035             horizontalMonthPadding = _props2.horizontalMonthPadding,
       
 55036             isFocused = _props2.isFocused,
       
 55037             isVisible = _props2.isVisible,
       
 55038             modifiers = _props2.modifiers,
       
 55039             month = _props2.month,
       
 55040             monthFormat = _props2.monthFormat,
       
 55041             onDayClick = _props2.onDayClick,
       
 55042             onDayMouseEnter = _props2.onDayMouseEnter,
       
 55043             onDayMouseLeave = _props2.onDayMouseLeave,
       
 55044             onMonthSelect = _props2.onMonthSelect,
       
 55045             onYearSelect = _props2.onYearSelect,
       
 55046             orientation = _props2.orientation,
       
 55047             phrases = _props2.phrases,
       
 55048             renderCalendarDay = _props2.renderCalendarDay,
       
 55049             renderDayContents = _props2.renderDayContents,
       
 55050             renderMonthElement = _props2.renderMonthElement,
       
 55051             renderMonthText = _props2.renderMonthText,
       
 55052             styles = _props2.styles,
       
 55053             verticalBorderSpacing = _props2.verticalBorderSpacing;
       
 55054         var weeks = this.state.weeks;
       
 55055 
       
 55056         var monthTitle = renderMonthText ? renderMonthText(month) : month.format(monthFormat);
       
 55057 
       
 55058         var verticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
 55059 
       
 55060         return _react2['default'].createElement(
       
 55061           'div',
       
 55062           _extends({}, (0, _reactWithStyles.css)(styles.CalendarMonth, { padding: '0 ' + String(horizontalMonthPadding) + 'px' }), {
       
 55063             'data-visible': isVisible
       
 55064           }),
       
 55065           _react2['default'].createElement(
       
 55066             'div',
       
 55067             _extends({
       
 55068               ref: this.setCaptionRef
       
 55069             }, (0, _reactWithStyles.css)(styles.CalendarMonth_caption, verticalScrollable && styles.CalendarMonth_caption__verticalScrollable)),
       
 55070             renderMonthElement ? renderMonthElement({ month: month, onMonthSelect: onMonthSelect, onYearSelect: onYearSelect }) : _react2['default'].createElement(
       
 55071               'strong',
       
 55072               null,
       
 55073               monthTitle
       
 55074             )
       
 55075           ),
       
 55076           _react2['default'].createElement(
       
 55077             'table',
       
 55078             _extends({}, (0, _reactWithStyles.css)(!verticalBorderSpacing && styles.CalendarMonth_table, verticalBorderSpacing && styles.CalendarMonth_verticalSpacing, verticalBorderSpacing && { borderSpacing: '0px ' + String(verticalBorderSpacing) + 'px' }), {
       
 55079               role: 'presentation'
       
 55080             }),
       
 55081             _react2['default'].createElement(
       
 55082               'tbody',
       
 55083               null,
       
 55084               weeks.map(function (week, i) {
       
 55085                 return _react2['default'].createElement(
       
 55086                   _CalendarWeek2['default'],
       
 55087                   { key: i },
       
 55088                   week.map(function (day, dayOfWeek) {
       
 55089                     return renderCalendarDay({
       
 55090                       key: dayOfWeek,
       
 55091                       day: day,
       
 55092                       daySize: daySize,
       
 55093                       isOutsideDay: !day || day.month() !== month.month(),
       
 55094                       tabIndex: isVisible && (0, _isSameDay2['default'])(day, focusedDate) ? 0 : -1,
       
 55095                       isFocused: isFocused,
       
 55096                       onDayMouseEnter: onDayMouseEnter,
       
 55097                       onDayMouseLeave: onDayMouseLeave,
       
 55098                       onDayClick: onDayClick,
       
 55099                       renderDayContents: renderDayContents,
       
 55100                       phrases: phrases,
       
 55101                       modifiers: modifiers[(0, _toISODateString2['default'])(day)],
       
 55102                       ariaLabelFormat: dayAriaLabelFormat
       
 55103                     });
       
 55104                   })
       
 55105                 );
       
 55106               })
       
 55107             )
       
 55108           )
       
 55109         );
       
 55110       }
       
 55111 
       
 55112       return render;
       
 55113     }()
       
 55114   }]);
       
 55115 
       
 55116   return CalendarMonth;
       
 55117 }(_react2['default'].Component);
       
 55118 
       
 55119 CalendarMonth.propTypes = propTypes;
       
 55120 CalendarMonth.defaultProps = defaultProps;
       
 55121 
       
 55122 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref) {
       
 55123   var _ref$reactDates = _ref.reactDates,
       
 55124       color = _ref$reactDates.color,
       
 55125       font = _ref$reactDates.font,
       
 55126       spacing = _ref$reactDates.spacing;
       
 55127   return {
       
 55128     CalendarMonth: {
       
 55129       background: color.background,
       
 55130       textAlign: 'center',
       
 55131       verticalAlign: 'top',
       
 55132       userSelect: 'none'
       
 55133     },
       
 55134 
       
 55135     CalendarMonth_table: {
       
 55136       borderCollapse: 'collapse',
       
 55137       borderSpacing: 0
       
 55138     },
       
 55139 
       
 55140     CalendarMonth_verticalSpacing: {
       
 55141       borderCollapse: 'separate'
       
 55142     },
       
 55143 
       
 55144     CalendarMonth_caption: {
       
 55145       color: color.text,
       
 55146       fontSize: font.captionSize,
       
 55147       textAlign: 'center',
       
 55148       paddingTop: spacing.captionPaddingTop,
       
 55149       paddingBottom: spacing.captionPaddingBottom,
       
 55150       captionSide: 'initial'
       
 55151     },
       
 55152 
       
 55153     CalendarMonth_caption__verticalScrollable: {
       
 55154       paddingTop: 12,
       
 55155       paddingBottom: 7
       
 55156     }
       
 55157   };
       
 55158 })(CalendarMonth);
       
 55159 
       
 55160 /***/ }),
       
 55161 /* 391 */
       
 55162 /***/ (function(module, exports, __webpack_require__) {
       
 55163 
       
 55164 "use strict";
       
 55165 
       
 55166 
       
 55167 Object.defineProperty(exports, "__esModule", {
       
 55168   value: true
       
 55169 });
       
 55170 exports['default'] = CalendarWeek;
       
 55171 
       
 55172 var _react = __webpack_require__(13);
       
 55173 
       
 55174 var _react2 = _interopRequireDefault(_react);
       
 55175 
       
 55176 var _airbnbPropTypes = __webpack_require__(85);
       
 55177 
       
 55178 var _CalendarDay = __webpack_require__(250);
       
 55179 
       
 55180 var _CalendarDay2 = _interopRequireDefault(_CalendarDay);
       
 55181 
       
 55182 var _CustomizableCalendarDay = __webpack_require__(393);
       
 55183 
       
 55184 var _CustomizableCalendarDay2 = _interopRequireDefault(_CustomizableCalendarDay);
       
 55185 
       
 55186 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 55187 
       
 55188 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)({
       
 55189   children: (0, _airbnbPropTypes.or)([(0, _airbnbPropTypes.childrenOfType)(_CalendarDay2['default']), (0, _airbnbPropTypes.childrenOfType)(_CustomizableCalendarDay2['default'])]).isRequired
       
 55190 });
       
 55191 
       
 55192 function CalendarWeek(_ref) {
       
 55193   var children = _ref.children;
       
 55194 
       
 55195   return _react2['default'].createElement(
       
 55196     'tr',
       
 55197     null,
       
 55198     children
 37370   );
 55199   );
       
 55200 }
       
 55201 
       
 55202 CalendarWeek.propTypes = propTypes;
       
 55203 
       
 55204 /***/ }),
       
 55205 /* 392 */
       
 55206 /***/ (function(module, exports, __webpack_require__) {
       
 55207 
       
 55208 "use strict";
       
 55209 
       
 55210 
       
 55211 Object.defineProperty(exports, "__esModule", {
       
 55212   value: true
       
 55213 });
       
 55214 exports['default'] = getPhrase;
       
 55215 function getPhrase(phrase, args) {
       
 55216   if (typeof phrase === 'string') return phrase;
       
 55217 
       
 55218   if (typeof phrase === 'function') {
       
 55219     return phrase(args);
       
 55220   }
       
 55221 
       
 55222   return '';
       
 55223 }
       
 55224 
       
 55225 /***/ }),
       
 55226 /* 393 */
       
 55227 /***/ (function(module, exports, __webpack_require__) {
       
 55228 
       
 55229 "use strict";
       
 55230 
       
 55231 
       
 55232 Object.defineProperty(exports, "__esModule", {
       
 55233   value: true
       
 55234 });
       
 55235 exports.PureCustomizableCalendarDay = exports.selectedStyles = exports.lastInRangeStyles = exports.selectedSpanStyles = exports.hoveredSpanStyles = exports.blockedOutOfRangeStyles = exports.blockedCalendarStyles = exports.blockedMinNightsStyles = exports.highlightedCalendarStyles = exports.outsideStyles = exports.defaultStyles = undefined;
       
 55236 
       
 55237 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 55238 
       
 55239 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 55240 
       
 55241 var _object = __webpack_require__(92);
       
 55242 
       
 55243 var _object2 = _interopRequireDefault(_object);
       
 55244 
       
 55245 var _react = __webpack_require__(13);
       
 55246 
       
 55247 var _react2 = _interopRequireDefault(_react);
       
 55248 
       
 55249 var _propTypes = __webpack_require__(28);
       
 55250 
       
 55251 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 55252 
       
 55253 var _reactAddonsShallowCompare = __webpack_require__(143);
       
 55254 
       
 55255 var _reactAddonsShallowCompare2 = _interopRequireDefault(_reactAddonsShallowCompare);
       
 55256 
       
 55257 var _reactMomentProptypes = __webpack_require__(141);
       
 55258 
       
 55259 var _reactMomentProptypes2 = _interopRequireDefault(_reactMomentProptypes);
       
 55260 
       
 55261 var _airbnbPropTypes = __webpack_require__(85);
       
 55262 
       
 55263 var _reactWithStyles = __webpack_require__(109);
       
 55264 
       
 55265 var _moment = __webpack_require__(43);
       
 55266 
       
 55267 var _moment2 = _interopRequireDefault(_moment);
       
 55268 
       
 55269 var _defaultPhrases = __webpack_require__(107);
       
 55270 
       
 55271 var _getPhrasePropTypes = __webpack_require__(108);
       
 55272 
       
 55273 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 55274 
       
 55275 var _getCalendarDaySettings = __webpack_require__(251);
       
 55276 
       
 55277 var _getCalendarDaySettings2 = _interopRequireDefault(_getCalendarDaySettings);
       
 55278 
       
 55279 var _constants = __webpack_require__(77);
       
 55280 
       
 55281 var _DefaultTheme = __webpack_require__(225);
       
 55282 
       
 55283 var _DefaultTheme2 = _interopRequireDefault(_DefaultTheme);
       
 55284 
       
 55285 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 55286 
       
 55287 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 55288 
       
 55289 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 55290 
       
 55291 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 55292 
       
 55293 var color = _DefaultTheme2['default'].reactDates.color;
       
 55294 
       
 55295 
       
 55296 function getStyles(stylesObj, isHovered) {
       
 55297   if (!stylesObj) return null;
       
 55298 
       
 55299   var hover = stylesObj.hover;
       
 55300 
       
 55301   if (isHovered && hover) {
       
 55302     return hover;
       
 55303   }
       
 55304 
       
 55305   return stylesObj;
       
 55306 }
       
 55307 
       
 55308 var DayStyleShape = _propTypes2['default'].shape({
       
 55309   background: _propTypes2['default'].string,
       
 55310   border: (0, _airbnbPropTypes.or)([_propTypes2['default'].string, _propTypes2['default'].number]),
       
 55311   color: _propTypes2['default'].string,
       
 55312 
       
 55313   hover: _propTypes2['default'].shape({
       
 55314     background: _propTypes2['default'].string,
       
 55315     border: (0, _airbnbPropTypes.or)([_propTypes2['default'].string, _propTypes2['default'].number]),
       
 55316     color: _propTypes2['default'].string
       
 55317   })
       
 55318 });
       
 55319 
       
 55320 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 55321   day: _reactMomentProptypes2['default'].momentObj,
       
 55322   daySize: _airbnbPropTypes.nonNegativeInteger,
       
 55323   isOutsideDay: _propTypes2['default'].bool,
       
 55324   modifiers: _propTypes2['default'].instanceOf(Set),
       
 55325   isFocused: _propTypes2['default'].bool,
       
 55326   tabIndex: _propTypes2['default'].oneOf([0, -1]),
       
 55327   onDayClick: _propTypes2['default'].func,
       
 55328   onDayMouseEnter: _propTypes2['default'].func,
       
 55329   onDayMouseLeave: _propTypes2['default'].func,
       
 55330   renderDayContents: _propTypes2['default'].func,
       
 55331   ariaLabelFormat: _propTypes2['default'].string,
       
 55332 
       
 55333   // style overrides
       
 55334   defaultStyles: DayStyleShape,
       
 55335   outsideStyles: DayStyleShape,
       
 55336   todayStyles: DayStyleShape,
       
 55337   firstDayOfWeekStyles: DayStyleShape,
       
 55338   lastDayOfWeekStyles: DayStyleShape,
       
 55339   highlightedCalendarStyles: DayStyleShape,
       
 55340   blockedMinNightsStyles: DayStyleShape,
       
 55341   blockedCalendarStyles: DayStyleShape,
       
 55342   blockedOutOfRangeStyles: DayStyleShape,
       
 55343   hoveredSpanStyles: DayStyleShape,
       
 55344   selectedSpanStyles: DayStyleShape,
       
 55345   lastInRangeStyles: DayStyleShape,
       
 55346   selectedStyles: DayStyleShape,
       
 55347   selectedStartStyles: DayStyleShape,
       
 55348   selectedEndStyles: DayStyleShape,
       
 55349   afterHoveredStartStyles: DayStyleShape,
       
 55350 
       
 55351   // internationalization
       
 55352   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.CalendarDayPhrases))
 37371 }));
 55353 }));
 37372 
 55354 
 37373 // CONCATENATED MODULE: ./node_modules/@wordpress/components/build-module/index.js
 55355 var defaultStyles = exports.defaultStyles = {
 37374 /* concated harmony reexport Circle */__webpack_require__.d(__webpack_exports__, "Circle", function() { return svg_Circle; });
 55356   border: '1px solid ' + String(color.core.borderLight),
 37375 /* concated harmony reexport G */__webpack_require__.d(__webpack_exports__, "G", function() { return svg_G; });
 55357   color: color.text,
 37376 /* concated harmony reexport Path */__webpack_require__.d(__webpack_exports__, "Path", function() { return svg_Path; });
 55358   background: color.background,
 37377 /* concated harmony reexport Polygon */__webpack_require__.d(__webpack_exports__, "Polygon", function() { return svg_Polygon; });
 55359 
 37378 /* concated harmony reexport Rect */__webpack_require__.d(__webpack_exports__, "Rect", function() { return svg_Rect; });
 55360   hover: {
 37379 /* concated harmony reexport SVG */__webpack_require__.d(__webpack_exports__, "SVG", function() { return svg_SVG; });
 55361     background: color.core.borderLight,
 37380 /* concated harmony reexport Animate */__webpack_require__.d(__webpack_exports__, "Animate", function() { return build_module_animate; });
 55362     border: '1px double ' + String(color.core.borderLight),
 37381 /* concated harmony reexport Autocomplete */__webpack_require__.d(__webpack_exports__, "Autocomplete", function() { return autocomplete; });
 55363     color: 'inherit'
 37382 /* concated harmony reexport BaseControl */__webpack_require__.d(__webpack_exports__, "BaseControl", function() { return base_control; });
 55364   }
 37383 /* concated harmony reexport Button */__webpack_require__.d(__webpack_exports__, "Button", function() { return build_module_button; });
 55365 };
 37384 /* concated harmony reexport ButtonGroup */__webpack_require__.d(__webpack_exports__, "ButtonGroup", function() { return button_group; });
 55366 
 37385 /* concated harmony reexport CheckboxControl */__webpack_require__.d(__webpack_exports__, "CheckboxControl", function() { return checkbox_control; });
 55367 var outsideStyles = exports.outsideStyles = {
 37386 /* concated harmony reexport ClipboardButton */__webpack_require__.d(__webpack_exports__, "ClipboardButton", function() { return clipboard_button; });
 55368   background: color.outside.backgroundColor,
 37387 /* concated harmony reexport ColorIndicator */__webpack_require__.d(__webpack_exports__, "ColorIndicator", function() { return color_indicator; });
 55369   border: 0,
 37388 /* concated harmony reexport ColorPalette */__webpack_require__.d(__webpack_exports__, "ColorPalette", function() { return ColorPalette; });
 55370   color: color.outside.color
 37389 /* concated harmony reexport ColorPicker */__webpack_require__.d(__webpack_exports__, "ColorPicker", function() { return color_picker_ColorPicker; });
 55371 };
 37390 /* concated harmony reexport Dashicon */__webpack_require__.d(__webpack_exports__, "Dashicon", function() { return dashicon_Dashicon; });
 55372 
 37391 /* concated harmony reexport DateTimePicker */__webpack_require__.d(__webpack_exports__, "DateTimePicker", function() { return date_time_DateTimePicker; });
 55373 var highlightedCalendarStyles = exports.highlightedCalendarStyles = {
 37392 /* concated harmony reexport DatePicker */__webpack_require__.d(__webpack_exports__, "DatePicker", function() { return date_time_date; });
 55374   background: color.highlighted.backgroundColor,
 37393 /* concated harmony reexport TimePicker */__webpack_require__.d(__webpack_exports__, "TimePicker", function() { return time; });
 55375   color: color.highlighted.color,
 37394 /* concated harmony reexport Disabled */__webpack_require__.d(__webpack_exports__, "Disabled", function() { return build_module_disabled; });
 55376 
 37395 /* concated harmony reexport Draggable */__webpack_require__.d(__webpack_exports__, "Draggable", function() { return draggable; });
 55377   hover: {
 37396 /* concated harmony reexport DropZone */__webpack_require__.d(__webpack_exports__, "DropZone", function() { return drop_zone; });
 55378     background: color.highlighted.backgroundColor_hover,
 37397 /* concated harmony reexport DropZoneProvider */__webpack_require__.d(__webpack_exports__, "DropZoneProvider", function() { return provider; });
 55379     color: color.highlighted.color_active
 37398 /* concated harmony reexport Dropdown */__webpack_require__.d(__webpack_exports__, "Dropdown", function() { return dropdown; });
 55380   }
 37399 /* concated harmony reexport DropdownMenu */__webpack_require__.d(__webpack_exports__, "DropdownMenu", function() { return dropdown_menu; });
 55381 };
 37400 /* concated harmony reexport ExternalLink */__webpack_require__.d(__webpack_exports__, "ExternalLink", function() { return external_link; });
 55382 
 37401 /* concated harmony reexport FocalPointPicker */__webpack_require__.d(__webpack_exports__, "FocalPointPicker", function() { return focal_point_picker; });
 55383 var blockedMinNightsStyles = exports.blockedMinNightsStyles = {
 37402 /* concated harmony reexport FocusableIframe */__webpack_require__.d(__webpack_exports__, "FocusableIframe", function() { return focusable_iframe; });
 55384   background: color.minimumNights.backgroundColor,
 37403 /* concated harmony reexport FontSizePicker */__webpack_require__.d(__webpack_exports__, "FontSizePicker", function() { return font_size_picker; });
 55385   border: '1px solid ' + String(color.minimumNights.borderColor),
 37404 /* concated harmony reexport FormFileUpload */__webpack_require__.d(__webpack_exports__, "FormFileUpload", function() { return form_file_upload; });
 55386   color: color.minimumNights.color,
 37405 /* concated harmony reexport FormToggle */__webpack_require__.d(__webpack_exports__, "FormToggle", function() { return form_toggle; });
 55387 
 37406 /* concated harmony reexport FormTokenField */__webpack_require__.d(__webpack_exports__, "FormTokenField", function() { return form_token_field; });
 55388   hover: {
 37407 /* concated harmony reexport Icon */__webpack_require__.d(__webpack_exports__, "Icon", function() { return build_module_icon; });
 55389     background: color.minimumNights.backgroundColor_hover,
 37408 /* concated harmony reexport IconButton */__webpack_require__.d(__webpack_exports__, "IconButton", function() { return icon_button; });
 55390     color: color.minimumNights.color_active
 37409 /* concated harmony reexport KeyboardShortcuts */__webpack_require__.d(__webpack_exports__, "KeyboardShortcuts", function() { return keyboard_shortcuts; });
 55391   }
 37410 /* concated harmony reexport MenuGroup */__webpack_require__.d(__webpack_exports__, "MenuGroup", function() { return menu_group; });
 55392 };
 37411 /* concated harmony reexport MenuItem */__webpack_require__.d(__webpack_exports__, "MenuItem", function() { return menu_item; });
 55393 
 37412 /* concated harmony reexport MenuItemsChoice */__webpack_require__.d(__webpack_exports__, "MenuItemsChoice", function() { return MenuItemsChoice; });
 55394 var blockedCalendarStyles = exports.blockedCalendarStyles = {
 37413 /* concated harmony reexport Modal */__webpack_require__.d(__webpack_exports__, "Modal", function() { return modal; });
 55395   background: color.blocked_calendar.backgroundColor,
 37414 /* concated harmony reexport ScrollLock */__webpack_require__.d(__webpack_exports__, "ScrollLock", function() { return scroll_lock; });
 55396   border: '1px solid ' + String(color.blocked_calendar.borderColor),
 37415 /* concated harmony reexport NavigableMenu */__webpack_require__.d(__webpack_exports__, "NavigableMenu", function() { return menu; });
 55397   color: color.blocked_calendar.color,
 37416 /* concated harmony reexport TabbableContainer */__webpack_require__.d(__webpack_exports__, "TabbableContainer", function() { return tabbable; });
 55398 
 37417 /* concated harmony reexport Notice */__webpack_require__.d(__webpack_exports__, "Notice", function() { return build_module_notice; });
 55399   hover: {
 37418 /* concated harmony reexport NoticeList */__webpack_require__.d(__webpack_exports__, "NoticeList", function() { return list; });
 55400     background: color.blocked_calendar.backgroundColor_hover,
 37419 /* concated harmony reexport Panel */__webpack_require__.d(__webpack_exports__, "Panel", function() { return panel; });
 55401     border: '1px solid ' + String(color.blocked_calendar.borderColor),
 37420 /* concated harmony reexport PanelBody */__webpack_require__.d(__webpack_exports__, "PanelBody", function() { return panel_body; });
 55402     color: color.blocked_calendar.color_active
 37421 /* concated harmony reexport PanelHeader */__webpack_require__.d(__webpack_exports__, "PanelHeader", function() { return panel_header; });
 55403   }
 37422 /* concated harmony reexport PanelRow */__webpack_require__.d(__webpack_exports__, "PanelRow", function() { return row; });
 55404 };
 37423 /* concated harmony reexport Placeholder */__webpack_require__.d(__webpack_exports__, "Placeholder", function() { return placeholder; });
 55405 
 37424 /* concated harmony reexport Popover */__webpack_require__.d(__webpack_exports__, "Popover", function() { return popover; });
 55406 var blockedOutOfRangeStyles = exports.blockedOutOfRangeStyles = {
 37425 /* concated harmony reexport __unstablePositionedAtSelection */__webpack_require__.d(__webpack_exports__, "__unstablePositionedAtSelection", function() { return positioned_at_selection_PositionedAtSelection; });
 55407   background: color.blocked_out_of_range.backgroundColor,
 37426 /* concated harmony reexport QueryControls */__webpack_require__.d(__webpack_exports__, "QueryControls", function() { return QueryControls; });
 55408   border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
 37427 /* concated harmony reexport RadioControl */__webpack_require__.d(__webpack_exports__, "RadioControl", function() { return radio_control; });
 55409   color: color.blocked_out_of_range.color,
 37428 /* concated harmony reexport RangeControl */__webpack_require__.d(__webpack_exports__, "RangeControl", function() { return range_control; });
 55410 
 37429 /* concated harmony reexport ResizableBox */__webpack_require__.d(__webpack_exports__, "ResizableBox", function() { return resizable_box; });
 55411   hover: {
 37430 /* concated harmony reexport ResponsiveWrapper */__webpack_require__.d(__webpack_exports__, "ResponsiveWrapper", function() { return responsive_wrapper; });
 55412     background: color.blocked_out_of_range.backgroundColor_hover,
 37431 /* concated harmony reexport SandBox */__webpack_require__.d(__webpack_exports__, "SandBox", function() { return sandbox; });
 55413     border: '1px solid ' + String(color.blocked_out_of_range.borderColor),
 37432 /* concated harmony reexport SelectControl */__webpack_require__.d(__webpack_exports__, "SelectControl", function() { return select_control; });
 55414     color: color.blocked_out_of_range.color_active
 37433 /* concated harmony reexport Spinner */__webpack_require__.d(__webpack_exports__, "Spinner", function() { return Spinner; });
 55415   }
 37434 /* concated harmony reexport ServerSideRender */__webpack_require__.d(__webpack_exports__, "ServerSideRender", function() { return server_side_render; });
 55416 };
 37435 /* concated harmony reexport TabPanel */__webpack_require__.d(__webpack_exports__, "TabPanel", function() { return tab_panel; });
 55417 
 37436 /* concated harmony reexport TextControl */__webpack_require__.d(__webpack_exports__, "TextControl", function() { return text_control; });
 55418 var hoveredSpanStyles = exports.hoveredSpanStyles = {
 37437 /* concated harmony reexport TextareaControl */__webpack_require__.d(__webpack_exports__, "TextareaControl", function() { return textarea_control; });
 55419   background: color.hoveredSpan.backgroundColor,
 37438 /* concated harmony reexport ToggleControl */__webpack_require__.d(__webpack_exports__, "ToggleControl", function() { return toggle_control; });
 55420   border: '1px solid ' + String(color.hoveredSpan.borderColor),
 37439 /* concated harmony reexport Toolbar */__webpack_require__.d(__webpack_exports__, "Toolbar", function() { return toolbar; });
 55421   color: color.hoveredSpan.color,
 37440 /* concated harmony reexport ToolbarButton */__webpack_require__.d(__webpack_exports__, "ToolbarButton", function() { return toolbar_button; });
 55422 
 37441 /* concated harmony reexport Tooltip */__webpack_require__.d(__webpack_exports__, "Tooltip", function() { return build_module_tooltip; });
 55423   hover: {
 37442 /* concated harmony reexport TreeSelect */__webpack_require__.d(__webpack_exports__, "TreeSelect", function() { return TreeSelect; });
 55424     background: color.hoveredSpan.backgroundColor_hover,
 37443 /* concated harmony reexport IsolatedEventContainer */__webpack_require__.d(__webpack_exports__, "IsolatedEventContainer", function() { return isolated_event_container; });
 55425     border: '1px solid ' + String(color.hoveredSpan.borderColor),
 37444 /* concated harmony reexport createSlotFill */__webpack_require__.d(__webpack_exports__, "createSlotFill", function() { return createSlotFill; });
 55426     color: color.hoveredSpan.color_active
 37445 /* concated harmony reexport Slot */__webpack_require__.d(__webpack_exports__, "Slot", function() { return slot_fill_slot; });
 55427   }
 37446 /* concated harmony reexport Fill */__webpack_require__.d(__webpack_exports__, "Fill", function() { return slot_fill_fill; });
 55428 };
 37447 /* concated harmony reexport SlotFillProvider */__webpack_require__.d(__webpack_exports__, "SlotFillProvider", function() { return slot_fill_context; });
 55429 
 37448 /* concated harmony reexport navigateRegions */__webpack_require__.d(__webpack_exports__, "navigateRegions", function() { return navigate_regions; });
 55430 var selectedSpanStyles = exports.selectedSpanStyles = {
 37449 /* concated harmony reexport withConstrainedTabbing */__webpack_require__.d(__webpack_exports__, "withConstrainedTabbing", function() { return with_constrained_tabbing; });
 55431   background: color.selectedSpan.backgroundColor,
 37450 /* concated harmony reexport withFallbackStyles */__webpack_require__.d(__webpack_exports__, "withFallbackStyles", function() { return with_fallback_styles; });
 55432   border: '1px solid ' + String(color.selectedSpan.borderColor),
 37451 /* concated harmony reexport withFilters */__webpack_require__.d(__webpack_exports__, "withFilters", function() { return withFilters; });
 55433   color: color.selectedSpan.color,
 37452 /* concated harmony reexport withFocusOutside */__webpack_require__.d(__webpack_exports__, "withFocusOutside", function() { return with_focus_outside; });
 55434 
 37453 /* concated harmony reexport withFocusReturn */__webpack_require__.d(__webpack_exports__, "withFocusReturn", function() { return with_focus_return; });
 55435   hover: {
 37454 /* concated harmony reexport FocusReturnProvider */__webpack_require__.d(__webpack_exports__, "FocusReturnProvider", function() { return with_focus_return_context; });
 55436     background: color.selectedSpan.backgroundColor_hover,
 37455 /* concated harmony reexport withNotices */__webpack_require__.d(__webpack_exports__, "withNotices", function() { return with_notices; });
 55437     border: '1px solid ' + String(color.selectedSpan.borderColor),
 37456 /* concated harmony reexport withSpokenMessages */__webpack_require__.d(__webpack_exports__, "withSpokenMessages", function() { return with_spoken_messages; });
 55438     color: color.selectedSpan.color_active
 37457 // Components
 55439   }
 37458  // eslint-disable-next-line camelcase
 55440 };
 37459 
 55441 
 37460 
 55442 var lastInRangeStyles = exports.lastInRangeStyles = {
 37461 
 55443   borderRight: color.core.primary
 37462 
 55444 };
 37463 
 55445 
 37464 
 55446 var selectedStyles = exports.selectedStyles = {
 37465 
 55447   background: color.selected.backgroundColor,
 37466 
 55448   border: '1px solid ' + String(color.selected.borderColor),
 37467 
 55449   color: color.selected.color,
 37468 
 55450 
 37469 
 55451   hover: {
 37470 
 55452     background: color.selected.backgroundColor_hover,
 37471 
 55453     border: '1px solid ' + String(color.selected.borderColor),
 37472 
 55454     color: color.selected.color_active
 37473 
 55455   }
 37474 
 55456 };
 37475 
 55457 
 37476 
 55458 var defaultProps = {
 37477 
 55459   day: (0, _moment2['default'])(),
 37478 
 55460   daySize: _constants.DAY_SIZE,
 37479 
 55461   isOutsideDay: false,
 37480 
 55462   modifiers: new Set(),
 37481 
 55463   isFocused: false,
 37482 
 55464   tabIndex: -1,
 37483 
 55465   onDayClick: function () {
 37484 
 55466     function onDayClick() {}
 37485 
 55467 
 37486 
 55468     return onDayClick;
 37487 
 55469   }(),
 37488 
 55470   onDayMouseEnter: function () {
 37489 
 55471     function onDayMouseEnter() {}
 37490 
 55472 
 37491 
 55473     return onDayMouseEnter;
 37492 
 55474   }(),
 37493 
 55475   onDayMouseLeave: function () {
 37494 
 55476     function onDayMouseLeave() {}
 37495 
 55477 
 37496 
 55478     return onDayMouseLeave;
 37497 
 55479   }(),
 37498 
 55480 
 37499 
 55481   renderDayContents: null,
 37500 
 55482   ariaLabelFormat: 'dddd, LL',
 37501 
 55483 
 37502 
 55484   // style defaults
 37503 
 55485   defaultStyles: defaultStyles,
 37504 
 55486   outsideStyles: outsideStyles,
 37505 
 55487   todayStyles: {},
 37506 
 55488   highlightedCalendarStyles: highlightedCalendarStyles,
 37507 
 55489   blockedMinNightsStyles: blockedMinNightsStyles,
 37508 
 55490   blockedCalendarStyles: blockedCalendarStyles,
 37509 
 55491   blockedOutOfRangeStyles: blockedOutOfRangeStyles,
 37510 
 55492   hoveredSpanStyles: hoveredSpanStyles,
 37511 
 55493   selectedSpanStyles: selectedSpanStyles,
 37512 
 55494   lastInRangeStyles: lastInRangeStyles,
 37513 
 55495   selectedStyles: selectedStyles,
 37514 
 55496   selectedStartStyles: {},
 37515 
 55497   selectedEndStyles: {},
 37516 
 55498   afterHoveredStartStyles: {},
 37517 
 55499   firstDayOfWeekStyles: {},
 37518 
 55500   lastDayOfWeekStyles: {},
 37519 
 55501 
 37520 
 55502   // internationalization
 37521  // Higher-Order Components
 55503   phrases: _defaultPhrases.CalendarDayPhrases
 37522 
 55504 };
 37523 
 55505 
 37524 
 55506 var CustomizableCalendarDay = function (_React$Component) {
 37525 
 55507   _inherits(CustomizableCalendarDay, _React$Component);
 37526 
 55508 
 37527 
 55509   function CustomizableCalendarDay() {
 37528 
 55510     var _ref;
       
 55511 
       
 55512     _classCallCheck(this, CustomizableCalendarDay);
       
 55513 
       
 55514     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
       
 55515       args[_key] = arguments[_key];
       
 55516     }
       
 55517 
       
 55518     var _this = _possibleConstructorReturn(this, (_ref = CustomizableCalendarDay.__proto__ || Object.getPrototypeOf(CustomizableCalendarDay)).call.apply(_ref, [this].concat(args)));
       
 55519 
       
 55520     _this.state = {
       
 55521       isHovered: false
       
 55522     };
       
 55523 
       
 55524     _this.setButtonRef = _this.setButtonRef.bind(_this);
       
 55525     return _this;
       
 55526   }
       
 55527 
       
 55528   _createClass(CustomizableCalendarDay, [{
       
 55529     key: 'shouldComponentUpdate',
       
 55530     value: function () {
       
 55531       function shouldComponentUpdate(nextProps, nextState) {
       
 55532         return (0, _reactAddonsShallowCompare2['default'])(this, nextProps, nextState);
       
 55533       }
       
 55534 
       
 55535       return shouldComponentUpdate;
       
 55536     }()
       
 55537   }, {
       
 55538     key: 'componentDidUpdate',
       
 55539     value: function () {
       
 55540       function componentDidUpdate(prevProps) {
       
 55541         var _props = this.props,
       
 55542             isFocused = _props.isFocused,
       
 55543             tabIndex = _props.tabIndex;
       
 55544 
       
 55545         if (tabIndex === 0) {
       
 55546           if (isFocused || tabIndex !== prevProps.tabIndex) {
       
 55547             this.buttonRef.focus();
       
 55548           }
       
 55549         }
       
 55550       }
       
 55551 
       
 55552       return componentDidUpdate;
       
 55553     }()
       
 55554   }, {
       
 55555     key: 'onDayClick',
       
 55556     value: function () {
       
 55557       function onDayClick(day, e) {
       
 55558         var onDayClick = this.props.onDayClick;
       
 55559 
       
 55560         onDayClick(day, e);
       
 55561       }
       
 55562 
       
 55563       return onDayClick;
       
 55564     }()
       
 55565   }, {
       
 55566     key: 'onDayMouseEnter',
       
 55567     value: function () {
       
 55568       function onDayMouseEnter(day, e) {
       
 55569         var onDayMouseEnter = this.props.onDayMouseEnter;
       
 55570 
       
 55571         this.setState({ isHovered: true });
       
 55572         onDayMouseEnter(day, e);
       
 55573       }
       
 55574 
       
 55575       return onDayMouseEnter;
       
 55576     }()
       
 55577   }, {
       
 55578     key: 'onDayMouseLeave',
       
 55579     value: function () {
       
 55580       function onDayMouseLeave(day, e) {
       
 55581         var onDayMouseLeave = this.props.onDayMouseLeave;
       
 55582 
       
 55583         this.setState({ isHovered: false });
       
 55584         onDayMouseLeave(day, e);
       
 55585       }
       
 55586 
       
 55587       return onDayMouseLeave;
       
 55588     }()
       
 55589   }, {
       
 55590     key: 'onKeyDown',
       
 55591     value: function () {
       
 55592       function onKeyDown(day, e) {
       
 55593         var onDayClick = this.props.onDayClick;
       
 55594         var key = e.key;
       
 55595 
       
 55596         if (key === 'Enter' || key === ' ') {
       
 55597           onDayClick(day, e);
       
 55598         }
       
 55599       }
       
 55600 
       
 55601       return onKeyDown;
       
 55602     }()
       
 55603   }, {
       
 55604     key: 'setButtonRef',
       
 55605     value: function () {
       
 55606       function setButtonRef(ref) {
       
 55607         this.buttonRef = ref;
       
 55608       }
       
 55609 
       
 55610       return setButtonRef;
       
 55611     }()
       
 55612   }, {
       
 55613     key: 'render',
       
 55614     value: function () {
       
 55615       function render() {
       
 55616         var _this2 = this;
       
 55617 
       
 55618         var _props2 = this.props,
       
 55619             day = _props2.day,
       
 55620             ariaLabelFormat = _props2.ariaLabelFormat,
       
 55621             daySize = _props2.daySize,
       
 55622             isOutsideDay = _props2.isOutsideDay,
       
 55623             modifiers = _props2.modifiers,
       
 55624             tabIndex = _props2.tabIndex,
       
 55625             renderDayContents = _props2.renderDayContents,
       
 55626             styles = _props2.styles,
       
 55627             phrases = _props2.phrases,
       
 55628             defaultStylesWithHover = _props2.defaultStyles,
       
 55629             outsideStylesWithHover = _props2.outsideStyles,
       
 55630             todayStylesWithHover = _props2.todayStyles,
       
 55631             firstDayOfWeekStylesWithHover = _props2.firstDayOfWeekStyles,
       
 55632             lastDayOfWeekStylesWithHover = _props2.lastDayOfWeekStyles,
       
 55633             highlightedCalendarStylesWithHover = _props2.highlightedCalendarStyles,
       
 55634             blockedMinNightsStylesWithHover = _props2.blockedMinNightsStyles,
       
 55635             blockedCalendarStylesWithHover = _props2.blockedCalendarStyles,
       
 55636             blockedOutOfRangeStylesWithHover = _props2.blockedOutOfRangeStyles,
       
 55637             hoveredSpanStylesWithHover = _props2.hoveredSpanStyles,
       
 55638             selectedSpanStylesWithHover = _props2.selectedSpanStyles,
       
 55639             lastInRangeStylesWithHover = _props2.lastInRangeStyles,
       
 55640             selectedStylesWithHover = _props2.selectedStyles,
       
 55641             selectedStartStylesWithHover = _props2.selectedStartStyles,
       
 55642             selectedEndStylesWithHover = _props2.selectedEndStyles,
       
 55643             afterHoveredStartStylesWithHover = _props2.afterHoveredStartStyles;
       
 55644         var isHovered = this.state.isHovered;
       
 55645 
       
 55646 
       
 55647         if (!day) return _react2['default'].createElement('td', null);
       
 55648 
       
 55649         var _getCalendarDaySettin = (0, _getCalendarDaySettings2['default'])(day, ariaLabelFormat, daySize, modifiers, phrases),
       
 55650             daySizeStyles = _getCalendarDaySettin.daySizeStyles,
       
 55651             useDefaultCursor = _getCalendarDaySettin.useDefaultCursor,
       
 55652             selected = _getCalendarDaySettin.selected,
       
 55653             hoveredSpan = _getCalendarDaySettin.hoveredSpan,
       
 55654             isOutsideRange = _getCalendarDaySettin.isOutsideRange,
       
 55655             ariaLabel = _getCalendarDaySettin.ariaLabel;
       
 55656 
       
 55657         return _react2['default'].createElement(
       
 55658           'td',
       
 55659           _extends({}, (0, _reactWithStyles.css)(styles.CalendarDay, useDefaultCursor && styles.CalendarDay__defaultCursor, daySizeStyles, getStyles(defaultStylesWithHover, isHovered), isOutsideDay && getStyles(outsideStylesWithHover, isHovered), modifiers.has('today') && getStyles(todayStylesWithHover, isHovered), modifiers.has('first-day-of-week') && getStyles(firstDayOfWeekStylesWithHover, isHovered), modifiers.has('last-day-of-week') && getStyles(lastDayOfWeekStylesWithHover, isHovered), modifiers.has('highlighted-calendar') && getStyles(highlightedCalendarStylesWithHover, isHovered), modifiers.has('blocked-minimum-nights') && getStyles(blockedMinNightsStylesWithHover, isHovered), modifiers.has('blocked-calendar') && getStyles(blockedCalendarStylesWithHover, isHovered), hoveredSpan && getStyles(hoveredSpanStylesWithHover, isHovered), modifiers.has('after-hovered-start') && getStyles(afterHoveredStartStylesWithHover, isHovered), modifiers.has('selected-span') && getStyles(selectedSpanStylesWithHover, isHovered), modifiers.has('last-in-range') && getStyles(lastInRangeStylesWithHover, isHovered), selected && getStyles(selectedStylesWithHover, isHovered), modifiers.has('selected-start') && getStyles(selectedStartStylesWithHover, isHovered), modifiers.has('selected-end') && getStyles(selectedEndStylesWithHover, isHovered), isOutsideRange && getStyles(blockedOutOfRangeStylesWithHover, isHovered)), {
       
 55660             role: 'button' // eslint-disable-line jsx-a11y/no-noninteractive-element-to-interactive-role
       
 55661             , ref: this.setButtonRef,
       
 55662             'aria-label': ariaLabel,
       
 55663             onMouseEnter: function () {
       
 55664               function onMouseEnter(e) {
       
 55665                 _this2.onDayMouseEnter(day, e);
       
 55666               }
       
 55667 
       
 55668               return onMouseEnter;
       
 55669             }(),
       
 55670             onMouseLeave: function () {
       
 55671               function onMouseLeave(e) {
       
 55672                 _this2.onDayMouseLeave(day, e);
       
 55673               }
       
 55674 
       
 55675               return onMouseLeave;
       
 55676             }(),
       
 55677             onMouseUp: function () {
       
 55678               function onMouseUp(e) {
       
 55679                 e.currentTarget.blur();
       
 55680               }
       
 55681 
       
 55682               return onMouseUp;
       
 55683             }(),
       
 55684             onClick: function () {
       
 55685               function onClick(e) {
       
 55686                 _this2.onDayClick(day, e);
       
 55687               }
       
 55688 
       
 55689               return onClick;
       
 55690             }(),
       
 55691             onKeyDown: function () {
       
 55692               function onKeyDown(e) {
       
 55693                 _this2.onKeyDown(day, e);
       
 55694               }
       
 55695 
       
 55696               return onKeyDown;
       
 55697             }(),
       
 55698             tabIndex: tabIndex
       
 55699           }),
       
 55700           renderDayContents ? renderDayContents(day, modifiers) : day.format('D')
       
 55701         );
       
 55702       }
       
 55703 
       
 55704       return render;
       
 55705     }()
       
 55706   }]);
       
 55707 
       
 55708   return CustomizableCalendarDay;
       
 55709 }(_react2['default'].Component);
       
 55710 
       
 55711 CustomizableCalendarDay.propTypes = propTypes;
       
 55712 CustomizableCalendarDay.defaultProps = defaultProps;
       
 55713 
       
 55714 exports.PureCustomizableCalendarDay = CustomizableCalendarDay;
       
 55715 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 55716   var font = _ref2.reactDates.font;
       
 55717   return {
       
 55718     CalendarDay: {
       
 55719       boxSizing: 'border-box',
       
 55720       cursor: 'pointer',
       
 55721       fontSize: font.size,
       
 55722       textAlign: 'center',
       
 55723 
       
 55724       ':active': {
       
 55725         outline: 0
       
 55726       }
       
 55727     },
       
 55728 
       
 55729     CalendarDay__defaultCursor: {
       
 55730       cursor: 'default'
       
 55731     }
       
 55732   };
       
 55733 })(CustomizableCalendarDay);
       
 55734 
       
 55735 /***/ }),
       
 55736 /* 394 */
       
 55737 /***/ (function(module, exports, __webpack_require__) {
       
 55738 
       
 55739 "use strict";
       
 55740 
       
 55741 
       
 55742 Object.defineProperty(exports, "__esModule", {
       
 55743   value: true
       
 55744 });
       
 55745 exports['default'] = getCalendarMonthWeeks;
       
 55746 
       
 55747 var _moment = __webpack_require__(43);
       
 55748 
       
 55749 var _moment2 = _interopRequireDefault(_moment);
       
 55750 
       
 55751 var _constants = __webpack_require__(77);
       
 55752 
       
 55753 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 55754 
       
 55755 function getCalendarMonthWeeks(month, enableOutsideDays) {
       
 55756   var firstDayOfWeek = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : _moment2['default'].localeData().firstDayOfWeek();
       
 55757 
       
 55758   if (!_moment2['default'].isMoment(month) || !month.isValid()) {
       
 55759     throw new TypeError('`month` must be a valid moment object');
       
 55760   }
       
 55761   if (_constants.WEEKDAYS.indexOf(firstDayOfWeek) === -1) {
       
 55762     throw new TypeError('`firstDayOfWeek` must be an integer between 0 and 6');
       
 55763   }
       
 55764 
       
 55765   // set utc offset to get correct dates in future (when timezone changes)
       
 55766   var firstOfMonth = month.clone().startOf('month').hour(12);
       
 55767   var lastOfMonth = month.clone().endOf('month').hour(12);
       
 55768 
       
 55769   // calculate the exact first and last days to fill the entire matrix
       
 55770   // (considering days outside month)
       
 55771   var prevDays = (firstOfMonth.day() + 7 - firstDayOfWeek) % 7;
       
 55772   var nextDays = (firstDayOfWeek + 6 - lastOfMonth.day()) % 7;
       
 55773   var firstDay = firstOfMonth.clone().subtract(prevDays, 'day');
       
 55774   var lastDay = lastOfMonth.clone().add(nextDays, 'day');
       
 55775 
       
 55776   var totalDays = lastDay.diff(firstDay, 'days') + 1;
       
 55777 
       
 55778   var currentDay = firstDay.clone();
       
 55779   var weeksInMonth = [];
       
 55780 
       
 55781   for (var i = 0; i < totalDays; i += 1) {
       
 55782     if (i % 7 === 0) {
       
 55783       weeksInMonth.push([]);
       
 55784     }
       
 55785 
       
 55786     var day = null;
       
 55787     if (i >= prevDays && i < totalDays - nextDays || enableOutsideDays) {
       
 55788       day = currentDay.clone();
       
 55789     }
       
 55790 
       
 55791     weeksInMonth[weeksInMonth.length - 1].push(day);
       
 55792 
       
 55793     currentDay.add(1, 'day');
       
 55794   }
       
 55795 
       
 55796   return weeksInMonth;
       
 55797 }
       
 55798 
       
 55799 /***/ }),
       
 55800 /* 395 */
       
 55801 /***/ (function(module, exports, __webpack_require__) {
       
 55802 
       
 55803 "use strict";
       
 55804 
       
 55805 
       
 55806 Object.defineProperty(exports, "__esModule", {
       
 55807   value: true
       
 55808 });
       
 55809 exports['default'] = isTransitionEndSupported;
       
 55810 function isTransitionEndSupported() {
       
 55811   return !!(typeof window !== 'undefined' && 'TransitionEvent' in window);
       
 55812 }
       
 55813 
       
 55814 /***/ }),
       
 55815 /* 396 */
       
 55816 /***/ (function(module, exports, __webpack_require__) {
       
 55817 
       
 55818 "use strict";
       
 55819 
       
 55820 
       
 55821 Object.defineProperty(exports, "__esModule", {
       
 55822   value: true
       
 55823 });
       
 55824 exports["default"] = getTransformStyles;
       
 55825 function getTransformStyles(transformValue) {
       
 55826   return {
       
 55827     transform: transformValue,
       
 55828     msTransform: transformValue,
       
 55829     MozTransform: transformValue,
       
 55830     WebkitTransform: transformValue
       
 55831   };
       
 55832 }
       
 55833 
       
 55834 /***/ }),
       
 55835 /* 397 */
       
 55836 /***/ (function(module, exports, __webpack_require__) {
       
 55837 
       
 55838 "use strict";
       
 55839 
       
 55840 
       
 55841 Object.defineProperty(exports, "__esModule", {
       
 55842   value: true
       
 55843 });
       
 55844 exports['default'] = isPrevMonth;
       
 55845 
       
 55846 var _moment = __webpack_require__(43);
       
 55847 
       
 55848 var _moment2 = _interopRequireDefault(_moment);
       
 55849 
       
 55850 var _isSameMonth = __webpack_require__(254);
       
 55851 
       
 55852 var _isSameMonth2 = _interopRequireDefault(_isSameMonth);
       
 55853 
       
 55854 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 55855 
       
 55856 function isPrevMonth(a, b) {
       
 55857   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
 55858   return (0, _isSameMonth2['default'])(a.clone().subtract(1, 'month'), b);
       
 55859 }
       
 55860 
       
 55861 /***/ }),
       
 55862 /* 398 */
       
 55863 /***/ (function(module, exports, __webpack_require__) {
       
 55864 
       
 55865 "use strict";
       
 55866 
       
 55867 
       
 55868 Object.defineProperty(exports, "__esModule", {
       
 55869   value: true
       
 55870 });
       
 55871 exports['default'] = isNextMonth;
       
 55872 
       
 55873 var _moment = __webpack_require__(43);
       
 55874 
       
 55875 var _moment2 = _interopRequireDefault(_moment);
       
 55876 
       
 55877 var _isSameMonth = __webpack_require__(254);
       
 55878 
       
 55879 var _isSameMonth2 = _interopRequireDefault(_isSameMonth);
       
 55880 
       
 55881 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 55882 
       
 55883 function isNextMonth(a, b) {
       
 55884   if (!_moment2['default'].isMoment(a) || !_moment2['default'].isMoment(b)) return false;
       
 55885   return (0, _isSameMonth2['default'])(a.clone().add(1, 'month'), b);
       
 55886 }
       
 55887 
       
 55888 /***/ }),
       
 55889 /* 399 */
       
 55890 /***/ (function(module, exports, __webpack_require__) {
       
 55891 
       
 55892 "use strict";
       
 55893 
       
 55894 
       
 55895 Object.defineProperty(exports, "__esModule", {
       
 55896   value: true
       
 55897 });
       
 55898 
       
 55899 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 55900 
       
 55901 var _object = __webpack_require__(92);
       
 55902 
       
 55903 var _object2 = _interopRequireDefault(_object);
       
 55904 
       
 55905 var _react = __webpack_require__(13);
       
 55906 
       
 55907 var _react2 = _interopRequireDefault(_react);
       
 55908 
       
 55909 var _propTypes = __webpack_require__(28);
       
 55910 
       
 55911 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 55912 
       
 55913 var _airbnbPropTypes = __webpack_require__(85);
       
 55914 
       
 55915 var _reactWithStyles = __webpack_require__(109);
       
 55916 
       
 55917 var _defaultPhrases = __webpack_require__(107);
       
 55918 
       
 55919 var _getPhrasePropTypes = __webpack_require__(108);
       
 55920 
       
 55921 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 55922 
       
 55923 var _LeftArrow = __webpack_require__(400);
       
 55924 
       
 55925 var _LeftArrow2 = _interopRequireDefault(_LeftArrow);
       
 55926 
       
 55927 var _RightArrow = __webpack_require__(401);
       
 55928 
       
 55929 var _RightArrow2 = _interopRequireDefault(_RightArrow);
       
 55930 
       
 55931 var _ChevronUp = __webpack_require__(402);
       
 55932 
       
 55933 var _ChevronUp2 = _interopRequireDefault(_ChevronUp);
       
 55934 
       
 55935 var _ChevronDown = __webpack_require__(403);
       
 55936 
       
 55937 var _ChevronDown2 = _interopRequireDefault(_ChevronDown);
       
 55938 
       
 55939 var _ScrollableOrientationShape = __webpack_require__(142);
       
 55940 
       
 55941 var _ScrollableOrientationShape2 = _interopRequireDefault(_ScrollableOrientationShape);
       
 55942 
       
 55943 var _constants = __webpack_require__(77);
       
 55944 
       
 55945 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 55946 
       
 55947 function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }
       
 55948 
       
 55949 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 55950   navPrev: _propTypes2['default'].node,
       
 55951   navNext: _propTypes2['default'].node,
       
 55952   orientation: _ScrollableOrientationShape2['default'],
       
 55953 
       
 55954   onPrevMonthClick: _propTypes2['default'].func,
       
 55955   onNextMonthClick: _propTypes2['default'].func,
       
 55956 
       
 55957   // internationalization
       
 55958   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerNavigationPhrases)),
       
 55959 
       
 55960   isRTL: _propTypes2['default'].bool
       
 55961 }));
       
 55962 
       
 55963 var defaultProps = {
       
 55964   navPrev: null,
       
 55965   navNext: null,
       
 55966   orientation: _constants.HORIZONTAL_ORIENTATION,
       
 55967 
       
 55968   onPrevMonthClick: function () {
       
 55969     function onPrevMonthClick() {}
       
 55970 
       
 55971     return onPrevMonthClick;
       
 55972   }(),
       
 55973   onNextMonthClick: function () {
       
 55974     function onNextMonthClick() {}
       
 55975 
       
 55976     return onNextMonthClick;
       
 55977   }(),
       
 55978 
       
 55979 
       
 55980   // internationalization
       
 55981   phrases: _defaultPhrases.DayPickerNavigationPhrases,
       
 55982   isRTL: false
       
 55983 };
       
 55984 
       
 55985 function DayPickerNavigation(_ref) {
       
 55986   var navPrev = _ref.navPrev,
       
 55987       navNext = _ref.navNext,
       
 55988       onPrevMonthClick = _ref.onPrevMonthClick,
       
 55989       onNextMonthClick = _ref.onNextMonthClick,
       
 55990       orientation = _ref.orientation,
       
 55991       phrases = _ref.phrases,
       
 55992       isRTL = _ref.isRTL,
       
 55993       styles = _ref.styles;
       
 55994 
       
 55995   var isHorizontal = orientation === _constants.HORIZONTAL_ORIENTATION;
       
 55996   var isVertical = orientation !== _constants.HORIZONTAL_ORIENTATION;
       
 55997   var isVerticalScrollable = orientation === _constants.VERTICAL_SCROLLABLE;
       
 55998 
       
 55999   var navPrevIcon = navPrev;
       
 56000   var navNextIcon = navNext;
       
 56001   var isDefaultNavPrev = false;
       
 56002   var isDefaultNavNext = false;
       
 56003   if (!navPrevIcon) {
       
 56004     isDefaultNavPrev = true;
       
 56005     var Icon = isVertical ? _ChevronUp2['default'] : _LeftArrow2['default'];
       
 56006     if (isRTL && !isVertical) {
       
 56007       Icon = _RightArrow2['default'];
       
 56008     }
       
 56009     navPrevIcon = _react2['default'].createElement(Icon, (0, _reactWithStyles.css)(isHorizontal && styles.DayPickerNavigation_svg__horizontal, isVertical && styles.DayPickerNavigation_svg__vertical));
       
 56010   }
       
 56011 
       
 56012   if (!navNextIcon) {
       
 56013     isDefaultNavNext = true;
       
 56014     var _Icon = isVertical ? _ChevronDown2['default'] : _RightArrow2['default'];
       
 56015     if (isRTL && !isVertical) {
       
 56016       _Icon = _LeftArrow2['default'];
       
 56017     }
       
 56018     navNextIcon = _react2['default'].createElement(_Icon, (0, _reactWithStyles.css)(isHorizontal && styles.DayPickerNavigation_svg__horizontal, isVertical && styles.DayPickerNavigation_svg__vertical));
       
 56019   }
       
 56020 
       
 56021   var isDefaultNav = isVerticalScrollable ? isDefaultNavNext : isDefaultNavNext || isDefaultNavPrev;
       
 56022 
       
 56023   return _react2['default'].createElement(
       
 56024     'div',
       
 56025     _reactWithStyles.css.apply(undefined, [styles.DayPickerNavigation, isHorizontal && styles.DayPickerNavigation__horizontal].concat(_toConsumableArray(isVertical && [styles.DayPickerNavigation__vertical, isDefaultNav && styles.DayPickerNavigation__verticalDefault]), _toConsumableArray(isVerticalScrollable && [styles.DayPickerNavigation__verticalScrollable, isDefaultNav && styles.DayPickerNavigation__verticalScrollableDefault]))),
       
 56026     !isVerticalScrollable && _react2['default'].createElement(
       
 56027       'div',
       
 56028       _extends({
       
 56029         role: 'button',
       
 56030         tabIndex: '0'
       
 56031       }, _reactWithStyles.css.apply(undefined, [styles.DayPickerNavigation_button, isDefaultNavPrev && styles.DayPickerNavigation_button__default].concat(_toConsumableArray(isHorizontal && [styles.DayPickerNavigation_button__horizontal].concat(_toConsumableArray(isDefaultNavPrev && [styles.DayPickerNavigation_button__horizontalDefault, !isRTL && styles.DayPickerNavigation_leftButton__horizontalDefault, isRTL && styles.DayPickerNavigation_rightButton__horizontalDefault]))), _toConsumableArray(isVertical && [styles.DayPickerNavigation_button__vertical].concat(_toConsumableArray(isDefaultNavPrev && [styles.DayPickerNavigation_button__verticalDefault, styles.DayPickerNavigation_prevButton__verticalDefault]))))), {
       
 56032         'aria-label': phrases.jumpToPrevMonth,
       
 56033         onClick: onPrevMonthClick,
       
 56034         onKeyUp: function () {
       
 56035           function onKeyUp(e) {
       
 56036             var key = e.key;
       
 56037 
       
 56038             if (key === 'Enter' || key === ' ') onPrevMonthClick(e);
       
 56039           }
       
 56040 
       
 56041           return onKeyUp;
       
 56042         }(),
       
 56043         onMouseUp: function () {
       
 56044           function onMouseUp(e) {
       
 56045             e.currentTarget.blur();
       
 56046           }
       
 56047 
       
 56048           return onMouseUp;
       
 56049         }()
       
 56050       }),
       
 56051       navPrevIcon
       
 56052     ),
       
 56053     _react2['default'].createElement(
       
 56054       'div',
       
 56055       _extends({
       
 56056         role: 'button',
       
 56057         tabIndex: '0'
       
 56058       }, _reactWithStyles.css.apply(undefined, [styles.DayPickerNavigation_button, isDefaultNavNext && styles.DayPickerNavigation_button__default].concat(_toConsumableArray(isHorizontal && [styles.DayPickerNavigation_button__horizontal].concat(_toConsumableArray(isDefaultNavNext && [styles.DayPickerNavigation_button__horizontalDefault, isRTL && styles.DayPickerNavigation_leftButton__horizontalDefault, !isRTL && styles.DayPickerNavigation_rightButton__horizontalDefault]))), _toConsumableArray(isVertical && [styles.DayPickerNavigation_button__vertical, styles.DayPickerNavigation_nextButton__vertical].concat(_toConsumableArray(isDefaultNavNext && [styles.DayPickerNavigation_button__verticalDefault, styles.DayPickerNavigation_nextButton__verticalDefault, isVerticalScrollable && styles.DayPickerNavigation_nextButton__verticalScrollableDefault]))))), {
       
 56059         'aria-label': phrases.jumpToNextMonth,
       
 56060         onClick: onNextMonthClick,
       
 56061         onKeyUp: function () {
       
 56062           function onKeyUp(e) {
       
 56063             var key = e.key;
       
 56064 
       
 56065             if (key === 'Enter' || key === ' ') onNextMonthClick(e);
       
 56066           }
       
 56067 
       
 56068           return onKeyUp;
       
 56069         }(),
       
 56070         onMouseUp: function () {
       
 56071           function onMouseUp(e) {
       
 56072             e.currentTarget.blur();
       
 56073           }
       
 56074 
       
 56075           return onMouseUp;
       
 56076         }()
       
 56077       }),
       
 56078       navNextIcon
       
 56079     )
       
 56080   );
       
 56081 }
       
 56082 
       
 56083 DayPickerNavigation.propTypes = propTypes;
       
 56084 DayPickerNavigation.defaultProps = defaultProps;
       
 56085 
       
 56086 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 56087   var _ref2$reactDates = _ref2.reactDates,
       
 56088       color = _ref2$reactDates.color,
       
 56089       zIndex = _ref2$reactDates.zIndex;
       
 56090   return {
       
 56091     DayPickerNavigation: {
       
 56092       position: 'relative',
       
 56093       zIndex: zIndex + 2
       
 56094     },
       
 56095 
       
 56096     DayPickerNavigation__horizontal: {
       
 56097       height: 0
       
 56098     },
       
 56099 
       
 56100     DayPickerNavigation__vertical: {},
       
 56101     DayPickerNavigation__verticalScrollable: {},
       
 56102 
       
 56103     DayPickerNavigation__verticalDefault: {
       
 56104       position: 'absolute',
       
 56105       width: '100%',
       
 56106       height: 52,
       
 56107       bottom: 0,
       
 56108       left: 0
       
 56109     },
       
 56110 
       
 56111     DayPickerNavigation__verticalScrollableDefault: {
       
 56112       position: 'relative'
       
 56113     },
       
 56114 
       
 56115     DayPickerNavigation_button: {
       
 56116       cursor: 'pointer',
       
 56117       userSelect: 'none',
       
 56118       border: 0,
       
 56119       padding: 0,
       
 56120       margin: 0
       
 56121     },
       
 56122 
       
 56123     DayPickerNavigation_button__default: {
       
 56124       border: '1px solid ' + String(color.core.borderLight),
       
 56125       backgroundColor: color.background,
       
 56126       color: color.placeholderText,
       
 56127 
       
 56128       ':focus': {
       
 56129         border: '1px solid ' + String(color.core.borderMedium)
       
 56130       },
       
 56131 
       
 56132       ':hover': {
       
 56133         border: '1px solid ' + String(color.core.borderMedium)
       
 56134       },
       
 56135 
       
 56136       ':active': {
       
 56137         background: color.backgroundDark
       
 56138       }
       
 56139     },
       
 56140 
       
 56141     DayPickerNavigation_button__horizontal: {},
       
 56142 
       
 56143     DayPickerNavigation_button__horizontalDefault: {
       
 56144       position: 'absolute',
       
 56145       top: 18,
       
 56146       lineHeight: 0.78,
       
 56147       borderRadius: 3,
       
 56148       padding: '6px 9px'
       
 56149     },
       
 56150 
       
 56151     DayPickerNavigation_leftButton__horizontalDefault: {
       
 56152       left: 22
       
 56153     },
       
 56154 
       
 56155     DayPickerNavigation_rightButton__horizontalDefault: {
       
 56156       right: 22
       
 56157     },
       
 56158 
       
 56159     DayPickerNavigation_button__vertical: {},
       
 56160 
       
 56161     DayPickerNavigation_button__verticalDefault: {
       
 56162       padding: 5,
       
 56163       background: color.background,
       
 56164       boxShadow: '0 0 5px 2px rgba(0, 0, 0, 0.1)',
       
 56165       position: 'relative',
       
 56166       display: 'inline-block',
       
 56167       height: '100%',
       
 56168       width: '50%'
       
 56169     },
       
 56170 
       
 56171     DayPickerNavigation_prevButton__verticalDefault: {},
       
 56172 
       
 56173     DayPickerNavigation_nextButton__verticalDefault: {
       
 56174       borderLeft: 0
       
 56175     },
       
 56176 
       
 56177     DayPickerNavigation_nextButton__verticalScrollableDefault: {
       
 56178       width: '100%'
       
 56179     },
       
 56180 
       
 56181     DayPickerNavigation_svg__horizontal: {
       
 56182       height: 19,
       
 56183       width: 19,
       
 56184       fill: color.core.grayLight,
       
 56185       display: 'block'
       
 56186     },
       
 56187 
       
 56188     DayPickerNavigation_svg__vertical: {
       
 56189       height: 42,
       
 56190       width: 42,
       
 56191       fill: color.text,
       
 56192       display: 'block'
       
 56193     }
       
 56194   };
       
 56195 })(DayPickerNavigation);
       
 56196 
       
 56197 /***/ }),
       
 56198 /* 400 */
       
 56199 /***/ (function(module, exports, __webpack_require__) {
       
 56200 
       
 56201 "use strict";
       
 56202 
       
 56203 
       
 56204 Object.defineProperty(exports, "__esModule", {
       
 56205   value: true
       
 56206 });
       
 56207 
       
 56208 var _react = __webpack_require__(13);
       
 56209 
       
 56210 var _react2 = _interopRequireDefault(_react);
       
 56211 
       
 56212 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56213 
       
 56214 var LeftArrow = function () {
       
 56215   function LeftArrow(props) {
       
 56216     return _react2['default'].createElement(
       
 56217       'svg',
       
 56218       props,
       
 56219       _react2['default'].createElement('path', {
       
 56220         d: 'M336.2 274.5l-210.1 210h805.4c13 0 23 10 23 23s-10 23-23 23H126.1l210.1 210.1c11 11 11 21 0 32-5 5-10 7-16 7s-11-2-16-7l-249.1-249c-11-11-11-21 0-32l249.1-249.1c21-21.1 53 10.9 32 32z'
       
 56221       })
       
 56222     );
       
 56223   }
       
 56224 
       
 56225   return LeftArrow;
       
 56226 }();
       
 56227 
       
 56228 LeftArrow.defaultProps = {
       
 56229   viewBox: '0 0 1000 1000'
       
 56230 };
       
 56231 exports['default'] = LeftArrow;
       
 56232 
       
 56233 /***/ }),
       
 56234 /* 401 */
       
 56235 /***/ (function(module, exports, __webpack_require__) {
       
 56236 
       
 56237 "use strict";
       
 56238 
       
 56239 
       
 56240 Object.defineProperty(exports, "__esModule", {
       
 56241   value: true
       
 56242 });
       
 56243 
       
 56244 var _react = __webpack_require__(13);
       
 56245 
       
 56246 var _react2 = _interopRequireDefault(_react);
       
 56247 
       
 56248 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56249 
       
 56250 var RightArrow = function () {
       
 56251   function RightArrow(props) {
       
 56252     return _react2['default'].createElement(
       
 56253       'svg',
       
 56254       props,
       
 56255       _react2['default'].createElement('path', {
       
 56256         d: 'M694.4 242.4l249.1 249.1c11 11 11 21 0 32L694.4 772.7c-5 5-10 7-16 7s-11-2-16-7c-11-11-11-21 0-32l210.1-210.1H67.1c-13 0-23-10-23-23s10-23 23-23h805.4L662.4 274.5c-21-21.1 11-53.1 32-32.1z'
       
 56257       })
       
 56258     );
       
 56259   }
       
 56260 
       
 56261   return RightArrow;
       
 56262 }();
       
 56263 
       
 56264 RightArrow.defaultProps = {
       
 56265   viewBox: '0 0 1000 1000'
       
 56266 };
       
 56267 exports['default'] = RightArrow;
       
 56268 
       
 56269 /***/ }),
       
 56270 /* 402 */
       
 56271 /***/ (function(module, exports, __webpack_require__) {
       
 56272 
       
 56273 "use strict";
       
 56274 
       
 56275 
       
 56276 Object.defineProperty(exports, "__esModule", {
       
 56277   value: true
       
 56278 });
       
 56279 
       
 56280 var _react = __webpack_require__(13);
       
 56281 
       
 56282 var _react2 = _interopRequireDefault(_react);
       
 56283 
       
 56284 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56285 
       
 56286 var ChevronUp = function () {
       
 56287   function ChevronUp(props) {
       
 56288     return _react2['default'].createElement(
       
 56289       'svg',
       
 56290       props,
       
 56291       _react2['default'].createElement('path', {
       
 56292         d: 'M32.1 712.6l453.2-452.2c11-11 21-11 32 0l453.2 452.2c4 5 6 10 6 16 0 13-10 23-22 23-7 0-12-2-16-7L501.3 308.5 64.1 744.7c-4 5-9 7-15 7-7 0-12-2-17-7-9-11-9-21 0-32.1z'
       
 56293       })
       
 56294     );
       
 56295   }
       
 56296 
       
 56297   return ChevronUp;
       
 56298 }();
       
 56299 
       
 56300 ChevronUp.defaultProps = {
       
 56301   viewBox: '0 0 1000 1000'
       
 56302 };
       
 56303 exports['default'] = ChevronUp;
       
 56304 
       
 56305 /***/ }),
       
 56306 /* 403 */
       
 56307 /***/ (function(module, exports, __webpack_require__) {
       
 56308 
       
 56309 "use strict";
       
 56310 
       
 56311 
       
 56312 Object.defineProperty(exports, "__esModule", {
       
 56313   value: true
       
 56314 });
       
 56315 
       
 56316 var _react = __webpack_require__(13);
       
 56317 
       
 56318 var _react2 = _interopRequireDefault(_react);
       
 56319 
       
 56320 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56321 
       
 56322 var ChevronDown = function () {
       
 56323   function ChevronDown(props) {
       
 56324     return _react2['default'].createElement(
       
 56325       'svg',
       
 56326       props,
       
 56327       _react2['default'].createElement('path', {
       
 56328         d: 'M967.5 288.5L514.3 740.7c-11 11-21 11-32 0L29.1 288.5c-4-5-6-11-6-16 0-13 10-23 23-23 6 0 11 2 15 7l437.2 436.2 437.2-436.2c4-5 9-7 16-7 6 0 11 2 16 7 9 10.9 9 21 0 32z'
       
 56329       })
       
 56330     );
       
 56331   }
       
 56332 
       
 56333   return ChevronDown;
       
 56334 }();
       
 56335 
       
 56336 ChevronDown.defaultProps = {
       
 56337   viewBox: '0 0 1000 1000'
       
 56338 };
       
 56339 exports['default'] = ChevronDown;
       
 56340 
       
 56341 /***/ }),
       
 56342 /* 404 */
       
 56343 /***/ (function(module, exports, __webpack_require__) {
       
 56344 
       
 56345 "use strict";
       
 56346 
       
 56347 
       
 56348 Object.defineProperty(exports, "__esModule", {
       
 56349   value: true
       
 56350 });
       
 56351 exports.BOTTOM_RIGHT = exports.TOP_RIGHT = exports.TOP_LEFT = undefined;
       
 56352 
       
 56353 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 56354 
       
 56355 var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
       
 56356 
       
 56357 var _object = __webpack_require__(92);
       
 56358 
       
 56359 var _object2 = _interopRequireDefault(_object);
       
 56360 
       
 56361 var _react = __webpack_require__(13);
       
 56362 
       
 56363 var _react2 = _interopRequireDefault(_react);
       
 56364 
       
 56365 var _propTypes = __webpack_require__(28);
       
 56366 
       
 56367 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 56368 
       
 56369 var _airbnbPropTypes = __webpack_require__(85);
       
 56370 
       
 56371 var _reactWithStyles = __webpack_require__(109);
       
 56372 
       
 56373 var _defaultPhrases = __webpack_require__(107);
       
 56374 
       
 56375 var _getPhrasePropTypes = __webpack_require__(108);
       
 56376 
       
 56377 var _getPhrasePropTypes2 = _interopRequireDefault(_getPhrasePropTypes);
       
 56378 
       
 56379 var _KeyboardShortcutRow = __webpack_require__(405);
       
 56380 
       
 56381 var _KeyboardShortcutRow2 = _interopRequireDefault(_KeyboardShortcutRow);
       
 56382 
       
 56383 var _CloseButton = __webpack_require__(406);
       
 56384 
       
 56385 var _CloseButton2 = _interopRequireDefault(_CloseButton);
       
 56386 
       
 56387 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56388 
       
 56389 function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
       
 56390 
       
 56391 function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
       
 56392 
       
 56393 function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
       
 56394 
       
 56395 var TOP_LEFT = exports.TOP_LEFT = 'top-left';
       
 56396 var TOP_RIGHT = exports.TOP_RIGHT = 'top-right';
       
 56397 var BOTTOM_RIGHT = exports.BOTTOM_RIGHT = 'bottom-right';
       
 56398 
       
 56399 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 56400   block: _propTypes2['default'].bool,
       
 56401   buttonLocation: _propTypes2['default'].oneOf([TOP_LEFT, TOP_RIGHT, BOTTOM_RIGHT]),
       
 56402   showKeyboardShortcutsPanel: _propTypes2['default'].bool,
       
 56403   openKeyboardShortcutsPanel: _propTypes2['default'].func,
       
 56404   closeKeyboardShortcutsPanel: _propTypes2['default'].func,
       
 56405   phrases: _propTypes2['default'].shape((0, _getPhrasePropTypes2['default'])(_defaultPhrases.DayPickerKeyboardShortcutsPhrases))
       
 56406 }));
       
 56407 
       
 56408 var defaultProps = {
       
 56409   block: false,
       
 56410   buttonLocation: BOTTOM_RIGHT,
       
 56411   showKeyboardShortcutsPanel: false,
       
 56412   openKeyboardShortcutsPanel: function () {
       
 56413     function openKeyboardShortcutsPanel() {}
       
 56414 
       
 56415     return openKeyboardShortcutsPanel;
       
 56416   }(),
       
 56417   closeKeyboardShortcutsPanel: function () {
       
 56418     function closeKeyboardShortcutsPanel() {}
       
 56419 
       
 56420     return closeKeyboardShortcutsPanel;
       
 56421   }(),
       
 56422 
       
 56423   phrases: _defaultPhrases.DayPickerKeyboardShortcutsPhrases
       
 56424 };
       
 56425 
       
 56426 function getKeyboardShortcuts(phrases) {
       
 56427   return [{
       
 56428     unicode: '↵',
       
 56429     label: phrases.enterKey,
       
 56430     action: phrases.selectFocusedDate
       
 56431   }, {
       
 56432     unicode: '←/→',
       
 56433     label: phrases.leftArrowRightArrow,
       
 56434     action: phrases.moveFocusByOneDay
       
 56435   }, {
       
 56436     unicode: '↑/↓',
       
 56437     label: phrases.upArrowDownArrow,
       
 56438     action: phrases.moveFocusByOneWeek
       
 56439   }, {
       
 56440     unicode: 'PgUp/PgDn',
       
 56441     label: phrases.pageUpPageDown,
       
 56442     action: phrases.moveFocusByOneMonth
       
 56443   }, {
       
 56444     unicode: 'Home/End',
       
 56445     label: phrases.homeEnd,
       
 56446     action: phrases.moveFocustoStartAndEndOfWeek
       
 56447   }, {
       
 56448     unicode: 'Esc',
       
 56449     label: phrases.escape,
       
 56450     action: phrases.returnFocusToInput
       
 56451   }, {
       
 56452     unicode: '?',
       
 56453     label: phrases.questionMark,
       
 56454     action: phrases.openThisPanel
       
 56455   }];
       
 56456 }
       
 56457 
       
 56458 var DayPickerKeyboardShortcuts = function (_React$Component) {
       
 56459   _inherits(DayPickerKeyboardShortcuts, _React$Component);
       
 56460 
       
 56461   function DayPickerKeyboardShortcuts() {
       
 56462     var _ref;
       
 56463 
       
 56464     _classCallCheck(this, DayPickerKeyboardShortcuts);
       
 56465 
       
 56466     for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
       
 56467       args[_key] = arguments[_key];
       
 56468     }
       
 56469 
       
 56470     var _this = _possibleConstructorReturn(this, (_ref = DayPickerKeyboardShortcuts.__proto__ || Object.getPrototypeOf(DayPickerKeyboardShortcuts)).call.apply(_ref, [this].concat(args)));
       
 56471 
       
 56472     var phrases = _this.props.phrases;
       
 56473 
       
 56474     _this.keyboardShortcuts = getKeyboardShortcuts(phrases);
       
 56475 
       
 56476     _this.onShowKeyboardShortcutsButtonClick = _this.onShowKeyboardShortcutsButtonClick.bind(_this);
       
 56477     _this.setShowKeyboardShortcutsButtonRef = _this.setShowKeyboardShortcutsButtonRef.bind(_this);
       
 56478     _this.setHideKeyboardShortcutsButtonRef = _this.setHideKeyboardShortcutsButtonRef.bind(_this);
       
 56479     _this.handleFocus = _this.handleFocus.bind(_this);
       
 56480     _this.onKeyDown = _this.onKeyDown.bind(_this);
       
 56481     return _this;
       
 56482   }
       
 56483 
       
 56484   _createClass(DayPickerKeyboardShortcuts, [{
       
 56485     key: 'componentWillReceiveProps',
       
 56486     value: function () {
       
 56487       function componentWillReceiveProps(nextProps) {
       
 56488         var phrases = this.props.phrases;
       
 56489 
       
 56490         if (nextProps.phrases !== phrases) {
       
 56491           this.keyboardShortcuts = getKeyboardShortcuts(nextProps.phrases);
       
 56492         }
       
 56493       }
       
 56494 
       
 56495       return componentWillReceiveProps;
       
 56496     }()
       
 56497   }, {
       
 56498     key: 'componentDidUpdate',
       
 56499     value: function () {
       
 56500       function componentDidUpdate() {
       
 56501         this.handleFocus();
       
 56502       }
       
 56503 
       
 56504       return componentDidUpdate;
       
 56505     }()
       
 56506   }, {
       
 56507     key: 'onKeyDown',
       
 56508     value: function () {
       
 56509       function onKeyDown(e) {
       
 56510         e.stopPropagation();
       
 56511 
       
 56512         var closeKeyboardShortcutsPanel = this.props.closeKeyboardShortcutsPanel;
       
 56513         // Because the close button is the only focusable element inside of the panel, this
       
 56514         // amounts to a very basic focus trap. The user can exit the panel by "pressing" the
       
 56515         // close button or hitting escape
       
 56516 
       
 56517         switch (e.key) {
       
 56518           case 'Enter':
       
 56519           case ' ':
       
 56520           case 'Spacebar': // for older browsers
       
 56521           case 'Escape':
       
 56522             closeKeyboardShortcutsPanel();
       
 56523             break;
       
 56524 
       
 56525           // do nothing - this allows the up and down arrows continue their
       
 56526           // default behavior of scrolling the content of the Keyboard Shortcuts Panel
       
 56527           // which is needed when only a single month is shown for instance.
       
 56528           case 'ArrowUp':
       
 56529           case 'ArrowDown':
       
 56530             break;
       
 56531 
       
 56532           // completely block the rest of the keys that have functionality outside of this panel
       
 56533           case 'Tab':
       
 56534           case 'Home':
       
 56535           case 'End':
       
 56536           case 'PageUp':
       
 56537           case 'PageDown':
       
 56538           case 'ArrowLeft':
       
 56539           case 'ArrowRight':
       
 56540             e.preventDefault();
       
 56541             break;
       
 56542 
       
 56543           default:
       
 56544             break;
       
 56545         }
       
 56546       }
       
 56547 
       
 56548       return onKeyDown;
       
 56549     }()
       
 56550   }, {
       
 56551     key: 'onShowKeyboardShortcutsButtonClick',
       
 56552     value: function () {
       
 56553       function onShowKeyboardShortcutsButtonClick() {
       
 56554         var _this2 = this;
       
 56555 
       
 56556         var openKeyboardShortcutsPanel = this.props.openKeyboardShortcutsPanel;
       
 56557 
       
 56558         // we want to return focus to this button after closing the keyboard shortcuts panel
       
 56559 
       
 56560         openKeyboardShortcutsPanel(function () {
       
 56561           _this2.showKeyboardShortcutsButton.focus();
       
 56562         });
       
 56563       }
       
 56564 
       
 56565       return onShowKeyboardShortcutsButtonClick;
       
 56566     }()
       
 56567   }, {
       
 56568     key: 'setShowKeyboardShortcutsButtonRef',
       
 56569     value: function () {
       
 56570       function setShowKeyboardShortcutsButtonRef(ref) {
       
 56571         this.showKeyboardShortcutsButton = ref;
       
 56572       }
       
 56573 
       
 56574       return setShowKeyboardShortcutsButtonRef;
       
 56575     }()
       
 56576   }, {
       
 56577     key: 'setHideKeyboardShortcutsButtonRef',
       
 56578     value: function () {
       
 56579       function setHideKeyboardShortcutsButtonRef(ref) {
       
 56580         this.hideKeyboardShortcutsButton = ref;
       
 56581       }
       
 56582 
       
 56583       return setHideKeyboardShortcutsButtonRef;
       
 56584     }()
       
 56585   }, {
       
 56586     key: 'handleFocus',
       
 56587     value: function () {
       
 56588       function handleFocus() {
       
 56589         if (this.hideKeyboardShortcutsButton) {
       
 56590           // automatically move focus into the dialog by moving
       
 56591           // to the only interactive element, the hide button
       
 56592           this.hideKeyboardShortcutsButton.focus();
       
 56593         }
       
 56594       }
       
 56595 
       
 56596       return handleFocus;
       
 56597     }()
       
 56598   }, {
       
 56599     key: 'render',
       
 56600     value: function () {
       
 56601       function render() {
       
 56602         var _this3 = this;
       
 56603 
       
 56604         var _props = this.props,
       
 56605             block = _props.block,
       
 56606             buttonLocation = _props.buttonLocation,
       
 56607             showKeyboardShortcutsPanel = _props.showKeyboardShortcutsPanel,
       
 56608             closeKeyboardShortcutsPanel = _props.closeKeyboardShortcutsPanel,
       
 56609             styles = _props.styles,
       
 56610             phrases = _props.phrases;
       
 56611 
       
 56612 
       
 56613         var toggleButtonText = showKeyboardShortcutsPanel ? phrases.hideKeyboardShortcutsPanel : phrases.showKeyboardShortcutsPanel;
       
 56614 
       
 56615         var bottomRight = buttonLocation === BOTTOM_RIGHT;
       
 56616         var topRight = buttonLocation === TOP_RIGHT;
       
 56617         var topLeft = buttonLocation === TOP_LEFT;
       
 56618 
       
 56619         return _react2['default'].createElement(
       
 56620           'div',
       
 56621           null,
       
 56622           _react2['default'].createElement(
       
 56623             'button',
       
 56624             _extends({
       
 56625               ref: this.setShowKeyboardShortcutsButtonRef
       
 56626             }, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_buttonReset, styles.DayPickerKeyboardShortcuts_show, bottomRight && styles.DayPickerKeyboardShortcuts_show__bottomRight, topRight && styles.DayPickerKeyboardShortcuts_show__topRight, topLeft && styles.DayPickerKeyboardShortcuts_show__topLeft), {
       
 56627               type: 'button',
       
 56628               'aria-label': toggleButtonText,
       
 56629               onClick: this.onShowKeyboardShortcutsButtonClick,
       
 56630               onKeyDown: function () {
       
 56631                 function onKeyDown(e) {
       
 56632                   if (e.key === 'Enter') {
       
 56633                     e.preventDefault();
       
 56634                   } else if (e.key === 'Space') {
       
 56635                     _this3.onShowKeyboardShortcutsButtonClick(e);
       
 56636                   }
       
 56637                 }
       
 56638 
       
 56639                 return onKeyDown;
       
 56640               }(),
       
 56641               onMouseUp: function () {
       
 56642                 function onMouseUp(e) {
       
 56643                   e.currentTarget.blur();
       
 56644                 }
       
 56645 
       
 56646                 return onMouseUp;
       
 56647               }()
       
 56648             }),
       
 56649             _react2['default'].createElement(
       
 56650               'span',
       
 56651               (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_showSpan, bottomRight && styles.DayPickerKeyboardShortcuts_showSpan__bottomRight, topRight && styles.DayPickerKeyboardShortcuts_showSpan__topRight, topLeft && styles.DayPickerKeyboardShortcuts_showSpan__topLeft),
       
 56652               '?'
       
 56653             )
       
 56654           ),
       
 56655           showKeyboardShortcutsPanel && _react2['default'].createElement(
       
 56656             'div',
       
 56657             _extends({}, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_panel), {
       
 56658               role: 'dialog',
       
 56659               'aria-labelledby': 'DayPickerKeyboardShortcuts_title',
       
 56660               'aria-describedby': 'DayPickerKeyboardShortcuts_description'
       
 56661             }),
       
 56662             _react2['default'].createElement(
       
 56663               'div',
       
 56664               _extends({}, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_title), {
       
 56665                 id: 'DayPickerKeyboardShortcuts_title'
       
 56666               }),
       
 56667               phrases.keyboardShortcuts
       
 56668             ),
       
 56669             _react2['default'].createElement(
       
 56670               'button',
       
 56671               _extends({
       
 56672                 ref: this.setHideKeyboardShortcutsButtonRef
       
 56673               }, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_buttonReset, styles.DayPickerKeyboardShortcuts_close), {
       
 56674                 type: 'button',
       
 56675                 tabIndex: '0',
       
 56676                 'aria-label': phrases.hideKeyboardShortcutsPanel,
       
 56677                 onClick: closeKeyboardShortcutsPanel,
       
 56678                 onKeyDown: this.onKeyDown
       
 56679               }),
       
 56680               _react2['default'].createElement(_CloseButton2['default'], (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_closeSvg))
       
 56681             ),
       
 56682             _react2['default'].createElement(
       
 56683               'ul',
       
 56684               _extends({}, (0, _reactWithStyles.css)(styles.DayPickerKeyboardShortcuts_list), {
       
 56685                 id: 'DayPickerKeyboardShortcuts_description'
       
 56686               }),
       
 56687               this.keyboardShortcuts.map(function (_ref2) {
       
 56688                 var unicode = _ref2.unicode,
       
 56689                     label = _ref2.label,
       
 56690                     action = _ref2.action;
       
 56691                 return _react2['default'].createElement(_KeyboardShortcutRow2['default'], {
       
 56692                   key: label,
       
 56693                   unicode: unicode,
       
 56694                   label: label,
       
 56695                   action: action,
       
 56696                   block: block
       
 56697                 });
       
 56698               })
       
 56699             )
       
 56700           )
       
 56701         );
       
 56702       }
       
 56703 
       
 56704       return render;
       
 56705     }()
       
 56706   }]);
       
 56707 
       
 56708   return DayPickerKeyboardShortcuts;
       
 56709 }(_react2['default'].Component);
       
 56710 
       
 56711 DayPickerKeyboardShortcuts.propTypes = propTypes;
       
 56712 DayPickerKeyboardShortcuts.defaultProps = defaultProps;
       
 56713 
       
 56714 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref3) {
       
 56715   var _ref3$reactDates = _ref3.reactDates,
       
 56716       color = _ref3$reactDates.color,
       
 56717       font = _ref3$reactDates.font,
       
 56718       zIndex = _ref3$reactDates.zIndex;
       
 56719   return {
       
 56720     DayPickerKeyboardShortcuts_buttonReset: {
       
 56721       background: 'none',
       
 56722       border: 0,
       
 56723       borderRadius: 0,
       
 56724       color: 'inherit',
       
 56725       font: 'inherit',
       
 56726       lineHeight: 'normal',
       
 56727       overflow: 'visible',
       
 56728       padding: 0,
       
 56729       cursor: 'pointer',
       
 56730       fontSize: font.size,
       
 56731 
       
 56732       ':active': {
       
 56733         outline: 'none'
       
 56734       }
       
 56735     },
       
 56736 
       
 56737     DayPickerKeyboardShortcuts_show: {
       
 56738       width: 22,
       
 56739       position: 'absolute',
       
 56740       zIndex: zIndex + 2
       
 56741     },
       
 56742 
       
 56743     DayPickerKeyboardShortcuts_show__bottomRight: {
       
 56744       borderTop: '26px solid transparent',
       
 56745       borderRight: '33px solid ' + String(color.core.primary),
       
 56746       bottom: 0,
       
 56747       right: 0,
       
 56748 
       
 56749       ':hover': {
       
 56750         borderRight: '33px solid ' + String(color.core.primary_dark)
       
 56751       }
       
 56752     },
       
 56753 
       
 56754     DayPickerKeyboardShortcuts_show__topRight: {
       
 56755       borderBottom: '26px solid transparent',
       
 56756       borderRight: '33px solid ' + String(color.core.primary),
       
 56757       top: 0,
       
 56758       right: 0,
       
 56759 
       
 56760       ':hover': {
       
 56761         borderRight: '33px solid ' + String(color.core.primary_dark)
       
 56762       }
       
 56763     },
       
 56764 
       
 56765     DayPickerKeyboardShortcuts_show__topLeft: {
       
 56766       borderBottom: '26px solid transparent',
       
 56767       borderLeft: '33px solid ' + String(color.core.primary),
       
 56768       top: 0,
       
 56769       left: 0,
       
 56770 
       
 56771       ':hover': {
       
 56772         borderLeft: '33px solid ' + String(color.core.primary_dark)
       
 56773       }
       
 56774     },
       
 56775 
       
 56776     DayPickerKeyboardShortcuts_showSpan: {
       
 56777       color: color.core.white,
       
 56778       position: 'absolute'
       
 56779     },
       
 56780 
       
 56781     DayPickerKeyboardShortcuts_showSpan__bottomRight: {
       
 56782       bottom: 0,
       
 56783       right: -28
       
 56784     },
       
 56785 
       
 56786     DayPickerKeyboardShortcuts_showSpan__topRight: {
       
 56787       top: 1,
       
 56788       right: -28
       
 56789     },
       
 56790 
       
 56791     DayPickerKeyboardShortcuts_showSpan__topLeft: {
       
 56792       top: 1,
       
 56793       left: -28
       
 56794     },
       
 56795 
       
 56796     DayPickerKeyboardShortcuts_panel: {
       
 56797       overflow: 'auto',
       
 56798       background: color.background,
       
 56799       border: '1px solid ' + String(color.core.border),
       
 56800       borderRadius: 2,
       
 56801       position: 'absolute',
       
 56802       top: 0,
       
 56803       bottom: 0,
       
 56804       right: 0,
       
 56805       left: 0,
       
 56806       zIndex: zIndex + 2,
       
 56807       padding: 22,
       
 56808       margin: 33
       
 56809     },
       
 56810 
       
 56811     DayPickerKeyboardShortcuts_title: {
       
 56812       fontSize: 16,
       
 56813       fontWeight: 'bold',
       
 56814       margin: 0
       
 56815     },
       
 56816 
       
 56817     DayPickerKeyboardShortcuts_list: {
       
 56818       listStyle: 'none',
       
 56819       padding: 0,
       
 56820       fontSize: font.size
       
 56821     },
       
 56822 
       
 56823     DayPickerKeyboardShortcuts_close: {
       
 56824       position: 'absolute',
       
 56825       right: 22,
       
 56826       top: 22,
       
 56827       zIndex: zIndex + 2,
       
 56828 
       
 56829       ':active': {
       
 56830         outline: 'none'
       
 56831       }
       
 56832     },
       
 56833 
       
 56834     DayPickerKeyboardShortcuts_closeSvg: {
       
 56835       height: 15,
       
 56836       width: 15,
       
 56837       fill: color.core.grayLighter,
       
 56838 
       
 56839       ':hover': {
       
 56840         fill: color.core.grayLight
       
 56841       },
       
 56842 
       
 56843       ':focus': {
       
 56844         fill: color.core.grayLight
       
 56845       }
       
 56846     }
       
 56847   };
       
 56848 })(DayPickerKeyboardShortcuts);
       
 56849 
       
 56850 /***/ }),
       
 56851 /* 405 */
       
 56852 /***/ (function(module, exports, __webpack_require__) {
       
 56853 
       
 56854 "use strict";
       
 56855 
       
 56856 
       
 56857 Object.defineProperty(exports, "__esModule", {
       
 56858   value: true
       
 56859 });
       
 56860 
       
 56861 var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
       
 56862 
       
 56863 var _object = __webpack_require__(92);
       
 56864 
       
 56865 var _object2 = _interopRequireDefault(_object);
       
 56866 
       
 56867 var _react = __webpack_require__(13);
       
 56868 
       
 56869 var _react2 = _interopRequireDefault(_react);
       
 56870 
       
 56871 var _propTypes = __webpack_require__(28);
       
 56872 
       
 56873 var _propTypes2 = _interopRequireDefault(_propTypes);
       
 56874 
       
 56875 var _airbnbPropTypes = __webpack_require__(85);
       
 56876 
       
 56877 var _reactWithStyles = __webpack_require__(109);
       
 56878 
       
 56879 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56880 
       
 56881 var propTypes = (0, _airbnbPropTypes.forbidExtraProps)((0, _object2['default'])({}, _reactWithStyles.withStylesPropTypes, {
       
 56882   unicode: _propTypes2['default'].string.isRequired,
       
 56883   label: _propTypes2['default'].string.isRequired,
       
 56884   action: _propTypes2['default'].string.isRequired,
       
 56885   block: _propTypes2['default'].bool
       
 56886 }));
       
 56887 
       
 56888 var defaultProps = {
       
 56889   block: false
       
 56890 };
       
 56891 
       
 56892 function KeyboardShortcutRow(_ref) {
       
 56893   var unicode = _ref.unicode,
       
 56894       label = _ref.label,
       
 56895       action = _ref.action,
       
 56896       block = _ref.block,
       
 56897       styles = _ref.styles;
       
 56898 
       
 56899   return _react2['default'].createElement(
       
 56900     'li',
       
 56901     (0, _reactWithStyles.css)(styles.KeyboardShortcutRow, block && styles.KeyboardShortcutRow__block),
       
 56902     _react2['default'].createElement(
       
 56903       'div',
       
 56904       (0, _reactWithStyles.css)(styles.KeyboardShortcutRow_keyContainer, block && styles.KeyboardShortcutRow_keyContainer__block),
       
 56905       _react2['default'].createElement(
       
 56906         'span',
       
 56907         _extends({}, (0, _reactWithStyles.css)(styles.KeyboardShortcutRow_key), {
       
 56908           role: 'img',
       
 56909           'aria-label': String(label) + ',' // add comma so screen readers will pause before reading action
       
 56910         }),
       
 56911         unicode
       
 56912       )
       
 56913     ),
       
 56914     _react2['default'].createElement(
       
 56915       'div',
       
 56916       (0, _reactWithStyles.css)(styles.KeyboardShortcutRow_action),
       
 56917       action
       
 56918     )
       
 56919   );
       
 56920 }
       
 56921 
       
 56922 KeyboardShortcutRow.propTypes = propTypes;
       
 56923 KeyboardShortcutRow.defaultProps = defaultProps;
       
 56924 
       
 56925 exports['default'] = (0, _reactWithStyles.withStyles)(function (_ref2) {
       
 56926   var color = _ref2.reactDates.color;
       
 56927   return {
       
 56928     KeyboardShortcutRow: {
       
 56929       listStyle: 'none',
       
 56930       margin: '6px 0'
       
 56931     },
       
 56932 
       
 56933     KeyboardShortcutRow__block: {
       
 56934       marginBottom: 16
       
 56935     },
       
 56936 
       
 56937     KeyboardShortcutRow_keyContainer: {
       
 56938       display: 'inline-block',
       
 56939       whiteSpace: 'nowrap',
       
 56940       textAlign: 'right',
       
 56941       marginRight: 6
       
 56942     },
       
 56943 
       
 56944     KeyboardShortcutRow_keyContainer__block: {
       
 56945       textAlign: 'left',
       
 56946       display: 'inline'
       
 56947     },
       
 56948 
       
 56949     KeyboardShortcutRow_key: {
       
 56950       fontFamily: 'monospace',
       
 56951       fontSize: 12,
       
 56952       textTransform: 'uppercase',
       
 56953       background: color.core.grayLightest,
       
 56954       padding: '2px 6px'
       
 56955     },
       
 56956 
       
 56957     KeyboardShortcutRow_action: {
       
 56958       display: 'inline',
       
 56959       wordBreak: 'break-word',
       
 56960       marginLeft: 8
       
 56961     }
       
 56962   };
       
 56963 })(KeyboardShortcutRow);
       
 56964 
       
 56965 /***/ }),
       
 56966 /* 406 */
       
 56967 /***/ (function(module, exports, __webpack_require__) {
       
 56968 
       
 56969 "use strict";
       
 56970 
       
 56971 
       
 56972 Object.defineProperty(exports, "__esModule", {
       
 56973   value: true
       
 56974 });
       
 56975 
       
 56976 var _react = __webpack_require__(13);
       
 56977 
       
 56978 var _react2 = _interopRequireDefault(_react);
       
 56979 
       
 56980 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 56981 
       
 56982 var CloseButton = function () {
       
 56983   function CloseButton(props) {
       
 56984     return _react2['default'].createElement(
       
 56985       'svg',
       
 56986       props,
       
 56987       _react2['default'].createElement('path', {
       
 56988         fillRule: 'evenodd',
       
 56989         d: 'M11.53.47a.75.75 0 0 0-1.061 0l-4.47 4.47L1.529.47A.75.75 0 1 0 .468 1.531l4.47 4.47-4.47 4.47a.75.75 0 1 0 1.061 1.061l4.47-4.47 4.47 4.47a.75.75 0 1 0 1.061-1.061l-4.47-4.47 4.47-4.47a.75.75 0 0 0 0-1.061z'
       
 56990       })
       
 56991     );
       
 56992   }
       
 56993 
       
 56994   return CloseButton;
       
 56995 }();
       
 56996 
       
 56997 CloseButton.defaultProps = {
       
 56998   viewBox: '0 0 12 12'
       
 56999 };
       
 57000 exports['default'] = CloseButton;
       
 57001 
       
 57002 /***/ }),
       
 57003 /* 407 */
       
 57004 /***/ (function(module, exports, __webpack_require__) {
       
 57005 
       
 57006 "use strict";
       
 57007 
       
 57008 
       
 57009 Object.defineProperty(exports, "__esModule", {
       
 57010   value: true
       
 57011 });
       
 57012 exports['default'] = getNumberOfCalendarMonthWeeks;
       
 57013 
       
 57014 var _moment = __webpack_require__(43);
       
 57015 
       
 57016 var _moment2 = _interopRequireDefault(_moment);
       
 57017 
       
 57018 function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
       
 57019 
       
 57020 function getBlankDaysBeforeFirstDay(firstDayOfMonth, firstDayOfWeek) {
       
 57021   var weekDayDiff = firstDayOfMonth.day() - firstDayOfWeek;
       
 57022   return (weekDayDiff + 7) % 7;
       
 57023 }
       
 57024 
       
 57025 function getNumberOfCalendarMonthWeeks(month) {
       
 57026   var firstDayOfWeek = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _moment2['default'].localeData().firstDayOfWeek();
       
 57027 
       
 57028   var firstDayOfMonth = month.clone().startOf('month');
       
 57029   var numBlankDays = getBlankDaysBeforeFirstDay(firstDayOfMonth, firstDayOfWeek);
       
 57030   return Math.ceil((numBlankDays + month.daysInMonth()) / 7);
       
 57031 }
       
 57032 
       
 57033 /***/ }),
       
 57034 /* 408 */
       
 57035 /***/ (function(module, exports, __webpack_require__) {
       
 57036 
       
 57037 "use strict";
       
 57038 
       
 57039 
       
 57040 Object.defineProperty(exports, "__esModule", {
       
 57041   value: true
       
 57042 });
       
 57043 exports['default'] = getActiveElement;
       
 57044 function getActiveElement() {
       
 57045   return typeof document !== 'undefined' && document.activeElement;
       
 57046 }
       
 57047 
       
 57048 /***/ }),
       
 57049 /* 409 */
       
 57050 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 57051 
       
 57052 "use strict";
       
 57053 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 57054 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 57055 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 57056 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 57057 
       
 57058 
       
 57059 /**
       
 57060  * WordPress dependencies
       
 57061  */
       
 57062 
       
 57063 var external = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 57064   xmlns: "http://www.w3.org/2000/svg",
       
 57065   viewBox: "0 0 24 24"
       
 57066 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 57067   d: "M18.2 17c0 .7-.6 1.2-1.2 1.2H7c-.7 0-1.2-.6-1.2-1.2V7c0-.7.6-1.2 1.2-1.2h3.2V4.2H7C5.5 4.2 4.2 5.5 4.2 7v10c0 1.5 1.2 2.8 2.8 2.8h10c1.5 0 2.8-1.2 2.8-2.8v-3.6h-1.5V17zM14.9 3v1.5h3.7l-6.4 6.4 1.1 1.1 6.4-6.4v3.7h1.5V3h-6.3z"
       
 57068 }));
       
 57069 /* harmony default export */ __webpack_exports__["a"] = (external);
       
 57070 
       
 57071 
       
 57072 /***/ }),
       
 57073 /* 410 */
       
 57074 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 57075 
       
 57076 "use strict";
       
 57077 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(0);
       
 57078 /* harmony import */ var _wordpress_element__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__);
       
 57079 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6);
       
 57080 /* harmony import */ var _wordpress_primitives__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__);
       
 57081 
       
 57082 
       
 57083 /**
       
 57084  * WordPress dependencies
       
 57085  */
       
 57086 
       
 57087 var textColor = Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["SVG"], {
       
 57088   xmlns: "http://www.w3.org/2000/svg",
       
 57089   viewBox: "-2 -2 24 24"
       
 57090 }, Object(_wordpress_element__WEBPACK_IMPORTED_MODULE_0__["createElement"])(_wordpress_primitives__WEBPACK_IMPORTED_MODULE_1__["Path"], {
       
 57091   d: "M13.23 15h1.9L11 4H9L5 15h1.88l1.07-3h4.18zm-1.53-4.54H8.51L10 5.6z"
       
 57092 }));
       
 57093 /* harmony default export */ __webpack_exports__["a"] = (textColor);
       
 57094 
       
 57095 
       
 57096 /***/ }),
       
 57097 /* 411 */,
       
 57098 /* 412 */,
       
 57099 /* 413 */,
       
 57100 /* 414 */,
       
 57101 /* 415 */,
       
 57102 /* 416 */,
       
 57103 /* 417 */,
       
 57104 /* 418 */,
       
 57105 /* 419 */,
       
 57106 /* 420 */,
       
 57107 /* 421 */,
       
 57108 /* 422 */,
       
 57109 /* 423 */,
       
 57110 /* 424 */,
       
 57111 /* 425 */,
       
 57112 /* 426 */,
       
 57113 /* 427 */,
       
 57114 /* 428 */,
       
 57115 /* 429 */,
       
 57116 /* 430 */,
       
 57117 /* 431 */,
       
 57118 /* 432 */,
       
 57119 /* 433 */,
       
 57120 /* 434 */,
       
 57121 /* 435 */,
       
 57122 /* 436 */,
       
 57123 /* 437 */,
       
 57124 /* 438 */,
       
 57125 /* 439 */,
       
 57126 /* 440 */,
       
 57127 /* 441 */,
       
 57128 /* 442 */,
       
 57129 /* 443 */,
       
 57130 /* 444 */,
       
 57131 /* 445 */,
       
 57132 /* 446 */,
       
 57133 /* 447 */,
       
 57134 /* 448 */,
       
 57135 /* 449 */,
       
 57136 /* 450 */,
       
 57137 /* 451 */,
       
 57138 /* 452 */,
       
 57139 /* 453 */,
       
 57140 /* 454 */,
       
 57141 /* 455 */,
       
 57142 /* 456 */,
       
 57143 /* 457 */,
       
 57144 /* 458 */,
       
 57145 /* 459 */,
       
 57146 /* 460 */,
       
 57147 /* 461 */,
       
 57148 /* 462 */,
       
 57149 /* 463 */,
       
 57150 /* 464 */,
       
 57151 /* 465 */,
       
 57152 /* 466 */,
       
 57153 /* 467 */,
       
 57154 /* 468 */,
       
 57155 /* 469 */
       
 57156 /***/ (function(module, __webpack_exports__, __webpack_require__) {
       
 57157 
       
 57158 "use strict";
       
 57159 /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return ToolbarItem; });
       
 57160 /* unused harmony export useToolbarItem */
       
 57161 /* harmony import */ var reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(49);
       
 57162 /* harmony import */ var reakit_system_createHook__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);
       
 57163 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(13);
       
 57164 /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
       
 57165 /* harmony import */ var reakit_warning__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(80);
       
 57166 /* harmony import */ var _Composite_CompositeItem_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(120);
       
 57167 /* harmony import */ var _ToolbarState_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(167);
       
 57168 
       
 57169 
       
 57170 
       
 57171 
       
 57172 
       
 57173 
       
 57174 
       
 57175 
       
 57176 
       
 57177 
       
 57178 
       
 57179 
       
 57180 
       
 57181 
       
 57182 
       
 57183 
       
 57184 
       
 57185 
       
 57186 
       
 57187 
       
 57188 
       
 57189 
       
 57190 
       
 57191 
       
 57192 
       
 57193 
       
 57194 
       
 57195 
       
 57196 
       
 57197 
       
 57198 
       
 57199 var useToolbarItem = Object(reakit_system_createHook__WEBPACK_IMPORTED_MODULE_1__[/* createHook */ "a"])({
       
 57200   name: "ToolbarItem",
       
 57201   compose: _Composite_CompositeItem_js__WEBPACK_IMPORTED_MODULE_4__[/* useCompositeItem */ "b"],
       
 57202   useState: _ToolbarState_js__WEBPACK_IMPORTED_MODULE_5__[/* useToolbarState */ "a"]
       
 57203 });
       
 57204 var ToolbarItem = Object(reakit_system_createComponent__WEBPACK_IMPORTED_MODULE_0__[/* createComponent */ "a"])({
       
 57205   as: "button",
       
 57206   memo: true,
       
 57207   useHook: useToolbarItem
       
 57208 });
 37529 
 57209 
 37530 
 57210 
 37531 
 57211 
 37532 
 57212 
 37533 /***/ })
 57213 /***/ })