diff --git a/packages/core-api/src/routes/blocks.ts b/packages/core-api/src/routes/blocks.ts index 43753f707e..9b96a40b33 100644 --- a/packages/core-api/src/routes/blocks.ts +++ b/packages/core-api/src/routes/blocks.ts @@ -16,7 +16,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.blockCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.blocksOrderBy, transform: Joi.bool().default(true), }), }, @@ -77,7 +77,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, @@ -92,7 +92,7 @@ export const register = (server: Hapi.Server): void => { validate: { query: Joi.object({ ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.blocksOrderBy, transform: Joi.bool().default(true), }), payload: Joi.object({ diff --git a/packages/core-api/src/routes/transactions.ts b/packages/core-api/src/routes/transactions.ts index c78afcc519..de02f0c4bc 100644 --- a/packages/core-api/src/routes/transactions.ts +++ b/packages/core-api/src/routes/transactions.ts @@ -17,7 +17,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, @@ -107,7 +107,7 @@ export const register = (server: Hapi.Server): void => { validate: { query: Joi.object({ ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), payload: Joi.object({ diff --git a/packages/core-api/src/routes/votes.ts b/packages/core-api/src/routes/votes.ts index da56982d1a..ce5568355e 100644 --- a/packages/core-api/src/routes/votes.ts +++ b/packages/core-api/src/routes/votes.ts @@ -16,7 +16,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, diff --git a/packages/core-api/src/routes/wallets.ts b/packages/core-api/src/routes/wallets.ts index e8b1b0f951..76c74901d5 100644 --- a/packages/core-api/src/routes/wallets.ts +++ b/packages/core-api/src/routes/wallets.ts @@ -80,7 +80,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, @@ -99,7 +99,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, @@ -118,7 +118,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, @@ -137,7 +137,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, @@ -156,7 +156,7 @@ export const register = (server: Hapi.Server): void => { query: Joi.object({ ...server.app.schemas.transactionCriteriaSchemas, ...server.app.schemas.pagination, - orderBy: server.app.schemas.orderBy, + orderBy: server.app.schemas.transactionsOrderBy, transform: Joi.bool().default(true), }), }, diff --git a/packages/core-api/src/schemas.ts b/packages/core-api/src/schemas.ts index f4fe8e5b6f..2a60bc8512 100644 --- a/packages/core-api/src/schemas.ts +++ b/packages/core-api/src/schemas.ts @@ -65,6 +65,9 @@ export const createSchemas = (settings: SchemaSettings) => { "orderBy query parameter (:)", ); + const blocksOrderBy = orderBy.default("height:desc"); + const transactionsOrderBy = orderBy.default("timestamp:desc,sequence:desc"); + const equalCriteria = (value: any) => value; const numericCriteria = (value: any) => Joi.alternatives().try( @@ -127,6 +130,8 @@ export const createSchemas = (settings: SchemaSettings) => { numberFixedOrBetween, walletId, orderBy, + blocksOrderBy, + transactionsOrderBy, blockCriteriaSchemas, transactionCriteriaSchemas, };