@pisell/private-materials 3.3.24 → 3.3.25

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.
@@ -20,6 +20,8 @@ import CollapsibleList from "../../components/collapsibleList";
20
20
  import "./index.less";
21
21
  import RenderValueById from "./RenderValueById";
22
22
  import useComponents from "../../../../hooks/useComponents";
23
+ import dayjs from 'dayjs';
24
+ import { formatDate } from "../../../../utils/date";
23
25
  var queryValueById = ['checkbox', 'radioButton', 'select', 'form_to_form'];
24
26
 
25
27
  /**
@@ -30,7 +32,7 @@ var queryValueById = ['checkbox', 'radioButton', 'select', 'form_to_form'];
30
32
  * @Date: 2024-01-30 17:06
31
33
  */
32
34
  var Single = function Single(_ref) {
33
- var _form$form3, _form$form4;
35
+ var _form$form4, _form$form5;
34
36
  var value = _ref.value,
35
37
  onChange = _ref.onChange,
36
38
  form = _ref.form,
@@ -166,6 +168,53 @@ var Single = function Single(_ref) {
166
168
  }
167
169
  });
168
170
  }, [form]);
171
+ console.log('fff', form);
172
+ var ignoreValidity = useMemo(function () {
173
+ var _form$form;
174
+ return !(form !== null && form !== void 0 && (_form$form = form.form) !== null && _form$form !== void 0 && (_form$form = _form$form.setting) !== null && _form$form !== void 0 && _form$form.validity) || form.form.setting.validity.type === 'no_expiry';
175
+ }, [form === null || form === void 0 ? void 0 : form.form]);
176
+ var getExpireStatus = function getExpireStatus(expiredAt) {
177
+ if (ignoreValidity || !expiredAt) return null;
178
+ var now = dayjs();
179
+ // 将过期时间设置为当天的最后一秒
180
+ var expireDate = dayjs(expiredAt).endOf('day');
181
+ var diffDays = expireDate.diff(now, 'day');
182
+ // 格式化显示日期(不显示时间)
183
+ var cnDate = 'YYYY-MM-DD';
184
+ var enDate = 'DD/MM/YYYY';
185
+ var formattedDate = formatDate(expireDate, cnDate, enDate);
186
+ if (now.isAfter(expireDate)) {
187
+ return /*#__PURE__*/React.createElement("div", {
188
+ style: {
189
+ color: '#999999',
190
+ fontSize: '14px',
191
+ lineHeight: '20px'
192
+ }
193
+ }, /*#__PURE__*/React.createElement(Tag, {
194
+ color: "red",
195
+ style: {
196
+ borderRadius: 16,
197
+ marginRight: 8
198
+ }
199
+ }, locales.getText('pisell2.text.status.expired')), locales.getText('pisell2.text.validity.expired')(formattedDate));
200
+ }
201
+ if (diffDays < 7) {
202
+ return /*#__PURE__*/React.createElement("div", {
203
+ style: {
204
+ color: '#FFA940',
205
+ fontSize: '14px',
206
+ lineHeight: '20px'
207
+ }
208
+ }, locales.getText('pisell2.text.validity.expiring_soon')(formattedDate));
209
+ }
210
+ return /*#__PURE__*/React.createElement("div", {
211
+ style: {
212
+ color: '#999999',
213
+ fontSize: '14px',
214
+ lineHeight: '20px'
215
+ }
216
+ }, locales.getText('pisell2.text.validity.valid_through')(formattedDate));
217
+ };
169
218
 
170
219
  /**
171
220
  * @title: 渲染字段
@@ -181,16 +230,16 @@ var Single = function Single(_ref) {
181
230
  }
182
231
  return /*#__PURE__*/React.createElement("div", {
183
232
  style: {
184
- flex: 1,
185
- display: 'flex',
186
- alignItems: 'center',
187
- justifyContent: 'space-between'
233
+ flex: 1
234
+ }
235
+ }, /*#__PURE__*/React.createElement("div", {
236
+ style: {
237
+ color: '#1B1B1B',
238
+ fontSize: 16,
239
+ fontWeight: 600,
240
+ lineHeight: '22px'
188
241
  }
189
- }, item['main_field'] || item[form.option_key] || '-', item !== null && item !== void 0 && item.status ? item.status === 'valid' ? /*#__PURE__*/React.createElement(Tag, {
190
- color: "#56c064"
191
- }, locales.getText('pisell2.text.status.valid')) : /*#__PURE__*/React.createElement(Tag, {
192
- color: "#d83963"
193
- }, locales.getText('pisell2.text.status.expired')) : null);
242
+ }, item['main_field'] || item[form.option_key] || '-'), /*#__PURE__*/React.createElement("div", null, getExpireStatus(item.expired_at)));
194
243
  };
195
244
 
196
245
  /**
@@ -202,10 +251,10 @@ var Single = function Single(_ref) {
202
251
  * @Date: 2024-01-30 17:09
203
252
  */
204
253
  var _addButtonProps = useMemo(function () {
205
- var _form$form, _form$form2;
254
+ var _form$form2, _form$form3;
206
255
  var obj = _objectSpread({
207
- title: "".concat(locales.getText('pisell2.text.add-a'), " ").concat(((_form$form = form.form) === null || _form$form === void 0 ? void 0 : _form$form.title) || '-'),
208
- subTitle: "".concat(locales.getText('pisell2.text.add-another'), " ").concat(((_form$form2 = form.form) === null || _form$form2 === void 0 ? void 0 : _form$form2.title) || '-')
256
+ title: "".concat(locales.getText('pisell2.text.add-a'), " ").concat(((_form$form2 = form.form) === null || _form$form2 === void 0 ? void 0 : _form$form2.title) || '-'),
257
+ subTitle: "".concat(locales.getText('pisell2.text.add-another'), " ").concat(((_form$form3 = form.form) === null || _form$form3 === void 0 ? void 0 : _form$form3.title) || '-')
209
258
  }, addButtonProps);
210
259
  // 表单和表格点击事件触发新增弹窗
211
260
  if (['form', 'table'].includes(form.type)) {
@@ -246,10 +295,10 @@ var Single = function Single(_ref) {
246
295
  previewItemRender: function previewItemRender(d) {
247
296
  return renderItem(d);
248
297
  },
249
- name: ((_form$form3 = form.form) === null || _form$form3 === void 0 ? void 0 : _form$form3.title) || '-',
298
+ name: ((_form$form4 = form.form) === null || _form$form4 === void 0 ? void 0 : _form$form4.title) || '-',
250
299
  addButtonProps: _addButtonProps,
251
300
  drawerProps: _objectSpread({
252
- title: "".concat(locales.getText('pisell2.text.select'), " ").concat(((_form$form4 = form.form) === null || _form$form4 === void 0 ? void 0 : _form$form4.title) || '-'),
301
+ title: "".concat(locales.getText('pisell2.text.select'), " ").concat(((_form$form5 = form.form) === null || _form$form5 === void 0 ? void 0 : _form$form5.title) || '-'),
253
302
  destroyOnClose: true
254
303
  }, drawerProps || {}),
255
304
  optionRender: _optionRender,
@@ -34,6 +34,7 @@ import "./index.less";
34
34
  import useAddHolder, { useFormDataConfig } from "../hooks/useAddHolder";
35
35
  import useGetHolderList from "../hooks/useGetHolderList";
36
36
  import dayjs from 'dayjs';
37
+ import { formatDate } from "../../../../utils/date";
37
38
  var defaultParams = {
38
39
  skip: 1,
39
40
  num: 20,
@@ -558,7 +559,9 @@ var Pet = function Pet(props) {
558
559
  var expireDate = dayjs(expiredAt).endOf('day');
559
560
  var diffDays = expireDate.diff(now, 'day');
560
561
  // 格式化显示日期(不显示时间)
561
- var formattedDate = expireDate.format('YYYY-MM-DD');
562
+ var cnDate = 'YYYY-MM-DD';
563
+ var enDate = 'DD/MM/YYYY';
564
+ var formattedDate = formatDate(expireDate, cnDate, enDate);
562
565
  if (now.isAfter(expireDate)) {
563
566
  return /*#__PURE__*/React.createElement("div", {
564
567
  style: {
@@ -574,7 +577,7 @@ var Pet = function Pet(props) {
574
577
  }
575
578
  }, locales.getText('pisell2.text.status.expired')), locales.getText('pisell2.text.validity.expired')(formattedDate));
576
579
  }
577
- if (diffDays <= 7) {
580
+ if (diffDays < 7) {
578
581
  return /*#__PURE__*/React.createElement("div", {
579
582
  style: {
580
583
  color: '#FFA940',
@@ -11,7 +11,7 @@
11
11
  .group-row {
12
12
  .product-card {
13
13
  min-width: 363px;
14
- max-width: 737px;
14
+ max-width: unset;
15
15
  box-sizing: border-box;
16
16
  margin-top: 12px;
17
17
  }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @title: 格式化时间
3
+ * @description:
4
+ * @param {Moment} date 时间
5
+ * @param {string} cnFormat 中文
6
+ * @param {string} enFormat 英文
7
+ * @return {*}
8
+ * @Author: Wzw
9
+ * @Date: 2022-07-28 11:57
10
+ */
11
+ export declare const formatDate: (date: any, cnFormat?: string, enFormat?: string) => string;
@@ -0,0 +1,49 @@
1
+ import dayjs from "dayjs";
2
+ import { getLocale } from "./locales";
3
+ /**
4
+ * @title: 格式化时间
5
+ * @description:
6
+ * @param {Moment} date 时间
7
+ * @param {string} cnFormat 中文
8
+ * @param {string} enFormat 英文
9
+ * @return {*}
10
+ * @Author: Wzw
11
+ * @Date: 2022-07-28 11:57
12
+ */
13
+ export var formatDate = function formatDate(date, cnFormat, enFormat) {
14
+ var _cnFormat = cnFormat || 'LL';
15
+ var _enFormat = enFormat || _cnFormat;
16
+ // 澳大利亚
17
+ // ll 20 Jul 2022
18
+ // LL 20 July 2022
19
+ // D MMM 20 July
20
+ // D MMMM 20 July
21
+
22
+ // 中国
23
+ // ll 2022年07月20日
24
+ // LL 2022年07月20日
25
+ // MMM Do 7月20日
26
+ // MMMM Do 07月20日
27
+ // 时分秒
28
+ // hh:mm:ss 05:01:41
29
+
30
+ // 一天内的时间段: Sunday, 6 July ⋅ 10:00 – 11:30
31
+ var format = _cnFormat;
32
+ var dayjs_local = 'zh-cn';
33
+ var umi_locale = getLocale();
34
+ // 中文环境切换moment语言为中文, 其他环境默认澳大利亚
35
+ if (umi_locale !== 'zh-CN' && umi_locale !== 'zh-HK') {
36
+ dayjs_local = 'en-au';
37
+ format = _enFormat;
38
+ }
39
+
40
+ // 繁体
41
+ if (umi_locale === 'zh-TW') {
42
+ dayjs_local = 'zh-tw';
43
+ format = _cnFormat;
44
+ }
45
+
46
+ // 设置moment语言
47
+ dayjs.locale(dayjs_local);
48
+ return dayjs(date).format(format);
49
+ };
@@ -41,6 +41,8 @@ var import_collapsibleList = __toESM(require("../../components/collapsibleList")
41
41
  var import_index = require("./index.less");
42
42
  var import_RenderValueById = __toESM(require("./RenderValueById"));
43
43
  var import_useComponents = __toESM(require("../../../../hooks/useComponents"));
44
+ var import_dayjs = __toESM(require("dayjs"));
45
+ var import_date = require("../../../../utils/date");
44
46
  var queryValueById = ["checkbox", "radioButton", "select", "form_to_form"];
45
47
  var Single = ({
46
48
  value,
@@ -138,6 +140,29 @@ var Single = ({
138
140
  },
139
141
  [form]
140
142
  );
143
+ console.log("fff", form);
144
+ const ignoreValidity = (0, import_react.useMemo)(() => {
145
+ var _a2, _b2;
146
+ return !((_b2 = (_a2 = form == null ? void 0 : form.form) == null ? void 0 : _a2.setting) == null ? void 0 : _b2.validity) || form.form.setting.validity.type === "no_expiry";
147
+ }, [form == null ? void 0 : form.form]);
148
+ const getExpireStatus = (expiredAt) => {
149
+ if (ignoreValidity || !expiredAt) return null;
150
+ const now = (0, import_dayjs.default)();
151
+ const expireDate = (0, import_dayjs.default)(expiredAt).endOf("day");
152
+ const diffDays = expireDate.diff(now, "day");
153
+ let cnDate = "YYYY-MM-DD";
154
+ let enDate = "DD/MM/YYYY";
155
+ const formattedDate = (0, import_date.formatDate)(expireDate, cnDate, enDate);
156
+ if (now.isAfter(expireDate)) {
157
+ return /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#999999", fontSize: "14px", lineHeight: "20px" } }, /* @__PURE__ */ import_react.default.createElement(import_antd.Tag, { color: "red", style: { borderRadius: 16, marginRight: 8 } }, import_utils.locales.getText("pisell2.text.status.expired")), import_utils.locales.getText("pisell2.text.validity.expired")(formattedDate));
158
+ }
159
+ if (diffDays < 7) {
160
+ return /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#FFA940", fontSize: "14px", lineHeight: "20px" } }, import_utils.locales.getText("pisell2.text.validity.expiring_soon")(
161
+ formattedDate
162
+ ));
163
+ }
164
+ return /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#999999", fontSize: "14px", lineHeight: "20px" } }, import_utils.locales.getText("pisell2.text.validity.valid_through")(formattedDate));
165
+ };
141
166
  const _optionRender = (item) => {
142
167
  if (optionRender) {
143
168
  return optionRender(item);
@@ -146,14 +171,11 @@ var Single = ({
146
171
  "div",
147
172
  {
148
173
  style: {
149
- flex: 1,
150
- display: "flex",
151
- alignItems: "center",
152
- justifyContent: "space-between"
174
+ flex: 1
153
175
  }
154
176
  },
155
- item["main_field"] || item[form.option_key] || "-",
156
- (item == null ? void 0 : item.status) ? item.status === "valid" ? /* @__PURE__ */ import_react.default.createElement(import_antd.Tag, { color: "#56c064" }, import_utils.locales.getText("pisell2.text.status.valid")) : /* @__PURE__ */ import_react.default.createElement(import_antd.Tag, { color: "#d83963" }, import_utils.locales.getText("pisell2.text.status.expired")) : null
177
+ /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#1B1B1B", fontSize: 16, fontWeight: 600, lineHeight: "22px" } }, item["main_field"] || item[form.option_key] || "-"),
178
+ /* @__PURE__ */ import_react.default.createElement("div", null, getExpireStatus(item.expired_at))
157
179
  );
158
180
  };
159
181
  const _addButtonProps = (0, import_react.useMemo)(() => {
@@ -48,6 +48,7 @@ var import_index = require("./index.less");
48
48
  var import_useAddHolder = __toESM(require("../hooks/useAddHolder"));
49
49
  var import_useGetHolderList = __toESM(require("../hooks/useGetHolderList"));
50
50
  var import_dayjs = __toESM(require("dayjs"));
51
+ var import_date = require("../../../../utils/date");
51
52
  var defaultParams = {
52
53
  skip: 1,
53
54
  num: 20,
@@ -428,11 +429,13 @@ var Pet = (props) => {
428
429
  const now = (0, import_dayjs.default)();
429
430
  const expireDate = (0, import_dayjs.default)(expiredAt).endOf("day");
430
431
  const diffDays = expireDate.diff(now, "day");
431
- const formattedDate = expireDate.format("YYYY-MM-DD");
432
+ let cnDate = "YYYY-MM-DD";
433
+ let enDate = "DD/MM/YYYY";
434
+ const formattedDate = (0, import_date.formatDate)(expireDate, cnDate, enDate);
432
435
  if (now.isAfter(expireDate)) {
433
436
  return /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#999999", fontSize: "14px", lineHeight: "20px" } }, /* @__PURE__ */ import_react.default.createElement(import_antd.Tag, { color: "red", style: { borderRadius: 16, marginRight: 8 } }, import_utils.locales.getText("pisell2.text.status.expired")), import_utils.locales.getText("pisell2.text.validity.expired")(formattedDate));
434
437
  }
435
- if (diffDays <= 7) {
438
+ if (diffDays < 7) {
436
439
  return /* @__PURE__ */ import_react.default.createElement("div", { style: { color: "#FFA940", fontSize: "14px", lineHeight: "20px" } }, import_utils.locales.getText("pisell2.text.validity.expiring_soon")(
437
440
  formattedDate
438
441
  ));
@@ -11,7 +11,7 @@
11
11
  .group-row {
12
12
  .product-card {
13
13
  min-width: 363px;
14
- max-width: 737px;
14
+ max-width: unset;
15
15
  box-sizing: border-box;
16
16
  margin-top: 12px;
17
17
  }
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @title: 格式化时间
3
+ * @description:
4
+ * @param {Moment} date 时间
5
+ * @param {string} cnFormat 中文
6
+ * @param {string} enFormat 英文
7
+ * @return {*}
8
+ * @Author: Wzw
9
+ * @Date: 2022-07-28 11:57
10
+ */
11
+ export declare const formatDate: (date: any, cnFormat?: string, enFormat?: string) => string;
@@ -0,0 +1,57 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/utils/date.ts
30
+ var date_exports = {};
31
+ __export(date_exports, {
32
+ formatDate: () => formatDate
33
+ });
34
+ module.exports = __toCommonJS(date_exports);
35
+ var import_dayjs = __toESM(require("dayjs"));
36
+ var import_locales = require("./locales");
37
+ var formatDate = (date, cnFormat, enFormat) => {
38
+ let _cnFormat = cnFormat || "LL";
39
+ let _enFormat = enFormat || _cnFormat;
40
+ let format = _cnFormat;
41
+ let dayjs_local = "zh-cn";
42
+ const umi_locale = (0, import_locales.getLocale)();
43
+ if (umi_locale !== "zh-CN" && umi_locale !== "zh-HK") {
44
+ dayjs_local = "en-au";
45
+ format = _enFormat;
46
+ }
47
+ if (umi_locale === "zh-TW") {
48
+ dayjs_local = "zh-tw";
49
+ format = _cnFormat;
50
+ }
51
+ import_dayjs.default.locale(dayjs_local);
52
+ return (0, import_dayjs.default)(date).format(format);
53
+ };
54
+ // Annotate the CommonJS export names for ESM import in node:
55
+ 0 && (module.exports = {
56
+ formatDate
57
+ });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pisell/private-materials",
3
- "version": "3.3.24",
3
+ "version": "3.3.25",
4
4
  "main": "./lib/index.js",
5
5
  "module": "./es/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -59,10 +59,10 @@
59
59
  "react-infinite-scroll-component": "^6.1.0",
60
60
  "rc-virtual-list": "^3.11.3",
61
61
  "decimal.js": "^10.4.3",
62
+ "@pisell/utils": "1.0.42",
62
63
  "@pisell/materials": "3.3.7",
63
- "@pisell/date-picker": "3.0.2",
64
64
  "@pisell/icon": "0.0.11",
65
- "@pisell/utils": "1.0.42"
65
+ "@pisell/date-picker": "3.0.2"
66
66
  },
67
67
  "peerDependencies": {
68
68
  "react": "^18.0.0",