Use typescript path aliases for build time import path resolution

This commit is contained in:
wiz 2024-10-22 21:05:01 +09:00
parent 5fba9595af
commit 133df2e4be
No known key found for this signature in database
GPG Key ID: A394E332255A6173
226 changed files with 1274 additions and 1269 deletions

View File

@ -1,15 +1,15 @@
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { AppPreloadingStrategy } from './app.preloading-strategy' import { AppPreloadingStrategy } from '@app/app.preloading-strategy'
import { BlockViewComponent } from './components/block-view/block-view.component'; import { BlockViewComponent } from '@components/block-view/block-view.component';
import { EightBlocksComponent } from './components/eight-blocks/eight-blocks.component'; import { EightBlocksComponent } from '@components/eight-blocks/eight-blocks.component';
import { MempoolBlockViewComponent } from './components/mempool-block-view/mempool-block-view.component'; import { MempoolBlockViewComponent } from '@components/mempool-block-view/mempool-block-view.component';
import { ClockComponent } from './components/clock/clock.component'; import { ClockComponent } from '@components/clock/clock.component';
import { StatusViewComponent } from './components/status-view/status-view.component'; import { StatusViewComponent } from '@components/status-view/status-view.component';
import { AddressGroupComponent } from './components/address-group/address-group.component'; import { AddressGroupComponent } from '@components/address-group/address-group.component';
import { TrackerComponent } from './components/tracker/tracker.component'; import { TrackerComponent } from '@components/tracker/tracker.component';
import { AccelerateCheckout } from './components/accelerate-checkout/accelerate-checkout.component'; import { AccelerateCheckout } from '@components/accelerate-checkout/accelerate-checkout.component';
import { TrackerGuard } from './route-guards'; import { TrackerGuard } from '@app/route-guards';
const browserWindow = window || {}; const browserWindow = window || {};
// @ts-ignore // @ts-ignore
@ -22,12 +22,12 @@ let routes: Routes = [
{ {
path: '', path: '',
pathMatch: 'full', pathMatch: 'full',
loadChildren: () => import('./bitcoin-graphs.module').then(m => m.BitcoinGraphsModule), loadChildren: () => import('@app/bitcoin-graphs.module').then(m => m.BitcoinGraphsModule),
data: { preload: true }, data: { preload: true },
}, },
{ {
path: '', path: '',
loadChildren: () => import('./master-page.module').then(m => m.MasterPageModule), loadChildren: () => import('@app/master-page.module').then(m => m.MasterPageModule),
data: { preload: true }, data: { preload: true },
}, },
{ {
@ -45,7 +45,7 @@ let routes: Routes = [
}, },
{ {
path: '', path: '',
loadChildren: () => import('./bitcoin-graphs.module').then(m => m.BitcoinGraphsModule), loadChildren: () => import('@app/bitcoin-graphs.module').then(m => m.BitcoinGraphsModule),
data: { preload: true }, data: { preload: true },
}, },
{ {
@ -145,7 +145,7 @@ let routes: Routes = [
path: 'tx', path: 'tx',
canMatch: [TrackerGuard], canMatch: [TrackerGuard],
runGuardsAndResolvers: 'always', runGuardsAndResolvers: 'always',
loadChildren: () => import('./components/tracker/tracker.module').then(m => m.TrackerModule), loadChildren: () => import('@components/tracker/tracker.module').then(m => m.TrackerModule),
}, },
{ {
path: '', path: '',

View File

@ -2,11 +2,11 @@ import { HTTP_INTERCEPTORS } from '@angular/common/http';
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { ServerModule } from '@angular/platform-server'; import { ServerModule } from '@angular/platform-server';
import { ZONE_SERVICE } from './injection-tokens'; import { ZONE_SERVICE } from '@app/injection-tokens';
import { AppModule } from './app.module'; import { AppModule } from '@app/app.module';
import { AppComponent } from './components/app/app.component'; import { AppComponent } from '@components/app/app.component';
import { HttpCacheInterceptor } from './services/http-cache.interceptor'; import { HttpCacheInterceptor } from '@app/services/http-cache.interceptor';
import { ZoneService } from './services/zone.service'; import { ZoneService } from '@app/services/zone.service';
@NgModule({ @NgModule({

View File

@ -2,33 +2,33 @@ import { BrowserModule } from '@angular/platform-browser';
import { ModuleWithProviders, NgModule } from '@angular/core'; import { ModuleWithProviders, NgModule } from '@angular/core';
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { ZONE_SERVICE } from './injection-tokens'; import { ZONE_SERVICE } from '@app/injection-tokens';
import { AppRoutingModule } from './app-routing.module'; import { AppRoutingModule } from '@app/app-routing.module';
import { AppComponent } from './components/app/app.component'; import { AppComponent } from '@components/app/app.component';
import { ElectrsApiService } from './services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { OrdApiService } from './services/ord-api.service'; import { OrdApiService } from '@app/services/ord-api.service';
import { StateService } from './services/state.service'; import { StateService } from '@app/services/state.service';
import { CacheService } from './services/cache.service'; import { CacheService } from '@app/services/cache.service';
import { PriceService } from './services/price.service'; import { PriceService } from '@app/services/price.service';
import { EnterpriseService } from './services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
import { WebsocketService } from './services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { AudioService } from './services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { PreloadService } from './services/preload.service'; import { PreloadService } from '@app/services/preload.service';
import { SeoService } from './services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from './services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { ZoneService } from './services/zone-shim.service'; import { ZoneService } from '@app/services/zone-shim.service';
import { SharedModule } from './shared/shared.module'; import { SharedModule } from '@app/shared/shared.module';
import { StorageService } from './services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { HttpCacheInterceptor } from './services/http-cache.interceptor'; import { HttpCacheInterceptor } from '@app/services/http-cache.interceptor';
import { LanguageService } from './services/language.service'; import { LanguageService } from '@app/services/language.service';
import { ThemeService } from './services/theme.service'; import { ThemeService } from '@app/services/theme.service';
import { TimeService } from './services/time.service'; import { TimeService } from '@app/services/time.service';
import { FiatShortenerPipe } from './shared/pipes/fiat-shortener.pipe'; import { FiatShortenerPipe } from '@app/shared/pipes/fiat-shortener.pipe';
import { FiatCurrencyPipe } from './shared/pipes/fiat-currency.pipe'; import { FiatCurrencyPipe } from '@app/shared/pipes/fiat-currency.pipe';
import { ShortenStringPipe } from './shared/pipes/shorten-string-pipe/shorten-string.pipe'; import { ShortenStringPipe } from '@app/shared/pipes/shorten-string-pipe/shorten-string.pipe';
import { CapAddressPipe } from './shared/pipes/cap-address-pipe/cap-address-pipe'; import { CapAddressPipe } from '@app/shared/pipes/cap-address-pipe/cap-address-pipe';
import { AppPreloadingStrategy } from './app.preloading-strategy'; import { AppPreloadingStrategy } from '@app/app.preloading-strategy';
import { ServicesApiServices } from './services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
import { DatePipe } from '@angular/common'; import { DatePipe } from '@angular/common';
const providers = [ const providers = [

View File

@ -1,7 +1,7 @@
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { MasterPageComponent } from './components/master-page/master-page.component'; import { MasterPageComponent } from '@components/master-page/master-page.component';
const routes: Routes = [ const routes: Routes = [
{ {

View File

@ -1,5 +1,5 @@
import { Transaction, Vin } from './interfaces/electrs.interface'; import { Transaction, Vin } from '@app/interfaces/electrs.interface';
import { Hash } from './shared/sha256'; import { Hash } from '@app/shared/sha256';
const P2SH_P2WPKH_COST = 21 * 4; // the WU cost for the non-witness part of P2SH-P2WPKH const P2SH_P2WPKH_COST = 21 * 4; // the WU cost for the non-witness part of P2SH-P2WPKH
const P2SH_P2WSH_COST = 35 * 4; // the WU cost for the non-witness part of P2SH-P2WSH const P2SH_P2WSH_COST = 35 * 4; // the WU cost for the non-witness part of P2SH-P2WSH

View File

@ -1,5 +1,5 @@
import { Component, Input } from '@angular/core'; import { Component, Input } from '@angular/core';
import { EnterpriseService } from '../../services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
@Component({ @Component({
selector: 'app-about-sponsors', selector: 'app-about-sponsors',

View File

@ -1,16 +1,16 @@
import { ChangeDetectionStrategy, Component, ElementRef, Inject, LOCALE_ID, OnInit, ViewChild } from '@angular/core'; import { ChangeDetectionStrategy, Component, ElementRef, Inject, LOCALE_ID, OnInit, ViewChild } from '@angular/core';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { IBackendInfo } from '../../interfaces/websocket.interface'; import { IBackendInfo } from '@app/interfaces/websocket.interface';
import { Router, ActivatedRoute } from '@angular/router'; import { Router, ActivatedRoute } from '@angular/router';
import { map, share, tap } from 'rxjs/operators'; import { map, share, tap } from 'rxjs/operators';
import { ITranslators } from '../../interfaces/node-api.interface'; import { ITranslators } from '@app/interfaces/node-api.interface';
import { DOCUMENT } from '@angular/common'; import { DOCUMENT } from '@angular/common';
import { EnterpriseService } from '../../services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
@Component({ @Component({
selector: 'app-about', selector: 'app-about',

View File

@ -1,9 +1,9 @@
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { AboutComponent } from './about.component'; import { AboutComponent } from '@components/about/about.component';
import { AboutSponsorsComponent } from './about-sponsors.component'; import { AboutSponsorsComponent } from '@components/about/about-sponsors.component';
import { SharedModule } from '../../shared/shared.module'; import { SharedModule } from '@app/shared/shared.module';
const routes: Routes = [ const routes: Routes = [
{ {

View File

@ -1,16 +1,16 @@
/* eslint-disable no-console */ /* eslint-disable no-console */
import { Component, OnInit, OnDestroy, Output, EventEmitter, Input, ChangeDetectorRef, SimpleChanges, HostListener } from '@angular/core'; import { Component, OnInit, OnDestroy, Output, EventEmitter, Input, ChangeDetectorRef, SimpleChanges, HostListener } from '@angular/core';
import { Subscription, tap, of, catchError, Observable, switchMap } from 'rxjs'; import { Subscription, tap, of, catchError, Observable, switchMap } from 'rxjs';
import { ServicesApiServices } from '../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
import { md5, insecureRandomUUID } from '../../shared/common.utils'; import { md5, insecureRandomUUID } from '@app/shared/common.utils';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { AudioService } from '../../services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { ETA, EtaService } from '../../services/eta.service'; import { ETA, EtaService } from '@app/services/eta.service';
import { Transaction } from '../../interfaces/electrs.interface'; import { Transaction } from '@app/interfaces/electrs.interface';
import { MiningStats } from '../../services/mining.service'; import { MiningStats } from '@app/services/mining.service';
import { IAuth, AuthServiceMempool } from '../../services/auth.service'; import { IAuth, AuthServiceMempool } from '@app/services/auth.service';
import { EnterpriseService } from '../../services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { isDevMode } from '@angular/core'; import { isDevMode } from '@angular/core';
export type PaymentMethod = 'balance' | 'bitcoin' | 'cashapp' | 'applePay' | 'googlePay'; export type PaymentMethod = 'balance' | 'bitcoin' | 'cashapp' | 'applePay' | 'googlePay';

View File

@ -1,6 +1,6 @@
import { Component, Input, Output, OnChanges, EventEmitter, HostListener, OnInit, ViewChild, ElementRef, AfterViewInit, OnDestroy, ChangeDetectorRef } from '@angular/core'; import { Component, Input, Output, OnChanges, EventEmitter, HostListener, OnInit, ViewChild, ElementRef, AfterViewInit, OnDestroy, ChangeDetectorRef } from '@angular/core';
import { Transaction } from '../../interfaces/electrs.interface'; import { Transaction } from '@app/interfaces/electrs.interface';
import { AccelerationEstimate, RateOption } from './accelerate-checkout.component'; import { AccelerationEstimate, RateOption } from '@components/accelerate-checkout/accelerate-checkout.component';
interface GraphBar { interface GraphBar {
rate: number; rate: number;

View File

@ -1,8 +1,8 @@
import { Component, Input, OnInit, OnChanges, HostListener } from '@angular/core'; import { Component, Input, OnInit, OnChanges, HostListener } from '@angular/core';
import { ETA } from '../../services/eta.service'; import { ETA } from '@app/services/eta.service';
import { Transaction } from '../../interfaces/electrs.interface'; import { Transaction } from '@app/interfaces/electrs.interface';
import { Acceleration, SinglePoolStats } from '../../interfaces/node-api.interface'; import { Acceleration, SinglePoolStats } from '@app/interfaces/node-api.interface';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
@Component({ @Component({
selector: 'app-acceleration-timeline', selector: 'app-acceleration-timeline',

View File

@ -1,18 +1,18 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { EChartsOption } from '../../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { Observable, Subject, Subscription, combineLatest, fromEvent, merge, share } from 'rxjs'; import { Observable, Subject, Subscription, combineLatest, fromEvent, merge, share } from 'rxjs';
import { startWith, switchMap, tap } from 'rxjs/operators'; import { startWith, switchMap, tap } from 'rxjs/operators';
import { SeoService } from '../../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { download, formatterXAxis, formatterXAxisLabel, formatterXAxisTimeCategory } from '../../../shared/graphs.utils'; import { download, formatterXAxis, formatterXAxisLabel, formatterXAxisTimeCategory } from '@app/shared/graphs.utils';
import { StorageService } from '../../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { MiningService } from '../../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { Acceleration } from '../../../interfaces/node-api.interface'; import { Acceleration } from '@app/interfaces/node-api.interface';
import { ServicesApiServices } from '../../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
import { StateService } from '../../../services/state.service'; import { StateService } from '@app/services/state.service';
import { RelativeUrlPipe } from '../../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
@Component({ @Component({
selector: 'app-acceleration-fees-graph', selector: 'app-acceleration-fees-graph',

View File

@ -1,6 +1,6 @@
import { ChangeDetectionStrategy, Component, Input, OnChanges, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnChanges, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { ServicesApiServices } from '../../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
export type AccelerationStats = { export type AccelerationStats = {
totalRequested: number; totalRequested: number;

View File

@ -1,12 +1,12 @@
import { Component, OnInit, ChangeDetectionStrategy, Input, ChangeDetectorRef, OnDestroy, Inject, LOCALE_ID } from '@angular/core'; import { Component, OnInit, ChangeDetectionStrategy, Input, ChangeDetectorRef, OnDestroy, Inject, LOCALE_ID } from '@angular/core';
import { BehaviorSubject, Observable, Subscription, catchError, combineLatest, filter, of, switchMap, tap, throttleTime, timer } from 'rxjs'; import { BehaviorSubject, Observable, Subscription, catchError, combineLatest, filter, of, switchMap, tap, throttleTime, timer } from 'rxjs';
import { Acceleration, BlockExtended, SinglePoolStats } from '../../../interfaces/node-api.interface'; import { Acceleration, BlockExtended, SinglePoolStats } from '@app/interfaces/node-api.interface';
import { StateService } from '../../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { ServicesApiServices } from '../../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
import { SeoService } from '../../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { MiningService } from '../../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
@Component({ @Component({
selector: 'app-accelerations-list', selector: 'app-accelerations-list',

View File

@ -1,18 +1,18 @@
import { ChangeDetectionStrategy, Component, HostListener, Inject, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core'; import { ChangeDetectionStrategy, Component, HostListener, Inject, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core';
import { SeoService } from '../../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { WebsocketService } from '../../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { Acceleration, BlockExtended } from '../../../interfaces/node-api.interface'; import { Acceleration, BlockExtended } from '@app/interfaces/node-api.interface';
import { StateService } from '../../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable, Subscription, catchError, combineLatest, distinctUntilChanged, map, of, share, switchMap, tap } from 'rxjs'; import { Observable, Subscription, catchError, combineLatest, distinctUntilChanged, map, of, share, switchMap, tap } from 'rxjs';
import { Color } from '../../block-overview-graph/sprite-types'; import { Color } from '@components/block-overview-graph/sprite-types';
import { hexToColor } from '../../block-overview-graph/utils'; import { hexToColor } from '@components/block-overview-graph/utils';
import TxView from '../../block-overview-graph/tx-view'; import TxView from '@components/block-overview-graph/tx-view';
import { feeLevels, defaultMempoolFeeColors, contrastMempoolFeeColors } from '../../../app.constants'; import { feeLevels, defaultMempoolFeeColors, contrastMempoolFeeColors } from '@app/app.constants';
import { ServicesApiServices } from '../../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
import { detectWebGL } from '../../../shared/graphs.utils'; import { detectWebGL } from '@app/shared/graphs.utils';
import { AudioService } from '../../../services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { ThemeService } from '../../../services/theme.service'; import { ThemeService } from '@app/services/theme.service';
const acceleratedColor: Color = hexToColor('8F5FF6'); const acceleratedColor: Color = hexToColor('8F5FF6');
const normalColors = defaultMempoolFeeColors.map(hex => hexToColor(hex + '5F')); const normalColors = defaultMempoolFeeColors.map(hex => hexToColor(hex + '5F'));

View File

@ -1,8 +1,8 @@
import { Component, ChangeDetectionStrategy, Input, Output, OnChanges, SimpleChanges, EventEmitter, ChangeDetectorRef } from '@angular/core'; import { Component, ChangeDetectionStrategy, Input, Output, OnChanges, SimpleChanges, EventEmitter, ChangeDetectorRef } from '@angular/core';
import { Transaction } from '../../../interfaces/electrs.interface'; import { Transaction } from '@app/interfaces/electrs.interface';
import { Acceleration, SinglePoolStats } from '../../../interfaces/node-api.interface'; import { Acceleration, SinglePoolStats } from '@app/interfaces/node-api.interface';
import { EChartsOption, PieSeriesOption } from '../../../graphs/echarts'; import { EChartsOption, PieSeriesOption } from '@app/graphs/echarts';
import { MiningStats } from '../../../services/mining.service'; import { MiningStats } from '@app/services/mining.service';
function lighten(color, p): { r, g, b } { function lighten(color, p): { r, g, b } {
return { return {

View File

@ -1,9 +1,9 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { Observable, of } from 'rxjs'; import { Observable, of } from 'rxjs';
import { switchMap } from 'rxjs/operators'; import { switchMap } from 'rxjs/operators';
import { Acceleration } from '../../../interfaces/node-api.interface'; import { Acceleration } from '@app/interfaces/node-api.interface';
import { StateService } from '../../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-pending-stats', selector: 'app-pending-stats',

View File

@ -1,16 +1,16 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, NgZone, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, NgZone, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { BehaviorSubject, Observable, Subscription, combineLatest, of } from 'rxjs'; import { BehaviorSubject, Observable, Subscription, combineLatest, of } from 'rxjs';
import { catchError, map, switchMap, tap } from 'rxjs/operators'; import { catchError, map, switchMap, tap } from 'rxjs/operators';
import { AddressTxSummary, ChainStats } from '../../interfaces/electrs.interface'; import { AddressTxSummary, ChainStats } from '@app/interfaces/electrs.interface';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { AmountShortenerPipe } from '../../shared/pipes/amount-shortener.pipe'; import { AmountShortenerPipe } from '@app/shared/pipes/amount-shortener.pipe';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { PriceService } from '../../services/price.service'; import { PriceService } from '@app/services/price.service';
import { FiatCurrencyPipe } from '../../shared/pipes/fiat-currency.pipe'; import { FiatCurrencyPipe } from '@app/shared/pipes/fiat-currency.pipe';
import { FiatShortenerPipe } from '../../shared/pipes/fiat-shortener.pipe'; import { FiatShortenerPipe } from '@app/shared/pipes/fiat-shortener.pipe';
const periodSeconds = { const periodSeconds = {
'1d': (60 * 60 * 24), '1d': (60 * 60 * 24),

View File

@ -1,15 +1,15 @@
import { Component, OnInit, OnDestroy, ChangeDetectorRef, HostListener } from '@angular/core'; import { Component, OnInit, OnDestroy, ChangeDetectorRef, HostListener } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, catchError } from 'rxjs/operators'; import { switchMap, catchError } from 'rxjs/operators';
import { Address, Transaction } from '../../interfaces/electrs.interface'; import { Address, Transaction } from '@app/interfaces/electrs.interface';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { AudioService } from '../../services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { of, Subscription, forkJoin } from 'rxjs'; import { of, Subscription, forkJoin } from 'rxjs';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { AddressInformation } from '../../interfaces/node-api.interface'; import { AddressInformation } from '@app/interfaces/node-api.interface';
@Component({ @Component({
selector: 'app-address-group', selector: 'app-address-group',

View File

@ -1,7 +1,7 @@
import { Component, ChangeDetectionStrategy, Input, OnChanges } from '@angular/core'; import { Component, ChangeDetectionStrategy, Input, OnChanges } from '@angular/core';
import { Vin, Vout } from '../../interfaces/electrs.interface'; import { Vin, Vout } from '@app/interfaces/electrs.interface';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { AddressType, AddressTypeInfo } from '../../shared/address-utils'; import { AddressType, AddressTypeInfo } from '@app/shared/address-utils';
@Component({ @Component({
selector: 'app-address-labels', selector: 'app-address-labels',

View File

@ -1,9 +1,9 @@
import { Component, Input, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core'; import { Component, Input, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Address, AddressTxSummary } from '../../interfaces/electrs.interface'; import { Address, AddressTxSummary } from '@app/interfaces/electrs.interface';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { Observable, Subscription, catchError, map, of, switchMap, zip } from 'rxjs'; import { Observable, Subscription, catchError, map, of, switchMap, zip } from 'rxjs';
import { PriceService } from '../../services/price.service'; import { PriceService } from '@app/services/price.service';
@Component({ @Component({
selector: 'app-address-transactions-widget', selector: 'app-address-transactions-widget',

View File

@ -1,16 +1,16 @@
import { Component, OnInit, OnDestroy } from '@angular/core'; import { Component, OnInit, OnDestroy } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, filter, catchError, map, tap } from 'rxjs/operators'; import { switchMap, filter, catchError, map, tap } from 'rxjs/operators';
import { Address, Transaction } from '../../interfaces/electrs.interface'; import { Address, Transaction } from '@app/interfaces/electrs.interface';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { AudioService } from '../../services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { of, merge, Subscription, Observable } from 'rxjs'; import { of, merge, Subscription, Observable } from 'rxjs';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
import { AddressInformation } from '../../interfaces/node-api.interface'; import { AddressInformation } from '@app/interfaces/node-api.interface';
@Component({ @Component({
selector: 'app-address-preview', selector: 'app-address-preview',

View File

@ -1,17 +1,17 @@
import { Component, OnInit, OnDestroy, HostListener } from '@angular/core'; import { Component, OnInit, OnDestroy, HostListener } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, filter, catchError, map, tap } from 'rxjs/operators'; import { switchMap, filter, catchError, map, tap } from 'rxjs/operators';
import { Address, ChainStats, Transaction, Utxo, Vin } from '../../interfaces/electrs.interface'; import { Address, ChainStats, Transaction, Utxo, Vin } from '@app/interfaces/electrs.interface';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { AudioService } from '../../services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { of, merge, Subscription, Observable, forkJoin } from 'rxjs'; import { of, merge, Subscription, Observable, forkJoin } from 'rxjs';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
import { AddressInformation } from '../../interfaces/node-api.interface'; import { AddressInformation } from '@app/interfaces/node-api.interface';
import { AddressTypeInfo } from '../../shared/address-utils'; import { AddressTypeInfo } from '@app/shared/address-utils';
class AddressStats implements ChainStats { class AddressStats implements ChainStats {
address: string; address: string;

View File

@ -1,12 +1,12 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, NgZone, OnChanges } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, NgZone, OnChanges } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { EChartsOption, TreemapSeriesOption } from '../../graphs/echarts'; import { EChartsOption, TreemapSeriesOption } from '@app/graphs/echarts';
import { lerpColor } from '../../shared/graphs.utils'; import { lerpColor } from '@app/shared/graphs.utils';
import { AmountShortenerPipe } from '../../shared/pipes/amount-shortener.pipe'; import { AmountShortenerPipe } from '@app/shared/pipes/amount-shortener.pipe';
import { LightningApiService } from '../../lightning/lightning-api.service'; import { LightningApiService } from '@app/lightning/lightning-api.service';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Address } from '../../interfaces/electrs.interface'; import { Address } from '@app/interfaces/electrs.interface';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
@Component({ @Component({

View File

@ -1,7 +1,7 @@
import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-amount-selector', selector: 'app-amount-selector',

View File

@ -1,7 +1,7 @@
import { Component, OnInit, OnDestroy, Input, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core'; import { Component, OnInit, OnDestroy, Input, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable, Subscription } from 'rxjs'; import { Observable, Subscription } from 'rxjs';
import { Price } from '../../services/price.service'; import { Price } from '@app/services/price.service';
@Component({ @Component({
selector: 'app-amount', selector: 'app-amount',

View File

@ -1,11 +1,11 @@
import { Location } from '@angular/common'; import { Location } from '@angular/common';
import { Component, HostListener, OnInit, Inject, LOCALE_ID, HostBinding } from '@angular/core'; import { Component, HostListener, OnInit, Inject, LOCALE_ID, HostBinding } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router'; import { Router, NavigationEnd } from '@angular/router';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { NgbTooltipConfig } from '@ng-bootstrap/ng-bootstrap'; import { NgbTooltipConfig } from '@ng-bootstrap/ng-bootstrap';
import { ThemeService } from '../../services/theme.service'; import { ThemeService } from '@app/services/theme.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
@Component({ @Component({
selector: 'app-root', selector: 'app-root',

View File

@ -1,10 +1,10 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { moveDec } from '../../bitcoin.utils'; import { moveDec } from '@app/bitcoin.utils';
import { AssetsService } from '../../services/assets.service'; import { AssetsService } from '@app/services/assets.service';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { environment } from '../../../environments/environment'; import { environment } from '@environments/environment';
@Component({ @Component({
selector: 'app-asset-circulation', selector: 'app-asset-circulation',

View File

@ -1,17 +1,17 @@
import { Component, OnInit, OnDestroy } from '@angular/core'; import { Component, OnInit, OnDestroy } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, filter, catchError, take } from 'rxjs/operators'; import { switchMap, filter, catchError, take } from 'rxjs/operators';
import { Asset, Transaction } from '../../interfaces/electrs.interface'; import { Asset, Transaction } from '@app/interfaces/electrs.interface';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { AudioService } from '../../services/audio.service'; import { AudioService } from '@app/services/audio.service';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { of, merge, Subscription, combineLatest } from 'rxjs'; import { of, merge, Subscription, combineLatest } from 'rxjs';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { environment } from '../../../environments/environment'; import { environment } from '@app/../environments/environment';
import { AssetsService } from '../../services/assets.service'; import { AssetsService } from '@app/services/assets.service';
import { moveDec } from '../../bitcoin.utils'; import { moveDec } from '@app/bitcoin.utils';
@Component({ @Component({
selector: 'app-asset', selector: 'app-asset',

View File

@ -2,8 +2,8 @@ import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { map, switchMap } from 'rxjs/operators'; import { map, switchMap } from 'rxjs/operators';
import { ApiService } from '../../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { AssetsService } from '../../../services/assets.service'; import { AssetsService } from '@app/services/assets.service';
@Component({ @Component({
selector: 'app-asset-group', selector: 'app-asset-group',

View File

@ -1,7 +1,7 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { ApiService } from '../../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { StateService } from '../../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-assets-featured', selector: 'app-assets-featured',

View File

@ -4,12 +4,12 @@ import { Router } from '@angular/router';
import { NgbTypeahead } from '@ng-bootstrap/ng-bootstrap'; import { NgbTypeahead } from '@ng-bootstrap/ng-bootstrap';
import { merge, Observable, of, Subject } from 'rxjs'; import { merge, Observable, of, Subject } from 'rxjs';
import { distinctUntilChanged, filter, map, switchMap } from 'rxjs/operators'; import { distinctUntilChanged, filter, map, switchMap } from 'rxjs/operators';
import { AssetExtended } from '../../../interfaces/electrs.interface'; import { AssetExtended } from '@app/interfaces/electrs.interface';
import { AssetsService } from '../../../services/assets.service'; import { AssetsService } from '@app/services/assets.service';
import { SeoService } from '../../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { StateService } from '../../../services/state.service'; import { StateService } from '@app/services/state.service';
import { RelativeUrlPipe } from '../../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { environment } from '../../../../environments/environment'; import { environment } from '@environments/environment';
@Component({ @Component({
selector: 'app-assets-nav', selector: 'app-assets-nav',

View File

@ -1,13 +1,13 @@
import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { Component, OnInit, ChangeDetectionStrategy } from '@angular/core';
import { AssetsService } from '../../services/assets.service'; import { AssetsService } from '@app/services/assets.service';
import { environment } from '../../../environments/environment'; import { environment } from '@environments/environment';
import { UntypedFormGroup } from '@angular/forms'; import { UntypedFormGroup } from '@angular/forms';
import { filter, map, switchMap, take } from 'rxjs/operators'; import { filter, map, switchMap, take } from 'rxjs/operators';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { AssetExtended } from '../../interfaces/electrs.interface'; import { AssetExtended } from '@app/interfaces/electrs.interface';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-assets', selector: 'app-assets',

View File

@ -1,7 +1,7 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Address, AddressTxSummary } from '../../interfaces/electrs.interface'; import { Address, AddressTxSummary } from '@app/interfaces/electrs.interface';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { Observable, catchError, of } from 'rxjs'; import { Observable, catchError, of } from 'rxjs';
@Component({ @Component({

View File

@ -4,7 +4,7 @@ import { DomSanitizer, SafeUrl } from '@angular/platform-browser';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { Subscription, of, timer } from 'rxjs'; import { Subscription, of, timer } from 'rxjs';
import { filter, repeat, retry, switchMap, take, tap } from 'rxjs/operators'; import { filter, repeat, retry, switchMap, take, tap } from 'rxjs/operators';
import { ServicesApiServices } from '../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
@Component({ @Component({
selector: 'app-bitcoin-invoice', selector: 'app-bitcoin-invoice',

View File

@ -1,17 +1,17 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, NgZone, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, NgZone, OnInit } from '@angular/core';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { Observable, combineLatest, of } from 'rxjs'; import { Observable, combineLatest, of } from 'rxjs';
import { map, share, startWith, switchMap, tap } from 'rxjs/operators'; import { map, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { download, formatterXAxis, formatterXAxisLabel, formatterXAxisTimeCategory } from '../../shared/graphs.utils'; import { download, formatterXAxis, formatterXAxisLabel, formatterXAxisTimeCategory } from '@app/shared/graphs.utils';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { selectPowerOfTen } from '../../bitcoin.utils'; import { selectPowerOfTen } from '@app/bitcoin.utils';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
@Component({ @Component({

View File

@ -1,18 +1,18 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map, share, startWith, switchMap, tap } from 'rxjs/operators'; import { map, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { download, formatterXAxis } from '../../shared/graphs.utils'; import { download, formatterXAxis } from '@app/shared/graphs.utils';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { FiatShortenerPipe } from '../../shared/pipes/fiat-shortener.pipe'; import { FiatShortenerPipe } from '@app/shared/pipes/fiat-shortener.pipe';
import { FiatCurrencyPipe } from '../../shared/pipes/fiat-currency.pipe'; import { FiatCurrencyPipe } from '@app/shared/pipes/fiat-currency.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-block-fees-graph', selector: 'app-block-fees-graph',

View File

@ -1,19 +1,19 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Inject, Input, LOCALE_ID, NgZone, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Inject, Input, LOCALE_ID, NgZone, OnInit } from '@angular/core';
import { EChartsOption } from '../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { catchError, map, share, startWith, switchMap, tap } from 'rxjs/operators'; import { catchError, map, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { download, formatterXAxis } from '../../shared/graphs.utils'; import { download, formatterXAxis } from '@app/shared/graphs.utils';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { FiatShortenerPipe } from '../../shared/pipes/fiat-shortener.pipe'; import { FiatShortenerPipe } from '@app/shared/pipes/fiat-shortener.pipe';
import { FiatCurrencyPipe } from '../../shared/pipes/fiat-currency.pipe'; import { FiatCurrencyPipe } from '@app/shared/pipes/fiat-currency.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
@Component({ @Component({
selector: 'app-block-fees-subsidy-graph', selector: 'app-block-fees-subsidy-graph',

View File

@ -1,6 +1,6 @@
import { Component, EventEmitter, Output, HostListener, Input, ChangeDetectorRef, OnChanges, SimpleChanges, OnInit, OnDestroy } from '@angular/core'; import { Component, EventEmitter, Output, HostListener, Input, ChangeDetectorRef, OnChanges, SimpleChanges, OnInit, OnDestroy } from '@angular/core';
import { ActiveFilter, FilterGroups, FilterMode, GradientMode, TransactionFilters } from '../../shared/filters.utils'; import { ActiveFilter, FilterGroups, FilterMode, GradientMode, TransactionFilters } from '@app/shared/filters.utils';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';

View File

@ -1,16 +1,16 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, NgZone, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, NgZone, OnInit } from '@angular/core';
import { EChartsOption } from '../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map, share, startWith, switchMap, tap } from 'rxjs/operators'; import { map, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { download, formatterXAxis, formatterXAxisLabel, formatterXAxisTimeCategory } from '../../shared/graphs.utils'; import { download, formatterXAxis, formatterXAxisLabel, formatterXAxisTimeCategory } from '@app/shared/graphs.utils';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-block-health-graph', selector: 'app-block-health-graph',

View File

@ -1,17 +1,17 @@
import { Component, ElementRef, ViewChild, HostListener, Input, Output, EventEmitter, NgZone, AfterViewInit, OnDestroy, OnChanges } from '@angular/core'; import { Component, ElementRef, ViewChild, HostListener, Input, Output, EventEmitter, NgZone, AfterViewInit, OnDestroy, OnChanges } from '@angular/core';
import { TransactionStripped } from '../../interfaces/node-api.interface'; import { TransactionStripped } from '@app/interfaces/node-api.interface';
import { FastVertexArray } from './fast-vertex-array'; import { FastVertexArray } from './fast-vertex-array';
import BlockScene from './block-scene'; import BlockScene from './block-scene';
import TxSprite from './tx-sprite'; import TxSprite from './tx-sprite';
import TxView from './tx-view'; import TxView from './tx-view';
import { Color, Position } from './sprite-types'; import { Color, Position } from '@components/block-overview-graph/sprite-types';
import { Price } from '../../services/price.service'; import { Price } from '@app/services/price.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { ThemeService } from '../../services/theme.service'; import { ThemeService } from '@app/services/theme.service';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
import { defaultColorFunction, setOpacity, defaultAuditColors, defaultColors, ageColorFunction, contrastColorFunction, contrastAuditColors, contrastColors } from './utils'; import { defaultColorFunction, setOpacity, defaultAuditColors, defaultColors, ageColorFunction, contrastColorFunction, contrastAuditColors, contrastColors } from './utils';
import { ActiveFilter, FilterMode, toFlags } from '../../shared/filters.utils'; import { ActiveFilter, FilterMode, toFlags } from '@app/shared/filters.utils';
import { detectWebGL } from '../../shared/graphs.utils'; import { detectWebGL } from '@app/shared/graphs.utils';
const unmatchedOpacity = 0.2; const unmatchedOpacity = 0.2;
const unmatchedAuditColors = { const unmatchedAuditColors = {

View File

@ -1,9 +1,9 @@
import { FastVertexArray } from './fast-vertex-array'; import { FastVertexArray } from './fast-vertex-array';
import TxView from './tx-view'; import TxView from './tx-view';
import { TransactionStripped } from '../../interfaces/node-api.interface'; import { TransactionStripped } from '@app/interfaces/node-api.interface';
import { Color, Position, Square, ViewUpdateParams } from './sprite-types'; import { Color, Position, Square, ViewUpdateParams } from './sprite-types';
import { defaultColorFunction, contrastColorFunction } from './utils'; import { defaultColorFunction, contrastColorFunction } from './utils';
import { ThemeService } from '../../services/theme.service'; import { ThemeService } from '@app/services/theme.service';
export default class BlockScene { export default class BlockScene {
scene: { count: number, offset: { x: number, y: number}}; scene: { count: number, offset: { x: number, y: number}};

View File

@ -3,8 +3,8 @@ import { FastVertexArray } from './fast-vertex-array';
import { SpriteUpdateParams, Square, Color, ViewUpdateParams } from './sprite-types'; import { SpriteUpdateParams, Square, Color, ViewUpdateParams } from './sprite-types';
import { hexToColor } from './utils'; import { hexToColor } from './utils';
import BlockScene from './block-scene'; import BlockScene from './block-scene';
import { TransactionStripped } from '../../interfaces/node-api.interface'; import { TransactionStripped } from '@app/interfaces/node-api.interface';
import { TransactionFlags } from '../../shared/filters.utils'; import { TransactionFlags } from '@app/shared/filters.utils';
const hoverTransitionTime = 300; const hoverTransitionTime = 300;
const defaultHoverColor = hexToColor('1bd8f4'); const defaultHoverColor = hexToColor('1bd8f4');

View File

@ -1,4 +1,4 @@
import { feeLevels, defaultMempoolFeeColors, contrastMempoolFeeColors } from '../../app.constants'; import { feeLevels, defaultMempoolFeeColors, contrastMempoolFeeColors } from '@app/app.constants';
import { Color } from './sprite-types'; import { Color } from './sprite-types';
import TxView from './tx-view'; import TxView from './tx-view';

View File

@ -1,9 +1,9 @@
import { Component, ElementRef, ViewChild, Input, OnChanges, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core'; import { Component, ElementRef, ViewChild, Input, OnChanges, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
import { Position } from '../../components/block-overview-graph/sprite-types.js'; import { Position } from '@components/block-overview-graph/sprite-types.js';
import { Price } from '../../services/price.service'; import { Price } from '@app/services/price.service';
import { TransactionStripped } from '../../interfaces/node-api.interface.js'; import { TransactionStripped } from '@app/interfaces/node-api.interface.js';
import { Filter, FilterMode, TransactionFlags, toFilters } from '../../shared/filters.utils'; import { Filter, FilterMode, TransactionFlags, toFilters } from '@app/shared/filters.utils';
import { Block } from '../../interfaces/electrs.interface.js'; import { Block } from '@app/interfaces/electrs.interface.js';
@Component({ @Component({
selector: 'app-block-overview-tooltip', selector: 'app-block-overview-tooltip',

View File

@ -1,18 +1,18 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map, share, startWith, switchMap, tap } from 'rxjs/operators'; import { map, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { download, formatterXAxis } from '../../shared/graphs.utils'; import { download, formatterXAxis } from '@app/shared/graphs.utils';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { FiatShortenerPipe } from '../../shared/pipes/fiat-shortener.pipe'; import { FiatShortenerPipe } from '@app/shared/pipes/fiat-shortener.pipe';
import { FiatCurrencyPipe } from '../../shared/pipes/fiat-currency.pipe'; import { FiatCurrencyPipe } from '@app/shared/pipes/fiat-currency.pipe';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-block-rewards-graph', selector: 'app-block-rewards-graph',

View File

@ -1,16 +1,16 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit, HostBinding } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit, HostBinding } from '@angular/core';
import { EChartsOption} from '../../graphs/echarts'; import { EChartsOption} from '@app/graphs/echarts';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map, share, startWith, switchMap, tap } from 'rxjs/operators'; import { map, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { download, formatterXAxis } from '../../shared/graphs.utils'; import { download, formatterXAxis } from '@app/shared/graphs.utils';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-block-sizes-weights-graph', selector: 'app-block-sizes-weights-graph',

View File

@ -1,15 +1,15 @@
import { Component, OnInit, OnDestroy, ViewChild, HostListener } from '@angular/core'; import { Component, OnInit, OnDestroy, ViewChild, HostListener } from '@angular/core';
import { ActivatedRoute, ParamMap, Router } from '@angular/router'; import { ActivatedRoute, ParamMap, Router } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, tap, catchError, shareReplay, filter } from 'rxjs/operators'; import { switchMap, tap, catchError, shareReplay, filter } from 'rxjs/operators';
import { of, Subscription } from 'rxjs'; import { of, Subscription } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { BlockExtended, TransactionStripped } from '../../interfaces/node-api.interface'; import { BlockExtended, TransactionStripped } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
import { BlockOverviewGraphComponent } from '../block-overview-graph/block-overview-graph.component'; import { BlockOverviewGraphComponent } from '@components/block-overview-graph/block-overview-graph.component';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
function bestFitResolution(min, max, n): number { function bestFitResolution(min, max, n): number {
const target = (min + max) / 2; const target = (min + max) / 2;

View File

@ -1,16 +1,16 @@
import { Component, OnInit, OnDestroy, ViewChild, ElementRef } from '@angular/core'; import { Component, OnInit, OnDestroy, ViewChild, ElementRef } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, tap, throttleTime, catchError, shareReplay, startWith, pairwise, filter } from 'rxjs/operators'; import { switchMap, tap, throttleTime, catchError, shareReplay, startWith, pairwise, filter } from 'rxjs/operators';
import { of, Subscription, asyncScheduler, forkJoin } from 'rxjs'; import { of, Subscription, asyncScheduler, forkJoin } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { BlockExtended, TransactionStripped } from '../../interfaces/node-api.interface'; import { BlockExtended, TransactionStripped } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
import { BlockOverviewGraphComponent } from '../../components/block-overview-graph/block-overview-graph.component'; import { BlockOverviewGraphComponent } from '@components/block-overview-graph/block-overview-graph.component';
import { ServicesApiServices } from '../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
@Component({ @Component({
selector: 'app-block-preview', selector: 'app-block-preview',

View File

@ -1,10 +1,10 @@
import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core'; import { ChangeDetectionStrategy, Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Transaction, Vout } from '../../interfaces/electrs.interface'; import { Transaction, Vout } from '@app/interfaces/electrs.interface';
import { Observable, Subscription, catchError, combineLatest, map, of, startWith, switchMap, tap } from 'rxjs'; import { Observable, Subscription, catchError, combineLatest, map, of, startWith, switchMap, tap } from 'rxjs';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { PreloadService } from '../../services/preload.service'; import { PreloadService } from '@app/services/preload.service';
@Component({ @Component({
selector: 'app-block-transactions', selector: 'app-block-transactions',

View File

@ -1,23 +1,23 @@
import { Component, OnInit, OnDestroy, ViewChildren, QueryList, ChangeDetectorRef } from '@angular/core'; import { Component, OnInit, OnDestroy, ViewChildren, QueryList, ChangeDetectorRef } from '@angular/core';
import { Location } from '@angular/common'; import { Location } from '@angular/common';
import { ActivatedRoute, ParamMap, Router } from '@angular/router'; import { ActivatedRoute, ParamMap, Router } from '@angular/router';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
import { switchMap, tap, throttleTime, catchError, map, shareReplay, startWith, filter } from 'rxjs/operators'; import { switchMap, tap, throttleTime, catchError, map, shareReplay, startWith, filter } from 'rxjs/operators';
import { Observable, of, Subscription, asyncScheduler, EMPTY, combineLatest, forkJoin } from 'rxjs'; import { Observable, of, Subscription, asyncScheduler, EMPTY, combineLatest, forkJoin } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { Acceleration, BlockAudit, BlockExtended, TransactionStripped } from '../../interfaces/node-api.interface'; import { Acceleration, BlockAudit, BlockExtended, TransactionStripped } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { BlockOverviewGraphComponent } from '../../components/block-overview-graph/block-overview-graph.component'; import { BlockOverviewGraphComponent } from '@components/block-overview-graph/block-overview-graph.component';
import { detectWebGL } from '../../shared/graphs.utils'; import { detectWebGL } from '@app/shared/graphs.utils';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
import { PriceService, Price } from '../../services/price.service'; import { PriceService, Price } from '@app/services/price.service';
import { CacheService } from '../../services/cache.service'; import { CacheService } from '@app/services/cache.service';
import { ServicesApiServices } from '../../services/services-api.service'; import { ServicesApiServices } from '@app/services/services-api.service';
import { PreloadService } from '../../services/preload.service'; import { PreloadService } from '@app/services/preload.service';
import { identifyPrioritizedTransactions } from '../../shared/transaction.utils'; import { identifyPrioritizedTransactions } from '@app/shared/transaction.utils';
@Component({ @Component({
selector: 'app-block', selector: 'app-block',

View File

@ -1,9 +1,9 @@
import { NgModule } from '@angular/core'; import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common'; import { CommonModule } from '@angular/common';
import { Routes, RouterModule } from '@angular/router'; import { Routes, RouterModule } from '@angular/router';
import { BlockComponent } from './block.component'; import { BlockComponent } from '@components/block/block.component';
import { BlockTransactionsComponent } from './block-transactions.component'; import { BlockTransactionsComponent } from '@components/block/block-transactions.component';
import { SharedModule } from '../../shared/shared.module'; import { SharedModule } from '@app/shared/shared.module';
const routes: Routes = [ const routes: Routes = [
{ {

View File

@ -1,10 +1,10 @@
import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, Input, OnChanges, SimpleChanges } from '@angular/core'; import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, Input, OnChanges, SimpleChanges } from '@angular/core';
import { Observable, Subscription, delay, filter, tap } from 'rxjs'; import { Observable, Subscription, delay, filter, tap } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { specialBlocks } from '../../app.constants'; import { specialBlocks } from '@app/app.constants';
import { BlockExtended } from '../../interfaces/node-api.interface'; import { BlockExtended } from '@app/interfaces/node-api.interface';
import { Location } from '@angular/common'; import { Location } from '@angular/common';
import { CacheService } from '../../services/cache.service'; import { CacheService } from '@app/services/cache.service';
interface BlockchainBlock extends BlockExtended { interface BlockchainBlock extends BlockExtended {
placeholder?: boolean; placeholder?: boolean;

View File

@ -1,7 +1,7 @@
import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, Output, EventEmitter, ChangeDetectorRef, OnChanges, SimpleChanges } from '@angular/core'; import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, Output, EventEmitter, ChangeDetectorRef, OnChanges, SimpleChanges } from '@angular/core';
import { firstValueFrom, Subscription } from 'rxjs'; import { firstValueFrom, Subscription } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
@Component({ @Component({
selector: 'app-blockchain', selector: 'app-blockchain',

View File

@ -2,13 +2,13 @@ import { Component, OnInit, ChangeDetectionStrategy, Input, ChangeDetectorRef, I
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { BehaviorSubject, combineLatest, Observable, timer, of, Subscription } from 'rxjs'; import { BehaviorSubject, combineLatest, Observable, timer, of, Subscription } from 'rxjs';
import { debounceTime, delayWhen, filter, map, retryWhen, scan, skip, switchMap, tap, throttleTime } from 'rxjs/operators'; import { debounceTime, delayWhen, filter, map, retryWhen, scan, skip, switchMap, tap, throttleTime } from 'rxjs/operators';
import { BlockExtended } from '../../interfaces/node-api.interface'; import { BlockExtended } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
@Component({ @Component({
selector: 'app-blocks-list', selector: 'app-blocks-list',

View File

@ -2,8 +2,8 @@ import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms'; import { FormBuilder, FormGroup } from '@angular/forms';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { map, switchMap } from 'rxjs/operators'; import { map, switchMap } from 'rxjs/operators';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-calculator', selector: 'app-calculator',

View File

@ -1,6 +1,6 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnDestroy, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Input, OnChanges, OnDestroy, OnInit } from '@angular/core';
import { Subscription, tap, timer } from 'rxjs'; import { Subscription, tap, timer } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-clock-face', selector: 'app-clock-face',

View File

@ -1,11 +1,11 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Input, OnInit } from '@angular/core';
import { Observable, Subscription, of, switchMap, tap } from 'rxjs'; import { Observable, Subscription, of, switchMap, tap } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { BlockExtended } from '../../interfaces/node-api.interface'; import { BlockExtended } from '@app/interfaces/node-api.interface';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { MempoolInfo, Recommendedfees } from '../../interfaces/websocket.interface'; import { MempoolInfo, Recommendedfees } from '@app/interfaces/websocket.interface';
import { ActivatedRoute, ParamMap, Router } from '@angular/router'; import { ActivatedRoute, ParamMap, Router } from '@angular/router';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
@Component({ @Component({
selector: 'app-clock', selector: 'app-clock',

View File

@ -1,6 +1,6 @@
import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, OnChanges, ChangeDetectorRef } from '@angular/core'; import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Input, OnChanges, ChangeDetectorRef } from '@angular/core';
import { firstValueFrom, Subscription } from 'rxjs'; import { firstValueFrom, Subscription } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-clockchain', selector: 'app-clockchain',

View File

@ -1,16 +1,16 @@
import { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Inject, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core'; import { AfterViewInit, ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, Inject, OnDestroy, OnInit, PLATFORM_ID } from '@angular/core';
import { combineLatest, merge, Observable, of, Subject, Subscription } from 'rxjs'; import { combineLatest, merge, Observable, of, Subject, Subscription } from 'rxjs';
import { catchError, filter, map, scan, share, shareReplay, startWith, switchMap, tap } from 'rxjs/operators'; import { catchError, filter, map, scan, share, shareReplay, startWith, switchMap, tap } from 'rxjs/operators';
import { BlockExtended, OptimizedMempoolStats, TransactionStripped } from '../../interfaces/node-api.interface'; import { BlockExtended, OptimizedMempoolStats, TransactionStripped } from '@app/interfaces/node-api.interface';
import { MempoolInfo, ReplacementInfo } from '../../interfaces/websocket.interface'; import { MempoolInfo, ReplacementInfo } from '@app/interfaces/websocket.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { ActiveFilter, FilterMode, GradientMode, toFlags } from '../../shared/filters.utils'; import { ActiveFilter, FilterMode, GradientMode, toFlags } from '@app/shared/filters.utils';
import { detectWebGL } from '../../shared/graphs.utils'; import { detectWebGL } from '@app/shared/graphs.utils';
import { Address, AddressTxSummary } from '../../interfaces/electrs.interface'; import { Address, AddressTxSummary } from '@app/interfaces/electrs.interface';
import { ElectrsApiService } from '../../services/electrs-api.service'; import { ElectrsApiService } from '@app/services/electrs-api.service';
interface MempoolBlocksData { interface MempoolBlocksData {
blocks: number; blocks: number;

View File

@ -1,10 +1,10 @@
import { Component, Inject, LOCALE_ID, OnInit } from '@angular/core'; import { Component, Inject, LOCALE_ID, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { selectPowerOfTen } from '../../bitcoin.utils'; import { selectPowerOfTen } from '@app/bitcoin.utils';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-difficulty-adjustments-table', selector: 'app-difficulty-adjustments-table',

View File

@ -1,7 +1,7 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
interface EpochProgress { interface EpochProgress {
base: string; base: string;

View File

@ -1,7 +1,7 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, ElementRef, ViewChild, Inject, Input, LOCALE_ID, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, HostListener, ElementRef, ViewChild, Inject, Input, LOCALE_ID, OnInit } from '@angular/core';
import { combineLatest, Observable } from 'rxjs'; import { combineLatest, Observable } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { StateService } from '../..//services/state.service'; import { StateService } from '@app/services/state.service';
interface EpochProgress { interface EpochProgress {
base: string; base: string;

View File

@ -2,15 +2,15 @@ import { Component, OnInit, OnDestroy, ViewChildren, QueryList } from '@angular/
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { catchError, startWith } from 'rxjs/operators'; import { catchError, startWith } from 'rxjs/operators';
import { Subject, Subscription, of } from 'rxjs'; import { Subject, Subscription, of } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { BlockExtended, TransactionStripped } from '../../interfaces/node-api.interface'; import { BlockExtended, TransactionStripped } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { BlockOverviewGraphComponent } from '../block-overview-graph/block-overview-graph.component'; import { BlockOverviewGraphComponent } from '@components/block-overview-graph/block-overview-graph.component';
import { detectWebGL } from '../../shared/graphs.utils'; import { detectWebGL } from '@app/shared/graphs.utils';
import { animate, style, transition, trigger } from '@angular/animations'; import { animate, style, transition, trigger } from '@angular/animations';
import { BytesPipe } from '../../shared/pipes/bytes-pipe/bytes.pipe'; import { BytesPipe } from '@app/shared/pipes/bytes-pipe/bytes.pipe';
function bestFitResolution(min, max, n): number { function bestFitResolution(min, max, n): number {
const target = (min + max) / 2; const target = (min + max) / 2;

View File

@ -1,12 +1,12 @@
import { Component, OnDestroy, OnInit, ChangeDetectorRef } from "@angular/core"; import { Component, OnDestroy, OnInit, ChangeDetectorRef } from '@angular/core';
import { FormBuilder, FormGroup, Validators, ValidatorFn, AbstractControl, ValidationErrors } from "@angular/forms"; import { FormBuilder, FormGroup, Validators, ValidatorFn, AbstractControl, ValidationErrors } from '@angular/forms';
import { Subscription } from "rxjs"; import { Subscription } from 'rxjs';
import { ServicesApiServices } from "../../services/services-api.service"; import { ServicesApiServices } from '@app/services/services-api.service';
import { getRegex } from "../../shared/regex.utils"; import { getRegex } from '@app/shared/regex.utils';
import { StateService } from "../../services/state.service"; import { StateService } from '@app/services/state.service';
import { WebsocketService } from "../../services/websocket.service"; import { WebsocketService } from '@app/services/websocket.service';
import { AudioService } from "../../services/audio.service"; import { AudioService } from '@app/services/audio.service';
import { HttpErrorResponse } from "@angular/common/http"; import { HttpErrorResponse } from '@angular/common/http';
@Component({ @Component({
selector: 'app-faucet', selector: 'app-faucet',

View File

@ -1,9 +1,9 @@
import { HostListener, OnChanges, OnDestroy } from '@angular/core'; import { HostListener, OnChanges, OnDestroy } from '@angular/core';
import { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core'; import { Component, Input, OnInit, ChangeDetectionStrategy } from '@angular/core';
import { TransactionStripped } from '../../interfaces/node-api.interface'; import { TransactionStripped } from '@app/interfaces/node-api.interface';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { VbytesPipe } from '../../shared/pipes/bytes-pipe/vbytes.pipe'; import { VbytesPipe } from '@app/shared/pipes/bytes-pipe/vbytes.pipe';
import { selectPowerOfTen } from '../../bitcoin.utils'; import { selectPowerOfTen } from '@app/bitcoin.utils';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
@Component({ @Component({

View File

@ -1,10 +1,10 @@
import { Component, OnInit, ChangeDetectionStrategy, OnDestroy, ChangeDetectorRef } from '@angular/core'; import { Component, OnInit, ChangeDetectionStrategy, OnDestroy, ChangeDetectorRef } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable, combineLatest, Subscription } from 'rxjs'; import { Observable, combineLatest, Subscription } from 'rxjs';
import { Recommendedfees } from '../../interfaces/websocket.interface'; import { Recommendedfees } from '@app/interfaces/websocket.interface';
import { feeLevels } from '../../app.constants'; import { feeLevels } from '@app/app.constants';
import { map, startWith, tap } from 'rxjs/operators'; import { map, startWith, tap } from 'rxjs/operators';
import { ThemeService } from '../../services/theme.service'; import { ThemeService } from '@app/services/theme.service';
@Component({ @Component({
selector: 'app-fees-box', selector: 'app-fees-box',

View File

@ -1,8 +1,8 @@
import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, OnInit } from '@angular/core';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { fiatCurrencies } from '../../app.constants'; import { fiatCurrencies } from '@app/app.constants';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-fiat-selector', selector: 'app-fiat-selector',

View File

@ -1,8 +1,8 @@
import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core'; import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable, combineLatest } from 'rxjs'; import { Observable, combineLatest } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { MempoolInfo } from '../../interfaces/websocket.interface'; import { MempoolInfo } from '@app/interfaces/websocket.interface';
interface MempoolBlocksData { interface MempoolBlocksData {
blocks: number; blocks: number;

View File

@ -1,6 +1,6 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-graphs', selector: 'app-graphs',

View File

@ -1,18 +1,18 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit, HostBinding } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit, HostBinding } from '@angular/core';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { combineLatest, fromEvent, merge, Observable, of } from 'rxjs'; import { combineLatest, fromEvent, merge, Observable, of } from 'rxjs';
import { map, mergeMap, share, startWith, switchMap, tap } from 'rxjs/operators'; import { map, mergeMap, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { selectPowerOfTen } from '../../bitcoin.utils'; import { selectPowerOfTen } from '@app/bitcoin.utils';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { download } from '../../shared/graphs.utils'; import { download } from '@app/shared/graphs.utils';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
@Component({ @Component({
selector: 'app-hashrate-chart', selector: 'app-hashrate-chart',

View File

@ -1,16 +1,16 @@
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, OnInit, HostBinding } from '@angular/core'; import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, Input, LOCALE_ID, OnInit, HostBinding } from '@angular/core';
import { EChartsOption } from '../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { delay, map, retryWhen, share, startWith, switchMap, tap } from 'rxjs/operators'; import { delay, map, retryWhen, share, startWith, switchMap, tap } from 'rxjs/operators';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { chartColors, poolsColor } from '../../app.constants'; import { chartColors, poolsColor } from '@app/app.constants';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { MiningService } from '../../services/mining.service'; import { MiningService } from '@app/services/mining.service';
import { download } from '../../shared/graphs.utils'; import { download } from '@app/shared/graphs.utils';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
interface Hashrate { interface Hashrate {
timestamp: number; timestamp: number;

View File

@ -1,10 +1,10 @@
import { Component, Input, Inject, LOCALE_ID, ChangeDetectionStrategy, OnInit, OnDestroy } from '@angular/core'; import { Component, Input, Inject, LOCALE_ID, ChangeDetectionStrategy, OnInit, OnDestroy } from '@angular/core';
import { EChartsOption } from '../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { OnChanges } from '@angular/core'; import { OnChanges } from '@angular/core';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { download, formatterXAxis, formatterXAxisLabel } from '../../shared/graphs.utils'; import { download, formatterXAxis, formatterXAxisLabel } from '@app/shared/graphs.utils';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Subscription } from 'rxjs'; import { Subscription } from 'rxjs';
const OUTLIERS_MEDIAN_MULTIPLIER = 4; const OUTLIERS_MEDIAN_MULTIPLIER = 4;

View File

@ -1,8 +1,8 @@
import { DOCUMENT } from '@angular/common'; import { DOCUMENT } from '@angular/common';
import { ChangeDetectionStrategy, Component, Inject, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, OnInit } from '@angular/core';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { languages } from '../../app.constants'; import { languages } from '@app/app.constants';
import { LanguageService } from '../../services/language.service'; import { LanguageService } from '@app/services/language.service';
@Component({ @Component({
selector: 'app-language-selector', selector: 'app-language-selector',

View File

@ -1,7 +1,7 @@
import { Component, Inject, LOCALE_ID, ChangeDetectionStrategy, Input, OnChanges, OnInit } from '@angular/core'; import { Component, Inject, LOCALE_ID, ChangeDetectionStrategy, Input, OnChanges, OnInit } from '@angular/core';
import { formatDate, formatNumber } from '@angular/common'; import { formatDate, formatNumber } from '@angular/common';
import { EChartsOption } from '../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
@Component({ @Component({
selector: 'app-lbtc-pegs-graph', selector: 'app-lbtc-pegs-graph',

View File

@ -1,9 +1,9 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { Env, StateService } from '../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { merge, Observable, of} from 'rxjs'; import { merge, Observable, of} from 'rxjs';
import { LanguageService } from '../../services/language.service'; import { LanguageService } from '@app/services/language.service';
import { EnterpriseService } from '../../services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
import { NavigationService } from '../../services/navigation.service'; import { NavigationService } from '@app/services/navigation.service';
@Component({ @Component({
selector: 'app-liquid-master-page', selector: 'app-liquid-master-page',

View File

@ -1,6 +1,6 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { Observable, map, of } from 'rxjs'; import { Observable, map, of } from 'rxjs';
import { FederationUtxo } from '../../../interfaces/node-api.interface'; import { FederationUtxo } from '@app/interfaces/node-api.interface';
@Component({ @Component({
selector: 'app-expired-utxos-stats', selector: 'app-expired-utxos-stats',

View File

@ -1,10 +1,10 @@
import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core'; import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core';
import { Observable, Subject, combineLatest, of, timer } from 'rxjs'; import { Observable, Subject, combineLatest, of, timer } from 'rxjs';
import { delayWhen, filter, map, share, shareReplay, switchMap, takeUntil, tap, throttleTime } from 'rxjs/operators'; import { delayWhen, filter, map, share, shareReplay, switchMap, takeUntil, tap, throttleTime } from 'rxjs/operators';
import { ApiService } from '../../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { Env, StateService } from '../../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { AuditStatus, CurrentPegs, FederationAddress } from '../../../interfaces/node-api.interface'; import { AuditStatus, CurrentPegs, FederationAddress } from '@app/interfaces/node-api.interface';
import { WebsocketService } from '../../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-federation-addresses-list', selector: 'app-federation-addresses-list',

View File

@ -2,10 +2,10 @@ import { Component, OnInit, ChangeDetectionStrategy, Input } from '@angular/core
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { BehaviorSubject, Observable, Subject, combineLatest, of, timer } from 'rxjs'; import { BehaviorSubject, Observable, Subject, combineLatest, of, timer } from 'rxjs';
import { delayWhen, filter, map, share, shareReplay, switchMap, takeUntil, tap, throttleTime } from 'rxjs/operators'; import { delayWhen, filter, map, share, shareReplay, switchMap, takeUntil, tap, throttleTime } from 'rxjs/operators';
import { ApiService } from '../../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { Env, StateService } from '../../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { AuditStatus, CurrentPegs, FederationUtxo } from '../../../interfaces/node-api.interface'; import { AuditStatus, CurrentPegs, FederationUtxo } from '@app/interfaces/node-api.interface';
import { WebsocketService } from '../../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-federation-utxos-list', selector: 'app-federation-utxos-list',

View File

@ -1,5 +1,5 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { SeoService } from '../../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
@Component({ @Component({
selector: 'app-federation-wallet', selector: 'app-federation-wallet',

View File

@ -2,11 +2,11 @@ import { ActivatedRoute, Router } from '@angular/router';
import { Component, OnInit, ChangeDetectionStrategy, Input, Inject, LOCALE_ID, ChangeDetectorRef } from '@angular/core'; import { Component, OnInit, ChangeDetectionStrategy, Input, Inject, LOCALE_ID, ChangeDetectorRef } from '@angular/core';
import { BehaviorSubject, Observable, Subject, Subscription, combineLatest, of, timer } from 'rxjs'; import { BehaviorSubject, Observable, Subject, Subscription, combineLatest, of, timer } from 'rxjs';
import { delayWhen, filter, map, share, shareReplay, switchMap, take, takeUntil, tap, throttleTime } from 'rxjs/operators'; import { delayWhen, filter, map, share, shareReplay, switchMap, take, takeUntil, tap, throttleTime } from 'rxjs/operators';
import { ApiService } from '../../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { Env, StateService } from '../../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { AuditStatus, CurrentPegs, RecentPeg } from '../../../interfaces/node-api.interface'; import { AuditStatus, CurrentPegs, RecentPeg } from '@app/interfaces/node-api.interface';
import { WebsocketService } from '../../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { SeoService } from '../../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
@Component({ @Component({
selector: 'app-recent-pegs-list', selector: 'app-recent-pegs-list',

View File

@ -1,6 +1,6 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { PegsVolume } from '../../../interfaces/node-api.interface'; import { PegsVolume } from '@app/interfaces/node-api.interface';
@Component({ @Component({
selector: 'app-recent-pegs-stats', selector: 'app-recent-pegs-stats',

View File

@ -1,6 +1,6 @@
import { Component, ChangeDetectionStrategy, Input, OnChanges, OnInit, HostListener } from '@angular/core'; import { Component, ChangeDetectionStrategy, Input, OnChanges, OnInit, HostListener } from '@angular/core';
import { EChartsOption } from '../../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { CurrentPegs } from '../../../interfaces/node-api.interface'; import { CurrentPegs } from '@app/interfaces/node-api.interface';
@Component({ @Component({

View File

@ -1,7 +1,7 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { Env, StateService } from '../../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { CurrentPegs } from '../../../interfaces/node-api.interface'; import { CurrentPegs } from '@app/interfaces/node-api.interface';
@Component({ @Component({
selector: 'app-reserves-supply-stats', selector: 'app-reserves-supply-stats',

View File

@ -1,8 +1,8 @@
import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnInit } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { map } from 'rxjs/operators'; import { map } from 'rxjs/operators';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-loading-indicator', selector: 'app-loading-indicator',

View File

@ -1,8 +1,8 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable, Subscription, merge, of } from 'rxjs'; import { Observable, Subscription, merge, of } from 'rxjs';
import { LanguageService } from '../../services/language.service'; import { LanguageService } from '@app/services/language.service';
import { EnterpriseService } from '../../services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
@Component({ @Component({
selector: 'app-master-page-preview', selector: 'app-master-page-preview',

View File

@ -1,5 +1,5 @@
import { Component, OnInit } from '@angular/core'; import { Component, OnInit } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { Observable, merge, of } from 'rxjs'; import { Observable, merge, of } from 'rxjs';
@Component({ @Component({

View File

@ -1,12 +1,12 @@
import { Component, OnInit, OnDestroy, Input, ViewChild } from '@angular/core'; import { Component, OnInit, OnDestroy, Input, ViewChild } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { Env, StateService } from '../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { Observable, merge, of, Subscription } from 'rxjs'; import { Observable, merge, of, Subscription } from 'rxjs';
import { LanguageService } from '../../services/language.service'; import { LanguageService } from '@app/services/language.service';
import { EnterpriseService } from '../../services/enterprise.service'; import { EnterpriseService } from '@app/services/enterprise.service';
import { NavigationService } from '../../services/navigation.service'; import { NavigationService } from '@app/services/navigation.service';
import { MenuComponent } from '../menu/menu.component'; import { MenuComponent } from '@components/menu/menu.component';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
@Component({ @Component({
selector: 'app-master-page', selector: 'app-master-page',

View File

@ -1,16 +1,16 @@
import { Component, ViewChild, Input, Output, EventEmitter, import { Component, ViewChild, Input, Output, EventEmitter,
OnInit, OnDestroy, OnChanges, ChangeDetectionStrategy, ChangeDetectorRef, AfterViewInit } from '@angular/core'; OnInit, OnDestroy, OnChanges, ChangeDetectionStrategy, ChangeDetectorRef, AfterViewInit } from '@angular/core';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { MempoolBlockDelta, isMempoolDelta } from '../../interfaces/websocket.interface'; import { MempoolBlockDelta, isMempoolDelta } from '@app/interfaces/websocket.interface';
import { TransactionStripped } from '../../interfaces/node-api.interface'; import { TransactionStripped } from '@app/interfaces/node-api.interface';
import { BlockOverviewGraphComponent } from '../../components/block-overview-graph/block-overview-graph.component'; import { BlockOverviewGraphComponent } from '@components/block-overview-graph/block-overview-graph.component';
import { Subscription, BehaviorSubject } from 'rxjs'; import { Subscription, BehaviorSubject } from 'rxjs';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { Color } from '../block-overview-graph/sprite-types'; import { Color } from '@components/block-overview-graph/sprite-types';
import TxView from '../block-overview-graph/tx-view'; import TxView from '@components/block-overview-graph/tx-view';
import { FilterMode, GradientMode } from '../../shared/filters.utils'; import { FilterMode, GradientMode } from '@app/shared/filters.utils';
@Component({ @Component({
selector: 'app-mempool-block-overview', selector: 'app-mempool-block-overview',

View File

@ -1,8 +1,8 @@
import { Component, OnInit, OnDestroy, HostListener } from '@angular/core'; import { Component, OnInit, OnDestroy, HostListener } from '@angular/core';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { Subscription, filter, map, switchMap, tap } from 'rxjs'; import { Subscription, filter, map, switchMap, tap } from 'rxjs';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
function bestFitResolution(min, max, n): number { function bestFitResolution(min, max, n): number {
const target = (min + max) / 2; const target = (min + max) / 2;

View File

@ -1,14 +1,14 @@
import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Inject, PLATFORM_ID, ChangeDetectorRef } from '@angular/core'; import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, Inject, PLATFORM_ID, ChangeDetectorRef } from '@angular/core';
import { detectWebGL } from '../../shared/graphs.utils'; import { detectWebGL } from '@app/shared/graphs.utils';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { ActivatedRoute, ParamMap } from '@angular/router'; import { ActivatedRoute, ParamMap } from '@angular/router';
import { switchMap, map, tap, filter } from 'rxjs/operators'; import { switchMap, map, tap, filter } from 'rxjs/operators';
import { MempoolBlock } from '../../interfaces/websocket.interface'; import { MempoolBlock } from '@app/interfaces/websocket.interface';
import { TransactionStripped } from '../../interfaces/node-api.interface'; import { TransactionStripped } from '@app/interfaces/node-api.interface';
import { Observable, BehaviorSubject } from 'rxjs'; import { Observable, BehaviorSubject } from 'rxjs';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { seoDescriptionNetwork } from '../../shared/common.utils'; import { seoDescriptionNetwork } from '@app/shared/common.utils';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
@Component({ @Component({
selector: 'app-mempool-block', selector: 'app-mempool-block',

View File

@ -1,17 +1,17 @@
import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, HostListener, Input, OnChanges, SimpleChanges, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core'; import { Component, OnInit, OnDestroy, ChangeDetectionStrategy, ChangeDetectorRef, HostListener, Input, OnChanges, SimpleChanges, Output, EventEmitter, ViewChild, ElementRef } from '@angular/core';
import { Subscription, Observable, of, combineLatest } from 'rxjs'; import { Subscription, Observable, of, combineLatest } from 'rxjs';
import { MempoolBlock } from '../../interfaces/websocket.interface'; import { MempoolBlock } from '@app/interfaces/websocket.interface';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { EtaService } from '../../services/eta.service'; import { EtaService } from '@app/services/eta.service';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { delay, filter, map, switchMap, tap } from 'rxjs/operators'; import { delay, filter, map, switchMap, tap } from 'rxjs/operators';
import { feeLevels } from '../../app.constants'; import { feeLevels } from '@app/app.constants';
import { specialBlocks } from '../../app.constants'; import { specialBlocks } from '@app/app.constants';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { Location } from '@angular/common'; import { Location } from '@angular/common';
import { DifficultyAdjustment, MempoolPosition } from '../../interfaces/node-api.interface'; import { DifficultyAdjustment, MempoolPosition } from '@app/interfaces/node-api.interface';
import { animate, style, transition, trigger } from '@angular/animations'; import { animate, style, transition, trigger } from '@angular/animations';
import { ThemeService } from '../../services/theme.service'; import { ThemeService } from '@app/services/theme.service';
@Component({ @Component({
selector: 'app-mempool-blocks', selector: 'app-mempool-blocks',

View File

@ -1,14 +1,14 @@
import { Component, OnInit, Input, Inject, LOCALE_ID, ChangeDetectionStrategy, OnChanges } from '@angular/core'; import { Component, OnInit, Input, Inject, LOCALE_ID, ChangeDetectionStrategy, OnChanges } from '@angular/core';
import { VbytesPipe } from '../../shared/pipes/bytes-pipe/vbytes.pipe'; import { VbytesPipe } from '@app/shared/pipes/bytes-pipe/vbytes.pipe';
import { WuBytesPipe } from '../../shared/pipes/bytes-pipe/wubytes.pipe'; import { WuBytesPipe } from '@app/shared/pipes/bytes-pipe/wubytes.pipe';
import { AmountShortenerPipe } from '../../shared/pipes/amount-shortener.pipe'; import { AmountShortenerPipe } from '@app/shared/pipes/amount-shortener.pipe';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { OptimizedMempoolStats } from '../../interfaces/node-api.interface'; import { OptimizedMempoolStats } from '@app/interfaces/node-api.interface';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { EChartsOption } from '../../graphs/echarts'; import { EChartsOption } from '@app/graphs/echarts';
import { feeLevels, chartColors } from '../../app.constants'; import { feeLevels, chartColors } from '@app/app.constants';
import { download, formatterXAxis, formatterXAxisLabel } from '../../shared/graphs.utils'; import { download, formatterXAxis, formatterXAxisLabel } from '@app/shared/graphs.utils';
@Component({ @Component({
selector: 'app-mempool-graph', selector: 'app-mempool-graph',

View File

@ -1,11 +1,11 @@
import { Component, OnInit, Input, Output, EventEmitter, HostListener, OnDestroy } from '@angular/core'; import { Component, OnInit, Input, Output, EventEmitter, HostListener, OnDestroy } from '@angular/core';
import { Observable } from 'rxjs'; import { Observable } from 'rxjs';
import { MenuGroup } from '../../interfaces/services.interface'; import { MenuGroup } from '@app/interfaces/services.interface';
import { StorageService } from '../../services/storage.service'; import { StorageService } from '@app/services/storage.service';
import { Router, NavigationStart } from '@angular/router'; import { Router, NavigationStart } from '@angular/router';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { IUser, ServicesApiServices } from '../../services/services-api.service'; import { IUser, ServicesApiServices } from '@app/services/services-api.service';
import { AuthServiceMempool } from '../../services/auth.service'; import { AuthServiceMempool } from '@app/services/auth.service';
@Component({ @Component({
selector: 'app-menu', selector: 'app-menu',

View File

@ -1,8 +1,8 @@
import { AfterViewInit, ChangeDetectionStrategy, Component, HostListener, OnInit } from '@angular/core'; import { AfterViewInit, ChangeDetectionStrategy, Component, HostListener, OnInit } from '@angular/core';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
import { WebsocketService } from '../../services/websocket.service'; import { WebsocketService } from '@app/services/websocket.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { EventType, NavigationStart, Router } from '@angular/router'; import { EventType, NavigationStart, Router } from '@angular/router';
@Component({ @Component({

View File

@ -1,6 +1,6 @@
import { ChangeDetectionStrategy, Component, Input, OnChanges, SimpleChanges } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, OnChanges, SimpleChanges } from '@angular/core';
import { Runestone, Etching } from '../../shared/ord/rune.utils'; import { Runestone, Etching } from '@app/shared/ord/rune.utils';
import { Inscription } from '../../shared/ord/inscription.utils'; import { Inscription } from '@app/shared/ord/inscription.utils';
@Component({ @Component({
selector: 'app-ord-data', selector: 'app-ord-data',

View File

@ -1,17 +1,17 @@
import { ChangeDetectionStrategy, Component, Input, NgZone, OnInit, HostBinding } from '@angular/core'; import { ChangeDetectionStrategy, Component, Input, NgZone, OnInit, HostBinding } from '@angular/core';
import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms'; import { UntypedFormBuilder, UntypedFormGroup } from '@angular/forms';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { EChartsOption, PieSeriesOption } from '../../graphs/echarts'; import { EChartsOption, PieSeriesOption } from '@app/graphs/echarts';
import { merge, Observable } from 'rxjs'; import { merge, Observable } from 'rxjs';
import { map, shareReplay, startWith, switchMap, tap } from 'rxjs/operators'; import { map, shareReplay, startWith, switchMap, tap } from 'rxjs/operators';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { StorageService } from '../..//services/storage.service'; import { StorageService } from '@app//services/storage.service';
import { MiningService, MiningStats } from '../../services/mining.service'; import { MiningService, MiningStats } from '@app/services/mining.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { chartColors, poolsColor } from '../../app.constants'; import { chartColors, poolsColor } from '@app/app.constants';
import { RelativeUrlPipe } from '../../shared/pipes/relative-url/relative-url.pipe'; import { RelativeUrlPipe } from '@app/shared/pipes/relative-url/relative-url.pipe';
import { download } from '../../shared/graphs.utils'; import { download } from '@app/shared/graphs.utils';
import { isMobile } from '../../shared/common.utils'; import { isMobile } from '@app/shared/common.utils';
@Component({ @Component({
selector: 'app-pool-ranking', selector: 'app-pool-ranking',

View File

@ -1,14 +1,14 @@
import { ChangeDetectionStrategy, Component, Inject, LOCALE_ID, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, LOCALE_ID, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { Observable, of } from 'rxjs'; import { Observable, of } from 'rxjs';
import { map, switchMap, catchError } from 'rxjs/operators'; import { map, switchMap, catchError } from 'rxjs/operators';
import { PoolStat } from '../../interfaces/node-api.interface'; import { PoolStat } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
@Component({ @Component({
selector: 'app-pool-preview', selector: 'app-pool-preview',

View File

@ -1,14 +1,14 @@
import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core'; import { ChangeDetectionStrategy, Component, Inject, Input, LOCALE_ID, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { echarts, EChartsOption } from '../../graphs/echarts'; import { echarts, EChartsOption } from '@app/graphs/echarts';
import { BehaviorSubject, Observable, Subscription, combineLatest, of } from 'rxjs'; import { BehaviorSubject, Observable, Subscription, combineLatest, of } from 'rxjs';
import { catchError, distinctUntilChanged, filter, map, share, switchMap, tap } from 'rxjs/operators'; import { catchError, distinctUntilChanged, filter, map, share, switchMap, tap } from 'rxjs/operators';
import { BlockExtended, PoolStat } from '../../interfaces/node-api.interface'; import { BlockExtended, PoolStat } from '@app/interfaces/node-api.interface';
import { ApiService } from '../../services/api.service'; import { ApiService } from '@app/services/api.service';
import { StateService } from '../../services/state.service'; import { StateService } from '@app/services/state.service';
import { selectPowerOfTen } from '../../bitcoin.utils'; import { selectPowerOfTen } from '@app/bitcoin.utils';
import { formatNumber } from '@angular/common'; import { formatNumber } from '@angular/common';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { HttpErrorResponse } from '@angular/common/http'; import { HttpErrorResponse } from '@angular/common/http';
interface AccelerationTotal { interface AccelerationTotal {

View File

@ -1,7 +1,7 @@
import { Component } from '@angular/core'; import { Component } from '@angular/core';
import { Env, StateService } from '../../services/state.service'; import { Env, StateService } from '@app/services/state.service';
import { SeoService } from '../../services/seo.service'; import { SeoService } from '@app/services/seo.service';
import { OpenGraphService } from '../../services/opengraph.service'; import { OpenGraphService } from '@app/services/opengraph.service';
@Component({ @Component({
selector: 'app-privacy-policy', selector: 'app-privacy-policy',

Some files were not shown because too many files have changed in this diff Show More