UNPKG

@simpleapps-com/augur-api

Version:

TypeScript client library for Augur microservices API endpoints

85 lines 2.93 kB
import { ContentParamsSchema, ContentResponseSchema, ContentIdParamsSchema, ContentIdResponseSchema, ContentIdDocParamsSchema, ContentIdDocResponseSchema, } from '../schemas'; /** * Creates the content resource methods * OpenAPI Path: /content → content.* * @description Content management operations */ export function createContentResource(executeRequest) { return { /** * List content items - /content GET * @fullPath api.joomla.content.list * @service joomla * @domain content-management * @dataMethod contentData.list * @discoverable true */ list: async (params) => { return executeRequest({ method: 'GET', path: '/content', paramsSchema: ContentParamsSchema, responseSchema: ContentResponseSchema, }, params); }, /** * Get content by ID - /content/{id} GET * @fullPath api.joomla.content.get * @service joomla * @domain content-management * @dataMethod contentData.get * @discoverable true */ get: async (contentId, params) => { return executeRequest({ method: 'GET', path: '/content/{id}', paramsSchema: ContentIdParamsSchema, responseSchema: ContentIdResponseSchema, }, params, { id: String(contentId) }); }, /** * Content document endpoints - /content/{id}/doc */ doc: { /** * Get content document - /content/{id}/doc GET * @fullPath api.joomla.content.doc.get * @service joomla * @domain content-management * @dataMethod contentData.doc.get * @discoverable true */ get: async (contentId, params) => { return executeRequest({ method: 'GET', path: '/content/{id}/doc', paramsSchema: ContentIdDocParamsSchema, responseSchema: ContentIdDocResponseSchema, }, params, { id: String(contentId) }); }, }, }; } /** * Creates the contentData resource methods (data-only versions) */ export function createContentDataResource(content) { return { list: async (params) => { const response = await content.list(params); return response.data; }, get: async (contentId, params) => { const response = await content.get(contentId, params); return response.data; }, doc: { get: async (contentId, params) => { const response = await content.doc.get(contentId, params); return response.data; }, }, }; } //# sourceMappingURL=content.js.map