import BaseEntityClient from "../../common/clients/BaseEntityClient"; import PageClientInterface from "./PageClientInterface"; import HTTPRequest from "../../Request/entity/HTTPRequest"; import RequestPromise from "../../common/DTO/RequestPromise"; class PageClient extends BaseEntityClient implements PageClientInterface { private SLUG_PATH = `${this.getBasepath()}?slug=:slug`; getBasepath() { return "/page"; } getSlugPath(slug: string): string { const encodedSlug = encodeURI(slug); return this.SLUG_PATH.replace(":slug", encodedSlug); } getPageBySlug(httpRequest: HTTPRequest): RequestPromise { httpRequest.url = this.getSlugPath(httpRequest.data.slug); return super.get(httpRequest); } } export default PageClient;