You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
5 months ago | |
---|---|---|
source | 5 months ago | |
tests | 5 months ago | |
.gitignore | 2 years ago | |
LICENSE | 1 year ago | |
README.md | 5 months ago | |
package.json | 5 months ago | |
pnpm-lock.yaml | 1 year ago | |
tsconfig.json | 2 years ago |
README.md
Migration 🧳 Helper
Tiny helper library for migrating data.
Features
- Zero dependencies.
- 100% code coverage.
- TypeScript definitions included.
Usage
import {migrate, Migration} from '@holllo/migration-helper';
// Your data that needs migrating.
const data = 'data';
// Your data's current version.
const version = '1.0.0';
// Create some migrations to apply.
const migrations: Array<Migration<string>> = [
{
version: '1.0.1',
migrate: async (data: string) => `${data} migrated`,
},
{
version: '1.0.2',
migrate: async (data: string) => `${data} (again!)`,
},
];
// Migrate your data.
const migrated = await migrate(data, version, migrations);
// Congratulations, your data is now on version 1.0.2!
console.log(migrated);
See the tests directory for how to use number
, Date
or a custom way of versioning.
License
Distributed under the AGPL-3.0-or-later license, see LICENSE for more information.