0.1.0 • Published 1 year ago

@amoutonbrady/lz-string v0.1.0

Weekly downloads
7
License
MIT
Repository
github
Last release
1 year ago

@amoutonbrady/lz-string

This is a modern port of the original lz-string.

What does modern means?

The project was not really supported and maintained anymore.

I rewrote it in modern javascript syntax, typescript, compiled it with esbuild and wrote tests with uvu.

The size is much smaller and it play nicer with modern bundlers.

Install

$ npm install @amoutonbrady/lz-string

Example

import { compress, decompress } from '@amoutonbrady/lz-string'

const compressed = compress('hello world')
const decompressed = decompress(compressed)

API

The API is the same as lz-string, minus a few methods that needs re-implementations:

  • compressToUTF16(input: string): string;
  • decompressFromUTF16(compressed: string): string;
  • compressToUint8Array(uncompressed: string): Uint8Array;
  • decompressFromUint8Array(compressed: Uint8Array): string;

compressToBase64(input: string): string;

decompressFromBase64(input: string): string | null;

compressToURL(input: string): string;

decompressFromURL(input: string): string | null;

compress(uncompressed: string): string;

decompress(compressed: null | string): string | null;