@rechargeapps/storefront-client 0.15.1 → 0.15.2
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.
- package/dist/cjs/api/address.js +45 -0
- package/dist/cjs/api/address.js.map +1 -0
- package/dist/cjs/api/auth.js +36 -0
- package/dist/cjs/api/auth.js.map +1 -0
- package/dist/cjs/api/bundle.js +74 -0
- package/dist/cjs/api/bundle.js.map +1 -0
- package/dist/cjs/api/cdn.js +85 -0
- package/dist/cjs/api/cdn.js.map +1 -0
- package/dist/cjs/api/charge.js +44 -0
- package/dist/cjs/api/charge.js.map +1 -0
- package/dist/cjs/api/customer.js +38 -0
- package/dist/cjs/api/customer.js.map +1 -0
- package/dist/cjs/api/membership.js +31 -0
- package/dist/cjs/api/membership.js.map +1 -0
- package/dist/cjs/api/onetime.js +40 -0
- package/dist/cjs/api/onetime.js.map +1 -0
- package/dist/cjs/api/order.js +19 -0
- package/dist/cjs/api/order.js.map +1 -0
- package/dist/cjs/api/paymentMethod.js +27 -0
- package/dist/cjs/api/paymentMethod.js.map +1 -0
- package/dist/cjs/api/plan.js +19 -0
- package/dist/cjs/api/plan.js.map +1 -0
- package/dist/cjs/api/subscription.js +71 -0
- package/dist/cjs/api/subscription.js.map +1 -0
- package/dist/cjs/constants/api.js +14 -0
- package/dist/cjs/constants/api.js.map +1 -0
- package/dist/cjs/index.js +77 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/mappers/cdn.js +67 -0
- package/dist/cjs/mappers/cdn.js.map +1 -0
- package/dist/cjs/mappers/utils.js +38 -0
- package/dist/cjs/mappers/utils.js.map +1 -0
- package/dist/cjs/utils/init.js +55 -0
- package/dist/cjs/utils/init.js.map +1 -0
- package/dist/cjs/utils/options.js +18 -0
- package/dist/cjs/utils/options.js.map +1 -0
- package/dist/cjs/utils/request.js +98 -0
- package/dist/cjs/utils/request.js.map +1 -0
- package/dist/esm/api/address.js +35 -0
- package/dist/esm/api/address.js.map +1 -0
- package/dist/esm/api/auth.js +31 -0
- package/dist/esm/api/auth.js.map +1 -0
- package/dist/esm/api/bundle.js +69 -0
- package/dist/esm/api/bundle.js.map +1 -0
- package/dist/esm/api/cdn.js +74 -0
- package/dist/esm/api/cdn.js.map +1 -0
- package/dist/esm/api/charge.js +34 -0
- package/dist/esm/api/charge.js.map +1 -0
- package/dist/esm/api/customer.js +32 -0
- package/dist/esm/api/customer.js.map +1 -0
- package/dist/esm/api/membership.js +24 -0
- package/dist/esm/api/membership.js.map +1 -0
- package/dist/esm/api/onetime.js +32 -0
- package/dist/esm/api/onetime.js.map +1 -0
- package/dist/esm/api/order.js +14 -0
- package/dist/esm/api/order.js.map +1 -0
- package/dist/esm/api/paymentMethod.js +21 -0
- package/dist/esm/api/paymentMethod.js.map +1 -0
- package/dist/esm/api/plan.js +14 -0
- package/dist/esm/api/plan.js.map +1 -0
- package/dist/esm/api/subscription.js +59 -0
- package/dist/esm/api/subscription.js.map +1 -0
- package/dist/esm/constants/api.js +7 -0
- package/dist/esm/constants/api.js.map +1 -0
- package/dist/esm/index.js +14 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/mappers/cdn.js +57 -0
- package/dist/esm/mappers/cdn.js.map +1 -0
- package/dist/esm/mappers/utils.js +34 -0
- package/dist/esm/mappers/utils.js.map +1 -0
- package/dist/esm/utils/init.js +50 -0
- package/dist/esm/utils/init.js.map +1 -0
- package/dist/esm/utils/options.js +13 -0
- package/dist/esm/utils/options.js.map +1 -0
- package/dist/esm/utils/request.js +91 -0
- package/dist/esm/utils/request.js.map +1 -0
- package/dist/index.d.ts +1486 -0
- package/dist/umd/recharge-client.min.js +28 -0
- package/package.json +2 -2
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { productMapper, widgetSettingsMapper, productArrayMapper } from '../mappers/cdn.js';
|
|
2
|
+
import { cdnRequest } from '../utils/request.js';
|
|
3
|
+
|
|
4
|
+
const CDN_VERSION = "2020-12";
|
|
5
|
+
const DEFAULT_STORE_SETTINGS = {
|
|
6
|
+
store_currency: {
|
|
7
|
+
currency_code: "USD",
|
|
8
|
+
currency_symbol: "$",
|
|
9
|
+
decimal_separator: ".",
|
|
10
|
+
thousands_separator: ",",
|
|
11
|
+
currency_symbol_location: "left"
|
|
12
|
+
}
|
|
13
|
+
};
|
|
14
|
+
const promiseCache = /* @__PURE__ */ new Map();
|
|
15
|
+
function cacheRequest(cacheKey, request) {
|
|
16
|
+
if (!promiseCache.has(cacheKey)) {
|
|
17
|
+
promiseCache.set(cacheKey, request());
|
|
18
|
+
}
|
|
19
|
+
return promiseCache.get(cacheKey);
|
|
20
|
+
}
|
|
21
|
+
async function getCDNProduct(externalProductId) {
|
|
22
|
+
const { product } = await cacheRequest(`product.${externalProductId}`, () => cdnRequest("get", `/product/${CDN_VERSION}/${externalProductId}.json`));
|
|
23
|
+
return productMapper(product);
|
|
24
|
+
}
|
|
25
|
+
async function getCDNStoreSettings() {
|
|
26
|
+
const storeSettings = await cacheRequest("storeSettings", () => cdnRequest("get", `/${CDN_VERSION}/store_settings.json`).catch(() => {
|
|
27
|
+
return DEFAULT_STORE_SETTINGS;
|
|
28
|
+
}));
|
|
29
|
+
return storeSettings;
|
|
30
|
+
}
|
|
31
|
+
async function getCDNWidgetSettings() {
|
|
32
|
+
const { widget_settings } = await cacheRequest("widgetSettings", () => cdnRequest("get", `/${CDN_VERSION}/widget_settings.json`));
|
|
33
|
+
const widgetSettings = widgetSettingsMapper(widget_settings);
|
|
34
|
+
return widgetSettings;
|
|
35
|
+
}
|
|
36
|
+
async function getCDNProductsAndSettings() {
|
|
37
|
+
const { products, widget_settings, store_settings, meta } = await cacheRequest("productsAndSettings", () => cdnRequest("get", `/product/${CDN_VERSION}/products.json`));
|
|
38
|
+
if ((meta == null ? void 0 : meta.status) === "error") {
|
|
39
|
+
return Promise.reject(meta.message);
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
products: productArrayMapper(products),
|
|
43
|
+
widget_settings: widgetSettingsMapper(widget_settings),
|
|
44
|
+
store_settings: store_settings != null ? store_settings : {}
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
async function getCDNProducts() {
|
|
48
|
+
const { products } = await getCDNProductsAndSettings();
|
|
49
|
+
return products;
|
|
50
|
+
}
|
|
51
|
+
async function getCDNProductAndSettings(externalProductId) {
|
|
52
|
+
const [product, store_settings, widget_settings] = await Promise.all([
|
|
53
|
+
getCDNProduct(externalProductId),
|
|
54
|
+
getCDNStoreSettings(),
|
|
55
|
+
getCDNWidgetSettings()
|
|
56
|
+
]);
|
|
57
|
+
return {
|
|
58
|
+
product,
|
|
59
|
+
store_settings,
|
|
60
|
+
widget_settings,
|
|
61
|
+
storeSettings: store_settings,
|
|
62
|
+
widgetSettings: widget_settings
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
async function getCDNBundleSettings(externalProductId) {
|
|
66
|
+
const { bundle_product } = await getCDNProduct(externalProductId);
|
|
67
|
+
return bundle_product;
|
|
68
|
+
}
|
|
69
|
+
async function resetCDNCache() {
|
|
70
|
+
return Array.from(promiseCache.keys()).forEach((key) => promiseCache.delete(key));
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
export { getCDNBundleSettings, getCDNProduct, getCDNProductAndSettings, getCDNProducts, getCDNProductsAndSettings, getCDNStoreSettings, getCDNWidgetSettings, resetCDNCache };
|
|
74
|
+
//# sourceMappingURL=cdn.js.map
|
|
@@ -0,0 +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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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getCharge(session, id) {
|
|
4
|
+
const { charge } = await rechargeApiRequest("get", `/charges`, { id }, session);
|
|
5
|
+
return charge;
|
|
6
|
+
}
|
|
7
|
+
function listCharges(session, query) {
|
|
8
|
+
return rechargeApiRequest("get", `/charges`, { query }, session);
|
|
9
|
+
}
|
|
10
|
+
async function applyDiscount(session, id, applyRequest) {
|
|
11
|
+
const { charge } = await rechargeApiRequest("post", `/charges/${id}/apply_discount`, {
|
|
12
|
+
data: applyRequest
|
|
13
|
+
}, session);
|
|
14
|
+
return charge;
|
|
15
|
+
}
|
|
16
|
+
async function removeDiscount(session, id) {
|
|
17
|
+
const { charge } = await rechargeApiRequest("post", `/charges/${id}/remove_discount`, {}, session);
|
|
18
|
+
return charge;
|
|
19
|
+
}
|
|
20
|
+
async function skipCharge(session, id) {
|
|
21
|
+
const { charge } = await rechargeApiRequest("post", `/charges/${id}/skip`, {}, session);
|
|
22
|
+
return charge;
|
|
23
|
+
}
|
|
24
|
+
async function unskipCharge(session, id) {
|
|
25
|
+
const { charge } = await rechargeApiRequest("post", `/charges/${id}/unskip`, {}, session);
|
|
26
|
+
return charge;
|
|
27
|
+
}
|
|
28
|
+
async function processCharge(session, id) {
|
|
29
|
+
const { charge } = await rechargeApiRequest("post", `/charges/${id}/process`, {}, session);
|
|
30
|
+
return charge;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { applyDiscount, getCharge, listCharges, processCharge, removeDiscount, skipCharge, unskipCharge };
|
|
34
|
+
//# sourceMappingURL=charge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"charge.js","sources":["../../../src/api/charge.ts"],"sourcesContent":["import { ApplyDiscountRequest, ChargeListParams, ChargeListResponse, ChargeResponse } 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) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('get', `/charges`, { id }, session);\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 * You can provide either discount_id or discount_code. If both parameters are passed, the value for discount_id will take precedence.\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 applyDiscount(session: Session, id: number | string, applyRequest: ApplyDiscountRequest) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/charges/${id}/apply_discount`,\n {\n data: applyRequest,\n },\n session\n );\n return charge;\n}\n\n/**\n * Remove a Discount 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 removeDiscount(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) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('post', `/charges/${id}/skip`, {}, session);\n return charge;\n}\n\n/* Unskip a Charge. */\nexport async function unskipCharge(session: Session, id: number | string) {\n const { charge } = await rechargeApiRequest<ChargeResponse>('post', `/charges/${id}/unskip`, {}, session);\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;AAC7C,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAClF,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,aAAa,CAAC,OAAO,EAAE,EAAE,EAAE,YAAY,EAAE;AAC/D,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,eAAe,CAAC,EAAE;AACvF,IAAI,IAAI,EAAE,YAAY;AACtB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,cAAc,CAAC,OAAO,EAAE,EAAE,EAAE;AAClD,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;AAC9C,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC1F,EAAE,OAAO,MAAM,CAAC;AAChB,CAAC;AACM,eAAe,YAAY,CAAC,OAAO,EAAE,EAAE,EAAE;AAChD,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;AAC5F,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;;;;"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getCustomer(session, options) {
|
|
4
|
+
const id = session.customerId;
|
|
5
|
+
if (!id) {
|
|
6
|
+
throw new Error("Not logged in.");
|
|
7
|
+
}
|
|
8
|
+
const { customer } = await rechargeApiRequest("get", `/customers`, {
|
|
9
|
+
id,
|
|
10
|
+
query: { include: options == null ? void 0 : options.include }
|
|
11
|
+
}, session);
|
|
12
|
+
return customer;
|
|
13
|
+
}
|
|
14
|
+
async function updateCustomer(session, updateRequest) {
|
|
15
|
+
const id = session.customerId;
|
|
16
|
+
if (!id) {
|
|
17
|
+
throw new Error("Not logged in.");
|
|
18
|
+
}
|
|
19
|
+
const { customer } = await rechargeApiRequest("put", `/customers`, { id, data: updateRequest }, session);
|
|
20
|
+
return customer;
|
|
21
|
+
}
|
|
22
|
+
async function getDeliverySchedule(session, query) {
|
|
23
|
+
const id = session.customerId;
|
|
24
|
+
if (!id) {
|
|
25
|
+
throw new Error("Not logged in.");
|
|
26
|
+
}
|
|
27
|
+
const { deliveries } = await rechargeApiRequest("get", `/customers/${id}/delivery_schedule`, { query }, session);
|
|
28
|
+
return deliveries;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { getCustomer, getDeliverySchedule, updateCustomer };
|
|
32
|
+
//# sourceMappingURL=customer.js.map
|
|
@@ -0,0 +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 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"],"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;;;;"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getMembership(session, id) {
|
|
4
|
+
const { membership } = await rechargeApiRequest("get", `/memberships`, { id }, session);
|
|
5
|
+
return membership;
|
|
6
|
+
}
|
|
7
|
+
function listMemberships(session, query) {
|
|
8
|
+
return rechargeApiRequest("get", `/memberships`, { query }, session);
|
|
9
|
+
}
|
|
10
|
+
async function cancelMembership(session, id, cancelRequest) {
|
|
11
|
+
const { membership } = await rechargeApiRequest("post", `/memberships/${id}/cancel`, {
|
|
12
|
+
data: cancelRequest
|
|
13
|
+
}, session);
|
|
14
|
+
return membership;
|
|
15
|
+
}
|
|
16
|
+
async function activateMembership(session, id, activateRequest) {
|
|
17
|
+
const { membership } = await rechargeApiRequest("post", `/memberships/${id}/activate`, {
|
|
18
|
+
data: activateRequest
|
|
19
|
+
}, session);
|
|
20
|
+
return membership;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { activateMembership, cancelMembership, getMembership, listMemberships };
|
|
24
|
+
//# sourceMappingURL=membership.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"membership.js","sources":["../../../src/api/membership.ts"],"sourcesContent":["import {\n ActivateMembershipRequest,\n CancelMembershipRequest,\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"],"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;;;;"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getOnetime(session, id) {
|
|
4
|
+
const { onetime } = await rechargeApiRequest("get", `/onetimes`, {
|
|
5
|
+
id
|
|
6
|
+
}, session);
|
|
7
|
+
return onetime;
|
|
8
|
+
}
|
|
9
|
+
function listOnetimes(session, query) {
|
|
10
|
+
return rechargeApiRequest("get", `/onetimes`, { query }, session);
|
|
11
|
+
}
|
|
12
|
+
async function createOnetime(session, createRequest) {
|
|
13
|
+
const { onetime } = await rechargeApiRequest("post", `/onetimes`, {
|
|
14
|
+
data: createRequest
|
|
15
|
+
}, session);
|
|
16
|
+
return onetime;
|
|
17
|
+
}
|
|
18
|
+
async function updateOnetime(session, id, updateRequest) {
|
|
19
|
+
const { onetime } = await rechargeApiRequest("put", `/onetimes`, {
|
|
20
|
+
id,
|
|
21
|
+
data: updateRequest
|
|
22
|
+
}, session);
|
|
23
|
+
return onetime;
|
|
24
|
+
}
|
|
25
|
+
function deleteOnetime(session, id) {
|
|
26
|
+
return rechargeApiRequest("delete", `/onetime`, {
|
|
27
|
+
id
|
|
28
|
+
}, session);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
export { createOnetime, deleteOnetime, getOnetime, listOnetimes, updateOnetime };
|
|
32
|
+
//# sourceMappingURL=onetime.js.map
|
|
@@ -0,0 +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 `/onetime`,\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,QAAQ,CAAC,EAAE;AAClD,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd;;;;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getOrder(session, id) {
|
|
4
|
+
const { order } = await rechargeApiRequest("get", `/orders`, {
|
|
5
|
+
id
|
|
6
|
+
}, session);
|
|
7
|
+
return order;
|
|
8
|
+
}
|
|
9
|
+
function listOrders(session, query) {
|
|
10
|
+
return rechargeApiRequest("get", `/orders`, { query }, session);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { getOrder, listOrders };
|
|
14
|
+
//# sourceMappingURL=order.js.map
|
|
@@ -0,0 +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;;;;"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getPaymentMethod(session, id) {
|
|
4
|
+
const { payment_method } = await rechargeApiRequest("get", `/payment_methods`, {
|
|
5
|
+
id
|
|
6
|
+
}, session);
|
|
7
|
+
return payment_method;
|
|
8
|
+
}
|
|
9
|
+
async function updatePaymentMethod(session, id, updateRequest) {
|
|
10
|
+
const { payment_method } = await rechargeApiRequest("put", `/payment_methods`, {
|
|
11
|
+
id,
|
|
12
|
+
data: updateRequest
|
|
13
|
+
}, session);
|
|
14
|
+
return payment_method;
|
|
15
|
+
}
|
|
16
|
+
function listPaymentMethods(session, query) {
|
|
17
|
+
return rechargeApiRequest("get", `/payment_methods`, { query }, session);
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
export { getPaymentMethod, listPaymentMethods, updatePaymentMethod };
|
|
21
|
+
//# sourceMappingURL=paymentMethod.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paymentMethod.js","sources":["../../../src/api/paymentMethod.ts"],"sourcesContent":["import {\n PaymentMethod,\n PaymentMethodListParams,\n PaymentMethodsResponse,\n UpdatePaymentMethodRequest,\n} from '../types/paymentMethod';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getPaymentMethod(session: Session, id: string | number): Promise<PaymentMethod> {\n const { payment_method } = await rechargeApiRequest<{ payment_method: PaymentMethod }>(\n 'get',\n `/payment_methods`,\n {\n id,\n },\n session\n );\n return payment_method;\n}\n\nexport async function updatePaymentMethod(\n session: Session,\n id: string | number,\n updateRequest: UpdatePaymentMethodRequest\n): Promise<PaymentMethod> {\n const { payment_method } = await rechargeApiRequest<{ payment_method: PaymentMethod }>(\n 'put',\n `/payment_methods`,\n {\n id,\n data: updateRequest,\n },\n session\n );\n return payment_method;\n}\n\nexport function listPaymentMethods(session: Session, query?: PaymentMethodListParams): Promise<PaymentMethodsResponse> {\n return rechargeApiRequest<PaymentMethodsResponse>('get', `/payment_methods`, { query }, session);\n}\n"],"names":[],"mappings":";;AACO,eAAe,gBAAgB,CAAC,OAAO,EAAE,EAAE,EAAE;AACpD,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE;AACjF,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,cAAc,CAAC;AACxB,CAAC;AACM,eAAe,mBAAmB,CAAC,OAAO,EAAE,EAAE,EAAE,aAAa,EAAE;AACtE,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE;AACjF,IAAI,EAAE;AACN,IAAI,IAAI,EAAE,aAAa;AACvB,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,cAAc,CAAC;AACxB,CAAC;AACM,SAAS,kBAAkB,CAAC,OAAO,EAAE,KAAK,EAAE;AACnD,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AAC3E;;;;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getPlan(session, id) {
|
|
4
|
+
const { plan } = await rechargeApiRequest("get", `/plans`, {
|
|
5
|
+
id
|
|
6
|
+
}, session);
|
|
7
|
+
return plan;
|
|
8
|
+
}
|
|
9
|
+
function listPlans(session, query) {
|
|
10
|
+
return rechargeApiRequest("get", `/plans`, { query }, session);
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export { getPlan, listPlans };
|
|
14
|
+
//# sourceMappingURL=plan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.js","sources":["../../../src/api/plan.ts"],"sourcesContent":["import { Plan, PlanListParams, PlansResponse } from '../types/plan';\nimport { Session } from '../types/session';\nimport { rechargeApiRequest } from '../utils/request';\n\nexport async function getPlan(session: Session, id: string | number): Promise<Plan> {\n const { plan } = await rechargeApiRequest<{ plan: Plan }>(\n 'get',\n `/plans`,\n {\n id,\n },\n session\n );\n return plan;\n}\n\nexport function listPlans(session: Session, query?: PlanListParams): Promise<PlansResponse> {\n return rechargeApiRequest<PlansResponse>('get', `/plans`, { query }, session);\n}\n"],"names":[],"mappings":";;AACO,eAAe,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE;AAC3C,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,kBAAkB,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE;AAC7D,IAAI,EAAE;AACN,GAAG,EAAE,OAAO,CAAC,CAAC;AACd,EAAE,OAAO,IAAI,CAAC;AACd,CAAC;AACM,SAAS,SAAS,CAAC,OAAO,EAAE,KAAK,EAAE;AAC1C,EAAE,OAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,OAAO,CAAC,CAAC;AACjE;;;;"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { rechargeApiRequest } from '../utils/request.js';
|
|
2
|
+
|
|
3
|
+
async function getSubscription(session, id) {
|
|
4
|
+
const { subscription } = await rechargeApiRequest("get", `/subscriptions`, {
|
|
5
|
+
id
|
|
6
|
+
}, session);
|
|
7
|
+
return subscription;
|
|
8
|
+
}
|
|
9
|
+
function listSubscriptions(session, query) {
|
|
10
|
+
return rechargeApiRequest("get", `/subscriptions`, { query }, session);
|
|
11
|
+
}
|
|
12
|
+
async function createSubscription(session, createRequest) {
|
|
13
|
+
const { subscription } = await rechargeApiRequest("post", `/subscriptions`, {
|
|
14
|
+
data: createRequest
|
|
15
|
+
}, session);
|
|
16
|
+
return subscription;
|
|
17
|
+
}
|
|
18
|
+
async function updateSubscription(session, id, updateRequest, query) {
|
|
19
|
+
const { subscription } = await rechargeApiRequest("put", `/subscriptions`, {
|
|
20
|
+
id,
|
|
21
|
+
data: updateRequest,
|
|
22
|
+
query
|
|
23
|
+
}, session);
|
|
24
|
+
return subscription;
|
|
25
|
+
}
|
|
26
|
+
async function updateSubscriptionChargeDate(session, id, date) {
|
|
27
|
+
const { subscription } = await rechargeApiRequest("post", `/subscriptions/${id}/set_next_charge_date`, {
|
|
28
|
+
data: { date }
|
|
29
|
+
}, session);
|
|
30
|
+
return subscription;
|
|
31
|
+
}
|
|
32
|
+
async function updateSubscriptionAddress(session, id, address_id) {
|
|
33
|
+
const { subscription } = await rechargeApiRequest("post", `/subscriptions/${id}/change_address`, {
|
|
34
|
+
data: { address_id }
|
|
35
|
+
}, session);
|
|
36
|
+
return subscription;
|
|
37
|
+
}
|
|
38
|
+
async function cancelSubscription(session, id, cancelRequest) {
|
|
39
|
+
const { subscription } = await rechargeApiRequest("post", `/subscriptions/${id}/cancel`, {
|
|
40
|
+
data: cancelRequest
|
|
41
|
+
}, session);
|
|
42
|
+
return subscription;
|
|
43
|
+
}
|
|
44
|
+
async function activateSubscription(session, id) {
|
|
45
|
+
const { subscription } = await rechargeApiRequest("post", `/subscriptions/${id}/activate`, {}, session);
|
|
46
|
+
return subscription;
|
|
47
|
+
}
|
|
48
|
+
async function skipSubscriptionCharge(session, id, date) {
|
|
49
|
+
const { charge } = await rechargeApiRequest("post", `/subscriptions/${id}/charges/skip`, {
|
|
50
|
+
data: {
|
|
51
|
+
date,
|
|
52
|
+
subscription_id: `${id}`
|
|
53
|
+
}
|
|
54
|
+
}, session);
|
|
55
|
+
return charge;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
export { activateSubscription, cancelSubscription, createSubscription, getSubscription, listSubscriptions, skipSubscriptionCharge, updateSubscription, updateSubscriptionAddress, updateSubscriptionChargeDate };
|
|
59
|
+
//# sourceMappingURL=subscription.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscription.js","sources":["../../../src/api/subscription.ts"],"sourcesContent":["import { rechargeApiRequest } from '../utils/request';\nimport {\n CancelSubscriptionRequest,\n CreateSubscriptionRequest,\n Subscription,\n SubscriptionsResponse,\n SubscriptionListParams,\n UpdateSubscriptionRequest,\n UpdateSubscriptionParams,\n} from '../types/subscription';\nimport { IsoDateString } from '../types/common';\nimport { Session } from '../types/session';\nimport { ChargeResponse } from '../types';\n\nexport async function getSubscription(session: Session, id: string | number): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'get',\n `/subscriptions`,\n {\n id,\n },\n session\n );\n return subscription;\n}\n\nexport function listSubscriptions(session: Session, query?: SubscriptionListParams): Promise<SubscriptionsResponse> {\n return rechargeApiRequest<SubscriptionsResponse>('get', `/subscriptions`, { query }, session);\n}\n\n/**\n * When creating a subscription via API, order_interval_frequency and charge_interval_frequency values do not necessarily\n * need to match the values set in the respective Plans. The product, however, does need to have at least one Plan in order\n * to be added to a subscription.\n */\nexport async function createSubscription(\n session: Session,\n createRequest: CreateSubscriptionRequest\n): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'post',\n `/subscriptions`,\n {\n data: createRequest,\n },\n session\n );\n return subscription;\n}\n\n/**\n * Updating parameters like frequency, charge_interval_frequency, order_interval_frequency, order_interval_unit will cause our algorithm to automatically recalculate the next charge date (next_charge_scheduled_at).\n * WARNING: This update will remove skipped and manually changed charges.\n * If you want to change the next charge date (next_charge_scheduled_at) we recommend you to update these parameters first.\n * When updating order_interval_unit OR order_interval_frequency OR charge_interval_frequency all three parameters are required.\n */\nexport async function updateSubscription(\n session: Session,\n id: string | number,\n updateRequest: UpdateSubscriptionRequest,\n query?: UpdateSubscriptionParams\n): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'put',\n `/subscriptions`,\n {\n id,\n data: updateRequest,\n query,\n },\n session\n );\n return subscription;\n}\n\n/**\n * If there are two active subscriptions with the same address_id, and you update their\n * next_charge_date parameters to match, their charges will get merged into a new charge\n * with a new id\n */\nexport async function updateSubscriptionChargeDate(\n session: Session,\n id: string | number,\n date: IsoDateString\n): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'post',\n `/subscriptions/${id}/set_next_charge_date`,\n {\n data: { date },\n },\n session\n );\n return subscription;\n}\n\nexport async function updateSubscriptionAddress(\n session: Session,\n id: string | number,\n address_id: string | number\n): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'post',\n `/subscriptions/${id}/change_address`,\n {\n data: { address_id },\n },\n session\n );\n return subscription;\n}\n\n/**\n * An involuntary subscription cancelled due to max retries reached will trigger the\n * charge/max_retries_reached webhook. If this leads to the subscription being cancelled,\n * the subscription/cancelled webhook will trigger.\n */\nexport async function cancelSubscription(\n session: Session,\n id: string | number,\n cancelRequest: CancelSubscriptionRequest\n): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'post',\n `/subscriptions/${id}/cancel`,\n {\n data: cancelRequest,\n },\n session\n );\n return subscription;\n}\n\n/**\n * When activating subscription, following attributes will be set to null: cancelled_at, cancellation_reason\n * and cancellation_reason_comments.\n */\nexport async function activateSubscription(session: Session, id: string | number): Promise<Subscription> {\n const { subscription } = await rechargeApiRequest<{ subscription: Subscription }>(\n 'post',\n `/subscriptions/${id}/activate`,\n {},\n session\n );\n return subscription;\n}\n\n/* Skip charge associated with a subscription. */\nexport async function skipSubscriptionCharge(session: Session, id: number | string, date: IsoDateString) {\n const { charge } = await rechargeApiRequest<ChargeResponse>(\n 'post',\n `/subscriptions/${id}/charges/skip`,\n {\n data: {\n date,\n subscription_id: `${id}`,\n },\n },\n session\n );\n return charge;\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const RECHARGE_API_URL = (environment) => environment === "stage" ? "https://api.stage.rechargeapps.com" : "https://api.rechargeapps.com";
|
|
2
|
+
const RECHARGE_ADMIN_URL = (environment) => environment === "stage" ? "https://admin.stage.rechargeapps.com" : "https://admin.rechargeapps.com";
|
|
3
|
+
const RECHARGE_CDN_URL = (environment) => environment === "stage" ? "https://static.stage.rechargecdn.com" : "https://static.rechargecdn.com";
|
|
4
|
+
const SHOPIFY_APP_PROXY_URL = "/tools/recurring";
|
|
5
|
+
|
|
6
|
+
export { RECHARGE_ADMIN_URL, RECHARGE_API_URL, RECHARGE_CDN_URL, SHOPIFY_APP_PROXY_URL };
|
|
7
|
+
//# sourceMappingURL=api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"api.js","sources":["../../../src/constants/api.ts"],"sourcesContent":["export const RECHARGE_API_URL = (environment: 'stage' | 'prod'): string =>\n environment === 'stage' ? 'https://api.stage.rechargeapps.com' : 'https://api.rechargeapps.com';\nexport const RECHARGE_ADMIN_URL = (environment: 'stage' | 'prod'): string =>\n environment === 'stage' ? 'https://admin.stage.rechargeapps.com' : 'https://admin.rechargeapps.com';\nexport const RECHARGE_CDN_URL = (environment: 'stage' | 'prod'): string =>\n environment === 'stage' ? 'https://static.stage.rechargecdn.com' : 'https://static.rechargecdn.com';\nexport const RECHARGE_HOSTED_DOMAIN = '.admin.rechargeapps.com';\nexport const SHOPIFY_EMBEDDED_DOMAIN = '.myshopify.com';\nexport const SHOPIFY_APP_PROXY_URL = '/tools/recurring';\n"],"names":[],"mappings":"AAAY,MAAC,gBAAgB,GAAG,CAAC,WAAW,KAAK,WAAW,KAAK,OAAO,GAAG,oCAAoC,GAAG,+BAA+B;AACrI,MAAC,kBAAkB,GAAG,CAAC,WAAW,KAAK,WAAW,KAAK,OAAO,GAAG,sCAAsC,GAAG,iCAAiC;AAC3I,MAAC,gBAAgB,GAAG,CAAC,WAAW,KAAK,WAAW,KAAK,OAAO,GAAG,sCAAsC,GAAG,iCAAiC;AAGzI,MAAC,qBAAqB,GAAG;;;;"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export { createAddress, deleteAddress, getAddress, listAddresses, mergeAddresses, skipFutureCharge, updateAddress } from './api/address.js';
|
|
2
|
+
export { loginShopifyApi, loginShopifyAppProxy } from './api/auth.js';
|
|
3
|
+
export { applyDiscount, getCharge, listCharges, processCharge, removeDiscount, skipCharge, unskipCharge } from './api/charge.js';
|
|
4
|
+
export { getCDNBundleSettings, getCDNProduct, getCDNProductAndSettings, getCDNProducts, getCDNProductsAndSettings, getCDNStoreSettings, getCDNWidgetSettings, resetCDNCache } from './api/cdn.js';
|
|
5
|
+
export { getBundleId, validateBundle } from './api/bundle.js';
|
|
6
|
+
export { activateMembership, cancelMembership, getMembership, listMemberships } from './api/membership.js';
|
|
7
|
+
export { createOnetime, deleteOnetime, getOnetime, listOnetimes, updateOnetime } from './api/onetime.js';
|
|
8
|
+
export { getOrder, listOrders } from './api/order.js';
|
|
9
|
+
export { getPaymentMethod, listPaymentMethods, updatePaymentMethod } from './api/paymentMethod.js';
|
|
10
|
+
export { getPlan, listPlans } from './api/plan.js';
|
|
11
|
+
export { activateSubscription, cancelSubscription, createSubscription, getSubscription, listSubscriptions, skipSubscriptionCharge, updateSubscription, updateSubscriptionAddress, updateSubscriptionChargeDate } from './api/subscription.js';
|
|
12
|
+
export { getCustomer, getDeliverySchedule, updateCustomer } from './api/customer.js';
|
|
13
|
+
export { api, initRecharge } from './utils/init.js';
|
|
14
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import omit from 'lodash/omit';
|
|
2
|
+
import { parseValues } from './utils.js';
|
|
3
|
+
|
|
4
|
+
var __defProp = Object.defineProperty;
|
|
5
|
+
var __defProps = Object.defineProperties;
|
|
6
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
7
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
9
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
10
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
+
var __spreadValues = (a, b) => {
|
|
12
|
+
for (var prop in b || (b = {}))
|
|
13
|
+
if (__hasOwnProp.call(b, prop))
|
|
14
|
+
__defNormalProp(a, prop, b[prop]);
|
|
15
|
+
if (__getOwnPropSymbols)
|
|
16
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
17
|
+
if (__propIsEnum.call(b, prop))
|
|
18
|
+
__defNormalProp(a, prop, b[prop]);
|
|
19
|
+
}
|
|
20
|
+
return a;
|
|
21
|
+
};
|
|
22
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
23
|
+
function widgetSettingsMapper(widgetSettingsRaw) {
|
|
24
|
+
var _a;
|
|
25
|
+
const parsedSettings = parseValues(widgetSettingsRaw);
|
|
26
|
+
const auto_inject = parsedSettings.auto_inject === void 0 ? true : parsedSettings.auto_inject;
|
|
27
|
+
const valid_pages = (_a = parsedSettings.display_on) != null ? _a : [];
|
|
28
|
+
const is_subscription_first = parsedSettings.first_option === "autodeliver";
|
|
29
|
+
return __spreadProps(__spreadValues({}, omit(parsedSettings, ["display_on", "first_option"])), {
|
|
30
|
+
auto_inject,
|
|
31
|
+
valid_pages,
|
|
32
|
+
is_subscription_first,
|
|
33
|
+
autoInject: auto_inject,
|
|
34
|
+
validPages: valid_pages,
|
|
35
|
+
isSubscriptionFirst: is_subscription_first
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
function productMapper(productRaw) {
|
|
39
|
+
var _a;
|
|
40
|
+
const is_subscription_only = ((_a = productRaw.subscription_options) == null ? void 0 : _a.storefront_purchase_options) === "subscription_only";
|
|
41
|
+
return __spreadProps(__spreadValues({}, productRaw), {
|
|
42
|
+
is_subscription_only,
|
|
43
|
+
isSubscriptionOnly: is_subscription_only
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
function productArrayMapper(productsArray) {
|
|
47
|
+
return productsArray.map((productObjRaw) => {
|
|
48
|
+
const productObj = {};
|
|
49
|
+
Object.entries(productObjRaw).forEach(([key, value]) => {
|
|
50
|
+
productObj[key] = productMapper(value);
|
|
51
|
+
});
|
|
52
|
+
return productObj;
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
export { productArrayMapper, productMapper, widgetSettingsMapper };
|
|
57
|
+
//# sourceMappingURL=cdn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cdn.js","sources":["../../../src/mappers/cdn.ts"],"sourcesContent":["import omit from 'lodash/omit';\nimport {\n CDNBaseWidgetSettings,\n CDNProductRaw,\n CDNWidgetSettings,\n CDNWidgetSettingsRaw,\n CDNProduct,\n CDNProductKeyObject,\n} from '../types';\nimport { parseValues } from './utils';\n\nexport function widgetSettingsMapper(widgetSettingsRaw: CDNWidgetSettingsRaw): CDNWidgetSettings {\n const parsedSettings = parseValues<CDNBaseWidgetSettings>(widgetSettingsRaw);\n\n const auto_inject = parsedSettings.auto_inject === undefined ? true : parsedSettings.auto_inject;\n const valid_pages = parsedSettings.display_on ?? [];\n const is_subscription_first = parsedSettings.first_option === 'autodeliver';\n\n return {\n ...omit(parsedSettings, ['display_on', 'first_option']),\n auto_inject,\n valid_pages,\n is_subscription_first,\n autoInject: auto_inject,\n validPages: valid_pages,\n isSubscriptionFirst: is_subscription_first,\n };\n}\n\nexport function productMapper(productRaw: CDNProductRaw): CDNProduct {\n const is_subscription_only = productRaw.subscription_options?.storefront_purchase_options === 'subscription_only';\n return {\n ...productRaw,\n is_subscription_only,\n isSubscriptionOnly: is_subscription_only,\n };\n}\n\nexport function productArrayMapper(\n productsArray: {\n [key: string]: CDNProductRaw;\n }[]\n): CDNProductKeyObject[] {\n return productsArray.map(productObjRaw => {\n const productObj: CDNProductKeyObject = {};\n Object.entries(productObjRaw).forEach(([key, value]) => {\n productObj[key] = productMapper(value);\n });\n return productObj;\n });\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
var __defProp = Object.defineProperty;
|
|
2
|
+
var __defProps = Object.defineProperties;
|
|
3
|
+
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
4
|
+
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
5
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
6
|
+
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
7
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
8
|
+
var __spreadValues = (a, b) => {
|
|
9
|
+
for (var prop in b || (b = {}))
|
|
10
|
+
if (__hasOwnProp.call(b, prop))
|
|
11
|
+
__defNormalProp(a, prop, b[prop]);
|
|
12
|
+
if (__getOwnPropSymbols)
|
|
13
|
+
for (var prop of __getOwnPropSymbols(b)) {
|
|
14
|
+
if (__propIsEnum.call(b, prop))
|
|
15
|
+
__defNormalProp(a, prop, b[prop]);
|
|
16
|
+
}
|
|
17
|
+
return a;
|
|
18
|
+
};
|
|
19
|
+
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
20
|
+
function parseValue(value) {
|
|
21
|
+
try {
|
|
22
|
+
return JSON.parse(value);
|
|
23
|
+
} catch (e) {
|
|
24
|
+
return value;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function parseValues(json) {
|
|
28
|
+
return Object.entries(json).reduce((memo, [key, value]) => {
|
|
29
|
+
return __spreadProps(__spreadValues({}, memo), { [key]: parseValue(value) });
|
|
30
|
+
}, {});
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
export { parseValues };
|
|
34
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.js","sources":["../../../src/mappers/utils.ts"],"sourcesContent":["/** Trys to parse passed in value. If it doesn't work returns the same passed in value */\nfunction parseValue(value: unknown): any {\n try {\n return JSON.parse(value as string);\n } catch {\n return value;\n }\n}\n\n/** Returns a new object that updates \"string\" values into their correct data type. */\nexport function parseValues<T = any>(json: Record<string, unknown>): T {\n return Object.entries(json).reduce((memo, [key, value]) => {\n return { ...memo, [key]: parseValue(value) };\n }, {}) as T;\n}\n"],"names":[],"mappings":"AAAA,IAAI,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC;AACtC,IAAI,UAAU,GAAG,MAAM,CAAC,gBAAgB,CAAC;AACzC,IAAI,iBAAiB,GAAG,MAAM,CAAC,yBAAyB,CAAC;AACzD,IAAI,mBAAmB,GAAG,MAAM,CAAC,qBAAqB,CAAC;AACvD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AACnD,IAAI,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,oBAAoB,CAAC;AACzD,IAAI,eAAe,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,KAAK,GAAG,IAAI,GAAG,GAAG,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAChK,IAAI,cAAc,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK;AAC/B,EAAE,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;AAChC,IAAI,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AAClC,MAAM,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AACxC,EAAE,IAAI,mBAAmB;AACzB,IAAI,KAAK,IAAI,IAAI,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE;AAC7C,MAAM,IAAI,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC;AACpC,QAAQ,eAAe,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAC1C,KAAK;AACL,EAAE,OAAO,CAAC,CAAC;AACX,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,UAAU,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC;AAClE,SAAS,UAAU,CAAC,KAAK,EAAE;AAC3B,EAAE,IAAI;AACN,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;AAC7B,GAAG,CAAC,OAAO,CAAC,EAAE;AACd,IAAI,OAAO,KAAK,CAAC;AACjB,GAAG;AACH,CAAC;AACM,SAAS,WAAW,CAAC,IAAI,EAAE;AAClC,EAAE,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,KAAK;AAC7D,IAAI,OAAO,aAAa,CAAC,cAAc,CAAC,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;AACjF,GAAG,EAAE,EAAE,CAAC,CAAC;AACT;;;;"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { resetCDNCache } from '../api/cdn.js';
|
|
2
|
+
import { setOptions } from './options.js';
|
|
3
|
+
import { request } from './request.js';
|
|
4
|
+
|
|
5
|
+
const api = {
|
|
6
|
+
get(url, requestOptions) {
|
|
7
|
+
return request("get", url, requestOptions);
|
|
8
|
+
},
|
|
9
|
+
post(url, requestOptions) {
|
|
10
|
+
return request("post", url, requestOptions);
|
|
11
|
+
},
|
|
12
|
+
put(url, requestOptions) {
|
|
13
|
+
return request("put", url, requestOptions);
|
|
14
|
+
},
|
|
15
|
+
delete(url, requestOptions) {
|
|
16
|
+
return request("delete", url, requestOptions);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
function getStoreIdentifier(storeIdentifier) {
|
|
20
|
+
var _a, _b;
|
|
21
|
+
if (storeIdentifier) {
|
|
22
|
+
return storeIdentifier;
|
|
23
|
+
}
|
|
24
|
+
if ((_a = window == null ? void 0 : window.Shopify) == null ? void 0 : _a.shop) {
|
|
25
|
+
return window.Shopify.shop;
|
|
26
|
+
}
|
|
27
|
+
let domain = window == null ? void 0 : window.domain;
|
|
28
|
+
if (!domain) {
|
|
29
|
+
const subdomain = (_b = location == null ? void 0 : location.href.match(/(?:http[s]*:\/\/)*(.*?)\.(?=admin\.rechargeapps\.com)/i)) == null ? void 0 : _b[1].replace(/-sp$/, "");
|
|
30
|
+
if (subdomain) {
|
|
31
|
+
domain = `${subdomain}.myshopify.com`;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
if (domain) {
|
|
35
|
+
return domain;
|
|
36
|
+
}
|
|
37
|
+
throw new Error(`No storeIdentifier was passed into init.`);
|
|
38
|
+
}
|
|
39
|
+
function initRecharge(opt = {}) {
|
|
40
|
+
const hiddenOpts = opt;
|
|
41
|
+
setOptions({
|
|
42
|
+
storeIdentifier: getStoreIdentifier(opt.storeIdentifier),
|
|
43
|
+
storefrontAccessToken: opt.storefrontAccessToken,
|
|
44
|
+
environment: hiddenOpts.environment ? hiddenOpts.environment : "prod"
|
|
45
|
+
});
|
|
46
|
+
resetCDNCache();
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
export { api, initRecharge };
|
|
50
|
+
//# sourceMappingURL=init.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sources":["../../../src/utils/init.ts"],"sourcesContent":["import { resetCDNCache } from '../api/cdn';\nimport { StorefrontOptions, CRUDRequestOptions, GetRequestOptions, InitOptions } from '../types';\nimport { setOptions } from './options';\nimport { request } from './request';\n\nexport const api = {\n get<T>(url: string, requestOptions?: GetRequestOptions): Promise<T> {\n return request<T>('get', url, requestOptions);\n },\n post<T>(url: string, requestOptions?: CRUDRequestOptions): Promise<T> {\n return request<T>('post', url, requestOptions);\n },\n put<T>(url: string, requestOptions?: CRUDRequestOptions): Promise<T> {\n return request<T>('put', url, requestOptions);\n },\n delete<T>(url: string, requestOptions?: CRUDRequestOptions): Promise<T> {\n return request<T>('delete', url, requestOptions);\n },\n};\n\n/**\n * Uses passed in storeIdentifier, but if it's not passed in will try to infer it.\n * Currently it will only infer if we are in the context of a Shopify store. This will not infer headless or hosted yet.\n */\nfunction getStoreIdentifier(storeIdentifier?: string): string {\n if (storeIdentifier) {\n return storeIdentifier;\n }\n\n // Infer's when on Shopify store (non headless)\n if (window?.Shopify?.shop) {\n return window.Shopify.shop;\n }\n\n // Domain exists on hosted themes. If it doesn't for some reason, get the subdomain and create the identifier\n let domain = window?.domain;\n if (!domain) {\n const subdomain = location?.href\n .match(/(?:http[s]*:\\/\\/)*(.*?)\\.(?=admin\\.rechargeapps\\.com)/i)?.[1]\n .replace(/-sp$/, '');\n if (subdomain) {\n domain = `${subdomain}.myshopify.com`;\n }\n }\n\n // Infer's when on Recharge hosted\n if (domain) {\n return domain;\n }\n\n throw new Error(`No storeIdentifier was passed into init.`);\n}\n\nexport function initRecharge(opt: InitOptions = {}) {\n const hiddenOpts = opt as StorefrontOptions;\n setOptions({\n storeIdentifier: getStoreIdentifier(opt.storeIdentifier),\n storefrontAccessToken: opt.storefrontAccessToken,\n environment: hiddenOpts.environment ? hiddenOpts.environment : 'prod',\n });\n\n // When init is called again, reset the cache to make sure we don't have the old cache around\n resetCDNCache();\n}\n"],"names":[],"mappings":";;;;AAGY,MAAC,GAAG,GAAG;AACnB,EAAE,GAAG,CAAC,GAAG,EAAE,cAAc,EAAE;AAC3B,IAAI,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;AAC/C,GAAG;AACH,EAAE,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE;AAC5B,IAAI,OAAO,OAAO,CAAC,MAAM,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;AAChD,GAAG;AACH,EAAE,GAAG,CAAC,GAAG,EAAE,cAAc,EAAE;AAC3B,IAAI,OAAO,OAAO,CAAC,KAAK,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;AAC/C,GAAG;AACH,EAAE,MAAM,CAAC,GAAG,EAAE,cAAc,EAAE;AAC9B,IAAI,OAAO,OAAO,CAAC,QAAQ,EAAE,GAAG,EAAE,cAAc,CAAC,CAAC;AAClD,GAAG;AACH,EAAE;AACF,SAAS,kBAAkB,CAAC,eAAe,EAAE;AAC7C,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACb,EAAE,IAAI,eAAe,EAAE;AACvB,IAAI,OAAO,eAAe,CAAC;AAC3B,GAAG;AACH,EAAE,IAAI,CAAC,EAAE,GAAG,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,OAAO,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE;AAClF,IAAI,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC;AAC/B,GAAG;AACH,EAAE,IAAI,MAAM,GAAG,MAAM,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC;AACvD,EAAE,IAAI,CAAC,MAAM,EAAE;AACf,IAAI,MAAM,SAAS,GAAG,CAAC,EAAE,GAAG,QAAQ,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,wDAAwD,CAAC,KAAK,IAAI,GAAG,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACpL,IAAI,IAAI,SAAS,EAAE;AACnB,MAAM,MAAM,GAAG,CAAC,EAAE,SAAS,CAAC,cAAc,CAAC,CAAC;AAC5C,KAAK;AACL,GAAG;AACH,EAAE,IAAI,MAAM,EAAE;AACd,IAAI,OAAO,MAAM,CAAC;AAClB,GAAG;AACH,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,wCAAwC,CAAC,CAAC,CAAC;AAC9D,CAAC;AACM,SAAS,YAAY,CAAC,GAAG,GAAG,EAAE,EAAE;AACvC,EAAE,MAAM,UAAU,GAAG,GAAG,CAAC;AACzB,EAAE,UAAU,CAAC;AACb,IAAI,eAAe,EAAE,kBAAkB,CAAC,GAAG,CAAC,eAAe,CAAC;AAC5D,IAAI,qBAAqB,EAAE,GAAG,CAAC,qBAAqB;AACpD,IAAI,WAAW,EAAE,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,GAAG,MAAM;AACzE,GAAG,CAAC,CAAC;AACL,EAAE,aAAa,EAAE,CAAC;AAClB;;;;"}
|