added doga

This commit is contained in:
szabomarton
2025-02-25 09:55:29 +01:00
parent 5174ab4cc4
commit 13254e5623
1149 changed files with 80161 additions and 0 deletions

11
25_02_24/node_modules/lowdb/lib/adapters/Memory.d.ts generated vendored Normal file
View File

@@ -0,0 +1,11 @@
import { Adapter, SyncAdapter } from '../core/Low.js';
export declare class Memory<T> implements Adapter<T> {
#private;
read(): Promise<T | null>;
write(obj: T): Promise<void>;
}
export declare class MemorySync<T> implements SyncAdapter<T> {
#private;
read(): T | null;
write(obj: T): void;
}

19
25_02_24/node_modules/lowdb/lib/adapters/Memory.js generated vendored Normal file
View File

@@ -0,0 +1,19 @@
export class Memory {
#data = null;
read() {
return Promise.resolve(this.#data);
}
write(obj) {
this.#data = obj;
return Promise.resolve();
}
}
export class MemorySync {
#data = null;
read() {
return this.#data || null;
}
write(obj) {
this.#data = obj;
}
}

View File

@@ -0,0 +1,4 @@
import { WebStorage } from './WebStorage.js';
export declare class LocalStorage<T> extends WebStorage<T> {
constructor(key: string);
}

View File

@@ -0,0 +1,6 @@
import { WebStorage } from './WebStorage.js';
export class LocalStorage extends WebStorage {
constructor(key) {
super(key, localStorage);
}
}

View File

@@ -0,0 +1,4 @@
import { WebStorage } from './WebStorage.js';
export declare class SessionStorage<T> extends WebStorage<T> {
constructor(key: string);
}

View File

@@ -0,0 +1,6 @@
import { WebStorage } from './WebStorage.js';
export class SessionStorage extends WebStorage {
constructor(key) {
super(key, sessionStorage);
}
}

View File

@@ -0,0 +1,7 @@
import { SyncAdapter } from '../../core/Low.js';
export declare class WebStorage<T> implements SyncAdapter<T> {
#private;
constructor(key: string, storage: Storage);
read(): T | null;
write(obj: T): void;
}

View File

@@ -0,0 +1,18 @@
export class WebStorage {
#key;
#storage;
constructor(key, storage) {
this.#key = key;
this.#storage = storage;
}
read() {
const value = this.#storage.getItem(this.#key);
if (value === null) {
return null;
}
return JSON.parse(value);
}
write(obj) {
this.#storage.setItem(this.#key, JSON.stringify(obj));
}
}

View File

@@ -0,0 +1,21 @@
/// <reference types="node" resolution-mode="require"/>
import { PathLike } from 'fs';
import { Adapter, SyncAdapter } from '../../core/Low.js';
export declare class DataFile<T> implements Adapter<T> {
#private;
constructor(filename: PathLike, { parse, stringify, }: {
parse: (str: string) => T;
stringify: (data: T) => string;
});
read(): Promise<T | null>;
write(obj: T): Promise<void>;
}
export declare class DataFileSync<T> implements SyncAdapter<T> {
#private;
constructor(filename: PathLike, { parse, stringify, }: {
parse: (str: string) => T;
stringify: (data: T) => string;
});
read(): T | null;
write(obj: T): void;
}

View File

@@ -0,0 +1,45 @@
import { TextFile, TextFileSync } from './TextFile.js';
export class DataFile {
#adapter;
#parse;
#stringify;
constructor(filename, { parse, stringify, }) {
this.#adapter = new TextFile(filename);
this.#parse = parse;
this.#stringify = stringify;
}
async read() {
const data = await this.#adapter.read();
if (data === null) {
return null;
}
else {
return this.#parse(data);
}
}
write(obj) {
return this.#adapter.write(this.#stringify(obj));
}
}
export class DataFileSync {
#adapter;
#parse;
#stringify;
constructor(filename, { parse, stringify, }) {
this.#adapter = new TextFileSync(filename);
this.#parse = parse;
this.#stringify = stringify;
}
read() {
const data = this.#adapter.read();
if (data === null) {
return null;
}
else {
return this.#parse(data);
}
}
write(obj) {
this.#adapter.write(this.#stringify(obj));
}
}

View File

@@ -0,0 +1,9 @@
/// <reference types="node" resolution-mode="require"/>
import { PathLike } from 'fs';
import { DataFile, DataFileSync } from './DataFile.js';
export declare class JSONFile<T> extends DataFile<T> {
constructor(filename: PathLike);
}
export declare class JSONFileSync<T> extends DataFileSync<T> {
constructor(filename: PathLike);
}

View File

@@ -0,0 +1,17 @@
import { DataFile, DataFileSync } from './DataFile.js';
export class JSONFile extends DataFile {
constructor(filename) {
super(filename, {
parse: JSON.parse,
stringify: (data) => JSON.stringify(data, null, 2),
});
}
}
export class JSONFileSync extends DataFileSync {
constructor(filename) {
super(filename, {
parse: JSON.parse,
stringify: (data) => JSON.stringify(data, null, 2),
});
}
}

View File

@@ -0,0 +1,15 @@
/// <reference types="node" resolution-mode="require"/>
import { PathLike } from 'node:fs';
import { Adapter, SyncAdapter } from '../../core/Low.js';
export declare class TextFile implements Adapter<string> {
#private;
constructor(filename: PathLike);
read(): Promise<string | null>;
write(str: string): Promise<void>;
}
export declare class TextFileSync implements SyncAdapter<string> {
#private;
constructor(filename: PathLike);
read(): string | null;
write(str: string): void;
}

View File

@@ -0,0 +1,54 @@
import { readFileSync, renameSync, writeFileSync } from 'node:fs';
import { readFile } from 'node:fs/promises';
import path from 'node:path';
import { Writer } from 'steno';
export class TextFile {
#filename;
#writer;
constructor(filename) {
this.#filename = filename;
this.#writer = new Writer(filename);
}
async read() {
let data;
try {
data = await readFile(this.#filename, 'utf-8');
}
catch (e) {
if (e.code === 'ENOENT') {
return null;
}
throw e;
}
return data;
}
write(str) {
return this.#writer.write(str);
}
}
export class TextFileSync {
#tempFilename;
#filename;
constructor(filename) {
this.#filename = filename;
const f = filename.toString();
this.#tempFilename = path.join(path.dirname(f), `.${path.basename(f)}.tmp`);
}
read() {
let data;
try {
data = readFileSync(this.#filename, 'utf-8');
}
catch (e) {
if (e.code === 'ENOENT') {
return null;
}
throw e;
}
return data;
}
write(str) {
writeFileSync(this.#tempFilename, str);
renameSync(this.#tempFilename, this.#filename);
}
}

3
25_02_24/node_modules/lowdb/lib/browser.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export * from './adapters/browser/LocalStorage.js';
export * from './adapters/browser/SessionStorage.js';
export * from './presets/browser.js';

3
25_02_24/node_modules/lowdb/lib/browser.js generated vendored Normal file
View File

@@ -0,0 +1,3 @@
export * from './adapters/browser/LocalStorage.js';
export * from './adapters/browser/SessionStorage.js';
export * from './presets/browser.js';

24
25_02_24/node_modules/lowdb/lib/core/Low.d.ts generated vendored Normal file
View File

@@ -0,0 +1,24 @@
export interface Adapter<T> {
read: () => Promise<T | null>;
write: (data: T) => Promise<void>;
}
export interface SyncAdapter<T> {
read: () => T | null;
write: (data: T) => void;
}
export declare class Low<T = unknown> {
adapter: Adapter<T>;
data: T;
constructor(adapter: Adapter<T>, defaultData: T);
read(): Promise<void>;
write(): Promise<void>;
update(fn: (data: T) => unknown): Promise<void>;
}
export declare class LowSync<T = unknown> {
adapter: SyncAdapter<T>;
data: T;
constructor(adapter: SyncAdapter<T>, defaultData: T);
read(): void;
write(): void;
update(fn: (data: T) => unknown): void;
}

50
25_02_24/node_modules/lowdb/lib/core/Low.js generated vendored Normal file
View File

@@ -0,0 +1,50 @@
function checkArgs(adapter, defaultData) {
if (adapter === undefined)
throw new Error('lowdb: missing adapter');
if (defaultData === undefined)
throw new Error('lowdb: missing default data');
}
export class Low {
adapter;
data;
constructor(adapter, defaultData) {
checkArgs(adapter, defaultData);
this.adapter = adapter;
this.data = defaultData;
}
async read() {
const data = await this.adapter.read();
if (data)
this.data = data;
}
async write() {
if (this.data)
await this.adapter.write(this.data);
}
async update(fn) {
fn(this.data);
await this.write();
}
}
export class LowSync {
adapter;
data;
constructor(adapter, defaultData) {
checkArgs(adapter, defaultData);
this.adapter = adapter;
this.data = defaultData;
}
read() {
const data = this.adapter.read();
if (data)
this.data = data;
}
write() {
if (this.data)
this.adapter.write(this.data);
}
update(fn) {
fn(this.data);
this.write();
}
}

2
25_02_24/node_modules/lowdb/lib/index.d.ts generated vendored Normal file
View File

@@ -0,0 +1,2 @@
export * from './adapters/Memory.js';
export * from './core/Low.js';

2
25_02_24/node_modules/lowdb/lib/index.js generated vendored Normal file
View File

@@ -0,0 +1,2 @@
export * from './adapters/Memory.js';
export * from './core/Low.js';

4
25_02_24/node_modules/lowdb/lib/node.d.ts generated vendored Normal file
View File

@@ -0,0 +1,4 @@
export * from './adapters/node/DataFile.js';
export * from './adapters/node/JSONFile.js';
export * from './adapters/node/TextFile.js';
export * from './presets/node.js';

4
25_02_24/node_modules/lowdb/lib/node.js generated vendored Normal file
View File

@@ -0,0 +1,4 @@
export * from './adapters/node/DataFile.js';
export * from './adapters/node/JSONFile.js';
export * from './adapters/node/TextFile.js';
export * from './presets/node.js';

3
25_02_24/node_modules/lowdb/lib/presets/browser.d.ts generated vendored Normal file
View File

@@ -0,0 +1,3 @@
import { LowSync } from '../index.js';
export declare function LocalStoragePreset<Data>(key: string, defaultData: Data): LowSync<Data>;
export declare function SessionStoragePreset<Data>(key: string, defaultData: Data): LowSync<Data>;

15
25_02_24/node_modules/lowdb/lib/presets/browser.js generated vendored Normal file
View File

@@ -0,0 +1,15 @@
import { LocalStorage } from '../adapters/browser/LocalStorage.js';
import { SessionStorage } from '../adapters/browser/SessionStorage.js';
import { LowSync } from '../index.js';
export function LocalStoragePreset(key, defaultData) {
const adapter = new LocalStorage(key);
const db = new LowSync(adapter, defaultData);
db.read();
return db;
}
export function SessionStoragePreset(key, defaultData) {
const adapter = new SessionStorage(key);
const db = new LowSync(adapter, defaultData);
db.read();
return db;
}

5
25_02_24/node_modules/lowdb/lib/presets/node.d.ts generated vendored Normal file
View File

@@ -0,0 +1,5 @@
/// <reference types="node" resolution-mode="require"/>
import { PathLike } from 'node:fs';
import { Low, LowSync } from '../core/Low.js';
export declare function JSONFilePreset<Data>(filename: PathLike, defaultData: Data): Promise<Low<Data>>;
export declare function JSONFileSyncPreset<Data>(filename: PathLike, defaultData: Data): LowSync<Data>;

19
25_02_24/node_modules/lowdb/lib/presets/node.js generated vendored Normal file
View File

@@ -0,0 +1,19 @@
import { Memory, MemorySync } from '../adapters/Memory.js';
import { JSONFile, JSONFileSync } from '../adapters/node/JSONFile.js';
import { Low, LowSync } from '../core/Low.js';
export async function JSONFilePreset(filename, defaultData) {
const adapter = process.env.NODE_ENV === 'test'
? new Memory()
: new JSONFile(filename);
const db = new Low(adapter, defaultData);
await db.read();
return db;
}
export function JSONFileSyncPreset(filename, defaultData) {
const adapter = process.env.NODE_ENV === 'test'
? new MemorySync()
: new JSONFileSync(filename);
const db = new LowSync(adapter, defaultData);
db.read();
return db;
}