#css #typescript #autocomplete #frontend #intellisense
Вопрос:
Я пытаюсь реализовать функцию автозаполнения CSS, основанную на синтаксисе определения значения.
В данный момент мне приходится анализировать синтаксис определения, который хорошо работает (с использованием css-дерева) для простого синтаксиса , такого как <length> | <percentage> | min-content | max-content | auto
, но вскоре он становится очень сложным, например [ <line-names>? [ <track-size> | <track-repeat> ] ] <line-names>?
Поскольку CSS intellisense присутствует повсюду, мне интересно, существуют ли библиотеки, которые принимают строку кода CSS и синтаксис определения в качестве входных данных и выводят дополнительные строки, которые делают входную строку допустимой.
Например:
import { autocompleteCss } from 'some-lib';
const suggest = autocompleteCss('1px solid bl', '<line-width> || <line-style> || <color>');
console.log(suggest);
// output: ['ue', 'ack']
Спасибо.