@@ -12,7 +12,11 @@ const URL_SEARCH = API_ROOT + (process.env.VITE_REACT_APP_WP_SEARCH_END_POINT ??
1212
1313const URL_MEDIA = API_ROOT + '/wp/v2/media'
1414
15- const URL_SETTINGS = API_ROOT + '/dg/v1/settings'
15+ const URL_SETTINGS = API_ROOT + '/dg/v1/settings' ;
16+
17+ const URL_CATEGORIES = API_ROOT + '/wp/v2/categories'
18+
19+ const URL_YEAR_RANGE = API_ROOT + '/util-api/v1/year-range'
1620
1721
1822export const post = ( url : string , params : Record < string , unknown > , isBlob ?: boolean ) => {
@@ -120,7 +124,8 @@ export const getPosts = ({
120124 locale,
121125 previewNonce,
122126 previewId,
123- search
127+ search,
128+ after
124129} : {
125130 slug ?: string ;
126131 type ?: string ;
@@ -134,31 +139,44 @@ export const getPosts = ({
134139 previewNonce ?: string ;
135140 previewId ?: string ;
136141 search ?: string ;
142+ after ?: Date ;
137143} ) => {
138- //language , categories id, date before, record per page, number of page, fields to be included, post type
139- //const {lang, slug, wType: type, taxonomy, categories, before, perPage, page, fields} = params
140144
141145 let url = URL_API_BASE + ( type ?? 'posts' )
146+
142147 if ( previewId ) {
143148 url += '/' + previewId + '/revisions'
144149 + ( previewNonce ? '?_wpnonce=' + previewNonce + '&' : '' )
145150 } else {
146151 url += "?"
147152 }
148- url += '_embed=true&lang=' + locale
153+
154+ url += 'lang=' + locale
149155 + ( slug ? '&slug=' + slug : '' )
150156 if ( ! slug ) {
151157 url += ( categories ? ( taxonomy ? '&' + taxonomy : '&categories' )
152- + "=" + ( categories ?? "" ) : '' ) //ids
153- + ( before ? "&before=" + before . toISOString ( ) : "" )
158+ + "=" + ( categories ? categories : "" ) : '' ) //ids
154159 + ( perPage ? '&per_page=' + perPage : '' )
155160 + ( page ? '&page=' + page : '' )
156161 + ( fields ? '&_fields=' + fields : '' )
157162 + ( search ? '&search=' + search : '' )
158- }
159163
160- //url += "&lang=" + locale
161- return get ( url ) ;
164+ if ( before !== null && before !== undefined ) {
165+ if ( before instanceof Date ) {
166+ url += "&before=" + before . toISOString ( ) ;
167+ } else {
168+ url += "&before=" + before ;
169+ }
170+ }
171+ if ( after !== null && after !== undefined ) {
172+ if ( after instanceof Date ) {
173+ url += "&after=" + after . toISOString ( ) ;
174+ } else {
175+ url += "&after=" + after ;
176+ }
177+ }
178+ }
179+ return get ( url )
162180}
163181
164182export const getPages = ( {
@@ -232,10 +250,51 @@ export const getMedia = (slug: string, locale: string) : Promise<Media> => {
232250 return get ( URL_MEDIA + '/' + slug + '?lang=' + locale ) as Promise < Media > ;
233251}
234252
253+ export const getCategories = ( {
254+ context = 'view' ,
255+ page = 1 ,
256+ perPage = 10 ,
257+ search,
258+ exclude,
259+ include,
260+ order = 'asc' ,
261+ orderby = 'name' ,
262+ hideEmpty,
263+ parent,
264+ post,
265+ slug,
266+ locale
267+ } : {
268+ context ?: string ;
269+ page ?: number ;
270+ perPage ?: number ;
271+ search ?: string ;
272+ exclude ?: string ;
273+ include ?: string ;
274+ order ?: string ;
275+ orderby ?: string ;
276+ hideEmpty ?: boolean ;
277+ parent ?: string ;
278+ post ?: string ;
279+ slug ?: string ;
280+ locale ?: string ;
281+ } ) => {
282+ let url = URL_CATEGORIES + '?lang=' + locale
283+ + ( context ? '&context=' + context : '' )
284+ + ( page ? '&page=' + page : '' )
285+ + ( perPage ? '&per_page=' + perPage : '' )
286+ + ( search ? '&search=' + search : '' )
287+ + ( exclude ? '&exclude=' + exclude : '' )
288+ + ( include ? '&include=' + include : '' )
289+ + ( order ? '&order=' + order : '' )
290+ + ( orderby ? '&orderby=' + orderby : '' )
291+ + ( hideEmpty ? '&hide_empty=' + hideEmpty : '' )
292+ + ( parent ? '&parent=' + parent : '' )
293+ + ( post ? '&post=' + post : '' )
294+ + ( slug ? '&slug=' + slug : '' )
295+ return get ( url )
296+ }
235297
236-
237-
238- /*
239- export const getSettings = (slug, locale) => {
240- return get(URL_SETTINGS)
241- }*/
298+ export const getYearRange = ( ) => {
299+ return get ( URL_YEAR_RANGE )
300+ }
0 commit comments