@elizaos/plugin-polymarket-app 2.0.3-beta.6 → 2.0.3-beta.7

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.
Files changed (95) hide show
  1. package/dist/PolymarketAppView.d.ts +3 -0
  2. package/dist/PolymarketAppView.d.ts.map +1 -0
  3. package/dist/PolymarketAppView.helpers.d.ts +10 -0
  4. package/dist/PolymarketAppView.helpers.d.ts.map +1 -0
  5. package/dist/PolymarketAppView.helpers.js +30 -0
  6. package/dist/PolymarketAppView.helpers.js.map +1 -0
  7. package/dist/PolymarketAppView.interact.d.ts +3 -0
  8. package/dist/PolymarketAppView.interact.d.ts.map +1 -0
  9. package/dist/PolymarketAppView.interact.js +70 -0
  10. package/dist/PolymarketAppView.interact.js.map +1 -0
  11. package/dist/PolymarketAppView.js +704 -0
  12. package/dist/PolymarketAppView.js.map +1 -0
  13. package/dist/PolymarketPositionsPanel.d.ts +13 -0
  14. package/dist/PolymarketPositionsPanel.d.ts.map +1 -0
  15. package/dist/PolymarketPositionsPanel.js +349 -0
  16. package/dist/PolymarketPositionsPanel.js.map +1 -0
  17. package/dist/PolymarketView.d.ts +13 -0
  18. package/dist/PolymarketView.d.ts.map +1 -0
  19. package/dist/PolymarketView.js +58 -0
  20. package/dist/PolymarketView.js.map +1 -0
  21. package/dist/__fixtures__/contract.d.ts +9 -0
  22. package/dist/__fixtures__/contract.d.ts.map +1 -0
  23. package/dist/__fixtures__/contract.js +263 -0
  24. package/dist/__fixtures__/contract.js.map +1 -0
  25. package/dist/actions.d.ts +39 -0
  26. package/dist/actions.d.ts.map +1 -0
  27. package/dist/actions.js +661 -0
  28. package/dist/actions.js.map +1 -0
  29. package/dist/client.d.ts +25 -0
  30. package/dist/client.d.ts.map +1 -0
  31. package/dist/client.js +42 -0
  32. package/dist/client.js.map +1 -0
  33. package/dist/components/PolymarketSpatialView.d.ts +34 -0
  34. package/dist/components/PolymarketSpatialView.d.ts.map +1 -0
  35. package/dist/components/PolymarketSpatialView.js +248 -0
  36. package/dist/components/PolymarketSpatialView.js.map +1 -0
  37. package/dist/index.d.ts +14 -0
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +24 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/orderbook.d.ts +15 -0
  42. package/dist/orderbook.d.ts.map +1 -0
  43. package/dist/orderbook.js +45 -0
  44. package/dist/orderbook.js.map +1 -0
  45. package/dist/plugin.d.ts +3 -0
  46. package/dist/plugin.d.ts.map +1 -0
  47. package/dist/plugin.js +108 -0
  48. package/dist/plugin.js.map +1 -0
  49. package/dist/polymarket-app.d.ts +4 -0
  50. package/dist/polymarket-app.d.ts.map +1 -0
  51. package/dist/polymarket-app.js +18 -0
  52. package/dist/polymarket-app.js.map +1 -0
  53. package/dist/polymarket-contracts.d.ts +162 -0
  54. package/dist/polymarket-contracts.d.ts.map +1 -0
  55. package/dist/polymarket-contracts.js +16 -0
  56. package/dist/polymarket-contracts.js.map +1 -0
  57. package/dist/polymarket-view-bundle.d.ts +3 -0
  58. package/dist/polymarket-view-bundle.d.ts.map +1 -0
  59. package/dist/polymarket-view-bundle.js +7 -0
  60. package/dist/polymarket-view-bundle.js.map +1 -0
  61. package/dist/provider-text.d.ts +5 -0
  62. package/dist/provider-text.d.ts.map +1 -0
  63. package/dist/provider-text.js +44 -0
  64. package/dist/provider-text.js.map +1 -0
  65. package/dist/provider.d.ts +3 -0
  66. package/dist/provider.d.ts.map +1 -0
  67. package/dist/provider.js +21 -0
  68. package/dist/provider.js.map +1 -0
  69. package/dist/register-routes.d.ts +2 -0
  70. package/dist/register-routes.d.ts.map +1 -0
  71. package/dist/register-routes.js +6 -0
  72. package/dist/register-routes.js.map +1 -0
  73. package/dist/register-terminal-view.d.ts +15 -0
  74. package/dist/register-terminal-view.d.ts.map +1 -0
  75. package/dist/register-terminal-view.js +25 -0
  76. package/dist/register-terminal-view.js.map +1 -0
  77. package/dist/register.d.ts +2 -0
  78. package/dist/register.d.ts.map +1 -0
  79. package/dist/register.js +17 -0
  80. package/dist/register.js.map +1 -0
  81. package/dist/routes.d.ts +7 -0
  82. package/dist/routes.d.ts.map +1 -0
  83. package/dist/routes.js +455 -0
  84. package/dist/routes.js.map +1 -0
  85. package/dist/ui.d.ts +6 -0
  86. package/dist/ui.d.ts.map +1 -0
  87. package/dist/ui.js +11 -0
  88. package/dist/ui.js.map +1 -0
  89. package/dist/usePolymarketState.d.ts +13 -0
  90. package/dist/usePolymarketState.d.ts.map +1 -0
  91. package/dist/usePolymarketState.js +59 -0
  92. package/dist/usePolymarketState.js.map +1 -0
  93. package/dist/views/bundle.js +535 -0
  94. package/dist/views/bundle.js.map +1 -0
  95. package/package.json +6 -6
@@ -0,0 +1,3 @@
1
+ import type { OverlayAppContext } from "@elizaos/app-core";
2
+ export declare function PolymarketAppView({ exitToApps, t }: OverlayAppContext): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=PolymarketAppView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PolymarketAppView.d.ts","sourceRoot":"","sources":["../src/PolymarketAppView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAoC3D,wBAAgB,iBAAiB,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,EAAE,iBAAiB,2CAkHrE"}
@@ -0,0 +1,10 @@
1
+ import "./client";
2
+ import type { PolymarketDisabledResponse, PolymarketMarketsResponse, PolymarketPositionsResponse, PolymarketStatusResponse } from "./polymarket-contracts";
3
+ export declare function loadPolymarketTuiState(user?: string): Promise<{
4
+ status: PolymarketStatusResponse;
5
+ markets: PolymarketMarketsResponse;
6
+ orders: PolymarketDisabledResponse;
7
+ positions: PolymarketPositionsResponse | null;
8
+ }>;
9
+ export declare function postPolymarketCommand(path: string, body: Record<string, unknown>): Promise<unknown>;
10
+ //# sourceMappingURL=PolymarketAppView.helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PolymarketAppView.helpers.d.ts","sourceRoot":"","sources":["../src/PolymarketAppView.helpers.ts"],"names":[],"mappings":"AAKA,OAAO,UAAU,CAAC;AAElB,OAAO,KAAK,EACV,0BAA0B,EAC1B,yBAAyB,EACzB,2BAA2B,EAC3B,wBAAwB,EACzB,MAAM,wBAAwB,CAAC;AAEhC,wBAAsB,sBAAsB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACnE,MAAM,EAAE,wBAAwB,CAAC;IACjC,OAAO,EAAE,yBAAyB,CAAC;IACnC,MAAM,EAAE,0BAA0B,CAAC;IACnC,SAAS,EAAE,2BAA2B,GAAG,IAAI,CAAC;CAC/C,CAAC,CAWD;AAED,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,OAAO,CAAC,OAAO,CAAC,CAkBlB"}
@@ -0,0 +1,30 @@
1
+ import { client } from "@elizaos/app-core";
2
+ import "./client.js";
3
+ async function loadPolymarketTuiState(user) {
4
+ const polymarketClient = client;
5
+ const [status, markets, orders] = await Promise.all([
6
+ polymarketClient.polymarketStatus(),
7
+ polymarketClient.polymarketMarkets({ limit: 25 }),
8
+ polymarketClient.polymarketOrders()
9
+ ]);
10
+ const positions = user ? await polymarketClient.polymarketPositions(user) : null;
11
+ return { status, markets, orders, positions };
12
+ }
13
+ async function postPolymarketCommand(path, body) {
14
+ const response = await fetch(path, {
15
+ method: "POST",
16
+ headers: { "Content-Type": "application/json" },
17
+ body: JSON.stringify(body)
18
+ });
19
+ const data = await response.json().catch(() => ({}));
20
+ if (!response.ok) {
21
+ const message = typeof data === "object" && data !== null && "error" in data && typeof data.error === "string" ? data.error : `Polymarket request failed with ${response.status}`;
22
+ throw new Error(message);
23
+ }
24
+ return data;
25
+ }
26
+ export {
27
+ loadPolymarketTuiState,
28
+ postPolymarketCommand
29
+ };
30
+ //# sourceMappingURL=PolymarketAppView.helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/PolymarketAppView.helpers.ts"],"sourcesContent":["// Shared data helpers for the Polymarket `interact` capability handler\n// (in PolymarketAppView.interact.ts), which loads terminal-snapshot state for\n// the agent terminal. Kept out of the .tsx so component files export only React\n// components and stay Fast-Refresh-compatible in dev.\nimport { client } from \"@elizaos/app-core\";\nimport \"./client.js\";\nimport type { PolymarketClient } from \"./client.js\";\nimport type {\n PolymarketDisabledResponse,\n PolymarketMarketsResponse,\n PolymarketPositionsResponse,\n PolymarketStatusResponse,\n} from \"./polymarket-contracts.js\";\n\nexport async function loadPolymarketTuiState(user?: string): Promise<{\n status: PolymarketStatusResponse;\n markets: PolymarketMarketsResponse;\n orders: PolymarketDisabledResponse;\n positions: PolymarketPositionsResponse | null;\n}> {\n const polymarketClient = client as PolymarketClient;\n const [status, markets, orders] = await Promise.all([\n polymarketClient.polymarketStatus(),\n polymarketClient.polymarketMarkets({ limit: 25 }),\n polymarketClient.polymarketOrders(),\n ]);\n const positions = user\n ? await polymarketClient.polymarketPositions(user)\n : null;\n return { status, markets, orders, positions };\n}\n\nexport async function postPolymarketCommand(\n path: string,\n body: Record<string, unknown>,\n): Promise<unknown> {\n const response = await fetch(path, {\n method: \"POST\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify(body),\n });\n const data = await response.json().catch(() => ({}));\n if (!response.ok) {\n const message =\n typeof data === \"object\" &&\n data !== null &&\n \"error\" in data &&\n typeof data.error === \"string\"\n ? data.error\n : `Polymarket request failed with ${response.status}`;\n throw new Error(message);\n }\n return data;\n}\n"],"mappings":"AAIA,SAAS,cAAc;AACvB,OAAO;AASP,eAAsB,uBAAuB,MAK1C;AACD,QAAM,mBAAmB;AACzB,QAAM,CAAC,QAAQ,SAAS,MAAM,IAAI,MAAM,QAAQ,IAAI;AAAA,IAClD,iBAAiB,iBAAiB;AAAA,IAClC,iBAAiB,kBAAkB,EAAE,OAAO,GAAG,CAAC;AAAA,IAChD,iBAAiB,iBAAiB;AAAA,EACpC,CAAC;AACD,QAAM,YAAY,OACd,MAAM,iBAAiB,oBAAoB,IAAI,IAC/C;AACJ,SAAO,EAAE,QAAQ,SAAS,QAAQ,UAAU;AAC9C;AAEA,eAAsB,sBACpB,MACA,MACkB;AAClB,QAAM,WAAW,MAAM,MAAM,MAAM;AAAA,IACjC,QAAQ;AAAA,IACR,SAAS,EAAE,gBAAgB,mBAAmB;AAAA,IAC9C,MAAM,KAAK,UAAU,IAAI;AAAA,EAC3B,CAAC;AACD,QAAM,OAAO,MAAM,SAAS,KAAK,EAAE,MAAM,OAAO,CAAC,EAAE;AACnD,MAAI,CAAC,SAAS,IAAI;AAChB,UAAM,UACJ,OAAO,SAAS,YAChB,SAAS,QACT,WAAW,QACX,OAAO,KAAK,UAAU,WAClB,KAAK,QACL,kCAAkC,SAAS,MAAM;AACvD,UAAM,IAAI,MAAM,OAAO;AAAA,EACzB;AACA,SAAO;AACT;","names":[]}
@@ -0,0 +1,3 @@
1
+ import "./client";
2
+ export declare function interact(capability: string, params?: Record<string, unknown>): Promise<unknown>;
3
+ //# sourceMappingURL=PolymarketAppView.interact.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PolymarketAppView.interact.d.ts","sourceRoot":"","sources":["../src/PolymarketAppView.interact.ts"],"names":[],"mappings":"AAKA,OAAO,UAAU,CAAC;AAQlB,wBAAsB,QAAQ,CAC5B,UAAU,EAAE,MAAM,EAClB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC,OAAO,CAAC,CAsElB"}
@@ -0,0 +1,70 @@
1
+ import { client } from "@elizaos/app-core";
2
+ import "./client.js";
3
+ import {
4
+ loadPolymarketTuiState,
5
+ postPolymarketCommand
6
+ } from "./PolymarketAppView.helpers";
7
+ async function interact(capability, params) {
8
+ if (capability === "terminal-polymarket-state") {
9
+ const user = typeof params?.user === "string" ? params.user.trim() : "";
10
+ const state = await loadPolymarketTuiState(user || void 0);
11
+ return {
12
+ viewType: "tui",
13
+ status: state.status,
14
+ markets: state.markets.markets.slice(
15
+ 0,
16
+ typeof params?.limit === "number" ? params.limit : 25
17
+ ),
18
+ orders: state.orders,
19
+ positions: state.positions
20
+ };
21
+ }
22
+ if (capability === "terminal-polymarket-market") {
23
+ const id = typeof params?.id === "string" ? params.id.trim() : "";
24
+ const slug = typeof params?.slug === "string" ? params.slug.trim() : "";
25
+ const polymarketClient = client;
26
+ if (id) {
27
+ return {
28
+ viewType: "tui",
29
+ ...await polymarketClient.polymarketMarketById(id)
30
+ };
31
+ }
32
+ if (slug) {
33
+ return {
34
+ viewType: "tui",
35
+ ...await polymarketClient.polymarketMarketBySlug(slug)
36
+ };
37
+ }
38
+ throw new Error("id or slug is required");
39
+ }
40
+ if (capability === "terminal-polymarket-orderbook") {
41
+ const tokenId = typeof params?.tokenId === "string" ? params.tokenId.trim() : "";
42
+ if (!tokenId) throw new Error("tokenId is required");
43
+ const orderbook = await client.polymarketOrderbook(tokenId);
44
+ return { viewType: "tui", orderbook };
45
+ }
46
+ if (capability === "terminal-polymarket-positions") {
47
+ const user = typeof params?.user === "string" ? params.user.trim() : "";
48
+ if (!user) throw new Error("user is required");
49
+ return {
50
+ viewType: "tui",
51
+ positions: await client.polymarketPositions(user)
52
+ };
53
+ }
54
+ if (capability === "terminal-polymarket-trading-check") {
55
+ return {
56
+ viewType: "tui",
57
+ result: await postPolymarketCommand("/api/polymarket/orders", {
58
+ marketId: typeof params?.marketId === "string" ? params.marketId : "",
59
+ side: typeof params?.side === "string" ? params.side : "buy",
60
+ outcome: typeof params?.outcome === "string" ? params.outcome : "",
61
+ size: typeof params?.size === "number" || typeof params?.size === "string" ? params.size : 0
62
+ })
63
+ };
64
+ }
65
+ throw new Error(`Unsupported capability "${capability}"`);
66
+ }
67
+ export {
68
+ interact
69
+ };
70
+ //# sourceMappingURL=PolymarketAppView.interact.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/PolymarketAppView.interact.ts"],"sourcesContent":["// View-bundle `interact` capability handler, split out of PolymarketAppView.tsx\n// so that file exports only React components and stays Fast-Refresh-compatible\n// (Vite would full-reload a component file that also exports a plain function).\n// The view bundle re-exports `interact` via ./polymarket-view-bundle.ts.\nimport { client } from \"@elizaos/app-core\";\nimport \"./client.js\";\nimport type { PolymarketClient } from \"./client.js\";\nimport {\n loadPolymarketTuiState,\n postPolymarketCommand,\n} from \"./PolymarketAppView.helpers\";\nimport type { PolymarketOrderbookResponse } from \"./polymarket-contracts.js\";\n\nexport async function interact(\n capability: string,\n params?: Record<string, unknown>,\n): Promise<unknown> {\n if (capability === \"terminal-polymarket-state\") {\n const user = typeof params?.user === \"string\" ? params.user.trim() : \"\";\n const state = await loadPolymarketTuiState(user || undefined);\n return {\n viewType: \"tui\",\n status: state.status,\n markets: state.markets.markets.slice(\n 0,\n typeof params?.limit === \"number\" ? params.limit : 25,\n ),\n orders: state.orders,\n positions: state.positions,\n };\n }\n\n if (capability === \"terminal-polymarket-market\") {\n const id = typeof params?.id === \"string\" ? params.id.trim() : \"\";\n const slug = typeof params?.slug === \"string\" ? params.slug.trim() : \"\";\n const polymarketClient = client as PolymarketClient;\n if (id) {\n return {\n viewType: \"tui\",\n ...(await polymarketClient.polymarketMarketById(id)),\n };\n }\n if (slug) {\n return {\n viewType: \"tui\",\n ...(await polymarketClient.polymarketMarketBySlug(slug)),\n };\n }\n throw new Error(\"id or slug is required\");\n }\n\n if (capability === \"terminal-polymarket-orderbook\") {\n const tokenId =\n typeof params?.tokenId === \"string\" ? params.tokenId.trim() : \"\";\n if (!tokenId) throw new Error(\"tokenId is required\");\n const orderbook: PolymarketOrderbookResponse = await (\n client as PolymarketClient\n ).polymarketOrderbook(tokenId);\n return { viewType: \"tui\", orderbook };\n }\n\n if (capability === \"terminal-polymarket-positions\") {\n const user = typeof params?.user === \"string\" ? params.user.trim() : \"\";\n if (!user) throw new Error(\"user is required\");\n return {\n viewType: \"tui\",\n positions: await (client as PolymarketClient).polymarketPositions(user),\n };\n }\n\n if (capability === \"terminal-polymarket-trading-check\") {\n return {\n viewType: \"tui\",\n result: await postPolymarketCommand(\"/api/polymarket/orders\", {\n marketId: typeof params?.marketId === \"string\" ? params.marketId : \"\",\n side: typeof params?.side === \"string\" ? params.side : \"buy\",\n outcome: typeof params?.outcome === \"string\" ? params.outcome : \"\",\n size:\n typeof params?.size === \"number\" || typeof params?.size === \"string\"\n ? params.size\n : 0,\n }),\n };\n }\n\n throw new Error(`Unsupported capability \"${capability}\"`);\n}\n"],"mappings":"AAIA,SAAS,cAAc;AACvB,OAAO;AAEP;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAGP,eAAsB,SACpB,YACA,QACkB;AAClB,MAAI,eAAe,6BAA6B;AAC9C,UAAM,OAAO,OAAO,QAAQ,SAAS,WAAW,OAAO,KAAK,KAAK,IAAI;AACrE,UAAM,QAAQ,MAAM,uBAAuB,QAAQ,MAAS;AAC5D,WAAO;AAAA,MACL,UAAU;AAAA,MACV,QAAQ,MAAM;AAAA,MACd,SAAS,MAAM,QAAQ,QAAQ;AAAA,QAC7B;AAAA,QACA,OAAO,QAAQ,UAAU,WAAW,OAAO,QAAQ;AAAA,MACrD;AAAA,MACA,QAAQ,MAAM;AAAA,MACd,WAAW,MAAM;AAAA,IACnB;AAAA,EACF;AAEA,MAAI,eAAe,8BAA8B;AAC/C,UAAM,KAAK,OAAO,QAAQ,OAAO,WAAW,OAAO,GAAG,KAAK,IAAI;AAC/D,UAAM,OAAO,OAAO,QAAQ,SAAS,WAAW,OAAO,KAAK,KAAK,IAAI;AACrE,UAAM,mBAAmB;AACzB,QAAI,IAAI;AACN,aAAO;AAAA,QACL,UAAU;AAAA,QACV,GAAI,MAAM,iBAAiB,qBAAqB,EAAE;AAAA,MACpD;AAAA,IACF;AACA,QAAI,MAAM;AACR,aAAO;AAAA,QACL,UAAU;AAAA,QACV,GAAI,MAAM,iBAAiB,uBAAuB,IAAI;AAAA,MACxD;AAAA,IACF;AACA,UAAM,IAAI,MAAM,wBAAwB;AAAA,EAC1C;AAEA,MAAI,eAAe,iCAAiC;AAClD,UAAM,UACJ,OAAO,QAAQ,YAAY,WAAW,OAAO,QAAQ,KAAK,IAAI;AAChE,QAAI,CAAC,QAAS,OAAM,IAAI,MAAM,qBAAqB;AACnD,UAAM,YAAyC,MAC7C,OACA,oBAAoB,OAAO;AAC7B,WAAO,EAAE,UAAU,OAAO,UAAU;AAAA,EACtC;AAEA,MAAI,eAAe,iCAAiC;AAClD,UAAM,OAAO,OAAO,QAAQ,SAAS,WAAW,OAAO,KAAK,KAAK,IAAI;AACrE,QAAI,CAAC,KAAM,OAAM,IAAI,MAAM,kBAAkB;AAC7C,WAAO;AAAA,MACL,UAAU;AAAA,MACV,WAAW,MAAO,OAA4B,oBAAoB,IAAI;AAAA,IACxE;AAAA,EACF;AAEA,MAAI,eAAe,qCAAqC;AACtD,WAAO;AAAA,MACL,UAAU;AAAA,MACV,QAAQ,MAAM,sBAAsB,0BAA0B;AAAA,QAC5D,UAAU,OAAO,QAAQ,aAAa,WAAW,OAAO,WAAW;AAAA,QACnE,MAAM,OAAO,QAAQ,SAAS,WAAW,OAAO,OAAO;AAAA,QACvD,SAAS,OAAO,QAAQ,YAAY,WAAW,OAAO,UAAU;AAAA,QAChE,MACE,OAAO,QAAQ,SAAS,YAAY,OAAO,QAAQ,SAAS,WACxD,OAAO,OACP;AAAA,MACR,CAAC;AAAA,IACH;AAAA,EACF;AAEA,QAAM,IAAI,MAAM,2BAA2B,UAAU,GAAG;AAC1D;","names":[]}