@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,63 @@
|
|
|
1
|
+
import { apiFetch } from "./api";
|
|
2
|
+
const adminFeedbackApi = {
|
|
3
|
+
list(params = {}) {
|
|
4
|
+
const qs = new URLSearchParams();
|
|
5
|
+
if (params.page) qs.set("page", String(params.page));
|
|
6
|
+
if (params.pageSize) qs.set("pageSize", String(params.pageSize));
|
|
7
|
+
if (params.search) qs.set("search", params.search);
|
|
8
|
+
if (params.category) qs.set("category", params.category);
|
|
9
|
+
if (params.status) qs.set("status", params.status);
|
|
10
|
+
if (params.rating) qs.set("rating", String(params.rating));
|
|
11
|
+
const query = qs.toString();
|
|
12
|
+
return apiFetch(
|
|
13
|
+
`/platform-admin/v1/feedback${query ? `?${query}` : ""}`
|
|
14
|
+
);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
const adminSignalsApi = {
|
|
18
|
+
summary: (days = 90) => apiFetch(
|
|
19
|
+
`/platform-admin/v1/feedback/summary?days=${days}`
|
|
20
|
+
),
|
|
21
|
+
comments: (days = 90, promptKey) => apiFetch(
|
|
22
|
+
`/platform-admin/v1/feedback/comments?days=${days}` + (promptKey ? `&promptKey=${encodeURIComponent(promptKey)}` : "")
|
|
23
|
+
),
|
|
24
|
+
promptHealth: () => apiFetch(
|
|
25
|
+
"/platform-admin/v1/feedback/prompt-health"
|
|
26
|
+
)
|
|
27
|
+
};
|
|
28
|
+
const adminFeedbackPromptsApi = {
|
|
29
|
+
list(params = {}) {
|
|
30
|
+
const query = new URLSearchParams();
|
|
31
|
+
if (params.page) query.set("page", String(params.page));
|
|
32
|
+
if (params.pageSize) query.set("pageSize", String(params.pageSize));
|
|
33
|
+
if (params.search) query.set("search", params.search);
|
|
34
|
+
if (params.mode) query.set("mode", params.mode);
|
|
35
|
+
if (params.status) query.set("status", params.status);
|
|
36
|
+
const suffix = query.toString();
|
|
37
|
+
return apiFetch(
|
|
38
|
+
`/platform-admin/v1/feedback/prompts${suffix ? `?${suffix}` : ""}`
|
|
39
|
+
);
|
|
40
|
+
},
|
|
41
|
+
get: (id) => apiFetch(`/platform-admin/v1/feedback/prompts/${id}`),
|
|
42
|
+
create: (input) => apiFetch("/platform-admin/v1/feedback/prompts", {
|
|
43
|
+
method: "POST",
|
|
44
|
+
body: JSON.stringify(input)
|
|
45
|
+
}),
|
|
46
|
+
update: (id, input) => apiFetch(`/platform-admin/v1/feedback/prompts/${id}`, {
|
|
47
|
+
method: "PATCH",
|
|
48
|
+
body: JSON.stringify(input)
|
|
49
|
+
}),
|
|
50
|
+
command: (id, command) => apiFetch(
|
|
51
|
+
`/platform-admin/v1/feedback/prompts/${id}/${command}`,
|
|
52
|
+
{ method: "POST" }
|
|
53
|
+
),
|
|
54
|
+
insights: (id, days = 90) => apiFetch(
|
|
55
|
+
`/platform-admin/v1/feedback/prompts/${id}/insights?days=${days}`
|
|
56
|
+
)
|
|
57
|
+
};
|
|
58
|
+
export {
|
|
59
|
+
adminFeedbackApi,
|
|
60
|
+
adminFeedbackPromptsApi,
|
|
61
|
+
adminSignalsApi
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=admin-feedback-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/admin-feedback-api.ts"],"sourcesContent":["import { apiFetch } from './api';\nimport type {\n CountryFields,\n FeedbackSignalBusiness,\n} from './admin-country-api';\n\nexport type AdminFeedbackCategory = 'bug' | 'suggestion' | 'question';\nexport type AdminFeedbackStatus =\n 'open' | 'acknowledged' | 'resolved' | 'closed';\n\nexport interface AdminFeedbackBrowserInfo {\n userAgent?: string;\n language?: string;\n platform?: string;\n screenWidth?: number;\n screenHeight?: number;\n viewportWidth?: number;\n viewportHeight?: number;\n}\n\nexport interface AdminFeedbackRow {\n id: string;\n account: { id: string; name: string | null; email: string };\n tenant: (CountryFields & { id: string; name: string; slug: string }) | null;\n rating: number | null;\n note: string | null;\n flowContext: string | null;\n area: string | null;\n route: string | null;\n pagePath: string;\n pageUrl: string;\n browserInfo: AdminFeedbackBrowserInfo;\n screenshotUrl: string | null;\n audioUrl: string | null;\n audioSeconds: number | null;\n posthogSessionUrl: string | null;\n githubIssueUrl: string | null;\n category: AdminFeedbackCategory;\n status: AdminFeedbackStatus;\n createdAt: string;\n updatedAt: string | null;\n}\n\nexport interface AdminFeedbackPage {\n items: AdminFeedbackRow[];\n total: number;\n page: number;\n pageSize: number;\n totalPages: number;\n}\n\nexport interface AdminFeedbackQuery {\n page?: number;\n pageSize?: number;\n search?: string;\n category?: AdminFeedbackCategory;\n status?: AdminFeedbackStatus;\n rating?: number;\n}\n\nexport const adminFeedbackApi = {\n list(params: AdminFeedbackQuery = {}) {\n const qs = new URLSearchParams();\n if (params.page) qs.set('page', String(params.page));\n if (params.pageSize) qs.set('pageSize', String(params.pageSize));\n if (params.search) qs.set('search', params.search);\n if (params.category) qs.set('category', params.category);\n if (params.status) qs.set('status', params.status);\n if (params.rating) qs.set('rating', String(params.rating));\n const query = qs.toString();\n return apiFetch<AdminFeedbackPage>(\n `/platform-admin/v1/feedback${query ? `?${query}` : ''}`,\n );\n },\n};\n\n/**\n * THE SCORES, WHICH ARE NOT THE TICKETS.\n *\n * `adminFeedbackApi.list` above reads what merchants FILED — a message, a page\n * path, a status. This reads what they SCORED: NPS, CSAT, CES, thumbs, stars.\n * Two questions, two tables, one desk, which is why they sit in one file and\n * not one function.\n *\n * `promptKey` is the column that makes any of it worth having. Unkeyed, the\n * data answers \"are merchants happy\" and nothing else; keyed, it answers\n * \"which screen is the unhappy one\".\n */\nexport type FeedbackSignalKind = 'nps' | 'csat' | 'ces' | 'thumb' | 'star';\n\nexport interface FeedbackSignalSummaryRow {\n promptKey: string;\n kind: FeedbackSignalKind;\n responses: number;\n average: number;\n /** Promoters minus detractors, NPS only. Null for every other kind. */\n nps: number | null;\n commented: number;\n}\n\nexport interface FeedbackSignalComment {\n id: string;\n business: FeedbackSignalBusiness | null;\n serviceCaseId: string | null;\n promptKey: string;\n kind: FeedbackSignalKind;\n score: number;\n /** Null when the answer was spoken rather than typed. */\n comment: string | null;\n audioUrl: string | null;\n audioSeconds: number | null;\n createdAt: string;\n context: Record<string, unknown>;\n}\n\n/**\n * Shown versus answered, which is how a prompt says it is in the wrong place.\n * A prompt seen four hundred times and answered nine is not unpopular; it is\n * interrupting something.\n */\nexport interface FeedbackPromptHealth {\n promptKey: string;\n people: number;\n shown: number;\n answered: number;\n dismissed: number;\n waiting: number;\n}\n\nexport const adminSignalsApi = {\n summary: (days = 90) =>\n apiFetch<FeedbackSignalSummaryRow[]>(\n `/platform-admin/v1/feedback/summary?days=${days}`,\n ),\n\n comments: (days = 90, promptKey?: string) =>\n apiFetch<FeedbackSignalComment[]>(\n `/platform-admin/v1/feedback/comments?days=${days}` +\n (promptKey ? `&promptKey=${encodeURIComponent(promptKey)}` : ''),\n ),\n\n promptHealth: () =>\n apiFetch<FeedbackPromptHealth[]>(\n '/platform-admin/v1/feedback/prompt-health',\n ),\n};\n\nexport type FeedbackPromptMode = 'campaign' | 'direct';\nexport type FeedbackPromptPlacement = 'next_sign_in' | 'page';\nexport type FeedbackPromptAudience =\n | { type: 'all' }\n | { type: 'workspaces'; tenantIds: string[] }\n | { type: 'accounts'; accountIds: string[] }\n | {\n type: 'segment';\n industries?: string[];\n plans?: string[];\n tenantStatuses?: string[];\n };\nexport type FeedbackPromptStatus =\n 'draft' | 'scheduled' | 'active' | 'paused' | 'completed';\n\nexport interface AdminFeedbackPrompt {\n id: string;\n key: string;\n name: string;\n question: string;\n followUp: string | null;\n kind: FeedbackSignalKind;\n scaleMin: number;\n scaleMax: number;\n allowComment: boolean;\n allowVoice: boolean;\n mode: FeedbackPromptMode;\n status: FeedbackPromptStatus;\n audience: FeedbackPromptAudience;\n placement: FeedbackPromptPlacement;\n routePattern: string | null;\n startsAt: string | null;\n endsAt: string | null;\n snoozeDays: number;\n publishedAt: string | null;\n completedAt: string | null;\n createdAt: string;\n updatedAt: string;\n}\n\nexport interface AdminFeedbackPromptInput {\n key: string;\n name: string;\n question: string;\n followUp?: string | null;\n kind: FeedbackSignalKind;\n scaleMin: number;\n scaleMax: number;\n allowComment: boolean;\n allowVoice: boolean;\n mode: FeedbackPromptMode;\n audience: FeedbackPromptAudience;\n placement: FeedbackPromptPlacement;\n routePattern?: string | null;\n startsAt?: string | null;\n endsAt?: string | null;\n snoozeDays: number;\n}\n\nexport interface AdminFeedbackPromptPage {\n items: AdminFeedbackPrompt[];\n total: number;\n page: number;\n pageSize: number;\n}\n\nexport interface AdminFeedbackPromptQuery {\n page?: number;\n pageSize?: number;\n search?: string;\n mode?: FeedbackPromptMode;\n status?: FeedbackPromptStatus;\n}\n\nexport interface AdminFeedbackPromptInsights {\n promptId: string;\n promptKey: string;\n audienceSize: number;\n reached: number;\n shown: number;\n answered: number;\n dismissed: number;\n waiting: number;\n responseRate: number | null;\n dismissalRate: number | null;\n average: number | null;\n nps: number | null;\n withContext: number;\n trend: Array<{ date: string; answered: number; average: number | null }>;\n}\n\nexport type FeedbackPromptCommand = 'publish' | 'pause' | 'complete';\n\nexport const adminFeedbackPromptsApi = {\n list(params: AdminFeedbackPromptQuery = {}) {\n const query = new URLSearchParams();\n if (params.page) query.set('page', String(params.page));\n if (params.pageSize) query.set('pageSize', String(params.pageSize));\n if (params.search) query.set('search', params.search);\n if (params.mode) query.set('mode', params.mode);\n if (params.status) query.set('status', params.status);\n const suffix = query.toString();\n return apiFetch<AdminFeedbackPromptPage>(\n `/platform-admin/v1/feedback/prompts${suffix ? `?${suffix}` : ''}`,\n );\n },\n get: (id: string) =>\n apiFetch<AdminFeedbackPrompt>(`/platform-admin/v1/feedback/prompts/${id}`),\n create: (input: AdminFeedbackPromptInput) =>\n apiFetch<AdminFeedbackPrompt>('/platform-admin/v1/feedback/prompts', {\n method: 'POST',\n body: JSON.stringify(input),\n }),\n update: (id: string, input: Partial<AdminFeedbackPromptInput>) =>\n apiFetch<AdminFeedbackPrompt>(`/platform-admin/v1/feedback/prompts/${id}`, {\n method: 'PATCH',\n body: JSON.stringify(input),\n }),\n command: (id: string, command: FeedbackPromptCommand) =>\n apiFetch<AdminFeedbackPrompt>(\n `/platform-admin/v1/feedback/prompts/${id}/${command}`,\n { method: 'POST' },\n ),\n insights: (id: string, days = 90) =>\n apiFetch<AdminFeedbackPromptInsights>(\n `/platform-admin/v1/feedback/prompts/${id}/insights?days=${days}`,\n ),\n};\n"],"mappings":"AAAA,SAAS,gBAAgB;AA4DlB,MAAM,mBAAmB;AAAA,EAC9B,KAAK,SAA6B,CAAC,GAAG;AACpC,UAAM,KAAK,IAAI,gBAAgB;AAC/B,QAAI,OAAO,KAAM,IAAG,IAAI,QAAQ,OAAO,OAAO,IAAI,CAAC;AACnD,QAAI,OAAO,SAAU,IAAG,IAAI,YAAY,OAAO,OAAO,QAAQ,CAAC;AAC/D,QAAI,OAAO,OAAQ,IAAG,IAAI,UAAU,OAAO,MAAM;AACjD,QAAI,OAAO,SAAU,IAAG,IAAI,YAAY,OAAO,QAAQ;AACvD,QAAI,OAAO,OAAQ,IAAG,IAAI,UAAU,OAAO,MAAM;AACjD,QAAI,OAAO,OAAQ,IAAG,IAAI,UAAU,OAAO,OAAO,MAAM,CAAC;AACzD,UAAM,QAAQ,GAAG,SAAS;AAC1B,WAAO;AAAA,MACL,8BAA8B,QAAQ,IAAI,KAAK,KAAK,EAAE;AAAA,IACxD;AAAA,EACF;AACF;AAuDO,MAAM,kBAAkB;AAAA,EAC7B,SAAS,CAAC,OAAO,OACf;AAAA,IACE,4CAA4C,IAAI;AAAA,EAClD;AAAA,EAEF,UAAU,CAAC,OAAO,IAAI,cACpB;AAAA,IACE,6CAA6C,IAAI,MAC9C,YAAY,cAAc,mBAAmB,SAAS,CAAC,KAAK;AAAA,EACjE;AAAA,EAEF,cAAc,MACZ;AAAA,IACE;AAAA,EACF;AACJ;AA+FO,MAAM,0BAA0B;AAAA,EACrC,KAAK,SAAmC,CAAC,GAAG;AAC1C,UAAM,QAAQ,IAAI,gBAAgB;AAClC,QAAI,OAAO,KAAM,OAAM,IAAI,QAAQ,OAAO,OAAO,IAAI,CAAC;AACtD,QAAI,OAAO,SAAU,OAAM,IAAI,YAAY,OAAO,OAAO,QAAQ,CAAC;AAClE,QAAI,OAAO,OAAQ,OAAM,IAAI,UAAU,OAAO,MAAM;AACpD,QAAI,OAAO,KAAM,OAAM,IAAI,QAAQ,OAAO,IAAI;AAC9C,QAAI,OAAO,OAAQ,OAAM,IAAI,UAAU,OAAO,MAAM;AACpD,UAAM,SAAS,MAAM,SAAS;AAC9B,WAAO;AAAA,MACL,sCAAsC,SAAS,IAAI,MAAM,KAAK,EAAE;AAAA,IAClE;AAAA,EACF;AAAA,EACA,KAAK,CAAC,OACJ,SAA8B,uCAAuC,EAAE,EAAE;AAAA,EAC3E,QAAQ,CAAC,UACP,SAA8B,uCAAuC;AAAA,IACnE,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,KAAK;AAAA,EAC5B,CAAC;AAAA,EACH,QAAQ,CAAC,IAAY,UACnB,SAA8B,uCAAuC,EAAE,IAAI;AAAA,IACzE,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,KAAK;AAAA,EAC5B,CAAC;AAAA,EACH,SAAS,CAAC,IAAY,YACpB;AAAA,IACE,uCAAuC,EAAE,IAAI,OAAO;AAAA,IACpD,EAAE,QAAQ,OAAO;AAAA,EACnB;AAAA,EACF,UAAU,CAAC,IAAY,OAAO,OAC5B;AAAA,IACE,uCAAuC,EAAE,kBAAkB,IAAI;AAAA,EACjE;AACJ;","names":[]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* When this admin last looked at each inbox, kept in this browser.
|
|
3
|
+
*
|
|
4
|
+
* The badge counts what arrived after that moment, so opening Support or
|
|
5
|
+
* Product feedback clears it. A tiny external store lets the nav badge, the
|
|
6
|
+
* bell and the tab title all clear on the same render.
|
|
7
|
+
*/
|
|
8
|
+
export type InboxKind = 'support' | 'feedback';
|
|
9
|
+
export type InboxSeen = Partial<Record<InboxKind, string>>;
|
|
10
|
+
declare function read(): InboxSeen;
|
|
11
|
+
export declare const inboxSeenStore: {
|
|
12
|
+
subscribe(listener: () => void): () => boolean;
|
|
13
|
+
snapshot: typeof read;
|
|
14
|
+
serverSnapshot: () => InboxSeen;
|
|
15
|
+
/** Everything up to `at` in this inbox has been seen. */
|
|
16
|
+
markSeen(kind: InboxKind, at: string): void;
|
|
17
|
+
};
|
|
18
|
+
/** Items stamped after the admin last looked; all of them if never. */
|
|
19
|
+
export declare function countUnseen(stamps: string[], seenAt: string | undefined): number;
|
|
20
|
+
/** The newest stamp, so marking seen never skips past unseen items. */
|
|
21
|
+
export declare function newest(stamps: string[]): string | null;
|
|
22
|
+
export {};
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
const KEY = "potter-admin-inbox-seen";
|
|
2
|
+
const listeners = /* @__PURE__ */ new Set();
|
|
3
|
+
let cache = null;
|
|
4
|
+
function read() {
|
|
5
|
+
if (cache) return cache;
|
|
6
|
+
try {
|
|
7
|
+
cache = JSON.parse(localStorage.getItem(KEY) ?? "{}");
|
|
8
|
+
} catch {
|
|
9
|
+
cache = {};
|
|
10
|
+
}
|
|
11
|
+
return cache;
|
|
12
|
+
}
|
|
13
|
+
const inboxSeenStore = {
|
|
14
|
+
subscribe(listener) {
|
|
15
|
+
listeners.add(listener);
|
|
16
|
+
return () => listeners.delete(listener);
|
|
17
|
+
},
|
|
18
|
+
snapshot: read,
|
|
19
|
+
serverSnapshot: () => ({}),
|
|
20
|
+
/** Everything up to `at` in this inbox has been seen. */
|
|
21
|
+
markSeen(kind, at) {
|
|
22
|
+
const current = read();
|
|
23
|
+
if (current[kind] && current[kind] >= at) return;
|
|
24
|
+
cache = { ...current, [kind]: at };
|
|
25
|
+
try {
|
|
26
|
+
localStorage.setItem(KEY, JSON.stringify(cache));
|
|
27
|
+
} catch {
|
|
28
|
+
}
|
|
29
|
+
listeners.forEach((listener) => listener());
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
function countUnseen(stamps, seenAt) {
|
|
33
|
+
if (!seenAt) return stamps.length;
|
|
34
|
+
return stamps.filter((stamp) => stamp > seenAt).length;
|
|
35
|
+
}
|
|
36
|
+
function newest(stamps) {
|
|
37
|
+
return stamps.reduce(
|
|
38
|
+
(best, stamp) => !best || stamp > best ? stamp : best,
|
|
39
|
+
null
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
export {
|
|
43
|
+
countUnseen,
|
|
44
|
+
inboxSeenStore,
|
|
45
|
+
newest
|
|
46
|
+
};
|
|
47
|
+
//# sourceMappingURL=admin-inbox-seen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/admin-inbox-seen.ts"],"sourcesContent":["/**\n * When this admin last looked at each inbox, kept in this browser.\n *\n * The badge counts what arrived after that moment, so opening Support or\n * Product feedback clears it. A tiny external store lets the nav badge, the\n * bell and the tab title all clear on the same render.\n */\n\nexport type InboxKind = 'support' | 'feedback';\n\nexport type InboxSeen = Partial<Record<InboxKind, string>>;\n\nconst KEY = 'potter-admin-inbox-seen';\n\nconst listeners = new Set<() => void>();\n\nlet cache: InboxSeen | null = null;\n\nfunction read(): InboxSeen {\n if (cache) return cache;\n\n try {\n cache = JSON.parse(localStorage.getItem(KEY) ?? '{}') as InboxSeen;\n } catch {\n cache = {};\n }\n\n return cache;\n}\n\nexport const inboxSeenStore = {\n subscribe(listener: () => void) {\n listeners.add(listener);\n\n return () => listeners.delete(listener);\n },\n snapshot: read,\n serverSnapshot: (): InboxSeen => ({}),\n /** Everything up to `at` in this inbox has been seen. */\n markSeen(kind: InboxKind, at: string) {\n const current = read();\n\n if (current[kind] && current[kind]! >= at) return;\n\n cache = { ...current, [kind]: at };\n\n try {\n localStorage.setItem(KEY, JSON.stringify(cache));\n } catch {\n // Not remembered across reloads; still clears for this session.\n }\n\n listeners.forEach((listener) => listener());\n },\n};\n\n/** Items stamped after the admin last looked; all of them if never. */\nexport function countUnseen(stamps: string[], seenAt: string | undefined) {\n if (!seenAt) return stamps.length;\n\n return stamps.filter((stamp) => stamp > seenAt).length;\n}\n\n/** The newest stamp, so marking seen never skips past unseen items. */\nexport function newest(stamps: string[]) {\n return stamps.reduce<string | null>(\n (best, stamp) => (!best || stamp > best ? stamp : best),\n null,\n );\n}\n"],"mappings":"AAYA,MAAM,MAAM;AAEZ,MAAM,YAAY,oBAAI,IAAgB;AAEtC,IAAI,QAA0B;AAE9B,SAAS,OAAkB;AACzB,MAAI,MAAO,QAAO;AAElB,MAAI;AACF,YAAQ,KAAK,MAAM,aAAa,QAAQ,GAAG,KAAK,IAAI;AAAA,EACtD,QAAQ;AACN,YAAQ,CAAC;AAAA,EACX;AAEA,SAAO;AACT;AAEO,MAAM,iBAAiB;AAAA,EAC5B,UAAU,UAAsB;AAC9B,cAAU,IAAI,QAAQ;AAEtB,WAAO,MAAM,UAAU,OAAO,QAAQ;AAAA,EACxC;AAAA,EACA,UAAU;AAAA,EACV,gBAAgB,OAAkB,CAAC;AAAA;AAAA,EAEnC,SAAS,MAAiB,IAAY;AACpC,UAAM,UAAU,KAAK;AAErB,QAAI,QAAQ,IAAI,KAAK,QAAQ,IAAI,KAAM,GAAI;AAE3C,YAAQ,EAAE,GAAG,SAAS,CAAC,IAAI,GAAG,GAAG;AAEjC,QAAI;AACF,mBAAa,QAAQ,KAAK,KAAK,UAAU,KAAK,CAAC;AAAA,IACjD,QAAQ;AAAA,IAER;AAEA,cAAU,QAAQ,CAAC,aAAa,SAAS,CAAC;AAAA,EAC5C;AACF;AAGO,SAAS,YAAY,QAAkB,QAA4B;AACxE,MAAI,CAAC,OAAQ,QAAO,OAAO;AAE3B,SAAO,OAAO,OAAO,CAAC,UAAU,QAAQ,MAAM,EAAE;AAClD;AAGO,SAAS,OAAO,QAAkB;AACvC,SAAO,OAAO;AAAA,IACZ,CAAC,MAAM,UAAW,CAAC,QAAQ,QAAQ,OAAO,QAAQ;AAAA,IAClD;AAAA,EACF;AACF;","names":[]}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* One business's money ledger, read by an admin: the wallet's balances, its
|
|
3
|
+
* entries newest first, a statement for a window, and the holds on it. Same
|
|
4
|
+
* `apiFetch` and cookie session as the rest of the console; no envelope.
|
|
5
|
+
*
|
|
6
|
+
* Amounts are minor-unit strings, as everywhere in Money. `restrictions` and
|
|
7
|
+
* `statement/export` answer a bare 404 on a server whose switch for them is
|
|
8
|
+
* off; the screen reads that as "not available here", not as a failure.
|
|
9
|
+
*/
|
|
10
|
+
export type Compartment = 'pending' | 'available' | 'restricted' | 'payoutPending';
|
|
11
|
+
export interface LedgerBalance {
|
|
12
|
+
currency: string;
|
|
13
|
+
pendingMinor: string;
|
|
14
|
+
availableMinor: string;
|
|
15
|
+
restrictedMinor: string;
|
|
16
|
+
payoutPendingMinor: string;
|
|
17
|
+
}
|
|
18
|
+
export interface LedgerWallet {
|
|
19
|
+
id: string;
|
|
20
|
+
status: string;
|
|
21
|
+
tag: string | null;
|
|
22
|
+
balances: LedgerBalance[];
|
|
23
|
+
}
|
|
24
|
+
export interface LedgerEntry {
|
|
25
|
+
entryId: string;
|
|
26
|
+
transactionId: string;
|
|
27
|
+
direction: 'CREDIT' | 'DEBIT';
|
|
28
|
+
amountMinor: string;
|
|
29
|
+
currency: string;
|
|
30
|
+
effectiveAt: string;
|
|
31
|
+
description: string | null;
|
|
32
|
+
postingRule: string | null;
|
|
33
|
+
paymentId: string | null;
|
|
34
|
+
paymentReference: string | null;
|
|
35
|
+
}
|
|
36
|
+
/** The pair that asks for the entries after the last one already shown. */
|
|
37
|
+
export interface ActivityCursor {
|
|
38
|
+
beforeEffectiveAt: string;
|
|
39
|
+
beforeEntryId: string;
|
|
40
|
+
}
|
|
41
|
+
export interface StatementQuery {
|
|
42
|
+
currency: string;
|
|
43
|
+
compartment: Compartment;
|
|
44
|
+
/** `YYYY-MM-DD`, inclusive, UTC. */
|
|
45
|
+
from: string;
|
|
46
|
+
to: string;
|
|
47
|
+
}
|
|
48
|
+
export interface LedgerStatement {
|
|
49
|
+
compartment: Compartment;
|
|
50
|
+
currency: string;
|
|
51
|
+
normalSide: string;
|
|
52
|
+
effectiveFrom: string;
|
|
53
|
+
effectiveBefore: string;
|
|
54
|
+
asOfSequence: string;
|
|
55
|
+
rowCount: string;
|
|
56
|
+
totals: {
|
|
57
|
+
openingBalanceMinor: string;
|
|
58
|
+
debitTotalMinor: string;
|
|
59
|
+
creditTotalMinor: string;
|
|
60
|
+
entryCount: string;
|
|
61
|
+
closingBalanceMinor: string;
|
|
62
|
+
};
|
|
63
|
+
mediaType: string;
|
|
64
|
+
sha256: string;
|
|
65
|
+
}
|
|
66
|
+
export interface LedgerRestriction {
|
|
67
|
+
id: string;
|
|
68
|
+
currency: string;
|
|
69
|
+
restrictionType: string;
|
|
70
|
+
reasonCode: string;
|
|
71
|
+
amountMinor: string;
|
|
72
|
+
remainingMinor: string;
|
|
73
|
+
status: string;
|
|
74
|
+
effectiveAt: string;
|
|
75
|
+
expiresAt: string | null;
|
|
76
|
+
}
|
|
77
|
+
export declare const adminLedgerApi: {
|
|
78
|
+
wallet: (tenantId: string) => Promise<LedgerWallet>;
|
|
79
|
+
/** Newest first; `[]` when the business has no wallet. */
|
|
80
|
+
activity: (tenantId: string, limit: number, cursor?: ActivityCursor) => Promise<LedgerEntry[]>;
|
|
81
|
+
statement: (tenantId: string, s: StatementQuery) => Promise<LedgerStatement>;
|
|
82
|
+
/** The statement as CSV text. Over 10,000 rows is a 422. */
|
|
83
|
+
exportStatement: (tenantId: string, s: StatementQuery) => Promise<string>;
|
|
84
|
+
restrictions: (tenantId: string) => Promise<LedgerRestriction[]>;
|
|
85
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { apiFetch } from "./api";
|
|
2
|
+
const base = (tenantId) => `/platform-admin/v1/money/tenants/${encodeURIComponent(tenantId)}/wallet`;
|
|
3
|
+
const qs = (params) => {
|
|
4
|
+
const q = new URLSearchParams();
|
|
5
|
+
for (const [key, value] of Object.entries(params))
|
|
6
|
+
if (value !== void 0 && value !== "") q.set(key, String(value));
|
|
7
|
+
const text = q.toString();
|
|
8
|
+
return text ? `?${text}` : "";
|
|
9
|
+
};
|
|
10
|
+
const statementQs = (s) => qs({
|
|
11
|
+
currency: s.currency,
|
|
12
|
+
compartment: s.compartment,
|
|
13
|
+
from: s.from,
|
|
14
|
+
to: s.to
|
|
15
|
+
});
|
|
16
|
+
const adminLedgerApi = {
|
|
17
|
+
wallet: (tenantId) => apiFetch(base(tenantId)),
|
|
18
|
+
/** Newest first; `[]` when the business has no wallet. */
|
|
19
|
+
activity: (tenantId, limit, cursor) => apiFetch(
|
|
20
|
+
`${base(tenantId)}/activity${qs({ limit, ...cursor })}`
|
|
21
|
+
),
|
|
22
|
+
statement: (tenantId, s) => apiFetch(`${base(tenantId)}/statement${statementQs(s)}`),
|
|
23
|
+
/** The statement as CSV text. Over 10,000 rows is a 422. */
|
|
24
|
+
exportStatement: (tenantId, s) => apiFetch(`${base(tenantId)}/statement/export${statementQs(s)}`),
|
|
25
|
+
restrictions: (tenantId) => apiFetch(`${base(tenantId)}/restrictions`)
|
|
26
|
+
};
|
|
27
|
+
export {
|
|
28
|
+
adminLedgerApi
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=admin-ledger-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/admin-ledger-api.ts"],"sourcesContent":["import { apiFetch } from './api';\n\n/**\n * One business's money ledger, read by an admin: the wallet's balances, its\n * entries newest first, a statement for a window, and the holds on it. Same\n * `apiFetch` and cookie session as the rest of the console; no envelope.\n *\n * Amounts are minor-unit strings, as everywhere in Money. `restrictions` and\n * `statement/export` answer a bare 404 on a server whose switch for them is\n * off; the screen reads that as \"not available here\", not as a failure.\n */\nexport type Compartment =\n | 'pending'\n | 'available'\n | 'restricted'\n | 'payoutPending';\n\nexport interface LedgerBalance {\n currency: string;\n pendingMinor: string;\n availableMinor: string;\n restrictedMinor: string;\n payoutPendingMinor: string;\n}\n\nexport interface LedgerWallet {\n id: string;\n status: string;\n tag: string | null;\n balances: LedgerBalance[];\n}\n\nexport interface LedgerEntry {\n entryId: string;\n transactionId: string;\n direction: 'CREDIT' | 'DEBIT';\n amountMinor: string;\n currency: string;\n effectiveAt: string;\n description: string | null;\n postingRule: string | null;\n paymentId: string | null;\n paymentReference: string | null;\n}\n\n/** The pair that asks for the entries after the last one already shown. */\nexport interface ActivityCursor {\n beforeEffectiveAt: string;\n beforeEntryId: string;\n}\n\nexport interface StatementQuery {\n currency: string;\n compartment: Compartment;\n /** `YYYY-MM-DD`, inclusive, UTC. */\n from: string;\n to: string;\n}\n\nexport interface LedgerStatement {\n compartment: Compartment;\n currency: string;\n normalSide: string;\n effectiveFrom: string;\n effectiveBefore: string;\n asOfSequence: string;\n rowCount: string;\n totals: {\n openingBalanceMinor: string;\n debitTotalMinor: string;\n creditTotalMinor: string;\n entryCount: string;\n closingBalanceMinor: string;\n };\n mediaType: string;\n sha256: string;\n}\n\nexport interface LedgerRestriction {\n id: string;\n currency: string;\n restrictionType: string;\n reasonCode: string;\n amountMinor: string;\n remainingMinor: string;\n status: string;\n effectiveAt: string;\n expiresAt: string | null;\n}\n\nconst base = (tenantId: string) =>\n `/platform-admin/v1/money/tenants/${encodeURIComponent(tenantId)}/wallet`;\n\nconst qs = (params: Record<string, string | number | undefined>) => {\n const q = new URLSearchParams();\n\n for (const [key, value] of Object.entries(params))\n if (value !== undefined && value !== '') q.set(key, String(value));\n\n const text = q.toString();\n\n return text ? `?${text}` : '';\n};\n\nconst statementQs = (s: StatementQuery) =>\n qs({\n currency: s.currency,\n compartment: s.compartment,\n from: s.from,\n to: s.to,\n });\n\nexport const adminLedgerApi = {\n wallet: (tenantId: string) => apiFetch<LedgerWallet>(base(tenantId)),\n\n /** Newest first; `[]` when the business has no wallet. */\n activity: (tenantId: string, limit: number, cursor?: ActivityCursor) =>\n apiFetch<LedgerEntry[]>(\n `${base(tenantId)}/activity${qs({ limit, ...cursor })}`,\n ),\n\n statement: (tenantId: string, s: StatementQuery) =>\n apiFetch<LedgerStatement>(`${base(tenantId)}/statement${statementQs(s)}`),\n\n /** The statement as CSV text. Over 10,000 rows is a 422. */\n exportStatement: (tenantId: string, s: StatementQuery) =>\n apiFetch<string>(`${base(tenantId)}/statement/export${statementQs(s)}`),\n\n restrictions: (tenantId: string) =>\n apiFetch<LedgerRestriction[]>(`${base(tenantId)}/restrictions`),\n};\n"],"mappings":"AAAA,SAAS,gBAAgB;AA0FzB,MAAM,OAAO,CAAC,aACZ,oCAAoC,mBAAmB,QAAQ,CAAC;AAElE,MAAM,KAAK,CAAC,WAAwD;AAClE,QAAM,IAAI,IAAI,gBAAgB;AAE9B,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM;AAC9C,QAAI,UAAU,UAAa,UAAU,GAAI,GAAE,IAAI,KAAK,OAAO,KAAK,CAAC;AAEnE,QAAM,OAAO,EAAE,SAAS;AAExB,SAAO,OAAO,IAAI,IAAI,KAAK;AAC7B;AAEA,MAAM,cAAc,CAAC,MACnB,GAAG;AAAA,EACD,UAAU,EAAE;AAAA,EACZ,aAAa,EAAE;AAAA,EACf,MAAM,EAAE;AAAA,EACR,IAAI,EAAE;AACR,CAAC;AAEI,MAAM,iBAAiB;AAAA,EAC5B,QAAQ,CAAC,aAAqB,SAAuB,KAAK,QAAQ,CAAC;AAAA;AAAA,EAGnE,UAAU,CAAC,UAAkB,OAAe,WAC1C;AAAA,IACE,GAAG,KAAK,QAAQ,CAAC,YAAY,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;AAAA,EACvD;AAAA,EAEF,WAAW,CAAC,UAAkB,MAC5B,SAA0B,GAAG,KAAK,QAAQ,CAAC,aAAa,YAAY,CAAC,CAAC,EAAE;AAAA;AAAA,EAG1E,iBAAiB,CAAC,UAAkB,MAClC,SAAiB,GAAG,KAAK,QAAQ,CAAC,oBAAoB,YAAY,CAAC,CAAC,EAAE;AAAA,EAExE,cAAc,CAAC,aACb,SAA8B,GAAG,KAAK,QAAQ,CAAC,eAAe;AAClE;","names":[]}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import type { TenantTransactionsPage } from './admin-api';
|
|
2
|
+
/**
|
|
3
|
+
* Money calls for the admin console that `admin-api.ts` does not carry:
|
|
4
|
+
* payout tier configuration, the transactions list with a date window, and
|
|
5
|
+
* the maker-checker cash posting proposals. Same `apiFetch` and cookie
|
|
6
|
+
* session as the rest.
|
|
7
|
+
*
|
|
8
|
+
* Amounts are minor-unit strings, as everywhere in Money. Cash proposals have
|
|
9
|
+
* no list route on the API: a proposal is known only by the id its creation
|
|
10
|
+
* returns, so the screen shows that id and a checker is given it to decide.
|
|
11
|
+
*/
|
|
12
|
+
export interface PayoutTier {
|
|
13
|
+
id: string;
|
|
14
|
+
key: string;
|
|
15
|
+
currency: string;
|
|
16
|
+
label: string;
|
|
17
|
+
position: number;
|
|
18
|
+
requirements: string[];
|
|
19
|
+
minimumMinor: string;
|
|
20
|
+
maximumMinor: string;
|
|
21
|
+
dailyMaximumMinor: string;
|
|
22
|
+
monthlyMaximumMinor: string | null;
|
|
23
|
+
enabled: boolean;
|
|
24
|
+
}
|
|
25
|
+
export type PayoutTierInput = Omit<PayoutTier, 'id'>;
|
|
26
|
+
export interface PayoutTierPreview {
|
|
27
|
+
tenantId: string;
|
|
28
|
+
currency: string;
|
|
29
|
+
verified: string[];
|
|
30
|
+
tier: PayoutTier | null;
|
|
31
|
+
missing: string[];
|
|
32
|
+
}
|
|
33
|
+
export type CashPostingKind = 'opening' | 'otc';
|
|
34
|
+
export interface CashPostingInput {
|
|
35
|
+
/** Whole minor units as a string ("150000" = 1,500.00). */
|
|
36
|
+
amountMinor: string;
|
|
37
|
+
currency: string;
|
|
38
|
+
description?: string;
|
|
39
|
+
evidence?: Record<string, string>;
|
|
40
|
+
/** Required for an OTC deposit: the merchant wallet the cash lands in. */
|
|
41
|
+
walletId?: string;
|
|
42
|
+
}
|
|
43
|
+
/** The API's states: an approved proposal is POSTED to the ledger. */
|
|
44
|
+
export type CashProposalStatus = 'PROPOSED' | 'POSTED' | 'REJECTED';
|
|
45
|
+
/** The parts of a ledger adjustment proposal the console shows. */
|
|
46
|
+
export interface CashProposal {
|
|
47
|
+
id: string;
|
|
48
|
+
reasonCode: string;
|
|
49
|
+
description: string;
|
|
50
|
+
status: CashProposalStatus;
|
|
51
|
+
rejectionReasonCode: string | null;
|
|
52
|
+
proposedAt: string;
|
|
53
|
+
decidedAt: string | null;
|
|
54
|
+
maker?: {
|
|
55
|
+
id: string;
|
|
56
|
+
} | null;
|
|
57
|
+
checker?: {
|
|
58
|
+
id: string;
|
|
59
|
+
} | null;
|
|
60
|
+
}
|
|
61
|
+
export interface TransactionQuery {
|
|
62
|
+
status?: string;
|
|
63
|
+
type?: string;
|
|
64
|
+
startDate?: string;
|
|
65
|
+
endDate?: string;
|
|
66
|
+
/** Sticker ids of the terminals that took it, comma-separated. */
|
|
67
|
+
deviceIds?: string;
|
|
68
|
+
page?: number;
|
|
69
|
+
limit?: number;
|
|
70
|
+
}
|
|
71
|
+
/** One cash posting as the platform lists them, newest first. */
|
|
72
|
+
export interface CashProposalRow {
|
|
73
|
+
id: string;
|
|
74
|
+
reasonCode: string;
|
|
75
|
+
description: string;
|
|
76
|
+
status: 'PROPOSED' | 'POSTED' | 'REJECTED';
|
|
77
|
+
amountMinor: string | null;
|
|
78
|
+
currency: string | null;
|
|
79
|
+
makerId: string;
|
|
80
|
+
makerEmail: string | null;
|
|
81
|
+
checkerId: string | null;
|
|
82
|
+
checkerEmail: string | null;
|
|
83
|
+
rejectionReasonCode: string | null;
|
|
84
|
+
proposedAt: string;
|
|
85
|
+
decidedAt: string | null;
|
|
86
|
+
}
|
|
87
|
+
export declare const adminMoneyApi: {
|
|
88
|
+
listTiers: (currency?: string) => Promise<PayoutTier[]>;
|
|
89
|
+
createTier: (body: PayoutTierInput) => Promise<PayoutTier>;
|
|
90
|
+
updateTier: (id: string, body: PayoutTierInput) => Promise<PayoutTier>;
|
|
91
|
+
removeTier: (id: string) => Promise<void>;
|
|
92
|
+
previewTier: (tenantId: string, currency: string) => Promise<PayoutTierPreview>;
|
|
93
|
+
/** A merchant's transactions, filtered by status, type and window. */
|
|
94
|
+
transactions: (tenantId: string, params?: TransactionQuery) => Promise<TenantTransactionsPage>;
|
|
95
|
+
/** Cash postings newest first; `PROPOSED` for what waits for a checker. */
|
|
96
|
+
cashProposals: (status?: CashProposalRow["status"]) => Promise<CashProposalRow[]>;
|
|
97
|
+
/** The standalone Cash posting page's two calls (kept from main). */
|
|
98
|
+
proposeOpeningCash: (body: {
|
|
99
|
+
amountMinor: string;
|
|
100
|
+
currency: string;
|
|
101
|
+
description?: string;
|
|
102
|
+
}) => Promise<{
|
|
103
|
+
id: string;
|
|
104
|
+
}>;
|
|
105
|
+
proposeOtcCash: (body: {
|
|
106
|
+
amountMinor: string;
|
|
107
|
+
currency: string;
|
|
108
|
+
walletId: string;
|
|
109
|
+
description?: string;
|
|
110
|
+
}) => Promise<{
|
|
111
|
+
id: string;
|
|
112
|
+
}>;
|
|
113
|
+
/** The Wallets workspace's call: one entry point, evidence attached. */
|
|
114
|
+
proposeCash: (kind: CashPostingKind, input: CashPostingInput) => Promise<CashProposal>;
|
|
115
|
+
approveCash: (proposalId: string) => Promise<CashProposal>;
|
|
116
|
+
rejectCash: (proposalId: string, rejectionReasonCode: string) => Promise<CashProposal>;
|
|
117
|
+
};
|
|
118
|
+
/** Every verification a tier can require: the KYC engine's operations. */
|
|
119
|
+
export declare const TIER_REQUIREMENTS: {
|
|
120
|
+
readonly Individual: readonly ["nin", "nin-slip", "advanced-nin", "premium-nin", "bvn", "validate-bvn", "bvn-nin-selfie", "phone-number", "age-identity", "passport", "drivers-license", "voter-id", "ghana-card", "ghana-passport", "ghana-digital-address", "kenya-national-id", "kenya-passport", "kenya-kra-pin", "uganda-nin", "uganda-voter-id", "south-africa-national-id", "angola-national-id", "zambia-nrc", "zimbabwe-national-id", "zimbabwe-credit-check", "canada-ekyc", "uk-ekyc", "liveness", "face-compare", "face-doc-compare", "document-analysis", "generic-ocr", "utility-bill", "individual-address", "aml-screening", "user-screening", "email-check", "ip-screening", "phone-check"];
|
|
121
|
+
readonly Business: readonly ["cac", "tin", "global-business-search", "kenya-business", "zambia-business", "business-document", "business-address", "business-aml-screening"];
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* "1,500.50" → "150050" for a two-decimal currency. Returns null for
|
|
125
|
+
* anything that is not a positive amount with at most `digits` decimals.
|
|
126
|
+
*/
|
|
127
|
+
export declare function toMinor(major: string, digits?: number): string | null;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { apiFetch } from "./api";
|
|
2
|
+
const BASE = "/platform-admin/v1/money";
|
|
3
|
+
const CASH = `${BASE}/cash`;
|
|
4
|
+
const json = (body) => ({
|
|
5
|
+
method: "POST",
|
|
6
|
+
body: JSON.stringify(body)
|
|
7
|
+
});
|
|
8
|
+
function query(params) {
|
|
9
|
+
const qs = new URLSearchParams();
|
|
10
|
+
for (const [key, value] of Object.entries(params))
|
|
11
|
+
if (value !== void 0 && value !== "") qs.set(key, String(value));
|
|
12
|
+
const q = qs.toString();
|
|
13
|
+
return q ? `?${q}` : "";
|
|
14
|
+
}
|
|
15
|
+
const adminMoneyApi = {
|
|
16
|
+
listTiers: (currency) => apiFetch(
|
|
17
|
+
`${BASE}/payout-tiers${currency ? `?currency=${currency}` : ""}`
|
|
18
|
+
),
|
|
19
|
+
createTier: (body) => apiFetch(`${BASE}/payout-tiers`, json(body)),
|
|
20
|
+
updateTier: (id, body) => apiFetch(`${BASE}/payout-tiers/${id}`, {
|
|
21
|
+
method: "PUT",
|
|
22
|
+
body: JSON.stringify(body)
|
|
23
|
+
}),
|
|
24
|
+
removeTier: (id) => apiFetch(`${BASE}/payout-tiers/${id}`, { method: "DELETE" }),
|
|
25
|
+
previewTier: (tenantId, currency) => apiFetch(
|
|
26
|
+
`${BASE}/payout-tiers/preview`,
|
|
27
|
+
json({ tenantId, currency })
|
|
28
|
+
),
|
|
29
|
+
/** A merchant's transactions, filtered by status, type and window. */
|
|
30
|
+
transactions: (tenantId, params = {}) => apiFetch(
|
|
31
|
+
`/platform-admin/v1/tenants/${tenantId}/transactions${query({ ...params })}`
|
|
32
|
+
),
|
|
33
|
+
/** Cash postings newest first; `PROPOSED` for what waits for a checker. */
|
|
34
|
+
cashProposals: (status) => apiFetch(`${CASH}/proposals${query({ status })}`),
|
|
35
|
+
/** The standalone Cash posting page's two calls (kept from main). */
|
|
36
|
+
proposeOpeningCash: (body) => apiFetch(`${CASH}/opening/proposals`, json(body)),
|
|
37
|
+
proposeOtcCash: (body) => apiFetch(`${CASH}/otc/proposals`, json(body)),
|
|
38
|
+
/** The Wallets workspace's call: one entry point, evidence attached. */
|
|
39
|
+
proposeCash: (kind, input) => {
|
|
40
|
+
const body = {
|
|
41
|
+
amountMinor: input.amountMinor,
|
|
42
|
+
currency: input.currency,
|
|
43
|
+
description: input.description,
|
|
44
|
+
evidence: input.evidence ?? {}
|
|
45
|
+
};
|
|
46
|
+
if (kind === "otc") body.walletId = input.walletId;
|
|
47
|
+
return apiFetch(`${CASH}/${kind}/proposals`, json(body));
|
|
48
|
+
},
|
|
49
|
+
approveCash: (proposalId) => apiFetch(
|
|
50
|
+
`${CASH}/proposals/${encodeURIComponent(proposalId)}/approve`,
|
|
51
|
+
{ method: "POST" }
|
|
52
|
+
),
|
|
53
|
+
rejectCash: (proposalId, rejectionReasonCode) => apiFetch(
|
|
54
|
+
`${CASH}/proposals/${encodeURIComponent(proposalId)}/reject`,
|
|
55
|
+
json({ rejectionReasonCode })
|
|
56
|
+
)
|
|
57
|
+
};
|
|
58
|
+
const TIER_REQUIREMENTS = {
|
|
59
|
+
Individual: [
|
|
60
|
+
"nin",
|
|
61
|
+
"nin-slip",
|
|
62
|
+
"advanced-nin",
|
|
63
|
+
"premium-nin",
|
|
64
|
+
"bvn",
|
|
65
|
+
"validate-bvn",
|
|
66
|
+
"bvn-nin-selfie",
|
|
67
|
+
"phone-number",
|
|
68
|
+
"age-identity",
|
|
69
|
+
"passport",
|
|
70
|
+
"drivers-license",
|
|
71
|
+
"voter-id",
|
|
72
|
+
"ghana-card",
|
|
73
|
+
"ghana-passport",
|
|
74
|
+
"ghana-digital-address",
|
|
75
|
+
"kenya-national-id",
|
|
76
|
+
"kenya-passport",
|
|
77
|
+
"kenya-kra-pin",
|
|
78
|
+
"uganda-nin",
|
|
79
|
+
"uganda-voter-id",
|
|
80
|
+
"south-africa-national-id",
|
|
81
|
+
"angola-national-id",
|
|
82
|
+
"zambia-nrc",
|
|
83
|
+
"zimbabwe-national-id",
|
|
84
|
+
"zimbabwe-credit-check",
|
|
85
|
+
"canada-ekyc",
|
|
86
|
+
"uk-ekyc",
|
|
87
|
+
"liveness",
|
|
88
|
+
"face-compare",
|
|
89
|
+
"face-doc-compare",
|
|
90
|
+
"document-analysis",
|
|
91
|
+
"generic-ocr",
|
|
92
|
+
"utility-bill",
|
|
93
|
+
"individual-address",
|
|
94
|
+
"aml-screening",
|
|
95
|
+
"user-screening",
|
|
96
|
+
"email-check",
|
|
97
|
+
"ip-screening",
|
|
98
|
+
"phone-check"
|
|
99
|
+
],
|
|
100
|
+
Business: [
|
|
101
|
+
"cac",
|
|
102
|
+
"tin",
|
|
103
|
+
"global-business-search",
|
|
104
|
+
"kenya-business",
|
|
105
|
+
"zambia-business",
|
|
106
|
+
"business-document",
|
|
107
|
+
"business-address",
|
|
108
|
+
"business-aml-screening"
|
|
109
|
+
]
|
|
110
|
+
};
|
|
111
|
+
function toMinor(major, digits = 2) {
|
|
112
|
+
const clean = major.replace(/[\s,]/g, "");
|
|
113
|
+
if (!/^\d+(\.\d+)?$/.test(clean)) return null;
|
|
114
|
+
const [whole, fraction = ""] = clean.split(".");
|
|
115
|
+
if (fraction.length > digits) return null;
|
|
116
|
+
const minor = `${whole}${fraction.padEnd(digits, "0")}`.replace(/^0+/, "");
|
|
117
|
+
if (!minor || minor.length > 19) return null;
|
|
118
|
+
return minor;
|
|
119
|
+
}
|
|
120
|
+
export {
|
|
121
|
+
TIER_REQUIREMENTS,
|
|
122
|
+
adminMoneyApi,
|
|
123
|
+
toMinor
|
|
124
|
+
};
|
|
125
|
+
//# sourceMappingURL=admin-money-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/admin-money-api.ts"],"sourcesContent":["import { apiFetch } from './api';\nimport type { TenantTransactionsPage } from './admin-api';\n\n/**\n * Money calls for the admin console that `admin-api.ts` does not carry:\n * payout tier configuration, the transactions list with a date window, and\n * the maker-checker cash posting proposals. Same `apiFetch` and cookie\n * session as the rest.\n *\n * Amounts are minor-unit strings, as everywhere in Money. Cash proposals have\n * no list route on the API: a proposal is known only by the id its creation\n * returns, so the screen shows that id and a checker is given it to decide.\n */\nexport interface PayoutTier {\n id: string;\n key: string;\n currency: string;\n label: string;\n position: number;\n requirements: string[];\n minimumMinor: string;\n maximumMinor: string;\n dailyMaximumMinor: string;\n monthlyMaximumMinor: string | null;\n enabled: boolean;\n}\n\nexport type PayoutTierInput = Omit<PayoutTier, 'id'>;\n\nexport interface PayoutTierPreview {\n tenantId: string;\n currency: string;\n verified: string[];\n tier: PayoutTier | null;\n missing: string[];\n}\n\nexport type CashPostingKind = 'opening' | 'otc';\n\nexport interface CashPostingInput {\n /** Whole minor units as a string (\"150000\" = 1,500.00). */\n amountMinor: string;\n currency: string;\n description?: string;\n evidence?: Record<string, string>;\n /** Required for an OTC deposit: the merchant wallet the cash lands in. */\n walletId?: string;\n}\n\n/** The API's states: an approved proposal is POSTED to the ledger. */\nexport type CashProposalStatus = 'PROPOSED' | 'POSTED' | 'REJECTED';\n\n/** The parts of a ledger adjustment proposal the console shows. */\nexport interface CashProposal {\n id: string;\n reasonCode: string;\n description: string;\n status: CashProposalStatus;\n rejectionReasonCode: string | null;\n proposedAt: string;\n decidedAt: string | null;\n maker?: { id: string } | null;\n checker?: { id: string } | null;\n}\n\nexport interface TransactionQuery {\n status?: string;\n type?: string;\n startDate?: string;\n endDate?: string;\n /** Sticker ids of the terminals that took it, comma-separated. */\n deviceIds?: string;\n page?: number;\n limit?: number;\n}\n\n/** One cash posting as the platform lists them, newest first. */\nexport interface CashProposalRow {\n id: string;\n reasonCode: string;\n description: string;\n status: 'PROPOSED' | 'POSTED' | 'REJECTED';\n amountMinor: string | null;\n currency: string | null;\n makerId: string;\n makerEmail: string | null;\n checkerId: string | null;\n checkerEmail: string | null;\n rejectionReasonCode: string | null;\n proposedAt: string;\n decidedAt: string | null;\n}\n\nconst BASE = '/platform-admin/v1/money';\nconst CASH = `${BASE}/cash`;\n\nconst json = (body: unknown) => ({\n method: 'POST',\n body: JSON.stringify(body),\n});\n\nfunction query(params: Record<string, string | number | undefined>) {\n const qs = new URLSearchParams();\n\n for (const [key, value] of Object.entries(params))\n if (value !== undefined && value !== '') qs.set(key, String(value));\n\n const q = qs.toString();\n\n return q ? `?${q}` : '';\n}\n\nexport const adminMoneyApi = {\n listTiers: (currency?: string) =>\n apiFetch<PayoutTier[]>(\n `${BASE}/payout-tiers${currency ? `?currency=${currency}` : ''}`,\n ),\n createTier: (body: PayoutTierInput) =>\n apiFetch<PayoutTier>(`${BASE}/payout-tiers`, json(body)),\n updateTier: (id: string, body: PayoutTierInput) =>\n apiFetch<PayoutTier>(`${BASE}/payout-tiers/${id}`, {\n method: 'PUT',\n body: JSON.stringify(body),\n }),\n removeTier: (id: string) =>\n apiFetch<void>(`${BASE}/payout-tiers/${id}`, { method: 'DELETE' }),\n previewTier: (tenantId: string, currency: string) =>\n apiFetch<PayoutTierPreview>(\n `${BASE}/payout-tiers/preview`,\n json({ tenantId, currency }),\n ),\n\n /** A merchant's transactions, filtered by status, type and window. */\n transactions: (tenantId: string, params: TransactionQuery = {}) =>\n apiFetch<TenantTransactionsPage>(\n `/platform-admin/v1/tenants/${tenantId}/transactions${query({ ...params })}`,\n ),\n\n /** Cash postings newest first; `PROPOSED` for what waits for a checker. */\n cashProposals: (status?: CashProposalRow['status']) =>\n apiFetch<CashProposalRow[]>(`${CASH}/proposals${query({ status })}`),\n\n /** The standalone Cash posting page's two calls (kept from main). */\n proposeOpeningCash: (body: {\n amountMinor: string;\n currency: string;\n description?: string;\n }) => apiFetch<{ id: string }>(`${CASH}/opening/proposals`, json(body)),\n proposeOtcCash: (body: {\n amountMinor: string;\n currency: string;\n walletId: string;\n description?: string;\n }) => apiFetch<{ id: string }>(`${CASH}/otc/proposals`, json(body)),\n\n /** The Wallets workspace's call: one entry point, evidence attached. */\n proposeCash: (kind: CashPostingKind, input: CashPostingInput) => {\n const body: Record<string, unknown> = {\n amountMinor: input.amountMinor,\n currency: input.currency,\n description: input.description,\n evidence: input.evidence ?? {},\n };\n\n if (kind === 'otc') body.walletId = input.walletId;\n\n return apiFetch<CashProposal>(`${CASH}/${kind}/proposals`, json(body));\n },\n\n approveCash: (proposalId: string) =>\n apiFetch<CashProposal>(\n `${CASH}/proposals/${encodeURIComponent(proposalId)}/approve`,\n { method: 'POST' },\n ),\n\n rejectCash: (proposalId: string, rejectionReasonCode: string) =>\n apiFetch<CashProposal>(\n `${CASH}/proposals/${encodeURIComponent(proposalId)}/reject`,\n json({ rejectionReasonCode }),\n ),\n};\n\n/** Every verification a tier can require: the KYC engine's operations. */\nexport const TIER_REQUIREMENTS = {\n Individual: [\n 'nin',\n 'nin-slip',\n 'advanced-nin',\n 'premium-nin',\n 'bvn',\n 'validate-bvn',\n 'bvn-nin-selfie',\n 'phone-number',\n 'age-identity',\n 'passport',\n 'drivers-license',\n 'voter-id',\n 'ghana-card',\n 'ghana-passport',\n 'ghana-digital-address',\n 'kenya-national-id',\n 'kenya-passport',\n 'kenya-kra-pin',\n 'uganda-nin',\n 'uganda-voter-id',\n 'south-africa-national-id',\n 'angola-national-id',\n 'zambia-nrc',\n 'zimbabwe-national-id',\n 'zimbabwe-credit-check',\n 'canada-ekyc',\n 'uk-ekyc',\n 'liveness',\n 'face-compare',\n 'face-doc-compare',\n 'document-analysis',\n 'generic-ocr',\n 'utility-bill',\n 'individual-address',\n 'aml-screening',\n 'user-screening',\n 'email-check',\n 'ip-screening',\n 'phone-check',\n ],\n Business: [\n 'cac',\n 'tin',\n 'global-business-search',\n 'kenya-business',\n 'zambia-business',\n 'business-document',\n 'business-address',\n 'business-aml-screening',\n ],\n} as const;\n\n/**\n * \"1,500.50\" → \"150050\" for a two-decimal currency. Returns null for\n * anything that is not a positive amount with at most `digits` decimals.\n */\nexport function toMinor(major: string, digits = 2): string | null {\n const clean = major.replace(/[\\s,]/g, '');\n\n if (!/^\\d+(\\.\\d+)?$/.test(clean)) return null;\n\n const [whole, fraction = ''] = clean.split('.');\n\n if (fraction.length > digits) return null;\n\n const minor = `${whole}${fraction.padEnd(digits, '0')}`.replace(/^0+/, '');\n\n if (!minor || minor.length > 19) return null;\n\n return minor;\n}\n"],"mappings":"AAAA,SAAS,gBAAgB;AA6FzB,MAAM,OAAO;AACb,MAAM,OAAO,GAAG,IAAI;AAEpB,MAAM,OAAO,CAAC,UAAmB;AAAA,EAC/B,QAAQ;AAAA,EACR,MAAM,KAAK,UAAU,IAAI;AAC3B;AAEA,SAAS,MAAM,QAAqD;AAClE,QAAM,KAAK,IAAI,gBAAgB;AAE/B,aAAW,CAAC,KAAK,KAAK,KAAK,OAAO,QAAQ,MAAM;AAC9C,QAAI,UAAU,UAAa,UAAU,GAAI,IAAG,IAAI,KAAK,OAAO,KAAK,CAAC;AAEpE,QAAM,IAAI,GAAG,SAAS;AAEtB,SAAO,IAAI,IAAI,CAAC,KAAK;AACvB;AAEO,MAAM,gBAAgB;AAAA,EAC3B,WAAW,CAAC,aACV;AAAA,IACE,GAAG,IAAI,gBAAgB,WAAW,aAAa,QAAQ,KAAK,EAAE;AAAA,EAChE;AAAA,EACF,YAAY,CAAC,SACX,SAAqB,GAAG,IAAI,iBAAiB,KAAK,IAAI,CAAC;AAAA,EACzD,YAAY,CAAC,IAAY,SACvB,SAAqB,GAAG,IAAI,iBAAiB,EAAE,IAAI;AAAA,IACjD,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,IAAI;AAAA,EAC3B,CAAC;AAAA,EACH,YAAY,CAAC,OACX,SAAe,GAAG,IAAI,iBAAiB,EAAE,IAAI,EAAE,QAAQ,SAAS,CAAC;AAAA,EACnE,aAAa,CAAC,UAAkB,aAC9B;AAAA,IACE,GAAG,IAAI;AAAA,IACP,KAAK,EAAE,UAAU,SAAS,CAAC;AAAA,EAC7B;AAAA;AAAA,EAGF,cAAc,CAAC,UAAkB,SAA2B,CAAC,MAC3D;AAAA,IACE,8BAA8B,QAAQ,gBAAgB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC;AAAA,EAC5E;AAAA;AAAA,EAGF,eAAe,CAAC,WACd,SAA4B,GAAG,IAAI,aAAa,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE;AAAA;AAAA,EAGrE,oBAAoB,CAAC,SAIf,SAAyB,GAAG,IAAI,sBAAsB,KAAK,IAAI,CAAC;AAAA,EACtE,gBAAgB,CAAC,SAKX,SAAyB,GAAG,IAAI,kBAAkB,KAAK,IAAI,CAAC;AAAA;AAAA,EAGlE,aAAa,CAAC,MAAuB,UAA4B;AAC/D,UAAM,OAAgC;AAAA,MACpC,aAAa,MAAM;AAAA,MACnB,UAAU,MAAM;AAAA,MAChB,aAAa,MAAM;AAAA,MACnB,UAAU,MAAM,YAAY,CAAC;AAAA,IAC/B;AAEA,QAAI,SAAS,MAAO,MAAK,WAAW,MAAM;AAE1C,WAAO,SAAuB,GAAG,IAAI,IAAI,IAAI,cAAc,KAAK,IAAI,CAAC;AAAA,EACvE;AAAA,EAEA,aAAa,CAAC,eACZ;AAAA,IACE,GAAG,IAAI,cAAc,mBAAmB,UAAU,CAAC;AAAA,IACnD,EAAE,QAAQ,OAAO;AAAA,EACnB;AAAA,EAEF,YAAY,CAAC,YAAoB,wBAC/B;AAAA,IACE,GAAG,IAAI,cAAc,mBAAmB,UAAU,CAAC;AAAA,IACnD,KAAK,EAAE,oBAAoB,CAAC;AAAA,EAC9B;AACJ;AAGO,MAAM,oBAAoB;AAAA,EAC/B,YAAY;AAAA,IACV;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AAAA,EACA,UAAU;AAAA,IACR;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAMO,SAAS,QAAQ,OAAe,SAAS,GAAkB;AAChE,QAAM,QAAQ,MAAM,QAAQ,UAAU,EAAE;AAExC,MAAI,CAAC,gBAAgB,KAAK,KAAK,EAAG,QAAO;AAEzC,QAAM,CAAC,OAAO,WAAW,EAAE,IAAI,MAAM,MAAM,GAAG;AAE9C,MAAI,SAAS,SAAS,OAAQ,QAAO;AAErC,QAAM,QAAQ,GAAG,KAAK,GAAG,SAAS,OAAO,QAAQ,GAAG,CAAC,GAAG,QAAQ,OAAO,EAAE;AAEzE,MAAI,CAAC,SAAS,MAAM,SAAS,GAAI,QAAO;AAExC,SAAO;AACT;","names":[]}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import type { Delivery } from './admin-newsletter-deliveries-api';
|
|
2
|
+
export type ContactStatus = 'subscribed' | 'unsubscribed' | 'bounced' | 'unverified' | 'inactive';
|
|
3
|
+
export type ContactSource = 'account' | 'manual' | 'import';
|
|
4
|
+
export type UnsubscribedVia = 'link' | 'mailbox' | 'admin';
|
|
5
|
+
/** One email address the newsletter can know about, and where it stands. */
|
|
6
|
+
export interface Contact {
|
|
7
|
+
id: string;
|
|
8
|
+
email: string;
|
|
9
|
+
name: string | null;
|
|
10
|
+
status: ContactStatus;
|
|
11
|
+
source: ContactSource;
|
|
12
|
+
importId: string | null;
|
|
13
|
+
sourceNote: string | null;
|
|
14
|
+
accountId: string | null;
|
|
15
|
+
consent: boolean;
|
|
16
|
+
unsubscribedAt: string | null;
|
|
17
|
+
unsubscribedVia: UnsubscribedVia | null;
|
|
18
|
+
unsubscribedNewsletter: {
|
|
19
|
+
id: string;
|
|
20
|
+
subject: string;
|
|
21
|
+
} | null;
|
|
22
|
+
bouncedAt: string | null;
|
|
23
|
+
/** What an admin typed when they changed the status by hand. */
|
|
24
|
+
statusNote: string | null;
|
|
25
|
+
createdAt: string;
|
|
26
|
+
segments: {
|
|
27
|
+
id: string;
|
|
28
|
+
name: string;
|
|
29
|
+
}[];
|
|
30
|
+
lastSent: {
|
|
31
|
+
newsletterId: string;
|
|
32
|
+
subject: string;
|
|
33
|
+
sentAt: string;
|
|
34
|
+
} | null;
|
|
35
|
+
}
|
|
36
|
+
/** `notEmailable` is unverified and inactive together. */
|
|
37
|
+
export interface ContactCounts {
|
|
38
|
+
all: number;
|
|
39
|
+
subscribed: number;
|
|
40
|
+
unsubscribed: number;
|
|
41
|
+
bounced: number;
|
|
42
|
+
notEmailable: number;
|
|
43
|
+
}
|
|
44
|
+
export interface ContactPage {
|
|
45
|
+
items: Contact[];
|
|
46
|
+
total: number;
|
|
47
|
+
page: number;
|
|
48
|
+
limit: number;
|
|
49
|
+
counts: ContactCounts;
|
|
50
|
+
}
|
|
51
|
+
export type ContactDelivery = Delivery & {
|
|
52
|
+
subject: string;
|
|
53
|
+
};
|
|
54
|
+
export interface ContactDeliveryPage {
|
|
55
|
+
items: ContactDelivery[];
|
|
56
|
+
total: number;
|
|
57
|
+
page: number;
|
|
58
|
+
limit: number;
|
|
59
|
+
}
|
|
60
|
+
/** `query` is a ready query string ("?status=bounced&page=1"), or empty. */
|
|
61
|
+
export declare const adminNewsletterContactsApi: {
|
|
62
|
+
list: (query: string) => Promise<ContactPage>;
|
|
63
|
+
/** Answers with the CSV file's text. */
|
|
64
|
+
exportCsv: (query: string) => Promise<string>;
|
|
65
|
+
get: (id: string) => Promise<Contact>;
|
|
66
|
+
deliveries: (id: string, query: string) => Promise<ContactDeliveryPage>;
|
|
67
|
+
unsubscribe: (id: string, note: string) => Promise<Contact>;
|
|
68
|
+
/** Refused with 409 for a bounced, unverified or inactive contact. */
|
|
69
|
+
resubscribe: (id: string, note: string) => Promise<Contact>;
|
|
70
|
+
};
|