live_cells 0.16.0 copy "live_cells: ^0.16.0" to clipboard
live_cells: ^0.16.0 copied to clipboard

A replacement for ChangeNotifier and ValueNotifier that is easier to use and more flexible

0.16.0 #

New features from core:

  • and(), or() and not() now return keyed cells.

  • The following methods for waiting for changes in cell values:

    • .nextChange()
    • .untilValue()
    • .untilTrue()
    • .untilFalse()
  • ActionCell

    A cell without a value, used solely to represent actions and events.

New widgets:

  • AbsorbPointer
  • AnimatedCrossFade
  • AnimatedFractionallySizedBox
  • AnimatedPositionedDirectional
  • AnimatedRotation
  • AnimatedScale
  • AnimatedSlide
  • AnimatedSwitcher
  • AnnotatedRegion

Other changes:

  • Removed deprecated computeCell and computeWidget extension methods on List
  • Removed deprecated RestorableCellWidget

0.15.1 #

  • Fix issue with .isCompleted having incorrect value when Future completes with an error.

0.15.0 #

New features from core:

  • .awaited property on cells holding a Future.

    Returns a cell which evaluates to the value of the Future when completed, throws an UninitializedCellError when it is pending.

  • .isCompleted property on cells holding a Future.

    Returns a cell which evaluates to true when the Future is complete, false while it is pending.

  • .initialValue(...) which returns a cell with takes on the value of the given cell until it is initialized.

0.14.2 #

  • Fix async examples in README.

0.14.1 #

Minor additions from core:

  • .waitLast property which is the same as .wait but if a new Future is received before the previous one has completed, the previous future is dropped.

0.14.0 #

New features for asynchronous cells:

  • .wait property for creating a cell that awaits a Future held in another cell.
  • .delayed for creating a cell that takes the value of another cell but only notifies its observers after a given delay.

Breaking changes:

  • Removed DelayCell.

0.13.0 #

  • .cell extension property is now available on all types

  • Additions to Iterable cell extension:

    • cast<E>() method
    • map() method
  • Additions to List cell extension:

    • cast<E>() method
    • mapCells() method
  • Improvements to CellWidget:

    • Unused dependencies are untracked.
    • Widget properties can now be bound to different cells between builds.

0.12.1 #

  • Increase live_cells_core dependency version to 0.12.3
  • Increase live_cell_widgets dependency version to 0.2.2

0.12.0 #

New features in core:

New features:

  • Record extension methods for creating lightweight computed (and mutable computed) cells:

    (a, b).apply((a,b) => a + b);
    (a, b).mutableApply((a,b) => a + b, (v) {...});
    
  • changesOnly option in cell constructors. When this option is set to true, the cell only notifies its observers when its value has actually changed.

  • Relaxed restriction that MutableCellView only accept a single argument

  • Extensions which allow Iterable, List, Map and Set methods and properties to be used directly on cells:

New features in widgets library:

  • Simplified state restoration:

    • No need to use RestorableCellWidget
    • Add restorationId directly on CellWidget / StaticWidget.
    • Added .restore() method for cell state restoration in StaticWidget
  • New Widgets:

    • CellRow
    • CellColumn

0.11.2 #

Bump live_cell_widgets dependency version to 0.1.1:

  • Fix bug in StaticWidget.builder.

0.11.1 #

0.11.0 #

This release divides the functionality of this package among component packages:

Additionally the full documentation is now available at: https://docs.page/alex-gutev/live_cells.

New Features:

  • Wrapper classes for more widgets
  • .peek property for accessing the value of a cell without triggering a recomputation

Breaking Changes:

  • Minimum SDK version increased to 3.0.0
  • All properties of the widgets provided by live_cell_widgets are now cells

0.10.3 #

  • Change live_cell_annotations version to 0.2.0.

0.10.2 #

  • Fix bug: Handle exceptions thrown during computation of the initial values of cells.

0.10.1 #

0.10.0 #

New features:

  • Keyed cells, cells with the same key reference a shared state.
  • Lightweight mutable computed cells.
  • CellExtension annotation for automatically generating ValueCell accessors for classes, using the live_cell_extension package (which will be released soon).

This release also comes with major changes to the implementation. These changes are only breaking to code which creates user-defined ValueCell subclasses:

  • Removed the following internal implementation classes and mixins from the public API:
    • EqCell
    • NeqCell
    • NotifierCell
    • CellEquality
    • CellListeners
    • ObserverCell

0.9.1 #

  • Fixed bug with accessing previous cell values

0.9.0 #

New features:

  • Constant bool, null, Enum and Duration cells can now be created with the cell property, e.g. true.cell.
  • Utilities for working with cells holding a Duration.
  • CellObserverModel for creating classes which observe one or more cells
  • Add selection cell parameter to CellTextField constructor for observing and controlling the field's selection.

0.8.1 #

  • Correct typos and errors in readme examples

0.8.0 #

New features:

  • Ability to access the previous values of cells with .previous
  • Ability to abort a cell value update with ValueCell.none()
  • and, or, not and select methods on bool cells
  • Exception handling using onError and error
  • Clarified how exceptions are propagated between cells

0.7.0 #

New features:

  • ValueCell.watch and CellInitializer.watch for calling a function whenever the values of cells change.
  • State restoration of cells with RestorableCellWidget

0.6.1 #

  • Fix potential issues
  • Fix typos and improve README

0.6.0 #

New features:

  • Maybe type and MaybeCell for error handling
  • errorValue argument of mutableString method to control value in case of errors during parsing
  • Remove restriction that arguments of mutable computed cells be mutable cells

Breaking changes:

  • Add shouldNotifyAlways property to CellObserver interface

Improvements and bug fixes:

  • Simplify implementation of CellInitializer.cell
  • Allow updated cell value to be accessed even when the cell has no observers
  • Fix bug in BuildContext.cell method
  • Fix bug in CellTextField

0.5.2 #

  • Fix potential issues

0.5.1 #

  • Fix typos and bugs in examples in README

0.5.0 #

New features:

  • ValueCell.computed constructor for creating computed cells with dynamic dependencies
  • MutableCell.computed constructor for creating mutable computed cells with dynamic dependencies
  • CellWidget can now also track the cells it depends on at runtime
  • mutableString extension method on MutableCell's holding an int, double, num or string

Breaking changes:

  • CellWidget.cell method has been moved to CellListeners mixin
  • CellWidgetBuilder has been removed in favour of CellWidget.builder constructor

Improvements:

  • Simplified examples demonstrating core concepts only
  • Simplified and streamlined API
  • Improved README
  • Bug fixes

0.4.1 #

  • Bug fixes

0.4.0 #

  • Simplify implementation of CellWidget. Subclasses now override build instead of buildChild.

0.3.1 #

  • Bug fixes

0.3.0 #

New features:

  • Mutable computational cells
  • Batch updates
  • CellWidget base class for creating widgets make use of cells
  • CellWidgetBuilder for creating CellWidget's without subclassing
  • New widgets in widgets library:
    • CellCheckbox
    • CellCheckboxListTile
    • CellRadio
    • CellRadioListTile
    • CellSlider
    • CellSwitch
    • CellSwitchListTile
  • Shorthand List.computeWidget method for creating widgets which depend on multiple cells

Breaking changes:

  • MutableCell is now an interface with a factory constructor
  • CellObserver interface methods now take observed cell as arguments
  • Removed CellBuilder

0.2.3 #

  • Fix issue with CellTextField

0.2.2 #

  • Fix issue with List.computeCell method
  • Fix issues with unit tests

0.2.1 #

  • Fix issues with examples in README

0.2.0 #

New features:

  • Stronger guarantees that a StoreCell will not hold an outdated value
  • Shorthand .cell property for creating constant value cells
  • Shorthand List.computeCell method for creating multi-argument computational cells
  • Arithmetic and comparison operator overloads to create computational cells directly using expressions such as a + b

Breaking changes:

  • ValueCell is no longer a ValueListenable
  • ValueCell.addListener and ValueCell.removeListener are replaced with addObserver and removeObserver
  • New CellObserver interface for observing changes to the values of cells
  • ValueCell.listenable property provided to use ValueCell as a ValueListenable

0.1.2 #

  • Fix dart doc issues

0.1.1 #

  • Fix package directory structure

0.1.0 #

  • Initial release.
13
likes
0
pub points
47%
popularity

Publisher

verified publishergutev.dev

A replacement for ChangeNotifier and ValueNotifier that is easier to use and more flexible

Homepage
Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, live_cell_annotations, live_cell_widgets, live_cells_core

More

Packages that depend on live_cells