Skip to content

Instantly share code, notes, and snippets.

View daniilgrigoryev's full-sized avatar
😏
Looking for job in FinTech

Daniil Grigoryev daniilgrigoryev

😏
Looking for job in FinTech
View GitHub Profile
@daniilgrigoryev
daniilgrigoryev / main.js
Last active February 5, 2018 13:42
«Delta-systems» the main js file.
/*
* Third party
*/
/*! jQuery v1.11.2 | (c) 2005, 2014 jQuery Foundation, Inc. | jquery.org/license */
!function(a,b){"object"==typeof module&&"object"==typeof module.exports?module.exports=a.document?b(a,!0):function(a){if(!a.document)throw new Error("jQuery requires a window with a document");return b(a)}:b(a)}("undefined"!=typeof window?window:this,function(a,b){var c=[],d=c.slice,e=c.concat,f=c.push,g=c.indexOf,h={},i=h.toString,j=h.hasOwnProperty,k={},l="1.11.2",m=function(a,b){return new m.fn.init(a,b)},n=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,o=/^-ms-/,p=/-([\da-z])/gi,q=function(a,b){return b.toUpperCase()};m.fn=m.prototype={jquery:l,constructor:m,selector:"",length:0,toArray:function(){return d.call(this)},get:function(a){return null!=a?0>a?this[a+this.length]:this[a]:d.call(this)},pushStack:function(a){var b=m.merge(this.constructor(),a);return b.prevObject=this,b.context=this.context,b},each:function(a,b){return m.each(this,a,b)},map:function(a){return this.pushStack(m.map(this,function(b,c){return
@daniilgrigoryev
daniilgrigoryev / footer.html
Last active February 14, 2018 12:36
Good parts content available on website using Microdata with attribute itemtype.
@daniilgrigoryev
daniilgrigoryev / reset.css
Last active February 14, 2018 13:51
CSS reset
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{
display:block
}
button,hr,input{
overflow:visible
}
progress,sub,sup{
vertical-align:baseline
}
*,::after,::before{
import React from 'react'
import {compose} from 'redux'
import {connect} from 'react-redux'
import {Button, Card, Layout, Tag} from 'element-react'
import {Field, FieldArray, reduxForm} from 'redux-form/immutable'
import {EInput, FInput} from '../../components/finput.js'
import {EAutocomplete, FAutocomplete} from '../../components/fautocomplete.js'
import {ECheckbox, FCheckbox} from '../../components/checkbox.js'
import {ESwitch, FSwitch} from '../../components/switch.js'
import {ESelect, FSelect} from '../../components/select.js'
@daniilgrigoryev
daniilgrigoryev / Handle Scroll
Created July 10, 2019 10:09
Handle Scroll React
class SidePanel extends Component{
constructor(props) {
super(props);
this.handleScroll = this.handleScroll.bind(this);
}
componentDidMount() {
window.addEventListener('scroll', this.handleScroll, true);
}
componentWillUnmount(){
window.removeEventListener('scroll', this.handleScroll, false);
@daniilgrigoryev
daniilgrigoryev / blatreact.js
Created August 1, 2019 08:59
дочерний в родительский
// родительский
render() {
const myCallback = (dataFromChild) => this.dataFromChild = dataFromChild;
}
<SearchRoot callbackFromParent={this.myCallback}/>
// дочерний
@daniilgrigoryev
daniilgrigoryev / appealExplorer.js
Created August 1, 2019 10:18
Из ребенка в родитель
import React, {Component} from 'react';
import {compose} from 'redux'
import {FieldArray, reduxForm} from 'redux-form/immutable'
import AppealTable from './table.js'
import {getSessionId} from '../../selectors/common.js'
import {connect} from 'react-redux'
import {Button, Input, Card, Layout} from 'element-react'
import {post} from '../../services/ajax.js'
import {appealLoad} from '../../actions/common.js'
import Immutable from 'immutable'
@daniilgrigoryev
daniilgrigoryev / frutella-promo.js
Created September 10, 2019 15:06
SPA Ftutella promo on Angular.js 1.*
//= ../../bower_components/jquery/dist/jquery.min.js
//= ../../bower_components/jquery-ui/jquery-ui.min.js
//= ../../bower_components/angular/angular.min.js
//= ../../bower_components/angular-animate/angular-animate.min.js
//= ../../bower_components/angular-route/angular-route.min.js
//= ../../bower_components/angular-resource/angular-resource.min.js
//= ../../bower_components/angular-cookies/angular-cookies.min.js
//= ../../bower_components/angular-sanitize/angular-sanitize.min.js
//= ../../bower_components/angular-messages/angular-messages.min.js
//= ../../bower_components/angular-ui-mask/dist/mask.min.js
const webpack = require('webpack')
const path = require('path')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const { CleanWebpackPlugin } = require('clean-webpack-plugin')
module.exports = (env, argv) => {
const isProduction = argv.mode.indexOf('production') !== -1 // npm run build -> webpack --mode=production
console.log(isProduction, argv.mode)
@daniilgrigoryev
daniilgrigoryev / merge-gap-of-intervals
Created November 18, 2020 16:58
Merge gap of intervals which has type:array[type:string] ex: let array = ["1-3", "5-7", "2-4", "8-12", "5-11"];
let array = ["1-3", "5-7", "2-4", "8-12", "5-11"];
let getArrayIntervals = (intervalString) => {
let entry = intervalString;
let output = entry.map(el => {
let result = el.split('-').map((el) => {
let item = parseInt(el);
return (!isNaN(item) && Math.sign(item)) ? item : false;
});