react-semaphor 0.1.246 → 0.1.248
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/dist/chunks/{dashboard-controls-Df35Ggku.js → dashboard-controls-CcBYCUyU.js} +1 -1
- package/dist/chunks/{dashboard-controls-CM3zRWAB.js → dashboard-controls-ftroIaNx.js} +5 -5
- package/dist/chunks/{dashboard-json-Cgd8yP2L.js → dashboard-json-DlMnblcC.js} +1 -1
- package/dist/chunks/{dashboard-json-B8oZ6KB5.js → dashboard-json-NeZhQblG.js} +1 -1
- package/dist/chunks/{dashboard-summary-settings-dialog-BHsvhkQ1.js → dashboard-summary-settings-dialog-BP2d8qXY.js} +1 -1
- package/dist/chunks/{dashboard-summary-settings-dialog-pftsHC1x.js → dashboard-summary-settings-dialog-PIw3yw3g.js} +1 -1
- package/dist/chunks/date-formatter-CqXdM6JO.js +1 -0
- package/dist/chunks/{date-formatter-BeFtqSQ2.js → date-formatter-vkCj9Ct-.js} +207 -203
- package/dist/chunks/edit-dashboard-visual-XRVx1WJw.js +193 -0
- package/dist/chunks/{edit-dashboard-visual-Bw34s1x6.js → edit-dashboard-visual-eZZFFLbw.js} +6900 -6601
- package/dist/chunks/{editor-action-buttons-B2ezYVT4.js → editor-action-buttons-D2GgF45c.js} +2 -2
- package/dist/chunks/{editor-action-buttons-DXsjsv4l.js → editor-action-buttons-tq0tFVfj.js} +1 -1
- package/dist/chunks/{index-C9qmu37e.js → index-CFyPug8b.js} +39210 -38628
- package/dist/chunks/index-DGpLwb-T.js +1109 -0
- package/dist/chunks/{notification-bell-Bws3aQQp.js → notification-bell--dNtQUYL.js} +4 -4
- package/dist/chunks/{notification-bell-DttaqoMO.js → notification-bell-CLFSIKbb.js} +1 -1
- package/dist/chunks/{resource-management-panel-BMNgcD-1.js → resource-management-panel-C1tJjUe9.js} +1 -1
- package/dist/chunks/{resource-management-panel-KeJHHJcg.js → resource-management-panel-DjmiAnYz.js} +2 -2
- package/dist/chunks/{use-visual-utils-Buzoaljj.js → use-visual-utils-B6nZIeae.js} +1 -1
- package/dist/chunks/{use-visual-utils-BkDR14Dn.js → use-visual-utils-Cdc_8imE.js} +1 -1
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/format-utils/index.cjs +1 -1
- package/dist/format-utils/index.js +2 -2
- package/dist/index.cjs +1 -1
- package/dist/index.js +5 -5
- package/dist/style.css +1 -1
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/dashboard.d.ts +13 -1
- package/dist/types/format-utils.d.ts +3 -3
- package/dist/types/main.d.ts +13 -1
- package/dist/types/shared.d.ts +13 -1
- package/dist/types/surfboard.d.ts +13 -1
- package/dist/types/types.d.ts +13 -1
- package/package.json +4 -3
- package/dist/chunks/date-formatter-CZ8p6ngp.js +0 -1
- package/dist/chunks/edit-dashboard-visual-DrolVPud.js +0 -188
- package/dist/chunks/index-B38ZMz4j.js +0 -1109
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("react/jsx-runtime"),s=require("./index-DGpLwb-T.js"),b=require("react");require("react-dom");const _=require("./notification-bell-CLFSIKbb.js"),Ss=require("./date-formatter-CqXdM6JO.js"),Pe=require("./dashboard-summary-settings-dialog-PIw3yw3g.js"),ys=require("./use-debounced-dirty-check-XHSwAefL.js"),xe=require("./normalize-dashboard-for-dirty-check-B7NQDI1H.js"),Fe=require("./editor-action-buttons-tq0tFVfj.js");function Ds(t){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(t){for(const a in t)if(a!=="default"){const r=Object.getOwnPropertyDescriptor(t,a);Object.defineProperty(n,a,r.get?r:{enumerable:!0,get:()=>t[a]})}}return n.default=t,Object.freeze(n)}const w=Ds(b);/**
|
|
2
2
|
* @license lucide-react v0.453.0 - ISC
|
|
3
3
|
*
|
|
4
4
|
* This source code is licensed under the ISC license.
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { jsxs as r, jsx as e, Fragment as M } from "react/jsx-runtime";
|
|
2
|
-
import { bK as Z, cL as wa, u as w, c0 as Ke, c1 as Qe, B as E, c3 as We, c4 as j, cM as Je, N as Es, b as G, e as Xe, cN as xa, b$ as Ye, f as Ze, g as es, h as ss, i as Ls, L as Re, I as oe, v as Da, a4 as V, cO as fe, c8 as Ge, cP as Ca, cQ as Ns, cR as As, c as X, cS as ks, cT as Ea, cq as as, cU as La, cV as Aa, cW as ka, cX as Ma, cY as Oa, cZ as Ia, H as be, c_ as ye, x as k, c$ as Ms, cA as Ta, d0 as _a, w as Y, c7 as H, d1 as Pa, d2 as Ua, d3 as Fe, d4 as Ra, d5 as Ga, d6 as Os, d7 as Is, d8 as ge, d9 as ve, cw as Ve, ce as je, da as qe, c9 as Ts, db as He, dc as _s, dd as Fa, ch as Ps, ci as Us, cj as Rs, ck as Gs, cl as Fs, cm as Vs, cn as js, co as $e, b_ as Va, de as ja, aa as qa, U as Ss, a9 as pe, df as Ha, ag as $a, ab as Te, dg as za, dh as Ba, di as Ka, av as Qa, dj as Wa, dk as Ja, bR as Xa, bS as Ya, bT as Za, dl as et, bV as st, c5 as at, an as tt, dm as rt, dn as nt, dp as ot, dq as it, dr as lt, ds as ct, c2 as dt, a6 as ut, cb as mt, dt as ht, af as pt, a7 as ft, am as gt } from "./index-
|
|
2
|
+
import { bK as Z, cL as wa, u as w, c0 as Ke, c1 as Qe, B as E, c3 as We, c4 as j, cM as Je, N as Es, b as G, e as Xe, cN as xa, b$ as Ye, f as Ze, g as es, h as ss, i as Ls, L as Re, I as oe, v as Da, a4 as V, cO as fe, c8 as Ge, cP as Ca, cQ as Ns, cR as As, c as X, cS as ks, cT as Ea, cq as as, cU as La, cV as Aa, cW as ka, cX as Ma, cY as Oa, cZ as Ia, H as be, c_ as ye, x as k, c$ as Ms, cA as Ta, d0 as _a, w as Y, c7 as H, d1 as Pa, d2 as Ua, d3 as Fe, d4 as Ra, d5 as Ga, d6 as Os, d7 as Is, d8 as ge, d9 as ve, cw as Ve, ce as je, da as qe, c9 as Ts, db as He, dc as _s, dd as Fa, ch as Ps, ci as Us, cj as Rs, ck as Gs, cl as Fs, cm as Vs, cn as js, co as $e, b_ as Va, de as ja, aa as qa, U as Ss, a9 as pe, df as Ha, ag as $a, ab as Te, dg as za, dh as Ba, di as Ka, av as Qa, dj as Wa, dk as Ja, bR as Xa, bS as Ya, bT as Za, dl as et, bV as st, c5 as at, an as tt, dm as rt, dn as nt, dp as ot, dq as it, dr as lt, ds as ct, c2 as dt, a6 as ut, cb as mt, dt as ht, af as pt, a7 as ft, am as gt } from "./index-CFyPug8b.js";
|
|
3
3
|
import * as L from "react";
|
|
4
4
|
import qs, { useState as S, useMemo as q, useEffect as vt, useCallback as bt } from "react";
|
|
5
5
|
import "react-dom";
|
|
6
|
-
import { b as yt, u as Nt, c as St, A as wt, V as xt, N as Dt, U as Ct } from "./notification-bell
|
|
7
|
-
import { l as Et } from "./date-formatter-
|
|
8
|
-
import { C as Lt, D as At } from "./dashboard-summary-settings-dialog-
|
|
6
|
+
import { b as yt, u as Nt, c as St, A as wt, V as xt, N as Dt, U as Ct } from "./notification-bell--dNtQUYL.js";
|
|
7
|
+
import { l as Et } from "./date-formatter-vkCj9Ct-.js";
|
|
8
|
+
import { C as Lt, D as At } from "./dashboard-summary-settings-dialog-BP2d8qXY.js";
|
|
9
9
|
import { u as kt } from "./use-debounced-dirty-check-BwAbnX_5.js";
|
|
10
10
|
import { s as _e } from "./normalize-dashboard-for-dirty-check-Bn27S0PN.js";
|
|
11
|
-
import { S as ws } from "./editor-action-buttons-
|
|
11
|
+
import { S as ws } from "./editor-action-buttons-D2GgF45c.js";
|
|
12
12
|
/**
|
|
13
13
|
* @license lucide-react v0.453.0 - ISC
|
|
14
14
|
*
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsxs as o, jsx as r } from "react/jsx-runtime";
|
|
2
|
-
import { u as s, c as l, B as h, X as d, d as c } from "./index-
|
|
2
|
+
import { u as s, c as l, B as h, X as d, d as c } from "./index-CFyPug8b.js";
|
|
3
3
|
import "react";
|
|
4
4
|
import "react-dom";
|
|
5
5
|
function N() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),a=require("./index-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),a=require("./index-DGpLwb-T.js");require("react");require("react-dom");function i(){const o=a.useDashboardStore(e=>e.dashboard),r=a.useDashboardStore(e=>e.actions.setDashboard),t=a.useDashboardStore(e=>e.showDashboardJSON),n=a.useDashboardStore(e=>e.actions.setShowDashboardJSON);return s.jsxs("div",{className:a.cn("relative p-2",{hidden:!t}),children:[s.jsxs(a.Button,{variant:"secondary",size:"sm",className:"absolute right-2 top-2 z-10 h-8",onClick:()=>n(!1),children:[s.jsx(a.X,{className:"mr-2 h-4 w-4"}),"Close"]}),s.jsx(a.de,{onChange:e=>{if(e)try{JSON.parse(e),r(JSON.parse(e))}catch{}},defaultLanguage:"json",className:"h-[550px] overflow-y-auto",value:JSON.stringify(o,null,2),options:{minimap:{enabled:!1},glyphMargin:!1,wordWrap:"on",scrollbar:{verticalScrollbarSize:0,horizontalScrollbarSize:0},fontSize:12,renderLineHighlight:"none"}})]})}exports.default=i;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as e, jsxs as s, Fragment as oe } from "react/jsx-runtime";
|
|
2
2
|
import de, { useState as h, useCallback as L, useEffect as G, useMemo as z } from "react";
|
|
3
|
-
import { b as ue, e as X, f as Z, g as J, h as K, i as q, R as $, c as C, j as F, L as b, P as me, k as he, B as P, C as fe, l as pe, m as ve, n as be, o as Se, p as ge, q as B, r as O, s as W, t as ye, v as Y, w as we, x as A, S as xe, y as Ne, z as Ce, A as Te, E as ke, F as R, I as Ie } from "./index-
|
|
3
|
+
import { b as ue, e as X, f as Z, g as J, h as K, i as q, R as $, c as C, j as F, L as b, P as me, k as he, B as P, C as fe, l as pe, m as ve, n as be, o as Se, p as ge, q as B, r as O, s as W, t as ye, v as Y, w as we, x as A, S as xe, y as Ne, z as Ce, A as Te, E as ke, F as R, I as Ie } from "./index-CFyPug8b.js";
|
|
4
4
|
function Ee() {
|
|
5
5
|
var k, I, E, N;
|
|
6
6
|
const { authToken: a, tokenProps: r } = ue(), [l, S] = h(!1), [p, g] = h(!1), [x, y] = h(!1), [v, o] = h(null), [u, n] = h(null), w = u || {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";const e=require("react/jsx-runtime"),l=require("react"),a=require("./index-B38ZMz4j.js");function W(){var N,C,T,y;const{authToken:s,tokenProps:r}=a.useSemaphorContext(),[i,S]=l.useState(!1),[x,v]=l.useState(!1),[j,b]=l.useState(!1),[p,u]=l.useState(null),[m,n]=l.useState(null),g=m||{tz:((C=(N=r==null?void 0:r.params)==null?void 0:N.calendarContext)==null?void 0:C.tz)||null,weekStart:((y=(T=r==null?void 0:r.params)==null?void 0:T.calendarContext)==null?void 0:y.weekStart)??null},d=l.useCallback(async()=>{if(!(!(s!=null&&s.accessToken)||!(r!=null&&r.apiServiceUrl))){S(!0),u(null);try{const c=await fetch(`${r.apiServiceUrl}/v1/user-preferences/calendar`,{method:"GET",headers:{Authorization:`Bearer ${s.accessToken}`}});if(!c.ok){const h=await c.json().catch(()=>({}));throw new Error(h.error||"Failed to fetch preferences")}const o=await c.json();n({tz:o.tz,weekStart:o.weekStart,source:o.source,isInherited:o.isInherited,userHasPrefs:o.userHasPrefs,inherited:o.inherited})}catch(c){const o=c instanceof Error?c.message:"Unknown error";u(o)}finally{S(!1)}}},[s,r]);l.useEffect(()=>{d()},[d]);const f=l.useCallback(async c=>{if(!(s!=null&&s.accessToken)||!(r!=null&&r.apiServiceUrl))return u("Not authenticated"),!1;v(!0),u(null);try{const o=await fetch(`${r.apiServiceUrl}/v1/user-preferences/calendar`,{method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${s.accessToken}`},body:JSON.stringify(c)});if(!o.ok){const h=await o.json().catch(()=>({}));throw new Error(h.error||"Failed to update preferences")}return await d(),!0}catch(o){const h=o instanceof Error?o.message:"Unknown error";return u(h),!1}finally{v(!1)}},[s,r,d]),w=l.useCallback(async()=>{if(!(s!=null&&s.accessToken)||!(r!=null&&r.apiServiceUrl))return u("Not authenticated"),!1;b(!0),u(null);try{const c=await fetch(`${r.apiServiceUrl}/v1/user-preferences/calendar`,{method:"DELETE",headers:{Authorization:`Bearer ${s.accessToken}`}});if(!c.ok){const h=await c.json().catch(()=>({}));throw new Error(h.error||"Failed to clear preferences")}const o=await c.text();if(o)try{const h=JSON.parse(o);return n({tz:h.tz,weekStart:h.weekStart,source:h.source,isInherited:h.isInherited??!0,userHasPrefs:!1,inherited:h.inherited}),!0}catch{}return await d(),!0}catch(c){const o=c instanceof Error?c.message:"Unknown error";return u(o),!1}finally{b(!1)}},[s,r,d]);return{preferences:g,isLoading:i,isSaving:x,isClearing:j,error:p,updatePreferences:f,clearPreferences:w,refetch:d}}const I=[{value:"America/New_York",label:"Eastern Time (US & Canada)"},{value:"America/Chicago",label:"Central Time (US & Canada)"},{value:"America/Denver",label:"Mountain Time (US & Canada)"},{value:"America/Los_Angeles",label:"Pacific Time (US & Canada)"},{value:"America/Phoenix",label:"Arizona"},{value:"America/Anchorage",label:"Alaska"},{value:"Pacific/Honolulu",label:"Hawaii"},{value:"Europe/London",label:"London"},{value:"Europe/Paris",label:"Paris, Berlin, Rome"},{value:"Asia/Tokyo",label:"Tokyo"},{value:"Asia/Shanghai",label:"Beijing, Shanghai"},{value:"Asia/Kolkata",label:"Mumbai, New Delhi"},{value:"Australia/Sydney",label:"Sydney"},{value:"UTC",label:"UTC"}],M=[{value:0,label:"Sunday"},{value:1,label:"Monday"},{value:6,label:"Saturday"}];function G(){try{const s=Intl;if(s.supportedValuesOf)return s.supportedValuesOf("timeZone")}catch{}return I.map(s=>s.value)}function V(s){switch(s){case"tenant":return"tenant";case"organization":return"organization";case"system":return"system";default:return"default"}}function L(s){const r=I.find(i=>i.value===s);return r?r.label:s}function X(s){const r=M.find(i=>i.value===s);return r?r.label:String(s)}function q({open:s,onOpenChange:r}){var E,P,A;const{preferences:i,isLoading:S,isSaving:x,isClearing:v,updatePreferences:j,clearPreferences:b}=W(),p=i.tz||((E=i.inherited)==null?void 0:E.tz)||Intl.DateTimeFormat().resolvedOptions().timeZone,u=i.weekStart??((P=i.inherited)==null?void 0:P.weekStart)??1,[m,n]=l.useState(!i.userHasPrefs),[g,d]=l.useState(!1),[f,w]=l.useState(p),[N,C]=l.useState(u),[T,y]=l.useState(!1),c=l.useMemo(()=>G(),[]),o=l.useMemo(()=>c.filter(t=>!I.some(R=>R.value===t)),[c]),h=l.useMemo(()=>L(f),[f]),F=i.inherited?L(i.inherited.tz):"UTC",H=i.inherited?X(i.inherited.weekStart):"Monday",B=V((A=i.inherited)==null?void 0:A.source);l.useEffect(()=>{if(!s){d(!1);return}g||(i.userHasPrefs!==void 0&&n(!i.userHasPrefs),w(p),C(u))},[s,g,i.userHasPrefs,p,u]);const _=async()=>{if(S){a.ue.error("Preferences are still loading. Please try again.");return}m?await b()?(a.ue.success("Now using default settings. Please refresh the page to apply changes.",{duration:5e3}),r(!1)):a.ue.error("Failed to save preferences. Please try again."):await j({tz:f,weekStart:N})?(a.ue.success("Preferences saved. Please refresh the page to apply changes.",{duration:5e3}),r(!1)):a.ue.error("Failed to save preferences. Please try again.")},$=()=>{r(!1)},D=x||v,O=D||S;return e.jsx(a.Dialog,{open:s,onOpenChange:r,children:e.jsxs(a.DialogContent,{className:"sm:max-w-[425px]",children:[e.jsxs(a.DialogHeader,{children:[e.jsx(a.DialogTitle,{children:"Calendar Preferences"}),e.jsx(a.DialogDescription,{children:"Set your timezone and week start preferences for date calculations and displays."})]}),e.jsxs("div",{className:"space-y-6 py-4",children:[e.jsxs(a.RadioGroup,{value:m?"defaults":"custom",onValueChange:t=>{d(!0),n(t==="defaults")},className:"space-y-3",children:[e.jsxs("div",{className:a.cn("flex items-start space-x-3 rounded-lg border p-4 cursor-pointer transition-colors",m?"border-primary bg-primary/5":"border-border hover:border-muted-foreground/50"),onClick:()=>{d(!0),n(!0)},children:[e.jsx(a.RadioGroupItem,{value:"defaults",id:"mode-defaults"}),e.jsxs("div",{className:"flex-1 space-y-1",children:[e.jsxs(a.Label,{htmlFor:"mode-defaults",className:"cursor-pointer font-medium",children:["Use ",B," defaults"]}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:[F,", Week starts ",H]})]})]}),e.jsxs("div",{className:a.cn("flex items-start space-x-3 rounded-lg border p-4 cursor-pointer transition-colors",m?"border-border hover:border-muted-foreground/50":"border-primary bg-primary/5"),onClick:()=>{d(!0),n(!1)},children:[e.jsx(a.RadioGroupItem,{value:"custom",id:"mode-custom"}),e.jsx(a.Label,{htmlFor:"mode-custom",className:"cursor-pointer font-medium",children:"Use custom settings"})]})]}),e.jsxs("div",{className:a.cn("space-y-6 transition-opacity",m&&"opacity-50 pointer-events-none"),children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(a.Label,{children:"Timezone"}),e.jsxs(a.Popover,{open:T,onOpenChange:y,modal:!0,children:[e.jsx(a.PopoverTrigger,{asChild:!0,children:e.jsxs(a.Button,{variant:"outline",role:"combobox","aria-expanded":T,className:"w-full justify-between",disabled:m,children:[h,e.jsx(a.ChevronsUpDown,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(a.PopoverContent,{className:"z-50 w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(a.Command,{className:"overflow-visible",children:[e.jsx(a.CommandInput,{placeholder:"Search timezones..."}),e.jsxs(a.CommandList,{children:[e.jsx(a.CommandEmpty,{children:"No timezone found."}),e.jsx(a.CommandGroup,{heading:"Common",children:I.map(t=>e.jsxs(a.CommandItem,{value:`${t.value} ${t.label}`,onSelect:()=>{d(!0),w(t.value),y(!1)},children:[e.jsx(a.Check,{className:a.cn("mr-2 h-4 w-4",f===t.value?"opacity-100":"opacity-0")}),e.jsx("span",{className:"flex-1",children:t.label}),e.jsx("span",{className:"text-xs text-muted-foreground",children:t.value})]},t.value))}),e.jsx(a.CommandSeparator,{}),e.jsx(a.CommandGroup,{heading:"All Timezones",children:o.map(t=>e.jsxs(a.CommandItem,{value:t,onSelect:()=>{d(!0),w(t),y(!1)},children:[e.jsx(a.Check,{className:a.cn("mr-2 h-4 w-4",f===t?"opacity-100":"opacity-0")}),t]},t))})]})]})})]})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx(a.Label,{children:"Week Starts On"}),e.jsx(a.RadioGroup,{value:String(N),onValueChange:t=>{d(!0),C(Number(t))},className:"flex gap-4",disabled:m,children:M.map(t=>e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(a.RadioGroupItem,{value:String(t.value),id:`week-start-${t.value}`,disabled:m}),e.jsx(a.Label,{htmlFor:`week-start-${t.value}`,className:a.cn("cursor-pointer font-normal",m&&"cursor-not-allowed"),children:t.label})]},t.value))})]})]})]}),e.jsxs(a.DialogFooter,{children:[e.jsx(a.Button,{variant:"outline",onClick:$,disabled:D,children:"Cancel"}),e.jsx(a.Button,{onClick:_,disabled:O,children:D?e.jsxs(e.Fragment,{children:[e.jsx(a.LoaderCircle,{className:"mr-2 h-4 w-4 animate-spin"}),"Saving..."]}):"Save"})]})]})})}const k=6,z=1,U=20;function Z(s){return Number.isNaN(s)?k:Math.min(U,Math.max(z,s))}function J({open:s,onOpenChange:r,dashboard:i,onApply:S,disabled:x=!1}){const[v,j]=l.useState(!1),[b,p]=l.useState("top"),[u,m]=l.useState(String(k)),n=i.summary;l.useEffect(()=>{s&&(j((n==null?void 0:n.enabled)===!0),p((n==null?void 0:n.position)==="bottom"?"bottom":"top"),m(String((n==null?void 0:n.maxItems)??k)))},[s,n==null?void 0:n.enabled,n==null?void 0:n.position,n==null?void 0:n.maxItems]);const g=l.useMemo(()=>Z(Number.parseInt(u||`${k}`,10)),[u]),d=()=>{S({enabled:v,position:b,maxItems:g}),r(!1)};return e.jsx(a.Dialog,{open:s,onOpenChange:r,children:e.jsxs(a.DialogContent,{className:"sm:max-w-[420px]",children:[e.jsxs(a.DialogHeader,{children:[e.jsx(a.DialogTitle,{children:"Summary Settings"}),e.jsx(a.DialogDescription,{children:"Configure dashboard-level summary display. Card-level summary settings still control which cards contribute."})]}),e.jsxs("div",{className:"space-y-4 py-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(a.Label,{htmlFor:"dashboard-summary-enabled",children:"Enable Dashboard Summary"}),e.jsx(a.SmallSwitch,{id:"dashboard-summary-enabled",checked:v,disabled:x,onCheckedChange:j})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(a.Label,{htmlFor:"dashboard-summary-position",children:"Position"}),e.jsxs(a.Select,{value:b,disabled:x,onValueChange:f=>p(f),children:[e.jsx(a.SelectTrigger,{id:"dashboard-summary-position",children:e.jsx(a.SelectValue,{placeholder:"Select position"})}),e.jsxs(a.SelectContent,{children:[e.jsx(a.SelectItem,{value:"top",children:"Top"}),e.jsx(a.SelectItem,{value:"bottom",children:"Bottom"})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(a.Label,{htmlFor:"dashboard-summary-max-items",children:"Max Items"}),e.jsx(a.Input,{id:"dashboard-summary-max-items",type:"number",min:z,max:U,disabled:x,value:u,onChange:f=>m(f.target.value),onBlur:()=>m(String(g))}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Display limit only. Computation is unchanged."})]}),x&&e.jsx("p",{className:"text-xs text-amber-700",children:"Enter dashboard edit mode to modify summary settings."})]}),e.jsxs(a.DialogFooter,{children:[e.jsx(a.Button,{variant:"outline",onClick:()=>r(!1),children:"Cancel"}),e.jsx(a.Button,{onClick:d,disabled:x,children:"Apply"})]})]})})}exports.CalendarPreferencesDialog=q;exports.DashboardSummarySettingsDialog=J;
|
|
1
|
+
"use strict";const e=require("react/jsx-runtime"),l=require("react"),a=require("./index-DGpLwb-T.js");function W(){var N,C,T,y;const{authToken:s,tokenProps:r}=a.useSemaphorContext(),[i,S]=l.useState(!1),[x,v]=l.useState(!1),[j,b]=l.useState(!1),[p,u]=l.useState(null),[m,n]=l.useState(null),g=m||{tz:((C=(N=r==null?void 0:r.params)==null?void 0:N.calendarContext)==null?void 0:C.tz)||null,weekStart:((y=(T=r==null?void 0:r.params)==null?void 0:T.calendarContext)==null?void 0:y.weekStart)??null},d=l.useCallback(async()=>{if(!(!(s!=null&&s.accessToken)||!(r!=null&&r.apiServiceUrl))){S(!0),u(null);try{const c=await fetch(`${r.apiServiceUrl}/v1/user-preferences/calendar`,{method:"GET",headers:{Authorization:`Bearer ${s.accessToken}`}});if(!c.ok){const h=await c.json().catch(()=>({}));throw new Error(h.error||"Failed to fetch preferences")}const o=await c.json();n({tz:o.tz,weekStart:o.weekStart,source:o.source,isInherited:o.isInherited,userHasPrefs:o.userHasPrefs,inherited:o.inherited})}catch(c){const o=c instanceof Error?c.message:"Unknown error";u(o)}finally{S(!1)}}},[s,r]);l.useEffect(()=>{d()},[d]);const f=l.useCallback(async c=>{if(!(s!=null&&s.accessToken)||!(r!=null&&r.apiServiceUrl))return u("Not authenticated"),!1;v(!0),u(null);try{const o=await fetch(`${r.apiServiceUrl}/v1/user-preferences/calendar`,{method:"PATCH",headers:{"Content-Type":"application/json",Authorization:`Bearer ${s.accessToken}`},body:JSON.stringify(c)});if(!o.ok){const h=await o.json().catch(()=>({}));throw new Error(h.error||"Failed to update preferences")}return await d(),!0}catch(o){const h=o instanceof Error?o.message:"Unknown error";return u(h),!1}finally{v(!1)}},[s,r,d]),w=l.useCallback(async()=>{if(!(s!=null&&s.accessToken)||!(r!=null&&r.apiServiceUrl))return u("Not authenticated"),!1;b(!0),u(null);try{const c=await fetch(`${r.apiServiceUrl}/v1/user-preferences/calendar`,{method:"DELETE",headers:{Authorization:`Bearer ${s.accessToken}`}});if(!c.ok){const h=await c.json().catch(()=>({}));throw new Error(h.error||"Failed to clear preferences")}const o=await c.text();if(o)try{const h=JSON.parse(o);return n({tz:h.tz,weekStart:h.weekStart,source:h.source,isInherited:h.isInherited??!0,userHasPrefs:!1,inherited:h.inherited}),!0}catch{}return await d(),!0}catch(c){const o=c instanceof Error?c.message:"Unknown error";return u(o),!1}finally{b(!1)}},[s,r,d]);return{preferences:g,isLoading:i,isSaving:x,isClearing:j,error:p,updatePreferences:f,clearPreferences:w,refetch:d}}const I=[{value:"America/New_York",label:"Eastern Time (US & Canada)"},{value:"America/Chicago",label:"Central Time (US & Canada)"},{value:"America/Denver",label:"Mountain Time (US & Canada)"},{value:"America/Los_Angeles",label:"Pacific Time (US & Canada)"},{value:"America/Phoenix",label:"Arizona"},{value:"America/Anchorage",label:"Alaska"},{value:"Pacific/Honolulu",label:"Hawaii"},{value:"Europe/London",label:"London"},{value:"Europe/Paris",label:"Paris, Berlin, Rome"},{value:"Asia/Tokyo",label:"Tokyo"},{value:"Asia/Shanghai",label:"Beijing, Shanghai"},{value:"Asia/Kolkata",label:"Mumbai, New Delhi"},{value:"Australia/Sydney",label:"Sydney"},{value:"UTC",label:"UTC"}],M=[{value:0,label:"Sunday"},{value:1,label:"Monday"},{value:6,label:"Saturday"}];function G(){try{const s=Intl;if(s.supportedValuesOf)return s.supportedValuesOf("timeZone")}catch{}return I.map(s=>s.value)}function V(s){switch(s){case"tenant":return"tenant";case"organization":return"organization";case"system":return"system";default:return"default"}}function L(s){const r=I.find(i=>i.value===s);return r?r.label:s}function X(s){const r=M.find(i=>i.value===s);return r?r.label:String(s)}function q({open:s,onOpenChange:r}){var E,P,A;const{preferences:i,isLoading:S,isSaving:x,isClearing:v,updatePreferences:j,clearPreferences:b}=W(),p=i.tz||((E=i.inherited)==null?void 0:E.tz)||Intl.DateTimeFormat().resolvedOptions().timeZone,u=i.weekStart??((P=i.inherited)==null?void 0:P.weekStart)??1,[m,n]=l.useState(!i.userHasPrefs),[g,d]=l.useState(!1),[f,w]=l.useState(p),[N,C]=l.useState(u),[T,y]=l.useState(!1),c=l.useMemo(()=>G(),[]),o=l.useMemo(()=>c.filter(t=>!I.some(R=>R.value===t)),[c]),h=l.useMemo(()=>L(f),[f]),F=i.inherited?L(i.inherited.tz):"UTC",H=i.inherited?X(i.inherited.weekStart):"Monday",B=V((A=i.inherited)==null?void 0:A.source);l.useEffect(()=>{if(!s){d(!1);return}g||(i.userHasPrefs!==void 0&&n(!i.userHasPrefs),w(p),C(u))},[s,g,i.userHasPrefs,p,u]);const _=async()=>{if(S){a.ue.error("Preferences are still loading. Please try again.");return}m?await b()?(a.ue.success("Now using default settings. Please refresh the page to apply changes.",{duration:5e3}),r(!1)):a.ue.error("Failed to save preferences. Please try again."):await j({tz:f,weekStart:N})?(a.ue.success("Preferences saved. Please refresh the page to apply changes.",{duration:5e3}),r(!1)):a.ue.error("Failed to save preferences. Please try again.")},$=()=>{r(!1)},D=x||v,O=D||S;return e.jsx(a.Dialog,{open:s,onOpenChange:r,children:e.jsxs(a.DialogContent,{className:"sm:max-w-[425px]",children:[e.jsxs(a.DialogHeader,{children:[e.jsx(a.DialogTitle,{children:"Calendar Preferences"}),e.jsx(a.DialogDescription,{children:"Set your timezone and week start preferences for date calculations and displays."})]}),e.jsxs("div",{className:"space-y-6 py-4",children:[e.jsxs(a.RadioGroup,{value:m?"defaults":"custom",onValueChange:t=>{d(!0),n(t==="defaults")},className:"space-y-3",children:[e.jsxs("div",{className:a.cn("flex items-start space-x-3 rounded-lg border p-4 cursor-pointer transition-colors",m?"border-primary bg-primary/5":"border-border hover:border-muted-foreground/50"),onClick:()=>{d(!0),n(!0)},children:[e.jsx(a.RadioGroupItem,{value:"defaults",id:"mode-defaults"}),e.jsxs("div",{className:"flex-1 space-y-1",children:[e.jsxs(a.Label,{htmlFor:"mode-defaults",className:"cursor-pointer font-medium",children:["Use ",B," defaults"]}),e.jsxs("p",{className:"text-sm text-muted-foreground",children:[F,", Week starts ",H]})]})]}),e.jsxs("div",{className:a.cn("flex items-start space-x-3 rounded-lg border p-4 cursor-pointer transition-colors",m?"border-border hover:border-muted-foreground/50":"border-primary bg-primary/5"),onClick:()=>{d(!0),n(!1)},children:[e.jsx(a.RadioGroupItem,{value:"custom",id:"mode-custom"}),e.jsx(a.Label,{htmlFor:"mode-custom",className:"cursor-pointer font-medium",children:"Use custom settings"})]})]}),e.jsxs("div",{className:a.cn("space-y-6 transition-opacity",m&&"opacity-50 pointer-events-none"),children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(a.Label,{children:"Timezone"}),e.jsxs(a.Popover,{open:T,onOpenChange:y,modal:!0,children:[e.jsx(a.PopoverTrigger,{asChild:!0,children:e.jsxs(a.Button,{variant:"outline",role:"combobox","aria-expanded":T,className:"w-full justify-between",disabled:m,children:[h,e.jsx(a.ChevronsUpDown,{className:"ml-2 h-4 w-4 shrink-0 opacity-50"})]})}),e.jsx(a.PopoverContent,{className:"z-50 w-[--radix-popover-trigger-width] p-0",align:"start",children:e.jsxs(a.Command,{className:"overflow-visible",children:[e.jsx(a.CommandInput,{placeholder:"Search timezones..."}),e.jsxs(a.CommandList,{children:[e.jsx(a.CommandEmpty,{children:"No timezone found."}),e.jsx(a.CommandGroup,{heading:"Common",children:I.map(t=>e.jsxs(a.CommandItem,{value:`${t.value} ${t.label}`,onSelect:()=>{d(!0),w(t.value),y(!1)},children:[e.jsx(a.Check,{className:a.cn("mr-2 h-4 w-4",f===t.value?"opacity-100":"opacity-0")}),e.jsx("span",{className:"flex-1",children:t.label}),e.jsx("span",{className:"text-xs text-muted-foreground",children:t.value})]},t.value))}),e.jsx(a.CommandSeparator,{}),e.jsx(a.CommandGroup,{heading:"All Timezones",children:o.map(t=>e.jsxs(a.CommandItem,{value:t,onSelect:()=>{d(!0),w(t),y(!1)},children:[e.jsx(a.Check,{className:a.cn("mr-2 h-4 w-4",f===t?"opacity-100":"opacity-0")}),t]},t))})]})]})})]})]}),e.jsxs("div",{className:"space-y-3",children:[e.jsx(a.Label,{children:"Week Starts On"}),e.jsx(a.RadioGroup,{value:String(N),onValueChange:t=>{d(!0),C(Number(t))},className:"flex gap-4",disabled:m,children:M.map(t=>e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(a.RadioGroupItem,{value:String(t.value),id:`week-start-${t.value}`,disabled:m}),e.jsx(a.Label,{htmlFor:`week-start-${t.value}`,className:a.cn("cursor-pointer font-normal",m&&"cursor-not-allowed"),children:t.label})]},t.value))})]})]})]}),e.jsxs(a.DialogFooter,{children:[e.jsx(a.Button,{variant:"outline",onClick:$,disabled:D,children:"Cancel"}),e.jsx(a.Button,{onClick:_,disabled:O,children:D?e.jsxs(e.Fragment,{children:[e.jsx(a.LoaderCircle,{className:"mr-2 h-4 w-4 animate-spin"}),"Saving..."]}):"Save"})]})]})})}const k=6,z=1,U=20;function Z(s){return Number.isNaN(s)?k:Math.min(U,Math.max(z,s))}function J({open:s,onOpenChange:r,dashboard:i,onApply:S,disabled:x=!1}){const[v,j]=l.useState(!1),[b,p]=l.useState("top"),[u,m]=l.useState(String(k)),n=i.summary;l.useEffect(()=>{s&&(j((n==null?void 0:n.enabled)===!0),p((n==null?void 0:n.position)==="bottom"?"bottom":"top"),m(String((n==null?void 0:n.maxItems)??k)))},[s,n==null?void 0:n.enabled,n==null?void 0:n.position,n==null?void 0:n.maxItems]);const g=l.useMemo(()=>Z(Number.parseInt(u||`${k}`,10)),[u]),d=()=>{S({enabled:v,position:b,maxItems:g}),r(!1)};return e.jsx(a.Dialog,{open:s,onOpenChange:r,children:e.jsxs(a.DialogContent,{className:"sm:max-w-[420px]",children:[e.jsxs(a.DialogHeader,{children:[e.jsx(a.DialogTitle,{children:"Summary Settings"}),e.jsx(a.DialogDescription,{children:"Configure dashboard-level summary display. Card-level summary settings still control which cards contribute."})]}),e.jsxs("div",{className:"space-y-4 py-2",children:[e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsx(a.Label,{htmlFor:"dashboard-summary-enabled",children:"Enable Dashboard Summary"}),e.jsx(a.SmallSwitch,{id:"dashboard-summary-enabled",checked:v,disabled:x,onCheckedChange:j})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(a.Label,{htmlFor:"dashboard-summary-position",children:"Position"}),e.jsxs(a.Select,{value:b,disabled:x,onValueChange:f=>p(f),children:[e.jsx(a.SelectTrigger,{id:"dashboard-summary-position",children:e.jsx(a.SelectValue,{placeholder:"Select position"})}),e.jsxs(a.SelectContent,{children:[e.jsx(a.SelectItem,{value:"top",children:"Top"}),e.jsx(a.SelectItem,{value:"bottom",children:"Bottom"})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(a.Label,{htmlFor:"dashboard-summary-max-items",children:"Max Items"}),e.jsx(a.Input,{id:"dashboard-summary-max-items",type:"number",min:z,max:U,disabled:x,value:u,onChange:f=>m(f.target.value),onBlur:()=>m(String(g))}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Display limit only. Computation is unchanged."})]}),x&&e.jsx("p",{className:"text-xs text-amber-700",children:"Enter dashboard edit mode to modify summary settings."})]}),e.jsxs(a.DialogFooter,{children:[e.jsx(a.Button,{variant:"outline",onClick:()=>r(!1),children:"Cancel"}),e.jsx(a.Button,{onClick:d,disabled:x,children:"Apply"})]})]})})}exports.CalendarPreferencesDialog=q;exports.DashboardSummarySettingsDialog=J;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const Ce={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}},Ee=(t,e,n)=>{let r;const a=Ce[t];return typeof a=="string"?r=a:e===1?r=a.one:r=a.other.replace("{{count}}",e.toString()),n!=null&&n.addSuffix?n.comparison&&n.comparison>0?"in "+r:r+" ago":r};function X(t){return(e={})=>{const n=e.width?String(e.width):t.defaultWidth;return t.formats[n]||t.formats[t.defaultWidth]}}const Fe={full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},$e={full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},He={full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},Le={date:X({formats:Fe,defaultWidth:"full"}),time:X({formats:$e,defaultWidth:"full"}),dateTime:X({formats:He,defaultWidth:"full"})},_e={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"},Xe=(t,e,n,r)=>_e[t];function S(t){return(e,n)=>{const r=n!=null&&n.context?String(n.context):"standalone";let a;if(r==="formatting"&&t.formattingValues){const c=t.defaultFormattingWidth||t.defaultWidth,u=n!=null&&n.width?String(n.width):c;a=t.formattingValues[u]||t.formattingValues[c]}else{const c=t.defaultWidth,u=n!=null&&n.width?String(n.width):t.defaultWidth;a=t.values[u]||t.values[c]}const i=t.argumentCallback?t.argumentCallback(e):e;return a[i]}}const Ue={narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},Ze={narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},Ae={narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},Ge={narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},qe={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},Re={narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},ze=(t,e)=>{const n=Number(t),r=n%100;if(r>20||r<10)switch(r%10){case 1:return n+"st";case 2:return n+"nd";case 3:return n+"rd"}return n+"th"},je={ordinalNumber:ze,era:S({values:Ue,defaultWidth:"wide"}),quarter:S({values:Ze,defaultWidth:"wide",argumentCallback:t=>t-1}),month:S({values:Ae,defaultWidth:"wide"}),day:S({values:Ge,defaultWidth:"wide"}),dayPeriod:S({values:qe,defaultWidth:"wide",formattingValues:Re,defaultFormattingWidth:"wide"})};function W(t){return(e,n={})=>{const r=n.width,a=r&&t.matchPatterns[r]||t.matchPatterns[t.defaultMatchWidth],i=e.match(a);if(!i)return null;const c=i[0],u=r&&t.parsePatterns[r]||t.parsePatterns[t.defaultParseWidth],s=Array.isArray(u)?Qe(u,D=>D.test(c)):Be(u,D=>D.test(c));let f;f=t.valueCallback?t.valueCallback(s):s,f=n.valueCallback?n.valueCallback(f):f;const d=e.slice(c.length);return{value:f,rest:d}}}function Be(t,e){for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)&&e(t[n]))return n}function Qe(t,e){for(let n=0;n<t.length;n++)if(e(t[n]))return n}function Ve(t){return(e,n={})=>{const r=e.match(t.matchPattern);if(!r)return null;const a=r[0],i=e.match(t.parsePattern);if(!i)return null;let c=t.valueCallback?t.valueCallback(i[0]):i[0];c=n.valueCallback?n.valueCallback(c):c;const u=e.slice(a.length);return{value:c,rest:u}}}const Je=/^(\d+)(th|st|nd|rd)?/i,Ke=/\d+/i,pe={narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},et={any:[/^b/i,/^(a|c)/i]},tt={narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},nt={any:[/1/i,/2/i,/3/i,/4/i]},rt={narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},at={narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},it={narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},ct={narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},ut={narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},st={any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},ft={ordinalNumber:Ve({matchPattern:Je,parsePattern:Ke,valueCallback:t=>parseInt(t,10)}),era:W({matchPatterns:pe,defaultMatchWidth:"wide",parsePatterns:et,defaultParseWidth:"any"}),quarter:W({matchPatterns:tt,defaultMatchWidth:"wide",parsePatterns:nt,defaultParseWidth:"any",valueCallback:t=>t+1}),month:W({matchPatterns:rt,defaultMatchWidth:"wide",parsePatterns:at,defaultParseWidth:"any"}),day:W({matchPatterns:it,defaultMatchWidth:"wide",parsePatterns:ct,defaultParseWidth:"any"}),dayPeriod:W({matchPatterns:ut,defaultMatchWidth:"any",parsePatterns:st,defaultParseWidth:"any"})},Me={code:"en-US",formatDistance:Ee,formatLong:Le,formatRelative:Xe,localize:je,match:ft,options:{weekStartsOn:0,firstWeekContainsDate:1}};let ot={};function P(){return ot}const xe=6048e5,lt=864e5,dt=6e4,mt=36e5,v=43200,ee=1440;function l(t){const e=Object.prototype.toString.call(t);return t instanceof Date||typeof t=="object"&&e==="[object Date]"?new t.constructor(+t):typeof t=="number"||e==="[object Number]"||typeof t=="string"||e==="[object String]"?new Date(t):new Date(NaN)}function te(t){const e=l(t);return e.setHours(0,0,0,0),e}function E(t){const e=l(t),n=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return n.setUTCFullYear(e.getFullYear()),+t-+n}function ht(t,e){const n=te(t),r=te(e),a=+n-E(n),i=+r-E(r);return Math.round((a-i)/lt)}function x(t,e){return t instanceof Date?new t.constructor(e):new Date(e)}function gt(t){const e=l(t),n=x(t,0);return n.setFullYear(e.getFullYear(),0,1),n.setHours(0,0,0,0),n}function wt(t){const e=l(t);return ht(e,gt(e))+1}function k(t,e){var u,s,f,d;const n=P(),r=(e==null?void 0:e.weekStartsOn)??((s=(u=e==null?void 0:e.locale)==null?void 0:u.options)==null?void 0:s.weekStartsOn)??n.weekStartsOn??((d=(f=n.locale)==null?void 0:f.options)==null?void 0:d.weekStartsOn)??0,a=l(t),i=a.getDay(),c=(i<r?7:0)+i-r;return a.setDate(a.getDate()-c),a.setHours(0,0,0,0),a}function F(t){return k(t,{weekStartsOn:1})}function Te(t){const e=l(t),n=e.getFullYear(),r=x(t,0);r.setFullYear(n+1,0,4),r.setHours(0,0,0,0);const a=F(r),i=x(t,0);i.setFullYear(n,0,4),i.setHours(0,0,0,0);const c=F(i);return e.getTime()>=a.getTime()?n+1:e.getTime()>=c.getTime()?n:n-1}function Dt(t){const e=Te(t),n=x(t,0);return n.setFullYear(e,0,4),n.setHours(0,0,0,0),F(n)}function yt(t){const e=l(t),n=+F(e)-+Dt(e);return Math.round(n/xe)+1}function Ne(t,e){var d,D,m,y;const n=l(t),r=n.getFullYear(),a=P(),i=(e==null?void 0:e.firstWeekContainsDate)??((D=(d=e==null?void 0:e.locale)==null?void 0:d.options)==null?void 0:D.firstWeekContainsDate)??a.firstWeekContainsDate??((y=(m=a.locale)==null?void 0:m.options)==null?void 0:y.firstWeekContainsDate)??1,c=x(t,0);c.setFullYear(r+1,0,i),c.setHours(0,0,0,0);const u=k(c,e),s=x(t,0);s.setFullYear(r,0,i),s.setHours(0,0,0,0);const f=k(s,e);return n.getTime()>=u.getTime()?r+1:n.getTime()>=f.getTime()?r:r-1}function Mt(t,e){var u,s,f,d;const n=P(),r=(e==null?void 0:e.firstWeekContainsDate)??((s=(u=e==null?void 0:e.locale)==null?void 0:u.options)==null?void 0:s.firstWeekContainsDate)??n.firstWeekContainsDate??((d=(f=n.locale)==null?void 0:f.options)==null?void 0:d.firstWeekContainsDate)??1,a=Ne(t,e),i=x(t,0);return i.setFullYear(a,0,r),i.setHours(0,0,0,0),k(i,e)}function xt(t,e){const n=l(t),r=+k(n,e)-+Mt(n,e);return Math.round(r/xe)+1}function o(t,e){const n=t<0?"-":"",r=Math.abs(t).toString().padStart(e,"0");return n+r}const T={y(t,e){const n=t.getFullYear(),r=n>0?n:1-n;return o(e==="yy"?r%100:r,e.length)},M(t,e){const n=t.getMonth();return e==="M"?String(n+1):o(n+1,2)},d(t,e){return o(t.getDate(),e.length)},a(t,e){const n=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.toUpperCase();case"aaa":return n;case"aaaaa":return n[0];case"aaaa":default:return n==="am"?"a.m.":"p.m."}},h(t,e){return o(t.getHours()%12||12,e.length)},H(t,e){return o(t.getHours(),e.length)},m(t,e){return o(t.getMinutes(),e.length)},s(t,e){return o(t.getSeconds(),e.length)},S(t,e){const n=e.length,r=t.getMilliseconds(),a=Math.trunc(r*Math.pow(10,n-3));return o(a,e.length)}},b={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},ne={G:function(t,e,n){const r=t.getFullYear()>0?1:0;switch(e){case"G":case"GG":case"GGG":return n.era(r,{width:"abbreviated"});case"GGGGG":return n.era(r,{width:"narrow"});case"GGGG":default:return n.era(r,{width:"wide"})}},y:function(t,e,n){if(e==="yo"){const r=t.getFullYear(),a=r>0?r:1-r;return n.ordinalNumber(a,{unit:"year"})}return T.y(t,e)},Y:function(t,e,n,r){const a=Ne(t,r),i=a>0?a:1-a;if(e==="YY"){const c=i%100;return o(c,2)}return e==="Yo"?n.ordinalNumber(i,{unit:"year"}):o(i,e.length)},R:function(t,e){const n=Te(t);return o(n,e.length)},u:function(t,e){const n=t.getFullYear();return o(n,e.length)},Q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"Q":return String(r);case"QQ":return o(r,2);case"Qo":return n.ordinalNumber(r,{unit:"quarter"});case"QQQ":return n.quarter(r,{width:"abbreviated",context:"formatting"});case"QQQQQ":return n.quarter(r,{width:"narrow",context:"formatting"});case"QQQQ":default:return n.quarter(r,{width:"wide",context:"formatting"})}},q:function(t,e,n){const r=Math.ceil((t.getMonth()+1)/3);switch(e){case"q":return String(r);case"qq":return o(r,2);case"qo":return n.ordinalNumber(r,{unit:"quarter"});case"qqq":return n.quarter(r,{width:"abbreviated",context:"standalone"});case"qqqqq":return n.quarter(r,{width:"narrow",context:"standalone"});case"qqqq":default:return n.quarter(r,{width:"wide",context:"standalone"})}},M:function(t,e,n){const r=t.getMonth();switch(e){case"M":case"MM":return T.M(t,e);case"Mo":return n.ordinalNumber(r+1,{unit:"month"});case"MMM":return n.month(r,{width:"abbreviated",context:"formatting"});case"MMMMM":return n.month(r,{width:"narrow",context:"formatting"});case"MMMM":default:return n.month(r,{width:"wide",context:"formatting"})}},L:function(t,e,n){const r=t.getMonth();switch(e){case"L":return String(r+1);case"LL":return o(r+1,2);case"Lo":return n.ordinalNumber(r+1,{unit:"month"});case"LLL":return n.month(r,{width:"abbreviated",context:"standalone"});case"LLLLL":return n.month(r,{width:"narrow",context:"standalone"});case"LLLL":default:return n.month(r,{width:"wide",context:"standalone"})}},w:function(t,e,n,r){const a=xt(t,r);return e==="wo"?n.ordinalNumber(a,{unit:"week"}):o(a,e.length)},I:function(t,e,n){const r=yt(t);return e==="Io"?n.ordinalNumber(r,{unit:"week"}):o(r,e.length)},d:function(t,e,n){return e==="do"?n.ordinalNumber(t.getDate(),{unit:"date"}):T.d(t,e)},D:function(t,e,n){const r=wt(t);return e==="Do"?n.ordinalNumber(r,{unit:"dayOfYear"}):o(r,e.length)},E:function(t,e,n){const r=t.getDay();switch(e){case"E":case"EE":case"EEE":return n.day(r,{width:"abbreviated",context:"formatting"});case"EEEEE":return n.day(r,{width:"narrow",context:"formatting"});case"EEEEEE":return n.day(r,{width:"short",context:"formatting"});case"EEEE":default:return n.day(r,{width:"wide",context:"formatting"})}},e:function(t,e,n,r){const a=t.getDay(),i=(a-r.weekStartsOn+8)%7||7;switch(e){case"e":return String(i);case"ee":return o(i,2);case"eo":return n.ordinalNumber(i,{unit:"day"});case"eee":return n.day(a,{width:"abbreviated",context:"formatting"});case"eeeee":return n.day(a,{width:"narrow",context:"formatting"});case"eeeeee":return n.day(a,{width:"short",context:"formatting"});case"eeee":default:return n.day(a,{width:"wide",context:"formatting"})}},c:function(t,e,n,r){const a=t.getDay(),i=(a-r.weekStartsOn+8)%7||7;switch(e){case"c":return String(i);case"cc":return o(i,e.length);case"co":return n.ordinalNumber(i,{unit:"day"});case"ccc":return n.day(a,{width:"abbreviated",context:"standalone"});case"ccccc":return n.day(a,{width:"narrow",context:"standalone"});case"cccccc":return n.day(a,{width:"short",context:"standalone"});case"cccc":default:return n.day(a,{width:"wide",context:"standalone"})}},i:function(t,e,n){const r=t.getDay(),a=r===0?7:r;switch(e){case"i":return String(a);case"ii":return o(a,e.length);case"io":return n.ordinalNumber(a,{unit:"day"});case"iii":return n.day(r,{width:"abbreviated",context:"formatting"});case"iiiii":return n.day(r,{width:"narrow",context:"formatting"});case"iiiiii":return n.day(r,{width:"short",context:"formatting"});case"iiii":default:return n.day(r,{width:"wide",context:"formatting"})}},a:function(t,e,n){const a=t.getHours()/12>=1?"pm":"am";switch(e){case"a":case"aa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"aaa":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"aaaa":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},b:function(t,e,n){const r=t.getHours();let a;switch(r===12?a=b.noon:r===0?a=b.midnight:a=r/12>=1?"pm":"am",e){case"b":case"bb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"bbb":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"bbbb":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},B:function(t,e,n){const r=t.getHours();let a;switch(r>=17?a=b.evening:r>=12?a=b.afternoon:r>=4?a=b.morning:a=b.night,e){case"B":case"BB":case"BBB":return n.dayPeriod(a,{width:"abbreviated",context:"formatting"});case"BBBBB":return n.dayPeriod(a,{width:"narrow",context:"formatting"});case"BBBB":default:return n.dayPeriod(a,{width:"wide",context:"formatting"})}},h:function(t,e,n){if(e==="ho"){let r=t.getHours()%12;return r===0&&(r=12),n.ordinalNumber(r,{unit:"hour"})}return T.h(t,e)},H:function(t,e,n){return e==="Ho"?n.ordinalNumber(t.getHours(),{unit:"hour"}):T.H(t,e)},K:function(t,e,n){const r=t.getHours()%12;return e==="Ko"?n.ordinalNumber(r,{unit:"hour"}):o(r,e.length)},k:function(t,e,n){let r=t.getHours();return r===0&&(r=24),e==="ko"?n.ordinalNumber(r,{unit:"hour"}):o(r,e.length)},m:function(t,e,n){return e==="mo"?n.ordinalNumber(t.getMinutes(),{unit:"minute"}):T.m(t,e)},s:function(t,e,n){return e==="so"?n.ordinalNumber(t.getSeconds(),{unit:"second"}):T.s(t,e)},S:function(t,e){return T.S(t,e)},X:function(t,e,n){const r=t.getTimezoneOffset();if(r===0)return"Z";switch(e){case"X":return ae(r);case"XXXX":case"XX":return N(r);case"XXXXX":case"XXX":default:return N(r,":")}},x:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"x":return ae(r);case"xxxx":case"xx":return N(r);case"xxxxx":case"xxx":default:return N(r,":")}},O:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"O":case"OO":case"OOO":return"GMT"+re(r,":");case"OOOO":default:return"GMT"+N(r,":")}},z:function(t,e,n){const r=t.getTimezoneOffset();switch(e){case"z":case"zz":case"zzz":return"GMT"+re(r,":");case"zzzz":default:return"GMT"+N(r,":")}},t:function(t,e,n){const r=Math.trunc(t.getTime()/1e3);return o(r,e.length)},T:function(t,e,n){const r=t.getTime();return o(r,e.length)}};function re(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=Math.trunc(r/60),i=r%60;return i===0?n+String(a):n+String(a)+e+o(i,2)}function ae(t,e){return t%60===0?(t>0?"-":"+")+o(Math.abs(t)/60,2):N(t,e)}function N(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=o(Math.trunc(r/60),2),i=o(r%60,2);return n+a+e+i}const ie=(t,e)=>{switch(t){case"P":return e.date({width:"short"});case"PP":return e.date({width:"medium"});case"PPP":return e.date({width:"long"});case"PPPP":default:return e.date({width:"full"})}},Oe=(t,e)=>{switch(t){case"p":return e.time({width:"short"});case"pp":return e.time({width:"medium"});case"ppp":return e.time({width:"long"});case"pppp":default:return e.time({width:"full"})}},Tt=(t,e)=>{const n=t.match(/(P+)(p+)?/)||[],r=n[1],a=n[2];if(!a)return ie(t,e);let i;switch(r){case"P":i=e.dateTime({width:"short"});break;case"PP":i=e.dateTime({width:"medium"});break;case"PPP":i=e.dateTime({width:"long"});break;case"PPPP":default:i=e.dateTime({width:"full"});break}return i.replace("{{date}}",ie(r,e)).replace("{{time}}",Oe(a,e))},Nt={p:Oe,P:Tt},Ot=/^D+$/,bt=/^Y+$/,Yt=["D","DD","YY","YYYY"];function Pt(t){return Ot.test(t)}function It(t){return bt.test(t)}function St(t,e,n){const r=Wt(t,e,n);if(console.warn(r),Yt.includes(t))throw new RangeError(r)}function Wt(t,e,n){const r=t[0]==="Y"?"years":"days of the month";return`Use \`${t.toLowerCase()}\` instead of \`${t}\` (in \`${e}\`) for formatting ${r} to the input \`${n}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}function kt(t){return t instanceof Date||typeof t=="object"&&Object.prototype.toString.call(t)==="[object Date]"}function vt(t){if(!kt(t)&&typeof t!="number")return!1;const e=l(t);return!isNaN(Number(e))}const Ct=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,Et=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,Ft=/^'([^]*?)'?$/,$t=/''/g,Ht=/[a-zA-Z]/;function j(t,e,n){var d,D,m,y,M,O,K,p;const r=P(),a=(n==null?void 0:n.locale)??r.locale??Me,i=(n==null?void 0:n.firstWeekContainsDate)??((D=(d=n==null?void 0:n.locale)==null?void 0:d.options)==null?void 0:D.firstWeekContainsDate)??r.firstWeekContainsDate??((y=(m=r.locale)==null?void 0:m.options)==null?void 0:y.firstWeekContainsDate)??1,c=(n==null?void 0:n.weekStartsOn)??((O=(M=n==null?void 0:n.locale)==null?void 0:M.options)==null?void 0:O.weekStartsOn)??r.weekStartsOn??((p=(K=r.locale)==null?void 0:K.options)==null?void 0:p.weekStartsOn)??0,u=l(t);if(!vt(u))throw new RangeError("Invalid time value");let s=e.match(Et).map(w=>{const g=w[0];if(g==="p"||g==="P"){const _=Nt[g];return _(w,a.formatLong)}return w}).join("").match(Ct).map(w=>{if(w==="''")return{isToken:!1,value:"'"};const g=w[0];if(g==="'")return{isToken:!1,value:Lt(w)};if(ne[g])return{isToken:!0,value:w};if(g.match(Ht))throw new RangeError("Format string contains an unescaped latin alphabet character `"+g+"`");return{isToken:!1,value:w}});a.localize.preprocessor&&(s=a.localize.preprocessor(u,s));const f={firstWeekContainsDate:i,weekStartsOn:c,locale:a};return s.map(w=>{if(!w.isToken)return w.value;const g=w.value;(!(n!=null&&n.useAdditionalWeekYearTokens)&&It(g)||!(n!=null&&n.useAdditionalDayOfYearTokens)&&Pt(g))&&St(g,e,String(t));const _=ne[g[0]];return _(u,g,a.localize,f)}).join("")}function Lt(t){const e=t.match(Ft);return e?e[1].replace($t,"'"):t}function C(t,e){const n=l(t),r=l(e),a=n.getTime()-r.getTime();return a<0?-1:a>0?1:a}function _t(t){return x(t,Date.now())}function Xt(t,e){const n=l(t),r=l(e),a=n.getFullYear()-r.getFullYear(),i=n.getMonth()-r.getMonth();return a*12+i}function Ut(t){return e=>{const r=(t?Math[t]:Math.trunc)(e);return r===0?0:r}}function Zt(t,e){return+l(t)-+l(e)}function At(t){const e=l(t);return e.setHours(23,59,59,999),e}function Gt(t){const e=l(t),n=e.getMonth();return e.setFullYear(e.getFullYear(),n+1,0),e.setHours(23,59,59,999),e}function qt(t){const e=l(t);return+At(e)==+Gt(e)}function Rt(t,e){const n=l(t),r=l(e),a=C(n,r),i=Math.abs(Xt(n,r));let c;if(i<1)c=0;else{n.getMonth()===1&&n.getDate()>27&&n.setDate(30),n.setMonth(n.getMonth()-a*i);let u=C(n,r)===-a;qt(l(t))&&i===1&&C(t,r)===1&&(u=!1),c=a*(i-Number(u))}return c===0?0:c}function zt(t,e,n){const r=Zt(t,e)/1e3;return Ut(n==null?void 0:n.roundingMethod)(r)}function jt(t,e,n){const r=P(),a=(n==null?void 0:n.locale)??r.locale??Me,i=2520,c=C(t,e);if(isNaN(c))throw new RangeError("Invalid time value");const u=Object.assign({},n,{addSuffix:n==null?void 0:n.addSuffix,comparison:c});let s,f;c>0?(s=l(e),f=l(t)):(s=l(t),f=l(e));const d=zt(f,s),D=(E(f)-E(s))/1e3,m=Math.round((d-D)/60);let y;if(m<2)return n!=null&&n.includeSeconds?d<5?a.formatDistance("lessThanXSeconds",5,u):d<10?a.formatDistance("lessThanXSeconds",10,u):d<20?a.formatDistance("lessThanXSeconds",20,u):d<40?a.formatDistance("halfAMinute",0,u):d<60?a.formatDistance("lessThanXMinutes",1,u):a.formatDistance("xMinutes",1,u):m===0?a.formatDistance("lessThanXMinutes",1,u):a.formatDistance("xMinutes",m,u);if(m<45)return a.formatDistance("xMinutes",m,u);if(m<90)return a.formatDistance("aboutXHours",1,u);if(m<ee){const M=Math.round(m/60);return a.formatDistance("aboutXHours",M,u)}else{if(m<i)return a.formatDistance("xDays",1,u);if(m<v){const M=Math.round(m/ee);return a.formatDistance("xDays",M,u)}else if(m<v*2)return y=Math.round(m/v),a.formatDistance("aboutXMonths",y,u)}if(y=Rt(f,s),y<12){const M=Math.round(m/v);return a.formatDistance("xMonths",M,u)}else{const M=y%12,O=Math.trunc(y/12);return M<3?a.formatDistance("aboutXYears",O,u):M<9?a.formatDistance("overXYears",O,u):a.formatDistance("almostXYears",O+1,u)}}function be(t,e){return jt(t,_t(t),e)}function Bt(){return Object.assign({},P())}function ce(t,e,n){const r=Bt(),a=Jt(t,n.timeZone,n.locale??r.locale);return"formatToParts"in a?Qt(a,e):Vt(a,e)}function Qt(t,e){const n=t.formatToParts(e);for(let r=n.length-1;r>=0;--r)if(n[r].type==="timeZoneName")return n[r].value}function Vt(t,e){const n=t.format(e).replace(/\u200E/g,""),r=/ [\w-+ ]+$/.exec(n);return r?r[0].substr(1):""}function Jt(t,e,n){return new Intl.DateTimeFormat(n?[n.code,"en-US"]:void 0,{timeZone:e,timeZoneName:t})}function Kt(t,e){const n=rn(e);return"formatToParts"in n?en(n,t):tn(n,t)}const pt={year:0,month:1,day:2,hour:3,minute:4,second:5};function en(t,e){try{const n=t.formatToParts(e),r=[];for(let a=0;a<n.length;a++){const i=pt[n[a].type];i!==void 0&&(r[i]=parseInt(n[a].value,10))}return r}catch(n){if(n instanceof RangeError)return[NaN];throw n}}function tn(t,e){const n=t.format(e),r=/(\d+)\/(\d+)\/(\d+),? (\d+):(\d+):(\d+)/.exec(n);return[parseInt(r[3],10),parseInt(r[1],10),parseInt(r[2],10),parseInt(r[4],10),parseInt(r[5],10),parseInt(r[6],10)]}const U={},ue=new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:"America/New_York",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}).format(new Date("2014-06-25T04:00:00.123Z")),nn=ue==="06/25/2014, 00:00:00"||ue==="06/25/2014 00:00:00";function rn(t){return U[t]||(U[t]=nn?new Intl.DateTimeFormat("en-US",{hourCycle:"h23",timeZone:t,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"}):new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:t,year:"numeric",month:"numeric",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit"})),U[t]}function B(t,e,n,r,a,i,c){const u=new Date(0);return u.setUTCFullYear(t,e,n),u.setUTCHours(r,a,i,c),u}const se=36e5,an=6e4,Z={timezoneZ:/^(Z)$/,timezoneHH:/^([+-]\d{2})$/,timezoneHHMM:/^([+-])(\d{2}):?(\d{2})$/};function L(t,e,n){if(!t)return 0;let r=Z.timezoneZ.exec(t);if(r)return 0;let a,i;if(r=Z.timezoneHH.exec(t),r)return a=parseInt(r[1],10),fe(a)?-(a*se):NaN;if(r=Z.timezoneHHMM.exec(t),r){a=parseInt(r[2],10);const c=parseInt(r[3],10);return fe(a,c)?(i=Math.abs(a)*se+c*an,r[1]==="+"?-i:i):NaN}if(sn(t)){e=new Date(e||Date.now());const c=n?e:cn(e),u=R(c,t);return-(n?u:un(e,u,t))}return NaN}function cn(t){return B(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds())}function R(t,e){const n=Kt(t,e),r=B(n[0],n[1]-1,n[2],n[3]%24,n[4],n[5],0).getTime();let a=t.getTime();const i=a%1e3;return a-=i>=0?i:1e3+i,r-a}function un(t,e,n){let a=t.getTime()-e;const i=R(new Date(a),n);if(e===i)return e;a-=i-e;const c=R(new Date(a),n);return i===c?i:Math.max(i,c)}function fe(t,e){return-23<=t&&t<=23&&(e==null||0<=e&&e<=59)}const oe={};function sn(t){if(oe[t])return!0;try{return new Intl.DateTimeFormat(void 0,{timeZone:t}),oe[t]=!0,!0}catch{return!1}}const fn=60*1e3,on={X:function(t,e,n){const r=A(n.timeZone,t);if(r===0)return"Z";switch(e){case"X":return le(r);case"XXXX":case"XX":return Y(r);case"XXXXX":case"XXX":default:return Y(r,":")}},x:function(t,e,n){const r=A(n.timeZone,t);switch(e){case"x":return le(r);case"xxxx":case"xx":return Y(r);case"xxxxx":case"xxx":default:return Y(r,":")}},O:function(t,e,n){const r=A(n.timeZone,t);switch(e){case"O":case"OO":case"OOO":return"GMT"+ln(r,":");case"OOOO":default:return"GMT"+Y(r,":")}},z:function(t,e,n){switch(e){case"z":case"zz":case"zzz":return ce("short",t,n);case"zzzz":default:return ce("long",t,n)}}};function A(t,e){const n=t?L(t,e,!0)/fn:(e==null?void 0:e.getTimezoneOffset())??0;if(Number.isNaN(n))throw new RangeError("Invalid time zone specified: "+t);return n}function $(t,e){const n=t<0?"-":"";let r=Math.abs(t).toString();for(;r.length<e;)r="0"+r;return n+r}function Y(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=$(Math.floor(r/60),2),i=$(Math.floor(r%60),2);return n+a+e+i}function le(t,e){return t%60===0?(t>0?"-":"+")+$(Math.abs(t)/60,2):Y(t,e)}function ln(t,e=""){const n=t>0?"-":"+",r=Math.abs(t),a=Math.floor(r/60),i=r%60;return i===0?n+String(a):n+String(a)+e+$(i,2)}function de(t){const e=new Date(Date.UTC(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()));return e.setUTCFullYear(t.getFullYear()),+t-+e}const Ye=/(Z|[+-]\d{2}(?::?\d{2})?| UTC| [a-zA-Z]+\/[a-zA-Z_]+(?:\/[a-zA-Z_]+)?)$/,G=36e5,me=6e4,dn=2,h={dateTimePattern:/^([0-9W+-]+)(T| )(.*)/,datePattern:/^([0-9W+-]+)(.*)/,YY:/^(\d{2})$/,YYY:[/^([+-]\d{2})$/,/^([+-]\d{3})$/,/^([+-]\d{4})$/],YYYY:/^(\d{4})/,YYYYY:[/^([+-]\d{4})/,/^([+-]\d{5})/,/^([+-]\d{6})/],MM:/^-(\d{2})$/,DDD:/^-?(\d{3})$/,MMDD:/^-?(\d{2})-?(\d{2})$/,Www:/^-?W(\d{2})$/,WwwD:/^-?W(\d{2})-?(\d{1})$/,HH:/^(\d{2}([.,]\d*)?)$/,HHMM:/^(\d{2}):?(\d{2}([.,]\d*)?)$/,HHMMSS:/^(\d{2}):?(\d{2}):?(\d{2}([.,]\d*)?)$/,timeZone:Ye};function H(t,e={}){if(arguments.length<1)throw new TypeError("1 argument required, but only "+arguments.length+" present");if(t===null)return new Date(NaN);const n=e.additionalDigits==null?dn:Number(e.additionalDigits);if(n!==2&&n!==1&&n!==0)throw new RangeError("additionalDigits must be 0, 1 or 2");if(t instanceof Date||typeof t=="object"&&Object.prototype.toString.call(t)==="[object Date]")return new Date(t.getTime());if(typeof t=="number"||Object.prototype.toString.call(t)==="[object Number]")return new Date(t);if(Object.prototype.toString.call(t)!=="[object String]")return new Date(NaN);const r=mn(t),{year:a,restDateString:i}=hn(r.date,n),c=gn(i,a);if(c===null||isNaN(c.getTime()))return new Date(NaN);if(c){const u=c.getTime();let s=0,f;if(r.time&&(s=wn(r.time),s===null||isNaN(s)))return new Date(NaN);if(r.timeZone||e.timeZone){if(f=L(r.timeZone||e.timeZone,new Date(u+s)),isNaN(f))return new Date(NaN)}else f=de(new Date(u+s)),f=de(new Date(u+s+f));return new Date(u+s+f)}else return new Date(NaN)}function mn(t){const e={};let n=h.dateTimePattern.exec(t),r;if(n?(e.date=n[1],r=n[3]):(n=h.datePattern.exec(t),n?(e.date=n[1],r=n[2]):(e.date=null,r=t)),r){const a=h.timeZone.exec(r);a?(e.time=r.replace(a[1],""),e.timeZone=a[1].trim()):e.time=r}return e}function hn(t,e){if(t){const n=h.YYY[e],r=h.YYYYY[e];let a=h.YYYY.exec(t)||r.exec(t);if(a){const i=a[1];return{year:parseInt(i,10),restDateString:t.slice(i.length)}}if(a=h.YY.exec(t)||n.exec(t),a){const i=a[1];return{year:parseInt(i,10)*100,restDateString:t.slice(i.length)}}}return{year:null}}function gn(t,e){if(e===null)return null;let n,r,a;if(!t||!t.length)return n=new Date(0),n.setUTCFullYear(e),n;let i=h.MM.exec(t);if(i)return n=new Date(0),r=parseInt(i[1],10)-1,ge(e,r)?(n.setUTCFullYear(e,r),n):new Date(NaN);if(i=h.DDD.exec(t),i){n=new Date(0);const c=parseInt(i[1],10);return Mn(e,c)?(n.setUTCFullYear(e,0,c),n):new Date(NaN)}if(i=h.MMDD.exec(t),i){n=new Date(0),r=parseInt(i[1],10)-1;const c=parseInt(i[2],10);return ge(e,r,c)?(n.setUTCFullYear(e,r,c),n):new Date(NaN)}if(i=h.Www.exec(t),i)return a=parseInt(i[1],10)-1,we(a)?he(e,a):new Date(NaN);if(i=h.WwwD.exec(t),i){a=parseInt(i[1],10)-1;const c=parseInt(i[2],10)-1;return we(a,c)?he(e,a,c):new Date(NaN)}return null}function wn(t){let e,n,r=h.HH.exec(t);if(r)return e=parseFloat(r[1].replace(",",".")),q(e)?e%24*G:NaN;if(r=h.HHMM.exec(t),r)return e=parseInt(r[1],10),n=parseFloat(r[2].replace(",",".")),q(e,n)?e%24*G+n*me:NaN;if(r=h.HHMMSS.exec(t),r){e=parseInt(r[1],10),n=parseInt(r[2],10);const a=parseFloat(r[3].replace(",","."));return q(e,n,a)?e%24*G+n*me+a*1e3:NaN}return null}function he(t,e,n){e=e||0,n=n||0;const r=new Date(0);r.setUTCFullYear(t,0,4);const a=r.getUTCDay()||7,i=e*7+n+1-a;return r.setUTCDate(r.getUTCDate()+i),r}const Dn=[31,28,31,30,31,30,31,31,30,31,30,31],yn=[31,29,31,30,31,30,31,31,30,31,30,31];function Pe(t){return t%400===0||t%4===0&&t%100!==0}function ge(t,e,n){if(e<0||e>11)return!1;if(n!=null){if(n<1)return!1;const r=Pe(t);if(r&&n>yn[e]||!r&&n>Dn[e])return!1}return!0}function Mn(t,e){if(e<1)return!1;const n=Pe(t);return!(n&&e>366||!n&&e>365)}function we(t,e){return!(t<0||t>52||e!=null&&(e<0||e>6))}function q(t,e,n){return!(t<0||t>=25||e!=null&&(e<0||e>=60)||n!=null&&(n<0||n>=60))}const xn=/([xXOz]+)|''|'(''|[^'])+('|$)/g;function Tn(t,e,n={}){e=String(e);const r=e.match(xn);if(r){const a=H(n.originalDate||t,n);e=r.reduce(function(i,c){if(c[0]==="'")return i;const u=i.indexOf(c),s=i[u-1]==="'",f=i.replace(c,"'"+on[c[0]](a,c,n)+"'");return s?f.substring(0,u-1)+f.substring(u+1):f},e)}return j(t,e,n)}function Ie(t,e,n){t=H(t,n);const r=L(e,t,!0),a=new Date(t.getTime()-r),i=new Date(0);return i.setFullYear(a.getUTCFullYear(),a.getUTCMonth(),a.getUTCDate()),i.setHours(a.getUTCHours(),a.getUTCMinutes(),a.getUTCSeconds(),a.getUTCMilliseconds()),i}function Se(t,e,n,r){return r={...r,timeZone:e,originalDate:t},Tn(Ie(t,e,{timeZone:r.timeZone}),n,r)}function We(t,e,n){if(typeof t=="string"&&!t.match(Ye))return H(t,{...n,timeZone:e});t=H(t,n);const r=B(t.getFullYear(),t.getMonth(),t.getDate(),t.getHours(),t.getMinutes(),t.getSeconds(),t.getMilliseconds()).getTime(),a=L(e,new Date(r));return new Date(r+a)}function De(t){if(!t)return!1;const e=t.toLowerCase().replace("_","-");return e==="en-in"||e.startsWith("en-in-")}function ye(t,e){const n=Math.abs(t);return n>=1e12?{divisor:1e12,suffix:"T"}:n>=1e9?{divisor:1e9,suffix:"B"}:De(e)&&n>=1e7?{divisor:1e7,suffix:"Cr"}:n>=1e6?{divisor:1e6,suffix:"M"}:De(e)&&n>=1e5?{divisor:1e5,suffix:"L"}:n>=1e3?{divisor:1e3,suffix:"K"}:{divisor:1,suffix:""}}function z(t,e){try{const n=I(e);return ye(t,n)}catch{return ye(t,"en-US")}}function Nn(t){try{return new Intl.NumberFormat(t),!0}catch{return!1}}function I(t){return t&&Nn(t)?t:"en-US"}function Q(t,e){if(t==null||isNaN(t))return"";const n=I(e==null?void 0:e.locale);let r=t;if(e!=null&&e.multiplyBy&&(r*=e.multiplyBy),e!=null&&e.useSuffix){const{divisor:i,suffix:c}=z(r,n);r=r/i;const u=new Intl.NumberFormat(n,{minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(r);return`${(e==null?void 0:e.prefix)??""}${u}${c}${(e==null?void 0:e.suffix)??""}`}const a=new Intl.NumberFormat(n,{minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(r);if(e!=null&&e.negativeInParentheses&&r<0){const i=a.replace("-","");return`(${(e==null?void 0:e.prefix)??""}${i}${(e==null?void 0:e.suffix)??""})`}return`${(e==null?void 0:e.prefix)??""}${a}${(e==null?void 0:e.suffix)??""}`}function ke(t,e){if(t==null||isNaN(t))return"";const n=I(e==null?void 0:e.locale),r=(e==null?void 0:e.currency)||"USD",a=t<0,i=!!(e!=null&&e.negativeInParentheses&&a),c=i?Math.abs(t):t;try{if(e!=null&&e.useSuffix){const{divisor:s,suffix:f}=z(c,n),d=c/s,m=`${new Intl.NumberFormat(n,{style:"currency",currency:r,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(d)}${f}`;return i?`(${m})`:m}const u=new Intl.NumberFormat(n,{style:"currency",currency:r,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(c);return i?`(${u})`:u}catch{const u=Math.abs(t),s=e!=null&&e.useSuffix?z(u,n):{divisor:1,suffix:""},f=Q(u/s.divisor,{locale:n,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}),d=`${r} ${f}${s.suffix}`;return a?e!=null&&e.negativeInParentheses?`(${d})`:`-${d}`:d}}function ve(t,e){if(t==null||isNaN(t))return"";const n=I(e==null?void 0:e.locale),a=(e==null?void 0:e.alreadyPercent)??(e==null?void 0:e.percentValueMode)==="whole"?t/100:t;return new Intl.NumberFormat(n,{style:"percent",minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(a)}function V(t,e){if(t==null||isNaN(t))return"";const n=I(e==null?void 0:e.locale);return new Intl.NumberFormat(n,{notation:"scientific",minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2}).format(t)}function On(t,e,n="en-US"){if(t==null||isNaN(t))return"";const r=I((e==null?void 0:e.locale)||n),a=(e==null?void 0:e.style)||"decimal";if(a==="percent"){const c=((e==null?void 0:e.percentValueMode)??"whole")==="whole"?t/100:t;return new Intl.NumberFormat(r,{style:"percent",minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(c)}return a==="currency"?new Intl.NumberFormat(r,{style:"currency",currency:(e==null?void 0:e.currency)||"USD",minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(t):a==="scientific"?V(t,{locale:r,minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2}):new Intl.NumberFormat(r,{minimumFractionDigits:(e==null?void 0:e.minimumFractionDigits)??0,maximumFractionDigits:(e==null?void 0:e.maximumFractionDigits)??2,useGrouping:(e==null?void 0:e.useGrouping)??!0}).format(t)}function bn(t,e,n){const r={style:e==="currency"?"currency":e==="percent"?"percent":"decimal",locale:n==null?void 0:n.locale,currency:n==null?void 0:n.currency,minimumFractionDigits:n==null?void 0:n.decimalPlaces,maximumFractionDigits:n==null?void 0:n.decimalPlaces,useSuffix:n==null?void 0:n.useSuffix,prefix:n==null?void 0:n.prefix,suffix:n==null?void 0:n.suffix,negativeInParentheses:n==null?void 0:n.negativeInParentheses,multiplyBy:n==null?void 0:n.multiplyBy};switch(e){case"currency":return ke(t,r);case"percent":return ve(t,r);case"scientific":return V(t,r);default:return Q(t,r)}}function Yn(t,e){return t&&t!=="auto"?t:e}function Pn(t,e=new Date){try{const n={timeZone:t,timeZoneName:"short"},a=new Intl.DateTimeFormat("en-US",n).formatToParts(e).find(i=>i.type==="timeZoneName");return(a==null?void 0:a.value)||t}catch{return t}}function In(t){try{const e={timeZone:t,timeZoneName:"long"},r=new Intl.DateTimeFormat("en-US",e).formatToParts(new Date).find(a=>a.type==="timeZoneName");return(r==null?void 0:r.value)||t}catch{return t}}function J(t,e="auto"){if(!t)return new Date(NaN);const n=t.endsWith("Z"),r=/[+-]\d{2}:?\d{2}$/.test(t),a=/\([A-Z]{3,4}\)$/.test(t);if(e==="auto")return n||r||a?new Date(t):new Date(t+"Z");if(e==="local"){if(n||r){const i=t.replace(/Z$/,"").replace(/[+-]\d{2}:?\d{2}$/,"");return new Date(i)}return new Date(t)}else return e==="UTC"?n?new Date(t):r?new Date(t):new Date(t+"Z"):n||r||a?new Date(t):We(t,e)}const Sn="MM/dd/yyyy",Wn=(t,e,n,r="auto")=>{if(!t)return"";try{const a=J(t,r);if(isNaN(a.getTime()))return t;const c=(e&&e.trim()?e:Sn).replace(/LLLL/g,"MMMM").replace(/LLL/g,"MMM");return n&&n!=="auto"?Se(a,n,c):j(a,c)}catch(a){return console.error("Date formatting error:",a),t}},kn=(t,e="auto")=>{if(!t)return"";try{const n=J(t,e);return isNaN(n.getTime())?t:be(n,{addSuffix:!0})}catch(n){return console.error("Relative time formatting error:",n),t}};exports.constructFrom=x;exports.format=j;exports.formatCurrency=ke;exports.formatDate=Wn;exports.formatDistanceToNow=be;exports.formatInTimeZone=Se;exports.formatNumber=Q;exports.formatNumberCustom=bn;exports.formatNumberWithColumnSettings=On;exports.formatPercent=ve;exports.formatRelativeTime=kn;exports.formatScientific=V;exports.fromZonedTime=We;exports.getTimezoneAbbreviation=Pn;exports.getTimezoneName=In;exports.millisecondsInHour=mt;exports.millisecondsInMinute=dt;exports.parseWithSourceTimezone=J;exports.resolveTimezone=Yn;exports.toDate=l;exports.toZonedTime=Ie;
|