This repository has been archived on 2020-11-02. You can view files and clone it, but cannot push or open issues or pull requests.
2020-11-01 22:46:04 +00:00

2 lines
1.7 KiB
JavaScript

!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.dayjs_plugin_timezone=t()}(this,function(){"use strict";var e={year:0,month:1,day:2,hour:3,minute:4,second:5},t={};return function(n,o,i){var r,u=i().utcOffset(),a=function(e,n,o){void 0===o&&(o={});var i=new Date(e);return function(e,n){void 0===n&&(n={});var o=n.timeZoneName||"short",i=e+"|"+o,r=t[i];return r||(r=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:e,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",timeZoneName:o}),t[i]=r),r}(n,o).formatToParts(i)},f=function(t,n){for(var o=a(t,n),r=[],u=0;u<o.length;u+=1){var f=o[u],m=f.type,s=f.value,c=e[m];c>=0&&(r[c]=parseInt(s,10))}var d=r[3],v=24===d?0:d,h=r[0]+"-"+r[1]+"-"+r[2]+" "+v+":"+r[4]+":"+r[5]+":000",l=+t;return(i.utc(h).valueOf()-(l-=l%1e3))/6e4},m=o.prototype;m.tz=function(e){void 0===e&&(e=r);var t=this.toDate().toLocaleString("en-US",{timeZone:e}),n=Math.round((this.toDate()-new Date(t))/1e3/60),o=i(t).$set("ms",this.$ms).utcOffset(u-n,!0);return o.$x.$timezone=e,o},m.offsetName=function(e){var t=this.$x.$timezone||i.tz.guess(),n=a(this.valueOf(),t,{timeZoneName:e}).find(function(e){return"timezonename"===e.type.toLowerCase()});return n&&n.value},i.tz=function(e,t){void 0===t&&(t=r);var n,o=f(+i(),t);"string"!=typeof e&&(n=i(e)+60*o*1e3);var u=function(e,t,n){var o=e-60*t*1e3,i=f(o,n);if(t===i)return[o,t];var r=f(o-=60*(i-t)*1e3,n);return i===r?[o,i]:[e-60*Math.min(i,r)*1e3,Math.max(i,r)]}(n=n||i.utc(e).valueOf(),o,t),a=u[0],m=u[1],s=i(a).utcOffset(m);return s.$x.$timezone=t,s},i.tz.guess=function(){return Intl.DateTimeFormat().resolvedOptions().timeZone},i.tz.setDefault=function(e){r=e}}});