From 33e03c8f94c8646d01823526840b66ff12876c10 Mon Sep 17 00:00:00 2001 From: m5d215 Date: Tue, 22 Jan 2019 10:34:23 +0900 Subject: [PATCH 1/2] [badgen] Add types --- types/badgen/badgen-tests.ts | 24 ++++++++++++++++ types/badgen/index.d.ts | 53 ++++++++++++++++++++++++++++++++++++ types/badgen/tsconfig.json | 23 ++++++++++++++++ types/badgen/tslint.json | 3 ++ 4 files changed, 103 insertions(+) create mode 100644 types/badgen/badgen-tests.ts create mode 100644 types/badgen/index.d.ts create mode 100644 types/badgen/tsconfig.json create mode 100644 types/badgen/tslint.json diff --git a/types/badgen/badgen-tests.ts b/types/badgen/badgen-tests.ts new file mode 100644 index 0000000000..1b795b3d72 --- /dev/null +++ b/types/badgen/badgen-tests.ts @@ -0,0 +1,24 @@ +import badgen from 'badgen'; + +// $ExpectType string +badgen({ + subject: 'SUBJECT', + status: 'STATUS' +}); + +// $ExpectType string +badgen({ + subject: 'SUBJECT', + status: 'STATUS', + color: 'green' +}); + +// $ExpectType string +badgen({ + subject: 'SUBJECT', + status: 'STATUS', + color: '#FF0000', + style: 'flat', + icon: 'data:image/svg+xml;base64,...', + iconWidth: 20 +}); diff --git a/types/badgen/index.d.ts b/types/badgen/index.d.ts new file mode 100644 index 0000000000..ffcb380c52 --- /dev/null +++ b/types/badgen/index.d.ts @@ -0,0 +1,53 @@ +// Type definitions for badgen 2.6 +// Project: https://github.com/amio/badgen +// Definitions by: m5d215 +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped +// TypeScript Version: 2.1 + +export type ColorPresets = + | 'green' + | 'blue' + | 'red' + | 'yellow' + | 'orange' + | 'purple' + | 'pink' + | 'grey' + | 'gray' + | 'cyan' + | 'black'; + +export interface BadgeCreationParams { + /** + * Text representing the subject. + */ + subject: string; + + /** + * Text representing the status. + */ + status: string; + + /** + * Color RGB or Color Name, optional. + */ + color?: ColorPresets | string; + + /** + * 'flat' or undefined, optional. + */ + style?: 'flat'; + + /** + * Use icon, optional. + */ + icon?: string; + + /** + * Use this if icon is not square. + * @default 13 + */ + iconWidth?: number; +} + +export default function badgen(params: BadgeCreationParams): string; diff --git a/types/badgen/tsconfig.json b/types/badgen/tsconfig.json new file mode 100644 index 0000000000..4d9951dd15 --- /dev/null +++ b/types/badgen/tsconfig.json @@ -0,0 +1,23 @@ +{ + "compilerOptions": { + "module": "commonjs", + "lib": [ + "es6" + ], + "noImplicitAny": true, + "noImplicitThis": true, + "strictNullChecks": true, + "strictFunctionTypes": true, + "baseUrl": "../", + "typeRoots": [ + "../" + ], + "types": [], + "noEmit": true, + "forceConsistentCasingInFileNames": true + }, + "files": [ + "index.d.ts", + "badgen-tests.ts" + ] +} diff --git a/types/badgen/tslint.json b/types/badgen/tslint.json new file mode 100644 index 0000000000..f93cf8562a --- /dev/null +++ b/types/badgen/tslint.json @@ -0,0 +1,3 @@ +{ + "extends": "dtslint/dt.json" +} From 59b0bc6482d831f2c284733655723b742f952041 Mon Sep 17 00:00:00 2001 From: m5d215 Date: Wed, 23 Jan 2019 09:16:18 +0900 Subject: [PATCH 2/2] Correspond to review --- types/badgen/index.d.ts | 10 ++++++---- types/badgen/tsconfig.json | 3 ++- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/types/badgen/index.d.ts b/types/badgen/index.d.ts index ffcb380c52..cc6aa1fe54 100644 --- a/types/badgen/index.d.ts +++ b/types/badgen/index.d.ts @@ -2,9 +2,9 @@ // Project: https://github.com/amio/badgen // Definitions by: m5d215 // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped -// TypeScript Version: 2.1 +// TypeScript Version: 2.7 -export type ColorPresets = +type ColorPresets = | 'green' | 'blue' | 'red' @@ -17,7 +17,7 @@ export type ColorPresets = | 'cyan' | 'black'; -export interface BadgeCreationParams { +interface BadgeCreationParams { /** * Text representing the subject. */ @@ -50,4 +50,6 @@ export interface BadgeCreationParams { iconWidth?: number; } -export default function badgen(params: BadgeCreationParams): string; +declare function badgen(params: BadgeCreationParams): string; + +export = badgen; diff --git a/types/badgen/tsconfig.json b/types/badgen/tsconfig.json index 4d9951dd15..8e915b8aac 100644 --- a/types/badgen/tsconfig.json +++ b/types/badgen/tsconfig.json @@ -14,7 +14,8 @@ ], "types": [], "noEmit": true, - "forceConsistentCasingInFileNames": true + "forceConsistentCasingInFileNames": true, + "esModuleInterop": true }, "files": [ "index.d.ts",