date-and-time 3.1.0 → 3.2.0
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/README.md +15 -14
- package/date-and-time.js +35 -23
- package/date-and-time.min.js +1 -1
- package/esm/date-and-time.es.js +35 -23
- package/esm/date-and-time.es.min.js +1 -1
- package/esm/date-and-time.mjs +35 -23
- package/esm/plugin/timezone.es.js +4 -3
- package/esm/plugin/timezone.mjs +4 -3
- package/package.json +4 -4
- package/plugin/timezone.js +4 -3
- package/rollup.config.mjs +0 -356
package/README.md
CHANGED
|
@@ -25,16 +25,17 @@ npm i date-and-time
|
|
|
25
25
|
|
|
26
26
|
## Recent Changes
|
|
27
27
|
|
|
28
|
+
- 3.2.0
|
|
29
|
+
- Refactored `compile()`, `format()`, and `preparse()` slightly improved performance.
|
|
30
|
+
|
|
31
|
+
- 3.1.1
|
|
32
|
+
- Fixed an issue where `format()` could output incorrect UTC times in locales with daylight savings time.
|
|
33
|
+
- Refactored `formatTZ()` of `timezone` plugin.
|
|
34
|
+
|
|
28
35
|
- 3.1.0
|
|
29
36
|
- Improved accuracy of `parseTZ()` in `timezone` plugin.
|
|
30
37
|
- Organized some test modules.
|
|
31
38
|
|
|
32
|
-
- 3.0.3
|
|
33
|
-
- Fixed TypeScript types exports in `package.json`.
|
|
34
|
-
|
|
35
|
-
- 3.0.2
|
|
36
|
-
- Dropped the use of the logical OR assignment operator to support older environments.
|
|
37
|
-
|
|
38
39
|
## Usage
|
|
39
40
|
|
|
40
41
|
- ES Modules:
|
|
@@ -188,7 +189,7 @@ You can also use the following tokens by importing plugins. See [PLUGINS.md](./P
|
|
|
188
189
|
|
|
189
190
|
#### Note 1. Comments
|
|
190
191
|
|
|
191
|
-
|
|
192
|
+
Parts of the given format string enclosed in square brackets are considered comments and are output as is, regardless of whether they are tokens or not.
|
|
192
193
|
|
|
193
194
|
```javascript
|
|
194
195
|
date.format(new Date(), 'DD-[MM]-YYYY'); // => '02-MM-2015'
|
|
@@ -197,7 +198,7 @@ date.format(new Date(), '[DD-[MM]-YYYY]'); // => 'DD-[MM]-YYYY'
|
|
|
197
198
|
|
|
198
199
|
#### Note 2. Output as UTC
|
|
199
200
|
|
|
200
|
-
This function
|
|
201
|
+
This function outputs the date and time in the local time zone of the execution environment by default. If you want to output in UTC, set the UTC option (the third argument) to true. To output in any other time zone, you will need [a plugin](./PLUGINS.md).
|
|
201
202
|
|
|
202
203
|
```javascript
|
|
203
204
|
date.format(new Date(), 'hh:mm A [GMT]Z'); // => '11:14 PM GMT-0800'
|
|
@@ -269,7 +270,7 @@ You can also use the following tokens by importing plugins. See [PLUGINS.md](./P
|
|
|
269
270
|
|
|
270
271
|
#### Note 1. Invalid Date
|
|
271
272
|
|
|
272
|
-
If
|
|
273
|
+
If this function fails to parse, it will return `Invalid Date`. Notice that the `Invalid Date` is a Date object, not `NaN` or `null`. You can tell whether the Date object is invalid as follows:
|
|
273
274
|
|
|
274
275
|
```javascript
|
|
275
276
|
const today = date.parse('Jam 1 2017', 'MMM D YYYY');
|
|
@@ -281,7 +282,7 @@ if (isNaN(today.getTime())) {
|
|
|
281
282
|
|
|
282
283
|
#### Note 2. Input as UTC
|
|
283
284
|
|
|
284
|
-
This function
|
|
285
|
+
This function uses the local time zone offset value of the execution environment by default if the given string does not contain a time zone offset value. To make it use UTC instead, set the UTC option (the third argument) to true. If you want it to use any other time zone, you will need [a plugin](./PLUGINS.md).
|
|
285
286
|
|
|
286
287
|
```javascript
|
|
287
288
|
date.parse('11:14:05 PM', 'hh:mm:ss A'); // => Jan 1 1970 23:14:05 GMT-0800
|
|
@@ -318,9 +319,9 @@ date.parse('11:14:05', 'hh:mm:ss'); // => Jan 1 1970 11:14:05 GMT-0800
|
|
|
318
319
|
date.parse('11:14:05 PM', 'hh:mm:ss A'); // => Jan 1 1970 23:14:05 GMT-0800
|
|
319
320
|
```
|
|
320
321
|
|
|
321
|
-
#### Note 6. Token
|
|
322
|
+
#### Note 6. Token invalidation
|
|
322
323
|
|
|
323
|
-
|
|
324
|
+
Any part of the given format string that you do not want to be recognized as a token should be enclosed in square brackets. They are considered comments and will not be parsed.
|
|
324
325
|
|
|
325
326
|
```javascript
|
|
326
327
|
date.parse('12 hours 34 minutes', 'HH hours mm minutes'); // => Invalid Date
|
|
@@ -329,7 +330,7 @@ date.parse('12 hours 34 minutes', 'HH [hours] mm [minutes]'); // => Jan 1 1970
|
|
|
329
330
|
|
|
330
331
|
#### Note 7. Wildcard
|
|
331
332
|
|
|
332
|
-
|
|
333
|
+
Whitespace acts as a wildcard token. This token will not parse the corresponding parts of the date and time strings. This behavior is similar to enclosing part of a format string in square brackets (Token invalidation), but with the flexibility that the contents do not have to match, as long as the number of characters in the corresponding parts match.
|
|
333
334
|
|
|
334
335
|
```javascript
|
|
335
336
|
// This will be an error.
|
|
@@ -340,7 +341,7 @@ date.parse('2015/01/02 11:14:05', 'YYYY/MM/DD '); // => Jan 2 2015 00:
|
|
|
340
341
|
|
|
341
342
|
#### Note 8. Ellipsis
|
|
342
343
|
|
|
343
|
-
|
|
344
|
+
`...` token ignores subsequent corresponding date and time strings. Use this token only at the end of a format string. The above example can be also written like this:
|
|
344
345
|
|
|
345
346
|
```javascript
|
|
346
347
|
date.parse('2015/01/02 11:14:05', 'YYYY/MM/DD...'); // => Jan 2 2015 00:00:00 GMT-0800
|
package/date-and-time.js
CHANGED
|
@@ -151,12 +151,7 @@
|
|
|
151
151
|
* @returns {Array.<string>} A compiled object
|
|
152
152
|
*/
|
|
153
153
|
proto.compile = function (formatString) {
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
while ((keys = re.exec(formatString))) {
|
|
157
|
-
pattern[pattern.length] = keys[0];
|
|
158
|
-
}
|
|
159
|
-
return pattern;
|
|
154
|
+
return [formatString].concat(formatString.match(/\[(?:[^[\]]|\[[^[\]]*])*]|([A-Za-z])\1*|\.{3}|./g) || []);
|
|
160
155
|
};
|
|
161
156
|
|
|
162
157
|
/**
|
|
@@ -168,14 +163,29 @@
|
|
|
168
163
|
*/
|
|
169
164
|
proto.format = function (dateObj, arg, utc) {
|
|
170
165
|
var ctx = this || date, pattern = typeof arg === 'string' ? ctx.compile(arg) : arg,
|
|
171
|
-
|
|
172
|
-
d =
|
|
173
|
-
|
|
166
|
+
formatter = ctx._formatter,
|
|
167
|
+
d = (function () {
|
|
168
|
+
if (utc) {
|
|
169
|
+
var u = new Date(dateObj.getTime());
|
|
170
|
+
|
|
171
|
+
u.getFullYear = u.getUTCFullYear;
|
|
172
|
+
u.getMonth = u.getUTCMonth;
|
|
173
|
+
u.getDate = u.getUTCDate;
|
|
174
|
+
u.getHours = u.getUTCHours;
|
|
175
|
+
u.getMinutes = u.getUTCMinutes;
|
|
176
|
+
u.getSeconds = u.getUTCSeconds;
|
|
177
|
+
u.getMilliseconds = u.getUTCMilliseconds;
|
|
178
|
+
u.getDay = u.getUTCDay;
|
|
179
|
+
u.getTimezoneOffset = function () { return 0; };
|
|
180
|
+
return u;
|
|
181
|
+
}
|
|
182
|
+
return dateObj;
|
|
183
|
+
}()),
|
|
184
|
+
comment = /^\[(.*)\]$/, str = '';
|
|
174
185
|
|
|
175
|
-
d.getTimezoneOffset = function () { return utc ? 0 : offset; };
|
|
176
186
|
for (var i = 1, len = pattern.length, token; i < len; i++) {
|
|
177
187
|
token = pattern[i];
|
|
178
|
-
str += formatter[token] ? formatter.post(formatter[token](d, pattern[0])) : token.replace(
|
|
188
|
+
str += formatter[token] ? formatter.post(formatter[token](d, pattern[0])) : token.replace(comment, '$1');
|
|
179
189
|
}
|
|
180
190
|
return str;
|
|
181
191
|
};
|
|
@@ -189,33 +199,35 @@
|
|
|
189
199
|
*/
|
|
190
200
|
proto.preparse = function (dateString, arg) {
|
|
191
201
|
var ctx = this || date, pattern = typeof arg === 'string' ? ctx.compile(arg) : arg,
|
|
202
|
+
parser = ctx._parser,
|
|
192
203
|
dt = { Y: 1970, M: 1, D: 1, H: 0, A: 0, h: 0, m: 0, s: 0, S: 0, Z: 0, _index: 0, _length: 0, _match: 0 },
|
|
193
|
-
comment =
|
|
204
|
+
wildcard = ' ', comment = /^\[(.*)\]$/, ellipsis = '...';
|
|
194
205
|
|
|
195
206
|
dateString = parser.pre(dateString);
|
|
196
|
-
for (var i = 1, len = pattern.length, token, result; i < len; i++) {
|
|
207
|
+
for (var i = 1, len = pattern.length, token, str, result; i < len; i++) {
|
|
197
208
|
token = pattern[i];
|
|
209
|
+
str = dateString.slice(dt._index);
|
|
210
|
+
|
|
198
211
|
if (parser[token]) {
|
|
199
|
-
result = parser[token](
|
|
212
|
+
result = parser[token](str, pattern[0]);
|
|
200
213
|
if (!result.length) {
|
|
201
|
-
|
|
214
|
+
break;
|
|
202
215
|
}
|
|
203
|
-
offset += result.length;
|
|
204
216
|
dt[result.token || token.charAt(0)] = result.value;
|
|
217
|
+
dt._index += result.length;
|
|
205
218
|
dt._match++;
|
|
206
|
-
} else if (token ===
|
|
207
|
-
|
|
208
|
-
} else if (comment.test(token) && !
|
|
209
|
-
|
|
210
|
-
} else if (token ===
|
|
211
|
-
|
|
219
|
+
} else if (token === str.charAt(0) || token === wildcard) {
|
|
220
|
+
dt._index++;
|
|
221
|
+
} else if (comment.test(token) && !str.indexOf(token.replace(comment, '$1'))) {
|
|
222
|
+
dt._index += token.length - 2;
|
|
223
|
+
} else if (token === ellipsis) {
|
|
224
|
+
dt._index = dateString.length;
|
|
212
225
|
break;
|
|
213
226
|
} else {
|
|
214
227
|
break;
|
|
215
228
|
}
|
|
216
229
|
}
|
|
217
230
|
dt.H = dt.H || parser.h12(dt.h, dt.A);
|
|
218
|
-
dt._index = offset;
|
|
219
231
|
dt._length = dateString.length;
|
|
220
232
|
return dt;
|
|
221
233
|
};
|
package/date-and-time.min.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).date=t()}(this,(function(){"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* @preserve date-and-time (c) KNOWLEDGECODE | MIT
|
|
4
|
-
*/var e,t,n={},r={},i="en",u={MMMM:["January","February","March","April","May","June","July","August","September","October","November","December"],MMM:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dd:["Su","Mo","Tu","We","Th","Fr","Sa"],A:["AM","PM"]},
|
|
4
|
+
*/var e,t,n={},r={},i="en",u={MMMM:["January","February","March","April","May","June","July","August","September","October","November","December"],MMM:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dd:["Su","Mo","Tu","We","Th","Fr","Sa"],A:["AM","PM"]},o={YYYY:function(e){return("000"+e.getFullYear()).slice(-4)},YY:function(e){return("0"+e.getFullYear()).slice(-2)},Y:function(e){return""+e.getFullYear()},MMMM:function(e){return this.res.MMMM[e.getMonth()]},MMM:function(e){return this.res.MMM[e.getMonth()]},MM:function(e){return("0"+(e.getMonth()+1)).slice(-2)},M:function(e){return""+(e.getMonth()+1)},DD:function(e){return("0"+e.getDate()).slice(-2)},D:function(e){return""+e.getDate()},HH:function(e){return("0"+e.getHours()).slice(-2)},H:function(e){return""+e.getHours()},A:function(e){return this.res.A[e.getHours()>11|0]},hh:function(e){return("0"+(e.getHours()%12||12)).slice(-2)},h:function(e){return""+(e.getHours()%12||12)},mm:function(e){return("0"+e.getMinutes()).slice(-2)},m:function(e){return""+e.getMinutes()},ss:function(e){return("0"+e.getSeconds()).slice(-2)},s:function(e){return""+e.getSeconds()},SSS:function(e){return("00"+e.getMilliseconds()).slice(-3)},SS:function(e){return("0"+(e.getMilliseconds()/10|0)).slice(-2)},S:function(e){return""+(e.getMilliseconds()/100|0)},dddd:function(e){return this.res.dddd[e.getDay()]},ddd:function(e){return this.res.ddd[e.getDay()]},dd:function(e){return this.res.dd[e.getDay()]},Z:function(e){var t=e.getTimezoneOffset()/.6|0;return(t>0?"-":"+")+("000"+Math.abs(t-(t%100*.4|0))).slice(-4)},ZZ:function(e){var t=e.getTimezoneOffset(),n=Math.abs(t);return(t>0?"-":"+")+("0"+(n/60|0)).slice(-2)+":"+("0"+n%60).slice(-2)},post:function(e){return e},res:u},s={YYYY:function(e){return this.exec(/^\d{4}/,e)},Y:function(e){return this.exec(/^\d{1,4}/,e)},MMMM:function(e){var t=this.find(this.res.MMMM,e);return t.value++,t},MMM:function(e){var t=this.find(this.res.MMM,e);return t.value++,t},MM:function(e){return this.exec(/^\d\d/,e)},M:function(e){return this.exec(/^\d\d?/,e)},DD:function(e){return this.exec(/^\d\d/,e)},D:function(e){return this.exec(/^\d\d?/,e)},HH:function(e){return this.exec(/^\d\d/,e)},H:function(e){return this.exec(/^\d\d?/,e)},A:function(e){return this.find(this.res.A,e)},hh:function(e){return this.exec(/^\d\d/,e)},h:function(e){return this.exec(/^\d\d?/,e)},mm:function(e){return this.exec(/^\d\d/,e)},m:function(e){return this.exec(/^\d\d?/,e)},ss:function(e){return this.exec(/^\d\d/,e)},s:function(e){return this.exec(/^\d\d?/,e)},SSS:function(e){return this.exec(/^\d{1,3}/,e)},SS:function(e){var t=this.exec(/^\d\d?/,e);return t.value*=10,t},S:function(e){var t=this.exec(/^\d/,e);return t.value*=100,t},Z:function(e){var t=this.exec(/^[+-]\d{2}[0-5]\d/,e);return t.value=-60*(t.value/100|0)-t.value%100,t},ZZ:function(e){var t=/^([+-])(\d{2}):([0-5]\d)/.exec(e)||["","","",""];return{value:0-(60*(t[1]+t[2]|0)+(t[1]+t[3]|0)),length:t[0].length}},h12:function(e,t){return(12===e?0:e)+12*t},exec:function(e,t){var n=(e.exec(t)||[""])[0];return{value:0|n,length:n.length}},find:function(e,t){for(var n,r=-1,i=0,u=0,o=e.length;u<o;u++)n=e[u],!t.indexOf(n)&&n.length>i&&(r=u,i=n.length);return{value:r,length:i}},pre:function(e){return e},res:u},c=function(e,t,n,r){var i,u={};for(i in e)u[i]=e[i];for(i in t||{})!!n^!!u[i]||(u[i]=t[i]);return r&&(u.res=r),u},a={_formatter:o,_parser:s};return a.compile=function(e){return[e].concat(e.match(/\[(?:[^[\]]|\[[^[\]]*])*]|([A-Za-z])\1*|\.{3}|./g)||[])},a.format=function(e,n,r){for(var i,u=this||t,o="string"==typeof n?u.compile(n):n,s=u._formatter,c=function(){if(r){var t=new Date(e.getTime());return t.getFullYear=t.getUTCFullYear,t.getMonth=t.getUTCMonth,t.getDate=t.getUTCDate,t.getHours=t.getUTCHours,t.getMinutes=t.getUTCMinutes,t.getSeconds=t.getUTCSeconds,t.getMilliseconds=t.getUTCMilliseconds,t.getDay=t.getUTCDay,t.getTimezoneOffset=function(){return 0},t}return e}(),a=/^\[(.*)\]$/,d="",f=1,l=o.length;f<l;f++)d+=s[i=o[f]]?s.post(s[i](c,o[0])):i.replace(a,"$1");return d},a.preparse=function(e,n){var r=this||t,i="string"==typeof n?r.compile(n):n,u=r._parser,o={Y:1970,M:1,D:1,H:0,A:0,h:0,m:0,s:0,S:0,Z:0,_index:0,_length:0,_match:0},s=/^\[(.*)\]$/;e=u.pre(e);for(var c,a,d,f=1,l=i.length;f<l;f++)if(c=i[f],a=e.slice(o._index),u[c]){if(!(d=u[c](a,i[0])).length)break;o[d.token||c.charAt(0)]=d.value,o._index+=d.length,o._match++}else if(c===a.charAt(0)||" "===c)o._index++;else{if(!s.test(c)||a.indexOf(c.replace(s,"$1"))){if("..."===c){o._index=e.length;break}break}o._index+=c.length-2}return o.H=o.H||u.h12(o.h,o.A),o._length=e.length,o},a.parse=function(e,n,r){var i=this||t,u="string"==typeof n?i.compile(n):n,o=i.preparse(e,u);return i.isValid(o)?(o.M-=o.Y<100?22801:1,r||~i._parser.find(u,"ZZ").value?new Date(Date.UTC(o.Y,o.M,o.D,o.H,o.m+o.Z,o.s,o.S)):new Date(o.Y,o.M,o.D,o.H,o.m,o.s,o.S)):new Date(NaN)},a.isValid=function(e,n){var r=this||t,i="string"==typeof e?r.preparse(e,n):e,u=[31,28+r.isLeapYear(i.Y)|0,31,30,31,30,31,31,30,31,30,31][i.M-1];return!(i._index<1||i._length<1||i._index-i._length||i._match<1||i.Y<1||i.Y>9999||i.M<1||i.M>12||i.D<1||i.D>u||i.H<0||i.H>23||i.m<0||i.m>59||i.s<0||i.s>59||i.S<0||i.S>999||i.Z<-840||i.Z>720)},a.transform=function(e,n,r,i){const u=this||t;return u.format(u.parse(e,n),r,i)},a.addYears=function(e,n,r){return(this||t).addMonths(e,12*n,r)},a.addMonths=function(e,n,r){var i=new Date(e.getTime());if(r){if(i.setUTCMonth(i.getUTCMonth()+n),i.getUTCDate()<e.getUTCDate())return(this||t).addDays(i,-i.getUTCDate(),r)}else if(i.setMonth(i.getMonth()+n),i.getDate()<e.getDate())return(this||t).addDays(i,-i.getDate(),r);return i},a.addDays=function(e,n,r){return(this||t).addHours(e,24*n,r)},a.addHours=function(e,n,r){return(this||t).addMinutes(e,60*n,r)},a.addMinutes=function(e,n,r){return(this||t).addSeconds(e,60*n,r)},a.addSeconds=function(e,n,r){return(this||t).addMilliseconds(e,1e3*n,r)},a.addMilliseconds=function(e,t,n){var r=new Date(e.getTime());return n?r.setUTCMilliseconds(r.getUTCMilliseconds()+t):r.setMilliseconds(r.getMilliseconds()+t),r},a.subtract=function(e,t){var n=e.getTime()-t.getTime();return{toMilliseconds:function(){return n},toSeconds:function(){return n/1e3},toMinutes:function(){return n/6e4},toHours:function(){return n/36e5},toDays:function(){return n/864e5}}},a.isLeapYear=function(e){return!((e%4||!(e%100))&&e%400)},a.isSameDay=function(e,t){return e.toDateString()===t.toDateString()},a.locale=function(e,t){n[e]||(n[e]=t)},a.plugin=function(e,t){r[e]||(r[e]=t)},e=c(a),(t=c(a)).locale=function(d){var f="function"==typeof d?d:t.locale[d];if(!f)return i;i=f(a);var l=n[i]||{},h=c(u,l.res,!0),g=c(o,l.formatter,!0,h),M=c(s,l.parser,!0,h);for(var p in t._formatter=e._formatter=g,t._parser=e._parser=M,r)t.extend(r[p]);return i},t.extend=function(e){var n=c(t._parser.res,e.res),r=e.extender||{};for(var i in t._formatter=c(t._formatter,e.formatter,!1,n),t._parser=c(t._parser,e.parser,!1,n),r)t[i]||(t[i]=r[i])},t.plugin=function(n){var i="function"==typeof n?n:t.plugin[n];i&&t.extend(r[i(a,e)]||{})},t}));
|
package/esm/date-and-time.es.js
CHANGED
|
@@ -145,12 +145,7 @@ var locales = {},
|
|
|
145
145
|
* @returns {Array.<string>} A compiled object
|
|
146
146
|
*/
|
|
147
147
|
proto.compile = function (formatString) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
while ((keys = re.exec(formatString))) {
|
|
151
|
-
pattern[pattern.length] = keys[0];
|
|
152
|
-
}
|
|
153
|
-
return pattern;
|
|
148
|
+
return [formatString].concat(formatString.match(/\[(?:[^[\]]|\[[^[\]]*])*]|([A-Za-z])\1*|\.{3}|./g) || []);
|
|
154
149
|
};
|
|
155
150
|
|
|
156
151
|
/**
|
|
@@ -162,14 +157,29 @@ proto.compile = function (formatString) {
|
|
|
162
157
|
*/
|
|
163
158
|
proto.format = function (dateObj, arg, utc) {
|
|
164
159
|
var ctx = this || date, pattern = typeof arg === 'string' ? ctx.compile(arg) : arg,
|
|
165
|
-
|
|
166
|
-
d =
|
|
167
|
-
|
|
160
|
+
formatter = ctx._formatter,
|
|
161
|
+
d = (function () {
|
|
162
|
+
if (utc) {
|
|
163
|
+
var u = new Date(dateObj.getTime());
|
|
164
|
+
|
|
165
|
+
u.getFullYear = u.getUTCFullYear;
|
|
166
|
+
u.getMonth = u.getUTCMonth;
|
|
167
|
+
u.getDate = u.getUTCDate;
|
|
168
|
+
u.getHours = u.getUTCHours;
|
|
169
|
+
u.getMinutes = u.getUTCMinutes;
|
|
170
|
+
u.getSeconds = u.getUTCSeconds;
|
|
171
|
+
u.getMilliseconds = u.getUTCMilliseconds;
|
|
172
|
+
u.getDay = u.getUTCDay;
|
|
173
|
+
u.getTimezoneOffset = function () { return 0; };
|
|
174
|
+
return u;
|
|
175
|
+
}
|
|
176
|
+
return dateObj;
|
|
177
|
+
}()),
|
|
178
|
+
comment = /^\[(.*)\]$/, str = '';
|
|
168
179
|
|
|
169
|
-
d.getTimezoneOffset = function () { return utc ? 0 : offset; };
|
|
170
180
|
for (var i = 1, len = pattern.length, token; i < len; i++) {
|
|
171
181
|
token = pattern[i];
|
|
172
|
-
str += formatter[token] ? formatter.post(formatter[token](d, pattern[0])) : token.replace(
|
|
182
|
+
str += formatter[token] ? formatter.post(formatter[token](d, pattern[0])) : token.replace(comment, '$1');
|
|
173
183
|
}
|
|
174
184
|
return str;
|
|
175
185
|
};
|
|
@@ -183,33 +193,35 @@ proto.format = function (dateObj, arg, utc) {
|
|
|
183
193
|
*/
|
|
184
194
|
proto.preparse = function (dateString, arg) {
|
|
185
195
|
var ctx = this || date, pattern = typeof arg === 'string' ? ctx.compile(arg) : arg,
|
|
196
|
+
parser = ctx._parser,
|
|
186
197
|
dt = { Y: 1970, M: 1, D: 1, H: 0, A: 0, h: 0, m: 0, s: 0, S: 0, Z: 0, _index: 0, _length: 0, _match: 0 },
|
|
187
|
-
comment =
|
|
198
|
+
wildcard = ' ', comment = /^\[(.*)\]$/, ellipsis = '...';
|
|
188
199
|
|
|
189
200
|
dateString = parser.pre(dateString);
|
|
190
|
-
for (var i = 1, len = pattern.length, token, result; i < len; i++) {
|
|
201
|
+
for (var i = 1, len = pattern.length, token, str, result; i < len; i++) {
|
|
191
202
|
token = pattern[i];
|
|
203
|
+
str = dateString.slice(dt._index);
|
|
204
|
+
|
|
192
205
|
if (parser[token]) {
|
|
193
|
-
result = parser[token](
|
|
206
|
+
result = parser[token](str, pattern[0]);
|
|
194
207
|
if (!result.length) {
|
|
195
|
-
|
|
208
|
+
break;
|
|
196
209
|
}
|
|
197
|
-
offset += result.length;
|
|
198
210
|
dt[result.token || token.charAt(0)] = result.value;
|
|
211
|
+
dt._index += result.length;
|
|
199
212
|
dt._match++;
|
|
200
|
-
} else if (token ===
|
|
201
|
-
|
|
202
|
-
} else if (comment.test(token) && !
|
|
203
|
-
|
|
204
|
-
} else if (token ===
|
|
205
|
-
|
|
213
|
+
} else if (token === str.charAt(0) || token === wildcard) {
|
|
214
|
+
dt._index++;
|
|
215
|
+
} else if (comment.test(token) && !str.indexOf(token.replace(comment, '$1'))) {
|
|
216
|
+
dt._index += token.length - 2;
|
|
217
|
+
} else if (token === ellipsis) {
|
|
218
|
+
dt._index = dateString.length;
|
|
206
219
|
break;
|
|
207
220
|
} else {
|
|
208
221
|
break;
|
|
209
222
|
}
|
|
210
223
|
}
|
|
211
224
|
dt.H = dt.H || parser.h12(dt.h, dt.A);
|
|
212
|
-
dt._index = offset;
|
|
213
225
|
dt._length = dateString.length;
|
|
214
226
|
return dt;
|
|
215
227
|
};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* @preserve date-and-time (c) KNOWLEDGECODE | MIT
|
|
3
3
|
*/
|
|
4
|
-
var e,t,n={},r={},i="en",u={MMMM:["January","February","March","April","May","June","July","August","September","October","November","December"],MMM:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dd:["Su","Mo","Tu","We","Th","Fr","Sa"],A:["AM","PM"]},s={YYYY:function(e){return("000"+e.getFullYear()).slice(-4)},YY:function(e){return("0"+e.getFullYear()).slice(-2)},Y:function(e){return""+e.getFullYear()},MMMM:function(e){return this.res.MMMM[e.getMonth()]},MMM:function(e){return this.res.MMM[e.getMonth()]},MM:function(e){return("0"+(e.getMonth()+1)).slice(-2)},M:function(e){return""+(e.getMonth()+1)},DD:function(e){return("0"+e.getDate()).slice(-2)},D:function(e){return""+e.getDate()},HH:function(e){return("0"+e.getHours()).slice(-2)},H:function(e){return""+e.getHours()},A:function(e){return this.res.A[e.getHours()>11|0]},hh:function(e){return("0"+(e.getHours()%12||12)).slice(-2)},h:function(e){return""+(e.getHours()%12||12)},mm:function(e){return("0"+e.getMinutes()).slice(-2)},m:function(e){return""+e.getMinutes()},ss:function(e){return("0"+e.getSeconds()).slice(-2)},s:function(e){return""+e.getSeconds()},SSS:function(e){return("00"+e.getMilliseconds()).slice(-3)},SS:function(e){return("0"+(e.getMilliseconds()/10|0)).slice(-2)},S:function(e){return""+(e.getMilliseconds()/100|0)},dddd:function(e){return this.res.dddd[e.getDay()]},ddd:function(e){return this.res.ddd[e.getDay()]},dd:function(e){return this.res.dd[e.getDay()]},Z:function(e){var t=e.getTimezoneOffset()/.6|0;return(t>0?"-":"+")+("000"+Math.abs(t-(t%100*.4|0))).slice(-4)},ZZ:function(e){var t=e.getTimezoneOffset(),n=Math.abs(t);return(t>0?"-":"+")+("0"+(n/60|0)).slice(-2)+":"+("0"+n%60).slice(-2)},post:function(e){return e},res:u},o={YYYY:function(e){return this.exec(/^\d{4}/,e)},Y:function(e){return this.exec(/^\d{1,4}/,e)},MMMM:function(e){var t=this.find(this.res.MMMM,e);return t.value++,t},MMM:function(e){var t=this.find(this.res.MMM,e);return t.value++,t},MM:function(e){return this.exec(/^\d\d/,e)},M:function(e){return this.exec(/^\d\d?/,e)},DD:function(e){return this.exec(/^\d\d/,e)},D:function(e){return this.exec(/^\d\d?/,e)},HH:function(e){return this.exec(/^\d\d/,e)},H:function(e){return this.exec(/^\d\d?/,e)},A:function(e){return this.find(this.res.A,e)},hh:function(e){return this.exec(/^\d\d/,e)},h:function(e){return this.exec(/^\d\d?/,e)},mm:function(e){return this.exec(/^\d\d/,e)},m:function(e){return this.exec(/^\d\d?/,e)},ss:function(e){return this.exec(/^\d\d/,e)},s:function(e){return this.exec(/^\d\d?/,e)},SSS:function(e){return this.exec(/^\d{1,3}/,e)},SS:function(e){var t=this.exec(/^\d\d?/,e);return t.value*=10,t},S:function(e){var t=this.exec(/^\d/,e);return t.value*=100,t},Z:function(e){var t=this.exec(/^[+-]\d{2}[0-5]\d/,e);return t.value=-60*(t.value/100|0)-t.value%100,t},ZZ:function(e){var t=/^([+-])(\d{2}):([0-5]\d)/.exec(e)||["","","",""];return{value:0-(60*(t[1]+t[2]|0)+(t[1]+t[3]|0)),length:t[0].length}},h12:function(e,t){return(12===e?0:e)+12*t},exec:function(e,t){var n=(e.exec(t)||[""])[0];return{value:0|n,length:n.length}},find:function(e,t){for(var n,r=-1,i=0,u=0,s=e.length;u<s;u++)n=e[u],!t.indexOf(n)&&n.length>i&&(r=u,i=n.length);return{value:r,length:i}},pre:function(e){return e},res:u},a=function(e,t,n,r){var i,u={};for(i in e)u[i]=e[i];for(i in t||{})!!n^!!u[i]||(u[i]=t[i]);return r&&(u.res=r),u},c={_formatter:s,_parser:o};c.compile=function(e){
|
|
4
|
+
var e,t,n={},r={},i="en",u={MMMM:["January","February","March","April","May","June","July","August","September","October","November","December"],MMM:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],dd:["Su","Mo","Tu","We","Th","Fr","Sa"],A:["AM","PM"]},s={YYYY:function(e){return("000"+e.getFullYear()).slice(-4)},YY:function(e){return("0"+e.getFullYear()).slice(-2)},Y:function(e){return""+e.getFullYear()},MMMM:function(e){return this.res.MMMM[e.getMonth()]},MMM:function(e){return this.res.MMM[e.getMonth()]},MM:function(e){return("0"+(e.getMonth()+1)).slice(-2)},M:function(e){return""+(e.getMonth()+1)},DD:function(e){return("0"+e.getDate()).slice(-2)},D:function(e){return""+e.getDate()},HH:function(e){return("0"+e.getHours()).slice(-2)},H:function(e){return""+e.getHours()},A:function(e){return this.res.A[e.getHours()>11|0]},hh:function(e){return("0"+(e.getHours()%12||12)).slice(-2)},h:function(e){return""+(e.getHours()%12||12)},mm:function(e){return("0"+e.getMinutes()).slice(-2)},m:function(e){return""+e.getMinutes()},ss:function(e){return("0"+e.getSeconds()).slice(-2)},s:function(e){return""+e.getSeconds()},SSS:function(e){return("00"+e.getMilliseconds()).slice(-3)},SS:function(e){return("0"+(e.getMilliseconds()/10|0)).slice(-2)},S:function(e){return""+(e.getMilliseconds()/100|0)},dddd:function(e){return this.res.dddd[e.getDay()]},ddd:function(e){return this.res.ddd[e.getDay()]},dd:function(e){return this.res.dd[e.getDay()]},Z:function(e){var t=e.getTimezoneOffset()/.6|0;return(t>0?"-":"+")+("000"+Math.abs(t-(t%100*.4|0))).slice(-4)},ZZ:function(e){var t=e.getTimezoneOffset(),n=Math.abs(t);return(t>0?"-":"+")+("0"+(n/60|0)).slice(-2)+":"+("0"+n%60).slice(-2)},post:function(e){return e},res:u},o={YYYY:function(e){return this.exec(/^\d{4}/,e)},Y:function(e){return this.exec(/^\d{1,4}/,e)},MMMM:function(e){var t=this.find(this.res.MMMM,e);return t.value++,t},MMM:function(e){var t=this.find(this.res.MMM,e);return t.value++,t},MM:function(e){return this.exec(/^\d\d/,e)},M:function(e){return this.exec(/^\d\d?/,e)},DD:function(e){return this.exec(/^\d\d/,e)},D:function(e){return this.exec(/^\d\d?/,e)},HH:function(e){return this.exec(/^\d\d/,e)},H:function(e){return this.exec(/^\d\d?/,e)},A:function(e){return this.find(this.res.A,e)},hh:function(e){return this.exec(/^\d\d/,e)},h:function(e){return this.exec(/^\d\d?/,e)},mm:function(e){return this.exec(/^\d\d/,e)},m:function(e){return this.exec(/^\d\d?/,e)},ss:function(e){return this.exec(/^\d\d/,e)},s:function(e){return this.exec(/^\d\d?/,e)},SSS:function(e){return this.exec(/^\d{1,3}/,e)},SS:function(e){var t=this.exec(/^\d\d?/,e);return t.value*=10,t},S:function(e){var t=this.exec(/^\d/,e);return t.value*=100,t},Z:function(e){var t=this.exec(/^[+-]\d{2}[0-5]\d/,e);return t.value=-60*(t.value/100|0)-t.value%100,t},ZZ:function(e){var t=/^([+-])(\d{2}):([0-5]\d)/.exec(e)||["","","",""];return{value:0-(60*(t[1]+t[2]|0)+(t[1]+t[3]|0)),length:t[0].length}},h12:function(e,t){return(12===e?0:e)+12*t},exec:function(e,t){var n=(e.exec(t)||[""])[0];return{value:0|n,length:n.length}},find:function(e,t){for(var n,r=-1,i=0,u=0,s=e.length;u<s;u++)n=e[u],!t.indexOf(n)&&n.length>i&&(r=u,i=n.length);return{value:r,length:i}},pre:function(e){return e},res:u},a=function(e,t,n,r){var i,u={};for(i in e)u[i]=e[i];for(i in t||{})!!n^!!u[i]||(u[i]=t[i]);return r&&(u.res=r),u},c={_formatter:s,_parser:o};c.compile=function(e){return[e].concat(e.match(/\[(?:[^[\]]|\[[^[\]]*])*]|([A-Za-z])\1*|\.{3}|./g)||[])},c.format=function(e,n,r){for(var i,u=this||t,s="string"==typeof n?u.compile(n):n,o=u._formatter,a=function(){if(r){var t=new Date(e.getTime());return t.getFullYear=t.getUTCFullYear,t.getMonth=t.getUTCMonth,t.getDate=t.getUTCDate,t.getHours=t.getUTCHours,t.getMinutes=t.getUTCMinutes,t.getSeconds=t.getUTCSeconds,t.getMilliseconds=t.getUTCMilliseconds,t.getDay=t.getUTCDay,t.getTimezoneOffset=function(){return 0},t}return e}(),c=/^\[(.*)\]$/,d="",f=1,l=s.length;f<l;f++)d+=o[i=s[f]]?o.post(o[i](a,s[0])):i.replace(c,"$1");return d},c.preparse=function(e,n){var r=this||t,i="string"==typeof n?r.compile(n):n,u=r._parser,s={Y:1970,M:1,D:1,H:0,A:0,h:0,m:0,s:0,S:0,Z:0,_index:0,_length:0,_match:0},o=/^\[(.*)\]$/;e=u.pre(e);for(var a,c,d,f=1,l=i.length;f<l;f++)if(a=i[f],c=e.slice(s._index),u[a]){if(!(d=u[a](c,i[0])).length)break;s[d.token||a.charAt(0)]=d.value,s._index+=d.length,s._match++}else if(a===c.charAt(0)||" "===a)s._index++;else{if(!o.test(a)||c.indexOf(a.replace(o,"$1"))){if("..."===a){s._index=e.length;break}break}s._index+=a.length-2}return s.H=s.H||u.h12(s.h,s.A),s._length=e.length,s},c.parse=function(e,n,r){var i=this||t,u="string"==typeof n?i.compile(n):n,s=i.preparse(e,u);return i.isValid(s)?(s.M-=s.Y<100?22801:1,r||~i._parser.find(u,"ZZ").value?new Date(Date.UTC(s.Y,s.M,s.D,s.H,s.m+s.Z,s.s,s.S)):new Date(s.Y,s.M,s.D,s.H,s.m,s.s,s.S)):new Date(NaN)},c.isValid=function(e,n){var r=this||t,i="string"==typeof e?r.preparse(e,n):e,u=[31,28+r.isLeapYear(i.Y)|0,31,30,31,30,31,31,30,31,30,31][i.M-1];return!(i._index<1||i._length<1||i._index-i._length||i._match<1||i.Y<1||i.Y>9999||i.M<1||i.M>12||i.D<1||i.D>u||i.H<0||i.H>23||i.m<0||i.m>59||i.s<0||i.s>59||i.S<0||i.S>999||i.Z<-840||i.Z>720)},c.transform=function(e,n,r,i){const u=this||t;return u.format(u.parse(e,n),r,i)},c.addYears=function(e,n,r){return(this||t).addMonths(e,12*n,r)},c.addMonths=function(e,n,r){var i=new Date(e.getTime());if(r){if(i.setUTCMonth(i.getUTCMonth()+n),i.getUTCDate()<e.getUTCDate())return(this||t).addDays(i,-i.getUTCDate(),r)}else if(i.setMonth(i.getMonth()+n),i.getDate()<e.getDate())return(this||t).addDays(i,-i.getDate(),r);return i},c.addDays=function(e,n,r){return(this||t).addHours(e,24*n,r)},c.addHours=function(e,n,r){return(this||t).addMinutes(e,60*n,r)},c.addMinutes=function(e,n,r){return(this||t).addSeconds(e,60*n,r)},c.addSeconds=function(e,n,r){return(this||t).addMilliseconds(e,1e3*n,r)},c.addMilliseconds=function(e,t,n){var r=new Date(e.getTime());return n?r.setUTCMilliseconds(r.getUTCMilliseconds()+t):r.setMilliseconds(r.getMilliseconds()+t),r},c.subtract=function(e,t){var n=e.getTime()-t.getTime();return{toMilliseconds:function(){return n},toSeconds:function(){return n/1e3},toMinutes:function(){return n/6e4},toHours:function(){return n/36e5},toDays:function(){return n/864e5}}},c.isLeapYear=function(e){return!((e%4||!(e%100))&&e%400)},c.isSameDay=function(e,t){return e.toDateString()===t.toDateString()},c.locale=function(e,t){n[e]||(n[e]=t)},c.plugin=function(e,t){r[e]||(r[e]=t)},e=a(c),(t=a(c)).locale=function(d){var f="function"==typeof d?d:t.locale[d];if(!f)return i;i=f(c);var l=n[i]||{},h=a(u,l.res,!0),M=a(s,l.formatter,!0,h),g=a(o,l.parser,!0,h);for(var p in t._formatter=e._formatter=M,t._parser=e._parser=g,r)t.extend(r[p]);return i},t.extend=function(e){var n=a(t._parser.res,e.res),r=e.extender||{};for(var i in t._formatter=a(t._formatter,e.formatter,!1,n),t._parser=a(t._parser,e.parser,!1,n),r)t[i]||(t[i]=r[i])},t.plugin=function(n){var i="function"==typeof n?n:t.plugin[n];i&&t.extend(r[i(c,e)]||{})};var d=t;export{d as default};
|
package/esm/date-and-time.mjs
CHANGED
|
@@ -145,12 +145,7 @@ var locales = {},
|
|
|
145
145
|
* @returns {Array.<string>} A compiled object
|
|
146
146
|
*/
|
|
147
147
|
proto.compile = function (formatString) {
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
while ((keys = re.exec(formatString))) {
|
|
151
|
-
pattern[pattern.length] = keys[0];
|
|
152
|
-
}
|
|
153
|
-
return pattern;
|
|
148
|
+
return [formatString].concat(formatString.match(/\[(?:[^[\]]|\[[^[\]]*])*]|([A-Za-z])\1*|\.{3}|./g) || []);
|
|
154
149
|
};
|
|
155
150
|
|
|
156
151
|
/**
|
|
@@ -162,14 +157,29 @@ proto.compile = function (formatString) {
|
|
|
162
157
|
*/
|
|
163
158
|
proto.format = function (dateObj, arg, utc) {
|
|
164
159
|
var ctx = this || date, pattern = typeof arg === 'string' ? ctx.compile(arg) : arg,
|
|
165
|
-
|
|
166
|
-
d =
|
|
167
|
-
|
|
160
|
+
formatter = ctx._formatter,
|
|
161
|
+
d = (function () {
|
|
162
|
+
if (utc) {
|
|
163
|
+
var u = new Date(dateObj.getTime());
|
|
164
|
+
|
|
165
|
+
u.getFullYear = u.getUTCFullYear;
|
|
166
|
+
u.getMonth = u.getUTCMonth;
|
|
167
|
+
u.getDate = u.getUTCDate;
|
|
168
|
+
u.getHours = u.getUTCHours;
|
|
169
|
+
u.getMinutes = u.getUTCMinutes;
|
|
170
|
+
u.getSeconds = u.getUTCSeconds;
|
|
171
|
+
u.getMilliseconds = u.getUTCMilliseconds;
|
|
172
|
+
u.getDay = u.getUTCDay;
|
|
173
|
+
u.getTimezoneOffset = function () { return 0; };
|
|
174
|
+
return u;
|
|
175
|
+
}
|
|
176
|
+
return dateObj;
|
|
177
|
+
}()),
|
|
178
|
+
comment = /^\[(.*)\]$/, str = '';
|
|
168
179
|
|
|
169
|
-
d.getTimezoneOffset = function () { return utc ? 0 : offset; };
|
|
170
180
|
for (var i = 1, len = pattern.length, token; i < len; i++) {
|
|
171
181
|
token = pattern[i];
|
|
172
|
-
str += formatter[token] ? formatter.post(formatter[token](d, pattern[0])) : token.replace(
|
|
182
|
+
str += formatter[token] ? formatter.post(formatter[token](d, pattern[0])) : token.replace(comment, '$1');
|
|
173
183
|
}
|
|
174
184
|
return str;
|
|
175
185
|
};
|
|
@@ -183,33 +193,35 @@ proto.format = function (dateObj, arg, utc) {
|
|
|
183
193
|
*/
|
|
184
194
|
proto.preparse = function (dateString, arg) {
|
|
185
195
|
var ctx = this || date, pattern = typeof arg === 'string' ? ctx.compile(arg) : arg,
|
|
196
|
+
parser = ctx._parser,
|
|
186
197
|
dt = { Y: 1970, M: 1, D: 1, H: 0, A: 0, h: 0, m: 0, s: 0, S: 0, Z: 0, _index: 0, _length: 0, _match: 0 },
|
|
187
|
-
comment =
|
|
198
|
+
wildcard = ' ', comment = /^\[(.*)\]$/, ellipsis = '...';
|
|
188
199
|
|
|
189
200
|
dateString = parser.pre(dateString);
|
|
190
|
-
for (var i = 1, len = pattern.length, token, result; i < len; i++) {
|
|
201
|
+
for (var i = 1, len = pattern.length, token, str, result; i < len; i++) {
|
|
191
202
|
token = pattern[i];
|
|
203
|
+
str = dateString.slice(dt._index);
|
|
204
|
+
|
|
192
205
|
if (parser[token]) {
|
|
193
|
-
result = parser[token](
|
|
206
|
+
result = parser[token](str, pattern[0]);
|
|
194
207
|
if (!result.length) {
|
|
195
|
-
|
|
208
|
+
break;
|
|
196
209
|
}
|
|
197
|
-
offset += result.length;
|
|
198
210
|
dt[result.token || token.charAt(0)] = result.value;
|
|
211
|
+
dt._index += result.length;
|
|
199
212
|
dt._match++;
|
|
200
|
-
} else if (token ===
|
|
201
|
-
|
|
202
|
-
} else if (comment.test(token) && !
|
|
203
|
-
|
|
204
|
-
} else if (token ===
|
|
205
|
-
|
|
213
|
+
} else if (token === str.charAt(0) || token === wildcard) {
|
|
214
|
+
dt._index++;
|
|
215
|
+
} else if (comment.test(token) && !str.indexOf(token.replace(comment, '$1'))) {
|
|
216
|
+
dt._index += token.length - 2;
|
|
217
|
+
} else if (token === ellipsis) {
|
|
218
|
+
dt._index = dateString.length;
|
|
206
219
|
break;
|
|
207
220
|
} else {
|
|
208
221
|
break;
|
|
209
222
|
}
|
|
210
223
|
}
|
|
211
224
|
dt.H = dt.H || parser.h12(dt.h, dt.A);
|
|
212
|
-
dt._index = offset;
|
|
213
225
|
dt._length = dateString.length;
|
|
214
226
|
return dt;
|
|
215
227
|
};
|
|
@@ -458,14 +458,15 @@ var plugin = function (date, localized_date) {
|
|
|
458
458
|
var formatTZ = function (dateObj, arg, timeZone) {
|
|
459
459
|
options.timeZone = 'UTC';
|
|
460
460
|
var utcObj = date.parse(new Intl.DateTimeFormat('en-US', options).format(dateObj), pattern);
|
|
461
|
+
utcObj.setMilliseconds(dateObj.getMilliseconds());
|
|
461
462
|
|
|
462
463
|
options.timeZone = timeZone;
|
|
463
464
|
var dateObj2 = date.parse(new Intl.DateTimeFormat('en-US', options).format(dateObj), pattern);
|
|
465
|
+
dateObj2.setMilliseconds(dateObj.getMilliseconds());
|
|
464
466
|
|
|
465
|
-
|
|
467
|
+
dateObj2.getTimezoneOffset = function () { return (utcObj.getTime() - dateObj2.getTime()) / 60000 | 0; };
|
|
466
468
|
|
|
467
|
-
|
|
468
|
-
return localized_date.format(dateObj3, arg);
|
|
469
|
+
return localized_date.format(dateObj2, arg);
|
|
469
470
|
};
|
|
470
471
|
var parseTZ = function (dateString, arg, timeZone) {
|
|
471
472
|
var pattern2 = typeof arg === 'string' ? date.compile(arg) : arg;
|
package/esm/plugin/timezone.mjs
CHANGED
|
@@ -458,14 +458,15 @@ var plugin = function (date, localized_date) {
|
|
|
458
458
|
var formatTZ = function (dateObj, arg, timeZone) {
|
|
459
459
|
options.timeZone = 'UTC';
|
|
460
460
|
var utcObj = date.parse(new Intl.DateTimeFormat('en-US', options).format(dateObj), pattern);
|
|
461
|
+
utcObj.setMilliseconds(dateObj.getMilliseconds());
|
|
461
462
|
|
|
462
463
|
options.timeZone = timeZone;
|
|
463
464
|
var dateObj2 = date.parse(new Intl.DateTimeFormat('en-US', options).format(dateObj), pattern);
|
|
465
|
+
dateObj2.setMilliseconds(dateObj.getMilliseconds());
|
|
464
466
|
|
|
465
|
-
|
|
467
|
+
dateObj2.getTimezoneOffset = function () { return (utcObj.getTime() - dateObj2.getTime()) / 60000 | 0; };
|
|
466
468
|
|
|
467
|
-
|
|
468
|
-
return localized_date.format(dateObj3, arg);
|
|
469
|
+
return localized_date.format(dateObj2, arg);
|
|
469
470
|
};
|
|
470
471
|
var parseTZ = function (dateString, arg, timeZone) {
|
|
471
472
|
var pattern2 = typeof arg === 'string' ? date.compile(arg) : arg;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "date-and-time",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "A Minimalist DateTime utility for Node.js and the browser",
|
|
5
5
|
"main": "date-and-time.js",
|
|
6
6
|
"module": "esm/date-and-time.es.js",
|
|
@@ -51,8 +51,8 @@
|
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@rollup/plugin-terser": "^0.4.4",
|
|
53
53
|
"expect.js": "^0.3.1",
|
|
54
|
-
"mocha": "^10.
|
|
55
|
-
"rollup": "^4.
|
|
56
|
-
"tsd": "^0.
|
|
54
|
+
"mocha": "^10.4.0",
|
|
55
|
+
"rollup": "^4.17.2",
|
|
56
|
+
"tsd": "^0.31.0"
|
|
57
57
|
}
|
|
58
58
|
}
|
package/plugin/timezone.js
CHANGED
|
@@ -464,14 +464,15 @@
|
|
|
464
464
|
var formatTZ = function (dateObj, arg, timeZone) {
|
|
465
465
|
options.timeZone = 'UTC';
|
|
466
466
|
var utcObj = date.parse(new Intl.DateTimeFormat('en-US', options).format(dateObj), pattern);
|
|
467
|
+
utcObj.setMilliseconds(dateObj.getMilliseconds());
|
|
467
468
|
|
|
468
469
|
options.timeZone = timeZone;
|
|
469
470
|
var dateObj2 = date.parse(new Intl.DateTimeFormat('en-US', options).format(dateObj), pattern);
|
|
471
|
+
dateObj2.setMilliseconds(dateObj.getMilliseconds());
|
|
470
472
|
|
|
471
|
-
|
|
473
|
+
dateObj2.getTimezoneOffset = function () { return (utcObj.getTime() - dateObj2.getTime()) / 60000 | 0; };
|
|
472
474
|
|
|
473
|
-
|
|
474
|
-
return localized_date.format(dateObj3, arg);
|
|
475
|
+
return localized_date.format(dateObj2, arg);
|
|
475
476
|
};
|
|
476
477
|
var parseTZ = function (dateString, arg, timeZone) {
|
|
477
478
|
var pattern2 = typeof arg === 'string' ? date.compile(arg) : arg;
|
package/rollup.config.mjs
DELETED
|
@@ -1,356 +0,0 @@
|
|
|
1
|
-
import terser from '@rollup/plugin-terser';
|
|
2
|
-
|
|
3
|
-
export default [
|
|
4
|
-
{
|
|
5
|
-
input: 'src/index.js',
|
|
6
|
-
output: [
|
|
7
|
-
{ file: 'esm/date-and-time.es.js', format: 'es' },
|
|
8
|
-
{ file: 'esm/date-and-time.mjs', format: 'es' },
|
|
9
|
-
{ file: 'date-and-time.js', format: 'umd', name: 'date', esModule: false }
|
|
10
|
-
]
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
input: 'src/locale/ar.js',
|
|
14
|
-
output: [
|
|
15
|
-
{ file: 'esm/locale/ar.es.js', format: 'es' },
|
|
16
|
-
{ file: 'esm/locale/ar.mjs', format: 'es' },
|
|
17
|
-
{ file: 'locale/ar.js', format: 'umd', name: 'date.locale.ar', esModule: false }
|
|
18
|
-
]
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
input: 'src/locale/az.js',
|
|
22
|
-
output: [
|
|
23
|
-
{ file: 'esm/locale/az.es.js', format: 'es' },
|
|
24
|
-
{ file: 'esm/locale/az.mjs', format: 'es' },
|
|
25
|
-
{ file: 'locale/az.js', format: 'umd', name: 'date.locale.az', esModule: false }
|
|
26
|
-
]
|
|
27
|
-
},
|
|
28
|
-
{
|
|
29
|
-
input: 'src/locale/bn.js',
|
|
30
|
-
output: [
|
|
31
|
-
{ file: 'esm/locale/bn.es.js', format: 'es' },
|
|
32
|
-
{ file: 'esm/locale/bn.mjs', format: 'es' },
|
|
33
|
-
{ file: 'locale/bn.js', format: 'umd', name: 'date.locale.bn', esModule: false }
|
|
34
|
-
]
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
input: 'src/locale/cs.js',
|
|
38
|
-
output: [
|
|
39
|
-
{ file: 'esm/locale/cs.es.js', format: 'es' },
|
|
40
|
-
{ file: 'esm/locale/cs.mjs', format: 'es' },
|
|
41
|
-
{ file: 'locale/cs.js', format: 'umd', name: 'date.locale.cs', esModule: false }
|
|
42
|
-
]
|
|
43
|
-
},
|
|
44
|
-
{
|
|
45
|
-
input: 'src/locale/de.js',
|
|
46
|
-
output: [
|
|
47
|
-
{ file: 'esm/locale/de.es.js', format: 'es' },
|
|
48
|
-
{ file: 'esm/locale/de.mjs', format: 'es' },
|
|
49
|
-
{ file: 'locale/de.js', format: 'umd', name: 'date.locale.de', esModule: false }
|
|
50
|
-
]
|
|
51
|
-
},
|
|
52
|
-
{
|
|
53
|
-
input: 'src/locale/dk.js',
|
|
54
|
-
output: [
|
|
55
|
-
{ file: 'esm/locale/dk.es.js', format: 'es' },
|
|
56
|
-
{ file: 'esm/locale/dk.mjs', format: 'es' },
|
|
57
|
-
{ file: 'locale/dk.js', format: 'umd', name: 'date.locale.dk', esModule: false }
|
|
58
|
-
]
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
input: 'src/locale/el.js',
|
|
62
|
-
output: [
|
|
63
|
-
{ file: 'esm/locale/el.es.js', format: 'es' },
|
|
64
|
-
{ file: 'esm/locale/el.mjs', format: 'es' },
|
|
65
|
-
{ file: 'locale/el.js', format: 'umd', name: 'date.locale.el', esModule: false }
|
|
66
|
-
]
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
input: 'src/locale/en.js',
|
|
70
|
-
output: [
|
|
71
|
-
{ file: 'esm/locale/en.es.js', format: 'es' },
|
|
72
|
-
{ file: 'esm/locale/en.mjs', format: 'es' },
|
|
73
|
-
{ file: 'locale/en.js', format: 'umd', name: 'date.locale.en', esModule: false }
|
|
74
|
-
]
|
|
75
|
-
},
|
|
76
|
-
{
|
|
77
|
-
input: 'src/locale/es.js',
|
|
78
|
-
output: [
|
|
79
|
-
{ file: 'esm/locale/es.es.js', format: 'es' },
|
|
80
|
-
{ file: 'esm/locale/es.mjs', format: 'es' },
|
|
81
|
-
{ file: 'locale/es.js', format: 'umd', name: 'date.locale.es', esModule: false }
|
|
82
|
-
]
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
input: 'src/locale/fa.js',
|
|
86
|
-
output: [
|
|
87
|
-
{ file: 'esm/locale/fa.es.js', format: 'es' },
|
|
88
|
-
{ file: 'esm/locale/fa.mjs', format: 'es' },
|
|
89
|
-
{ file: 'locale/fa.js', format: 'umd', name: 'date.locale.fa', esModule: false }
|
|
90
|
-
]
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
input: 'src/locale/fr.js',
|
|
94
|
-
output: [
|
|
95
|
-
{ file: 'esm/locale/fr.es.js', format: 'es' },
|
|
96
|
-
{ file: 'esm/locale/fr.mjs', format: 'es' },
|
|
97
|
-
{ file: 'locale/fr.js', format: 'umd', name: 'date.locale.fr', esModule: false }
|
|
98
|
-
]
|
|
99
|
-
},
|
|
100
|
-
{
|
|
101
|
-
input: 'src/locale/hi.js',
|
|
102
|
-
output: [
|
|
103
|
-
{ file: 'esm/locale/hi.es.js', format: 'es' },
|
|
104
|
-
{ file: 'esm/locale/hi.mjs', format: 'es' },
|
|
105
|
-
{ file: 'locale/hi.js', format: 'umd', name: 'date.locale.hi', esModule: false }
|
|
106
|
-
]
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
input: 'src/locale/hu.js',
|
|
110
|
-
output: [
|
|
111
|
-
{ file: 'esm/locale/hu.es.js', format: 'es' },
|
|
112
|
-
{ file: 'esm/locale/hu.mjs', format: 'es' },
|
|
113
|
-
{ file: 'locale/hu.js', format: 'umd', name: 'date.locale.hu', esModule: false }
|
|
114
|
-
]
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
input: 'src/locale/id.js',
|
|
118
|
-
output: [
|
|
119
|
-
{ file: 'esm/locale/id.es.js', format: 'es' },
|
|
120
|
-
{ file: 'esm/locale/id.mjs', format: 'es' },
|
|
121
|
-
{ file: 'locale/id.js', format: 'umd', name: 'date.locale.id', esModule: false }
|
|
122
|
-
]
|
|
123
|
-
},
|
|
124
|
-
{
|
|
125
|
-
input: 'src/locale/it.js',
|
|
126
|
-
output: [
|
|
127
|
-
{ file: 'esm/locale/it.es.js', format: 'es' },
|
|
128
|
-
{ file: 'esm/locale/it.mjs', format: 'es' },
|
|
129
|
-
{ file: 'locale/it.js', format: 'umd', name: 'date.locale.it', esModule: false }
|
|
130
|
-
]
|
|
131
|
-
},
|
|
132
|
-
{
|
|
133
|
-
input: 'src/locale/ja.js',
|
|
134
|
-
output: [
|
|
135
|
-
{ file: 'esm/locale/ja.es.js', format: 'es' },
|
|
136
|
-
{ file: 'esm/locale/ja.mjs', format: 'es' },
|
|
137
|
-
{ file: 'locale/ja.js', format: 'umd', name: 'date.locale.ja', esModule: false }
|
|
138
|
-
]
|
|
139
|
-
},
|
|
140
|
-
{
|
|
141
|
-
input: 'src/locale/jv.js',
|
|
142
|
-
output: [
|
|
143
|
-
{ file: 'esm/locale/jv.es.js', format: 'es' },
|
|
144
|
-
{ file: 'esm/locale/jv.mjs', format: 'es' },
|
|
145
|
-
{ file: 'locale/jv.js', format: 'umd', name: 'date.locale.jv', esModule: false }
|
|
146
|
-
]
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
input: 'src/locale/ko.js',
|
|
150
|
-
output: [
|
|
151
|
-
{ file: 'esm/locale/ko.es.js', format: 'es' },
|
|
152
|
-
{ file: 'esm/locale/ko.mjs', format: 'es' },
|
|
153
|
-
{ file: 'locale/ko.js', format: 'umd', name: 'date.locale.ko', esModule: false }
|
|
154
|
-
]
|
|
155
|
-
},
|
|
156
|
-
{
|
|
157
|
-
input: 'src/locale/my.js',
|
|
158
|
-
output: [
|
|
159
|
-
{ file: 'esm/locale/my.es.js', format: 'es' },
|
|
160
|
-
{ file: 'esm/locale/my.mjs', format: 'es' },
|
|
161
|
-
{ file: 'locale/my.js', format: 'umd', name: 'date.locale.my', esModule: false }
|
|
162
|
-
]
|
|
163
|
-
},
|
|
164
|
-
{
|
|
165
|
-
input: 'src/locale/nl.js',
|
|
166
|
-
output: [
|
|
167
|
-
{ file: 'esm/locale/nl.es.js', format: 'es' },
|
|
168
|
-
{ file: 'esm/locale/nl.mjs', format: 'es' },
|
|
169
|
-
{ file: 'locale/nl.js', format: 'umd', name: 'date.locale.nl', esModule: false }
|
|
170
|
-
]
|
|
171
|
-
},
|
|
172
|
-
{
|
|
173
|
-
input: 'src/locale/pa-in.js',
|
|
174
|
-
output: [
|
|
175
|
-
{ file: 'esm/locale/pa-in.es.js', format: 'es' },
|
|
176
|
-
{ file: 'esm/locale/pa-in.mjs', format: 'es' },
|
|
177
|
-
{ file: 'locale/pa-in.js', format: 'umd', name: 'date.locale.pa-in', esModule: false }
|
|
178
|
-
]
|
|
179
|
-
},
|
|
180
|
-
{
|
|
181
|
-
input: 'src/locale/pl.js',
|
|
182
|
-
output: [
|
|
183
|
-
{ file: 'esm/locale/pl.es.js', format: 'es' },
|
|
184
|
-
{ file: 'esm/locale/pl.mjs', format: 'es' },
|
|
185
|
-
{ file: 'locale/pl.js', format: 'umd', name: 'date.locale.pl', esModule: false }
|
|
186
|
-
]
|
|
187
|
-
},
|
|
188
|
-
{
|
|
189
|
-
input: 'src/locale/pt.js',
|
|
190
|
-
output: [
|
|
191
|
-
{ file: 'esm/locale/pt.es.js', format: 'es' },
|
|
192
|
-
{ file: 'esm/locale/pt.mjs', format: 'es' },
|
|
193
|
-
{ file: 'locale/pt.js', format: 'umd', name: 'date.locale.pt', esModule: false }
|
|
194
|
-
]
|
|
195
|
-
},
|
|
196
|
-
{
|
|
197
|
-
input: 'src/locale/ro.js',
|
|
198
|
-
output: [
|
|
199
|
-
{ file: 'esm/locale/ro.es.js', format: 'es' },
|
|
200
|
-
{ file: 'esm/locale/ro.mjs', format: 'es' },
|
|
201
|
-
{ file: 'locale/ro.js', format: 'umd', name: 'date.locale.ro', esModule: false }
|
|
202
|
-
]
|
|
203
|
-
},
|
|
204
|
-
{
|
|
205
|
-
input: 'src/locale/ru.js',
|
|
206
|
-
output: [
|
|
207
|
-
{ file: 'esm/locale/ru.es.js', format: 'es' },
|
|
208
|
-
{ file: 'esm/locale/ru.mjs', format: 'es' },
|
|
209
|
-
{ file: 'locale/ru.js', format: 'umd', name: 'date.locale.ru', esModule: false }
|
|
210
|
-
]
|
|
211
|
-
},
|
|
212
|
-
{
|
|
213
|
-
input: 'src/locale/rw.js',
|
|
214
|
-
output: [
|
|
215
|
-
{ file: 'esm/locale/rw.es.js', format: 'es' },
|
|
216
|
-
{ file: 'esm/locale/rw.mjs', format: 'es' },
|
|
217
|
-
{ file: 'locale/rw.js', format: 'umd', name: 'date.locale.rw', esModule: false }
|
|
218
|
-
]
|
|
219
|
-
},
|
|
220
|
-
{
|
|
221
|
-
input: 'src/locale/sr.js',
|
|
222
|
-
output: [
|
|
223
|
-
{ file: 'esm/locale/sr.es.js', format: 'es' },
|
|
224
|
-
{ file: 'esm/locale/sr.mjs', format: 'es' },
|
|
225
|
-
{ file: 'locale/sr.js', format: 'umd', name: 'date.locale.sr', esModule: false }
|
|
226
|
-
]
|
|
227
|
-
},
|
|
228
|
-
{
|
|
229
|
-
input: 'src/locale/sv.js',
|
|
230
|
-
output: [
|
|
231
|
-
{ file: 'esm/locale/sv.es.js', format: 'es' },
|
|
232
|
-
{ file: 'esm/locale/sv.mjs', format: 'es' },
|
|
233
|
-
{ file: 'locale/sv.js', format: 'umd', name: 'date.locale.sv', esModule: false }
|
|
234
|
-
]
|
|
235
|
-
},
|
|
236
|
-
{
|
|
237
|
-
input: 'src/locale/th.js',
|
|
238
|
-
output: [
|
|
239
|
-
{ file: 'esm/locale/th.es.js', format: 'es' },
|
|
240
|
-
{ file: 'esm/locale/th.mjs', format: 'es' },
|
|
241
|
-
{ file: 'locale/th.js', format: 'umd', name: 'date.locale.th', esModule: false }
|
|
242
|
-
]
|
|
243
|
-
},
|
|
244
|
-
{
|
|
245
|
-
input: 'src/locale/tr.js',
|
|
246
|
-
output: [
|
|
247
|
-
{ file: 'esm/locale/tr.es.js', format: 'es' },
|
|
248
|
-
{ file: 'esm/locale/tr.mjs', format: 'es' },
|
|
249
|
-
{ file: 'locale/tr.js', format: 'umd', name: 'date.locale.tr', esModule: false }
|
|
250
|
-
]
|
|
251
|
-
},
|
|
252
|
-
{
|
|
253
|
-
input: 'src/locale/uk.js',
|
|
254
|
-
output: [
|
|
255
|
-
{ file: 'esm/locale/uk.es.js', format: 'es' },
|
|
256
|
-
{ file: 'esm/locale/uk.mjs', format: 'es' },
|
|
257
|
-
{ file: 'locale/uk.js', format: 'umd', name: 'date.locale.uk', esModule: false }
|
|
258
|
-
]
|
|
259
|
-
},
|
|
260
|
-
{
|
|
261
|
-
input: 'src/locale/uz.js',
|
|
262
|
-
output: [
|
|
263
|
-
{ file: 'esm/locale/uz.es.js', format: 'es' },
|
|
264
|
-
{ file: 'esm/locale/uz.mjs', format: 'es' },
|
|
265
|
-
{ file: 'locale/uz.js', format: 'umd', name: 'date.locale.uz', esModule: false }
|
|
266
|
-
]
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
input: 'src/locale/vi.js',
|
|
270
|
-
output: [
|
|
271
|
-
{ file: 'esm/locale/vi.es.js', format: 'es' },
|
|
272
|
-
{ file: 'esm/locale/vi.mjs', format: 'es' },
|
|
273
|
-
{ file: 'locale/vi.js', format: 'umd', name: 'date.locale.vi', esModule: false }
|
|
274
|
-
]
|
|
275
|
-
},
|
|
276
|
-
{
|
|
277
|
-
input: 'src/locale/zh-cn.js',
|
|
278
|
-
output: [
|
|
279
|
-
{ file: 'esm/locale/zh-cn.es.js', format: 'es' },
|
|
280
|
-
{ file: 'esm/locale/zh-cn.mjs', format: 'es' },
|
|
281
|
-
{ file: 'locale/zh-cn.js', format: 'umd', name: 'date.locale.zh-cn', esModule: false }
|
|
282
|
-
]
|
|
283
|
-
},
|
|
284
|
-
{
|
|
285
|
-
input: 'src/locale/zh-tw.js',
|
|
286
|
-
output: [
|
|
287
|
-
{ file: 'esm/locale/zh-tw.es.js', format: 'es' },
|
|
288
|
-
{ file: 'esm/locale/zh-tw.mjs', format: 'es' },
|
|
289
|
-
{ file: 'locale/zh-tw.js', format: 'umd', name: 'date.locale.zh-tw', esModule: false }
|
|
290
|
-
]
|
|
291
|
-
},
|
|
292
|
-
{
|
|
293
|
-
input: 'src/plugin/day-of-week.js',
|
|
294
|
-
output: [
|
|
295
|
-
{ file: 'esm/plugin/day-of-week.es.js', format: 'es' },
|
|
296
|
-
{ file: 'esm/plugin/day-of-week.mjs', format: 'es' },
|
|
297
|
-
{ file: 'plugin/day-of-week.js', format: 'umd', name: 'date.plugin.day-of-week', esModule: false }
|
|
298
|
-
]
|
|
299
|
-
},
|
|
300
|
-
{
|
|
301
|
-
input: 'src/plugin/meridiem.js',
|
|
302
|
-
output: [
|
|
303
|
-
{ file: 'esm/plugin/meridiem.es.js', format: 'es' },
|
|
304
|
-
{ file: 'esm/plugin/meridiem.mjs', format: 'es' },
|
|
305
|
-
{ file: 'plugin/meridiem.js', format: 'umd', name: 'date.plugin.meridiem', esModule: false }
|
|
306
|
-
]
|
|
307
|
-
},
|
|
308
|
-
{
|
|
309
|
-
input: 'src/plugin/microsecond.js',
|
|
310
|
-
output: [
|
|
311
|
-
{ file: 'esm/plugin/microsecond.es.js', format: 'es' },
|
|
312
|
-
{ file: 'esm/plugin/microsecond.mjs', format: 'es' },
|
|
313
|
-
{ file: 'plugin/microsecond.js', format: 'umd', name: 'date.plugin.microsecond', esModule: false }
|
|
314
|
-
]
|
|
315
|
-
},
|
|
316
|
-
{
|
|
317
|
-
input: 'src/plugin/ordinal.js',
|
|
318
|
-
output: [
|
|
319
|
-
{ file: 'esm/plugin/ordinal.es.js', format: 'es' },
|
|
320
|
-
{ file: 'esm/plugin/ordinal.mjs', format: 'es' },
|
|
321
|
-
{ file: 'plugin/ordinal.js', format: 'umd', name: 'date.plugin.ordinal', esModule: false }
|
|
322
|
-
]
|
|
323
|
-
},
|
|
324
|
-
{
|
|
325
|
-
input: 'src/plugin/timespan.js',
|
|
326
|
-
output: [
|
|
327
|
-
{ file: 'esm/plugin/timespan.es.js', format: 'es' },
|
|
328
|
-
{ file: 'esm/plugin/timespan.mjs', format: 'es' },
|
|
329
|
-
{ file: 'plugin/timespan.js', format: 'umd', name: 'date.plugin.timespan', esModule: false }
|
|
330
|
-
]
|
|
331
|
-
},
|
|
332
|
-
{
|
|
333
|
-
input: 'src/plugin/timezone.js',
|
|
334
|
-
output: [
|
|
335
|
-
{ file: 'esm/plugin/timezone.es.js', format: 'es' },
|
|
336
|
-
{ file: 'esm/plugin/timezone.mjs', format: 'es' },
|
|
337
|
-
{ file: 'plugin/timezone.js', format: 'umd', name: 'date.plugin.timezone', esModule: false }
|
|
338
|
-
]
|
|
339
|
-
},
|
|
340
|
-
{
|
|
341
|
-
input: 'src/plugin/two-digit-year.js',
|
|
342
|
-
output: [
|
|
343
|
-
{ file: 'esm/plugin/two-digit-year.es.js', format: 'es' },
|
|
344
|
-
{ file: 'esm/plugin/two-digit-year.mjs', format: 'es' },
|
|
345
|
-
{ file: 'plugin/two-digit-year.js', format: 'umd', name: 'date.plugin.two-digit-year', esModule: false }
|
|
346
|
-
]
|
|
347
|
-
},
|
|
348
|
-
{
|
|
349
|
-
input: 'src/index.js',
|
|
350
|
-
output: [
|
|
351
|
-
{ file: 'esm/date-and-time.es.min.js', format: 'es' },
|
|
352
|
-
{ file: 'date-and-time.min.js', format: 'umd', name: 'date', esModule: false }
|
|
353
|
-
],
|
|
354
|
-
plugins: [terser()]
|
|
355
|
-
}
|
|
356
|
-
];
|