@measured/puck 0.14.0-canary.de9c2c4 → 0.14.0-canary.deff7a7

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,6 +17,11 @@ declare function DropZone(props: DropZoneProps): react_jsx_runtime.JSX.Element;
17
17
  type WithPuckProps<Props> = Props & {
18
18
  id: string;
19
19
  };
20
+ type FieldOption = {
21
+ label: string;
22
+ value: string | number | boolean;
23
+ };
24
+ type FieldOptions = Array<FieldOption> | ReadonlyArray<FieldOption>;
20
25
  type BaseField = {
21
26
  label?: string;
22
27
  };
@@ -33,17 +38,11 @@ type TextareaField = BaseField & {
33
38
  };
34
39
  type SelectField = BaseField & {
35
40
  type: "select";
36
- options: {
37
- label: string;
38
- value: string | number | boolean;
39
- }[];
41
+ options: FieldOptions;
40
42
  };
41
43
  type RadioField = BaseField & {
42
44
  type: "radio";
43
- options: {
44
- label: string;
45
- value: string | number | boolean;
46
- }[];
45
+ options: FieldOptions;
47
46
  };
48
47
  type ArrayField<Props extends {
49
48
  [key: string]: any;
@@ -56,6 +55,8 @@ type ArrayField<Props extends {
56
55
  };
57
56
  defaultItemProps?: Props[0];
58
57
  getItemSummary?: (item: Props[0], index?: number) => string;
58
+ max?: number;
59
+ min?: number;
59
60
  };
60
61
  type ObjectField<Props extends {
61
62
  [key: string]: any;
@@ -92,11 +93,15 @@ type ExternalField<Props extends {
92
93
  placeholder?: string;
93
94
  fetchList: (params: {
94
95
  query: string;
96
+ filters: Record<string, any>;
95
97
  }) => Promise<any[] | null>;
96
98
  mapProp?: (value: any) => Props;
99
+ mapRow?: (value: any) => Record<string, string | number>;
97
100
  getItemSummary: (item: Props, index?: number) => string;
98
101
  showSearch?: boolean;
99
102
  initialQuery?: string;
103
+ filterFields?: Record<string, Field>;
104
+ initialFilters?: Record<string, any>;
100
105
  };
101
106
  type CustomField<Props extends {
102
107
  [key: string]: any;