@lucidcms/core
Version:
The core of the Lucid CMS. It's responsible for spinning up the API and serving the CMS.
2 lines • 1.57 kB
JavaScript
import{copy as e}from"../../../i18n/copy.mjs";import t from"../../../../utils/errors/lucid-api-error.mjs";import n from"../../../../services/ai/usage/get-usage.mjs";import r from"../../utils/create-service-context.mjs";import i from"../../../../utils/services/service-wrapper.mjs";import{Permissions as a}from"../../../permission/definitions.mjs";import o from"../../middleware/authenticate.mjs";import s from"../../middleware/permissions.mjs";import c from"../../middleware/validate.mjs";import l from"../../openapi/index.mjs";import u from"../../utils/build-response.mjs";import{controllerSchemas as d}from"../../../../schemas/ai.mjs";import f from"../../utils/build-formatted-query.mjs";import p from"zod";import{createFactory as m}from"hono/factory";import{describeRoute as h}from"hono-openapi";const g=m().createHandlers(h({description:`Returns stored AI usage records.`,tags:[`ai`],summary:`Get AI Usage`,responses:l.responses({schema:p.toJSONSchema(d.getUsage.response),paginated:!0}),parameters:l.parameters({query:d.getUsage.query.string})}),o(),s([a.SettingsRead]),c(`query`,d.getUsage.query.string),async a=>{let o=await f(a,d.getUsage.query.formatted),s=r(a),c=await i(n,{transaction:!1,defaultError:{type:`basic`,name:e(`server:core.routes.ai.usage.fetch.error.name`),message:e(`server:core.routes.ai.usage.fetch.error.message`)}})(s,{query:o});if(c.error)throw new t(c.error);return a.status(200),a.json(u(a,{data:c.data.data,pagination:{count:c.data.count,page:o.page,perPage:o.perPage}}))});export{g as default};
//# sourceMappingURL=get-usage.mjs.map