@v4fire/client
Version:
V4Fire client core library
1,971 lines (1,131 loc) โข 133 kB
Markdown
Changelog
=========
> **Tags:**
> - :boom: [Breaking Change]
> - :rocket: [New Feature]
> - :bug: [Bug Fix]
> - :memo: [Documentation]
> - :house: [Internal]
> - :nail_care: [Polish]
_Note: Gaps between patch versions are faulty, broken or test releases._
## v3.75.1 (2024-11-26)
#### :bug: Bug Fix
* Fixed an issue where the stored items processors were not cleared on reset `base/b-virtual-scroll-new`
## v3.75.0 (2024-11-25)
#### :boom: Breaking Change
* Now items processors will be generated only for the first render and will be reused for all subsequent ones until a reset occurs `base/b-virtual-scroll-new`
## v3.74.8 (2024-09-17)
#### :bug: Bug Fix
* Fixed setting `document.title` to avoid potential XSS `PageMetaData`
## v3.74.7 (2024-08-29)
#### :bug: Bug Fix
* Fixed an implicitly infinite loop when we tried to wait for externally hosted library to appear in the filesystem.
## v3.74.6 (2024-08-02)
#### :rocket: New Feature
* The `eventConverter` function can now return a tuple consisting of the page component name and page component key, instead of just a string representing the page component name `bDynamicPage`
#### :bug: Bug Fix
* Fixed an issue where a new page component instance was not created when switching between routes that use the same page component `bDynamicPage`
## v3.74.5 (2024-08-12)
#### :house: Internal
* Updated `monic-loader` to version `3.0.5` to include a fix for the rebuild speed regression
## v3.74.4 (2024-08-02)
#### :nail_care: Polish
* Now, if an external link is passed to `initLibs()`, `PUBLIC_PATH` won't be added to it.
## v3.74.3 (2024-07-18)
#### :house: Internal
* Updated `monic-loader` to version `3.0.4` to fix regression
## v3.74.2 (2024-07-16)
#### :house: Internal
* Updated `monic-loader` to version `3.0.3` to fix memory leak on rebuild in watch mode
## v3.74.1 (2024-06-14)
#### :house: Internal
* Updated `terser` to version `5.31.0` to include [bug fix](https://github.com/terser/terser/issues/1432)
## v3.74.0 (2024-05-23)
#### :rocket: New Feature
* Added color param to `i` mixin `global/g-def/funcs/ds.styl`
## v3.73.0 (2024-04-25)
#### :bug: Bug Fix
* Fixed ts-config to restore the functionality of linters.
## v3.72.0 (2024-04-25)
#### :rocket: New Feature
* Added a new accessor for the current `region` in `i-static-page`.
## v3.71.0 (2024-04-19)
#### :rocket: New Feature
* Introduced a `beforeSwitchPage` event that is emitted prior to the removal of the current page element
* Implemented an API for saving the scroll of nested DOM nodes on the page.
[Learn more](./README.md#api-for-saving-scroll-of-nested-dom-nodes).
## v3.70.2 (2024-04-19)
#### :house: Internal
* Use the `v-resize-observer` directive to recalculate `b-bottom-slide` state instead of `window:resize` and `DOMChange` watchers
## v3.70.1 (2024-04-19)
#### :rocket: New Feature
* The `dataOffset` property is now public in the `VirtualScrollState` interface `base/b-virtual-scroll-new`
## v3.70.0 (2024-04-17)
#### :rocket: New Feature
* Supported the insertion of a primitive as a value `component/directives/safe-html`
## v3.69.1 (2024-04-09)
#### :bug: Bug Fix
* Add super call in `baseMods` getter override `dummies/b-dummy/b-dummy`
## v3.69.0 (2024-03-29)
#### :boom: Breaking Change
* Now, the `component` property of the `ComponentObject` always returns a promise.
It also means that the `component` property will not be cached anymore, but will be calculated every time it is accessed `tests/helpers/component-object`
#### :rocket: New Feature
* The ComponentObject can now accept a third argument โ a component selector.
If the selector is passed, it means there is no need to call pick or build, as the component will be taken from the page using the passed selector `tests/helpers/component-object`
## v3.68.1 (2024-03-05)
#### :bug: Bug Fix
* Fixed the order of setting the "textStore" property in the "updateTextStore" method, which led to a bug with a non-disappearing "textHint" when input overflows
## v3.68.0 (2024-03-04)
#### :rocket: New Feature
* Added a new `v-safe-html` directive for inserting sanitized HTML `core/component/directives/safe-html`
## v3.67.1 (2024-02-26)
#### :bug: Bug Fix
* Fixed an issue with the unnecessary mutation of request parameters leading to unnecessary component rerendering `super/i-data`
* Fixed an with transition into loading success state was not made `base/b-virtual-scroll-new/b-virtual-scroll-new`
## v3.67.0 (2024-02-22)
#### :bug: Bug Fix
* Fixed an issue with the incorrect transition into the loading state. Now the loading state will be removed in one requestAnimationFrame call along with the content insertion into the DOM,
and the loading state will be restored on the following one. This trick helps avoid generating CLS errors. `base/b-virtual-scroll-new`
* Fixed a race condition when calling `initLoad` multiple times `base/b-virtual-scroll-new`
* Added visibility tracking for the tombstones slot, now if this slot is on the screen,
an attempt will be made to render the data regardless of what the client returned in `shouldPerformDataRender`.
Also added a flag in VirtualScrollState indicating the visibility of the slot.
All this will help avoid situations when for some reason the `IntersectionObserver` did not trigger on the elements and as a result `shouldPerformDataRender` was not called. `base/b-virtual-scroll-new`
#### :rocket: New Feature
* Added the `BOM.clsScore` method that allows measuring Cumulative Layout Shift (CLS) during any actions.
## v3.66.1 (2024-02-20)
#### :bug: Bug Fix
* Removed an unnecessary next data chunk response checking `base/b-virtual-scroll-new`
## v3.66.0 (2024-02-13)
#### :boom: Breaking Change
* Removed `shouldPerformDataRequest` prop in `b-virtual-scroll-new` `base/b-virtual-scroll-new`
* `tests/helpers/network/interceptor` no longer has a named export, the `RequestInterceptor` class is now exported as the default export `tests/helpers/network/interceptor`
#### :rocket: New Feature
* Added `preloadAmount` prop in b`-virtual-scroll-new` `base/b-virtual-scroll-new`
#### :house: Internal
* Added re-export of modules from `tests/helpers`:
- Request
- RequestInterceptor
- Mock
* Removed bad import of async module from `tests/helpers/network/interceptor`
## v3.65.1 (2024-02-13)
#### :bug: Bug Fix
* Fixed a bug with opening the browser when clicking on the svg icon nested to the link `traits/i-icon`
* Added the `default` getter to static compiled routes `core/router/modules`
## v3.65.0 (2024-02-09)
#### :rocket: New Feature
* New test APIs:
* Request interceptor `tests/helpers/network/interceptor`;
* ComponentObject `tests/helpers/component-object`;
* Spy and mock `tests/helpers/mock`;
* Component.createComponentInDummy `tests/helpers/component`.
#### :bug: Bug Fix
* Fixed the problem that the `lifecycleDone` event could fire before `renderDone` `components/base/b-virtual-scroll-new`
#### :house: Internal
* Added tests for `b-virtual-scroll-new` from v4 branch
## v3.64.0 (2024-01-30)
#### :rocket: New Feature
* Now the b-virtual-scroll component always attempts to perform the last rendering after the requests have been completed, even if there is no data left to render `base/b-virtual-scroll-new/b-virtual-scroll-new`
## v3.63.2 (2024-01-29)
#### :bug: Bug Fix
* Fixed an issue where, during a request error in the `initLoadNext` call, the error was not handled properly, leading to incorrect behavior of the component, including in terms of slot rendering `base/b-virtual-scroll-new/b-virtual-scroll-new`
## v3.63.1 (2024-01-26)
#### :bug: Bug Fix
* Fixed an issue with slots not being displayed in `b-virtual-scroll-new` `base/b-virtual-scroll-new/b-virtual-scroll-new`
## v3.63.0 (2024-01-25)
#### :rocket: New Feature
* Added new component `b-virtual-scroll-new` (temporarily ported from v4v4) `base/b-virtual-scroll-new/b-virtual-scroll-new`
## v3.62.2 (2023-12-07)
#### :bug: Bug Fix
* Fixed a bug with clearing event listeners on ios `traits/i-lock-page-scroll`
#### :house: Internal
* Moving on new major `yarn@4` version
* Updated actions in CI
* Migrate on `node@20`
## v3.62.1 (2023-11-13)
#### :big: Bug Fix
* Fixed incorrect slide alignment when there is only one slide presented `base/b-slider`
## v3.62.0 (2023-10-12)
#### :rocket: New Feature
* Added theme modifier calculation to components `super/i-block`
* Added `darkThemeName` `lightThemeName` stylus function `build/stylus/ds`
## v3.61.0 (2023-10-12)
#### :rocket: New Feature
* Added `themeAttribute` stylus function `build/stylus/ds`
* Added default values for `runtime` theme parameters
* Added possibility to configure theme attribute `components/global/g-def`
## v3.60.0 (2023-09-28)
#### :rocket: New Feature
* Added possibility to specify paths with alias to `@context` directive `build/monic`
* Added possibility to load icons from design-system `traits/i-icon` `icon/b-icon`
* Added `detectUserPreferences` parameter to `theme` config `config`
* Added possibility to detect the theme based on user system settings `super/i-static-page/modules/theme/theme-manager`
## v3.59.1 (2023-09-22)
#### :bug: Bug Fix
* Fixed icons' size in multi-theme mode `global/g-def`
## v3.59.0 (2023-09-13)
#### :rocket: New Feature
* Added `verbose` flag to `build` config `config`
* Warnings about deprecated design system fields are hidden under the `verbose` flag `build/stylus/ds`
## v3.58.0 (2023-09-08)
#### :rocket: New Feature
* Added possibility to change icons' color according to the selected theme `global/g-def`
## v3.57.0 (2023-08-28)
#### :rocket: New Feature
* Webpack plugins:
* Added a new plugin `invalidate-external-cache`
#### :bug: Bug Fix
* Fixed a bug with resolving a promise returned by the `iLockPageScroll.lock`
## v3.56.0 (2023-08-18)
#### :rocket: New Feature
* Added possibility to specify a complicated color tokens `build/stylus/ds`
* Improved display of warnings about deprecated design system fields `build/stylus/ds`
## v3.55.0 (2023-08-04)
#### :rocket: New Feature
* Added auto-scrolling functionality to the slider `base/b-slider`
## v3.54.1 (2023-07-28)
#### :bug: Bug Fix
* Fixed an issue where the default behavior of the `convertStateToRouterReset` did not affect the router `iBlock`
* Fixed resetting router state `friends/state`
## v3.54.0 (2023-07-28)
#### :rocket: New Feature
* Added possibility to change the method that will be used for transitions when the router
synchronizes its state with the component's state by using `syncRouterState` `iBlock`
## v3.53.0 (2023-07-27)
#### :boom: Breaking Change
* Merging of parameters when navigating to a route with the same name as the current one has been removed `bRouter`
#### :bug: Bug Fix
* Fixed alias priority when resolve path parameters `core/router`
## v3.52.0 (2023-07-19)
#### :rocket: New Feature
* Added new method `getHref` to `b-list`
* Added new event `hrefTransition` to `b-router` to provide the capability to prevent router transition upon link click
## v3.51.2 (2023-07-11)
#### :house: Internal
* The `kv-storage/engines/cookies` engine now inherits from `kv-storage/engines/string`
## v3.51.1 (2023-06-27)
#### :bug: Bug Fix
* Handle unsuitable `pathParams` values in the `fillRouteParams` function `bRouter`
## v3.51.0 (2023-06-27)
#### :rocket: New Feature
* Added support for `mailto:` and `tel:` href-s `b-router`
## v3.50.0 (2023-06-16)
#### :rocket: New Feature
* Fill original route path parameters from URL of the route that redirects on it in `core/router`
## v3.49.0 (2023-05-30)
#### :rocket: New Feature
* Added ability to specify a custom validator function in `i-input`
## v3.48.0 (2023-05-30)
#### :rocket: New Feature
* Added new helpers for working with gradients and shadows from the design system `global/g-def/funcs`
## v3.47.4 (2023-05-29)
#### :bug: Bug Fix
* Fixed a bug when observing fields that are redefined from props `core/component/decorators`
## v3.47.3 (2023-05-26)
#### :rocket: New Feature
* Added a new helper for collecting i18n keysets `build/helpers`
## v3.47.2 (2023-05-18)
#### :bug: Bug Fix
* Fixed a bug when the overridden getter with cache had a value equal to the parent's getter value `core/component/decorators`
## v3.47.1 (2023-05-18)
#### :bug: [Bug Fix]
* Replace `undefined` values in `route.params` by an alias or query param, if necessary, in `b-router`
## v3.47.0 (2023-05-05)
#### :rocket: New Feature
* Added ability to exclude an item from being activated by specifying `activatable` flag in `i-active-items` trait
* Added `getItemByValue` method in `i-active-items` trait, `b-list` and `b-tree`
## v3.46.4 (2023-05-05)
#### :bug: Bug Fix
* Fixed a bug with negative values in design system `build/stylus/ds/helpers`
## v3.46.3 (2023-04-28)
#### :bug: Bug Fix
* Fixed a bug with the `typograf` filter that didn't work due to the wrong locale path.
## v3.46.2 (2023-04-26)
#### :house: Internal
* Migrate on `node@18`
## v3.46.1 (2023-04-13)
#### :bug: Bug Fix
* Disabled js minify in html loader
## v3.46.0 (2023-04-10)
#### :house: Internal
* Updated `playwright@1.32.1`
## v3.45.0 (2023-04-04)
#### :house: Internal
* Moving to `yarn` package manager
* Updated CI script to `yarn`
* Removed unused dependencies
* Updated dependencies:
* `favicons@7.1.0`
* `@statoscope/webpack-plugin@5.25.1`
* `webpack-cli@5.0.1`
* `webpack@5.76.0`
## v3.44.3 (2023-03-30)
#### :bug: [Bug Fix]
* Overriding original parameter by alias in route `b-router` `core/router`
## v3.44.2 (2023-03-29)
#### :house: Internal
* Changed `optionProps` and `itemProps` params `bSlider`
## v3.44.1 (2023-03-28)
#### :rocket: New Feature
* Added possibility to specify aliases for dynamic parameters in path `b-router` `core/router`
## v3.43.1 (2023-03-27)
#### :bug: Bug Fix
* Fixed a bug when typograf does not support the given locale `build/snakeskin`
## v3.43.0 (2023-03-23)
#### :bug: Bug Fix
* Added automatic `item.value` generation `bTree` `bList`
* Fixed overloads for `fold`/`unfold` methods `bTree`
## v3.42.1 (2023-03-14)
#### :nail_care: Polish
* Changed `activeElement` getter return type `bList`
## v3.42.0 (2023-03-14)
#### :bug: Bug Fix
* Removed some options of `html-webpack-plugin` that causes bugs
* Fixed replace pattern for `i18n` webpack plugin
## v3.41.0 (2023-03-14)
#### :boom: Breaking Change
* Renamed option `Item['id']` to `Item['value']` `bTree`
#### :rocket: New Feature
* Added a new trait `iActiveItems`
* Added `iActiveItems` implementation `bTree` `bList`
## v3.40.1 (2023-03-13)
#### :bug: Bug Fix
* Fixed Windows support in localization plugin `build/webpack/plugins/i18n-plugin`
## v3.40.0 (2023-03-10)
#### :house: Internal
* Updated `html-loader@4.2.0`
* Added variable `BUILD_MODE` into `index.d.ts` from webpack globals
* Added the possibility to change the manifest href and added `use-credentials` attribute
## v3.39.0 (2023-03-07)
#### :rocket: New Feature
* Added new options `i18n` `config`
* Added a new plugin `i18n-plugin` `build/webpack`
## v3.38.0 (2023-02-20)
#### :bug: Bug Fix
* Fixed use of `i18n` function in default prop values `iBlock`
## v3.37.0 (2023-02-20)
#### :bug: Bug Fix
* Downgraded `css-loader` version for fix svg bundling
## v3.36.0 (2023-02-14)
#### :house: Internal
* Replaced `fast-css-loader` with `css-loader`
## v3.35.0 (2023-02-14)
#### :boom: Breaking Change
* Changed `i18n` function type from prop to getter `iBlock`
#### :rocket: New Feature
* Integrating the new internationalization API
## v3.34.1 (2023-01-31)
#### :house: Internal
* Added the ability to specify webpack aliases from the config `build/webpack/alias`
## v3.34.0 (2023-01-30)
#### :boom: Breaking Change
* [Now `commonjs` module will not be installed for typescript processing into `fathtml` mode, instead `module` from `tsconfig` will be taken by default `config/default`](https://github.com/V4Fire/Client/discussions/773)
#### :house: Internal
* Added `test:circular-deps` npm script for analyzing circular deps
* Fixed few circular deps
## v3.33.0 (2022-12-28)
#### :rocket: New Feature
* Added the ability to manipulate meta information of a page with `super/i-static-page/modules/page-meta-data`
## v3.32.1 (2022-12-26)
#### :bug: Bug Fix
* Fixed a bug with not setting an initial value of `hidden` modifier `base/b-bottom-slide`
## v3.32.0 (2022-12-21)
#### :rocket: New Feature
* `bTree`:
* Added new methods `traverse`, `fold`, `unfold`, `toggleFold`
* Added a new modifier `clickableArea`
#### :bug: Bug Fix
* `bTree`:
* Fixed passing props to nested trees
* Fixed an issue with the prop `itemProps` not being added to items attributes
* Fixed adding the `folded_false` class to items without children
## v3.31.0 (2022-12-06)
#### :rocket: New Feature
* Added possibility to disable specific link interception
## v3.30.2 (2022-11-17)
#### :bug: Bug Fix
* Fixed soft transitions with array parameters `base/b-router`
* Fixed an issue with testing userAgent string for desktop Safari `core/browser`
## v3.30.1 (2022-10-25)
#### :bug: Bug Fix
* Fixed an issue with wrong arguments was provided into `getItemKey` `base/b-virtual-scroll`
## v3.30.0 (2022-10-19)
#### :rocket: New Feature
* `iBlock`:
* Added a new `InfoRender` module
* Added a new `initInfoRender` method
## v3.29.0 (2022-09-13)
#### :boom: Breaking Change
* Removed `global/g-visible`
* Renamed the global `hide-if-offline` attribute to `data-hide-if-offline` `iStaticPage`
#### :bug: Bug Fix
* The online watcher is now created with the `immediate` flag `iStaticPage`
#### :memo: Documentation
* Added missing documentation `data-hide-if-offline` `iStaticPage`
## v3.28.0 (2022-09-12)
#### :boom: Breaking Change
* Removed `printLn-progress-view` `build/webpack/plugins/progress-plugin`
### :bug: Bug Fix
* Now `WebpackProgressPlugin` properly work with the Webpack watch mode `build/webpack/plugins/progress-plugin`
### :rocket: New Feature
* Now `WebpackProgressPlugin` work within the CI environment `build/webpack/plugins/progress-plugin`
## v3.27.0 (2022-08-30)
#### :boom: Breaking Change
* Update `favicons` dependency on beta version `favicons@7.0.0`
* Now `static:favicons:build` working with `favicons@7` `build/gulp`
#### :rocket: New Feature
* Added helpers for working with favicons assets `build/helpers`
* Added favicons folder path in the global `PATH` variable `build/webpack/plugins`
* Added global styles to hide elements if there is no internet connection `src/global/g-visible`
* Now the `iVisibile` trait can hide components if there is no internet connection `src/traits/i-visible`
## v3.26.0 (2022-08-26)
#### :boom: Breaking Change
* `build.demoPage` is a function now `config/default`
## v3.25.0 (2022-08-19)
#### :boom: Breaking Change
* Changed calculation of `textHintWithIndent` to concatenation `bInput.value` and `textHint` without space between it `form/b-input`
## v3.24.2 (2022-08-19)
#### :house: Internal
* Provided unsafe access to the `engine` field `base/b-router`
## v3.24.1 (2022-08-19)
#### :house: Internal
* Refactor of the statoscope config build script `build/build-statoscope`
## v3.24.0 (2022-08-12)
#### :boom: Breaking change
* Removed outdated helpers for webpack stats files `build/gulp`
#### :rocket: New Feature
* Added a new plugin `statoscope-webpack-plugin` `build/webpack`
* Added a new script to build the statoscope config file `build/build-statoscope`
## v3.23.10 (2022-08-12)
#### :bug: Bug Fix
* Global component styles are no longer loaded using `import()` `build/monic`
## v3.23.8 (2022-07-22)
#### :bug: Bug Fix
* Fixed opening a link in a new tab with the CMD meta key on macOS `base/b-router`
## v3.23.7 (2022-07-22)
#### :bug: Bug Fix
* [Removed ES6 code from the prelude loader](build/webpack/loaders/prelude-loader.js)
## v3.23.6 (2022-07-13)
#### :bug: Bug Fix
* [Added a new TypeScript transformer to transpile modern regexps for integrability with polyfills](build/ts-transformers)
## v3.23.4 (2022-07-08)
#### :house: Internal
* [Removed setting of `optimization.moduleIds`](build/webpack/optimization.js)
## v3.23.3 (2022-07-08)
#### :rocket: New Feature
* [Added a new method to import modules into the test environment `tests/helpers/utils#import`](tests/helpers/utils.ts)
#### :house: Internal
* [`optimization.moduleIds` is now set as `named`](build/webpack/optimization.js)
* All test helpers now have static methods (similar to prototype methods)
* Test migration from outdated API:
* `b-form`
* `b-button`
* `b-checkbox`
## v3.23.2 (2022-07-04)
#### :bug: Bug Fix
* [Fixed an issue with test server being spawned with incorrect `cwd`](tests/server/config.ts)
## v3.23.1 (2022-06-14)
#### :bug: Bug Fix
* Fixed `textHint` position `form/b-input`
## v3.23.0 (2022-05-27)
#### :rocket: New Feature
* Added a new checker `is.Safari` `core/browser`
#### :bug: Bug Fix
* Fixed a bug with the History API router engine when backing to the first history item doesnโt emit a popstate event in Safari if the script is running within an iframe `core/router/engines/browser-history`
## v3.22.0 (2022-05-26)
#### :boom: Breaking Change
* Replaced `simpleProgressWebpackPlugin` to a custom plugin
* Removed generation of redundant artifacts (`license.txt`, empty entry files) `build`
* Now all comments are removed from compiled CSS files by default
#### ๐ Bug Fix
* Removed deadlock during execution of Snakeskin templates `i-static-page/modules/ss-helpers`
#### :house: Internal
* Added human-readable names for all registered webpack process `build/webpack`
## v3.21.1 (2022-05-25)
#### ๐ Bug Fix
* Fixed `b-input` overflowing when `textHint` provided `form/b-input`
## v3.21.0 (2022-05-24)
#### :rocket: New Feature
* Added a new prop `textHint` to show extra text after the component non-empty input `form/b-input`
## v3.20.0 (2022-04-25)
#### :boom: Breaking Change
* Removed `worker-loader` `build`
* Removed all options associated with `worker-loader` `config`
## v3.19.2 (2022-04-19)
#### :bug: Bug Fix
* Fixed a bug with `iHistory` repeatedly initializing when opening bottom-slide from a non-zero step `base/b-bottom-slide`
#### :house: Internal
* Downgraded TS to `4.6.2`
## v3.19.1 (2022-04-12)
#### :house: Internal
5.0 typescript@4.6.3
## v3.19.0 (2022-04-06)
#### :boom: Breaking Change
* The old test API is now deprecated:
* `test.d.ts` was removed
* The `config` package now uses an alias `@config/config`
* [Test helpers was rewritten to `TS`](docs/tests/migration/README.md#changing-the-test-helper-api)
#### :rocket: New Feature
* [Add new test API](docs/tests/migration/README.md)
# v3.18.6 (2022-05-02)
#### :bug: Bug Fix
* `updateRequest` is now returns a `RequestPromise` `core/session`
# v3.18.5 (2022-04-02)
#### :bug: Bug Fix
* Fixed sprite inheritance `traits/i-icon`
# v3.18.4 (2022-04-01)
#### :bug: Bug Fix
* Fixed a bug when event data is provided as a promise `iData`
## v3.18.2 (2022-03-22)
#### :bug: Bug Fix
* Fixed an issue with `initLoad` race condition `base/b-virtual-scroll`
## v3.18.1 (2022-03-05)
#### :house: Internal
* Freezing versions of all dependencies from package.json
## v3.18.0 (2022-03-04)
#### :boom: Breaking Change
* If an element destructor returns `true` then the element won't be destroyed `super/i-block/modules/async-render`
## v3.17.0 (2022-02-24)
#### :boom: Breaking Change
* Now components don't force rendering on re-activation `iBlock`
#### :rocket: New Feature
* Added a new prop `renderOnActivation` `iBlock`
## v3.16.2 (2022-02-22)
#### :bug: Bug Fix
* Fixed an issue with the `nonceStore.result` field `config`
## v3.16.1 (2022-02-15)
#### :bug: Bug Fix
* [Fixed an issue with `b-slider` works incorrectly in a slider mode `base/b-slider`](https://github.com/V4Fire/Client/issues/691)
## v3.16.0 (2022-02-09)
#### :rocket: New Feature
* [Now `monic` options are passed to `pzlr` when building a dependency graph `build/graph`](https://github.com/V4Fire/Client/issues/684)
* [Added a new `build.mode` config variable `config/default`](https://github.com/V4Fire/Client/issues/685)
## v3.15.5 (2022-02-03)
#### :bug: Bug Fix
* Fixed an issue with the `test:component:build` command did not wait for completion of the project build operation `build/gulp/test`
* Changed a script to patch the Webpack stats' file for Statoscope `build/helpers/webpack`
## v3.15.4 (2022-01-24)
#### :boom: Breaking Change
* The event`chunkRenderStart` is renamed to `chunkRender:renderStart` and now it emits before a component driver renders components `base/b-virtual-scroll`
#### :rocket: New Feature
* Added new events `chunkRender:*` `base/b-virtual-scroll`
## v3.15.3 (2021-12-28)
#### :bug: Bug Fix
* Fixed linking to `globalThis` `core/prelude/webpack`
## v3.15.2 (2021-12-28)
#### :bug: Bug Fix
* Fixed watching of computed properties that tied with mounted watchers `core/object/watch`
## v3.15.1 (2021-12-17)
#### :bug: Bug Fix
* Fixed a bug with forwarding Webpack params `build/gulp`
## v3.15.0 (2021-12-16)
#### :boom: Breaking Change
* Now `webpack` & `@v4fire/core` are marked as peer-dependencies
#### :bug: Bug Fix
* Fixed issues with symlinks `build`
* Fixed a bug with Webpack params forwarding into gulp tasks `build/gulp`
## v3.14.0 (2021-12-08)
#### :boom: Breaking Change
* Moved from `Sugar/camelize/string-dasherize/urlconcat` to `@v4fire/core`
## v3.13.3 (2021-12-08)
#### :bug: Bug Fix
* Removed the race condition while loading a new page `bDynamicPage`
## v3.13.2 (2021-12-06)
#### :house: Internal
* [Wrapped animations with `requestAnimationFrame`](https://github.com/V4Fire/Client/issues/170)
## v3.13.1 (2021-12-02)
#### :house: Internal
* Bumped `node/npm` within `ci`
* Removed unsafe `<any>` casts
## v3.13.0 (2021-11-29)
#### :boom: Breaking Change
* Removed `typograf-loader` `build/webpack`
#### :house: Internal
* Don't apply `symbol-generator-loader` for ES6+ `build/webpack`
## v3.12.2 (2021-11-26)
#### :bug: Bug Fix
* Fixed bugs from migration to `webpack-cli@4`
## v3.12.1 (2021-11-26)
#### :bug: Bug Fix
* Fixed using `asyncRender` within nested flyweight components `core/component/render-function`
* Fixed a bug when a build was failed without passing a design system package name at the environment `build/stylus`
## v3.12.0 (2021-11-26)
#### :boom: Breaking Change
* Migration to `webpack-cli@4`
#### :house: Internal
* Replaced `uniconf` to `@v4fire/config`
## v3.11.4 (2021-11-24)
#### :bug: Bug Fix
* Don't cache computed properties within flyweight components `core/component/accessor`
## v3.11.3 (2021-11-24)
#### :bug: Bug Fix
* Don't immediately destroy functional components `iBlock`
## v3.11.2 (2021-11-24)
#### :house: Internal
* Added a new Gulp task to patch Webpack stats reports `build/gulp`
## v3.11.1 (2021-11-22)
#### :house: Internal
* Added possibility to redefine Statoscope size and download time limit `config`
## v3.11.0 (2021-11-18)
#### :rocket: New Feature
* Added a new Gulp task to purify Webpack stats reports `build/gulp`
#### :bug: Bug Fix
* Fixed bugs with transforming `stats` reports `build/gulp`
## v3.10.2 (2021-11-16)
#### :bug: Bug Fix
* Now `callControlAction` fully respects promise values `iControlList`
## v3.10.1 (2021-11-16)
#### :bug: Bug Fix
* Now `callControlAction` respects promise values `iControlList`
## v3.10.0 (2021-11-16)
#### :boom: Breaking Change
* Removed legacy filters for `:key` attributes `build/snakeskin`
#### :rocket: New Feature
* Now `get` can access properties through promises `super/i-block/modules/field`
* `build/webpack`:
* Deleted a Webpack plugin `statoscopePlugin`
* Added a new Webpack plugin `SimpleProgressWebpackPlugin` to view the current build status
* Added a gulp task to transform `stats` reports from Webpack `build/gulp`
* Added a config for Statoscope `config`
## v3.9.1 (2021-11-09)
#### :boom: Breaking Change
* Now base CSS styles are synchronously loaded by default if enabled CSP `iStaticPage`
## v3.9.0 (2021-11-08)
#### :rocket: New Feature
* Added a new Webpack plugin `statoscopePlugin` `build/webpack`
* [Added `optionsResolver` into `core/dom/image`](https://github.com/V4Fire/Client/issues/168)
* `base/b-virtual-scroll`:
* [Added a new event `chunkRenderStart`](https://github.com/V4Fire/Client/issues/651)
* [Added `pageNumber` in `chunkLoaded` event](https://github.com/V4Fire/Client/issues/651)
#### :bug: Bug Fix
* Fixed invalid escaping of `csp.nonce` `iStaticPage`
#### :house: Internal
* Added `TestParams` interface for `BrowserTests` `test.d.ts`
## v3.8.3 (2021-10-26)
#### :bug: Bug Fix
* Fixed a bug with removing a modifier from the passed node `super/i-block/modules/block`
## v3.8.2 (2021-10-26)
#### :bug: Bug Fix
* Fixed providing of hooks to directives within non-regular components `core/component/engines`
## v3.8.1 (2021-10-25)
#### :house: Internal
* Updated dependencies: `playwright@1.16.1`, `webpack@5.60.0`
## v3.8.0 (2021-10-25)
#### :rocket: New Feature
* Added a new Snakeskin block `render` `iBlock`
## v3.7.0 (2021-10-25)
#### :boom: Breaking Change
* Deprecate test methods:
* `DOM.waitForEl`
* `DOM.isVisible`
* `Request.waitForRequests`
* `Request.waitForRequestsFail`
* `Request.interceptRequest`
* `Request.interceptRequests`
* `Request.waitForRequestsEvents`
* `Utils.setup`
* `Utils.reloadAndWaitForIdle`
* `Component.setPropsToComponent`
* `Component.reloadAndSetProps`
#### :rocket: New Feature
* Added a new `?inline` parameter for assets loaders `build/webpack`
#### :house: Internal
* `runtime-render` test argument is no longer needed and supported
#### :nail_care: Polish
* Added better test documentation
## v3.6.1 (2021-10-14)
#### :house: Internal
* Added a new Gulp task `gulp build:components-lock`
## v3.6.0 (2021-10-14)
#### :rocket: New Feature
* Added a new parameter `componentLockPrefix` `config.build`
## v3.5.5 (2021-10-13)
#### :bug: Bug Fix
* Fixed ordering of dependencies loading `build/monic/attach-component-dependencies`
## v3.5.4 (2021-10-12)
#### :bug: Bug Fix
* Fixed a bug when dynamically loaded templates aren't registered to the global `TPLS` cache `build/monic/attach-component-dependencies`
* Fixed an issue when `component` returns `undefined` `bRouter`
#### :nail_care: Polish
* Show browser version before tests
## v3.5.3 (2021-10-06)
#### :bug: Bug Fix
* Fixed synchronization of values during input events:
* `bInput`
* `bSelect`
#### :nail_care: Polish
* Show Playwright version before tests
## v3.5.2 (2021-10-06)
#### :bug: Bug Fix
* Fixed providing of meta parameters via transitions `bRouter`
* [Fixed an issue with failed tests not being displayed as failed `build/gulp/test`](https://github.com/V4Fire/Client/issues/620)
#### :house: Internal
* Updated dependencies: `typescript@4.4.3`, `eventemitter2@6.4.5`, `playwright@1.15.2`
## v3.5.1 (2021-09-20)
#### :bug: Bug Fix
* Fixed crashing when building the app when enabled `dynamicPublicPath` `global/g-def`
## v3.5.0 (2021-09-16)
#### :boom: Breaking Change
* Renamed `browser.history` to `browser-history` `core/router/engines`
#### :rocket: New Feature
* Added a new router engine `core/router/engines/in-memory`
#### :bug: Bug Fix
* Fixed calling of the `getBrowserArgs` function `build/helpers/test`
* Fixed some cases when the previous page `bDynamicPage`
#### :house: Internal
* `bRouter`:
* Added new tests for the `in-memory` engine
* Call `updateCurrentRoute` only when `basePath` prop changes but not the property itself
## v3.4.0 (2021-09-09)
#### :boom: Breaking Change
* `build`:
* Most of webpack config files moved to the `webpack` folder
* Renamed the `replacers` folder to `monic`
#### :house: Internal
* Review `build` modules
## v3.3.4 (2021-09-06)
#### :bug: Bug Fix
* Now `fatHTML` can be provided as a boolean `config`
#### :house: Internal
* Updated dependencies: `typescript@4.4.2`
## v3.3.3 (2021-08-13)
#### :bug: Bug Fix
* Fixed providing of a dynamic public path to styles `build`
## v3.3.2 (2021-08-12)
#### :bug: Bug Fix
* Testing the particular color to detect if a style is already loaded `build`
## v3.3.1 (2021-08-12)
#### :bug: Bug Fix
* Provide magic comments to dynamic imports `build`
## v3.3.0 (2021-08-12)
#### :rocket: New Feature
* Added `stats.webpack` `build`
* `config`:
* Added `webpack.stats`
* Added providing of default parameters
* Now `webpack.fatHTML` has different modes
#### :bug: Bug Fix
* Added normalizing of trailing slashes from `webpack.publicPath` `iStaticPage`
* Added `webpack.stats` `config`
* `build`:
* Added support for magic comments within imports
* Added support for the --json parameter
* Hid invalid build warnings
#### :memo: Documentation
* Added documentation `iStaticPage`
#### :house: Internal
* Added `webpack-bundle-analyzer`
* Updated dependencies:
* `webpack@5.50.0`
* `gulp-favicons@3.0.0`
* `style-loader@3.2.1`
* `svg-sprite-loader@6.0.9`
* `svgo@2.3.1`
* `svgo-loader@3.0.0`
* `css-minimizer-webpack-plugin@3.0.2`
* `mini-css-extract-plugin@2.2.0`
* `cssnano@5.0.7`
* `postcss@8.3.6`
* `postcss-loader@6.1.1`
* `autoprefixer@10.3.1`
* `stylus-loader@6.1.0`
* `html-loader@2.1.2`
## v3.2.3 (2021-08-05)
#### :bug: Bug Fix
* Fixed providing of `keepAlive` `bDynamicPage`
## v3.2.2 (2021-08-05)
#### :bug: Bug Fix
* Fixed an issue when `PUBLIC_PATH` is providing via `definePlugin` `core/prelude/webpack`
## v3.2.1 (2021-08-05)
#### :bug: Bug Fix
* Fixed normalizing of `--public-path` `config`
## v3.2.0 (2021-08-05)
#### :rocket: New Feature
* Added a new parameter `--inline-initial` `config`
## v3.1.0 (2021-08-04)
#### :rocket: New Feature
* `iBlock`:
* Added a new `stage` modifier
* Added a new event `mounted`
#### :bug: Bug Fix
* Fixed a route comparison in the transition handler `super/i-block/modules/activation`
* `iStaticPage`:
* Fixed project building without `--public-path`
* Don't attach favicons if they are disabled
#### :house: Internal
* Marked the `hook` setter as protected `iBlock`
## v3.0.1 (2021-07-28)
#### :bug: Bug Fix
* Fixed building favicons from parent layers `iStaticPage`
## v3.0.0 (2021-07-27)
#### :rocket: New Feature
* Initial release:
* `bDummyModuleLoader`
* `bDummyState`
#### :bug: Bug Fix
* Fixed removing of modifiers `super/i-block/modules/state`
#### :house: Internal
* Added tests:
* `super/i-block/modules/module-loader`
* `super/i-block/modules/state`
* `super/i-block/modules/vdom`
## v3.0.0-rc.216 (2021-07-26)
#### :bug: Bug Fix
* Fixed providing `watchProp` in an object form `iBlock`
#### :rocket: New Feature
* Initial release `bDummyDecorators`
## v3.0.0-rc.215 (2021-07-25)
#### :bug: Bug Fix
* Fixed a bug when the `component` getter is `undefined`.
Now the getter can return a promise in that case `base/b-dynamic-page`.
* Fixed canceling of previous tasks with `scrollToProxy` `iPage`
* Restored support of favicons `build/static.gulp` `iStaticPage`
#### :house: Internal
* Added tests:
* `iPage`
* `iStaticPage`
## v3.0.0-rc.214 (2021-07-22)
#### :boom: Breaking Change
* Now `providerDataStore` implements `core/cache` `i-static-page/modules/provider-data-store`
#### :memo: Documentation
* Added documentation `i-static-page/modules/provider-data-store`
## v3.0.0-rc.213 (2021-07-22)
#### :bug: Bug Fix
* Fixed invalid resolving of `r` `iBlock`
## v3.0.0-rc.212 (2021-07-22)
#### :bug: Bug Fix
* Fixed an issue when Vue drops a prototype from the route object `iStaticPage`
* Fixed an issue with dynamically created components and the `r` getter `iBlock`
* Fixed an issue when passed route parameters ignored if defined the `alias` property `core/router`
## v3.0.0-rc.211 (2021-07-21)
#### :boom: Breaking Change
* Now the component uses `<section>` within `bWindow`
* Now the component uses `<main>` within `bDynamicPage`
* Now the component uses `<aside>` within `bSidebar`
* [Fixed an issue with providing analytics data into `traits/i-control-list`](https://github.com/V4Fire/Client/issues/452)
* Now the trait sets the `disabled` modifier on progress `traits/i-progress`
* Now the component uses `<button>` is not specified `href` `bList`
#### :rocket: New Feature
* Initial release:
* `bDummyLfc`
* `bDummySync`
* `bDummyWatch`
* Added new tag name filters `:section` and `:-section` `build/snakeskin`
* Added new props `rootTag` and `rootAttrs` `iBlock`
* Added `topPath` and `originalTopPath` `core/component/reflection/getPropertyInfo`
* Now the trait uses `aria` attributes:
* `traits/i-visible`
* `traits/i-access`
* Now the component uses `aria` attributes:
* `bSelect`
* `bList`
* `bButton`
* `bList`:
* Added a new prop `attrsProp`
* Added new props `listTag` and `listElTag`
* `bButton`:
* Added a new prop `attrsProp`
* Added a new getter `hasDropdown`
#### :bug: Bug Fix
* Provided the `lang` attribute to `<html>` `iStaticPage`
* Fixed a bug when providing `href` to `dataProvider` `bButton`
* Fixed a bug when mutations of the nested path can't be caught `super/i-block/modules/sync`
* Fixed watching with parameters `{immediate: true, collapse: true}` `core/component/watch`
* [Fixed an issue that allows for pulling an element far away from the bottom `base/b-bottom-slide`](https://github.com/V4Fire/Client/issues/463)
* Fixed an issue with an element not being visible if the `visible` prop was provided and the `contentMode` was `content` `base/b-bottom-slide`
* Fixed a case when the resolved value of `waitRef` is an empty array `iBlock`
#### :house: Internal
* Removed `jasmine` deps in the `runtime.debug` mode `super/i-static-page`
## v3.0.0-rc.210 (2021-07-07)
#### :boom: Breaking Change
* Migration from `fs-extra-promise` to `fs-extra`
#### :bug: Bug Fix
* `AsyncRender.waitForceRender` should allow the initial render of a component
#### :house: Internal
* Updated dependencies `delay@5.0.0`, `glob-promise@4.2.0`
## v3.0.0-rc.209 (2021-07-06)
#### :rocket: New Feature
* Added possibility to provide the element to drop via a function `super/i-block/modules/async-render`
#### :bug: Bug Fix
* Fixed updating of a component' template after changing a modifier that was registered as watchable `iBlock`
#### :house: Internal
* Updated dependencies `husky@7.0.0`, `tslib@2.3.0`, `ts-loader@9.2.3`
## v3.0.0-rc.208 (2021-06-29)
#### :bug: Bug Fix
* `super/i-block/modules/async-render`:
* Don't render empty iterables
* Fixed infinity loop with `waitForceRender`
## v3.0.0-rc.207 (2021-06-28)
#### :rocket: New Feature
* Initial release `bDummyAsyncRender`
#### :bug: Bug Fix
* Fixed emitting of `asyncRenderComplete` `super/i-block/modules/async-render`
## v3.0.0-rc.206 (2021-06-28)
#### :rocket: New Feature
* Added `activate` and `deactivate` to `ComponentInterface` `core/component`
#### :bug: Bug Fix
* Fixed a bug when `isActivated` returns `undefined` `iBlock`
* Fixed a bug when async rendered components don't call their destructors after removing from DOM `super/i-block/modules/async-render`
## v3.0.0-rc.205 (2021-06-24)
#### :rocket: New Feature
* Now converter functions `dbConverter`, `componentConverter`, `formConverter`, `formValueConverter` take a context
as the second argument
#### :bug: Bug Fix
* Fixed applying of form converters `bForm`
* Fixed initializing of system fields `core/component/flyweight`
* Fixed a bug when a hook listener with the `once` modifier does not drop after usage
if there are no more listeners to the same hook `core/component/hook`
* `super/i-block/modules/async-render`:
* Now all operations that are registered by asyncRender use only `async`, but not `$async`
* Fixed a bug when rendered chunk are destroyed after creation when passed a custom async group
#### :house: Internal
* Moved form data converting to `core/request` `bForm`
## v3.0.0-rc.204 (2021-06-23)
#### :boom: Breaking Change
* `super/i-block/modules/async-render`:
* Now to iterate objects is used `Object.entries`
* Now `filter` with a negative value removes elements from the render queue
#### :bug: Bug Fix
* Fixed async rendering with text elements `core/component/engines/vue/vnode`
* Fixed a bug when removing a valid keep-alive element from the cache `bDynamicPage`
## v3.0.0-rc.203 (2021-06-21)
#### :boom: Breaking Change
* Now `formValue` returns an array if the component is switched to the `multiple` mode `bSelect`
* Removed `iBlock.lazy`
#### :rocket: New Feature
* Added a new associated type `bList.Active`
#### :bug: Bug Fix
* Fixed caching of form values `bForm`
* Fixed a bug after setting a non-exist property that has bound watchers `super/i-block/modules/field`
* Fixed importing of `ModsTable` `bList`
* Do not take into account page location when constructing icon link `traits/i-icon/i-icon`.
See [issues/554](https://github.com/V4Fire/Client/issues/554).
#### :memo: Documentation
* Improved documentation `super/i-block/modules/field`
#### :house: Internal
* Added tests `super/i-block/modules/field`
## v3.0.0-rc.202 (2021-06-18)
#### :bug: Bug Fix
* `bSelect`:
* Empty value should be equal to `undefined`
* Resetting of the component should also reset `text`
#### :house: Internal
* Added tests `bSelect`
## v3.0.0-rc.201 (2021-06-17)
#### :boom: Breaking Change
* The component was renamed `b-input-birthday` -> `b-select-date`
* Removed `bFileButton`
#### :rocket: New Feature
* Added a new `file` type `bButton`
#### :memo: Documentation
* Added documentation `bSelectDate`
#### :house: Internal
* Fixed ESLint warnings `bSelectDate`
## v3.0.0-rc.200 (2021-06-17)
#### :bug: Bug Fix
* `bSelect`:
* Fixed a bug when changing of `value` does not emit selection of items
* Fixed built-in `required` validator
#### :memo: Documentation
* Added documentation:
* `bSelect`
* `bIconButton`
## v3.0.0-rc.199 (2021-06-16)
#### :boom: Breaking Change
* Now `toggle` returns a component value `bCheckbox`
* Moved from `base` to `dummies` `bDummy`
* Removed `bInputTime`
* Removed `bScroll`
* `bList`:
* `Items.classes` was replaced with `Items.mods`
* Now `toggleActive` returns a new active item
* New public API for `isActive`
* Removed deprecated API
* Now the component inherits `iInputText`:
* `bInput`
* `bTextarea`
* `bSelect`
* `bInput`:
* Removed `&__super-wrapper`
* New API of component validators
* `bSelect`
* Now the component inherits `iInputText`
* Now the component implements `iItems`
* `bForm`:
* Now `validate` returns `ValidationError` in case of failed validation
* Renamed `ValidateParams` to `ValidateOptions`
* Changed the root tag `div` to `form`
* Removed the `form` ref and block
* Changed the default value of `method` from `add` to `post`
* Removed legacy logic of the `'_'` name
* Deprecated `ValidationError.el` and `ValidationError.validator`
* Deprecated `values`
* `iInput`:
* Removed `valueKey`
* Now `groupFormValue` always returns an array
* Renamed `dataType` to `formValueConverter`
* Renamed `hiddenInputTag` to `nativeInputTag`
* Renamed `hiddenInputType` to `nativeInputType`
* Renamed `hiddenInputModel` to `nativeInputModel`
#### :rocket: New Feature
* Added `bDummyText`
* Added `iInputText`
* Added support of the default slot `bDummy`
* Added support of interpolation of a data provider response `iInput`
* Added `isChecked` `bCheckbox`
* `bSelect`:
* Added a feature of multiple selection
* Added `isSelected/selectValue/unselectValue/toggleValue`
* `bList`:
* Now `Items.classes` uses to provide extra non-modifier classes to an element
* Now `setActive/unsetActive/toggleActive` can take multiple values
* `bForm`:
* Added `getElValueToSubmit`
* Added the `submitEnd` event
* Added `ValidationError.name/component/details`
* Added `getValues`
* Added `toggleControls`
* Now `ValidationError` is a class
* Now `submit` returns a value
* Improved submit events
* `iInput`:
* Now `formValueConverter` can be provided as an array
* Added support for the `Maybe` structure
* Added `attrsProp/attrs` properties
* Added the `normalizeAttrs` method
* Added the `nativeInput` block
#### :bug: Bug Fix
* Payload of the `actionChange` event must contain `value`, but not `mods.checked` `bCheckbox`
* Now `normalizeItems` does not modify the original object `bList`
* [Fixed a bug when using the trait by different components concurrently `traits/i-lock-page-scroll`](https://github.com/V4Fire/Client/issues/549)
* Fixed a bug when the `cache: false` predicate is ignored if provided `dependencies` `core/component/decorators`
* Fixed a deadlock during component activation `super/i-block/modules/activation`
* [Get rid of a redundant router transition when restoring the page from bfcache in safari `core/router/engines/browser.history`](https://github.com/V4Fire/Client/issues/552)
#### :memo: Documentation
* Added documentation:
* `bCheckbox`
* `bRadioButton`
* `bInputHidden`
* `bForm`
* `bInput`
* `bTextarea`
#### :house: Internal
* `iInput`:
* Improved error handling
* Added `UnsafeIInput`
* Fixed ESLint warnings:
* `bCheckbox`
* `bRadioButton`
* `bInputHidden`
* `bForm`
* `bInput`
* `bTextarea`
* `bSelect`
* Added tests:
* `bCheckbox`
* `bRadioButton`
* `bInputHidden`
* `bForm`
* `bInput`
* `bTextarea`
## v3.0.0-rc.198 (2021-06-08)
#### :rocket: New Feature
* Now all watchers support suspending
## v3.0.0-rc.197 (2021-06-07)
#### :boom: Breaking Change
* Removed initialization of `iProgress` modifier event listeners `iData`
#### :bug: Bug Fix
* Fixed an issue with `bBottomSlide` not being able to open from the pull
* Fixed an issue with `bBottomSlide` not being able to initialize `i-history` if the component was opened via swipe
#### :memo: Documentation
* Added documentation `iDynamicPage`
#### :house: Internal
* Added initialization of `iProgress` modifier event listeners `bButton`
## v3.0.0-rc.196 (2021-05-28)
#### :boom: Breaking Change
* Now `isReady` returns `true` if a component in `inactive` `super/i-block/modules/activation`
## v3.0.0-rc.195 (2021-05-28)
#### :memo: Documentation
* Added documentation `iPage`
#### :house: Internal
* Improved restoring of scroll `bRouter`
## v3.0.0-rc.194 (2021-05-28)
#### :bug: Bug Fix
* Fixed a bug with referencing a closure' value `AsyncRender.iterate`
## v3.0.0-rc.193 (2021-05-28)
#### :bug: Bug Fix
* Fixed a bug when switching pages via `pageProp` and `page` `bDynamicPage`
## v3.0.0-rc.192 (2021-05-27)
#### :rocket: New Feature
* Rewritten with a new keep-alive strategy `bDynamicPage`
* Added a new event `asyncRenderChunkComplete` `super/i-block/modules/async-render`
#### :bug: Bug Fix
* Fixed an issue when `bDynamicPage` is deactivated on initializing `iBlock`
* Fixed an issue when activation events won't propagate to child components `super/i-block/modules/activation`
* Fixed the scroll restoring after a transition `bRouter`
* Prevented the infinity loop when passing non-iterable objects to `iterate` `super/i-block/modules/async-render`
#### :memo: Documentation
* Added documentation `bDynamicPage`
## v3.0.0-rc.191 (2021-05-24)
#### :rocket: New Feature
* `super/i-block/modules/async-render`:
* Added overloads for infinite iterators
* Added `waitForceRender`
#### :bug: Bug Fix
* Fixed a bug when using `self.load modules` with the same options within different components `iBlock`
* Don't provide attributes that match with modifiers `super/i-block/modules/mods`
## v3.0.0-rc.190 (2021-05-17)
#### :bug: Bug Fix
* Fixed resolving of refs `core/component/engines/zero`
## v3.0.0-rc.189 (2021-05-13)
#### :bug: Bug Fix
* Hotfix for v3.0.0-rc.188 :(
## v3.0.0-rc.188 (2021-05-14)
#### :rocket: New Feature
* Added a feature to attach listeners on promises with emitters by using `@watch` `core/component/watch`
#### :bug: Bug Fix
* Don't skip a context of `createElement` `core/component/render-function`
## v3.0.0-rc.187 (2021-05-13)
#### :bug: Bug Fix
* Hotfix for v3.0.0-rc.186 :(
## v3.0.0-rc.186 (2021-05-13)
#### :bug: Bug Fix
* Fixed context providing to functional components `core/component/render-function`
* Fixed transforming of smart components `build/snakeskin`
## v3.0.0-rc.185 (2021-05-13)
#### :bug: Bug Fix
* Fixed a bug with using css-property `pointer-events: none` in Safari in `traits/i-access` and `traits/i-progress`
## v3.0.0-rc.184 (2021-05-12)
#### :rocket: New Feature
* Improved traits to support auto-deriving:
* `iLockPageScroll`
* `iOpen`
* `iOpenToggle`
* `iAccess`
* `iIcon`
* `iObserveDom`
#### :memo: Documentation
* Added documentation:
* `traits`
* `traits/i-open`
* `traits/i-open-toggle`
## v3.0.0-rc.183 (2021-05-12)
#### :bug: Bug Fix
* Fixed a bug with functional components after adding Zero `core/component/render-function`
* Fixed a bug while initializing Zero `core/component/engines/zero`
## v3.0.0-rc.182 (2021-04-28)
#### :rocket: New Feature
* Now a route pattern can be a function
#### :bug: Bug Fix
* Fixed an issue with `optionKey` being ignored `base/b-virtual-scroll`
#### :house: Internal
* Extracted `compileStaticRoutes` from `bRouter` to `core/router`
## v3.0.0-rc.181 (2021-04-20)
#### :bug: Bug Fix
* [Fixed an issue with `itemProps` not being provided to child components `base/b-virtual-scroll`](https://github.com/V4Fire/Client/issues/512)
#### :house: Internal
* Extracted some helpers and interfaces from `bRouter` to `core/router`
## v3.0.0-rc.180 (2021-04-16)
#### :rocket: New Feature
* `core/compone