diff options
Diffstat (limited to 'packages/backend/src/server/api/endpoints/charts/active-users.ts')
| -rw-r--r-- | packages/backend/src/server/api/endpoints/charts/active-users.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/packages/backend/src/server/api/endpoints/charts/active-users.ts b/packages/backend/src/server/api/endpoints/charts/active-users.ts new file mode 100644 index 0000000000..c4878f7d61 --- /dev/null +++ b/packages/backend/src/server/api/endpoints/charts/active-users.ts @@ -0,0 +1,30 @@ +import $ from 'cafy'; +import define from '../../define'; +import { convertLog } from '@/services/chart/core'; +import { activeUsersChart } from '@/services/chart/index'; + +export const meta = { + tags: ['charts', 'users'], + + params: { + span: { + validator: $.str.or(['day', 'hour']), + }, + + limit: { + validator: $.optional.num.range(1, 500), + default: 30, + }, + + offset: { + validator: $.optional.nullable.num, + default: null, + }, + }, + + res: convertLog(activeUsersChart.schema), +}; + +export default define(meta, async (ps) => { + return await activeUsersChart.getChart(ps.span as any, ps.limit!, ps.offset ? new Date(ps.offset) : null); +}); |