@arcjet/duration
v1.3.1
Published
Arcjet utilities for parsing duration strings
Downloads
150,833
Readme
@arcjet/duration
Arcjet utilities for parsing duration strings.
What is this?
This is an internal utility that exists so our users can pass meaningful
duration strings such as 1h instead of having to manually calculate seconds
or milliseconds.
We turned the Go [ParseDuration][go-parser] into TypeScript so that we have
the exact same functionality in both languages.
When should I use this?
You should not use this but use one of the many alternatives such as
vercel/ms.
This package matches our current needs which are likely different from yours.
Install
This package is ESM only. Install with npm in Node.js:
npm install @arcjet/durationUse
import { parse } from "@arcjet/duration";
const seconds = parse("1h");
console.log(seconds); // prints 3600API
This package exports the identifier
parse.
There is no default export.
This package does not export TypeScript types.
parse(value)
Parses a duration into a number representing seconds while ensuring the value fits within an unsigned 32-bit integer.
If you pass a number, it is validated and returned as-is.
If you pass a string, it must be in the form of digits followed by a unit.
Supported units are s (seconds),
m (minutes),
h (hours),
and d (days).
Parameters
value(numberorstring) — the duration to parse
Returns
Parsed seconds (number).
Example
console.log(parse("1s")); // => 1
console.log(parse("1m")); // => 60
console.log(parse("1h")); // => 3600
console.log(parse("1d")); // => 86400License
Apache License, Version 2.0 © Arcjet Labs, Inc.
Derivative work based on time.ParseDuration from
golang/go licensed under BSD-3.0 © The Go Authors.
Our work ports to TypeScript.
