@withpotter/lib 0.13.0-next.101
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/__fixtures__/demo-content-server.json +484 -0
- package/dist/accessibility-context.d.ts +27 -0
- package/dist/accessibility-context.js +107 -0
- package/dist/accessibility-context.js.map +1 -0
- package/dist/active-workspace.d.ts +45 -0
- package/dist/active-workspace.js +34 -0
- package/dist/active-workspace.js.map +1 -0
- package/dist/admin-account-officer-api.d.ts +13 -0
- package/dist/admin-account-officer-api.js +12 -0
- package/dist/admin-account-officer-api.js.map +1 -0
- package/dist/admin-account-types.d.ts +122 -0
- package/dist/admin-account-types.js +1 -0
- package/dist/admin-account-types.js.map +1 -0
- package/dist/admin-adoption-api.d.ts +35 -0
- package/dist/admin-adoption-api.js +16 -0
- package/dist/admin-adoption-api.js.map +1 -0
- package/dist/admin-api.d.ts +1219 -0
- package/dist/admin-api.js +325 -0
- package/dist/admin-api.js.map +1 -0
- package/dist/admin-case-api.d.ts +32 -0
- package/dist/admin-case-api.js +63 -0
- package/dist/admin-case-api.js.map +1 -0
- package/dist/admin-case-types.d.ts +166 -0
- package/dist/admin-case-types.js +1 -0
- package/dist/admin-case-types.js.map +1 -0
- package/dist/admin-compliance-api.d.ts +31 -0
- package/dist/admin-compliance-api.js +20 -0
- package/dist/admin-compliance-api.js.map +1 -0
- package/dist/admin-country-api.d.ts +28 -0
- package/dist/admin-country-api.js +9 -0
- package/dist/admin-country-api.js.map +1 -0
- package/dist/admin-currency-types.d.ts +138 -0
- package/dist/admin-currency-types.js +1 -0
- package/dist/admin-currency-types.js.map +1 -0
- package/dist/admin-feedback-api.d.ts +215 -0
- package/dist/admin-feedback-api.js +63 -0
- package/dist/admin-feedback-api.js.map +1 -0
- package/dist/admin-inbox-seen.d.ts +22 -0
- package/dist/admin-inbox-seen.js +47 -0
- package/dist/admin-inbox-seen.js.map +1 -0
- package/dist/admin-ledger-api.d.ts +85 -0
- package/dist/admin-ledger-api.js +30 -0
- package/dist/admin-ledger-api.js.map +1 -0
- package/dist/admin-money-api.d.ts +127 -0
- package/dist/admin-money-api.js +125 -0
- package/dist/admin-money-api.js.map +1 -0
- package/dist/admin-newsletter-contacts-api.d.ts +70 -0
- package/dist/admin-newsletter-contacts-api.js +20 -0
- package/dist/admin-newsletter-contacts-api.js.map +1 -0
- package/dist/admin-newsletter-deliveries-api.d.ts +47 -0
- package/dist/admin-newsletter-deliveries-api.js +16 -0
- package/dist/admin-newsletter-deliveries-api.js.map +1 -0
- package/dist/admin-newsletters-api.d.ts +118 -0
- package/dist/admin-newsletters-api.js +47 -0
- package/dist/admin-newsletters-api.js.map +1 -0
- package/dist/admin-pos-api.d.ts +16 -0
- package/dist/admin-pos-api.js +35 -0
- package/dist/admin-pos-api.js.map +1 -0
- package/dist/admin-pos-query.d.ts +43 -0
- package/dist/admin-pos-query.js +55 -0
- package/dist/admin-pos-query.js.map +1 -0
- package/dist/admin-pos-types.d.ts +122 -0
- package/dist/admin-pos-types.js +1 -0
- package/dist/admin-pos-types.js.map +1 -0
- package/dist/admin-pricing-api.d.ts +88 -0
- package/dist/admin-pricing-api.js +66 -0
- package/dist/admin-pricing-api.js.map +1 -0
- package/dist/admin-readiness-api.d.ts +25 -0
- package/dist/admin-readiness-api.js +39 -0
- package/dist/admin-readiness-api.js.map +1 -0
- package/dist/admin-sales-api.d.ts +124 -0
- package/dist/admin-sales-api.js +41 -0
- package/dist/admin-sales-api.js.map +1 -0
- package/dist/admin-saved-replies-api.d.ts +35 -0
- package/dist/admin-saved-replies-api.js +70 -0
- package/dist/admin-saved-replies-api.js.map +1 -0
- package/dist/admin-service-operations-api.d.ts +142 -0
- package/dist/admin-service-operations-api.js +52 -0
- package/dist/admin-service-operations-api.js.map +1 -0
- package/dist/admin-signatures-api.d.ts +57 -0
- package/dist/admin-signatures-api.js +15 -0
- package/dist/admin-signatures-api.js.map +1 -0
- package/dist/admin-support-analytics-api.d.ts +36 -0
- package/dist/admin-support-analytics-api.js +71 -0
- package/dist/admin-support-analytics-api.js.map +1 -0
- package/dist/admin-tenant-setup-types.d.ts +85 -0
- package/dist/admin-tenant-setup-types.js +1 -0
- package/dist/admin-tenant-setup-types.js.map +1 -0
- package/dist/admin-tenants-query.d.ts +14 -0
- package/dist/admin-tenants-query.js +17 -0
- package/dist/admin-tenants-query.js.map +1 -0
- package/dist/analytics/PostHogProvider.d.ts +25 -0
- package/dist/analytics/PostHogProvider.js +44 -0
- package/dist/analytics/PostHogProvider.js.map +1 -0
- package/dist/analytics/index.d.ts +1 -0
- package/dist/analytics/index.js +11 -0
- package/dist/analytics/index.js.map +1 -0
- package/dist/analytics.d.ts +1 -0
- package/dist/analytics.js +1 -0
- package/dist/api/abandoned-cart.d.ts +18 -0
- package/dist/api/abandoned-cart.js +68 -0
- package/dist/api/abandoned-cart.js.map +1 -0
- package/dist/api/accounts.d.ts +176 -0
- package/dist/api/accounts.js +194 -0
- package/dist/api/accounts.js.map +1 -0
- package/dist/api/analytics-patterns.d.ts +18 -0
- package/dist/api/analytics-patterns.js +52 -0
- package/dist/api/analytics-patterns.js.map +1 -0
- package/dist/api/analytics.d.ts +143 -0
- package/dist/api/analytics.js +379 -0
- package/dist/api/analytics.js.map +1 -0
- package/dist/api/assignee-prefs.d.ts +7 -0
- package/dist/api/assignee-prefs.js +17 -0
- package/dist/api/assignee-prefs.js.map +1 -0
- package/dist/api/automations.d.ts +73 -0
- package/dist/api/automations.js +102 -0
- package/dist/api/automations.js.map +1 -0
- package/dist/api/behaviors.d.ts +15 -0
- package/dist/api/behaviors.js +15 -0
- package/dist/api/behaviors.js.map +1 -0
- package/dist/api/bio.d.ts +7 -0
- package/dist/api/bio.js +17 -0
- package/dist/api/bio.js.map +1 -0
- package/dist/api/booking-calendar.d.ts +14 -0
- package/dist/api/booking-calendar.js +33 -0
- package/dist/api/booking-calendar.js.map +1 -0
- package/dist/api/bookings.d.ts +199 -0
- package/dist/api/bookings.js +284 -0
- package/dist/api/bookings.js.map +1 -0
- package/dist/api/business-devices.d.ts +108 -0
- package/dist/api/business-devices.js +139 -0
- package/dist/api/business-devices.js.map +1 -0
- package/dist/api/business-locations.d.ts +26 -0
- package/dist/api/business-locations.js +39 -0
- package/dist/api/business-locations.js.map +1 -0
- package/dist/api/cache-bus.d.ts +56 -0
- package/dist/api/cache-bus.js +18 -0
- package/dist/api/cache-bus.js.map +1 -0
- package/dist/api/calendar-sync.d.ts +49 -0
- package/dist/api/calendar-sync.js +50 -0
- package/dist/api/calendar-sync.js.map +1 -0
- package/dist/api/campaign-initiatives.d.ts +115 -0
- package/dist/api/campaign-initiatives.js +42 -0
- package/dist/api/campaign-initiatives.js.map +1 -0
- package/dist/api/campaigns.d.ts +89 -0
- package/dist/api/campaigns.js +100 -0
- package/dist/api/campaigns.js.map +1 -0
- package/dist/api/capabilities.d.ts +12 -0
- package/dist/api/capabilities.js +16 -0
- package/dist/api/capabilities.js.map +1 -0
- package/dist/api/commerce.d.ts +19 -0
- package/dist/api/commerce.js +31 -0
- package/dist/api/commerce.js.map +1 -0
- package/dist/api/communications.d.ts +166 -0
- package/dist/api/communications.js +141 -0
- package/dist/api/communications.js.map +1 -0
- package/dist/api/connect.d.ts +72 -0
- package/dist/api/connect.js +50 -0
- package/dist/api/connect.js.map +1 -0
- package/dist/api/content.d.ts +146 -0
- package/dist/api/content.js +187 -0
- package/dist/api/content.js.map +1 -0
- package/dist/api/conversations.d.ts +79 -0
- package/dist/api/conversations.js +41 -0
- package/dist/api/conversations.js.map +1 -0
- package/dist/api/core.d.ts +62 -0
- package/dist/api/core.js +223 -0
- package/dist/api/core.js.map +1 -0
- package/dist/api/credentials.d.ts +65 -0
- package/dist/api/credentials.js +48 -0
- package/dist/api/credentials.js.map +1 -0
- package/dist/api/credits.d.ts +96 -0
- package/dist/api/credits.js +24 -0
- package/dist/api/credits.js.map +1 -0
- package/dist/api/crm-analytics.d.ts +10 -0
- package/dist/api/crm-analytics.js +22 -0
- package/dist/api/crm-analytics.js.map +1 -0
- package/dist/api/crm-segments.d.ts +14 -0
- package/dist/api/crm-segments.js +42 -0
- package/dist/api/crm-segments.js.map +1 -0
- package/dist/api/deliveries.d.ts +99 -0
- package/dist/api/deliveries.js +37 -0
- package/dist/api/deliveries.js.map +1 -0
- package/dist/api/demo-content.d.ts +104 -0
- package/dist/api/demo-content.js +36 -0
- package/dist/api/demo-content.js.map +1 -0
- package/dist/api/device-shifts.d.ts +56 -0
- package/dist/api/device-shifts.js +50 -0
- package/dist/api/device-shifts.js.map +1 -0
- package/dist/api/devices.d.ts +6 -0
- package/dist/api/devices.js +10 -0
- package/dist/api/devices.js.map +1 -0
- package/dist/api/digital-files.d.ts +22 -0
- package/dist/api/digital-files.js +55 -0
- package/dist/api/digital-files.js.map +1 -0
- package/dist/api/discounts.d.ts +29 -0
- package/dist/api/discounts.js +46 -0
- package/dist/api/discounts.js.map +1 -0
- package/dist/api/disputes.d.ts +47 -0
- package/dist/api/disputes.js +42 -0
- package/dist/api/disputes.js.map +1 -0
- package/dist/api/feature-locked.d.ts +11 -0
- package/dist/api/feature-locked.js +18 -0
- package/dist/api/feature-locked.js.map +1 -0
- package/dist/api/feedback-prompts.d.ts +45 -0
- package/dist/api/feedback-prompts.js +85 -0
- package/dist/api/feedback-prompts.js.map +1 -0
- package/dist/api/feedback.d.ts +254 -0
- package/dist/api/feedback.js +108 -0
- package/dist/api/feedback.js.map +1 -0
- package/dist/api/finance.d.ts +199 -0
- package/dist/api/finance.js +203 -0
- package/dist/api/finance.js.map +1 -0
- package/dist/api/gallery.d.ts +30 -0
- package/dist/api/gallery.js +48 -0
- package/dist/api/gallery.js.map +1 -0
- package/dist/api/geo.d.ts +18 -0
- package/dist/api/geo.js +19 -0
- package/dist/api/geo.js.map +1 -0
- package/dist/api/giftcards.d.ts +63 -0
- package/dist/api/giftcards.js +63 -0
- package/dist/api/giftcards.js.map +1 -0
- package/dist/api/hardware-orders.d.ts +40 -0
- package/dist/api/hardware-orders.js +37 -0
- package/dist/api/hardware-orders.js.map +1 -0
- package/dist/api/index.d.ts +71 -0
- package/dist/api/index.js +78 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/inquiries.d.ts +92 -0
- package/dist/api/inquiries.js +129 -0
- package/dist/api/inquiries.js.map +1 -0
- package/dist/api/inventory.d.ts +133 -0
- package/dist/api/inventory.js +203 -0
- package/dist/api/inventory.js.map +1 -0
- package/dist/api/invite-body.d.ts +19 -0
- package/dist/api/invite-body.js +8 -0
- package/dist/api/invite-body.js.map +1 -0
- package/dist/api/invoices.d.ts +19 -0
- package/dist/api/invoices.js +80 -0
- package/dist/api/invoices.js.map +1 -0
- package/dist/api/locations.d.ts +15 -0
- package/dist/api/locations.js +30 -0
- package/dist/api/locations.js.map +1 -0
- package/dist/api/loyalty.d.ts +68 -0
- package/dist/api/loyalty.js +112 -0
- package/dist/api/loyalty.js.map +1 -0
- package/dist/api/marketing-consent.d.ts +36 -0
- package/dist/api/marketing-consent.js +11 -0
- package/dist/api/marketing-consent.js.map +1 -0
- package/dist/api/marketing-suppressions.d.ts +81 -0
- package/dist/api/marketing-suppressions.js +65 -0
- package/dist/api/marketing-suppressions.js.map +1 -0
- package/dist/api/members.d.ts +79 -0
- package/dist/api/members.js +148 -0
- package/dist/api/members.js.map +1 -0
- package/dist/api/merchant-notifications.d.ts +27 -0
- package/dist/api/merchant-notifications.js +41 -0
- package/dist/api/merchant-notifications.js.map +1 -0
- package/dist/api/merchant-referrals.d.ts +23 -0
- package/dist/api/merchant-referrals.js +10 -0
- package/dist/api/merchant-referrals.js.map +1 -0
- package/dist/api/merchant-subscriptions.d.ts +117 -0
- package/dist/api/merchant-subscriptions.js +113 -0
- package/dist/api/merchant-subscriptions.js.map +1 -0
- package/dist/api/misc.d.ts +4 -0
- package/dist/api/misc.js +24 -0
- package/dist/api/misc.js.map +1 -0
- package/dist/api/odoo.d.ts +102 -0
- package/dist/api/odoo.js +36 -0
- package/dist/api/odoo.js.map +1 -0
- package/dist/api/onboarding.d.ts +48 -0
- package/dist/api/onboarding.js +78 -0
- package/dist/api/onboarding.js.map +1 -0
- package/dist/api/orders.d.ts +153 -0
- package/dist/api/orders.js +303 -0
- package/dist/api/orders.js.map +1 -0
- package/dist/api/organizations.d.ts +14 -0
- package/dist/api/organizations.js +19 -0
- package/dist/api/organizations.js.map +1 -0
- package/dist/api/packages.d.ts +16 -0
- package/dist/api/packages.js +25 -0
- package/dist/api/packages.js.map +1 -0
- package/dist/api/pages.d.ts +79 -0
- package/dist/api/pages.js +125 -0
- package/dist/api/pages.js.map +1 -0
- package/dist/api/payables.d.ts +34 -0
- package/dist/api/payables.js +70 -0
- package/dist/api/payables.js.map +1 -0
- package/dist/api/plan-refusal.d.ts +21 -0
- package/dist/api/plan-refusal.js +28 -0
- package/dist/api/plan-refusal.js.map +1 -0
- package/dist/api/pos.d.ts +66 -0
- package/dist/api/pos.js +115 -0
- package/dist/api/pos.js.map +1 -0
- package/dist/api/potter.d.ts +114 -0
- package/dist/api/potter.js +88 -0
- package/dist/api/potter.js.map +1 -0
- package/dist/api/push.d.ts +25 -0
- package/dist/api/push.js +23 -0
- package/dist/api/push.js.map +1 -0
- package/dist/api/referrals.d.ts +10 -0
- package/dist/api/referrals.js +16 -0
- package/dist/api/referrals.js.map +1 -0
- package/dist/api/resource-categories.d.ts +35 -0
- package/dist/api/resource-categories.js +76 -0
- package/dist/api/resource-categories.js.map +1 -0
- package/dist/api/resources.d.ts +54 -0
- package/dist/api/resources.js +92 -0
- package/dist/api/resources.js.map +1 -0
- package/dist/api/reviews.d.ts +18 -0
- package/dist/api/reviews.js +46 -0
- package/dist/api/reviews.js.map +1 -0
- package/dist/api/riders.d.ts +70 -0
- package/dist/api/riders.js +24 -0
- package/dist/api/riders.js.map +1 -0
- package/dist/api/role-permissions.d.ts +25 -0
- package/dist/api/role-permissions.js +47 -0
- package/dist/api/role-permissions.js.map +1 -0
- package/dist/api/sales-channels.d.ts +234 -0
- package/dist/api/sales-channels.js +119 -0
- package/dist/api/sales-channels.js.map +1 -0
- package/dist/api/service-missing.d.ts +10 -0
- package/dist/api/service-missing.js +19 -0
- package/dist/api/service-missing.js.map +1 -0
- package/dist/api/session-refresh.d.ts +18 -0
- package/dist/api/session-refresh.js +37 -0
- package/dist/api/session-refresh.js.map +1 -0
- package/dist/api/session-scope.d.ts +35 -0
- package/dist/api/session-scope.js +53 -0
- package/dist/api/session-scope.js.map +1 -0
- package/dist/api/settlements.d.ts +106 -0
- package/dist/api/settlements.js +114 -0
- package/dist/api/settlements.js.map +1 -0
- package/dist/api/share-links.d.ts +46 -0
- package/dist/api/share-links.js +25 -0
- package/dist/api/share-links.js.map +1 -0
- package/dist/api/shift-notes.d.ts +19 -0
- package/dist/api/shift-notes.js +13 -0
- package/dist/api/shift-notes.js.map +1 -0
- package/dist/api/shipping.d.ts +42 -0
- package/dist/api/shipping.js +53 -0
- package/dist/api/shipping.js.map +1 -0
- package/dist/api/social-sources.d.ts +58 -0
- package/dist/api/social-sources.js +23 -0
- package/dist/api/social-sources.js.map +1 -0
- package/dist/api/tabs.d.ts +14 -0
- package/dist/api/tabs.js +39 -0
- package/dist/api/tabs.js.map +1 -0
- package/dist/api/team.d.ts +112 -0
- package/dist/api/team.js +144 -0
- package/dist/api/team.js.map +1 -0
- package/dist/api/template-settings.d.ts +26 -0
- package/dist/api/template-settings.js +36 -0
- package/dist/api/template-settings.js.map +1 -0
- package/dist/api/templates.d.ts +21 -0
- package/dist/api/templates.js +25 -0
- package/dist/api/templates.js.map +1 -0
- package/dist/api/tenant-slug.d.ts +13 -0
- package/dist/api/tenant-slug.js +18 -0
- package/dist/api/tenant-slug.js.map +1 -0
- package/dist/api/tenant.d.ts +33 -0
- package/dist/api/tenant.js +51 -0
- package/dist/api/tenant.js.map +1 -0
- package/dist/api/types/analytics-attribution.d.ts +43 -0
- package/dist/api/types/analytics-attribution.js +1 -0
- package/dist/api/types/analytics-attribution.js.map +1 -0
- package/dist/api/types/analytics.d.ts +465 -0
- package/dist/api/types/analytics.js +1 -0
- package/dist/api/types/analytics.js.map +1 -0
- package/dist/api/types/auth.d.ts +206 -0
- package/dist/api/types/auth.js +7 -0
- package/dist/api/types/auth.js.map +1 -0
- package/dist/api/types/automation-flow.d.ts +199 -0
- package/dist/api/types/automation-flow.js +1 -0
- package/dist/api/types/automation-flow.js.map +1 -0
- package/dist/api/types/bookings.d.ts +226 -0
- package/dist/api/types/bookings.js +1 -0
- package/dist/api/types/bookings.js.map +1 -0
- package/dist/api/types/campaigns.d.ts +262 -0
- package/dist/api/types/campaigns.js +1 -0
- package/dist/api/types/campaigns.js.map +1 -0
- package/dist/api/types/catalog.d.ts +273 -0
- package/dist/api/types/catalog.js +1 -0
- package/dist/api/types/catalog.js.map +1 -0
- package/dist/api/types/collections.d.ts +189 -0
- package/dist/api/types/collections.js +1 -0
- package/dist/api/types/collections.js.map +1 -0
- package/dist/api/types/crm.d.ts +264 -0
- package/dist/api/types/crm.js +1 -0
- package/dist/api/types/crm.js.map +1 -0
- package/dist/api/types/customers.d.ts +269 -0
- package/dist/api/types/customers.js +1 -0
- package/dist/api/types/customers.js.map +1 -0
- package/dist/api/types/devices.d.ts +390 -0
- package/dist/api/types/devices.js +1 -0
- package/dist/api/types/devices.js.map +1 -0
- package/dist/api/types/discounts.d.ts +237 -0
- package/dist/api/types/discounts.js +1 -0
- package/dist/api/types/discounts.js.map +1 -0
- package/dist/api/types/filters.d.ts +258 -0
- package/dist/api/types/filters.js +1 -0
- package/dist/api/types/filters.js.map +1 -0
- package/dist/api/types/index.d.ts +31 -0
- package/dist/api/types/index.js +25 -0
- package/dist/api/types/index.js.map +1 -0
- package/dist/api/types/inquiries.d.ts +266 -0
- package/dist/api/types/inquiries.js +1 -0
- package/dist/api/types/inquiries.js.map +1 -0
- package/dist/api/types/locations.d.ts +208 -0
- package/dist/api/types/locations.js +1 -0
- package/dist/api/types/locations.js.map +1 -0
- package/dist/api/types/onboarding.d.ts +311 -0
- package/dist/api/types/onboarding.js +1 -0
- package/dist/api/types/onboarding.js.map +1 -0
- package/dist/api/types/operations.d.ts +136 -0
- package/dist/api/types/operations.js +1 -0
- package/dist/api/types/operations.js.map +1 -0
- package/dist/api/types/orders.d.ts +242 -0
- package/dist/api/types/orders.js +1 -0
- package/dist/api/types/orders.js.map +1 -0
- package/dist/api/types/payables.d.ts +140 -0
- package/dist/api/types/payables.js +1 -0
- package/dist/api/types/payables.js.map +1 -0
- package/dist/api/types/pos.d.ts +121 -0
- package/dist/api/types/pos.js +5 -0
- package/dist/api/types/pos.js.map +1 -0
- package/dist/api/types/record-analytics.d.ts +95 -0
- package/dist/api/types/record-analytics.js +1 -0
- package/dist/api/types/record-analytics.js.map +1 -0
- package/dist/api/types/sales-patterns.d.ts +58 -0
- package/dist/api/types/sales-patterns.js +1 -0
- package/dist/api/types/sales-patterns.js.map +1 -0
- package/dist/api/types/tabs.d.ts +210 -0
- package/dist/api/types/tabs.js +1 -0
- package/dist/api/types/tabs.js.map +1 -0
- package/dist/api/types/templates.d.ts +398 -0
- package/dist/api/types/templates.js +1 -0
- package/dist/api/types/templates.js.map +1 -0
- package/dist/api/types/waitlist.d.ts +324 -0
- package/dist/api/types/waitlist.js +1 -0
- package/dist/api/types/waitlist.js.map +1 -0
- package/dist/api/types.d.ts +1 -0
- package/dist/api/types.js +1 -0
- package/dist/api/unserved-routes.d.ts +4 -0
- package/dist/api/unserved-routes.js +15 -0
- package/dist/api/unserved-routes.js.map +1 -0
- package/dist/api/waitlist.d.ts +80 -0
- package/dist/api/waitlist.js +85 -0
- package/dist/api/waitlist.js.map +1 -0
- package/dist/api.d.ts +1 -0
- package/dist/api.js +1 -0
- package/dist/app-name.d.ts +29 -0
- package/dist/app-name.js +11 -0
- package/dist/app-name.js.map +1 -0
- package/dist/arrival.d.ts +48 -0
- package/dist/arrival.js +34 -0
- package/dist/arrival.js.map +1 -0
- package/dist/auth-context.d.ts +90 -0
- package/dist/auth-context.js +732 -0
- package/dist/auth-context.js.map +1 -0
- package/dist/auth-session.d.ts +1 -0
- package/dist/auth-session.js +25 -0
- package/dist/auth-session.js.map +1 -0
- package/dist/bank-phone.d.ts +2 -0
- package/dist/bank-phone.js +12 -0
- package/dist/bank-phone.js.map +1 -0
- package/dist/behavior-config-types.d.ts +49 -0
- package/dist/behavior-config-types.js +1 -0
- package/dist/behavior-config-types.js.map +1 -0
- package/dist/behavior-context.d.ts +15 -0
- package/dist/behavior-context.js +38 -0
- package/dist/behavior-context.js.map +1 -0
- package/dist/behavior-fields.d.ts +41 -0
- package/dist/behavior-fields.js +20 -0
- package/dist/behavior-fields.js.map +1 -0
- package/dist/blog/__fixtures__/paste-hygiene.d.ts +7 -0
- package/dist/blog/__fixtures__/paste-hygiene.js +36 -0
- package/dist/blog/__fixtures__/paste-hygiene.js.map +1 -0
- package/dist/blog/density.d.ts +65 -0
- package/dist/blog/density.js +126 -0
- package/dist/blog/density.js.map +1 -0
- package/dist/blog/paste-hygiene.d.ts +3 -0
- package/dist/blog/paste-hygiene.js +168 -0
- package/dist/blog/paste-hygiene.js.map +1 -0
- package/dist/booking-location-label.d.ts +10 -0
- package/dist/booking-location-label.js +24 -0
- package/dist/booking-location-label.js.map +1 -0
- package/dist/booking-meeting-link.d.ts +48 -0
- package/dist/booking-meeting-link.js +40 -0
- package/dist/booking-meeting-link.js.map +1 -0
- package/dist/box-channels.d.ts +22 -0
- package/dist/box-channels.js +16 -0
- package/dist/box-channels.js.map +1 -0
- package/dist/box-delivery.d.ts +10 -0
- package/dist/box-delivery.js +5 -0
- package/dist/box-delivery.js.map +1 -0
- package/dist/box-inbox.d.ts +11 -0
- package/dist/box-inbox.js +5 -0
- package/dist/box-inbox.js.map +1 -0
- package/dist/box-letting.d.ts +14 -0
- package/dist/box-letting.js +7 -0
- package/dist/box-letting.js.map +1 -0
- package/dist/box-mark-paths.d.ts +28 -0
- package/dist/box-mark-paths.js +23 -0
- package/dist/box-mark-paths.js.map +1 -0
- package/dist/box-media.d.ts +9 -0
- package/dist/box-media.js +5 -0
- package/dist/box-media.js.map +1 -0
- package/dist/box-products.d.ts +16 -0
- package/dist/box-products.js +9 -0
- package/dist/box-products.js.map +1 -0
- package/dist/box-splits.d.ts +12 -0
- package/dist/box-splits.js +5 -0
- package/dist/box-splits.js.map +1 -0
- package/dist/brand.d.ts +26 -0
- package/dist/brand.js +22 -0
- package/dist/brand.js.map +1 -0
- package/dist/business-categories.d.ts +50 -0
- package/dist/business-categories.js +378 -0
- package/dist/business-categories.js.map +1 -0
- package/dist/business-intents.d.ts +31 -0
- package/dist/business-intents.js +142 -0
- package/dist/business-intents.js.map +1 -0
- package/dist/capability-context.d.ts +63 -0
- package/dist/capability-context.js +84 -0
- package/dist/capability-context.js.map +1 -0
- package/dist/carriers.d.ts +83 -0
- package/dist/carriers.js +124 -0
- package/dist/carriers.js.map +1 -0
- package/dist/commerce-build/api.d.ts +29 -0
- package/dist/commerce-build/api.js +152 -0
- package/dist/commerce-build/api.js.map +1 -0
- package/dist/commerce-build/contracts-profile.d.ts +83 -0
- package/dist/commerce-build/contracts-profile.js +1 -0
- package/dist/commerce-build/contracts-profile.js.map +1 -0
- package/dist/commerce-build/contracts-spec.d.ts +217 -0
- package/dist/commerce-build/contracts-spec.js +1 -0
- package/dist/commerce-build/contracts-spec.js.map +1 -0
- package/dist/commerce-build/contracts.d.ts +2 -0
- package/dist/commerce-build/contracts.js +1 -0
- package/dist/commerce-build/contracts.js.map +1 -0
- package/dist/commerce-build/launch-state.d.ts +20 -0
- package/dist/commerce-build/launch-state.js +72 -0
- package/dist/commerce-build/launch-state.js.map +1 -0
- package/dist/commerce-build/profile-utils.d.ts +5 -0
- package/dist/commerce-build/profile-utils.js +14 -0
- package/dist/commerce-build/profile-utils.js.map +1 -0
- package/dist/commerce-build/setup-flow.d.ts +10 -0
- package/dist/commerce-build/setup-flow.js +24 -0
- package/dist/commerce-build/setup-flow.js.map +1 -0
- package/dist/commerce-build/setup-session.d.ts +26 -0
- package/dist/commerce-build/setup-session.js +70 -0
- package/dist/commerce-build/setup-session.js.map +1 -0
- package/dist/commerce-build/turn-streaming.d.ts +21 -0
- package/dist/commerce-build/turn-streaming.js +113 -0
- package/dist/commerce-build/turn-streaming.js.map +1 -0
- package/dist/commerce-build/workspace-components.d.ts +23 -0
- package/dist/commerce-build/workspace-components.js +66 -0
- package/dist/commerce-build/workspace-components.js.map +1 -0
- package/dist/commerce-build/workspace-config.d.ts +7 -0
- package/dist/commerce-build/workspace-config.js +74 -0
- package/dist/commerce-build/workspace-config.js.map +1 -0
- package/dist/companion/config.d.ts +31 -0
- package/dist/companion/config.js +59 -0
- package/dist/companion/config.js.map +1 -0
- package/dist/connect/catalog.d.ts +32 -0
- package/dist/connect/catalog.js +268 -0
- package/dist/connect/catalog.js.map +1 -0
- package/dist/connect/fixtures/commands.d.ts +8 -0
- package/dist/connect/fixtures/commands.js +146 -0
- package/dist/connect/fixtures/commands.js.map +1 -0
- package/dist/connect/fixtures/connections.d.ts +21 -0
- package/dist/connect/fixtures/connections.js +370 -0
- package/dist/connect/fixtures/connections.js.map +1 -0
- package/dist/connect/fixtures/identities.d.ts +10 -0
- package/dist/connect/fixtures/identities.js +61 -0
- package/dist/connect/fixtures/identities.js.map +1 -0
- package/dist/connect/fixtures/index.d.ts +11 -0
- package/dist/connect/fixtures/index.js +11 -0
- package/dist/connect/fixtures/index.js.map +1 -0
- package/dist/connect/fixtures/usage.d.ts +2 -0
- package/dist/connect/fixtures/usage.js +21 -0
- package/dist/connect/fixtures/usage.js.map +1 -0
- package/dist/connect/fixtures.d.ts +1 -0
- package/dist/connect/fixtures.js +1 -0
- package/dist/connect/from-notifications.d.ts +3 -0
- package/dist/connect/from-notifications.js +78 -0
- package/dist/connect/from-notifications.js.map +1 -0
- package/dist/connect/identity.d.ts +67 -0
- package/dist/connect/identity.js +24 -0
- package/dist/connect/identity.js.map +1 -0
- package/dist/connect/index.d.ts +13 -0
- package/dist/connect/index.js +22 -0
- package/dist/connect/index.js.map +1 -0
- package/dist/connect/next-up.d.ts +18 -0
- package/dist/connect/next-up.js +45 -0
- package/dist/connect/next-up.js.map +1 -0
- package/dist/connect/types.d.ts +354 -0
- package/dist/connect/types.js +68 -0
- package/dist/connect/types.js.map +1 -0
- package/dist/connect/use-connect.d.ts +51 -0
- package/dist/connect/use-connect.js +85 -0
- package/dist/connect/use-connect.js.map +1 -0
- package/dist/connect.d.ts +1 -0
- package/dist/connect.js +1 -0
- package/dist/converted-tag.d.ts +7 -0
- package/dist/converted-tag.js +9 -0
- package/dist/converted-tag.js.map +1 -0
- package/dist/countries.d.ts +65 -0
- package/dist/countries.js +374 -0
- package/dist/countries.js.map +1 -0
- package/dist/country-regions.d.ts +12 -0
- package/dist/country-regions.js +36 -0
- package/dist/country-regions.js.map +1 -0
- package/dist/csv.d.ts +28 -0
- package/dist/csv.js +91 -0
- package/dist/csv.js.map +1 -0
- package/dist/currency.d.ts +5 -0
- package/dist/currency.js +25 -0
- package/dist/currency.js.map +1 -0
- package/dist/customer-helpers.d.ts +30 -0
- package/dist/customer-helpers.js +66 -0
- package/dist/customer-helpers.js.map +1 -0
- package/dist/customer-stage.d.ts +125 -0
- package/dist/customer-stage.js +113 -0
- package/dist/customer-stage.js.map +1 -0
- package/dist/dashboard-destinations.d.ts +5 -0
- package/dist/dashboard-destinations.js +29 -0
- package/dist/dashboard-destinations.js.map +1 -0
- package/dist/demo-content-mock.d.ts +22 -0
- package/dist/demo-content-mock.js +70 -0
- package/dist/demo-content-mock.js.map +1 -0
- package/dist/demo-content-poller.d.ts +33 -0
- package/dist/demo-content-poller.js +80 -0
- package/dist/demo-content-poller.js.map +1 -0
- package/dist/demo-content.d.ts +43 -0
- package/dist/demo-content.js +78 -0
- package/dist/demo-content.js.map +1 -0
- package/dist/describe-activity.d.ts +44 -0
- package/dist/describe-activity.js +16 -0
- package/dist/describe-activity.js.map +1 -0
- package/dist/describe-invite.d.ts +19 -0
- package/dist/describe-invite.js +46 -0
- package/dist/describe-invite.js.map +1 -0
- package/dist/design-schema.d.ts +76 -0
- package/dist/design-schema.js +47 -0
- package/dist/design-schema.js.map +1 -0
- package/dist/destination-alias.d.ts +43 -0
- package/dist/destination-alias.js +146 -0
- package/dist/destination-alias.js.map +1 -0
- package/dist/document-numbering.d.ts +40 -0
- package/dist/document-numbering.js +48 -0
- package/dist/document-numbering.js.map +1 -0
- package/dist/document-title.d.ts +22 -0
- package/dist/document-title.js +85 -0
- package/dist/document-title.js.map +1 -0
- package/dist/editor/row-ops.d.ts +39 -0
- package/dist/editor/row-ops.js +25 -0
- package/dist/editor/row-ops.js.map +1 -0
- package/dist/editor-agent/apply-proposal.d.ts +12 -0
- package/dist/editor-agent/apply-proposal.js +44 -0
- package/dist/editor-agent/apply-proposal.js.map +1 -0
- package/dist/editor-agent/contracts.d.ts +174 -0
- package/dist/editor-agent/contracts.js +1 -0
- package/dist/editor-agent/contracts.js.map +1 -0
- package/dist/editor-agent/converse.d.ts +34 -0
- package/dist/editor-agent/converse.js +141 -0
- package/dist/editor-agent/converse.js.map +1 -0
- package/dist/editor-agent/flag.d.ts +12 -0
- package/dist/editor-agent/flag.js +19 -0
- package/dist/editor-agent/flag.js.map +1 -0
- package/dist/editor-agent/template-document.d.ts +52 -0
- package/dist/editor-agent/template-document.js +50 -0
- package/dist/editor-agent/template-document.js.map +1 -0
- package/dist/editor-agent/use-converse.d.ts +30 -0
- package/dist/editor-agent/use-converse.js +130 -0
- package/dist/editor-agent/use-converse.js.map +1 -0
- package/dist/effective-module-labels.d.ts +17 -0
- package/dist/effective-module-labels.js +14 -0
- package/dist/effective-module-labels.js.map +1 -0
- package/dist/embedded-frame.d.ts +30 -0
- package/dist/embedded-frame.js +23 -0
- package/dist/embedded-frame.js.map +1 -0
- package/dist/empty-state-copy.d.ts +27 -0
- package/dist/empty-state-copy.js +167 -0
- package/dist/empty-state-copy.js.map +1 -0
- package/dist/end-session.d.ts +23 -0
- package/dist/end-session.js +30 -0
- package/dist/end-session.js.map +1 -0
- package/dist/file-intake.d.ts +65 -0
- package/dist/file-intake.js +162 -0
- package/dist/file-intake.js.map +1 -0
- package/dist/first-run.d.ts +5 -0
- package/dist/first-run.js +13 -0
- package/dist/first-run.js.map +1 -0
- package/dist/form-answers.d.ts +57 -0
- package/dist/form-answers.js +79 -0
- package/dist/form-answers.js.map +1 -0
- package/dist/form-draft.d.ts +30 -0
- package/dist/form-draft.js +73 -0
- package/dist/form-draft.js.map +1 -0
- package/dist/format.d.ts +29 -0
- package/dist/format.js +21 -0
- package/dist/format.js.map +1 -0
- package/dist/fulfilment-nav.d.ts +79 -0
- package/dist/fulfilment-nav.js +18 -0
- package/dist/fulfilment-nav.js.map +1 -0
- package/dist/go-live-gate.d.ts +55 -0
- package/dist/go-live-gate.js +17 -0
- package/dist/go-live-gate.js.map +1 -0
- package/dist/group-activity.d.ts +37 -0
- package/dist/group-activity.js +43 -0
- package/dist/group-activity.js.map +1 -0
- package/dist/haptic.d.ts +5 -0
- package/dist/haptic.js +16 -0
- package/dist/haptic.js.map +1 -0
- package/dist/help-topics.d.ts +77 -0
- package/dist/help-topics.js +308 -0
- package/dist/help-topics.js.map +1 -0
- package/dist/icon-resolver.d.ts +45 -0
- package/dist/icon-resolver.js +40 -0
- package/dist/icon-resolver.js.map +1 -0
- package/dist/icons/commerce.d.ts +9 -0
- package/dist/icons/commerce.js +168 -0
- package/dist/icons/commerce.js.map +1 -0
- package/dist/icons/core.d.ts +9 -0
- package/dist/icons/core.js +173 -0
- package/dist/icons/core.js.map +1 -0
- package/dist/icons/making.d.ts +9 -0
- package/dist/icons/making.js +209 -0
- package/dist/icons/making.js.map +1 -0
- package/dist/icons/places.d.ts +9 -0
- package/dist/icons/places.js +232 -0
- package/dist/icons/places.js.map +1 -0
- package/dist/icons/world.d.ts +9 -0
- package/dist/icons/world.js +87 -0
- package/dist/icons/world.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/industry-configs/beauty.d.ts +2 -0
- package/dist/industry-configs/beauty.js +152 -0
- package/dist/industry-configs/beauty.js.map +1 -0
- package/dist/industry-configs/creative.d.ts +2 -0
- package/dist/industry-configs/creative.js +131 -0
- package/dist/industry-configs/creative.js.map +1 -0
- package/dist/industry-configs/default.d.ts +2 -0
- package/dist/industry-configs/default.js +77 -0
- package/dist/industry-configs/default.js.map +1 -0
- package/dist/industry-configs/education.d.ts +2 -0
- package/dist/industry-configs/education.js +137 -0
- package/dist/industry-configs/education.js.map +1 -0
- package/dist/industry-configs/events.d.ts +2 -0
- package/dist/industry-configs/events.js +118 -0
- package/dist/industry-configs/events.js.map +1 -0
- package/dist/industry-configs/fashion.d.ts +2 -0
- package/dist/industry-configs/fashion.js +128 -0
- package/dist/industry-configs/fashion.js.map +1 -0
- package/dist/industry-configs/fitness.d.ts +2 -0
- package/dist/industry-configs/fitness.js +128 -0
- package/dist/industry-configs/fitness.js.map +1 -0
- package/dist/industry-configs/food.d.ts +2 -0
- package/dist/industry-configs/food.js +138 -0
- package/dist/industry-configs/food.js.map +1 -0
- package/dist/industry-configs/hospitality.d.ts +2 -0
- package/dist/industry-configs/hospitality.js +157 -0
- package/dist/industry-configs/hospitality.js.map +1 -0
- package/dist/industry-configs/index.d.ts +25 -0
- package/dist/industry-configs/index.js +77 -0
- package/dist/industry-configs/index.js.map +1 -0
- package/dist/industry-configs/professional.d.ts +2 -0
- package/dist/industry-configs/professional.js +129 -0
- package/dist/industry-configs/professional.js.map +1 -0
- package/dist/industry-configs/realestate.d.ts +2 -0
- package/dist/industry-configs/realestate.js +146 -0
- package/dist/industry-configs/realestate.js.map +1 -0
- package/dist/industry-configs/retail.d.ts +2 -0
- package/dist/industry-configs/retail.js +108 -0
- package/dist/industry-configs/retail.js.map +1 -0
- package/dist/industry-configs/services.d.ts +2 -0
- package/dist/industry-configs/services.js +120 -0
- package/dist/industry-configs/services.js.map +1 -0
- package/dist/industry-configs/technology.d.ts +2 -0
- package/dist/industry-configs/technology.js +120 -0
- package/dist/industry-configs/technology.js.map +1 -0
- package/dist/industry-configs/types.d.ts +99 -0
- package/dist/industry-configs/types.js +1 -0
- package/dist/industry-configs/types.js.map +1 -0
- package/dist/industry-configs/wellness.d.ts +2 -0
- package/dist/industry-configs/wellness.js +112 -0
- package/dist/industry-configs/wellness.js.map +1 -0
- package/dist/industry-configs.d.ts +1 -0
- package/dist/industry-configs.js +1 -0
- package/dist/intents/analytics-labels.d.ts +70 -0
- package/dist/intents/analytics-labels.js +39 -0
- package/dist/intents/analytics-labels.js.map +1 -0
- package/dist/intents/archetype-flow.d.ts +146 -0
- package/dist/intents/archetype-flow.js +185 -0
- package/dist/intents/archetype-flow.js.map +1 -0
- package/dist/intents/booking-query-style.d.ts +32 -0
- package/dist/intents/booking-query-style.js +22 -0
- package/dist/intents/booking-query-style.js.map +1 -0
- package/dist/intents/capture-leads.config.d.ts +31 -0
- package/dist/intents/capture-leads.config.js +231 -0
- package/dist/intents/capture-leads.config.js.map +1 -0
- package/dist/intents/catalog-stock.d.ts +43 -0
- package/dist/intents/catalog-stock.js +43 -0
- package/dist/intents/catalog-stock.js.map +1 -0
- package/dist/intents/collapse-shared-nav.d.ts +95 -0
- package/dist/intents/collapse-shared-nav.js +171 -0
- package/dist/intents/collapse-shared-nav.js.map +1 -0
- package/dist/intents/default-commerce.config.d.ts +6 -0
- package/dist/intents/default-commerce.config.js +281 -0
- package/dist/intents/default-commerce.config.js.map +1 -0
- package/dist/intents/digital-products.config.d.ts +2 -0
- package/dist/intents/digital-products.config.js +239 -0
- package/dist/intents/digital-products.config.js.map +1 -0
- package/dist/intents/dine-in.config.d.ts +15 -0
- package/dist/intents/dine-in.config.js +331 -0
- package/dist/intents/dine-in.config.js.map +1 -0
- package/dist/intents/event-tickets.config.d.ts +2 -0
- package/dist/intents/event-tickets.config.js +368 -0
- package/dist/intents/event-tickets.config.js.map +1 -0
- package/dist/intents/food-orders.config.d.ts +2 -0
- package/dist/intents/food-orders.config.js +299 -0
- package/dist/intents/food-orders.config.js.map +1 -0
- package/dist/intents/icon-map.d.ts +15 -0
- package/dist/intents/icon-map.js +104 -0
- package/dist/intents/icon-map.js.map +1 -0
- package/dist/intents/index.d.ts +12 -0
- package/dist/intents/index.js +50 -0
- package/dist/intents/index.js.map +1 -0
- package/dist/intents/infer-intents.d.ts +10 -0
- package/dist/intents/infer-intents.js +23 -0
- package/dist/intents/infer-intents.js.map +1 -0
- package/dist/intents/intent-chips.d.ts +47 -0
- package/dist/intents/intent-chips.js +38 -0
- package/dist/intents/intent-chips.js.map +1 -0
- package/dist/intents/intent-nav.d.ts +95 -0
- package/dist/intents/intent-nav.js +423 -0
- package/dist/intents/intent-nav.js.map +1 -0
- package/dist/intents/intent-scope.d.ts +52 -0
- package/dist/intents/intent-scope.js +19 -0
- package/dist/intents/intent-scope.js.map +1 -0
- package/dist/intents/nav-coverage.d.ts +71 -0
- package/dist/intents/nav-coverage.js +132 -0
- package/dist/intents/nav-coverage.js.map +1 -0
- package/dist/intents/operating-shell.d.ts +45 -0
- package/dist/intents/operating-shell.js +142 -0
- package/dist/intents/operating-shell.js.map +1 -0
- package/dist/intents/order-display.d.ts +21 -0
- package/dist/intents/order-display.js +110 -0
- package/dist/intents/order-display.js.map +1 -0
- package/dist/intents/order-intent.d.ts +18 -0
- package/dist/intents/order-intent.js +14 -0
- package/dist/intents/order-intent.js.map +1 -0
- package/dist/intents/order-progress.d.ts +81 -0
- package/dist/intents/order-progress.js +91 -0
- package/dist/intents/order-progress.js.map +1 -0
- package/dist/intents/order-sections.d.ts +173 -0
- package/dist/intents/order-sections.js +188 -0
- package/dist/intents/order-sections.js.map +1 -0
- package/dist/intents/order-stats.d.ts +24 -0
- package/dist/intents/order-stats.js +16 -0
- package/dist/intents/order-stats.js.map +1 -0
- package/dist/intents/order-transitions.d.ts +19 -0
- package/dist/intents/order-transitions.js +66 -0
- package/dist/intents/order-transitions.js.map +1 -0
- package/dist/intents/product-editor-config.d.ts +23 -0
- package/dist/intents/product-editor-config.js +13 -0
- package/dist/intents/product-editor-config.js.map +1 -0
- package/dist/intents/product-intent.d.ts +38 -0
- package/dist/intents/product-intent.js +19 -0
- package/dist/intents/product-intent.js.map +1 -0
- package/dist/intents/registry.d.ts +32 -0
- package/dist/intents/registry.js +41 -0
- package/dist/intents/registry.js.map +1 -0
- package/dist/intents/rent-property.config.d.ts +2 -0
- package/dist/intents/rent-property.config.js +284 -0
- package/dist/intents/rent-property.config.js.map +1 -0
- package/dist/intents/resolve-stats.d.ts +7 -0
- package/dist/intents/resolve-stats.js +29 -0
- package/dist/intents/resolve-stats.js.map +1 -0
- package/dist/intents/resolve-tenant-intents.d.ts +11 -0
- package/dist/intents/resolve-tenant-intents.js +61 -0
- package/dist/intents/resolve-tenant-intents.js.map +1 -0
- package/dist/intents/resolvers.d.ts +52 -0
- package/dist/intents/resolvers.js +177 -0
- package/dist/intents/resolvers.js.map +1 -0
- package/dist/intents/row-identity.d.ts +62 -0
- package/dist/intents/row-identity.js +25 -0
- package/dist/intents/row-identity.js.map +1 -0
- package/dist/intents/sales-verb.d.ts +8 -0
- package/dist/intents/sales-verb.js +12 -0
- package/dist/intents/sales-verb.js.map +1 -0
- package/dist/intents/scoped-config.d.ts +12 -0
- package/dist/intents/scoped-config.js +17 -0
- package/dist/intents/scoped-config.js.map +1 -0
- package/dist/intents/screen-title.d.ts +27 -0
- package/dist/intents/screen-title.js +59 -0
- package/dist/intents/screen-title.js.map +1 -0
- package/dist/intents/section-registry.d.ts +48 -0
- package/dist/intents/section-registry.js +33 -0
- package/dist/intents/section-registry.js.map +1 -0
- package/dist/intents/sell-products.config.d.ts +2 -0
- package/dist/intents/sell-products.config.js +275 -0
- package/dist/intents/sell-products.config.js.map +1 -0
- package/dist/intents/send-invoices.config.d.ts +16 -0
- package/dist/intents/send-invoices.config.js +223 -0
- package/dist/intents/send-invoices.config.js.map +1 -0
- package/dist/intents/subscriptions.config.d.ts +2 -0
- package/dist/intents/subscriptions.config.js +260 -0
- package/dist/intents/subscriptions.config.js.map +1 -0
- package/dist/intents/take-bookings.config.d.ts +2 -0
- package/dist/intents/take-bookings.config.js +298 -0
- package/dist/intents/take-bookings.config.js.map +1 -0
- package/dist/intents/types.d.ts +246 -0
- package/dist/intents/types.js +1 -0
- package/dist/intents/types.js.map +1 -0
- package/dist/intents/use-active-intent.d.ts +27 -0
- package/dist/intents/use-active-intent.js +74 -0
- package/dist/intents/use-active-intent.js.map +1 -0
- package/dist/intents/use-destination-label.d.ts +18 -0
- package/dist/intents/use-destination-label.js +45 -0
- package/dist/intents/use-destination-label.js.map +1 -0
- package/dist/intents/use-entity-label.d.ts +32 -0
- package/dist/intents/use-entity-label.js +75 -0
- package/dist/intents/use-entity-label.js.map +1 -0
- package/dist/intents/use-intent-config.d.ts +20 -0
- package/dist/intents/use-intent-config.js +91 -0
- package/dist/intents/use-intent-config.js.map +1 -0
- package/dist/intents/use-intent-nav-rows.d.ts +26 -0
- package/dist/intents/use-intent-nav-rows.js +49 -0
- package/dist/intents/use-intent-nav-rows.js.map +1 -0
- package/dist/intents/use-resource-label.d.ts +10 -0
- package/dist/intents/use-resource-label.js +9 -0
- package/dist/intents/use-resource-label.js.map +1 -0
- package/dist/intents/use-row-noun.d.ts +19 -0
- package/dist/intents/use-row-noun.js +13 -0
- package/dist/intents/use-row-noun.js.map +1 -0
- package/dist/intents/use-screen-title.d.ts +9 -0
- package/dist/intents/use-screen-title.js +25 -0
- package/dist/intents/use-screen-title.js.map +1 -0
- package/dist/intents/what-it-adds.d.ts +70 -0
- package/dist/intents/what-it-adds.js +29 -0
- package/dist/intents/what-it-adds.js.map +1 -0
- package/dist/intents/workflow-shape.d.ts +66 -0
- package/dist/intents/workflow-shape.js +151 -0
- package/dist/intents/workflow-shape.js.map +1 -0
- package/dist/intents.d.ts +1 -0
- package/dist/intents.js +1 -0
- package/dist/invite-refusal.d.ts +37 -0
- package/dist/invite-refusal.js +26 -0
- package/dist/invite-refusal.js.map +1 -0
- package/dist/invoice-brand.d.ts +28 -0
- package/dist/invoice-brand.js +33 -0
- package/dist/invoice-brand.js.map +1 -0
- package/dist/ios-navigation-context.d.ts +11 -0
- package/dist/ios-navigation-context.js +52 -0
- package/dist/ios-navigation-context.js.map +1 -0
- package/dist/legal-links.d.ts +10 -0
- package/dist/legal-links.js +7 -0
- package/dist/legal-links.js.map +1 -0
- package/dist/letting-policy.d.ts +85 -0
- package/dist/letting-policy.js +47 -0
- package/dist/letting-policy.js.map +1 -0
- package/dist/list-page-size.d.ts +24 -0
- package/dist/list-page-size.js +5 -0
- package/dist/list-page-size.js.map +1 -0
- package/dist/live-events/sse-frames.d.ts +15 -0
- package/dist/live-events/sse-frames.js +37 -0
- package/dist/live-events/sse-frames.js.map +1 -0
- package/dist/location-options.d.ts +16 -0
- package/dist/location-options.js +94 -0
- package/dist/location-options.js.map +1 -0
- package/dist/location-scope-context.d.ts +47 -0
- package/dist/location-scope-context.js +85 -0
- package/dist/location-scope-context.js.map +1 -0
- package/dist/media-service.d.ts +97 -0
- package/dist/media-service.js +282 -0
- package/dist/media-service.js.map +1 -0
- package/dist/media-utils.d.ts +51 -0
- package/dist/media-utils.js +85 -0
- package/dist/media-utils.js.map +1 -0
- package/dist/member-presence.d.ts +40 -0
- package/dist/member-presence.js +77 -0
- package/dist/member-presence.js.map +1 -0
- package/dist/member-subscription-enrollment.d.ts +16 -0
- package/dist/member-subscription-enrollment.js +32 -0
- package/dist/member-subscription-enrollment.js.map +1 -0
- package/dist/membership-freshness.d.ts +31 -0
- package/dist/membership-freshness.js +21 -0
- package/dist/membership-freshness.js.map +1 -0
- package/dist/mobile-header-context.d.ts +32 -0
- package/dist/mobile-header-context.js +59 -0
- package/dist/mobile-header-context.js.map +1 -0
- package/dist/mobile-routes.d.ts +81 -0
- package/dist/mobile-routes.js +406 -0
- package/dist/mobile-routes.js.map +1 -0
- package/dist/mobile-tab-config.d.ts +18 -0
- package/dist/mobile-tab-config.js +43 -0
- package/dist/mobile-tab-config.js.map +1 -0
- package/dist/money-coming-soon.d.ts +16 -0
- package/dist/money-coming-soon.js +22 -0
- package/dist/money-coming-soon.js.map +1 -0
- package/dist/money-minor.d.ts +17 -0
- package/dist/money-minor.js +53 -0
- package/dist/money-minor.js.map +1 -0
- package/dist/money-visibility.d.ts +38 -0
- package/dist/money-visibility.js +13 -0
- package/dist/money-visibility.js.map +1 -0
- package/dist/motion.d.ts +160 -0
- package/dist/motion.js +130 -0
- package/dist/motion.js.map +1 -0
- package/dist/nav-pending.d.ts +42 -0
- package/dist/nav-pending.js +84 -0
- package/dist/nav-pending.js.map +1 -0
- package/dist/navigation-groups.d.ts +52 -0
- package/dist/navigation-groups.js +64 -0
- package/dist/navigation-groups.js.map +1 -0
- package/dist/onboarding-draft.d.ts +23 -0
- package/dist/onboarding-draft.js +35 -0
- package/dist/onboarding-draft.js.map +1 -0
- package/dist/operating-model/index.d.ts +4 -0
- package/dist/operating-model/index.js +13 -0
- package/dist/operating-model/index.js.map +1 -0
- package/dist/operating-model/order-display.d.ts +10 -0
- package/dist/operating-model/order-display.js +24 -0
- package/dist/operating-model/order-display.js.map +1 -0
- package/dist/operating-model/resolver.d.ts +9 -0
- package/dist/operating-model/resolver.js +110 -0
- package/dist/operating-model/resolver.js.map +1 -0
- package/dist/operating-model/types.d.ts +36 -0
- package/dist/operating-model/types.js +1 -0
- package/dist/operating-model/types.js.map +1 -0
- package/dist/operating-model/use-operating-model.d.ts +7 -0
- package/dist/operating-model/use-operating-model.js +65 -0
- package/dist/operating-model/use-operating-model.js.map +1 -0
- package/dist/operating-model.d.ts +1 -0
- package/dist/operating-model.js +1 -0
- package/dist/order-config.d.ts +30 -0
- package/dist/order-config.js +56 -0
- package/dist/order-config.js.map +1 -0
- package/dist/order-discounts.d.ts +25 -0
- package/dist/order-discounts.js +27 -0
- package/dist/order-discounts.js.map +1 -0
- package/dist/order-shipping.d.ts +33 -0
- package/dist/order-shipping.js +49 -0
- package/dist/order-shipping.js.map +1 -0
- package/dist/order-tax.d.ts +28 -0
- package/dist/order-tax.js +21 -0
- package/dist/order-tax.js.map +1 -0
- package/dist/page-intros.d.ts +78 -0
- package/dist/page-intros.js +164 -0
- package/dist/page-intros.js.map +1 -0
- package/dist/page-transition.d.ts +20 -0
- package/dist/page-transition.js +19 -0
- package/dist/page-transition.js.map +1 -0
- package/dist/pages-api-response.d.ts +8 -0
- package/dist/pages-api-response.js +18 -0
- package/dist/pages-api-response.js.map +1 -0
- package/dist/payment-method-label.d.ts +6 -0
- package/dist/payment-method-label.js +14 -0
- package/dist/payment-method-label.js.map +1 -0
- package/dist/permission-aliases.d.ts +18 -0
- package/dist/permission-aliases.js +20 -0
- package/dist/permission-aliases.js.map +1 -0
- package/dist/permission-catalog-fallback.d.ts +17 -0
- package/dist/permission-catalog-fallback.js +147 -0
- package/dist/permission-catalog-fallback.js.map +1 -0
- package/dist/permission-change.d.ts +42 -0
- package/dist/permission-change.js +33 -0
- package/dist/permission-change.js.map +1 -0
- package/dist/phone.d.ts +16 -0
- package/dist/phone.js +20 -0
- package/dist/phone.js.map +1 -0
- package/dist/plan-access.d.ts +39 -0
- package/dist/plan-access.js +57 -0
- package/dist/plan-access.js.map +1 -0
- package/dist/plan-card-api.d.ts +34 -0
- package/dist/plan-card-api.js +30 -0
- package/dist/plan-card-api.js.map +1 -0
- package/dist/plan-price.d.ts +34 -0
- package/dist/plan-price.js +57 -0
- package/dist/plan-price.js.map +1 -0
- package/dist/post-login-target.d.ts +24 -0
- package/dist/post-login-target.js +12 -0
- package/dist/post-login-target.js.map +1 -0
- package/dist/potter-mark-paths.d.ts +21 -0
- package/dist/potter-mark-paths.js +9 -0
- package/dist/potter-mark-paths.js.map +1 -0
- package/dist/pricing-plans-types.d.ts +143 -0
- package/dist/pricing-plans-types.js +1 -0
- package/dist/pricing-plans-types.js.map +1 -0
- package/dist/product-assignees.d.ts +1 -0
- package/dist/product-assignees.js +18 -0
- package/dist/product-assignees.js.map +1 -0
- package/dist/product-collection-sync.d.ts +12 -0
- package/dist/product-collection-sync.js +97 -0
- package/dist/product-collection-sync.js.map +1 -0
- package/dist/product-cost.d.ts +12 -0
- package/dist/product-cost.js +24 -0
- package/dist/product-cost.js.map +1 -0
- package/dist/product-insights-api.d.ts +38 -0
- package/dist/product-insights-api.js +51 -0
- package/dist/product-insights-api.js.map +1 -0
- package/dist/product-types.d.ts +311 -0
- package/dist/product-types.js +38 -0
- package/dist/product-types.js.map +1 -0
- package/dist/promised-day.d.ts +33 -0
- package/dist/promised-day.js +38 -0
- package/dist/promised-day.js.map +1 -0
- package/dist/proposals-api.d.ts +96 -0
- package/dist/proposals-api.js +41 -0
- package/dist/proposals-api.js.map +1 -0
- package/dist/proxy-allowlist.d.ts +15 -0
- package/dist/proxy-allowlist.js +153 -0
- package/dist/proxy-allowlist.js.map +1 -0
- package/dist/public-config-loader.d.ts +27 -0
- package/dist/public-config-loader.js +12 -0
- package/dist/public-config-loader.js.map +1 -0
- package/dist/public-config-provider.d.ts +16 -0
- package/dist/public-config-provider.js +14 -0
- package/dist/public-config-provider.js.map +1 -0
- package/dist/resolve-enabled-behaviors.d.ts +55 -0
- package/dist/resolve-enabled-behaviors.js +134 -0
- package/dist/resolve-enabled-behaviors.js.map +1 -0
- package/dist/resource-types.d.ts +198 -0
- package/dist/resource-types.js +96 -0
- package/dist/resource-types.js.map +1 -0
- package/dist/resume-screen.d.ts +31 -0
- package/dist/resume-screen.js +25 -0
- package/dist/resume-screen.js.map +1 -0
- package/dist/rider-display.d.ts +37 -0
- package/dist/rider-display.js +110 -0
- package/dist/rider-display.js.map +1 -0
- package/dist/rider-view.d.ts +37 -0
- package/dist/rider-view.js +47 -0
- package/dist/rider-view.js.map +1 -0
- package/dist/roster-label.d.ts +27 -0
- package/dist/roster-label.js +8 -0
- package/dist/roster-label.js.map +1 -0
- package/dist/route-pattern.d.ts +11 -0
- package/dist/route-pattern.js +20 -0
- package/dist/route-pattern.js.map +1 -0
- package/dist/route-permission.d.ts +60 -0
- package/dist/route-permission.js +48 -0
- package/dist/route-permission.js.map +1 -0
- package/dist/runtime-config.d.ts +33 -0
- package/dist/runtime-config.js +23 -0
- package/dist/runtime-config.js.map +1 -0
- package/dist/schema-validation.d.ts +172 -0
- package/dist/schema-validation.js +252 -0
- package/dist/schema-validation.js.map +1 -0
- package/dist/service-areas.d.ts +30 -0
- package/dist/service-areas.js +24 -0
- package/dist/service-areas.js.map +1 -0
- package/dist/service-operations-api.d.ts +78 -0
- package/dist/service-operations-api.js +37 -0
- package/dist/service-operations-api.js.map +1 -0
- package/dist/settings-relevance.d.ts +64 -0
- package/dist/settings-relevance.js +25 -0
- package/dist/settings-relevance.js.map +1 -0
- package/dist/singularise.d.ts +16 -0
- package/dist/singularise.js +37 -0
- package/dist/singularise.js.map +1 -0
- package/dist/site-address.d.ts +14 -0
- package/dist/site-address.js +28 -0
- package/dist/site-address.js.map +1 -0
- package/dist/slug.d.ts +26 -0
- package/dist/slug.js +15 -0
- package/dist/slug.js.map +1 -0
- package/dist/sound.d.ts +14 -0
- package/dist/sound.js +166 -0
- package/dist/sound.js.map +1 -0
- package/dist/staff-arrival.d.ts +3 -0
- package/dist/staff-arrival.js +11 -0
- package/dist/staff-arrival.js.map +1 -0
- package/dist/staff-home.d.ts +58 -0
- package/dist/staff-home.js +90 -0
- package/dist/staff-home.js.map +1 -0
- package/dist/staff-landing.d.ts +1 -0
- package/dist/staff-landing.js +15 -0
- package/dist/staff-landing.js.map +1 -0
- package/dist/stat-card-types.d.ts +19 -0
- package/dist/stat-card-types.js +1 -0
- package/dist/stat-card-types.js.map +1 -0
- package/dist/stock-levels.d.ts +32 -0
- package/dist/stock-levels.js +17 -0
- package/dist/stock-levels.js.map +1 -0
- package/dist/stored-token.d.ts +1 -0
- package/dist/stored-token.js +11 -0
- package/dist/stored-token.js.map +1 -0
- package/dist/storefront-url.d.ts +31 -0
- package/dist/storefront-url.js +40 -0
- package/dist/storefront-url.js.map +1 -0
- package/dist/storefront.d.ts +64 -0
- package/dist/storefront.js +51 -0
- package/dist/storefront.js.map +1 -0
- package/dist/subscription-billing-api.d.ts +115 -0
- package/dist/subscription-billing-api.js +27 -0
- package/dist/subscription-billing-api.js.map +1 -0
- package/dist/subscription-billing-model.d.ts +26 -0
- package/dist/subscription-billing-model.js +58 -0
- package/dist/subscription-billing-model.js.map +1 -0
- package/dist/support-case-subject.d.ts +10 -0
- package/dist/support-case-subject.js +13 -0
- package/dist/support-case-subject.js.map +1 -0
- package/dist/support-inbox.d.ts +6 -0
- package/dist/support-inbox.js +5 -0
- package/dist/support-inbox.js.map +1 -0
- package/dist/support.d.ts +7 -0
- package/dist/support.js +16 -0
- package/dist/support.js.map +1 -0
- package/dist/team-page.d.ts +9 -0
- package/dist/team-page.js +5 -0
- package/dist/team-page.js.map +1 -0
- package/dist/team-roles.d.ts +140 -0
- package/dist/team-roles.js +247 -0
- package/dist/team-roles.js.map +1 -0
- package/dist/team-successors.d.ts +20 -0
- package/dist/team-successors.js +13 -0
- package/dist/team-successors.js.map +1 -0
- package/dist/template-asset-url.d.ts +11 -0
- package/dist/template-asset-url.js +8 -0
- package/dist/template-asset-url.js.map +1 -0
- package/dist/template-capabilities.d.ts +2 -0
- package/dist/template-capabilities.js +71 -0
- package/dist/template-capabilities.js.map +1 -0
- package/dist/template-context.d.ts +111 -0
- package/dist/template-context.js +1278 -0
- package/dist/template-context.js.map +1 -0
- package/dist/template-filter.d.ts +29 -0
- package/dist/template-filter.js +41 -0
- package/dist/template-filter.js.map +1 -0
- package/dist/template-preview/preview-author-patch.d.ts +24 -0
- package/dist/template-preview/preview-author-patch.js +78 -0
- package/dist/template-preview/preview-author-patch.js.map +1 -0
- package/dist/template-preview/use-template-document.d.ts +38 -0
- package/dist/template-preview/use-template-document.js +45 -0
- package/dist/template-preview/use-template-document.js.map +1 -0
- package/dist/template-requirements.d.ts +38 -0
- package/dist/template-requirements.js +13 -0
- package/dist/template-requirements.js.map +1 -0
- package/dist/template-types.d.ts +317 -0
- package/dist/template-types.js +1 -0
- package/dist/template-types.js.map +1 -0
- package/dist/templates.d.ts +22 -0
- package/dist/templates.js +1 -0
- package/dist/templates.js.map +1 -0
- package/dist/theme-context.d.ts +58 -0
- package/dist/theme-context.js +283 -0
- package/dist/theme-context.js.map +1 -0
- package/dist/theme-policy.d.ts +41 -0
- package/dist/theme-policy.js +32 -0
- package/dist/theme-policy.js.map +1 -0
- package/dist/ticket-access.d.ts +20 -0
- package/dist/ticket-access.js +39 -0
- package/dist/ticket-access.js.map +1 -0
- package/dist/timeline-copy.d.ts +65 -0
- package/dist/timeline-copy.js +150 -0
- package/dist/timeline-copy.js.map +1 -0
- package/dist/url-params.d.ts +23 -0
- package/dist/url-params.js +43 -0
- package/dist/url-params.js.map +1 -0
- package/dist/use-behaviors.d.ts +13 -0
- package/dist/use-behaviors.js +41 -0
- package/dist/use-behaviors.js.map +1 -0
- package/dist/use-business-locations.d.ts +35 -0
- package/dist/use-business-locations.js +71 -0
- package/dist/use-business-locations.js.map +1 -0
- package/dist/use-currency.d.ts +12 -0
- package/dist/use-currency.js +16 -0
- package/dist/use-currency.js.map +1 -0
- package/dist/use-empty-state-copy.d.ts +12 -0
- package/dist/use-empty-state-copy.js +13 -0
- package/dist/use-empty-state-copy.js.map +1 -0
- package/dist/use-geo-cities.d.ts +1 -0
- package/dist/use-geo-cities.js +42 -0
- package/dist/use-geo-cities.js.map +1 -0
- package/dist/use-has-hardware.d.ts +13 -0
- package/dist/use-has-hardware.js +14 -0
- package/dist/use-has-hardware.js.map +1 -0
- package/dist/use-industry-key.d.ts +10 -0
- package/dist/use-industry-key.js +16 -0
- package/dist/use-industry-key.js.map +1 -0
- package/dist/use-item-links.d.ts +20 -0
- package/dist/use-item-links.js +30 -0
- package/dist/use-item-links.js.map +1 -0
- package/dist/use-job-roles.d.ts +21 -0
- package/dist/use-job-roles.js +76 -0
- package/dist/use-job-roles.js.map +1 -0
- package/dist/use-merchant-plan.d.ts +36 -0
- package/dist/use-merchant-plan.js +78 -0
- package/dist/use-merchant-plan.js.map +1 -0
- package/dist/use-module-label.d.ts +12 -0
- package/dist/use-module-label.js +13 -0
- package/dist/use-module-label.js.map +1 -0
- package/dist/use-money-visibility.d.ts +14 -0
- package/dist/use-money-visibility.js +13 -0
- package/dist/use-money-visibility.js.map +1 -0
- package/dist/use-nav-groups.d.ts +27 -0
- package/dist/use-nav-groups.js +141 -0
- package/dist/use-nav-groups.js.map +1 -0
- package/dist/use-pathname.d.ts +15 -0
- package/dist/use-pathname.js +29 -0
- package/dist/use-pathname.js.map +1 -0
- package/dist/use-permissions.d.ts +43 -0
- package/dist/use-permissions.js +158 -0
- package/dist/use-permissions.js.map +1 -0
- package/dist/use-platform-modules.d.ts +49 -0
- package/dist/use-platform-modules.js +416 -0
- package/dist/use-platform-modules.js.map +1 -0
- package/dist/use-staff-home.d.ts +9 -0
- package/dist/use-staff-home.js +24 -0
- package/dist/use-staff-home.js.map +1 -0
- package/dist/use-workspace-invite.d.ts +37 -0
- package/dist/use-workspace-invite.js +69 -0
- package/dist/use-workspace-invite.js.map +1 -0
- package/dist/utils.d.ts +53 -0
- package/dist/utils.js +161 -0
- package/dist/utils.js.map +1 -0
- package/dist/wallet-format.d.ts +8 -0
- package/dist/wallet-format.js +36 -0
- package/dist/wallet-format.js.map +1 -0
- package/dist/wallet-settlement.d.ts +14 -0
- package/dist/wallet-settlement.js +5 -0
- package/dist/wallet-settlement.js.map +1 -0
- package/dist/web-url.d.ts +1 -0
- package/dist/web-url.js +50 -0
- package/dist/web-url.js.map +1 -0
- package/dist/whats-new.d.ts +59 -0
- package/dist/whats-new.js +77 -0
- package/dist/whats-new.js.map +1 -0
- package/dist/workspace-recents.d.ts +30 -0
- package/dist/workspace-recents.js +37 -0
- package/dist/workspace-recents.js.map +1 -0
- package/dist/workspace-slug.d.ts +1 -0
- package/dist/workspace-slug.js +15 -0
- package/dist/workspace-slug.js.map +1 -0
- package/package.json +57 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/stored-token.ts"],"sourcesContent":["/**\n * The key older versions kept the session token under. The session is now only\n * the HttpOnly `pb_auth_token` cookie, so a copy here is a credential any script\n * on the page could read. Nothing writes it; this removes one left behind.\n */\nconst LEGACY_TOKEN_KEY = 'pb_token';\n\nexport function removeLegacyToken(): void {\n try {\n localStorage.removeItem(LEGACY_TOKEN_KEY);\n } catch {\n // Storage blocked: nothing was kept there.\n }\n}\n"],"mappings":"AAKA,MAAM,mBAAmB;AAElB,SAAS,oBAA0B;AACxC,MAAI;AACF,iBAAa,WAAW,gBAAgB;AAAA,EAC1C,QAAQ;AAAA,EAER;AACF;","names":[]}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical storefront URL resolution.
|
|
3
|
+
*
|
|
4
|
+
* A tenant's public storefront URL is DATA-derived, with this precedence:
|
|
5
|
+
* 1. customDomain (when set) -> {scheme}://{customDomain}
|
|
6
|
+
* 2. storefront domain set -> {scheme}://{slug}.{storefrontDomain}
|
|
7
|
+
* 3. dev / path fallback -> {NEXT_PUBLIC_WEB_URL}/{slug}
|
|
8
|
+
*
|
|
9
|
+
* The storefront domain is resolved at RUNTIME via `readPublicConfig()` (the
|
|
10
|
+
* box injects it from `box.yml`), falling back to the build-time
|
|
11
|
+
* `NEXT_PUBLIC_STOREFRONT_DOMAIN` when nothing is injected. `NEXT_PUBLIC_WEB_URL`
|
|
12
|
+
* is the CONTROL-WEB (admin dashboard) origin, used as the storefront base ONLY
|
|
13
|
+
* in the dev path fallback (no storefront domain set).
|
|
14
|
+
*
|
|
15
|
+
* Scheme: https for real hosts; http for localhost / *.localhost / 127.0.0.1
|
|
16
|
+
* so local boxes (e.g. `providus.localhost`) produce working links.
|
|
17
|
+
*/
|
|
18
|
+
export interface StorefrontTarget {
|
|
19
|
+
slug?: string | null;
|
|
20
|
+
customDomain?: string | null;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Resolve a tenant's canonical storefront URL. Returns `'#'` when there is no
|
|
24
|
+
* addressable target (no slug and no custom domain).
|
|
25
|
+
*/
|
|
26
|
+
export declare function resolveStorefrontUrl(target: StorefrontTarget): string;
|
|
27
|
+
/**
|
|
28
|
+
* Host portion of the resolved storefront URL (e.g. for display). Returns a
|
|
29
|
+
* friendly placeholder when the tenant has no addressable storefront yet.
|
|
30
|
+
*/
|
|
31
|
+
export declare function resolveStorefrontHost(target: StorefrontTarget): string;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { readPublicConfig } from "./runtime-config";
|
|
2
|
+
import { resolveWebUrl } from "./web-url";
|
|
3
|
+
function isLocalHost(host) {
|
|
4
|
+
const h = host.toLowerCase().split(":")[0];
|
|
5
|
+
return h === "localhost" || h.endsWith(".localhost") || h === "127.0.0.1" || h === "0.0.0.0";
|
|
6
|
+
}
|
|
7
|
+
function schemeFor(host) {
|
|
8
|
+
return isLocalHost(host) ? "http" : "https";
|
|
9
|
+
}
|
|
10
|
+
function webUrl() {
|
|
11
|
+
return resolveWebUrl();
|
|
12
|
+
}
|
|
13
|
+
function resolveStorefrontUrl(target) {
|
|
14
|
+
const customDomain = target.customDomain?.trim();
|
|
15
|
+
if (customDomain) {
|
|
16
|
+
return `${schemeFor(customDomain)}://${customDomain}`;
|
|
17
|
+
}
|
|
18
|
+
const slug = target.slug?.trim();
|
|
19
|
+
if (!slug) return "#";
|
|
20
|
+
const storefrontDomain = readPublicConfig().storefrontDomain?.trim();
|
|
21
|
+
if (storefrontDomain) {
|
|
22
|
+
const host = `${slug}.${storefrontDomain}`;
|
|
23
|
+
return `${schemeFor(storefrontDomain)}://${host}`;
|
|
24
|
+
}
|
|
25
|
+
return `${webUrl()}/${slug}`;
|
|
26
|
+
}
|
|
27
|
+
function resolveStorefrontHost(target) {
|
|
28
|
+
const url = resolveStorefrontUrl(target);
|
|
29
|
+
if (url === "#") return "Not yet published";
|
|
30
|
+
try {
|
|
31
|
+
return new URL(url).host;
|
|
32
|
+
} catch {
|
|
33
|
+
return url;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export {
|
|
37
|
+
resolveStorefrontHost,
|
|
38
|
+
resolveStorefrontUrl
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=storefront-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/storefront-url.ts"],"sourcesContent":["/**\n * Canonical storefront URL resolution.\n *\n * A tenant's public storefront URL is DATA-derived, with this precedence:\n * 1. customDomain (when set) -> {scheme}://{customDomain}\n * 2. storefront domain set -> {scheme}://{slug}.{storefrontDomain}\n * 3. dev / path fallback -> {NEXT_PUBLIC_WEB_URL}/{slug}\n *\n * The storefront domain is resolved at RUNTIME via `readPublicConfig()` (the\n * box injects it from `box.yml`), falling back to the build-time\n * `NEXT_PUBLIC_STOREFRONT_DOMAIN` when nothing is injected. `NEXT_PUBLIC_WEB_URL`\n * is the CONTROL-WEB (admin dashboard) origin, used as the storefront base ONLY\n * in the dev path fallback (no storefront domain set).\n *\n * Scheme: https for real hosts; http for localhost / *.localhost / 127.0.0.1\n * so local boxes (e.g. `providus.localhost`) produce working links.\n */\n\nimport { readPublicConfig } from './runtime-config';\nimport { resolveWebUrl } from './web-url';\n\nexport interface StorefrontTarget {\n slug?: string | null;\n customDomain?: string | null;\n}\n\nfunction isLocalHost(host: string): boolean {\n const h = host.toLowerCase().split(':')[0];\n return (\n h === 'localhost' ||\n h.endsWith('.localhost') ||\n h === '127.0.0.1' ||\n h === '0.0.0.0'\n );\n}\n\nfunction schemeFor(host: string): 'http' | 'https' {\n return isLocalHost(host) ? 'http' : 'https';\n}\n\n/** Control-web (admin dashboard) origin. Storefront base ONLY in dev fallback. */\nfunction webUrl(): string {\n return resolveWebUrl();\n}\n\n/**\n * Resolve a tenant's canonical storefront URL. Returns `'#'` when there is no\n * addressable target (no slug and no custom domain).\n */\nexport function resolveStorefrontUrl(target: StorefrontTarget): string {\n const customDomain = target.customDomain?.trim();\n if (customDomain) {\n return `${schemeFor(customDomain)}://${customDomain}`;\n }\n\n const slug = target.slug?.trim();\n if (!slug) return '#';\n\n const storefrontDomain = readPublicConfig().storefrontDomain?.trim();\n if (storefrontDomain) {\n const host = `${slug}.${storefrontDomain}`;\n return `${schemeFor(storefrontDomain)}://${host}`;\n }\n\n return `${webUrl()}/${slug}`;\n}\n\n/**\n * Host portion of the resolved storefront URL (e.g. for display). Returns a\n * friendly placeholder when the tenant has no addressable storefront yet.\n */\nexport function resolveStorefrontHost(target: StorefrontTarget): string {\n const url = resolveStorefrontUrl(target);\n if (url === '#') return 'Not yet published';\n try {\n return new URL(url).host;\n } catch {\n return url;\n }\n}\n"],"mappings":"AAkBA,SAAS,wBAAwB;AACjC,SAAS,qBAAqB;AAO9B,SAAS,YAAY,MAAuB;AAC1C,QAAM,IAAI,KAAK,YAAY,EAAE,MAAM,GAAG,EAAE,CAAC;AACzC,SACE,MAAM,eACN,EAAE,SAAS,YAAY,KACvB,MAAM,eACN,MAAM;AAEV;AAEA,SAAS,UAAU,MAAgC;AACjD,SAAO,YAAY,IAAI,IAAI,SAAS;AACtC;AAGA,SAAS,SAAiB;AACxB,SAAO,cAAc;AACvB;AAMO,SAAS,qBAAqB,QAAkC;AACrE,QAAM,eAAe,OAAO,cAAc,KAAK;AAC/C,MAAI,cAAc;AAChB,WAAO,GAAG,UAAU,YAAY,CAAC,MAAM,YAAY;AAAA,EACrD;AAEA,QAAM,OAAO,OAAO,MAAM,KAAK;AAC/B,MAAI,CAAC,KAAM,QAAO;AAElB,QAAM,mBAAmB,iBAAiB,EAAE,kBAAkB,KAAK;AACnE,MAAI,kBAAkB;AACpB,UAAM,OAAO,GAAG,IAAI,IAAI,gBAAgB;AACxC,WAAO,GAAG,UAAU,gBAAgB,CAAC,MAAM,IAAI;AAAA,EACjD;AAEA,SAAO,GAAG,OAAO,CAAC,IAAI,IAAI;AAC5B;AAMO,SAAS,sBAAsB,QAAkC;AACtE,QAAM,MAAM,qBAAqB,MAAM;AACvC,MAAI,QAAQ,IAAK,QAAO;AACxB,MAAI;AACF,WAAO,IAAI,IAAI,GAAG,EAAE;AAAA,EACtB,QAAQ;AACN,WAAO;AAAA,EACT;AACF;","names":[]}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where a merchant's site actually lives.
|
|
3
|
+
*
|
|
4
|
+
* ── WHY THIS FILE EXISTS ──
|
|
5
|
+
*
|
|
6
|
+
* `potter.store` was written into the onboarding screens as a literal, twice,
|
|
7
|
+
* and it is not the address of anything. web-render resolves storefronts in
|
|
8
|
+
* `lib/platform-hosts.ts`, and its hosts are `boxspace.live`, `withpotter.site`,
|
|
9
|
+
* `potteri.sh`, `potter.pandabuilder.co` and `pandabuilder.co` — `potter.store` is not among
|
|
10
|
+
* them and never was.
|
|
11
|
+
*
|
|
12
|
+
* The SHAPE was wrong too, which is the worse half. Storefronts are served as
|
|
13
|
+
* `<slug>.<host>`: web-render's middleware reads the subdomain off the host
|
|
14
|
+
* (`matchTenantSubdomain`) and rewrites into its `[tenant]` route. Onboarding
|
|
15
|
+
* promised `potter.store/<slug>` — a path on a domain we do not own — so the
|
|
16
|
+
* first screen of the product showed every merchant an address in a form no
|
|
17
|
+
* Box site is ever served at.
|
|
18
|
+
*
|
|
19
|
+
* So the host lives here, once, and every surface that shows an address reads
|
|
20
|
+
* it from here.
|
|
21
|
+
*
|
|
22
|
+
* ── CUSTOM DOMAINS ──
|
|
23
|
+
*
|
|
24
|
+
* Every business gets the subdomain, always: it exists the moment the slug
|
|
25
|
+
* does and it is what the go-live gate publishes to. A custom domain does not
|
|
26
|
+
* replace it, it is added in front of it — web-render's middleware looks the
|
|
27
|
+
* tenant up by domain (with its own cache) when the host is not a platform
|
|
28
|
+
* host, so both addresses resolve to the same storefront. `storefrontUrl`
|
|
29
|
+
* prefers the custom one wherever a site is linked to, which is the only place
|
|
30
|
+
* the difference should be visible.
|
|
31
|
+
*/
|
|
32
|
+
/** The configured storefront domain, with a legacy value replaced; undefined when unset. */
|
|
33
|
+
export declare function normalizeStorefrontDomain(value: string | undefined): string | undefined;
|
|
34
|
+
/** Unset stays unset, for the one caller that treats "no domain" as local development. */
|
|
35
|
+
export declare const CONFIGURED_STOREFRONT_DOMAIN: string | undefined;
|
|
36
|
+
/**
|
|
37
|
+
* The default matches web-render's own first default host, so a dashboard with
|
|
38
|
+
* no env configured and a web-render with no env configured agree. Set
|
|
39
|
+
* `NEXT_PUBLIC_STOREFRONT_DOMAIN` to change it; set it to the same value
|
|
40
|
+
* `PLATFORM_HOSTS` starts with, or the address shown here is not the address
|
|
41
|
+
* served.
|
|
42
|
+
*/
|
|
43
|
+
export declare const STOREFRONT_HOST: string;
|
|
44
|
+
/**
|
|
45
|
+
* The host a site's subdomain hangs off, for surfaces that draw the address in
|
|
46
|
+
* parts (`<slug>.<host>`). The box's own domain when it has one, otherwise the
|
|
47
|
+
* build-time host.
|
|
48
|
+
*/
|
|
49
|
+
export declare function storefrontHost(): string;
|
|
50
|
+
/** `<slug>.<host>`, or the custom domain once one is connected. */
|
|
51
|
+
export declare function storefrontUrl(slug: string | undefined, customDomain?: string): string;
|
|
52
|
+
/**
|
|
53
|
+
* A page on a merchant's site: `https://<slug>.<host>/events/x`. `path` starts
|
|
54
|
+
* with a slash. Links to a live site go through here, not `resolveWebUrl()`,
|
|
55
|
+
* which is the renderer's own address and only serves a site as `/<slug>/...`.
|
|
56
|
+
*/
|
|
57
|
+
export declare function storefrontPageUrl(slug: string | undefined, path: string, customDomain?: string): string;
|
|
58
|
+
/**
|
|
59
|
+
* Whether a business's storefront is being served. The storefront serves every business that is not
|
|
60
|
+
* suspended or deleted, whether or not it has been "activated" (a new business is `pending`), and the
|
|
61
|
+
* platform admin's screens already read it this way. The dashboard said "not published" for a pending
|
|
62
|
+
* business whose site was open.
|
|
63
|
+
*/
|
|
64
|
+
export declare function storefrontIsServed(status: string | null | undefined): boolean;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { readPublicConfig } from "./runtime-config";
|
|
2
|
+
import { resolveStorefrontUrl } from "./storefront-url";
|
|
3
|
+
const LEGACY_STOREFRONT_DOMAINS = /* @__PURE__ */ new Set([
|
|
4
|
+
"withpotter.site",
|
|
5
|
+
"www.withpotter.site",
|
|
6
|
+
"beta.withpotter.site",
|
|
7
|
+
"preview.withpotter.site",
|
|
8
|
+
"staging.withpotter.site"
|
|
9
|
+
]);
|
|
10
|
+
function normalizeStorefrontDomain(value) {
|
|
11
|
+
const domain = value?.trim().toLowerCase();
|
|
12
|
+
if (!domain) return void 0;
|
|
13
|
+
return LEGACY_STOREFRONT_DOMAINS.has(domain) ? "boxspace.live" : domain;
|
|
14
|
+
}
|
|
15
|
+
const CONFIGURED_STOREFRONT_DOMAIN = normalizeStorefrontDomain(
|
|
16
|
+
process.env.NEXT_PUBLIC_STOREFRONT_DOMAIN
|
|
17
|
+
);
|
|
18
|
+
const STOREFRONT_HOST = CONFIGURED_STOREFRONT_DOMAIN || "boxspace.live";
|
|
19
|
+
const WEB_URL = process.env.NEXT_PUBLIC_WEB_URL || "http://localhost:3000";
|
|
20
|
+
function runtimeStorefrontDomain() {
|
|
21
|
+
const domain = readPublicConfig().storefrontDomain?.trim().toLowerCase();
|
|
22
|
+
return domain && !LEGACY_STOREFRONT_DOMAINS.has(domain) ? domain : void 0;
|
|
23
|
+
}
|
|
24
|
+
function storefrontHost() {
|
|
25
|
+
return runtimeStorefrontDomain() ?? STOREFRONT_HOST;
|
|
26
|
+
}
|
|
27
|
+
function storefrontUrl(slug, customDomain) {
|
|
28
|
+
if (runtimeStorefrontDomain()) {
|
|
29
|
+
return resolveStorefrontUrl({ slug, customDomain });
|
|
30
|
+
}
|
|
31
|
+
if (customDomain) return `https://${customDomain}`;
|
|
32
|
+
if (!slug) return "#";
|
|
33
|
+
return STOREFRONT_HOST ? `https://${slug}.${STOREFRONT_HOST}` : `${WEB_URL}/${slug}`;
|
|
34
|
+
}
|
|
35
|
+
function storefrontPageUrl(slug, path, customDomain) {
|
|
36
|
+
const base = storefrontUrl(slug, customDomain);
|
|
37
|
+
return base === "#" ? base : `${base}${path}`;
|
|
38
|
+
}
|
|
39
|
+
function storefrontIsServed(status) {
|
|
40
|
+
return !!status && status !== "suspended" && status !== "deleted";
|
|
41
|
+
}
|
|
42
|
+
export {
|
|
43
|
+
CONFIGURED_STOREFRONT_DOMAIN,
|
|
44
|
+
STOREFRONT_HOST,
|
|
45
|
+
normalizeStorefrontDomain,
|
|
46
|
+
storefrontHost,
|
|
47
|
+
storefrontIsServed,
|
|
48
|
+
storefrontPageUrl,
|
|
49
|
+
storefrontUrl
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=storefront.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/storefront.ts"],"sourcesContent":["/**\n * Where a merchant's site actually lives.\n *\n * ── WHY THIS FILE EXISTS ──\n *\n * `potter.store` was written into the onboarding screens as a literal, twice,\n * and it is not the address of anything. web-render resolves storefronts in\n * `lib/platform-hosts.ts`, and its hosts are `boxspace.live`, `withpotter.site`,\n * `potteri.sh`, `potter.pandabuilder.co` and `pandabuilder.co` — `potter.store` is not among\n * them and never was.\n *\n * The SHAPE was wrong too, which is the worse half. Storefronts are served as\n * `<slug>.<host>`: web-render's middleware reads the subdomain off the host\n * (`matchTenantSubdomain`) and rewrites into its `[tenant]` route. Onboarding\n * promised `potter.store/<slug>` — a path on a domain we do not own — so the\n * first screen of the product showed every merchant an address in a form no\n * Box site is ever served at.\n *\n * So the host lives here, once, and every surface that shows an address reads\n * it from here.\n *\n * ── CUSTOM DOMAINS ──\n *\n * Every business gets the subdomain, always: it exists the moment the slug\n * does and it is what the go-live gate publishes to. A custom domain does not\n * replace it, it is added in front of it — web-render's middleware looks the\n * tenant up by domain (with its own cache) when the host is not a platform\n * host, so both addresses resolve to the same storefront. `storefrontUrl`\n * prefers the custom one wherever a site is linked to, which is the only place\n * the difference should be visible.\n */\n\nimport { readPublicConfig } from './runtime-config';\nimport { resolveStorefrontUrl } from './storefront-url';\n\n/**\n * Domains businesses used to be served on. A deployment whose environment still\n * names one of these would show every merchant an address they no longer have,\n * so it is read as `boxspace.live` rather than trusted: `NEXT_PUBLIC_*` values\n * are baked into the bundle at build time, so a stale one outlives the code.\n */\nconst LEGACY_STOREFRONT_DOMAINS = new Set([\n 'withpotter.site',\n 'www.withpotter.site',\n 'beta.withpotter.site',\n 'preview.withpotter.site',\n 'staging.withpotter.site',\n]);\n\n/** The configured storefront domain, with a legacy value replaced; undefined when unset. */\nexport function normalizeStorefrontDomain(\n value: string | undefined,\n): string | undefined {\n const domain = value?.trim().toLowerCase();\n\n if (!domain) return undefined;\n\n return LEGACY_STOREFRONT_DOMAINS.has(domain) ? 'boxspace.live' : domain;\n}\n\n/** Unset stays unset, for the one caller that treats \"no domain\" as local development. */\nexport const CONFIGURED_STOREFRONT_DOMAIN = normalizeStorefrontDomain(\n process.env.NEXT_PUBLIC_STOREFRONT_DOMAIN,\n);\n\n/**\n * The default matches web-render's own first default host, so a dashboard with\n * no env configured and a web-render with no env configured agree. Set\n * `NEXT_PUBLIC_STOREFRONT_DOMAIN` to change it; set it to the same value\n * `PLATFORM_HOSTS` starts with, or the address shown here is not the address\n * served.\n */\nexport const STOREFRONT_HOST = CONFIGURED_STOREFRONT_DOMAIN || 'boxspace.live';\n\nconst WEB_URL = process.env.NEXT_PUBLIC_WEB_URL || 'http://localhost:3000';\n\n/**\n * The domain this box said it serves storefronts on, when it has said one.\n *\n * `STOREFRONT_HOST` above is frozen at build time, so a box running the shared\n * build showed its merchants `<slug>.boxspace.live`, an address they do not\n * have. The box injects its own domain at runtime (see `runtime-config.ts`),\n * which is why this is read at call time and not held in a constant. A legacy\n * value is still not trusted, for the reason given on the set above.\n */\nfunction runtimeStorefrontDomain(): string | undefined {\n const domain = readPublicConfig().storefrontDomain?.trim().toLowerCase();\n\n return domain && !LEGACY_STOREFRONT_DOMAINS.has(domain) ? domain : undefined;\n}\n\n/**\n * The host a site's subdomain hangs off, for surfaces that draw the address in\n * parts (`<slug>.<host>`). The box's own domain when it has one, otherwise the\n * build-time host.\n */\nexport function storefrontHost(): string {\n return runtimeStorefrontDomain() ?? STOREFRONT_HOST;\n}\n\n/** `<slug>.<host>`, or the custom domain once one is connected. */\nexport function storefrontUrl(\n slug: string | undefined,\n customDomain?: string,\n): string {\n // One resolver for a box that has named its domain, so this and\n // `resolveStorefrontUrl` cannot give a merchant two addresses.\n if (runtimeStorefrontDomain()) {\n return resolveStorefrontUrl({ slug, customDomain });\n }\n if (customDomain) return `https://${customDomain}`;\n if (!slug) return '#';\n return STOREFRONT_HOST\n ? `https://${slug}.${STOREFRONT_HOST}`\n : `${WEB_URL}/${slug}`;\n}\n\n/**\n * A page on a merchant's site: `https://<slug>.<host>/events/x`. `path` starts\n * with a slash. Links to a live site go through here, not `resolveWebUrl()`,\n * which is the renderer's own address and only serves a site as `/<slug>/...`.\n */\nexport function storefrontPageUrl(\n slug: string | undefined,\n path: string,\n customDomain?: string,\n): string {\n const base = storefrontUrl(slug, customDomain);\n return base === '#' ? base : `${base}${path}`;\n}\n\n/**\n * Whether a business's storefront is being served. The storefront serves every business that is not\n * suspended or deleted, whether or not it has been \"activated\" (a new business is `pending`), and the\n * platform admin's screens already read it this way. The dashboard said \"not published\" for a pending\n * business whose site was open.\n */\nexport function storefrontIsServed(status: string | null | undefined): boolean {\n return !!status && status !== 'suspended' && status !== 'deleted';\n}\n"],"mappings":"AAgCA,SAAS,wBAAwB;AACjC,SAAS,4BAA4B;AAQrC,MAAM,4BAA4B,oBAAI,IAAI;AAAA,EACxC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAGM,SAAS,0BACd,OACoB;AACpB,QAAM,SAAS,OAAO,KAAK,EAAE,YAAY;AAEzC,MAAI,CAAC,OAAQ,QAAO;AAEpB,SAAO,0BAA0B,IAAI,MAAM,IAAI,kBAAkB;AACnE;AAGO,MAAM,+BAA+B;AAAA,EAC1C,QAAQ,IAAI;AACd;AASO,MAAM,kBAAkB,gCAAgC;AAE/D,MAAM,UAAU,QAAQ,IAAI,uBAAuB;AAWnD,SAAS,0BAA8C;AACrD,QAAM,SAAS,iBAAiB,EAAE,kBAAkB,KAAK,EAAE,YAAY;AAEvE,SAAO,UAAU,CAAC,0BAA0B,IAAI,MAAM,IAAI,SAAS;AACrE;AAOO,SAAS,iBAAyB;AACvC,SAAO,wBAAwB,KAAK;AACtC;AAGO,SAAS,cACd,MACA,cACQ;AAGR,MAAI,wBAAwB,GAAG;AAC7B,WAAO,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAAA,EACpD;AACA,MAAI,aAAc,QAAO,WAAW,YAAY;AAChD,MAAI,CAAC,KAAM,QAAO;AAClB,SAAO,kBACH,WAAW,IAAI,IAAI,eAAe,KAClC,GAAG,OAAO,IAAI,IAAI;AACxB;AAOO,SAAS,kBACd,MACA,MACA,cACQ;AACR,QAAM,OAAO,cAAc,MAAM,YAAY;AAC7C,SAAO,SAAS,MAAM,OAAO,GAAG,IAAI,GAAG,IAAI;AAC7C;AAQO,SAAS,mBAAmB,QAA4C;AAC7E,SAAO,CAAC,CAAC,UAAU,WAAW,eAAe,WAAW;AAC1D;","names":[]}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import type { Entitlements, MerchantPlan, MerchantPlans, PlanStanding, SubscriptionEvent } from "./pricing-plans-types";
|
|
2
|
+
/**
|
|
3
|
+
* Olive's monthly subscription billing: one charge per merchant per month,
|
|
4
|
+
* taken from their wallet. Amounts are minor-unit strings at the currency's
|
|
5
|
+
* exponent ("1500000" NGN is ₦15,000). Every read says `enabled: false`
|
|
6
|
+
* while the engine has billing switched off, and the screens hide then.
|
|
7
|
+
*/
|
|
8
|
+
export type SubscriptionChargeStatus = "due" | "retrying" | "paid" | "past_due" | "skipped";
|
|
9
|
+
/** How a merchant's subscription stands. */
|
|
10
|
+
export type MerchantBillingStatus = "active" | "retrying" | "past_due" | "cancelling" | "cancelled" | "no_price";
|
|
11
|
+
/** One month on the history; a paid one is its receipt. */
|
|
12
|
+
export interface SubscriptionChargeView {
|
|
13
|
+
id: string;
|
|
14
|
+
/** The month billed, "2026-11". */
|
|
15
|
+
period: string;
|
|
16
|
+
status: SubscriptionChargeStatus;
|
|
17
|
+
currency: string;
|
|
18
|
+
exponent: number;
|
|
19
|
+
amountMinor: string | null;
|
|
20
|
+
attempts: number;
|
|
21
|
+
lastAttemptAt: string | null;
|
|
22
|
+
paidAt: string | null;
|
|
23
|
+
/** The ledger reference, on a paid month only. */
|
|
24
|
+
reference: string | null;
|
|
25
|
+
}
|
|
26
|
+
export interface SubscriptionPlan {
|
|
27
|
+
currency: string;
|
|
28
|
+
exponent: number;
|
|
29
|
+
amountMinor: string;
|
|
30
|
+
/** Add-ons in the amount, each in the same currency. */
|
|
31
|
+
addOns?: {
|
|
32
|
+
feature: string;
|
|
33
|
+
amountMinor: string;
|
|
34
|
+
}[];
|
|
35
|
+
}
|
|
36
|
+
/** The wallet charge side of a merchant's plan (api-next #473). */
|
|
37
|
+
export type WalletBilling = {
|
|
38
|
+
enabled: false;
|
|
39
|
+
} | {
|
|
40
|
+
enabled: true;
|
|
41
|
+
status: MerchantBillingStatus;
|
|
42
|
+
plan: SubscriptionPlan | null;
|
|
43
|
+
/** "2026-11-01" */
|
|
44
|
+
nextBillingDate: string;
|
|
45
|
+
failedCharge: (SubscriptionChargeView & {
|
|
46
|
+
retryUntil: string | null;
|
|
47
|
+
}) | null;
|
|
48
|
+
history: SubscriptionChargeView[];
|
|
49
|
+
};
|
|
50
|
+
/** GET pricing/subscription: my plan, how it stands, and its charges. */
|
|
51
|
+
export type MerchantSubscription = Partial<Omit<PlanStanding, "plan" | "status" | "features">> & {
|
|
52
|
+
plan: MerchantPlan | null;
|
|
53
|
+
status: MerchantBillingStatus;
|
|
54
|
+
/** Null while nothing is in the plan's way (no plan yet). */
|
|
55
|
+
features: Entitlements | null;
|
|
56
|
+
/** "2026-11-01"; null when nothing will be charged. */
|
|
57
|
+
nextChargeDate: string | null;
|
|
58
|
+
billing: WalletBilling;
|
|
59
|
+
};
|
|
60
|
+
export interface MerchantBillingRow {
|
|
61
|
+
tenantId: string;
|
|
62
|
+
businessName: string | null;
|
|
63
|
+
status: MerchantBillingStatus;
|
|
64
|
+
currency: string | null;
|
|
65
|
+
exponent: number | null;
|
|
66
|
+
plan: {
|
|
67
|
+
id: string;
|
|
68
|
+
name: string | null;
|
|
69
|
+
} | null;
|
|
70
|
+
/** The plan it moves to at the next charge date. */
|
|
71
|
+
pendingPlanId: string | null;
|
|
72
|
+
cancelAtPeriodEnd: boolean;
|
|
73
|
+
currentPeriodEnd: string | null;
|
|
74
|
+
/** Plan price plus add-ons in the wallet currency. */
|
|
75
|
+
monthlyAmountMinor: string | null;
|
|
76
|
+
lastCharge: {
|
|
77
|
+
period: string;
|
|
78
|
+
status: SubscriptionChargeStatus;
|
|
79
|
+
amountMinor: string | null;
|
|
80
|
+
paidAt: string | null;
|
|
81
|
+
lastAttemptAt: string | null;
|
|
82
|
+
} | null;
|
|
83
|
+
}
|
|
84
|
+
export interface MerchantBillingList {
|
|
85
|
+
enabled: boolean;
|
|
86
|
+
nextBillingDate: string;
|
|
87
|
+
rows: MerchantBillingRow[];
|
|
88
|
+
counts: Partial<Record<MerchantBillingStatus, number>>;
|
|
89
|
+
}
|
|
90
|
+
export interface MerchantBillingHistory {
|
|
91
|
+
tenantId: string;
|
|
92
|
+
businessName: string | null;
|
|
93
|
+
charges: SubscriptionChargeView[];
|
|
94
|
+
subscription: (PlanStanding & {
|
|
95
|
+
cancelReason: string | null;
|
|
96
|
+
}) | null;
|
|
97
|
+
/** Plan changes, cancellations and resumes, newest first. */
|
|
98
|
+
events: SubscriptionEvent[];
|
|
99
|
+
}
|
|
100
|
+
export interface MerchantBillingQuery {
|
|
101
|
+
status?: MerchantBillingStatus;
|
|
102
|
+
search?: string;
|
|
103
|
+
page?: number;
|
|
104
|
+
}
|
|
105
|
+
export declare const subscriptionBillingApi: {
|
|
106
|
+
/** The merchant's own plan, failed charge and history. */
|
|
107
|
+
mine: () => Promise<MerchantSubscription>;
|
|
108
|
+
/** The public plans, the merchant's own plan id and the display switches. */
|
|
109
|
+
plans: () => Promise<MerchantPlans>;
|
|
110
|
+
/** Moves to a plan from the next charge date; an upgrade unlocks at once. */
|
|
111
|
+
change: (planId: string, addOns?: string[]) => Promise<MerchantSubscription>;
|
|
112
|
+
/** The admin Subscriptions tab: 50 merchants a page. */
|
|
113
|
+
merchants: (query?: MerchantBillingQuery) => Promise<MerchantBillingList>;
|
|
114
|
+
history: (tenantId: string) => Promise<MerchantBillingHistory>;
|
|
115
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { apiFetch } from "./api";
|
|
2
|
+
const ADMIN = "/platform-admin/v1/pricing/subscriptions";
|
|
3
|
+
const subscriptionBillingApi = {
|
|
4
|
+
/** The merchant's own plan, failed charge and history. */
|
|
5
|
+
mine: () => apiFetch("/pricing/subscription"),
|
|
6
|
+
/** The public plans, the merchant's own plan id and the display switches. */
|
|
7
|
+
plans: () => apiFetch("/pricing/plans"),
|
|
8
|
+
/** Moves to a plan from the next charge date; an upgrade unlocks at once. */
|
|
9
|
+
change: (planId, addOns = []) => apiFetch("/pricing/subscription/change", {
|
|
10
|
+
method: "POST",
|
|
11
|
+
body: JSON.stringify({ planId, addOns })
|
|
12
|
+
}),
|
|
13
|
+
/** The admin Subscriptions tab: 50 merchants a page. */
|
|
14
|
+
merchants: (query = {}) => {
|
|
15
|
+
const params = new URLSearchParams();
|
|
16
|
+
if (query.status) params.set("status", query.status);
|
|
17
|
+
if (query.search?.trim()) params.set("search", query.search.trim());
|
|
18
|
+
if (query.page && query.page > 1) params.set("page", String(query.page));
|
|
19
|
+
const qs = params.toString();
|
|
20
|
+
return apiFetch(qs ? `${ADMIN}?${qs}` : ADMIN);
|
|
21
|
+
},
|
|
22
|
+
history: (tenantId) => apiFetch(`${ADMIN}/${tenantId}`)
|
|
23
|
+
};
|
|
24
|
+
export {
|
|
25
|
+
subscriptionBillingApi
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=subscription-billing-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/subscription-billing-api.ts"],"sourcesContent":["import { apiFetch } from \"./api\";\nimport type {\n Entitlements,\n MerchantPlan,\n MerchantPlans,\n PlanStanding,\n SubscriptionEvent,\n} from \"./pricing-plans-types\";\n\n/**\n * Olive's monthly subscription billing: one charge per merchant per month,\n * taken from their wallet. Amounts are minor-unit strings at the currency's\n * exponent (\"1500000\" NGN is ₦15,000). Every read says `enabled: false`\n * while the engine has billing switched off, and the screens hide then.\n */\nexport type SubscriptionChargeStatus =\n | \"due\"\n | \"retrying\"\n | \"paid\"\n | \"past_due\"\n | \"skipped\";\n\n/** How a merchant's subscription stands. */\nexport type MerchantBillingStatus =\n | \"active\"\n | \"retrying\"\n | \"past_due\"\n | \"cancelling\"\n | \"cancelled\"\n | \"no_price\";\n\n/** One month on the history; a paid one is its receipt. */\nexport interface SubscriptionChargeView {\n id: string;\n /** The month billed, \"2026-11\". */\n period: string;\n status: SubscriptionChargeStatus;\n currency: string;\n exponent: number;\n amountMinor: string | null;\n attempts: number;\n lastAttemptAt: string | null;\n paidAt: string | null;\n /** The ledger reference, on a paid month only. */\n reference: string | null;\n}\n\nexport interface SubscriptionPlan {\n currency: string;\n exponent: number;\n amountMinor: string;\n /** Add-ons in the amount, each in the same currency. */\n addOns?: { feature: string; amountMinor: string }[];\n}\n\n/** The wallet charge side of a merchant's plan (api-next #473). */\nexport type WalletBilling =\n | { enabled: false }\n | {\n enabled: true;\n status: MerchantBillingStatus;\n plan: SubscriptionPlan | null;\n /** \"2026-11-01\" */\n nextBillingDate: string;\n failedCharge:\n | (SubscriptionChargeView & { retryUntil: string | null })\n | null;\n history: SubscriptionChargeView[];\n };\n\n/** GET pricing/subscription: my plan, how it stands, and its charges. */\nexport type MerchantSubscription = Partial<\n Omit<PlanStanding, \"plan\" | \"status\" | \"features\">\n> & {\n plan: MerchantPlan | null;\n status: MerchantBillingStatus;\n /** Null while nothing is in the plan's way (no plan yet). */\n features: Entitlements | null;\n /** \"2026-11-01\"; null when nothing will be charged. */\n nextChargeDate: string | null;\n billing: WalletBilling;\n};\n\nexport interface MerchantBillingRow {\n tenantId: string;\n businessName: string | null;\n status: MerchantBillingStatus;\n currency: string | null;\n exponent: number | null;\n plan: { id: string; name: string | null } | null;\n /** The plan it moves to at the next charge date. */\n pendingPlanId: string | null;\n cancelAtPeriodEnd: boolean;\n currentPeriodEnd: string | null;\n /** Plan price plus add-ons in the wallet currency. */\n monthlyAmountMinor: string | null;\n lastCharge: {\n period: string;\n status: SubscriptionChargeStatus;\n amountMinor: string | null;\n paidAt: string | null;\n lastAttemptAt: string | null;\n } | null;\n}\n\nexport interface MerchantBillingList {\n enabled: boolean;\n nextBillingDate: string;\n rows: MerchantBillingRow[];\n counts: Partial<Record<MerchantBillingStatus, number>>;\n}\n\nexport interface MerchantBillingHistory {\n tenantId: string;\n businessName: string | null;\n charges: SubscriptionChargeView[];\n subscription: (PlanStanding & { cancelReason: string | null }) | null;\n /** Plan changes, cancellations and resumes, newest first. */\n events: SubscriptionEvent[];\n}\n\nexport interface MerchantBillingQuery {\n status?: MerchantBillingStatus;\n search?: string;\n page?: number;\n}\n\nconst ADMIN = \"/platform-admin/v1/pricing/subscriptions\";\n\nexport const subscriptionBillingApi = {\n /** The merchant's own plan, failed charge and history. */\n mine: () => apiFetch<MerchantSubscription>(\"/pricing/subscription\"),\n\n /** The public plans, the merchant's own plan id and the display switches. */\n plans: () => apiFetch<MerchantPlans>(\"/pricing/plans\"),\n\n /** Moves to a plan from the next charge date; an upgrade unlocks at once. */\n change: (planId: string, addOns: string[] = []) =>\n apiFetch<MerchantSubscription>(\"/pricing/subscription/change\", {\n method: \"POST\",\n body: JSON.stringify({ planId, addOns }),\n }),\n\n /** The admin Subscriptions tab: 50 merchants a page. */\n merchants: (query: MerchantBillingQuery = {}) => {\n const params = new URLSearchParams();\n\n if (query.status) params.set(\"status\", query.status);\n if (query.search?.trim()) params.set(\"search\", query.search.trim());\n if (query.page && query.page > 1) params.set(\"page\", String(query.page));\n\n const qs = params.toString();\n\n return apiFetch<MerchantBillingList>(qs ? `${ADMIN}?${qs}` : ADMIN);\n },\n\n history: (tenantId: string) =>\n apiFetch<MerchantBillingHistory>(`${ADMIN}/${tenantId}`),\n};\n"],"mappings":"AAAA,SAAS,gBAAgB;AA+HzB,MAAM,QAAQ;AAEP,MAAM,yBAAyB;AAAA;AAAA,EAEpC,MAAM,MAAM,SAA+B,uBAAuB;AAAA;AAAA,EAGlE,OAAO,MAAM,SAAwB,gBAAgB;AAAA;AAAA,EAGrD,QAAQ,CAAC,QAAgB,SAAmB,CAAC,MAC3C,SAA+B,gCAAgC;AAAA,IAC7D,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,EAAE,QAAQ,OAAO,CAAC;AAAA,EACzC,CAAC;AAAA;AAAA,EAGH,WAAW,CAAC,QAA8B,CAAC,MAAM;AAC/C,UAAM,SAAS,IAAI,gBAAgB;AAEnC,QAAI,MAAM,OAAQ,QAAO,IAAI,UAAU,MAAM,MAAM;AACnD,QAAI,MAAM,QAAQ,KAAK,EAAG,QAAO,IAAI,UAAU,MAAM,OAAO,KAAK,CAAC;AAClE,QAAI,MAAM,QAAQ,MAAM,OAAO,EAAG,QAAO,IAAI,QAAQ,OAAO,MAAM,IAAI,CAAC;AAEvE,UAAM,KAAK,OAAO,SAAS;AAE3B,WAAO,SAA8B,KAAK,GAAG,KAAK,IAAI,EAAE,KAAK,KAAK;AAAA,EACpE;AAAA,EAEA,SAAS,CAAC,aACR,SAAiC,GAAG,KAAK,IAAI,QAAQ,EAAE;AAC3D;","names":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { MerchantBillingStatus, SubscriptionChargeStatus } from "./subscription-billing-api";
|
|
2
|
+
/** A merchant's standing: the StatusBadge colour key and the word shown. */
|
|
3
|
+
export declare const BILLING_STATUS: Record<MerchantBillingStatus, {
|
|
4
|
+
badge: string;
|
|
5
|
+
label: string;
|
|
6
|
+
}>;
|
|
7
|
+
/** One month's charge, as the history reads it. */
|
|
8
|
+
export declare const CHARGE_STATUS: Record<SubscriptionChargeStatus, {
|
|
9
|
+
badge: string;
|
|
10
|
+
label: string;
|
|
11
|
+
}>;
|
|
12
|
+
/** "15 Oct 2026", or a dash. */
|
|
13
|
+
export declare const billingDate: (value: string | null | undefined) => string;
|
|
14
|
+
/** "23 Oct": the deadline in a sentence. */
|
|
15
|
+
export declare const billingDay: (value: string) => string;
|
|
16
|
+
/** "2026-11" → "November 2026". */
|
|
17
|
+
export declare const periodLabel: (period: string) => string;
|
|
18
|
+
/** "₦15,000", or a dash when there is no amount. */
|
|
19
|
+
export declare const chargeAmount: (amountMinor: string | null | undefined, currency: string | null | undefined) => string;
|
|
20
|
+
/** The failed-charge line a merchant reads, deadline included when known. */
|
|
21
|
+
export declare function failedChargeText(amountMinor: string | null, currency: string, retryUntil: string | null, pastDue: boolean): string;
|
|
22
|
+
/** A receipt number a person can read out: "OLV-202611-3F9A1C". */
|
|
23
|
+
export declare const receiptNumber: (charge: {
|
|
24
|
+
id: string;
|
|
25
|
+
period: string;
|
|
26
|
+
}) => string;
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { formatMinor } from "./money-minor";
|
|
2
|
+
const BILLING_STATUS = {
|
|
3
|
+
active: { badge: "active", label: "Active" },
|
|
4
|
+
retrying: { badge: "pending", label: "Retrying" },
|
|
5
|
+
past_due: { badge: "overdue", label: "Past due" },
|
|
6
|
+
cancelling: { badge: "scheduled", label: "Cancelling" },
|
|
7
|
+
cancelled: { badge: "cancelled", label: "Cancelled" },
|
|
8
|
+
no_price: { badge: "draft", label: "No price" }
|
|
9
|
+
};
|
|
10
|
+
const CHARGE_STATUS = {
|
|
11
|
+
due: { badge: "scheduled", label: "Due" },
|
|
12
|
+
retrying: { badge: "pending", label: "Retrying" },
|
|
13
|
+
paid: { badge: "paid", label: "Paid" },
|
|
14
|
+
past_due: { badge: "overdue", label: "Past due" },
|
|
15
|
+
skipped: { badge: "archived", label: "Not charged" }
|
|
16
|
+
};
|
|
17
|
+
const day = new Intl.DateTimeFormat("en-GB", {
|
|
18
|
+
day: "numeric",
|
|
19
|
+
month: "short",
|
|
20
|
+
year: "numeric",
|
|
21
|
+
timeZone: "UTC"
|
|
22
|
+
});
|
|
23
|
+
const shortDay = new Intl.DateTimeFormat("en-GB", {
|
|
24
|
+
day: "numeric",
|
|
25
|
+
month: "short",
|
|
26
|
+
timeZone: "UTC"
|
|
27
|
+
});
|
|
28
|
+
const month = new Intl.DateTimeFormat("en-GB", {
|
|
29
|
+
month: "long",
|
|
30
|
+
year: "numeric",
|
|
31
|
+
timeZone: "UTC"
|
|
32
|
+
});
|
|
33
|
+
const asDate = (value) => new Date(value.length === 10 ? `${value}T00:00:00Z` : value);
|
|
34
|
+
const billingDate = (value) => value ? day.format(asDate(value)) : "\u2013";
|
|
35
|
+
const billingDay = (value) => shortDay.format(asDate(value));
|
|
36
|
+
const periodLabel = (period) => month.format(asDate(`${period}-01`));
|
|
37
|
+
const chargeAmount = (amountMinor, currency) => amountMinor && currency ? formatMinor(amountMinor, currency, { trimZeros: true }) : "\u2013";
|
|
38
|
+
function failedChargeText(amountMinor, currency, retryUntil, pastDue) {
|
|
39
|
+
const amount = chargeAmount(amountMinor, currency);
|
|
40
|
+
if (pastDue || !retryUntil) {
|
|
41
|
+
return `We couldn't take your ${amount} subscription. Add money to your wallet.`;
|
|
42
|
+
}
|
|
43
|
+
return `We couldn't take your ${amount} subscription. Add money by ${billingDay(
|
|
44
|
+
retryUntil
|
|
45
|
+
)}.`;
|
|
46
|
+
}
|
|
47
|
+
const receiptNumber = (charge) => `OLV-${charge.period.replace("-", "")}-${charge.id.replace(/-/g, "").slice(0, 6).toUpperCase()}`;
|
|
48
|
+
export {
|
|
49
|
+
BILLING_STATUS,
|
|
50
|
+
CHARGE_STATUS,
|
|
51
|
+
billingDate,
|
|
52
|
+
billingDay,
|
|
53
|
+
chargeAmount,
|
|
54
|
+
failedChargeText,
|
|
55
|
+
periodLabel,
|
|
56
|
+
receiptNumber
|
|
57
|
+
};
|
|
58
|
+
//# sourceMappingURL=subscription-billing-model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/subscription-billing-model.ts"],"sourcesContent":["import { formatMinor } from \"./money-minor\";\nimport type {\n MerchantBillingStatus,\n SubscriptionChargeStatus,\n} from \"./subscription-billing-api\";\n\n/** A merchant's standing: the StatusBadge colour key and the word shown. */\nexport const BILLING_STATUS: Record<\n MerchantBillingStatus,\n { badge: string; label: string }\n> = {\n active: { badge: \"active\", label: \"Active\" },\n retrying: { badge: \"pending\", label: \"Retrying\" },\n past_due: { badge: \"overdue\", label: \"Past due\" },\n cancelling: { badge: \"scheduled\", label: \"Cancelling\" },\n cancelled: { badge: \"cancelled\", label: \"Cancelled\" },\n no_price: { badge: \"draft\", label: \"No price\" },\n};\n\n/** One month's charge, as the history reads it. */\nexport const CHARGE_STATUS: Record<\n SubscriptionChargeStatus,\n { badge: string; label: string }\n> = {\n due: { badge: \"scheduled\", label: \"Due\" },\n retrying: { badge: \"pending\", label: \"Retrying\" },\n paid: { badge: \"paid\", label: \"Paid\" },\n past_due: { badge: \"overdue\", label: \"Past due\" },\n skipped: { badge: \"archived\", label: \"Not charged\" },\n};\n\nconst day = new Intl.DateTimeFormat(\"en-GB\", {\n day: \"numeric\",\n month: \"short\",\n year: \"numeric\",\n timeZone: \"UTC\",\n});\n\nconst shortDay = new Intl.DateTimeFormat(\"en-GB\", {\n day: \"numeric\",\n month: \"short\",\n timeZone: \"UTC\",\n});\n\nconst month = new Intl.DateTimeFormat(\"en-GB\", {\n month: \"long\",\n year: \"numeric\",\n timeZone: \"UTC\",\n});\n\nconst asDate = (value: string) =>\n new Date(value.length === 10 ? `${value}T00:00:00Z` : value);\n\n/** \"15 Oct 2026\", or a dash. */\nexport const billingDate = (value: string | null | undefined) =>\n value ? day.format(asDate(value)) : \"–\";\n\n/** \"23 Oct\": the deadline in a sentence. */\nexport const billingDay = (value: string) => shortDay.format(asDate(value));\n\n/** \"2026-11\" → \"November 2026\". */\nexport const periodLabel = (period: string) =>\n month.format(asDate(`${period}-01`));\n\n/** \"₦15,000\", or a dash when there is no amount. */\nexport const chargeAmount = (\n amountMinor: string | null | undefined,\n currency: string | null | undefined\n) =>\n amountMinor && currency\n ? formatMinor(amountMinor, currency, { trimZeros: true })\n : \"–\";\n\n/** The failed-charge line a merchant reads, deadline included when known. */\nexport function failedChargeText(\n amountMinor: string | null,\n currency: string,\n retryUntil: string | null,\n pastDue: boolean\n): string {\n const amount = chargeAmount(amountMinor, currency);\n\n if (pastDue || !retryUntil) {\n return `We couldn't take your ${amount} subscription. Add money to your wallet.`;\n }\n\n return `We couldn't take your ${amount} subscription. Add money by ${billingDay(\n retryUntil\n )}.`;\n}\n\n/** A receipt number a person can read out: \"OLV-202611-3F9A1C\". */\nexport const receiptNumber = (charge: { id: string; period: string }) =>\n `OLV-${charge.period.replace(\"-\", \"\")}-${charge.id\n .replace(/-/g, \"\")\n .slice(0, 6)\n .toUpperCase()}`;\n"],"mappings":"AAAA,SAAS,mBAAmB;AAOrB,MAAM,iBAGT;AAAA,EACF,QAAQ,EAAE,OAAO,UAAU,OAAO,SAAS;AAAA,EAC3C,UAAU,EAAE,OAAO,WAAW,OAAO,WAAW;AAAA,EAChD,UAAU,EAAE,OAAO,WAAW,OAAO,WAAW;AAAA,EAChD,YAAY,EAAE,OAAO,aAAa,OAAO,aAAa;AAAA,EACtD,WAAW,EAAE,OAAO,aAAa,OAAO,YAAY;AAAA,EACpD,UAAU,EAAE,OAAO,SAAS,OAAO,WAAW;AAChD;AAGO,MAAM,gBAGT;AAAA,EACF,KAAK,EAAE,OAAO,aAAa,OAAO,MAAM;AAAA,EACxC,UAAU,EAAE,OAAO,WAAW,OAAO,WAAW;AAAA,EAChD,MAAM,EAAE,OAAO,QAAQ,OAAO,OAAO;AAAA,EACrC,UAAU,EAAE,OAAO,WAAW,OAAO,WAAW;AAAA,EAChD,SAAS,EAAE,OAAO,YAAY,OAAO,cAAc;AACrD;AAEA,MAAM,MAAM,IAAI,KAAK,eAAe,SAAS;AAAA,EAC3C,KAAK;AAAA,EACL,OAAO;AAAA,EACP,MAAM;AAAA,EACN,UAAU;AACZ,CAAC;AAED,MAAM,WAAW,IAAI,KAAK,eAAe,SAAS;AAAA,EAChD,KAAK;AAAA,EACL,OAAO;AAAA,EACP,UAAU;AACZ,CAAC;AAED,MAAM,QAAQ,IAAI,KAAK,eAAe,SAAS;AAAA,EAC7C,OAAO;AAAA,EACP,MAAM;AAAA,EACN,UAAU;AACZ,CAAC;AAED,MAAM,SAAS,CAAC,UACd,IAAI,KAAK,MAAM,WAAW,KAAK,GAAG,KAAK,eAAe,KAAK;AAGtD,MAAM,cAAc,CAAC,UAC1B,QAAQ,IAAI,OAAO,OAAO,KAAK,CAAC,IAAI;AAG/B,MAAM,aAAa,CAAC,UAAkB,SAAS,OAAO,OAAO,KAAK,CAAC;AAGnE,MAAM,cAAc,CAAC,WAC1B,MAAM,OAAO,OAAO,GAAG,MAAM,KAAK,CAAC;AAG9B,MAAM,eAAe,CAC1B,aACA,aAEA,eAAe,WACX,YAAY,aAAa,UAAU,EAAE,WAAW,KAAK,CAAC,IACtD;AAGC,SAAS,iBACd,aACA,UACA,YACA,SACQ;AACR,QAAM,SAAS,aAAa,aAAa,QAAQ;AAEjD,MAAI,WAAW,CAAC,YAAY;AAC1B,WAAO,yBAAyB,MAAM;AAAA,EACxC;AAEA,SAAO,yBAAyB,MAAM,+BAA+B;AAAA,IACnE;AAAA,EACF,CAAC;AACH;AAGO,MAAM,gBAAgB,CAAC,WAC5B,OAAO,OAAO,OAAO,QAAQ,KAAK,EAAE,CAAC,IAAI,OAAO,GAC7C,QAAQ,MAAM,EAAE,EAChB,MAAM,GAAG,CAAC,EACV,YAAY,CAAC;","names":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The title a case is listed under, taken from what was written.
|
|
3
|
+
*
|
|
4
|
+
* NOBODY IS ASKED FOR ONE ANY MORE. A case is a conversation, and a
|
|
5
|
+
* conversation opens with a sentence, not with a headline and then the same
|
|
6
|
+
* thing again in full — everybody who wrote "Payout has not arrived" in the
|
|
7
|
+
* subject box wrote "my payout has not arrived" underneath it. The list still
|
|
8
|
+
* needs a row title, so the first line becomes it.
|
|
9
|
+
*/
|
|
10
|
+
export declare function subjectFrom(message: string, hasAttachment: boolean): string;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
function subjectFrom(message, hasAttachment) {
|
|
2
|
+
const [firstLine = ""] = message.trim().split("\n");
|
|
3
|
+
const line = firstLine.trim();
|
|
4
|
+
if (!line) return hasAttachment ? "Voice note" : "";
|
|
5
|
+
if (line.length <= 90) return line;
|
|
6
|
+
const cut = line.slice(0, 90);
|
|
7
|
+
const space = cut.lastIndexOf(" ");
|
|
8
|
+
return `${(space > 40 ? cut.slice(0, space) : cut).trim()}\u2026`;
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
subjectFrom
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=support-case-subject.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/support-case-subject.ts"],"sourcesContent":["/**\n * The title a case is listed under, taken from what was written.\n *\n * NOBODY IS ASKED FOR ONE ANY MORE. A case is a conversation, and a\n * conversation opens with a sentence, not with a headline and then the same\n * thing again in full — everybody who wrote \"Payout has not arrived\" in the\n * subject box wrote \"my payout has not arrived\" underneath it. The list still\n * needs a row title, so the first line becomes it.\n */\nexport function subjectFrom(message: string, hasAttachment: boolean) {\n const [firstLine = ''] = message.trim().split('\\n');\n const line = firstLine.trim();\n if (!line) return hasAttachment ? 'Voice note' : '';\n if (line.length <= 90) return line;\n // Cut on a word so a truncated row title still reads as words.\n const cut = line.slice(0, 90);\n const space = cut.lastIndexOf(' ');\n return `${(space > 40 ? cut.slice(0, space) : cut).trim()}…`;\n}\n"],"mappings":"AASO,SAAS,YAAY,SAAiB,eAAwB;AACnE,QAAM,CAAC,YAAY,EAAE,IAAI,QAAQ,KAAK,EAAE,MAAM,IAAI;AAClD,QAAM,OAAO,UAAU,KAAK;AAC5B,MAAI,CAAC,KAAM,QAAO,gBAAgB,eAAe;AACjD,MAAI,KAAK,UAAU,GAAI,QAAO;AAE9B,QAAM,MAAM,KAAK,MAAM,GAAG,EAAE;AAC5B,QAAM,QAAQ,IAAI,YAAY,GAAG;AACjC,SAAO,IAAI,QAAQ,KAAK,IAAI,MAAM,GAAG,KAAK,IAAI,KAAK,KAAK,CAAC;AAC3D;","names":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where merchants write to reach support. Mail sent here opens a case in the
|
|
3
|
+
* console's Support inbox. Shown in the inbox header and on email-sourced
|
|
4
|
+
* cases; components import it rather than spelling the address out.
|
|
5
|
+
*/
|
|
6
|
+
export declare const SUPPORT_INBOX_EMAIL = "support@boxspace.io";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/support-inbox.ts"],"sourcesContent":["/**\n * Where merchants write to reach support. Mail sent here opens a case in the\n * console's Support inbox. Shown in the inbox header and on email-sourced\n * cases; components import it rather than spelling the address out.\n */\nexport const SUPPORT_INBOX_EMAIL = 'support@boxspace.io';\n"],"mappings":"AAKO,MAAM,sBAAsB;","names":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export declare const SUPPORT_EMAIL: string;
|
|
2
|
+
/** What the support team is called in copy ("Boxspace support"); a box sets `NEXT_PUBLIC_BOX_SUPPORT_NAME`. */
|
|
3
|
+
export declare const SUPPORT_NAME: string;
|
|
4
|
+
/** The support line as the box wrote it ("02013303200"), or empty when it has none. */
|
|
5
|
+
export declare const SUPPORT_PHONE: string;
|
|
6
|
+
/** A `tel:` link for the number: digits and a leading + only, so spaces and dashes never break it. */
|
|
7
|
+
export declare function supportPhoneHref(phone?: string): string;
|
package/dist/support.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
const clean = (value) => (value ?? "").trim();
|
|
2
|
+
const SUPPORT_EMAIL = clean(process.env.NEXT_PUBLIC_BOX_SUPPORT_EMAIL) || "support@boxspace.io";
|
|
3
|
+
const SUPPORT_NAME = clean(process.env.NEXT_PUBLIC_BOX_SUPPORT_NAME) || "Boxspace";
|
|
4
|
+
const SUPPORT_PHONE = clean(
|
|
5
|
+
process.env.NEXT_PUBLIC_BOX_SUPPORT_PHONE
|
|
6
|
+
);
|
|
7
|
+
function supportPhoneHref(phone = SUPPORT_PHONE) {
|
|
8
|
+
return `tel:${phone.replace(/[^\d+]/g, "")}`;
|
|
9
|
+
}
|
|
10
|
+
export {
|
|
11
|
+
SUPPORT_EMAIL,
|
|
12
|
+
SUPPORT_NAME,
|
|
13
|
+
SUPPORT_PHONE,
|
|
14
|
+
supportPhoneHref
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=support.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/support.ts"],"sourcesContent":["/**\n * The address and number people use for help.\n *\n * One definition because it was three string literals — the help page, the\n * data-export request and the domain-in-use link — and each said it was the\n * same address. `support@` is an alias that forwards to a monitored mailbox.\n *\n * A box with its own support team sets `NEXT_PUBLIC_BOX_SUPPORT_EMAIL` and\n * `NEXT_PUBLIC_BOX_SUPPORT_PHONE` when it builds the console; without them the\n * address is Boxspace's and there is no number. The variables are read by name\n * so the bundler can inline them.\n */\nconst clean = (value: string | undefined): string => (value ?? '').trim();\n\nexport const SUPPORT_EMAIL: string =\n clean(process.env.NEXT_PUBLIC_BOX_SUPPORT_EMAIL) || 'support@boxspace.io';\n\n/** What the support team is called in copy (\"Boxspace support\"); a box sets `NEXT_PUBLIC_BOX_SUPPORT_NAME`. */\nexport const SUPPORT_NAME: string =\n clean(process.env.NEXT_PUBLIC_BOX_SUPPORT_NAME) || 'Boxspace';\n\n/** The support line as the box wrote it (\"02013303200\"), or empty when it has none. */\nexport const SUPPORT_PHONE: string = clean(\n process.env.NEXT_PUBLIC_BOX_SUPPORT_PHONE,\n);\n\n/** A `tel:` link for the number: digits and a leading + only, so spaces and dashes never break it. */\nexport function supportPhoneHref(phone: string = SUPPORT_PHONE): string {\n return `tel:${phone.replace(/[^\\d+]/g, '')}`;\n}\n"],"mappings":"AAYA,MAAM,QAAQ,CAAC,WAAuC,SAAS,IAAI,KAAK;AAEjE,MAAM,gBACX,MAAM,QAAQ,IAAI,6BAA6B,KAAK;AAG/C,MAAM,eACX,MAAM,QAAQ,IAAI,4BAA4B,KAAK;AAG9C,MAAM,gBAAwB;AAAA,EACnC,QAAQ,IAAI;AACd;AAGO,SAAS,iBAAiB,QAAgB,eAAuB;AACtE,SAAO,OAAO,MAAM,QAAQ,WAAW,EAAE,CAAC;AAC5C;","names":[]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Where "your team" lives. A box with its own team screen (Olive's Staff page, whose roles and
|
|
3
|
+
* invitations come from its engine) names it with `NEXT_PUBLIC_BOX_TEAM_PAGE`; without it the shared
|
|
4
|
+
* Team settings open, as a window over the page. Every link that means "manage the team" uses this, so
|
|
5
|
+
* the Settings row, the Home team card, the composer and Help all arrive at the same screen.
|
|
6
|
+
*
|
|
7
|
+
* The variable is read by name so the bundler can inline it.
|
|
8
|
+
*/
|
|
9
|
+
export declare const TEAM_PAGE: string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/team-page.ts"],"sourcesContent":["/**\n * Where \"your team\" lives. A box with its own team screen (Olive's Staff page, whose roles and\n * invitations come from its engine) names it with `NEXT_PUBLIC_BOX_TEAM_PAGE`; without it the shared\n * Team settings open, as a window over the page. Every link that means \"manage the team\" uses this, so\n * the Settings row, the Home team card, the composer and Help all arrive at the same screen.\n *\n * The variable is read by name so the bundler can inline it.\n */\nexport const TEAM_PAGE: string =\n process.env.NEXT_PUBLIC_BOX_TEAM_PAGE || '/dashboard/settings/team';\n"],"mappings":"AAQO,MAAM,YACX,QAAQ,IAAI,6BAA6B;","names":[]}
|