diff --git a/packages/velo-external-db-core/lib/converters/data_utils.js b/packages/velo-external-db-core/lib/converters/data_utils.js index 029beecd7..4ea73bd0d 100644 --- a/packages/velo-external-db-core/lib/converters/data_utils.js +++ b/packages/velo-external-db-core/lib/converters/data_utils.js @@ -3,6 +3,8 @@ const crypto = require('crypto') const asWixData = e => generateIdsIfNeeded(packDates(e)) +const aggregationAsWixData = e => packDates(e) + const generateIdsIfNeeded = item => { if ('_id' in item) return item @@ -14,4 +16,4 @@ const generateIdsIfNeeded = item => { const packDates = item => Object.entries(item) .reduce((o, [k, v]) => ({ ...o, [k]: isDate(v) ? { $date: new Date(v).toISOString() } : v }), {}) -module.exports = { asWixData, generateIdsIfNeeded } \ No newline at end of file +module.exports = { asWixData, generateIdsIfNeeded, aggregationAsWixData } \ No newline at end of file diff --git a/packages/velo-external-db-core/lib/service/data.js b/packages/velo-external-db-core/lib/service/data.js index 946bafe00..bff2b54dd 100644 --- a/packages/velo-external-db-core/lib/service/data.js +++ b/packages/velo-external-db-core/lib/service/data.js @@ -1,4 +1,4 @@ -const { asWixData } = require('../converters/data_utils') +const { asWixData, aggregationAsWixData } = require('../converters/data_utils') const { getByIdFilterFor } = require ('../utils/data_utils') class DataService { @@ -63,7 +63,7 @@ class DataService { async aggregate(collectionName, filter, aggregation) { return { items: (await this.storage.aggregate(collectionName, filter, aggregation)) - .map( asWixData ), + .map( aggregationAsWixData ), totalCount: 0 } }