Size: a a a

2020 November 13

AD

Arthur Donkovtsev in Svelte [svelt]
Марк Танащук
Плавная замена/интеграция
+
источник

КС

Кирилл Спасибович... in Svelte [svelt]
щас бы два раза аст генерить, один в препроцессе, другой в компиляторе
источник

EI

Eugene Ilyin in Svelte [svelt]
Ну где-то же эти space() в AST вставляются - надо просто их оттуда вырезать опцией.
источник

КС

Кирилл Спасибович... in Svelte [svelt]
да можно и патчем вырезать
источник

КС

Кирилл Спасибович... in Svelte [svelt]
тока тогда список нод другой и оно крашит
источник

КС

Кирилл Спасибович... in Svelte [svelt]
      render(block, parent_node, parent_nodes) {
         if (this.skip)
             return;
         const use_space = this.use_space();
         block.add_element(this.var, use_space ? x `@space()` : x `@text("${this.data}")`, parent_nodes && (use_space ? x `@claim_space(${parent_nodes})` : x `@claim_text(${parent_nodes}, "${this.data}")`), parent_node);
     }
источник

КС

Кирилл Спасибович... in Svelte [svelt]
17091-17096 в node_modules/svelte/compiler.js
источник

EI

Eugene Ilyin in Svelte [svelt]
Значит надо когда HTML AST строится только-только. Там воткнуть флаг "всё в одну строку", но тогда получим Svelte Trim
источник

КС

Кирилл Спасибович... in Svelte [svelt]
https://www.npmjs.com/package/@minna-ui/svelte-preprocess-markup
вот тут ещё челы пытались
и уперлись в закономерное ограничение, что либо свой парсер интерполяций в темплейте делать, либо оборачивать интерполяции в кавычки
источник

КС

Кирилл Спасибович... in Svelte [svelt]
и типа это уже не html, чтобы его весело и безопасно парсить, но еще нет инструментов для этого диалекта html
источник

КС

Кирилл Спасибович... in Svelte [svelt]
хм, а svelte-trim юзает другой подход
источник

КС

Кирилл Спасибович... in Svelte [svelt]
источник

КС

Кирилл Спасибович... in Svelte [svelt]
но всё равно это двойной AST, даже так
источник

КС

Кирилл Спасибович... in Svelte [svelt]
но лучше чем букводрочерство
источник

EI

Eugene Ilyin in Svelte [svelt]
Хм. Svelte trim работает, отлично.
источник

КС

Кирилл Спасибович... in Svelte [svelt]
ну ничего удивительного, оно под капотом парсер свелта использует же
источник

КС

Кирилл Спасибович... in Svelte [svelt]
и генерит ast, потом выплевывает его в свелт компилятор, тот генерит его снова
источник

KN

Konstantin Nosov in Svelte [svelt]
Alexander Ponomarev
меня интересует синглтон вебсокет между всеми вкладками =)
Cotonic.js - https://cotonic.org/ - никак не соберусь адаптировать его для не елексира, но сделано идейно классно. Шаред воркер и mqtt-like пабсаб между ним и табами
источник

AP

Alexander Ponomarev in Svelte [svelt]
Konstantin Nosov
Cotonic.js - https://cotonic.org/ - никак не соберусь адаптировать его для не елексира, но сделано идейно классно. Шаред воркер и mqtt-like пабсаб между ним и табами
но ведь шаред воркер не умеет в сафари и мобильном хроме, там есть какой-то фолбэк?
источник

KN

Konstantin Nosov in Svelte [svelt]
Alexander Ponomarev
но ведь шаред воркер не умеет в сафари и мобильном хроме, там есть какой-то фолбэк?
вроде как в обычный вебворкер
источник