jquery__config
uses jQuery 2.x by default for modern browsers (#319).- Add ability to use any BEMJSON as value of attributes in BEMHTML templates (#290).
- Fix dependencies in
i-bem__collection
(#292). - Remove
page
block's touch styles (#306). - Fix
page
BEMHTML wrapping in production mode (#309). - Fix possible JavaScript error in script injection in IE<9 in
next-tick
(#324). - Fix
FastClick
initialisation injquery__event_type_pointerclick
oftouch.blocks
(#332). - Fix
node.js
tech bug on Windows systems (#274). - Fix
i-bem__dom_elem-instances
bug withonElemSetMod
(#340). - Use bemhtml from bem-xjst (#329).
- ym was updated to 0.0.12 (#326).
- Do not flood
console
with messages ifi-bem__i18n
is not in debug mode (#285). - Fix jsdoc for
dropElemCache()
method ofi-bem__dom
module (#296). - Development infrastructure was updated to [email protected] (#323).
- Russian documentation for
i-bem.js
was updated. - List of supported browsers was specified in project's README.
- Starts using modular system ym.
- Removes all deprecated methods from
i-bem
andi-bem__dom
. i-bem
now has no dependency on jQuery.i-bem__dom
still depends on jQuery.- BEMHTML-template can be written with JS-syntax.
- Introduces new tech
bemtree
(based on bem-xjst) for describing dynamic generation of BEM-tree. - Introduces new tech
vanilla.js
for JS-implementations that does not depend on particular JS-engine. - Introduces new techs
browser.js
иnode.js
for JS-implementations targeted corresponding engines. For backward compatibility we assume that.js
-files containsbrowser.js
implementation. - Introduces polyfill (
jquery__event_type_pointer
andjquery__event_type_pointerclick
as a jQuery-plugins) for universalize desktop and touch pointer events. - Introduces system for unit testing and blocks examples generation.
- Introduces "simple" modifiers (modifiers without value) support in
i-bem
and BEMHTML.
- Gets rid of prefixes in all block names (except
i-bem
). - Block
i-bem__dom
becomes a module (in terms of ym) and allBEM.DOM
-block must define additions toi-bem__dom
(example). - Method for blocks declaration (
.decl()
) does not accept object withname
field as first parameter. Required form withblock
field:BEM.decl({ block: 'b1', modName: 'm', modVal: 'v' }, ...)
. - Introduces
nextTick
method as replacement forafterCurrentEvent
method for ensure of block existence in callback invocation time.BEM.afterCurrentEvent
is deprecated. - Introduces new
channels
module instead ofBEM.channel
.BEM.channel
is deprecated. changeThis
is deprecated. Use nativebind
instead.- Removes
del
method fromi-bem
block. - Removes
getWindowSize
method fromi-bem__dom
block. UseBEMDOM.win.width()
andBEMDOM.win.height()
. - Introduces
jquery
module-wrapper for providing jQuery. If jQuery already included into the page module-wrapper provides it. Otherwise it loads jQuery (version 1.10.1) on its own. $.observable
becomesevents
module and not longer depends on jQuery.$.inherit
becomesinherit
module and not longer depends on jQuery.$.identify
becomesidentify
module and not longer depends on jQuery.$.throttle
splits into two modules:functions__throttle
andfunctions__debounce
, they both not longer depend on jQuery.$.decodeURI
,$.decodeURIComponent
moves toquerystring__uri
module and not longer depends on jQuery.$.cookie
becomescookie
module and not longer depends on jQuery.- Introduces
ua
module instead of$.browser
(with same interface). - Use
pointerclick
instead ofleftclick
. It provides byjquery__event_type_pointerclick
polyfill. i-system
block splits into two modules:idle
andtick
.- Triggers for modifiers changes now splitted into two groups:
before setting new value (
beforeSetMod
andbeforeElemSetMod
) and after the value has been set (onSetMod
andonElemSetMod
). Cancellation of modifiers change is possible only frombefore*
-triggers. - Using of
{ onSetMod : { js : function() { ... } } }
is deprecated, useonSetMod: { js : { inited : ... } } }
. destruct
method fromi-bem
block is deprecated. Use supplementary trigger for_js
modifiers:onSetMod: { js : { inited : ... } } }
—{ onSetMod : { js : { '' : ... } } }
.exractParams
method fromi-bem__dom
block is deprecated. UseelemParams
method for access to elements params.trigger
method fromi-bem
block is deprecated in flavor ofemit
method.onFirst
method fromi-bem
block is deprecated in flavor ofonce
method.- Deprecated field
e.block
that provided block-target of BEM-events was removed. Usee.target
field instead. - Field
e.data.domElem
that provided DOM-element of block in DOM-events was removed. Use$(e.currentTarget)
(provided by jQuery). - Introduces parameter for
findElem
method that allows to search elements of particular block instance (in case of nested blocks with same name). - Introduces possibility to point particular function in
unbindFrom*
methods. - Introduces
objects
module for work with JS-objects. It contains methods:extend
,isEmpty
,each
. - Introduces
functions
module for work with JS-functions. It contains methods:isFunction
,noop
. - Introduces
dom
module for work with DOM-tree. - Introduces
querystring
module for work with URL-based strings. - Introduces
loader_type_js
module for JS loading. - Introduces
vow
module for Promises/A+. - Introduces
next-tick
module as polyfill fornextTick
,setImmediate
,setTimeout(0, ...
and etc. - Introduces
strings__escape
module for XML, HTML and attributes escaping. inherit
module now supports mixins.- Introduces
invokeAsap
parameter forfunctions__throttle
module that allows to delay first invocation.