Nectar of the Programming Masses

    dayjs-random

    1.0.0 • Public • Published

    dayjs-random

    This is a plugin for Day.js that allows you to generate random datetimes.

    • Get a random dayjs instance between two datetimes
    • Get a random dayjs instance that's coming up or recently occured
    • Get a random dayjs instance that's in the past or future

    Getting Started

    The following guide will help you install and use this plugin with Day.js

    Prerequisites

    Day.js installed

    Installation

    You can install via Yarn or npm

    yarn add dayjs-random
    npm install dayjs-random

    Usage Guide

    You will need to import the plugin and activate it via the Day.js .extend() function

    ES6

    import dayjs from 'dayjs'
    import dayjsRandom from 'dayjs-random'
     
    dayjs.extend(dayjsRandom)

    Node

    const dayjs = require('dayjs')
    const dayjsRandom = require('dayjs-random')
     
    dayjs.extend(dayjsRandom)

    between

    dayjs.between(Date1, Date2) Returns a date between Date1 and Date2.

    dayjs.between('2020-06-10', '2030-03-02').format('YYYY-MM-DD') 
    // returns 2026-08-27
     
    dayjs.between('2020-06-10T11:00:00+01:00', '2020-06-10T19:00:00+01:00').format()
    // returns 2020-06-10T15:52:59+01:00

    soon

    dayjs.soon(days, refDate) Returns a date sometime between now and N days in the future. If not provided, days will default to 1 and refDate will default to now.

    dayjs().format() // 2020-06-10T11:00:00+01:00
     
    dayjs.soon().format() // returns 2020-06-11T08:23:04+01:00
     

    recent

    dayjs.recent(days, refDate) Returns a date sometime between now and N days ago. If not provided, days will default to 1 and refDate will default to now.

    dayjs().format() // 2020-06-10T11:00:00+01:00
     
    dayjs.recent().format() // retruns 2020-06-09T22:39:59+01:00

    future

    dayjs.future(years, refDate) Returns a date sometime between now and N years in the future. If not provided, years will default to 1 and refDate will default to now.

    dayjs().format() // 2020-06-10T11:00:00+01:00
     
    dayjs.future().format() // returns 2020-07-06T12:41:59+01:00

    past

    dayjs.past(years, refDate) Returns a date sometime between now and N years ago. If not provided, years will default to 1 and refDate will default to now.

    dayjs().format() // 2020-06-10T11:00:00+01:00
     
    dayjs.past().format() // returns 2019-09-28T07:29:19+01:00

    Local Development and Contributing

    We are more than happy to accept PRs for bugs, improvements or new features. Developing your own changes locally is easy, you just need to clone the repo

    git clone git@github.com/FraserHamilton/dayjs-random
     
    cd dayjs-random

    and install the dependencies with either npm or yarn

    npm i
    yarn

    Tests can be ran with the test script

    npm run test
    yarn test

    Install

    npm i dayjs-random

    DownloadsWeekly Downloads

    448

    Version

    1.0.0

    License

    MIT

    Unpacked Size

    4.71 kB

    Total Files

    4

    Last publish

    Collaborators

    • fraserhamilton