@sheinx/hooks 3.9.3-beta.13 → 3.9.3-beta.15

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.
@@ -1 +1 @@
1
- {"version":3,"file":"use-date.d.ts","sourceRoot":"","sources":["use-date.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAW/C,QAAA,MAAM,OAAO,UAAW,YAAY;;;;;;;;;;wBAoBX,IAAI;2BAkDD,IAAI;yBAkBN,IAAI;0BAgEH,IAAI;+BAtFC,IAAI;+BAiDJ,IAAI,YAAY,OAAO;0BAnB5B,IAAI;2BAIH,IAAI;;gCAIC,IAAI;;CA+FpC,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"use-date.d.ts","sourceRoot":"","sources":["use-date.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAW/C,QAAA,MAAM,OAAO,UAAW,YAAY;;;;;;;;;;wBAoBX,IAAI;2BAkDD,IAAI;yBAkBN,IAAI;0BA2EH,IAAI;+BAjGC,IAAI;+BAiDJ,IAAI,YAAY,OAAO;0BAnB5B,IAAI;2BAIH,IAAI;;gCAIC,IAAI;;CA0GpC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -125,15 +125,24 @@ var useDate = function useDate(props) {
125
125
  var getTimeStr = function getTimeStr() {
126
126
  var format = props.format,
127
127
  type = props.type;
128
- if (!props.value) return '';
129
128
  if (type !== 'datetime' || !format) return '';
130
- if (/^[X|x]$/.test(format)) {
129
+ if (/^[X|x]$/.test(_util.default.compatibleFmt(format))) {
131
130
  format = 'HH:mm:ss';
132
131
  } else {
133
132
  var match = format.match(/[H|h].*/);
134
133
  // eslint-disable-next-line
135
134
  if (match) format = match[0];
136
135
  }
136
+
137
+ // 当不存在 props.value 时,根据 format 格式返回默认时间字符串
138
+ if (!props.value) {
139
+ return format.replace(/[Hh]+/g, '00') // HH/hh -> 00
140
+ .replace(/m+/g, '00') // mm -> 00
141
+ .replace(/s+/g, '00') // ss -> 00
142
+ .replace(/S+/g, '0') // SSS -> 0
143
+ .replace(/A/g, 'AM') // A -> AM
144
+ .replace(/a/g, 'am'); // a -> am
145
+ }
137
146
  return _util.default.format(props.value, format, options);
138
147
  };
139
148
  var isInRange = function isInRange(date) {
@@ -1 +1 @@
1
- {"version":3,"file":"use-table-columns.d.ts","sourceRoot":"","sources":["use-table-columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE3F,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,MAAM,WAAW,eAAe,CAAC,IAAI;IACnC,OAAO,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CACzC;AAYD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3E,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,GAAG,IAAI,CAAC;AAKT,QAAA,MAAM,UAAU;;;;wBA6EkC,MAAM;;;;;CA+EvD,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"use-table-columns.d.ts","sourceRoot":"","sources":["use-table-columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE3F,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,MAAM,WAAW,eAAe,CAAC,IAAI;IACnC,OAAO,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CACzC;AAYD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3E,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,GAAG,IAAI,CAAC;AAKT,QAAA,MAAM,UAAU;;;;wBA6EkC,MAAM;;;;;CA+FvD,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -158,14 +158,14 @@ var useColumns = function useColumns(props) {
158
158
  });
159
159
  }, []);
160
160
  (0, _react.useEffect)(function () {
161
- var _props$scrollRef$curr2;
162
161
  if (!props.virtualColumn) return;
163
- if (((_props$scrollRef$curr2 = props.scrollRef.current) === null || _props$scrollRef$curr2 === void 0 ? void 0 : _props$scrollRef$curr2.scrollLeft) === 0) {
162
+ if (props.scrollRef.current) {
163
+ var _props$scrollRef$curr2;
164
164
  handleScroll({
165
- scrollLeft: 0
165
+ scrollLeft: (_props$scrollRef$curr2 = props.scrollRef.current) === null || _props$scrollRef$curr2 === void 0 ? void 0 : _props$scrollRef$curr2.scrollLeft
166
166
  });
167
167
  }
168
- }, [(_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length]);
168
+ }, [(_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length, columns]);
169
169
  var processedColumns = (0, _react.useMemo)(function () {
170
170
  if (!props.virtualColumn) return columns;
171
171
  return columns.map(function (col, index) {
@@ -174,14 +174,21 @@ var useColumns = function useColumns(props) {
174
174
  }
175
175
  if (index < startIndex || index > startIndex + renderedCount) {
176
176
  var colSpan;
177
+ var colSpanWidth;
177
178
  if (index > startIndex + renderedCount && index === startIndex + renderedCount + 1) {
178
179
  colSpan = function colSpan() {
179
180
  return middleColumns.length - (startIndex + renderedCount) + 1;
180
181
  };
182
+ colSpanWidth = middleColumns.slice(startIndex + renderedCount).reduce(function (sum, c) {
183
+ return sum + (c.width || 0);
184
+ }, 0);
181
185
  } else if (index < startIndex && index === leftFixedColumns.length && startIndex > 0) {
182
186
  colSpan = function colSpan() {
183
187
  return startIndex;
184
188
  };
189
+ colSpanWidth = middleColumns.slice(0, startIndex).reduce(function (sum, c) {
190
+ return sum + (c.width || 0);
191
+ }, 0);
185
192
  }
186
193
  var hiddenTitle = context.groupLevel > 0 ? col.title : null;
187
194
  return _objectSpread(_objectSpread({}, col), {}, {
@@ -189,7 +196,10 @@ var useColumns = function useColumns(props) {
189
196
  render: function render() {
190
197
  return null;
191
198
  },
192
- title: hiddenTitle
199
+ title: hiddenTitle,
200
+ style: {
201
+ width: colSpanWidth
202
+ }
193
203
  });
194
204
  }
195
205
  return col;
@@ -1 +1 @@
1
- {"version":3,"file":"use-date.d.ts","sourceRoot":"","sources":["use-date.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAW/C,QAAA,MAAM,OAAO,UAAW,YAAY;;;;;;;;;;wBAoBX,IAAI;2BAkDD,IAAI;yBAkBN,IAAI;0BAgEH,IAAI;+BAtFC,IAAI;+BAiDJ,IAAI,YAAY,OAAO;0BAnB5B,IAAI;2BAIH,IAAI;;gCAIC,IAAI;;CA+FpC,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"use-date.d.ts","sourceRoot":"","sources":["use-date.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAW/C,QAAA,MAAM,OAAO,UAAW,YAAY;;;;;;;;;;wBAoBX,IAAI;2BAkDD,IAAI;yBAkBN,IAAI;0BA2EH,IAAI;+BAjGC,IAAI;+BAiDJ,IAAI,YAAY,OAAO;0BAnB5B,IAAI;2BAIH,IAAI;;gCAIC,IAAI;;CA0GpC,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -119,15 +119,24 @@ var useDate = function useDate(props) {
119
119
  var getTimeStr = function getTimeStr() {
120
120
  var format = props.format,
121
121
  type = props.type;
122
- if (!props.value) return '';
123
122
  if (type !== 'datetime' || !format) return '';
124
- if (/^[X|x]$/.test(format)) {
123
+ if (/^[X|x]$/.test(utils.compatibleFmt(format))) {
125
124
  format = 'HH:mm:ss';
126
125
  } else {
127
126
  var match = format.match(/[H|h].*/);
128
127
  // eslint-disable-next-line
129
128
  if (match) format = match[0];
130
129
  }
130
+
131
+ // 当不存在 props.value 时,根据 format 格式返回默认时间字符串
132
+ if (!props.value) {
133
+ return format.replace(/[Hh]+/g, '00') // HH/hh -> 00
134
+ .replace(/m+/g, '00') // mm -> 00
135
+ .replace(/s+/g, '00') // ss -> 00
136
+ .replace(/S+/g, '0') // SSS -> 0
137
+ .replace(/A/g, 'AM') // A -> AM
138
+ .replace(/a/g, 'am'); // a -> am
139
+ }
131
140
  return dateUtil.format(props.value, format, options);
132
141
  };
133
142
  var isInRange = function isInRange(date) {
@@ -1 +1 @@
1
- {"version":3,"file":"use-table-columns.d.ts","sourceRoot":"","sources":["use-table-columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE3F,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,MAAM,WAAW,eAAe,CAAC,IAAI;IACnC,OAAO,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CACzC;AAYD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3E,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,GAAG,IAAI,CAAC;AAKT,QAAA,MAAM,UAAU;;;;wBA6EkC,MAAM;;;;;CA+EvD,CAAC;AAEF,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"use-table-columns.d.ts","sourceRoot":"","sources":["use-table-columns.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE3F,OAAO,KAA+C,MAAM,OAAO,CAAC;AAEpE,MAAM,WAAW,eAAe,CAAC,IAAI;IACnC,OAAO,CAAC,EAAE,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;IAClC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,GAAG,mBAAmB,CAAC;IAC9C,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;CACzC;AAYD,MAAM,MAAM,iBAAiB,GAAG;IAC9B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,KAAK,CAAC,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC;IAC3E,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;CAChD,GAAG,IAAI,CAAC;AAKT,QAAA,MAAM,UAAU;;;;wBA6EkC,MAAM;;;;;CA+FvD,CAAC;AAEF,eAAe,UAAU,CAAC"}
@@ -151,14 +151,14 @@ var useColumns = function useColumns(props) {
151
151
  });
152
152
  }, []);
153
153
  useEffect(function () {
154
- var _props$scrollRef$curr2;
155
154
  if (!props.virtualColumn) return;
156
- if (((_props$scrollRef$curr2 = props.scrollRef.current) === null || _props$scrollRef$curr2 === void 0 ? void 0 : _props$scrollRef$curr2.scrollLeft) === 0) {
155
+ if (props.scrollRef.current) {
156
+ var _props$scrollRef$curr2;
157
157
  handleScroll({
158
- scrollLeft: 0
158
+ scrollLeft: (_props$scrollRef$curr2 = props.scrollRef.current) === null || _props$scrollRef$curr2 === void 0 ? void 0 : _props$scrollRef$curr2.scrollLeft
159
159
  });
160
160
  }
161
- }, [(_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length]);
161
+ }, [(_props$data = props.data) === null || _props$data === void 0 ? void 0 : _props$data.length, columns]);
162
162
  var processedColumns = useMemo(function () {
163
163
  if (!props.virtualColumn) return columns;
164
164
  return columns.map(function (col, index) {
@@ -167,14 +167,21 @@ var useColumns = function useColumns(props) {
167
167
  }
168
168
  if (index < startIndex || index > startIndex + renderedCount) {
169
169
  var colSpan;
170
+ var colSpanWidth;
170
171
  if (index > startIndex + renderedCount && index === startIndex + renderedCount + 1) {
171
172
  colSpan = function colSpan() {
172
173
  return middleColumns.length - (startIndex + renderedCount) + 1;
173
174
  };
175
+ colSpanWidth = middleColumns.slice(startIndex + renderedCount).reduce(function (sum, c) {
176
+ return sum + (c.width || 0);
177
+ }, 0);
174
178
  } else if (index < startIndex && index === leftFixedColumns.length && startIndex > 0) {
175
179
  colSpan = function colSpan() {
176
180
  return startIndex;
177
181
  };
182
+ colSpanWidth = middleColumns.slice(0, startIndex).reduce(function (sum, c) {
183
+ return sum + (c.width || 0);
184
+ }, 0);
178
185
  }
179
186
  var hiddenTitle = context.groupLevel > 0 ? col.title : null;
180
187
  return _objectSpread(_objectSpread({}, col), {}, {
@@ -182,7 +189,10 @@ var useColumns = function useColumns(props) {
182
189
  render: function render() {
183
190
  return null;
184
191
  },
185
- title: hiddenTitle
192
+ title: hiddenTitle,
193
+ style: {
194
+ width: colSpanWidth
195
+ }
186
196
  });
187
197
  }
188
198
  return col;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sheinx/hooks",
3
- "version": "3.9.3-beta.13",
3
+ "version": "3.9.3-beta.15",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "license": "MIT",