@pisell/private-materials 3.4.51 → 3.4.53

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 (128) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +2 -2
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +10 -10
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +10 -10
  11. package/es/components/booking/addons/model.d.ts +10 -1
  12. package/es/components/booking/forms/model.d.ts +10 -1
  13. package/es/components/booking/info/model.d.ts +10 -1
  14. package/es/components/booking/info/service/addService/utils.d.ts +1 -1
  15. package/es/components/booking/info2/service/addService/utils.d.ts +1 -1
  16. package/es/components/booking/model.d.ts +9 -1
  17. package/es/components/booking/notes/model.d.ts +10 -1
  18. package/es/components/booking/payments/model.d.ts +10 -1
  19. package/es/components/eftposPay/linkly/hooks/useTimeQuery.js +14 -6
  20. package/es/components/eftposPay/payo/config.js +70 -32
  21. package/es/components/eftposPay/payo/payment.d.ts +66 -0
  22. package/es/components/eftposPay/payo/payment.js +579 -0
  23. package/es/components/eftposPay/utils/log/index.d.ts +110 -0
  24. package/es/components/eftposPay/utils/log/index.js +371 -0
  25. package/es/components/index.d.ts +2 -1
  26. package/es/components/index.js +2 -1
  27. package/es/components/pay/toC/model.d.ts +9 -1
  28. package/es/components/schedules/model.d.ts +9 -1
  29. package/es/components/systemSettings/registry/components/GroupModal.d.ts +4 -0
  30. package/es/components/systemSettings/registry/components/GroupModal.js +160 -0
  31. package/es/components/systemSettings/registry/components/ItemModal.d.ts +4 -0
  32. package/es/components/systemSettings/registry/components/ItemModal.js +547 -0
  33. package/es/components/systemSettings/registry/components/ModuleList.d.ts +4 -0
  34. package/es/components/systemSettings/registry/components/ModuleList.js +54 -0
  35. package/es/components/systemSettings/registry/components/SectionList.d.ts +4 -0
  36. package/es/components/systemSettings/registry/components/SectionList.js +174 -0
  37. package/es/components/systemSettings/registry/components/SettingsTable.d.ts +4 -0
  38. package/es/components/systemSettings/registry/components/SettingsTable.js +765 -0
  39. package/es/components/systemSettings/registry/components/index.d.ts +4 -0
  40. package/es/components/systemSettings/registry/components/index.js +4 -0
  41. package/es/components/systemSettings/registry/index.d.ts +5 -0
  42. package/es/components/systemSettings/registry/index.js +1059 -0
  43. package/es/components/systemSettings/registry/index.less +410 -0
  44. package/es/components/systemSettings/registry/locales.d.ts +272 -0
  45. package/es/components/systemSettings/registry/locales.js +300 -0
  46. package/es/components/systemSettings/registry/services.d.ts +77 -0
  47. package/es/components/systemSettings/registry/services.js +472 -0
  48. package/es/components/systemSettings/registry/types.d.ts +126 -0
  49. package/es/components/systemSettings/registry/types.js +1 -0
  50. package/es/components/systemSettings/registry/utils/typeValidation.d.ts +16 -0
  51. package/es/components/systemSettings/registry/utils/typeValidation.js +284 -0
  52. package/es/components/systemSettings/registry/utils/validators.d.ts +8 -0
  53. package/es/components/systemSettings/registry/utils/validators.js +44 -0
  54. package/es/components/wallet/Detail/model.d.ts +13 -1
  55. package/es/components/wallet/DiscountCard/model.d.ts +14 -1
  56. package/es/components/wallet/PointCard/model.d.ts +13 -1
  57. package/es/components/wallet/RechargeableCard/model.d.ts +29 -1
  58. package/es/components/wallet/Voucher/model.d.ts +13 -1
  59. package/es/components/wallet/model.d.ts +9 -1
  60. package/es/index.d.ts +2 -0
  61. package/es/index.js +3 -1
  62. package/es/plus/walletPassGallery/components/footerButton/index.js +2 -4
  63. package/es/plus/walletPassGallery/components/footerButton/index.less +14 -59
  64. package/es/plus/walletPassGallery/components/passDetail/index.js +5 -1
  65. package/es/plus/walletPassGallery/components/passDetail/index.less +4 -0
  66. package/es/plus/walletPassGallery/components/recharge/index.js +19 -8
  67. package/es/plus/walletPassGallery/index.js +3 -1
  68. package/es/pro/Login2.0/index.less +15 -8
  69. package/lib/components/booking/addons/model.d.ts +10 -1
  70. package/lib/components/booking/forms/model.d.ts +10 -1
  71. package/lib/components/booking/info/model.d.ts +10 -1
  72. package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
  73. package/lib/components/booking/info2/service/addService/utils.d.ts +1 -1
  74. package/lib/components/booking/model.d.ts +9 -1
  75. package/lib/components/booking/notes/model.d.ts +10 -1
  76. package/lib/components/booking/payments/model.d.ts +10 -1
  77. package/lib/components/eftposPay/linkly/hooks/useTimeQuery.js +12 -6
  78. package/lib/components/eftposPay/payo/config.js +98 -73
  79. package/lib/components/eftposPay/payo/payment.d.ts +66 -0
  80. package/lib/components/eftposPay/payo/payment.js +357 -0
  81. package/lib/components/eftposPay/utils/log/index.d.ts +110 -0
  82. package/lib/components/eftposPay/utils/log/index.js +294 -0
  83. package/lib/components/index.d.ts +2 -1
  84. package/lib/components/index.js +3 -0
  85. package/lib/components/pay/toC/model.d.ts +9 -1
  86. package/lib/components/schedules/model.d.ts +9 -1
  87. package/lib/components/systemSettings/registry/components/GroupModal.d.ts +4 -0
  88. package/lib/components/systemSettings/registry/components/GroupModal.js +177 -0
  89. package/lib/components/systemSettings/registry/components/ItemModal.d.ts +4 -0
  90. package/lib/components/systemSettings/registry/components/ItemModal.js +508 -0
  91. package/lib/components/systemSettings/registry/components/ModuleList.d.ts +4 -0
  92. package/lib/components/systemSettings/registry/components/ModuleList.js +71 -0
  93. package/lib/components/systemSettings/registry/components/SectionList.d.ts +4 -0
  94. package/lib/components/systemSettings/registry/components/SectionList.js +181 -0
  95. package/lib/components/systemSettings/registry/components/SettingsTable.d.ts +4 -0
  96. package/lib/components/systemSettings/registry/components/SettingsTable.js +575 -0
  97. package/lib/components/systemSettings/registry/components/index.d.ts +4 -0
  98. package/lib/components/systemSettings/registry/components/index.js +48 -0
  99. package/lib/components/systemSettings/registry/index.d.ts +5 -0
  100. package/lib/components/systemSettings/registry/index.js +529 -0
  101. package/lib/components/systemSettings/registry/index.less +410 -0
  102. package/lib/components/systemSettings/registry/locales.d.ts +272 -0
  103. package/lib/components/systemSettings/registry/locales.js +324 -0
  104. package/lib/components/systemSettings/registry/services.d.ts +77 -0
  105. package/lib/components/systemSettings/registry/services.js +290 -0
  106. package/lib/components/systemSettings/registry/types.d.ts +126 -0
  107. package/lib/components/systemSettings/registry/types.js +17 -0
  108. package/lib/components/systemSettings/registry/utils/typeValidation.d.ts +16 -0
  109. package/lib/components/systemSettings/registry/utils/typeValidation.js +228 -0
  110. package/lib/components/systemSettings/registry/utils/validators.d.ts +8 -0
  111. package/lib/components/systemSettings/registry/utils/validators.js +54 -0
  112. package/lib/components/wallet/Detail/model.d.ts +13 -1
  113. package/lib/components/wallet/DiscountCard/model.d.ts +14 -1
  114. package/lib/components/wallet/PointCard/model.d.ts +13 -1
  115. package/lib/components/wallet/RechargeableCard/model.d.ts +29 -1
  116. package/lib/components/wallet/Voucher/model.d.ts +13 -1
  117. package/lib/components/wallet/model.d.ts +9 -1
  118. package/lib/index.d.ts +2 -0
  119. package/lib/index.js +6 -0
  120. package/lib/plus/walletPassGallery/components/footerButton/index.js +2 -2
  121. package/lib/plus/walletPassGallery/components/footerButton/index.less +14 -59
  122. package/lib/plus/walletPassGallery/components/passDetail/index.js +4 -1
  123. package/lib/plus/walletPassGallery/components/passDetail/index.less +4 -0
  124. package/lib/plus/walletPassGallery/components/recharge/index.js +7 -1
  125. package/lib/plus/walletPassGallery/index.js +3 -1
  126. package/lib/pro/Login2.0/index.less +15 -8
  127. package/lowcode/settings-registry/meta.ts +29 -0
  128. package/package.json +4 -4
@@ -0,0 +1,294 @@
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/components/eftposPay/utils/log/index.ts
30
+ var log_exports = {};
31
+ __export(log_exports, {
32
+ default: () => log_default
33
+ });
34
+ module.exports = __toCommonJS(log_exports);
35
+ var import_dayjs = __toESM(require("dayjs"));
36
+ var import_utils = require("@pisell/utils");
37
+ var PAYMENT_LOGS_KEY = "pisell2_eftpos_payment_logs";
38
+ var PaymentLogInstance = class _PaymentLogInstance {
39
+ static instance;
40
+ /** 当前交易记录号 */
41
+ currentNumber = null;
42
+ /** 当前日志记录 */
43
+ currentRecord = null;
44
+ constructor() {
45
+ }
46
+ /**
47
+ * 获取单例实例
48
+ */
49
+ static getInstance() {
50
+ if (!_PaymentLogInstance.instance) {
51
+ _PaymentLogInstance.instance = new _PaymentLogInstance();
52
+ }
53
+ return _PaymentLogInstance.instance;
54
+ }
55
+ /**
56
+ * 初始化支付日志
57
+ * @param number 交易记录号
58
+ * @param options 初始化选项
59
+ */
60
+ init(number, options) {
61
+ try {
62
+ this.checkAndUploadOldLogs();
63
+ this.currentNumber = number;
64
+ this.currentRecord = {
65
+ number,
66
+ orderId: options == null ? void 0 : options.orderId,
67
+ deviceId: options == null ? void 0 : options.deviceId,
68
+ paymentType: options == null ? void 0 : options.paymentType,
69
+ createdAt: (0, import_dayjs.default)().format("YYYY-MM-DD HH:mm:ss.SSS"),
70
+ logs: []
71
+ };
72
+ this.addLog({
73
+ title: "EFTPOS日志初始化",
74
+ content: { number, ...options || {} }
75
+ });
76
+ console.log(`📝 支付日志初始化成功,交易号: ${number}`);
77
+ } catch (error) {
78
+ console.error("❌ 支付日志初始化失败:", error);
79
+ }
80
+ }
81
+ /**
82
+ * 添加日志条目
83
+ * @param title 日志标题
84
+ * @param content 日志内容
85
+ */
86
+ addLog(params) {
87
+ try {
88
+ if (!this.currentRecord || !this.currentNumber) {
89
+ console.warn("⚠️ 日志未初始化,无法添加日志");
90
+ return;
91
+ }
92
+ const logEntry = {
93
+ title: params.title,
94
+ time: (0, import_dayjs.default)().format("YYYY-MM-DD HH:mm:ss.SSS")
95
+ };
96
+ if (params == null ? void 0 : params.content) {
97
+ logEntry.content = params.content;
98
+ }
99
+ this.currentRecord.logs.push(logEntry);
100
+ this.saveToLocalStorage();
101
+ console.log(`📝 添加支付日志: ${params.title}`, logEntry);
102
+ } catch (error) {
103
+ console.error("❌ 添加日志失败:", error);
104
+ }
105
+ }
106
+ /**
107
+ * 构建日志内容
108
+ * @param record 日志记录
109
+ * @returns 格式化的日志内容数组
110
+ */
111
+ buildLogContent(record) {
112
+ return [
113
+ {
114
+ key: "交易记录号",
115
+ value: record.number
116
+ },
117
+ {
118
+ key: "订单ID",
119
+ value: (record == null ? void 0 : record.orderId) || "未知"
120
+ },
121
+ {
122
+ key: "设备ID",
123
+ value: (record == null ? void 0 : record.deviceId) || "未知"
124
+ },
125
+ {
126
+ key: "支付类型",
127
+ value: (record == null ? void 0 : record.paymentType) || "未知"
128
+ },
129
+ {
130
+ key: "创建时间",
131
+ value: record.createdAt
132
+ },
133
+ {
134
+ key: "详细日志",
135
+ value: JSON.stringify(record.logs || [])
136
+ }
137
+ ];
138
+ }
139
+ /**
140
+ * 发送单条日志记录到飞书
141
+ * @param record 日志记录
142
+ * @param isRestore 是否是恢复上传
143
+ */
144
+ sendLogRecord(record, isRestore = false) {
145
+ const prefix = isRestore ? "[恢复]" : "";
146
+ const title = `${prefix}支付日志-${record.paymentType || "Unknown"}-${record.orderId || "Unknown"}`;
147
+ const content = this.buildLogContent(record);
148
+ (0, import_utils.sendWarningLog)({ title, content });
149
+ console.log(`✅ 日志已发送到飞书: ${title}`);
150
+ }
151
+ /**
152
+ * 发送日志到飞书
153
+ * @param title 日志标题(可选,仅在需要自定义标题时使用)
154
+ */
155
+ sendLogs(title) {
156
+ try {
157
+ if (!this.currentRecord) {
158
+ console.warn("⚠️ 没有日志记录需要发送");
159
+ return;
160
+ }
161
+ if (title) {
162
+ const content = this.buildLogContent(this.currentRecord);
163
+ (0, import_utils.sendWarningLog)({ title, content });
164
+ console.log(`✅ 日志已发送到飞书: ${title}`);
165
+ } else {
166
+ this.sendLogRecord(this.currentRecord, false);
167
+ }
168
+ } catch (error) {
169
+ console.error("❌ 发送日志到飞书失败:", error);
170
+ }
171
+ }
172
+ /**
173
+ * 清除当前日志
174
+ * @param shouldSend 清除前是否发送到飞书,默认为 true
175
+ */
176
+ clearLogs(shouldSend = true) {
177
+ try {
178
+ if (!this.currentNumber) {
179
+ console.warn("⚠️ 没有活动的日志记录需要清除");
180
+ return;
181
+ }
182
+ if (shouldSend && this.currentRecord) {
183
+ this.sendLogs();
184
+ }
185
+ this.removeFromLocalStorage(this.currentNumber);
186
+ this.currentNumber = null;
187
+ this.currentRecord = null;
188
+ console.log("🧹 日志已清除");
189
+ } catch (error) {
190
+ console.error("❌ 清除日志失败:", error);
191
+ }
192
+ }
193
+ /**
194
+ * 检查并上传旧日志
195
+ */
196
+ checkAndUploadOldLogs() {
197
+ try {
198
+ const oldLogs = this.getOldLogsFromLocalStorage();
199
+ if (oldLogs.length === 0) {
200
+ return;
201
+ }
202
+ console.log(`📤 发现 ${oldLogs.length} 条旧日志记录,准备上传...`);
203
+ for (const log of oldLogs) {
204
+ try {
205
+ this.sendLogRecord(log, true);
206
+ this.removeFromLocalStorage(log.number);
207
+ console.log(`✅ 旧日志已上传并删除: ${log.number}`);
208
+ } catch (error) {
209
+ console.error(`❌ 上传旧日志失败 (${log.number}):`, error);
210
+ }
211
+ }
212
+ } catch (error) {
213
+ console.error("❌ 检查旧日志失败:", error);
214
+ }
215
+ }
216
+ /**
217
+ * 获取所有支付日志对象
218
+ */
219
+ getAllLogsObject() {
220
+ try {
221
+ const value = localStorage.getItem(PAYMENT_LOGS_KEY);
222
+ if (!value) {
223
+ return {};
224
+ }
225
+ return JSON.parse(value);
226
+ } catch (error) {
227
+ console.error("❌ 读取 localStorage 失败:", error);
228
+ return {};
229
+ }
230
+ }
231
+ /**
232
+ * 保存所有支付日志对象
233
+ */
234
+ saveAllLogsObject(logsObject) {
235
+ try {
236
+ localStorage.setItem(PAYMENT_LOGS_KEY, JSON.stringify(logsObject));
237
+ } catch (error) {
238
+ console.error("❌ 保存到 localStorage 失败:", error);
239
+ }
240
+ }
241
+ /**
242
+ * 保存到 localStorage
243
+ */
244
+ saveToLocalStorage() {
245
+ try {
246
+ if (!this.currentRecord || !this.currentNumber) {
247
+ return;
248
+ }
249
+ const allLogs = this.getAllLogsObject();
250
+ allLogs[this.currentNumber] = this.currentRecord;
251
+ this.saveAllLogsObject(allLogs);
252
+ } catch (error) {
253
+ console.error("❌ 保存到 localStorage 失败:", error);
254
+ }
255
+ }
256
+ /**
257
+ * 从 localStorage 中删除
258
+ */
259
+ removeFromLocalStorage(number) {
260
+ try {
261
+ const allLogs = this.getAllLogsObject();
262
+ delete allLogs[number];
263
+ this.saveAllLogsObject(allLogs);
264
+ } catch (error) {
265
+ console.error("❌ 从 localStorage 删除失败:", error);
266
+ }
267
+ }
268
+ /**
269
+ * 获取所有旧日志
270
+ */
271
+ getOldLogsFromLocalStorage() {
272
+ try {
273
+ const allLogs = this.getAllLogsObject();
274
+ return Object.values(allLogs);
275
+ } catch (error) {
276
+ console.error("❌ 获取旧日志失败:", error);
277
+ return [];
278
+ }
279
+ }
280
+ /**
281
+ * 获取当前日志记录(用于调试)
282
+ */
283
+ getCurrentRecord() {
284
+ return this.currentRecord;
285
+ }
286
+ /**
287
+ * 获取当前交易号(用于调试)
288
+ */
289
+ getCurrentNumber() {
290
+ return this.currentNumber;
291
+ }
292
+ };
293
+ var paymentLog = PaymentLogInstance.getInstance();
294
+ var log_default = paymentLog;
@@ -20,4 +20,5 @@ import StepController from './stepController';
20
20
  import PinModal from './pinModal';
21
21
  import PinVerifyModal from './pinVerifyModal';
22
22
  import { OAuthConfig, SaaSAdminAuth, OrgAdminAuth, CustomerAuth, CustomerOAuthConfig, DeviceAuth, POSOperatorAuth, OnlineShopAuth, SaaSManagermentAuth } from './authentication/admin';
23
- export { Login, BookingInfo, Booking, BookingNotes, BookingAddons, BookingForms, Schedules, ProductExtension, RuleSetting, TaxSelect, ToCPay, PisellSelectCustomerModal, Wallet, WalletList, WorkspaceList, WorkspaceListDetail, SubTotal, EditBookingModal, StepController, PinModal, PinVerifyModal, OAuthConfig, SaaSAdminAuth, OrgAdminAuth, CustomerAuth, CustomerOAuthConfig, DeviceAuth, POSOperatorAuth, OnlineShopAuth, SaaSManagermentAuth, };
23
+ import Registry from './systemSettings/registry';
24
+ export { Login, BookingInfo, Booking, BookingNotes, BookingAddons, BookingForms, Schedules, ProductExtension, RuleSetting, TaxSelect, ToCPay, PisellSelectCustomerModal, Wallet, WalletList, WorkspaceList, WorkspaceListDetail, SubTotal, EditBookingModal, StepController, PinModal, PinVerifyModal, OAuthConfig, SaaSAdminAuth, OrgAdminAuth, CustomerAuth, CustomerOAuthConfig, DeviceAuth, POSOperatorAuth, OnlineShopAuth, SaaSManagermentAuth, Registry, };
@@ -47,6 +47,7 @@ __export(components_exports, {
47
47
  PinVerifyModal: () => import_pinVerifyModal.default,
48
48
  PisellSelectCustomerModal: () => import_pisellSelectCustomerModal.default,
49
49
  ProductExtension: () => import_productExtension.default,
50
+ Registry: () => import_registry.default,
50
51
  RuleSetting: () => import_ruleSetting.default,
51
52
  SaaSAdminAuth: () => import_admin.SaaSAdminAuth,
52
53
  SaaSManagermentAuth: () => import_admin.SaaSManagermentAuth,
@@ -83,6 +84,7 @@ var import_stepController = __toESM(require("./stepController"));
83
84
  var import_pinModal = __toESM(require("./pinModal"));
84
85
  var import_pinVerifyModal = __toESM(require("./pinVerifyModal"));
85
86
  var import_admin = require("./authentication/admin");
87
+ var import_registry = __toESM(require("./systemSettings/registry"));
86
88
  // Annotate the CommonJS export names for ESM import in node:
87
89
  0 && (module.exports = {
88
90
  Booking,
@@ -103,6 +105,7 @@ var import_admin = require("./authentication/admin");
103
105
  PinVerifyModal,
104
106
  PisellSelectCustomerModal,
105
107
  ProductExtension,
108
+ Registry,
106
109
  RuleSetting,
107
110
  SaaSAdminAuth,
108
111
  SaaSManagermentAuth,
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export interface FormState {
2
3
  platform: 'pc' | 'h5' | '' | undefined;
3
4
  order: any;
@@ -29,4 +30,11 @@ export interface PayGroup {
29
30
  _order: any;
30
31
  front_order_uuid?: string;
31
32
  }
32
- export declare const Provider: any, Context: any;
33
+ export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
34
+ state: FormState;
35
+ } & {
36
+ dispatch: (params: {
37
+ type: string;
38
+ payload: any;
39
+ }) => void;
40
+ }>;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { CalendarDataItem, ScheduleItem } from "./type";
2
3
  import dayjs from "dayjs";
3
4
  export interface FormState {
@@ -68,4 +69,11 @@ export interface FormState {
68
69
  };
69
70
  setGlobalState: Function | null;
70
71
  }
71
- export declare const Provider: any, Context: any;
72
+ export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
73
+ state: FormState;
74
+ } & {
75
+ dispatch: (params: {
76
+ type: string;
77
+ payload: any;
78
+ }) => void;
79
+ }>;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { GroupModalProps } from '../types';
3
+ declare const GroupModal: React.FC<GroupModalProps>;
4
+ export default GroupModal;
@@ -0,0 +1,177 @@
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/components/systemSettings/registry/components/GroupModal.tsx
30
+ var GroupModal_exports = {};
31
+ __export(GroupModal_exports, {
32
+ default: () => GroupModal_default
33
+ });
34
+ module.exports = __toCommonJS(GroupModal_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_antd = require("antd");
37
+ var import_materials = require("@pisell/materials");
38
+ var import_utils = require("@pisell/utils");
39
+ var import_locales = __toESM(require("../locales"));
40
+ var getText = (key) => {
41
+ const globalText = import_utils.locales.getText(key);
42
+ if (globalText !== key) {
43
+ return globalText;
44
+ }
45
+ const currentLocale = import_utils.locales.locale || "zh-CN";
46
+ const localeData = import_locales.default[currentLocale] || import_locales.default["en"] || {};
47
+ return localeData[key] || key;
48
+ };
49
+ var GroupModal = ({
50
+ open,
51
+ type,
52
+ data,
53
+ onOk,
54
+ onCancel
55
+ }) => {
56
+ const [form] = import_antd.Form.useForm();
57
+ (0, import_react.useEffect)(() => {
58
+ if (open) {
59
+ if (type === "edit" && data) {
60
+ form.setFieldsValue({
61
+ title: data.title,
62
+ code: data.code
63
+ });
64
+ } else {
65
+ form.resetFields();
66
+ }
67
+ }
68
+ }, [open, type, data, form]);
69
+ const handleOk = async () => {
70
+ try {
71
+ const values = await form.validateFields();
72
+ await onOk(values);
73
+ form.resetFields();
74
+ } catch (error) {
75
+ console.error("Validation failed:", error);
76
+ }
77
+ };
78
+ const handleCancel = () => {
79
+ form.resetFields();
80
+ onCancel();
81
+ };
82
+ const title = import_utils.locales.getText(
83
+ type === "add" ? "registry.modal.add.group" : "registry.modal.edit.group"
84
+ );
85
+ return /* @__PURE__ */ import_react.default.createElement(
86
+ import_antd.Drawer,
87
+ {
88
+ title,
89
+ open,
90
+ onClose: handleCancel,
91
+ width: 400,
92
+ destroyOnClose: true,
93
+ footer: /* @__PURE__ */ import_react.default.createElement("div", { style: { textAlign: "right" } }, /* @__PURE__ */ import_react.default.createElement(import_antd.Space, { size: "small" }, /* @__PURE__ */ import_react.default.createElement(import_materials.Button, { onClick: handleCancel }, import_utils.locales.getText("registry.button.cancel")), /* @__PURE__ */ import_react.default.createElement(import_materials.Button, { type: "primary", onClick: handleOk }, import_utils.locales.getText("registry.button.save"))))
94
+ },
95
+ /* @__PURE__ */ import_react.default.createElement(
96
+ import_antd.Form,
97
+ {
98
+ form,
99
+ layout: "vertical",
100
+ requiredMark: true
101
+ },
102
+ /* @__PURE__ */ import_react.default.createElement(
103
+ import_antd.Form.Item,
104
+ {
105
+ name: "title",
106
+ label: import_utils.locales.getText("registry.form.title"),
107
+ rules: [
108
+ {
109
+ required: true,
110
+ message: import_utils.locales.getText("registry.message.required")
111
+ }
112
+ ]
113
+ },
114
+ /* @__PURE__ */ import_react.default.createElement(
115
+ import_materials.BaseTranslation,
116
+ {
117
+ placeholder: import_utils.locales.getText("registry.form.name.placeholder")
118
+ }
119
+ )
120
+ ),
121
+ /* @__PURE__ */ import_react.default.createElement(
122
+ import_antd.Form.Item,
123
+ {
124
+ name: "code",
125
+ label: import_utils.locales.getText("registry.form.code"),
126
+ rules: [
127
+ {
128
+ required: true,
129
+ message: import_utils.locales.getText("registry.message.required")
130
+ },
131
+ {
132
+ validator: (_, value) => {
133
+ if (!value) return Promise.resolve();
134
+ if (!/^[a-z0-9\._]+$/.test(value)) {
135
+ return Promise.reject(
136
+ new Error(
137
+ getText("registry.message.code.format")
138
+ )
139
+ );
140
+ }
141
+ if (!/^[a-z]/.test(value)) {
142
+ return Promise.reject(
143
+ new Error(
144
+ getText("registry.message.code.start")
145
+ )
146
+ );
147
+ }
148
+ if (/[\._]$/.test(value)) {
149
+ return Promise.reject(
150
+ new Error(
151
+ getText("registry.message.code.end")
152
+ )
153
+ );
154
+ }
155
+ if (/[\.]{2,}|[\_]{2,}/.test(value)) {
156
+ return Promise.reject(
157
+ new Error(
158
+ getText("registry.message.code.consecutive")
159
+ )
160
+ );
161
+ }
162
+ return Promise.resolve();
163
+ }
164
+ }
165
+ ]
166
+ },
167
+ /* @__PURE__ */ import_react.default.createElement(
168
+ import_antd.Input,
169
+ {
170
+ placeholder: import_utils.locales.getText("registry.form.code.placeholder")
171
+ }
172
+ )
173
+ )
174
+ )
175
+ );
176
+ };
177
+ var GroupModal_default = GroupModal;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import { ItemModalProps } from '../types';
3
+ declare const ItemModal: React.FC<ItemModalProps>;
4
+ export default ItemModal;