Do not discard data for hidden/removed fields

This commit is contained in:
SachaG 2019-03-02 18:31:22 +09:00
parent 65f277b194
commit 9e1b5cd76e
3 changed files with 27 additions and 5 deletions

View file

@ -1,5 +1,21 @@
#!/usr/bin/env node
/*
### Usage
Place Vulcan's package.json in .vulcan/package.json and run meteor npm run update-package-json form your project's folder.
You'll have to manually manage breaking updates (example, from ^2.0.1 to ^3.0.2).
### Features
- makes a backup of the project's package.json
- only merges dependencies, devDependencies and peerDependencies
- if full merge is successful, shows a list of updated versions
- will store vulcanVersion in package.json for future updates
*/
var fs = require('fs');
var mergePackages = require('@userfrosting/merge-package-dependencies');

View file

@ -27,7 +27,7 @@
"apollo-cache-inmemory": "^1.4.2",
"apollo-client": "2.4.12",
"apollo-engine": "1.1.2",
"apollo-errors": "^1.4.0",
"apollo-errors": "^1.9.0",
"apollo-link-error": "^1.1.5",
"apollo-link-schema": "^1.1.1",
"apollo-link-state": "^0.4.2",

View file

@ -221,7 +221,9 @@ class SmartForm extends Component {
*/
getData = customArgs => {
// we want to keep prefilled data even for hidden/removed fields
const args = {
excludeRemovedFields: false,
excludeHiddenFields: false,
replaceIntlFields: true,
addExtraFields: false,
@ -324,6 +326,7 @@ class SmartForm extends Component {
const {
schema = this.state.schema,
excludeHiddenFields = true,
excludeRemovedFields = true,
replaceIntlFields = false,
addExtraFields = true
} = args0;
@ -339,9 +342,12 @@ class SmartForm extends Component {
}
// if "hideFields" prop is specified, remove its fields
const removeFields = this.props.hideFields || this.props.removeFields;
if (typeof removeFields !== 'undefined' && removeFields.length > 0) {
relevantFields = _.difference(relevantFields, removeFields);
if (excludeRemovedFields) {
// OpenCRUD backwards compatibility
const removeFields = this.props.removeFields || this.props.hideFields;
if (typeof removeFields !== 'undefined' && removeFields.length > 0) {
relevantFields = _.difference(relevantFields, removeFields);
}
}
// if "addFields" prop is specified, add its fields
@ -1048,7 +1054,7 @@ class SmartForm extends Component {
<FormComponents.FormGroup {...this.getFormGroupProps(group)} />
))}
{this.props.repeatErrors && this.renderErrors()}
{this.props.repeatErrors && <FormComponents.FormErrors {...this.getFormErrorsProps()} />}
<FormComponents.FormSubmit {...this.getFormSubmitProps()} />
</FormComponents.FormElement>