@pisell/materials 1.0.881 → 1.0.882

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 (107) 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 +1 -1
  6. package/build/lowcode/preview.js +164 -148
  7. package/build/lowcode/render/default/view.js +38 -24
  8. package/build/lowcode/view.js +38 -24
  9. package/es/components/dataSourceComponents/dataSourceForm/formItem.d.ts +1 -0
  10. package/es/components/dataSourceComponents/dataSourceTable/filter/index.d.ts +1 -0
  11. package/es/components/dataSourceComponents/dataSourceTable/filter/utils.d.ts +1 -0
  12. package/es/components/dataSourceComponents/dataSourceTable/hooks/useDataSourceKey.d.ts +3 -2
  13. package/es/components/dataSourceComponents/fields/Input.Json/ReadPretty.d.ts +1 -0
  14. package/es/components/dataSourceComponents/fields/Input.Password/ReadPretty.d.ts +1 -0
  15. package/es/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  16. package/es/components/dataSourceComponents/fields/Select/index.d.ts +2 -1
  17. package/es/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -0
  18. package/es/components/dataSourceComponents/fields/Upload/utils.d.ts +1 -1
  19. package/es/components/dataSourceComponents/fields/index.d.ts +14 -13
  20. package/es/components/date-picker/datePickerCpt.d.ts +1 -0
  21. package/es/components/filter/index.d.ts +1 -0
  22. package/es/components/list/index.d.ts +1 -0
  23. package/es/components/lowCodePage/index.d.ts +1 -0
  24. package/es/components/media/index.d.ts +18 -0
  25. package/es/components/media/index.js +340 -0
  26. package/es/components/media/index.less +100 -0
  27. package/es/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -0
  28. package/es/components/pisellInput/components/Copy/index.d.ts +1 -0
  29. package/es/components/pisellLoading/index.d.ts +1 -0
  30. package/es/components/pisellVHFix/index.d.ts +13 -0
  31. package/es/components/pisellVHFix/index.js +36 -0
  32. package/es/components/pisellVHFix/index.less +10 -0
  33. package/es/components/productCard/components/Header/EditButton/index.d.ts +1 -0
  34. package/es/components/productCard/components/MultiDay/index.d.ts +1 -0
  35. package/es/components/productCard/components/Note/index.d.ts +1 -0
  36. package/es/components/productCard/components/Packages/components/collapsibleList/utils.d.ts +1 -0
  37. package/es/components/productCard/components/Packages/components/options/index.d.ts +1 -0
  38. package/es/components/productCard/components/Packages/index.d.ts +1 -0
  39. package/es/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +1 -0
  40. package/es/components/qrcode/index.d.ts +1 -0
  41. package/es/components/table/Actions/index.d.ts +1 -0
  42. package/es/components/table/BasicTable/index.d.ts +1 -0
  43. package/es/components/table/Gallery/components/GalleryItem/components/RenderFields/index.d.ts +1 -0
  44. package/es/components/table/Gallery/components/VirtualGrid/useGapSize.d.ts +2 -2
  45. package/es/components/table/Table/SelectField/index.d.ts +1 -0
  46. package/es/components/table/Table/fields/date/Show/index.d.ts +1 -0
  47. package/es/components/table/Table/fields/index.d.ts +1 -0
  48. package/es/components/table/Table/fields/link/Show/index.d.ts +1 -0
  49. package/es/components/table/Table/fields/select/filterUtil/index.d.ts +1 -1
  50. package/es/components/table/Table/fields/select/index.d.ts +1 -0
  51. package/es/components/table/Table/fields/treeSelect/filterUtil/index.d.ts +1 -1
  52. package/es/components/table/Table/fields/treeSelect/index.d.ts +1 -0
  53. package/es/components/table/Table/tableConfig/SortRow/index.d.ts +1 -0
  54. package/es/components/table/View/index.d.ts +1 -0
  55. package/es/components/translation/index.js +16 -4
  56. package/es/utils/index.d.ts +1 -1
  57. package/lib/components/dataSourceComponents/dataSourceForm/formItem.d.ts +1 -0
  58. package/lib/components/dataSourceComponents/dataSourceTable/filter/index.d.ts +1 -0
  59. package/lib/components/dataSourceComponents/dataSourceTable/filter/utils.d.ts +1 -0
  60. package/lib/components/dataSourceComponents/dataSourceTable/hooks/useDataSourceKey.d.ts +3 -2
  61. package/lib/components/dataSourceComponents/fields/Input.Json/ReadPretty.d.ts +1 -0
  62. package/lib/components/dataSourceComponents/fields/Input.Password/ReadPretty.d.ts +1 -0
  63. package/lib/components/dataSourceComponents/fields/Input.Subdomain/index.d.ts +1 -1
  64. package/lib/components/dataSourceComponents/fields/Select/index.d.ts +2 -1
  65. package/lib/components/dataSourceComponents/fields/Upload/ReadPretty.d.ts +1 -0
  66. package/lib/components/dataSourceComponents/fields/Upload/utils.d.ts +1 -1
  67. package/lib/components/dataSourceComponents/fields/index.d.ts +14 -13
  68. package/lib/components/date-picker/datePickerCpt.d.ts +1 -0
  69. package/lib/components/filter/index.d.ts +1 -0
  70. package/lib/components/list/index.d.ts +1 -0
  71. package/lib/components/lowCodePage/index.d.ts +1 -0
  72. package/lib/components/media/index.d.ts +18 -0
  73. package/lib/components/media/index.js +265 -0
  74. package/lib/components/media/index.less +100 -0
  75. package/lib/components/pisellAdjustPrice/PisellAdjustPriceInputNumber.d.ts +1 -0
  76. package/lib/components/pisellInput/components/Copy/index.d.ts +1 -0
  77. package/lib/components/pisellLoading/index.d.ts +1 -0
  78. package/lib/components/pisellVHFix/index.d.ts +13 -0
  79. package/lib/components/pisellVHFix/index.js +56 -0
  80. package/lib/components/pisellVHFix/index.less +10 -0
  81. package/lib/components/productCard/components/Header/EditButton/index.d.ts +1 -0
  82. package/lib/components/productCard/components/MultiDay/index.d.ts +1 -0
  83. package/lib/components/productCard/components/Note/index.d.ts +1 -0
  84. package/lib/components/productCard/components/Packages/components/collapsibleList/utils.d.ts +1 -0
  85. package/lib/components/productCard/components/Packages/components/options/index.d.ts +1 -0
  86. package/lib/components/productCard/components/Packages/index.d.ts +1 -0
  87. package/lib/components/productCard/components/Time/components/SelectHolderMultiple/index.d.ts +1 -0
  88. package/lib/components/qrcode/index.d.ts +1 -0
  89. package/lib/components/table/Actions/index.d.ts +1 -0
  90. package/lib/components/table/BasicTable/index.d.ts +1 -0
  91. package/lib/components/table/Gallery/components/GalleryItem/components/RenderFields/index.d.ts +1 -0
  92. package/lib/components/table/Gallery/components/VirtualGrid/useGapSize.d.ts +2 -2
  93. package/lib/components/table/Table/SelectField/index.d.ts +1 -0
  94. package/lib/components/table/Table/fields/date/Show/index.d.ts +1 -0
  95. package/lib/components/table/Table/fields/index.d.ts +1 -0
  96. package/lib/components/table/Table/fields/link/Show/index.d.ts +1 -0
  97. package/lib/components/table/Table/fields/select/filterUtil/index.d.ts +1 -1
  98. package/lib/components/table/Table/fields/select/index.d.ts +1 -0
  99. package/lib/components/table/Table/fields/treeSelect/filterUtil/index.d.ts +1 -1
  100. package/lib/components/table/Table/fields/treeSelect/index.d.ts +1 -0
  101. package/lib/components/table/Table/tableConfig/SortRow/index.d.ts +1 -0
  102. package/lib/components/table/View/index.d.ts +1 -0
  103. package/lib/components/translation/index.js +18 -3
  104. package/lib/utils/index.d.ts +1 -1
  105. package/package.json +3 -3
  106. package/es/components/dataSourceComponents/fields/Translation/BaseTranslation.d.ts +0 -5
  107. package/lib/components/dataSourceComponents/fields/Translation/BaseTranslation.d.ts +0 -5
@@ -0,0 +1,265 @@
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/media/index.tsx
30
+ var media_exports = {};
31
+ __export(media_exports, {
32
+ default: () => media_default
33
+ });
34
+ module.exports = __toCommonJS(media_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_antd = require("antd");
37
+ var import_icons = require("@ant-design/icons");
38
+ var import_ahooks = require("ahooks");
39
+ var import_utils = require("../table/utils");
40
+ var import_useEngineContext = __toESM(require("../../hooks/useEngineContext"));
41
+ var import_index = require("./index.less");
42
+ var Media = (0, import_react.forwardRef)((props, ref) => {
43
+ const {
44
+ __designMode,
45
+ value,
46
+ onChange,
47
+ multiple = false,
48
+ maxCount = 10,
49
+ accept = "image/*,video/*,audio/*",
50
+ disabled = false,
51
+ className,
52
+ style,
53
+ placeholder = "選擇媒體文件",
54
+ showUploadList = true,
55
+ listType = "picture-card"
56
+ } = props;
57
+ const [isModalVisible, setIsModalVisible] = (0, import_react.useState)(false);
58
+ const [selectedItems, setSelectedItems] = (0, import_react.useState)([]);
59
+ const [uploading, setUploading] = (0, import_react.useState)(false);
60
+ const { appHelper } = (0, import_useEngineContext.default)();
61
+ const { mediaUploadUrl, getHeaders } = (appHelper == null ? void 0 : appHelper.constants) || {};
62
+ const { data: mediaList, run: fetchMediaList } = (0, import_ahooks.useRequest)(
63
+ async () => {
64
+ const { data } = await import_utils.request.getRequest().get(
65
+ `/media:list`,
66
+ {
67
+ page: 1,
68
+ pageSize: 100
69
+ },
70
+ {
71
+ isNocobase: true,
72
+ fullResult: true,
73
+ headers: {
74
+ "x-data-source": "pisell2"
75
+ }
76
+ }
77
+ );
78
+ return (data == null ? void 0 : data.data) || [];
79
+ },
80
+ {
81
+ manual: true
82
+ }
83
+ );
84
+ const { run: uploadFile } = (0, import_ahooks.useRequest)(
85
+ async (file) => {
86
+ const formData = new FormData();
87
+ formData.append("file", file);
88
+ formData.append("group_id", "0");
89
+ const { data } = await import_utils.request.getRequest().post(mediaUploadUrl || "/api/media:upload", formData, {
90
+ headers: {
91
+ ...getHeaders == null ? void 0 : getHeaders(),
92
+ "Content-Type": "multipart/form-data"
93
+ }
94
+ });
95
+ return data;
96
+ },
97
+ {
98
+ manual: true,
99
+ onSuccess: (result) => {
100
+ import_antd.message.success("上傳成功");
101
+ fetchMediaList();
102
+ },
103
+ onError: () => {
104
+ import_antd.message.error("上傳失敗");
105
+ }
106
+ }
107
+ );
108
+ const handleUpload = (0, import_react.useCallback)(
109
+ async (file) => {
110
+ if (file.size > 10 * 1024 * 1024) {
111
+ import_antd.message.error("文件大小不能超過10MB");
112
+ return false;
113
+ }
114
+ setUploading(true);
115
+ try {
116
+ await uploadFile(file);
117
+ } finally {
118
+ setUploading(false);
119
+ }
120
+ return false;
121
+ },
122
+ [uploadFile]
123
+ );
124
+ const showModal = (0, import_react.useCallback)(() => {
125
+ if (__designMode === "design") {
126
+ return;
127
+ }
128
+ setIsModalVisible(true);
129
+ fetchMediaList();
130
+ }, [__designMode, fetchMediaList]);
131
+ const handleCancel = (0, import_react.useCallback)(() => {
132
+ setIsModalVisible(false);
133
+ setSelectedItems([]);
134
+ }, []);
135
+ const handleSelect = (0, import_react.useCallback)(
136
+ (item) => {
137
+ if (multiple) {
138
+ const isSelected = selectedItems.find(
139
+ (selected) => selected.id === item.id
140
+ );
141
+ if (isSelected) {
142
+ setSelectedItems(
143
+ selectedItems.filter((selected) => selected.id !== item.id)
144
+ );
145
+ } else {
146
+ if (selectedItems.length >= maxCount) {
147
+ import_antd.message.warning(`最多只能選擇${maxCount}個文件`);
148
+ return;
149
+ }
150
+ setSelectedItems([...selectedItems, item]);
151
+ }
152
+ } else {
153
+ setSelectedItems([item]);
154
+ }
155
+ },
156
+ [multiple, selectedItems, maxCount]
157
+ );
158
+ const handleOk = (0, import_react.useCallback)(() => {
159
+ if (selectedItems.length === 0) {
160
+ import_antd.message.warning("請選擇媒體文件");
161
+ return;
162
+ }
163
+ const urls = selectedItems.map((item) => item.url);
164
+ const result = multiple ? urls : urls[0];
165
+ onChange == null ? void 0 : onChange(result);
166
+ setIsModalVisible(false);
167
+ setSelectedItems([]);
168
+ }, [selectedItems, multiple, onChange]);
169
+ const renderCurrentFiles = (0, import_react.useMemo)(() => {
170
+ if (!value) return null;
171
+ const files = Array.isArray(value) ? value : [value];
172
+ if (listType === "picture-card") {
173
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-current-files" }, files.map((url, index) => /* @__PURE__ */ import_react.default.createElement("div", { key: index, className: "pisell-media-file-item" }, /* @__PURE__ */ import_react.default.createElement(
174
+ import_antd.Image,
175
+ {
176
+ src: url,
177
+ alt: `file-${index}`,
178
+ width: 80,
179
+ height: 80,
180
+ style: { objectFit: "cover" }
181
+ }
182
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-file-actions" }, /* @__PURE__ */ import_react.default.createElement(
183
+ import_antd.Button,
184
+ {
185
+ type: "text",
186
+ size: "small",
187
+ onClick: () => {
188
+ const newFiles = files.filter((_, i) => i !== index);
189
+ onChange == null ? void 0 : onChange(multiple ? newFiles : newFiles[0] || "");
190
+ }
191
+ },
192
+ "刪除"
193
+ )))));
194
+ }
195
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-current-files" }, files.map((url, index) => /* @__PURE__ */ import_react.default.createElement("div", { key: index, className: "pisell-media-file-item" }, /* @__PURE__ */ import_react.default.createElement("span", null, url), /* @__PURE__ */ import_react.default.createElement(
196
+ import_antd.Button,
197
+ {
198
+ type: "text",
199
+ size: "small",
200
+ onClick: () => {
201
+ const newFiles = files.filter((_, i) => i !== index);
202
+ onChange == null ? void 0 : onChange(multiple ? newFiles : newFiles[0] || "");
203
+ }
204
+ },
205
+ "刪除"
206
+ ))));
207
+ }, [value, listType, multiple, onChange]);
208
+ return /* @__PURE__ */ import_react.default.createElement("div", { ref, className: `pisell-media ${className || ""}`, style }, /* @__PURE__ */ import_react.default.createElement(
209
+ import_antd.Button,
210
+ {
211
+ type: "dashed",
212
+ icon: /* @__PURE__ */ import_react.default.createElement(import_icons.PictureOutlined, null),
213
+ onClick: showModal,
214
+ disabled,
215
+ style: { width: "100%", height: listType === "picture-card" ? 80 : 32 }
216
+ },
217
+ placeholder
218
+ ), showUploadList && renderCurrentFiles, /* @__PURE__ */ import_react.default.createElement(
219
+ import_antd.Modal,
220
+ {
221
+ title: "媒體庫",
222
+ open: isModalVisible,
223
+ onCancel: handleCancel,
224
+ onOk: handleOk,
225
+ width: 800,
226
+ okText: "確定",
227
+ cancelText: "取消"
228
+ },
229
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-modal" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-upload" }, /* @__PURE__ */ import_react.default.createElement(
230
+ import_antd.Upload,
231
+ {
232
+ accept,
233
+ beforeUpload: handleUpload,
234
+ showUploadList: false,
235
+ disabled: uploading
236
+ },
237
+ /* @__PURE__ */ import_react.default.createElement(import_antd.Button, { icon: /* @__PURE__ */ import_react.default.createElement(import_icons.PlusOutlined, null), loading: uploading }, "上傳文件")
238
+ )), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-list" }, mediaList == null ? void 0 : mediaList.map((item) => {
239
+ const isSelected = selectedItems.find(
240
+ (selected) => selected.id === item.id
241
+ );
242
+ return /* @__PURE__ */ import_react.default.createElement(
243
+ "button",
244
+ {
245
+ key: item.id,
246
+ className: `pisell-media-item ${isSelected ? "selected" : ""}`,
247
+ onClick: () => handleSelect(item),
248
+ type: "button"
249
+ },
250
+ /* @__PURE__ */ import_react.default.createElement(
251
+ import_antd.Image,
252
+ {
253
+ src: item.url,
254
+ alt: item.name,
255
+ width: 80,
256
+ height: 80,
257
+ style: { objectFit: "cover" }
258
+ }
259
+ ),
260
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-item-info" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-item-name" }, item.name), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-item-size" }, (item.size / 1024 / 1024).toFixed(2), " MB"))
261
+ );
262
+ })), selectedItems.length > 0 && /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-media-selected" }, "已選擇 ", selectedItems.length, " 個文件"))
263
+ ));
264
+ });
265
+ var media_default = Media;
@@ -0,0 +1,100 @@
1
+ .pisell-media {
2
+ .pisell-media-current-files {
3
+ margin-top: 8px;
4
+ display: flex;
5
+ flex-wrap: wrap;
6
+ gap: 8px;
7
+
8
+ .pisell-media-file-item {
9
+ position: relative;
10
+ border: 1px solid #d9d9d9;
11
+ border-radius: 6px;
12
+ padding: 4px;
13
+ display: flex;
14
+ align-items: center;
15
+ gap: 8px;
16
+
17
+ .pisell-media-file-actions {
18
+ position: absolute;
19
+ top: 4px;
20
+ right: 4px;
21
+ opacity: 0;
22
+ transition: opacity 0.2s;
23
+ }
24
+
25
+ &:hover .pisell-media-file-actions {
26
+ opacity: 1;
27
+ }
28
+ }
29
+ }
30
+
31
+ .pisell-media-modal {
32
+ .pisell-media-upload {
33
+ margin-bottom: 16px;
34
+ padding-bottom: 16px;
35
+ border-bottom: 1px solid #f0f0f0;
36
+ }
37
+
38
+ .pisell-media-list {
39
+ display: grid;
40
+ grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));
41
+ gap: 12px;
42
+ max-height: 400px;
43
+ overflow-y: auto;
44
+
45
+ .pisell-media-item {
46
+ border: 2px solid transparent;
47
+ border-radius: 8px;
48
+ padding: 8px;
49
+ cursor: pointer;
50
+ background: #fafafa;
51
+ transition: all 0.2s;
52
+ display: flex;
53
+ flex-direction: column;
54
+ align-items: center;
55
+ text-align: center;
56
+ min-height: 120px;
57
+
58
+ &:hover {
59
+ border-color: #1890ff;
60
+ background: #f0f8ff;
61
+ }
62
+
63
+ &.selected {
64
+ border-color: #1890ff;
65
+ background: #e6f7ff;
66
+ }
67
+
68
+ .pisell-media-item-info {
69
+ margin-top: 8px;
70
+ width: 100%;
71
+
72
+ .pisell-media-item-name {
73
+ font-size: 12px;
74
+ color: #333;
75
+ margin-bottom: 4px;
76
+ overflow: hidden;
77
+ text-overflow: ellipsis;
78
+ white-space: nowrap;
79
+ }
80
+
81
+ .pisell-media-item-size {
82
+ font-size: 10px;
83
+ color: #999;
84
+ }
85
+ }
86
+ }
87
+ }
88
+
89
+ .pisell-media-selected {
90
+ margin-top: 16px;
91
+ padding: 8px 12px;
92
+ background: #f6ffed;
93
+ border: 1px solid #b7eb8f;
94
+ border-radius: 6px;
95
+ color: #52c41a;
96
+ font-size: 14px;
97
+ text-align: center;
98
+ }
99
+ }
100
+ }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { InputNumberProps } from 'antd/es/input-number';
2
3
  export interface PisellAdjustPriceInputNumberProps extends Omit<InputNumberProps, 'onChange'> {
3
4
  value?: number;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { InputProps, ButtonProps } from 'antd';
2
3
  import { PisellContextType } from "../../../pisell-config-provider/context";
3
4
  export interface CopyProps extends InputProps {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { SpinProps } from 'antd';
2
3
  import './index.less';
3
4
  declare type MaskType = {
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import './index.less';
3
+ interface PisellVHFixProps {
4
+ children?: React.ReactNode;
5
+ className?: string;
6
+ style?: React.CSSProperties;
7
+ height?: number;
8
+ minHeight?: boolean;
9
+ maxHeight?: boolean;
10
+ minusPixels?: number;
11
+ }
12
+ declare const PisellVHFix: React.FC<PisellVHFixProps>;
13
+ export default PisellVHFix;
@@ -0,0 +1,56 @@
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/pisellVHFix/index.tsx
30
+ var pisellVHFix_exports = {};
31
+ __export(pisellVHFix_exports, {
32
+ default: () => pisellVHFix_default
33
+ });
34
+ module.exports = __toCommonJS(pisellVHFix_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_useVH = require("../../hooks/useVH");
37
+ var import_index = require("./index.less");
38
+ var PisellVHFix = ({
39
+ children,
40
+ className,
41
+ style,
42
+ height = 100,
43
+ minHeight = false,
44
+ maxHeight = false,
45
+ minusPixels = 0
46
+ }) => {
47
+ (0, import_useVH.useVH)();
48
+ const containerStyle = {
49
+ ...style,
50
+ height: minusPixels > 0 ? `calc(var(--vh, 1vh) * ${height} - ${minusPixels}px)` : `calc(var(--vh, 1vh) * ${height})`,
51
+ ...minHeight && { minHeight: `calc(var(--vh, 1vh) * ${height})` },
52
+ ...maxHeight && { maxHeight: `calc(var(--vh, 1vh) * ${height})` }
53
+ };
54
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: `pisell-vh-fix ${className || ""}`, style: containerStyle }, children);
55
+ };
56
+ var pisellVHFix_default = PisellVHFix;
@@ -0,0 +1,10 @@
1
+ .pisell-vh-fix {
2
+ box-sizing: border-box;
3
+ overflow: hidden;
4
+
5
+ // 确保在Safari移动端正确显示
6
+ -webkit-overflow-scrolling: touch;
7
+
8
+ // 防止iOS Safari的弹性滚动
9
+ overscroll-behavior: contain;
10
+ }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  declare const EditButton: ({ onEdit }: any) => JSX.Element;
3
4
  export default EditButton;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  declare const MultiDay: ({ dataSource, hideDivider }: any) => JSX.Element;
3
4
  export default MultiDay;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  declare const Note: (props: any) => JSX.Element | null;
3
4
  export default Note;
@@ -1 +1,2 @@
1
+ /// <reference types="react" />
1
2
  export declare const renderBundles: (item: any, hidePrice?: boolean, isShowPackageNote?: boolean) => JSX.Element;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  declare const Options: ({ options, amountSymbol }: any) => JSX.Element | null;
3
4
  export default Options;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import './index.less';
2
3
  declare const Packages: ({ item, isShowPackageNote }: any) => JSX.Element | null;
3
4
  export default Packages;
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  declare const SelectHolderMultiple: ({ lists, value, onChange, holderMode, isShowAddHolderButton, onAddHolder, addHolderButtonText, onClearHolder, isErrorHolder, allowClear, holderMaxCount, }: any) => JSX.Element;
2
3
  export default SelectHolderMultiple;
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  declare const QRCode: (props: any) => JSX.Element;
2
3
  export default QRCode;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { FilterType } from "../../filter/types";
2
3
  import { ColumnSettingType, DataSourceGroupType, ExportImportType, GallerySettingType, GridViewType, SortType } from "../types";
3
4
  import "./index.less";
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { TableProps } from 'antd';
2
3
  declare const BasicTable: (props: TableProps<any>) => JSX.Element;
3
4
  export default BasicTable;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  declare type RenderFieldsProps = {
3
4
  fields: string[];
@@ -1,5 +1,5 @@
1
1
  declare const useGapSize: (gap: number | number[]) => {
2
- horizontal: any;
3
- vertical: any;
2
+ horizontal: number;
3
+ vertical: number;
4
4
  };
5
5
  export default useGapSize;
@@ -1,2 +1,3 @@
1
+ /// <reference types="react" />
1
2
  declare const SelectField: () => JSX.Element;
2
3
  export default SelectField;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { FieldPropsType } from "../../types";
2
3
  declare const Show: (props: FieldPropsType) => JSX.Element;
3
4
  export default Show;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  export declare const fieldMaps: {
2
3
  text: {
3
4
  field: {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { FieldPropsType } from "../../types";
2
3
  declare const Show: (props: FieldPropsType) => JSX.Element;
3
4
  export default Show;
@@ -2,4 +2,4 @@ export default function ({ value, key, item, }: {
2
2
  value: string | string[];
3
3
  key: string | string[];
4
4
  item: Record<string, any>;
5
- }): any;
5
+ }): boolean;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import filter from "./filterUtil";
2
3
  declare const _default: {
3
4
  field: {
@@ -2,4 +2,4 @@ export default function ({ value, key, item, }: {
2
2
  value: string | string[] | Record<string, any>[];
3
3
  key: string | string[];
4
4
  item: Record<string, any>;
5
- }): any;
5
+ }): boolean;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import filter from "./filterUtil";
2
3
  declare const _default: {
3
4
  field: {
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import "./index.less";
2
3
  declare const SortRow: ({ children, rowKey, onSortChange }: any) => JSX.Element;
3
4
  export default SortRow;
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { GridViewProps } from '../types';
2
3
  declare const View: (props: GridViewProps & {
3
4
  setTableSetting: (values: Record<string, any>) => void;
@@ -72,12 +72,27 @@ var defaultGlobal = {
72
72
  var defaultObj = {};
73
73
  var Translation = (props) => {
74
74
  var _a, _b;
75
- const { value = defaultObj, onChange, ...others } = props;
75
+ const {
76
+ value = defaultObj,
77
+ onChange,
78
+ type = "text",
79
+ ...others
80
+ } = props;
76
81
  const context = (0, import_useEngineContext.default)();
77
82
  const [open, setOpen] = (0, import_react.useState)(false);
78
83
  const [_value, set_value] = (0, import_react.useState)(value);
79
84
  const store = (_a = context == null ? void 0 : context.appHelper) == null ? void 0 : _a.store;
80
85
  const { shopLanguages } = ((_b = store == null ? void 0 : store.getState()) == null ? void 0 : _b.global) || defaultGlobal;
86
+ const getInputComponent = (0, import_react.useCallback)(() => {
87
+ console.log(type, props, "翻译组件type值");
88
+ switch (type) {
89
+ case "textarea":
90
+ return import_antd.Input.TextArea;
91
+ default:
92
+ return import_antd.Input;
93
+ }
94
+ }, [type]);
95
+ const InputComponent = getInputComponent();
81
96
  (0, import_react.useEffect)(() => {
82
97
  let _newValue = { ...value };
83
98
  if ((0, import_utils.isString)(value)) {
@@ -132,7 +147,7 @@ var Translation = (props) => {
132
147
  setOpen(false);
133
148
  };
134
149
  return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
135
- import_antd.Input,
150
+ InputComponent,
136
151
  {
137
152
  ...others,
138
153
  value: inputValue,
@@ -159,7 +174,7 @@ var Translation = (props) => {
159
174
  },
160
175
  /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-lowcode-translation-modal" }, languageList.map((d) => {
161
176
  return /* @__PURE__ */ import_react.default.createElement(import_antd.Form.Item, { label: d.text, labelCol: { span: 24 }, key: d.code }, /* @__PURE__ */ import_react.default.createElement(
162
- import_antd.Input,
177
+ InputComponent,
163
178
  {
164
179
  ...typeof others.maxLength === "number" ? { maxLength: others.maxLength } : {},
165
180
  value: _value[d.code],
@@ -1,4 +1,4 @@
1
1
  export declare const isBrowser: boolean;
2
- export declare const getCssNumber: (val: string | number) => string | number;
2
+ export declare const getCssNumber: (val: string | number) => string;
3
3
  export declare function uuid(): string;
4
4
  export * from './mergeWith';