From e98882a4f5f8d514f48218cf32ccb76c63e517d8 Mon Sep 17 00:00:00 2001 From: Oscar Busk Date: Thu, 23 Jun 2022 00:10:18 +0200 Subject: [PATCH 1/3] Fix incorrect type export. Using the recommended export from for umd mentioned in https://devblogs.microsoft.com/typescript/writing-dts-files-for-types/ --- README.md | 6 +++--- index.d.ts | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 460f926..cf1c9a8 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ export interface File { type: 'add' | 'delete' | 'modify' | 'rename'; } -export default { - parse(source: string): File[]; -}; +export function parse(source: string): File[]; + +export as namespace gitDiffParser; ``` diff --git a/index.d.ts b/index.d.ts index ba78dd7..c05de18 100644 --- a/index.d.ts +++ b/index.d.ts @@ -50,6 +50,6 @@ export interface File { type: FileType; } -export default { - parse(source: string): File[]; -}; +export function parse(source: string): File[]; + +export as namespace gitDiffParser; From 05471621fe37f82681aa96b7dc1ced5845f51ac6 Mon Sep 17 00:00:00 2001 From: Oscar Busk Date: Thu, 23 Jun 2022 00:11:05 +0200 Subject: [PATCH 2/3] Update types in README.md to match the new types in the code --- README.md | 35 ++++++++++++++++++++++++++--------- 1 file changed, 26 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index cf1c9a8..3f7fe0f 100644 --- a/README.md +++ b/README.md @@ -21,17 +21,32 @@ gitDiffParser.parse(gitDiffText); ### API ```ts -export interface Change { +export type ChangeType = 'insert' | 'delete' | 'normal'; + +export interface InsertChange { + type: 'insert'; content: string; - type: 'insert' | 'delete' | 'normal'; - isInsert?: boolean; - isDelete?: boolean; - isNormal?: boolean; - lineNumber?: number; - oldLineNumber?: number; - newLineNumber?: number; + lineNumber: number; + isInsert: true; } +export interface DeleteChange { + type: 'delete'; + content: string; + lineNumber: number; + isDelete: true; +} + +export interface NormalChange { + type: 'normal'; + content: string; + isNormal: true; + oldLineNumber: number; + newLineNumber: number; +} + +export type Change = InsertChange | DeleteChange | NormalChange; + export interface Hunk { content: string; oldStart: number; @@ -41,6 +56,8 @@ export interface Hunk { changes: Change[]; } +export type FileType = 'add' | 'delete' | 'modify' | 'rename' | 'copy'; + export interface File { hunks: Hunk[]; oldEndingNewLine: boolean; @@ -53,7 +70,7 @@ export interface File { oldPath: string; newPath: string; isBinary?: boolean; - type: 'add' | 'delete' | 'modify' | 'rename'; + type: FileType; } export function parse(source: string): File[]; From 39a858c4ab77b49e2c117e2e0952433320e626c3 Mon Sep 17 00:00:00 2001 From: Oscar Busk Date: Wed, 12 Apr 2023 18:54:20 +0200 Subject: [PATCH 3/3] Base ChangeType on defined types in Changes --- README.md | 4 ++-- index.d.ts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 3f7fe0f..b4778b3 100644 --- a/README.md +++ b/README.md @@ -21,8 +21,6 @@ gitDiffParser.parse(gitDiffText); ### API ```ts -export type ChangeType = 'insert' | 'delete' | 'normal'; - export interface InsertChange { type: 'insert'; content: string; @@ -47,6 +45,8 @@ export interface NormalChange { export type Change = InsertChange | DeleteChange | NormalChange; +export type ChangeType = Change['type']; + export interface Hunk { content: string; oldStart: number; diff --git a/index.d.ts b/index.d.ts index c05de18..11d6842 100644 --- a/index.d.ts +++ b/index.d.ts @@ -1,5 +1,3 @@ -export type ChangeType = 'insert' | 'delete' | 'normal'; - export interface InsertChange { type: 'insert'; content: string; @@ -24,6 +22,8 @@ export interface NormalChange { export type Change = InsertChange | DeleteChange | NormalChange; +export type ChangeType = Change['type']; + export interface Hunk { content: string; oldStart: number;