Skip to content

Instantly share code, notes, and snippets.

View pasaran's full-sized avatar

Sergey Nikitin pasaran

View GitHub Profile
@pasaran
pasaran / .babelrc.js
Created July 7, 2019 20:08
Redux replacement in typescript
module.exports = {
presets: [
[
'@babel/preset-env',
{
targets: {
node: true,
},
},
],
@pasaran
pasaran / App.js
Created May 8, 2019 13:50
Anti Redux
const React = require( 'react' );
const { connect } = require( './store' );
class App extends React.Component {
componentDidMount() {
this.props.items.load_more();
}
@pasaran
pasaran / test.js
Created March 6, 2019 15:35
Сравнение immutability-helper и jsetter
const no = require( 'nommon' );
const update = require( 'immutability-helper' );
const data = {
foo: {
bar: {
quu: [ 1, 2, 3, 4, 5 ],
},
status: false,
},
const no = require( 'nommon' );
const update = require( 'immutability-helper' );
const data = {
foo: {
bar: {
quu: [ 1, 2, 3, 4, 5 ],
},
status: false,
},
#!/usr/bin/env node
/* eslint no-console: 0 */
const fs = require('fs');
for (let i = 2; i < process.argv.length; i++) {
const filename = process.argv[i];
if (filename === process.argv[1]) {
continue;
const classnames = require('classnames');
const props = {
checked: true,
color: 'red',
disabled: true,
focused: false,
hovered: true,
size: 'xl',
type: null,
var http = require('http');
var data = [];
var length;
var req = http.request('http://mail.yandex.ru', function(res) {
res.on('data', function (chunk) {
data.push(chunk);
});
function add1(x, y) {
return x + y;
}
function sub1(x, y) {
return x - y;
}
function mul1(x, y) {
return x * y;
@pasaran
pasaran / README.md
Last active December 13, 2015 22:48

Черновой прототип для выбора "мастер"-вкладки. Например, мастер-вкладка будет держать один websocket-коннект к серверу, а остальные вкладки с тем же сайтом, будут его использовать. Что делать, если мастер-вкладка вдруг закрыта? Нужно выбрать новую.

После клонирования репозитория, нужно поднять над этими файлами какой-нибудь веб-сервер, например так:

python -m SimpleHTTPServer 8000

После чего, можно открывать вкладки по адресу http://127.0.0.1:8000.

@pasaran
pasaran / ast.js
Created November 6, 2012 12:40
Работа с ast
function code(ast) {
switch (ast.id) {
case 'or':
case 'and':
case 'eq':
case 'rel':
case 'add':
case 'mul':
return code(ast.left) + ast.op + code(ast.right);