UNPKG

@leafygreen-ui/date-utils

Version:
3 lines (2 loc) 7.31 kB
import{isValid as t,addMilliseconds as r,isAfter as n,isBefore as e,max as o,min as a,toDate as u}from"date-fns";import i from"lodash/isNull";import l from"lodash/isUndefined";import{getTimezoneOffset as c}from"date-fns-tz";import f from"lodash/range";import s from"lodash/truncate";import m from"lodash/chunk";import y from"lodash/fill";import{getWeekStartByLocale as g}from"weekstart";import{isDefined as v}from"@leafygreen-ui/lib";var p=function(t,r){var n=new Date(t),e=n.getUTCDate()+r;return n.setUTCDate(e),n},h=function(t,r){var n=new Date(t);return n.setUTCMonth(r),n},D=function(t,r){var n=t.getUTCMonth();return h(t,n+r)},d=7,b=function(t){return t[t.January=0]="January",t[t.February=1]="February",t[t.March=2]="March",t[t.April=3]="April",t[t.May=4]="May",t[t.June=5]="June",t[t.July=6]="July",t[t.August=7]="August",t[t.September=8]="September",t[t.October=9]="October",t[t.November=10]="November",t[t.December=11]="December",t}({}),T=function(t){var r=t.getUTCFullYear(),n=t.getUTCMonth(),e=new Date(t);return e.setUTCFullYear(r,n+1,0),e.setUTCHours(0,0,0,0),e.getUTCDate()},U=function(t){var r=new Date(t);return r.setUTCHours(0),r.setUTCMinutes(0),r.setUTCSeconds(0),r.setUTCMilliseconds(0),r},w=function(t,r){var n=new Date(t);return n.setUTCDate(r),n},C=function(t){return U(w(t,1))};function S(t){if(!t)return!1;try{new Intl.Locale(t)}catch(r){return console.error({localeString:t},r),!1}return!0}var I=function(t){return S(t)?t:Intl.DateTimeFormat().resolvedOptions().locale},M=function(t,r){return r=I(r),{long:new Date(2020,t,15).toLocaleString(r,{month:"long"}),short:new Date(2020,t,15).toLocaleString(r,{month:"short"})}},A=function(t){return M(t.getUTCMonth()).long+" "+t.getUTCFullYear()};function F(t,r){(null==r||r>t.length)&&(r=t.length);for(var n=0,e=Array(r);n<r;n++)e[n]=t[n];return e}function O(t,r){return function(t){if(Array.isArray(t))return t}(t)||function(t,r){var n=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=n){var e,o,a,u,i=[],l=!0,c=!1;try{if(a=(n=n.call(t)).next,0===r);else for(;!(l=(e=a.call(n)).done)&&(i.push(e.value),i.length!==r);l=!0);}catch(t){c=!0,o=t}finally{try{if(!l&&null!=n.return&&(u=n.return(),Object(u)!==u))return}finally{if(c)throw o}}return i}}(t,r)||Y(t,r)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function N(t){return function(t){if(Array.isArray(t))return F(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||Y(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function L(t){return L="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},L(t)}function Y(t,r){if(t){if("string"==typeof t)return F(t,r);var n={}.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?F(t,r):void 0}}var k=function(r){return!l(r)&&(!i(r)&&(!!J(r)&&(!j(r)&&t(r))))},J=function(t){return!i(t)&&!l(t)&&"object"===L(t)&&"Date"==t.constructor.name&&"function"==typeof t.toISOString},j=function(t){if(i(t))return!1;if(!J(t))return!1;try{return t.toISOString(),!1}catch(t){return!0}},x=function(t){return k(t)?t.toISOString().split("T")[0]:""},_=function(t,n){var e=c(n);if(!k(t)||isNaN(e))return x(t);var o=r(t,e);return x(o)},B=function(t){var r=T(t);return U(w(t,r))},E=function(t){return f(12).map((function(r){return M(r,t)}))},G=function(t,r){r=I(r),t=t%7+1;var n=new Date(2e3,b.October,t);return{long:n.toLocaleDateString(r,{weekday:"long"}),abbr:n.toLocaleDateString(r,{weekday:"short"}),short:s(n.toLocaleDateString(r,{weekday:"short"}),{length:2,omission:""}),narrow:n.toLocaleDateString(r,{weekday:"narrow"})}},H=function(t){return f(7).map((function(r){return G(r,t)}))},Z=function(t,r){var n=E(r).findIndex((function(r){return[r.long,r.short].includes(t)}));return n>=0?n:null},z=function(t,n){if(!k(t))return t;var e=c(n,t);return isNaN(e)?t:r(t,e)},$=function(t,n){if(n=null!=n?n:Intl.DateTimeFormat().resolvedOptions().timeZone,!k(t))return t;var e=c(n,t);return isNaN(e)?t:r(t,-e)},q=function(t,r){var n=Intl.DateTimeFormat().resolvedOptions().timeZone,e=$(t,n),o=S(null==r?void 0:r.locale)?null==r?void 0:r.locale:Intl.DateTimeFormat().resolvedOptions().locale;return e.toLocaleDateString(o,{weekday:"long",month:"long",day:"numeric",year:"numeric"})},K=function(t,r){var n=r.locale,e=g(n),o=U(t);o.setUTCDate(1);var a=o.getUTCDay(),u=T(o),i=(a-e+7)%7,l=f(u).map((function(t){var r=new Date(o);return r.setUTCDate(t+1),r}));return l.splice.apply(l,[0,0].concat(N(y(f(i),null)))),m(l,7)},P=function(t,r){return!(!k(t)||!k(r))&&(t.getUTCDate()===r.getUTCDate()&&t.getUTCMonth()===r.getUTCMonth()&&t.getUTCFullYear()===r.getUTCFullYear())},Q=function(t){var r=new Date(Date.now());return P(t,r)},R=function(t,r){return k(t)&&k(r)&&(P(t,r)||n(t,r))},V=function(t,r){return k(t)&&k(r)&&(P(t,r)||e(t,r))},W=function(t,r,n){if(!k(t)||!k(r))return!1;var e=z(t,n);return P(r,e)},X=function(t,r){return!(!k(t)||!k(r))&&(t.getUTCMonth()===r.getUTCMonth()&&t.getUTCFullYear()===r.getUTCFullYear())},tt=function(t,r,n){if(!k(t)||!k(r))return!1;var e=z(t,n);return X(r,e)},rt=function(t,r){if(l(t)||l(r))return!1;var n=O(t,2),e=n[0],o=n[1],a=O(r,2),u=a[0],i=a[1];return P(e,u)&&P(o,i)},nt=function(t,r){var n=new Date(Date.now());return W(n,t,r)},et=function(t){var r=t.filter(v);if(r.length>0)return o(r)},ot=function(t){var r=t.filter(v);if(r.length>0)return a(r)},at=function(){for(var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0,r=arguments.length,n=new Array(r>1?r-1:0),e=1;e<r;e++)n[e-1]=arguments[e];var o=n[0],a=n[1],u=n[2],i=n[3],l=n.slice(4),c=(null!=i?i:0)-t;return new Date(Date.UTC.apply(Date,[o,a,u,c].concat(N(l))))},ut=function(){return new Date(Date.UTC.apply(Date,arguments))},it=function(t,r){var n=new Date(t);return n.setUTCFullYear(r),n};function lt(r){if(l(r)||i(r))return null;if(t(r))return new Date(r);if("number"==typeof r)return u(r);var n=new Date(r);return t(n)?n:null}var ct={ISO_8601:"iso-8601",en_US:"en-US",en_GB:"en-GB"};export{b as Month,ct as SupportedLocales,p as addDaysUTC,D as addMonthsUTC,d as daysPerWeek,T as getDaysInUTCMonth,C as getFirstOfUTCMonth,A as getFullMonthLabel,x as getISODate,_ as getISODateTZ,B as getLastOfMonth,E as getLocaleMonths,H as getLocaleWeekdays,Z as getMonthIndex,M as getMonthName,z as getSimulatedTZDate,$ as getSimulatedUTCDate,q as getUTCDateString,G as getWeekdayName,K as getWeeksArray,Q as isCurrentUTCDay,J as isDateObject,j as isInvalidDateObject,R as isOnOrAfter,V as isOnOrBefore,W as isSameTZDay,tt as isSameTZMonth,P as isSameUTCDay,X as isSameUTCMonth,rt as isSameUTCRange,nt as isTodayTZ,k as isValidDate,S as isValidLocale,et as maxDate,ot as minDate,at as newTZDate,ut as newUTC,U as setToUTCMidnight,w as setUTCDate,h as setUTCMonth,it as setUTCYear,lt as toDate}; //# sourceMappingURL=index.js.map