@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
3 lines (2 loc) • 6.97 kB
JavaScript
/* COPYRIGHT Esri - https://js.arcgis.com/5.0.8/LICENSE.txt */
import{offsetDate as t,convertTime as e}from"../../core/timeUtils.js";import{formatDate as o,getDateTimeFormatter as n}from"../../intl/date.js";import{getLocaleParts as s,getLocaleLanguage as i}from"../../intl/locale.js";import{S as l}from"../../chunks/SunCalc.js";import{css as f}from"../Slider/css.js";import{globalCss as m}from"./globalCss.js";const r={hour:"numeric",minute:"numeric",timeZone:"UTC"},u={hour:"numeric",timeZone:"UTC"};function c(t,e){const n=T(t,e);let s=o(n,r);return 0!==t&&"00:00"===s&&(s="24:00"),"tick"===e&&s.includes(" ")&&(s=o(n,u),s=s.replace(":00","")),s}function z({tickElement:t,labelElement:e,tickClasses:o=[],onClick:n}){t&&e&&(t.classList.add(...o,m.primaryTick),e.classList.add(...o,m.primaryTickLabel),g(e),n&&(e.onclick=t.onclick=()=>n()))}function a(t){if(!t)return;const e=s(),o=e?.language??"",n=e?.region??"";t.querySelectorAll(`.${f.tickLabelElement}`).forEach(t=>{g(t)});const i=["ar","bg","el","en","ko"].includes(o)||"zh"===o&&["HK","TW"].includes(n);t.style.paddingBlockEnd=i?"42px":"28px"}function g(t){t.classList.toggle(m.primaryTickLabelKeepAll,"ko"===i())}function h({tickElement:t,tickClasses:e=[],onClick:o}){t&&(t.classList.add(...e,m.secondaryTick),o&&(t.onclick=()=>o()))}function O(){return n(u).formatToParts(T(0,"value")).some(({type:t})=>"dayPeriod"===t)}function T(t,o){if("tick"===o){const o=Math.round(e(t,"minutes","hours"));return new Date(e(o,"hours","milliseconds"))}return new Date(6e4*t)}function C(e,o,n,s){if(null==o||null==n)return null;const i=l.getTimes(e,o,n),f=i.sunrise,m=i.sunset,r=t(e,s,"hours"),u=t(f,s,"hours"),c=t(m,s,"hours");if(r.getUTCDate()!==u.getUTCDate()||r.getUTCDate()!==c.getUTCDate()){const t=r.getTime()-u.getTime()>0?1:-1;f.setUTCDate(f.getUTCDate()+t),m.setUTCDate(m.getUTCDate()+t)}return{sunrise:f,sunset:m}}function S(t){return[{utcOffset:-12,short:"UTC-12",long:t.timezoneDateline},{utcOffset:-11,short:"UTC-11",long:t.timezoneSamoa},{utcOffset:-10,short:t.timezoneHAST,long:t.timezoneHawaii},{utcOffset:-9,short:t.timezoneAKST,long:t.timezoneAlaska},{utcOffset:-8,short:t.timezonePST,long:t.timezoneBaja},{utcOffset:-7,short:t.timezoneMST,long:t.timezoneMountain},{utcOffset:-7,short:t.timezoneMST,long:t.timezoneLaPaz},{utcOffset:-7,short:t.timezoneMST,long:t.timezoneArizona},{utcOffset:-6,short:t.timezoneCST,long:t.timezoneSaskatchewan},{utcOffset:-6,short:t.timezoneCST,long:t.timezoneCentralAmerica},{utcOffset:-6,short:t.timezoneCST,long:t.timezoneCentralTime},{utcOffset:-6,short:t.timezoneCST,long:t.timezoneMexico},{utcOffset:-5,short:t.timezoneEST,long:t.timezoneEasternUS},{utcOffset:-5,short:t.timezoneEST,long:t.timezoneLima},{utcOffset:-5,short:t.timezoneEST,long:t.timezoneIndiana},{utcOffset:-4,short:null,long:t.timezoneAtlantic},{utcOffset:-4,short:null,long:t.timezoneCuiaba},{utcOffset:-4,short:null,long:t.timezoneSantiago},{utcOffset:-4,short:null,long:t.timezoneManaus},{utcOffset:-4,short:null,long:t.timezoneAsuncion},{utcOffset:-3,short:null,long:t.timezoneBrasilia},{utcOffset:-3,short:null,long:t.timezoneGreenland},{utcOffset:-3,short:null,long:t.timezoneMontevideo},{utcOffset:-3,short:null,long:t.timezoneCayenne},{utcOffset:-3,short:null,long:t.timezoneBuenosAires},{utcOffset:-2,short:null,long:t.timezoneMidAtlantic},{utcOffset:-1,short:null,long:t.timezoneAzores},{utcOffset:-1,short:null,long:t.timezoneCaboVerde},{utcOffset:0,short:null,long:t.timezoneDublin},{utcOffset:0,short:null,long:t.timezoneReykjavik},{utcOffset:0,short:null,long:t.timezoneCasablanca},{utcOffset:1,short:t.timezoneCET,long:t.timezoneBelgrade},{utcOffset:1,short:t.timezoneCET,long:t.timezoneSarajevo},{utcOffset:1,short:t.timezoneCET,long:t.timezoneBrussels},{utcOffset:1,short:t.timezoneCET,long:t.timezoneWCAfrica},{utcOffset:1,short:t.timezoneCET,long:t.timezoneAmsterdam},{utcOffset:1,short:t.timezoneCET,long:t.timezoneWindhoek},{utcOffset:2,short:t.timezoneEET,long:t.timezoneMinsk},{utcOffset:2,short:t.timezoneEET,long:t.timezoneCairo},{utcOffset:2,short:t.timezoneEET,long:t.timezoneHelsinki},{utcOffset:2,short:t.timezoneEET,long:t.timezoneAthens},{utcOffset:2,short:t.timezoneEET,long:t.timezoneJerusalem},{utcOffset:2,short:t.timezoneEET,long:t.timezoneAmman},{utcOffset:2,short:t.timezoneEET,long:t.timezoneBeirut},{utcOffset:2,short:t.timezoneEET,long:t.timezoneHarare},{utcOffset:2,short:t.timezoneEET,long:t.timezoneDamascus},{utcOffset:2,short:t.timezoneEET,long:t.timezoneIstanbul},{utcOffset:3,short:t.timezoneMSK,long:t.timezoneKuwait},{utcOffset:3,short:t.timezoneMSK,long:t.timezoneBaghdad},{utcOffset:3,short:t.timezoneMSK,long:t.timezoneNairobi},{utcOffset:3,short:t.timezoneMSK,long:t.timezoneKaliningrad},{utcOffset:4,short:t.timezoneGST,long:t.timezoneMoscow},{utcOffset:4,short:t.timezoneGST,long:t.timezoneMuscat},{utcOffset:4,short:t.timezoneGST,long:t.timezoneBaku},{utcOffset:4,short:t.timezoneGST,long:t.timezoneYerevan},{utcOffset:4,short:t.timezoneGST,long:t.timezoneTbilisi},{utcOffset:4,short:t.timezoneGST,long:t.timezonePortLouis},{utcOffset:5,short:null,long:t.timezoneTashkent},{utcOffset:5,short:null,long:t.timezoneIslamabad},{utcOffset:6,short:null,long:t.timezoneEkaterinburg},{utcOffset:6,short:null,long:t.timezoneAstana},{utcOffset:6,short:null,long:t.timezoneDhaka},{utcOffset:7,short:t.timezoneICT,long:t.timezoneNovosibirsk},{utcOffset:7,short:t.timezoneICT,long:t.timezoneBangkok},{utcOffset:8,short:t.timezoneCCT,long:t.timezoneKrasnoyarsk},{utcOffset:8,short:t.timezoneCCT,long:t.timezoneBeijing},{utcOffset:8,short:t.timezoneCCT,long:t.timezoneSingapore},{utcOffset:8,short:t.timezoneCCT,long:t.timezoneTaipei},{utcOffset:8,short:t.timezoneCCT,long:t.timezonePerth},{utcOffset:8,short:t.timezoneCCT,long:t.timezoneUlaanbaatar},{utcOffset:9,short:t.timezoneJST,long:t.timezoneIrkutsk},{utcOffset:9,short:t.timezoneJST,long:t.timezoneSeoul},{utcOffset:9,short:t.timezoneJST,long:t.timezoneOsaka},{utcOffset:10,short:t.timezoneAEST,long:t.timezoneYakutsk},{utcOffset:10,short:t.timezoneAEST,long:t.timezoneCanberra},{utcOffset:10,short:t.timezoneAEST,long:t.timezoneBrisbane},{utcOffset:10,short:t.timezoneAEST,long:t.timezoneHobart},{utcOffset:10,short:t.timezoneAEST,long:t.timezoneGuam},{utcOffset:11,short:null,long:t.timezoneVladivostok},{utcOffset:11,short:null,long:t.timezoneSolomon},{utcOffset:12,short:t.timezoneNZST,long:t.timezoneMagadan},{utcOffset:12,short:t.timezoneNZST,long:t.timezoneFiji},{utcOffset:12,short:t.timezoneNZST,long:t.timezoneAuckland},{utcOffset:12,short:t.timezoneNZST,long:t.timezoneNukualofa}].map(({utcOffset:t,short:e,long:o})=>{const n=t>0?`UTC+${t}`:t<0?`UTC${t}`:"GMT";return e?{utcOffset:t,short:e,shortWithUTC:`${n} (${e})`,long:o}:{utcOffset:t,short:n,shortWithUTC:n,long:o}})}export{a as adjustTimeSliderForLocale,c as formatSliderLabel,C as getSunriseAndSunsetTimes,S as getTimezoneInfos,z as onPrimaryTickCreated,h as onSecondaryTickCreated,r as timeStringFormattingOptions,O as useAmPm};