@commercelayer/sdk
Version:
Commerce Layer Javascript SDK
1 lines • 4.32 kB
Source Map (JSON)
{"version":3,"sources":["../src/resources/promotion_rules.ts"],"names":["ApiResource"],"mappings":";;;;;AAoCA,IAAM,cAAA,GAAN,MAAM,eAAA,SAAuBA,6BAAA,CAA2B;AAAA,EAEvD,OAAgB,IAAA,GAA0B,iBAAA;AAAA,EAE1C,MAAM,QAAA,CAAS,eAAA,EAAyC,MAAA,EAAmC,OAAA,EAA2D;AACrJ,IAAA,MAAM,gBAAA,GAAoB,gBAAkC,EAAA,IAAM,eAAA;AAClE,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAe,EAAE,IAAA,EAAM,UAAA,EAAW,EAAG,CAAA,gBAAA,EAAmB,gBAAgB,CAAA,SAAA,CAAA,EAAa,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC3H;AAAA,EAEA,MAAM,YAAA,CAAa,eAAA,EAAyC,MAAA,EAAsC,OAAA,EAA8D;AAC/J,IAAA,MAAM,gBAAA,GAAoB,gBAAkC,EAAA,IAAM,eAAA;AAClE,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAkB,EAAE,IAAA,EAAM,cAAA,EAAe,EAAG,CAAA,gBAAA,EAAmB,gBAAgB,CAAA,aAAA,CAAA,EAAiB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACtI;AAAA,EAGA,gBAAgB,QAAA,EAA0C;AACzD,IAAA,OAAO,QAAA,CAAS,IAAA,IAAS,QAAA,CAAS,IAAA,KAAS,eAAA,CAAe,IAAA;AAAA,EAC3D;AAAA,EAGA,aAAa,EAAA,EAAkD;AAC9D,IAAA,OAAO,KAAA,CAAM,qBAAuC,EAAE,CAAA;AAAA,EACvD;AAAA,EAEA,sBAAsB,GAAA,EAAmC;AACxD,IAAA,OAAO,KAAA,CAAM,qBAAA,CAAwC,GAAG,GAAG,CAAA;AAAA,EAC5D;AAAA,EAGA,IAAA,GAA0B;AACzB,IAAA,OAAO,eAAA,CAAe,IAAA;AAAA,EACvB;AAED,CAAA;AAGA,IAAM,QAAA,GAAW,IAAI,cAAA,EAAe;AACpC,IAAO,uBAAA,GAAQ","file":"chunk-ZLFWYCCG.cjs","sourcesContent":["import { ApiResource } from '../resource'\nimport type { Resource, ResourceId, ResourcesConfig, ResourceRel, ListResponse, ResourceSort, /* ResourceFilter */ } from '../resource'\nimport type { QueryParamsList } from '../query'\n\nimport type { Version } from './versions'\nimport type { EventStore } from './event_stores'\nimport type { PercentageDiscountPromotion } from './percentage_discount_promotions'\nimport type { FreeShippingPromotion } from './free_shipping_promotions'\nimport type { BuyXPayYPromotion } from './buy_x_pay_y_promotions'\nimport type { FreeGiftPromotion } from './free_gift_promotions'\nimport type { FixedPricePromotion } from './fixed_price_promotions'\nimport type { ExternalPromotion } from './external_promotions'\nimport type { FixedAmountPromotion } from './fixed_amount_promotions'\nimport type { FlexPromotion } from './flex_promotions'\n\n\ntype PromotionRuleType = 'promotion_rules'\ntype PromotionRuleRel = ResourceRel & { type: PromotionRuleType }\n\n\nexport type PromotionRuleSort = Pick<PromotionRule, 'id'> & ResourceSort\n// export type PromotionRuleFilter = Pick<PromotionRule, 'id'> & ResourceFilter\n\n\ninterface PromotionRule extends Resource {\n\t\n\treadonly type: PromotionRuleType\n\n\n\tpromotion?: PercentageDiscountPromotion | FreeShippingPromotion | BuyXPayYPromotion | FreeGiftPromotion | FixedPricePromotion | ExternalPromotion | FixedAmountPromotion | FlexPromotion | null\n\tversions?: Version[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\nclass PromotionRules extends ApiResource<PromotionRule> {\n\n\tstatic readonly TYPE: PromotionRuleType = 'promotion_rules' as const\n\n\tasync versions(promotionRuleId: string | PromotionRule, params?: QueryParamsList<Version>, options?: ResourcesConfig): Promise<ListResponse<Version>> {\n\t\tconst _promotionRuleId = (promotionRuleId as PromotionRule).id || promotionRuleId as string\n\t\treturn this.resources.fetch<Version>({ type: 'versions' }, `promotion_rules/${_promotionRuleId}/versions`, params, options) as unknown as ListResponse<Version>\n\t}\n\n\tasync event_stores(promotionRuleId: string | PromotionRule, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _promotionRuleId = (promotionRuleId as PromotionRule).id || promotionRuleId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `promotion_rules/${_promotionRuleId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\n\tisPromotionRule(resource: any): resource is PromotionRule {\n\t\treturn resource.type && (resource.type === PromotionRules.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): PromotionRuleRel {\n\t\treturn super.relationshipOneToOne<PromotionRuleRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): PromotionRuleRel[] {\n\t\treturn super.relationshipOneToMany<PromotionRuleRel>(...ids)\n\t}\n\n\n\ttype(): PromotionRuleType {\n\t\treturn PromotionRules.TYPE\n\t}\n\n}\n\n\nconst instance = new PromotionRules()\nexport default instance\n\nexport type { PromotionRules, PromotionRule, PromotionRuleType }\n"]}