Skip to content

Commit

Permalink
Change typings to always return null instead of undefined (#73)
Browse files Browse the repository at this point in the history
  • Loading branch information
screendriver authored Feb 14, 2025
1 parent f664009 commit cab7111
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 14 deletions.
20 changes: 10 additions & 10 deletions index.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,20 @@ export type Model = 'rgb' | 'hsl' | 'hwb';

export type ColorString = {
get: {
(color: string): {model: Model; value: number[]} | undefined;
rgb: (color: string) => number[] | undefined;
hsl: (color: string) => number[] | undefined;
hwb: (color: string) => number[] | undefined;
(color: string): {model: Model; value: number[]} | null;
rgb: (color: string) => number[] | null;
hsl: (color: string) => number[] | null;
hwb: (color: string) => number[] | null;
};
to: {
hex: (r: number, g: number, b: number, a?: number) => string | undefined;
hex: (r: number, g: number, b: number, a?: number) => string | null;
rgb: {
(r: number, g: number, b: number, a?: number): string | undefined;
percent: (r: number, g: number, b: number, a?: number) => string | undefined;
(r: number, g: number, b: number, a?: number): string | null;
percent: (r: number, g: number, b: number, a?: number) => string | null;
};
keyword: (r: number, g: number, b: number, a?: number) => string | undefined;
hsl: (h: number, s: number, l: number, a?: number) => string | undefined;
hwb: (h: number, w: number, b: number, a?: number) => string | undefined;
keyword: (r: number, g: number, b: number, a?: number) => string | null;
hsl: (h: number, s: number, l: number, a?: number) => string | null;
hwb: (h: number, w: number, b: number, a?: number) => string | null;
};
};

Expand Down
6 changes: 3 additions & 3 deletions index.test-d.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import {expectType} from 'tsd';
import colorString, {type Model} from './index.js';

type GetColorResult = {model: Model; value: number[]} | undefined;
type GetSpecificTypeResult = number[] | undefined;
type GetColorResult = {model: Model; value: number[]} | null;
type GetSpecificTypeResult = number[] | null;

type ToColorResult = string | undefined;
type ToColorResult = string | null;

expectType<GetColorResult>(colorString.get('#FFF'));
expectType<GetColorResult>(colorString.get('#FFFA'));
Expand Down
3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@
"xo": {
"rules": {
"no-cond-assign": 0,
"operator-linebreak": 0
"operator-linebreak": 0,
"@typescript-eslint/ban-types": 0
}
},
"dependencies": {
Expand Down

0 comments on commit cab7111

Please sign in to comment.