
Vasiliy
19.09.2017
15:04:10
https://github.com/gcanti/tcomb
https://github.com/gcanti/io-ts
https://github.com/pleerock/class-validator
но я не все нашел и не все из этого по теме

Дмитрий
19.09.2017
15:04:14
Ассерт функция либо падает либо ничего не делает
Импортируешь функции, подключаешь в коде в нужных местах

andretshurotshka?❄️кде
19.09.2017
15:04:17
https://www.npmjs.com/package/ts-runtime

Дмитрий
19.09.2017
15:04:34
Аа, ты в этом плане

Google

Дмитрий
19.09.2017
15:04:44
Ну рантайм типы это такое

Vasiliy
19.09.2017
15:04:52
не, там не все про это что я скинул)
я больше про preconditions, т.е. только про декларативную валидацию входных параметров
большинство из этого оверкилл для моих целей) это ж просто client sdk, цель нужной мне валидации – чтобы потребитель пакеты сразу видел что он сделал не так и не морочил голову)

Aleh
19.09.2017
15:07:40
А зачем рантайм для этого?

Дмитрий
19.09.2017
15:07:45
Ну есть два пути — ajv aka довериться либе, либо отдельно сделать валидаторы

Vasiliy
19.09.2017
15:08:05

Дмитрий
19.09.2017
15:08:59
А какая им разница?

andretshurotshka?❄️кде
19.09.2017
15:09:07
ts-runtime для конкретных файлов включить?
которые с IO

Дмитрий
19.09.2017
15:09:30
Ты всё равно без Either не сообщишь им о том какие у тебя могут падать ошибки ?
Про отдельные валидаторы я имею ввиду такое
https://github.com/reactjs/redux/blob/master/src/combineReducers.js

Google

Дмитрий
19.09.2017
15:10:00
Весь модуль — это считай ассерты и документация для юзеров

Vasiliy
19.09.2017
15:10:46

Дмитрий
19.09.2017
15:11:33
Не, я это к тому что с either я могу передать полный перечень типов падающих ошибок, а throw ничего не передаёт
Это кстати не потому что фп вей, а тупо потому что у either два дженерика и ошибки идут во втором

Vasiliy
19.09.2017
15:13:12
ну я вроде все узнал, спасибо!
короче имхо я заморачиваюсь и для sdk на 500 строк просто ручками лучше все написать как вот тут https://github.com/reactjs/redux/blob/master/src/combineReducers.js :)

Дмитрий
19.09.2017
15:20:50
Ага
Я сегодня тоже в таком духе сделал https://github.com/zerobias/telegram-mtproto/blob/feature/mtproto3/packages/telegram-mtproto/src/service/authorizer/index.js#L623
Не спрашивайте что за упорин в коде выше ?

Vasiliy
19.09.2017
15:22:10
e?
https://github.com/zerobias/telegram-mtproto/blob/feature/mtproto3/packages/telegram-mtproto/src/service/authorizer/index.js#L589
не понял как это)

andretshurotshka?❄️кде
19.09.2017
15:24:52

Дмитрий
19.09.2017
15:24:57
Там выше просто остались declare class которые символизируют тип ошибки но в рантайме не существуют
Вот их и начал менять на реальные классы

Vasiliy
19.09.2017
15:26:33
ладно) спасибо, я насмотрелся, пошел свою дичь писать)

Дмитрий
19.09.2017
15:39:10
[скоуп блок тип | код ошибки] описание

Max
20.09.2017
07:26:46
Друзья, помогите найти работу. React

Андрей
20.09.2017
07:30:20
JavaScript Jobs — вакансии и аналитика
JavaScript Jobs — чат для поиска работы и людей
Правила оформления: http://bit.ly/jobs-rules
Вакансии и резюме форвардятся в канал @javascript_jobs_feed
@nodejs_jobs, @mobile_jobs, @uiux_jobs
https://t.me/javascript_jobs
Это сюда наверное)

Google

Vasiliy
20.09.2017
11:23:58
а как правильно для typedoc написать доку string literal type?
походу никак, просто все в произвольном формате описать в коменте над типом списком
upd: а, ну как угодно можно извращаться – там marked & hightlight.js

Dmitry
20.09.2017
18:26:03
Это имеешь в виду?

Vasiliy
20.09.2017
18:27:02
ну да, над ним есть даже обертка, вот я выше тоже кидал линк: https://github.com/pleerock/class-validator, не знаю, правда, насколько хорошая (:
ну не совсем, я чего-то сначала мудрить начал, вспомнил designbycontact и подумал о какой-то декларативной рантайм валидации (: но мне это все вообще не нужно на самом деле, это просто sdk маленькое. суть в том, чтобы показать консюмеру где он ошибся и все (:
я очень простые прекондишны написал руками, по типу как вот выше кидали в примере из redux (:

Dmitry
20.09.2017
18:29:46
Express-validator глянь, можно поверх validator сделать декларативно

Vasiliy
20.09.2017
18:30:21
серьезно, мне ничего сложнее
if (typeof key !== 'string') {
throw new Error('"key" param should be a string');
}
оказалось не надо (:

Dmitry
20.09.2017
18:30:46
Ну тут есть такие проверки, а есть и сложнее

Vasiliy
20.09.2017
18:32:57
ок, да я уже переписал этот пакет) уже все, не понадобилось ничего такого

Vladimir
20.09.2017
18:33:55
Вообще меньше зависимостей - лучше, так что поздравляю

Vasiliy
20.09.2017
18:34:19
в зависимостях только jsonp & axios
но я думаю это там оправдано и они маленькие
jsonp-то вообще мелочь

Lex3m
21.09.2017
07:35:13
Ребят привет! Подскажите есть ли либа под ионик для наложения интерактивных областей на изображение, с возможностью сделать их доступными для клика?

Herman
21.09.2017
10:28:24
Здравствуйте
В какой ES компилируется TS? ES5?
В гугле забанили

Dmitrii
21.09.2017
10:29:04
можно с помощью настроек указать

Herman
21.09.2017
10:29:34
Просто хочу понять надо будет через babel прогонять
Он по дефолту в ES5 компилит или надо настраивать?

Google

Andrew
21.09.2017
10:41:54
В конфиге можно указать
Хочешь - ES5, не хочешь - ES6

Herman
21.09.2017
10:44:23
Оу
Дефолт вообще ES3 (http://www.typescriptlang.org/docs/handbook/compiler-options.html)
Т.е. babel, я так понимаю, не нужен

Tony
21.09.2017
10:45:01
Не нужен

Friedrich
21.09.2017
10:46:02
Кто-то любит компилировать TS в ES6, а дальше через babel. Я не знаю, зачем так делают, но, наверное, какие-то бенефиты могут от этого быть.

Herman
21.09.2017
10:46:21
оу, а babel только в ES5 компилит
я вообще не понимаю кто сейчас не поддерживает ES5, 8 лет как уже прошло

Vladimir
21.09.2017
10:47:11
китайские IE

Herman
21.09.2017
10:49:25

Vladimir
21.09.2017
10:50:25
http://gs.statcounter.com/browser-market-share/all/china
сейчас попроще, но пару лет назад там куча народу сидела на ие

Herman
21.09.2017
14:29:16
У меня почему-то этом чате некорректно кол-во пользователей в веб версии отображает

Maxim
21.09.2017
16:12:50
Кто-то использует fp-ts и соседние либы от gcanti по полной?

Дмитрий
21.09.2017
16:13:10
gcanti

andretshurotshka?❄️кде
21.09.2017
16:13:12
)))

Maxim
21.09.2017
16:15:11
А что ? ) сама fp-ts непонятная, а утилиты вокруг неё он построил - полезные и понятные с первого взгляда

andretshurotshka?❄️кде
21.09.2017
16:15:59
еще спроси кто юзает typelevel-ts

Google

andretshurotshka?❄️кде
21.09.2017
16:16:10
и это буду я

Дмитрий
21.09.2017
16:16:20
?

Maxim
21.09.2017
16:16:25
Ну она вроде совсем свежая
К сожалению у меня не всегда можно определить линзу на этапе написания кода
Юзер кастом поля в crm
Или построение отчётов, в общем насколько его репы юзабельны после опыта работы ?

andretshurotshka?❄️кде
21.09.2017
16:19:26
мне кажется никто не юзает

Maxim
21.09.2017
16:19:59
А например ты? : D

andretshurotshka?❄️кде
21.09.2017
16:20:11
я не юзаю)
?

Дмитрий
21.09.2017
16:20:35
Посмотрел код fp-ts-fluture — из stack safe фьючерса он сделал unsafe
?

andretshurotshka?❄️кде
21.09.2017
16:21:04
кинь ему issue
а че там ансейф
он только типы прикрутил
же

Maxim
21.09.2017
16:21:45
Ну он хоть какой биндинг сделал