Skip to content

Instantly share code, notes, and snippets.

View den-churbanov's full-sized avatar
💣

Denis den-churbanov

💣
  • Russia, Samara
View GitHub Profile
import { createStore, Event, sample, Store } from 'effector';
import { once, readonly } from 'patronum';
interface TrackSliceOptions<T extends RouteParams, Route extends EffectorRoute<T> = EffectorRoute<T>> {
route: Route,
compare: (params: EffectorRouteParams<Route>) => boolean
}
interface SliceInstance<Params extends RouteParams> {
$opened: Store<boolean>,
@den-churbanov
den-churbanov / index.js
Created August 7, 2024 09:02
Interview
/**
Реализуйте функцию deepEqual на JavaScript,
которая принимает два параметра и проверяет, являются ли они "глубоко" равными.
Входные параметры не могут быть объектами типа Set, Map и их Weak-версиями.
Функция должна учитывать следующие правила:
- Примитивные типы (числа, строки, булевы значения, null, undefined) сравниваются по значению.
- Массивы считаются равными, если они имеют одинаковую длину и их элементы попарно равны (в том же порядке).
- Объекты считаются равными, если они имеют одинаковый набор ключей и значения по этим ключам попарно равны.
type MazeNode = '.' | '#';
interface PathNode {
x: number,
y: number
}
type Direction = 'top' | 'right' | 'bottom' | 'left';
/**
@den-churbanov
den-churbanov / setup-listener.ts
Created April 4, 2024 18:00
Setup event listener
import {
Event,
attach,
createEvent,
createStore,
sample,
scopeBind,
Store,
} from 'effector';
@den-churbanov
den-churbanov / react-router-effector-bind.ts
Last active January 31, 2024 10:46
Effector bindings for react-router-dom v.6.2.1
import { useContext } from 'react';
import { createStore, createEffect, createEvent, sample, attach, combine, restore } from 'effector';
import { spread, debug, not, and, empty, or } from 'patronum';
import { createGate, useGate } from 'effector-react';
import {
useLocation,
useNavigate,
matchPath,
generatePath,
RouteMatch,
@den-churbanov
den-churbanov / tokens.md
Created June 11, 2021 22:29 — forked from zmts/tokens.md
Про токены, JSON Web Tokens (JWT), аутентификацию и авторизацию. Token-Based Authentication

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

Last major update: 25.08.2020

  • Что такое авторизация/аутентификация
  • Где хранить токены
  • Как ставить куки ?
  • Процесс логина
  • Процесс рефреш токенов
  • Кража токенов/Механизм контроля токенов