mirror of
https://github.com/reduxjs/redux-devtools.git
synced 2025-07-27 08:30:02 +03:00
Stash
This commit is contained in:
parent
db6c2a2a9b
commit
c35cb3286b
|
@ -37,13 +37,12 @@
|
|||
},
|
||||
"dependencies": {
|
||||
"@types/base16": "^1.0.2",
|
||||
"@types/color-string": "^1.5.0",
|
||||
"@types/lodash.curry": "^4.1.6",
|
||||
"@types/lodash.flow": "^3.5.6",
|
||||
"base16": "^1.0.0",
|
||||
"color-string": "^1.5.3",
|
||||
"csstype": "^3.0.2",
|
||||
"lodash.curry": "^4.1.1",
|
||||
"lodash.flow": "^3.5.0",
|
||||
"pure-color": "^1.3.0"
|
||||
"lodash.curry": "^4.1.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@babel/cli": "^7.10.5",
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
type Color = [number, number, number];
|
||||
export type Color = [number, number, number];
|
||||
|
||||
export function yuv2rgb(yuv: Color): Color {
|
||||
const y = yuv[0],
|
||||
|
|
|
@ -1,10 +1,8 @@
|
|||
import curry from 'lodash.curry';
|
||||
import * as base16 from 'base16';
|
||||
import { Base16Theme } from 'base16';
|
||||
import rgb2hex from 'pure-color/convert/rgb2hex';
|
||||
import parse from 'pure-color/parse';
|
||||
import flow from 'lodash.flow';
|
||||
import { yuv2rgb, rgb2yuv } from './colorConverters';
|
||||
import { get, to } from 'color-string';
|
||||
import { Color, yuv2rgb, rgb2yuv } from './colorConverters';
|
||||
|
||||
const DEFAULT_BASE16 = base16.default;
|
||||
|
||||
|
@ -12,15 +10,16 @@ const BASE16_KEYS = Object.keys(DEFAULT_BASE16);
|
|||
|
||||
// we need a correcting factor, so that a dark, but not black background color
|
||||
// converts to bright enough inversed color
|
||||
const flip = (x) => (x < 0.25 ? 1 : x < 0.5 ? 0.9 - x : 1.1 - x);
|
||||
const flip = (x: number) => (x < 0.25 ? 1 : x < 0.5 ? 0.9 - x : 1.1 - x);
|
||||
|
||||
const invertColor = flow(
|
||||
parse,
|
||||
rgb2yuv,
|
||||
([y, u, v]) => [flip(y), u, v],
|
||||
yuv2rgb,
|
||||
rgb2hex
|
||||
);
|
||||
const invertColor = (colorString: string) => {
|
||||
const color = get.rgb(colorString);
|
||||
if (!color) throw new Error(`Unable to parse color: ${colorString}`);
|
||||
const [y, u, v] = rgb2yuv([color[0], color[1], color[2]]);
|
||||
const flippedYuv: Color = [flip(y), u, v];
|
||||
const rgb = yuv2rgb(flippedYuv);
|
||||
return to.hex(rgb);
|
||||
};
|
||||
|
||||
const merger = function merger(styling) {
|
||||
return (prevStyling) => ({
|
||||
|
|
|
@ -1,3 +1,11 @@
|
|||
import { Base16Theme } from 'base16';
|
||||
import * as CSS from 'csstype';
|
||||
|
||||
export type StylingValue = string | CSS.Properties |
|
||||
|
||||
export interface StylingConfig {
|
||||
extend?: string | Base16Theme;
|
||||
[name: string]: StylingValue;
|
||||
}
|
||||
|
||||
export type Theme = string | Base16Theme | StylingConfig;
|
||||
|
|
24
yarn.lock
24
yarn.lock
|
@ -3060,6 +3060,11 @@
|
|||
resolved "https://registry.yarnpkg.com/@types/color-name/-/color-name-1.1.1.tgz#1c1261bbeaa10a8055bbc5d8ab84b7b2afc846a0"
|
||||
integrity sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==
|
||||
|
||||
"@types/color-string@^1.5.0":
|
||||
version "1.5.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/color-string/-/color-string-1.5.0.tgz#0a9f3ee6bc9bd4f89693fc3f2bc30d47ad68afc3"
|
||||
integrity sha512-17/8LWbkfvoKgfnnBvKbUnPTzPtzBlSELf5FPvVt9dRTQW88igOYZZ78us9dmbY1301VtTBEnuPTKspvmtGDxA==
|
||||
|
||||
"@types/eslint-visitor-keys@^1.0.0":
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz#1ee30d79544ca84d68d4b3cdb0af4f205663dd2d"
|
||||
|
@ -3137,13 +3142,6 @@
|
|||
dependencies:
|
||||
"@types/lodash" "*"
|
||||
|
||||
"@types/lodash.flow@^3.5.6":
|
||||
version "3.5.6"
|
||||
resolved "https://registry.yarnpkg.com/@types/lodash.flow/-/lodash.flow-3.5.6.tgz#ecbdae376e610313ac6361430f2f59a8dc9a813f"
|
||||
integrity sha512-mpSgC8s1alwO8I5223G//0vSt1BTR395TdxbkprAUgedRaW71Ew9ajSIjk9hsSpWxGki6ExPDnI3zKeJjyeHwQ==
|
||||
dependencies:
|
||||
"@types/lodash" "*"
|
||||
|
||||
"@types/lodash@*":
|
||||
version "4.14.159"
|
||||
resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.159.tgz#61089719dc6fdd9c5cb46efc827f2571d1517065"
|
||||
|
@ -5456,7 +5454,7 @@ color-name@^1.0.0, color-name@~1.1.4:
|
|||
resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2"
|
||||
integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==
|
||||
|
||||
color-string@^1.5.2:
|
||||
color-string@^1.5.2, color-string@^1.5.3:
|
||||
version "1.5.3"
|
||||
resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.5.3.tgz#c9bbc5f01b58b5492f3d6857459cb6590ce204cc"
|
||||
integrity sha512-dC2C5qeWoYkxki5UAXapdjqO672AM4vZuPGRQfO8b5HKuKGBbKWpITyDYN7TOFKvRW7kOgAn3746clDBMDJyQw==
|
||||
|
@ -10724,11 +10722,6 @@ lodash.flattendeep@^4.4.0:
|
|||
resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
|
||||
integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=
|
||||
|
||||
lodash.flow@^3.5.0:
|
||||
version "3.5.0"
|
||||
resolved "https://registry.yarnpkg.com/lodash.flow/-/lodash.flow-3.5.0.tgz#87bf40292b8cf83e4e8ce1a3ae4209e20071675a"
|
||||
integrity sha1-h79AKSuM+D5OjOGjrkIJ4gBxZ1o=
|
||||
|
||||
lodash.get@^4.4.2:
|
||||
version "4.4.2"
|
||||
resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
|
||||
|
@ -13052,11 +13045,6 @@ punycode@^2.1.0, punycode@^2.1.1:
|
|||
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
|
||||
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
|
||||
|
||||
pure-color@^1.3.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/pure-color/-/pure-color-1.3.0.tgz#1fe064fb0ac851f0de61320a8bf796836422f33e"
|
||||
integrity sha1-H+Bk+wrIUfDeYTIKi/eWg2Qi8z4=
|
||||
|
||||
q@^1.1.2, q@^1.5.1:
|
||||
version "1.5.1"
|
||||
resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7"
|
||||
|
|
Loading…
Reference in New Issue
Block a user