Skip to content

Instantly share code, notes, and snippets.

View dagda1's full-sized avatar

Paul dagda1

View GitHub Profile
$spacing: 0.625; // 4px
$unit: rem;
$spacing-x1: #{$spacing}#{$unit} !important;
$spacing-x2: #{$spacing * 2}#{$unit} !important;
$spacing-x3: #{$spacing * 3}#{$unit} !important;
$spacing-x4: #{$spacing * 4}#{$unit} !important;
$spacing-x5: #{$spacing * 5}#{$unit} !important;
$spacing-x6: #{$spacing * 6}#{$unit} !important;
$spacing-x7: #{$spacing * 7}#{$unit} !important;
splitChunks{
cacheGroups: {
styles: {
name: 'styles',
test: /\.s?css$/,
chunks: 'all',
minChunks: 1,
reuseExistingChunk: true,
enforce: true,
},
import React, { useState, useEffect, useRef } from 'react';
import { LabelProps, LabelPosition } from '../../types';
import cs from 'classnames';
import { Text } from '@vx/text';
const styles = require('./LabelCompressed.scss');
export interface LabelPositioningProps {
angle: number;
$screen-small-min: 480px;
$screen-medium-min: 768px;
$screen-large-min: 992px;
$screen-xlarge-min: 1200px;
$form-element-height: 42px;
/* be consistent with spacing to avoid random pixel adding. */
$scale: 8, 16, 32, 48;
import React, { useState, useLayoutEffect, useCallback } from 'react';
import ResizeObserver from 'resize-observer-polyfill';
export interface ParentSizeState {
height: number;
width: number;
left: number;
top: number;
}
import * as React from 'react';
import { Config } from 'kapellmeister';
import { GetInterpolator } from '..';
export type MakeState<T> = { [P in keyof T]: T[P] extends number | string ? T[P] | T[P][] : MakeState<T[P]> };
export interface INodeGroupProps<T = any, State = any> {
data: T[];
keyAccessor: (data: T, index: number) => string | number;
start: (data: T, index: number) => State & Partial<Config>;
import { useState, useEffect } from 'react';
export interface UseFetchData<TData> {
data: TData;
isLoading: boolean;
error?: string;
}
export const useFetchData = <TData>(fetchUrl: string, defaultValue: TData): UseFetchData<TData> => {
const [data, setData] = useState<TData>(defaultValue);
@dagda1
dagda1 / d.ts
Created February 4, 2019 22:24
type Constructor<T> = { new(...args: any[]): T };
interface Decorate<T, Decorated>{
(clazz: Constructor<T>): Constructor<T & Decorated> { }
}
export type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;
import { EasingName, easing } from './easingMap';
import { useLayoutEffect, useState, useRef } from 'react';
export interface AnimationIncreaseProps {
easingName?: EasingName;
duration?: number;
diff: number;
}
export const useIncreaseAnimation = ({