chrono-node 1.4.3 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -11,22 +11,24 @@
11
11
  "testURL": "http://localhost/"
12
12
  },
13
13
  "license": "MIT",
14
- "version": "1.4.3",
14
+ "version": "1.4.4",
15
15
  "directories": {
16
16
  "source": "./src",
17
17
  "test": "./test"
18
18
  },
19
- "main": "./src/chrono",
19
+ "main": "./dist/chrono.js",
20
20
  "devDependencies": {
21
- "browserify": "^14.3.0",
21
+ "@babel/core": "^7.8.4",
22
+ "@babel/preset-env": "^7.8.4",
23
+ "babel-loader": "^8.0.6",
22
24
  "coveralls": "^3.0.2",
23
25
  "jest": "^22.0.4",
24
- "minifyify": "^7.0.6"
26
+ "terser-webpack-plugin": "^2.3.4",
27
+ "webpack": "^4.41.5",
28
+ "webpack-cli": "^3.3.10"
25
29
  },
26
30
  "scripts": {
27
- "make-bundle": "browserify src/chrono.js -d --s chrono -o chrono.js",
28
- "make-minify": "browserify src/chrono.js -d --s chrono -d -p [minifyify --output chrono.map.json] -o chrono.min.js",
29
- "make": "npm run make-bundle & npm run make-minify",
31
+ "build": "webpack",
30
32
  "watch": "jest --watch",
31
33
  "test": "jest --coverage",
32
34
  "coveralls": "npm run test && cat coverage/lcov.info | coveralls"
@@ -8,10 +8,9 @@ var ParsedResult = require('../../result').ParsedResult;
8
8
 
9
9
  var PATTERN = new RegExp('(^|[^\\d/]\\s+|[^\\w\\s])' +
10
10
  '([0-9]|0[1-9]|1[012])/([0-9]{4})' +
11
- '([^\\d/]|$)', 'i');
11
+ '(?=[^\\d/]|$)', 'i');
12
12
 
13
13
  var OPENNING_GROUP = 1;
14
- var ENDING_GROUP = 4;
15
14
 
16
15
  var MONTH_GROUP = 2;
17
16
  var YEAR_GROUP = 3;
@@ -23,7 +22,7 @@ exports.Parser = function ENSlashMonthFormatParser(argument) {
23
22
  this.extract = function(text, ref, match, opt){
24
23
 
25
24
  var index = match.index + match[OPENNING_GROUP].length;
26
- var text = match[0].substr(match[OPENNING_GROUP].length, match[0].length - (1 + match[ENDING_GROUP].length)).trim();
25
+ var text = match[0].substr(match[OPENNING_GROUP].length, match[0].length).trim();
27
26
 
28
27
  var result = new ParsedResult({
29
28
  text: text,
@@ -111,3 +111,46 @@ test("Test - Month expression", function() {
111
111
  expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
112
112
  }
113
113
  });
114
+
115
+
116
+ test("Test - Month slash expression", function() {
117
+
118
+
119
+ var text = "9/2012";
120
+ var results = chrono.parse(text, new Date(2012,7,10));
121
+ expect(results.length).toBe(1);
122
+
123
+ var result = results[0];
124
+ if (result) {
125
+ expect(result.start).not.toBeNull();
126
+ expect(result.start.get('year')).toBe(2012);
127
+ expect(result.start.get('month')).toBe(9);
128
+
129
+ expect(result.index).toBe(0);
130
+ expect(result.text).toBe('9/2012');
131
+
132
+ var resultDate = result.start.date();
133
+ var expectDate = new Date(2012, 9-1, 1, 12);
134
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
135
+ }
136
+
137
+ var text = "09/2012";
138
+ var results = chrono.parse(text, new Date(2012,7,10));
139
+ expect(results.length).toBe(1);
140
+
141
+ var result = results[0];
142
+ if (result) {
143
+ expect(result.start).not.toBeNull();
144
+ expect(result.start.get('year')).toBe(2012);
145
+ expect(result.start.get('month')).toBe(9);
146
+
147
+ expect(result.index).toBe(0);
148
+ expect(result.text).toBe('09/2012');
149
+
150
+ var resultDate = result.start.date();
151
+ var expectDate = new Date(2012, 9-1, 1, 12);
152
+ expect(expectDate.getTime()).toBeCloseTo(resultDate.getTime())
153
+ }
154
+
155
+ });
156
+
@@ -0,0 +1,39 @@
1
+ const path = require('path');
2
+ const TerserPlugin = require('terser-webpack-plugin');
3
+
4
+ module.exports = {
5
+ mode: 'production',
6
+ entry: {
7
+ 'chrono': path.resolve(__dirname, 'src/chrono.js'),
8
+ 'chrono.min': path.resolve(__dirname, 'src/chrono.js')
9
+ },
10
+ output: {
11
+ path: path.resolve(__dirname, 'dist'),
12
+ filename: '[name].js',
13
+ library: 'chrono',
14
+ libraryTarget: 'umd',
15
+ globalObject: 'this'
16
+ },
17
+ module: {
18
+ rules: [
19
+ {
20
+ test: /\.m?js$/,
21
+ exclude: /(node_modules|bower_components)/,
22
+ use: {
23
+ loader: 'babel-loader',
24
+ options: {
25
+ presets: ['@babel/preset-env']
26
+ }
27
+ }
28
+ }
29
+ ]
30
+ },
31
+ devtool: 'source-map',
32
+ optimization: {
33
+ minimize: true,
34
+ minimizer: [new TerserPlugin({
35
+ include: /\.min\.js$/
36
+ })
37
+ ],
38
+ },
39
+ };
package/bower.json DELETED
@@ -1,24 +0,0 @@
1
- {
2
- "name": "chrono",
3
- "main": "chrono.js",
4
- "version": "1.3.10",
5
- "homepage": "https://github.com/wanasit/chrono",
6
- "authors": [
7
- "Wanasit Tanakitrungruang <berrysboy@gmail.com>"
8
- ],
9
- "description": "A natural language date parser in Javascript",
10
- "keywords": [
11
- "parser",
12
- "time",
13
- "npl",
14
- "chrono"
15
- ],
16
- "license": "MIT",
17
- "ignore": [
18
- "**/.*",
19
- "node_modules",
20
- "bower_components",
21
- "test-nodeunit",
22
- "test-qunit"
23
- ]
24
- }