pollination-react-io 0.0.28 → 0.0.31

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -2145,7 +2145,7 @@ var __assign$2 = function() {
2145
2145
  return __assign$2.apply(this, arguments);
2146
2146
  };
2147
2147
 
2148
- function __awaiter(thisArg, _arguments, P, generator) {
2148
+ function __awaiter$1(thisArg, _arguments, P, generator) {
2149
2149
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
2150
2150
  return new (P || (P = Promise))(function (resolve, reject) {
2151
2151
  function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
@@ -2155,7 +2155,7 @@ function __awaiter(thisArg, _arguments, P, generator) {
2155
2155
  });
2156
2156
  }
2157
2157
 
2158
- function __generator(thisArg, body) {
2158
+ function __generator$1(thisArg, body) {
2159
2159
  var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
2160
2160
  return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
2161
2161
  function verb(n) { return function (v) { return step([n, v]); }; }
@@ -2334,9 +2334,9 @@ var useHbjsontoVTK = function () {
2334
2334
  .catch(function (e) {
2335
2335
  throw new Error(e);
2336
2336
  })
2337
- .then(function (res) { return __awaiter(void 0, void 0, void 0, function () {
2337
+ .then(function (res) { return __awaiter$1(void 0, void 0, void 0, function () {
2338
2338
  var translatedFile;
2339
- return __generator(this, function (_a) {
2339
+ return __generator$1(this, function (_a) {
2340
2340
  switch (_a.label) {
2341
2341
  case 0:
2342
2342
  if (!res.ok) return [3 /*break*/, 2];
@@ -3507,20 +3507,20 @@ if (process.env.NODE_ENV !== 'production') {
3507
3507
 
3508
3508
  var PropTypes = propTypes;
3509
3509
 
3510
- var _excluded$7 = ["color", "size", "title"];
3510
+ var _excluded$9 = ["color", "size", "title"];
3511
3511
 
3512
- function _extends$8() { _extends$8 = 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; }; return _extends$8.apply(this, arguments); }
3512
+ function _extends$9() { _extends$9 = 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; }; return _extends$9.apply(this, arguments); }
3513
3513
 
3514
- function _objectWithoutProperties$7(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$7(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3514
+ function _objectWithoutProperties$9(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$9(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3515
3515
 
3516
- function _objectWithoutPropertiesLoose$7(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3516
+ function _objectWithoutPropertiesLoose$9(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3517
3517
  var ArrowClockwise = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3518
3518
  var color = _ref.color,
3519
3519
  size = _ref.size,
3520
3520
  title = _ref.title,
3521
- rest = _objectWithoutProperties$7(_ref, _excluded$7);
3521
+ rest = _objectWithoutProperties$9(_ref, _excluded$9);
3522
3522
 
3523
- return /*#__PURE__*/React__default["default"].createElement("svg", _extends$8({
3523
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$9({
3524
3524
  ref: ref,
3525
3525
  xmlns: "http://www.w3.org/2000/svg",
3526
3526
  viewBox: "0 0 16 16",
@@ -3546,20 +3546,20 @@ ArrowClockwise.defaultProps = {
3546
3546
  };
3547
3547
  var ArrowClockwise$1 = ArrowClockwise;
3548
3548
 
3549
- var _excluded$6 = ["color", "size", "title"];
3549
+ var _excluded$8 = ["color", "size", "title"];
3550
3550
 
3551
- function _extends$7() { _extends$7 = 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; }; return _extends$7.apply(this, arguments); }
3551
+ function _extends$8() { _extends$8 = 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; }; return _extends$8.apply(this, arguments); }
3552
3552
 
3553
- function _objectWithoutProperties$6(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$6(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3553
+ function _objectWithoutProperties$8(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$8(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3554
3554
 
3555
- function _objectWithoutPropertiesLoose$6(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3555
+ function _objectWithoutPropertiesLoose$8(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3556
3556
  var ArrowRepeat = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3557
3557
  var color = _ref.color,
3558
3558
  size = _ref.size,
3559
3559
  title = _ref.title,
3560
- rest = _objectWithoutProperties$6(_ref, _excluded$6);
3560
+ rest = _objectWithoutProperties$8(_ref, _excluded$8);
3561
3561
 
3562
- return /*#__PURE__*/React__default["default"].createElement("svg", _extends$7({
3562
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$8({
3563
3563
  ref: ref,
3564
3564
  xmlns: "http://www.w3.org/2000/svg",
3565
3565
  viewBox: "0 0 16 16",
@@ -3585,20 +3585,20 @@ ArrowRepeat.defaultProps = {
3585
3585
  };
3586
3586
  var ArrowRepeat$1 = ArrowRepeat;
3587
3587
 
3588
- var _excluded$5 = ["color", "size", "title"];
3588
+ var _excluded$7 = ["color", "size", "title"];
3589
3589
 
3590
- function _extends$6() { _extends$6 = 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; }; return _extends$6.apply(this, arguments); }
3590
+ function _extends$7() { _extends$7 = 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; }; return _extends$7.apply(this, arguments); }
3591
3591
 
3592
- function _objectWithoutProperties$5(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$5(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3592
+ function _objectWithoutProperties$7(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$7(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3593
3593
 
3594
- function _objectWithoutPropertiesLoose$5(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3594
+ function _objectWithoutPropertiesLoose$7(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3595
3595
  var BoundingBox = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3596
3596
  var color = _ref.color,
3597
3597
  size = _ref.size,
3598
3598
  title = _ref.title,
3599
- rest = _objectWithoutProperties$5(_ref, _excluded$5);
3599
+ rest = _objectWithoutProperties$7(_ref, _excluded$7);
3600
3600
 
3601
- return /*#__PURE__*/React__default["default"].createElement("svg", _extends$6({
3601
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$7({
3602
3602
  ref: ref,
3603
3603
  xmlns: "http://www.w3.org/2000/svg",
3604
3604
  viewBox: "0 0 16 16",
@@ -3621,20 +3621,20 @@ BoundingBox.defaultProps = {
3621
3621
  };
3622
3622
  var BoundingBox$1 = BoundingBox;
3623
3623
 
3624
- var _excluded$4 = ["color", "size", "title"];
3624
+ var _excluded$6 = ["color", "size", "title"];
3625
3625
 
3626
- function _extends$5() { _extends$5 = 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; }; return _extends$5.apply(this, arguments); }
3626
+ function _extends$6() { _extends$6 = 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; }; return _extends$6.apply(this, arguments); }
3627
3627
 
3628
- function _objectWithoutProperties$4(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$4(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3628
+ function _objectWithoutProperties$6(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$6(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3629
3629
 
3630
- function _objectWithoutPropertiesLoose$4(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3630
+ function _objectWithoutPropertiesLoose$6(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3631
3631
  var BoxArrowInLeft = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3632
3632
  var color = _ref.color,
3633
3633
  size = _ref.size,
3634
3634
  title = _ref.title,
3635
- rest = _objectWithoutProperties$4(_ref, _excluded$4);
3635
+ rest = _objectWithoutProperties$6(_ref, _excluded$6);
3636
3636
 
3637
- return /*#__PURE__*/React__default["default"].createElement("svg", _extends$5({
3637
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$6({
3638
3638
  ref: ref,
3639
3639
  xmlns: "http://www.w3.org/2000/svg",
3640
3640
  viewBox: "0 0 16 16",
@@ -3661,20 +3661,20 @@ BoxArrowInLeft.defaultProps = {
3661
3661
  };
3662
3662
  var BoxArrowInLeft$1 = BoxArrowInLeft;
3663
3663
 
3664
- var _excluded$3 = ["color", "size", "title"];
3664
+ var _excluded$5 = ["color", "size", "title"];
3665
3665
 
3666
- function _extends$4() { _extends$4 = 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; }; return _extends$4.apply(this, arguments); }
3666
+ function _extends$5() { _extends$5 = 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; }; return _extends$5.apply(this, arguments); }
3667
3667
 
3668
- function _objectWithoutProperties$3(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$3(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3668
+ function _objectWithoutProperties$5(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$5(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3669
3669
 
3670
- function _objectWithoutPropertiesLoose$3(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3670
+ function _objectWithoutPropertiesLoose$5(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3671
3671
  var CaretDownFill = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3672
3672
  var color = _ref.color,
3673
3673
  size = _ref.size,
3674
3674
  title = _ref.title,
3675
- rest = _objectWithoutProperties$3(_ref, _excluded$3);
3675
+ rest = _objectWithoutProperties$5(_ref, _excluded$5);
3676
3676
 
3677
- return /*#__PURE__*/React__default["default"].createElement("svg", _extends$4({
3677
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$5({
3678
3678
  ref: ref,
3679
3679
  xmlns: "http://www.w3.org/2000/svg",
3680
3680
  viewBox: "0 0 16 16",
@@ -3697,20 +3697,20 @@ CaretDownFill.defaultProps = {
3697
3697
  };
3698
3698
  var CaretDownFill$1 = CaretDownFill;
3699
3699
 
3700
- var _excluded$2 = ["color", "size", "title"];
3700
+ var _excluded$4 = ["color", "size", "title"];
3701
3701
 
3702
- function _extends$3() { _extends$3 = 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; }; return _extends$3.apply(this, arguments); }
3702
+ function _extends$4() { _extends$4 = 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; }; return _extends$4.apply(this, arguments); }
3703
3703
 
3704
- function _objectWithoutProperties$2(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$2(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3704
+ function _objectWithoutProperties$4(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$4(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3705
3705
 
3706
- function _objectWithoutPropertiesLoose$2(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3706
+ function _objectWithoutPropertiesLoose$4(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3707
3707
  var CheckCircle = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3708
3708
  var color = _ref.color,
3709
3709
  size = _ref.size,
3710
3710
  title = _ref.title,
3711
- rest = _objectWithoutProperties$2(_ref, _excluded$2);
3711
+ rest = _objectWithoutProperties$4(_ref, _excluded$4);
3712
3712
 
3713
- return /*#__PURE__*/React__default["default"].createElement("svg", _extends$3({
3713
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$4({
3714
3714
  ref: ref,
3715
3715
  xmlns: "http://www.w3.org/2000/svg",
3716
3716
  viewBox: "0 0 16 16",
@@ -3735,18 +3735,57 @@ CheckCircle.defaultProps = {
3735
3735
  };
3736
3736
  var CheckCircle$1 = CheckCircle;
3737
3737
 
3738
- var _excluded$1 = ["color", "size", "title"];
3738
+ var _excluded$3 = ["color", "size", "title"];
3739
+
3740
+ function _extends$3() { _extends$3 = 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; }; return _extends$3.apply(this, arguments); }
3741
+
3742
+ function _objectWithoutProperties$3(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$3(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3743
+
3744
+ function _objectWithoutPropertiesLoose$3(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3745
+ var CloudArrowUp = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3746
+ var color = _ref.color,
3747
+ size = _ref.size,
3748
+ title = _ref.title,
3749
+ rest = _objectWithoutProperties$3(_ref, _excluded$3);
3750
+
3751
+ return /*#__PURE__*/React__default["default"].createElement("svg", _extends$3({
3752
+ ref: ref,
3753
+ xmlns: "http://www.w3.org/2000/svg",
3754
+ viewBox: "0 0 16 16",
3755
+ width: size,
3756
+ height: size,
3757
+ fill: color
3758
+ }, rest), title ? /*#__PURE__*/React__default["default"].createElement("title", null, title) : null, /*#__PURE__*/React__default["default"].createElement("path", {
3759
+ fillRule: "evenodd",
3760
+ d: "M7.646 5.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 6.707V10.5a.5.5 0 0 1-1 0V6.707L6.354 7.854a.5.5 0 1 1-.708-.708l2-2z"
3761
+ }), /*#__PURE__*/React__default["default"].createElement("path", {
3762
+ d: "M4.406 3.342A5.53 5.53 0 0 1 8 2c2.69 0 4.923 2 5.166 4.579C14.758 6.804 16 8.137 16 9.773 16 11.569 14.502 13 12.687 13H3.781C1.708 13 0 11.366 0 9.318c0-1.763 1.266-3.223 2.942-3.593.143-.863.698-1.723 1.464-2.383zm.653.757c-.757.653-1.153 1.44-1.153 2.056v.448l-.445.049C2.064 6.805 1 7.952 1 9.318 1 10.785 2.23 12 3.781 12h8.906C13.98 12 15 10.988 15 9.773c0-1.216-1.02-2.228-2.313-2.228h-.5v-.5C12.188 4.825 10.328 3 8 3a4.53 4.53 0 0 0-2.941 1.1z"
3763
+ }));
3764
+ });
3765
+ CloudArrowUp.propTypes = {
3766
+ color: PropTypes.string,
3767
+ size: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
3768
+ title: PropTypes.string
3769
+ };
3770
+ CloudArrowUp.defaultProps = {
3771
+ color: 'currentColor',
3772
+ size: '1em',
3773
+ title: null
3774
+ };
3775
+ var CloudArrowUp$1 = CloudArrowUp;
3776
+
3777
+ var _excluded$2 = ["color", "size", "title"];
3739
3778
 
3740
3779
  function _extends$2() { _extends$2 = 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; }; return _extends$2.apply(this, arguments); }
3741
3780
 
3742
- function _objectWithoutProperties$1(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$1(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3781
+ function _objectWithoutProperties$2(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$2(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3743
3782
 
3744
- function _objectWithoutPropertiesLoose$1(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3783
+ function _objectWithoutPropertiesLoose$2(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3745
3784
  var EyeSlash = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3746
3785
  var color = _ref.color,
3747
3786
  size = _ref.size,
3748
3787
  title = _ref.title,
3749
- rest = _objectWithoutProperties$1(_ref, _excluded$1);
3788
+ rest = _objectWithoutProperties$2(_ref, _excluded$2);
3750
3789
 
3751
3790
  return /*#__PURE__*/React__default["default"].createElement("svg", _extends$2({
3752
3791
  ref: ref,
@@ -3775,18 +3814,18 @@ EyeSlash.defaultProps = {
3775
3814
  };
3776
3815
  var EyeSlash$1 = EyeSlash;
3777
3816
 
3778
- var _excluded = ["color", "size", "title"];
3817
+ var _excluded$1 = ["color", "size", "title"];
3779
3818
 
3780
3819
  function _extends$1() { _extends$1 = 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; }; return _extends$1.apply(this, arguments); }
3781
3820
 
3782
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3821
+ function _objectWithoutProperties$1(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose$1(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
3783
3822
 
3784
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3823
+ function _objectWithoutPropertiesLoose$1(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
3785
3824
  var Eye = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
3786
3825
  var color = _ref.color,
3787
3826
  size = _ref.size,
3788
3827
  title = _ref.title,
3789
- rest = _objectWithoutProperties(_ref, _excluded);
3828
+ rest = _objectWithoutProperties$1(_ref, _excluded$1);
3790
3829
 
3791
3830
  return /*#__PURE__*/React__default["default"].createElement("svg", _extends$1({
3792
3831
  ref: ref,
@@ -3852,9 +3891,9 @@ function createContextScope(n,o=[]){let r=[];const c=()=>{const t=r.map((t=>/*#_
3852
3891
 
3853
3892
  function createCollection(c){const n=c+"CollectionProvider",[l,i]=createContextScope(n),[f,a]=l(n,{collectionRef:{current:null},itemMap:new Map}),u=e=>{const{scope:r,children:t}=e,c=React__default["default"].useRef(null),n=React__default["default"].useRef(new Map).current;return React__default["default"].createElement(f,{scope:r,itemMap:n,collectionRef:c},t)},m=c+"CollectionSlot",s=/*#__PURE__*/React__default["default"].forwardRef(((t,c)=>{const{scope:n,children:l}=t,i=a(m,n),f=useComposedRefs(c,i.collectionRef);return React__default["default"].createElement(Slot,{ref:f},l)})),p=c+"CollectionItemSlot",d="data-radix-collection-item",R=/*#__PURE__*/React__default["default"].forwardRef(((t,c)=>{const{scope:n,children:l,...i}=t,f=React__default["default"].useRef(null),u=useComposedRefs(c,f),m=a(p,n);return React__default["default"].useEffect((()=>(m.itemMap.set(f,{ref:f,...i}),()=>{m.itemMap.delete(f);}))),/*#__PURE__*/React__default["default"].createElement(Slot,{[d]:"",ref:u},l)}));return [{Provider:u,Slot:s,ItemSlot:R},function(e){const r=a(c+"CollectionConsumer",e);return React__default["default"].useCallback((()=>{const e=r.collectionRef.current;if(!e)return [];const t=Array.from(e.querySelectorAll(`[${d}]`));return Array.from(r.itemMap.values()).sort(((e,r)=>t.indexOf(e.ref.current)-t.indexOf(r.ref.current)))}),[r.collectionRef,r.itemMap])},i]}
3854
3893
 
3855
- function composeEventHandlers(e,n,{checkForDefaultPrevented:t=!0}={}){return function(r){if(null==e||e(r),!1===t||!r.defaultPrevented)return null==n?void 0:n(r)}}
3894
+ function composeEventHandlers$1(e,n,{checkForDefaultPrevented:t=!0}={}){return function(r){if(null==e||e(r),!1===t||!r.defaultPrevented)return null==n?void 0:n(r)}}
3856
3895
 
3857
- const f$3={bubbles:!1,cancelable:!0},[p$1,l$2,m$2]=createCollection("RovingFocusGroup"),[d$3,v$1]=createContextScope("RovingFocusGroup",[m$2]);const[g$2,F$1]=d$3("RovingFocusGroup");const RovingFocusGroup=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>/*#__PURE__*/React__namespace.createElement(p$1.Provider,{scope:e.__scopeRovingFocusGroup},/*#__PURE__*/React__namespace.createElement(p$1.Slot,{scope:e.__scopeRovingFocusGroup},/*#__PURE__*/React__namespace.createElement(w$2,_extends({},e,{ref:o}))))));const w$2=/*#__PURE__*/React__namespace.forwardRef(((t,n)=>{const{__scopeRovingFocusGroup:c,orientation:p,dir:m="ltr",loop:d=!1,currentTabStopId:v,defaultCurrentTabStopId:F,onCurrentTabStopIdChange:w,onEntryFocus:b,...x}=t,E=React__namespace.useRef(null),I=useComposedRefs(n,E),[G=null,h]=useControllableState({prop:v,defaultProp:F,onChange:w}),[T,A]=React__namespace.useState(!1),y=useCallbackRef$1(b),D=l$2(c),S=React__namespace.useRef(!1);return React__namespace.useEffect((()=>{const e=E.current;if(e)return e.addEventListener("rovingFocusGroup.onEntryFocus",y),()=>e.removeEventListener("rovingFocusGroup.onEntryFocus",y)}),[y]),/*#__PURE__*/React__namespace.createElement(g$2,{scope:c,orientation:p,dir:m,loop:d,currentTabStopId:G,onItemFocus:React__namespace.useCallback((e=>h(e)),[h]),onItemShiftTab:React__namespace.useCallback((()=>A(!0)),[])},/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({tabIndex:T?-1:0,"data-orientation":p},x,{ref:I,style:{outline:"none",...t.style},onMouseDown:composeEventHandlers(t.onMouseDown,(()=>{S.current=!0;})),onFocus:composeEventHandlers(t.onFocus,(e=>{const o=!S.current;if(e.target===e.currentTarget&&o&&!T){const o=new Event("rovingFocusGroup.onEntryFocus",f$3);if(e.currentTarget.dispatchEvent(o),!o.defaultPrevented){const e=D().filter((e=>e.focusable));R$1([e.find((e=>e.active)),e.find((e=>e.id===G)),...e].filter(Boolean).map((e=>e.ref.current)));}}S.current=!1;})),onBlur:composeEventHandlers(t.onBlur,(()=>A(!1)))})))}));const RovingFocusGroupItem=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{__scopeRovingFocusGroup:n,focusable:i=!0,active:c=!1,...f}=e,m=useId(),d=F$1("RovingFocusGroupItem",n),v=d.currentTabStopId===m,g=l$2(n);return React__namespace.createElement(p$1.ItemSlot,{scope:n,id:m,focusable:i,active:c},/*#__PURE__*/React__namespace.createElement(Primitive.span,_extends({tabIndex:v?0:-1,"data-orientation":d.orientation},f,{ref:o,onMouseDown:composeEventHandlers(e.onMouseDown,(e=>{i?d.onItemFocus(m):e.preventDefault();})),onFocus:composeEventHandlers(e.onFocus,(()=>d.onItemFocus(m))),onKeyDown:composeEventHandlers(e.onKeyDown,(e=>{if("Tab"===e.key&&e.shiftKey)return void d.onItemShiftTab();if(e.target!==e.currentTarget)return;const o=function(e,o,r){const t=function(e,o){return "rtl"!==o?e:"ArrowLeft"===e?"ArrowRight":"ArrowRight"===e?"ArrowLeft":e}(e.key,r);return "vertical"===o&&["ArrowLeft","ArrowRight"].includes(t)||"horizontal"===o&&["ArrowUp","ArrowDown"].includes(t)?void 0:b$2[t]}(e,d.orientation,d.dir);if(void 0!==o){e.preventDefault();let n=g().filter((e=>e.focusable)).map((e=>e.ref.current));if("last"===o)n.reverse();else if("prev"===o||"next"===o){"prev"===o&&n.reverse();const i=n.indexOf(e.currentTarget);n=d.loop?(t=i+1,(r=n).map(((e,o)=>r[(t+o)%r.length]))):n.slice(i+1);}setTimeout((()=>R$1(n)));}var r,t;}))})))}));const b$2={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function R$1(e){const o=document.activeElement;for(const r of e){if(r===o)return;if(r.focus(),document.activeElement!==o)return}}const Root$8=RovingFocusGroup;const Item$2=RovingFocusGroupItem;
3896
+ const f$3={bubbles:!1,cancelable:!0},[p$1,l$2,m$2]=createCollection("RovingFocusGroup"),[d$3,v$1]=createContextScope("RovingFocusGroup",[m$2]);const[g$2,F$1]=d$3("RovingFocusGroup");const RovingFocusGroup=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>/*#__PURE__*/React__namespace.createElement(p$1.Provider,{scope:e.__scopeRovingFocusGroup},/*#__PURE__*/React__namespace.createElement(p$1.Slot,{scope:e.__scopeRovingFocusGroup},/*#__PURE__*/React__namespace.createElement(w$2,_extends({},e,{ref:o}))))));const w$2=/*#__PURE__*/React__namespace.forwardRef(((t,n)=>{const{__scopeRovingFocusGroup:c,orientation:p,dir:m="ltr",loop:d=!1,currentTabStopId:v,defaultCurrentTabStopId:F,onCurrentTabStopIdChange:w,onEntryFocus:b,...x}=t,E=React__namespace.useRef(null),I=useComposedRefs(n,E),[G=null,h]=useControllableState({prop:v,defaultProp:F,onChange:w}),[T,A]=React__namespace.useState(!1),y=useCallbackRef$1(b),D=l$2(c),S=React__namespace.useRef(!1);return React__namespace.useEffect((()=>{const e=E.current;if(e)return e.addEventListener("rovingFocusGroup.onEntryFocus",y),()=>e.removeEventListener("rovingFocusGroup.onEntryFocus",y)}),[y]),/*#__PURE__*/React__namespace.createElement(g$2,{scope:c,orientation:p,dir:m,loop:d,currentTabStopId:G,onItemFocus:React__namespace.useCallback((e=>h(e)),[h]),onItemShiftTab:React__namespace.useCallback((()=>A(!0)),[])},/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({tabIndex:T?-1:0,"data-orientation":p},x,{ref:I,style:{outline:"none",...t.style},onMouseDown:composeEventHandlers$1(t.onMouseDown,(()=>{S.current=!0;})),onFocus:composeEventHandlers$1(t.onFocus,(e=>{const o=!S.current;if(e.target===e.currentTarget&&o&&!T){const o=new Event("rovingFocusGroup.onEntryFocus",f$3);if(e.currentTarget.dispatchEvent(o),!o.defaultPrevented){const e=D().filter((e=>e.focusable));R$1([e.find((e=>e.active)),e.find((e=>e.id===G)),...e].filter(Boolean).map((e=>e.ref.current)));}}S.current=!1;})),onBlur:composeEventHandlers$1(t.onBlur,(()=>A(!1)))})))}));const RovingFocusGroupItem=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{__scopeRovingFocusGroup:n,focusable:i=!0,active:c=!1,...f}=e,m=useId(),d=F$1("RovingFocusGroupItem",n),v=d.currentTabStopId===m,g=l$2(n);return React__namespace.createElement(p$1.ItemSlot,{scope:n,id:m,focusable:i,active:c},/*#__PURE__*/React__namespace.createElement(Primitive.span,_extends({tabIndex:v?0:-1,"data-orientation":d.orientation},f,{ref:o,onMouseDown:composeEventHandlers$1(e.onMouseDown,(e=>{i?d.onItemFocus(m):e.preventDefault();})),onFocus:composeEventHandlers$1(e.onFocus,(()=>d.onItemFocus(m))),onKeyDown:composeEventHandlers$1(e.onKeyDown,(e=>{if("Tab"===e.key&&e.shiftKey)return void d.onItemShiftTab();if(e.target!==e.currentTarget)return;const o=function(e,o,r){const t=function(e,o){return "rtl"!==o?e:"ArrowLeft"===e?"ArrowRight":"ArrowRight"===e?"ArrowLeft":e}(e.key,r);return "vertical"===o&&["ArrowLeft","ArrowRight"].includes(t)||"horizontal"===o&&["ArrowUp","ArrowDown"].includes(t)?void 0:b$2[t]}(e,d.orientation,d.dir);if(void 0!==o){e.preventDefault();let n=g().filter((e=>e.focusable)).map((e=>e.ref.current));if("last"===o)n.reverse();else if("prev"===o||"next"===o){"prev"===o&&n.reverse();const i=n.indexOf(e.currentTarget);n=d.loop?(t=i+1,(r=n).map(((e,o)=>r[(t+o)%r.length]))):n.slice(i+1);}setTimeout((()=>R$1(n)));}var r,t;}))})))}));const b$2={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function R$1(e){const o=document.activeElement;for(const r of e){if(r===o)return;if(r.focus(),document.activeElement!==o)return}}const Root$8=RovingFocusGroup;const Item$2=RovingFocusGroupItem;
3858
3897
 
3859
3898
  const Portal=/*#__PURE__*/React__namespace.forwardRef(((a,i)=>{var n,d;const{containerRef:s,style:u,...c}=a,m=null!==(n=null==s?void 0:s.current)&&void 0!==n?n:null===globalThis||void 0===globalThis||null===(d=globalThis.document)||void 0===d?void 0:d.body,[,f]=React__namespace.useState({});return useLayoutEffect((()=>{f({});}),[]),m?/*#__PURE__*/e__default["default"].createPortal(/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({"data-radix-portal":""},c,{ref:i,style:m===document.body?{position:"absolute",top:0,left:0,zIndex:2147483647,...u}:void 0})),m):null}));
3860
3899
 
@@ -3878,7 +3917,7 @@ function useEscapeKeydown(n){const o=useCallbackRef$1(n);React__namespace.useEff
3878
3917
 
3879
3918
  let n$1,o=0;function useBodyPointerEvents({disabled:r}){const i=React__namespace.useRef(!1);useLayoutEffect((()=>{if(r){function e(){o--,0===o&&(document.body.style.pointerEvents=n$1);}function t(e){i.current="mouse"!==e.pointerType;}return 0===o&&(n$1=document.body.style.pointerEvents),document.body.style.pointerEvents="none",o++,document.addEventListener("pointerup",t),()=>{i.current?document.addEventListener("click",e,{once:!0}):e(),document.removeEventListener("pointerup",t);}}}),[r]);}
3880
3919
 
3881
- const u=/*#__PURE__*/React__namespace.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set});const DismissableLayer=/*#__PURE__*/React__namespace.forwardRef(((l,m)=>{const{disableOutsidePointerEvents:f=!1,onEscapeKeyDown:p,onPointerDownOutside:v,onFocusOutside:b,onInteractOutside:E,onDismiss:y,...w}=l,h=React__namespace.useContext(u),[D,x]=React__namespace.useState(null),[,C]=React__namespace.useState({}),L=useComposedRefs(m,(e=>x(e))),P=Array.from(h.layers),[O]=[...h.layersWithOutsidePointerEventsDisabled].slice(-1),g=P.indexOf(O),B=D?P.indexOf(D):-1,R=h.layersWithOutsidePointerEventsDisabled.size>0,F=B>=g,S=function(e){const n=useCallbackRef$1(e),r=React__namespace.useRef(!1);return React__namespace.useEffect((()=>{const e=e=>{if(e.target&&!r.current){d("dismissableLayer.pointerDownOutside",n,{originalEvent:e});}r.current=!1;},t=window.setTimeout((()=>{document.addEventListener("pointerdown",e);}),0);return ()=>{window.clearTimeout(t),document.removeEventListener("pointerdown",e);}}),[n]),{onPointerDownCapture:()=>r.current=!0}}((e=>{const t=e.target,n=[...h.branches].some((e=>e.contains(t)));F&&!n&&(null==v||v(e),null==E||E(e),e.defaultPrevented||null==y||y());})),W=function(e){const n=useCallbackRef$1(e),r=React__namespace.useRef(!1);return React__namespace.useEffect((()=>{const e=e=>{if(e.target&&!r.current){d("dismissableLayer.focusOutside",n,{originalEvent:e});}};return document.addEventListener("focusin",e),()=>document.removeEventListener("focusin",e)}),[n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}((e=>{const t=e.target;[...h.branches].some((e=>e.contains(t)))||(null==b||b(e),null==E||E(e),e.defaultPrevented||null==y||y());}));return useEscapeKeydown((e=>{B===h.layers.size-1&&(null==p||p(e),e.defaultPrevented||null==y||y());})),useBodyPointerEvents({disabled:f}),React__namespace.useEffect((()=>{D&&(f&&h.layersWithOutsidePointerEventsDisabled.add(D),h.layers.add(D),c());}),[D,f,h]),React__namespace.useEffect((()=>()=>{D&&(h.layers.delete(D),h.layersWithOutsidePointerEventsDisabled.delete(D),c());}),[D,h]),React__namespace.useEffect((()=>{const e=()=>C({});return document.addEventListener("dismissableLayer.update",e),()=>document.removeEventListener("dismissableLayer.update",e)}),[]),/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({},w,{ref:L,style:{pointerEvents:R?F?"auto":"none":void 0,...l.style},onFocusCapture:composeEventHandlers(l.onFocusCapture,W.onFocusCapture),onBlurCapture:composeEventHandlers(l.onBlurCapture,W.onBlurCapture),onPointerDownCapture:composeEventHandlers(l.onPointerDownCapture,S.onPointerDownCapture)}))}));function c(){const e=new Event("dismissableLayer.update");document.dispatchEvent(e);}function d(e,t,n){const r=n.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});return t&&r.addEventListener(e,t,{once:!0}),!r.dispatchEvent(s)}
3920
+ const u=/*#__PURE__*/React__namespace.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set});const DismissableLayer=/*#__PURE__*/React__namespace.forwardRef(((l,m)=>{const{disableOutsidePointerEvents:f=!1,onEscapeKeyDown:p,onPointerDownOutside:v,onFocusOutside:b,onInteractOutside:E,onDismiss:y,...w}=l,h=React__namespace.useContext(u),[D,x]=React__namespace.useState(null),[,C]=React__namespace.useState({}),L=useComposedRefs(m,(e=>x(e))),P=Array.from(h.layers),[O]=[...h.layersWithOutsidePointerEventsDisabled].slice(-1),g=P.indexOf(O),B=D?P.indexOf(D):-1,R=h.layersWithOutsidePointerEventsDisabled.size>0,F=B>=g,S=function(e){const n=useCallbackRef$1(e),r=React__namespace.useRef(!1);return React__namespace.useEffect((()=>{const e=e=>{if(e.target&&!r.current){d("dismissableLayer.pointerDownOutside",n,{originalEvent:e});}r.current=!1;},t=window.setTimeout((()=>{document.addEventListener("pointerdown",e);}),0);return ()=>{window.clearTimeout(t),document.removeEventListener("pointerdown",e);}}),[n]),{onPointerDownCapture:()=>r.current=!0}}((e=>{const t=e.target,n=[...h.branches].some((e=>e.contains(t)));F&&!n&&(null==v||v(e),null==E||E(e),e.defaultPrevented||null==y||y());})),W=function(e){const n=useCallbackRef$1(e),r=React__namespace.useRef(!1);return React__namespace.useEffect((()=>{const e=e=>{if(e.target&&!r.current){d("dismissableLayer.focusOutside",n,{originalEvent:e});}};return document.addEventListener("focusin",e),()=>document.removeEventListener("focusin",e)}),[n]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}((e=>{const t=e.target;[...h.branches].some((e=>e.contains(t)))||(null==b||b(e),null==E||E(e),e.defaultPrevented||null==y||y());}));return useEscapeKeydown((e=>{B===h.layers.size-1&&(null==p||p(e),e.defaultPrevented||null==y||y());})),useBodyPointerEvents({disabled:f}),React__namespace.useEffect((()=>{D&&(f&&h.layersWithOutsidePointerEventsDisabled.add(D),h.layers.add(D),c());}),[D,f,h]),React__namespace.useEffect((()=>()=>{D&&(h.layers.delete(D),h.layersWithOutsidePointerEventsDisabled.delete(D),c());}),[D,h]),React__namespace.useEffect((()=>{const e=()=>C({});return document.addEventListener("dismissableLayer.update",e),()=>document.removeEventListener("dismissableLayer.update",e)}),[]),/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({},w,{ref:L,style:{pointerEvents:R?F?"auto":"none":void 0,...l.style},onFocusCapture:composeEventHandlers$1(l.onFocusCapture,W.onFocusCapture),onBlurCapture:composeEventHandlers$1(l.onBlurCapture,W.onBlurCapture),onPointerDownCapture:composeEventHandlers$1(l.onPointerDownCapture,S.onPointerDownCapture)}))}));function c(){const e=new Event("dismissableLayer.update");document.dispatchEvent(e);}function d(e,t,n){const r=n.originalEvent.target,s=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});return t&&r.addEventListener(e,t,{once:!0}),!r.dispatchEvent(s)}
3882
3921
 
3883
3922
  var getDefaultParent = function (originalTarget) {
3884
3923
  if (typeof document === 'undefined') {
@@ -4004,7 +4043,7 @@ function __rest$1(s, e) {
4004
4043
  return t;
4005
4044
  }
4006
4045
 
4007
- function __spreadArray(to, from, pack) {
4046
+ function __spreadArray$1(to, from, pack) {
4008
4047
  if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4009
4048
  if (ar || !(i in from)) {
4010
4049
  if (!ar) ar = Array.prototype.slice.call(from, 0, i);
@@ -4556,7 +4595,7 @@ function RemoveScrollSideCar(props) {
4556
4595
  React__namespace.useEffect(function () {
4557
4596
  if (props.inert) {
4558
4597
  document.body.classList.add("block-interactivity-".concat(id));
4559
- var allow_1 = __spreadArray([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);
4598
+ var allow_1 = __spreadArray$1([props.lockRef.current], (props.shards || []).map(extractRef), true).filter(Boolean);
4560
4599
  allow_1.forEach(function (el) { return el.classList.add("allow-interactivity-".concat(id)); });
4561
4600
  return function () {
4562
4601
  document.body.classList.remove("block-interactivity-".concat(id));
@@ -4675,42 +4714,12 @@ var ReactRemoveScroll = React__namespace.forwardRef(function (props, ref) { retu
4675
4714
  ReactRemoveScroll.classNames = RemoveScroll.classNames;
4676
4715
  var C = ReactRemoveScroll;
4677
4716
 
4678
- const x$1=["Enter"," "],b$1=["ArrowUp","PageDown","End"],R=["ArrowDown","PageUp","Home",...b$1],y$1={ltr:["ArrowLeft"],rtl:["ArrowRight"]},[I,k$1,P]=createCollection("Menu"),[D$1,S]=createContextScope("Menu",[P,l$1,v$1]);const O=l$1(),T=v$1(),[L,A]=D$1("Menu");const Menu=e=>{const{__scopeMenu:n,open:o=!1,children:u,onOpenChange:c,modal:i=!0}=e,s=O(n),[l,d]=React__namespace.useState(null),p=React__namespace.useRef(!1),f=useCallbackRef$1(c),m=useDirection(l,e.dir);return React__namespace.useEffect((()=>{const e=()=>{p.current=!0,document.addEventListener("pointerdown",n,{capture:!0,once:!0}),document.addEventListener("pointermove",n,{capture:!0,once:!0});},n=()=>p.current=!1;return document.addEventListener("keydown",e,{capture:!0}),()=>{document.removeEventListener("keydown",e,{capture:!0}),document.removeEventListener("pointerdown",n,{capture:!0}),document.removeEventListener("pointermove",n,{capture:!0});}}),[]),/*#__PURE__*/React__namespace.createElement(Root$6,s,/*#__PURE__*/React__namespace.createElement(L,{scope:n,isSubmenu:!1,isUsingKeyboardRef:p,dir:m,open:o,onOpenChange:f,content:l,onContentChange:d,onRootClose:React__namespace.useCallback((()=>f(!1)),[f]),modal:i},u))};const MenuSub=n=>{const{__scopeMenu:r,children:o,open:u=!1,onOpenChange:c}=n,i=A("MenuSub",r),s=O(r),[l,d]=React__namespace.useState(null),[p,f]=React__namespace.useState(null),m=useCallbackRef$1(c);return React__namespace.useEffect((()=>(!1===i.open&&m(!1),()=>m(!1))),[i.open,m]),/*#__PURE__*/React__namespace.createElement(Root$6,s,/*#__PURE__*/React__namespace.createElement(L,{scope:r,isSubmenu:!0,isUsingKeyboardRef:i.isUsingKeyboardRef,dir:i.dir,open:u,onOpenChange:m,content:p,onContentChange:f,onRootClose:i.onRootClose,contentId:useId(),trigger:l,onTriggerChange:d,triggerId:useId(),modal:!1},o))};const MenuAnchor=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=O(t);return React__namespace.createElement(Anchor$1,_extends({},o,r,{ref:n}))}));const[F,K]=D$1("MenuContent");const MenuContent=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{forceMount:t,...r}=e,o=A("MenuContent",e.__scopeMenu);return React__namespace.createElement(I.Provider,{scope:e.__scopeMenu},/*#__PURE__*/React__namespace.createElement(Presence,{present:t||o.open},/*#__PURE__*/React__namespace.createElement(I.Slot,{scope:e.__scopeMenu},o.isSubmenu?/*#__PURE__*/React__namespace.createElement(X,_extends({},r,{ref:n})):/*#__PURE__*/React__namespace.createElement(G,_extends({},r,{ref:n})))))}));const G=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>A("MenuContent",e.__scopeMenu).modal?/*#__PURE__*/React__namespace.createElement(U,_extends({},e,{ref:n})):/*#__PURE__*/React__namespace.createElement(V,_extends({},e,{ref:n})))),U=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const t=A("MenuContent",e.__scopeMenu),r=React__namespace.useRef(null),o=useComposedRefs(n,r);return React__namespace.useEffect((()=>{const e=r.current;if(e)return hideOthers(e)}),[]),/*#__PURE__*/React__namespace.createElement(B,_extends({},e,{ref:o,trapFocus:t.open,disableOutsidePointerEvents:t.open,disableOutsideScroll:!0,onFocusOutside:composeEventHandlers(e.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1}),onDismiss:()=>t.onOpenChange(!1)}))})),V=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const t=A("MenuContent",e.__scopeMenu);return React__namespace.createElement(B,_extends({},e,{ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)}))})),X=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const t=A("MenuContent",e.__scopeMenu),r=React__namespace.useRef(null),o=useComposedRefs(n,r);return t.isSubmenu?/*#__PURE__*/React__namespace.createElement(B,_extends({id:t.contentId,"aria-labelledby":t.triggerId},e,{ref:o,align:"start",side:"rtl"===t.dir?"left":"right",portalled:!0,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{var n;t.isUsingKeyboardRef.current&&(null===(n=r.current)||void 0===n||n.focus()),e.preventDefault();},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:composeEventHandlers(e.onFocusOutside,(e=>{e.target!==t.trigger&&t.onOpenChange(!1);})),onEscapeKeyDown:composeEventHandlers(e.onEscapeKeyDown,t.onRootClose),onKeyDown:composeEventHandlers(e.onKeyDown,(e=>{const n=e.currentTarget.contains(e.target),r=y$1[t.dir].includes(e.key);var o;n&&r&&(t.onOpenChange(!1),null===(o=t.trigger)||void 0===o||o.focus(),e.preventDefault());}))})):null})),B=/*#__PURE__*/React__namespace.forwardRef(((e,t)=>{const{__scopeMenu:r,loop:u=!1,trapFocus:i,onOpenAutoFocus:s,onCloseAutoFocus:l,disableOutsidePointerEvents:f,onEscapeKeyDown:v,onPointerDownOutside:g,onFocusOutside:h,onInteractOutside:x,onDismiss:_,disableOutsideScroll:y,allowPinchZoom:I,portalled:P,...D}=e,S=A("MenuContent",r),L=O(r),K=T(r),G=k$1(r),[U,V]=React__namespace.useState(null),X=React__namespace.useRef(null),B=useComposedRefs(t,X,S.onContentChange),Y=React__namespace.useRef(0),Z=React__namespace.useRef(""),z=React__namespace.useRef(0),H=React__namespace.useRef(null),W=React__namespace.useRef("right"),q=React__namespace.useRef(0),N=P?Portal:React__namespace.Fragment,Q=y?C:React__namespace.Fragment,$=y?{allowPinchZoom:I}:void 0,ee=e=>{var n,t;const r=Z.current+e,o=G().filter((e=>!e.disabled)),u=document.activeElement,c=null===(n=o.find((e=>e.ref.current===u)))||void 0===n?void 0:n.textValue,a=function(e,n,t){const r=n.length>1&&Array.from(n).every((e=>e===n[0]))?n[0]:n,o=t?e.indexOf(t):-1;let u=(c=e,a=Math.max(o,0),c.map(((e,n)=>c[(a+n)%c.length])));var c,a;1===r.length&&(u=u.filter((e=>e!==t)));const i=u.find((e=>e.toLowerCase().startsWith(r.toLowerCase())));return i!==t?i:void 0}(o.map((e=>e.textValue)),r,c),i=null===(t=o.find((e=>e.textValue===a)))||void 0===t?void 0:t.ref.current;!function e(n){Z.current=n,window.clearTimeout(Y.current),""!==n&&(Y.current=window.setTimeout((()=>e("")),1e3));}(r),i&&setTimeout((()=>i.focus()));};React__namespace.useEffect((()=>()=>window.clearTimeout(Y.current)),[]),useFocusGuards();const ne=React__namespace.useCallback((e=>{var n,t;return W.current===(null===(n=H.current)||void 0===n?void 0:n.side)&&function(e,n){if(!n)return !1;return function(e,n){const{x:t,y:r}=e;let o=!1;for(let e=0,u=n.length-1;e<n.length;u=e++){const c=n[e].x,a=n[e].y,i=n[u].x,s=n[u].y;a>r!=s>r&&t<(i-c)*(r-a)/(s-a)+c&&(o=!o);}return o}({x:e.clientX,y:e.clientY},n)}(e,null===(t=H.current)||void 0===t?void 0:t.area)}),[]);return React__namespace.createElement(N,null,/*#__PURE__*/React__namespace.createElement(Q,$,/*#__PURE__*/React__namespace.createElement(F,{scope:r,searchRef:Z,onItemEnter:React__namespace.useCallback((e=>{ne(e)&&e.preventDefault();}),[ne]),onItemLeave:React__namespace.useCallback((e=>{var n;ne(e)||(null===(n=X.current)||void 0===n||n.focus(),V(null));}),[ne]),onTriggerLeave:React__namespace.useCallback((e=>{ne(e)&&e.preventDefault();}),[ne]),pointerGraceTimerRef:z,onPointerGraceIntentChange:React__namespace.useCallback((e=>{H.current=e;}),[])},/*#__PURE__*/React__namespace.createElement(FocusScope,{asChild:!0,trapped:i,onMountAutoFocus:composeEventHandlers(s,(e=>{var n;e.preventDefault(),null===(n=X.current)||void 0===n||n.focus();})),onUnmountAutoFocus:l},/*#__PURE__*/React__namespace.createElement(DismissableLayer,{asChild:!0,disableOutsidePointerEvents:f,onEscapeKeyDown:v,onPointerDownOutside:g,onFocusOutside:h,onInteractOutside:x,onDismiss:_},/*#__PURE__*/React__namespace.createElement(Root$8,_extends({asChild:!0},K,{dir:S.dir,orientation:"vertical",loop:u,currentTabStopId:U,onCurrentTabStopIdChange:V,onEntryFocus:e=>{S.isUsingKeyboardRef.current||e.preventDefault();}}),/*#__PURE__*/React__namespace.createElement(Content$4,_extends({role:"menu","aria-orientation":"vertical","data-state":j(S.open),dir:S.dir},L,D,{ref:B,style:{outline:"none",...D.style},onKeyDown:composeEventHandlers(D.onKeyDown,(e=>{const n=e.target,t=e.currentTarget.contains(n),r=e.ctrlKey||e.altKey||e.metaKey,o=1===e.key.length;t&&("Tab"===e.key&&e.preventDefault(),!r&&o&&ee(e.key));const u=X.current;if(e.target!==u)return;if(!R.includes(e.key))return;e.preventDefault();const c=G().filter((e=>!e.disabled)).map((e=>e.ref.current));b$1.includes(e.key)&&c.reverse(),function(e){const n=document.activeElement;for(const t of e){if(t===n)return;if(t.focus(),document.activeElement!==n)return}}(c);})),onBlur:composeEventHandlers(e.onBlur,(e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(Y.current),Z.current="");})),onPointerMove:composeEventHandlers(e.onPointerMove,J((e=>{const n=e.target,t=q.current!==e.clientX;if(e.currentTarget.contains(n)&&t){const n=e.clientX>q.current?"right":"left";W.current=n,q.current=e.clientX;}})))}))))))))}));const MenuGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return React__namespace.createElement(Primitive.div,_extends({role:"group"},r,{ref:n}))}));const MenuLabel=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return React__namespace.createElement(Primitive.div,_extends({},r,{ref:n}))}));const MenuItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{disabled:t=!1,onSelect:r,...o}=e,u=React__namespace.useRef(null),c=A("MenuItem",e.__scopeMenu),a=K("MenuItem",e.__scopeMenu),i=useComposedRefs(n,u),s=React__namespace.useRef(!1);return React__namespace.createElement(Y,_extends({},o,{ref:i,disabled:t,onClick:composeEventHandlers(e.onClick,(()=>{const e=u.current;if(!t&&e){const n=new Event("menu.itemSelect",{bubbles:!0,cancelable:!0});e.addEventListener("menu.itemSelect",(e=>null==r?void 0:r(e)),{once:!0}),e.dispatchEvent(n),n.defaultPrevented?s.current=!1:c.onRootClose();}})),onPointerDown:n=>{var t;null===(t=e.onPointerDown)||void 0===t||t.call(e,n),s.current=!0;},onPointerUp:composeEventHandlers(e.onPointerUp,(e=>{var n;s.current||null===(n=e.currentTarget)||void 0===n||n.click();})),onKeyDown:composeEventHandlers(e.onKeyDown,(e=>{const n=""!==a.searchRef.current;t||n&&" "===e.key||x$1.includes(e.key)&&(e.currentTarget.click(),e.preventDefault());}))}))}));const Y=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,disabled:r=!1,textValue:u,...c}=e,a=K("MenuItem",t),i=T(t),l=React__namespace.useRef(null),d=useComposedRefs(n,l),[p,f]=React__namespace.useState("");return React__namespace.useEffect((()=>{const e=l.current;var n;e&&f((null!==(n=e.textContent)&&void 0!==n?n:"").trim());}),[c.children]),/*#__PURE__*/React__namespace.createElement(I.ItemSlot,{scope:t,disabled:r,textValue:null!=u?u:p},/*#__PURE__*/React__namespace.createElement(Item$2,_extends({asChild:!0},i,{focusable:!r}),/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({role:"menuitem","aria-disabled":r||void 0,"data-disabled":r?"":void 0},c,{ref:d,onPointerMove:composeEventHandlers(e.onPointerMove,J((e=>{if(r)a.onItemLeave(e);else if(a.onItemEnter(e),!e.defaultPrevented){e.currentTarget.focus();}}))),onPointerLeave:composeEventHandlers(e.onPointerLeave,J((e=>a.onItemLeave(e))))}))))}));const MenuCheckboxItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{checked:t=!1,onCheckedChange:r,...o}=e;return React__namespace.createElement(H,{scope:e.__scopeMenu,checked:t},/*#__PURE__*/React__namespace.createElement(MenuItem,_extends({role:"menuitemcheckbox","aria-checked":t},o,{ref:n,"data-state":q(t),onSelect:composeEventHandlers(o.onSelect,(()=>null==r?void 0:r(!t)),{checkForDefaultPrevented:!1})})))}));const[Z,z]=D$1("MenuRadioGroup",{value:void 0,onValueChange:()=>{}});const MenuRadioGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{value:r,onValueChange:o,...u}=e,c=useCallbackRef$1(o);return React__namespace.createElement(Z,{scope:e.__scopeMenu,value:r,onValueChange:c},/*#__PURE__*/React__namespace.createElement(MenuGroup,_extends({},u,{ref:n})))}));const MenuRadioItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{value:t,...r}=e,o=z("MenuRadioItem",e.__scopeMenu),u=t===o.value;return React__namespace.createElement(H,{scope:e.__scopeMenu,checked:u},/*#__PURE__*/React__namespace.createElement(MenuItem,_extends({role:"menuitemradio","aria-checked":u},r,{ref:n,"data-state":q(u),onSelect:composeEventHandlers(r.onSelect,(()=>{var e;return null===(e=o.onValueChange)||void 0===e?void 0:e.call(o,t)}),{checkForDefaultPrevented:!1})})))}));const[H,W]=D$1("MenuItemIndicator",{checked:!1});const MenuItemIndicator=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,forceMount:r,...o}=e,u=W("MenuItemIndicator",t);return React__namespace.createElement(Presence,{present:r||u.checked},/*#__PURE__*/React__namespace.createElement(Primitive.span,_extends({},o,{ref:n,"data-state":q(u.checked)})))}));const MenuArrow=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=O(t);return React__namespace.createElement(Arrow$4,_extends({},o,r,{ref:n}))}));function j(e){return e?"open":"closed"}function q(e){return e?"checked":"unchecked"}function J(e){return n=>"mouse"===n.pointerType?e(n):void 0}const Root$5=Menu;const Sub=MenuSub;const Anchor=MenuAnchor;const Content$3=MenuContent;const Group$1=MenuGroup;const Label$1=MenuLabel;const Item$1=MenuItem;const CheckboxItem$1=MenuCheckboxItem;const RadioGroup$1=MenuRadioGroup;const RadioItem$1=MenuRadioItem;const ItemIndicator$1=MenuItemIndicator;const Arrow$3=MenuArrow;
4717
+ const x$1=["Enter"," "],b$1=["ArrowUp","PageDown","End"],R=["ArrowDown","PageUp","Home",...b$1],y$1={ltr:["ArrowLeft"],rtl:["ArrowRight"]},[I,k$1,P]=createCollection("Menu"),[D$1,S]=createContextScope("Menu",[P,l$1,v$1]);const O=l$1(),T=v$1(),[L,A]=D$1("Menu");const Menu=e=>{const{__scopeMenu:n,open:o=!1,children:u,onOpenChange:c,modal:i=!0}=e,s=O(n),[l,d]=React__namespace.useState(null),p=React__namespace.useRef(!1),f=useCallbackRef$1(c),m=useDirection(l,e.dir);return React__namespace.useEffect((()=>{const e=()=>{p.current=!0,document.addEventListener("pointerdown",n,{capture:!0,once:!0}),document.addEventListener("pointermove",n,{capture:!0,once:!0});},n=()=>p.current=!1;return document.addEventListener("keydown",e,{capture:!0}),()=>{document.removeEventListener("keydown",e,{capture:!0}),document.removeEventListener("pointerdown",n,{capture:!0}),document.removeEventListener("pointermove",n,{capture:!0});}}),[]),/*#__PURE__*/React__namespace.createElement(Root$6,s,/*#__PURE__*/React__namespace.createElement(L,{scope:n,isSubmenu:!1,isUsingKeyboardRef:p,dir:m,open:o,onOpenChange:f,content:l,onContentChange:d,onRootClose:React__namespace.useCallback((()=>f(!1)),[f]),modal:i},u))};const MenuSub=n=>{const{__scopeMenu:r,children:o,open:u=!1,onOpenChange:c}=n,i=A("MenuSub",r),s=O(r),[l,d]=React__namespace.useState(null),[p,f]=React__namespace.useState(null),m=useCallbackRef$1(c);return React__namespace.useEffect((()=>(!1===i.open&&m(!1),()=>m(!1))),[i.open,m]),/*#__PURE__*/React__namespace.createElement(Root$6,s,/*#__PURE__*/React__namespace.createElement(L,{scope:r,isSubmenu:!0,isUsingKeyboardRef:i.isUsingKeyboardRef,dir:i.dir,open:u,onOpenChange:m,content:p,onContentChange:f,onRootClose:i.onRootClose,contentId:useId(),trigger:l,onTriggerChange:d,triggerId:useId(),modal:!1},o))};const MenuAnchor=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=O(t);return React__namespace.createElement(Anchor$1,_extends({},o,r,{ref:n}))}));const[F,K]=D$1("MenuContent");const MenuContent=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{forceMount:t,...r}=e,o=A("MenuContent",e.__scopeMenu);return React__namespace.createElement(I.Provider,{scope:e.__scopeMenu},/*#__PURE__*/React__namespace.createElement(Presence,{present:t||o.open},/*#__PURE__*/React__namespace.createElement(I.Slot,{scope:e.__scopeMenu},o.isSubmenu?/*#__PURE__*/React__namespace.createElement(X,_extends({},r,{ref:n})):/*#__PURE__*/React__namespace.createElement(G,_extends({},r,{ref:n})))))}));const G=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>A("MenuContent",e.__scopeMenu).modal?/*#__PURE__*/React__namespace.createElement(U,_extends({},e,{ref:n})):/*#__PURE__*/React__namespace.createElement(V,_extends({},e,{ref:n})))),U=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const t=A("MenuContent",e.__scopeMenu),r=React__namespace.useRef(null),o=useComposedRefs(n,r);return React__namespace.useEffect((()=>{const e=r.current;if(e)return hideOthers(e)}),[]),/*#__PURE__*/React__namespace.createElement(B,_extends({},e,{ref:o,trapFocus:t.open,disableOutsidePointerEvents:t.open,disableOutsideScroll:!0,onFocusOutside:composeEventHandlers$1(e.onFocusOutside,(e=>e.preventDefault()),{checkForDefaultPrevented:!1}),onDismiss:()=>t.onOpenChange(!1)}))})),V=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const t=A("MenuContent",e.__scopeMenu);return React__namespace.createElement(B,_extends({},e,{ref:n,trapFocus:!1,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,onDismiss:()=>t.onOpenChange(!1)}))})),X=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const t=A("MenuContent",e.__scopeMenu),r=React__namespace.useRef(null),o=useComposedRefs(n,r);return t.isSubmenu?/*#__PURE__*/React__namespace.createElement(B,_extends({id:t.contentId,"aria-labelledby":t.triggerId},e,{ref:o,align:"start",side:"rtl"===t.dir?"left":"right",portalled:!0,disableOutsidePointerEvents:!1,disableOutsideScroll:!1,trapFocus:!1,onOpenAutoFocus:e=>{var n;t.isUsingKeyboardRef.current&&(null===(n=r.current)||void 0===n||n.focus()),e.preventDefault();},onCloseAutoFocus:e=>e.preventDefault(),onFocusOutside:composeEventHandlers$1(e.onFocusOutside,(e=>{e.target!==t.trigger&&t.onOpenChange(!1);})),onEscapeKeyDown:composeEventHandlers$1(e.onEscapeKeyDown,t.onRootClose),onKeyDown:composeEventHandlers$1(e.onKeyDown,(e=>{const n=e.currentTarget.contains(e.target),r=y$1[t.dir].includes(e.key);var o;n&&r&&(t.onOpenChange(!1),null===(o=t.trigger)||void 0===o||o.focus(),e.preventDefault());}))})):null})),B=/*#__PURE__*/React__namespace.forwardRef(((e,t)=>{const{__scopeMenu:r,loop:u=!1,trapFocus:i,onOpenAutoFocus:s,onCloseAutoFocus:l,disableOutsidePointerEvents:f,onEscapeKeyDown:v,onPointerDownOutside:g,onFocusOutside:h,onInteractOutside:x,onDismiss:_,disableOutsideScroll:y,allowPinchZoom:I,portalled:P,...D}=e,S=A("MenuContent",r),L=O(r),K=T(r),G=k$1(r),[U,V]=React__namespace.useState(null),X=React__namespace.useRef(null),B=useComposedRefs(t,X,S.onContentChange),Y=React__namespace.useRef(0),Z=React__namespace.useRef(""),z=React__namespace.useRef(0),H=React__namespace.useRef(null),W=React__namespace.useRef("right"),q=React__namespace.useRef(0),N=P?Portal:React__namespace.Fragment,Q=y?C:React__namespace.Fragment,$=y?{allowPinchZoom:I}:void 0,ee=e=>{var n,t;const r=Z.current+e,o=G().filter((e=>!e.disabled)),u=document.activeElement,c=null===(n=o.find((e=>e.ref.current===u)))||void 0===n?void 0:n.textValue,a=function(e,n,t){const r=n.length>1&&Array.from(n).every((e=>e===n[0]))?n[0]:n,o=t?e.indexOf(t):-1;let u=(c=e,a=Math.max(o,0),c.map(((e,n)=>c[(a+n)%c.length])));var c,a;1===r.length&&(u=u.filter((e=>e!==t)));const i=u.find((e=>e.toLowerCase().startsWith(r.toLowerCase())));return i!==t?i:void 0}(o.map((e=>e.textValue)),r,c),i=null===(t=o.find((e=>e.textValue===a)))||void 0===t?void 0:t.ref.current;!function e(n){Z.current=n,window.clearTimeout(Y.current),""!==n&&(Y.current=window.setTimeout((()=>e("")),1e3));}(r),i&&setTimeout((()=>i.focus()));};React__namespace.useEffect((()=>()=>window.clearTimeout(Y.current)),[]),useFocusGuards();const ne=React__namespace.useCallback((e=>{var n,t;return W.current===(null===(n=H.current)||void 0===n?void 0:n.side)&&function(e,n){if(!n)return !1;return function(e,n){const{x:t,y:r}=e;let o=!1;for(let e=0,u=n.length-1;e<n.length;u=e++){const c=n[e].x,a=n[e].y,i=n[u].x,s=n[u].y;a>r!=s>r&&t<(i-c)*(r-a)/(s-a)+c&&(o=!o);}return o}({x:e.clientX,y:e.clientY},n)}(e,null===(t=H.current)||void 0===t?void 0:t.area)}),[]);return React__namespace.createElement(N,null,/*#__PURE__*/React__namespace.createElement(Q,$,/*#__PURE__*/React__namespace.createElement(F,{scope:r,searchRef:Z,onItemEnter:React__namespace.useCallback((e=>{ne(e)&&e.preventDefault();}),[ne]),onItemLeave:React__namespace.useCallback((e=>{var n;ne(e)||(null===(n=X.current)||void 0===n||n.focus(),V(null));}),[ne]),onTriggerLeave:React__namespace.useCallback((e=>{ne(e)&&e.preventDefault();}),[ne]),pointerGraceTimerRef:z,onPointerGraceIntentChange:React__namespace.useCallback((e=>{H.current=e;}),[])},/*#__PURE__*/React__namespace.createElement(FocusScope,{asChild:!0,trapped:i,onMountAutoFocus:composeEventHandlers$1(s,(e=>{var n;e.preventDefault(),null===(n=X.current)||void 0===n||n.focus();})),onUnmountAutoFocus:l},/*#__PURE__*/React__namespace.createElement(DismissableLayer,{asChild:!0,disableOutsidePointerEvents:f,onEscapeKeyDown:v,onPointerDownOutside:g,onFocusOutside:h,onInteractOutside:x,onDismiss:_},/*#__PURE__*/React__namespace.createElement(Root$8,_extends({asChild:!0},K,{dir:S.dir,orientation:"vertical",loop:u,currentTabStopId:U,onCurrentTabStopIdChange:V,onEntryFocus:e=>{S.isUsingKeyboardRef.current||e.preventDefault();}}),/*#__PURE__*/React__namespace.createElement(Content$4,_extends({role:"menu","aria-orientation":"vertical","data-state":j(S.open),dir:S.dir},L,D,{ref:B,style:{outline:"none",...D.style},onKeyDown:composeEventHandlers$1(D.onKeyDown,(e=>{const n=e.target,t=e.currentTarget.contains(n),r=e.ctrlKey||e.altKey||e.metaKey,o=1===e.key.length;t&&("Tab"===e.key&&e.preventDefault(),!r&&o&&ee(e.key));const u=X.current;if(e.target!==u)return;if(!R.includes(e.key))return;e.preventDefault();const c=G().filter((e=>!e.disabled)).map((e=>e.ref.current));b$1.includes(e.key)&&c.reverse(),function(e){const n=document.activeElement;for(const t of e){if(t===n)return;if(t.focus(),document.activeElement!==n)return}}(c);})),onBlur:composeEventHandlers$1(e.onBlur,(e=>{e.currentTarget.contains(e.target)||(window.clearTimeout(Y.current),Z.current="");})),onPointerMove:composeEventHandlers$1(e.onPointerMove,J((e=>{const n=e.target,t=q.current!==e.clientX;if(e.currentTarget.contains(n)&&t){const n=e.clientX>q.current?"right":"left";W.current=n,q.current=e.clientX;}})))}))))))))}));const MenuGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return React__namespace.createElement(Primitive.div,_extends({role:"group"},r,{ref:n}))}));const MenuLabel=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e;return React__namespace.createElement(Primitive.div,_extends({},r,{ref:n}))}));const MenuItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{disabled:t=!1,onSelect:r,...o}=e,u=React__namespace.useRef(null),c=A("MenuItem",e.__scopeMenu),a=K("MenuItem",e.__scopeMenu),i=useComposedRefs(n,u),s=React__namespace.useRef(!1);return React__namespace.createElement(Y,_extends({},o,{ref:i,disabled:t,onClick:composeEventHandlers$1(e.onClick,(()=>{const e=u.current;if(!t&&e){const n=new Event("menu.itemSelect",{bubbles:!0,cancelable:!0});e.addEventListener("menu.itemSelect",(e=>null==r?void 0:r(e)),{once:!0}),e.dispatchEvent(n),n.defaultPrevented?s.current=!1:c.onRootClose();}})),onPointerDown:n=>{var t;null===(t=e.onPointerDown)||void 0===t||t.call(e,n),s.current=!0;},onPointerUp:composeEventHandlers$1(e.onPointerUp,(e=>{var n;s.current||null===(n=e.currentTarget)||void 0===n||n.click();})),onKeyDown:composeEventHandlers$1(e.onKeyDown,(e=>{const n=""!==a.searchRef.current;t||n&&" "===e.key||x$1.includes(e.key)&&(e.currentTarget.click(),e.preventDefault());}))}))}));const Y=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,disabled:r=!1,textValue:u,...c}=e,a=K("MenuItem",t),i=T(t),l=React__namespace.useRef(null),d=useComposedRefs(n,l),[p,f]=React__namespace.useState("");return React__namespace.useEffect((()=>{const e=l.current;var n;e&&f((null!==(n=e.textContent)&&void 0!==n?n:"").trim());}),[c.children]),/*#__PURE__*/React__namespace.createElement(I.ItemSlot,{scope:t,disabled:r,textValue:null!=u?u:p},/*#__PURE__*/React__namespace.createElement(Item$2,_extends({asChild:!0},i,{focusable:!r}),/*#__PURE__*/React__namespace.createElement(Primitive.div,_extends({role:"menuitem","aria-disabled":r||void 0,"data-disabled":r?"":void 0},c,{ref:d,onPointerMove:composeEventHandlers$1(e.onPointerMove,J((e=>{if(r)a.onItemLeave(e);else if(a.onItemEnter(e),!e.defaultPrevented){e.currentTarget.focus();}}))),onPointerLeave:composeEventHandlers$1(e.onPointerLeave,J((e=>a.onItemLeave(e))))}))))}));const MenuCheckboxItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{checked:t=!1,onCheckedChange:r,...o}=e;return React__namespace.createElement(H,{scope:e.__scopeMenu,checked:t},/*#__PURE__*/React__namespace.createElement(MenuItem,_extends({role:"menuitemcheckbox","aria-checked":t},o,{ref:n,"data-state":q(t),onSelect:composeEventHandlers$1(o.onSelect,(()=>null==r?void 0:r(!t)),{checkForDefaultPrevented:!1})})))}));const[Z,z]=D$1("MenuRadioGroup",{value:void 0,onValueChange:()=>{}});const MenuRadioGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{value:r,onValueChange:o,...u}=e,c=useCallbackRef$1(o);return React__namespace.createElement(Z,{scope:e.__scopeMenu,value:r,onValueChange:c},/*#__PURE__*/React__namespace.createElement(MenuGroup,_extends({},u,{ref:n})))}));const MenuRadioItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{value:t,...r}=e,o=z("MenuRadioItem",e.__scopeMenu),u=t===o.value;return React__namespace.createElement(H,{scope:e.__scopeMenu,checked:u},/*#__PURE__*/React__namespace.createElement(MenuItem,_extends({role:"menuitemradio","aria-checked":u},r,{ref:n,"data-state":q(u),onSelect:composeEventHandlers$1(r.onSelect,(()=>{var e;return null===(e=o.onValueChange)||void 0===e?void 0:e.call(o,t)}),{checkForDefaultPrevented:!1})})))}));const[H,W]=D$1("MenuItemIndicator",{checked:!1});const MenuItemIndicator=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,forceMount:r,...o}=e,u=W("MenuItemIndicator",t);return React__namespace.createElement(Presence,{present:r||u.checked},/*#__PURE__*/React__namespace.createElement(Primitive.span,_extends({},o,{ref:n,"data-state":q(u.checked)})))}));const MenuArrow=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeMenu:t,...r}=e,o=O(t);return React__namespace.createElement(Arrow$4,_extends({},o,r,{ref:n}))}));function j(e){return e?"open":"closed"}function q(e){return e?"checked":"unchecked"}function J(e){return n=>"mouse"===n.pointerType?e(n):void 0}const Root$5=Menu;const Sub=MenuSub;const Anchor=MenuAnchor;const Content$3=MenuContent;const Group$1=MenuGroup;const Label$1=MenuLabel;const Item$1=MenuItem;const CheckboxItem$1=MenuCheckboxItem;const RadioGroup$1=MenuRadioGroup;const RadioItem$1=MenuRadioItem;const ItemIndicator$1=MenuItemIndicator;const Arrow$3=MenuArrow;
4679
4718
 
4680
- const[s,i$1]=createContextScope("DropdownMenu",[S]);const l=S(),[m,w$1]=s("DropdownMenu");const DropdownMenu=e=>{const{__scopeDropdownMenu:n,children:r,open:p,defaultOpen:d,onOpenChange:a}=e,s=M("DropdownMenu",n),i=l(n),[w=!1,D]=useControllableState({prop:p,defaultProp:d,onChange:a}),g=React__namespace.useCallback((()=>D((e=>!e))),[D]);return s.isInsideContent?/*#__PURE__*/React__namespace.createElement(m,{scope:n,isRootMenu:!1,open:w,onOpenChange:D,onOpenToggle:g},/*#__PURE__*/React__namespace.createElement(Sub,_extends({},i,{open:w,onOpenChange:D}),r)):/*#__PURE__*/React__namespace.createElement(f,_extends({},e,{open:w,onOpenChange:D,onOpenToggle:g}),r)};const f=n=>{const{__scopeDropdownMenu:r,children:t,dir:p,open:d,onOpenChange:a,onOpenToggle:s,modal:i=!0}=n,w=l(r),f=React__namespace.useRef(null);return React__namespace.createElement(m,{scope:r,isRootMenu:!0,triggerId:useId(),triggerRef:f,contentId:useId(),open:d,onOpenChange:a,onOpenToggle:s,modal:i},/*#__PURE__*/React__namespace.createElement(Root$5,_extends({},w,{open:d,onOpenChange:a,dir:p,modal:i}),t))};const DropdownMenuTrigger=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,disabled:p=!1,...s}=e,i=w$1("DropdownMenuTrigger",t),m=l(t);return i.isRootMenu?/*#__PURE__*/React__namespace.createElement(Anchor,_extends({asChild:!0},m),/*#__PURE__*/React__namespace.createElement(Primitive.button,_extends({type:"button",id:i.triggerId,"aria-haspopup":"menu","aria-expanded":!!i.open||void 0,"aria-controls":i.open?i.contentId:void 0,"data-state":i.open?"open":"closed","data-disabled":p?"":void 0,disabled:p},s,{ref:composeRefs(n,i.triggerRef),onPointerDown:composeEventHandlers(e.onPointerDown,(e=>{p||0!==e.button||!1!==e.ctrlKey||(i.open||e.preventDefault(),i.onOpenToggle());})),onKeyDown:composeEventHandlers(e.onKeyDown,(e=>{p||(["Enter"," "].includes(e.key)&&i.onOpenToggle(),"ArrowDown"===e.key&&i.onOpenChange(!0),[" ","ArrowDown"].includes(e.key)&&e.preventDefault());}))}))):null}));const[D,M]=s("DropdownMenuContent",{isInsideContent:!1});const DropdownMenuContent=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=w$1("DropdownMenuContent",r),d=l(r),a={...t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)"}};return React__namespace.createElement(D,{scope:r,isInsideContent:!0},p.isRootMenu?/*#__PURE__*/React__namespace.createElement(g$1,_extends({__scopeDropdownMenu:r},a,{ref:n})):/*#__PURE__*/React__namespace.createElement(Content$3,_extends({},d,a,{ref:n})))}));const g$1=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,portalled:t=!0,...p}=e,d=w$1("DropdownMenuContent",r),s=l(r),i=React__namespace.useRef(!1);return d.isRootMenu?/*#__PURE__*/React__namespace.createElement(Content$3,_extends({id:d.contentId,"aria-labelledby":d.triggerId},s,p,{ref:n,portalled:t,onCloseAutoFocus:composeEventHandlers(e.onCloseAutoFocus,(e=>{var o;i.current||null===(o=d.triggerRef.current)||void 0===o||o.focus(),i.current=!1,e.preventDefault();})),onInteractOutside:composeEventHandlers(e.onInteractOutside,(e=>{const o=e.detail.originalEvent,n=0===o.button&&!0===o.ctrlKey,r=2===o.button||n;d.modal&&!r||(i.current=!0);}))})):null}));const DropdownMenuGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Group$1,_extends({},p,t,{ref:n}))}));const DropdownMenuLabel=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Label$1,_extends({},p,t,{ref:n}))}));const DropdownMenuItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Item$1,_extends({},p,t,{ref:n}))}));const DropdownMenuCheckboxItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(CheckboxItem$1,_extends({},p,t,{ref:n}))}));const DropdownMenuRadioGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(RadioGroup$1,_extends({},p,t,{ref:n}))}));const DropdownMenuRadioItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(RadioItem$1,_extends({},p,t,{ref:n}))}));const DropdownMenuItemIndicator=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(ItemIndicator$1,_extends({},p,t,{ref:n}))}));const DropdownMenuArrow=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Arrow$3,_extends({},p,t,{ref:n}))}));const Root$4=DropdownMenu;const Trigger$2=DropdownMenuTrigger;const Content$2=DropdownMenuContent;const Group=DropdownMenuGroup;const Label=DropdownMenuLabel;const Item=DropdownMenuItem;const CheckboxItem=DropdownMenuCheckboxItem;const RadioGroup=DropdownMenuRadioGroup;const RadioItem=DropdownMenuRadioItem;const ItemIndicator=DropdownMenuItemIndicator;const Arrow$2=DropdownMenuArrow;
4719
+ const[s,i$1]=createContextScope("DropdownMenu",[S]);const l=S(),[m,w$1]=s("DropdownMenu");const DropdownMenu=e=>{const{__scopeDropdownMenu:n,children:r,open:p,defaultOpen:d,onOpenChange:a}=e,s=M("DropdownMenu",n),i=l(n),[w=!1,D]=useControllableState({prop:p,defaultProp:d,onChange:a}),g=React__namespace.useCallback((()=>D((e=>!e))),[D]);return s.isInsideContent?/*#__PURE__*/React__namespace.createElement(m,{scope:n,isRootMenu:!1,open:w,onOpenChange:D,onOpenToggle:g},/*#__PURE__*/React__namespace.createElement(Sub,_extends({},i,{open:w,onOpenChange:D}),r)):/*#__PURE__*/React__namespace.createElement(f,_extends({},e,{open:w,onOpenChange:D,onOpenToggle:g}),r)};const f=n=>{const{__scopeDropdownMenu:r,children:t,dir:p,open:d,onOpenChange:a,onOpenToggle:s,modal:i=!0}=n,w=l(r),f=React__namespace.useRef(null);return React__namespace.createElement(m,{scope:r,isRootMenu:!0,triggerId:useId(),triggerRef:f,contentId:useId(),open:d,onOpenChange:a,onOpenToggle:s,modal:i},/*#__PURE__*/React__namespace.createElement(Root$5,_extends({},w,{open:d,onOpenChange:a,dir:p,modal:i}),t))};const DropdownMenuTrigger=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:t,disabled:p=!1,...s}=e,i=w$1("DropdownMenuTrigger",t),m=l(t);return i.isRootMenu?/*#__PURE__*/React__namespace.createElement(Anchor,_extends({asChild:!0},m),/*#__PURE__*/React__namespace.createElement(Primitive.button,_extends({type:"button",id:i.triggerId,"aria-haspopup":"menu","aria-expanded":!!i.open||void 0,"aria-controls":i.open?i.contentId:void 0,"data-state":i.open?"open":"closed","data-disabled":p?"":void 0,disabled:p},s,{ref:composeRefs(n,i.triggerRef),onPointerDown:composeEventHandlers$1(e.onPointerDown,(e=>{p||0!==e.button||!1!==e.ctrlKey||(i.open||e.preventDefault(),i.onOpenToggle());})),onKeyDown:composeEventHandlers$1(e.onKeyDown,(e=>{p||(["Enter"," "].includes(e.key)&&i.onOpenToggle(),"ArrowDown"===e.key&&i.onOpenChange(!0),[" ","ArrowDown"].includes(e.key)&&e.preventDefault());}))}))):null}));const[D,M]=s("DropdownMenuContent",{isInsideContent:!1});const DropdownMenuContent=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=w$1("DropdownMenuContent",r),d=l(r),a={...t,style:{...e.style,"--radix-dropdown-menu-content-transform-origin":"var(--radix-popper-transform-origin)"}};return React__namespace.createElement(D,{scope:r,isInsideContent:!0},p.isRootMenu?/*#__PURE__*/React__namespace.createElement(g$1,_extends({__scopeDropdownMenu:r},a,{ref:n})):/*#__PURE__*/React__namespace.createElement(Content$3,_extends({},d,a,{ref:n})))}));const g$1=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,portalled:t=!0,...p}=e,d=w$1("DropdownMenuContent",r),s=l(r),i=React__namespace.useRef(!1);return d.isRootMenu?/*#__PURE__*/React__namespace.createElement(Content$3,_extends({id:d.contentId,"aria-labelledby":d.triggerId},s,p,{ref:n,portalled:t,onCloseAutoFocus:composeEventHandlers$1(e.onCloseAutoFocus,(e=>{var o;i.current||null===(o=d.triggerRef.current)||void 0===o||o.focus(),i.current=!1,e.preventDefault();})),onInteractOutside:composeEventHandlers$1(e.onInteractOutside,(e=>{const o=e.detail.originalEvent,n=0===o.button&&!0===o.ctrlKey,r=2===o.button||n;d.modal&&!r||(i.current=!0);}))})):null}));const DropdownMenuGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Group$1,_extends({},p,t,{ref:n}))}));const DropdownMenuLabel=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Label$1,_extends({},p,t,{ref:n}))}));const DropdownMenuItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Item$1,_extends({},p,t,{ref:n}))}));const DropdownMenuCheckboxItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(CheckboxItem$1,_extends({},p,t,{ref:n}))}));const DropdownMenuRadioGroup=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(RadioGroup$1,_extends({},p,t,{ref:n}))}));const DropdownMenuRadioItem=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(RadioItem$1,_extends({},p,t,{ref:n}))}));const DropdownMenuItemIndicator=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(ItemIndicator$1,_extends({},p,t,{ref:n}))}));const DropdownMenuArrow=/*#__PURE__*/React__namespace.forwardRef(((e,n)=>{const{__scopeDropdownMenu:r,...t}=e,p=l(r);return React__namespace.createElement(Arrow$3,_extends({},p,t,{ref:n}))}));const Root$4=DropdownMenu;const Trigger$2=DropdownMenuTrigger;const Content$2=DropdownMenuContent;const Group=DropdownMenuGroup;const Label=DropdownMenuLabel;const Item=DropdownMenuItem;const CheckboxItem=DropdownMenuCheckboxItem;const RadioGroup=DropdownMenuRadioGroup;const RadioItem=DropdownMenuRadioItem;const ItemIndicator=DropdownMenuItemIndicator;const Arrow$2=DropdownMenuArrow;
4681
4720
 
4682
4721
  const e="horizontal",n=["horizontal","vertical"];const Separator=/*#__PURE__*/React__namespace.forwardRef(((n,a)=>{const{decorative:p,orientation:l=e,...c}=n,s=i(l)?l:e,u=p?{role:"none"}:{"aria-orientation":"vertical"===s?s:void 0,role:"separator"};return React__namespace.createElement(Primitive.div,_extends({"data-orientation":s},u,c,{ref:a}))}));function i(r){return n.includes(r)}Separator.propTypes={orientation(r,o,t){const n=r[o],a=String(n);return n&&!i(n)?new Error(function(r,o){return `Invalid prop \`orientation\` of value \`${r}\` supplied to \`${o}\`, expected one of:\n - horizontal\n - vertical\n\nDefaulting to \`${e}\`.`}(a,t)):null}};const Root$3=Separator;
4683
4722
 
4684
- function styleInject(css, ref) {
4685
- if ( ref === void 0 ) ref = {};
4686
- var insertAt = ref.insertAt;
4687
-
4688
- if (!css || typeof document === 'undefined') { return; }
4689
-
4690
- var head = document.head || document.getElementsByTagName('head')[0];
4691
- var style = document.createElement('style');
4692
- style.type = 'text/css';
4693
-
4694
- if (insertAt === 'top') {
4695
- if (head.firstChild) {
4696
- head.insertBefore(style, head.firstChild);
4697
- } else {
4698
- head.appendChild(style);
4699
- }
4700
- } else {
4701
- head.appendChild(style);
4702
- }
4703
-
4704
- if (style.styleSheet) {
4705
- style.styleSheet.cssText = css;
4706
- } else {
4707
- style.appendChild(document.createTextNode(css));
4708
- }
4709
- }
4710
-
4711
- var css_248z$4 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\n.poll-select-content {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n display: flex;\n flex-direction: column;\n width: fit-content;\n background-color: white;\n border: 1px solid var(--grey3);\n border-radius: 4px;\n padding: 6px 4px;\n box-shadow: rgba(0, 0, 0, 0.08) 0px 2px 4px;\n gap: 2px;\n}\n\n.poll-select-item {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 6px;\n border-radius: 2px;\n padding: 2px 8px 2px 24px;\n transition: background-color 0.15s linear, color 0.15s linear;\n}\n\n.poll-select-item[data-state=checked] {\n background-color: var(--primary2);\n color: white;\n}\n\n.poll-select-item:focus-visible {\n outline: none;\n}\n\n.poll-select-item:hover {\n background-color: var(--primary0);\n cursor: pointer;\n color: unset;\n}\n\n.poll-separator {\n background-color: #d0d7de;\n height: 1px;\n width: 100%;\n margin: 4px 0;\n}";
4712
- styleInject(css_248z$4);
4713
-
4714
4723
  var ConditionalWrapper = function (_a) {
4715
4724
  var condition = _a.condition, wrapper = _a.wrapper, children = _a.children;
4716
4725
  return condition ? wrapper(children) : children;
@@ -4722,7 +4731,7 @@ var Dropdown = function (_a) {
4722
4731
  var _a;
4723
4732
  switch (o.type) {
4724
4733
  case 'checkbox':
4725
- return (React__default["default"].createElement(CheckboxItem, __assign$2({ key: o.id, className: 'poll-select-item', onSelect: function (e) {
4734
+ return (React__default["default"].createElement(CheckboxItem, __assign$2({ key: o.id, className: 'poll-select-item', onSelect: function () {
4726
4735
  if (o.onSelect)
4727
4736
  o.onSelect(o);
4728
4737
  }, checked: o.checked, disabled: o.disabled }, itemProps),
@@ -4734,7 +4743,7 @@ var Dropdown = function (_a) {
4734
4743
  React__default["default"].createElement(CheckCircle$1, null)),
4735
4744
  o.label));
4736
4745
  case 'radio':
4737
- return (React__default["default"].createElement(RadioItem, __assign$2({ key: o.id, className: 'poll-select-item', onSelect: function (e) {
4746
+ return (React__default["default"].createElement(RadioItem, __assign$2({ key: o.id, className: 'poll-select-item', onSelect: function () {
4738
4747
  if (o.onSelect)
4739
4748
  o.onSelect(o);
4740
4749
  }, textValue: o.label, value: o.id, disabled: o.disabled }, itemProps),
@@ -4751,7 +4760,7 @@ var Dropdown = function (_a) {
4751
4760
  return (React__default["default"].createElement("a", { href: (_a = o.to) !== null && _a !== void 0 ? _a : '/', key: o.id, style: { color: 'unset' } },
4752
4761
  React__default["default"].createElement(Item, __assign$2({ className: 'poll-select-item', onSelect: function () { return o.onSelect && o.onSelect(o); } }, itemProps), o.label)));
4753
4762
  default:
4754
- return (React__default["default"].createElement(Item, __assign$2({ key: o.id, className: 'poll-select-item', onSelect: function (e) { return o.onSelect && o.onSelect(o); } }, itemProps), o.label));
4763
+ return (React__default["default"].createElement(Item, __assign$2({ key: o.id, className: 'poll-select-item', onSelect: function () { return o.onSelect && o.onSelect(o); } }, itemProps), o.label));
4755
4764
  }
4756
4765
  }, [itemProps]);
4757
4766
  return (React__default["default"].createElement(Root$4, null,
@@ -4774,10 +4783,37 @@ var Dropdown = function (_a) {
4774
4783
  }, offset: 12 }))));
4775
4784
  };
4776
4785
 
4777
- var css_248z$3 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\n.btn-group {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n width: fit-content;\n display: flex;\n border-radius: 4px;\n}\n\n.btn-group:hover {\n box-shadow: 0 1px 2px 0 rgba(26, 115, 232, 0.45), 0 1px 3px 1px rgba(26, 115, 232, 0.3);\n}\n\n.btn-group-disabled:hover {\n box-shadow: none;\n}\n\n.btn-group button {\n max-width: 260px;\n display: flex;\n background-color: var(--primary);\n border: 1px solid var(--primary);\n color: white;\n padding: 6px 10px;\n cursor: pointer;\n float: left;\n transition: background-color 0.125s ease-in-out;\n z-index: 10;\n align-items: center;\n gap: 8px;\n}\n\n.btn-group-disabled button {\n background-color: var(--grey3);\n color: var(--grey5);\n cursor: default;\n border-color: var(--grey5);\n}\n\n.btn-group button:first-child {\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n\n.btn-group button:last-child {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n border-left-color: #096dd9;\n}\n\n.btn-group button:last-child:disabled {\n border-left-color: var(--grey5);\n}\n\n.btn-group button:not(:last-child) {\n border-right: none;\n}\n\n.btn-group button:focus-visible {\n outline: none;\n}\n\n.btn-group button:focus {\n outline: none;\n}\n\n/* Clear floats (clearfix hack) */\n.btn-group:after {\n content: \"\";\n clear: both;\n display: table;\n}\n\n.btn-group button:hover {\n background-color: var(--primary2);\n z-index: 11;\n}\n\n.btn-group-disabled:hover button:hover {\n background-color: var(--grey3);\n}\n\n.options-content {\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n}";
4778
- styleInject(css_248z$3);
4786
+ function styleInject(css, ref) {
4787
+ if ( ref === void 0 ) ref = {};
4788
+ var insertAt = ref.insertAt;
4789
+
4790
+ if (!css || typeof document === 'undefined') { return; }
4791
+
4792
+ var head = document.head || document.getElementsByTagName('head')[0];
4793
+ var style = document.createElement('style');
4794
+ style.type = 'text/css';
4795
+
4796
+ if (insertAt === 'top') {
4797
+ if (head.firstChild) {
4798
+ head.insertBefore(style, head.firstChild);
4799
+ } else {
4800
+ head.appendChild(style);
4801
+ }
4802
+ } else {
4803
+ head.appendChild(style);
4804
+ }
4805
+
4806
+ if (style.styleSheet) {
4807
+ style.styleSheet.cssText = css;
4808
+ } else {
4809
+ style.appendChild(document.createTextNode(css));
4810
+ }
4811
+ }
4779
4812
 
4780
- var logo = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMSIgdmlld0JveD0iMCAwIDEyMCAxMjEiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+DQo8ZyBjbGlwLXBhdGg9InVybCgjY2xpcDBfMTk2OjI4NzkpIj4NCjxwYXRoIGQ9Ik03NC4xMzI5IDE5LjkzNUM3MS4yNTQ2IDE4LjE2NDQgNjcuNzU4IDE3LjE1ODYgNjQuMjEzOCAxNi42Mzc5QzYwLjg4MzkgMTYuMjUyNyA1OS4wNjk3IDE2LjI2IDU1Ljg4NDIgMTYuNTY1M0M1Mi4yODYgMTcuMDI5NSA0OC44ODY2IDE4LjEyNjkgNDUuODAxMiAxOS43NDIyTDM4Ljk3NDYgMjQuNjMzNEMzNS4wMzM1IDI4LjM4NDQgMzIuMTA0NyAzMy4xODk4IDMwLjYzOTcgMzguNTk3N0MzMC41NDQzIDM4Ljk1MDEgMzAuMjcwMyAzOS4yMjcxIDI5LjkxOTEgMzkuMzI2OUMxOC4yMTY2IDQyLjY1MzcgOS4wOTc2NiA1My4wMTczIDguMTQ4ODUgNjUuMjUxN0M3Ljk1ODEgNjcuNzExNSA4LjA0MjUyIDY5LjA3NzkgOC4xNDg4NiA3MS40OTg5QzguNjE1NzEgODIuMTI3OCAxOC4yMDE5IDk0LjA0NjUgMjkuOTIgOTcuNDIyOUMzMC4yNzA4IDk3LjUyMzkgMzAuNTQ0NCA5Ny44MDExIDMwLjYzOTggOTguMTUzNUMzMy45MDYzIDExMC4yMjEgNDQuNDMyNiAxMTkuNTUzIDU3LjI3MjcgMTIwLjMzMkM1OS43NjMyIDEyMC40ODMgNjEuMTIxMyAxMjAuNDY2IDYzLjUxOTkgMTIwLjIwN0M3NC41MDI3IDExOS4wMTcgODUuNjQzMyAxMDkuOTE0IDg4Ljg5IDk4LjMwMzZDODguOTg5NyA5Ny45NDcgODkuMjcxNSA5Ny42Njg3IDg5LjYyOTUgOTcuNTc0MkMxMDEuNiA5NC40MTQxIDExMC44MDkgODMuOTIyNiAxMTEuNzc4IDcxLjMyNzZMMTExLjc5IDcxLjE2MzJDMTExLjk3IDY4LjgzNDkgMTEyLjA3NiA2Ny40NjEyIDExMS43NzggNjUuMDgwNEMxMTAuMTcyIDUyLjI0MTMgMTAxLjU4IDQyLjMxODUgODkuNjMwMSAzOS4xNzYzQzg5LjI3MiAzOS4wODIyIDg4Ljk5MDQgMzguODA0MyA4OC44ODc2IDM4LjQ0ODZDODcuMzQ1NCAzMy4xMTIxIDgzLjE1NjcgMjYuOTEwOCA4MC44NjY5IDI0Ljg5MzJDNzguNDkzNiAyMi44MDIgNzcuMDExMiAyMS43MDU1IDc0LjEzMjkgMTkuOTM1WiIgZmlsbD0iI0ZBRkFGQSIvPg0KPHBhdGggZD0iTTU1LjM1NjUgODEuNTQ2M0M1Mi4yMTA2IDg1LjczMjQgNDcuNTk4OCA4OC43NTM5IDQyLjI4MzMgODkuODQ4N0M0Mi4yNzk2IDg5Ljk5ODMgNDIuMjc3NyA5MC4xNDg0IDQyLjI3NzcgOTAuMjk5QzQyLjI3NzcgMTAwLjA4NyA1MC4yMTIzIDEwOC4wMjEgNjAgMTA4LjAyMUM2OS43ODc4IDEwOC4wMjEgNzcuNzIyMyAxMDAuMDg3IDc3LjcyMjMgOTAuMjk5Qzc3LjcyMjMgODAuNTExMiA2OS43ODc4IDcyLjU3NjcgNjAgNzIuNTc2N0M1OS43NzgyIDcyLjU3NjcgNTkuNTU3NCA3Mi41ODA3IDU5LjMzNzUgNzIuNTg4OEM1OC44NzI3IDc0Ljk5MTkgNTguMDE0OCA3Ny4yNTQ4IDU2LjgzMzYgNzkuMzA4QzU3LjY4NDUgNzguNTc3OCA1OC43OTA4IDc4LjEzNjYgNjAgNzguMTM2NkM2Mi42ODY5IDc4LjEzNjYgNjQuODY1IDgwLjMxNDcgNjQuODY1IDgzLjAwMTZDNjQuODY1IDg1LjY4ODQgNjIuNjg2OSA4Ny44NjY1IDYwIDg3Ljg2NjVDNTcuMzEzMiA4Ny44NjY1IDU1LjEzNTEgODUuNjg4NCA1NS4xMzUxIDgzLjAwMTZDNTUuMTM1MSA4Mi40OTQ2IDU1LjIxMjYgODIuMDA1OCA1NS4zNTY1IDgxLjU0NjNaIiBmaWxsPSIjRjJCMjREIi8+DQo8cGF0aCBkPSJNNzMuMzU1IDIwLjg3NTRDNzMuNzE5OSAyMC4zNTkxIDczLjU4MTcgMTkuNjIzOSA3My4wMTM4IDE5LjM0NTlDNzAuNjA4NyAxOC4xNjgzIDY4LjAyNCAxNy4zMDA3IDY1LjMxMTkgMTYuNzk1MkM2NC43MTIgMTYuNjgzNCA2NC4xNjk5IDE3LjE1MjQgNjQuMTY5OSAxNy43NjI2VjI0LjI1NjNDNjQuMTY5OSAyNC43MzA5IDY0LjUwNDIgMjUuMTM3NyA2NC45NjUyIDI1LjI1MDdDNjYuNTM2NCAyNS42MzU4IDY4LjA0MSAyNi4xOTA1IDY5LjQ1ODcgMjYuODk0MkM3MC4wODg4IDI3LjIwNzEgNzAuODY0NCAyNi44Mzc2IDcxLjAyNDggMjYuMTUyN0M3MS40NjUzIDI0LjI3MTggNzIuMTkwNiAyMi41MjMgNzMuMzU1IDIwLjg3NTRaIiBmaWxsPSIjMjQyOTJFIi8+DQo8cGF0aCBkPSJNNzguODcyNyAzNS44NzAyQzc4Ljc4NzYgMzUuNzE3OCA3OC43NDE1IDM1LjU0NjUgNzguNzQxNSAzNS4zNzE5VjMyLjg4OTFDNzguNzQxNSAzMi44ODg3IDc4Ljc0MTIgMzIuODg4NCA3OC43NDA4IDMyLjg4ODRWMzIuODg4NEM3OC43NDA0IDMyLjg4ODQgNzguNzQwMSAzMi44ODgxIDc4Ljc0MDEgMzIuODg3N0M3OC43NDAyIDI4Ljk1MSA3OS4xNzM0IDI3LjA3MDMgODAuMTk2IDI1LjY0NDhDODAuNTIwMiAyNS4xOTI3IDgxLjE3MDEgMjUuMTg2NCA4MS41NTUyIDI1LjU4NzlDODQuOTcxNiAyOS4xNDk3IDg3LjUyNDUgMzMuNTQ2NSA4OC44NzggMzguNDQyQzg4Ljk3NjcgMzguNzk4OCA4OS4yNTg3IDM5LjA3NyA4OS42MTY3IDM5LjE3MTNDMTAxLjI0OCA0Mi4yMzcxIDExMC4xMzUgNTIuMDUzNiAxMTEuODMxIDY0LjE3OUMxMTEuOTEzIDY0Ljc2NiAxMTEuNDQ5IDY1LjI3OTMgMTEwLjg1NyA2NS4yNzkzSDEwNC40M0MxMDMuOTMyIDY1LjI3OTMgMTAzLjUxMyA2NC45MTI4IDEwMy40MjMgNjQuNDIzNEMxMDEuNzMgNTUuMjE0NiA5NC4yNzI5IDQ4LjAxODkgODQuOTMyOSA0Ni43MjM0TDgyLjU4NzMgNDYuMzk4MUM4Mi4xNDg0IDQ2LjMzNzIgODEuODAyIDQ1Ljk5NDggODEuNzM1OCA0NS41NTY4TDgxLjM4MjUgNDMuMjE1MkM4MC45ODU1IDQwLjU4NDIgODAuMTE5NSAzOC4xMDY2IDc4Ljg3MjcgMzUuODcwMloiIGZpbGw9IiMyNDI5MkUiLz4NCjxwYXRoIGQ9Ik0zOS4wMDYxIDI0LjcxNzFDMzguOTQ2NyAyNC42NTc4IDM4Ljg1MDggMjQuNjU2NSAzOC43OTAzIDI0LjcxNDdDMzQuODk5MSAyOC40NTUyIDMyLjAwNzIgMzMuMjI3OSAzMC41NTM5IDM4LjU5MjhDMzAuNDU4NSAzOC45NDUxIDMwLjE4NDIgMzkuMjIyMyAyOS44MzMxIDM5LjMyMkMxOC40NzMyIDQyLjU0ODUgOS44MzgxNyA1Mi4yNDUzIDguMTY4NyA2NC4xNzkxQzguMDg2NTggNjQuNzY2MSA4LjU1MDU4IDY1LjI3OTMgOS4xNDMyOSA2NS4yNzkzSDE1LjU3MDFDMTYuMDY3NyA2NS4yNzkzIDE2LjQ4NzEgNjQuOTEyOCAxNi41NzcxIDY0LjQyMzRDMTguMjQyOSA1NS4zNjQxIDI1LjQ4NjYgNDguMjUyNCAzNC42MTQ3IDQ2Ljc5MUwzNi45MDk4IDQ2LjQyMzVDMzcuMzQwOCA0Ni4zNTQ1IDM3LjY3NzIgNDYuMDE0IDM3Ljc0MSA0NS41ODIyTDM4LjA4MDYgNDMuMjgyOEMzOC41MjMyIDQwLjI4NjYgMzkuNTczNiAzNy40ODgxIDQxLjEwMjQgMzUuMDE2M0M0MS4yMDIyIDM0Ljg1NDkgNDEuMjU3IDM0LjY2OTQgNDEuMjU3MyAzNC40Nzk2TDQxLjI1OTkgMzIuODgxN0M0MS4yNTkzIDI4LjA0NzIgNDAuNjA0NiAyNi4zMTU2IDM5LjAwNjEgMjQuNzE3MVYyNC43MTcxWiIgZmlsbD0iIzI0MjkyRSIvPg0KPHBhdGggZD0iTTUwLjQ2MDkgMjYuNjc4OUM0OS44Mzg1IDI2Ljk3MDUgNDkuMDg4OSAyNi42MDc4IDQ4LjkyNDEgMjUuOTQwNkM0OC40NjI5IDI0LjA3MzYgNDcuNzEyNCAyMi4zMzcyIDQ2LjUxOTIgMjAuNzAwM0M0Ni4xMzk2IDIwLjE3OTYgNDYuMjgwOCAxOS40MjY0IDQ2Ljg2MzcgMTkuMTUxN0M0OS4zMTQ5IDE3Ljk5NjUgNTEuOTQ2NiAxNy4xNjEgNTQuNzA1IDE2LjY5OUM1NS4yOTk4IDE2LjU5OTQgNTUuODMgMTcuMDY2NSA1NS44MyAxNy42Njk2VjI0LjEzMzlDNTUuODMgMjQuNjE3OCA1NS40ODI5IDI1LjAyOTggNTUuMDEwNCAyNS4xMzM4QzUzLjQyMjQgMjUuNDgzMyA1MS44OTkgMjYuMDA1MyA1MC40NjA5IDI2LjY3ODlaIiBmaWxsPSIjMjQyOTJFIi8+DQo8cGF0aCBkPSJNODEuMzgyNSA5My41OTgzQzgwLjAyMSAxMDIuNjIgNzMuMTQ2NiAxMDkuODM3IDY0LjMwMjggMTExLjcxNEM2My44MjY1IDExMS44MTUgNjMuNDc1MiAxMTIuMjI5IDYzLjQ3NTIgMTEyLjcxNlYxMTkuMTcyQzYzLjQ3NTIgMTE5Ljc3MiA2NC4wMDE4IDEyMC4yMzkgNjQuNTk0OSAxMjAuMTQzQzc2LjMwODYgMTE4LjI1MSA4NS43NjUgMTA5LjYzIDg4Ljg3NzggOTguMzcyMkM4OC45NzY1IDk4LjAxNTMgODkuMjU4NyA5Ny43MzY1IDg5LjYxNjcgOTcuNjQyMkMxMDEuMjQ3IDk0LjU3NjQgMTEwLjEzNSA4NC43NTk4IDExMS44MzEgNzIuNjM0NUMxMTEuOTEzIDcyLjA0NzUgMTExLjQ0OSA3MS41MzQyIDExMC44NTcgNzEuNTM0MkgxMDQuNDNDMTAzLjkzMiA3MS41MzQyIDEwMy41MTMgNzEuOTAwNyAxMDMuNDIzIDcyLjM5MDFDMTAxLjczIDgxLjU5ODkgOTQuMjcyOSA4OC43OTQ2IDg0LjkzMjkgOTAuMDkwMUw4Mi41ODczIDkwLjQxNTRDODIuMTQ4NCA5MC40NzYzIDgxLjgwMiA5MC44MTg2IDgxLjczNTggOTEuMjU2N0w4MS4zODI1IDkzLjU5ODNaIiBmaWxsPSIjMjQyOTJFIi8+DQo8cGF0aCBkPSJNMzQuNjE0NyA5MC4wMjI1QzI1LjQ4NjYgODguNTYxMSAxOC4yNDI5IDgxLjQ0OTQgMTYuNTc3MSA3Mi4zOUMxNi40ODcxIDcxLjkwMDcgMTYuMDY3NyA3MS41MzQyIDE1LjU3MDEgNzEuNTM0Mkg5LjE0MzI5QzguNTUwNTggNzEuNTM0MiA4LjA4NjU4IDcyLjA0NzQgOC4xNjg3IDcyLjYzNDRDOS44MzgxOCA4NC41NjgyIDE4LjQ3MzIgOTQuMjY1IDI5LjgzMzEgOTcuNDkxNUMzMC4xODQyIDk3LjU5MTIgMzAuNDU4NiA5Ny44NjkgMzAuNTU0MSA5OC4yMjE0QzMzLjczMjkgMTA5Ljk1NSA0My43OTQgMTE4Ljg1NiA1Ni4xMzk1IDEyMC4zMTlDNTYuNzIwMSAxMjAuMzg4IDU3LjIyMDMgMTE5LjkyNyA1Ny4yMjAzIDExOS4zNDJWMTEyLjk0QzU3LjIyMDMgMTEyLjQzMiA1Ni44MzgzIDExMi4wMDcgNTYuMzM2MSAxMTEuOTI5QzQ2LjkxMjkgMTEwLjQ1OSAzOS40NzU5IDEwMi45NzcgMzguMDgwNiA5My41MzA3TDM3Ljc0MSA5MS4yMzEzQzM3LjY3NzIgOTAuNzk5NSAzNy4zNDA4IDkwLjQ1ODkgMzYuOTA5OCA5MC4zODk5TDM0LjYxNDcgOTAuMDIyNVoiIGZpbGw9IiMyNDI5MkUiLz4NCjxwYXRoIGQ9Ik04MS42Mjg4IDg2LjEyOUM5MS40MTY2IDg2LjEyOSA5OS4zNTExIDc4LjE5NDUgOTkuMzUxMSA2OC40MDY3Qzk5LjM1MTEgNTguNjE4OSA5MS40MTY2IDUwLjY4NDQgODEuNjI4OCA1MC42ODQ0QzcxLjg0MSA1MC42ODQ0IDYzLjkwNjUgNTguNjE4OSA2My45MDY1IDY4LjQwNjdDNjMuOTA2NSA2OC41Mzk2IDYzLjkwOCA2OC42NzIxIDYzLjkxMDkgNjguODA0MkM2Ni4zMzcgNjkuMjcyNiA2OC42MjA0IDcwLjE0MTUgNzAuNjg5NiA3MS4zMzk1QzcwLjA3MjUgNzAuNTI0MSA2OS43MDY1IDY5LjUwODEgNjkuNzA2NSA2OC40MDY3QzY5LjcwNjUgNjUuNzE5OSA3MS44ODQ2IDYzLjU0MTggNzQuNTcxNSA2My41NDE4Qzc3LjI1ODMgNjMuNTQxOCA3OS40MzY0IDY1LjcxOTkgNzkuNDM2NCA2OC40MDY3Qzc5LjQzNjQgNzEuMDkzNSA3Ny4yNTgzIDczLjI3MTcgNzQuNTcxNSA3My4yNzE3Qzc0LjEyNDkgNzMuMjcxNyA3My42OTIzIDczLjIxMTUgNzMuMjgxNCA3My4wOTg4Qzc3LjMyNTEgNzYuMjg3NSA4MC4yMTcxIDgwLjg3MTUgODEuMjMxMyA4Ni4xMjQ3QzgxLjM2MzUgODYuMTI3NiA4MS40OTYgODYuMTI5IDgxLjYyODggODYuMTI5WiIgZmlsbD0iI0VCMjIyNyIvPg0KPHBhdGggZD0iTTc3LjcxNzkgNDYuOTExOUM3Ny43MjA4IDQ2Ljc3OTggNzcuNzIyMiA0Ni42NDczIDc3LjcyMjIgNDYuNTE0NEM3Ny43MjIyIDM2LjcyNjcgNjkuNzg3NyAyOC43OTIxIDU5Ljk5OTkgMjguNzkyMUM1MC4yMTIxIDI4Ljc5MjEgNDIuMjc3NiAzNi43MjY3IDQyLjI3NzYgNDYuNTE0NEM0Mi4yNzc2IDU2LjMwMjIgNTAuMjEyMSA2NC4yMzY3IDU5Ljk5OTkgNjQuMjM2N0M2MC4xMzI4IDY0LjIzNjcgNjAuMjY1MyA2NC4yMzUzIDYwLjM5NzQgNjQuMjMyNEM2MC44MzU3IDYxLjk2MjMgNjEuNjI0NiA1OS44MTcyIDYyLjcwNTYgNTcuODU1NkM2MS45MzIgNTguMzc0MyA2MS4wMDEzIDU4LjY3NjggNTkuOTk5OSA1OC42NzY4QzU3LjMxMzEgNTguNjc2OCA1NS4xMzUgNTYuNDk4NyA1NS4xMzUgNTMuODExOUM1NS4xMzUgNTEuMTI1IDU3LjMxMzEgNDguOTQ2OSA1OS45OTk5IDQ4Ljk0NjlDNjIuNjg2NyA0OC45NDY5IDY0Ljg2NDkgNTEuMTI1IDY0Ljg2NDkgNTMuODExOUM2NC44NjQ5IDU0LjEzNjQgNjQuODMzMSA1NC40NTM2IDY0Ljc3MjQgNTQuNzYwNEM2Ny45NTc1IDUwLjc2OTggNzIuNTA4NyA0Ny45MTc2IDc3LjcxNzkgNDYuOTExOVoiIGZpbGw9IiMwNEE1NEYiLz4NCjxwYXRoIGQ9Ik01NS41NjEgNjcuOTU2NEM1NS41NjQ3IDY4LjEwNjEgNTUuNTY2NiA2OC4yNTYyIDU1LjU2NjYgNjguNDA2N0M1NS41NjY2IDc4LjE5NDUgNDcuNjMyIDg2LjEyOSAzNy44NDQzIDg2LjEyOUMyOC4wNTY1IDg2LjEyOSAyMC4xMjE5IDc4LjE5NDUgMjAuMTIxOSA2OC40MDY3QzIwLjEyMTkgNTguNjE4OSAyOC4wNTY1IDUwLjY4NDQgMzcuODQ0MyA1MC42ODQ0QzM4LjA2NiA1MC42ODQ0IDM4LjI4NjggNTAuNjg4NSAzOC41MDY2IDUwLjY5NjVDMzkuNTE0MyA1NS45MDYgNDIuMzY4OSA2MC40NTcgNDYuMzYxOSA2My42NDA4QzQ2LjA0NDggNjMuNTc1OSA0NS43MTY2IDYzLjU0MTggNDUuMzgwNCA2My41NDE4QzQyLjY5MzUgNjMuNTQxOCA0MC41MTU0IDY1LjcxOTkgNDAuNTE1NCA2OC40MDY3QzQwLjUxNTQgNzEuMDkzNSA0Mi42OTM1IDczLjI3MTcgNDUuMzgwNCA3My4yNzE3QzQ4LjA2NzIgNzMuMjcxNyA1MC4yNDUzIDcxLjA5MzUgNTAuMjQ1MyA2OC40MDY3QzUwLjI0NTMgNjcuMzk1OSA0OS45MzcxIDY2LjQ1NzIgNDkuNDA5NSA2NS42NzkzQzUxLjMwNTQgNjYuNzI5MiA1My4zNzM2IDY3LjUwNiA1NS41NjEgNjcuOTU2NFoiIGZpbGw9IiMyREE5RTEiLz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNMzAuMTA4OCAxNi4wNjg2QzMwLjEwODggMTIuMjMwMiAzMy4yMjA0IDkuMTE4NjUgMzcuMDU4NyA5LjExODY1QzQwLjg5NyA5LjExODY1IDQ0LjAwODYgMTIuMjMwMiA0NC4wMDg2IDE2LjA2ODZDNDQuMDA4NiAxNy4zNDgzIDQzLjY2MjggMTguNTQ3MiA0My4wNTk0IDE5LjU3N0w0My40MjkxIDE5Ljk0NjdMNDAuNDgwNSAyMi44OTUzTDM5Ljk2NzUgMjIuMzgyM0MzOS4wODI2IDIyLjc5MDcgMzguMDk3MyAyMy4wMTg1IDM3LjA1ODcgMjMuMDE4NUMzMy4yMjA0IDIzLjAxODUgMzAuMTA4OCAxOS45MDY5IDMwLjEwODggMTYuMDY4NlpNMzcuMDU4NyAxMy4yODg2QzM1LjUyMzQgMTMuMjg4NiAzNC4yNzg3IDE0LjUzMzIgMzQuMjc4NyAxNi4wNjg2QzM0LjI3ODcgMTcuNjAzOSAzNS41MjM0IDE4Ljg0ODYgMzcuMDU4NyAxOC44NDg2QzM4LjU5NCAxOC44NDg2IDM5LjgzODcgMTcuNjAzOSAzOS44Mzg3IDE2LjA2ODZDMzkuODM4NyAxNC41MzMyIDM4LjU5NCAxMy4yODg2IDM3LjA1ODcgMTMuMjg4NloiIGZpbGw9IiMyNDI5MkUiLz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDMuMjczIDYxLjc4OTdMNDMuMzIwMiAzMi41Mzc1TDQzLjM0NSAzMi41Mzc1QzQzLjM0NDcgMjcuNTEzOCA0Mi42Njk2IDI1LjA4NDQgNDAuNDgwNSAyMi44OTUzTDQzLjQyOTEgMTkuOTQ2N0M0Ni43OTk1IDIzLjMxNzEgNDcuNTE1IDI3LjE0MiA0Ny41MTUgMzIuNTQwOUg0NS40MTE4TDQ3LjQ5MDIgMzIuNTQ0Mkw0Ny40NDMgNjEuNzYwNkM1MC4yODY2IDYyLjYzMTcgNTIuMzU0MyA2NS4yNzc3IDUyLjM1NDMgNjguNDA2N0M1Mi4zNTQzIDcyLjI0NSA0OS4yNDI3IDc1LjM1NjYgNDUuNDA0NCA3NS4zNTY2QzQxLjU2NiA3NS4zNTY2IDM4LjQ1NDQgNzIuMjQ1IDM4LjQ1NDQgNjguNDA2N0MzOC40NTQ0IDY1LjMxMTkgNDAuNDc3MyA2Mi42ODk1IDQzLjI3MyA2MS43ODk3Wk00NS40MDQ0IDY1LjYyNjdDNDMuODY5IDY1LjYyNjcgNDIuNjI0NCA2Ni44NzEzIDQyLjYyNDQgNjguNDA2N0M0Mi42MjQ0IDY5Ljk0MiA0My44NjkgNzEuMTg2NyA0NS40MDQ0IDcxLjE4NjdDNDYuOTM5NyA3MS4xODY3IDQ4LjE4NDMgNjkuOTQyIDQ4LjE4NDMgNjguNDA2N0M0OC4xODQzIDY2Ljg3MTQgNDYuOTM5NyA2NS42MjY3IDQ1LjQwNDQgNjUuNjI2N1oiIGZpbGw9IiMyNDI5MkUiLz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNzYuNDQ4MyAxNi4wNjg2Qzc2LjQ0ODMgMTIuMjMwMiA3OS41NTk5IDkuMTE4NjUgODMuMzk4MiA5LjExODY1Qzg3LjIzNjYgOS4xMTg2NSA5MC4zNDgxIDEyLjIzMDIgOTAuMzQ4MSAxNi4wNjg2QzkwLjM0ODEgMTkuOTA2OSA4Ny4yMzY2IDIzLjAxODUgODMuMzk4MiAyMy4wMTg1QzgyLjIzODIgMjMuMDE4NSA4MS4xNDQ2IDIyLjczNDMgODAuMTgzMiAyMi4yMzE4TDc5LjUxOTYgMjIuODk1M0M3OS41MTk2IDIyLjg5NTMgNzkuNTE5NiAyMi44OTUzIDc5LjUxOTYgMjIuODk1M0M3Ny4zMzAxIDI1LjA4NDkgNzYuNjU1MyAyNy41MTQ5IDc2LjY1NTMgMzIuNTQwOUw3Ni42NTY3IDMyLjU0MDlWNjEuNzY3NEM3OS40ODg4IDYyLjY0NTUgODEuNTQ1NyA2NS4yODU5IDgxLjU0NTcgNjguNDA2N0M4MS41NDU3IDcyLjI0NSA3OC40MzQxIDc1LjM1NjYgNzQuNTk1OCA3NS4zNTY2QzcwLjc1NzUgNzUuMzU2NiA2Ny42NDU5IDcyLjI0NSA2Ny42NDU5IDY4LjQwNjdDNjcuNjQ1OSA2NS4zMDM2IDY5LjY3OTUgNjIuNjc1NiA3Mi40ODY3IDYxLjc4MjVWMzIuNTQwOUw3Mi40ODU0IDMyLjU0MDlDNzIuNDg1NCAyNy4xNDIgNzMuMjAwNyAyMy4zMTcgNzYuNTcxIDE5Ljk0NjdMNzcuMjM0NyAxOS4yODNDNzYuNzMyNCAxOC4zMjE4IDc2LjQ0ODMgMTcuMjI4MyA3Ni40NDgzIDE2LjA2ODZaTTgzLjM5ODIgMTMuMjg4NkM4MS44NjI5IDEzLjI4ODYgODAuNjE4MiAxNC41MzMyIDgwLjYxODIgMTYuMDY4NkM4MC42MTgyIDE3LjYwMzkgODEuODYyOSAxOC44NDg2IDgzLjM5ODIgMTguODQ4NkM4NC45MzM2IDE4Ljg0ODYgODYuMTc4MiAxNy42MDM5IDg2LjE3ODIgMTYuMDY4NkM4Ni4xNzgyIDE0LjUzMzIgODQuOTMzNiAxMy4yODg2IDgzLjM5ODIgMTMuMjg4NlpNNzQuNTk1OCA2NS42MjY3QzczLjA2MDUgNjUuNjI2NyA3MS44MTU4IDY2Ljg3MTQgNzEuODE1OCA2OC40MDY3QzcxLjgxNTggNjkuOTQyIDczLjA2MDUgNzEuMTg2NyA3NC41OTU4IDcxLjE4NjdDNzYuMTMxMSA3MS4xODY3IDc3LjM3NTggNjkuOTQyIDc3LjM3NTggNjguNDA2N0M3Ny4zNzU4IDY2Ljg3MTQgNzYuMTMxMSA2NS42MjY3IDc0LjU5NTggNjUuNjI2N1oiIGZpbGw9IiMyNDI5MkUiLz4NCjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNjAuMDAwMSAwLjQyNzk3OUM1Ni4xNjE4IDAuNDI3OTc5IDUzLjA1MDIgMy41Mzk1NyA1My4wNTAyIDcuMzc3OTFDNTMuMDUwMiAxMC40ODk4IDU1LjA5NTQgMTMuMTI0IDU3LjkxNSAxNC4wMDk2TDU3LjkxNSA0Ny4xODc3QzU1LjEwNzggNDguMDgwNyA1My4wNzQxIDUwLjcwODggNTMuMDc0MSA1My44MTE5QzUzLjA3NDEgNTYuOTE2MSA1NS4xMDkzIDU5LjU0NSA1Ny45MTgxIDYwLjQzN0w1Ny45MTk4IDYxLjc3MzVDNTUuMDk3OCA2Mi42NTc3IDUzLjA1MDMgNjUuMjkzMSA1My4wNTAzIDY4LjQwNjdDNTMuMDUwMyA3MS41MjY0IDU1LjEwNTkgNzQuMTY2MSA1Ny45MzY1IDc1LjA0NTFMNTcuOTM4MiA3Ni4zNzAxQzU1LjExOSA3Ny4yNTYgNTMuMDc0MSA3OS44OSA1My4wNzQxIDgzLjAwMTZDNTMuMDc0MSA4Ni44Mzk5IDU2LjE4NTcgODkuOTUxNSA2MC4wMjQgODkuOTUxNUM2My44NjI0IDg5Ljk1MTUgNjYuOTc0IDg2LjgzOTkgNjYuOTc0IDgzLjAwMTZDNjYuOTc0IDc5Ljg4OTMgNjQuOTI4MiA3Ny4yNTQ5IDYyLjEwODEgNzYuMzY5NUw2Mi4xMDY0IDc1LjAzMThDNjQuOTE1MSA3NC4xMzk3IDY2Ljk1MDIgNzEuNTEwOCA2Ni45NTAyIDY4LjQwNjdDNjYuOTUwMiA2NS4yOTY1IDY0LjkwNzEgNjIuNjYzNCA2Mi4wODk4IDYxLjc3NjRMNjIuMDg4MSA2MC40NTAyQzY0LjkxODYgNTkuNTcxIDY2Ljk3NCA1Ni45MzE1IDY2Ljk3NCA1My44MTE5QzY2Ljk3NCA1MC42OTExIDY0LjkxNyA0OC4wNTA4IDYyLjA4NSA0Ny4xNzI2TDYyLjA4NSAxNC4wMDk3QzY0LjkwNDcgMTMuMTI0MSA2Ni45NSAxMC40ODk5IDY2Ljk1IDcuMzc3OTFDNjYuOTUgMy41Mzk1NyA2My44Mzg0IDAuNDI3OTc5IDYwLjAwMDEgMC40Mjc5NzlaTTU3LjIyMDEgNy4zNzc5MUM1Ny4yMjAxIDUuODQyNTcgNTguNDY0OCA0LjU5Nzk0IDYwLjAwMDEgNC41OTc5NEM2MS41MzU0IDQuNTk3OTQgNjIuNzgwMSA1Ljg0MjU3IDYyLjc4MDEgNy4zNzc5MUM2Mi43ODAxIDguOTEzMjQgNjEuNTM1NCAxMC4xNTc5IDYwLjAwMDEgMTAuMTU3OUM1OC40NjQ4IDEwLjE1NzkgNTcuMjIwMSA4LjkxMzI0IDU3LjIyMDEgNy4zNzc5MVpNNTcuMjQ0MSA4My4wMDE2QzU3LjI0NDEgODEuNDY2MiA1OC40ODg3IDgwLjIyMTYgNjAuMDI0IDgwLjIyMTZDNjEuNTU5NCA4MC4yMjE2IDYyLjgwNCA4MS40NjYyIDYyLjgwNCA4My4wMDE2QzYyLjgwNCA4NC41MzY5IDYxLjU1OTQgODUuNzgxNSA2MC4wMjQgODUuNzgxNUM1OC40ODg3IDg1Ljc4MTUgNTcuMjQ0MSA4NC41MzY5IDU3LjI0NDEgODMuMDAxNlpNNTcuMjIwMyA2OC40MDY3QzU3LjIyMDMgNjYuODcxNCA1OC40NjQ5IDY1LjYyNjggNjAuMDAwMyA2NS42MjY4QzYxLjUzNTYgNjUuNjI2OCA2Mi43ODAyIDY2Ljg3MTQgNjIuNzgwMiA2OC40MDY3QzYyLjc4MDIgNjkuOTQyMSA2MS41MzU2IDcxLjE4NjcgNjAuMDAwMyA3MS4xODY3QzU4LjQ2NDkgNzEuMTg2NyA1Ny4yMjAzIDY5Ljk0MjEgNTcuMjIwMyA2OC40MDY3Wk02MC4wMjQgNTEuMDMxOUM1OC40ODg3IDUxLjAzMTkgNTcuMjQ0MSA1Mi4yNzY1IDU3LjI0NDEgNTMuODExOUM1Ny4yNDQxIDU1LjM0NzIgNTguNDg4NyA1Ni41OTE4IDYwLjAyNCA1Ni41OTE4QzYxLjU1OTQgNTYuNTkxOCA2Mi44MDQgNTUuMzQ3MiA2Mi44MDQgNTMuODExOUM2Mi44MDQgNTIuMjc2NSA2MS41NTk0IDUxLjAzMTkgNjAuMDI0IDUxLjAzMTlaIiBmaWxsPSIjMjQyOTJFIi8+DQo8L2c+DQo8ZGVmcz4NCjxjbGlwUGF0aCBpZD0iY2xpcDBfMTk2OjI4NzkiPg0KPHJlY3Qgd2lkdGg9IjEyMCIgaGVpZ2h0PSIxMjAiIGZpbGw9IndoaXRlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDAuNDI3OTc5KSIvPg0KPC9jbGlwUGF0aD4NCjwvZGVmcz4NCjwvc3ZnPg==';
4813
+ var css_248z$4 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\nspan.label {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.75rem, 8vw - 0.85rem, 0.95rem);\n color: #11181C;\n}\n\nspan.label-secondary {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n color: #687075;\n}\n\n.btn-group {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n width: fit-content;\n display: flex;\n border-radius: 4px;\n}\n\n.btn-group:hover {\n box-shadow: 0 1px 2px 0 rgba(26, 115, 232, 0.45), 0 1px 3px 1px rgba(26, 115, 232, 0.3);\n}\n\n.btn-group-disabled:hover {\n box-shadow: none;\n}\n\n.btn-group button {\n max-width: 260px;\n display: flex;\n background-color: var(--primary);\n border: 1px solid var(--primary);\n color: white;\n padding: 6px 10px;\n cursor: pointer;\n float: left;\n transition: background-color 0.125s ease-in-out;\n z-index: 10;\n align-items: center;\n gap: 8px;\n}\n\n.btn-group-disabled button {\n background-color: var(--grey3);\n color: var(--grey5);\n cursor: default;\n border-color: var(--grey5);\n}\n\n.btn-group button:first-child {\n border-top-left-radius: 4px;\n border-bottom-left-radius: 4px;\n}\n\n.btn-group button:last-child {\n border-top-right-radius: 4px;\n border-bottom-right-radius: 4px;\n border-left-color: #096dd9;\n}\n\n.btn-group button:last-child:disabled {\n border-left-color: var(--grey5);\n}\n\n.btn-group button:not(:last-child) {\n border-right: none;\n}\n\n.btn-group button:focus-visible {\n outline: none;\n}\n\n.btn-group button:focus {\n outline: none;\n}\n\n/* Clear floats (clearfix hack) */\n.btn-group:after {\n content: \"\";\n clear: both;\n display: table;\n}\n\n.btn-group button:hover {\n background-color: var(--primary2);\n z-index: 11;\n}\n\n.btn-group-disabled:hover button:hover {\n background-color: var(--grey3);\n}\n\n.options-content {\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n}";
4814
+ styleInject(css_248z$4);
4815
+
4816
+ var logo = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTIwIiBoZWlnaHQ9IjEyMSIgdmlld0JveD0iMCAwIDEyMCAxMjEiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMF8xOTY6Mjg3OSkiPgo8cGF0aCBkPSJNNzQuMTMyOSAxOS45MzVDNzEuMjU0NiAxOC4xNjQ0IDY3Ljc1OCAxNy4xNTg2IDY0LjIxMzggMTYuNjM3OUM2MC44ODM5IDE2LjI1MjcgNTkuMDY5NyAxNi4yNiA1NS44ODQyIDE2LjU2NTNDNTIuMjg2IDE3LjAyOTUgNDguODg2NiAxOC4xMjY5IDQ1LjgwMTIgMTkuNzQyMkwzOC45NzQ2IDI0LjYzMzRDMzUuMDMzNSAyOC4zODQ0IDMyLjEwNDcgMzMuMTg5OCAzMC42Mzk3IDM4LjU5NzdDMzAuNTQ0MyAzOC45NTAxIDMwLjI3MDMgMzkuMjI3MSAyOS45MTkxIDM5LjMyNjlDMTguMjE2NiA0Mi42NTM3IDkuMDk3NjYgNTMuMDE3MyA4LjE0ODg1IDY1LjI1MTdDNy45NTgxIDY3LjcxMTUgOC4wNDI1MiA2OS4wNzc5IDguMTQ4ODYgNzEuNDk4OUM4LjYxNTcxIDgyLjEyNzggMTguMjAxOSA5NC4wNDY1IDI5LjkyIDk3LjQyMjlDMzAuMjcwOCA5Ny41MjM5IDMwLjU0NDQgOTcuODAxMSAzMC42Mzk4IDk4LjE1MzVDMzMuOTA2MyAxMTAuMjIxIDQ0LjQzMjYgMTE5LjU1MyA1Ny4yNzI3IDEyMC4zMzJDNTkuNzYzMiAxMjAuNDgzIDYxLjEyMTMgMTIwLjQ2NiA2My41MTk5IDEyMC4yMDdDNzQuNTAyNyAxMTkuMDE3IDg1LjY0MzMgMTA5LjkxNCA4OC44OSA5OC4zMDM2Qzg4Ljk4OTcgOTcuOTQ3IDg5LjI3MTUgOTcuNjY4NyA4OS42Mjk1IDk3LjU3NDJDMTAxLjYgOTQuNDE0MSAxMTAuODA5IDgzLjkyMjYgMTExLjc3OCA3MS4zMjc2TDExMS43OSA3MS4xNjMyQzExMS45NyA2OC44MzQ5IDExMi4wNzYgNjcuNDYxMiAxMTEuNzc4IDY1LjA4MDRDMTEwLjE3MiA1Mi4yNDEzIDEwMS41OCA0Mi4zMTg1IDg5LjYzMDEgMzkuMTc2M0M4OS4yNzIgMzkuMDgyMiA4OC45OTA0IDM4LjgwNDMgODguODg3NiAzOC40NDg2Qzg3LjM0NTQgMzMuMTEyMSA4My4xNTY3IDI2LjkxMDggODAuODY2OSAyNC44OTMyQzc4LjQ5MzYgMjIuODAyIDc3LjAxMTIgMjEuNzA1NSA3NC4xMzI5IDE5LjkzNVoiIGZpbGw9IiNGQUZBRkEiLz4KPHBhdGggZD0iTTU1LjM1NjUgODEuNTQ2M0M1Mi4yMTA2IDg1LjczMjQgNDcuNTk4OCA4OC43NTM5IDQyLjI4MzMgODkuODQ4N0M0Mi4yNzk2IDg5Ljk5ODMgNDIuMjc3NyA5MC4xNDg0IDQyLjI3NzcgOTAuMjk5QzQyLjI3NzcgMTAwLjA4NyA1MC4yMTIzIDEwOC4wMjEgNjAgMTA4LjAyMUM2OS43ODc4IDEwOC4wMjEgNzcuNzIyMyAxMDAuMDg3IDc3LjcyMjMgOTAuMjk5Qzc3LjcyMjMgODAuNTExMiA2OS43ODc4IDcyLjU3NjcgNjAgNzIuNTc2N0M1OS43NzgyIDcyLjU3NjcgNTkuNTU3NCA3Mi41ODA3IDU5LjMzNzUgNzIuNTg4OEM1OC44NzI3IDc0Ljk5MTkgNTguMDE0OCA3Ny4yNTQ4IDU2LjgzMzYgNzkuMzA4QzU3LjY4NDUgNzguNTc3OCA1OC43OTA4IDc4LjEzNjYgNjAgNzguMTM2NkM2Mi42ODY5IDc4LjEzNjYgNjQuODY1IDgwLjMxNDcgNjQuODY1IDgzLjAwMTZDNjQuODY1IDg1LjY4ODQgNjIuNjg2OSA4Ny44NjY1IDYwIDg3Ljg2NjVDNTcuMzEzMiA4Ny44NjY1IDU1LjEzNTEgODUuNjg4NCA1NS4xMzUxIDgzLjAwMTZDNTUuMTM1MSA4Mi40OTQ2IDU1LjIxMjYgODIuMDA1OCA1NS4zNTY1IDgxLjU0NjNaIiBmaWxsPSIjRjJCMjREIi8+CjxwYXRoIGQ9Ik03My4zNTUgMjAuODc1NEM3My43MTk5IDIwLjM1OTEgNzMuNTgxNyAxOS42MjM5IDczLjAxMzggMTkuMzQ1OUM3MC42MDg3IDE4LjE2ODMgNjguMDI0IDE3LjMwMDcgNjUuMzExOSAxNi43OTUyQzY0LjcxMiAxNi42ODM0IDY0LjE2OTkgMTcuMTUyNCA2NC4xNjk5IDE3Ljc2MjZWMjQuMjU2M0M2NC4xNjk5IDI0LjczMDkgNjQuNTA0MiAyNS4xMzc3IDY0Ljk2NTIgMjUuMjUwN0M2Ni41MzY0IDI1LjYzNTggNjguMDQxIDI2LjE5MDUgNjkuNDU4NyAyNi44OTQyQzcwLjA4ODggMjcuMjA3MSA3MC44NjQ0IDI2LjgzNzYgNzEuMDI0OCAyNi4xNTI3QzcxLjQ2NTMgMjQuMjcxOCA3Mi4xOTA2IDIyLjUyMyA3My4zNTUgMjAuODc1NFoiIGZpbGw9IiMyNDI5MkUiLz4KPHBhdGggZD0iTTc4Ljg3MjcgMzUuODcwMkM3OC43ODc2IDM1LjcxNzggNzguNzQxNSAzNS41NDY1IDc4Ljc0MTUgMzUuMzcxOVYzMi44ODkxQzc4Ljc0MTUgMzIuODg4NyA3OC43NDEyIDMyLjg4ODQgNzguNzQwOCAzMi44ODg0VjMyLjg4ODRDNzguNzQwNCAzMi44ODg0IDc4Ljc0MDEgMzIuODg4MSA3OC43NDAxIDMyLjg4NzdDNzguNzQwMiAyOC45NTEgNzkuMTczNCAyNy4wNzAzIDgwLjE5NiAyNS42NDQ4QzgwLjUyMDIgMjUuMTkyNyA4MS4xNzAxIDI1LjE4NjQgODEuNTU1MiAyNS41ODc5Qzg0Ljk3MTYgMjkuMTQ5NyA4Ny41MjQ1IDMzLjU0NjUgODguODc4IDM4LjQ0MkM4OC45NzY3IDM4Ljc5ODggODkuMjU4NyAzOS4wNzcgODkuNjE2NyAzOS4xNzEzQzEwMS4yNDggNDIuMjM3MSAxMTAuMTM1IDUyLjA1MzYgMTExLjgzMSA2NC4xNzlDMTExLjkxMyA2NC43NjYgMTExLjQ0OSA2NS4yNzkzIDExMC44NTcgNjUuMjc5M0gxMDQuNDNDMTAzLjkzMiA2NS4yNzkzIDEwMy41MTMgNjQuOTEyOCAxMDMuNDIzIDY0LjQyMzRDMTAxLjczIDU1LjIxNDYgOTQuMjcyOSA0OC4wMTg5IDg0LjkzMjkgNDYuNzIzNEw4Mi41ODczIDQ2LjM5ODFDODIuMTQ4NCA0Ni4zMzcyIDgxLjgwMiA0NS45OTQ4IDgxLjczNTggNDUuNTU2OEw4MS4zODI1IDQzLjIxNTJDODAuOTg1NSA0MC41ODQyIDgwLjExOTUgMzguMTA2NiA3OC44NzI3IDM1Ljg3MDJaIiBmaWxsPSIjMjQyOTJFIi8+CjxwYXRoIGQ9Ik0zOS4wMDYxIDI0LjcxNzFDMzguOTQ2NyAyNC42NTc4IDM4Ljg1MDggMjQuNjU2NSAzOC43OTAzIDI0LjcxNDdDMzQuODk5MSAyOC40NTUyIDMyLjAwNzIgMzMuMjI3OSAzMC41NTM5IDM4LjU5MjhDMzAuNDU4NSAzOC45NDUxIDMwLjE4NDIgMzkuMjIyMyAyOS44MzMxIDM5LjMyMkMxOC40NzMyIDQyLjU0ODUgOS44MzgxNyA1Mi4yNDUzIDguMTY4NyA2NC4xNzkxQzguMDg2NTggNjQuNzY2MSA4LjU1MDU4IDY1LjI3OTMgOS4xNDMyOSA2NS4yNzkzSDE1LjU3MDFDMTYuMDY3NyA2NS4yNzkzIDE2LjQ4NzEgNjQuOTEyOCAxNi41NzcxIDY0LjQyMzRDMTguMjQyOSA1NS4zNjQxIDI1LjQ4NjYgNDguMjUyNCAzNC42MTQ3IDQ2Ljc5MUwzNi45MDk4IDQ2LjQyMzVDMzcuMzQwOCA0Ni4zNTQ1IDM3LjY3NzIgNDYuMDE0IDM3Ljc0MSA0NS41ODIyTDM4LjA4MDYgNDMuMjgyOEMzOC41MjMyIDQwLjI4NjYgMzkuNTczNiAzNy40ODgxIDQxLjEwMjQgMzUuMDE2M0M0MS4yMDIyIDM0Ljg1NDkgNDEuMjU3IDM0LjY2OTQgNDEuMjU3MyAzNC40Nzk2TDQxLjI1OTkgMzIuODgxN0M0MS4yNTkzIDI4LjA0NzIgNDAuNjA0NiAyNi4zMTU2IDM5LjAwNjEgMjQuNzE3MVYyNC43MTcxWiIgZmlsbD0iIzI0MjkyRSIvPgo8cGF0aCBkPSJNNTAuNDYwOSAyNi42Nzg5QzQ5LjgzODUgMjYuOTcwNSA0OS4wODg5IDI2LjYwNzggNDguOTI0MSAyNS45NDA2QzQ4LjQ2MjkgMjQuMDczNiA0Ny43MTI0IDIyLjMzNzIgNDYuNTE5MiAyMC43MDAzQzQ2LjEzOTYgMjAuMTc5NiA0Ni4yODA4IDE5LjQyNjQgNDYuODYzNyAxOS4xNTE3QzQ5LjMxNDkgMTcuOTk2NSA1MS45NDY2IDE3LjE2MSA1NC43MDUgMTYuNjk5QzU1LjI5OTggMTYuNTk5NCA1NS44MyAxNy4wNjY1IDU1LjgzIDE3LjY2OTZWMjQuMTMzOUM1NS44MyAyNC42MTc4IDU1LjQ4MjkgMjUuMDI5OCA1NS4wMTA0IDI1LjEzMzhDNTMuNDIyNCAyNS40ODMzIDUxLjg5OSAyNi4wMDUzIDUwLjQ2MDkgMjYuNjc4OVoiIGZpbGw9IiMyNDI5MkUiLz4KPHBhdGggZD0iTTgxLjM4MjUgOTMuNTk4M0M4MC4wMjEgMTAyLjYyIDczLjE0NjYgMTA5LjgzNyA2NC4zMDI4IDExMS43MTRDNjMuODI2NSAxMTEuODE1IDYzLjQ3NTIgMTEyLjIyOSA2My40NzUyIDExMi43MTZWMTE5LjE3MkM2My40NzUyIDExOS43NzIgNjQuMDAxOCAxMjAuMjM5IDY0LjU5NDkgMTIwLjE0M0M3Ni4zMDg2IDExOC4yNTEgODUuNzY1IDEwOS42MyA4OC44Nzc4IDk4LjM3MjJDODguOTc2NSA5OC4wMTUzIDg5LjI1ODcgOTcuNzM2NSA4OS42MTY3IDk3LjY0MjJDMTAxLjI0NyA5NC41NzY0IDExMC4xMzUgODQuNzU5OCAxMTEuODMxIDcyLjYzNDVDMTExLjkxMyA3Mi4wNDc1IDExMS40NDkgNzEuNTM0MiAxMTAuODU3IDcxLjUzNDJIMTA0LjQzQzEwMy45MzIgNzEuNTM0MiAxMDMuNTEzIDcxLjkwMDcgMTAzLjQyMyA3Mi4zOTAxQzEwMS43MyA4MS41OTg5IDk0LjI3MjkgODguNzk0NiA4NC45MzI5IDkwLjA5MDFMODIuNTg3MyA5MC40MTU0QzgyLjE0ODQgOTAuNDc2MyA4MS44MDIgOTAuODE4NiA4MS43MzU4IDkxLjI1NjdMODEuMzgyNSA5My41OTgzWiIgZmlsbD0iIzI0MjkyRSIvPgo8cGF0aCBkPSJNMzQuNjE0NyA5MC4wMjI1QzI1LjQ4NjYgODguNTYxMSAxOC4yNDI5IDgxLjQ0OTQgMTYuNTc3MSA3Mi4zOUMxNi40ODcxIDcxLjkwMDcgMTYuMDY3NyA3MS41MzQyIDE1LjU3MDEgNzEuNTM0Mkg5LjE0MzI5QzguNTUwNTggNzEuNTM0MiA4LjA4NjU4IDcyLjA0NzQgOC4xNjg3IDcyLjYzNDRDOS44MzgxOCA4NC41NjgyIDE4LjQ3MzIgOTQuMjY1IDI5LjgzMzEgOTcuNDkxNUMzMC4xODQyIDk3LjU5MTIgMzAuNDU4NiA5Ny44NjkgMzAuNTU0MSA5OC4yMjE0QzMzLjczMjkgMTA5Ljk1NSA0My43OTQgMTE4Ljg1NiA1Ni4xMzk1IDEyMC4zMTlDNTYuNzIwMSAxMjAuMzg4IDU3LjIyMDMgMTE5LjkyNyA1Ny4yMjAzIDExOS4zNDJWMTEyLjk0QzU3LjIyMDMgMTEyLjQzMiA1Ni44MzgzIDExMi4wMDcgNTYuMzM2MSAxMTEuOTI5QzQ2LjkxMjkgMTEwLjQ1OSAzOS40NzU5IDEwMi45NzcgMzguMDgwNiA5My41MzA3TDM3Ljc0MSA5MS4yMzEzQzM3LjY3NzIgOTAuNzk5NSAzNy4zNDA4IDkwLjQ1ODkgMzYuOTA5OCA5MC4zODk5TDM0LjYxNDcgOTAuMDIyNVoiIGZpbGw9IiMyNDI5MkUiLz4KPHBhdGggZD0iTTgxLjYyODggODYuMTI5QzkxLjQxNjYgODYuMTI5IDk5LjM1MTEgNzguMTk0NSA5OS4zNTExIDY4LjQwNjdDOTkuMzUxMSA1OC42MTg5IDkxLjQxNjYgNTAuNjg0NCA4MS42Mjg4IDUwLjY4NDRDNzEuODQxIDUwLjY4NDQgNjMuOTA2NSA1OC42MTg5IDYzLjkwNjUgNjguNDA2N0M2My45MDY1IDY4LjUzOTYgNjMuOTA4IDY4LjY3MjEgNjMuOTEwOSA2OC44MDQyQzY2LjMzNyA2OS4yNzI2IDY4LjYyMDQgNzAuMTQxNSA3MC42ODk2IDcxLjMzOTVDNzAuMDcyNSA3MC41MjQxIDY5LjcwNjUgNjkuNTA4MSA2OS43MDY1IDY4LjQwNjdDNjkuNzA2NSA2NS43MTk5IDcxLjg4NDYgNjMuNTQxOCA3NC41NzE1IDYzLjU0MThDNzcuMjU4MyA2My41NDE4IDc5LjQzNjQgNjUuNzE5OSA3OS40MzY0IDY4LjQwNjdDNzkuNDM2NCA3MS4wOTM1IDc3LjI1ODMgNzMuMjcxNyA3NC41NzE1IDczLjI3MTdDNzQuMTI0OSA3My4yNzE3IDczLjY5MjMgNzMuMjExNSA3My4yODE0IDczLjA5ODhDNzcuMzI1MSA3Ni4yODc1IDgwLjIxNzEgODAuODcxNSA4MS4yMzEzIDg2LjEyNDdDODEuMzYzNSA4Ni4xMjc2IDgxLjQ5NiA4Ni4xMjkgODEuNjI4OCA4Ni4xMjlaIiBmaWxsPSIjRUIyMjI3Ii8+CjxwYXRoIGQ9Ik03Ny43MTc5IDQ2LjkxMTlDNzcuNzIwOCA0Ni43Nzk4IDc3LjcyMjIgNDYuNjQ3MyA3Ny43MjIyIDQ2LjUxNDRDNzcuNzIyMiAzNi43MjY3IDY5Ljc4NzcgMjguNzkyMSA1OS45OTk5IDI4Ljc5MjFDNTAuMjEyMSAyOC43OTIxIDQyLjI3NzYgMzYuNzI2NyA0Mi4yNzc2IDQ2LjUxNDRDNDIuMjc3NiA1Ni4zMDIyIDUwLjIxMjEgNjQuMjM2NyA1OS45OTk5IDY0LjIzNjdDNjAuMTMyOCA2NC4yMzY3IDYwLjI2NTMgNjQuMjM1MyA2MC4zOTc0IDY0LjIzMjRDNjAuODM1NyA2MS45NjIzIDYxLjYyNDYgNTkuODE3MiA2Mi43MDU2IDU3Ljg1NTZDNjEuOTMyIDU4LjM3NDMgNjEuMDAxMyA1OC42NzY4IDU5Ljk5OTkgNTguNjc2OEM1Ny4zMTMxIDU4LjY3NjggNTUuMTM1IDU2LjQ5ODcgNTUuMTM1IDUzLjgxMTlDNTUuMTM1IDUxLjEyNSA1Ny4zMTMxIDQ4Ljk0NjkgNTkuOTk5OSA0OC45NDY5QzYyLjY4NjcgNDguOTQ2OSA2NC44NjQ5IDUxLjEyNSA2NC44NjQ5IDUzLjgxMTlDNjQuODY0OSA1NC4xMzY0IDY0LjgzMzEgNTQuNDUzNiA2NC43NzI0IDU0Ljc2MDRDNjcuOTU3NSA1MC43Njk4IDcyLjUwODcgNDcuOTE3NiA3Ny43MTc5IDQ2LjkxMTlaIiBmaWxsPSIjMDRBNTRGIi8+CjxwYXRoIGQ9Ik01NS41NjEgNjcuOTU2NEM1NS41NjQ3IDY4LjEwNjEgNTUuNTY2NiA2OC4yNTYyIDU1LjU2NjYgNjguNDA2N0M1NS41NjY2IDc4LjE5NDUgNDcuNjMyIDg2LjEyOSAzNy44NDQzIDg2LjEyOUMyOC4wNTY1IDg2LjEyOSAyMC4xMjE5IDc4LjE5NDUgMjAuMTIxOSA2OC40MDY3QzIwLjEyMTkgNTguNjE4OSAyOC4wNTY1IDUwLjY4NDQgMzcuODQ0MyA1MC42ODQ0QzM4LjA2NiA1MC42ODQ0IDM4LjI4NjggNTAuNjg4NSAzOC41MDY2IDUwLjY5NjVDMzkuNTE0MyA1NS45MDYgNDIuMzY4OSA2MC40NTcgNDYuMzYxOSA2My42NDA4QzQ2LjA0NDggNjMuNTc1OSA0NS43MTY2IDYzLjU0MTggNDUuMzgwNCA2My41NDE4QzQyLjY5MzUgNjMuNTQxOCA0MC41MTU0IDY1LjcxOTkgNDAuNTE1NCA2OC40MDY3QzQwLjUxNTQgNzEuMDkzNSA0Mi42OTM1IDczLjI3MTcgNDUuMzgwNCA3My4yNzE3QzQ4LjA2NzIgNzMuMjcxNyA1MC4yNDUzIDcxLjA5MzUgNTAuMjQ1MyA2OC40MDY3QzUwLjI0NTMgNjcuMzk1OSA0OS45MzcxIDY2LjQ1NzIgNDkuNDA5NSA2NS42NzkzQzUxLjMwNTQgNjYuNzI5MiA1My4zNzM2IDY3LjUwNiA1NS41NjEgNjcuOTU2NFoiIGZpbGw9IiMyREE5RTEiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0zMC4xMDg4IDE2LjA2ODZDMzAuMTA4OCAxMi4yMzAyIDMzLjIyMDQgOS4xMTg2NSAzNy4wNTg3IDkuMTE4NjVDNDAuODk3IDkuMTE4NjUgNDQuMDA4NiAxMi4yMzAyIDQ0LjAwODYgMTYuMDY4NkM0NC4wMDg2IDE3LjM0ODMgNDMuNjYyOCAxOC41NDcyIDQzLjA1OTQgMTkuNTc3TDQzLjQyOTEgMTkuOTQ2N0w0MC40ODA1IDIyLjg5NTNMMzkuOTY3NSAyMi4zODIzQzM5LjA4MjYgMjIuNzkwNyAzOC4wOTczIDIzLjAxODUgMzcuMDU4NyAyMy4wMTg1QzMzLjIyMDQgMjMuMDE4NSAzMC4xMDg4IDE5LjkwNjkgMzAuMTA4OCAxNi4wNjg2Wk0zNy4wNTg3IDEzLjI4ODZDMzUuNTIzNCAxMy4yODg2IDM0LjI3ODcgMTQuNTMzMiAzNC4yNzg3IDE2LjA2ODZDMzQuMjc4NyAxNy42MDM5IDM1LjUyMzQgMTguODQ4NiAzNy4wNTg3IDE4Ljg0ODZDMzguNTk0IDE4Ljg0ODYgMzkuODM4NyAxNy42MDM5IDM5LjgzODcgMTYuMDY4NkMzOS44Mzg3IDE0LjUzMzIgMzguNTk0IDEzLjI4ODYgMzcuMDU4NyAxMy4yODg2WiIgZmlsbD0iIzI0MjkyRSIvPgo8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTQzLjI3MyA2MS43ODk3TDQzLjMyMDIgMzIuNTM3NUw0My4zNDUgMzIuNTM3NUM0My4zNDQ3IDI3LjUxMzggNDIuNjY5NiAyNS4wODQ0IDQwLjQ4MDUgMjIuODk1M0w0My40MjkxIDE5Ljk0NjdDNDYuNzk5NSAyMy4zMTcxIDQ3LjUxNSAyNy4xNDIgNDcuNTE1IDMyLjU0MDlINDUuNDExOEw0Ny40OTAyIDMyLjU0NDJMNDcuNDQzIDYxLjc2MDZDNTAuMjg2NiA2Mi42MzE3IDUyLjM1NDMgNjUuMjc3NyA1Mi4zNTQzIDY4LjQwNjdDNTIuMzU0MyA3Mi4yNDUgNDkuMjQyNyA3NS4zNTY2IDQ1LjQwNDQgNzUuMzU2NkM0MS41NjYgNzUuMzU2NiAzOC40NTQ0IDcyLjI0NSAzOC40NTQ0IDY4LjQwNjdDMzguNDU0NCA2NS4zMTE5IDQwLjQ3NzMgNjIuNjg5NSA0My4yNzMgNjEuNzg5N1pNNDUuNDA0NCA2NS42MjY3QzQzLjg2OSA2NS42MjY3IDQyLjYyNDQgNjYuODcxMyA0Mi42MjQ0IDY4LjQwNjdDNDIuNjI0NCA2OS45NDIgNDMuODY5IDcxLjE4NjcgNDUuNDA0NCA3MS4xODY3QzQ2LjkzOTcgNzEuMTg2NyA0OC4xODQzIDY5Ljk0MiA0OC4xODQzIDY4LjQwNjdDNDguMTg0MyA2Ni44NzE0IDQ2LjkzOTcgNjUuNjI2NyA0NS40MDQ0IDY1LjYyNjdaIiBmaWxsPSIjMjQyOTJFIi8+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNzYuNDQ4MyAxNi4wNjg2Qzc2LjQ0ODMgMTIuMjMwMiA3OS41NTk5IDkuMTE4NjUgODMuMzk4MiA5LjExODY1Qzg3LjIzNjYgOS4xMTg2NSA5MC4zNDgxIDEyLjIzMDIgOTAuMzQ4MSAxNi4wNjg2QzkwLjM0ODEgMTkuOTA2OSA4Ny4yMzY2IDIzLjAxODUgODMuMzk4MiAyMy4wMTg1QzgyLjIzODIgMjMuMDE4NSA4MS4xNDQ2IDIyLjczNDMgODAuMTgzMiAyMi4yMzE4TDc5LjUxOTYgMjIuODk1M0M3OS41MTk2IDIyLjg5NTMgNzkuNTE5NiAyMi44OTUzIDc5LjUxOTYgMjIuODk1M0M3Ny4zMzAxIDI1LjA4NDkgNzYuNjU1MyAyNy41MTQ5IDc2LjY1NTMgMzIuNTQwOUw3Ni42NTY3IDMyLjU0MDlWNjEuNzY3NEM3OS40ODg4IDYyLjY0NTUgODEuNTQ1NyA2NS4yODU5IDgxLjU0NTcgNjguNDA2N0M4MS41NDU3IDcyLjI0NSA3OC40MzQxIDc1LjM1NjYgNzQuNTk1OCA3NS4zNTY2QzcwLjc1NzUgNzUuMzU2NiA2Ny42NDU5IDcyLjI0NSA2Ny42NDU5IDY4LjQwNjdDNjcuNjQ1OSA2NS4zMDM2IDY5LjY3OTUgNjIuNjc1NiA3Mi40ODY3IDYxLjc4MjVWMzIuNTQwOUw3Mi40ODU0IDMyLjU0MDlDNzIuNDg1NCAyNy4xNDIgNzMuMjAwNyAyMy4zMTcgNzYuNTcxIDE5Ljk0NjdMNzcuMjM0NyAxOS4yODNDNzYuNzMyNCAxOC4zMjE4IDc2LjQ0ODMgMTcuMjI4MyA3Ni40NDgzIDE2LjA2ODZaTTgzLjM5ODIgMTMuMjg4NkM4MS44NjI5IDEzLjI4ODYgODAuNjE4MiAxNC41MzMyIDgwLjYxODIgMTYuMDY4NkM4MC42MTgyIDE3LjYwMzkgODEuODYyOSAxOC44NDg2IDgzLjM5ODIgMTguODQ4NkM4NC45MzM2IDE4Ljg0ODYgODYuMTc4MiAxNy42MDM5IDg2LjE3ODIgMTYuMDY4NkM4Ni4xNzgyIDE0LjUzMzIgODQuOTMzNiAxMy4yODg2IDgzLjM5ODIgMTMuMjg4NlpNNzQuNTk1OCA2NS42MjY3QzczLjA2MDUgNjUuNjI2NyA3MS44MTU4IDY2Ljg3MTQgNzEuODE1OCA2OC40MDY3QzcxLjgxNTggNjkuOTQyIDczLjA2MDUgNzEuMTg2NyA3NC41OTU4IDcxLjE4NjdDNzYuMTMxMSA3MS4xODY3IDc3LjM3NTggNjkuOTQyIDc3LjM3NTggNjguNDA2N0M3Ny4zNzU4IDY2Ljg3MTQgNzYuMTMxMSA2NS42MjY3IDc0LjU5NTggNjUuNjI2N1oiIGZpbGw9IiMyNDI5MkUiLz4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik02MC4wMDAxIDAuNDI3OTc5QzU2LjE2MTggMC40Mjc5NzkgNTMuMDUwMiAzLjUzOTU3IDUzLjA1MDIgNy4zNzc5MUM1My4wNTAyIDEwLjQ4OTggNTUuMDk1NCAxMy4xMjQgNTcuOTE1IDE0LjAwOTZMNTcuOTE1IDQ3LjE4NzdDNTUuMTA3OCA0OC4wODA3IDUzLjA3NDEgNTAuNzA4OCA1My4wNzQxIDUzLjgxMTlDNTMuMDc0MSA1Ni45MTYxIDU1LjEwOTMgNTkuNTQ1IDU3LjkxODEgNjAuNDM3TDU3LjkxOTggNjEuNzczNUM1NS4wOTc4IDYyLjY1NzcgNTMuMDUwMyA2NS4yOTMxIDUzLjA1MDMgNjguNDA2N0M1My4wNTAzIDcxLjUyNjQgNTUuMTA1OSA3NC4xNjYxIDU3LjkzNjUgNzUuMDQ1MUw1Ny45MzgyIDc2LjM3MDFDNTUuMTE5IDc3LjI1NiA1My4wNzQxIDc5Ljg5IDUzLjA3NDEgODMuMDAxNkM1My4wNzQxIDg2LjgzOTkgNTYuMTg1NyA4OS45NTE1IDYwLjAyNCA4OS45NTE1QzYzLjg2MjQgODkuOTUxNSA2Ni45NzQgODYuODM5OSA2Ni45NzQgODMuMDAxNkM2Ni45NzQgNzkuODg5MyA2NC45MjgyIDc3LjI1NDkgNjIuMTA4MSA3Ni4zNjk1TDYyLjEwNjQgNzUuMDMxOEM2NC45MTUxIDc0LjEzOTcgNjYuOTUwMiA3MS41MTA4IDY2Ljk1MDIgNjguNDA2N0M2Ni45NTAyIDY1LjI5NjUgNjQuOTA3MSA2Mi42NjM0IDYyLjA4OTggNjEuNzc2NEw2Mi4wODgxIDYwLjQ1MDJDNjQuOTE4NiA1OS41NzEgNjYuOTc0IDU2LjkzMTUgNjYuOTc0IDUzLjgxMTlDNjYuOTc0IDUwLjY5MTEgNjQuOTE3IDQ4LjA1MDggNjIuMDg1IDQ3LjE3MjZMNjIuMDg1IDE0LjAwOTdDNjQuOTA0NyAxMy4xMjQxIDY2Ljk1IDEwLjQ4OTkgNjYuOTUgNy4zNzc5MUM2Ni45NSAzLjUzOTU3IDYzLjgzODQgMC40Mjc5NzkgNjAuMDAwMSAwLjQyNzk3OVpNNTcuMjIwMSA3LjM3NzkxQzU3LjIyMDEgNS44NDI1NyA1OC40NjQ4IDQuNTk3OTQgNjAuMDAwMSA0LjU5Nzk0QzYxLjUzNTQgNC41OTc5NCA2Mi43ODAxIDUuODQyNTcgNjIuNzgwMSA3LjM3NzkxQzYyLjc4MDEgOC45MTMyNCA2MS41MzU0IDEwLjE1NzkgNjAuMDAwMSAxMC4xNTc5QzU4LjQ2NDggMTAuMTU3OSA1Ny4yMjAxIDguOTEzMjQgNTcuMjIwMSA3LjM3NzkxWk01Ny4yNDQxIDgzLjAwMTZDNTcuMjQ0MSA4MS40NjYyIDU4LjQ4ODcgODAuMjIxNiA2MC4wMjQgODAuMjIxNkM2MS41NTk0IDgwLjIyMTYgNjIuODA0IDgxLjQ2NjIgNjIuODA0IDgzLjAwMTZDNjIuODA0IDg0LjUzNjkgNjEuNTU5NCA4NS43ODE1IDYwLjAyNCA4NS43ODE1QzU4LjQ4ODcgODUuNzgxNSA1Ny4yNDQxIDg0LjUzNjkgNTcuMjQ0MSA4My4wMDE2Wk01Ny4yMjAzIDY4LjQwNjdDNTcuMjIwMyA2Ni44NzE0IDU4LjQ2NDkgNjUuNjI2OCA2MC4wMDAzIDY1LjYyNjhDNjEuNTM1NiA2NS42MjY4IDYyLjc4MDIgNjYuODcxNCA2Mi43ODAyIDY4LjQwNjdDNjIuNzgwMiA2OS45NDIxIDYxLjUzNTYgNzEuMTg2NyA2MC4wMDAzIDcxLjE4NjdDNTguNDY0OSA3MS4xODY3IDU3LjIyMDMgNjkuOTQyMSA1Ny4yMjAzIDY4LjQwNjdaTTYwLjAyNCA1MS4wMzE5QzU4LjQ4ODcgNTEuMDMxOSA1Ny4yNDQxIDUyLjI3NjUgNTcuMjQ0MSA1My44MTE5QzU3LjI0NDEgNTUuMzQ3MiA1OC40ODg3IDU2LjU5MTggNjAuMDI0IDU2LjU5MThDNjEuNTU5NCA1Ni41OTE4IDYyLjgwNCA1NS4zNDcyIDYyLjgwNCA1My44MTE5QzYyLjgwNCA1Mi4yNzY1IDYxLjU1OTQgNTEuMDMxOSA2MC4wMjQgNTEuMDMxOVoiIGZpbGw9IiMyNDI5MkUiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xOTY6Mjg3OSI+CjxyZWN0IHdpZHRoPSIxMjAiIGhlaWdodD0iMTIwIiBmaWxsPSJ3aGl0ZSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAwLjQyNzk3OSkiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4=';
4781
4817
 
4782
4818
  function Logo() {
4783
4819
  return (React__default["default"].createElement("div", { style: {
@@ -4795,14 +4831,14 @@ const VisuallyHidden=/*#__PURE__*/React__namespace.forwardRef(((i,o)=>/*#__PURE_
4795
4831
 
4796
4832
  function usePrevious(r){const u=React__namespace.useRef({value:r,previous:r});return React__namespace.useMemo((()=>(u.current.value!==r&&(u.current.previous=u.current.value,u.current.value=r),u.current.previous)),[r])}
4797
4833
 
4798
- const[w,x]=createContextScope("Tooltip",[l$1]);const g=l$1(),E=700,[v,b]=w("TooltipProvider",{isOpenDelayed:!0,delayDuration:E,onOpen:()=>{},onClose:()=>{}});const[y,_]=w("Tooltip");const Tooltip$1=o=>{const{__scopeTooltip:t,children:r,open:i,defaultOpen:a=!1,onOpenChange:l,delayDuration:c}=o,s=b("Tooltip",t),u=g(t),[d,m]=React__namespace.useState(null),f=useId(),C=React__namespace.useRef(0),w=null!=c?c:s.delayDuration,x=React__namespace.useRef(!1),{onOpen:E,onClose:v}=s,[_=!1,h]=useControllableState({prop:i,defaultProp:a,onChange:e=>{e&&(document.dispatchEvent(new CustomEvent("tooltip.open")),E()),null==l||l(e);}}),k=React__namespace.useMemo((()=>_?x.current?"delayed-open":"instant-open":"closed"),[_]),D=React__namespace.useCallback((()=>{window.clearTimeout(C.current),x.current=!1,h(!0);}),[h]),O=React__namespace.useCallback((()=>{window.clearTimeout(C.current),C.current=window.setTimeout((()=>{x.current=!0,h(!0);}),w);}),[w,h]);return React__namespace.useEffect((()=>()=>window.clearTimeout(C.current)),[]),/*#__PURE__*/React__namespace.createElement(Root$6,u,/*#__PURE__*/React__namespace.createElement(y,{scope:t,contentId:f,open:_,stateAttribute:k,trigger:d,onTriggerChange:m,onTriggerEnter:React__namespace.useCallback((()=>{s.isOpenDelayed?O():D();}),[s.isOpenDelayed,O,D]),onOpen:React__namespace.useCallback(D,[D]),onClose:React__namespace.useCallback((()=>{window.clearTimeout(C.current),h(!1),v();}),[h,v])},r))};const TooltipTrigger=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{__scopeTooltip:t,...r}=e,i=_("TooltipTrigger",t),l=g(t),c=useComposedRefs(o,i.onTriggerChange),s=React__namespace.useRef(!1),u=React__namespace.useCallback((()=>s.current=!1),[]);return React__namespace.useEffect((()=>()=>document.removeEventListener("mouseup",u)),[u]),/*#__PURE__*/React__namespace.createElement(Anchor$1,_extends({asChild:!0},l),/*#__PURE__*/React__namespace.createElement(Primitive.button,_extends({"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute},r,{ref:c,onMouseEnter:composeEventHandlers(e.onMouseEnter,i.onTriggerEnter),onMouseLeave:composeEventHandlers(e.onMouseLeave,i.onClose),onMouseDown:composeEventHandlers(e.onMouseDown,(()=>{i.onClose(),s.current=!0,document.addEventListener("mouseup",u,{once:!0});})),onFocus:composeEventHandlers(e.onFocus,(()=>{s.current||i.onOpen();})),onBlur:composeEventHandlers(e.onBlur,i.onClose),onClick:composeEventHandlers(e.onClick,(e=>{0===e.detail&&i.onClose();}))})))}));const TooltipContent=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{forceMount:t,...r}=e,n=_("TooltipContent",e.__scopeTooltip);return React__namespace.createElement(Presence,{present:t||n.open},/*#__PURE__*/React__namespace.createElement(h,_extends({ref:o},r)))}));const h=/*#__PURE__*/React__namespace.forwardRef(((e,i)=>{const{__scopeTooltip:a,children:l,"aria-label":c,portalled:s=!0,...p}=e,d=_("TooltipContent",a),m=g(a),f=s?Portal:React__namespace.Fragment,{onClose:w}=d;return useEscapeKeydown((()=>w())),React__namespace.useEffect((()=>(document.addEventListener("tooltip.open",w),()=>document.removeEventListener("tooltip.open",w))),[w]),/*#__PURE__*/React__namespace.createElement(f,null,/*#__PURE__*/React__namespace.createElement(k,{__scopeTooltip:a}),/*#__PURE__*/React__namespace.createElement(Content$4,_extends({"data-state":d.stateAttribute},m,p,{ref:i,style:{...p.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)"}}),/*#__PURE__*/React__namespace.createElement(Slottable,null,l),/*#__PURE__*/React__namespace.createElement(Root$2,{id:d.contentId,role:"tooltip"},c||l)))}));const TooltipArrow=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{__scopeTooltip:t,...r}=e,i=g(t);return React__namespace.createElement(Arrow$4,_extends({},i,r,{ref:o}))}));function k(e){const{__scopeTooltip:o}=e,t=_("CheckTriggerMoved",o),r=useRect(t.trigger),n=null==r?void 0:r.left,i=usePrevious(n),a=null==r?void 0:r.top,l=usePrevious(a),u=t.onClose;return React__namespace.useEffect((()=>{(void 0!==i&&i!==n||void 0!==l&&l!==a)&&u();}),[u,i,l,n,a]),null}const Root$1=Tooltip$1;const Trigger$1=TooltipTrigger;const Content$1=TooltipContent;const Arrow$1=TooltipArrow;
4834
+ const[w,x]=createContextScope("Tooltip",[l$1]);const g=l$1(),E=700,[v,b]=w("TooltipProvider",{isOpenDelayed:!0,delayDuration:E,onOpen:()=>{},onClose:()=>{}});const[y,_]=w("Tooltip");const Tooltip$1=o=>{const{__scopeTooltip:t,children:r,open:i,defaultOpen:a=!1,onOpenChange:l,delayDuration:c}=o,s=b("Tooltip",t),u=g(t),[d,m]=React__namespace.useState(null),f=useId(),C=React__namespace.useRef(0),w=null!=c?c:s.delayDuration,x=React__namespace.useRef(!1),{onOpen:E,onClose:v}=s,[_=!1,h]=useControllableState({prop:i,defaultProp:a,onChange:e=>{e&&(document.dispatchEvent(new CustomEvent("tooltip.open")),E()),null==l||l(e);}}),k=React__namespace.useMemo((()=>_?x.current?"delayed-open":"instant-open":"closed"),[_]),D=React__namespace.useCallback((()=>{window.clearTimeout(C.current),x.current=!1,h(!0);}),[h]),O=React__namespace.useCallback((()=>{window.clearTimeout(C.current),C.current=window.setTimeout((()=>{x.current=!0,h(!0);}),w);}),[w,h]);return React__namespace.useEffect((()=>()=>window.clearTimeout(C.current)),[]),/*#__PURE__*/React__namespace.createElement(Root$6,u,/*#__PURE__*/React__namespace.createElement(y,{scope:t,contentId:f,open:_,stateAttribute:k,trigger:d,onTriggerChange:m,onTriggerEnter:React__namespace.useCallback((()=>{s.isOpenDelayed?O():D();}),[s.isOpenDelayed,O,D]),onOpen:React__namespace.useCallback(D,[D]),onClose:React__namespace.useCallback((()=>{window.clearTimeout(C.current),h(!1),v();}),[h,v])},r))};const TooltipTrigger=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{__scopeTooltip:t,...r}=e,i=_("TooltipTrigger",t),l=g(t),c=useComposedRefs(o,i.onTriggerChange),s=React__namespace.useRef(!1),u=React__namespace.useCallback((()=>s.current=!1),[]);return React__namespace.useEffect((()=>()=>document.removeEventListener("mouseup",u)),[u]),/*#__PURE__*/React__namespace.createElement(Anchor$1,_extends({asChild:!0},l),/*#__PURE__*/React__namespace.createElement(Primitive.button,_extends({"aria-describedby":i.open?i.contentId:void 0,"data-state":i.stateAttribute},r,{ref:c,onMouseEnter:composeEventHandlers$1(e.onMouseEnter,i.onTriggerEnter),onMouseLeave:composeEventHandlers$1(e.onMouseLeave,i.onClose),onMouseDown:composeEventHandlers$1(e.onMouseDown,(()=>{i.onClose(),s.current=!0,document.addEventListener("mouseup",u,{once:!0});})),onFocus:composeEventHandlers$1(e.onFocus,(()=>{s.current||i.onOpen();})),onBlur:composeEventHandlers$1(e.onBlur,i.onClose),onClick:composeEventHandlers$1(e.onClick,(e=>{0===e.detail&&i.onClose();}))})))}));const TooltipContent=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{forceMount:t,...r}=e,n=_("TooltipContent",e.__scopeTooltip);return React__namespace.createElement(Presence,{present:t||n.open},/*#__PURE__*/React__namespace.createElement(h,_extends({ref:o},r)))}));const h=/*#__PURE__*/React__namespace.forwardRef(((e,i)=>{const{__scopeTooltip:a,children:l,"aria-label":c,portalled:s=!0,...p}=e,d=_("TooltipContent",a),m=g(a),f=s?Portal:React__namespace.Fragment,{onClose:w}=d;return useEscapeKeydown((()=>w())),React__namespace.useEffect((()=>(document.addEventListener("tooltip.open",w),()=>document.removeEventListener("tooltip.open",w))),[w]),/*#__PURE__*/React__namespace.createElement(f,null,/*#__PURE__*/React__namespace.createElement(k,{__scopeTooltip:a}),/*#__PURE__*/React__namespace.createElement(Content$4,_extends({"data-state":d.stateAttribute},m,p,{ref:i,style:{...p.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)"}}),/*#__PURE__*/React__namespace.createElement(Slottable,null,l),/*#__PURE__*/React__namespace.createElement(Root$2,{id:d.contentId,role:"tooltip"},c||l)))}));const TooltipArrow=/*#__PURE__*/React__namespace.forwardRef(((e,o)=>{const{__scopeTooltip:t,...r}=e,i=g(t);return React__namespace.createElement(Arrow$4,_extends({},i,r,{ref:o}))}));function k(e){const{__scopeTooltip:o}=e,t=_("CheckTriggerMoved",o),r=useRect(t.trigger),n=null==r?void 0:r.left,i=usePrevious(n),a=null==r?void 0:r.top,l=usePrevious(a),u=t.onClose;return React__namespace.useEffect((()=>{(void 0!==i&&i!==n||void 0!==l&&l!==a)&&u();}),[u,i,l,n,a]),null}const Root$1=Tooltip$1;const Trigger$1=TooltipTrigger;const Content$1=TooltipContent;const Arrow$1=TooltipArrow;
4799
4835
 
4800
- var css_248z$2 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\n.tooltip-content {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n color: black;\n border-radius: 4px;\n padding: 6px 10px;\n background-color: white;\n font-size: 0.85rem;\n font-weight: 500;\n border: 1px solid #d0d7de;\n box-shadow: hsla(206deg, 22%, 7%, 0.35) 0px 10px 38px -10px, hsla(206deg, 22%, 7%, 0.2) 0px 10px 20px -15px;\n}";
4801
- styleInject(css_248z$2);
4836
+ var css_248z$3 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\nspan.label {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.75rem, 8vw - 0.85rem, 0.95rem);\n color: #11181C;\n}\n\nspan.label-secondary {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n color: #687075;\n}\n\n.tooltip-content {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n color: black;\n border-radius: 4px;\n padding: 6px 10px;\n background-color: white;\n font-size: 0.85rem;\n font-weight: 500;\n border: 1px solid #d0d7de;\n box-shadow: hsla(206deg, 22%, 7%, 0.35) 0px 10px 38px -10px, hsla(206deg, 22%, 7%, 0.2) 0px 10px 20px -15px;\n}";
4837
+ styleInject(css_248z$3);
4802
4838
 
4803
4839
  var Root = Root$1, Trigger = Trigger$1, Content = Content$1, Arrow = Arrow$1;
4804
4840
  var Tooltip = function (_a) {
4805
- var content = _a.content, _b = _a.side, side = _b === void 0 ? "top" : _b, children = _a.children, style = _a.style;
4841
+ var content = _a.content, _b = _a.side, side = _b === void 0 ? "right" : _b, children = _a.children, style = _a.style;
4806
4842
  return (React__default["default"].createElement(Root, { delayDuration: 10 },
4807
4843
  React__default["default"].createElement(Trigger, { asChild: true }, children),
4808
4844
  React__default["default"].createElement(Content, { className: 'tooltip-content', portalled: true, side: side, align: 'center', style: __assign$2({ zIndex: 9999 }, style) },
@@ -4910,11 +4946,1733 @@ var GetGeometry = function (_a) {
4910
4946
  undefined }));
4911
4947
  };
4912
4948
 
4913
- var css_248z$1 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\n.pollination-file-input {\n color: transparent;\n}\n\n.pollination-file-input::-webkit-file-upload-button {\n visibility: hidden;\n}\n\n.pollination-file-input::before {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n content: \"Upload Files\";\n max-width: 260px;\n display: flex;\n background-color: var(--primary);\n border: 1px solid var(--primary);\n color: white;\n padding: 6px 10px;\n cursor: pointer;\n float: left;\n transition: background-color 0.125s ease-in-out;\n z-index: 10;\n align-items: center;\n gap: 8px;\n border-radius: 4px;\n}\n\n.pollination-file-input:disabled::before {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n content: \"Disabled\";\n background-color: var(--grey3);\n color: var(--grey5);\n cursor: default;\n border-color: var(--grey5);\n}\n\n.pollination-file-input:hover::before {\n background-color: var(--primary2);\n z-index: 11;\n}\n\n.pollination-file-input:active {\n outline: 0;\n}\n\n.pollination-file-input:focus {\n outline: 0;\n}";
4914
- styleInject(css_248z$1);
4949
+ /******************************************************************************
4950
+ Copyright (c) Microsoft Corporation.
4951
+
4952
+ Permission to use, copy, modify, and/or distribute this software for any
4953
+ purpose with or without fee is hereby granted.
4954
+
4955
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
4956
+ REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
4957
+ AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
4958
+ INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
4959
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
4960
+ OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
4961
+ PERFORMANCE OF THIS SOFTWARE.
4962
+ ***************************************************************************** */
4963
+
4964
+ function __awaiter(thisArg, _arguments, P, generator) {
4965
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4966
+ return new (P || (P = Promise))(function (resolve, reject) {
4967
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
4968
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
4969
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
4970
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
4971
+ });
4972
+ }
4973
+
4974
+ function __generator(thisArg, body) {
4975
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
4976
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
4977
+ function verb(n) { return function (v) { return step([n, v]); }; }
4978
+ function step(op) {
4979
+ if (f) throw new TypeError("Generator is already executing.");
4980
+ while (_) try {
4981
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
4982
+ if (y = 0, t) op = [op[0] & 2, t.value];
4983
+ switch (op[0]) {
4984
+ case 0: case 1: t = op; break;
4985
+ case 4: _.label++; return { value: op[1], done: false };
4986
+ case 5: _.label++; y = op[1]; op = [0]; continue;
4987
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
4988
+ default:
4989
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
4990
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
4991
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
4992
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
4993
+ if (t[2]) _.ops.pop();
4994
+ _.trys.pop(); continue;
4995
+ }
4996
+ op = body.call(thisArg, _);
4997
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
4998
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
4999
+ }
5000
+ }
5001
+
5002
+ function __read(o, n) {
5003
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
5004
+ if (!m) return o;
5005
+ var i = m.call(o), r, ar = [], e;
5006
+ try {
5007
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
5008
+ }
5009
+ catch (error) { e = { error: error }; }
5010
+ finally {
5011
+ try {
5012
+ if (r && !r.done && (m = i["return"])) m.call(i);
5013
+ }
5014
+ finally { if (e) throw e.error; }
5015
+ }
5016
+ return ar;
5017
+ }
5018
+
5019
+ function __spreadArray(to, from, pack) {
5020
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
5021
+ if (ar || !(i in from)) {
5022
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
5023
+ ar[i] = from[i];
5024
+ }
5025
+ }
5026
+ return to.concat(ar || Array.prototype.slice.call(from));
5027
+ }
5028
+
5029
+ var COMMON_MIME_TYPES = new Map([
5030
+ // https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types
5031
+ ['aac', 'audio/aac'],
5032
+ ['abw', 'application/x-abiword'],
5033
+ ['arc', 'application/x-freearc'],
5034
+ ['avif', 'image/avif'],
5035
+ ['avi', 'video/x-msvideo'],
5036
+ ['azw', 'application/vnd.amazon.ebook'],
5037
+ ['bin', 'application/octet-stream'],
5038
+ ['bmp', 'image/bmp'],
5039
+ ['bz', 'application/x-bzip'],
5040
+ ['bz2', 'application/x-bzip2'],
5041
+ ['cda', 'application/x-cdf'],
5042
+ ['csh', 'application/x-csh'],
5043
+ ['css', 'text/css'],
5044
+ ['csv', 'text/csv'],
5045
+ ['doc', 'application/msword'],
5046
+ ['docx', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'],
5047
+ ['eot', 'application/vnd.ms-fontobject'],
5048
+ ['epub', 'application/epub+zip'],
5049
+ ['gz', 'application/gzip'],
5050
+ ['gif', 'image/gif'],
5051
+ ['heic', 'image/heic'],
5052
+ ['heif', 'image/heif'],
5053
+ ['htm', 'text/html'],
5054
+ ['html', 'text/html'],
5055
+ ['ico', 'image/vnd.microsoft.icon'],
5056
+ ['ics', 'text/calendar'],
5057
+ ['jar', 'application/java-archive'],
5058
+ ['jpeg', 'image/jpeg'],
5059
+ ['jpg', 'image/jpeg'],
5060
+ ['js', 'text/javascript'],
5061
+ ['json', 'application/json'],
5062
+ ['jsonld', 'application/ld+json'],
5063
+ ['mid', 'audio/midi'],
5064
+ ['midi', 'audio/midi'],
5065
+ ['mjs', 'text/javascript'],
5066
+ ['mp3', 'audio/mpeg'],
5067
+ ['mp4', 'video/mp4'],
5068
+ ['mpeg', 'video/mpeg'],
5069
+ ['mpkg', 'application/vnd.apple.installer+xml'],
5070
+ ['odp', 'application/vnd.oasis.opendocument.presentation'],
5071
+ ['ods', 'application/vnd.oasis.opendocument.spreadsheet'],
5072
+ ['odt', 'application/vnd.oasis.opendocument.text'],
5073
+ ['oga', 'audio/ogg'],
5074
+ ['ogv', 'video/ogg'],
5075
+ ['ogx', 'application/ogg'],
5076
+ ['opus', 'audio/opus'],
5077
+ ['otf', 'font/otf'],
5078
+ ['png', 'image/png'],
5079
+ ['pdf', 'application/pdf'],
5080
+ ['php', 'application/x-httpd-php'],
5081
+ ['ppt', 'application/vnd.ms-powerpoint'],
5082
+ ['pptx', 'application/vnd.openxmlformats-officedocument.presentationml.presentation'],
5083
+ ['rar', 'application/vnd.rar'],
5084
+ ['rtf', 'application/rtf'],
5085
+ ['sh', 'application/x-sh'],
5086
+ ['svg', 'image/svg+xml'],
5087
+ ['swf', 'application/x-shockwave-flash'],
5088
+ ['tar', 'application/x-tar'],
5089
+ ['tif', 'image/tiff'],
5090
+ ['tiff', 'image/tiff'],
5091
+ ['ts', 'video/mp2t'],
5092
+ ['ttf', 'font/ttf'],
5093
+ ['txt', 'text/plain'],
5094
+ ['vsd', 'application/vnd.visio'],
5095
+ ['wav', 'audio/wav'],
5096
+ ['weba', 'audio/webm'],
5097
+ ['webm', 'video/webm'],
5098
+ ['webp', 'image/webp'],
5099
+ ['woff', 'font/woff'],
5100
+ ['woff2', 'font/woff2'],
5101
+ ['xhtml', 'application/xhtml+xml'],
5102
+ ['xls', 'application/vnd.ms-excel'],
5103
+ ['xlsx', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'],
5104
+ ['xml', 'application/xml'],
5105
+ ['xul', 'application/vnd.mozilla.xul+xml'],
5106
+ ['zip', 'application/zip'],
5107
+ ['7z', 'application/x-7z-compressed'],
5108
+ // Others
5109
+ ['mkv', 'video/x-matroska'],
5110
+ ['mov', 'video/quicktime'],
5111
+ ['msg', 'application/vnd.ms-outlook']
5112
+ ]);
5113
+ function toFileWithPath(file, path) {
5114
+ var f = withMimeType(file);
5115
+ if (typeof f.path !== 'string') { // on electron, path is already set to the absolute path
5116
+ var webkitRelativePath = file.webkitRelativePath;
5117
+ Object.defineProperty(f, 'path', {
5118
+ value: typeof path === 'string'
5119
+ ? path
5120
+ // If <input webkitdirectory> is set,
5121
+ // the File will have a {webkitRelativePath} property
5122
+ // https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement/webkitdirectory
5123
+ : typeof webkitRelativePath === 'string' && webkitRelativePath.length > 0
5124
+ ? webkitRelativePath
5125
+ : file.name,
5126
+ writable: false,
5127
+ configurable: false,
5128
+ enumerable: true
5129
+ });
5130
+ }
5131
+ return f;
5132
+ }
5133
+ function withMimeType(file) {
5134
+ var name = file.name;
5135
+ var hasExtension = name && name.lastIndexOf('.') !== -1;
5136
+ if (hasExtension && !file.type) {
5137
+ var ext = name.split('.')
5138
+ .pop().toLowerCase();
5139
+ var type = COMMON_MIME_TYPES.get(ext);
5140
+ if (type) {
5141
+ Object.defineProperty(file, 'type', {
5142
+ value: type,
5143
+ writable: false,
5144
+ configurable: false,
5145
+ enumerable: true
5146
+ });
5147
+ }
5148
+ }
5149
+ return file;
5150
+ }
4915
5151
 
4916
- var FileInput = function (props) {
4917
- return (React__default["default"].createElement("input", __assign$2({ type: "file", className: "pollination-file-input" }, props)));
5152
+ var FILES_TO_IGNORE = [
5153
+ // Thumbnail cache files for macOS and Windows
5154
+ '.DS_Store',
5155
+ 'Thumbs.db' // Windows
5156
+ ];
5157
+ /**
5158
+ * Convert a DragEvent's DataTrasfer object to a list of File objects
5159
+ * NOTE: If some of the items are folders,
5160
+ * everything will be flattened and placed in the same list but the paths will be kept as a {path} property.
5161
+ *
5162
+ * EXPERIMENTAL: A list of https://developer.mozilla.org/en-US/docs/Web/API/FileSystemHandle objects can also be passed as an arg
5163
+ * and a list of File objects will be returned.
5164
+ *
5165
+ * @param evt
5166
+ */
5167
+ function fromEvent(evt) {
5168
+ return __awaiter(this, void 0, void 0, function () {
5169
+ return __generator(this, function (_a) {
5170
+ if (isObject(evt) && isDataTransfer(evt.dataTransfer)) {
5171
+ return [2 /*return*/, getDataTransferFiles(evt.dataTransfer, evt.type)];
5172
+ }
5173
+ else if (isChangeEvt(evt)) {
5174
+ return [2 /*return*/, getInputFiles(evt)];
5175
+ }
5176
+ else if (Array.isArray(evt) && evt.every(function (item) { return 'getFile' in item && typeof item.getFile === 'function'; })) {
5177
+ return [2 /*return*/, getFsHandleFiles(evt)];
5178
+ }
5179
+ return [2 /*return*/, []];
5180
+ });
5181
+ });
5182
+ }
5183
+ function isDataTransfer(value) {
5184
+ return isObject(value);
5185
+ }
5186
+ function isChangeEvt(value) {
5187
+ return isObject(value) && isObject(value.target);
5188
+ }
5189
+ function isObject(v) {
5190
+ return typeof v === 'object' && v !== null;
5191
+ }
5192
+ function getInputFiles(evt) {
5193
+ return fromList(evt.target.files).map(function (file) { return toFileWithPath(file); });
5194
+ }
5195
+ // Ee expect each handle to be https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileHandle
5196
+ function getFsHandleFiles(handles) {
5197
+ return __awaiter(this, void 0, void 0, function () {
5198
+ var files;
5199
+ return __generator(this, function (_a) {
5200
+ switch (_a.label) {
5201
+ case 0: return [4 /*yield*/, Promise.all(handles.map(function (h) { return h.getFile(); }))];
5202
+ case 1:
5203
+ files = _a.sent();
5204
+ return [2 /*return*/, files.map(function (file) { return toFileWithPath(file); })];
5205
+ }
5206
+ });
5207
+ });
5208
+ }
5209
+ function getDataTransferFiles(dt, type) {
5210
+ return __awaiter(this, void 0, void 0, function () {
5211
+ var items, files;
5212
+ return __generator(this, function (_a) {
5213
+ switch (_a.label) {
5214
+ case 0:
5215
+ if (!dt.items) return [3 /*break*/, 2];
5216
+ items = fromList(dt.items)
5217
+ .filter(function (item) { return item.kind === 'file'; });
5218
+ // According to https://html.spec.whatwg.org/multipage/dnd.html#dndevents,
5219
+ // only 'dragstart' and 'drop' has access to the data (source node)
5220
+ if (type !== 'drop') {
5221
+ return [2 /*return*/, items];
5222
+ }
5223
+ return [4 /*yield*/, Promise.all(items.map(toFilePromises))];
5224
+ case 1:
5225
+ files = _a.sent();
5226
+ return [2 /*return*/, noIgnoredFiles(flatten(files))];
5227
+ case 2: return [2 /*return*/, noIgnoredFiles(fromList(dt.files)
5228
+ .map(function (file) { return toFileWithPath(file); }))];
5229
+ }
5230
+ });
5231
+ });
5232
+ }
5233
+ function noIgnoredFiles(files) {
5234
+ return files.filter(function (file) { return FILES_TO_IGNORE.indexOf(file.name) === -1; });
5235
+ }
5236
+ // IE11 does not support Array.from()
5237
+ // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from#Browser_compatibility
5238
+ // https://developer.mozilla.org/en-US/docs/Web/API/FileList
5239
+ // https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItemList
5240
+ function fromList(items) {
5241
+ if (items === null) {
5242
+ return [];
5243
+ }
5244
+ var files = [];
5245
+ // tslint:disable: prefer-for-of
5246
+ for (var i = 0; i < items.length; i++) {
5247
+ var file = items[i];
5248
+ files.push(file);
5249
+ }
5250
+ return files;
5251
+ }
5252
+ // https://developer.mozilla.org/en-US/docs/Web/API/DataTransferItem
5253
+ function toFilePromises(item) {
5254
+ if (typeof item.webkitGetAsEntry !== 'function') {
5255
+ return fromDataTransferItem(item);
5256
+ }
5257
+ var entry = item.webkitGetAsEntry();
5258
+ // Safari supports dropping an image node from a different window and can be retrieved using
5259
+ // the DataTransferItem.getAsFile() API
5260
+ // NOTE: FileSystemEntry.file() throws if trying to get the file
5261
+ if (entry && entry.isDirectory) {
5262
+ return fromDirEntry(entry);
5263
+ }
5264
+ return fromDataTransferItem(item);
5265
+ }
5266
+ function flatten(items) {
5267
+ return items.reduce(function (acc, files) { return __spreadArray(__spreadArray([], __read(acc), false), __read((Array.isArray(files) ? flatten(files) : [files])), false); }, []);
5268
+ }
5269
+ function fromDataTransferItem(item) {
5270
+ var file = item.getAsFile();
5271
+ if (!file) {
5272
+ return Promise.reject("".concat(item, " is not a File"));
5273
+ }
5274
+ var fwp = toFileWithPath(file);
5275
+ return Promise.resolve(fwp);
5276
+ }
5277
+ // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemEntry
5278
+ function fromEntry(entry) {
5279
+ return __awaiter(this, void 0, void 0, function () {
5280
+ return __generator(this, function (_a) {
5281
+ return [2 /*return*/, entry.isDirectory ? fromDirEntry(entry) : fromFileEntry(entry)];
5282
+ });
5283
+ });
5284
+ }
5285
+ // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry
5286
+ function fromDirEntry(entry) {
5287
+ var reader = entry.createReader();
5288
+ return new Promise(function (resolve, reject) {
5289
+ var entries = [];
5290
+ function readEntries() {
5291
+ var _this = this;
5292
+ // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryEntry/createReader
5293
+ // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemDirectoryReader/readEntries
5294
+ reader.readEntries(function (batch) { return __awaiter(_this, void 0, void 0, function () {
5295
+ var files, err_1, items;
5296
+ return __generator(this, function (_a) {
5297
+ switch (_a.label) {
5298
+ case 0:
5299
+ if (!!batch.length) return [3 /*break*/, 5];
5300
+ _a.label = 1;
5301
+ case 1:
5302
+ _a.trys.push([1, 3, , 4]);
5303
+ return [4 /*yield*/, Promise.all(entries)];
5304
+ case 2:
5305
+ files = _a.sent();
5306
+ resolve(files);
5307
+ return [3 /*break*/, 4];
5308
+ case 3:
5309
+ err_1 = _a.sent();
5310
+ reject(err_1);
5311
+ return [3 /*break*/, 4];
5312
+ case 4: return [3 /*break*/, 6];
5313
+ case 5:
5314
+ items = Promise.all(batch.map(fromEntry));
5315
+ entries.push(items);
5316
+ // Continue reading
5317
+ readEntries();
5318
+ _a.label = 6;
5319
+ case 6: return [2 /*return*/];
5320
+ }
5321
+ });
5322
+ }); }, function (err) {
5323
+ reject(err);
5324
+ });
5325
+ }
5326
+ readEntries();
5327
+ });
5328
+ }
5329
+ // https://developer.mozilla.org/en-US/docs/Web/API/FileSystemFileEntry
5330
+ function fromFileEntry(entry) {
5331
+ return __awaiter(this, void 0, void 0, function () {
5332
+ return __generator(this, function (_a) {
5333
+ return [2 /*return*/, new Promise(function (resolve, reject) {
5334
+ entry.file(function (file) {
5335
+ var fwp = toFileWithPath(file, entry.fullPath);
5336
+ resolve(fwp);
5337
+ }, function (err) {
5338
+ reject(err);
5339
+ });
5340
+ })];
5341
+ });
5342
+ });
5343
+ }
5344
+
5345
+ var _default = function (file, acceptedFiles) {
5346
+ if (file && acceptedFiles) {
5347
+ var acceptedFilesArray = Array.isArray(acceptedFiles) ? acceptedFiles : acceptedFiles.split(',');
5348
+ var fileName = file.name || '';
5349
+ var mimeType = (file.type || '').toLowerCase();
5350
+ var baseMimeType = mimeType.replace(/\/.*$/, '');
5351
+ return acceptedFilesArray.some(function (type) {
5352
+ var validType = type.trim().toLowerCase();
5353
+
5354
+ if (validType.charAt(0) === '.') {
5355
+ return fileName.toLowerCase().endsWith(validType);
5356
+ } else if (validType.endsWith('/*')) {
5357
+ // This is something like a image/* mime type
5358
+ return baseMimeType === validType.replace(/\/.*$/, '');
5359
+ }
5360
+
5361
+ return mimeType === validType;
5362
+ });
5363
+ }
5364
+
5365
+ return true;
5366
+ };
5367
+
5368
+ var accepts = _default;
5369
+
5370
+ function _toConsumableArray$1(arr) { return _arrayWithoutHoles$1(arr) || _iterableToArray$1(arr) || _unsupportedIterableToArray$1(arr) || _nonIterableSpread$1(); }
5371
+
5372
+ function _nonIterableSpread$1() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5373
+
5374
+ function _iterableToArray$1(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5375
+
5376
+ function _arrayWithoutHoles$1(arr) { if (Array.isArray(arr)) return _arrayLikeToArray$1(arr); }
5377
+
5378
+ function _defineProperty$1(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; }
5379
+
5380
+ function _slicedToArray$1(arr, i) { return _arrayWithHoles$1(arr) || _iterableToArrayLimit$1(arr, i) || _unsupportedIterableToArray$1(arr, i) || _nonIterableRest$1(); }
5381
+
5382
+ function _nonIterableRest$1() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5383
+
5384
+ function _unsupportedIterableToArray$1(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray$1(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(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray$1(o, minLen); }
5385
+
5386
+ function _arrayLikeToArray$1(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; }
5387
+
5388
+ function _iterableToArrayLimit$1(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_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"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
5389
+
5390
+ function _arrayWithHoles$1(arr) { if (Array.isArray(arr)) return arr; }
5391
+
5392
+ var FILE_INVALID_TYPE = "file-invalid-type";
5393
+ var FILE_TOO_LARGE = "file-too-large";
5394
+ var FILE_TOO_SMALL = "file-too-small";
5395
+ var TOO_MANY_FILES = "too-many-files";
5396
+
5397
+ var getInvalidTypeRejectionErr = function getInvalidTypeRejectionErr(accept) {
5398
+ accept = Array.isArray(accept) && accept.length === 1 ? accept[0] : accept;
5399
+ var messageSuffix = Array.isArray(accept) ? "one of ".concat(accept.join(", ")) : accept;
5400
+ return {
5401
+ code: FILE_INVALID_TYPE,
5402
+ message: "File type must be ".concat(messageSuffix)
5403
+ };
5404
+ };
5405
+ var getTooLargeRejectionErr = function getTooLargeRejectionErr(maxSize) {
5406
+ return {
5407
+ code: FILE_TOO_LARGE,
5408
+ message: "File is larger than ".concat(maxSize, " ").concat(maxSize === 1 ? "byte" : "bytes")
5409
+ };
5410
+ };
5411
+ var getTooSmallRejectionErr = function getTooSmallRejectionErr(minSize) {
5412
+ return {
5413
+ code: FILE_TOO_SMALL,
5414
+ message: "File is smaller than ".concat(minSize, " ").concat(minSize === 1 ? "byte" : "bytes")
5415
+ };
5416
+ };
5417
+ var TOO_MANY_FILES_REJECTION = {
5418
+ code: TOO_MANY_FILES,
5419
+ message: "Too many files"
5420
+ }; // Firefox versions prior to 53 return a bogus MIME type for every file drag, so dragovers with
5421
+ // that MIME type will always be accepted
5422
+
5423
+ function fileAccepted(file, accept) {
5424
+ var isAcceptable = file.type === "application/x-moz-file" || accepts(file, accept);
5425
+ return [isAcceptable, isAcceptable ? null : getInvalidTypeRejectionErr(accept)];
5426
+ }
5427
+ function fileMatchSize(file, minSize, maxSize) {
5428
+ if (isDefined(file.size)) {
5429
+ if (isDefined(minSize) && isDefined(maxSize)) {
5430
+ if (file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];
5431
+ if (file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];
5432
+ } else if (isDefined(minSize) && file.size < minSize) return [false, getTooSmallRejectionErr(minSize)];else if (isDefined(maxSize) && file.size > maxSize) return [false, getTooLargeRejectionErr(maxSize)];
5433
+ }
5434
+
5435
+ return [true, null];
5436
+ }
5437
+
5438
+ function isDefined(value) {
5439
+ return value !== undefined && value !== null;
5440
+ }
5441
+ /**
5442
+ *
5443
+ * @param {object} options
5444
+ * @param {File[]} options.files
5445
+ * @param {string|string[]} [options.accept]
5446
+ * @param {number} [options.minSize]
5447
+ * @param {number} [options.maxSize]
5448
+ * @param {boolean} [options.multiple]
5449
+ * @param {number} [options.maxFiles]
5450
+ * @param {(f: File) => FileError|FileError[]|null} [options.validator]
5451
+ * @returns
5452
+ */
5453
+
5454
+
5455
+ function allFilesAccepted(_ref) {
5456
+ var files = _ref.files,
5457
+ accept = _ref.accept,
5458
+ minSize = _ref.minSize,
5459
+ maxSize = _ref.maxSize,
5460
+ multiple = _ref.multiple,
5461
+ maxFiles = _ref.maxFiles,
5462
+ validator = _ref.validator;
5463
+
5464
+ if (!multiple && files.length > 1 || multiple && maxFiles >= 1 && files.length > maxFiles) {
5465
+ return false;
5466
+ }
5467
+
5468
+ return files.every(function (file) {
5469
+ var _fileAccepted = fileAccepted(file, accept),
5470
+ _fileAccepted2 = _slicedToArray$1(_fileAccepted, 1),
5471
+ accepted = _fileAccepted2[0];
5472
+
5473
+ var _fileMatchSize = fileMatchSize(file, minSize, maxSize),
5474
+ _fileMatchSize2 = _slicedToArray$1(_fileMatchSize, 1),
5475
+ sizeMatch = _fileMatchSize2[0];
5476
+
5477
+ var customErrors = validator ? validator(file) : null;
5478
+ return accepted && sizeMatch && !customErrors;
5479
+ });
5480
+ } // React's synthetic events has event.isPropagationStopped,
5481
+ // but to remain compatibility with other libs (Preact) fall back
5482
+ // to check event.cancelBubble
5483
+
5484
+ function isPropagationStopped(event) {
5485
+ if (typeof event.isPropagationStopped === "function") {
5486
+ return event.isPropagationStopped();
5487
+ } else if (typeof event.cancelBubble !== "undefined") {
5488
+ return event.cancelBubble;
5489
+ }
5490
+
5491
+ return false;
5492
+ }
5493
+ function isEvtWithFiles(event) {
5494
+ if (!event.dataTransfer) {
5495
+ return !!event.target && !!event.target.files;
5496
+ } // https://developer.mozilla.org/en-US/docs/Web/API/DataTransfer/types
5497
+ // https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API/Recommended_drag_types#file
5498
+
5499
+
5500
+ return Array.prototype.some.call(event.dataTransfer.types, function (type) {
5501
+ return type === "Files" || type === "application/x-moz-file";
5502
+ });
5503
+ }
5504
+
5505
+ function onDocumentDragOver(event) {
5506
+ event.preventDefault();
5507
+ }
5508
+
5509
+ function isIe(userAgent) {
5510
+ return userAgent.indexOf("MSIE") !== -1 || userAgent.indexOf("Trident/") !== -1;
5511
+ }
5512
+
5513
+ function isEdge(userAgent) {
5514
+ return userAgent.indexOf("Edge/") !== -1;
5515
+ }
5516
+
5517
+ function isIeOrEdge() {
5518
+ var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : window.navigator.userAgent;
5519
+ return isIe(userAgent) || isEdge(userAgent);
5520
+ }
5521
+ /**
5522
+ * This is intended to be used to compose event handlers
5523
+ * They are executed in order until one of them calls `event.isPropagationStopped()`.
5524
+ * Note that the check is done on the first invoke too,
5525
+ * meaning that if propagation was stopped before invoking the fns,
5526
+ * no handlers will be executed.
5527
+ *
5528
+ * @param {Function} fns the event hanlder functions
5529
+ * @return {Function} the event handler to add to an element
5530
+ */
5531
+
5532
+ function composeEventHandlers() {
5533
+ for (var _len = arguments.length, fns = new Array(_len), _key = 0; _key < _len; _key++) {
5534
+ fns[_key] = arguments[_key];
5535
+ }
5536
+
5537
+ return function (event) {
5538
+ for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {
5539
+ args[_key2 - 1] = arguments[_key2];
5540
+ }
5541
+
5542
+ return fns.some(function (fn) {
5543
+ if (!isPropagationStopped(event) && fn) {
5544
+ fn.apply(void 0, [event].concat(args));
5545
+ }
5546
+
5547
+ return isPropagationStopped(event);
5548
+ });
5549
+ };
5550
+ }
5551
+ /**
5552
+ * canUseFileSystemAccessAPI checks if the [File System Access API](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)
5553
+ * is supported by the browser.
5554
+ * @returns {boolean}
5555
+ */
5556
+
5557
+ function canUseFileSystemAccessAPI() {
5558
+ return "showOpenFilePicker" in window;
5559
+ }
5560
+ /**
5561
+ * Convert the `{accept}` dropzone prop to the
5562
+ * `{types}` option for https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker
5563
+ *
5564
+ * @param {AcceptProp} accept
5565
+ * @returns {{accept: string[]}[]}
5566
+ */
5567
+
5568
+ function pickerOptionsFromAccept(accept) {
5569
+ if (isDefined(accept)) {
5570
+ return Object.entries(accept).filter(function (_ref2) {
5571
+ var _ref3 = _slicedToArray$1(_ref2, 2),
5572
+ mimeType = _ref3[0],
5573
+ ext = _ref3[1];
5574
+
5575
+ var ok = true;
5576
+
5577
+ if (!isMIMEType(mimeType)) {
5578
+ console.warn("Skipped \"".concat(mimeType, "\" because it is not a valid MIME type. Check https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/MIME_types/Common_types for a list of valid MIME types."));
5579
+ ok = false;
5580
+ }
5581
+
5582
+ if (!Array.isArray(ext) || !ext.every(isExt)) {
5583
+ console.warn("Skipped \"".concat(mimeType, "\" because an invalid file extension was provided."));
5584
+ ok = false;
5585
+ }
5586
+
5587
+ return ok;
5588
+ }).map(function (_ref4) {
5589
+ var _ref5 = _slicedToArray$1(_ref4, 2),
5590
+ mimeType = _ref5[0],
5591
+ ext = _ref5[1];
5592
+
5593
+ return {
5594
+ accept: _defineProperty$1({}, mimeType, ext)
5595
+ };
5596
+ });
5597
+ }
5598
+
5599
+ return accept;
5600
+ }
5601
+ /**
5602
+ * Convert the `{accept}` dropzone prop to an array of MIME types/extensions.
5603
+ * @param {AcceptProp} accept
5604
+ * @returns {string}
5605
+ */
5606
+
5607
+ function acceptPropAsAcceptAttr(accept) {
5608
+ if (isDefined(accept)) {
5609
+ return Object.entries(accept).reduce(function (a, _ref6) {
5610
+ var _ref7 = _slicedToArray$1(_ref6, 2),
5611
+ mimeType = _ref7[0],
5612
+ ext = _ref7[1];
5613
+
5614
+ return [].concat(_toConsumableArray$1(a), [mimeType], _toConsumableArray$1(ext));
5615
+ }, []) // Silently discard invalid entries as pickerOptionsFromAccept warns about these
5616
+ .filter(function (v) {
5617
+ return isMIMEType(v) || isExt(v);
5618
+ }).join(",");
5619
+ }
5620
+
5621
+ return undefined;
5622
+ }
5623
+ /**
5624
+ * Check if v is an exception caused by aborting a request (e.g window.showOpenFilePicker()).
5625
+ *
5626
+ * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.
5627
+ * @param {any} v
5628
+ * @returns {boolean} True if v is an abort exception.
5629
+ */
5630
+
5631
+ function isAbort(v) {
5632
+ return v instanceof DOMException && (v.name === "AbortError" || v.code === v.ABORT_ERR);
5633
+ }
5634
+ /**
5635
+ * Check if v is a security error.
5636
+ *
5637
+ * See https://developer.mozilla.org/en-US/docs/Web/API/DOMException.
5638
+ * @param {any} v
5639
+ * @returns {boolean} True if v is a security error.
5640
+ */
5641
+
5642
+ function isSecurityError(v) {
5643
+ return v instanceof DOMException && (v.name === "SecurityError" || v.code === v.SECURITY_ERR);
5644
+ }
5645
+ /**
5646
+ * Check if v is a MIME type string.
5647
+ *
5648
+ * See accepted format: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#unique_file_type_specifiers.
5649
+ *
5650
+ * @param {string} v
5651
+ */
5652
+
5653
+ function isMIMEType(v) {
5654
+ return v === "audio/*" || v === "video/*" || v === "image/*" || v === "text/*" || /\w+\/[-+.\w]+/g.test(v);
5655
+ }
5656
+ /**
5657
+ * Check if v is a file extension.
5658
+ * @param {string} v
5659
+ */
5660
+
5661
+ function isExt(v) {
5662
+ return /^.*\.[\w]+$/.test(v);
5663
+ }
5664
+ /**
5665
+ * @typedef {Object.<string, string[]>} AcceptProp
5666
+ */
5667
+
5668
+ /**
5669
+ * @typedef {object} FileError
5670
+ * @property {string} message
5671
+ * @property {ErrorCode|string} code
5672
+ */
5673
+
5674
+ /**
5675
+ * @typedef {"file-invalid-type"|"file-too-large"|"file-too-small"|"too-many-files"} ErrorCode
5676
+ */
5677
+
5678
+ var _excluded = ["children"],
5679
+ _excluded2 = ["open"],
5680
+ _excluded3 = ["refKey", "role", "onKeyDown", "onFocus", "onBlur", "onClick", "onDragEnter", "onDragOver", "onDragLeave", "onDrop"],
5681
+ _excluded4 = ["refKey", "onChange", "onClick"];
5682
+
5683
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
5684
+
5685
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5686
+
5687
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5688
+
5689
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
5690
+
5691
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
5692
+
5693
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
5694
+
5695
+ 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(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
5696
+
5697
+ 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; }
5698
+
5699
+ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_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"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
5700
+
5701
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
5702
+
5703
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5704
+
5705
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5706
+
5707
+ 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; }
5708
+
5709
+ function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
5710
+
5711
+ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
5712
+ /**
5713
+ * Convenience wrapper component for the `useDropzone` hook
5714
+ *
5715
+ * ```jsx
5716
+ * <Dropzone>
5717
+ * {({getRootProps, getInputProps}) => (
5718
+ * <div {...getRootProps()}>
5719
+ * <input {...getInputProps()} />
5720
+ * <p>Drag 'n' drop some files here, or click to select files</p>
5721
+ * </div>
5722
+ * )}
5723
+ * </Dropzone>
5724
+ * ```
5725
+ */
5726
+
5727
+ var Dropzone = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
5728
+ var children = _ref.children,
5729
+ params = _objectWithoutProperties(_ref, _excluded);
5730
+
5731
+ var _useDropzone = useDropzone(params),
5732
+ open = _useDropzone.open,
5733
+ props = _objectWithoutProperties(_useDropzone, _excluded2);
5734
+
5735
+ React.useImperativeHandle(ref, function () {
5736
+ return {
5737
+ open: open
5738
+ };
5739
+ }, [open]); // TODO: Figure out why react-styleguidist cannot create docs if we don't return a jsx element
5740
+
5741
+ return /*#__PURE__*/React__default["default"].createElement(React.Fragment, null, children(_objectSpread(_objectSpread({}, props), {}, {
5742
+ open: open
5743
+ })));
5744
+ });
5745
+ Dropzone.displayName = "Dropzone"; // Add default props for react-docgen
5746
+
5747
+ var defaultProps = {
5748
+ disabled: false,
5749
+ getFilesFromEvent: fromEvent,
5750
+ maxSize: Infinity,
5751
+ minSize: 0,
5752
+ multiple: true,
5753
+ maxFiles: 0,
5754
+ preventDropOnDocument: true,
5755
+ noClick: false,
5756
+ noKeyboard: false,
5757
+ noDrag: false,
5758
+ noDragEventsBubbling: false,
5759
+ validator: null,
5760
+ useFsAccessApi: true,
5761
+ autoFocus: false
5762
+ };
5763
+ Dropzone.defaultProps = defaultProps;
5764
+ Dropzone.propTypes = {
5765
+ /**
5766
+ * Render function that exposes the dropzone state and prop getter fns
5767
+ *
5768
+ * @param {object} params
5769
+ * @param {Function} params.getRootProps Returns the props you should apply to the root drop container you render
5770
+ * @param {Function} params.getInputProps Returns the props you should apply to hidden file input you render
5771
+ * @param {Function} params.open Open the native file selection dialog
5772
+ * @param {boolean} params.isFocused Dropzone area is in focus
5773
+ * @param {boolean} params.isFileDialogActive File dialog is opened
5774
+ * @param {boolean} params.isDragActive Active drag is in progress
5775
+ * @param {boolean} params.isDragAccept Dragged files are accepted
5776
+ * @param {boolean} params.isDragReject Some dragged files are rejected
5777
+ * @param {File[]} params.acceptedFiles Accepted files
5778
+ * @param {FileRejection[]} params.fileRejections Rejected files and why they were rejected
5779
+ */
5780
+ children: PropTypes.func,
5781
+
5782
+ /**
5783
+ * Set accepted file types.
5784
+ * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.
5785
+ * Keep in mind that mime type determination is not reliable across platforms. CSV files,
5786
+ * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under
5787
+ * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).
5788
+ */
5789
+ accept: PropTypes.objectOf(PropTypes.arrayOf(PropTypes.string)),
5790
+
5791
+ /**
5792
+ * Allow drag 'n' drop (or selection from the file dialog) of multiple files
5793
+ */
5794
+ multiple: PropTypes.bool,
5795
+
5796
+ /**
5797
+ * If false, allow dropped items to take over the current browser window
5798
+ */
5799
+ preventDropOnDocument: PropTypes.bool,
5800
+
5801
+ /**
5802
+ * If true, disables click to open the native file selection dialog
5803
+ */
5804
+ noClick: PropTypes.bool,
5805
+
5806
+ /**
5807
+ * If true, disables SPACE/ENTER to open the native file selection dialog.
5808
+ * Note that it also stops tracking the focus state.
5809
+ */
5810
+ noKeyboard: PropTypes.bool,
5811
+
5812
+ /**
5813
+ * If true, disables drag 'n' drop
5814
+ */
5815
+ noDrag: PropTypes.bool,
5816
+
5817
+ /**
5818
+ * If true, stops drag event propagation to parents
5819
+ */
5820
+ noDragEventsBubbling: PropTypes.bool,
5821
+
5822
+ /**
5823
+ * Minimum file size (in bytes)
5824
+ */
5825
+ minSize: PropTypes.number,
5826
+
5827
+ /**
5828
+ * Maximum file size (in bytes)
5829
+ */
5830
+ maxSize: PropTypes.number,
5831
+
5832
+ /**
5833
+ * Maximum accepted number of files
5834
+ * The default value is 0 which means there is no limitation to how many files are accepted.
5835
+ */
5836
+ maxFiles: PropTypes.number,
5837
+
5838
+ /**
5839
+ * Enable/disable the dropzone
5840
+ */
5841
+ disabled: PropTypes.bool,
5842
+
5843
+ /**
5844
+ * Use this to provide a custom file aggregator
5845
+ *
5846
+ * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)
5847
+ */
5848
+ getFilesFromEvent: PropTypes.func,
5849
+
5850
+ /**
5851
+ * Cb for when closing the file dialog with no selection
5852
+ */
5853
+ onFileDialogCancel: PropTypes.func,
5854
+
5855
+ /**
5856
+ * Cb for when opening the file dialog
5857
+ */
5858
+ onFileDialogOpen: PropTypes.func,
5859
+
5860
+ /**
5861
+ * Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API
5862
+ * to open the file picker instead of using an `<input type="file">` click event.
5863
+ */
5864
+ useFsAccessApi: PropTypes.bool,
5865
+
5866
+ /**
5867
+ * Set to true to focus the root element on render
5868
+ */
5869
+ autoFocus: PropTypes.bool,
5870
+
5871
+ /**
5872
+ * Cb for when the `dragenter` event occurs.
5873
+ *
5874
+ * @param {DragEvent} event
5875
+ */
5876
+ onDragEnter: PropTypes.func,
5877
+
5878
+ /**
5879
+ * Cb for when the `dragleave` event occurs
5880
+ *
5881
+ * @param {DragEvent} event
5882
+ */
5883
+ onDragLeave: PropTypes.func,
5884
+
5885
+ /**
5886
+ * Cb for when the `dragover` event occurs
5887
+ *
5888
+ * @param {DragEvent} event
5889
+ */
5890
+ onDragOver: PropTypes.func,
5891
+
5892
+ /**
5893
+ * Cb for when the `drop` event occurs.
5894
+ * Note that this callback is invoked after the `getFilesFromEvent` callback is done.
5895
+ *
5896
+ * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.
5897
+ * `accept` must be a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) or a valid file extension.
5898
+ * If `multiple` is set to false and additional files are dropped,
5899
+ * all files besides the first will be rejected.
5900
+ * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.
5901
+ *
5902
+ * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.
5903
+ * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.
5904
+ *
5905
+ * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.
5906
+ * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:
5907
+ *
5908
+ * ```js
5909
+ * function onDrop(acceptedFiles) {
5910
+ * const req = request.post('/upload')
5911
+ * acceptedFiles.forEach(file => {
5912
+ * req.attach(file.name, file)
5913
+ * })
5914
+ * req.end(callback)
5915
+ * }
5916
+ * ```
5917
+ *
5918
+ * @param {File[]} acceptedFiles
5919
+ * @param {FileRejection[]} fileRejections
5920
+ * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)
5921
+ */
5922
+ onDrop: PropTypes.func,
5923
+
5924
+ /**
5925
+ * Cb for when the `drop` event occurs.
5926
+ * Note that if no files are accepted, this callback is not invoked.
5927
+ *
5928
+ * @param {File[]} files
5929
+ * @param {(DragEvent|Event)} event
5930
+ */
5931
+ onDropAccepted: PropTypes.func,
5932
+
5933
+ /**
5934
+ * Cb for when the `drop` event occurs.
5935
+ * Note that if no files are rejected, this callback is not invoked.
5936
+ *
5937
+ * @param {FileRejection[]} fileRejections
5938
+ * @param {(DragEvent|Event)} event
5939
+ */
5940
+ onDropRejected: PropTypes.func,
5941
+
5942
+ /**
5943
+ * Cb for when there's some error from any of the promises.
5944
+ *
5945
+ * @param {Error} error
5946
+ */
5947
+ onError: PropTypes.func,
5948
+
5949
+ /**
5950
+ * Custom validation function. It must return null if there's no errors.
5951
+ * @param {File} file
5952
+ * @returns {FileError|FileError[]|null}
5953
+ */
5954
+ validator: PropTypes.func
5955
+ };
5956
+ /**
5957
+ * A function that is invoked for the `dragenter`,
5958
+ * `dragover` and `dragleave` events.
5959
+ * It is not invoked if the items are not files (such as link, text, etc.).
5960
+ *
5961
+ * @callback dragCb
5962
+ * @param {DragEvent} event
5963
+ */
5964
+
5965
+ /**
5966
+ * A function that is invoked for the `drop` or input change event.
5967
+ * It is not invoked if the items are not files (such as link, text, etc.).
5968
+ *
5969
+ * @callback dropCb
5970
+ * @param {File[]} acceptedFiles List of accepted files
5971
+ * @param {FileRejection[]} fileRejections List of rejected files and why they were rejected
5972
+ * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)
5973
+ */
5974
+
5975
+ /**
5976
+ * A function that is invoked for the `drop` or input change event.
5977
+ * It is not invoked if the items are files (such as link, text, etc.).
5978
+ *
5979
+ * @callback dropAcceptedCb
5980
+ * @param {File[]} files List of accepted files that meet the given criteria
5981
+ * (`accept`, `multiple`, `minSize`, `maxSize`)
5982
+ * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)
5983
+ */
5984
+
5985
+ /**
5986
+ * A function that is invoked for the `drop` or input change event.
5987
+ *
5988
+ * @callback dropRejectedCb
5989
+ * @param {File[]} files List of rejected files that do not meet the given criteria
5990
+ * (`accept`, `multiple`, `minSize`, `maxSize`)
5991
+ * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)
5992
+ */
5993
+
5994
+ /**
5995
+ * A function that is used aggregate files,
5996
+ * in a asynchronous fashion, from drag or input change events.
5997
+ *
5998
+ * @callback getFilesFromEvent
5999
+ * @param {(DragEvent|Event)} event A drag event or input change event (if files were selected via the file dialog)
6000
+ * @returns {(File[]|Promise<File[]>)}
6001
+ */
6002
+
6003
+ /**
6004
+ * An object with the current dropzone state.
6005
+ *
6006
+ * @typedef {object} DropzoneState
6007
+ * @property {boolean} isFocused Dropzone area is in focus
6008
+ * @property {boolean} isFileDialogActive File dialog is opened
6009
+ * @property {boolean} isDragActive Active drag is in progress
6010
+ * @property {boolean} isDragAccept Dragged files are accepted
6011
+ * @property {boolean} isDragReject Some dragged files are rejected
6012
+ * @property {File[]} acceptedFiles Accepted files
6013
+ * @property {FileRejection[]} fileRejections Rejected files and why they were rejected
6014
+ */
6015
+
6016
+ /**
6017
+ * An object with the dropzone methods.
6018
+ *
6019
+ * @typedef {object} DropzoneMethods
6020
+ * @property {Function} getRootProps Returns the props you should apply to the root drop container you render
6021
+ * @property {Function} getInputProps Returns the props you should apply to hidden file input you render
6022
+ * @property {Function} open Open the native file selection dialog
6023
+ */
6024
+
6025
+ var initialState = {
6026
+ isFocused: false,
6027
+ isFileDialogActive: false,
6028
+ isDragActive: false,
6029
+ isDragAccept: false,
6030
+ isDragReject: false,
6031
+ acceptedFiles: [],
6032
+ fileRejections: []
6033
+ };
6034
+ /**
6035
+ * A React hook that creates a drag 'n' drop area.
6036
+ *
6037
+ * ```jsx
6038
+ * function MyDropzone(props) {
6039
+ * const {getRootProps, getInputProps} = useDropzone({
6040
+ * onDrop: acceptedFiles => {
6041
+ * // do something with the File objects, e.g. upload to some server
6042
+ * }
6043
+ * });
6044
+ * return (
6045
+ * <div {...getRootProps()}>
6046
+ * <input {...getInputProps()} />
6047
+ * <p>Drag and drop some files here, or click to select files</p>
6048
+ * </div>
6049
+ * )
6050
+ * }
6051
+ * ```
6052
+ *
6053
+ * @function useDropzone
6054
+ *
6055
+ * @param {object} props
6056
+ * @param {import("./utils").AcceptProp} [props.accept] Set accepted file types.
6057
+ * Checkout https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker types option for more information.
6058
+ * Keep in mind that mime type determination is not reliable across platforms. CSV files,
6059
+ * for example, are reported as text/plain under macOS but as application/vnd.ms-excel under
6060
+ * Windows. In some cases there might not be a mime type set at all (https://github.com/react-dropzone/react-dropzone/issues/276).
6061
+ * @param {boolean} [props.multiple=true] Allow drag 'n' drop (or selection from the file dialog) of multiple files
6062
+ * @param {boolean} [props.preventDropOnDocument=true] If false, allow dropped items to take over the current browser window
6063
+ * @param {boolean} [props.noClick=false] If true, disables click to open the native file selection dialog
6064
+ * @param {boolean} [props.noKeyboard=false] If true, disables SPACE/ENTER to open the native file selection dialog.
6065
+ * Note that it also stops tracking the focus state.
6066
+ * @param {boolean} [props.noDrag=false] If true, disables drag 'n' drop
6067
+ * @param {boolean} [props.noDragEventsBubbling=false] If true, stops drag event propagation to parents
6068
+ * @param {number} [props.minSize=0] Minimum file size (in bytes)
6069
+ * @param {number} [props.maxSize=Infinity] Maximum file size (in bytes)
6070
+ * @param {boolean} [props.disabled=false] Enable/disable the dropzone
6071
+ * @param {getFilesFromEvent} [props.getFilesFromEvent] Use this to provide a custom file aggregator
6072
+ * @param {Function} [props.onFileDialogCancel] Cb for when closing the file dialog with no selection
6073
+ * @param {boolean} [props.useFsAccessApi] Set to true to use the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API
6074
+ * to open the file picker instead of using an `<input type="file">` click event.
6075
+ * @param {boolean} autoFocus Set to true to auto focus the root element.
6076
+ * @param {Function} [props.onFileDialogOpen] Cb for when opening the file dialog
6077
+ * @param {dragCb} [props.onDragEnter] Cb for when the `dragenter` event occurs.
6078
+ * @param {dragCb} [props.onDragLeave] Cb for when the `dragleave` event occurs
6079
+ * @param {dragCb} [props.onDragOver] Cb for when the `dragover` event occurs
6080
+ * @param {dropCb} [props.onDrop] Cb for when the `drop` event occurs.
6081
+ * Note that this callback is invoked after the `getFilesFromEvent` callback is done.
6082
+ *
6083
+ * Files are accepted or rejected based on the `accept`, `multiple`, `minSize` and `maxSize` props.
6084
+ * `accept` must be an object with keys as a valid [MIME type](http://www.iana.org/assignments/media-types/media-types.xhtml) according to [input element specification](https://www.w3.org/wiki/HTML/Elements/input/file) and the value an array of file extensions (optional).
6085
+ * If `multiple` is set to false and additional files are dropped,
6086
+ * all files besides the first will be rejected.
6087
+ * Any file which does not have a size in the [`minSize`, `maxSize`] range, will be rejected as well.
6088
+ *
6089
+ * Note that the `onDrop` callback will always be invoked regardless if the dropped files were accepted or rejected.
6090
+ * If you'd like to react to a specific scenario, use the `onDropAccepted`/`onDropRejected` props.
6091
+ *
6092
+ * `onDrop` will provide you with an array of [File](https://developer.mozilla.org/en-US/docs/Web/API/File) objects which you can then process and send to a server.
6093
+ * For example, with [SuperAgent](https://github.com/visionmedia/superagent) as a http/ajax library:
6094
+ *
6095
+ * ```js
6096
+ * function onDrop(acceptedFiles) {
6097
+ * const req = request.post('/upload')
6098
+ * acceptedFiles.forEach(file => {
6099
+ * req.attach(file.name, file)
6100
+ * })
6101
+ * req.end(callback)
6102
+ * }
6103
+ * ```
6104
+ * @param {dropAcceptedCb} [props.onDropAccepted]
6105
+ * @param {dropRejectedCb} [props.onDropRejected]
6106
+ * @param {(error: Error) => void} [props.onError]
6107
+ *
6108
+ * @returns {DropzoneState & DropzoneMethods}
6109
+ */
6110
+
6111
+ function useDropzone() {
6112
+ var props = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
6113
+
6114
+ var _defaultProps$props = _objectSpread(_objectSpread({}, defaultProps), props),
6115
+ accept = _defaultProps$props.accept,
6116
+ disabled = _defaultProps$props.disabled,
6117
+ getFilesFromEvent = _defaultProps$props.getFilesFromEvent,
6118
+ maxSize = _defaultProps$props.maxSize,
6119
+ minSize = _defaultProps$props.minSize,
6120
+ multiple = _defaultProps$props.multiple,
6121
+ maxFiles = _defaultProps$props.maxFiles,
6122
+ onDragEnter = _defaultProps$props.onDragEnter,
6123
+ onDragLeave = _defaultProps$props.onDragLeave,
6124
+ onDragOver = _defaultProps$props.onDragOver,
6125
+ onDrop = _defaultProps$props.onDrop,
6126
+ onDropAccepted = _defaultProps$props.onDropAccepted,
6127
+ onDropRejected = _defaultProps$props.onDropRejected,
6128
+ onFileDialogCancel = _defaultProps$props.onFileDialogCancel,
6129
+ onFileDialogOpen = _defaultProps$props.onFileDialogOpen,
6130
+ useFsAccessApi = _defaultProps$props.useFsAccessApi,
6131
+ autoFocus = _defaultProps$props.autoFocus,
6132
+ preventDropOnDocument = _defaultProps$props.preventDropOnDocument,
6133
+ noClick = _defaultProps$props.noClick,
6134
+ noKeyboard = _defaultProps$props.noKeyboard,
6135
+ noDrag = _defaultProps$props.noDrag,
6136
+ noDragEventsBubbling = _defaultProps$props.noDragEventsBubbling,
6137
+ onError = _defaultProps$props.onError,
6138
+ validator = _defaultProps$props.validator;
6139
+
6140
+ var acceptAttr = React.useMemo(function () {
6141
+ return acceptPropAsAcceptAttr(accept);
6142
+ }, [accept]);
6143
+ var pickerTypes = React.useMemo(function () {
6144
+ return pickerOptionsFromAccept(accept);
6145
+ }, [accept]);
6146
+ var onFileDialogOpenCb = React.useMemo(function () {
6147
+ return typeof onFileDialogOpen === "function" ? onFileDialogOpen : noop;
6148
+ }, [onFileDialogOpen]);
6149
+ var onFileDialogCancelCb = React.useMemo(function () {
6150
+ return typeof onFileDialogCancel === "function" ? onFileDialogCancel : noop;
6151
+ }, [onFileDialogCancel]);
6152
+ /**
6153
+ * @constant
6154
+ * @type {React.MutableRefObject<HTMLElement>}
6155
+ */
6156
+
6157
+ var rootRef = React.useRef(null);
6158
+ var inputRef = React.useRef(null);
6159
+
6160
+ var _useReducer = React.useReducer(reducer, initialState),
6161
+ _useReducer2 = _slicedToArray(_useReducer, 2),
6162
+ state = _useReducer2[0],
6163
+ dispatch = _useReducer2[1];
6164
+
6165
+ var isFocused = state.isFocused,
6166
+ isFileDialogActive = state.isFileDialogActive;
6167
+ var fsAccessApiWorksRef = React.useRef(typeof window !== "undefined" && window.isSecureContext && useFsAccessApi && canUseFileSystemAccessAPI()); // Update file dialog active state when the window is focused on
6168
+
6169
+ var onWindowFocus = function onWindowFocus() {
6170
+ // Execute the timeout only if the file dialog is opened in the browser
6171
+ if (!fsAccessApiWorksRef.current && isFileDialogActive) {
6172
+ setTimeout(function () {
6173
+ if (inputRef.current) {
6174
+ var files = inputRef.current.files;
6175
+
6176
+ if (!files.length) {
6177
+ dispatch({
6178
+ type: "closeDialog"
6179
+ });
6180
+ onFileDialogCancelCb();
6181
+ }
6182
+ }
6183
+ }, 300);
6184
+ }
6185
+ };
6186
+
6187
+ React.useEffect(function () {
6188
+ window.addEventListener("focus", onWindowFocus, false);
6189
+ return function () {
6190
+ window.removeEventListener("focus", onWindowFocus, false);
6191
+ };
6192
+ }, [inputRef, isFileDialogActive, onFileDialogCancelCb, fsAccessApiWorksRef]);
6193
+ var dragTargetsRef = React.useRef([]);
6194
+
6195
+ var onDocumentDrop = function onDocumentDrop(event) {
6196
+ if (rootRef.current && rootRef.current.contains(event.target)) {
6197
+ // If we intercepted an event for our instance, let it propagate down to the instance's onDrop handler
6198
+ return;
6199
+ }
6200
+
6201
+ event.preventDefault();
6202
+ dragTargetsRef.current = [];
6203
+ };
6204
+
6205
+ React.useEffect(function () {
6206
+ if (preventDropOnDocument) {
6207
+ document.addEventListener("dragover", onDocumentDragOver, false);
6208
+ document.addEventListener("drop", onDocumentDrop, false);
6209
+ }
6210
+
6211
+ return function () {
6212
+ if (preventDropOnDocument) {
6213
+ document.removeEventListener("dragover", onDocumentDragOver);
6214
+ document.removeEventListener("drop", onDocumentDrop);
6215
+ }
6216
+ };
6217
+ }, [rootRef, preventDropOnDocument]); // Auto focus the root when autoFocus is true
6218
+
6219
+ React.useEffect(function () {
6220
+ if (!disabled && autoFocus && rootRef.current) {
6221
+ rootRef.current.focus();
6222
+ }
6223
+
6224
+ return function () {};
6225
+ }, [rootRef, autoFocus, disabled]);
6226
+ var onErrCb = React.useCallback(function (e) {
6227
+ if (onError) {
6228
+ onError(e);
6229
+ } else {
6230
+ // Let the user know something's gone wrong if they haven't provided the onError cb.
6231
+ console.error(e);
6232
+ }
6233
+ }, [onError]);
6234
+ var onDragEnterCb = React.useCallback(function (event) {
6235
+ event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done
6236
+
6237
+ event.persist();
6238
+ stopPropagation(event);
6239
+ dragTargetsRef.current = [].concat(_toConsumableArray(dragTargetsRef.current), [event.target]);
6240
+
6241
+ if (isEvtWithFiles(event)) {
6242
+ Promise.resolve(getFilesFromEvent(event)).then(function (files) {
6243
+ if (isPropagationStopped(event) && !noDragEventsBubbling) {
6244
+ return;
6245
+ }
6246
+
6247
+ var fileCount = files.length;
6248
+ var isDragAccept = fileCount > 0 && allFilesAccepted({
6249
+ files: files,
6250
+ accept: acceptAttr,
6251
+ minSize: minSize,
6252
+ maxSize: maxSize,
6253
+ multiple: multiple,
6254
+ maxFiles: maxFiles,
6255
+ validator: validator
6256
+ });
6257
+ var isDragReject = fileCount > 0 && !isDragAccept;
6258
+ dispatch({
6259
+ isDragAccept: isDragAccept,
6260
+ isDragReject: isDragReject,
6261
+ isDragActive: true,
6262
+ type: "setDraggedFiles"
6263
+ });
6264
+
6265
+ if (onDragEnter) {
6266
+ onDragEnter(event);
6267
+ }
6268
+ }).catch(function (e) {
6269
+ return onErrCb(e);
6270
+ });
6271
+ }
6272
+ }, [getFilesFromEvent, onDragEnter, onErrCb, noDragEventsBubbling, acceptAttr, minSize, maxSize, multiple, maxFiles, validator]);
6273
+ var onDragOverCb = React.useCallback(function (event) {
6274
+ event.preventDefault();
6275
+ event.persist();
6276
+ stopPropagation(event);
6277
+ var hasFiles = isEvtWithFiles(event);
6278
+
6279
+ if (hasFiles && event.dataTransfer) {
6280
+ try {
6281
+ event.dataTransfer.dropEffect = "copy";
6282
+ } catch (_unused) {}
6283
+ /* eslint-disable-line no-empty */
6284
+
6285
+ }
6286
+
6287
+ if (hasFiles && onDragOver) {
6288
+ onDragOver(event);
6289
+ }
6290
+
6291
+ return false;
6292
+ }, [onDragOver, noDragEventsBubbling]);
6293
+ var onDragLeaveCb = React.useCallback(function (event) {
6294
+ event.preventDefault();
6295
+ event.persist();
6296
+ stopPropagation(event); // Only deactivate once the dropzone and all children have been left
6297
+
6298
+ var targets = dragTargetsRef.current.filter(function (target) {
6299
+ return rootRef.current && rootRef.current.contains(target);
6300
+ }); // Make sure to remove a target present multiple times only once
6301
+ // (Firefox may fire dragenter/dragleave multiple times on the same element)
6302
+
6303
+ var targetIdx = targets.indexOf(event.target);
6304
+
6305
+ if (targetIdx !== -1) {
6306
+ targets.splice(targetIdx, 1);
6307
+ }
6308
+
6309
+ dragTargetsRef.current = targets;
6310
+
6311
+ if (targets.length > 0) {
6312
+ return;
6313
+ }
6314
+
6315
+ dispatch({
6316
+ type: "setDraggedFiles",
6317
+ isDragActive: false,
6318
+ isDragAccept: false,
6319
+ isDragReject: false
6320
+ });
6321
+
6322
+ if (isEvtWithFiles(event) && onDragLeave) {
6323
+ onDragLeave(event);
6324
+ }
6325
+ }, [rootRef, onDragLeave, noDragEventsBubbling]);
6326
+ var setFiles = React.useCallback(function (files, event) {
6327
+ var acceptedFiles = [];
6328
+ var fileRejections = [];
6329
+ files.forEach(function (file) {
6330
+ var _fileAccepted = fileAccepted(file, acceptAttr),
6331
+ _fileAccepted2 = _slicedToArray(_fileAccepted, 2),
6332
+ accepted = _fileAccepted2[0],
6333
+ acceptError = _fileAccepted2[1];
6334
+
6335
+ var _fileMatchSize = fileMatchSize(file, minSize, maxSize),
6336
+ _fileMatchSize2 = _slicedToArray(_fileMatchSize, 2),
6337
+ sizeMatch = _fileMatchSize2[0],
6338
+ sizeError = _fileMatchSize2[1];
6339
+
6340
+ var customErrors = validator ? validator(file) : null;
6341
+
6342
+ if (accepted && sizeMatch && !customErrors) {
6343
+ acceptedFiles.push(file);
6344
+ } else {
6345
+ var errors = [acceptError, sizeError];
6346
+
6347
+ if (customErrors) {
6348
+ errors = errors.concat(customErrors);
6349
+ }
6350
+
6351
+ fileRejections.push({
6352
+ file: file,
6353
+ errors: errors.filter(function (e) {
6354
+ return e;
6355
+ })
6356
+ });
6357
+ }
6358
+ });
6359
+
6360
+ if (!multiple && acceptedFiles.length > 1 || multiple && maxFiles >= 1 && acceptedFiles.length > maxFiles) {
6361
+ // Reject everything and empty accepted files
6362
+ acceptedFiles.forEach(function (file) {
6363
+ fileRejections.push({
6364
+ file: file,
6365
+ errors: [TOO_MANY_FILES_REJECTION]
6366
+ });
6367
+ });
6368
+ acceptedFiles.splice(0);
6369
+ }
6370
+
6371
+ dispatch({
6372
+ acceptedFiles: acceptedFiles,
6373
+ fileRejections: fileRejections,
6374
+ type: "setFiles"
6375
+ });
6376
+
6377
+ if (onDrop) {
6378
+ onDrop(acceptedFiles, fileRejections, event);
6379
+ }
6380
+
6381
+ if (fileRejections.length > 0 && onDropRejected) {
6382
+ onDropRejected(fileRejections, event);
6383
+ }
6384
+
6385
+ if (acceptedFiles.length > 0 && onDropAccepted) {
6386
+ onDropAccepted(acceptedFiles, event);
6387
+ }
6388
+ }, [dispatch, multiple, acceptAttr, minSize, maxSize, maxFiles, onDrop, onDropAccepted, onDropRejected, validator]);
6389
+ var onDropCb = React.useCallback(function (event) {
6390
+ event.preventDefault(); // Persist here because we need the event later after getFilesFromEvent() is done
6391
+
6392
+ event.persist();
6393
+ stopPropagation(event);
6394
+ dragTargetsRef.current = [];
6395
+
6396
+ if (isEvtWithFiles(event)) {
6397
+ Promise.resolve(getFilesFromEvent(event)).then(function (files) {
6398
+ if (isPropagationStopped(event) && !noDragEventsBubbling) {
6399
+ return;
6400
+ }
6401
+
6402
+ setFiles(files, event);
6403
+ }).catch(function (e) {
6404
+ return onErrCb(e);
6405
+ });
6406
+ }
6407
+
6408
+ dispatch({
6409
+ type: "reset"
6410
+ });
6411
+ }, [getFilesFromEvent, setFiles, onErrCb, noDragEventsBubbling]); // Fn for opening the file dialog programmatically
6412
+
6413
+ var openFileDialog = React.useCallback(function () {
6414
+ // No point to use FS access APIs if context is not secure
6415
+ // https://developer.mozilla.org/en-US/docs/Web/Security/Secure_Contexts#feature_detection
6416
+ if (fsAccessApiWorksRef.current) {
6417
+ dispatch({
6418
+ type: "openDialog"
6419
+ });
6420
+ onFileDialogOpenCb(); // https://developer.mozilla.org/en-US/docs/Web/API/window/showOpenFilePicker
6421
+
6422
+ var opts = {
6423
+ multiple: multiple,
6424
+ types: pickerTypes
6425
+ };
6426
+ window.showOpenFilePicker(opts).then(function (handles) {
6427
+ return getFilesFromEvent(handles);
6428
+ }).then(function (files) {
6429
+ setFiles(files, null);
6430
+ dispatch({
6431
+ type: "closeDialog"
6432
+ });
6433
+ }).catch(function (e) {
6434
+ // AbortError means the user canceled
6435
+ if (isAbort(e)) {
6436
+ onFileDialogCancelCb(e);
6437
+ dispatch({
6438
+ type: "closeDialog"
6439
+ });
6440
+ } else if (isSecurityError(e)) {
6441
+ fsAccessApiWorksRef.current = false; // CORS, so cannot use this API
6442
+ // Try using the input
6443
+
6444
+ if (inputRef.current) {
6445
+ inputRef.current.value = null;
6446
+ inputRef.current.click();
6447
+ } else {
6448
+ onErrCb(new Error("Cannot open the file picker because the https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API is not supported and no <input> was provided."));
6449
+ }
6450
+ } else {
6451
+ onErrCb(e);
6452
+ }
6453
+ });
6454
+ return;
6455
+ }
6456
+
6457
+ if (inputRef.current) {
6458
+ dispatch({
6459
+ type: "openDialog"
6460
+ });
6461
+ onFileDialogOpenCb();
6462
+ inputRef.current.value = null;
6463
+ inputRef.current.click();
6464
+ }
6465
+ }, [dispatch, onFileDialogOpenCb, onFileDialogCancelCb, useFsAccessApi, setFiles, onErrCb, pickerTypes, multiple]); // Cb to open the file dialog when SPACE/ENTER occurs on the dropzone
6466
+
6467
+ var onKeyDownCb = React.useCallback(function (event) {
6468
+ // Ignore keyboard events bubbling up the DOM tree
6469
+ if (!rootRef.current || !rootRef.current.isEqualNode(event.target)) {
6470
+ return;
6471
+ }
6472
+
6473
+ if (event.key === " " || event.key === "Enter" || event.keyCode === 32 || event.keyCode === 13) {
6474
+ event.preventDefault();
6475
+ openFileDialog();
6476
+ }
6477
+ }, [rootRef, openFileDialog]); // Update focus state for the dropzone
6478
+
6479
+ var onFocusCb = React.useCallback(function () {
6480
+ dispatch({
6481
+ type: "focus"
6482
+ });
6483
+ }, []);
6484
+ var onBlurCb = React.useCallback(function () {
6485
+ dispatch({
6486
+ type: "blur"
6487
+ });
6488
+ }, []); // Cb to open the file dialog when click occurs on the dropzone
6489
+
6490
+ var onClickCb = React.useCallback(function () {
6491
+ if (noClick) {
6492
+ return;
6493
+ } // In IE11/Edge the file-browser dialog is blocking, therefore, use setTimeout()
6494
+ // to ensure React can handle state changes
6495
+ // See: https://github.com/react-dropzone/react-dropzone/issues/450
6496
+
6497
+
6498
+ if (isIeOrEdge()) {
6499
+ setTimeout(openFileDialog, 0);
6500
+ } else {
6501
+ openFileDialog();
6502
+ }
6503
+ }, [noClick, openFileDialog]);
6504
+
6505
+ var composeHandler = function composeHandler(fn) {
6506
+ return disabled ? null : fn;
6507
+ };
6508
+
6509
+ var composeKeyboardHandler = function composeKeyboardHandler(fn) {
6510
+ return noKeyboard ? null : composeHandler(fn);
6511
+ };
6512
+
6513
+ var composeDragHandler = function composeDragHandler(fn) {
6514
+ return noDrag ? null : composeHandler(fn);
6515
+ };
6516
+
6517
+ var stopPropagation = function stopPropagation(event) {
6518
+ if (noDragEventsBubbling) {
6519
+ event.stopPropagation();
6520
+ }
6521
+ };
6522
+
6523
+ var getRootProps = React.useMemo(function () {
6524
+ return function () {
6525
+ var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
6526
+ _ref2$refKey = _ref2.refKey,
6527
+ refKey = _ref2$refKey === void 0 ? "ref" : _ref2$refKey,
6528
+ role = _ref2.role,
6529
+ onKeyDown = _ref2.onKeyDown,
6530
+ onFocus = _ref2.onFocus,
6531
+ onBlur = _ref2.onBlur,
6532
+ onClick = _ref2.onClick,
6533
+ onDragEnter = _ref2.onDragEnter,
6534
+ onDragOver = _ref2.onDragOver,
6535
+ onDragLeave = _ref2.onDragLeave,
6536
+ onDrop = _ref2.onDrop,
6537
+ rest = _objectWithoutProperties(_ref2, _excluded3);
6538
+
6539
+ return _objectSpread(_objectSpread(_defineProperty({
6540
+ onKeyDown: composeKeyboardHandler(composeEventHandlers(onKeyDown, onKeyDownCb)),
6541
+ onFocus: composeKeyboardHandler(composeEventHandlers(onFocus, onFocusCb)),
6542
+ onBlur: composeKeyboardHandler(composeEventHandlers(onBlur, onBlurCb)),
6543
+ onClick: composeHandler(composeEventHandlers(onClick, onClickCb)),
6544
+ onDragEnter: composeDragHandler(composeEventHandlers(onDragEnter, onDragEnterCb)),
6545
+ onDragOver: composeDragHandler(composeEventHandlers(onDragOver, onDragOverCb)),
6546
+ onDragLeave: composeDragHandler(composeEventHandlers(onDragLeave, onDragLeaveCb)),
6547
+ onDrop: composeDragHandler(composeEventHandlers(onDrop, onDropCb)),
6548
+ role: typeof role === "string" && role !== "" ? role : "presentation"
6549
+ }, refKey, rootRef), !disabled && !noKeyboard ? {
6550
+ tabIndex: 0
6551
+ } : {}), rest);
6552
+ };
6553
+ }, [rootRef, onKeyDownCb, onFocusCb, onBlurCb, onClickCb, onDragEnterCb, onDragOverCb, onDragLeaveCb, onDropCb, noKeyboard, noDrag, disabled]);
6554
+ var onInputElementClick = React.useCallback(function (event) {
6555
+ event.stopPropagation();
6556
+ }, []);
6557
+ var getInputProps = React.useMemo(function () {
6558
+ return function () {
6559
+ var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
6560
+ _ref3$refKey = _ref3.refKey,
6561
+ refKey = _ref3$refKey === void 0 ? "ref" : _ref3$refKey,
6562
+ onChange = _ref3.onChange,
6563
+ onClick = _ref3.onClick,
6564
+ rest = _objectWithoutProperties(_ref3, _excluded4);
6565
+
6566
+ var inputProps = _defineProperty({
6567
+ accept: acceptAttr,
6568
+ multiple: multiple,
6569
+ type: "file",
6570
+ style: {
6571
+ display: "none"
6572
+ },
6573
+ onChange: composeHandler(composeEventHandlers(onChange, onDropCb)),
6574
+ onClick: composeHandler(composeEventHandlers(onClick, onInputElementClick)),
6575
+ tabIndex: -1
6576
+ }, refKey, inputRef);
6577
+
6578
+ return _objectSpread(_objectSpread({}, inputProps), rest);
6579
+ };
6580
+ }, [inputRef, accept, multiple, onDropCb, disabled]);
6581
+ return _objectSpread(_objectSpread({}, state), {}, {
6582
+ isFocused: isFocused && !disabled,
6583
+ getRootProps: getRootProps,
6584
+ getInputProps: getInputProps,
6585
+ rootRef: rootRef,
6586
+ inputRef: inputRef,
6587
+ open: composeHandler(openFileDialog)
6588
+ });
6589
+ }
6590
+ /**
6591
+ * @param {DropzoneState} state
6592
+ * @param {{type: string} & DropzoneState} action
6593
+ * @returns {DropzoneState}
6594
+ */
6595
+
6596
+ function reducer(state, action) {
6597
+ /* istanbul ignore next */
6598
+ switch (action.type) {
6599
+ case "focus":
6600
+ return _objectSpread(_objectSpread({}, state), {}, {
6601
+ isFocused: true
6602
+ });
6603
+
6604
+ case "blur":
6605
+ return _objectSpread(_objectSpread({}, state), {}, {
6606
+ isFocused: false
6607
+ });
6608
+
6609
+ case "openDialog":
6610
+ return _objectSpread(_objectSpread({}, initialState), {}, {
6611
+ isFileDialogActive: true
6612
+ });
6613
+
6614
+ case "closeDialog":
6615
+ return _objectSpread(_objectSpread({}, state), {}, {
6616
+ isFileDialogActive: false
6617
+ });
6618
+
6619
+ case "setDraggedFiles":
6620
+ return _objectSpread(_objectSpread({}, state), {}, {
6621
+ isDragActive: action.isDragActive,
6622
+ isDragAccept: action.isDragAccept,
6623
+ isDragReject: action.isDragReject
6624
+ });
6625
+
6626
+ case "setFiles":
6627
+ return _objectSpread(_objectSpread({}, state), {}, {
6628
+ acceptedFiles: action.acceptedFiles,
6629
+ fileRejections: action.fileRejections
6630
+ });
6631
+
6632
+ case "reset":
6633
+ return _objectSpread({}, initialState);
6634
+
6635
+ default:
6636
+ return state;
6637
+ }
6638
+ }
6639
+
6640
+ function noop() {}
6641
+
6642
+ var css_248z$2 = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\nspan.label {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.75rem, 8vw - 0.85rem, 0.95rem);\n color: #11181C;\n}\n\nspan.label-secondary {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n color: #687075;\n}\n\n.pollination-drop-zone {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n display: flex;\n align-items: center;\n justify-content: space-between;\n background-color: #E8F6FF;\n padding: 10px 12px;\n border-radius: 6px;\n gap: 16px;\n cursor: pointer;\n border: 1px solid #E8F6FF;\n user-select: none;\n}\n\n.pollination-drop-zone-disabled {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n display: flex;\n align-items: center;\n justify-content: space-between;\n background-color: #E8F6FF;\n padding: 10px 12px;\n border-radius: 6px;\n gap: 16px;\n border: 1px solid #E8F6FF;\n user-select: none;\n}\n\n.pollination-drop-zone:hover,\n.pollination-drop-zone:active,\n.pollination-drop-zone:focus {\n border-color: #FCDE5D;\n}\n\n.pollination-drop-zone:hover .pollination-file-input-button,\n.pollination-drop-zone:active .pollination-file-input-button {\n background-color: #FCDE5D;\n color: black;\n border-color: #FCDE5D;\n}\n\n.pollination-file-input-button {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n z-index: 10;\n display: flex;\n max-width: 260px;\n background-color: var(--primary);\n border: 1px solid var(--primary);\n color: white;\n padding: 8px 16px;\n float: left;\n align-items: center;\n gap: 8px;\n border-radius: 4px;\n transition: background-color 0.25s, border-color 0.25s, color 0.25s;\n}\n\n.pollination-file-input-button-disabled {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n content: \"Disabled\";\n background-color: var(--grey3);\n color: var(--grey5);\n cursor: default;\n border-color: var(--grey5);\n}";
6643
+ styleInject(css_248z$2);
6644
+
6645
+ var css_248z$1 = "span.label {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.75rem, 8vw - 0.85rem, 0.95rem);\n color: #11181C;\n}\n\nspan.label-secondary {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n color: #687075;\n}";
6646
+ styleInject(css_248z$1);
6647
+
6648
+ var FileInput = function (_a) {
6649
+ var disabled = _a.disabled; _a.onChange;
6650
+ var onDrop = React.useCallback(function (acceptedFiles) {
6651
+ console.log(acceptedFiles);
6652
+ }, []);
6653
+ var _b = useDropzone({
6654
+ onDrop: onDrop,
6655
+ accept: {
6656
+ 'application/json': ['.hbjson']
6657
+ },
6658
+ disabled: disabled
6659
+ }), getRootProps = _b.getRootProps, getInputProps = _b.getInputProps; _b.isDragActive;
6660
+ return (React__default["default"].createElement("div", __assign$2({}, getRootProps({ className: disabled ? 'pollination-drop-zone-disabled' : 'pollination-drop-zone' })),
6661
+ React__default["default"].createElement("div", { style: {
6662
+ display: 'flex',
6663
+ gap: 16,
6664
+ alignItems: 'center'
6665
+ } },
6666
+ React__default["default"].createElement(CloudArrowUp$1, { size: 32, style: { color: '#687075' } }),
6667
+ React__default["default"].createElement("div", { style: {
6668
+ display: 'flex',
6669
+ flexDirection: 'column',
6670
+ gap: 4
6671
+ } },
6672
+ React__default["default"].createElement("span", { className: "label" }, "Drag and Drop .hbjson files here"),
6673
+ React__default["default"].createElement("span", { className: "label-secondary" }, "Limit 200MB per file"))),
6674
+ React__default["default"].createElement("span", { className: "pollination-file-input-button ".concat(disabled && 'pollination-file-input-button-disabled') }, "Upload an .hbjson file"),
6675
+ React__default["default"].createElement("input", __assign$2({ type: "file", name: "file" }, getInputProps()))));
4918
6676
  };
4919
6677
 
4920
6678
  var GetModel = function (_a) {
@@ -4953,7 +6711,7 @@ var GetModel = function (_a) {
4953
6711
  }
4954
6712
  }, [getHbjson, key, subscribe]);
4955
6713
  return (host === 'web' ?
4956
- React__default["default"].createElement(FileInput, { accept: 'hbjson', onChange: function (event) {
6714
+ React__default["default"].createElement(FileInput, { onChange: function (event) {
4957
6715
  if (event.target.files.length < 1)
4958
6716
  return;
4959
6717
  var file = event.target.files[0];
@@ -5170,7 +6928,7 @@ var PreviewBakeModel = function (_a) {
5170
6928
  "Bake")))));
5171
6929
  };
5172
6930
 
5173
- var css_248z = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}";
6931
+ var css_248z = ":root {\n --background: #FFFAEE;\n --primary: #1890ff;\n --primary2: #40a9ff;\n --primary0: #e6f7ff;\n --grey5: #8c8c8c;\n --grey3: #d0d7de;\n --secondary: #fff566;\n --font-color: #494949;\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --background: #3c3c3c;\n --font-color: #fafafa;\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0);\n }\n to {\n transform: rotate(360deg);\n }\n}\n.spin {\n animation: spin 1s linear 0s infinite;\n}\n\nspan.label {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.75rem, 8vw - 0.85rem, 0.95rem);\n color: #11181C;\n}\n\nspan.label-secondary {\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", Segoe UI Symbol, \"Noto Color Emoji\";\n font-size: clamp(0.65rem, 8vw - 0.75rem, 0.85rem);\n color: #687075;\n}";
5174
6932
  styleInject(css_248z);
5175
6933
 
5176
6934
  var getAction$1 = function (key) {
@@ -5188,7 +6946,7 @@ var getAction$1 = function (key) {
5188
6946
  }
5189
6947
  };
5190
6948
  var SendGeometry = function (_a) {
5191
- var geometry = _a.geometry, defaultAction = _a.defaultAction, defaultKey = _a.key;
6949
+ var geometry = _a.geometry, defaultAction = _a.defaultAction, defaultKey = _a.defaultKey;
5192
6950
  var _b = React.useState(defaultAction !== null && defaultAction !== void 0 ? defaultAction : 'preview'), selOpt = _b[0], setSelOpt = _b[1];
5193
6951
  var _c = React.useState(defaultKey !== null && defaultKey !== void 0 ? defaultKey : performance.now().toString()), key = _c[0], setKey = _c[1];
5194
6952
  var sendGeometry = useSendGeometry().sendGeometry;
@@ -5297,7 +7055,7 @@ var getAction = function (key) {
5297
7055
  }
5298
7056
  };
5299
7057
  var SendModel = function (_a) {
5300
- var hbjson = _a.hbjson, defaultAction = _a.defaultAction, defaultKey = _a.key;
7058
+ var hbjson = _a.hbjson, defaultAction = _a.defaultAction, defaultKey = _a.defaultKey;
5301
7059
  var _b = React.useState(defaultAction !== null && defaultAction !== void 0 ? defaultAction : 'preview'), selOpt = _b[0], setSelOpt = _b[1];
5302
7060
  var _c = React.useState(defaultKey !== null && defaultKey !== void 0 ? defaultKey : performance.now().toString()), key = _c[0], setKey = _c[1];
5303
7061
  var _d = useSendHbjson(); _d.host; _d.state; var sendHbjson = _d.sendHbjson;