-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BREAKING CHANGE][Feature]: обфусцировать названия локальных CSS-переменных #7607
Comments
Мы завязываемся на ваши внутренние переменные для реализации более сложных компонентов из базовых, хоть это и не оф. апи для внешних разработчиков, но мы надстройка над вами |
может рассмотреть решение в виде описании в документации как такое настраивать на уровне сборщиков, чтобы разработчики самостоятельно конфигурировали это относительно потребностей |
Внутренние css переменные на то и внутренние чтобы их можно было делать с ними что хочешь не нарушая контрактных обязательств абстракции. Если что-то требуется, необходимо делать это через публичные интерфейсы. Без инкапсуляции мы далеко не уедем По реализации: требуется делать свои swc и postcss плагины swc // Input Code
import properties from "./style.css" with { type: "property_modules" };
element.innerHTML = '<div style="' + properties['--vkui_internal_prop'] + '=12">';
// Output ↓ ↓ ↓ ↓ ↓ ↓
element.innerHTML = '<div style="' + '--vkui_internal_prop__clZD5' + '=12">'; postcss // Input Code
.host {
width: var(--vkui_internal_prop)'
}
// Output ↓ ↓ ↓ ↓ ↓ ↓
.host {
width: var(--vkui_internal_prop__clZD5)'
} На текущий момент проще всего проставить хэши ручками, чтобы отпугивать разработчиков. В дальнейшем подумать о разработке плагинов |
Под "хэшами с ручками", что ты имеешь ввиду? Я думал, кстати, не хэшировать, а сокращать, например: // Input Code
.host {
width: var(--vkui_internal_Button-color)'
}
// Output ↓ ↓ ↓ ↓ ↓ ↓
.host {
width: var(--_vkuiBc)'
} На основе ресёрча https://github.com/inomdzhon/test-vkui-css-hash |
Прямо в коде проставить рандомные буквы похожие на хэш
|
Для чего?
Нюансы
Необходимо обрабатывать как CSS, так и JS, т.к.
--vkui_internal_*
используется там и там.Следует запускать только для production сборки, development и test окружения исключаем.
Ссылки
The text was updated successfully, but these errors were encountered: