@crossly/mcp 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +126 -2
- package/dist/api.d.ts +44 -0
- package/dist/api.d.ts.map +1 -0
- package/dist/api.js +79 -0
- package/dist/api.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +85 -0
- package/dist/index.js.map +1 -0
- package/dist/registry.d.ts +11 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +345 -0
- package/dist/registry.js.map +1 -0
- package/dist/tools/account.d.ts +3 -0
- package/dist/tools/account.d.ts.map +1 -0
- package/dist/tools/account.js +164 -0
- package/dist/tools/account.js.map +1 -0
- package/dist/tools/accounts.d.ts +3 -0
- package/dist/tools/accounts.d.ts.map +1 -0
- package/dist/tools/accounts.js +471 -0
- package/dist/tools/accounts.js.map +1 -0
- package/dist/tools/action_log.d.ts +3 -0
- package/dist/tools/action_log.d.ts.map +1 -0
- package/dist/tools/action_log.js +81 -0
- package/dist/tools/action_log.js.map +1 -0
- package/dist/tools/ads.d.ts +45 -0
- package/dist/tools/ads.d.ts.map +1 -0
- package/dist/tools/ads.js +233 -0
- package/dist/tools/ads.js.map +1 -0
- package/dist/tools/ai.d.ts +3 -0
- package/dist/tools/ai.d.ts.map +1 -0
- package/dist/tools/ai.js +437 -0
- package/dist/tools/ai.js.map +1 -0
- package/dist/tools/analytics.d.ts +3 -0
- package/dist/tools/analytics.d.ts.map +1 -0
- package/dist/tools/analytics.js +193 -0
- package/dist/tools/analytics.js.map +1 -0
- package/dist/tools/automation/chains.d.ts +10 -0
- package/dist/tools/automation/chains.d.ts.map +1 -0
- package/dist/tools/automation/chains.js +180 -0
- package/dist/tools/automation/chains.js.map +1 -0
- package/dist/tools/automation/network.d.ts +8 -0
- package/dist/tools/automation/network.d.ts.map +1 -0
- package/dist/tools/automation/network.js +102 -0
- package/dist/tools/automation/network.js.map +1 -0
- package/dist/tools/automation/notifications.d.ts +8 -0
- package/dist/tools/automation/notifications.d.ts.map +1 -0
- package/dist/tools/automation/notifications.js +123 -0
- package/dist/tools/automation/notifications.js.map +1 -0
- package/dist/tools/automation/recipes.d.ts +11 -0
- package/dist/tools/automation/recipes.d.ts.map +1 -0
- package/dist/tools/automation/recipes.js +82 -0
- package/dist/tools/automation/recipes.js.map +1 -0
- package/dist/tools/automation/rules.d.ts +12 -0
- package/dist/tools/automation/rules.d.ts.map +1 -0
- package/dist/tools/automation/rules.js +296 -0
- package/dist/tools/automation/rules.js.map +1 -0
- package/dist/tools/automation.d.ts +31 -0
- package/dist/tools/automation.d.ts.map +1 -0
- package/dist/tools/automation.js +41 -0
- package/dist/tools/automation.js.map +1 -0
- package/dist/tools/brand-drops.d.ts +3 -0
- package/dist/tools/brand-drops.d.ts.map +1 -0
- package/dist/tools/brand-drops.js +145 -0
- package/dist/tools/brand-drops.js.map +1 -0
- package/dist/tools/buyer-commerce.d.ts +3 -0
- package/dist/tools/buyer-commerce.d.ts.map +1 -0
- package/dist/tools/buyer-commerce.js +189 -0
- package/dist/tools/buyer-commerce.js.map +1 -0
- package/dist/tools/buyer-gift-cards.d.ts +12 -0
- package/dist/tools/buyer-gift-cards.d.ts.map +1 -0
- package/dist/tools/buyer-gift-cards.js +86 -0
- package/dist/tools/buyer-gift-cards.js.map +1 -0
- package/dist/tools/buyer-lists.d.ts +3 -0
- package/dist/tools/buyer-lists.d.ts.map +1 -0
- package/dist/tools/buyer-lists.js +245 -0
- package/dist/tools/buyer-lists.js.map +1 -0
- package/dist/tools/buyer-live.d.ts +22 -0
- package/dist/tools/buyer-live.d.ts.map +1 -0
- package/dist/tools/buyer-live.js +291 -0
- package/dist/tools/buyer-live.js.map +1 -0
- package/dist/tools/buyer-orders.d.ts +3 -0
- package/dist/tools/buyer-orders.d.ts.map +1 -0
- package/dist/tools/buyer-orders.js +275 -0
- package/dist/tools/buyer-orders.js.map +1 -0
- package/dist/tools/buyer-packs.d.ts +3 -0
- package/dist/tools/buyer-packs.d.ts.map +1 -0
- package/dist/tools/buyer-packs.js +53 -0
- package/dist/tools/buyer-packs.js.map +1 -0
- package/dist/tools/buyer-w7.d.ts +3 -0
- package/dist/tools/buyer-w7.d.ts.map +1 -0
- package/dist/tools/buyer-w7.js +95 -0
- package/dist/tools/buyer-w7.js.map +1 -0
- package/dist/tools/buyer-wave3.d.ts +3 -0
- package/dist/tools/buyer-wave3.d.ts.map +1 -0
- package/dist/tools/buyer-wave3.js +291 -0
- package/dist/tools/buyer-wave3.js.map +1 -0
- package/dist/tools/buyer-xmarket-extras.d.ts +3 -0
- package/dist/tools/buyer-xmarket-extras.d.ts.map +1 -0
- package/dist/tools/buyer-xmarket-extras.js +280 -0
- package/dist/tools/buyer-xmarket-extras.js.map +1 -0
- package/dist/tools/buyer-xmarket.d.ts +3 -0
- package/dist/tools/buyer-xmarket.d.ts.map +1 -0
- package/dist/tools/buyer-xmarket.js +310 -0
- package/dist/tools/buyer-xmarket.js.map +1 -0
- package/dist/tools/buyer.d.ts +21 -0
- package/dist/tools/buyer.d.ts.map +1 -0
- package/dist/tools/buyer.js +451 -0
- package/dist/tools/buyer.js.map +1 -0
- package/dist/tools/catalog-lookup.d.ts +3 -0
- package/dist/tools/catalog-lookup.d.ts.map +1 -0
- package/dist/tools/catalog-lookup.js +40 -0
- package/dist/tools/catalog-lookup.js.map +1 -0
- package/dist/tools/catalog-matches.d.ts +10 -0
- package/dist/tools/catalog-matches.d.ts.map +1 -0
- package/dist/tools/catalog-matches.js +91 -0
- package/dist/tools/catalog-matches.js.map +1 -0
- package/dist/tools/cbx-ops.d.ts +11 -0
- package/dist/tools/cbx-ops.d.ts.map +1 -0
- package/dist/tools/cbx-ops.js +35 -0
- package/dist/tools/cbx-ops.js.map +1 -0
- package/dist/tools/cbx-rewards/ad-credit.d.ts +3 -0
- package/dist/tools/cbx-rewards/ad-credit.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/ad-credit.js +72 -0
- package/dist/tools/cbx-rewards/ad-credit.js.map +1 -0
- package/dist/tools/cbx-rewards/balances.d.ts +3 -0
- package/dist/tools/cbx-rewards/balances.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/balances.js +114 -0
- package/dist/tools/cbx-rewards/balances.js.map +1 -0
- package/dist/tools/cbx-rewards/credit.d.ts +3 -0
- package/dist/tools/cbx-rewards/credit.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/credit.js +131 -0
- package/dist/tools/cbx-rewards/credit.js.map +1 -0
- package/dist/tools/cbx-rewards/disbursements.d.ts +3 -0
- package/dist/tools/cbx-rewards/disbursements.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/disbursements.js +146 -0
- package/dist/tools/cbx-rewards/disbursements.js.map +1 -0
- package/dist/tools/cbx-rewards/earn-boosts.d.ts +3 -0
- package/dist/tools/cbx-rewards/earn-boosts.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/earn-boosts.js +152 -0
- package/dist/tools/cbx-rewards/earn-boosts.js.map +1 -0
- package/dist/tools/cbx-rewards/redemptions.d.ts +3 -0
- package/dist/tools/cbx-rewards/redemptions.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/redemptions.js +61 -0
- package/dist/tools/cbx-rewards/redemptions.js.map +1 -0
- package/dist/tools/cbx-rewards/staking.d.ts +3 -0
- package/dist/tools/cbx-rewards/staking.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/staking.js +74 -0
- package/dist/tools/cbx-rewards/staking.js.map +1 -0
- package/dist/tools/cbx-rewards/tier-admin.d.ts +3 -0
- package/dist/tools/cbx-rewards/tier-admin.d.ts.map +1 -0
- package/dist/tools/cbx-rewards/tier-admin.js +75 -0
- package/dist/tools/cbx-rewards/tier-admin.js.map +1 -0
- package/dist/tools/cbx-rewards.d.ts +40 -0
- package/dist/tools/cbx-rewards.d.ts.map +1 -0
- package/dist/tools/cbx-rewards.js +56 -0
- package/dist/tools/cbx-rewards.js.map +1 -0
- package/dist/tools/cbx-wallet-payments.d.ts +35 -0
- package/dist/tools/cbx-wallet-payments.d.ts.map +1 -0
- package/dist/tools/cbx-wallet-payments.js +156 -0
- package/dist/tools/cbx-wallet-payments.js.map +1 -0
- package/dist/tools/cbx.d.ts +23 -0
- package/dist/tools/cbx.d.ts.map +1 -0
- package/dist/tools/cbx.js +474 -0
- package/dist/tools/cbx.js.map +1 -0
- package/dist/tools/comp_watchlists.d.ts +3 -0
- package/dist/tools/comp_watchlists.d.ts.map +1 -0
- package/dist/tools/comp_watchlists.js +127 -0
- package/dist/tools/comp_watchlists.js.map +1 -0
- package/dist/tools/connected_apps.d.ts +12 -0
- package/dist/tools/connected_apps.d.ts.map +1 -0
- package/dist/tools/connected_apps.js +42 -0
- package/dist/tools/connected_apps.js.map +1 -0
- package/dist/tools/cosm/attestations.d.ts +3 -0
- package/dist/tools/cosm/attestations.d.ts.map +1 -0
- package/dist/tools/cosm/attestations.js +102 -0
- package/dist/tools/cosm/attestations.js.map +1 -0
- package/dist/tools/cosm/auction.d.ts +3 -0
- package/dist/tools/cosm/auction.d.ts.map +1 -0
- package/dist/tools/cosm/auction.js +97 -0
- package/dist/tools/cosm/auction.js.map +1 -0
- package/dist/tools/cosm/cosmetics.d.ts +3 -0
- package/dist/tools/cosm/cosmetics.d.ts.map +1 -0
- package/dist/tools/cosm/cosmetics.js +95 -0
- package/dist/tools/cosm/cosmetics.js.map +1 -0
- package/dist/tools/cosm/designer.d.ts +3 -0
- package/dist/tools/cosm/designer.d.ts.map +1 -0
- package/dist/tools/cosm/designer.js +224 -0
- package/dist/tools/cosm/designer.js.map +1 -0
- package/dist/tools/cosm/fusion-handles.d.ts +3 -0
- package/dist/tools/cosm/fusion-handles.d.ts.map +1 -0
- package/dist/tools/cosm/fusion-handles.js +82 -0
- package/dist/tools/cosm/fusion-handles.js.map +1 -0
- package/dist/tools/cosm/pegs.d.ts +3 -0
- package/dist/tools/cosm/pegs.d.ts.map +1 -0
- package/dist/tools/cosm/pegs.js +112 -0
- package/dist/tools/cosm/pegs.js.map +1 -0
- package/dist/tools/cosm/storefront.d.ts +3 -0
- package/dist/tools/cosm/storefront.d.ts.map +1 -0
- package/dist/tools/cosm/storefront.js +138 -0
- package/dist/tools/cosm/storefront.js.map +1 -0
- package/dist/tools/cosm/supply.d.ts +3 -0
- package/dist/tools/cosm/supply.d.ts.map +1 -0
- package/dist/tools/cosm/supply.js +67 -0
- package/dist/tools/cosm/supply.js.map +1 -0
- package/dist/tools/cosm/withdrawals.d.ts +3 -0
- package/dist/tools/cosm/withdrawals.d.ts.map +1 -0
- package/dist/tools/cosm/withdrawals.js +63 -0
- package/dist/tools/cosm/withdrawals.js.map +1 -0
- package/dist/tools/cosm.d.ts +57 -0
- package/dist/tools/cosm.d.ts.map +1 -0
- package/dist/tools/cosm.js +75 -0
- package/dist/tools/cosm.js.map +1 -0
- package/dist/tools/customers.d.ts +3 -0
- package/dist/tools/customers.d.ts.map +1 -0
- package/dist/tools/customers.js +147 -0
- package/dist/tools/customers.js.map +1 -0
- package/dist/tools/dao.d.ts +53 -0
- package/dist/tools/dao.d.ts.map +1 -0
- package/dist/tools/dao.js +351 -0
- package/dist/tools/dao.js.map +1 -0
- package/dist/tools/devices.d.ts +3 -0
- package/dist/tools/devices.d.ts.map +1 -0
- package/dist/tools/devices.js +46 -0
- package/dist/tools/devices.js.map +1 -0
- package/dist/tools/drops.d.ts +3 -0
- package/dist/tools/drops.d.ts.map +1 -0
- package/dist/tools/drops.js +126 -0
- package/dist/tools/drops.js.map +1 -0
- package/dist/tools/embeds.d.ts +12 -0
- package/dist/tools/embeds.d.ts.map +1 -0
- package/dist/tools/embeds.js +80 -0
- package/dist/tools/embeds.js.map +1 -0
- package/dist/tools/evidence.d.ts +11 -0
- package/dist/tools/evidence.d.ts.map +1 -0
- package/dist/tools/evidence.js +42 -0
- package/dist/tools/evidence.js.map +1 -0
- package/dist/tools/friends-boards-clubs.d.ts +3 -0
- package/dist/tools/friends-boards-clubs.d.ts.map +1 -0
- package/dist/tools/friends-boards-clubs.js +157 -0
- package/dist/tools/friends-boards-clubs.js.map +1 -0
- package/dist/tools/fulfillment.d.ts +3 -0
- package/dist/tools/fulfillment.d.ts.map +1 -0
- package/dist/tools/fulfillment.js +71 -0
- package/dist/tools/fulfillment.js.map +1 -0
- package/dist/tools/games.d.ts +10 -0
- package/dist/tools/games.d.ts.map +1 -0
- package/dist/tools/games.js +49 -0
- package/dist/tools/games.js.map +1 -0
- package/dist/tools/grading.d.ts +3 -0
- package/dist/tools/grading.d.ts.map +1 -0
- package/dist/tools/grading.js +184 -0
- package/dist/tools/grading.js.map +1 -0
- package/dist/tools/homes.d.ts +10 -0
- package/dist/tools/homes.d.ts.map +1 -0
- package/dist/tools/homes.js +62 -0
- package/dist/tools/homes.js.map +1 -0
- package/dist/tools/imports.d.ts +3 -0
- package/dist/tools/imports.d.ts.map +1 -0
- package/dist/tools/imports.js +72 -0
- package/dist/tools/imports.js.map +1 -0
- package/dist/tools/inbox.d.ts +3 -0
- package/dist/tools/inbox.d.ts.map +1 -0
- package/dist/tools/inbox.js +408 -0
- package/dist/tools/inbox.js.map +1 -0
- package/dist/tools/inventory.d.ts +3 -0
- package/dist/tools/inventory.d.ts.map +1 -0
- package/dist/tools/inventory.js +572 -0
- package/dist/tools/inventory.js.map +1 -0
- package/dist/tools/listings/_shared.d.ts +43 -0
- package/dist/tools/listings/_shared.d.ts.map +1 -0
- package/dist/tools/listings/_shared.js +59 -0
- package/dist/tools/listings/_shared.js.map +1 -0
- package/dist/tools/listings/ai-image.d.ts +3 -0
- package/dist/tools/listings/ai-image.d.ts.map +1 -0
- package/dist/tools/listings/ai-image.js +145 -0
- package/dist/tools/listings/ai-image.js.map +1 -0
- package/dist/tools/listings/bulk.d.ts +3 -0
- package/dist/tools/listings/bulk.d.ts.map +1 -0
- package/dist/tools/listings/bulk.js +262 -0
- package/dist/tools/listings/bulk.js.map +1 -0
- package/dist/tools/listings/core.d.ts +3 -0
- package/dist/tools/listings/core.d.ts.map +1 -0
- package/dist/tools/listings/core.js +300 -0
- package/dist/tools/listings/core.js.map +1 -0
- package/dist/tools/listings/discovery.d.ts +3 -0
- package/dist/tools/listings/discovery.d.ts.map +1 -0
- package/dist/tools/listings/discovery.js +153 -0
- package/dist/tools/listings/discovery.js.map +1 -0
- package/dist/tools/listings.d.ts +3 -0
- package/dist/tools/listings.d.ts.map +1 -0
- package/dist/tools/listings.js +26 -0
- package/dist/tools/listings.js.map +1 -0
- package/dist/tools/live-shows.d.ts +3 -0
- package/dist/tools/live-shows.d.ts.map +1 -0
- package/dist/tools/live-shows.js +70 -0
- package/dist/tools/live-shows.js.map +1 -0
- package/dist/tools/magic.d.ts +3 -0
- package/dist/tools/magic.d.ts.map +1 -0
- package/dist/tools/magic.js +104 -0
- package/dist/tools/magic.js.map +1 -0
- package/dist/tools/market.d.ts +14 -0
- package/dist/tools/market.d.ts.map +1 -0
- package/dist/tools/market.js +222 -0
- package/dist/tools/market.js.map +1 -0
- package/dist/tools/mobile.d.ts +3 -0
- package/dist/tools/mobile.d.ts.map +1 -0
- package/dist/tools/mobile.js +61 -0
- package/dist/tools/mobile.js.map +1 -0
- package/dist/tools/neighbourhoods.d.ts +3 -0
- package/dist/tools/neighbourhoods.d.ts.map +1 -0
- package/dist/tools/neighbourhoods.js +30 -0
- package/dist/tools/neighbourhoods.js.map +1 -0
- package/dist/tools/nft-market.d.ts +8 -0
- package/dist/tools/nft-market.d.ts.map +1 -0
- package/dist/tools/nft-market.js +99 -0
- package/dist/tools/nft-market.js.map +1 -0
- package/dist/tools/offers.d.ts +12 -0
- package/dist/tools/offers.d.ts.map +1 -0
- package/dist/tools/offers.js +76 -0
- package/dist/tools/offers.js.map +1 -0
- package/dist/tools/orders/actions.d.ts +4 -0
- package/dist/tools/orders/actions.d.ts.map +1 -0
- package/dist/tools/orders/actions.js +126 -0
- package/dist/tools/orders/actions.js.map +1 -0
- package/dist/tools/orders/bulk.d.ts +4 -0
- package/dist/tools/orders/bulk.d.ts.map +1 -0
- package/dist/tools/orders/bulk.js +145 -0
- package/dist/tools/orders/bulk.js.map +1 -0
- package/dist/tools/orders/fulfillment.d.ts +4 -0
- package/dist/tools/orders/fulfillment.d.ts.map +1 -0
- package/dist/tools/orders/fulfillment.js +240 -0
- package/dist/tools/orders/fulfillment.js.map +1 -0
- package/dist/tools/orders/read.d.ts +4 -0
- package/dist/tools/orders/read.d.ts.map +1 -0
- package/dist/tools/orders/read.js +165 -0
- package/dist/tools/orders/read.js.map +1 -0
- package/dist/tools/orders/whatnot.d.ts +7 -0
- package/dist/tools/orders/whatnot.d.ts.map +1 -0
- package/dist/tools/orders/whatnot.js +96 -0
- package/dist/tools/orders/whatnot.js.map +1 -0
- package/dist/tools/orders.d.ts +25 -0
- package/dist/tools/orders.d.ts.map +1 -0
- package/dist/tools/orders.js +35 -0
- package/dist/tools/orders.js.map +1 -0
- package/dist/tools/passports.d.ts +3 -0
- package/dist/tools/passports.d.ts.map +1 -0
- package/dist/tools/passports.js +66 -0
- package/dist/tools/passports.js.map +1 -0
- package/dist/tools/pat.d.ts +3 -0
- package/dist/tools/pat.d.ts.map +1 -0
- package/dist/tools/pat.js +103 -0
- package/dist/tools/pat.js.map +1 -0
- package/dist/tools/payout.d.ts +3 -0
- package/dist/tools/payout.d.ts.map +1 -0
- package/dist/tools/payout.js +134 -0
- package/dist/tools/payout.js.map +1 -0
- package/dist/tools/policy-presets.d.ts +3 -0
- package/dist/tools/policy-presets.d.ts.map +1 -0
- package/dist/tools/policy-presets.js +146 -0
- package/dist/tools/policy-presets.js.map +1 -0
- package/dist/tools/production.d.ts +8 -0
- package/dist/tools/production.d.ts.map +1 -0
- package/dist/tools/production.js +419 -0
- package/dist/tools/production.js.map +1 -0
- package/dist/tools/reference.d.ts +3 -0
- package/dist/tools/reference.d.ts.map +1 -0
- package/dist/tools/reference.js +138 -0
- package/dist/tools/reference.js.map +1 -0
- package/dist/tools/reprice.d.ts +3 -0
- package/dist/tools/reprice.d.ts.map +1 -0
- package/dist/tools/reprice.js +62 -0
- package/dist/tools/reprice.js.map +1 -0
- package/dist/tools/reputation.d.ts +10 -0
- package/dist/tools/reputation.d.ts.map +1 -0
- package/dist/tools/reputation.js +57 -0
- package/dist/tools/reputation.js.map +1 -0
- package/dist/tools/restock.d.ts +3 -0
- package/dist/tools/restock.d.ts.map +1 -0
- package/dist/tools/restock.js +76 -0
- package/dist/tools/restock.js.map +1 -0
- package/dist/tools/returns.d.ts +3 -0
- package/dist/tools/returns.d.ts.map +1 -0
- package/dist/tools/returns.js +125 -0
- package/dist/tools/returns.js.map +1 -0
- package/dist/tools/sales.d.ts +3 -0
- package/dist/tools/sales.d.ts.map +1 -0
- package/dist/tools/sales.js +52 -0
- package/dist/tools/sales.js.map +1 -0
- package/dist/tools/saved_views.d.ts +3 -0
- package/dist/tools/saved_views.d.ts.map +1 -0
- package/dist/tools/saved_views.js +155 -0
- package/dist/tools/saved_views.js.map +1 -0
- package/dist/tools/scan.d.ts +14 -0
- package/dist/tools/scan.d.ts.map +1 -0
- package/dist/tools/scan.js +85 -0
- package/dist/tools/scan.js.map +1 -0
- package/dist/tools/seller-ops.d.ts +3 -0
- package/dist/tools/seller-ops.d.ts.map +1 -0
- package/dist/tools/seller-ops.js +83 -0
- package/dist/tools/seller-ops.js.map +1 -0
- package/dist/tools/seller-xmarket.d.ts +3 -0
- package/dist/tools/seller-xmarket.d.ts.map +1 -0
- package/dist/tools/seller-xmarket.js +120 -0
- package/dist/tools/seller-xmarket.js.map +1 -0
- package/dist/tools/sourcing.d.ts +3 -0
- package/dist/tools/sourcing.d.ts.map +1 -0
- package/dist/tools/sourcing.js +160 -0
- package/dist/tools/sourcing.js.map +1 -0
- package/dist/tools/spatial-auction.d.ts +3 -0
- package/dist/tools/spatial-auction.d.ts.map +1 -0
- package/dist/tools/spatial-auction.js +162 -0
- package/dist/tools/spatial-auction.js.map +1 -0
- package/dist/tools/spatial-emotes.d.ts +10 -0
- package/dist/tools/spatial-emotes.d.ts.map +1 -0
- package/dist/tools/spatial-emotes.js +40 -0
- package/dist/tools/spatial-emotes.js.map +1 -0
- package/dist/tools/spatial-employee.d.ts +3 -0
- package/dist/tools/spatial-employee.d.ts.map +1 -0
- package/dist/tools/spatial-employee.js +221 -0
- package/dist/tools/spatial-employee.js.map +1 -0
- package/dist/tools/spatial-party.d.ts +10 -0
- package/dist/tools/spatial-party.d.ts.map +1 -0
- package/dist/tools/spatial-party.js +25 -0
- package/dist/tools/spatial-party.js.map +1 -0
- package/dist/tools/spatial-rooms.d.ts +8 -0
- package/dist/tools/spatial-rooms.d.ts.map +1 -0
- package/dist/tools/spatial-rooms.js +177 -0
- package/dist/tools/spatial-rooms.js.map +1 -0
- package/dist/tools/spatial.d.ts +12 -0
- package/dist/tools/spatial.d.ts.map +1 -0
- package/dist/tools/spatial.js +537 -0
- package/dist/tools/spatial.js.map +1 -0
- package/dist/tools/stalls.d.ts +3 -0
- package/dist/tools/stalls.d.ts.map +1 -0
- package/dist/tools/stalls.js +145 -0
- package/dist/tools/stalls.js.map +1 -0
- package/dist/tools/storefront-shipping.d.ts +7 -0
- package/dist/tools/storefront-shipping.d.ts.map +1 -0
- package/dist/tools/storefront-shipping.js +94 -0
- package/dist/tools/storefront-shipping.js.map +1 -0
- package/dist/tools/tax.d.ts +3 -0
- package/dist/tools/tax.d.ts.map +1 -0
- package/dist/tools/tax.js +194 -0
- package/dist/tools/tax.js.map +1 -0
- package/dist/tools/taxonomy.d.ts +3 -0
- package/dist/tools/taxonomy.d.ts.map +1 -0
- package/dist/tools/taxonomy.js +131 -0
- package/dist/tools/taxonomy.js.map +1 -0
- package/dist/tools/team.d.ts +3 -0
- package/dist/tools/team.d.ts.map +1 -0
- package/dist/tools/team.js +152 -0
- package/dist/tools/team.js.map +1 -0
- package/dist/tools/templates.d.ts +10 -0
- package/dist/tools/templates.d.ts.map +1 -0
- package/dist/tools/templates.js +406 -0
- package/dist/tools/templates.js.map +1 -0
- package/dist/tools/trade-block.d.ts +3 -0
- package/dist/tools/trade-block.d.ts.map +1 -0
- package/dist/tools/trade-block.js +308 -0
- package/dist/tools/trade-block.js.map +1 -0
- package/dist/tools/types.d.ts +43 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +24 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/units.d.ts +9 -0
- package/dist/tools/units.d.ts.map +1 -0
- package/dist/tools/units.js +156 -0
- package/dist/tools/units.js.map +1 -0
- package/dist/tools/variation_groups.d.ts +17 -0
- package/dist/tools/variation_groups.d.ts.map +1 -0
- package/dist/tools/variation_groups.js +92 -0
- package/dist/tools/variation_groups.js.map +1 -0
- package/dist/tools/vault-markets-adl.d.ts +11 -0
- package/dist/tools/vault-markets-adl.d.ts.map +1 -0
- package/dist/tools/vault-markets-adl.js +46 -0
- package/dist/tools/vault-markets-adl.js.map +1 -0
- package/dist/tools/vault-markets-agent.d.ts +3 -0
- package/dist/tools/vault-markets-agent.d.ts.map +1 -0
- package/dist/tools/vault-markets-agent.js +82 -0
- package/dist/tools/vault-markets-agent.js.map +1 -0
- package/dist/tools/vault-markets-alerts-hub.d.ts +3 -0
- package/dist/tools/vault-markets-alerts-hub.d.ts.map +1 -0
- package/dist/tools/vault-markets-alerts-hub.js +75 -0
- package/dist/tools/vault-markets-alerts-hub.js.map +1 -0
- package/dist/tools/vault-markets-analytics.d.ts +3 -0
- package/dist/tools/vault-markets-analytics.d.ts.map +1 -0
- package/dist/tools/vault-markets-analytics.js +192 -0
- package/dist/tools/vault-markets-analytics.js.map +1 -0
- package/dist/tools/vault-markets-bullion.d.ts +3 -0
- package/dist/tools/vault-markets-bullion.d.ts.map +1 -0
- package/dist/tools/vault-markets-bullion.js +172 -0
- package/dist/tools/vault-markets-bullion.js.map +1 -0
- package/dist/tools/vault-markets-channels.d.ts +10 -0
- package/dist/tools/vault-markets-channels.d.ts.map +1 -0
- package/dist/tools/vault-markets-channels.js +93 -0
- package/dist/tools/vault-markets-channels.js.map +1 -0
- package/dist/tools/vault-markets-credit.d.ts +3 -0
- package/dist/tools/vault-markets-credit.d.ts.map +1 -0
- package/dist/tools/vault-markets-credit.js +164 -0
- package/dist/tools/vault-markets-credit.js.map +1 -0
- package/dist/tools/vault-markets-curve-pools.d.ts +3 -0
- package/dist/tools/vault-markets-curve-pools.d.ts.map +1 -0
- package/dist/tools/vault-markets-curve-pools.js +116 -0
- package/dist/tools/vault-markets-curve-pools.js.map +1 -0
- package/dist/tools/vault-markets-floor.d.ts +8 -0
- package/dist/tools/vault-markets-floor.d.ts.map +1 -0
- package/dist/tools/vault-markets-floor.js +17 -0
- package/dist/tools/vault-markets-floor.js.map +1 -0
- package/dist/tools/vault-markets-follows.d.ts +3 -0
- package/dist/tools/vault-markets-follows.d.ts.map +1 -0
- package/dist/tools/vault-markets-follows.js +134 -0
- package/dist/tools/vault-markets-follows.js.map +1 -0
- package/dist/tools/vault-markets-grade-to-vault.d.ts +3 -0
- package/dist/tools/vault-markets-grade-to-vault.d.ts.map +1 -0
- package/dist/tools/vault-markets-grade-to-vault.js +178 -0
- package/dist/tools/vault-markets-grade-to-vault.js.map +1 -0
- package/dist/tools/vault-markets-grading.d.ts +10 -0
- package/dist/tools/vault-markets-grading.d.ts.map +1 -0
- package/dist/tools/vault-markets-grading.js +55 -0
- package/dist/tools/vault-markets-grading.js.map +1 -0
- package/dist/tools/vault-markets-hall.d.ts +9 -0
- package/dist/tools/vault-markets-hall.d.ts.map +1 -0
- package/dist/tools/vault-markets-hall.js +70 -0
- package/dist/tools/vault-markets-hall.js.map +1 -0
- package/dist/tools/vault-markets-health.d.ts +10 -0
- package/dist/tools/vault-markets-health.d.ts.map +1 -0
- package/dist/tools/vault-markets-health.js +34 -0
- package/dist/tools/vault-markets-health.js.map +1 -0
- package/dist/tools/vault-markets-home.d.ts +9 -0
- package/dist/tools/vault-markets-home.d.ts.map +1 -0
- package/dist/tools/vault-markets-home.js +58 -0
- package/dist/tools/vault-markets-home.js.map +1 -0
- package/dist/tools/vault-markets-index.d.ts +3 -0
- package/dist/tools/vault-markets-index.d.ts.map +1 -0
- package/dist/tools/vault-markets-index.js +135 -0
- package/dist/tools/vault-markets-index.js.map +1 -0
- package/dist/tools/vault-markets-inst.d.ts +3 -0
- package/dist/tools/vault-markets-inst.d.ts.map +1 -0
- package/dist/tools/vault-markets-inst.js +390 -0
- package/dist/tools/vault-markets-inst.js.map +1 -0
- package/dist/tools/vault-markets-joint-tod.d.ts +3 -0
- package/dist/tools/vault-markets-joint-tod.d.ts.map +1 -0
- package/dist/tools/vault-markets-joint-tod.js +300 -0
- package/dist/tools/vault-markets-joint-tod.js.map +1 -0
- package/dist/tools/vault-markets-liquidity.d.ts +3 -0
- package/dist/tools/vault-markets-liquidity.d.ts.map +1 -0
- package/dist/tools/vault-markets-liquidity.js +408 -0
- package/dist/tools/vault-markets-liquidity.js.map +1 -0
- package/dist/tools/vault-markets-marks.d.ts +8 -0
- package/dist/tools/vault-markets-marks.d.ts.map +1 -0
- package/dist/tools/vault-markets-marks.js +25 -0
- package/dist/tools/vault-markets-marks.js.map +1 -0
- package/dist/tools/vault-markets-missions.d.ts +3 -0
- package/dist/tools/vault-markets-missions.d.ts.map +1 -0
- package/dist/tools/vault-markets-missions.js +36 -0
- package/dist/tools/vault-markets-missions.js.map +1 -0
- package/dist/tools/vault-markets-mm.d.ts +3 -0
- package/dist/tools/vault-markets-mm.d.ts.map +1 -0
- package/dist/tools/vault-markets-mm.js +282 -0
- package/dist/tools/vault-markets-mm.js.map +1 -0
- package/dist/tools/vault-markets-mode.d.ts +11 -0
- package/dist/tools/vault-markets-mode.d.ts.map +1 -0
- package/dist/tools/vault-markets-mode.js +56 -0
- package/dist/tools/vault-markets-mode.js.map +1 -0
- package/dist/tools/vault-markets-ops.d.ts +3 -0
- package/dist/tools/vault-markets-ops.d.ts.map +1 -0
- package/dist/tools/vault-markets-ops.js +208 -0
- package/dist/tools/vault-markets-ops.js.map +1 -0
- package/dist/tools/vault-markets-oracle-dcm.d.ts +10 -0
- package/dist/tools/vault-markets-oracle-dcm.d.ts.map +1 -0
- package/dist/tools/vault-markets-oracle-dcm.js +153 -0
- package/dist/tools/vault-markets-oracle-dcm.js.map +1 -0
- package/dist/tools/vault-markets-p2p.d.ts +3 -0
- package/dist/tools/vault-markets-p2p.d.ts.map +1 -0
- package/dist/tools/vault-markets-p2p.js +177 -0
- package/dist/tools/vault-markets-p2p.js.map +1 -0
- package/dist/tools/vault-markets-paper.d.ts +3 -0
- package/dist/tools/vault-markets-paper.d.ts.map +1 -0
- package/dist/tools/vault-markets-paper.js +126 -0
- package/dist/tools/vault-markets-paper.js.map +1 -0
- package/dist/tools/vault-markets-pm.d.ts +10 -0
- package/dist/tools/vault-markets-pm.d.ts.map +1 -0
- package/dist/tools/vault-markets-pm.js +74 -0
- package/dist/tools/vault-markets-pm.js.map +1 -0
- package/dist/tools/vault-markets-pop-reports.d.ts +8 -0
- package/dist/tools/vault-markets-pop-reports.d.ts.map +1 -0
- package/dist/tools/vault-markets-pop-reports.js +31 -0
- package/dist/tools/vault-markets-pop-reports.js.map +1 -0
- package/dist/tools/vault-markets-price-widgets.d.ts +3 -0
- package/dist/tools/vault-markets-price-widgets.d.ts.map +1 -0
- package/dist/tools/vault-markets-price-widgets.js +89 -0
- package/dist/tools/vault-markets-price-widgets.js.map +1 -0
- package/dist/tools/vault-markets-pro.d.ts +3 -0
- package/dist/tools/vault-markets-pro.d.ts.map +1 -0
- package/dist/tools/vault-markets-pro.js +276 -0
- package/dist/tools/vault-markets-pro.js.map +1 -0
- package/dist/tools/vault-markets-receipt-tokens.d.ts +3 -0
- package/dist/tools/vault-markets-receipt-tokens.d.ts.map +1 -0
- package/dist/tools/vault-markets-receipt-tokens.js +81 -0
- package/dist/tools/vault-markets-receipt-tokens.js.map +1 -0
- package/dist/tools/vault-markets-reports.d.ts +10 -0
- package/dist/tools/vault-markets-reports.d.ts.map +1 -0
- package/dist/tools/vault-markets-reports.js +47 -0
- package/dist/tools/vault-markets-reports.js.map +1 -0
- package/dist/tools/vault-markets-set-goals.d.ts +3 -0
- package/dist/tools/vault-markets-set-goals.d.ts.map +1 -0
- package/dist/tools/vault-markets-set-goals.js +150 -0
- package/dist/tools/vault-markets-set-goals.js.map +1 -0
- package/dist/tools/vault-markets-social.d.ts +3 -0
- package/dist/tools/vault-markets-social.d.ts.map +1 -0
- package/dist/tools/vault-markets-social.js +212 -0
- package/dist/tools/vault-markets-social.js.map +1 -0
- package/dist/tools/vault-markets-stats.d.ts +3 -0
- package/dist/tools/vault-markets-stats.d.ts.map +1 -0
- package/dist/tools/vault-markets-stats.js +83 -0
- package/dist/tools/vault-markets-stats.js.map +1 -0
- package/dist/tools/vault-markets-supply.d.ts +3 -0
- package/dist/tools/vault-markets-supply.d.ts.map +1 -0
- package/dist/tools/vault-markets-supply.js +183 -0
- package/dist/tools/vault-markets-supply.js.map +1 -0
- package/dist/tools/vault-markets-tax-loss.d.ts +9 -0
- package/dist/tools/vault-markets-tax-loss.d.ts.map +1 -0
- package/dist/tools/vault-markets-tax-loss.js +16 -0
- package/dist/tools/vault-markets-tax-loss.js.map +1 -0
- package/dist/tools/vault-markets-title.d.ts +3 -0
- package/dist/tools/vault-markets-title.d.ts.map +1 -0
- package/dist/tools/vault-markets-title.js +158 -0
- package/dist/tools/vault-markets-title.js.map +1 -0
- package/dist/tools/vault-markets-unit-story.d.ts +10 -0
- package/dist/tools/vault-markets-unit-story.d.ts.map +1 -0
- package/dist/tools/vault-markets-unit-story.js +23 -0
- package/dist/tools/vault-markets-unit-story.js.map +1 -0
- package/dist/tools/vault-markets-valuation.d.ts +3 -0
- package/dist/tools/vault-markets-valuation.d.ts.map +1 -0
- package/dist/tools/vault-markets-valuation.js +91 -0
- package/dist/tools/vault-markets-valuation.js.map +1 -0
- package/dist/tools/vault-markets-vault-suggest.d.ts +10 -0
- package/dist/tools/vault-markets-vault-suggest.d.ts.map +1 -0
- package/dist/tools/vault-markets-vault-suggest.js +38 -0
- package/dist/tools/vault-markets-vault-suggest.js.map +1 -0
- package/dist/tools/vault-markets-widget.d.ts +3 -0
- package/dist/tools/vault-markets-widget.d.ts.map +1 -0
- package/dist/tools/vault-markets-widget.js +64 -0
- package/dist/tools/vault-markets-widget.js.map +1 -0
- package/dist/tools/vault-markets-world.d.ts +12 -0
- package/dist/tools/vault-markets-world.d.ts.map +1 -0
- package/dist/tools/vault-markets-world.js +176 -0
- package/dist/tools/vault-markets-world.js.map +1 -0
- package/dist/tools/vault-markets.d.ts +3 -0
- package/dist/tools/vault-markets.d.ts.map +1 -0
- package/dist/tools/vault-markets.js +305 -0
- package/dist/tools/vault-markets.js.map +1 -0
- package/dist/tools/web3-book.d.ts +8 -0
- package/dist/tools/web3-book.d.ts.map +1 -0
- package/dist/tools/web3-book.js +494 -0
- package/dist/tools/web3-book.js.map +1 -0
- package/dist/tools/web3-crosslist.d.ts +8 -0
- package/dist/tools/web3-crosslist.d.ts.map +1 -0
- package/dist/tools/web3-crosslist.js +307 -0
- package/dist/tools/web3-crosslist.js.map +1 -0
- package/dist/tools/web3-launch-tools.d.ts +3 -0
- package/dist/tools/web3-launch-tools.d.ts.map +1 -0
- package/dist/tools/web3-launch-tools.js +151 -0
- package/dist/tools/web3-launch-tools.js.map +1 -0
- package/dist/tools/web3-launchpad.d.ts +3 -0
- package/dist/tools/web3-launchpad.d.ts.map +1 -0
- package/dist/tools/web3-launchpad.js +139 -0
- package/dist/tools/web3-launchpad.js.map +1 -0
- package/dist/tools/web3-world-live.d.ts +3 -0
- package/dist/tools/web3-world-live.d.ts.map +1 -0
- package/dist/tools/web3-world-live.js +95 -0
- package/dist/tools/web3-world-live.js.map +1 -0
- package/dist/tools/web3.d.ts +9 -0
- package/dist/tools/web3.d.ts.map +1 -0
- package/dist/tools/web3.js +291 -0
- package/dist/tools/web3.js.map +1 -0
- package/dist/tools/webhooks.d.ts +3 -0
- package/dist/tools/webhooks.d.ts.map +1 -0
- package/dist/tools/webhooks.js +83 -0
- package/dist/tools/webhooks.js.map +1 -0
- package/dist/tools/wholesale.d.ts +3 -0
- package/dist/tools/wholesale.d.ts.map +1 -0
- package/dist/tools/wholesale.js +63 -0
- package/dist/tools/wholesale.js.map +1 -0
- package/dist/tools/world-account.d.ts +3 -0
- package/dist/tools/world-account.d.ts.map +1 -0
- package/dist/tools/world-account.js +133 -0
- package/dist/tools/world-account.js.map +1 -0
- package/dist/tools/world-arcade.d.ts +3 -0
- package/dist/tools/world-arcade.d.ts.map +1 -0
- package/dist/tools/world-arcade.js +20 -0
- package/dist/tools/world-arcade.js.map +1 -0
- package/dist/tools/world-aurora.d.ts +7 -0
- package/dist/tools/world-aurora.d.ts.map +1 -0
- package/dist/tools/world-aurora.js +16 -0
- package/dist/tools/world-aurora.js.map +1 -0
- package/dist/tools/world-capabilities.d.ts +3 -0
- package/dist/tools/world-capabilities.d.ts.map +1 -0
- package/dist/tools/world-capabilities.js +105 -0
- package/dist/tools/world-capabilities.js.map +1 -0
- package/dist/tools/world-chests.d.ts +8 -0
- package/dist/tools/world-chests.d.ts.map +1 -0
- package/dist/tools/world-chests.js +17 -0
- package/dist/tools/world-chests.js.map +1 -0
- package/dist/tools/world-contests.d.ts +3 -0
- package/dist/tools/world-contests.d.ts.map +1 -0
- package/dist/tools/world-contests.js +55 -0
- package/dist/tools/world-contests.js.map +1 -0
- package/dist/tools/world-conventions.d.ts +3 -0
- package/dist/tools/world-conventions.d.ts.map +1 -0
- package/dist/tools/world-conventions.js +122 -0
- package/dist/tools/world-conventions.js.map +1 -0
- package/dist/tools/world-creator.d.ts +3 -0
- package/dist/tools/world-creator.d.ts.map +1 -0
- package/dist/tools/world-creator.js +162 -0
- package/dist/tools/world-creator.js.map +1 -0
- package/dist/tools/world-fireflies.d.ts +10 -0
- package/dist/tools/world-fireflies.d.ts.map +1 -0
- package/dist/tools/world-fireflies.js +19 -0
- package/dist/tools/world-fireflies.js.map +1 -0
- package/dist/tools/world-games.d.ts +3 -0
- package/dist/tools/world-games.d.ts.map +1 -0
- package/dist/tools/world-games.js +151 -0
- package/dist/tools/world-games.js.map +1 -0
- package/dist/tools/world-grails.d.ts +7 -0
- package/dist/tools/world-grails.d.ts.map +1 -0
- package/dist/tools/world-grails.js +28 -0
- package/dist/tools/world-grails.js.map +1 -0
- package/dist/tools/world-hall.d.ts +9 -0
- package/dist/tools/world-hall.d.ts.map +1 -0
- package/dist/tools/world-hall.js +51 -0
- package/dist/tools/world-hall.js.map +1 -0
- package/dist/tools/world-homes.d.ts +7 -0
- package/dist/tools/world-homes.d.ts.map +1 -0
- package/dist/tools/world-homes.js +83 -0
- package/dist/tools/world-homes.js.map +1 -0
- package/dist/tools/world-hunt.d.ts +3 -0
- package/dist/tools/world-hunt.d.ts.map +1 -0
- package/dist/tools/world-hunt.js +35 -0
- package/dist/tools/world-hunt.js.map +1 -0
- package/dist/tools/world-kites.d.ts +10 -0
- package/dist/tools/world-kites.d.ts.map +1 -0
- package/dist/tools/world-kites.js +19 -0
- package/dist/tools/world-kites.js.map +1 -0
- package/dist/tools/world-lanterns.d.ts +10 -0
- package/dist/tools/world-lanterns.d.ts.map +1 -0
- package/dist/tools/world-lanterns.js +19 -0
- package/dist/tools/world-lanterns.js.map +1 -0
- package/dist/tools/world-live.d.ts +10 -0
- package/dist/tools/world-live.d.ts.map +1 -0
- package/dist/tools/world-live.js +73 -0
- package/dist/tools/world-live.js.map +1 -0
- package/dist/tools/world-parties.d.ts +7 -0
- package/dist/tools/world-parties.d.ts.map +1 -0
- package/dist/tools/world-parties.js +113 -0
- package/dist/tools/world-parties.js.map +1 -0
- package/dist/tools/world-places.d.ts +8 -0
- package/dist/tools/world-places.d.ts.map +1 -0
- package/dist/tools/world-places.js +126 -0
- package/dist/tools/world-places.js.map +1 -0
- package/dist/tools/world-provenance.d.ts +4 -0
- package/dist/tools/world-provenance.d.ts.map +1 -0
- package/dist/tools/world-provenance.js +16 -0
- package/dist/tools/world-provenance.js.map +1 -0
- package/dist/tools/world-spaces.d.ts +7 -0
- package/dist/tools/world-spaces.d.ts.map +1 -0
- package/dist/tools/world-spaces.js +149 -0
- package/dist/tools/world-spaces.js.map +1 -0
- package/dist/tools/world-streets.d.ts +8 -0
- package/dist/tools/world-streets.d.ts.map +1 -0
- package/dist/tools/world-streets.js +162 -0
- package/dist/tools/world-streets.js.map +1 -0
- package/dist/tools/world-trials.d.ts +3 -0
- package/dist/tools/world-trials.d.ts.map +1 -0
- package/dist/tools/world-trials.js +35 -0
- package/dist/tools/world-trials.js.map +1 -0
- package/dist/tools/world-wishes.d.ts +9 -0
- package/dist/tools/world-wishes.d.ts.map +1 -0
- package/dist/tools/world-wishes.js +18 -0
- package/dist/tools/world-wishes.js.map +1 -0
- package/dist/tools/world.d.ts +3 -0
- package/dist/tools/world.d.ts.map +1 -0
- package/dist/tools/world.js +554 -0
- package/dist/tools/world.js.map +1 -0
- package/package.json +66 -3
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
import { apiDelete, apiGet, apiPatch, apiPost } from '../api.js';
|
|
2
|
+
/**
|
|
3
|
+
* Buyer lists and discovery — saved for later, combined-total requests,
|
|
4
|
+
* wishlist management, recently viewed, followed sellers, and browsing with
|
|
5
|
+
* the shop's own filters.
|
|
6
|
+
*
|
|
7
|
+
* Needs a BUYER token (`crossly_oat_…`, scoped `buyer:*`).
|
|
8
|
+
*
|
|
9
|
+
* Tools whose actions use DIFFERENT HTTP methods dispatch through functions
|
|
10
|
+
* declared above the array, so the v1-parity scanner (which pairs every verb
|
|
11
|
+
* and path inside one handler) cannot cross them.
|
|
12
|
+
*/
|
|
13
|
+
const enc = encodeURIComponent;
|
|
14
|
+
function savedForLater(args) {
|
|
15
|
+
const { action, id } = args;
|
|
16
|
+
if (action === 'list')
|
|
17
|
+
return apiGet('/v1/buyer/cart/saved');
|
|
18
|
+
if (!id)
|
|
19
|
+
return Promise.reject(new Error('id is required for this action'));
|
|
20
|
+
if (action === 'save')
|
|
21
|
+
return apiPost(`/v1/buyer/cart/items/${enc(id)}/save-for-later`, undefined);
|
|
22
|
+
if (action === 'move_to_cart')
|
|
23
|
+
return apiPost(`/v1/buyer/cart/saved/${enc(id)}/move-to-cart`, undefined);
|
|
24
|
+
return apiDelete(`/v1/buyer/cart/saved/${enc(id)}`);
|
|
25
|
+
}
|
|
26
|
+
function totalRequests(args) {
|
|
27
|
+
const { action, id, sellerUserId, message } = args;
|
|
28
|
+
if (action === 'list')
|
|
29
|
+
return apiGet('/v1/buyer/total-requests');
|
|
30
|
+
if (action === 'request')
|
|
31
|
+
return apiPost('/v1/buyer/total-requests', { sellerUserId, ...(message ? { message } : {}) });
|
|
32
|
+
if (!id)
|
|
33
|
+
return Promise.reject(new Error('id is required to cancel'));
|
|
34
|
+
return apiDelete(`/v1/buyer/total-requests/${enc(id)}`);
|
|
35
|
+
}
|
|
36
|
+
function manageWishlist(args) {
|
|
37
|
+
const { id, action, name, isPublic, slug, resetLink } = args;
|
|
38
|
+
if (action === 'rename')
|
|
39
|
+
return apiPatch(`/v1/buyer/wishlists/${enc(id)}`, { name });
|
|
40
|
+
if (action === 'set_public')
|
|
41
|
+
return apiPatch(`/v1/buyer/wishlists/${enc(id)}`, { isPublic });
|
|
42
|
+
if (action === 'share')
|
|
43
|
+
return apiPost(`/v1/buyer/wishlists/${enc(id)}/share`, resetLink ? { resetLink: true } : {});
|
|
44
|
+
if (action === 'remove_item') {
|
|
45
|
+
if (!slug)
|
|
46
|
+
return Promise.reject(new Error('slug is required to remove an item'));
|
|
47
|
+
return apiDelete(`/v1/buyer/wishlists/${enc(id)}/items/${enc(slug)}`);
|
|
48
|
+
}
|
|
49
|
+
return apiDelete(`/v1/buyer/wishlists/${enc(id)}`);
|
|
50
|
+
}
|
|
51
|
+
function followedSellers(args) {
|
|
52
|
+
const { action, sellerUserId } = args;
|
|
53
|
+
if (action === 'list')
|
|
54
|
+
return apiGet('/v1/buyer/following/sellers');
|
|
55
|
+
return apiPost('/v1/buyer/following/sellers/seen', sellerUserId ? { sellerUserId } : {});
|
|
56
|
+
}
|
|
57
|
+
export const buyerListTools = [
|
|
58
|
+
{
|
|
59
|
+
name: 'saved_for_later',
|
|
60
|
+
description: 'The buyer\'s saved-for-later list, parked out of the cart. list; save = move a CART LINE here (id = cart '
|
|
61
|
+
+ 'item id); move_to_cart = put a saved item back at TODAY\'s price (refused if it sold); remove. Every '
|
|
62
|
+
+ 'action returns the resulting saved list. Requires buyer:cart:read (list) or buyer:cart:write.',
|
|
63
|
+
inputSchema: {
|
|
64
|
+
type: 'object',
|
|
65
|
+
properties: {
|
|
66
|
+
action: {
|
|
67
|
+
type: 'string',
|
|
68
|
+
enum: ['list', 'save', 'move_to_cart', 'remove'],
|
|
69
|
+
description: 'list = read; save = cart line to saved; move_to_cart = saved item to cart; remove = drop it.',
|
|
70
|
+
},
|
|
71
|
+
id: {
|
|
72
|
+
type: 'string',
|
|
73
|
+
description: 'For save: the cart item id. For move_to_cart / remove: the saved item id.',
|
|
74
|
+
},
|
|
75
|
+
},
|
|
76
|
+
required: ['action'],
|
|
77
|
+
additionalProperties: false,
|
|
78
|
+
},
|
|
79
|
+
handler: (args) => savedForLater(args),
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
name: 'combined_total_requests',
|
|
83
|
+
description: 'Ask a seller for ONE combined shipping total on every item of theirs in the cart (eBay\'s "request total"). '
|
|
84
|
+
+ 'request needs two or more of that seller\'s items in the cart and spends nothing; the quote applies at '
|
|
85
|
+
+ 'checkout on Crossly while `matchesCart` is true. list; request; cancel. '
|
|
86
|
+
+ 'Requires buyer:cart:read (list) or buyer:cart:write.',
|
|
87
|
+
inputSchema: {
|
|
88
|
+
type: 'object',
|
|
89
|
+
properties: {
|
|
90
|
+
action: {
|
|
91
|
+
type: 'string',
|
|
92
|
+
enum: ['list', 'request', 'cancel'],
|
|
93
|
+
description: 'list = newest request per seller; request = ask a seller; cancel = withdraw a request.',
|
|
94
|
+
},
|
|
95
|
+
sellerUserId: { type: 'string', description: 'For request: the seller, from a cart line.' },
|
|
96
|
+
message: { type: 'string', description: 'For request: optional note to the seller, up to 500 characters.' },
|
|
97
|
+
id: { type: 'string', description: 'For cancel: the request id.' },
|
|
98
|
+
},
|
|
99
|
+
required: ['action'],
|
|
100
|
+
additionalProperties: false,
|
|
101
|
+
},
|
|
102
|
+
handler: (args) => totalRequests(args),
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
name: 'manage_wishlist',
|
|
106
|
+
description: 'Manage one wishlist. rename (name); set_public (isPublic — false stops the share link working); share = '
|
|
107
|
+
+ 'make it public and return its link (resetLink: true issues a new link and kills the old one); '
|
|
108
|
+
+ 'remove_item (slug); delete = the list and everything on it. Creating lists and adding items are separate '
|
|
109
|
+
+ '(the buyer MCP server\'s create_my_wishlist / add_to_my_wishlist). Requires buyer:wishlist:write.',
|
|
110
|
+
inputSchema: {
|
|
111
|
+
type: 'object',
|
|
112
|
+
properties: {
|
|
113
|
+
id: { type: 'string', description: 'Wishlist id.' },
|
|
114
|
+
action: {
|
|
115
|
+
type: 'string',
|
|
116
|
+
enum: ['rename', 'set_public', 'share', 'remove_item', 'delete'],
|
|
117
|
+
description: 'What to do to the list; see the tool description for each.',
|
|
118
|
+
},
|
|
119
|
+
name: { type: 'string', description: 'For rename: the new name, 1-120 characters.' },
|
|
120
|
+
isPublic: { type: 'boolean', description: 'For set_public: true lets the share link open the list.' },
|
|
121
|
+
slug: { type: 'string', description: 'For remove_item: the listing slug.' },
|
|
122
|
+
resetLink: { type: 'boolean', description: 'For share: replace the link; the old one stops working.' },
|
|
123
|
+
},
|
|
124
|
+
required: ['id', 'action'],
|
|
125
|
+
additionalProperties: false,
|
|
126
|
+
},
|
|
127
|
+
handler: (args) => manageWishlist(args),
|
|
128
|
+
},
|
|
129
|
+
{
|
|
130
|
+
name: 'clear_recently_viewed',
|
|
131
|
+
description: 'Remove one listing from the buyer\'s recently viewed (pass slug), or clear the whole list (omit it). '
|
|
132
|
+
+ 'Viewing the item again brings it back; sellers\' view counts are unaffected. Requires buyer:history:write.',
|
|
133
|
+
inputSchema: {
|
|
134
|
+
type: 'object',
|
|
135
|
+
properties: { slug: { type: 'string', description: 'One listing to remove. Omit to clear everything.' } },
|
|
136
|
+
additionalProperties: false,
|
|
137
|
+
},
|
|
138
|
+
handler: (args) => {
|
|
139
|
+
const { slug } = args;
|
|
140
|
+
return slug ? apiDelete(`/v1/buyer/recently-viewed/${enc(slug)}`) : apiDelete('/v1/buyer/recently-viewed');
|
|
141
|
+
},
|
|
142
|
+
},
|
|
143
|
+
{
|
|
144
|
+
name: 'followed_sellers',
|
|
145
|
+
description: 'Sellers the buyer follows. list: each with `newListings` since they last looked. mark_seen: clear that '
|
|
146
|
+
+ 'count for one seller (sellerUserId) or all of them. Requires buyer:follows:read (list) or buyer:follows:write.',
|
|
147
|
+
inputSchema: {
|
|
148
|
+
type: 'object',
|
|
149
|
+
properties: {
|
|
150
|
+
action: {
|
|
151
|
+
type: 'string',
|
|
152
|
+
enum: ['list', 'mark_seen'],
|
|
153
|
+
description: 'list = read with new counts; mark_seen = clear the new count.',
|
|
154
|
+
},
|
|
155
|
+
sellerUserId: { type: 'string', description: 'For mark_seen: one seller. Omit to mark all seen.' },
|
|
156
|
+
},
|
|
157
|
+
required: ['action'],
|
|
158
|
+
additionalProperties: false,
|
|
159
|
+
},
|
|
160
|
+
handler: (args) => followedSellers(args),
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
name: 'browse_catalog',
|
|
164
|
+
description: 'Browse the way the shop does, with eBay\'s filters: buying format, returns accepted, size, colour, SOLD '
|
|
165
|
+
+ 'items, Best Match. Page-numbered, capped at 50 pages of up to 60 — to walk the whole catalogue use '
|
|
166
|
+
+ 'search_catalog, which pages by cursor. With sold: true the rows are recent sales (90 days) carrying '
|
|
167
|
+
+ 'soldPriceCents and soldAt. Requires buyer:catalog:read.',
|
|
168
|
+
inputSchema: {
|
|
169
|
+
type: 'object',
|
|
170
|
+
properties: {
|
|
171
|
+
q: { type: 'string', description: 'Free text; every word must appear in the title or brand.' },
|
|
172
|
+
brand: { type: 'string', description: 'Exact brand, case-insensitive.' },
|
|
173
|
+
condition: { type: 'string', description: 'Exact condition, e.g. new, like_new, good.' },
|
|
174
|
+
category: { type: 'string', description: 'Category slug.' },
|
|
175
|
+
subcategory: { type: 'string', description: 'Subcategory slug.' },
|
|
176
|
+
size: { type: 'string', description: 'Exact size, case-insensitive (M does not match XL).' },
|
|
177
|
+
color: { type: 'string', description: 'Exact colour, case-insensitive.' },
|
|
178
|
+
format: {
|
|
179
|
+
type: 'string',
|
|
180
|
+
enum: ['auction', 'buy_it_now', 'offers'],
|
|
181
|
+
description: 'auction = live auctions; buy_it_now = fixed price; offers = accepts offers.',
|
|
182
|
+
},
|
|
183
|
+
returns: { type: 'boolean', description: 'true = only listings that accept returns.' },
|
|
184
|
+
freeShipping: { type: 'boolean', description: 'true = only free shipping.' },
|
|
185
|
+
localPickup: { type: 'boolean', description: 'true = only listings offering local pickup.' },
|
|
186
|
+
deals: { type: 'boolean', description: 'true = only items marked down from a higher price.' },
|
|
187
|
+
sold: { type: 'boolean', description: 'true = recent sales instead of live listings.' },
|
|
188
|
+
shipsTo: {
|
|
189
|
+
type: 'string',
|
|
190
|
+
description: 'ISO 3166-1 alpha-2 destination country (e.g. GB) - only listings whose seller ships there. '
|
|
191
|
+
+ 'Omit (or "any") for no destination filter.',
|
|
192
|
+
},
|
|
193
|
+
minPriceCents: { type: 'integer', description: 'Lowest price in CENTS (integer) - 2500 is $25.00.' },
|
|
194
|
+
maxPriceCents: { type: 'integer', description: 'Highest price in CENTS (integer) - 9999 is $99.99.' },
|
|
195
|
+
sort: {
|
|
196
|
+
type: 'string',
|
|
197
|
+
enum: ['best_match', 'newest', 'price_low', 'price_high', 'popular', 'ending_soon'],
|
|
198
|
+
description: 'Default best_match with q, newest without. ending_soon is for auctions.',
|
|
199
|
+
},
|
|
200
|
+
page: { type: 'integer', description: '1-50.' },
|
|
201
|
+
limit: { type: 'integer', description: '1-60, default 24.' },
|
|
202
|
+
},
|
|
203
|
+
additionalProperties: false,
|
|
204
|
+
},
|
|
205
|
+
handler: (args) => {
|
|
206
|
+
const query = {};
|
|
207
|
+
for (const [k, v] of Object.entries(args)) {
|
|
208
|
+
if (v !== undefined && v !== null)
|
|
209
|
+
query[k] = typeof v === 'boolean' ? String(v) : v;
|
|
210
|
+
}
|
|
211
|
+
return apiGet('/v1/buyer/catalog/browse', query);
|
|
212
|
+
},
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
name: 'search_sellers',
|
|
216
|
+
description: 'Find a seller by shop handle or shop name (at least two characters). Only shops that have listed on '
|
|
217
|
+
+ 'Crossly. Exact matches first, then prefix, then by live listings. Requires buyer:catalog:read.',
|
|
218
|
+
inputSchema: {
|
|
219
|
+
type: 'object',
|
|
220
|
+
properties: {
|
|
221
|
+
q: { type: 'string', description: 'Two or more characters of a handle or shop name.' },
|
|
222
|
+
limit: { type: 'integer', description: '1-30, default 12.' },
|
|
223
|
+
},
|
|
224
|
+
required: ['q'],
|
|
225
|
+
additionalProperties: false,
|
|
226
|
+
},
|
|
227
|
+
handler: (args) => apiGet('/v1/buyer/catalog/sellers', args),
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
name: 'get_listing_sold_history',
|
|
231
|
+
description: 'What THIS listing has sold for, newest first (last 50), with meta.medianCents. Per-unit item price in '
|
|
232
|
+
+ 'cents, excluding shipping and tax. This listing only — never "similar items". Requires buyer:catalog:read.',
|
|
233
|
+
inputSchema: {
|
|
234
|
+
type: 'object',
|
|
235
|
+
properties: { slug: { type: 'string', description: 'The listing slug.' } },
|
|
236
|
+
required: ['slug'],
|
|
237
|
+
additionalProperties: false,
|
|
238
|
+
},
|
|
239
|
+
handler: (args) => {
|
|
240
|
+
const { slug } = args;
|
|
241
|
+
return apiGet(`/v1/buyer/catalog/listings/${enc(slug)}/sold-history`);
|
|
242
|
+
},
|
|
243
|
+
},
|
|
244
|
+
];
|
|
245
|
+
//# sourceMappingURL=buyer-lists.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buyer-lists.js","sourceRoot":"","sources":["../../src/tools/buyer-lists.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGjE;;;;;;;;;;GAUG;AAEH,MAAM,GAAG,GAAG,kBAAkB,CAAC;AAE/B,SAAS,aAAa,CAAC,IAA6B;IAClD,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,IAA4E,CAAC;IACpG,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC7D,IAAI,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAC5E,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,OAAO,CAAC,wBAAwB,GAAG,CAAC,EAAE,CAAC,iBAAiB,EAAE,SAAS,CAAC,CAAC;IACnG,IAAI,MAAM,KAAK,cAAc;QAAE,OAAO,OAAO,CAAC,wBAAwB,GAAG,CAAC,EAAE,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;IACzG,OAAO,SAAS,CAAC,wBAAwB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,aAAa,CAAC,IAA6B;IAClD,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,IAK7C,CAAC;IACF,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,0BAA0B,CAAC,CAAC;IACjE,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,OAAO,CAAC,0BAA0B,EAAE,EAAE,YAAY,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACxH,IAAI,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACtE,OAAO,SAAS,CAAC,4BAA4B,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC1D,CAAC;AAED,SAAS,cAAc,CAAC,IAA6B;IACnD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAOvD,CAAC;IACF,IAAI,MAAM,KAAK,QAAQ;QAAE,OAAO,QAAQ,CAAC,uBAAuB,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACrF,IAAI,MAAM,KAAK,YAAY;QAAE,OAAO,QAAQ,CAAC,uBAAuB,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC7F,IAAI,MAAM,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC,uBAAuB,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrH,IAAI,MAAM,KAAK,aAAa,EAAE,CAAC;QAC7B,IAAI,CAAC,IAAI;YAAE,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;QAClF,OAAO,SAAS,CAAC,uBAAuB,GAAG,CAAC,EAAE,CAAC,UAAU,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,OAAO,SAAS,CAAC,uBAAuB,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,eAAe,CAAC,IAA6B;IACpD,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,IAA+D,CAAC;IACjG,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC,6BAA6B,CAAC,CAAC;IACpE,OAAO,OAAO,CAAC,kCAAkC,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAC3F,CAAC;AAED,MAAM,CAAC,MAAM,cAAc,GAAc;IACvC;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,2GAA2G;cACzG,uGAAuG;cACvG,+FAA+F;QACnG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,QAAQ,CAAC;oBAChD,WAAW,EAAE,8FAA8F;iBAC5G;gBACD,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,2EAA2E;iBACzF;aACF;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;KACvC;IAED;QACE,IAAI,EAAE,yBAAyB;QAC/B,WAAW,EACT,8GAA8G;cAC5G,yGAAyG;cACzG,0EAA0E;cAC1E,sDAAsD;QAC1D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC;oBACnC,WAAW,EAAE,wFAAwF;iBACtG;gBACD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;gBAC3F,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iEAAiE,EAAE;gBAC3G,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;aACnE;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;KACvC;IAED;QACE,IAAI,EAAE,iBAAiB;QACvB,WAAW,EACT,0GAA0G;cACxG,gGAAgG;cAChG,2GAA2G;cAC3G,mGAAmG;QACvG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAE;gBACnD,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,CAAC;oBAChE,WAAW,EAAE,4DAA4D;iBAC1E;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE;gBACpF,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yDAAyD,EAAE;gBACrG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;gBAC3E,SAAS,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,yDAAyD,EAAE;aACvG;YACD,QAAQ,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC;YAC1B,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC;KACxC;IAED;QACE,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EACT,uGAAuG;cACrG,4GAA4G;QAChH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE,EAAE;YACzG,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAyB,CAAC;YAC3C,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,6BAA6B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,2BAA2B,CAAC,CAAC;QAC7G,CAAC;KACF;IAED;QACE,IAAI,EAAE,kBAAkB;QACxB,WAAW,EACT,yGAAyG;cACvG,gHAAgH;QACpH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;oBAC3B,WAAW,EAAE,+DAA+D;iBAC7E;gBACD,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mDAAmD,EAAE;aACnG;YACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;YACpB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC;KACzC;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,0GAA0G;cACxG,qGAAqG;cACrG,sGAAsG;cACtG,yDAAyD;QAC7D,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0DAA0D,EAAE;gBAC9F,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;gBACxE,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;gBACxF,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gBAAgB,EAAE;gBAC3D,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;gBACjE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE;gBAC5F,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,iCAAiC,EAAE;gBACzE,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC;oBACzC,WAAW,EAAE,6EAA6E;iBAC3F;gBACD,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,2CAA2C,EAAE;gBACtF,YAAY,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,4BAA4B,EAAE;gBAC5E,WAAW,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,6CAA6C,EAAE;gBAC5F,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,oDAAoD,EAAE;gBAC7F,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,+CAA+C,EAAE;gBACvF,OAAO,EAAE;oBACP,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,6FAA6F;0BAC3F,4CAA4C;iBACjD;gBACD,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mDAAmD,EAAE;gBACpG,aAAa,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,oDAAoD,EAAE;gBACrG,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,aAAa,CAAC;oBACnF,WAAW,EAAE,yEAAyE;iBACvF;gBACD,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE;gBAC/C,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mBAAmB,EAAE;aAC7D;YACD,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,KAAK,GAA4B,EAAE,CAAC;YAC1C,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1C,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI;oBAAE,KAAK,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACvF,CAAC;YACD,OAAO,MAAM,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC;KACF;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,sGAAsG;cACpG,gGAAgG;QACpG,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,CAAC,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kDAAkD,EAAE;gBACtF,KAAK,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,mBAAmB,EAAE;aAC7D;YACD,QAAQ,EAAE,CAAC,GAAG,CAAC;YACf,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,2BAA2B,EAAE,IAA+B,CAAC;KACxF;IAED;QACE,IAAI,EAAE,0BAA0B;QAChC,WAAW,EACT,wGAAwG;cACtG,4GAA4G;QAChH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE,EAAE;YAC1E,QAAQ,EAAE,CAAC,MAAM,CAAC;YAClB,oBAAoB,EAAE,KAAK;SAC5B;QACD,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;YAChB,MAAM,EAAE,IAAI,EAAE,GAAG,IAAwB,CAAC;YAC1C,OAAO,MAAM,CAAC,8BAA8B,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACxE,CAAC;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { ToolDef } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Live Shop — sessions, identification, and lock-on.
|
|
4
|
+
*
|
|
5
|
+
* Split from `buyer.ts` rather than appended to it because these tools share a
|
|
6
|
+
* concern the catalogue ones do not: they are read by an agent that will be
|
|
7
|
+
* driving a camera in a loop, and the cost of getting the loop wrong is real
|
|
8
|
+
* money and a very unhappy buyer.
|
|
9
|
+
*
|
|
10
|
+
* So the descriptions carry the operational rules, not the parameter list:
|
|
11
|
+
*
|
|
12
|
+
* - do NOT post every frame; tracking and decoding are on-device and free
|
|
13
|
+
* - a vision label is WORDS, never an identity
|
|
14
|
+
* - `shippingUnknown` means a total is not delivered, and saying otherwise
|
|
15
|
+
* is a false statement somebody acts on
|
|
16
|
+
* - only a human confirmation promotes a text match to something priceable
|
|
17
|
+
*
|
|
18
|
+
* None of that is discoverable by trying. An agent finds it out by doing the
|
|
19
|
+
* wrong thing at scale.
|
|
20
|
+
*/
|
|
21
|
+
export declare const buyerLiveTools: ToolDef[];
|
|
22
|
+
//# sourceMappingURL=buyer-live.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buyer-live.d.ts","sourceRoot":"","sources":["../../src/tools/buyer-live.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAErC;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,cAAc,EAAE,OAAO,EAsSnC,CAAC"}
|
|
@@ -0,0 +1,291 @@
|
|
|
1
|
+
import { apiGet, apiPost } from '../api.js';
|
|
2
|
+
/**
|
|
3
|
+
* Live Shop — sessions, identification, and lock-on.
|
|
4
|
+
*
|
|
5
|
+
* Split from `buyer.ts` rather than appended to it because these tools share a
|
|
6
|
+
* concern the catalogue ones do not: they are read by an agent that will be
|
|
7
|
+
* driving a camera in a loop, and the cost of getting the loop wrong is real
|
|
8
|
+
* money and a very unhappy buyer.
|
|
9
|
+
*
|
|
10
|
+
* So the descriptions carry the operational rules, not the parameter list:
|
|
11
|
+
*
|
|
12
|
+
* - do NOT post every frame; tracking and decoding are on-device and free
|
|
13
|
+
* - a vision label is WORDS, never an identity
|
|
14
|
+
* - `shippingUnknown` means a total is not delivered, and saying otherwise
|
|
15
|
+
* is a false statement somebody acts on
|
|
16
|
+
* - only a human confirmation promotes a text match to something priceable
|
|
17
|
+
*
|
|
18
|
+
* None of that is discoverable by trying. An agent finds it out by doing the
|
|
19
|
+
* wrong thing at scale.
|
|
20
|
+
*/
|
|
21
|
+
export const buyerLiveTools = [
|
|
22
|
+
{
|
|
23
|
+
name: 'find_cheapest_anywhere',
|
|
24
|
+
description: 'Given an item identifier, find the cheapest place to buy it — Crossly first, then other '
|
|
25
|
+
+ 'retailers. Answers with a VERDICT (crossly_best | offsite_cheaper | offsite_only | '
|
|
26
|
+
+ 'no_match), not a list. Offsite offers are ranked CHEAPEST-FIRST; commission only ever '
|
|
27
|
+
+ 'breaks a sub-$1 tie, and Crossly gets a $1 preference and no more. '
|
|
28
|
+
+ 'Answers carry BOTH kinds of money and they STACK: `offsite.buyerCashbackCents` is what the buyer gets back through us, and `coupon` is a code to try at the retailer. Cashback is certain; a coupon is a code a checkout may reject, so present it as the weaker of the two. `hud.coupon.measured: false` means the code has never been observed to work — say the code is available and DO NOT quote a saving for it, because no measured figure exists and an invented one is discovered at the checkout. '
|
|
29
|
+
+ 'CHECK shippingUnknown before calling any total "delivered" — when true the figure '
|
|
30
|
+
+ 'excludes postage, and presenting it as a delivered price is a false statement the buyer '
|
|
31
|
+
+ 'acts on. Requires buyer:catalog:read.',
|
|
32
|
+
inputSchema: {
|
|
33
|
+
type: 'object',
|
|
34
|
+
properties: {
|
|
35
|
+
ns: { type: 'string', description: 'Identifier namespace, e.g. gtin or style_code.' },
|
|
36
|
+
value: { type: 'string', description: 'The identifier itself, e.g. 012345678905 for a gtin or CW2288-111 for a style_code.' },
|
|
37
|
+
pagePriceCents: {
|
|
38
|
+
type: 'number',
|
|
39
|
+
description: 'What the buyer is looking at, in CENTS (integer, minor units) - 2999 is $29.99, never 29.99. Sets the bar that \'cheaper\' is measured against.',
|
|
40
|
+
},
|
|
41
|
+
currency: { type: 'string', description: 'ISO 4217 code for pagePriceCents, e.g. usd. Defaults to usd.' },
|
|
42
|
+
},
|
|
43
|
+
required: ['ns', 'value'],
|
|
44
|
+
additionalProperties: false,
|
|
45
|
+
},
|
|
46
|
+
handler: (args) => apiGet('/v1/buyer/anywhere', args),
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
name: 'identify_item',
|
|
50
|
+
description: 'Identify a physical item from a barcode or a photo, returning a HUD-ready answer. '
|
|
51
|
+
+ 'A BARCODE establishes identity: exact, about 50ms, free. A PHOTO establishes only '
|
|
52
|
+
+ 'resemblance — self-hosted CLIP first, then a vision model, which is capped per buyer '
|
|
53
|
+
+ 'per day. '
|
|
54
|
+
+ 'Answers carry BOTH kinds of money and they STACK: `offsite.buyerCashbackCents` is what the buyer gets back through us, and `coupon` is a code to try at the retailer. Cashback is certain; a coupon is a code a checkout may reject, so present it as the weaker of the two. `hud.coupon.measured: false` means the code has never been observed to work — say the code is available and DO NOT quote a saving for it, because no measured figure exists and an invented one is discovered at the checkout. '
|
|
55
|
+
+ 'A vision label is WORDS, never an identity. It names the thing so somebody can search; '
|
|
56
|
+
+ 'it must never be used to claim a price for a specific product. Read `tier` before '
|
|
57
|
+
+ 'quoting any figure. Requires buyer:catalog:read.',
|
|
58
|
+
inputSchema: {
|
|
59
|
+
type: 'object',
|
|
60
|
+
properties: {
|
|
61
|
+
identifier: {
|
|
62
|
+
type: 'object',
|
|
63
|
+
description: 'A code read off the item. Settles identity exactly and for free, so pass it '
|
|
64
|
+
+ 'instead of a photo whenever one is in frame.',
|
|
65
|
+
properties: {
|
|
66
|
+
ns: { type: 'string', description: 'Identifier namespace, e.g. gtin or style_code.' },
|
|
67
|
+
value: { type: 'string', description: 'The identifier itself, e.g. 012345678905 for a gtin or CW2288-111 for a style_code.' },
|
|
68
|
+
},
|
|
69
|
+
required: ['ns', 'value'],
|
|
70
|
+
additionalProperties: false,
|
|
71
|
+
},
|
|
72
|
+
imageBase64: { type: 'string', description: 'A JPEG frame, base64-encoded.' },
|
|
73
|
+
pagePriceCents: {
|
|
74
|
+
type: 'number',
|
|
75
|
+
description: 'What the buyer is looking at, in CENTS (integer, minor units) - 2999 is $29.99, never 29.99. Sets the bar that \'cheaper\' is measured against.',
|
|
76
|
+
},
|
|
77
|
+
currency: { type: 'string', description: 'ISO 4217 code for pagePriceCents, e.g. usd. Defaults to usd.' },
|
|
78
|
+
sessionId: { type: 'string', description: 'Live Shop trip to record this against.' },
|
|
79
|
+
allowVision: { type: 'boolean', description: 'False skips the one rung that costs money.' },
|
|
80
|
+
},
|
|
81
|
+
additionalProperties: false,
|
|
82
|
+
},
|
|
83
|
+
handler: (args) => apiPost('/v1/buyer/identify', args),
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
name: 'scan_item',
|
|
87
|
+
description: 'One-shot scan of a barcode or photo. Prefer identify_item, which runs the full cost '
|
|
88
|
+
+ 'ladder and returns the same HUD payload. '
|
|
89
|
+
+ 'Answers carry BOTH kinds of money and they STACK: `offsite.buyerCashbackCents` is what the buyer gets back through us, and `coupon` is a code to try at the retailer. Cashback is certain; a coupon is a code a checkout may reject, so present it as the weaker of the two. `hud.coupon.measured: false` means the code has never been observed to work — say the code is available and DO NOT quote a saving for it, because no measured figure exists and an invented one is discovered at the checkout. '
|
|
90
|
+
+ 'Requires buyer:catalog:read.',
|
|
91
|
+
inputSchema: {
|
|
92
|
+
type: 'object',
|
|
93
|
+
properties: {
|
|
94
|
+
identifier: {
|
|
95
|
+
type: 'object',
|
|
96
|
+
description: 'A code read off the item. Exact, free, and preferred over a photo.',
|
|
97
|
+
properties: {
|
|
98
|
+
ns: { type: 'string', description: 'Identifier namespace, e.g. gtin or style_code.' },
|
|
99
|
+
value: { type: 'string', description: 'The identifier itself, e.g. 012345678905 for a gtin or CW2288-111 for a style_code.' },
|
|
100
|
+
},
|
|
101
|
+
required: ['ns', 'value'],
|
|
102
|
+
additionalProperties: false,
|
|
103
|
+
},
|
|
104
|
+
imageBase64: { type: 'string', description: 'A JPEG frame, base64-encoded.' },
|
|
105
|
+
pagePriceCents: {
|
|
106
|
+
type: 'number',
|
|
107
|
+
description: 'What the buyer is looking at, in CENTS (integer, minor units) - 2999 is $29.99, never 29.99. Sets the bar that \'cheaper\' is measured against.',
|
|
108
|
+
},
|
|
109
|
+
currency: { type: 'string', description: 'ISO 4217 code for pagePriceCents, e.g. usd. Defaults to usd.' },
|
|
110
|
+
sessionId: { type: 'string', description: 'Live Shop trip to record this against.' },
|
|
111
|
+
},
|
|
112
|
+
additionalProperties: false,
|
|
113
|
+
},
|
|
114
|
+
handler: (args) => apiPost('/v1/buyer/scan', args),
|
|
115
|
+
},
|
|
116
|
+
{
|
|
117
|
+
name: 'start_scan_session',
|
|
118
|
+
description: 'Open a Live Shop trip, then pass the returned id as sessionId on each scan so a whole '
|
|
119
|
+
+ 'shopping trip groups together. Opening a session CLOSES any other live one, because a '
|
|
120
|
+
+ 'person is in one shop at a time and two live sessions split a trip across both. '
|
|
121
|
+
+ 'Requires buyer:catalog:read.',
|
|
122
|
+
inputSchema: {
|
|
123
|
+
type: 'object',
|
|
124
|
+
properties: {
|
|
125
|
+
device: {
|
|
126
|
+
type: 'string',
|
|
127
|
+
enum: ['glasses', 'phone'],
|
|
128
|
+
default: 'phone',
|
|
129
|
+
description: 'What the buyer is scanning with. `glasses` means the verdict is also drawn into '
|
|
130
|
+
+ 'the lens; `phone` means the card is shown on screen. Recorded per trip so a '
|
|
131
|
+
+ 'history can tell the two apart.',
|
|
132
|
+
},
|
|
133
|
+
label: { type: 'string', description: 'Optional name, e.g. "Saturday, outlet mall".' },
|
|
134
|
+
},
|
|
135
|
+
additionalProperties: false,
|
|
136
|
+
},
|
|
137
|
+
handler: (args) => apiPost('/v1/buyer/scan/sessions', args),
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
name: 'end_scan_session',
|
|
141
|
+
description: 'Close a Live Shop trip. Requires buyer:catalog:read.',
|
|
142
|
+
inputSchema: {
|
|
143
|
+
type: 'object',
|
|
144
|
+
properties: {
|
|
145
|
+
id: { type: 'string', description: 'Scan session id returned by start_scan_session.' },
|
|
146
|
+
},
|
|
147
|
+
required: ['id'],
|
|
148
|
+
additionalProperties: false,
|
|
149
|
+
},
|
|
150
|
+
handler: (args) => {
|
|
151
|
+
const { id } = args;
|
|
152
|
+
return apiPost(`/v1/buyer/scan/sessions/${encodeURIComponent(id)}/end`, {});
|
|
153
|
+
},
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
name: 'list_scan_sessions',
|
|
157
|
+
description: 'Scanning trips for this buyer, newest first. Requires buyer:catalog:read.',
|
|
158
|
+
inputSchema: { type: 'object', properties: {}, additionalProperties: false },
|
|
159
|
+
handler: () => apiGet('/v1/buyer/scan/sessions', {}),
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
name: 'get_scan_session',
|
|
163
|
+
description: 'One trip and everything it found, including the total saved. Verdicts come back EXACTLY '
|
|
164
|
+
+ 'as they were given at the time and are never re-priced — a history that silently '
|
|
165
|
+
+ 'refreshes old prices shows a saving that was never actually on offer. '
|
|
166
|
+
+ 'Requires buyer:catalog:read.',
|
|
167
|
+
inputSchema: {
|
|
168
|
+
type: 'object',
|
|
169
|
+
properties: {
|
|
170
|
+
id: { type: 'string', description: 'Scan session id returned by start_scan_session.' },
|
|
171
|
+
},
|
|
172
|
+
required: ['id'],
|
|
173
|
+
additionalProperties: false,
|
|
174
|
+
},
|
|
175
|
+
handler: (args) => {
|
|
176
|
+
const { id, ...rest } = args;
|
|
177
|
+
return apiGet(`/v1/buyer/scan/sessions/${encodeURIComponent(id)}`, rest);
|
|
178
|
+
},
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
name: 'start_lockon',
|
|
182
|
+
description: 'Lock on to an object the buyer is holding, then post observations as they turn it over. '
|
|
183
|
+
+ 'The answer improves as evidence arrives: a style code inside a shoe settles what the '
|
|
184
|
+
+ 'front of it could not. Requires buyer:catalog:read.',
|
|
185
|
+
inputSchema: {
|
|
186
|
+
type: 'object',
|
|
187
|
+
properties: {
|
|
188
|
+
sessionId: {
|
|
189
|
+
type: 'string',
|
|
190
|
+
description: 'Scan session this lock-on belongs to, from start_scan_session.',
|
|
191
|
+
},
|
|
192
|
+
},
|
|
193
|
+
required: ['sessionId'],
|
|
194
|
+
additionalProperties: false,
|
|
195
|
+
},
|
|
196
|
+
handler: (args) => apiPost('/v1/buyer/lockons', args),
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
name: 'observe_lockon',
|
|
200
|
+
description: 'Add what one frame revealed and get the current best answer. '
|
|
201
|
+
+ 'Send only what you LEARNED — a decoded barcode, newly-read OCR text, or an image when '
|
|
202
|
+
+ 'neither settled it. DO NOT post every frame: tracking and decoding run on-device for '
|
|
203
|
+
+ 'free, and this endpoint takes evidence, not video. '
|
|
204
|
+
+ 'Evidence is RANKED (confirmed > barcode > ocr > visual) so a late weak reading can never '
|
|
205
|
+
+ 'overwrite a strong early one. When several products match the text, `candidates` comes '
|
|
206
|
+
+ 'back — SHOW them and let the buyer choose, because a vision label is words and only a '
|
|
207
|
+
+ 'human confirmation turns it into an identity worth pricing against. '
|
|
208
|
+
+ 'Requires buyer:catalog:read.',
|
|
209
|
+
inputSchema: {
|
|
210
|
+
type: 'object',
|
|
211
|
+
properties: {
|
|
212
|
+
id: { type: 'string', description: 'Lock-on id.' },
|
|
213
|
+
barcode: {
|
|
214
|
+
type: 'object',
|
|
215
|
+
description: 'A code the device decoded this frame. The strongest evidence there is and it '
|
|
216
|
+
+ 'costs nothing, so send it the moment it appears.',
|
|
217
|
+
properties: {
|
|
218
|
+
ns: { type: 'string', description: 'Identifier namespace, e.g. gtin or style_code.' },
|
|
219
|
+
value: { type: 'string', description: 'The identifier itself, e.g. 012345678905 for a gtin or CW2288-111 for a style_code.' },
|
|
220
|
+
},
|
|
221
|
+
required: ['ns', 'value'],
|
|
222
|
+
additionalProperties: false,
|
|
223
|
+
},
|
|
224
|
+
ocrText: { type: 'string', description: 'Raw text read off the object this frame.' },
|
|
225
|
+
attributes: {
|
|
226
|
+
type: 'object',
|
|
227
|
+
description: 'What the device is CONFIDENT it read. These accumulate across frames and feed the '
|
|
228
|
+
+ 'candidate search, so a guess here pollutes the rest of the lock-on.',
|
|
229
|
+
properties: {
|
|
230
|
+
brand: { type: 'string', description: 'Brand as printed, e.g. Patagonia.' },
|
|
231
|
+
model: { type: 'string', description: 'Model or product name, e.g. Nano Puff Hoody.' },
|
|
232
|
+
size: { type: 'string', description: 'Size as printed, e.g. M, 10.5, or 42 EU.' },
|
|
233
|
+
colour: { type: 'string', description: 'Colourway as printed, e.g. Black or Infrared.' },
|
|
234
|
+
tokens: {
|
|
235
|
+
type: 'array',
|
|
236
|
+
items: { type: 'string' },
|
|
237
|
+
description: 'Loose words seen on the object that did not fit the fields above. Fed to '
|
|
238
|
+
+ 'full-text search, so noise costs recall.',
|
|
239
|
+
},
|
|
240
|
+
},
|
|
241
|
+
additionalProperties: false,
|
|
242
|
+
},
|
|
243
|
+
imageBase64: {
|
|
244
|
+
type: 'string',
|
|
245
|
+
description: 'A JPEG frame, base64-encoded. Send ONLY when the cheap evidence did not settle it '
|
|
246
|
+
+ '- this is the rung that can cost money.',
|
|
247
|
+
},
|
|
248
|
+
pagePriceCents: {
|
|
249
|
+
type: 'number',
|
|
250
|
+
description: 'What the buyer is looking at, in CENTS (integer, minor units) - 2999 is $29.99, never 29.99. Sets the bar that \'cheaper\' is measured against.',
|
|
251
|
+
},
|
|
252
|
+
currency: { type: 'string', description: 'ISO 4217 code for pagePriceCents, e.g. usd. Defaults to usd.' },
|
|
253
|
+
},
|
|
254
|
+
required: ['id'],
|
|
255
|
+
additionalProperties: false,
|
|
256
|
+
},
|
|
257
|
+
handler: (args) => {
|
|
258
|
+
const { id, ...rest } = args;
|
|
259
|
+
return apiPost(`/v1/buyer/lockons/${encodeURIComponent(id)}/observe`, rest);
|
|
260
|
+
},
|
|
261
|
+
},
|
|
262
|
+
{
|
|
263
|
+
name: 'confirm_lockon',
|
|
264
|
+
description: 'The buyer picked one of the candidates. Promotes a text match to a CONFIRMED identity — '
|
|
265
|
+
+ 'the strongest evidence in the system, because a person holding the object said yes. '
|
|
266
|
+
+ 'Validated against the candidates actually offered, so it cannot be claimed about an '
|
|
267
|
+
+ 'arbitrary product. Requires buyer:catalog:read.',
|
|
268
|
+
inputSchema: {
|
|
269
|
+
type: 'object',
|
|
270
|
+
properties: {
|
|
271
|
+
id: { type: 'string', description: 'Lock-on id from start_lockon.' },
|
|
272
|
+
ns: {
|
|
273
|
+
type: 'string',
|
|
274
|
+
description: 'Identifier namespace, e.g. gtin or style_code. Must match a candidate this lock-on actually offered.',
|
|
275
|
+
},
|
|
276
|
+
value: {
|
|
277
|
+
type: 'string',
|
|
278
|
+
description: 'Identifier value of the candidate the buyer picked. Validated against the '
|
|
279
|
+
+ 'candidates actually offered, so it cannot assert an arbitrary product.',
|
|
280
|
+
},
|
|
281
|
+
},
|
|
282
|
+
required: ['id', 'ns', 'value'],
|
|
283
|
+
additionalProperties: false,
|
|
284
|
+
},
|
|
285
|
+
handler: (args) => {
|
|
286
|
+
const { id, ...rest } = args;
|
|
287
|
+
return apiPost(`/v1/buyer/lockons/${encodeURIComponent(id)}/confirm`, rest);
|
|
288
|
+
},
|
|
289
|
+
},
|
|
290
|
+
];
|
|
291
|
+
//# sourceMappingURL=buyer-live.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buyer-live.js","sourceRoot":"","sources":["../../src/tools/buyer-live.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buyer-orders.d.ts","sourceRoot":"","sources":["../../src/tools/buyer-orders.ts"],"names":[],"mappings":"AACA,OAAO,EAAoB,OAAO,EAAE,MAAM,YAAY,CAAC;AAcvD,eAAO,MAAM,eAAe,EAAE,OAAO,EA0RpC,CAAC"}
|