import { GrabUserResourceParams } from "."; import _ from "lodash"; import { DsqlCrudQueryObject } from "../../../../types"; import ResourceLimits from "../../../../dict/resource-limits"; import _n from "../../../../utils/numberfy"; export default function (params?: GrabUserResourceParams) { let queryObject: DsqlCrudQueryObject<{ [k: string]: any }> = { limit: params?.noLimit ? undefined : ResourceLimits["general"], order: { field: "id", strategy: "DESC", }, }; if (params?.targetID) { const targetIDQuery: DsqlCrudQueryObject<{ [k: string]: any }> = { query: { id: { value: _n(params.targetID).toString(), }, }, }; queryObject = _.merge(queryObject, targetIDQuery); } let queryFixedObject: DsqlCrudQueryObject<{ [k: string]: any }> = params?.isSuperUser ? {} : { query: { user_id: { value: String(params?.userId || 0), }, }, }; return _.merge(queryObject, params?.query, queryFixedObject); }