Hfnas, для целей вывода проще всего добавить геттеры в модель.
ну или select('*')->addSelect(DB::raw()) если оно прямо из базы должно бы идти. или view с нужными данными прямо в базу и выбирать из него.
безотносительно того, как перевести в квери билдер ларавеля - зачем в исходном запросе union? почему не case? а то вдруг мускуль тупой и два раза сканит всю таблицу (тут надо explain смотреть)?
Зачем тут джоин сам на себя? добавляются колонки с + и -?
Больше проблем будет с раскладкой (если это что-то с физической клавиатурой) - надо прописать трансляцию в латиницу от keykode, мне лень было. В устройствах на андроиде (я для ТСД делал) у меня всегда шла латиница. А вот на винде - в зависимости от текущей раскладки.
Ну и со всякими непечатными символами. Надо их, наверное, тоже впихивать (Сейчас игнор на всё служебное). Нужны реальные коды, а их нет.
Олег, да, согласен. Надо чуть выше проверить e.key На равенство Shift и взвести флаг, который сделает следующий символ большим. И в обработчике отпускания кнопки флаг снимать, если шифт отпускается. Могу сделать доработку, но проверять придется тебе. пиши в телегу @fragster_a_n
Вообще я как начал пользоваться tailwind - на обычный css почти забил, ибо неудобно. Всё равно компоненты переиспользуемые получаются. Конечно, чем начать использовать tailwind нужно, конечно, разобраться в css.
Dyikot, можно, но тогда придется на нем реализовывать раздачу статического содержимого. Это возможно, но контрпродуктивно - уже есть готовые веб серверы в составе любой ОС.