Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 | 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 4x 3x 3x 3x 3x 3x 2x 2x 2x 2x 1x 1x 1x 1x 1x 2x 2x 2x 2x | import { HttpClient } from "@angular/common/http"
import { Component } from "@angular/core"
import { Store } from "@ngrx/store"
import { first, tap } from "rxjs"
import { CcState } from "../../../codeCharta.model"
import { LoadFileService } from "../../../services/loadFile/loadFile.service"
import { LoadInitialFileService, sampleFile1, sampleFile2 } from "../../../services/loadInitialFile/loadInitialFile.service"
import { UrlExtractor } from "../../../services/loadInitialFile/urlExtractor"
import { setDefaultMetrics } from "../../../state/effects/resetChosenMetrics/resetChosenMetrics.effect"
import { metricDataSelector } from "../../../state/selectors/accumulatedData/metricData/metricData.selector"
import { setState } from "../../../state/store/state.actions"
import { defaultState } from "../../../state/store/state.manager"
import { deleteCcState } from "../../../util/indexedDB/indexedDBWriter"
import { MatToolbar } from "@angular/material/toolbar"
import { CdkScrollable } from "@angular/cdk/scrolling"
import { MatDialogContent, MatDialogActions, MatDialogClose } from "@angular/material/dialog"
import { MatButton } from "@angular/material/button"
@Component({
selector: "cc-confirm-reset-map-dialog",
templateUrl: "./confirmResetMapDialog.component.html",
standalone: true,
imports: [MatToolbar, CdkScrollable, MatDialogContent, MatDialogActions, MatButton, MatDialogClose]
})
export class ConfirmResetMapDialogComponent {
private urlUtils = new UrlExtractor(this.httpClient)
constructor(
private store: Store<CcState>,
private httpClient: HttpClient,
private loadFileService: LoadFileService,
private loadInitialFileService: LoadInitialFileService
) {}
async resetMap() {
await deleteCcState()
this.store.dispatch(setState({ value: defaultState }))
const isFileQueryParameterPresent = this.loadInitialFileService.checkFileQueryParameterPresent()
if (isFileQueryParameterPresent) {
try {
const urlNameDataPairs = await this.urlUtils.getFileDataFromQueryParam()
this.loadFileService.loadFiles(urlNameDataPairs)
this.loadInitialFileService.setRenderStateFromUrl()
} catch {
this.loadFileService.loadFiles([sampleFile1, sampleFile2])
}
} else {
this.loadFileService.loadFiles([sampleFile1, sampleFile2])
}
this.resetMetrics()
}
private resetMetrics() {
this.store
.select(metricDataSelector)
.pipe(
first(),
tap(metricData => {
const nodeMetricData = metricData.nodeMetricData
setDefaultMetrics(this.store, nodeMetricData)
})
)
.subscribe()
}
}
|