@leafygreen-ui/date-utils
Version:
LeafyGreen UI Kit Date Utils
3 lines (2 loc) • 3.35 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("timezone-mock")):"function"==typeof define&&define.amd?define(["exports","timezone-mock"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["@leafygreen-ui/date-utils"]={},e.timezoneMock)}(this,(function(e,t){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var n=r(t);function o(e,t){t=e.length;for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function i(e,t,r){return(t=function(e){var t=function(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t);if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}(e,"string");return"symbol"==typeof t?t:t+""}(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function a(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function f(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?a(Object(r),!0).forEach((function(t){i(e,t,r[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):a(Object(r)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))}))}return e}var s,c=[{tz:"Pacific/Honolulu",UTCOffset:-10},{tz:"America/Los_Angeles",UTCOffset:-8},{tz:"America/New_York",UTCOffset:-5},{tz:"Europe/London",UTCOffset:0},{tz:"Asia/Istanbul",UTCOffset:3},{tz:"Asia/Seoul",UTCOffset:9},{tz:"Pacific/Kiritimati",UTCOffset:14}],u={tz:void 0,UTCOffset:void 0},l=c.map((function(e){return e.tz})),p=[].concat(function(e){if(Array.isArray(e))return o(e)}(s=Object.values({ISO_8601:"iso-8601",en_US:"en-US",en_GB:"en-GB"}))||function(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(s)||function(e,t){if(e){if("string"==typeof e)return o(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?o(e,t):void 0}}(s)||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.")}(),["de-DE","en-MV","es-MX","fa-AF","fr-FR","he-IL","ja-JP","zh-CN"]);e.mockTimeZone=function(e,t){n.default.register("Etc/GMT".concat(t>=0?"+":"").concat(t),{Date:Date});var r=Intl.DateTimeFormat().resolvedOptions();jest.spyOn(globalThis.Intl.DateTimeFormat.prototype,"resolvedOptions").mockImplementation((function(){return f(f({},r),{},{timeZone:e})})),jest.spyOn(globalThis.Date.prototype,"getTimezoneOffset").mockImplementation((function(){return 60*t})),jest.spyOn(globalThis.Date.prototype,"getDate").mockImplementation((function(){var e=this.getUTCDate(),r=this.getUTCHours()+t;return e+(r>=24?1:r<0?-1:0)})),jest.spyOn(globalThis.Date.prototype,"getHours").mockImplementation((function(){var e=this.getUTCHours()+t;return e>=24?e%24:e<0?e+24:e}))},e.testLocales=p,e.testTimeZoneLabels=l,e.testTimeZones=c,e.undefinedTZ=u}));
//# sourceMappingURL=index.js.map