@overmap-ai/forms 1.0.32-react-flow-david-fixes.41 → 1.0.33-toast-migration.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 (115) hide show
  1. package/dist/form/Observable/index.d.ts +1 -0
  2. package/dist/form/UUIDFile/UUIDFile.d.ts +5 -0
  3. package/dist/form/UUIDFile/index.d.ts +1 -0
  4. package/dist/form/{fields/UploadField → UUIDPromise}/UUIDPromise.d.ts +3 -3
  5. package/dist/form/UUIDPromise/index.d.ts +2 -0
  6. package/dist/form/UUIDPromise/utils.d.ts +4 -0
  7. package/dist/form/builder/Root.d.ts +1 -1
  8. package/dist/form/builder/components/CreateFieldDropdownMenu.d.ts +8 -0
  9. package/dist/form/builder/components/FieldBuilder.d.ts +2 -2
  10. package/dist/form/builder/components/FieldBuilderWithActions.d.ts +9 -0
  11. package/dist/form/builder/components/index.d.ts +2 -1
  12. package/dist/form/builder/hooks.d.ts +1 -1
  13. package/dist/form/builder/list/FieldSectionWithActions.d.ts +1 -1
  14. package/dist/form/builder/utils.d.ts +2 -2
  15. package/dist/form/components/DisplayFile.d.ts +9 -0
  16. package/dist/form/components/index.d.ts +1 -0
  17. package/dist/form/conditions/BaseCondition/BaseCondition.d.ts +7 -8
  18. package/dist/form/conditions/BaseCondition/typings.d.ts +4 -4
  19. package/dist/form/conditions/BooleanFieldCondition/BooleanFieldCondition.d.ts +4 -6
  20. package/dist/form/conditions/CheckboxListFieldCondition/CheckboxListFieldCondition.d.ts +4 -6
  21. package/dist/form/conditions/ConditionManager/ConditionManager.d.ts +15 -0
  22. package/dist/form/conditions/ConditionManager/hooks.d.ts +4 -0
  23. package/dist/form/conditions/ConditionManager/index.d.ts +3 -0
  24. package/dist/form/conditions/ConditionManager/typings.d.ts +2 -0
  25. package/dist/form/conditions/DateFieldCondition/DateFieldCondition.d.ts +5 -7
  26. package/dist/form/conditions/MultiSelectFieldCondition/MultiSelectFieldCondition.d.ts +4 -14
  27. package/dist/form/conditions/MultiStringFieldCondition/MultiStringFieldCondition.d.ts +4 -6
  28. package/dist/form/conditions/NumberFieldCondition/NumberFieldCondition.d.ts +4 -17
  29. package/dist/form/conditions/OTPFieldCondition/OTPFieldCondition.d.ts +4 -6
  30. package/dist/form/conditions/PassFailFieldCondition/PassFailFieldCondition.d.ts +18 -0
  31. package/dist/form/conditions/PassFailFieldCondition/PassFailFieldConditionCell.d.ts +6 -0
  32. package/dist/form/conditions/PassFailFieldCondition/index.d.ts +3 -0
  33. package/dist/form/conditions/PassFailFieldCondition/typings.d.ts +4 -0
  34. package/dist/form/conditions/RadioFieldCondition/RadioFieldCondition.d.ts +4 -6
  35. package/dist/form/conditions/RatingFieldCondition/RatingFieldCondition.d.ts +21 -0
  36. package/dist/form/conditions/RatingFieldCondition/RatingFieldConditionCell.d.ts +6 -0
  37. package/dist/form/conditions/RatingFieldCondition/index.d.ts +3 -0
  38. package/dist/form/conditions/RatingFieldCondition/typings.d.ts +4 -0
  39. package/dist/form/conditions/ScanFieldCondition/ScanFieldCondition.d.ts +4 -6
  40. package/dist/form/conditions/SelectFieldCondition/SelectFieldCondition.d.ts +4 -6
  41. package/dist/form/conditions/StringFieldCondition/StringFieldCondition.d.ts +4 -6
  42. package/dist/form/conditions/TextFieldCondition/TextFieldCondition.d.ts +4 -6
  43. package/dist/form/conditions/UploadFieldCondition/UploadFieldCondition.d.ts +8 -8
  44. package/dist/form/conditions/constants.d.ts +32 -0
  45. package/dist/form/conditions/index.d.ts +3 -0
  46. package/dist/form/conditions/typings.d.ts +6 -3
  47. package/dist/form/conditions/utils.d.ts +4 -5
  48. package/dist/form/fields/BaseField/BaseField.d.ts +6 -7
  49. package/dist/form/fields/BaseField/typings.d.ts +3 -4
  50. package/dist/form/fields/BaseFormElement/BaseFormElement.d.ts +9 -9
  51. package/dist/form/fields/BaseFormElement/typings.d.ts +3 -3
  52. package/dist/form/fields/BaseOptionsField/BaseOptionsField.d.ts +7 -7
  53. package/dist/form/fields/BaseOptionsField/typings.d.ts +2 -2
  54. package/dist/form/fields/BaseStringField/BaseStringField.d.ts +4 -4
  55. package/dist/form/fields/BaseStringField/typings.d.ts +1 -1
  56. package/dist/form/fields/BooleanField/BooleanField.d.ts +3 -4
  57. package/dist/form/fields/BooleanField/BooleanInput.d.ts +1 -1
  58. package/dist/form/fields/CheckboxListField/CheckboxListField.d.ts +2 -2
  59. package/dist/form/fields/DateField/DateField.d.ts +2 -2
  60. package/dist/form/fields/DateField/DateInput.d.ts +1 -1
  61. package/dist/form/fields/FieldSection/FieldSection.d.ts +6 -8
  62. package/dist/form/fields/FieldSection/typings.d.ts +2 -2
  63. package/dist/form/fields/MultiSelectField/MultiSelectField.d.ts +2 -2
  64. package/dist/form/fields/MultiSelectField/MultiSelectInput.d.ts +1 -1
  65. package/dist/form/fields/MultiStringField/MultiStringField.d.ts +2 -2
  66. package/dist/form/fields/MultiStringField/MultiStringInput.d.ts +1 -1
  67. package/dist/form/fields/NumberField/NumberField.d.ts +2 -2
  68. package/dist/form/fields/NumberField/NumberInput.d.ts +1 -1
  69. package/dist/form/fields/OneTimePasswordField/OTPField.d.ts +2 -2
  70. package/dist/form/fields/OneTimePasswordField/typings.d.ts +1 -1
  71. package/dist/form/fields/PassFailField/PassFailField.d.ts +30 -0
  72. package/dist/form/fields/PassFailField/PassFailInput.d.ts +7 -0
  73. package/dist/form/fields/PassFailField/constants.d.ts +7 -0
  74. package/dist/form/fields/PassFailField/index.d.ts +5 -0
  75. package/dist/form/fields/PassFailField/typings.d.ts +17 -0
  76. package/dist/form/fields/PassFailField/utils.d.ts +7 -0
  77. package/dist/form/fields/RadioField/RadioField.d.ts +2 -2
  78. package/dist/form/fields/RadioField/RadioInput.d.ts +1 -1
  79. package/dist/form/fields/RatingField/RatingField.d.ts +32 -0
  80. package/dist/form/fields/RatingField/RatingInput.d.ts +7 -0
  81. package/dist/form/fields/RatingField/index.d.ts +3 -0
  82. package/dist/form/fields/RatingField/typings.d.ts +4 -0
  83. package/dist/form/fields/ScanField/ScanField.d.ts +2 -2
  84. package/dist/form/fields/ScanField/ScanInput.d.ts +1 -1
  85. package/dist/form/fields/SelectField/SelectField.d.ts +2 -2
  86. package/dist/form/fields/SelectField/SelectInput.d.ts +1 -1
  87. package/dist/form/fields/StringField/StringField.d.ts +1 -1
  88. package/dist/form/fields/StringField/StringInput.d.ts +1 -1
  89. package/dist/form/fields/TextField/TextField.d.ts +1 -1
  90. package/dist/form/fields/TextField/TextInput.d.ts +1 -1
  91. package/dist/form/fields/UploadField/UploadField.d.ts +11 -10
  92. package/dist/form/fields/UploadField/UploadInput.d.ts +1 -1
  93. package/dist/form/fields/UploadField/index.d.ts +0 -1
  94. package/dist/form/fields/UploadField/utils.d.ts +0 -3
  95. package/dist/form/fields/components/InputWithLabel.d.ts +1 -1
  96. package/dist/form/fields/constants.d.ts +7 -3
  97. package/dist/form/fields/hooks.d.ts +1 -1
  98. package/dist/form/fields/index.d.ts +2 -0
  99. package/dist/form/fields/typings.d.ts +14 -16
  100. package/dist/form/fields/utils.d.ts +7 -2
  101. package/dist/form/index.d.ts +3 -0
  102. package/dist/form/modifiers/file.d.ts +3 -2
  103. package/dist/form/modifiers/index.d.ts +1 -0
  104. package/dist/form/modifiers/passFailStatus.d.ts +6 -0
  105. package/dist/form/modifiers/utils.d.ts +1 -1
  106. package/dist/form/schema/FieldSchema.d.ts +7 -6
  107. package/dist/form/typings.d.ts +6 -2
  108. package/dist/form/utils.d.ts +5 -11
  109. package/dist/forms.js +2185 -742
  110. package/dist/forms.js.map +1 -0
  111. package/dist/forms.umd.cjs +2183 -740
  112. package/dist/forms.umd.cjs.map +1 -0
  113. package/package.json +37 -51
  114. package/dist/form/builder/components/FieldWithActions.d.ts +0 -10
  115. /package/dist/form/{observable → Observable}/Observable.d.ts +0 -0
@@ -1,8 +1,8 @@
1
1
  import { ReactNode } from 'react';
2
+ import { SerializedScanField } from './typings';
2
3
  import { BaseField, FieldOptions } from '../BaseField';
3
4
  import { FieldRenderProps } from '../BaseFormElement';
4
- import { SerializedScanField } from './typings';
5
- export interface ScanFieldOptions extends FieldOptions<string> {
5
+ export interface ScanFieldOptions extends FieldOptions {
6
6
  }
7
7
  export declare class ScanField extends BaseField<"qr", string, string, ScanField> {
8
8
  readonly type = "qr";
@@ -1,5 +1,5 @@
1
- import { FieldRenderProps } from '../BaseFormElement';
2
1
  import { ScanField } from './ScanField';
2
+ import { FieldRenderProps } from '../BaseFormElement';
3
3
  interface ScanInputProps extends FieldRenderProps {
4
4
  field: ScanField;
5
5
  }
@@ -1,8 +1,8 @@
1
1
  import { ReactNode } from 'react';
2
+ import { SerializedSelectField } from './typings';
2
3
  import { FieldRenderProps } from '../BaseFormElement';
3
4
  import { BaseOptionsField, BaseOptionsFieldOptions } from '../BaseOptionsField';
4
- import { SerializedSelectField } from './typings';
5
- export type SelectFieldOptions = BaseOptionsFieldOptions<string | null> & {
5
+ export type SelectFieldOptions = BaseOptionsFieldOptions & {
6
6
  placeholder?: string;
7
7
  };
8
8
  export declare class SelectField extends BaseOptionsField<"select", string | null, string | null, SelectField> {
@@ -1,5 +1,5 @@
1
- import { FieldRenderProps } from '../BaseFormElement';
2
1
  import { SelectField } from './SelectField';
2
+ import { FieldRenderProps } from '../BaseFormElement';
3
3
  interface SelectInputProps extends FieldRenderProps {
4
4
  field: SelectField;
5
5
  }
@@ -1,7 +1,7 @@
1
1
  import { ReactNode } from 'react';
2
+ import { SerializedStringField } from './typings';
2
3
  import { FieldRenderProps } from '../BaseFormElement';
3
4
  import { BaseStringField, BaseStringFieldOptions } from '../BaseStringField';
4
- import { SerializedStringField } from './typings';
5
5
  export interface StringFieldOptions extends BaseStringFieldOptions {
6
6
  }
7
7
  export declare class StringField extends BaseStringField<"string", StringField> {
@@ -1,5 +1,5 @@
1
- import { FieldRenderProps } from '../BaseFormElement';
2
1
  import { StringField } from './StringField';
2
+ import { FieldRenderProps } from '../BaseFormElement';
3
3
  interface StringInputProps extends FieldRenderProps {
4
4
  field: StringField;
5
5
  }
@@ -1,7 +1,7 @@
1
1
  import { ReactNode } from 'react';
2
+ import { SerializedTextField } from './typings';
2
3
  import { FieldRenderProps } from '../BaseFormElement';
3
4
  import { BaseStringField, BaseStringFieldOptions } from '../BaseStringField';
4
- import { SerializedTextField } from './typings';
5
5
  export type TextFieldOptions = BaseStringFieldOptions;
6
6
  export declare class TextField extends BaseStringField<"text", TextField> {
7
7
  readonly type = "text";
@@ -1,5 +1,5 @@
1
- import { FieldRenderProps } from '../BaseFormElement';
2
1
  import { TextField } from './TextField';
2
+ import { FieldRenderProps } from '../BaseFormElement';
3
3
  interface TextInputProps extends FieldRenderProps {
4
4
  field: TextField;
5
5
  }
@@ -1,16 +1,17 @@
1
1
  import { ReactNode } from 'react';
2
+ import { SerializedUploadField } from './typings';
3
+ import { UUIDFile } from '../../UUIDFile';
4
+ import { UUIDPromise } from '../../UUIDPromise';
2
5
  import { BaseField, FieldOptions, FieldValidator } from '../BaseField';
3
6
  import { FieldRenderProps } from '../BaseFormElement';
4
7
  import { MultiSelectField } from '../MultiSelectField';
5
8
  import { NumberField } from '../NumberField';
6
- import { SerializedUploadField } from './typings';
7
- import { UUIDPromise } from './UUIDPromise';
8
- export interface UploadFieldOptions extends FieldOptions<(UUIDPromise<File> | File)[]> {
9
+ export interface UploadFieldOptions extends FieldOptions {
9
10
  extensions?: string[];
10
11
  maximum_size?: number | string;
11
12
  maximum_files?: number | string;
12
13
  }
13
- export declare class UploadField extends BaseField<"upload", (UUIDPromise<File> | File)[], never[], UploadField> {
14
+ export declare class UploadField extends BaseField<"upload", (UUIDPromise<UUIDFile> | UUIDFile)[], never[], UploadField> {
14
15
  readonly type = "upload";
15
16
  static readonly fieldTypeName = "Upload";
16
17
  static readonly fieldTypeDescription = "Allows a file to be uploaded.";
@@ -26,17 +27,17 @@ export declare class UploadField extends BaseField<"upload", (UUIDPromise<File>
26
27
  field: MultiSelectField;
27
28
  showDirectly: boolean;
28
29
  })[];
29
- getFieldValidators(): FieldValidator<(UUIDPromise<File> | File)[]>[];
30
+ getFieldValidators(): FieldValidator<(UUIDPromise<UUIDFile> | UUIDFile)[]>[];
30
31
  serialize(): SerializedUploadField;
31
32
  getOptions(): UploadFieldOptions;
32
33
  duplicate(identifier: string): UploadField;
33
34
  setOptions(options: Partial<UploadFieldOptions>): void;
34
35
  static deserialize(data: SerializedUploadField): UploadField;
35
- serializeValue(_value: (UUIDPromise<File> | File)[]): never[];
36
- deserializeValue(_value: never[]): (UUIDPromise<File> | File)[];
36
+ serializeValue(_value: (UUIDPromise<UUIDFile> | UUIDFile)[]): never[];
37
+ deserializeValue(_value: never[]): (UUIDPromise<UUIDFile> | UUIDFile)[];
37
38
  render(props: FieldRenderProps): ReactNode;
38
39
  isSerializedValueValid(value: unknown): value is never[];
39
- isValueValid(value: unknown): value is (UUIDPromise<File> | File)[];
40
- areValuesEqual(value1: (UUIDPromise<File> | File)[], value2: (UUIDPromise<File> | File)[]): boolean;
41
- blankValue(): (UUIDPromise<File> | File)[];
40
+ isValueValid(value: unknown): value is (UUIDPromise<UUIDFile> | UUIDFile)[];
41
+ areValuesEqual(value1: (UUIDPromise<UUIDFile> | UUIDFile)[], value2: (UUIDPromise<UUIDFile> | UUIDFile)[]): boolean;
42
+ blankValue(): (UUIDPromise<UUIDFile> | UUIDFile)[];
42
43
  }
@@ -1,5 +1,5 @@
1
- import { FieldRenderProps } from '../BaseFormElement';
2
1
  import { UploadField } from './UploadField';
2
+ import { FieldRenderProps } from '../BaseFormElement';
3
3
  interface UploadInputProps extends FieldRenderProps {
4
4
  field: UploadField;
5
5
  }
@@ -1,4 +1,3 @@
1
1
  export * from './typings';
2
2
  export * from './UploadField';
3
3
  export * from './UploadInput';
4
- export * from './UUIDPromise';
@@ -1,4 +1 @@
1
- import { UUIDPromise } from './UUIDPromise';
2
1
  export declare const convertBytesToLargestUnit: (bytes: number) => string;
3
- export declare function areFilesEqual(file1: File, file2: File): boolean;
4
- export declare function separateFilesFromPromises(filesOrPromises: (UUIDPromise<File> | File)[]): [File[], UUIDPromise<File>[]];
@@ -11,4 +11,4 @@ export interface InputWithLabelProps {
11
11
  children: ReactNode;
12
12
  className?: string;
13
13
  }
14
- export declare const InputWithLabel: (props: InputWithLabelProps) => import("react/jsx-runtime").JSX.Element;
14
+ export declare const InputWithLabel: import('react').MemoExoticComponent<(props: InputWithLabelProps) => import("react/jsx-runtime").JSX.Element>;
@@ -1,4 +1,5 @@
1
- import { IconType } from '@overmap-ai/blocks';
1
+ import { IconComponent } from '@overmap-ai/blocks';
2
+ import { FieldType } from './typings';
2
3
  import { BooleanField } from './BooleanField';
3
4
  import { CheckboxListField } from './CheckboxListField';
4
5
  import { DateField } from './DateField';
@@ -6,12 +7,13 @@ import { MultiSelectField } from './MultiSelectField';
6
7
  import { MultiStringField } from './MultiStringField';
7
8
  import { NumberField } from './NumberField';
8
9
  import { OTPField } from './OneTimePasswordField';
10
+ import { PassFailField } from './PassFailField';
9
11
  import { RadioField } from './RadioField';
12
+ import { RatingField } from './RatingField';
10
13
  import { ScanField } from './ScanField';
11
14
  import { SelectField } from './SelectField';
12
15
  import { StringField } from './StringField';
13
16
  import { TextField } from './TextField';
14
- import { FieldType } from './typings';
15
17
  import { UploadField } from './UploadField';
16
18
  export declare const FieldTypeToClsMapping: {
17
19
  date: typeof DateField;
@@ -26,9 +28,11 @@ export declare const FieldTypeToClsMapping: {
26
28
  "multi-select": typeof MultiSelectField;
27
29
  radio: typeof RadioField;
28
30
  "checkbox-list": typeof CheckboxListField;
31
+ "pass-fail": typeof PassFailField;
29
32
  otp: typeof OTPField;
33
+ rating: typeof RatingField;
30
34
  };
31
- export declare const fieldIcons: Record<FieldType, IconType>;
35
+ export declare const fieldIcons: Record<FieldType, IconComponent>;
32
36
  export declare const maxFileSizeMB = 50;
33
37
  export declare const maxFileSizeKB: number;
34
38
  export declare const maxFileSizeB: number;
@@ -1,6 +1,6 @@
1
1
  import { ReactNode } from 'react';
2
- import { FieldRenderProps } from './BaseFormElement';
3
2
  import { AnyField, AnyFormElement, ValueOfField } from './typings';
3
+ import { FieldRenderProps } from './BaseFormElement';
4
4
  export declare const useFieldInput: <TField extends AnyFormElement>(field: TField, props: FieldRenderProps) => ReactNode;
5
5
  export declare const useFieldInputs: (fields: AnyFormElement[], props: FieldRenderProps) => ReactNode;
6
6
  export declare const useFormikInput: <TField extends AnyField>(props: FieldRenderProps & {
@@ -14,7 +14,9 @@ export * from './MultiSelectField';
14
14
  export * from './MultiStringField';
15
15
  export * from './NumberField';
16
16
  export * from './OneTimePasswordField';
17
+ export * from './PassFailField';
17
18
  export * from './RadioField';
19
+ export * from './RatingField';
18
20
  export * from './ScanField';
19
21
  export * from './SelectField';
20
22
  export * from './StringField';
@@ -8,7 +8,9 @@ import { MultiSelectField, SerializedMultiSelectField } from './MultiSelectField
8
8
  import { MultiStringField, SerializedMultiStringField } from './MultiStringField';
9
9
  import { NumberField, SerializedNumberField } from './NumberField';
10
10
  import { OTPField, SerializedOTPField } from './OneTimePasswordField';
11
+ import { PassFailField, SerializedPassFailField } from './PassFailField';
11
12
  import { RadioField, SerializedRadioField } from './RadioField';
13
+ import { RatingField, SerializedRatingField } from './RatingField';
12
14
  import { ScanField, SerializedScanField } from './ScanField';
13
15
  import { SelectField, SerializedSelectField } from './SelectField';
14
16
  import { SerializedStringField, StringField } from './StringField';
@@ -16,32 +18,28 @@ import { SerializedTextField, TextField } from './TextField';
16
18
  import { SerializedUploadField, UploadField } from './UploadField';
17
19
  export type AnyFormElement = BaseFormElement<any, any>;
18
20
  export type AnyField = BaseField<any, any, any, any>;
19
- export type TypeOfField<TField extends AnyFormElement> = TField extends BaseFormElement<infer TIdentifier, infer _TThis> ? TIdentifier : never;
20
- export type ValueOfField<TField extends AnyField> = TField extends BaseField<infer _TIdentifier, infer TValue, infer _TSerializedValue, infer _TThis> ? TValue : never;
21
- export type SerializedValueOfField<TField extends AnyField> = TField extends BaseField<infer _TIdentifier, infer _TValue, infer TSerializedValue, infer _TThis> ? TSerializedValue : never;
22
- export type FieldType = TypeOfField<BooleanField> | TypeOfField<CheckboxListField> | TypeOfField<DateField> | TypeOfField<MultiSelectField> | TypeOfField<MultiStringField> | TypeOfField<NumberField> | TypeOfField<RadioField> | TypeOfField<ScanField> | TypeOfField<SelectField> | TypeOfField<StringField> | TypeOfField<TextField> | TypeOfField<UploadField> | TypeOfField<FieldSection> | TypeOfField<OTPField>;
23
- export type FieldValue = ValueOfField<BooleanField> | ValueOfField<CheckboxListField> | ValueOfField<DateField> | ValueOfField<MultiSelectField> | ValueOfField<MultiStringField> | ValueOfField<NumberField> | ValueOfField<RadioField> | ValueOfField<ScanField> | ValueOfField<SelectField> | ValueOfField<StringField> | ValueOfField<TextField> | ValueOfField<UploadField> | ValueOfField<OTPField>;
24
- export type SerializedFieldValue = SerializedValueOfField<BooleanField> | SerializedValueOfField<CheckboxListField> | SerializedValueOfField<DateField> | SerializedValueOfField<MultiSelectField> | SerializedValueOfField<MultiStringField> | SerializedValueOfField<NumberField> | SerializedValueOfField<RadioField> | SerializedValueOfField<ScanField> | SerializedValueOfField<SelectField> | SerializedValueOfField<StringField> | SerializedValueOfField<TextField> | SerializedValueOfField<UploadField> | SerializedValueOfField<OTPField>;
25
- export type Field = BooleanField | CheckboxListField | DateField | MultiSelectField | MultiStringField | NumberField | RadioField | ScanField | SelectField | StringField | TextField | UploadField | OTPField;
26
- export type FieldClass = typeof BooleanField | typeof CheckboxListField | typeof DateField | typeof MultiSelectField | typeof MultiStringField | typeof NumberField | typeof RadioField | typeof ScanField | typeof SelectField | typeof StringField | typeof TextField | typeof UploadField | typeof OTPField;
27
- export type SerializedField = SerializedTextField | SerializedBooleanField | SerializedNumberField | SerializedDateField | SerializedStringField | SerializedSelectField | SerializedFieldSection | SerializedMultiStringField | SerializedMultiSelectField | SerializedUploadField | SerializedScanField | SerializedRadioField | SerializedCheckboxListField | SerializedOTPField;
21
+ export type TypeOfField<TField extends AnyFormElement> = TField extends BaseFormElement<infer TType, infer _TThis> ? TType : never;
22
+ export type ValueOfField<TField extends AnyField> = TField extends BaseField<infer _TType, infer TValue, infer _TSerializedValue, infer _TThis> ? TValue : never;
23
+ export type SerializedValueOfField<TField extends AnyField> = TField extends BaseField<infer _TType, infer _TValue, infer TSerializedValue, infer _TThis> ? TSerializedValue : never;
24
+ export type Field = BooleanField | CheckboxListField | PassFailField | DateField | MultiSelectField | MultiStringField | NumberField | RadioField | RatingField | ScanField | SelectField | StringField | TextField | UploadField | OTPField;
25
+ export type FieldClass = typeof BooleanField | typeof CheckboxListField | typeof PassFailField | typeof DateField | typeof MultiSelectField | typeof MultiStringField | typeof NumberField | typeof RadioField | typeof RatingField | typeof ScanField | typeof SelectField | typeof StringField | typeof TextField | typeof UploadField | typeof OTPField;
26
+ export type FieldType = TypeOfField<Field> | TypeOfField<FieldSection>;
27
+ export type FieldValue = ValueOfField<Field>;
28
+ export type SerializedFieldValue = SerializedValueOfField<Field>;
29
+ export type SerializedField = SerializedTextField | SerializedBooleanField | SerializedNumberField | SerializedDateField | SerializedStringField | SerializedSelectField | SerializedFieldSection | SerializedMultiStringField | SerializedMultiSelectField | SerializedUploadField | SerializedScanField | SerializedRadioField | SerializedRatingField | SerializedCheckboxListField | SerializedOTPField | SerializedPassFailField;
28
30
  export type SerializedOnlyField = Exclude<SerializedField, SerializedFieldSection>;
29
31
  export interface FieldsManager {
30
32
  readonly fields: Field[];
31
33
  getFields(): Field[];
32
- addField(field: Field): void;
33
- addFields(fields: Field[]): void;
34
+ addField(field: Field, index?: number): void;
34
35
  moveField(sourceIndex: number, targetIndex: number): void;
35
36
  removeField(field: Field): void;
36
- removeFields(fields: Field[]): void;
37
37
  }
38
38
  export interface FieldSectionManager {
39
39
  readonly fieldSections: FieldSection[];
40
40
  getFields(): Field[];
41
41
  getFieldSections(): FieldSection[];
42
- addFieldSection(field: FieldSection): void;
43
- addFieldSections(fields: FieldSection[]): void;
42
+ addFieldSection(fieldSection: FieldSection, index?: number): void;
44
43
  moveFieldSection(sourceIndex: number, targetIndex: number): void;
45
- removeFieldSection(field: FieldSection): void;
46
- removeFieldSections(fields: FieldSection[]): void;
44
+ removeFieldSection(fieldSection: FieldSection): void;
47
45
  }
@@ -1,6 +1,6 @@
1
- import { FieldValues, SerializedFieldValues } from '../typings';
2
- import { FieldSection } from './FieldSection';
1
+ import { FieldFilesAndPromises, FieldValues, SerializedFieldValues } from '../typings';
3
2
  import { Field, SerializedField, SerializedOnlyField } from './typings';
3
+ import { FieldSection } from './FieldSection';
4
4
  export declare const deserializeField: (serializedField: SerializedOnlyField) => Field;
5
5
  export declare function deserializeFields(fields: SerializedField[]): (Field | FieldSection)[];
6
6
  export declare const deserialize: (serialized: SerializedField) => Field | FieldSection;
@@ -11,3 +11,8 @@ export declare function serializeFieldValues(fields: Field[], values: FieldValue
11
11
  export declare function deserializeFieldValues(fields: Field[], values: SerializedFieldValues): FieldValues;
12
12
  export declare function cleanFieldValues(fields: Field[], values: FieldValues): FieldValues;
13
13
  export declare function cleanSerializedFieldValues(fields: Field[], values: SerializedFieldValues): SerializedFieldValues;
14
+ export declare function extractFilesAndPromisesFromFieldValues(fields: Field[], values: FieldValues): readonly [FieldValues, FieldFilesAndPromises];
15
+ export declare function insertFilesAndPromisesToFieldValues(fields: Field[], values: FieldValues, filesAndPromises: FieldFilesAndPromises): FieldValues;
16
+ export declare const initializeFieldValues: (fields: Field[], values: FieldValues) => FieldValues;
17
+ export declare const changedFieldValues: (fields: Field[], values1: FieldValues, values2: FieldValues) => FieldValues;
18
+ export declare const unchangedFieldValues: (fields: Field[], values1: FieldValues, values2: FieldValues) => FieldValues;
@@ -3,7 +3,10 @@ export * from './conditions';
3
3
  export * from './constants';
4
4
  export * from './fields';
5
5
  export * from './modifiers';
6
+ export * from './Observable';
6
7
  export * from './renderer';
7
8
  export * from './schema';
8
9
  export type * from './typings';
9
10
  export * from './utils';
11
+ export * from './UUIDFile';
12
+ export * from './UUIDPromise';
@@ -1,3 +1,4 @@
1
+ import { UUIDFile } from '../UUIDFile';
1
2
  import { ConditionModifier } from './conditionModifier';
2
- export declare const HasFilesConditionModifier: ConditionModifier<File[], boolean, boolean>;
3
- export declare const DoesNotHaveFilesConditionModifier: ConditionModifier<File[], boolean, boolean>;
3
+ export declare const HasFilesConditionModifier: ConditionModifier<UUIDFile[], boolean, boolean>;
4
+ export declare const DoesNotHaveFilesConditionModifier: ConditionModifier<UUIDFile[], boolean, boolean>;
@@ -2,6 +2,7 @@ export * from './boolean';
2
2
  export * from './date';
3
3
  export * from './file';
4
4
  export * from './number';
5
+ export * from './passFailStatus';
5
6
  export * from './string';
6
7
  export type * from './typings';
7
8
  export * from './utils';
@@ -0,0 +1,6 @@
1
+ import { PassFailFieldStatus } from '../fields';
2
+ import { ConditionModifier } from './conditionModifier';
3
+ export declare const PassFailEqualsConditionModifier: ConditionModifier<PassFailFieldStatus, PassFailFieldStatus, PassFailFieldStatus>;
4
+ export declare const PassFailNotEqualsConditionModifier: ConditionModifier<PassFailFieldStatus, PassFailFieldStatus, PassFailFieldStatus>;
5
+ export declare const PassFailArrayIncludesConditionModifier: ConditionModifier<PassFailFieldStatus, PassFailFieldStatus[], PassFailFieldStatus[]>;
6
+ export declare const PassFailArrayExcludesConditionModifier: ConditionModifier<PassFailFieldStatus, PassFailFieldStatus[], PassFailFieldStatus[]>;
@@ -1,2 +1,2 @@
1
1
  import { FieldConditionModifierConfig } from './typings';
2
- export declare const createConditionModifierConfig: <TFieldValue, TFieldConditionValue, TSerializedFieldConditionValue, TModifierValue extends TFieldValue, TModifierConditionalValue extends TFieldConditionValue, TSerializedModifierConditionValue extends TSerializedFieldConditionValue>(conifg: FieldConditionModifierConfig<TFieldValue, TFieldConditionValue, TSerializedFieldConditionValue, TModifierValue, TModifierConditionalValue, TSerializedModifierConditionValue>) => FieldConditionModifierConfig<TFieldValue, TFieldConditionValue, TSerializedFieldConditionValue, TModifierValue, TModifierConditionalValue, TSerializedModifierConditionValue>;
2
+ export declare const createConditionModifierConfig: <TValue, TConditionValue, TSerializedConditionValue, TModifierValue extends TValue, TModifierConditionalValue extends TConditionValue, TSerializedModifierConditionValue extends TSerializedConditionValue>(conifg: FieldConditionModifierConfig<TValue, TConditionValue, TSerializedConditionValue, TModifierValue, TModifierConditionalValue, TSerializedModifierConditionValue>) => FieldConditionModifierConfig<TValue, TConditionValue, TSerializedConditionValue, TModifierValue, TModifierConditionalValue, TSerializedModifierConditionValue>;
@@ -1,6 +1,7 @@
1
- import { Field, FieldSection, FieldSectionManager, SerializedFieldSection } from '../fields';
2
- import { Observable } from '../observable/Observable';
3
1
  import { FieldValues, SerializedFieldValues } from '../typings';
2
+ import { SerializedCondition } from '../conditions';
3
+ import { Field, FieldSection, FieldSectionManager, SerializedFieldSection } from '../fields';
4
+ import { Observable } from '../Observable';
4
5
  export declare class FieldSchema extends Observable<FieldSchema> implements FieldSectionManager {
5
6
  fieldSections: FieldSection[];
6
7
  constructor(fields: FieldSection[]);
@@ -10,11 +11,11 @@ export declare class FieldSchema extends Observable<FieldSchema> implements Fiel
10
11
  private initFields;
11
12
  getFields(): Field[];
12
13
  getFieldSections(): FieldSection[];
13
- addFieldSection(field: FieldSection): void;
14
- addFieldSections(fields: FieldSection[]): void;
15
- removeFieldSection(field: FieldSection): void;
16
- removeFieldSections(fields: FieldSection[]): void;
14
+ addFieldSection(fieldSection: FieldSection, index?: number): void;
15
+ removeFieldSection(fieldSection: FieldSection): void;
17
16
  moveFieldSection(sourceIndex: number, targetIndex: number): void;
18
17
  deserializeValues(values: SerializedFieldValues): FieldValues;
19
18
  serializeValues(values: FieldValues): SerializedFieldValues;
19
+ deserializeConditions(conditions: SerializedCondition[]): import('..').Condition[];
20
+ initializeValues(values: FieldValues): FieldValues;
20
21
  }
@@ -1,6 +1,10 @@
1
1
  import { Field, FieldSection, FieldValue, SerializedFieldValue } from './fields';
2
- export type FieldValues = Record<string, FieldValue>;
3
- export type SerializedFieldValues = Record<string, SerializedFieldValue>;
2
+ import { UUIDFile } from './UUIDFile';
3
+ import { UUIDPromise } from './UUIDPromise';
4
+ export type FieldValues = Record<Field["identifier"], FieldValue>;
5
+ export type FieldFilesAndPromises = Record<Field["identifier"], (UUIDFile | UUIDPromise<UUIDFile>)[]>;
6
+ export type FieldFiles = Record<Field["identifier"], UUIDFile[]>;
7
+ export type SerializedFieldValues = Record<Field["identifier"], SerializedFieldValue>;
4
8
  export type Severity = "danger" | "warning" | "info" | "success";
5
9
  export interface SchemaMeta {
6
10
  readonly: boolean;
@@ -1,16 +1,10 @@
1
1
  import { FormikErrors } from 'formik';
2
- import { AnyFormElement, Field, SerializedFieldSection } from './fields';
3
- import { FieldValues } from './typings';
2
+ import { FieldFiles, FieldFilesAndPromises, FieldValues } from './typings';
3
+ import { AnyFormElement, SerializedFieldSection } from './fields';
4
4
  export declare const validateFields: (fields: AnyFormElement[], values: FieldValues) => FormikErrors<FieldValues> | undefined;
5
- export declare const initializeFieldValues: (fields: Field[], values: FieldValues) => FieldValues;
6
- export declare const changedFieldValues: (fields: Field[], values1: FieldValues, values2: FieldValues) => FieldValues;
7
- export declare const unchangedFieldValues: (fields: Field[], values1: FieldValues, values2: FieldValues) => FieldValues;
8
- export declare const separateFilesFromFieldValues: (values: FieldValues) => {
9
- values: FieldValues;
10
- files: Record<string, File[]>;
11
- };
12
- export declare const separateFilesFromFields: (fields: SerializedFieldSection[]) => Promise<{
5
+ export declare const cleanFields: (fields: AnyFormElement[], values: FieldValues) => FormikErrors<FieldValues> | undefined;
6
+ export declare const separateImagesFromFields: (fields: SerializedFieldSection[]) => Promise<{
13
7
  fields: SerializedFieldSection[];
14
8
  images: Record<string, File>;
15
9
  }>;
16
- export declare function awaitPromisesFromFieldValues(values: FieldValues): Promise<FieldValues>;
10
+ export declare function awaitFilesAndPromises(values: FieldFilesAndPromises): Promise<FieldFiles>;