From 34c887c3f6b1c8eefc849de24cbaa4f457ec728e Mon Sep 17 00:00:00 2001 From: Ryan Smith <0ryansmith1994@gmail.com> Date: Tue, 20 Mar 2018 10:23:27 +0000 Subject: [PATCH] fix(deps): Updates to core v7. --- package-lock.json | 6 +++--- package.json | 2 +- src/functions/getEntities.ts | 13 ++++++++----- src/utils/sortEntities.ts | 5 +++-- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/package-lock.json b/package-lock.json index e491c6d1..b9bdad9d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -33,9 +33,9 @@ } }, "@js-entity-repos/core": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@js-entity-repos/core/-/core-6.0.2.tgz", - "integrity": "sha512-rt9hDbLnq6sKemo/Pn48mATUzSPgwRLWPcOOSsNdVkhppKEa3a/Nuej4MxAqZVNmzploBYZzlu7HZ3gfmWQrrw==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@js-entity-repos/core/-/core-7.1.0.tgz", + "integrity": "sha512-rp2f1R8k5vGfoY5Bb4HzgtaRodV7EbrkqyhzcDzFikJOxyjX8++5D1exck1JZe++Ch3nJ8t8gwXK3ss+xtjSMg==", "requires": { "btoa": "1.1.2", "lodash": "4.17.5", diff --git a/package.json b/package.json index 72767341..f2ec7fab 100644 --- a/package.json +++ b/package.json @@ -25,7 +25,7 @@ "check-coverage": true }, "dependencies": { - "@js-entity-repos/core": "^6.0.2", + "@js-entity-repos/core": "^7.1.0", "lodash": "^4.17.4", "sift": "^5.0.0" }, diff --git a/src/functions/getEntities.ts b/src/functions/getEntities.ts index 464389fe..a2c15245 100644 --- a/src/functions/getEntities.ts +++ b/src/functions/getEntities.ts @@ -1,6 +1,9 @@ import GetEntities from '@js-entity-repos/core/dist/signatures/GetEntities'; import Entity from '@js-entity-repos/core/dist/types/Entity'; +import Pagination from '@js-entity-repos/core/dist/types/Pagination'; +import { forward } from '@js-entity-repos/core/dist/types/PaginationDirection'; import Sort from '@js-entity-repos/core/dist/types/Sort'; +import { asc } from '@js-entity-repos/core/dist/types/SortOrder'; import createCursorFromEntity from '@js-entity-repos/core/dist/utils/createCursorFromEntity'; import createPaginationFilter from '@js-entity-repos/core/dist/utils/createPaginationFilter'; import { first, last } from 'lodash'; @@ -9,20 +12,20 @@ import filterEntities from '../utils/filterEntities'; import sortEntities from '../utils/sortEntities'; export default (config: Config): GetEntities => { - const defaultPagination = { + const defaultPagination: Pagination = { cursor: undefined, - forward: true, + direction: forward, limit: config.defaultPaginationLimit, }; - const defaultSort = { id: true } as Sort; + const defaultSort = { id: asc } as Sort; return async ({ filter = {}, sort = defaultSort, pagination = defaultPagination }) => { const paginationFilter = createPaginationFilter(pagination, sort); const fullFilter = { $and: [filter, paginationFilter] }; const storedEntities = config.getEntities(); const matchedEntities = filterEntities({ entities: storedEntities, filter: fullFilter }); const sortedEntities = sortEntities({ entities: matchedEntities, sort }); - const start = pagination.forward ? 0 : 0 - pagination.limit; - const end = pagination.forward ? pagination.limit : undefined; + const start = pagination.direction === forward ? 0 : 0 - pagination.limit; + const end = pagination.direction === forward ? pagination.limit : undefined; const entities = sortedEntities.slice(start, end); const nextCursor = createCursorFromEntity(last(entities), sort); const previousCursor = createCursorFromEntity(first(entities), sort); diff --git a/src/utils/sortEntities.ts b/src/utils/sortEntities.ts index b2ff171a..c49c2da2 100644 --- a/src/utils/sortEntities.ts +++ b/src/utils/sortEntities.ts @@ -1,5 +1,6 @@ import Entity from '@js-entity-repos/core/dist/types/Entity'; import Sort from '@js-entity-repos/core/dist/types/Sort'; +import SortOrder, { asc } from '@js-entity-repos/core/dist/types/SortOrder'; import { orderBy } from 'lodash'; export interface Opts { @@ -10,8 +11,8 @@ export interface Opts { export default ({ entities, sort }: Opts) => { const sortKeys = Object.keys(sort); const sortDirections = sortKeys.map((sortKey) => { - const sortAscending = (sort as any)[sortKey] as boolean; - return sortAscending ? 'asc' : 'desc'; + const sortOrder = (sort as any)[sortKey] as SortOrder; + return sortOrder === asc ? 'asc' : 'desc'; }); return orderBy(entities, sortKeys, sortDirections); };