bkui-vue 0.0.1-beta.150 → 0.0.1-beta.153

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/dist/index.esm.js CHANGED
@@ -6321,7 +6321,7 @@ var lodash = { exports: {} };
6321
6321
  function valuesIn(object) {
6322
6322
  return object == null ? [] : baseValues(object, keysIn(object));
6323
6323
  }
6324
- function clamp(number, lower, upper) {
6324
+ function clamp2(number, lower, upper) {
6325
6325
  if (upper === undefined$1) {
6326
6326
  upper = lower;
6327
6327
  lower = undefined$1;
@@ -6995,7 +6995,7 @@ var lodash = { exports: {} };
6995
6995
  lodash2.camelCase = camelCase;
6996
6996
  lodash2.capitalize = capitalize;
6997
6997
  lodash2.ceil = ceil;
6998
- lodash2.clamp = clamp;
6998
+ lodash2.clamp = clamp2;
6999
6999
  lodash2.clone = clone2;
7000
7000
  lodash2.cloneDeep = cloneDeep;
7001
7001
  lodash2.cloneDeepWith = cloneDeepWith;
@@ -8481,7 +8481,7 @@ const warn = (props2, context) => {
8481
8481
  warn.displayName = "warn";
8482
8482
  warn.inheritAttrs = false;
8483
8483
  JSON.parse('{"type":"element","name":"svg","attributes":{"xmlns":"http://www.w3.org/2000/svg","viewBox":"0 0 1024 1024","style":"width: 1em; height: 1em; vertical-align: middle;fill: currentColor;overflow: hidden;"},"elements":[{"type":"element","name":"path","attributes":{"d":"M603.52 348.8c0 26.496-22.357333333333333 48-49.919999999999995 48s-49.919999999999995-21.503999999999998-49.919999999999995-48c0-26.496 22.357333333333333-48 49.919999999999995-48s49.919999999999995 21.503999999999998 49.919999999999995 48z"}},{"type":"element","name":"path","attributes":{"d":"M357.11999999999995 348.8c0 26.496-22.357333333333333 48-49.919999999999995 48s-49.919999999999995-21.503999999999998-49.919999999999995-48c0-26.496 22.357333333333333-48 49.919999999999995-48s49.919999999999995 21.503999999999998 49.919999999999995 48z"}},{"type":"element","name":"path","attributes":{"d":"M693.12 604.16c0 15.914666666666665-13.184 28.8-29.439999999999998 28.8s-29.439999999999998-12.885333333333332-29.439999999999998-28.8c0-15.914666666666665 13.184-28.8 29.439999999999998-28.8s29.439999999999998 12.885333333333332 29.439999999999998 28.8z"}},{"type":"element","name":"path","attributes":{"d":"M951.68 832c43.775999999999996-42.410666666666664 71.29599999999999-101.41866666666665 72.32-166.86933333333332-4.608-109.696-77.35466666666666-201.0453333333333-176.72533333333334-233.30133333333333 5.674666666666667-12.117333333333331 10.154666666666666-26.282666666666664 10.154666666666666-41.471999999999994 0-4.522666666666666-0.38399999999999995-8.959999999999999-1.152-13.226666666666667-33.834666666666664-181.29066666666665-212.39466666666664-313.1306666666667-425.5146666666667-313.1306666666667-238.71999999999997 0-430.72 167.04-430.72 372.48 1.2799999999999998 107.56266666666666 50.56 203.30666666666664 127.40266666666668 267.05066666666664l-16.682666666666666 55.50933333333333c-2.1759999999999997 6.784-3.456 14.634666666666668-3.456 22.741333333333333 0 42.410666666666664 34.38933333333333 76.8 76.8 76.8 12.458666666666666 0 24.191999999999997-2.944 34.602666666666664-8.234666666666666l101.33333333333333-52.906666666666666c32.81066666666666 7.722666666666666 70.52799999999999 12.159999999999998 109.22666666666666 12.159999999999998 0.08533333333333333 0 0.17066666666666666 0 0.21333333333333332 0h28.16c13.098666666666666-0.7679999999999999 25.130666666666663-4.693333333333333 35.54133333333333-11.050666666666666 54.22933333333333 73.55733333333333 140.672 120.53333333333333 238.07999999999998 120.53333333333333 1.664 0 3.3706666666666667 0 5.034666666666666-0.042666666666666665 21.077333333333332-0.08533333333333333 41.855999999999995-2.1759999999999997 61.99466666666667-6.101333333333333l49.10933333333333 26.581333333333333c9.941333333333333 5.034666666666666 21.717333333333332 8.021333333333333 34.176 8.021333333333333 42.410666666666664 0 76.8-34.38933333333333 76.8-76.8 0-8.106666666666666-1.2799999999999998-15.957333333333333-3.584-23.296zM430.72 752.64c-0.17066666666666666 0-0.38399999999999995 0-0.5973333333333333 0-40.831999999999994 0-80.29866666666666-5.8453333333333335-117.58933333333331-16.72533333333333l-3.456 0.7253333333333334-131.2 67.19999999999999 35.199999999999996-113.27999999999999h-3.1999999999999997c-86.10133333333332-52.05333333333333-143.40266666666668-144.17066666666665-145.92-249.89866666666666 0-172.50133333333332 165.76-312.66133333333335 366.72-312.66133333333335 5.717333333333333-0.3413333333333333 12.415999999999999-0.512 19.157333333333334-0.512 163.32799999999997 0 300.58666666666664 111.40266666666668 340.0106666666667 262.4l-14.805333333333332 2.432c-183.04 0-327.03999999999996 112-327.03999999999996 285.44 0.512 26.709333333333333 5.1626666666666665 52.181333333333335 13.312 75.98933333333332zM872.96 812.8v0l21.759999999999998 67.84-81.28-40.959999999999994h-3.84c-21.119999999999997 6.101333333333333-45.397333333333336 9.6-70.48533333333333 9.6-0.17066666666666666 0-0.38399999999999995 0-0.5546666666666666 0-5.888 0.5973333333333333-12.757333333333332 0.9386666666666665-19.712 0.9386666666666665-107.09333333333332 0-195.2853333333333-80.93866666666666-206.71999999999997-184.95999999999998 10.367999999999999-106.96533333333333 99.072-189.1413333333333 206.976-189.1413333333333 5.973333333333334 0 11.861333333333334 0.256 17.706666666666663 0.7253333333333334 4.309333333333333-0.512 10.197333333333333-0.7253333333333334 16.170666666666666-0.7253333333333334 107.904 0 196.60799999999998 82.17599999999999 206.976 187.34933333333333-1.7066666666666666 63.82933333333333-35.79733333333333 118.44266666666665-86.18666666666667 148.90666666666667z"}},{"type":"element","name":"path","attributes":{"d":"M839.68 604.16c0 15.914666666666665-13.184 28.8-29.439999999999998 28.8s-29.439999999999998-12.885333333333332-29.439999999999998-28.8c0-15.914666666666665 13.184-28.8 29.439999999999998-28.8s29.439999999999998 12.885333333333332 29.439999999999998 28.8z"}}]}');
8484
- var Component$E = defineComponent({
8484
+ var Component$F = defineComponent({
8485
8485
  name: "Alert",
8486
8486
  props: {
8487
8487
  theme: PropTypes.theme(["info", "success", "warning", "error"]).def("info"),
@@ -8538,8 +8538,8 @@ var Component$E = defineComponent({
8538
8538
  }, [this.closeText ? this.closeText : createVNode(closeLine, null, null)])])]);
8539
8539
  }
8540
8540
  });
8541
- const BkAlert = withInstall(Component$E);
8542
- var Component$D = defineComponent({
8541
+ const BkAlert = withInstall(Component$F);
8542
+ var Component$E = defineComponent({
8543
8543
  name: "AnimateNumber",
8544
8544
  props: {
8545
8545
  value: PropTypes.number.def(0),
@@ -8587,7 +8587,7 @@ var Component$D = defineComponent({
8587
8587
  return () => createVNode("span", null, [formatValue.value]);
8588
8588
  }
8589
8589
  });
8590
- const BkAnimateNumber = withInstall(Component$D);
8590
+ const BkAnimateNumber = withInstall(Component$E);
8591
8591
  const on$1 = (() => {
8592
8592
  if (document.addEventListener) {
8593
8593
  return (element, event, handler) => {
@@ -8616,7 +8616,7 @@ const off$1 = (() => {
8616
8616
  }
8617
8617
  };
8618
8618
  })();
8619
- var Component$C = defineComponent({
8619
+ var Component$D = defineComponent({
8620
8620
  name: "Affix",
8621
8621
  props: {
8622
8622
  offsetTop: PropTypes.number.def(0),
@@ -8741,8 +8741,8 @@ var Component$C = defineComponent({
8741
8741
  };
8742
8742
  }
8743
8743
  });
8744
- const BkAffix = withInstall(Component$C);
8745
- var Component$B = defineComponent({
8744
+ const BkAffix = withInstall(Component$D);
8745
+ var Component$C = defineComponent({
8746
8746
  name: "Backtop",
8747
8747
  props: {
8748
8748
  visibilityHeight: PropTypes.number.def(200),
@@ -8809,8 +8809,8 @@ var Component$B = defineComponent({
8809
8809
  });
8810
8810
  }
8811
8811
  });
8812
- const BkBacktop = withInstall(Component$B);
8813
- var Component$A = defineComponent({
8812
+ const BkBacktop = withInstall(Component$C);
8813
+ var Component$B = defineComponent({
8814
8814
  name: "Badge",
8815
8815
  props: {
8816
8816
  theme: PropTypes.string.def("primary"),
@@ -8886,8 +8886,8 @@ var Component$A = defineComponent({
8886
8886
  }, [(_f = (_e = (_d = this.$slots).icon) == null ? void 0 : _e.call(_d)) != null ? _f : number]) : ""]);
8887
8887
  }
8888
8888
  });
8889
- const BkBadge = withInstall(Component$A);
8890
- var Component$z = defineComponent({
8889
+ const BkBadge = withInstall(Component$B);
8890
+ var Component$A = defineComponent({
8891
8891
  name: "Breadcrumb",
8892
8892
  props: {
8893
8893
  extCls: PropTypes.string,
@@ -8986,7 +8986,7 @@ var BreadcrumbItem = defineComponent({
8986
8986
  };
8987
8987
  }
8988
8988
  });
8989
- const BkBreadcrumb = withInstallProps(Component$z, { Item: BreadcrumbItem });
8989
+ const BkBreadcrumb = withInstallProps(Component$A, { Item: BreadcrumbItem });
8990
8990
  let BkLoadingMode;
8991
8991
  (function(BkLoadingMode2) {
8992
8992
  BkLoadingMode2["Default"] = "default";
@@ -9017,7 +9017,7 @@ const loadingTypes = {
9017
9017
  color: PropTypes.string.def("white"),
9018
9018
  zIndex: PropTypes.number.def(1)
9019
9019
  };
9020
- var Component$y = defineComponent({
9020
+ var Component$z = defineComponent({
9021
9021
  name: "Loading",
9022
9022
  props: loadingTypes,
9023
9023
  setup(props2, ctx) {
@@ -9073,7 +9073,7 @@ var Component$y = defineComponent({
9073
9073
  };
9074
9074
  }
9075
9075
  });
9076
- const BkLoading = withInstallProps(Component$y, { setDefaultIndicator, BkLoadingMode, BkLoadingSize }, true);
9076
+ const BkLoading = withInstallProps(Component$z, { setDefaultIndicator, BkLoadingMode, BkLoadingSize }, true);
9077
9077
  const btnSizes = ["", "small", "large"];
9078
9078
  const buttonProps = {
9079
9079
  theme: PropTypes.theme().def(""),
@@ -9093,7 +9093,7 @@ const buttonProps = {
9093
9093
  default: "button"
9094
9094
  }
9095
9095
  };
9096
- var Component$x = defineComponent({
9096
+ var Component$y = defineComponent({
9097
9097
  name: "Button",
9098
9098
  props: buttonProps,
9099
9099
  emits: ["click", "mouseover"],
@@ -9182,7 +9182,7 @@ var ButtonGroup = defineComponent({
9182
9182
  };
9183
9183
  }
9184
9184
  });
9185
- const BkButton = withInstallProps(Component$x, { ButtonGroup });
9185
+ const BkButton = withInstallProps(Component$y, { ButtonGroup });
9186
9186
  const inputType = {
9187
9187
  type: PropTypes.string.def("text"),
9188
9188
  clearable: PropTypes.bool,
@@ -9204,7 +9204,8 @@ const inputType = {
9204
9204
  precision: PropTypes.number.def(0).validate((val) => val >= 0 && val < 20),
9205
9205
  modelValue: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
9206
9206
  size: PropTypes.size(),
9207
- rows: PropTypes.number
9207
+ rows: PropTypes.number,
9208
+ selectReadonly: PropTypes.bool.def(false)
9208
9209
  };
9209
9210
  let EVENTS$2;
9210
9211
  (function(EVENTS2) {
@@ -9245,7 +9246,7 @@ const inputEmitEventsType = {
9245
9246
  [EVENTS$2.COMPOSITIONUPDATE]: CompositionEventFunction,
9246
9247
  [EVENTS$2.COMPOSITIONEND]: CompositionEventFunction
9247
9248
  };
9248
- var Component$w = defineComponent({
9249
+ var Component$x = defineComponent({
9249
9250
  name: "Input",
9250
9251
  inheritAttrs: false,
9251
9252
  props: inputType,
@@ -9267,7 +9268,7 @@ var Component$w = defineComponent({
9267
9268
  const inputCls = computed(() => classes({
9268
9269
  [`${inputClsPrefix.value}--${props2.size}`]: !!props2.size,
9269
9270
  "is-focused": isFocused.value,
9270
- "is-readonly": props2.readonly,
9271
+ "is-readonly": props2.readonly && !props2.selectReadonly,
9271
9272
  "is-disabled": props2.disabled,
9272
9273
  "is-simplicity": props2.behavior === "simplicity",
9273
9274
  [`${cls}`]: !!cls
@@ -9461,8 +9462,8 @@ var Component$w = defineComponent({
9461
9462
  };
9462
9463
  }
9463
9464
  });
9464
- const BkInput = withInstall(Component$w);
9465
- var Component$v = defineComponent({
9465
+ const BkInput = withInstall(Component$x);
9466
+ var Component$w = defineComponent({
9466
9467
  name: "Card",
9467
9468
  props: {
9468
9469
  title: PropTypes.string,
@@ -9555,7 +9556,7 @@ var Component$v = defineComponent({
9555
9556
  }, [(_l = (_k = (_j = this.$slots).footer) == null ? void 0 : _k.call(_j)) != null ? _l : "Footer"]) : ""]) : ""]);
9556
9557
  }
9557
9558
  });
9558
- const BkCard = withInstall(Component$v);
9559
+ const BkCard = withInstall(Component$w);
9559
9560
  const checkboxGroupKey = Symbol("CheckboxGroup");
9560
9561
  function useFocus$1() {
9561
9562
  const isFocus = ref(false);
@@ -9656,7 +9657,7 @@ const checkboxProps = {
9656
9657
  beforeChange: PropTypes.func,
9657
9658
  size: PropTypes.size().def("large")
9658
9659
  };
9659
- var Component$u = defineComponent({
9660
+ var Component$v = defineComponent({
9660
9661
  name: "Checkbox",
9661
9662
  props: checkboxProps,
9662
9663
  emits: ["update:modelValue", "change"],
@@ -9760,7 +9761,7 @@ var BkCheckboxGroup = defineComponent({
9760
9761
  }, [(_a = this.$slots) == null ? void 0 : _a.default()]);
9761
9762
  }
9762
9763
  });
9763
- const BkCheckbox = withInstallProps(Component$u, { Group: BkCheckboxGroup });
9764
+ const BkCheckbox = withInstallProps(Component$v, { Group: BkCheckboxGroup });
9764
9765
  const propsCollapse = {
9765
9766
  list: PropTypes.arrayOf(PropTypes.any).def([]),
9766
9767
  idFiled: PropTypes.string.def("$index"),
@@ -10087,7 +10088,7 @@ const propsMixin$1 = {
10087
10088
  dialogType: PropTypes.commonType(["show", "operation", "confirm", "process"], "dialogType").def("operation"),
10088
10089
  multiInstance: PropTypes.bool.def(true)
10089
10090
  };
10090
- var Component$t = defineComponent({
10091
+ var Component$u = defineComponent({
10091
10092
  name: "Modal",
10092
10093
  props: __spreadValues({}, propsMixin$1),
10093
10094
  emits: ["quick-close", "quickClose", "hidden", "shown", "close"],
@@ -10189,7 +10190,7 @@ var Component$t = defineComponent({
10189
10190
  })]);
10190
10191
  }
10191
10192
  });
10192
- const BkModal = withInstallProps(Component$t, { propsMixin: propsMixin$1 }, true);
10193
+ const BkModal = withInstallProps(Component$u, { propsMixin: propsMixin$1 }, true);
10193
10194
  const props = __spreadProps(__spreadValues({}, propsMixin$1), {
10194
10195
  width: PropTypes.oneOfType([String, Number]).def(""),
10195
10196
  height: PropTypes.oneOfType([String, Number]).def(""),
@@ -10426,7 +10427,7 @@ var Building = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz
10426
10427
  var empty = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIyLjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuWbvuWxgl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNDgwIDI0MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDgwIDI0MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOnVybCgjRmlsbC0xXzFfKTt9Cgkuc3Qxe2ZpbGw6dXJsKCPot6/lvoQtM18xXyk7fQoJLnN0MntmaWxsOnVybCgj5b2i54q257uT5ZCIXzJfKTt9Cgkuc3Qze2ZpbGw6I0M0QzZDQzt9Cjwvc3R5bGU+CjxsaW5lYXJHcmFkaWVudCBpZD0iRmlsbC0xXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjI0MS40NDI3IiB5MT0iODQuOTYwMSIgeDI9IjI0Ny41MTg0IiB5Mj0iNTAuNTAyOCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgxIDAgMCAtMSAwIDI0MCkiPgoJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0ZCRkNGRCIvPgoJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0YwRjJGNSIvPgo8L2xpbmVhckdyYWRpZW50Pgo8cGF0aCBpZD0iRmlsbC0xIiBjbGFzcz0ic3QwIiBkPSJNMTg4LDE2NC43YzE2LjMtMy43LDM5LjctNS4zLDU1LjYtNC41czI5LjEsMy42LDMwLDIuOWMzLjItMi4xLDEwLTMsOS42LTIuMgoJYy0wLjMsMC44LTQuNywzLjQtMy4zLDMuOGMxLjQsMC40LDE1LjYsMiwyMS41LDMuM2M1LjksMS4yLDkuNywyLjQsMTEsMi40czMuMy0xLjcsMTEuOC0wLjljMC4yLDAuMy0xLjksMC40LTMuOCwxLjQKCXMtMy4zLDAuOS0zLjMsMS4xczEuMS0wLjMsMy4zLDEuMWMyLjIsMS40LDYuMSwxLjksNi4xLDIuMnMtNC45LDItMTMuMi0wLjZjLTIuMS0wLjctNyw1LjEtMjkuNSw2LjdzLTYwLjUsMi45LTYwLjUsMi45CglzMi4zLDIuOSw1LjYsMy44YzAuMiwwLjMtMS4zLDEuNC03LjgsMC4ycy05LjktMy45LTkuOS0zLjlzLTEyLjgtMC44LTE3LjYtMS42cy0xMC40LTIuOS0xNC4yLTMuM2MtMy44LTAuNC0yMS4xLTIuNC0xNC41LTYuOQoJQzE2NC43LDE3Mi41LDE3MS43LDE2OC40LDE4OCwxNjQuN3oiLz4KPGxpbmVhckdyYWRpZW50IGlkPSLot6/lvoQtM18xXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI0MTIuNTYwNiIgeTE9Ii0zLjExMzMiIHgyPSI0MTIuNTYwNiIgeTI9Ii0yLjE3NzMiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMTA1LjYgMCAwIDU2LjMyIC00MzMyNi40MDIzIDI3OC40MDAxKSI+Cgk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRTZFOEVCO3N0b3Atb3BhY2l0eTowLjk5MTciLz4KCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNENEQ2RDkiLz4KPC9saW5lYXJHcmFkaWVudD4KPHBvbHlnb24gaWQ9Iui3r+W+hC0zIiBjbGFzcz0ic3QxIiBwb2ludHM9IjE4Ny4yLDEzNy42IDIxMC43LDEwMi40IDI2OS4zLDEwMi40IDI5Mi44LDEzNy42IDI5Mi44LDE1OC43IDE4Ny4yLDE1OC43ICIvPgo8bGluZWFyR3JhZGllbnQgaWQ9IuW9oueKtue7k+WQiF8yXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI0MTIuNTYwNiIgeTE9Ii01IiB4Mj0iNDEyLjU2MDYiIHkyPSItNC4wMDc5IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEwNS42IDAgMCAzNS4yIC00MzMyNi40MDIzIDMxMy42MDA0KSI+Cgk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRURFRkYyIi8+Cgk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRThFQUVEIi8+CjwvbGluZWFyR3JhZGllbnQ+CjxwYXRoIGlkPSLlvaLnirbnu5PlkIgiIGNsYXNzPSJzdDIiIGQ9Ik0yMTIuNiwxNzIuOGgtMjMuNGMtMS4xLDAtMi0wLjktMi0ydi0zMy4yaDIzLjRjMS4xLDAsMiwwLjksMiwydjcuNGMwLDEuMSwwLjgsMS45LDEuOSwyCgloMC4xaDUwLjhjMS4xLDAsMS45LTAuOCwyLTEuOVYxNDd2LTcuNGMwLTEuMSwwLjktMiwyLTJoMjMuNHYzMy4yYzAsMS4xLTAuOSwyLTIsMmgtMjMuNEgyMTIuNnoiLz4KPHBhdGggaWQ9IuW9oueKtue7k+WQiF8xXyIgY2xhc3M9InN0MyIgZD0iTTE4Mi40LDE2OS42djhoOHYxLjZoLTkuNnYtOS42SDE4Mi40eiIvPgo8cGF0aCBpZD0i5b2i54q257uT5ZCI5aSH5Lu9IiBjbGFzcz0ic3QzIiBkPSJNMjg5LjYsMTc3LjZoOHYtOGgxLjZ2OS42aC05LjZWMTc3LjZ6Ii8+CjxnIGlkPSLnvJbnu4QtNCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOTEuNjg4ODkwLCAxMS44NzQ5MzYpIHJvdGF0ZSgyMS4wMDAwMDApIHRyYW5zbGF0ZSgtOTEuNjg4ODkwLCAtMTEuODc0OTM2KSB0cmFuc2xhdGUoOTAuODg4ODkwLCAwLjY3NDkzNikiPgoKCQk8cmVjdCBpZD0i55+p5b2iXzFfIiB4PSIxODMuMSIgeT0iMjQuNSIgdHJhbnNmb3JtPSJtYXRyaXgoNS40NDk4OTllLTA2IDEgLTEgNS40NDk4OTllLTA2IDIwOS45Mzc5IC0xNTkuMzkzOCkiIGNsYXNzPSJzdDMiIHdpZHRoPSIzLjIiIGhlaWdodD0iMS42Ii8+CgoJCTxyZWN0IGlkPSLnn6nlvaLlpIfku70tNiIgeD0iMTgzLjEiIHk9IjMwLjkiIHRyYW5zZm9ybT0ibWF0cml4KDUuNDQ5ODk4ZS0wNiAxIC0xIDUuNDQ5ODk4ZS0wNiAyMTYuMzM3OCAtMTUyLjk5MzkpIiBjbGFzcz0ic3QzIiB3aWR0aD0iMy4yIiBoZWlnaHQ9IjEuNiIvPgoKCQk8cmVjdCBpZD0i55+p5b2i5aSH5Lu9LTciIHg9IjE4My4xIiB5PSIzNy4zIiB0cmFuc2Zvcm09Im1hdHJpeCg1LjQ0OTg5OGUtMDYgMSAtMSA1LjQ0OTg5OGUtMDYgMjIyLjczNzkgLTE0Ni41OTM5KSIgY2xhc3M9InN0MyIgd2lkdGg9IjMuMiIgaGVpZ2h0PSIxLjYiLz4KCgkJPHJlY3QgaWQ9IuefqeW9ouWkh+S7vS04IiB4PSIxODMuMSIgeT0iNDMuNyIgdHJhbnNmb3JtPSJtYXRyaXgoNS40NDk4OTllLTA2IDEgLTEgNS40NDk4OTllLTA2IDIyOS4xMzc5IC0xNDAuMTkzOSkiIGNsYXNzPSJzdDMiIHdpZHRoPSIzLjIiIGhlaWdodD0iMS42Ii8+CjwvZz4KPGcgaWQ9Iue8lue7hC0zIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgzNi4wMDAwMDAsIDI3LjIwMDAwMCkgcm90YXRlKC0zMi4wMDAwMDApIHRyYW5zbGF0ZSgtMzYuMDAwMDAwLCAtMjcuMjAwMDAwKSB0cmFuc2xhdGUoMzUuMjAwMDAwLCAxMi44MDAwMDApIj4KCgkJPHJlY3QgaWQ9IuefqeW9ol8yXyIgeD0iOTEuNyIgeT0iMTYxLjEiIHRyYW5zZm9ybT0ibWF0cml4KC0xIDUuNDI2MzM3ZS0wNiAtNS40MjYzMzdlLTA2IC0xIDE4NS4wNzUzIDMyNS40NDM4KSIgY2xhc3M9InN0MyIgd2lkdGg9IjEuNiIgaGVpZ2h0PSIzLjIiLz4KCgkJPHJlY3QgaWQ9IuefqeW9ouWkh+S7vS0yIiB4PSI5MS43IiB5PSIxNjcuNSIgdHJhbnNmb3JtPSJtYXRyaXgoLTEgNS40MjYzMzZlLTA2IC01LjQyNjMzNmUtMDYgLTEgMTg1LjA3NTUgMzM4LjI0MzgpIiBjbGFzcz0ic3QzIiB3aWR0aD0iMS42IiBoZWlnaHQ9IjMuMiIvPgoKCQk8cmVjdCBpZD0i55+p5b2i5aSH5Lu9LTMiIHg9IjkxLjciIHk9IjE3My45IiB0cmFuc2Zvcm09Im1hdHJpeCgtMSA1LjQyNjMzNmUtMDYgLTUuNDI2MzM2ZS0wNiAtMSAxODUuMDc1NSAzNTEuMDQzOSkiIGNsYXNzPSJzdDMiIHdpZHRoPSIxLjYiIGhlaWdodD0iMy4yIi8+CgoJCTxyZWN0IGlkPSLnn6nlvaLlpIfku70tNCIgeD0iOTEuNyIgeT0iMTgwLjMiIHRyYW5zZm9ybT0ibWF0cml4KC0xIDUuNDI2MzM2ZS0wNiAtNS40MjYzMzZlLTA2IC0xIDE4NS4wNzU1IDM2My44NDM4KSIgY2xhc3M9InN0MyIgd2lkdGg9IjEuNiIgaGVpZ2h0PSIzLjIiLz4KCgkJPHJlY3QgaWQ9IuefqeW9ouWkh+S7vS01IiB4PSI5MS43IiB5PSIxODYuNyIgdHJhbnNmb3JtPSJtYXRyaXgoLTEgNS40MjYzMzdlLTA2IC01LjQyNjMzN2UtMDYgLTEgMTg1LjA3NTUgMzc2LjY0MzgpIiBjbGFzcz0ic3QzIiB3aWR0aD0iMS42IiBoZWlnaHQ9IjMuMiIvPgo8L2c+CjxjaXJjbGUgaWQ9IuakreWchuW9oiIgY2xhc3M9InN0MyIgY3g9IjI2OC44IiBjeT0iOTQuNCIgcj0iMS42Ii8+CjxjaXJjbGUgaWQ9IuakreWchuW9ouWkh+S7vSIgY2xhc3M9InN0MyIgY3g9IjIyNy4yIiBjeT0iMTIwIiByPSIxLjYiLz4KPC9zdmc+Cg==";
10427
10428
  var login = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIyLjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuWbvuWxgl8yXzFfIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgNDgwIDI0MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDgwIDI0MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOnVybCgj5b2i54q257uT5ZCIXzNfKTt9Cgkuc3Qxe2ZpbGw6dXJsKCPlvaLnirbnu5PlkIhfN18pO30KCS5zdDJ7ZmlsbDojQzRDNkNDO30KCS5zdDN7ZmlsbDp1cmwoI+W9oueKtue7k+WQiF85Xyk7fQoJLnN0NHtmaWxsOnVybCgj5b2i54q257uT5ZCIXzEwXyk7ZmlsbC1vcGFjaXR5OjAuNjt9Cgkuc3Q1e2ZpbGw6dXJsKCPlvaLnirbnu5PlkIhfMTFfKTt9Cgkuc3Q2e2ZpbGw6dXJsKCPot6/lvoQtM18xXyk7fQoJLnN0N3tmaWxsOnVybCgj5b2i54q257uT5ZCIXzEyXyk7fQoJLnN0OHtmaWxsOnVybCgj6Lev5b6ELTNfNF8pO30KCS5zdDl7ZmlsbDp1cmwoI+W9oueKtue7k+WQiF8xM18pO30KCS5zdDEwe2ZpbGw6dXJsKCPlvaLnirbnu5PlkIhfMTVfKTt9Cgkuc3QxMXtmaWxsOiM5NzlCQTU7fQoJLnN0MTJ7ZmlsbDp1cmwoI1NWR0lEXzFfKTt9Cgkuc3QxM3tmaWxsOnVybCgjU1ZHSURfMl8pO30KCS5zdDE0e2ZpbGw6dXJsKCPlvaLnirbnu5PlkIhfMTZfKTt9Cgkuc3QxNXtmaWxsOnVybCgj5b2i54q257uT5ZCI5aSH5Lu9LTJfMl8pO30KCS5zdDE2e2ZpbGw6IzM0MzQzNDtmaWxsLW9wYWNpdHk6MC4xO30KPC9zdHlsZT4KPGcgaWQ9Iumhtemdoi0xIj4KCTxnIGlkPSJFeGNlcHRpb25feDJGX+W8guW4uOaPkOekul94MkZf54Gw55m95a+55q+UIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtOTI0LjAwMDAwMCwgLTcwNy4wMDAwMDApIj4KCQk8ZyBpZD0i6ZyA6KaB55m75b2VIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg5MjQuMDAwMDAwLCA3MDcuMDAwMDAwKSI+CgoJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLlvaLnirbnu5PlkIhfM18iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMTAxOS45MDA2IiB5MT0iLTguMzM1NCIgeDI9IjEwMTkuOTAwNiIgeTI9Ii03LjMzNjciIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMjAwLjAyNTcgMCAwIDU4LjMwNDcgLTIwMzc1OS41NDY5IDY2My45OTQ0KSI+CgkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRjVGNkY3Ii8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRjdGOUZDIi8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMzBfIiBjbGFzcz0ic3QwIiBkPSJNMjQ5LjYsMTc4djguN2MwLDIuNSwyLjEsNC42LDQuNiw0LjZzNC41LDEuOSw0LjYsNC40djAuMnYwLjkKCQkJCWMxLjEtMC41LDIuMy0wLjgsMy41LTAuOGM0LjMsMCw3LjgsMy4yLDguNCw3LjNjMS0wLjgsMi4yLTEuMywzLjYtMS4zYzEuMiwwLDIuMywwLjQsMy4yLDFjMi4zLTQuMiw2LjctNywxMS44LTcKCQkJCWM3LjIsMCwxMyw1LjYsMTMuNSwxMi43YzQuOSwwLjcsMTAuMSwxLjUsMTMuMywyLjFjNy4yLDEuNSwxMS44LDMsMTMuNCwzczQtMi4xLDE0LjUtMS4xYzAuMiwwLjQtMi4zLDAuNS00LjcsMS43cy00LDEuMS00LDEuNAoJCQkJczEuMy0wLjQsNCwxLjNzNy41LDIuMyw3LjUsMi44cy02LjEsMi40LTE2LjItMC44Yy0yLjYtMC44LTguNiw2LjItMzYuMSw4LjJjLTI3LjYsMi03NC4yLDMuNS03NC4yLDMuNXMyLjgsMy42LDYuOSw0LjYKCQkJCWMwLjIsMC40LTEuNiwxLjctOS42LDAuMmMtNy45LTEuNS0xMi4yLTQuOC0xMi4yLTQuOHMtMTUuNy0xLTIxLjYtMmMtNS45LTEtMTIuNy0zLjUtMTcuNC00cy0yNS45LTMtMTcuOC04LjUKCQkJCWMwLDAsNy4yLTQuMiwyMy42LTguM2MyLTMuNSw1LjctNS45LDEwLjEtNS45YzIuNywwLDUuMiwwLjksNy4xLDIuNWMxLjQtMC4yLDIuOS0wLjQsNC40LTAuNmMxLjItMS4xLDIuOC0xLjgsNC41LTEuOAoJCQkJYzEuMiwwLDIuMywwLjMsMy4yLDAuOWwwLjUtMC4xYzEtMy45LDQuNS02LjgsOC43LTYuOGMyLjgsMCw1LjQsMS4zLDcsMy4zdi0yLjhjMC0yLjksMi40LTUuMyw1LjMtNS4zYzIuOCwwLDUuMi0yLjIsNS4zLTUuMQoJCQkJdi0wLjJ2LThMMjQ5LjYsMTc4TDI0OS42LDE3OHoiLz4KCgkJCQk8bGluZWFyR3JhZGllbnQgaWQ9IuW9oueKtue7k+WQiF83XyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIxMDAzLjIzODQiIHkxPSItNDMuNjgxOCIgeDI9IjEwMDMuOTQ2MSIgeTI9Ii00My42ODE4IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDQ0IDAgMCAxMSAtNDM5MTkuMTk5MiA2NTUuNSkiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0UyRTNFNiIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMC40NTQzIiBzdHlsZT0ic3RvcC1jb2xvcjojRUNFRUYwIi8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRTJFNEU2Ii8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMjlfIiBjbGFzcz0ic3QxIiBkPSJNMjE2LjgsMTY5LjVoNDR2NmMwLDIuOC05LjgsNS0yMiw1cy0yMi0yLjItMjItNWwwLDBMMjE2LjgsMTY5LjVMMjE2LjgsMTY5LjV6Ii8+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIjlpIfku71fMV8iIGNsYXNzPSJzdDIiIGQ9Ik0yMTYuOCwxNjVoNDR2NmMwLDIuOC05LjgsNS0yMiw1cy0yMi0yLjItMjItNWwwLDBMMjE2LjgsMTY1TDIxNi44LDE2NXoiLz4KCgkJCQk8bGluZWFyR3JhZGllbnQgaWQ9IuW9oueKtue7k+WQiF85XyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI5NDcuNDg4OCIgeTE9Ii04LjM4NDgiIHgyPSI5NDguMTg2MyIgeTI9Ii04LjM4NDgiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMTIgMCAwIDU0LjcgLTExMTc3LjIwMDIgNTgxLjI5OTEpIj4KCQkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNGMUYzRjUiLz4KCQkJCTxzdG9wICBvZmZzZXQ9IjAuNDU3NiIgc3R5bGU9InN0b3AtY29sb3I6I0Y0RjVGNyIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0VDRUVGMCIvPgoJCQk8L2xpbmVhckdyYWRpZW50PgoJCQk8cGF0aCBpZD0i5b2i54q257uT5ZCIXzI4XyIgY2xhc3M9InN0MyIgZD0iTTE5Ni44LDk1LjNjMS44LDAsNiw4LjMsNiwxMS43bDAsMHY0M2gtMTJ2LTQzdi0wLjJDMTkwLjksMTAzLjQsMTk1LDk1LjMsMTk2LjgsOTUuMwoJCQkJeiIvPgoKCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0i5b2i54q257uT5ZCIXzEwXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI5NDcuODQ2NCIgeTE9Ii0xOS44MjgyIiB4Mj0iOTQ3LjgyNyIgeTI9Ii0xOS42NDE4IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEyIDAgMCAyNC4yIC0xMTA5My4yMDAyIDYwMi45OTkzKSI+CgkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojQ0REMEQyO3N0b3Atb3BhY2l0eTowIi8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojQ0REMEQyIi8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwb2x5Z29uIGlkPSLlvaLnirbnu5PlkIhfMjZfIiBjbGFzcz0ic3Q0IiBwb2ludHM9IjI3NC44LDExNyAyNzQuOCwxMzIuNiAyNzkuNywxNDEuMiAyODYuOCwxMzUuNCAyODYuOCwxMjYgCQkJIi8+CgoJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLlvaLnirbnu5PlkIhfMTFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9Ijk0OC4xNzE2IiB5MT0iLTguMzg0OCIgeDI9Ijk0Ny40NzQxIiB5Mj0iLTguMzg0OCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgxMiAwIDAgNTQuNyAtMTEwOTMuMjAwMiA1ODEuMjk5MSkiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0YxRjNGNSIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMC40NTc2IiBzdHlsZT0ic3RvcC1jb2xvcjojRjRGNUY3Ii8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRUNFRUYwIi8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMjVfIiBjbGFzcz0ic3Q1IiBkPSJNMjgwLjgsOTUuM2MtMS44LDAtNiw4LjMtNiwxMS43bDAsMHY0M2gxMnYtNDN2LTAuMgoJCQkJQzI4Ni42LDEwMy40LDI4Mi41LDk1LjMsMjgwLjgsOTUuM3oiLz4KCQkJPGcgaWQ9Iue8lue7hF8zXyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoODAuNzYwNDk5LCA3Ny4wMDAwMDApIj4KCgkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLot6/lvoQtM18xXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI1MTQuMzE0MSIgeTE9Ii02Ljg5MDUiIHgyPSI1MTQuMzk0MyIgeTI9Ii02LjUyMDQiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMzYgMCAwIDY2IC0xODM5NS43MzI0IDUwNikiPgoJCQkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNFOEU5RUIiLz4KCQkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRDdEOERCIi8+CgkJCQk8L2xpbmVhckdyYWRpZW50PgoJCQkJPHBhdGggaWQ9Iui3r+W+hC0zXzNfIiBjbGFzcz0ic3Q2IiBkPSJNMTM1LDIwYy0xLjQsNy00LjUsMTMuMy05LjQsMTkuMWMtNy4zLDguNy0xNS4yLDEzLjYtMTguNCwyMy44CgkJCQkJYy0yLjEsNi44LTMuMiwxMi45LTMuMiwxOC4zbDMyLjEsNC44bDMuOS00LjhMMTM1LDIweiIvPgoKCQkJCQk8bGluZWFyR3JhZGllbnQgaWQ9IuW9oueKtue7k+WQiF8xMl8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iNDY5LjEyNSIgeTE9Ii02Ljk4IiB4Mj0iNDY5LjEyNjMiIHkyPSItNi45NjgxIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDEzIDAgMCA2NC41IC01OTY1LjY4MTYgNTA3LjUpIj4KCQkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRUJFREVGO3N0b3Atb3BhY2l0eTowIi8+CgkJCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0M4Q0FDQyIvPgoJCQkJPC9saW5lYXJHcmFkaWVudD4KCQkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMjRfIiBjbGFzcz0ic3Q3IiBkPSJNMTM1LjIsMjEuNWw0LjgsNTkuN2wtMy45LDQuOGwtOS4xLTEuNGwzLjMtNTIuMmMyLTMuNSwzLjQtNy4xLDQuNC0xMC45CgkJCQkJQzEzNC43LDIxLjUsMTM1LjIsMjEuNSwxMzUuMiwyMS41eiIvPgoJCQk8L2c+CgoJCQkJPGcgaWQ9Iue8lue7hF8yXyIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTcxLjAwMDAwMCwgMTEwLjAwMDAwMCkgc2NhbGUoLTEsIDEpIHRyYW5zbGF0ZSgtMTcxLjAwMDAwMCwgLTExMC4wMDAwMDApIHRyYW5zbGF0ZSgxNTMuMDAwMDAwLCA3Ny4wMDAwMDApIj4KCgkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLot6/lvoQtM180XyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIyNi4xMTk1IiB5MT0iLTYuNzUwNiIgeDI9IjI2LjE5OTgiIHkyPSItNi4zODA1IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDM2IDAgMCA2NiAtMTAyNCA1MDYpIj4KCQkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRThFOUVCIi8+CgkJCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0Q3RDhEQiIvPgoJCQkJPC9saW5lYXJHcmFkaWVudD4KCQkJCTxwYXRoIGlkPSLot6/lvoQtM18yXyIgY2xhc3M9InN0OCIgZD0iTS03MywyMGMtMS40LDctNC41LDEzLjMtOS40LDE5LjFjLTcuMyw4LjctMTUuMiwxMy42LTE4LjQsMjMuOAoJCQkJCWMtMi4xLDYuOC0zLjIsMTIuOS0zLjIsMTguM2wzMi4xLDQuOGwzLjktNC44TC03MywyMHoiLz4KCQkJPC9nPgoKCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0i5b2i54q257uT5ZCIXzEzXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI2NTkuNjQ1MyIgeTE9Ii02Ljk4IiB4Mj0iNjU5LjY0NjUiIHkyPSItNi45NjgiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoLTEzIDAgMCA2NC41IDg4MzkuMjE0OCA1ODQuNSkiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0VCRURFRjtzdG9wLW9wYWNpdHk6MCIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0M4Q0FDQyIvPgoJCQk8L2xpbmVhckdyYWRpZW50PgoJCQk8cGF0aCBpZD0i5b2i54q257uT5ZCIXzJfIiBjbGFzcz0ic3Q5IiBkPSJNMjYxLjYsOTguNWwtNC44LDU5LjdsMy45LDQuOGw5LjEtMS40bC0zLjMtNTIuMmMtMi0zLjUtMy40LTcuMS00LjQtMTAuOQoJCQkJQzI2Mi4xLDk4LjUsMjYxLjYsOTguNSwyNjEuNiw5OC41eiIvPgoKCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0i5b2i54q257uT5ZCIXzE1XyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSIxMDA0Ljk4MTEiIHkxPSItMi42NTU4IiB4Mj0iMTAwNS42ODg3IiB5Mj0iLTIuNjU1OCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCg0OCAwIDAgMTU0IC00ODAxNy4xOTkyIDUwNikiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0VBRUJFRCIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMC40NTQzIiBzdHlsZT0ic3RvcC1jb2xvcjojRjRGNUY3Ii8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRUVGMEYyIi8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMThfIiBjbGFzcz0ic3QxMCIgZD0iTTIzOC44LDIwYzcsMCwyNCwyNy43LDI0LDQxbDAsMHYxMDZjMCwwLjEsMCwwLjIsMCwwLjNzMCwwLjIsMCwwLjIKCQkJCWMwLDMuNi0xMC43LDYuNS0yNCw2LjVzLTI0LTIuOS0yNC02LjVjMC0wLjEsMC0wLjIsMC0wLjJjMC0wLjEsMC0wLjIsMC0wLjNWNjF2LTAuNEMyMTUuMSw0Ny4yLDIzMS44LDIwLDIzOC44LDIweiIvPgoJCQk8Zz4KCQkJCTxjaXJjbGUgaWQ9IuakreWchuW9ol83XyIgY2xhc3M9InN0MTEiIGN4PSIyMzguOCIgY3k9IjcxIiByPSI5LjUiLz4KCgkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSJTVkdJRF8xXyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiIHgxPSI5NzYuMDc5IiB5MT0iLTI1LjMzMzQiIHgyPSI5NzYuMDc5IiB5Mj0iLTI0LjgyNDQiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoMTkgMCAwIDE5IC0xODMwNi42OTkyIDU0Ny41KSI+CgkJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0UxRTJFNiIvPgoJCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNGMEYyRjUiLz4KCQkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCQk8cGF0aCBjbGFzcz0ic3QxMiIgZD0iTTIzOC44LDgxYy01LjUsMC0xMC00LjUtMTAtMTBzNC41LTEwLDEwLTEwczEwLDQuNSwxMCwxMFMyNDQuMyw4MSwyMzguOCw4MXogTTIzOC44LDYyYy01LDAtOSw0LTksOQoJCQkJCXM0LDksOSw5czktNCw5LTlTMjQzLjgsNjIsMjM4LjgsNjJ6Ii8+CgkJCTwvZz4KCQkJPGc+CgkJCQk8Y2lyY2xlIGlkPSLmpK3lnIblvaLlpIfku70tMTFfMV8iIGNsYXNzPSJzdDExIiBjeD0iMjM4LjgiIGN5PSI4OSIgcj0iMy41Ii8+CgoJCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0iU1ZHSURfMl8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iODkzLjA3MTUiIHkxPSItNjkuMjA0OCIgeDI9Ijg5My4wNzE1IiB5Mj0iLTY4LjY1MjIiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoNyAwIDAgNyAtNjAxMi43MDAyIDU3MS41KSI+CgkJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0UxRTJFNiIvPgoJCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNGMEYyRjUiLz4KCQkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCQk8cGF0aCBjbGFzcz0ic3QxMyIgZD0iTTIzOC44LDkzYy0yLjIsMC00LTEuOC00LTRzMS44LTQsNC00czQsMS44LDQsNFMyNDEsOTMsMjM4LjgsOTN6IE0yMzguOCw4NmMtMS43LDAtMywxLjMtMywzczEuMywzLDMsMwoJCQkJCXMzLTEuMywzLTNTMjQwLjUsODYsMjM4LjgsODZ6Ii8+CgkJCTwvZz4KCgkJCQk8bGluZWFyR3JhZGllbnQgaWQ9IuW9oueKtue7k+WQiF8xNl8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iMTAwNC45ODExIiB5MT0iLTcwLjk3MDYiIHgyPSIxMDA1LjY4NTQiIHkyPSItNzAuOTcwNiIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCg0OCAwIDAgNi44IC00ODAxNy4xOTkyIDYyNC4wMDA0KSI+CgkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRTJFM0U2Ii8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIwLjQ3NjYiIHN0eWxlPSJzdG9wLWNvbG9yOiNGQkZERkYiLz4KCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNFMkU0RTYiLz4KCQkJPC9saW5lYXJHcmFkaWVudD4KCQkJPHBhdGggaWQ9IuW9oueKtue7k+WQiF8xNF8iIGNsYXNzPSJzdDE0IiBkPSJNMjYyLjgsMTM4djIuNWMtMy45LDIuNS0xMy4yLDQuMy0yNCw0LjNzLTIwLjEtMS44LTI0LTQuM1YxMzhsMCwwCgkJCQljMC42LDIuOCwxMS4xLDUuNSwyNCw1LjVTMjYyLjIsMTQwLjgsMjYyLjgsMTM4TDI2Mi44LDEzOHoiLz4KCgkJCQk8bGluZWFyR3JhZGllbnQgaWQ9IuW9oueKtue7k+WQiOWkh+S7vS0yXzJfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjEwMDQuOTgxMSIgeTE9Ii03MC45NzA2IiB4Mj0iMTAwNS42ODU0IiB5Mj0iLTcwLjk3MDYiIGdyYWRpZW50VHJhbnNmb3JtPSJtYXRyaXgoNDggMCAwIDYuOCAtNDgwMTcuMTk5MiA2MjkuMDAwNCkiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0UyRTNFNiIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMC40NzY2IiBzdHlsZT0ic3RvcC1jb2xvcjojRkJGREZGIi8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRTJFNEU2Ii8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIjlpIfku70tMl8xXyIgY2xhc3M9InN0MTUiIGQ9Ik0yNjIuOCwxNDN2Mi41Yy0zLjksMi41LTEzLjIsNC4zLTI0LDQuM3MtMjAuMS0xLjgtMjQtNC4zVjE0M2wwLDAKCQkJCWMwLjYsMi44LDExLjEsNS41LDI0LDUuNVMyNjIuMiwxNDUuOCwyNjIuOCwxNDNMMjYyLjgsMTQzeiIvPgoJCQk8cGF0aCBpZD0i5b2i54q257uT5ZCIXzhfIiBjbGFzcz0ic3QxNiIgZD0iTTI2Mi44LDczYzQzLjItOC42LDc3LjEtNi4zLDgwLjksNi43YzQuNiwxNS45LTM3LjQsNDEuOS05My42LDU4LjEKCQkJCXMtMTA1LjYsMTYuMy0xMTAuMiwwLjRjLTQtMTQuMSwyOC40LTM2LjEsNzQuOS01Mi4xdjEuMWMtNDUuOCwxNS45LTc3LjcsMzcuNS03My45LDUwLjhjNC4zLDE1LjEsNTMuMiwxNC45LDEwOC45LTEuMQoJCQkJczk3LjMtNDEuNyw5Mi45LTU2LjhjLTMuNS0xMi40LTM3LjItMTQuNS03OS45LTZWNzNMMjYyLjgsNzN6Ii8+CgkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMV8iIGNsYXNzPSJzdDE2IiBkPSJNMTA1LjIsNzZjMy44LTE0LDUwLjctMTQsMTA5LjUtMS4xdjFjLTU4LjMtMTIuOC0xMDUtMTIuOS0xMDguNiwwLjMKCQkJCWMtNCwxNS4xLDQ5LjEsNDMuMiwxMTguNSw2MS44czEyOS41LDIwLjksMTMzLjYsNS44YzMuNi0xMy40LTM3LjctMzctOTUuNi01NS4xdi0xLjFjNTguNiwxOC4zLDEwMC4zLDQyLjIsOTYuNSw1Ni40CgkJCQljLTQuMywxNi02NC42LDEzLjctMTM0LjgtNS4xUzEwMSw5MiwxMDUuMiw3NnoiLz4KCQkJPGNpcmNsZSBpZD0i5qSt5ZyG5b2iXzZfIiBjbGFzcz0ic3QyIiBjeD0iMzE3LjgiIGN5PSIxMDkiIHI9IjIiLz4KCQkJPGNpcmNsZSBpZD0i5qSt5ZyG5b2iXzVfIiBjbGFzcz0ic3QyIiBjeD0iMTE3LjMiIGN5PSIxMjEuNSIgcj0iMS41Ii8+CgkJCTxjaXJjbGUgaWQ9IuakreWchuW9ol80XyIgY2xhc3M9InN0MiIgY3g9IjI4MS44IiBjeT0iNTgiIHI9IjEiLz4KCQkJPGNpcmNsZSBpZD0i5qSt5ZyG5b2iXzNfIiBjbGFzcz0ic3QyIiBjeD0iMTkxLjgiIGN5PSIxNjQiIHI9IjEiLz4KCQkJPGNpcmNsZSBpZD0i5qSt5ZyG5b2iXzFfIiBjbGFzcz0ic3QyIiBjeD0iMzUxLjgiIGN5PSIxNTAiIHI9IjIiLz4KCQk8L2c+Cgk8L2c+CjwvZz4KPC9zdmc+Cg==";
10428
10429
  var searchEmpty = "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIyLjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IuWbvuWxgl8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIKCSB2aWV3Qm94PSIwIDAgNDgwIDI0MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNDgwIDI0MDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOnVybCgjRmlsbC0xXzFfKTt9Cgkuc3Qxe2ZpbGw6I0M0QzZDQzt9Cgkuc3Qye2ZpbGw6dXJsKCPnn6nlvaItMl8xXyk7fQoJLnN0M3tmaWxsOnVybCgj55+p5b2iXzZfKTt9Cgkuc3Q0e2ZpbGw6I0RDREVFMDt9Cgkuc3Q1e2ZpbGw6I0QxRDNENjt9Cgkuc3Q2e2ZpbGw6dXJsKCPnn6nlvaItM18xXyk7fQoJLnN0N3tmaWxsOiNFNUU3RUM7fQoJLnN0OHtmaWxsOiNEQ0RERTA7fQoJLnN0OXtmaWxsOnVybCgj6Lev5b6ELTEzXzFfKTt9Cgkuc3QxMHtmaWxsOnVybCgj5qSt5ZyG5b2iXzNfKTtzdHJva2U6dXJsKCPmpK3lnIblvaJfNF8pO30KCS5zdDExe2ZpbGw6dXJsKCPmpK3lnIblvaJfNV8pO3N0cm9rZTp1cmwoI+akreWchuW9ol82Xyk7fQoJLnN0MTJ7ZmlsbDojRkZGRkZGO30KPC9zdHlsZT4KPGcgaWQ9Iumhtemdoi0xIj4KCTxnIGlkPSJFeGNlcHRpb25feDJGX+W8guW4uOaPkOekuiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTg2OS4wMDAwMDAsIC0yOTE4LjAwMDAwMCkiPgoJCTxnIGlkPSLmkJzntKLkuLrnqboiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDg2OS4wMDAwMDAsIDI5MTguMDAwMDAwKSI+CgkJCTxsaW5lYXJHcmFkaWVudCBpZD0iRmlsbC0xXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjI0My4wNDY0IiB5MT0iMTY3Ljk3OTMiIHgyPSIyNDUuODA3MSIgeTI9IjE5NC4yNDU2Ij4KCQkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNGQkZDRkQiLz4KCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNGMkY0RjciLz4KCQkJPC9saW5lYXJHcmFkaWVudD4KCQkJPHBhdGggaWQ9IkZpbGwtMSIgY2xhc3M9InN0MCIgZD0iTTE5My4xLDE3NC4yYzE0LjgtMy4zLDM2LTQuOCw1MC41LTQuMWMxNC40LDAuNywyNi40LDMuMywyNy4zLDIuN2MyLjktMS45LDktMi44LDguNy0yCgkJCQljLTAuMywwLjctNC4zLDMuMS0zLDMuNGMxLjMsMC40LDE0LjEsMS45LDE5LjUsM2M1LjMsMS4xLDguOCwyLjIsOS45LDIuMmMxLjIsMCwzLTEuNiwxMC43LTAuOGMwLjEsMC4zLTEuNywwLjQtMy40LDEuMwoJCQkJYy0xLjcsMC45LTMsMC44LTMsMXMxLTAuMywzLDFzNS41LDEuNyw1LjUsMnMtNC41LDEuOC0xMi0wLjZjLTEuOS0wLjYtNi4zLDQuNi0yNi44LDYuMXMtNTUsMi42LTU1LDIuNnMyLjEsMi43LDUuMSwzLjQKCQkJCWMwLjIsMC4zLTEuMiwxLjMtNy4xLDAuMmMtNS45LTEuMS05LTMuNi05LTMuNnMtMTEuNi0wLjctMTYtMS41Yy00LjQtMC43LTkuNC0yLjYtMTIuOS0zcy0xOS4yLTIuMi0xMy4yLTYuMwoJCQkJQzE3MiwxODEuMiwxNzguMywxNzcuNSwxOTMuMSwxNzQuMnoiLz4KCQkJPHBhdGggaWQ9IuW9oueKtue7k+WQiCIgY2xhc3M9InN0MSIgZD0iTTE5My4xLDE3Ny40djkuNGg5LjR2MS45aC0xMS4ydi0xMS4yTDE5My4xLDE3Ny40TDE5My4xLDE3Ny40eiIvPgoJCQk8cGF0aCBpZD0i5b2i54q257uT5ZCI5aSH5Lu9IiBjbGFzcz0ic3QxIiBkPSJNMjAwLjYsNjQuOWgtOS40djkuNGgtMS45di05LjRsMCwwVjYzaDExLjJMMjAwLjYsNjQuOUwyMDAuNiw2NC45eiIvPgoJCQk8cGF0aCBpZD0i5b2i54q257uT5ZCI5aSH5Lu9LTIiIGNsYXNzPSJzdDEiIGQ9Ik0yODguOCw3NC4ydi05LjRoLTkuNFY2M2g5LjRsMCwwaDEuOXYxMS4ySDI4OC44eiIvPgoKCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0i55+p5b2iLTJfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iNDExLjY3NjgiIHkxPSItMS42MDY2IiB4Mj0iNDExLjY3NjgiIHkyPSItMC42NzA3IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDg2LjI1IDAgMCAxMDguNzUgLTM1MjY3LjEyNSAyNDYuNSkiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0VCRURGMDtzdG9wLW9wYWNpdHk6MC45OTE3Ii8+CgkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRTFFM0U2Ii8+CgkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCTxwYXRoIGlkPSLnn6nlvaItMiIgY2xhc3M9InN0MiIgZD0iTTE5Ny45LDcwLjVoODQuMmMwLjYsMCwxLDAuNCwxLDF2MTA2LjhjMCwwLjYtMC40LDEtMSwxaC04NC4yYy0wLjYsMC0xLTAuNC0xLTFWNzEuNQoJCQkJQzE5Ni45LDcwLjksMTk3LjMsNzAuNSwxOTcuOSw3MC41eiIvPgoKCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0i55+p5b2iXzZfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjQxMC42NjE0IiB5MT0iLTEuODc3MyIgeDI9IjQxMC42NjE0IiB5Mj0iLTAuODg4OCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCg3MS4yNSAwIDAgOTMuNzUgLTI5MDE5LjYyNSAyNTQpIj4KCQkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNGRkZGRkYiLz4KCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNGMkY0RjciLz4KCQkJPC9saW5lYXJHcmFkaWVudD4KCQkJPHJlY3QgaWQ9IuefqeW9ol8xXyIgeD0iMjA0LjQiIHk9Ijc4IiBjbGFzcz0ic3QzIiB3aWR0aD0iNzEuMiIgaGVpZ2h0PSI5My44Ii8+CgkJCTxyZWN0IGlkPSLnn6nlvaJfMl8iIHg9IjIxOS40IiB5PSI4MS44IiBjbGFzcz0ic3Q0IiB3aWR0aD0iNDEuMiIgaGVpZ2h0PSIxLjkiLz4KCQkJPHJlY3QgaWQ9IuefqeW9ol8zXyIgeD0iMjA0LjQiIHk9IjE3MS44IiBjbGFzcz0ic3Q1IiB3aWR0aD0iNzEuMiIgaGVpZ2h0PSIxLjkiLz4KCgkJCQk8bGluZWFyR3JhZGllbnQgaWQ9IuefqeW9oi0zXzFfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjQwNi40MTUyIiB5MT0iLTExLjczMzQiIHgyPSI0MDYuNDE1MiIgeTI9Ii0xMC43NDEzIiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDQxLjI1IDAgMCAxNSAtMTY1MjQuNjI1IDI0Mi43NSkiPgoJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0VERUZGMiIvPgoJCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0U4RUFFRCIvPgoJCQk8L2xpbmVhckdyYWRpZW50PgoJCQk8cmVjdCBpZD0i55+p5b2iLTMiIHg9IjIxOS40IiB5PSI2Ni44IiBjbGFzcz0ic3Q2IiB3aWR0aD0iNDEuMiIgaGVpZ2h0PSIxNSIvPgoJCQk8ZyBpZD0i57yW57uELTMiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIyMy4xMjUwMDAsIDk4LjYyNTAwMCkiPgoJCQkJPHJlY3QgaWQ9IuefqeW9ol80XyIgY2xhc3M9InN0MSIgd2lkdGg9IjMuOCIgaGVpZ2h0PSIxLjkiLz4KCQkJCTxyZWN0IGlkPSLnn6nlvaLlpIfku70iIHg9IjcuNSIgY2xhc3M9InN0MSIgd2lkdGg9IjMuOCIgaGVpZ2h0PSIxLjkiLz4KCQkJCTxyZWN0IGlkPSLnn6nlvaLlpIfku70tMiIgeD0iMTUiIGNsYXNzPSJzdDEiIHdpZHRoPSIzLjgiIGhlaWdodD0iMS45Ii8+CgkJCQk8cmVjdCBpZD0i55+p5b2i5aSH5Lu9LTMiIHg9IjIyLjUiIGNsYXNzPSJzdDEiIHdpZHRoPSIzLjgiIGhlaWdodD0iMS45Ii8+CgkJCQk8cmVjdCBpZD0i55+p5b2i5aSH5Lu9LTQiIHg9IjMwIiBjbGFzcz0ic3QxIiB3aWR0aD0iMy44IiBoZWlnaHQ9IjEuOSIvPgoJCQk8L2c+CgkJCTxnIGlkPSLnvJbnu4QtNiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjI4Ljc1MDAwMCwgMTEzLjYyNTAwMCkiPgoJCQkJPGNpcmNsZSBpZD0i5qSt5ZyG5b2iIiBjbGFzcz0ic3Q3IiBjeD0iMjQuNCIgY3k9IjI2LjIiIHI9IjI0LjQiLz4KCQkJCTxwYXRoIGlkPSLot6/lvoQtMTIiIGNsYXNzPSJzdDciIGQ9Ik0zOSw0NWwzLjEsMy4yYy0wLjYsMC44LTAuNiwxLjUsMCwyLjJzMi4yLDIuNSw0LjcsNS4zdi03LjVsLTYuMS01TDM5LDQ1eiIvPgoKCQkJCQk8ZyBpZD0i57yW57uELTQiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUwLjIyNjMxNywgNTEuNzA5MDc3KSByb3RhdGUoLTQ1LjAwMDAwMCkgdHJhbnNsYXRlKC01MC4yMjYzMTcsIC01MS43MDkwNzcpIHRyYW5zbGF0ZSg0NC42MDEzMTcsIDM2LjcwOTA3NykiPgoKCQkJCQkJPHJlY3QgaWQ9IuefqeW9ol81XyIgeD0iMy44IiB5PSIwIiB0cmFuc2Zvcm09Im1hdHJpeCgtMSA1LjA3MDM2M2UtMDYgLTUuMDcwMzYzZS0wNiAtMSAxMS40IDkuMzUpIiBjbGFzcz0ic3Q4IiB3aWR0aD0iMy43IiBoZWlnaHQ9IjkuNCIvPgoKCQkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLot6/lvoQtMTNfMV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iLTEwOS4zOTE1IiB5MT0iLTU1LjkzODMiIHgyPSItMTA5LjU1NzgiIHkyPSItNTUuODkwNSIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCg5LjIxMjkgMCAwIDIyLjUgMTAxMy45Mjg1IDEyNzcuMjgxKSI+CgkJCQkJCTxzdG9wICBvZmZzZXQ9IjAiIHN0eWxlPSJzdG9wLWNvbG9yOiNEN0Q4REIiLz4KCQkJCQkJPHN0b3AgIG9mZnNldD0iMSIgc3R5bGU9InN0b3AtY29sb3I6I0JFQkZDMiIvPgoJCQkJCTwvbGluZWFyR3JhZGllbnQ+CgkJCQkJPHBhdGggaWQ9Iui3r+W+hC0xMyIgY2xhc3M9InN0OSIgZD0iTTMuNyw1LjdoNGMwLjUsMCwxLDAuNCwxLDAuOWwxLjUsMjAuNWMwLDAuNi0wLjQsMS0wLjksMS4xYzAsMCwwLDAtMC4xLDBIMgoJCQkJCQljLTAuNiwwLTEtMC40LTEtMXYtMC4xTDIuNyw2LjZDMi43LDYuMSwzLjIsNS43LDMuNyw1Ljd6Ii8+CgkJCQk8L2c+CgkJCQk8ZyBpZD0i57yW57uELTUiPgoKCQkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLmpK3lnIblvaJfM18iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iLTQ5LjcxMTUiIHkxPSItMy42ODU5IiB4Mj0iLTQ5LjcxMTUiIHkyPSItMi42ODU5IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDQ3Ljc1IDAgMCA0Ny43NSAyMzk4LjEyNSAxNzYuNSkiPgoJCQkJCQk8c3RvcCAgb2Zmc2V0PSIxLjUzMDgyOGUtMDMiIHN0eWxlPSJzdG9wLWNvbG9yOiNERERFRTAiLz4KCQkJCQkJPHN0b3AgIG9mZnNldD0iMC45OTgiIHN0eWxlPSJzdG9wLWNvbG9yOiNDM0M1QzciLz4KCQkJCQk8L2xpbmVhckdyYWRpZW50PgoKCQkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLmpK3lnIblvaJfNF8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iLTQ5LjcxMTUiIHkxPSItMy42ODU4IiB4Mj0iLTQ5LjcxMTUiIHkyPSItMi43MDU0IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDQ3Ljc1IDAgMCA0Ny43NSAyMzk4LjEyNSAxNzYuNSkiPgoJCQkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRERERUUwIi8+CgkJCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNCRUMwQzIiLz4KCQkJCQk8L2xpbmVhckdyYWRpZW50PgoJCQkJCTxjaXJjbGUgaWQ9IuakreWchuW9ol8xXyIgY2xhc3M9InN0MTAiIGN4PSIyNC40IiBjeT0iMjQuNCIgcj0iMjMuOSIvPgoKCQkJCQkJPGxpbmVhckdyYWRpZW50IGlkPSLmpK3lnIblvaJfNV8iIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4MT0iLTUyLjM5NjYiIHkxPSItNC44MjIiIHgyPSItNTIuMzk2NiIgeTI9Ii0zLjgzOCIgZ3JhZGllbnRUcmFuc2Zvcm09Im1hdHJpeCgzNi41IDAgMCAzNi41IDE5MzYuODc1IDE4Mi4xMjUpIj4KCQkJCQkJPHN0b3AgIG9mZnNldD0iMCIgc3R5bGU9InN0b3AtY29sb3I6I0ZFRkVGRSIvPgoJCQkJCQk8c3RvcCAgb2Zmc2V0PSIxIiBzdHlsZT0ic3RvcC1jb2xvcjojRjJGNEY3Ii8+CgkJCQkJPC9saW5lYXJHcmFkaWVudD4KCgkJCQkJCTxsaW5lYXJHcmFkaWVudCBpZD0i5qSt5ZyG5b2iXzZfIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9Ii01Mi4zOTY2IiB5MT0iLTQuODIyIiB4Mj0iLTUyLjM5NjYiIHkyPSItMy44Mzk4IiBncmFkaWVudFRyYW5zZm9ybT0ibWF0cml4KDM2LjUgMCAwIDM2LjUgMTkzNi44NzUgMTgyLjEyNSkiPgoJCQkJCQk8c3RvcCAgb2Zmc2V0PSIwIiBzdHlsZT0ic3RvcC1jb2xvcjojRjNGNEY1Ii8+CgkJCQkJCTxzdG9wICBvZmZzZXQ9IjEiIHN0eWxlPSJzdG9wLWNvbG9yOiNGM0Y1RjciLz4KCQkJCQk8L2xpbmVhckdyYWRpZW50PgoJCQkJCTxjaXJjbGUgaWQ9IuakreWchuW9ol8yXyIgY2xhc3M9InN0MTEiIGN4PSIyNC40IiBjeT0iMjQuNCIgcj0iMTguMiIvPgoJCQkJCTxwYXRoIGlkPSLlvaLnirbnu5PlkIhfMV8iIGNsYXNzPSJzdDEyIiBkPSJNMjMuNSwxMi4zYzUuOCwwLDEwLjksMy4zLDEzLjQsOC4yYy0yLjUtMS42LTUuNS0yLjYtOC43LTIuNmMtNCwwLTcuNywxLjUtMTAuNSw0CgkJCQkJCUwxNCwxNS43QzE2LjYsMTMuNiwxOS45LDEyLjMsMjMuNSwxMi4zeiIvPgoJCQkJPC9nPgoJCQkJPHBvbHlnb24gaWQ9Iui3r+W+hC0xNCIgY2xhc3M9InN0NSIgcG9pbnRzPSI0Ni45LDUzLjQgNDYuOSw1NS42IDU0LjQsNjQuNCA1NC40LDYyLjMgCQkJCSIvPgoJCQk8L2c+CgkJPC9nPgoJPC9nPgo8L2c+Cjwvc3ZnPgo=";
10429
- var Component$s = defineComponent({
10430
+ var Component$t = defineComponent({
10430
10431
  name: "Exception",
10431
10432
  props: {
10432
10433
  type: PropTypes.commonType(["404", "403", "500", "building", "empty", "search-empty", "login"], "type").def("404"),
@@ -10470,8 +10471,8 @@ var Component$s = defineComponent({
10470
10471
  };
10471
10472
  }
10472
10473
  });
10473
- const BkException = withInstall(Component$s);
10474
- var Component$r = defineComponent({
10474
+ const BkException = withInstall(Component$t);
10475
+ var Component$s = defineComponent({
10475
10476
  name: "FixedNavbar",
10476
10477
  props: {
10477
10478
  navItems: PropTypes.array.def([]),
@@ -10512,8 +10513,8 @@ var Component$r = defineComponent({
10512
10513
  }, [item.text]) : ""]))]);
10513
10514
  }
10514
10515
  });
10515
- const BkFixedNavbar = withInstall(Component$r);
10516
- var Component$q = defineComponent({
10516
+ const BkFixedNavbar = withInstall(Component$s);
10517
+ var Component$r = defineComponent({
10517
10518
  name: "Link",
10518
10519
  props: {
10519
10520
  theme: PropTypes.theme(["danger", "success", "primary", "warning", "default"]).def("default"),
@@ -10550,7 +10551,7 @@ var Component$q = defineComponent({
10550
10551
  }, [createVNode("span", null, [(_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)])]);
10551
10552
  }
10552
10553
  });
10553
- const BkLink = withInstall(Component$q);
10554
+ const BkLink = withInstall(Component$r);
10554
10555
  const placements$1 = ["auto", "auto-start", "auto-end", "top", "top-start", "top-end", "bottom", "bottom-start", "bottom-end", "right", "right-start", "right-end", "left", "left-start", "left-end"];
10555
10556
  const EventProps$2 = {
10556
10557
  onAfterHidden: Function,
@@ -10593,7 +10594,7 @@ const PopoverProps$1 = __spreadValues({
10593
10594
  PropTypes.string
10594
10595
  ]).def([])
10595
10596
  }, EventProps$2);
10596
- var Component$p = defineComponent({
10597
+ var Component$q = defineComponent({
10597
10598
  name: "Popover",
10598
10599
  props: PopoverProps$1,
10599
10600
  emits: ["afterHidden", "afterShow", "update:isShow"],
@@ -10743,7 +10744,7 @@ var Component$p = defineComponent({
10743
10744
  };
10744
10745
  }
10745
10746
  });
10746
- const BkPopover = withInstall(Component$p);
10747
+ const BkPopover = withInstall(Component$q);
10747
10748
  var _populated = false;
10748
10749
  var _ie, _firefox, _opera, _webkit, _chrome;
10749
10750
  var _ie_real_version;
@@ -12875,7 +12876,7 @@ var usePopperId = (props2, prefix = "#") => {
12875
12876
  resetFullscreenElementTag
12876
12877
  };
12877
12878
  };
12878
- var Component$o = defineComponent({
12879
+ var Component$p = defineComponent({
12879
12880
  name: "Popover2",
12880
12881
  components: {
12881
12882
  Content,
@@ -13077,7 +13078,7 @@ var Component$o = defineComponent({
13077
13078
  });
13078
13079
  }
13079
13080
  });
13080
- const BkPopover2 = withInstall(Component$o);
13081
+ const BkPopover2 = withInstall(Component$p);
13081
13082
  const Circle = (_2, {
13082
13083
  attrs,
13083
13084
  slots
@@ -13200,7 +13201,7 @@ const Line = (_2, {
13200
13201
  function _isSlot$6(s2) {
13201
13202
  return typeof s2 === "function" || Object.prototype.toString.call(s2) === "[object Object]" && !isVNode(s2);
13202
13203
  }
13203
- var Component$n = defineComponent({
13204
+ var Component$o = defineComponent({
13204
13205
  name: "Progress",
13205
13206
  props: {
13206
13207
  extCls: PropTypes.string,
@@ -13278,7 +13279,7 @@ var Component$n = defineComponent({
13278
13279
  return createVNode("div", progressProps, [progress2]);
13279
13280
  }
13280
13281
  });
13281
- const BkProgress = withInstall(Component$n);
13282
+ const BkProgress = withInstall(Component$o);
13282
13283
  const radioGroupKey = Symbol("RadioGroup");
13283
13284
  function useFocus() {
13284
13285
  const isFocused = ref(false);
@@ -13375,7 +13376,7 @@ const radioProps = {
13375
13376
  checked: PropTypes.bool.def(false),
13376
13377
  disabled: PropTypes.bool.def(false)
13377
13378
  };
13378
- var Component$m = defineComponent({
13379
+ var Component$n = defineComponent({
13379
13380
  name: "Radio",
13380
13381
  props: radioProps,
13381
13382
  emits: ["change", "update:modelValue"],
@@ -13536,7 +13537,7 @@ var RadioGroup = defineComponent({
13536
13537
  }, [(_a = this.$slots) == null ? void 0 : _a.default()]);
13537
13538
  }
13538
13539
  });
13539
- const BkRadio = withInstallProps(Component$m, { Group: RadioGroup, Button: RadioButton });
13540
+ const BkRadio = withInstallProps(Component$n, { Group: RadioGroup, Button: RadioButton });
13540
13541
  var star = defineComponent({
13541
13542
  name: "Star",
13542
13543
  props: {
@@ -13598,7 +13599,7 @@ var star = defineComponent({
13598
13599
  }, null)])])])])]))]);
13599
13600
  }
13600
13601
  });
13601
- var Component$l = defineComponent({
13602
+ var Component$m = defineComponent({
13602
13603
  name: "Rate",
13603
13604
  components: {
13604
13605
  star
@@ -13673,8 +13674,8 @@ var Component$l = defineComponent({
13673
13674
  }, commonAttrs), null)]]);
13674
13675
  }
13675
13676
  });
13676
- const BkRate = withInstall(Component$l);
13677
- var Component$k = defineComponent({
13677
+ const BkRate = withInstall(Component$m);
13678
+ var Component$l = defineComponent({
13678
13679
  name: "Swiper",
13679
13680
  props: {
13680
13681
  isLoop: PropTypes.bool.def(true),
@@ -13833,7 +13834,7 @@ var Component$k = defineComponent({
13833
13834
  }, null)])]);
13834
13835
  }
13835
13836
  });
13836
- const BkSwiper = withInstall(Component$k);
13837
+ const BkSwiper = withInstall(Component$l);
13837
13838
  const selectKey = Symbol("BkSelect");
13838
13839
  const optionGroupKey = Symbol("BkOptionGroup");
13839
13840
  function useHover() {
@@ -14014,8 +14015,10 @@ var BkOption = defineComponent({
14014
14015
  "onClick": this.handleOptionClick,
14015
14016
  "onMouseenter": this.handleMouseEnter
14016
14017
  }, [(_c = (_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)) != null ? _c : createVNode("span", {
14017
- "class": "bk-select-option-item"
14018
+ "class": "bk-select-option-item",
14019
+ "title": this.label
14018
14020
  }, [this.label, this.multiple && this.selected && createVNode(done, {
14021
+ "class": "done-icon",
14019
14022
  "width": 22,
14020
14023
  "height": 22
14021
14024
  }, null)])]), [[vShow, this.visible]]);
@@ -14100,7 +14103,7 @@ var OptionGroup = defineComponent({
14100
14103
  }, [(_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a)]), [[vShow, !this.groupCollapse]])]), [[vShow, this.visible]]);
14101
14104
  }
14102
14105
  });
14103
- var Component$j = defineComponent({
14106
+ var Component$k = defineComponent({
14104
14107
  name: "Tag",
14105
14108
  props: {
14106
14109
  theme: PropTypes.theme(["success", "info", "warning", "danger"]).def(""),
@@ -14162,7 +14165,7 @@ var Component$j = defineComponent({
14162
14165
  }, null) : ""]);
14163
14166
  }
14164
14167
  });
14165
- const BkTag = withInstall(Component$j);
14168
+ const BkTag = withInstall(Component$k);
14166
14169
  function _isSlot$5(s2) {
14167
14170
  return typeof s2 === "function" || Object.prototype.toString.call(s2) === "[object Object]" && !isVNode(s2);
14168
14171
  }
@@ -14251,7 +14254,7 @@ var SelectTagInput = defineComponent({
14251
14254
  }, null), [[vModelText, this.value]]), (_d = (_c = this.$slots) == null ? void 0 : _c.suffix) == null ? void 0 : _d.call(_c)]);
14252
14255
  }
14253
14256
  });
14254
- var Component$i = defineComponent({
14257
+ var Component$j = defineComponent({
14255
14258
  name: "Select",
14256
14259
  directives: {
14257
14260
  clickoutside: ClickOutside
@@ -14281,7 +14284,10 @@ var Component$i = defineComponent({
14281
14284
  scrollLoading: PropTypes.bool.def(false),
14282
14285
  allowCreate: PropTypes.bool.def(false),
14283
14286
  popoverOptions: PropTypes.object.def({}),
14284
- customContent: PropTypes.bool.def(false)
14287
+ customContent: PropTypes.bool.def(false),
14288
+ list: PropTypes.array.def([]),
14289
+ idKey: PropTypes.string.def("value"),
14290
+ displayKey: PropTypes.string.def("label")
14285
14291
  },
14286
14292
  emits: ["update:modelValue", "change", "toggle", "clear", "scroll-end", "focus", "blur"],
14287
14293
  setup(props2, {
@@ -14411,8 +14417,8 @@ var Component$i = defineComponent({
14411
14417
  var _a;
14412
14418
  if (val === modelValue.value)
14413
14419
  return;
14414
- emit("change", val);
14415
- emit("update:modelValue", val);
14420
+ emit("change", val, modelValue.value);
14421
+ emit("update:modelValue", val, modelValue.value);
14416
14422
  (_a = formItem == null ? void 0 : formItem.validate) == null ? void 0 : _a.call(formItem, "change");
14417
14423
  };
14418
14424
  const handleTogglePopover = () => {
@@ -14675,7 +14681,7 @@ var Component$i = defineComponent({
14675
14681
  "size": "mini"
14676
14682
  }, null);
14677
14683
  }
14678
- if (this.clearable && this.isHover && this.selected.length) {
14684
+ if (this.clearable && this.isHover && this.selected.length && !this.isDisabled) {
14679
14685
  return createVNode(close$1, {
14680
14686
  "class": "clear-icon",
14681
14687
  "onClick": this.handleClear
@@ -14712,12 +14718,14 @@ var Component$i = defineComponent({
14712
14718
  "modelValue": this.isInput ? this.searchKey : this.selectedLabel.join(","),
14713
14719
  "placeholder": this.isInput ? this.selectedLabel.join(",") || this.placeholder : this.placeholder,
14714
14720
  "readonly": !this.isInput,
14721
+ "selectReadonly": true,
14715
14722
  "disabled": this.isDisabled,
14716
14723
  "behavior": this.behavior,
14717
14724
  "size": this.size,
14718
14725
  "onFocus": this.handleFocus,
14719
14726
  "onInput": this.handleInputChange,
14720
- "onEnter": this.handleInputEnter
14727
+ "onEnter": this.handleInputEnter,
14728
+ "onKeydown": (_2, e) => this.handleKeydown(e)
14721
14729
  }, {
14722
14730
  prefix: () => {
14723
14731
  var _a, _b;
@@ -14760,7 +14768,10 @@ var Component$i = defineComponent({
14760
14768
  "class": "bk-select-option",
14761
14769
  "onMouseenter": this.handleSelectedAllOptionMouseEnter,
14762
14770
  "onClick": this.handleToggleAll
14763
- }, [this.selectAllText]), (_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a), this.scrollLoading && createVNode("li", {
14771
+ }, [this.selectAllText]), this.list.map((item) => createVNode(BkOption, {
14772
+ "value": item[this.idKey],
14773
+ "label": item[this.displayKey]
14774
+ }, null)), (_b = (_a = this.$slots).default) == null ? void 0 : _b.call(_a), this.scrollLoading && createVNode("li", {
14764
14775
  "class": "bk-select-options-loading"
14765
14776
  }, [createVNode(BkLoading, {
14766
14777
  "class": "spinner mr5",
@@ -14782,7 +14793,7 @@ var Component$i = defineComponent({
14782
14793
  })]);
14783
14794
  }
14784
14795
  });
14785
- const BkSelect = withInstallProps(Component$i, { Option: BkOption, Group: OptionGroup });
14796
+ const BkSelect = withInstallProps(Component$j, { Option: BkOption, Group: OptionGroup });
14786
14797
  function _isSlot$4(s2) {
14787
14798
  return typeof s2 === "function" || Object.prototype.toString.call(s2) === "[object Object]" && !isVNode(s2);
14788
14799
  }
@@ -14792,7 +14803,7 @@ const {
14792
14803
  const sliderPops = Object.assign({}, propsMixin);
14793
14804
  sliderPops.width.default = "400";
14794
14805
  sliderPops.height.default = "100%";
14795
- var Component$h = defineComponent({
14806
+ var Component$i = defineComponent({
14796
14807
  name: "Sideslider",
14797
14808
  components: {
14798
14809
  BkModal,
@@ -14881,7 +14892,7 @@ var Component$h = defineComponent({
14881
14892
  };
14882
14893
  }
14883
14894
  });
14884
- const BkSideslider = withInstall(Component$h);
14895
+ const BkSideslider = withInstall(Component$i);
14885
14896
  const stepsProps = {
14886
14897
  theme: PropTypes.theme().def("primary"),
14887
14898
  size: PropTypes.size(),
@@ -14895,7 +14906,7 @@ const stepsProps = {
14895
14906
  steps: PropTypes.array.def([]),
14896
14907
  beforeChange: PropTypes.func
14897
14908
  };
14898
- var Component$g = defineComponent({
14909
+ var Component$h = defineComponent({
14899
14910
  name: "Steps",
14900
14911
  props: stepsProps,
14901
14912
  emits: ["update:curStep", "click"],
@@ -15049,8 +15060,8 @@ var Component$g = defineComponent({
15049
15060
  })]);
15050
15061
  }
15051
15062
  });
15052
- const BkSteps$2 = withInstall(Component$g);
15053
- var Component$f = defineComponent({
15063
+ const BkSteps$2 = withInstall(Component$h);
15064
+ var Component$g = defineComponent({
15054
15065
  name: "Switcher",
15055
15066
  props: {
15056
15067
  theme: PropTypes.theme().def(""),
@@ -15144,7 +15155,7 @@ var Component$f = defineComponent({
15144
15155
  }, [isChecked.value ? props2.onText : props2.offText]) : ""]);
15145
15156
  }
15146
15157
  });
15147
- const BkSwitcher = withInstall(Component$f);
15158
+ const BkSwitcher = withInstall(Component$g);
15148
15159
  const EventProps = {
15149
15160
  onContentScroll: Function
15150
15161
  };
@@ -15281,7 +15292,7 @@ var virtualRender = {
15281
15292
  }
15282
15293
  }
15283
15294
  };
15284
- var Component$e = defineComponent({
15295
+ var Component$f = defineComponent({
15285
15296
  name: "VirtualRender",
15286
15297
  directives: {
15287
15298
  bkVirtualRender: virtualRender
@@ -15435,7 +15446,7 @@ var Component$e = defineComponent({
15435
15446
  };
15436
15447
  }
15437
15448
  });
15438
- const BkVirtualRender = withInstall(Component$e);
15449
+ const BkVirtualRender = withInstall(Component$f);
15439
15450
  var BORDER_OPTION = /* @__PURE__ */ ((BORDER_OPTION2) => {
15440
15451
  BORDER_OPTION2["NONE"] = "none";
15441
15452
  BORDER_OPTION2["ROW"] = "row";
@@ -16056,7 +16067,7 @@ const paginationProps = {
16056
16067
  return value.some((item) => layoutNameMap[item]);
16057
16068
  }, "layout \u7684\u503C\u53EA\u652F\u6301 * total\u3001list\u3001limit *").def(["total", "list", "limit"])
16058
16069
  };
16059
- var Component$d = defineComponent({
16070
+ var Component$e = defineComponent({
16060
16071
  name: "Pagination",
16061
16072
  props: paginationProps,
16062
16073
  emits: ["update:modelValue", "change", "update:limit", "limitChange"],
@@ -16123,7 +16134,7 @@ var Component$d = defineComponent({
16123
16134
  }))]);
16124
16135
  }
16125
16136
  });
16126
- const BkPagination = withInstall(Component$d);
16137
+ const BkPagination = withInstall(Component$e);
16127
16138
  var TableRow = defineComponent({
16128
16139
  name: "TableRow",
16129
16140
  render() {
@@ -17507,7 +17518,7 @@ const useInit = (props2) => {
17507
17518
  updateColGroups
17508
17519
  };
17509
17520
  };
17510
- var Component$c = defineComponent({
17521
+ var Component$d = defineComponent({
17511
17522
  name: "Table",
17512
17523
  props: tableProps,
17513
17524
  emits: EMIT_EVENT_TYPES,
@@ -17749,7 +17760,7 @@ var Component$c = defineComponent({
17749
17760
  ]);
17750
17761
  }
17751
17762
  });
17752
- const BkTable = withInstall(Component$c);
17763
+ const BkTable = withInstall(Component$d);
17753
17764
  const INPUT_MIN_WIDTH = 12;
17754
17765
  function usePage(pageSize) {
17755
17766
  const state = reactive({
@@ -17924,7 +17935,7 @@ var TagRender = defineComponent({
17924
17935
  }, [this.node[this.displayKey]])]);
17925
17936
  }
17926
17937
  });
17927
- var Component$b = defineComponent({
17938
+ var Component$c = defineComponent({
17928
17939
  name: "TagInput",
17929
17940
  directives: {
17930
17941
  bkTooltips: tooltips
@@ -18677,7 +18688,7 @@ var Component$b = defineComponent({
18677
18688
  })]);
18678
18689
  }
18679
18690
  });
18680
- const TagInput = withInstall(Component$b);
18691
+ const TagInput = withInstall(Component$c);
18681
18692
  const dividerProps = {
18682
18693
  direction: PropTypes.commonType(["horizontal", "vertical"], "direction").def("horizontal"),
18683
18694
  align: PropTypes.commonType(["left", "center", "right"], "align").def("center"),
@@ -19614,7 +19625,7 @@ const menuProps = {
19614
19625
  default: true
19615
19626
  }
19616
19627
  };
19617
- var Component$a = defineComponent({
19628
+ var Component$b = defineComponent({
19618
19629
  name: "Menu",
19619
19630
  props: menuProps,
19620
19631
  emits: ["update:activeKey", "update:openKeys", "click", "openChange"],
@@ -19862,7 +19873,7 @@ var Submenu = defineComponent({
19862
19873
  };
19863
19874
  }
19864
19875
  });
19865
- const BkMenu = withInstallProps(Component$a, { Item, Submenu, Group });
19876
+ const BkMenu = withInstallProps(Component$b, { Item, Submenu, Group });
19866
19877
  const TitleProps = {
19867
19878
  sideTitle: {
19868
19879
  type: String,
@@ -19942,7 +19953,7 @@ const NavigationProps = {
19942
19953
  default: true
19943
19954
  }
19944
19955
  };
19945
- var Component$9 = defineComponent({
19956
+ var Component$a = defineComponent({
19946
19957
  name: "Navigation",
19947
19958
  props: NavigationProps,
19948
19959
  emits: ["leave", "toggle", "hover", "toggle-click"],
@@ -20084,7 +20095,7 @@ var Component$9 = defineComponent({
20084
20095
  }, [(_l = (_k = this.$slots).footer) == null ? void 0 : _l.call(_k)])])])])]);
20085
20096
  }
20086
20097
  });
20087
- const Navigation = withInstall(Component$9);
20098
+ const Navigation = withInstall(Component$a);
20088
20099
  const pickerDropdownProps = {
20089
20100
  placement: {
20090
20101
  type: String,
@@ -23439,7 +23450,7 @@ const datePickerProps = {
23439
23450
  },
23440
23451
  disableDate: Function
23441
23452
  };
23442
- var Component$8 = defineComponent({
23453
+ var Component$9 = defineComponent({
23443
23454
  name: "DatePicker",
23444
23455
  directives: {
23445
23456
  clickoutside: ClickOutside
@@ -23968,7 +23979,7 @@ var Component$8 = defineComponent({
23968
23979
  })]), [[resolveDirective("clickoutside"), this.handleClose]]);
23969
23980
  }
23970
23981
  });
23971
- const BkDatePicker = withInstall(Component$8);
23982
+ const BkDatePicker = withInstall(Component$9);
23972
23983
  var ArrayType = /* @__PURE__ */ ((ArrayType2) => {
23973
23984
  ArrayType2["OBJECT_ARRAY"] = "objectArray";
23974
23985
  ArrayType2["BASE_ARRAY"] = "baseArray";
@@ -24024,7 +24035,7 @@ function useSelectListSearch(selectList, displayCode) {
24024
24035
  selectListSearch
24025
24036
  };
24026
24037
  }
24027
- var Component$7 = defineComponent({
24038
+ var Component$8 = defineComponent({
24028
24039
  name: "Transfer",
24029
24040
  props: transferProps,
24030
24041
  emits: ["change", "update:targetList"],
@@ -24195,7 +24206,7 @@ var Component$7 = defineComponent({
24195
24206
  }, [getHeaderHtml("right-header"), getListContentHtml("right")])]);
24196
24207
  }
24197
24208
  });
24198
- const Transfer = withInstall(Component$7);
24209
+ const Transfer = withInstall(Component$8);
24199
24210
  var EVENTS = /* @__PURE__ */ ((EVENTS2) => {
24200
24211
  EVENTS2["NODE_CLICK"] = "nodeClick";
24201
24212
  EVENTS2["NODE_COLLAPSE"] = "nodeCollapse";
@@ -25293,7 +25304,7 @@ var useTreeInit = (props2) => {
25293
25304
  onSelected
25294
25305
  };
25295
25306
  };
25296
- var Component$6 = defineComponent({
25307
+ var Component$7 = defineComponent({
25297
25308
  name: "Tree",
25298
25309
  props: treeProps,
25299
25310
  emits: TreeEmitEventsType,
@@ -25404,7 +25415,7 @@ var Component$6 = defineComponent({
25404
25415
  });
25405
25416
  }
25406
25417
  });
25407
- const BkTree = withInstall(Component$6);
25418
+ const BkTree = withInstall(Component$7);
25408
25419
  const isCustomComponent = (node) => node.__v_isVNode;
25409
25420
  var ComposeFormItem = defineComponent({
25410
25421
  name: "ComposeFormItem",
@@ -26297,7 +26308,7 @@ class Store {
26297
26308
  nodeDataList.forEach((node) => this.appendNode(node, parentNode));
26298
26309
  }
26299
26310
  }
26300
- var Component$5 = defineComponent({
26311
+ var Component$6 = defineComponent({
26301
26312
  name: "Cascader",
26302
26313
  directives: {
26303
26314
  clickoutside: ClickOutside
@@ -26470,7 +26481,7 @@ var Component$5 = defineComponent({
26470
26481
  })]);
26471
26482
  }
26472
26483
  });
26473
- const BkCascader = withInstallProps(Component$5, { CascaderPanel });
26484
+ const BkCascader = withInstallProps(Component$6, { CascaderPanel });
26474
26485
  var SliderButton = defineComponent({
26475
26486
  name: "SliderButton",
26476
26487
  props: {
@@ -26641,7 +26652,7 @@ const off = (element, event, handler) => {
26641
26652
  element.removeEventListener(event, handler, false);
26642
26653
  }
26643
26654
  };
26644
- var Component$4 = defineComponent({
26655
+ var Component$5 = defineComponent({
26645
26656
  name: "Slider",
26646
26657
  props: {
26647
26658
  modelValue: PropTypes.oneOfType([PropTypes.array, PropTypes.number]),
@@ -27087,8 +27098,8 @@ var Component$4 = defineComponent({
27087
27098
  return this.renderDom();
27088
27099
  }
27089
27100
  });
27090
- const Slider = withInstall(Component$4);
27091
- var Component$3 = defineComponent({
27101
+ const Slider = withInstall(Component$5);
27102
+ var Component$4 = defineComponent({
27092
27103
  name: "ResizeLayout",
27093
27104
  props: {
27094
27105
  placement: PropTypes.placement().def("left"),
@@ -27343,13 +27354,13 @@ var Component$3 = defineComponent({
27343
27354
  }, null)]);
27344
27355
  }
27345
27356
  });
27346
- const BkResizeLayout = withInstall(Component$3);
27357
+ const BkResizeLayout = withInstall(Component$4);
27347
27358
  const timelineProps = {
27348
27359
  list: PropTypes.array.def([]),
27349
27360
  titleAble: PropTypes.bool.def(false),
27350
27361
  extCls: PropTypes.string
27351
27362
  };
27352
- var Component$2 = defineComponent({
27363
+ var Component$3 = defineComponent({
27353
27364
  name: "Timeline",
27354
27365
  props: timelineProps,
27355
27366
  emits: ["select"],
@@ -27458,7 +27469,7 @@ var Component$2 = defineComponent({
27458
27469
  })]);
27459
27470
  }
27460
27471
  });
27461
- const BkSteps$1 = withInstall(Component$2);
27472
+ const BkSteps$1 = withInstall(Component$3);
27462
27473
  const processProps = {
27463
27474
  list: PropTypes.array.def([]),
27464
27475
  controllable: PropTypes.bool.def(false),
@@ -27467,7 +27478,7 @@ const processProps = {
27467
27478
  displayKey: PropTypes.string.def("content"),
27468
27479
  extCls: PropTypes.string
27469
27480
  };
27470
- var Component$1 = defineComponent({
27481
+ var Component$2 = defineComponent({
27471
27482
  name: "BKProcess",
27472
27483
  props: processProps,
27473
27484
  emits: ["update:curProcess", "click"],
@@ -27563,7 +27574,7 @@ var Component$1 = defineComponent({
27563
27574
  }, [item[this.displayKey], renderIcon(index, item)]))])]);
27564
27575
  }
27565
27576
  });
27566
- const BkSteps = withInstall(Component$1);
27577
+ const BkSteps = withInstall(Component$2);
27567
27578
  const CLASS_PREFIX = "bk-upload";
27568
27579
  var EThemes = /* @__PURE__ */ ((EThemes2) => {
27569
27580
  EThemes2["BUTTON"] = "button";
@@ -28281,7 +28292,7 @@ var sparkMd5 = { exports: {} };
28281
28292
  ;
28282
28293
  if (typeof ArrayBuffer !== "undefined" && !ArrayBuffer.prototype.slice) {
28283
28294
  (function() {
28284
- function clamp(val, length) {
28295
+ function clamp2(val, length) {
28285
28296
  val = val | 0 || 0;
28286
28297
  if (val < 0) {
28287
28298
  return Math.max(val + length, 0);
@@ -28289,9 +28300,9 @@ var sparkMd5 = { exports: {} };
28289
28300
  return Math.min(val, length);
28290
28301
  }
28291
28302
  ArrayBuffer.prototype.slice = function(from, to) {
28292
- var length = this.byteLength, begin = clamp(from, length), end2 = length, num, target, targetArray, sourceArray;
28303
+ var length = this.byteLength, begin = clamp2(from, length), end2 = length, num, target, targetArray, sourceArray;
28293
28304
  if (to !== undefined$1) {
28294
- end2 = clamp(to, length);
28305
+ end2 = clamp2(to, length);
28295
28306
  }
28296
28307
  if (begin > end2) {
28297
28308
  return new ArrayBuffer(0);
@@ -28830,7 +28841,7 @@ var useFileHandler = (props2, hooks) => {
28830
28841
  handleProgress
28831
28842
  };
28832
28843
  };
28833
- var Component = defineComponent({
28844
+ var Component$1 = defineComponent({
28834
28845
  name: "BkUpload",
28835
28846
  props: uploadProps,
28836
28847
  emits: ["on-exceed", "on-progress", "on-success", "on-error", "on-delete", "on-done"],
@@ -29025,7 +29036,7 @@ var Component = defineComponent({
29025
29036
  })]);
29026
29037
  }
29027
29038
  });
29028
- const Upload = withInstall(Component);
29039
+ const Upload = withInstall(Component$1);
29029
29040
  function Diff$1() {
29030
29041
  }
29031
29042
  Diff$1.prototype = {
@@ -31949,6 +31960,1618 @@ var CodeDiff = defineComponent({
31949
31960
  }
31950
31961
  });
31951
31962
  const BkCodeDiff = withInstall(CodeDiff);
31963
+ var tinycolor$1 = { exports: {} };
31964
+ (function(module) {
31965
+ (function(Math2) {
31966
+ var trimLeft = /^\s+/, trimRight = /\s+$/, tinyCounter = 0, mathRound = Math2.round, mathMin = Math2.min, mathMax = Math2.max, mathRandom = Math2.random;
31967
+ function tinycolor2(color, opts) {
31968
+ color = color ? color : "";
31969
+ opts = opts || {};
31970
+ if (color instanceof tinycolor2) {
31971
+ return color;
31972
+ }
31973
+ if (!(this instanceof tinycolor2)) {
31974
+ return new tinycolor2(color, opts);
31975
+ }
31976
+ var rgb = inputToRGB(color);
31977
+ this._originalInput = color, this._r = rgb.r, this._g = rgb.g, this._b = rgb.b, this._a = rgb.a, this._roundA = mathRound(100 * this._a) / 100, this._format = opts.format || rgb.format;
31978
+ this._gradientType = opts.gradientType;
31979
+ if (this._r < 1) {
31980
+ this._r = mathRound(this._r);
31981
+ }
31982
+ if (this._g < 1) {
31983
+ this._g = mathRound(this._g);
31984
+ }
31985
+ if (this._b < 1) {
31986
+ this._b = mathRound(this._b);
31987
+ }
31988
+ this._ok = rgb.ok;
31989
+ this._tc_id = tinyCounter++;
31990
+ }
31991
+ tinycolor2.prototype = {
31992
+ isDark: function() {
31993
+ return this.getBrightness() < 128;
31994
+ },
31995
+ isLight: function() {
31996
+ return !this.isDark();
31997
+ },
31998
+ isValid: function() {
31999
+ return this._ok;
32000
+ },
32001
+ getOriginalInput: function() {
32002
+ return this._originalInput;
32003
+ },
32004
+ getFormat: function() {
32005
+ return this._format;
32006
+ },
32007
+ getAlpha: function() {
32008
+ return this._a;
32009
+ },
32010
+ getBrightness: function() {
32011
+ var rgb = this.toRgb();
32012
+ return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1e3;
32013
+ },
32014
+ getLuminance: function() {
32015
+ var rgb = this.toRgb();
32016
+ var RsRGB, GsRGB, BsRGB, R2, G, B2;
32017
+ RsRGB = rgb.r / 255;
32018
+ GsRGB = rgb.g / 255;
32019
+ BsRGB = rgb.b / 255;
32020
+ if (RsRGB <= 0.03928) {
32021
+ R2 = RsRGB / 12.92;
32022
+ } else {
32023
+ R2 = Math2.pow((RsRGB + 0.055) / 1.055, 2.4);
32024
+ }
32025
+ if (GsRGB <= 0.03928) {
32026
+ G = GsRGB / 12.92;
32027
+ } else {
32028
+ G = Math2.pow((GsRGB + 0.055) / 1.055, 2.4);
32029
+ }
32030
+ if (BsRGB <= 0.03928) {
32031
+ B2 = BsRGB / 12.92;
32032
+ } else {
32033
+ B2 = Math2.pow((BsRGB + 0.055) / 1.055, 2.4);
32034
+ }
32035
+ return 0.2126 * R2 + 0.7152 * G + 0.0722 * B2;
32036
+ },
32037
+ setAlpha: function(value) {
32038
+ this._a = boundAlpha(value);
32039
+ this._roundA = mathRound(100 * this._a) / 100;
32040
+ return this;
32041
+ },
32042
+ toHsv: function() {
32043
+ var hsv = rgbToHsv(this._r, this._g, this._b);
32044
+ return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this._a };
32045
+ },
32046
+ toHsvString: function() {
32047
+ var hsv = rgbToHsv(this._r, this._g, this._b);
32048
+ var h2 = mathRound(hsv.h * 360), s2 = mathRound(hsv.s * 100), v2 = mathRound(hsv.v * 100);
32049
+ return this._a == 1 ? "hsv(" + h2 + ", " + s2 + "%, " + v2 + "%)" : "hsva(" + h2 + ", " + s2 + "%, " + v2 + "%, " + this._roundA + ")";
32050
+ },
32051
+ toHsl: function() {
32052
+ var hsl = rgbToHsl(this._r, this._g, this._b);
32053
+ return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this._a };
32054
+ },
32055
+ toHslString: function() {
32056
+ var hsl = rgbToHsl(this._r, this._g, this._b);
32057
+ var h2 = mathRound(hsl.h * 360), s2 = mathRound(hsl.s * 100), l2 = mathRound(hsl.l * 100);
32058
+ return this._a == 1 ? "hsl(" + h2 + ", " + s2 + "%, " + l2 + "%)" : "hsla(" + h2 + ", " + s2 + "%, " + l2 + "%, " + this._roundA + ")";
32059
+ },
32060
+ toHex: function(allow3Char) {
32061
+ return rgbToHex(this._r, this._g, this._b, allow3Char);
32062
+ },
32063
+ toHexString: function(allow3Char) {
32064
+ return "#" + this.toHex(allow3Char);
32065
+ },
32066
+ toHex8: function(allow4Char) {
32067
+ return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);
32068
+ },
32069
+ toHex8String: function(allow4Char) {
32070
+ return "#" + this.toHex8(allow4Char);
32071
+ },
32072
+ toRgb: function() {
32073
+ return { r: mathRound(this._r), g: mathRound(this._g), b: mathRound(this._b), a: this._a };
32074
+ },
32075
+ toRgbString: function() {
32076
+ return this._a == 1 ? "rgb(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" : "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")";
32077
+ },
32078
+ toPercentageRgb: function() {
32079
+ return { r: mathRound(bound01(this._r, 255) * 100) + "%", g: mathRound(bound01(this._g, 255) * 100) + "%", b: mathRound(bound01(this._b, 255) * 100) + "%", a: this._a };
32080
+ },
32081
+ toPercentageRgbString: function() {
32082
+ return this._a == 1 ? "rgb(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" : "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")";
32083
+ },
32084
+ toName: function() {
32085
+ if (this._a === 0) {
32086
+ return "transparent";
32087
+ }
32088
+ if (this._a < 1) {
32089
+ return false;
32090
+ }
32091
+ return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;
32092
+ },
32093
+ toFilter: function(secondColor) {
32094
+ var hex8String = "#" + rgbaToArgbHex(this._r, this._g, this._b, this._a);
32095
+ var secondHex8String = hex8String;
32096
+ var gradientType = this._gradientType ? "GradientType = 1, " : "";
32097
+ if (secondColor) {
32098
+ var s2 = tinycolor2(secondColor);
32099
+ secondHex8String = "#" + rgbaToArgbHex(s2._r, s2._g, s2._b, s2._a);
32100
+ }
32101
+ return "progid:DXImageTransform.Microsoft.gradient(" + gradientType + "startColorstr=" + hex8String + ",endColorstr=" + secondHex8String + ")";
32102
+ },
32103
+ toString: function(format2) {
32104
+ var formatSet = !!format2;
32105
+ format2 = format2 || this._format;
32106
+ var formattedString = false;
32107
+ var hasAlpha = this._a < 1 && this._a >= 0;
32108
+ var needsAlphaFormat = !formatSet && hasAlpha && (format2 === "hex" || format2 === "hex6" || format2 === "hex3" || format2 === "hex4" || format2 === "hex8" || format2 === "name");
32109
+ if (needsAlphaFormat) {
32110
+ if (format2 === "name" && this._a === 0) {
32111
+ return this.toName();
32112
+ }
32113
+ return this.toRgbString();
32114
+ }
32115
+ if (format2 === "rgb") {
32116
+ formattedString = this.toRgbString();
32117
+ }
32118
+ if (format2 === "prgb") {
32119
+ formattedString = this.toPercentageRgbString();
32120
+ }
32121
+ if (format2 === "hex" || format2 === "hex6") {
32122
+ formattedString = this.toHexString();
32123
+ }
32124
+ if (format2 === "hex3") {
32125
+ formattedString = this.toHexString(true);
32126
+ }
32127
+ if (format2 === "hex4") {
32128
+ formattedString = this.toHex8String(true);
32129
+ }
32130
+ if (format2 === "hex8") {
32131
+ formattedString = this.toHex8String();
32132
+ }
32133
+ if (format2 === "name") {
32134
+ formattedString = this.toName();
32135
+ }
32136
+ if (format2 === "hsl") {
32137
+ formattedString = this.toHslString();
32138
+ }
32139
+ if (format2 === "hsv") {
32140
+ formattedString = this.toHsvString();
32141
+ }
32142
+ return formattedString || this.toHexString();
32143
+ },
32144
+ clone: function() {
32145
+ return tinycolor2(this.toString());
32146
+ },
32147
+ _applyModification: function(fn2, args) {
32148
+ var color = fn2.apply(null, [this].concat([].slice.call(args)));
32149
+ this._r = color._r;
32150
+ this._g = color._g;
32151
+ this._b = color._b;
32152
+ this.setAlpha(color._a);
32153
+ return this;
32154
+ },
32155
+ lighten: function() {
32156
+ return this._applyModification(lighten, arguments);
32157
+ },
32158
+ brighten: function() {
32159
+ return this._applyModification(brighten, arguments);
32160
+ },
32161
+ darken: function() {
32162
+ return this._applyModification(darken, arguments);
32163
+ },
32164
+ desaturate: function() {
32165
+ return this._applyModification(desaturate, arguments);
32166
+ },
32167
+ saturate: function() {
32168
+ return this._applyModification(saturate, arguments);
32169
+ },
32170
+ greyscale: function() {
32171
+ return this._applyModification(greyscale, arguments);
32172
+ },
32173
+ spin: function() {
32174
+ return this._applyModification(spin, arguments);
32175
+ },
32176
+ _applyCombination: function(fn2, args) {
32177
+ return fn2.apply(null, [this].concat([].slice.call(args)));
32178
+ },
32179
+ analogous: function() {
32180
+ return this._applyCombination(analogous, arguments);
32181
+ },
32182
+ complement: function() {
32183
+ return this._applyCombination(complement, arguments);
32184
+ },
32185
+ monochromatic: function() {
32186
+ return this._applyCombination(monochromatic, arguments);
32187
+ },
32188
+ splitcomplement: function() {
32189
+ return this._applyCombination(splitcomplement, arguments);
32190
+ },
32191
+ triad: function() {
32192
+ return this._applyCombination(triad, arguments);
32193
+ },
32194
+ tetrad: function() {
32195
+ return this._applyCombination(tetrad, arguments);
32196
+ }
32197
+ };
32198
+ tinycolor2.fromRatio = function(color, opts) {
32199
+ if (typeof color == "object") {
32200
+ var newColor = {};
32201
+ for (var i2 in color) {
32202
+ if (color.hasOwnProperty(i2)) {
32203
+ if (i2 === "a") {
32204
+ newColor[i2] = color[i2];
32205
+ } else {
32206
+ newColor[i2] = convertToPercentage(color[i2]);
32207
+ }
32208
+ }
32209
+ }
32210
+ color = newColor;
32211
+ }
32212
+ return tinycolor2(color, opts);
32213
+ };
32214
+ function inputToRGB(color) {
32215
+ var rgb = { r: 0, g: 0, b: 0 };
32216
+ var a2 = 1;
32217
+ var s2 = null;
32218
+ var v2 = null;
32219
+ var l2 = null;
32220
+ var ok = false;
32221
+ var format2 = false;
32222
+ if (typeof color == "string") {
32223
+ color = stringInputToObject(color);
32224
+ }
32225
+ if (typeof color == "object") {
32226
+ if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {
32227
+ rgb = rgbToRgb(color.r, color.g, color.b);
32228
+ ok = true;
32229
+ format2 = String(color.r).substr(-1) === "%" ? "prgb" : "rgb";
32230
+ } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {
32231
+ s2 = convertToPercentage(color.s);
32232
+ v2 = convertToPercentage(color.v);
32233
+ rgb = hsvToRgb(color.h, s2, v2);
32234
+ ok = true;
32235
+ format2 = "hsv";
32236
+ } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {
32237
+ s2 = convertToPercentage(color.s);
32238
+ l2 = convertToPercentage(color.l);
32239
+ rgb = hslToRgb(color.h, s2, l2);
32240
+ ok = true;
32241
+ format2 = "hsl";
32242
+ }
32243
+ if (color.hasOwnProperty("a")) {
32244
+ a2 = color.a;
32245
+ }
32246
+ }
32247
+ a2 = boundAlpha(a2);
32248
+ return {
32249
+ ok,
32250
+ format: color.format || format2,
32251
+ r: mathMin(255, mathMax(rgb.r, 0)),
32252
+ g: mathMin(255, mathMax(rgb.g, 0)),
32253
+ b: mathMin(255, mathMax(rgb.b, 0)),
32254
+ a: a2
32255
+ };
32256
+ }
32257
+ function rgbToRgb(r2, g2, b2) {
32258
+ return {
32259
+ r: bound01(r2, 255) * 255,
32260
+ g: bound01(g2, 255) * 255,
32261
+ b: bound01(b2, 255) * 255
32262
+ };
32263
+ }
32264
+ function rgbToHsl(r2, g2, b2) {
32265
+ r2 = bound01(r2, 255);
32266
+ g2 = bound01(g2, 255);
32267
+ b2 = bound01(b2, 255);
32268
+ var max2 = mathMax(r2, g2, b2), min2 = mathMin(r2, g2, b2);
32269
+ var h2, s2, l2 = (max2 + min2) / 2;
32270
+ if (max2 == min2) {
32271
+ h2 = s2 = 0;
32272
+ } else {
32273
+ var d2 = max2 - min2;
32274
+ s2 = l2 > 0.5 ? d2 / (2 - max2 - min2) : d2 / (max2 + min2);
32275
+ switch (max2) {
32276
+ case r2:
32277
+ h2 = (g2 - b2) / d2 + (g2 < b2 ? 6 : 0);
32278
+ break;
32279
+ case g2:
32280
+ h2 = (b2 - r2) / d2 + 2;
32281
+ break;
32282
+ case b2:
32283
+ h2 = (r2 - g2) / d2 + 4;
32284
+ break;
32285
+ }
32286
+ h2 /= 6;
32287
+ }
32288
+ return { h: h2, s: s2, l: l2 };
32289
+ }
32290
+ function hslToRgb(h2, s2, l2) {
32291
+ var r2, g2, b2;
32292
+ h2 = bound01(h2, 360);
32293
+ s2 = bound01(s2, 100);
32294
+ l2 = bound01(l2, 100);
32295
+ function hue2rgb(p3, q3, t2) {
32296
+ if (t2 < 0)
32297
+ t2 += 1;
32298
+ if (t2 > 1)
32299
+ t2 -= 1;
32300
+ if (t2 < 1 / 6)
32301
+ return p3 + (q3 - p3) * 6 * t2;
32302
+ if (t2 < 1 / 2)
32303
+ return q3;
32304
+ if (t2 < 2 / 3)
32305
+ return p3 + (q3 - p3) * (2 / 3 - t2) * 6;
32306
+ return p3;
32307
+ }
32308
+ if (s2 === 0) {
32309
+ r2 = g2 = b2 = l2;
32310
+ } else {
32311
+ var q2 = l2 < 0.5 ? l2 * (1 + s2) : l2 + s2 - l2 * s2;
32312
+ var p2 = 2 * l2 - q2;
32313
+ r2 = hue2rgb(p2, q2, h2 + 1 / 3);
32314
+ g2 = hue2rgb(p2, q2, h2);
32315
+ b2 = hue2rgb(p2, q2, h2 - 1 / 3);
32316
+ }
32317
+ return { r: r2 * 255, g: g2 * 255, b: b2 * 255 };
32318
+ }
32319
+ function rgbToHsv(r2, g2, b2) {
32320
+ r2 = bound01(r2, 255);
32321
+ g2 = bound01(g2, 255);
32322
+ b2 = bound01(b2, 255);
32323
+ var max2 = mathMax(r2, g2, b2), min2 = mathMin(r2, g2, b2);
32324
+ var h2, s2, v2 = max2;
32325
+ var d2 = max2 - min2;
32326
+ s2 = max2 === 0 ? 0 : d2 / max2;
32327
+ if (max2 == min2) {
32328
+ h2 = 0;
32329
+ } else {
32330
+ switch (max2) {
32331
+ case r2:
32332
+ h2 = (g2 - b2) / d2 + (g2 < b2 ? 6 : 0);
32333
+ break;
32334
+ case g2:
32335
+ h2 = (b2 - r2) / d2 + 2;
32336
+ break;
32337
+ case b2:
32338
+ h2 = (r2 - g2) / d2 + 4;
32339
+ break;
32340
+ }
32341
+ h2 /= 6;
32342
+ }
32343
+ return { h: h2, s: s2, v: v2 };
32344
+ }
32345
+ function hsvToRgb(h2, s2, v2) {
32346
+ h2 = bound01(h2, 360) * 6;
32347
+ s2 = bound01(s2, 100);
32348
+ v2 = bound01(v2, 100);
32349
+ var i2 = Math2.floor(h2), f2 = h2 - i2, p2 = v2 * (1 - s2), q2 = v2 * (1 - f2 * s2), t2 = v2 * (1 - (1 - f2) * s2), mod = i2 % 6, r2 = [v2, q2, p2, p2, t2, v2][mod], g2 = [t2, v2, v2, q2, p2, p2][mod], b2 = [p2, p2, t2, v2, v2, q2][mod];
32350
+ return { r: r2 * 255, g: g2 * 255, b: b2 * 255 };
32351
+ }
32352
+ function rgbToHex(r2, g2, b2, allow3Char) {
32353
+ var hex = [
32354
+ pad2(mathRound(r2).toString(16)),
32355
+ pad2(mathRound(g2).toString(16)),
32356
+ pad2(mathRound(b2).toString(16))
32357
+ ];
32358
+ if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {
32359
+ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);
32360
+ }
32361
+ return hex.join("");
32362
+ }
32363
+ function rgbaToHex(r2, g2, b2, a2, allow4Char) {
32364
+ var hex = [
32365
+ pad2(mathRound(r2).toString(16)),
32366
+ pad2(mathRound(g2).toString(16)),
32367
+ pad2(mathRound(b2).toString(16)),
32368
+ pad2(convertDecimalToHex(a2))
32369
+ ];
32370
+ if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {
32371
+ return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);
32372
+ }
32373
+ return hex.join("");
32374
+ }
32375
+ function rgbaToArgbHex(r2, g2, b2, a2) {
32376
+ var hex = [
32377
+ pad2(convertDecimalToHex(a2)),
32378
+ pad2(mathRound(r2).toString(16)),
32379
+ pad2(mathRound(g2).toString(16)),
32380
+ pad2(mathRound(b2).toString(16))
32381
+ ];
32382
+ return hex.join("");
32383
+ }
32384
+ tinycolor2.equals = function(color1, color2) {
32385
+ if (!color1 || !color2) {
32386
+ return false;
32387
+ }
32388
+ return tinycolor2(color1).toRgbString() == tinycolor2(color2).toRgbString();
32389
+ };
32390
+ tinycolor2.random = function() {
32391
+ return tinycolor2.fromRatio({
32392
+ r: mathRandom(),
32393
+ g: mathRandom(),
32394
+ b: mathRandom()
32395
+ });
32396
+ };
32397
+ function desaturate(color, amount) {
32398
+ amount = amount === 0 ? 0 : amount || 10;
32399
+ var hsl = tinycolor2(color).toHsl();
32400
+ hsl.s -= amount / 100;
32401
+ hsl.s = clamp01(hsl.s);
32402
+ return tinycolor2(hsl);
32403
+ }
32404
+ function saturate(color, amount) {
32405
+ amount = amount === 0 ? 0 : amount || 10;
32406
+ var hsl = tinycolor2(color).toHsl();
32407
+ hsl.s += amount / 100;
32408
+ hsl.s = clamp01(hsl.s);
32409
+ return tinycolor2(hsl);
32410
+ }
32411
+ function greyscale(color) {
32412
+ return tinycolor2(color).desaturate(100);
32413
+ }
32414
+ function lighten(color, amount) {
32415
+ amount = amount === 0 ? 0 : amount || 10;
32416
+ var hsl = tinycolor2(color).toHsl();
32417
+ hsl.l += amount / 100;
32418
+ hsl.l = clamp01(hsl.l);
32419
+ return tinycolor2(hsl);
32420
+ }
32421
+ function brighten(color, amount) {
32422
+ amount = amount === 0 ? 0 : amount || 10;
32423
+ var rgb = tinycolor2(color).toRgb();
32424
+ rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * -(amount / 100))));
32425
+ rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * -(amount / 100))));
32426
+ rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * -(amount / 100))));
32427
+ return tinycolor2(rgb);
32428
+ }
32429
+ function darken(color, amount) {
32430
+ amount = amount === 0 ? 0 : amount || 10;
32431
+ var hsl = tinycolor2(color).toHsl();
32432
+ hsl.l -= amount / 100;
32433
+ hsl.l = clamp01(hsl.l);
32434
+ return tinycolor2(hsl);
32435
+ }
32436
+ function spin(color, amount) {
32437
+ var hsl = tinycolor2(color).toHsl();
32438
+ var hue = (hsl.h + amount) % 360;
32439
+ hsl.h = hue < 0 ? 360 + hue : hue;
32440
+ return tinycolor2(hsl);
32441
+ }
32442
+ function complement(color) {
32443
+ var hsl = tinycolor2(color).toHsl();
32444
+ hsl.h = (hsl.h + 180) % 360;
32445
+ return tinycolor2(hsl);
32446
+ }
32447
+ function triad(color) {
32448
+ var hsl = tinycolor2(color).toHsl();
32449
+ var h2 = hsl.h;
32450
+ return [
32451
+ tinycolor2(color),
32452
+ tinycolor2({ h: (h2 + 120) % 360, s: hsl.s, l: hsl.l }),
32453
+ tinycolor2({ h: (h2 + 240) % 360, s: hsl.s, l: hsl.l })
32454
+ ];
32455
+ }
32456
+ function tetrad(color) {
32457
+ var hsl = tinycolor2(color).toHsl();
32458
+ var h2 = hsl.h;
32459
+ return [
32460
+ tinycolor2(color),
32461
+ tinycolor2({ h: (h2 + 90) % 360, s: hsl.s, l: hsl.l }),
32462
+ tinycolor2({ h: (h2 + 180) % 360, s: hsl.s, l: hsl.l }),
32463
+ tinycolor2({ h: (h2 + 270) % 360, s: hsl.s, l: hsl.l })
32464
+ ];
32465
+ }
32466
+ function splitcomplement(color) {
32467
+ var hsl = tinycolor2(color).toHsl();
32468
+ var h2 = hsl.h;
32469
+ return [
32470
+ tinycolor2(color),
32471
+ tinycolor2({ h: (h2 + 72) % 360, s: hsl.s, l: hsl.l }),
32472
+ tinycolor2({ h: (h2 + 216) % 360, s: hsl.s, l: hsl.l })
32473
+ ];
32474
+ }
32475
+ function analogous(color, results, slices) {
32476
+ results = results || 6;
32477
+ slices = slices || 30;
32478
+ var hsl = tinycolor2(color).toHsl();
32479
+ var part = 360 / slices;
32480
+ var ret = [tinycolor2(color)];
32481
+ for (hsl.h = (hsl.h - (part * results >> 1) + 720) % 360; --results; ) {
32482
+ hsl.h = (hsl.h + part) % 360;
32483
+ ret.push(tinycolor2(hsl));
32484
+ }
32485
+ return ret;
32486
+ }
32487
+ function monochromatic(color, results) {
32488
+ results = results || 6;
32489
+ var hsv = tinycolor2(color).toHsv();
32490
+ var h2 = hsv.h, s2 = hsv.s, v2 = hsv.v;
32491
+ var ret = [];
32492
+ var modification = 1 / results;
32493
+ while (results--) {
32494
+ ret.push(tinycolor2({ h: h2, s: s2, v: v2 }));
32495
+ v2 = (v2 + modification) % 1;
32496
+ }
32497
+ return ret;
32498
+ }
32499
+ tinycolor2.mix = function(color1, color2, amount) {
32500
+ amount = amount === 0 ? 0 : amount || 50;
32501
+ var rgb1 = tinycolor2(color1).toRgb();
32502
+ var rgb2 = tinycolor2(color2).toRgb();
32503
+ var p2 = amount / 100;
32504
+ var rgba = {
32505
+ r: (rgb2.r - rgb1.r) * p2 + rgb1.r,
32506
+ g: (rgb2.g - rgb1.g) * p2 + rgb1.g,
32507
+ b: (rgb2.b - rgb1.b) * p2 + rgb1.b,
32508
+ a: (rgb2.a - rgb1.a) * p2 + rgb1.a
32509
+ };
32510
+ return tinycolor2(rgba);
32511
+ };
32512
+ tinycolor2.readability = function(color1, color2) {
32513
+ var c1 = tinycolor2(color1);
32514
+ var c2 = tinycolor2(color2);
32515
+ return (Math2.max(c1.getLuminance(), c2.getLuminance()) + 0.05) / (Math2.min(c1.getLuminance(), c2.getLuminance()) + 0.05);
32516
+ };
32517
+ tinycolor2.isReadable = function(color1, color2, wcag2) {
32518
+ var readability = tinycolor2.readability(color1, color2);
32519
+ var wcag2Parms, out;
32520
+ out = false;
32521
+ wcag2Parms = validateWCAG2Parms(wcag2);
32522
+ switch (wcag2Parms.level + wcag2Parms.size) {
32523
+ case "AAsmall":
32524
+ case "AAAlarge":
32525
+ out = readability >= 4.5;
32526
+ break;
32527
+ case "AAlarge":
32528
+ out = readability >= 3;
32529
+ break;
32530
+ case "AAAsmall":
32531
+ out = readability >= 7;
32532
+ break;
32533
+ }
32534
+ return out;
32535
+ };
32536
+ tinycolor2.mostReadable = function(baseColor, colorList, args) {
32537
+ var bestColor = null;
32538
+ var bestScore = 0;
32539
+ var readability;
32540
+ var includeFallbackColors, level, size;
32541
+ args = args || {};
32542
+ includeFallbackColors = args.includeFallbackColors;
32543
+ level = args.level;
32544
+ size = args.size;
32545
+ for (var i2 = 0; i2 < colorList.length; i2++) {
32546
+ readability = tinycolor2.readability(baseColor, colorList[i2]);
32547
+ if (readability > bestScore) {
32548
+ bestScore = readability;
32549
+ bestColor = tinycolor2(colorList[i2]);
32550
+ }
32551
+ }
32552
+ if (tinycolor2.isReadable(baseColor, bestColor, { "level": level, "size": size }) || !includeFallbackColors) {
32553
+ return bestColor;
32554
+ } else {
32555
+ args.includeFallbackColors = false;
32556
+ return tinycolor2.mostReadable(baseColor, ["#fff", "#000"], args);
32557
+ }
32558
+ };
32559
+ var names = tinycolor2.names = {
32560
+ aliceblue: "f0f8ff",
32561
+ antiquewhite: "faebd7",
32562
+ aqua: "0ff",
32563
+ aquamarine: "7fffd4",
32564
+ azure: "f0ffff",
32565
+ beige: "f5f5dc",
32566
+ bisque: "ffe4c4",
32567
+ black: "000",
32568
+ blanchedalmond: "ffebcd",
32569
+ blue: "00f",
32570
+ blueviolet: "8a2be2",
32571
+ brown: "a52a2a",
32572
+ burlywood: "deb887",
32573
+ burntsienna: "ea7e5d",
32574
+ cadetblue: "5f9ea0",
32575
+ chartreuse: "7fff00",
32576
+ chocolate: "d2691e",
32577
+ coral: "ff7f50",
32578
+ cornflowerblue: "6495ed",
32579
+ cornsilk: "fff8dc",
32580
+ crimson: "dc143c",
32581
+ cyan: "0ff",
32582
+ darkblue: "00008b",
32583
+ darkcyan: "008b8b",
32584
+ darkgoldenrod: "b8860b",
32585
+ darkgray: "a9a9a9",
32586
+ darkgreen: "006400",
32587
+ darkgrey: "a9a9a9",
32588
+ darkkhaki: "bdb76b",
32589
+ darkmagenta: "8b008b",
32590
+ darkolivegreen: "556b2f",
32591
+ darkorange: "ff8c00",
32592
+ darkorchid: "9932cc",
32593
+ darkred: "8b0000",
32594
+ darksalmon: "e9967a",
32595
+ darkseagreen: "8fbc8f",
32596
+ darkslateblue: "483d8b",
32597
+ darkslategray: "2f4f4f",
32598
+ darkslategrey: "2f4f4f",
32599
+ darkturquoise: "00ced1",
32600
+ darkviolet: "9400d3",
32601
+ deeppink: "ff1493",
32602
+ deepskyblue: "00bfff",
32603
+ dimgray: "696969",
32604
+ dimgrey: "696969",
32605
+ dodgerblue: "1e90ff",
32606
+ firebrick: "b22222",
32607
+ floralwhite: "fffaf0",
32608
+ forestgreen: "228b22",
32609
+ fuchsia: "f0f",
32610
+ gainsboro: "dcdcdc",
32611
+ ghostwhite: "f8f8ff",
32612
+ gold: "ffd700",
32613
+ goldenrod: "daa520",
32614
+ gray: "808080",
32615
+ green: "008000",
32616
+ greenyellow: "adff2f",
32617
+ grey: "808080",
32618
+ honeydew: "f0fff0",
32619
+ hotpink: "ff69b4",
32620
+ indianred: "cd5c5c",
32621
+ indigo: "4b0082",
32622
+ ivory: "fffff0",
32623
+ khaki: "f0e68c",
32624
+ lavender: "e6e6fa",
32625
+ lavenderblush: "fff0f5",
32626
+ lawngreen: "7cfc00",
32627
+ lemonchiffon: "fffacd",
32628
+ lightblue: "add8e6",
32629
+ lightcoral: "f08080",
32630
+ lightcyan: "e0ffff",
32631
+ lightgoldenrodyellow: "fafad2",
32632
+ lightgray: "d3d3d3",
32633
+ lightgreen: "90ee90",
32634
+ lightgrey: "d3d3d3",
32635
+ lightpink: "ffb6c1",
32636
+ lightsalmon: "ffa07a",
32637
+ lightseagreen: "20b2aa",
32638
+ lightskyblue: "87cefa",
32639
+ lightslategray: "789",
32640
+ lightslategrey: "789",
32641
+ lightsteelblue: "b0c4de",
32642
+ lightyellow: "ffffe0",
32643
+ lime: "0f0",
32644
+ limegreen: "32cd32",
32645
+ linen: "faf0e6",
32646
+ magenta: "f0f",
32647
+ maroon: "800000",
32648
+ mediumaquamarine: "66cdaa",
32649
+ mediumblue: "0000cd",
32650
+ mediumorchid: "ba55d3",
32651
+ mediumpurple: "9370db",
32652
+ mediumseagreen: "3cb371",
32653
+ mediumslateblue: "7b68ee",
32654
+ mediumspringgreen: "00fa9a",
32655
+ mediumturquoise: "48d1cc",
32656
+ mediumvioletred: "c71585",
32657
+ midnightblue: "191970",
32658
+ mintcream: "f5fffa",
32659
+ mistyrose: "ffe4e1",
32660
+ moccasin: "ffe4b5",
32661
+ navajowhite: "ffdead",
32662
+ navy: "000080",
32663
+ oldlace: "fdf5e6",
32664
+ olive: "808000",
32665
+ olivedrab: "6b8e23",
32666
+ orange: "ffa500",
32667
+ orangered: "ff4500",
32668
+ orchid: "da70d6",
32669
+ palegoldenrod: "eee8aa",
32670
+ palegreen: "98fb98",
32671
+ paleturquoise: "afeeee",
32672
+ palevioletred: "db7093",
32673
+ papayawhip: "ffefd5",
32674
+ peachpuff: "ffdab9",
32675
+ peru: "cd853f",
32676
+ pink: "ffc0cb",
32677
+ plum: "dda0dd",
32678
+ powderblue: "b0e0e6",
32679
+ purple: "800080",
32680
+ rebeccapurple: "663399",
32681
+ red: "f00",
32682
+ rosybrown: "bc8f8f",
32683
+ royalblue: "4169e1",
32684
+ saddlebrown: "8b4513",
32685
+ salmon: "fa8072",
32686
+ sandybrown: "f4a460",
32687
+ seagreen: "2e8b57",
32688
+ seashell: "fff5ee",
32689
+ sienna: "a0522d",
32690
+ silver: "c0c0c0",
32691
+ skyblue: "87ceeb",
32692
+ slateblue: "6a5acd",
32693
+ slategray: "708090",
32694
+ slategrey: "708090",
32695
+ snow: "fffafa",
32696
+ springgreen: "00ff7f",
32697
+ steelblue: "4682b4",
32698
+ tan: "d2b48c",
32699
+ teal: "008080",
32700
+ thistle: "d8bfd8",
32701
+ tomato: "ff6347",
32702
+ turquoise: "40e0d0",
32703
+ violet: "ee82ee",
32704
+ wheat: "f5deb3",
32705
+ white: "fff",
32706
+ whitesmoke: "f5f5f5",
32707
+ yellow: "ff0",
32708
+ yellowgreen: "9acd32"
32709
+ };
32710
+ var hexNames = tinycolor2.hexNames = flip2(names);
32711
+ function flip2(o2) {
32712
+ var flipped = {};
32713
+ for (var i2 in o2) {
32714
+ if (o2.hasOwnProperty(i2)) {
32715
+ flipped[o2[i2]] = i2;
32716
+ }
32717
+ }
32718
+ return flipped;
32719
+ }
32720
+ function boundAlpha(a2) {
32721
+ a2 = parseFloat(a2);
32722
+ if (isNaN(a2) || a2 < 0 || a2 > 1) {
32723
+ a2 = 1;
32724
+ }
32725
+ return a2;
32726
+ }
32727
+ function bound01(n2, max2) {
32728
+ if (isOnePointZero(n2)) {
32729
+ n2 = "100%";
32730
+ }
32731
+ var processPercent = isPercentage(n2);
32732
+ n2 = mathMin(max2, mathMax(0, parseFloat(n2)));
32733
+ if (processPercent) {
32734
+ n2 = parseInt(n2 * max2, 10) / 100;
32735
+ }
32736
+ if (Math2.abs(n2 - max2) < 1e-6) {
32737
+ return 1;
32738
+ }
32739
+ return n2 % max2 / parseFloat(max2);
32740
+ }
32741
+ function clamp01(val) {
32742
+ return mathMin(1, mathMax(0, val));
32743
+ }
32744
+ function parseIntFromHex(val) {
32745
+ return parseInt(val, 16);
32746
+ }
32747
+ function isOnePointZero(n2) {
32748
+ return typeof n2 == "string" && n2.indexOf(".") != -1 && parseFloat(n2) === 1;
32749
+ }
32750
+ function isPercentage(n2) {
32751
+ return typeof n2 === "string" && n2.indexOf("%") != -1;
32752
+ }
32753
+ function pad2(c2) {
32754
+ return c2.length == 1 ? "0" + c2 : "" + c2;
32755
+ }
32756
+ function convertToPercentage(n2) {
32757
+ if (n2 <= 1) {
32758
+ n2 = n2 * 100 + "%";
32759
+ }
32760
+ return n2;
32761
+ }
32762
+ function convertDecimalToHex(d2) {
32763
+ return Math2.round(parseFloat(d2) * 255).toString(16);
32764
+ }
32765
+ function convertHexToDecimal(h2) {
32766
+ return parseIntFromHex(h2) / 255;
32767
+ }
32768
+ var matchers = function() {
32769
+ var CSS_INTEGER = "[-\\+]?\\d+%?";
32770
+ var CSS_NUMBER = "[-\\+]?\\d*\\.\\d+%?";
32771
+ var CSS_UNIT = "(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")";
32772
+ var PERMISSIVE_MATCH3 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
32773
+ var PERMISSIVE_MATCH4 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
32774
+ return {
32775
+ CSS_UNIT: new RegExp(CSS_UNIT),
32776
+ rgb: new RegExp("rgb" + PERMISSIVE_MATCH3),
32777
+ rgba: new RegExp("rgba" + PERMISSIVE_MATCH4),
32778
+ hsl: new RegExp("hsl" + PERMISSIVE_MATCH3),
32779
+ hsla: new RegExp("hsla" + PERMISSIVE_MATCH4),
32780
+ hsv: new RegExp("hsv" + PERMISSIVE_MATCH3),
32781
+ hsva: new RegExp("hsva" + PERMISSIVE_MATCH4),
32782
+ hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
32783
+ hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,
32784
+ hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
32785
+ hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/
32786
+ };
32787
+ }();
32788
+ function isValidCSSUnit(color) {
32789
+ return !!matchers.CSS_UNIT.exec(color);
32790
+ }
32791
+ function stringInputToObject(color) {
32792
+ color = color.replace(trimLeft, "").replace(trimRight, "").toLowerCase();
32793
+ var named = false;
32794
+ if (names[color]) {
32795
+ color = names[color];
32796
+ named = true;
32797
+ } else if (color == "transparent") {
32798
+ return { r: 0, g: 0, b: 0, a: 0, format: "name" };
32799
+ }
32800
+ var match2;
32801
+ if (match2 = matchers.rgb.exec(color)) {
32802
+ return { r: match2[1], g: match2[2], b: match2[3] };
32803
+ }
32804
+ if (match2 = matchers.rgba.exec(color)) {
32805
+ return { r: match2[1], g: match2[2], b: match2[3], a: match2[4] };
32806
+ }
32807
+ if (match2 = matchers.hsl.exec(color)) {
32808
+ return { h: match2[1], s: match2[2], l: match2[3] };
32809
+ }
32810
+ if (match2 = matchers.hsla.exec(color)) {
32811
+ return { h: match2[1], s: match2[2], l: match2[3], a: match2[4] };
32812
+ }
32813
+ if (match2 = matchers.hsv.exec(color)) {
32814
+ return { h: match2[1], s: match2[2], v: match2[3] };
32815
+ }
32816
+ if (match2 = matchers.hsva.exec(color)) {
32817
+ return { h: match2[1], s: match2[2], v: match2[3], a: match2[4] };
32818
+ }
32819
+ if (match2 = matchers.hex8.exec(color)) {
32820
+ return {
32821
+ r: parseIntFromHex(match2[1]),
32822
+ g: parseIntFromHex(match2[2]),
32823
+ b: parseIntFromHex(match2[3]),
32824
+ a: convertHexToDecimal(match2[4]),
32825
+ format: named ? "name" : "hex8"
32826
+ };
32827
+ }
32828
+ if (match2 = matchers.hex6.exec(color)) {
32829
+ return {
32830
+ r: parseIntFromHex(match2[1]),
32831
+ g: parseIntFromHex(match2[2]),
32832
+ b: parseIntFromHex(match2[3]),
32833
+ format: named ? "name" : "hex"
32834
+ };
32835
+ }
32836
+ if (match2 = matchers.hex4.exec(color)) {
32837
+ return {
32838
+ r: parseIntFromHex(match2[1] + "" + match2[1]),
32839
+ g: parseIntFromHex(match2[2] + "" + match2[2]),
32840
+ b: parseIntFromHex(match2[3] + "" + match2[3]),
32841
+ a: convertHexToDecimal(match2[4] + "" + match2[4]),
32842
+ format: named ? "name" : "hex8"
32843
+ };
32844
+ }
32845
+ if (match2 = matchers.hex3.exec(color)) {
32846
+ return {
32847
+ r: parseIntFromHex(match2[1] + "" + match2[1]),
32848
+ g: parseIntFromHex(match2[2] + "" + match2[2]),
32849
+ b: parseIntFromHex(match2[3] + "" + match2[3]),
32850
+ format: named ? "name" : "hex"
32851
+ };
32852
+ }
32853
+ return false;
32854
+ }
32855
+ function validateWCAG2Parms(parms) {
32856
+ var level, size;
32857
+ parms = parms || { "level": "AA", "size": "small" };
32858
+ level = (parms.level || "AA").toUpperCase();
32859
+ size = (parms.size || "small").toLowerCase();
32860
+ if (level !== "AA" && level !== "AAA") {
32861
+ level = "AA";
32862
+ }
32863
+ if (size !== "small" && size !== "large") {
32864
+ size = "small";
32865
+ }
32866
+ return { "level": level, "size": size };
32867
+ }
32868
+ if (module.exports) {
32869
+ module.exports = tinycolor2;
32870
+ } else {
32871
+ window.tinycolor = tinycolor2;
32872
+ }
32873
+ })(Math);
32874
+ })(tinycolor$1);
32875
+ var tinycolor = tinycolor$1.exports;
32876
+ const inputContainerProps = {
32877
+ info: PropTypes.object.isRequired
32878
+ };
32879
+ var InputContainer = defineComponent({
32880
+ props: inputContainerProps,
32881
+ emits: ["tab", "input"],
32882
+ setup(props2, {
32883
+ emit
32884
+ }) {
32885
+ const handleTab = (e) => {
32886
+ if (props2.info.key === "a") {
32887
+ emit("tab", e);
32888
+ }
32889
+ };
32890
+ const handleInput = (e) => {
32891
+ const {
32892
+ key: key2
32893
+ } = props2.info;
32894
+ const {
32895
+ value
32896
+ } = e.target;
32897
+ emit("input", key2, value);
32898
+ };
32899
+ const colorPickerCls = computed(() => classes({
32900
+ error: props2.info.error
32901
+ }, "bk-color-picker-input-value"));
32902
+ return () => createVNode("div", {
32903
+ "class": "bk-color-picker-input-part"
32904
+ }, [createVNode("input", {
32905
+ "type": props2.info.name === "HEX" ? "text" : "number",
32906
+ "class": colorPickerCls.value,
32907
+ "value": props2.info.value,
32908
+ "onKeydown": handleTab,
32909
+ "onInput": handleInput
32910
+ }, null), createVNode("span", {
32911
+ "class": "bk-color-picker-input-text"
32912
+ }, [props2.info.name])]);
32913
+ }
32914
+ });
32915
+ const colorPickerProps$4 = {
32916
+ colorObj: PropTypes.object.isRequired
32917
+ };
32918
+ var ColorInput = defineComponent({
32919
+ name: "ColorPicker",
32920
+ props: colorPickerProps$4,
32921
+ emits: ["change", "tab"],
32922
+ setup(props2, {
32923
+ emit
32924
+ }) {
32925
+ const hex = reactive({
32926
+ key: "hex",
32927
+ name: "HEX",
32928
+ value: props2.colorObj.hex,
32929
+ error: false
32930
+ });
32931
+ const r2 = reactive({
32932
+ key: "r",
32933
+ name: "R",
32934
+ value: props2.colorObj.rgba.r.toString(),
32935
+ error: false
32936
+ });
32937
+ const g2 = reactive({
32938
+ key: "g",
32939
+ name: "G",
32940
+ value: props2.colorObj.rgba.g.toString(),
32941
+ error: false
32942
+ });
32943
+ const b2 = reactive({
32944
+ key: "b",
32945
+ name: "B",
32946
+ value: props2.colorObj.rgba.b.toString(),
32947
+ error: false
32948
+ });
32949
+ const a2 = reactive({
32950
+ key: "a",
32951
+ name: "Alpha",
32952
+ value: props2.colorObj.rgba.a.toString(),
32953
+ error: false
32954
+ });
32955
+ watch(() => props2.colorObj, (val) => {
32956
+ if (tinycolor(val.hex).toString() !== tinycolor(hex.value).toString()) {
32957
+ hex.value = val.hex;
32958
+ }
32959
+ r2.value = val.rgba.r.toString();
32960
+ g2.value = val.rgba.g.toString();
32961
+ b2.value = val.rgba.b.toString();
32962
+ a2.value = val.rgba.a.toString();
32963
+ validate();
32964
+ }, {
32965
+ deep: true
32966
+ });
32967
+ const handleAlphaTab = (e) => {
32968
+ emit("tab", e);
32969
+ };
32970
+ const handleInput = (key2, value) => {
32971
+ const colorList = {
32972
+ r: r2,
32973
+ g: g2,
32974
+ b: b2,
32975
+ a: a2,
32976
+ hex
32977
+ };
32978
+ colorList[key2].value = value;
32979
+ if (validate()) {
32980
+ const colorStr = key2 === "hex" ? hex.value : `rgba(${r2.value}, ${g2.value}, ${b2.value}, ${a2.value})`;
32981
+ emit("change", colorStr);
32982
+ }
32983
+ };
32984
+ const validate = () => {
32985
+ let result = true;
32986
+ if (hex.value.startsWith("#") && (hex.value.length === 4 || hex.value.length === 7) && !hex.value.slice(1).match(/[^0-9a-fA-F]/)) {
32987
+ hex.error = false;
32988
+ } else {
32989
+ hex.error = true;
32990
+ result = false;
32991
+ }
32992
+ if (a2.value !== "" && a2.value >= 0 && a2.value <= 1) {
32993
+ a2.error = false;
32994
+ } else {
32995
+ a2.error = true;
32996
+ result = false;
32997
+ }
32998
+ for (const colorInfo of [r2, g2, b2]) {
32999
+ const {
33000
+ value
33001
+ } = colorInfo;
33002
+ if (value !== "" && value >= 0 && value <= 255) {
33003
+ colorInfo.error = false;
33004
+ } else {
33005
+ colorInfo.error = true;
33006
+ result = false;
33007
+ }
33008
+ }
33009
+ return result;
33010
+ };
33011
+ return () => createVNode("div", {
33012
+ "class": "bk-color-picker-input"
33013
+ }, [createVNode("div", {
33014
+ "class": "bk-color-picker-input-hex"
33015
+ }, [createVNode(InputContainer, {
33016
+ "info": hex,
33017
+ "onInput": handleInput
33018
+ }, null)]), createVNode("div", {
33019
+ "class": "bk-color-picker-input-rgba"
33020
+ }, [createVNode(InputContainer, {
33021
+ "info": r2,
33022
+ "onInput": handleInput
33023
+ }, null), createVNode(InputContainer, {
33024
+ "info": g2,
33025
+ "onInput": handleInput
33026
+ }, null), createVNode(InputContainer, {
33027
+ "info": b2,
33028
+ "onInput": handleInput
33029
+ }, null), createVNode(InputContainer, {
33030
+ "info": a2,
33031
+ "onInput": handleInput,
33032
+ "onTab": handleAlphaTab
33033
+ }, null)])]);
33034
+ }
33035
+ });
33036
+ const formatColor = (colorParam) => {
33037
+ let colorValue = colorParam;
33038
+ if (colorParam === "") {
33039
+ colorValue = "#FFFFFF";
33040
+ }
33041
+ const tinyColor = tinycolor(colorParam);
33042
+ const hsl = tinyColor.toHsl();
33043
+ const hsv = tinyColor.toHsv();
33044
+ if (hsl.s === 0) {
33045
+ hsl.h = colorValue.h || 0;
33046
+ hsv.h = colorValue.h || 0;
33047
+ }
33048
+ if (hsv.v < 0.0164) {
33049
+ hsv.h = colorValue.h || 0;
33050
+ hsv.s = colorValue.s || 0;
33051
+ }
33052
+ if (hsl.l < 0.01) {
33053
+ hsl.h = colorValue.h || 0;
33054
+ hsl.s = colorValue.s || 0;
33055
+ }
33056
+ return {
33057
+ hsl,
33058
+ hsv,
33059
+ hex: tinyColor.toHexString().toUpperCase(),
33060
+ rgba: tinyColor.toRgb()
33061
+ };
33062
+ };
33063
+ const clamp = (value, min2, max2) => {
33064
+ if (value < min2) {
33065
+ return min2;
33066
+ }
33067
+ if (value > max2) {
33068
+ return max2;
33069
+ }
33070
+ return value;
33071
+ };
33072
+ const getTouches = (e, prop) => e.touches ? e.touches[0][prop] : 0;
33073
+ const toRGBAString = (rgba) => {
33074
+ const { r: r2, g: g2, b: b2, a: a2 } = rgba;
33075
+ return `rgba(${[r2, g2, b2, a2].join(",")})`;
33076
+ };
33077
+ const colorPickerProps$3 = {
33078
+ colorObj: PropTypes.object.isRequired
33079
+ };
33080
+ var HueSlider = defineComponent({
33081
+ name: "ColorPicker",
33082
+ props: colorPickerProps$3,
33083
+ emits: ["change"],
33084
+ setup(props2, {
33085
+ emit
33086
+ }) {
33087
+ const containerRef = ref(null);
33088
+ const pointerStyle = computed(() => ({
33089
+ left: `${props2.colorObj.hsv.h / 360 * 100}%`
33090
+ }));
33091
+ const handleArrowKeydown = (e) => {
33092
+ const {
33093
+ clientWidth
33094
+ } = containerRef.value;
33095
+ let left2 = props2.colorObj.hsv.h / 360 * clientWidth;
33096
+ const step = 2;
33097
+ const hugeStep = 10;
33098
+ switch (e.code) {
33099
+ case "ArrowLeft":
33100
+ e.preventDefault();
33101
+ left2 = clamp(left2 - step, 0, clientWidth);
33102
+ break;
33103
+ case "ArrowRight":
33104
+ e.preventDefault();
33105
+ left2 = clamp(left2 + step, 0, clientWidth);
33106
+ break;
33107
+ case "ArrowUp":
33108
+ e.preventDefault();
33109
+ left2 = clamp(left2 - hugeStep, 0, clientWidth);
33110
+ break;
33111
+ case "ArrowDown":
33112
+ e.preventDefault();
33113
+ left2 = clamp(left2 + hugeStep, 0, clientWidth);
33114
+ break;
33115
+ default:
33116
+ return;
33117
+ }
33118
+ handlePointChange(null, left2);
33119
+ };
33120
+ const handleMouseDown = (e) => {
33121
+ containerRef.value.focus();
33122
+ handlePointChange(e);
33123
+ window.addEventListener("mousemove", handlePointChange, {
33124
+ passive: true
33125
+ });
33126
+ window.addEventListener("mouseup", handleMouseUp);
33127
+ };
33128
+ const handleMouseUp = () => {
33129
+ window.removeEventListener("mousemove", handlePointChange);
33130
+ window.removeEventListener("mouseup", handleMouseUp);
33131
+ };
33132
+ const handlePointChange = (e, appointedLeft) => {
33133
+ const {
33134
+ clientWidth
33135
+ } = containerRef.value;
33136
+ const left2 = appointedLeft !== void 0 ? appointedLeft : getLeft(e);
33137
+ changeColor(left2 / clientWidth);
33138
+ };
33139
+ const getLeft = (e) => {
33140
+ const xOffset = containerRef.value.getBoundingClientRect().left + window.pageXOffset;
33141
+ const pageX = e.pageX || getTouches(e, "PageX");
33142
+ return clamp(pageX - xOffset, 0, containerRef.value.clientWidth);
33143
+ };
33144
+ const changeColor = (ratio) => {
33145
+ const {
33146
+ h: h2,
33147
+ s: s2,
33148
+ l: l2,
33149
+ a: a2
33150
+ } = props2.colorObj.hsl;
33151
+ const newHue = ratio * 360;
33152
+ if (h2 !== newHue) {
33153
+ emit("change", {
33154
+ h: newHue,
33155
+ s: s2,
33156
+ l: l2,
33157
+ a: a2
33158
+ });
33159
+ }
33160
+ };
33161
+ return () => createVNode("div", {
33162
+ "ref": containerRef,
33163
+ "tabindex": "0",
33164
+ "class": "bk-color-picker-hue",
33165
+ "onKeydown": handleArrowKeydown,
33166
+ "onMousedown": (e) => {
33167
+ e.stopPropagation();
33168
+ e.preventDefault();
33169
+ handleMouseDown(e);
33170
+ }
33171
+ }, [createVNode("div", {
33172
+ "class": "bk-color-picker-hue-pointer",
33173
+ "style": pointerStyle.value
33174
+ }, [createVNode("div", {
33175
+ "class": "bk-color-picker-hue-rectangle"
33176
+ }, null)])]);
33177
+ }
33178
+ });
33179
+ const colorPickerProps$2 = {
33180
+ colorObj: PropTypes.object.isRequired,
33181
+ recommend: PropTypes.oneOfType([PropTypes.array.def(() => []), PropTypes.bool.def(true)]).isRequired
33182
+ };
33183
+ var RecommendColors = defineComponent({
33184
+ props: colorPickerProps$2,
33185
+ emits: ["change", "tab"],
33186
+ setup(props2, {
33187
+ emit
33188
+ }) {
33189
+ const isFocused = ref(false);
33190
+ const selectedIndex = ref(-1);
33191
+ const selectedColor = ref(null);
33192
+ watch(() => props2.colorObj, () => {
33193
+ selectedIndex.value = -1;
33194
+ selectedColor.value = null;
33195
+ }, {
33196
+ deep: true
33197
+ });
33198
+ const colors = computed(() => getColorsFromRecommend(props2.recommend));
33199
+ const getColorClass = (color, index) => classes({
33200
+ "bk-color-picker-empty": color === "",
33201
+ "bk-color-picker-recommend-selected-color": isFocused.value && selectedIndex.value === index
33202
+ }, "bk-color-picker-recommend-color");
33203
+ const handleKeydown = (e) => {
33204
+ if (e.code === "Tab") {
33205
+ emit("tab", e);
33206
+ } else {
33207
+ let index = 0;
33208
+ const rowNum = 10;
33209
+ const max2 = colors.value.length - 1;
33210
+ switch (e.code) {
33211
+ case "ArrowLeft":
33212
+ e.preventDefault();
33213
+ index = clamp(selectedIndex.value - 1, 0, max2);
33214
+ break;
33215
+ case "ArrowRight":
33216
+ e.preventDefault();
33217
+ index = clamp(selectedIndex.value + 1, 0, max2);
33218
+ break;
33219
+ case "ArrowUp":
33220
+ e.preventDefault();
33221
+ index = clamp(selectedIndex.value - rowNum, 0, max2);
33222
+ break;
33223
+ case "ArrowDown":
33224
+ e.preventDefault();
33225
+ index = clamp(selectedIndex.value + rowNum, 0, max2);
33226
+ break;
33227
+ default:
33228
+ return;
33229
+ }
33230
+ selectColor(index);
33231
+ }
33232
+ };
33233
+ const selectColor = (index) => {
33234
+ const color = colors.value[index];
33235
+ emit("change", color);
33236
+ nextTick(() => {
33237
+ selectedIndex.value = index;
33238
+ selectedColor.value = color;
33239
+ });
33240
+ };
33241
+ const getColorsFromRecommend = (recommend) => {
33242
+ if (recommend === true) {
33243
+ return ["", "#ff4500", "#ff8c00", "#ffd700", "#90ee90", "#ddffff", "#00ced1", "#3a84ff", "#a933f5", "#db7093", "#000000", "#494949", "#9B9B9B", "#ffffff"];
33244
+ }
33245
+ if (Array.isArray(recommend)) {
33246
+ return recommend.map((color) => tinycolor(color).isValid() ? color : "");
33247
+ }
33248
+ };
33249
+ return () => createVNode("div", {
33250
+ "tabindex": "0",
33251
+ "class": "bk-color-picker-recommend",
33252
+ "onFocus": () => isFocused.value = true,
33253
+ "onBlur": () => isFocused.value = false,
33254
+ "onKeydown": handleKeydown
33255
+ }, [colors.value.map((color, index) => createVNode("div", {
33256
+ "style": `background: ${color || "#fff"}`,
33257
+ "class": getColorClass(color, index),
33258
+ "onClick": () => selectColor(index)
33259
+ }, [selectedIndex.value === index ? createVNode("div", {
33260
+ "class": "bk-color-picker-pointer"
33261
+ }, [createVNode("div", {
33262
+ "class": "bk-color-picker-circle"
33263
+ }, null)]) : void 0]))]);
33264
+ }
33265
+ });
33266
+ const colorPickerProps$1 = {
33267
+ colorObj: PropTypes.object.isRequired
33268
+ };
33269
+ var SaturationPanel = defineComponent({
33270
+ props: colorPickerProps$1,
33271
+ emits: ["change"],
33272
+ setup(props2, {
33273
+ emit
33274
+ }) {
33275
+ const containerRef = ref(null);
33276
+ const backgroundStyle = computed(() => ({
33277
+ background: `hsl(${props2.colorObj.hsv.h}, 100%, 50%)`
33278
+ }));
33279
+ const pointerStyle = computed(() => ({
33280
+ top: `${(1 - props2.colorObj.hsv.v) * 100}%`,
33281
+ left: `${props2.colorObj.hsv.s * 100}%`
33282
+ }));
33283
+ const handleMouseDown = (e) => {
33284
+ containerRef.value.focus();
33285
+ handlePointChange(e);
33286
+ window.addEventListener("mousemove", handlePointChange, {
33287
+ passive: true
33288
+ });
33289
+ window.addEventListener("mouseup", handleMouseUp);
33290
+ };
33291
+ const handleMouseUp = () => {
33292
+ window.removeEventListener("mousemove", handlePointChange);
33293
+ window.removeEventListener("mouseup", handleMouseUp);
33294
+ };
33295
+ const handleArrowKeydown = (e) => {
33296
+ const {
33297
+ clientWidth,
33298
+ clientHeight
33299
+ } = containerRef.value;
33300
+ let left2 = props2.colorObj.hsv.s * clientWidth;
33301
+ let top2 = (1 - props2.colorObj.hsv.v) * clientHeight;
33302
+ const step = 10;
33303
+ switch (e.code) {
33304
+ case "ArrowLeft":
33305
+ e.preventDefault();
33306
+ left2 = clamp(left2 - step, 0, clientWidth);
33307
+ break;
33308
+ case "ArrowRight":
33309
+ e.preventDefault();
33310
+ left2 = clamp(left2 + step, 0, clientWidth);
33311
+ break;
33312
+ case "ArrowUp":
33313
+ e.preventDefault();
33314
+ top2 = clamp(top2 - step, 0, clientHeight);
33315
+ break;
33316
+ case "ArrowDown":
33317
+ e.preventDefault();
33318
+ top2 = clamp(top2 + step, 0, clientHeight);
33319
+ break;
33320
+ default:
33321
+ return;
33322
+ }
33323
+ handlePointChange(null, left2, top2);
33324
+ };
33325
+ const handlePointChange = (e, appointedLeft, appointedTop) => {
33326
+ const {
33327
+ clientWidth,
33328
+ clientHeight
33329
+ } = containerRef.value;
33330
+ const left2 = appointedLeft !== void 0 ? appointedLeft : getLeft(e);
33331
+ const top2 = appointedTop !== void 0 ? appointedTop : getTop(e);
33332
+ const saturation = left2 / clientWidth;
33333
+ const bright = 1 - top2 / clientHeight;
33334
+ changeColor(props2.colorObj.hsv.h, saturation, bright, props2.colorObj.hsv.a);
33335
+ };
33336
+ const getLeft = (e) => {
33337
+ const xOffset = containerRef.value.getBoundingClientRect().left + window.pageXOffset;
33338
+ const pageX = e.pageX || getTouches(e, "PageX");
33339
+ return clamp(pageX - xOffset, 0, containerRef.value.clientWidth);
33340
+ };
33341
+ const getTop = (e) => {
33342
+ const yOffset = containerRef.value.getBoundingClientRect().top + window.pageYOffset;
33343
+ const pageY = e.pageY || getTouches(e, "PageY");
33344
+ return clamp(pageY - yOffset, 0, containerRef.value.clientHeight);
33345
+ };
33346
+ const changeColor = (h2, s2, v2, a2) => {
33347
+ emit("change", {
33348
+ h: h2,
33349
+ s: s2,
33350
+ v: v2,
33351
+ a: a2
33352
+ });
33353
+ };
33354
+ return () => createVNode("div", {
33355
+ "ref": containerRef,
33356
+ "tabindex": "0",
33357
+ "class": "bk-color-picker-saturation",
33358
+ "style": backgroundStyle.value,
33359
+ "onKeydown": handleArrowKeydown,
33360
+ "onMousedown": (e) => {
33361
+ e.stopPropagation();
33362
+ handleMouseDown(e);
33363
+ }
33364
+ }, [createVNode("div", {
33365
+ "class": "bk-color-picker-saturation-white"
33366
+ }, null), createVNode("div", {
33367
+ "class": "bk-color-picker-saturation-black"
33368
+ }, null), createVNode("div", {
33369
+ "class": "bk-color-picker-pointer",
33370
+ "style": pointerStyle.value
33371
+ }, [createVNode("div", {
33372
+ "class": "bk-color-picker-circle"
33373
+ }, null)])]);
33374
+ }
33375
+ });
33376
+ const colorPickerProps = {
33377
+ modelValue: PropTypes.string.def(""),
33378
+ disabled: PropTypes.bool.def(false),
33379
+ readonly: PropTypes.bool.def(false),
33380
+ transfer: PropTypes.bool.def(false),
33381
+ size: PropTypes.size(["", "small", "large"]).def(""),
33382
+ showValue: PropTypes.bool.def(true),
33383
+ recommend: PropTypes.oneOfType([PropTypes.array.def(() => []), PropTypes.bool.def(true)]).def(true),
33384
+ extCls: PropTypes.string.def("")
33385
+ };
33386
+ const whiteColorObj = formatColor("#FFFFFF");
33387
+ var Component = defineComponent({
33388
+ name: "ColorPicker",
33389
+ directives: {
33390
+ clickoutside: ClickOutside
33391
+ },
33392
+ props: colorPickerProps,
33393
+ emits: ["update:modelValue", "change"],
33394
+ setup(props2, {
33395
+ emit
33396
+ }) {
33397
+ const showDropdown = ref(false);
33398
+ const colorStr = ref("");
33399
+ const colorObj = reactive(JSON.parse(JSON.stringify(whiteColorObj)));
33400
+ const dropRef = ref(null);
33401
+ const saturationPanelRef = ref(null);
33402
+ const referenceRef = ref(null);
33403
+ const colorPickerCls = computed(() => classes({
33404
+ [`bk-color-picker-${props2.size}`]: props2.size,
33405
+ "bk-color-picker-show-dropdown": showDropdown.value,
33406
+ "bk-color-picker-show-value": props2.showValue,
33407
+ "bk-color-picker-disabled": props2.disabled || props2.readonly
33408
+ }, `bk-color-picker ${props2.extCls}`));
33409
+ const isRenderRecommend = computed(() => Boolean(props2.recommend === true || Array.isArray(props2.recommend) && props2.recommend.length));
33410
+ onBeforeMount(() => {
33411
+ changeColorFromProps({
33412
+ isCreated: true
33413
+ });
33414
+ });
33415
+ watch(() => props2.modelValue, () => {
33416
+ changeColorFromProps();
33417
+ });
33418
+ const handleTriggerKeydown = (e) => {
33419
+ if (e.code === "Enter" || e.code === "NumpadEnter") {
33420
+ toggleDropdown();
33421
+ } else if (e.code === "Escape") {
33422
+ closeDropdown();
33423
+ }
33424
+ };
33425
+ const handleDropdownKeydown = (e) => {
33426
+ if (props2.transfer) {
33427
+ handleTriggerKeydown(e);
33428
+ }
33429
+ };
33430
+ const toggleDropdown = () => {
33431
+ if (props2.disabled || props2.readonly) {
33432
+ return;
33433
+ }
33434
+ showDropdown.value ? closeDropdown() : openDropdown();
33435
+ };
33436
+ const handleTabInput = (e) => {
33437
+ if (!isRenderRecommend.value) {
33438
+ e.preventDefault();
33439
+ saturationPanelRef.value.$el.focus();
33440
+ }
33441
+ };
33442
+ const handleTabRecommend = (e) => {
33443
+ e.preventDefault();
33444
+ saturationPanelRef.value.$el.focus();
33445
+ };
33446
+ const openDropdown = () => {
33447
+ var _a;
33448
+ showDropdown.value = true;
33449
+ (_a = dropRef.value) == null ? void 0 : _a.updateDropdown();
33450
+ setTimeout(() => {
33451
+ const hexInput = dropRef.value.$el.querySelector(".bk-color-picker-input-hex .bk-color-picker-input-value");
33452
+ hexInput.select();
33453
+ }, 100);
33454
+ };
33455
+ const closeDropdown = () => {
33456
+ var _a;
33457
+ if (showDropdown.value) {
33458
+ nextTick(() => referenceRef.value.focus());
33459
+ showDropdown.value = false;
33460
+ (_a = dropRef.value) == null ? void 0 : _a.destoryDropdown();
33461
+ changeColorFromProps();
33462
+ }
33463
+ };
33464
+ const changeColorFromProps = ({
33465
+ isCreated = false
33466
+ } = {}) => {
33467
+ if (props2.modelValue === "") {
33468
+ if (colorStr.value !== "") {
33469
+ colorStr.value = "";
33470
+ Object.assign(colorObj, whiteColorObj);
33471
+ emit("update:modelValue", colorStr.value);
33472
+ }
33473
+ return;
33474
+ }
33475
+ const propsColorObj = formatColor(props2.modelValue);
33476
+ const propsColorStr = propsColorObj.rgba.a === 1 ? propsColorObj.hex : toRGBAString(propsColorObj.rgba);
33477
+ if (propsColorStr !== colorStr.value) {
33478
+ const isValid2 = tinycolor(props2.modelValue).isValid();
33479
+ if (isCreated) {
33480
+ if (!isValid2) {
33481
+ Object.assign(colorObj, whiteColorObj);
33482
+ emit("change", "");
33483
+ } else {
33484
+ colorStr.value = propsColorStr.toLowerCase() === props2.modelValue.toLowerCase() ? props2.modelValue : propsColorStr;
33485
+ Object.assign(colorObj, propsColorObj);
33486
+ }
33487
+ } else {
33488
+ if (!isValid2) {
33489
+ colorStr.value = "";
33490
+ Object.assign(colorObj, whiteColorObj);
33491
+ } else if (propsColorStr.toLowerCase() !== colorStr.value.toLowerCase()) {
33492
+ Object.assign(colorObj, propsColorObj);
33493
+ colorStr.value = propsColorStr;
33494
+ }
33495
+ }
33496
+ }
33497
+ };
33498
+ const handleColorChange = (val) => {
33499
+ if (val === "") {
33500
+ colorStr.value = "";
33501
+ Object.assign(colorObj, whiteColorObj);
33502
+ emit("update:modelValue", "");
33503
+ emit("change", "");
33504
+ return;
33505
+ }
33506
+ const handleColorObj = formatColor(val);
33507
+ const handleColorStr = handleColorObj.rgba.a === 1 ? handleColorObj.hex : toRGBAString(handleColorObj.rgba);
33508
+ colorStr.value = handleColorStr;
33509
+ Object.assign(colorObj, handleColorObj);
33510
+ emit("change", handleColorStr);
33511
+ emit("update:modelValue", colorStr.value);
33512
+ };
33513
+ const hideDropDown = () => {
33514
+ showDropdown.value = false;
33515
+ };
33516
+ return () => withDirectives(createVNode("div", {
33517
+ "ref": referenceRef,
33518
+ "tabindex": "0",
33519
+ "class": colorPickerCls.value,
33520
+ "onKeydown": handleTriggerKeydown,
33521
+ "onClick": toggleDropdown
33522
+ }, [createVNode("div", {
33523
+ "class": "bk-color-picker-color"
33524
+ }, [createVNode("span", {
33525
+ "class": `bk-color-picker-color-square ${!colorStr.value && "bk-color-picker-empty"}`,
33526
+ "style": `background: ${colorStr.value || "#FFF"}`
33527
+ }, null)]), props2.showValue ? createVNode("div", {
33528
+ "class": "bk-color-picker-text"
33529
+ }, [createVNode("span", null, [colorStr.value])]) : void 0, createVNode("div", {
33530
+ "class": "bk-color-picker-icon"
33531
+ }, [createVNode(angleUp, {
33532
+ "class": "icon-angle-down"
33533
+ }, null)]), createVNode(Transition, {
33534
+ "name": "bk-fade-down-transition"
33535
+ }, {
33536
+ default: () => [withDirectives(createVNode(PickerDropdown, {
33537
+ "ref": dropRef,
33538
+ "triggerRef": referenceRef.value
33539
+ }, {
33540
+ default: () => [createVNode("div", {
33541
+ "class": "bk-color-dropdown-container"
33542
+ }, [createVNode("div", {
33543
+ "class": "bk-color-picker-dropdown",
33544
+ "onClick": (e) => {
33545
+ e.stopPropagation();
33546
+ },
33547
+ "onMousedown": (e) => {
33548
+ e.stopPropagation();
33549
+ },
33550
+ "onKeydown": handleDropdownKeydown
33551
+ }, [createVNode(SaturationPanel, {
33552
+ "ref": saturationPanelRef,
33553
+ "colorObj": colorObj,
33554
+ "onChange": handleColorChange
33555
+ }, null), createVNode(HueSlider, {
33556
+ "colorObj": colorObj,
33557
+ "onChange": handleColorChange
33558
+ }, null), createVNode(ColorInput, {
33559
+ "colorObj": colorObj,
33560
+ "onTab": handleTabInput,
33561
+ "onChange": handleColorChange
33562
+ }, null), isRenderRecommend.value ? createVNode("div", {
33563
+ "class": "bk-color-picker-recommend-container"
33564
+ }, [createVNode(RecommendColors, {
33565
+ "colorObj": colorObj,
33566
+ "recommend": props2.recommend,
33567
+ "onTab": handleTabRecommend,
33568
+ "onChange": handleColorChange
33569
+ }, null)]) : void 0])])]
33570
+ }), [[vShow, showDropdown.value]])]
33571
+ })]), [[resolveDirective("clickoutside"), hideDropDown]]);
33572
+ }
33573
+ });
33574
+ const BkColorPicker = withInstall(Component);
31952
33575
  var components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProperty({
31953
33576
  __proto__: null,
31954
33577
  Alert: BkAlert,
@@ -32003,7 +33626,8 @@ var components = /* @__PURE__ */ Object.freeze(/* @__PURE__ */ Object.defineProp
32003
33626
  TimeLine: BkSteps$1,
32004
33627
  Process: BkSteps,
32005
33628
  Upload,
32006
- CodeDiff: BkCodeDiff
33629
+ CodeDiff: BkCodeDiff,
33630
+ ColorPicker: BkColorPicker
32007
33631
  }, Symbol.toStringTag, { value: "Module" }));
32008
33632
  const createInstall = (prefix = "Bk") => (app) => {
32009
33633
  const pre = app.config.globalProperties.bkUIPrefix || prefix;
@@ -32021,4 +33645,4 @@ var preset = {
32021
33645
  install: createInstall(),
32022
33646
  version: "0.0.1"
32023
33647
  };
32024
- export { BkAffix as Affix, BkAlert as Alert, BkAnimateNumber as AnimateNumber, BkBacktop as Backtop, BkBadge as Badge, BkBreadcrumb as Breadcrumb, BkButton as Button, BkCard as Card, BkCascader as Cascader, BkCheckbox as Checkbox, BkCodeDiff as CodeDiff, BkCollapse as Collapse, BkContainer as Container, BkDatePicker as DatePicker, BkDialog as Dialog, BkDivider as Divider, BkDropdown as Dropdown, BkException as Exception, BkFixedNavbar as FixedNavbar, BkForm as Form, InfoBox, BkInput as Input, BkLink as Link, BkLoading as Loading, BkMenu as Menu, Message, BkModal as Modal, Navigation, Notify, BkPagination as Pagination, BkPopover as Popover, BkPopover2 as Popover2, BkSteps as Process, BkProgress as Progress, BkRadio as Radio, BkRate as Rate, BkResizeLayout as ResizeLayout, BkSelect as Select, BkSideslider as Sideslider, Slider, BkSteps$2 as Steps, BkSwiper as Swiper, BkSwitcher as Switcher, BkTab as Tab, BkTable as Table, BkTag as Tag, TagInput, BkSteps$1 as TimeLine, Transfer, BkTree as Tree, Upload, BkVirtualRender as VirtualRender, tooltips as bkTooltips, ClickOutside as clickoutside, BkContainer as containerProps, preset as default, mousewheel };
33648
+ export { BkAffix as Affix, BkAlert as Alert, BkAnimateNumber as AnimateNumber, BkBacktop as Backtop, BkBadge as Badge, BkBreadcrumb as Breadcrumb, BkButton as Button, BkCard as Card, BkCascader as Cascader, BkCheckbox as Checkbox, BkCodeDiff as CodeDiff, BkCollapse as Collapse, BkColorPicker as ColorPicker, BkContainer as Container, BkDatePicker as DatePicker, BkDialog as Dialog, BkDivider as Divider, BkDropdown as Dropdown, BkException as Exception, BkFixedNavbar as FixedNavbar, BkForm as Form, InfoBox, BkInput as Input, BkLink as Link, BkLoading as Loading, BkMenu as Menu, Message, BkModal as Modal, Navigation, Notify, BkPagination as Pagination, BkPopover as Popover, BkPopover2 as Popover2, BkSteps as Process, BkProgress as Progress, BkRadio as Radio, BkRate as Rate, BkResizeLayout as ResizeLayout, BkSelect as Select, BkSideslider as Sideslider, Slider, BkSteps$2 as Steps, BkSwiper as Swiper, BkSwitcher as Switcher, BkTab as Tab, BkTable as Table, BkTag as Tag, TagInput, BkSteps$1 as TimeLine, Transfer, BkTree as Tree, Upload, BkVirtualRender as VirtualRender, tooltips as bkTooltips, ClickOutside as clickoutside, BkContainer as containerProps, preset as default, mousewheel };