diff --git a/experiments/events/index.html b/experiments/events/index.html index 91291c2e0..3c6a36331 100644 --- a/experiments/events/index.html +++ b/experiments/events/index.html @@ -102,14 +102,19 @@ position: absolute; top: 0; left: 0; - font-family: - "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", - sans-serif; - font-size: var(--event-marker-size); - font-weight: 400; - line-height: 1; + width: var(--event-marker-size); + height: var(--event-marker-size); + border-radius: 50%; + background: var(--event-color); transform: translate(-50%, -50%); will-change: left, top; + forced-color-adjust: none; + } + + #event-markers span[data-shape="ring"] { + border: max(0.75px, calc(var(--event-marker-size) * 0.16)) solid + var(--event-color); + background: transparent; } #identity { @@ -186,7 +191,7 @@ flex-wrap: wrap; gap: 5px 12px; color: var(--muted); - font-size: 9px; + font-size: 10px; font-weight: 550; letter-spacing: 0.065em; line-height: 16px; @@ -228,20 +233,25 @@ .event-key-meta { display: block; color: #555; - font-size: 9px; + font-size: 10px; letter-spacing: 0.04em; line-height: 12px; } #event-key b { + display: inline-block; + width: 13px; + height: 13px; margin-right: 3px; - font-family: - "Apple Color Emoji", "Segoe UI Emoji", "Noto Color Emoji", - sans-serif; - font-size: 13px; - font-weight: 400; - letter-spacing: 0; + border-radius: 50%; + background: var(--event-color); vertical-align: -1px; + forced-color-adjust: none; + } + + #event-key b[data-shape="ring"] { + border: 2px solid var(--event-color); + background: transparent; } #status { @@ -359,7 +369,13 @@ data-event="profitTaking" aria-pressed="true" > - 🟢Profit taking + Profit taking Tail — @@ -370,7 +386,13 @@ data-event="capitulation" aria-pressed="true" > - 🔴Capitulation + Capitulation Tail — @@ -381,7 +403,13 @@ data-event="peakRegret" aria-pressed="true" > - 🟣Peak regret + Peak regret Tail — @@ -392,7 +420,13 @@ data-event="sellerExhaustion" aria-pressed="true" > - 🟡Seller exhaustion + Seller exhaustion Tail — @@ -403,7 +437,14 @@ data-event="coinsInLoss" aria-pressed="true" > - ⭕️Coins in loss + Coins in loss Tail — @@ -476,7 +517,6 @@ key: "profitTaking", series: "profitTakingTail", endpoint: "rarity_meter_profit_taking_tail", - emoji: "🟢", color: COLORS.green, position: "aboveBar", priority: 5, @@ -485,7 +525,6 @@ key: "capitulation", series: "capitulationTail", endpoint: "rarity_meter_capitulation_tail", - emoji: "🔴", color: COLORS.red, position: "belowBar", priority: 4, @@ -494,7 +533,6 @@ key: "peakRegret", series: "peakRegretTail", endpoint: "rarity_meter_peak_regret_tail", - emoji: "🟣", color: COLORS.pink, position: "belowBar", priority: 3, @@ -503,7 +541,6 @@ key: "sellerExhaustion", series: "sellerExhaustionTail", endpoint: "rarity_meter_seller_exhaustion_tail", - emoji: "🟡", color: COLORS.yellow, position: "aboveBar", priority: 2, @@ -512,7 +549,7 @@ key: "coinsInLoss", series: "coinsInLossTail", endpoint: "rarity_meter_coins_in_loss_tail", - emoji: "⭕️", + shape: "ring", color: COLORS.red, position: "belowBar", priority: 1, @@ -728,7 +765,7 @@ price: event.position === "aboveBar" ? row.high : row.low, color: event.color, - emoji: event.emoji, + shape: event.shape ?? "filled", stack: stacks[event.position], priority: event.priority, }); @@ -762,7 +799,8 @@ const fragment = document.createDocumentFragment(); this.items = markers.map((marker) => { const element = document.createElement("span"); - element.textContent = marker.emoji; + element.dataset.shape = marker.shape; + element.style.setProperty("--event-color", marker.color); fragment.append(element); return { ...marker, element }; }); @@ -791,11 +829,11 @@ const markerSize = Math.round( Math.max( - 7, + 3, Math.min( - 18, + 10, 18 - - Math.max(0, Math.log2(visibleBars / 250)) * 2.25, + Math.max(0, Math.log2(visibleBars / 250)) * 4, ), ), ) * diff --git a/modules/brk-client/index.js b/modules/brk-client/index.js index f5ac62ec4..49654c537 100644 --- a/modules/brk-client/index.js +++ b/modules/brk-client/index.js @@ -8352,7 +8352,7 @@ function createUnspentPattern(client, acc) { * @extends BrkClientBase */ class BrkClient extends BrkClientBase { - VERSION = "v0.11.1"; + VERSION = "v0.11.2"; INDEXES = /** @type {const} */ ([ "minute10", diff --git a/modules/brk-client/package.json b/modules/brk-client/package.json index b22d5f97c..8d8e3bfd2 100644 --- a/modules/brk-client/package.json +++ b/modules/brk-client/package.json @@ -42,5 +42,5 @@ "url": "git+https://github.com/bitcoinresearchkit/brk.git" }, "type": "module", - "version": "0.11.1" + "version": "0.11.2" } diff --git a/packages/brk_client/brk_client/__init__.py b/packages/brk_client/brk_client/__init__.py index 9cd246c0f..ab652b540 100644 --- a/packages/brk_client/brk_client/__init__.py +++ b/packages/brk_client/brk_client/__init__.py @@ -7265,7 +7265,7 @@ class SeriesTree: class BrkClient(BrkClientBase): """Main BRK client with series tree and API methods.""" - VERSION = "v0.11.1" + VERSION = "v0.11.2" INDEXES = [ "minute10", diff --git a/packages/brk_client/pyproject.toml b/packages/brk_client/pyproject.toml index 617d3d4f3..ed1947bd3 100644 --- a/packages/brk_client/pyproject.toml +++ b/packages/brk_client/pyproject.toml @@ -1,6 +1,6 @@ [project] name = "brk-client" -version = "0.11.1" +version = "0.11.2" description = "Bitcoin on-chain analytics client — thousands of metrics, block explorer, and address index" readme = "README.md" requires-python = ">=3.9"