snowflakify
Version:
The most complete Snowflake ID generator in TypeScript
41 lines (40 loc) • 891 B
JavaScript
var _a;
import {
TimestampFragment,
WorkerFragment,
ProcessFragment,
NetworkFragment,
SequenceFragment,
} from '../index.js';
/**
* Options class used to construct default Snowflakify instances.
* @internal
*/
export default class Options {}
_a = Options;
/**
* @internal
*/
Options.defaultWorkerProcess = (epoch) => [
new TimestampFragment(42, epoch),
new WorkerFragment(5),
new ProcessFragment(5),
new SequenceFragment(12),
];
/**
* @internal
*/
Options.defaultNetwork = (epoch, type) => [
new TimestampFragment(42, epoch),
new NetworkFragment(10, type),
new SequenceFragment(12),
];
/**
* @internal
*/
Options.defaultOptions = (options) => {
if (options?.preset === 'ipv4' || options?.preset === 'mac')
return _a.defaultNetwork(options.epoch, options.preset);
return _a.defaultWorkerProcess(options?.epoch);
};
//# sourceMappingURL=Options.js.map