- Fixed Cannot extend from a model object
Added 'cellMessage' property for cell view schema
- Add field individual field validations to validate
classNames
originally accepted only an object but support a new feature in Bunsen, this also needs to accept strings.
- Add
eachKey
toarrayOptions
view schema. This allows the consumer to pick a better key for the{{#each key=eachKey}}
used in array containers
- Adds
isSection
andtag
properties to v2 schema. Upcoming bunsen feature will utilize those extra properties to force a cell as a section without requiring alabel
orcollapsible
to be set.tag
will allow users to defined an id they can use as a reference.
- Support
field
inclassNames
hook in UI Schema 2 - Mark heterogenous arrays as list type vs tuple (arrays where conditions evaluate to multiple unique schemas)
- Fixed an issue where validation was using the earlier model post value change
- Fixed an issue with
required
only being added to nearest parent object
- Support arbitrary form values in conditions. All condition predicates now have a 3rd positional parameter which is the form value.
- Fixed Travis API key.
- Improve performance on conditional view processing
- Fixed tagged branches to install before trying to build so they don't fail to publish.
- Fixed Travis config to run build script.
Fixing travis builds
- Fixed an issue in the
CHANGE_VIEW
reducer where it didn't update the model properly when the view contained internal models.
- Fixed issue with
triggerValidation
nullifying the form values which was due to it triggering anonChange
with no value changes present. Removed the extraonChange
astriggerValidation
was meant only to force a validation on existing values.
- Fixed duplicate required validation errors for nested forms that send the same
isRequired
error for the same or similar object path. It now favors object paths that are descendants, which mean, the more accurate path.
- Fixed a bug where clearing a field that was previously undefined had applied defaults with
_.defaults({}, defaultValue)
which would automatically turn it into an object, even if the value wasn't.
- Altered how tuples are processed. It now aligns more closely to JSON Schema spec for tuples. Instead of using both
itemCell
andtupleCells
,tupleCells
is the only way to override the view whileitemCell
is remains as the view for homogenous array items.itemCell
can be used as theadditionalItems
schema as well.itemCell
can be an array but is independent of tuples. - Fixed a performance issue where evaluating a condition on the view or model would override the schemas to introduce additional item schemas to match the current value.
- Added schema validation for an upcoming built-in renderer
- Added a new reducer action type for handling global changes for optimization
- Fixed a bug in
immutable-utils
attempting to callunset
onundefined
- Fixed a bug where File values were being removed from nested form values
- Adds an extra parameter
mergeDefaults
toactions.js:validate
that will merge the initial value with the defaults obtained from the model - Refactored the default logic so it reads better and reduces complexity
- Making this a major to move this past experimental
- Reverted a change made in #60 around required objects/arrays.
Added the following built-in conditons:
- isDefined
- isUndefined
- isNull
- isNotNull
- isNil
- isNotNil
- isNaN
- hasLength
- isLongerThan
- isShorterThan
- matchesRegExp
Removed check for _internal
that is no longer needed.
- Fixed a bug that cause the view normalization to error out when complex references were used.
Fixed how BunsenModelPath handles appending string paths using dot notation. This was causing internal models to be added to the wrong spot in the bunsen model if the cell defining the internal model used dot notation.
Additional fixes for the internal models feature.
Incorrect views no longer cause normalization to crash. Instead, model and view are returned unchanged.
Refactored handling of view specified models Added support for view specified models in arrays.
Fixed and refactored relative path finding.
Fixed internal models in nested cells.
Fixed model evaluation for empty arrays
Fixed case where undefined array values were causing errors in view condition evaluation.
Moved ValueWrapper class to separate file and exported it so it can be used by other packages.
Fixed conditional evaluation of models defined in view cells.
Fixed view generation for object properties.
Arrays of cells will now pass validation for the itemCell
property of views.
- Added support to extend model from within view.
- Replaced a bunch of deep cloning with minimal shallow cloning to reduce new object creation.
Fixed arrayOptions block copying incorrectly.
Adjusted handling of conditionals in arrays. Added conditional support for arrays in views.
- Added changes from
0.27.x
branch.
- Merged in changes from
0.27.x
branch.
- Fixed a bug where File objects would be stripped from values
- Fixed #85
- Updated
eslint-config-frost-standard
to6.x
and fixed lint errors.
- Added support for conditionally required properties
- Added support for tuple style arrays
- Added support for array models with conditional properties
- Changed getSubModel function
- Cleaned up some code to be easier to comprehend by making functions smaller and using self-documenting method names.
- Fixed a bug where File objects would be stripped from values
Please add a description of your change here, it will be automatically prepended to the CHANGELOG.md
file.
- Fixed #85
- Updated
eslint-config-frost-standard
to6.x
and fixed lint errors.
- UIS2 spec now includes
width
option for select
- Fixed regression where validation errors were misleading when supplying a string as the value for the views
cells
property.
- Added 'table' renderer support to the spec
- Added ability to specify custom conditions globally
- Added "unless" functionality to model conditionals
- Added support for passthrough options (spread options). This allows new properties of downstream to be leveraged as soon as they are available, with the downside of them not being validated at the bunsen level.
- Fixed minor issues related to the evaluation of view conditions.
Added processing of conditional cells in views. Conditions follow the same format as the ones for model properties.
- Fixed issue where a check for required array properties was not following the recursive schema definition correctly
- Added queryForCurrentValue to select renderer options schema
- Added ability to drive selects via an arbitrary API endpoint.
- Fixed bugs where primitive arrays couldn't have more than one item added to them.
- Added Validation for renderer.labels for overriding checkbox-array labels
- Fixed a recursive property check to determine if a property is required.
- Changed empty object/array clearing to leave empty objects/arrays that are required properties of a parent object.
- Added more method exports to
index.js
. - Renamed
getDefaultView()
togenerateView()
.
- Upgraded to version 6.x of
validator
.
- Fixed
ipv6-interface
format to not deny host of all one bits or zero bits.
- Fixed code to actually include new IPv6 formats.
- Added new formats:
ipv6-interface
,ipv6-multicast
, andipv6-prefix
.
- Removed the processing of deletes in the
computePatch
since onlyadd/updates
are the only operations required. - Fixed issue where a previous value of empty would cause an empty path id
- Ignored arrays since it doesn't make sense to send partial arrays
- Added support for 192.168.1.5/32 (entire address is network) ipv4 prefix values. edge case but it is valid CIDR
- Fixed diff computation so that any empty values are detected
- Added a method to generate a patch from the diff so consumers can leverage this utility
- Added new
forceValidation
argument tovalidate
action to allow consumer to force re-validation when the value is the same.
- Added
hideLabel
option to cell for hiding the auto-generated label whenmodel
is present. - Added more renderers to the v2 schema in order for validation to catch errors around those renderers.
- Fixed
parseVariables()
to return correct data type.
- Fixed validation bug where cell's
model
wasn't being applied to it's children.
- Fixes mac address validation
- Fixed bug where view generator would overwrite
cellDefinitions
by not first checking if a name was already taken. - Fixed validation bug where cell wasn't being validated against proper model.
- Fixed Selects can be used with values other than string. This adds supports for numbers and booleans.
- Fixed
hasValidQuery
to return false whenpopulateQuery
fails on lookup.
- Fixed
populateQuery()
to not throw error.
- Fixed utility methods not to be less brittle and not throw an error when query isn't present.
- Added validation of the
modelType
option for select renderers. - Fixed an issue where proper validation wasn't being run against root cells.
- Added
mac-address
,mac-prefix
,mac-interface
format validation. - Added additional properties to the
select
renderer v2 schema
- Fixed issue with nested cells.
- Added uint64 format validation support
- Added utility method to add support for square bracket array index referencing in bunsen views.
- Fixed
properties: undefined
bug when models wereevaluated
- Introduced change-sets which can be used in
ember-frost-bunsen
to determine what values have changed - Fix issue with validation not applying the proper empty value when defaults don't exist
- Optimized
evaluate-conditions
to avoid recursive_.cloneDeep
- Added new
clearable
option for cells to be used by facet views.
- Fixed bug where
label
was being dropped fromrootContainer
from v1 view being converted to v2.
- Fixed an issue where the first item in an array couldn't be set if the array didn't already exist.
- Replaced instances of
to.be.true
andto.be.false
withto.be.equal(true)
andto.be.equal(false)
because mocha/chai won't error if you have a typo in the property that's not a function (i.e.expect(false).to.be.fooBarBaz
passes without issue, even though there's no such check asfooBarBaz
.
- object transforms now support string, boolean, number
- Fixed issue with container structure not being preserved by converter.
- Added some missing dependencies
- Fixed code to actually expose
ip-address
andipv6-address
custom formats to consumer.
- Added two new formats:
ip-address
andipv6-address
. - Fixed
ipv4-address
format to accept octets with preceding zeros.
- Fixed issues with converter dropping semantic containers/cells.
- Fixed v1 to v2 conversion.
- Added more tests to ensure more code is functioning as expected.
- Fixed bug with immutable utils
set
method and multi-dimensional arrays. - Replaced some lodash method calls with native method calls in an effort to reduce our dependency on lodash when native Javascript gets the job done.
- Fixed issues with
unset
method and added tests to ensure method functions properly. - Refactored reducer code to be a little bit easier to follow by splitting it up into logical modules and methods.
- Fixed removing last item in an array.
- Fixed ipv4-prefix format validation
Please add a description of your change here, it will be automatically prepended to the CHANGELOG.md
file.
- The
collapsible
property will now be preserved from a container definition in v1 to v2 conversion - Class names for containers will now be preserved in v1 to v2 conversion
- Fixed bug where a cell was being marked invalid when it had the
children
property but notextends
ormodel
.
- Changed store to use
seamless-immutable
instead of_.cloneDeep()
for performance improvements as well as immutability.
- Removed remaining Ember specific code by refactoring it out to consumer.
- Fixed
textarea
renderer in view schema 2.
- Fixed some issues with validator being overly strict on format of view.
- Added utility function to convert version 1 views to version 2 views.
- Updated validator to validate version 2 of the view schema.
- Added Redux actions and reducer from
ember-frost-bunsen
. - Added all non-Ember utility functions from
ember-frost-bunsen
. - Updated
eslint
to latest version.
- Added conditions evaluation from
ember-frost-bunsen
. - Added generator from
ember-frost-bunsen
. - Added custom formats from `ember-frost-bunsen.
- Updated validator code to contain latest changes from
ember-frost-bunsen
. - Updated dependencies to latest versions.
- Converted source code from CommonJS to ES6 modules. Published package still includes CommonJS code under
lib
directory but now also includes the ES6 modules under a newsrc
directory.
- Added a new schema for v2 of bunsen views.
This schema isn't supported in any implementation of bunsen yet and while the schema itself is much longer, it provides the ability to write much more concise and simpler view definitions.
- Removed the concept of
containers
and replaced it withcells
that can have achildren
property (anarray
ofcells
). - Replaced the concept of
rootContainers
with a simple top-levelarray
ofcells
to serve as entry-points (tabs if there is more than one) - Added the
cellDefinitions
property to the top-level of the schema, allowing for re-use ofcells
- Added an
extends
property tocell
to allow re-use of previously definedcellDefinitions
- Added schemas for the
options
(formerlyproperties
) that can be passed into differentrenderers
- Added validator code from
ember-frost-bunsen