@dhis2/ui-forms 8.15.0 → 8.16.0-alpha.1
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/package.json +15 -12
- package/types/CheckboxFieldFF/CheckboxFieldFF.d.ts +16 -0
- package/types/FieldGroupFF/FieldGroupFF.d.ts +9 -0
- package/types/FileInputFieldFF/FileInputFieldFF.d.ts +18 -0
- package/types/InputFieldFF/InputFieldFF.d.ts +15 -0
- package/types/MultiSelectFieldFF/MutliSelectFieldFF.d.ts +24 -0
- package/types/RadioFieldFF/RadioFieldFF.d.ts +17 -0
- package/types/SingleSelectFieldFF/SingleSelectFieldFF.d.ts +26 -0
- package/types/SwitchFieldFF/SwitchFieldFF.d.ts +15 -0
- package/types/TextAreaFieldFF/TextAreaFieldFF.d.ts +15 -0
- package/types/index.d.ts +28 -0
- package/types/transformers/index.d.ts +6 -0
- package/types/validators/index.d.ts +31 -0
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@dhis2/ui-forms",
|
3
|
-
"version": "8.
|
3
|
+
"version": "8.16.0-alpha.1",
|
4
4
|
"main": "./build/cjs/index.js",
|
5
5
|
"module": "./build/es/index.js",
|
6
6
|
"sideEffects": [
|
@@ -8,6 +8,7 @@
|
|
8
8
|
"build/cjs/locales/index.js"
|
9
9
|
],
|
10
10
|
"exports": {
|
11
|
+
"types": "./types/index.d.ts",
|
11
12
|
"import": "./build/es/index.js",
|
12
13
|
"require": "./build/cjs/index.js"
|
13
14
|
},
|
@@ -34,25 +35,27 @@
|
|
34
35
|
},
|
35
36
|
"dependencies": {
|
36
37
|
"@dhis2/prop-types": "^3.1.2",
|
37
|
-
"@dhis2-ui/button": "8.
|
38
|
-
"@dhis2-ui/checkbox": "8.
|
39
|
-
"@dhis2-ui/field": "8.
|
40
|
-
"@dhis2-ui/file-input": "8.
|
41
|
-
"@dhis2-ui/input": "8.
|
42
|
-
"@dhis2-ui/radio": "8.
|
43
|
-
"@dhis2-ui/select": "8.
|
44
|
-
"@dhis2-ui/switch": "8.
|
45
|
-
"@dhis2-ui/text-area": "8.
|
38
|
+
"@dhis2-ui/button": "8.16.0-alpha.1",
|
39
|
+
"@dhis2-ui/checkbox": "8.16.0-alpha.1",
|
40
|
+
"@dhis2-ui/field": "8.16.0-alpha.1",
|
41
|
+
"@dhis2-ui/file-input": "8.16.0-alpha.1",
|
42
|
+
"@dhis2-ui/input": "8.16.0-alpha.1",
|
43
|
+
"@dhis2-ui/radio": "8.16.0-alpha.1",
|
44
|
+
"@dhis2-ui/select": "8.16.0-alpha.1",
|
45
|
+
"@dhis2-ui/switch": "8.16.0-alpha.1",
|
46
|
+
"@dhis2-ui/text-area": "8.16.0-alpha.1",
|
46
47
|
"classnames": "^2.3.1",
|
47
48
|
"final-form": "^4.20.2",
|
48
49
|
"prop-types": "^15.7.2",
|
49
50
|
"react-final-form": "^6.5.3"
|
50
51
|
},
|
51
52
|
"files": [
|
52
|
-
"build"
|
53
|
+
"build",
|
54
|
+
"types"
|
53
55
|
],
|
54
56
|
"devDependencies": {
|
55
57
|
"react": "16.13",
|
56
58
|
"react-dom": "16.13"
|
57
|
-
}
|
59
|
+
},
|
60
|
+
"types": "types"
|
58
61
|
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import type { FieldRenderProps } from 'react-final-form'
|
2
|
+
import type { CheckboxFieldProps } from '@dhis2-ui/checkbox'
|
3
|
+
import React from 'react'
|
4
|
+
|
5
|
+
type CheckBoxValue = CheckboxFieldProps['value']
|
6
|
+
type CheckboxRestProps = Omit<
|
7
|
+
CheckboxFieldProps,
|
8
|
+
'onChange' | 'value' | 'checked' | 'name'
|
9
|
+
>
|
10
|
+
|
11
|
+
export type CheckboxFieldFFProps = FieldRenderProps<CheckBoxValue> &
|
12
|
+
CheckboxRestProps & {
|
13
|
+
showValidStatus?: boolean
|
14
|
+
}
|
15
|
+
|
16
|
+
export const CheckboxFieldFF: React.FC<CheckboxFieldFFProps>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { FileInputFieldProps } from '@dhis2-ui/file-input'
|
3
|
+
import type { FieldRenderProps } from 'react-final-form'
|
4
|
+
|
5
|
+
export type FilesValue = File[] | undefined | null | ''
|
6
|
+
|
7
|
+
type FileInputRestProps = Omit<
|
8
|
+
FileInputFieldProps,
|
9
|
+
'onChange' | 'multiple' | 'name'
|
10
|
+
>
|
11
|
+
|
12
|
+
export type FileInputFieldFFProps = FieldRenderProps<FilesValue> &
|
13
|
+
FileInputRestProps & {
|
14
|
+
showValidStatus?: boolean
|
15
|
+
multifile: FileInputFieldProps['multiple']
|
16
|
+
}
|
17
|
+
|
18
|
+
export const FileInputFieldFF: React.FC<FileInputFieldFFProps>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { InputFieldProps } from '@dhis2-ui/input'
|
3
|
+
import type { FieldRenderProps } from 'react-final-form'
|
4
|
+
|
5
|
+
export type InputValue = InputFieldProps['value']
|
6
|
+
|
7
|
+
type InputFieldRestProps = Omit<InputFieldProps, 'onChange' | 'value' | 'name'>
|
8
|
+
|
9
|
+
export type InputFieldFFProps = FieldRenderProps<InputValue> &
|
10
|
+
InputFieldRestProps & {
|
11
|
+
showLoadingStatus?: boolean
|
12
|
+
showValidStatus?: boolean
|
13
|
+
}
|
14
|
+
|
15
|
+
export const InputFieldFF: React.FC<InputFieldFFProps>
|
@@ -0,0 +1,24 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { FieldRenderProps } from 'react-final-form'
|
3
|
+
import type {
|
4
|
+
MultiSelectOptionProps,
|
5
|
+
MultiSelectFieldProps,
|
6
|
+
} from '@dhis2-ui/select'
|
7
|
+
|
8
|
+
type InputValue = MultiSelectFieldProps['selected'] | ''
|
9
|
+
|
10
|
+
type MultiSelectFieldRestProps = Omit<
|
11
|
+
MultiSelectFieldProps,
|
12
|
+
'onChange' | 'value'
|
13
|
+
>
|
14
|
+
|
15
|
+
type MultiSelectOptions = Array<Pick<MultiSelectOptionProps, 'value' | 'label'>>
|
16
|
+
|
17
|
+
export type MultiSelectFieldFFProps = FieldRenderProps<InputValue> &
|
18
|
+
MultiSelectFieldRestProps & {
|
19
|
+
showLoadingStatus?: boolean
|
20
|
+
showValidStatus?: boolean
|
21
|
+
options: MultiSelectOptions
|
22
|
+
}
|
23
|
+
|
24
|
+
export const MultiSelectFieldFF: React.FC<MultiSelectFieldFFProps>
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { FieldRenderProps } from 'react-final-form'
|
3
|
+
import type { RadioProps } from '@dhis2-ui/radio'
|
4
|
+
|
5
|
+
type InputValue = RadioProps['value']
|
6
|
+
|
7
|
+
type RadioRestProps = Omit<
|
8
|
+
RadioProps,
|
9
|
+
'onChange' | 'value' | 'checked' | 'name'
|
10
|
+
>
|
11
|
+
|
12
|
+
export type RadioFieldFFProps = FieldRenderProps<InputValue> &
|
13
|
+
RadioRestProps & {
|
14
|
+
showValidStatus?: boolean
|
15
|
+
}
|
16
|
+
|
17
|
+
export const RadioFieldFF: React.FC<RadioFieldFFProps>
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { FieldRenderProps } from 'react-final-form'
|
3
|
+
import type {
|
4
|
+
SingleSelectOptionProps,
|
5
|
+
SingleSelectFieldProps,
|
6
|
+
} from '@dhis2-ui/select'
|
7
|
+
|
8
|
+
type InputValue = SingleSelectFieldProps['selected']
|
9
|
+
|
10
|
+
type SingleSelectOptions = Array<
|
11
|
+
Pick<SingleSelectOptionProps, 'value' | 'label'>
|
12
|
+
>
|
13
|
+
|
14
|
+
type SingleSelectRestProps = Omit<
|
15
|
+
SingleSelectFieldProps,
|
16
|
+
'onChange' | 'value' | 'name'
|
17
|
+
>
|
18
|
+
|
19
|
+
export type SingleSelectFieldFFProps = FieldRenderProps<InputValue> &
|
20
|
+
SingleSelectRestProps & {
|
21
|
+
showLoadingStatus?: boolean
|
22
|
+
showValidStatus?: boolean
|
23
|
+
options: SingleSelectOptions
|
24
|
+
}
|
25
|
+
|
26
|
+
export const SingleSelectFieldFF: React.FC<SingleSelectFieldFFProps>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { FieldRenderProps } from 'react-final-form'
|
3
|
+
import type { SwitchFieldProps } from '@dhis2-ui/switch'
|
4
|
+
|
5
|
+
type InputValue = SwitchFieldProps['value']
|
6
|
+
|
7
|
+
type SwitchFieldRestProps = Omit<
|
8
|
+
SwitchFieldProps,
|
9
|
+
'onChange' | 'checked' | 'value' | 'name'
|
10
|
+
>
|
11
|
+
|
12
|
+
export type SwitchFieldFFProps = FieldRenderProps<InputValue> &
|
13
|
+
SwitchFieldRestProps
|
14
|
+
|
15
|
+
export const SwitchFieldFF: React.FC<SwitchFieldFFProps>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import React from 'react'
|
2
|
+
import type { FieldRenderProps } from 'react-final-form'
|
3
|
+
import type { TextAreaFieldProps } from '@dhis2-ui/text-area'
|
4
|
+
|
5
|
+
type InputValue = TextAreaFieldProps['value']
|
6
|
+
|
7
|
+
type TextAreaFieldRestProps = Omit<
|
8
|
+
TextAreaFieldProps,
|
9
|
+
'onChange' | 'value' | 'name'
|
10
|
+
>
|
11
|
+
|
12
|
+
export type TextAreaFieldFFProps = FieldRenderProps<InputValue> &
|
13
|
+
TextAreaFieldRestProps
|
14
|
+
|
15
|
+
export const TextAreaFieldFF: React.FC<TextAreaFieldFFProps>
|
package/types/index.d.ts
ADDED
@@ -0,0 +1,28 @@
|
|
1
|
+
import * as FinalForm from 'final-form'
|
2
|
+
import * as ReactFinalForm from 'react-final-form'
|
3
|
+
|
4
|
+
export { CheckboxFieldFF } from './CheckboxFieldFF/CheckboxFieldFF'
|
5
|
+
export { FileInputFieldFF } from './FileInputFieldFF/FileInputFieldFF'
|
6
|
+
export { InputFieldFF } from './InputFieldFF/InputFieldFF'
|
7
|
+
export { MultiSelectFieldFF } from './MultiSelectFieldFF/MutliSelectFieldFF'
|
8
|
+
export { SingleSelectFieldFF } from './SingleSelectFieldFF/SingleSelectFieldFF'
|
9
|
+
export { RadioFieldFF } from './RadioFieldFF/RadioFieldFF'
|
10
|
+
export { SwitchFieldFF } from './SwitchFieldFF/SwitchFieldFF'
|
11
|
+
export { TextAreaFieldFF } from './TextAreaFieldFF/TextAreaFieldFF'
|
12
|
+
export { FieldGroupFF } from './FieldGroupFF/FieldGroupFF'
|
13
|
+
|
14
|
+
export * from './transformers'
|
15
|
+
export * from './validators'
|
16
|
+
|
17
|
+
/**
|
18
|
+
* Allows direct access to the FinalForm library. Please note that this is considered advanced
|
19
|
+
* usage and that you need to stay up to date with breaking changes in the FinalForm library.
|
20
|
+
*/
|
21
|
+
export { FinalForm }
|
22
|
+
|
23
|
+
/**
|
24
|
+
* Allows direct access to the ReactFinalForm library. Please note that this is considered
|
25
|
+
* advanced usage and that you need to stay up to date with breaking changes in the FinalForm
|
26
|
+
* library.
|
27
|
+
*/
|
28
|
+
export { ReactFinalForm }
|
@@ -0,0 +1,31 @@
|
|
1
|
+
export type Validator = (value: unknown) => string | undefined
|
2
|
+
|
3
|
+
export const alphaNumeric: Validator
|
4
|
+
export const boolean: Validator
|
5
|
+
export const composeValidators: (...validators: Validator[]) => Validator
|
6
|
+
|
7
|
+
export const createCharacterLengthRange: (
|
8
|
+
lowerBound: number,
|
9
|
+
upperBound: number,
|
10
|
+
customMessage?: string
|
11
|
+
) => Validator
|
12
|
+
export const createEqualTo: (key: string, description?: string) => Validator
|
13
|
+
export const createMaxCharacterLength: (upperBound: number) => Validator
|
14
|
+
export const createMaxNumber: (upperBound: number) => Validator
|
15
|
+
export const createMinCharacterLength: (lowerBound: number) => Validator
|
16
|
+
export const createMinNumber: (lowerBound: number) => Validator
|
17
|
+
export const createNumberRange: (
|
18
|
+
lowerBound: number,
|
19
|
+
upperBound: number,
|
20
|
+
customMessage?: string
|
21
|
+
) => Validator
|
22
|
+
export const createPattern: (pattern: RegExp, message?: string) => Validator
|
23
|
+
export const dhis2Password: Validator
|
24
|
+
export const dhis2Username: Validator
|
25
|
+
export const email: Validator
|
26
|
+
export const hasValue: Validator
|
27
|
+
export const integer: Validator
|
28
|
+
export const internationalPhoneNumber: Validator
|
29
|
+
export const number: Validator
|
30
|
+
export const string: Validator
|
31
|
+
export const url: Validator
|