UNPKG

@localazy/strapi-plugin

Version:

The official Strapi Plugin by Localazy.

61 lines (60 loc) 1.84 kB
import { c as createStrapiApiAxiosInstance } from "./index-C15Goe6p.mjs"; const BASE_PATH = "/entry-exclusion"; const axiosInstance = createStrapiApiAxiosInstance(); class EntryExclusionService { /** * Get entry exclusion state for a specific entry */ static async getEntryExclusion(contentType, documentId) { try { const result = await axiosInstance.get(`${BASE_PATH}/${contentType}/${documentId}`); return result.data.isExcluded; } catch (error) { console.error("Error getting entry exclusion:", error); throw error; } } /** * Set entry exclusion state for a specific entry */ static async setEntryExclusion(contentType, documentId, isExcluded) { try { const result = await axiosInstance.put(`${BASE_PATH}/${contentType}/${documentId}`, { isExcluded }); return result.data.isExcluded; } catch (error) { console.error("Error setting entry exclusion:", error); throw error; } } /** * Set exclusion state for multiple entries */ static async setMultipleEntriesExclusion(contentType, documentIds, isExcluded) { try { for (let i = 0; i < documentIds.length; i++) { const docId = documentIds[i]; await this.setEntryExclusion(contentType, docId, isExcluded); } } catch (error) { console.error("Error setting multiple entries exclusion:", error); throw error; } } /** * Get all excluded entries for a content type */ static async getContentTypeExclusions(contentType) { try { const result = await axiosInstance.get(`${BASE_PATH}/${contentType}`); return result.data.excludedIds; } catch (error) { console.error("Error getting content type exclusions:", error); throw error; } } } export { EntryExclusionService as default };