- Откатили изменение, из-за которого при попытке использования
lazyInit
при деклации модификатора выбрасывалось исключение (#1594).
jQuery
была обновлена до 3.2.1 и 1.12.4 (#1587).
- Исправлена возможность форсировать lazy-инициализацию из разметки (#1579).
- Исправлена возможность декларировать сущности с миксинами (#1550).
- Теперь при попытке использования
lazyInit
при деклации модификатора будет выбрасываться исключение (#1579). - Исправлен баг в методе
isFunction
блокаfunctions
, который неправильно определял сложные функции (#1577).
- Добавлен конфиг
.bemrc
(#1568). - Блок
vow
обновлен до версии 0.4.17 (#1565). - Блок
inherit
обновлен до версии 2.2.6 (#1519). - Удален приватный метод
_delInitedMod
блокаi-bem
(#1523). - Удален код, относящийся к старой версии
bem-tools
(https://github.com/bem/bem-core/commit/e57678b2d64a3b976a53af4a7fa09bf918685821). - Обновлены npm-зависимости (#1589).
- Теперь тесты в CI запускаются и под Node.js 8 (https://github.com/bem/bem-core/commit/dd7e5344a64ad1595eab28febb2242134fcedbb3).
- Добавлены недостающие тесты для блока
i-bem-dom
(#1517). - Добавлен gitbook (#1569).
- Исправления JSDoc.
- Исправления документации.
- Исправлена ошибка с инвалидацией кеша элементов при изменении DOM (#1487).
- Исправлена ошибка в
i-bem-dom__events
, приводившая к тому, что данные события не передавались в обработчик (#1509). - Исправлен метод
isEditable
модуляdom
. Добавлены недостающие типы (#1502).
- Исправлены синтаксические ошибки в JSDoc блока
i-bem-dom
. - Незначительные исправления документации.
- Добавлено CLA.
- В BEMHTML-шаблонах реализована поддержка
bem-xjst 8.x
(#1486).
- Исправлена работа метода
concat()
в i-bem-dom__collection (#1488). - Исправлена опечатка в
ua__dom
, приводящая к runtime-ошибке при использовании touch-уровня (#1479). - dist: Исправлена ошибка, при которой
i-bem-dom__init_auto
подключался вno-autoinit
-бандл (#1482).
- Теперь методы
findChildBlock
,findChildBlocks
,findParentBlock
,findParentBlocks
,findMixedBlock
иfindMixedBlocks
выбрасывают исключение, если блок передан строкой (#1469). - Оптимизирована функция построения имен классов (#1404).
- Добавлены переводы на английский (#1483, #1476, #1475).
- Миграционный гайд: добавлено примечание о
bemTarget
(#1491). - Миграционный гайд: добавлено примечание о необходимых опциях для шаблонизаторов (#1467).
- Исправлены ошибки в документации.
— Исправлена ошибка в блоке ua
на уровне touch.blocks
, которая приводила к невозможности предоставить ym-зависимости (#1460).
- Исправлена проблема в
identify
с возвращением разного результата при вызове дляdocument
(#1441). - Исправлена проблема с переполнением глубины стека вызовов
modules.define
(#1446). - Исправлена поддержка эскейпинга в блоке
ua
(#1435). - Реализован обход бага в
Array.prototype.push
вOpera 41
. - Исправлены pointer-события на iOS-устройствах (#1253).
- Исправлена ошибка в
i-bem-dom__events
, приводящая к неправильной работе методаonce()
в некоторых случаях (#1452).
- Реализована возможность задавать атрибут
lang
для<html>
в блокеpage
(#751).
- Изменения в блоке
i-bem
. Подробнее в MIGRATION.ru.md. - Изменения в блоке
querystring
. Подробнее в MIGRATION.ru.md. - Из модуля
identify
удален опциональный параметрonlyGet
(#1028). - Из модуля
events
удалены все статические методы (#1024). - В классе
Event
модуляevents
удалено полеresult
(#1023). - Элемент
css
блокаpage
больше не поддерживает автоматическое добавление условных комментариев для IE (#379).
- Исправлена проблема с переполнением глубины стека вызовов
modules.define
(#1446). - Исправлена поддержка эскейпинга в блоке
ua
(#1435). - Реализован обход бага в
Array.prototype.push
вOpera 41
.
- Реализована возможность задавать атрибут
lang
для<html>
в блокеpage
(#751).
- Исправлен баг в методе
getMods()
блокаi-bem
(#1379).
- Шаблоны: реализована поддержка режима экранирования (#1406).
- Мелкие исправления документации.
- Исправлены pointer-события на iOS-устройствах (#1253).
- Удалены базовые шаблоны и документация для
BEMHTML
иBEMTREE
(#1258). Следует использовать версиюbem-xjst
не ниже 6.3.0. - Расширения файлов BEMHTML-шаблонов переименованы с
*.bemhtml
на*.bemhtml.js
(#984). Необходимо убедиться, что в конфиге сборки поддерживается новое расширение. - Удален элемент
i-bem__i18n
(#1304). Для интернационализации следует использовать блокi18n
. jquery__events_type_pointerclick
больше не использует библиотеку FastClick (#1088).
jQuery
была обновлена до 2.2.3 и 1.12.3 (#1260).
- В блоке
page
на уровнеblocks.touch
исправлена ошибка с невалидным значениемuser-scalable=0
для<meta name=viewport>
(#1294). - Исправлена ошибка в
jquery__event_type_pointernative
, которая приводила к возникновению JS ошибки в IE8 (1317).
- dist: Автоматическая инициализация блоков теперь опциональна (#1271).
jQuery
была обновлена до 2.2.0 и 1.12.0 (#1249).
- Исправлена ошибка в
BEMHTML 1.x
, которая приводила к потереthis.mods
вreapply()
(#97).
- Теперь
jquery__event_type_pointerpressrelease
предоставляетoriginalEvent
(#1254). - dist: Поддержка
i18n
добавлена в dist (#1212). - Шаблон
page__css.bemhtml
был обновлен для поддержки новых версийbem-xjst
(#1228).
- Реализован новый блок i18n, реализующий интернационализацию проектов на bem-core (#1074).
- Теперь
jQuery
по умолчанию подключается черезhttps
(#1202). - Удалена зависимость от
bemhtml-compat
(#1186). Пользователямbem-tools
необходимо выполнитьnpm i bemhtml-compat --save
для установки пакета на уровне проекта.
- Исправлена ошибка в
loader_type_js
, допускавшая вызовы неопределенного обработчика (#1159).
- BH-бандлы в
dist
теперь мимикрируют под BEMHTML (#1210). - Улучшены шаблоны
bem create
дляbemhtml
,bemtree
,vanilla.js
иbrowser.js
(#1183). vow
обновлена до0.4.10
(#1056).
- В
i-bem__dom
добавлен новый методdetach
(#1102). - В
i-bem.bemhtml
добавлена поддержка вложенных миксов (873). - В
i-bem.bemhtml
добавлены незначительные оптимизации, связанные с эскейпингом аттрибутов (#961), (#980) и (#982). - В BEMHTML-шаблоны добавлена поддержка bem-xjst 2.x (#1021).
clearfix
оптимизирован для работы в поддерживаемых библиотекой браузерах IE (#722).jquery
обновлен до версий 2.1.4 и 1.11.3 (#999).
- Исправлена ошибка в
i-bem__dom
, из-за которой методfindElem
не обновлял кэш ранее найденных элементов (#583). - Исправлена ошибка в
i-bem__dom
, приводящая к неправильной работе методаdropElemCache
в некоторых граничных случаях (#1037). - Исправлена ошибка в
i-bem__dom
, из-за которой вызов методаsetMod
не выставлял CSS-классы блоку в случае, если на DOM-узеле был подмешан блок с пересекающимся окончанием в имени (#1090). - Исправлена ошибка в
page
, из-за которой на touch-уровнях не работало специализированное полеzoom
(#1020). - Исправлена ошибка в
keyboard__codes
. Клавишиinsert
иdelete
были описаны неправильными кодами (#1002). - Исправлена ошибка в
i-bem.bemhtml
, из-за которой неверно интерпретировались вложенные вызовыapplyNext
(b1dc50c). - Исправлена ошибка в
jquery__events_type_pointernative
, из-за которой события работали некорректно в браузерах IE 11 и Edge (#1066).
- Обновлена русская докуметация для всех блоков библиотеки. Документация доступна по адресу https://ru.bem.info/libs/bem-core/.
- Прочие улучшения в документации к библиотеке.
- Предоставление модуля
i-bem__dom
теперь происходит после наступления события DOM ready (#859). - Методы
setMod
иhasMod
модуляi-bem__dom
теперь явно преобразуют параметрmodVal
к строке, если переданное значение не типа string или boolean (#890). - В блок
page
добавлена возможность прокидывать атрибутnonce
, для корректной работы инлайн-скриптов, в соответствии со спецификацией Content Security Policy (#882). - Добавлены шаблоны
page__conditional-comment
(#551). - Модуль
vow
обновлен до версии 0.4.8 (#837).
- Исправлена ошибка в
i-bem.bemhtml
, из-за которой CSS-класс блока дублировался, в случае микса с этим же блоком (#792). - Исправлена ошибка в
loader_type_bundle
, из-за которой функция-обработчик успешного результата могла выполняться после наступления таймаута (67ff55f). - Исправлена ошибка в
i-bem__dom
, в некоторых случаях, приводящая к неправильной интерпретации строковых аргументов в методахappend
,prepend
и др. (#852). - Исправлена ошибка в
jquery__event_type_winresize
, из-за которой неправильно определятся браузер MSIE (#862). - Исправлена ошибка в
object
, из-за которой методextend
неправильно обрабатывалnull
в качестве значения аргументаtarget
(#910). - Исправлена ошибка в
page
. Из BEMJSON было невозможно отключить добавление meta-тегаx-ua-compatible
(#794).
- Таймаут в
loader_type_bundle
увеличен до 30000 мс (4e27422). - Исправлены незначительные ошибки в русской документации блоков.
- Исправлена ошибка в
jquery__pointerpress
иjquery__pointerrelease
из-за которой события не работали в браузере Internet Explorer 8 (#792). - Исправлена ошибка в
jquery__pointernative
. Событияpointerenter
иpointerleave
не должны всплывать по DOM-дереву (#801). - Исправлена ошибка в
loader_type_bundle
. После загрузки, CSS-бандл добавлялся в самый верх HTML-тега<head>
, из-за чего CSS-правила из содержимого бандла могли работать не корректно (#808). - Исправлена ошибка в BH-шаблоне
ua
. Шаблон не позволял вставить содержимое блока из входного BEMJSON (#734). - Исправлена ошибка в
page
, приводящая к неработоспособности добавленных на страницу условных комментариев для браузера Internet Explorer (#781).
jquery
обновлен до версий 2.1.3 и 1.11.2 (#778).- Добавлена документация на русском языке для модулей:
clearfix
,cookie
,identify
,idle
,inherit
,keyboard
,loader
,next-tick
,string
andtick
. - Исправлена документация на русском языке для
i-bem.js
. - Обновлено руководство на английском языке по технологиям BEMHTML и BEMJSON.
- Код библиотеки переведен на использование лицензии MPL 2.0 (#443).
- В модуль
loader_type_js
добавлена возможность указывать функцию-обработчик ошибок (#672). - Класс
BEMContext
добавлен в export-параметры функцииoninit
в базовых шаблонахi-bem.bemtree
(#602). - В
BEMContext
BEMTREE добавлен статический методreapply
по аналогии с BEMHTML (#706). - Добавлены bh-шаблоны блока
page
для уровней touch (#689). - npm-модуль bem-xjst обновлен до версии 0.9.0 (#709).
- Исправлена ошибка в
i-bem__dom
, из-за которой методfindBlocksInside
мог возвращать блоки, которые еще не были инициализированы (#699). - Исправлена ошибка в
tick
, позволявшая вызвать методstop
без освобождения внутреннего таймера (#694). - Исправлена ошибка в
i-bem.bemhtml
, из-за которой на элементы блока добавлялся CSS-классi-bem
(#633). - Исправлена ошибка в технологии
html-from-bemtree
, из-за которой в контексте BEMTREE-шаблонов не было глобальных объектовvow
,console
,setTimeout
(#438ebb8).
- Добавлено английское руководство по технологии BEMJSON.
- Обновлена русская документация для i-bem.js. Теперь документация соответсвует текущему API библиотеки.
- Обновлена документация для технологий BEMHTML/BEMTREE.
- npm-модуль bem-xjst обновлен до версии 0.8.0; bemhtml-compat обновлен до 0.0.11.
- Исправлена ошибка в
jquery__event_type_pointerpressrelease
, из-за которой событияpointerpress
/pointerrelease
генерировались на нажатие любой кнопки мыши (#607). - Исправлена ошибка в
i-bem__dom.js
, из-за которой в некоторых случаях не происходил вызов базового методаlive
(#608).
- Добавлена английская документация на JS-синтаксис BEMHTML.
- Добавлена новая реализация pointer-событий на основе полифилов из Polymer (#567).
- Добавлена возможность в
i-bem__dom.js
указывать дополнительные данные о событии в методахbindTo*
(#568).
- Исправлена ошибка в
i-bem.bemhtml
, из-за которой было невозможно использовать микс в виде одного объекта (не массива) одновременно в BEMJSON и BEMHTML (#555). - Исправлена ошибка в BEMHTML-шаблоне блока
page
, из-за которой не выполнялись стандартные моды, и исправлена регрессия в шаблоне на touch-уровне (516).
- Исправлена ошибка в
i-bem.js
, из-за которой событие об изменении модификатора генерировалось, даже если обработчикbeforeSetMod
предотвращал изменение (#546). - В случае возникновения ошибки в процессе декодирования строки, модуль
querystring__uri
теперь возвращает оригинальную строку (#554).
- В модуле
i-bem__dom
был исправлен процесс удаления блока для предотвращения нежелательной повторной инициализации блока (#540). - Исправлена ошибка в модуле
jquery__event_type_pointer
, из-за которой нативные события мыши ошибочно замещались на pointer-события (#534). unbindFrom*
-методы в модулеi-bem__dom
теперь поддерживают отписывание от нескольких событий за вызов (#533).- Добавлена недостающая зависимость от модуля
functions
в модулеevents
(#532).
- Исправлена ошибка в модуле
i-bem__dom
приводящая к повторной инициализации блока на DOM-узле, отмеченном как удаленный (#518). - Исправлена ошибка в модуле
i-bem
, из-за которой невозможно было подписаться на событие о выставлении модификатора в значениеfalse
(#529). - Модуль
jquery
обновлен до версий 2.1.1 и 1.11.1 (#515).
- Исправлена ошибка в модуле
jquery__event_type_pointerpressrelease
, из-за которой событиеpointerpress
генерировалось дважды на каждое событиеmousedown
в IE10 (#505).
- Добавлен новый модуль
keyboard__codes
(#431). - Класс
BEMContext
добавлен в export-параметры функцииoninit
в базовых шаблонахi-bem.bemhtml
(#485). - Добавлена возможность декларировать инстанс элемента используя класс блока (#481).
- Исправлено поведение метода
isSimple
класса BEMContext в в базовых шаблонахi-bem.bemhtml
(#432). - Исправлена ошибка в методе
liveUnbindFrom
модуляBEMDOM
(#476). - Исправлена ошибка в методе
isFocusable
модуляdom
, возникающая если переданныйdomElem
является ссылкой с атрибутомtabindex
, но без атрибутаhref
(#501). - Исправлена ошибка возникающая в процессе декларации БЭМ-блока как модуля, если был подключен
модуль
i-bem__dom_elem-instances
(#479). - В модуле
i-bem__dom_init_auto
добавлено временное решение для проблем с производительностью ренедеринга при инициализации блоков в Chrome-браузерах (#486). - Модуль
vow.js
перенесен вvow.vanilla.js
(#412).
- Модуль
vow
обновлен до версии 0.4.3 (#504). - Добавлена русская документация на технологию BEMTREE (#500).
- Обновлена русская документация на JavaScript-синтаксис BEMHTML (#471).
- Добавлен референс на API JavaScript-модулей. См. ветку
v2-jsdoc
(#478).
- Исправлена ошибка в
i-bem.js
, из-за которой событие об изменении модификатора происходило до того, как будет вызван обработчик реакции на изменение этого модификатора вonSetMod
(#454). - Свойства
this.mods
иthis.ctx.mods
базового шаблонаi-bem.bemhtml
теперь используют один и тот же объект (#441). - Модуль inherit обновлен до версии 2.2.1 (#466).
- Исправлен порядок тегов секции
head
в шаблонеpage.bemhtml
(#465).
- В русскую документацию к
i-bem.js
добавлено описание поляbaseMix
(#461). - CDN-хост внешних ресурсов изменен на
yastatic.net
(#444). Все ресурсы все так же доступны с хостаyandex.st
. Физическиyandex.st
иyastatic.net
находятся на одних и тех же серверах. Различие только в DNS-записях. - Добавлен базовый BEMHTML-шаблон для команды
bem create
технологииbemhtml
(#277). - Прекращен автоматический запуск тестов под Node.js 0.8 в Travis CI (#455).
- Иконка статуса автосборки Travis заменена на SVG :)
-
Из
i-bem.js
иi-bem__dom.js
удалены все deprecated методы (#318):destruct
, используйтеonSetMod js ''
;extractParams
, используйтеelemParams
;trigger
, используйтеemit
;afterCurrentEvent
, используйте модульnext-tick
;channel
, используйте модульevents__channels
;changeThis
, используйте нативныйFunction.prototype.bind
.
-
Из
i-bem.js
убраны событияinit
иdestruct
. Вместо них следует использовать события об изменении модификатора (см. «Крупные изменения»). -
Блок
ecma
перенесен в отдельный репозиторий; ES5-shims следует использовать для IE < 9 (#230). -
Модуль
vow
обновлен до мажорной версии 0.4.1 (#350). См. изменения в Vow. -
В
i-bem.bemhtml
добавлена поддержка [email protected] (#385).
- Добавлена возможность декларировать BEMDOM-блоки как модули ym (#382).
- В
i-bem.js
добавлены события об изменении модификатора (#357). - Добавлена поддержка использования строковых значений в качестве аргумента в методах
BEMDOM.init
(#419) иBEMDOM.update
(#420). - Методы
i-bem__dom.js
replace
,append
,prepend
,before
,after
теперь возвращают новый контекст, аupdate
– изменённый (#410). - В
loader
добавлен модификатор_type_bundle
(#358). - jQuery обновлен до версии 2.1.0. Для IE < 9 — до версии 1.11.0 (#356).
- Базовые шаблоны в
i-bem.bemhtml
используют конкатенацию строк вместо наполнения внутреннего буфера (#401). - jQuery больше не удаляет себя из глобальной области видимости, если присутствует на странице (#349).
jquery__event_type_pointerclick.js
перемещен с уровняtouch.blocks
на уровеньcommon.blocks
(#393).- Модификаторы
i-bem_elem-instances_yes
иi-bem__dom_elem-instances_yes
приведены к булевому стилю (#352). - Исправлена ошибка в шаблоне блока
page
, возникающая при использовании development-режима BEMHTML (#417). - Для поддержки Android 2.3 внутри
i-bem.js
отказались от использованийFunction.prototype.bind
(#404). - Исправлены ошибки в модуле технологии
browser-js+bemhtml
(#392). - NPM-модуль
ym
обновлен до версии 0.0.15 (#414).
- BEM-блоки инициируют событие
destruct
в процессе удаления (#370). - Исправлены полифилы для
pointerevents
(#354).
- JSDoc блоков исправлен в соответствии с поддержкой bem-jsd (#335).
- Референс на BEMHTML обновлен для соответствия JavaScript-синтаксису шаблонизатора (#355).
- Переход на менеджер зависимостей bower (#367).
- Для современных браузеров
jquery__config
подключает jQuery 2.x (#319). - Добавлена возможность использовать произвольный BEMJSON в качестве значения атрибутов в BEMHTML (#290).
- Исправлены зависимости в
i-bem__collection
(#292). - Удалены CSS-стили блока
page
из уровняtouch.blocks
(#306). - Исправлена ошибка в BEMHTML-шаблоне блока
page
, приводящая к зацикливанию шаблонизатора в production-режиме (#309). - Исправлена возможная ошибка в
next-tick
, возникающая при вставке скрипта в DOM в IE<9 (#324). - Исправлена ошибка в инициализации плагина
FastClick
в модулеjquery__event_type_pointerclick
на уровнеtouch.blocks
(#332). - Исправлена ошибка в технологии
node.js
в Windows (#274). - Исправлена ошибка в
onElemSetMod
вi-bem__dom_elem-instances
(#340). - В технологии
bemhtml
используется bem-xjst (#329).
- Модуль ym обновлен до версии 0.0.12 (#326).
- В ядре локализации
i-bem__i18n
отключен вывод сообщений о неизвестных ключах, если не включен debug-режим (#285). - Инфраструктура сборки тестов и примеров переведена на [email protected] (#323).
- Исправлен jsdoc для метода
dropElemCache()
вi-bem__dom
(#296). - Доработана документация для блока
i-bem.js
на русском языке. - В README проекта добавлен список поддерживаемых браузеров.
- Переход на модульную систему ym.
- Из
i-bem
,i-bem__dom
убраны все deprecated-методы. i-bem
больше не зависит от jQuery.i-bem__dom
продолжает зависеть от jQuery.- BEMHTML-шаблоны можно писать с использованием JS-синтаксиса.
- Новая технология
bemtree
(на базе bem-xjst) для описания процесса динамического построения БЭМ-дерева. - Новая технология
vanilla.js
для описания JS-реализации модулей, не зависящей от конкретного JavaScript движка. - Новые технологии
browser.js
иnode.js
для описания JS-реализаций модулей (блоков) в соответствующих движках. Для совместимости с существующим кодом считаем, что файлы с расширением.js
содержат реализацию блоков в технологииbrowser.js
. - Система модульного тестирования и примеров для блоков в библиотеке.
- Появились полифилы (
jquery__event_type_pointer
иjquery__event_type_pointerclick
как jQuery-плагины), позволяющие использовать универсальные события для десктопных и тач-интерфейсов. - Плагин для jQuery, позволяющий навешивать обработчик события на нажатие левой кнопки мыши, становится модулем
jquery__pointerclick
. - В
i-bem
и BEMHTML добавлена поддержка простых модификаторов (модификаторов без значений).
- Все блоки-модули, кроме
i-bem
, избавились от префиксов. - Блок
i-bem__dom
становится модулемi-bem__dom
. Все BEM.DOM-блоки должны теперь доопределять этот модуль (пример). - Метод для декларации блоков (
.decl()
) больше не принимает первым параметром объект с полемname
. Теперь обязательная форма записи с полемblock
:BEM.decl({ block: 'b1', modName: 'm', modVal: 'v' }, ...)
. - Вместо метода
afterCurrentEvent
у блоков появился методnextTick
, который проверят существование блока в момент исполнения колбэка.BEM.afterCurrentEvent
теперь deprecated. - Вместо
BEM.channel
появился отдельный модульchannels
.BEM.channel
теперь deprecated. - Метод
changeThis
помечен как deprecated. Используйте нативныйbind
. - Метод
del
удален из блокаi-bem
. - Метод
getWindowSize
удален из блокаi-bem__dom
. ИспользуйтеBEMDOM.win.width()
иBEMDOM.win.height()
. - Добавлен модуль-обертка
jquery
, предоставляющий jQuery. Модуль либо предоставляет jQuery, уже присутствующий на странице, либо сам его загружает (версию 1.10.1). $.observable
становится модулемevents
и больше не зависит от jQuery.$.inherit
становится модулемinherit
и больше не зависит от jQuery.$.identify
становится модулемidentify
и больше не зависит от jQuery.$.throttle
разбивается на два модуля:functions__throttle
иfunctions__debounce
, которые больше не зависят от jQuery.$.decodeURI
,$.decodeURIComponent
переезжают в модульquerystring__uri
и больше не зависят от jQuery.$.cookie
становится модулемcookie
и больше не зависит от jQuery.- Вместо
$.browser
появился модульua
с аналогичным интерфейсом. - Блок
i-system
разбит на 2 модуля:idle
иtick
. - Вместо события
leftclick
следует использоватьpointerclick
(предоставляемый полифиломjquery__event_type_pointerclick
). - Триггеры на установку модификаторов теперь разделены на две группы: до установки модификатора (
beforeSetMod
иbeforeElemSetMod
) и после (onSetMod
иonElemSetMod
). Отмена установки модификатора теперь возможна только из триггеров первой группы. - Использовать конструкцию
{ onSetMod : { js : function() { ... } } }
в качестве конструктора теперь deprecated, необходимо использоватьonSetMod: { js : { inited : ... } } }
. - Вместо метода
destruct
вi-bem
появился зеркальный метод дляonSetMod: { js : { inited : ... } } }
—{ onSetMod : { js : { '' : ... } } }
. Методdestruct
теперь deprecated. - Метод
exractParams
вi-bem__dom
теперь deprecated, для доступа к параметрам элементов нужно использовать методelemParams
. - Метод
trigger
вi-bem
теперь deprecated, нужно использоватьemit
. - Метод
onFirst
вi-bem
теперь deprecated, нужно использоватьonce
. - Удалено deprecated поле
e.block
, представляющее блок-источник события для BEM-событий. Вместо него следует использовать полеe.target
. - Для доступа к DOM-элементу блока в обработчике DOM-событий теперь нужно использовать поле
currentTarget
, предоставляемое jQuery. Вместоe.data.domElem
нужно писать$(e.currentTarget)
. - В методе
findElem
добавлен параметр, позволяющий находить элемента блока с учетом вложенных блоков. - Добавлена возможность указывать конкретную функцию для отписки от событий в методах
unbindFrom*
. - Добавлен модуль
objects
для работы с JS-объектами (содержит методыextend
,isEmpty
,each
). - Добавлен модуль
functions
для работы с JS-функциями (содержит методыisFunction
,noop
). - Добавлен модуль
dom
для хелперов при работе с DOM. - Добавлен модуль
querystring
для работы с урлами. - Добавлен модуль
loader_type_js
для загрузки JS. - Добавлен модуль
vow
для работы с промисами. - Добавлен модуль
next-tick
для полифилаnextTick
,setImmediate
,setTimeout(0, ...
и т.п.. - Добавлен модуль
strings__escape
, содержащий методы для эскейпинга XML, HTML и атрибутов. - Модуль
inherit
теперь поддерживает миксины. - В модуле
functions__throttle
добавлен параметрinvokeAsap
, позволяющий отложить первое исполнение.