@douyinfe/semi-ui 2.11.1 → 2.12.0-beta.0

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.
Files changed (60) hide show
  1. package/README.md +1 -1
  2. package/button/Button.tsx +1 -1
  3. package/dist/css/semi.css +33 -0
  4. package/dist/css/semi.min.css +1 -1
  5. package/dist/umd/semi-ui.js +2334 -322
  6. package/dist/umd/semi-ui.js.map +1 -1
  7. package/dist/umd/semi-ui.min.js +1 -1
  8. package/dist/umd/semi-ui.min.js.map +1 -1
  9. package/form/_story/FormSubmit/index.tsx +45 -0
  10. package/form/_story/form.stories.js +2 -1
  11. package/lib/cjs/button/Button.d.ts +1 -1
  12. package/lib/cjs/modal/Modal.js +3 -2
  13. package/lib/cjs/modal/ModalContent.d.ts +2 -0
  14. package/lib/cjs/modal/ModalContent.js +17 -9
  15. package/lib/cjs/progress/index.js +1 -1
  16. package/lib/cjs/select/index.js +1 -1
  17. package/lib/cjs/slider/index.js +9 -5
  18. package/lib/cjs/tabs/TabBar.d.ts +1 -0
  19. package/lib/cjs/tabs/TabBar.js +8 -1
  20. package/lib/cjs/tabs/TabPane.js +2 -1
  21. package/lib/cjs/tabs/index.js +2 -1
  22. package/lib/cjs/tabs/interface.d.ts +1 -0
  23. package/lib/cjs/tag/index.d.ts +2 -0
  24. package/lib/cjs/tag/index.js +60 -11
  25. package/lib/cjs/tag/interface.d.ts +1 -0
  26. package/lib/cjs/tagInput/index.js +3 -2
  27. package/lib/cjs/treeSelect/index.js +3 -3
  28. package/lib/es/button/Button.d.ts +1 -1
  29. package/lib/es/modal/Modal.js +3 -2
  30. package/lib/es/modal/ModalContent.d.ts +2 -0
  31. package/lib/es/modal/ModalContent.js +16 -9
  32. package/lib/es/progress/index.js +1 -1
  33. package/lib/es/select/index.js +1 -1
  34. package/lib/es/slider/index.js +9 -5
  35. package/lib/es/tabs/TabBar.d.ts +1 -0
  36. package/lib/es/tabs/TabBar.js +8 -1
  37. package/lib/es/tabs/TabPane.js +2 -1
  38. package/lib/es/tabs/index.js +2 -1
  39. package/lib/es/tabs/interface.d.ts +1 -0
  40. package/lib/es/tag/index.d.ts +2 -0
  41. package/lib/es/tag/index.js +56 -9
  42. package/lib/es/tag/interface.d.ts +1 -0
  43. package/lib/es/tagInput/index.js +3 -2
  44. package/lib/es/treeSelect/index.js +2 -2
  45. package/modal/Modal.tsx +2 -1
  46. package/modal/ModalContent.tsx +14 -8
  47. package/package.json +9 -9
  48. package/progress/index.tsx +1 -1
  49. package/select/index.tsx +1 -2
  50. package/slider/index.tsx +5 -3
  51. package/table/_story/v2/index.js +2 -1
  52. package/table/_story/v2/radioRowSelection.tsx +107 -0
  53. package/tabs/TabBar.tsx +7 -0
  54. package/tabs/TabPane.tsx +1 -0
  55. package/tabs/index.tsx +2 -1
  56. package/tabs/interface.ts +1 -0
  57. package/tag/index.tsx +32 -2
  58. package/tag/interface.ts +1 -0
  59. package/tagInput/index.tsx +1 -0
  60. package/treeSelect/index.tsx +1 -1
@@ -1801,6 +1801,30 @@ module.exports = createFind;
1801
1801
 
1802
1802
 
1803
1803
 
1804
+ /***/ }),
1805
+
1806
+ /***/ "1hU5":
1807
+ /***/ (function(module, exports, __webpack_require__) {
1808
+
1809
+ var $ = __webpack_require__("n9AK");
1810
+ var FREEZING = __webpack_require__("byqU");
1811
+ var fails = __webpack_require__("XU0c");
1812
+ var isObject = __webpack_require__("H3h0");
1813
+ var onFreeze = __webpack_require__("N8Lc").onFreeze;
1814
+
1815
+ // eslint-disable-next-line es-x/no-object-freeze -- safe
1816
+ var $freeze = Object.freeze;
1817
+ var FAILS_ON_PRIMITIVES = fails(function () { $freeze(1); });
1818
+
1819
+ // `Object.freeze` method
1820
+ // https://tc39.es/ecma262/#sec-object.freeze
1821
+ $({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !FREEZING }, {
1822
+ freeze: function freeze(it) {
1823
+ return $freeze && isObject(it) ? $freeze(onFreeze(it)) : it;
1824
+ }
1825
+ });
1826
+
1827
+
1804
1828
  /***/ }),
1805
1829
 
1806
1830
  /***/ "1l5A":
@@ -22401,6 +22425,19 @@ function baseClone(value, bitmask, customizer, key, object, stack) {
22401
22425
  module.exports = baseClone;
22402
22426
 
22403
22427
 
22428
+ /***/ }),
22429
+
22430
+ /***/ "kq48":
22431
+ /***/ (function(module, __webpack_exports__, __webpack_require__) {
22432
+
22433
+ "use strict";
22434
+ /* WEBPACK VAR INJECTION */(function(global) {/** Detect free variable `global` from Node.js. */
22435
+ var freeGlobal = typeof global == 'object' && global && global.Object === Object && global;
22436
+
22437
+ /* harmony default export */ __webpack_exports__["a"] = (freeGlobal);
22438
+
22439
+ /* WEBPACK VAR INJECTION */}.call(this, __webpack_require__("fRV1")))
22440
+
22404
22441
  /***/ }),
22405
22442
 
22406
22443
  /***/ "krtk":
@@ -24510,6 +24547,13 @@ $({ target: 'Array', proto: true, forced: FORCED }, {
24510
24547
  });
24511
24548
 
24512
24549
 
24550
+ /***/ }),
24551
+
24552
+ /***/ "p7I/":
24553
+ /***/ (function(module, exports, __webpack_require__) {
24554
+
24555
+ module.exports = __webpack_require__("xXiX");
24556
+
24513
24557
  /***/ }),
24514
24558
 
24515
24559
  /***/ "pDLF":
@@ -25812,8 +25856,8 @@ var lodash_each = __webpack_require__("h4um");
25812
25856
  var each_default = /*#__PURE__*/__webpack_require__.n(lodash_each);
25813
25857
 
25814
25858
  // EXTERNAL MODULE: /home/runner/work/semi-design/semi-design/node_modules/@babel/runtime-corejs3/core-js-stable/instance/includes.js
25815
- var includes = __webpack_require__("DeC2");
25816
- var includes_default = /*#__PURE__*/__webpack_require__.n(includes);
25859
+ var instance_includes = __webpack_require__("DeC2");
25860
+ var includes_default = /*#__PURE__*/__webpack_require__.n(instance_includes);
25817
25861
 
25818
25862
  // EXTERNAL MODULE: ../semi-foundation/utils/warning.ts
25819
25863
  var warning = __webpack_require__("MYbw");
@@ -49325,6 +49369,11 @@ const tag_constants_strings = {
49325
49369
  AVATAR_SHAPE: ['square', 'circle']
49326
49370
  };
49327
49371
 
49372
+ // CONCATENATED MODULE: ../semi-foundation/utils/a11y.ts
49373
+ function handlePrevent(event) {
49374
+ event.stopPropagation();
49375
+ event.preventDefault();
49376
+ }
49328
49377
  // EXTERNAL MODULE: ../semi-foundation/tag/tag.scss
49329
49378
  var tag_tag = __webpack_require__("ktkQ");
49330
49379
 
@@ -49335,6 +49384,7 @@ var tag_tag = __webpack_require__("ktkQ");
49335
49384
 
49336
49385
 
49337
49386
 
49387
+
49338
49388
  var tag_rest = undefined && undefined.__rest || function (s, e) {
49339
49389
  var t = {};
49340
49390
 
@@ -49345,6 +49395,8 @@ var tag_rest = undefined && undefined.__rest || function (s, e) {
49345
49395
  }
49346
49396
  return t;
49347
49397
  };
49398
+ /* eslint-disable jsx-a11y/no-static-element-interactions */
49399
+
49348
49400
  /* eslint-disable no-unused-vars */
49349
49401
 
49350
49402
  /* eslint-disable max-len */
@@ -49358,6 +49410,7 @@ var tag_rest = undefined && undefined.__rest || function (s, e) {
49358
49410
 
49359
49411
 
49360
49412
 
49413
+
49361
49414
  const tag_prefixCls = tag_constants_cssClasses.PREFIX;
49362
49415
  const tagColors = tag_constants_strings.TAG_COLOR;
49363
49416
  const tagSize = tag_constants_strings.TAG_SIZE;
@@ -49365,13 +49418,14 @@ const tagType = tag_constants_strings.TAG_TYPE;
49365
49418
  const avatarShapeSet = tag_constants_strings.AVATAR_SHAPE;
49366
49419
  class tag_Tag extends external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"] {
49367
49420
  constructor(props) {
49368
- var _context;
49421
+ var _context, _context2;
49369
49422
 
49370
49423
  super(props);
49371
49424
  this.state = {
49372
49425
  visible: true
49373
49426
  };
49374
49427
  this.close = bind_default()(_context = this.close).call(_context, this);
49428
+ this.handleKeyDown = bind_default()(_context2 = this.handleKeyDown).call(_context2, this);
49375
49429
  } // any other way to achieve this?
49376
49430
 
49377
49431
 
@@ -49408,6 +49462,33 @@ class tag_Tag extends external_root_React_commonjs2_react_commonjs_react_amd_rea
49408
49462
  this.setVisible(false);
49409
49463
  }
49410
49464
 
49465
+ handleKeyDown(event) {
49466
+ const {
49467
+ closable,
49468
+ onClick
49469
+ } = this.props;
49470
+
49471
+ switch (event.key) {
49472
+ case "Backspace":
49473
+ case "Delete":
49474
+ closable && this.close(event, this.props.children);
49475
+ handlePrevent(event);
49476
+ break;
49477
+
49478
+ case "Enter":
49479
+ onClick(event);
49480
+ handlePrevent(event);
49481
+ break;
49482
+
49483
+ case 'Escape':
49484
+ event.target.blur();
49485
+ break;
49486
+
49487
+ default:
49488
+ break;
49489
+ }
49490
+ }
49491
+
49411
49492
  renderAvatar() {
49412
49493
  const {
49413
49494
  avatarShape,
@@ -49421,7 +49502,7 @@ class tag_Tag extends external_root_React_commonjs2_react_commonjs_react_amd_rea
49421
49502
  }
49422
49503
 
49423
49504
  render() {
49424
- var _context2, _context3, _context4, _context5;
49505
+ var _context3, _context4, _context5, _context6, _context7;
49425
49506
 
49426
49507
  const _a = this.props,
49427
49508
  {
@@ -49431,37 +49512,51 @@ class tag_Tag extends external_root_React_commonjs2_react_commonjs_react_amd_rea
49431
49512
  closable,
49432
49513
  visible,
49433
49514
  onClose,
49515
+ onClick,
49434
49516
  className,
49435
49517
  type,
49436
49518
  avatarSrc,
49437
49519
  avatarShape
49438
49520
  } = _a,
49439
- attr = tag_rest(_a, ["children", "size", "color", "closable", "visible", "onClose", "className", "type", "avatarSrc", "avatarShape"]);
49521
+ attr = tag_rest(_a, ["children", "size", "color", "closable", "visible", "onClose", "onClick", "className", "type", "avatarSrc", "avatarShape"]);
49440
49522
 
49441
49523
  const {
49442
49524
  visible: isVisible
49443
49525
  } = this.state;
49526
+ const clickable = onClick !== tag_Tag.defaultProps.onClick || closable;
49527
+ const a11yProps = {
49528
+ role: 'button',
49529
+ tabIndex: 0,
49530
+ onKeyDown: this.handleKeyDown
49531
+ };
49444
49532
 
49445
49533
  const baseProps = assign_default()(assign_default()({}, attr), {
49534
+ onClick,
49446
49535
  className: classnames_default()(tag_prefixCls, {
49447
49536
  ["".concat(tag_prefixCls, "-default")]: size === 'default',
49448
49537
  ["".concat(tag_prefixCls, "-small")]: size === 'small',
49449
49538
  ["".concat(tag_prefixCls, "-large")]: size === 'large',
49450
- [concat_default()(_context2 = "".concat(tag_prefixCls, "-")).call(_context2, type)]: type,
49451
- [concat_default()(_context3 = concat_default()(_context4 = "".concat(tag_prefixCls, "-")).call(_context4, color, "-")).call(_context3, type)]: color && type,
49539
+ [concat_default()(_context3 = "".concat(tag_prefixCls, "-")).call(_context3, type)]: type,
49540
+ [concat_default()(_context4 = concat_default()(_context5 = "".concat(tag_prefixCls, "-")).call(_context5, color, "-")).call(_context4, type)]: color && type,
49452
49541
  ["".concat(tag_prefixCls, "-closable")]: closable,
49453
49542
  ["".concat(tag_prefixCls, "-invisible")]: !isVisible,
49454
- [concat_default()(_context5 = "".concat(tag_prefixCls, "-avatar-")).call(_context5, avatarShape)]: avatarSrc
49543
+ [concat_default()(_context6 = "".concat(tag_prefixCls, "-avatar-")).call(_context6, avatarShape)]: avatarSrc
49455
49544
  }, className)
49456
49545
  });
49457
49546
 
49458
- const closeIcon = closable ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
49547
+ const wrapProps = clickable ? assign_default()(assign_default()({}, baseProps), a11yProps) : baseProps;
49548
+ const closeIcon = closable ?
49549
+ /*#__PURE__*/
49550
+ // eslint-disable-next-line jsx-a11y/click-events-have-key-events
49551
+ external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
49459
49552
  className: "".concat(tag_prefixCls, "-close"),
49460
49553
  onClick: e => this.close(e, children)
49461
49554
  }, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(IconClose, {
49462
49555
  size: "small"
49463
49556
  })) : null;
49464
- return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", assign_default()({}, baseProps), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
49557
+ return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", assign_default()({
49558
+ "aria-label": this.props['aria-label'] || isString_default()(children) ? concat_default()(_context7 = "".concat(closable ? 'Closable ' : '', "Tag: ")).call(_context7, children) : ''
49559
+ }, wrapProps), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
49465
49560
  className: "".concat(tag_prefixCls, "-content")
49466
49561
  }, avatarSrc ? this.renderAvatar() : null, children, closeIcon));
49467
49562
  }
@@ -49491,7 +49586,8 @@ tag_Tag.propTypes = {
49491
49586
  style: prop_types_default.a.object,
49492
49587
  className: prop_types_default.a.string,
49493
49588
  avatarSrc: prop_types_default.a.string,
49494
- avatarShape: prop_types_default.a.oneOf(avatarShapeSet)
49589
+ avatarShape: prop_types_default.a.oneOf(avatarShapeSet),
49590
+ 'aria-label': prop_types_default.a.string
49495
49591
  };
49496
49592
  // CONCATENATED MODULE: ../semi-foundation/tagInput/constants.ts
49497
49593
 
@@ -50053,7 +50149,7 @@ class tagInput_TagInput extends baseComponent_BaseComponent {
50053
50149
  if (isFunction_default()(renderTagItem)) {
50054
50150
  item = renderTagItem(value, index);
50055
50151
  } else {
50056
- var _context2;
50152
+ var _context2, _context3;
50057
50153
 
50058
50154
  item = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(tag_Tag, {
50059
50155
  className: tagCls,
@@ -50065,7 +50161,8 @@ class tagInput_TagInput extends baseComponent_BaseComponent {
50065
50161
  },
50066
50162
  closable: !disabled,
50067
50163
  key: concat_default()(_context2 = "".concat(index)).call(_context2, value),
50068
- visible: true
50164
+ visible: true,
50165
+ "aria-label": concat_default()(_context3 = "".concat(!disabled ? 'Closable ' : '', "Tag: ")).call(_context3, value)
50069
50166
  }, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(paragraph_Paragraph, {
50070
50167
  className: typoCls,
50071
50168
  ellipsis: {
@@ -65303,338 +65400,2103 @@ class modalContentFoundation_ModalContentFoundation extends foundation {
65303
65400
  }
65304
65401
 
65305
65402
  }
65306
- // CONCATENATED MODULE: ./modal/ModalContent.tsx
65403
+ // EXTERNAL MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_freeGlobal.js
65404
+ var _freeGlobal = __webpack_require__("kq48");
65307
65405
 
65406
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_root.js
65308
65407
 
65309
65408
 
65409
+ /** Detect free variable `self`. */
65410
+ var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
65310
65411
 
65412
+ /** Used as a reference to the global object. */
65413
+ var _root_root = _freeGlobal["a" /* default */] || freeSelf || Function('return this')();
65311
65414
 
65415
+ /* harmony default export */ var _root = (_root_root);
65312
65416
 
65417
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_Symbol.js
65313
65418
 
65314
65419
 
65420
+ /** Built-in value references. */
65421
+ var _Symbol_Symbol = _root.Symbol;
65315
65422
 
65423
+ /* harmony default export */ var _Symbol = (_Symbol_Symbol);
65316
65424
 
65317
- var ModalContent_rest = undefined && undefined.__rest || function (s, e) {
65318
- var t = {};
65425
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_getRawTag.js
65319
65426
 
65320
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && index_of_default()(e).call(e, p) < 0) t[p] = s[p];
65321
65427
 
65322
- if (s != null && typeof get_own_property_symbols_default.a === "function") for (var i = 0, p = get_own_property_symbols_default()(s); i < p.length; i++) {
65323
- if (index_of_default()(e).call(e, p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
65324
- }
65325
- return t;
65326
- };
65327
- /* eslint-disable eqeqeq */
65428
+ /** Used for built-in method references. */
65429
+ var objectProto = Object.prototype;
65328
65430
 
65431
+ /** Used to check objects for own properties. */
65432
+ var _getRawTag_hasOwnProperty = objectProto.hasOwnProperty;
65329
65433
 
65434
+ /**
65435
+ * Used to resolve the
65436
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
65437
+ * of values.
65438
+ */
65439
+ var nativeObjectToString = objectProto.toString;
65330
65440
 
65441
+ /** Built-in value references. */
65442
+ var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
65331
65443
 
65444
+ /**
65445
+ * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
65446
+ *
65447
+ * @private
65448
+ * @param {*} value The value to query.
65449
+ * @returns {string} Returns the raw `toStringTag`.
65450
+ */
65451
+ function getRawTag(value) {
65452
+ var isOwn = _getRawTag_hasOwnProperty.call(value, symToStringTag),
65453
+ tag = value[symToStringTag];
65332
65454
 
65455
+ try {
65456
+ value[symToStringTag] = undefined;
65457
+ var unmasked = true;
65458
+ } catch (e) {}
65333
65459
 
65460
+ var result = nativeObjectToString.call(value);
65461
+ if (unmasked) {
65462
+ if (isOwn) {
65463
+ value[symToStringTag] = tag;
65464
+ } else {
65465
+ delete value[symToStringTag];
65466
+ }
65467
+ }
65468
+ return result;
65469
+ }
65334
65470
 
65471
+ /* harmony default export */ var _getRawTag = (getRawTag);
65335
65472
 
65473
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_objectToString.js
65474
+ /** Used for built-in method references. */
65475
+ var _objectToString_objectProto = Object.prototype;
65336
65476
 
65337
- // eslint-disable-next-line max-len
65477
+ /**
65478
+ * Used to resolve the
65479
+ * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
65480
+ * of values.
65481
+ */
65482
+ var _objectToString_nativeObjectToString = _objectToString_objectProto.toString;
65338
65483
 
65484
+ /**
65485
+ * Converts `value` to a string using `Object.prototype.toString`.
65486
+ *
65487
+ * @private
65488
+ * @param {*} value The value to convert.
65489
+ * @returns {string} Returns the converted string.
65490
+ */
65491
+ function objectToString(value) {
65492
+ return _objectToString_nativeObjectToString.call(value);
65493
+ }
65339
65494
 
65495
+ /* harmony default export */ var _objectToString = (objectToString);
65340
65496
 
65497
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseGetTag.js
65341
65498
 
65342
- let uuid = 0;
65343
- class ModalContent_ModalContent extends baseComponent_BaseComponent {
65344
- constructor(props) {
65345
- super(props);
65346
65499
 
65347
- this.onKeyDown = e => {
65348
- this.foundation.handleKeyDown(e);
65349
- }; // Record when clicking the modal box
65350
65500
 
65351
65501
 
65352
- this.onDialogMouseDown = () => {
65353
- this.foundation.handleDialogMouseDown();
65354
- }; // Cancel recording when clicking the modal box at the end
65502
+ /** `Object#toString` result references. */
65503
+ var nullTag = '[object Null]',
65504
+ undefinedTag = '[object Undefined]';
65355
65505
 
65506
+ /** Built-in value references. */
65507
+ var _baseGetTag_symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
65356
65508
 
65357
- this.onMaskMouseUp = () => {
65358
- this.foundation.handleMaskMouseUp();
65359
- }; // onMaskClick will judge dialogMouseDown before onMaskMouseUp updates dialogMouseDown
65509
+ /**
65510
+ * The base implementation of `getTag` without fallbacks for buggy environments.
65511
+ *
65512
+ * @private
65513
+ * @param {*} value The value to query.
65514
+ * @returns {string} Returns the `toStringTag`.
65515
+ */
65516
+ function baseGetTag(value) {
65517
+ if (value == null) {
65518
+ return value === undefined ? undefinedTag : nullTag;
65519
+ }
65520
+ return (_baseGetTag_symToStringTag && _baseGetTag_symToStringTag in Object(value))
65521
+ ? _getRawTag(value)
65522
+ : _objectToString(value);
65523
+ }
65360
65524
 
65525
+ /* harmony default export */ var _baseGetTag = (baseGetTag);
65361
65526
 
65362
- this.onMaskClick = e => {
65363
- this.foundation.handleMaskClick(e);
65364
- };
65527
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/isObject.js
65528
+ /**
65529
+ * Checks if `value` is the
65530
+ * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
65531
+ * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
65532
+ *
65533
+ * @static
65534
+ * @memberOf _
65535
+ * @since 0.1.0
65536
+ * @category Lang
65537
+ * @param {*} value The value to check.
65538
+ * @returns {boolean} Returns `true` if `value` is an object, else `false`.
65539
+ * @example
65540
+ *
65541
+ * _.isObject({});
65542
+ * // => true
65543
+ *
65544
+ * _.isObject([1, 2, 3]);
65545
+ * // => true
65546
+ *
65547
+ * _.isObject(_.noop);
65548
+ * // => true
65549
+ *
65550
+ * _.isObject(null);
65551
+ * // => false
65552
+ */
65553
+ function isObject_isObject(value) {
65554
+ var type = typeof value;
65555
+ return value != null && (type == 'object' || type == 'function');
65556
+ }
65365
65557
 
65366
- this.close = e => {
65367
- this.foundation.close(e);
65368
- };
65558
+ /* harmony default export */ var lodash_es_isObject = (isObject_isObject);
65369
65559
 
65370
- this.getMaskElement = () => {
65371
- const props = ModalContent_rest(this.props, []);
65560
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/isFunction.js
65372
65561
 
65373
- const {
65374
- mask,
65375
- maskClassName
65376
- } = props;
65377
65562
 
65378
- if (mask) {
65379
- const className = classnames_default()("".concat(modal_constants_cssClasses.DIALOG, "-mask"), {// [`${cssClasses.DIALOG}-mask-hidden`]: !props.visible,
65380
- });
65381
- return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65382
- key: "mask",
65383
- className: classnames_default()(className, maskClassName),
65384
- style: props.maskStyle
65385
- });
65386
- }
65387
65563
 
65388
- return null;
65389
- };
65564
+ /** `Object#toString` result references. */
65565
+ var asyncTag = '[object AsyncFunction]',
65566
+ funcTag = '[object Function]',
65567
+ genTag = '[object GeneratorFunction]',
65568
+ proxyTag = '[object Proxy]';
65390
65569
 
65391
- this.renderCloseBtn = () => {
65392
- const {
65393
- closable,
65394
- closeIcon
65395
- } = this.props;
65396
- let closer;
65570
+ /**
65571
+ * Checks if `value` is classified as a `Function` object.
65572
+ *
65573
+ * @static
65574
+ * @memberOf _
65575
+ * @since 0.1.0
65576
+ * @category Lang
65577
+ * @param {*} value The value to check.
65578
+ * @returns {boolean} Returns `true` if `value` is a function, else `false`.
65579
+ * @example
65580
+ *
65581
+ * _.isFunction(_);
65582
+ * // => true
65583
+ *
65584
+ * _.isFunction(/abc/);
65585
+ * // => false
65586
+ */
65587
+ function isFunction_isFunction(value) {
65588
+ if (!lodash_es_isObject(value)) {
65589
+ return false;
65590
+ }
65591
+ // The use of `Object#toString` avoids issues with the `typeof` operator
65592
+ // in Safari 9 which returns 'object' for typed arrays and other constructors.
65593
+ var tag = _baseGetTag(value);
65594
+ return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
65595
+ }
65397
65596
 
65398
- if (closable) {
65399
- const iconType = closeIcon || /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(IconClose, null);
65400
- closer = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(iconButton_0, {
65401
- "aria-label": "close",
65402
- className: "".concat(modal_constants_cssClasses.DIALOG, "-close"),
65403
- key: "close-btn",
65404
- onClick: this.close,
65405
- type: "tertiary",
65406
- icon: iconType,
65407
- theme: "borderless",
65408
- size: "small"
65409
- });
65410
- }
65597
+ /* harmony default export */ var lodash_es_isFunction = (isFunction_isFunction);
65411
65598
 
65412
- return closer;
65413
- };
65599
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_coreJsData.js
65414
65600
 
65415
- this.renderIcon = () => {
65416
- const {
65417
- icon
65418
- } = this.props;
65419
- return icon ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("span", {
65420
- className: "".concat(modal_constants_cssClasses.DIALOG, "-icon-wrapper")
65421
- }, icon) : null;
65422
- };
65423
65601
 
65424
- this.renderHeader = () => {
65425
- if ('header' in this.props) {
65426
- return this.props.header;
65427
- }
65602
+ /** Used to detect overreaching core-js shims. */
65603
+ var coreJsData = _root['__core-js_shared__'];
65428
65604
 
65429
- const {
65430
- title
65431
- } = this.props;
65432
- const closer = this.renderCloseBtn();
65433
- const icon = this.renderIcon();
65434
- return title === null || title === undefined ? null : /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65435
- className: "".concat(modal_constants_cssClasses.DIALOG, "-header")
65436
- }, icon, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(typography_0.Title, {
65437
- heading: 5,
65438
- className: "".concat(modal_constants_cssClasses.DIALOG, "-title"),
65439
- id: "".concat(modal_constants_cssClasses.DIALOG, "-title")
65440
- }, title), closer);
65441
- };
65605
+ /* harmony default export */ var _coreJsData = (coreJsData);
65442
65606
 
65443
- this.renderBody = () => {
65444
- const {
65445
- bodyStyle,
65446
- children,
65447
- title
65448
- } = this.props;
65449
- const bodyCls = classnames_default()("".concat(modal_constants_cssClasses.DIALOG, "-body"), {
65450
- ["".concat(modal_constants_cssClasses.DIALOG, "-withIcon")]: this.props.icon
65451
- });
65452
- const closer = this.renderCloseBtn();
65453
- const icon = this.renderIcon();
65454
- const hasHeader = title !== null && title !== undefined || 'header' in this.props;
65455
- return hasHeader ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65456
- className: bodyCls,
65457
- id: "".concat(modal_constants_cssClasses.DIALOG, "-body"),
65458
- style: bodyStyle
65459
- }, children) : /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65460
- className: "".concat(modal_constants_cssClasses.DIALOG, "-body-wrapper")
65461
- }, icon, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65462
- className: bodyCls,
65463
- style: bodyStyle
65464
- }, children), closer);
65465
- };
65607
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_isMasked.js
65466
65608
 
65467
- this.getDialogElement = () => {
65468
- var _context;
65469
65609
 
65470
- const props = ModalContent_rest(this.props, []);
65610
+ /** Used to detect methods masquerading as native. */
65611
+ var maskSrcKey = (function() {
65612
+ var uid = /[^.]+$/.exec(_coreJsData && _coreJsData.keys && _coreJsData.keys.IE_PROTO || '');
65613
+ return uid ? ('Symbol(src)_1.' + uid) : '';
65614
+ }());
65471
65615
 
65472
- const style = {};
65473
- const digCls = classnames_default()("".concat(modal_constants_cssClasses.DIALOG), {
65474
- ["".concat(modal_constants_cssClasses.DIALOG, "-centered")]: props.centered,
65475
- [concat_default()(_context = "".concat(modal_constants_cssClasses.DIALOG, "-")).call(_context, props.size)]: props.size
65476
- });
65616
+ /**
65617
+ * Checks if `func` has its source masked.
65618
+ *
65619
+ * @private
65620
+ * @param {Function} func The function to check.
65621
+ * @returns {boolean} Returns `true` if `func` is masked, else `false`.
65622
+ */
65623
+ function isMasked(func) {
65624
+ return !!maskSrcKey && (maskSrcKey in func);
65625
+ }
65477
65626
 
65478
- if (props.width) {
65479
- style.width = props.width;
65480
- }
65627
+ /* harmony default export */ var _isMasked = (isMasked);
65481
65628
 
65482
- if (props.height) {
65483
- style.height = props.height;
65484
- }
65629
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_toSource.js
65630
+ /** Used for built-in method references. */
65631
+ var funcProto = Function.prototype;
65485
65632
 
65486
- if (props.isFullScreen) {
65487
- style.width = '100%';
65488
- style.height = '100%';
65489
- style.margin = 'unset';
65490
- }
65633
+ /** Used to resolve the decompiled source of functions. */
65634
+ var funcToString = funcProto.toString;
65491
65635
 
65492
- const body = this.renderBody();
65493
- const header = this.renderHeader();
65494
- const footer = props.footer ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65495
- className: "".concat(modal_constants_cssClasses.DIALOG, "-footer")
65496
- }, props.footer) : null;
65497
- const dialogElement =
65498
- /*#__PURE__*/
65499
- // eslint-disable-next-line jsx-a11y/no-static-element-interactions
65500
- external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65501
- key: "dialog-element",
65502
- className: digCls,
65503
- onMouseDown: this.onDialogMouseDown,
65504
- style: assign_default()(assign_default()({}, props.style), style),
65505
- id: this.dialogId
65506
- }, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65507
- role: "dialog",
65508
- ref: this.modalDialogRef,
65509
- "aria-modal": "true",
65510
- "aria-labelledby": "".concat(modal_constants_cssClasses.DIALOG, "-title"),
65511
- "aria-describedby": "".concat(modal_constants_cssClasses.DIALOG, "-body"),
65512
- onAnimationEnd: props.onAnimationEnd,
65513
- className: classnames_default()(["".concat(modal_constants_cssClasses.DIALOG, "-content"), props.contentClassName, {
65514
- ["".concat(modal_constants_cssClasses.DIALOG, "-content-fullScreen")]: props.isFullScreen
65515
- }])
65516
- }, header, body, footer)); // return props.visible ? dialogElement : null;
65636
+ /**
65637
+ * Converts `func` to its source code.
65638
+ *
65639
+ * @private
65640
+ * @param {Function} func The function to convert.
65641
+ * @returns {string} Returns the source code.
65642
+ */
65643
+ function toSource(func) {
65644
+ if (func != null) {
65645
+ try {
65646
+ return funcToString.call(func);
65647
+ } catch (e) {}
65648
+ try {
65649
+ return (func + '');
65650
+ } catch (e) {}
65651
+ }
65652
+ return '';
65653
+ }
65517
65654
 
65518
- return dialogElement;
65519
- };
65655
+ /* harmony default export */ var _toSource = (toSource);
65520
65656
 
65521
- this.state = {
65522
- dialogMouseDown: false,
65523
- prevFocusElement: Object(_utils["b" /* getActiveElement */])()
65524
- };
65525
- this.foundation = new modalContentFoundation_ModalContentFoundation(this.adapter);
65526
- this.dialogId = "dialog-".concat(uuid++);
65527
- this.modalDialogRef = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createRef();
65528
- }
65657
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseIsNative.js
65529
65658
 
65530
- get adapter() {
65531
- return assign_default()(assign_default()({}, super.adapter), {
65532
- notifyClose: e => {
65533
- this.props.onClose(e);
65534
- },
65535
- notifyDialogMouseDown: () => {
65536
- this.setState({
65537
- dialogMouseDown: true
65538
- });
65539
- },
65540
- notifyDialogMouseUp: () => {
65541
- if (this.state.dialogMouseDown) {
65542
- // Not setting setTimeout triggers close when modal external mouseUp
65543
- this.timeoutId = set_timeout_default()(() => {
65544
- this.setState({
65545
- dialogMouseDown: false
65546
- });
65547
- }, 0);
65548
- }
65549
- },
65550
- addKeyDownEventListener: () => {
65551
- if (this.props.closeOnEsc) {
65552
- var _context2;
65553
65659
 
65554
- document.addEventListener('keydown', bind_default()(_context2 = this.foundation.handleKeyDown).call(_context2, this.foundation));
65555
- }
65556
- },
65557
- removeKeyDownEventListener: () => {
65558
- if (this.props.closeOnEsc) {
65559
- var _context3;
65560
65660
 
65561
- document.removeEventListener('keydown', bind_default()(_context3 = this.foundation.handleKeyDown).call(_context3, this.foundation));
65562
- }
65563
- },
65564
- getMouseState: () => this.state.dialogMouseDown,
65565
- modalDialogFocus: () => {
65566
- let activeElementInDialog;
65567
65661
 
65568
- if (this.modalDialogRef) {
65569
- const activeElement = Object(_utils["b" /* getActiveElement */])();
65570
- activeElementInDialog = this.modalDialogRef.current.contains(activeElement);
65571
- }
65572
65662
 
65573
- if (!activeElementInDialog) {
65574
- this.modalDialogRef && this.modalDialogRef.current.focus();
65575
- }
65576
- },
65577
- modalDialogBlur: () => {
65578
- this.modalDialogRef && this.modalDialogRef.current.blur();
65579
- },
65580
- prevFocusElementReFocus: () => {
65581
- const {
65582
- prevFocusElement
65583
- } = this.state;
65663
+ /**
65664
+ * Used to match `RegExp`
65665
+ * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
65666
+ */
65667
+ var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
65584
65668
 
65585
- const focus = get_default()(prevFocusElement, 'focus');
65669
+ /** Used to detect host constructors (Safari). */
65670
+ var reIsHostCtor = /^\[object .+?Constructor\]$/;
65586
65671
 
65587
- isFunction_default()(focus) && prevFocusElement.focus();
65588
- }
65589
- });
65590
- }
65672
+ /** Used for built-in method references. */
65673
+ var _baseIsNative_funcProto = Function.prototype,
65674
+ _baseIsNative_objectProto = Object.prototype;
65591
65675
 
65592
- componentDidMount() {
65593
- this.foundation.handleKeyDownEventListenerMount();
65594
- this.foundation.modalDialogFocus();
65595
- }
65676
+ /** Used to resolve the decompiled source of functions. */
65677
+ var _baseIsNative_funcToString = _baseIsNative_funcProto.toString;
65596
65678
 
65597
- componentWillUnmount() {
65598
- clearTimeout(this.timeoutId);
65599
- this.foundation.destroy();
65600
- }
65679
+ /** Used to check objects for own properties. */
65680
+ var _baseIsNative_hasOwnProperty = _baseIsNative_objectProto.hasOwnProperty;
65601
65681
 
65602
- render() {
65603
- const {
65604
- maskClosable,
65605
- className,
65606
- getPopupContainer,
65607
- maskFixed,
65608
- getContainerContext
65609
- } = this.props;
65610
- const {
65611
- direction
65612
- } = this.context;
65613
- const classList = classnames_default()(className, {
65614
- ["".concat(modal_constants_cssClasses.DIALOG, "-popup")]: getPopupContainer && !maskFixed,
65615
- ["".concat(modal_constants_cssClasses.DIALOG, "-fixed")]: maskFixed,
65616
- ["".concat(modal_constants_cssClasses.DIALOG, "-rtl")]: direction === 'rtl'
65617
- });
65618
- const containerContext = getContainerContext();
65619
- const elem = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65620
- className: classList
65621
- }, this.getMaskElement(), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
65622
- role: "none",
65623
- tabIndex: -1,
65624
- className: "".concat(modal_constants_cssClasses.DIALOG, "-wrap"),
65625
- onClick: maskClosable ? this.onMaskClick : null,
65626
- onMouseUp: maskClosable ? this.onMaskMouseUp : null
65627
- }, this.getDialogElement())); // @ts-ignore Unreachable branch
65628
- // eslint-disable-next-line max-len
65682
+ /** Used to detect if a method is native. */
65683
+ var reIsNative = RegExp('^' +
65684
+ _baseIsNative_funcToString.call(_baseIsNative_hasOwnProperty).replace(reRegExpChar, '\\$&')
65685
+ .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
65686
+ );
65629
65687
 
65630
- return containerContext && containerContext.Provider ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(containerContext.Provider, {
65631
- value: containerContext.value
65632
- }, elem) : elem;
65688
+ /**
65689
+ * The base implementation of `_.isNative` without bad shim checks.
65690
+ *
65691
+ * @private
65692
+ * @param {*} value The value to check.
65693
+ * @returns {boolean} Returns `true` if `value` is a native function,
65694
+ * else `false`.
65695
+ */
65696
+ function baseIsNative(value) {
65697
+ if (!lodash_es_isObject(value) || _isMasked(value)) {
65698
+ return false;
65633
65699
  }
65634
-
65700
+ var pattern = lodash_es_isFunction(value) ? reIsNative : reIsHostCtor;
65701
+ return pattern.test(_toSource(value));
65635
65702
  }
65636
- ModalContent_ModalContent.contextType = configProvider_context;
65637
- ModalContent_ModalContent.propTypes = {
65703
+
65704
+ /* harmony default export */ var _baseIsNative = (baseIsNative);
65705
+
65706
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_getValue.js
65707
+ /**
65708
+ * Gets the value at `key` of `object`.
65709
+ *
65710
+ * @private
65711
+ * @param {Object} [object] The object to query.
65712
+ * @param {string} key The key of the property to get.
65713
+ * @returns {*} Returns the property value.
65714
+ */
65715
+ function getValue(object, key) {
65716
+ return object == null ? undefined : object[key];
65717
+ }
65718
+
65719
+ /* harmony default export */ var _getValue = (getValue);
65720
+
65721
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_getNative.js
65722
+
65723
+
65724
+
65725
+ /**
65726
+ * Gets the native function at `key` of `object`.
65727
+ *
65728
+ * @private
65729
+ * @param {Object} object The object to query.
65730
+ * @param {string} key The key of the method to get.
65731
+ * @returns {*} Returns the function if it's native, else `undefined`.
65732
+ */
65733
+ function getNative(object, key) {
65734
+ var value = _getValue(object, key);
65735
+ return _baseIsNative(value) ? value : undefined;
65736
+ }
65737
+
65738
+ /* harmony default export */ var _getNative = (getNative);
65739
+
65740
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_nativeCreate.js
65741
+
65742
+
65743
+ /* Built-in method references that are verified to be native. */
65744
+ var nativeCreate = _getNative(Object, 'create');
65745
+
65746
+ /* harmony default export */ var _nativeCreate = (nativeCreate);
65747
+
65748
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_hashClear.js
65749
+
65750
+
65751
+ /**
65752
+ * Removes all key-value entries from the hash.
65753
+ *
65754
+ * @private
65755
+ * @name clear
65756
+ * @memberOf Hash
65757
+ */
65758
+ function hashClear() {
65759
+ this.__data__ = _nativeCreate ? _nativeCreate(null) : {};
65760
+ this.size = 0;
65761
+ }
65762
+
65763
+ /* harmony default export */ var _hashClear = (hashClear);
65764
+
65765
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_hashDelete.js
65766
+ /**
65767
+ * Removes `key` and its value from the hash.
65768
+ *
65769
+ * @private
65770
+ * @name delete
65771
+ * @memberOf Hash
65772
+ * @param {Object} hash The hash to modify.
65773
+ * @param {string} key The key of the value to remove.
65774
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
65775
+ */
65776
+ function hashDelete(key) {
65777
+ var result = this.has(key) && delete this.__data__[key];
65778
+ this.size -= result ? 1 : 0;
65779
+ return result;
65780
+ }
65781
+
65782
+ /* harmony default export */ var _hashDelete = (hashDelete);
65783
+
65784
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_hashGet.js
65785
+
65786
+
65787
+ /** Used to stand-in for `undefined` hash values. */
65788
+ var HASH_UNDEFINED = '__lodash_hash_undefined__';
65789
+
65790
+ /** Used for built-in method references. */
65791
+ var _hashGet_objectProto = Object.prototype;
65792
+
65793
+ /** Used to check objects for own properties. */
65794
+ var _hashGet_hasOwnProperty = _hashGet_objectProto.hasOwnProperty;
65795
+
65796
+ /**
65797
+ * Gets the hash value for `key`.
65798
+ *
65799
+ * @private
65800
+ * @name get
65801
+ * @memberOf Hash
65802
+ * @param {string} key The key of the value to get.
65803
+ * @returns {*} Returns the entry value.
65804
+ */
65805
+ function hashGet(key) {
65806
+ var data = this.__data__;
65807
+ if (_nativeCreate) {
65808
+ var result = data[key];
65809
+ return result === HASH_UNDEFINED ? undefined : result;
65810
+ }
65811
+ return _hashGet_hasOwnProperty.call(data, key) ? data[key] : undefined;
65812
+ }
65813
+
65814
+ /* harmony default export */ var _hashGet = (hashGet);
65815
+
65816
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_hashHas.js
65817
+
65818
+
65819
+ /** Used for built-in method references. */
65820
+ var _hashHas_objectProto = Object.prototype;
65821
+
65822
+ /** Used to check objects for own properties. */
65823
+ var _hashHas_hasOwnProperty = _hashHas_objectProto.hasOwnProperty;
65824
+
65825
+ /**
65826
+ * Checks if a hash value for `key` exists.
65827
+ *
65828
+ * @private
65829
+ * @name has
65830
+ * @memberOf Hash
65831
+ * @param {string} key The key of the entry to check.
65832
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
65833
+ */
65834
+ function hashHas(key) {
65835
+ var data = this.__data__;
65836
+ return _nativeCreate ? (data[key] !== undefined) : _hashHas_hasOwnProperty.call(data, key);
65837
+ }
65838
+
65839
+ /* harmony default export */ var _hashHas = (hashHas);
65840
+
65841
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_hashSet.js
65842
+
65843
+
65844
+ /** Used to stand-in for `undefined` hash values. */
65845
+ var _hashSet_HASH_UNDEFINED = '__lodash_hash_undefined__';
65846
+
65847
+ /**
65848
+ * Sets the hash `key` to `value`.
65849
+ *
65850
+ * @private
65851
+ * @name set
65852
+ * @memberOf Hash
65853
+ * @param {string} key The key of the value to set.
65854
+ * @param {*} value The value to set.
65855
+ * @returns {Object} Returns the hash instance.
65856
+ */
65857
+ function hashSet(key, value) {
65858
+ var data = this.__data__;
65859
+ this.size += this.has(key) ? 0 : 1;
65860
+ data[key] = (_nativeCreate && value === undefined) ? _hashSet_HASH_UNDEFINED : value;
65861
+ return this;
65862
+ }
65863
+
65864
+ /* harmony default export */ var _hashSet = (hashSet);
65865
+
65866
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_Hash.js
65867
+
65868
+
65869
+
65870
+
65871
+
65872
+
65873
+ /**
65874
+ * Creates a hash object.
65875
+ *
65876
+ * @private
65877
+ * @constructor
65878
+ * @param {Array} [entries] The key-value pairs to cache.
65879
+ */
65880
+ function Hash(entries) {
65881
+ var index = -1,
65882
+ length = entries == null ? 0 : entries.length;
65883
+
65884
+ this.clear();
65885
+ while (++index < length) {
65886
+ var entry = entries[index];
65887
+ this.set(entry[0], entry[1]);
65888
+ }
65889
+ }
65890
+
65891
+ // Add methods to `Hash`.
65892
+ Hash.prototype.clear = _hashClear;
65893
+ Hash.prototype['delete'] = _hashDelete;
65894
+ Hash.prototype.get = _hashGet;
65895
+ Hash.prototype.has = _hashHas;
65896
+ Hash.prototype.set = _hashSet;
65897
+
65898
+ /* harmony default export */ var _Hash = (Hash);
65899
+
65900
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_listCacheClear.js
65901
+ /**
65902
+ * Removes all key-value entries from the list cache.
65903
+ *
65904
+ * @private
65905
+ * @name clear
65906
+ * @memberOf ListCache
65907
+ */
65908
+ function listCacheClear() {
65909
+ this.__data__ = [];
65910
+ this.size = 0;
65911
+ }
65912
+
65913
+ /* harmony default export */ var _listCacheClear = (listCacheClear);
65914
+
65915
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/eq.js
65916
+ /**
65917
+ * Performs a
65918
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
65919
+ * comparison between two values to determine if they are equivalent.
65920
+ *
65921
+ * @static
65922
+ * @memberOf _
65923
+ * @since 4.0.0
65924
+ * @category Lang
65925
+ * @param {*} value The value to compare.
65926
+ * @param {*} other The other value to compare.
65927
+ * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
65928
+ * @example
65929
+ *
65930
+ * var object = { 'a': 1 };
65931
+ * var other = { 'a': 1 };
65932
+ *
65933
+ * _.eq(object, object);
65934
+ * // => true
65935
+ *
65936
+ * _.eq(object, other);
65937
+ * // => false
65938
+ *
65939
+ * _.eq('a', 'a');
65940
+ * // => true
65941
+ *
65942
+ * _.eq('a', Object('a'));
65943
+ * // => false
65944
+ *
65945
+ * _.eq(NaN, NaN);
65946
+ * // => true
65947
+ */
65948
+ function eq(value, other) {
65949
+ return value === other || (value !== value && other !== other);
65950
+ }
65951
+
65952
+ /* harmony default export */ var lodash_es_eq = (eq);
65953
+
65954
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_assocIndexOf.js
65955
+
65956
+
65957
+ /**
65958
+ * Gets the index at which the `key` is found in `array` of key-value pairs.
65959
+ *
65960
+ * @private
65961
+ * @param {Array} array The array to inspect.
65962
+ * @param {*} key The key to search for.
65963
+ * @returns {number} Returns the index of the matched value, else `-1`.
65964
+ */
65965
+ function assocIndexOf(array, key) {
65966
+ var length = array.length;
65967
+ while (length--) {
65968
+ if (lodash_es_eq(array[length][0], key)) {
65969
+ return length;
65970
+ }
65971
+ }
65972
+ return -1;
65973
+ }
65974
+
65975
+ /* harmony default export */ var _assocIndexOf = (assocIndexOf);
65976
+
65977
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_listCacheDelete.js
65978
+
65979
+
65980
+ /** Used for built-in method references. */
65981
+ var arrayProto = Array.prototype;
65982
+
65983
+ /** Built-in value references. */
65984
+ var _listCacheDelete_splice = arrayProto.splice;
65985
+
65986
+ /**
65987
+ * Removes `key` and its value from the list cache.
65988
+ *
65989
+ * @private
65990
+ * @name delete
65991
+ * @memberOf ListCache
65992
+ * @param {string} key The key of the value to remove.
65993
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
65994
+ */
65995
+ function listCacheDelete(key) {
65996
+ var data = this.__data__,
65997
+ index = _assocIndexOf(data, key);
65998
+
65999
+ if (index < 0) {
66000
+ return false;
66001
+ }
66002
+ var lastIndex = data.length - 1;
66003
+ if (index == lastIndex) {
66004
+ data.pop();
66005
+ } else {
66006
+ _listCacheDelete_splice.call(data, index, 1);
66007
+ }
66008
+ --this.size;
66009
+ return true;
66010
+ }
66011
+
66012
+ /* harmony default export */ var _listCacheDelete = (listCacheDelete);
66013
+
66014
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_listCacheGet.js
66015
+
66016
+
66017
+ /**
66018
+ * Gets the list cache value for `key`.
66019
+ *
66020
+ * @private
66021
+ * @name get
66022
+ * @memberOf ListCache
66023
+ * @param {string} key The key of the value to get.
66024
+ * @returns {*} Returns the entry value.
66025
+ */
66026
+ function listCacheGet(key) {
66027
+ var data = this.__data__,
66028
+ index = _assocIndexOf(data, key);
66029
+
66030
+ return index < 0 ? undefined : data[index][1];
66031
+ }
66032
+
66033
+ /* harmony default export */ var _listCacheGet = (listCacheGet);
66034
+
66035
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_listCacheHas.js
66036
+
66037
+
66038
+ /**
66039
+ * Checks if a list cache value for `key` exists.
66040
+ *
66041
+ * @private
66042
+ * @name has
66043
+ * @memberOf ListCache
66044
+ * @param {string} key The key of the entry to check.
66045
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
66046
+ */
66047
+ function listCacheHas(key) {
66048
+ return _assocIndexOf(this.__data__, key) > -1;
66049
+ }
66050
+
66051
+ /* harmony default export */ var _listCacheHas = (listCacheHas);
66052
+
66053
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_listCacheSet.js
66054
+
66055
+
66056
+ /**
66057
+ * Sets the list cache `key` to `value`.
66058
+ *
66059
+ * @private
66060
+ * @name set
66061
+ * @memberOf ListCache
66062
+ * @param {string} key The key of the value to set.
66063
+ * @param {*} value The value to set.
66064
+ * @returns {Object} Returns the list cache instance.
66065
+ */
66066
+ function listCacheSet(key, value) {
66067
+ var data = this.__data__,
66068
+ index = _assocIndexOf(data, key);
66069
+
66070
+ if (index < 0) {
66071
+ ++this.size;
66072
+ data.push([key, value]);
66073
+ } else {
66074
+ data[index][1] = value;
66075
+ }
66076
+ return this;
66077
+ }
66078
+
66079
+ /* harmony default export */ var _listCacheSet = (listCacheSet);
66080
+
66081
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_ListCache.js
66082
+
66083
+
66084
+
66085
+
66086
+
66087
+
66088
+ /**
66089
+ * Creates an list cache object.
66090
+ *
66091
+ * @private
66092
+ * @constructor
66093
+ * @param {Array} [entries] The key-value pairs to cache.
66094
+ */
66095
+ function ListCache(entries) {
66096
+ var index = -1,
66097
+ length = entries == null ? 0 : entries.length;
66098
+
66099
+ this.clear();
66100
+ while (++index < length) {
66101
+ var entry = entries[index];
66102
+ this.set(entry[0], entry[1]);
66103
+ }
66104
+ }
66105
+
66106
+ // Add methods to `ListCache`.
66107
+ ListCache.prototype.clear = _listCacheClear;
66108
+ ListCache.prototype['delete'] = _listCacheDelete;
66109
+ ListCache.prototype.get = _listCacheGet;
66110
+ ListCache.prototype.has = _listCacheHas;
66111
+ ListCache.prototype.set = _listCacheSet;
66112
+
66113
+ /* harmony default export */ var _ListCache = (ListCache);
66114
+
66115
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_Map.js
66116
+
66117
+
66118
+
66119
+ /* Built-in method references that are verified to be native. */
66120
+ var Map = _getNative(_root, 'Map');
66121
+
66122
+ /* harmony default export */ var _Map = (Map);
66123
+
66124
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_mapCacheClear.js
66125
+
66126
+
66127
+
66128
+
66129
+ /**
66130
+ * Removes all key-value entries from the map.
66131
+ *
66132
+ * @private
66133
+ * @name clear
66134
+ * @memberOf MapCache
66135
+ */
66136
+ function mapCacheClear() {
66137
+ this.size = 0;
66138
+ this.__data__ = {
66139
+ 'hash': new _Hash,
66140
+ 'map': new (_Map || _ListCache),
66141
+ 'string': new _Hash
66142
+ };
66143
+ }
66144
+
66145
+ /* harmony default export */ var _mapCacheClear = (mapCacheClear);
66146
+
66147
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_isKeyable.js
66148
+ /**
66149
+ * Checks if `value` is suitable for use as unique object key.
66150
+ *
66151
+ * @private
66152
+ * @param {*} value The value to check.
66153
+ * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
66154
+ */
66155
+ function isKeyable(value) {
66156
+ var type = typeof value;
66157
+ return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
66158
+ ? (value !== '__proto__')
66159
+ : (value === null);
66160
+ }
66161
+
66162
+ /* harmony default export */ var _isKeyable = (isKeyable);
66163
+
66164
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_getMapData.js
66165
+
66166
+
66167
+ /**
66168
+ * Gets the data for `map`.
66169
+ *
66170
+ * @private
66171
+ * @param {Object} map The map to query.
66172
+ * @param {string} key The reference key.
66173
+ * @returns {*} Returns the map data.
66174
+ */
66175
+ function getMapData(map, key) {
66176
+ var data = map.__data__;
66177
+ return _isKeyable(key)
66178
+ ? data[typeof key == 'string' ? 'string' : 'hash']
66179
+ : data.map;
66180
+ }
66181
+
66182
+ /* harmony default export */ var _getMapData = (getMapData);
66183
+
66184
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_mapCacheDelete.js
66185
+
66186
+
66187
+ /**
66188
+ * Removes `key` and its value from the map.
66189
+ *
66190
+ * @private
66191
+ * @name delete
66192
+ * @memberOf MapCache
66193
+ * @param {string} key The key of the value to remove.
66194
+ * @returns {boolean} Returns `true` if the entry was removed, else `false`.
66195
+ */
66196
+ function mapCacheDelete(key) {
66197
+ var result = _getMapData(this, key)['delete'](key);
66198
+ this.size -= result ? 1 : 0;
66199
+ return result;
66200
+ }
66201
+
66202
+ /* harmony default export */ var _mapCacheDelete = (mapCacheDelete);
66203
+
66204
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_mapCacheGet.js
66205
+
66206
+
66207
+ /**
66208
+ * Gets the map value for `key`.
66209
+ *
66210
+ * @private
66211
+ * @name get
66212
+ * @memberOf MapCache
66213
+ * @param {string} key The key of the value to get.
66214
+ * @returns {*} Returns the entry value.
66215
+ */
66216
+ function mapCacheGet(key) {
66217
+ return _getMapData(this, key).get(key);
66218
+ }
66219
+
66220
+ /* harmony default export */ var _mapCacheGet = (mapCacheGet);
66221
+
66222
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_mapCacheHas.js
66223
+
66224
+
66225
+ /**
66226
+ * Checks if a map value for `key` exists.
66227
+ *
66228
+ * @private
66229
+ * @name has
66230
+ * @memberOf MapCache
66231
+ * @param {string} key The key of the entry to check.
66232
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
66233
+ */
66234
+ function mapCacheHas(key) {
66235
+ return _getMapData(this, key).has(key);
66236
+ }
66237
+
66238
+ /* harmony default export */ var _mapCacheHas = (mapCacheHas);
66239
+
66240
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_mapCacheSet.js
66241
+
66242
+
66243
+ /**
66244
+ * Sets the map `key` to `value`.
66245
+ *
66246
+ * @private
66247
+ * @name set
66248
+ * @memberOf MapCache
66249
+ * @param {string} key The key of the value to set.
66250
+ * @param {*} value The value to set.
66251
+ * @returns {Object} Returns the map cache instance.
66252
+ */
66253
+ function mapCacheSet(key, value) {
66254
+ var data = _getMapData(this, key),
66255
+ size = data.size;
66256
+
66257
+ data.set(key, value);
66258
+ this.size += data.size == size ? 0 : 1;
66259
+ return this;
66260
+ }
66261
+
66262
+ /* harmony default export */ var _mapCacheSet = (mapCacheSet);
66263
+
66264
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_MapCache.js
66265
+
66266
+
66267
+
66268
+
66269
+
66270
+
66271
+ /**
66272
+ * Creates a map cache object to store key-value pairs.
66273
+ *
66274
+ * @private
66275
+ * @constructor
66276
+ * @param {Array} [entries] The key-value pairs to cache.
66277
+ */
66278
+ function MapCache(entries) {
66279
+ var index = -1,
66280
+ length = entries == null ? 0 : entries.length;
66281
+
66282
+ this.clear();
66283
+ while (++index < length) {
66284
+ var entry = entries[index];
66285
+ this.set(entry[0], entry[1]);
66286
+ }
66287
+ }
66288
+
66289
+ // Add methods to `MapCache`.
66290
+ MapCache.prototype.clear = _mapCacheClear;
66291
+ MapCache.prototype['delete'] = _mapCacheDelete;
66292
+ MapCache.prototype.get = _mapCacheGet;
66293
+ MapCache.prototype.has = _mapCacheHas;
66294
+ MapCache.prototype.set = _mapCacheSet;
66295
+
66296
+ /* harmony default export */ var _MapCache = (MapCache);
66297
+
66298
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_setCacheAdd.js
66299
+ /** Used to stand-in for `undefined` hash values. */
66300
+ var _setCacheAdd_HASH_UNDEFINED = '__lodash_hash_undefined__';
66301
+
66302
+ /**
66303
+ * Adds `value` to the array cache.
66304
+ *
66305
+ * @private
66306
+ * @name add
66307
+ * @memberOf SetCache
66308
+ * @alias push
66309
+ * @param {*} value The value to cache.
66310
+ * @returns {Object} Returns the cache instance.
66311
+ */
66312
+ function setCacheAdd(value) {
66313
+ this.__data__.set(value, _setCacheAdd_HASH_UNDEFINED);
66314
+ return this;
66315
+ }
66316
+
66317
+ /* harmony default export */ var _setCacheAdd = (setCacheAdd);
66318
+
66319
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_setCacheHas.js
66320
+ /**
66321
+ * Checks if `value` is in the array cache.
66322
+ *
66323
+ * @private
66324
+ * @name has
66325
+ * @memberOf SetCache
66326
+ * @param {*} value The value to search for.
66327
+ * @returns {number} Returns `true` if `value` is found, else `false`.
66328
+ */
66329
+ function setCacheHas(value) {
66330
+ return this.__data__.has(value);
66331
+ }
66332
+
66333
+ /* harmony default export */ var _setCacheHas = (setCacheHas);
66334
+
66335
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_SetCache.js
66336
+
66337
+
66338
+
66339
+
66340
+ /**
66341
+ *
66342
+ * Creates an array cache object to store unique values.
66343
+ *
66344
+ * @private
66345
+ * @constructor
66346
+ * @param {Array} [values] The values to cache.
66347
+ */
66348
+ function SetCache(values) {
66349
+ var index = -1,
66350
+ length = values == null ? 0 : values.length;
66351
+
66352
+ this.__data__ = new _MapCache;
66353
+ while (++index < length) {
66354
+ this.add(values[index]);
66355
+ }
66356
+ }
66357
+
66358
+ // Add methods to `SetCache`.
66359
+ SetCache.prototype.add = SetCache.prototype.push = _setCacheAdd;
66360
+ SetCache.prototype.has = _setCacheHas;
66361
+
66362
+ /* harmony default export */ var _SetCache = (SetCache);
66363
+
66364
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseFindIndex.js
66365
+ /**
66366
+ * The base implementation of `_.findIndex` and `_.findLastIndex` without
66367
+ * support for iteratee shorthands.
66368
+ *
66369
+ * @private
66370
+ * @param {Array} array The array to inspect.
66371
+ * @param {Function} predicate The function invoked per iteration.
66372
+ * @param {number} fromIndex The index to search from.
66373
+ * @param {boolean} [fromRight] Specify iterating from right to left.
66374
+ * @returns {number} Returns the index of the matched value, else `-1`.
66375
+ */
66376
+ function baseFindIndex(array, predicate, fromIndex, fromRight) {
66377
+ var length = array.length,
66378
+ index = fromIndex + (fromRight ? 1 : -1);
66379
+
66380
+ while ((fromRight ? index-- : ++index < length)) {
66381
+ if (predicate(array[index], index, array)) {
66382
+ return index;
66383
+ }
66384
+ }
66385
+ return -1;
66386
+ }
66387
+
66388
+ /* harmony default export */ var _baseFindIndex = (baseFindIndex);
66389
+
66390
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseIsNaN.js
66391
+ /**
66392
+ * The base implementation of `_.isNaN` without support for number objects.
66393
+ *
66394
+ * @private
66395
+ * @param {*} value The value to check.
66396
+ * @returns {boolean} Returns `true` if `value` is `NaN`, else `false`.
66397
+ */
66398
+ function baseIsNaN(value) {
66399
+ return value !== value;
66400
+ }
66401
+
66402
+ /* harmony default export */ var _baseIsNaN = (baseIsNaN);
66403
+
66404
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_strictIndexOf.js
66405
+ /**
66406
+ * A specialized version of `_.indexOf` which performs strict equality
66407
+ * comparisons of values, i.e. `===`.
66408
+ *
66409
+ * @private
66410
+ * @param {Array} array The array to inspect.
66411
+ * @param {*} value The value to search for.
66412
+ * @param {number} fromIndex The index to search from.
66413
+ * @returns {number} Returns the index of the matched value, else `-1`.
66414
+ */
66415
+ function strictIndexOf(array, value, fromIndex) {
66416
+ var index = fromIndex - 1,
66417
+ length = array.length;
66418
+
66419
+ while (++index < length) {
66420
+ if (array[index] === value) {
66421
+ return index;
66422
+ }
66423
+ }
66424
+ return -1;
66425
+ }
66426
+
66427
+ /* harmony default export */ var _strictIndexOf = (strictIndexOf);
66428
+
66429
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseIndexOf.js
66430
+
66431
+
66432
+
66433
+
66434
+ /**
66435
+ * The base implementation of `_.indexOf` without `fromIndex` bounds checks.
66436
+ *
66437
+ * @private
66438
+ * @param {Array} array The array to inspect.
66439
+ * @param {*} value The value to search for.
66440
+ * @param {number} fromIndex The index to search from.
66441
+ * @returns {number} Returns the index of the matched value, else `-1`.
66442
+ */
66443
+ function baseIndexOf(array, value, fromIndex) {
66444
+ return value === value
66445
+ ? _strictIndexOf(array, value, fromIndex)
66446
+ : _baseFindIndex(array, _baseIsNaN, fromIndex);
66447
+ }
66448
+
66449
+ /* harmony default export */ var _baseIndexOf = (baseIndexOf);
66450
+
66451
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_arrayIncludes.js
66452
+
66453
+
66454
+ /**
66455
+ * A specialized version of `_.includes` for arrays without support for
66456
+ * specifying an index to search from.
66457
+ *
66458
+ * @private
66459
+ * @param {Array} [array] The array to inspect.
66460
+ * @param {*} target The value to search for.
66461
+ * @returns {boolean} Returns `true` if `target` is found, else `false`.
66462
+ */
66463
+ function arrayIncludes(array, value) {
66464
+ var length = array == null ? 0 : array.length;
66465
+ return !!length && _baseIndexOf(array, value, 0) > -1;
66466
+ }
66467
+
66468
+ /* harmony default export */ var _arrayIncludes = (arrayIncludes);
66469
+
66470
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_arrayIncludesWith.js
66471
+ /**
66472
+ * This function is like `arrayIncludes` except that it accepts a comparator.
66473
+ *
66474
+ * @private
66475
+ * @param {Array} [array] The array to inspect.
66476
+ * @param {*} target The value to search for.
66477
+ * @param {Function} comparator The comparator invoked per element.
66478
+ * @returns {boolean} Returns `true` if `target` is found, else `false`.
66479
+ */
66480
+ function arrayIncludesWith(array, value, comparator) {
66481
+ var index = -1,
66482
+ length = array == null ? 0 : array.length;
66483
+
66484
+ while (++index < length) {
66485
+ if (comparator(value, array[index])) {
66486
+ return true;
66487
+ }
66488
+ }
66489
+ return false;
66490
+ }
66491
+
66492
+ /* harmony default export */ var _arrayIncludesWith = (arrayIncludesWith);
66493
+
66494
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_arrayMap.js
66495
+ /**
66496
+ * A specialized version of `_.map` for arrays without support for iteratee
66497
+ * shorthands.
66498
+ *
66499
+ * @private
66500
+ * @param {Array} [array] The array to iterate over.
66501
+ * @param {Function} iteratee The function invoked per iteration.
66502
+ * @returns {Array} Returns the new mapped array.
66503
+ */
66504
+ function arrayMap(array, iteratee) {
66505
+ var index = -1,
66506
+ length = array == null ? 0 : array.length,
66507
+ result = Array(length);
66508
+
66509
+ while (++index < length) {
66510
+ result[index] = iteratee(array[index], index, array);
66511
+ }
66512
+ return result;
66513
+ }
66514
+
66515
+ /* harmony default export */ var _arrayMap = (arrayMap);
66516
+
66517
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseUnary.js
66518
+ /**
66519
+ * The base implementation of `_.unary` without support for storing metadata.
66520
+ *
66521
+ * @private
66522
+ * @param {Function} func The function to cap arguments for.
66523
+ * @returns {Function} Returns the new capped function.
66524
+ */
66525
+ function baseUnary(func) {
66526
+ return function(value) {
66527
+ return func(value);
66528
+ };
66529
+ }
66530
+
66531
+ /* harmony default export */ var _baseUnary = (baseUnary);
66532
+
66533
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_cacheHas.js
66534
+ /**
66535
+ * Checks if a `cache` value for `key` exists.
66536
+ *
66537
+ * @private
66538
+ * @param {Object} cache The cache to query.
66539
+ * @param {string} key The key of the entry to check.
66540
+ * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
66541
+ */
66542
+ function cacheHas(cache, key) {
66543
+ return cache.has(key);
66544
+ }
66545
+
66546
+ /* harmony default export */ var _cacheHas = (cacheHas);
66547
+
66548
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseDifference.js
66549
+
66550
+
66551
+
66552
+
66553
+
66554
+
66555
+
66556
+ /** Used as the size to enable large array optimizations. */
66557
+ var LARGE_ARRAY_SIZE = 200;
66558
+
66559
+ /**
66560
+ * The base implementation of methods like `_.difference` without support
66561
+ * for excluding multiple arrays or iteratee shorthands.
66562
+ *
66563
+ * @private
66564
+ * @param {Array} array The array to inspect.
66565
+ * @param {Array} values The values to exclude.
66566
+ * @param {Function} [iteratee] The iteratee invoked per element.
66567
+ * @param {Function} [comparator] The comparator invoked per element.
66568
+ * @returns {Array} Returns the new array of filtered values.
66569
+ */
66570
+ function baseDifference(array, values, iteratee, comparator) {
66571
+ var index = -1,
66572
+ includes = _arrayIncludes,
66573
+ isCommon = true,
66574
+ length = array.length,
66575
+ result = [],
66576
+ valuesLength = values.length;
66577
+
66578
+ if (!length) {
66579
+ return result;
66580
+ }
66581
+ if (iteratee) {
66582
+ values = _arrayMap(values, _baseUnary(iteratee));
66583
+ }
66584
+ if (comparator) {
66585
+ includes = _arrayIncludesWith;
66586
+ isCommon = false;
66587
+ }
66588
+ else if (values.length >= LARGE_ARRAY_SIZE) {
66589
+ includes = _cacheHas;
66590
+ isCommon = false;
66591
+ values = new _SetCache(values);
66592
+ }
66593
+ outer:
66594
+ while (++index < length) {
66595
+ var value = array[index],
66596
+ computed = iteratee == null ? value : iteratee(value);
66597
+
66598
+ value = (comparator || value !== 0) ? value : 0;
66599
+ if (isCommon && computed === computed) {
66600
+ var valuesIndex = valuesLength;
66601
+ while (valuesIndex--) {
66602
+ if (values[valuesIndex] === computed) {
66603
+ continue outer;
66604
+ }
66605
+ }
66606
+ result.push(value);
66607
+ }
66608
+ else if (!includes(values, computed, comparator)) {
66609
+ result.push(value);
66610
+ }
66611
+ }
66612
+ return result;
66613
+ }
66614
+
66615
+ /* harmony default export */ var _baseDifference = (baseDifference);
66616
+
66617
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/identity.js
66618
+ /**
66619
+ * This method returns the first argument it receives.
66620
+ *
66621
+ * @static
66622
+ * @since 0.1.0
66623
+ * @memberOf _
66624
+ * @category Util
66625
+ * @param {*} value Any value.
66626
+ * @returns {*} Returns `value`.
66627
+ * @example
66628
+ *
66629
+ * var object = { 'a': 1 };
66630
+ *
66631
+ * console.log(_.identity(object) === object);
66632
+ * // => true
66633
+ */
66634
+ function identity(value) {
66635
+ return value;
66636
+ }
66637
+
66638
+ /* harmony default export */ var lodash_es_identity = (identity);
66639
+
66640
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_apply.js
66641
+ /**
66642
+ * A faster alternative to `Function#apply`, this function invokes `func`
66643
+ * with the `this` binding of `thisArg` and the arguments of `args`.
66644
+ *
66645
+ * @private
66646
+ * @param {Function} func The function to invoke.
66647
+ * @param {*} thisArg The `this` binding of `func`.
66648
+ * @param {Array} args The arguments to invoke `func` with.
66649
+ * @returns {*} Returns the result of `func`.
66650
+ */
66651
+ function apply(func, thisArg, args) {
66652
+ switch (args.length) {
66653
+ case 0: return func.call(thisArg);
66654
+ case 1: return func.call(thisArg, args[0]);
66655
+ case 2: return func.call(thisArg, args[0], args[1]);
66656
+ case 3: return func.call(thisArg, args[0], args[1], args[2]);
66657
+ }
66658
+ return func.apply(thisArg, args);
66659
+ }
66660
+
66661
+ /* harmony default export */ var _apply = (apply);
66662
+
66663
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_overRest.js
66664
+
66665
+
66666
+ /* Built-in method references for those with the same name as other `lodash` methods. */
66667
+ var nativeMax = Math.max;
66668
+
66669
+ /**
66670
+ * A specialized version of `baseRest` which transforms the rest array.
66671
+ *
66672
+ * @private
66673
+ * @param {Function} func The function to apply a rest parameter to.
66674
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
66675
+ * @param {Function} transform The rest array transform.
66676
+ * @returns {Function} Returns the new function.
66677
+ */
66678
+ function overRest(func, start, transform) {
66679
+ start = nativeMax(start === undefined ? (func.length - 1) : start, 0);
66680
+ return function() {
66681
+ var args = arguments,
66682
+ index = -1,
66683
+ length = nativeMax(args.length - start, 0),
66684
+ array = Array(length);
66685
+
66686
+ while (++index < length) {
66687
+ array[index] = args[start + index];
66688
+ }
66689
+ index = -1;
66690
+ var otherArgs = Array(start + 1);
66691
+ while (++index < start) {
66692
+ otherArgs[index] = args[index];
66693
+ }
66694
+ otherArgs[start] = transform(array);
66695
+ return _apply(func, this, otherArgs);
66696
+ };
66697
+ }
66698
+
66699
+ /* harmony default export */ var _overRest = (overRest);
66700
+
66701
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/constant.js
66702
+ /**
66703
+ * Creates a function that returns `value`.
66704
+ *
66705
+ * @static
66706
+ * @memberOf _
66707
+ * @since 2.4.0
66708
+ * @category Util
66709
+ * @param {*} value The value to return from the new function.
66710
+ * @returns {Function} Returns the new constant function.
66711
+ * @example
66712
+ *
66713
+ * var objects = _.times(2, _.constant({ 'a': 1 }));
66714
+ *
66715
+ * console.log(objects);
66716
+ * // => [{ 'a': 1 }, { 'a': 1 }]
66717
+ *
66718
+ * console.log(objects[0] === objects[1]);
66719
+ * // => true
66720
+ */
66721
+ function constant(value) {
66722
+ return function() {
66723
+ return value;
66724
+ };
66725
+ }
66726
+
66727
+ /* harmony default export */ var lodash_es_constant = (constant);
66728
+
66729
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_defineProperty.js
66730
+
66731
+
66732
+ var defineProperty = (function() {
66733
+ try {
66734
+ var func = _getNative(Object, 'defineProperty');
66735
+ func({}, '', {});
66736
+ return func;
66737
+ } catch (e) {}
66738
+ }());
66739
+
66740
+ /* harmony default export */ var _defineProperty = (defineProperty);
66741
+
66742
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseSetToString.js
66743
+
66744
+
66745
+
66746
+
66747
+ /**
66748
+ * The base implementation of `setToString` without support for hot loop shorting.
66749
+ *
66750
+ * @private
66751
+ * @param {Function} func The function to modify.
66752
+ * @param {Function} string The `toString` result.
66753
+ * @returns {Function} Returns `func`.
66754
+ */
66755
+ var baseSetToString = !_defineProperty ? lodash_es_identity : function(func, string) {
66756
+ return _defineProperty(func, 'toString', {
66757
+ 'configurable': true,
66758
+ 'enumerable': false,
66759
+ 'value': lodash_es_constant(string),
66760
+ 'writable': true
66761
+ });
66762
+ };
66763
+
66764
+ /* harmony default export */ var _baseSetToString = (baseSetToString);
66765
+
66766
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_shortOut.js
66767
+ /** Used to detect hot functions by number of calls within a span of milliseconds. */
66768
+ var HOT_COUNT = 800,
66769
+ HOT_SPAN = 16;
66770
+
66771
+ /* Built-in method references for those with the same name as other `lodash` methods. */
66772
+ var nativeNow = Date.now;
66773
+
66774
+ /**
66775
+ * Creates a function that'll short out and invoke `identity` instead
66776
+ * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`
66777
+ * milliseconds.
66778
+ *
66779
+ * @private
66780
+ * @param {Function} func The function to restrict.
66781
+ * @returns {Function} Returns the new shortable function.
66782
+ */
66783
+ function shortOut(func) {
66784
+ var count = 0,
66785
+ lastCalled = 0;
66786
+
66787
+ return function() {
66788
+ var stamp = nativeNow(),
66789
+ remaining = HOT_SPAN - (stamp - lastCalled);
66790
+
66791
+ lastCalled = stamp;
66792
+ if (remaining > 0) {
66793
+ if (++count >= HOT_COUNT) {
66794
+ return arguments[0];
66795
+ }
66796
+ } else {
66797
+ count = 0;
66798
+ }
66799
+ return func.apply(undefined, arguments);
66800
+ };
66801
+ }
66802
+
66803
+ /* harmony default export */ var _shortOut = (shortOut);
66804
+
66805
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_setToString.js
66806
+
66807
+
66808
+
66809
+ /**
66810
+ * Sets the `toString` method of `func` to return `string`.
66811
+ *
66812
+ * @private
66813
+ * @param {Function} func The function to modify.
66814
+ * @param {Function} string The `toString` result.
66815
+ * @returns {Function} Returns `func`.
66816
+ */
66817
+ var setToString = _shortOut(_baseSetToString);
66818
+
66819
+ /* harmony default export */ var _setToString = (setToString);
66820
+
66821
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/_baseRest.js
66822
+
66823
+
66824
+
66825
+
66826
+ /**
66827
+ * The base implementation of `_.rest` which doesn't validate or coerce arguments.
66828
+ *
66829
+ * @private
66830
+ * @param {Function} func The function to apply a rest parameter to.
66831
+ * @param {number} [start=func.length-1] The start position of the rest parameter.
66832
+ * @returns {Function} Returns the new function.
66833
+ */
66834
+ function baseRest(func, start) {
66835
+ return _setToString(_overRest(func, start, lodash_es_identity), func + '');
66836
+ }
66837
+
66838
+ /* harmony default export */ var _baseRest = (baseRest);
66839
+
66840
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/isLength.js
66841
+ /** Used as references for various `Number` constants. */
66842
+ var MAX_SAFE_INTEGER = 9007199254740991;
66843
+
66844
+ /**
66845
+ * Checks if `value` is a valid array-like length.
66846
+ *
66847
+ * **Note:** This method is loosely based on
66848
+ * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).
66849
+ *
66850
+ * @static
66851
+ * @memberOf _
66852
+ * @since 4.0.0
66853
+ * @category Lang
66854
+ * @param {*} value The value to check.
66855
+ * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.
66856
+ * @example
66857
+ *
66858
+ * _.isLength(3);
66859
+ * // => true
66860
+ *
66861
+ * _.isLength(Number.MIN_VALUE);
66862
+ * // => false
66863
+ *
66864
+ * _.isLength(Infinity);
66865
+ * // => false
66866
+ *
66867
+ * _.isLength('3');
66868
+ * // => false
66869
+ */
66870
+ function isLength(value) {
66871
+ return typeof value == 'number' &&
66872
+ value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;
66873
+ }
66874
+
66875
+ /* harmony default export */ var lodash_es_isLength = (isLength);
66876
+
66877
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/isArrayLike.js
66878
+
66879
+
66880
+
66881
+ /**
66882
+ * Checks if `value` is array-like. A value is considered array-like if it's
66883
+ * not a function and has a `value.length` that's an integer greater than or
66884
+ * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.
66885
+ *
66886
+ * @static
66887
+ * @memberOf _
66888
+ * @since 4.0.0
66889
+ * @category Lang
66890
+ * @param {*} value The value to check.
66891
+ * @returns {boolean} Returns `true` if `value` is array-like, else `false`.
66892
+ * @example
66893
+ *
66894
+ * _.isArrayLike([1, 2, 3]);
66895
+ * // => true
66896
+ *
66897
+ * _.isArrayLike(document.body.children);
66898
+ * // => true
66899
+ *
66900
+ * _.isArrayLike('abc');
66901
+ * // => true
66902
+ *
66903
+ * _.isArrayLike(_.noop);
66904
+ * // => false
66905
+ */
66906
+ function isArrayLike(value) {
66907
+ return value != null && lodash_es_isLength(value.length) && !lodash_es_isFunction(value);
66908
+ }
66909
+
66910
+ /* harmony default export */ var lodash_es_isArrayLike = (isArrayLike);
66911
+
66912
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/isObjectLike.js
66913
+ /**
66914
+ * Checks if `value` is object-like. A value is object-like if it's not `null`
66915
+ * and has a `typeof` result of "object".
66916
+ *
66917
+ * @static
66918
+ * @memberOf _
66919
+ * @since 4.0.0
66920
+ * @category Lang
66921
+ * @param {*} value The value to check.
66922
+ * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
66923
+ * @example
66924
+ *
66925
+ * _.isObjectLike({});
66926
+ * // => true
66927
+ *
66928
+ * _.isObjectLike([1, 2, 3]);
66929
+ * // => true
66930
+ *
66931
+ * _.isObjectLike(_.noop);
66932
+ * // => false
66933
+ *
66934
+ * _.isObjectLike(null);
66935
+ * // => false
66936
+ */
66937
+ function isObjectLike(value) {
66938
+ return value != null && typeof value == 'object';
66939
+ }
66940
+
66941
+ /* harmony default export */ var lodash_es_isObjectLike = (isObjectLike);
66942
+
66943
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/isArrayLikeObject.js
66944
+
66945
+
66946
+
66947
+ /**
66948
+ * This method is like `_.isArrayLike` except that it also checks if `value`
66949
+ * is an object.
66950
+ *
66951
+ * @static
66952
+ * @memberOf _
66953
+ * @since 4.0.0
66954
+ * @category Lang
66955
+ * @param {*} value The value to check.
66956
+ * @returns {boolean} Returns `true` if `value` is an array-like object,
66957
+ * else `false`.
66958
+ * @example
66959
+ *
66960
+ * _.isArrayLikeObject([1, 2, 3]);
66961
+ * // => true
66962
+ *
66963
+ * _.isArrayLikeObject(document.body.children);
66964
+ * // => true
66965
+ *
66966
+ * _.isArrayLikeObject('abc');
66967
+ * // => false
66968
+ *
66969
+ * _.isArrayLikeObject(_.noop);
66970
+ * // => false
66971
+ */
66972
+ function isArrayLikeObject(value) {
66973
+ return lodash_es_isObjectLike(value) && lodash_es_isArrayLike(value);
66974
+ }
66975
+
66976
+ /* harmony default export */ var lodash_es_isArrayLikeObject = (isArrayLikeObject);
66977
+
66978
+ // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/lodash-es/without.js
66979
+
66980
+
66981
+
66982
+
66983
+ /**
66984
+ * Creates an array excluding all given values using
66985
+ * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
66986
+ * for equality comparisons.
66987
+ *
66988
+ * **Note:** Unlike `_.pull`, this method returns a new array.
66989
+ *
66990
+ * @static
66991
+ * @memberOf _
66992
+ * @since 0.1.0
66993
+ * @category Array
66994
+ * @param {Array} array The array to inspect.
66995
+ * @param {...*} [values] The values to exclude.
66996
+ * @returns {Array} Returns the new array of filtered values.
66997
+ * @see _.difference, _.xor
66998
+ * @example
66999
+ *
67000
+ * _.without([2, 1, 2, 3], 1, 2);
67001
+ * // => [3]
67002
+ */
67003
+ var without = _baseRest(function(array, values) {
67004
+ return lodash_es_isArrayLikeObject(array)
67005
+ ? _baseDifference(array, values)
67006
+ : [];
67007
+ });
67008
+
67009
+ /* harmony default export */ var lodash_es_without = (without);
67010
+
67011
+ // EXTERNAL MODULE: /home/runner/work/semi-design/semi-design/node_modules/@babel/runtime-corejs3/core-js-stable/object/freeze.js
67012
+ var freeze = __webpack_require__("p7I/");
67013
+ var freeze_default = /*#__PURE__*/__webpack_require__.n(freeze);
67014
+
67015
+ // CONCATENATED MODULE: ../semi-foundation/utils/FocusHandle.ts
67016
+
67017
+
67018
+
67019
+
67020
+
67021
+
67022
+ /*
67023
+ * Usage:
67024
+ * // Eg1: Pass a dom as the tab tarp container.
67025
+ * const handle = new FocusTrapHandle(container, { enable: true });
67026
+ *
67027
+ * // Eg2: The focus redirect listener will be triggered when user pressed tab whiling last focusable dom is focusing in trap dom, return false to cancel redirect and use the browser normal tab focus index.
67028
+ * handle.addFocusRedirectListener((e)=>{
67029
+ * return true; // return false to prevent redirect on target DOM;
67030
+ * });
67031
+ *
67032
+ * // Eg3: Set it to false in order to disable tab tarp at any moment;
67033
+ * handle.enable = true;
67034
+ *
67035
+ * // Eg4: Destroy instance when component is unmounting for saving resource;
67036
+ * handle.destroy();
67037
+ *
67038
+ * */
67039
+ class FocusHandle_FocusTrapHandle {
67040
+ constructor(container, options) {
67041
+ var _a;
67042
+
67043
+ this.addFocusRedirectListener = listener => {
67044
+ this.focusRedirectListenerList.push(listener);
67045
+ return () => this.removeFocusRedirectListener(listener);
67046
+ };
67047
+
67048
+ this.removeFocusRedirectListener = listener => {
67049
+ this.focusRedirectListenerList = lodash_es_without(this.focusRedirectListenerList, listener);
67050
+ };
67051
+
67052
+ this.destroy = () => {
67053
+ var _a;
67054
+
67055
+ (_a = this.container) === null || _a === void 0 ? void 0 : _a.removeEventListener('keydown', this.onKeyPress);
67056
+ }; // ---- private func ----
67057
+
67058
+
67059
+ this.shouldFocusRedirect = element => {
67060
+ if (!this.enable) {
67061
+ return false;
67062
+ }
67063
+
67064
+ for (const listener of this.focusRedirectListenerList) {
67065
+ const should = listener(element);
67066
+
67067
+ if (!should) {
67068
+ return false;
67069
+ }
67070
+ }
67071
+
67072
+ return true;
67073
+ };
67074
+
67075
+ this.focusElement = (element, event) => {
67076
+ element === null || element === void 0 ? void 0 : element.focus();
67077
+ event.preventDefault(); // prevent browser default tab move behavior
67078
+ };
67079
+
67080
+ this.onKeyPress = event => {
67081
+ if (event && event.key === 'Tab') {
67082
+ const focusableElements = FocusHandle_FocusTrapHandle.getFocusableElements(this.container);
67083
+ const focusableNum = focusableElements.length;
67084
+
67085
+ if (focusableNum) {
67086
+ // Shift + Tab will move focus backward
67087
+ if (event.shiftKey) {
67088
+ this.handleContainerShiftTabKeyDown(focusableElements, event);
67089
+ } else {
67090
+ this.handleContainerTabKeyDown(focusableElements, event);
67091
+ }
67092
+ }
67093
+ }
67094
+ };
67095
+
67096
+ this.handleContainerTabKeyDown = (focusableElements, event) => {
67097
+ const activeElement = FocusHandle_FocusTrapHandle.getActiveElement();
67098
+ const isLastCurrentFocus = focusableElements[focusableElements.length - 1] === activeElement;
67099
+ const redirectForcingElement = focusableElements[0];
67100
+
67101
+ if (isLastCurrentFocus && this.shouldFocusRedirect(redirectForcingElement)) {
67102
+ this.focusElement(redirectForcingElement, event);
67103
+ }
67104
+ };
67105
+
67106
+ this.handleContainerShiftTabKeyDown = (focusableElements, event) => {
67107
+ const activeElement = FocusHandle_FocusTrapHandle.getActiveElement();
67108
+ const isFirstCurrentFocus = focusableElements[0] === activeElement;
67109
+ const redirectForcingElement = focusableElements[focusableElements.length - 1];
67110
+
67111
+ if (isFirstCurrentFocus && this.shouldFocusRedirect(redirectForcingElement)) {
67112
+ this.focusElement(redirectForcingElement, event);
67113
+ }
67114
+ };
67115
+
67116
+ freeze_default()(options); // prevent user to change options after init;
67117
+
67118
+
67119
+ this.container = container;
67120
+ this.options = options;
67121
+ this.enable = (_a = options === null || options === void 0 ? void 0 : options.enable) !== null && _a !== void 0 ? _a : true;
67122
+
67123
+ this.focusRedirectListenerList = (() => {
67124
+ if (options === null || options === void 0 ? void 0 : options.onFocusRedirectListener) {
67125
+ return is_array_default()(options.onFocusRedirectListener) ? [...options.onFocusRedirectListener] : [options.onFocusRedirectListener];
67126
+ } else {
67127
+ return [];
67128
+ }
67129
+ })();
67130
+
67131
+ this.container.addEventListener('keydown', this.onKeyPress);
67132
+ }
67133
+
67134
+ get enable() {
67135
+ return this._enable;
67136
+ }
67137
+
67138
+ set enable(value) {
67139
+ this._enable = value;
67140
+ } // ---- static func ----
67141
+
67142
+
67143
+ static getFocusableElements(node) {
67144
+ if (!Object(isElement["a" /* default */])(node)) {
67145
+ return [];
67146
+ }
67147
+
67148
+ const focusableSelectorsList = ["input:not([disabled]):not([tabindex='-1'])", "textarea:not([disabled]):not([tabindex='-1'])", "button:not([disabled]):not([tabindex='-1'])", "a[href]:not([tabindex='-1'])", "select:not([disabled]):not([tabindex='-1'])", "area[href]:not([tabindex='-1'])", "iframe:not([tabindex='-1'])", "object:not([tabindex='-1'])", "*[tabindex]:not([tabindex='-1'])", "*[contenteditable]:not([tabindex='-1'])"];
67149
+ const focusableSelectorsStr = focusableSelectorsList.join(','); // we are not filtered elements which are invisible
67150
+
67151
+ return from_default()(node.querySelectorAll(focusableSelectorsStr));
67152
+ }
67153
+
67154
+ static getActiveElement() {
67155
+ return document ? document.activeElement : null;
67156
+ }
67157
+
67158
+ }
67159
+
67160
+ /* harmony default export */ var FocusHandle = (FocusHandle_FocusTrapHandle);
67161
+ // CONCATENATED MODULE: ./modal/ModalContent.tsx
67162
+
67163
+
67164
+
67165
+
67166
+
67167
+
67168
+
67169
+
67170
+
67171
+
67172
+ var ModalContent_rest = undefined && undefined.__rest || function (s, e) {
67173
+ var t = {};
67174
+
67175
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && index_of_default()(e).call(e, p) < 0) t[p] = s[p];
67176
+
67177
+ if (s != null && typeof get_own_property_symbols_default.a === "function") for (var i = 0, p = get_own_property_symbols_default()(s); i < p.length; i++) {
67178
+ if (index_of_default()(e).call(e, p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
67179
+ }
67180
+ return t;
67181
+ };
67182
+ /* eslint-disable eqeqeq */
67183
+
67184
+
67185
+
67186
+
67187
+
67188
+
67189
+
67190
+
67191
+
67192
+ // eslint-disable-next-line max-len
67193
+
67194
+
67195
+
67196
+
67197
+ let uuid = 0;
67198
+ class ModalContent_ModalContent extends baseComponent_BaseComponent {
67199
+ constructor(props) {
67200
+ super(props);
67201
+
67202
+ this.onKeyDown = e => {
67203
+ this.foundation.handleKeyDown(e);
67204
+ }; // Record when clicking the modal box
67205
+
67206
+
67207
+ this.onDialogMouseDown = () => {
67208
+ this.foundation.handleDialogMouseDown();
67209
+ }; // Cancel recording when clicking the modal box at the end
67210
+
67211
+
67212
+ this.onMaskMouseUp = () => {
67213
+ this.foundation.handleMaskMouseUp();
67214
+ }; // onMaskClick will judge dialogMouseDown before onMaskMouseUp updates dialogMouseDown
67215
+
67216
+
67217
+ this.onMaskClick = e => {
67218
+ this.foundation.handleMaskClick(e);
67219
+ };
67220
+
67221
+ this.close = e => {
67222
+ this.foundation.close(e);
67223
+ };
67224
+
67225
+ this.getMaskElement = () => {
67226
+ const props = ModalContent_rest(this.props, []);
67227
+
67228
+ const {
67229
+ mask,
67230
+ maskClassName
67231
+ } = props;
67232
+
67233
+ if (mask) {
67234
+ const className = classnames_default()("".concat(modal_constants_cssClasses.DIALOG, "-mask"), {// [`${cssClasses.DIALOG}-mask-hidden`]: !props.visible,
67235
+ });
67236
+ return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67237
+ key: "mask",
67238
+ className: classnames_default()(className, maskClassName),
67239
+ style: props.maskStyle
67240
+ });
67241
+ }
67242
+
67243
+ return null;
67244
+ };
67245
+
67246
+ this.renderCloseBtn = () => {
67247
+ const {
67248
+ closable,
67249
+ closeIcon
67250
+ } = this.props;
67251
+ let closer;
67252
+
67253
+ if (closable) {
67254
+ const iconType = closeIcon || /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(IconClose, null);
67255
+ closer = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(iconButton_0, {
67256
+ "aria-label": "close",
67257
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-close"),
67258
+ key: "close-btn",
67259
+ onClick: this.close,
67260
+ type: "tertiary",
67261
+ icon: iconType,
67262
+ theme: "borderless",
67263
+ size: "small"
67264
+ });
67265
+ }
67266
+
67267
+ return closer;
67268
+ };
67269
+
67270
+ this.renderIcon = () => {
67271
+ const {
67272
+ icon
67273
+ } = this.props;
67274
+ return icon ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("span", {
67275
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-icon-wrapper")
67276
+ }, icon) : null;
67277
+ };
67278
+
67279
+ this.renderHeader = () => {
67280
+ if ('header' in this.props) {
67281
+ return this.props.header;
67282
+ }
67283
+
67284
+ const {
67285
+ title
67286
+ } = this.props;
67287
+ const closer = this.renderCloseBtn();
67288
+ const icon = this.renderIcon();
67289
+ return title === null || title === undefined ? null : /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67290
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-header")
67291
+ }, icon, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(typography_0.Title, {
67292
+ heading: 5,
67293
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-title"),
67294
+ id: "".concat(modal_constants_cssClasses.DIALOG, "-title")
67295
+ }, title), closer);
67296
+ };
67297
+
67298
+ this.renderBody = () => {
67299
+ const {
67300
+ bodyStyle,
67301
+ children,
67302
+ title
67303
+ } = this.props;
67304
+ const bodyCls = classnames_default()("".concat(modal_constants_cssClasses.DIALOG, "-body"), {
67305
+ ["".concat(modal_constants_cssClasses.DIALOG, "-withIcon")]: this.props.icon
67306
+ });
67307
+ const closer = this.renderCloseBtn();
67308
+ const icon = this.renderIcon();
67309
+ const hasHeader = title !== null && title !== undefined || 'header' in this.props;
67310
+ return hasHeader ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67311
+ className: bodyCls,
67312
+ id: "".concat(modal_constants_cssClasses.DIALOG, "-body"),
67313
+ style: bodyStyle
67314
+ }, children) : /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67315
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-body-wrapper")
67316
+ }, icon, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67317
+ className: bodyCls,
67318
+ style: bodyStyle
67319
+ }, children), closer);
67320
+ };
67321
+
67322
+ this.getDialogElement = () => {
67323
+ var _context;
67324
+
67325
+ const props = ModalContent_rest(this.props, []);
67326
+
67327
+ const style = {};
67328
+ const digCls = classnames_default()("".concat(modal_constants_cssClasses.DIALOG), {
67329
+ ["".concat(modal_constants_cssClasses.DIALOG, "-centered")]: props.centered,
67330
+ [concat_default()(_context = "".concat(modal_constants_cssClasses.DIALOG, "-")).call(_context, props.size)]: props.size
67331
+ });
67332
+
67333
+ if (props.width) {
67334
+ style.width = props.width;
67335
+ }
67336
+
67337
+ if (props.height) {
67338
+ style.height = props.height;
67339
+ }
67340
+
67341
+ if (props.isFullScreen) {
67342
+ style.width = '100%';
67343
+ style.height = '100%';
67344
+ style.margin = 'unset';
67345
+ }
67346
+
67347
+ const body = this.renderBody();
67348
+ const header = this.renderHeader();
67349
+ const footer = props.footer ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67350
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-footer")
67351
+ }, props.footer) : null;
67352
+ const dialogElement =
67353
+ /*#__PURE__*/
67354
+ // eslint-disable-next-line jsx-a11y/no-static-element-interactions
67355
+ external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67356
+ key: "dialog-element",
67357
+ className: digCls,
67358
+ onMouseDown: this.onDialogMouseDown,
67359
+ style: assign_default()(assign_default()({}, props.style), style),
67360
+ id: this.dialogId
67361
+ }, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67362
+ role: "dialog",
67363
+ ref: this.modalDialogRef,
67364
+ tabIndex: -1,
67365
+ "aria-modal": "true",
67366
+ "aria-labelledby": "".concat(modal_constants_cssClasses.DIALOG, "-title"),
67367
+ "aria-describedby": "".concat(modal_constants_cssClasses.DIALOG, "-body"),
67368
+ onAnimationEnd: props.onAnimationEnd,
67369
+ className: classnames_default()(["".concat(modal_constants_cssClasses.DIALOG, "-content"), props.contentClassName, {
67370
+ ["".concat(modal_constants_cssClasses.DIALOG, "-content-fullScreen")]: props.isFullScreen
67371
+ }])
67372
+ }, header, body, footer)); // return props.visible ? dialogElement : null;
67373
+
67374
+ return dialogElement;
67375
+ };
67376
+
67377
+ this.state = {
67378
+ dialogMouseDown: false,
67379
+ prevFocusElement: FocusHandle.getActiveElement()
67380
+ };
67381
+ this.foundation = new modalContentFoundation_ModalContentFoundation(this.adapter);
67382
+ this.dialogId = "dialog-".concat(uuid++);
67383
+ this.modalDialogRef = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createRef();
67384
+ }
67385
+
67386
+ get adapter() {
67387
+ return assign_default()(assign_default()({}, super.adapter), {
67388
+ notifyClose: e => {
67389
+ this.props.onClose(e);
67390
+ },
67391
+ notifyDialogMouseDown: () => {
67392
+ this.setState({
67393
+ dialogMouseDown: true
67394
+ });
67395
+ },
67396
+ notifyDialogMouseUp: () => {
67397
+ if (this.state.dialogMouseDown) {
67398
+ // Not setting setTimeout triggers close when modal external mouseUp
67399
+ this.timeoutId = set_timeout_default()(() => {
67400
+ this.setState({
67401
+ dialogMouseDown: false
67402
+ });
67403
+ }, 0);
67404
+ }
67405
+ },
67406
+ addKeyDownEventListener: () => {
67407
+ if (this.props.closeOnEsc) {
67408
+ var _context2;
67409
+
67410
+ document.addEventListener('keydown', bind_default()(_context2 = this.foundation.handleKeyDown).call(_context2, this.foundation));
67411
+ }
67412
+ },
67413
+ removeKeyDownEventListener: () => {
67414
+ if (this.props.closeOnEsc) {
67415
+ var _context3;
67416
+
67417
+ document.removeEventListener('keydown', bind_default()(_context3 = this.foundation.handleKeyDown).call(_context3, this.foundation));
67418
+ }
67419
+ },
67420
+ getMouseState: () => this.state.dialogMouseDown,
67421
+ modalDialogFocus: () => {
67422
+ var _a, _b, _c;
67423
+
67424
+ let activeElementInDialog;
67425
+
67426
+ if (this.modalDialogRef) {
67427
+ const activeElement = FocusHandle.getActiveElement();
67428
+ activeElementInDialog = this.modalDialogRef.current.contains(activeElement);
67429
+ (_a = this.focusTrapHandle) === null || _a === void 0 ? void 0 : _a.destroy();
67430
+ this.focusTrapHandle = new FocusHandle(this.modalDialogRef.current);
67431
+ }
67432
+
67433
+ if (!activeElementInDialog) {
67434
+ (_c = (_b = this.modalDialogRef) === null || _b === void 0 ? void 0 : _b.current) === null || _c === void 0 ? void 0 : _c.focus();
67435
+ }
67436
+ },
67437
+ modalDialogBlur: () => {
67438
+ var _a, _b;
67439
+
67440
+ (_a = this.modalDialogRef) === null || _a === void 0 ? void 0 : _a.current.blur();
67441
+ (_b = this.focusTrapHandle) === null || _b === void 0 ? void 0 : _b.destroy();
67442
+ },
67443
+ prevFocusElementReFocus: () => {
67444
+ const {
67445
+ prevFocusElement
67446
+ } = this.state;
67447
+
67448
+ const focus = get_default()(prevFocusElement, 'focus');
67449
+
67450
+ isFunction_default()(focus) && prevFocusElement.focus();
67451
+ }
67452
+ });
67453
+ }
67454
+
67455
+ componentDidMount() {
67456
+ this.foundation.handleKeyDownEventListenerMount();
67457
+ this.foundation.modalDialogFocus();
67458
+ }
67459
+
67460
+ componentWillUnmount() {
67461
+ clearTimeout(this.timeoutId);
67462
+ this.foundation.destroy();
67463
+ }
67464
+
67465
+ render() {
67466
+ const {
67467
+ maskClosable,
67468
+ className,
67469
+ getPopupContainer,
67470
+ maskFixed,
67471
+ getContainerContext
67472
+ } = this.props;
67473
+ const {
67474
+ direction
67475
+ } = this.context;
67476
+ const classList = classnames_default()(className, {
67477
+ ["".concat(modal_constants_cssClasses.DIALOG, "-popup")]: getPopupContainer && !maskFixed,
67478
+ ["".concat(modal_constants_cssClasses.DIALOG, "-fixed")]: maskFixed,
67479
+ ["".concat(modal_constants_cssClasses.DIALOG, "-rtl")]: direction === 'rtl'
67480
+ });
67481
+ const containerContext = getContainerContext();
67482
+ const elem = /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67483
+ className: classList
67484
+ }, this.getMaskElement(), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
67485
+ role: "none",
67486
+ tabIndex: -1,
67487
+ className: "".concat(modal_constants_cssClasses.DIALOG, "-wrap"),
67488
+ onClick: maskClosable ? this.onMaskClick : null,
67489
+ onMouseUp: maskClosable ? this.onMaskMouseUp : null
67490
+ }, this.getDialogElement())); // eslint-disable-next-line max-len
67491
+
67492
+ return containerContext && containerContext.Provider ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(containerContext.Provider, {
67493
+ value: containerContext.value
67494
+ }, elem) : elem;
67495
+ }
67496
+
67497
+ }
67498
+ ModalContent_ModalContent.contextType = configProvider_context;
67499
+ ModalContent_ModalContent.propTypes = {
65638
67500
  close: prop_types_default.a.func,
65639
67501
  getContainerContext: prop_types_default.a.func,
65640
67502
  contentClassName: prop_types_default.a.string,
@@ -66063,7 +67925,8 @@ class Modal_Modal extends baseComponent_BaseComponent {
66063
67925
  "aria-label": "cancel",
66064
67926
  onClick: this.handleCancel,
66065
67927
  loading: cancelLoading,
66066
- type: "tertiary"
67928
+ type: "tertiary",
67929
+ autoFocus: true
66067
67930
  }, this.props.cancelButtonProps), cancelText || locale.cancel);
66068
67931
  }
66069
67932
  };
@@ -66346,7 +68209,7 @@ Modal_Modal.defaultProps = {
66346
68209
  onOk: noop_default.a,
66347
68210
  afterClose: noop_default.a,
66348
68211
  maskFixed: false,
66349
- closeOnEsc: false,
68212
+ closeOnEsc: true,
66350
68213
  size: 'small',
66351
68214
  keepDOM: false,
66352
68215
  lazyRender: true,
@@ -69196,7 +71059,11 @@ class foundation_InputNumberFoundation extends foundation {
69196
71059
  }
69197
71060
 
69198
71061
  handleUpClick(event) {
69199
- if (!this._isMouseButtonLeft(event)) {
71062
+ const {
71063
+ readonly
71064
+ } = this.getProps();
71065
+
71066
+ if (!this._isMouseButtonLeft(event) || readonly) {
69200
71067
  return;
69201
71068
  }
69202
71069
 
@@ -69219,7 +71086,11 @@ class foundation_InputNumberFoundation extends foundation {
69219
71086
  }
69220
71087
 
69221
71088
  handleDownClick(event) {
69222
- if (!this._isMouseButtonLeft(event)) {
71089
+ const {
71090
+ readonly
71091
+ } = this.getProps();
71092
+
71093
+ if (!this._isMouseButtonLeft(event) || readonly) {
69223
71094
  return;
69224
71095
  }
69225
71096
 
@@ -78318,7 +80189,7 @@ class select_Select extends baseComponent_BaseComponent {
78318
80189
  role: "listbox",
78319
80190
  "aria-multiselectable": multiple,
78320
80191
  onScroll: e => this.foundation.handleListScroll(e)
78321
- }, innerTopSlot, !loading ? listContent : this.renderLoading(), isEmpty && !loading ? this.renderEmpty() : null, innerBottomSlot), outerBottomSlot);
80192
+ }, innerTopSlot, loading ? this.renderLoading() : isEmpty ? this.renderEmpty() : listContent, innerBottomSlot), outerBottomSlot);
78322
80193
  }
78323
80194
 
78324
80195
  renderSingleSelection(selections, filterable) {
@@ -79809,7 +81680,7 @@ class progress_Progress extends external_root_React_commonjs2_react_commonjs_rea
79809
81680
  const perc = this.calcPercent(percent);
79810
81681
  const percNumber = this.calcPercent(percentNumber);
79811
81682
  const innerStyle = {
79812
- backgroundColor: stroke
81683
+ background: stroke
79813
81684
  };
79814
81685
 
79815
81686
  if (direction === progress_constants_strings.DEFAULT_DIRECTION) {
@@ -83001,7 +84872,7 @@ class slider_Slider extends baseComponent_BaseComponent {
83001
84872
  external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
83002
84873
  className: slider_constants_cssClasses.TRACK,
83003
84874
  style: trackStyle,
83004
- onClick: e => this.foundation.handleWrapClick(e)
84875
+ onClick: this.foundation.handleWrapClick
83005
84876
  })
83006
84877
  );
83007
84878
  };
@@ -83029,7 +84900,7 @@ class slider_Slider extends baseComponent_BaseComponent {
83029
84900
  // eslint-disable-next-line jsx-a11y/no-static-element-interactions
83030
84901
  external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("span", {
83031
84902
  key: mark,
83032
- onClick: e => this.foundation.handleWrapClick(e),
84903
+ onClick: this.foundation.handleWrapClick,
83033
84904
  className: markClass,
83034
84905
  style: {
83035
84906
  [stylePos]: "calc(".concat(markPercent * 100, "% - 2px)")
@@ -83057,12 +84928,16 @@ class slider_Slider extends baseComponent_BaseComponent {
83057
84928
 
83058
84929
  const activeResult = this.foundation.isMarkActive(Number(mark));
83059
84930
  const markPercent = (Number(mark) - min) / (max - min);
83060
- return activeResult ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("span", {
84931
+ return activeResult ?
84932
+ /*#__PURE__*/
84933
+ // eslint-disable-next-line jsx-a11y/click-events-have-key-events, jsx-a11y/no-static-element-interactions
84934
+ external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("span", {
83061
84935
  key: mark,
83062
84936
  className: classnames_default()(concat_default()(_context3 = "".concat(slider_prefixCls, "-mark")).call(_context3, vertical && verticalReverse ? '-reverse' : '')),
83063
84937
  style: {
83064
84938
  [stylePos]: "".concat(markPercent * 100, "%")
83065
- }
84939
+ },
84940
+ onClick: this.foundation.handleWrapClick
83066
84941
  }, marks[mark]) : null;
83067
84942
  })) : null;
83068
84943
  return labelContent;
@@ -83342,7 +85217,7 @@ class slider_Slider extends baseComponent_BaseComponent {
83342
85217
  onMouseLeave: () => this.foundation.handleWrapperLeave()
83343
85218
  }, /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
83344
85219
  className: "".concat(slider_prefixCls, "-rail"),
83345
- onClick: e => this.foundation.handleWrapClick(e),
85220
+ onClick: this.foundation.handleWrapClick,
83346
85221
  style: this.props.railStyle
83347
85222
  }), this.renderTrack(), this.renderStepDot(), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", null, this.renderHandle()), this.renderLabel(), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", {
83348
85223
  className: boundaryClass
@@ -92016,10 +93891,61 @@ const tabs_constants_strings = {
92016
93891
 
92017
93892
 
92018
93893
 
93894
+
93895
+
93896
+
93897
+
92019
93898
  class foundation_TabsFoundation extends foundation {
92020
93899
  constructor(adapter) {
92021
93900
  super(assign_default()({}, adapter));
92022
93901
  this.destroy = noop_default.a;
93902
+
93903
+ this.handlePrevent = event => {
93904
+ event.stopPropagation();
93905
+ event.preventDefault();
93906
+ };
93907
+
93908
+ this.handleKeyDown = (event, itemKey, closable) => {
93909
+ var _context;
93910
+
93911
+ const tabs = filter_default()(_context = [...event.target.parentNode.childNodes]).call(_context, item => {
93912
+ var _context2;
93913
+
93914
+ return includes_default()(_context2 = get_default()(item, 'attributes.data-tabkey.value', '')).call(_context2, 'semiTab') && item.ariaDisabled !== "true";
93915
+ });
93916
+
93917
+ switch (event.key) {
93918
+ case "ArrowLeft":
93919
+ case "ArrowRight":
93920
+ case "ArrowUp":
93921
+ case "ArrowDown":
93922
+ this.determineOrientation(event, tabs);
93923
+ break;
93924
+
93925
+ case "Backspace":
93926
+ case "Delete":
93927
+ this.handleDeleteKeyDown(event, tabs, itemKey, closable);
93928
+ break;
93929
+
93930
+ case "Enter":
93931
+ case " ":
93932
+ this.handleTabClick(itemKey, event);
93933
+ this.handlePrevent(event);
93934
+ break;
93935
+
93936
+ case "Home":
93937
+ tabs[0].focus(); // focus first tab
93938
+
93939
+ this.handlePrevent(event);
93940
+ break;
93941
+
93942
+ case "End":
93943
+ tabs[tabs.length - 1].focus(); // focus last tab
93944
+
93945
+ this.handlePrevent(event);
93946
+ break;
93947
+ }
93948
+ };
92023
93949
  }
92024
93950
 
92025
93951
  init() {
@@ -92089,11 +94015,67 @@ class foundation_TabsFoundation extends foundation {
92089
94015
  this._adapter.notifyTabDelete(tabKey);
92090
94016
  }
92091
94017
 
94018
+ determineOrientation(event, tabs) {
94019
+ const {
94020
+ tabPosition
94021
+ } = this.getProps();
94022
+ const isVertical = tabPosition === 'left';
94023
+
94024
+ if (isVertical) {
94025
+ if (event.key === "ArrowUp" || event.key === "ArrowDown") {
94026
+ this.switchTabOnArrowPress(event, tabs);
94027
+ this.handlePrevent(event);
94028
+ }
94029
+ } else {
94030
+ if (event.key === "ArrowLeft" || event.key === "ArrowRight") {
94031
+ this.switchTabOnArrowPress(event, tabs);
94032
+ this.handlePrevent(event);
94033
+ }
94034
+ }
94035
+ }
94036
+
94037
+ handleDeleteKeyDown(event, tabs, itemKey, closable) {
94038
+ if (closable) {
94039
+ this.handleTabDelete(itemKey);
94040
+
94041
+ const index = index_of_default()(tabs).call(tabs, event.target); // Move focus to next element after deletion
94042
+ // If the element is the last removable tab, focus to its previous tab
94043
+
94044
+
94045
+ if (tabs.length !== 1) {
94046
+ tabs[index + 1 >= tabs.length ? index - 1 : index + 1].focus();
94047
+ }
94048
+ }
94049
+ }
94050
+
94051
+ switchTabOnArrowPress(event, tabs) {
94052
+ const index = index_of_default()(tabs).call(tabs, event.target);
94053
+
94054
+ const direction = {
94055
+ "ArrowLeft": -1,
94056
+ "ArrowUp": -1,
94057
+ "ArrowRight": 1,
94058
+ "ArrowDown": 1
94059
+ };
94060
+
94061
+ if (direction[event.key]) {
94062
+ if (index !== undefined) {
94063
+ if (tabs[index + direction[event.key]]) {
94064
+ tabs[index + direction[event.key]].focus();
94065
+ } else if (event.key === "ArrowLeft" || event.key === "ArrowUp") {
94066
+ tabs[tabs.length - 1].focus(); // focus last tab
94067
+ } else if (event.key === "ArrowRight" || event.key == "ArrowDown") {
94068
+ tabs[0].focus(); // focus first tab
94069
+ }
94070
+ }
94071
+ }
94072
+ }
94073
+
92092
94074
  }
92093
94075
 
92094
94076
  /* harmony default export */ var tabs_foundation = (foundation_TabsFoundation);
92095
94077
  // EXTERNAL MODULE: ../semi-foundation/tabs/tabs.scss
92096
- var tabs = __webpack_require__("X9hi");
94078
+ var tabs_tabs = __webpack_require__("X9hi");
92097
94079
 
92098
94080
  // CONCATENATED MODULE: ./tabs/TabBar.tsx
92099
94081
 
@@ -92147,6 +94129,10 @@ class TabBar_TabBar extends external_root_React_commonjs2_react_commonjs_react_a
92147
94129
  }
92148
94130
  };
92149
94131
 
94132
+ this.handleKeyDown = (event, itemKey, closable) => {
94133
+ this.props.handleKeyDown(event, itemKey, closable);
94134
+ };
94135
+
92150
94136
  this.renderTabItem = panel => {
92151
94137
  const {
92152
94138
  size,
@@ -92180,9 +94166,12 @@ class TabBar_TabBar extends external_root_React_commonjs2_react_commonjs_react_a
92180
94166
  return /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement("div", assign_default()({
92181
94167
  role: "tab",
92182
94168
  id: "semiTab".concat(key),
94169
+ "data-tabkey": "semiTab".concat(key),
92183
94170
  "aria-controls": "semiTabPanel".concat(key),
92184
94171
  "aria-disabled": panel.disabled ? 'true' : 'false',
92185
- "aria-selected": isSelected ? 'true' : 'false'
94172
+ "aria-selected": isSelected ? 'true' : 'false',
94173
+ tabIndex: isSelected ? 0 : -1,
94174
+ onKeyDown: e => this.handleKeyDown(e, key, panel.closable)
92186
94175
  }, events, {
92187
94176
  className: className,
92188
94177
  key: this._getItemKey(key)
@@ -92625,7 +94614,8 @@ class TabPane_TabPane extends external_root_React_commonjs2_react_commonjs_react
92625
94614
  "aria-labelledby": "semiTab".concat(itemKey),
92626
94615
  className: classNames,
92627
94616
  style: style,
92628
- "aria-hidden": active ? 'false' : 'true'
94617
+ "aria-hidden": active ? 'false' : 'true',
94618
+ tabIndex: 0
92629
94619
  }, getDataAttr(restProps)), motion ? /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(tabs_TabPaneTransition, {
92630
94620
  direction: this.getDirection(this.context.activeKey, itemKey, this.context.panes),
92631
94621
  motion: motion,
@@ -92968,7 +94958,8 @@ class tabs_Tabs extends baseComponent_BaseComponent {
92968
94958
  tabBarExtraContent,
92969
94959
  tabPosition,
92970
94960
  type,
92971
- deleteTabItem: this.deleteTabItem
94961
+ deleteTabItem: this.deleteTabItem,
94962
+ handleKeyDown: this.foundation.handleKeyDown
92972
94963
  };
92973
94964
  const tabBar = renderTabBar ? renderTabBar(tabBarProps, tabs_TabBar) : /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default.a.createElement(tabs_TabBar, assign_default()({}, tabBarProps));
92974
94965
  const content = keepDOM ? children : this.getActiveItem();
@@ -98881,7 +100872,7 @@ class treeSelect_TreeSelect extends baseComponent_BaseComponent {
98881
100872
 
98882
100873
  if (checkRelation === 'related') {
98883
100874
  renderKeys = normalizeKeyList([...checkedKeys], keyEntities, leafOnly);
98884
- } else if (checkRelation === 'unRelated') {
100875
+ } else if (checkRelation === 'unRelated' && keys_default()(keyEntities).length > 0) {
98885
100876
  renderKeys = [...realCheckedKeys];
98886
100877
  }
98887
100878
 
@@ -100035,13 +102026,13 @@ var core_js_stable_url = __webpack_require__("QjT4");
100035
102026
  var url_default = /*#__PURE__*/__webpack_require__.n(core_js_stable_url);
100036
102027
 
100037
102028
  // CONCATENATED MODULE: ../semi-foundation/utils/isObject.ts
100038
- function isObject_isObject(obj) {
102029
+ function utils_isObject_isObject(obj) {
100039
102030
  return obj !== null && typeof obj === 'object';
100040
102031
  }
100041
102032
  // CONCATENATED MODULE: ../semi-foundation/utils/isPromise.ts
100042
102033
 
100043
102034
  function isPromise(value) {
100044
- return isObject_isObject(value) && typeof value.then === 'function';
102035
+ return utils_isObject_isObject(value) && typeof value.then === 'function';
100045
102036
  }
100046
102037
  // CONCATENATED MODULE: ../semi-foundation/upload/constants.ts
100047
102038
 
@@ -102568,7 +104559,7 @@ function _slicedToArray(arr, i) {
102568
104559
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
102569
104560
  }
102570
104561
  // CONCATENATED MODULE: /home/runner/work/semi-design/semi-design/node_modules/@babel/runtime/helpers/esm/defineProperty.js
102571
- function _defineProperty(obj, key, value) {
104562
+ function defineProperty_defineProperty(obj, key, value) {
102572
104563
  if (key in obj) {
102573
104564
  Object.defineProperty(obj, key, {
102574
104565
  value: value,
@@ -102596,7 +104587,7 @@ function _objectSpread(target) {
102596
104587
  }
102597
104588
 
102598
104589
  ownKeys.forEach(function (key) {
102599
- _defineProperty(target, key, source[key]);
104590
+ defineProperty_defineProperty(target, key, source[key]);
102600
104591
  });
102601
104592
  }
102602
104593
 
@@ -102725,7 +104716,7 @@ var react_sortable_hoc_esm_Manager = function () {
102725
104716
  function Manager() {
102726
104717
  _classCallCheck(this, Manager);
102727
104718
 
102728
- _defineProperty(this, "refs", {});
104719
+ defineProperty_defineProperty(this, "refs", {});
102729
104720
  }
102730
104721
 
102731
104722
  _createClass(Manager, [{
@@ -103072,7 +105063,7 @@ function sortableHandle(WrappedComponent) {
103072
105063
 
103073
105064
  _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(WithSortableHandle)).call.apply(_getPrototypeOf2, [this].concat(args)));
103074
105065
 
103075
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "wrappedInstance", Object(external_root_React_commonjs2_react_commonjs_react_amd_react_["createRef"])());
105066
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "wrappedInstance", Object(external_root_React_commonjs2_react_commonjs_react_amd_react_["createRef"])());
103076
105067
 
103077
105068
  return _this;
103078
105069
  }
@@ -103100,7 +105091,7 @@ function sortableHandle(WrappedComponent) {
103100
105091
  }]);
103101
105092
 
103102
105093
  return WithSortableHandle;
103103
- }(external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"]), _defineProperty(_class, "displayName", provideDisplayName('sortableHandle', WrappedComponent)), _temp;
105094
+ }(external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"]), defineProperty_defineProperty(_class, "displayName", provideDisplayName('sortableHandle', WrappedComponent)), _temp;
103104
105095
  }
103105
105096
  function isSortableHandle(node) {
103106
105097
  return node.sortableHandle != null;
@@ -103312,9 +105303,9 @@ function sortableContainer(WrappedComponent) {
103312
105303
 
103313
105304
  _this = _possibleConstructorReturn(this, _getPrototypeOf(WithSortableContainer).call(this, props));
103314
105305
 
103315
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "state", {});
105306
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "state", {});
103316
105307
 
103317
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleStart", function (event) {
105308
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleStart", function (event) {
103318
105309
  var _this$props = _this.props,
103319
105310
  distance = _this$props.distance,
103320
105311
  shouldCancelStart = _this$props.shouldCancelStart;
@@ -103365,11 +105356,11 @@ function sortableContainer(WrappedComponent) {
103365
105356
  }
103366
105357
  });
103367
105358
 
103368
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "nodeIsChild", function (node) {
105359
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "nodeIsChild", function (node) {
103369
105360
  return node.sortableInfo.manager === _this.manager;
103370
105361
  });
103371
105362
 
103372
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleMove", function (event) {
105363
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleMove", function (event) {
103373
105364
  var _this$props2 = _this.props,
103374
105365
  distance = _this$props2.distance,
103375
105366
  pressThreshold = _this$props2.pressThreshold;
@@ -103392,13 +105383,13 @@ function sortableContainer(WrappedComponent) {
103392
105383
  }
103393
105384
  });
103394
105385
 
103395
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleEnd", function () {
105386
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleEnd", function () {
103396
105387
  _this.touched = false;
103397
105388
 
103398
105389
  _this.cancel();
103399
105390
  });
103400
105391
 
103401
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "cancel", function () {
105392
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "cancel", function () {
103402
105393
  var distance = _this.props.distance;
103403
105394
  var sorting = _this.state.sorting;
103404
105395
 
@@ -103411,7 +105402,7 @@ function sortableContainer(WrappedComponent) {
103411
105402
  }
103412
105403
  });
103413
105404
 
103414
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handlePress", function (event) {
105405
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handlePress", function (event) {
103415
105406
  try {
103416
105407
  var active = _this.manager.getActive();
103417
105408
 
@@ -103616,7 +105607,7 @@ function sortableContainer(WrappedComponent) {
103616
105607
  }
103617
105608
  });
103618
105609
 
103619
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleSortMove", function (event) {
105610
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleSortMove", function (event) {
103620
105611
  var onSortMove = _this.props.onSortMove;
103621
105612
 
103622
105613
  if (typeof event.preventDefault === 'function' && event.cancelable) {
@@ -103634,7 +105625,7 @@ function sortableContainer(WrappedComponent) {
103634
105625
  }
103635
105626
  });
103636
105627
 
103637
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleSortEnd", function (event) {
105628
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleSortEnd", function (event) {
103638
105629
  var _this$props4 = _this.props,
103639
105630
  hideSortableGhost = _this$props4.hideSortableGhost,
103640
105631
  onSortEnd = _this$props4.onSortEnd;
@@ -103703,7 +105694,7 @@ function sortableContainer(WrappedComponent) {
103703
105694
  _this.touched = false;
103704
105695
  });
103705
105696
 
103706
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "autoscroll", function () {
105697
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "autoscroll", function () {
103707
105698
  var disableAutoscroll = _this.props.disableAutoscroll;
103708
105699
  var isKeySorting = _this.manager.isKeySorting;
103709
105700
 
@@ -103745,14 +105736,14 @@ function sortableContainer(WrappedComponent) {
103745
105736
  });
103746
105737
  });
103747
105738
 
103748
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onAutoScroll", function (offset) {
105739
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "onAutoScroll", function (offset) {
103749
105740
  _this.translate.x += offset.left;
103750
105741
  _this.translate.y += offset.top;
103751
105742
 
103752
105743
  _this.animateNodes();
103753
105744
  });
103754
105745
 
103755
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleKeyDown", function (event) {
105746
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleKeyDown", function (event) {
103756
105747
  var keyCode = event.keyCode;
103757
105748
  var _this$props5 = _this.props,
103758
105749
  shouldCancelStart = _this$props5.shouldCancelStart,
@@ -103783,7 +105774,7 @@ function sortableContainer(WrappedComponent) {
103783
105774
  }
103784
105775
  });
103785
105776
 
103786
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyLift", function (event) {
105777
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyLift", function (event) {
103787
105778
  var target = event.target;
103788
105779
  var node = closest(target, function (el) {
103789
105780
  return el.sortableInfo != null;
@@ -103801,7 +105792,7 @@ function sortableContainer(WrappedComponent) {
103801
105792
  _this.handlePress(event);
103802
105793
  });
103803
105794
 
103804
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyMove", function (shift) {
105795
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyMove", function (shift) {
103805
105796
  var nodes = _this.manager.getOrderedRefs();
103806
105797
 
103807
105798
  var lastIndex = nodes[nodes.length - 1].node.sortableInfo.index;
@@ -103843,7 +105834,7 @@ function sortableContainer(WrappedComponent) {
103843
105834
  });
103844
105835
  });
103845
105836
 
103846
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyDrop", function (event) {
105837
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "keyDrop", function (event) {
103847
105838
  _this.handleSortEnd(event);
103848
105839
 
103849
105840
  if (_this.initialFocusedNode) {
@@ -103851,13 +105842,13 @@ function sortableContainer(WrappedComponent) {
103851
105842
  }
103852
105843
  });
103853
105844
 
103854
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleKeyEnd", function (event) {
105845
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "handleKeyEnd", function (event) {
103855
105846
  if (_this.manager.active) {
103856
105847
  _this.keyDrop(event);
103857
105848
  }
103858
105849
  });
103859
105850
 
103860
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "isValidSortingTarget", function (event) {
105851
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "isValidSortingTarget", function (event) {
103861
105852
  var useDragHandle = _this.props.useDragHandle;
103862
105853
  var target = event.target;
103863
105854
  var node = closest(target, function (el) {
@@ -104194,7 +106185,7 @@ function sortableContainer(WrappedComponent) {
104194
106185
  }]);
104195
106186
 
104196
106187
  return WithSortableContainer;
104197
- }(external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"]), _defineProperty(_class, "displayName", provideDisplayName('sortableList', WrappedComponent)), _defineProperty(_class, "defaultProps", react_sortable_hoc_esm_defaultProps), _defineProperty(_class, "propTypes", propTypes), _temp;
106188
+ }(external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"]), defineProperty_defineProperty(_class, "displayName", provideDisplayName('sortableList', WrappedComponent)), defineProperty_defineProperty(_class, "defaultProps", react_sortable_hoc_esm_defaultProps), defineProperty_defineProperty(_class, "propTypes", propTypes), _temp;
104198
106189
  }
104199
106190
 
104200
106191
  var propTypes$1 = {
@@ -104225,7 +106216,7 @@ function sortableElement(WrappedComponent) {
104225
106216
 
104226
106217
  _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(WithSortableElement)).call.apply(_getPrototypeOf2, [this].concat(args)));
104227
106218
 
104228
- _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "wrappedInstance", Object(external_root_React_commonjs2_react_commonjs_react_amd_react_["createRef"])());
106219
+ defineProperty_defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), "wrappedInstance", Object(external_root_React_commonjs2_react_commonjs_react_amd_react_["createRef"])());
104229
106220
 
104230
106221
  return _this;
104231
106222
  }
@@ -104301,7 +106292,7 @@ function sortableElement(WrappedComponent) {
104301
106292
  }]);
104302
106293
 
104303
106294
  return WithSortableElement;
104304
- }(external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"]), _defineProperty(_class, "displayName", provideDisplayName('sortableElement', WrappedComponent)), _defineProperty(_class, "contextType", SortableContext), _defineProperty(_class, "propTypes", propTypes$1), _defineProperty(_class, "defaultProps", {
106295
+ }(external_root_React_commonjs2_react_commonjs_react_amd_react_["Component"]), defineProperty_defineProperty(_class, "displayName", provideDisplayName('sortableElement', WrappedComponent)), defineProperty_defineProperty(_class, "contextType", SortableContext), defineProperty_defineProperty(_class, "propTypes", propTypes$1), defineProperty_defineProperty(_class, "defaultProps", {
104305
106296
  collection: 0
104306
106297
  }), _temp;
104307
106298
  }
@@ -111828,6 +113819,16 @@ function getUTCWeek(dirtyDate, options) {
111828
113819
 
111829
113820
  module.exports = exports.default;
111830
113821
 
113822
+ /***/ }),
113823
+
113824
+ /***/ "xXiX":
113825
+ /***/ (function(module, exports, __webpack_require__) {
113826
+
113827
+ var parent = __webpack_require__("yIrs");
113828
+
113829
+ module.exports = parent;
113830
+
113831
+
111831
113832
  /***/ }),
111832
113833
 
111833
113834
  /***/ "xdyI":
@@ -112082,6 +114083,17 @@ $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
112082
114083
  });
112083
114084
 
112084
114085
 
114086
+ /***/ }),
114087
+
114088
+ /***/ "yIrs":
114089
+ /***/ (function(module, exports, __webpack_require__) {
114090
+
114091
+ __webpack_require__("1hU5");
114092
+ var path = __webpack_require__("j0PW");
114093
+
114094
+ module.exports = path.Object.freeze;
114095
+
114096
+
112085
114097
  /***/ }),
112086
114098
 
112087
114099
  /***/ "yULr":