https://github.com/nicompte/edtfy
Javascript date parser
https://github.com/nicompte/edtfy
date edtf javascript parser
Last synced: 8 months ago
JSON representation
Javascript date parser
- Host: GitHub
- URL: https://github.com/nicompte/edtfy
- Owner: nicompte
- License: mit
- Created: 2015-07-19T18:13:44.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2022-12-08T15:15:26.000Z (over 3 years ago)
- Last Synced: 2025-10-22T19:59:32.861Z (8 months ago)
- Topics: date, edtf, javascript, parser
- Language: JavaScript
- Homepage: https://edtfy.barbotte.net
- Size: 1.64 MB
- Stars: 10
- Watchers: 2
- Forks: 2
- Open Issues: 22
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# edtfy (bring your own pronunciation)
[](https://circleci.com/gh/nicompte/edtfy)
edtfy is a parser that transforms user input into the [edtf](http://www.loc.gov/standards/datetime/pre-submission.html) format.
## Install
```
npm install edtfy #npm
bower install edtfy #bower
```
## Usage
### parse
```js
edtfy = require('edtfy');
edtfy.locale('fr');
edtfy('29 mars 1988'); // 1988-03-29
```
### locale
`edtfy.locale(locale)`: define the locale
`edtfy.locale()`: retrieve the locale
## Compatibility
### Level 0
#### 5.1.1 Date
input|output
-----|------
2008 | 2008
december 1988 | 2008-12
02/03/1988 | 2001-02-03
#### 5.1.2 Date and Time
Not supported for now.
#### 5.1.3 Interval
input|output
-----|------
from 1964 to 2008 | 1964/2008
June 2004 - August 2008 | 2004-06/2008-08
2/1/2004 / 2/8/2005 | 2004-02-01/2008-02-08
02/01/2004-2005 | 2004-02-01/2005
from 2005 to June 2006 | 2005/2006-02
### Level 1
#### 5.2.1 Uncertain/Approximate
input|output
-----|------
1984? | 1984?
June 2004? | 2004-06?
June the 11th, 2004? | 2004-06-11?
around 1984 | 1984~
about 1984? | 1984?~
#### 5.2.2 Unspecified
input|output
-----|------
199u | 199u
1999-uu | 1999-uu
1999-01-uu | 1999-01-uu
1999-uu-uu | 1999-uu-uu
#### 5.2.3. Extended Interval (L1)
input|output
-----|------
from 06/01/2004 to unknown | 2004-06-01/unknown
from 01/01/2004 to open | 2004-01-01/open
from around 1984 to June 2004 | 1984~/2004-06
1984 - around June 2004 | 1984/2004-06~
1984? - ~2004? | 1984?/2004?~
#### 5.2.4 Year Exceeding Four Digits (L1)
input|output
-----|------
170000002 | y170000002
-170000002 | y-170000002
#### 5.2.5 Season
input|output
-----|------
Spring 2001 | 2001-21
### Level 2
#### 5.3.1 Partial Uncertain/Approximate
Not supported for now.
#### 5.3.2 Partial Unspecified
input|output
-----|------
12/25/156u | 156u-12-25
12/25/156uu | 15uu-12-25
12/uu/15uu | 15uu-12-uu
uu/25/1560 | 1560-uu-25
#### 5.3.3 One of a Set
The `..` feature is only supported of `before` and `after` for now.
input|output
-----|------
1667 or 1668 or 1670 | [1667,1668,1670]
Jan 1760 or Feb 1760 or December 1760 | [1760-01,1760-02,1760-12]
1667 or 12/1760 | [1667,1760-12]
before 1930 | [..,1930]
after march 2004 | [2004-03,..]
#### 5.3.4 Multiple Dates
The `..` feature is not supported for now.
input|output
-----|------
1667 and 1668 and 1670 | {1667,1668,1670}
1960 and December 1961 | {1960,1961-12}
#### 5.4.5 Masked Precision
input|output
-----|------
196x | 196x
19xx | 19xx
#### 5.3.6 Extended Interval (L2)
Not supported for now.
## License
MIT © [Nicolas Barbotte](http://barbotte.net)