UNPKG

chargebee

Version:

A library for integrating with Chargebee.

196 lines (195 loc) 10.2 kB
"use strict"; // Generated Zod schemas: Item // Actions: create, update, list // Do not edit manually – regenerate via sdk-generator Object.defineProperty(exports, "__esModule", { value: true }); exports.ListItemBodySchema = exports.UpdateItemBodySchema = exports.CreateItemBodySchema = void 0; const zod_1 = require("zod"); //Item.create const CreateItemMetadataSchema = zod_1.z.looseObject({}); const CreateItemBundleConfigurationSchema = zod_1.z.object({ type: zod_1.z.enum(['fixed']).optional(), }); const CreateItemBundleItemsToAddSchema = zod_1.z.object({ item_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), item_type: zod_1.z.array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), price_allocation: zod_1.z.array(zod_1.z.number().min(0).max(100).optional()).optional(), }); const CreateItemBodySchema = zod_1.z.looseObject({ id: zod_1.z.string().max(100), name: zod_1.z.string().max(100), type: zod_1.z.enum(['plan', 'addon', 'charge']), description: zod_1.z.string().max(2000).optional(), item_family_id: zod_1.z.string().max(100), is_giftable: zod_1.z.boolean().default(false).optional(), is_shippable: zod_1.z.boolean().default(false).optional(), external_name: zod_1.z.string().max(100).optional(), enabled_in_portal: zod_1.z.boolean().default(true).optional(), redirect_url: zod_1.z.string().max(500).optional(), enabled_for_checkout: zod_1.z.boolean().default(true).optional(), item_applicability: zod_1.z.enum(['all', 'restricted']).optional(), applicable_items: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), unit: zod_1.z.string().max(30).optional(), gift_claim_redirect_url: zod_1.z.string().max(500).optional(), included_in_mrr: zod_1.z.boolean().optional(), metered: zod_1.z.boolean().default(false).optional(), usage_calculation: zod_1.z .enum(['sum_of_usages', 'last_usage', 'max_usage']) .optional(), is_percentage_pricing: zod_1.z.boolean().default(false).optional(), metadata: CreateItemMetadataSchema.optional(), business_entity_id: zod_1.z.string().max(50).optional(), bundle_configuration: CreateItemBundleConfigurationSchema.optional(), bundle_items_to_add: CreateItemBundleItemsToAddSchema.optional(), }); exports.CreateItemBodySchema = CreateItemBodySchema; //Item.update const UpdateItemMetadataSchema = zod_1.z.looseObject({}); const UpdateItemBundleConfigurationSchema = zod_1.z.object({ type: zod_1.z.enum(['fixed']).optional(), }); const UpdateItemBundleItemsToAddSchema = zod_1.z.object({ item_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), item_type: zod_1.z.array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), price_allocation: zod_1.z.array(zod_1.z.number().min(0).max(100).optional()).optional(), }); const UpdateItemBundleItemsToUpdateSchema = zod_1.z.object({ item_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), item_type: zod_1.z.array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()).optional(), quantity: zod_1.z.array(zod_1.z.number().int().min(1).optional()).optional(), price_allocation: zod_1.z.array(zod_1.z.number().min(0).max(100).optional()).optional(), }); const UpdateItemBundleItemsToRemoveSchema = zod_1.z.object({ item_id: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), item_type: zod_1.z.array(zod_1.z.enum(['plan', 'addon', 'charge']).optional()).optional(), }); const UpdateItemBodySchema = zod_1.z.looseObject({ name: zod_1.z.string().max(100).optional(), description: zod_1.z.string().max(2000).optional(), is_shippable: zod_1.z.boolean().default(false).optional(), external_name: zod_1.z.string().max(100).optional(), item_family_id: zod_1.z.string().max(100).optional(), enabled_in_portal: zod_1.z.boolean().default(true).optional(), redirect_url: zod_1.z.string().max(500).optional(), enabled_for_checkout: zod_1.z.boolean().default(true).optional(), item_applicability: zod_1.z.enum(['all', 'restricted']).optional(), clear_applicable_items: zod_1.z.boolean().default(false).optional(), applicable_items: zod_1.z.array(zod_1.z.string().max(100).optional()).optional(), unit: zod_1.z.string().max(30).optional(), gift_claim_redirect_url: zod_1.z.string().max(500).optional(), metadata: UpdateItemMetadataSchema.optional(), included_in_mrr: zod_1.z.boolean().optional(), status: zod_1.z.enum(['active', 'archived']).optional(), is_percentage_pricing: zod_1.z.boolean().default(false).optional(), bundle_configuration: UpdateItemBundleConfigurationSchema.optional(), bundle_items_to_add: UpdateItemBundleItemsToAddSchema.optional(), bundle_items_to_update: UpdateItemBundleItemsToUpdateSchema.optional(), bundle_items_to_remove: UpdateItemBundleItemsToRemoveSchema.optional(), }); exports.UpdateItemBodySchema = UpdateItemBodySchema; //Item.list const ListItemIdSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_not: zod_1.z.string().min(1).optional(), starts_with: zod_1.z.string().min(1).optional(), in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListItemItemFamilyIdSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_not: zod_1.z.string().min(1).optional(), starts_with: zod_1.z.string().min(1).optional(), in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), not_in: zod_1.z.string().regex(RegExp('^\\[(.*)(,.*)*\\]$')).optional(), }); const ListItemTypeSchema = zod_1.z.object({ is: zod_1.z.enum(['plan', 'addon', 'charge']).optional(), is_not: zod_1.z.enum(['plan', 'addon', 'charge']).optional(), in: zod_1.z.enum(['plan', 'addon', 'charge']).optional(), not_in: zod_1.z.enum(['plan', 'addon', 'charge']).optional(), }); const ListItemNameSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_not: zod_1.z.string().min(1).optional(), starts_with: zod_1.z.string().min(1).optional(), }); const ListItemItemApplicabilitySchema = zod_1.z.object({ is: zod_1.z.enum(['all', 'restricted']).optional(), is_not: zod_1.z.enum(['all', 'restricted']).optional(), in: zod_1.z.enum(['all', 'restricted']).optional(), not_in: zod_1.z.enum(['all', 'restricted']).optional(), }); const ListItemStatusSchema = zod_1.z.object({ is: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), is_not: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), in: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), not_in: zod_1.z.enum(['active', 'archived', 'deleted']).optional(), }); const ListItemIsGiftableSchema = zod_1.z.object({ is: zod_1.z.enum(['true', 'false']).optional(), }); const ListItemUpdatedAtSchema = zod_1.z.object({ after: zod_1.z.string().regex(RegExp('^\\d{10}$')).optional(), before: zod_1.z.string().regex(RegExp('^\\d{10}$')).optional(), on: zod_1.z.string().regex(RegExp('^\\d{10}$')).optional(), between: zod_1.z.string().regex(RegExp('^\\[\\d{10},\\d{10}\\]$')).optional(), }); const ListItemEnabledForCheckoutSchema = zod_1.z.object({ is: zod_1.z.enum(['true', 'false']).optional(), }); const ListItemEnabledInPortalSchema = zod_1.z.object({ is: zod_1.z.enum(['true', 'false']).optional(), }); const ListItemMeteredSchema = zod_1.z.object({ is: zod_1.z.enum(['true', 'false']).optional(), }); const ListItemUsageCalculationSchema = zod_1.z.object({ is: zod_1.z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), is_not: zod_1.z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), in: zod_1.z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), not_in: zod_1.z.enum(['sum_of_usages', 'last_usage', 'max_usage']).optional(), }); const ListItemChannelSchema = zod_1.z.object({ is: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), is_not: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), in: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), not_in: zod_1.z.enum(['web', 'app_store', 'play_store']).optional(), }); const ListItemBusinessEntityIdSchema = zod_1.z.object({ is: zod_1.z.string().min(1).optional(), is_present: zod_1.z.enum(['true', 'false']).optional(), }); const ListItemIncludeSiteLevelResourcesSchema = zod_1.z.object({ is: zod_1.z.enum(['true', 'false']).optional(), }); const ListItemSortBySchema = zod_1.z.looseObject({ asc: zod_1.z.enum(['name', 'id', 'updated_at']).optional(), desc: zod_1.z.enum(['name', 'id', 'updated_at']).optional(), }); const ListItemBundleConfigurationSchema = zod_1.z.object({ type: ListItemTypeSchema.optional(), }); const ListItemBodySchema = zod_1.z.looseObject({ limit: zod_1.z.number().int().min(1).max(100).optional(), offset: zod_1.z.string().max(1000).optional(), id: ListItemIdSchema.optional(), item_family_id: ListItemItemFamilyIdSchema.optional(), type: ListItemTypeSchema.optional(), name: ListItemNameSchema.optional(), item_applicability: ListItemItemApplicabilitySchema.optional(), status: ListItemStatusSchema.optional(), is_giftable: ListItemIsGiftableSchema.optional(), updated_at: ListItemUpdatedAtSchema.optional(), enabled_for_checkout: ListItemEnabledForCheckoutSchema.optional(), enabled_in_portal: ListItemEnabledInPortalSchema.optional(), metered: ListItemMeteredSchema.optional(), usage_calculation: ListItemUsageCalculationSchema.optional(), channel: ListItemChannelSchema.optional(), business_entity_id: ListItemBusinessEntityIdSchema.optional(), include_site_level_resources: ListItemIncludeSiteLevelResourcesSchema.optional(), sort_by: ListItemSortBySchema.optional(), bundle_configuration: ListItemBundleConfigurationSchema.optional(), }); exports.ListItemBodySchema = ListItemBodySchema;