@nocobase/client 1.9.0-beta.8 → 1.9.0

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 (67) hide show
  1. package/es/block-provider/hooks/index.d.ts +28 -1
  2. package/es/collection-manager/Configuration/components/FieldValidation.d.ts +31 -0
  3. package/es/collection-manager/Configuration/components/index.d.ts +1 -0
  4. package/es/collection-manager/constants.d.ts +383 -0
  5. package/es/collection-manager/interfaces/dateOnly.d.ts +1 -0
  6. package/es/collection-manager/interfaces/datetime.d.ts +1 -0
  7. package/es/collection-manager/interfaces/datetimeNoTz.d.ts +1 -0
  8. package/es/collection-manager/interfaces/email.d.ts +2 -0
  9. package/es/collection-manager/interfaces/input.d.ts +2 -0
  10. package/es/collection-manager/interfaces/integer.d.ts +2 -0
  11. package/es/collection-manager/interfaces/m2m.d.ts +1 -0
  12. package/es/collection-manager/interfaces/m2o.d.ts +1 -0
  13. package/es/collection-manager/interfaces/number.d.ts +2 -0
  14. package/es/collection-manager/interfaces/o2m.d.ts +1 -0
  15. package/es/collection-manager/interfaces/o2o.d.ts +3 -0
  16. package/es/collection-manager/interfaces/password.d.ts +2 -0
  17. package/es/collection-manager/interfaces/percent.d.ts +2 -0
  18. package/es/collection-manager/interfaces/phone.d.ts +2 -0
  19. package/es/collection-manager/interfaces/textarea.d.ts +2 -0
  20. package/es/collection-manager/interfaces/unixTimestamp.d.ts +2 -0
  21. package/es/collection-manager/interfaces/url.d.ts +2 -0
  22. package/es/collection-manager/interfaces/uuid.d.ts +2 -0
  23. package/es/data-source/collection-field-interface/CollectionFieldInterface.d.ts +4 -1
  24. package/es/index.css +1 -1
  25. package/es/index.mjs +12378 -10723
  26. package/es/modules/actions/edit-table/EditTableActionInitializer.d.ts +10 -0
  27. package/es/modules/actions/edit-table/editTableActionSettings.d.ts +10 -0
  28. package/es/schema-component/antd/edit-table/EditTable.d.ts +15 -0
  29. package/es/schema-component/antd/edit-table/EditTableAction.d.ts +46 -0
  30. package/es/schema-component/antd/edit-table/hooks/useColumnSettings.d.ts +26 -0
  31. package/es/schema-component/antd/edit-table/hooks/useTableColumnIntegration.d.ts +26 -0
  32. package/es/schema-component/antd/edit-table/index.d.ts +12 -0
  33. package/es/schema-component/antd/index.d.ts +1 -0
  34. package/es/schema-component/antd/upload/shared.d.ts +1 -1
  35. package/es/schema-initializer/components/assigned-field/AssignedField.d.ts +1 -1
  36. package/lib/index.css +1 -1
  37. package/lib/index.js +221 -91
  38. package/lib/locale/cron/zh-CN.json +33 -0
  39. package/lib/locale/cron/zh-TW.json +33 -0
  40. package/lib/locale/{de-DE.js → de-DE.json} +480 -472
  41. package/lib/locale/{en-US.js → en-US.json} +241 -233
  42. package/lib/locale/es-ES.json +824 -0
  43. package/lib/locale/fr-FR.json +844 -0
  44. package/lib/locale/{it-IT.js → it-IT.json} +363 -355
  45. package/lib/locale/ja-JP.json +1062 -0
  46. package/lib/locale/ko-KR.json +935 -0
  47. package/lib/locale/nl-NL.json +1072 -0
  48. package/lib/locale/pt-BR.json +804 -0
  49. package/lib/locale/ru-RU.json +633 -0
  50. package/lib/locale/tr-TR.json +631 -0
  51. package/lib/locale/uk-UA.json +847 -0
  52. package/lib/locale/zh-CN.json +1191 -0
  53. package/lib/locale/zh-TW.json +938 -0
  54. package/package.json +5 -5
  55. package/lib/locale/cron/zh-CN.js +0 -33
  56. package/lib/locale/cron/zh-TW.js +0 -33
  57. package/lib/locale/es-ES.js +0 -816
  58. package/lib/locale/fr-FR.js +0 -836
  59. package/lib/locale/ja-JP.js +0 -1054
  60. package/lib/locale/ko-KR.js +0 -927
  61. package/lib/locale/nl-NL.js +0 -1064
  62. package/lib/locale/pt-BR.js +0 -796
  63. package/lib/locale/ru-RU.js +0 -625
  64. package/lib/locale/tr-TR.js +0 -623
  65. package/lib/locale/uk-UA.js +0 -839
  66. package/lib/locale/zh-CN.js +0 -1145
  67. package/lib/locale/zh-TW.js +0 -930
@@ -6,6 +6,7 @@
6
6
  * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
+ import { Form } from '@formily/core';
9
10
  import { ChangeEvent } from 'react';
10
11
  import { NavigateFunction } from 'react-router-dom';
11
12
  import { CollectionOptions } from '../../collection-manager';
@@ -26,7 +27,7 @@ export declare function getFormValues({ filterByTk, field, form, fieldNames, get
26
27
  resource: any;
27
28
  actionFields: any[];
28
29
  }): any;
29
- export declare function useCollectValuesToSubmit(): () => Promise<any>;
30
+ export declare function useCollectValuesToSubmit(f?: Form): () => Promise<any>;
30
31
  export declare const useCreateActionProps: () => {
31
32
  onClick(): Promise<void>;
32
33
  };
@@ -80,6 +81,32 @@ export declare const useBulkDestroyActionProps: () => {
80
81
  export declare const useRefreshActionProps: () => {
81
82
  onClick(): Promise<void>;
82
83
  };
84
+ export interface ColumnInfo {
85
+ key: string;
86
+ title: string;
87
+ dataIndex: string;
88
+ visible: boolean;
89
+ fixed?: 'left' | 'right' | false;
90
+ width?: number;
91
+ order?: number;
92
+ }
93
+ /**
94
+ * Get table columns from schema
95
+ */
96
+ export declare const useTableColumns: () => ColumnInfo[];
97
+ export declare const useEditTableActionProps: () => {
98
+ columns: (ColumnInfo | {
99
+ visible: any;
100
+ order: any;
101
+ width: any;
102
+ fixed: any;
103
+ key: string;
104
+ title: string;
105
+ dataIndex: string;
106
+ })[];
107
+ onSubmit: (values: any) => void;
108
+ onReset: () => void;
109
+ };
83
110
  export declare const useDetailsPaginationProps: () => {
84
111
  simple: boolean;
85
112
  current: any;
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ interface ValidationRule {
11
+ key: string;
12
+ name: string;
13
+ args?: {
14
+ [key: string]: any;
15
+ };
16
+ paramsType?: string;
17
+ }
18
+ interface ValidationData {
19
+ type: string;
20
+ rules: ValidationRule[];
21
+ }
22
+ interface FieldValidationProps {
23
+ value?: ValidationData;
24
+ onChange?: (value: ValidationData) => void;
25
+ type?: string;
26
+ availableValidationOptions?: string[];
27
+ excludeValidationOptions?: string[];
28
+ isAssociation?: boolean;
29
+ }
30
+ export declare const FieldValidation: React.MemoExoticComponent<import("@formily/react").ReactFC<FieldValidationProps>>;
31
+ export {};
@@ -15,3 +15,4 @@ export declare const SourceKey: React.MemoExoticComponent<import("@formily/react
15
15
  export declare const TargetKey: React.MemoExoticComponent<import("@formily/react").ReactFC<Omit<any, "ref">>>;
16
16
  export declare const ForeignKey: React.MemoExoticComponent<import("@formily/react").ReactFC<Omit<any, "ref">>>;
17
17
  export declare const ThroughCollection: React.MemoExoticComponent<import("@formily/react").ReactFC<Omit<any, "ref">>>;
18
+ export { FieldValidation } from './FieldValidation';
@@ -0,0 +1,383 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export declare const REQUIRED_RULE_KEY = "required";
10
+ export declare const DEFAULT_VALIDATION_RULES: {
11
+ key: string;
12
+ label: string;
13
+ hasValue: boolean;
14
+ params: any[];
15
+ }[];
16
+ export declare const FIELDS_VALIDATION_OPTIONS: {
17
+ readonly string: readonly [...{
18
+ key: string;
19
+ label: string;
20
+ hasValue: boolean;
21
+ params: any[];
22
+ }[], {
23
+ readonly key: "max";
24
+ readonly label: "Max length";
25
+ readonly hasValue: true;
26
+ readonly params: readonly [{
27
+ readonly key: "limit";
28
+ readonly label: "Limit";
29
+ readonly componentType: "inputNumber";
30
+ readonly required: true;
31
+ }];
32
+ }, {
33
+ readonly key: "min";
34
+ readonly label: "Min length";
35
+ readonly hasValue: true;
36
+ readonly params: readonly [{
37
+ readonly key: "limit";
38
+ readonly label: "Limit";
39
+ readonly componentType: "inputNumber";
40
+ readonly required: true;
41
+ }];
42
+ }, {
43
+ readonly key: "pattern";
44
+ readonly label: "Pattern";
45
+ readonly hasValue: true;
46
+ readonly params: readonly [{
47
+ readonly key: "regex";
48
+ readonly label: "Regular Expression";
49
+ readonly componentType: "text";
50
+ readonly required: true;
51
+ }];
52
+ }, {
53
+ readonly key: "email";
54
+ readonly label: "Email";
55
+ readonly hasValue: true;
56
+ readonly params: readonly [{
57
+ readonly key: "allowFullyQualified";
58
+ readonly label: "Domains ending with a . character are permitted";
59
+ readonly componentType: "checkbox";
60
+ }, {
61
+ readonly key: "allowUnicode";
62
+ readonly label: "Unicode characters are permitted";
63
+ readonly componentType: "checkbox";
64
+ }, {
65
+ readonly key: "ignoreLength";
66
+ readonly label: "Ignore invalid email length errors";
67
+ readonly componentType: "checkbox";
68
+ }, {
69
+ readonly key: "minDomainSegments";
70
+ readonly label: "Min Domain Segments";
71
+ readonly componentType: "inputNumber";
72
+ readonly defaultValue: 2;
73
+ }, {
74
+ readonly key: "maxDomainSegments";
75
+ readonly label: "Max Domain Segments";
76
+ readonly componentType: "inputNumber";
77
+ }, {
78
+ readonly key: "tlds";
79
+ readonly label: "tlds";
80
+ readonly componentType: "radio";
81
+ readonly defaultValue: "iana";
82
+ readonly options: readonly [{
83
+ readonly label: "IANA registry";
84
+ readonly value: "iana";
85
+ }, {
86
+ readonly label: "Disable validation";
87
+ readonly value: "disable";
88
+ }, {
89
+ readonly label: "Allow list";
90
+ readonly value: "allow";
91
+ readonly componentType: "text";
92
+ }, {
93
+ readonly label: "Deny list";
94
+ readonly value: "deny";
95
+ readonly componentType: "text";
96
+ }];
97
+ }];
98
+ readonly paramsType: "object";
99
+ }, {
100
+ readonly key: "uuid";
101
+ readonly label: "UUID";
102
+ readonly hasValue: true;
103
+ readonly params: readonly [{
104
+ readonly key: "version";
105
+ readonly label: "Version";
106
+ readonly componentType: "multipleSelect";
107
+ readonly options: readonly [{
108
+ readonly label: "uuidv1";
109
+ readonly value: "uuidv1";
110
+ }, {
111
+ readonly label: "uuidv2";
112
+ readonly value: "uuidv2";
113
+ }, {
114
+ readonly label: "uuidv3";
115
+ readonly value: "uuidv3";
116
+ }, {
117
+ readonly label: "uuidv4";
118
+ readonly value: "uuidv4";
119
+ }, {
120
+ readonly label: "uuidv5";
121
+ readonly value: "uuidv5";
122
+ }, {
123
+ readonly label: "uuidv6";
124
+ readonly value: "uuidv6";
125
+ }, {
126
+ readonly label: "uuidv7";
127
+ readonly value: "uuidv7";
128
+ }, {
129
+ readonly label: "uuidv8";
130
+ readonly value: "uuidv8";
131
+ }];
132
+ }, {
133
+ readonly key: "separator";
134
+ readonly label: "Separator";
135
+ readonly componentType: "singleSelect";
136
+ readonly options: readonly [{
137
+ readonly label: "Must use `-` and `:`";
138
+ readonly value: true;
139
+ }, {
140
+ readonly label: "No allow `-` and `:`";
141
+ readonly value: false;
142
+ }, {
143
+ readonly label: "Only use `-`";
144
+ readonly value: "-";
145
+ }, {
146
+ readonly label: "Only use `_`";
147
+ readonly value: "_";
148
+ }, {
149
+ readonly label: "Only use `.`";
150
+ readonly value: ".";
151
+ }];
152
+ }];
153
+ readonly paramsType: "object";
154
+ }, {
155
+ readonly key: "hex";
156
+ readonly label: "Hex";
157
+ readonly hasValue: true;
158
+ readonly params: readonly [{
159
+ readonly key: "prefix";
160
+ readonly label: "Prefix";
161
+ readonly componentType: "singleSelect";
162
+ readonly options: readonly [{
163
+ readonly label: "Must use prefix";
164
+ readonly value: true;
165
+ }, {
166
+ readonly label: "No use prefix";
167
+ readonly value: false;
168
+ }, {
169
+ readonly label: "Optional prefix";
170
+ readonly value: "optional";
171
+ }];
172
+ }, {
173
+ readonly key: "byteAligned";
174
+ readonly label: "Byte Aligned";
175
+ readonly componentType: "checkbox";
176
+ }];
177
+ }, {
178
+ readonly key: "length";
179
+ readonly label: "Length";
180
+ readonly hasValue: true;
181
+ readonly params: readonly [{
182
+ readonly key: "limit";
183
+ readonly label: "Limit";
184
+ readonly componentType: "inputNumber";
185
+ readonly required: true;
186
+ }];
187
+ }, {
188
+ readonly key: "uri";
189
+ readonly label: "URI";
190
+ readonly hasValue: true;
191
+ readonly params: readonly [{
192
+ readonly key: "scheme";
193
+ readonly label: "Scheme";
194
+ readonly componentType: "multipleSelect";
195
+ readonly options: readonly [{
196
+ readonly label: "http";
197
+ readonly value: "http";
198
+ }, {
199
+ readonly label: "https";
200
+ readonly value: "https";
201
+ }, {
202
+ readonly label: "ftp";
203
+ readonly value: "ftp";
204
+ }, {
205
+ readonly label: "file";
206
+ readonly value: "file";
207
+ }, {
208
+ readonly label: "ws";
209
+ readonly value: "ws";
210
+ }, {
211
+ readonly label: "wss";
212
+ readonly value: "wss";
213
+ }];
214
+ }, {
215
+ readonly key: "allowRelative";
216
+ readonly label: "Allow relative URIs";
217
+ readonly componentType: "checkbox";
218
+ }, {
219
+ readonly key: "relativeOnly";
220
+ readonly label: "Restrict only relative URIs";
221
+ readonly componentType: "checkbox";
222
+ }, {
223
+ readonly key: "allowQuerySquareBrackets";
224
+ readonly label: "Allows unencoded square brackets inside the query string";
225
+ readonly componentType: "checkbox";
226
+ }, {
227
+ readonly key: "encodeUri";
228
+ readonly label: "Attempts to encode the URI using encodeURI before validating it again";
229
+ readonly componentType: "checkbox";
230
+ }];
231
+ readonly paramsType: "object";
232
+ }];
233
+ readonly number: readonly [...{
234
+ key: string;
235
+ label: string;
236
+ hasValue: boolean;
237
+ params: any[];
238
+ }[], {
239
+ readonly key: "greater";
240
+ readonly label: "Greater than";
241
+ readonly hasValue: true;
242
+ readonly params: readonly [{
243
+ readonly key: "limit";
244
+ readonly label: "Limit";
245
+ readonly componentType: "inputNumber";
246
+ readonly required: true;
247
+ }];
248
+ }, {
249
+ readonly key: "less";
250
+ readonly label: "Less than";
251
+ readonly hasValue: true;
252
+ readonly params: readonly [{
253
+ readonly key: "limit";
254
+ readonly label: "Limit";
255
+ readonly componentType: "inputNumber";
256
+ readonly required: true;
257
+ }];
258
+ }, {
259
+ readonly key: "max";
260
+ readonly label: "Max value";
261
+ readonly hasValue: true;
262
+ readonly params: readonly [{
263
+ readonly key: "limit";
264
+ readonly label: "Limit";
265
+ readonly componentType: "inputNumber";
266
+ readonly required: true;
267
+ }];
268
+ }, {
269
+ readonly key: "min";
270
+ readonly label: "Min value";
271
+ readonly hasValue: true;
272
+ readonly params: readonly [{
273
+ readonly key: "limit";
274
+ readonly label: "Limit";
275
+ readonly componentType: "inputNumber";
276
+ readonly required: true;
277
+ }];
278
+ }, {
279
+ readonly key: "multiple";
280
+ readonly label: "Multiple";
281
+ readonly hasValue: true;
282
+ readonly params: readonly [{
283
+ readonly key: "base";
284
+ readonly label: "Base";
285
+ readonly componentType: "inputNumber";
286
+ readonly required: true;
287
+ }];
288
+ }, {
289
+ readonly key: "integer";
290
+ readonly label: "Integer";
291
+ readonly hasValue: false;
292
+ readonly params: readonly [];
293
+ }, {
294
+ readonly key: "precision";
295
+ readonly label: "Precision";
296
+ readonly hasValue: true;
297
+ readonly params: readonly [{
298
+ readonly key: "limit";
299
+ readonly label: "Limit";
300
+ readonly componentType: "inputNumber";
301
+ readonly required: true;
302
+ }];
303
+ }, {
304
+ readonly key: "unsafe";
305
+ readonly label: "Unsafe integer";
306
+ readonly hasValue: false;
307
+ readonly params: readonly [];
308
+ }];
309
+ readonly date: readonly [...{
310
+ key: string;
311
+ label: string;
312
+ hasValue: boolean;
313
+ params: any[];
314
+ }[], {
315
+ readonly key: "greater";
316
+ readonly label: "Greater than";
317
+ readonly hasValue: true;
318
+ readonly params: readonly [{
319
+ readonly key: "date";
320
+ readonly label: "Date";
321
+ readonly componentType: "datePicker";
322
+ readonly required: true;
323
+ }];
324
+ }, {
325
+ readonly key: "less";
326
+ readonly label: "Less than";
327
+ readonly hasValue: true;
328
+ readonly params: readonly [{
329
+ readonly key: "date";
330
+ readonly label: "Date";
331
+ readonly componentType: "datePicker";
332
+ readonly required: true;
333
+ }];
334
+ }, {
335
+ readonly key: "max";
336
+ readonly label: "Max value";
337
+ readonly hasValue: true;
338
+ readonly params: readonly [{
339
+ readonly key: "date";
340
+ readonly label: "Date";
341
+ readonly componentType: "datePicker";
342
+ readonly required: true;
343
+ }];
344
+ }, {
345
+ readonly key: "min";
346
+ readonly label: "Min value";
347
+ readonly hasValue: true;
348
+ readonly params: readonly [{
349
+ readonly key: "date";
350
+ readonly label: "Date";
351
+ readonly componentType: "datePicker";
352
+ readonly required: true;
353
+ }];
354
+ }, {
355
+ readonly key: "timestamp";
356
+ readonly label: "Timestamp";
357
+ readonly hasValue: true;
358
+ readonly params: readonly [{
359
+ readonly key: "type";
360
+ readonly label: "Type";
361
+ readonly componentType: "singleSelect";
362
+ readonly options: readonly [{
363
+ readonly label: "JavaScript";
364
+ readonly value: "javascript";
365
+ }, {
366
+ readonly label: "Unix";
367
+ readonly value: "unix";
368
+ }];
369
+ readonly defaultValue: "javascript";
370
+ }];
371
+ }];
372
+ readonly object: readonly {
373
+ key: string;
374
+ label: string;
375
+ hasValue: boolean;
376
+ params: any[];
377
+ }[];
378
+ };
379
+ export type ValidationKeysByType = {
380
+ [K in keyof typeof FIELDS_VALIDATION_OPTIONS]: (typeof FIELDS_VALIDATION_OPTIONS)[K][number]['key'];
381
+ };
382
+ export type ValidationType = keyof typeof FIELDS_VALIDATION_OPTIONS;
383
+ export type AvailableValidationOption<T extends ValidationType = ValidationType> = ValidationKeysByType[T];
@@ -27,6 +27,7 @@ export declare class DateFieldInterface extends CollectionFieldInterface {
27
27
  };
28
28
  availableTypes: string[];
29
29
  hasDefaultValue: boolean;
30
+ validationType: string;
30
31
  properties: {
31
32
  'uiSchema.x-component-props.showTime': {
32
33
  type: string;
@@ -30,6 +30,7 @@ export declare class DatetimeFieldInterface extends CollectionFieldInterface {
30
30
  };
31
31
  availableTypes: string[];
32
32
  hasDefaultValue: boolean;
33
+ validationType: string;
33
34
  properties: {
34
35
  defaultToCurrentTime: {
35
36
  type: string;
@@ -30,6 +30,7 @@ export declare class DatetimeNoTzFieldInterface extends CollectionFieldInterface
30
30
  };
31
31
  availableTypes: string[];
32
32
  hasDefaultValue: boolean;
33
+ validationType: string;
33
34
  properties: {
34
35
  defaultToCurrentTime: {
35
36
  type: string;
@@ -25,6 +25,8 @@ export declare class EmailFieldInterface extends CollectionFieldInterface {
25
25
  };
26
26
  availableTypes: string[];
27
27
  hasDefaultValue: boolean;
28
+ validationType: string;
29
+ availableValidationOptions: string[];
28
30
  properties: {
29
31
  unique: {
30
32
  type: string;
@@ -25,6 +25,8 @@ export declare class InputFieldInterface extends CollectionFieldInterface {
25
25
  };
26
26
  availableTypes: string[];
27
27
  hasDefaultValue: boolean;
28
+ validationType: string;
29
+ availableValidationOptions: string[];
28
30
  properties: {
29
31
  trim: {
30
32
  type: string;
@@ -28,6 +28,8 @@ export declare class IntegerFieldInterface extends CollectionFieldInterface {
28
28
  };
29
29
  availableTypes: string[];
30
30
  hasDefaultValue: boolean;
31
+ validationType: string;
32
+ excludeValidationOptions: string[];
31
33
  properties: {
32
34
  layout: {
33
35
  type: string;
@@ -36,6 +36,7 @@ export declare class M2MFieldInterface extends CollectionFieldInterface {
36
36
  };
37
37
  };
38
38
  availableTypes: string[];
39
+ validationType: string;
39
40
  schemaInitialize(schema: ISchema, { field, readPretty, block, targetCollection }: {
40
41
  field: any;
41
42
  readPretty: any;
@@ -16,6 +16,7 @@ export declare class M2OFieldInterface extends CollectionFieldInterface {
16
16
  title: string;
17
17
  description: string;
18
18
  isAssociation: boolean;
19
+ validationType: string;
19
20
  default: {
20
21
  type: string;
21
22
  uiSchema: {
@@ -27,6 +27,8 @@ export declare class NumberFieldInterface extends CollectionFieldInterface {
27
27
  };
28
28
  availableTypes: string[];
29
29
  hasDefaultValue: boolean;
30
+ validationType: string;
31
+ excludeValidationOptions: string[];
30
32
  properties: {
31
33
  unique: {
32
34
  type: string;
@@ -16,6 +16,7 @@ export declare class O2MFieldInterface extends CollectionFieldInterface {
16
16
  title: string;
17
17
  description: string;
18
18
  isAssociation: boolean;
19
+ validationType: string;
19
20
  default: {
20
21
  type: string;
21
22
  uiSchema: {
@@ -16,6 +16,7 @@ export declare class O2OFieldInterface extends CollectionFieldInterface {
16
16
  title: string;
17
17
  description: string;
18
18
  isAssociation: boolean;
19
+ validationType: string;
19
20
  default: {
20
21
  type: string;
21
22
  uiSchema: {
@@ -215,6 +216,7 @@ export declare class OHOFieldInterface extends CollectionFieldInterface {
215
216
  title: string;
216
217
  description: string;
217
218
  isAssociation: boolean;
219
+ validationType: string;
218
220
  default: {
219
221
  type: string;
220
222
  uiSchema: {
@@ -419,6 +421,7 @@ export declare class OBOFieldInterface extends CollectionFieldInterface {
419
421
  title: string;
420
422
  description: string;
421
423
  isAssociation: boolean;
424
+ validationType: string;
422
425
  default: {
423
426
  type: string;
424
427
  uiSchema: {
@@ -23,6 +23,8 @@ export declare class PasswordFieldInterface extends CollectionFieldInterface {
23
23
  };
24
24
  availableTypes: string[];
25
25
  hasDefaultValue: boolean;
26
+ validationType: string;
27
+ availableValidationOptions: string[];
26
28
  properties: {
27
29
  unique: {
28
30
  type: string;
@@ -35,6 +35,8 @@ export declare class PercentFieldInterface extends CollectionFieldInterface {
35
35
  }): void;
36
36
  availableTypes: string[];
37
37
  hasDefaultValue: boolean;
38
+ validationType: string;
39
+ excludeValidationOptions: string[];
38
40
  properties: {
39
41
  unique: {
40
42
  type: string;
@@ -25,6 +25,8 @@ export declare class PhoneFieldInterface extends CollectionFieldInterface {
25
25
  };
26
26
  };
27
27
  availableTypes: string[];
28
+ validationType: string;
29
+ availableValidationOptions: string[];
28
30
  hasDefaultValue: boolean;
29
31
  properties: {
30
32
  unique: {
@@ -23,6 +23,8 @@ export declare class TextareaFieldInterface extends CollectionFieldInterface {
23
23
  };
24
24
  };
25
25
  availableTypes: string[];
26
+ validationType: string;
27
+ availableValidationOptions: string[];
26
28
  hasDefaultValue: boolean;
27
29
  titleUsable: boolean;
28
30
  properties: {
@@ -30,6 +30,8 @@ export declare class UnixTimestampFieldInterface extends CollectionFieldInterfac
30
30
  };
31
31
  availableTypes: string[];
32
32
  hasDefaultValue: boolean;
33
+ validationType: string;
34
+ availableValidationOptions: string[];
33
35
  properties: {
34
36
  accuracy: {
35
37
  type: string;
@@ -29,6 +29,8 @@ export declare class UrlFieldInterface extends CollectionFieldInterface {
29
29
  schemaInitialize(schema: ISchema, { block }: {
30
30
  block: any;
31
31
  }): void;
32
+ validationType: string;
33
+ availableValidationOptions: string[];
32
34
  properties: {
33
35
  'uiSchema.title': {
34
36
  type: string;
@@ -24,6 +24,8 @@ export declare class UUIDFieldInterface extends CollectionFieldInterface {
24
24
  };
25
25
  };
26
26
  availableTypes: string[];
27
+ validationType: string;
28
+ availableValidationOptions: string[];
27
29
  properties: {
28
30
  'uiSchema.title': {
29
31
  type: string;
@@ -38,6 +38,9 @@ export declare abstract class CollectionFieldInterface {
38
38
  isAssociation?: boolean;
39
39
  operators?: any[];
40
40
  properties?: any;
41
+ validationType?: string;
42
+ availableValidationOptions: string[];
43
+ excludeValidationOptions?: string[];
41
44
  /**
42
45
  * - 如果该值为空,则在 Filter 组件中该字段会被过滤掉
43
46
  * - 如果该值为空,则不会在变量列表中看到该字段
@@ -59,7 +62,7 @@ export declare abstract class CollectionFieldInterface {
59
62
  schemaInitialize?(schema: ISchema, data: any): void;
60
63
  hidden?: boolean;
61
64
  addComponentOption(componentOption: CollectionFieldInterfaceComponentOption): void;
62
- getConfigureFormProperties(): any;
65
+ getConfigureFormProperties(collectionInfo?: any): Record<string, ISchema>;
63
66
  getDefaultValueProperty(): {
64
67
  defaultValue: any;
65
68
  };