Skip to content
This repository has been archived by the owner on Mar 22, 2024. It is now read-only.

Reason binding for date-fns/fp. Curried by default :3

License

Notifications You must be signed in to change notification settings

teamwalnut/reason-date-fns

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reason bindings for date-fns v2

This is a project with ReasonML bindings for date-fns v2. These bindings are using FP module of date-fns. So please refer the FP documentation. In short: all methods are curried and date value is always last argument (|>).

Tip: On date-fns documentation you can choose submodule in the top right corner and view documentation and function signatures just like you would use it in reason. Here is an example of FP submodule docs page.

Date-fns docs site submodule toggle

Simple example:

open ReasonDateFns;

Js.Date.make()
|> DateFns.addDays(2)
|> DateFns.addDays(-2)
|> DateFns.closestTo([|
     DateFns.parseISO("2019-08-21T13:00:03.058Z"),
     Js.Date.make(),
   |])
|> DateFns.lightFormat("YYYY-MM-DD");

Js.Date.make()
|> DateFns.formatWithOptions(
     DateFns.formatOptions(~locale=DateFns.Locales.ru, ()),
     "YYYY-MM-DD",
   );

Js.Date.make()
|> DateFns.addMinutes(10.)
|> DateFns.addSeconds(10.)
|> DateFns.addMilliseconds(1000)

Have a fun with FP 👨‍💻

Installation

Make sure that you need date-fns v2.

yarn add reason-date-fns

And add reason-date-fns to your bsconfig.json

{
  "bs-dependencies": [
    "reason-date-fns"
  ],
}

Differences from bs-date-fns

There are 2:

  1. This project is exporting to date-fns of v2
  2. And using FP submodule. So currying is enabled by default 😎

License

This project is under the terms of MIT license

About

Reason binding for date-fns/fp. Curried by default :3

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Reason 100.0%