@gloom-sh/terminal 0.0.0-stage → 0.18.5
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/LICENSE +25 -0
- package/README.md +73 -2
- package/README.zh-CN.md +116 -0
- package/bin/gloom +13 -0
- package/package.json +144 -4
- package/patches/@opentui%2Fcore@0.3.2.patch +624 -0
- package/patches/electrobun@1.18.1.patch +371 -0
- package/patches/react-reconciler@0.33.0.patch +10 -0
- package/src/account/auth-dialog.tsx +88 -0
- package/src/account/auth-form.tsx +276 -0
- package/src/account/auth-model.ts +167 -0
- package/src/account/billing.ts +57 -0
- package/src/account/checkout-handoff.tsx +225 -0
- package/src/account/device-signin-dialog.tsx +210 -0
- package/src/account/device-signin.ts +235 -0
- package/src/account/email-auth-attempt.ts +173 -0
- package/src/account/session.ts +16 -0
- package/src/account/upgrade-dialog.tsx +286 -0
- package/src/account/upgrade-personalization.ts +57 -0
- package/src/account/upgrade-tickers.ts +124 -0
- package/src/account/verification-panel.tsx +63 -0
- package/src/api-client/app-attention.ts +147 -0
- package/src/api-client/askg.ts +710 -0
- package/src/api-client/attention.ts +26 -0
- package/src/api-client/auth.ts +361 -0
- package/src/api-client/awards.ts +215 -0
- package/src/api-client/bank-figures.ts +73 -0
- package/src/api-client/beneficial-owners.ts +96 -0
- package/src/api-client/catalysts.ts +161 -0
- package/src/api-client/central-bank-rates.ts +51 -0
- package/src/api-client/chat-pane-link.ts +47 -0
- package/src/api-client/chat.ts +370 -0
- package/src/api-client/collections.ts +45 -0
- package/src/api-client/commodity-balances.ts +83 -0
- package/src/api-client/company-kpis.ts +174 -0
- package/src/api-client/cot.ts +74 -0
- package/src/api-client/cpi.ts +52 -0
- package/src/api-client/credit-boards.ts +89 -0
- package/src/api-client/credit-documents.ts +107 -0
- package/src/api-client/crypto-etf-flows.ts +37 -0
- package/src/api-client/crypto-markets.ts +205 -0
- package/src/api-client/data.ts +1303 -0
- package/src/api-client/debt-maturities.ts +110 -0
- package/src/api-client/distress.ts +164 -0
- package/src/api-client/doe.ts +109 -0
- package/src/api-client/earnings.ts +98 -0
- package/src/api-client/equity-screener.ts +221 -0
- package/src/api-client/errors.ts +142 -0
- package/src/api-client/estimate-revisions.ts +113 -0
- package/src/api-client/europe-energy.ts +197 -0
- package/src/api-client/exchange-announcements.ts +38 -0
- package/src/api-client/exposure.ts +202 -0
- package/src/api-client/feedback.ts +34 -0
- package/src/api-client/fund-facts.ts +111 -0
- package/src/api-client/futures-curve.ts +186 -0
- package/src/api-client/geo.ts +373 -0
- package/src/api-client/gpu.ts +93 -0
- package/src/api-client/hiring.ts +411 -0
- package/src/api-client/index.ts +1079 -0
- package/src/api-client/insider-signals.ts +159 -0
- package/src/api-client/ipo.ts +99 -0
- package/src/api-client/letters.ts +41 -0
- package/src/api-client/live-scan.ts +91 -0
- package/src/api-client/market-discovery.ts +120 -0
- package/src/api-client/market-movers.ts +67 -0
- package/src/api-client/members.ts +44 -0
- package/src/api-client/mna.ts +124 -0
- package/src/api-client/money-markets.ts +57 -0
- package/src/api-client/normalizers.ts +266 -0
- package/src/api-client/notes.ts +75 -0
- package/src/api-client/organization-tickers.ts +44 -0
- package/src/api-client/paths.ts +648 -0
- package/src/api-client/perps.ts +176 -0
- package/src/api-client/plan-access.ts +27 -0
- package/src/api-client/plan-rules.ts +87 -0
- package/src/api-client/power.ts +148 -0
- package/src/api-client/rates.ts +56 -0
- package/src/api-client/request.ts +681 -0
- package/src/api-client/research-activity.ts +589 -0
- package/src/api-client/revenue-breakdown.ts +36 -0
- package/src/api-client/session-cookie.ts +6 -0
- package/src/api-client/short-side-publications.ts +37 -0
- package/src/api-client/short-volume.ts +55 -0
- package/src/api-client/social-mentions.ts +63 -0
- package/src/api-client/socket.ts +1109 -0
- package/src/api-client/supply-chain-graph.ts +40 -0
- package/src/api-client/supply-chain.ts +106 -0
- package/src/api-client/swap-curve.ts +35 -0
- package/src/api-client/tape.ts +56 -0
- package/src/api-client/teams.ts +216 -0
- package/src/api-client/telemetry.ts +226 -0
- package/src/api-client/themes.ts +55 -0
- package/src/api-client/theses.ts +150 -0
- package/src/api-client/types.ts +2341 -0
- package/src/api-client/upgrade-experiment.ts +91 -0
- package/src/api-client/views.ts +98 -0
- package/src/api-client/wall-experiments.ts +102 -0
- package/src/api-client/wall-summary.ts +51 -0
- package/src/api-client/web-experiments.ts +139 -0
- package/src/api-client/yield-curves.ts +72 -0
- package/src/app/app-bootstrap-state.ts +121 -0
- package/src/app/command-bar-intro.ts +38 -0
- package/src/app/dialog-bridge.tsx +33 -0
- package/src/app/global-shortcuts.ts +334 -0
- package/src/app/keybindings/actions.ts +298 -0
- package/src/app/keybindings/capture-request.ts +36 -0
- package/src/app/keybindings/chord.ts +304 -0
- package/src/app/keybindings/config.ts +83 -0
- package/src/app/keybindings/index.ts +51 -0
- package/src/app/keybindings/labels.ts +104 -0
- package/src/app/keybindings/react.tsx +35 -0
- package/src/app/keybindings/resolve.ts +295 -0
- package/src/app/language-observer.tsx +13 -0
- package/src/app/pane-runtime/index.tsx +320 -0
- package/src/app/pane-runtime/layout-placement.ts +56 -0
- package/src/app/pane-runtime/pane-settings-runtime.tsx +69 -0
- package/src/app/pane-runtime/pane-template-runtime.ts +123 -0
- package/src/app/pane-runtime/plugin-bindings.ts +537 -0
- package/src/app/pane-runtime/ticker-inspector-runtime.ts +190 -0
- package/src/app/pane-runtime/ticker-open-runtime.ts +238 -0
- package/src/app/pane-runtime/ticker-open-target.ts +31 -0
- package/src/app/runtime/broker-import.ts +189 -0
- package/src/app/runtime/desktop-deeplink.ts +641 -0
- package/src/app/runtime/desktop-menu.ts +95 -0
- package/src/app/runtime/layout-warmup.ts +124 -0
- package/src/app/runtime/plugin-bindings.ts +284 -0
- package/src/app/runtime/startup.ts +256 -0
- package/src/app/runtime/ticker-refresh.ts +206 -0
- package/src/app/runtime/update.ts +260 -0
- package/src/app/star-prompt/model.ts +98 -0
- package/src/app/star-prompt/runtime.ts +41 -0
- package/src/app/star-prompt/status-line.tsx +190 -0
- package/src/app.tsx +663 -0
- package/src/architecture/core-builtin-allowlist.json +39 -0
- package/src/architecture/dom-cell-metrics-allowlist.json +102 -0
- package/src/architecture/pane-tabs-allowlist.json +65 -0
- package/src/architecture/silent-catch-allowlist.json +3 -0
- package/src/architecture/ui-literals-allowlist.json +186 -0
- package/src/architecture/ui-tokens-allowlist.json +40 -0
- package/src/ask-gloom/pane-context.ts +130 -0
- package/src/ask-gloom/pane-request.ts +70 -0
- package/src/ask-gloom/pane-text.ts +201 -0
- package/src/assets/gloomberb-logo-windows.ico +0 -0
- package/src/assets/gloomberb-logo-windows.png +0 -0
- package/src/assets/gloomberb-logo.svg +1 -0
- package/src/assets/gloomberb-mark.ico +0 -0
- package/src/assets/gloomberb-mark.svg +1 -0
- package/src/brokers/account-cache.ts +218 -0
- package/src/brokers/broker-portfolio-sync.ts +357 -0
- package/src/brokers/broker-ticker-sync.ts +146 -0
- package/src/brokers/cloud-broker-link.ts +26 -0
- package/src/brokers/directory.ts +76 -0
- package/src/brokers/logos.ts +68 -0
- package/src/brokers/profile-form.ts +113 -0
- package/src/brokers/remote-broker-adapter.ts +115 -0
- package/src/brokers/remove-profile.ts +61 -0
- package/src/brokers/signed-in/adapter.ts +568 -0
- package/src/brokers/signed-in/catalog.ts +130 -0
- package/src/brokers/signed-in/client.ts +81 -0
- package/src/brokers/signed-in/connect.ts +90 -0
- package/src/brokers/signed-in/profile.ts +18 -0
- package/src/brokers/signed-in/sign-in-dialog.tsx +339 -0
- package/src/brokers/signed-in/sign-in.ts +237 -0
- package/src/brokers/sync-broker-instance.ts +479 -0
- package/src/capabilities/chart-series.ts +354 -0
- package/src/capabilities/factories.ts +168 -0
- package/src/capabilities/index.ts +42 -0
- package/src/capabilities/registry.ts +181 -0
- package/src/capabilities/service-capabilities.ts +78 -0
- package/src/capabilities/stream-client.ts +39 -0
- package/src/capabilities/types.ts +161 -0
- package/src/cli/bank-section.ts +147 -0
- package/src/cli/base-converter.ts +86 -0
- package/src/cli/board-coins.ts +70 -0
- package/src/cli/central-bank-events.ts +23 -0
- package/src/cli/command-options.ts +141 -0
- package/src/cli/commands/api.ts +142 -0
- package/src/cli/commands/broker.ts +49 -0
- package/src/cli/commands/command-utils.ts +83 -0
- package/src/cli/commands/crypto-hints.ts +103 -0
- package/src/cli/commands/fred-series.ts +319 -0
- package/src/cli/commands/keybindings.ts +125 -0
- package/src/cli/commands/market.ts +3523 -0
- package/src/cli/commands/news-hints.ts +62 -0
- package/src/cli/commands/news-search.ts +166 -0
- package/src/cli/commands/options-chain.ts +314 -0
- package/src/cli/commands/options-leaps.ts +839 -0
- package/src/cli/commands/overview.ts +916 -0
- package/src/cli/commands/plugins.ts +382 -0
- package/src/cli/commands/remote.ts +219 -0
- package/src/cli/commands/search.ts +633 -0
- package/src/cli/commands/system.ts +699 -0
- package/src/cli/commands/themes.ts +64 -0
- package/src/cli/commands/ticker.ts +1651 -0
- package/src/cli/context.ts +159 -0
- package/src/cli/currency-hints.ts +27 -0
- package/src/cli/desktop-pane-shot-routes.ts +7 -0
- package/src/cli/desktop-pane-shot-view.ts +114 -0
- package/src/cli/desktop-pane-shot.ts +1010 -0
- package/src/cli/earnings-calendar.ts +72 -0
- package/src/cli/entry.ts +97 -0
- package/src/cli/errors.ts +162 -0
- package/src/cli/exit-codes.ts +8 -0
- package/src/cli/export-source.ts +150 -0
- package/src/cli/freshness.ts +84 -0
- package/src/cli/fx-forward.ts +130 -0
- package/src/cli/fx-pair.ts +189 -0
- package/src/cli/glossary.ts +986 -0
- package/src/cli/help.ts +246 -0
- package/src/cli/helpers.ts +169 -0
- package/src/cli/history-export.ts +126 -0
- package/src/cli/history-rows.ts +799 -0
- package/src/cli/index-roots.ts +44 -0
- package/src/cli/index.ts +513 -0
- package/src/cli/issuer-membership.ts +103 -0
- package/src/cli/known-gaps.ts +402 -0
- package/src/cli/listing-arg.ts +1401 -0
- package/src/cli/listing-suggestion.ts +174 -0
- package/src/cli/name-entries.ts +127 -0
- package/src/cli/native-smoke.ts +43 -0
- package/src/cli/not-a-ticker.ts +83 -0
- package/src/cli/opentui-libc.ts +5 -0
- package/src/cli/options.ts +166 -0
- package/src/cli/pane-functions/access-gate.ts +75 -0
- package/src/cli/pane-functions/capabilities.ts +364 -0
- package/src/cli/pane-functions/catalog.ts +761 -0
- package/src/cli/pane-functions/cloud-session.ts +47 -0
- package/src/cli/pane-functions/data.ts +254 -0
- package/src/cli/pane-functions/discovery.ts +234 -0
- package/src/cli/pane-functions/dom.ts +415 -0
- package/src/cli/pane-functions/financial-ratio-shot.ts +160 -0
- package/src/cli/pane-functions/freshness.ts +1205 -0
- package/src/cli/pane-functions/function-help.ts +1447 -0
- package/src/cli/pane-functions/headless.ts +1049 -0
- package/src/cli/pane-functions/index.ts +601 -0
- package/src/cli/pane-functions/lock-note.ts +59 -0
- package/src/cli/pane-functions/market-session.ts +235 -0
- package/src/cli/pane-functions/options.ts +392 -0
- package/src/cli/pane-functions/report-notices.ts +121 -0
- package/src/cli/pane-functions/report.ts +102 -0
- package/src/cli/pane-functions/resolver.ts +417 -0
- package/src/cli/pane-functions/screenshot-assessment.ts +322 -0
- package/src/cli/pane-functions/screenshot-bridge.ts +152 -0
- package/src/cli/pane-functions/screenshot-chart-evidence.ts +396 -0
- package/src/cli/pane-functions/screenshot-data-evidence.ts +383 -0
- package/src/cli/pane-functions/screenshot-evidence.ts +131 -0
- package/src/cli/pane-functions/screenshot-payload.ts +453 -0
- package/src/cli/pane-functions/screenshot-render.ts +316 -0
- package/src/cli/pane-functions/screenshot-types.ts +162 -0
- package/src/cli/pane-functions/shot-options.ts +73 -0
- package/src/cli/perpetual-contract.ts +62 -0
- package/src/cli/peso-dollar-rates.ts +79 -0
- package/src/cli/quote-answer.ts +220 -0
- package/src/cli/registry.ts +178 -0
- package/src/cli/report-tables.ts +692 -0
- package/src/cli/restore-plugins.ts +77 -0
- package/src/cli/result.ts +670 -0
- package/src/cli/row-window.ts +76 -0
- package/src/cli/scoped-context.ts +41 -0
- package/src/cli/scroll-truncation.ts +38 -0
- package/src/cli/series-search.ts +117 -0
- package/src/cli/staged-tickers.ts +57 -0
- package/src/cli/statement-filings.ts +280 -0
- package/src/cli/suffixed-listing-rows.ts +49 -0
- package/src/cli/symbol-args.ts +158 -0
- package/src/cli/symbol-cells.ts +120 -0
- package/src/cli/symbol-list.ts +374 -0
- package/src/cli/symbol-rows.ts +517 -0
- package/src/cli/ticker-resolution.ts +565 -0
- package/src/cli/treasury-yields.ts +86 -0
- package/src/cli/types.ts +42 -0
- package/src/cli/uncovered-instrument.ts +20 -0
- package/src/cli/unknown-command.ts +88 -0
- package/src/cli/visible-key-values.ts +29 -0
- package/src/components/chart/composite/axis-overlays.tsx +452 -0
- package/src/components/chart/composite/bitmap.ts +71 -0
- package/src/components/chart/composite/chart-layout.ts +131 -0
- package/src/components/chart/composite/column-layout.ts +215 -0
- package/src/components/chart/composite/composite-chart.tsx +1244 -0
- package/src/components/chart/composite/downsample.ts +221 -0
- package/src/components/chart/composite/drawing-store.ts +79 -0
- package/src/components/chart/composite/format.ts +574 -0
- package/src/components/chart/composite/index.ts +16 -0
- package/src/components/chart/composite/interactions.ts +379 -0
- package/src/components/chart/composite/legend.tsx +585 -0
- package/src/components/chart/composite/level-labels.ts +30 -0
- package/src/components/chart/composite/levels.ts +172 -0
- package/src/components/chart/composite/panel-bitmap.ts +180 -0
- package/src/components/chart/composite/panel-gestures.ts +100 -0
- package/src/components/chart/composite/panel-labels.ts +147 -0
- package/src/components/chart/composite/panel-series.ts +106 -0
- package/src/components/chart/composite/panel-surface.tsx +1279 -0
- package/src/components/chart/composite/price-axis-labels.tsx +320 -0
- package/src/components/chart/composite/price-series.ts +83 -0
- package/src/components/chart/composite/range-statistics.ts +62 -0
- package/src/components/chart/composite/rasterizer.ts +634 -0
- package/src/components/chart/composite/scene.ts +936 -0
- package/src/components/chart/composite/series-axis-tags.tsx +74 -0
- package/src/components/chart/composite/series-cues.ts +71 -0
- package/src/components/chart/composite/session-shading.ts +100 -0
- package/src/components/chart/composite/text-renderer.ts +400 -0
- package/src/components/chart/composite/time-axis.ts +705 -0
- package/src/components/chart/composite/time-scale.ts +335 -0
- package/src/components/chart/composite/tool-catalog.ts +98 -0
- package/src/components/chart/composite/toolbar.tsx +238 -0
- package/src/components/chart/composite/tools.ts +610 -0
- package/src/components/chart/composite/types.ts +354 -0
- package/src/components/chart/composite/use-composite-chart-keyboard.ts +837 -0
- package/src/components/chart/composite/use-composite-value-scales.ts +44 -0
- package/src/components/chart/composite/use-composite-viewport.ts +180 -0
- package/src/components/chart/composite/value-scale.ts +149 -0
- package/src/components/chart/composite/volume-profile-paint.ts +80 -0
- package/src/components/chart/core/data.ts +9 -0
- package/src/components/chart/core/date-window.ts +179 -0
- package/src/components/chart/core/palette.ts +49 -0
- package/src/components/chart/core/pointer.ts +182 -0
- package/src/components/chart/core/types.ts +22 -0
- package/src/components/chart/core/view-reset.ts +46 -0
- package/src/components/chart/curve/curve-surface.tsx +280 -0
- package/src/components/chart/curve/index.ts +4 -0
- package/src/components/chart/curve/model.ts +354 -0
- package/src/components/chart/native/bitmap-support.ts +55 -0
- package/src/components/chart/native/chart-rasterizer.ts +16 -0
- package/src/components/chart/native/kitty/adapter.ts +9 -0
- package/src/components/chart/native/kitty/manager.ts +145 -0
- package/src/components/chart/native/kitty/protocol.ts +112 -0
- package/src/components/chart/native/kitty/support.ts +104 -0
- package/src/components/chart/native/raster/crosshair.ts +89 -0
- package/src/components/chart/native/raster/placement.ts +138 -0
- package/src/components/chart/native/raster/primitives.ts +209 -0
- package/src/components/chart/native/raster/types.ts +25 -0
- package/src/components/chart/native/renderer-selection.ts +154 -0
- package/src/components/chart/native/surface/manager.ts +290 -0
- package/src/components/chart/native/surface/visibility.ts +85 -0
- package/src/components/chart/native/use-chart-text-fallback.ts +19 -0
- package/src/components/chart/static/chart-surface.tsx +162 -0
- package/src/components/chart/static/index.ts +5 -0
- package/src/components/chart/static/scatter-chart-surface.tsx +184 -0
- package/src/components/chart/static/series.ts +91 -0
- package/src/components/chart/static/trail-chart-model.ts +105 -0
- package/src/components/chart/static/trail-chart-surface.tsx +422 -0
- package/src/components/chart/surface3d/chart.tsx +104 -0
- package/src/components/chart/surface3d/model.ts +426 -0
- package/src/components/chart/surface3d/software.ts +360 -0
- package/src/components/chart-table/axis.ts +49 -0
- package/src/components/chart-table/header.tsx +264 -0
- package/src/components/chart-table/index.ts +13 -0
- package/src/components/chart-table/layout.ts +154 -0
- package/src/components/chart-table/read.tsx +74 -0
- package/src/components/chart-table/selection.ts +145 -0
- package/src/components/command-bar/action-runtime.ts +268 -0
- package/src/components/command-bar/assist/inventory.ts +145 -0
- package/src/components/command-bar/assist/model.ts +279 -0
- package/src/components/command-bar/assist/runtime.ts +246 -0
- package/src/components/command-bar/commands/collection-list.ts +262 -0
- package/src/components/command-bar/commands/collection.ts +285 -0
- package/src/components/command-bar/commands/direct/index.ts +445 -0
- package/src/components/command-bar/commands/direct/runtime.ts +181 -0
- package/src/components/command-bar/commands/plugin/actions.ts +143 -0
- package/src/components/command-bar/commands/plugin/items.ts +178 -0
- package/src/components/command-bar/commands/registry.ts +362 -0
- package/src/components/command-bar/helpers.ts +86 -0
- package/src/components/command-bar/keyboard-handlers.ts +129 -0
- package/src/components/command-bar/keyboard-shortcuts.ts +165 -0
- package/src/components/command-bar/layout-items/current-layout.ts +210 -0
- package/src/components/command-bar/layout-items/focused-pane.ts +193 -0
- package/src/components/command-bar/layout-items/types.ts +26 -0
- package/src/components/command-bar/layout-items/window-mode.ts +72 -0
- package/src/components/command-bar/layout-items.ts +93 -0
- package/src/components/command-bar/list/badge.ts +63 -0
- package/src/components/command-bar/list/model.ts +213 -0
- package/src/components/command-bar/list/navigation.ts +121 -0
- package/src/components/command-bar/list/view.tsx +362 -0
- package/src/components/command-bar/pane-actions.ts +128 -0
- package/src/components/command-bar/pane-settings.ts +44 -0
- package/src/components/command-bar/pane-templates/items.ts +288 -0
- package/src/components/command-bar/pane-templates/workflow-route.ts +91 -0
- package/src/components/command-bar/pane-templates/workflow.ts +344 -0
- package/src/components/command-bar/panel/index.tsx +260 -0
- package/src/components/command-bar/panel/layout.ts +150 -0
- package/src/components/command-bar/panel/native-surface.ts +26 -0
- package/src/components/command-bar/panel/palette.ts +28 -0
- package/src/components/command-bar/panel/prompt-binding.ts +54 -0
- package/src/components/command-bar/panel/prompt-example.ts +22 -0
- package/src/components/command-bar/panel/runtime.ts +230 -0
- package/src/components/command-bar/panel/state.ts +161 -0
- package/src/components/command-bar/panel/types.ts +50 -0
- package/src/components/command-bar/picker-activation.ts +87 -0
- package/src/components/command-bar/routes/root/command-items.ts +253 -0
- package/src/components/command-bar/routes/root/help-items.ts +66 -0
- package/src/components/command-bar/routes/root/pick-prefetch.ts +38 -0
- package/src/components/command-bar/routes/root/plugin-install.ts +304 -0
- package/src/components/command-bar/routes/root/plugin-turn-on.ts +92 -0
- package/src/components/command-bar/routes/root/provider-search.ts +271 -0
- package/src/components/command-bar/routes/root/results.ts +439 -0
- package/src/components/command-bar/routes/root/runtime.ts +396 -0
- package/src/components/command-bar/routes/root/search-providers.ts +311 -0
- package/src/components/command-bar/routes/root/search-report.ts +247 -0
- package/src/components/command-bar/routes/root/selection.ts +250 -0
- package/src/components/command-bar/routes/root/shortcut-feedback.ts +116 -0
- package/src/components/command-bar/routes/root/shortcut-items.ts +161 -0
- package/src/components/command-bar/routes/root/shortcuts.ts +221 -0
- package/src/components/command-bar/routes/root/start-here.ts +90 -0
- package/src/components/command-bar/routes/ticker-search/actions.ts +248 -0
- package/src/components/command-bar/routes/ticker-search/results.ts +328 -0
- package/src/components/command-bar/routes/ticker-search/route.ts +151 -0
- package/src/components/command-bar/routing/actions.ts +194 -0
- package/src/components/command-bar/routing/confirm.ts +23 -0
- package/src/components/command-bar/routing/effects.ts +63 -0
- package/src/components/command-bar/routing/launch-request.ts +41 -0
- package/src/components/command-bar/routing/list-state.ts +196 -0
- package/src/components/command-bar/routing/navigation-state.ts +197 -0
- package/src/components/command-bar/selection-runtime.ts +411 -0
- package/src/components/command-bar/surface/environment.ts +136 -0
- package/src/components/command-bar/surface/index.tsx +633 -0
- package/src/components/command-bar/theme-picker.tsx +336 -0
- package/src/components/command-bar/theme-preview.ts +84 -0
- package/src/components/command-bar/view-model.ts +237 -0
- package/src/components/command-bar/workflow/alert.ts +170 -0
- package/src/components/command-bar/workflow/broker.ts +186 -0
- package/src/components/command-bar/workflow/builtin.ts +174 -0
- package/src/components/command-bar/workflow/collection-actions.ts +398 -0
- package/src/components/command-bar/workflow/collection-ticker.ts +93 -0
- package/src/components/command-bar/workflow/coordinator.ts +72 -0
- package/src/components/command-bar/workflow/fields.ts +252 -0
- package/src/components/command-bar/workflow/ops.ts +459 -0
- package/src/components/command-bar/workflow/pane-reuse.ts +178 -0
- package/src/components/command-bar/workflow/portfolio-position.ts +211 -0
- package/src/components/command-bar/workflow/route-builder.ts +56 -0
- package/src/components/command-bar/workflow/submit.ts +220 -0
- package/src/components/command-bar/workflow/ticker-listing-picker.ts +38 -0
- package/src/components/command-bar/workflow/tickers.ts +288 -0
- package/src/components/command-bar/workflow/types.ts +106 -0
- package/src/components/company-logo.tsx +112 -0
- package/src/components/data-table/export.ts +76 -0
- package/src/components/data-table/sections.ts +57 -0
- package/src/components/data-table/sort-menu.tsx +75 -0
- package/src/components/data-table/stack-view.tsx +114 -0
- package/src/components/data-table/table-pane.ts +46 -0
- package/src/components/data-table/view.tsx +767 -0
- package/src/components/feed-data-table/stack-view.tsx +304 -0
- package/src/components/feed-stack-controller.ts +39 -0
- package/src/components/feedback-dialog.tsx +341 -0
- package/src/components/form-modal/broker-step.tsx +63 -0
- package/src/components/form-modal/confirm.tsx +147 -0
- package/src/components/form-modal/content.tsx +703 -0
- package/src/components/form-modal/deps.ts +77 -0
- package/src/components/form-modal/field-row.tsx +316 -0
- package/src/components/form-modal/host.tsx +169 -0
- package/src/components/form-modal/index.ts +2 -0
- package/src/components/form-modal/model.ts +134 -0
- package/src/components/form-modal/request.ts +74 -0
- package/src/components/form-modal/routes.ts +157 -0
- package/src/components/index.ts +162 -0
- package/src/components/input-search-bar.tsx +171 -0
- package/src/components/layout/detached-pane-shell.tsx +487 -0
- package/src/components/layout/floating-pane.tsx +196 -0
- package/src/components/layout/header.tsx +967 -0
- package/src/components/layout/market-summary.ts +154 -0
- package/src/components/layout/missing-pane.tsx +172 -0
- package/src/components/layout/pane/capture-stamp.ts +41 -0
- package/src/components/layout/pane/capture-status.ts +12 -0
- package/src/components/layout/pane/content.tsx +113 -0
- package/src/components/layout/pane/cycle-order.ts +23 -0
- package/src/components/layout/pane/error-boundary.tsx +103 -0
- package/src/components/layout/pane/footer/index.tsx +406 -0
- package/src/components/layout/pane/footer/keyboard.ts +99 -0
- package/src/components/layout/pane/footer/model.ts +456 -0
- package/src/components/layout/pane/footer/registration.tsx +278 -0
- package/src/components/layout/pane/frame.tsx +56 -0
- package/src/components/layout/pane/header-tabs.tsx +135 -0
- package/src/components/layout/pane/header.tsx +471 -0
- package/src/components/layout/pane/index.tsx +148 -0
- package/src/components/layout/pane/instrument-coverage-gate.tsx +57 -0
- package/src/components/layout/pane/pane-tabs.tsx +50 -0
- package/src/components/layout/pane/sidebar-metrics.ts +65 -0
- package/src/components/layout/pane/sidebar.tsx +448 -0
- package/src/components/layout/pane/sizing.ts +100 -0
- package/src/components/layout/pane/status-footer.ts +92 -0
- package/src/components/layout/pane/surface.ts +26 -0
- package/src/components/layout/pane/ticker-fate-gate.tsx +62 -0
- package/src/components/layout/pane/title.ts +111 -0
- package/src/components/layout/presentation.ts +22 -0
- package/src/components/layout/shell/action-menu-overlay.tsx +149 -0
- package/src/components/layout/shell/active-drag.ts +266 -0
- package/src/components/layout/shell/chrome.ts +127 -0
- package/src/components/layout/shell/cursor-occlusion.ts +206 -0
- package/src/components/layout/shell/drag/index.ts +456 -0
- package/src/components/layout/shell/drag/live.ts +203 -0
- package/src/components/layout/shell/drag/overlays.tsx +222 -0
- package/src/components/layout/shell/drag/runtime.ts +347 -0
- package/src/components/layout/shell/drag/slide.ts +10 -0
- package/src/components/layout/shell/fullscreen.ts +10 -0
- package/src/components/layout/shell/index.tsx +970 -0
- package/src/components/layout/shell/layout-state.ts +86 -0
- package/src/components/layout/shell/menu.ts +303 -0
- package/src/components/layout/shell/native/pointer-runtime.ts +209 -0
- package/src/components/layout/shell/native/surfaces.ts +143 -0
- package/src/components/layout/shell/native/window-state.ts +208 -0
- package/src/components/layout/shell/pane/actions.ts +223 -0
- package/src/components/layout/shell/pane/ask.ts +136 -0
- package/src/components/layout/shell/pane/capture.ts +177 -0
- package/src/components/layout/shell/pane/layers.tsx +777 -0
- package/src/components/layout/shell/pane/management-shortcuts.ts +239 -0
- package/src/components/layout/shell/pane/new-layout.ts +116 -0
- package/src/components/layout/shell/pane-occlusion.ts +63 -0
- package/src/components/layout/shell/shortcuts.ts +124 -0
- package/src/components/layout/shell/terminal-pointer-runtime.ts +380 -0
- package/src/components/layout/shell/ticker-link-menu.ts +115 -0
- package/src/components/layout/shell/visible-layout.ts +60 -0
- package/src/components/layout/shell/window-mode/index.ts +271 -0
- package/src/components/layout/shell/window-mode/overlays.tsx +225 -0
- package/src/components/layout/status-bar-groups.ts +85 -0
- package/src/components/layout/status-bar.tsx +755 -0
- package/src/components/layout/status-widget-space.ts +72 -0
- package/src/components/layout/titlebar-overlay.ts +17 -0
- package/src/components/layout/transient-layout.tsx +60 -0
- package/src/components/layout/window-controls.tsx +104 -0
- package/src/components/layout/window-edit/mode.ts +509 -0
- package/src/components/layout/window-edit/presentation.ts +138 -0
- package/src/components/layout/window-edit/status.tsx +121 -0
- package/src/components/layout/window-fullscreen.ts +32 -0
- package/src/components/markdown-editor.tsx +150 -0
- package/src/components/markdown-text.tsx +645 -0
- package/src/components/market-board/index.tsx +224 -0
- package/src/components/metric-treemap/heat-surface.tsx +828 -0
- package/src/components/metric-treemap/heat-tiles.ts +261 -0
- package/src/components/metric-treemap/index.tsx +352 -0
- package/src/components/metric-treemap/layout.ts +484 -0
- package/src/components/metric-treemap/scene.ts +432 -0
- package/src/components/onboarding/account-step/form-panel.tsx +196 -0
- package/src/components/onboarding/account-step/index.tsx +51 -0
- package/src/components/onboarding/account-step/qr-panel.tsx +47 -0
- package/src/components/onboarding/account-step/signed-in-panel.tsx +28 -0
- package/src/components/onboarding/desks-step.tsx +43 -0
- package/src/components/onboarding/first-run-workspace.ts +223 -0
- package/src/components/onboarding/onboarding-frame.tsx +597 -0
- package/src/components/onboarding/onboarding-keyboard.ts +311 -0
- package/src/components/onboarding/onboarding-steps.tsx +2 -0
- package/src/components/onboarding/onboarding-wizard.tsx +742 -0
- package/src/components/onboarding/portfolio-step/broker-fields-panel.tsx +177 -0
- package/src/components/onboarding/portfolio-step/broker-setup-panel.tsx +121 -0
- package/src/components/onboarding/portfolio-step/broker-sync-panel.tsx +40 -0
- package/src/components/onboarding/portfolio-step/choose-panel.tsx +39 -0
- package/src/components/onboarding/portfolio-step/index.tsx +74 -0
- package/src/components/onboarding/portfolio-step/positions-panel.tsx +374 -0
- package/src/components/onboarding/portfolio-step/types.ts +34 -0
- package/src/components/onboarding/portfolio-step/utils.ts +15 -0
- package/src/components/onboarding/pro-step-layout.ts +86 -0
- package/src/components/onboarding/use-onboarding-broker-form.ts +266 -0
- package/src/components/onboarding/use-onboarding-progress.ts +298 -0
- package/src/components/onboarding/use-onboarding-upgrade.ts +87 -0
- package/src/components/onboarding/wizard-account.ts +182 -0
- package/src/components/onboarding/wizard-broker-sync.ts +282 -0
- package/src/components/onboarding/wizard-model.ts +161 -0
- package/src/components/onboarding/wizard-positions.ts +434 -0
- package/src/components/paged-rows.ts +217 -0
- package/src/components/pane-settings-dialog/desktop.tsx +261 -0
- package/src/components/pane-settings-dialog/field-dialogs.tsx +214 -0
- package/src/components/pane-settings-dialog/tui.tsx +121 -0
- package/src/components/pane-settings-dialog/value.ts +68 -0
- package/src/components/pane-settings-dialog.tsx +248 -0
- package/src/components/pane-template-wizard.tsx +60 -0
- package/src/components/price-performance.tsx +85 -0
- package/src/components/price-selector-dialog.tsx +215 -0
- package/src/components/price-sparkline/bitmap.ts +150 -0
- package/src/components/price-sparkline/index.ts +73 -0
- package/src/components/price-sparkline/model.ts +150 -0
- package/src/components/price-sparkline/view.tsx +226 -0
- package/src/components/quote-flash.ts +168 -0
- package/src/components/reader/article-reader.tsx +468 -0
- package/src/components/reader/article-text.ts +527 -0
- package/src/components/reader/detail-reader.tsx +239 -0
- package/src/components/reader/reader-text.tsx +281 -0
- package/src/components/sign-in-code-panel.tsx +203 -0
- package/src/components/sign-in-gate.tsx +169 -0
- package/src/components/speedometer-gauge/desktop.tsx +142 -0
- package/src/components/speedometer-gauge/index.tsx +42 -0
- package/src/components/speedometer-gauge/model.ts +57 -0
- package/src/components/speedometer-gauge/terminal.tsx +283 -0
- package/src/components/table-view-shared.tsx +243 -0
- package/src/components/textarea-keys.ts +13 -0
- package/src/components/ticker/badge/format.ts +121 -0
- package/src/components/ticker/badge/index.tsx +144 -0
- package/src/components/ticker/badge/list.tsx +146 -0
- package/src/components/ticker/badge/text.tsx +157 -0
- package/src/components/ticker/list-table-view.tsx +418 -0
- package/src/components/toggle-list.tsx +194 -0
- package/src/components/ui/action-row.tsx +36 -0
- package/src/components/ui/action-scope.tsx +96 -0
- package/src/components/ui/audio-player.tsx +70 -0
- package/src/components/ui/button.tsx +189 -0
- package/src/components/ui/card.tsx +75 -0
- package/src/components/ui/checkbox.tsx +80 -0
- package/src/components/ui/choice-dialog.tsx +120 -0
- package/src/components/ui/column-grid.tsx +250 -0
- package/src/components/ui/confirm-dialog.tsx +175 -0
- package/src/components/ui/country-flag-art.tsx +629 -0
- package/src/components/ui/country-flag.tsx +147 -0
- package/src/components/ui/data-table/hooks.ts +46 -0
- package/src/components/ui/data-table/index.tsx +179 -0
- package/src/components/ui/data-table/opentui/index.tsx +794 -0
- package/src/components/ui/data-table/opentui/model.ts +256 -0
- package/src/components/ui/data-table/stable-columns.ts +34 -0
- package/src/components/ui/data-table/types.ts +189 -0
- package/src/components/ui/data-table/visible-range.ts +47 -0
- package/src/components/ui/detail-scroll-body.tsx +75 -0
- package/src/components/ui/dialog-actions.tsx +44 -0
- package/src/components/ui/disclosure-marker.tsx +38 -0
- package/src/components/ui/display.tsx +260 -0
- package/src/components/ui/external-link.tsx +181 -0
- package/src/components/ui/field-grid.tsx +473 -0
- package/src/components/ui/field-ring.ts +125 -0
- package/src/components/ui/fields.tsx +425 -0
- package/src/components/ui/figure.tsx +96 -0
- package/src/components/ui/fill.ts +8 -0
- package/src/components/ui/frame.tsx +149 -0
- package/src/components/ui/header-case.ts +30 -0
- package/src/components/ui/icon.tsx +199 -0
- package/src/components/ui/index.ts +84 -0
- package/src/components/ui/inline-quick-add.tsx +144 -0
- package/src/components/ui/list-row-lines.tsx +87 -0
- package/src/components/ui/list-view.tsx +399 -0
- package/src/components/ui/loading.tsx +17 -0
- package/src/components/ui/logo-mark.tsx +73 -0
- package/src/components/ui/menu.tsx +152 -0
- package/src/components/ui/message-composer.tsx +172 -0
- package/src/components/ui/multi-select/dialog.tsx +643 -0
- package/src/components/ui/multi-select/index.ts +190 -0
- package/src/components/ui/number-prompt-dialog.tsx +71 -0
- package/src/components/ui/number-step.ts +54 -0
- package/src/components/ui/page-stack-view.tsx +137 -0
- package/src/components/ui/popover.tsx +10 -0
- package/src/components/ui/prose.tsx +280 -0
- package/src/components/ui/query-bar-keys.tsx +194 -0
- package/src/components/ui/query-bar.tsx +553 -0
- package/src/components/ui/quote.ts +42 -0
- package/src/components/ui/range-track.tsx +66 -0
- package/src/components/ui/ratio-bar.tsx +84 -0
- package/src/components/ui/remote-image.tsx +37 -0
- package/src/components/ui/reveal-in-scroll-box.ts +52 -0
- package/src/components/ui/row-notes.ts +79 -0
- package/src/components/ui/row-value-cache.ts +41 -0
- package/src/components/ui/select-button.tsx +215 -0
- package/src/components/ui/select-field.tsx +54 -0
- package/src/components/ui/shortcut-hint.tsx +69 -0
- package/src/components/ui/split-bar.tsx +69 -0
- package/src/components/ui/stat-grid.tsx +198 -0
- package/src/components/ui/status.tsx +347 -0
- package/src/components/ui/table-layout.ts +256 -0
- package/src/components/ui/tabs.tsx +587 -0
- package/src/components/ui/text-prompt-dialog.tsx +135 -0
- package/src/components/ui/toggle.tsx +136 -0
- package/src/components/ui/windowed-list.tsx +27 -0
- package/src/components/use-double-click-activation.ts +40 -0
- package/src/components/use-external-link-footer.ts +82 -0
- package/src/components/use-pane-notice-footer.tsx +128 -0
- package/src/components/use-pinned-moment.ts +19 -0
- package/src/components/use-scrollbox-layout.ts +17 -0
- package/src/core/app-runtime.ts +134 -0
- package/src/core/app-service-ports.ts +54 -0
- package/src/core/app-services.ts +48 -0
- package/src/core/connection-health.ts +293 -0
- package/src/core/state/app/instrument.ts +99 -0
- package/src/core/state/app/layout-reducer.ts +405 -0
- package/src/core/state/app/layout.ts +613 -0
- package/src/core/state/app/state.ts +401 -0
- package/src/core/state/app/types.ts +201 -0
- package/src/core/state/session-persistence.ts +150 -0
- package/src/data/app-persistence.ts +25 -0
- package/src/data/cached-query.ts +120 -0
- package/src/data/config/chart-settings.ts +709 -0
- package/src/data/config/home.ts +123 -0
- package/src/data/config/layout.ts +317 -0
- package/src/data/config/store/fold-panes.ts +340 -0
- package/src/data/config/store/index.ts +63 -0
- package/src/data/config/store/migrations.ts +294 -0
- package/src/data/config/store/node.ts +178 -0
- package/src/data/config/store/normalize.ts +517 -0
- package/src/data/config/store/pane-state.ts +47 -0
- package/src/data/config/store/portfolio-as-of-column.ts +57 -0
- package/src/data/json-persistence.ts +85 -0
- package/src/data/json-storage.ts +57 -0
- package/src/data/json-ticker-repository.ts +58 -0
- package/src/data/memory-resource-store.ts +152 -0
- package/src/data/plugin-cache.ts +119 -0
- package/src/data/plugin-state-store.ts +150 -0
- package/src/data/resource-store.ts +434 -0
- package/src/data/response-sequence.ts +6 -0
- package/src/data/saved-copies.ts +123 -0
- package/src/data/session-store.ts +59 -0
- package/src/data/sqlite/database.ts +80 -0
- package/src/data/sqlite/json.ts +18 -0
- package/src/data/sqlite/retry.ts +90 -0
- package/src/data/ticker-repository.ts +53 -0
- package/src/data/ticker-store.ts +65 -0
- package/src/docs/content.ts +215 -0
- package/src/docs/load.ts +139 -0
- package/src/docs/requests.ts +39 -0
- package/src/docs/snapshot.chunk.ts +8 -0
- package/src/docs/snapshot.json +8172 -0
- package/src/docs/topics.ts +216 -0
- package/src/feedback/diagnostics.ts +152 -0
- package/src/feedback/redact.ts +54 -0
- package/src/feedback/screenshot.ts +45 -0
- package/src/feedback/types.ts +60 -0
- package/src/i18n/es.ts +1674 -0
- package/src/i18n/index.ts +159 -0
- package/src/i18n/ja.ts +1670 -0
- package/src/i18n/ko.ts +1668 -0
- package/src/i18n/languages.ts +101 -0
- package/src/i18n/react.ts +6 -0
- package/src/i18n/zh-cn.ts +1670 -0
- package/src/i18n/zh-tw.ts +1670 -0
- package/src/layout/desk-keys.ts +7 -0
- package/src/layout/desks.ts +334 -0
- package/src/layout/launch-layout.ts +147 -0
- package/src/layout/pane-follow.ts +47 -0
- package/src/layout/pane-layout-move.ts +264 -0
- package/src/layout/pane-manager/dock-tree.ts +302 -0
- package/src/layout/pane-manager/docking.ts +209 -0
- package/src/layout/pane-manager/floating-actions.ts +160 -0
- package/src/layout/pane-manager/floating.ts +124 -0
- package/src/layout/pane-manager/gridlock-inference.ts +126 -0
- package/src/layout/pane-manager/gridlock.ts +143 -0
- package/src/layout/pane-manager/hidden-panes.ts +160 -0
- package/src/layout/pane-manager/index.ts +71 -0
- package/src/layout/pane-manager/layout-state.ts +203 -0
- package/src/layout/pane-manager/queries.ts +82 -0
- package/src/layout/pane-manager/types.ts +24 -0
- package/src/layout/pane-state.ts +48 -0
- package/src/layout/selected-ticker.ts +74 -0
- package/src/layout/ticker-navigation.ts +128 -0
- package/src/layout-marketplace/api.ts +65 -0
- package/src/layout-marketplace/cloud.ts +183 -0
- package/src/layout-marketplace/gallery-desktop.tsx +476 -0
- package/src/layout-marketplace/gallery-terminal.tsx +371 -0
- package/src/layout-marketplace/gallery.tsx +776 -0
- package/src/layout-marketplace/geometry.ts +80 -0
- package/src/layout-marketplace/linked-sync.ts +109 -0
- package/src/layout-marketplace/linked.ts +140 -0
- package/src/layout-marketplace/mini-workspace.tsx +428 -0
- package/src/layout-marketplace/model.ts +270 -0
- package/src/layout-marketplace/pane-imagery.ts +87 -0
- package/src/layout-marketplace/pane.tsx +20 -0
- package/src/layout-marketplace/use-marketplace.ts +130 -0
- package/src/market-data/bars-per-year.ts +43 -0
- package/src/market-data/bond-funds.ts +85 -0
- package/src/market-data/commodity-names.ts +80 -0
- package/src/market-data/coordinator/auxiliary.ts +275 -0
- package/src/market-data/coordinator/chart.ts +164 -0
- package/src/market-data/coordinator/entries.ts +180 -0
- package/src/market-data/coordinator/events.ts +103 -0
- package/src/market-data/coordinator/financials.ts +260 -0
- package/src/market-data/coordinator/fx-legs.ts +71 -0
- package/src/market-data/coordinator/index.ts +854 -0
- package/src/market-data/coordinator/quotes.ts +485 -0
- package/src/market-data/depositary-pair.ts +251 -0
- package/src/market-data/frame-scheduler.ts +335 -0
- package/src/market-data/futures-board.ts +255 -0
- package/src/market-data/futures-contract.ts +486 -0
- package/src/market-data/fx-closes.ts +164 -0
- package/src/market-data/history-session.ts +97 -0
- package/src/market-data/hooks.tsx +630 -0
- package/src/market-data/market/bar-period.ts +107 -0
- package/src/market-data/market/change-basis.ts +289 -0
- package/src/market-data/market/dated-previous-close.ts +203 -0
- package/src/market-data/market/format.ts +688 -0
- package/src/market-data/market/freshness.ts +793 -0
- package/src/market-data/market/futures-week.ts +68 -0
- package/src/market-data/market/index-level.ts +51 -0
- package/src/market-data/market/period-return.ts +163 -0
- package/src/market-data/market/price-basis.ts +9 -0
- package/src/market-data/market/session-close-note.ts +58 -0
- package/src/market-data/market/status.ts +588 -0
- package/src/market-data/market/trading-sessions.ts +149 -0
- package/src/market-data/market/year-to-date.ts +41 -0
- package/src/market-data/model-dividend-yield.ts +117 -0
- package/src/market-data/options-alternatives.ts +129 -0
- package/src/market-data/performance.ts +125 -0
- package/src/market-data/perpetual-premium.ts +32 -0
- package/src/market-data/portfolio-financials.ts +37 -0
- package/src/market-data/published-apac-sessions.ts +99 -0
- package/src/market-data/published-cn-sessions.ts +25 -0
- package/src/market-data/published-futures-sessions.ts +69 -0
- package/src/market-data/published-jpx-sessions.ts +22 -0
- package/src/market-data/published-nse-sessions.ts +20 -0
- package/src/market-data/published-us-sessions.ts +87 -0
- package/src/market-data/query-store.ts +95 -0
- package/src/market-data/quote-subscription-target.ts +79 -0
- package/src/market-data/quotes/clock.ts +56 -0
- package/src/market-data/quotes/contributions.ts +336 -0
- package/src/market-data/quotes/day-range.ts +106 -0
- package/src/market-data/quotes/delisting.ts +34 -0
- package/src/market-data/quotes/freshness.ts +174 -0
- package/src/market-data/quotes/intraday-bar.ts +37 -0
- package/src/market-data/quotes/live-valuation.ts +235 -0
- package/src/market-data/quotes/metadata.ts +66 -0
- package/src/market-data/quotes/regular-session-valuation.ts +198 -0
- package/src/market-data/quotes/resolution.ts +653 -0
- package/src/market-data/quotes/screener-live-quotes.ts +283 -0
- package/src/market-data/quotes/time.ts +83 -0
- package/src/market-data/realized-volatility.ts +301 -0
- package/src/market-data/request-types.ts +127 -0
- package/src/market-data/result-types.ts +53 -0
- package/src/market-data/selectors.ts +131 -0
- package/src/market-data/snapshot-provider.ts +299 -0
- package/src/market-data/tax-equivalent.ts +352 -0
- package/src/market-data/ticker-price-returns.ts +20 -0
- package/src/market-data/trace.ts +7 -0
- package/src/news/aggregator.ts +585 -0
- package/src/news/hooks.ts +66 -0
- package/src/news/news-model.ts +246 -0
- package/src/news/source-label.ts +22 -0
- package/src/news/ticker-symbols.ts +21 -0
- package/src/news/types.ts +99 -0
- package/src/notifications/app-badge.ts +30 -0
- package/src/notifications/app-notifier.ts +287 -0
- package/src/notifications/notification-log.ts +186 -0
- package/src/pane-settings.ts +89 -0
- package/src/plugins/absorbed.ts +33 -0
- package/src/plugins/auto-update-node.ts +115 -0
- package/src/plugins/auto-update.ts +281 -0
- package/src/plugins/builtin/account-management/calendar-tab.tsx +196 -0
- package/src/plugins/builtin/account-management/footer.ts +37 -0
- package/src/plugins/builtin/account-management/form-components.tsx +199 -0
- package/src/plugins/builtin/account-management/index.tsx +28 -0
- package/src/plugins/builtin/account-management/keyboard.ts +102 -0
- package/src/plugins/builtin/account-management/model.ts +358 -0
- package/src/plugins/builtin/account-management/navigation.ts +9 -0
- package/src/plugins/builtin/account-management/pane.tsx +1100 -0
- package/src/plugins/builtin/account-management/password-dialog.tsx +127 -0
- package/src/plugins/builtin/account-management/trial-cancel.ts +40 -0
- package/src/plugins/builtin/alerts/alert-engine.ts +119 -0
- package/src/plugins/builtin/alerts/calendar-events.ts +429 -0
- package/src/plugins/builtin/alerts/catalysts.ts +77 -0
- package/src/plugins/builtin/alerts/cli.ts +875 -0
- package/src/plugins/builtin/alerts/command.ts +88 -0
- package/src/plugins/builtin/alerts/constants.ts +12 -0
- package/src/plugins/builtin/alerts/event-rows.ts +20 -0
- package/src/plugins/builtin/alerts/events-pane.tsx +240 -0
- package/src/plugins/builtin/alerts/events.ts +260 -0
- package/src/plugins/builtin/alerts/fired-log.ts +119 -0
- package/src/plugins/builtin/alerts/focus.ts +27 -0
- package/src/plugins/builtin/alerts/format.ts +76 -0
- package/src/plugins/builtin/alerts/headless.ts +248 -0
- package/src/plugins/builtin/alerts/history-pane.tsx +161 -0
- package/src/plugins/builtin/alerts/history-rows.ts +92 -0
- package/src/plugins/builtin/alerts/history.ts +91 -0
- package/src/plugins/builtin/alerts/index.tsx +457 -0
- package/src/plugins/builtin/alerts/iv-level.ts +365 -0
- package/src/plugins/builtin/alerts/levels.ts +60 -0
- package/src/plugins/builtin/alerts/live.ts +136 -0
- package/src/plugins/builtin/alerts/metric-command.ts +61 -0
- package/src/plugins/builtin/alerts/metric-data.ts +70 -0
- package/src/plugins/builtin/alerts/metric-model.ts +175 -0
- package/src/plugins/builtin/alerts/metric-parity-fixture.json +725 -0
- package/src/plugins/builtin/alerts/pane.tsx +446 -0
- package/src/plugins/builtin/alerts/price.ts +35 -0
- package/src/plugins/builtin/alerts/quotes.ts +92 -0
- package/src/plugins/builtin/alerts/research-builder.ts +160 -0
- package/src/plugins/builtin/alerts/research-rules.ts +316 -0
- package/src/plugins/builtin/alerts/scheduled-check.ts +296 -0
- package/src/plugins/builtin/alerts/scheduled-sources.ts +48 -0
- package/src/plugins/builtin/alerts/scheduled.ts +413 -0
- package/src/plugins/builtin/alerts/storage.ts +62 -0
- package/src/plugins/builtin/alerts/targets.ts +101 -0
- package/src/plugins/builtin/alerts/types.ts +27 -0
- package/src/plugins/builtin/analytics/account-returns.ts +109 -0
- package/src/plugins/builtin/analytics/broker-performance.ts +131 -0
- package/src/plugins/builtin/analytics/display.ts +15 -0
- package/src/plugins/builtin/analytics/index.tsx +501 -0
- package/src/plugins/builtin/analytics/metrics.ts +218 -0
- package/src/plugins/builtin/analytics/pane-model.ts +487 -0
- package/src/plugins/builtin/analytics/portfolio-selection.ts +29 -0
- package/src/plugins/builtin/analytics/risk-book.ts +215 -0
- package/src/plugins/builtin/analytics/risk-client.ts +700 -0
- package/src/plugins/builtin/analytics/risk-evidence.ts +485 -0
- package/src/plugins/builtin/analytics/risk-fx.ts +163 -0
- package/src/plugins/builtin/analytics/risk-headless.ts +386 -0
- package/src/plugins/builtin/analytics/risk-math.ts +489 -0
- package/src/plugins/builtin/analytics/risk-model.ts +1242 -0
- package/src/plugins/builtin/analytics/risk-options.ts +265 -0
- package/src/plugins/builtin/analytics/risk-pane.tsx +833 -0
- package/src/plugins/builtin/analytics/risk-test-data.ts +262 -0
- package/src/plugins/builtin/analytics/sector-model.ts +187 -0
- package/src/plugins/builtin/analytics/sharpe-cadence.ts +136 -0
- package/src/plugins/builtin/analytics/view.tsx +186 -0
- package/src/plugins/builtin/attention/client.ts +80 -0
- package/src/plugins/builtin/attention/evidence.ts +30 -0
- package/src/plugins/builtin/attention/headless.ts +44 -0
- package/src/plugins/builtin/attention/index.tsx +20 -0
- package/src/plugins/builtin/attention/model.ts +81 -0
- package/src/plugins/builtin/attention/pane.tsx +219 -0
- package/src/plugins/builtin/attention/series.ts +26 -0
- package/src/plugins/builtin/attention/trending.tsx +61 -0
- package/src/plugins/builtin/awards/alerts.ts +32 -0
- package/src/plugins/builtin/awards/client.ts +82 -0
- package/src/plugins/builtin/awards/detail.tsx +107 -0
- package/src/plugins/builtin/awards/evidence.ts +36 -0
- package/src/plugins/builtin/awards/headless.ts +135 -0
- package/src/plugins/builtin/awards/index.tsx +22 -0
- package/src/plugins/builtin/awards/model.ts +100 -0
- package/src/plugins/builtin/awards/pane.tsx +286 -0
- package/src/plugins/builtin/awards/series.ts +29 -0
- package/src/plugins/builtin/backtest/client.ts +92 -0
- package/src/plugins/builtin/backtest/engine.ts +185 -0
- package/src/plugins/builtin/backtest/export.ts +27 -0
- package/src/plugins/builtin/backtest/format.ts +52 -0
- package/src/plugins/builtin/backtest/headless.ts +81 -0
- package/src/plugins/builtin/backtest/index.tsx +33 -0
- package/src/plugins/builtin/backtest/pane.tsx +301 -0
- package/src/plugins/builtin/backtest/presets.ts +60 -0
- package/src/plugins/builtin/backtest/report.ts +160 -0
- package/src/plugins/builtin/backtest/rules.ts +209 -0
- package/src/plugins/builtin/backtest/window.ts +125 -0
- package/src/plugins/builtin/bond-calculator/client.ts +28 -0
- package/src/plugins/builtin/bond-calculator/headless.ts +56 -0
- package/src/plugins/builtin/bond-calculator/index.tsx +10 -0
- package/src/plugins/builtin/bond-calculator/math.ts +164 -0
- package/src/plugins/builtin/bond-calculator/model.ts +64 -0
- package/src/plugins/builtin/bond-calculator/pane.tsx +160 -0
- package/src/plugins/builtin/broker-manager/add-flow.tsx +662 -0
- package/src/plugins/builtin/broker-manager/add-request.ts +34 -0
- package/src/plugins/builtin/broker-manager/detail.tsx +380 -0
- package/src/plugins/builtin/broker-manager/footer.ts +89 -0
- package/src/plugins/builtin/broker-manager/index.tsx +407 -0
- package/src/plugins/builtin/broker-manager/keyboard.ts +59 -0
- package/src/plugins/builtin/broker-manager/model.ts +181 -0
- package/src/plugins/builtin/broker-manager/pane-actions.tsx +364 -0
- package/src/plugins/builtin/broker-manager/sign-in-end.ts +82 -0
- package/src/plugins/builtin/broker-manager/table.ts +86 -0
- package/src/plugins/builtin/broker-trading/account-picker.tsx +92 -0
- package/src/plugins/builtin/broker-trading/chart-levels.ts +123 -0
- package/src/plugins/builtin/broker-trading/command.ts +103 -0
- package/src/plugins/builtin/broker-trading/controller.ts +730 -0
- package/src/plugins/builtin/broker-trading/dock.tsx +202 -0
- package/src/plugins/builtin/broker-trading/headless.ts +77 -0
- package/src/plugins/builtin/broker-trading/index.tsx +95 -0
- package/src/plugins/builtin/broker-trading/linked-orders.ts +148 -0
- package/src/plugins/builtin/broker-trading/order-feed.ts +456 -0
- package/src/plugins/builtin/broker-trading/orders-data.ts +133 -0
- package/src/plugins/builtin/broker-trading/orders.tsx +515 -0
- package/src/plugins/builtin/broker-trading/overview-orders.tsx +127 -0
- package/src/plugins/builtin/broker-trading/pane-model.ts +235 -0
- package/src/plugins/builtin/broker-trading/pane.tsx +594 -0
- package/src/plugins/builtin/broker-trading/strategy.ts +153 -0
- package/src/plugins/builtin/broker-trading/ticket-parts.tsx +146 -0
- package/src/plugins/builtin/broker-trading/ticket.tsx +659 -0
- package/src/plugins/builtin/buildout/cells.tsx +198 -0
- package/src/plugins/builtin/buildout/data-runtime.ts +243 -0
- package/src/plugins/builtin/buildout/detail/company.tsx +279 -0
- package/src/plugins/builtin/buildout/detail/index.tsx +82 -0
- package/src/plugins/builtin/buildout/detail/intel.tsx +56 -0
- package/src/plugins/builtin/buildout/detail/satellite-images.tsx +80 -0
- package/src/plugins/builtin/buildout/detail/site.tsx +115 -0
- package/src/plugins/builtin/buildout/detail/ui.tsx +235 -0
- package/src/plugins/builtin/buildout/detail/values.ts +67 -0
- package/src/plugins/builtin/buildout/format.ts +186 -0
- package/src/plugins/builtin/buildout/index.tsx +24 -0
- package/src/plugins/builtin/buildout/model/index.ts +144 -0
- package/src/plugins/builtin/buildout/model/normalizers.ts +396 -0
- package/src/plugins/builtin/buildout/model/types.ts +321 -0
- package/src/plugins/builtin/buildout/pane/index.tsx +467 -0
- package/src/plugins/builtin/buildout/pane/status.tsx +87 -0
- package/src/plugins/builtin/buildout/table-model.ts +431 -0
- package/src/plugins/builtin/builtin-plugin-meta.ts +161 -0
- package/src/plugins/builtin/catalysts/client.ts +28 -0
- package/src/plugins/builtin/catalysts/detail.tsx +89 -0
- package/src/plugins/builtin/catalysts/evidence.ts +47 -0
- package/src/plugins/builtin/catalysts/headless.ts +59 -0
- package/src/plugins/builtin/catalysts/history.ts +26 -0
- package/src/plugins/builtin/catalysts/index.tsx +31 -0
- package/src/plugins/builtin/catalysts/model.ts +280 -0
- package/src/plugins/builtin/catalysts/pane.tsx +163 -0
- package/src/plugins/builtin/cds/client.ts +169 -0
- package/src/plugins/builtin/cds/headless.ts +367 -0
- package/src/plugins/builtin/cds/index.tsx +39 -0
- package/src/plugins/builtin/cds/model.ts +815 -0
- package/src/plugins/builtin/cds/pane.tsx +547 -0
- package/src/plugins/builtin/cds/series.ts +19 -0
- package/src/plugins/builtin/central-bank-rates/client.ts +66 -0
- package/src/plugins/builtin/central-bank-rates/headless.ts +81 -0
- package/src/plugins/builtin/central-bank-rates/index.tsx +20 -0
- package/src/plugins/builtin/central-bank-rates/model.ts +151 -0
- package/src/plugins/builtin/central-bank-rates/pane.tsx +73 -0
- package/src/plugins/builtin/central-bank-rates/series.ts +36 -0
- package/src/plugins/builtin/changelog/index.tsx +310 -0
- package/src/plugins/builtin/changelog/model.ts +88 -0
- package/src/plugins/builtin/chart-composer/catalog-inventory.ts +365 -0
- package/src/plugins/builtin/chart-composer/chart-spec-edit.ts +580 -0
- package/src/plugins/builtin/chart-composer/chart-spec.ts +159 -0
- package/src/plugins/builtin/chart-composer/cli-options.ts +127 -0
- package/src/plugins/builtin/chart-composer/data-catalog-pane.tsx +316 -0
- package/src/plugins/builtin/chart-composer/editor/controller.ts +657 -0
- package/src/plugins/builtin/chart-composer/editor/desktop-view.tsx +138 -0
- package/src/plugins/builtin/chart-composer/editor/model.ts +297 -0
- package/src/plugins/builtin/chart-composer/editor/opentui-view.tsx +111 -0
- package/src/plugins/builtin/chart-composer/editor.tsx +252 -0
- package/src/plugins/builtin/chart-composer/field-series.ts +40 -0
- package/src/plugins/builtin/chart-composer/follow-binding.ts +78 -0
- package/src/plugins/builtin/chart-composer/formula.ts +286 -0
- package/src/plugins/builtin/chart-composer/headless-schema.ts +250 -0
- package/src/plugins/builtin/chart-composer/headless.ts +802 -0
- package/src/plugins/builtin/chart-composer/index.tsx +544 -0
- package/src/plugins/builtin/chart-composer/leverage-overlay.ts +142 -0
- package/src/plugins/builtin/chart-composer/option-range.ts +39 -0
- package/src/plugins/builtin/chart-composer/pane.tsx +1448 -0
- package/src/plugins/builtin/chart-composer/presets.ts +320 -0
- package/src/plugins/builtin/chart-composer/price-levels.ts +80 -0
- package/src/plugins/builtin/chart-composer/quick-add.tsx +488 -0
- package/src/plugins/builtin/chart-composer/semantic.ts +113 -0
- package/src/plugins/builtin/chart-composer/series-catalog.ts +473 -0
- package/src/plugins/builtin/chart-composer/series-expression.ts +274 -0
- package/src/plugins/builtin/chart-composer/series-listings.ts +178 -0
- package/src/plugins/builtin/chart-composer/session-history.ts +382 -0
- package/src/plugins/builtin/chart-composer/session-range.ts +89 -0
- package/src/plugins/builtin/chart-composer/settings.ts +500 -0
- package/src/plugins/builtin/chart-composer/shortcuts.ts +27 -0
- package/src/plugins/builtin/chart-composer/studies.ts +242 -0
- package/src/plugins/builtin/chart-composer/use-series-catalog.ts +384 -0
- package/src/plugins/builtin/chart-composer/user-series.ts +84 -0
- package/src/plugins/builtin/chart-composer/viewport-labels.ts +93 -0
- package/src/plugins/builtin/chat/attachments/desktop.tsx +614 -0
- package/src/plugins/builtin/chat/attachments/files.ts +45 -0
- package/src/plugins/builtin/chat/attachments/model.ts +168 -0
- package/src/plugins/builtin/chat/attachments/terminal.tsx +72 -0
- package/src/plugins/builtin/chat/attachments/transfer.ts +165 -0
- package/src/plugins/builtin/chat/channel-labels.ts +67 -0
- package/src/plugins/builtin/chat/channels.ts +170 -0
- package/src/plugins/builtin/chat/command-bar.ts +136 -0
- package/src/plugins/builtin/chat/composer-commands.ts +54 -0
- package/src/plugins/builtin/chat/content/channel-navigation.ts +285 -0
- package/src/plugins/builtin/chat/content/command-suggestions.ts +92 -0
- package/src/plugins/builtin/chat/content/composer-cursor.ts +29 -0
- package/src/plugins/builtin/chat/content/composer-runtime.ts +471 -0
- package/src/plugins/builtin/chat/content/composer.tsx +310 -0
- package/src/plugins/builtin/chat/content/footer.tsx +321 -0
- package/src/plugins/builtin/chat/content/handle-prompt.tsx +326 -0
- package/src/plugins/builtin/chat/content/index.tsx +1289 -0
- package/src/plugins/builtin/chat/content/layout-metrics.ts +98 -0
- package/src/plugins/builtin/chat/content/mentions.ts +118 -0
- package/src/plugins/builtin/chat/content/new-dm-dialog.tsx +431 -0
- package/src/plugins/builtin/chat/content/new-messages.tsx +89 -0
- package/src/plugins/builtin/chat/content/open-targets.ts +80 -0
- package/src/plugins/builtin/chat/content/row-activity.ts +132 -0
- package/src/plugins/builtin/chat/content/scroll.ts +396 -0
- package/src/plugins/builtin/chat/content/selection-runtime.ts +66 -0
- package/src/plugins/builtin/chat/content/shortcuts.ts +344 -0
- package/src/plugins/builtin/chat/content/snapshot.ts +202 -0
- package/src/plugins/builtin/chat/content/transcript.tsx +296 -0
- package/src/plugins/builtin/chat/content/types.ts +35 -0
- package/src/plugins/builtin/chat/content/user-map.ts +23 -0
- package/src/plugins/builtin/chat/content/whole-message-copy.ts +112 -0
- package/src/plugins/builtin/chat/controller/attachments.ts +213 -0
- package/src/plugins/builtin/chat/controller/channel-actions.ts +97 -0
- package/src/plugins/builtin/chat/controller/channels.ts +180 -0
- package/src/plugins/builtin/chat/controller/connections.ts +110 -0
- package/src/plugins/builtin/chat/controller/draft-sync.ts +41 -0
- package/src/plugins/builtin/chat/controller/fetch.ts +85 -0
- package/src/plugins/builtin/chat/controller/index.ts +980 -0
- package/src/plugins/builtin/chat/controller/lifecycle.ts +153 -0
- package/src/plugins/builtin/chat/controller/mention-candidates.ts +104 -0
- package/src/plugins/builtin/chat/controller/message-loading.ts +104 -0
- package/src/plugins/builtin/chat/controller/messages.ts +243 -0
- package/src/plugins/builtin/chat/controller/notifications.ts +153 -0
- package/src/plugins/builtin/chat/controller/persistence.ts +170 -0
- package/src/plugins/builtin/chat/controller/realtime.ts +169 -0
- package/src/plugins/builtin/chat/controller/send.ts +250 -0
- package/src/plugins/builtin/chat/controller/session-runtime.ts +245 -0
- package/src/plugins/builtin/chat/controller/session.ts +41 -0
- package/src/plugins/builtin/chat/controller/state.ts +221 -0
- package/src/plugins/builtin/chat/controller/storage.ts +134 -0
- package/src/plugins/builtin/chat/controller/unread-people.ts +240 -0
- package/src/plugins/builtin/chat/controller/utils.ts +65 -0
- package/src/plugins/builtin/chat/controller/view.ts +103 -0
- package/src/plugins/builtin/chat/conversation-recency.ts +73 -0
- package/src/plugins/builtin/chat/conversations.ts +263 -0
- package/src/plugins/builtin/chat/direct-messages.ts +200 -0
- package/src/plugins/builtin/chat/discord-command.ts +91 -0
- package/src/plugins/builtin/chat/edit-window.ts +30 -0
- package/src/plugins/builtin/chat/ghost-user.ts +42 -0
- package/src/plugins/builtin/chat/handle-prompt.ts +128 -0
- package/src/plugins/builtin/chat/index.tsx +229 -0
- package/src/plugins/builtin/chat/layout.ts +570 -0
- package/src/plugins/builtin/chat/markdown.ts +94 -0
- package/src/plugins/builtin/chat/message/desktop.tsx +276 -0
- package/src/plugins/builtin/chat/message/header.tsx +209 -0
- package/src/plugins/builtin/chat/message/inline-tokens.tsx +315 -0
- package/src/plugins/builtin/chat/message/pane-chip.tsx +349 -0
- package/src/plugins/builtin/chat/message/pending-send.ts +35 -0
- package/src/plugins/builtin/chat/message/person-icons.tsx +53 -0
- package/src/plugins/builtin/chat/message/profile-popover.tsx +379 -0
- package/src/plugins/builtin/chat/message/reactions.tsx +210 -0
- package/src/plugins/builtin/chat/message/render-state.ts +151 -0
- package/src/plugins/builtin/chat/message/terminal.tsx +234 -0
- package/src/plugins/builtin/chat/message/types.ts +52 -0
- package/src/plugins/builtin/chat/pane-links/commands.ts +265 -0
- package/src/plugins/builtin/chat/pane-links/composer.ts +87 -0
- package/src/plugins/builtin/chat/pane-links/model.ts +158 -0
- package/src/plugins/builtin/chat/pane-links/open.ts +36 -0
- package/src/plugins/builtin/chat/pane-links/previews.ts +119 -0
- package/src/plugins/builtin/chat/pane-requests.ts +60 -0
- package/src/plugins/builtin/chat/pane-state.ts +115 -0
- package/src/plugins/builtin/chat/pane.tsx +145 -0
- package/src/plugins/builtin/chat/people.ts +202 -0
- package/src/plugins/builtin/chat/profile-popover.ts +207 -0
- package/src/plugins/builtin/chat/reactions.ts +197 -0
- package/src/plugins/builtin/chat/share/flow.tsx +32 -0
- package/src/plugins/builtin/chat/sidebar-rows.ts +109 -0
- package/src/plugins/builtin/chat/sidebar-store.ts +100 -0
- package/src/plugins/builtin/chat/sidebar.tsx +345 -0
- package/src/plugins/builtin/chat/status-widget.tsx +114 -0
- package/src/plugins/builtin/chat/unread-badge.ts +96 -0
- package/src/plugins/builtin/chat/unread-inbox-pane.tsx +281 -0
- package/src/plugins/builtin/chat/unread-inbox.ts +113 -0
- package/src/plugins/builtin/clinical-trials/client.ts +265 -0
- package/src/plugins/builtin/clinical-trials/index.tsx +83 -0
- package/src/plugins/builtin/clinical-trials/model.ts +278 -0
- package/src/plugins/builtin/clinical-trials/pane.tsx +430 -0
- package/src/plugins/builtin/clinical-trials/sponsor-tickers.ts +156 -0
- package/src/plugins/builtin/clinical-trials/ticker-sponsor.ts +17 -0
- package/src/plugins/builtin/clinical-trials/types.ts +2 -0
- package/src/plugins/builtin/cloud/askg/attached-pane.tsx +69 -0
- package/src/plugins/builtin/cloud/askg/controller.ts +714 -0
- package/src/plugins/builtin/cloud/askg/conversation-store.ts +243 -0
- package/src/plugins/builtin/cloud/askg/executor.ts +476 -0
- package/src/plugins/builtin/cloud/askg/host.ts +94 -0
- package/src/plugins/builtin/cloud/askg/json.ts +31 -0
- package/src/plugins/builtin/cloud/askg/lock-note.ts +16 -0
- package/src/plugins/builtin/cloud/askg/manifest.ts +368 -0
- package/src/plugins/builtin/cloud/askg/model.ts +854 -0
- package/src/plugins/builtin/cloud/askg/notes.ts +100 -0
- package/src/plugins/builtin/cloud/askg/pane-attachment.ts +93 -0
- package/src/plugins/builtin/cloud/askg/pane.tsx +1749 -0
- package/src/plugins/builtin/cloud/askg/pending-question.ts +27 -0
- package/src/plugins/builtin/cloud/askg/protocol.ts +377 -0
- package/src/plugins/builtin/cloud/askg/result-budget.ts +156 -0
- package/src/plugins/builtin/cloud/askg/sidebar.tsx +184 -0
- package/src/plugins/builtin/cloud/askg/tool-display.ts +440 -0
- package/src/plugins/builtin/cloud/askg/tool-timeline.tsx +404 -0
- package/src/plugins/builtin/cloud/askg/undo.ts +254 -0
- package/src/plugins/builtin/cloud/askg/user-data.ts +89 -0
- package/src/plugins/builtin/cloud/auth-actions.tsx +158 -0
- package/src/plugins/builtin/cloud/auth-commands.ts +103 -0
- package/src/plugins/builtin/cloud/browser.tsx +3 -0
- package/src/plugins/builtin/cloud/company-picker.tsx +645 -0
- package/src/plugins/builtin/cloud/index.tsx +4 -0
- package/src/plugins/builtin/cloud/mcp-connect/command.ts +24 -0
- package/src/plugins/builtin/cloud/mcp-connect/dialog.tsx +366 -0
- package/src/plugins/builtin/cloud/mcp-connect/model.ts +135 -0
- package/src/plugins/builtin/cloud/mcp-connect/sections.ts +62 -0
- package/src/plugins/builtin/cloud/plugin.tsx +203 -0
- package/src/plugins/builtin/cloud/team/acm-tab.tsx +127 -0
- package/src/plugins/builtin/cloud/team/capability.ts +71 -0
- package/src/plugins/builtin/cloud/team/command.ts +313 -0
- package/src/plugins/builtin/cloud/team/module.tsx +81 -0
- package/src/plugins/builtin/cloud/team/pane-model.ts +185 -0
- package/src/plugins/builtin/cloud/team/pane-sections.tsx +576 -0
- package/src/plugins/builtin/cloud/team/pane-ui.tsx +362 -0
- package/src/plugins/builtin/cloud/team/pane.tsx +940 -0
- package/src/plugins/builtin/cloud/team/status-widget.tsx +78 -0
- package/src/plugins/builtin/cloud/team/team-state-host.ts +70 -0
- package/src/plugins/builtin/cloud/team/views.ts +192 -0
- package/src/plugins/builtin/cloud/terminal-relay/acm-tab.tsx +89 -0
- package/src/plugins/builtin/cloud/terminal-relay/client.ts +97 -0
- package/src/plugins/builtin/cloud/terminal-relay/connect-section.tsx +57 -0
- package/src/plugins/builtin/cloud/terminal-relay/engine.ts +739 -0
- package/src/plugins/builtin/cloud/terminal-relay/grants.ts +137 -0
- package/src/plugins/builtin/cloud/terminal-relay/host.tsx +81 -0
- package/src/plugins/builtin/cloud/terminal-relay/indicator.tsx +82 -0
- package/src/plugins/builtin/cloud/terminal-relay/manifest.ts +250 -0
- package/src/plugins/builtin/cloud/terminal-relay/policy.ts +162 -0
- package/src/plugins/builtin/cloud/terminal-relay/prompts.tsx +193 -0
- package/src/plugins/builtin/cloud/terminal-relay/redact.ts +73 -0
- package/src/plugins/builtin/cloud/terminal-relay/summary.ts +62 -0
- package/src/plugins/builtin/cloud/thesis/board-pane.tsx +484 -0
- package/src/plugins/builtin/cloud/thesis/detail.tsx +539 -0
- package/src/plugins/builtin/cloud/thesis/exposure.ts +145 -0
- package/src/plugins/builtin/cloud/thesis/flows.ts +553 -0
- package/src/plugins/builtin/cloud/thesis/model.ts +399 -0
- package/src/plugins/builtin/cloud/thesis/module.tsx +65 -0
- package/src/plugins/builtin/cloud/thesis/pane-request.ts +30 -0
- package/src/plugins/builtin/cloud/thesis/prompts.tsx +104 -0
- package/src/plugins/builtin/cloud/thesis/store.ts +302 -0
- package/src/plugins/builtin/cloud/thesis/ticker-tab.tsx +140 -0
- package/src/plugins/builtin/cloud/trial-offer-status-widget.tsx +203 -0
- package/src/plugins/builtin/cloud/upgrade-command.ts +35 -0
- package/src/plugins/builtin/cloud/upgrade-status-widget.tsx +45 -0
- package/src/plugins/builtin/cloud/verification-status-widget.tsx +75 -0
- package/src/plugins/builtin/cloud-tweets/footer.ts +40 -0
- package/src/plugins/builtin/cloud-tweets/index.ts +6 -0
- package/src/plugins/builtin/cloud-tweets/keyboard.ts +34 -0
- package/src/plugins/builtin/cloud-tweets/model.ts +280 -0
- package/src/plugins/builtin/cloud-tweets/pane.tsx +327 -0
- package/src/plugins/builtin/cloud-tweets/registration.ts +130 -0
- package/src/plugins/builtin/cloud-tweets/search-bar.tsx +38 -0
- package/src/plugins/builtin/cloud-tweets/table.tsx +551 -0
- package/src/plugins/builtin/cloud-tweets/tweet-text.ts +18 -0
- package/src/plugins/builtin/comment-letters/client.ts +340 -0
- package/src/plugins/builtin/comment-letters/index.tsx +75 -0
- package/src/plugins/builtin/comment-letters/pane.tsx +314 -0
- package/src/plugins/builtin/comment-letters/types.ts +43 -0
- package/src/plugins/builtin/commodities-energy/index.tsx +228 -0
- package/src/plugins/builtin/commodities-energy/view-state.ts +13 -0
- package/src/plugins/builtin/commodity-balances/client.ts +68 -0
- package/src/plugins/builtin/commodity-balances/headless.ts +107 -0
- package/src/plugins/builtin/commodity-balances/index.tsx +47 -0
- package/src/plugins/builtin/commodity-balances/model.ts +108 -0
- package/src/plugins/builtin/commodity-balances/pane.tsx +267 -0
- package/src/plugins/builtin/company-attention/app-rank.tsx +80 -0
- package/src/plugins/builtin/company-attention/building-model.ts +222 -0
- package/src/plugins/builtin/company-attention/building.tsx +172 -0
- package/src/plugins/builtin/company-attention/client.ts +185 -0
- package/src/plugins/builtin/company-attention/evidence.ts +58 -0
- package/src/plugins/builtin/company-attention/headless.ts +172 -0
- package/src/plugins/builtin/company-attention/index.tsx +35 -0
- package/src/plugins/builtin/company-attention/model.ts +270 -0
- package/src/plugins/builtin/company-attention/moves-model.ts +253 -0
- package/src/plugins/builtin/company-attention/moves.tsx +159 -0
- package/src/plugins/builtin/company-attention/pane.tsx +246 -0
- package/src/plugins/builtin/company-attention/series.ts +52 -0
- package/src/plugins/builtin/company-attention/signals-model.ts +229 -0
- package/src/plugins/builtin/company-attention/signals.tsx +160 -0
- package/src/plugins/builtin/company-kpis/client.ts +108 -0
- package/src/plugins/builtin/company-kpis/headless.ts +122 -0
- package/src/plugins/builtin/company-kpis/index.tsx +26 -0
- package/src/plugins/builtin/company-kpis/model.ts +229 -0
- package/src/plugins/builtin/company-kpis/pane.tsx +256 -0
- package/src/plugins/builtin/company-kpis/related.ts +11 -0
- package/src/plugins/builtin/company-kpis/screenshot-evidence.ts +51 -0
- package/src/plugins/builtin/composite-plugins.ts +284 -0
- package/src/plugins/builtin/congress-trades/aggregates.ts +69 -0
- package/src/plugins/builtin/congress-trades/client.ts +13 -0
- package/src/plugins/builtin/congress-trades/detail.tsx +340 -0
- package/src/plugins/builtin/congress-trades/filters.tsx +36 -0
- package/src/plugins/builtin/congress-trades/footer.ts +86 -0
- package/src/plugins/builtin/congress-trades/headless.ts +212 -0
- package/src/plugins/builtin/congress-trades/index.tsx +26 -0
- package/src/plugins/builtin/congress-trades/keyboard.ts +45 -0
- package/src/plugins/builtin/congress-trades/model.ts +399 -0
- package/src/plugins/builtin/congress-trades/pane.tsx +519 -0
- package/src/plugins/builtin/congress-trades/table.tsx +102 -0
- package/src/plugins/builtin/connections/index.ts +58 -0
- package/src/plugins/builtin/connections/pane.tsx +243 -0
- package/src/plugins/builtin/correlation/compute.ts +139 -0
- package/src/plugins/builtin/correlation/geo.ts +34 -0
- package/src/plugins/builtin/correlation/headless-schema.ts +73 -0
- package/src/plugins/builtin/correlation/headless.ts +150 -0
- package/src/plugins/builtin/correlation/history.ts +21 -0
- package/src/plugins/builtin/correlation/index.tsx +490 -0
- package/src/plugins/builtin/correlation/matrix/model.ts +199 -0
- package/src/plugins/builtin/correlation/matrix/pair-chart.tsx +48 -0
- package/src/plugins/builtin/correlation/matrix/selection.ts +79 -0
- package/src/plugins/builtin/correlation/matrix/symbol-cell.tsx +57 -0
- package/src/plugins/builtin/correlation/relationship/history.ts +46 -0
- package/src/plugins/builtin/correlation/relationship/model.ts +267 -0
- package/src/plugins/builtin/correlation/relationship/pane.tsx +354 -0
- package/src/plugins/builtin/correlation/relationship/view-model.ts +123 -0
- package/src/plugins/builtin/correlation/settings.ts +95 -0
- package/src/plugins/builtin/cot/client.ts +107 -0
- package/src/plugins/builtin/cot/headless.ts +91 -0
- package/src/plugins/builtin/cot/index.tsx +28 -0
- package/src/plugins/builtin/cot/model.ts +264 -0
- package/src/plugins/builtin/cot/pane.tsx +192 -0
- package/src/plugins/builtin/cot/series.ts +27 -0
- package/src/plugins/builtin/cpi/client.ts +66 -0
- package/src/plugins/builtin/cpi/headless.ts +86 -0
- package/src/plugins/builtin/cpi/index.tsx +31 -0
- package/src/plugins/builtin/cpi/model.ts +198 -0
- package/src/plugins/builtin/cpi/pane.tsx +160 -0
- package/src/plugins/builtin/credit-boards/cdx-pane.tsx +178 -0
- package/src/plugins/builtin/credit-boards/client.ts +119 -0
- package/src/plugins/builtin/credit-boards/headless.ts +218 -0
- package/src/plugins/builtin/credit-boards/index.tsx +54 -0
- package/src/plugins/builtin/credit-boards/model.ts +323 -0
- package/src/plugins/builtin/credit-boards/series.ts +66 -0
- package/src/plugins/builtin/credit-boards/sovr-pane.tsx +156 -0
- package/src/plugins/builtin/credit-conditions/client.ts +121 -0
- package/src/plugins/builtin/credit-conditions/headless.ts +68 -0
- package/src/plugins/builtin/credit-conditions/index.tsx +159 -0
- package/src/plugins/builtin/credit-conditions/model.ts +94 -0
- package/src/plugins/builtin/credit-conditions/series.ts +16 -0
- package/src/plugins/builtin/credit-documents/client.ts +99 -0
- package/src/plugins/builtin/credit-documents/detail.tsx +110 -0
- package/src/plugins/builtin/credit-documents/evidence.ts +64 -0
- package/src/plugins/builtin/credit-documents/gauge.tsx +52 -0
- package/src/plugins/builtin/credit-documents/headless.ts +72 -0
- package/src/plugins/builtin/credit-documents/index.tsx +39 -0
- package/src/plugins/builtin/credit-documents/model.ts +329 -0
- package/src/plugins/builtin/credit-documents/pane.tsx +188 -0
- package/src/plugins/builtin/crypto-board/client.ts +369 -0
- package/src/plugins/builtin/crypto-board/defi-view.tsx +218 -0
- package/src/plugins/builtin/crypto-board/defi.ts +239 -0
- package/src/plugins/builtin/crypto-board/headless.ts +304 -0
- package/src/plugins/builtin/crypto-board/index.tsx +49 -0
- package/src/plugins/builtin/crypto-board/model.ts +521 -0
- package/src/plugins/builtin/crypto-board/pane.tsx +419 -0
- package/src/plugins/builtin/crypto-board/series.ts +117 -0
- package/src/plugins/builtin/crypto-board/supply.ts +123 -0
- package/src/plugins/builtin/crypto-etf-flows/client.ts +60 -0
- package/src/plugins/builtin/crypto-etf-flows/headless.ts +132 -0
- package/src/plugins/builtin/crypto-etf-flows/index.tsx +44 -0
- package/src/plugins/builtin/crypto-etf-flows/model.ts +121 -0
- package/src/plugins/builtin/crypto-etf-flows/pane.tsx +193 -0
- package/src/plugins/builtin/custom-view/index.tsx +69 -0
- package/src/plugins/builtin/custom-view/live-quotes.ts +143 -0
- package/src/plugins/builtin/custom-view/loader.ts +158 -0
- package/src/plugins/builtin/custom-view/pane.tsx +415 -0
- package/src/plugins/builtin/custom-view/sources.ts +146 -0
- package/src/plugins/builtin/custom-view/view-spec.ts +462 -0
- package/src/plugins/builtin/debt-maturities/client.ts +438 -0
- package/src/plugins/builtin/debt-maturities/headless.ts +125 -0
- package/src/plugins/builtin/debt-maturities/index.tsx +33 -0
- package/src/plugins/builtin/debt-maturities/model.ts +231 -0
- package/src/plugins/builtin/debt-maturities/pane.tsx +692 -0
- package/src/plugins/builtin/debt-maturities/series.ts +45 -0
- package/src/plugins/builtin/debt-maturities/wall-bar.tsx +36 -0
- package/src/plugins/builtin/debug/index.tsx +336 -0
- package/src/plugins/builtin/debug/template.ts +8 -0
- package/src/plugins/builtin/dividend-yield/browser.tsx +3 -0
- package/src/plugins/builtin/dividend-yield/client.ts +223 -0
- package/src/plugins/builtin/dividend-yield/headless.ts +312 -0
- package/src/plugins/builtin/dividend-yield/index.tsx +85 -0
- package/src/plugins/builtin/dividend-yield/model.ts +50 -0
- package/src/plugins/builtin/dividend-yield/pane.tsx +307 -0
- package/src/plugins/builtin/dividend-yield/provider-client.ts +52 -0
- package/src/plugins/builtin/dividend-yield/ranking.ts +187 -0
- package/src/plugins/builtin/dividend-yield/reference-price.ts +50 -0
- package/src/plugins/builtin/dividend-yield/series.ts +20 -0
- package/src/plugins/builtin/dividend-yield/types.ts +31 -0
- package/src/plugins/builtin/dividend-yield/view.ts +64 -0
- package/src/plugins/builtin/docs/blocks.tsx +239 -0
- package/src/plugins/builtin/docs/index.tsx +70 -0
- package/src/plugins/builtin/docs/pane.tsx +447 -0
- package/src/plugins/builtin/docs/targets.ts +74 -0
- package/src/plugins/builtin/docs/use-docs.ts +60 -0
- package/src/plugins/builtin/doe/client.ts +77 -0
- package/src/plugins/builtin/doe/headless.ts +110 -0
- package/src/plugins/builtin/doe/index.tsx +50 -0
- package/src/plugins/builtin/doe/model.ts +252 -0
- package/src/plugins/builtin/doe/pane.tsx +156 -0
- package/src/plugins/builtin/doe/prices.ts +84 -0
- package/src/plugins/builtin/doe/range-bar.tsx +15 -0
- package/src/plugins/builtin/doe/series.ts +65 -0
- package/src/plugins/builtin/earnings/board-model.ts +251 -0
- package/src/plugins/builtin/earnings/board-table.ts +147 -0
- package/src/plugins/builtin/earnings/board.tsx +475 -0
- package/src/plugins/builtin/earnings/calendar-model.ts +188 -0
- package/src/plugins/builtin/earnings/calendar.tsx +338 -0
- package/src/plugins/builtin/earnings/client.ts +99 -0
- package/src/plugins/builtin/earnings/data/cache.ts +84 -0
- package/src/plugins/builtin/earnings/format.ts +58 -0
- package/src/plugins/builtin/earnings/headless.ts +303 -0
- package/src/plugins/builtin/earnings/history-model.ts +213 -0
- package/src/plugins/builtin/earnings/history-table.ts +106 -0
- package/src/plugins/builtin/earnings/history.tsx +141 -0
- package/src/plugins/builtin/earnings/index.tsx +158 -0
- package/src/plugins/builtin/earnings/model.ts +22 -0
- package/src/plugins/builtin/earnings/no-earnings.ts +52 -0
- package/src/plugins/builtin/earnings/scope.ts +89 -0
- package/src/plugins/builtin/earnings-calls/calendar.tsx +310 -0
- package/src/plugins/builtin/earnings-calls/data.ts +515 -0
- package/src/plugins/builtin/earnings-calls/format.ts +43 -0
- package/src/plugins/builtin/earnings-calls/headless.ts +456 -0
- package/src/plugins/builtin/earnings-calls/index.tsx +82 -0
- package/src/plugins/builtin/earnings-calls/lock-note.ts +26 -0
- package/src/plugins/builtin/earnings-calls/model.ts +336 -0
- package/src/plugins/builtin/earnings-calls/pane.tsx +1124 -0
- package/src/plugins/builtin/earnings-calls/prose.ts +62 -0
- package/src/plugins/builtin/earnings-calls/transcript-view.tsx +457 -0
- package/src/plugins/builtin/earnings-calls/upcoming.ts +195 -0
- package/src/plugins/builtin/earnings-calls/use-call-playback.ts +194 -0
- package/src/plugins/builtin/earnings-ripple/client.ts +133 -0
- package/src/plugins/builtin/earnings-ripple/headless.ts +55 -0
- package/src/plugins/builtin/earnings-ripple/index.tsx +37 -0
- package/src/plugins/builtin/earnings-ripple/model.ts +188 -0
- package/src/plugins/builtin/earnings-ripple/pane.tsx +233 -0
- package/src/plugins/builtin/econ/calendar-model.ts +409 -0
- package/src/plugins/builtin/econ/calendar-source.ts +49 -0
- package/src/plugins/builtin/econ/detail-view.tsx +324 -0
- package/src/plugins/builtin/econ/figures.ts +72 -0
- package/src/plugins/builtin/econ/fred-catalog.ts +219 -0
- package/src/plugins/builtin/econ/fred-series-map.ts +103 -0
- package/src/plugins/builtin/econ/index.tsx +612 -0
- package/src/plugins/builtin/econ/print-watch.ts +280 -0
- package/src/plugins/builtin/econ/types.ts +47 -0
- package/src/plugins/builtin/econ-statistics/cache.ts +8 -0
- package/src/plugins/builtin/econ-statistics/client.ts +153 -0
- package/src/plugins/builtin/econ-statistics/defs.ts +94 -0
- package/src/plugins/builtin/econ-statistics/detail.tsx +85 -0
- package/src/plugins/builtin/econ-statistics/headless.ts +266 -0
- package/src/plugins/builtin/econ-statistics/index.tsx +54 -0
- package/src/plugins/builtin/econ-statistics/pane.tsx +219 -0
- package/src/plugins/builtin/econ-statistics/stats.ts +651 -0
- package/src/plugins/builtin/econ-statistics/view.ts +182 -0
- package/src/plugins/builtin/equity-screener/client.ts +101 -0
- package/src/plugins/builtin/equity-screener/criterion-editor.tsx +174 -0
- package/src/plugins/builtin/equity-screener/headless.ts +284 -0
- package/src/plugins/builtin/equity-screener/index.tsx +38 -0
- package/src/plugins/builtin/equity-screener/live.ts +149 -0
- package/src/plugins/builtin/equity-screener/model.ts +639 -0
- package/src/plugins/builtin/equity-screener/pane.tsx +1072 -0
- package/src/plugins/builtin/equity-screener/results.ts +135 -0
- package/src/plugins/builtin/equity-screener/screen-check.ts +90 -0
- package/src/plugins/builtin/equity-screener/ticker-check.tsx +148 -0
- package/src/plugins/builtin/estimate-revisions/client.ts +283 -0
- package/src/plugins/builtin/estimate-revisions/headless.ts +108 -0
- package/src/plugins/builtin/estimate-revisions/index.tsx +92 -0
- package/src/plugins/builtin/estimate-revisions/lock-note.ts +45 -0
- package/src/plugins/builtin/estimate-revisions/model.ts +108 -0
- package/src/plugins/builtin/estimate-revisions/pane.tsx +601 -0
- package/src/plugins/builtin/estimate-revisions/sorting.ts +111 -0
- package/src/plugins/builtin/executives/data.ts +148 -0
- package/src/plugins/builtin/executives/format.ts +44 -0
- package/src/plugins/builtin/executives/index.tsx +68 -0
- package/src/plugins/builtin/executives/pane.tsx +448 -0
- package/src/plugins/builtin/exposure/charts.tsx +67 -0
- package/src/plugins/builtin/exposure/client.ts +56 -0
- package/src/plugins/builtin/exposure/drivers.ts +42 -0
- package/src/plugins/builtin/exposure/editor.tsx +61 -0
- package/src/plugins/builtin/exposure/evidence.ts +42 -0
- package/src/plugins/builtin/exposure/headless.ts +290 -0
- package/src/plugins/builtin/exposure/holdings.ts +58 -0
- package/src/plugins/builtin/exposure/index.tsx +40 -0
- package/src/plugins/builtin/exposure/model.ts +143 -0
- package/src/plugins/builtin/exposure/pane.tsx +276 -0
- package/src/plugins/builtin/fear-greed/cache.ts +100 -0
- package/src/plugins/builtin/fear-greed/charts.tsx +262 -0
- package/src/plugins/builtin/fear-greed/data.ts +376 -0
- package/src/plugins/builtin/fear-greed/format.ts +87 -0
- package/src/plugins/builtin/fear-greed/headless.ts +87 -0
- package/src/plugins/builtin/fear-greed/index.tsx +104 -0
- package/src/plugins/builtin/fear-greed/pane.tsx +105 -0
- package/src/plugins/builtin/fear-greed/series.ts +52 -0
- package/src/plugins/builtin/filing-events/feed.ts +169 -0
- package/src/plugins/builtin/filing-events/index.tsx +79 -0
- package/src/plugins/builtin/filing-events/pane.tsx +312 -0
- package/src/plugins/builtin/fixed-income/index.tsx +46 -0
- package/src/plugins/builtin/fixed-income/model.ts +27 -0
- package/src/plugins/builtin/fixed-income/pane.tsx +163 -0
- package/src/plugins/builtin/fixed-income/shortcut.ts +52 -0
- package/src/plugins/builtin/futures/index.tsx +436 -0
- package/src/plugins/builtin/futures/model.ts +257 -0
- package/src/plugins/builtin/futures/returns.ts +104 -0
- package/src/plugins/builtin/futures/series.ts +71 -0
- package/src/plugins/builtin/futures/table.tsx +274 -0
- package/src/plugins/builtin/futures/use-board-terms.ts +89 -0
- package/src/plugins/builtin/futures/use-front-returns.ts +120 -0
- package/src/plugins/builtin/futures-curve/client.ts +136 -0
- package/src/plugins/builtin/futures-curve/headless.ts +174 -0
- package/src/plugins/builtin/futures-curve/index.tsx +33 -0
- package/src/plugins/builtin/futures-curve/model.ts +769 -0
- package/src/plugins/builtin/futures-curve/pane.tsx +332 -0
- package/src/plugins/builtin/fx-matrix/client.ts +75 -0
- package/src/plugins/builtin/fx-matrix/direction.ts +81 -0
- package/src/plugins/builtin/fx-matrix/export.ts +33 -0
- package/src/plugins/builtin/fx-matrix/headless.ts +175 -0
- package/src/plugins/builtin/fx-matrix/index.tsx +302 -0
- package/src/plugins/builtin/fx-matrix/live-legs.ts +128 -0
- package/src/plugins/builtin/fx-matrix/pairs.ts +81 -0
- package/src/plugins/builtin/fx-matrix/settings.ts +103 -0
- package/src/plugins/builtin/gpu/board.tsx +169 -0
- package/src/plugins/builtin/gpu/changes.tsx +94 -0
- package/src/plugins/builtin/gpu/client.ts +148 -0
- package/src/plugins/builtin/gpu/equities.tsx +122 -0
- package/src/plugins/builtin/gpu/headless.ts +113 -0
- package/src/plugins/builtin/gpu/history.tsx +142 -0
- package/src/plugins/builtin/gpu/index.tsx +20 -0
- package/src/plugins/builtin/gpu/ladder.tsx +123 -0
- package/src/plugins/builtin/gpu/model.ts +437 -0
- package/src/plugins/builtin/gpu/pane.tsx +81 -0
- package/src/plugins/builtin/gpu/series.ts +38 -0
- package/src/plugins/builtin/help/feedback-tab.tsx +98 -0
- package/src/plugins/builtin/help/function-card.tsx +221 -0
- package/src/plugins/builtin/help/function-index.ts +195 -0
- package/src/plugins/builtin/help/functions-table.tsx +188 -0
- package/src/plugins/builtin/help/index.tsx +431 -0
- package/src/plugins/builtin/help/keybindings-editor.tsx +437 -0
- package/src/plugins/builtin/help/shortcut-model.ts +116 -0
- package/src/plugins/builtin/help/shortcut-table.tsx +130 -0
- package/src/plugins/builtin/help/table-cells.tsx +66 -0
- package/src/plugins/builtin/holders/beneficial-client.ts +231 -0
- package/src/plugins/builtin/holders/beneficial-model.ts +363 -0
- package/src/plugins/builtin/holders/beneficial-report.ts +179 -0
- package/src/plugins/builtin/holders/beneficial-view.tsx +293 -0
- package/src/plugins/builtin/holders/client.ts +58 -0
- package/src/plugins/builtin/holders/format.ts +100 -0
- package/src/plugins/builtin/holders/headless.ts +285 -0
- package/src/plugins/builtin/holders/index-holders.ts +264 -0
- package/src/plugins/builtin/holders/index.tsx +52 -0
- package/src/plugins/builtin/holders/pane.tsx +439 -0
- package/src/plugins/builtin/holders/report-header.ts +171 -0
- package/src/plugins/builtin/holders/report-rows.ts +268 -0
- package/src/plugins/builtin/holders/table-model.ts +86 -0
- package/src/plugins/builtin/holders/thirteenf-match.ts +117 -0
- package/src/plugins/builtin/holders/treemap.tsx +51 -0
- package/src/plugins/builtin/holders/types.ts +17 -0
- package/src/plugins/builtin/insider/amendments.ts +65 -0
- package/src/plugins/builtin/insider/base-values.ts +76 -0
- package/src/plugins/builtin/insider/client.ts +64 -0
- package/src/plugins/builtin/insider/detail.tsx +127 -0
- package/src/plugins/builtin/insider/display.ts +221 -0
- package/src/plugins/builtin/insider/headless.ts +574 -0
- package/src/plugins/builtin/insider/index.tsx +771 -0
- package/src/plugins/builtin/insider/insider-data.ts +176 -0
- package/src/plugins/builtin/insider/insiders.tsx +224 -0
- package/src/plugins/builtin/insider/issuer.ts +79 -0
- package/src/plugins/builtin/insider/model.ts +207 -0
- package/src/plugins/builtin/insider/signals-cells.tsx +52 -0
- package/src/plugins/builtin/insider/signals-client.ts +193 -0
- package/src/plugins/builtin/insider/signals-model.ts +718 -0
- package/src/plugins/builtin/insider/signals.tsx +376 -0
- package/src/plugins/builtin/insider/table-model.ts +248 -0
- package/src/plugins/builtin/insider/table.tsx +82 -0
- package/src/plugins/builtin/ipo-calendar/client.ts +93 -0
- package/src/plugins/builtin/ipo-calendar/headless.ts +170 -0
- package/src/plugins/builtin/ipo-calendar/index.tsx +67 -0
- package/src/plugins/builtin/ipo-calendar/model.ts +389 -0
- package/src/plugins/builtin/ipo-calendar/pane.tsx +248 -0
- package/src/plugins/builtin/iv-history/charts.tsx +64 -0
- package/src/plugins/builtin/iv-history/client.ts +213 -0
- package/src/plugins/builtin/iv-history/events.ts +145 -0
- package/src/plugins/builtin/iv-history/format.ts +64 -0
- package/src/plugins/builtin/iv-history/headless.ts +242 -0
- package/src/plugins/builtin/iv-history/index.tsx +50 -0
- package/src/plugins/builtin/iv-history/model.ts +396 -0
- package/src/plugins/builtin/iv-history/pane.tsx +137 -0
- package/src/plugins/builtin/iv-history/rank.ts +10 -0
- package/src/plugins/builtin/iv-history/screen-pane.tsx +186 -0
- package/src/plugins/builtin/iv-history/series.ts +31 -0
- package/src/plugins/builtin/iv-history/universe.ts +40 -0
- package/src/plugins/builtin/jobs/client.ts +85 -0
- package/src/plugins/builtin/jobs/headless.ts +221 -0
- package/src/plugins/builtin/jobs/index.tsx +88 -0
- package/src/plugins/builtin/jobs/lock-note.ts +27 -0
- package/src/plugins/builtin/jobs/model.ts +332 -0
- package/src/plugins/builtin/jobs/pages.ts +48 -0
- package/src/plugins/builtin/jobs/pane.tsx +781 -0
- package/src/plugins/builtin/jobs/series.ts +19 -0
- package/src/plugins/builtin/jobs/share-bars.tsx +76 -0
- package/src/plugins/builtin/jodi/client.ts +57 -0
- package/src/plugins/builtin/jodi/headless.ts +74 -0
- package/src/plugins/builtin/jodi/index.tsx +32 -0
- package/src/plugins/builtin/jodi/model.ts +50 -0
- package/src/plugins/builtin/jodi/pane.tsx +152 -0
- package/src/plugins/builtin/kelly-sizer/constants.ts +3 -0
- package/src/plugins/builtin/kelly-sizer/fields.ts +195 -0
- package/src/plugins/builtin/kelly-sizer/headless.ts +149 -0
- package/src/plugins/builtin/kelly-sizer/history.ts +82 -0
- package/src/plugins/builtin/kelly-sizer/index.tsx +49 -0
- package/src/plugins/builtin/kelly-sizer/model.ts +562 -0
- package/src/plugins/builtin/kelly-sizer/pane.tsx +650 -0
- package/src/plugins/builtin/kelly-sizer/portfolio.ts +55 -0
- package/src/plugins/builtin/kelly-sizer/sections.tsx +206 -0
- package/src/plugins/builtin/kelly-sizer/state.ts +67 -0
- package/src/plugins/builtin/kelly-sizer/test-support.tsx +165 -0
- package/src/plugins/builtin/kelly-sizer/types.ts +164 -0
- package/src/plugins/builtin/kelly-sizer/view.tsx +22 -0
- package/src/plugins/builtin/layout-manager/index.tsx +306 -0
- package/src/plugins/builtin/macro-day/client.ts +115 -0
- package/src/plugins/builtin/macro-day/headless.ts +72 -0
- package/src/plugins/builtin/macro-day/index.tsx +25 -0
- package/src/plugins/builtin/macro-day/model.ts +209 -0
- package/src/plugins/builtin/macro-day/pane.tsx +170 -0
- package/src/plugins/builtin/macro-day/release-table.ts +40 -0
- package/src/plugins/builtin/macro-day/releases.ts +118 -0
- package/src/plugins/builtin/macro-resources.ts +15 -0
- package/src/plugins/builtin/market-halts/client.ts +114 -0
- package/src/plugins/builtin/market-halts/index.tsx +42 -0
- package/src/plugins/builtin/market-halts/model.ts +361 -0
- package/src/plugins/builtin/market-halts/pane.tsx +240 -0
- package/src/plugins/builtin/market-heatmap/data.ts +117 -0
- package/src/plugins/builtin/market-heatmap/evidence.ts +99 -0
- package/src/plugins/builtin/market-heatmap/headless.ts +154 -0
- package/src/plugins/builtin/market-heatmap/index.tsx +845 -0
- package/src/plugins/builtin/market-heatmap/live.ts +89 -0
- package/src/plugins/builtin/market-heatmap/model.ts +248 -0
- package/src/plugins/builtin/market-heatmap/portfolio.ts +317 -0
- package/src/plugins/builtin/market-movers/client.ts +147 -0
- package/src/plugins/builtin/market-movers/footer.ts +19 -0
- package/src/plugins/builtin/market-movers/headless.ts +188 -0
- package/src/plugins/builtin/market-movers/index.tsx +380 -0
- package/src/plugins/builtin/market-movers/model.ts +370 -0
- package/src/plugins/builtin/market-movers/screener.ts +449 -0
- package/src/plugins/builtin/market-movers/session-body.tsx +258 -0
- package/src/plugins/builtin/market-movers/session-table.ts +98 -0
- package/src/plugins/builtin/market-movers/session.ts +248 -0
- package/src/plugins/builtin/market-movers/table.ts +125 -0
- package/src/plugins/builtin/market-valuation/align.ts +146 -0
- package/src/plugins/builtin/market-valuation/cache.ts +3 -0
- package/src/plugins/builtin/market-valuation/chart-projection.ts +196 -0
- package/src/plugins/builtin/market-valuation/chart-series.ts +59 -0
- package/src/plugins/builtin/market-valuation/client.ts +158 -0
- package/src/plugins/builtin/market-valuation/defs.ts +253 -0
- package/src/plugins/builtin/market-valuation/detail.tsx +93 -0
- package/src/plugins/builtin/market-valuation/headless.ts +172 -0
- package/src/plugins/builtin/market-valuation/index.tsx +83 -0
- package/src/plugins/builtin/market-valuation/indicators.ts +386 -0
- package/src/plugins/builtin/market-valuation/pane.tsx +197 -0
- package/src/plugins/builtin/market-valuation/series.ts +29 -0
- package/src/plugins/builtin/market-valuation/settings.ts +38 -0
- package/src/plugins/builtin/market-valuation/sources.ts +192 -0
- package/src/plugins/builtin/market-valuation/view.ts +154 -0
- package/src/plugins/builtin/market-valuation/zone-scale/desktop.tsx +97 -0
- package/src/plugins/builtin/market-valuation/zone-scale/index.tsx +12 -0
- package/src/plugins/builtin/market-valuation/zone-scale/model.ts +67 -0
- package/src/plugins/builtin/market-valuation/zone-scale/terminal.tsx +94 -0
- package/src/plugins/builtin/members/breadth-pane.tsx +81 -0
- package/src/plugins/builtin/members/client.ts +68 -0
- package/src/plugins/builtin/members/headless.ts +54 -0
- package/src/plugins/builtin/members/index.tsx +20 -0
- package/src/plugins/builtin/members/model.ts +115 -0
- package/src/plugins/builtin/members/pane.tsx +205 -0
- package/src/plugins/builtin/mna/client.ts +154 -0
- package/src/plugins/builtin/mna/detail.tsx +285 -0
- package/src/plugins/builtin/mna/distress/client.ts +326 -0
- package/src/plugins/builtin/mna/distress/detail.tsx +259 -0
- package/src/plugins/builtin/mna/distress/headless.ts +259 -0
- package/src/plugins/builtin/mna/distress/model.ts +479 -0
- package/src/plugins/builtin/mna/distress/pane.tsx +614 -0
- package/src/plugins/builtin/mna/headless.ts +100 -0
- package/src/plugins/builtin/mna/index.tsx +74 -0
- package/src/plugins/builtin/mna/model.ts +282 -0
- package/src/plugins/builtin/mna/pane.tsx +477 -0
- package/src/plugins/builtin/money-markets/client.ts +54 -0
- package/src/plugins/builtin/money-markets/headless.ts +29 -0
- package/src/plugins/builtin/money-markets/index.tsx +20 -0
- package/src/plugins/builtin/money-markets/model.ts +55 -0
- package/src/plugins/builtin/money-markets/pane.tsx +142 -0
- package/src/plugins/builtin/money-markets/series.ts +41 -0
- package/src/plugins/builtin/news/headless.ts +233 -0
- package/src/plugins/builtin/news/index.tsx +233 -0
- package/src/plugins/builtin/news/wire/breaking/filters.ts +110 -0
- package/src/plugins/builtin/news/wire/breaking/notifications.ts +202 -0
- package/src/plugins/builtin/news/wire/categories.ts +172 -0
- package/src/plugins/builtin/news/wire/default-feeds.ts +43 -0
- package/src/plugins/builtin/news/wire/feed-config.ts +251 -0
- package/src/plugins/builtin/news/wire/filter-articles.ts +54 -0
- package/src/plugins/builtin/news/wire/hash.ts +9 -0
- package/src/plugins/builtin/news/wire/index.tsx +252 -0
- package/src/plugins/builtin/news/wire/industry-pane.tsx +183 -0
- package/src/plugins/builtin/news/wire/letters/client.ts +109 -0
- package/src/plugins/builtin/news/wire/letters/model.ts +69 -0
- package/src/plugins/builtin/news/wire/letters/pane.tsx +155 -0
- package/src/plugins/builtin/news/wire/mutes.ts +254 -0
- package/src/plugins/builtin/news/wire/news/command-bar-search.ts +136 -0
- package/src/plugins/builtin/news/wire/news/detail-view.tsx +329 -0
- package/src/plugins/builtin/news/wire/news/footer.ts +78 -0
- package/src/plugins/builtin/news/wire/news/list-search.ts +34 -0
- package/src/plugins/builtin/news/wire/news/pop-out.tsx +158 -0
- package/src/plugins/builtin/news/wire/news/preset-pane.tsx +215 -0
- package/src/plugins/builtin/news/wire/news/query-presets.ts +126 -0
- package/src/plugins/builtin/news/wire/news/table.tsx +422 -0
- package/src/plugins/builtin/news/wire/persisted-articles.ts +123 -0
- package/src/plugins/builtin/news/wire/read-state.ts +29 -0
- package/src/plugins/builtin/news/wire/rss/cli.ts +48 -0
- package/src/plugins/builtin/news/wire/rss/feed-xml.ts +109 -0
- package/src/plugins/builtin/news/wire/rss/managed-feed.ts +20 -0
- package/src/plugins/builtin/news/wire/rss/parser.ts +182 -0
- package/src/plugins/builtin/news/wire/rss/source.ts +191 -0
- package/src/plugins/builtin/notes/cli.ts +172 -0
- package/src/plugins/builtin/notes/export.ts +114 -0
- package/src/plugins/builtin/notes/files.ts +315 -0
- package/src/plugins/builtin/notes/index.tsx +134 -0
- package/src/plugins/builtin/notes/markdown-note-preview.tsx +39 -0
- package/src/plugins/builtin/notes/migration.ts +94 -0
- package/src/plugins/builtin/notes/model.ts +36 -0
- package/src/plugins/builtin/notes/owner.tsx +131 -0
- package/src/plugins/builtin/notes/quick-notes-pane.tsx +503 -0
- package/src/plugins/builtin/notes/store.ts +314 -0
- package/src/plugins/builtin/notes/text-state.ts +11 -0
- package/src/plugins/builtin/notes/ticker-notes-tab.tsx +222 -0
- package/src/plugins/builtin/openfda/client.ts +408 -0
- package/src/plugins/builtin/openfda/index.tsx +72 -0
- package/src/plugins/builtin/openfda/model.ts +163 -0
- package/src/plugins/builtin/openfda/pane.tsx +426 -0
- package/src/plugins/builtin/openfda/types.ts +101 -0
- package/src/plugins/builtin/options/analytics-as-of.tsx +41 -0
- package/src/plugins/builtin/options/analytics.ts +234 -0
- package/src/plugins/builtin/options/calc-seed.ts +65 -0
- package/src/plugins/builtin/options/carry.ts +131 -0
- package/src/plugins/builtin/options/enrichment-client.ts +70 -0
- package/src/plugins/builtin/options/enrichment-model.ts +168 -0
- package/src/plugins/builtin/options/enrichment.ts +127 -0
- package/src/plugins/builtin/options/expiry-catalogue.ts +43 -0
- package/src/plugins/builtin/options/footer.ts +143 -0
- package/src/plugins/builtin/options/index.tsx +159 -0
- package/src/plugins/builtin/options/live-quotes.ts +295 -0
- package/src/plugins/builtin/options/market-reference.ts +92 -0
- package/src/plugins/builtin/options/model-spot.ts +163 -0
- package/src/plugins/builtin/options/open-interest-as-of.ts +74 -0
- package/src/plugins/builtin/options/quote-context.tsx +29 -0
- package/src/plugins/builtin/options/strike-window.ts +184 -0
- package/src/plugins/builtin/options/table.ts +362 -0
- package/src/plugins/builtin/options/types.ts +57 -0
- package/src/plugins/builtin/options/view.tsx +1042 -0
- package/src/plugins/builtin/options-calculator/binomial.ts +332 -0
- package/src/plugins/builtin/options-calculator/evidence.ts +228 -0
- package/src/plugins/builtin/options-calculator/headless.ts +137 -0
- package/src/plugins/builtin/options-calculator/index.tsx +37 -0
- package/src/plugins/builtin/options-calculator/inputs.ts +79 -0
- package/src/plugins/builtin/options-calculator/model.ts +119 -0
- package/src/plugins/builtin/options-calculator/pane.tsx +429 -0
- package/src/plugins/builtin/options-calculator/premium-history.ts +34 -0
- package/src/plugins/builtin/options-calculator/surface.ts +194 -0
- package/src/plugins/builtin/options-positioning/client.ts +138 -0
- package/src/plugins/builtin/options-positioning/headless.ts +242 -0
- package/src/plugins/builtin/options-positioning/index.tsx +72 -0
- package/src/plugins/builtin/options-positioning/model.ts +268 -0
- package/src/plugins/builtin/options-positioning/pane.tsx +654 -0
- package/src/plugins/builtin/options-scenario/charts.tsx +47 -0
- package/src/plugins/builtin/options-scenario/client.ts +576 -0
- package/src/plugins/builtin/options-scenario/collar.ts +143 -0
- package/src/plugins/builtin/options-scenario/csp-screen-headless.ts +127 -0
- package/src/plugins/builtin/options-scenario/csp-screen-pane.tsx +165 -0
- package/src/plugins/builtin/options-scenario/csp-screen.ts +258 -0
- package/src/plugins/builtin/options-scenario/csp.ts +248 -0
- package/src/plugins/builtin/options-scenario/editor.tsx +139 -0
- package/src/plugins/builtin/options-scenario/evidence.ts +127 -0
- package/src/plugins/builtin/options-scenario/freshness.ts +27 -0
- package/src/plugins/builtin/options-scenario/headless.ts +208 -0
- package/src/plugins/builtin/options-scenario/hedge.ts +291 -0
- package/src/plugins/builtin/options-scenario/index.tsx +62 -0
- package/src/plugins/builtin/options-scenario/live.ts +50 -0
- package/src/plugins/builtin/options-scenario/model.ts +407 -0
- package/src/plugins/builtin/options-scenario/pane.tsx +475 -0
- package/src/plugins/builtin/options-scenario/state.ts +71 -0
- package/src/plugins/builtin/pe-band/client.ts +133 -0
- package/src/plugins/builtin/pe-band/headless.ts +69 -0
- package/src/plugins/builtin/pe-band/index.tsx +20 -0
- package/src/plugins/builtin/pe-band/model.ts +334 -0
- package/src/plugins/builtin/pe-band/pane.tsx +177 -0
- package/src/plugins/builtin/pe-band/report-dates.ts +82 -0
- package/src/plugins/builtin/perps/client.ts +272 -0
- package/src/plugins/builtin/perps/equity-identity.ts +16 -0
- package/src/plugins/builtin/perps/equity-row.tsx +76 -0
- package/src/plugins/builtin/perps/freshness.ts +71 -0
- package/src/plugins/builtin/perps/headless.ts +207 -0
- package/src/plugins/builtin/perps/index.tsx +33 -0
- package/src/plugins/builtin/perps/list-perpetuals.ts +139 -0
- package/src/plugins/builtin/perps/live-rows.ts +168 -0
- package/src/plugins/builtin/perps/markets-section.tsx +154 -0
- package/src/plugins/builtin/perps/model.ts +335 -0
- package/src/plugins/builtin/perps/open-market.ts +15 -0
- package/src/plugins/builtin/perps/pane.tsx +466 -0
- package/src/plugins/builtin/perps/series.ts +76 -0
- package/src/plugins/builtin/perps/venue-markets.ts +96 -0
- package/src/plugins/builtin/plugin-marketplace/index.tsx +44 -0
- package/src/plugins/builtin/plugin-marketplace/pane.tsx +1059 -0
- package/src/plugins/builtin/plugin-module.ts +205 -0
- package/src/plugins/builtin/portfolio-list/account-metrics.ts +206 -0
- package/src/plugins/builtin/portfolio-list/cached-account.ts +42 -0
- package/src/plugins/builtin/portfolio-list/cell-version.ts +79 -0
- package/src/plugins/builtin/portfolio-list/cli/bulk-symbols.ts +330 -0
- package/src/plugins/builtin/portfolio-list/cli/import-13f.ts +109 -0
- package/src/plugins/builtin/portfolio-list/cli/portfolio-command.ts +1151 -0
- package/src/plugins/builtin/portfolio-list/cli/render.ts +1402 -0
- package/src/plugins/builtin/portfolio-list/cli/shared.ts +151 -0
- package/src/plugins/builtin/portfolio-list/cli/watchlist-command.ts +297 -0
- package/src/plugins/builtin/portfolio-list/grid.tsx +288 -0
- package/src/plugins/builtin/portfolio-list/header.tsx +65 -0
- package/src/plugins/builtin/portfolio-list/headless.ts +552 -0
- package/src/plugins/builtin/portfolio-list/imported-from.ts +8 -0
- package/src/plugins/builtin/portfolio-list/income.ts +307 -0
- package/src/plugins/builtin/portfolio-list/index.tsx +125 -0
- package/src/plugins/builtin/portfolio-list/metrics.ts +25 -0
- package/src/plugins/builtin/portfolio-list/pane/data.ts +277 -0
- package/src/plugins/builtin/portfolio-list/pane/futures-terms.ts +58 -0
- package/src/plugins/builtin/portfolio-list/pane/index.tsx +843 -0
- package/src/plugins/builtin/portfolio-list/pane/purchase-date-fx.ts +46 -0
- package/src/plugins/builtin/portfolio-list/pane/remove-ticker.ts +85 -0
- package/src/plugins/builtin/portfolio-list/pane/streaming.ts +328 -0
- package/src/plugins/builtin/portfolio-list/pane/supplemental.ts +300 -0
- package/src/plugins/builtin/portfolio-list/quick-add/index.tsx +435 -0
- package/src/plugins/builtin/portfolio-list/quick-add/resolution.ts +208 -0
- package/src/plugins/builtin/portfolio-list/row-actions.ts +8 -0
- package/src/plugins/builtin/portfolio-list/settings.ts +409 -0
- package/src/plugins/builtin/portfolio-list/since-last-seen.ts +197 -0
- package/src/plugins/builtin/portfolio-list/summary/index.tsx +530 -0
- package/src/plugins/builtin/portfolio-list/summary/live-accounts.ts +167 -0
- package/src/plugins/builtin/portfolio-list/summary/totals.ts +280 -0
- package/src/plugins/builtin/portfolio-list/table.tsx +243 -0
- package/src/plugins/builtin/portfolio-list/use-column-clock.ts +41 -0
- package/src/plugins/builtin/portfolio-list/use-cursor-neighbor-prefetch.ts +87 -0
- package/src/plugins/builtin/portfolio-list/use-throttled-cursor-symbol.ts +26 -0
- package/src/plugins/builtin/portfolio-list/use-throttled-memo.ts +59 -0
- package/src/plugins/builtin/portfolio-list/use-throttled-ticker-order.ts +78 -0
- package/src/plugins/builtin/power/client.ts +119 -0
- package/src/plugins/builtin/power/detail.tsx +82 -0
- package/src/plugins/builtin/power/evidence.ts +153 -0
- package/src/plugins/builtin/power/gas-client.ts +110 -0
- package/src/plugins/builtin/power/gas-model.ts +194 -0
- package/src/plugins/builtin/power/gas.tsx +149 -0
- package/src/plugins/builtin/power/generation.tsx +37 -0
- package/src/plugins/builtin/power/headless.ts +116 -0
- package/src/plugins/builtin/power/index.tsx +51 -0
- package/src/plugins/builtin/power/model.ts +160 -0
- package/src/plugins/builtin/power/pane.tsx +248 -0
- package/src/plugins/builtin/power/prices-client.ts +139 -0
- package/src/plugins/builtin/power/prices-headless.ts +206 -0
- package/src/plugins/builtin/power/prices-model.ts +103 -0
- package/src/plugins/builtin/power/prices.tsx +209 -0
- package/src/plugins/builtin/power/query.ts +25 -0
- package/src/plugins/builtin/primary-dealers/client.ts +183 -0
- package/src/plugins/builtin/primary-dealers/headless.ts +78 -0
- package/src/plugins/builtin/primary-dealers/index.tsx +18 -0
- package/src/plugins/builtin/primary-dealers/model.ts +256 -0
- package/src/plugins/builtin/primary-dealers/pane.tsx +269 -0
- package/src/plugins/builtin/rate-path/client.ts +52 -0
- package/src/plugins/builtin/rate-path/headless.ts +93 -0
- package/src/plugins/builtin/rate-path/index.tsx +18 -0
- package/src/plugins/builtin/rate-path/model.ts +127 -0
- package/src/plugins/builtin/rate-path/pane.tsx +214 -0
- package/src/plugins/builtin/realized-vol/chart-model.ts +70 -0
- package/src/plugins/builtin/realized-vol/charts.tsx +44 -0
- package/src/plugins/builtin/realized-vol/client.ts +108 -0
- package/src/plugins/builtin/realized-vol/evidence.ts +103 -0
- package/src/plugins/builtin/realized-vol/headless.ts +86 -0
- package/src/plugins/builtin/realized-vol/index.tsx +34 -0
- package/src/plugins/builtin/realized-vol/model.ts +149 -0
- package/src/plugins/builtin/realized-vol/pane.tsx +211 -0
- package/src/plugins/builtin/realized-vol/settings.ts +16 -0
- package/src/plugins/builtin/relative-rotation/client.ts +190 -0
- package/src/plugins/builtin/relative-rotation/headless.ts +95 -0
- package/src/plugins/builtin/relative-rotation/index.tsx +91 -0
- package/src/plugins/builtin/relative-rotation/model.ts +325 -0
- package/src/plugins/builtin/relative-rotation/pane.tsx +385 -0
- package/src/plugins/builtin/research/analyst-headless.ts +200 -0
- package/src/plugins/builtin/research/analyst-model.ts +557 -0
- package/src/plugins/builtin/research/analyst-pane.tsx +319 -0
- package/src/plugins/builtin/research/client.ts +12 -0
- package/src/plugins/builtin/research/corporate-actions-pane.tsx +715 -0
- package/src/plugins/builtin/research/equity-diagnostic-pane.tsx +597 -0
- package/src/plugins/builtin/research/event-model.ts +523 -0
- package/src/plugins/builtin/research/event-sources.ts +72 -0
- package/src/plugins/builtin/research/events-headless.ts +82 -0
- package/src/plugins/builtin/research/headless-schema.ts +48 -0
- package/src/plugins/builtin/research/headless.ts +138 -0
- package/src/plugins/builtin/research/index.tsx +183 -0
- package/src/plugins/builtin/research/relative-valuation-basis.ts +58 -0
- package/src/plugins/builtin/research/relative-valuation-columns.ts +340 -0
- package/src/plugins/builtin/research/relative-valuation-currency.ts +171 -0
- package/src/plugins/builtin/research/relative-valuation-headless.ts +235 -0
- package/src/plugins/builtin/research/relative-valuation-model.ts +212 -0
- package/src/plugins/builtin/research/relative-valuation-pane.tsx +367 -0
- package/src/plugins/builtin/research/relative-valuation-peers.ts +302 -0
- package/src/plugins/builtin/research-search/article.ts +65 -0
- package/src/plugins/builtin/research-search/command-bar-search.ts +175 -0
- package/src/plugins/builtin/research-search/data.ts +116 -0
- package/src/plugins/builtin/research-search/document-view.tsx +74 -0
- package/src/plugins/builtin/research-search/focus-handoff.ts +47 -0
- package/src/plugins/builtin/research-search/index.tsx +87 -0
- package/src/plugins/builtin/research-search/model.ts +266 -0
- package/src/plugins/builtin/research-search/pane.tsx +690 -0
- package/src/plugins/builtin/research-search/saved-view.tsx +172 -0
- package/src/plugins/builtin/research-search/snippet-text.tsx +35 -0
- package/src/plugins/builtin/research-search/snippet.ts +105 -0
- package/src/plugins/builtin/revenue-breakdown/bars.tsx +113 -0
- package/src/plugins/builtin/revenue-breakdown/client.ts +121 -0
- package/src/plugins/builtin/revenue-breakdown/headless.ts +89 -0
- package/src/plugins/builtin/revenue-breakdown/index.tsx +60 -0
- package/src/plugins/builtin/revenue-breakdown/model.ts +157 -0
- package/src/plugins/builtin/revenue-breakdown/pane.tsx +293 -0
- package/src/plugins/builtin/reverse-dcf/client.ts +36 -0
- package/src/plugins/builtin/reverse-dcf/headless.ts +69 -0
- package/src/plugins/builtin/reverse-dcf/index.tsx +23 -0
- package/src/plugins/builtin/reverse-dcf/model.ts +174 -0
- package/src/plugins/builtin/reverse-dcf/pane.tsx +130 -0
- package/src/plugins/builtin/risk-factors/data.ts +135 -0
- package/src/plugins/builtin/risk-factors/headless.ts +82 -0
- package/src/plugins/builtin/risk-factors/index.tsx +93 -0
- package/src/plugins/builtin/risk-factors/pane.tsx +308 -0
- package/src/plugins/builtin/scanner/denied.tsx +20 -0
- package/src/plugins/builtin/scanner/feed.ts +118 -0
- package/src/plugins/builtin/scanner/flow-history.ts +98 -0
- package/src/plugins/builtin/scanner/flow-model.ts +272 -0
- package/src/plugins/builtin/scanner/flow-pane.tsx +260 -0
- package/src/plugins/builtin/scanner/headless.ts +249 -0
- package/src/plugins/builtin/scanner/hilo-bars.tsx +65 -0
- package/src/plugins/builtin/scanner/hilo-model.ts +96 -0
- package/src/plugins/builtin/scanner/hilo-pane.tsx +208 -0
- package/src/plugins/builtin/scanner/index.ts +142 -0
- package/src/plugins/builtin/scanner/live-condition-editor.tsx +222 -0
- package/src/plugins/builtin/scanner/live-feed.ts +168 -0
- package/src/plugins/builtin/scanner/live-headless.ts +114 -0
- package/src/plugins/builtin/scanner/live-model.ts +351 -0
- package/src/plugins/builtin/scanner/live-pane.tsx +677 -0
- package/src/plugins/builtin/scanner/live-track.ts +186 -0
- package/src/plugins/builtin/scanner/lock-note.ts +18 -0
- package/src/plugins/builtin/seasonality/client.ts +76 -0
- package/src/plugins/builtin/seasonality/headless.ts +64 -0
- package/src/plugins/builtin/seasonality/index.tsx +20 -0
- package/src/plugins/builtin/seasonality/model.ts +243 -0
- package/src/plugins/builtin/seasonality/pane.tsx +229 -0
- package/src/plugins/builtin/sec/client.ts +16 -0
- package/src/plugins/builtin/sec/command-bar-search.ts +227 -0
- package/src/plugins/builtin/sec/filing-content.ts +160 -0
- package/src/plugins/builtin/sec/filing-display.tsx +53 -0
- package/src/plugins/builtin/sec/filing-documents.ts +65 -0
- package/src/plugins/builtin/sec/forms.ts +75 -0
- package/src/plugins/builtin/sec/fund-abroad.ts +32 -0
- package/src/plugins/builtin/sec/fund-facts-view.tsx +53 -0
- package/src/plugins/builtin/sec/fund-facts.ts +388 -0
- package/src/plugins/builtin/sec/headless.ts +294 -0
- package/src/plugins/builtin/sec/index.tsx +690 -0
- package/src/plugins/builtin/sec/model.ts +266 -0
- package/src/plugins/builtin/sec/row-summaries.ts +105 -0
- package/src/plugins/builtin/sectors/client.ts +182 -0
- package/src/plugins/builtin/sectors/headless.ts +137 -0
- package/src/plugins/builtin/sectors/index.tsx +454 -0
- package/src/plugins/builtin/sectors/move-bar.tsx +21 -0
- package/src/plugins/builtin/sectors/sector-data.ts +75 -0
- package/src/plugins/builtin/sectors/sector-model.ts +536 -0
- package/src/plugins/builtin/series-inventory.ts +99 -0
- package/src/plugins/builtin/shared/broker-reconnect.ts +190 -0
- package/src/plugins/builtin/shared/cloud-denied.ts +47 -0
- package/src/plugins/builtin/shared/cloud-resource.ts +69 -0
- package/src/plugins/builtin/shared/cloud-upgrade.ts +366 -0
- package/src/plugins/builtin/shared/command-tab.ts +69 -0
- package/src/plugins/builtin/shared/crypto-pair.ts +14 -0
- package/src/plugins/builtin/shared/earnings-calendar.ts +375 -0
- package/src/plugins/builtin/shared/earnings-estimate-basis.ts +71 -0
- package/src/plugins/builtin/shared/earnings-report.ts +108 -0
- package/src/plugins/builtin/shared/filing-year-reader.tsx +123 -0
- package/src/plugins/builtin/shared/fred-points.ts +20 -0
- package/src/plugins/builtin/shared/free-preview.ts +47 -0
- package/src/plugins/builtin/shared/free-routes.ts +24 -0
- package/src/plugins/builtin/shared/futures-session.ts +34 -0
- package/src/plugins/builtin/shared/fx-rate-freshness.ts +123 -0
- package/src/plugins/builtin/shared/headless-market-data.ts +72 -0
- package/src/plugins/builtin/shared/headless-options.ts +54 -0
- package/src/plugins/builtin/shared/history-span.ts +55 -0
- package/src/plugins/builtin/shared/job-posting.ts +129 -0
- package/src/plugins/builtin/shared/locked-rows.tsx +58 -0
- package/src/plugins/builtin/shared/macro-releases.ts +65 -0
- package/src/plugins/builtin/shared/members-menu.tsx +260 -0
- package/src/plugins/builtin/shared/mine-tickers.ts +19 -0
- package/src/plugins/builtin/shared/move-rank.ts +108 -0
- package/src/plugins/builtin/shared/open-description.ts +29 -0
- package/src/plugins/builtin/shared/pane-request.ts +35 -0
- package/src/plugins/builtin/shared/pro-feature-wall.tsx +56 -0
- package/src/plugins/builtin/shared/pro-lock-note.ts +140 -0
- package/src/plugins/builtin/shared/public-pane.ts +9 -0
- package/src/plugins/builtin/shared/report-freshness.ts +148 -0
- package/src/plugins/builtin/shared/research-cells.tsx +102 -0
- package/src/plugins/builtin/shared/research-cloud-session.ts +18 -0
- package/src/plugins/builtin/shared/research-trading.tsx +85 -0
- package/src/plugins/builtin/shared/scanner-capture.ts +98 -0
- package/src/plugins/builtin/shared/series-cache.ts +140 -0
- package/src/plugins/builtin/shared/series-detail-chart.tsx +171 -0
- package/src/plugins/builtin/shared/series-list-detail.tsx +223 -0
- package/src/plugins/builtin/shared/series-warning.ts +5 -0
- package/src/plugins/builtin/shared/stat-transform.ts +94 -0
- package/src/plugins/builtin/shared/ticker-choice.tsx +34 -0
- package/src/plugins/builtin/shared/ticker-request.ts +71 -0
- package/src/plugins/builtin/shared/ticker-surface.ts +149 -0
- package/src/plugins/builtin/shared/treasury-cutoffs.ts +15 -0
- package/src/plugins/builtin/shared/trend.ts +81 -0
- package/src/plugins/builtin/shared/use-quote-board.ts +694 -0
- package/src/plugins/builtin/shared/volatility/index.ts +4 -0
- package/src/plugins/builtin/shared/volatility/live-session.ts +185 -0
- package/src/plugins/builtin/shared/volatility/options.ts +212 -0
- package/src/plugins/builtin/shared/volatility/pricing.ts +217 -0
- package/src/plugins/builtin/shared/volatility/smile.ts +413 -0
- package/src/plugins/builtin/shared/volatility-indices.ts +32 -0
- package/src/plugins/builtin/shared/wall-teaser-catalog.ts +80 -0
- package/src/plugins/builtin/shared/wall-teaser.tsx +192 -0
- package/src/plugins/builtin/shared/wall-view-lifecycle.ts +43 -0
- package/src/plugins/builtin/short-interest/client.ts +48 -0
- package/src/plugins/builtin/short-interest/headless.ts +166 -0
- package/src/plugins/builtin/short-interest/index.tsx +143 -0
- package/src/plugins/builtin/short-interest/model.ts +265 -0
- package/src/plugins/builtin/short-interest/pane.tsx +178 -0
- package/src/plugins/builtin/short-interest/publications-client.ts +82 -0
- package/src/plugins/builtin/short-interest/publications-headless.ts +29 -0
- package/src/plugins/builtin/short-interest/publications-model.ts +50 -0
- package/src/plugins/builtin/short-interest/publications-pane.tsx +66 -0
- package/src/plugins/builtin/short-interest/schedule.ts +140 -0
- package/src/plugins/builtin/short-interest/series.ts +36 -0
- package/src/plugins/builtin/short-interest/surface.tsx +49 -0
- package/src/plugins/builtin/short-interest/types.ts +16 -0
- package/src/plugins/builtin/short-interest/watch-client.ts +122 -0
- package/src/plugins/builtin/short-interest/watch-headless.ts +56 -0
- package/src/plugins/builtin/short-interest/watch-model.ts +214 -0
- package/src/plugins/builtin/short-interest/watch-pane.tsx +173 -0
- package/src/plugins/builtin/short-volume/client.ts +86 -0
- package/src/plugins/builtin/short-volume/headless.ts +31 -0
- package/src/plugins/builtin/short-volume/index.tsx +20 -0
- package/src/plugins/builtin/short-volume/model.ts +53 -0
- package/src/plugins/builtin/short-volume/pane.tsx +108 -0
- package/src/plugins/builtin/short-volume/series.ts +23 -0
- package/src/plugins/builtin/social-mentions/client.ts +93 -0
- package/src/plugins/builtin/social-mentions/headless.ts +33 -0
- package/src/plugins/builtin/social-mentions/index.tsx +24 -0
- package/src/plugins/builtin/social-mentions/lock-note.ts +15 -0
- package/src/plugins/builtin/social-mentions/model.ts +92 -0
- package/src/plugins/builtin/social-mentions/pane.tsx +158 -0
- package/src/plugins/builtin/social-mentions/series.ts +23 -0
- package/src/plugins/builtin/supply-chain/client.ts +113 -0
- package/src/plugins/builtin/supply-chain/disclosure-quote.tsx +21 -0
- package/src/plugins/builtin/supply-chain/evidence.ts +90 -0
- package/src/plugins/builtin/supply-chain/flow-layout.ts +134 -0
- package/src/plugins/builtin/supply-chain/flow.tsx +366 -0
- package/src/plugins/builtin/supply-chain/graph-client.ts +86 -0
- package/src/plugins/builtin/supply-chain/graph-evidence.ts +25 -0
- package/src/plugins/builtin/supply-chain/graph-model.ts +53 -0
- package/src/plugins/builtin/supply-chain/graph-pane.tsx +221 -0
- package/src/plugins/builtin/supply-chain/graph.tsx +167 -0
- package/src/plugins/builtin/supply-chain/headless.ts +185 -0
- package/src/plugins/builtin/supply-chain/index.tsx +26 -0
- package/src/plugins/builtin/supply-chain/model.ts +292 -0
- package/src/plugins/builtin/supply-chain/pane.tsx +373 -0
- package/src/plugins/builtin/supply-chain/row-evidence.tsx +97 -0
- package/src/plugins/builtin/supply-chain/trust.ts +34 -0
- package/src/plugins/builtin/themes/client.ts +39 -0
- package/src/plugins/builtin/themes/headless.ts +129 -0
- package/src/plugins/builtin/themes/model.ts +199 -0
- package/src/plugins/builtin/themes/pane.tsx +166 -0
- package/src/plugins/builtin/thirteenf/api.ts +434 -0
- package/src/plugins/builtin/thirteenf/data.ts +593 -0
- package/src/plugins/builtin/thirteenf/format.ts +56 -0
- package/src/plugins/builtin/thirteenf/headless.ts +927 -0
- package/src/plugins/builtin/thirteenf/index.tsx +94 -0
- package/src/plugins/builtin/thirteenf/model.ts +933 -0
- package/src/plugins/builtin/thirteenf/overlap-pane.tsx +207 -0
- package/src/plugins/builtin/thirteenf/overlap.ts +123 -0
- package/src/plugins/builtin/thirteenf/pane.tsx +781 -0
- package/src/plugins/builtin/thirteenf/report-notes.ts +329 -0
- package/src/plugins/builtin/thirteenf/signals-pane.tsx +153 -0
- package/src/plugins/builtin/thirteenf/signals.ts +74 -0
- package/src/plugins/builtin/thirteenf/table.ts +196 -0
- package/src/plugins/builtin/thirteenf/types.ts +254 -0
- package/src/plugins/builtin/ticker-detail/adr-pair/headless.ts +123 -0
- package/src/plugins/builtin/ticker-detail/adr-pair/model.ts +132 -0
- package/src/plugins/builtin/ticker-detail/adr-pair/tab.tsx +87 -0
- package/src/plugins/builtin/ticker-detail/data-panes/historical-prices.tsx +394 -0
- package/src/plugins/builtin/ticker-detail/data-panes/history-bars.ts +112 -0
- package/src/plugins/builtin/ticker-detail/data-panes/returns-history.ts +178 -0
- package/src/plugins/builtin/ticker-detail/data-panes/returns-model.ts +363 -0
- package/src/plugins/builtin/ticker-detail/data-panes/returns-pane.tsx +324 -0
- package/src/plugins/builtin/ticker-detail/financials/aggregation.ts +322 -0
- package/src/plugins/builtin/ticker-detail/financials/model.ts +643 -0
- package/src/plugins/builtin/ticker-detail/financials/offerings.ts +56 -0
- package/src/plugins/builtin/ticker-detail/financials/pane.tsx +29 -0
- package/src/plugins/builtin/ticker-detail/financials/period-end-history.ts +44 -0
- package/src/plugins/builtin/ticker-detail/financials/ratio-table.tsx +175 -0
- package/src/plugins/builtin/ticker-detail/financials/ratios.ts +830 -0
- package/src/plugins/builtin/ticker-detail/financials/schema.ts +389 -0
- package/src/plugins/builtin/ticker-detail/financials/tab.tsx +592 -0
- package/src/plugins/builtin/ticker-detail/headless-schema.ts +111 -0
- package/src/plugins/builtin/ticker-detail/headless.ts +576 -0
- package/src/plugins/builtin/ticker-detail/index.tsx +248 -0
- package/src/plugins/builtin/ticker-detail/overview/components.tsx +361 -0
- package/src/plugins/builtin/ticker-detail/overview/dividend.ts +60 -0
- package/src/plugins/builtin/ticker-detail/overview/futures-contract.ts +31 -0
- package/src/plugins/builtin/ticker-detail/overview/model.ts +446 -0
- package/src/plugins/builtin/ticker-detail/overview/option-contract.ts +64 -0
- package/src/plugins/builtin/ticker-detail/overview/pane.tsx +60 -0
- package/src/plugins/builtin/ticker-detail/overview/types.ts +40 -0
- package/src/plugins/builtin/ticker-detail/overview-tab.tsx +618 -0
- package/src/plugins/builtin/ticker-detail/pane.tsx +419 -0
- package/src/plugins/builtin/ticker-detail/quote-footer.ts +48 -0
- package/src/plugins/builtin/ticker-detail/quote-monitor/card.tsx +489 -0
- package/src/plugins/builtin/ticker-detail/quote-monitor/index.tsx +319 -0
- package/src/plugins/builtin/ticker-detail/research-tab-keys.tsx +58 -0
- package/src/plugins/builtin/ticker-detail/research-tab-navigation.tsx +14 -0
- package/src/plugins/builtin/ticker-detail/research-tabs.ts +43 -0
- package/src/plugins/builtin/ticker-detail/settings.ts +203 -0
- package/src/plugins/builtin/time-sales/client.ts +84 -0
- package/src/plugins/builtin/time-sales/headless.ts +117 -0
- package/src/plugins/builtin/time-sales/index.tsx +18 -0
- package/src/plugins/builtin/time-sales/model.ts +125 -0
- package/src/plugins/builtin/time-sales/pane.tsx +177 -0
- package/src/plugins/builtin/time-sales/snapshot-client.ts +28 -0
- package/src/plugins/builtin/time-sales/use-tape.ts +58 -0
- package/src/plugins/builtin/time-sales/window.ts +128 -0
- package/src/plugins/builtin/trace-bonds/client.ts +525 -0
- package/src/plugins/builtin/trace-bonds/headless.ts +107 -0
- package/src/plugins/builtin/trace-bonds/index.tsx +35 -0
- package/src/plugins/builtin/trace-bonds/model.ts +117 -0
- package/src/plugins/builtin/trace-bonds/pane.tsx +209 -0
- package/src/plugins/builtin/treasury-auctions/cache.ts +115 -0
- package/src/plugins/builtin/treasury-auctions/client.ts +230 -0
- package/src/plugins/builtin/treasury-auctions/headless.ts +172 -0
- package/src/plugins/builtin/treasury-auctions/index.tsx +88 -0
- package/src/plugins/builtin/treasury-auctions/model.ts +379 -0
- package/src/plugins/builtin/treasury-auctions/pane.tsx +413 -0
- package/src/plugins/builtin/treasury-auctions/types.ts +72 -0
- package/src/plugins/builtin/treasury-daily/client.ts +96 -0
- package/src/plugins/builtin/treasury-daily/headless.ts +69 -0
- package/src/plugins/builtin/treasury-daily/index.tsx +17 -0
- package/src/plugins/builtin/treasury-daily/model.ts +69 -0
- package/src/plugins/builtin/treasury-daily/pane.tsx +140 -0
- package/src/plugins/builtin/vol-surface/charts.tsx +117 -0
- package/src/plugins/builtin/vol-surface/client.ts +270 -0
- package/src/plugins/builtin/vol-surface/evidence.ts +207 -0
- package/src/plugins/builtin/vol-surface/headless.ts +286 -0
- package/src/plugins/builtin/vol-surface/heat-grid.tsx +113 -0
- package/src/plugins/builtin/vol-surface/index.tsx +47 -0
- package/src/plugins/builtin/vol-surface/live.ts +60 -0
- package/src/plugins/builtin/vol-surface/model.ts +661 -0
- package/src/plugins/builtin/vol-surface/pane.tsx +580 -0
- package/src/plugins/builtin/vol-surface/raster.ts +113 -0
- package/src/plugins/builtin/vol-surface/stored.ts +170 -0
- package/src/plugins/builtin/vol-surface/surface.tsx +59 -0
- package/src/plugins/builtin/vol-surface/tables.ts +166 -0
- package/src/plugins/builtin/volatility/chart-model.ts +163 -0
- package/src/plugins/builtin/volatility/charts.tsx +40 -0
- package/src/plugins/builtin/volatility/client.ts +256 -0
- package/src/plugins/builtin/volatility/dvol.ts +46 -0
- package/src/plugins/builtin/volatility/evidence.ts +144 -0
- package/src/plugins/builtin/volatility/headless.ts +78 -0
- package/src/plugins/builtin/volatility/index.tsx +27 -0
- package/src/plugins/builtin/volatility/model.ts +443 -0
- package/src/plugins/builtin/volatility/pane.tsx +254 -0
- package/src/plugins/builtin/volatility/series.ts +119 -0
- package/src/plugins/builtin/world-indices/client.ts +58 -0
- package/src/plugins/builtin/world-indices/footer.ts +25 -0
- package/src/plugins/builtin/world-indices/headless.ts +148 -0
- package/src/plugins/builtin/world-indices/index.tsx +189 -0
- package/src/plugins/builtin/world-indices/indices.ts +63 -0
- package/src/plugins/builtin/world-indices/model.ts +94 -0
- package/src/plugins/builtin/world-indices/table.tsx +105 -0
- package/src/plugins/builtin/world-venue-map/basemap-layer.tsx +161 -0
- package/src/plugins/builtin/world-venue-map/basemap.ts +237 -0
- package/src/plugins/builtin/world-venue-map/chokepoint-chart.ts +40 -0
- package/src/plugins/builtin/world-venue-map/client.ts +45 -0
- package/src/plugins/builtin/world-venue-map/country-labels.ts +78 -0
- package/src/plugins/builtin/world-venue-map/entity-detail.tsx +160 -0
- package/src/plugins/builtin/world-venue-map/entity-table.ts +59 -0
- package/src/plugins/builtin/world-venue-map/evidence.ts +77 -0
- package/src/plugins/builtin/world-venue-map/feed.ts +293 -0
- package/src/plugins/builtin/world-venue-map/geo-draw.tsx +249 -0
- package/src/plugins/builtin/world-venue-map/geo-series.ts +255 -0
- package/src/plugins/builtin/world-venue-map/geo-svg.tsx +448 -0
- package/src/plugins/builtin/world-venue-map/headless.ts +166 -0
- package/src/plugins/builtin/world-venue-map/ids.ts +1 -0
- package/src/plugins/builtin/world-venue-map/index.ts +82 -0
- package/src/plugins/builtin/world-venue-map/layered-pane.tsx +576 -0
- package/src/plugins/builtin/world-venue-map/layers.ts +435 -0
- package/src/plugins/builtin/world-venue-map/map-symbols.ts +220 -0
- package/src/plugins/builtin/world-venue-map/map.tsx +1122 -0
- package/src/plugins/builtin/world-venue-map/model.ts +321 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/index.chunk.ts +202 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/labels.chunk.ts +244 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e000s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e015s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e030s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e045s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e060s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e075s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e090s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e105s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e120s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e135s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e150s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/e165s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w015s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w030s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w045s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w060s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w075s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w090s60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w105s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w120s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w135n30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w135n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w135n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w135n75.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w135s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w150n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w150n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w150s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w150s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w165n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w165n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w165n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w165n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w165s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w165s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180n00.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180n15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180n45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180n60.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180s15.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180s30.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/tiles/w180s45.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/natural-earth/world-50m.chunk.ts +4 -0
- package/src/plugins/builtin/world-venue-map/pane.tsx +260 -0
- package/src/plugins/builtin/world-venue-map/use-geo.ts +55 -0
- package/src/plugins/builtin/world-venue-map/venue-header.tsx +43 -0
- package/src/plugins/builtin/world-venue-map/world-outlines.ts +2 -0
- package/src/plugins/builtin/yield-curve/chart.ts +159 -0
- package/src/plugins/builtin/yield-curve/client.ts +25 -0
- package/src/plugins/builtin/yield-curve/curves.ts +225 -0
- package/src/plugins/builtin/yield-curve/forward.ts +102 -0
- package/src/plugins/builtin/yield-curve/headless.ts +287 -0
- package/src/plugins/builtin/yield-curve/history.ts +166 -0
- package/src/plugins/builtin/yield-curve/index.tsx +494 -0
- package/src/plugins/builtin/yield-curve/series.ts +96 -0
- package/src/plugins/builtin/yield-curve/swaps-model.ts +93 -0
- package/src/plugins/builtin/yield-curve/swaps.tsx +99 -0
- package/src/plugins/builtin/yield-curve/treasury-data.ts +73 -0
- package/src/plugins/builtin/yield-curve/world.ts +57 -0
- package/src/plugins/builtin-editorial.ts +126 -0
- package/src/plugins/bundle.ts +200 -0
- package/src/plugins/catalog-backend.ts +37 -0
- package/src/plugins/catalog-browser.ts +344 -0
- package/src/plugins/catalog-manifest.ts +143 -0
- package/src/plugins/catalog-ui.ts +84 -0
- package/src/plugins/catalog.ts +44 -0
- package/src/plugins/compat.ts +225 -0
- package/src/plugins/current-target.ts +30 -0
- package/src/plugins/dependencies.ts +143 -0
- package/src/plugins/event-bus.ts +43 -0
- package/src/plugins/external-runtime.ts +54 -0
- package/src/plugins/extracted-plugins.ts +202 -0
- package/src/plugins/health.ts +21 -0
- package/src/plugins/host-link.ts +422 -0
- package/src/plugins/host-modules.ts +141 -0
- package/src/plugins/host-resolver.ts +100 -0
- package/src/plugins/host-smoke.ts +103 -0
- package/src/plugins/installer.ts +649 -0
- package/src/plugins/loader.ts +580 -0
- package/src/plugins/manager-node.ts +55 -0
- package/src/plugins/marketplace/activation.ts +95 -0
- package/src/plugins/marketplace/deactivation.ts +22 -0
- package/src/plugins/marketplace/feed.ts +92 -0
- package/src/plugins/marketplace/ids.ts +2 -0
- package/src/plugins/marketplace/model.ts +585 -0
- package/src/plugins/marketplace/packs.ts +118 -0
- package/src/plugins/marketplace/store.ts +130 -0
- package/src/plugins/ownership.ts +281 -0
- package/src/plugins/peer-retry.ts +155 -0
- package/src/plugins/plugin-export.ts +24 -0
- package/src/plugins/plugin-functions.ts +54 -0
- package/src/plugins/plugin-icon.ts +61 -0
- package/src/plugins/plugin-names.ts +32 -0
- package/src/plugins/plugin-off.ts +36 -0
- package/src/plugins/plugin-persistence.ts +84 -0
- package/src/plugins/registry/context-menu.ts +36 -0
- package/src/plugins/registry/contributions.ts +159 -0
- package/src/plugins/registry/host-actions.ts +276 -0
- package/src/plugins/registry/index.ts +777 -0
- package/src/plugins/registry/pane-settings.ts +188 -0
- package/src/plugins/registry/plugin-state.ts +135 -0
- package/src/plugins/registry/setup-command.ts +93 -0
- package/src/plugins/registry/shared.ts +28 -0
- package/src/plugins/registry/slots.ts +67 -0
- package/src/plugins/runtime/context.tsx +110 -0
- package/src/plugins/runtime/index.tsx +95 -0
- package/src/plugins/runtime/state.ts +256 -0
- package/src/plugins/seed-notice.ts +20 -0
- package/src/plugins/shortcut-argument.ts +39 -0
- package/src/plugins/team-state.ts +70 -0
- package/src/plugins/web-bundled.ts +33 -0
- package/src/portfolio/allocation.ts +316 -0
- package/src/portfolio/collection-name.ts +62 -0
- package/src/portfolio/column-values.ts +846 -0
- package/src/portfolio/cost-fx.ts +338 -0
- package/src/portfolio/futures-positions.ts +213 -0
- package/src/portfolio/futures-terms.ts +75 -0
- package/src/portfolio/manual-lots.ts +153 -0
- package/src/portfolio/mutations.ts +532 -0
- package/src/portfolio/position-metrics.ts +332 -0
- package/src/portfolio/position-quantity.ts +43 -0
- package/src/portfolio/position-value.ts +40 -0
- package/src/portfolio/suffixed-listings.ts +209 -0
- package/src/portfolio/totals-currency.ts +24 -0
- package/src/portfolio/valuation-basis.ts +89 -0
- package/src/public/__snapshots__/public-api.test.ts.snap +557 -0
- package/src/public/broker.ts +50 -0
- package/src/public/i18n.ts +17 -0
- package/src/public/index.ts +3 -0
- package/src/public/layout.ts +12 -0
- package/src/public/market-data.ts +43 -0
- package/src/public/pane-hooks.ts +72 -0
- package/src/public/quotes.ts +50 -0
- package/src/public/react.ts +130 -0
- package/src/public/remote.ts +23 -0
- package/src/public/test-support.ts +84 -0
- package/src/public/tickers.ts +40 -0
- package/src/public/time-series.ts +61 -0
- package/src/public/utils.ts +112 -0
- package/src/react/assign-ref.ts +10 -0
- package/src/react/async-resource.ts +79 -0
- package/src/react/auto-refresh.ts +107 -0
- package/src/react/input.ts +278 -0
- package/src/react/key-repeat.ts +86 -0
- package/src/react/plugins/plugin-slot.tsx +16 -0
- package/src/react/read-state.ts +104 -0
- package/src/react/ticker-source.ts +32 -0
- package/src/react/use-raf-callback.ts +44 -0
- package/src/react/use-throttled-commit-value.ts +133 -0
- package/src/remote/app-host.tsx +115 -0
- package/src/remote/client.ts +34 -0
- package/src/remote/command-bar.ts +98 -0
- package/src/remote/confirm-change.tsx +86 -0
- package/src/remote/controller-utils.ts +113 -0
- package/src/remote/controller.ts +727 -0
- package/src/remote/endpoint.ts +41 -0
- package/src/remote/form.ts +20 -0
- package/src/remote/json-patch.ts +103 -0
- package/src/remote/layout-helpers.ts +55 -0
- package/src/remote/matching.ts +69 -0
- package/src/remote/pane-screenshot.ts +47 -0
- package/src/remote/resources.ts +235 -0
- package/src/remote/revision.ts +5 -0
- package/src/remote/schema.ts +544 -0
- package/src/remote/semantic-helpers.ts +161 -0
- package/src/remote/semantic-tree.tsx +167 -0
- package/src/remote/server.ts +131 -0
- package/src/remote/types.ts +211 -0
- package/src/remote/watchlist.ts +314 -0
- package/src/renderers/browser/app-services.ts +33 -0
- package/src/renderers/browser/bundled-plugins.ts +91 -0
- package/src/renderers/browser/cloud-transport.ts +111 -0
- package/src/renderers/browser/config-host.ts +146 -0
- package/src/renderers/browser/deeplink-bridge.ts +52 -0
- package/src/renderers/browser/http-proxy-transport.ts +55 -0
- package/src/renderers/browser/main.tsx +142 -0
- package/src/renderers/browser/research-entry.ts +23 -0
- package/src/renderers/browser/ui-host.tsx +51 -0
- package/src/renderers/cloudflare/http-proxy.ts +289 -0
- package/src/renderers/cloudflare/proxy-session.ts +270 -0
- package/src/renderers/cloudflare/worker.ts +145 -0
- package/src/renderers/dom/boot-frame-page.ts +187 -0
- package/src/renderers/dom/boot-frame.ts +237 -0
- package/src/renderers/dom/build-assets.ts +273 -0
- package/src/renderers/dom/data-frames.ts +24 -0
- package/src/renderers/dom/data-table/dom.ts +253 -0
- package/src/renderers/dom/data-table/frozen-column.ts +24 -0
- package/src/renderers/dom/data-table/index.tsx +558 -0
- package/src/renderers/dom/data-table/row.tsx +480 -0
- package/src/renderers/dom/desktop/audio-player.tsx +312 -0
- package/src/renderers/dom/desktop/control-styles.ts +90 -0
- package/src/renderers/dom/desktop/controls.tsx +706 -0
- package/src/renderers/dom/desktop/dialog-actions.tsx +130 -0
- package/src/renderers/dom/desktop/icons.tsx +258 -0
- package/src/renderers/dom/desktop/list-view.tsx +331 -0
- package/src/renderers/dom/desktop/menu.tsx +115 -0
- package/src/renderers/dom/desktop/popover.tsx +249 -0
- package/src/renderers/dom/desktop/query-bar.tsx +350 -0
- package/src/renderers/dom/desktop/select-field.tsx +153 -0
- package/src/renderers/dom/desktop/stack-header.ts +22 -0
- package/src/renderers/dom/dialog-host.tsx +148 -0
- package/src/renderers/dom/dom-host-providers.tsx +64 -0
- package/src/renderers/dom/dom-ui-host.tsx +121 -0
- package/src/renderers/dom/host/ascii-text.ts +51 -0
- package/src/renderers/dom/host/block-glyph-canvas.tsx +118 -0
- package/src/renderers/dom/host/box.tsx +368 -0
- package/src/renderers/dom/host/chart-surface.tsx +310 -0
- package/src/renderers/dom/host/drag-shield.ts +35 -0
- package/src/renderers/dom/host/focus-scope.ts +105 -0
- package/src/renderers/dom/host/hls.chunk.ts +3 -0
- package/src/renderers/dom/host/image-surface.tsx +49 -0
- package/src/renderers/dom/host/input.tsx +403 -0
- package/src/renderers/dom/host/live-frame.ts +66 -0
- package/src/renderers/dom/host/media-surface.tsx +270 -0
- package/src/renderers/dom/host/mouse.ts +183 -0
- package/src/renderers/dom/host/overflow-fade.ts +89 -0
- package/src/renderers/dom/host/resize-rows.ts +111 -0
- package/src/renderers/dom/host/scroll-box.tsx +344 -0
- package/src/renderers/dom/host/size-observer.ts +70 -0
- package/src/renderers/dom/host/sticky-scroll.ts +147 -0
- package/src/renderers/dom/host/style.ts +148 -0
- package/src/renderers/dom/host/surface-3d.tsx +707 -0
- package/src/renderers/dom/host/surface-fit.ts +413 -0
- package/src/renderers/dom/host/tabs.tsx +380 -0
- package/src/renderers/dom/host/text.tsx +174 -0
- package/src/renderers/dom/host/top-surface.ts +127 -0
- package/src/renderers/dom/input-host.tsx +163 -0
- package/src/renderers/dom/key-event.ts +186 -0
- package/src/renderers/dom/native-renderer.ts +114 -0
- package/src/renderers/dom/scrollbar-activity.ts +23 -0
- package/src/renderers/dom/styles.css +1633 -0
- package/src/renderers/dom/test-utils.tsx +79 -0
- package/src/renderers/dom/toast-host.tsx +95 -0
- package/src/renderers/dom/windowed-list.tsx +201 -0
- package/src/renderers/dom/windowed-rows.ts +65 -0
- package/src/renderers/electrobun/bun/application-menu/click.ts +66 -0
- package/src/renderers/electrobun/bun/application-menu/index.ts +137 -0
- package/src/renderers/electrobun/bun/context-menu/click.ts +42 -0
- package/src/renderers/electrobun/bun/context-menu/normalize.ts +62 -0
- package/src/renderers/electrobun/bun/core-capabilities.ts +241 -0
- package/src/renderers/electrobun/bun/desktop/app-badge.ts +37 -0
- package/src/renderers/electrobun/bun/desktop/app-icon.ts +127 -0
- package/src/renderers/electrobun/bun/desktop/app-name.ts +222 -0
- package/src/renderers/electrobun/bun/desktop/backend-requests.ts +119 -0
- package/src/renderers/electrobun/bun/desktop/backend.ts +591 -0
- package/src/renderers/electrobun/bun/desktop/capability-bridge.ts +144 -0
- package/src/renderers/electrobun/bun/desktop/detached-windows.ts +275 -0
- package/src/renderers/electrobun/bun/desktop/host-requests.ts +177 -0
- package/src/renderers/electrobun/bun/desktop/http-fetch.ts +84 -0
- package/src/renderers/electrobun/bun/desktop/http-stream.ts +191 -0
- package/src/renderers/electrobun/bun/desktop/initialization.ts +196 -0
- package/src/renderers/electrobun/bun/desktop/macos-dock-badge.ts +38 -0
- package/src/renderers/electrobun/bun/desktop/macos-dock-icon.ts +52 -0
- package/src/renderers/electrobun/bun/desktop/macos-objc.ts +52 -0
- package/src/renderers/electrobun/bun/desktop/plugin-state.ts +90 -0
- package/src/renderers/electrobun/bun/desktop/relaunch.ts +97 -0
- package/src/renderers/electrobun/bun/desktop/rpc-registry.ts +43 -0
- package/src/renderers/electrobun/bun/desktop/state-broadcaster.ts +119 -0
- package/src/renderers/electrobun/bun/desktop/update.ts +621 -0
- package/src/renderers/electrobun/bun/desktop/workspace/index.ts +256 -0
- package/src/renderers/electrobun/bun/desktop/workspace/requests.ts +74 -0
- package/src/renderers/electrobun/bun/external-plugins.ts +242 -0
- package/src/renderers/electrobun/bun/index.ts +185 -0
- package/src/renderers/electrobun/bun/menu-event.ts +17 -0
- package/src/renderers/electrobun/bun/tui-entry.ts +18 -0
- package/src/renderers/electrobun/bun/window/boot-frame.ts +67 -0
- package/src/renderers/electrobun/bun/window/controls.ts +69 -0
- package/src/renderers/electrobun/bun/window/create.ts +87 -0
- package/src/renderers/electrobun/bun/window/events.ts +49 -0
- package/src/renderers/electrobun/bun/window/focus.ts +42 -0
- package/src/renderers/electrobun/bun/window/frame.ts +51 -0
- package/src/renderers/electrobun/bun/window/remembered-frame.ts +122 -0
- package/src/renderers/electrobun/bun/window/windows-custom-chrome.ts +43 -0
- package/src/renderers/electrobun/bun/window/windows-icons.ts +55 -0
- package/src/renderers/electrobun/bun/window/windows-native.ts +96 -0
- package/src/renderers/electrobun/shared/app-name.ts +17 -0
- package/src/renderers/electrobun/shared/boot-frame.ts +7 -0
- package/src/renderers/electrobun/shared/protocol.ts +362 -0
- package/src/renderers/electrobun/shared/quote-event-batch.ts +103 -0
- package/src/renderers/electrobun/shared/rpc-codec.ts +94 -0
- package/src/renderers/electrobun/view/app-badge-host.ts +17 -0
- package/src/renderers/electrobun/view/app-services.ts +38 -0
- package/src/renderers/electrobun/view/backend-rpc.ts +229 -0
- package/src/renderers/electrobun/view/broker-remote-client.ts +157 -0
- package/src/renderers/electrobun/view/capability-stream-client.ts +31 -0
- package/src/renderers/electrobun/view/capability-subscription.ts +50 -0
- package/src/renderers/electrobun/view/cli-pane-shot-entry.tsx +546 -0
- package/src/renderers/electrobun/view/cli-pane-shot-frame.tsx +179 -0
- package/src/renderers/electrobun/view/cli-pane-shot-health.ts +15 -0
- package/src/renderers/electrobun/view/config-host.ts +38 -0
- package/src/renderers/electrobun/view/context-menu.ts +147 -0
- package/src/renderers/electrobun/view/desktop/window/bridge.ts +68 -0
- package/src/renderers/electrobun/view/desktop/window/snapshot.ts +60 -0
- package/src/renderers/electrobun/view/external-plugins.ts +88 -0
- package/src/renderers/electrobun/view/fatal-screen.tsx +76 -0
- package/src/renderers/electrobun/view/host/native.ts +33 -0
- package/src/renderers/electrobun/view/host/window-move.ts +28 -0
- package/src/renderers/electrobun/view/http-fetch.ts +199 -0
- package/src/renderers/electrobun/view/main.tsx +286 -0
- package/src/renderers/electrobun/view/native-stubs/backend-rpc.ts +34 -0
- package/src/renderers/electrobun/view/news-source.ts +44 -0
- package/src/renderers/electrobun/view/remote/asset-data-client.ts +156 -0
- package/src/renderers/electrobun/view/remote/backend-quote-subscription.ts +127 -0
- package/src/renderers/electrobun/view/remote/capability-invoker.ts +57 -0
- package/src/renderers/electrobun/view/remote/connection-health.ts +31 -0
- package/src/renderers/electrobun/view/remote/persistence.ts +149 -0
- package/src/renderers/electrobun/view/remote/quote-subscription-registry.ts +74 -0
- package/src/renderers/electrobun/view/remote/ticker-repository.ts +26 -0
- package/src/renderers/electrobun/view/renderer-window-error.ts +18 -0
- package/src/renderers/electrobun/view/rpc-timeout.ts +70 -0
- package/src/renderers/electrobun/view/screenshot-watermark.ts +105 -0
- package/src/renderers/electrobun/view/ui-host.tsx +80 -0
- package/src/renderers/electrobun/view/update-host.ts +62 -0
- package/src/renderers/electrobun/view/window-fullscreen.ts +57 -0
- package/src/renderers/opentui/browser-open.ts +88 -0
- package/src/renderers/opentui/chart-surface.tsx +152 -0
- package/src/renderers/opentui/dialog-host.tsx +229 -0
- package/src/renderers/opentui/frame-capture.ts +33 -0
- package/src/renderers/opentui/host.tsx +280 -0
- package/src/renderers/opentui/image/loader.ts +116 -0
- package/src/renderers/opentui/image/surface.tsx +107 -0
- package/src/renderers/opentui/input-host.tsx +41 -0
- package/src/renderers/opentui/interaction-performance.ts +214 -0
- package/src/renderers/opentui/kitty-services.ts +15 -0
- package/src/renderers/opentui/native-smoke.ts +10 -0
- package/src/renderers/opentui/native-surface.ts +176 -0
- package/src/renderers/opentui/pane-image/glyphs-license.txt +107 -0
- package/src/renderers/opentui/pane-image/glyphs.json +1 -0
- package/src/renderers/opentui/pane-image/index.ts +108 -0
- package/src/renderers/opentui/pane-image/raster.ts +428 -0
- package/src/renderers/opentui/render-lib.ts +253 -0
- package/src/renderers/opentui/render-timing-smoke.ts +20 -0
- package/src/renderers/opentui/scrollbox-layout.ts +35 -0
- package/src/renderers/opentui/start.tsx +186 -0
- package/src/renderers/opentui/terminal-input-reset.ts +25 -0
- package/src/renderers/opentui/terminal-media.ts +234 -0
- package/src/renderers/opentui/test-utils.tsx +310 -0
- package/src/renderers/opentui/toast-host.tsx +129 -0
- package/src/renderers/opentui/ui-host.tsx +271 -0
- package/src/renderers/share/chart.ts +74 -0
- package/src/renderers/share/layout-view.tsx +133 -0
- package/src/renderers/share/main.tsx +110 -0
- package/src/renderers/share/styles.css +83 -0
- package/src/renderers/share/view.tsx +159 -0
- package/src/series/capability.ts +76 -0
- package/src/series/csv.ts +160 -0
- package/src/series/files.ts +113 -0
- package/src/series/registry.ts +224 -0
- package/src/series/resolve.ts +227 -0
- package/src/series/standalone.ts +77 -0
- package/src/series/types.ts +214 -0
- package/src/series/validate.ts +215 -0
- package/src/shares/api.ts +150 -0
- package/src/shares/bug-report-dialog.tsx +162 -0
- package/src/shares/bug-report-flow.tsx +81 -0
- package/src/shares/bug-report.ts +42 -0
- package/src/shares/capture-flow.ts +20 -0
- package/src/shares/capture-preview.tsx +129 -0
- package/src/shares/chat.ts +23 -0
- package/src/shares/flow.tsx +98 -0
- package/src/shares/location.ts +40 -0
- package/src/shares/open.ts +26 -0
- package/src/shares/pane-image.ts +166 -0
- package/src/shares/pane.ts +60 -0
- package/src/shares/payload.ts +206 -0
- package/src/shares/personal-pane.ts +86 -0
- package/src/shares/portable-layout.ts +734 -0
- package/src/shares/prepare.ts +20 -0
- package/src/shares/ready.ts +42 -0
- package/src/shares/test-harness.ts +62 -0
- package/src/sources/gloomberb-cloud/batched-lookups.ts +73 -0
- package/src/sources/gloomberb-cloud/fred-series.ts +202 -0
- package/src/sources/gloomberb-cloud/index.ts +986 -0
- package/src/sources/gloomberb-cloud/news.ts +170 -0
- package/src/sources/gloomberb-cloud/normalizers.ts +464 -0
- package/src/sources/gloomberb-cloud/perpetuals.ts +316 -0
- package/src/sources/history-coverage.ts +56 -0
- package/src/sources/history-omitted.ts +34 -0
- package/src/sources/history-result.ts +88 -0
- package/src/sources/history-retention.ts +177 -0
- package/src/sources/listing-symbols.ts +206 -0
- package/src/sources/listing-target.ts +45 -0
- package/src/sources/provider-errors.ts +170 -0
- package/src/sources/provider-router/batches.ts +233 -0
- package/src/sources/provider-router/brokers.ts +104 -0
- package/src/sources/provider-router/cache.ts +229 -0
- package/src/sources/provider-router/cached-routes.ts +261 -0
- package/src/sources/provider-router/connection-health.ts +48 -0
- package/src/sources/provider-router/financial-routes.ts +383 -0
- package/src/sources/provider-router/financials.ts +615 -0
- package/src/sources/provider-router/history.ts +973 -0
- package/src/sources/provider-router/index.ts +710 -0
- package/src/sources/provider-router/news.ts +51 -0
- package/src/sources/provider-router/primary.ts +228 -0
- package/src/sources/provider-router/quote-route.ts +70 -0
- package/src/sources/provider-router/realtime-access.ts +64 -0
- package/src/sources/provider-router/route-types.ts +34 -0
- package/src/sources/provider-router/routing.ts +44 -0
- package/src/sources/provider-router/search.ts +272 -0
- package/src/sources/provider-router/sources.ts +55 -0
- package/src/sources/provider-router/statement-history.ts +15 -0
- package/src/sources/provider-router/streaming.ts +359 -0
- package/src/sources/provider-router/supplemental.ts +53 -0
- package/src/sources/provider-router/test-support.ts +47 -0
- package/src/sources/sec-edgar/acceptance-time.ts +11 -0
- package/src/sources/sec-edgar/content.ts +207 -0
- package/src/sources/sec-edgar/fourth-quarter.ts +179 -0
- package/src/sources/sec-edgar/identity.ts +36 -0
- package/src/sources/sec-edgar.ts +890 -0
- package/src/sources/sec-registrant.ts +75 -0
- package/src/state/app/activity.ts +216 -0
- package/src/state/app/bootstrap.ts +418 -0
- package/src/state/app/context/index.tsx +656 -0
- package/src/state/app/input-capture.ts +12 -0
- package/src/state/app/tab-cursor.ts +222 -0
- package/src/state/config-save-scheduler.ts +38 -0
- package/src/state/hooks/inline-ticker-failures.ts +100 -0
- package/src/state/hooks/inline-tickers.ts +545 -0
- package/src/state/hooks/live-streaming.ts +60 -0
- package/src/state/hooks/live-ticker-financials.ts +171 -0
- package/src/state/hooks/pane-ticker.ts +58 -0
- package/src/state/hooks/quote-streaming.ts +326 -0
- package/src/state/hooks/session-snapshot.ts +101 -0
- package/src/state/pane-scroll-registry.tsx +299 -0
- package/src/state/pane-table-export-registry.ts +50 -0
- package/src/state/persist-scheduler.ts +123 -0
- package/src/state/ticker-refresh-queue.ts +89 -0
- package/src/sync/auth-transition.ts +32 -0
- package/src/sync/baseline.ts +43 -0
- package/src/sync/controller.ts +574 -0
- package/src/sync/core-contributors.ts +1491 -0
- package/src/sync/local-only.ts +121 -0
- package/src/sync/profile-analytics.ts +42 -0
- package/src/sync/react.ts +89 -0
- package/src/sync/types.ts +142 -0
- package/src/team/collections-sync.ts +235 -0
- package/src/team/collections.ts +369 -0
- package/src/team/model.ts +210 -0
- package/src/team/pane-request.ts +30 -0
- package/src/team/store.ts +324 -0
- package/src/telemetry/attention-counts.ts +170 -0
- package/src/telemetry/benign-window-error.ts +7 -0
- package/src/telemetry/crash-reports-dom.ts +79 -0
- package/src/telemetry/crash-reports-node.ts +173 -0
- package/src/telemetry/crash-reports.ts +373 -0
- package/src/telemetry/live-config.ts +26 -0
- package/src/telemetry/update-failures-node.ts +59 -0
- package/src/telemetry/update-failures.ts +307 -0
- package/src/telemetry/usage-counts-dom.ts +22 -0
- package/src/telemetry/usage-counts.ts +393 -0
- package/src/test-support/app-store.ts +21 -0
- package/src/test-support/broker.ts +81 -0
- package/src/test-support/builtin-panes.ts +31 -0
- package/src/test-support/cli-context.ts +37 -0
- package/src/test-support/cloud-api.ts +85 -0
- package/src/test-support/config-store.ts +31 -0
- package/src/test-support/console.ts +40 -0
- package/src/test-support/daily-nav.ts +25 -0
- package/src/test-support/data-provider.ts +85 -0
- package/src/test-support/headless.ts +32 -0
- package/src/test-support/margin-account.ts +108 -0
- package/src/test-support/market-session.ts +12 -0
- package/src/test-support/moved-symbols.ts +64 -0
- package/src/test-support/network-guard.ts +35 -0
- package/src/test-support/news.ts +21 -0
- package/src/test-support/pane.tsx +72 -0
- package/src/test-support/plugin-persistence.ts +112 -0
- package/src/test-support/plugin-runtime.ts +145 -0
- package/src/test-support/quote-store.ts +49 -0
- package/src/test-support/renderer-host.ts +10 -0
- package/src/test-support/rpc-loopback.ts +26 -0
- package/src/test-support/shell-pane-keys.tsx +36 -0
- package/src/test-support/temp-db.ts +19 -0
- package/src/test-support/ticker.ts +15 -0
- package/src/test-support/time-series.ts +27 -0
- package/src/theme/color-utils.ts +126 -0
- package/src/theme/colors.ts +311 -0
- package/src/theme/font-scale.ts +71 -0
- package/src/theme/heat-colors.ts +455 -0
- package/src/theme/series-colors.ts +46 -0
- package/src/theme/theme-context.tsx +44 -0
- package/src/theme/themes.ts +812 -0
- package/src/theme/ui-tokens.ts +107 -0
- package/src/tickers/batched-lookups.ts +186 -0
- package/src/tickers/company-name-listing.ts +276 -0
- package/src/tickers/company-name.ts +190 -0
- package/src/tickers/index-roots.ts +47 -0
- package/src/tickers/instrument-coverage.ts +112 -0
- package/src/tickers/instrument-kind.ts +165 -0
- package/src/tickers/instrument-label.ts +15 -0
- package/src/tickers/list.ts +36 -0
- package/src/tickers/listing-fate.ts +331 -0
- package/src/tickers/listing-name.ts +34 -0
- package/src/tickers/listing-venues.ts +196 -0
- package/src/tickers/metadata.ts +74 -0
- package/src/tickers/open-target.ts +183 -0
- package/src/tickers/perpetual-listing.ts +154 -0
- package/src/tickers/prediction-listing.ts +26 -0
- package/src/tickers/search/asset-classes.ts +106 -0
- package/src/tickers/search/bare-symbol.ts +36 -0
- package/src/tickers/search/home-listing.ts +75 -0
- package/src/tickers/search/identity.ts +19 -0
- package/src/tickers/search/index.ts +977 -0
- package/src/tickers/search/ranking.ts +1002 -0
- package/src/tickers/search/result.ts +27 -0
- package/src/tickers/search/types.ts +63 -0
- package/src/tickers/search/upsert.ts +156 -0
- package/src/tickers/selection.ts +21 -0
- package/src/tickers/starter-symbols.ts +8 -0
- package/src/tickers/terminal-codes.ts +455 -0
- package/src/tickers/ticker-changes.ts +301 -0
- package/src/tickers/tokenizer.ts +37 -0
- package/src/tickers/us-listing.ts +35 -0
- package/src/time-series/alignment.ts +173 -0
- package/src/time-series/bar-aggregation.ts +243 -0
- package/src/time-series/bar-spacing.ts +19 -0
- package/src/time-series/base-series.ts +315 -0
- package/src/time-series/chart-bounds.ts +349 -0
- package/src/time-series/chart-data.ts +329 -0
- package/src/time-series/chart-seed.ts +142 -0
- package/src/time-series/daily-valuation.ts +62 -0
- package/src/time-series/date-window.ts +41 -0
- package/src/time-series/economic.ts +92 -0
- package/src/time-series/field-catalog.ts +318 -0
- package/src/time-series/financial-period-coverage.ts +59 -0
- package/src/time-series/forward-valuation.ts +285 -0
- package/src/time-series/fundamentals.ts +1232 -0
- package/src/time-series/history-acquisition.ts +499 -0
- package/src/time-series/history-quality.ts +68 -0
- package/src/time-series/history-window.ts +21 -0
- package/src/time-series/hooks.ts +88 -0
- package/src/time-series/ice-credit.ts +54 -0
- package/src/time-series/leverage.ts +100 -0
- package/src/time-series/live-bars.ts +428 -0
- package/src/time-series/live-quotes.ts +234 -0
- package/src/time-series/market-resolution.ts +55 -0
- package/src/time-series/market.ts +177 -0
- package/src/time-series/parsed-history-cache.ts +79 -0
- package/src/time-series/price-comparison.ts +318 -0
- package/src/time-series/price-units.ts +139 -0
- package/src/time-series/range.ts +29 -0
- package/src/time-series/reporting-currency.ts +37 -0
- package/src/time-series/reporting.ts +134 -0
- package/src/time-series/resolution.ts +554 -0
- package/src/time-series/resolve-context.ts +161 -0
- package/src/time-series/resolve.ts +1138 -0
- package/src/time-series/series-name.ts +38 -0
- package/src/time-series/series-presentation.ts +242 -0
- package/src/time-series/session-bar.ts +138 -0
- package/src/time-series/spec.ts +557 -0
- package/src/time-series/studies.ts +1622 -0
- package/src/time-series/tail-reconcile.ts +121 -0
- package/src/time-series/trader-studies.ts +188 -0
- package/src/time-series/transforms.ts +174 -0
- package/src/time-series/types.ts +325 -0
- package/src/time-series/use-chart-resolution.ts +549 -0
- package/src/time-series/valuation-currency.ts +48 -0
- package/src/time-series/valuation-price.ts +81 -0
- package/src/time-series/valuation-releases.ts +39 -0
- package/src/types/broker.ts +237 -0
- package/src/types/capability-route-source.ts +25 -0
- package/src/types/config.ts +1046 -0
- package/src/types/context-menu.ts +101 -0
- package/src/types/data-provider.ts +355 -0
- package/src/types/desktop-deeplink.ts +8 -0
- package/src/types/desktop-menu.ts +16 -0
- package/src/types/desktop-window.ts +39 -0
- package/src/types/exchange-rate.ts +19 -0
- package/src/types/financials.ts +1077 -0
- package/src/types/headless.ts +764 -0
- package/src/types/instrument.ts +90 -0
- package/src/types/issuer-listings.ts +28 -0
- package/src/types/news-source.ts +8 -0
- package/src/types/persistence.ts +22 -0
- package/src/types/plugin.ts +1151 -0
- package/src/types/price-history.ts +52 -0
- package/src/types/ticker-changes.ts +45 -0
- package/src/types/ticker.ts +126 -0
- package/src/types/trading.ts +253 -0
- package/src/ui/ascii-font.ts +97 -0
- package/src/ui/context-menu.tsx +481 -0
- package/src/ui/dialog-bridge.tsx +50 -0
- package/src/ui/dialog-context.ts +24 -0
- package/src/ui/dialog-stack.ts +126 -0
- package/src/ui/dialog.tsx +98 -0
- package/src/ui/host.tsx +827 -0
- package/src/ui/index.tsx +313 -0
- package/src/ui/live-resize.ts +91 -0
- package/src/ui/live-stretch.ts +153 -0
- package/src/ui/measured-cells.ts +64 -0
- package/src/ui/pointer-drag.ts +12 -0
- package/src/ui/qr.ts +84 -0
- package/src/ui/resize-settle.ts +128 -0
- package/src/ui/scroll-box-axis.ts +26 -0
- package/src/ui/sticky-scroll.ts +7 -0
- package/src/ui/toast.tsx +147 -0
- package/src/updater/channel.ts +51 -0
- package/src/updater/command-names.ts +180 -0
- package/src/updater/failure.ts +163 -0
- package/src/updater/github-releases.ts +142 -0
- package/src/updater/index.ts +677 -0
- package/src/utils/asset-category.ts +20 -0
- package/src/utils/async-deadline.ts +81 -0
- package/src/utils/back-navigation.ts +52 -0
- package/src/utils/base-currency.ts +108 -0
- package/src/utils/basis-points.ts +17 -0
- package/src/utils/broker-instances.ts +47 -0
- package/src/utils/calendar-date.ts +163 -0
- package/src/utils/cash-runway.ts +241 -0
- package/src/utils/central-banks.ts +118 -0
- package/src/utils/cli-output.ts +646 -0
- package/src/utils/concurrency.ts +25 -0
- package/src/utils/contract-month.ts +16 -0
- package/src/utils/crypto-pair.ts +119 -0
- package/src/utils/csv.ts +54 -0
- package/src/utils/currency-names.ts +128 -0
- package/src/utils/currency-pair.ts +112 -0
- package/src/utils/currency-units.ts +255 -0
- package/src/utils/datetime-format.ts +174 -0
- package/src/utils/debug-log.ts +201 -0
- package/src/utils/decimal-comma.ts +238 -0
- package/src/utils/declared-dividends.ts +39 -0
- package/src/utils/depositary-receipt.ts +70 -0
- package/src/utils/display-number.ts +63 -0
- package/src/utils/dividend-cash.ts +48 -0
- package/src/utils/dom-screenshot-css.ts +265 -0
- package/src/utils/dom-screenshot-rasters.ts +278 -0
- package/src/utils/dom-screenshot.ts +860 -0
- package/src/utils/double-escape-close.ts +82 -0
- package/src/utils/errors.ts +4 -0
- package/src/utils/exchange-announcements.ts +71 -0
- package/src/utils/exchange-notation.generated.ts +360 -0
- package/src/utils/exchange-rate-snapshot.ts +82 -0
- package/src/utils/exchanges.ts +214 -0
- package/src/utils/external-url.ts +24 -0
- package/src/utils/financial-statements.ts +342 -0
- package/src/utils/fire-and-forget.ts +24 -0
- package/src/utils/fiscal-period.ts +47 -0
- package/src/utils/format.ts +446 -0
- package/src/utils/forward-dividend.ts +216 -0
- package/src/utils/fundamentals.ts +269 -0
- package/src/utils/futures-generic.ts +221 -0
- package/src/utils/fuzzy-search.ts +105 -0
- package/src/utils/fx-market-hours.ts +95 -0
- package/src/utils/fx-status.ts +47 -0
- package/src/utils/guards.ts +62 -0
- package/src/utils/hash.ts +23 -0
- package/src/utils/html-entities.ts +45 -0
- package/src/utils/http-proxy-response.ts +257 -0
- package/src/utils/http-transport.ts +31 -0
- package/src/utils/income-statement.ts +46 -0
- package/src/utils/inline-content-tokenizer.ts +116 -0
- package/src/utils/instrument-identity.ts +72 -0
- package/src/utils/keyboard.ts +31 -0
- package/src/utils/latest-financial-period.ts +34 -0
- package/src/utils/link-tokenizer.ts +93 -0
- package/src/utils/linux-libc.ts +54 -0
- package/src/utils/local-utc-offset.ts +39 -0
- package/src/utils/log-failure.ts +31 -0
- package/src/utils/main-thread-stall.ts +64 -0
- package/src/utils/markdown.ts +180 -0
- package/src/utils/market-capitalization.ts +184 -0
- package/src/utils/math.ts +12 -0
- package/src/utils/max-drawdown.ts +64 -0
- package/src/utils/network-failure.ts +86 -0
- package/src/utils/object-version.ts +17 -0
- package/src/utils/one-shot.ts +73 -0
- package/src/utils/option-expiry.ts +321 -0
- package/src/utils/options.ts +170 -0
- package/src/utils/perf-marks.ts +96 -0
- package/src/utils/platform.ts +34 -0
- package/src/utils/plugin-proxy-hosts.json +23 -0
- package/src/utils/plugin-proxy-hosts.ts +28 -0
- package/src/utils/price-earnings.ts +86 -0
- package/src/utils/price-history-integrity.ts +127 -0
- package/src/utils/price-history.ts +528 -0
- package/src/utils/price-window.ts +131 -0
- package/src/utils/release-date.ts +47 -0
- package/src/utils/reported-money.ts +35 -0
- package/src/utils/rpc-timeout-error.ts +31 -0
- package/src/utils/save-text-file.ts +36 -0
- package/src/utils/screenshot-watermark.ts +27 -0
- package/src/utils/search-focus-navigation.ts +24 -0
- package/src/utils/sec-eps-basis.ts +294 -0
- package/src/utils/sec-filings.ts +245 -0
- package/src/utils/sec.ts +258 -0
- package/src/utils/selection-clipboard.ts +99 -0
- package/src/utils/semver.ts +108 -0
- package/src/utils/shortcut-labels.ts +42 -0
- package/src/utils/slugify.ts +4 -0
- package/src/utils/sort-values.ts +78 -0
- package/src/utils/statement-gaps.ts +94 -0
- package/src/utils/text-wrap.ts +107 -0
- package/src/utils/throttled-fetch.ts +253 -0
- package/src/utils/timestamp.ts +54 -0
- package/src/utils/trailing-dividend.ts +130 -0
- package/src/utils/trailing-eps.ts +67 -0
- package/src/utils/typed-text.ts +21 -0
- package/src/utils/typo-distance.ts +22 -0
- package/src/utils/url.ts +12 -0
- package/src/utils/utc-time.ts +183 -0
- package/src/utils/zoned-date-time.ts +146 -0
- package/src/version.ts +9 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
// Natural Earth 1:110m country outlines, public domain; simplified and quantized.
|
|
2
|
+
export const WORLD_OUTLINES: readonly (readonly (readonly [number, number])[])[] = [[[180,-16.07],[180,-16.56],[178.73,-17.01],[178.6,-16.64],[180,-16.07]],[[178.13,-17.5],[178.72,-17.63],[178.55,-18.15],[177.38,-18.16],[177.67,-17.38],[178.13,-17.5]],[[-179.79,-16.02],[-180,-16.56],[-179.79,-16.02]],[[33.9,-0.95],[37.7,-3.1],[37.77,-3.68],[39.2,-4.68],[38.74,-5.91],[39.44,-6.84],[39.19,-8.49],[40.32,-10.32],[39.52,-10.9],[36.51,-11.72],[34.56,-11.52],[33.74,-9.42],[30.74,-8.34],[29.62,-6.52],[29.34,-4.5],[30.75,-3.36],[30.42,-1.13],[33.9,-0.95]],[[-8.67,27.66],[-8.69,25.88],[-11.97,25.93],[-11.94,23.37],[-12.87,23.28],[-12.93,21.33],[-17.06,21.0],[-17.02,21.42],[-14.75,21.5],[-13.89,23.69],[-12.5,24.77],[-11.39,26.88],[-8.79,27.12],[-8.67,27.66]],[[-122.84,49],[-127.44,50.83],[-127.85,52.33],[-129.13,52.76],[-129.31,53.56],[-130.51,54.29],[-130.01,55.92],[-131.71,56.55],[-135.48,59.79],[-137.45,58.91],[-139.04,60],[-141.0,60.31],[-140.99,69.71],[-136.5,68.9],[-129.79,70.19],[-129.11,69.78],[-128.14,70.48],[-125.76,69.48],[-124.42,70.16],[-124.29,69.4],[-121.47,69.8],[-115.25,68.91],[-113.9,68.4],[-115.3,67.9],[-113.5,67.69],[-109.95,67.98],[-108.88,67.38],[-107.79,67.89],[-108.81,68.31],[-108.17,68.65],[-106.15,68.8],[-101.45,67.65],[-98.44,67.78],[-98.56,68.4],[-97.67,68.58],[-96.12,68.24],[-96.13,67.29],[-95.49,68.09],[-94.69,68.06],[-94.23,69.07],[-96.47,70.09],[-96.39,71.19],[-95.21,71.92],[-92.88,71.32],[-91.52,70.19],[-92.41,69.7],[-90.55,69.5],[-90.55,68.47],[-89.22,69.26],[-88.02,68.62],[-88.32,67.87],[-87.35,67.2],[-85.58,68.78],[-85.52,69.88],[-82.62,69.66],[-81.28,69.16],[-81.96,68.13],[-81.26,67.6],[-81.39,67.11],[-83.34,66.41],[-85.77,66.56],[-87.32,64.78],[-90.7,63.61],[-90.77,62.96],[-91.93,62.84],[-94.24,60.9],[-94.68,58.95],[-93.22,58.78],[-92.3,57.09],[-90.9,57.28],[-85.01,55.3],[-82.27,55.15],[-82.13,53.28],[-79.91,51.21],[-78.6,52.56],[-79.83,54.67],[-78.23,55.14],[-76.54,56.53],[-77.3,58.05],[-78.52,58.8],[-77.34,59.85],[-78.11,62.32],[-73.84,62.44],[-71.37,61.14],[-69.59,61.06],[-69.29,58.96],[-67.65,58.21],[-66.2,58.77],[-64.58,60.34],[-61.4,56.97],[-61.8,56.34],[-57.33,54.63],[-56.94,53.78],[-55.76,53.27],[-55.68,52.15],[-60.03,50.24],[-66.4,50.23],[-71.1,46.82],[-68.65,48.3],[-65.06,49.23],[-64.17,48.74],[-65.12,48.07],[-64.47,46.24],[-61.52,45.88],[-60.52,47.01],[-59.8,45.92],[-65.36,43.55],[-66.12,43.62],[-66.16,44.47],[-64.43,45.29],[-67.14,45.14],[-67.79,45.7],[-67.79,47.07],[-69.24,47.45],[-71.51,45.01],[-74.87,45.0],[-76.82,43.63],[-78.72,43.63],[-79.17,43.47],[-78.94,42.86],[-82.44,41.68],[-83.14,41.98],[-82.14,43.57],[-82.55,45.35],[-88.38,48.3],[-91.64,48.14],[-94.33,48.67],[-94.82,49.39],[-95.16,49],[-122.84,49]],[[-83.99,62.45],[-81.88,62.9],[-83.07,62.16],[-83.99,62.45]],[[-79.78,72.8],[-80.83,73.69],[-78.06,73.65],[-76.25,72.83],[-79.78,72.8]],[[-80.32,62.09],[-79.27,62.16],[-79.66,61.63],[-80.32,62.09]],[[-93.61,74.98],[-94.16,74.59],[-96.82,74.93],[-94.85,75.65],[-93.61,74.98]],[[-93.84,77.52],[-96.44,77.83],[-93.84,77.52]],[[-96.75,78.77],[-95.56,78.42],[-97.31,77.85],[-98.63,78.87],[-96.75,78.77]],[[-88.15,74.39],[-92.42,74.84],[-92.89,75.88],[-93.89,76.32],[-97.12,76.75],[-96.75,77.16],[-91.61,76.78],[-90.74,76.45],[-90.97,76.07],[-89.19,75.61],[-81.13,75.71],[-79.83,74.92],[-88.15,74.39]],[[-111.26,78.15],[-109.85,78.0],[-112.05,77.41],[-113.53,77.73],[-111.26,78.15]],[[-110.96,78.8],[-109.66,78.6],[-112.54,78.41],[-110.96,78.8]],[[-55.6,51.32],[-56.8,49.81],[-56.14,50.15],[-55.47,49.94],[-55.82,49.59],[-53.48,49.25],[-53.79,48.52],[-53.09,48.69],[-52.65,47.54],[-53.07,46.66],[-54.18,46.81],[-54.24,47.75],[-55.4,46.88],[-56.0,46.92],[-55.29,47.39],[-56.25,47.63],[-59.27,47.6],[-58.8,48.25],[-59.23,48.52],[-57.36,50.72],[-55.87,51.63],[-55.6,51.32]],[[-83.88,65.11],[-80.1,63.73],[-80.99,63.41],[-83.11,64.1],[-85.52,63.05],[-85.87,63.64],[-87.22,63.54],[-86.35,64.04],[-85.88,65.74],[-83.88,65.11]],[[-78.77,72.35],[-77.82,72.75],[-74.23,71.77],[-74.1,71.33],[-72.24,71.56],[-68.79,70.53],[-66.97,69.19],[-68.81,68.72],[-61.85,66.86],[-63.92,65.0],[-66.72,66.39],[-68.02,66.26],[-68.14,65.69],[-65.32,64.38],[-64.67,63.39],[-65.01,62.67],[-68.78,63.75],[-66.17,61.93],[-68.88,62.33],[-74.83,64.68],[-77.71,64.23],[-78.56,64.57],[-77.9,65.31],[-73.96,65.45],[-73.94,66.31],[-72.65,67.28],[-73.31,68.07],[-76.87,68.89],[-76.23,69.15],[-78.96,70.17],[-81.31,69.74],[-88.68,70.41],[-89.51,70.76],[-88.47,71.22],[-89.89,71.22],[-90.21,72.24],[-88.41,73.54],[-85.83,73.8],[-86.56,73.16],[-85.77,72.53],[-84.85,73.34],[-82.32,73.75],[-80.6,72.72],[-80.75,72.06],[-78.77,72.35]],[[-94.5,74.13],[-90.51,73.86],[-94.27,72.02],[-95.41,72.06],[-96.02,73.44],[-94.5,74.13]],[[-122.85,76.12],[-119.1,77.51],[-116.2,77.65],[-116.34,76.88],[-117.11,76.53],[-122.85,76.12]],[[-132.71,54.04],[-131.75,54.12],[-132.05,52.98],[-131.18,52.18],[-133.05,53.41],[-133.18,54.17],[-132.71,54.04]],[[-105.49,79.3],[-100.83,78.8],[-99.67,77.91],[-105.18,78.38],[-104.21,78.68],[-105.49,79.3]],[[-123.51,48.51],[-125.66,48.83],[-128.06,49.99],[-128.36,50.77],[-125.76,50.3],[-123.51,48.51]],[[-121.54,74.45],[-117.56,74.19],[-115.51,73.48],[-119.22,72.52],[-120.46,71.38],[-123.09,70.9],[-125.93,71.87],[-123.94,73.68],[-124.92,74.29],[-121.54,74.45]],[[-107.82,75.85],[-105.88,75.97],[-105.7,75.48],[-106.31,75.01],[-112.22,74.42],[-113.87,74.72],[-111.79,75.16],[-117.71,75.22],[-115.4,76.48],[-109.07,75.47],[-110.5,76.43],[-109.58,76.79],[-108.55,76.68],[-107.82,75.85]],[[-106.52,73.08],[-105.4,72.67],[-104.46,70.99],[-100.98,70.02],[-101.09,69.58],[-102.73,69.5],[-102.09,69.12],[-102.43,68.75],[-105.96,69.18],[-113.31,68.54],[-117.34,69.96],[-112.42,70.37],[-117.9,70.54],[-118.43,70.91],[-116.11,71.31],[-119.4,71.56],[-117.87,72.71],[-115.19,73.31],[-114.17,73.12],[-114.67,72.65],[-112.44,72.96],[-111.05,72.45],[-109.92,72.96],[-108.19,71.65],[-107.69,72.07],[-108.4,73.09],[-106.52,73.08]],[[-100.44,72.71],[-101.54,73.36],[-100.36,73.84],[-97.38,73.76],[-97.12,73.47],[-98.05,72.99],[-96.54,72.56],[-96.72,71.66],[-98.36,71.27],[-102.5,72.51],[-100.44,72.71]],[[-106.6,73.6],[-104.5,73.42],[-105.38,72.76],[-106.94,73.46],[-106.6,73.6]],[[-98.5,76.72],[-97.74,76.26],[-98.16,75],[-102.5,75.56],[-102.57,76.34],[-98.5,76.72]],[[-96.02,80.6],[-94.3,80.98],[-94.74,81.21],[-92.41,81.26],[-87.81,80.32],[-85.81,79.34],[-89.04,78.29],[-92.88,78.34],[-93.95,78.75],[-93.15,79.38],[-94.97,79.37],[-96.71,80.16],[-96.02,80.6]],[[-91.59,81.89],[-85.5,82.65],[-83.18,82.32],[-82.42,82.86],[-79.31,83.13],[-61.85,82.63],[-67.66,81.5],[-65.48,81.51],[-71.18,79.8],[-76.91,79.32],[-75.53,79.2],[-76.22,79.02],[-75.39,78.53],[-79.76,77.21],[-77.89,76.78],[-80.56,76.18],[-89.49,76.47],[-89.62,76.95],[-87.77,77.18],[-88.26,77.9],[-84.98,77.54],[-87.96,78.37],[-85.09,79.35],[-86.93,80.25],[-81.85,80.46],[-87.6,80.52],[-91.59,81.89]],[[-75.22,67.44],[-76.99,67.1],[-77.24,67.59],[-75.9,68.29],[-75.11,68.01],[-75.22,67.44]],[[-96.26,69.49],[-95.65,69.11],[-96.27,68.76],[-99.8,69.4],[-98.22,70.14],[-96.26,69.49]],[[-64.52,49.87],[-61.81,49.11],[-64.52,49.87]],[[-64.01,47.04],[-63.66,46.55],[-62.01,46.44],[-62.87,45.97],[-64.14,46.39],[-64.01,47.04]],[[-122.84,49],[-95.16,49],[-94.82,49.39],[-94.33,48.67],[-91.64,48.14],[-88.38,48.3],[-82.55,45.35],[-82.14,43.57],[-83.12,42.08],[-82.69,41.68],[-78.94,42.86],[-79.17,43.47],[-78.72,43.63],[-76.82,43.63],[-74.87,45.0],[-71.51,45.01],[-69.24,47.45],[-67.79,47.07],[-67.79,45.7],[-66.96,44.81],[-70.12,43.68],[-70.83,42.34],[-69.97,41.64],[-73.71,40.93],[-71.94,40.93],[-73.95,40.75],[-74.91,38.94],[-75.53,39.5],[-75.06,38.4],[-75.94,37.22],[-75.72,37.94],[-76.35,39.15],[-76.33,38.08],[-76.99,38.24],[-76.3,37.92],[-75.73,35.55],[-81.34,31.44],[-81.31,30.04],[-80.06,26.88],[-80.38,25.21],[-81.17,25.2],[-81.71,25.87],[-83.71,29.94],[-85.11,29.64],[-86.4,30.4],[-89.59,30.16],[-89.41,29.16],[-93.23,29.78],[-94.69,29.48],[-97.14,27.83],[-97.14,25.87],[-97.53,25.84],[-99.02,26.37],[-100.96,29.38],[-102.48,29.76],[-103.11,28.97],[-103.94,29.27],[-106.51,31.75],[-111.02,31.33],[-114.72,32.72],[-117.13,32.54],[-118.52,34.03],[-120.62,34.61],[-124.4,40.31],[-124.53,42.77],[-123.9,45.52],[-124.69,48.18],[-123.12,48.04],[-122.59,47.1],[-122.84,49]],[[-155.4,20.08],[-154.81,19.51],[-155.69,18.92],[-156.07,19.7],[-155.86,20.27],[-155.4,20.08]],[[-156.0,20.76],[-156.71,20.93],[-156.0,20.76]],[[-156.76,21.18],[-157.33,21.1],[-156.76,21.18]],[[-158.03,21.72],[-157.71,21.26],[-158.03,21.72]],[[-159.37,22.21],[-159.8,22.07],[-159.37,22.21]],[[-166.47,60.38],[-165.58,59.91],[-167.46,60.21],[-166.47,60.38]],[[-153.23,57.97],[-152.14,57.59],[-154.01,56.73],[-154.52,56.99],[-154.67,57.46],[-153.23,57.97]],[[-140.99,69.71],[-141.0,60.31],[-139.04,60],[-137.45,58.91],[-135.48,59.79],[-131.71,56.55],[-130.01,55.92],[-130.54,54.8],[-131.97,55.5],[-134.08,58.12],[-136.63,58.21],[-139.87,59.54],[-147.11,60.88],[-148.22,60.67],[-148.02,59.98],[-151.72,59.16],[-151.41,60.73],[-150.35,61.03],[-150.62,61.28],[-154.02,59.35],[-153.29,58.86],[-154.23,58.15],[-158.43,55.99],[-164.94,54.57],[-158.68,57.02],[-157.72,57.57],[-157.04,58.92],[-159.06,58.42],[-160.36,59.07],[-161.97,58.67],[-161.87,59.63],[-162.52,59.99],[-163.82,59.8],[-165.35,60.51],[-166.12,61.5],[-165.73,62.07],[-164.56,63.15],[-160.77,63.77],[-161.52,64.4],[-160.78,64.79],[-164.96,64.45],[-168.11,65.67],[-164.47,66.58],[-163.65,66.58],[-163.79,66.08],[-161.68,66.12],[-166.76,68.36],[-166.2,68.88],[-164.43,68.92],[-161.91,70.33],[-156.58,71.36],[-154.34,70.7],[-140.99,69.71]],[[-171.73,63.78],[-168.69,63.3],[-169.53,62.98],[-171.55,63.32],[-171.73,63.78]],[[87.36,49.21],[85.77,48.46],[85.16,47.0],[83.18,47.33],[82.46,45.54],[79.97,44.92],[80.87,43.18],[80.18,42.92],[80.26,42.35],[74.21,43.3],[73.49,42.5],[71.19,42.7],[68.63,40.67],[66.71,41.17],[66.51,41.99],[66.02,41.99],[66.1,43.0],[64.9,43.73],[62.01,43.5],[58.5,45.59],[55.93,45.0],[55.97,41.31],[54.08,42.32],[52.5,41.78],[52.5,42.79],[51.34,43.13],[50.31,44.61],[51.28,44.51],[51.32,45.25],[53.04,45.26],[53.04,46.85],[51.19,47.05],[49.1,46.4],[48.06,47.74],[46.47,48.39],[47.55,50.45],[48.58,49.87],[48.7,50.61],[50.77,51.69],[52.33,51.72],[55.72,50.62],[56.78,51.04],[61.34,50.8],[61.59,51.27],[59.97,51.96],[61.7,52.98],[60.98,53.66],[61.44,54.01],[69.07,55.39],[70.87,55.17],[71.18,54.13],[73.51,54.04],[73.43,53.49],[76.89,54.49],[76.53,54.18],[80.04,50.86],[80.57,51.39],[81.95,50.81],[83.38,51.07],[87.36,49.21]],[[55.97,41.31],[55.93,45.0],[58.5,45.59],[62.01,43.5],[64.9,43.73],[66.1,43.0],[66.02,41.99],[66.51,41.99],[66.71,41.17],[67.99,41.14],[68.26,40.66],[70.96,42.27],[70.42,41.52],[73.06,40.87],[71.77,40.15],[70.6,40.22],[70.67,40.96],[69.33,40.73],[68.54,39.53],[67.7,39.58],[67.44,39.14],[68.18,38.9],[68.39,38.16],[67.83,37.14],[66.52,37.36],[66.55,37.97],[64.17,38.89],[62.37,40.05],[61.88,41.08],[60.47,41.22],[59.98,42.22],[58.63,42.75],[56.93,41.83],[57.1,41.32],[55.97,41.31]],[[141.0,-2.6],[144.58,-3.86],[145.98,-5.47],[147.65,-6.08],[147.89,-6.61],[146.97,-6.72],[147.19,-7.39],[150.69,-10.58],[147.91,-10.13],[146.05,-8.07],[144.74,-7.63],[143.29,-8.25],[143.41,-8.98],[142.63,-9.33],[141.03,-9.12],[141.0,-2.6]],[[152.64,-3.66],[153.14,-4.5],[152.83,-4.77],[152.41,-3.79],[150.66,-2.74],[152.64,-3.66]],[[151.3,-5.84],[149.71,-6.32],[148.32,-5.75],[149.85,-5.51],[150.14,-5.0],[150.24,-5.53],[150.81,-5.46],[151.65,-4.76],[151.54,-4.17],[152.14,-4.15],[152.32,-4.87],[151.3,-5.84]],[[154.76,-5.34],[155.88,-6.82],[155.17,-6.54],[154.76,-5.34]],[[141.0,-2.6],[141.03,-9.12],[140.14,-8.3],[137.61,-8.41],[138.67,-7.32],[137.93,-5.39],[133.66,-3.54],[132.98,-4.11],[131.99,-2.82],[133.7,-2.21],[132.23,-2.21],[130.52,-0.94],[132.38,-0.37],[133.99,-0.78],[134.42,-2.77],[135.46,-3.37],[137.44,-1.7],[141.0,-2.6]],[[124.97,-8.89],[124.44,-10.14],[123.46,-10.24],[123.98,-9.29],[124.97,-8.89]],[[134.21,-6.9],[134.5,-5.45],[134.72,-6.21],[134.21,-6.9]],[[117.88,4.14],[117.31,3.23],[117.88,1.83],[119.0,0.9],[117.81,0.78],[117.52,-0.8],[116.56,-1.49],[116.15,-4.01],[116.0,-3.66],[114.86,-4.11],[113.26,-3.12],[112.07,-3.48],[111.7,-2.99],[110.22,-2.93],[108.95,0.42],[109.66,2.01],[110.51,0.77],[112.86,1.5],[113.81,1.22],[114.62,1.43],[115.87,4.31],[117.88,4.14]],[[129.37,-2.8],[130.47,-3.09],[130.83,-3.86],[127.9,-3.39],[128.14,-2.84],[129.37,-2.8]],[[126.87,-3.79],[125.99,-3.18],[127.0,-3.13],[126.87,-3.79]],[[127.93,2.17],[128.69,1.13],[128.1,-0.9],[127.4,1.01],[127.93,2.17]],[[122.93,0.88],[125.24,1.42],[123.69,0.24],[120.18,0.24],[120.04,-0.52],[120.94,-1.41],[123.34,-0.62],[121.51,-1.9],[123.16,-5.34],[122.24,-5.28],[122.72,-4.46],[121.49,-4.57],[120.97,-2.63],[120.31,-2.93],[120.43,-5.53],[119.8,-5.67],[119.37,-5.38],[119.5,-3.49],[118.77,-2.8],[119.83,0.15],[120.89,1.31],[122.93,0.88]],[[120.3,-10.26],[118.97,-9.56],[119.9,-9.36],[120.78,-9.97],[120.3,-10.26]],[[121.34,-8.54],[122.9,-8.09],[122.76,-8.65],[119.92,-8.81],[120.72,-8.24],[121.34,-8.54]],[[118.26,-8.36],[119.13,-8.71],[116.74,-9.03],[117.9,-8.1],[118.26,-8.36]],[[108.49,-6.42],[112.61,-6.95],[112.98,-7.59],[115.71,-8.37],[114.56,-8.75],[105.37,-6.85],[106.05,-5.9],[108.49,-6.42]],[[104.37,-1.08],[104.89,-2.34],[106.11,-3.06],[105.82,-5.85],[104.71,-5.87],[102.58,-4.22],[98.6,1.82],[95.29,5.48],[97.48,5.25],[100.64,2.1],[102.5,1.4],[103.84,0.1],[103.44,-0.71],[104.37,-1.08]],[[-68.63,-52.64],[-67.75,-53.85],[-65.05,-54.7],[-66.45,-55.25],[-68.63,-54.87],[-68.63,-52.64]],[[-57.63,-30.22],[-58.5,-34.43],[-57.23,-35.29],[-56.79,-36.9],[-57.75,-38.18],[-59.23,-38.72],[-62.34,-38.83],[-62.15,-40.68],[-62.75,-41.03],[-65.12,-41.06],[-64.98,-42.06],[-63.76,-42.04],[-63.46,-42.56],[-65.18,-43.5],[-65.57,-45.04],[-67.29,-45.55],[-67.58,-46.3],[-65.64,-47.24],[-65.99,-48.13],[-69.14,-50.73],[-68.15,-52.35],[-71.91,-52.01],[-72.31,-50.68],[-73.33,-50.38],[-73.42,-49.32],[-72.33,-48.24],[-71.66,-44.97],[-71.22,-44.78],[-72.15,-42.25],[-71.41,-38.92],[-70.81,-38.55],[-71.12,-36.66],[-70.36,-36.01],[-69.82,-34.19],[-70.54,-31.37],[-69.66,-28.46],[-68.3,-26.9],[-68.42,-24.52],[-67.33,-24.03],[-67.11,-22.74],[-66.27,-21.83],[-64.96,-22.08],[-64.38,-22.8],[-63.99,-21.99],[-62.85,-22.03],[-60.85,-23.88],[-57.78,-25.16],[-58.62,-27.12],[-55.7,-27.39],[-54.13,-25.55],[-53.65,-26.92],[-57.63,-30.22]],[[-68.63,-52.64],[-68.63,-54.87],[-66.96,-54.9],[-68.15,-55.61],[-71.01,-55.05],[-74.66,-52.84],[-71.11,-54.07],[-70.27,-52.93],[-68.63,-52.64]],[[-69.59,-17.58],[-68.44,-19.41],[-68.76,-20.37],[-67.83,-22.87],[-66.99,-22.99],[-67.33,-24.03],[-68.42,-24.52],[-68.3,-26.9],[-69.66,-28.46],[-70.54,-31.37],[-69.82,-34.19],[-70.36,-36.01],[-71.12,-36.66],[-70.81,-38.55],[-71.41,-38.92],[-72.15,-42.25],[-71.22,-44.78],[-71.66,-44.97],[-72.33,-48.24],[-73.42,-49.32],[-73.33,-50.38],[-72.31,-50.68],[-71.91,-52.01],[-68.57,-52.3],[-70.85,-52.9],[-71.43,-53.86],[-74.95,-52.26],[-75.61,-48.67],[-74.13,-46.94],[-75.64,-46.65],[-74.69,-45.76],[-74.35,-44.1],[-73.24,-44.45],[-72.72,-42.38],[-73.39,-42.12],[-73.7,-43.37],[-74.33,-43.22],[-73.22,-39.26],[-73.59,-37.16],[-73.17,-37.12],[-71.44,-32.42],[-71.49,-28.86],[-70.91,-27.64],[-70.09,-21.39],[-70.37,-18.35],[-69.59,-17.58]],[[29.34,-4.5],[29.62,-6.52],[30.74,-8.34],[28.73,-8.53],[28.37,-11.79],[29.62,-12.18],[29.7,-13.26],[28.93,-13.25],[27.16,-11.61],[26.55,-11.92],[24.26,-10.95],[22.16,-11.08],[21.73,-7.29],[20.09,-6.94],[19.02,-7.99],[17.47,-8.07],[16.33,-5.88],[12.18,-5.79],[13.6,-4.5],[14.58,-4.97],[16.01,-3.54],[16.41,-1.74],[17.64,-0.42],[18.54,4.2],[19.47,5.03],[22.41,4.03],[22.84,4.71],[25.65,5.26],[27.37,5.23],[28.43,4.29],[29.72,4.6],[30.83,3.51],[30.77,2.34],[31.17,2.2],[29.88,0.6],[29.02,-2.84],[29.34,-4.5]],[[41.59,-1.68],[40.99,-0.86],[40.98,2.78],[42.13,4.23],[44.96,5.0],[48.94,9.45],[48.95,11.41],[51.11,12.02],[50.55,9.2],[48.59,5.34],[41.59,-1.68]],[[39.2,-4.68],[37.77,-3.68],[37.7,-3.1],[33.9,-0.95],[33.89,0.11],[35.04,1.91],[34.01,4.25],[35.3,5.51],[36.16,4.45],[38.12,3.6],[39.56,3.42],[40.77,4.26],[41.86,3.92],[40.98,2.78],[40.99,-0.86],[41.59,-1.68],[40.26,-2.57],[39.2,-4.68]],[[24.57,8.23],[23.46,8.95],[23.55,10.09],[21.94,12.59],[23.02,15.68],[23.89,15.61],[23.85,20],[25,20.0],[25,22],[36.87,22],[37.48,18.61],[38.41,18.0],[36.85,16.96],[36.27,13.56],[34.26,10.63],[33.97,8.68],[33.21,12.18],[32.74,12.25],[32.07,11.97],[32.4,11.08],[31.35,9.81],[30.0,10.29],[28.97,9.4],[26.75,9.47],[25.79,10.41],[25.07,10.27],[24.54,8.92],[23.89,8.62],[24.57,8.23]],[[23.84,19.58],[23.89,15.61],[23.02,15.68],[21.94,12.59],[22.86,11.14],[21.0,9.48],[18.81,8.98],[17.96,7.89],[15.28,7.42],[14.98,8.8],[13.95,9.55],[14.17,10.02],[15.47,9.98],[14.6,13.33],[13.95,13.35],[13.54,14.37],[13.97,15.68],[15.25,16.63],[15.9,20.39],[15.1,21.31],[14.85,22.86],[15.86,23.41],[23.84,19.58]],[[-71.71,19.71],[-71.71,18.04],[-74.46,18.34],[-72.33,18.67],[-73.19,19.92],[-71.71,19.71]],[[-71.71,18.04],[-71.59,19.88],[-69.95,19.65],[-68.32,18.61],[-68.69,18.21],[-70.67,18.43],[-71.4,17.6],[-71.71,18.04]],[[178.73,71.1],[180,71.52],[180,70.83],[178.73,71.1]],[[49.1,46.4],[46.68,44.61],[48.58,41.81],[47.82,41.15],[45.47,42.5],[39.96,43.43],[36.68,45.24],[38.23,46.24],[37.67,46.64],[39.15,47.04],[38.22,47.1],[38.26,47.55],[39.74,47.9],[40.07,49.6],[35.36,50.58],[35.02,51.21],[34.22,51.26],[34.39,51.77],[33.75,52.34],[31.79,52.1],[31.31,53.07],[32.69,53.35],[30.76,54.81],[30.87,55.55],[28.18,56.17],[27.29,57.47],[27.72,57.79],[27.42,58.72],[29.12,60.03],[28.07,60.5],[31.52,62.87],[30.04,63.55],[30.44,64.2],[29.54,64.95],[30.22,65.81],[29.05,66.94],[29.98,67.7],[28.45,68.36],[28.59,69.06],[32.13,69.91],[41.06,67.46],[41.13,66.79],[38.38,66.0],[33.18,66.63],[34.81,65.9],[34.94,64.41],[37.01,63.85],[36.54,64.76],[37.18,65.14],[39.59,64.52],[40.44,64.76],[39.76,65.5],[42.09,66.48],[43.95,66.07],[44.53,66.76],[43.7,67.35],[44.19,67.95],[43.45,68.57],[46.25,68.25],[46.82,67.69],[45.56,67.57],[45.56,67.01],[46.35,66.67],[53.72,68.86],[54.47,68.81],[53.49,68.2],[58.8,68.88],[59.94,68.28],[61.08,68.94],[60.03,69.52],[60.55,69.85],[68.51,68.09],[69.18,68.62],[66.93,69.45],[67.26,69.93],[66.69,71.03],[69.94,73.04],[72.59,72.78],[72.8,72.22],[71.85,71.41],[72.79,70.39],[72.56,69.02],[73.67,68.41],[71.28,66.32],[72.42,66.17],[75.05,67.76],[74.47,68.33],[74.94,68.99],[73.84,69.07],[73.6,69.63],[74.4,70.63],[73.1,71.45],[74.89,72.12],[74.66,72.83],[75.68,72.3],[75.29,71.34],[76.36,71.15],[75.9,71.87],[77.58,72.27],[81.5,71.75],[80.61,72.58],[80.51,73.65],[86.82,73.94],[86.01,74.46],[87.17,75.12],[100.76,76.43],[101.99,77.29],[104.35,77.7],[106.07,77.37],[104.7,77.13],[106.97,76.97],[107.24,76.48],[111.08,76.71],[114.13,75.85],[113.89,75.33],[109.4,74.18],[113.02,73.98],[113.53,73.34],[115.57,73.75],[123.2,72.97],[123.26,73.74],[126.98,73.57],[128.59,73.04],[129.05,72.4],[128.46,71.98],[131.29,70.79],[132.25,71.84],[133.86,71.39],[139.87,71.49],[139.15,72.42],[140.47,72.85],[149.5,72.2],[152.97,70.84],[159.0,70.87],[159.83,70.45],[159.71,69.72],[160.94,69.44],[167.84,69.58],[169.58,68.69],[170.82,69.01],[170.01,69.65],[170.45,70.1],[175.72,69.88],[180,68.96],[180,64.98],[177.41,64.61],[179.37,62.98],[179.23,62.3],[177.36,62.52],[173.68,61.65],[170.33,59.88],[168.9,60.57],[166.29,59.79],[165.84,60.16],[163.54,59.87],[162.02,58.24],[163.19,57.62],[163.06,56.16],[162.13,56.12],[161.7,55.29],[162.12,54.86],[160.37,54.34],[160.02,53.2],[158.53,52.96],[158.23,51.94],[156.79,51.01],[155.43,55.38],[155.91,56.77],[156.81,57.83],[158.36,58.06],[163.67,61.14],[164.47,62.55],[163.26,62.47],[162.66,61.64],[160.12,60.54],[159.3,61.77],[156.72,61.43],[154.22,59.76],[155.04,59.14],[151.27,58.78],[151.34,59.5],[149.78,59.66],[148.54,59.16],[142.2,59.04],[135.13,54.73],[136.7,54.6],[138.16,53.76],[139.9,54.19],[141.35,53.09],[140.06,48.45],[134.87,43.4],[133.54,42.81],[132.28,43.28],[130.78,42.22],[131.03,44.97],[133.1,45.14],[135.03,48.48],[130.99,47.79],[130.58,48.73],[129.4,49.44],[127.66,49.76],[125.95,52.79],[123.57,53.46],[120.18,52.75],[120.74,51.96],[119.29,50.14],[117.88,49.51],[114.36,50.25],[110.66,49.13],[108.48,49.28],[106.89,50.27],[103.68,50.09],[102.26,50.51],[102.07,51.26],[98.86,52.05],[97.83,51.01],[98.23,50.42],[97.26,49.73],[92.23,50.8],[87.36,49.21],[83.38,51.07],[81.95,50.81],[80.57,51.39],[80.04,50.86],[76.53,54.18],[76.89,54.49],[73.43,53.49],[73.51,54.04],[71.18,54.13],[70.87,55.17],[69.07,55.39],[61.44,54.01],[60.98,53.66],[61.7,52.98],[59.97,51.96],[61.59,51.27],[61.34,50.8],[56.78,51.04],[55.72,50.62],[52.33,51.72],[50.77,51.69],[48.7,50.61],[48.58,49.87],[47.55,50.45],[46.47,48.39],[48.06,47.74],[49.1,46.4]],[[93.78,81.02],[95.94,81.25],[100.19,79.78],[99.94,78.88],[97.76,78.76],[93.31,79.43],[92.55,80.14],[91.18,80.34],[93.78,81.02]],[[102.84,79.28],[105.37,78.71],[105.08,78.31],[99.44,77.92],[101.26,79.23],[102.84,79.28]],[[138.83,76.14],[145.09,75.56],[144.3,74.82],[138.96,74.61],[136.97,75.26],[137.51,75.95],[138.83,76.14]],[[148.22,75.35],[150.73,75.08],[149.58,74.69],[146.12,75.17],[148.22,75.35]],[[139.86,73.37],[142.06,73.86],[143.6,73.21],[139.86,73.37]],[[44.85,80.59],[51.52,80.7],[47.59,80.01],[46.5,80.25],[47.07,80.56],[44.85,80.59]],[[22.73,54.33],[19.66,54.43],[21.27,55.19],[22.76,54.86],[22.73,54.33]],[[53.51,73.75],[55.9,74.63],[55.63,75.08],[61.17,76.25],[68.16,76.94],[68.85,76.54],[58.48,74.31],[55.42,72.37],[55.62,71.54],[57.54,70.72],[53.68,70.76],[51.6,71.47],[51.46,72.01],[52.48,72.23],[52.44,72.77],[54.43,73.63],[53.51,73.75]],[[142.91,53.7],[143.24,51.76],[144.65,48.98],[143.17,49.31],[142.56,47.86],[143.53,46.84],[143.51,46.14],[142.75,46.74],[142.09,45.97],[142.18,50.95],[141.59,51.94],[141.68,53.3],[142.61,53.76],[142.21,54.23],[142.65,54.37],[142.91,53.7]],[[-174.93,67.21],[-175.01,66.58],[-174.34,66.34],[-174.57,67.06],[-171.86,66.91],[-169.9,65.98],[-172.53,65.44],[-172.96,64.25],[-176.21,65.36],[-178.36,65.39],[-178.9,65.74],[-178.69,66.11],[-179.88,65.87],[-179.43,65.4],[-180,64.98],[-180,68.96],[-174.93,67.21]],[[-178.69,70.89],[-180,70.83],[-180,71.52],[-177.58,71.27],[-178.69,70.89]],[[33.44,45.97],[36.53,45.47],[33.88,44.36],[33.33,44.56],[33.55,45.03],[32.45,45.33],[33.44,45.97]],[[-78.98,26.79],[-77.82,26.58],[-78.91,26.42],[-78.98,26.79]],[[-77.79,27.04],[-77,26.59],[-77.17,25.88],[-77.79,27.04]],[[-78.19,25.21],[-77.53,23.76],[-78.41,24.58],[-78.19,25.21]],[[-61.2,-51.85],[-58.55,-51.1],[-57.75,-51.55],[-59.4,-52.2],[-61.2,-51.85]],[[15.14,79.67],[16.99,80.05],[21.54,78.96],[19.03,78.56],[17.12,76.81],[15.91,76.77],[13.76,77.38],[14.67,77.74],[11.22,78.87],[10.44,79.65],[15.14,79.67]],[[31.1,69.56],[28.59,69.06],[29.02,69.77],[27.73,70.16],[26.18,69.83],[24.74,68.65],[21.24,69.37],[20.03,69.07],[19.88,68.41],[17.99,68.57],[17.73,68.01],[16.77,68.01],[13.56,64.79],[13.92,64.45],[13.57,64.05],[12.58,64.07],[11.93,63.13],[11.99,61.8],[12.63,61.29],[12.3,60.12],[11.03,58.86],[10.36,59.47],[8.38,58.31],[7.05,58.08],[5.67,58.59],[4.99,61.97],[10.53,64.49],[14.76,67.81],[19.18,69.82],[23.02,70.2],[24.55,71.03],[28.17,71.19],[31.29,70.45],[30.01,70.19],[31.1,69.56]],[[27.41,80.06],[23.02,79.4],[17.37,80.32],[22.92,80.66],[27.41,80.06]],[[24.72,77.85],[20.73,77.68],[21.42,77.94],[20.81,78.25],[22.88,78.45],[24.72,77.85]],[[-46.76,82.63],[-38.62,83.55],[-27.1,83.52],[-20.85,82.73],[-31.9,82.2],[-22.07,81.73],[-23.17,81.15],[-15.77,81.91],[-12.21,81.29],[-20.05,80.18],[-17.73,80.13],[-19.7,78.75],[-19.67,77.64],[-18.47,76.99],[-21.68,76.63],[-19.83,76.1],[-19.6,75.25],[-20.67,75.16],[-19.37,74.3],[-21.59,74.22],[-20.43,73.82],[-20.76,73.46],[-23.57,73.31],[-22.3,72.18],[-24.79,72.33],[-22.13,71.47],[-21.75,70.66],[-23.54,70.47],[-25.54,71.43],[-25.2,70.75],[-26.36,70.23],[-22.35,70.13],[-27.75,68.47],[-31.78,68.12],[-34.2,66.68],[-39.81,65.46],[-41.19,63.48],[-42.82,62.68],[-42.42,61.9],[-43.38,60.1],[-48.26,60.86],[-51.63,63.63],[-52.28,65.18],[-53.66,66.1],[-53.3,66.84],[-53.97,67.19],[-52.98,68.36],[-51.48,68.73],[-50.87,69.93],[-53.46,69.28],[-54.68,69.61],[-54.36,70.82],[-51.39,70.57],[-55.83,71.65],[-54.72,72.59],[-58.59,75.52],[-61.27,76.1],[-68.5,76.06],[-71.4,77.01],[-66.76,77.38],[-73.3,78.04],[-73.16,78.43],[-65.71,79.39],[-65.32,79.76],[-68.02,80.12],[-62.23,81.32],[-62.65,81.77],[-57.21,82.19],[-53.04,81.89],[-50.39,82.44],[-44.52,81.66],[-46.9,82.2],[-46.76,82.63]],[[68.94,-48.62],[70.56,-49.26],[70.28,-49.71],[68.75,-49.77],[68.94,-48.62]],[[124.97,-8.89],[127.34,-8.4],[125.09,-9.39],[124.97,-8.89]],[[16.34,-28.58],[16.82,-28.08],[18.46,-29.05],[19.89,-28.46],[19.9,-24.77],[20.89,-26.83],[21.61,-26.73],[23.31,-25.27],[25.66,-25.49],[27.12,-23.57],[29.43,-22.09],[31.19,-22.25],[31.93,-24.37],[31.84,-25.84],[31.04,-25.73],[30.69,-26.74],[31.28,-27.29],[32.83,-26.74],[32.2,-28.75],[28.22,-32.77],[25.78,-33.94],[22.57,-33.86],[20.07,-34.8],[18.38,-34.14],[17.93,-32.61],[18.22,-31.66],[16.34,-28.58]],[[28.98,-28.96],[29.33,-29.26],[28.11,-30.55],[27.0,-29.88],[28.07,-28.85],[28.98,-28.96]],[[-117.13,32.54],[-114.72,32.72],[-111.02,31.33],[-106.51,31.75],[-103.94,29.27],[-103.11,28.97],[-102.48,29.76],[-101.66,29.78],[-99.02,26.37],[-97.14,25.87],[-97.87,22.44],[-95.9,18.83],[-94.43,18.14],[-91.41,18.88],[-90.77,19.28],[-90.28,21.0],[-87.05,21.54],[-86.85,20.85],[-87.84,18.26],[-91.0,17.82],[-91.0,17.25],[-91.45,17.25],[-90.46,16.07],[-91.75,16.07],[-92.23,14.54],[-93.88,15.94],[-96.56,15.65],[-103.5,18.29],[-105.49,19.95],[-105.27,21.42],[-106.03,22.77],[-112.23,28.95],[-113.15,31.17],[-114.78,31.8],[-114.94,31.39],[-114.67,30.16],[-111.62,26.66],[-110.66,24.3],[-109.41,23.36],[-109.85,22.82],[-112.18,24.74],[-112.3,26.01],[-115.06,27.72],[-114.16,28.57],[-115.52,29.56],[-117.13,32.54]],[[-57.63,-30.22],[-56.98,-30.11],[-53.79,-32.05],[-53.21,-32.73],[-53.81,-34.4],[-56.22,-34.86],[-58.43,-33.91],[-57.63,-30.22]],[[-53.37,-33.77],[-53.65,-33.2],[-53.21,-32.73],[-53.79,-32.05],[-56.98,-30.11],[-57.63,-30.22],[-53.65,-26.92],[-53.63,-26.12],[-54.13,-25.55],[-54.63,-25.74],[-54.29,-24.02],[-55.4,-23.96],[-55.8,-22.36],[-57.94,-22.09],[-58.17,-20.18],[-57.5,-18.17],[-58.28,-17.27],[-58.24,-16.3],[-60.16,-16.26],[-60.5,-13.78],[-64.32,-12.46],[-65.4,-11.57],[-65.34,-9.76],[-66.65,-9.93],[-68.27,-11.01],[-70.55,-11.01],[-70.48,-9.49],[-72.18,-10.05],[-73.23,-9.46],[-73.02,-9.03],[-73.99,-7.52],[-73.12,-6.63],[-72.89,-5.27],[-69.89,-4.3],[-69.42,-1.12],[-70.02,0.54],[-69.22,0.99],[-69.8,1.09],[-69.82,1.71],[-67.54,2.04],[-67.07,1.13],[-65.55,0.79],[-63.37,2.2],[-64.27,2.5],[-64.82,4.06],[-63.09,3.77],[-60.97,4.54],[-60.73,5.2],[-59.98,5.01],[-59.54,3.96],[-59.97,2.76],[-59.03,1.32],[-56.0,1.82],[-55.97,2.51],[-52.94,2.12],[-51.32,4.2],[-50.51,1.9],[-49.97,1.74],[-50.7,0.22],[-50.39,-0.08],[-48.62,-0.24],[-48.58,-1.24],[-47.82,-0.58],[-44.91,-1.55],[-44.58,-2.69],[-43.42,-2.38],[-39.98,-2.87],[-37.22,-4.82],[-35.6,-5.15],[-34.73,-7.34],[-35.13,-9.0],[-38.67,-13.06],[-39.27,-17.87],[-40.94,-21.94],[-41.99,-22.97],[-44.65,-23.35],[-47.65,-24.89],[-48.5,-25.88],[-48.89,-28.67],[-53.37,-33.77]],[[-69.53,-10.95],[-68.27,-11.01],[-66.65,-9.93],[-65.34,-9.76],[-65.4,-11.57],[-64.32,-12.46],[-60.5,-13.78],[-60.16,-16.26],[-58.24,-16.3],[-58.28,-17.27],[-57.5,-18.17],[-57.85,-19.97],[-59.12,-19.36],[-61.79,-19.63],[-62.69,-22.25],[-63.99,-21.99],[-64.38,-22.8],[-64.96,-22.08],[-66.27,-21.83],[-67.83,-22.87],[-68.76,-20.37],[-68.44,-19.41],[-69.59,-17.58],[-68.96,-16.5],[-69.34,-14.95],[-68.67,-12.56],[-69.53,-10.95]],[[-69.89,-4.3],[-72.89,-5.27],[-73.12,-6.63],[-73.99,-7.52],[-73.02,-9.03],[-73.23,-9.46],[-72.18,-10.05],[-70.48,-9.49],[-70.55,-11.01],[-69.53,-10.95],[-68.67,-12.56],[-69.34,-14.95],[-68.96,-16.5],[-70.37,-18.35],[-76.01,-14.65],[-79.76,-7.19],[-81.25,-6.14],[-80.93,-5.69],[-81.41,-4.74],[-80.3,-3.4],[-80.44,-4.43],[-79.21,-4.96],[-78.64,-4.55],[-77.84,-3.0],[-75.54,-1.56],[-75.11,-0.06],[-73.07,-2.31],[-70.81,-2.26],[-70.05,-2.73],[-70.69,-3.74],[-69.89,-4.3]],[[-66.88,1.25],[-67.54,2.04],[-69.82,1.71],[-69.8,1.09],[-69.22,0.99],[-70.02,0.54],[-69.42,-1.12],[-69.89,-4.3],[-70.69,-3.74],[-70.05,-2.73],[-70.81,-2.26],[-73.07,-2.31],[-75.11,-0.06],[-77.42,0.4],[-78.99,1.69],[-77.13,3.85],[-77.88,7.22],[-77.24,7.94],[-77.47,8.52],[-75.67,9.44],[-74.91,11.08],[-73.41,11.23],[-71.4,12.38],[-71.33,11.78],[-72.91,10.45],[-73.3,9.15],[-72.79,9.09],[-71.96,6.99],[-70.09,6.96],[-69.39,6.1],[-67.34,6.1],[-67.82,4.5],[-67.3,3.32],[-67.81,2.82],[-66.88,1.25]],[[-77.35,8.67],[-77.24,7.94],[-77.88,7.22],[-78.18,8.32],[-79.12,9.0],[-80.38,8.3],[-80.0,7.55],[-80.89,7.22],[-81.72,8.11],[-82.85,8.07],[-82.93,9.48],[-81.44,8.79],[-79.02,9.55],[-77.35,8.67]],[[-82.55,9.57],[-82.97,8.23],[-84.98,10.09],[-85.11,9.56],[-85.66,9.93],[-85.94,10.9],[-83.66,10.94],[-82.55,9.57]],[[-83.66,10.94],[-85.71,11.09],[-87.67,12.91],[-84.92,14.79],[-83.15,15.0],[-83.66,10.94]],[[-83.15,15.0],[-84.92,14.79],[-87.32,12.98],[-87.86,13.89],[-89.35,14.42],[-87.9,15.86],[-84.98,16.0],[-83.15,15.0]],[[-89.35,14.42],[-87.72,13.79],[-87.9,13.15],[-90.1,13.74],[-89.35,14.42]],[[-92.23,14.54],[-91.75,16.07],[-90.46,16.07],[-91.45,17.25],[-91.0,17.25],[-91.0,17.82],[-89.14,17.81],[-89.23,15.89],[-88.23,15.73],[-89.35,14.42],[-90.1,13.74],[-92.23,14.54]],[[-89.14,17.81],[-88.11,18.35],[-88.93,15.89],[-89.14,17.81]],[[-60.73,5.2],[-60.97,4.54],[-63.09,3.77],[-64.82,4.06],[-64.27,2.5],[-63.37,2.2],[-66.33,0.72],[-67.81,2.82],[-67.3,3.32],[-67.82,4.5],[-67.34,6.1],[-69.39,6.1],[-70.09,6.96],[-71.96,6.99],[-72.79,9.09],[-73.3,9.15],[-72.91,10.45],[-71.33,11.78],[-71.95,11.42],[-71.63,10.45],[-72.07,9.87],[-71.26,9.14],[-71.4,10.97],[-70.16,11.38],[-69.94,12.16],[-68.19,10.55],[-66.23,10.65],[-64.89,10.08],[-64.32,10.64],[-61.88,10.72],[-62.73,10.42],[-59.76,8.37],[-61.41,5.96],[-60.73,5.2]],[[-56.54,1.9],[-58.54,1.27],[-59.65,1.79],[-59.98,5.01],[-61.41,5.96],[-59.76,8.37],[-57.15,5.97],[-58.04,4.06],[-56.54,1.9]],[[-54.52,2.31],[-55.97,2.51],[-56.0,1.82],[-56.54,1.9],[-57.6,3.33],[-58.04,4.06],[-57.15,5.97],[-53.96,5.76],[-54.48,4.9],[-54.01,3.62],[-54.52,2.31]],[[-51.66,4.16],[-52.94,2.12],[-54.52,2.31],[-54.01,3.62],[-54.48,4.9],[-53.96,5.76],[-51.66,4.16]],[[6.19,49.46],[8.1,49.02],[7.47,47.62],[6.04,46.73],[6.84,45.99],[7.44,43.69],[6.53,43.13],[3.1,43.08],[2.99,42.47],[1.83,42.34],[-1.9,43.42],[-1.19,46.01],[-2.96,47.57],[-4.49,47.95],[-4.59,48.68],[-1.62,48.64],[-1.93,49.78],[-0.99,49.35],[1.34,50.13],[1.64,50.95],[2.51,51.15],[4.29,49.91],[6.19,49.46]],[[8.75,42.63],[9.39,43.01],[9.23,41.38],[8.75,42.63]],[[-75.37,-0.15],[-75.54,-1.56],[-77.84,-3.0],[-78.64,-4.55],[-79.21,-4.96],[-80.44,-4.43],[-79.77,-2.66],[-80.97,-2.25],[-80.93,-1.06],[-80.09,0.77],[-78.86,1.38],[-75.37,-0.15]],[[-66.28,18.51],[-65.59,18.23],[-67.18,17.95],[-67.1,18.52],[-66.28,18.51]],[[-77.57,18.49],[-76.2,17.89],[-78.34,18.23],[-77.57,18.49]],[[-82.27,23.19],[-78.35,22.51],[-74.18,20.28],[-77.76,19.86],[-77.09,20.41],[-78.14,20.74],[-78.72,21.6],[-82.17,22.39],[-81.8,22.64],[-84.97,21.9],[-82.27,23.19]],[[31.19,-22.25],[28.02,-21.49],[25.26,-17.74],[27.04,-17.94],[28.95,-16.04],[30.27,-15.51],[32.85,-16.71],[32.66,-20.3],[31.19,-22.25]],[[29.43,-22.09],[27.12,-23.57],[25.66,-25.49],[23.31,-25.27],[21.61,-26.73],[20.89,-26.83],[19.9,-24.77],[19.9,-21.85],[20.88,-21.81],[20.91,-18.25],[25.26,-17.74],[28.02,-21.49],[29.43,-22.09]],[[19.9,-24.77],[19.89,-28.46],[18.46,-29.05],[16.82,-28.08],[16.34,-28.58],[15.21,-27.09],[14.26,-22.11],[11.73,-17.3],[13.46,-16.97],[14.06,-17.42],[18.26,-17.31],[21.38,-17.93],[24.03,-17.3],[25.08,-17.58],[23.58,-18.28],[23.2,-17.87],[20.91,-18.25],[20.88,-21.81],[19.9,-21.85],[19.9,-24.77]],[[-16.71,13.59],[-17.63,14.73],[-16.12,16.46],[-14.58,16.6],[-12.17,14.62],[-11.51,12.44],[-16.68,12.38],[-16.84,13.15],[-13.84,13.51],[-16.71,13.59]],[[-11.51,12.44],[-12.17,14.62],[-11.67,15.39],[-5.54,15.5],[-6.45,24.96],[-4.92,24.97],[3.15,19.69],[3.16,19.06],[4.27,19.16],[4.27,16.85],[3.64,15.57],[-1.07,14.97],[-4.01,13.47],[-5.22,11.71],[-5.4,10.37],[-8.03,10.21],[-9.13,12.31],[-10.17,11.84],[-11.51,12.44]],[[-17.06,21.0],[-12.93,21.33],[-12.87,23.28],[-11.94,23.37],[-11.97,25.93],[-8.69,25.88],[-8.68,27.4],[-4.92,24.97],[-6.45,24.96],[-5.54,15.5],[-11.67,15.39],[-12.17,14.62],[-14.58,16.6],[-16.46,16.14],[-16.28,20.09],[-17.06,21.0]],[[2.69,6.26],[1.87,6.14],[1.66,9.13],[0.77,10.47],[1.45,11.55],[2.85,12.24],[3.8,10.73],[2.72,8.51],[2.69,6.26]],[[14.85,22.86],[15.1,21.31],[15.9,20.39],[15.25,16.63],[13.97,15.68],[13.54,14.37],[13.95,13.35],[14.6,13.33],[14.18,12.48],[13.08,13.6],[12.3,13.04],[10.99,13.39],[9.01,12.83],[5.44,13.87],[4.11,13.53],[3.61,11.66],[2.85,12.24],[2.15,11.94],[2.18,12.63],[1.02,12.85],[0.37,14.93],[3.64,15.57],[4.27,16.85],[4.27,19.16],[12.0,23.47],[14.14,22.49],[14.85,22.86]],[[2.69,6.26],[2.72,8.51],[3.71,10.06],[3.68,12.55],[4.37,13.75],[9.01,12.83],[10.99,13.39],[12.3,13.04],[13.08,13.6],[14.58,12.09],[11.75,6.98],[11.06,6.64],[10.12,7.04],[9.23,6.44],[8.5,4.77],[5.9,4.26],[4.33,6.27],[2.69,6.26]],[[14.5,12.86],[15.47,9.98],[14.17,10.02],[13.95,9.55],[15.44,7.69],[14.54,6.23],[14.48,4.73],[15.86,3.01],[15.94,1.73],[14.34,2.23],[9.65,2.28],[9.8,3.07],[8.49,4.5],[8.76,5.48],[10.12,7.04],[11.06,6.64],[11.75,6.98],[14.42,11.57],[14.5,12.86]],[[0.9,11.0],[1.66,9.13],[1.87,6.14],[1.06,5.93],[-0.05,10.71],[0.9,11.0]],[[0.02,11.02],[1.06,5.93],[-1.96,4.71],[-2.86,4.99],[-3.24,6.25],[-2.56,8.22],[-2.94,10.96],[0.02,11.02]],[[-8.03,10.21],[-6.21,10.52],[-4.33,9.61],[-2.83,9.64],[-2.56,8.22],[-3.24,6.25],[-2.86,4.99],[-4.65,5.17],[-7.71,4.36],[-7.57,5.71],[-8.6,6.47],[-7.83,8.58],[-8.03,10.21]],[[-13.7,12.59],[-10.17,11.84],[-9.13,12.31],[-8.03,10.21],[-7.83,8.58],[-8.28,7.69],[-9.21,7.31],[-9.76,8.54],[-10.51,8.35],[-11.12,10.05],[-12.43,9.84],[-13.25,8.9],[-15.13,11.04],[-13.74,11.81],[-13.7,12.59]],[[-16.68,12.38],[-13.7,12.59],[-13.74,11.81],[-15.13,11.04],[-16.68,12.38]],[[-8.44,7.69],[-8.6,6.47],[-7.57,5.71],[-7.71,4.36],[-11.44,6.79],[-10.23,8.41],[-9.76,8.54],[-9.21,7.31],[-8.44,7.69]],[[-13.25,8.9],[-12.43,9.84],[-11.12,10.05],[-10.23,8.41],[-11.44,6.79],[-12.95,7.8],[-13.25,8.9]],[[-5.4,10.37],[-4.28,13.23],[-1.07,14.97],[0.37,14.93],[1.02,12.85],[2.18,12.63],[1.94,11.64],[0.9,11.0],[-2.94,10.96],[-2.83,9.64],[-4.33,9.61],[-5.4,10.37]],[[27.37,5.23],[24.41,5.11],[22.84,4.71],[22.41,4.03],[19.47,5.03],[18.45,3.5],[17.13,3.73],[16.01,2.27],[14.46,5.45],[15.28,7.42],[17.96,7.89],[18.81,8.98],[21.0,9.48],[22.86,11.14],[23.55,10.09],[23.46,8.95],[27.37,5.23]],[[18.45,3.5],[17.64,-0.42],[16.41,-1.74],[16.01,-3.54],[14.58,-4.97],[12.62,-4.44],[11.91,-5.04],[11.09,-3.98],[11.86,-3.43],[11.48,-2.77],[12.58,-1.95],[13.99,-2.47],[14.43,-1.33],[13.84,0.04],[14.28,1.2],[13.28,1.31],[13.08,2.27],[15.94,1.73],[17.13,3.73],[18.45,3.5]],[[11.28,2.26],[12.95,2.32],[13.28,1.31],[14.28,1.2],[13.84,0.04],[14.43,-1.33],[13.99,-2.47],[12.58,-1.95],[11.48,-2.77],[11.86,-3.43],[11.09,-3.98],[8.8,-1.11],[9.49,1.01],[11.29,1.06],[11.28,2.26]],[[9.65,2.28],[11.28,2.26],[11.29,1.06],[9.49,1.01],[9.65,2.28]],[[30.74,-8.34],[33.23,-9.68],[33.31,-12.44],[32.69,-13.71],[33.21,-13.97],[30.18,-14.8],[30.27,-15.51],[28.95,-16.04],[27.04,-17.94],[23.22,-17.52],[21.89,-16.08],[21.93,-12.9],[24.02,-12.91],[23.91,-10.93],[25.75,-11.78],[27.16,-11.61],[28.93,-13.25],[29.7,-13.26],[29.62,-12.18],[28.37,-11.79],[28.45,-9.16],[29.0,-8.41],[30.74,-8.34]],[[32.76,-9.23],[33.74,-9.42],[34.28,-10.16],[34.56,-13.58],[35.69,-14.61],[35.77,-15.9],[35.03,-16.8],[34.38,-16.18],[34.46,-14.61],[32.69,-13.71],[33.49,-10.53],[32.76,-9.23]],[[34.56,-11.52],[37.47,-11.57],[40.32,-10.32],[40.78,-14.69],[39.45,-16.72],[37.41,-17.59],[34.79,-19.78],[35.56,-22.09],[35.46,-24.12],[33.01,-25.36],[32.57,-25.73],[32.83,-26.74],[32.07,-26.73],[31.19,-22.25],[32.66,-20.3],[32.85,-16.71],[30.34,-15.88],[30.18,-14.8],[33.21,-13.97],[34.46,-14.61],[34.38,-16.18],[35.03,-16.8],[35.77,-15.9],[35.69,-14.61],[34.56,-13.58],[34.56,-11.52]],[[32.07,-26.73],[31.28,-27.29],[30.69,-26.74],[31.04,-25.73],[31.84,-25.84],[32.07,-26.73]],[[13.0,-4.78],[12.18,-5.79],[11.91,-5.04],[12.62,-4.44],[13.0,-4.78]],[[12.32,-6.1],[16.33,-5.88],[17.47,-8.07],[19.02,-7.99],[20.09,-6.94],[21.73,-7.29],[22.16,-11.08],[24.02,-11.24],[24.02,-12.91],[21.93,-12.9],[21.89,-16.08],[23.22,-17.52],[21.38,-17.93],[18.26,-17.31],[14.06,-17.42],[13.46,-16.97],[11.73,-17.3],[12.18,-14.45],[13.74,-11.3],[12.32,-6.1]],[[30.47,-2.41],[30.75,-3.36],[29.34,-4.5],[29.02,-2.84],[30.47,-2.41]],[[35.72,32.71],[34.97,31.87],[35.42,31.1],[34.92,29.5],[34.27,31.22],[35.1,33.08],[35.82,33.28],[35.72,32.71]],[[35.82,33.28],[35.13,33.09],[36.0,34.64],[36.45,34.59],[35.82,33.28]],[[49.54,-12.47],[50.38,-15.71],[49.67,-15.71],[49.77,-16.88],[47.1,-24.94],[45.41,-25.6],[44.04,-24.99],[43.35,-22.78],[43.43,-21.34],[44.46,-19.44],[43.96,-17.41],[44.45,-16.22],[46.31,-15.78],[47.71,-14.59],[49.19,-12.04],[49.54,-12.47]],[[35.4,31.49],[34.93,31.35],[35.18,32.53],[35.4,31.49]],[[-16.71,13.59],[-13.84,13.51],[-16.84,13.15],[-16.71,13.59]],[[9.48,30.31],[9.06,32.1],[7.61,33.34],[7.52,34.1],[8.14,34.66],[8.42,36.95],[9.51,37.35],[10.21,37.23],[10.18,36.72],[11.03,37.09],[10.6,36.41],[10.81,34.83],[10.15,34.33],[11.49,33.14],[11.43,32.37],[9.95,31.38],[9.97,30.54],[9.48,30.31]],[[-8.68,27.4],[-8.67,28.84],[-5.24,30.0],[-3.69,30.9],[-3.65,31.64],[-1.31,32.26],[-2.17,35.17],[-1.21,35.71],[1.47,36.61],[8.42,36.95],[8.14,34.66],[7.52,34.1],[7.61,33.34],[9.06,32.1],[9.81,29.42],[9.32,26.09],[10.3,24.38],[10.77,24.56],[12.0,23.47],[5.68,19.6],[3.16,19.06],[3.15,19.69],[-8.68,27.4]],[[35.55,32.39],[36.83,32.31],[38.79,33.38],[39.2,32.16],[37.0,31.51],[38.0,30.51],[36.07,29.2],[34.92,29.5],[35.55,32.39]],[[51.58,24.25],[54.01,24.12],[56.07,26.06],[56.26,25.71],[56.4,24.92],[55.89,24.92],[55.98,24.13],[55.01,22.5],[52.0,23.0],[51.58,24.25]],[[50.81,24.75],[51.29,26.11],[51.61,25.22],[51.39,24.63],[50.81,24.75]],[[47.97,29.98],[48.42,28.55],[46.57,29.1],[47.3,30.06],[47.97,29.98]],[[39.2,32.16],[38.79,33.38],[41.01,34.42],[41.29,36.36],[42.78,37.39],[44.77,37.17],[46.08,35.68],[45.42,33.97],[47.33,32.47],[48.57,29.93],[47.3,30.06],[46.57,29.1],[44.71,29.18],[41.89,31.19],[39.2,32.16]],[[55.21,22.71],[55.89,24.92],[56.4,24.92],[59.81,22.31],[57.83,20.24],[57.69,18.94],[54.79,16.95],[53.11,16.65],[52.0,19.0],[55.0,20.0],[55.67,22.0],[55.21,22.71]],[[56.26,25.71],[56.36,26.4],[56.26,25.71]],[[167.22,-15.89],[167.84,-16.47],[167.22,-15.89]],[[166.79,-15.67],[166.63,-14.63],[167.27,-15.74],[166.79,-15.67]],[[102.58,12.19],[102.35,13.39],[102.99,14.23],[106.04,13.88],[106.5,14.57],[107.61,13.54],[107.49,12.34],[105.81,11.57],[106.25,10.96],[103.5,10.63],[102.58,12.19]],[[105.22,14.27],[102.99,14.23],[102.35,13.39],[102.58,12.19],[100.83,12.63],[100.98,13.41],[100.1,13.41],[99.22,9.24],[99.87,9.21],[100.46,7.43],[102.14,6.22],[101.15,5.69],[98.15,8.35],[99.59,11.89],[98.19,15.12],[98.9,16.18],[97.38,18.45],[98.25,19.71],[100.12,20.42],[100.61,19.51],[101.28,19.46],[101.06,17.51],[103.2,18.31],[104.72,17.43],[104.78,16.44],[105.59,15.57],[105.22,14.27]],[[107.38,14.2],[106.5,14.57],[106.04,13.88],[105.22,14.27],[105.59,15.57],[103.96,18.24],[101.06,17.51],[101.28,19.46],[100.61,19.51],[100.12,20.42],[101.18,21.44],[101.8,21.17],[101.65,22.32],[102.17,22.46],[103.2,20.77],[104.44,20.76],[104.82,19.89],[103.9,19.27],[105.09,18.67],[107.31,15.91],[107.38,14.2]],[[100.12,20.42],[98.25,19.71],[97.38,18.45],[98.9,16.18],[98.19,15.12],[99.59,11.89],[98.55,9.93],[98.51,13.12],[97.16,16.93],[95.37,15.71],[94.19,16.04],[94.32,18.21],[93.66,19.73],[92.37,20.67],[92.3,21.48],[93.17,22.28],[93.33,24.08],[94.11,23.85],[95.12,26.57],[96.42,27.26],[97.13,27.08],[97.33,28.26],[98.68,27.51],[98.67,25.92],[97.72,25.08],[97.6,23.9],[98.66,24.06],[98.9,23.14],[99.53,22.95],[99.24,22.12],[100.42,21.56],[101.15,21.85],[100.12,20.42]],[[104.33,10.49],[106.25,10.96],[105.81,11.57],[107.49,12.34],[107.56,15.2],[105.09,18.67],[103.9,19.27],[104.82,19.89],[104.44,20.76],[103.2,20.77],[102.17,22.46],[105.33,23.35],[108.05,21.55],[106.72,20.7],[105.66,19.06],[108.88,15.28],[109.2,11.67],[105.16,8.6],[105.08,9.92],[104.33,10.49]],[[130.64,42.4],[129.67,41.6],[129.71,40.88],[127.53,39.76],[127.39,39.21],[128.21,38.37],[125.28,37.67],[124.71,38.11],[125.39,39.39],[124.27,39.93],[125.08,40.57],[126.87,41.82],[128.21,41.47],[128.05,41.99],[129.99,42.99],[130.64,42.4]],[[126.17,37.75],[128.35,38.61],[129.46,36.78],[129.09,35.08],[126.49,34.39],[126.12,36.73],[126.86,36.89],[126.17,37.75]],[[87.75,49.3],[92.23,50.8],[97.26,49.73],[98.23,50.42],[97.83,51.01],[98.86,52.05],[102.07,51.26],[102.26,50.51],[103.68,50.09],[106.89,50.27],[108.48,49.28],[110.66,49.13],[114.36,50.25],[116.68,49.89],[115.49,48.14],[115.74,47.73],[118.06,48.07],[119.77,47.05],[117.42,46.67],[113.46,44.81],[111.87,45.1],[111.35,44.46],[111.83,43.74],[110.41,42.87],[104.96,41.6],[100.85,42.66],[96.35,42.73],[95.31,44.24],[90.95,45.29],[90.59,45.72],[90.97,46.89],[90.28,47.69],[88.01,48.6],[87.75,49.3]],[[97.33,28.26],[97.13,27.08],[96.42,27.26],[95.12,26.57],[94.11,23.85],[93.33,24.08],[93.17,22.28],[92.67,22.04],[92.15,23.63],[91.71,22.99],[91.16,23.5],[92.38,24.98],[89.92,25.27],[89.83,25.97],[88.56,26.45],[88.21,25.77],[88.93,25.24],[88.08,24.5],[88.7,24.23],[88.89,21.69],[86.98,21.5],[86.5,20.15],[85.06,19.48],[82.19,16.56],[80.32,15.9],[79.86,10.36],[77.54,7.97],[76.59,8.9],[73.53,15.99],[72.63,21.36],[70.47,20.88],[69.16,22.09],[69.64,22.45],[69.35,22.84],[68.18,23.69],[68.84,24.36],[71.04,24.36],[69.51,26.94],[70.62,27.99],[71.78,27.91],[75.26,32.27],[74.45,32.76],[73.75,34.32],[74.24,34.75],[76.87,34.65],[77.84,35.49],[78.91,34.32],[79.21,32.99],[79.18,32.48],[78.46,32.62],[78.74,31.52],[81.11,30.18],[80.09,28.79],[83.3,27.36],[88.06,26.41],[88.12,27.88],[88.73,28.09],[88.84,27.1],[89.74,26.72],[92.03,26.84],[91.7,27.77],[94.57,29.28],[96.12,29.45],[96.59,28.83],[96.25,28.41],[97.33,28.26]],[[92.67,22.04],[92.37,20.67],[91.42,22.77],[90.5,22.81],[90.27,21.84],[89.03,22.06],[88.7,24.23],[88.08,24.5],[88.93,25.24],[88.21,25.77],[88.56,26.45],[89.83,25.97],[89.92,25.27],[92.38,24.98],[91.16,23.5],[91.71,22.99],[92.15,23.63],[92.67,22.04]],[[91.7,27.77],[92.03,26.84],[88.84,27.1],[90.02,28.3],[91.7,27.77]],[[88.12,27.88],[88.06,26.41],[87.23,26.4],[80.09,28.79],[81.53,30.42],[85.82,28.2],[88.12,27.88]],[[77.84,35.49],[76.87,34.65],[74.24,34.75],[73.75,34.32],[74.45,32.76],[75.26,32.27],[71.78,27.91],[70.62,27.99],[69.51,26.94],[71.04,24.36],[68.84,24.36],[68.18,23.69],[66.37,25.43],[61.5,25.08],[61.87,26.24],[63.32,26.76],[62.73,28.26],[60.87,29.83],[62.55,29.32],[66.35,29.89],[66.94,31.3],[69.32,31.9],[69.26,32.5],[70.32,33.36],[69.93,34.02],[70.88,33.99],[71.61,35.15],[71.26,36.07],[71.85,36.51],[75.16,37.13],[76.19,35.9],[77.84,35.49]],[[66.52,37.36],[69.2,37.15],[70.81,38.49],[71.84,36.74],[73.26,37.5],[75.16,37.13],[71.26,36.07],[71.61,35.15],[70.88,33.99],[69.93,34.02],[70.32,33.36],[69.26,32.5],[69.32,31.9],[66.94,31.3],[66.35,29.89],[62.55,29.32],[60.87,29.83],[61.78,30.74],[60.54,32.98],[61.21,35.65],[62.98,35.4],[64.55,36.31],[64.75,37.11],[65.75,37.66],[66.52,37.36]],[[67.83,37.14],[68.39,38.16],[68.18,38.9],[67.44,39.14],[67.7,39.58],[68.54,39.53],[69.33,40.73],[70.67,40.96],[70.46,40.5],[71.01,40.24],[69.56,40.1],[69.46,39.53],[73.68,39.43],[73.93,38.51],[74.86,38.38],[74.98,37.42],[73.26,37.5],[71.84,36.74],[70.81,38.49],[69.2,37.15],[67.83,37.14]],[[70.96,42.27],[71.84,42.85],[73.49,42.5],[74.21,43.3],[80.26,42.35],[76.9,41.07],[76.53,40.43],[74.78,40.37],[73.68,39.43],[69.46,39.53],[69.56,40.1],[71.77,40.15],[73.06,40.87],[70.42,41.52],[70.96,42.27]],[[52.5,41.78],[54.08,42.32],[55.46,41.26],[57.1,41.32],[56.93,41.83],[58.63,42.75],[59.98,42.22],[60.47,41.22],[61.88,41.08],[62.37,40.05],[64.17,38.89],[66.55,37.97],[66.52,37.36],[65.75,37.66],[64.75,37.11],[64.55,36.31],[62.23,35.27],[61.21,35.65],[61.12,36.49],[57.33,38.03],[55.51,37.96],[53.92,37.2],[53.88,38.95],[53.1,39.29],[53.36,39.98],[52.69,40.03],[52.92,40.88],[54.74,40.95],[53.72,42.12],[52.92,41.87],[52.81,41.14],[52.5,41.78]],[[48.57,29.93],[47.33,32.47],[45.42,33.97],[46.08,35.68],[44.23,37.97],[44.11,39.43],[44.79,39.71],[46.14,38.74],[48.06,39.58],[48.01,38.79],[49.2,37.58],[50.84,36.87],[53.83,36.97],[56.62,38.12],[61.12,36.49],[60.54,32.98],[61.78,30.74],[60.87,29.83],[62.73,28.26],[63.32,26.76],[61.87,26.24],[61.5,25.08],[57.4,25.74],[56.97,26.97],[54.72,26.48],[53.49,26.81],[51.52,27.87],[50.12,30.15],[48.57,29.93]],[[35.72,32.71],[36.61,34.2],[35.91,35.41],[36.74,36.82],[42.35,37.23],[41.29,36.36],[41.01,34.42],[36.83,32.31],[35.72,32.71]],[[46.51,38.77],[43.66,40.25],[43.58,41.09],[45.56,40.81],[46.51,38.77]],[[11.03,58.86],[12.3,60.12],[12.63,61.29],[11.99,61.8],[11.93,63.13],[12.58,64.07],[13.57,64.05],[13.92,64.45],[13.56,64.79],[16.77,68.01],[17.73,68.01],[17.99,68.57],[19.88,68.41],[20.03,69.07],[20.65,69.11],[23.54,67.94],[23.9,66.01],[22.18,65.72],[21.21,65.03],[21.37,64.41],[17.85,62.75],[17.12,61.34],[18.79,60.08],[17.87,58.95],[16.83,58.72],[15.88,56.1],[14.67,56.2],[14.1,55.41],[12.94,55.36],[11.03,58.86]],[[28.18,56.17],[30.87,55.55],[30.76,54.81],[32.69,53.35],[31.31,53.07],[31.79,52.1],[30.93,52.04],[30.56,51.32],[25.33,51.91],[23.53,51.58],[23.48,53.91],[25.54,54.28],[26.49,55.62],[28.18,56.17]],[[31.79,52.1],[33.75,52.34],[34.39,51.77],[34.22,51.26],[35.02,51.21],[35.36,50.58],[40.07,49.6],[39.74,47.9],[34.96,46.27],[35.01,45.74],[31.68,46.71],[30.75,46.58],[29.6,45.29],[28.68,45.3],[28.23,45.49],[28.86,46.44],[30.02,46.42],[28.67,48.12],[27.52,48.47],[24.87,47.74],[22.71,47.88],[22.09,48.42],[22.78,49.03],[22.52,49.48],[23.92,50.42],[23.53,51.58],[25.33,51.91],[30.56,51.32],[30.93,52.04],[31.79,52.1]],[[23.48,53.91],[23.8,52.69],[23.2,52.49],[24.03,50.71],[22.52,49.48],[22.78,49.03],[21.61,49.47],[19.83,49.22],[17.55,50.36],[16.18,50.42],[15.02,51.11],[14.07,52.98],[14.12,53.76],[17.62,54.85],[23.48,53.91]],[[16.98,48.12],[16.01,46.68],[14.63,46.43],[12.15,47.12],[11.05,46.75],[9.48,47.1],[9.9,47.58],[12.93,47.47],[12.88,48.29],[13.6,48.88],[16.5,48.79],[16.98,48.12]],[[22.09,48.42],[22.71,47.88],[21.02,46.32],[18.46,45.76],[16.2,46.85],[16.98,48.12],[17.86,47.76],[20.8,48.62],[22.09,48.42]],[[26.62,48.22],[28.67,48.12],[30.02,46.42],[28.86,46.44],[28.23,45.49],[28.13,46.81],[26.62,48.22]],[[28.23,45.49],[29.6,45.29],[28.84,44.91],[28.56,43.71],[27.24,44.18],[22.94,43.82],[22.71,44.58],[21.56,44.77],[20.22,46.13],[23.14,48.1],[24.87,47.74],[26.62,48.22],[28.13,46.81],[28.23,45.49]],[[26.49,55.62],[25.54,54.28],[23.48,53.91],[22.76,54.86],[21.27,55.19],[21.06,56.03],[24.86,56.37],[26.49,55.62]],[[27.29,57.47],[28.18,56.17],[26.49,55.62],[24.86,56.37],[21.06,56.03],[21.58,57.41],[22.52,57.75],[23.32,57.01],[24.12,57.03],[24.31,57.79],[25.16,57.97],[27.29,57.47]],[[27.98,59.48],[27.29,57.47],[24.31,57.79],[24.43,58.38],[23.43,58.61],[23.34,59.19],[27.98,59.48]],[[14.12,53.76],[15.02,51.11],[12.24,50.27],[13.6,48.88],[12.88,48.29],[12.93,47.47],[7.47,47.62],[8.1,49.02],[6.66,49.2],[6.04,50.13],[5.99,51.85],[6.84,52.23],[7.1,53.69],[8.12,53.53],[8.8,54.02],[8.53,54.96],[9.92,54.98],[10.94,54.01],[12.52,54.47],[14.12,53.76]],[[22.66,44.23],[22.94,43.82],[27.24,44.18],[28.56,43.71],[27.67,42.58],[28.0,42.01],[26.12,41.83],[26.11,41.33],[22.95,41.34],[22.38,42.32],[22.99,43.21],[22.66,44.23]],[[26.29,35.3],[24.72,34.92],[23.51,35.28],[23.7,35.71],[26.29,35.3]],[[22.95,41.34],[26.6,41.56],[26.06,40.82],[23.71,40.69],[24.41,40.12],[22.63,40.26],[24.04,37.66],[23.12,37.92],[23.41,37.41],[22.77,37.31],[23.15,36.42],[22.49,36.41],[21.67,36.84],[20.15,39.62],[21.02,40.84],[22.95,41.34]],[[44.77,37.17],[36.74,36.82],[36.15,35.82],[35.78,36.27],[36.16,36.65],[34.71,36.8],[34.03,36.22],[30.62,36.68],[29.7,36.14],[27.64,36.66],[26.32,38.21],[26.8,38.99],[26.17,39.46],[27.28,40.42],[28.82,40.46],[29.24,41.22],[31.15,41.09],[33.51,42.02],[35.17,42.04],[38.35,40.95],[42.62,41.58],[44.79,39.71],[44.11,39.43],[44.77,37.17]],[[26.12,41.83],[28.0,42.01],[28.99,41.3],[26.36,40.15],[26.06,40.82],[26.6,41.56],[26.12,41.83]],[[21.02,40.84],[20.15,39.62],[19.41,40.25],[19.3,42.2],[19.74,42.69],[20.52,42.22],[21.02,40.84]],[[16.56,46.5],[18.83,45.91],[19.39,45.24],[19.01,44.86],[15.96,45.23],[15.75,44.82],[18.45,42.48],[16.02,43.51],[14.9,45.08],[13.66,45.14],[15.33,45.45],[16.56,46.5]],[[9.59,47.53],[10.36,46.48],[7.27,45.78],[6.02,46.27],[6.74,47.54],[9.59,47.53]],[[6.04,50.13],[6.19,49.46],[5.67,49.53],[6.04,50.13]],[[6.16,50.8],[5.67,49.53],[2.51,51.15],[4.97,51.48],[6.16,50.8]],[[6.91,53.48],[6.84,52.23],[5.99,51.85],[6.16,50.8],[4.97,51.48],[3.31,51.35],[4.71,53.09],[6.91,53.48]],[[-9.03,41.88],[-8.26,42.28],[-6.39,41.38],[-7.5,39.63],[-7.03,38.08],[-7.86,36.84],[-8.9,36.87],[-8.84,38.27],[-9.53,38.74],[-8.77,40.76],[-9.03,41.88]],[[-7.45,37.1],[-7.03,38.08],[-7.5,39.63],[-6.39,41.38],[-8.26,42.28],[-9.03,41.88],[-9.39,43.03],[-7.98,43.75],[-1.9,43.42],[0.34,42.58],[2.99,42.47],[3.04,41.89],[2.09,41.23],[0.81,41.01],[-0.28,39.31],[0.11,38.74],[-2.15,36.67],[-4.37,36.68],[-5.38,35.95],[-7.45,37.1]],[[-6.2,53.87],[-6.03,53.15],[-6.79,52.26],[-9.98,51.82],[-9.17,52.86],[-9.69,53.88],[-7.57,55.13],[-7.57,54.06],[-6.2,53.87]],[[165.78,-21.08],[167.12,-22.16],[165.47,-21.68],[164.03,-20.11],[165.78,-21.08]],[[162.12,-10.48],[162.4,-10.83],[161.7,-10.82],[161.32,-10.2],[162.12,-10.48]],[[161.68,-9.6],[160.58,-8.32],[161.68,-9.6]],[[160.85,-9.87],[159.85,-9.79],[159.7,-9.24],[160.85,-9.87]],[[159.64,-8.02],[159.92,-8.54],[158.21,-7.42],[159.64,-8.02]],[[157.14,-7.02],[157.54,-7.35],[156.54,-6.6],[157.14,-7.02]],[[176.89,-40.07],[176.01,-41.29],[175.24,-41.69],[174.65,-41.28],[175.23,-40.46],[173.82,-39.51],[174.57,-38.8],[174.7,-37.38],[172.64,-34.53],[174.33,-35.27],[175.96,-37.56],[178.52,-37.7],[177.97,-39.17],[177.21,-39.15],[176.89,-40.07]],[[169.67,-43.56],[172.8,-40.49],[173.25,-41.33],[173.96,-40.93],[174.25,-41.35],[172.71,-43.37],[173.08,-43.85],[171.45,-44.24],[170.62,-45.91],[169.33,-46.64],[166.68,-46.22],[167.05,-45.11],[169.67,-43.56]],[[147.69,-40.81],[148.29,-40.88],[147.91,-43.21],[146.05,-43.55],[144.74,-40.7],[146.36,-41.14],[147.69,-40.81]],[[126.15,-32.22],[124.22,-32.96],[123.66,-33.89],[119.89,-33.98],[118.02,-35.06],[116.63,-35.03],[115.03,-34.2],[115.8,-32.21],[113.34,-26.12],[113.78,-26.55],[113.44,-25.62],[114.23,-26.3],[113.39,-24.38],[113.74,-22.48],[114.15,-21.76],[114.23,-22.52],[116.71,-20.7],[120.86,-19.68],[123.01,-16.41],[123.43,-17.27],[123.86,-17.07],[123.5,-16.6],[123.82,-16.11],[124.26,-16.33],[125.69,-14.23],[127.07,-13.82],[128.36,-14.87],[129.62,-14.97],[129.41,-14.42],[130.62,-12.54],[132.58,-12.11],[131.82,-11.27],[132.36,-11.13],[135.3,-12.25],[136.49,-11.86],[136.95,-12.35],[135.96,-13.32],[135.5,-15.0],[140.22,-17.71],[141.27,-16.39],[141.69,-12.41],[142.52,-10.67],[143.92,-14.55],[144.56,-14.17],[145.37,-14.98],[146.39,-18.96],[148.85,-20.39],[149.68,-22.34],[150.73,-22.4],[150.9,-23.46],[152.86,-25.27],[153.57,-28.11],[152.89,-31.64],[150.33,-35.67],[150.0,-37.43],[146.32,-39.04],[144.88,-38.42],[145.03,-37.9],[143.61,-38.81],[140.64,-38.02],[139.57,-36.14],[138.12,-35.61],[138.21,-34.38],[136.83,-35.26],[137.89,-33.64],[137.81,-32.9],[135.99,-34.89],[135.21,-34.48],[134.27,-32.62],[131.33,-31.5],[126.15,-32.22]],[[81.79,7.52],[81.64,6.48],[80.35,5.97],[79.7,8.2],[80.15,9.82],[81.79,7.52]],[[109.48,18.2],[108.66,18.51],[108.63,19.37],[110.79,20.08],[110.34,18.68],[109.48,18.2]],[[80.26,42.35],[80.18,42.92],[80.87,43.18],[79.97,44.92],[82.46,45.54],[83.18,47.33],[85.16,47.0],[85.77,48.46],[87.75,49.3],[88.01,48.6],[90.28,47.69],[90.97,46.89],[90.59,45.72],[90.95,45.29],[95.31,44.24],[96.35,42.73],[100.85,42.66],[104.96,41.6],[109.24,42.52],[111.83,43.74],[111.35,44.46],[111.87,45.1],[113.46,44.81],[117.42,46.67],[119.66,46.69],[118.06,48.07],[115.74,47.73],[115.49,48.14],[116.68,49.89],[117.88,49.51],[119.29,50.14],[120.74,51.96],[120.18,52.75],[122.25,53.43],[125.95,52.79],[127.66,49.76],[129.4,49.44],[130.58,48.73],[130.99,47.79],[135.03,48.48],[133.1,45.14],[131.03,44.97],[131.14,42.93],[130.63,42.9],[130.64,42.4],[129.99,42.99],[128.05,41.99],[128.21,41.47],[126.87,41.82],[124.27,39.93],[121.05,38.9],[122.17,40.42],[121.64,40.95],[117.53,38.74],[119.7,37.16],[120.82,37.87],[122.36,37.45],[122.52,36.93],[121.1,36.65],[119.15,34.91],[120.23,34.36],[121.91,31.69],[121.89,30.95],[121.26,30.68],[122.09,29.83],[121.68,28.23],[121.13,28.14],[118.66,24.55],[115.89,22.78],[110.79,21.4],[110.44,20.34],[109.89,20.28],[109.86,21.4],[107.04,21.81],[106.73,22.79],[105.33,23.35],[101.65,22.32],[101.8,21.17],[101.27,21.2],[101.15,21.85],[100.42,21.56],[99.24,22.12],[99.53,22.95],[98.9,23.14],[98.66,24.06],[97.6,23.9],[97.72,25.08],[98.67,25.92],[98.68,27.51],[97.91,28.34],[96.25,28.41],[96.59,28.83],[96.12,29.45],[94.57,29.28],[92.5,27.9],[90.02,28.3],[88.81,27.3],[88.73,28.09],[85.82,28.2],[78.74,31.52],[78.46,32.62],[79.18,32.48],[79.21,32.99],[78.91,34.32],[77.84,35.49],[76.19,35.9],[74.98,37.42],[74.86,38.38],[73.93,38.51],[73.68,39.43],[74.78,40.37],[76.53,40.43],[76.9,41.07],[80.26,42.35]],[[121.78,24.39],[120.75,21.97],[120.11,23.56],[121.5,25.3],[121.78,24.39]],[[10.44,46.89],[12.15,47.12],[13.81,46.51],[13.94,45.59],[12.33,45.38],[12.59,44.09],[15.14,41.96],[15.93,41.96],[15.89,41.54],[18.38,40.36],[18.29,39.81],[16.87,40.44],[16.45,39.8],[17.17,39.42],[17.05,38.9],[15.68,37.91],[16.11,38.96],[15.41,40.05],[11.19,42.36],[10.2,43.92],[8.89,44.37],[7.44,43.69],[6.84,45.99],[8.97,46.04],[10.44,46.89]],[[14.76,38.14],[15.52,38.23],[15.1,36.62],[12.43,37.61],[12.57,38.13],[14.76,38.14]],[[8.71,40.9],[9.21,41.21],[9.81,40.5],[9.67,39.18],[8.81,38.91],[8.16,40.95],[8.71,40.9]],[[9.92,54.98],[8.53,54.96],[8.09,56.54],[10.58,57.73],[10.25,56.89],[10.91,56.46],[9.65,55.47],[9.92,54.98]],[[12.37,56.11],[12.69,55.61],[12.09,54.8],[11.04,55.36],[10.9,55.78],[12.37,56.11]],[[-6.2,53.87],[-7.57,54.06],[-7.57,55.13],[-5.66,54.55],[-6.2,53.87]],[[-3.09,53.4],[-2.95,53.98],[-3.63,54.62],[-5.08,55.06],[-5.05,55.78],[-5.59,55.31],[-6.15,56.79],[-5.01,58.63],[-3.01,58.63],[-4.07,57.55],[-1.96,57.68],[-3.12,55.97],[-2.09,55.91],[0.47,52.93],[1.68,52.74],[1.05,51.81],[1.45,51.29],[0.55,50.77],[-5.78,50.16],[-3.41,51.43],[-5.27,51.99],[-4.22,52.3],[-4.77,52.84],[-4.58,53.5],[-3.09,53.4]],[[-14.51,66.46],[-14.74,65.81],[-13.61,65.13],[-18.66,63.5],[-22.76,63.96],[-21.78,64.4],[-23.96,64.89],[-22.23,65.38],[-24.33,65.61],[-23.65,66.26],[-22.13,66.41],[-20.58,65.73],[-19.06,66.28],[-14.51,66.46]],[[46.4,41.86],[47.82,41.15],[48.58,41.81],[50.39,40.26],[49.57,40.18],[48.88,38.32],[48.01,38.79],[48.06,39.58],[46.51,38.77],[46.48,39.46],[45.61,39.9],[45.89,40.22],[44.97,41.25],[46.5,41.06],[46.4,41.86]],[[46.14,38.74],[44.79,39.71],[45.74,39.47],[46.14,38.74]],[[39.96,43.43],[45.47,42.5],[46.64,41.18],[41.55,41.54],[41.45,42.65],[39.96,43.43]],[[120.83,12.7],[120.32,13.47],[121.53,13.07],[121.26,12.21],[120.83,12.7]],[[122.59,9.98],[122.95,10.88],[123.5,10.94],[123.34,10.27],[124.08,11.23],[123.0,9.02],[122.59,9.98]],[[126.38,8.41],[126.54,7.19],[126.2,6.27],[125.83,7.29],[125.36,6.79],[125.4,5.58],[124.22,6.16],[124.24,7.36],[123.61,7.83],[121.92,7.19],[123.49,8.69],[123.84,8.24],[125.47,8.99],[125.41,9.76],[126.22,9.29],[126.38,8.41]],[[118.5,9.32],[117.17,8.37],[119.51,11.37],[119.69,10.55],[118.5,9.32]],[[122.34,18.22],[122.52,17.09],[121.66,15.93],[121.73,14.33],[123.95,13.78],[124.08,12.54],[122.93,13.55],[122.67,13.19],[122.03,13.78],[120.63,13.86],[120.99,14.53],[120.56,14.4],[119.92,15.41],[120.72,18.51],[122.34,18.22]],[[122.04,11.42],[121.88,11.89],[123.12,11.58],[122.0,10.44],[122.04,11.42]],[[125.5,12.16],[125.78,11.05],[125.01,11.31],[125.28,10.36],[124.8,10.13],[124.3,11.5],[124.88,11.79],[124.27,12.56],[125.5,12.16]],[[100.09,6.46],[101.08,6.2],[101.15,5.69],[102.14,6.22],[102.96,5.52],[104.23,1.29],[103.52,1.23],[101.39,2.76],[100.09,6.46]],[[117.88,4.14],[115.87,4.31],[114.62,1.43],[110.51,0.77],[109.83,1.34],[109.66,2.01],[111.17,1.85],[111.37,2.7],[113.0,3.1],[114.2,4.53],[114.66,4.01],[115.35,4.32],[115.45,5.45],[116.73,6.92],[119.18,5.41],[117.88,4.14]],[[115.45,5.45],[115.35,4.32],[114.66,4.01],[114.2,4.53],[115.45,5.45]],[[13.81,46.51],[16.56,46.5],[15.33,45.45],[13.72,45.5],[13.81,46.51]],[[28.59,69.06],[28.45,68.36],[29.98,67.7],[29.05,66.94],[30.22,65.81],[29.54,64.95],[30.44,64.2],[30.04,63.55],[31.52,62.87],[31.14,62.36],[28.07,60.5],[22.87,59.85],[21.32,60.72],[21.54,61.71],[21.06,62.61],[21.54,63.19],[25.4,65.11],[23.57,66.4],[23.54,67.94],[20.65,69.11],[24.74,68.65],[26.18,69.83],[27.73,70.16],[29.02,69.77],[28.59,69.06]],[[22.56,49.09],[21.87,48.32],[20.8,48.62],[17.86,47.76],[16.88,48.47],[18.55,49.5],[22.56,49.09]],[[15.02,51.11],[18.85,49.5],[16.96,48.6],[15.25,49.04],[14.34,48.56],[12.52,49.55],[12.24,50.27],[15.02,51.11]],[[36.43,14.42],[36.85,16.96],[38.41,18.0],[39.27,15.92],[43.08,12.7],[42.35,12.54],[40.03,14.52],[37.91,14.96],[37.59,14.21],[36.43,14.42]],[[141.88,39.18],[140.96,38.17],[140.25,35.14],[137.22,34.61],[135.79,33.46],[135.12,33.85],[135.08,34.6],[130.99,33.89],[132.0,33.15],[131.33,31.45],[130.69,31.03],[130.2,31.42],[130.45,32.32],[129.41,33.3],[132.62,35.43],[135.68,35.53],[136.72,37.3],[137.39,36.83],[139.43,38.22],[140.31,41.2],[141.37,41.38],[141.88,39.18]],[[144.61,43.96],[145.32,44.38],[145.54,43.26],[144.06,42.99],[143.18,42.0],[141.61,42.68],[141.07,41.58],[139.96,41.57],[139.82,42.56],[140.31,43.33],[141.38,43.39],[141.97,45.55],[144.61,43.96]],[[132.37,33.46],[133.9,34.36],[134.77,33.81],[134.2,33.2],[133.28,33.29],[133.01,32.7],[132.37,33.46]],[[-58.17,-20.18],[-57.94,-22.09],[-55.8,-22.36],[-55.4,-23.96],[-54.29,-24.02],[-54.79,-26.62],[-55.7,-27.39],[-58.62,-27.12],[-57.78,-25.16],[-60.85,-23.88],[-62.69,-22.25],[-61.79,-19.63],[-59.12,-19.36],[-58.17,-20.18]],[[52.0,19.0],[53.11,16.65],[52.39,16.38],[52.17,15.6],[44.99,12.7],[43.48,12.64],[42.6,15.21],[43.38,17.58],[47.0,16.95],[49.12,18.62],[52.0,19.0]],[[34.96,29.36],[36.07,29.2],[37.5,30.0],[38.0,30.51],[37.0,31.51],[39.2,32.16],[41.89,31.19],[44.71,29.18],[47.46,29.0],[50.15,26.69],[50.24,25.61],[51.39,24.63],[52.0,23.0],[55.21,22.71],[55.67,22.0],[55.0,20.0],[49.12,18.62],[47.0,16.95],[43.38,17.58],[42.78,16.35],[40.94,19.49],[39.14,21.29],[38.49,23.69],[37.48,24.29],[35.13,28.06],[34.63,28.06],[34.96,29.36]],[[-48.66,-78.05],[-46.66,-77.83],[-43.92,-78.48],[-43.33,-80.03],[-50.48,-81.03],[-54.16,-80.63],[-50.99,-79.61],[-48.66,-78.05]],[[-66.29,-80.26],[-61.88,-80.39],[-60.61,-79.63],[-59.57,-80.04],[-60.16,-81.0],[-64.49,-80.92],[-66.29,-80.26]],[[-73.92,-71.27],[-72.07,-71.19],[-71.74,-69.51],[-70.25,-68.88],[-68.33,-71.41],[-68.78,-72.17],[-71.08,-72.5],[-74.95,-72.07],[-75.01,-71.66],[-73.92,-71.27]],[[-102.33,-71.89],[-96.79,-71.95],[-96.2,-72.52],[-100.78,-72.5],[-102.33,-71.89]],[[-122.62,-73.66],[-118.72,-73.48],[-120.23,-74.09],[-122.62,-73.66]],[[-127.28,-73.46],[-124.03,-73.87],[-127.28,-73.46]],[[-163.71,-78.6],[-161.25,-78.38],[-159.21,-79.5],[-161.13,-79.63],[-163.71,-78.6]],[[180,-84.71],[180,-90],[-180,-90],[-180,-84.71],[-179.06,-84.14],[-174.38,-84.53],[-169.95,-83.88],[-158.07,-85.37],[-148.53,-85.61],[-143.11,-85.04],[-142.89,-84.57],[-153.59,-83.69],[-152.86,-82.04],[-156.84,-81.1],[-150.65,-81.34],[-146.42,-80.34],[-149.53,-79.36],[-155.33,-79.06],[-158.05,-78.03],[-158.37,-76.89],[-151.33,-77.4],[-146.1,-76.48],[-146.2,-75.38],[-135.21,-74.3],[-121.07,-74.52],[-113.94,-73.71],[-112.3,-74.71],[-111.26,-74.42],[-107.56,-75.18],[-100.65,-75.3],[-100.12,-74.87],[-102.55,-74.11],[-103.68,-72.62],[-96.34,-73.62],[-90.09,-73.32],[-89.23,-72.56],[-81.47,-73.85],[-80.3,-73.13],[-74.89,-73.87],[-67.37,-72.48],[-67.25,-71.64],[-68.54,-69.72],[-67.43,-68.15],[-67.74,-67.33],[-63.63,-64.9],[-57.81,-63.27],[-57.22,-63.53],[-62.02,-64.8],[-62.65,-65.48],[-62.12,-66.19],[-63.75,-66.5],[-65.67,-67.95],[-63.2,-69.23],[-61.81,-70.72],[-60.83,-73.7],[-64.35,-75.26],[-70.6,-76.63],[-77.24,-76.71],[-73.66,-77.91],[-77.93,-78.38],[-78.02,-79.18],[-75.36,-80.26],[-59.69,-82.38],[-58.22,-83.22],[-49.76,-81.73],[-42.81,-82.08],[-40.77,-81.36],[-28.55,-80.34],[-29.69,-79.26],[-35.64,-79.46],[-35.78,-78.34],[-28.88,-76.67],[-17.52,-75.13],[-15.7,-74.5],[-15.41,-74.11],[-16.47,-73.87],[-15.45,-73.15],[-12.29,-72.4],[-10.3,-71.27],[-7.42,-71.7],[-6.87,-70.93],[-4.34,-71.46],[-0.66,-71.23],[-0.23,-71.64],[7.74,-69.89],[9.53,-70.01],[10.82,-70.83],[13.42,-69.97],[15.13,-70.4],[19.26,-69.89],[22.57,-70.7],[27.09,-70.46],[31.99,-69.66],[33.87,-68.5],[38.65,-69.78],[54.53,-65.82],[56.36,-65.97],[58.74,-67.29],[61.43,-67.95],[64.05,-67.41],[68.89,-67.93],[69.67,-69.23],[67.81,-70.31],[69.07,-70.68],[67.95,-71.85],[69.87,-72.26],[71.02,-72.09],[73.86,-69.87],[77.64,-69.46],[79.11,-68.33],[82.78,-67.21],[86.75,-67.15],[87.99,-66.21],[89.67,-67.15],[95.78,-67.39],[99.72,-67.25],[102.83,-65.56],[106.18,-66.93],[113.6,-65.88],[115.6,-66.7],[119.83,-67.27],[123.22,-66.48],[128.8,-66.76],[134.76,-66.21],[135.07,-65.31],[137.46,-66.95],[145.49,-66.92],[146.65,-67.9],[148.84,-68.39],[152.5,-68.87],[154.28,-68.56],[161.57,-70.58],[167.31,-70.83],[171.21,-71.7],[169.29,-73.66],[166.09,-74.38],[163.57,-76.24],[163.49,-77.07],[164.74,-78.18],[167.0,-78.75],[161.77,-79.16],[159.79,-80.95],[169.4,-83.83],[180,-84.71]],[[32.73,35.14],[34.58,35.67],[33.97,35.06],[32.73,35.14]],[[32.73,35.14],[34.0,34.98],[32.98,34.57],[32.26,35.1],[32.73,35.14]],[[-2.17,35.17],[-1.31,32.26],[-3.65,31.64],[-3.69,30.9],[-5.24,30.0],[-8.67,28.84],[-8.79,27.12],[-11.39,26.88],[-12.5,24.77],[-13.89,23.69],[-14.75,21.5],[-17.02,21.42],[-14.44,26.25],[-9.56,29.93],[-9.81,31.18],[-8.66,33.24],[-6.91,34.11],[-5.93,35.76],[-2.17,35.17]],[[36.87,22],[25,22],[24.7,30.04],[25.16,31.57],[28.91,30.87],[30.98,31.56],[31.96,30.93],[34.27,31.22],[34.92,29.5],[34.15,27.82],[32.32,29.76],[35.69,23.93],[35.53,23.1],[36.87,22]],[[25,22],[25,20.0],[23.85,20],[23.84,19.58],[15.86,23.41],[14.14,22.49],[10.77,24.56],[10.3,24.38],[9.32,26.09],[9.95,31.38],[11.43,32.37],[11.49,33.14],[15.25,32.27],[15.71,31.38],[19.09,30.27],[20.05,30.99],[19.82,31.75],[20.85,32.71],[24.92,31.9],[25,22]],[[47.79,8.0],[44.96,5.0],[43.66,4.96],[41.86,3.92],[40.77,4.26],[39.56,3.42],[36.16,4.45],[34.71,6.59],[32.95,7.78],[33.83,8.38],[34.26,10.63],[35.86,12.58],[36.43,14.42],[37.59,14.21],[37.91,14.96],[40.03,14.52],[41.6,13.45],[42.35,12.54],[41.76,11.05],[42.78,10.93],[42.56,10.57],[43.68,9.18],[47.79,8.0]],[[42.35,12.54],[43.32,12.39],[42.78,10.93],[41.76,11.05],[42.35,12.54]],[[48.95,11.41],[48.94,9.45],[47.79,8.0],[43.68,9.18],[42.56,10.57],[43.15,11.46],[44.12,10.45],[48.95,11.41]],[[33.9,-0.95],[29.58,-1.34],[29.88,0.6],[31.17,2.2],[30.77,2.34],[31.25,3.78],[33.39,3.79],[34.01,4.25],[34.48,3.56],[35.04,1.91],[33.89,0.11],[33.9,-0.95]],[[30.42,-1.13],[30.76,-2.29],[29.02,-2.84],[29.29,-1.62],[30.42,-1.13]],[[18.56,42.65],[16.46,44.04],[15.75,44.82],[15.96,45.23],[19.37,44.86],[19.45,43.57],[18.56,42.65]],[[22.38,42.32],[22.95,41.34],[20.61,41.09],[20.76,42.05],[22.38,42.32]],[[18.83,45.91],[20.22,46.13],[21.56,44.77],[22.71,44.58],[22.41,44.01],[22.99,43.21],[22.55,42.46],[21.58,42.25],[21.78,42.68],[20.81,43.27],[20.26,42.81],[19.22,43.52],[19.6,44.04],[18.83,45.91]],[[20.07,42.59],[19.37,41.88],[18.45,42.48],[19.22,43.52],[20.34,42.9],[20.07,42.59]],[[20.59,41.86],[20.07,42.59],[20.64,43.22],[21.78,42.68],[20.59,41.86]],[[-61.68,10.76],[-60.9,10.86],[-60.94,10.11],[-61.95,10.09],[-61.68,10.76]],[[30.83,3.51],[29.72,4.6],[27.98,4.41],[23.89,8.62],[24.54,8.92],[25.07,10.27],[25.79,10.41],[26.75,9.47],[28.97,9.4],[30.0,10.29],[31.35,9.81],[32.4,11.08],[32.07,11.97],[33.21,12.18],[33.97,8.68],[32.95,7.78],[34.08,7.23],[35.3,5.51],[33.39,3.79],[30.83,3.51]]];
|
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
import type { CurveSeries } from "../../../components/chart/curve";
|
|
2
|
+
import { formatBasisPoints } from "../../../utils/basis-points";
|
|
3
|
+
import type { CurveNode } from "./forward";
|
|
4
|
+
import type { YieldCurveLookbackId } from "./history";
|
|
5
|
+
import { curveAsOf, curveSpread, isYieldObservationDate, type YieldPoint } from "./treasury-data";
|
|
6
|
+
|
|
7
|
+
export function formatYield(value: number): string {
|
|
8
|
+
return `${value.toFixed(2)}%`;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/** A yield change in percentage points, read in basis points: `+7bp`, `-12bp`. */
|
|
12
|
+
export function formatYieldChange(change: number): string {
|
|
13
|
+
return formatBasisPoints(change);
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export function buildYieldCurveSeries(points: readonly YieldPoint[]): CurveSeries {
|
|
17
|
+
return {
|
|
18
|
+
id: "treasury", label: "Treasury", asOf: curveAsOf(points),
|
|
19
|
+
points: points.filter((point) => Number.isFinite(point.maturityYears) && point.maturityYears > 0)
|
|
20
|
+
.map((point) => ({ id: point.maturity, label: point.maturity, x: point.maturityYears,
|
|
21
|
+
value: point.yield, asOf: point.asOf })),
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export type YieldLookbackCurves = Partial<Record<YieldCurveLookbackId, readonly YieldPoint[] | null>>;
|
|
26
|
+
|
|
27
|
+
export interface YieldTenorRow {
|
|
28
|
+
id: string;
|
|
29
|
+
years: number;
|
|
30
|
+
yield: number | null;
|
|
31
|
+
asOf: string | null;
|
|
32
|
+
change1d: number | null;
|
|
33
|
+
change1w: number | null;
|
|
34
|
+
change1m: number | null;
|
|
35
|
+
/** The compare curve's yield at this tenor, and this curve's minus it. */
|
|
36
|
+
compare: number | null;
|
|
37
|
+
changeCompare: number | null;
|
|
38
|
+
/** The yield priced for a year from now. */
|
|
39
|
+
forward: number | null;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface YieldTenorExtras {
|
|
43
|
+
compare?: readonly YieldPoint[] | null;
|
|
44
|
+
forward?: readonly CurveNode[];
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/** The look-backs drawn as ghosts; the session before is a change, not a curve worth drawing. */
|
|
48
|
+
const GHOST_IDS: readonly YieldCurveLookbackId[] = ["1W", "1M"];
|
|
49
|
+
|
|
50
|
+
/**
|
|
51
|
+
* A look-back value to read a move against. A tenor that has not published
|
|
52
|
+
* since the look-back's session (a lagging or cached tenor, most often against
|
|
53
|
+
* the session before) has no move yet, not a zero one.
|
|
54
|
+
*/
|
|
55
|
+
function pastYield(points: readonly YieldPoint[] | null | undefined, current: YieldPoint): number | null {
|
|
56
|
+
const past = points?.find((point) => point.maturity === current.maturity);
|
|
57
|
+
if (past?.yield == null || !Number.isFinite(past.yield)) return null;
|
|
58
|
+
return isYieldObservationDate(past.asOf) && isYieldObservationDate(current.asOf) && past.asOf >= current.asOf ? null : past.yield;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* One row per tenor: the yield and how far it moved since the session before,
|
|
63
|
+
* a week and a month back, and against a compare curve when one is set.
|
|
64
|
+
*/
|
|
65
|
+
export function yieldTenorRows(points: readonly YieldPoint[], lookbacks: YieldLookbackCurves = {},
|
|
66
|
+
extras: YieldTenorExtras = {}): YieldTenorRow[] {
|
|
67
|
+
return points.filter((point) => Number.isFinite(point.maturityYears) && point.maturityYears > 0)
|
|
68
|
+
.toSorted((left, right) => left.maturityYears - right.maturityYears)
|
|
69
|
+
.map((point) => {
|
|
70
|
+
const current = point.yield != null && Number.isFinite(point.yield) ? point.yield : null;
|
|
71
|
+
const change = (id: YieldCurveLookbackId) => {
|
|
72
|
+
const past = pastYield(lookbacks[id], point);
|
|
73
|
+
return current == null || past == null ? null : current - past;
|
|
74
|
+
};
|
|
75
|
+
const compared = extras.compare?.find((entry) => entry.maturity === point.maturity)?.yield;
|
|
76
|
+
const compare = compared != null && Number.isFinite(compared) ? compared : null;
|
|
77
|
+
return { id: point.maturity, years: point.maturityYears, yield: current,
|
|
78
|
+
asOf: isYieldObservationDate(point.asOf) ? point.asOf : null,
|
|
79
|
+
change1d: change("1D"), change1w: change("1W"), change1m: change("1M"),
|
|
80
|
+
compare, changeCompare: current != null && compare != null ? current - compare : null,
|
|
81
|
+
forward: extras.forward?.find((node) => node.id === point.maturity)?.yield ?? null };
|
|
82
|
+
});
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
export interface YieldSpread {
|
|
86
|
+
id: string;
|
|
87
|
+
/** Long minus short yield, in percentage points like the tenor changes. */
|
|
88
|
+
spread: number | null;
|
|
89
|
+
/** Its move since the session before. */
|
|
90
|
+
change1d: number | null;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
/** The curve spreads rates desks quote, long tenor minus short. */
|
|
94
|
+
const SPREADS = [
|
|
95
|
+
{ id: "2s10s", short: "2Y", long: "10Y" },
|
|
96
|
+
{ id: "3m10y", short: "3M", long: "10Y" },
|
|
97
|
+
{ id: "5s30s", short: "5Y", long: "30Y" },
|
|
98
|
+
] as const;
|
|
99
|
+
|
|
100
|
+
/** Each spread and how far it moved since the session before; both need their two tenors from one session. */
|
|
101
|
+
export function yieldSpreads(points: readonly YieldPoint[], lookbacks: YieldLookbackCurves = {}): YieldSpread[] {
|
|
102
|
+
return SPREADS.map(({ id, short, long }) => {
|
|
103
|
+
const spread = curveSpread(points, short, long);
|
|
104
|
+
const before = curveSpread(lookbacks["1D"], short, long);
|
|
105
|
+
// Both tenors share a session here, so the short one dates the spread; one not newer than the look-back has no move yet.
|
|
106
|
+
const session = points.find((point) => point.maturity === short)?.asOf;
|
|
107
|
+
const beforeSession = lookbacks["1D"]?.find((point) => point.maturity === short)?.asOf;
|
|
108
|
+
const moved = spread != null && before != null && !(session && beforeSession && beforeSession >= session);
|
|
109
|
+
return { id, spread, change1d: moved ? spread - before : null };
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
export interface YieldChartOverlays {
|
|
114
|
+
/** The curve's name in the legend; "Yield" unless it is not one (a breakeven). */
|
|
115
|
+
label?: string;
|
|
116
|
+
/** A compare curve replaces the week and month ghosts. */
|
|
117
|
+
compare?: { label: string; points: readonly YieldPoint[] } | null;
|
|
118
|
+
forward?: readonly CurveNode[];
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* The curve named in the table's words, then the look-backs that loaded as
|
|
123
|
+
* ghosts (or the compare curve), then the forward curve. The query bar carries
|
|
124
|
+
* the session date, so the legend does not.
|
|
125
|
+
*/
|
|
126
|
+
export function yieldCurveChartSeries(
|
|
127
|
+
points: readonly YieldPoint[],
|
|
128
|
+
lookbacks: YieldLookbackCurves,
|
|
129
|
+
colors: { current: string; ghosts: Readonly<Record<string, string>>; compare?: string; forward?: string },
|
|
130
|
+
overlays: YieldChartOverlays = {},
|
|
131
|
+
): CurveSeries[] {
|
|
132
|
+
const ghosts = overlays.compare
|
|
133
|
+
? overlays.compare.points.some((point) => point.yield != null)
|
|
134
|
+
? [{ ...buildYieldCurveSeries(overlays.compare.points), id: "compare", label: overlays.compare.label, asOf: undefined,
|
|
135
|
+
role: "ghost" as const, color: colors.compare }]
|
|
136
|
+
: []
|
|
137
|
+
: GHOST_IDS.flatMap((id): CurveSeries[] => {
|
|
138
|
+
const curve = lookbacks[id];
|
|
139
|
+
if (!curve?.some((point) => point.yield != null)) return [];
|
|
140
|
+
return [{ ...buildYieldCurveSeries(curve), id, label: id, role: "ghost", color: colors.ghosts[id] }];
|
|
141
|
+
});
|
|
142
|
+
// Not a row of the table's own: its tenors stop a year short of the curve's end.
|
|
143
|
+
const forward: CurveSeries[] = overlays.forward?.length ? [{
|
|
144
|
+
id: "forward", label: "1Y fwd", role: "reference", color: colors.forward,
|
|
145
|
+
points: overlays.forward.map((node) => ({ id: node.id, label: node.id, x: node.years, value: node.yield })),
|
|
146
|
+
}] : [];
|
|
147
|
+
return [{ ...buildYieldCurveSeries(points), id: "yield", label: overlays.label ?? "Yield", asOf: undefined, role: "primary",
|
|
148
|
+
color: colors.current }, ...ghosts, ...forward];
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/** The difference view: this curve minus the compare curve, in basis points, one column per tenor. */
|
|
152
|
+
export function yieldDifferenceSeries(rows: readonly YieldTenorRow[], label: string,
|
|
153
|
+
colors: { positive: string; negative: string }): CurveSeries {
|
|
154
|
+
return {
|
|
155
|
+
id: "difference", label, role: "primary", style: "columns", color: colors.positive, negativeColor: colors.negative,
|
|
156
|
+
points: rows.map((row) => ({ id: row.id, label: row.id, x: row.years,
|
|
157
|
+
value: row.changeCompare == null ? null : Math.round(row.changeCompare * 10_000) / 100 })),
|
|
158
|
+
};
|
|
159
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { apiClient } from "../../../api-client";
|
|
2
|
+
import type { SwapCurvePayload, SwapTenor } from "../../../api-client/swap-curve";
|
|
3
|
+
import { createPluginCache } from "../../../data/plugin-cache";
|
|
4
|
+
import { cachedCloudResource, loadCloudResource, unavailableOnServer } from "../shared/cloud-resource";
|
|
5
|
+
import { validateSwapCurve } from "./swaps-model";
|
|
6
|
+
|
|
7
|
+
export const swapCurveCache = createPluginCache<SwapCurvePayload>({
|
|
8
|
+
kind: "sofr-swap-curve", source: "gloom-cloud", schemaVersion: 1,
|
|
9
|
+
policy: { staleMs: 60 * 60_000, expireMs: 7 * 24 * 60 * 60_000 },
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export async function fetchSwapCurve(tenor: SwapTenor,
|
|
13
|
+
client: Pick<typeof apiClient, "getCloudSwapCurve"> = apiClient): Promise<SwapCurvePayload> {
|
|
14
|
+
try {
|
|
15
|
+
const payload = validateSwapCurve(await client.getCloudSwapCurve(tenor, 365));
|
|
16
|
+
if (payload.history.tenor !== tenor) throw new Error("The server returned history for a different swap tenor");
|
|
17
|
+
return payload;
|
|
18
|
+
} catch (error) {
|
|
19
|
+
throw unavailableOnServer(error, "SOFR swap rates are not available yet.");
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export const getCachedSwapCurve = (tenor: SwapTenor) => cachedCloudResource(swapCurveCache, tenor, validateSwapCurve);
|
|
24
|
+
export const loadSwapCurve = (tenor: SwapTenor, force = false) =>
|
|
25
|
+
loadCloudResource(swapCurveCache, tenor, () => fetchSwapCurve(tenor), { force, validate: validateSwapCurve });
|
|
@@ -0,0 +1,225 @@
|
|
|
1
|
+
import { apiClient } from "../../../api-client";
|
|
2
|
+
import type { CloudCurveMove, CloudCurvePoint, CloudCurveId, CloudCurveView } from "../../../api-client/yield-curves";
|
|
3
|
+
import { TREASURY_CURVE_CUTOFF } from "../shared/treasury-cutoffs";
|
|
4
|
+
import type { MoveHorizon } from "../shared/move-rank";
|
|
5
|
+
import type { CurveBasis } from "./forward";
|
|
6
|
+
import { yieldSpreads, type YieldLookbackCurves } from "./chart";
|
|
7
|
+
import { completeYieldCurve, loadHistoricalYieldCurve, yieldCurveDate } from "./history";
|
|
8
|
+
import { DATE_OPTION_FORMATS, dateOptionHint, readCalendarDate } from "../../../utils/calendar-date";
|
|
9
|
+
import { isYieldObservationDate, loadYieldCurve, type YieldPoint } from "./treasury-data";
|
|
10
|
+
|
|
11
|
+
export type CurveId = CloudCurveId;
|
|
12
|
+
|
|
13
|
+
export interface CurveOption {
|
|
14
|
+
id: CurveId;
|
|
15
|
+
/** The picker's word for it. */
|
|
16
|
+
label: string;
|
|
17
|
+
/** What the GC argument accepts: `GC JGB`, `GC TIPS 2024-01-02`. */
|
|
18
|
+
aliases: readonly string[];
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
export const CURVE_OPTIONS: readonly CurveOption[] = [
|
|
22
|
+
{ id: "us", label: "UST", aliases: ["ust", "us", "treasury", "treasuries", "usd"] },
|
|
23
|
+
{ id: "us-real", label: "TIPS real", aliases: ["tips", "real"] },
|
|
24
|
+
{ id: "us-breakeven", label: "Breakeven", aliases: ["breakeven", "breakevens", "be", "bei", "inflation"] },
|
|
25
|
+
{ id: "eu-aaa", label: "Euro AAA", aliases: ["euro", "eur", "eu", "aaa", "ea"] },
|
|
26
|
+
{ id: "de", label: "Bund", aliases: ["bund", "bunds", "de", "germany"] },
|
|
27
|
+
{ id: "gb", label: "Gilt", aliases: ["gilt", "gilts", "uk", "gb", "gbp"] },
|
|
28
|
+
{ id: "jp", label: "JGB", aliases: ["jgb", "jgbs", "jp", "japan", "jpy"] },
|
|
29
|
+
{ id: "ca", label: "Canada", aliases: ["canada", "ca", "goc", "cad"] },
|
|
30
|
+
];
|
|
31
|
+
|
|
32
|
+
export function isCurveId(value: unknown): value is CurveId {
|
|
33
|
+
return CURVE_OPTIONS.some((option) => option.id === value);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/** A curve id or any of its aliases ("jgb", "bund"), from a setting or an option. */
|
|
37
|
+
export function curveIdOf(value: unknown): CurveId | null {
|
|
38
|
+
if (typeof value !== "string") return null;
|
|
39
|
+
const word = value.trim().toLowerCase();
|
|
40
|
+
return CURVE_OPTIONS.find((option) => option.id === word || option.aliases.includes(word))?.id ?? null;
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export function curveOption(id: CurveId): CurveOption {
|
|
44
|
+
return CURVE_OPTIONS.find((option) => option.id === id) ?? CURVE_OPTIONS[0]!;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/** `GC`, `GC 2026-01-02`, `GC JGB`, `GC TIPS 2024-01-02`: a curve word and a date, either order. */
|
|
48
|
+
export function parseCurveArgument(value: unknown, now = new Date()): { curve: CurveId | null; date: string } {
|
|
49
|
+
const words = typeof value === "string" ? value.trim().split(/\s+/).filter(Boolean) : [];
|
|
50
|
+
let curve: CurveId | null = null;
|
|
51
|
+
const rest: string[] = [];
|
|
52
|
+
for (const word of words) {
|
|
53
|
+
const match = CURVE_OPTIONS.find((option) => option.aliases.includes(word.toLowerCase()));
|
|
54
|
+
if (match && !curve) curve = match.id;
|
|
55
|
+
else rest.push(word);
|
|
56
|
+
}
|
|
57
|
+
return { curve, date: yieldCurveDate(rest.join(" ") || null, now) };
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* When in the day a curve's yields are taken, for the curves where two
|
|
62
|
+
* numbers for one day are easily confused: Treasury's, which ^TNX quotes at
|
|
63
|
+
* an earlier close. Null for the others, which name only their date.
|
|
64
|
+
*/
|
|
65
|
+
export function curveCutoff(curve: CurveId): string | null {
|
|
66
|
+
return curve === "us" || curve === "us-real" || curve === "us-breakeven" ? TREASURY_CURVE_CUTOFF : null;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/** A tenor's ranked move over a horizon, when the curve brought one. */
|
|
70
|
+
export function curveTenorMove(data: CurveData | null, tenor: string, horizon: MoveHorizon): CloudCurveMove | null {
|
|
71
|
+
return data?.moves?.find((move) => move.tenor === tenor && move.horizon === horizon && move.change != null) ?? null;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export interface CurveSpreadFigure {
|
|
75
|
+
id: string;
|
|
76
|
+
/** Long minus short, percentage points. */
|
|
77
|
+
value: number | null;
|
|
78
|
+
change1d: number | null;
|
|
79
|
+
/** Midrank percentile among the trailing year's sessions; null when the source has no history. */
|
|
80
|
+
percentile1y: number | null;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
export interface CurveData {
|
|
84
|
+
curve: CurveId;
|
|
85
|
+
requestedDate: string;
|
|
86
|
+
basis: CurveBasis;
|
|
87
|
+
couponsPerYear: number;
|
|
88
|
+
points: YieldPoint[];
|
|
89
|
+
/** Null for the FRED fallback, whose look-backs load on their own after the curve. */
|
|
90
|
+
lookbacks: YieldLookbackCurves | null;
|
|
91
|
+
/** Null for the FRED fallback: its spreads follow from the points and look-backs. */
|
|
92
|
+
spreads: CurveSpreadFigure[] | null;
|
|
93
|
+
/**
|
|
94
|
+
* Each tenor's 1D and 1W move ranked against its whole history, as Gloom
|
|
95
|
+
* Cloud ranks the stored curve. Null for the FRED fallback and older servers.
|
|
96
|
+
*/
|
|
97
|
+
moves?: CloudCurveMove[] | null;
|
|
98
|
+
/**
|
|
99
|
+
* FRED `info.source` when these points are the constant-maturity fallback.
|
|
100
|
+
* Null when that fallback came back without series info. Absent on a stored curve.
|
|
101
|
+
*/
|
|
102
|
+
seriesSource?: string | null;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
function fredSeriesSource(points: readonly YieldPoint[]): string | null {
|
|
106
|
+
const sources = [...new Set(points.flatMap((point) => {
|
|
107
|
+
const source = point.source?.trim();
|
|
108
|
+
return source ? [source] : [];
|
|
109
|
+
}))];
|
|
110
|
+
return sources.length ? sources.join(", ") : null;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
type CurveClient = Pick<typeof apiClient, "getCloudCurve" | "getCloudYieldCurve" | "getCloudFredSeries">;
|
|
114
|
+
|
|
115
|
+
function pointsAt(points: readonly CloudCurvePoint[], asOf: string | null): YieldPoint[] {
|
|
116
|
+
return points.map((point) => ({
|
|
117
|
+
maturity: point.tenor, maturityYears: point.years, yield: point.yield,
|
|
118
|
+
asOf: point.yield != null && isYieldObservationDate(asOf) ? asOf : null,
|
|
119
|
+
}));
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function curveDataFromView(view: CloudCurveView, requestedDate: string): CurveData {
|
|
123
|
+
return {
|
|
124
|
+
curve: view.curve.id,
|
|
125
|
+
requestedDate,
|
|
126
|
+
basis: view.curve.basis,
|
|
127
|
+
couponsPerYear: view.curve.couponsPerYear,
|
|
128
|
+
points: pointsAt(view.points, view.asOf),
|
|
129
|
+
lookbacks: Object.fromEntries(view.lookbacks.map((lookback) => [lookback.id,
|
|
130
|
+
lookback.points ? pointsAt(lookback.points, lookback.asOf) : null])),
|
|
131
|
+
spreads: view.spreads.map(({ id, value, change1d, percentile1y }) => ({ id, value, change1d, percentile1y })),
|
|
132
|
+
moves: view.moves ?? null,
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
/**
|
|
137
|
+
* The FRED constant-maturity curve, a session behind Treasury's own; what GC
|
|
138
|
+
* shows for Treasuries when the stored curve cannot be read.
|
|
139
|
+
*/
|
|
140
|
+
async function loadFredCurve(requestedDate: string, client: CurveClient): Promise<CurveData> {
|
|
141
|
+
const points = completeYieldCurve(requestedDate
|
|
142
|
+
? await loadHistoricalYieldCurve(requestedDate, (id, options) => client.getCloudFredSeries(id, options))
|
|
143
|
+
: await loadYieldCurve(() => client.getCloudYieldCurve()));
|
|
144
|
+
return { curve: "us", requestedDate, basis: "par", couponsPerYear: 2, points, lookbacks: null, spreads: null, moves: null,
|
|
145
|
+
seriesSource: fredSeriesSource(points) };
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
/** The spreads GC shows: the stored curve's, or for FRED's curve its own with no percentile. */
|
|
149
|
+
export function curveSpreadFigures(data: CurveData | null, lookbacks: YieldLookbackCurves): CurveSpreadFigure[] {
|
|
150
|
+
if (!data) return [];
|
|
151
|
+
return data.spreads ?? yieldSpreads(data.points, lookbacks)
|
|
152
|
+
.map(({ id, spread, change1d }) => ({ id, value: spread, change1d, percentile1y: null }));
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
/**
|
|
156
|
+
* A curve on the requested date (its last session on or before it) or its
|
|
157
|
+
* latest. Treasuries fall back to FRED when the stored curve cannot be read,
|
|
158
|
+
* which also covers dates before Treasury's files begin.
|
|
159
|
+
*/
|
|
160
|
+
export async function loadCurveData(curve: CurveId, requestedDate: string, client: CurveClient = apiClient): Promise<CurveData> {
|
|
161
|
+
try {
|
|
162
|
+
return curveDataFromView(await client.getCloudCurve(curve, requestedDate || null), requestedDate);
|
|
163
|
+
} catch (error) {
|
|
164
|
+
if (curve !== "us") throw error;
|
|
165
|
+
return loadFredCurve(requestedDate, client);
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/** The compare curve: its session on or before the date. */
|
|
170
|
+
export async function loadComparePoints(curve: CurveId, date: string, client: CurveClient = apiClient): Promise<YieldPoint[]> {
|
|
171
|
+
try {
|
|
172
|
+
const view = await client.getCloudCurve(curve, date);
|
|
173
|
+
return pointsAt(view.points, view.asOf);
|
|
174
|
+
} catch (error) {
|
|
175
|
+
if (curve !== "us") throw error;
|
|
176
|
+
return completeYieldCurve(await loadHistoricalYieldCurve(date, (id, options) => client.getCloudFredSeries(id, options)));
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
const RELATIVE = /^(\d{1,2})([DWMY])$/i;
|
|
181
|
+
const COMPARE_FORMS = `Compare with a date as ${DATE_OPTION_FORMATS}, or a span such as 1D, 1W, 3M or 1Y`;
|
|
182
|
+
|
|
183
|
+
/** A span back from the session (1D, 1W, 3M, 1Y): what the compare field takes besides a date. */
|
|
184
|
+
export function isCompareSpan(value: string): boolean {
|
|
185
|
+
const match = value.trim().match(RELATIVE);
|
|
186
|
+
return match != null && Number(match[1]) > 0;
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
/**
|
|
190
|
+
* What the compare field accepts: a date, or a span back from the curve's
|
|
191
|
+
* session (1D, 1W, 3M, 1Y). Empty turns comparing off. Anything else gets the
|
|
192
|
+
* help for both forms, not the as-of field's date-only message.
|
|
193
|
+
*/
|
|
194
|
+
export function parseCompareInput(value: string, now = new Date(), option = ""): string {
|
|
195
|
+
const text = value.trim();
|
|
196
|
+
if (!text) return "";
|
|
197
|
+
if (isCompareSpan(text)) return text.toUpperCase();
|
|
198
|
+
const date = readCalendarDate(text);
|
|
199
|
+
if (!date) {
|
|
200
|
+
const hint = dateOptionHint(text, option);
|
|
201
|
+
throw new Error(hint ? `${COMPARE_FORMS}: ${hint}.` : `${COMPARE_FORMS}.`);
|
|
202
|
+
}
|
|
203
|
+
return yieldCurveDate(date, now);
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
/**
|
|
207
|
+
* The date a compare input asks for, given the session shown. A day back is the
|
|
208
|
+
* day before, and the curve loaded for it is the last session on or before
|
|
209
|
+
* that day, so 1D is the previous session.
|
|
210
|
+
*/
|
|
211
|
+
export function compareDate(input: string, asOf: string): string {
|
|
212
|
+
const match = input.match(RELATIVE);
|
|
213
|
+
if (!match) return input;
|
|
214
|
+
const count = Number(match[1]);
|
|
215
|
+
const unit = match[2]!.toUpperCase();
|
|
216
|
+
const [year, month, day] = asOf.split("-").map(Number) as [number, number, number];
|
|
217
|
+
if (unit === "D" || unit === "W") {
|
|
218
|
+
return new Date(Date.UTC(year, month - 1, day - (unit === "W" ? 7 : 1) * count)).toISOString().slice(0, 10);
|
|
219
|
+
}
|
|
220
|
+
const months = unit === "M" ? count : count * 12;
|
|
221
|
+
const target = new Date(Date.UTC(year, month - 1 - months, 1));
|
|
222
|
+
const lastDay = new Date(Date.UTC(target.getUTCFullYear(), target.getUTCMonth() + 1, 0)).getUTCDate();
|
|
223
|
+
target.setUTCDate(Math.min(day, lastDay));
|
|
224
|
+
return target.toISOString().slice(0, 10);
|
|
225
|
+
}
|