@commercelayer/sdk
Version:
Commerce Layer Javascript SDK
1 lines • 4.14 kB
Source Map (JSON)
{"version":3,"sources":["../src/resources/tags.ts"],"names":["ApiResource"],"mappings":";;;;;AAoDA,IAAM,IAAA,GAAN,MAAM,KAAA,SAAaA,6BAAA,CAAiB;AAAA,EAEnC,OAAgB,IAAA,GAAgB,MAAA;AAAA,EAEhC,MAAM,MAAA,CAAO,QAAA,EAAqB,MAAA,EAAmC,OAAA,EAAyC;AAC7G,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAAuB,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,KAAA,CAAK,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC/F;AAAA,EAEA,MAAM,MAAA,CAAO,QAAA,EAAqB,MAAA,EAAmC,OAAA,EAAyC;AAC7G,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAAuB,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,KAAA,CAAK,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC/F;AAAA,EAEA,MAAM,MAAA,CAAO,EAAA,EAAyB,OAAA,EAA0C;AAC/E,IAAA,MAAM,IAAA,CAAK,SAAA,CAAU,MAAA,CAAQ,OAAO,EAAA,KAAO,QAAA,GAAW,EAAE,EAAA,EAAI,IAAA,EAAM,KAAA,CAAK,IAAA,EAAK,GAAI,IAAI,OAAO,CAAA;AAAA,EAC5F;AAAA,EAEA,MAAM,YAAA,CAAa,KAAA,EAAqB,MAAA,EAAsC,OAAA,EAA8D;AAC3I,IAAA,MAAM,MAAA,GAAU,MAAc,EAAA,IAAM,KAAA;AACpC,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAkB,EAAE,IAAA,EAAM,cAAA,EAAe,EAAG,CAAA,KAAA,EAAQ,MAAM,CAAA,aAAA,CAAA,EAAiB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACjH;AAAA,EAGA,MAAM,QAAA,EAAgC;AACrC,IAAA,OAAO,QAAA,CAAS,IAAA,IAAS,QAAA,CAAS,IAAA,KAAS,KAAA,CAAK,IAAA;AAAA,EACjD;AAAA,EAGA,aAAa,EAAA,EAAwC;AACpD,IAAA,OAAO,KAAA,CAAM,qBAA6B,EAAE,CAAA;AAAA,EAC7C;AAAA,EAEA,sBAAsB,GAAA,EAAyB;AAC9C,IAAA,OAAO,KAAA,CAAM,qBAAA,CAA8B,GAAG,GAAG,CAAA;AAAA,EAClD;AAAA,EAGA,IAAA,GAAgB;AACf,IAAA,OAAO,KAAA,CAAK,IAAA;AAAA,EACb;AAED,CAAA;AAGA,IAAM,QAAA,GAAW,IAAI,IAAA,EAAK;AAC1B,IAAO,YAAA,GAAQ","file":"chunk-6LHRWK5U.cjs","sourcesContent":["import { ApiResource } from '../resource'\nimport type { Resource, ResourceCreate, ResourceUpdate, ResourceId, ResourcesConfig, ResourceRel, ListResponse, ResourceSort, /* ResourceFilter */ } from '../resource'\nimport type { QueryParamsRetrieve, QueryParamsList } from '../query'\n\nimport type { EventStore } from './event_stores'\n\n\ntype TagType = 'tags'\ntype TagRel = ResourceRel & { type: TagType }\n\n\nexport type TagSort = Pick<Tag, 'id' | 'name'> & ResourceSort\n// export type TagFilter = Pick<Tag, 'id' | 'name'> & ResourceFilter\n\n\ninterface Tag extends Resource {\n\t\n\treadonly type: TagType\n\n\t/** \n\t * The tag name.\n\t * @example ```\"new_campaign\"```\n\t */\n\tname: string\n\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface TagCreate extends ResourceCreate {\n\t\n\t/** \n\t * The tag name.\n\t * @example ```\"new_campaign\"```\n\t */\n\tname: string\n\t\n}\n\n\ninterface TagUpdate extends ResourceUpdate {\n\t\n\t/** \n\t * The tag name.\n\t * @example ```\"new_campaign\"```\n\t */\n\tname?: string | null\n\t\n}\n\n\nclass Tags extends ApiResource<Tag> {\n\n\tstatic readonly TYPE: TagType = 'tags' as const\n\n\tasync create(resource: TagCreate, params?: QueryParamsRetrieve<Tag>, options?: ResourcesConfig): Promise<Tag> {\n\t\treturn this.resources.create<TagCreate, Tag>({ ...resource, type: Tags.TYPE }, params, options)\n\t}\n\n\tasync update(resource: TagUpdate, params?: QueryParamsRetrieve<Tag>, options?: ResourcesConfig): Promise<Tag> {\n\t\treturn this.resources.update<TagUpdate, Tag>({ ...resource, type: Tags.TYPE }, params, options)\n\t}\n\n\tasync delete(id: string | ResourceId, options?: ResourcesConfig): Promise<void> {\n\t\tawait this.resources.delete((typeof id === 'string')? { id, type: Tags.TYPE } : id, options)\n\t}\n\n\tasync event_stores(tagId: string | Tag, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _tagId = (tagId as Tag).id || tagId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `tags/${_tagId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\n\tisTag(resource: any): resource is Tag {\n\t\treturn resource.type && (resource.type === Tags.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): TagRel {\n\t\treturn super.relationshipOneToOne<TagRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): TagRel[] {\n\t\treturn super.relationshipOneToMany<TagRel>(...ids)\n\t}\n\n\n\ttype(): TagType {\n\t\treturn Tags.TYPE\n\t}\n\n}\n\n\nconst instance = new Tags()\nexport default instance\n\nexport type { Tags, Tag, TagCreate, TagUpdate, TagType }\n"]}