Skip to content

Instantly share code, notes, and snippets.

View SerzN1's full-sized avatar

Sergei Babin SerzN1

  • AEY group
  • Russia
View GitHub Profile
@SerzN1
SerzN1 / getWordsByPhone.js
Last active September 16, 2019 19:55
Generate words for a phone number (enumeration, algorithms)
/**
* A person object with a name and age.
* @typedef {Object<number, string>} Keyboard
* @property {number} key value.
* @property {string} key letter.
*/
/**
* Pointers array.
* @typedef {Array<number>} Pointers
const EXTENSION_TYPE = {
0x01: 'PlainText',
0xF9: 'GraphicControl',
0xFE: 'Comment',
0xFF: 'Application'
};
/**
* Returns total length of data blocks sequence
*
@SerzN1
SerzN1 / tokens.md
Created September 21, 2018 23:11 — forked from zmts/tokens.md
Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

Preconditions:

В данной заметке рассматривается работа JWT с симметичным алгоритмом шифрования (HS256/HS384/HS512)

Основы:

Аутентификация(authentication, от греч. αὐθεντικός [authentikos] – реальный, подлинный; от αὐθέντης [authentes] – автор) - это процесс проверки учётных данных пользователя (логин/пароль). Проверка подлинности пользователя путём сравнения введённого им логина/пароля с логином/паролем, сохранённым в базе данных пользователей.

Авторизация(authorization — разрешение, уполномочивание) - это проверка прав пользователя на доступ к определенным ресурсам.

@SerzN1
SerzN1 / webgl-detect-gpu.js
Created September 13, 2018 12:22 — forked from cvan/webgl-detect-gpu.js
use JavaScript to detect GPU used from within your browser
var canvas = document.createElement('canvas');
var gl;
var debugInfo;
var vendor;
var renderer;
try {
gl = canvas.getContext('webgl') || canvas.getContext('experimental-webgl');
} catch (e) {
}
@SerzN1
SerzN1 / dev-server.js
Created April 15, 2018 19:54 — forked from jamsesso/dev-server.js
Webpack dev server with a better proxy (http-proxy-middleware)
var express = require('express');
var path = require('path');
var webpackConfig = require('./webpack.config');
var webpack = require('webpack');
var webpackDevMiddleware = require('webpack-dev-middleware');
var webpackHotMiddleware = require('webpack-hot-middleware');
var proxyMiddleware = require('http-proxy-middleware');
var devConfig = webpackConfig.devServer;
var app = express();
@SerzN1
SerzN1 / terminal-git-branch-name.md
Created March 7, 2018 14:35 — forked from joseluisq/terminal-git-branch-name.md
Add Git Branch Name to Terminal Prompt (Mac)

Add Git Branch Name to Terminal Prompt (Mac)

image

Open ~/.bash_profile in your favorite editor and add the following content to the bottom.

# Git branch in prompt.

parse_git_branch() {
import {NativeModules, DeviceEventEmitter} from 'react-native';
import LinkedinLogin from 'react-native-linkedin-login';
import facebookLoginService from '../services/facebookLoginService';
import {firestackAuth} from '../services/firestack';
import {linkedInConfig} from '../constant/auth';
import errorCallback from '../utils/errorCallback';
const providersConfig = {
facebook: {
provider: facebookLoginService,
@SerzN1
SerzN1 / object-watch.js
Created July 5, 2016 19:23 — forked from eligrey/object-watch.js
object.watch polyfill in ES5
/*
* object.watch polyfill
*
* 2012-04-03
*
* By Eli Grey, http://eligrey.com
* Public Domain.
* NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.
*/
<script type="text/javascript">
(function () {
"use strict";
// once cached, the css file is stored on the client forever unless
// the URL below is changed. Any change will invalidate the cache
var css_href = './index_files/web-fonts.css';
// a simple event handler wrapper
function on(el, ev, callback) {
if (el.addEventListener) {
el.addEventListener(ev, callback, false);
@SerzN1
SerzN1 / trig.scss
Last active August 29, 2015 14:14 — forked from kamikat/trig.scss
///////////////////////////////////////////////////////////
// Plain SASS Trigonometry Algorithm in Taylor Expansion //
// //
// Based on //
// http://japborst.net/posts/sass-sines-and-cosines //
///////////////////////////////////////////////////////////
$pi: 3.14159265359;
$_precision: 10;