//! SPDX-License-Identifier: GPL-3.0-or-later
import { WorkErrorResponse, WorkGenerateResponse, WorkValidateResponse } from 'nano-pow'
-import { isHex32, isHex8, Logger, stats } from 'nano-pow/utils'
+import { Logger, isHex32, isHex8, stats } from 'nano-pow/utils'
import { Serializable, spawn } from 'node:child_process'
import { getRandomValues } from 'node:crypto'
import { createInterface } from 'node:readline/promises'
let isBatch = false
let isBenchmark = false
let runs = 1
-const body: { [key: string]: any } = {
+const body: Record<string, any> = {
action: 'work_generate'
}
}
}
-async function request (body: { [key: string]: any }): Promise<WorkGenerateResponse | WorkValidateResponse | WorkErrorResponse> {
+async function request (body: Record<string, any>): Promise<WorkGenerateResponse | WorkValidateResponse | WorkErrorResponse> {
return new Promise((resolve, reject): void => {
const listener = async (msg: Serializable): Promise<void> => {
if (typeof msg === 'object' && msg != null
//! SPDX-License-Identifier: GPL-3.0-or-later
import { WorkErrorResponse, WorkGenerateResponse, WorkValidateResponse } from 'nano-pow'
-import { isHex32, isHex8, Logger } from 'nano-pow/utils'
+import { Logger, isHex32, isHex8 } from 'nano-pow/utils'
import { Serializable } from 'node:child_process'
import { hash } from 'node:crypto'
import { readFile, writeFile } from 'node:fs/promises'
LOG: logger.log('Data corrupted.')
throw new Error(resBody)
}
- const dataParsed = data as { [key: string]: unknown }
+ const dataParsed = data as Record<string, unknown>
let { action, hash, work, difficulty } = dataParsed
if (action !== 'work_generate' && action !== 'work_validate') {
// Start drawing to calculate one nonce per pixel
let found = false
- let result: { [key: string]: bigint } = {}
+ let result: Record<string, bigint> = {}
let isFirstRetry = false
try {
do {
LOG: logger.groupStart('NanoPow WebGPU work_generate')
LOG: logger.log('generating')
let found = false
- let result: { [key: string]: bigint } = {}
+ let result: Record<string, bigint> = {}
let isFirstRetry = false
try {
do {
*/
export class Logger {
isEnabled: boolean = false
- groups: { [key: string]: boolean } = {}
+ groups: Record<string, boolean> = {}
groupStart (name: string): void {
if (this.isEnabled) {