@xona-labs/xpay 0.2.22 → 0.2.23
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/CHANGELOG.md +23 -1
- package/README.md +9 -1
- package/dist/shop/index.d.ts +84 -8
- package/dist/shop/index.d.ts.map +1 -1
- package/dist/shop/index.js +148 -15
- package/dist/shop/index.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +128 -1
- package/dist/tools/index.js.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -6,7 +6,29 @@ versioning follows [Semantic Versioning](https://semver.org/).
|
|
|
6
6
|
|
|
7
7
|
## [Unreleased]
|
|
8
8
|
|
|
9
|
-
## [0.2.
|
|
9
|
+
## [0.2.23] – 2026-08-02
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
- **Shop lens: image-based product discovery** (xona shop partner
|
|
13
|
+
integration). `xpay_shop_lens` MCP tool answers "what is this, and where
|
|
14
|
+
do I buy it" from a photo via xona's x402-paywalled `/shop/lens`:
|
|
15
|
+
`mode=identify` (default, ~$0.02 USDC) returns Google Lens visual matches
|
|
16
|
+
plus a derived product name, `mode=shop` (~$0.04 for all three
|
|
17
|
+
marketplaces) additionally runs that name through the Google
|
|
18
|
+
Shopping/Amazon/eBay comparison, nested as `marketplace_comparison`.
|
|
19
|
+
`xpay_shop_lens_quote` is the free preflight: validates the image URL is
|
|
20
|
+
publicly reachable and reports the exact price, no wallet.
|
|
21
|
+
- The image can be given as exactly one of `image_url`, `image_path`
|
|
22
|
+
(local file), or `image_base64` (raw or data URI). The lens engine only
|
|
23
|
+
accepts public http(s) URLs, so local/base64 inputs are first uploaded,
|
|
24
|
+
free, to xona's public image host (JPEG/PNG/GIF/WebP, type sniffed from
|
|
25
|
+
magic bytes, 25MB cap) and the hosted URL is echoed back as
|
|
26
|
+
`hosted_image_url` for reuse. This makes images from chat clients that
|
|
27
|
+
upload attachments (Hermes and friends) work without a manual hosting
|
|
28
|
+
step.
|
|
29
|
+
- `compactShopResult` now also compacts the nested
|
|
30
|
+
`marketplace_comparison` result list, so lens `mode=shop` responses stay
|
|
31
|
+
context-friendly over MCP.
|
|
10
32
|
|
|
11
33
|
### Added
|
|
12
34
|
- **RWA discovery on Solana.** `xpay token rwa [query]` CLI, `xpay_rwa_find`
|
package/README.md
CHANGED
|
@@ -179,7 +179,7 @@ That's the whole setup. The generated wallet's **Solana address is printed to
|
|
|
179
179
|
stderr on first run** — fund it with USDC and the agent can pay. It persists
|
|
180
180
|
under `~/.xpay` and is reused on every later boot, so the address is stable.
|
|
181
181
|
|
|
182
|
-
The host sees the core tools: `xpay_discover`, `xpay_use`, `xpay_do`, `xpay_transfer`, `xpay_balance`, `xpay_report`, `xpay_guardrail`, `xpay_token_find`, `xpay_swap`, `xpay_trending_tokens`, `xpay_trade_quote`, `xpay_trade`, `xpay_x_user`, `xpay_x_posts`, `xpay_zauth_reposcan`, `xpay_zauth_scan_status`, `xpay_shop_search`, `xpay_shop_quote`, `xpay_rwa_find`, `xpay_agenc_status`, plus `xpay_bento_status` / `xpay_bento_enable` / `xpay_bento_disable` to manage the [intent firewall](#security--bento-intent-firewall-optional). If you've linked a Sana key (see below), eight additional `sana_*` tools are also registered automatically.
|
|
182
|
+
The host sees the core tools: `xpay_discover`, `xpay_use`, `xpay_do`, `xpay_transfer`, `xpay_balance`, `xpay_report`, `xpay_guardrail`, `xpay_token_find`, `xpay_swap`, `xpay_trending_tokens`, `xpay_trade_quote`, `xpay_trade`, `xpay_x_user`, `xpay_x_posts`, `xpay_zauth_reposcan`, `xpay_zauth_scan_status`, `xpay_shop_search`, `xpay_shop_quote`, `xpay_shop_lens`, `xpay_shop_lens_quote`, `xpay_rwa_find`, `xpay_agenc_status`, plus `xpay_bento_status` / `xpay_bento_enable` / `xpay_bento_disable` to manage the [intent firewall](#security--bento-intent-firewall-optional). If you've linked a Sana key (see below), eight additional `sana_*` tools are also registered automatically.
|
|
183
183
|
|
|
184
184
|
**Bring your own wallet instead** — the wallet source order is *existing profile → key env → auto-generate*, so any of these overrides the generated wallet:
|
|
185
185
|
|
|
@@ -473,6 +473,14 @@ xpay shop search "sony wh-1000xm5" --marketplaces amazon,ebay --sort price_asc
|
|
|
473
473
|
|
|
474
474
|
MCP: `xpay_shop_search` (paid) / `xpay_shop_quote` (free preflight: agents should quote first when a query is ambiguous). MCP results are compacted for context (image/position/scoring fields dropped); `xpay shop search --json` keeps the full payload. Endpoint override: `XPAY_SHOP_ENDPOINT`.
|
|
475
475
|
|
|
476
|
+
### Shop lens: image-based discovery
|
|
477
|
+
|
|
478
|
+
The same partner also answers "what is this, and where do I buy it" from a photo. Give `/shop/lens` an image and Google Lens identifies the product and the retailers selling it, normalized into the same schema as `/shop/search`. Two modes: `identify` (default, ~$0.02 USDC) returns the visual matches plus a derived product name; `shop` (~$0.04 for all three marketplaces) additionally runs that name through Google Shopping, Amazon, and eBay for a price comparison.
|
|
479
|
+
|
|
480
|
+
The lens engine itself only accepts a publicly reachable http(s) URL (SerpAPI fetches the image; data URIs are rejected), so the MCP tool takes the image as exactly one of three inputs: `image_url` (used as-is), `image_path` (local file), or `image_base64` (raw or data URI). Local files and base64 are first uploaded, free, to xona's public image host (JPEG/PNG/GIF/WebP, type sniffed from magic bytes, 25MB cap) and the hosted URL is echoed back as `hosted_image_url` for reuse. This is what makes images from chat clients that upload attachments (Hermes and friends) work: bytes in, public URL bridged automatically.
|
|
481
|
+
|
|
482
|
+
MCP: `xpay_shop_lens` (paid) / `xpay_shop_lens_quote` (free preflight: validates an image URL is publicly reachable and reports the exact price, no wallet). Agents should quote first when passing `image_url`, since the paid door charges even when the URL turns out to be unusable; uploads need no preflight because the hosted URL is always reachable. If the response flags the image as not a product photo, a `mode=shop` retry will not help.
|
|
483
|
+
|
|
476
484
|
## Multi-network
|
|
477
485
|
|
|
478
486
|
`init` configures Solana and Base by default. Add or change via `~/.xpay/<name>/config.json`:
|
package/dist/shop/index.d.ts
CHANGED
|
@@ -1,14 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* xona shop partner integration: product discovery across Google Shopping,
|
|
3
|
-
* Amazon, and eBay behind xona's x402-paywalled /shop/search endpoint
|
|
3
|
+
* Amazon, and eBay behind xona's x402-paywalled /shop/search endpoint, and
|
|
4
|
+
* image-based discovery (Google Lens) behind /shop/lens.
|
|
4
5
|
*
|
|
5
|
-
* Flow differs from zauth in one important way:
|
|
6
|
-
* (POST /api/shop/quote) that
|
|
7
|
-
*
|
|
8
|
-
* quote first, then pay: the paid
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* there is no polling
|
|
6
|
+
* Flow differs from zauth in one important way: both doors have a FREE
|
|
7
|
+
* preflight (POST /api/shop/quote, POST /api/shop/lens/quote) that validates
|
|
8
|
+
* the input server-side and reports the exact price a paid call would cost.
|
|
9
|
+
* Callers should quote first, then pay: the paid doors reject bad input
|
|
10
|
+
* (non-product query, unreachable image URL) but still charge for the
|
|
11
|
+
* attempt, so the free quote is what keeps agents from paying for a call
|
|
12
|
+
* that returns nothing. Searches are synchronous, so there is no polling
|
|
13
|
+
* step.
|
|
12
14
|
*/
|
|
13
15
|
export declare const SHOP_BASE: string;
|
|
14
16
|
/** Marketplaces the resource can fan out to. Price scales with how many are searched. */
|
|
@@ -36,6 +38,80 @@ export interface ShopQuote {
|
|
|
36
38
|
intent?: Record<string, unknown>;
|
|
37
39
|
[key: string]: unknown;
|
|
38
40
|
}
|
|
41
|
+
/** Lens engine modes: identify = 1 Lens credit, shop = identify + marketplace fan-out. */
|
|
42
|
+
export declare const SHOP_LENS_MODES: readonly ["identify", "shop"];
|
|
43
|
+
export interface ShopLensParams {
|
|
44
|
+
/** Publicly reachable http(s) image URL. Data URIs and uploads are not supported. */
|
|
45
|
+
image_url: string;
|
|
46
|
+
/** identify (default, cheaper) or shop (adds the marketplace price comparison). */
|
|
47
|
+
mode?: string;
|
|
48
|
+
/** Optional text refinement applied alongside the image ("in black", "size 10"). */
|
|
49
|
+
q?: string;
|
|
50
|
+
price_min?: number;
|
|
51
|
+
price_max?: number;
|
|
52
|
+
/** new | open_box | refurbished | used | for_parts */
|
|
53
|
+
condition?: string;
|
|
54
|
+
/** relevance | price_asc | price_desc | rating | reviews | discount | newest */
|
|
55
|
+
sort?: string;
|
|
56
|
+
country?: string;
|
|
57
|
+
/** Max results. Server default 20. */
|
|
58
|
+
limit?: number;
|
|
59
|
+
/** mode=shop only: restrict the comparison to a subset of marketplaces (lowers the price). */
|
|
60
|
+
marketplaces?: string[];
|
|
61
|
+
}
|
|
62
|
+
export interface ShopLensQuote {
|
|
63
|
+
success: boolean;
|
|
64
|
+
image_url_valid: boolean;
|
|
65
|
+
mode: string;
|
|
66
|
+
price_usd: number;
|
|
67
|
+
[key: string]: unknown;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* The lens door only accepts a publicly reachable URL (SerpAPI fetches the
|
|
71
|
+
* image, xona never proxies the bytes), so local files and base64 payloads
|
|
72
|
+
* are bridged through xona's free public image host first: uploads land in
|
|
73
|
+
* object storage with a public-read ACL and the returned URL passes the lens
|
|
74
|
+
* validation. Everything below up to fetchShopLensQuote implements that
|
|
75
|
+
* bridge.
|
|
76
|
+
*/
|
|
77
|
+
/**
|
|
78
|
+
* Cap on bytes we will upload. The host itself allows far more, but a lens
|
|
79
|
+
* image is a product photo; anything bigger than this is almost certainly a
|
|
80
|
+
* mistake (raw video frame, wrong file) and would waste upload time before
|
|
81
|
+
* the paid call even starts.
|
|
82
|
+
*/
|
|
83
|
+
export declare const SHOP_IMAGE_MAX_BYTES: number;
|
|
84
|
+
/**
|
|
85
|
+
* Upload image bytes to xona's public image host and return the public URL.
|
|
86
|
+
* Free (no wallet): this is the general-purpose upload endpoint, not an x402
|
|
87
|
+
* door. The type is sniffed from magic bytes rather than trusted from the
|
|
88
|
+
* caller, because the endpoint rejects non-image types anyway.
|
|
89
|
+
*/
|
|
90
|
+
export declare function uploadShopImage(bytes: Uint8Array, filename?: string): Promise<string>;
|
|
91
|
+
export interface LensImageInput {
|
|
92
|
+
/** Publicly reachable http(s) URL: used as-is, no upload. */
|
|
93
|
+
image_url?: string;
|
|
94
|
+
/** Local file path: read and uploaded to xona's public image host first. */
|
|
95
|
+
image_path?: string;
|
|
96
|
+
/** Base64 image bytes (raw or data URI): uploaded to xona's public image host first. */
|
|
97
|
+
image_base64?: string;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Resolve whichever image input the caller provided into the public URL the
|
|
101
|
+
* lens door requires. Exactly one of the three fields must be set: silently
|
|
102
|
+
* preferring one over another would hide a caller bug (two different images).
|
|
103
|
+
*/
|
|
104
|
+
export declare function resolveLensImageUrl(input: LensImageInput): Promise<{
|
|
105
|
+
image_url: string;
|
|
106
|
+
uploaded: boolean;
|
|
107
|
+
}>;
|
|
108
|
+
/**
|
|
109
|
+
* Free preflight against /api/shop/lens/quote. Validates the image URL is a
|
|
110
|
+
* publicly reachable http(s) URL (the dominant failure mode) and reports the
|
|
111
|
+
* exact price the paid call would cost for the requested mode. No wallet, no
|
|
112
|
+
* Lens credit spent.
|
|
113
|
+
*/
|
|
114
|
+
export declare function fetchShopLensQuote(params: ShopLensParams): Promise<ShopLensQuote>;
|
|
39
115
|
/** Free preflight against /api/shop/quote. No wallet, no SerpAPI credit spent. */
|
|
40
116
|
export declare function fetchShopQuote(params: ShopSearchParams): Promise<ShopQuote>;
|
|
41
117
|
/**
|
package/dist/shop/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shop/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/shop/index.ts"],"names":[],"mappings":"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"}
|
package/dist/shop/index.js
CHANGED
|
@@ -1,18 +1,145 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* xona shop partner integration: product discovery across Google Shopping,
|
|
3
|
-
* Amazon, and eBay behind xona's x402-paywalled /shop/search endpoint
|
|
3
|
+
* Amazon, and eBay behind xona's x402-paywalled /shop/search endpoint, and
|
|
4
|
+
* image-based discovery (Google Lens) behind /shop/lens.
|
|
4
5
|
*
|
|
5
|
-
* Flow differs from zauth in one important way:
|
|
6
|
-
* (POST /api/shop/quote) that
|
|
7
|
-
*
|
|
8
|
-
* quote first, then pay: the paid
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
* there is no polling
|
|
6
|
+
* Flow differs from zauth in one important way: both doors have a FREE
|
|
7
|
+
* preflight (POST /api/shop/quote, POST /api/shop/lens/quote) that validates
|
|
8
|
+
* the input server-side and reports the exact price a paid call would cost.
|
|
9
|
+
* Callers should quote first, then pay: the paid doors reject bad input
|
|
10
|
+
* (non-product query, unreachable image URL) but still charge for the
|
|
11
|
+
* attempt, so the free quote is what keeps agents from paying for a call
|
|
12
|
+
* that returns nothing. Searches are synchronous, so there is no polling
|
|
13
|
+
* step.
|
|
12
14
|
*/
|
|
13
15
|
export const SHOP_BASE = process.env.XPAY_SHOP_ENDPOINT ?? "https://api.xona-agent.com";
|
|
14
16
|
/** Marketplaces the resource can fan out to. Price scales with how many are searched. */
|
|
15
17
|
export const SHOP_MARKETPLACES = ["google_shopping", "amazon", "ebay"];
|
|
18
|
+
/** Lens engine modes: identify = 1 Lens credit, shop = identify + marketplace fan-out. */
|
|
19
|
+
export const SHOP_LENS_MODES = ["identify", "shop"];
|
|
20
|
+
/**
|
|
21
|
+
* The lens door only accepts a publicly reachable URL (SerpAPI fetches the
|
|
22
|
+
* image, xona never proxies the bytes), so local files and base64 payloads
|
|
23
|
+
* are bridged through xona's free public image host first: uploads land in
|
|
24
|
+
* object storage with a public-read ACL and the returned URL passes the lens
|
|
25
|
+
* validation. Everything below up to fetchShopLensQuote implements that
|
|
26
|
+
* bridge.
|
|
27
|
+
*/
|
|
28
|
+
/**
|
|
29
|
+
* Cap on bytes we will upload. The host itself allows far more, but a lens
|
|
30
|
+
* image is a product photo; anything bigger than this is almost certainly a
|
|
31
|
+
* mistake (raw video frame, wrong file) and would waste upload time before
|
|
32
|
+
* the paid call even starts.
|
|
33
|
+
*/
|
|
34
|
+
export const SHOP_IMAGE_MAX_BYTES = 25 * 1024 * 1024;
|
|
35
|
+
/** Image types the upload endpoint accepts, keyed by magic bytes. */
|
|
36
|
+
function sniffImageMime(buf) {
|
|
37
|
+
if (buf.length >= 3 && buf[0] === 0xff && buf[1] === 0xd8 && buf[2] === 0xff)
|
|
38
|
+
return "image/jpeg";
|
|
39
|
+
if (buf.length >= 8 && buf[0] === 0x89 && buf[1] === 0x50 && buf[2] === 0x4e && buf[3] === 0x47)
|
|
40
|
+
return "image/png";
|
|
41
|
+
if (buf.length >= 6 && buf[0] === 0x47 && buf[1] === 0x49 && buf[2] === 0x46 && buf[3] === 0x38)
|
|
42
|
+
return "image/gif";
|
|
43
|
+
if (buf.length >= 12 &&
|
|
44
|
+
buf[0] === 0x52 && buf[1] === 0x49 && buf[2] === 0x46 && buf[3] === 0x46 &&
|
|
45
|
+
buf[8] === 0x57 && buf[9] === 0x45 && buf[10] === 0x42 && buf[11] === 0x50)
|
|
46
|
+
return "image/webp";
|
|
47
|
+
return null;
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Upload image bytes to xona's public image host and return the public URL.
|
|
51
|
+
* Free (no wallet): this is the general-purpose upload endpoint, not an x402
|
|
52
|
+
* door. The type is sniffed from magic bytes rather than trusted from the
|
|
53
|
+
* caller, because the endpoint rejects non-image types anyway.
|
|
54
|
+
*/
|
|
55
|
+
export async function uploadShopImage(bytes, filename) {
|
|
56
|
+
if (bytes.length === 0)
|
|
57
|
+
throw new Error("image is empty");
|
|
58
|
+
if (bytes.length > SHOP_IMAGE_MAX_BYTES) {
|
|
59
|
+
throw new Error(`image is ${bytes.length} bytes; max ${SHOP_IMAGE_MAX_BYTES} (is this really a product photo?)`);
|
|
60
|
+
}
|
|
61
|
+
const mime = sniffImageMime(bytes);
|
|
62
|
+
if (!mime)
|
|
63
|
+
throw new Error("unrecognized image format: expected JPEG, PNG, GIF, or WebP");
|
|
64
|
+
const form = new FormData();
|
|
65
|
+
const ext = mime.split("/")[1];
|
|
66
|
+
form.append("image", new Blob([bytes], { type: mime }), filename ?? `lens-image.${ext}`);
|
|
67
|
+
const res = await fetch(`${SHOP_BASE}/api/upload/image`, { method: "POST", body: form });
|
|
68
|
+
const text = await res.text();
|
|
69
|
+
let data;
|
|
70
|
+
try {
|
|
71
|
+
data = text ? JSON.parse(text) : {};
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
data = { raw: text };
|
|
75
|
+
}
|
|
76
|
+
if (!res.ok) {
|
|
77
|
+
const detail = typeof data === "object" && data !== null && "message" in data
|
|
78
|
+
? String(data.message)
|
|
79
|
+
: text.slice(0, 200);
|
|
80
|
+
throw new Error(`image upload ${res.status}${detail ? `: ${detail}` : ""}`);
|
|
81
|
+
}
|
|
82
|
+
const url = data?.data?.url;
|
|
83
|
+
if (typeof url !== "string" || !url) {
|
|
84
|
+
throw new Error("image upload succeeded but no URL came back");
|
|
85
|
+
}
|
|
86
|
+
return url;
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Resolve whichever image input the caller provided into the public URL the
|
|
90
|
+
* lens door requires. Exactly one of the three fields must be set: silently
|
|
91
|
+
* preferring one over another would hide a caller bug (two different images).
|
|
92
|
+
*/
|
|
93
|
+
export async function resolveLensImageUrl(input) {
|
|
94
|
+
const provided = ["image_url", "image_path", "image_base64"].filter((k) => input[k]);
|
|
95
|
+
if (provided.length !== 1) {
|
|
96
|
+
throw new Error(`provide exactly one of image_url, image_path, image_base64 (got ${provided.length ? provided.join(" + ") : "none"})`);
|
|
97
|
+
}
|
|
98
|
+
if (input.image_url)
|
|
99
|
+
return { image_url: input.image_url, uploaded: false };
|
|
100
|
+
let bytes;
|
|
101
|
+
let filename;
|
|
102
|
+
if (input.image_path) {
|
|
103
|
+
const { readFile } = await import("node:fs/promises");
|
|
104
|
+
const { basename } = await import("node:path");
|
|
105
|
+
bytes = new Uint8Array(await readFile(input.image_path));
|
|
106
|
+
filename = basename(input.image_path);
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
// Accept both a bare base64 string and a full data URI.
|
|
110
|
+
const b64 = input.image_base64.replace(/^data:[^;,]+;base64,/, "").replace(/\s/g, "");
|
|
111
|
+
bytes = new Uint8Array(Buffer.from(b64, "base64"));
|
|
112
|
+
}
|
|
113
|
+
return { image_url: await uploadShopImage(bytes, filename), uploaded: true };
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Free preflight against /api/shop/lens/quote. Validates the image URL is a
|
|
117
|
+
* publicly reachable http(s) URL (the dominant failure mode) and reports the
|
|
118
|
+
* exact price the paid call would cost for the requested mode. No wallet, no
|
|
119
|
+
* Lens credit spent.
|
|
120
|
+
*/
|
|
121
|
+
export async function fetchShopLensQuote(params) {
|
|
122
|
+
const res = await fetch(`${SHOP_BASE}/api/shop/lens/quote`, {
|
|
123
|
+
method: "POST",
|
|
124
|
+
headers: { "content-type": "application/json" },
|
|
125
|
+
body: JSON.stringify(params),
|
|
126
|
+
});
|
|
127
|
+
const text = await res.text();
|
|
128
|
+
let data;
|
|
129
|
+
try {
|
|
130
|
+
data = text ? JSON.parse(text) : {};
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
data = { raw: text };
|
|
134
|
+
}
|
|
135
|
+
if (!res.ok) {
|
|
136
|
+
const detail = typeof data === "object" && data !== null && "message" in data
|
|
137
|
+
? String(data.message)
|
|
138
|
+
: text.slice(0, 200);
|
|
139
|
+
throw new Error(`shop lens quote ${res.status}${detail ? `: ${detail}` : ""}`);
|
|
140
|
+
}
|
|
141
|
+
return data;
|
|
142
|
+
}
|
|
16
143
|
/** Free preflight against /api/shop/quote. No wallet, no SerpAPI credit spent. */
|
|
17
144
|
export async function fetchShopQuote(params) {
|
|
18
145
|
const res = await fetch(`${SHOP_BASE}/api/shop/quote`, {
|
|
@@ -45,17 +172,23 @@ export async function fetchShopQuote(params) {
|
|
|
45
172
|
export function compactShopResult(data) {
|
|
46
173
|
if (typeof data !== "object" || data === null)
|
|
47
174
|
return data;
|
|
48
|
-
const { results, ...rest } = data;
|
|
175
|
+
const { results, marketplace_comparison, ...rest } = data;
|
|
49
176
|
if (!Array.isArray(results))
|
|
50
177
|
return data;
|
|
51
178
|
return {
|
|
52
179
|
...rest,
|
|
53
|
-
results: results.map(
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
180
|
+
results: results.map(compactProduct),
|
|
181
|
+
// Lens mode=shop nests a second result list: the marketplace comparison
|
|
182
|
+
// run on the product name derived from the image.
|
|
183
|
+
...(marketplace_comparison !== undefined
|
|
184
|
+
? { marketplace_comparison: compactShopResult(marketplace_comparison) }
|
|
185
|
+
: {}),
|
|
59
186
|
};
|
|
60
187
|
}
|
|
188
|
+
function compactProduct(p) {
|
|
189
|
+
if (typeof p !== "object" || p === null)
|
|
190
|
+
return p;
|
|
191
|
+
const { image: _image, product_id: _pid, position: _pos, sponsored: _sponsored, relevance_score: _score, badges: _badges, ...keep } = p;
|
|
192
|
+
return keep;
|
|
193
|
+
}
|
|
61
194
|
//# sourceMappingURL=index.js.map
|
package/dist/shop/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shop/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/shop/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AA4BxC,MAAM,WAAW,UAAU,CAAC,IAAI;IAC9B,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;CAChF;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AAED,MAAM,WAAW,WAAW;IAC1B,kFAAkF;IAClF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,yCAAyC;AACzC,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,GAAE,WAAgB,GAAG,UAAU,CAAC,aAAa,CAAC,CA0vBvF;AAED,gFAAgF;AAChF,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI;;;;;;;;;qCA5wBD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC;EAyxB9E;AAED,sDAAsD;AACtD,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI;;;;;;;;qCA5xBD,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC;EA0yB9E"}
|
package/dist/tools/index.js
CHANGED
|
@@ -16,7 +16,7 @@ import { enrichTokenBalances } from "../token/index.js";
|
|
|
16
16
|
import { robinhoodHoldings } from "../trading/discovery.js";
|
|
17
17
|
import { forSana } from "../sana/tools.js";
|
|
18
18
|
import { ZAUTH_BASE, isScanPending, isScanning, pollRepoScan, fetchScanStatus, compactScanReport, } from "../zauth/index.js";
|
|
19
|
-
import { SHOP_BASE, fetchShopQuote, compactShopResult } from "../shop/index.js";
|
|
19
|
+
import { SHOP_BASE, fetchShopQuote, fetchShopLensQuote, resolveLensImageUrl, compactShopResult, } from "../shop/index.js";
|
|
20
20
|
import { findRwaTokens } from "../token/rwa.js";
|
|
21
21
|
/** Base URL for xona's paid X (Twitter) data endpoints (x402-gated). */
|
|
22
22
|
const XDATA_BASE = process.env.XPAY_XDATA_ENDPOINT ?? "https://api.xona-agent.com";
|
|
@@ -386,6 +386,96 @@ export function forClaude(xpay, opts = {}) {
|
|
|
386
386
|
required: ["query"],
|
|
387
387
|
},
|
|
388
388
|
},
|
|
389
|
+
{
|
|
390
|
+
name: "xpay_shop_lens_quote",
|
|
391
|
+
description: "FREE preflight for image-based product search via xona shop (partner): validates that the " +
|
|
392
|
+
"image URL is a publicly reachable http(s) URL (the dominant failure mode) and reports the " +
|
|
393
|
+
"exact price the paid lens call would cost for the chosen mode. No wallet needed. ALWAYS " +
|
|
394
|
+
"call this before xpay_shop_lens: the paid call charges even when the image URL turns out " +
|
|
395
|
+
"to be unreachable.",
|
|
396
|
+
input_schema: {
|
|
397
|
+
type: "object",
|
|
398
|
+
properties: {
|
|
399
|
+
image_url: {
|
|
400
|
+
type: "string",
|
|
401
|
+
description: "Publicly reachable http(s) image URL. Data URIs and uploads are not supported.",
|
|
402
|
+
},
|
|
403
|
+
mode: {
|
|
404
|
+
type: "string",
|
|
405
|
+
enum: ["identify", "shop"],
|
|
406
|
+
description: "Mode to price: identify (default, cheaper) or shop (adds the marketplace comparison).",
|
|
407
|
+
},
|
|
408
|
+
marketplaces: {
|
|
409
|
+
type: "array",
|
|
410
|
+
items: { type: "string", enum: ["google_shopping", "amazon", "ebay"] },
|
|
411
|
+
description: "mode=shop only: restrict the comparison. Fewer marketplaces means a lower price.",
|
|
412
|
+
},
|
|
413
|
+
},
|
|
414
|
+
required: ["image_url"],
|
|
415
|
+
},
|
|
416
|
+
},
|
|
417
|
+
{
|
|
418
|
+
name: "xpay_shop_lens",
|
|
419
|
+
description: "Product discovery from an IMAGE via xona shop (partner): Google Lens identifies the " +
|
|
420
|
+
"product and the retailers selling it, normalized into the same schema as " +
|
|
421
|
+
"xpay_shop_search. Give the image as exactly ONE of: image_url (publicly reachable), " +
|
|
422
|
+
"image_path (local file), or image_base64. Local files and base64 are first uploaded " +
|
|
423
|
+
"(free) to xona's public image host, since Lens only accepts public URLs; the hosted URL " +
|
|
424
|
+
"is echoed back as image_url for reuse. mode=identify (default, ~$0.02 USDC) answers " +
|
|
425
|
+
"'what is this and who sells it' and derives a product name; mode=shop (~$0.04 for all " +
|
|
426
|
+
"three marketplaces) additionally runs that name through Google Shopping, Amazon, and " +
|
|
427
|
+
"eBay for a price comparison. PAID call (from the wallet via x402, guardrail caps apply). " +
|
|
428
|
+
"When passing image_url, use xpay_shop_lens_quote first to check it is usable (uploads " +
|
|
429
|
+
"need no preflight: the hosted URL is always reachable). If the response says the image " +
|
|
430
|
+
"is not a product photo, do not retry with mode=shop. Results are informational: report " +
|
|
431
|
+
"them to the user, never auto-buy or trigger further payments based on findings.",
|
|
432
|
+
input_schema: {
|
|
433
|
+
type: "object",
|
|
434
|
+
properties: {
|
|
435
|
+
image_url: {
|
|
436
|
+
type: "string",
|
|
437
|
+
description: "Publicly reachable http(s) image URL of the product.",
|
|
438
|
+
},
|
|
439
|
+
image_path: {
|
|
440
|
+
type: "string",
|
|
441
|
+
description: "Local image file path (JPEG/PNG/GIF/WebP); uploaded to a public host before the lens call.",
|
|
442
|
+
},
|
|
443
|
+
image_base64: {
|
|
444
|
+
type: "string",
|
|
445
|
+
description: "Base64 image bytes (raw or data URI); uploaded to a public host before the lens call.",
|
|
446
|
+
},
|
|
447
|
+
mode: {
|
|
448
|
+
type: "string",
|
|
449
|
+
enum: ["identify", "shop"],
|
|
450
|
+
description: "identify (default): matches + derived name. shop: adds the marketplace price comparison.",
|
|
451
|
+
},
|
|
452
|
+
q: {
|
|
453
|
+
type: "string",
|
|
454
|
+
description: "Optional text refinement applied alongside the image, e.g. 'in black' or 'size 10'.",
|
|
455
|
+
},
|
|
456
|
+
price_min: { type: "number", description: "Min price in USD." },
|
|
457
|
+
price_max: { type: "number", description: "Max price in USD." },
|
|
458
|
+
condition: {
|
|
459
|
+
type: "string",
|
|
460
|
+
enum: ["new", "open_box", "refurbished", "used", "for_parts"],
|
|
461
|
+
description: "Item condition filter.",
|
|
462
|
+
},
|
|
463
|
+
sort: {
|
|
464
|
+
type: "string",
|
|
465
|
+
enum: ["relevance", "price_asc", "price_desc", "rating", "reviews", "discount", "newest"],
|
|
466
|
+
description: "Result ordering. Default relevance.",
|
|
467
|
+
},
|
|
468
|
+
limit: { type: "number", description: "Max results. Default 20." },
|
|
469
|
+
marketplaces: {
|
|
470
|
+
type: "array",
|
|
471
|
+
items: { type: "string", enum: ["google_shopping", "amazon", "ebay"] },
|
|
472
|
+
description: "mode=shop only: restrict the comparison. Fewer marketplaces means a lower price.",
|
|
473
|
+
},
|
|
474
|
+
},
|
|
475
|
+
// No required list: exactly one of image_url / image_path / image_base64,
|
|
476
|
+
// enforced by the handler (JSON Schema oneOf is unreliable across hosts).
|
|
477
|
+
},
|
|
478
|
+
},
|
|
389
479
|
{
|
|
390
480
|
name: "xpay_agenc_status",
|
|
391
481
|
description: "Check the progress of an AgenC marketplace hire (read-only, no wallet). " +
|
|
@@ -585,6 +675,43 @@ export function forClaude(xpay, opts = {}) {
|
|
|
585
675
|
});
|
|
586
676
|
return { ...result, data: compactShopResult(result.data) };
|
|
587
677
|
},
|
|
678
|
+
xpay_shop_lens_quote: async (input) => fetchShopLensQuote({
|
|
679
|
+
image_url: input.image_url,
|
|
680
|
+
mode: input.mode,
|
|
681
|
+
marketplaces: input.marketplaces,
|
|
682
|
+
}),
|
|
683
|
+
xpay_shop_lens: async (input) => {
|
|
684
|
+
// Local file / base64 inputs are bridged through xona's free public
|
|
685
|
+
// image host: the lens door only accepts a public URL (SerpAPI fetches
|
|
686
|
+
// the image itself). The upload happens before any payment.
|
|
687
|
+
const { image_url, uploaded } = await resolveLensImageUrl({
|
|
688
|
+
image_url: input.image_url,
|
|
689
|
+
image_path: input.image_path,
|
|
690
|
+
image_base64: input.image_base64,
|
|
691
|
+
});
|
|
692
|
+
const params = {
|
|
693
|
+
image_url,
|
|
694
|
+
mode: input.mode,
|
|
695
|
+
q: input.q,
|
|
696
|
+
price_min: input.price_min,
|
|
697
|
+
price_max: input.price_max,
|
|
698
|
+
condition: input.condition,
|
|
699
|
+
sort: input.sort,
|
|
700
|
+
limit: input.limit,
|
|
701
|
+
marketplaces: input.marketplaces,
|
|
702
|
+
};
|
|
703
|
+
const result = await xpay.useByUrl(`${SHOP_BASE}/shop/lens`, {
|
|
704
|
+
method: "POST",
|
|
705
|
+
body: params,
|
|
706
|
+
});
|
|
707
|
+
// Surface the hosted URL when we uploaded, so the agent can reuse it
|
|
708
|
+
// (e.g. a mode=shop follow-up) without paying the upload time again.
|
|
709
|
+
return {
|
|
710
|
+
...result,
|
|
711
|
+
...(uploaded ? { hosted_image_url: image_url } : {}),
|
|
712
|
+
data: compactShopResult(result.data),
|
|
713
|
+
};
|
|
714
|
+
},
|
|
588
715
|
xpay_agenc_status: async (input) => fetchAgencTask(input.taskPda),
|
|
589
716
|
};
|
|
590
717
|
// Merge Sana tools if an API key is configured.
|
package/dist/tools/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,OAAO,EACL,UAAU,EACV,aAAa,EACb,UAAU,EACV,YAAY,EACZ,eAAe,EACf,iBAAiB,GAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,iBAAiB,EAAyB,MAAM,kBAAkB,CAAC;AACvG,OAAO,EAAE,aAAa,EAAoB,MAAM,iBAAiB,CAAC;AAElE,wEAAwE;AACxE,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,4BAA4B,CAAC;AAkBnF,yCAAyC;AACzC,MAAM,UAAU,SAAS,CAAC,IAAU,EAAE,OAAoB,EAAE;IAC1D,MAAM,KAAK,GAAoB;QAC7B;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,gFAAgF;gBAChF,wEAAwE;gBACxE,uFAAuF;gBACvF,yFAAyF;gBACzF,uFAAuF;gBACvF,uFAAuF;gBACvF,mBAAmB;YACrB,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4EAA4E,EAAE;oBACpH,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,yBAAyB,EAAE;oBACjE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;oBACxF,OAAO,EAAE;wBACP,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,OAAO,CAAC,EAAE;wBACvD,WAAW,EAAE,yFAAyF;qBACvG;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,UAAU;YAChB,WAAW,EACT,iFAAiF;gBACjF,oFAAoF;gBACpF,uFAAuF;gBACvF,4EAA4E;gBAC5E,sFAAsF;gBACtF,oFAAoF;gBACpF,sFAAsF;gBACtF,yBAAyB;YAC3B,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,uDAAuD;4BACvD,wEAAwE;qBAC3E;oBACD,WAAW,EAAE;wBACX,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,iFAAiF;qBACpF;oBACD,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,wCAAwC,EAAE;iBAChF;aACF;SACF;QACD;YACE,IAAI,EAAE,SAAS;YACf,WAAW,EACT,mEAAmE;gBACnE,yDAAyD;gBACzD,iFAAiF;gBACjF,4CAA4C;YAC9C,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;oBACzB,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;iBACzB;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;QACD;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,8FAA8F;gBAC9F,wGAAwG;gBACxG,0BAA0B;gBAC1B,sFAAsF;gBACtF,iFAAiF;YACnF,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAG,EAAE,IAAI,EAAE,QAAQ,EAAG,WAAW,EAAE,gDAAgD,EAAE;oBAC3F,EAAE,EAAO,EAAE,IAAI,EAAE,QAAQ,EAAG,WAAW,EAAE,iDAAiD,EAAE;oBAC5F,KAAK,EAAI,EAAE,IAAI,EAAE,QAAQ,EAAG,WAAW,EAAE,mFAAmF,EAAE;oBAC9H,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAG,WAAW,EAAE,wCAAwC,EAAE;oBACnF,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uFAAuF,EAAE;iBACnI;gBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC;aAC3B;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,wDAAwD;YACrE,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACrE;aACF;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EACT,sIAAsI;gBACtI,4EAA4E;gBAC5E,wEAAwE;YAC1E,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE;wBACN,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC;wBACpC,WAAW,EAAE,iCAAiC;qBAC/C;oBACD,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,wCAAwC;qBACtD;iBACF;aACF;SACF;QACD;YACE,IAAI,EAAE,gBAAgB;YACtB,WAAW,EAAE,+EAA+E;YAC5F,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE;SACjD;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EACT,yFAAyF;gBACzF,0FAA0F;gBAC1F,6FAA6F;gBAC7F,6FAA6F;gBAC7F,8FAA8F;gBAC9F,gDAAgD;YAClD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;oBACpF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACnE;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;QACD;YACE,IAAI,EAAE,WAAW;YACjB,WAAW,EACT,+FAA+F;gBAC/F,iGAAiG;gBACjG,kGAAkG;gBAClG,gGAAgG;gBAChG,4FAA4F;gBAC5F,iGAAiG;gBACjG,uHAAuH;gBACvH,gGAAgG;gBAChG,+FAA+F;gBAC/F,gGAAgG;gBAChG,yEAAyE;YAC3E,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oDAAoD,EAAE;oBAC7F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,2DAA2D,EAAE;oBAClG,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mFAAmF,EAAE;oBACxH,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mFAAmF,EAAE;iBAClI;gBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;aACnC;SACF;QACD;YACE,IAAI,EAAE,sBAAsB;YAC5B,WAAW,EACT,2FAA2F;gBAC3F,6FAA6F;gBAC7F,4FAA4F;gBAC5F,4FAA4F;gBAC5F,8FAA8F;gBAC9F,+CAA+C;YACjD,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,uDAAuD,EAAE;oBAClG,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACnE;aACF;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EACT,8FAA8F;gBAC9F,0FAA0F;gBAC1F,0FAA0F;gBAC1F,0FAA0F;gBAC1F,0FAA0F;gBAC1F,+BAA+B;YACjC,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE;oBAC9F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+DAA+D,EAAE;oBACtG,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gEAAgE,EAAE;oBACrG,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;iBAC7F;gBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;aACnC;SACF;QACD;YACE,IAAI,EAAE,YAAY;YAClB,WAAW,EACT,6FAA6F;gBAC7F,+FAA+F;gBAC/F,iGAAiG;gBACjG,kGAAkG;gBAClG,iGAAiG;gBACjG,6FAA6F;gBAC7F,6FAA6F;gBAC7F,sFAAsF;gBACtF,gGAAgG;gBAChG,6FAA6F;YAC/F,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,qDAAqD,EAAE;oBAC9F,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+DAA+D,EAAE;oBACtG,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gEAAgE,EAAE;oBACrG,WAAW,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8CAA8C,EAAE;iBAC7F;gBACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;aACnC;SACF;QACD;YACE,IAAI,EAAE,aAAa;YACnB,WAAW,EACT,4FAA4F;gBAC5F,0FAA0F;gBAC1F,4FAA4F;gBAC5F,6FAA6F;YAC/F,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;iBACtF;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;QACD;YACE,IAAI,EAAE,cAAc;YACpB,WAAW,EACT,sFAAsF;gBACtF,6FAA6F;gBAC7F,6FAA6F;gBAC7F,2FAA2F;YAC7F,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,4CAA4C,EAAE;oBACrF,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;iBAC7E;gBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;aACrB;SACF;QACD;YACE,IAAI,EAAE,qBAAqB;YAC3B,WAAW,EACT,0FAA0F;gBAC1F,2FAA2F;gBAC3F,2FAA2F;gBAC3F,6FAA6F;gBAC7F,4FAA4F;gBAC5F,oFAAoF;gBACpF,+DAA+D;YACjE,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6DAA6D,EAAE;iBACxG;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;QACD;YACE,IAAI,EAAE,wBAAwB;YAC9B,WAAW,EACT,qFAAqF;gBACrF,yFAAyF;gBACzF,yFAAyF;gBACzF,iFAAiF;YACnF,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,YAAY,EAAE;wBACZ,IAAI,EAAE,QAAQ;wBACd,WAAW,EACT,+EAA+E;4BAC/E,8EAA8E;qBACjF;iBACF;gBACD,QAAQ,EAAE,CAAC,cAAc,CAAC;aAC3B;SACF;QACD;YACE,IAAI,EAAE,eAAe;YACrB,WAAW,EACT,qFAAqF;gBACrF,uFAAuF;gBACvF,0FAA0F;gBAC1F,uFAAuF;gBACvF,wFAAwF;gBACxF,yFAAyF;gBACzF,0FAA0F;gBAC1F,6EAA6E;YAC/E,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,2FAA2F;qBACzG;oBACD,QAAQ,EAAE;wBACR,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC;wBAC9B,WAAW,EAAE,6EAA6E;qBAC3F;oBACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,0BAA0B,EAAE;iBACnE;aACF;SACF;QACD;YACE,IAAI,EAAE,iBAAiB;YACvB,WAAW,EACT,0FAA0F;gBAC1F,wFAAwF;gBACxF,2FAA2F;gBAC3F,0FAA0F;gBAC1F,qFAAqF;YACvF,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,8DAA8D,EAAE;oBACtG,YAAY,EAAE;wBACZ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,iBAAiB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;wBACtE,WAAW,EAAE,4EAA4E;qBAC1F;iBACF;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;QACD;YACE,IAAI,EAAE,kBAAkB;YACxB,WAAW,EACT,8FAA8F;gBAC9F,0FAA0F;gBAC1F,uFAAuF;gBACvF,yFAAyF;gBACzF,4FAA4F;gBAC5F,4FAA4F;gBAC5F,2FAA2F;gBAC3F,yDAAyD;YAC3D,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+CAA+C,EAAE;oBACvF,YAAY,EAAE;wBACZ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,iBAAiB,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE;wBACtE,WAAW,EAAE,8DAA8D;qBAC5E;oBACD,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;oBAC/D,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mBAAmB,EAAE;oBAC/D,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC;wBAC7D,WAAW,EAAE,wBAAwB;qBACtC;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ;wBACd,IAAI,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC;wBACzF,WAAW,EAAE,qCAAqC;qBACnD;oBACD,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,sCAAsC,EAAE;iBAC/E;gBACD,QAAQ,EAAE,CAAC,OAAO,CAAC;aACpB;SACF;QACD;YACE,IAAI,EAAE,mBAAmB;YACzB,WAAW,EACT,0EAA0E;gBAC1E,0EAA0E;gBAC1E,4FAA4F;gBAC5F,qFAAqF;YACvF,YAAY,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uCAAuC,EAAE;iBAClF;gBACD,QAAQ,EAAE,CAAC,SAAS,CAAC;aACtB;SACF;KACF,CAAC;IAEF,MAAM,QAAQ,GAA0C;QACtD,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC7B,MAAM,OAAO,GAAG,KAAK,CAAC,OAA+B,CAAC;YACtD,OAAO,IAAI,CAAC,QAAQ,CAAC;gBACnB,KAAK,EAAE,KAAK,CAAC,KAA2B;gBACxC,mEAAmE;gBACnE,yCAAyC;gBACzC,KAAK,EAAG,KAAK,CAAC,KAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBAClE,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAiB,CAAC,CAAC,CAAC,CAAC,SAAS;gBAC/D,OAAO;aACR,CAAC,CAAC;QACL,CAAC;QAED,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACxB,kEAAkE;YAClE,2EAA2E;YAC3E,IAAI,KAAK,CAAC,QAAQ,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;gBACzD,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACxD,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAe,EAAE,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC;YACD,8EAA8E;YAC9E,MAAM,GAAG,GAAG,KAAK,CAAC,WAAqB,CAAC;YACxC,IAAI,CAAC,GAAG;gBAAE,MAAM,IAAI,KAAK,CAAC,uFAAuF,CAAC,CAAC;YACnH,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAe,EAAE,CAAC,CAAC;QAC7D,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CACvB,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,KAAe,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAe,EAAE,CAAC;QAEjE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC7B,IAAI,CAAC,QAAQ,CAAC;YACZ,MAAM,EAAG,KAAK,CAAC,MAAiB;YAChC,EAAE,EAAO,KAAK,CAAC,EAAiB;YAChC,KAAK,EAAK,KAAK,CAAC,KAA4B,IAAI,MAAM;YACtD,OAAO,EAAE,KAAK,CAAC,OAA6B;YAC5C,OAAO,EAAE,KAAK,CAAC,OAA8B;SAC9C,CAAC;QAEJ,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAC5B,yEAAyE;YACzE,2EAA2E;YAC3E,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC;YACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO;gBAC5B,CAAC,CAAC,CAAC,KAAK,CAAC,OAAiB,CAAC;gBAC3B,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,WAAW,CAAC;oBAChC,CAAC,CAAC,UAAU;oBACZ,CAAC,CAAC,CAAC,GAAG,UAAU,EAAE,WAAW,CAAC,CAAC;YAEnC,MAAM,UAAU,GAA4B,EAAE,CAAC;YAC/C,IAAI,eAAe,GAAG,CAAC,CAAC;YAExB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;gBACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;oBAAE,SAAS;gBAClC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;gBAErC,IAAI,OAAO,MAAM,CAAC,aAAa,KAAK,UAAU,EAAE,CAAC;oBAC/C,mEAAmE;oBACnE,kEAAkE;oBAClE,4CAA4C;oBAC5C,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC;oBACzD,IAAI,MAAM,GAAG,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;oBACnE,oEAAoE;oBACpE,mEAAmE;oBACnE,kEAAkE;oBAClE,+BAA+B;oBAC/B,IAAI,CAAC,KAAK,WAAW,EAAE,CAAC;wBACtB,MAAM,MAAM,GAAI,GAAqC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;wBAChF,MAAM,QAAQ,GAAG,MAAM,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;wBACzD,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,QAAQ,CAAkB,CAAC;oBACrD,CAAC;oBACD,UAAU,CAAC,CAAC,CAAC,GAAG;wBACd,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;4BACzB,MAAM,EAAE,CAAC,CAAC,MAAM;4BAChB,IAAI,EAAE,CAAC,CAAC,IAAI;4BACZ,OAAO,EAAE,CAAC,CAAC,OAAO;4BAClB,MAAM,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK;4BAC3B,OAAO,EAAE,CAAC,CAAC,OAAO;4BAClB,QAAQ,EAAG,CAA2B,CAAC,QAAQ;4BAC/C,QAAQ,EAAG,CAA2B,CAAC,QAAQ;4BAC/C,QAAQ,EAAG,CAA4B,CAAC,QAAQ;yBACjD,CAAC,CAAC;qBACJ,CAAC;oBACF,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;wBACvB,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM;4BAAE,eAAe,IAAI,CAAC,CAAC,OAAO,CAAC;oBAC/E,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,uBAAuB;oBACvB,MAAM,IAAI,GAAG,OAAO,MAAM,CAAC,OAAO,KAAK,UAAU;wBAC/C,CAAC,CAAC,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;wBACvC,CAAC,CAAC,CAAC,CAAC;oBACN,UAAU,CAAC,CAAC,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;oBACxG,eAAe,IAAI,IAAI,CAAC;gBAC1B,CAAC;YACH,CAAC;YAED,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC;QACzC,CAAC;QAED,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC3B,IAAI,CAAC,MAAM,CAAC;YACV,MAAM,EAAG,KAAK,CAAC,MAAyC,IAAI,QAAQ;YACpE,OAAO,EAAE,KAAK,CAAC,OAA6B;SAC7C,CAAC;QAEJ,cAAc,EAAE,KAAK,IAAI,EAAE,CAAC,IAAI,CAAC,SAAS;QAE1C,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC/B,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAe,EAAE;YACrC,KAAK,EAAG,KAAK,CAAC,KAAgB,IAAI,EAAE;SACrC,CAAC;QAEJ,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CACzB,IAAI,CAAC,IAAI,CAAC;YACR,MAAM,EAAE,KAAK,CAAC,MAAgB;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAc;YAC1B,EAAE,EAAE,KAAK,CAAC,EAAY;YACtB,WAAW,EAAE,KAAK,CAAC,WAAiC;SACrD,CAAC;QAEJ,oBAAoB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,IAAI,GAAG,EAAE,KAAK,EAAG,KAAK,CAAC,KAAgB,IAAI,EAAE,EAAE,CAAC;YACtD,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;QAC1E,CAAC;QAED,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAChC,IAAI,CAAC,UAAU,CAAC;YACd,MAAM,EAAE,KAAK,CAAC,MAAgB;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAc;YAC1B,EAAE,EAAE,KAAK,CAAC,EAAY;YACtB,WAAW,EAAE,KAAK,CAAC,WAAiC;SACrD,CAAC;QAEJ,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC1B,IAAI,CAAC,KAAK,CAAC;YACT,MAAM,EAAE,KAAK,CAAC,MAAgB;YAC9B,IAAI,EAAE,KAAK,CAAC,IAAc;YAC1B,EAAE,EAAE,KAAK,CAAC,EAAY;YACtB,WAAW,EAAE,KAAK,CAAC,WAAiC;SACrD,CAAC;QAEJ,WAAW,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC3B,IAAI,CAAC,QAAQ,CAAC,GAAG,UAAU,SAAS,EAAE;YACpC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAgB,EAAE;SACzC,CAAC;QAEJ,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC5B,IAAI,CAAC,QAAQ,CAAC,GAAG,UAAU,UAAU,EAAE;YACrC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAgB,EAAE,KAAK,EAAE,KAAK,CAAC,KAA2B,EAAE;SACnF,CAAC;QAEJ,mBAAmB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,UAAU,gBAAgB,EAAE;gBAChE,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,CAAC,OAAiB,EAAE;aAC3C,CAAC,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC;gBAAE,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5F,sEAAsE;YACtE,oEAAoE;YACpE,yDAAyD;YACzD,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;YAC9C,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,YAAY,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,CAAC;YACrE,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,OAAO;oBACL,GAAG,MAAM;oBACT,IAAI,EAAE;wBACJ,GAAI,IAAgC;wBACpC,YAAY;wBACZ,IAAI,EACF,6EAA6E;4BAC7E,iFAAiF;4BACjF,iCAAiC;qBACpC;iBACF,CAAC;YACJ,CAAC;YACD,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QACtD,CAAC;QAED,sBAAsB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CACtC,iBAAiB,CAAC,MAAM,eAAe,CAAC,KAAK,CAAC,YAAsB,CAAC,CAAC;QAExE,aAAa,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC7B,aAAa,CAAC;YACZ,KAAK,EAAE,KAAK,CAAC,KAA2B;YACxC,QAAQ,EAAE,KAAK,CAAC,QAAmC;YACnD,KAAK,EAAG,KAAK,CAAC,KAAgB,IAAI,EAAE;SACrC,CAAC;QAEJ,eAAe,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAC/B,cAAc,CAAC;YACb,KAAK,EAAE,KAAK,CAAC,KAAe;YAC5B,YAAY,EAAE,KAAK,CAAC,YAAoC;SACzD,CAAC;QAEJ,gBAAgB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;YAChC,MAAM,MAAM,GAAqB;gBAC/B,KAAK,EAAE,KAAK,CAAC,KAAe;gBAC5B,YAAY,EAAE,KAAK,CAAC,YAAoC;gBACxD,SAAS,EAAE,KAAK,CAAC,SAA+B;gBAChD,SAAS,EAAE,KAAK,CAAC,SAA+B;gBAChD,SAAS,EAAE,KAAK,CAAC,SAA+B;gBAChD,IAAI,EAAE,KAAK,CAAC,IAA0B;gBACtC,KAAK,EAAE,KAAK,CAAC,KAA2B;aACzC,CAAC;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,GAAG,SAAS,cAAc,EAAE;gBAC7D,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,MAAM;aACb,CAAC,CAAC;YACH,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7D,CAAC;QAED,iBAAiB,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,CAAC,OAAiB,CAAC;KAC5E,CAAC;IAEF,gDAAgD;IAChD,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,OAAO;YACL,KAAK,EAAE,CAAC,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC;YAChC,QAAQ,EAAE,EAAE,GAAG,QAAQ,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE;SAC5C,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC7B,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,SAAS,CAAC,IAAU;IAClC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO;QACL,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC9B,IAAI,EAAE,UAAmB;YACzB,QAAQ,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,UAAU,EAAE,CAAC,CAAC,YAAY;aAC3B;SACF,CAAC,CAAC;QACH,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;AACJ,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,SAAS,CAAC,IAAU;IAClC,MAAM,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;IAC/B,OAAO;QACL,KAAK,EAAE;YACL;gBACE,oBAAoB,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC7C,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;oBAC1B,UAAU,EAAE,CAAC,CAAC,YAAY;iBAC3B,CAAC,CAAC;aACJ;SACF;QACD,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xona-labs/xpay",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.23",
|
|
4
4
|
"mcpName": "io.github.xona-labs/xpay",
|
|
5
5
|
"description": "Discovery and usage layer for agentic commerce — multi-network wallet, x402 payments, AgenC marketplace hires, 20k+ services via PayAI and other catalogs",
|
|
6
6
|
"type": "module",
|