UNPKG

@commercelayer/sdk

Version:
1 lines 6.24 kB
{"version":3,"sources":["../src/resources/notifications.ts"],"names":["ApiResource"],"mappings":";;;;;AA0FA,IAAM,aAAA,GAAN,MAAM,cAAA,SAAsBA,6BAAA,CAA0B;AAAA,EAErD,OAAgB,IAAA,GAAyB,eAAA;AAAA,EAEzC,MAAM,MAAA,CAAO,QAAA,EAA8B,MAAA,EAA4C,OAAA,EAAkD;AACxI,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAAyC,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,cAAA,CAAc,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC1H;AAAA,EAEA,MAAM,MAAA,CAAO,QAAA,EAA8B,MAAA,EAA4C,OAAA,EAAkD;AACxI,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,MAAA,CAAyC,EAAE,GAAG,QAAA,EAAU,IAAA,EAAM,cAAA,CAAc,IAAA,EAAK,EAAG,MAAA,EAAQ,OAAO,CAAA;AAAA,EAC1H;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,cAAA,CAAc,IAAA,EAAK,GAAI,IAAI,OAAO,CAAA;AAAA,EACrG;AAAA,EAEA,MAAM,YAAA,CAAa,cAAA,EAAuC,MAAA,EAAsC,OAAA,EAA8D;AAC7J,IAAA,MAAM,eAAA,GAAmB,eAAgC,EAAA,IAAM,cAAA;AAC/D,IAAA,OAAO,IAAA,CAAK,SAAA,CAAU,KAAA,CAAkB,EAAE,IAAA,EAAM,cAAA,EAAe,EAAG,CAAA,cAAA,EAAiB,eAAe,CAAA,aAAA,CAAA,EAAiB,MAAA,EAAQ,OAAO,CAAA;AAAA,EACnI;AAAA,EAGA,eAAe,QAAA,EAAyC;AACvD,IAAA,OAAO,QAAA,CAAS,IAAA,IAAS,QAAA,CAAS,IAAA,KAAS,cAAA,CAAc,IAAA;AAAA,EAC1D;AAAA,EAGA,aAAa,EAAA,EAAiD;AAC7D,IAAA,OAAO,KAAA,CAAM,qBAAsC,EAAE,CAAA;AAAA,EACtD;AAAA,EAEA,sBAAsB,GAAA,EAAkC;AACvD,IAAA,OAAO,KAAA,CAAM,qBAAA,CAAuC,GAAG,GAAG,CAAA;AAAA,EAC3D;AAAA,EAGA,IAAA,GAAyB;AACxB,IAAA,OAAO,cAAA,CAAc,IAAA;AAAA,EACtB;AAED,CAAA;AAGA,IAAM,QAAA,GAAW,IAAI,aAAA,EAAc;AACnC,IAAO,qBAAA,GAAQ","file":"chunk-4B4WZM22.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'\nimport type { Order, OrderType } from './orders'\nimport type { LineItem, LineItemType } from './line_items'\nimport type { ShippingMethod, ShippingMethodType } from './shipping_methods'\n\n\ntype NotificationType = 'notifications'\ntype NotificationRel = ResourceRel & { type: NotificationType }\ntype OrderRel = ResourceRel & { type: OrderType }\ntype LineItemRel = ResourceRel & { type: LineItemType }\ntype ShippingMethodRel = ResourceRel & { type: ShippingMethodType }\n\n\nexport type NotificationSort = Pick<Notification, 'id' | 'name' | 'flash'> & ResourceSort\n// export type NotificationFilter = Pick<Notification, 'id' | 'name' | 'flash'> & ResourceFilter\n\n\ninterface Notification extends Resource {\n\t\n\treadonly type: NotificationType\n\n\t/** \n\t * The internal name of the notification.\n\t * @example ```\"DDT transport document\"```\n\t */\n\tname: string\n\t/** \n\t * Indicates if the notification is temporary, valid for the ones created by external services.\n\t */\n\tflash?: boolean | null\n\t/** \n\t * An internal body of the notification.\n\t * @example ```{\"sku\":\"REDHANDBAG\",\"name\":\"Enjoy your free item\"}```\n\t */\n\tbody?: Record<string, any> | null\n\n\tnotifiable?: Order | LineItem | ShippingMethod | null\n\tevent_stores?: EventStore[] | null\n\n}\n\n\ninterface NotificationCreate extends ResourceCreate {\n\t\n\t/** \n\t * The internal name of the notification.\n\t * @example ```\"DDT transport document\"```\n\t */\n\tname: string\n\t/** \n\t * Indicates if the notification is temporary, valid for the ones created by external services.\n\t */\n\tflash?: boolean | null\n\t/** \n\t * An internal body of the notification.\n\t * @example ```{\"sku\":\"REDHANDBAG\",\"name\":\"Enjoy your free item\"}```\n\t */\n\tbody?: Record<string, any> | null\n\n\tnotifiable: OrderRel | LineItemRel | ShippingMethodRel\n\n}\n\n\ninterface NotificationUpdate extends ResourceUpdate {\n\t\n\t/** \n\t * The internal name of the notification.\n\t * @example ```\"DDT transport document\"```\n\t */\n\tname?: string | null\n\t/** \n\t * Indicates if the notification is temporary, valid for the ones created by external services.\n\t */\n\tflash?: boolean | null\n\t/** \n\t * An internal body of the notification.\n\t * @example ```{\"sku\":\"REDHANDBAG\",\"name\":\"Enjoy your free item\"}```\n\t */\n\tbody?: Record<string, any> | null\n\n\tnotifiable?: OrderRel | LineItemRel | ShippingMethodRel | null\n\n}\n\n\nclass Notifications extends ApiResource<Notification> {\n\n\tstatic readonly TYPE: NotificationType = 'notifications' as const\n\n\tasync create(resource: NotificationCreate, params?: QueryParamsRetrieve<Notification>, options?: ResourcesConfig): Promise<Notification> {\n\t\treturn this.resources.create<NotificationCreate, Notification>({ ...resource, type: Notifications.TYPE }, params, options)\n\t}\n\n\tasync update(resource: NotificationUpdate, params?: QueryParamsRetrieve<Notification>, options?: ResourcesConfig): Promise<Notification> {\n\t\treturn this.resources.update<NotificationUpdate, Notification>({ ...resource, type: Notifications.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: Notifications.TYPE } : id, options)\n\t}\n\n\tasync event_stores(notificationId: string | Notification, params?: QueryParamsList<EventStore>, options?: ResourcesConfig): Promise<ListResponse<EventStore>> {\n\t\tconst _notificationId = (notificationId as Notification).id || notificationId as string\n\t\treturn this.resources.fetch<EventStore>({ type: 'event_stores' }, `notifications/${_notificationId}/event_stores`, params, options) as unknown as ListResponse<EventStore>\n\t}\n\n\n\tisNotification(resource: any): resource is Notification {\n\t\treturn resource.type && (resource.type === Notifications.TYPE)\n\t}\n\n\n\trelationship(id: string | ResourceId | null): NotificationRel {\n\t\treturn super.relationshipOneToOne<NotificationRel>(id)\n\t}\n\n\trelationshipToMany(...ids: string[]): NotificationRel[] {\n\t\treturn super.relationshipOneToMany<NotificationRel>(...ids)\n\t}\n\n\n\ttype(): NotificationType {\n\t\treturn Notifications.TYPE\n\t}\n\n}\n\n\nconst instance = new Notifications()\nexport default instance\n\nexport type { Notifications, Notification, NotificationCreate, NotificationUpdate, NotificationType }\n"]}