@medialane/ui 0.185.0 → 0.187.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.
Files changed (197) hide show
  1. package/dist/components/fast-mint/fast-mint.d.cts +2 -2
  2. package/dist/components/fast-mint/fast-mint.d.ts +2 -2
  3. package/dist/components/media-wallet/action-button.cjs +54 -0
  4. package/dist/components/media-wallet/action-button.cjs.map +1 -0
  5. package/dist/components/media-wallet/action-button.d.cts +10 -0
  6. package/dist/components/media-wallet/action-button.d.ts +10 -0
  7. package/dist/components/media-wallet/action-button.js +28 -0
  8. package/dist/components/media-wallet/action-button.js.map +1 -0
  9. package/dist/components/media-wallet/action-modal.cjs +84 -0
  10. package/dist/components/media-wallet/action-modal.cjs.map +1 -0
  11. package/dist/components/media-wallet/action-modal.d.cts +20 -0
  12. package/dist/components/media-wallet/action-modal.d.ts +20 -0
  13. package/dist/components/media-wallet/action-modal.js +56 -0
  14. package/dist/components/media-wallet/action-modal.js.map +1 -0
  15. package/dist/components/media-wallet/activate-card.cjs +72 -0
  16. package/dist/components/media-wallet/activate-card.cjs.map +1 -0
  17. package/dist/components/media-wallet/activate-card.d.cts +7 -0
  18. package/dist/components/media-wallet/activate-card.d.ts +7 -0
  19. package/dist/components/media-wallet/activate-card.js +48 -0
  20. package/dist/components/media-wallet/activate-card.js.map +1 -0
  21. package/dist/components/media-wallet/address-qr.cjs +64 -0
  22. package/dist/components/media-wallet/address-qr.cjs.map +1 -0
  23. package/dist/components/media-wallet/address-qr.d.cts +8 -0
  24. package/dist/components/media-wallet/address-qr.d.ts +8 -0
  25. package/dist/components/media-wallet/address-qr.js +30 -0
  26. package/dist/components/media-wallet/address-qr.js.map +1 -0
  27. package/dist/components/media-wallet/back-button.cjs +41 -0
  28. package/dist/components/media-wallet/back-button.cjs.map +1 -0
  29. package/dist/components/media-wallet/back-button.d.cts +7 -0
  30. package/dist/components/media-wallet/back-button.d.ts +7 -0
  31. package/dist/components/media-wallet/back-button.js +17 -0
  32. package/dist/components/media-wallet/back-button.js.map +1 -0
  33. package/dist/components/media-wallet/copy-icon.cjs +49 -0
  34. package/dist/components/media-wallet/copy-icon.cjs.map +1 -0
  35. package/dist/components/media-wallet/copy-icon.d.cts +7 -0
  36. package/dist/components/media-wallet/copy-icon.d.ts +7 -0
  37. package/dist/components/media-wallet/copy-icon.js +25 -0
  38. package/dist/components/media-wallet/copy-icon.js.map +1 -0
  39. package/dist/components/media-wallet/currency-sheet.cjs +54 -0
  40. package/dist/components/media-wallet/currency-sheet.cjs.map +1 -0
  41. package/dist/components/media-wallet/currency-sheet.d.cts +12 -0
  42. package/dist/components/media-wallet/currency-sheet.d.ts +12 -0
  43. package/dist/components/media-wallet/currency-sheet.js +30 -0
  44. package/dist/components/media-wallet/currency-sheet.js.map +1 -0
  45. package/dist/components/media-wallet/media-wallet-activity.cjs +223 -0
  46. package/dist/components/media-wallet/media-wallet-activity.cjs.map +1 -0
  47. package/dist/components/media-wallet/media-wallet-activity.d.cts +12 -0
  48. package/dist/components/media-wallet/media-wallet-activity.d.ts +12 -0
  49. package/dist/components/media-wallet/media-wallet-activity.js +189 -0
  50. package/dist/components/media-wallet/media-wallet-activity.js.map +1 -0
  51. package/dist/components/media-wallet/media-wallet-header.cjs +97 -0
  52. package/dist/components/media-wallet/media-wallet-header.cjs.map +1 -0
  53. package/dist/components/media-wallet/media-wallet-header.d.cts +8 -0
  54. package/dist/components/media-wallet/media-wallet-header.d.ts +8 -0
  55. package/dist/components/media-wallet/media-wallet-header.js +63 -0
  56. package/dist/components/media-wallet/media-wallet-header.js.map +1 -0
  57. package/dist/components/media-wallet/media-wallet-home.cjs +258 -0
  58. package/dist/components/media-wallet/media-wallet-home.cjs.map +1 -0
  59. package/dist/components/media-wallet/media-wallet-home.d.cts +14 -0
  60. package/dist/components/media-wallet/media-wallet-home.d.ts +14 -0
  61. package/dist/components/media-wallet/media-wallet-home.js +224 -0
  62. package/dist/components/media-wallet/media-wallet-home.js.map +1 -0
  63. package/dist/components/media-wallet/media-wallet-overlay.cjs +137 -0
  64. package/dist/components/media-wallet/media-wallet-overlay.cjs.map +1 -0
  65. package/dist/components/media-wallet/media-wallet-overlay.d.cts +14 -0
  66. package/dist/components/media-wallet/media-wallet-overlay.d.ts +14 -0
  67. package/dist/components/media-wallet/media-wallet-overlay.js +102 -0
  68. package/dist/components/media-wallet/media-wallet-overlay.js.map +1 -0
  69. package/dist/components/media-wallet/media-wallet-send.cjs +313 -0
  70. package/dist/components/media-wallet/media-wallet-send.cjs.map +1 -0
  71. package/dist/components/media-wallet/media-wallet-send.d.cts +14 -0
  72. package/dist/components/media-wallet/media-wallet-send.d.ts +14 -0
  73. package/dist/components/media-wallet/media-wallet-send.js +289 -0
  74. package/dist/components/media-wallet/media-wallet-send.js.map +1 -0
  75. package/dist/components/media-wallet/media-wallet-token-detail.cjs +164 -0
  76. package/dist/components/media-wallet/media-wallet-token-detail.cjs.map +1 -0
  77. package/dist/components/media-wallet/media-wallet-token-detail.d.cts +13 -0
  78. package/dist/components/media-wallet/media-wallet-token-detail.d.ts +13 -0
  79. package/dist/components/media-wallet/media-wallet-token-detail.js +140 -0
  80. package/dist/components/media-wallet/media-wallet-token-detail.js.map +1 -0
  81. package/dist/components/media-wallet/media-wallet.cjs +51 -0
  82. package/dist/components/media-wallet/media-wallet.cjs.map +1 -0
  83. package/dist/components/media-wallet/media-wallet.d.cts +13 -0
  84. package/dist/components/media-wallet/media-wallet.d.ts +13 -0
  85. package/dist/components/media-wallet/media-wallet.js +27 -0
  86. package/dist/components/media-wallet/media-wallet.js.map +1 -0
  87. package/dist/components/media-wallet/nft-strip.cjs +85 -0
  88. package/dist/components/media-wallet/nft-strip.cjs.map +1 -0
  89. package/dist/components/media-wallet/nft-strip.d.cts +12 -0
  90. package/dist/components/media-wallet/nft-strip.d.ts +12 -0
  91. package/dist/components/media-wallet/nft-strip.js +51 -0
  92. package/dist/components/media-wallet/nft-strip.js.map +1 -0
  93. package/dist/components/media-wallet/quick-action.cjs +59 -0
  94. package/dist/components/media-wallet/quick-action.cjs.map +1 -0
  95. package/dist/components/media-wallet/quick-action.d.cts +12 -0
  96. package/dist/components/media-wallet/quick-action.d.ts +12 -0
  97. package/dist/components/media-wallet/quick-action.js +35 -0
  98. package/dist/components/media-wallet/quick-action.js.map +1 -0
  99. package/dist/components/media-wallet/receive-card.cjs +86 -0
  100. package/dist/components/media-wallet/receive-card.cjs.map +1 -0
  101. package/dist/components/media-wallet/receive-card.d.cts +7 -0
  102. package/dist/components/media-wallet/receive-card.d.ts +7 -0
  103. package/dist/components/media-wallet/receive-card.js +52 -0
  104. package/dist/components/media-wallet/receive-card.js.map +1 -0
  105. package/dist/components/media-wallet/section-header.cjs +32 -0
  106. package/dist/components/media-wallet/section-header.cjs.map +1 -0
  107. package/dist/components/media-wallet/section-header.d.cts +7 -0
  108. package/dist/components/media-wallet/section-header.d.ts +7 -0
  109. package/dist/components/media-wallet/section-header.js +8 -0
  110. package/dist/components/media-wallet/section-header.js.map +1 -0
  111. package/dist/components/media-wallet/success-dialog.cjs +75 -0
  112. package/dist/components/media-wallet/success-dialog.cjs.map +1 -0
  113. package/dist/components/media-wallet/success-dialog.d.cts +11 -0
  114. package/dist/components/media-wallet/success-dialog.d.ts +11 -0
  115. package/dist/components/media-wallet/success-dialog.js +51 -0
  116. package/dist/components/media-wallet/success-dialog.js.map +1 -0
  117. package/dist/components/media-wallet/types.cjs +37 -0
  118. package/dist/components/media-wallet/types.cjs.map +1 -0
  119. package/dist/components/media-wallet/types.d.cts +66 -0
  120. package/dist/components/media-wallet/types.d.ts +66 -0
  121. package/dist/components/media-wallet/types.js +12 -0
  122. package/dist/components/media-wallet/types.js.map +1 -0
  123. package/dist/components/media-wallet/wallet-activity-icon.cjs +69 -0
  124. package/dist/components/media-wallet/wallet-activity-icon.cjs.map +1 -0
  125. package/dist/components/media-wallet/wallet-activity-icon.d.cts +8 -0
  126. package/dist/components/media-wallet/wallet-activity-icon.d.ts +8 -0
  127. package/dist/components/media-wallet/wallet-activity-icon.js +45 -0
  128. package/dist/components/media-wallet/wallet-activity-icon.js.map +1 -0
  129. package/dist/components/sheet.d.cts +1 -1
  130. package/dist/components/sheet.d.ts +1 -1
  131. package/dist/index.cjs +5 -0
  132. package/dist/index.cjs.map +1 -1
  133. package/dist/index.d.cts +3 -0
  134. package/dist/index.d.ts +3 -0
  135. package/dist/index.js +3 -0
  136. package/dist/index.js.map +1 -1
  137. package/dist/utils/app-wallet.cjs +10 -3
  138. package/dist/utils/app-wallet.cjs.map +1 -1
  139. package/dist/utils/app-wallet.d.cts +6 -1
  140. package/dist/utils/app-wallet.d.ts +6 -1
  141. package/dist/utils/app-wallet.js +9 -3
  142. package/dist/utils/app-wallet.js.map +1 -1
  143. package/dist/utils/media-wallet/activity-feed.cjs +35 -0
  144. package/dist/utils/media-wallet/activity-feed.cjs.map +1 -0
  145. package/dist/utils/media-wallet/activity-feed.d.cts +14 -0
  146. package/dist/utils/media-wallet/activity-feed.d.ts +14 -0
  147. package/dist/utils/media-wallet/activity-feed.js +11 -0
  148. package/dist/utils/media-wallet/activity-feed.js.map +1 -0
  149. package/dist/utils/media-wallet/confetti.cjs +51 -0
  150. package/dist/utils/media-wallet/confetti.cjs.map +1 -0
  151. package/dist/utils/media-wallet/confetti.d.cts +3 -0
  152. package/dist/utils/media-wallet/confetti.d.ts +3 -0
  153. package/dist/utils/media-wallet/confetti.js +17 -0
  154. package/dist/utils/media-wallet/confetti.js.map +1 -0
  155. package/dist/utils/media-wallet/nft-items.cjs +38 -0
  156. package/dist/utils/media-wallet/nft-items.cjs.map +1 -0
  157. package/dist/utils/media-wallet/nft-items.d.cts +13 -0
  158. package/dist/utils/media-wallet/nft-items.d.ts +13 -0
  159. package/dist/utils/media-wallet/nft-items.js +14 -0
  160. package/dist/utils/media-wallet/nft-items.js.map +1 -0
  161. package/dist/utils/media-wallet/run-intent-calls.cjs +32 -0
  162. package/dist/utils/media-wallet/run-intent-calls.cjs.map +1 -0
  163. package/dist/utils/media-wallet/run-intent-calls.d.cts +16 -0
  164. package/dist/utils/media-wallet/run-intent-calls.d.ts +16 -0
  165. package/dist/utils/media-wallet/run-intent-calls.js +8 -0
  166. package/dist/utils/media-wallet/run-intent-calls.js.map +1 -0
  167. package/dist/utils/media-wallet/use-erc20-balance.cjs +75 -0
  168. package/dist/utils/media-wallet/use-erc20-balance.cjs.map +1 -0
  169. package/dist/utils/media-wallet/use-erc20-balance.d.cts +15 -0
  170. package/dist/utils/media-wallet/use-erc20-balance.d.ts +15 -0
  171. package/dist/utils/media-wallet/use-erc20-balance.js +40 -0
  172. package/dist/utils/media-wallet/use-erc20-balance.js.map +1 -0
  173. package/dist/utils/media-wallet/use-tokens-by-owner.cjs +52 -0
  174. package/dist/utils/media-wallet/use-tokens-by-owner.cjs.map +1 -0
  175. package/dist/utils/media-wallet/use-tokens-by-owner.d.cts +10 -0
  176. package/dist/utils/media-wallet/use-tokens-by-owner.d.ts +10 -0
  177. package/dist/utils/media-wallet/use-tokens-by-owner.js +18 -0
  178. package/dist/utils/media-wallet/use-tokens-by-owner.js.map +1 -0
  179. package/dist/utils/media-wallet/wallet-activity.cjs +83 -0
  180. package/dist/utils/media-wallet/wallet-activity.cjs.map +1 -0
  181. package/dist/utils/media-wallet/wallet-activity.d.cts +7 -0
  182. package/dist/utils/media-wallet/wallet-activity.d.ts +7 -0
  183. package/dist/utils/media-wallet/wallet-activity.js +57 -0
  184. package/dist/utils/media-wallet/wallet-activity.js.map +1 -0
  185. package/dist/utils/media-wallet/wallet-format.cjs +59 -0
  186. package/dist/utils/media-wallet/wallet-format.cjs.map +1 -0
  187. package/dist/utils/media-wallet/wallet-format.d.cts +9 -0
  188. package/dist/utils/media-wallet/wallet-format.d.ts +9 -0
  189. package/dist/utils/media-wallet/wallet-format.js +29 -0
  190. package/dist/utils/media-wallet/wallet-format.js.map +1 -0
  191. package/dist/utils/media-wallet/wallet-tokens.cjs +39 -0
  192. package/dist/utils/media-wallet/wallet-tokens.cjs.map +1 -0
  193. package/dist/utils/media-wallet/wallet-tokens.d.cts +10 -0
  194. package/dist/utils/media-wallet/wallet-tokens.d.ts +10 -0
  195. package/dist/utils/media-wallet/wallet-tokens.js +15 -0
  196. package/dist/utils/media-wallet/wallet-tokens.js.map +1 -0
  197. package/package.json +11 -3
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/address-qr.tsx"],"sourcesContent":["\"use client\";\n\nimport qrcode from \"qrcode-generator\";\n\nexport function AddressQr({ value, size = 200 }: { value: string; size?: number }) {\n const qr = qrcode(0, \"M\");\n qr.addData(value);\n qr.make();\n const count = qr.getModuleCount();\n const cell = size / count;\n\n return (\n <div className=\"mx-auto w-fit rounded-2xl bg-white p-4\">\n <svg width={size} height={size} viewBox={`0 0 ${size} ${size}`}>\n {Array.from({ length: count }).flatMap((_, row) =>\n Array.from({ length: count }).map((_, col) =>\n qr.isDark(row, col) ? (\n <rect\n key={`${row}-${col}`}\n x={col * cell}\n y={row * cell}\n width={cell}\n height={cell}\n rx={cell * 0.2}\n fill=\"#111111\"\n />\n ) : null\n ),\n )}\n </svg>\n </div>\n );\n}\n"],"mappings":";AAiBc;AAfd,OAAO,YAAY;AAEZ,SAAS,UAAU,EAAE,OAAO,OAAO,IAAI,GAAqC;AACjF,QAAM,KAAK,OAAO,GAAG,GAAG;AACxB,KAAG,QAAQ,KAAK;AAChB,KAAG,KAAK;AACR,QAAM,QAAQ,GAAG,eAAe;AAChC,QAAM,OAAO,OAAO;AAEpB,SACE,oBAAC,SAAI,WAAU,0CACb,8BAAC,SAAI,OAAO,MAAM,QAAQ,MAAM,SAAS,OAAO,IAAI,IAAI,IAAI,IACzD,gBAAM,KAAK,EAAE,QAAQ,MAAM,CAAC,EAAE;AAAA,IAAQ,CAAC,GAAG,QACzC,MAAM,KAAK,EAAE,QAAQ,MAAM,CAAC,EAAE;AAAA,MAAI,CAACA,IAAG,QACpC,GAAG,OAAO,KAAK,GAAG,IAChB;AAAA,QAAC;AAAA;AAAA,UAEC,GAAG,MAAM;AAAA,UACT,GAAG,MAAM;AAAA,UACT,OAAO;AAAA,UACP,QAAQ;AAAA,UACR,IAAI,OAAO;AAAA,UACX,MAAK;AAAA;AAAA,QANA,GAAG,GAAG,IAAI,GAAG;AAAA,MAOpB,IACE;AAAA,IACN;AAAA,EACF,GACF,GACF;AAEJ;","names":["_"]}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var back_button_exports = {};
21
+ __export(back_button_exports, {
22
+ BackButton: () => BackButton
23
+ });
24
+ module.exports = __toCommonJS(back_button_exports);
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ function BackButton({ onBack }) {
27
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
28
+ "button",
29
+ {
30
+ onClick: onBack,
31
+ "aria-label": "Back",
32
+ className: "glass grid h-10 w-10 place-items-center rounded-full text-foreground",
33
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M15 18l-6-6 6-6" }) })
34
+ }
35
+ );
36
+ }
37
+ // Annotate the CommonJS export names for ESM import in node:
38
+ 0 && (module.exports = {
39
+ BackButton
40
+ });
41
+ //# sourceMappingURL=back-button.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/back-button.tsx"],"sourcesContent":["\"use client\";\n\nexport function BackButton({ onBack }: { onBack: () => void }) {\n return (\n <button\n onClick={onBack}\n aria-label=\"Back\"\n className=\"glass grid h-10 w-10 place-items-center rounded-full text-foreground\"\n >\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUQ;AARD,SAAS,WAAW,EAAE,OAAO,GAA2B;AAC7D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,cAAW;AAAA,MACX,WAAU;AAAA,MAEV,sDAAC,SAAI,OAAM,MAAK,QAAO,MAAK,SAAQ,aAAY,MAAK,QAAO,QAAO,gBAAe,aAAY,OAAM,eAAc,SAAQ,gBAAe,SACvI,sDAAC,UAAK,GAAE,mBAAkB,GAC5B;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare function BackButton({ onBack }: {
4
+ onBack: () => void;
5
+ }): react_jsx_runtime.JSX.Element;
6
+
7
+ export { BackButton };
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare function BackButton({ onBack }: {
4
+ onBack: () => void;
5
+ }): react_jsx_runtime.JSX.Element;
6
+
7
+ export { BackButton };
@@ -0,0 +1,17 @@
1
+ "use client";
2
+ import { jsx } from "react/jsx-runtime";
3
+ function BackButton({ onBack }) {
4
+ return /* @__PURE__ */ jsx(
5
+ "button",
6
+ {
7
+ onClick: onBack,
8
+ "aria-label": "Back",
9
+ className: "glass grid h-10 w-10 place-items-center rounded-full text-foreground",
10
+ children: /* @__PURE__ */ jsx("svg", { width: "18", height: "18", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2.2", strokeLinecap: "round", strokeLinejoin: "round", children: /* @__PURE__ */ jsx("path", { d: "M15 18l-6-6 6-6" }) })
11
+ }
12
+ );
13
+ }
14
+ export {
15
+ BackButton
16
+ };
17
+ //# sourceMappingURL=back-button.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/back-button.tsx"],"sourcesContent":["\"use client\";\n\nexport function BackButton({ onBack }: { onBack: () => void }) {\n return (\n <button\n onClick={onBack}\n aria-label=\"Back\"\n className=\"glass grid h-10 w-10 place-items-center rounded-full text-foreground\"\n >\n <svg width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2.2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M15 18l-6-6 6-6\" />\n </svg>\n </button>\n );\n}\n"],"mappings":";AAUQ;AARD,SAAS,WAAW,EAAE,OAAO,GAA2B;AAC7D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,SAAS;AAAA,MACT,cAAW;AAAA,MACX,WAAU;AAAA,MAEV,8BAAC,SAAI,OAAM,MAAK,QAAO,MAAK,SAAQ,aAAY,MAAK,QAAO,QAAO,gBAAe,aAAY,OAAM,eAAc,SAAQ,gBAAe,SACvI,8BAAC,UAAK,GAAE,mBAAkB,GAC5B;AAAA;AAAA,EACF;AAEJ;","names":[]}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var copy_icon_exports = {};
20
+ __export(copy_icon_exports, {
21
+ CopyIcon: () => CopyIcon
22
+ });
23
+ module.exports = __toCommonJS(copy_icon_exports);
24
+ var import_jsx_runtime = require("react/jsx-runtime");
25
+ function CopyIcon({ className }) {
26
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
27
+ "svg",
28
+ {
29
+ width: "16",
30
+ height: "16",
31
+ viewBox: "0 0 24 24",
32
+ fill: "none",
33
+ stroke: "currentColor",
34
+ strokeWidth: "2",
35
+ strokeLinecap: "round",
36
+ strokeLinejoin: "round",
37
+ className,
38
+ children: [
39
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2" }),
40
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1" })
41
+ ]
42
+ }
43
+ );
44
+ }
45
+ // Annotate the CommonJS export names for ESM import in node:
46
+ 0 && (module.exports = {
47
+ CopyIcon
48
+ });
49
+ //# sourceMappingURL=copy-icon.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/copy-icon.tsx"],"sourcesContent":["export function CopyIcon({ className }: { className?: string }) {\n return (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={className}\n >\n <rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" />\n <path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\" />\n </svg>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAEI;AAFG,SAAS,SAAS,EAAE,UAAU,GAA2B;AAC9D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,QAAO;AAAA,MACP,aAAY;AAAA,MACZ,eAAc;AAAA,MACd,gBAAe;AAAA,MACf;AAAA,MAEA;AAAA,oDAAC,UAAK,GAAE,KAAI,GAAE,KAAI,OAAM,MAAK,QAAO,MAAK,IAAG,KAAI;AAAA,QAChD,4CAAC,UAAK,GAAE,sDAAqD;AAAA;AAAA;AAAA,EAC/D;AAEJ;","names":[]}
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare function CopyIcon({ className }: {
4
+ className?: string;
5
+ }): react_jsx_runtime.JSX.Element;
6
+
7
+ export { CopyIcon };
@@ -0,0 +1,7 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+
3
+ declare function CopyIcon({ className }: {
4
+ className?: string;
5
+ }): react_jsx_runtime.JSX.Element;
6
+
7
+ export { CopyIcon };
@@ -0,0 +1,25 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ function CopyIcon({ className }) {
3
+ return /* @__PURE__ */ jsxs(
4
+ "svg",
5
+ {
6
+ width: "16",
7
+ height: "16",
8
+ viewBox: "0 0 24 24",
9
+ fill: "none",
10
+ stroke: "currentColor",
11
+ strokeWidth: "2",
12
+ strokeLinecap: "round",
13
+ strokeLinejoin: "round",
14
+ className,
15
+ children: [
16
+ /* @__PURE__ */ jsx("rect", { x: "9", y: "9", width: "13", height: "13", rx: "2" }),
17
+ /* @__PURE__ */ jsx("path", { d: "M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1" })
18
+ ]
19
+ }
20
+ );
21
+ }
22
+ export {
23
+ CopyIcon
24
+ };
25
+ //# sourceMappingURL=copy-icon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/copy-icon.tsx"],"sourcesContent":["export function CopyIcon({ className }: { className?: string }) {\n return (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n className={className}\n >\n <rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\" />\n <path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\" />\n </svg>\n );\n}\n"],"mappings":"AAEI,SAWE,KAXF;AAFG,SAAS,SAAS,EAAE,UAAU,GAA2B;AAC9D,SACE;AAAA,IAAC;AAAA;AAAA,MACC,OAAM;AAAA,MACN,QAAO;AAAA,MACP,SAAQ;AAAA,MACR,MAAK;AAAA,MACL,QAAO;AAAA,MACP,aAAY;AAAA,MACZ,eAAc;AAAA,MACd,gBAAe;AAAA,MACf;AAAA,MAEA;AAAA,4BAAC,UAAK,GAAE,KAAI,GAAE,KAAI,OAAM,MAAK,QAAO,MAAK,IAAG,KAAI;AAAA,QAChD,oBAAC,UAAK,GAAE,sDAAqD;AAAA;AAAA;AAAA,EAC/D;AAEJ;","names":[]}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var currency_sheet_exports = {};
21
+ __export(currency_sheet_exports, {
22
+ CurrencySheet: () => CurrencySheet
23
+ });
24
+ module.exports = __toCommonJS(currency_sheet_exports);
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ var import_currency_icon = require("../currency-icon.js");
27
+ var import_action_modal = require("./action-modal.js");
28
+ var import_wallet_format = require("../../utils/media-wallet/wallet-format.js");
29
+ function CurrencySheet({
30
+ title,
31
+ tokens,
32
+ balances,
33
+ onSelect,
34
+ onClose
35
+ }) {
36
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_action_modal.ActionModal, { title, onClose, children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex flex-col divide-y divide-border/40", children: tokens.map((t) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
37
+ "button",
38
+ {
39
+ onClick: () => onSelect(t),
40
+ className: "flex items-center gap-3 py-3 text-left transition-opacity active:opacity-70",
41
+ children: [
42
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_currency_icon.CurrencyIcon, { symbol: t.symbol, size: 28 }),
43
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "min-w-0 flex-1 text-sm font-semibold", children: t.symbol }),
44
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm font-semibold tabular-nums text-muted-foreground", children: balances[t.symbol] != null ? (0, import_wallet_format.fmt)(balances[t.symbol], t.decimals) : "\u2026" })
45
+ ]
46
+ },
47
+ t.symbol
48
+ )) }) });
49
+ }
50
+ // Annotate the CommonJS export names for ESM import in node:
51
+ 0 && (module.exports = {
52
+ CurrencySheet
53
+ });
54
+ //# sourceMappingURL=currency-sheet.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/currency-sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport { CurrencyIcon } from \"../currency-icon.js\";\nimport { ActionModal } from \"./action-modal.js\";\nimport { fmt } from \"../../utils/media-wallet/wallet-format.js\";\nimport type { WalletToken } from \"../../utils/media-wallet/wallet-tokens.js\";\n\nexport function CurrencySheet({\n title,\n tokens,\n balances,\n onSelect,\n onClose,\n}: {\n title: string;\n tokens: WalletToken[];\n balances: Record<string, bigint | null>;\n onSelect: (token: WalletToken) => void;\n onClose: () => void;\n}) {\n return (\n <ActionModal title={title} onClose={onClose}>\n <div className=\"flex flex-col divide-y divide-border/40\">\n {tokens.map((t) => (\n <button\n key={t.symbol}\n onClick={() => onSelect(t)}\n className=\"flex items-center gap-3 py-3 text-left transition-opacity active:opacity-70\"\n >\n <CurrencyIcon symbol={t.symbol} size={28} />\n <div className=\"min-w-0 flex-1 text-sm font-semibold\">{t.symbol}</div>\n <div className=\"text-sm font-semibold tabular-nums text-muted-foreground\">\n {balances[t.symbol] != null ? fmt(balances[t.symbol]!, t.decimals) : \"…\"}\n </div>\n </button>\n ))}\n </div>\n </ActionModal>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAwBU;AAtBV,2BAA6B;AAC7B,0BAA4B;AAC5B,2BAAoB;AAGb,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAMG;AACD,SACE,4CAAC,mCAAY,OAAc,SACzB,sDAAC,SAAI,WAAU,2CACZ,iBAAO,IAAI,CAAC,MACX;AAAA,IAAC;AAAA;AAAA,MAEC,SAAS,MAAM,SAAS,CAAC;AAAA,MACzB,WAAU;AAAA,MAEV;AAAA,oDAAC,qCAAa,QAAQ,EAAE,QAAQ,MAAM,IAAI;AAAA,QAC1C,4CAAC,SAAI,WAAU,wCAAwC,YAAE,QAAO;AAAA,QAChE,4CAAC,SAAI,WAAU,4DACZ,mBAAS,EAAE,MAAM,KAAK,WAAO,0BAAI,SAAS,EAAE,MAAM,GAAI,EAAE,QAAQ,IAAI,UACvE;AAAA;AAAA;AAAA,IARK,EAAE;AAAA,EAST,CACD,GACH,GACF;AAEJ;","names":[]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { WalletToken } from '../../utils/media-wallet/wallet-tokens.cjs';
3
+
4
+ declare function CurrencySheet({ title, tokens, balances, onSelect, onClose, }: {
5
+ title: string;
6
+ tokens: WalletToken[];
7
+ balances: Record<string, bigint | null>;
8
+ onSelect: (token: WalletToken) => void;
9
+ onClose: () => void;
10
+ }): react_jsx_runtime.JSX.Element;
11
+
12
+ export { CurrencySheet };
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { WalletToken } from '../../utils/media-wallet/wallet-tokens.js';
3
+
4
+ declare function CurrencySheet({ title, tokens, balances, onSelect, onClose, }: {
5
+ title: string;
6
+ tokens: WalletToken[];
7
+ balances: Record<string, bigint | null>;
8
+ onSelect: (token: WalletToken) => void;
9
+ onClose: () => void;
10
+ }): react_jsx_runtime.JSX.Element;
11
+
12
+ export { CurrencySheet };
@@ -0,0 +1,30 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { CurrencyIcon } from "../currency-icon.js";
4
+ import { ActionModal } from "./action-modal.js";
5
+ import { fmt } from "../../utils/media-wallet/wallet-format.js";
6
+ function CurrencySheet({
7
+ title,
8
+ tokens,
9
+ balances,
10
+ onSelect,
11
+ onClose
12
+ }) {
13
+ return /* @__PURE__ */ jsx(ActionModal, { title, onClose, children: /* @__PURE__ */ jsx("div", { className: "flex flex-col divide-y divide-border/40", children: tokens.map((t) => /* @__PURE__ */ jsxs(
14
+ "button",
15
+ {
16
+ onClick: () => onSelect(t),
17
+ className: "flex items-center gap-3 py-3 text-left transition-opacity active:opacity-70",
18
+ children: [
19
+ /* @__PURE__ */ jsx(CurrencyIcon, { symbol: t.symbol, size: 28 }),
20
+ /* @__PURE__ */ jsx("div", { className: "min-w-0 flex-1 text-sm font-semibold", children: t.symbol }),
21
+ /* @__PURE__ */ jsx("div", { className: "text-sm font-semibold tabular-nums text-muted-foreground", children: balances[t.symbol] != null ? fmt(balances[t.symbol], t.decimals) : "\u2026" })
22
+ ]
23
+ },
24
+ t.symbol
25
+ )) }) });
26
+ }
27
+ export {
28
+ CurrencySheet
29
+ };
30
+ //# sourceMappingURL=currency-sheet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/currency-sheet.tsx"],"sourcesContent":["\"use client\";\n\nimport { CurrencyIcon } from \"../currency-icon.js\";\nimport { ActionModal } from \"./action-modal.js\";\nimport { fmt } from \"../../utils/media-wallet/wallet-format.js\";\nimport type { WalletToken } from \"../../utils/media-wallet/wallet-tokens.js\";\n\nexport function CurrencySheet({\n title,\n tokens,\n balances,\n onSelect,\n onClose,\n}: {\n title: string;\n tokens: WalletToken[];\n balances: Record<string, bigint | null>;\n onSelect: (token: WalletToken) => void;\n onClose: () => void;\n}) {\n return (\n <ActionModal title={title} onClose={onClose}>\n <div className=\"flex flex-col divide-y divide-border/40\">\n {tokens.map((t) => (\n <button\n key={t.symbol}\n onClick={() => onSelect(t)}\n className=\"flex items-center gap-3 py-3 text-left transition-opacity active:opacity-70\"\n >\n <CurrencyIcon symbol={t.symbol} size={28} />\n <div className=\"min-w-0 flex-1 text-sm font-semibold\">{t.symbol}</div>\n <div className=\"text-sm font-semibold tabular-nums text-muted-foreground\">\n {balances[t.symbol] != null ? fmt(balances[t.symbol]!, t.decimals) : \"…\"}\n </div>\n </button>\n ))}\n </div>\n </ActionModal>\n );\n}\n"],"mappings":";AAwBU,SAKE,KALF;AAtBV,SAAS,oBAAoB;AAC7B,SAAS,mBAAmB;AAC5B,SAAS,WAAW;AAGb,SAAS,cAAc;AAAA,EAC5B;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF,GAMG;AACD,SACE,oBAAC,eAAY,OAAc,SACzB,8BAAC,SAAI,WAAU,2CACZ,iBAAO,IAAI,CAAC,MACX;AAAA,IAAC;AAAA;AAAA,MAEC,SAAS,MAAM,SAAS,CAAC;AAAA,MACzB,WAAU;AAAA,MAEV;AAAA,4BAAC,gBAAa,QAAQ,EAAE,QAAQ,MAAM,IAAI;AAAA,QAC1C,oBAAC,SAAI,WAAU,wCAAwC,YAAE,QAAO;AAAA,QAChE,oBAAC,SAAI,WAAU,4DACZ,mBAAS,EAAE,MAAM,KAAK,OAAO,IAAI,SAAS,EAAE,MAAM,GAAI,EAAE,QAAQ,IAAI,UACvE;AAAA;AAAA;AAAA,IARK,EAAE;AAAA,EAST,CACD,GACH,GACF;AAEJ;","names":[]}
@@ -0,0 +1,223 @@
1
+ "use strict";
2
+ "use client";
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all)
11
+ __defProp(target, name, { get: all[name], enumerable: true });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from))
16
+ if (!__hasOwnProp.call(to, key) && key !== except)
17
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
18
+ }
19
+ return to;
20
+ };
21
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
22
+ // If the importer is in node compatibility mode or this is not an ESM
23
+ // file that has been converted to a CommonJS file using a Babel-
24
+ // compatible transform (i.e. "__esModule" has not been set), then set
25
+ // "default" to the CommonJS "module.exports" for node compatibility.
26
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
27
+ mod
28
+ ));
29
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
30
+ var media_wallet_activity_exports = {};
31
+ __export(media_wallet_activity_exports, {
32
+ MediaWalletActivity: () => MediaWalletActivity
33
+ });
34
+ module.exports = __toCommonJS(media_wallet_activity_exports);
35
+ var import_jsx_runtime = require("react/jsx-runtime");
36
+ var import_describe_error = require("../../utils/describe-error.js");
37
+ var import_react = require("react");
38
+ var import_image = __toESM(require("../image.js"), 1);
39
+ var import_sdk = require("@medialane/sdk");
40
+ var import_activity_feed = require("../../utils/media-wallet/activity-feed.js");
41
+ var import_wallet_activity = require("../../utils/media-wallet/wallet-activity.js");
42
+ var import_wallet_format = require("../../utils/media-wallet/wallet-format.js");
43
+ var import_back_button = require("./back-button.js");
44
+ var import_wallet_activity_icon = require("./wallet-activity-icon.js");
45
+ var import_action_modal = require("./action-modal.js");
46
+ var import_types = require("./types.js");
47
+ const GRADS = [
48
+ "linear-gradient(135deg,#3b7bff,#8a5cf6)",
49
+ "linear-gradient(135deg,#8a5cf6,#f6608f)",
50
+ "linear-gradient(135deg,#f6608f,#fb8b46)",
51
+ "linear-gradient(135deg,#5b4ce6,#3b7bff)"
52
+ ];
53
+ const gradFor = (seed) => {
54
+ let h = 0;
55
+ for (let i = 0; i < seed.length; i++) h = h * 31 + seed.charCodeAt(i) | 0;
56
+ return GRADS[Math.abs(h) % GRADS.length];
57
+ };
58
+ function MediaWalletActivity({ onNavigate }) {
59
+ const { useWalletSession, getClient } = (0, import_types.useMediaWalletApp)();
60
+ const { address } = useWalletSession();
61
+ const [items, setItems] = (0, import_react.useState)(null);
62
+ const [error, setError] = (0, import_react.useState)(null);
63
+ const [loading, setLoading] = (0, import_react.useState)(false);
64
+ const [selected, setSelected] = (0, import_react.useState)(null);
65
+ const load = (0, import_react.useCallback)(() => {
66
+ if (!address) return;
67
+ let live = true;
68
+ setLoading(true);
69
+ setError(null);
70
+ (async () => {
71
+ try {
72
+ const client = getClient().api;
73
+ const [walletRes, protocolRes] = await Promise.all([
74
+ client.getWalletActivity(address),
75
+ client.getActivitiesByAddress(address, 1, 50)
76
+ ]);
77
+ if (live) setItems((0, import_activity_feed.mergeActivityFeeds)(walletRes.data, protocolRes.data));
78
+ } catch (e) {
79
+ if (live) setError((0, import_describe_error.describeError)(e, "We couldn't load your activity. Please try again.").message);
80
+ } finally {
81
+ if (live) setLoading(false);
82
+ }
83
+ })();
84
+ return () => {
85
+ live = false;
86
+ };
87
+ }, [address, getClient]);
88
+ (0, import_react.useEffect)(() => load(), [load]);
89
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("main", { className: "flex flex-col gap-4 px-5 pb-8 pt-2", children: [
90
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-3", children: [
91
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_back_button.BackButton, { onBack: () => onNavigate({ name: "home" }) }),
92
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h1", { className: "font-[family-name:var(--font-display)] text-2xl font-extrabold tracking-tight", children: "Activity" })
93
+ ] }),
94
+ !address && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm text-muted-foreground", children: "No wallet found on this device." }),
95
+ error && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ActivityLoadError, { onRetry: load }),
96
+ loading && !items && !error && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ActivityLoading, {}),
97
+ items && items.length === 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm text-muted-foreground", children: "No activity yet." }),
98
+ items && items.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex flex-col gap-2", children: items.map(
99
+ (item) => item.source === "wallet" ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(WalletActivityRow, { a: item.data, timestamp: item.timestamp, onOpen: setSelected }, item.data.id) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ProtocolActivityRow, { item: item.data }, `${item.data.txHash}-${item.data.type}`)
100
+ ) }),
101
+ selected && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ActivityDetailModal, { a: selected, onClose: () => setSelected(null) })
102
+ ] });
103
+ }
104
+ function WalletActivityRow({
105
+ a,
106
+ timestamp,
107
+ onOpen
108
+ }) {
109
+ const subtitle = (0, import_wallet_activity.walletActivitySubtitle)(a);
110
+ const amount = (0, import_wallet_activity.walletActivityAmount)(a);
111
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
112
+ "button",
113
+ {
114
+ onClick: () => onOpen(a),
115
+ className: "flex items-center gap-3 rounded-2xl bg-card/40 px-4 py-3 text-left backdrop-blur-sm transition-colors hover:bg-card/60",
116
+ children: [
117
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_wallet_activity_icon.WalletActivityIcon, { a }),
118
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0 flex-1", children: [
119
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm font-semibold", children: (0, import_wallet_activity.walletActivityTitle)(a) }),
120
+ subtitle && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "truncate text-xs text-muted-foreground", children: subtitle })
121
+ ] }),
122
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "shrink-0 text-right", children: [
123
+ amount && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm font-semibold tabular-nums", children: amount }),
124
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-xs text-muted-foreground", children: (0, import_wallet_format.when)(timestamp) })
125
+ ] })
126
+ ]
127
+ }
128
+ );
129
+ }
130
+ function ActivityDetailModal({ a, onClose }) {
131
+ const { explorerUrl } = (0, import_types.useMediaWalletApp)();
132
+ const [copied, setCopied] = (0, import_react.useState)(false);
133
+ const subtitle = (0, import_wallet_activity.walletActivitySubtitle)(a);
134
+ const amount = (0, import_wallet_activity.walletActivityAmount)(a);
135
+ const fullDate = new Date(a.timestamp).toLocaleString(void 0, {
136
+ dateStyle: "medium",
137
+ timeStyle: "short"
138
+ });
139
+ const copyHash = () => {
140
+ navigator.clipboard?.writeText(a.txHash).catch(() => {
141
+ });
142
+ setCopied(true);
143
+ setTimeout(() => setCopied(false), 1500);
144
+ };
145
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_action_modal.ActionModal, { title: (0, import_wallet_activity.walletActivityTitle)(a), onClose, children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col gap-4", children: [
146
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col items-center gap-2 py-2 text-center", children: [
147
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_wallet_activity_icon.WalletActivityIcon, { a }),
148
+ amount && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-2xl font-bold tabular-nums", children: amount }),
149
+ subtitle && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm text-muted-foreground", children: subtitle })
150
+ ] }),
151
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-col divide-y divide-border/40 rounded-2xl bg-foreground/[0.05] px-4", children: [
152
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between py-3", children: [
153
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-xs text-muted-foreground", children: "Date" }),
154
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-sm font-medium", children: fullDate })
155
+ ] }),
156
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center justify-between py-3", children: [
157
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-xs text-muted-foreground", children: "Transaction" }),
158
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("button", { onClick: copyHash, className: "font-mono text-sm font-medium transition-opacity active:opacity-60", children: copied ? "Copied \u2713" : (0, import_wallet_format.short)(a.txHash) })
159
+ ] })
160
+ ] }),
161
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
162
+ "a",
163
+ {
164
+ href: (0, import_wallet_format.explorerTxUrl)(explorerUrl, a.txHash),
165
+ target: "_blank",
166
+ rel: "noopener noreferrer",
167
+ className: "text-center text-xs font-medium text-muted-foreground underline underline-offset-2",
168
+ children: "View on Voyager \u2197"
169
+ }
170
+ )
171
+ ] }) });
172
+ }
173
+ function ProtocolActivityRow({ item }) {
174
+ const { resolveImage } = (0, import_types.useMediaWalletApp)();
175
+ const img = resolveImage(item.token?.image ?? null);
176
+ const seed = item.txHash ?? item.orderHash ?? item.type;
177
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-center gap-3 rounded-2xl bg-card/40 px-4 py-3 backdrop-blur-sm", children: [
178
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "relative h-11 w-11 shrink-0 overflow-hidden rounded-2xl", style: img ? void 0 : { background: gradFor(seed) }, children: img && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_image.default, { src: img, alt: "", fill: true, className: "object-cover" }) }),
179
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0 flex-1", children: [
180
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm font-semibold capitalize", children: item.type }),
181
+ item.token?.name && /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "truncate text-xs text-muted-foreground", children: item.token.name })
182
+ ] }),
183
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "shrink-0 text-right", children: [
184
+ item.price?.raw && item.price.currency && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "text-sm font-semibold tabular-nums", children: [
185
+ (0, import_wallet_format.fmt)(BigInt(item.price.raw), (0, import_sdk.getTokenBySymbol)(item.price.currency)?.decimals ?? 18),
186
+ " ",
187
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "text-xs text-muted-foreground", children: item.price.currency })
188
+ ] }),
189
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-xs text-muted-foreground", children: (0, import_wallet_format.when)(item.timestamp) })
190
+ ] })
191
+ ] });
192
+ }
193
+ function ActivityLoading() {
194
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex min-h-[40vh] flex-col items-center justify-center gap-3", children: [
195
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "h-6 w-6 animate-spin rounded-full border-2 border-border border-t-foreground" }),
196
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm text-muted-foreground", children: "Loading your activity\u2026" })
197
+ ] });
198
+ }
199
+ function ActivityLoadError({ onRetry }) {
200
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "card-base flex flex-col items-center gap-3 px-6 py-8 text-center", children: [
201
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "grid h-11 w-11 place-items-center rounded-2xl bg-destructive/10 text-destructive", children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("svg", { width: "20", height: "20", viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", children: [
202
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M10.3 3.9L2.3 18a2 2 0 001.7 3h16a2 2 0 001.7-3L13.7 3.9a2 2 0 00-3.4 0z" }),
203
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("path", { d: "M12 9v4M12 17h.01" })
204
+ ] }) }),
205
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
206
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "text-sm font-semibold", children: "Couldn't load your activity" }),
207
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mx-auto mt-1 max-w-[16rem] text-xs leading-relaxed text-muted-foreground", children: "There was a problem reaching the server. Check your connection and try again." })
208
+ ] }),
209
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
210
+ "button",
211
+ {
212
+ onClick: onRetry,
213
+ className: "rounded-full border border-border px-4 py-2 text-xs font-semibold text-foreground transition-colors hover:bg-card",
214
+ children: "Try again"
215
+ }
216
+ )
217
+ ] });
218
+ }
219
+ // Annotate the CommonJS export names for ESM import in node:
220
+ 0 && (module.exports = {
221
+ MediaWalletActivity
222
+ });
223
+ //# sourceMappingURL=media-wallet-activity.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/media-wallet/media-wallet-activity.tsx"],"sourcesContent":["\"use client\";\n\nimport { describeError } from \"../../utils/describe-error.js\";\nimport { useCallback, useEffect, useState } from \"react\";\nimport Image from \"../image.js\";\nimport type { ApiWalletActivity, ApiActivity } from \"@medialane/sdk\";\nimport { getTokenBySymbol } from \"@medialane/sdk\";\nimport { mergeActivityFeeds, type MergedActivityItem } from \"../../utils/media-wallet/activity-feed.js\";\nimport { walletActivityTitle, walletActivitySubtitle, walletActivityAmount } from \"../../utils/media-wallet/wallet-activity.js\";\nimport { short, when, explorerTxUrl, fmt } from \"../../utils/media-wallet/wallet-format.js\";\nimport { BackButton } from \"./back-button.js\";\nimport { WalletActivityIcon } from \"./wallet-activity-icon.js\";\nimport { ActionModal } from \"./action-modal.js\";\nimport { useMediaWalletApp, type MediaWalletView } from \"./types.js\";\n\nconst GRADS = [\n \"linear-gradient(135deg,#3b7bff,#8a5cf6)\",\n \"linear-gradient(135deg,#8a5cf6,#f6608f)\",\n \"linear-gradient(135deg,#f6608f,#fb8b46)\",\n \"linear-gradient(135deg,#5b4ce6,#3b7bff)\",\n];\nconst gradFor = (seed: string) => {\n let h = 0;\n for (let i = 0; i < seed.length; i++) h = (h * 31 + seed.charCodeAt(i)) | 0;\n return GRADS[Math.abs(h) % GRADS.length];\n};\n\nexport function MediaWalletActivity({ onNavigate }: { onNavigate: (view: MediaWalletView) => void }) {\n const { useWalletSession, getClient } = useMediaWalletApp();\n const { address } = useWalletSession();\n const [items, setItems] = useState<MergedActivityItem[] | null>(null);\n const [error, setError] = useState<string | null>(null);\n const [loading, setLoading] = useState(false);\n const [selected, setSelected] = useState<ApiWalletActivity | null>(null);\n\n const load = useCallback(() => {\n if (!address) return;\n let live = true;\n setLoading(true);\n setError(null);\n (async () => {\n try {\n const client = getClient().api;\n const [walletRes, protocolRes] = await Promise.all([\n client.getWalletActivity(address),\n client.getActivitiesByAddress(address, 1, 50),\n ]);\n if (live) setItems(mergeActivityFeeds(walletRes.data, protocolRes.data));\n } catch (e) {\n if (live) setError(describeError(e, \"We couldn't load your activity. Please try again.\").message);\n } finally {\n if (live) setLoading(false);\n }\n })();\n return () => { live = false; };\n }, [address, getClient]);\n\n useEffect(() => load(), [load]);\n\n return (\n <main className=\"flex flex-col gap-4 px-5 pb-8 pt-2\">\n <div className=\"flex items-center gap-3\">\n <BackButton onBack={() => onNavigate({ name: \"home\" })} />\n <h1 className=\"font-[family-name:var(--font-display)] text-2xl font-extrabold tracking-tight\">Activity</h1>\n </div>\n\n {!address && <div className=\"text-sm text-muted-foreground\">No wallet found on this device.</div>}\n {error && <ActivityLoadError onRetry={load} />}\n {loading && !items && !error && <ActivityLoading />}\n {items && items.length === 0 && <div className=\"text-sm text-muted-foreground\">No activity yet.</div>}\n\n {items && items.length > 0 && (\n <div className=\"flex flex-col gap-2\">\n {items.map((item) =>\n item.source === \"wallet\" ? (\n <WalletActivityRow key={item.data.id} a={item.data} timestamp={item.timestamp} onOpen={setSelected} />\n ) : (\n <ProtocolActivityRow key={`${item.data.txHash}-${item.data.type}`} item={item.data} />\n ),\n )}\n </div>\n )}\n\n {selected && <ActivityDetailModal a={selected} onClose={() => setSelected(null)} />}\n </main>\n );\n}\n\nfunction WalletActivityRow({\n a,\n timestamp,\n onOpen,\n}: {\n a: ApiWalletActivity;\n timestamp: string;\n onOpen: (a: ApiWalletActivity) => void;\n}) {\n const subtitle = walletActivitySubtitle(a);\n const amount = walletActivityAmount(a);\n return (\n <button\n onClick={() => onOpen(a)}\n className=\"flex items-center gap-3 rounded-2xl bg-card/40 px-4 py-3 text-left backdrop-blur-sm transition-colors hover:bg-card/60\"\n >\n <WalletActivityIcon a={a} />\n <div className=\"min-w-0 flex-1\">\n <div className=\"text-sm font-semibold\">{walletActivityTitle(a)}</div>\n {subtitle && <div className=\"truncate text-xs text-muted-foreground\">{subtitle}</div>}\n </div>\n <div className=\"shrink-0 text-right\">\n {amount && <div className=\"text-sm font-semibold tabular-nums\">{amount}</div>}\n <div className=\"text-xs text-muted-foreground\">{when(timestamp)}</div>\n </div>\n </button>\n );\n}\n\nfunction ActivityDetailModal({ a, onClose }: { a: ApiWalletActivity; onClose: () => void }) {\n const { explorerUrl } = useMediaWalletApp();\n const [copied, setCopied] = useState(false);\n const subtitle = walletActivitySubtitle(a);\n const amount = walletActivityAmount(a);\n const fullDate = new Date(a.timestamp).toLocaleString(undefined, {\n dateStyle: \"medium\",\n timeStyle: \"short\",\n });\n\n const copyHash = () => {\n navigator.clipboard?.writeText(a.txHash).catch(() => {});\n setCopied(true);\n setTimeout(() => setCopied(false), 1500);\n };\n\n return (\n <ActionModal title={walletActivityTitle(a)} onClose={onClose}>\n <div className=\"flex flex-col gap-4\">\n <div className=\"flex flex-col items-center gap-2 py-2 text-center\">\n <WalletActivityIcon a={a} />\n {amount && <div className=\"text-2xl font-bold tabular-nums\">{amount}</div>}\n {subtitle && <div className=\"text-sm text-muted-foreground\">{subtitle}</div>}\n </div>\n\n <div className=\"flex flex-col divide-y divide-border/40 rounded-2xl bg-foreground/[0.05] px-4\">\n <div className=\"flex items-center justify-between py-3\">\n <span className=\"text-xs text-muted-foreground\">Date</span>\n <span className=\"text-sm font-medium\">{fullDate}</span>\n </div>\n <div className=\"flex items-center justify-between py-3\">\n <span className=\"text-xs text-muted-foreground\">Transaction</span>\n <button onClick={copyHash} className=\"font-mono text-sm font-medium transition-opacity active:opacity-60\">\n {copied ? \"Copied ✓\" : short(a.txHash)}\n </button>\n </div>\n </div>\n\n <a\n href={explorerTxUrl(explorerUrl, a.txHash)}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className=\"text-center text-xs font-medium text-muted-foreground underline underline-offset-2\"\n >\n View on Voyager ↗\n </a>\n </div>\n </ActionModal>\n );\n}\n\nfunction ProtocolActivityRow({ item }: { item: ApiActivity }) {\n const { resolveImage } = useMediaWalletApp();\n const img = resolveImage(item.token?.image ?? null);\n const seed = item.txHash ?? item.orderHash ?? item.type;\n return (\n <div className=\"flex items-center gap-3 rounded-2xl bg-card/40 px-4 py-3 backdrop-blur-sm\">\n <div className=\"relative h-11 w-11 shrink-0 overflow-hidden rounded-2xl\" style={img ? undefined : { background: gradFor(seed) }}>\n {img && (\n <Image src={img} alt=\"\" fill className=\"object-cover\" />\n )}\n </div>\n <div className=\"min-w-0 flex-1\">\n <div className=\"text-sm font-semibold capitalize\">{item.type}</div>\n {item.token?.name && <div className=\"truncate text-xs text-muted-foreground\">{item.token.name}</div>}\n </div>\n <div className=\"shrink-0 text-right\">\n {item.price?.raw && item.price.currency && (\n <div className=\"text-sm font-semibold tabular-nums\">\n {fmt(BigInt(item.price.raw), getTokenBySymbol(item.price.currency)?.decimals ?? 18)} <span className=\"text-xs text-muted-foreground\">{item.price.currency}</span>\n </div>\n )}\n <div className=\"text-xs text-muted-foreground\">{when(item.timestamp)}</div>\n </div>\n </div>\n );\n}\n\nfunction ActivityLoading() {\n return (\n <div className=\"flex min-h-[40vh] flex-col items-center justify-center gap-3\">\n <span className=\"h-6 w-6 animate-spin rounded-full border-2 border-border border-t-foreground\" />\n <div className=\"text-sm text-muted-foreground\">Loading your activity…</div>\n </div>\n );\n}\n\nfunction ActivityLoadError({ onRetry }: { onRetry: () => void }) {\n return (\n <div className=\"card-base flex flex-col items-center gap-3 px-6 py-8 text-center\">\n <div className=\"grid h-11 w-11 place-items-center rounded-2xl bg-destructive/10 text-destructive\">\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" strokeWidth=\"2\" strokeLinecap=\"round\" strokeLinejoin=\"round\">\n <path d=\"M10.3 3.9L2.3 18a2 2 0 001.7 3h16a2 2 0 001.7-3L13.7 3.9a2 2 0 00-3.4 0z\" />\n <path d=\"M12 9v4M12 17h.01\" />\n </svg>\n </div>\n <div>\n <div className=\"text-sm font-semibold\">Couldn&apos;t load your activity</div>\n <p className=\"mx-auto mt-1 max-w-[16rem] text-xs leading-relaxed text-muted-foreground\">\n There was a problem reaching the server. Check your connection and try again.\n </p>\n </div>\n <button\n onClick={onRetry}\n className=\"rounded-full border border-border px-4 py-2 text-xs font-semibold text-foreground transition-colors hover:bg-card\"\n >\n Try again\n </button>\n </div>\n );\n}\n"],"mappings":"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","names":["Image"]}
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { MediaWalletView } from './types.cjs';
3
+ import 'react';
4
+ import 'starknet';
5
+ import '@medialane/sdk/starknet';
6
+ import '../../utils/media-wallet/wallet-tokens.cjs';
7
+
8
+ declare function MediaWalletActivity({ onNavigate }: {
9
+ onNavigate: (view: MediaWalletView) => void;
10
+ }): react_jsx_runtime.JSX.Element;
11
+
12
+ export { MediaWalletActivity };
@@ -0,0 +1,12 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { MediaWalletView } from './types.js';
3
+ import 'react';
4
+ import 'starknet';
5
+ import '@medialane/sdk/starknet';
6
+ import '../../utils/media-wallet/wallet-tokens.js';
7
+
8
+ declare function MediaWalletActivity({ onNavigate }: {
9
+ onNavigate: (view: MediaWalletView) => void;
10
+ }): react_jsx_runtime.JSX.Element;
11
+
12
+ export { MediaWalletActivity };