zframes 0.8.2 → 0.9.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 (519) hide show
  1. package/dist/index.js +524 -5
  2. package/package.json +6 -6
  3. package/runtime/assets/bar-chart-CMWrEpFm.js +1 -0
  4. package/runtime/assets/bitcoin-dominance-CDZbSLQ9.js +1 -0
  5. package/runtime/assets/breakeven-N9JfaLs2.js +1 -0
  6. package/runtime/assets/breathing-CSiaHH2d.js +1 -0
  7. package/runtime/assets/btc-block-size-bars-BwGQm2NA.js +1 -0
  8. package/runtime/assets/btc-blocks-CFz6DrIF.js +1 -0
  9. package/runtime/assets/btc-difficulty-bSLdWqGX.js +1 -0
  10. package/runtime/assets/btc-difficulty-chart-D6il3x9b.js +1 -0
  11. package/runtime/assets/btc-fees-CwRPq2S2.js +1 -0
  12. package/runtime/assets/btc-hashrate-_PbwOOj4.js +1 -0
  13. package/runtime/assets/btc-in-gold-JNXTU7sM.js +1 -0
  14. package/runtime/assets/btc-mempool-DivYz6mX.js +1 -0
  15. package/runtime/assets/btc-shared-BC2IjkCh.js +1 -0
  16. package/runtime/assets/bubbles-shared-BgKUWrak.js +1 -0
  17. package/runtime/assets/calculator-F474oCeb.js +1 -0
  18. package/runtime/assets/capital-structure-bars-BHtcggyu.js +1 -0
  19. package/runtime/assets/chain-activity-Db-zx6eG.js +1 -0
  20. package/runtime/assets/chain-activity-bars-CPhHE6lU.js +1 -0
  21. package/runtime/assets/chain-activity-scatter-CU7D3Nx9.js +1 -0
  22. package/runtime/assets/chain-price-movers-Vym50Lcy.js +1 -0
  23. package/runtime/assets/chart-utils-Ba8AFSZR.js +1 -0
  24. package/runtime/assets/checklist-BSCOZLJ-.js +1 -0
  25. package/runtime/assets/clock-C5hPRu82.js +1 -0
  26. package/runtime/assets/coin-momentum-heatmap-DbHsWjP2.js +1 -0
  27. package/runtime/assets/coin-momentum-scatter-5wS64urM.js +1 -0
  28. package/runtime/assets/coin-movers-BPifHhH2.js +1 -0
  29. package/runtime/assets/content-shared-CrVCFeOp.js +1 -0
  30. package/runtime/assets/countdown-9cgAKml3.js +1 -0
  31. package/runtime/assets/custom-data-A7UR4hIt.js +1 -0
  32. package/runtime/assets/cycle-shared-D8LQcBSw.js +1 -0
  33. package/runtime/assets/cycle-signals-CmEenZJE.js +1 -0
  34. package/runtime/assets/cycle-valuation-composite-olTWmWgj.js +1 -0
  35. package/runtime/assets/d3-BDRmnSFu.js +1 -0
  36. package/runtime/assets/daily-analysis-DmNxxfsL.js +1 -0
  37. package/runtime/assets/day-meter-DYYqZgFQ.js +1 -0
  38. package/runtime/assets/defi-revenue-BwnWnaOl.js +1 -0
  39. package/runtime/assets/dex-hot-pools-5sl00AOK.js +1 -0
  40. package/runtime/assets/dex-pool-bubbles-KyBmXb-u.js +1 -0
  41. package/runtime/assets/dex-pool-liquidity-scatter-Cczoa7F0.js +1 -0
  42. package/runtime/assets/dex-pool-treemap-DmoYWG3V.js +1 -0
  43. package/runtime/assets/dex-volume-bubbles-lLAheaQp.js +1 -0
  44. package/runtime/assets/dex-volume-chart-CGCkffrp.js +1 -0
  45. package/runtime/assets/dex-volume-share-area-figZ1USz.js +1 -0
  46. package/runtime/assets/dex-volume-treemap-CXXZ330C.js +1 -0
  47. package/runtime/assets/dice-BRHGwsSK.js +1 -0
  48. package/runtime/assets/dino-game-DkbgStXN.js +1 -0
  49. package/runtime/assets/divider-B_ScYYo5.js +1 -0
  50. package/runtime/assets/dominance-bars-CwFTP6Sh.js +1 -0
  51. package/runtime/assets/dominance-gauge-DL_JjphD.js +1 -0
  52. package/runtime/assets/drawdy-Bqx6Qs9j.js +1 -0
  53. package/runtime/assets/dxy-EDEcDqHS.js +1 -0
  54. package/runtime/assets/dxy-chart-DZ9Q_k9j.js +1 -0
  55. package/runtime/assets/editor-DNWRDAc5.css +1 -0
  56. package/runtime/assets/editor-DchM45os.js +2 -0
  57. package/runtime/assets/etf-flow-bars-BdLldRsx.js +1 -0
  58. package/runtime/assets/etf-flow-calendar-QeCVgCXm.js +1 -0
  59. package/runtime/assets/etf-flows-BokfCz94.js +1 -0
  60. package/runtime/assets/etf-flows-chart-B7vXhlo1.js +1 -0
  61. package/runtime/assets/etf-issuer-bars-ZWR-71DZ.js +1 -0
  62. package/runtime/assets/etf-issuer-treemap-zM5ZN913.js +1 -0
  63. package/runtime/assets/eth-issuance-impact-C0dbmsYs.js +1 -0
  64. package/runtime/assets/eth-staking-DhS4t_di.js +1 -0
  65. package/runtime/assets/eth-supply-BDXv32cs.js +1 -0
  66. package/runtime/assets/fear-greed-Db3YYSrb.js +1 -0
  67. package/runtime/assets/fear-greed-chart-BUaJVaqb.js +1 -0
  68. package/runtime/assets/feed-row-qDN72CXa.js +1 -0
  69. package/runtime/assets/filings-feed-CNEQhc4S.js +1 -0
  70. package/runtime/assets/filings-mix-BycrOiTn.js +1 -0
  71. package/runtime/assets/financial-stress-CtL4d_BQ.js +1 -0
  72. package/runtime/assets/flappy-bird-OADt73RX.js +1 -0
  73. package/runtime/assets/format-DWMrfgke.js +1 -0
  74. package/runtime/assets/fundamentals-DeZ9OQCp.js +1 -0
  75. package/runtime/assets/funding-bars-CZicqsRm.js +1 -0
  76. package/runtime/assets/funding-carry-area-B9WKPWmT.js +1 -0
  77. package/runtime/assets/funding-comparison-TSJiamEF.js +1 -0
  78. package/runtime/assets/funding-crowding-scatter-DfPN294N.js +1 -0
  79. package/runtime/assets/funding-heatmap-BiW7ZLwp.js +1 -0
  80. package/runtime/assets/funding-leaderboard-bars-C6PF11ps.js +1 -0
  81. package/runtime/assets/funding-rate-chart-MWU01Uib.js +1 -0
  82. package/runtime/assets/funding-spread-bars-Br7XsS11.js +1 -0
  83. package/runtime/assets/funding-venue-heatmap-sPFQ1fzo.js +1 -0
  84. package/runtime/assets/fx-board-CXrfSPfH.js +1 -0
  85. package/runtime/assets/fx-cross-heatmap-CHJIg4cN.js +1 -0
  86. package/runtime/assets/fx-movers-bars-DpD5YR28.js +1 -0
  87. package/runtime/assets/fx-trend-chart-DXS0-OTV.js +1 -0
  88. package/runtime/assets/game-ui-DRuW9syP.js +1 -0
  89. package/runtime/assets/gold-silver-ratio-C1AEhktf.js +1 -0
  90. package/runtime/assets/gridstack-BJOLV-iY.js +3 -0
  91. package/runtime/assets/gridstack-Chv4ms9g.css +1 -0
  92. package/runtime/assets/heading-DMvjA_mI.js +1 -0
  93. package/runtime/assets/heatmap-chart-CXN9d41C.js +1 -0
  94. package/runtime/assets/hero-number-BFIUUm5q.js +1 -0
  95. package/runtime/assets/holiday-calendar-s6CQYrht.js +1 -0
  96. package/runtime/assets/hooks-CLLchjg6.js +1 -0
  97. package/runtime/assets/image-Dx6lzZxo.js +1 -0
  98. package/runtime/assets/image-gallery-DlvoKVqh.js +1 -0
  99. package/runtime/assets/index-9oCCAb1t.js +1106 -0
  100. package/runtime/assets/index-tGx-fhSL.css +1 -0
  101. package/runtime/assets/indicators-YksbfYtF.js +1 -0
  102. package/runtime/assets/inflation-pulse-DFjPkATF.js +1 -0
  103. package/runtime/assets/journal-log-DllO3-3Q.js +1 -0
  104. package/runtime/assets/journal-open-49eapsYs.js +1 -0
  105. package/runtime/assets/journal-results-CYsmiD33.js +1 -0
  106. package/runtime/assets/journal-score-BvJ7YMEp.js +1 -0
  107. package/runtime/assets/journal-store-DcqepoPT.js +1 -0
  108. package/runtime/assets/journal-ui-CR7uxhyO.js +1 -0
  109. package/runtime/assets/labor-force-flow-BIAQjzra.js +1 -0
  110. package/runtime/assets/labor-market-D_4TsgBi.js +1 -0
  111. package/runtime/assets/lightning-stats-DqM9rjwr.js +1 -0
  112. package/runtime/assets/link-grid-DUGgdBCS.js +1 -0
  113. package/runtime/assets/liquidity-basis-bars-BBthK657.js +1 -0
  114. package/runtime/assets/live-tick-S-lWTthW.js +1 -0
  115. package/runtime/assets/liveline-BV-xqAVq.js +1 -0
  116. package/runtime/assets/ma-multiplier-0NdXDf5j.js +1 -0
  117. package/runtime/assets/macro-calendar-BtFBeUX9.js +1 -0
  118. package/runtime/assets/market-bubbles-B4CW9pwK.js +1 -0
  119. package/runtime/assets/market-cap-treemap-ydmUhoNY.js +1 -0
  120. package/runtime/assets/market-data-BeuX48f-.js +1 -0
  121. package/runtime/assets/market-hours-B_bTdanw.js +1 -0
  122. package/runtime/assets/market-scatter-FTzDpslF.js +1 -0
  123. package/runtime/assets/marquee-sW0gA0u_.js +28 -0
  124. package/runtime/assets/mayer-multiple-D6T_kVDR.js +1 -0
  125. package/runtime/assets/mempool-fee-curve-DUsgJQRe.js +1 -0
  126. package/runtime/assets/metal-annual-returns-CsZDcJs4.js +1 -0
  127. package/runtime/assets/metal-ath-ChqiN4O-.js +1 -0
  128. package/runtime/assets/metal-compare-chart-CiOT1Su2.js +1 -0
  129. package/runtime/assets/metal-cot-breakdown-B83N5bkN.js +1 -0
  130. package/runtime/assets/metal-cot-gauge-DK-PBRRk.js +1 -0
  131. package/runtime/assets/metal-cot-net-B5BW2stR.js +1 -0
  132. package/runtime/assets/metal-drawdown-DZ7uOHIc.js +1 -0
  133. package/runtime/assets/metal-fix-table-ChbUOgVu.js +1 -0
  134. package/runtime/assets/metal-milestones-BpfRvE7K.js +1 -0
  135. package/runtime/assets/metal-open-interest-BFYrS2KP.js +1 -0
  136. package/runtime/assets/metal-performance-CBD6oX6f.js +1 -0
  137. package/runtime/assets/metal-positioning-vs-price-BPxrZcR9.js +1 -0
  138. package/runtime/assets/metal-price-CIZRcE2_.js +1 -0
  139. package/runtime/assets/metal-price-chart-BX5tGnIt.js +1 -0
  140. package/runtime/assets/metal-ratio-chart-D99QH7nv.js +1 -0
  141. package/runtime/assets/metal-return-distribution-B0AAXxe0.js +1 -0
  142. package/runtime/assets/metal-seasonality-BuQKG4Gi.js +1 -0
  143. package/runtime/assets/metal-value-CTPzpBvh.js +1 -0
  144. package/runtime/assets/metal-volatility-g94-b7hn.js +1 -0
  145. package/runtime/assets/metals-board-DPfkH3Vj.js +1 -0
  146. package/runtime/assets/metals-correlation-BjZHMzKY.js +1 -0
  147. package/runtime/assets/metals-shared-CN6-LtS3.js +1 -0
  148. package/runtime/assets/metric-row-CqsjSvCI.js +1 -0
  149. package/runtime/assets/mini-line-chart-B0Ixv2kC.js +1 -0
  150. package/runtime/assets/mining-pools-BpaMCs0f.js +1 -0
  151. package/runtime/assets/mining-pools-share-CrfTxNKr.js +1 -0
  152. package/runtime/assets/misery-index-BU2requD.js +1 -0
  153. package/runtime/assets/money-BHiVNo0u.js +1 -0
  154. package/runtime/assets/mover-row-DmmszLhN.js +1 -0
  155. package/runtime/assets/movers-bars-Bp8o2qzk.js +1 -0
  156. package/runtime/assets/movers-bubbles-BidtAeZE.js +1 -0
  157. package/runtime/assets/multi-series-line-chart-DyOsZlI2.css +1 -0
  158. package/runtime/assets/multi-series-line-chart-XRttVKf5.js +1 -0
  159. package/runtime/assets/mvrv-CrYk75Yb.js +1 -0
  160. package/runtime/assets/mvrv-zscore-chart-0m51ohsV.js +1 -0
  161. package/runtime/assets/national-debt-BExrnkxj.js +1 -0
  162. package/runtime/assets/news-feed-BHQ8VVq_.js +1 -0
  163. package/runtime/assets/nft-activity-bars-BjGU2vJF.js +1 -0
  164. package/runtime/assets/nft-bubbles-BU8EpLxc.js +1 -0
  165. package/runtime/assets/nft-collections-BED52ibd.js +1 -0
  166. package/runtime/assets/nft-scatter-CGhED2cB.js +1 -0
  167. package/runtime/assets/nft-treemap-PO55tL6W.js +1 -0
  168. package/runtime/assets/note-Dgl6DLv8.js +3 -0
  169. package/runtime/assets/nupl-DglP-qbC.js +1 -0
  170. package/runtime/assets/nupl-cycle-chart-S9yflXUB.js +1 -0
  171. package/runtime/assets/nyfed-fed-funds-band-gauge-CFMKcqEc.js +1 -0
  172. package/runtime/assets/nyfed-reference-rate-bars-C_3KkqpO.js +1 -0
  173. package/runtime/assets/nyfed-sofr-term-averages-bars-Dqaa52Pl.js +1 -0
  174. package/runtime/assets/ofr-stress-category-area-DnEjZbRo.js +1 -0
  175. package/runtime/assets/ohlcv-volume-bars-Bi83GPWW.js +1 -0
  176. package/runtime/assets/oi-treemap-BbPekPJp.js +1 -0
  177. package/runtime/assets/onchain-oscillator-overlay-Ck_7aTc_.js +1 -0
  178. package/runtime/assets/open-interest-B5119LVQ.js +1 -0
  179. package/runtime/assets/options-flow-skew-Cj0v65sh.js +1 -0
  180. package/runtime/assets/options-iv-Bbopuw_Z.js +1 -0
  181. package/runtime/assets/options-max-pain-DkUoBRmq.js +1 -0
  182. package/runtime/assets/options-max-pain-multi-BZq8vuHy.js +1 -0
  183. package/runtime/assets/options-oi-ladder-heatmap-BMFAQkEI.js +1 -0
  184. package/runtime/assets/options-oi-skew-B3eQqfLD.js +1 -0
  185. package/runtime/assets/options-oi-strike-D1ZtVHSn.js +1 -0
  186. package/runtime/assets/options-put-call-lwGRvlsC.js +1 -0
  187. package/runtime/assets/options-vol-smile-zdzBnvMN.js +1 -0
  188. package/runtime/assets/options-vol-spread-CnZEubR3.js +1 -0
  189. package/runtime/assets/order-book-depth-CeFNsjv3.js +1 -0
  190. package/runtime/assets/payrolls-bars-T0e6cyjh.js +1 -0
  191. package/runtime/assets/pi-cycle-CqX0lAu1.js +1 -0
  192. package/runtime/assets/pie-chart-cmDhECET.js +1 -0
  193. package/runtime/assets/pomodoro-BstwVCqa.js +1 -0
  194. package/runtime/assets/portfolio-allocation-DzjS0F9u.js +1 -0
  195. package/runtime/assets/portfolio-common-CcbzaPrv.js +1 -0
  196. package/runtime/assets/portfolio-holdings-1d7jT_Dv.js +1 -0
  197. package/runtime/assets/portfolio-movers-vdVKKjAL.js +1 -0
  198. package/runtime/assets/portfolio-value-C2hCsXwG.js +1 -0
  199. package/runtime/assets/portfolio-value-bars-Bkh18oxT.js +1 -0
  200. package/runtime/assets/prediction-market-bars-WOea9YlB.js +1 -0
  201. package/runtime/assets/prediction-market-scatter-Bg8Hp9YU.js +1 -0
  202. package/runtime/assets/prediction-markets-bubble-DUFbL6ZL.js +1 -0
  203. package/runtime/assets/prediction-markets-vrOoZGTG.js +1 -0
  204. package/runtime/assets/price-chart-NGnXyEwF.js +1 -0
  205. package/runtime/assets/price-compare-D0cu78Tg.js +1 -0
  206. package/runtime/assets/price-liveline-B_6-t2eO.js +1 -0
  207. package/runtime/assets/price-ticker-DpNG6jQF.js +1 -0
  208. package/runtime/assets/protocol-fees-bubbles-CfMsdfGV.js +1 -0
  209. package/runtime/assets/protocol-fees-treemap-b4z8_0dU.js +1 -0
  210. package/runtime/assets/protocol-fees-vs-tvl-scatter-D-REm65e.js +1 -0
  211. package/runtime/assets/protocol-tvl-bubbles-BDAUSzkE.js +1 -0
  212. package/runtime/assets/protocol-tvl-by-category-fw6ADU1F.js +1 -0
  213. package/runtime/assets/protocol-tvl-chart-Q1hGvfby.js +1 -0
  214. package/runtime/assets/protocol-tvl-share-area-DXQzexAL.js +1 -0
  215. package/runtime/assets/protocol-tvl-treemap-DC_qfwIF.js +1 -0
  216. package/runtime/assets/puell-multiple-uc0NZXdh.js +1 -0
  217. package/runtime/assets/put-call-gauge-DtlDFtDZ.js +1 -0
  218. package/runtime/assets/quote-CuEE1U0a.js +1 -0
  219. package/runtime/assets/radial-gauge-DUhIBGcM.js +1 -0
  220. package/runtime/assets/rates-board-Byz3erIf.js +1 -0
  221. package/runtime/assets/react-DdM8gsnR.js +9 -0
  222. package/runtime/assets/real-wages-BU2XSTAC.js +1 -0
  223. package/runtime/assets/realized-price-D91T6q7P.js +1 -0
  224. package/runtime/assets/reserve-risk-CuRuMPUz.js +1 -0
  225. package/runtime/assets/returns-projector-DvVTUgZa.js +1 -0
  226. package/runtime/assets/risk-reward-Brde1Qql.js +1 -0
  227. package/runtime/assets/rolldown-runtime-Bh1tDfsg.js +1 -0
  228. package/runtime/assets/rsi-momentum-DFARJhwN.js +1 -0
  229. package/runtime/assets/rules-card-CDgHHXtE.js +1 -0
  230. package/runtime/assets/scatter-chart-tjlc1NWO.js +1 -0
  231. package/runtime/assets/scene-DgXljRUS.js +1 -0
  232. package/runtime/assets/sector-bars-D0A6Sj3C.js +1 -0
  233. package/runtime/assets/sector-bubbles-C5lQoTi9.js +1 -0
  234. package/runtime/assets/sector-performance-CVVJ-VGu.js +1 -0
  235. package/runtime/assets/sector-treemap-lyftrGDF.js +1 -0
  236. package/runtime/assets/sentiment-gauge-CdnbFwyn.js +1 -0
  237. package/runtime/assets/session-progress-BfuN5Ilt.js +1 -0
  238. package/runtime/assets/short-volume-B2TiqLCD.js +1 -0
  239. package/runtime/assets/short-volume-bars-Cm-TnzY-.js +1 -0
  240. package/runtime/assets/snake-D0Secq9I.js +1 -0
  241. package/runtime/assets/sopr-j5kMKG03.js +1 -0
  242. package/runtime/assets/spotify-embed-BJIW3cBK.js +1 -0
  243. package/runtime/assets/stablecoin-chains-jLxaRE9T.js +1 -0
  244. package/runtime/assets/stablecoin-supply-6Q2kIHWN.js +1 -0
  245. package/runtime/assets/stacked-area-chart-B3ayMBfx.js +1 -0
  246. package/runtime/assets/stopwatch-DKtBGcQd.js +1 -0
  247. package/runtime/assets/timeframe-DUDLPk23.js +1 -0
  248. package/runtime/assets/tokenized-gold-B6KMvUVf.js +1 -0
  249. package/runtime/assets/top-movers-Bzz7lloh.js +1 -0
  250. package/runtime/assets/treasury-auction-demand-scatter-CUoIYkrP.js +1 -0
  251. package/runtime/assets/treasury-auction-size-bars-DXMJ0a9C.js +1 -0
  252. package/runtime/assets/treasury-auctions-ChsX0OUJ.js +1 -0
  253. package/runtime/assets/treasury-avg-rate-bars-DQ_HgQ0U.js +1 -0
  254. package/runtime/assets/treasury-debt-composition-area-C3sBaNNX.js +1 -0
  255. package/runtime/assets/treemap-leaf-f-vE1hUM.js +1 -0
  256. package/runtime/assets/trending-bars-DtgWzD_x.js +1 -0
  257. package/runtime/assets/trending-bubbles-DRJqfQqK.js +1 -0
  258. package/runtime/assets/trending-coins-n7mmU4mL.js +1 -0
  259. package/runtime/assets/tvl-bars-5IQ6zz2M.js +1 -0
  260. package/runtime/assets/tvl-bubbles-DU2M5Zl1.js +1 -0
  261. package/runtime/assets/tvl-treemap-qsmpeeAB.js +1 -0
  262. package/runtime/assets/ui-CYz5SGgR.js +1 -0
  263. package/runtime/assets/us-gold-reserve-8L2oYWV_.js +1 -0
  264. package/runtime/assets/us-gold-vaults-TuTFtr2T.js +1 -0
  265. package/runtime/assets/use-countdown-DSLbwkPl.js +1 -0
  266. package/runtime/assets/utils-BsB3-B7h.js +1 -0
  267. package/runtime/assets/video-CYH3El1X.js +1 -0
  268. package/runtime/assets/volume-movers-scatter-B8dYI1EZ.js +1 -0
  269. package/runtime/assets/volume-profile-W44vUguI.js +1 -0
  270. package/runtime/assets/volume-share-donut-CLbp38ek.js +1 -0
  271. package/runtime/assets/yield-composition-scatter-BinG9C4D.js +1 -0
  272. package/runtime/assets/yield-curve-DHeqDdBV.js +1 -0
  273. package/runtime/assets/yield-momentum-bars-D4ToH0Fp.js +1 -0
  274. package/runtime/assets/yield-risk-pie-C73G7WqW.js +1 -0
  275. package/runtime/assets/yield-scanner-uR4S_OrU.js +1 -0
  276. package/runtime/assets/yield-scatter-CnZQ7naG.js +1 -0
  277. package/runtime/index.html +7 -3
  278. package/runtime/assets/bar-chart-DCMbxUJx.js +0 -1
  279. package/runtime/assets/bitcoin-dominance-DQ6fUOfp.js +0 -1
  280. package/runtime/assets/breakeven-BiMfl0NU.js +0 -1
  281. package/runtime/assets/breathing-BQamMTOy.js +0 -1
  282. package/runtime/assets/btc-block-size-bars-DbwVb3YX.js +0 -1
  283. package/runtime/assets/btc-blocks-UZJqCEtB.js +0 -1
  284. package/runtime/assets/btc-difficulty-BtNgUCRS.js +0 -1
  285. package/runtime/assets/btc-difficulty-chart-BNT2fdwu.js +0 -1
  286. package/runtime/assets/btc-fees-CJhybpGO.js +0 -1
  287. package/runtime/assets/btc-hashrate-CtKkSA37.js +0 -1
  288. package/runtime/assets/btc-mempool-Dvlm6Uqk.js +0 -1
  289. package/runtime/assets/btc-shared-yOWoU9Im.js +0 -1
  290. package/runtime/assets/bubbles-shared-DlmjtiIA.js +0 -1
  291. package/runtime/assets/calculator-vMXfcXI8.js +0 -1
  292. package/runtime/assets/capital-structure-bars-B8-6gPY8.js +0 -1
  293. package/runtime/assets/chain-activity-Dj-2gNmT.js +0 -1
  294. package/runtime/assets/chain-activity-bars-BKvgXG2Z.js +0 -1
  295. package/runtime/assets/chain-activity-scatter-BQHleuZR.js +0 -1
  296. package/runtime/assets/chain-price-movers-Brvxvf8U.js +0 -1
  297. package/runtime/assets/chart-utils-DGogNvJT.js +0 -1
  298. package/runtime/assets/checklist-CNXEkmSt.js +0 -1
  299. package/runtime/assets/clock-Cygi_7Rq.js +0 -1
  300. package/runtime/assets/coin-momentum-heatmap-1twNsb0f.js +0 -1
  301. package/runtime/assets/coin-momentum-scatter-DPsgGLFi.js +0 -1
  302. package/runtime/assets/coin-movers-CVT1PPyM.js +0 -1
  303. package/runtime/assets/content-shared-BZ1XzrJx.js +0 -1
  304. package/runtime/assets/countdown-DSGwZS9O.js +0 -1
  305. package/runtime/assets/custom-data-eTpLXe-p.js +0 -1
  306. package/runtime/assets/cycle-shared-XoGVsOjC.js +0 -1
  307. package/runtime/assets/cycle-signals-DjvuKoAs.js +0 -1
  308. package/runtime/assets/cycle-valuation-composite-D2lAreTy.js +0 -1
  309. package/runtime/assets/d3-ibrLIlQc.js +0 -1
  310. package/runtime/assets/daily-analysis-00KQOxaw.js +0 -1
  311. package/runtime/assets/day-meter-VL3CbmZ4.js +0 -1
  312. package/runtime/assets/defi-revenue-DWs3X1sr.js +0 -1
  313. package/runtime/assets/dex-hot-pools-Btjw9uOK.js +0 -1
  314. package/runtime/assets/dex-pool-bubbles-DOWGPgDC.js +0 -1
  315. package/runtime/assets/dex-pool-liquidity-scatter-DBqKeUjl.js +0 -1
  316. package/runtime/assets/dex-pool-treemap-Dev3WsvG.js +0 -1
  317. package/runtime/assets/dex-volume-bubbles-C9INGAs-.js +0 -1
  318. package/runtime/assets/dex-volume-chart-CdhI9ySp.js +0 -1
  319. package/runtime/assets/dex-volume-share-area-DblxtqOC.js +0 -1
  320. package/runtime/assets/dex-volume-treemap-LweUYNfn.js +0 -1
  321. package/runtime/assets/dice-CRJFRdlS.js +0 -1
  322. package/runtime/assets/dino-game-DIj8Xqmq.js +0 -1
  323. package/runtime/assets/divider-C0PhyAZz.js +0 -1
  324. package/runtime/assets/dominance-bars-CNztOXI9.js +0 -1
  325. package/runtime/assets/dominance-gauge-BSlVu-kG.js +0 -1
  326. package/runtime/assets/drawdy-UVwx54Tz.js +0 -1
  327. package/runtime/assets/dxy-DDnItBY-.js +0 -1
  328. package/runtime/assets/dxy-chart-CbyyyRdn.js +0 -1
  329. package/runtime/assets/editor-C9dj6xX0.css +0 -1
  330. package/runtime/assets/editor-CpgNu0wu.js +0 -68
  331. package/runtime/assets/etf-flow-bars-Dknb70p4.js +0 -1
  332. package/runtime/assets/etf-flow-calendar-DXTg-p2v.js +0 -1
  333. package/runtime/assets/etf-flows-D7WwvrYS.js +0 -1
  334. package/runtime/assets/etf-flows-chart-D_Ts_7Bc.js +0 -1
  335. package/runtime/assets/etf-issuer-bars-B5q3WXIk.js +0 -1
  336. package/runtime/assets/etf-issuer-treemap-hdTKUL3C.js +0 -1
  337. package/runtime/assets/eth-issuance-impact-CSucvUy4.js +0 -1
  338. package/runtime/assets/eth-staking-Yp_RzOHD.js +0 -1
  339. package/runtime/assets/eth-supply-jf4tRC80.js +0 -1
  340. package/runtime/assets/fear-greed-BrDutlol.js +0 -1
  341. package/runtime/assets/fear-greed-chart-BPAfnROs.js +0 -1
  342. package/runtime/assets/feed-row-mVg1d5Zj.js +0 -1
  343. package/runtime/assets/filings-feed-BrtWoUaf.js +0 -1
  344. package/runtime/assets/filings-mix-D8Z-fvzY.js +0 -1
  345. package/runtime/assets/financial-stress-DaxcQDnz.js +0 -1
  346. package/runtime/assets/flappy-bird-M38jNjAd.js +0 -1
  347. package/runtime/assets/format-DxkEZcwQ.js +0 -1
  348. package/runtime/assets/fundamentals-TlBRBKFV.js +0 -1
  349. package/runtime/assets/funding-bars-BPDrsC0K.js +0 -1
  350. package/runtime/assets/funding-carry-area-BZRpyy3L.js +0 -1
  351. package/runtime/assets/funding-comparison-C1OOzJw-.js +0 -1
  352. package/runtime/assets/funding-crowding-scatter-DDjzoq8v.js +0 -1
  353. package/runtime/assets/funding-heatmap-DqnJJPw0.js +0 -1
  354. package/runtime/assets/funding-leaderboard-bars-CrQMBbY7.js +0 -1
  355. package/runtime/assets/funding-rate-chart-dYIjvTBt.js +0 -1
  356. package/runtime/assets/funding-spread-bars-CRoG-zHf.js +0 -1
  357. package/runtime/assets/funding-venue-heatmap-DA0JsXzA.js +0 -1
  358. package/runtime/assets/fx-board-C_h1IJJy.js +0 -1
  359. package/runtime/assets/fx-cross-heatmap-CLHkKvsB.js +0 -1
  360. package/runtime/assets/fx-movers-bars-_U6XrETl.js +0 -1
  361. package/runtime/assets/fx-trend-chart-Cdi-lmjx.js +0 -1
  362. package/runtime/assets/game-ui-BiMS2KJf.js +0 -1
  363. package/runtime/assets/gridstack-BxxvPIFU.js +0 -9
  364. package/runtime/assets/gridstack-FIb_WQSt.css +0 -1
  365. package/runtime/assets/heading-BS9IhuAM.js +0 -1
  366. package/runtime/assets/hero-number-R-27T2n_.js +0 -1
  367. package/runtime/assets/holiday-calendar-BxcU0Y64.js +0 -1
  368. package/runtime/assets/image-HcDu9YKF.js +0 -1
  369. package/runtime/assets/image-gallery-BCXhCjqj.js +0 -1
  370. package/runtime/assets/index-BJ1Zyy42.js +0 -1108
  371. package/runtime/assets/index-BXLwJuoo.css +0 -1
  372. package/runtime/assets/index-BpPIfN5S.js +0 -1
  373. package/runtime/assets/index-Bw1aFtyx.js +0 -1
  374. package/runtime/assets/index-DuNO-RcB.js +0 -1
  375. package/runtime/assets/index-yv-SCb9g.css +0 -1
  376. package/runtime/assets/indicators-Cw7CVPn4.js +0 -1
  377. package/runtime/assets/inflation-pulse-BDmh42Nq.js +0 -1
  378. package/runtime/assets/journal-log-BKsmm4ZL.js +0 -1
  379. package/runtime/assets/journal-open-CQtXIVzV.js +0 -1
  380. package/runtime/assets/journal-results-BBhWJDi4.js +0 -1
  381. package/runtime/assets/journal-score-DRmD6tOH.js +0 -1
  382. package/runtime/assets/journal-store-DVDSxNMj.js +0 -1
  383. package/runtime/assets/journal-ui-YZ5om8r6.js +0 -1
  384. package/runtime/assets/labor-force-flow-B-8gZXZw.js +0 -1
  385. package/runtime/assets/labor-market-C6nbrubk.js +0 -1
  386. package/runtime/assets/lightning-stats-cbygNRrq.js +0 -1
  387. package/runtime/assets/link-grid-C0BQkbQ9.js +0 -1
  388. package/runtime/assets/liquidity-basis-bars-Dd5FSjDX.js +0 -1
  389. package/runtime/assets/live-tick-9Q3ubPF9.js +0 -1
  390. package/runtime/assets/liveline-bcaEuskN.js +0 -1
  391. package/runtime/assets/ma-multiplier-CrY1aFKX.js +0 -1
  392. package/runtime/assets/macro-calendar-D9MJ74wW.js +0 -1
  393. package/runtime/assets/market-bubbles-BKLV2VSd.js +0 -1
  394. package/runtime/assets/market-cap-treemap-B9af5p9K.js +0 -1
  395. package/runtime/assets/market-data-CvmpLFSo.js +0 -1
  396. package/runtime/assets/market-hours-jJUnunAF.js +0 -1
  397. package/runtime/assets/market-scatter-_f6FvF2I.js +0 -1
  398. package/runtime/assets/marquee-CJGebjBa.js +0 -28
  399. package/runtime/assets/mayer-multiple-DcxCnx6X.js +0 -1
  400. package/runtime/assets/mempool-fee-curve-yI10fMrE.js +0 -1
  401. package/runtime/assets/metric-row-BVVhjsjK.js +0 -1
  402. package/runtime/assets/mini-line-chart-DyG55cVW.js +0 -1
  403. package/runtime/assets/mining-pools-SIhc1qJ_.js +0 -1
  404. package/runtime/assets/mining-pools-share-DQSjhlWH.js +0 -1
  405. package/runtime/assets/misery-index-p5iEl6PS.js +0 -1
  406. package/runtime/assets/mover-row-_czAON2U.js +0 -1
  407. package/runtime/assets/movers-bars-clMvsESM.js +0 -1
  408. package/runtime/assets/movers-bubbles-CnHOfNZx.js +0 -1
  409. package/runtime/assets/mvrv-x4gyjhWx.js +0 -1
  410. package/runtime/assets/mvrv-zscore-chart-BT3IGmGY.js +0 -1
  411. package/runtime/assets/national-debt-DNtVgcl5.js +0 -1
  412. package/runtime/assets/news-feed-BVfKqSh7.js +0 -1
  413. package/runtime/assets/nft-activity-bars-lFRednN3.js +0 -1
  414. package/runtime/assets/nft-bubbles-ClNH9-_X.js +0 -1
  415. package/runtime/assets/nft-collections-B9RW4PJG.js +0 -1
  416. package/runtime/assets/nft-scatter--MbPsUx4.js +0 -1
  417. package/runtime/assets/nft-treemap-DBkTmq6-.js +0 -1
  418. package/runtime/assets/note-BhUZxKk8.js +0 -3
  419. package/runtime/assets/nupl-D3l-QZE3.js +0 -1
  420. package/runtime/assets/nupl-cycle-chart-BskEKMiX.js +0 -1
  421. package/runtime/assets/nyfed-fed-funds-band-gauge-CyShM9Rb.js +0 -1
  422. package/runtime/assets/nyfed-reference-rate-bars-WKmIeI9B.js +0 -1
  423. package/runtime/assets/nyfed-sofr-term-averages-bars-BXymij4O.js +0 -1
  424. package/runtime/assets/ofr-stress-category-area-Cq2zYtm9.js +0 -1
  425. package/runtime/assets/ohlcv-volume-bars-BqgMyH4V.js +0 -1
  426. package/runtime/assets/oi-treemap-Bu6FQGPf.js +0 -1
  427. package/runtime/assets/onchain-oscillator-overlay-BETEO4VQ.js +0 -1
  428. package/runtime/assets/open-interest-DPwK2Vft.js +0 -1
  429. package/runtime/assets/options-flow-skew-CLWqzUM0.js +0 -1
  430. package/runtime/assets/options-iv-tjSjFT91.js +0 -1
  431. package/runtime/assets/options-max-pain-multi-bMgyJ7e8.js +0 -1
  432. package/runtime/assets/options-max-pain-v6hCUt4V.js +0 -1
  433. package/runtime/assets/options-oi-ladder-heatmap-M34leT_q.js +0 -1
  434. package/runtime/assets/options-oi-skew-DxGLV4Co.js +0 -1
  435. package/runtime/assets/options-oi-strike-CoVTVWcx.js +0 -1
  436. package/runtime/assets/options-put-call-fRylJJIM.js +0 -1
  437. package/runtime/assets/options-vol-smile-DsHa2Bug.js +0 -1
  438. package/runtime/assets/options-vol-spread-BB1X9lml.js +0 -1
  439. package/runtime/assets/payrolls-bars-CQOZQEvE.js +0 -1
  440. package/runtime/assets/pi-cycle-BTdRfEfm.js +0 -1
  441. package/runtime/assets/pie-chart-BIxKuHm-.js +0 -1
  442. package/runtime/assets/pomodoro-lYAXlnH5.js +0 -1
  443. package/runtime/assets/portfolio-allocation-CJCJ-fv5.js +0 -1
  444. package/runtime/assets/portfolio-common-BMRwgiXd.js +0 -1
  445. package/runtime/assets/portfolio-holdings-BwUpyolL.js +0 -1
  446. package/runtime/assets/portfolio-movers-CGcHyyU9.js +0 -1
  447. package/runtime/assets/portfolio-value--mB-D1zn.js +0 -1
  448. package/runtime/assets/portfolio-value-bars-C1sg3z_9.js +0 -1
  449. package/runtime/assets/prediction-market-bars-CV7qn0TK.js +0 -1
  450. package/runtime/assets/prediction-market-scatter-vvAyUSMc.js +0 -1
  451. package/runtime/assets/prediction-markets-Dj5pUGQ9.js +0 -1
  452. package/runtime/assets/prediction-markets-bubble-Dy58nx5D.js +0 -1
  453. package/runtime/assets/price-chart-BWVJKy6l.js +0 -1
  454. package/runtime/assets/price-compare-X_somRkJ.js +0 -1
  455. package/runtime/assets/price-liveline-BcfvYH4i.js +0 -1
  456. package/runtime/assets/price-ticker-Dp5X5iEE.js +0 -1
  457. package/runtime/assets/protocol-fees-bubbles-cOlmopfM.js +0 -1
  458. package/runtime/assets/protocol-fees-treemap-k3DCqpib.js +0 -1
  459. package/runtime/assets/protocol-fees-vs-tvl-scatter-DE0XqWUP.js +0 -1
  460. package/runtime/assets/protocol-tvl-bubbles-C_y8RNpr.js +0 -1
  461. package/runtime/assets/protocol-tvl-by-category-CU3EhtYv.js +0 -1
  462. package/runtime/assets/protocol-tvl-chart-BSjYp87K.js +0 -1
  463. package/runtime/assets/protocol-tvl-share-area-A9uUDjqD.js +0 -1
  464. package/runtime/assets/protocol-tvl-treemap-DK99PI9E.js +0 -1
  465. package/runtime/assets/puell-multiple-DUwx8WAi.js +0 -1
  466. package/runtime/assets/put-call-gauge-wPFbaG0I.js +0 -1
  467. package/runtime/assets/quote-BEXrdAL4.js +0 -1
  468. package/runtime/assets/radial-gauge-0BzRQ6fO.js +0 -1
  469. package/runtime/assets/rates-board-Bo-1vZL3.js +0 -1
  470. package/runtime/assets/react-qoZPGuNy.js +0 -49
  471. package/runtime/assets/real-wages-DFbQjlXf.js +0 -1
  472. package/runtime/assets/realized-price-C7sCYZ-5.js +0 -1
  473. package/runtime/assets/reserve-risk-CYWr6Bnu.js +0 -1
  474. package/runtime/assets/returns-projector-Bitu8mA2.js +0 -1
  475. package/runtime/assets/risk-reward-5CA4dPWK.js +0 -1
  476. package/runtime/assets/rsi-momentum-BdScXy4t.js +0 -1
  477. package/runtime/assets/rules-card-BxdIuORn.js +0 -1
  478. package/runtime/assets/scatter-chart-B78EA7lD.js +0 -1
  479. package/runtime/assets/scene-uwfOGek1.js +0 -1
  480. package/runtime/assets/sector-bars-B4Nabix2.js +0 -1
  481. package/runtime/assets/sector-bubbles-D_s1FnKb.js +0 -1
  482. package/runtime/assets/sector-performance-C8K8FBsp.js +0 -1
  483. package/runtime/assets/sector-treemap-DOn3li5j.js +0 -1
  484. package/runtime/assets/sentiment-gauge-D-TyqTrT.js +0 -1
  485. package/runtime/assets/session-progress-2uZKU_tb.js +0 -1
  486. package/runtime/assets/short-volume-DrAqZxL_.js +0 -1
  487. package/runtime/assets/short-volume-bars-D0tDnbRp.js +0 -1
  488. package/runtime/assets/snake-CPrCYXRC.js +0 -1
  489. package/runtime/assets/sopr-CL-DcV9H.js +0 -1
  490. package/runtime/assets/spotify-embed-Cuyo3WcD.js +0 -1
  491. package/runtime/assets/stablecoin-chains-BNyBP4r7.js +0 -1
  492. package/runtime/assets/stablecoin-supply-CDoJSW65.js +0 -1
  493. package/runtime/assets/stopwatch-C5UbM7BR.js +0 -1
  494. package/runtime/assets/top-movers-n7gjNCAB.js +0 -1
  495. package/runtime/assets/treasury-auction-demand-scatter-B2GgfweB.js +0 -1
  496. package/runtime/assets/treasury-auction-size-bars-RSKrqPZN.js +0 -1
  497. package/runtime/assets/treasury-auctions-DmhLNhux.js +0 -1
  498. package/runtime/assets/treasury-avg-rate-bars-CHo7_TZ6.js +0 -1
  499. package/runtime/assets/treasury-debt-composition-area-D9TIg2Fu.js +0 -1
  500. package/runtime/assets/treemap-leaf-QG-L-SIG.js +0 -1
  501. package/runtime/assets/trending-bars-CFUOf_2T.js +0 -1
  502. package/runtime/assets/trending-bubbles-CWixlrYZ.js +0 -1
  503. package/runtime/assets/trending-coins-XmlyMu9W.js +0 -1
  504. package/runtime/assets/tvl-bars-CMr0p3wy.js +0 -1
  505. package/runtime/assets/tvl-bubbles-CBwy6njm.js +0 -1
  506. package/runtime/assets/tvl-treemap-Df9Sw5pQ.js +0 -1
  507. package/runtime/assets/ui-Bq3RQsdJ.js +0 -1
  508. package/runtime/assets/use-countdown-BmcF-qdL.js +0 -1
  509. package/runtime/assets/utils-DxneYyA_.js +0 -1
  510. package/runtime/assets/video-Cb7G8kra.js +0 -1
  511. package/runtime/assets/volume-movers-scatter-MwF5sr-K.js +0 -1
  512. package/runtime/assets/volume-profile-DM349em1.js +0 -1
  513. package/runtime/assets/volume-share-donut-FMessqoh.js +0 -1
  514. package/runtime/assets/yield-composition-scatter-51jp_MgP.js +0 -1
  515. package/runtime/assets/yield-curve-WOaDSVNR.js +0 -1
  516. package/runtime/assets/yield-momentum-bars-0hhg35dJ.js +0 -1
  517. package/runtime/assets/yield-risk-pie-mBxQGJN1.js +0 -1
  518. package/runtime/assets/yield-scanner-DTDsWH9C.js +0 -1
  519. package/runtime/assets/yield-scatter-BkeRhOK4.js +0 -1
@@ -1 +0,0 @@
1
- import{r as l,j as e}from"./react-qoZPGuNy.js";import{i as S}from"./content-shared-BZ1XzrJx.js";import{D as h,U as f,a as y,e as v}from"./format-DxkEZcwQ.js";import{f as M,aV as R}from"./index-BJ1Zyy42.js";import{s as O}from"./ui-Bq3RQsdJ.js";R.schema;const P="var(--color-highlight)";function b(s){const a=Number(s);return Number.isFinite(a)?a:0}function g({label:s,value:a,onChange:n}){return e.jsxs("label",{className:"flex min-w-0 flex-col gap-1",children:[e.jsx("span",{className:"caption text-soft uppercase tracking-[0.12em]",children:s}),e.jsxs("span",{className:`flex items-center px-2 py-1.5 ${S}`,children:[e.jsx("span",{className:"body-sm text-soft",children:"$"}),e.jsx("input",{type:"number",inputMode:"decimal",value:a,onChange:c=>n(c.target.value),className:"body-sm text-normal min-w-0 flex-1 bg-transparent text-right tabular-nums outline-none [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"})]})]})}function L({value:s,onChange:a}){return e.jsx("div",{className:`flex gap-1 p-1 ${S}`,children:["long","short"].map(n=>{const c=n===s;return e.jsx("button",{type:"button",onClick:()=>a(n),className:`caption flex-1 rounded px-2 py-1 text-center uppercase tracking-[0.12em] transition-colors ${c?"bg-white/[0.06] font-semibold":"text-soft"}`,style:c?{color:P}:void 0,children:n},n)})})}function T({config:s}){const[a,n]=l.useState(String(s.entry)),[c,j]=l.useState(String(s.stop)),[m,N]=l.useState(String(s.target)),[o,k]=l.useState(s.direction);l.useEffect(()=>n(String(s.entry)),[s.entry]),l.useEffect(()=>j(String(s.stop)),[s.stop]),l.useEffect(()=>N(String(s.target)),[s.target]),l.useEffect(()=>k(s.direction),[s.direction]);const t=l.useMemo(()=>{const r=b(a),p=b(c),x=b(m),i=Math.abs(r-p),d=Math.abs(x-r),D=i>0?d/i:0,E=r!==0?i/r*100:0,$=r!==0?d/r*100:0,u=i+d,U=u>0?i/u*100:50,F=o==="long"?p<r&&r<x:x<r&&r<p;return{riskPerUnit:i,rewardPerUnit:d,rr:D,riskPct:E,rewardPct:$,riskShare:U,hasRisk:i>0,hasData:u>0,valid:F}},[a,c,m,o]),C=t.hasData?t.hasRisk?`1 : ${t.rr.toFixed(t.rr>=10?0:1)}`:"∞":"—",w=s.label.trim();return e.jsxs("div",{className:`${O} flex flex-col gap-3`,children:[w&&e.jsx("span",{className:"caption text-soft uppercase tracking-[0.12em]",children:w}),e.jsxs("div",{className:"grid grid-cols-3 gap-2",children:[e.jsx(g,{label:"Entry",value:a,onChange:n}),e.jsx(g,{label:"Stop",value:c,onChange:j}),e.jsx(g,{label:"Target",value:m,onChange:N})]}),e.jsx(L,{value:o,onChange:k}),e.jsxs("div",{className:"flex flex-col gap-2.5 rounded-lg border border-white/[0.07] bg-white/[0.03] p-3",children:[e.jsxs("div",{className:"flex flex-col items-center gap-0.5",children:[e.jsx("span",{className:"caption text-soft uppercase tracking-[0.12em]",children:"Risk : Reward"}),e.jsx("span",{className:"metric-md",style:{color:t.hasData?P:void 0},children:C})]}),e.jsxs("div",{className:"flex h-2.5 w-full overflow-hidden rounded-full bg-white/[0.06]",children:[e.jsx("span",{className:"h-full",style:{width:`${t.riskShare}%`,background:h}}),e.jsx("span",{className:"h-full",style:{width:`${100-t.riskShare}%`,background:f}})]}),e.jsxs("div",{className:"flex items-start justify-between gap-2",children:[e.jsxs("div",{className:"flex min-w-0 flex-col",children:[e.jsx("span",{className:"caption uppercase tracking-[0.12em]",style:{color:h},children:"Risk"}),e.jsx("span",{className:"body-sm tabular-nums",style:{color:h},children:y(-t.riskPct)}),e.jsxs("span",{className:"caption text-soft tabular-nums",children:[v(t.riskPerUnit)," / unit"]})]}),e.jsxs("div",{className:"flex min-w-0 flex-col items-end text-right",children:[e.jsx("span",{className:"caption uppercase tracking-[0.12em]",style:{color:f},children:"Reward"}),e.jsx("span",{className:"body-sm tabular-nums",style:{color:f},children:y(t.rewardPct)}),e.jsxs("span",{className:"caption text-soft tabular-nums",children:[v(t.rewardPerUnit)," / unit"]})]})]}),t.hasData&&!t.valid&&e.jsxs("span",{className:"caption text-soft",children:["⚠ Prices don't bracket entry for a ",o," setup."]})]})]})}const z=M({...R,component:T});export{z as riskRewardFrame};
@@ -1 +0,0 @@
1
- import{r as b,j as a}from"./react-qoZPGuNy.js";import{z as O,Z as R,M as x}from"./cycle-shared-XoGVsOjC.js";import{D as m,U as u}from"./format-DxkEZcwQ.js";import{r as v,t as y,w as z}from"./indicators-Cw7CVPn4.js";import{f as M,br as c,bo as g}from"./index-BJ1Zyy42.js";import{F as p}from"./ui-Bq3RQsdJ.js";import"./mini-line-chart-DyG55cVW.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";c.schema;function j({config:e}){const{history:r,isLoading:d}=g("btc"),t=b.useMemo(()=>{const f=r.map(o=>o.value),h=v(f,e.period),l=[];for(let o=0;o<r.length;o++){const n=h[o];n!==null&&l.push({time:r[o].time,value:n})}return l},[r,e.period]);if(d)return a.jsx(p,{loading:!0,children:"loading RSI…"});if(t.length===0)return a.jsx(p,{children:"not enough price history yet"});const i=t[t.length-1].value,s=O(i,[{upTo:30,zone:{label:"Oversold",color:u}},{upTo:45,zone:{label:"Risk-off",color:m}},{upTo:55,zone:{label:"Neutral",color:R}},{upTo:80,zone:{label:"Risk-on",color:u}}],{label:"Overbought",color:m});return a.jsx(x,{caption:`RSI ${e.period} · daily`,headline:i.toFixed(0),headlineColor:s.color,zone:s,sparkline:y(t,z(e.window)),sparkColor:s.color})}const S=M({...c,component:j});export{S as rsiMomentumFrame};
@@ -1 +0,0 @@
1
- import{j as s}from"./react-qoZPGuNy.js";import{f as m,b$ as n}from"./index-BJ1Zyy42.js";import{F as i,s as o}from"./ui-Bq3RQsdJ.js";n.schema;function c({config:l}){const r=l.rules.filter(e=>e.trim()),a=l.title.trim();return r.length===0?s.jsx(i,{children:"no rules yet"}):s.jsxs("div",{className:"flex h-full w-full flex-col",children:[a&&s.jsx("div",{className:"body-sm text-strong mb-1 shrink-0 font-semibold",children:a}),s.jsx("ol",{className:`min-h-0 flex-1 ${o}`,children:r.map((e,t)=>s.jsxs("li",{className:"flex gap-2 py-1",children:[s.jsx("span",{className:"caption text-highlight shrink-0 tabular-nums",children:t+1}),s.jsx("span",{className:"body-sm text-normal",children:e})]},t))})]})}const u=m({...n,component:c});export{u as rulesCardFrame};
@@ -1 +0,0 @@
1
- import{r as y,j as F}from"./react-qoZPGuNy.js";import{s as I,e as L,l as N,z as J,A as K}from"./d3-ibrLIlQc.js";import{p as Q}from"./utils-DxneYyA_.js";const $="10px 'DM Sans', sans-serif",Z="var(--color-highlight, #8b8bff)",Y=({data:l,height:u=220,yScale:w="linear",color:b=Z,formatX:A=i=>String(i),formatY:C=i=>String(i),zeroXLine:h=!1,radiusRange:E=[3,14],maxLabels:O=12})=>{const i=y.useRef(null),S=y.useRef(null),[o,P]=y.useState(null);return y.useEffect(()=>{const c=i.current;if(!c)return;const m=()=>{const n=c.getBoundingClientRect().width;P(s=>s!==null&&Math.abs(s-n)<.5?s:n)};m();const e=typeof ResizeObserver<"u"?new ResizeObserver(m):null;return e==null||e.observe(c),()=>e==null?void 0:e.disconnect()},[]),y.useEffect(()=>{const c=S.current;if(!c||!o||o<=0||!l.length)return;I(c).selectAll("*").remove();const m=I(c),e={top:10,right:16,bottom:22,left:46},n=Math.max(o-e.left-e.right,10),s=Math.max(u-e.top-e.bottom,10),g=L(l,t=>t.x),j=(g[1]-g[0]||1)*.08,x=N().domain([Math.min(g[0]-j,h?0:1/0),Math.max(g[1]+j,h?0:-1/0)]).range([0,n]).nice(),R=l.map(t=>t.y),f=w==="log"?J().domain([Math.min(...R)*.7,Math.max(...R)*1.4]).range([s,0]):N().domain(L(R)).range([s,0]).nice(),q=K().domain([0,Math.max(...l.map(t=>t.weight??1),1e-9)]).range([E[0],E[1]]),p=m.append("g").attr("transform",`translate(${e.left},${e.top})`),U=x.ticks(Math.max(2,Math.floor(n/90))),_=f.ticks(4),B=_.filter(t=>{const r=Math.log10(t);return Math.abs(r-Math.round(r))<1e-9}),H=w==="log"&&B.length>=2?B:_;p.selectAll("line.grid-y").data(H).enter().append("line").attr("x1",0).attr("x2",n).attr("y1",t=>f(t)).attr("y2",t=>f(t)).attr("stroke","currentColor").attr("stroke-opacity",.08),p.selectAll("text.tick-y").data(H).enter().append("text").attr("x",-8).attr("y",t=>f(t)).attr("text-anchor","end").attr("dominant-baseline","central").attr("fill","currentColor").attr("fill-opacity",.5).style("font",$).text(t=>C(t)),p.selectAll("text.tick-x").data(U).enter().append("text").attr("x",t=>x(t)).attr("y",s+15).attr("text-anchor","middle").attr("fill","currentColor").attr("fill-opacity",.5).style("font",$).text(t=>A(t)),h&&p.append("line").attr("x1",x(0)).attr("x2",x(0)).attr("y1",0).attr("y2",s).attr("stroke","currentColor").attr("stroke-opacity",.22).attr("stroke-dasharray","3,3");const v=p.selectAll("circle.dot").data(l).enter().append("circle").attr("cx",t=>x(t.x)).attr("cy",t=>f(t.y)).attr("fill",t=>t.color??b).attr("fill-opacity",.55).attr("stroke",t=>t.color??b).attr("stroke-opacity",.9).attr("r",0),T=t=>q(t.weight??1);Q()?v.attr("r",T):v.transition().duration(400).attr("r",T),v.append("title").text(t=>`${t.label} · x ${A(t.x)} · y ${C(t.y)}`);const V=6,W=11,D=[],z=[...l].sort((t,r)=>(r.weight??1)-(t.weight??1)).slice(0,O).map(t=>{const r=t.label.length*V+4,a=x(t.x),G=f(t.y)-T(t)-3;let k,M,d;return a-r/2<0?(k="start",M=0,d=0):a+r/2>n?(k="end",M=n,d=n-r):(k="middle",M=a,d=a-r/2),{d:t,anchor:k,tx:M,cy:G,x1:d,x2:d+r}}).filter(t=>D.some(a=>t.x1<a.x2&&t.x2>a.x1&&t.cy-W<a.y2&&t.cy+2>a.y1)?!1:(D.push({x1:t.x1,x2:t.x2,y1:t.cy-W,y2:t.cy+2}),!0));p.selectAll("text.dot-label").data(z).enter().append("text").attr("x",t=>t.tx).attr("y",t=>t.cy).attr("text-anchor",t=>t.anchor).attr("fill","currentColor").attr("fill-opacity",.75).style("font",$).style("font-weight","600").style("pointer-events","none").text(t=>t.d.label)},[l,o,u,w,b,A,C,h,E,O]),F.jsx("div",{ref:i,className:"w-full",style:{height:u},children:o!==null&&o>0&&F.jsx("svg",{ref:S,width:o,height:u})})},rt=y.memo(Y);export{rt as S};
@@ -1 +0,0 @@
1
- import{r as l,j as U}from"./react-qoZPGuNy.js";const S=new Map;function h(t){var d;if(typeof window>"u"||(d=window.UnicornStudio)!=null&&d.addScene)return Promise.resolve();const u=S.get(t);if(u)return u;const i=new Promise((c,s)=>{const a=document.querySelector(`script[src="${t}"]`),r=a??document.createElement("script"),p=()=>{var f;(f=window.UnicornStudio)!=null&&f.addScene?c():s(new Error("UnicornStudio global missing after script load"))};r.addEventListener("load",p),r.addEventListener("error",()=>s(new Error("UnicornStudio SDK failed to load"))),a||(r.src=t,r.async=!0,document.head.appendChild(r))}).catch(c=>{throw S.delete(t),c});return S.set(t,i),i}let v=0;function P({projectId:t,sdkUrl:u,width:i="100%",height:d="100%",scale:c,dpi:s,onLoad:a}){var m;const r=l.useRef(null),[p,f]=l.useState(typeof window<"u"&&!!((m=window.UnicornStudio)!=null&&m.addScene)),w=l.useRef(a);return w.current=a,l.useEffect(()=>{let o=!1;return h(u).then(()=>{var e;o||(f(!0),(e=w.current)==null||e.call(w))}).catch(()=>{o||f(!1)}),()=>{o=!0}},[u]),l.useEffect(()=>{var E;const o=r.current;if(!p||!o||!((E=window.UnicornStudio)!=null&&E.addScene))return;o.id||(o.id=`zf-unicorn-${v+=1}`);let e=null,y=!1;return window.UnicornStudio.addScene({elementId:o.id,projectId:t,scale:c??1,dpi:s??1.5,fps:60,lazyLoad:!0,production:!0}).then(n=>{var x;if(y){(x=n==null?void 0:n.destroy)==null||x.call(n);return}e=n}).catch(()=>{}),()=>{var n;y=!0,(n=e==null?void 0:e.destroy)==null||n.call(e)}},[p,t,c,s]),U.jsx("div",{ref:r,"aria-hidden":!0,style:{position:"relative",width:typeof i=="number"?`${i}px`:i,height:typeof d=="number"?`${d}px`:d}})}export{P as default};
@@ -1 +0,0 @@
1
- import{r as m,j as a}from"./react-qoZPGuNy.js";import{a as h,D as l,U as f}from"./format-DxkEZcwQ.js";import{f as u,ca as n,bO as g}from"./index-BJ1Zyy42.js";import{F as c}from"./ui-Bq3RQsdJ.js";import{B as p}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";n.schema;function x({config:o}){const{sectors:s,isLoading:i}=g(),e=m.useMemo(()=>[...s].sort((t,r)=>Math.abs(r.changePct24h)-Math.abs(t.changePct24h)).slice(0,o.limit).sort((t,r)=>r.changePct24h-t.changePct24h).map(t=>({label:t.name,value:t.changePct24h})),[s,o.limit]);return i?a.jsx(c,{loading:!0,children:"loading sectors…"}):e.length===0?a.jsx(c,{children:"no sector data yet"}):a.jsx("div",{className:"flex h-full flex-col justify-center text-normal",children:a.jsx(p,{data:e,orientation:"horizontal",color:f,negativeColor:l,height:Math.max(e.length*24,96),formatValue:h})})}const b=u({...n,component:x});export{b as sectorBarsFrame};
@@ -1 +0,0 @@
1
- import{r as s,j as n}from"./react-qoZPGuNy.js";import{B as i}from"./bubbles-shared-DlmjtiIA.js";import{c as r,f as l,a as p}from"./format-DxkEZcwQ.js";import{f as h,ck as c,bO as b}from"./index-BJ1Zyy42.js";import"./ui-Bq3RQsdJ.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";c.schema;function f({config:t}){const{sectors:a,isLoading:m}=b(),o=s.useMemo(()=>a.filter(e=>e.marketCap>0).slice(0,t.limit).map(e=>({id:e.name,label:e.name,value:e.marketCap,color:r(e.changePct24h),borderColor:r(e.changePct24h),changePct24h:e.changePct24h})),[a,t.limit]);return n.jsx(i,{nodes:o,isLoading:m,loadingText:"loading sectors…",emptyText:"no sector data yet",caption:`area by sector mcap · ring by 24h change · top ${o.length}`,formatTitle:e=>`${e.label} · ${l(e.value)} mcap · ${p(e.changePct24h)}`})}const y=h({...c,component:f});export{y as sectorBubblesFrame};
@@ -1 +0,0 @@
1
- import{j as e}from"./react-qoZPGuNy.js";import{a as i,c as l,f}from"./format-DxkEZcwQ.js";import{M as h}from"./metric-row-BVVhjsjK.js";import{f as p,bN as t,bO as d}from"./index-BJ1Zyy42.js";import{F as o,s as x}from"./ui-Bq3RQsdJ.js";t.schema;function u({config:s}){const{sectors:c,isLoading:n}=d(),a=c.slice(0,s.limit);return n?e.jsx(o,{loading:!0,children:"loading sectors…"}):a.length===0?e.jsx(o,{children:"no sector data yet"}):e.jsx("div",{className:`${x} flex flex-col`,children:a.map((r,m)=>e.jsx(h,{label:r.name,meta:f(r.marketCap),value:e.jsx("span",{style:{color:l(r.changePct24h)},children:i(r.changePct24h)})},m))})}const b=p({...t,component:u});export{b as sectorPerformanceFrame};
@@ -1 +0,0 @@
1
- import{r as i,j as o}from"./react-qoZPGuNy.js";import{f as p,a as n}from"./format-DxkEZcwQ.js";import{f,bR as c,bO as h}from"./index-BJ1Zyy42.js";import{T as l,a as u}from"./treemap-leaf-QG-L-SIG.js";import{F as s}from"./ui-Bq3RQsdJ.js";import"./utils-DxneYyA_.js";import"./d3-ibrLIlQc.js";c.schema;function g({width:t,height:a,data:e}){return o.jsx(u,{width:t,height:a,label:e.id,secondary:n(e.changePct24h),title:`${e.id} · ${p(e.marketCap)} · ${n(e.changePct24h)}`})}function d({config:t}){const{sectors:a,isLoading:e}=h(),m=i.useMemo(()=>a.slice(0,t.limit).map(r=>({id:r.name,value:r.marketCap,marketCap:r.marketCap,changePct24h:r.changePct24h})),[a,t.limit]);return e?o.jsx(s,{loading:!0,children:"loading sectors…"}):m.length===0?o.jsx(s,{children:"no sector data yet"}):o.jsx(l,{data:m,LeafComponent:g,getColorValue:r=>r.changePct24h})}const L=f({...c,component:d});export{L as sectorTreemapFrame};
@@ -1 +0,0 @@
1
- import{j as e}from"./react-qoZPGuNy.js";import{f as c,co as s,I as l}from"./index-BJ1Zyy42.js";import{F as n}from"./ui-Bq3RQsdJ.js";import{R as m}from"./radial-gauge-0BzRQ6fO.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";s.schema;function d(t){return t<=25?"#F21553":t<=45?"#F97316":t<=55?"#F59E0B":t<=75?"#84CC16":"#25A78D"}function f(t){const{points:a,isLoading:o}=l(1),r=a[0];if(o)return e.jsx(n,{loading:!0,children:"loading index…"});if(!r)return e.jsx(n,{children:"no sentiment data yet"});const i=d(r.value);return e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-1",children:[e.jsxs(m,{value:r.value,color:i,size:170,children:[e.jsx("div",{className:"metric-xl leading-none",style:{color:i,textShadow:`0 0 28px ${i}55`},children:r.value}),e.jsx("div",{className:"caption text-soft mt-1 uppercase tracking-wide",children:r.classification})]}),e.jsx("div",{className:"caption text-soft",children:"crypto fear & greed"})]})}const F=c({...s,component:f});export{F as sentimentGaugeFrame};
@@ -1 +0,0 @@
1
- import{r as d,j as e}from"./react-qoZPGuNy.js";import{E as u,e as w,f as h}from"./market-data-CvmpLFSo.js";import{f as N,aX as f}from"./index-BJ1Zyy42.js";import{F as v}from"./ui-Bq3RQsdJ.js";f.schema;function x(s){const[o,r]=s.split(":").map(Number);return o*60+r}function b(s){return Math.min(1,Math.max(0,s))}function M({config:s}){const[o,r]=d.useState(()=>new Date);d.useEffect(()=>{const j=setInterval(()=>r(new Date),3e4);return()=>clearInterval(j)},[]);const n=u[s.exchange]??u.NYSE;if(!n)return e.jsx(v,{children:"unknown exchange"});const t=w(n,o),a=t.status==="open",c=s.label.trim(),l=x(t.close)-x(t.open),i=a&&l>0?b((l-t.nextChangeMin)/l):0,p=Math.round(i*100),g=t.status==="holiday"?"Holiday":a?`${p}%`:"Closed",m=a?`closes in ${h(t.nextChangeMin)}`:s.showCountdown?`opens in ${h(t.nextChangeMin)}`:null;return e.jsxs("div",{className:"flex h-full w-full flex-col justify-center gap-2",children:[e.jsxs("div",{className:"caption text-soft flex items-center gap-1.5 uppercase tracking-[0.14em]",children:[e.jsx("span",{className:"text-normal font-semibold",children:n.mark}),e.jsx("span",{children:n.code}),c&&e.jsxs("span",{className:"text-disabled truncate tracking-normal normal-case",children:["· ",c]})]}),e.jsx("div",{className:`metric-md leading-none ${a?"text-strong":"text-soft"}`,children:g}),e.jsx("div",{className:"bg-surface h-2 w-full overflow-hidden rounded-full",children:e.jsx("div",{className:"h-full rounded-full transition-[width] duration-500",style:{width:`${i*100}%`,background:"var(--color-highlight)"}})}),m&&e.jsx("div",{className:"caption text-soft",children:m})]})}const $=N({...f,component:M});export{$ as sessionProgressFrame};
@@ -1 +0,0 @@
1
- import{r as u,j as s}from"./react-qoZPGuNy.js";import{f as x,ap as h,aq as p,A as f}from"./index-BJ1Zyy42.js";import{b,d as i}from"./format-DxkEZcwQ.js";import{F as c,s as j}from"./ui-Bq3RQsdJ.js";h.schema;const d=(e=1)=>`hsl(var(--zf-accent-hue, 242) 85% 72% / ${e})`;function y({symbol:e,entry:o}){const l=e.includes(":")?e:`xyz:${o.symbol}`,r=Math.max(0,Math.min(100,o.shortPct));return s.jsxs("div",{className:"flex min-w-0 items-center gap-3 border-b border-white/[0.06] py-2 last:border-b-0",children:[s.jsx(f,{symbol:l,size:20}),s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("div",{className:"flex items-baseline justify-between gap-2",children:[s.jsx("span",{className:"body-sm text-strong truncate font-semibold",children:o.symbol}),s.jsx("span",{className:"body-md text-strong font-bold tabular-nums",children:b(r,1)})]}),s.jsx("div",{className:"mt-1 h-1.5 w-full overflow-hidden rounded-full bg-white/[0.07]",children:s.jsx("div",{className:"h-full rounded-full",style:{width:`${r}%`,background:d(.85),boxShadow:`0 0 8px ${d(.5)}`}})}),s.jsxs("div",{className:"caption text-soft mt-1 tabular-nums",children:["short ",i(o.shortVolume)," /"," ",i(o.totalVolume)]})]})]})}function v({config:e}){const{data:o,isLoading:l}=p(e.symbols),r=u.useMemo(()=>{const a=e.symbols.map(t=>({symbol:t,entry:o[t]})).filter(t=>!!t.entry);return a.sort((t,n)=>e.sort==="symbol"?t.entry.symbol.localeCompare(n.entry.symbol):e.sort==="volume"?n.entry.totalVolume-t.entry.totalVolume:n.entry.shortPct-t.entry.shortPct),a},[o,e.symbols,e.sort]);if(l)return s.jsx(c,{loading:!0,children:"loading short volume…"});if(r.length===0)return s.jsx(c,{children:"no FINRA short-volume data yet"});const m=r[0].entry.date;return s.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-3",children:[s.jsxs("div",{className:"flex items-start justify-between gap-3",children:[s.jsxs("div",{children:[s.jsx("div",{className:"caption text-soft uppercase",children:"short volume"}),s.jsx("div",{className:"body-sm text-normal",children:m?`FINRA · ${m}`:"FINRA"})]}),s.jsxs("div",{className:"caption text-soft text-right",children:["reported volume",s.jsx("br",{}),"not short interest"]})]}),s.jsx("div",{className:j,children:r.map(({symbol:a,entry:t})=>s.jsx(y,{symbol:a,entry:t},a))})]})}const F=x({...h,component:v});export{F as shortVolumeFrame};
@@ -1 +0,0 @@
1
- import{r as h,j as o}from"./react-qoZPGuNy.js";import{b as u}from"./format-DxkEZcwQ.js";import{f as c,dl as l,aq as f}from"./index-BJ1Zyy42.js";import{F as m}from"./ui-Bq3RQsdJ.js";import{B as p}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";l.schema;function d({config:e}){const{data:a,isLoading:n}=f(e.symbols),s=h.useMemo(()=>{const r=e.symbols.map(t=>a[t]).filter(t=>!!t);return r.sort((t,i)=>i.shortPct-t.shortPct),r.map(t=>({label:t.symbol,value:t.shortPct}))},[a,e.symbols]);return n?o.jsx(m,{loading:!0,children:"loading short volume…"}):s.length===0?o.jsx(m,{children:"no FINRA short-volume data yet"}):o.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[o.jsx(p,{data:s,orientation:"horizontal",height:Math.max(s.length*24,96),formatValue:r=>u(r,1)}),o.jsx("div",{className:"caption text-soft text-center",children:"% of reported volume sold short · FINRA, not short interest"})]})}const y=c({...l,component:d});export{y as shortVolumeBarsFrame};
@@ -1 +0,0 @@
1
- import{r as a,j as L}from"./react-qoZPGuNy.js";import{a as H,G as M,d as X}from"./game-ui-BiMS2KJf.js";import{f as j,aK as z}from"./index-BJ1Zyy42.js";import"./format-DxkEZcwQ.js";const g=18,P=14,W=0,K={snakeHead:"rgba(255, 255, 255, 0.95)",food:"hsla(347, 100%, 62%, 1)"};function N(s,r,l,u,f){s.fillStyle=u,s.fillRect(r.originX+l.x*g+f,r.originY+l.y*g+f,g-f*2,g-f*2)}function q(s,r,l,u,f,y){r.clearRect(0,0,s.width,s.height),N(r,l,l.food,K.food,3),l.snake.forEach((d,C)=>N(r,l,d,C===0?K.snakeHead:y,2)),X(s,r,u,f,y)}function O(s,r,l,u,f,y){r.clearRect(0,0,s.width,s.height),r.textAlign="center",l==="idle"?(r.fillStyle=M.text,r.font='bold 14px "DM Sans", sans-serif',r.fillText("Arrow keys or swipe to start",s.width/2,s.height/2)):(r.fillStyle=M.gameOver,r.font='bold 20px "DM Sans", sans-serif',r.fillText("GAME OVER",s.width/2,s.height/2-30),r.fillStyle=M.text,r.font='bold 14px "DM Sans", sans-serif',r.fillText(`Score: ${u}`,s.width/2,s.height/2),r.fillStyle=M.textSoft,r.fillText("Press an arrow or tap to play again",s.width/2,s.height/2+28)),r.textAlign="left",X(s,r,u,f,y)}function v(){const s=a.useRef(null),r=a.useRef(null),[l,u]=a.useState("idle"),[f,y]=a.useState(0),[d,C]=a.useState(()=>{if(typeof window<"u"){const e=localStorage.getItem("zframes-snake-high-score");return e?parseInt(e,10):0}return 0}),[,I]=a.useState(!1),h=a.useRef(0),S=a.useRef(d),x=a.useRef(l),A=a.useRef(null),b=a.useRef(H(null));a.useEffect(()=>{S.current=d,d>0&&localStorage.setItem("zframes-snake-high-score",String(d))},[d]),a.useEffect(()=>{x.current=l},[l]);const w=a.useRef({snake:[],dir:{x:1,y:0},pendingDir:{x:1,y:0},food:{x:0,y:0},cols:0,rows:0,originX:0,originY:0,stepCounter:0}),D=a.useCallback(()=>{const e=w.current;if(e.cols<=0||e.rows<=0)return;let t,o=0;do t={x:Math.floor(Math.random()*e.cols),y:Math.floor(Math.random()*e.rows)},o++;while(e.snake.some(i=>i.x===t.x&&i.y===t.y)&&o<400);e.food=t},[]),T=a.useCallback(()=>{const e=w.current,t=Math.floor(e.cols/2),o=Math.floor(e.rows/2);e.snake=[{x:t,y:o},{x:t-1,y:o},{x:t-2,y:o}],e.dir={x:1,y:0},e.pendingDir={x:1,y:0},e.stepCounter=0,D(),h.current=0,y(0)},[D]),p=a.useCallback(()=>{w.current.cols<=0||(T(),u("playing"))},[T]),m=a.useCallback((e,t)=>{const o=w.current;o.dir.x===-e&&o.dir.y===-t||(o.pendingDir={x:e,y:t})},[]);a.useEffect(()=>{const e=o=>{const i=o.target;if(i.tagName==="INPUT"||i.tagName==="TEXTAREA"||i.isContentEditable)return;const c=x.current==="playing";let n=!0;switch(o.code){case"ArrowUp":case"KeyW":c?m(0,-1):p();break;case"ArrowDown":case"KeyS":c?m(0,1):p();break;case"ArrowLeft":case"KeyA":c?m(-1,0):p();break;case"ArrowRight":case"KeyD":c?m(1,0):p();break;case"Space":c||p();break;default:n=!1}n&&o.preventDefault()},t=r.current;if(t)return t.addEventListener("keydown",e),()=>t.removeEventListener("keydown",e)},[m,p]),a.useLayoutEffect(()=>{const e=s.current;if(!e)return;const t=()=>{const i=e.parentElement;if(i&&i.clientWidth>0&&i.clientHeight>0){e.width=i.clientWidth,e.height=i.clientHeight-W,b.current=H(e);const c=w.current;c.cols=Math.max(5,Math.floor(e.width/g)),c.rows=Math.max(5,Math.floor(e.height/g)),c.originX=Math.floor((e.width-c.cols*g)/2),c.originY=Math.floor((e.height-c.rows*g)/2);const n=e.getContext("2d");n&&x.current!=="playing"&&O(e,n,x.current,h.current,S.current,b.current),I(E=>!E)}};t();const o=new ResizeObserver(t);return o.observe(e.parentElement),()=>o.disconnect()},[]),a.useEffect(()=>{if(l!=="playing")return;const e=s.current,t=e==null?void 0:e.getContext("2d");if(!e||!t)return;let o;const i=()=>{h.current>S.current&&(S.current=h.current,C(h.current)),u("gameover")},c=()=>{const n=w.current;if(n.stepCounter++,n.stepCounter>=P){n.stepCounter=0,n.dir=n.pendingDir;const E=n.snake[0],k=E.x+n.dir.x,R=E.y+n.dir.y;if(k<0||R<0||k>=n.cols||R>=n.rows){i();return}const G=k===n.food.x&&R===n.food.y;if((G?n.snake:n.snake.slice(0,-1)).some(F=>F.x===k&&F.y===R)){i();return}n.snake.unshift({x:k,y:R}),G?(h.current+=1,y(h.current),D()):n.snake.pop()}q(e,t,n,h.current,S.current,b.current),o=requestAnimationFrame(c)};return o=requestAnimationFrame(c),()=>cancelAnimationFrame(o)},[l]),a.useEffect(()=>{if(l==="playing")return;const e=s.current,t=e==null?void 0:e.getContext("2d");!e||!t||O(e,t,l,f,d,b.current)},[l,f,d]);const U=e=>{const t=e.touches[0];t&&(A.current={x:t.clientX,y:t.clientY})},Y=e=>{var n;const t=A.current;A.current=null;const o=e.changedTouches[0];if((n=r.current)==null||n.focus(),x.current!=="playing"){p();return}if(!t||!o)return;const i=o.clientX-t.x,c=o.clientY-t.y;Math.abs(i)<12&&Math.abs(c)<12||(Math.abs(i)>Math.abs(c)?m(i>0?1:-1,0):m(0,c>0?1:-1))};return L.jsx("div",{ref:r,tabIndex:0,className:"relative h-full w-full cursor-pointer select-none overflow-hidden outline-none",onTouchStart:U,onTouchEnd:Y,onClick:()=>{var e;return(e=r.current)==null?void 0:e.focus()},role:"application","aria-label":"Snake game. Use the arrow keys or swipe to steer.",children:L.jsx("canvas",{ref:s,className:"h-full w-full"})})}const Q=j({...z,component:v});export{Q as snakeFrame};
@@ -1 +0,0 @@
1
- import{j as e}from"./react-qoZPGuNy.js";import{z as n,a as l,Z as p,M as m}from"./cycle-shared-XoGVsOjC.js";import{U as u}from"./format-DxkEZcwQ.js";import{t as c,w as f}from"./indicators-Cw7CVPn4.js";import{f as d,bk as a,bl as R}from"./index-BJ1Zyy42.js";import{F as s}from"./ui-Bq3RQsdJ.js";import"./mini-line-chart-DyG55cVW.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";a.schema;function x({config:i}){const{extras:o,isLoading:t}=R();if(t)return e.jsx(s,{loading:!0,children:"loading SOPR…"});if(!o||o.sopr===null)return e.jsx(s,{children:"SOPR unavailable"});const r=n(o.sopr,[{upTo:.99,zone:{label:"Loss / capitulation",color:u}},{upTo:1.01,zone:{label:"Neutral",color:p}}],{label:"Profit-taking",color:l});return e.jsx(m,{caption:"Spent Output Profit Ratio",headline:o.sopr.toFixed(3),headlineColor:r.color,zone:r,sub:o.reserveRisk!==null?`Reserve Risk ${o.reserveRisk.toPrecision(2)}`:void 0,sparkline:c(o.history.sopr,f(i.window)),sparkColor:r.color})}const z=d({...a,component:x});export{z as soprFrame};
@@ -1 +0,0 @@
1
- import{r as s,j as l}from"./react-qoZPGuNy.js";import{f as p,c1 as i}from"./index-BJ1Zyy42.js";import{F as o}from"./ui-Bq3RQsdJ.js";i.schema;const c=["track","album","playlist","artist","episode","show"];function d(t){let a;try{a=new URL(t.trim())}catch{return null}if(a.hostname.replace(/^www\./,"")!=="open.spotify.com")return null;const r=a.pathname.split("/").filter(Boolean),e=r.findIndex(n=>c.includes(n));return e===-1||!r[e+1]?null:`https://open.spotify.com/embed/${r[e]}/${r[e+1]}`}function m({config:t}){const[a,r]=s.useState("loading"),e=s.useMemo(()=>d(t.url),[t.url]);return e?a==="error"?l.jsx(o,{children:"player unavailable"}):l.jsxs("div",{className:"relative h-full w-full overflow-hidden rounded-md",children:[a==="loading"&&l.jsx("div",{className:"absolute inset-0 z-10",children:l.jsx(o,{loading:!0,children:"loading player…"})}),l.jsx("iframe",{src:e,title:"Spotify player",className:"w-full",height:t.compact?152:"100%",style:{border:0,height:t.compact?152:"100%"},loading:"lazy",allow:"autoplay; clipboard-write; encrypted-media; fullscreen; picture-in-picture",onLoad:()=>r("loaded"),onError:()=>r("error")},e+String(t.compact))]}):l.jsx(o,{children:"paste a Spotify track / album / playlist URL"})}const h=p({...i,component:m});export{h as spotifyEmbedFrame};
@@ -1 +0,0 @@
1
- import{r as m,j as s}from"./react-qoZPGuNy.js";import{f as l}from"./format-DxkEZcwQ.js";import{f as c,bQ as r,bx as u}from"./index-BJ1Zyy42.js";import{T as p,a as d}from"./treemap-leaf-QG-L-SIG.js";import{F as n}from"./ui-Bq3RQsdJ.js";import"./utils-DxneYyA_.js";import"./d3-ibrLIlQc.js";r.schema;function f({width:o,height:e,data:a}){const t=l(a.usd);return s.jsx(d,{width:o,height:e,label:a.id,secondary:t,title:`${a.id} · ${t} stablecoins`})}function b({config:o}){const{supply:e,isLoading:a}=u(),t=m.useMemo(()=>((e==null?void 0:e.topChains)??[]).slice(0,o.limit).map(i=>({id:i.name,value:i.usd,usd:i.usd})),[e,o.limit]);return a?s.jsx(n,{loading:!0,children:"loading stablecoin chains…"}):t.length===0?s.jsx(n,{children:"no stablecoin data yet"}):s.jsx(p,{data:t,LeafComponent:f,getColorValue:()=>0})}const S=c({...r,component:b});export{S as stablecoinChainsFrame};
@@ -1 +0,0 @@
1
- import{j as a}from"./react-qoZPGuNy.js";import{M as s,Z as p}from"./cycle-shared-XoGVsOjC.js";import{c,a as l,f as m}from"./format-DxkEZcwQ.js";import{f as u,bw as d,bx as f}from"./index-BJ1Zyy42.js";import{F as e}from"./ui-Bq3RQsdJ.js";import"./indicators-Cw7CVPn4.js";import"./mini-line-chart-DyG55cVW.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";function h(){const{supply:o,isLoading:i}=f();if(i)return a.jsx(e,{loading:!0,children:"loading stablecoin supply…"});if(!o)return a.jsx(e,{children:"no stablecoin data yet"});const t=c(o.changePct7d),n=o.topChains.slice(0,3).map(r=>r.name).join(" · ");return a.jsx(s,{caption:"Stablecoin Supply",headline:m(o.totalUsd),headlineColor:p,zone:{label:o.changePct7d>=0?"Expanding":"Contracting",color:t},sub:`7d ${l(o.changePct7d)}${n?` · ${n}`:""}`,sparkline:o.history,sparkColor:t})}const P=u({...d,component:h});export{P as stablecoinSupplyFrame};
@@ -1 +0,0 @@
1
- import{r as l,j as s}from"./react-qoZPGuNy.js";import{i as h}from"./content-shared-BZ1XzrJx.js";import{f as y,aW as f,a8 as S}from"./index-BJ1Zyy42.js";f.schema;const p="var(--color-highlight)",x="0 0 18px hsl(var(--zf-accent-hue, 242) 92% 70% / 0.45)",i=t=>String(t).padStart(2,"0");function g(t){const e=Math.floor(Math.max(0,t)/1e3),c=Math.floor(e/3600),n=Math.floor(e%3600/60),o=e%60;return c>0?`${c}:${i(n)}:${i(o)}`:`${i(n)}:${i(o)}`}function k({config:t}){const e=S(),[c,n]=l.useState({startedAt:t.startedAt,accumulatedMs:t.accumulatedMs}),o=e?t.startedAt:c.startedAt,w=e?t.accumulatedMs:c.accumulatedMs,a=o!==0,d=l.useCallback(r=>{e?e(r):n(m=>({...m,...r}))},[e]),[,b]=l.useState(0);l.useEffect(()=>{if(!a)return;const r=window.setInterval(()=>b(m=>m+1),250);return()=>window.clearInterval(r)},[a]);const u=w+(a?Date.now()-o:0),v=()=>d({startedAt:Date.now()}),M=()=>d({startedAt:0,accumulatedMs:u}),j=()=>d({startedAt:0,accumulatedMs:0});return s.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-2 text-center",children:[t.label&&s.jsxs("div",{className:"caption text-soft inline-flex items-center gap-1.5 uppercase tracking-[0.18em]",children:[s.jsx("span",{"aria-hidden":!0,className:"inline-block h-1 w-1 rounded-full",style:{background:p,boxShadow:a?x:void 0}}),t.label]}),s.jsx("div",{className:"metric-lg text-strong leading-none",style:a?{color:p,textShadow:x}:void 0,children:g(u)}),s.jsxs("div",{className:"flex items-center justify-center gap-2",children:[s.jsx("button",{type:"button",onClick:a?M:v,className:`caption text-normal px-3 py-1 uppercase tracking-[0.12em] ${h}`,style:a?void 0:{color:p},children:a?"Pause":"Start"}),s.jsx("button",{type:"button",onClick:j,disabled:!a&&u===0,className:`caption text-soft px-3 py-1 uppercase tracking-[0.12em] transition-opacity disabled:opacity-40 ${h}`,children:"Reset"})]})]})}const E=y({...f,component:k});export{E as stopwatchFrame};
@@ -1 +0,0 @@
1
- import{r as d,j as s}from"./react-qoZPGuNy.js";import{f as g,ar as m,aj as h,h as l}from"./index-BJ1Zyy42.js";import{M as i}from"./mover-row-_czAON2U.js";import{F as n}from"./ui-Bq3RQsdJ.js";import"./format-DxkEZcwQ.js";m.schema;const f=["xyz:*"];function u({config:t}){const{stats:c,isLoading:p}=h(f,6e4),{gainers:o,losers:x}=d.useMemo(()=>{const e=Object.entries(c).map(([a,r])=>({symbol:a,...r})).filter(a=>a.symbol.includes(":")&&a.markPx>0&&a.prevDayPx>0).sort((a,r)=>r.changePct-a.changePct);return{gainers:e.slice(0,t.count),losers:e.slice(-t.count).reverse()}},[c,t.count]);return p?s.jsx(n,{loading:!0,children:"loading movers…"}):o.length===0?s.jsx(n,{children:"no mover data yet"}):s.jsxs("div",{className:"grid h-full grid-cols-2 gap-x-4 overflow-hidden",children:[s.jsxs("div",{className:"flex flex-col gap-1.5",children:[s.jsx("div",{className:"caption text-soft uppercase tracking-wide",children:"gainers"}),o.map(e=>s.jsx(i,{symbol:e.symbol,label:l(e.symbol),price:e.markPx,changePct:e.changePct},e.symbol))]}),s.jsxs("div",{className:"flex flex-col gap-1.5",children:[s.jsx("div",{className:"caption text-soft uppercase tracking-wide",children:"losers"}),x.map(e=>s.jsx(i,{symbol:e.symbol,label:l(e.symbol),price:e.markPx,changePct:e.changePct},e.symbol))]})]})}const M=g({...m,component:u});export{M as topMoversFrame};
@@ -1 +0,0 @@
1
- import{r as m,j as r}from"./react-qoZPGuNy.js";import{b as u}from"./format-DxkEZcwQ.js";import{f as d,da as s,X as l}from"./index-BJ1Zyy42.js";import{F as n}from"./ui-Bq3RQsdJ.js";import{S as f}from"./scatter-chart-B78EA7lD.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";s.schema;function x(e){return`${e.toFixed(2)}×`}function p({config:e}){const{auctions:o,isLoading:i}=l(e.count),a=m.useMemo(()=>o.filter(t=>t.rate!==null&&t.bidToCover!==null).slice(0,e.count).map((t,c)=>({id:`${t.auctionDate}-${t.securityType}-${c}`,label:t.securityTerm||t.securityType,x:t.rate,y:t.bidToCover})),[o,e.count]);return i?r.jsx(n,{loading:!0,children:"loading auction demand…"}):a.length===0?r.jsx(n,{children:"no auction-demand data yet"}):r.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[r.jsx(f,{data:a,height:210,formatX:u,formatY:x,maxLabels:a.length}),r.jsxs("div",{className:"caption text-soft text-center",children:["awarded rate (x) vs bid-to-cover (y) · last ",a.length," auctions"]})]})}const S=d({...s,component:p});export{S as treasuryAuctionDemandScatterFrame};
@@ -1 +0,0 @@
1
- import{r as m,j as e}from"./react-qoZPGuNy.js";import{f}from"./format-DxkEZcwQ.js";import{f as d,db as l,X as p}from"./index-BJ1Zyy42.js";import{F as o}from"./ui-Bq3RQsdJ.js";import{B as x}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";l.schema;const c="rgba(255,255,255,0.32)",i="hsl(var(--zf-accent-hue, 242) 85% 72%)";function h(t){const a=new Date(`${t}T00:00:00Z`);return`${a.getUTCMonth()+1}/${a.getUTCDate()}`}function g({config:t}){const{auctions:a,isLoading:u}=p(t.count),r=m.useMemo(()=>[...a].filter(s=>s.offeringAmount!==null&&s.totalAccepted!==null).slice(0,t.count).reverse().flatMap(s=>{const n=h(s.auctionDate);return[{label:n,value:s.offeringAmount,color:c},{label:n,value:s.totalAccepted,color:i}]}),[a,t.count]);return u?e.jsx(o,{loading:!0,children:"loading auction sizes…"}):r.length===0?e.jsx(o,{children:"no auction-size data yet"}):e.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[e.jsx(x,{data:r,height:200,formatValue:f,showValues:!1,maxTickLabels:Math.min(t.count,8)}),e.jsxs("div",{className:"flex items-center justify-center gap-3",children:[e.jsxs("span",{className:"caption text-soft flex items-center gap-1",children:[e.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full",style:{background:c}}),"offering"]}),e.jsxs("span",{className:"caption text-soft flex items-center gap-1",children:[e.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full",style:{background:i}}),"accepted"]})]})]})}const z=d({...l,component:g});export{z as treasuryAuctionSizeBarsFrame};
@@ -1 +0,0 @@
1
- import{j as s}from"./react-qoZPGuNy.js";import{b as c}from"./format-DxkEZcwQ.js";import{M as m}from"./metric-row-BVVhjsjK.js";import{f as u,W as a,X as d}from"./index-BJ1Zyy42.js";import{F as i,s as x}from"./ui-Bq3RQsdJ.js";a.schema;function f({auction:e}){const t=[e.securityTerm,e.securityType].filter(Boolean).join(" ");return s.jsx(m,{label:t||e.securityType,meta:e.auctionDate+(e.bidToCover!==null?` · ${e.bidToCover.toFixed(2)}× bid-to-cover`:""),value:e.rate!==null?c(e.rate):"—"})}function p({config:e}){const{auctions:t,isLoading:o}=d(e.count);if(o)return s.jsx(i,{loading:!0,children:"loading auctions…"});if(!t.length)return s.jsx(i,{children:"no auction data yet"});const n=t.slice(0,e.count);return s.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-3",children:[s.jsxs("div",{className:"flex items-baseline justify-between gap-3",children:[s.jsxs("div",{children:[s.jsx("div",{className:"caption text-soft uppercase",children:"treasury auctions"}),s.jsx("div",{className:"body-sm text-normal",children:"high yield · bid-to-cover"})]}),s.jsx("div",{className:"caption text-soft text-right",children:"results"})]}),s.jsx("div",{className:x,children:n.map((r,l)=>s.jsx(f,{auction:r},`${r.auctionDate}-${r.securityType}-${r.securityTerm}-${l}`))})]})}const T=u({...a,component:p});export{T as treasuryAuctionsFrame};
@@ -1 +0,0 @@
1
- import{r as l,j as r}from"./react-qoZPGuNy.js";import{b as u}from"./format-DxkEZcwQ.js";import{f as c,d9 as i,am as f}from"./index-BJ1Zyy42.js";import{F as o}from"./ui-Bq3RQsdJ.js";import{B as h}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";i.schema;function p({config:e}){const{rates:s,isLoading:m}=f(),t=l.useMemo(()=>[...s].sort((a,n)=>n.rate-a.rate).slice(0,e.limit).map(a=>({label:a.security,value:a.rate})),[s,e.limit]);return m?r.jsx(o,{loading:!0,children:"loading average rates…"}):t.length===0?r.jsx(o,{children:"no average-rate data yet"}):r.jsx("div",{className:"flex h-full flex-col justify-center text-normal",children:r.jsx(h,{data:t,orientation:"horizontal",height:Math.max(t.length*24,96),formatValue:u})})}const R=c({...i,component:p});export{R as treasuryAvgRateBarsFrame};
@@ -1 +0,0 @@
1
- import{r as d,j as e}from"./react-qoZPGuNy.js";import{f as s}from"./format-DxkEZcwQ.js";import{f,df as l,V as p}from"./index-BJ1Zyy42.js";import{F as n}from"./ui-Bq3RQsdJ.js";import{C as m}from"./chart-utils-DGogNvJT.js";import{S as u}from"./index-DuNO-RcB.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";l.schema;function x(r){return`${r.getMonth()+1}/${r.getDate()}`}function h({series:r}){return e.jsx("div",{className:"flex flex-wrap items-center justify-center gap-x-3 gap-y-1",children:r.map(t=>e.jsxs("span",{className:"caption text-soft flex items-center gap-1",children:[e.jsx("span",{className:"h-1.5 w-1.5 shrink-0 rounded-full",style:{background:t.color}}),t.name]},t.id))})}function g({config:r}){const{debt:t,isLoading:c}=p(r.trendDays),o=d.useMemo(()=>{const i=((t==null?void 0:t.trend)??[]).filter(a=>a.heldByPublic!==void 0&&a.intragovernmental!==void 0);return i.length<2?[]:[{id:"public",name:"Held by public",color:m[0],data:i.map(a=>({date:new Date(a.time),value:a.heldByPublic}))},{id:"intragov",name:"Intragovernmental",color:m[1],data:i.map(a=>({date:new Date(a.time),value:a.intragovernmental}))}]},[t]);return c?e.jsx(n,{loading:!0,children:"loading debt composition…"}):o.length===0?e.jsx(n,{children:"no debt-composition data yet"}):e.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-2",children:[e.jsxs("div",{className:"flex items-baseline justify-between gap-3",children:[e.jsx("div",{className:"caption text-soft uppercase",children:"debt composition"}),e.jsx("div",{className:"caption text-soft text-right",children:t?`as of ${t.date}`:""})]}),e.jsx(u,{series:o,height:210,formatXAxis:x,formatYAxis:s,formatValue:s}),e.jsx(h,{series:o})]})}const S=f({...l,component:g});export{S as treasuryDebtCompositionAreaFrame};
@@ -1 +0,0 @@
1
- import{R as P,r as d,j as T}from"./react-qoZPGuNy.js";import{c as $}from"./utils-DxneYyA_.js";import{w as k,x as z,y as H}from"./d3-ibrLIlQc.js";const E="4px",S="4px",U=2.5,F=(b,v,y,m,B)=>{const R=b.children;if(!R||R.length===0)return;const I=(s,i,n,e,l)=>{if(e===0)return 1/0;const c=i/e*l;if(c===0)return 1/0;let r=0;for(const u of s){const o=(u.value||0)/i*n,x=c/o,h=Math.abs(x-U);r=Math.max(r,h)}return r},L=(s,i,n,e,l,c,r)=>{const u=i/n*l;let a=r;for(const o of s){const h=(o.value||0)/i*e;o.x0=c,o.y0=a,o.x1=c+u,o.y1=a+h,a+=h}return u},_=m-v,p=B-y,w=R.reduce((s,i)=>s+(i.value||0),0);if(w===0)return;let C=[...R],g=v,j=_,M=w;for(;C.length>0;){let s=[],i=0;for(let e=0;e<C.length;e++){const l=C[e],c=l.value||0,r=[...s,l],u=i+c;if(s.length===0)s=r,i=u;else{const a=I(s,i,p,M,j);if(I(r,u,p,M,j)<=a)s=r,i=u;else break}}const n=L(s,i,M,p,j,g,y);C=C.slice(s.length),g+=n,j-=n,M-=i}};function G({data:b,className:v,LeafComponent:y,getColorValue:m,tileMode:B="squarify"}){const R=d.useRef(null),I=d.useRef(null),L=d.useRef(null),_=d.useRef(null),p=d.useRef(null),w=d.useRef(null),[,C]=d.useTransition(),[g,j]=d.useState({width:0,height:0});d.useEffect(()=>{const n=R.current;if(n){const e=new ResizeObserver(()=>{C(()=>{j({width:n.offsetWidth,height:n.offsetHeight})})});return e.observe(n),()=>{e.disconnect()}}},[]),d.useEffect(()=>{const n=I.current;if(n){const e=n.children;let l=e[0],c=e[0],r=e[0],u=e[0];for(let a=0;a<e.length;a++){const o=e[a],{x,y:h}=o.getBoundingClientRect(),N=l.getBoundingClientRect(),W=c.getBoundingClientRect(),t=r.getBoundingClientRect(),f=u.getBoundingClientRect();x<=N.x&&h<=N.y&&(l=o),x<=W.x&&h>=W.y&&(c=o),x>=t.x&&h<=t.y&&(r=o),x>=f.x&&h>=f.y&&(u=o)}L.current&&(L.current.style.borderTopLeftRadius=E),L.current=l,L.current.style.borderTopLeftRadius=S,_.current&&(_.current.style.borderBottomLeftRadius=E),_.current=c,_.current.style.borderBottomLeftRadius=S,p.current&&(p.current.style.borderTopRightRadius=E),p.current=r,p.current.style.borderTopRightRadius=S,w.current&&(w.current.style.borderBottomRightRadius=E),w.current=u,w.current.style.borderBottomRightRadius=S}},[g]);const M=d.useMemo(()=>{switch(B){case"vertical-rectangle":return F;case"squarify":default:return k}},[B]),s=d.useMemo(()=>z().size([g.width,g.height]).tile(M).paddingInner(4)(H({id:"root",value:0,children:b}).sum(n=>n.value).sort((n,e)=>e.data.value-n.data.value)),[b,g.width,g.height,M]),i=d.useMemo(()=>{const n=s.leaves(),e=n.map(t=>m?m(t.data):t.data.value),l=e.filter(t=>t>=0),c=e.filter(t=>t<0),r=l.length>0?Math.min(...l):0,u=l.length>0?Math.max(...l):0,a=c.length>0?Math.min(...c):0,o=c.length>0?Math.max(...c):0,x=t=>t<0?o===a?1:(t-o)/(a-o):u===r?1:(t-r)/(u-r),h=(t,f)=>{if(f>=0){const q=Math.round(34+t*16);return`hsl(152 ${Math.round(42+t*20)}% ${q}%)`}const D=Math.round(36+t*15);return`hsl(350 ${Math.round(48+t*22)}% ${D}%)`},N=[...new Set(n.map(t=>t.x0))].sort((t,f)=>t-f),W=new Map(N.map((t,f)=>[t,f]));return n.map(t=>{const f=t.x1-t.x0,D=t.y1-t.y0,V=m?m(t.data):t.data.value,q=x(V),A=W.get(t.x0)??0,O=h(q,V);return T.jsx("div",{className:"group absolute cursor-pointer rounded-sm border border-transparent hover:bg-[radial-gradient(146.13%_118.42%_at_50%_-15.5%,rgba(255,255,255,0.1)_0%,rgba(255,255,255,0)_99.59%)] hover:bg-gradient-to-t",style:{left:t.x0,top:t.y0,width:f,height:D,borderRadius:E,backgroundColor:O},children:T.jsx(y,{width:f,height:D,data:t.data,columnIndex:A})},`${t.data.id}-box`)})},[s,y,m]);return T.jsx("div",{className:$("h-full w-full",v),ref:R,children:T.jsx("div",{className:"relative overflow-hidden rounded-lg",style:{height:g.height,width:g.width},ref:I,children:i})})}const K=P.memo(G);function Q({width:b,height:v,label:y,secondary:m,title:B}){if(b<48||v<30)return null;const R=b<70||v<44;return T.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center overflow-hidden p-1 text-center",title:B,children:[T.jsx("span",{className:"body-sm block w-full min-w-0 truncate font-bold text-strong",children:y}),!R&&m&&T.jsx("span",{className:"caption block w-full min-w-0 truncate text-soft",children:m})]})}export{K as T,Q as a};
@@ -1 +0,0 @@
1
- import{r as l,j as e}from"./react-qoZPGuNy.js";import{a as c,D as h,U as g}from"./format-DxkEZcwQ.js";import{f as d,cH as o,bM as f}from"./index-BJ1Zyy42.js";import{F as i}from"./ui-Bq3RQsdJ.js";import{B as u}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";o.schema;function p({config:a}){const{coins:n,isLoading:s}=f(),r=l.useMemo(()=>n.filter(t=>t.changePct24h!==null&&Number.isFinite(t.changePct24h)).slice(0,a.limit).sort((t,m)=>m.changePct24h-t.changePct24h).map(t=>({label:t.symbol,value:t.changePct24h})),[n,a.limit]);return s?e.jsx(i,{loading:!0,children:"loading trending…"}):r.length===0?e.jsx(i,{children:"no trending data yet"}):e.jsx("div",{className:"flex h-full flex-col justify-center text-normal",children:e.jsx(u,{data:r,orientation:"horizontal",color:g,negativeColor:h,height:Math.max(r.length*24,96),formatValue:c})})}const b=d({...o,component:p});export{b as trendingBarsFrame};
@@ -1 +0,0 @@
1
- import{r as c,j as m}from"./react-qoZPGuNy.js";import{B as h}from"./bubbles-shared-DlmjtiIA.js";import{c as r,a as l}from"./format-DxkEZcwQ.js";import{f as g,cK as i,bM as d}from"./index-BJ1Zyy42.js";import"./ui-Bq3RQsdJ.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";i.schema;function b({config:t}){const{coins:n,isLoading:s}=d(),a=c.useMemo(()=>n.filter(e=>e.changePct24h!==null&&Number.isFinite(e.changePct24h)).slice(0,t.limit).map(e=>({id:e.id,label:e.symbol,value:Math.max(Math.abs(e.changePct24h),.05),color:r(e.changePct24h),borderColor:r(e.changePct24h),changePct24h:e.changePct24h})),[n,t.limit]);return m.jsx(h,{nodes:a,isLoading:s,loadingText:"loading trending…",emptyText:"no trending data yet",caption:`area by |24h change| · top ${a.length} trending`,formatTitle:e=>{const o=e;return`${o.label} · ${l(o.changePct24h)}`}})}const M=g({...i,component:b});export{M as trendingBubblesFrame};
@@ -1 +0,0 @@
1
- import{j as e}from"./react-qoZPGuNy.js";import{a as l,c as m,e as c}from"./format-DxkEZcwQ.js";import{M as d}from"./metric-row-BVVhjsjK.js";import{f as g,bL as s,bM as f}from"./index-BJ1Zyy42.js";import{F as a,s as h}from"./ui-Bq3RQsdJ.js";s.schema;function p({config:i}){const{coins:o,isLoading:t}=f(),r=o.slice(0,i.limit);return t?e.jsx(a,{loading:!0,children:"loading trending…"}):r.length===0?e.jsx(a,{children:"no trending data yet"}):e.jsx("div",{className:`${h} flex flex-col`,children:r.map(n=>e.jsx(d,{label:n.symbol,meta:`${n.name}${n.rank?` · #${n.rank}`:""}`,value:n.changePct24h!=null?e.jsx("span",{style:{color:m(n.changePct24h)},children:l(n.changePct24h)}):n.price!=null?c(n.price):"—"},n.id))})}const b=g({...s,component:p});export{b as trendingCoinsFrame};
@@ -1 +0,0 @@
1
- import{r as m,j as t}from"./react-qoZPGuNy.js";import{f as c}from"./format-DxkEZcwQ.js";import{f,cq as i,at as h}from"./index-BJ1Zyy42.js";import{F as s}from"./ui-Bq3RQsdJ.js";import{B as p}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";i.schema;function x({config:r}){const{entries:o,isLoading:l}=h(),e=m.useMemo(()=>[...o].sort((a,n)=>n.tvl-a.tvl).slice(0,r.limit).map(a=>({label:a.name,value:a.tvl})),[o,r.limit]);return l?t.jsx(s,{loading:!0,children:"loading TVL…"}):e.length===0?t.jsx(s,{children:"no TVL data yet"}):t.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[t.jsx(p,{data:e,orientation:"horizontal",height:Math.max(e.length*26,96),formatValue:c}),t.jsx("div",{className:"caption text-soft text-center",children:"total value locked · by chain"})]})}const F=f({...i,component:x});export{F as tvlBarsFrame};
@@ -1 +0,0 @@
1
- import{r as m,j as l}from"./react-qoZPGuNy.js";import{B as i}from"./bubbles-shared-DlmjtiIA.js";import{f as n}from"./format-DxkEZcwQ.js";import{f as p,cg as r,at as u}from"./index-BJ1Zyy42.js";import"./ui-Bq3RQsdJ.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";r.schema;function b({config:a}){const{entries:e,isLoading:s}=u(),o=m.useMemo(()=>e.filter(t=>t.tvl>0).slice(0,a.topN).map(t=>({id:t.name,label:t.name,value:t.tvl})),[e,a.topN]);return l.jsx(i,{nodes:o,isLoading:s,loadingText:"loading TVL…",emptyText:"no TVL data",caption:`area by chain TVL · top ${o.length}`,formatTitle:t=>`${t.label} · ${n(t.value)} TVL`})}const L=p({...r,component:b});export{L as tvlBubblesFrame};
@@ -1 +0,0 @@
1
- import{r as i,j as s}from"./react-qoZPGuNy.js";import{f as l}from"./format-DxkEZcwQ.js";import{f as p,as as n,at as f}from"./index-BJ1Zyy42.js";import{T as u,a as c}from"./treemap-leaf-QG-L-SIG.js";import{F as m}from"./ui-Bq3RQsdJ.js";import"./utils-DxneYyA_.js";import"./d3-ibrLIlQc.js";n.schema;function d({width:r,height:o,data:e}){const t=l(e.tvl);return s.jsx(c,{width:r,height:o,label:e.id,secondary:t,title:`${e.id} · ${t}`})}function v({config:r}){const{entries:o,isLoading:e}=f(),t=i.useMemo(()=>o.slice(0,r.topN).map(a=>({id:a.name,value:a.tvl,tvl:a.tvl})),[o,r.topN]);return e?s.jsx(m,{loading:!0,children:"loading TVL…"}):t.length===0?s.jsx(m,{children:"no TVL data"}):s.jsx(u,{data:t,LeafComponent:d,getColorValue:a=>a.tvl})}const F=p({...n,component:v});export{F as tvlTreemapFrame};
@@ -1 +0,0 @@
1
- import{j as e}from"./react-qoZPGuNy.js";const t="min-h-0 flex-1 overflow-y-auto pr-1 [&::-webkit-scrollbar]:w-1.5 [&::-webkit-scrollbar-track]:bg-transparent [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-white/[0.08] hover:[&::-webkit-scrollbar-thumb]:bg-white/15",r="min-w-0 overflow-x-auto pb-1 [&::-webkit-scrollbar]:h-1.5 [&::-webkit-scrollbar-track]:bg-transparent [&::-webkit-scrollbar-thumb]:rounded-full [&::-webkit-scrollbar-thumb]:bg-white/[0.08] hover:[&::-webkit-scrollbar-thumb]:bg-white/15";function i({loading:a=!1,children:s}){return a?e.jsx("div",{className:"flex h-full min-h-[72px] w-full items-center justify-center overflow-hidden rounded-md",role:"status","aria-live":"polite","aria-busy":"true",children:e.jsxs("div",{className:"flex w-full max-w-sm flex-col gap-3",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"relative h-2.5 w-2.5 shrink-0 rounded-full",style:{background:"hsl(var(--zf-accent-hue, 242) 90% 76%)",boxShadow:"0 0 12px hsl(var(--zf-accent-hue, 242) 90% 76% / 0.72)"},children:e.jsx("span",{className:"absolute inset-0 animate-ping rounded-full opacity-60",style:{background:"hsl(var(--zf-accent-hue, 242) 90% 76%)"}})}),e.jsx("span",{className:"body-sm text-soft truncate",children:s})]}),e.jsxs("div",{className:"grid min-h-0 grid-cols-4 gap-2",children:[e.jsx("span",{className:"h-11 animate-pulse rounded bg-white/[0.07]"}),e.jsx("span",{className:"h-11 animate-pulse rounded bg-white/[0.05]"}),e.jsx("span",{className:"h-11 animate-pulse rounded bg-white/[0.08]"}),e.jsx("span",{className:"h-11 animate-pulse rounded bg-white/[0.04]"})]}),e.jsxs("div",{className:"flex flex-col gap-2",children:[e.jsx("span",{className:"h-2.5 w-11/12 animate-pulse rounded-full bg-white/[0.07]"}),e.jsx("span",{className:"h-2.5 w-7/12 animate-pulse rounded-full bg-white/[0.05]"})]})]})}):e.jsx("div",{className:"body-sm text-soft flex h-full min-h-0 items-center justify-center text-center",children:s})}export{i as F,r as a,t as s};
@@ -1 +0,0 @@
1
- import{r as i}from"./react-qoZPGuNy.js";let l=typeof window<"u"?window.scrollY:0,w=typeof window<"u"?window.innerHeight:0,r;typeof window<"u"&&(window.addEventListener("scroll",()=>{r!=null&&(window.clearTimeout(r),r=void 0),r=window.setTimeout(()=>{l=window.scrollY},200)},{passive:!0}),window.addEventListener("resize",()=>{w=window.innerHeight},{passive:!0}));const s={_callbacks:[],register(e){this._callbacks.push(e)},unregister(e){this._callbacks=this._callbacks.filter(t=>t!==e)},tick(){setInterval(()=>{this._callbacks.forEach(t=>t())},1e3/24)}};typeof window<"u"&&s.tick();function p({ref:e,getRemainingMs:t,format:c}){const o=i.useRef({getRemainingMs:t,format:c});o.current={getRemainingMs:t,format:c};const u=i.useRef(0);i.useLayoutEffect(()=>{const n=()=>{e.current&&(u.current=e.current.getBoundingClientRect().top+window.scrollY)};return n(),window.addEventListener("resize",n),()=>{window.removeEventListener("resize",n)}},[e]),i.useEffect(()=>{const n=()=>{if(!e.current)return;const d=u.current-l;if(d>w||d<0)return;const a=o.current.getRemainingMs();e.current&&(e.current.textContent=o.current.format(a))};return s.register(n),()=>{s.unregister(n)}},[e])}export{p as u};
@@ -1 +0,0 @@
1
- function ye(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(r=ye(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function Ne(){for(var e,t,r=0,o="",i=arguments.length;r<i;r++)(e=arguments[r])&&(t=ye(e))&&(o&&(o+=" "),o+=t);return o}const We=(e,t)=>{const r=new Array(e.length+t.length);for(let o=0;o<e.length;o++)r[o]=e[o];for(let o=0;o<t.length;o++)r[e.length+o]=t[o];return r},Ee=(e,t)=>({classGroupId:e,validator:t}),ve=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),H="-",fe=[],Ve="arbitrary..",Fe=e=>{const t=Be(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:l=>{if(l.startsWith("[")&&l.endsWith("]"))return _e(l);const b=l.split(H),u=b[0]===""&&b.length>1?1:0;return ze(b,u,t)},getConflictingClassGroupIds:(l,b)=>{if(b){const u=o[l],m=r[l];return u?m?We(m,u):u:m||fe}return r[l]||fe}}},ze=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const i=e[t],d=r.nextPart.get(i);if(d){const m=ze(e,t+1,d);if(m)return m}const l=r.validators;if(l===null)return;const b=t===0?e.join(H):e.slice(t).join(H),u=l.length;for(let m=0;m<u;m++){const h=l[m];if(h.validator(b))return h.classGroupId}},_e=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?Ve+o:void 0})(),Be=e=>{const{theme:t,classGroups:r}=e;return $e(r,t)},$e=(e,t)=>{const r=ve();for(const o in e){const i=e[o];ne(i,r,o,t)}return r},ne=(e,t,r,o)=>{const i=e.length;for(let d=0;d<i;d++){const l=e[d];Ue(l,t,r,o)}},Ue=(e,t,r,o)=>{if(typeof e=="string"){De(e,t,r);return}if(typeof e=="function"){Ye(e,t,r,o);return}qe(e,t,r,o)},De=(e,t,r)=>{const o=e===""?t:Ce(t,e);o.classGroupId=r},Ye=(e,t,r,o)=>{if(Xe(e)){ne(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(Ee(r,e))},qe=(e,t,r,o)=>{const i=Object.entries(e),d=i.length;for(let l=0;l<d;l++){const[b,u]=i[l];ne(u,Ce(t,b),r,o)}},Ce=(e,t)=>{let r=e;const o=t.split(H),i=o.length;for(let d=0;d<i;d++){const l=o[d];let b=r.nextPart.get(l);b||(b=ve(),r.nextPart.set(l,b)),r=b}return r},Xe=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,Je=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const i=(d,l)=>{r[d]=l,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(d){let l=r[d];if(l!==void 0)return l;if((l=o[d])!==void 0)return i(d,l),l},set(d,l){d in r?r[d]=l:i(d,l)}}},se="!",ge=":",Qe=[],he=(e,t,r,o,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:i}),He=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=i=>{const d=[];let l=0,b=0,u=0,m;const h=i.length;for(let y=0;y<h;y++){const C=i[y];if(l===0&&b===0){if(C===ge){d.push(i.slice(u,y)),u=y+1;continue}if(C==="/"){m=y;continue}}C==="["?l++:C==="]"?l--:C==="("?b++:C===")"&&b--}const k=d.length===0?i:i.slice(u);let T=k,S=!1;k.endsWith(se)?(T=k.slice(0,-1),S=!0):k.startsWith(se)&&(T=k.slice(1),S=!0);const _=m&&m>u?m-u:void 0;return he(d,S,T,_)};if(t){const i=t+ge,d=o;o=l=>l.startsWith(i)?d(l.slice(i.length)):he(Qe,!1,l,void 0,!0)}if(r){const i=o;o=d=>r({className:d,parseClassName:i})}return o},Ke=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let i=[];for(let d=0;d<r.length;d++){const l=r[d],b=l[0]==="[",u=t.has(l);b||u?(i.length>0&&(i.sort(),o.push(...i),i=[]),o.push(l)):i.push(l)}return i.length>0&&(i.sort(),o.push(...i)),o}},Ze=e=>({cache:Je(e.cacheSize),parseClassName:He(e),sortModifiers:Ke(e),postfixLookupClassGroupIds:eo(e),...Fe(e)}),eo=e=>{const t=Object.create(null),r=e.postfixLookupClassGroups;if(r)for(let o=0;o<r.length;o++)t[r[o]]=!0;return t},oo=/\s+/,ro=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:i,sortModifiers:d,postfixLookupClassGroupIds:l}=t,b=[],u=e.trim().split(oo);let m="";for(let h=u.length-1;h>=0;h-=1){const k=u[h],{isExternal:T,modifiers:S,hasImportantModifier:_,baseClassName:y,maybePostfixModifierPosition:C}=r(k);if(T){m=k+(m.length>0?" "+m:m);continue}let L=!!C,v;if(L){const R=y.substring(0,C);v=o(R);const a=v&&l[v]?o(y):void 0;a&&a!==v&&(v=a,L=!1)}else v=o(y);if(!v){if(!L){m=k+(m.length>0?" "+m:m);continue}if(v=o(y),!v){m=k+(m.length>0?" "+m:m);continue}L=!1}const B=S.length===0?"":S.length===1?S[0]:d(S).join(":"),W=_?B+se:B,E=W+v;if(b.indexOf(E)>-1)continue;b.push(E);const V=i(v,L);for(let R=0;R<V.length;++R){const a=V[R];b.push(W+a)}m=k+(m.length>0?" "+m:m)}return m},to=(...e)=>{let t=0,r,o,i="";for(;t<e.length;)(r=e[t++])&&(o=Ae(r))&&(i&&(i+=" "),i+=o);return i},Ae=e=>{if(typeof e=="string")return e;let t,r="";for(let o=0;o<e.length;o++)e[o]&&(t=Ae(e[o]))&&(r&&(r+=" "),r+=t);return r},so=(e,...t)=>{let r,o,i,d;const l=u=>{const m=t.reduce((h,k)=>k(h),e());return r=Ze(m),o=r.cache.get,i=r.cache.set,d=b,b(u)},b=u=>{const m=o(u);if(m)return m;const h=ro(u,r);return i(u,h),h};return d=l,(...u)=>d(to(...u))},no=[],f=e=>{const t=r=>r[e]||no;return t.isThemeGetter=!0,t},Se=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Ie=/^\((?:(\w[\w-]*):)?(.+)\)$/i,ao=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,io=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,lo=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,co=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,mo=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,po=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,M=e=>ao.test(e),p=e=>!!e&&!Number.isNaN(Number(e)),I=e=>!!e&&Number.isInteger(Number(e)),te=e=>e.endsWith("%")&&p(e.slice(0,-1)),G=e=>io.test(e),Re=()=>!0,bo=e=>lo.test(e)&&!co.test(e),ae=()=>!1,uo=e=>mo.test(e),fo=e=>po.test(e),go=e=>!s(e)&&!n(e),ho=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),ko=e=>P(e,Pe,ae),s=e=>Se.test(e),j=e=>P(e,Te,bo),ke=e=>P(e,So,p),xo=e=>P(e,Oe,Re),wo=e=>P(e,Le,ae),xe=e=>P(e,Ge,ae),yo=e=>P(e,Me,fo),J=e=>P(e,je,uo),n=e=>Ie.test(e),$=e=>N(e,Te),vo=e=>N(e,Le),we=e=>N(e,Ge),zo=e=>N(e,Pe),Co=e=>N(e,Me),Q=e=>N(e,je,!0),Ao=e=>N(e,Oe,!0),P=(e,t,r)=>{const o=Se.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},N=(e,t,r=!1)=>{const o=Ie.exec(e);return o?o[1]?t(o[1]):r:!1},Ge=e=>e==="position"||e==="percentage",Me=e=>e==="image"||e==="url",Pe=e=>e==="length"||e==="size"||e==="bg-size",Te=e=>e==="length",So=e=>e==="number",Le=e=>e==="family-name",Oe=e=>e==="number"||e==="weight",je=e=>e==="shadow",Io=()=>{const e=f("color"),t=f("font"),r=f("text"),o=f("font-weight"),i=f("tracking"),d=f("leading"),l=f("breakpoint"),b=f("container"),u=f("spacing"),m=f("radius"),h=f("shadow"),k=f("inset-shadow"),T=f("text-shadow"),S=f("drop-shadow"),_=f("blur"),y=f("perspective"),C=f("aspect"),L=f("ease"),v=f("animate"),B=()=>["auto","avoid","all","avoid-page","page","left","right","column"],W=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],E=()=>[...W(),n,s],V=()=>["auto","hidden","clip","visible","scroll"],R=()=>["auto","contain","none"],a=()=>[n,s,u],z=()=>[M,"full","auto",...a()],ie=()=>[I,"none","subgrid",n,s],le=()=>["auto",{span:["full",I,n,s]},I,n,s],U=()=>[I,"auto",n,s],ce=()=>["auto","min","max","fr",n,s],K=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],F=()=>["start","end","center","stretch","center-safe","end-safe"],A=()=>["auto",...a()],O=()=>[M,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...a()],Z=()=>[M,"screen","full","dvw","lvw","svw","min","max","fit",...a()],ee=()=>[M,"screen","full","lh","dvh","lvh","svh","min","max","fit",...a()],c=()=>[e,n,s],de=()=>[...W(),we,xe,{position:[n,s]}],me=()=>["no-repeat",{repeat:["","x","y","space","round"]}],pe=()=>["auto","cover","contain",zo,ko,{size:[n,s]}],oe=()=>[te,$,j],x=()=>["","none","full",m,n,s],w=()=>["",p,$,j],D=()=>["solid","dashed","dotted","double"],be=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],g=()=>[p,te,we,xe],ue=()=>["","none",_,n,s],Y=()=>["none",p,n,s],q=()=>["none",p,n,s],re=()=>[p,n,s],X=()=>[M,"full",...a()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[G],breakpoint:[G],color:[Re],container:[G],"drop-shadow":[G],ease:["in","out","in-out"],font:[go],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[G],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[G],shadow:[G],spacing:["px",p],text:[G],"text-shadow":[G],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",M,s,n,C]}],container:["container"],"container-type":[{"@container":["","normal","size",n,s]}],"container-named":[ho],columns:[{columns:[p,s,n,b]}],"break-after":[{"break-after":B()}],"break-before":[{"break-before":B()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:E()}],overflow:[{overflow:V()}],"overflow-x":[{"overflow-x":V()}],"overflow-y":[{"overflow-y":V()}],overscroll:[{overscroll:R()}],"overscroll-x":[{"overscroll-x":R()}],"overscroll-y":[{"overscroll-y":R()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:z()}],"inset-x":[{"inset-x":z()}],"inset-y":[{"inset-y":z()}],start:[{"inset-s":z(),start:z()}],end:[{"inset-e":z(),end:z()}],"inset-bs":[{"inset-bs":z()}],"inset-be":[{"inset-be":z()}],top:[{top:z()}],right:[{right:z()}],bottom:[{bottom:z()}],left:[{left:z()}],visibility:["visible","invisible","collapse"],z:[{z:[I,"auto",n,s]}],basis:[{basis:[M,"full","auto",b,...a()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[p,M,"auto","initial","none",s]}],grow:[{grow:["",p,n,s]}],shrink:[{shrink:["",p,n,s]}],order:[{order:[I,"first","last","none",n,s]}],"grid-cols":[{"grid-cols":ie()}],"col-start-end":[{col:le()}],"col-start":[{"col-start":U()}],"col-end":[{"col-end":U()}],"grid-rows":[{"grid-rows":ie()}],"row-start-end":[{row:le()}],"row-start":[{"row-start":U()}],"row-end":[{"row-end":U()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":ce()}],"auto-rows":[{"auto-rows":ce()}],gap:[{gap:a()}],"gap-x":[{"gap-x":a()}],"gap-y":[{"gap-y":a()}],"justify-content":[{justify:[...K(),"normal"]}],"justify-items":[{"justify-items":[...F(),"normal"]}],"justify-self":[{"justify-self":["auto",...F()]}],"align-content":[{content:["normal",...K()]}],"align-items":[{items:[...F(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...F(),{baseline:["","last"]}]}],"place-content":[{"place-content":K()}],"place-items":[{"place-items":[...F(),"baseline"]}],"place-self":[{"place-self":["auto",...F()]}],p:[{p:a()}],px:[{px:a()}],py:[{py:a()}],ps:[{ps:a()}],pe:[{pe:a()}],pbs:[{pbs:a()}],pbe:[{pbe:a()}],pt:[{pt:a()}],pr:[{pr:a()}],pb:[{pb:a()}],pl:[{pl:a()}],m:[{m:A()}],mx:[{mx:A()}],my:[{my:A()}],ms:[{ms:A()}],me:[{me:A()}],mbs:[{mbs:A()}],mbe:[{mbe:A()}],mt:[{mt:A()}],mr:[{mr:A()}],mb:[{mb:A()}],ml:[{ml:A()}],"space-x":[{"space-x":a()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":a()}],"space-y-reverse":["space-y-reverse"],size:[{size:O()}],"inline-size":[{inline:["auto",...Z()]}],"min-inline-size":[{"min-inline":["auto",...Z()]}],"max-inline-size":[{"max-inline":["none",...Z()]}],"block-size":[{block:["auto",...ee()]}],"min-block-size":[{"min-block":["auto",...ee()]}],"max-block-size":[{"max-block":["none",...ee()]}],w:[{w:[b,"screen",...O()]}],"min-w":[{"min-w":[b,"screen","none",...O()]}],"max-w":[{"max-w":[b,"screen","none","prose",{screen:[l]},...O()]}],h:[{h:["screen","lh",...O()]}],"min-h":[{"min-h":["screen","lh","none",...O()]}],"max-h":[{"max-h":["screen","lh",...O()]}],"font-size":[{text:["base",r,$,j]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,Ao,xo]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",te,s]}],"font-family":[{font:[vo,wo,t]}],"font-features":[{"font-features":[s]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[i,n,s]}],"line-clamp":[{"line-clamp":[p,"none",n,ke]}],leading:[{leading:[d,...a()]}],"list-image":[{"list-image":["none",n,s]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",n,s]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:c()}],"text-color":[{text:c()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...D(),"wavy"]}],"text-decoration-thickness":[{decoration:[p,"from-font","auto",n,j]}],"text-decoration-color":[{decoration:c()}],"underline-offset":[{"underline-offset":[p,"auto",n,s]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:a()}],"tab-size":[{tab:[I,n,s]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",n,s]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",n,s]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:de()}],"bg-repeat":[{bg:me()}],"bg-size":[{bg:pe()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},I,n,s],radial:["",n,s],conic:[I,n,s]},Co,yo]}],"bg-color":[{bg:c()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:c()}],"gradient-via":[{via:c()}],"gradient-to":[{to:c()}],rounded:[{rounded:x()}],"rounded-s":[{"rounded-s":x()}],"rounded-e":[{"rounded-e":x()}],"rounded-t":[{"rounded-t":x()}],"rounded-r":[{"rounded-r":x()}],"rounded-b":[{"rounded-b":x()}],"rounded-l":[{"rounded-l":x()}],"rounded-ss":[{"rounded-ss":x()}],"rounded-se":[{"rounded-se":x()}],"rounded-ee":[{"rounded-ee":x()}],"rounded-es":[{"rounded-es":x()}],"rounded-tl":[{"rounded-tl":x()}],"rounded-tr":[{"rounded-tr":x()}],"rounded-br":[{"rounded-br":x()}],"rounded-bl":[{"rounded-bl":x()}],"border-w":[{border:w()}],"border-w-x":[{"border-x":w()}],"border-w-y":[{"border-y":w()}],"border-w-s":[{"border-s":w()}],"border-w-e":[{"border-e":w()}],"border-w-bs":[{"border-bs":w()}],"border-w-be":[{"border-be":w()}],"border-w-t":[{"border-t":w()}],"border-w-r":[{"border-r":w()}],"border-w-b":[{"border-b":w()}],"border-w-l":[{"border-l":w()}],"divide-x":[{"divide-x":w()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":w()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...D(),"hidden","none"]}],"divide-style":[{divide:[...D(),"hidden","none"]}],"border-color":[{border:c()}],"border-color-x":[{"border-x":c()}],"border-color-y":[{"border-y":c()}],"border-color-s":[{"border-s":c()}],"border-color-e":[{"border-e":c()}],"border-color-bs":[{"border-bs":c()}],"border-color-be":[{"border-be":c()}],"border-color-t":[{"border-t":c()}],"border-color-r":[{"border-r":c()}],"border-color-b":[{"border-b":c()}],"border-color-l":[{"border-l":c()}],"divide-color":[{divide:c()}],"outline-style":[{outline:[...D(),"none","hidden"]}],"outline-offset":[{"outline-offset":[p,n,s]}],"outline-w":[{outline:["",p,$,j]}],"outline-color":[{outline:c()}],shadow:[{shadow:["","none",h,Q,J]}],"shadow-color":[{shadow:c()}],"inset-shadow":[{"inset-shadow":["none",k,Q,J]}],"inset-shadow-color":[{"inset-shadow":c()}],"ring-w":[{ring:w()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:c()}],"ring-offset-w":[{"ring-offset":[p,j]}],"ring-offset-color":[{"ring-offset":c()}],"inset-ring-w":[{"inset-ring":w()}],"inset-ring-color":[{"inset-ring":c()}],"text-shadow":[{"text-shadow":["none",T,Q,J]}],"text-shadow-color":[{"text-shadow":c()}],opacity:[{opacity:[p,n,s]}],"mix-blend":[{"mix-blend":[...be(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":be()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[p]}],"mask-image-linear-from-pos":[{"mask-linear-from":g()}],"mask-image-linear-to-pos":[{"mask-linear-to":g()}],"mask-image-linear-from-color":[{"mask-linear-from":c()}],"mask-image-linear-to-color":[{"mask-linear-to":c()}],"mask-image-t-from-pos":[{"mask-t-from":g()}],"mask-image-t-to-pos":[{"mask-t-to":g()}],"mask-image-t-from-color":[{"mask-t-from":c()}],"mask-image-t-to-color":[{"mask-t-to":c()}],"mask-image-r-from-pos":[{"mask-r-from":g()}],"mask-image-r-to-pos":[{"mask-r-to":g()}],"mask-image-r-from-color":[{"mask-r-from":c()}],"mask-image-r-to-color":[{"mask-r-to":c()}],"mask-image-b-from-pos":[{"mask-b-from":g()}],"mask-image-b-to-pos":[{"mask-b-to":g()}],"mask-image-b-from-color":[{"mask-b-from":c()}],"mask-image-b-to-color":[{"mask-b-to":c()}],"mask-image-l-from-pos":[{"mask-l-from":g()}],"mask-image-l-to-pos":[{"mask-l-to":g()}],"mask-image-l-from-color":[{"mask-l-from":c()}],"mask-image-l-to-color":[{"mask-l-to":c()}],"mask-image-x-from-pos":[{"mask-x-from":g()}],"mask-image-x-to-pos":[{"mask-x-to":g()}],"mask-image-x-from-color":[{"mask-x-from":c()}],"mask-image-x-to-color":[{"mask-x-to":c()}],"mask-image-y-from-pos":[{"mask-y-from":g()}],"mask-image-y-to-pos":[{"mask-y-to":g()}],"mask-image-y-from-color":[{"mask-y-from":c()}],"mask-image-y-to-color":[{"mask-y-to":c()}],"mask-image-radial":[{"mask-radial":[n,s]}],"mask-image-radial-from-pos":[{"mask-radial-from":g()}],"mask-image-radial-to-pos":[{"mask-radial-to":g()}],"mask-image-radial-from-color":[{"mask-radial-from":c()}],"mask-image-radial-to-color":[{"mask-radial-to":c()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":W()}],"mask-image-conic-pos":[{"mask-conic":[p]}],"mask-image-conic-from-pos":[{"mask-conic-from":g()}],"mask-image-conic-to-pos":[{"mask-conic-to":g()}],"mask-image-conic-from-color":[{"mask-conic-from":c()}],"mask-image-conic-to-color":[{"mask-conic-to":c()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:de()}],"mask-repeat":[{mask:me()}],"mask-size":[{mask:pe()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",n,s]}],filter:[{filter:["","none",n,s]}],blur:[{blur:ue()}],brightness:[{brightness:[p,n,s]}],contrast:[{contrast:[p,n,s]}],"drop-shadow":[{"drop-shadow":["","none",S,Q,J]}],"drop-shadow-color":[{"drop-shadow":c()}],grayscale:[{grayscale:["",p,n,s]}],"hue-rotate":[{"hue-rotate":[p,n,s]}],invert:[{invert:["",p,n,s]}],saturate:[{saturate:[p,n,s]}],sepia:[{sepia:["",p,n,s]}],"backdrop-filter":[{"backdrop-filter":["","none",n,s]}],"backdrop-blur":[{"backdrop-blur":ue()}],"backdrop-brightness":[{"backdrop-brightness":[p,n,s]}],"backdrop-contrast":[{"backdrop-contrast":[p,n,s]}],"backdrop-grayscale":[{"backdrop-grayscale":["",p,n,s]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[p,n,s]}],"backdrop-invert":[{"backdrop-invert":["",p,n,s]}],"backdrop-opacity":[{"backdrop-opacity":[p,n,s]}],"backdrop-saturate":[{"backdrop-saturate":[p,n,s]}],"backdrop-sepia":[{"backdrop-sepia":["",p,n,s]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":a()}],"border-spacing-x":[{"border-spacing-x":a()}],"border-spacing-y":[{"border-spacing-y":a()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",n,s]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[p,"initial",n,s]}],ease:[{ease:["linear","initial",L,n,s]}],delay:[{delay:[p,n,s]}],animate:[{animate:["none",v,n,s]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[y,n,s]}],"perspective-origin":[{"perspective-origin":E()}],rotate:[{rotate:Y()}],"rotate-x":[{"rotate-x":Y()}],"rotate-y":[{"rotate-y":Y()}],"rotate-z":[{"rotate-z":Y()}],scale:[{scale:q()}],"scale-x":[{"scale-x":q()}],"scale-y":[{"scale-y":q()}],"scale-z":[{"scale-z":q()}],"scale-3d":["scale-3d"],skew:[{skew:re()}],"skew-x":[{"skew-x":re()}],"skew-y":[{"skew-y":re()}],transform:[{transform:[n,s,"","none","gpu","cpu"]}],"transform-origin":[{origin:E()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:X()}],"translate-x":[{"translate-x":X()}],"translate-y":[{"translate-y":X()}],"translate-z":[{"translate-z":X()}],"translate-none":["translate-none"],zoom:[{zoom:[I,n,s]}],accent:[{accent:c()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:c()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",n,s]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":c()}],"scrollbar-track-color":[{"scrollbar-track":c()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":a()}],"scroll-mx":[{"scroll-mx":a()}],"scroll-my":[{"scroll-my":a()}],"scroll-ms":[{"scroll-ms":a()}],"scroll-me":[{"scroll-me":a()}],"scroll-mbs":[{"scroll-mbs":a()}],"scroll-mbe":[{"scroll-mbe":a()}],"scroll-mt":[{"scroll-mt":a()}],"scroll-mr":[{"scroll-mr":a()}],"scroll-mb":[{"scroll-mb":a()}],"scroll-ml":[{"scroll-ml":a()}],"scroll-p":[{"scroll-p":a()}],"scroll-px":[{"scroll-px":a()}],"scroll-py":[{"scroll-py":a()}],"scroll-ps":[{"scroll-ps":a()}],"scroll-pe":[{"scroll-pe":a()}],"scroll-pbs":[{"scroll-pbs":a()}],"scroll-pbe":[{"scroll-pbe":a()}],"scroll-pt":[{"scroll-pt":a()}],"scroll-pr":[{"scroll-pr":a()}],"scroll-pb":[{"scroll-pb":a()}],"scroll-pl":[{"scroll-pl":a()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",n,s]}],fill:[{fill:["none",...c()]}],"stroke-w":[{stroke:[p,$,j,ke]}],stroke:[{stroke:["none",...c()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},Ro=so(Io);function Go(...e){return Ro(Ne(e))}const Mo=()=>{var e;return typeof window<"u"&&(((e=window.matchMedia)==null?void 0:e.call(window,"(prefers-reduced-motion: reduce)").matches)??!1)};export{Go as c,Mo as p};
@@ -1 +0,0 @@
1
- import{r as l,j as o}from"./react-qoZPGuNy.js";import{f as u,aM as s}from"./index-BJ1Zyy42.js";import{F as i}from"./ui-Bq3RQsdJ.js";s.schema;function c(a){let e;try{e=new URL(a.trim())}catch{return null}const r=e.hostname.replace(/^www\./,"");if(r==="youtu.be"){const t=e.pathname.slice(1).split("/")[0];return t?`https://www.youtube.com/embed/${t}`:null}if(r==="youtube.com"||r==="m.youtube.com"){if(e.pathname==="/watch"){const n=e.searchParams.get("v");return n?`https://www.youtube.com/embed/${n}`:null}const t=e.pathname.match(/^\/(?:embed|shorts)\/([^/]+)/);return t?`https://www.youtube.com/embed/${t[1]}`:null}if(r==="vimeo.com"){const t=e.pathname.split("/").filter(Boolean)[0];return t&&/^\d+$/.test(t)?`https://player.vimeo.com/video/${t}`:null}return r==="player.vimeo.com"||e.protocol==="https:"?e.toString():null}function m({config:a}){const[e,r]=l.useState("loading"),t=l.useMemo(()=>c(a.url),[a.url]);return l.useEffect(()=>r("loading"),[t]),t?e==="error"?o.jsx(i,{children:"video unavailable"}):o.jsxs("div",{className:"relative h-full w-full overflow-hidden rounded-md",children:[e==="loading"&&o.jsx("div",{className:"absolute inset-0 z-10",children:o.jsx(i,{loading:!0,children:"loading video…"})}),o.jsx("iframe",{src:t,title:a.title,className:`h-full w-full border-0 transition-opacity duration-300 ${e==="loaded"?"opacity-100":"opacity-0"}`,allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",allowFullScreen:!0,onLoad:()=>r("loaded"),onError:()=>r("error")},t)]}):o.jsx(i,{children:"invalid video URL"})}const f=u({...s,component:m});export{f as videoFrame};
@@ -1 +0,0 @@
1
- import{r as c,j as a}from"./react-qoZPGuNy.js";import{f as n,cB as m,aj as f,h}from"./index-BJ1Zyy42.js";import{c as d,f as u,a as x}from"./format-DxkEZcwQ.js";import{F as l}from"./ui-Bq3RQsdJ.js";import{S as p}from"./scatter-chart-B78EA7lD.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";m.schema;function g({config:o}){const{stats:s,isLoading:i}=f(),r=c.useMemo(()=>Object.entries(s).filter(([,t])=>(t.dayNtlVlm??0)>0).sort((t,e)=>(e[1].dayNtlVlm??0)-(t[1].dayNtlVlm??0)).slice(0,o.limit).map(([t,e])=>({id:t,label:h(t),x:e.changePct,y:e.dayNtlVlm,weight:e.dayNtlVlm,color:d(e.changePct)})),[s,o.limit]);return i?a.jsx(l,{loading:!0,children:"loading markets…"}):r.length===0?a.jsx(l,{children:"no volume data yet"}):a.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[a.jsx(p,{data:r,yScale:"log",height:210,zeroXLine:!0,formatX:x,formatY:u,maxLabels:10}),a.jsxs("div",{className:"caption text-soft text-center",children:["24h change (x) vs 24h notional volume (y, log) · top ",r.length]})]})}const C=n({...m,component:g});export{C as volumeMoversScatterFrame};
@@ -1 +0,0 @@
1
- import{r as g,j as o}from"./react-qoZPGuNy.js";import{e as f,U as L}from"./format-DxkEZcwQ.js";import{f as E,bs as I,ac as R,h as S}from"./index-BJ1Zyy42.js";import{F as w}from"./ui-Bq3RQsdJ.js";I.schema;function v({label:t,value:x}){return o.jsxs("div",{className:"min-w-0 rounded-md bg-white/[0.04] px-2 py-1 text-center",children:[o.jsx("div",{className:"metric-sm text-strong truncate leading-none tabular-nums",title:x,children:x}),o.jsx("div",{className:"caption text-soft mt-0.5",children:t})]})}function U({config:t}){const x=g.useMemo(()=>Date.now()-t.lookbackDays*864e5,[t.lookbackDays]),{candles:c,isLoading:y}=R(t.symbol,t.interval,x),b=g.useMemo(()=>{if(c.length===0)return null;let s=1/0,a=-1/0;for(const e of c)s=Math.min(s,e.low),a=Math.max(a,e.high);if(!(a>s))return null;const i=t.bins,d=(a-s)/i,l=Array.from({length:i},(e,r)=>({low:s+r*d,high:s+(r+1)*d,mid:s+(r+.5)*d,volume:0}));for(const e of c){const r=(e.high+e.low+e.close)/3,D=e.volume??0;let h=Math.floor((r-s)/d);h<0&&(h=0),h>=i&&(h=i-1),l[h].volume+=D}const j=l.reduce((e,r)=>e+r.volume,0);if(j<=0)return null;let n=0;for(let e=1;e<i;e++)l[e].volume>l[n].volume&&(n=e);let m=n,u=n,p=l[n].volume;for(;p<j*.7&&(m>0||u<i-1);){const e=m>0?l[m-1].volume:-1;(u<i-1?l[u+1].volume:-1)>=e?p+=l[++u].volume:p+=l[--m].volume}return{bins:l,pocIdx:n,loI:m,hiI:u,maxVol:l[n].volume||1,poc:l[n].mid,vah:l[u].high,val:l[m].low,price:c[c.length-1].close}},[c,t.bins]);if(y)return o.jsx(w,{loading:!0,children:"loading volume profile…"});if(!b)return o.jsxs(w,{children:["no candles for ",S(t.symbol)]});const{bins:P,pocIdx:M,loI:N,hiI:k,maxVol:V,poc:A,vah:F,val:O,price:C}=b;return o.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-2",children:[o.jsxs("div",{className:"grid grid-cols-2 gap-1.5",children:[o.jsx(v,{label:"Price",value:f(C)}),o.jsx(v,{label:"POC",value:f(A)}),o.jsx(v,{label:"VAH",value:f(F)}),o.jsx(v,{label:"VAL",value:f(O)})]}),o.jsx("div",{className:"flex min-h-0 flex-1 flex-col-reverse gap-px overflow-hidden",children:P.map((s,a)=>{const i=a>=N&&a<=k,l=a===M?L:i?"rgba(148,163,184,0.55)":"rgba(148,163,184,0.22)";return o.jsx("div",{className:"flex min-h-[3px] flex-1 items-center",title:f(s.mid),children:o.jsx("div",{className:"h-full rounded-sm",style:{width:`${Math.max(2,s.volume/V*100)}%`,background:l}})},a)})})]})}const q=E({...I,component:U});export{q as volumeProfileFrame};
@@ -1 +0,0 @@
1
- import{r as x,j as e}from"./react-qoZPGuNy.js";import{f as h,cA as f,aj as v,h as j}from"./index-BJ1Zyy42.js";import{f as g,b as y}from"./format-DxkEZcwQ.js";import{F as u}from"./ui-Bq3RQsdJ.js";import{C as d}from"./chart-utils-DGogNvJT.js";import{P as N}from"./pie-chart-BIxKuHm-.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";f.schema;const b="rgba(255, 255, 255, 0.22)";function S({config:l}){const{stats:n,isLoading:p}=v(),o=x.useMemo(()=>{const s=Object.entries(n).map(([t,a])=>({symbol:t,vol:a.dayNtlVlm??0})).filter(t=>t.vol>0).sort((t,a)=>a.vol-t.vol),r=s.slice(0,l.limit),c=s.slice(l.limit).reduce((t,a)=>t+a.vol,0),i=r.map((t,a)=>({name:j(t.symbol),value:t.vol,color:d[a%d.length]}));return c>0&&i.push({name:"Other",value:c,color:b}),i},[n,l.limit]),m=o.reduce((s,r)=>s+r.value,0);return p?e.jsx(u,{loading:!0,children:"loading volume…"}):o.length===0?e.jsx(u,{children:"no volume data yet"}):e.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-4",children:[e.jsx(N,{data:o,width:200,height:200,innerRadius:58,outerRadius:92,colors:o.map(s=>s.color),children:e.jsxs("div",{className:"flex flex-col items-center gap-0.5",children:[e.jsx("span",{className:"caption text-soft",children:"24h volume"}),e.jsx("span",{className:"metric-lg text-strong",children:g(m)})]})}),e.jsx("div",{className:"flex w-full max-w-xs flex-wrap justify-center gap-x-5 gap-y-1.5",children:o.map(s=>e.jsxs("div",{className:"flex items-center gap-1.5",children:[e.jsx("span",{className:"h-2 w-2 flex-shrink-0 rounded-full",style:{background:s.color}}),e.jsx("span",{className:"body-sm text-soft",children:s.name}),e.jsx("span",{className:"body-sm text-normal font-bold tabular-nums",children:y(s.value/m*100,1)})]},s.name))})]})}const k=h({...f,component:S});export{k as volumeShareDonutFrame};
@@ -1 +0,0 @@
1
- import{r as d,j as e}from"./react-qoZPGuNy.js";import{b as r}from"./format-DxkEZcwQ.js";import{f as c,cO as i,bz as p}from"./index-BJ1Zyy42.js";import{F as l}from"./ui-Bq3RQsdJ.js";import{S as x}from"./scatter-chart-B78EA7lD.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";i.schema;function f({config:a}){const{pools:o,isLoading:m}=p(),s=d.useMemo(()=>o.filter(t=>t.apyBase!==null&&t.apyReward!==null&&t.tvlUsd>0&&(!a.stablecoinOnly||t.stablecoin)).sort((t,n)=>n.tvlUsd-t.tvlUsd).slice(0,a.limit).map(t=>({id:t.pool,label:t.symbol,x:t.apyBase,y:t.apyReward,weight:t.tvlUsd})),[o,a.limit,a.stablecoinOnly]);return m?e.jsx(l,{loading:!0,children:"loading yields…"}):s.length===0?e.jsx(l,{children:"no yield data yet"}):e.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[e.jsx(x,{data:s,height:210,formatX:t=>r(t,1),formatY:t=>r(t,1),maxLabels:8}),e.jsxs("div",{className:"caption text-soft text-center",children:["base APY (x) vs reward APY (y) · bubble = TVL · top ",s.length]})]})}const g=c({...i,component:f});export{g as yieldCompositionScatterFrame};
@@ -1 +0,0 @@
1
- import{j as e}from"./react-qoZPGuNy.js";import{c as x,b as v}from"./format-DxkEZcwQ.js";import{f as j,au as p,av as g}from"./index-BJ1Zyy42.js";import{F as u}from"./ui-Bq3RQsdJ.js";p.schema;const h=(n=1)=>`hsl(var(--zf-accent-hue, 242) 85% 72% / ${n})`;function y({rates:n}){const a=Math.min(...n),m=Math.max(...n),i=Math.max(.01,m-a),o=n.length,c=r=>100*r/(o-1),t=r=>4+32*(1-(r-a)/i),d=n.map((r,s)=>`${s?"L":"M"}${c(s).toFixed(2)},${t(r).toFixed(2)}`).join(" ");return e.jsxs("svg",{viewBox:"0 0 100 40",preserveAspectRatio:"none",className:"h-20 w-full","aria-hidden":!0,children:[e.jsx("path",{d:`${d} L100,40 L0,40 Z`,fill:h(.14)}),e.jsx("path",{d,fill:"none",stroke:h(.9),strokeWidth:1.5,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round"})]})}function N({config:n}){const{curve:a,isLoading:m}=g();if(m)return e.jsx(u,{loading:!0,children:"loading yield curve…"});if(!a||a.points.length<2)return e.jsx(u,{children:"no yield-curve data yet"});const i=s=>{var l;return(l=a.points.find(f=>f.label===s))==null?void 0:l.rate},o=i("2Y"),c=i("10Y"),t=o!=null&&c!=null?Math.round((c-o)*100):null,d=t!=null&&t<0,r=n.maturities;return e.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-2",children:[e.jsxs("div",{className:"flex items-start justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("div",{className:"caption text-soft uppercase",children:"Treasury yield curve"}),e.jsxs("div",{className:"body-sm text-normal",children:["U.S. Treasury · ",a.date]})]}),e.jsx("div",{className:"caption text-soft text-right",children:"daily"})]}),t!=null&&e.jsxs("div",{className:"flex items-baseline gap-2",children:[e.jsxs("span",{className:"metric-md leading-none",style:{color:x(t),textShadow:`0 0 24px ${x(t)}44`},children:[t>=0?"+":"",t," bps"]}),e.jsxs("span",{className:"caption text-soft",children:["2s10s · ",d?"inverted":"normal"]})]}),e.jsx(y,{rates:a.points.map(s=>s.rate)}),e.jsx("div",{className:"grid gap-1",style:{gridTemplateColumns:`repeat(${r.length}, minmax(0, 1fr))`},children:r.map(s=>{const l=i(s);return e.jsxs("div",{className:"rounded bg-white/[0.04] px-1.5 py-1 text-center",children:[e.jsx("div",{className:"caption text-soft",children:s}),e.jsx("div",{className:"body-sm text-strong font-bold tabular-nums",children:l!=null?v(l):"—"})]},s)})})]})}const M=j({...p,component:N});export{M as yieldCurveFrame};
@@ -1 +0,0 @@
1
- import{r as d,j as a}from"./react-qoZPGuNy.js";import{a as p,D as h,U as u}from"./format-DxkEZcwQ.js";import{f,cS as n,bz as x}from"./index-BJ1Zyy42.js";import{F as i}from"./ui-Bq3RQsdJ.js";import{B as y}from"./bar-chart-DCMbxUJx.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";n.schema;function g({config:e}){const{pools:s,isLoading:m}=x(),o=d.useMemo(()=>{const r=s.filter(t=>t.apyPct7D!==null&&t.tvlUsd>=e.minTvlUsd).sort((t,c)=>c.apyPct7D-t.apyPct7D),l=Math.floor(e.limit/2);return(r.length<=e.limit?r:[...r.slice(0,l),...r.slice(-l)]).map(t=>({label:t.symbol,value:t.apyPct7D}))},[s,e.limit,e.minTvlUsd]);return m?a.jsx(i,{loading:!0,children:"loading yields…"}):o.length===0?a.jsx(i,{children:"no pools match"}):a.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[a.jsx(y,{data:o,orientation:"horizontal",color:u,negativeColor:h,height:Math.max(o.length*22,96),formatValue:p}),a.jsxs("div",{className:"caption text-soft text-center",children:["top ",o.length," · 7d APY change"]})]})}const U=f({...n,component:g});export{U as yieldMomentumBarsFrame};
@@ -1 +0,0 @@
1
- import{r as u,j as a}from"./react-qoZPGuNy.js";import{f as r,b as f}from"./format-DxkEZcwQ.js";import{f as p,cL as x,bz as h}from"./index-BJ1Zyy42.js";import{F as i}from"./ui-Bq3RQsdJ.js";import{C as m}from"./chart-utils-DGogNvJT.js";import{P as j}from"./pie-chart-BIxKuHm-.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";const y={no:"No IL Risk",yes:"IL Risk",unknown:"Unknown"};function R(){const{pools:o,isLoading:c}=h(),n=u.useMemo(()=>{const e=new Map;for(const s of o){const t=s.ilRisk==="no"||s.ilRisk==="yes"?s.ilRisk:"unknown";e.set(t,(e.get(t)??0)+s.tvlUsd)}return[...e.entries()].map(([s,t],d)=>({name:y[s]??s,value:t,color:m[d%m.length]})).filter(s=>s.value>0).sort((s,t)=>t.value-s.value)},[o]),l=n.reduce((e,s)=>e+s.value,0);return c?a.jsx(i,{loading:!0,children:"loading yield pools…"}):n.length===0?a.jsx(i,{children:"no yield data yet"}):a.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-4",children:[a.jsx(j,{data:n,width:188,height:188,innerRadius:54,outerRadius:86,colors:n.map(e=>e.color),children:a.jsxs("div",{className:"flex max-w-[100px] flex-col items-center gap-0.5",children:[a.jsx("span",{className:"caption text-soft",children:"TVL by IL risk"}),a.jsx("span",{className:"metric-md text-strong leading-none tabular-nums",children:r(l)})]})}),a.jsx("div",{className:"flex w-full max-w-xs flex-wrap justify-center gap-x-5 gap-y-1.5",children:n.map(e=>a.jsxs("div",{className:"flex items-center gap-1.5",children:[a.jsx("span",{className:"h-2 w-2 flex-shrink-0 rounded-full",style:{background:e.color}}),a.jsx("span",{className:"body-sm text-soft",children:e.name}),a.jsx("span",{className:"body-sm text-normal font-bold tabular-nums",children:f(e.value/l*100,1)}),a.jsx("span",{className:"caption text-soft tabular-nums",children:r(e.value)})]},e.name))})]})}const I=p({...x,component:R});export{I as yieldRiskPieFrame};
@@ -1 +0,0 @@
1
- import{r as m,j as a}from"./react-qoZPGuNy.js";import{U as c,b as d,p,f as y}from"./format-DxkEZcwQ.js";import{M as f}from"./metric-row-BVVhjsjK.js";import{f as u,by as r,bz as x}from"./index-BJ1Zyy42.js";import{F as o,s as b}from"./ui-Bq3RQsdJ.js";r.schema;function h({config:e}){const{pools:l,isLoading:i}=x(),t=m.useMemo(()=>l.filter(s=>(!e.stablecoinOnly||s.stablecoin)&&s.tvlUsd>=e.minTvlUsd).sort((s,n)=>n.apy-s.apy).slice(0,e.limit),[l,e.stablecoinOnly,e.minTvlUsd,e.limit]);return i?a.jsx(o,{loading:!0,children:"loading yields…"}):t.length===0?a.jsx(o,{children:"no pools match"}):a.jsx("div",{className:`${b} flex flex-col`,children:t.map(s=>a.jsx(f,{label:s.symbol,meta:`${p(s.project)} · ${s.chain} · ${y(s.tvlUsd)}${s.stablecoin?" · stable":""}`,value:a.jsx("span",{style:{color:c},children:d(s.apy)})},s.pool))})}const F=u({...r,component:h});export{F as yieldScannerFrame};
@@ -1 +0,0 @@
1
- import{r as n,j as a}from"./react-qoZPGuNy.js";import{p as d,f as c,b as p}from"./format-DxkEZcwQ.js";import{f as x,cr as o,bz as y}from"./index-BJ1Zyy42.js";import{F as l}from"./ui-Bq3RQsdJ.js";import{S as f}from"./scatter-chart-B78EA7lD.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";o.schema;function u({config:e}){const{pools:r,isLoading:i}=y(),s=n.useMemo(()=>r.filter(t=>Number.isFinite(t.apy)&&t.apy>0&&t.apy<=e.maxApy&&t.tvlUsd>0&&(!e.stablecoinOnly||t.stablecoin)).sort((t,m)=>m.tvlUsd-t.tvlUsd).slice(0,e.limit).map(t=>({id:t.pool,label:d(t.project),x:t.apy,y:t.tvlUsd,weight:t.tvlUsd})),[r,e.limit,e.maxApy,e.stablecoinOnly]);return i?a.jsx(l,{loading:!0,children:"loading yields…"}):s.length===0?a.jsx(l,{children:"no yield data yet"}):a.jsxs("div",{className:"flex h-full flex-col justify-center gap-1 text-normal",children:[a.jsx(f,{data:s,yScale:"log",height:210,formatX:t=>p(t,0),formatY:c,maxLabels:8}),a.jsxs("div",{className:"caption text-soft text-center",children:["DeFi yields · APY (x) vs TVL (y, log) · top ",s.length]})]})}const U=x({...o,component:u});export{U as yieldScatterFrame};