UNPKG

@commercelayer/sdk

Version:
1 lines 8.29 kB
{"version":3,"sources":["../src/resources/customer_addresses.ts"],"names":["ApiResource"],"mappings":"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","file":"chunk-PA43CMMI.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 { Customer, CustomerType } from './customers'\nimport type { Address, AddressType } from './addresses'\nimport type { Event } from './events'\nimport type { Version } from './versions'\nimport type { EventStore } from './event_stores'\n\n\ntype CustomerAddressType = 'customer_addresses'\ntype CustomerAddressRel = ResourceRel & { type: CustomerAddressType }\ntype CustomerRel = ResourceRel & { type: CustomerType }\ntype AddressRel = ResourceRel & { type: AddressType }\n\n\nexport type CustomerAddressSort = Pick<CustomerAddress, 'id'> & ResourceSort\n// export type CustomerAddressFilter = Pick<CustomerAddress, 'id'> & ResourceFilter\n\n\ninterface CustomerAddress extends Resource {\n\t\n\treadonly type: CustomerAddressType\n\n\t/** \n\t * Returns the associated address' name.\n\t * @example ```\"John Smith, 2883 Geraldine Lane Apt.23, 10013 New York NY (US) (212) 646-338-1228\"```\n\t */\n\tname?: string | null\n\t/** \n\t * The email of the customer associated to the address.\n\t * @example ```\"john@example.com\"```\n\t */\n\tcustomer_email: string\n\n\tcustomer?: Customer | null\n\taddress?: Address | null\n\tevents?: Event[] | null\n\tversions?: Version[] | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface CustomerAddressCreate extends ResourceCreate {\n\t\n\t/** \n\t * The email of the customer associated to the address.\n\t * @example ```\"john@example.com\"```\n\t */\n\tcustomer_email: string\n\n\tcustomer: CustomerRel\n\taddress: AddressRel\n\n}\n\n\ninterface CustomerAddressUpdate extends ResourceUpdate {\n\t\n\tcustomer?: CustomerRel | null\n\taddress?: AddressRel | null\n\n}\n\n\nclass CustomerAddresses extends ApiResource<CustomerAddress> {\n\n\tstatic readonly TYPE: CustomerAddressType = 'customer_addresses' as const\n\n\tasync create(resource: CustomerAddressCreate, params?: QueryParamsRetrieve<CustomerAddress>, options?: ResourcesConfig): Promise<CustomerAddress> {\n\t\treturn this.resources.create<CustomerAddressCreate, CustomerAddress>({ ...resource, type: CustomerAddresses.TYPE }, params, options)\n\t}\n\n\tasync update(resource: CustomerAddressUpdate, params?: QueryParamsRetrieve<CustomerAddress>, options?: ResourcesConfig): Promise<CustomerAddress> {\n\t\treturn this.resources.update<CustomerAddressUpdate, CustomerAddress>({ ...resource, type: CustomerAddresses.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: CustomerAddresses.TYPE } : id, options)\n\t}\n\n\tasync customer(customerAddressId: string | CustomerAddress, params?: QueryParamsRetrieve<Customer>, options?: ResourcesConfig): Promise<Customer> {\n\t\tconst _customerAddressId = (customerAddressId as CustomerAddress).id || customerAddressId as string\n\t\treturn this.resources.fetch<Customer>({ type: 'customers' }, `customer_addresses/${_customerAddressId}/customer`, params, options) as unknown as Customer\n\t}\n\n\tasync address(customerAddressId: string | CustomerAddress, params?: QueryParamsRetrieve<Address>, options?: ResourcesConfig): Promise<Address> {\n\t\tconst _customerAddressId = (customerAddressId as CustomerAddress).id || customerAddressId as string\n\t\treturn this.resources.fetch<Address>({ type: 'addresses' }, `customer_addresses/${_customerAddressId}/address`, params, options) as unknown as Address\n\t}\n\n\tasync events(customerAddressId: string | CustomerAddress, params?: QueryParamsList<Event>, options?: ResourcesConfig): Promise<ListResponse<Event>> {\n\t\tconst _customerAddressId = (customerAddressId as CustomerAddress).id || customerAddressId as string\n\t\treturn this.resources.fetch<Event>({ type: 'events' }, `customer_addresses/${_customerAddressId}/events`, params, options) as unknown as ListResponse<Event>\n\t}\n\n\tasync versions(customerAddressId: string | CustomerAddress, params?: QueryParamsList<Version>, options?: ResourcesConfig): Promise<ListResponse<Version>> {\n\t\tconst _customerAddressId = (customerAddressId as CustomerAddress).id || customerAddressId as string\n\t\treturn this.resources.fetch<Version>({ type: 'versions' }, `customer_addresses/${_customerAddressId}/versions`, params, options) as unknown as ListResponse<Version>\n\t}\n\n\tasync event_stores(customerAddressId: string | CustomerAddress, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _customerAddressId = (customerAddressId as CustomerAddress).id || customerAddressId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `customer_addresses/${_customerAddressId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\n\tisCustomerAddress(resource: any): resource is CustomerAddress {\n\t\treturn resource.type && (resource.type === CustomerAddresses.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): CustomerAddressRel {\n\t\treturn super.relationshipOneToOne<CustomerAddressRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): CustomerAddressRel[] {\n\t\treturn super.relationshipOneToMany<CustomerAddressRel>(...ids)\n\t}\n\n\n\ttype(): CustomerAddressType {\n\t\treturn CustomerAddresses.TYPE\n\t}\n\n}\n\n\nconst instance = new CustomerAddresses()\nexport default instance\n\nexport type { CustomerAddresses, CustomerAddress, CustomerAddressCreate, CustomerAddressUpdate, CustomerAddressType }\n"]}