From 79751c13e3b13bac7efc00c143685fb95ee52ed2 Mon Sep 17 00:00:00 2001 From: migalko94 Date: Mon, 23 Oct 2023 14:08:46 +0200 Subject: [PATCH] config jest packages --- .vscode/settings.json | 3 +++ packages/manfred2html/config/test/jest.js | 1 + packages/manfred2html/src/helpers/date-helpers.ts | 10 ++++++++++ packages/manfred2html/src/helpers/index.ts | 1 + packages/manfred2md/config/test/jest.js | 1 + packages/manfred2md/src/helpers/date-helpers.ts | 10 ++++++++++ packages/manfred2md/src/helpers/index.ts | 1 + packages/manfred2word/config/test/jest.js | 1 + packages/manfred2word/src/helpers/date-helpers.ts | 10 ++++++++++ packages/manfred2word/src/helpers/index.ts | 1 + 10 files changed, 39 insertions(+) create mode 100644 .vscode/settings.json create mode 100644 packages/manfred2html/src/helpers/date-helpers.ts create mode 100644 packages/manfred2html/src/helpers/index.ts create mode 100644 packages/manfred2md/src/helpers/date-helpers.ts create mode 100644 packages/manfred2md/src/helpers/index.ts create mode 100644 packages/manfred2word/src/helpers/date-helpers.ts create mode 100644 packages/manfred2word/src/helpers/index.ts diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..25fa6215 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "typescript.tsdk": "node_modules/typescript/lib" +} diff --git a/packages/manfred2html/config/test/jest.js b/packages/manfred2html/config/test/jest.js index 4ce181ab..10d85779 100644 --- a/packages/manfred2html/config/test/jest.js +++ b/packages/manfred2html/config/test/jest.js @@ -7,5 +7,6 @@ export default { moduleNameMapper: { '\\.(jpg|jpeg|png|svg)$': '/config/mocks/fileMock.js', + '^@/(.*)$': '/src/$1', }, }; diff --git a/packages/manfred2html/src/helpers/date-helpers.ts b/packages/manfred2html/src/helpers/date-helpers.ts new file mode 100644 index 00000000..5602f69b --- /dev/null +++ b/packages/manfred2html/src/helpers/date-helpers.ts @@ -0,0 +1,10 @@ +export const dateExtractor = (item: T, path: keyof T): number => { + const date = item[path]; + if (typeof date === 'string') { + return new Date(date).getTime(); + } + throw new Error(`Invalid path: ${path.toString()}`); +}; + +export const sortByDate = (array: T[], path: keyof T): T[] => + array.sort((a: T, b: T) => dateExtractor(b, path) - dateExtractor(a, path)); diff --git a/packages/manfred2html/src/helpers/index.ts b/packages/manfred2html/src/helpers/index.ts new file mode 100644 index 00000000..7a542764 --- /dev/null +++ b/packages/manfred2html/src/helpers/index.ts @@ -0,0 +1 @@ +export * from './date-helpers'; diff --git a/packages/manfred2md/config/test/jest.js b/packages/manfred2md/config/test/jest.js index 4ce181ab..10d85779 100644 --- a/packages/manfred2md/config/test/jest.js +++ b/packages/manfred2md/config/test/jest.js @@ -7,5 +7,6 @@ export default { moduleNameMapper: { '\\.(jpg|jpeg|png|svg)$': '/config/mocks/fileMock.js', + '^@/(.*)$': '/src/$1', }, }; diff --git a/packages/manfred2md/src/helpers/date-helpers.ts b/packages/manfred2md/src/helpers/date-helpers.ts new file mode 100644 index 00000000..5602f69b --- /dev/null +++ b/packages/manfred2md/src/helpers/date-helpers.ts @@ -0,0 +1,10 @@ +export const dateExtractor = (item: T, path: keyof T): number => { + const date = item[path]; + if (typeof date === 'string') { + return new Date(date).getTime(); + } + throw new Error(`Invalid path: ${path.toString()}`); +}; + +export const sortByDate = (array: T[], path: keyof T): T[] => + array.sort((a: T, b: T) => dateExtractor(b, path) - dateExtractor(a, path)); diff --git a/packages/manfred2md/src/helpers/index.ts b/packages/manfred2md/src/helpers/index.ts new file mode 100644 index 00000000..7a542764 --- /dev/null +++ b/packages/manfred2md/src/helpers/index.ts @@ -0,0 +1 @@ +export * from './date-helpers'; diff --git a/packages/manfred2word/config/test/jest.js b/packages/manfred2word/config/test/jest.js index 4ce181ab..10d85779 100644 --- a/packages/manfred2word/config/test/jest.js +++ b/packages/manfred2word/config/test/jest.js @@ -7,5 +7,6 @@ export default { moduleNameMapper: { '\\.(jpg|jpeg|png|svg)$': '/config/mocks/fileMock.js', + '^@/(.*)$': '/src/$1', }, }; diff --git a/packages/manfred2word/src/helpers/date-helpers.ts b/packages/manfred2word/src/helpers/date-helpers.ts new file mode 100644 index 00000000..5602f69b --- /dev/null +++ b/packages/manfred2word/src/helpers/date-helpers.ts @@ -0,0 +1,10 @@ +export const dateExtractor = (item: T, path: keyof T): number => { + const date = item[path]; + if (typeof date === 'string') { + return new Date(date).getTime(); + } + throw new Error(`Invalid path: ${path.toString()}`); +}; + +export const sortByDate = (array: T[], path: keyof T): T[] => + array.sort((a: T, b: T) => dateExtractor(b, path) - dateExtractor(a, path)); diff --git a/packages/manfred2word/src/helpers/index.ts b/packages/manfred2word/src/helpers/index.ts new file mode 100644 index 00000000..7a542764 --- /dev/null +++ b/packages/manfred2word/src/helpers/index.ts @@ -0,0 +1 @@ +export * from './date-helpers';