UNPKG

pancake-client-sdk

Version:
128 lines 3.55 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TagResource = void 0; const base_1 = require("./base"); class TagResource extends base_1.BaseResource { /** * Get list of tags */ async list(params) { return this.client.get(this.getShopPath('/tags'), params); } /** * Get tag by ID */ async getById(tagId) { return this.client.get(this.getShopPath(`/tags/${tagId}`)); } /** * Create new tag */ async create(data) { return this.client.post(this.getShopPath('/tags'), data); } /** * Update tag */ async update(tagId, data) { return this.client.put(this.getShopPath(`/tags/${tagId}`), data); } /** * Delete tag */ async delete(tagId) { return this.client.delete(this.getShopPath(`/tags/${tagId}`)); } /** * List tag groups */ async listGroups(type) { return this.client.get(this.getShopPath('/tag-groups'), { type }); } /** * Create tag group */ async createGroup(data) { return this.client.post(this.getShopPath('/tag-groups'), data); } /** * Update tag group */ async updateGroup(groupId, data) { return this.client.put(this.getShopPath(`/tag-groups/${groupId}`), data); } /** * Delete tag group */ async deleteGroup(groupId) { return this.client.delete(this.getShopPath(`/tag-groups/${groupId}`)); } /** * Get resource tags */ async getResourceTags(resourceType, resourceId) { return this.client.get(this.getShopPath(`/${resourceType}/${resourceId}/tags`)); } /** * Add tags to resource */ async addTagsToResource(resourceType, resourceId, tagIds) { return this.client.post(this.getShopPath(`/${resourceType}/${resourceId}/tags`), { tag_ids: tagIds }); } /** * Remove tag from resource */ async removeTagFromResource(resourceType, resourceId, tagId) { return this.client.delete(this.getShopPath(`/${resourceType}/${resourceId}/tags/${tagId}`)); } /** * Get tag statistics */ async getStats() { return this.client.get(this.getShopPath('/tags/stats')); } /** * Bulk tag resources */ async bulkTag(data) { return this.client.post(this.getShopPath('/tags/bulk'), data); } /** * Get tag suggestions for resource */ async getSuggestions(resourceType, resourceId) { return this.client.get(this.getShopPath(`/${resourceType}/${resourceId}/tag-suggestions`)); } /** * List auto-tag rules */ async listAutoTagRules(type) { return this.client.get(this.getShopPath('/auto-tag-rules'), { type }); } /** * Create auto-tag rule */ async createAutoTagRule(data) { return this.client.post(this.getShopPath('/auto-tag-rules'), data); } /** * Update auto-tag rule */ async updateAutoTagRule(ruleId, data) { return this.client.put(this.getShopPath(`/auto-tag-rules/${ruleId}`), data); } /** * Delete auto-tag rule */ async deleteAutoTagRule(ruleId) { return this.client.delete(this.getShopPath(`/auto-tag-rules/${ruleId}`)); } /** * Run auto-tag rules */ async runAutoTagRules(params) { return this.client.post(this.getShopPath('/auto-tag-rules/run'), params || {}); } } exports.TagResource = TagResource; //# sourceMappingURL=tag.js.map