@polar-sh/sdk 1.0.0-alpha.20 → 1.0.0-alpha.21
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/2026-04/index.cjs +4 -4
- package/dist/2026-04/index.cjs.map +1 -1
- package/dist/2026-04/index.d.cts +2 -2
- package/dist/2026-04/index.d.mts +2 -2
- package/dist/2026-04/index.mjs +4 -4
- package/dist/2026-04/index.mjs.map +1 -1
- package/dist/2026-04/services/benefit_grants.cjs +1 -1
- package/dist/2026-04/services/benefit_grants.d.cts +1 -1
- package/dist/2026-04/services/benefit_grants.d.mts +1 -1
- package/dist/2026-04/services/benefit_grants.mjs +1 -1
- package/dist/2026-04/services/benefits.cjs +1 -1
- package/dist/2026-04/services/benefits.d.cts +1 -1
- package/dist/2026-04/services/benefits.d.mts +1 -1
- package/dist/2026-04/services/benefits.mjs +1 -1
- package/dist/2026-04/services/checkout_links.cjs +1 -1
- package/dist/2026-04/services/checkout_links.d.cts +1 -1
- package/dist/2026-04/services/checkout_links.d.mts +1 -1
- package/dist/2026-04/services/checkout_links.mjs +1 -1
- package/dist/2026-04/services/checkouts.cjs +1 -1
- package/dist/2026-04/services/checkouts.d.cts +1 -1
- package/dist/2026-04/services/checkouts.d.mts +1 -1
- package/dist/2026-04/services/checkouts.mjs +1 -1
- package/dist/2026-04/services/custom_fields.cjs +1 -1
- package/dist/2026-04/services/custom_fields.d.cts +1 -1
- package/dist/2026-04/services/custom_fields.d.mts +1 -1
- package/dist/2026-04/services/custom_fields.mjs +1 -1
- package/dist/2026-04/services/customer_meters.cjs +1 -1
- package/dist/2026-04/services/customer_meters.d.cts +1 -1
- package/dist/2026-04/services/customer_meters.d.mts +1 -1
- package/dist/2026-04/services/customer_meters.mjs +1 -1
- package/dist/2026-04/services/customer_portal/benefit_grants.cjs +1 -1
- package/dist/2026-04/services/customer_portal/benefit_grants.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/benefit_grants.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/benefit_grants.mjs +1 -1
- package/dist/2026-04/services/customer_portal/customer_meters.cjs +1 -1
- package/dist/2026-04/services/customer_portal/customer_meters.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/customer_meters.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/customer_meters.mjs +1 -1
- package/dist/2026-04/services/customer_portal/customer_session.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/customer_session.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/customers.cjs +1 -1
- package/dist/2026-04/services/customer_portal/customers.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/customers.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/customers.mjs +1 -1
- package/dist/2026-04/services/customer_portal/downloadables.cjs +1 -1
- package/dist/2026-04/services/customer_portal/downloadables.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/downloadables.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/downloadables.mjs +1 -1
- package/dist/2026-04/services/customer_portal/index.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/index.d.cts.map +1 -1
- package/dist/2026-04/services/customer_portal/index.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/index.d.mts.map +1 -1
- package/dist/2026-04/services/customer_portal/license_keys.cjs +1 -1
- package/dist/2026-04/services/customer_portal/license_keys.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/license_keys.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/license_keys.mjs +1 -1
- package/dist/2026-04/services/customer_portal/members.cjs +1 -1
- package/dist/2026-04/services/customer_portal/members.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/members.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/members.mjs +1 -1
- package/dist/2026-04/services/customer_portal/orders.cjs +1 -1
- package/dist/2026-04/services/customer_portal/orders.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/orders.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/orders.mjs +1 -1
- package/dist/2026-04/services/customer_portal/organizations.cjs +1 -1
- package/dist/2026-04/services/customer_portal/organizations.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/organizations.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/organizations.mjs +1 -1
- package/dist/2026-04/services/customer_portal/seats.cjs +5 -5
- package/dist/2026-04/services/customer_portal/seats.cjs.map +1 -1
- package/dist/2026-04/services/customer_portal/seats.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/seats.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/seats.mjs +5 -5
- package/dist/2026-04/services/customer_portal/seats.mjs.map +1 -1
- package/dist/2026-04/services/customer_portal/subscriptions.cjs +3 -3
- package/dist/2026-04/services/customer_portal/subscriptions.cjs.map +1 -1
- package/dist/2026-04/services/customer_portal/subscriptions.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/subscriptions.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/subscriptions.mjs +3 -3
- package/dist/2026-04/services/customer_portal/subscriptions.mjs.map +1 -1
- package/dist/2026-04/services/customer_portal/wallets.cjs +1 -1
- package/dist/2026-04/services/customer_portal/wallets.d.cts +1 -1
- package/dist/2026-04/services/customer_portal/wallets.d.mts +1 -1
- package/dist/2026-04/services/customer_portal/wallets.mjs +1 -1
- package/dist/2026-04/services/customer_seats.cjs +5 -5
- package/dist/2026-04/services/customer_seats.cjs.map +1 -1
- package/dist/2026-04/services/customer_seats.d.cts +1 -1
- package/dist/2026-04/services/customer_seats.d.mts +1 -1
- package/dist/2026-04/services/customer_seats.mjs +5 -5
- package/dist/2026-04/services/customer_seats.mjs.map +1 -1
- package/dist/2026-04/services/customer_sessions.cjs +1 -1
- package/dist/2026-04/services/customer_sessions.d.cts +1 -1
- package/dist/2026-04/services/customer_sessions.d.mts +1 -1
- package/dist/2026-04/services/customer_sessions.mjs +1 -1
- package/dist/2026-04/services/customers/index.cjs +1 -1
- package/dist/2026-04/services/customers/index.d.cts +1 -1
- package/dist/2026-04/services/customers/index.d.mts +1 -1
- package/dist/2026-04/services/customers/index.mjs +1 -1
- package/dist/2026-04/services/customers/members.cjs +1 -1
- package/dist/2026-04/services/customers/members.d.cts +1 -1
- package/dist/2026-04/services/customers/members.d.mts +1 -1
- package/dist/2026-04/services/customers/members.mjs +1 -1
- package/dist/2026-04/services/discounts.cjs +1 -1
- package/dist/2026-04/services/discounts.d.cts +1 -1
- package/dist/2026-04/services/discounts.d.mts +1 -1
- package/dist/2026-04/services/discounts.mjs +1 -1
- package/dist/2026-04/services/disputes.cjs +1 -1
- package/dist/2026-04/services/disputes.d.cts +1 -1
- package/dist/2026-04/services/disputes.d.mts +1 -1
- package/dist/2026-04/services/disputes.mjs +1 -1
- package/dist/2026-04/services/event_types.cjs +1 -1
- package/dist/2026-04/services/event_types.d.cts +1 -1
- package/dist/2026-04/services/event_types.d.mts +1 -1
- package/dist/2026-04/services/event_types.mjs +1 -1
- package/dist/2026-04/services/events.cjs +1 -1
- package/dist/2026-04/services/events.d.cts +1 -1
- package/dist/2026-04/services/events.d.mts +1 -1
- package/dist/2026-04/services/events.mjs +1 -1
- package/dist/2026-04/services/files.cjs +1 -1
- package/dist/2026-04/services/files.d.cts +1 -1
- package/dist/2026-04/services/files.d.mts +1 -1
- package/dist/2026-04/services/files.mjs +1 -1
- package/dist/2026-04/services/license_keys.cjs +1 -1
- package/dist/2026-04/services/license_keys.d.cts +1 -1
- package/dist/2026-04/services/license_keys.d.mts +1 -1
- package/dist/2026-04/services/license_keys.mjs +1 -1
- package/dist/2026-04/services/meters.cjs +1 -1
- package/dist/2026-04/services/meters.d.cts +1 -1
- package/dist/2026-04/services/meters.d.mts +1 -1
- package/dist/2026-04/services/meters.mjs +1 -1
- package/dist/2026-04/services/metrics.cjs +1 -1
- package/dist/2026-04/services/metrics.d.cts +1 -1
- package/dist/2026-04/services/metrics.d.mts +1 -1
- package/dist/2026-04/services/metrics.mjs +1 -1
- package/dist/2026-04/services/oauth2/clients/index.d.cts +1 -1
- package/dist/2026-04/services/oauth2/clients/index.d.mts +1 -1
- package/dist/2026-04/services/oauth2/clients/oauth2.cjs +1 -1
- package/dist/2026-04/services/oauth2/clients/oauth2.d.cts +1 -1
- package/dist/2026-04/services/oauth2/clients/oauth2.d.mts +1 -1
- package/dist/2026-04/services/oauth2/clients/oauth2.mjs +1 -1
- package/dist/2026-04/services/oauth2/index.d.cts +1 -1
- package/dist/2026-04/services/oauth2/index.d.mts +1 -1
- package/dist/2026-04/services/orders.cjs +1 -1
- package/dist/2026-04/services/orders.d.cts +1 -1
- package/dist/2026-04/services/orders.d.mts +1 -1
- package/dist/2026-04/services/orders.mjs +1 -1
- package/dist/2026-04/services/organizations.cjs +1 -1
- package/dist/2026-04/services/organizations.d.cts +1 -1
- package/dist/2026-04/services/organizations.d.mts +1 -1
- package/dist/2026-04/services/organizations.mjs +1 -1
- package/dist/2026-04/services/payments.cjs +1 -1
- package/dist/2026-04/services/payments.d.cts +1 -1
- package/dist/2026-04/services/payments.d.mts +1 -1
- package/dist/2026-04/services/payments.mjs +1 -1
- package/dist/2026-04/services/products.cjs +1 -1
- package/dist/2026-04/services/products.d.cts +1 -1
- package/dist/2026-04/services/products.d.mts +1 -1
- package/dist/2026-04/services/products.mjs +1 -1
- package/dist/2026-04/services/refunds.cjs +1 -1
- package/dist/2026-04/services/refunds.d.cts +1 -1
- package/dist/2026-04/services/refunds.d.mts +1 -1
- package/dist/2026-04/services/refunds.mjs +1 -1
- package/dist/2026-04/services/subscriptions.cjs +3 -3
- package/dist/2026-04/services/subscriptions.cjs.map +1 -1
- package/dist/2026-04/services/subscriptions.d.cts +1 -1
- package/dist/2026-04/services/subscriptions.d.cts.map +1 -1
- package/dist/2026-04/services/subscriptions.d.mts +1 -1
- package/dist/2026-04/services/subscriptions.d.mts.map +1 -1
- package/dist/2026-04/services/subscriptions.mjs +3 -3
- package/dist/2026-04/services/subscriptions.mjs.map +1 -1
- package/dist/2026-04/services/webhooks.cjs +1 -1
- package/dist/2026-04/services/webhooks.d.cts +1 -1
- package/dist/2026-04/services/webhooks.d.mts +1 -1
- package/dist/2026-04/services/webhooks.mjs +1 -1
- package/dist/2026-10/index.cjs +4 -4
- package/dist/2026-10/index.cjs.map +1 -1
- package/dist/2026-10/index.d.cts +2 -2
- package/dist/2026-10/index.d.mts +2 -2
- package/dist/2026-10/index.mjs +4 -4
- package/dist/2026-10/index.mjs.map +1 -1
- package/dist/2026-10/services/benefit_grants.cjs +1 -1
- package/dist/2026-10/services/benefit_grants.d.cts +1 -1
- package/dist/2026-10/services/benefit_grants.d.mts +1 -1
- package/dist/2026-10/services/benefit_grants.mjs +1 -1
- package/dist/2026-10/services/benefits.cjs +1 -1
- package/dist/2026-10/services/benefits.d.cts +1 -1
- package/dist/2026-10/services/benefits.d.mts +1 -1
- package/dist/2026-10/services/benefits.mjs +1 -1
- package/dist/2026-10/services/checkout_links.cjs +1 -1
- package/dist/2026-10/services/checkout_links.d.cts +1 -1
- package/dist/2026-10/services/checkout_links.d.mts +1 -1
- package/dist/2026-10/services/checkout_links.mjs +1 -1
- package/dist/2026-10/services/checkouts.cjs +1 -1
- package/dist/2026-10/services/checkouts.d.cts +1 -1
- package/dist/2026-10/services/checkouts.d.mts +1 -1
- package/dist/2026-10/services/checkouts.mjs +1 -1
- package/dist/2026-10/services/custom_fields.cjs +1 -1
- package/dist/2026-10/services/custom_fields.d.cts +1 -1
- package/dist/2026-10/services/custom_fields.d.mts +1 -1
- package/dist/2026-10/services/custom_fields.mjs +1 -1
- package/dist/2026-10/services/customer_meters.cjs +1 -1
- package/dist/2026-10/services/customer_meters.d.cts +1 -1
- package/dist/2026-10/services/customer_meters.d.mts +1 -1
- package/dist/2026-10/services/customer_meters.mjs +1 -1
- package/dist/2026-10/services/customer_portal/benefit_grants.cjs +1 -1
- package/dist/2026-10/services/customer_portal/benefit_grants.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/benefit_grants.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/benefit_grants.mjs +1 -1
- package/dist/2026-10/services/customer_portal/customer_meters.cjs +1 -1
- package/dist/2026-10/services/customer_portal/customer_meters.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/customer_meters.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/customer_meters.mjs +1 -1
- package/dist/2026-10/services/customer_portal/customer_session.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/customer_session.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/customers.cjs +1 -1
- package/dist/2026-10/services/customer_portal/customers.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/customers.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/customers.mjs +1 -1
- package/dist/2026-10/services/customer_portal/downloadables.cjs +1 -1
- package/dist/2026-10/services/customer_portal/downloadables.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/downloadables.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/downloadables.mjs +1 -1
- package/dist/2026-10/services/customer_portal/index.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/index.d.cts.map +1 -1
- package/dist/2026-10/services/customer_portal/index.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/index.d.mts.map +1 -1
- package/dist/2026-10/services/customer_portal/license_keys.cjs +1 -1
- package/dist/2026-10/services/customer_portal/license_keys.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/license_keys.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/license_keys.mjs +1 -1
- package/dist/2026-10/services/customer_portal/members.cjs +1 -1
- package/dist/2026-10/services/customer_portal/members.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/members.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/members.mjs +1 -1
- package/dist/2026-10/services/customer_portal/orders.cjs +1 -1
- package/dist/2026-10/services/customer_portal/orders.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/orders.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/orders.mjs +1 -1
- package/dist/2026-10/services/customer_portal/organizations.cjs +1 -1
- package/dist/2026-10/services/customer_portal/organizations.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/organizations.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/organizations.mjs +1 -1
- package/dist/2026-10/services/customer_portal/seats.cjs +5 -5
- package/dist/2026-10/services/customer_portal/seats.cjs.map +1 -1
- package/dist/2026-10/services/customer_portal/seats.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/seats.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/seats.mjs +5 -5
- package/dist/2026-10/services/customer_portal/seats.mjs.map +1 -1
- package/dist/2026-10/services/customer_portal/subscriptions.cjs +3 -3
- package/dist/2026-10/services/customer_portal/subscriptions.cjs.map +1 -1
- package/dist/2026-10/services/customer_portal/subscriptions.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/subscriptions.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/subscriptions.mjs +3 -3
- package/dist/2026-10/services/customer_portal/subscriptions.mjs.map +1 -1
- package/dist/2026-10/services/customer_portal/wallets.cjs +1 -1
- package/dist/2026-10/services/customer_portal/wallets.d.cts +1 -1
- package/dist/2026-10/services/customer_portal/wallets.d.mts +1 -1
- package/dist/2026-10/services/customer_portal/wallets.mjs +1 -1
- package/dist/2026-10/services/customer_seats.cjs +5 -5
- package/dist/2026-10/services/customer_seats.cjs.map +1 -1
- package/dist/2026-10/services/customer_seats.d.cts +1 -1
- package/dist/2026-10/services/customer_seats.d.mts +1 -1
- package/dist/2026-10/services/customer_seats.mjs +5 -5
- package/dist/2026-10/services/customer_seats.mjs.map +1 -1
- package/dist/2026-10/services/customer_sessions.cjs +1 -1
- package/dist/2026-10/services/customer_sessions.d.cts +1 -1
- package/dist/2026-10/services/customer_sessions.d.mts +1 -1
- package/dist/2026-10/services/customer_sessions.mjs +1 -1
- package/dist/2026-10/services/customers/index.cjs +1 -1
- package/dist/2026-10/services/customers/index.d.cts +1 -1
- package/dist/2026-10/services/customers/index.d.mts +1 -1
- package/dist/2026-10/services/customers/index.mjs +1 -1
- package/dist/2026-10/services/customers/members.cjs +1 -1
- package/dist/2026-10/services/customers/members.d.cts +1 -1
- package/dist/2026-10/services/customers/members.d.mts +1 -1
- package/dist/2026-10/services/customers/members.mjs +1 -1
- package/dist/2026-10/services/discounts.cjs +1 -1
- package/dist/2026-10/services/discounts.d.cts +1 -1
- package/dist/2026-10/services/discounts.d.mts +1 -1
- package/dist/2026-10/services/discounts.mjs +1 -1
- package/dist/2026-10/services/disputes.cjs +1 -1
- package/dist/2026-10/services/disputes.d.cts +1 -1
- package/dist/2026-10/services/disputes.d.mts +1 -1
- package/dist/2026-10/services/disputes.mjs +1 -1
- package/dist/2026-10/services/event_types.cjs +1 -1
- package/dist/2026-10/services/event_types.d.cts +1 -1
- package/dist/2026-10/services/event_types.d.mts +1 -1
- package/dist/2026-10/services/event_types.mjs +1 -1
- package/dist/2026-10/services/events.cjs +1 -1
- package/dist/2026-10/services/events.d.cts +1 -1
- package/dist/2026-10/services/events.d.mts +1 -1
- package/dist/2026-10/services/events.mjs +1 -1
- package/dist/2026-10/services/files.cjs +1 -1
- package/dist/2026-10/services/files.d.cts +1 -1
- package/dist/2026-10/services/files.d.mts +1 -1
- package/dist/2026-10/services/files.mjs +1 -1
- package/dist/2026-10/services/license_keys.cjs +1 -1
- package/dist/2026-10/services/license_keys.d.cts +1 -1
- package/dist/2026-10/services/license_keys.d.mts +1 -1
- package/dist/2026-10/services/license_keys.mjs +1 -1
- package/dist/2026-10/services/meters.cjs +1 -1
- package/dist/2026-10/services/meters.d.cts +1 -1
- package/dist/2026-10/services/meters.d.mts +1 -1
- package/dist/2026-10/services/meters.mjs +1 -1
- package/dist/2026-10/services/metrics.cjs +1 -1
- package/dist/2026-10/services/metrics.d.cts +1 -1
- package/dist/2026-10/services/metrics.d.mts +1 -1
- package/dist/2026-10/services/metrics.mjs +1 -1
- package/dist/2026-10/services/oauth2/clients/index.d.cts +1 -1
- package/dist/2026-10/services/oauth2/clients/index.d.mts +1 -1
- package/dist/2026-10/services/oauth2/clients/oauth2.cjs +1 -1
- package/dist/2026-10/services/oauth2/clients/oauth2.d.cts +1 -1
- package/dist/2026-10/services/oauth2/clients/oauth2.d.mts +1 -1
- package/dist/2026-10/services/oauth2/clients/oauth2.mjs +1 -1
- package/dist/2026-10/services/oauth2/index.d.cts +1 -1
- package/dist/2026-10/services/oauth2/index.d.mts +1 -1
- package/dist/2026-10/services/orders.cjs +1 -1
- package/dist/2026-10/services/orders.d.cts +1 -1
- package/dist/2026-10/services/orders.d.mts +1 -1
- package/dist/2026-10/services/orders.mjs +1 -1
- package/dist/2026-10/services/organizations.cjs +1 -1
- package/dist/2026-10/services/organizations.d.cts +1 -1
- package/dist/2026-10/services/organizations.d.mts +1 -1
- package/dist/2026-10/services/organizations.mjs +1 -1
- package/dist/2026-10/services/payments.cjs +1 -1
- package/dist/2026-10/services/payments.d.cts +1 -1
- package/dist/2026-10/services/payments.d.mts +1 -1
- package/dist/2026-10/services/payments.mjs +1 -1
- package/dist/2026-10/services/products.cjs +1 -1
- package/dist/2026-10/services/products.d.cts +1 -1
- package/dist/2026-10/services/products.d.mts +1 -1
- package/dist/2026-10/services/products.mjs +1 -1
- package/dist/2026-10/services/refunds.cjs +1 -1
- package/dist/2026-10/services/refunds.d.cts +1 -1
- package/dist/2026-10/services/refunds.d.mts +1 -1
- package/dist/2026-10/services/refunds.mjs +1 -1
- package/dist/2026-10/services/subscriptions.cjs +3 -3
- package/dist/2026-10/services/subscriptions.cjs.map +1 -1
- package/dist/2026-10/services/subscriptions.d.cts +1 -1
- package/dist/2026-10/services/subscriptions.d.cts.map +1 -1
- package/dist/2026-10/services/subscriptions.d.mts +1 -1
- package/dist/2026-10/services/subscriptions.d.mts.map +1 -1
- package/dist/2026-10/services/subscriptions.mjs +3 -3
- package/dist/2026-10/services/subscriptions.mjs.map +1 -1
- package/dist/2026-10/services/webhooks.cjs +1 -1
- package/dist/2026-10/services/webhooks.d.cts +1 -1
- package/dist/2026-10/services/webhooks.d.mts +1 -1
- package/dist/2026-10/services/webhooks.mjs +1 -1
- package/dist/{base-BX1i41Uz.mjs → base-CpxoQZCZ.mjs} +5 -1
- package/dist/{base-BX1i41Uz.mjs.map → base-CpxoQZCZ.mjs.map} +1 -1
- package/dist/{base-LHtsGbZ7.cjs → base-D83CMR-Q.cjs} +5 -1
- package/dist/{base-LHtsGbZ7.cjs.map → base-D83CMR-Q.cjs.map} +1 -1
- package/dist/{errors-lnKTvpMw.cjs → errors-BfEghQ77.cjs} +40 -20
- package/dist/errors-BfEghQ77.cjs.map +1 -0
- package/dist/{errors-B0dJ1d8y.cjs → errors-CPJ329AT.cjs} +40 -20
- package/dist/errors-CPJ329AT.cjs.map +1 -0
- package/dist/{errors-CfRMvcYh.mjs → errors-D1yM2ZQm.mjs} +29 -15
- package/dist/errors-D1yM2ZQm.mjs.map +1 -0
- package/dist/{errors-CtjU-gr2.mjs → errors-hhbDe5ap.mjs} +29 -15
- package/dist/errors-hhbDe5ap.mjs.map +1 -0
- package/dist/{index-DVJDoRIH.d.cts → index-BDWUg8uj.d.cts} +190 -19
- package/dist/index-BDWUg8uj.d.cts.map +1 -0
- package/dist/{index-BQ53k3_P.d.cts → index-BamOUZl1.d.cts} +190 -19
- package/dist/index-BamOUZl1.d.cts.map +1 -0
- package/dist/{index-Yn92Yswm.d.mts → index-BkTZ8a-R.d.mts} +190 -19
- package/dist/index-BkTZ8a-R.d.mts.map +1 -0
- package/dist/{index-CTfoWhh0.d.mts → index-JEL0D7T4.d.mts} +190 -19
- package/dist/index-JEL0D7T4.d.mts.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/{models-Os3Vmw3y.d.cts → models-D3N1jo2G.d.cts} +79 -15
- package/dist/models-D3N1jo2G.d.cts.map +1 -0
- package/dist/{models-Os3Vmw3y.d.mts → models-D3N1jo2G.d.mts} +79 -15
- package/dist/models-D3N1jo2G.d.mts.map +1 -0
- package/dist/{models-Buz84sI2.d.cts → models-f2_talp6.d.cts} +79 -15
- package/dist/models-f2_talp6.d.cts.map +1 -0
- package/dist/{models-Buz84sI2.d.mts → models-f2_talp6.d.mts} +79 -15
- package/dist/models-f2_talp6.d.mts.map +1 -0
- package/dist/{webhooks-CnlzepVp.cjs → webhooks-CJ5fgGEO.cjs} +2 -2
- package/dist/{webhooks-CnlzepVp.cjs.map → webhooks-CJ5fgGEO.cjs.map} +1 -1
- package/dist/{webhooks-ClB7QSjG.mjs → webhooks-lgh0ADeT.mjs} +2 -2
- package/dist/{webhooks-ClB7QSjG.mjs.map → webhooks-lgh0ADeT.mjs.map} +1 -1
- package/package.json +1 -1
- package/dist/errors-B0dJ1d8y.cjs.map +0 -1
- package/dist/errors-CfRMvcYh.mjs.map +0 -1
- package/dist/errors-CtjU-gr2.mjs.map +0 -1
- package/dist/errors-lnKTvpMw.cjs.map +0 -1
- package/dist/index-BQ53k3_P.d.cts.map +0 -1
- package/dist/index-CTfoWhh0.d.mts.map +0 -1
- package/dist/index-DVJDoRIH.d.cts.map +0 -1
- package/dist/index-Yn92Yswm.d.mts.map +0 -1
- package/dist/models-Buz84sI2.d.cts.map +0 -1
- package/dist/models-Buz84sI2.d.mts.map +0 -1
- package/dist/models-Os3Vmw3y.d.cts.map +0 -1
- package/dist/models-Os3Vmw3y.d.mts.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.mjs";
|
|
2
|
-
import { Vr as Payment, Xr as PaymentSortProperty, Zr as PaymentStatus, qn as ListResourcePayment } from "../../models-
|
|
2
|
+
import { Vr as Payment, Xr as PaymentSortProperty, Zr as PaymentStatus, qn as ListResourcePayment } from "../../models-f2_talp6.mjs";
|
|
3
3
|
//#region src/2026-10/services/payments.d.ts
|
|
4
4
|
declare const listPayments: (client: ClientBase) => (query?: {
|
|
5
5
|
organization_id?: string | string[] | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Tt as ResourceNotFound,
|
|
1
|
+
import { Tt as ResourceNotFound, lt as HTTPValidationError } from "../../errors-hhbDe5ap.mjs";
|
|
2
2
|
//#region src/2026-10/services/payments.ts
|
|
3
3
|
const listPayments = (client) => {
|
|
4
4
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_errors = require("../../errors-
|
|
2
|
+
const require_errors = require("../../errors-BfEghQ77.cjs");
|
|
3
3
|
//#region src/2026-10/services/products.ts
|
|
4
4
|
const listProducts = (client) => {
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.cjs";
|
|
2
|
-
import { $r as Product, Yn as ListResourceProduct, ai as ProductVisibility, ei as ProductBenefitsUpdate, ii as ProductUpdate, ni as ProductCreate, ri as ProductSortProperty, sr as MetadataQuery } from "../../models-
|
|
2
|
+
import { $r as Product, Yn as ListResourceProduct, ai as ProductVisibility, ei as ProductBenefitsUpdate, ii as ProductUpdate, ni as ProductCreate, ri as ProductSortProperty, sr as MetadataQuery } from "../../models-f2_talp6.cjs";
|
|
3
3
|
//#region src/2026-10/services/products.d.ts
|
|
4
4
|
declare const listProducts: (client: ClientBase) => (query?: {
|
|
5
5
|
id?: string | string[] | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.mjs";
|
|
2
|
-
import { $r as Product, Yn as ListResourceProduct, ai as ProductVisibility, ei as ProductBenefitsUpdate, ii as ProductUpdate, ni as ProductCreate, ri as ProductSortProperty, sr as MetadataQuery } from "../../models-
|
|
2
|
+
import { $r as Product, Yn as ListResourceProduct, ai as ProductVisibility, ei as ProductBenefitsUpdate, ii as ProductUpdate, ni as ProductCreate, ri as ProductSortProperty, sr as MetadataQuery } from "../../models-f2_talp6.mjs";
|
|
3
3
|
//#region src/2026-10/services/products.d.ts
|
|
4
4
|
declare const listProducts: (client: ClientBase) => (query?: {
|
|
5
5
|
id?: string | string[] | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Tt as ResourceNotFound,
|
|
1
|
+
import { Tt as ResourceNotFound, ft as NotPermitted, lt as HTTPValidationError } from "../../errors-hhbDe5ap.mjs";
|
|
2
2
|
//#region src/2026-10/services/products.ts
|
|
3
3
|
const listProducts = (client) => {
|
|
4
4
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_errors = require("../../errors-
|
|
2
|
+
const require_errors = require("../../errors-BfEghQ77.cjs");
|
|
3
3
|
//#region src/2026-10/services/refunds.ts
|
|
4
4
|
const listRefunds = (client) => {
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.cjs";
|
|
2
|
-
import { Xn as ListResourceRefund, ci as RefundSortProperty, oi as Refund, si as RefundCreate } from "../../models-
|
|
2
|
+
import { Xn as ListResourceRefund, ci as RefundSortProperty, oi as Refund, si as RefundCreate } from "../../models-f2_talp6.cjs";
|
|
3
3
|
//#region src/2026-10/services/refunds.d.ts
|
|
4
4
|
declare const listRefunds: (client: ClientBase) => (query?: {
|
|
5
5
|
id?: string | string[] | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.mjs";
|
|
2
|
-
import { Xn as ListResourceRefund, ci as RefundSortProperty, oi as Refund, si as RefundCreate } from "../../models-
|
|
2
|
+
import { Xn as ListResourceRefund, ci as RefundSortProperty, oi as Refund, si as RefundCreate } from "../../models-f2_talp6.mjs";
|
|
3
3
|
//#region src/2026-10/services/refunds.d.ts
|
|
4
4
|
declare const listRefunds: (client: ClientBase) => (query?: {
|
|
5
5
|
id?: string | string[] | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { lt as HTTPValidationError, wt as RefundedAlready } from "../../errors-hhbDe5ap.mjs";
|
|
2
2
|
//#region src/2026-10/services/refunds.ts
|
|
3
3
|
const listRefunds = (client) => {
|
|
4
4
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_errors = require("../../errors-
|
|
2
|
+
const require_errors = require("../../errors-BfEghQ77.cjs");
|
|
3
3
|
//#region src/2026-10/services/subscriptions.ts
|
|
4
4
|
const listSubscriptions = (client) => {
|
|
5
5
|
/**
|
|
@@ -198,7 +198,7 @@ const updateSubscriptions = (client) => {
|
|
|
198
198
|
* @throws {PaymentFailed} Payment required to apply the subscription update.
|
|
199
199
|
* @throws {SubscriptionsUpdate403Error} Subscription is already canceled or will be at the end of the period, or is not active.
|
|
200
200
|
* @throws {ResourceNotFound} Subscription not found.
|
|
201
|
-
* @throws {
|
|
201
|
+
* @throws {SubscriptionsUpdate409Error} Subscription is pending an update, or is not scheduled to be canceled.
|
|
202
202
|
* @throws {HTTPValidationError} Validation Error
|
|
203
203
|
*/
|
|
204
204
|
return async (id, body, requestOptions) => {
|
|
@@ -209,7 +209,7 @@ const updateSubscriptions = (client) => {
|
|
|
209
209
|
402: require_errors.PaymentFailed,
|
|
210
210
|
403: require_errors.SubscriptionsUpdate403Error,
|
|
211
211
|
404: require_errors.ResourceNotFound,
|
|
212
|
-
409: require_errors.
|
|
212
|
+
409: require_errors.SubscriptionsUpdate409Error,
|
|
213
213
|
422: require_errors.HTTPValidationError
|
|
214
214
|
});
|
|
215
215
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptions.cjs","names":["HTTPValidationError","ResourceNotFound","AlreadyCanceledSubscription","SubscriptionLocked","PaymentFailed","SubscriptionsUpdate403Error"],"sources":["../../../src/2026-10/services/subscriptions.ts"],"sourcesContent":["import type { ClientBase, RequestOptions } from \"../../base\";\nimport type {\n CustomerCancellationReason,\n ListResourceSubscription,\n MetadataQuery,\n Subscription,\n SubscriptionCreateCustomer,\n SubscriptionCreateExternalCustomer,\n SubscriptionExportColumn,\n SubscriptionSortProperty,\n SubscriptionStatus,\n SubscriptionUpdate,\n} from \"../models\";\n\nimport {\n AlreadyCanceledSubscription,\n HTTPValidationError,\n PaymentFailed,\n ResourceNotFound,\n SubscriptionLocked,\n SubscriptionsUpdate403Error,\n} from \"../errors\";\n\nexport const listSubscriptions = (client: ClientBase) => {\n /**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {ListResourceSubscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): Promise<ListResourceSubscription> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n customer_id: query?.customer_id,\n external_customer_id: query?.external_customer_id,\n discount_id: query?.discount_id,\n active: query?.active,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n customer_cancellation_reason: query?.customer_cancellation_reason,\n canceled_at_after: query?.canceled_at_after,\n canceled_at_before: query?.canceled_at_before,\n started_after: query?.started_after,\n started_before: query?.started_before,\n page: query?.page ?? 1,\n limit: query?.limit ?? 10,\n sorting: query?.sorting ?? [\"-started_at\"],\n metadata: query?.metadata,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<ListResourceSubscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\n/**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {AsyncGenerator<Subscription>} A generator that yields items of type Subscription.\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\nexport const iterListSubscriptions = (client: ClientBase) => {\n return async function* (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): AsyncGenerator<Subscription> {\n let page: number;\n page = query?.page ?? 1;\n let limit: number | undefined;\n limit = query?.limit;\n\n while (true) {\n const response = await listSubscriptions(client)({ ...query, page, limit }, requestOptions);\n for (const item of response.items) {\n yield item;\n }\n if (page >= response.pagination.max_page) {\n break;\n }\n page++;\n }\n };\n};\nexport const createSubscriptions = (client: ClientBase) => {\n /**\n * Create a subscription programmatically.\n *\n * This endpoint only allows to create subscription on free products.\n * For paid products, use the checkout flow.\n *\n * No initial order will be created and no confirmation email will be sent.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n body: SubscriptionCreateCustomer | SubscriptionCreateExternalCustomer,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {};\n const queryParams = {};\n const request = client.buildRequest(\n \"POST\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const exportSubscriptions = (client: ClientBase) => {\n /**\n * Export subscriptions as a CSV file.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {string}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n started_after?: string | null;\n started_before?: string | null;\n timezone?: string;\n columns?: SubscriptionExportColumn | SubscriptionExportColumn[] | null;\n },\n requestOptions?: RequestOptions,\n ): Promise<string> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n started_after: query?.started_after,\n started_before: query?.started_before,\n timezone: query?.timezone ?? \"UTC\",\n columns: query?.columns,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/export\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<string>(response, \"text\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const getSubscriptions = (client: ClientBase) => {\n /**\n * Get a subscription by ID.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 404: ResourceNotFound,\n 422: HTTPValidationError,\n });\n };\n};\nexport const revokeSubscriptions = (client: ClientBase) => {\n /**\n * Revoke a subscription, i.e cancel immediately.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {AlreadyCanceledSubscription} This subscription is already revoked.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionLocked} Subscription is pending an update.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"DELETE\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 403: AlreadyCanceledSubscription,\n 404: ResourceNotFound,\n 409: SubscriptionLocked,\n 422: HTTPValidationError,\n });\n };\n};\nexport const updateSubscriptions = (client: ClientBase) => {\n /**\n * Update a subscription.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {PaymentFailed} Payment required to apply the subscription update.\n * @throws {SubscriptionsUpdate403Error} Subscription is already canceled or will be at the end of the period, or is not active.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionLocked} Subscription is pending an update.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n id: string,\n body: SubscriptionUpdate,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"PATCH\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 402: PaymentFailed,\n 403: SubscriptionsUpdate403Error,\n 404: ResourceNotFound,\n 409: SubscriptionLocked,\n 422: HTTPValidationError,\n });\n };\n};\n\nexport function createSubscriptionsService(client: ClientBase) {\n return {\n list: listSubscriptions(client),\n create: createSubscriptions(client),\n export: exportSubscriptions(client),\n get: getSubscriptions(client),\n revoke: revokeSubscriptions(client),\n update: updateSubscriptions(client),\n iterList: iterListSubscriptions(client),\n };\n}\n\nexport type Subscriptions = ReturnType<typeof createSubscriptionsService>;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subscriptions.cjs","names":["HTTPValidationError","ResourceNotFound","AlreadyCanceledSubscription","SubscriptionLocked","PaymentFailed","SubscriptionsUpdate403Error","SubscriptionsUpdate409Error"],"sources":["../../../src/2026-10/services/subscriptions.ts"],"sourcesContent":["import type { ClientBase, RequestOptions } from \"../../base\";\nimport type {\n CustomerCancellationReason,\n ListResourceSubscription,\n MetadataQuery,\n Subscription,\n SubscriptionCreateCustomer,\n SubscriptionCreateExternalCustomer,\n SubscriptionExportColumn,\n SubscriptionSortProperty,\n SubscriptionStatus,\n SubscriptionUpdate,\n} from \"../models\";\n\nimport {\n AlreadyCanceledSubscription,\n HTTPValidationError,\n PaymentFailed,\n ResourceNotFound,\n SubscriptionLocked,\n SubscriptionsUpdate403Error,\n SubscriptionsUpdate409Error,\n} from \"../errors\";\n\nexport const listSubscriptions = (client: ClientBase) => {\n /**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {ListResourceSubscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): Promise<ListResourceSubscription> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n customer_id: query?.customer_id,\n external_customer_id: query?.external_customer_id,\n discount_id: query?.discount_id,\n active: query?.active,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n customer_cancellation_reason: query?.customer_cancellation_reason,\n canceled_at_after: query?.canceled_at_after,\n canceled_at_before: query?.canceled_at_before,\n started_after: query?.started_after,\n started_before: query?.started_before,\n page: query?.page ?? 1,\n limit: query?.limit ?? 10,\n sorting: query?.sorting ?? [\"-started_at\"],\n metadata: query?.metadata,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<ListResourceSubscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\n/**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {AsyncGenerator<Subscription>} A generator that yields items of type Subscription.\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\nexport const iterListSubscriptions = (client: ClientBase) => {\n return async function* (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): AsyncGenerator<Subscription> {\n let page: number;\n page = query?.page ?? 1;\n let limit: number | undefined;\n limit = query?.limit;\n\n while (true) {\n const response = await listSubscriptions(client)({ ...query, page, limit }, requestOptions);\n for (const item of response.items) {\n yield item;\n }\n if (page >= response.pagination.max_page) {\n break;\n }\n page++;\n }\n };\n};\nexport const createSubscriptions = (client: ClientBase) => {\n /**\n * Create a subscription programmatically.\n *\n * This endpoint only allows to create subscription on free products.\n * For paid products, use the checkout flow.\n *\n * No initial order will be created and no confirmation email will be sent.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n body: SubscriptionCreateCustomer | SubscriptionCreateExternalCustomer,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {};\n const queryParams = {};\n const request = client.buildRequest(\n \"POST\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const exportSubscriptions = (client: ClientBase) => {\n /**\n * Export subscriptions as a CSV file.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {string}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n started_after?: string | null;\n started_before?: string | null;\n timezone?: string;\n columns?: SubscriptionExportColumn | SubscriptionExportColumn[] | null;\n },\n requestOptions?: RequestOptions,\n ): Promise<string> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n started_after: query?.started_after,\n started_before: query?.started_before,\n timezone: query?.timezone ?? \"UTC\",\n columns: query?.columns,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/export\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<string>(response, \"text\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const getSubscriptions = (client: ClientBase) => {\n /**\n * Get a subscription by ID.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 404: ResourceNotFound,\n 422: HTTPValidationError,\n });\n };\n};\nexport const revokeSubscriptions = (client: ClientBase) => {\n /**\n * Revoke a subscription, i.e cancel immediately.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {AlreadyCanceledSubscription} This subscription is already revoked.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionLocked} Subscription is pending an update.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"DELETE\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 403: AlreadyCanceledSubscription,\n 404: ResourceNotFound,\n 409: SubscriptionLocked,\n 422: HTTPValidationError,\n });\n };\n};\nexport const updateSubscriptions = (client: ClientBase) => {\n /**\n * Update a subscription.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {PaymentFailed} Payment required to apply the subscription update.\n * @throws {SubscriptionsUpdate403Error} Subscription is already canceled or will be at the end of the period, or is not active.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionsUpdate409Error} Subscription is pending an update, or is not scheduled to be canceled.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n id: string,\n body: SubscriptionUpdate,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"PATCH\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 402: PaymentFailed,\n 403: SubscriptionsUpdate403Error,\n 404: ResourceNotFound,\n 409: SubscriptionsUpdate409Error,\n 422: HTTPValidationError,\n });\n };\n};\n\nexport function createSubscriptionsService(client: ClientBase) {\n return {\n list: listSubscriptions(client),\n create: createSubscriptions(client),\n export: exportSubscriptions(client),\n get: getSubscriptions(client),\n revoke: revokeSubscriptions(client),\n update: updateSubscriptions(client),\n iterList: iterListSubscriptions(client),\n };\n}\n\nexport type Subscriptions = ReturnType<typeof createSubscriptionsService>;\n"],"mappings":";;;AAwBA,MAAa,qBAAqB,WAAuB;;;;;;;;;;;;;;CAcvD,OAAO,OACL,OAsBA,mBACsC;EACtC,MAAM,aAAa,CAAC;EACpB,MAAM,cAAc;GAClB,iBAAiB,OAAO;GACxB,YAAY,OAAO;GACnB,aAAa,OAAO;GACpB,sBAAsB,OAAO;GAC7B,aAAa,OAAO;GACpB,QAAQ,OAAO;GACf,QAAQ,OAAO;GACf,sBAAsB,OAAO;GAC7B,8BAA8B,OAAO;GACrC,mBAAmB,OAAO;GAC1B,oBAAoB,OAAO;GAC3B,eAAe,OAAO;GACtB,gBAAgB,OAAO;GACvB,MAAM,OAAO,QAAQ;GACrB,OAAO,OAAO,SAAS;GACvB,SAAS,OAAO,WAAW,CAAC,aAAa;GACzC,UAAU,OAAO;EACnB;EACA,MAAM,UAAU,OAAO,aACrB,OACA,sBACA,YACA,aACA,KAAA,CACF;EACA,MAAM,WAAW,MAAM,OAAO,YAAY,SAAS,cAAc;EACjE,OAAO,OAAO,cAAwC,UAAU,QAAQ,EACtE,KAAKA,eAAAA,oBACP,CAAC;CACH;AACF;;;;;;;;;;;;;;AAcA,MAAa,yBAAyB,WAAuB;CAC3D,OAAO,iBACL,OAsBA,gBAC8B;EAC9B,IAAI;EACJ,OAAO,OAAO,QAAQ;EACtB,IAAI;EACJ,QAAQ,OAAO;EAEf,OAAO,MAAM;GACX,MAAM,WAAW,MAAM,kBAAkB,MAAM,CAAC,CAAC;IAAE,GAAG;IAAO;IAAM;GAAM,GAAG,cAAc;GAC1F,KAAK,MAAM,QAAQ,SAAS,OAC1B,MAAM;GAER,IAAI,QAAQ,SAAS,WAAW,UAC9B;GAEF;EACF;CACF;AACF;AACA,MAAa,uBAAuB,WAAuB;;;;;;;;;;;;;;;;;;;CAmBzD,OAAO,OACL,MACA,mBAC0B;EAG1B,MAAM,UAAU,OAAO,aACrB,QACA,sBACA,CAAS,GACT,CAAU,GACV,IACF;EACA,MAAM,WAAW,MAAM,OAAO,YAAY,SAAS,cAAc;EACjE,OAAO,OAAO,cAA4B,UAAU,QAAQ,EAC1D,KAAKA,eAAAA,oBACP,CAAC;CACH;AACF;AACA,MAAa,uBAAuB,WAAuB;;;;;;;;;;;;;;CAczD,OAAO,OACL,OAUA,mBACoB;EACpB,MAAM,aAAa,CAAC;EACpB,MAAM,cAAc;GAClB,iBAAiB,OAAO;GACxB,YAAY,OAAO;GACnB,QAAQ,OAAO;GACf,sBAAsB,OAAO;GAC7B,eAAe,OAAO;GACtB,gBAAgB,OAAO;GACvB,UAAU,OAAO,YAAY;GAC7B,SAAS,OAAO;EAClB;EACA,MAAM,UAAU,OAAO,aACrB,OACA,4BACA,YACA,aACA,KAAA,CACF;EACA,MAAM,WAAW,MAAM,OAAO,YAAY,SAAS,cAAc;EACjE,OAAO,OAAO,cAAsB,UAAU,QAAQ,EACpD,KAAKA,eAAAA,oBACP,CAAC;CACH;AACF;AACA,MAAa,oBAAoB,WAAuB;;;;;;;;;;;;;;;CAetD,OAAO,OAAO,IAAY,mBAA2D;EACnF,MAAM,aAAa,EACb,GACN;EAEA,MAAM,UAAU,OAAO,aACrB,OACA,0BACA,YACA,CAAU,GACV,KAAA,CACF;EACA,MAAM,WAAW,MAAM,OAAO,YAAY,SAAS,cAAc;EACjE,OAAO,OAAO,cAA4B,UAAU,QAAQ;GAC1D,KAAKC,eAAAA;GACL,KAAKD,eAAAA;EACP,CAAC;CACH;AACF;AACA,MAAa,uBAAuB,WAAuB;;;;;;;;;;;;;;;;;CAiBzD,OAAO,OAAO,IAAY,mBAA2D;EACnF,MAAM,aAAa,EACb,GACN;EAEA,MAAM,UAAU,OAAO,aACrB,UACA,0BACA,YACA,CAAU,GACV,KAAA,CACF;EACA,MAAM,WAAW,MAAM,OAAO,YAAY,SAAS,cAAc;EACjE,OAAO,OAAO,cAA4B,UAAU,QAAQ;GAC1D,KAAKE,eAAAA;GACL,KAAKD,eAAAA;GACL,KAAKE,eAAAA;GACL,KAAKH,eAAAA;EACP,CAAC;CACH;AACF;AACA,MAAa,uBAAuB,WAAuB;;;;;;;;;;;;;;;;;;;CAmBzD,OAAO,OACL,IACA,MACA,mBAC0B;EAC1B,MAAM,aAAa,EACb,GACN;EAEA,MAAM,UAAU,OAAO,aACrB,SACA,0BACA,YACA,CAAU,GACV,IACF;EACA,MAAM,WAAW,MAAM,OAAO,YAAY,SAAS,cAAc;EACjE,OAAO,OAAO,cAA4B,UAAU,QAAQ;GAC1D,KAAKI,eAAAA;GACL,KAAKC,eAAAA;GACL,KAAKJ,eAAAA;GACL,KAAKK,eAAAA;GACL,KAAKN,eAAAA;EACP,CAAC;CACH;AACF;AAEA,SAAgB,2BAA2B,QAAoB;CAC7D,OAAO;EACL,MAAM,kBAAkB,MAAM;EAC9B,QAAQ,oBAAoB,MAAM;EAClC,QAAQ,oBAAoB,MAAM;EAClC,KAAK,iBAAiB,MAAM;EAC5B,QAAQ,oBAAoB,MAAM;EAClC,QAAQ,oBAAoB,MAAM;EAClC,UAAU,sBAAsB,MAAM;CACxC;AACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.cjs";
|
|
2
|
-
import {
|
|
2
|
+
import { Ei as SubscriptionUpdate, K as CustomerCancellationReason, Ti as SubscriptionStatus, Zn as ListResourceSubscription, bi as SubscriptionCreateExternalCustomer, sr as MetadataQuery, vi as Subscription, wi as SubscriptionSortProperty, xi as SubscriptionExportColumn, yi as SubscriptionCreateCustomer } from "../../models-f2_talp6.cjs";
|
|
3
3
|
//#region src/2026-10/services/subscriptions.d.ts
|
|
4
4
|
declare const listSubscriptions: (client: ClientBase) => (query?: {
|
|
5
5
|
organization_id?: string | string[] | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptions.d.cts","names":[],"sources":["../../../src/2026-10/services/subscriptions.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"subscriptions.d.cts","names":[],"sources":["../../../src/2026-10/services/subscriptions.ts"],"mappings":";;;cAwBa,oBAAqB,QAAQ,gBAetC;EACE;EACA;EACA;EACA;EACA;EACA;EACA,SAAS,qBAAqB;EAC9B;EACA,+BACI,6BACA;EAEJ;EACA;EACA;EACA;EACA;EACA;EACA,UAAU;EACV,WAAW;GAEb,iBAAiB,mBAChB,QAAQ;;;;;;;;;;;;;;cA+CA,wBAAyB,QAAQ,gBAE1C;EACE;EACA;EACA;EACA;EACA;EACA;EACA,SAAS,qBAAqB;EAC9B;EACA,+BACI,6BACA;EAEJ;EACA;EACA;EACA;EACA;EACA;EACA,UAAU;EACV,WAAW;GAEb,iBAAiB,mBAChB,eAAe;cAkBP,sBAAuB,QAAQ,gBAoBxC,MAAM,6BAA6B,oCACnC,iBAAiB,mBAChB,QAAQ;cAgBA,sBAAuB,QAAQ,gBAexC;EACE;EACA;EACA,SAAS,qBAAqB;EAC9B;EACA;EACA;EACA;EACA,UAAU,2BAA2B;GAEvC,iBAAiB,mBAChB;cAyBQ,mBAAoB,QAAQ,gBAezB,YAAY,iBAAiB,mBAAiB,QAAQ;cAmBzD,sBAAuB,QAAQ,gBAiB5B,YAAY,iBAAiB,mBAAiB,QAAQ;cAqBzD,sBAAuB,QAAQ,gBAoBxC,YACA,MAAM,oBACN,iBAAiB,mBAChB,QAAQ;iBAuBG,2BAA2B,QAAQ;EAhUvC,OAAA;IACN;IACA;IACA;IACA;IACA;IACA;IACA,SAAS,qBAAqB;IAC9B;IACA,+BACI,6BACA;IAEJ;IACA;IACA;IACA;IACA;IACA;IACA,UAAU;IACV,WAAW;KACZ,iBACgB,mBAChB,QAAQ;EA8GH,SAAA,MAAA,6BAA6B,oCAAkC,iBACpD,mBAChB,QAAQ;EA+BD,SAAA;IACN;IACA;IACA,SAAS,qBAAqB;IAC9B;IACA;IACA;IACA;IACA,UAAU,2BAA2B;KACtC,iBACgB,mBAChB;EAwCe,MAAA,YAAM,iBAAmB,mBAAiB,QAAQ;EAoClD,SAAA,YAAM,iBAAmB,mBAAiB,QAAQ;EAyC9D,SAAA,YAAM,MACJ,oBAAkB,iBACP,mBAChB,QAAQ;EAjOD,WAAA;IACN;IACA;IACA;IACA;IACA;IACA;IACA,SAAS,qBAAqB;IAC9B;IACA,+BACI,6BACA;IAEJ;IACA;IACA;IACA;IACA;IACA;IACA,UAAU;IACV,WAAW;KACZ,iBACgB,mBAChB,eAAe;;KA6OR,gBAAgB,kBAAkB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.mjs";
|
|
2
|
-
import {
|
|
2
|
+
import { Ei as SubscriptionUpdate, K as CustomerCancellationReason, Ti as SubscriptionStatus, Zn as ListResourceSubscription, bi as SubscriptionCreateExternalCustomer, sr as MetadataQuery, vi as Subscription, wi as SubscriptionSortProperty, xi as SubscriptionExportColumn, yi as SubscriptionCreateCustomer } from "../../models-f2_talp6.mjs";
|
|
3
3
|
//#region src/2026-10/services/subscriptions.d.ts
|
|
4
4
|
declare const listSubscriptions: (client: ClientBase) => (query?: {
|
|
5
5
|
organization_id?: string | string[] | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptions.d.mts","names":[],"sources":["../../../src/2026-10/services/subscriptions.ts"],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"subscriptions.d.mts","names":[],"sources":["../../../src/2026-10/services/subscriptions.ts"],"mappings":";;;cAwBa,oBAAqB,QAAQ,gBAetC;EACE;EACA;EACA;EACA;EACA;EACA;EACA,SAAS,qBAAqB;EAC9B;EACA,+BACI,6BACA;EAEJ;EACA;EACA;EACA;EACA;EACA;EACA,UAAU;EACV,WAAW;GAEb,iBAAiB,mBAChB,QAAQ;;;;;;;;;;;;;;cA+CA,wBAAyB,QAAQ,gBAE1C;EACE;EACA;EACA;EACA;EACA;EACA;EACA,SAAS,qBAAqB;EAC9B;EACA,+BACI,6BACA;EAEJ;EACA;EACA;EACA;EACA;EACA;EACA,UAAU;EACV,WAAW;GAEb,iBAAiB,mBAChB,eAAe;cAkBP,sBAAuB,QAAQ,gBAoBxC,MAAM,6BAA6B,oCACnC,iBAAiB,mBAChB,QAAQ;cAgBA,sBAAuB,QAAQ,gBAexC;EACE;EACA;EACA,SAAS,qBAAqB;EAC9B;EACA;EACA;EACA;EACA,UAAU,2BAA2B;GAEvC,iBAAiB,mBAChB;cAyBQ,mBAAoB,QAAQ,gBAezB,YAAY,iBAAiB,mBAAiB,QAAQ;cAmBzD,sBAAuB,QAAQ,gBAiB5B,YAAY,iBAAiB,mBAAiB,QAAQ;cAqBzD,sBAAuB,QAAQ,gBAoBxC,YACA,MAAM,oBACN,iBAAiB,mBAChB,QAAQ;iBAuBG,2BAA2B,QAAQ;EAhUvC,OAAA;IACN;IACA;IACA;IACA;IACA;IACA;IACA,SAAS,qBAAqB;IAC9B;IACA,+BACI,6BACA;IAEJ;IACA;IACA;IACA;IACA;IACA;IACA,UAAU;IACV,WAAW;KACZ,iBACgB,mBAChB,QAAQ;EA8GH,SAAA,MAAA,6BAA6B,oCAAkC,iBACpD,mBAChB,QAAQ;EA+BD,SAAA;IACN;IACA;IACA,SAAS,qBAAqB;IAC9B;IACA;IACA;IACA;IACA,UAAU,2BAA2B;KACtC,iBACgB,mBAChB;EAwCe,MAAA,YAAM,iBAAmB,mBAAiB,QAAQ;EAoClD,SAAA,YAAM,iBAAmB,mBAAiB,QAAQ;EAyC9D,SAAA,YAAM,MACJ,oBAAkB,iBACP,mBAChB,QAAQ;EAjOD,WAAA;IACN;IACA;IACA;IACA;IACA;IACA;IACA,SAAS,qBAAqB;IAC9B;IACA,+BACI,6BACA;IAEJ;IACA;IACA;IACA;IACA;IACA;IACA,UAAU;IACV,WAAW;KACZ,iBACgB,mBAChB,eAAe;;KA6OR,gBAAgB,kBAAkB"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ot as SubscriptionLocked, Tt as ResourceNotFound,
|
|
1
|
+
import { At as SubscriptionsUpdate409Error, Ot as SubscriptionLocked, Tt as ResourceNotFound, kt as SubscriptionsUpdate403Error, lt as HTTPValidationError, t as AlreadyCanceledSubscription, xt as PaymentFailed } from "../../errors-hhbDe5ap.mjs";
|
|
2
2
|
//#region src/2026-10/services/subscriptions.ts
|
|
3
3
|
const listSubscriptions = (client) => {
|
|
4
4
|
/**
|
|
@@ -197,7 +197,7 @@ const updateSubscriptions = (client) => {
|
|
|
197
197
|
* @throws {PaymentFailed} Payment required to apply the subscription update.
|
|
198
198
|
* @throws {SubscriptionsUpdate403Error} Subscription is already canceled or will be at the end of the period, or is not active.
|
|
199
199
|
* @throws {ResourceNotFound} Subscription not found.
|
|
200
|
-
* @throws {
|
|
200
|
+
* @throws {SubscriptionsUpdate409Error} Subscription is pending an update, or is not scheduled to be canceled.
|
|
201
201
|
* @throws {HTTPValidationError} Validation Error
|
|
202
202
|
*/
|
|
203
203
|
return async (id, body, requestOptions) => {
|
|
@@ -208,7 +208,7 @@ const updateSubscriptions = (client) => {
|
|
|
208
208
|
402: PaymentFailed,
|
|
209
209
|
403: SubscriptionsUpdate403Error,
|
|
210
210
|
404: ResourceNotFound,
|
|
211
|
-
409:
|
|
211
|
+
409: SubscriptionsUpdate409Error,
|
|
212
212
|
422: HTTPValidationError
|
|
213
213
|
});
|
|
214
214
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"subscriptions.mjs","names":[],"sources":["../../../src/2026-10/services/subscriptions.ts"],"sourcesContent":["import type { ClientBase, RequestOptions } from \"../../base\";\nimport type {\n CustomerCancellationReason,\n ListResourceSubscription,\n MetadataQuery,\n Subscription,\n SubscriptionCreateCustomer,\n SubscriptionCreateExternalCustomer,\n SubscriptionExportColumn,\n SubscriptionSortProperty,\n SubscriptionStatus,\n SubscriptionUpdate,\n} from \"../models\";\n\nimport {\n AlreadyCanceledSubscription,\n HTTPValidationError,\n PaymentFailed,\n ResourceNotFound,\n SubscriptionLocked,\n SubscriptionsUpdate403Error,\n} from \"../errors\";\n\nexport const listSubscriptions = (client: ClientBase) => {\n /**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {ListResourceSubscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): Promise<ListResourceSubscription> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n customer_id: query?.customer_id,\n external_customer_id: query?.external_customer_id,\n discount_id: query?.discount_id,\n active: query?.active,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n customer_cancellation_reason: query?.customer_cancellation_reason,\n canceled_at_after: query?.canceled_at_after,\n canceled_at_before: query?.canceled_at_before,\n started_after: query?.started_after,\n started_before: query?.started_before,\n page: query?.page ?? 1,\n limit: query?.limit ?? 10,\n sorting: query?.sorting ?? [\"-started_at\"],\n metadata: query?.metadata,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<ListResourceSubscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\n/**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {AsyncGenerator<Subscription>} A generator that yields items of type Subscription.\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\nexport const iterListSubscriptions = (client: ClientBase) => {\n return async function* (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): AsyncGenerator<Subscription> {\n let page: number;\n page = query?.page ?? 1;\n let limit: number | undefined;\n limit = query?.limit;\n\n while (true) {\n const response = await listSubscriptions(client)({ ...query, page, limit }, requestOptions);\n for (const item of response.items) {\n yield item;\n }\n if (page >= response.pagination.max_page) {\n break;\n }\n page++;\n }\n };\n};\nexport const createSubscriptions = (client: ClientBase) => {\n /**\n * Create a subscription programmatically.\n *\n * This endpoint only allows to create subscription on free products.\n * For paid products, use the checkout flow.\n *\n * No initial order will be created and no confirmation email will be sent.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n body: SubscriptionCreateCustomer | SubscriptionCreateExternalCustomer,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {};\n const queryParams = {};\n const request = client.buildRequest(\n \"POST\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const exportSubscriptions = (client: ClientBase) => {\n /**\n * Export subscriptions as a CSV file.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {string}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n started_after?: string | null;\n started_before?: string | null;\n timezone?: string;\n columns?: SubscriptionExportColumn | SubscriptionExportColumn[] | null;\n },\n requestOptions?: RequestOptions,\n ): Promise<string> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n started_after: query?.started_after,\n started_before: query?.started_before,\n timezone: query?.timezone ?? \"UTC\",\n columns: query?.columns,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/export\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<string>(response, \"text\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const getSubscriptions = (client: ClientBase) => {\n /**\n * Get a subscription by ID.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 404: ResourceNotFound,\n 422: HTTPValidationError,\n });\n };\n};\nexport const revokeSubscriptions = (client: ClientBase) => {\n /**\n * Revoke a subscription, i.e cancel immediately.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {AlreadyCanceledSubscription} This subscription is already revoked.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionLocked} Subscription is pending an update.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"DELETE\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 403: AlreadyCanceledSubscription,\n 404: ResourceNotFound,\n 409: SubscriptionLocked,\n 422: HTTPValidationError,\n });\n };\n};\nexport const updateSubscriptions = (client: ClientBase) => {\n /**\n * Update a subscription.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {PaymentFailed} Payment required to apply the subscription update.\n * @throws {SubscriptionsUpdate403Error} Subscription is already canceled or will be at the end of the period, or is not active.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionLocked} Subscription is pending an update.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n id: string,\n body: SubscriptionUpdate,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"PATCH\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 402: PaymentFailed,\n 403: SubscriptionsUpdate403Error,\n 404: ResourceNotFound,\n 409: SubscriptionLocked,\n 422: HTTPValidationError,\n });\n };\n};\n\nexport function createSubscriptionsService(client: ClientBase) {\n return {\n list: listSubscriptions(client),\n create: createSubscriptions(client),\n export: exportSubscriptions(client),\n get: getSubscriptions(client),\n revoke: revokeSubscriptions(client),\n update: updateSubscriptions(client),\n iterList: iterListSubscriptions(client),\n };\n}\n\nexport type Subscriptions = ReturnType<typeof createSubscriptionsService>;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"subscriptions.mjs","names":[],"sources":["../../../src/2026-10/services/subscriptions.ts"],"sourcesContent":["import type { ClientBase, RequestOptions } from \"../../base\";\nimport type {\n CustomerCancellationReason,\n ListResourceSubscription,\n MetadataQuery,\n Subscription,\n SubscriptionCreateCustomer,\n SubscriptionCreateExternalCustomer,\n SubscriptionExportColumn,\n SubscriptionSortProperty,\n SubscriptionStatus,\n SubscriptionUpdate,\n} from \"../models\";\n\nimport {\n AlreadyCanceledSubscription,\n HTTPValidationError,\n PaymentFailed,\n ResourceNotFound,\n SubscriptionLocked,\n SubscriptionsUpdate403Error,\n SubscriptionsUpdate409Error,\n} from \"../errors\";\n\nexport const listSubscriptions = (client: ClientBase) => {\n /**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {ListResourceSubscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): Promise<ListResourceSubscription> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n customer_id: query?.customer_id,\n external_customer_id: query?.external_customer_id,\n discount_id: query?.discount_id,\n active: query?.active,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n customer_cancellation_reason: query?.customer_cancellation_reason,\n canceled_at_after: query?.canceled_at_after,\n canceled_at_before: query?.canceled_at_before,\n started_after: query?.started_after,\n started_before: query?.started_before,\n page: query?.page ?? 1,\n limit: query?.limit ?? 10,\n sorting: query?.sorting ?? [\"-started_at\"],\n metadata: query?.metadata,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<ListResourceSubscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\n/**\n * List subscriptions.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {AsyncGenerator<Subscription>} A generator that yields items of type Subscription.\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\nexport const iterListSubscriptions = (client: ClientBase) => {\n return async function* (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n customer_id?: string | string[] | null;\n external_customer_id?: string | string[] | null;\n discount_id?: string | string[] | null;\n active?: boolean | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n customer_cancellation_reason?:\n | CustomerCancellationReason\n | CustomerCancellationReason[]\n | null;\n canceled_at_after?: string | null;\n canceled_at_before?: string | null;\n started_after?: string | null;\n started_before?: string | null;\n page?: number;\n limit?: number;\n sorting?: SubscriptionSortProperty[] | null;\n metadata?: MetadataQuery;\n },\n requestOptions?: RequestOptions,\n ): AsyncGenerator<Subscription> {\n let page: number;\n page = query?.page ?? 1;\n let limit: number | undefined;\n limit = query?.limit;\n\n while (true) {\n const response = await listSubscriptions(client)({ ...query, page, limit }, requestOptions);\n for (const item of response.items) {\n yield item;\n }\n if (page >= response.pagination.max_page) {\n break;\n }\n page++;\n }\n };\n};\nexport const createSubscriptions = (client: ClientBase) => {\n /**\n * Create a subscription programmatically.\n *\n * This endpoint only allows to create subscription on free products.\n * For paid products, use the checkout flow.\n *\n * No initial order will be created and no confirmation email will be sent.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n body: SubscriptionCreateCustomer | SubscriptionCreateExternalCustomer,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {};\n const queryParams = {};\n const request = client.buildRequest(\n \"POST\",\n \"/v1/subscriptions/\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const exportSubscriptions = (client: ClientBase) => {\n /**\n * Export subscriptions as a CSV file.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param query - Query parameters\n * @param requestOptions - Request options\n * @returns {string}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n query?: {\n organization_id?: string | string[] | null;\n product_id?: string | string[] | null;\n status?: SubscriptionStatus | SubscriptionStatus[] | null;\n cancel_at_period_end?: boolean | null;\n started_after?: string | null;\n started_before?: string | null;\n timezone?: string;\n columns?: SubscriptionExportColumn | SubscriptionExportColumn[] | null;\n },\n requestOptions?: RequestOptions,\n ): Promise<string> => {\n const pathParams = {};\n const queryParams = {\n organization_id: query?.organization_id,\n product_id: query?.product_id,\n status: query?.status,\n cancel_at_period_end: query?.cancel_at_period_end,\n started_after: query?.started_after,\n started_before: query?.started_before,\n timezone: query?.timezone ?? \"UTC\",\n columns: query?.columns,\n };\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/export\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<string>(response, \"text\", {\n 422: HTTPValidationError,\n });\n };\n};\nexport const getSubscriptions = (client: ClientBase) => {\n /**\n * Get a subscription by ID.\n *\n * **Scopes**: `subscriptions:read` `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"GET\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 404: ResourceNotFound,\n 422: HTTPValidationError,\n });\n };\n};\nexport const revokeSubscriptions = (client: ClientBase) => {\n /**\n * Revoke a subscription, i.e cancel immediately.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {AlreadyCanceledSubscription} This subscription is already revoked.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionLocked} Subscription is pending an update.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (id: string, requestOptions?: RequestOptions): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"DELETE\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n undefined,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 403: AlreadyCanceledSubscription,\n 404: ResourceNotFound,\n 409: SubscriptionLocked,\n 422: HTTPValidationError,\n });\n };\n};\nexport const updateSubscriptions = (client: ClientBase) => {\n /**\n * Update a subscription.\n *\n * **Scopes**: `subscriptions:write`\n *\n * @param id - The subscription ID.\n * @param body - Request body\n * @param requestOptions - Request options\n * @returns {Subscription}\n * @throws {PolarNetworkError} When a network error occurs\n * @throws {PolarRateLimitError} When the rate limit is exceeded\n * @throws {PolarServerError} When the server returns a 5xx error\n * @throws {PaymentFailed} Payment required to apply the subscription update.\n * @throws {SubscriptionsUpdate403Error} Subscription is already canceled or will be at the end of the period, or is not active.\n * @throws {ResourceNotFound} Subscription not found.\n * @throws {SubscriptionsUpdate409Error} Subscription is pending an update, or is not scheduled to be canceled.\n * @throws {HTTPValidationError} Validation Error\n */\n return async (\n id: string,\n body: SubscriptionUpdate,\n requestOptions?: RequestOptions,\n ): Promise<Subscription> => {\n const pathParams = {\n id: id,\n };\n const queryParams = {};\n const request = client.buildRequest(\n \"PATCH\",\n \"/v1/subscriptions/{id}\",\n pathParams,\n queryParams,\n body,\n );\n const response = await client.sendRequest(request, requestOptions);\n return client.parseResponse<Subscription>(response, \"json\", {\n 402: PaymentFailed,\n 403: SubscriptionsUpdate403Error,\n 404: ResourceNotFound,\n 409: SubscriptionsUpdate409Error,\n 422: HTTPValidationError,\n });\n };\n};\n\nexport function createSubscriptionsService(client: ClientBase) {\n return {\n list: listSubscriptions(client),\n create: createSubscriptions(client),\n export: exportSubscriptions(client),\n get: getSubscriptions(client),\n revoke: revokeSubscriptions(client),\n update: updateSubscriptions(client),\n iterList: iterListSubscriptions(client),\n };\n}\n\nexport type Subscriptions = ReturnType<typeof createSubscriptionsService>;\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
const require_errors = require("../../errors-
|
|
2
|
+
const require_errors = require("../../errors-BfEghQ77.cjs");
|
|
3
3
|
//#region src/2026-10/services/webhooks.ts
|
|
4
4
|
const listWebhookEndpointsWebhooks = (client) => {
|
|
5
5
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.cjs";
|
|
2
|
-
import { $n as ListResourceWebhookEndpoint,
|
|
2
|
+
import { $n as ListResourceWebhookEndpoint, Bi as WebhookEndpointUpdate, Li as WebhookDelivery, Qn as ListResourceWebhookDelivery, Ri as WebhookEndpoint, Vi as WebhookEventType, zi as WebhookEndpointCreate } from "../../models-f2_talp6.cjs";
|
|
3
3
|
//#region src/2026-10/services/webhooks.d.ts
|
|
4
4
|
declare const listWebhookEndpointsWebhooks: (client: ClientBase) => (query?: {
|
|
5
5
|
organization_id?: string | string[] | null;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { c as RequestOptions, t as ClientBase } from "../../base-C5EE71lz.mjs";
|
|
2
|
-
import { $n as ListResourceWebhookEndpoint,
|
|
2
|
+
import { $n as ListResourceWebhookEndpoint, Bi as WebhookEndpointUpdate, Li as WebhookDelivery, Qn as ListResourceWebhookDelivery, Ri as WebhookEndpoint, Vi as WebhookEventType, zi as WebhookEndpointCreate } from "../../models-f2_talp6.mjs";
|
|
3
3
|
//#region src/2026-10/services/webhooks.d.ts
|
|
4
4
|
declare const listWebhookEndpointsWebhooks: (client: ClientBase) => (query?: {
|
|
5
5
|
organization_id?: string | string[] | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Tt as ResourceNotFound,
|
|
1
|
+
import { Tt as ResourceNotFound, lt as HTTPValidationError } from "../../errors-hhbDe5ap.mjs";
|
|
2
2
|
//#region src/2026-10/services/webhooks.ts
|
|
3
3
|
const listWebhookEndpointsWebhooks = (client) => {
|
|
4
4
|
/**
|
|
@@ -110,6 +110,10 @@ var ClientBase = class {
|
|
|
110
110
|
if (statusCode >= 400 && statusCode < 500) {
|
|
111
111
|
if (statusCode === 429) {
|
|
112
112
|
const retryAfter = response.headers.get("Retry-After");
|
|
113
|
+
if (!retryAfter && errors?.[statusCode]) {
|
|
114
|
+
const ErrorClass = errors[statusCode];
|
|
115
|
+
throw new ErrorClass(statusCode, await response.json());
|
|
116
|
+
}
|
|
113
117
|
throw new PolarRateLimitError(statusCode, retryAfter ? parseInt(retryAfter, 10) : null);
|
|
114
118
|
}
|
|
115
119
|
if (errors?.[statusCode]) {
|
|
@@ -124,4 +128,4 @@ var ClientBase = class {
|
|
|
124
128
|
//#endregion
|
|
125
129
|
export { PolarRateLimitError as a, PolarNetworkError as i, PolarClientError as n, PolarServerError as o, PolarError as r, resolveBaseUrl as s, ClientBase as t };
|
|
126
130
|
|
|
127
|
-
//# sourceMappingURL=base-
|
|
131
|
+
//# sourceMappingURL=base-CpxoQZCZ.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-BX1i41Uz.mjs","names":[],"sources":["../src/base.ts"],"sourcesContent":["export class PolarError extends Error {}\n\nexport class PolarNetworkError extends PolarError {\n constructor(message: string) {\n super(`Polar API network error: ${message}`);\n this.name = \"PolarNetworkError\";\n }\n}\n\nexport class PolarServerError extends PolarError {\n constructor(statusCode: number, message: string) {\n super(`Polar API returned a server error: ${statusCode} - ${message}`);\n this.name = \"PolarServerError\";\n }\n}\n\nexport class PolarClientError<T = unknown> extends PolarError {\n constructor(\n public readonly statusCode: number,\n public readonly error: T,\n ) {\n super(`Polar API returned an error: ${statusCode} - ${JSON.stringify(error)}`);\n this.name = \"PolarClientError\";\n }\n}\n\nexport class PolarRateLimitError extends PolarClientError {\n constructor(\n public readonly statusCode: 429,\n public readonly retryAfter: number | null = null,\n ) {\n super(statusCode, \"Rate limit exceeded\");\n this.name = \"PolarRateLimitError\";\n }\n}\n\ntype PathParams = Record<string, string | number | boolean>;\ntype QueryParamValue =\n | string\n | string[]\n | number\n | number[]\n | boolean\n | boolean[]\n | null\n | undefined;\ninterface QueryParams {\n [key: string]: QueryParamValue | QueryParams;\n}\n\nconst buildUrl = (url: string, pathParams?: PathParams, queryParams?: QueryParams): string => {\n // Format URL with path params using string replacement\n let formattedUrl = url;\n if (pathParams) {\n for (const [key, value] of Object.entries(pathParams)) {\n if (value !== null && value !== undefined) {\n formattedUrl = formattedUrl.replace(`{${key}}`, encodeURIComponent(String(value)));\n }\n }\n }\n\n if (queryParams) {\n const searchParams = new URLSearchParams();\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== null && value !== undefined) {\n if (Array.isArray(value)) {\n for (const item of value) {\n searchParams.append(key, String(item));\n }\n } else if (typeof value === \"object\") {\n // Handle deepObject style parameters (e.g., metadata)\n for (const [subKey, subValue] of Object.entries(value)) {\n if (subValue !== null && subValue !== undefined) {\n if (Array.isArray(subValue)) {\n for (const item of subValue) {\n searchParams.append(`${key}[${subKey}]`, String(item));\n }\n } else {\n searchParams.append(`${key}[${subKey}]`, String(subValue));\n }\n }\n }\n } else {\n searchParams.append(key, String(value));\n }\n }\n }\n const queryString = searchParams.toString();\n if (queryString) {\n formattedUrl = `${formattedUrl}?${queryString}`;\n }\n }\n\n return formattedUrl;\n};\n\nexport interface ClientOptions {\n baseUrl: string;\n version: string;\n accessToken: string;\n /** Default request timeout, in seconds. */\n timeout?: number;\n}\n\nexport interface RequestOptions {\n /** Request timeout override, in seconds. */\n timeout?: number;\n /** Access token override for this request. */\n accessToken?: string;\n}\n\nconst MAX_ABORT_SIGNAL_TIMEOUT_MS = 2_147_483_647;\n\nexport const resolveBaseUrl = (\n servers: Record<string, string>,\n environment: string,\n baseUrl?: string,\n): string => {\n if (baseUrl !== undefined) {\n return baseUrl;\n }\n const serverUrl = servers[environment];\n if (serverUrl === undefined) {\n throw new Error(\n `Invalid environment ${JSON.stringify(environment)}. Expected one of: ${Object.keys(servers).sort().join(\", \")}.`,\n );\n }\n return serverUrl;\n};\n\nexport class ClientBase {\n protected readonly options: ClientOptions;\n\n constructor(options: ClientOptions) {\n this.options = {\n timeout: 5.0,\n ...options,\n };\n }\n\n public buildRequest(\n method: string,\n url: string,\n pathParams?: PathParams,\n queryParams?: QueryParams,\n body?: unknown,\n ): [string, RequestInit] {\n const fullUrl = buildUrl(`${this.options.baseUrl}${url}`, pathParams, queryParams);\n const headers = new Headers({\n \"Content-Type\": \"application/json\",\n \"Polar-Version\": this.options.version,\n Authorization: `Bearer ${this.options.accessToken}`,\n });\n return [\n fullUrl,\n {\n method,\n headers,\n ...(body ? { body: JSON.stringify(body) } : {}),\n },\n ];\n }\n\n public async sendRequest(\n request: [string, RequestInit],\n requestOptions?: RequestOptions,\n ): Promise<Response> {\n const [fullUrl, requestInit] = request;\n const timeout = requestOptions?.timeout ?? this.options.timeout;\n let headers = requestInit.headers;\n if (requestOptions?.accessToken !== undefined) {\n headers = new Headers(headers);\n headers.set(\"Authorization\", `Bearer ${requestOptions.accessToken}`);\n }\n let signal = requestInit.signal;\n if (timeout !== undefined) {\n const timeoutMilliseconds = Math.ceil(timeout * 1000);\n if (\n !Number.isFinite(timeout) ||\n timeout < 0 ||\n timeoutMilliseconds > MAX_ABORT_SIGNAL_TIMEOUT_MS\n ) {\n throw new RangeError(\n `Timeout must be a finite, non-negative number no greater than ${MAX_ABORT_SIGNAL_TIMEOUT_MS / 1000} seconds`,\n );\n }\n const timeoutSignal = AbortSignal.timeout(timeoutMilliseconds);\n signal = signal ? AbortSignal.any([signal, timeoutSignal]) : timeoutSignal;\n }\n try {\n return await fetch(fullUrl, {\n ...requestInit,\n headers,\n ...(signal ? { signal } : {}),\n });\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new PolarNetworkError(errorMessage);\n }\n }\n\n public async parseResponse<T>(\n response: Response,\n responseType: \"json\" | \"text\" | \"none\",\n errors?: Record<number, new (...args: any[]) => PolarClientError>,\n ): Promise<T> {\n const statusCode = response.status;\n\n if (statusCode >= 500 && statusCode < 600) {\n const text = await response.text().catch(() => \"\");\n throw new PolarServerError(statusCode, text || \"Server error\");\n }\n\n if (statusCode >= 400 && statusCode < 500) {\n if (statusCode === 429) {\n const retryAfter = response.headers.get(\"Retry-After\");\n throw new PolarRateLimitError(statusCode, retryAfter ? parseInt(retryAfter, 10) : null);\n }\n if (errors?.[statusCode]) {\n const ErrorClass = errors[statusCode];\n const errorData = await response.json();\n throw new ErrorClass(statusCode, errorData);\n } else {\n const text = await response.text().catch(() => \"\");\n throw new PolarClientError(statusCode, text || \"Client error\");\n }\n }\n\n if (responseType === \"json\") {\n return (await response.json()) as T;\n }\n if (responseType === \"text\") {\n return (await response.text()) as unknown as T;\n }\n\n return undefined as unknown as T;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base-CpxoQZCZ.mjs","names":[],"sources":["../src/base.ts"],"sourcesContent":["export class PolarError extends Error {}\n\nexport class PolarNetworkError extends PolarError {\n constructor(message: string) {\n super(`Polar API network error: ${message}`);\n this.name = \"PolarNetworkError\";\n }\n}\n\nexport class PolarServerError extends PolarError {\n constructor(statusCode: number, message: string) {\n super(`Polar API returned a server error: ${statusCode} - ${message}`);\n this.name = \"PolarServerError\";\n }\n}\n\nexport class PolarClientError<T = unknown> extends PolarError {\n constructor(\n public readonly statusCode: number,\n public readonly error: T,\n ) {\n super(`Polar API returned an error: ${statusCode} - ${JSON.stringify(error)}`);\n this.name = \"PolarClientError\";\n }\n}\n\nexport class PolarRateLimitError extends PolarClientError {\n constructor(\n public readonly statusCode: 429,\n public readonly retryAfter: number | null = null,\n ) {\n super(statusCode, \"Rate limit exceeded\");\n this.name = \"PolarRateLimitError\";\n }\n}\n\ntype PathParams = Record<string, string | number | boolean>;\ntype QueryParamValue =\n | string\n | string[]\n | number\n | number[]\n | boolean\n | boolean[]\n | null\n | undefined;\ninterface QueryParams {\n [key: string]: QueryParamValue | QueryParams;\n}\n\nconst buildUrl = (url: string, pathParams?: PathParams, queryParams?: QueryParams): string => {\n // Format URL with path params using string replacement\n let formattedUrl = url;\n if (pathParams) {\n for (const [key, value] of Object.entries(pathParams)) {\n if (value !== null && value !== undefined) {\n formattedUrl = formattedUrl.replace(`{${key}}`, encodeURIComponent(String(value)));\n }\n }\n }\n\n if (queryParams) {\n const searchParams = new URLSearchParams();\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== null && value !== undefined) {\n if (Array.isArray(value)) {\n for (const item of value) {\n searchParams.append(key, String(item));\n }\n } else if (typeof value === \"object\") {\n // Handle deepObject style parameters (e.g., metadata)\n for (const [subKey, subValue] of Object.entries(value)) {\n if (subValue !== null && subValue !== undefined) {\n if (Array.isArray(subValue)) {\n for (const item of subValue) {\n searchParams.append(`${key}[${subKey}]`, String(item));\n }\n } else {\n searchParams.append(`${key}[${subKey}]`, String(subValue));\n }\n }\n }\n } else {\n searchParams.append(key, String(value));\n }\n }\n }\n const queryString = searchParams.toString();\n if (queryString) {\n formattedUrl = `${formattedUrl}?${queryString}`;\n }\n }\n\n return formattedUrl;\n};\n\nexport interface ClientOptions {\n baseUrl: string;\n version: string;\n accessToken: string;\n /** Default request timeout, in seconds. */\n timeout?: number;\n}\n\nexport interface RequestOptions {\n /** Request timeout override, in seconds. */\n timeout?: number;\n /** Access token override for this request. */\n accessToken?: string;\n}\n\nconst MAX_ABORT_SIGNAL_TIMEOUT_MS = 2_147_483_647;\n\nexport const resolveBaseUrl = (\n servers: Record<string, string>,\n environment: string,\n baseUrl?: string,\n): string => {\n if (baseUrl !== undefined) {\n return baseUrl;\n }\n const serverUrl = servers[environment];\n if (serverUrl === undefined) {\n throw new Error(\n `Invalid environment ${JSON.stringify(environment)}. Expected one of: ${Object.keys(servers).sort().join(\", \")}.`,\n );\n }\n return serverUrl;\n};\n\nexport class ClientBase {\n protected readonly options: ClientOptions;\n\n constructor(options: ClientOptions) {\n this.options = {\n timeout: 5.0,\n ...options,\n };\n }\n\n public buildRequest(\n method: string,\n url: string,\n pathParams?: PathParams,\n queryParams?: QueryParams,\n body?: unknown,\n ): [string, RequestInit] {\n const fullUrl = buildUrl(`${this.options.baseUrl}${url}`, pathParams, queryParams);\n const headers = new Headers({\n \"Content-Type\": \"application/json\",\n \"Polar-Version\": this.options.version,\n Authorization: `Bearer ${this.options.accessToken}`,\n });\n return [\n fullUrl,\n {\n method,\n headers,\n ...(body ? { body: JSON.stringify(body) } : {}),\n },\n ];\n }\n\n public async sendRequest(\n request: [string, RequestInit],\n requestOptions?: RequestOptions,\n ): Promise<Response> {\n const [fullUrl, requestInit] = request;\n const timeout = requestOptions?.timeout ?? this.options.timeout;\n let headers = requestInit.headers;\n if (requestOptions?.accessToken !== undefined) {\n headers = new Headers(headers);\n headers.set(\"Authorization\", `Bearer ${requestOptions.accessToken}`);\n }\n let signal = requestInit.signal;\n if (timeout !== undefined) {\n const timeoutMilliseconds = Math.ceil(timeout * 1000);\n if (\n !Number.isFinite(timeout) ||\n timeout < 0 ||\n timeoutMilliseconds > MAX_ABORT_SIGNAL_TIMEOUT_MS\n ) {\n throw new RangeError(\n `Timeout must be a finite, non-negative number no greater than ${MAX_ABORT_SIGNAL_TIMEOUT_MS / 1000} seconds`,\n );\n }\n const timeoutSignal = AbortSignal.timeout(timeoutMilliseconds);\n signal = signal ? AbortSignal.any([signal, timeoutSignal]) : timeoutSignal;\n }\n try {\n return await fetch(fullUrl, {\n ...requestInit,\n headers,\n ...(signal ? { signal } : {}),\n });\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new PolarNetworkError(errorMessage);\n }\n }\n\n public async parseResponse<T>(\n response: Response,\n responseType: \"json\" | \"text\" | \"none\",\n errors?: Record<number, new (...args: any[]) => PolarClientError>,\n ): Promise<T> {\n const statusCode = response.status;\n\n if (statusCode >= 500 && statusCode < 600) {\n const text = await response.text().catch(() => \"\");\n throw new PolarServerError(statusCode, text || \"Server error\");\n }\n\n if (statusCode >= 400 && statusCode < 500) {\n if (statusCode === 429) {\n const retryAfter = response.headers.get(\"Retry-After\");\n if (!retryAfter && errors?.[statusCode]) {\n const ErrorClass = errors[statusCode];\n const errorData = await response.json();\n throw new ErrorClass(statusCode, errorData);\n }\n throw new PolarRateLimitError(statusCode, retryAfter ? parseInt(retryAfter, 10) : null);\n }\n if (errors?.[statusCode]) {\n const ErrorClass = errors[statusCode];\n const errorData = await response.json();\n throw new ErrorClass(statusCode, errorData);\n } else {\n const text = await response.text().catch(() => \"\");\n throw new PolarClientError(statusCode, text || \"Client error\");\n }\n }\n\n if (responseType === \"json\") {\n return (await response.json()) as T;\n }\n if (responseType === \"text\") {\n return (await response.text()) as unknown as T;\n }\n\n return undefined as unknown as T;\n }\n}\n"],"mappings":"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"}
|
|
@@ -110,6 +110,10 @@ var ClientBase = class {
|
|
|
110
110
|
if (statusCode >= 400 && statusCode < 500) {
|
|
111
111
|
if (statusCode === 429) {
|
|
112
112
|
const retryAfter = response.headers.get("Retry-After");
|
|
113
|
+
if (!retryAfter && errors?.[statusCode]) {
|
|
114
|
+
const ErrorClass = errors[statusCode];
|
|
115
|
+
throw new ErrorClass(statusCode, await response.json());
|
|
116
|
+
}
|
|
113
117
|
throw new PolarRateLimitError(statusCode, retryAfter ? parseInt(retryAfter, 10) : null);
|
|
114
118
|
}
|
|
115
119
|
if (errors?.[statusCode]) {
|
|
@@ -165,4 +169,4 @@ Object.defineProperty(exports, "resolveBaseUrl", {
|
|
|
165
169
|
}
|
|
166
170
|
});
|
|
167
171
|
|
|
168
|
-
//# sourceMappingURL=base-
|
|
172
|
+
//# sourceMappingURL=base-D83CMR-Q.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-LHtsGbZ7.cjs","names":[],"sources":["../src/base.ts"],"sourcesContent":["export class PolarError extends Error {}\n\nexport class PolarNetworkError extends PolarError {\n constructor(message: string) {\n super(`Polar API network error: ${message}`);\n this.name = \"PolarNetworkError\";\n }\n}\n\nexport class PolarServerError extends PolarError {\n constructor(statusCode: number, message: string) {\n super(`Polar API returned a server error: ${statusCode} - ${message}`);\n this.name = \"PolarServerError\";\n }\n}\n\nexport class PolarClientError<T = unknown> extends PolarError {\n constructor(\n public readonly statusCode: number,\n public readonly error: T,\n ) {\n super(`Polar API returned an error: ${statusCode} - ${JSON.stringify(error)}`);\n this.name = \"PolarClientError\";\n }\n}\n\nexport class PolarRateLimitError extends PolarClientError {\n constructor(\n public readonly statusCode: 429,\n public readonly retryAfter: number | null = null,\n ) {\n super(statusCode, \"Rate limit exceeded\");\n this.name = \"PolarRateLimitError\";\n }\n}\n\ntype PathParams = Record<string, string | number | boolean>;\ntype QueryParamValue =\n | string\n | string[]\n | number\n | number[]\n | boolean\n | boolean[]\n | null\n | undefined;\ninterface QueryParams {\n [key: string]: QueryParamValue | QueryParams;\n}\n\nconst buildUrl = (url: string, pathParams?: PathParams, queryParams?: QueryParams): string => {\n // Format URL with path params using string replacement\n let formattedUrl = url;\n if (pathParams) {\n for (const [key, value] of Object.entries(pathParams)) {\n if (value !== null && value !== undefined) {\n formattedUrl = formattedUrl.replace(`{${key}}`, encodeURIComponent(String(value)));\n }\n }\n }\n\n if (queryParams) {\n const searchParams = new URLSearchParams();\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== null && value !== undefined) {\n if (Array.isArray(value)) {\n for (const item of value) {\n searchParams.append(key, String(item));\n }\n } else if (typeof value === \"object\") {\n // Handle deepObject style parameters (e.g., metadata)\n for (const [subKey, subValue] of Object.entries(value)) {\n if (subValue !== null && subValue !== undefined) {\n if (Array.isArray(subValue)) {\n for (const item of subValue) {\n searchParams.append(`${key}[${subKey}]`, String(item));\n }\n } else {\n searchParams.append(`${key}[${subKey}]`, String(subValue));\n }\n }\n }\n } else {\n searchParams.append(key, String(value));\n }\n }\n }\n const queryString = searchParams.toString();\n if (queryString) {\n formattedUrl = `${formattedUrl}?${queryString}`;\n }\n }\n\n return formattedUrl;\n};\n\nexport interface ClientOptions {\n baseUrl: string;\n version: string;\n accessToken: string;\n /** Default request timeout, in seconds. */\n timeout?: number;\n}\n\nexport interface RequestOptions {\n /** Request timeout override, in seconds. */\n timeout?: number;\n /** Access token override for this request. */\n accessToken?: string;\n}\n\nconst MAX_ABORT_SIGNAL_TIMEOUT_MS = 2_147_483_647;\n\nexport const resolveBaseUrl = (\n servers: Record<string, string>,\n environment: string,\n baseUrl?: string,\n): string => {\n if (baseUrl !== undefined) {\n return baseUrl;\n }\n const serverUrl = servers[environment];\n if (serverUrl === undefined) {\n throw new Error(\n `Invalid environment ${JSON.stringify(environment)}. Expected one of: ${Object.keys(servers).sort().join(\", \")}.`,\n );\n }\n return serverUrl;\n};\n\nexport class ClientBase {\n protected readonly options: ClientOptions;\n\n constructor(options: ClientOptions) {\n this.options = {\n timeout: 5.0,\n ...options,\n };\n }\n\n public buildRequest(\n method: string,\n url: string,\n pathParams?: PathParams,\n queryParams?: QueryParams,\n body?: unknown,\n ): [string, RequestInit] {\n const fullUrl = buildUrl(`${this.options.baseUrl}${url}`, pathParams, queryParams);\n const headers = new Headers({\n \"Content-Type\": \"application/json\",\n \"Polar-Version\": this.options.version,\n Authorization: `Bearer ${this.options.accessToken}`,\n });\n return [\n fullUrl,\n {\n method,\n headers,\n ...(body ? { body: JSON.stringify(body) } : {}),\n },\n ];\n }\n\n public async sendRequest(\n request: [string, RequestInit],\n requestOptions?: RequestOptions,\n ): Promise<Response> {\n const [fullUrl, requestInit] = request;\n const timeout = requestOptions?.timeout ?? this.options.timeout;\n let headers = requestInit.headers;\n if (requestOptions?.accessToken !== undefined) {\n headers = new Headers(headers);\n headers.set(\"Authorization\", `Bearer ${requestOptions.accessToken}`);\n }\n let signal = requestInit.signal;\n if (timeout !== undefined) {\n const timeoutMilliseconds = Math.ceil(timeout * 1000);\n if (\n !Number.isFinite(timeout) ||\n timeout < 0 ||\n timeoutMilliseconds > MAX_ABORT_SIGNAL_TIMEOUT_MS\n ) {\n throw new RangeError(\n `Timeout must be a finite, non-negative number no greater than ${MAX_ABORT_SIGNAL_TIMEOUT_MS / 1000} seconds`,\n );\n }\n const timeoutSignal = AbortSignal.timeout(timeoutMilliseconds);\n signal = signal ? AbortSignal.any([signal, timeoutSignal]) : timeoutSignal;\n }\n try {\n return await fetch(fullUrl, {\n ...requestInit,\n headers,\n ...(signal ? { signal } : {}),\n });\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new PolarNetworkError(errorMessage);\n }\n }\n\n public async parseResponse<T>(\n response: Response,\n responseType: \"json\" | \"text\" | \"none\",\n errors?: Record<number, new (...args: any[]) => PolarClientError>,\n ): Promise<T> {\n const statusCode = response.status;\n\n if (statusCode >= 500 && statusCode < 600) {\n const text = await response.text().catch(() => \"\");\n throw new PolarServerError(statusCode, text || \"Server error\");\n }\n\n if (statusCode >= 400 && statusCode < 500) {\n if (statusCode === 429) {\n const retryAfter = response.headers.get(\"Retry-After\");\n throw new PolarRateLimitError(statusCode, retryAfter ? parseInt(retryAfter, 10) : null);\n }\n if (errors?.[statusCode]) {\n const ErrorClass = errors[statusCode];\n const errorData = await response.json();\n throw new ErrorClass(statusCode, errorData);\n } else {\n const text = await response.text().catch(() => \"\");\n throw new PolarClientError(statusCode, text || \"Client error\");\n }\n }\n\n if (responseType === \"json\") {\n return (await response.json()) as T;\n }\n if (responseType === \"text\") {\n return (await response.text()) as unknown as T;\n }\n\n return undefined as unknown as T;\n }\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base-D83CMR-Q.cjs","names":[],"sources":["../src/base.ts"],"sourcesContent":["export class PolarError extends Error {}\n\nexport class PolarNetworkError extends PolarError {\n constructor(message: string) {\n super(`Polar API network error: ${message}`);\n this.name = \"PolarNetworkError\";\n }\n}\n\nexport class PolarServerError extends PolarError {\n constructor(statusCode: number, message: string) {\n super(`Polar API returned a server error: ${statusCode} - ${message}`);\n this.name = \"PolarServerError\";\n }\n}\n\nexport class PolarClientError<T = unknown> extends PolarError {\n constructor(\n public readonly statusCode: number,\n public readonly error: T,\n ) {\n super(`Polar API returned an error: ${statusCode} - ${JSON.stringify(error)}`);\n this.name = \"PolarClientError\";\n }\n}\n\nexport class PolarRateLimitError extends PolarClientError {\n constructor(\n public readonly statusCode: 429,\n public readonly retryAfter: number | null = null,\n ) {\n super(statusCode, \"Rate limit exceeded\");\n this.name = \"PolarRateLimitError\";\n }\n}\n\ntype PathParams = Record<string, string | number | boolean>;\ntype QueryParamValue =\n | string\n | string[]\n | number\n | number[]\n | boolean\n | boolean[]\n | null\n | undefined;\ninterface QueryParams {\n [key: string]: QueryParamValue | QueryParams;\n}\n\nconst buildUrl = (url: string, pathParams?: PathParams, queryParams?: QueryParams): string => {\n // Format URL with path params using string replacement\n let formattedUrl = url;\n if (pathParams) {\n for (const [key, value] of Object.entries(pathParams)) {\n if (value !== null && value !== undefined) {\n formattedUrl = formattedUrl.replace(`{${key}}`, encodeURIComponent(String(value)));\n }\n }\n }\n\n if (queryParams) {\n const searchParams = new URLSearchParams();\n for (const [key, value] of Object.entries(queryParams)) {\n if (value !== null && value !== undefined) {\n if (Array.isArray(value)) {\n for (const item of value) {\n searchParams.append(key, String(item));\n }\n } else if (typeof value === \"object\") {\n // Handle deepObject style parameters (e.g., metadata)\n for (const [subKey, subValue] of Object.entries(value)) {\n if (subValue !== null && subValue !== undefined) {\n if (Array.isArray(subValue)) {\n for (const item of subValue) {\n searchParams.append(`${key}[${subKey}]`, String(item));\n }\n } else {\n searchParams.append(`${key}[${subKey}]`, String(subValue));\n }\n }\n }\n } else {\n searchParams.append(key, String(value));\n }\n }\n }\n const queryString = searchParams.toString();\n if (queryString) {\n formattedUrl = `${formattedUrl}?${queryString}`;\n }\n }\n\n return formattedUrl;\n};\n\nexport interface ClientOptions {\n baseUrl: string;\n version: string;\n accessToken: string;\n /** Default request timeout, in seconds. */\n timeout?: number;\n}\n\nexport interface RequestOptions {\n /** Request timeout override, in seconds. */\n timeout?: number;\n /** Access token override for this request. */\n accessToken?: string;\n}\n\nconst MAX_ABORT_SIGNAL_TIMEOUT_MS = 2_147_483_647;\n\nexport const resolveBaseUrl = (\n servers: Record<string, string>,\n environment: string,\n baseUrl?: string,\n): string => {\n if (baseUrl !== undefined) {\n return baseUrl;\n }\n const serverUrl = servers[environment];\n if (serverUrl === undefined) {\n throw new Error(\n `Invalid environment ${JSON.stringify(environment)}. Expected one of: ${Object.keys(servers).sort().join(\", \")}.`,\n );\n }\n return serverUrl;\n};\n\nexport class ClientBase {\n protected readonly options: ClientOptions;\n\n constructor(options: ClientOptions) {\n this.options = {\n timeout: 5.0,\n ...options,\n };\n }\n\n public buildRequest(\n method: string,\n url: string,\n pathParams?: PathParams,\n queryParams?: QueryParams,\n body?: unknown,\n ): [string, RequestInit] {\n const fullUrl = buildUrl(`${this.options.baseUrl}${url}`, pathParams, queryParams);\n const headers = new Headers({\n \"Content-Type\": \"application/json\",\n \"Polar-Version\": this.options.version,\n Authorization: `Bearer ${this.options.accessToken}`,\n });\n return [\n fullUrl,\n {\n method,\n headers,\n ...(body ? { body: JSON.stringify(body) } : {}),\n },\n ];\n }\n\n public async sendRequest(\n request: [string, RequestInit],\n requestOptions?: RequestOptions,\n ): Promise<Response> {\n const [fullUrl, requestInit] = request;\n const timeout = requestOptions?.timeout ?? this.options.timeout;\n let headers = requestInit.headers;\n if (requestOptions?.accessToken !== undefined) {\n headers = new Headers(headers);\n headers.set(\"Authorization\", `Bearer ${requestOptions.accessToken}`);\n }\n let signal = requestInit.signal;\n if (timeout !== undefined) {\n const timeoutMilliseconds = Math.ceil(timeout * 1000);\n if (\n !Number.isFinite(timeout) ||\n timeout < 0 ||\n timeoutMilliseconds > MAX_ABORT_SIGNAL_TIMEOUT_MS\n ) {\n throw new RangeError(\n `Timeout must be a finite, non-negative number no greater than ${MAX_ABORT_SIGNAL_TIMEOUT_MS / 1000} seconds`,\n );\n }\n const timeoutSignal = AbortSignal.timeout(timeoutMilliseconds);\n signal = signal ? AbortSignal.any([signal, timeoutSignal]) : timeoutSignal;\n }\n try {\n return await fetch(fullUrl, {\n ...requestInit,\n headers,\n ...(signal ? { signal } : {}),\n });\n } catch (error) {\n const errorMessage = error instanceof Error ? error.message : String(error);\n throw new PolarNetworkError(errorMessage);\n }\n }\n\n public async parseResponse<T>(\n response: Response,\n responseType: \"json\" | \"text\" | \"none\",\n errors?: Record<number, new (...args: any[]) => PolarClientError>,\n ): Promise<T> {\n const statusCode = response.status;\n\n if (statusCode >= 500 && statusCode < 600) {\n const text = await response.text().catch(() => \"\");\n throw new PolarServerError(statusCode, text || \"Server error\");\n }\n\n if (statusCode >= 400 && statusCode < 500) {\n if (statusCode === 429) {\n const retryAfter = response.headers.get(\"Retry-After\");\n if (!retryAfter && errors?.[statusCode]) {\n const ErrorClass = errors[statusCode];\n const errorData = await response.json();\n throw new ErrorClass(statusCode, errorData);\n }\n throw new PolarRateLimitError(statusCode, retryAfter ? parseInt(retryAfter, 10) : null);\n }\n if (errors?.[statusCode]) {\n const ErrorClass = errors[statusCode];\n const errorData = await response.json();\n throw new ErrorClass(statusCode, errorData);\n } else {\n const text = await response.text().catch(() => \"\");\n throw new PolarClientError(statusCode, text || \"Client error\");\n }\n }\n\n if (responseType === \"json\") {\n return (await response.json()) as T;\n }\n if (responseType === \"text\") {\n return (await response.text()) as unknown as T;\n }\n\n return undefined as unknown as T;\n }\n}\n"],"mappings":";AAAA,IAAa,aAAb,cAAgC,MAAM,CAAC;AAEvC,IAAa,oBAAb,cAAuC,WAAW;CAChD,YAAY,SAAiB;EAC3B,MAAM,4BAA4B,SAAS;EAC3C,KAAK,OAAO;CACd;AACF;AAEA,IAAa,mBAAb,cAAsC,WAAW;CAC/C,YAAY,YAAoB,SAAiB;EAC/C,MAAM,sCAAsC,WAAW,KAAK,SAAS;EACrE,KAAK,OAAO;CACd;AACF;AAEA,IAAa,mBAAb,cAAmD,WAAW;CAE1C;CACA;CAFlB,YACE,YACA,OACA;EACA,MAAM,gCAAgC,WAAW,KAAK,KAAK,UAAU,KAAK,GAAG;EAH7D,KAAA,aAAA;EACA,KAAA,QAAA;EAGhB,KAAK,OAAO;CACd;AACF;AAEA,IAAa,sBAAb,cAAyC,iBAAiB;CAEtC;CACA;CAFlB,YACE,YACA,aAA4C,MAC5C;EACA,MAAM,YAAY,qBAAqB;EAHvB,KAAA,aAAA;EACA,KAAA,aAAA;EAGhB,KAAK,OAAO;CACd;AACF;AAgBA,MAAM,YAAY,KAAa,YAAyB,gBAAsC;CAE5F,IAAI,eAAe;CACnB,IAAI,YACG;OAAA,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,UAAU,GAClD,IAAI,UAAU,QAAQ,UAAU,KAAA,GAC9B,eAAe,aAAa,QAAQ,IAAI,IAAI,IAAI,mBAAmB,OAAO,KAAK,CAAC,CAAC;CAAA;CAKvF,IAAI,aAAa;EACf,MAAM,eAAe,IAAI,gBAAgB;EACzC,KAAK,MAAM,CAAC,KAAK,UAAU,OAAO,QAAQ,WAAW,GACnD,IAAI,UAAU,QAAQ,UAAU,KAAA,GAAW;GACzC,IAAI,MAAM,QAAQ,KAAK,GACrB,KAAK,MAAM,QAAQ,OACjB,aAAa,OAAO,KAAK,OAAO,IAAI,CAAC;QAElC,IAAI,OAAO,UAAU,UAErB;SAAA,MAAM,CAAC,QAAQ,aAAa,OAAO,QAAQ,KAAK,GACnD,IAAI,aAAa,QAAQ,aAAa,KAAA,GAAW;KAC/C,IAAI,MAAM,QAAQ,QAAQ,GACxB,KAAK,MAAM,QAAQ,UACjB,aAAa,OAAO,GAAG,IAAI,GAAG,OAAO,IAAI,OAAO,IAAI,CAAC;UAGvD,aAAa,OAAO,GAAG,IAAI,GAAG,OAAO,IAAI,OAAO,QAAQ,CAAC;IAE7D;UAGF,aAAa,OAAO,KAAK,OAAO,KAAK,CAAC;EAE1C;EAEF,MAAM,cAAc,aAAa,SAAS;EAC1C,IAAI,aACF,eAAe,GAAG,aAAa,GAAG;CAEtC;CAEA,OAAO;AACT;AAiBA,MAAM,8BAA8B;AAEpC,MAAa,kBACX,SACA,aACA,YACW;CACX,IAAI,YAAY,KAAA,GACd,OAAO;CAET,MAAM,YAAY,QAAQ;CAC1B,IAAI,cAAc,KAAA,GAChB,MAAM,IAAI,MACR,uBAAuB,KAAK,UAAU,WAAW,EAAE,qBAAqB,OAAO,KAAK,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,KAAK,IAAI,EAAE,EACjH;CAEF,OAAO;AACT;AAEA,IAAa,aAAb,MAAwB;CACtB;CAEA,YAAY,SAAwB;EAClC,KAAK,UAAU;GACb,SAAS;GACT,GAAG;EACL;CACF;CAEA,aACE,QACA,KACA,YACA,aACA,MACuB;EAOvB,OAAO,CANS,SAAS,GAAG,KAAK,QAAQ,UAAU,OAAO,YAAY,WAO9D,GACN;GACE;GACA,SAAA,IATgB,QAAQ;IAC1B,gBAAgB;IAChB,iBAAiB,KAAK,QAAQ;IAC9B,eAAe,UAAU,KAAK,QAAQ;GACxC,CAKU;GACN,GAAI,OAAO,EAAE,MAAM,KAAK,UAAU,IAAI,EAAE,IAAI,CAAC;EAC/C,CACF;CACF;CAEA,MAAa,YACX,SACA,gBACmB;EACnB,MAAM,CAAC,SAAS,eAAe;EAC/B,MAAM,UAAU,gBAAgB,WAAW,KAAK,QAAQ;EACxD,IAAI,UAAU,YAAY;EAC1B,IAAI,gBAAgB,gBAAgB,KAAA,GAAW;GAC7C,UAAU,IAAI,QAAQ,OAAO;GAC7B,QAAQ,IAAI,iBAAiB,UAAU,eAAe,aAAa;EACrE;EACA,IAAI,SAAS,YAAY;EACzB,IAAI,YAAY,KAAA,GAAW;GACzB,MAAM,sBAAsB,KAAK,KAAK,UAAU,GAAI;GACpD,IACE,CAAC,OAAO,SAAS,OAAO,KACxB,UAAU,KACV,sBAAsB,6BAEtB,MAAM,IAAI,WACR,iEAAiE,8BAA8B,IAAK,SACtG;GAEF,MAAM,gBAAgB,YAAY,QAAQ,mBAAmB;GAC7D,SAAS,SAAS,YAAY,IAAI,CAAC,QAAQ,aAAa,CAAC,IAAI;EAC/D;EACA,IAAI;GACF,OAAO,MAAM,MAAM,SAAS;IAC1B,GAAG;IACH;IACA,GAAI,SAAS,EAAE,OAAO,IAAI,CAAC;GAC7B,CAAC;EACH,SAAS,OAAO;GAEd,MAAM,IAAI,kBADW,iBAAiB,QAAQ,MAAM,UAAU,OAAO,KAAK,CAClC;EAC1C;CACF;CAEA,MAAa,cACX,UACA,cACA,QACY;EACZ,MAAM,aAAa,SAAS;EAE5B,IAAI,cAAc,OAAO,aAAa,KAEpC,MAAM,IAAI,iBAAiB,YAAY,MADpB,SAAS,KAAK,CAAC,CAAC,YAAY,EAAE,KACF,cAAc;EAG/D,IAAI,cAAc,OAAO,aAAa,KAAK;GACzC,IAAI,eAAe,KAAK;IACtB,MAAM,aAAa,SAAS,QAAQ,IAAI,aAAa;IACrD,IAAI,CAAC,cAAc,SAAS,aAAa;KACvC,MAAM,aAAa,OAAO;KAE1B,MAAM,IAAI,WAAW,YAAY,MADT,SAAS,KAAK,CACI;IAC5C;IACA,MAAM,IAAI,oBAAoB,YAAY,aAAa,SAAS,YAAY,EAAE,IAAI,IAAI;GACxF;GACA,IAAI,SAAS,aAAa;IACxB,MAAM,aAAa,OAAO;IAE1B,MAAM,IAAI,WAAW,YAAY,MADT,SAAS,KAAK,CACI;GAC5C,OAEE,MAAM,IAAI,iBAAiB,YAAY,MADpB,SAAS,KAAK,CAAC,CAAC,YAAY,EAAE,KACF,cAAc;EAEjE;EAEA,IAAI,iBAAiB,QACnB,OAAQ,MAAM,SAAS,KAAK;EAE9B,IAAI,iBAAiB,QACnB,OAAQ,MAAM,SAAS,KAAK;CAIhC;AACF"}
|