Ну ладно, там две сотни строк.
Конечно, можно меня поругать за качество кода, но кому это нужно? Этот код не будет запускаться очень часто, и скорее всего к следующему запуску придется его немного поправить, так как исходный html откуда я вытаскиваю иконки наверняка немного поменяется.
https://gist.github.com/sergeysova/33061985430617c417fb90915e4f29df
Конечно, можно меня поругать за качество кода, но кому это нужно? Этот код не будет запускаться очень часто, и скорее всего к следующему запуску придется его немного поправить, так как исходный html откуда я вытаскиваю иконки наверняка немного поменяется.
https://gist.github.com/sergeysova/33061985430617c417fb90915e4f29df
👍1
А теперь вопрос знатокам forest.
В объекте icons у меня лежат компоненты-иконки. Для каждого проекта иконка прилетает из интернетов, то есть заранее статически я не знаю какая именно.
Поэтому, я пробегаю по всему списку и вызываю каждый компонент-иконку, а в visible вешаю проверку, выбрана ли текущая иконка или нет.
Может есть более красивый вариант? мб заюзать variant или route?
В объекте icons у меня лежат компоненты-иконки. Для каждого проекта иконка прилетает из интернетов, то есть заранее статически я не знаю какая именно.
Поэтому, я пробегаю по всему списку и вызываю каждый компонент-иконку, а в visible вешаю проверку, выбрана ли текущая иконка или нет.
Может есть более красивый вариант? мб заюзать variant или route?
Если вдруг кто-то не слышал, что там с faker.
https://snyk.io/blog/open-source-npm-packages-colors-faker/
https://snyk.io/blog/open-source-npm-packages-colors-faker/
Snyk
Open source maintainer pulls the plug on npm packages colors and faker, now what? | Snyk
Snyk issued a Denial of Service security vulnerability for colors@1.4.1, following this vulnerable code. We highly recommend you revert to colors@1.4.0, and pin your dependencies’ versions to avoid blind upgrades of the offending version. We also recommend…
Ещё один пример из forest.
Слева ДО, справа новый метод, немного упрощающий выбор. Наверное, лучше было назвать variant, так как делает очень похожую работу
Слева ДО, справа новый метод, немного упрощающий выбор. Наверное, лучше было назвать variant, так как делает очень похожую работу
Там effector 22.2.0 это жирнющий апдейт. Сделать ли видео обзор-ревью изменений?
Anonymous Poll
86%
Да
9%
Не люблю видео
5%
Точно не надо!
🔥1
Forwarded from Заметки про React (ReactNotesPost_Bot)
Какой test runner используете на проекте для юнит и интеграционного тестирования?
Anonymous Poll
75%
Jest
5%
Mocha
3%
Ava
2%
Jasmine
6%
Другое
20%
Не пишет тесты
Forwarded from Заметки про React (ReactNotesPost_Bot)
Какие библиотеки для тестирования используете на проекте?
Anonymous Poll
54%
Testing Library
15%
Enzyme
30%
Cypress
11%
Playwright
10%
Selenium
13%
Puppeteer
15%
Другое
👍1
Юбилейный десятый выпуск рассылки!
Не забывайте о существовании реакций)
https://news.sova.dev/issues/10-931476
Не забывайте о существовании реакций)
https://news.sova.dev/issues/10-931476
news.sova.dev
Сова рассылает выпуск #10
Я проснулся после новогоднего перерыва, желаю прочесть вам целую кучу статей на любой вкус: у нас есть CSS, Rust, React и Typescript.
🔥8❤5👍2
Мне вдруг пришла интересная мысль о бизнес-логике и интерпретации этого термина.
Кодом мы можем написать все, что угодно, абсолютно. Но в какой момент мы понимаем, что код который написан это баг? Когда происходит расхождение с ожиданиями. То есть мы предъявляем к коду определенные требования, записываем их куда-то НЕ в код и проверяем работу кода на соответствие этим требованиям.
То есть получается, что нельзя просто посмотреть на код и понять есть ли в нем логический баг или нет, потому что код не выражает требований, только реализацию.
А это значит, что бизнес-логику можно попробовать определить так:
код, который не объясняет зачем он реализует определенную логику, скорее всего является бизнес-логикой. Иначе он должен быть предельно понятным.
Из этого может вытекать довольно много интересных следствий, кстати. А я пока приму дедовские таблетки.
Кодом мы можем написать все, что угодно, абсолютно. Но в какой момент мы понимаем, что код который написан это баг? Когда происходит расхождение с ожиданиями. То есть мы предъявляем к коду определенные требования, записываем их куда-то НЕ в код и проверяем работу кода на соответствие этим требованиям.
То есть получается, что нельзя просто посмотреть на код и понять есть ли в нем логический баг или нет, потому что код не выражает требований, только реализацию.
А это значит, что бизнес-логику можно попробовать определить так:
код, который не объясняет зачем он реализует определенную логику, скорее всего является бизнес-логикой. Иначе он должен быть предельно понятным.
Из этого может вытекать довольно много интересных следствий, кстати. А я пока приму дедовские таблетки.
🤯15👍9🤔2😢1
Используете ли вы enum из TypeScript?
Anonymous Poll
19%
Да, `enum MyEnum {A, B}` без указания значений
60%
Да, `enum MyEnum { A = "a", B = "B" }` указываю значения
13%
Да, но `const MyEnum = { A: "a" } as const` как объект
8%
Да, но `const enum MyEnum { A, B }` специальную конструкцию
28%
Нет, обхожусь перечислениями `"a" | "b"`
7%
Не пользуюсь подобными вещами вообще
👍9
Я немного болею, думаю это было слышно, прошу прощения.
Но я сформулировал свои мысли о TypeScript в качестве тайп-чекера в виде подкаста "Под куполом". На этот раз выпуск займет у вас всего 20 минут.
https://anchor.fm/under-a-dome/episodes/TypeSript-e1c4atu
Но я сформулировал свои мысли о TypeScript в качестве тайп-чекера в виде подкаста "Под куполом". На этот раз выпуск займет у вас всего 20 минут.
https://anchor.fm/under-a-dome/episodes/TypeSript-e1c4atu
Spotify for Podcasters
Под куполом • A podcast on Spotify for Podcasters
Сугубо субъективный взгляд на вещи в формате ночных посиделок
👍6❤2
Forwarded from Effector news (Сова)
effector patronum 1.7.0 🦋 petilia
· 5 новых методов:
· Исправлено поведение
· Исходники полностью переписаны на typescript
· Добавлена короткая форма для метода
https://github.com/effector/patronum/releases/tag/v1.7.0
· 5 новых методов:
snapshot, interval, time, format, reset.· Исправлено поведение
spread и interval · Исходники полностью переписаны на typescript
· Добавлена короткая форма для метода
every([$a, $b], true)https://github.com/effector/patronum/releases/tag/v1.7.0
GitHub
Release v1.7.0 🦋 petilia · effector/patronum
🚀 Features
Add initial support for babel-macro. It is useful for CRA support
import { splitMap } from 'patronum/macro';
Add snapshot method #150 (@igorkamyshev)
Add interval method #163 ...
Add initial support for babel-macro. It is useful for CRA support
import { splitMap } from 'patronum/macro';
Add snapshot method #150 (@igorkamyshev)
Add interval method #163 ...
🔥11👍3