zframes 0.7.0 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1787 -217
- package/package.json +6 -6
- package/runtime/assets/bar-chart-DCMbxUJx.js +1 -0
- package/runtime/assets/{bitcoin-dominance-rskkp4h2.js → bitcoin-dominance-BqoH90r5.js} +1 -1
- package/runtime/assets/{breakeven-DyCA3ya5.js → breakeven-1Kr-v9pE.js} +1 -1
- package/runtime/assets/{breathing-C8Y-Izs8.js → breathing-NOTeAM6N.js} +1 -1
- package/runtime/assets/btc-block-size-bars-BgwX4eu_.js +1 -0
- package/runtime/assets/{btc-blocks-BxS4aEAB.js → btc-blocks-D6TscPNp.js} +1 -1
- package/runtime/assets/{btc-difficulty-CNFxEiPh.js → btc-difficulty-BhSve3vk.js} +1 -1
- package/runtime/assets/btc-difficulty-chart-Yqxof0b6.js +1 -0
- package/runtime/assets/{btc-fees-Db-5JKh9.js → btc-fees-C-Za_OxK.js} +1 -1
- package/runtime/assets/btc-hashrate-5xnTYpft.js +1 -0
- package/runtime/assets/{btc-mempool-DFgUVk8y.js → btc-mempool-0WFrtuQR.js} +1 -1
- package/runtime/assets/{btc-shared-DeqDaCze.js → btc-shared-yOWoU9Im.js} +1 -1
- package/runtime/assets/bubbles-shared-DlmjtiIA.js +1 -0
- package/runtime/assets/{calculator-v01_FkZv.js → calculator-CcLe2vqJ.js} +1 -1
- package/runtime/assets/capital-structure-bars-SEyFIReK.js +1 -0
- package/runtime/assets/{chain-activity-CuA1eiPY.js → chain-activity-CCO3t0hA.js} +1 -1
- package/runtime/assets/chain-activity-bars-DHYCDKWT.js +1 -0
- package/runtime/assets/chain-activity-scatter-DeusbLku.js +1 -0
- package/runtime/assets/chain-price-movers-SeTwhqsM.js +1 -0
- package/runtime/assets/chart-utils-DGogNvJT.js +1 -0
- package/runtime/assets/checklist-orMUS_qt.js +1 -0
- package/runtime/assets/{clock-BWFux5om.js → clock-9PqJvMgi.js} +1 -1
- package/runtime/assets/coin-momentum-heatmap-DvfWWzSD.js +1 -0
- package/runtime/assets/coin-momentum-scatter-Cf4Y29lp.js +1 -0
- package/runtime/assets/{coin-movers-BcXfoFc6.js → coin-movers-D3cmI-tT.js} +1 -1
- package/runtime/assets/{countdown-CXSOeUWD.js → countdown-tMz3FsXT.js} +1 -1
- package/runtime/assets/custom-data-DPPNQ2QQ.js +1 -0
- package/runtime/assets/{cycle-shared-pyXzkgt1.js → cycle-shared-XoGVsOjC.js} +1 -1
- package/runtime/assets/{cycle-signals-BrKJX2c6.js → cycle-signals-DJYUIjas.js} +1 -1
- package/runtime/assets/cycle-valuation-composite-DO_Pda0n.js +1 -0
- package/runtime/assets/d3-ibrLIlQc.js +1 -0
- package/runtime/assets/{daily-analysis-CWluVygw.js → daily-analysis-BVEvATPa.js} +1 -1
- package/runtime/assets/{day-meter-Bi5OZCC4.js → day-meter-DmbSq9YK.js} +1 -1
- package/runtime/assets/{defi-revenue-CFNSNfG7.js → defi-revenue-DPazGCl4.js} +1 -1
- package/runtime/assets/dex-hot-pools-BeuuV2Cj.js +1 -0
- package/runtime/assets/dex-pool-bubbles-BLUbqZ4v.js +1 -0
- package/runtime/assets/dex-pool-liquidity-scatter-Civ63yej.js +1 -0
- package/runtime/assets/{dex-pool-treemap-DqvlN1Jo.js → dex-pool-treemap-ecoWHB8O.js} +1 -1
- package/runtime/assets/dex-volume-bubbles-CX9SfXmZ.js +1 -0
- package/runtime/assets/dex-volume-chart-Bgdepem0.js +1 -0
- package/runtime/assets/dex-volume-share-area-uDfe8wQZ.js +1 -0
- package/runtime/assets/{dex-volume-treemap-qyEBx4ll.js → dex-volume-treemap-BlrxYmk-.js} +1 -1
- package/runtime/assets/{dice-CuzcQipj.js → dice-BOUHMLs6.js} +1 -1
- package/runtime/assets/dino-game-BBIAIplk.js +1 -0
- package/runtime/assets/divider-B-nMbdhH.js +1 -0
- package/runtime/assets/dominance-bars-BjKMZR8V.js +1 -0
- package/runtime/assets/dominance-gauge-DVITO-Eg.js +1 -0
- package/runtime/assets/{drawdy-Bxr7eJ-7.js → drawdy-gpdcuxey.js} +1 -1
- package/runtime/assets/{dxy-CVbZmRsT.js → dxy-DfHaYZsj.js} +1 -1
- package/runtime/assets/dxy-chart-CidtFThk.js +1 -0
- package/runtime/assets/editor-C9dj6xX0.css +1 -0
- package/runtime/assets/editor-yifYG0tI.js +68 -0
- package/runtime/assets/etf-flow-bars-NYq3d_-U.js +1 -0
- package/runtime/assets/etf-flow-calendar-BI18BrWM.js +1 -0
- package/runtime/assets/{etf-flows-chart-B4Im9TVy.js → etf-flows-chart-BzKKqHh4.js} +1 -1
- package/runtime/assets/{etf-flows-Cl1WliDl.js → etf-flows-cufmZrd_.js} +1 -1
- package/runtime/assets/etf-issuer-bars-Dl9H_CZC.js +1 -0
- package/runtime/assets/etf-issuer-treemap-IhYjIP-y.js +1 -0
- package/runtime/assets/eth-issuance-impact-BLHuDvGQ.js +1 -0
- package/runtime/assets/{eth-staking-_q2b8DEx.js → eth-staking-CzidwFMK.js} +1 -1
- package/runtime/assets/{eth-supply-55OpYYBL.js → eth-supply-C7KDK-97.js} +1 -1
- package/runtime/assets/{fear-greed-CywOCckQ.js → fear-greed-DTLHRhif.js} +1 -1
- package/runtime/assets/fear-greed-chart-N1vM_QJ7.js +1 -0
- package/runtime/assets/{filings-feed-CosEi4NL.js → filings-feed-Dpz6nWMU.js} +1 -1
- package/runtime/assets/filings-mix-7ykY8NsE.js +1 -0
- package/runtime/assets/{financial-stress-DBCae4TA.js → financial-stress-BcnDhPO4.js} +1 -1
- package/runtime/assets/{flappy-bird-CBVgwfgX.js → flappy-bird-Vp7j7ceN.js} +1 -1
- package/runtime/assets/format-DxkEZcwQ.js +1 -0
- package/runtime/assets/fundamentals-BIesVoJt.js +1 -0
- package/runtime/assets/funding-bars-BNVCUVqC.js +1 -0
- package/runtime/assets/funding-carry-area-BqCrQOi5.js +1 -0
- package/runtime/assets/funding-comparison-BynnnDDf.js +1 -0
- package/runtime/assets/funding-crowding-scatter-BTzQUtFn.js +1 -0
- package/runtime/assets/funding-heatmap-DUOcDAeX.js +1 -0
- package/runtime/assets/funding-leaderboard-bars-CpYvO_Cs.js +1 -0
- package/runtime/assets/{funding-rate-chart-Da9WMKyJ.js → funding-rate-chart-CANXPS3a.js} +1 -1
- package/runtime/assets/funding-spread-bars-BgA-vSh-.js +1 -0
- package/runtime/assets/funding-venue-heatmap-jKiQGgLb.js +1 -0
- package/runtime/assets/{fx-board-CxhwDBHO.js → fx-board-CTnlbWGJ.js} +1 -1
- package/runtime/assets/fx-cross-heatmap-CDORG9Cx.js +1 -0
- package/runtime/assets/fx-movers-bars-WKvSm3Ry.js +1 -0
- package/runtime/assets/fx-trend-chart-uITTwyv8.js +1 -0
- package/runtime/assets/{game-ui-Dy_QYsPr.js → game-ui-BiMS2KJf.js} +1 -1
- package/runtime/assets/heading-Cidi7R-_.js +1 -0
- package/runtime/assets/hero-number-p8eaQmkA.js +1 -0
- package/runtime/assets/{holiday-calendar-C77t3m6c.js → holiday-calendar-ErapPWhY.js} +1 -1
- package/runtime/assets/image-BQQ0gSaW.js +1 -0
- package/runtime/assets/image-gallery-CNa-8BAA.js +1 -0
- package/runtime/assets/index-BHlJHScr.js +1108 -0
- package/runtime/assets/{index-DKixdHYB.js → index-BpPIfN5S.js} +1 -1
- package/runtime/assets/index-Bw1aFtyx.js +1 -0
- package/runtime/assets/index-DuNO-RcB.js +1 -0
- package/runtime/assets/index-yv-SCb9g.css +1 -0
- package/runtime/assets/indicators-Cw7CVPn4.js +1 -0
- package/runtime/assets/inflation-pulse-B54HwpAO.js +1 -0
- package/runtime/assets/{journal-log-BDu39CBE.js → journal-log-0CruSC_H.js} +1 -1
- package/runtime/assets/{journal-open-FejLOzlA.js → journal-open-DIwxMMCH.js} +1 -1
- package/runtime/assets/{journal-results-CtKy6MZM.js → journal-results-BM_i_JJ3.js} +1 -1
- package/runtime/assets/{journal-score-Bd7IDYl4.js → journal-score-He6DdYtU.js} +1 -1
- package/runtime/assets/{journal-store-KCRoPnI_.js → journal-store-DVDSxNMj.js} +1 -1
- package/runtime/assets/{journal-ui-C_htu3aM.js → journal-ui-CP9YblNJ.js} +1 -1
- package/runtime/assets/labor-force-flow-8HLQsbKV.js +1 -0
- package/runtime/assets/labor-market-If23zBQK.js +1 -0
- package/runtime/assets/{lightning-stats-botYMCIX.js → lightning-stats-DhrfBtX6.js} +1 -1
- package/runtime/assets/{link-grid-DFuD6XVK.js → link-grid-CsnxpE4z.js} +1 -1
- package/runtime/assets/liquidity-basis-bars-CaU5YtBA.js +1 -0
- package/runtime/assets/{ma-multiplier-s6ix-kL8.js → ma-multiplier-BBN7qsdV.js} +1 -1
- package/runtime/assets/{macro-calendar-Dhnx2n5Q.js → macro-calendar-cKBRneX9.js} +1 -1
- package/runtime/assets/market-bubbles-BKNkvOTg.js +1 -0
- package/runtime/assets/{market-cap-treemap-BWtivvac.js → market-cap-treemap-BSBU8mjq.js} +1 -1
- package/runtime/assets/market-hours-B10lWec_.js +1 -0
- package/runtime/assets/market-scatter-CVUa4ZQ_.js +1 -0
- package/runtime/assets/{marquee-NHBiLJUk.js → marquee-BS_quB4S.js} +1 -1
- package/runtime/assets/mayer-multiple-iiKonfXX.js +1 -0
- package/runtime/assets/mempool-fee-curve-CQ4nzab8.js +1 -0
- package/runtime/assets/{mini-line-chart-QWeuTPfP.js → mini-line-chart-DyG55cVW.js} +1 -1
- package/runtime/assets/{mining-pools-BxipfJmv.js → mining-pools-DROnvkZS.js} +1 -1
- package/runtime/assets/mining-pools-share-BhHh0hUJ.js +1 -0
- package/runtime/assets/misery-index-DpG7yLgX.js +1 -0
- package/runtime/assets/mover-row-Bz-YpFL3.js +1 -0
- package/runtime/assets/movers-bars-CEFjsHnv.js +1 -0
- package/runtime/assets/movers-bubbles-C-SriZvR.js +1 -0
- package/runtime/assets/{mvrv-BIwCiyRN.js → mvrv-Cg0t6U5X.js} +1 -1
- package/runtime/assets/mvrv-zscore-chart-qyOkheJb.js +1 -0
- package/runtime/assets/national-debt-BRX09_U_.js +1 -0
- package/runtime/assets/news-feed-DQHSPzk5.js +1 -0
- package/runtime/assets/nft-activity-bars-BmNs4RMC.js +1 -0
- package/runtime/assets/nft-bubbles-0f9wAld0.js +1 -0
- package/runtime/assets/{nft-collections-sD-yDfKU.js → nft-collections-Czp0t7ZU.js} +1 -1
- package/runtime/assets/nft-scatter-BHULn6_-.js +1 -0
- package/runtime/assets/{nft-treemap-Bqhk41Of.js → nft-treemap-D2Kj3AuL.js} +1 -1
- package/runtime/assets/note-BdVtsqXo.js +3 -0
- package/runtime/assets/{nupl-U-WHVDJ0.js → nupl-BrK2rcgi.js} +1 -1
- package/runtime/assets/nupl-cycle-chart-BlXOLj4A.js +1 -0
- package/runtime/assets/nyfed-fed-funds-band-gauge-DnzVhh9I.js +1 -0
- package/runtime/assets/nyfed-reference-rate-bars-CxLwUFUY.js +1 -0
- package/runtime/assets/nyfed-sofr-term-averages-bars-DxzLVO9o.js +1 -0
- package/runtime/assets/ofr-stress-category-area-TXpXiMP-.js +1 -0
- package/runtime/assets/ohlcv-volume-bars-BQZiJJ3u.js +1 -0
- package/runtime/assets/oi-treemap-BEusAMZU.js +1 -0
- package/runtime/assets/onchain-oscillator-overlay-BPa_jULR.js +1 -0
- package/runtime/assets/{open-interest-C0_M6MkH.js → open-interest-BqO1-ZYo.js} +1 -1
- package/runtime/assets/options-flow-skew-Cy0SUhs0.js +1 -0
- package/runtime/assets/{options-iv-CIHzBULM.js → options-iv-RsCKjmmC.js} +1 -1
- package/runtime/assets/options-max-pain-B2pA7KJP.js +1 -0
- package/runtime/assets/options-max-pain-multi-BLfX8Qe6.js +1 -0
- package/runtime/assets/options-oi-ladder-heatmap-Do8eYI3h.js +1 -0
- package/runtime/assets/options-oi-skew-D869gcp7.js +1 -0
- package/runtime/assets/{options-oi-strike-Db8lP27S.js → options-oi-strike-CKWXk22Q.js} +1 -1
- package/runtime/assets/{options-put-call-5ex7Ablt.js → options-put-call-DcSwyIIX.js} +1 -1
- package/runtime/assets/options-vol-smile-CqP0-CSw.js +1 -0
- package/runtime/assets/options-vol-spread-DMXdphxM.js +1 -0
- package/runtime/assets/payrolls-bars-15U_DxmS.js +1 -0
- package/runtime/assets/{pi-cycle-eACZGQhd.js → pi-cycle-tqHUEYSe.js} +1 -1
- package/runtime/assets/pie-chart-BIxKuHm-.js +1 -0
- package/runtime/assets/{pomodoro-CaS6y-eQ.js → pomodoro-DSswMPuv.js} +1 -1
- package/runtime/assets/portfolio-allocation-DHN6r6fl.js +1 -0
- package/runtime/assets/portfolio-common-e3o9U7qd.js +1 -0
- package/runtime/assets/{portfolio-holdings-D-SG9B5X.js → portfolio-holdings-Bf6vOm0e.js} +1 -1
- package/runtime/assets/portfolio-movers-DmaGwFtS.js +1 -0
- package/runtime/assets/{portfolio-value-DPKyirHc.js → portfolio-value-DLQHtwCl.js} +1 -1
- package/runtime/assets/portfolio-value-bars-B8XP7r22.js +1 -0
- package/runtime/assets/prediction-market-bars-Du1RxZc_.js +1 -0
- package/runtime/assets/prediction-market-scatter-bdlr6r_V.js +1 -0
- package/runtime/assets/{prediction-markets-Cnf0KZba.js → prediction-markets-DNDg43g9.js} +1 -1
- package/runtime/assets/prediction-markets-bubble-ccP01yj3.js +1 -0
- package/runtime/assets/{price-chart-BEnpZLyb.js → price-chart-Cw8OXmKH.js} +1 -1
- package/runtime/assets/{price-compare-8LvkF-xq.js → price-compare-txGWDCHD.js} +1 -1
- package/runtime/assets/{price-liveline-DkTeXuC2.js → price-liveline-F7uJKuTS.js} +1 -1
- package/runtime/assets/price-ticker-DQFyiHmW.js +1 -0
- package/runtime/assets/protocol-fees-bubbles-oV66t8AJ.js +1 -0
- package/runtime/assets/{protocol-fees-treemap-fvVOfUFt.js → protocol-fees-treemap-CsZhFjxB.js} +1 -1
- package/runtime/assets/protocol-fees-vs-tvl-scatter-CtLKoDeh.js +1 -0
- package/runtime/assets/protocol-tvl-bubbles-CuULi2KY.js +1 -0
- package/runtime/assets/protocol-tvl-by-category-BV2yIdZ_.js +1 -0
- package/runtime/assets/{protocol-tvl-chart-BfrszRqq.js → protocol-tvl-chart-BRPlR_kj.js} +1 -1
- package/runtime/assets/protocol-tvl-share-area-BeWSgocA.js +1 -0
- package/runtime/assets/{protocol-tvl-treemap-v5kaQdP4.js → protocol-tvl-treemap-BYECslhG.js} +1 -1
- package/runtime/assets/{puell-multiple-BdOLF9Wh.js → puell-multiple-akyTNZyp.js} +1 -1
- package/runtime/assets/put-call-gauge-CwrHYfdq.js +1 -0
- package/runtime/assets/{quote-slpulzHo.js → quote-6JmbHxfg.js} +1 -1
- package/runtime/assets/radial-gauge-0BzRQ6fO.js +1 -0
- package/runtime/assets/{rates-board-B6hHyiDM.js → rates-board-CiY6mWMz.js} +1 -1
- package/runtime/assets/real-wages-BTBOxvjP.js +1 -0
- package/runtime/assets/realized-price-CbjZ3Sqj.js +1 -0
- package/runtime/assets/{reserve-risk-_07r_h5w.js → reserve-risk-UlEv8oS1.js} +1 -1
- package/runtime/assets/returns-projector-qPZeZ-n9.js +1 -0
- package/runtime/assets/{risk-reward-Baq_TRho.js → risk-reward-DWcu9j4_.js} +1 -1
- package/runtime/assets/{rsi-momentum-B6oTu5W6.js → rsi-momentum-BuasFcVH.js} +1 -1
- package/runtime/assets/{rules-card-D98hKEwY.js → rules-card-DkjHPbht.js} +1 -1
- package/runtime/assets/scatter-chart-B78EA7lD.js +1 -0
- package/runtime/assets/sector-bars-JKmedArM.js +1 -0
- package/runtime/assets/sector-bubbles-DLXckuua.js +1 -0
- package/runtime/assets/{sector-performance-DlnYIM-L.js → sector-performance-C_2-xbIq.js} +1 -1
- package/runtime/assets/{sector-treemap-C3sX3Q9o.js → sector-treemap-DquBCyc3.js} +1 -1
- package/runtime/assets/sentiment-gauge-CuNvuk1q.js +1 -0
- package/runtime/assets/{session-progress-BYwNuuP-.js → session-progress-BDhJHQEn.js} +1 -1
- package/runtime/assets/{short-volume-CxBDSjP6.js → short-volume-Deb7fra_.js} +1 -1
- package/runtime/assets/short-volume-bars-DRjpg7RS.js +1 -0
- package/runtime/assets/{snake-CGV0Kg4z.js → snake-B9EEDroM.js} +1 -1
- package/runtime/assets/{sopr-DAn99w9D.js → sopr-DM_gpDem.js} +1 -1
- package/runtime/assets/{spotify-embed-BBfim9vk.js → spotify-embed-Dxt1RnUX.js} +1 -1
- package/runtime/assets/{stablecoin-chains-D4EKi_YR.js → stablecoin-chains-LzYMilQE.js} +1 -1
- package/runtime/assets/{stablecoin-supply-1m6FGR7-.js → stablecoin-supply-69kqOBoU.js} +1 -1
- package/runtime/assets/stopwatch-ClPrrveo.js +1 -0
- package/runtime/assets/{top-movers-CAqBZOUL.js → top-movers-BRiiYOPQ.js} +1 -1
- package/runtime/assets/treasury-auction-demand-scatter-yYNPz1VC.js +1 -0
- package/runtime/assets/treasury-auction-size-bars-CGD6MeAz.js +1 -0
- package/runtime/assets/{treasury-auctions-Bl19yaM_.js → treasury-auctions-Z_4MtXmL.js} +1 -1
- package/runtime/assets/treasury-avg-rate-bars-FXGz1a7e.js +1 -0
- package/runtime/assets/treasury-debt-composition-area-5yRh0K6a.js +1 -0
- package/runtime/assets/{treemap-leaf-A45Ge4-e.js → treemap-leaf-QG-L-SIG.js} +1 -1
- package/runtime/assets/trending-bars-z_cjmEXN.js +1 -0
- package/runtime/assets/trending-bubbles-nwoxKQEW.js +1 -0
- package/runtime/assets/{trending-coins-Dm9R9zGQ.js → trending-coins-9vrbEbBm.js} +1 -1
- package/runtime/assets/tvl-bars-BkJcttcu.js +1 -0
- package/runtime/assets/tvl-bubbles-D4tahOC6.js +1 -0
- package/runtime/assets/tvl-treemap-B7kWI7o0.js +1 -0
- package/runtime/assets/{video-CkvIGlHg.js → video-Dsc13Zja.js} +1 -1
- package/runtime/assets/volume-movers-scatter-BA8Wmoil.js +1 -0
- package/runtime/assets/volume-profile-DcSNvDqP.js +1 -0
- package/runtime/assets/volume-share-donut-3MenMO-V.js +1 -0
- package/runtime/assets/yield-composition-scatter-rfxC16n2.js +1 -0
- package/runtime/assets/{yield-curve-DlXQg4sl.js → yield-curve-DXsfXy4P.js} +1 -1
- package/runtime/assets/yield-momentum-bars-B9nKuItO.js +1 -0
- package/runtime/assets/yield-risk-pie-DUxkXYIQ.js +1 -0
- package/runtime/assets/yield-scanner-sCBXpQTV.js +1 -0
- package/runtime/assets/yield-scatter-BZHOhFcm.js +1 -0
- package/runtime/index.html +2 -2
- package/runtime/widget-icons/custom-data.png +0 -0
- package/runtime/assets/btc-hashrate-Dy2c30Gb.js +0 -1
- package/runtime/assets/chart-utils-Ct7WziT9.js +0 -1
- package/runtime/assets/checklist-Be_y1aTE.js +0 -1
- package/runtime/assets/d3-Dr3MHXm3.js +0 -1
- package/runtime/assets/dex-hot-pools-C4TrRB17.js +0 -1
- package/runtime/assets/dex-volume-chart-BLR-L_B0.js +0 -1
- package/runtime/assets/dino-game-CiGWzsag.js +0 -1
- package/runtime/assets/divider-DvK5oM9v.js +0 -1
- package/runtime/assets/editor-CQM8mtD8.css +0 -1
- package/runtime/assets/editor-EOEtB4_n.js +0 -68
- package/runtime/assets/format-CfAcS4D8.js +0 -1
- package/runtime/assets/fundamentals-zRwGUcmb.js +0 -1
- package/runtime/assets/funding-comparison-wCNoCb1H.js +0 -1
- package/runtime/assets/funding-heatmap-a4zdnKi9.js +0 -1
- package/runtime/assets/heading-b5H33lig.js +0 -1
- package/runtime/assets/image-C8ZSUHEx.js +0 -1
- package/runtime/assets/index-C-VdMqKb.css +0 -1
- package/runtime/assets/index-kB-TyxKi.js +0 -1073
- package/runtime/assets/indicators-CogwjDn9.js +0 -1
- package/runtime/assets/inflation-pulse-CoXcuabd.js +0 -1
- package/runtime/assets/labor-market-DR0j05Gy.js +0 -1
- package/runtime/assets/market-hours-wSrW5Elv.js +0 -1
- package/runtime/assets/mayer-multiple-CZC5q6ra.js +0 -1
- package/runtime/assets/mover-row-CUd1i2yt.js +0 -1
- package/runtime/assets/national-debt-DwC5azy3.js +0 -1
- package/runtime/assets/news-feed-BhAsJ6gt.js +0 -1
- package/runtime/assets/note-C1-RPOvR.js +0 -1
- package/runtime/assets/portfolio-allocation-NR-4wbGL.js +0 -1
- package/runtime/assets/portfolio-common-Cfpnudvk.js +0 -1
- package/runtime/assets/price-ticker-DgDJ3k4b.js +0 -1
- package/runtime/assets/realized-price-dn6bApj-.js +0 -1
- package/runtime/assets/returns-projector-NBs7iGAV.js +0 -1
- package/runtime/assets/stopwatch-CCqsSaII.js +0 -1
- package/runtime/assets/tvl-treemap-CSM9ioUr.js +0 -1
- package/runtime/assets/volume-profile-UJPTgNwV.js +0 -1
- package/runtime/assets/yield-scanner-Qm88hZuv.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as e}from"./react-qoZPGuNy.js";import{b as a,f as g}from"./format-
|
|
1
|
+
import{j as e}from"./react-qoZPGuNy.js";import{b as a,f as g}from"./format-DxkEZcwQ.js";import{M as v}from"./metric-row-BVVhjsjK.js";import{f as j,ak as f,al as R,am as y}from"./index-BHlJHScr.js";import{F as m}from"./ui-Bq3RQsdJ.js";f.schema;function b({config:t}){var c,d;const{rates:i,isLoading:x}=R(),{rates:o,isLoading:u}=y();if(x&&u)return e.jsx(m,{loading:!0,children:"loading official rates…"});if(!i.length&&!o.length)return e.jsx(m,{children:"no rates data yet"});const n=i.slice(0,t.maxReferenceRates),r=o.slice(0,t.maxTreasuryRates),l=(c=n[0])==null?void 0:c.date,h=(d=r[0])==null?void 0:d.date;return e.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-3",children:[e.jsxs("div",{className:"flex items-baseline justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("div",{className:"caption text-soft uppercase",children:"official rates"}),e.jsx("div",{className:"body-sm text-normal",children:l?`as of ${l}`:"reference rates"})]}),e.jsx("div",{className:"caption text-soft text-right",children:"daily"})]}),e.jsx("div",{className:"min-h-0 flex-1 overflow-hidden",children:n.map(s=>{const p=s.targetRateFrom!==void 0&&s.targetRateTo!==void 0?`target ${a(s.targetRateFrom)}-${a(s.targetRateTo)}`:s.volumeInBillions!==void 0?`${g(s.volumeInBillions*1e9)} volume`:s.source;return e.jsx(v,{label:s.label,value:a(s.rate),meta:p},s.code)})}),t.showTreasuryAverageRates&&r.length>0&&e.jsxs("div",{className:"border-t border-white/[0.08] pt-2",children:[e.jsxs("div",{className:"caption text-soft mb-1 flex justify-between",children:[e.jsx("span",{children:"Treasury average rates"}),e.jsx("span",{children:h})]}),e.jsx("div",{className:"grid grid-cols-2 gap-1.5",children:r.map(s=>e.jsxs("div",{className:"rounded bg-white/[0.04] px-2 py-1.5",children:[e.jsx("div",{className:"caption text-soft truncate",children:s.security}),e.jsx("div",{className:"body-sm text-strong font-bold tabular-nums",children:a(s.rate)})]},`${s.date}-${s.security}`))})]})]})}const B=j({...f,component:b});export{B as ratesBoardFrame};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as I,j as l}from"./react-qoZPGuNy.js";import{a as M,b as T}from"./format-DxkEZcwQ.js";import{f as w,di as x,S as h}from"./index-BHlJHScr.js";import{F as S}from"./ui-Bq3RQsdJ.js";import{C as v,a as L}from"./chart-utils-DGogNvJT.js";import{M as R}from"./index-BpPIfN5S.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";x.schema;const D="CUUR0000SA0",U="CES0500000003";function C(a){const u=new Map(a.map(e=>[e.time,e.value]));return a.flatMap(e=>{const t=new Date(e.time),n=Date.UTC(t.getUTCFullYear()-1,t.getUTCMonth(),1),r=u.get(n);return r===void 0||r<=0?[]:[{...e,value:(e.value/r-1)*100}]})}function j({config:a}){var p,f;const e=new Date().getUTCFullYear(),t=e-3,{series:n,isLoading:r}=h(D,t,e),{series:m,isLoading:y}=h(U,t,e),s=I.useMemo(()=>{if(!n||!m)return[];const i=C(m.points).slice(-a.months),E=C(n.points).slice(-a.months);return[{id:"earnings",name:"Avg hourly earnings",color:v[1],data:i.map(o=>({date:new Date(o.time).toISOString(),value:o.value}))},{id:"cpi",name:"CPI-U",color:v[3],data:E.map(o=>({date:new Date(o.time).toISOString(),value:o.value}))}]},[n,m,a.months]);if((r||y)&&s.every(i=>i.data.length===0))return l.jsx(S,{loading:!0,children:"loading real wages…"});if(s.every(i=>i.data.length===0))return l.jsx(S,{children:"no wage data yet"});const d=(p=s[0].data.at(-1))==null?void 0:p.value,g=(f=s[1].data.at(-1))==null?void 0:f.value,c=d!==void 0&&g!==void 0?d-g:null;return l.jsxs("div",{className:"flex h-full min-h-0 flex-col gap-2",children:[l.jsx(R,{series:s,timeframe:L.YTD,height:250,formatValue:M}),c!==null&&l.jsxs("div",{className:"caption text-soft text-center",children:["pay ",c>=0?"outrunning":"trailing"," inflation by"," ",T(Math.abs(c),2)]})]})}const G=w({...x,component:j});export{G as realWagesFrame};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as l,j as i}from"./react-qoZPGuNy.js";import{f}from"./format-DxkEZcwQ.js";import{w as p,t as o}from"./indicators-Cw7CVPn4.js";import{f as u,bT as c,bi as h}from"./index-BHlJHScr.js";import{F as n}from"./ui-Bq3RQsdJ.js";import{C as s,a as w}from"./chart-utils-DGogNvJT.js";import{M as x}from"./index-BpPIfN5S.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";c.schema;const m=r=>r.map(e=>({date:new Date(e.time).toISOString(),value:e.value}));function z({config:r}){const{valuation:e,isLoading:d}=h(),t=l.useMemo(()=>{if(!e)return[];const a=p(r.window);return[{id:"price",name:"Market Price",color:s[0],data:m(o(e.history.price,a))},{id:"realized",name:"Realized Price",color:s[1],data:m(o(e.history.realizedPrice,a))}]},[e,r.window]);return d?i.jsx(n,{loading:!0,children:"loading realized price…"}):!e||t.every(a=>a.data.length===0)?i.jsx(n,{children:"no on-chain data yet"}):i.jsx(x,{series:t,timeframe:w.YTD,height:220,formatValue:f})}const v=u({...c,component:z});export{v as realizedPriceFrame};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{j as o}from"./react-qoZPGuNy.js";import{z as n,Z as l,M as m}from"./cycle-shared-
|
|
1
|
+
import{j as o}from"./react-qoZPGuNy.js";import{z as n,Z as l,M as m}from"./cycle-shared-XoGVsOjC.js";import{D as c,U as p}from"./format-DxkEZcwQ.js";import{t as R,w as u}from"./indicators-Cw7CVPn4.js";import{f as v,bU as i,bl as f}from"./index-BHlJHScr.js";import{F as s}from"./ui-Bq3RQsdJ.js";import"./mini-line-chart-DyG55cVW.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";i.schema;function k({config:a}){const{extras:e,isLoading:t}=f();if(t)return o.jsx(s,{loading:!0,children:"loading reserve risk…"});if(!e||e.reserveRisk===null)return o.jsx(s,{children:"Reserve Risk unavailable"});const r=n(e.reserveRisk,[{upTo:.0015,zone:{label:"Attractive",color:p}},{upTo:.008,zone:{label:"Neutral",color:l}}],{label:"Elevated",color:c});return o.jsx(m,{caption:"Reserve Risk",headline:e.reserveRisk.toPrecision(2),headlineColor:r.color,zone:r,sparkline:R(e.history.reserveRisk,u(a.window)),sparkColor:r.color})}const g=v({...i,component:k});export{g as reserveRiskFrame};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as i,j as e}from"./react-qoZPGuNy.js";import{i as k}from"./content-shared-BZ1XzrJx.js";import{d as w,a as R,f as j,c as $}from"./format-DxkEZcwQ.js";import{f as E,bX as v}from"./index-BHlJHScr.js";import{M as L}from"./mini-line-chart-DyG55cVW.js";import"./d3-ibrLIlQc.js";import"./utils-DxneYyA_.js";v.schema;function l({label:s,value:t,onChange:c}){return e.jsxs("label",{className:`flex flex-col gap-0.5 px-2 py-1 ${k}`,children:[e.jsx("span",{className:"caption text-soft truncate",children:s}),e.jsx("input",{type:"number",value:Number.isFinite(t)?t:0,onChange:r=>c(Number(r.target.value)),className:"body-sm text-strong w-full bg-transparent outline-none"})]})}function U({config:s}){const[t,c]=i.useState(s.principal),[r,N]=i.useState(s.ratePct),[m,C]=i.useState(s.periods),[o,P]=i.useState(s.contribution),{series:M,ending:h,contributed:x,gain:u}=i.useMemo(()=>{const S=r/100,y=Math.max(0,Math.min(600,Math.floor(m))),g=[{date:"0",value:t}];let n=t,p=t;for(let d=1;d<=y;d++)n=n*(1+S)+o,p+=o,g.push({date:String(d),value:n});return{series:g,ending:n,contributed:p,gain:n-p}},[t,r,m,o]),a=x>0?u/x*100:0,b=s.label.trim(),f=Number.isFinite(h)&&Number.isFinite(u),F=Number.isFinite(a)?Math.abs(a)>=1e5?`${a>=0?"+":""}${w(a)}%`:R(a):"—";return e.jsxs("div",{className:"flex h-full w-full flex-col gap-2",children:[b&&e.jsx("div",{className:"caption text-soft shrink-0 uppercase tracking-[0.12em]",children:b}),e.jsxs("div",{className:"shrink-0",children:[e.jsx("div",{className:"caption text-soft",children:"projected value"}),e.jsx("div",{className:"metric-lg text-strong",children:f?j(h):"—"}),e.jsxs("div",{className:"body-sm",style:{color:$(a)},children:[F," · ",f?j(u):"—"," gain"]})]}),e.jsx("div",{className:"min-h-0 flex-1",children:e.jsx(L,{data:M,width:260,height:48,variant:"green",className:"w-full"})}),e.jsxs("div",{className:"grid shrink-0 grid-cols-2 gap-1.5",children:[e.jsx(l,{label:"principal",value:t,onChange:c}),e.jsx(l,{label:"rate %/period",value:r,onChange:N}),e.jsx(l,{label:"periods",value:m,onChange:C}),e.jsx(l,{label:"contribution",value:o,onChange:P})]})]})}const H=E({...v,component:U});export{H as returnsProjectorFrame};
|
|
@@ -1 +1 @@
|
|
|
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,
|
|
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-BHlJHScr.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 +1 @@
|
|
|
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-
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{j as s}from"./react-qoZPGuNy.js";import{f as m,
|
|
1
|
+
import{j as s}from"./react-qoZPGuNy.js";import{f as m,b$ as n}from"./index-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{j as e}from"./react-qoZPGuNy.js";import{a as i,c as l,f}from"./format-
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as i,j as o}from"./react-qoZPGuNy.js";import{f as p,a as n}from"./format-
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./react-qoZPGuNy.js";import{f as c,co as s,I as l}from"./index-BHlJHScr.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 +1 @@
|
|
|
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,
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as u,j as s}from"./react-qoZPGuNy.js";import{f as x,
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as a,j as L}from"./react-qoZPGuNy.js";import{a as H,G as M,d as
|
|
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-BHlJHScr.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 +1 @@
|
|
|
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-
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as s,j as l}from"./react-qoZPGuNy.js";import{f as p,
|
|
1
|
+
import{r as s,j as l}from"./react-qoZPGuNy.js";import{f as p,c1 as i}from"./index-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as m,j as s}from"./react-qoZPGuNy.js";import{f as l}from"./format-
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{j as a}from"./react-qoZPGuNy.js";import{M as s,Z as p}from"./cycle-shared-
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as d,j as s}from"./react-qoZPGuNy.js";import{f as
|
|
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-BHlJHScr.js";import{M as i}from"./mover-row-Bz-YpFL3.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{j as s}from"./react-qoZPGuNy.js";import{b as c}from"./format-
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{R as P,r as d,j as T}from"./react-qoZPGuNy.js";import{c as $}from"./utils-DxneYyA_.js";import{
|
|
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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{j as e}from"./react-qoZPGuNy.js";import{a as l,c as m,
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{r as l,j as o}from"./react-qoZPGuNy.js";import{f as u,
|
|
1
|
+
import{r as l,j as o}from"./react-qoZPGuNy.js";import{f as u,aM as s}from"./index-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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 +1 @@
|
|
|
1
|
-
import{j as e}from"./react-qoZPGuNy.js";import{c as x,b as v}from"./format-
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
|
@@ -0,0 +1 @@
|
|
|
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-BHlJHScr.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};
|
package/runtime/index.html
CHANGED
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16.png" />
|
|
9
9
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
|
10
10
|
<title>zframes runtime</title>
|
|
11
|
-
<script type="module" crossorigin src="/assets/index-
|
|
11
|
+
<script type="module" crossorigin src="/assets/index-BHlJHScr.js"></script>
|
|
12
12
|
<link rel="modulepreload" crossorigin href="/assets/react-qoZPGuNy.js">
|
|
13
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
13
|
+
<link rel="stylesheet" crossorigin href="/assets/index-yv-SCb9g.css">
|
|
14
14
|
</head>
|
|
15
15
|
<body>
|
|
16
16
|
<div id="root"></div>
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as c,j as e}from"./react-qoZPGuNy.js";import{k as h,e as l}from"./format-CfAcS4D8.js";import{f as m,aU as i,aV as d}from"./index-kB-TyxKi.js";import{F as r}from"./ui-Bq3RQsdJ.js";import{M as f}from"./mini-line-chart-QWeuTPfP.js";import"./d3-Dr3MHXm3.js";import"./utils-DxneYyA_.js";i.schema;function x({config:a}){const{data:t,isLoading:n}=d(a.window),o=c.useMemo(()=>((t==null?void 0:t.hashrates)??[]).map(s=>({date:new Date(s.time).toISOString(),value:s.hashrate})),[t==null?void 0:t.hashrates]);return n?e.jsx(r,{loading:!0,children:"loading hashrate…"}):t?e.jsxs("div",{className:"flex h-full min-h-0 flex-col justify-center gap-3",children:[e.jsxs("div",{className:"flex items-end justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("div",{className:"caption text-soft uppercase",children:"network hashrate"}),e.jsx("div",{className:"metric-lg text-strong leading-none",children:h(t.currentHashrate)})]}),e.jsxs("div",{className:"text-right",children:[e.jsx("div",{className:"body-md text-normal font-bold tabular-nums",children:l(t.currentDifficulty)}),e.jsx("div",{className:"caption text-soft",children:"difficulty"})]})]}),e.jsx(f,{data:o,width:320,height:54,color:"hsl(var(--zf-accent-hue, 242) 85% 72%)"}),e.jsxs("div",{className:"caption text-soft",children:["past ",a.window]})]}):e.jsx(r,{children:"no hashrate data yet"})}const b=m({...i,component:x});export{b as btcHashrateFrame};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{m as M,b as r,t as u}from"./d3-Dr3MHXm3.js";var l=(n=>(n["30m"]="30m",n["24h"]="24h",n["3D"]="3D",n["7D"]="7D",n["1M"]="1M",n["3M"]="3M",n.YTD="YTD",n))(l||{});const e=(n,o)=>{const t=new Date(n);return o===l["24h"]?u("%H:%M")(t):u("%b %d")(t)},x=(n,o=.1)=>{const t=n.map(F=>F.value),s=M(t)||0,c=r(t)||0,D=c-s,m=c+D*o;let a=s-D*o;return s>=0&&a<0&&(a=0),[a,m]},E=["#3B82F6","#10B981","#F59E0B","#EF4444","#8B5CF6","#06B6D4","#84CC16","#F97316"];export{E as C,l as a,x as c,e as f};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as x,j as t}from"./react-qoZPGuNy.js";import{f as p,bP as o,m as u}from"./index-kB-TyxKi.js";import{s as b}from"./ui-Bq3RQsdJ.js";o.schema;function f({config:s}){const r=u(),[i,m]=x.useState(s.checked),l=r?s.checked:i,h=a=>{const e=s.items.map((k,c)=>c===a?!l[c]:!!l[c]);r?r({checked:e}):m(e)},d=s.items.filter((a,e)=>l[e]).length,n=s.title.trim();return t.jsxs("div",{className:"flex h-full w-full flex-col",children:[t.jsxs("div",{className:"mb-1 flex shrink-0 items-baseline justify-between gap-2",children:[n&&t.jsx("div",{className:"body-sm text-strong truncate font-semibold",children:n}),t.jsxs("div",{className:"caption text-soft shrink-0 tabular-nums",children:[d,"/",s.items.length]})]}),t.jsx("div",{className:`min-h-0 flex-1 ${b}`,children:s.items.map((a,e)=>t.jsxs("button",{type:"button",onClick:()=>h(e),className:"flex w-full items-center gap-2 py-1 text-left",children:[t.jsx("span",{className:"caption flex h-4 w-4 shrink-0 items-center justify-center rounded border leading-none",style:{borderColor:l[e]?"var(--color-highlight)":"rgba(255,255,255,0.2)",background:l[e]?"var(--color-highlight)":"transparent",color:l[e]?"#0b0e14":"transparent"},children:"✓"}),t.jsx("span",{className:`body-sm ${l[e]?"text-disabled line-through":"text-normal"}`,children:a})]},e))})]})}const v=p({...o,component:f});export{v as checklistFrame};
|