/ CHANGELOG.md
CHANGELOG.md
1 # Unreleased 2 3 ## Bug Fixes 4 * autocomplete - fix bug where escape and enter key should close suggestions 5 https://github.com/anvilistas/anvil-extras/discussions/595 6 * quill - click guard was not working properly when clicking the spacer below the text 7 https://github.com/anvilistas/anvil-extras/pull/593 8 9 # v3.1.0 10 11 ## Bug Fixes 12 * tabs - tab color was not being applied to inactive tabs 13 https://github.com/anvilistas/anvil-extras/issues/570 14 * persistence - orginal class was missing from the resulting base classes 15 https://github.com/anvilistas/anvil-extras/pull/573 16 * persistence - linked class attributes were not handling None values correctly 17 https://github.com/anvilistas/anvil-extras/pull/577 18 * popover - fix bug with popovers not handling dom nodes correctly 19 https://github.com/anvilistas/anvil-extras/pull/580 20 * theme - fix Colors() without a variant argument 21 https://github.com/anvilistas/anvil-extras/pull/581 22 23 ## Enhancements 24 * tabs - tab color can now be a css var and better support for css colors in general 25 https://github.com/anvilistas/anvil-extras/pull/570 26 * messaging - support custom loggers in messaging module 27 https://github.com/anvilistas/anvil-extras/issues/569 28 * persistence - Handle addition and updates of instances with linked classes 29 https://github.com/anvilistas/anvil-extras/pull/575 30 31 ## Deprecations 32 - messaging - with_logging argument is deprecated and maybe removed in a future version 33 logging messages is now off by default - to turn it on provide a custom `logger` argument 34 https://github.com/anvilistas/anvil-extras/pull/572/files 35 - persistence - LinkedAttribute is deprecated and will be removed in a future version https://github.com/anvilistas/anvil-extras/pull/578 36 37 # v3.0.0 38 39 ## Bug Fixes 40 * popover - fix bug where popovers could not be used on forms using layouts 41 https://github.com/anvilistas/anvil-extras/issues/553 42 * ChipsInput - Chip close icon color is fixed for the last highlighted chip 43 https://github.com/anvilistas/anvil-extras/issues/567 44 45 ## Breaking Changes 46 * popover - rewritten without bootstrap, now uses floating-ui 47 `dismiss_on_scroll` is deprecated 48 class names on the popover element have changed 49 https://github.com/anvilistas/anvil-extras/pull/563 50 * multi-select - rewritten without bootstrap, now uses popover and basic anvil components 51 https://github.com/anvilistas/anvil-extras/pull/566 52 * classic editor - design components are no longer supported 53 https://github.com/anvilistas/anvil-extras/issues/567 54 * class-names and roles - all anvil extras components now use class names and roles prefixed with `ae-` 55 https://github.com/anvilistas/anvil-extras/issues/567 56 57 58 # v2.7.0 05-Sep-2024 59 60 ## New Features 61 * theme module - Define and switch between colour schemes via code 62 https://github.com/anvilistas/anvil-extras/pull/551 63 * quill - implement get_markdown() 64 https://github.com/anvilistas/anvil-extras/pull/557 65 66 ## Minor Changes 67 * persistence - add reset method 68 https://github.com/anvilistas/anvil-extras/pull/542 69 * persistence - add set behaviour for linked classes 70 71 ## Bug Fixes 72 * multiselect - fix bug where enable_selct_all was not being set correctly 73 https://anvil.works/forum/t/anvil-extras-2-6/21252/4 74 * non-blocking - fix catching exceptions when accessing a non-blocking promise 75 https://github.com/anvilistas/anvil-extras/pull/543 76 * multiselect - fix select all buttons overlapping when using width=fit 77 https://github.com/anvilistas/anvil-extras/issues/545 78 * mulitselect - fix bug where properties were not being set correctly 79 https://github.com/anvilistas/anvil-extras/issues/554 80 * augment - fix bug where event couldn't be used as a raise_event kw 81 https://anvil.works/forum/t/tabulator-multiple-value-error-on-row-click/22158/9 82 83 84 # v2.6.2 13-Jun-2024 85 86 ## Minor Changes 87 * authorisation - added config option to avoid adding a roles column to the users table 88 https://github.com/anvilistas/anvil-extras/pull/516 89 * storage - proxyobjects are passed to the underlying storage so that those implementing the serializable interface can be stored 90 https://github.com/anvilistas/anvil-extras/pull/533 91 92 ## Bug Fixes 93 * Slider - allow connect and behaviour to be set at runtime 94 https://github.com/anvilistas/anvil-extras/issues/538 95 * persistence - fix get method 96 https://github.com/anvilistas/anvil-extras/issues/523 97 * persistence - fix handling of Linked Attributes with no row 98 https://github.com/anvilistas/anvil-extras/issues/534 99 * MultiSelect - fix an issue with multiselect on the self hosted app server 100 https://github.com/anvilistas/anvil-extras/issues/525 101 * routing - fix redirect with None conditions 102 https://github.com/anvilistas/anvil-extras/pull/532 103 * MultiSelect - fix an issue where the dropdown menu would remain open when the form is hidden 104 https://github.com/anvilistas/anvil-extras/issues/536 105 106 107 # v2.6.1 27-Mar-2024 108 109 ## Bug Fixes 110 * routing - fix initialisation of history state 111 https://github.com/anvilistas/anvil-extras/discussions/519 112 * multiselect - fix visible False property in the designer 113 https://github.com/anvilistas/anvil-extras/issues/510 114 * multiselect - fix toggling enabled property loses selected state 115 https://github.com/anvilistas/anvil-extras/issues/513 116 * switch - fix lever color when switch is checked 117 https://github.com/anvilistas/anvil-extras/pull/517 118 * routing - fix on_form_load might fire stale value if form_show event is slow 119 https://github.com/anvilistas/anvil-extras/discussions/521 120 121 ## Minor Changes 122 * designer hints - add some designer hints to components 123 https://github.com/anvilistas/anvil-extras/pull/512 124 * authorisation - added config option to avoid adding a roles column to the users table 125 https://github.com/anvilistas/anvil-extras/pull/516 126 127 # v2.6.0 09-Feb-2024 128 129 ## Bug Fixes 130 * routing - fix rendering slow loading pages 131 https://github.com/anvilistas/anvil-extras/pull/501 132 * logging - add missing date format parameter 133 https://github.com/anvilistas/anvil-extras/pull/502 134 * logging - fix critical error message displays as warning 135 https://github.com/anvilistas/anvil-extras/pull/505 136 137 ## Minor Changes 138 * tabs - add better support for using faded colors e.g. `tabs.active_background = "#2196F344"` 139 https://github.com/anvilistas/anvil-extras/pull/483 140 * augment - use python implementation 141 https://github.com/anvilistas/anvil-extras/pull/488 142 * non-blocking: add a getter to expose the raw javascript promise 143 https://github.com/anvilistas/anvil-extras/pull/475 144 145 ## Deprecations 146 * augment - trigger("writeback") is now deprecated - use the native version instead `raise_event('x-anvil-write-back-<property-name>)` 147 https://github.com/anvilistas/anvil-extras/issues/429 148 149 150 # v2.5.4 15-Nov-2023 151 152 ## Enhancements 153 * Tabs - adds active_background property 154 https://github.com/anvilistas/anvil-extras/issues/481 155 156 ## Bug Fixes 157 * storage - fix a bug in ios when indexed db accessed in a webworker and closed 158 https://github.com/anvilistas/anvil-extras/discussions/484 159 * routing - preserve properties when changing templates 160 https://github.com/anvilistas/anvil-extras/discussions/486 161 162 163 # v2.5.2 25-Oct-2023 164 * storage - fix bug with deserializing 165 166 # v2.5.0 3-Oct-2023 167 168 ## New Features 169 * authorisation - adds `check_permissions` and `has_permission` functions 170 https://github.com/anvilistas/anvil-extras/issues/382 171 * `routing.lazy_route` - allows you to lazily load Forms whilst using routing 172 https://github.com/anvilistas/anvil-extras/pull/442 173 * Autocompletion: adds filter_mode property - either contains or startswith 174 https://github.com/anvilistas/anvil-extras/discussions/444 175 * navigation - ``set_mode("hash")`` can be used to set the default navigation mode to hash routing 176 https://github.com/anvilistas/anvil-extras/discussions/458 177 * navigation - menu definition can include ``title``, rather than registering a form with a title 178 https://github.com/anvilistas/anvil-extras/discussions/453 179 * navigation - set menu item visibility using conditions defined in the menu definition 180 https://github.com/anvilistas/anvil-extras/pull/460 181 * view transitions - routing and navigation use a transition on page changes (can be turned off) 182 https://github.com/anvilistas/anvil-extras/pull/465 183 * Progress Bars - support dynamic property changes 184 https://github.com/anvilistas/anvil-extras/pull/466 185 186 ## Bug Fixes 187 * pivot - don't fail if self.items is not set 188 https://github.com/anvilistas/anvil-extras/pull/468 189 * routing was no longer dismissing alerts on navigation 190 you will now need to use `routing.alert` in place of `anvil.alert` for an alert to be dismissed on navigation 191 non-dismissible alerts will block the navigation 192 https://github.com/anvilistas/anvil-extras/pull/437 193 * tabs - ensure the selected tab indicator adjusts when the tab component changes size 194 https://github.com/anvilistas/anvil-extras/pull/467 195 196 ## Minor Changes 197 * Slider - improve behaviour in the designer 198 https://github.com/anvilistas/anvil-extras/pull/472 199 * wait_for_writeback is now written in pure python 200 https://github.com/anvilistas/anvil-extras/pull/431 201 * Switch - improve designer behaviour 202 https://github.com/anvilistas/anvil-extras/pull/470 203 204 # v2.4.0 14-Jun-2023 205 206 ## New Features 207 * Add non-blocking module 208 https://github.com/anvilistas/anvil-extras/pull/411 209 210 ## Bug Fixes 211 * augment - adding event handler like click to a button will no longer fire twice 212 https://github.com/anvilistas/anvil-extras/pull/412 213 * autocomplete - fix suggestions position on mobile in M3 design 214 https://github.com/anvilistas/anvil-extras/issues/413 215 * tabs - tweak css for better mobile experience 216 https://github.com/anvilistas/anvil-extras/issues/421 217 * autocomplete - changing the suggestions will force the UI to change 218 https://github.com/anvilistas/anvil-extras/issues/426 219 220 # v2.3.0 10-Apr-2023 221 222 ## New Features 223 * add zod validation library 224 https://github.com/anvilistas/anvil-extras/pull/406 225 226 ## Minor Changes 227 * Add use of kwargs in persistent class init method 228 https://github.com/anvilistas/anvil-extras/pull/408 229 230 # v2.2.3 03-Mar-2023 231 ## Bug Fixes 232 * Raise TableError when accessing non-existent columns on persisted class 233 234 # v2.2.2 02-Mar-2023 235 ## Bug Fixes 236 * Fix attribute handling for new instances 237 238 # v2.2.1 01-Mar-2023 239 ## Bug Fixes 240 * Typo in persistence module fixed 241 242 # v2.2.0 01-Mar-2023 243 ## Notable Change 244 * persistence - Define simple classes for use in client side code and have instances of those classes synchronised with data tables rows. 245 246 ## Minor Changes 247 * add `tag` property to custom components 248 https://anvil.works/forum/t/chip-tag-initialization/15461 249 * add `format_selected_text` method override for multi-select-dropdown 250 https://github.com/anvilistas/anvil-extras/issues/398 251 252 * add `selected_keys` property for multi-select-dropdown 253 https://github.com/anvilistas/anvil-extras/issues/398 254 255 ## Bug Fixes 256 * `navigation` - Add args and kwargs to `open_form` 257 https://github.com/anvilistas/anvil-extras/pull/393 258 * `storage` - fix serialisation of dictionary values 259 https://github.com/anvilistas/anvil-extras/pull/395 260 261 # v2.1.4 01-Dec-2022 262 ## Bug Fixes 263 * `routing` - fix `routing.ANY` within `url_keys` 264 https://github.com/anvilistas/anvil-extras/pull/388 265 266 ## Deprecations 267 268 * `anvil_extras.uuid` module can be replaced wholesale by uuid from stdlib 269 DeprecatedWarning added to `uuid.uuid4()` 270 271 ## Minor Changes 272 * Some component properties adjusted to type enum so they can be selected, rather than typed, in the designer 273 274 275 # v2.1.3 03-Nov-2022 276 277 ## Minor Changes 278 * `uuid` and `storage` will check if `uuid` and `localforage` are aleady installed before importing them from cdn 279 https://github.com/anvilistas/anvil-extras/pull/381 280 281 ## Bug Fixes 282 * `routing` - `form.url_dict` will be updated when `redirect=False` 283 https://github.com/anvilistas/anvil-extras/issues/374 284 285 # v2.1.2 01-Sep-2022 286 287 ## Bug Fixes 288 * `routing` - remove_from_cache will work across templates 289 https://github.com/anvilistas/anvil-extras/issues/367 290 * `MultiSelectDropDown` - fix setting certain attributes dynamically cause events to stop firing 291 https://github.com/anvilistas/anvil-extras/issues/365 292 293 294 # v2.1.1 22-Jun-2022 295 296 ## Minor changes 297 * `augment` ensure that `"mouseenter"` is always correct event type in `"hover"` events 298 https://github.com/anvilistas/anvil-extras/discussions/319 299 * `augment` adjust handling of RadioButton to work correctly with the augment module 300 https://github.com/anvilistas/anvil-extras/pull/325 301 * `routing` - to catch arbirtrary query params in a route use `url_keys=[routing.ANY]` 302 https://github.com/anvilistas/anvil-extras/issues/342 303 304 ## Bug fixes 305 * `augment` - DataGrid's pagination click event prevented other events from being added 306 https://github.com/anvilistas/anvil-extras/pull/325 307 * `MultiSelectDropDown` - all properties are now dynamic and can be updated in code 308 https://github.com/anvilistas/anvil-extras/pull/331 309 * `serialisation` - support accelerated tables with linked columns 310 https://github.com/anvilistas/anvil-extras/issues/350 311 * `navigation` - Now handles links with roles defined when setting 'selected' 312 https://github.com/anvilistas/anvil-extras/issues/352 313 * `popovers` fix bug scrolling on mobile 314 https://github.com/anvilistas/anvil-extras/discussions/324 315 316 ## New Features 317 * `MultiSelectDropDown`: add `width` property with options for `fit` and `auto` sizing 318 https://github.com/anvilistas/anvil-extras/issues/329 319 * `navigation` - new `set_title` function for custom click handlers 320 https://github.com/anvilistas/anvil-extras/issues/358 321 322 # v2.1.0 20-Apr-2022 323 324 ## Notable Change 325 * `@auto_refreshing` - the original item will now be proxied rather than copied. 326 Changes to the proxied item will make changes to the original item. 327 https://github.com/anvilistas/anvil-extras/pull/311 328 * `MultiSelectDropDown` - the change event will **only** fire with user interaction. 329 Previously also fired when the `selected` property was changed in code. 330 This behaviour now matches other anvil Components - e.g. changing the `selected_value` 331 of a DropDown does **not** fire the DropDown change event. 332 https://github.com/anvilistas/anvil-extras/issues/307 333 334 ## New Features 335 * routing - a template argument was added to the `@routing.route` decorator. 336 This argument determines which templates a route can be added to. 337 https://github.com/anvilistas/anvil-extras/issues/293 338 * routing - a tempalate can take multiple paths `@routing.template(path=["admin", "user"])` 339 https://github.com/anvilistas/anvil-extras/pull/298 340 * routing - `@routing.redirect()` decorator added 341 https://github.com/anvilistas/anvil-extras/pull/298 342 * hashlib module added 343 https://github.com/anvilistas/anvil-extras/pull/301 344 * `utils.import_module`: similar implementation to python's `importlib.import_module` 345 https://github.com/anvilistas/anvil-extras/pull/302 346 * `MultiSelectDropDown`: add events `opened` and `closed` 347 https://github.com/anvilistas/anvil-extras/issues/279 348 349 ## Bug Fixes 350 * `MultiSelectDropDown`: fix change event should only fire on user interaction 351 https://github.com/anvilistas/anvil-extras/issues/307 352 * `@auto_refreshing`: support auto_refreshing when the item is not explicitly set 353 https://github.com/anvilistas/anvil-extras/issues/250 354 355 # v2.0.1 16-Mar-2022 356 357 ## BugFixes: 358 * routing - fix regression with before unload 359 https://github.com/anvilistas/anvil-extras/issues/289 360 361 # v2.0.0 15-Mar-2022 362 363 ## Breaking Changes 364 * `routing.load_form()` was removed. Use `routing.set_url_hash()` instead. 365 366 ## New Features 367 * Popovers - supports changing the default container to something other than `"body"` 368 add `dismiss_on_scroll()` and `set_default_container()` methods 369 https://github.com/anvilistas/anvil-extras/pull/268 370 * Quill - adds a sanitize property and a sanitize kwarg to the `set_html()` method 371 https://github.com/anvilistas/anvil-extras/issues/273 372 * routing - adds support for multiple top level forms 373 https://github.com/anvilistas/anvil-extras/pull/281 374 * **`@routing.template(path='', priority=0, condition=None)`** 375 A template form is a top level form that holds the header, navigation bar, side panel and an empty `content_panel`. 376 When navigating the routing module will ensure the correct template is the current `open_form` based on the `priority`, `path`, and `condition`. The current `url_hash` must start with the `path`, and if a `condition` is set it must return `True`. 377 Templates are checked order of priority, highest values first. 378 * **`@routing.default_template` replaces `@routing.main_router`**. 379 The `@main_router` decorator is still available. `@default_template` is equivalent to `@template()` 380 * **`routing.NavigationExit()`** 381 when raised within a `template`'s `on_navgation` callback, this will prevent the `routing` module from changing the `content_panel`. 382 This is useful if you have a `LoginForm` as a `template` whose content should remain unchanged when the user tries to navigate to other `routes`. 383 * **`routing.launch()`** 384 called within a startup module, replaces the call to `open_form()`. 385 `routing.launch()` checks the current `url_hash` and ensures that the correct template is loaded based on the paramaters of each template. 386 Calling `routing.set_url_hash()` in a Startup Module will have no effect on form loading until `routing.launch()` has been called. (This allows you to change the `url_hash` within the startup logic) 387 * `logging` module 388 https://github.com/anvilistas/anvil-extras/pull/282 389 Small, simple, lightweight API for logging in anvil apps, a bit like the Python logging module. 390 See the docs: 391 * `Logger` https://anvil-extras.readthedocs.io/en/latest/guides/modules/logging.html#logger 392 * `TimerLogger` https://anvil-extras.readthedocs.io/en/latest/guides/modules/logging.html#timerlogger 393 394 ## Bug fixes 395 * Multi-select - fix button clicks don't always close the dropdown menu 396 https://github.com/anvilistas/anvil-extras/issues/271 397 * fix bug with `@timed` decorator if used with keyword logger and level arguments 398 https://github.com/anvilistas/anvil-extras/pull/282 399 400 401 # v1.9.0 27-Jan-2022 402 403 ## New Features 404 * Select All functionality added to MultiSelect component 405 * Dynamic serialisation of data tables rows 406 https://github.com/anvilistas/anvil-extras/pull/191 407 * `utils.correct_canvas_resolution()` - canvas elements can look blurry on retina displays 408 This function sharpens the resolution of a canvas element when called in the reset event 409 https://github.com/anvilistas/anvil-extras/pull/202 410 * `augment.remove_event_handler()` added to the augment module 411 https://github.com/anvilistas/anvil-extras/pull/259 412 * Slider - visual properties - `handle_size`, `bar_height`, and `role` added 413 https://github.com/anvilistas/anvil-extras/pull/261 414 415 ## Updates: 416 * storage supports `datetime` and `date` objects 417 https://github.com/anvilistas/anvil-extras/pull/179 418 * `on_form_load()` can be used in a `routing.main_router` Form 419 This method will be fired with the current `url_hash` and the `form` that was added to the `content_panel`. 420 https://github.com/anvilistas/anvil-extras/pull/180 421 * `animate` duration argument is no longer keyword only i.e. `animate(self, fade_in, 300)` is valid 422 https://github.com/anvilistas/anvil-extras/pull/182 423 424 ## Bug fixes 425 * MultiSelect component works correctly in a popover 426 https://github.com/anvilistas/anvil-extras/pull/187 427 * popover `is_visible` bug when using `pop("toggle")` 428 https://github.com/anvilistas/anvil-extras/pull/199 429 * Using routing load_from_cache=False to reload the current form works correctly 430 https://github.com/anvilistas/anvil-extras/issues/243 431 * PageBreak retains its thickness in print mode 432 https://github.com/anvilistas/anvil-extras/issues/263 433 434 # v1.8.1 14-Oct-2021 435 436 ## Updates 437 * `has_popover()` function added to the popover module 438 https://github.com/anvilistas/anvil-extras/pull/171 439 440 * `Transition` class in the animate module is more flexible for combining transitions. 441 Some pre-computed transitions adjusted. `rotate_in/rotate_out` replaced by `rotate` 442 https://github.com/anvilistas/anvil-extras/pull/173 443 444 # v1.8.0 13-Oct-2021 445 446 ## New Features 447 * animation module - Wrap the Web Animations API around a convenient set of python tools for anvil 448 https://github.com/anvilistas/anvil-extras/pull/169 449 450 ## Bug Fixes 451 * MultiSelectDropdown - Fix "Hides menu when component is removed from the page" 452 https://github.com/anvilistas/anvil-extras/pull/170 453 454 # v1.7.1 06-Oct-2021 455 ## Bug Fixes 456 * 457 458 # v1.7.0 06-Oct-2021 459 460 ## New Features 461 * Pivot - Dynamic pivot table component 462 https://github.com/anvilistas/anvil-extras/pull/165 463 464 ## Bug Fixes 465 * MultiSelectDropdown - Hides menu when component is removed from the page 466 https://github.com/anvilistas/anvil-extras/pull/149 467 * Popover - content's show and hide events will be triggered when the popover shows and hides 468 https://github.com/anvilistas/anvil-extras/pull/150 469 * Autocomplete - Add missing TextBox properties to design view 470 https://github.com/anvilistas/anvil-extras/pull/160 471 472 # v1.6.0 17-Sep-2021 473 474 ## New Features 475 * Quill - dynamically add custom modules 476 https://github.com/anvilistas/anvil-extras/pull/117 477 * routing - adjusts the behaviour of anvil.alert to ensure dismissible alerts are closed on navigation. And navigation prevented for non-dismissible alerts. 478 https://github.com/anvilistas/anvil-extras/pull/132 479 * `storage.indexed_db` - Now supports the browser's `IndexedDB` with a dictionary like api 480 https://github.com/anvilistas/anvil-extras/pull/135 481 * storage - additional store objects can be created inside the browsers `localStorage` or `IndexedDB`. e.g. `todo_store = indexed_db.get_store('todos')` 482 Each store object behaves like a dictionary object. 483 https://github.com/anvilistas/anvil-extras/pull/135 484 * PageBreak - `border` property added and documentation updated. 485 https://github.com/anvilistas/anvil-extras/pull/139 486 487 ## Bug Fixes 488 * Autocomplete - can now be used inside an alert 489 https://github.com/anvilistas/anvil-extras/pull/114 490 * Popover - fix stickyhover 491 https://github.com/anvilistas/anvil-extras/pull/121 492 * storage - update and clear were missing from the documented api 493 https://github.com/anvilistas/anvil-extras/pull/125 494 * PageBreak - fix margin_top property and make it optional 495 https://github.com/anvilistas/anvil-extras/pull/137 496 * PageBreak and Multi-select - fix illegal HTML 497 https://github.com/anvilistas/anvil-extras/pull/139 498 * Popover - remove the requirement for delays in show/hide/destroy transitions 499 https://github.com/anvilistas/anvil-extras/pull/146 500 501 ## Deprecated 502 * storage.session_storage was deprecated. Use local_storage instead 503 https://github.com/anvilistas/anvil-extras/pull/135 504 505 ## Updates 506 * Slider Component - bump javascript dependency and refactor. No changes to the component's public API. 507 https://github.com/anvilistas/anvil-extras/pull/112 508 * Autocomple - duplicate suggestions are ignored and a warning is printed 509 https://github.com/anvilistas/anvil-extras/pull/116 510 * Popover - documentation added and clone link updated. The example now imports `anvil_extras` 511 https://github.com/anvilistas/anvil-extras/pull/121 512 513 # v1.5.2 23-Aug-2021 514 515 ## New Features 516 * `augment` - `add_event_handler()` method added. `original_event` passed as an `event_arg`. 517 https://github.com/anvilistas/anvil-extras/pull/109 518 519 ## Bug Fixes 520 * Add missing support for binding writeback on the Switch component 521 https://github.com/anvilistas/anvil-extras/pull/111 522 523 # v1.5.1 05-Jul-2021 524 525 ## Bug Fixes 526 * Autocompleter suggestions on mobile 527 https://github.com/anvilistas/anvil-extras/issues/103 528 529 # v1.5.0 29-Jun-2021 530 531 ## New Features 532 * `local_storage` - wrapper around the browser localStorage object 533 https://github.com/anvilistas/anvil-extras/pull/93 534 535 ## Changes 536 * Quill editor supports a toolbar and theme set at runtime. 537 https://github.com/anvilistas/anvil-extras/pull/80 538 * Add navigation.go_to function, improved navigation error messages 539 https://github.com/anvilistas/anvil-extras/pull/99 540 541 ## Bug Fixes 542 * Autocompleter focus method doesn't trigger autocomplete suggestions 543 https://github.com/anvilistas/anvil-extras/issues/94 544 * Improve error reporting when passing an invalid content object to a popover 545 https://github.com/anvilistas/anvil-extras/issues/90 546 * Fixed the publisher.unsubscribe method in the Messaging module, making it functional 547 https://github.com/anvilistas/anvil-extras/pull/92 548 * Fix indeterminate progress bar not always displaying 549 https://github.com/anvilistas/anvil-extras/issues/95 550 551 # v1.4 07-June-2021 552 553 ## New Features 554 * Tabs Component 555 https://github.com/anvilistas/anvil-extras/pull/64 556 * uuid4 in the browser 557 https://github.com/anvilistas/anvil-extras/pull/67 558 * Chip Component and ChipsInput Component 559 https://github.com/anvilistas/anvil-extras/pull/68 560 * AutoComplete Component 561 https://github.com/anvilistas/anvil-extras/pull/70 562 563 ## Changes 564 * Improved dynamic designer support for Switch, MultiSelectDropDown, Tabs, Quill and Slider 565 https://github.com/anvilistas/anvil-extras/pull/66 566 567 # v1.3.1 31-May-2021 568 * Improved slider formatting 569 https://github.com/anvilistas/anvil-extras/pull/61 570 571 # v1.3.0 31-May-2021 572 573 ## New Features 574 * Update styling of switch component 575 https://github.com/anvilistas/anvil-extras/pull/56 576 * Include pagination_click event in augment module 577 https://github.com/anvilistas/anvil-extras/pull/55 578 * Slider Component 579 https://github.com/anvilistas/anvil-extras/pull/60 580 581 ## Changes 582 * Refactor of progress bars 583 https://github.com/anvilistas/anvil-extras/pull/59 584 585 # v1.2.0 25-May-2021 586 587 ## New Features 588 * component.trigger('writeback') 589 https://github.com/anvilistas/anvil-extras/pull/47 590 * MultiSelectDropDown component 591 https://github.com/anvilistas/anvil-extras/pull/44 592 * @wait_for_writeback decorator 593 https://github.com/anvilistas/anvil-extras/pull/50 594 * Quill component 595 https://github.com/anvilistas/anvil-extras/pull/52 596 * Switch component 597 https://github.com/anvilistas/anvil-extras/pull/31 598 599 # v1.1.0 27-Mar-2021 600 601 ## New Features 602 * Auto Refreshing Item 603 https://github.com/anvilistas/anvil-extras/pull/39 604 605 # v1.0.0 11-Mar-2021 606 607 * Initial release