@rechargeapps/storefront-client 1.3.2 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (70) hide show
  1. package/dist/cjs/api/address.js +34 -9
  2. package/dist/cjs/api/address.js.map +1 -1
  3. package/dist/cjs/api/auth.js +34 -6
  4. package/dist/cjs/api/auth.js.map +1 -1
  5. package/dist/cjs/api/bundle.js +57 -20
  6. package/dist/cjs/api/bundle.js.map +1 -1
  7. package/dist/cjs/api/cdn.js +18 -6
  8. package/dist/cjs/api/cdn.js.map +1 -1
  9. package/dist/cjs/api/charge.js +34 -14
  10. package/dist/cjs/api/charge.js.map +1 -1
  11. package/dist/cjs/api/customer.js +21 -6
  12. package/dist/cjs/api/customer.js.map +1 -1
  13. package/dist/cjs/api/membership.js +24 -9
  14. package/dist/cjs/api/membership.js.map +1 -1
  15. package/dist/cjs/api/membershipProgram.js +6 -1
  16. package/dist/cjs/api/membershipProgram.js.map +1 -1
  17. package/dist/cjs/api/metafield.js +25 -10
  18. package/dist/cjs/api/metafield.js.map +1 -1
  19. package/dist/cjs/api/onetime.js +33 -13
  20. package/dist/cjs/api/onetime.js.map +1 -1
  21. package/dist/cjs/api/order.js +8 -3
  22. package/dist/cjs/api/order.js.map +1 -1
  23. package/dist/cjs/api/paymentMethod.js +18 -8
  24. package/dist/cjs/api/paymentMethod.js.map +1 -1
  25. package/dist/cjs/api/plan.js +8 -3
  26. package/dist/cjs/api/plan.js.map +1 -1
  27. package/dist/cjs/api/subscription.js +93 -43
  28. package/dist/cjs/api/subscription.js.map +1 -1
  29. package/dist/cjs/index.js +2 -0
  30. package/dist/cjs/index.js.map +1 -1
  31. package/dist/cjs/utils/bundle.js +43 -41
  32. package/dist/cjs/utils/bundle.js.map +1 -1
  33. package/dist/cjs/utils/init.js +3 -1
  34. package/dist/cjs/utils/init.js.map +1 -1
  35. package/dist/esm/api/address.js +34 -9
  36. package/dist/esm/api/address.js.map +1 -1
  37. package/dist/esm/api/auth.js +34 -7
  38. package/dist/esm/api/auth.js.map +1 -1
  39. package/dist/esm/api/bundle.js +57 -21
  40. package/dist/esm/api/bundle.js.map +1 -1
  41. package/dist/esm/api/cdn.js +18 -6
  42. package/dist/esm/api/cdn.js.map +1 -1
  43. package/dist/esm/api/charge.js +34 -14
  44. package/dist/esm/api/charge.js.map +1 -1
  45. package/dist/esm/api/customer.js +21 -6
  46. package/dist/esm/api/customer.js.map +1 -1
  47. package/dist/esm/api/membership.js +24 -9
  48. package/dist/esm/api/membership.js.map +1 -1
  49. package/dist/esm/api/membershipProgram.js +6 -1
  50. package/dist/esm/api/membershipProgram.js.map +1 -1
  51. package/dist/esm/api/metafield.js +25 -10
  52. package/dist/esm/api/metafield.js.map +1 -1
  53. package/dist/esm/api/onetime.js +33 -13
  54. package/dist/esm/api/onetime.js.map +1 -1
  55. package/dist/esm/api/order.js +8 -3
  56. package/dist/esm/api/order.js.map +1 -1
  57. package/dist/esm/api/paymentMethod.js +18 -8
  58. package/dist/esm/api/paymentMethod.js.map +1 -1
  59. package/dist/esm/api/plan.js +8 -3
  60. package/dist/esm/api/plan.js.map +1 -1
  61. package/dist/esm/api/subscription.js +93 -43
  62. package/dist/esm/api/subscription.js.map +1 -1
  63. package/dist/esm/index.js +2 -2
  64. package/dist/esm/utils/bundle.js +43 -41
  65. package/dist/esm/utils/bundle.js.map +1 -1
  66. package/dist/esm/utils/init.js +3 -1
  67. package/dist/esm/utils/init.js.map +1 -1
  68. package/dist/index.d.ts +237 -86
  69. package/dist/umd/recharge-client.min.js +8 -8
  70. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"bundle.js","sources":["../../../src/api/bundle.ts"],"sourcesContent":["import { nanoid } from 'nanoid';\nimport {\n BundleAppProxy,\n DynamicBundleItemAppProxy,\n BundleSelection,\n BundleSelectionListParams,\n BundleSelectionsResponse,\n CreateBundleSelectionRequest,\n Session,\n UpdateBundleSelectionRequest,\n} from '../types';\nimport { rechargeApiRequest, shopifyAppProxyRequest } from '../utils/request';\nimport { getOptions } from '../utils/options';\nimport { getCDNBundleSettings } from './cdn';\nimport { toLineItemProperty } from '../utils/bundle';\n\nconst STORE_FRONT_MANAGER_URL = '/bundling-storefront-manager';\n\nfunction getTimestampSecondsFromClient(): number {\n /**\n * Get the current unix epoch in seconds from the client-side.\n */\n return Math.ceil(Date.now() / 1000);\n}\n\nasync function getTimestampSecondsFromServer(): Promise<number> {\n /**\n * Get the unix epoch from the server instead of using it directly from the\n * client. This must reduce even more the number of invalid Bundles.\n */\n try {\n const { timestamp } = await shopifyAppProxyRequest<{ timestamp: number }>('get', `${STORE_FRONT_MANAGER_URL}/t`, {\n headers: { 'X-Recharge-App': 'storefront-client' },\n });\n return timestamp;\n } catch (ex) {\n console.error(`Fetch failed: ${ex}. Using client-side date.`);\n return getTimestampSecondsFromClient();\n }\n}\n\nexport async function getBundleId(bundle: BundleAppProxy): Promise<string> {\n const opts = getOptions();\n const isValid = await validateBundle(bundle);\n if (isValid !== true) {\n throw new Error(isValid);\n }\n const timestampSeconds = await getTimestampSecondsFromServer();\n const bundleData = toLineItemProperty({\n variantId: bundle.externalVariantId,\n version: timestampSeconds,\n items: bundle.selections.map(item => {\n return {\n collectionId: item.collectionId,\n productId: item.externalProductId,\n variantId: item.externalVariantId,\n quantity: item.quantity,\n sku: '',\n };\n }),\n });\n\n try {\n const payload = await shopifyAppProxyRequest<{ id: string; code: number; message: string }>(\n 'post',\n `${STORE_FRONT_MANAGER_URL}/api/v1/bundles`,\n {\n data: {\n bundle: bundleData,\n },\n headers: {\n Origin: `https://${opts.storeIdentifier}`,\n },\n }\n );\n\n if (!payload.id || payload.code !== 200) {\n throw new Error(`1: failed generating rb_id: ${JSON.stringify(payload)}`);\n }\n\n return payload.id;\n } catch (e) {\n // Handle NetworkError exceptions\n throw new Error(`2: failed generating rb_id ${e}`);\n }\n}\n\nexport function getDynamicBundleItems(bundle: BundleAppProxy, shopifyProductHandle: string) {\n const isValid = validateDynamicBundle(bundle);\n if (isValid !== true) {\n throw new Error(`Dynamic Bundle is invalid. ${isValid}`);\n }\n // generate unique id for dynamic bundle\n const bundleId = `${nanoid(9)}:${bundle.externalProductId}`;\n return bundle.selections.map(item => {\n const itemData: DynamicBundleItemAppProxy = {\n id: item.externalVariantId,\n quantity: item.quantity,\n properties: {\n _rc_bundle: bundleId,\n _rc_bundle_variant: bundle.externalVariantId,\n _rc_bundle_parent: shopifyProductHandle,\n _rc_bundle_collection_id: item.collectionId,\n },\n };\n\n if (item.sellingPlan) {\n // this is used by SCI stores\n itemData.selling_plan = item.sellingPlan;\n } else if (item.shippingIntervalFrequency) {\n // this is used by RCS stores\n itemData.properties.shipping_interval_frequency = item.shippingIntervalFrequency;\n itemData.properties.shipping_interval_unit_type = item.shippingIntervalUnitType;\n itemData.id = `${item.discountedVariantId}`;\n }\n\n return itemData;\n });\n}\n\nexport async function validateBundle(bundle: BundleAppProxy): Promise<true | string> {\n try {\n // once we implement this function, we can make it raise an exception\n // we could also have a local store relative to this function so we don't have to pass bundleProduct\n if (!bundle) {\n return 'Bundle is not defined';\n }\n const bundleSettings = await getCDNBundleSettings(bundle.externalProductId);\n if (!bundleSettings) {\n return 'Bundle settings do not exist for the given product';\n }\n return true;\n } catch (e) {\n return `Error fetching bundle settings: ${e}`;\n }\n}\n\nconst intervalUnitGroups = {\n day: ['day', 'days', 'Days'],\n days: ['day', 'days', 'Days'],\n Days: ['day', 'days', 'Days'],\n week: ['week', 'weeks', 'Weeks'],\n weeks: ['week', 'weeks', 'Weeks'],\n Weeks: ['week', 'weeks', 'Weeks'],\n month: ['month', 'months', 'Months'],\n months: ['month', 'months', 'Months'],\n Months: ['month', 'months', 'Months'],\n};\n\n/**\n * Validates a dynamic bundle\n *\n * @param bundle Dynamic Bundle being validated\n * @returns true or error message\n */\nexport function validateDynamicBundle(bundle: BundleAppProxy): true | string {\n if (!bundle) {\n return 'No bundle defined.';\n }\n if (bundle.selections.length === 0) {\n return 'No selections defined.';\n }\n // validation for RCS onetimes\n const { shippingIntervalFrequency, shippingIntervalUnitType } =\n bundle.selections.find(selection => selection.shippingIntervalFrequency || selection.shippingIntervalUnitType) ||\n {};\n if (shippingIntervalFrequency || shippingIntervalUnitType) {\n // if we have shipping intervals then we should have both defined\n if (!shippingIntervalFrequency || !shippingIntervalUnitType) {\n return 'Shipping intervals do not match on selections.';\n } else {\n // if we have shipping intervals then any that are defined should match\n const shippingIntervalUnitGroup = intervalUnitGroups[shippingIntervalUnitType];\n for (let x = 0; x < bundle.selections.length; x++) {\n const { shippingIntervalFrequency: frequency, shippingIntervalUnitType: unitType } = bundle.selections[x];\n if (\n (frequency && frequency !== shippingIntervalFrequency) ||\n (unitType && !shippingIntervalUnitGroup.includes(unitType))\n ) {\n return 'Shipping intervals do not match on selections.';\n }\n }\n }\n }\n return true;\n}\n\nexport async function getBundleSelection(session: Session, id: string | number): Promise<BundleSelection> {\n const { bundle_selection } = await rechargeApiRequest<{ bundle_selection: BundleSelection }>(\n 'get',\n `/bundle_selections`,\n {\n id,\n },\n session\n );\n return bundle_selection;\n}\n\nexport function listBundleSelections(\n session: Session,\n query?: BundleSelectionListParams\n): Promise<BundleSelectionsResponse> {\n return rechargeApiRequest<BundleSelectionsResponse>('get', `/bundle_selections`, { query }, session);\n}\n\nexport async function createBundleSelection(\n session: Session,\n createRequest: CreateBundleSelectionRequest\n): Promise<BundleSelection> {\n const { bundle_selection } = await rechargeApiRequest<{ bundle_selection: BundleSelection }>(\n 'post',\n `/bundle_selections`,\n {\n data: createRequest,\n },\n session\n );\n return bundle_selection;\n}\n\nexport async function updateBundleSelection(\n session: Session,\n id: string | number,\n updateRequest: UpdateBundleSelectionRequest\n): Promise<BundleSelection> {\n const { bundle_selection } = await rechargeApiRequest<{ bundle_selection: BundleSelection }>(\n 'put',\n `/bundle_selections`,\n {\n id,\n data: updateRequest,\n },\n session\n );\n return bundle_selection;\n}\n\nexport function deleteBundleSelection(session: Session, id: string | number): Promise<void> {\n return rechargeApiRequest<void>(\n 'delete',\n `/bundle_selections`,\n {\n id,\n },\n session\n );\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle.js","sources":["../../../src/api/bundle.ts"],"sourcesContent":["import { nanoid } from 'nanoid';\nimport {\n BundleAppProxy,\n DynamicBundleItemAppProxy,\n BundleSelection,\n BundleSelectionListParams,\n BundleSelectionsResponse,\n CreateBundleSelectionRequest,\n Session,\n UpdateBundleSelectionRequest,\n UpdateBundlePurchaseItem,\n BundlePurchaseItem,\n} from '../types';\nimport { rechargeApiRequest, shopifyAppProxyRequest } from '../utils/request';\nimport { getOptions } from '../utils/options';\nimport { getCDNBundleSettings } from './cdn';\nimport { toLineItemProperty } from '../utils/bundle';\n\nconst STORE_FRONT_MANAGER_URL = '/bundling-storefront-manager';\n\nfunction getTimestampSecondsFromClient(): number {\n /**\n * Get the current unix epoch in seconds from the client-side.\n */\n return Math.ceil(Date.now() / 1000);\n}\n\nasync function getTimestampSecondsFromServer(): Promise<number> {\n /**\n * Get the unix epoch from the server instead of using it directly from the\n * client. This must reduce even more the number of invalid Bundles.\n */\n try {\n const { timestamp } = await shopifyAppProxyRequest<{ timestamp: number }>('get', `${STORE_FRONT_MANAGER_URL}/t`, {\n headers: { 'X-Recharge-App': 'storefront-client' },\n });\n return timestamp;\n } catch (ex) {\n console.error(`Fetch failed: ${ex}. Using client-side date.`);\n return getTimestampSecondsFromClient();\n }\n}\n\nexport async function getBundleId(bundle: BundleAppProxy): Promise<string> {\n const opts = getOptions();\n const isValid = await validateBundle(bundle);\n if (isValid !== true) {\n throw new Error(isValid);\n }\n const timestampSeconds = await getTimestampSecondsFromServer();\n const bundleData = toLineItemProperty({\n variantId: bundle.externalVariantId,\n version: timestampSeconds,\n items: bundle.selections.map(item => {\n return {\n collectionId: item.collectionId,\n productId: item.externalProductId,\n variantId: item.externalVariantId,\n quantity: item.quantity,\n sku: '',\n };\n }),\n });\n\n try {\n const payload = await shopifyAppProxyRequest<{ id: string; code: number; message: string }>(\n 'post',\n `${STORE_FRONT_MANAGER_URL}/api/v1/bundles`,\n {\n data: {\n bundle: bundleData,\n },\n headers: {\n Origin: `https://${opts.storeIdentifier}`,\n },\n }\n );\n\n if (!payload.id || payload.code !== 200) {\n throw new Error(`1: failed generating rb_id: ${JSON.stringify(payload)}`);\n }\n\n return payload.id;\n } catch (e) {\n // Handle NetworkError exceptions\n throw new Error(`2: failed generating rb_id ${e}`);\n }\n}\n\nexport function getDynamicBundleItems(bundle: BundleAppProxy, shopifyProductHandle: string) {\n const isValid = validateDynamicBundle(bundle);\n if (isValid !== true) {\n throw new Error(`Dynamic Bundle is invalid. ${isValid}`);\n }\n // generate unique id for dynamic bundle\n const bundleId = `${nanoid(9)}:${bundle.externalProductId}`;\n return bundle.selections.map(item => {\n const itemData: DynamicBundleItemAppProxy = {\n id: item.externalVariantId,\n quantity: item.quantity,\n properties: {\n _rc_bundle: bundleId,\n _rc_bundle_variant: bundle.externalVariantId,\n _rc_bundle_parent: shopifyProductHandle,\n _rc_bundle_collection_id: item.collectionId,\n },\n };\n\n if (item.sellingPlan) {\n // this is used by SCI stores\n itemData.selling_plan = item.sellingPlan;\n } else if (item.shippingIntervalFrequency) {\n // this is used by RCS stores\n itemData.properties.shipping_interval_frequency = item.shippingIntervalFrequency;\n itemData.properties.shipping_interval_unit_type = item.shippingIntervalUnitType;\n itemData.id = `${item.discountedVariantId}`;\n }\n\n return itemData;\n });\n}\n\nexport async function validateBundle(bundle: BundleAppProxy): Promise<true | string> {\n try {\n // once we implement this function, we can make it raise an exception\n // we could also have a local store relative to this function so we don't have to pass bundleProduct\n if (!bundle) {\n return 'Bundle is not defined';\n }\n const bundleSettings = await getCDNBundleSettings(bundle.externalProductId);\n if (!bundleSettings) {\n return 'Bundle settings do not exist for the given product';\n }\n return true;\n } catch (e) {\n return `Error fetching bundle settings: ${e}`;\n }\n}\n\nconst intervalUnitGroups = {\n day: ['day', 'days', 'Days'],\n days: ['day', 'days', 'Days'],\n Days: ['day', 'days', 'Days'],\n week: ['week', 'weeks', 'Weeks'],\n weeks: ['week', 'weeks', 'Weeks'],\n Weeks: ['week', 'weeks', 'Weeks'],\n month: ['month', 'months', 'Months'],\n months: ['month', 'months', 'Months'],\n Months: ['month', 'months', 'Months'],\n};\n\n/**\n * Validates a dynamic bundle\n *\n * @param bundle Dynamic Bundle being validated\n * @returns true or error message\n */\nexport function validateDynamicBundle(bundle: BundleAppProxy): true | string {\n if (!bundle) {\n return 'No bundle defined.';\n }\n if (bundle.selections.length === 0) {\n return 'No selections defined.';\n }\n // validation for RCS onetimes\n const { shippingIntervalFrequency, shippingIntervalUnitType } =\n bundle.selections.find(selection => selection.shippingIntervalFrequency || selection.shippingIntervalUnitType) ||\n {};\n if (shippingIntervalFrequency || shippingIntervalUnitType) {\n // if we have shipping intervals then we should have both defined\n if (!shippingIntervalFrequency || !shippingIntervalUnitType) {\n return 'Shipping intervals do not match on selections.';\n } else {\n // if we have shipping intervals then any that are defined should match\n const shippingIntervalUnitGroup = intervalUnitGroups[shippingIntervalUnitType];\n for (let x = 0; x < bundle.selections.length; x++) {\n const { shippingIntervalFrequency: frequency, shippingIntervalUnitType: unitType } = bundle.selections[x];\n if (\n (frequency && frequency !== shippingIntervalFrequency) ||\n (unitType && !shippingIntervalUnitGroup.includes(unitType))\n ) {\n return 'Shipping intervals do not match on selections.';\n }\n }\n }\n }\n return true;\n}\n\nexport async function getBundleSelection(session: Session, id: string | number): Promise<BundleSelection> {\n const { bundle_selection } = await rechargeApiRequest<{ bundle_selection: BundleSelection }>(\n 'get',\n `/bundle_selections`,\n {\n id,\n },\n session\n );\n return bundle_selection;\n}\n\nexport function listBundleSelections(\n session: Session,\n query?: BundleSelectionListParams\n): Promise<BundleSelectionsResponse> {\n return rechargeApiRequest<BundleSelectionsResponse>('get', `/bundle_selections`, { query }, session);\n}\n\nexport async function createBundleSelection(\n session: Session,\n createRequest: CreateBundleSelectionRequest\n): Promise<BundleSelection> {\n const { bundle_selection } = await rechargeApiRequest<{ bundle_selection: BundleSelection }>(\n 'post',\n `/bundle_selections`,\n {\n data: createRequest,\n },\n session\n );\n return bundle_selection;\n}\n\nexport async function updateBundleSelection(\n session: Session,\n id: string | number,\n updateRequest: UpdateBundleSelectionRequest\n): Promise<BundleSelection> {\n const { bundle_selection } = await rechargeApiRequest<{ bundle_selection: BundleSelection }>(\n 'put',\n `/bundle_selections`,\n {\n id,\n data: updateRequest,\n },\n session\n );\n return bundle_selection;\n}\n\nexport function deleteBundleSelection(session: Session, id: string | number): Promise<void> {\n return rechargeApiRequest<void>(\n 'delete',\n `/bundle_selections`,\n {\n id,\n },\n session\n );\n}\n\nexport async function updateBundle(\n session: Session,\n purchase_item_id: string | number,\n updateRequest: UpdateBundlePurchaseItem\n): Promise<BundlePurchaseItem> {\n const { subscription } = await rechargeApiRequest<{ subscription: BundlePurchaseItem }>(\n 'put',\n '/bundles',\n {\n id: purchase_item_id,\n data: updateRequest,\n },\n session\n );\n\n return subscription;\n}\n"],"names":[],"mappings":"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"}
@@ -19,22 +19,34 @@ function cacheRequest(cacheKey, request) {
19
19
  return promiseCache.get(cacheKey);
20
20
  }
21
21
  async function getCDNProduct(externalProductId) {
22
- const { product } = await cacheRequest(`product.${externalProductId}`, () => cdnRequest("get", `/product/${CDN_VERSION}/${externalProductId}.json`));
22
+ const { product } = await cacheRequest(
23
+ `product.${externalProductId}`,
24
+ () => cdnRequest("get", `/product/${CDN_VERSION}/${externalProductId}.json`)
25
+ );
23
26
  return productMapper(product);
24
27
  }
25
28
  async function getCDNStoreSettings() {
26
- const storeSettings = await cacheRequest("storeSettings", () => cdnRequest("get", `/${CDN_VERSION}/store_settings.json`).catch(() => {
27
- return DEFAULT_STORE_SETTINGS;
28
- }));
29
+ const storeSettings = await cacheRequest(
30
+ "storeSettings",
31
+ () => cdnRequest("get", `/${CDN_VERSION}/store_settings.json`).catch(() => {
32
+ return DEFAULT_STORE_SETTINGS;
33
+ })
34
+ );
29
35
  return storeSettings;
30
36
  }
31
37
  async function getCDNWidgetSettings() {
32
- const { widget_settings } = await cacheRequest("widgetSettings", () => cdnRequest("get", `/${CDN_VERSION}/widget_settings.json`));
38
+ const { widget_settings } = await cacheRequest(
39
+ "widgetSettings",
40
+ () => cdnRequest("get", `/${CDN_VERSION}/widget_settings.json`)
41
+ );
33
42
  const widgetSettings = widgetSettingsMapper(widget_settings);
34
43
  return widgetSettings;
35
44
  }
36
45
  async function getCDNProductsAndSettings() {
37
- const { products, widget_settings, store_settings, meta } = await cacheRequest("productsAndSettings", () => cdnRequest("get", `/product/${CDN_VERSION}/products.json`));
46
+ const { products, widget_settings, store_settings, meta } = await cacheRequest(
47
+ "productsAndSettings",
48
+ () => cdnRequest("get", `/product/${CDN_VERSION}/products.json`)
49
+ );
38
50
  if ((meta == null ? void 0 : meta.status) === "error") {
39
51
  return Promise.reject(meta.message);
40
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cdn.js","sources":["../../../src/api/cdn.ts"],"sourcesContent":["import {\n CDNWidgetSettings,\n CDNStoreSettings,\n CDNWidgetSettingsResource,\n CDNProductsAndSettings,\n CDNProductResource,\n CDNProduct,\n CDNProductAndSettings,\n CDNProductsAndSettingsResource,\n CDNBundleSettings,\n CDNProductKeyObject,\n} from '../types';\nimport { productArrayMapper, productMapper, widgetSettingsMapper } from '../mappers/cdn';\nimport { cdnRequest } from '../utils/request';\n\nconst CDN_VERSION = '2020-12';\n\n// Default store settings if none are provided from the cdn\nconst DEFAULT_STORE_SETTINGS: CDNStoreSettings = {\n store_currency: {\n currency_code: 'USD',\n currency_symbol: '$',\n decimal_separator: '.',\n thousands_separator: ',',\n currency_symbol_location: 'left',\n },\n};\n\nconst promiseCache = new Map();\n\n// This will cache the request and use the same promise anywhere we call this function. This will never make multiple calls and always return the first request\nfunction cacheRequest<T>(cacheKey: string, request: () => T): T {\n if (!promiseCache.has(cacheKey)) {\n promiseCache.set(cacheKey, request());\n }\n return promiseCache.get(cacheKey);\n}\n\nexport async function getCDNProduct(externalProductId: string | number): Promise<CDNProduct> {\n const { product } = await cacheRequest(`product.${externalProductId}`, () =>\n cdnRequest<CDNProductResource>('get', `/product/${CDN_VERSION}/${externalProductId}.json`)\n );\n\n return productMapper(product);\n}\n\nexport async function getCDNStoreSettings(): Promise<CDNStoreSettings> {\n const storeSettings = await cacheRequest('storeSettings', () =>\n cdnRequest<CDNStoreSettings>('get', `/${CDN_VERSION}/store_settings.json`).catch(() => {\n return DEFAULT_STORE_SETTINGS;\n })\n );\n return storeSettings;\n}\n\nexport async function getCDNWidgetSettings(): Promise<CDNWidgetSettings> {\n const { widget_settings } = await cacheRequest('widgetSettings', () =>\n cdnRequest<CDNWidgetSettingsResource>('get', `/${CDN_VERSION}/widget_settings.json`)\n );\n\n const widgetSettings = widgetSettingsMapper(widget_settings);\n\n return widgetSettings;\n}\n\nexport async function getCDNProductsAndSettings(): Promise<CDNProductsAndSettings> {\n const { products, widget_settings, store_settings, meta } = await cacheRequest('productsAndSettings', () =>\n cdnRequest<CDNProductsAndSettingsResource>('get', `/product/${CDN_VERSION}/products.json`)\n );\n\n if (meta?.status === 'error') {\n return Promise.reject(meta.message);\n }\n\n return {\n products: productArrayMapper(products),\n widget_settings: widgetSettingsMapper(widget_settings),\n store_settings: store_settings ?? {},\n };\n}\n\nexport async function getCDNProducts(): Promise<CDNProductKeyObject[]> {\n const { products } = await getCDNProductsAndSettings();\n return products;\n}\n\nexport async function getCDNProductAndSettings(externalProductId: string | number): Promise<CDNProductAndSettings> {\n const [product, store_settings, widget_settings] = await Promise.all([\n getCDNProduct(externalProductId),\n getCDNStoreSettings(),\n getCDNWidgetSettings(),\n ]);\n\n return {\n product,\n store_settings,\n widget_settings,\n storeSettings: store_settings,\n widgetSettings: widget_settings,\n };\n}\n\nexport async function getCDNBundleSettings(\n externalProductId: string | number\n): Promise<CDNBundleSettings | null | undefined> {\n const { bundle_product } = await getCDNProduct(externalProductId);\n\n return bundle_product;\n}\n\nexport async function resetCDNCache() {\n return Array.from(promiseCache.keys()).forEach(key => promiseCache.delete(key));\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cdn.js","sources":["../../../src/api/cdn.ts"],"sourcesContent":["import {\n CDNWidgetSettings,\n CDNStoreSettings,\n CDNWidgetSettingsResource,\n CDNProductsAndSettings,\n CDNProductResource,\n CDNProduct,\n CDNProductAndSettings,\n CDNProductsAndSettingsResource,\n CDNBundleSettings,\n CDNProductKeyObject,\n} from '../types';\nimport { productArrayMapper, productMapper, widgetSettingsMapper } from '../mappers/cdn';\nimport { cdnRequest } from '../utils/request';\n\nconst CDN_VERSION = '2020-12';\n\n// Default store settings if none are provided from the cdn\nconst DEFAULT_STORE_SETTINGS: CDNStoreSettings = {\n store_currency: {\n currency_code: 'USD',\n currency_symbol: '$',\n decimal_separator: '.',\n thousands_separator: ',',\n currency_symbol_location: 'left',\n },\n};\n\nconst promiseCache = new Map();\n\n// This will cache the request and use the same promise anywhere we call this function. This will never make multiple calls and always return the first request\nfunction cacheRequest<T>(cacheKey: string, request: () => T): T {\n if (!promiseCache.has(cacheKey)) {\n promiseCache.set(cacheKey, request());\n }\n return promiseCache.get(cacheKey);\n}\n\nexport async function getCDNProduct(externalProductId: string | number): Promise<CDNProduct> {\n const { product } = await cacheRequest(`product.${externalProductId}`, () =>\n cdnRequest<CDNProductResource>('get', `/product/${CDN_VERSION}/${externalProductId}.json`)\n );\n\n return productMapper(product);\n}\n\nexport async function getCDNStoreSettings(): Promise<CDNStoreSettings> {\n const storeSettings = await cacheRequest('storeSettings', () =>\n cdnRequest<CDNStoreSettings>('get', `/${CDN_VERSION}/store_settings.json`).catch(() => {\n return DEFAULT_STORE_SETTINGS;\n })\n );\n return storeSettings;\n}\n\nexport async function getCDNWidgetSettings(): Promise<CDNWidgetSettings> {\n const { widget_settings } = await cacheRequest('widgetSettings', () =>\n cdnRequest<CDNWidgetSettingsResource>('get', `/${CDN_VERSION}/widget_settings.json`)\n );\n\n const widgetSettings = widgetSettingsMapper(widget_settings);\n\n return widgetSettings;\n}\n\nexport async function getCDNProductsAndSettings(): Promise<CDNProductsAndSettings> {\n const { products, widget_settings, store_settings, meta } = await cacheRequest('productsAndSettings', () =>\n cdnRequest<CDNProductsAndSettingsResource>('get', `/product/${CDN_VERSION}/products.json`)\n );\n\n if (meta?.status === 'error') {\n return Promise.reject(meta.message);\n }\n\n return {\n products: productArrayMapper(products),\n widget_settings: widgetSettingsMapper(widget_settings),\n store_settings: store_settings ?? {},\n };\n}\n\nexport async function getCDNProducts(): Promise<CDNProductKeyObject[]> {\n const { products } = await getCDNProductsAndSettings();\n return products;\n}\n\nexport async function getCDNProductAndSettings(externalProductId: string | number): Promise<CDNProductAndSettings> {\n const [product, store_settings, widget_settings] = await Promise.all([\n getCDNProduct(externalProductId),\n getCDNStoreSettings(),\n getCDNWidgetSettings(),\n ]);\n\n return {\n product,\n store_settings,\n widget_settings,\n storeSettings: store_settings,\n widgetSettings: widget_settings,\n };\n}\n\nexport async function getCDNBundleSettings(\n externalProductId: string | number\n): Promise<CDNBundleSettings | null | undefined> {\n const { bundle_product } = await getCDNProduct(externalProductId);\n\n return bundle_product;\n}\n\nexport async function resetCDNCache() {\n return Array.from(promiseCache.keys()).forEach(key => promiseCache.delete(key));\n}\n"],"names":[],"mappings":"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"}
@@ -1,16 +1,26 @@
1
1
  import { rechargeApiRequest } from '../utils/request.js';
2
2
 
3
3
  async function getCharge(session, id, options) {
4
- const { charge } = await rechargeApiRequest("get", `/charges`, { id, query: { include: options == null ? void 0 : options.include } }, session);
4
+ const { charge } = await rechargeApiRequest(
5
+ "get",
6
+ `/charges`,
7
+ { id, query: { include: options == null ? void 0 : options.include } },
8
+ session
9
+ );
5
10
  return charge;
6
11
  }
7
12
  function listCharges(session, query) {
8
13
  return rechargeApiRequest("get", `/charges`, { query }, session);
9
14
  }
10
15
  async function applyDiscountToCharge(session, id, discountCode) {
11
- const { charge } = await rechargeApiRequest("post", `/charges/${id}/apply_discount`, {
12
- data: { discount_code: discountCode }
13
- }, session);
16
+ const { charge } = await rechargeApiRequest(
17
+ "post",
18
+ `/charges/${id}/apply_discount`,
19
+ {
20
+ data: { discount_code: discountCode }
21
+ },
22
+ session
23
+ );
14
24
  return charge;
15
25
  }
16
26
  async function removeDiscountsFromCharge(session, id) {
@@ -18,19 +28,29 @@ async function removeDiscountsFromCharge(session, id) {
18
28
  return charge;
19
29
  }
20
30
  async function skipCharge(session, id, purchaseItemIds) {
21
- const { charge } = await rechargeApiRequest("post", `/charges/${id}/skip`, {
22
- data: {
23
- purchase_item_ids: purchaseItemIds.map((id2) => Number(id2))
24
- }
25
- }, session);
31
+ const { charge } = await rechargeApiRequest(
32
+ "post",
33
+ `/charges/${id}/skip`,
34
+ {
35
+ data: {
36
+ purchase_item_ids: purchaseItemIds.map((id2) => Number(id2))
37
+ }
38
+ },
39
+ session
40
+ );
26
41
  return charge;
27
42
  }
28
43
  async function unskipCharge(session, id, purchaseItemIds) {
29
- const { charge } = await rechargeApiRequest("post", `/charges/${id}/unskip`, {
30
- data: {
31
- purchase_item_ids: purchaseItemIds.map((id2) => Number(id2))
32
- }
33
- }, session);
44
+ const { charge } = await rechargeApiRequest(
45
+ "post",
46
+ `/charges/${id}/unskip`,
47
+ {
48
+ data: {
49
+ purchase_item_ids: purchaseItemIds.map((id2) => Number(id2))
50
+ }
51
+ },
52
+ session
53
+ );
34
54
  return charge;
35
55
  }
36
56
  async function processCharge(session, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"charge.js","sources":["../../../src/api/charge.ts"],"sourcesContent":["import { RequestOptions } from '../types';\nimport { ChargeListParams, ChargeListResponse, ChargeResponse, GetChargeOptions } from '../types/charge';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\n/* Retrieve a Charge using the charge_id. */\nexport async function getCharge(session: Session, id: number | string, options?: GetChargeOptions) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'get',\n `/charges`,\n { id, query: { include: options?.include } },\n session\n );\n return charge;\n}\n\n/** Lists charges */\nexport function listCharges(session: Session, query?: ChargeListParams) {\n return rechargeApiRequest<ChargeListResponse>('get', `/charges`, { query }, session);\n}\n\n/**\n * You cannot add a Discount to an existing queued Charge if the Charge or the associated Address already has one.\n * If a Charge has a Discount and it gets updated, or a regeneration occurs, the Discount will be lost. Regeneration is a process that refreshes the Charge JSON with new data in the case of the Subscription or Address being updated.\n */\nexport async function applyDiscountToCharge(session: Session, id: number | string, discountCode: string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/apply_discount`,\n {\n data: { discount_code: discountCode },\n },\n session\n );\n return charge;\n}\n\n/**\n * Remove all Discounts from a Charge without destroying the Discount.\n * In most cases the Discount should be removed from the Address. When the Discount is removed from the Address, the Discount is also removed from any future Charges.\n * If the Discount is on the parent Address, you cannot remove it using charge_id.\n * When removing your Discount, it is preferable to pass the address_id so that the Discount stays removed if the Charge is regenerated. Only pass charge_id in edge cases in which there are two or more Charges on a parent Address and you only want to remove the Discount from one Charge.\n * If you pass both parameters, it will remove the Discount from the Address.\n */\nexport async function removeDiscountsFromCharge(session: Session, id: number | string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('post', `/charges/${id}/remove_discount`, {}, session);\n return charge;\n}\n\n/* Skip a Charge. */\nexport async function skipCharge(session: Session, id: number | string, purchaseItemIds: (string | number)[]) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/skip`,\n {\n data: {\n purchase_item_ids: purchaseItemIds.map(id => Number(id)),\n },\n },\n session\n );\n return charge;\n}\n\n/* Unskip a Charge. */\nexport async function unskipCharge(session: Session, id: number | string, purchaseItemIds: (string | number)[]) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/unskip`,\n {\n data: {\n purchase_item_ids: purchaseItemIds.map(id => Number(id)),\n },\n },\n session\n );\n return charge;\n}\n\n/* Process a Charge. */\nexport async function processCharge(session: Session, id: number | string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('post', `/charges/${id}/process`, {}, session);\n return charge;\n}\n"],"names":[],"mappings":";;AACO,eAAe,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE;AACtD,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAClJ,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,SAAS,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE;AAC5C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACnE,CAAC;AACM,eAAe,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE;AACvE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE;AACvF,IAAI,IAAI,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;AACzC,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,yBAAyB,CAAC,OAAO,EAAE,EAAE,EAAE;AAC7D,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AACrG,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE;AAC/D,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE;AAC7E,IAAI,IAAI,EAAE;AACV,MAAM,iBAAiB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AAClE,KAAK;AACL,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,YAAY,CAAC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE;AACjE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE;AAC/E,IAAI,IAAI,EAAE;AACV,MAAM,iBAAiB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AAClE,KAAK;AACL,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE;AACjD,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC7F,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
1
+ {"version":3,"file":"charge.js","sources":["../../../src/api/charge.ts"],"sourcesContent":["import { RequestOptions } from '../types';\nimport { ChargeListParams, ChargeListResponse, ChargeResponse, GetChargeOptions } from '../types/charge';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\n/* Retrieve a Charge using the charge_id. */\nexport async function getCharge(session: Session, id: number | string, options?: GetChargeOptions) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'get',\n `/charges`,\n { id, query: { include: options?.include } },\n session\n );\n return charge;\n}\n\n/** Lists charges */\nexport function listCharges(session: Session, query?: ChargeListParams) {\n return rechargeApiRequest<ChargeListResponse>('get', `/charges`, { query }, session);\n}\n\n/**\n * You cannot add a Discount to an existing queued Charge if the Charge or the associated Address already has one.\n * If a Charge has a Discount and it gets updated, or a regeneration occurs, the Discount will be lost. Regeneration is a process that refreshes the Charge JSON with new data in the case of the Subscription or Address being updated.\n */\nexport async function applyDiscountToCharge(session: Session, id: number | string, discountCode: string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/apply_discount`,\n {\n data: { discount_code: discountCode },\n },\n session\n );\n return charge;\n}\n\n/**\n * Remove all Discounts from a Charge without destroying the Discount.\n * In most cases the Discount should be removed from the Address. When the Discount is removed from the Address, the Discount is also removed from any future Charges.\n * If the Discount is on the parent Address, you cannot remove it using charge_id.\n * When removing your Discount, it is preferable to pass the address_id so that the Discount stays removed if the Charge is regenerated. Only pass charge_id in edge cases in which there are two or more Charges on a parent Address and you only want to remove the Discount from one Charge.\n * If you pass both parameters, it will remove the Discount from the Address.\n */\nexport async function removeDiscountsFromCharge(session: Session, id: number | string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('post', `/charges/${id}/remove_discount`, {}, session);\n return charge;\n}\n\n/* Skip a Charge. */\nexport async function skipCharge(session: Session, id: number | string, purchaseItemIds: (string | number)[]) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/skip`,\n {\n data: {\n purchase_item_ids: purchaseItemIds.map(id => Number(id)),\n },\n },\n session\n );\n return charge;\n}\n\n/* Unskip a Charge. */\nexport async function unskipCharge(session: Session, id: number | string, purchaseItemIds: (string | number)[]) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/unskip`,\n {\n data: {\n purchase_item_ids: purchaseItemIds.map(id => Number(id)),\n },\n },\n session\n );\n return charge;\n}\n\n/* Process a Charge. */\nexport async function processCharge(session: Session, id: number | string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('post', `/charges/${id}/process`, {}, session);\n return charge;\n}\n"],"names":[],"mappings":";;AACO,eAAe,SAAS,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE;AACtD,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB;AAC7C,IAAI,KAAK;AACT,IAAI,CAAC,QAAQ,CAAC;AACd,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE;AAC1E,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,SAAS,WAAW,CAAC,OAAO,EAAE,KAAK,EAAE;AAC5C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACnE,CAAC;AACM,eAAe,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE;AACvE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB;AAC7C,IAAI,MAAM;AACV,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC;AACnC,IAAI;AACJ,MAAM,IAAI,EAAE,EAAE,aAAa,EAAE,YAAY,EAAE;AAC3C,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,yBAAyB,CAAC,OAAO,EAAE,EAAE,EAAE;AAC7D,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AACrG,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE;AAC/D,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB;AAC7C,IAAI,MAAM;AACV,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC;AACzB,IAAI;AACJ,MAAM,IAAI,EAAE;AACZ,QAAQ,iBAAiB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AACpE,OAAO;AACP,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,YAAY,CAAC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE;AACjE,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB;AAC7C,IAAI,MAAM;AACV,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC;AAC3B,IAAI;AACJ,MAAM,IAAI,EAAE;AACZ,QAAQ,iBAAiB,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,MAAM,CAAC,GAAG,CAAC,CAAC;AACpE,OAAO;AACP,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE;AACjD,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC7F,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
@@ -5,10 +5,15 @@ async function getCustomer(session, options) {
5
5
  if (!id) {
6
6
  throw new Error("Not logged in.");
7
7
  }
8
- const { customer } = await rechargeApiRequest("get", `/customers`, {
9
- id,
10
- query: { include: options == null ? void 0 : options.include }
11
- }, session);
8
+ const { customer } = await rechargeApiRequest(
9
+ "get",
10
+ `/customers`,
11
+ {
12
+ id,
13
+ query: { include: options == null ? void 0 : options.include }
14
+ },
15
+ session
16
+ );
12
17
  return customer;
13
18
  }
14
19
  async function updateCustomer(session, updateRequest) {
@@ -16,7 +21,12 @@ async function updateCustomer(session, updateRequest) {
16
21
  if (!id) {
17
22
  throw new Error("Not logged in.");
18
23
  }
19
- const { customer } = await rechargeApiRequest("put", `/customers`, { id, data: updateRequest }, session);
24
+ const { customer } = await rechargeApiRequest(
25
+ "put",
26
+ `/customers`,
27
+ { id, data: updateRequest },
28
+ session
29
+ );
20
30
  return customer;
21
31
  }
22
32
  async function getDeliverySchedule(session, query) {
@@ -24,7 +34,12 @@ async function getDeliverySchedule(session, query) {
24
34
  if (!id) {
25
35
  throw new Error("Not logged in.");
26
36
  }
27
- const { deliveries } = await rechargeApiRequest("get", `/customers/${id}/delivery_schedule`, { query }, session);
37
+ const { deliveries } = await rechargeApiRequest(
38
+ "get",
39
+ `/customers/${id}/delivery_schedule`,
40
+ { query },
41
+ session
42
+ );
28
43
  return deliveries;
29
44
  }
30
45
  async function getCustomerPortalAccess(session) {
@@ -1 +1 @@
1
- {"version":3,"file":"customer.js","sources":["../../../src/api/customer.ts"],"sourcesContent":["import { Session } from '../types/session';\nimport {\n Customer,\n CustomerDeliveryScheduleParams,\n CustomerDeliveryScheduleResponse,\n CustomerPortalAccessResponse,\n Delivery,\n GetCustomerOptions,\n UpdateCustomerRequest,\n} from '../types/customer';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getCustomer(session: Session, options?: GetCustomerOptions): Promise<Customer> {\n const id = session.customerId;\n if (!id) {\n throw new Error('Not logged in.');\n }\n const { customer } = await rechargeApiRequest<{ customer: Customer }>(\n 'get',\n `/customers`,\n {\n id,\n query: { include: options?.include },\n },\n session\n );\n return customer;\n}\n\nexport async function updateCustomer(session: Session, updateRequest: UpdateCustomerRequest): Promise<Customer> {\n const id = session.customerId;\n if (!id) {\n throw new Error('Not logged in.');\n }\n const { customer } = await rechargeApiRequest<{ customer: Customer }>(\n 'put',\n `/customers`,\n { id, data: updateRequest },\n session\n );\n return customer;\n}\n\nexport async function getDeliverySchedule(\n session: Session,\n query?: CustomerDeliveryScheduleParams\n): Promise<Delivery[]> {\n const id = session.customerId;\n if (!id) {\n throw new Error('Not logged in.');\n }\n const { deliveries } = await rechargeApiRequest<CustomerDeliveryScheduleResponse>(\n 'get',\n `/customers/${id}/delivery_schedule`,\n { query },\n session\n );\n return deliveries;\n}\n\nexport async function getCustomerPortalAccess(session: Session): Promise<CustomerPortalAccessResponse> {\n const access = await rechargeApiRequest<CustomerPortalAccessResponse>('get', '/portal_access', {}, session);\n return access;\n}\n"],"names":[],"mappings":";;AACO,eAAe,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE;AACpD,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,IAAI,CAAC,EAAE,EAAE;AACX,IAAI,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACtC,GAAG;AACH,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE;AACrE,IAAI,EAAE;AACN,IAAI,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE;AAClE,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,QAAQ,CAAC;AAClB,CAAC;AACM,eAAe,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE;AAC7D,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,IAAI,CAAC,EAAE,EAAE;AACX,IAAI,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACtC,GAAG;AACH,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,OAAO,CAAC,CAAC;AAC3G,EAAE,OAAO,QAAQ,CAAC;AAClB,CAAC;AACM,eAAe,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE;AAC1D,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,IAAI,CAAC,EAAE,EAAE;AACX,IAAI,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACtC,GAAG;AACH,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACnH,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,eAAe,uBAAuB,CAAC,OAAO,EAAE;AACvD,EAAE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAChF,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
1
+ {"version":3,"file":"customer.js","sources":["../../../src/api/customer.ts"],"sourcesContent":["import { Session } from '../types/session';\nimport {\n Customer,\n CustomerDeliveryScheduleParams,\n CustomerDeliveryScheduleResponse,\n CustomerPortalAccessResponse,\n Delivery,\n GetCustomerOptions,\n UpdateCustomerRequest,\n} from '../types/customer';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getCustomer(session: Session, options?: GetCustomerOptions): Promise<Customer> {\n const id = session.customerId;\n if (!id) {\n throw new Error('Not logged in.');\n }\n const { customer } = await rechargeApiRequest<{ customer: Customer }>(\n 'get',\n `/customers`,\n {\n id,\n query: { include: options?.include },\n },\n session\n );\n return customer;\n}\n\nexport async function updateCustomer(session: Session, updateRequest: UpdateCustomerRequest): Promise<Customer> {\n const id = session.customerId;\n if (!id) {\n throw new Error('Not logged in.');\n }\n const { customer } = await rechargeApiRequest<{ customer: Customer }>(\n 'put',\n `/customers`,\n { id, data: updateRequest },\n session\n );\n return customer;\n}\n\nexport async function getDeliverySchedule(\n session: Session,\n query?: CustomerDeliveryScheduleParams\n): Promise<Delivery[]> {\n const id = session.customerId;\n if (!id) {\n throw new Error('Not logged in.');\n }\n const { deliveries } = await rechargeApiRequest<CustomerDeliveryScheduleResponse>(\n 'get',\n `/customers/${id}/delivery_schedule`,\n { query },\n session\n );\n return deliveries;\n}\n\nexport async function getCustomerPortalAccess(session: Session): Promise<CustomerPortalAccessResponse> {\n const access = await rechargeApiRequest<CustomerPortalAccessResponse>('get', '/portal_access', {}, session);\n return access;\n}\n"],"names":[],"mappings":";;AACO,eAAe,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE;AACpD,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,IAAI,CAAC,EAAE,EAAE;AACX,IAAI,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACtC,GAAG;AACH,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB;AAC/C,IAAI,KAAK;AACT,IAAI,CAAC,UAAU,CAAC;AAChB,IAAI;AACJ,MAAM,EAAE;AACR,MAAM,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE;AACpE,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,QAAQ,CAAC;AAClB,CAAC;AACM,eAAe,cAAc,CAAC,OAAO,EAAE,aAAa,EAAE;AAC7D,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,IAAI,CAAC,EAAE,EAAE;AACX,IAAI,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACtC,GAAG;AACH,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,kBAAkB;AAC/C,IAAI,KAAK;AACT,IAAI,CAAC,UAAU,CAAC;AAChB,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;AAC/B,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,QAAQ,CAAC;AAClB,CAAC;AACM,eAAe,mBAAmB,CAAC,OAAO,EAAE,KAAK,EAAE;AAC1D,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC;AAChC,EAAE,IAAI,CAAC,EAAE,EAAE;AACX,IAAI,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACtC,GAAG;AACH,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB;AACjD,IAAI,KAAK;AACT,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC,kBAAkB,CAAC;AACxC,IAAI,EAAE,KAAK,EAAE;AACb,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,eAAe,uBAAuB,CAAC,OAAO,EAAE;AACvD,EAAE,MAAM,MAAM,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAChF,EAAE,OAAO,MAAM,CAAC;AAChB;;;;"}
@@ -8,21 +8,36 @@ function listMemberships(session, query) {
8
8
  return rechargeApiRequest("get", `/memberships`, { query }, session);
9
9
  }
10
10
  async function cancelMembership(session, id, cancelRequest) {
11
- const { membership } = await rechargeApiRequest("post", `/memberships/${id}/cancel`, {
12
- data: cancelRequest
13
- }, session);
11
+ const { membership } = await rechargeApiRequest(
12
+ "post",
13
+ `/memberships/${id}/cancel`,
14
+ {
15
+ data: cancelRequest
16
+ },
17
+ session
18
+ );
14
19
  return membership;
15
20
  }
16
21
  async function activateMembership(session, id, activateRequest) {
17
- const { membership } = await rechargeApiRequest("post", `/memberships/${id}/activate`, {
18
- data: activateRequest
19
- }, session);
22
+ const { membership } = await rechargeApiRequest(
23
+ "post",
24
+ `/memberships/${id}/activate`,
25
+ {
26
+ data: activateRequest
27
+ },
28
+ session
29
+ );
20
30
  return membership;
21
31
  }
22
32
  async function changeMembership(session, id, changeRequest) {
23
- const { membership } = await rechargeApiRequest("post", `/memberships/${id}/change`, {
24
- data: changeRequest
25
- }, session);
33
+ const { membership } = await rechargeApiRequest(
34
+ "post",
35
+ `/memberships/${id}/change`,
36
+ {
37
+ data: changeRequest
38
+ },
39
+ session
40
+ );
26
41
  return membership;
27
42
  }
28
43
 
@@ -1 +1 @@
1
- {"version":3,"file":"membership.js","sources":["../../../src/api/membership.ts"],"sourcesContent":["import {\n ActivateMembershipRequest,\n CancelMembershipRequest,\n ChangeMembershipRequest,\n MembershipListParams,\n MembershipListResponse,\n MembershipResponse,\n} from '../types/membership';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\n/** @internal Retrieves membership information for passed in id */\nexport async function getMembership(session: Session, id: string | number) {\n const { membership } = await rechargeApiRequest<MembershipResponse>('get', `/memberships`, { id }, session);\n return membership;\n}\n\n/** @internal Retrieves a list of memberships */\nexport function listMemberships(session: Session, query?: MembershipListParams) {\n return rechargeApiRequest<MembershipListResponse>('get', `/memberships`, { query }, session);\n}\n\n/** @internal Cancels a membership */\nexport async function cancelMembership(session: Session, id: string | number, cancelRequest: CancelMembershipRequest) {\n const { membership } = await rechargeApiRequest<MembershipResponse>(\n 'post',\n `/memberships/${id}/cancel`,\n {\n data: cancelRequest,\n },\n session\n );\n return membership;\n}\n\n/** @internal Activates a membership */\nexport async function activateMembership(\n session: Session,\n id: string | number,\n activateRequest: ActivateMembershipRequest\n) {\n const { membership } = await rechargeApiRequest<MembershipResponse>(\n 'post',\n `/memberships/${id}/activate`,\n {\n data: activateRequest,\n },\n session\n );\n return membership;\n}\n\n/** @internal changes a membership program/product*/\nexport async function changeMembership(session: Session, id: string | number, changeRequest: ChangeMembershipRequest) {\n const { membership } = await rechargeApiRequest<MembershipResponse>(\n 'post',\n `/memberships/${id}/change`,\n {\n data: changeRequest,\n },\n session\n );\n return membership;\n}\n"],"names":[],"mappings":";;AACO,eAAe,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE;AACjD,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC1F,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,SAAS,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE;AAChD,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AACM,eAAe,gBAAgB,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AACnE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE;AACvF,IAAI,IAAI,EAAE,aAAa;AACvB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,eAAe,kBAAkB,CAAC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE;AACvE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE;AACzF,IAAI,IAAI,EAAE,eAAe;AACzB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,eAAe,gBAAgB,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AACnE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE;AACvF,IAAI,IAAI,EAAE,aAAa;AACvB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,UAAU,CAAC;AACpB;;;;"}
1
+ {"version":3,"file":"membership.js","sources":["../../../src/api/membership.ts"],"sourcesContent":["import {\n ActivateMembershipRequest,\n CancelMembershipRequest,\n ChangeMembershipRequest,\n MembershipListParams,\n MembershipListResponse,\n MembershipResponse,\n} from '../types/membership';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\n/** @internal Retrieves membership information for passed in id */\nexport async function getMembership(session: Session, id: string | number) {\n const { membership } = await rechargeApiRequest<MembershipResponse>('get', `/memberships`, { id }, session);\n return membership;\n}\n\n/** @internal Retrieves a list of memberships */\nexport function listMemberships(session: Session, query?: MembershipListParams) {\n return rechargeApiRequest<MembershipListResponse>('get', `/memberships`, { query }, session);\n}\n\n/** @internal Cancels a membership */\nexport async function cancelMembership(session: Session, id: string | number, cancelRequest: CancelMembershipRequest) {\n const { membership } = await rechargeApiRequest<MembershipResponse>(\n 'post',\n `/memberships/${id}/cancel`,\n {\n data: cancelRequest,\n },\n session\n );\n return membership;\n}\n\n/** @internal Activates a membership */\nexport async function activateMembership(\n session: Session,\n id: string | number,\n activateRequest: ActivateMembershipRequest\n) {\n const { membership } = await rechargeApiRequest<MembershipResponse>(\n 'post',\n `/memberships/${id}/activate`,\n {\n data: activateRequest,\n },\n session\n );\n return membership;\n}\n\n/** @internal changes a membership program/product*/\nexport async function changeMembership(session: Session, id: string | number, changeRequest: ChangeMembershipRequest) {\n const { membership } = await rechargeApiRequest<MembershipResponse>(\n 'post',\n `/memberships/${id}/change`,\n {\n data: changeRequest,\n },\n session\n );\n return membership;\n}\n"],"names":[],"mappings":";;AACO,eAAe,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE;AACjD,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC1F,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,SAAS,eAAe,CAAC,OAAO,EAAE,KAAK,EAAE;AAChD,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACvE,CAAC;AACM,eAAe,gBAAgB,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AACnE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB;AACjD,IAAI,MAAM;AACV,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC;AAC/B,IAAI;AACJ,MAAM,IAAI,EAAE,aAAa;AACzB,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,eAAe,kBAAkB,CAAC,OAAO,EAAE,EAAE,EAAE,eAAe,EAAE;AACvE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB;AACjD,IAAI,MAAM;AACV,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,SAAS,CAAC;AACjC,IAAI;AACJ,MAAM,IAAI,EAAE,eAAe;AAC3B,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,UAAU,CAAC;AACpB,CAAC;AACM,eAAe,gBAAgB,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AACnE,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,kBAAkB;AACjD,IAAI,MAAM;AACV,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC,OAAO,CAAC;AAC/B,IAAI;AACJ,MAAM,IAAI,EAAE,aAAa;AACzB,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,UAAU,CAAC;AACpB;;;;"}
@@ -1,7 +1,12 @@
1
1
  import { rechargeApiRequest } from '../utils/request.js';
2
2
 
3
3
  async function getMembershipProgram(session, id, options) {
4
- const { membership_program } = await rechargeApiRequest("get", `/membership_programs`, { id, query: { include: options == null ? void 0 : options.include } }, session);
4
+ const { membership_program } = await rechargeApiRequest(
5
+ "get",
6
+ `/membership_programs`,
7
+ { id, query: { include: options == null ? void 0 : options.include } },
8
+ session
9
+ );
5
10
  return membership_program;
6
11
  }
7
12
  function listMembershipPrograms(session, query) {
@@ -1 +1 @@
1
- {"version":3,"file":"membershipProgram.js","sources":["../../../src/api/membershipProgram.ts"],"sourcesContent":["import {\n MembershipProgramListParams,\n MembershipProgramListResponse,\n MembershipProgramResponse,\n GetMembershipProgramOptions,\n} from '../types/membershipProgram';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\n/** @internal Retrieves membership program information for passed in id */\nexport async function getMembershipProgram(\n session: Session,\n id: string | number,\n options?: GetMembershipProgramOptions\n) {\n const { membership_program } = await rechargeApiRequest<MembershipProgramResponse>(\n 'get',\n `/membership_programs`,\n { id, query: { include: options?.include } },\n session\n );\n return membership_program;\n}\n\n/** @internal Retrieves a list of memberships */\nexport function listMembershipPrograms(session: Session, query?: MembershipProgramListParams) {\n return rechargeApiRequest<MembershipProgramListResponse>('get', `/membership_programs`, { query }, session);\n}\n"],"names":[],"mappings":";;AACO,eAAe,oBAAoB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE;AACjE,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC1K,EAAE,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AACM,SAAS,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE;AACvD,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AAC/E;;;;"}
1
+ {"version":3,"file":"membershipProgram.js","sources":["../../../src/api/membershipProgram.ts"],"sourcesContent":["import {\n MembershipProgramListParams,\n MembershipProgramListResponse,\n MembershipProgramResponse,\n GetMembershipProgramOptions,\n} from '../types/membershipProgram';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\n/** @internal Retrieves membership program information for passed in id */\nexport async function getMembershipProgram(\n session: Session,\n id: string | number,\n options?: GetMembershipProgramOptions\n) {\n const { membership_program } = await rechargeApiRequest<MembershipProgramResponse>(\n 'get',\n `/membership_programs`,\n { id, query: { include: options?.include } },\n session\n );\n return membership_program;\n}\n\n/** @internal Retrieves a list of memberships */\nexport function listMembershipPrograms(session: Session, query?: MembershipProgramListParams) {\n return rechargeApiRequest<MembershipProgramListResponse>('get', `/membership_programs`, { query }, session);\n}\n"],"names":[],"mappings":";;AACO,eAAe,oBAAoB,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE;AACjE,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,kBAAkB;AACzD,IAAI,KAAK;AACT,IAAI,CAAC,oBAAoB,CAAC;AAC1B,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,OAAO,CAAC,OAAO,EAAE,EAAE;AAC1E,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,kBAAkB,CAAC;AAC5B,CAAC;AACM,SAAS,sBAAsB,CAAC,OAAO,EAAE,KAAK,EAAE;AACvD,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AAC/E;;;;"}
@@ -1,22 +1,37 @@
1
1
  import { rechargeApiRequest } from '../utils/request.js';
2
2
 
3
3
  async function createMetafield(session, createRequest) {
4
- const { metafield } = await rechargeApiRequest("post", `/metafields`, {
5
- data: { metafield: createRequest }
6
- }, session);
4
+ const { metafield } = await rechargeApiRequest(
5
+ "post",
6
+ `/metafields`,
7
+ {
8
+ data: { metafield: createRequest }
9
+ },
10
+ session
11
+ );
7
12
  return metafield;
8
13
  }
9
14
  async function updateMetafield(session, id, updateRequest) {
10
- const { metafield } = await rechargeApiRequest("put", `/metafields`, {
11
- id,
12
- data: { metafield: updateRequest }
13
- }, session);
15
+ const { metafield } = await rechargeApiRequest(
16
+ "put",
17
+ `/metafields`,
18
+ {
19
+ id,
20
+ data: { metafield: updateRequest }
21
+ },
22
+ session
23
+ );
14
24
  return metafield;
15
25
  }
16
26
  function deleteMetafield(session, id) {
17
- return rechargeApiRequest("delete", `/metafields`, {
18
- id
19
- }, session);
27
+ return rechargeApiRequest(
28
+ "delete",
29
+ `/metafields`,
30
+ {
31
+ id
32
+ },
33
+ session
34
+ );
20
35
  }
21
36
 
22
37
  export { createMetafield, deleteMetafield, updateMetafield };
@@ -1 +1 @@
1
- {"version":3,"file":"metafield.js","sources":["../../../src/api/metafield.ts"],"sourcesContent":["import { CreateMetafieldRequest, Metafield, UpdateMetafieldRequest } from '../types/metafield';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function createMetafield(session: Session, createRequest: CreateMetafieldRequest): Promise<Metafield> {\n const { metafield } = await rechargeApiRequest<{ metafield: Metafield }>(\n 'post',\n `/metafields`,\n {\n data: { metafield: createRequest },\n },\n session\n );\n return metafield;\n}\n\nexport async function updateMetafield(\n session: Session,\n id: string | number,\n updateRequest: UpdateMetafieldRequest\n): Promise<Metafield> {\n const { metafield } = await rechargeApiRequest<{ metafield: Metafield }>(\n 'put',\n `/metafields`,\n {\n id,\n data: { metafield: updateRequest },\n },\n session\n );\n return metafield;\n}\n\nexport function deleteMetafield(session: Session, id: string | number): Promise<void> {\n return rechargeApiRequest<void>(\n 'delete',\n `/metafields`,\n {\n id,\n },\n session\n );\n}\n"],"names":[],"mappings":";;AACO,eAAe,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE;AAC9D,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,WAAW,CAAC,EAAE;AACxE,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE;AACtC,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,SAAS,CAAC;AACnB,CAAC;AACM,eAAe,eAAe,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AAClE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,WAAW,CAAC,EAAE;AACvE,IAAI,EAAE;AACN,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE;AACtC,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,SAAS,CAAC;AACnB,CAAC;AACM,SAAS,eAAe,CAAC,OAAO,EAAE,EAAE,EAAE;AAC7C,EAAE,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,EAAE;AACrD,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd;;;;"}
1
+ {"version":3,"file":"metafield.js","sources":["../../../src/api/metafield.ts"],"sourcesContent":["import { CreateMetafieldRequest, Metafield, UpdateMetafieldRequest } from '../types/metafield';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function createMetafield(session: Session, createRequest: CreateMetafieldRequest): Promise<Metafield> {\n const { metafield } = await rechargeApiRequest<{ metafield: Metafield }>(\n 'post',\n `/metafields`,\n {\n data: { metafield: createRequest },\n },\n session\n );\n return metafield;\n}\n\nexport async function updateMetafield(\n session: Session,\n id: string | number,\n updateRequest: UpdateMetafieldRequest\n): Promise<Metafield> {\n const { metafield } = await rechargeApiRequest<{ metafield: Metafield }>(\n 'put',\n `/metafields`,\n {\n id,\n data: { metafield: updateRequest },\n },\n session\n );\n return metafield;\n}\n\nexport function deleteMetafield(session: Session, id: string | number): Promise<void> {\n return rechargeApiRequest<void>(\n 'delete',\n `/metafields`,\n {\n id,\n },\n session\n );\n}\n"],"names":[],"mappings":";;AACO,eAAe,eAAe,CAAC,OAAO,EAAE,aAAa,EAAE;AAC9D,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAkB;AAChD,IAAI,MAAM;AACV,IAAI,CAAC,WAAW,CAAC;AACjB,IAAI;AACJ,MAAM,IAAI,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE;AACxC,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,SAAS,CAAC;AACnB,CAAC;AACM,eAAe,eAAe,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AAClE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,kBAAkB;AAChD,IAAI,KAAK;AACT,IAAI,CAAC,WAAW,CAAC;AACjB,IAAI;AACJ,MAAM,EAAE;AACR,MAAM,IAAI,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE;AACxC,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,SAAS,CAAC;AACnB,CAAC;AACM,SAAS,eAAe,CAAC,OAAO,EAAE,EAAE,EAAE;AAC7C,EAAE,OAAO,kBAAkB;AAC3B,IAAI,QAAQ;AACZ,IAAI,CAAC,WAAW,CAAC;AACjB,IAAI;AACJ,MAAM,EAAE;AACR,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ;;;;"}
@@ -1,31 +1,51 @@
1
1
  import { rechargeApiRequest } from '../utils/request.js';
2
2
 
3
3
  async function getOnetime(session, id) {
4
- const { onetime } = await rechargeApiRequest("get", `/onetimes`, {
5
- id
6
- }, session);
4
+ const { onetime } = await rechargeApiRequest(
5
+ "get",
6
+ `/onetimes`,
7
+ {
8
+ id
9
+ },
10
+ session
11
+ );
7
12
  return onetime;
8
13
  }
9
14
  function listOnetimes(session, query) {
10
15
  return rechargeApiRequest("get", `/onetimes`, { query }, session);
11
16
  }
12
17
  async function createOnetime(session, createRequest) {
13
- const { onetime } = await rechargeApiRequest("post", `/onetimes`, {
14
- data: createRequest
15
- }, session);
18
+ const { onetime } = await rechargeApiRequest(
19
+ "post",
20
+ `/onetimes`,
21
+ {
22
+ data: createRequest
23
+ },
24
+ session
25
+ );
16
26
  return onetime;
17
27
  }
18
28
  async function updateOnetime(session, id, updateRequest) {
19
- const { onetime } = await rechargeApiRequest("put", `/onetimes`, {
20
- id,
21
- data: updateRequest
22
- }, session);
29
+ const { onetime } = await rechargeApiRequest(
30
+ "put",
31
+ `/onetimes`,
32
+ {
33
+ id,
34
+ data: updateRequest
35
+ },
36
+ session
37
+ );
23
38
  return onetime;
24
39
  }
25
40
  function deleteOnetime(session, id) {
26
- return rechargeApiRequest("delete", `/onetimes`, {
27
- id
28
- }, session);
41
+ return rechargeApiRequest(
42
+ "delete",
43
+ `/onetimes`,
44
+ {
45
+ id
46
+ },
47
+ session
48
+ );
29
49
  }
30
50
 
31
51
  export { createOnetime, deleteOnetime, getOnetime, listOnetimes, updateOnetime };
@@ -1 +1 @@
1
- {"version":3,"file":"onetime.js","sources":["../../../src/api/onetime.ts"],"sourcesContent":["import {\n CreateOnetimeRequest,\n Onetime,\n OnetimeListParams,\n OnetimesResponse,\n UpdateOnetimeRequest,\n} from '../types/onetime';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getOnetime(session: Session, id: string | number): Promise<Onetime> {\n const { onetime } = await rechargeApiRequest<{ onetime: Onetime }>(\n 'get',\n `/onetimes`,\n {\n id,\n },\n session\n );\n return onetime;\n}\n\nexport function listOnetimes(session: Session, query?: OnetimeListParams): Promise<OnetimesResponse> {\n return rechargeApiRequest<OnetimesResponse>('get', `/onetimes`, { query }, session);\n}\n\nexport async function createOnetime(session: Session, createRequest: CreateOnetimeRequest): Promise<Onetime> {\n const { onetime } = await rechargeApiRequest<{ onetime: Onetime }>(\n 'post',\n `/onetimes`,\n {\n data: createRequest,\n },\n session\n );\n return onetime;\n}\n\nexport async function updateOnetime(\n session: Session,\n id: string | number,\n updateRequest: UpdateOnetimeRequest\n): Promise<Onetime> {\n const { onetime } = await rechargeApiRequest<{ onetime: Onetime }>(\n 'put',\n `/onetimes`,\n {\n id,\n data: updateRequest,\n },\n session\n );\n return onetime;\n}\n\nexport function deleteOnetime(session: Session, id: string | number): Promise<void> {\n return rechargeApiRequest<void>(\n 'delete',\n `/onetimes`,\n {\n id,\n },\n session\n );\n}\n"],"names":[],"mappings":";;AACO,eAAe,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE;AAC9C,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;AACnE,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,OAAO,CAAC;AACjB,CAAC;AACM,SAAS,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE;AAC7C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AACM,eAAe,aAAa,CAAC,OAAO,EAAE,aAAa,EAAE;AAC5D,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE;AACpE,IAAI,IAAI,EAAE,aAAa;AACvB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,OAAO,CAAC;AACjB,CAAC;AACM,eAAe,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AAChE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE;AACnE,IAAI,EAAE;AACN,IAAI,IAAI,EAAE,aAAa;AACvB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,OAAO,CAAC;AACjB,CAAC;AACM,SAAS,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE;AAC3C,EAAE,OAAO,kBAAkB,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE;AACnD,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd;;;;"}
1
+ {"version":3,"file":"onetime.js","sources":["../../../src/api/onetime.ts"],"sourcesContent":["import {\n CreateOnetimeRequest,\n Onetime,\n OnetimeListParams,\n OnetimesResponse,\n UpdateOnetimeRequest,\n} from '../types/onetime';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getOnetime(session: Session, id: string | number): Promise<Onetime> {\n const { onetime } = await rechargeApiRequest<{ onetime: Onetime }>(\n 'get',\n `/onetimes`,\n {\n id,\n },\n session\n );\n return onetime;\n}\n\nexport function listOnetimes(session: Session, query?: OnetimeListParams): Promise<OnetimesResponse> {\n return rechargeApiRequest<OnetimesResponse>('get', `/onetimes`, { query }, session);\n}\n\nexport async function createOnetime(session: Session, createRequest: CreateOnetimeRequest): Promise<Onetime> {\n const { onetime } = await rechargeApiRequest<{ onetime: Onetime }>(\n 'post',\n `/onetimes`,\n {\n data: createRequest,\n },\n session\n );\n return onetime;\n}\n\nexport async function updateOnetime(\n session: Session,\n id: string | number,\n updateRequest: UpdateOnetimeRequest\n): Promise<Onetime> {\n const { onetime } = await rechargeApiRequest<{ onetime: Onetime }>(\n 'put',\n `/onetimes`,\n {\n id,\n data: updateRequest,\n },\n session\n );\n return onetime;\n}\n\nexport function deleteOnetime(session: Session, id: string | number): Promise<void> {\n return rechargeApiRequest<void>(\n 'delete',\n `/onetimes`,\n {\n id,\n },\n session\n );\n}\n"],"names":[],"mappings":";;AACO,eAAe,UAAU,CAAC,OAAO,EAAE,EAAE,EAAE;AAC9C,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB;AAC9C,IAAI,KAAK;AACT,IAAI,CAAC,SAAS,CAAC;AACf,IAAI;AACJ,MAAM,EAAE;AACR,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,OAAO,CAAC;AACjB,CAAC;AACM,SAAS,YAAY,CAAC,OAAO,EAAE,KAAK,EAAE;AAC7C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AACM,eAAe,aAAa,CAAC,OAAO,EAAE,aAAa,EAAE;AAC5D,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB;AAC9C,IAAI,MAAM;AACV,IAAI,CAAC,SAAS,CAAC;AACf,IAAI;AACJ,MAAM,IAAI,EAAE,aAAa;AACzB,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,OAAO,CAAC;AACjB,CAAC;AACM,eAAe,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AAChE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,kBAAkB;AAC9C,IAAI,KAAK;AACT,IAAI,CAAC,SAAS,CAAC;AACf,IAAI;AACJ,MAAM,EAAE;AACR,MAAM,IAAI,EAAE,aAAa;AACzB,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,OAAO,CAAC;AACjB,CAAC;AACM,SAAS,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE;AAC3C,EAAE,OAAO,kBAAkB;AAC3B,IAAI,QAAQ;AACZ,IAAI,CAAC,SAAS,CAAC;AACf,IAAI;AACJ,MAAM,EAAE;AACR,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ;;;;"}
@@ -1,9 +1,14 @@
1
1
  import { rechargeApiRequest } from '../utils/request.js';
2
2
 
3
3
  async function getOrder(session, id) {
4
- const { order } = await rechargeApiRequest("get", `/orders`, {
5
- id
6
- }, session);
4
+ const { order } = await rechargeApiRequest(
5
+ "get",
6
+ `/orders`,
7
+ {
8
+ id
9
+ },
10
+ session
11
+ );
7
12
  return order;
8
13
  }
9
14
  function listOrders(session, query) {
@@ -1 +1 @@
1
- {"version":3,"file":"order.js","sources":["../../../src/api/order.ts"],"sourcesContent":["import { Order, OrderListParams, OrdersResponse } from '../types/order';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getOrder(session: Session, id: string | number): Promise<Order> {\n const { order } = await rechargeApiRequest<{ order: Order }>(\n 'get',\n `/orders`,\n {\n id,\n },\n session\n );\n return order;\n}\n\nexport function listOrders(session: Session, query?: OrderListParams): Promise<OrdersResponse> {\n return rechargeApiRequest<OrdersResponse>('get', `/orders`, { query }, session);\n}\n"],"names":[],"mappings":";;AACO,eAAe,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE;AAC5C,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE;AAC/D,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,KAAK,CAAC;AACf,CAAC;AACM,SAAS,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE;AAC3C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AAClE;;;;"}
1
+ {"version":3,"file":"order.js","sources":["../../../src/api/order.ts"],"sourcesContent":["import { Order, OrderListParams, OrdersResponse } from '../types/order';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getOrder(session: Session, id: string | number): Promise<Order> {\n const { order } = await rechargeApiRequest<{ order: Order }>(\n 'get',\n `/orders`,\n {\n id,\n },\n session\n );\n return order;\n}\n\nexport function listOrders(session: Session, query?: OrderListParams): Promise<OrdersResponse> {\n return rechargeApiRequest<OrdersResponse>('get', `/orders`, { query }, session);\n}\n"],"names":[],"mappings":";;AACO,eAAe,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE;AAC5C,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,kBAAkB;AAC5C,IAAI,KAAK;AACT,IAAI,CAAC,OAAO,CAAC;AACb,IAAI;AACJ,MAAM,EAAE;AACR,KAAK;AACL,IAAI,OAAO;AACX,GAAG,CAAC;AACJ,EAAE,OAAO,KAAK,CAAC;AACf,CAAC;AACM,SAAS,UAAU,CAAC,OAAO,EAAE,KAAK,EAAE;AAC3C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AAClE;;;;"}
@@ -1,17 +1,27 @@
1
1
  import { rechargeApiRequest } from '../utils/request.js';
2
2
 
3
3
  async function getPaymentMethod(session, id, options) {
4
- const { payment_method } = await rechargeApiRequest("get", `/payment_methods`, {
5
- id,
6
- query: { include: options == null ? void 0 : options.include }
7
- }, session);
4
+ const { payment_method } = await rechargeApiRequest(
5
+ "get",
6
+ `/payment_methods`,
7
+ {
8
+ id,
9
+ query: { include: options == null ? void 0 : options.include }
10
+ },
11
+ session
12
+ );
8
13
  return payment_method;
9
14
  }
10
15
  async function updatePaymentMethod(session, id, updateRequest) {
11
- const { payment_method } = await rechargeApiRequest("put", `/payment_methods`, {
12
- id,
13
- data: updateRequest
14
- }, session);
16
+ const { payment_method } = await rechargeApiRequest(
17
+ "put",
18
+ `/payment_methods`,
19
+ {
20
+ id,
21
+ data: updateRequest
22
+ },
23
+ session
24
+ );
15
25
  return payment_method;
16
26
  }
17
27
  function listPaymentMethods(session, query) {