Skip to content

Commit

Permalink
feat: use native # instead of typescript private
Browse files Browse the repository at this point in the history
  • Loading branch information
typicode committed Sep 12, 2021
1 parent a79547d commit 89d5b60
Show file tree
Hide file tree
Showing 7 changed files with 31 additions and 31 deletions.
8 changes: 4 additions & 4 deletions src/adapters/JSONFile.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ import { Adapter } from '../Low.js'
import { TextFile } from './TextFile.js'

export class JSONFile<T> implements Adapter<T> {
private adapter: TextFile
#adapter: TextFile

constructor(filename: string) {
this.adapter = new TextFile(filename)
this.#adapter = new TextFile(filename)
}

async read(): Promise<T | null> {
const data = await this.adapter.read()
const data = await this.#adapter.read()
if (data === null) {
return null
} else {
Expand All @@ -18,6 +18,6 @@ export class JSONFile<T> implements Adapter<T> {
}

write(obj: T): Promise<void> {
return this.adapter.write(JSON.stringify(obj, null, 2))
return this.#adapter.write(JSON.stringify(obj, null, 2))
}
}
8 changes: 4 additions & 4 deletions src/adapters/JSONFileSync.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@ import { SyncAdapter } from '../LowSync.js'
import { TextFileSync } from './TextFileSync.js'

export class JSONFileSync<T> implements SyncAdapter<T> {
private adapter: TextFileSync
#adapter: TextFileSync

constructor(filename: string) {
this.adapter = new TextFileSync(filename)
this.#adapter = new TextFileSync(filename)
}

read(): T | null {
const data = this.adapter.read()
const data = this.#adapter.read()
if (data === null) {
return null
} else {
Expand All @@ -18,6 +18,6 @@ export class JSONFileSync<T> implements SyncAdapter<T> {
}

write(obj: T): void {
this.adapter.write(JSON.stringify(obj, null, 2))
this.#adapter.write(JSON.stringify(obj, null, 2))
}
}
8 changes: 4 additions & 4 deletions src/adapters/LocalStorage.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { SyncAdapter } from '../LowSync.js'

export class LocalStorage<T> implements SyncAdapter<T> {
private key: string
#key: string

constructor(key: string) {
this.key = key
this.#key = key
}

read(): T | null {
const value = localStorage.getItem(this.key)
const value = localStorage.getItem(this.#key)

if (value === null) {
return null
Expand All @@ -18,6 +18,6 @@ export class LocalStorage<T> implements SyncAdapter<T> {
}

write(obj: T): void {
localStorage.setItem(this.key, JSON.stringify(obj))
localStorage.setItem(this.#key, JSON.stringify(obj))
}
}
6 changes: 3 additions & 3 deletions src/adapters/Memory.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
import { Adapter } from '../Low.js'

export class Memory<T> implements Adapter<T> {
private data: T | null = null
#data: T | null = null

read(): Promise<T | null> {
return Promise.resolve(this.data)
return Promise.resolve(this.#data)
}

write(obj: T): Promise<void> {
this.data = obj
this.#data = obj
return Promise.resolve()
}
}
6 changes: 3 additions & 3 deletions src/adapters/MemorySync.ts
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
import { SyncAdapter } from '../LowSync.js'

export class MemorySync<T> implements SyncAdapter<T> {
private data: T | null = null
#data: T | null = null

read(): T | null {
return this.data || null
return this.#data || null
}

write(obj: T): void {
this.data = obj
this.#data = obj
}
}
12 changes: 6 additions & 6 deletions src/adapters/TextFile.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,19 +4,19 @@ import { Writer } from 'steno'
import { Adapter } from '../Low.js'

export class TextFile implements Adapter<string> {
private filename: string
private writer: Writer
#filename: string
#writer: Writer

constructor(filename: string) {
this.filename = filename
this.writer = new Writer(filename)
this.#filename = filename
this.#writer = new Writer(filename)
}

async read(): Promise<string | null> {
let data

try {
data = await fs.promises.readFile(this.filename, 'utf-8')
data = await fs.promises.readFile(this.#filename, 'utf-8')
} catch (e) {
if ((e as NodeJS.ErrnoException).code === 'ENOENT') {
return null
Expand All @@ -28,6 +28,6 @@ export class TextFile implements Adapter<string> {
}

write(str: string): Promise<void> {
return this.writer.write(str)
return this.#writer.write(str)
}
}
14 changes: 7 additions & 7 deletions src/adapters/TextFileSync.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@ import path from 'path'
import { SyncAdapter } from '../LowSync.js'

export class TextFileSync implements SyncAdapter<string> {
private tempFilename: string
private filename: string
#tempFilename: string
#filename: string

constructor(filename: string) {
this.filename = filename
this.tempFilename = path.join(
this.#filename = filename
this.#tempFilename = path.join(
path.dirname(filename),
`.${path.basename(filename)}.tmp`,
)
Expand All @@ -19,7 +19,7 @@ export class TextFileSync implements SyncAdapter<string> {
let data

try {
data = fs.readFileSync(this.filename, 'utf-8')
data = fs.readFileSync(this.#filename, 'utf-8')
} catch (e) {
if ((e as NodeJS.ErrnoException).code === 'ENOENT') {
return null
Expand All @@ -31,7 +31,7 @@ export class TextFileSync implements SyncAdapter<string> {
}

write(str: string): void {
fs.writeFileSync(this.tempFilename, str)
fs.renameSync(this.tempFilename, this.filename)
fs.writeFileSync(this.#tempFilename, str)
fs.renameSync(this.#tempFilename, this.#filename)
}
}

0 comments on commit 89d5b60

Please sign in to comment.