shineout 3.6.7-beta.5 → 3.6.7-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.
@@ -4,8 +4,10 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.default = void 0;
7
+ var _react = require("react");
7
8
  var _base = require("@sheinx/base");
8
9
  var _shineoutStyle = require("@sheinx/shineout-style");
10
+ var _hooks = require("@sheinx/hooks");
9
11
  var _useFieldCommon = _interopRequireDefault(require("../hooks/use-field-common"));
10
12
  var _jsxRuntime = require("react/jsx-runtime");
11
13
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -28,5 +30,30 @@ var BaseDatePicker = function BaseDatePicker(props) {
28
30
  }, props));
29
31
  };
30
32
  var _default = exports.default = function _default(props) {
31
- return (0, _useFieldCommon.default)(props, BaseDatePicker);
33
+ var _useConfig = (0, _base.useConfig)(),
34
+ locale = _useConfig.locale;
35
+
36
+ // datepicker 默认值需要提格式化前处理,否则内部会根据 format 进行格式化并再次触发 onChange,参考 v1 v2 的 value hoc 行为
37
+ var defaultValue = (0, _react.useMemo)(function () {
38
+ if (props.defaultValue) {
39
+ var options = {
40
+ timeZone: props.timeZone,
41
+ weekStartsOn: Number((0, _base.getLocale)(locale, 'startOfWeek'))
42
+ };
43
+ var type = props.type || 'date';
44
+ var format = (0, _hooks.getFormat)(props.format, type);
45
+ var dateArr = (0, _hooks.convertValueToDateArr)(props.defaultValue, format, options);
46
+ var formattedDefaultValue = (0, _hooks.getFormatValueArr)({
47
+ dateArr: dateArr,
48
+ format: format,
49
+ type: type,
50
+ options: options
51
+ });
52
+ return props.range ? formattedDefaultValue : formattedDefaultValue[0];
53
+ }
54
+ return props.defaultValue;
55
+ }, []);
56
+ return (0, _useFieldCommon.default)(_objectSpread(_objectSpread({}, props), {}, {
57
+ defaultValue: defaultValue
58
+ }), BaseDatePicker);
32
59
  };
package/cjs/index.js CHANGED
@@ -514,5 +514,5 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
514
514
  // 此文件由脚本自动生成,请勿直接修改。
515
515
  // This file was generated automatically by a script. Please do not modify it directly.
516
516
  var _default = exports.default = {
517
- version: '3.6.7-beta.5'
517
+ version: '3.6.7-beta.6'
518
518
  };
package/dist/shineout.js CHANGED
@@ -12217,7 +12217,7 @@ var handleStyle = function handleStyle(style) {
12217
12217
  };
12218
12218
  /* harmony default export */ var jss_style_handleStyle = (handleStyle);
12219
12219
  ;// CONCATENATED MODULE: ../shineout-style/src/version.ts
12220
- /* harmony default export */ var version = ('3.6.7-beta.5');
12220
+ /* harmony default export */ var version = ('3.6.7-beta.6');
12221
12221
  ;// CONCATENATED MODULE: ../shineout-style/src/jss-style/index.tsx
12222
12222
 
12223
12223
 
@@ -44348,6 +44348,18 @@ var getDefaultMode = function getDefaultMode(type) {
44348
44348
  var mode = getTypeMode(type);
44349
44349
  return [mode, mode];
44350
44350
  };
44351
+ var getFormatValueArr = function getFormatValueArr(opts) {
44352
+ var dateArr = opts.dateArr,
44353
+ format = opts.format,
44354
+ clearWithUndefined = opts.clearWithUndefined,
44355
+ options = opts.options,
44356
+ type = opts.type;
44357
+ var fmt = use_datepicker_format_getFormat(format, type);
44358
+ return dateArr.map(function (item) {
44359
+ if (!item) return clearWithUndefined ? undefined : '';
44360
+ return util.format(item, fmt, options);
44361
+ });
44362
+ };
44351
44363
  var useDatePickerFormat = function useDatePickerFormat(props) {
44352
44364
  var value = props.value,
44353
44365
  onChange = props.onChange,
@@ -47067,6 +47079,8 @@ var DatePicker = function DatePicker(props0) {
47067
47079
 
47068
47080
 
47069
47081
 
47082
+
47083
+
47070
47084
  var date_picker_jssStyle = {
47071
47085
  datePicker: useDatePickerStyle,
47072
47086
  button: useButtonStyle,
@@ -47080,7 +47094,32 @@ var BaseDatePicker = function BaseDatePicker(props) {
47080
47094
  }, props));
47081
47095
  };
47082
47096
  /* harmony default export */ var src_date_picker_date_picker_0 = (function (props) {
47083
- return use_field_common(props, BaseDatePicker);
47097
+ var _useConfig = useConfig(),
47098
+ locale = _useConfig.locale;
47099
+
47100
+ // datepicker 默认值需要提格式化前处理,否则内部会根据 format 进行格式化并再次触发 onChange,参考 v1 v2 的 value hoc 行为
47101
+ var defaultValue = (0,external_root_React_commonjs2_react_commonjs_react_amd_react_.useMemo)(function () {
47102
+ if (props.defaultValue) {
47103
+ var options = {
47104
+ timeZone: props.timeZone,
47105
+ weekStartsOn: Number(getLocale(locale, 'startOfWeek'))
47106
+ };
47107
+ var type = props.type || 'date';
47108
+ var format = use_datepicker_format_getFormat(props.format, type);
47109
+ var dateArr = convertValueToDateArr(props.defaultValue, format, options);
47110
+ var formattedDefaultValue = getFormatValueArr({
47111
+ dateArr: dateArr,
47112
+ format: format,
47113
+ type: type,
47114
+ options: options
47115
+ });
47116
+ return props.range ? formattedDefaultValue : formattedDefaultValue[0];
47117
+ }
47118
+ return props.defaultValue;
47119
+ }, []);
47120
+ return use_field_common(objectSpread2_default()(objectSpread2_default()({}, props), {}, {
47121
+ defaultValue: defaultValue
47122
+ }), BaseDatePicker);
47084
47123
  });
47085
47124
  ;// CONCATENATED MODULE: ./src/date-picker/index.ts
47086
47125
 
@@ -70121,7 +70160,7 @@ var upload_interface = __webpack_require__(8821);
70121
70160
 
70122
70161
 
70123
70162
  /* harmony default export */ var src_0 = ({
70124
- version: '3.6.7-beta.5'
70163
+ version: '3.6.7-beta.6'
70125
70164
  });
70126
70165
  }();
70127
70166
  /******/ return __webpack_exports__;