* Fix saving dynamic values for cssRules
* Allow using collectionStateMap for styleable models
* Fix bug with undo manager
* refactor resolverWatcher
* Allow CssRules to use collection variable
* Fix undoManager issue for binding data to a component
* update returned value for adding props
* Revert a change to fix tests
* move test files
* Add tests for undomanager with datasources
* update clone and toJSON for cssRule
* Refactor Model data resolver
* update test setup function
* Refactor datasources logic to styleable model
* Add clone and update toJSON in styleableModel
* Refactor CssRule to use styleableModel methods
* Add undomanager to datasources
* refactor component class to use styleableModel methods
* update unit tests for undo manager
* Refactor data resolver watcher
* Fix undoManager in test enviroment
* Remove destroy test editor
* Update Data resolver watchers
* Remove setTimeout from undo manager unit tests
* Fix Selection tracking tests
* Fix missing id in `component.toJSON()`
* Fix styles as string for cssRules
* Fix CssRule type
* Add string style support for ModelResolver.getProps()
* Cleanup ( rename dynamic to data resolver )
* Use fake timers in undo manager tests
* Remove checking duplicated object in undomanager registry
* Fix typescript checks
* Fix lint
* Emit event on setting a style with dynamic value
* Fix event when binding to a data value equals to the previous static value
* Fix dataResolver listening bug after loading a project
* Add style watchers to modelResolverWatcher class
* Remove watcher init from Component
* Add watcher init to styleableModel and refactor styleableModel
* Fix global styles listening to datasources
* cleanup
* fix initial styles not working bug
* Add skip resolve option to component.getStyle
* Add more global styles unit tests
* Improve serialization test
* Add component:input to ComponentsEvents
* Add additional `data:path` events
* Add CssRule mount event
* Switch to a new pathSource event.
The `data:path:SOURCE_ID` doesn't work as it triggers rebuilds of symbols in ComponentDataCollection
* Up comment
* Up data_sources docs
* Up data_sources jsdoc
* Up Module.events TS
* Export types data components
* More TS export
* Up TS
* Up docs API
* fixe ComponentDataVariable dataResolver type 'data-variable' issue
* Improve some types in data resolvers
* Add an options to add dynamic values as plain text 'asPlainText: boolean'
* Make collections loop over objects
* update getItemsCount method
* Trigger `component:styleUpdate` also on the component itself
* Up
* Add type getter to the Component
* Add isVisible property to Property class in StyleManager
* Fix unstylable
* Remove type getter
* refactor: update ComponentDrag to use command reference in event props
* fix: pass event to opts in onDrag method for better event handling
* refactor: remove lockedAxis handling from Dragger class for simplified drag logic
* Avoid throwing errors if no condition is passed to a DataCondition
* Refactor Condition class
* Remove expecting errors for conditions tests
* Extend and refactor BaseOperator
* Rename and refactor GenericOperator
* Rename and refactor logicalOperator to BooleanOperator
* Refactor StringOperator
* Refactor NumberOperator
* Refactor and fix DataResolverListener
* Update tests for condition Operators
* Rename Condition class to ConditionEvaluator
* Add missing types file
* Update and refactor DataCondition
* Update utils
* Refactor StyleableModel class
* Update ComponentDataCondition
* Refactor ComponentResolverWatcher
* Fix conditional styles
* Rename LogicalGroupStatement to LogicalGroupEvaluator
* Fix tests for DataCondition
* Add setter methods for component data variable
* Add setters and getter to ComponentDataCondition
* Add getters to ComponentDataVariable
* Rename test file
* Make dynamic components undroppable
* Fix collection types
* Update collections ( add setters and getter, first item editable, sync styles )
* Update data collection tests
* Format tests
* Fix some ComponentData collection bugs
* Refactor setStartIndex and setEndIndex
* Fix getComponentDef test
* Fix bug with end index = 0
* fix test for setDataSource
* fix test for HTML updates
* Format
* Add tests for the new option in getDataValue for conditions ( skipDynamicValueResolution )
* rename Operation to DataConditionOperation
* Run __onStyleChange after style changes as before
* Format
* Up BooleanOperator
* Avoid raising errors for wrong dynamic value types
* Refactor DataCondition
* Format
* Refactor how component data variable works internally
* Symbols fix
* Add docs
* Refactor componentDatacondition
* Add types for Datacondition output ( result ) types
* Refactor DataCondition
* Refactor ComponentDataCollection
* Refactor styleableModel
* Add missing files and utils
* Up tests for ComponentDataCondition
* Add new tests for component data condition
* Fix quality check
* Move ComponentDataVariable path and default value to dataResolver property
* Update component data condition structure
* Refactor data condition
* Fix ifTrue and ifFalse position in ComponentDataCondition
* Fix typescript
* Change setIfTrueContent to be setIfTrueComponents
* Fix memory leak for binding to this.postRender
* Cleanup ComponentDataConditionView
* Up tests
* Save ComponentDataVariable on dataResolverChange
* Remove DataCollection componentDef
* Add setCollectionId method
* Replace DataCollectionVariable with DataVariable
* cleanup
* Fix bug
* PR review
* Add new API endpoints
* Add getCollectionsStateMap to ComponentDataVariable
* Fix tests
* up DataSources
* Merge branch 'dev' of https://github.com/GrapesJS/grapesjs into dynamic-values-improvements
* Push branch with refactored datasources
* Fix conditions nested inside collections
* Refactor how collectionsStateMap works
* Add DataVariable static methods
* Fix dataconditions nested inside collections
* format
* Remove collectionsStateMap on component drag
* Fix remainingItems state
* Make the first component item as the main symbol
* make layrable as false
* Update how datacollection components sync styles
---------
Co-authored-by: Artur Arseniev <artur.catch@hotmail.it>
* Avoid throwing errors if no condition is passed to a DataCondition
* Refactor Condition class
* Remove expecting errors for conditions tests
* Extend and refactor BaseOperator
* Rename and refactor GenericOperator
* Rename and refactor logicalOperator to BooleanOperator
* Refactor StringOperator
* Refactor NumberOperator
* Refactor and fix DataResolverListener
* Update tests for condition Operators
* Rename Condition class to ConditionEvaluator
* Add missing types file
* Update and refactor DataCondition
* Update utils
* Refactor StyleableModel class
* Update ComponentDataCondition
* Refactor ComponentResolverWatcher
* Fix conditional styles
* Rename LogicalGroupStatement to LogicalGroupEvaluator
* Fix tests for DataCondition
* Add setter methods for component data variable
* Add setters and getter to ComponentDataCondition
* Add getters to ComponentDataVariable
* Rename test file
* Make dynamic components undroppable
* Fix collection types
* Update collections ( add setters and getter, first item editable, sync styles )
* Update data collection tests
* Format tests
* Fix some ComponentData collection bugs
* Refactor setStartIndex and setEndIndex
* Fix getComponentDef test
* Fix bug with end index = 0
* fix test for setDataSource
* fix test for HTML updates
* Format
* Add tests for the new option in getDataValue for conditions ( skipDynamicValueResolution )
* rename Operation to DataConditionOperation
* Run __onStyleChange after style changes as before
* Format
* Up BooleanOperator
* Avoid raising errors for wrong dynamic value types
* Refactor DataCondition
* Format
* Refactor how component data variable works internally
* Symbols fix
* Add docs
* Refactor componentDatacondition
* Add types for Datacondition output ( result ) types
* Refactor DataCondition
* Refactor ComponentDataCollection
* Refactor styleableModel
* Add missing files and utils
* Up tests for ComponentDataCondition
* Add new tests for component data condition
* Fix quality check
* Move ComponentDataVariable path and default value to dataResolver property
* Update component data condition structure
* Refactor data condition
* Fix ifTrue and ifFalse position in ComponentDataCondition
* Fix typescript
* Change setIfTrueContent to be setIfTrueComponents
* Fix memory leak for binding to this.postRender
* Cleanup ComponentDataConditionView
* Up tests
* Save ComponentDataVariable on dataResolverChange
* Remove DataCollection componentDef
* Add setCollectionId method
* Replace DataCollectionVariable with DataVariable
* cleanup
* Fix bug
* PR review
* Add new API endpoints
* Add getCollectionsStateMap to ComponentDataVariable
* Fix tests
---------
Co-authored-by: Artur Arseniev <artur.catch@hotmail.it>