@overmap-ai/core 1.0.33-revamp-forms-builder.19 → 1.0.33-revamp-forms-builder.21
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.
- package/dist/forms/fields/BaseField/BaseField.d.ts +1 -1
- package/dist/forms/fields/BaseField/hooks.d.ts +1 -0
- package/dist/forms/fields/BooleanField/BooleanField.d.ts +1 -1
- package/dist/forms/fields/BooleanField/BooleanInput.d.ts +1 -1
- package/dist/forms/fields/CustomField/CustomField.d.ts +1 -1
- package/dist/forms/fields/DateField/DateField.d.ts +1 -1
- package/dist/forms/fields/DateField/DateInput.d.ts +1 -1
- package/dist/forms/fields/MultiStringField/MultiStringField.d.ts +1 -1
- package/dist/forms/fields/MultiStringField/MultiStringInput.d.ts +1 -1
- package/dist/forms/fields/NumberField/NumberField.d.ts +1 -1
- package/dist/forms/fields/NumberField/NumberInput.d.ts +1 -1
- package/dist/forms/fields/SelectField/MultiSelectField.d.ts +1 -1
- package/dist/forms/fields/SelectField/MultiSelectInput.d.ts +1 -1
- package/dist/forms/fields/SelectField/SelectField.d.ts +1 -1
- package/dist/forms/fields/SelectField/SelectInput.d.ts +1 -1
- package/dist/forms/fields/StringOrTextFields/StringField/StringField.d.ts +1 -1
- package/dist/forms/fields/StringOrTextFields/StringField/StringInput.d.ts +1 -1
- package/dist/forms/fields/StringOrTextFields/TextField/TextField.d.ts +1 -1
- package/dist/forms/fields/StringOrTextFields/TextField/TextInput.d.ts +1 -1
- package/dist/forms/fields/UploadField/UploadField.d.ts +1 -1
- package/dist/forms/fields/UploadField/UploadInput.d.ts +1 -1
- package/dist/forms/fields/constants.d.ts +10 -10
- package/dist/forms/fields/typings.d.ts +1 -0
- package/dist/overmap-core.js +99 -33
- package/dist/overmap-core.js.map +1 -1
- package/dist/overmap-core.umd.cjs +99 -33
- package/dist/overmap-core.umd.cjs.map +1 -1
- package/dist/store/slices/userFormSlice.d.ts +1 -1
- package/dist/style.css +7 -3
- package/package.json +1 -1
|
@@ -16,8 +16,8 @@ export declare abstract class BaseFormElement<TIdentifier extends FieldTypeIdent
|
|
|
16
16
|
}
|
|
17
17
|
export declare const emptyBaseField: {
|
|
18
18
|
label: string;
|
|
19
|
-
required: boolean;
|
|
20
19
|
description: string;
|
|
20
|
+
required: boolean;
|
|
21
21
|
};
|
|
22
22
|
export interface FieldCreationSchemaObject {
|
|
23
23
|
field: AnyField;
|
|
@@ -8,6 +8,7 @@ export declare const useFormikInput: <TField extends AnyField>(props: ComponentP
|
|
|
8
8
|
readonly inputId: string;
|
|
9
9
|
readonly labelId: string;
|
|
10
10
|
readonly label: string;
|
|
11
|
+
readonly showInputOnly: boolean | undefined;
|
|
11
12
|
readonly fieldProps: import("formik").FieldInputProps<ValueOfField<TField>>;
|
|
12
13
|
readonly helpers: import("formik").FieldHelperProps<ValueOfField<TField>>;
|
|
13
14
|
readonly field: TField;
|
|
@@ -6,8 +6,8 @@ import { ISerializedField, SerializedBooleanField } from "../../typings";
|
|
|
6
6
|
export declare const emptyBooleanField: {
|
|
7
7
|
type: string;
|
|
8
8
|
label: string;
|
|
9
|
-
required: boolean;
|
|
10
9
|
description: string;
|
|
10
|
+
required: boolean;
|
|
11
11
|
};
|
|
12
12
|
export declare class BooleanField extends BaseField<boolean, "boolean"> {
|
|
13
13
|
static readonly fieldTypeName = "Checkbox";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { BooleanField } from "./BooleanField";
|
|
3
3
|
import { ComponentProps } from "../typings";
|
|
4
|
-
export declare const BooleanInput: import("react").
|
|
4
|
+
export declare const BooleanInput: import("react").MemoExoticComponent<(props: ComponentProps<BooleanField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -6,8 +6,8 @@ export type CustomFieldOptions<TValue> = ChildFieldOptions<TValue>;
|
|
|
6
6
|
export declare const emptyCustomField: {
|
|
7
7
|
type: string;
|
|
8
8
|
label: string;
|
|
9
|
-
required: boolean;
|
|
10
9
|
description: string;
|
|
10
|
+
required: boolean;
|
|
11
11
|
};
|
|
12
12
|
export declare class CustomField<TValue extends FieldValue,
|
|
13
13
|
/** The options passed to constructor */
|
|
@@ -6,8 +6,8 @@ import { ISerializedField, SerializedDateField } from "../../typings";
|
|
|
6
6
|
export declare const emptyDateField: {
|
|
7
7
|
type: string;
|
|
8
8
|
label: string;
|
|
9
|
-
required: boolean;
|
|
10
9
|
description: string;
|
|
10
|
+
required: boolean;
|
|
11
11
|
};
|
|
12
12
|
export declare class DateField extends BaseField<string, "date"> {
|
|
13
13
|
static readonly fieldTypeName = "Date";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { DateField } from "./DateField";
|
|
3
3
|
import { ComponentProps } from "../typings";
|
|
4
|
-
export declare const DateInput: import("react").
|
|
4
|
+
export declare const DateInput: import("react").MemoExoticComponent<(props: ComponentProps<DateField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -12,8 +12,8 @@ export declare const emptyMultiStringField: {
|
|
|
12
12
|
minimum_length: number;
|
|
13
13
|
maximum_length: null;
|
|
14
14
|
label: string;
|
|
15
|
-
required: boolean;
|
|
16
15
|
description: string;
|
|
16
|
+
required: boolean;
|
|
17
17
|
};
|
|
18
18
|
/**
|
|
19
19
|
* A field that lets the user input multiple strings. Each string must be unique. Useful for things like:
|
|
@@ -5,4 +5,4 @@ import { MultiStringField } from "./MultiStringField";
|
|
|
5
5
|
* Allows the user to create an array of unique strings and customize the order.
|
|
6
6
|
* User to generate options for the Select field.
|
|
7
7
|
*/
|
|
8
|
-
export declare const MultiStringInput: import("react").
|
|
8
|
+
export declare const MultiStringInput: import("react").MemoExoticComponent<(props: ComponentProps<MultiStringField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -11,8 +11,8 @@ export declare const emptyNumberField: {
|
|
|
11
11
|
maximum: number;
|
|
12
12
|
integers: boolean;
|
|
13
13
|
label: string;
|
|
14
|
-
required: boolean;
|
|
15
14
|
description: string;
|
|
15
|
+
required: boolean;
|
|
16
16
|
};
|
|
17
17
|
export interface NumberFieldOptions extends ChildFieldOptions<NumberFieldValue> {
|
|
18
18
|
maximum?: number;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentProps } from "../typings";
|
|
3
3
|
import { NumberField } from "./NumberField";
|
|
4
|
-
export declare const NumberInput: import("react").
|
|
4
|
+
export declare const NumberInput: import("react").MemoExoticComponent<(props: ComponentProps<NumberField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -11,8 +11,8 @@ export declare const emptyMultiSelectField: {
|
|
|
11
11
|
type: string;
|
|
12
12
|
options: never[];
|
|
13
13
|
label: string;
|
|
14
|
-
required: boolean;
|
|
15
14
|
description: string;
|
|
15
|
+
required: boolean;
|
|
16
16
|
};
|
|
17
17
|
export declare class MultiSelectField extends BaseSelectField<SelectFieldOptionValue[], "multi-select"> {
|
|
18
18
|
static readonly fieldTypeName = "Multi-select";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentProps } from "../typings";
|
|
3
3
|
import { MultiSelectField } from "./MultiSelectField";
|
|
4
|
-
export declare const MultiSelectInput: import("react").
|
|
4
|
+
export declare const MultiSelectInput: import("react").MemoExoticComponent<(props: ComponentProps<MultiSelectField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -11,8 +11,8 @@ export declare const emptySelectField: {
|
|
|
11
11
|
type: string;
|
|
12
12
|
options: never[];
|
|
13
13
|
label: string;
|
|
14
|
-
required: boolean;
|
|
15
14
|
description: string;
|
|
15
|
+
required: boolean;
|
|
16
16
|
};
|
|
17
17
|
export declare class SelectField extends BaseSelectField<SelectFieldOptionValue, "select"> {
|
|
18
18
|
static readonly fieldTypeName = "Dropdown";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { ComponentProps } from "../typings";
|
|
3
3
|
import { SelectField } from "./SelectField";
|
|
4
|
-
export declare const SelectInput: import("react").
|
|
4
|
+
export declare const SelectInput: import("react").MemoExoticComponent<(props: ComponentProps<SelectField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -11,8 +11,8 @@ export declare const emptyStringField: {
|
|
|
11
11
|
maximum_length: number;
|
|
12
12
|
input_type: string;
|
|
13
13
|
label: string;
|
|
14
|
-
required: boolean;
|
|
15
14
|
description: string;
|
|
15
|
+
required: boolean;
|
|
16
16
|
};
|
|
17
17
|
export declare class StringField extends StringOrTextField<"string"> {
|
|
18
18
|
static readonly fieldTypeName = "Short Text";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { StringField } from "./StringField";
|
|
3
3
|
import { ComponentProps } from "../../typings";
|
|
4
|
-
export declare const StringInput: import("react").
|
|
4
|
+
export declare const StringInput: import("react").MemoExoticComponent<(props: ComponentProps<StringField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -8,8 +8,8 @@ export declare const emptyTextField: {
|
|
|
8
8
|
type: string;
|
|
9
9
|
maximum_length: number;
|
|
10
10
|
label: string;
|
|
11
|
-
required: boolean;
|
|
12
11
|
description: string;
|
|
12
|
+
required: boolean;
|
|
13
13
|
};
|
|
14
14
|
export declare class TextField extends StringOrTextField<"text"> {
|
|
15
15
|
static readonly fieldTypeName = "Paragraph";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { TextField } from "./TextField";
|
|
3
3
|
import { ComponentProps } from "../../typings";
|
|
4
|
-
export declare const TextInput: import("react").
|
|
4
|
+
export declare const TextInput: import("react").MemoExoticComponent<(props: ComponentProps<TextField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -16,8 +16,8 @@ export declare const emptyUploadField: {
|
|
|
16
16
|
maximum_size: undefined;
|
|
17
17
|
maximum_files: number;
|
|
18
18
|
label: string;
|
|
19
|
-
required: boolean;
|
|
20
19
|
description: string;
|
|
20
|
+
required: boolean;
|
|
21
21
|
};
|
|
22
22
|
export declare class UploadField extends BaseField<File[], "upload"> {
|
|
23
23
|
static readonly fieldTypeName = "Upload";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { UploadField } from "./UploadField";
|
|
3
3
|
import { ComponentProps } from "../typings";
|
|
4
|
-
export declare const NumberInput: import("react").
|
|
4
|
+
export declare const NumberInput: import("react").MemoExoticComponent<(props: ComponentProps<UploadField>) => import("react/jsx-runtime").JSX.Element>;
|
|
@@ -22,8 +22,8 @@ export declare const FieldTypeToEmptyFieldMapping: {
|
|
|
22
22
|
readonly date: {
|
|
23
23
|
type: string;
|
|
24
24
|
label: string;
|
|
25
|
-
required: boolean;
|
|
26
25
|
description: string;
|
|
26
|
+
required: boolean;
|
|
27
27
|
};
|
|
28
28
|
readonly number: {
|
|
29
29
|
type: string;
|
|
@@ -31,42 +31,42 @@ export declare const FieldTypeToEmptyFieldMapping: {
|
|
|
31
31
|
maximum: number;
|
|
32
32
|
integers: boolean;
|
|
33
33
|
label: string;
|
|
34
|
-
required: boolean;
|
|
35
34
|
description: string;
|
|
35
|
+
required: boolean;
|
|
36
36
|
};
|
|
37
37
|
readonly boolean: {
|
|
38
38
|
type: string;
|
|
39
39
|
label: string;
|
|
40
|
-
required: boolean;
|
|
41
40
|
description: string;
|
|
41
|
+
required: boolean;
|
|
42
42
|
};
|
|
43
43
|
readonly select: {
|
|
44
44
|
type: string;
|
|
45
45
|
options: never[];
|
|
46
46
|
label: string;
|
|
47
|
-
required: boolean;
|
|
48
47
|
description: string;
|
|
48
|
+
required: boolean;
|
|
49
49
|
};
|
|
50
50
|
readonly string: {
|
|
51
51
|
type: string;
|
|
52
52
|
maximum_length: number;
|
|
53
53
|
input_type: string;
|
|
54
54
|
label: string;
|
|
55
|
-
required: boolean;
|
|
56
55
|
description: string;
|
|
56
|
+
required: boolean;
|
|
57
57
|
};
|
|
58
58
|
readonly text: {
|
|
59
59
|
type: string;
|
|
60
60
|
maximum_length: number;
|
|
61
61
|
label: string;
|
|
62
|
-
required: boolean;
|
|
63
62
|
description: string;
|
|
63
|
+
required: boolean;
|
|
64
64
|
};
|
|
65
65
|
readonly custom: {
|
|
66
66
|
type: string;
|
|
67
67
|
label: string;
|
|
68
|
-
required: boolean;
|
|
69
68
|
description: string;
|
|
69
|
+
required: boolean;
|
|
70
70
|
};
|
|
71
71
|
readonly upload: {
|
|
72
72
|
type: string;
|
|
@@ -74,22 +74,22 @@ export declare const FieldTypeToEmptyFieldMapping: {
|
|
|
74
74
|
maximum_size: undefined;
|
|
75
75
|
maximum_files: number;
|
|
76
76
|
label: string;
|
|
77
|
-
required: boolean;
|
|
78
77
|
description: string;
|
|
78
|
+
required: boolean;
|
|
79
79
|
};
|
|
80
80
|
readonly "multi-string": {
|
|
81
81
|
type: string;
|
|
82
82
|
minimum_length: number;
|
|
83
83
|
maximum_length: null;
|
|
84
84
|
label: string;
|
|
85
|
-
required: boolean;
|
|
86
85
|
description: string;
|
|
86
|
+
required: boolean;
|
|
87
87
|
};
|
|
88
88
|
readonly "multi-select": {
|
|
89
89
|
type: string;
|
|
90
90
|
options: never[];
|
|
91
91
|
label: string;
|
|
92
|
-
required: boolean;
|
|
93
92
|
description: string;
|
|
93
|
+
required: boolean;
|
|
94
94
|
};
|
|
95
95
|
};
|
|
@@ -20,6 +20,7 @@ export interface ComponentProps<TField extends BaseFormElement> extends Omit<HTM
|
|
|
20
20
|
field: TField;
|
|
21
21
|
formId: string;
|
|
22
22
|
size?: TextProps["size"];
|
|
23
|
+
showInputOnly?: boolean;
|
|
23
24
|
}
|
|
24
25
|
export type GetInputProps<TField extends BaseFormElement> = Omit<ComponentProps<TField>, "field">;
|
|
25
26
|
export type AnyField = BaseField<any>;
|
package/dist/overmap-core.js
CHANGED
|
@@ -6133,9 +6133,9 @@ class BaseFormElement {
|
|
|
6133
6133
|
}
|
|
6134
6134
|
}
|
|
6135
6135
|
const emptyBaseField = {
|
|
6136
|
-
label: "",
|
|
6137
|
-
|
|
6138
|
-
|
|
6136
|
+
label: "Question",
|
|
6137
|
+
description: "Optional description",
|
|
6138
|
+
required: false
|
|
6139
6139
|
};
|
|
6140
6140
|
class BaseField extends BaseFormElement {
|
|
6141
6141
|
constructor(options) {
|
|
@@ -6225,7 +6225,7 @@ const InputWithLabelAndHelpText = (props) => {
|
|
|
6225
6225
|
return /* @__PURE__ */ jsx(InputWithHelpText, { ...restProps, children });
|
|
6226
6226
|
};
|
|
6227
6227
|
const useFormikInput = (props) => {
|
|
6228
|
-
const { id, field, formId: formId2, size, ...rest } = props;
|
|
6228
|
+
const { id, field, formId: formId2, size, showInputOnly, ...rest } = props;
|
|
6229
6229
|
const [fieldProps, meta, helpers] = useField(field.getId());
|
|
6230
6230
|
const { touched } = meta;
|
|
6231
6231
|
const helpText = meta.error ?? field.description;
|
|
@@ -6259,6 +6259,7 @@ const useFormikInput = (props) => {
|
|
|
6259
6259
|
inputId,
|
|
6260
6260
|
labelId,
|
|
6261
6261
|
label,
|
|
6262
|
+
showInputOnly,
|
|
6262
6263
|
fieldProps: fieldPropsWithValidation,
|
|
6263
6264
|
helpers,
|
|
6264
6265
|
field
|
|
@@ -6267,8 +6268,11 @@ const useFormikInput = (props) => {
|
|
|
6267
6268
|
];
|
|
6268
6269
|
};
|
|
6269
6270
|
const truthyValues = [true, "true"];
|
|
6270
|
-
const BooleanInput = memo(
|
|
6271
|
-
const [{ inputId, labelId, size, severity,
|
|
6271
|
+
const BooleanInput = memo((props) => {
|
|
6272
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps }, rest] = useFormikInput(props);
|
|
6273
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
6274
|
+
helpText = showInputOnly ? null : helpText;
|
|
6275
|
+
label = showInputOnly ? "" : label;
|
|
6272
6276
|
const color = useSeverityColor(severity);
|
|
6273
6277
|
const value = truthyValues.includes(fieldProps.value);
|
|
6274
6278
|
return /* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText, severity, children: /* @__PURE__ */ jsx(
|
|
@@ -6298,6 +6302,7 @@ const BooleanInput = memo(function BooleanInput2(props) {
|
|
|
6298
6302
|
}
|
|
6299
6303
|
) });
|
|
6300
6304
|
});
|
|
6305
|
+
BooleanInput.displayName = "BooleanInput";
|
|
6301
6306
|
function _objectWithoutPropertiesLoose(source, excluded) {
|
|
6302
6307
|
if (source == null)
|
|
6303
6308
|
return {};
|
|
@@ -8149,8 +8154,11 @@ const Tabs = Object.assign({}, {
|
|
|
8149
8154
|
Trigger: TabsTrigger,
|
|
8150
8155
|
Content: TabsContent
|
|
8151
8156
|
});
|
|
8152
|
-
const NumberInput$1 = memo(
|
|
8153
|
-
const [{ inputId, labelId, size, severity,
|
|
8157
|
+
const NumberInput$1 = memo((props) => {
|
|
8158
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps, field }, rest] = useFormikInput(props);
|
|
8159
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
8160
|
+
helpText = showInputOnly ? null : helpText;
|
|
8161
|
+
label = showInputOnly ? "" : label;
|
|
8154
8162
|
const color = useSeverityColor(severity);
|
|
8155
8163
|
return /* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText, severity, children: /* @__PURE__ */ jsx(InputWithLabel, { size, severity, inputId, labelId, label, children: /* @__PURE__ */ jsx(
|
|
8156
8164
|
TextField$1.Input,
|
|
@@ -8159,6 +8167,7 @@ const NumberInput$1 = memo(function NumberInput2(props) {
|
|
|
8159
8167
|
...fieldProps,
|
|
8160
8168
|
type: "number",
|
|
8161
8169
|
id: inputId,
|
|
8170
|
+
placeholder: "Enter a number",
|
|
8162
8171
|
min: field.minimum,
|
|
8163
8172
|
max: field.maximum,
|
|
8164
8173
|
step: field.integers ? 1 : 0.1,
|
|
@@ -8166,6 +8175,7 @@ const NumberInput$1 = memo(function NumberInput2(props) {
|
|
|
8166
8175
|
}
|
|
8167
8176
|
) }) });
|
|
8168
8177
|
});
|
|
8178
|
+
NumberInput$1.displayName = "NumberInput";
|
|
8169
8179
|
const emptyNumberField = {
|
|
8170
8180
|
...emptyBaseField,
|
|
8171
8181
|
type: "number",
|
|
@@ -8296,12 +8306,16 @@ __publicField(_NumberField, "_validateMax", (path) => (value, allValues) => {
|
|
|
8296
8306
|
return null;
|
|
8297
8307
|
});
|
|
8298
8308
|
let NumberField = _NumberField;
|
|
8299
|
-
const DateInput = memo(
|
|
8300
|
-
const [{ inputId, labelId, size, severity,
|
|
8309
|
+
const DateInput = memo((props) => {
|
|
8310
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps }, rest] = useFormikInput(props);
|
|
8311
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
8312
|
+
helpText = showInputOnly ? null : helpText;
|
|
8313
|
+
label = showInputOnly ? "" : label;
|
|
8301
8314
|
const color = useSeverityColor(severity);
|
|
8302
8315
|
const value = fieldProps.value ? fieldProps.value.split("T")[0] : "";
|
|
8303
8316
|
return /* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText, severity, children: /* @__PURE__ */ jsx(InputWithLabel, { size, severity, inputId, labelId, label, children: /* @__PURE__ */ jsx(TextField$1.Input, { ...rest, ...fieldProps, type: "date", id: inputId, color, value }) }) });
|
|
8304
8317
|
});
|
|
8318
|
+
DateInput.displayName = "DateInput";
|
|
8305
8319
|
const emptyDateField = {
|
|
8306
8320
|
...emptyBaseField,
|
|
8307
8321
|
type: "date"
|
|
@@ -8442,10 +8456,23 @@ const styles$5 = {
|
|
|
8442
8456
|
clickableLinkContainer,
|
|
8443
8457
|
TextFieldInputCopy
|
|
8444
8458
|
};
|
|
8445
|
-
const StringInput = memo(
|
|
8446
|
-
const [{ inputId, labelId, size, severity,
|
|
8459
|
+
const StringInput = memo((props) => {
|
|
8460
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps, field }, rest] = useFormikInput(props);
|
|
8461
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
8462
|
+
helpText = showInputOnly ? null : helpText;
|
|
8463
|
+
label = showInputOnly ? "" : label;
|
|
8447
8464
|
const color = useSeverityColor(severity);
|
|
8448
|
-
return /* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText, severity, children: /* @__PURE__ */ jsx(InputWithLabel, { size, severity, inputId, labelId, label, children: !rest.disabled ? /* @__PURE__ */ jsx(
|
|
8465
|
+
return /* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText, severity, children: /* @__PURE__ */ jsx(InputWithLabel, { size, severity, inputId, labelId, label, children: !rest.disabled ? /* @__PURE__ */ jsx(
|
|
8466
|
+
TextField$1.Input,
|
|
8467
|
+
{
|
|
8468
|
+
...rest,
|
|
8469
|
+
...fieldProps,
|
|
8470
|
+
type: field.inputType,
|
|
8471
|
+
id: inputId,
|
|
8472
|
+
placeholder: "Enter a short description",
|
|
8473
|
+
color
|
|
8474
|
+
}
|
|
8475
|
+
) : /* @__PURE__ */ jsxs(TextField$1.Root, { className: styles$5.clickableLinkContainer, children: [
|
|
8449
8476
|
/* @__PURE__ */ jsx(
|
|
8450
8477
|
"div",
|
|
8451
8478
|
{
|
|
@@ -8468,6 +8495,7 @@ const StringInput = memo(function StringInput2(props) {
|
|
|
8468
8495
|
/* @__PURE__ */ jsx("div", { className: "rt-TextFieldChrome" })
|
|
8469
8496
|
] }) }) });
|
|
8470
8497
|
});
|
|
8498
|
+
StringInput.displayName = "StringInput";
|
|
8471
8499
|
const emptyStringField = {
|
|
8472
8500
|
...emptyBaseField,
|
|
8473
8501
|
type: "string",
|
|
@@ -8500,10 +8528,24 @@ __publicField(_StringField, "fieldTypeName", "Short Text");
|
|
|
8500
8528
|
__publicField(_StringField, "fieldTypeDescription", "Short text fields can hold up to 500 characters on a single line.");
|
|
8501
8529
|
__publicField(_StringField, "Icon", InputIcon);
|
|
8502
8530
|
let StringField = _StringField;
|
|
8503
|
-
const TextInput = memo(
|
|
8504
|
-
const [{ inputId, labelId, size, severity,
|
|
8505
|
-
|
|
8531
|
+
const TextInput = memo((props) => {
|
|
8532
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps }, rest] = useFormikInput(props);
|
|
8533
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
8534
|
+
helpText = showInputOnly ? null : helpText;
|
|
8535
|
+
label = showInputOnly ? "" : label;
|
|
8536
|
+
return /* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText, severity, children: /* @__PURE__ */ jsx(InputWithLabel, { size, severity, inputId, labelId, label, children: /* @__PURE__ */ jsx(
|
|
8537
|
+
TextArea,
|
|
8538
|
+
{
|
|
8539
|
+
...rest,
|
|
8540
|
+
...fieldProps,
|
|
8541
|
+
resize: "vertical",
|
|
8542
|
+
id: inputId,
|
|
8543
|
+
placeholder: "Enter a description",
|
|
8544
|
+
severity
|
|
8545
|
+
}
|
|
8546
|
+
) }) });
|
|
8506
8547
|
});
|
|
8548
|
+
TextInput.displayName = "TextInput";
|
|
8507
8549
|
const emptyTextField = {
|
|
8508
8550
|
...emptyBaseField,
|
|
8509
8551
|
type: "text",
|
|
@@ -8532,9 +8574,12 @@ __publicField(_TextField, "fieldTypeName", "Paragraph");
|
|
|
8532
8574
|
__publicField(_TextField, "fieldTypeDescription", "Paragraph fields can hold up to 5000 characters and can have multiple lines.");
|
|
8533
8575
|
__publicField(_TextField, "Icon", RowsIcon);
|
|
8534
8576
|
let TextField = _TextField;
|
|
8535
|
-
const SelectInput = memo(
|
|
8536
|
-
const [{ inputId, labelId, size, severity,
|
|
8577
|
+
const SelectInput = memo((props) => {
|
|
8578
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps, field }, rest] = useFormikInput(props);
|
|
8537
8579
|
const { onChange, onBlur } = fieldProps;
|
|
8580
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
8581
|
+
helpText = showInputOnly ? null : helpText;
|
|
8582
|
+
label = showInputOnly ? "" : label;
|
|
8538
8583
|
const options = useMemo(
|
|
8539
8584
|
() => field.options.map((option) => ({ value: option.value, itemContent: option.label })),
|
|
8540
8585
|
[field.options]
|
|
@@ -8559,6 +8604,7 @@ const SelectInput = memo(function SelectInput2(props) {
|
|
|
8559
8604
|
}
|
|
8560
8605
|
) }) });
|
|
8561
8606
|
});
|
|
8607
|
+
SelectInput.displayName = "SelectInput";
|
|
8562
8608
|
const emptySection = (id = "", fields = []) => ({
|
|
8563
8609
|
type: "section",
|
|
8564
8610
|
fields,
|
|
@@ -8723,8 +8769,11 @@ const useFieldReordering = () => {
|
|
|
8723
8769
|
);
|
|
8724
8770
|
return { reorderSection, reorderField };
|
|
8725
8771
|
};
|
|
8726
|
-
const MultiStringInput = memo(
|
|
8727
|
-
const [{ inputId, labelId, size, severity,
|
|
8772
|
+
const MultiStringInput = memo((props) => {
|
|
8773
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps }, rest] = useFormikInput(props);
|
|
8774
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
8775
|
+
helpText = showInputOnly ? null : helpText;
|
|
8776
|
+
label = showInputOnly ? "" : label;
|
|
8728
8777
|
const color = useSeverityColor(severity);
|
|
8729
8778
|
const value = useMemo(
|
|
8730
8779
|
() => Array.isArray(fieldProps.value) ? fieldProps.value : [],
|
|
@@ -8865,6 +8914,7 @@ const MultiStringInput = memo(function MultiStringInput2(props) {
|
|
|
8865
8914
|
] }) })
|
|
8866
8915
|
] }) });
|
|
8867
8916
|
});
|
|
8917
|
+
MultiStringInput.displayName = "MultiStringInput";
|
|
8868
8918
|
const emptyMultiStringField = {
|
|
8869
8919
|
...emptyBaseField,
|
|
8870
8920
|
type: "multi-string",
|
|
@@ -8999,9 +9049,12 @@ const parseValueToArray = (value) => {
|
|
|
8999
9049
|
return value;
|
|
9000
9050
|
return [value];
|
|
9001
9051
|
};
|
|
9002
|
-
const MultiSelectInput = memo(
|
|
9003
|
-
const [{ inputId, labelId, size, severity,
|
|
9052
|
+
const MultiSelectInput = memo((props) => {
|
|
9053
|
+
const [{ inputId, labelId, size, severity, showInputOnly, fieldProps, field }, rest] = useFormikInput(props);
|
|
9004
9054
|
const { onChange, onBlur } = fieldProps;
|
|
9055
|
+
let [{ helpText, label }] = useFormikInput(props);
|
|
9056
|
+
helpText = showInputOnly ? null : helpText;
|
|
9057
|
+
label = showInputOnly ? "" : label;
|
|
9005
9058
|
const value = useMemo(() => parseValueToArray(fieldProps.value), [fieldProps.value]);
|
|
9006
9059
|
const handleChange = useCallback(
|
|
9007
9060
|
(value2) => {
|
|
@@ -9024,6 +9077,7 @@ const MultiSelectInput = memo(function MultiSelectInput2(props) {
|
|
|
9024
9077
|
}
|
|
9025
9078
|
) }) });
|
|
9026
9079
|
});
|
|
9080
|
+
MultiSelectInput.displayName = "MultiSelectInput";
|
|
9027
9081
|
const emptyMultiSelectField = {
|
|
9028
9082
|
...emptyBaseField,
|
|
9029
9083
|
type: "multi-select",
|
|
@@ -9115,21 +9169,25 @@ const convertBytesToLargestUnit = (bytes) => {
|
|
|
9115
9169
|
});
|
|
9116
9170
|
return formatter.format(sizeInUnit);
|
|
9117
9171
|
};
|
|
9118
|
-
const NumberInput = memo(
|
|
9172
|
+
const NumberInput = memo((props) => {
|
|
9119
9173
|
var _a2;
|
|
9120
|
-
const [{ inputId, labelId, size, severity, helpText,
|
|
9174
|
+
const [{ inputId, labelId, size, severity, helpText, showInputOnly, fieldProps, field }, rest] = useFormikInput(props);
|
|
9121
9175
|
const { onChange } = fieldProps;
|
|
9176
|
+
let [{ label }] = useFormikInput(props);
|
|
9177
|
+
label = showInputOnly ? "" : label;
|
|
9122
9178
|
const color = useSeverityColor(severity);
|
|
9123
9179
|
const input = useRef(null);
|
|
9124
9180
|
const { value } = fieldProps;
|
|
9125
9181
|
const updatedHelpText = useMemo(() => {
|
|
9182
|
+
if (showInputOnly)
|
|
9183
|
+
return null;
|
|
9126
9184
|
if (helpText)
|
|
9127
9185
|
return helpText;
|
|
9128
9186
|
if (field.maxFileSize) {
|
|
9129
9187
|
return `Maximum file size: ${field.maxFileSize}MB`;
|
|
9130
9188
|
}
|
|
9131
9189
|
return null;
|
|
9132
|
-
}, [field.maxFileSize, helpText]);
|
|
9190
|
+
}, [field.maxFileSize, helpText, showInputOnly]);
|
|
9133
9191
|
const handleClick = useCallback(() => {
|
|
9134
9192
|
var _a3;
|
|
9135
9193
|
(_a3 = input.current) == null ? void 0 : _a3.click();
|
|
@@ -9148,7 +9206,7 @@ const NumberInput = memo(function NumberInput22(props) {
|
|
|
9148
9206
|
const buttonText = field.maxFiles > 1 ? multipleButtonText : singleButtonText;
|
|
9149
9207
|
return /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: "2", children: [
|
|
9150
9208
|
/* @__PURE__ */ jsx(InputWithLabelAndHelpText, { helpText: updatedHelpText, severity, children: /* @__PURE__ */ jsxs(InputWithLabel, { size, severity, inputId, labelId, label, children: [
|
|
9151
|
-
/* @__PURE__ */ jsx(Flex, { direction: "row", gap: "2", children: /* @__PURE__ */ jsx(Box, { width: "max-content", asChild: true, children: /* @__PURE__ */ jsxs(Button, { ...rest, onClick: handleClick, children: [
|
|
9209
|
+
/* @__PURE__ */ jsx(Flex, { direction: "row", gap: "2", children: /* @__PURE__ */ jsx(Box, { width: "max-content", asChild: true, children: /* @__PURE__ */ jsxs(Button, { ...rest, variant: "soft", onClick: handleClick, children: [
|
|
9152
9210
|
/* @__PURE__ */ jsx(UploadIcon, {}),
|
|
9153
9211
|
" ",
|
|
9154
9212
|
buttonText
|
|
@@ -9183,7 +9241,9 @@ const NumberInput = memo(function NumberInput22(props) {
|
|
|
9183
9241
|
)) })
|
|
9184
9242
|
] });
|
|
9185
9243
|
});
|
|
9186
|
-
|
|
9244
|
+
NumberInput.displayName = "NumberInput";
|
|
9245
|
+
const DisplayFile = memo((props) => {
|
|
9246
|
+
const { file, field, onRemove, disabled } = props;
|
|
9187
9247
|
const [resolvedFile, setResolvedFile] = useState(null);
|
|
9188
9248
|
const error2 = useMemo(() => resolvedFile && field.getError([resolvedFile]), [field, resolvedFile]);
|
|
9189
9249
|
const { url, name, size } = useMemo(() => {
|
|
@@ -9231,6 +9291,7 @@ const DisplayFile = memo(function DisplayFile2({ file, field, onRemove, disabled
|
|
|
9231
9291
|
url && /* @__PURE__ */ jsx("img", { className: styles$4.previewImage, src: url, alt: name })
|
|
9232
9292
|
] }) });
|
|
9233
9293
|
});
|
|
9294
|
+
DisplayFile.displayName = "DisplayFile";
|
|
9234
9295
|
const emptyUploadField = {
|
|
9235
9296
|
...emptyBaseField,
|
|
9236
9297
|
type: "upload",
|
|
@@ -10213,13 +10274,15 @@ const FieldActions = memo((props) => {
|
|
|
10213
10274
|
] });
|
|
10214
10275
|
});
|
|
10215
10276
|
FieldActions.displayName = "FieldActions";
|
|
10216
|
-
const popoverInputsContainer = "
|
|
10217
|
-
const typeBadge = "
|
|
10218
|
-
const description = "
|
|
10277
|
+
const popoverInputsContainer = "_popoverInputsContainer_18pn8_1";
|
|
10278
|
+
const typeBadge = "_typeBadge_18pn8_5";
|
|
10279
|
+
const description = "_description_18pn8_10";
|
|
10280
|
+
const previewInput = "_previewInput_18pn8_14";
|
|
10219
10281
|
const styles = {
|
|
10220
10282
|
popoverInputsContainer,
|
|
10221
10283
|
typeBadge,
|
|
10222
|
-
description
|
|
10284
|
+
description,
|
|
10285
|
+
previewInput
|
|
10223
10286
|
};
|
|
10224
10287
|
const FieldSettingsPopover = memo((props) => {
|
|
10225
10288
|
const { popoverInputs, hasError } = props;
|
|
@@ -10344,8 +10407,10 @@ const FieldBuilder = memo((props) => {
|
|
|
10344
10407
|
const error2 = get(errors, fieldCls === FieldSection ? `${parentPath}.${index2}.condition` : field.getId());
|
|
10345
10408
|
return error2 && (typeof error2 !== "object" || hasKeys(error2));
|
|
10346
10409
|
});
|
|
10410
|
+
const deserializedField = useMemo(() => deserialize(initial), [initial]);
|
|
10411
|
+
const previewInput2 = useFieldInput(deserializedField, { formId, disabled: true, showInputOnly: true });
|
|
10347
10412
|
return /* @__PURE__ */ jsxs(Flex, { align: "center", grow: "1", children: [
|
|
10348
|
-
/* @__PURE__ */ jsxs(Flex, { direction: "column", children: [
|
|
10413
|
+
/* @__PURE__ */ jsxs(Flex, { direction: "column", grow: "1", children: [
|
|
10349
10414
|
fieldCls === FieldSection && /* @__PURE__ */ jsxs(Flex, { direction: "column", gap: "1", children: [
|
|
10350
10415
|
directlyShownFields.length > 0 && directlyShownInputs,
|
|
10351
10416
|
/* @__PURE__ */ jsxs(Flex, { align: "center", gap: "2", children: [
|
|
@@ -10401,6 +10466,7 @@ const FieldBuilder = memo((props) => {
|
|
|
10401
10466
|
)
|
|
10402
10467
|
}
|
|
10403
10468
|
),
|
|
10469
|
+
fieldCls !== FieldSection && /* @__PURE__ */ jsx("div", { className: styles.previewInput, children: previewInput2 }),
|
|
10404
10470
|
/* @__PURE__ */ jsx(
|
|
10405
10471
|
PatchField,
|
|
10406
10472
|
{
|
|
@@ -10795,7 +10861,7 @@ const BasicFieldSection = memo((props) => {
|
|
|
10795
10861
|
/* @__PURE__ */ jsx(Text, { size: "4", children: field.label }),
|
|
10796
10862
|
/* @__PURE__ */ jsx(Badge, { className: styles$1.typeBadge, children: /* @__PURE__ */ jsxs(Text, { children: [
|
|
10797
10863
|
field.fields.length,
|
|
10798
|
-
"
|
|
10864
|
+
" fields"
|
|
10799
10865
|
] }) })
|
|
10800
10866
|
] }),
|
|
10801
10867
|
/* @__PURE__ */ jsx(Flex, { direction: "row", gap: "2", children: field.fields.map((child) => {
|