shineout 3.4.0-beta.5 → 3.4.0-beta.6

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.
@@ -19,7 +19,8 @@ var jssStyle = {
19
19
  datePicker: _shineoutStyle.useDatePickerStyle,
20
20
  button: _shineoutStyle.useButtonStyle,
21
21
  innerTitle: _shineoutStyle.useInnerTitleStyle,
22
- popover: _shineoutStyle.usePopoverStyle
22
+ popover: _shineoutStyle.usePopoverStyle,
23
+ link: _shineoutStyle.useLinkStyle
23
24
  };
24
25
  var BaseDatePicker = function BaseDatePicker(props) {
25
26
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_base.DatePicker, _objectSpread({
package/cjs/index.js CHANGED
@@ -492,5 +492,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
492
492
  // 此文件由脚本自动生成,请勿直接修改。
493
493
  // This file was generated automatically by a script. Please do not modify it directly.
494
494
  var _default = exports.default = {
495
- version: '3.4.0-beta.5'
495
+ version: '3.4.0-beta.6'
496
496
  };
package/dist/shineout.js CHANGED
@@ -11991,7 +11991,7 @@ var handleStyle = function handleStyle(style) {
11991
11991
  };
11992
11992
  /* harmony default export */ var jss_style_handleStyle = (handleStyle);
11993
11993
  ;// CONCATENATED MODULE: ../shineout-style/src/version.ts
11994
- /* harmony default export */ var version = ('3.4.0-beta.5');
11994
+ /* harmony default export */ var version = ('3.4.0-beta.6');
11995
11995
  ;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
11996
11996
 
11997
11997
 
@@ -17800,16 +17800,29 @@ var datePickerStyle = objectSpread2_default()(objectSpread2_default()({
17800
17800
  display: 'flex',
17801
17801
  justifyContent: 'space-between'
17802
17802
  },
17803
- pickerFooterLeft: {
17803
+ pickerFooterTime: {
17804
17804
  padding: "".concat(src.datePickerPanelFooterPaddingY, " ").concat(src.datePickerPanelFooterPaddingX)
17805
17805
  },
17806
- pickerFooterRight: {
17806
+ pickerFooterNow: {
17807
17807
  padding: "".concat(src.datePickerPanelFooterPaddingY, " ").concat(src.datePickerPanelFooterPaddingX),
17808
17808
  '&:only-child': {
17809
17809
  width: '100%',
17810
17810
  textAlign: 'center'
17811
17811
  }
17812
17812
  },
17813
+ pickerFooterConfirm: {
17814
+ textAlign: 'right',
17815
+ padding: "".concat(src.datePickerPanelFooterPaddingY, " ").concat(src.datePickerPanelFooterPaddingX)
17816
+ },
17817
+ pickerRange: {},
17818
+ pickerRangeBody: {
17819
+ display: 'flex'
17820
+ },
17821
+ pickerRangeFooter: {
17822
+ borderTop: "1px solid ".concat(src.datePickerPanelHeaderBorderColor),
17823
+ display: 'flex',
17824
+ justifyContent: 'flex-end'
17825
+ },
17813
17826
  pickerRow: {},
17814
17827
  pickerRowWeek: {
17815
17828
  '& $pickerCell:nth-child(2)': {
@@ -41070,7 +41083,7 @@ var useDatePickerFormat = function useDatePickerFormat(props) {
41070
41083
  var handleClear = usePersistFn(function (e) {
41071
41084
  var _props$onClear;
41072
41085
  if (!clearable) return;
41073
- e.stopPropagation();
41086
+ e === null || e === void 0 || e.stopPropagation();
41074
41087
  if (disabledStatus === 'all') return;
41075
41088
  if (edit) {
41076
41089
  if (range) {
@@ -41533,6 +41546,49 @@ var useTime = function useTime(props) {
41533
41546
  };
41534
41547
  };
41535
41548
  /* harmony default export */ var use_time = (useTime);
41549
+ ;// CONCATENATED MODULE: ../base/src/link/link.tsx
41550
+
41551
+
41552
+
41553
+ var link_excluded = ["jssStyle", "className", "type", "underline", "disabled", "size", "icon", "href", "target", "children"];
41554
+ // import { } from '@sheinx/hooks';
41555
+
41556
+
41557
+ // import from icons
41558
+
41559
+
41560
+
41561
+ var Link = function Link(props) {
41562
+ var _jssStyle$link;
41563
+ var jssStyle = props.jssStyle,
41564
+ className = props.className,
41565
+ _props$type = props.type,
41566
+ type = _props$type === void 0 ? 'primary' : _props$type,
41567
+ underline = props.underline,
41568
+ disabled = props.disabled,
41569
+ size = props.size,
41570
+ icon = props.icon,
41571
+ href = props.href,
41572
+ target = props.target,
41573
+ children = props.children,
41574
+ restProps = objectWithoutProperties_default()(props, link_excluded);
41575
+ var linkClasses = (jssStyle === null || jssStyle === void 0 || (_jssStyle$link = jssStyle.link) === null || _jssStyle$link === void 0 ? void 0 : _jssStyle$link.call(jssStyle)) || {};
41576
+ var rootClass = classnames_default()(className, linkClasses.wrapper, defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, linkClasses.underline, underline === true), linkClasses.underlineHover, underline === 'hover'), linkClasses.disabled, disabled), linkClasses.sizeSmall, size === 'small'), linkClasses.sizeLarge, size === 'large'), linkClasses.primary, type === 'primary'), linkClasses.secondary, type === 'secondary'), linkClasses.danger, type === 'danger'), linkClasses.warning, type === 'warning'), linkClasses.success, type === 'success'));
41577
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)("a", objectSpread2_default()(objectSpread2_default()({
41578
+ href: disabled ? undefined : href,
41579
+ target: target,
41580
+ className: rootClass
41581
+ }, restProps), {}, {
41582
+ children: [typeof icon === 'boolean' && icon && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
41583
+ className: linkClasses.icon,
41584
+ children: icons_config.link.prefixIcon
41585
+ }), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(icon) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
41586
+ className: linkClasses.icon,
41587
+ children: icon
41588
+ }), children]
41589
+ }));
41590
+ };
41591
+ /* harmony default export */ var base_src_link_link = (Link);
41536
41592
  ;// CONCATENATED MODULE: ../base/src/date-picker/pickerTitle.tsx
41537
41593
 
41538
41594
 
@@ -41552,6 +41608,31 @@ var PickerTitle = function PickerTitle(props) {
41552
41608
  });
41553
41609
  };
41554
41610
  /* harmony default export */ var pickerTitle = (PickerTitle);
41611
+ ;// CONCATENATED MODULE: ../base/src/date-picker/confirm.tsx
41612
+
41613
+
41614
+
41615
+
41616
+ var Confirm = function Confirm(props) {
41617
+ var _jssStyle$datePicker;
41618
+ var jssStyle = props.jssStyle,
41619
+ closeByConfirm = props.closeByConfirm;
41620
+ var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$datePicker = jssStyle.datePicker) === null || _jssStyle$datePicker === void 0 ? void 0 : _jssStyle$datePicker.call(jssStyle);
41621
+ var _useConfig = useConfig(),
41622
+ locale = _useConfig.locale;
41623
+ return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
41624
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterConfirm,
41625
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_button_button, {
41626
+ size: 'small',
41627
+ type: "primary",
41628
+ jssStyle: jssStyle,
41629
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterBtn,
41630
+ onClick: closeByConfirm,
41631
+ children: getLocale(locale, 'ok')
41632
+ })
41633
+ });
41634
+ };
41635
+ /* harmony default export */ var date_picker_confirm = (Confirm);
41555
41636
  ;// CONCATENATED MODULE: ../base/src/date-picker/time.tsx
41556
41637
 
41557
41638
 
@@ -41561,6 +41642,7 @@ var PickerTitle = function PickerTitle(props) {
41561
41642
 
41562
41643
 
41563
41644
 
41645
+
41564
41646
  var TimeScroll = function TimeScroll(props) {
41565
41647
  var _jssStyle$datePicker;
41566
41648
  var mode = props.mode,
@@ -41672,21 +41754,26 @@ var Time = function Time(props) {
41672
41754
  var renderFooter = function renderFooter() {
41673
41755
  var showRight = props.showSelNow;
41674
41756
  if (!showRight) return null;
41675
- return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
41757
+ return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
41676
41758
  className: styles === null || styles === void 0 ? void 0 : styles.pickerFooter,
41677
41759
  dir: direction,
41678
- children: showRight && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
41679
- className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterRight,
41680
- children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_button_button, {
41760
+ style: {
41761
+ borderTop: props.needConfirm && props.range ? 'none' : ''
41762
+ },
41763
+ children: [showRight && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
41764
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterNow,
41765
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_link_link, {
41681
41766
  size: 'small',
41682
- mode: "text",
41683
41767
  type: "primary",
41684
41768
  jssStyle: props.jssStyle,
41685
41769
  className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterBtn,
41686
41770
  onClick: selNow,
41687
41771
  children: getLocale(locale, 'current')
41688
41772
  })
41689
- })
41773
+ }), props.needConfirm && !props.range && /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker_confirm, {
41774
+ closeByConfirm: props.closeByConfirm,
41775
+ jssStyle: props.jssStyle
41776
+ })]
41690
41777
  });
41691
41778
  };
41692
41779
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
@@ -41726,6 +41813,7 @@ var Time = function Time(props) {
41726
41813
 
41727
41814
 
41728
41815
 
41816
+
41729
41817
  var Day = function Day(props) {
41730
41818
  var _jssStyle$datePicker;
41731
41819
  var jssStyle = props.jssStyle;
@@ -41765,7 +41853,10 @@ var Day = function Day(props) {
41765
41853
  var now = new Date();
41766
41854
  if (func.isDisabled(now)) return;
41767
41855
  props.setCurrent(new Date(), areaType);
41768
- props.onChange(new Date(), props.type === 'datetime');
41856
+ props.onChange(new Date(), props.needConfirm || props.type === 'datetime');
41857
+ setTimeout(function () {
41858
+ if (props.closeByConfirm && !props.range) props.closeByConfirm();
41859
+ }, 0);
41769
41860
  };
41770
41861
  var renderDay = function renderDay(item, index) {
41771
41862
  var isActive = func.isActive(item);
@@ -41778,10 +41869,10 @@ var Day = function Day(props) {
41778
41869
  className: classnames_default()(styles === null || styles === void 0 ? void 0 : styles.pickerCell, isActive && (styles === null || styles === void 0 ? void 0 : styles.pickerCellActive), !isCurrentMonth && (styles === null || styles === void 0 ? void 0 : styles.pickerCellBound), isDisabled && (styles === null || styles === void 0 ? void 0 : styles.pickerCellDisabled), isToday && (styles === null || styles === void 0 ? void 0 : styles.pickerCellToday), isInRange && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRange), (isInRange === 'start' || isInRange === 'start-end') && props.position === 'start' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeStart), (isInRange === 'end' || isInRange === 'start-end') && props.position === 'end' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeEnd)),
41779
41870
  onClick: function onClick() {
41780
41871
  if (props.range) {
41781
- func.handleDayClick(item, props.clickTimes < 1);
41872
+ func.handleDayClick(item, props.needConfirm || props.clickTimes < 1);
41782
41873
  props.setClickTimes(props.clickTimes + 1);
41783
41874
  } else {
41784
- func.handleDayClick(item);
41875
+ func.handleDayClick(item, props.needConfirm);
41785
41876
  }
41786
41877
  },
41787
41878
  onDoubleClick: function onDoubleClick() {
@@ -41828,7 +41919,6 @@ var Day = function Day(props) {
41828
41919
  var renderFooter = function renderFooter() {
41829
41920
  var _props$rangeDate, _props$rangeDate2;
41830
41921
  var showLeft = props.type === 'datetime' && (((_props$rangeDate = props.rangeDate) === null || _props$rangeDate === void 0 ? void 0 : _props$rangeDate[0]) || ((_props$rangeDate2 = props.rangeDate) === null || _props$rangeDate2 === void 0 ? void 0 : _props$rangeDate2[1]));
41831
- var showRight = props.showSelNow;
41832
41922
  var timeStr = func.getTimeStr();
41833
41923
  if (!showLeft && !props.showSelNow) return null;
41834
41924
  var format = props.format;
@@ -41839,11 +41929,18 @@ var Day = function Day(props) {
41839
41929
  // eslint-disable-next-line
41840
41930
  if (match) format = match[0];
41841
41931
  }
41932
+ var showNeedConfirm = props.needConfirm && !props.range;
41842
41933
  return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
41843
41934
  className: styles === null || styles === void 0 ? void 0 : styles.pickerFooter,
41844
41935
  dir: direction,
41936
+ style: {
41937
+ borderTop: props.needConfirm && props.range ? 'none' : ''
41938
+ },
41845
41939
  children: [props.type === 'datetime' && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
41846
- className: classnames_default()(styles === null || styles === void 0 ? void 0 : styles.pickerFooterLeft, styles === null || styles === void 0 ? void 0 : styles.datetime, !timeStr && (styles === null || styles === void 0 ? void 0 : styles.datetimeHide)),
41940
+ className: classnames_default()(styles === null || styles === void 0 ? void 0 : styles.pickerFooterTime, styles === null || styles === void 0 ? void 0 : styles.datetime, !timeStr && (styles === null || styles === void 0 ? void 0 : styles.datetimeHide)),
41941
+ style: {
41942
+ paddingRight: showNeedConfirm ? 0 : undefined
41943
+ },
41847
41944
  children: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
41848
41945
  children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
41849
41946
  children: icons_config.datepicker.Time
@@ -41855,25 +41952,30 @@ var Day = function Day(props) {
41855
41952
  children: timeStr
41856
41953
  })]
41857
41954
  })
41858
- }), showRight && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
41859
- className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterRight,
41860
- children: [props.showSelNow && props.type === 'date' && /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_button_button, {
41861
- size: 'small',
41862
- mode: "text",
41955
+ }), props.showSelNow && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
41956
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterNow,
41957
+ style: {
41958
+ marginRight: showNeedConfirm ? 'auto' : undefined,
41959
+ paddingLeft: showNeedConfirm ? 6 : undefined
41960
+ },
41961
+ children: [props.showSelNow && props.type === 'date' && /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_link_link, {
41962
+ size: "small",
41863
41963
  type: "primary",
41864
41964
  jssStyle: jssStyle,
41865
41965
  className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterBtn,
41866
41966
  onClick: selNow,
41867
41967
  children: getLocale(locale, 'now')
41868
- }), props.showSelNow && props.type === 'datetime' && /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_button_button, {
41869
- size: 'small',
41870
- mode: "text",
41968
+ }), props.showSelNow && props.type === 'datetime' && /*#__PURE__*/(0,jsx_runtime.jsx)(base_src_link_link, {
41969
+ size: "small",
41871
41970
  type: "primary",
41872
41971
  jssStyle: jssStyle,
41873
41972
  className: styles === null || styles === void 0 ? void 0 : styles.pickerFooterBtn,
41874
41973
  onClick: selNow,
41875
41974
  children: getLocale(locale, 'current')
41876
41975
  })]
41976
+ }), showNeedConfirm && /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker_confirm, {
41977
+ closeByConfirm: props.closeByConfirm,
41978
+ jssStyle: jssStyle
41877
41979
  })]
41878
41980
  });
41879
41981
  };
@@ -42036,11 +42138,11 @@ var useMonth = function useMonth(props) {
42036
42138
  var getMonthStr = function getMonthStr(date) {
42037
42139
  return util.getDateInfo(date, 'month', options) + 1;
42038
42140
  };
42039
- var handleMonthClick = function handleMonthClick(date) {
42141
+ var handleMonthClick = function handleMonthClick(date, onClose) {
42040
42142
  var _props$onChange;
42041
42143
  if (isDisabled(date)) return;
42042
42144
  var newDate = util.toDate(date);
42043
- (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newDate);
42145
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newDate, onClose);
42044
42146
  setCurrent(newDate);
42045
42147
  };
42046
42148
  var isInRange = function isInRange(date) {
@@ -42084,6 +42186,7 @@ var useMonth = function useMonth(props) {
42084
42186
 
42085
42187
 
42086
42188
 
42189
+
42087
42190
  var Month = function Month(props) {
42088
42191
  var _jssStyle$datePicker;
42089
42192
  var jssStyle = props.jssStyle;
@@ -42127,7 +42230,7 @@ var Month = function Month(props) {
42127
42230
  props.setTarget(undefined);
42128
42231
  },
42129
42232
  onClick: function onClick() {
42130
- func.handleMonthClick(item);
42233
+ func.handleMonthClick(item, props.needConfirm);
42131
42234
  },
42132
42235
  children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
42133
42236
  className: styles === null || styles === void 0 ? void 0 : styles.pickerCellContent,
@@ -42189,6 +42292,9 @@ var Month = function Month(props) {
42189
42292
  })
42190
42293
  })
42191
42294
  })
42295
+ }), props.needConfirm && !props.range && /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker_confirm, {
42296
+ closeByConfirm: props.closeByConfirm,
42297
+ jssStyle: props.jssStyle
42192
42298
  })]
42193
42299
  });
42194
42300
  };
@@ -42265,11 +42371,11 @@ var useYear = function useYear(props) {
42265
42371
  var getYearStr = function getYearStr(date) {
42266
42372
  return util.getDateInfo(date, 'year', options);
42267
42373
  };
42268
- var handleYearClick = function handleYearClick(date) {
42374
+ var handleYearClick = function handleYearClick(date, noClose) {
42269
42375
  var _props$onChange;
42270
42376
  if (isDisabled(date)) return;
42271
42377
  var newDate = util.toDate(date);
42272
- (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newDate);
42378
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newDate, noClose);
42273
42379
  setCurrent(newDate);
42274
42380
  };
42275
42381
  var isInRange = function isInRange(date) {
@@ -42316,6 +42422,7 @@ var useYear = function useYear(props) {
42316
42422
 
42317
42423
 
42318
42424
 
42425
+
42319
42426
  var Year = function Year(props) {
42320
42427
  var _jssStyle$datePicker;
42321
42428
  var jssStyle = props.jssStyle;
@@ -42353,7 +42460,7 @@ var Year = function Year(props) {
42353
42460
  dir: config.direction,
42354
42461
  className: classnames_default()(styles === null || styles === void 0 ? void 0 : styles.pickerCell, func.isActive(item) && (styles === null || styles === void 0 ? void 0 : styles.pickerCellActive), (index === 0 || index === 11) && (styles === null || styles === void 0 ? void 0 : styles.pickerCellBound), isDisabled && (styles === null || styles === void 0 ? void 0 : styles.pickerCellDisabled), func.isNow(item) && (styles === null || styles === void 0 ? void 0 : styles.pickerCellToday), isInRange && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRange), (isInRange === 'start' || isInRange === 'start-end') && props.position === 'start' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeStart), (isInRange === 'end' || isInRange === 'start-end') && props.position === 'end' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeEnd)),
42355
42462
  onClick: function onClick() {
42356
- func.handleYearClick(item);
42463
+ func.handleYearClick(item, props.needConfirm);
42357
42464
  },
42358
42465
  onMouseEnter: isDisabled ? undefined : function () {
42359
42466
  props.setTarget(item);
@@ -42421,6 +42528,9 @@ var Year = function Year(props) {
42421
42528
  })
42422
42529
  })
42423
42530
  })
42531
+ }), props.needConfirm && !props.range && /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker_confirm, {
42532
+ closeByConfirm: props.closeByConfirm,
42533
+ jssStyle: props.jssStyle
42424
42534
  })]
42425
42535
  });
42426
42536
  };
@@ -42498,11 +42608,11 @@ var useQuarter = function useQuarter(props) {
42498
42608
  var getQuarterStr = function getQuarterStr(date) {
42499
42609
  return util.getDateInfo(date, 'quarter', options);
42500
42610
  };
42501
- var handleQuarterClick = function handleQuarterClick(date) {
42611
+ var handleQuarterClick = function handleQuarterClick(date, noClose) {
42502
42612
  var _props$onChange;
42503
42613
  if (isDisabled(date)) return;
42504
42614
  var newDate = util.toDate(date);
42505
- (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newDate);
42615
+ (_props$onChange = props.onChange) === null || _props$onChange === void 0 || _props$onChange.call(props, newDate, noClose);
42506
42616
  setCurrent(newDate);
42507
42617
  };
42508
42618
  var isInRange = function isInRange(date) {
@@ -42546,6 +42656,7 @@ var useQuarter = function useQuarter(props) {
42546
42656
 
42547
42657
 
42548
42658
 
42659
+
42549
42660
  var Quarter = function Quarter(props) {
42550
42661
  var _jssStyle$datePicker;
42551
42662
  var jssStyle = props.jssStyle;
@@ -42578,7 +42689,7 @@ var Quarter = function Quarter(props) {
42578
42689
  dir: config.direction,
42579
42690
  className: classnames_default()(styles === null || styles === void 0 ? void 0 : styles.pickerCell, func.isActive(item) && (styles === null || styles === void 0 ? void 0 : styles.pickerCellActive), isDisabled && (styles === null || styles === void 0 ? void 0 : styles.pickerCellDisabled), func.isNow(item) && (styles === null || styles === void 0 ? void 0 : styles.pickerCellToday), isInRange && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRange), (isInRange === 'start' || isInRange === 'start-end') && props.position === 'start' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeStart), (isInRange === 'end' || isInRange === 'start-end') && props.position === 'end' && (styles === null || styles === void 0 ? void 0 : styles.pickerCellInRangeEnd)),
42580
42691
  onClick: function onClick() {
42581
- func.handleQuarterClick(item);
42692
+ func.handleQuarterClick(item, props.needConfirm);
42582
42693
  },
42583
42694
  onMouseEnter: isDisabled ? undefined : function () {
42584
42695
  props.setTarget(item);
@@ -42646,6 +42757,9 @@ var Quarter = function Quarter(props) {
42646
42757
  })
42647
42758
  })
42648
42759
  })
42760
+ }), props.needConfirm && !props.range && /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker_confirm, {
42761
+ closeByConfirm: props.closeByConfirm,
42762
+ jssStyle: props.jssStyle
42649
42763
  })]
42650
42764
  });
42651
42765
  };
@@ -42932,6 +43046,7 @@ var useRangePick = function useRangePick(props) {
42932
43046
 
42933
43047
 
42934
43048
 
43049
+
42935
43050
  var Picker = function Picker(props) {
42936
43051
  var _jssStyle$datePicker;
42937
43052
  var range = props.range,
@@ -42974,6 +43089,9 @@ var Picker = function Picker(props) {
42974
43089
  var handleLeave = usePersistFn(function () {
42975
43090
  props.setActiveIndex(-1);
42976
43091
  });
43092
+ var closeByConfirm = function closeByConfirm() {
43093
+ return props.closePop(true);
43094
+ };
42977
43095
  var renderPicker = function renderPicker(position) {
42978
43096
  var index = position === 'end' ? 1 : 0;
42979
43097
  var mode = props.mode[index];
@@ -43000,7 +43118,9 @@ var Picker = function Picker(props) {
43000
43118
  onMouseLeave: function onMouseLeave() {},
43001
43119
  range: range,
43002
43120
  setClickTimes: props.setClickTimes,
43003
- clickTimes: props.clickTimes
43121
+ clickTimes: props.clickTimes,
43122
+ needConfirm: props.needConfirm,
43123
+ closeByConfirm: closeByConfirm
43004
43124
  };
43005
43125
  if (range) {
43006
43126
  commonProps['onMouseEnter'] = position === 'end' ? handleEnterEnd : handleEnterStart;
@@ -43062,8 +43182,20 @@ var Picker = function Picker(props) {
43062
43182
  format: props.format,
43063
43183
  options: props.options,
43064
43184
  children: props.children
43065
- }), range ? ['start', 'end'].map(function (item) {
43066
- return renderPicker(item);
43185
+ }), range ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
43186
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerRange,
43187
+ children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
43188
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerRangeBody,
43189
+ children: ['start', 'end'].map(function (item) {
43190
+ return renderPicker(item);
43191
+ })
43192
+ }), props.needConfirm && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
43193
+ className: styles === null || styles === void 0 ? void 0 : styles.pickerRangeFooter,
43194
+ children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker_confirm, {
43195
+ closeByConfirm: closeByConfirm,
43196
+ jssStyle: jssStyle
43197
+ })
43198
+ })]
43067
43199
  }) : renderPicker()]
43068
43200
  });
43069
43201
  };
@@ -43118,16 +43250,24 @@ var DatePicker = function DatePicker(props0) {
43118
43250
  _React$useState4 = slicedToArray_default()(_React$useState3, 2),
43119
43251
  clickTimes = _React$useState4[0],
43120
43252
  setClickTimes = _React$useState4[1];
43253
+ var _React$useState5 = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useState(false),
43254
+ _React$useState6 = slicedToArray_default()(_React$useState5, 2),
43255
+ isCloseFromConfirm = _React$useState6[0],
43256
+ setIsCloseFromConfirm = _React$useState6[1];
43257
+ var _React$useState7 = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useState([]),
43258
+ _React$useState8 = slicedToArray_default()(_React$useState7, 2),
43259
+ oldDateArr = _React$useState8[0],
43260
+ setOldDateArr = _React$useState8[1];
43121
43261
  var inputRef = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useRef)({
43122
43262
  inputRef: null
43123
43263
  });
43124
43264
  var styles = jssStyle === null || jssStyle === void 0 || (_jssStyle$datePicker = jssStyle.datePicker) === null || _jssStyle$datePicker === void 0 ? void 0 : _jssStyle$datePicker.call(jssStyle);
43125
43265
  var isRTL = direction === 'rtl';
43126
43266
  var dfp = isRTL ? 'bottom-right' : 'bottom-left';
43127
- var _React$useState5 = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useState(false),
43128
- _React$useState6 = slicedToArray_default()(_React$useState5, 2),
43129
- focused = _React$useState6[0],
43130
- setFocused = _React$useState6[1];
43267
+ var _React$useState9 = external_root_React_commonjs2_react_commonjs_react_amd_react_default().useState(false),
43268
+ _React$useState10 = slicedToArray_default()(_React$useState9, 2),
43269
+ focused = _React$useState10[0],
43270
+ setFocused = _React$useState10[1];
43131
43271
  var listPosition = props.position || dfp;
43132
43272
  if (date_picker_horizontalPosition.includes(listPosition)) {
43133
43273
  listPosition = listPosition.split('-').reverse().join('-');
@@ -43174,9 +43314,20 @@ var DatePicker = function DatePicker(props0) {
43174
43314
  var onCollapse = usePersistFn(function (isOpen) {
43175
43315
  var _props$onCollapse;
43176
43316
  if (isOpen) {
43317
+ setOldDateArr(dateArr);
43177
43318
  func.startEdit();
43178
43319
  } else {
43179
- func.finishEdit();
43320
+ setClickTimes(0);
43321
+ if (props.needConfirm) {
43322
+ if (!isCloseFromConfirm) {
43323
+ func.handleClear();
43324
+ // 点击空白处关闭面板时,还原到上次的值
43325
+ func.setDateArr(oldDateArr);
43326
+ }
43327
+ } else {
43328
+ func.finishEdit();
43329
+ }
43330
+ setIsCloseFromConfirm(false);
43180
43331
  }
43181
43332
  (_props$onCollapse = props.onCollapse) === null || _props$onCollapse === void 0 || _props$onCollapse.call(props, isOpen);
43182
43333
  });
@@ -43220,10 +43371,13 @@ var DatePicker = function DatePicker(props0) {
43220
43371
  setFocused(false);
43221
43372
  (_props$onBlur = props.onBlur) === null || _props$onBlur === void 0 || _props$onBlur.call(props, e);
43222
43373
  });
43223
- var handleClose = function handleClose() {
43374
+ var handleClose = function handleClose(isFromConfirm) {
43224
43375
  var _inputRef$current$inp;
43376
+ setIsCloseFromConfirm(isFromConfirm || false);
43225
43377
  closePop();
43226
- setClickTimes(0);
43378
+ if (isFromConfirm) {
43379
+ func.finishEdit();
43380
+ }
43227
43381
  (_inputRef$current$inp = inputRef.current.inputRef) === null || _inputRef$current$inp === void 0 || _inputRef$current$inp.blur();
43228
43382
  };
43229
43383
  var handleResultClick = usePersistFn(function () {
@@ -43340,6 +43494,7 @@ var DatePicker = function DatePicker(props0) {
43340
43494
  secondStep: props.secondStep,
43341
43495
  registerModeDisabled: func.registerModeDisabled,
43342
43496
  isDisabledDate: func.isDisabledDate,
43497
+ needConfirm: props.needConfirm,
43343
43498
  children: props.children
43344
43499
  })
43345
43500
  })
@@ -43357,7 +43512,8 @@ var date_picker_jssStyle = {
43357
43512
  datePicker: useDatePickerStyle,
43358
43513
  button: useButtonStyle,
43359
43514
  innerTitle: useInnerTitleStyle,
43360
- popover: usePopoverStyle
43515
+ popover: usePopoverStyle,
43516
+ link: useLinkStyle
43361
43517
  };
43362
43518
  var BaseDatePicker = function BaseDatePicker(props) {
43363
43519
  return /*#__PURE__*/(0,jsx_runtime.jsx)(src_date_picker_date_picker, objectSpread2_default()({
@@ -48532,48 +48688,6 @@ InputComp.Group.displayName = 'ShineoutInputGroup';
48532
48688
  InputComp.Password.displayName = 'ShineoutInputPassword';
48533
48689
  InputComp.Number.displayName = 'ShineoutInputNumber';
48534
48690
  /* harmony default export */ var src_input_0 = (InputComp);
48535
- ;// CONCATENATED MODULE: ../base/src/link/link.tsx
48536
-
48537
-
48538
-
48539
- var link_excluded = ["jssStyle", "className", "type", "underline", "disabled", "size", "icon", "href", "target", "children"];
48540
- // import { } from '@sheinx/hooks';
48541
-
48542
-
48543
- // import from icons
48544
-
48545
-
48546
-
48547
- var Link = function Link(props) {
48548
- var jssStyle = props.jssStyle,
48549
- className = props.className,
48550
- _props$type = props.type,
48551
- type = _props$type === void 0 ? 'primary' : _props$type,
48552
- underline = props.underline,
48553
- disabled = props.disabled,
48554
- size = props.size,
48555
- icon = props.icon,
48556
- href = props.href,
48557
- target = props.target,
48558
- children = props.children,
48559
- restProps = objectWithoutProperties_default()(props, link_excluded);
48560
- var linkClasses = (jssStyle === null || jssStyle === void 0 ? void 0 : jssStyle.link()) || {};
48561
- var rootClass = classnames_default()(className, linkClasses.wrapper, defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, linkClasses.underline, underline === true), linkClasses.underlineHover, underline === 'hover'), linkClasses.disabled, disabled), linkClasses.sizeSmall, size === 'small'), linkClasses.sizeLarge, size === 'large'), linkClasses.primary, type === 'primary'), linkClasses.secondary, type === 'secondary'), linkClasses.danger, type === 'danger'), linkClasses.warning, type === 'warning'), linkClasses.success, type === 'success'));
48562
- return /*#__PURE__*/(0,jsx_runtime.jsxs)("a", objectSpread2_default()(objectSpread2_default()({
48563
- href: disabled ? undefined : href,
48564
- target: target,
48565
- className: rootClass
48566
- }, restProps), {}, {
48567
- children: [typeof icon === 'boolean' && icon && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
48568
- className: linkClasses.icon,
48569
- children: icons_config.link.prefixIcon
48570
- }), /*#__PURE__*/external_root_React_commonjs2_react_commonjs_react_amd_react_default().isValidElement(icon) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
48571
- className: linkClasses.icon,
48572
- children: icon
48573
- }), children]
48574
- }));
48575
- };
48576
- /* harmony default export */ var base_src_link_link = (Link);
48577
48691
  ;// CONCATENATED MODULE: ./src/link/link.tsx
48578
48692
 
48579
48693
 
@@ -53725,7 +53839,7 @@ var confirm_excluded = ["children", "type", "text", "onOk", "okType", "onCancel"
53725
53839
 
53726
53840
 
53727
53841
 
53728
- var Confirm = function Confirm(props) {
53842
+ var confirm_Confirm = function Confirm(props) {
53729
53843
  var _jssStyle$popover;
53730
53844
  var _useState = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useState)(false),
53731
53845
  _useState2 = slicedToArray_default()(_useState, 2),
@@ -53822,7 +53936,7 @@ var Confirm = function Confirm(props) {
53822
53936
  }
53823
53937
  }));
53824
53938
  };
53825
- /* harmony default export */ var popover_confirm = (Confirm);
53939
+ /* harmony default export */ var popover_confirm = (confirm_Confirm);
53826
53940
  ;// CONCATENATED MODULE: ./src/popover/confirm.tsx
53827
53941
 
53828
53942
 
@@ -58563,8 +58677,16 @@ var emptyRef = {
58563
58677
  }
58564
58678
  };
58565
58679
  }, [theadRef.current, isScrollY]);
58680
+ var getRenderIndexByData = function getRenderIndexByData(data) {
58681
+ var originKey = typeof data === 'string' ? data : getKey(props.keygen, data);
58682
+ var index = treeData.findIndex(function (item) {
58683
+ return getKey(props.keygen, item) === originKey;
58684
+ });
58685
+ return index;
58686
+ };
58566
58687
  var tableFunc = useLatestObj({
58567
- scrollToIndex: virtualInfo.scrollToIndex
58688
+ scrollToIndex: virtualInfo.scrollToIndex,
58689
+ getRenderIndexByData: getRenderIndexByData
58568
58690
  });
58569
58691
  (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useEffect)(function () {
58570
58692
  if (props.tableRef) {
@@ -64741,7 +64863,7 @@ var upload_interface = __webpack_require__(8821);
64741
64863
 
64742
64864
 
64743
64865
  /* harmony default export */ var src_0 = ({
64744
- version: '3.4.0-beta.5'
64866
+ version: '3.4.0-beta.6'
64745
64867
  });
64746
64868
  }();
64747
64869
  /******/ return __webpack_exports__;