diff --git a/.vulcan/update_package.js b/.vulcan/update_package.js
index 8038b636e..de783c83e 100644
--- a/.vulcan/update_package.js
+++ b/.vulcan/update_package.js
@@ -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');
diff --git a/package.json b/package.json
index 8e5dd2922..5b38fbf38 100644
--- a/package.json
+++ b/package.json
@@ -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",
diff --git a/packages/vulcan-forms/lib/components/Form.jsx b/packages/vulcan-forms/lib/components/Form.jsx
index 411888e4b..511342d4f 100644
--- a/packages/vulcan-forms/lib/components/Form.jsx
+++ b/packages/vulcan-forms/lib/components/Form.jsx
@@ -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 {
))}
- {this.props.repeatErrors && this.renderErrors()}
+ {this.props.repeatErrors && }