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