Commit graph

193 commits

Author SHA1 Message Date
Bogdan Dimofte
3ea00f6ded SmartForm: use prop schema, if given 2018-10-01 11:03:10 +03:00
Erik Dakoda
73086be5ca SubmitButtonLabels
- `submitLabel`, `cancelLabel`, and `revertLabel` now take a node (which is backwards compatible with string) so that you can include a FormattedMessage, an icon, etc.
2018-09-25 09:42:56 -04:00
Erik Dakoda
5ca08daa8e SmartForm.getLabel() now falls back to a "global" namespace when a collection-specific intl string is not found; then it falls back to using no namespace 2018-09-19 21:12:27 -04:00
Erik Dakoda
7e66908d21 Refactoring to remove react-bootstrap and to customize FormNestedArray for material-ui 2018-09-19 13:16:48 -04:00
SachaG
11c49f9185 Formatting clean up 2018-09-16 11:48:56 +09:00
SachaG
dfa4c77314 ESLint fixes 2018-09-16 11:48:38 +09:00
Eric Burel
755d5f6ad0 allow user to return nothing in submitCallback
Useful when the callback is meant for side effect and not for modifying the data
2018-09-05 17:08:29 +02:00
SachaG
ebbf9fa1d6 Add defaultValues to initialDocument 2018-09-05 10:44:56 +09:00
SachaG
092cec26f4 Pass currentValues, errors, and deletedValues to FormSubmit component in case it needs them 2018-09-04 21:47:05 +09:00
SachaG
0be73085c3 Fields with "$" should never be included in generated fragments (fix #2044) 2018-09-01 07:41:55 +09:00
SachaG
a388e1663f Renaming 2018-08-29 20:36:36 +09:00
Sacha Greif
26f28a98ce Rework required field validation to make it work for intl fields when creating new documents
1. make intl fields use [IntlValue] and [IntlValueInput] types
2. add isIntlData marker to fields storing intl data
3. only validate intl fields that are marked as required
4. remove all instance of `__typename` from documents in edit forms
2018-08-17 19:02:44 +09:00
Sacha Greif
0b961aca2b Add Date2 form component (useful for date of birth for example) 2018-08-17 13:49:15 +09:00
Apollinaire
06607e5e9a [Forms] Add currentDocument to clearForm
allows for the form fields to be correctly cleared when calling clearForm with `clearCurrentValues == true`
2018-08-10 14:46:49 +02:00
SachaG
497987d91e Export account helpers 2018-08-10 13:08:12 +09:00
SachaG
87ed3ea5ea Use UNSAFE_componentWillReceiveProps to compare old props and new props before resetting state when props change 2018-08-09 11:41:06 +09:00
SachaG
fe86f84870 Put currentDocument on state, too; use isEmptyValue to test for empty values (will catch [], '', and undefined as well as null) 2018-08-07 16:42:45 +09:00
SachaG
92a8ae8e75 Improve error handling in nested arrays and nested objects 2018-08-07 16:05:24 +09:00
SachaG
ae12907877 Merge branch 'devel' into feature/nested-schema 2018-08-07 10:16:40 +09:00
SachaG
2f4a0acb8e Get rid of merging to generate document; instead update currentDocument every time updateCurrentValues is called. Add support for { mode: 'merge'} in updateCurrentValues options. 2018-08-07 10:13:06 +09:00
SachaG
929e479f59 Do not pass down nestedInput prop in intlInput components to avoid treating them like Nested Objects components 2018-08-06 10:52:37 +09:00
SachaG
059d2651b9 Merge branch 'devel' into lbke-feature/nested-schema
# Conflicts:
#	packages/vulcan-forms/lib/components/Form.jsx
#	packages/vulcan-forms/lib/components/FormComponent.jsx
2018-08-06 10:46:40 +09:00
SachaG
a9d81cb747 Simplify getValue; do not merge in getValue anymore, instead get value from Form's getDocument() 2018-08-06 10:43:00 +09:00
SachaG
cdd59a1cbf When checking to update FormComponent when a field has been deleted, update parent component if child has been deleted. 2018-08-06 10:31:06 +09:00
SachaG
517fc97ade Change getDocument's merge function to allow array replacement (e.g. replace ['foo', 'bar', 'baz'] by ['foo', 'baz'] if 'bar' has been deleted) instead of always attempting to merge 2018-08-06 10:29:06 +09:00
SachaG
9b4d913fab Handle form deletions more explicitly (split into two cases); pass value down to FormNested; uniq -> uniqBy 2018-08-05 11:17:46 +09:00
SachaG
eb9a86ee47 uniq -> uniqBy 2018-08-05 10:30:56 +09:00
Eric Burel
e79b8a524f updated schema_utils and FormComponent to correctly detect nested objects 2018-07-27 17:27:44 +02:00
Eric Burel
b5e54ead17 Splitted FormNested between objects an arrays
Nested form is much simpler for objects than for arrays.
2018-07-26 17:25:33 +02:00
Eric Burel
d21dd5fcfa wrote passing tests and a failing test for nested objects 2018-07-25 18:03:43 +02:00
Eric Burel
56eb3ab4b6 fixed nested form generation
Schema must be passed explicitely to the field retrieval methods
(otherwise the main schema will be used instead of the nested schemas)
2018-07-24 20:33:43 +02:00
Eric Burel
4d6e87cbca pass the nested schema to the field retrieval methods 2018-07-24 18:29:27 +02:00
SachaG
2eeb5af8a8 Add static text component to display simple text data in forms 2018-07-10 10:08:42 +02:00
SachaG
b34f0a25ce Add support for new addFields form props to force adding unmutable "static" (disabled) fields 2018-07-10 10:02:08 +02:00
SachaG
8a446680cf Minor fixes to form, mutators; query, and payments 2018-07-07 18:49:04 +02:00
SachaG
a55ef866b0 Clear all current values 2018-07-04 11:25:44 +02:00
SachaG
e0b540eeb1 Use callback ref; fix withMutation; handle errors with no path 2018-07-04 10:59:10 +02:00
SachaG
861980b468 Internationalize field labels in forms and form errors 2018-07-02 16:59:29 +02:00
SachaG
35c811e791 Fix form error labels to work with intl fields 2018-06-30 11:48:37 +02:00
SachaG
bb80001056 Fix eslint issues 2018-06-30 11:34:17 +02:00
Sacha Greif
5230f3ae06
Merge pull request #2011 from OrigenStudio/field-value-merge
FormComponent value handling improvements
2018-06-30 09:35:42 +02:00
SachaG
da98a6bd53 Merge branch 'form-errors' of https://github.com/OrigenStudio/Vulcan into OrigenStudio-form-errors
# Conflicts:
#	packages/vulcan-lib/lib/modules/validation.js
2018-06-30 09:26:26 +02:00
SachaG
7a10103590 Pass down disabled prop explicitely 2018-06-30 09:23:49 +02:00
ochicf
affd4d61f1 remove added props to remove complexity
this commit undoes some changes introduced in this PR that added more complexity than usefulness
2018-06-29 20:03:54 +02:00
ochicf
1433ca9629 rename context to errorContext to avoid confusion with React's 2018-06-29 19:26:06 +02:00
ochicf
7d4a1685d4 add missing import 2018-06-29 13:22:46 +02:00
ochicf
f7b949b86c use getDeletedValues to apply DRY 2018-06-29 13:22:21 +02:00
ochicf
59965f9614 fix: properly retrieve parent path when current path is of an array elem
Example: for path `fieldArray[0]`, parent path was `fieldArray[0`, now is `fieldArray`.
2018-06-29 13:01:56 +02:00
ochicf
057896f0df remove shouldMergeValue prop 2018-06-29 12:55:03 +02:00
SachaG
2d2d1033b5 Enable required locale validation for individual locales; add support for intl: true on schema fields 2018-06-28 21:35:44 +02:00