@marinade.finance/ts-common
v4.2.4
Published
TypeScript common utilities for Marinade Finance
Readme
@marinade.finance/ts-common
Generally usable TypeScript utilities.
Installation
pnpm add @marinade.finance/ts-common@latestDependencies: decimal.js, async-retry.
Features
Retry Decorator
import { Retry } from '@marinade.finance/ts-common'
class MyService {
@Retry({ retries: 3, baseDelay: 1000 })
async fetchData() {
// Automatically retries on failure
}
}Object Utilities
import { omitNullish } from '@marinade.finance/ts-common'
// Filter out null/undefined values
const clean = omitNullish({ a: 1, b: null, c: undefined })
// Result: { a: 1 }JSON Utilities
import {
parseJson,
readJsonFile,
writeJsonFile,
readJsonLines,
writeJsonLines,
} from '@marinade.finance/ts-common'
// Safe JSON parsing
const data = parseJson<MyType>('{"key": "value"}')
// File operations
await writeJsonFile('data.json', { key: 'value' })
const loaded = await readJsonFile<MyType>('data.json')
// JSONL (JSON Lines) streaming
await writeJsonLines('items.jsonl', [item1, item2, item3])
const items = await readJsonLines<MyType>('items.jsonl')