randmarcomps 1.620.0 → 1.621.0
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/randmarcomps.d.ts +4 -0
- package/dist/randmarcomps.js +8 -41
- package/dist/randmarcomps.umd.cjs +2 -2
- package/package.json +1 -1
package/dist/randmarcomps.d.ts
CHANGED
|
@@ -957,6 +957,10 @@ export declare interface RichTextEditorProps extends Omit<default_2.InputHTMLAtt
|
|
|
957
957
|
placeholder?: string;
|
|
958
958
|
}
|
|
959
959
|
|
|
960
|
+
export declare function RmBodyZone({ className, children, ...props }: RmBodyZoneProps): JSX.Element;
|
|
961
|
+
|
|
962
|
+
export declare type RmBodyZoneProps = React_2.ComponentProps<"section">;
|
|
963
|
+
|
|
960
964
|
export declare function RmPageHeader({ title, subtitle, breadcrumbs, rightTopActions, rightBottomActions, secondaryRow, sticky, stickyClassName, className, cardClassName, contentClassName, }: RmPageHeaderProps): JSX.Element;
|
|
961
965
|
|
|
962
966
|
export declare interface RmPageHeaderBreadcrumbItem {
|
package/dist/randmarcomps.js
CHANGED
|
@@ -62076,23 +62076,7 @@ function DataRefreshAssistantCluster({
|
|
|
62076
62076
|
}, [t, a, e, n]);
|
|
62077
62077
|
return /* @__PURE__ */ jsx(RefreshCluster, { ...o, onAssistantClick: s });
|
|
62078
62078
|
}
|
|
62079
|
-
const
|
|
62080
|
-
function getMainContentRegion(e) {
|
|
62081
|
-
return e.closest("main, [data-rm-main-content-region]");
|
|
62082
|
-
}
|
|
62083
|
-
function getRegionBounds(e) {
|
|
62084
|
-
if (e) {
|
|
62085
|
-
const t = e.getBoundingClientRect();
|
|
62086
|
-
return {
|
|
62087
|
-
left: t.left,
|
|
62088
|
-
right: t.right
|
|
62089
|
-
};
|
|
62090
|
-
}
|
|
62091
|
-
return {
|
|
62092
|
-
left: 0,
|
|
62093
|
-
right: document.documentElement.clientWidth
|
|
62094
|
-
};
|
|
62095
|
-
}
|
|
62079
|
+
const fullBleedClassName = "w-screen max-w-none -ml-[calc(50vw-50%)] -mr-[calc(50vw-50%)]";
|
|
62096
62080
|
function RmPageHeaderBreadcrumbLink({
|
|
62097
62081
|
item: e,
|
|
62098
62082
|
isCurrent: t
|
|
@@ -62146,42 +62130,21 @@ function RmPageHeader({
|
|
|
62146
62130
|
cardClassName: f,
|
|
62147
62131
|
contentClassName: S
|
|
62148
62132
|
}) {
|
|
62149
|
-
const R =
|
|
62150
|
-
React.useEffect(() => {
|
|
62151
|
-
if (typeof window > "u") return;
|
|
62152
|
-
const rt = R.current;
|
|
62153
|
-
if (!rt) return;
|
|
62154
|
-
const ot = getMainContentRegion(rt);
|
|
62155
|
-
let it = null;
|
|
62156
|
-
const at = () => {
|
|
62157
|
-
const ut = rt.getBoundingClientRect(), ct = getRegionBounds(ot), dt = roundToPixel(ct.left - ut.left), pt = roundToPixel(ut.right - ct.right);
|
|
62158
|
-
rt.style.marginLeft = `${dt}px`, rt.style.marginRight = `${pt}px`;
|
|
62159
|
-
}, st = () => {
|
|
62160
|
-
it !== null && window.cancelAnimationFrame(it), it = window.requestAnimationFrame(() => {
|
|
62161
|
-
at(), it = null;
|
|
62162
|
-
});
|
|
62163
|
-
};
|
|
62164
|
-
st();
|
|
62165
|
-
const lt = typeof ResizeObserver < "u" ? new ResizeObserver(st) : null;
|
|
62166
|
-
return lt && (lt.observe(rt), lt.observe(document.documentElement), ot && lt.observe(ot)), window.addEventListener("resize", st), window.addEventListener("orientationchange", st), () => {
|
|
62167
|
-
it !== null && window.cancelAnimationFrame(it), lt?.disconnect(), window.removeEventListener("resize", st), window.removeEventListener("orientationchange", st), rt.style.marginLeft = "", rt.style.marginRight = "";
|
|
62168
|
-
};
|
|
62169
|
-
}, []);
|
|
62170
|
-
const te = !!(o || a), A = /* @__PURE__ */ jsxs("header", { className: cn("w-full border-b border-border bg-background", d), children: [
|
|
62133
|
+
const R = !!(o || a), te = /* @__PURE__ */ jsxs("header", { className: cn("w-full border-b border-border bg-background", d), children: [
|
|
62171
62134
|
/* @__PURE__ */ jsx("div", { className: cn("px-4 py-6 sm:px-6", f), children: /* @__PURE__ */ jsxs("div", { className: cn("flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between", S), children: [
|
|
62172
62135
|
/* @__PURE__ */ jsxs("div", { className: "space-y-1.5", children: [
|
|
62173
62136
|
n?.length ? /* @__PURE__ */ jsx(RmPageHeaderBreadcrumbs, { items: n }) : null,
|
|
62174
62137
|
/* @__PURE__ */ jsx("h1", { className: "text-2xl font-semibold leading-tight tracking-tight text-foreground", children: e }),
|
|
62175
62138
|
t ? /* @__PURE__ */ jsx("p", { className: "text-sm text-muted-foreground", children: t }) : null
|
|
62176
62139
|
] }),
|
|
62177
|
-
|
|
62140
|
+
R ? /* @__PURE__ */ jsxs("div", { className: "flex w-full flex-col items-start gap-2 lg:w-auto lg:min-w-[16rem] lg:items-end", children: [
|
|
62178
62141
|
o ? /* @__PURE__ */ jsx("div", { className: "flex w-full flex-wrap items-center justify-start gap-2 lg:justify-end", children: o }) : null,
|
|
62179
62142
|
a ? /* @__PURE__ */ jsx("div", { className: "flex w-full flex-wrap items-center justify-start gap-2 lg:justify-end", children: a }) : null
|
|
62180
62143
|
] }) : null
|
|
62181
62144
|
] }) }),
|
|
62182
62145
|
s ? /* @__PURE__ */ jsx("div", { className: "border-t border-border bg-muted/40", children: /* @__PURE__ */ jsx("div", { className: "px-4 py-4 sm:px-6", children: s }) }) : null
|
|
62183
62146
|
] });
|
|
62184
|
-
return l ? /* @__PURE__ */ jsx("div", {
|
|
62147
|
+
return l ? /* @__PURE__ */ jsx("div", { className: fullBleedClassName, children: /* @__PURE__ */ jsx("div", { className: cn("sticky top-0 z-20", c), children: te }) }) : /* @__PURE__ */ jsx("div", { className: fullBleedClassName, children: te });
|
|
62185
62148
|
}
|
|
62186
62149
|
function PageHeader({ title: e, children: t, className: n }) {
|
|
62187
62150
|
return /* @__PURE__ */ jsx(
|
|
@@ -62193,6 +62156,9 @@ function PageHeader({ title: e, children: t, className: n }) {
|
|
|
62193
62156
|
}
|
|
62194
62157
|
);
|
|
62195
62158
|
}
|
|
62159
|
+
function RmBodyZone({ className: e, children: t, ...n }) {
|
|
62160
|
+
return /* @__PURE__ */ jsx("section", { className: cn("px-4 py-4 sm:px-6 sm:py-6", e), ...n, children: t });
|
|
62161
|
+
}
|
|
62196
62162
|
function OrderedMap(e) {
|
|
62197
62163
|
this.content = e;
|
|
62198
62164
|
}
|
|
@@ -84102,6 +84068,7 @@ export {
|
|
|
84102
84068
|
ResellerQualificationsCard,
|
|
84103
84069
|
ReturnsTable,
|
|
84104
84070
|
RichTextEditor,
|
|
84071
|
+
RmBodyZone,
|
|
84105
84072
|
RmPageHeader,
|
|
84106
84073
|
SalesChart,
|
|
84107
84074
|
SalesOverviewCard,
|
|
@@ -520,7 +520,7 @@ You can add a description to the \`${CONTENT_NAME$2}\` by passing a \`${DESCRIPT
|
|
|
520
520
|
|
|
521
521
|
Alternatively, you can use your own component as a description by assigning it an \`id\` and passing the same value to the \`aria-describedby\` prop in \`${CONTENT_NAME$2}\`. If the description is confusing or duplicative for sighted users, you can use the \`@radix-ui/react-visually-hidden\` primitive as a wrapper around your description component.
|
|
522
522
|
|
|
523
|
-
For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;return React__namespace.useEffect(()=>{document.getElementById(e.current?.getAttribute("aria-describedby"))||console.warn(t)},[t,e]),null},Root2$1=AlertDialog$1,Trigger2$1=AlertDialogTrigger$1,Portal2=AlertDialogPortal$1,Overlay2=AlertDialogOverlay$1,Content2$1=AlertDialogContent$1,Action=AlertDialogAction$1,Cancel=AlertDialogCancel$1,Title2=AlertDialogTitle$1,Description2=AlertDialogDescription$1;const AlertDialog=Root2$1,AlertDialogTrigger=Trigger2$1,AlertDialogPortal=Portal2,AlertDialogOverlay=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Overlay2,{className:cn("fixed inset-0 z-50 bg-foreground/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:n}));AlertDialogOverlay.displayName=Overlay2.displayName;const AlertDialogContent=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsxs(AlertDialogPortal,{children:[jsxRuntime.jsx(AlertDialogOverlay,{}),jsxRuntime.jsx(Content2$1,{ref:n,className:cn("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...t})]}));AlertDialogContent.displayName=Content2$1.displayName;const AlertDialogHeader=({className:e,...t})=>jsxRuntime.jsx("div",{className:cn("flex flex-col space-y-2 text-center sm:text-left",e),...t});AlertDialogHeader.displayName="AlertDialogHeader";const AlertDialogFooter=({className:e,...t})=>jsxRuntime.jsx("div",{className:cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});AlertDialogFooter.displayName="AlertDialogFooter";const AlertDialogTitle=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Title2,{ref:n,className:cn("text-lg font-semibold",e),...t}));AlertDialogTitle.displayName=Title2.displayName;const AlertDialogDescription=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Description2,{ref:n,className:cn("text-sm text-muted-foreground",e),...t}));AlertDialogDescription.displayName=Description2.displayName;const AlertDialogAction=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Action,{ref:n,className:cn(buttonVariants(),e),...t}));AlertDialogAction.displayName=Action.displayName;const AlertDialogCancel=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Cancel,{ref:n,className:cn(buttonVariants({variant:"outline"}),"mt-2 sm:mt-0",e),...t}));AlertDialogCancel.displayName=Cancel.displayName;function parseDate(e){if(e==null)return null;const t=e instanceof Date?e:new Date(e);return Number.isNaN(t.getTime())?null:t}function formatLastRefresh(e){const t=parseDate(e);if(!t)return"Never";const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()?`Today at ${new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit",timeZoneName:"short"}).format(t)}`:new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",timeZoneName:"short"}).format(t)}function RefreshCluster({lastRefreshAt:e,onRefresh:t,onProgressiveRefresh:n,onAssistantClick:s,isRefreshing:a=!1,refreshLabel:o="Refresh",assistantLabel:l="Assistant",className:c,disabled:d=!1}){const[f,R]=React__namespace.useState(!1),[S,te]=React__namespace.useState(e);React__namespace.useEffect(()=>{te(e)},[e]);const A=!!(t||n),rt=a||f,st=e??S,it=React__namespace.useCallback(async()=>{if(!(!A||d||rt)){R(!0);try{n?(await n(!1),await n(!0)):await t?.(),te(new Date)}finally{R(!1)}}},[A,d,rt,n,t]);return jsxRuntime.jsxs("div",{className:cn("flex flex-wrap items-center justify-end gap-2",c),children:[jsxRuntime.jsxs("p",{className:"text-xs text-muted-foreground sm:text-sm",children:["Last refresh:"," ",jsxRuntime.jsx("span",{className:"font-medium text-foreground",children:formatLastRefresh(st)})]}),jsxRuntime.jsxs(Button$1,{type:"button",variant:"outline",className:"min-h-11",disabled:d||rt||!A,onClick:it,children:[rt?jsxRuntime.jsx(LoaderCircle,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}):jsxRuntime.jsx(RefreshCw,{className:"h-4 w-4","aria-hidden":"true"}),jsxRuntime.jsx("span",{children:o})]}),jsxRuntime.jsxs(Button$1,{type:"button",variant:"default",className:"min-h-11",disabled:d,onClick:s,children:[jsxRuntime.jsx(Bot,{className:"h-4 w-4","aria-hidden":"true"}),jsxRuntime.jsx("span",{children:l})]})]})}function DataRefreshAssistantCluster({onAssistantClick:e,assistantPromptOptions:t,onAssistantUnavailable:n,...s}){const a=useOptionalChat(),o=React__namespace.useCallback(()=>{if(e){e();return}if(t){if(!a){n?.();return}a.sendMessageWithClear(t.prompt,t.hiddenPrompt,t.sopID)||n?.();return}n?.()},[t,a,e,n]);return jsxRuntime.jsx(RefreshCluster,{...s,onAssistantClick:o})}const roundToPixel=e=>Math.round(e*100)/100;function getMainContentRegion(e){return e.closest("main, [data-rm-main-content-region]")}function getRegionBounds(e){if(e){const t=e.getBoundingClientRect();return{left:t.left,right:t.right}}return{left:0,right:document.documentElement.clientWidth}}function RmPageHeaderBreadcrumbLink({item:e,isCurrent:t}){return!t&&e.href?jsxRuntime.jsx("a",{href:e.href,className:"text-xs font-medium text-muted-foreground underline-offset-4 transition-colors hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",children:e.label}):!t&&e.onClick?jsxRuntime.jsx("button",{type:"button",className:"text-xs font-medium text-muted-foreground underline-offset-4 transition-colors hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",onClick:e.onClick,children:e.label}):jsxRuntime.jsx("span",{"aria-current":t?"page":void 0,className:cn("text-xs font-medium",t?"text-foreground":"text-muted-foreground"),children:e.label})}function RmPageHeaderBreadcrumbs({items:e}){return e.length===0?null:jsxRuntime.jsx("nav",{"aria-label":"Breadcrumb",className:"w-full",children:jsxRuntime.jsx("ol",{className:"flex flex-wrap items-center gap-1.5",children:e.map((t,n)=>{const s=n===e.length-1,a=t.key??`${String(t.label)}-${n}`;return jsxRuntime.jsxs("li",{className:"inline-flex items-center gap-1.5",children:[jsxRuntime.jsx(RmPageHeaderBreadcrumbLink,{item:t,isCurrent:!!t.current||s}),s?null:jsxRuntime.jsx("span",{"aria-hidden":"true",className:"text-xs text-muted-foreground",children:"/"})]},a)})})})}function RmPageHeader({title:e,subtitle:t,breadcrumbs:n,rightTopActions:s,rightBottomActions:a,secondaryRow:o,sticky:l=!1,stickyClassName:c,className:d,cardClassName:f,contentClassName:R}){const S=React__namespace.useRef(null);React__namespace.useEffect(()=>{if(typeof window>"u")return;const rt=S.current;if(!rt)return;const st=getMainContentRegion(rt);let it=null;const at=()=>{const ut=rt.getBoundingClientRect(),ct=getRegionBounds(st),dt=roundToPixel(ct.left-ut.left),pt=roundToPixel(ut.right-ct.right);rt.style.marginLeft=`${dt}px`,rt.style.marginRight=`${pt}px`},ot=()=>{it!==null&&window.cancelAnimationFrame(it),it=window.requestAnimationFrame(()=>{at(),it=null})};ot();const lt=typeof ResizeObserver<"u"?new ResizeObserver(ot):null;return lt&&(lt.observe(rt),lt.observe(document.documentElement),st&<.observe(st)),window.addEventListener("resize",ot),window.addEventListener("orientationchange",ot),()=>{it!==null&&window.cancelAnimationFrame(it),lt?.disconnect(),window.removeEventListener("resize",ot),window.removeEventListener("orientationchange",ot),rt.style.marginLeft="",rt.style.marginRight=""}},[]);const te=!!(s||a),A=jsxRuntime.jsxs("header",{className:cn("w-full border-b border-border bg-background",d),children:[jsxRuntime.jsx("div",{className:cn("px-4 py-6 sm:px-6",f),children:jsxRuntime.jsxs("div",{className:cn("flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between",R),children:[jsxRuntime.jsxs("div",{className:"space-y-1.5",children:[n?.length?jsxRuntime.jsx(RmPageHeaderBreadcrumbs,{items:n}):null,jsxRuntime.jsx("h1",{className:"text-2xl font-semibold leading-tight tracking-tight text-foreground",children:e}),t?jsxRuntime.jsx("p",{className:"text-sm text-muted-foreground",children:t}):null]}),te?jsxRuntime.jsxs("div",{className:"flex w-full flex-col items-start gap-2 lg:w-auto lg:min-w-[16rem] lg:items-end",children:[s?jsxRuntime.jsx("div",{className:"flex w-full flex-wrap items-center justify-start gap-2 lg:justify-end",children:s}):null,a?jsxRuntime.jsx("div",{className:"flex w-full flex-wrap items-center justify-start gap-2 lg:justify-end",children:a}):null]}):null]})}),o?jsxRuntime.jsx("div",{className:"border-t border-border bg-muted/40",children:jsxRuntime.jsx("div",{className:"px-4 py-4 sm:px-6",children:o})}):null]});return l?jsxRuntime.jsx("div",{ref:S,children:jsxRuntime.jsx("div",{className:cn("sticky top-0 z-20",c),children:A})}):jsxRuntime.jsx("div",{ref:S,children:A})}function PageHeader({title:e,children:t,className:n}){return jsxRuntime.jsx(RmPageHeader,{title:e,rightBottomActions:t?jsxRuntime.jsx("div",{className:"flex shrink-0 flex-wrap items-center gap-2",children:t}):void 0,cardClassName:n})}function OrderedMap(e){this.content=e}OrderedMap.prototype={constructor:OrderedMap,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return t==-1?void 0:this.content[t+1]},update:function(e,t,n){var s=n&&n!=e?this.remove(n):this,a=s.find(e),o=s.content.slice();return a==-1?o.push(n||e,t):(o[a+1]=t,n&&(o[a]=n)),new OrderedMap(o)},remove:function(e){var t=this.find(e);if(t==-1)return this;var n=this.content.slice();return n.splice(t,2),new OrderedMap(n)},addToStart:function(e,t){return new OrderedMap([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new OrderedMap(n)},addBefore:function(e,t,n){var s=this.remove(t),a=s.content.slice(),o=s.find(e);return a.splice(o==-1?a.length:o,0,t,n),new OrderedMap(a)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return e=OrderedMap.from(e),e.size?new OrderedMap(e.content.concat(this.subtract(e).content)):this},append:function(e){return e=OrderedMap.from(e),e.size?new OrderedMap(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=OrderedMap.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach(function(t,n){e[t]=n}),e},get size(){return this.content.length>>1}},OrderedMap.from=function(e){if(e instanceof OrderedMap)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new OrderedMap(t)};function findDiffStart(e,t,n){for(let s=0;;s++){if(s==e.childCount||s==t.childCount)return e.childCount==t.childCount?null:n;let a=e.child(s),o=t.child(s);if(a==o){n+=a.nodeSize;continue}if(!a.sameMarkup(o))return n;if(a.isText&&a.text!=o.text){for(let l=0;a.text[l]==o.text[l];l++)n++;return n}if(a.content.size||o.content.size){let l=findDiffStart(a.content,o.content,n+1);if(l!=null)return l}n+=a.nodeSize}}function findDiffEnd(e,t,n,s){for(let a=e.childCount,o=t.childCount;;){if(a==0||o==0)return a==o?null:{a:n,b:s};let l=e.child(--a),c=t.child(--o),d=l.nodeSize;if(l==c){n-=d,s-=d;continue}if(!l.sameMarkup(c))return{a:n,b:s};if(l.isText&&l.text!=c.text){let f=0,R=Math.min(l.text.length,c.text.length);for(;f<R&&l.text[l.text.length-f-1]==c.text[c.text.length-f-1];)f++,n--,s--;return{a:n,b:s}}if(l.content.size||c.content.size){let f=findDiffEnd(l.content,c.content,n-1,s-1);if(f)return f}n-=d,s-=d}}class Fragment{constructor(t,n){if(this.content=t,this.size=n||0,n==null)for(let s=0;s<t.length;s++)this.size+=t[s].nodeSize}nodesBetween(t,n,s,a=0,o){for(let l=0,c=0;c<n;l++){let d=this.content[l],f=c+d.nodeSize;if(f>t&&s(d,a+c,o||null,l)!==!1&&d.content.size){let R=c+1;d.nodesBetween(Math.max(0,t-R),Math.min(d.content.size,n-R),s,a+R)}c=f}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,n,s,a){let o="",l=!0;return this.nodesBetween(t,n,(c,d)=>{let f=c.isText?c.text.slice(Math.max(t,d)-d,n-d):c.isLeaf?a?typeof a=="function"?a(c):a:c.type.spec.leafText?c.type.spec.leafText(c):"":"";c.isBlock&&(c.isLeaf&&f||c.isTextblock)&&s&&(l?l=!1:o+=s),o+=f},0),o}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,s=t.firstChild,a=this.content.slice(),o=0;for(n.isText&&n.sameMarkup(s)&&(a[a.length-1]=n.withText(n.text+s.text),o=1);o<t.content.length;o++)a.push(t.content[o]);return new Fragment(a,this.size+t.size)}cut(t,n=this.size){if(t==0&&n==this.size)return this;let s=[],a=0;if(n>t)for(let o=0,l=0;l<n;o++){let c=this.content[o],d=l+c.nodeSize;d>t&&((l<t||d>n)&&(c.isText?c=c.cut(Math.max(0,t-l),Math.min(c.text.length,n-l)):c=c.cut(Math.max(0,t-l-1),Math.min(c.content.size,n-l-1))),s.push(c),a+=c.nodeSize),l=d}return new Fragment(s,a)}cutByIndex(t,n){return t==n?Fragment.empty:t==0&&n==this.content.length?this:new Fragment(this.content.slice(t,n))}replaceChild(t,n){let s=this.content[t];if(s==n)return this;let a=this.content.slice(),o=this.size+n.nodeSize-s.nodeSize;return a[t]=n,new Fragment(a,o)}addToStart(t){return new Fragment([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new Fragment(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let n=0;n<this.content.length;n++)if(!this.content[n].eq(t.content[n]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(t){let n=this.content[t];if(!n)throw new RangeError("Index "+t+" out of range for "+this);return n}maybeChild(t){return this.content[t]||null}forEach(t){for(let n=0,s=0;n<this.content.length;n++){let a=this.content[n];t(a,s,n),s+=a.nodeSize}}findDiffStart(t,n=0){return findDiffStart(this,t,n)}findDiffEnd(t,n=this.size,s=t.size){return findDiffEnd(this,t,n,s)}findIndex(t){if(t==0)return retIndex(0,t);if(t==this.size)return retIndex(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let n=0,s=0;;n++){let a=this.child(n),o=s+a.nodeSize;if(o>=t)return o==t?retIndex(n+1,o):retIndex(n,s);s=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(t=>t.toJSON()):null}static fromJSON(t,n){if(!n)return Fragment.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return new Fragment(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return Fragment.empty;let n,s=0;for(let a=0;a<t.length;a++){let o=t[a];s+=o.nodeSize,a&&o.isText&&t[a-1].sameMarkup(o)?(n||(n=t.slice(0,a)),n[n.length-1]=o.withText(n[n.length-1].text+o.text)):n&&n.push(o)}return new Fragment(n||t,s)}static from(t){if(!t)return Fragment.empty;if(t instanceof Fragment)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new Fragment([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}Fragment.empty=new Fragment([],0);const found={index:0,offset:0};function retIndex(e,t){return found.index=e,found.offset=t,found}function compareDeep(e,t){if(e===t)return!0;if(!(e&&typeof e=="object")||!(t&&typeof t=="object"))return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let s=0;s<e.length;s++)if(!compareDeep(e[s],t[s]))return!1}else{for(let s in e)if(!(s in t)||!compareDeep(e[s],t[s]))return!1;for(let s in t)if(!(s in e))return!1}return!0}let Mark$1=class Vr{constructor(t,n){this.type=t,this.attrs=n}addToSet(t){let n,s=!1;for(let a=0;a<t.length;a++){let o=t[a];if(this.eq(o))return t;if(this.type.excludes(o.type))n||(n=t.slice(0,a));else{if(o.type.excludes(this.type))return t;!s&&o.type.rank>this.type.rank&&(n||(n=t.slice(0,a)),n.push(this),s=!0),n&&n.push(o)}}return n||(n=t.slice()),s||n.push(this),n}removeFromSet(t){for(let n=0;n<t.length;n++)if(this.eq(t[n]))return t.slice(0,n).concat(t.slice(n+1));return t}isInSet(t){for(let n=0;n<t.length;n++)if(this.eq(t[n]))return!0;return!1}eq(t){return this==t||this.type==t.type&&compareDeep(this.attrs,t.attrs)}toJSON(){let t={type:this.type.name};for(let n in this.attrs){t.attrs=this.attrs;break}return t}static fromJSON(t,n){if(!n)throw new RangeError("Invalid input for Mark.fromJSON");let s=t.marks[n.type];if(!s)throw new RangeError(`There is no mark type ${n.type} in this schema`);let a=s.create(n.attrs);return s.checkAttrs(a.attrs),a}static sameSet(t,n){if(t==n)return!0;if(t.length!=n.length)return!1;for(let s=0;s<t.length;s++)if(!t[s].eq(n[s]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return Vr.none;if(t instanceof Vr)return[t];let n=t.slice();return n.sort((s,a)=>s.type.rank-a.type.rank),n}};Mark$1.none=[];class ReplaceError extends Error{}class Slice{constructor(t,n,s){this.content=t,this.openStart=n,this.openEnd=s}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let s=insertInto(this.content,t+this.openStart,n);return s&&new Slice(s,this.openStart,this.openEnd)}removeBetween(t,n){return new Slice(removeRange(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,n){if(!n)return Slice.empty;let s=n.openStart||0,a=n.openEnd||0;if(typeof s!="number"||typeof a!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new Slice(Fragment.fromJSON(t,n.content),s,a)}static maxOpen(t,n=!0){let s=0,a=0;for(let o=t.firstChild;o&&!o.isLeaf&&(n||!o.type.spec.isolating);o=o.firstChild)s++;for(let o=t.lastChild;o&&!o.isLeaf&&(n||!o.type.spec.isolating);o=o.lastChild)a++;return new Slice(t,s,a)}}Slice.empty=new Slice(Fragment.empty,0,0);function removeRange(e,t,n){let{index:s,offset:a}=e.findIndex(t),o=e.maybeChild(s),{index:l,offset:c}=e.findIndex(n);if(a==t||o.isText){if(c!=n&&!e.child(l).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(n))}if(s!=l)throw new RangeError("Removing non-flat range");return e.replaceChild(s,o.copy(removeRange(o.content,t-a-1,n-a-1)))}function insertInto(e,t,n,s){let{index:a,offset:o}=e.findIndex(t),l=e.maybeChild(a);if(o==t||l.isText)return s&&!s.canReplace(a,a,n)?null:e.cut(0,t).append(n).append(e.cut(t));let c=insertInto(l.content,t-o-1,n,l);return c&&e.replaceChild(a,l.copy(c))}function replace(e,t,n){if(n.openStart>e.depth)throw new ReplaceError("Inserted content deeper than insertion position");if(e.depth-n.openStart!=t.depth-n.openEnd)throw new ReplaceError("Inconsistent open depths");return replaceOuter(e,t,n,0)}function replaceOuter(e,t,n,s){let a=e.index(s),o=e.node(s);if(a==t.index(s)&&s<e.depth-n.openStart){let l=replaceOuter(e,t,n,s+1);return o.copy(o.content.replaceChild(a,l))}else if(n.content.size)if(!n.openStart&&!n.openEnd&&e.depth==s&&t.depth==s){let l=e.parent,c=l.content;return close(l,c.cut(0,e.parentOffset).append(n.content).append(c.cut(t.parentOffset)))}else{let{start:l,end:c}=prepareSliceForReplace(n,e);return close(o,replaceThreeWay(e,l,c,t,s))}else return close(o,replaceTwoWay(e,t,s))}function checkJoin(e,t){if(!t.type.compatibleContent(e.type))throw new ReplaceError("Cannot join "+t.type.name+" onto "+e.type.name)}function joinable$1(e,t,n){let s=e.node(n);return checkJoin(s,t.node(n)),s}function addNode(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function addRange(e,t,n,s){let a=(t||e).node(n),o=0,l=t?t.index(n):a.childCount;e&&(o=e.index(n),e.depth>n?o++:e.textOffset&&(addNode(e.nodeAfter,s),o++));for(let c=o;c<l;c++)addNode(a.child(c),s);t&&t.depth==n&&t.textOffset&&addNode(t.nodeBefore,s)}function close(e,t){return e.type.checkContent(t),e.copy(t)}function replaceThreeWay(e,t,n,s,a){let o=e.depth>a&&joinable$1(e,t,a+1),l=s.depth>a&&joinable$1(n,s,a+1),c=[];return addRange(null,e,a,c),o&&l&&t.index(a)==n.index(a)?(checkJoin(o,l),addNode(close(o,replaceThreeWay(e,t,n,s,a+1)),c)):(o&&addNode(close(o,replaceTwoWay(e,t,a+1)),c),addRange(t,n,a,c),l&&addNode(close(l,replaceTwoWay(n,s,a+1)),c)),addRange(s,null,a,c),new Fragment(c)}function replaceTwoWay(e,t,n){let s=[];if(addRange(null,e,n,s),e.depth>n){let a=joinable$1(e,t,n+1);addNode(close(a,replaceTwoWay(e,t,n+1)),s)}return addRange(t,null,n,s),new Fragment(s)}function prepareSliceForReplace(e,t){let n=t.depth-e.openStart,a=t.node(n).copy(e.content);for(let o=n-1;o>=0;o--)a=t.node(o).copy(Fragment.from(a));return{start:a.resolveNoCache(e.openStart+n),end:a.resolveNoCache(a.content.size-e.openEnd-n)}}class ResolvedPos{constructor(t,n,s){this.pos=t,this.path=n,this.parentOffset=s,this.depth=n.length/3-1}resolveDepth(t){return t==null?this.depth:t<0?this.depth+t:t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[this.resolveDepth(t)*3]}index(t){return this.path[this.resolveDepth(t)*3+1]}indexAfter(t){return t=this.resolveDepth(t),this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){return t=this.resolveDepth(t),t==0?0:this.path[t*3-1]+1}end(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size}before(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]}after(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,n=this.index(this.depth);if(n==t.childCount)return null;let s=this.pos-this.path[this.path.length-1],a=t.child(n);return s?t.child(n).cut(s):a}get nodeBefore(){let t=this.index(this.depth),n=this.pos-this.path[this.path.length-1];return n?this.parent.child(t).cut(0,n):t==0?null:this.parent.child(t-1)}posAtIndex(t,n){n=this.resolveDepth(n);let s=this.path[n*3],a=n==0?0:this.path[n*3-1]+1;for(let o=0;o<t;o++)a+=s.child(o).nodeSize;return a}marks(){let t=this.parent,n=this.index();if(t.content.size==0)return Mark$1.none;if(this.textOffset)return t.child(n).marks;let s=t.maybeChild(n-1),a=t.maybeChild(n);if(!s){let c=s;s=a,a=c}let o=s.marks;for(var l=0;l<o.length;l++)o[l].type.spec.inclusive===!1&&(!a||!o[l].isInSet(a.marks))&&(o=o[l--].removeFromSet(o));return o}marksAcross(t){let n=this.parent.maybeChild(this.index());if(!n||!n.isInline)return null;let s=n.marks,a=t.parent.maybeChild(t.index());for(var o=0;o<s.length;o++)s[o].type.spec.inclusive===!1&&(!a||!s[o].isInSet(a.marks))&&(s=s[o--].removeFromSet(s));return s}sharedDepth(t){for(let n=this.depth;n>0;n--)if(this.start(n)<=t&&this.end(n)>=t)return n;return 0}blockRange(t=this,n){if(t.pos<this.pos)return t.blockRange(this);for(let s=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);s>=0;s--)if(t.pos<=this.end(s)&&(!n||n(this.node(s))))return new NodeRange(this,t,s);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos<this.pos?t:this}toString(){let t="";for(let n=1;n<=this.depth;n++)t+=(t?"/":"")+this.node(n).type.name+"_"+this.index(n-1);return t+":"+this.parentOffset}static resolve(t,n){if(!(n>=0&&n<=t.content.size))throw new RangeError("Position "+n+" out of range");let s=[],a=0,o=n;for(let l=t;;){let{index:c,offset:d}=l.content.findIndex(o),f=o-d;if(s.push(l,c,a+d),!f||(l=l.child(c),l.isText))break;o=f-1,a+=d+1}return new ResolvedPos(n,s,o)}static resolveCached(t,n){let s=resolveCache.get(t);if(s)for(let o=0;o<s.elts.length;o++){let l=s.elts[o];if(l.pos==n)return l}else resolveCache.set(t,s=new ResolveCache);let a=s.elts[s.i]=ResolvedPos.resolve(t,n);return s.i=(s.i+1)%resolveCacheSize,a}}class ResolveCache{constructor(){this.elts=[],this.i=0}}const resolveCacheSize=12,resolveCache=new WeakMap;class NodeRange{constructor(t,n,s){this.$from=t,this.$to=n,this.depth=s}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const emptyAttrs=Object.create(null);let Node$1=class zr{constructor(t,n,s,a=Mark$1.none){this.type=t,this.attrs=n,this.marks=a,this.content=s||Fragment.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(t){return this.content.child(t)}maybeChild(t){return this.content.maybeChild(t)}forEach(t){this.content.forEach(t)}nodesBetween(t,n,s,a=0){this.content.nodesBetween(t,n,s,a,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,n,s,a){return this.content.textBetween(t,n,s,a)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,n,s){return this.type==t&&compareDeep(this.attrs,n||t.defaultAttrs||emptyAttrs)&&Mark$1.sameSet(this.marks,s||Mark$1.none)}copy(t=null){return t==this.content?this:new zr(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new zr(this.type,this.attrs,this.content,t)}cut(t,n=this.content.size){return t==0&&n==this.content.size?this:this.copy(this.content.cut(t,n))}slice(t,n=this.content.size,s=!1){if(t==n)return Slice.empty;let a=this.resolve(t),o=this.resolve(n),l=s?0:a.sharedDepth(n),c=a.start(l),f=a.node(l).content.cut(a.pos-c,o.pos-c);return new Slice(f,a.depth-l,o.depth-l)}replace(t,n,s){return replace(this.resolve(t),this.resolve(n),s)}nodeAt(t){for(let n=this;;){let{index:s,offset:a}=n.content.findIndex(t);if(n=n.maybeChild(s),!n)return null;if(a==t||n.isText)return n;t-=a+1}}childAfter(t){let{index:n,offset:s}=this.content.findIndex(t);return{node:this.content.maybeChild(n),index:n,offset:s}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:n,offset:s}=this.content.findIndex(t);if(s<t)return{node:this.content.child(n),index:n,offset:s};let a=this.content.child(n-1);return{node:a,index:n-1,offset:s-a.nodeSize}}resolve(t){return ResolvedPos.resolveCached(this,t)}resolveNoCache(t){return ResolvedPos.resolve(this,t)}rangeHasMark(t,n,s){let a=!1;return n>t&&this.nodesBetween(t,n,o=>(s.isInSet(o.marks)&&(a=!0),!a)),a}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),wrapMarks(this.marks,t)}contentMatchAt(t){let n=this.type.contentMatch.matchFragment(this.content,0,t);if(!n)throw new Error("Called contentMatchAt on a node with invalid content");return n}canReplace(t,n,s=Fragment.empty,a=0,o=s.childCount){let l=this.contentMatchAt(t).matchFragment(s,a,o),c=l&&l.matchFragment(this.content,n);if(!c||!c.validEnd)return!1;for(let d=a;d<o;d++)if(!this.type.allowsMarks(s.child(d).marks))return!1;return!0}canReplaceWith(t,n,s,a){if(a&&!this.type.allowsMarks(a))return!1;let o=this.contentMatchAt(t).matchType(s),l=o&&o.matchFragment(this.content,n);return l?l.validEnd:!1}canAppend(t){return t.content.size?this.canReplace(this.childCount,this.childCount,t.content):this.type.compatibleContent(t.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let t=Mark$1.none;for(let n=0;n<this.marks.length;n++){let s=this.marks[n];s.type.checkAttrs(s.attrs),t=s.addToSet(t)}if(!Mark$1.sameSet(t,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(n=>n.type.name)}`);this.content.forEach(n=>n.check())}toJSON(){let t={type:this.type.name};for(let n in this.attrs){t.attrs=this.attrs;break}return this.content.size&&(t.content=this.content.toJSON()),this.marks.length&&(t.marks=this.marks.map(n=>n.toJSON())),t}static fromJSON(t,n){if(!n)throw new RangeError("Invalid input for Node.fromJSON");let s;if(n.marks){if(!Array.isArray(n.marks))throw new RangeError("Invalid mark data for Node.fromJSON");s=n.marks.map(t.markFromJSON)}if(n.type=="text"){if(typeof n.text!="string")throw new RangeError("Invalid text node in JSON");return t.text(n.text,s)}let a=Fragment.fromJSON(t,n.content),o=t.nodeType(n.type).create(n.attrs,a,s);return o.type.checkAttrs(o.attrs),o}};Node$1.prototype.text=void 0;class TextNode extends Node$1{constructor(t,n,s,a){if(super(t,n,null,a),!s)throw new RangeError("Empty text nodes are not allowed");this.text=s}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):wrapMarks(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(t,n){return this.text.slice(t,n)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new TextNode(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new TextNode(this.type,this.attrs,t,this.marks)}cut(t=0,n=this.text.length){return t==0&&n==this.text.length?this:this.withText(this.text.slice(t,n))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();return t.text=this.text,t}}function wrapMarks(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+"("+t+")";return t}class ContentMatch{constructor(t){this.validEnd=t,this.next=[],this.wrapCache=[]}static parse(t,n){let s=new TokenStream(t,n);if(s.next==null)return ContentMatch.empty;let a=parseExpr(s);s.next&&s.err("Unexpected trailing text");let o=dfa(nfa(a));return checkForDeadEnds(o,s),o}matchType(t){for(let n=0;n<this.next.length;n++)if(this.next[n].type==t)return this.next[n].next;return null}matchFragment(t,n=0,s=t.childCount){let a=this;for(let o=n;a&&o<s;o++)a=a.matchType(t.child(o).type);return a}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let t=0;t<this.next.length;t++){let{type:n}=this.next[t];if(!(n.isText||n.hasRequiredAttrs()))return n}return null}compatible(t){for(let n=0;n<this.next.length;n++)for(let s=0;s<t.next.length;s++)if(this.next[n].type==t.next[s].type)return!0;return!1}fillBefore(t,n=!1,s=0){let a=[this];function o(l,c){let d=l.matchFragment(t,s);if(d&&(!n||d.validEnd))return Fragment.from(c.map(f=>f.createAndFill()));for(let f=0;f<l.next.length;f++){let{type:R,next:S}=l.next[f];if(!(R.isText||R.hasRequiredAttrs())&&a.indexOf(S)==-1){a.push(S);let te=o(S,c.concat(R));if(te)return te}}return null}return o(this,[])}findWrapping(t){for(let s=0;s<this.wrapCache.length;s+=2)if(this.wrapCache[s]==t)return this.wrapCache[s+1];let n=this.computeWrapping(t);return this.wrapCache.push(t,n),n}computeWrapping(t){let n=Object.create(null),s=[{match:this,type:null,via:null}];for(;s.length;){let a=s.shift(),o=a.match;if(o.matchType(t)){let l=[];for(let c=a;c.type;c=c.via)l.push(c.type);return l.reverse()}for(let l=0;l<o.next.length;l++){let{type:c,next:d}=o.next[l];!c.isLeaf&&!c.hasRequiredAttrs()&&!(c.name in n)&&(!a.type||d.validEnd)&&(s.push({match:c.contentMatch,type:c,via:a}),n[c.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(t){if(t>=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];function n(s){t.push(s);for(let a=0;a<s.next.length;a++)t.indexOf(s.next[a].next)==-1&&n(s.next[a].next)}return n(this),t.map((s,a)=>{let o=a+(s.validEnd?"*":" ")+" ";for(let l=0;l<s.next.length;l++)o+=(l?", ":"")+s.next[l].type.name+"->"+t.indexOf(s.next[l].next);return o}).join(`
|
|
523
|
+
For more information, see https://radix-ui.com/primitives/docs/components/alert-dialog`;return React__namespace.useEffect(()=>{document.getElementById(e.current?.getAttribute("aria-describedby"))||console.warn(t)},[t,e]),null},Root2$1=AlertDialog$1,Trigger2$1=AlertDialogTrigger$1,Portal2=AlertDialogPortal$1,Overlay2=AlertDialogOverlay$1,Content2$1=AlertDialogContent$1,Action=AlertDialogAction$1,Cancel=AlertDialogCancel$1,Title2=AlertDialogTitle$1,Description2=AlertDialogDescription$1;const AlertDialog=Root2$1,AlertDialogTrigger=Trigger2$1,AlertDialogPortal=Portal2,AlertDialogOverlay=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Overlay2,{className:cn("fixed inset-0 z-50 bg-foreground/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",e),...t,ref:n}));AlertDialogOverlay.displayName=Overlay2.displayName;const AlertDialogContent=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsxs(AlertDialogPortal,{children:[jsxRuntime.jsx(AlertDialogOverlay,{}),jsxRuntime.jsx(Content2$1,{ref:n,className:cn("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",e),...t})]}));AlertDialogContent.displayName=Content2$1.displayName;const AlertDialogHeader=({className:e,...t})=>jsxRuntime.jsx("div",{className:cn("flex flex-col space-y-2 text-center sm:text-left",e),...t});AlertDialogHeader.displayName="AlertDialogHeader";const AlertDialogFooter=({className:e,...t})=>jsxRuntime.jsx("div",{className:cn("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",e),...t});AlertDialogFooter.displayName="AlertDialogFooter";const AlertDialogTitle=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Title2,{ref:n,className:cn("text-lg font-semibold",e),...t}));AlertDialogTitle.displayName=Title2.displayName;const AlertDialogDescription=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Description2,{ref:n,className:cn("text-sm text-muted-foreground",e),...t}));AlertDialogDescription.displayName=Description2.displayName;const AlertDialogAction=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Action,{ref:n,className:cn(buttonVariants(),e),...t}));AlertDialogAction.displayName=Action.displayName;const AlertDialogCancel=React__namespace.forwardRef(({className:e,...t},n)=>jsxRuntime.jsx(Cancel,{ref:n,className:cn(buttonVariants({variant:"outline"}),"mt-2 sm:mt-0",e),...t}));AlertDialogCancel.displayName=Cancel.displayName;function parseDate(e){if(e==null)return null;const t=e instanceof Date?e:new Date(e);return Number.isNaN(t.getTime())?null:t}function formatLastRefresh(e){const t=parseDate(e);if(!t)return"Never";const n=new Date;return t.getFullYear()===n.getFullYear()&&t.getMonth()===n.getMonth()&&t.getDate()===n.getDate()?`Today at ${new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit",timeZoneName:"short"}).format(t)}`:new Intl.DateTimeFormat(void 0,{month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"2-digit",timeZoneName:"short"}).format(t)}function RefreshCluster({lastRefreshAt:e,onRefresh:t,onProgressiveRefresh:n,onAssistantClick:s,isRefreshing:a=!1,refreshLabel:o="Refresh",assistantLabel:l="Assistant",className:c,disabled:d=!1}){const[f,R]=React__namespace.useState(!1),[S,te]=React__namespace.useState(e);React__namespace.useEffect(()=>{te(e)},[e]);const A=!!(t||n),rt=a||f,st=e??S,it=React__namespace.useCallback(async()=>{if(!(!A||d||rt)){R(!0);try{n?(await n(!1),await n(!0)):await t?.(),te(new Date)}finally{R(!1)}}},[A,d,rt,n,t]);return jsxRuntime.jsxs("div",{className:cn("flex flex-wrap items-center justify-end gap-2",c),children:[jsxRuntime.jsxs("p",{className:"text-xs text-muted-foreground sm:text-sm",children:["Last refresh:"," ",jsxRuntime.jsx("span",{className:"font-medium text-foreground",children:formatLastRefresh(st)})]}),jsxRuntime.jsxs(Button$1,{type:"button",variant:"outline",className:"min-h-11",disabled:d||rt||!A,onClick:it,children:[rt?jsxRuntime.jsx(LoaderCircle,{className:"h-4 w-4 animate-spin","aria-hidden":"true"}):jsxRuntime.jsx(RefreshCw,{className:"h-4 w-4","aria-hidden":"true"}),jsxRuntime.jsx("span",{children:o})]}),jsxRuntime.jsxs(Button$1,{type:"button",variant:"default",className:"min-h-11",disabled:d,onClick:s,children:[jsxRuntime.jsx(Bot,{className:"h-4 w-4","aria-hidden":"true"}),jsxRuntime.jsx("span",{children:l})]})]})}function DataRefreshAssistantCluster({onAssistantClick:e,assistantPromptOptions:t,onAssistantUnavailable:n,...s}){const a=useOptionalChat(),o=React__namespace.useCallback(()=>{if(e){e();return}if(t){if(!a){n?.();return}a.sendMessageWithClear(t.prompt,t.hiddenPrompt,t.sopID)||n?.();return}n?.()},[t,a,e,n]);return jsxRuntime.jsx(RefreshCluster,{...s,onAssistantClick:o})}const fullBleedClassName="w-screen max-w-none -ml-[calc(50vw-50%)] -mr-[calc(50vw-50%)]";function RmPageHeaderBreadcrumbLink({item:e,isCurrent:t}){return!t&&e.href?jsxRuntime.jsx("a",{href:e.href,className:"text-xs font-medium text-muted-foreground underline-offset-4 transition-colors hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",children:e.label}):!t&&e.onClick?jsxRuntime.jsx("button",{type:"button",className:"text-xs font-medium text-muted-foreground underline-offset-4 transition-colors hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",onClick:e.onClick,children:e.label}):jsxRuntime.jsx("span",{"aria-current":t?"page":void 0,className:cn("text-xs font-medium",t?"text-foreground":"text-muted-foreground"),children:e.label})}function RmPageHeaderBreadcrumbs({items:e}){return e.length===0?null:jsxRuntime.jsx("nav",{"aria-label":"Breadcrumb",className:"w-full",children:jsxRuntime.jsx("ol",{className:"flex flex-wrap items-center gap-1.5",children:e.map((t,n)=>{const s=n===e.length-1,a=t.key??`${String(t.label)}-${n}`;return jsxRuntime.jsxs("li",{className:"inline-flex items-center gap-1.5",children:[jsxRuntime.jsx(RmPageHeaderBreadcrumbLink,{item:t,isCurrent:!!t.current||s}),s?null:jsxRuntime.jsx("span",{"aria-hidden":"true",className:"text-xs text-muted-foreground",children:"/"})]},a)})})})}function RmPageHeader({title:e,subtitle:t,breadcrumbs:n,rightTopActions:s,rightBottomActions:a,secondaryRow:o,sticky:l=!1,stickyClassName:c,className:d,cardClassName:f,contentClassName:R}){const S=!!(s||a),te=jsxRuntime.jsxs("header",{className:cn("w-full border-b border-border bg-background",d),children:[jsxRuntime.jsx("div",{className:cn("px-4 py-6 sm:px-6",f),children:jsxRuntime.jsxs("div",{className:cn("flex flex-col gap-4 lg:flex-row lg:items-start lg:justify-between",R),children:[jsxRuntime.jsxs("div",{className:"space-y-1.5",children:[n?.length?jsxRuntime.jsx(RmPageHeaderBreadcrumbs,{items:n}):null,jsxRuntime.jsx("h1",{className:"text-2xl font-semibold leading-tight tracking-tight text-foreground",children:e}),t?jsxRuntime.jsx("p",{className:"text-sm text-muted-foreground",children:t}):null]}),S?jsxRuntime.jsxs("div",{className:"flex w-full flex-col items-start gap-2 lg:w-auto lg:min-w-[16rem] lg:items-end",children:[s?jsxRuntime.jsx("div",{className:"flex w-full flex-wrap items-center justify-start gap-2 lg:justify-end",children:s}):null,a?jsxRuntime.jsx("div",{className:"flex w-full flex-wrap items-center justify-start gap-2 lg:justify-end",children:a}):null]}):null]})}),o?jsxRuntime.jsx("div",{className:"border-t border-border bg-muted/40",children:jsxRuntime.jsx("div",{className:"px-4 py-4 sm:px-6",children:o})}):null]});return l?jsxRuntime.jsx("div",{className:fullBleedClassName,children:jsxRuntime.jsx("div",{className:cn("sticky top-0 z-20",c),children:te})}):jsxRuntime.jsx("div",{className:fullBleedClassName,children:te})}function PageHeader({title:e,children:t,className:n}){return jsxRuntime.jsx(RmPageHeader,{title:e,rightBottomActions:t?jsxRuntime.jsx("div",{className:"flex shrink-0 flex-wrap items-center gap-2",children:t}):void 0,cardClassName:n})}function RmBodyZone({className:e,children:t,...n}){return jsxRuntime.jsx("section",{className:cn("px-4 py-4 sm:px-6 sm:py-6",e),...n,children:t})}function OrderedMap(e){this.content=e}OrderedMap.prototype={constructor:OrderedMap,find:function(e){for(var t=0;t<this.content.length;t+=2)if(this.content[t]===e)return t;return-1},get:function(e){var t=this.find(e);return t==-1?void 0:this.content[t+1]},update:function(e,t,n){var s=n&&n!=e?this.remove(n):this,a=s.find(e),o=s.content.slice();return a==-1?o.push(n||e,t):(o[a+1]=t,n&&(o[a]=n)),new OrderedMap(o)},remove:function(e){var t=this.find(e);if(t==-1)return this;var n=this.content.slice();return n.splice(t,2),new OrderedMap(n)},addToStart:function(e,t){return new OrderedMap([e,t].concat(this.remove(e).content))},addToEnd:function(e,t){var n=this.remove(e).content.slice();return n.push(e,t),new OrderedMap(n)},addBefore:function(e,t,n){var s=this.remove(t),a=s.content.slice(),o=s.find(e);return a.splice(o==-1?a.length:o,0,t,n),new OrderedMap(a)},forEach:function(e){for(var t=0;t<this.content.length;t+=2)e(this.content[t],this.content[t+1])},prepend:function(e){return e=OrderedMap.from(e),e.size?new OrderedMap(e.content.concat(this.subtract(e).content)):this},append:function(e){return e=OrderedMap.from(e),e.size?new OrderedMap(this.subtract(e).content.concat(e.content)):this},subtract:function(e){var t=this;e=OrderedMap.from(e);for(var n=0;n<e.content.length;n+=2)t=t.remove(e.content[n]);return t},toObject:function(){var e={};return this.forEach(function(t,n){e[t]=n}),e},get size(){return this.content.length>>1}},OrderedMap.from=function(e){if(e instanceof OrderedMap)return e;var t=[];if(e)for(var n in e)t.push(n,e[n]);return new OrderedMap(t)};function findDiffStart(e,t,n){for(let s=0;;s++){if(s==e.childCount||s==t.childCount)return e.childCount==t.childCount?null:n;let a=e.child(s),o=t.child(s);if(a==o){n+=a.nodeSize;continue}if(!a.sameMarkup(o))return n;if(a.isText&&a.text!=o.text){for(let l=0;a.text[l]==o.text[l];l++)n++;return n}if(a.content.size||o.content.size){let l=findDiffStart(a.content,o.content,n+1);if(l!=null)return l}n+=a.nodeSize}}function findDiffEnd(e,t,n,s){for(let a=e.childCount,o=t.childCount;;){if(a==0||o==0)return a==o?null:{a:n,b:s};let l=e.child(--a),c=t.child(--o),d=l.nodeSize;if(l==c){n-=d,s-=d;continue}if(!l.sameMarkup(c))return{a:n,b:s};if(l.isText&&l.text!=c.text){let f=0,R=Math.min(l.text.length,c.text.length);for(;f<R&&l.text[l.text.length-f-1]==c.text[c.text.length-f-1];)f++,n--,s--;return{a:n,b:s}}if(l.content.size||c.content.size){let f=findDiffEnd(l.content,c.content,n-1,s-1);if(f)return f}n-=d,s-=d}}class Fragment{constructor(t,n){if(this.content=t,this.size=n||0,n==null)for(let s=0;s<t.length;s++)this.size+=t[s].nodeSize}nodesBetween(t,n,s,a=0,o){for(let l=0,c=0;c<n;l++){let d=this.content[l],f=c+d.nodeSize;if(f>t&&s(d,a+c,o||null,l)!==!1&&d.content.size){let R=c+1;d.nodesBetween(Math.max(0,t-R),Math.min(d.content.size,n-R),s,a+R)}c=f}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,n,s,a){let o="",l=!0;return this.nodesBetween(t,n,(c,d)=>{let f=c.isText?c.text.slice(Math.max(t,d)-d,n-d):c.isLeaf?a?typeof a=="function"?a(c):a:c.type.spec.leafText?c.type.spec.leafText(c):"":"";c.isBlock&&(c.isLeaf&&f||c.isTextblock)&&s&&(l?l=!1:o+=s),o+=f},0),o}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,s=t.firstChild,a=this.content.slice(),o=0;for(n.isText&&n.sameMarkup(s)&&(a[a.length-1]=n.withText(n.text+s.text),o=1);o<t.content.length;o++)a.push(t.content[o]);return new Fragment(a,this.size+t.size)}cut(t,n=this.size){if(t==0&&n==this.size)return this;let s=[],a=0;if(n>t)for(let o=0,l=0;l<n;o++){let c=this.content[o],d=l+c.nodeSize;d>t&&((l<t||d>n)&&(c.isText?c=c.cut(Math.max(0,t-l),Math.min(c.text.length,n-l)):c=c.cut(Math.max(0,t-l-1),Math.min(c.content.size,n-l-1))),s.push(c),a+=c.nodeSize),l=d}return new Fragment(s,a)}cutByIndex(t,n){return t==n?Fragment.empty:t==0&&n==this.content.length?this:new Fragment(this.content.slice(t,n))}replaceChild(t,n){let s=this.content[t];if(s==n)return this;let a=this.content.slice(),o=this.size+n.nodeSize-s.nodeSize;return a[t]=n,new Fragment(a,o)}addToStart(t){return new Fragment([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new Fragment(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let n=0;n<this.content.length;n++)if(!this.content[n].eq(t.content[n]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(t){let n=this.content[t];if(!n)throw new RangeError("Index "+t+" out of range for "+this);return n}maybeChild(t){return this.content[t]||null}forEach(t){for(let n=0,s=0;n<this.content.length;n++){let a=this.content[n];t(a,s,n),s+=a.nodeSize}}findDiffStart(t,n=0){return findDiffStart(this,t,n)}findDiffEnd(t,n=this.size,s=t.size){return findDiffEnd(this,t,n,s)}findIndex(t){if(t==0)return retIndex(0,t);if(t==this.size)return retIndex(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let n=0,s=0;;n++){let a=this.child(n),o=s+a.nodeSize;if(o>=t)return o==t?retIndex(n+1,o):retIndex(n,s);s=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(t=>t.toJSON()):null}static fromJSON(t,n){if(!n)return Fragment.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return new Fragment(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return Fragment.empty;let n,s=0;for(let a=0;a<t.length;a++){let o=t[a];s+=o.nodeSize,a&&o.isText&&t[a-1].sameMarkup(o)?(n||(n=t.slice(0,a)),n[n.length-1]=o.withText(n[n.length-1].text+o.text)):n&&n.push(o)}return new Fragment(n||t,s)}static from(t){if(!t)return Fragment.empty;if(t instanceof Fragment)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new Fragment([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}Fragment.empty=new Fragment([],0);const found={index:0,offset:0};function retIndex(e,t){return found.index=e,found.offset=t,found}function compareDeep(e,t){if(e===t)return!0;if(!(e&&typeof e=="object")||!(t&&typeof t=="object"))return!1;let n=Array.isArray(e);if(Array.isArray(t)!=n)return!1;if(n){if(e.length!=t.length)return!1;for(let s=0;s<e.length;s++)if(!compareDeep(e[s],t[s]))return!1}else{for(let s in e)if(!(s in t)||!compareDeep(e[s],t[s]))return!1;for(let s in t)if(!(s in e))return!1}return!0}let Mark$1=class Vr{constructor(t,n){this.type=t,this.attrs=n}addToSet(t){let n,s=!1;for(let a=0;a<t.length;a++){let o=t[a];if(this.eq(o))return t;if(this.type.excludes(o.type))n||(n=t.slice(0,a));else{if(o.type.excludes(this.type))return t;!s&&o.type.rank>this.type.rank&&(n||(n=t.slice(0,a)),n.push(this),s=!0),n&&n.push(o)}}return n||(n=t.slice()),s||n.push(this),n}removeFromSet(t){for(let n=0;n<t.length;n++)if(this.eq(t[n]))return t.slice(0,n).concat(t.slice(n+1));return t}isInSet(t){for(let n=0;n<t.length;n++)if(this.eq(t[n]))return!0;return!1}eq(t){return this==t||this.type==t.type&&compareDeep(this.attrs,t.attrs)}toJSON(){let t={type:this.type.name};for(let n in this.attrs){t.attrs=this.attrs;break}return t}static fromJSON(t,n){if(!n)throw new RangeError("Invalid input for Mark.fromJSON");let s=t.marks[n.type];if(!s)throw new RangeError(`There is no mark type ${n.type} in this schema`);let a=s.create(n.attrs);return s.checkAttrs(a.attrs),a}static sameSet(t,n){if(t==n)return!0;if(t.length!=n.length)return!1;for(let s=0;s<t.length;s++)if(!t[s].eq(n[s]))return!1;return!0}static setFrom(t){if(!t||Array.isArray(t)&&t.length==0)return Vr.none;if(t instanceof Vr)return[t];let n=t.slice();return n.sort((s,a)=>s.type.rank-a.type.rank),n}};Mark$1.none=[];class ReplaceError extends Error{}class Slice{constructor(t,n,s){this.content=t,this.openStart=n,this.openEnd=s}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let s=insertInto(this.content,t+this.openStart,n);return s&&new Slice(s,this.openStart,this.openEnd)}removeBetween(t,n){return new Slice(removeRange(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,n){if(!n)return Slice.empty;let s=n.openStart||0,a=n.openEnd||0;if(typeof s!="number"||typeof a!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new Slice(Fragment.fromJSON(t,n.content),s,a)}static maxOpen(t,n=!0){let s=0,a=0;for(let o=t.firstChild;o&&!o.isLeaf&&(n||!o.type.spec.isolating);o=o.firstChild)s++;for(let o=t.lastChild;o&&!o.isLeaf&&(n||!o.type.spec.isolating);o=o.lastChild)a++;return new Slice(t,s,a)}}Slice.empty=new Slice(Fragment.empty,0,0);function removeRange(e,t,n){let{index:s,offset:a}=e.findIndex(t),o=e.maybeChild(s),{index:l,offset:c}=e.findIndex(n);if(a==t||o.isText){if(c!=n&&!e.child(l).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(n))}if(s!=l)throw new RangeError("Removing non-flat range");return e.replaceChild(s,o.copy(removeRange(o.content,t-a-1,n-a-1)))}function insertInto(e,t,n,s){let{index:a,offset:o}=e.findIndex(t),l=e.maybeChild(a);if(o==t||l.isText)return s&&!s.canReplace(a,a,n)?null:e.cut(0,t).append(n).append(e.cut(t));let c=insertInto(l.content,t-o-1,n,l);return c&&e.replaceChild(a,l.copy(c))}function replace(e,t,n){if(n.openStart>e.depth)throw new ReplaceError("Inserted content deeper than insertion position");if(e.depth-n.openStart!=t.depth-n.openEnd)throw new ReplaceError("Inconsistent open depths");return replaceOuter(e,t,n,0)}function replaceOuter(e,t,n,s){let a=e.index(s),o=e.node(s);if(a==t.index(s)&&s<e.depth-n.openStart){let l=replaceOuter(e,t,n,s+1);return o.copy(o.content.replaceChild(a,l))}else if(n.content.size)if(!n.openStart&&!n.openEnd&&e.depth==s&&t.depth==s){let l=e.parent,c=l.content;return close(l,c.cut(0,e.parentOffset).append(n.content).append(c.cut(t.parentOffset)))}else{let{start:l,end:c}=prepareSliceForReplace(n,e);return close(o,replaceThreeWay(e,l,c,t,s))}else return close(o,replaceTwoWay(e,t,s))}function checkJoin(e,t){if(!t.type.compatibleContent(e.type))throw new ReplaceError("Cannot join "+t.type.name+" onto "+e.type.name)}function joinable$1(e,t,n){let s=e.node(n);return checkJoin(s,t.node(n)),s}function addNode(e,t){let n=t.length-1;n>=0&&e.isText&&e.sameMarkup(t[n])?t[n]=e.withText(t[n].text+e.text):t.push(e)}function addRange(e,t,n,s){let a=(t||e).node(n),o=0,l=t?t.index(n):a.childCount;e&&(o=e.index(n),e.depth>n?o++:e.textOffset&&(addNode(e.nodeAfter,s),o++));for(let c=o;c<l;c++)addNode(a.child(c),s);t&&t.depth==n&&t.textOffset&&addNode(t.nodeBefore,s)}function close(e,t){return e.type.checkContent(t),e.copy(t)}function replaceThreeWay(e,t,n,s,a){let o=e.depth>a&&joinable$1(e,t,a+1),l=s.depth>a&&joinable$1(n,s,a+1),c=[];return addRange(null,e,a,c),o&&l&&t.index(a)==n.index(a)?(checkJoin(o,l),addNode(close(o,replaceThreeWay(e,t,n,s,a+1)),c)):(o&&addNode(close(o,replaceTwoWay(e,t,a+1)),c),addRange(t,n,a,c),l&&addNode(close(l,replaceTwoWay(n,s,a+1)),c)),addRange(s,null,a,c),new Fragment(c)}function replaceTwoWay(e,t,n){let s=[];if(addRange(null,e,n,s),e.depth>n){let a=joinable$1(e,t,n+1);addNode(close(a,replaceTwoWay(e,t,n+1)),s)}return addRange(t,null,n,s),new Fragment(s)}function prepareSliceForReplace(e,t){let n=t.depth-e.openStart,a=t.node(n).copy(e.content);for(let o=n-1;o>=0;o--)a=t.node(o).copy(Fragment.from(a));return{start:a.resolveNoCache(e.openStart+n),end:a.resolveNoCache(a.content.size-e.openEnd-n)}}class ResolvedPos{constructor(t,n,s){this.pos=t,this.path=n,this.parentOffset=s,this.depth=n.length/3-1}resolveDepth(t){return t==null?this.depth:t<0?this.depth+t:t}get parent(){return this.node(this.depth)}get doc(){return this.node(0)}node(t){return this.path[this.resolveDepth(t)*3]}index(t){return this.path[this.resolveDepth(t)*3+1]}indexAfter(t){return t=this.resolveDepth(t),this.index(t)+(t==this.depth&&!this.textOffset?0:1)}start(t){return t=this.resolveDepth(t),t==0?0:this.path[t*3-1]+1}end(t){return t=this.resolveDepth(t),this.start(t)+this.node(t).content.size}before(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position before the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]}after(t){if(t=this.resolveDepth(t),!t)throw new RangeError("There is no position after the top-level node");return t==this.depth+1?this.pos:this.path[t*3-1]+this.path[t*3].nodeSize}get textOffset(){return this.pos-this.path[this.path.length-1]}get nodeAfter(){let t=this.parent,n=this.index(this.depth);if(n==t.childCount)return null;let s=this.pos-this.path[this.path.length-1],a=t.child(n);return s?t.child(n).cut(s):a}get nodeBefore(){let t=this.index(this.depth),n=this.pos-this.path[this.path.length-1];return n?this.parent.child(t).cut(0,n):t==0?null:this.parent.child(t-1)}posAtIndex(t,n){n=this.resolveDepth(n);let s=this.path[n*3],a=n==0?0:this.path[n*3-1]+1;for(let o=0;o<t;o++)a+=s.child(o).nodeSize;return a}marks(){let t=this.parent,n=this.index();if(t.content.size==0)return Mark$1.none;if(this.textOffset)return t.child(n).marks;let s=t.maybeChild(n-1),a=t.maybeChild(n);if(!s){let c=s;s=a,a=c}let o=s.marks;for(var l=0;l<o.length;l++)o[l].type.spec.inclusive===!1&&(!a||!o[l].isInSet(a.marks))&&(o=o[l--].removeFromSet(o));return o}marksAcross(t){let n=this.parent.maybeChild(this.index());if(!n||!n.isInline)return null;let s=n.marks,a=t.parent.maybeChild(t.index());for(var o=0;o<s.length;o++)s[o].type.spec.inclusive===!1&&(!a||!s[o].isInSet(a.marks))&&(s=s[o--].removeFromSet(s));return s}sharedDepth(t){for(let n=this.depth;n>0;n--)if(this.start(n)<=t&&this.end(n)>=t)return n;return 0}blockRange(t=this,n){if(t.pos<this.pos)return t.blockRange(this);for(let s=this.depth-(this.parent.inlineContent||this.pos==t.pos?1:0);s>=0;s--)if(t.pos<=this.end(s)&&(!n||n(this.node(s))))return new NodeRange(this,t,s);return null}sameParent(t){return this.pos-this.parentOffset==t.pos-t.parentOffset}max(t){return t.pos>this.pos?t:this}min(t){return t.pos<this.pos?t:this}toString(){let t="";for(let n=1;n<=this.depth;n++)t+=(t?"/":"")+this.node(n).type.name+"_"+this.index(n-1);return t+":"+this.parentOffset}static resolve(t,n){if(!(n>=0&&n<=t.content.size))throw new RangeError("Position "+n+" out of range");let s=[],a=0,o=n;for(let l=t;;){let{index:c,offset:d}=l.content.findIndex(o),f=o-d;if(s.push(l,c,a+d),!f||(l=l.child(c),l.isText))break;o=f-1,a+=d+1}return new ResolvedPos(n,s,o)}static resolveCached(t,n){let s=resolveCache.get(t);if(s)for(let o=0;o<s.elts.length;o++){let l=s.elts[o];if(l.pos==n)return l}else resolveCache.set(t,s=new ResolveCache);let a=s.elts[s.i]=ResolvedPos.resolve(t,n);return s.i=(s.i+1)%resolveCacheSize,a}}class ResolveCache{constructor(){this.elts=[],this.i=0}}const resolveCacheSize=12,resolveCache=new WeakMap;class NodeRange{constructor(t,n,s){this.$from=t,this.$to=n,this.depth=s}get start(){return this.$from.before(this.depth+1)}get end(){return this.$to.after(this.depth+1)}get parent(){return this.$from.node(this.depth)}get startIndex(){return this.$from.index(this.depth)}get endIndex(){return this.$to.indexAfter(this.depth)}}const emptyAttrs=Object.create(null);let Node$1=class zr{constructor(t,n,s,a=Mark$1.none){this.type=t,this.attrs=n,this.marks=a,this.content=s||Fragment.empty}get children(){return this.content.content}get nodeSize(){return this.isLeaf?1:2+this.content.size}get childCount(){return this.content.childCount}child(t){return this.content.child(t)}maybeChild(t){return this.content.maybeChild(t)}forEach(t){this.content.forEach(t)}nodesBetween(t,n,s,a=0){this.content.nodesBetween(t,n,s,a,this)}descendants(t){this.nodesBetween(0,this.content.size,t)}get textContent(){return this.isLeaf&&this.type.spec.leafText?this.type.spec.leafText(this):this.textBetween(0,this.content.size,"")}textBetween(t,n,s,a){return this.content.textBetween(t,n,s,a)}get firstChild(){return this.content.firstChild}get lastChild(){return this.content.lastChild}eq(t){return this==t||this.sameMarkup(t)&&this.content.eq(t.content)}sameMarkup(t){return this.hasMarkup(t.type,t.attrs,t.marks)}hasMarkup(t,n,s){return this.type==t&&compareDeep(this.attrs,n||t.defaultAttrs||emptyAttrs)&&Mark$1.sameSet(this.marks,s||Mark$1.none)}copy(t=null){return t==this.content?this:new zr(this.type,this.attrs,t,this.marks)}mark(t){return t==this.marks?this:new zr(this.type,this.attrs,this.content,t)}cut(t,n=this.content.size){return t==0&&n==this.content.size?this:this.copy(this.content.cut(t,n))}slice(t,n=this.content.size,s=!1){if(t==n)return Slice.empty;let a=this.resolve(t),o=this.resolve(n),l=s?0:a.sharedDepth(n),c=a.start(l),f=a.node(l).content.cut(a.pos-c,o.pos-c);return new Slice(f,a.depth-l,o.depth-l)}replace(t,n,s){return replace(this.resolve(t),this.resolve(n),s)}nodeAt(t){for(let n=this;;){let{index:s,offset:a}=n.content.findIndex(t);if(n=n.maybeChild(s),!n)return null;if(a==t||n.isText)return n;t-=a+1}}childAfter(t){let{index:n,offset:s}=this.content.findIndex(t);return{node:this.content.maybeChild(n),index:n,offset:s}}childBefore(t){if(t==0)return{node:null,index:0,offset:0};let{index:n,offset:s}=this.content.findIndex(t);if(s<t)return{node:this.content.child(n),index:n,offset:s};let a=this.content.child(n-1);return{node:a,index:n-1,offset:s-a.nodeSize}}resolve(t){return ResolvedPos.resolveCached(this,t)}resolveNoCache(t){return ResolvedPos.resolve(this,t)}rangeHasMark(t,n,s){let a=!1;return n>t&&this.nodesBetween(t,n,o=>(s.isInSet(o.marks)&&(a=!0),!a)),a}get isBlock(){return this.type.isBlock}get isTextblock(){return this.type.isTextblock}get inlineContent(){return this.type.inlineContent}get isInline(){return this.type.isInline}get isText(){return this.type.isText}get isLeaf(){return this.type.isLeaf}get isAtom(){return this.type.isAtom}toString(){if(this.type.spec.toDebugString)return this.type.spec.toDebugString(this);let t=this.type.name;return this.content.size&&(t+="("+this.content.toStringInner()+")"),wrapMarks(this.marks,t)}contentMatchAt(t){let n=this.type.contentMatch.matchFragment(this.content,0,t);if(!n)throw new Error("Called contentMatchAt on a node with invalid content");return n}canReplace(t,n,s=Fragment.empty,a=0,o=s.childCount){let l=this.contentMatchAt(t).matchFragment(s,a,o),c=l&&l.matchFragment(this.content,n);if(!c||!c.validEnd)return!1;for(let d=a;d<o;d++)if(!this.type.allowsMarks(s.child(d).marks))return!1;return!0}canReplaceWith(t,n,s,a){if(a&&!this.type.allowsMarks(a))return!1;let o=this.contentMatchAt(t).matchType(s),l=o&&o.matchFragment(this.content,n);return l?l.validEnd:!1}canAppend(t){return t.content.size?this.canReplace(this.childCount,this.childCount,t.content):this.type.compatibleContent(t.type)}check(){this.type.checkContent(this.content),this.type.checkAttrs(this.attrs);let t=Mark$1.none;for(let n=0;n<this.marks.length;n++){let s=this.marks[n];s.type.checkAttrs(s.attrs),t=s.addToSet(t)}if(!Mark$1.sameSet(t,this.marks))throw new RangeError(`Invalid collection of marks for node ${this.type.name}: ${this.marks.map(n=>n.type.name)}`);this.content.forEach(n=>n.check())}toJSON(){let t={type:this.type.name};for(let n in this.attrs){t.attrs=this.attrs;break}return this.content.size&&(t.content=this.content.toJSON()),this.marks.length&&(t.marks=this.marks.map(n=>n.toJSON())),t}static fromJSON(t,n){if(!n)throw new RangeError("Invalid input for Node.fromJSON");let s;if(n.marks){if(!Array.isArray(n.marks))throw new RangeError("Invalid mark data for Node.fromJSON");s=n.marks.map(t.markFromJSON)}if(n.type=="text"){if(typeof n.text!="string")throw new RangeError("Invalid text node in JSON");return t.text(n.text,s)}let a=Fragment.fromJSON(t,n.content),o=t.nodeType(n.type).create(n.attrs,a,s);return o.type.checkAttrs(o.attrs),o}};Node$1.prototype.text=void 0;class TextNode extends Node$1{constructor(t,n,s,a){if(super(t,n,null,a),!s)throw new RangeError("Empty text nodes are not allowed");this.text=s}toString(){return this.type.spec.toDebugString?this.type.spec.toDebugString(this):wrapMarks(this.marks,JSON.stringify(this.text))}get textContent(){return this.text}textBetween(t,n){return this.text.slice(t,n)}get nodeSize(){return this.text.length}mark(t){return t==this.marks?this:new TextNode(this.type,this.attrs,this.text,t)}withText(t){return t==this.text?this:new TextNode(this.type,this.attrs,t,this.marks)}cut(t=0,n=this.text.length){return t==0&&n==this.text.length?this:this.withText(this.text.slice(t,n))}eq(t){return this.sameMarkup(t)&&this.text==t.text}toJSON(){let t=super.toJSON();return t.text=this.text,t}}function wrapMarks(e,t){for(let n=e.length-1;n>=0;n--)t=e[n].type.name+"("+t+")";return t}class ContentMatch{constructor(t){this.validEnd=t,this.next=[],this.wrapCache=[]}static parse(t,n){let s=new TokenStream(t,n);if(s.next==null)return ContentMatch.empty;let a=parseExpr(s);s.next&&s.err("Unexpected trailing text");let o=dfa(nfa(a));return checkForDeadEnds(o,s),o}matchType(t){for(let n=0;n<this.next.length;n++)if(this.next[n].type==t)return this.next[n].next;return null}matchFragment(t,n=0,s=t.childCount){let a=this;for(let o=n;a&&o<s;o++)a=a.matchType(t.child(o).type);return a}get inlineContent(){return this.next.length!=0&&this.next[0].type.isInline}get defaultType(){for(let t=0;t<this.next.length;t++){let{type:n}=this.next[t];if(!(n.isText||n.hasRequiredAttrs()))return n}return null}compatible(t){for(let n=0;n<this.next.length;n++)for(let s=0;s<t.next.length;s++)if(this.next[n].type==t.next[s].type)return!0;return!1}fillBefore(t,n=!1,s=0){let a=[this];function o(l,c){let d=l.matchFragment(t,s);if(d&&(!n||d.validEnd))return Fragment.from(c.map(f=>f.createAndFill()));for(let f=0;f<l.next.length;f++){let{type:R,next:S}=l.next[f];if(!(R.isText||R.hasRequiredAttrs())&&a.indexOf(S)==-1){a.push(S);let te=o(S,c.concat(R));if(te)return te}}return null}return o(this,[])}findWrapping(t){for(let s=0;s<this.wrapCache.length;s+=2)if(this.wrapCache[s]==t)return this.wrapCache[s+1];let n=this.computeWrapping(t);return this.wrapCache.push(t,n),n}computeWrapping(t){let n=Object.create(null),s=[{match:this,type:null,via:null}];for(;s.length;){let a=s.shift(),o=a.match;if(o.matchType(t)){let l=[];for(let c=a;c.type;c=c.via)l.push(c.type);return l.reverse()}for(let l=0;l<o.next.length;l++){let{type:c,next:d}=o.next[l];!c.isLeaf&&!c.hasRequiredAttrs()&&!(c.name in n)&&(!a.type||d.validEnd)&&(s.push({match:c.contentMatch,type:c,via:a}),n[c.name]=!0)}}return null}get edgeCount(){return this.next.length}edge(t){if(t>=this.next.length)throw new RangeError(`There's no ${t}th edge in this content match`);return this.next[t]}toString(){let t=[];function n(s){t.push(s);for(let a=0;a<s.next.length;a++)t.indexOf(s.next[a].next)==-1&&n(s.next[a].next)}return n(this),t.map((s,a)=>{let o=a+(s.validEnd?"*":" ")+" ";for(let l=0;l<s.next.length;l++)o+=(l?", ":"")+s.next[l].type.name+"->"+t.indexOf(s.next[l].next);return o}).join(`
|
|
524
524
|
`)}}ContentMatch.empty=new ContentMatch(!0);class TokenStream{constructor(t,n){this.string=t,this.nodeTypes=n,this.inline=null,this.pos=0,this.tokens=t.split(/\s*(?=\b|\W|$)/),this.tokens[this.tokens.length-1]==""&&this.tokens.pop(),this.tokens[0]==""&&this.tokens.shift()}get next(){return this.tokens[this.pos]}eat(t){return this.next==t&&(this.pos++||!0)}err(t){throw new SyntaxError(t+" (in content expression '"+this.string+"')")}}function parseExpr(e){let t=[];do t.push(parseExprSeq(e));while(e.eat("|"));return t.length==1?t[0]:{type:"choice",exprs:t}}function parseExprSeq(e){let t=[];do t.push(parseExprSubscript(e));while(e.next&&e.next!=")"&&e.next!="|");return t.length==1?t[0]:{type:"seq",exprs:t}}function parseExprSubscript(e){let t=parseExprAtom(e);for(;;)if(e.eat("+"))t={type:"plus",expr:t};else if(e.eat("*"))t={type:"star",expr:t};else if(e.eat("?"))t={type:"opt",expr:t};else if(e.eat("{"))t=parseExprRange(e,t);else break;return t}function parseNum(e){/\D/.test(e.next)&&e.err("Expected number, got '"+e.next+"'");let t=Number(e.next);return e.pos++,t}function parseExprRange(e,t){let n=parseNum(e),s=n;return e.eat(",")&&(e.next!="}"?s=parseNum(e):s=-1),e.eat("}")||e.err("Unclosed braced range"),{type:"range",min:n,max:s,expr:t}}function resolveName(e,t){let n=e.nodeTypes,s=n[t];if(s)return[s];let a=[];for(let o in n){let l=n[o];l.isInGroup(t)&&a.push(l)}return a.length==0&&e.err("No node type or group '"+t+"' found"),a}function parseExprAtom(e){if(e.eat("(")){let t=parseExpr(e);return e.eat(")")||e.err("Missing closing paren"),t}else if(/\W/.test(e.next))e.err("Unexpected token '"+e.next+"'");else{let t=resolveName(e,e.next).map(n=>(e.inline==null?e.inline=n.isInline:e.inline!=n.isInline&&e.err("Mixing inline and block content"),{type:"name",value:n}));return e.pos++,t.length==1?t[0]:{type:"choice",exprs:t}}}function nfa(e){let t=[[]];return a(o(e,0),n()),t;function n(){return t.push([])-1}function s(l,c,d){let f={term:d,to:c};return t[l].push(f),f}function a(l,c){l.forEach(d=>d.to=c)}function o(l,c){if(l.type=="choice")return l.exprs.reduce((d,f)=>d.concat(o(f,c)),[]);if(l.type=="seq")for(let d=0;;d++){let f=o(l.exprs[d],c);if(d==l.exprs.length-1)return f;a(f,c=n())}else if(l.type=="star"){let d=n();return s(c,d),a(o(l.expr,d),d),[s(d)]}else if(l.type=="plus"){let d=n();return a(o(l.expr,c),d),a(o(l.expr,d),d),[s(d)]}else{if(l.type=="opt")return[s(c)].concat(o(l.expr,c));if(l.type=="range"){let d=c;for(let f=0;f<l.min;f++){let R=n();a(o(l.expr,d),R),d=R}if(l.max==-1)a(o(l.expr,d),d);else for(let f=l.min;f<l.max;f++){let R=n();s(d,R),a(o(l.expr,d),R),d=R}return[s(d)]}else{if(l.type=="name")return[s(c,void 0,l.value)];throw new Error("Unknown expr type")}}}}function cmp(e,t){return t-e}function nullFrom(e,t){let n=[];return s(t),n.sort(cmp);function s(a){let o=e[a];if(o.length==1&&!o[0].term)return s(o[0].to);n.push(a);for(let l=0;l<o.length;l++){let{term:c,to:d}=o[l];!c&&n.indexOf(d)==-1&&s(d)}}}function dfa(e){let t=Object.create(null);return n(nullFrom(e,0));function n(s){let a=[];s.forEach(l=>{e[l].forEach(({term:c,to:d})=>{if(!c)return;let f;for(let R=0;R<a.length;R++)a[R][0]==c&&(f=a[R][1]);nullFrom(e,d).forEach(R=>{f||a.push([c,f=[]]),f.indexOf(R)==-1&&f.push(R)})})});let o=t[s.join(",")]=new ContentMatch(s.indexOf(e.length-1)>-1);for(let l=0;l<a.length;l++){let c=a[l][1].sort(cmp);o.next.push({type:a[l][0],next:t[c.join(",")]||n(c)})}return o}}function checkForDeadEnds(e,t){for(let n=0,s=[e];n<s.length;n++){let a=s[n],o=!a.validEnd,l=[];for(let c=0;c<a.next.length;c++){let{type:d,next:f}=a.next[c];l.push(d.name),o&&!(d.isText||d.hasRequiredAttrs())&&(o=!1),s.indexOf(f)==-1&&s.push(f)}o&&t.err("Only non-generatable nodes ("+l.join(", ")+") in a required position (see https://prosemirror.net/docs/guide/#generatable)")}}function defaultAttrs(e){let t=Object.create(null);for(let n in e){let s=e[n];if(!s.hasDefault)return null;t[n]=s.default}return t}function computeAttrs(e,t){let n=Object.create(null);for(let s in e){let a=t&&t[s];if(a===void 0){let o=e[s];if(o.hasDefault)a=o.default;else throw new RangeError("No value supplied for attribute "+s)}n[s]=a}return n}function checkAttrs(e,t,n,s){for(let a in t)if(!(a in e))throw new RangeError(`Unsupported attribute ${a} for ${n} of type ${a}`);for(let a in e){let o=e[a];o.validate&&o.validate(t[a])}}function initAttrs(e,t){let n=Object.create(null);if(t)for(let s in t)n[s]=new Attribute(e,s,t[s]);return n}let NodeType$1=class Gr{constructor(t,n,s){this.name=t,this.schema=n,this.spec=s,this.markSet=null,this.groups=s.group?s.group.split(" "):[],this.attrs=initAttrs(t,s.attrs),this.defaultAttrs=defaultAttrs(this.attrs),this.contentMatch=null,this.inlineContent=null,this.isBlock=!(s.inline||t=="text"),this.isText=t=="text"}get isInline(){return!this.isBlock}get isTextblock(){return this.isBlock&&this.inlineContent}get isLeaf(){return this.contentMatch==ContentMatch.empty}get isAtom(){return this.isLeaf||!!this.spec.atom}isInGroup(t){return this.groups.indexOf(t)>-1}get whitespace(){return this.spec.whitespace||(this.spec.code?"pre":"normal")}hasRequiredAttrs(){for(let t in this.attrs)if(this.attrs[t].isRequired)return!0;return!1}compatibleContent(t){return this==t||this.contentMatch.compatible(t.contentMatch)}computeAttrs(t){return!t&&this.defaultAttrs?this.defaultAttrs:computeAttrs(this.attrs,t)}create(t=null,n,s){if(this.isText)throw new Error("NodeType.create can't construct text nodes");return new Node$1(this,this.computeAttrs(t),Fragment.from(n),Mark$1.setFrom(s))}createChecked(t=null,n,s){return n=Fragment.from(n),this.checkContent(n),new Node$1(this,this.computeAttrs(t),n,Mark$1.setFrom(s))}createAndFill(t=null,n,s){if(t=this.computeAttrs(t),n=Fragment.from(n),n.size){let l=this.contentMatch.fillBefore(n);if(!l)return null;n=l.append(n)}let a=this.contentMatch.matchFragment(n),o=a&&a.fillBefore(Fragment.empty,!0);return o?new Node$1(this,t,n.append(o),Mark$1.setFrom(s)):null}validContent(t){let n=this.contentMatch.matchFragment(t);if(!n||!n.validEnd)return!1;for(let s=0;s<t.childCount;s++)if(!this.allowsMarks(t.child(s).marks))return!1;return!0}checkContent(t){if(!this.validContent(t))throw new RangeError(`Invalid content for node ${this.name}: ${t.toString().slice(0,50)}`)}checkAttrs(t){checkAttrs(this.attrs,t,"node",this.name)}allowsMarkType(t){return this.markSet==null||this.markSet.indexOf(t)>-1}allowsMarks(t){if(this.markSet==null)return!0;for(let n=0;n<t.length;n++)if(!this.allowsMarkType(t[n].type))return!1;return!0}allowedMarks(t){if(this.markSet==null)return t;let n;for(let s=0;s<t.length;s++)this.allowsMarkType(t[s].type)?n&&n.push(t[s]):n||(n=t.slice(0,s));return n?n.length?n:Mark$1.none:t}static compile(t,n){let s=Object.create(null);t.forEach((o,l)=>s[o]=new Gr(o,n,l));let a=n.spec.topNode||"doc";if(!s[a])throw new RangeError("Schema is missing its top node type ('"+a+"')");if(!s.text)throw new RangeError("Every schema needs a 'text' type");for(let o in s.text.attrs)throw new RangeError("The text node type should not have attributes");return s}};function validateType(e,t,n){let s=n.split("|");return a=>{let o=a===null?"null":typeof a;if(s.indexOf(o)<0)throw new RangeError(`Expected value of type ${s} for attribute ${t} on type ${e}, got ${o}`)}}class Attribute{constructor(t,n,s){this.hasDefault=Object.prototype.hasOwnProperty.call(s,"default"),this.default=s.default,this.validate=typeof s.validate=="string"?validateType(t,n,s.validate):s.validate}get isRequired(){return!this.hasDefault}}class MarkType{constructor(t,n,s,a){this.name=t,this.rank=n,this.schema=s,this.spec=a,this.attrs=initAttrs(t,a.attrs),this.excluded=null;let o=defaultAttrs(this.attrs);this.instance=o?new Mark$1(this,o):null}create(t=null){return!t&&this.instance?this.instance:new Mark$1(this,computeAttrs(this.attrs,t))}static compile(t,n){let s=Object.create(null),a=0;return t.forEach((o,l)=>s[o]=new MarkType(o,a++,n,l)),s}removeFromSet(t){for(var n=0;n<t.length;n++)t[n].type==this&&(t=t.slice(0,n).concat(t.slice(n+1)),n--);return t}isInSet(t){for(let n=0;n<t.length;n++)if(t[n].type==this)return t[n]}checkAttrs(t){checkAttrs(this.attrs,t,"mark",this.name)}excludes(t){return this.excluded.indexOf(t)>-1}}class Schema{constructor(t){this.linebreakReplacement=null,this.cached=Object.create(null);let n=this.spec={};for(let a in t)n[a]=t[a];n.nodes=OrderedMap.from(t.nodes),n.marks=OrderedMap.from(t.marks||{}),this.nodes=NodeType$1.compile(this.spec.nodes,this),this.marks=MarkType.compile(this.spec.marks,this);let s=Object.create(null);for(let a in this.nodes){if(a in this.marks)throw new RangeError(a+" can not be both a node and a mark");let o=this.nodes[a],l=o.spec.content||"",c=o.spec.marks;if(o.contentMatch=s[l]||(s[l]=ContentMatch.parse(l,this.nodes)),o.inlineContent=o.contentMatch.inlineContent,o.spec.linebreakReplacement){if(this.linebreakReplacement)throw new RangeError("Multiple linebreak nodes defined");if(!o.isInline||!o.isLeaf)throw new RangeError("Linebreak replacement nodes must be inline leaf nodes");this.linebreakReplacement=o}o.markSet=c=="_"?null:c?gatherMarks(this,c.split(" ")):c==""||!o.inlineContent?[]:null}for(let a in this.marks){let o=this.marks[a],l=o.spec.excludes;o.excluded=l==null?[o]:l==""?[]:gatherMarks(this,l.split(" "))}this.nodeFromJSON=a=>Node$1.fromJSON(this,a),this.markFromJSON=a=>Mark$1.fromJSON(this,a),this.topNodeType=this.nodes[this.spec.topNode||"doc"],this.cached.wrappings=Object.create(null)}node(t,n=null,s,a){if(typeof t=="string")t=this.nodeType(t);else if(t instanceof NodeType$1){if(t.schema!=this)throw new RangeError("Node type from different schema used ("+t.name+")")}else throw new RangeError("Invalid node type: "+t);return t.createChecked(n,s,a)}text(t,n){let s=this.nodes.text;return new TextNode(s,s.defaultAttrs,t,Mark$1.setFrom(n))}mark(t,n){return typeof t=="string"&&(t=this.marks[t]),t.create(n)}nodeType(t){let n=this.nodes[t];if(!n)throw new RangeError("Unknown node type: "+t);return n}}function gatherMarks(e,t){let n=[];for(let s=0;s<t.length;s++){let a=t[s],o=e.marks[a],l=o;if(o)n.push(o);else for(let c in e.marks){let d=e.marks[c];(a=="_"||d.spec.group&&d.spec.group.split(" ").indexOf(a)>-1)&&n.push(l=d)}if(!l)throw new SyntaxError("Unknown mark type: '"+t[s]+"'")}return n}function isTagRule(e){return e.tag!=null}function isStyleRule(e){return e.style!=null}class DOMParser{constructor(t,n){this.schema=t,this.rules=n,this.tags=[],this.styles=[];let s=this.matchedStyles=[];n.forEach(a=>{if(isTagRule(a))this.tags.push(a);else if(isStyleRule(a)){let o=/[^=]*/.exec(a.style)[0];s.indexOf(o)<0&&s.push(o),this.styles.push(a)}}),this.normalizeLists=!this.tags.some(a=>{if(!/^(ul|ol)\b/.test(a.tag)||!a.node)return!1;let o=t.nodes[a.node];return o.contentMatch.matchType(o)})}parse(t,n={}){let s=new ParseContext(this,n,!1);return s.addAll(t,Mark$1.none,n.from,n.to),s.finish()}parseSlice(t,n={}){let s=new ParseContext(this,n,!0);return s.addAll(t,Mark$1.none,n.from,n.to),Slice.maxOpen(s.finish())}matchTag(t,n,s){for(let a=s?this.tags.indexOf(s)+1:0;a<this.tags.length;a++){let o=this.tags[a];if(matches(t,o.tag)&&(o.namespace===void 0||t.namespaceURI==o.namespace)&&(!o.context||n.matchesContext(o.context))){if(o.getAttrs){let l=o.getAttrs(t);if(l===!1)continue;o.attrs=l||void 0}return o}}}matchStyle(t,n,s,a){for(let o=a?this.styles.indexOf(a)+1:0;o<this.styles.length;o++){let l=this.styles[o],c=l.style;if(!(c.indexOf(t)!=0||l.context&&!s.matchesContext(l.context)||c.length>t.length&&(c.charCodeAt(t.length)!=61||c.slice(t.length+1)!=n))){if(l.getAttrs){let d=l.getAttrs(n);if(d===!1)continue;l.attrs=d||void 0}return l}}}static schemaRules(t){let n=[];function s(a){let o=a.priority==null?50:a.priority,l=0;for(;l<n.length;l++){let c=n[l];if((c.priority==null?50:c.priority)<o)break}n.splice(l,0,a)}for(let a in t.marks){let o=t.marks[a].spec.parseDOM;o&&o.forEach(l=>{s(l=copy(l)),l.mark||l.ignore||l.clearMark||(l.mark=a)})}for(let a in t.nodes){let o=t.nodes[a].spec.parseDOM;o&&o.forEach(l=>{s(l=copy(l)),l.node||l.ignore||l.mark||(l.node=a)})}return n}static fromSchema(t){return t.cached.domParser||(t.cached.domParser=new DOMParser(t,DOMParser.schemaRules(t)))}}const blockTags={address:!0,article:!0,aside:!0,blockquote:!0,canvas:!0,dd:!0,div:!0,dl:!0,fieldset:!0,figcaption:!0,figure:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,li:!0,noscript:!0,ol:!0,output:!0,p:!0,pre:!0,section:!0,table:!0,tfoot:!0,ul:!0},ignoreTags={head:!0,noscript:!0,object:!0,script:!0,style:!0,title:!0},listTags={ol:!0,ul:!0},OPT_PRESERVE_WS=1,OPT_PRESERVE_WS_FULL=2,OPT_OPEN_LEFT=4;function wsOptionsFor(e,t,n){return t!=null?(t?OPT_PRESERVE_WS:0)|(t==="full"?OPT_PRESERVE_WS_FULL:0):e&&e.whitespace=="pre"?OPT_PRESERVE_WS|OPT_PRESERVE_WS_FULL:n&~OPT_OPEN_LEFT}class NodeContext{constructor(t,n,s,a,o,l){this.type=t,this.attrs=n,this.marks=s,this.solid=a,this.options=l,this.content=[],this.activeMarks=Mark$1.none,this.match=o||(l&OPT_OPEN_LEFT?null:t.contentMatch)}findWrapping(t){if(!this.match){if(!this.type)return[];let n=this.type.contentMatch.fillBefore(Fragment.from(t));if(n)this.match=this.type.contentMatch.matchFragment(n);else{let s=this.type.contentMatch,a;return(a=s.findWrapping(t.type))?(this.match=s,a):null}}return this.match.findWrapping(t.type)}finish(t){if(!(this.options&OPT_PRESERVE_WS)){let s=this.content[this.content.length-1],a;if(s&&s.isText&&(a=/[ \t\r\n\u000c]+$/.exec(s.text))){let o=s;s.text.length==a[0].length?this.content.pop():this.content[this.content.length-1]=o.withText(o.text.slice(0,o.text.length-a[0].length))}}let n=Fragment.from(this.content);return!t&&this.match&&(n=n.append(this.match.fillBefore(Fragment.empty,!0))),this.type?this.type.create(this.attrs,n,this.marks):n}inlineContext(t){return this.type?this.type.inlineContent:this.content.length?this.content[0].isInline:t.parentNode&&!blockTags.hasOwnProperty(t.parentNode.nodeName.toLowerCase())}}class ParseContext{constructor(t,n,s){this.parser=t,this.options=n,this.isOpen=s,this.open=0,this.localPreserveWS=!1;let a=n.topNode,o,l=wsOptionsFor(null,n.preserveWhitespace,0)|(s?OPT_OPEN_LEFT:0);a?o=new NodeContext(a.type,a.attrs,Mark$1.none,!0,n.topMatch||a.type.contentMatch,l):s?o=new NodeContext(null,null,Mark$1.none,!0,null,l):o=new NodeContext(t.schema.topNodeType,null,Mark$1.none,!0,null,l),this.nodes=[o],this.find=n.findPositions,this.needsBlock=!1}get top(){return this.nodes[this.open]}addDOM(t,n){t.nodeType==3?this.addTextNode(t,n):t.nodeType==1&&this.addElement(t,n)}addTextNode(t,n){let s=t.nodeValue,a=this.top,o=a.options&OPT_PRESERVE_WS_FULL?"full":this.localPreserveWS||(a.options&OPT_PRESERVE_WS)>0,{schema:l}=this.parser;if(o==="full"||a.inlineContext(t)||/[^ \t\r\n\u000c]/.test(s)){if(o)if(o==="full")s=s.replace(/\r\n?/g,`
|
|
525
525
|
`);else if(l.linebreakReplacement&&/[\r\n]/.test(s)&&this.top.findWrapping(l.linebreakReplacement.create())){let c=s.split(/\r?\n|\r/);for(let d=0;d<c.length;d++)d&&this.insertNode(l.linebreakReplacement.create(),n,!0),c[d]&&this.insertNode(l.text(c[d]),n,!/\S/.test(c[d]));s=""}else s=s.replace(/\r?\n|\r/g," ");else if(s=s.replace(/[ \t\r\n\u000c]+/g," "),/^[ \t\r\n\u000c]/.test(s)&&this.open==this.nodes.length-1){let c=a.content[a.content.length-1],d=t.previousSibling;(!c||d&&d.nodeName=="BR"||c.isText&&/[ \t\r\n\u000c]$/.test(c.text))&&(s=s.slice(1))}s&&this.insertNode(l.text(s),n,!/\S/.test(s)),this.findInText(t)}else this.findInside(t)}addElement(t,n,s){let a=this.localPreserveWS,o=this.top;(t.tagName=="PRE"||/pre/.test(t.style&&t.style.whiteSpace))&&(this.localPreserveWS=!0);let l=t.nodeName.toLowerCase(),c;listTags.hasOwnProperty(l)&&this.parser.normalizeLists&&normalizeList(t);let d=this.options.ruleFromNode&&this.options.ruleFromNode(t)||(c=this.parser.matchTag(t,this,s));e:if(d?d.ignore:ignoreTags.hasOwnProperty(l))this.findInside(t),this.ignoreFallback(t,n);else if(!d||d.skip||d.closeParent){d&&d.closeParent?this.open=Math.max(0,this.open-1):d&&d.skip.nodeType&&(t=d.skip);let f,R=this.needsBlock;if(blockTags.hasOwnProperty(l))o.content.length&&o.content[0].isInline&&this.open&&(this.open--,o=this.top),f=!0,o.type||(this.needsBlock=!0);else if(!t.firstChild){this.leafFallback(t,n);break e}let S=d&&d.skip?n:this.readStyles(t,n);S&&this.addAll(t,S),f&&this.sync(o),this.needsBlock=R}else{let f=this.readStyles(t,n);f&&this.addElementByRule(t,d,f,d.consuming===!1?c:void 0)}this.localPreserveWS=a}leafFallback(t,n){t.nodeName=="BR"&&this.top.type&&this.top.type.inlineContent&&this.addTextNode(t.ownerDocument.createTextNode(`
|
|
526
526
|
`),n)}ignoreFallback(t,n){t.nodeName=="BR"&&(!this.top.type||!this.top.type.inlineContent)&&this.findPlace(this.parser.schema.text("-"),n,!0)}readStyles(t,n){let s=t.style;if(s&&s.length)for(let a=0;a<this.parser.matchedStyles.length;a++){let o=this.parser.matchedStyles[a],l=s.getPropertyValue(o);if(l)for(let c=void 0;;){let d=this.parser.matchStyle(o,l,this,c);if(!d)break;if(d.ignore)return null;if(d.clearMark?n=n.filter(f=>!d.clearMark(f)):n=n.concat(this.parser.schema.marks[d.mark].create(d.attrs)),d.consuming===!1)c=d;else break}}return n}addElementByRule(t,n,s,a){let o,l;if(n.node)if(l=this.parser.schema.nodes[n.node],l.isLeaf)this.insertNode(l.create(n.attrs),s,t.nodeName=="BR")||this.leafFallback(t,s);else{let d=this.enter(l,n.attrs||null,s,n.preserveWhitespace);d&&(o=!0,s=d)}else{let d=this.parser.schema.marks[n.mark];s=s.concat(d.create(n.attrs))}let c=this.top;if(l&&l.isLeaf)this.findInside(t);else if(a)this.addElement(t,s,a);else if(n.getContent)this.findInside(t),n.getContent(t,this.parser.schema).forEach(d=>this.insertNode(d,s,!1));else{let d=t;typeof n.contentElement=="string"?d=t.querySelector(n.contentElement):typeof n.contentElement=="function"?d=n.contentElement(t):n.contentElement&&(d=n.contentElement),this.findAround(t,d,!0),this.addAll(d,s),this.findAround(t,d,!1)}o&&this.sync(c)&&this.open--}addAll(t,n,s,a){let o=s||0;for(let l=s?t.childNodes[s]:t.firstChild,c=a==null?null:t.childNodes[a];l!=c;l=l.nextSibling,++o)this.findAtPoint(t,o),this.addDOM(l,n);this.findAtPoint(t,o)}findPlace(t,n,s){let a,o;for(let l=this.open,c=0;l>=0;l--){let d=this.nodes[l],f=d.findWrapping(t);if(f&&(!a||a.length>f.length+c)&&(a=f,o=d,!f.length))break;if(d.solid){if(s)break;c+=2}}if(!a)return null;this.sync(o);for(let l=0;l<a.length;l++)n=this.enterInner(a[l],null,n,!1);return n}insertNode(t,n,s){if(t.isInline&&this.needsBlock&&!this.top.type){let o=this.textblockFromContext();o&&(n=this.enterInner(o,null,n))}let a=this.findPlace(t,n,s);if(a){this.closeExtra();let o=this.top;o.match&&(o.match=o.match.matchType(t.type));let l=Mark$1.none;for(let c of a.concat(t.marks))(o.type?o.type.allowsMarkType(c.type):markMayApply(c.type,t.type))&&(l=c.addToSet(l));return o.content.push(t.mark(l)),!0}return!1}enter(t,n,s,a){let o=this.findPlace(t.create(n),s,!1);return o&&(o=this.enterInner(t,n,s,!0,a)),o}enterInner(t,n,s,a=!1,o){this.closeExtra();let l=this.top;l.match=l.match&&l.match.matchType(t);let c=wsOptionsFor(t,o,l.options);l.options&OPT_OPEN_LEFT&&l.content.length==0&&(c|=OPT_OPEN_LEFT);let d=Mark$1.none;return s=s.filter(f=>(l.type?l.type.allowsMarkType(f.type):markMayApply(f.type,t))?(d=f.addToSet(d),!1):!0),this.nodes.push(new NodeContext(t,n,d,a,null,c)),this.open++,s}closeExtra(t=!1){let n=this.nodes.length-1;if(n>this.open){for(;n>this.open;n--)this.nodes[n-1].content.push(this.nodes[n].finish(t));this.nodes.length=this.open+1}}finish(){return this.open=0,this.closeExtra(this.isOpen),this.nodes[0].finish(!!(this.isOpen||this.options.topOpen))}sync(t){for(let n=this.open;n>=0;n--){if(this.nodes[n]==t)return this.open=n,!0;this.localPreserveWS&&(this.nodes[n].options|=OPT_PRESERVE_WS)}return!1}get currentPos(){this.closeExtra();let t=0;for(let n=this.open;n>=0;n--){let s=this.nodes[n].content;for(let a=s.length-1;a>=0;a--)t+=s[a].nodeSize;n&&t++}return t}findAtPoint(t,n){if(this.find)for(let s=0;s<this.find.length;s++)this.find[s].node==t&&this.find[s].offset==n&&(this.find[s].pos=this.currentPos)}findInside(t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].pos==null&&t.nodeType==1&&t.contains(this.find[n].node)&&(this.find[n].pos=this.currentPos)}findAround(t,n,s){if(t!=n&&this.find)for(let a=0;a<this.find.length;a++)this.find[a].pos==null&&t.nodeType==1&&t.contains(this.find[a].node)&&n.compareDocumentPosition(this.find[a].node)&(s?2:4)&&(this.find[a].pos=this.currentPos)}findInText(t){if(this.find)for(let n=0;n<this.find.length;n++)this.find[n].node==t&&(this.find[n].pos=this.currentPos-(t.nodeValue.length-this.find[n].offset))}matchesContext(t){if(t.indexOf("|")>-1)return t.split(/\s*\|\s*/).some(this.matchesContext,this);let n=t.split("/"),s=this.options.context,a=!this.isOpen&&(!s||s.parent.type==this.nodes[0].type),o=-(s?s.depth+1:0)+(a?0:1),l=(c,d)=>{for(;c>=0;c--){let f=n[c];if(f==""){if(c==n.length-1||c==0)continue;for(;d>=o;d--)if(l(c-1,d))return!0;return!1}else{let R=d>0||d==0&&a?this.nodes[d].type:s&&d>=o?s.node(d-o).type:null;if(!R||R.name!=f&&!R.isInGroup(f))return!1;d--}}return!0};return l(n.length-1,this.open)}textblockFromContext(){let t=this.options.context;if(t)for(let n=t.depth;n>=0;n--){let s=t.node(n).contentMatchAt(t.indexAfter(n)).defaultType;if(s&&s.isTextblock&&s.defaultAttrs)return s}for(let n in this.parser.schema.nodes){let s=this.parser.schema.nodes[n];if(s.isTextblock&&s.defaultAttrs)return s}}}function normalizeList(e){for(let t=e.firstChild,n=null;t;t=t.nextSibling){let s=t.nodeType==1?t.nodeName.toLowerCase():null;s&&listTags.hasOwnProperty(s)&&n?(n.appendChild(t),t=n):s=="li"?n=t:s&&(n=null)}}function matches(e,t){return(e.matches||e.msMatchesSelector||e.webkitMatchesSelector||e.mozMatchesSelector).call(e,t)}function copy(e){let t={};for(let n in e)t[n]=e[n];return t}function markMayApply(e,t){let n=t.schema.nodes;for(let s in n){let a=n[s];if(!a.allowsMarkType(e))continue;let o=[],l=c=>{o.push(c);for(let d=0;d<c.edgeCount;d++){let{type:f,next:R}=c.edge(d);if(f==t||o.indexOf(R)<0&&l(R))return!0}};if(l(a.contentMatch))return!0}}class DOMSerializer{constructor(t,n){this.nodes=t,this.marks=n}serializeFragment(t,n={},s){s||(s=doc$1(n).createDocumentFragment());let a=s,o=[];return t.forEach(l=>{if(o.length||l.marks.length){let c=0,d=0;for(;c<o.length&&d<l.marks.length;){let f=l.marks[d];if(!this.marks[f.type.name]){d++;continue}if(!f.eq(o[c][0])||f.type.spec.spanning===!1)break;c++,d++}for(;c<o.length;)a=o.pop()[1];for(;d<l.marks.length;){let f=l.marks[d++],R=this.serializeMark(f,l.isInline,n);R&&(o.push([f,a]),a.appendChild(R.dom),a=R.contentDOM||R.dom)}}a.appendChild(this.serializeNodeInner(l,n))}),s}serializeNodeInner(t,n){let{dom:s,contentDOM:a}=renderSpec(doc$1(n),this.nodes[t.type.name](t),null,t.attrs);if(a){if(t.isLeaf)throw new RangeError("Content hole not allowed in a leaf node spec");this.serializeFragment(t.content,n,a)}return s}serializeNode(t,n={}){let s=this.serializeNodeInner(t,n);for(let a=t.marks.length-1;a>=0;a--){let o=this.serializeMark(t.marks[a],t.isInline,n);o&&((o.contentDOM||o.dom).appendChild(s),s=o.dom)}return s}serializeMark(t,n,s={}){let a=this.marks[t.type.name];return a&&renderSpec(doc$1(s),a(t,n),null,t.attrs)}static renderSpec(t,n,s=null,a){return renderSpec(t,n,s,a)}static fromSchema(t){return t.cached.domSerializer||(t.cached.domSerializer=new DOMSerializer(this.nodesFromSchema(t),this.marksFromSchema(t)))}static nodesFromSchema(t){let n=gatherToDOM(t.nodes);return n.text||(n.text=s=>s.text),n}static marksFromSchema(t){return gatherToDOM(t.marks)}}function gatherToDOM(e){let t={};for(let n in e){let s=e[n].spec.toDOM;s&&(t[n]=s)}return t}function doc$1(e){return e.document||window.document}const suspiciousAttributeCache=new WeakMap;function suspiciousAttributes(e){let t=suspiciousAttributeCache.get(e);return t===void 0&&suspiciousAttributeCache.set(e,t=suspiciousAttributesInner(e)),t}function suspiciousAttributesInner(e){let t=null;function n(s){if(s&&typeof s=="object")if(Array.isArray(s))if(typeof s[0]=="string")t||(t=[]),t.push(s);else for(let a=0;a<s.length;a++)n(s[a]);else for(let a in s)n(s[a])}return n(e),t}function renderSpec(e,t,n,s){if(typeof t=="string")return{dom:e.createTextNode(t)};if(t.nodeType!=null)return{dom:t};if(t.dom&&t.dom.nodeType!=null)return t;let a=t[0],o;if(typeof a!="string")throw new RangeError("Invalid array passed to renderSpec");if(s&&(o=suspiciousAttributes(s))&&o.indexOf(t)>-1)throw new RangeError("Using an array from an attribute object as a DOM spec. This may be an attempted cross site scripting attack.");let l=a.indexOf(" ");l>0&&(n=a.slice(0,l),a=a.slice(l+1));let c,d=n?e.createElementNS(n,a):e.createElement(a),f=t[1],R=1;if(f&&typeof f=="object"&&f.nodeType==null&&!Array.isArray(f)){R=2;for(let S in f)if(f[S]!=null){let te=S.indexOf(" ");te>0?d.setAttributeNS(S.slice(0,te),S.slice(te+1),f[S]):S=="style"&&d.style?d.style.cssText=f[S]:d.setAttribute(S,f[S])}}for(let S=R;S<t.length;S++){let te=t[S];if(te===0){if(S<t.length-1||S>R)throw new RangeError("Content hole must be the only child of its parent node");return{dom:d,contentDOM:d}}else{let{dom:A,contentDOM:rt}=renderSpec(e,te,n,s);if(d.appendChild(A),rt){if(c)throw new RangeError("Multiple content holes");c=rt}}}return{dom:d,contentDOM:c}}const lower16=65535,factor16=Math.pow(2,16);function makeRecover(e,t){return e+t*factor16}function recoverIndex(e){return e&lower16}function recoverOffset(e){return(e-(e&lower16))/factor16}const DEL_BEFORE=1,DEL_AFTER=2,DEL_ACROSS=4,DEL_SIDE=8;class MapResult{constructor(t,n,s){this.pos=t,this.delInfo=n,this.recover=s}get deleted(){return(this.delInfo&DEL_SIDE)>0}get deletedBefore(){return(this.delInfo&(DEL_BEFORE|DEL_ACROSS))>0}get deletedAfter(){return(this.delInfo&(DEL_AFTER|DEL_ACROSS))>0}get deletedAcross(){return(this.delInfo&DEL_ACROSS)>0}}class StepMap{constructor(t,n=!1){if(this.ranges=t,this.inverted=n,!t.length&&StepMap.empty)return StepMap.empty}recover(t){let n=0,s=recoverIndex(t);if(!this.inverted)for(let a=0;a<s;a++)n+=this.ranges[a*3+2]-this.ranges[a*3+1];return this.ranges[s*3]+n+recoverOffset(t)}mapResult(t,n=1){return this._map(t,n,!1)}map(t,n=1){return this._map(t,n,!0)}_map(t,n,s){let a=0,o=this.inverted?2:1,l=this.inverted?1:2;for(let c=0;c<this.ranges.length;c+=3){let d=this.ranges[c]-(this.inverted?a:0);if(d>t)break;let f=this.ranges[c+o],R=this.ranges[c+l],S=d+f;if(t<=S){let te=f?t==d?-1:t==S?1:n:n,A=d+a+(te<0?0:R);if(s)return A;let rt=t==(n<0?d:S)?null:makeRecover(c/3,t-d),st=t==d?DEL_AFTER:t==S?DEL_BEFORE:DEL_ACROSS;return(n<0?t!=d:t!=S)&&(st|=DEL_SIDE),new MapResult(A,st,rt)}a+=R-f}return s?t+a:new MapResult(t+a,0,null)}touches(t,n){let s=0,a=recoverIndex(n),o=this.inverted?2:1,l=this.inverted?1:2;for(let c=0;c<this.ranges.length;c+=3){let d=this.ranges[c]-(this.inverted?s:0);if(d>t)break;let f=this.ranges[c+o],R=d+f;if(t<=R&&c==a*3)return!0;s+=this.ranges[c+l]-f}return!1}forEach(t){let n=this.inverted?2:1,s=this.inverted?1:2;for(let a=0,o=0;a<this.ranges.length;a+=3){let l=this.ranges[a],c=l-(this.inverted?o:0),d=l+(this.inverted?0:o),f=this.ranges[a+n],R=this.ranges[a+s];t(c,c+f,d,d+R),o+=R-f}}invert(){return new StepMap(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?StepMap.empty:new StepMap(t<0?[0,-t,0]:[0,0,t])}}StepMap.empty=new StepMap([]);class Mapping{constructor(t,n,s=0,a=t?t.length:0){this.mirror=n,this.from=s,this.to=a,this._maps=t||[],this.ownData=!(t||n)}get maps(){return this._maps}slice(t=0,n=this.maps.length){return new Mapping(this._maps,this.mirror,t,n)}appendMap(t,n){this.ownData||(this._maps=this._maps.slice(),this.mirror=this.mirror&&this.mirror.slice(),this.ownData=!0),this.to=this._maps.push(t),n!=null&&this.setMirror(this._maps.length-1,n)}appendMapping(t){for(let n=0,s=this._maps.length;n<t._maps.length;n++){let a=t.getMirror(n);this.appendMap(t._maps[n],a!=null&&a<n?s+a:void 0)}}getMirror(t){if(this.mirror){for(let n=0;n<this.mirror.length;n++)if(this.mirror[n]==t)return this.mirror[n+(n%2?-1:1)]}}setMirror(t,n){this.mirror||(this.mirror=[]),this.mirror.push(t,n)}appendMappingInverted(t){for(let n=t.maps.length-1,s=this._maps.length+t._maps.length;n>=0;n--){let a=t.getMirror(n);this.appendMap(t._maps[n].invert(),a!=null&&a>n?s-a-1:void 0)}}invert(){let t=new Mapping;return t.appendMappingInverted(this),t}map(t,n=1){if(this.mirror)return this._map(t,n,!0);for(let s=this.from;s<this.to;s++)t=this._maps[s].map(t,n);return t}mapResult(t,n=1){return this._map(t,n,!1)}_map(t,n,s){let a=0;for(let o=this.from;o<this.to;o++){let l=this._maps[o],c=l.mapResult(t,n);if(c.recover!=null){let d=this.getMirror(o);if(d!=null&&d>o&&d<this.to){o=d,t=this._maps[d].recover(c.recover);continue}}a|=c.delInfo,t=c.pos}return s?t:new MapResult(t,a,null)}}const stepsByID=Object.create(null);class Step{getMap(){return StepMap.empty}merge(t){return null}static fromJSON(t,n){if(!n||!n.stepType)throw new RangeError("Invalid input for Step.fromJSON");let s=stepsByID[n.stepType];if(!s)throw new RangeError(`No step type ${n.stepType} defined`);return s.fromJSON(t,n)}static jsonID(t,n){if(t in stepsByID)throw new RangeError("Duplicate use of step JSON ID "+t);return stepsByID[t]=n,n.prototype.jsonID=t,n}}class StepResult{constructor(t,n){this.doc=t,this.failed=n}static ok(t){return new StepResult(t,null)}static fail(t){return new StepResult(null,t)}static fromReplace(t,n,s,a){try{return StepResult.ok(t.replace(n,s,a))}catch(o){if(o instanceof ReplaceError)return StepResult.fail(o.message);throw o}}}function mapFragment(e,t,n){let s=[];for(let a=0;a<e.childCount;a++){let o=e.child(a);o.content.size&&(o=o.copy(mapFragment(o.content,t,o))),o.isInline&&(o=t(o,n,a)),s.push(o)}return Fragment.fromArray(s)}class AddMarkStep extends Step{constructor(t,n,s){super(),this.from=t,this.to=n,this.mark=s}apply(t){let n=t.slice(this.from,this.to),s=t.resolve(this.from),a=s.node(s.sharedDepth(this.to)),o=new Slice(mapFragment(n.content,(l,c)=>!l.isAtom||!c.type.allowsMarkType(this.mark.type)?l:l.mark(this.mark.addToSet(l.marks)),a),n.openStart,n.openEnd);return StepResult.fromReplace(t,this.from,this.to,o)}invert(){return new RemoveMarkStep(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),s=t.mapResult(this.to,-1);return n.deleted&&s.deleted||n.pos>=s.pos?null:new AddMarkStep(n.pos,s.pos,this.mark)}merge(t){return t instanceof AddMarkStep&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new AddMarkStep(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new AddMarkStep(n.from,n.to,t.markFromJSON(n.mark))}}Step.jsonID("addMark",AddMarkStep);class RemoveMarkStep extends Step{constructor(t,n,s){super(),this.from=t,this.to=n,this.mark=s}apply(t){let n=t.slice(this.from,this.to),s=new Slice(mapFragment(n.content,a=>a.mark(this.mark.removeFromSet(a.marks)),t),n.openStart,n.openEnd);return StepResult.fromReplace(t,this.from,this.to,s)}invert(){return new AddMarkStep(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),s=t.mapResult(this.to,-1);return n.deleted&&s.deleted||n.pos>=s.pos?null:new RemoveMarkStep(n.pos,s.pos,this.mark)}merge(t){return t instanceof RemoveMarkStep&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new RemoveMarkStep(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new RemoveMarkStep(n.from,n.to,t.markFromJSON(n.mark))}}Step.jsonID("removeMark",RemoveMarkStep);class AddNodeMarkStep extends Step{constructor(t,n){super(),this.pos=t,this.mark=n}apply(t){let n=t.nodeAt(this.pos);if(!n)return StepResult.fail("No node at mark step's position");let s=n.type.create(n.attrs,null,this.mark.addToSet(n.marks));return StepResult.fromReplace(t,this.pos,this.pos+1,new Slice(Fragment.from(s),0,n.isLeaf?0:1))}invert(t){let n=t.nodeAt(this.pos);if(n){let s=this.mark.addToSet(n.marks);if(s.length==n.marks.length){for(let a=0;a<n.marks.length;a++)if(!n.marks[a].isInSet(s))return new AddNodeMarkStep(this.pos,n.marks[a]);return new AddNodeMarkStep(this.pos,this.mark)}}return new RemoveNodeMarkStep(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new AddNodeMarkStep(n.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new AddNodeMarkStep(n.pos,t.markFromJSON(n.mark))}}Step.jsonID("addNodeMark",AddNodeMarkStep);class RemoveNodeMarkStep extends Step{constructor(t,n){super(),this.pos=t,this.mark=n}apply(t){let n=t.nodeAt(this.pos);if(!n)return StepResult.fail("No node at mark step's position");let s=n.type.create(n.attrs,null,this.mark.removeFromSet(n.marks));return StepResult.fromReplace(t,this.pos,this.pos+1,new Slice(Fragment.from(s),0,n.isLeaf?0:1))}invert(t){let n=t.nodeAt(this.pos);return!n||!this.mark.isInSet(n.marks)?this:new AddNodeMarkStep(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new RemoveNodeMarkStep(n.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new RemoveNodeMarkStep(n.pos,t.markFromJSON(n.mark))}}Step.jsonID("removeNodeMark",RemoveNodeMarkStep);class ReplaceStep extends Step{constructor(t,n,s,a=!1){super(),this.from=t,this.to=n,this.slice=s,this.structure=a}apply(t){return this.structure&&contentBetween(t,this.from,this.to)?StepResult.fail("Structure replace would overwrite content"):StepResult.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new StepMap([this.from,this.to-this.from,this.slice.size])}invert(t){return new ReplaceStep(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let n=t.mapResult(this.from,1),s=t.mapResult(this.to,-1);return n.deletedAcross&&s.deletedAcross?null:new ReplaceStep(n.pos,Math.max(n.pos,s.pos),this.slice,this.structure)}merge(t){if(!(t instanceof ReplaceStep)||t.structure||this.structure)return null;if(this.from+this.slice.size==t.from&&!this.slice.openEnd&&!t.slice.openStart){let n=this.slice.size+t.slice.size==0?Slice.empty:new Slice(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new ReplaceStep(this.from,this.to+(t.to-t.from),n,this.structure)}else if(t.to==this.from&&!this.slice.openStart&&!t.slice.openEnd){let n=this.slice.size+t.slice.size==0?Slice.empty:new Slice(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new ReplaceStep(t.from,this.to,n,this.structure)}else return null}toJSON(){let t={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new ReplaceStep(n.from,n.to,Slice.fromJSON(t,n.slice),!!n.structure)}}Step.jsonID("replace",ReplaceStep);class ReplaceAroundStep extends Step{constructor(t,n,s,a,o,l,c=!1){super(),this.from=t,this.to=n,this.gapFrom=s,this.gapTo=a,this.slice=o,this.insert=l,this.structure=c}apply(t){if(this.structure&&(contentBetween(t,this.from,this.gapFrom)||contentBetween(t,this.gapTo,this.to)))return StepResult.fail("Structure gap-replace would overwrite content");let n=t.slice(this.gapFrom,this.gapTo);if(n.openStart||n.openEnd)return StepResult.fail("Gap is not a flat range");let s=this.slice.insertAt(this.insert,n.content);return s?StepResult.fromReplace(t,this.from,this.to,s):StepResult.fail("Content does not fit in gap")}getMap(){return new StepMap([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let n=this.gapTo-this.gapFrom;return new ReplaceAroundStep(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let n=t.mapResult(this.from,1),s=t.mapResult(this.to,-1),a=this.from==this.gapFrom?n.pos:t.map(this.gapFrom,-1),o=this.to==this.gapTo?s.pos:t.map(this.gapTo,1);return n.deletedAcross&&s.deletedAcross||a<n.pos||o>s.pos?null:new ReplaceAroundStep(n.pos,s.pos,a,o,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number"||typeof n.gapFrom!="number"||typeof n.gapTo!="number"||typeof n.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new ReplaceAroundStep(n.from,n.to,n.gapFrom,n.gapTo,Slice.fromJSON(t,n.slice),n.insert,!!n.structure)}}Step.jsonID("replaceAround",ReplaceAroundStep);function contentBetween(e,t,n){let s=e.resolve(t),a=n-t,o=s.depth;for(;a>0&&o>0&&s.indexAfter(o)==s.node(o).childCount;)o--,a--;if(a>0){let l=s.node(o).maybeChild(s.indexAfter(o));for(;a>0;){if(!l||l.isLeaf)return!0;l=l.firstChild,a--}}return!1}function addMark(e,t,n,s){let a=[],o=[],l,c;e.doc.nodesBetween(t,n,(d,f,R)=>{if(!d.isInline)return;let S=d.marks;if(!s.isInSet(S)&&R.type.allowsMarkType(s.type)){let te=Math.max(f,t),A=Math.min(f+d.nodeSize,n),rt=s.addToSet(S);for(let st=0;st<S.length;st++)S[st].isInSet(rt)||(l&&l.to==te&&l.mark.eq(S[st])?l.to=A:a.push(l=new RemoveMarkStep(te,A,S[st])));c&&c.to==te?c.to=A:o.push(c=new AddMarkStep(te,A,s))}}),a.forEach(d=>e.step(d)),o.forEach(d=>e.step(d))}function removeMark(e,t,n,s){let a=[],o=0;e.doc.nodesBetween(t,n,(l,c)=>{if(!l.isInline)return;o++;let d=null;if(s instanceof MarkType){let f=l.marks,R;for(;R=s.isInSet(f);)(d||(d=[])).push(R),f=R.removeFromSet(f)}else s?s.isInSet(l.marks)&&(d=[s]):d=l.marks;if(d&&d.length){let f=Math.min(c+l.nodeSize,n);for(let R=0;R<d.length;R++){let S=d[R],te;for(let A=0;A<a.length;A++){let rt=a[A];rt.step==o-1&&S.eq(a[A].style)&&(te=rt)}te?(te.to=f,te.step=o):a.push({style:S,from:Math.max(c,t),to:f,step:o})}}}),a.forEach(l=>e.step(new RemoveMarkStep(l.from,l.to,l.style)))}function clearIncompatible(e,t,n,s=n.contentMatch,a=!0){let o=e.doc.nodeAt(t),l=[],c=t+1;for(let d=0;d<o.childCount;d++){let f=o.child(d),R=c+f.nodeSize,S=s.matchType(f.type);if(!S)l.push(new ReplaceStep(c,R,Slice.empty));else{s=S;for(let te=0;te<f.marks.length;te++)n.allowsMarkType(f.marks[te].type)||e.step(new RemoveMarkStep(c,R,f.marks[te]));if(a&&f.isText&&n.whitespace!="pre"){let te,A=/\r?\n|\r/g,rt;for(;te=A.exec(f.text);)rt||(rt=new Slice(Fragment.from(n.schema.text(" ",n.allowedMarks(f.marks))),0,0)),l.push(new ReplaceStep(c+te.index,c+te.index+te[0].length,rt))}}c=R}if(!s.validEnd){let d=s.fillBefore(Fragment.empty,!0);e.replace(c,c,new Slice(d,0,0))}for(let d=l.length-1;d>=0;d--)e.step(l[d])}function canCut(e,t,n){return(t==0||e.canReplace(t,e.childCount))&&(n==e.childCount||e.canReplace(0,n))}function liftTarget(e){let n=e.parent.content.cutByIndex(e.startIndex,e.endIndex);for(let s=e.depth,a=0,o=0;;--s){let l=e.$from.node(s),c=e.$from.index(s)+a,d=e.$to.indexAfter(s)-o;if(s<e.depth&&l.canReplace(c,d,n))return s;if(s==0||l.type.spec.isolating||!canCut(l,c,d))break;c&&(a=1),d<l.childCount&&(o=1)}return null}function lift$2(e,t,n){let{$from:s,$to:a,depth:o}=t,l=s.before(o+1),c=a.after(o+1),d=l,f=c,R=Fragment.empty,S=0;for(let rt=o,st=!1;rt>n;rt--)st||s.index(rt)>0?(st=!0,R=Fragment.from(s.node(rt).copy(R)),S++):d--;let te=Fragment.empty,A=0;for(let rt=o,st=!1;rt>n;rt--)st||a.after(rt+1)<a.end(rt)?(st=!0,te=Fragment.from(a.node(rt).copy(te)),A++):f++;e.step(new ReplaceAroundStep(d,f,l,c,new Slice(R.append(te),S,A),R.size-S,!0))}function findWrapping(e,t,n=null,s=e){let a=findWrappingOutside(e,t),o=a&&findWrappingInside(s,t);return o?a.map(withAttrs).concat({type:t,attrs:n}).concat(o.map(withAttrs)):null}function withAttrs(e){return{type:e,attrs:null}}function findWrappingOutside(e,t){let{parent:n,startIndex:s,endIndex:a}=e,o=n.contentMatchAt(s).findWrapping(t);if(!o)return null;let l=o.length?o[0]:t;return n.canReplaceWith(s,a,l)?o:null}function findWrappingInside(e,t){let{parent:n,startIndex:s,endIndex:a}=e,o=n.child(s),l=t.contentMatch.findWrapping(o.type);if(!l)return null;let d=(l.length?l[l.length-1]:t).contentMatch;for(let f=s;d&&f<a;f++)d=d.matchType(n.child(f).type);return!d||!d.validEnd?null:l}function wrap(e,t,n){let s=Fragment.empty;for(let l=n.length-1;l>=0;l--){if(s.size){let c=n[l].type.contentMatch.matchFragment(s);if(!c||!c.validEnd)throw new RangeError("Wrapper type given to Transform.wrap does not form valid content of its parent wrapper")}s=Fragment.from(n[l].type.create(n[l].attrs,s))}let a=t.start,o=t.end;e.step(new ReplaceAroundStep(a,o,a,o,new Slice(s,0,0),n.length,!0))}function setBlockType$1(e,t,n,s,a){if(!s.isTextblock)throw new RangeError("Type given to setBlockType should be a textblock");let o=e.steps.length;e.doc.nodesBetween(t,n,(l,c)=>{let d=typeof a=="function"?a(l):a;if(l.isTextblock&&!l.hasMarkup(s,d)&&canChangeType(e.doc,e.mapping.slice(o).map(c),s)){let f=null;if(s.schema.linebreakReplacement){let A=s.whitespace=="pre",rt=!!s.contentMatch.matchType(s.schema.linebreakReplacement);A&&!rt?f=!1:!A&&rt&&(f=!0)}f===!1&&replaceLinebreaks(e,l,c,o),clearIncompatible(e,e.mapping.slice(o).map(c,1),s,void 0,f===null);let R=e.mapping.slice(o),S=R.map(c,1),te=R.map(c+l.nodeSize,1);return e.step(new ReplaceAroundStep(S,te,S+1,te-1,new Slice(Fragment.from(s.create(d,null,l.marks)),0,0),1,!0)),f===!0&&replaceNewlines(e,l,c,o),!1}})}function replaceNewlines(e,t,n,s){t.forEach((a,o)=>{if(a.isText){let l,c=/\r?\n|\r/g;for(;l=c.exec(a.text);){let d=e.mapping.slice(s).map(n+1+o+l.index);e.replaceWith(d,d+1,t.type.schema.linebreakReplacement.create())}}})}function replaceLinebreaks(e,t,n,s){t.forEach((a,o)=>{if(a.type==a.type.schema.linebreakReplacement){let l=e.mapping.slice(s).map(n+1+o);e.replaceWith(l,l+1,t.type.schema.text(`
|
|
@@ -722,4 +722,4 @@ ${n?"Think carefully and be thorough, but stay concise.":"Be concise."}
|
|
|
722
722
|
---
|
|
723
723
|
Prompt: "${t}"`,ot=++te.current;f(!0),S(null);const ut=o({applicationId:e,body:[{Role:"user",Parts:[{Text:at}]}]});return A.current=ut,ut.unwrap().then(ct=>ct.Content?.Parts?.find(dt=>dt.Text)?.Text??null).then(ct=>{te.current===ot&&c(ct)}).catch(ct=>{if(te.current!==ot)return;const dt=ct instanceof Error?ct.message:"An error occurred while generating the response.";S(dt),c(null)}).finally(()=>{te.current===ot&&f(!1)}),()=>{ut.abort()}},[e,t,n]);const rt=`flex items-start gap-4 ${a?"p-4 border rounded-lg bg-background":""}`;return jsxRuntime.jsxs("div",{className:rt,children:[jsxRuntime.jsx(Bot,{className:`mt-1 h-6 w-6 flex-shrink-0 ${d?"animate-pulse text-primary":"text-primary"}`}),jsxRuntime.jsxs("div",{className:"w-full min-h-[4rem]",children:[d&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx("p",{className:"font-medium text-muted-foreground",children:s}),jsxRuntime.jsxs("div",{className:"space-y-2 mt-2",children:[jsxRuntime.jsx(Skeleton,{className:"h-4 w-5/6"}),jsxRuntime.jsx(Skeleton,{className:"h-4 w-3/4"})]})]}),R&&jsxRuntime.jsx("p",{className:"text-sm text-destructive",children:R}),!d&&!R&&l&&jsxRuntime.jsx("div",{className:"chat-bubble-in-animation text-sm text-foreground space-y-4",dangerouslySetInnerHTML:{__html:l}})]})]})}function tzName(e,t,n="long"){return new Intl.DateTimeFormat("en-US",{hour:"numeric",timeZone:e,timeZoneName:n}).format(t).split(/\s/g).slice(2).join(" ")}const offsetFormatCache={},offsetCache={};function tzOffset(e,t){try{const s=(offsetFormatCache[e]||=new Intl.DateTimeFormat("en-US",{timeZone:e,timeZoneName:"longOffset"}).format)(t).split("GMT")[1];return s in offsetCache?offsetCache[s]:calcOffset(s,s.split(":"))}catch{if(e in offsetCache)return offsetCache[e];const n=e?.match(offsetRe);return n?calcOffset(e,n.slice(1)):NaN}}const offsetRe=/([+-]\d\d):?(\d\d)?/;function calcOffset(e,t){const n=+(t[0]||0),s=+(t[1]||0),a=+(t[2]||0)/60;return offsetCache[e]=n*60+s>0?n*60+s+a:n*60-s-a}class TZDateMini extends Date{constructor(...t){super(),t.length>1&&typeof t[t.length-1]=="string"&&(this.timeZone=t.pop()),this.internal=new Date,isNaN(tzOffset(this.timeZone,this))?this.setTime(NaN):t.length?typeof t[0]=="number"&&(t.length===1||t.length===2&&typeof t[1]!="number")?this.setTime(t[0]):typeof t[0]=="string"?this.setTime(+new Date(t[0])):t[0]instanceof Date?this.setTime(+t[0]):(this.setTime(+new Date(...t)),adjustToSystemTZ(this),syncToInternal(this)):this.setTime(Date.now())}static tz(t,...n){return n.length?new TZDateMini(...n,t):new TZDateMini(Date.now(),t)}withTimeZone(t){return new TZDateMini(+this,t)}getTimezoneOffset(){const t=-tzOffset(this.timeZone,this);return t>0?Math.floor(t):Math.ceil(t)}setTime(t){return Date.prototype.setTime.apply(this,arguments),syncToInternal(this),+this}[Symbol.for("constructDateFrom")](t){return new TZDateMini(+new Date(t),this.timeZone)}}const re=/^(get|set)(?!UTC)/;Object.getOwnPropertyNames(Date.prototype).forEach(e=>{if(!re.test(e))return;const t=e.replace(re,"$1UTC");TZDateMini.prototype[t]&&(e.startsWith("get")?TZDateMini.prototype[e]=function(){return this.internal[t]()}:(TZDateMini.prototype[e]=function(){return Date.prototype[t].apply(this.internal,arguments),syncFromInternal(this),+this},TZDateMini.prototype[t]=function(){return Date.prototype[t].apply(this,arguments),syncToInternal(this),+this}))});function syncToInternal(e){e.internal.setTime(+e),e.internal.setUTCSeconds(e.internal.getUTCSeconds()-Math.round(-tzOffset(e.timeZone,e)*60))}function syncFromInternal(e){Date.prototype.setFullYear.call(e,e.internal.getUTCFullYear(),e.internal.getUTCMonth(),e.internal.getUTCDate()),Date.prototype.setHours.call(e,e.internal.getUTCHours(),e.internal.getUTCMinutes(),e.internal.getUTCSeconds(),e.internal.getUTCMilliseconds()),adjustToSystemTZ(e)}function adjustToSystemTZ(e){const t=tzOffset(e.timeZone,e),n=t>0?Math.floor(t):Math.ceil(t),s=new Date(+e);s.setUTCHours(s.getUTCHours()-1);const a=-new Date(+e).getTimezoneOffset(),o=-new Date(+s).getTimezoneOffset(),l=a-o,c=Date.prototype.getHours.apply(e)!==e.internal.getUTCHours();l&&c&&e.internal.setUTCMinutes(e.internal.getUTCMinutes()+l);const d=a-n;d&&Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+d);const f=new Date(+e);f.setUTCSeconds(0);const R=a>0?f.getSeconds():(f.getSeconds()-60)%60,S=Math.round(-(tzOffset(e.timeZone,e)*60))%60;(S||R)&&(e.internal.setUTCSeconds(e.internal.getUTCSeconds()+S),Date.prototype.setUTCSeconds.call(e,Date.prototype.getUTCSeconds.call(e)+S+R));const te=tzOffset(e.timeZone,e),A=te>0?Math.floor(te):Math.ceil(te),st=-new Date(+e).getTimezoneOffset()-A,it=A!==n,at=st-d;if(it&&at){Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+at);const ot=tzOffset(e.timeZone,e),lt=ot>0?Math.floor(ot):Math.ceil(ot),ut=A-lt;ut&&(e.internal.setUTCMinutes(e.internal.getUTCMinutes()+ut),Date.prototype.setUTCMinutes.call(e,Date.prototype.getUTCMinutes.call(e)+ut))}}class TZDate extends TZDateMini{static tz(t,...n){return n.length?new TZDate(...n,t):new TZDate(Date.now(),t)}toISOString(){const[t,n,s]=this.tzComponents(),a=`${t}${n}:${s}`;return this.internal.toISOString().slice(0,-1)+a}toString(){return`${this.toDateString()} ${this.toTimeString()}`}toDateString(){const[t,n,s,a]=this.internal.toUTCString().split(" ");return`${t?.slice(0,-1)} ${s} ${n} ${a}`}toTimeString(){const t=this.internal.toUTCString().split(" ")[4],[n,s,a]=this.tzComponents();return`${t} GMT${n}${s}${a} (${tzName(this.timeZone,this)})`}toLocaleString(t,n){return Date.prototype.toLocaleString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleDateString(t,n){return Date.prototype.toLocaleDateString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}toLocaleTimeString(t,n){return Date.prototype.toLocaleTimeString.call(this,t,{...n,timeZone:n?.timeZone||this.timeZone})}tzComponents(){const t=this.getTimezoneOffset(),n=t>0?"-":"+",s=String(Math.floor(Math.abs(t)/60)).padStart(2,"0"),a=String(Math.abs(t)%60).padStart(2,"0");return[n,s,a]}withTimeZone(t){return new TZDate(+this,t)}[Symbol.for("constructDateFrom")](t){return new TZDate(+new Date(t),this.timeZone)}}const FIVE_WEEKS=5,FOUR_WEEKS=4;function getBroadcastWeeksInMonth(e,t){const n=t.startOfMonth(e),s=n.getDay()>0?n.getDay():7,a=t.addDays(e,-s+1),o=t.addDays(a,FIVE_WEEKS*7-1);return t.getMonth(e)===t.getMonth(o)?FIVE_WEEKS:FOUR_WEEKS}function startOfBroadcastWeek(e,t){const n=t.startOfMonth(e),s=n.getDay();return s===1?n:s===0?t.addDays(n,-6):t.addDays(n,-1*(s-1))}function endOfBroadcastWeek(e,t){const n=startOfBroadcastWeek(e,t),s=getBroadcastWeeksInMonth(e,t);return t.addDays(n,s*7-1)}const enUS={...enUS$1,labels:{labelDayButton:(e,t,n,s)=>{let a;s&&typeof s.format=="function"?a=s.format.bind(s):a=(l,c)=>format(l,c,{locale:enUS$1,...n});let o=a(e,"PPPP");return t.today&&(o=`Today, ${o}`),t.selected&&(o=`${o}, selected`),o},labelMonthDropdown:"Choose the Month",labelNext:"Go to the Next Month",labelPrevious:"Go to the Previous Month",labelWeekNumber:e=>`Week ${e}`,labelYearDropdown:"Choose the Year",labelGrid:(e,t,n)=>{let s;return n&&typeof n.format=="function"?s=n.format.bind(n):s=(a,o)=>format(a,o,{locale:enUS$1,...t}),s(e,"LLLL yyyy")},labelGridcell:(e,t,n,s)=>{let a;s&&typeof s.format=="function"?a=s.format.bind(s):a=(l,c)=>format(l,c,{locale:enUS$1,...n});let o=a(e,"PPPP");return t?.today&&(o=`Today, ${o}`),o},labelNav:"Navigation bar",labelWeekNumberHeader:"Week Number",labelWeekday:(e,t,n)=>{let s;return n&&typeof n.format=="function"?s=n.format.bind(n):s=(a,o)=>format(a,o,{locale:enUS$1,...t}),s(e,"cccc")}}};class DateLib{constructor(t,n){this.Date=Date,this.today=()=>this.overrides?.today?this.overrides.today():this.options.timeZone?TZDate.tz(this.options.timeZone):new this.Date,this.newDate=(s,a,o)=>this.overrides?.newDate?this.overrides.newDate(s,a,o):this.options.timeZone?new TZDate(s,a,o,this.options.timeZone):new Date(s,a,o),this.addDays=(s,a)=>this.overrides?.addDays?this.overrides.addDays(s,a):addDays(s,a),this.addMonths=(s,a)=>this.overrides?.addMonths?this.overrides.addMonths(s,a):addMonths(s,a),this.addWeeks=(s,a)=>this.overrides?.addWeeks?this.overrides.addWeeks(s,a):addWeeks(s,a),this.addYears=(s,a)=>this.overrides?.addYears?this.overrides.addYears(s,a):addYears(s,a),this.differenceInCalendarDays=(s,a)=>this.overrides?.differenceInCalendarDays?this.overrides.differenceInCalendarDays(s,a):differenceInCalendarDays(s,a),this.differenceInCalendarMonths=(s,a)=>this.overrides?.differenceInCalendarMonths?this.overrides.differenceInCalendarMonths(s,a):differenceInCalendarMonths(s,a),this.eachMonthOfInterval=s=>this.overrides?.eachMonthOfInterval?this.overrides.eachMonthOfInterval(s):eachMonthOfInterval(s),this.eachYearOfInterval=s=>{const a=this.overrides?.eachYearOfInterval?this.overrides.eachYearOfInterval(s):eachYearOfInterval(s),o=new Set(a.map(c=>this.getYear(c)));if(o.size===a.length)return a;const l=[];return o.forEach(c=>{l.push(new Date(c,0,1))}),l},this.endOfBroadcastWeek=s=>this.overrides?.endOfBroadcastWeek?this.overrides.endOfBroadcastWeek(s):endOfBroadcastWeek(s,this),this.endOfISOWeek=s=>this.overrides?.endOfISOWeek?this.overrides.endOfISOWeek(s):endOfISOWeek(s),this.endOfMonth=s=>this.overrides?.endOfMonth?this.overrides.endOfMonth(s):endOfMonth(s),this.endOfWeek=(s,a)=>this.overrides?.endOfWeek?this.overrides.endOfWeek(s,a):endOfWeek(s,this.options),this.endOfYear=s=>this.overrides?.endOfYear?this.overrides.endOfYear(s):endOfYear(s),this.format=(s,a,o)=>{const l=this.overrides?.format?this.overrides.format(s,a,this.options):format(s,a,this.options);return this.options.numerals&&this.options.numerals!=="latn"?this.replaceDigits(l):l},this.getISOWeek=s=>this.overrides?.getISOWeek?this.overrides.getISOWeek(s):getISOWeek(s),this.getMonth=(s,a)=>this.overrides?.getMonth?this.overrides.getMonth(s,this.options):getMonth(s,this.options),this.getYear=(s,a)=>this.overrides?.getYear?this.overrides.getYear(s,this.options):getYear(s,this.options),this.getWeek=(s,a)=>this.overrides?.getWeek?this.overrides.getWeek(s,this.options):getWeek(s,this.options),this.isAfter=(s,a)=>this.overrides?.isAfter?this.overrides.isAfter(s,a):isAfter(s,a),this.isBefore=(s,a)=>this.overrides?.isBefore?this.overrides.isBefore(s,a):isBefore(s,a),this.isDate=s=>this.overrides?.isDate?this.overrides.isDate(s):isDate(s),this.isSameDay=(s,a)=>this.overrides?.isSameDay?this.overrides.isSameDay(s,a):isSameDay(s,a),this.isSameMonth=(s,a)=>this.overrides?.isSameMonth?this.overrides.isSameMonth(s,a):isSameMonth(s,a),this.isSameYear=(s,a)=>this.overrides?.isSameYear?this.overrides.isSameYear(s,a):isSameYear(s,a),this.max=s=>this.overrides?.max?this.overrides.max(s):max$1(s),this.min=s=>this.overrides?.min?this.overrides.min(s):min$1(s),this.setMonth=(s,a)=>this.overrides?.setMonth?this.overrides.setMonth(s,a):setMonth(s,a),this.setYear=(s,a)=>this.overrides?.setYear?this.overrides.setYear(s,a):setYear(s,a),this.startOfBroadcastWeek=(s,a)=>this.overrides?.startOfBroadcastWeek?this.overrides.startOfBroadcastWeek(s,this):startOfBroadcastWeek(s,this),this.startOfDay=s=>this.overrides?.startOfDay?this.overrides.startOfDay(s):startOfDay(s),this.startOfISOWeek=s=>this.overrides?.startOfISOWeek?this.overrides.startOfISOWeek(s):startOfISOWeek(s),this.startOfMonth=s=>this.overrides?.startOfMonth?this.overrides.startOfMonth(s):startOfMonth(s),this.startOfWeek=(s,a)=>this.overrides?.startOfWeek?this.overrides.startOfWeek(s,this.options):startOfWeek(s,this.options),this.startOfYear=s=>this.overrides?.startOfYear?this.overrides.startOfYear(s):startOfYear(s),this.options={locale:enUS,...t},this.overrides=n}getDigitMap(){const{numerals:t="latn"}=this.options,n=new Intl.NumberFormat("en-US",{numberingSystem:t}),s={};for(let a=0;a<10;a++)s[a.toString()]=n.format(a);return s}replaceDigits(t){const n=this.getDigitMap();return t.replace(/\d/g,s=>n[s]||s)}formatNumber(t){return this.replaceDigits(t.toString())}getMonthYearOrder(){const t=this.options.locale?.code;return t&&DateLib.yearFirstLocales.has(t)?"year-first":"month-first"}formatMonthYear(t){const{locale:n,timeZone:s,numerals:a}=this.options,o=n?.code;if(o&&DateLib.yearFirstLocales.has(o))try{return new Intl.DateTimeFormat(o,{month:"long",year:"numeric",timeZone:s,numberingSystem:a}).format(t)}catch{}const l=this.getMonthYearOrder()==="year-first"?"y LLLL":"LLLL y";return this.format(t,l)}}DateLib.yearFirstLocales=new Set(["eu","hu","ja","ja-Hira","ja-JP","ko","ko-KR","lt","lt-LT","lv","lv-LV","mn","mn-MN","zh","zh-CN","zh-HK","zh-TW"]);const defaultDateLib=new DateLib;class CalendarDay{constructor(t,n,s=defaultDateLib){this.date=t,this.displayMonth=n,this.outside=!!(n&&!s.isSameMonth(t,n)),this.dateLib=s,this.isoDate=s.format(t,"yyyy-MM-dd"),this.displayMonthId=s.format(n,"yyyy-MM"),this.dateMonthId=s.format(t,"yyyy-MM")}isEqualTo(t){return this.dateLib.isSameDay(t.date,this.date)&&this.dateLib.isSameMonth(t.displayMonth,this.displayMonth)}}class CalendarMonth{constructor(t,n){this.date=t,this.weeks=n}}class CalendarWeek{constructor(t,n){this.days=n,this.weekNumber=t}}function Button(e){return React.createElement("button",{...e})}function CaptionLabel(e){return React.createElement("span",{...e})}function Chevron(e){const{size:t=24,orientation:n="left",className:s}=e;return React.createElement("svg",{className:s,width:t,height:t,viewBox:"0 0 24 24"},n==="up"&&React.createElement("polygon",{points:"6.77 17 12.5 11.43 18.24 17 20 15.28 12.5 8 5 15.28"}),n==="down"&&React.createElement("polygon",{points:"6.77 8 12.5 13.57 18.24 8 20 9.72 12.5 17 5 9.72"}),n==="left"&&React.createElement("polygon",{points:"16 18.112 9.81111111 12 16 5.87733333 14.0888889 4 6 12 14.0888889 20"}),n==="right"&&React.createElement("polygon",{points:"8 18.112 14.18888889 12 8 5.87733333 9.91111111 4 18 12 9.91111111 20"}))}function Day(e){const{day:t,modifiers:n,...s}=e;return React.createElement("td",{...s})}function DayButton(e){const{day:t,modifiers:n,...s}=e,a=React.useRef(null);return React.useEffect(()=>{n.focused&&a.current?.focus()},[n.focused]),React.createElement("button",{ref:a,...s})}var UI;(function(e){e.Root="root",e.Chevron="chevron",e.Day="day",e.DayButton="day_button",e.CaptionLabel="caption_label",e.Dropdowns="dropdowns",e.Dropdown="dropdown",e.DropdownRoot="dropdown_root",e.Footer="footer",e.MonthGrid="month_grid",e.MonthCaption="month_caption",e.MonthsDropdown="months_dropdown",e.Month="month",e.Months="months",e.Nav="nav",e.NextMonthButton="button_next",e.PreviousMonthButton="button_previous",e.Week="week",e.Weeks="weeks",e.Weekday="weekday",e.Weekdays="weekdays",e.WeekNumber="week_number",e.WeekNumberHeader="week_number_header",e.YearsDropdown="years_dropdown"})(UI||(UI={}));var DayFlag;(function(e){e.disabled="disabled",e.hidden="hidden",e.outside="outside",e.focused="focused",e.today="today"})(DayFlag||(DayFlag={}));var SelectionState;(function(e){e.range_end="range_end",e.range_middle="range_middle",e.range_start="range_start",e.selected="selected"})(SelectionState||(SelectionState={}));var Animation;(function(e){e.weeks_before_enter="weeks_before_enter",e.weeks_before_exit="weeks_before_exit",e.weeks_after_enter="weeks_after_enter",e.weeks_after_exit="weeks_after_exit",e.caption_after_enter="caption_after_enter",e.caption_after_exit="caption_after_exit",e.caption_before_enter="caption_before_enter",e.caption_before_exit="caption_before_exit"})(Animation||(Animation={}));function Dropdown(e){const{options:t,className:n,components:s,classNames:a,...o}=e,l=[a[UI.Dropdown],n].join(" "),c=t?.find(({value:d})=>d===o.value);return React.createElement("span",{"data-disabled":o.disabled,className:a[UI.DropdownRoot]},React.createElement(s.Select,{className:l,...o},t?.map(({value:d,label:f,disabled:R})=>React.createElement(s.Option,{key:d,value:d,disabled:R},f))),React.createElement("span",{className:a[UI.CaptionLabel],"aria-hidden":!0},c?.label,React.createElement(s.Chevron,{orientation:"down",size:18,className:a[UI.Chevron]})))}function DropdownNav(e){return React.createElement("div",{...e})}function Footer(e){return React.createElement("div",{...e})}function Month(e){const{calendarMonth:t,displayIndex:n,...s}=e;return React.createElement("div",{...s},e.children)}function MonthCaption(e){const{calendarMonth:t,displayIndex:n,...s}=e;return React.createElement("div",{...s})}function MonthGrid(e){return React.createElement("table",{...e})}function Months(e){return React.createElement("div",{...e})}const dayPickerContext=React.createContext(void 0);function useDayPicker(){const e=React.useContext(dayPickerContext);if(e===void 0)throw new Error("useDayPicker() must be used within a custom component.");return e}function MonthsDropdown(e){const{components:t}=useDayPicker();return React.createElement(t.Dropdown,{...e})}function Nav(e){const{onPreviousClick:t,onNextClick:n,previousMonth:s,nextMonth:a,...o}=e,{components:l,classNames:c,labels:{labelPrevious:d,labelNext:f}}=useDayPicker(),R=React.useCallback(te=>{a&&n?.(te)},[a,n]),S=React.useCallback(te=>{s&&t?.(te)},[s,t]);return React.createElement("nav",{...o},React.createElement(l.PreviousMonthButton,{type:"button",className:c[UI.PreviousMonthButton],tabIndex:s?void 0:-1,"aria-disabled":s?void 0:!0,"aria-label":d(s),onClick:S},React.createElement(l.Chevron,{disabled:s?void 0:!0,className:c[UI.Chevron],orientation:"left"})),React.createElement(l.NextMonthButton,{type:"button",className:c[UI.NextMonthButton],tabIndex:a?void 0:-1,"aria-disabled":a?void 0:!0,"aria-label":f(a),onClick:R},React.createElement(l.Chevron,{disabled:a?void 0:!0,orientation:"right",className:c[UI.Chevron]})))}function NextMonthButton(e){const{components:t}=useDayPicker();return React.createElement(t.Button,{...e})}function Option(e){return React.createElement("option",{...e})}function PreviousMonthButton(e){const{components:t}=useDayPicker();return React.createElement(t.Button,{...e})}function Root(e){const{rootRef:t,...n}=e;return React.createElement("div",{...n,ref:t})}function Select(e){return React.createElement("select",{...e})}function Week(e){const{week:t,...n}=e;return React.createElement("tr",{...n})}function Weekday(e){return React.createElement("th",{...e})}function Weekdays(e){return React.createElement("thead",{"aria-hidden":!0},React.createElement("tr",{...e}))}function WeekNumber(e){const{week:t,...n}=e;return React.createElement("th",{...n})}function WeekNumberHeader(e){return React.createElement("th",{...e})}function Weeks(e){return React.createElement("tbody",{...e})}function YearsDropdown(e){const{components:t}=useDayPicker();return React.createElement(t.Dropdown,{...e})}const components=Object.freeze(Object.defineProperty({__proto__:null,Button,CaptionLabel,Chevron,Day,DayButton,Dropdown,DropdownNav,Footer,Month,MonthCaption,MonthGrid,Months,MonthsDropdown,Nav,NextMonthButton,Option,PreviousMonthButton,Root,Select,Week,WeekNumber,WeekNumberHeader,Weekday,Weekdays,Weeks,YearsDropdown},Symbol.toStringTag,{value:"Module"}));function rangeIncludesDate(e,t,n=!1,s=defaultDateLib){let{from:a,to:o}=e;const{differenceInCalendarDays:l,isSameDay:c}=s;return a&&o?(l(o,a)<0&&([a,o]=[o,a]),l(t,a)>=(n?1:0)&&l(o,t)>=(n?1:0)):!n&&o?c(o,t):!n&&a?c(a,t):!1}function isDateInterval(e){return!!(e&&typeof e=="object"&&"before"in e&&"after"in e)}function isDateRange(e){return!!(e&&typeof e=="object"&&"from"in e)}function isDateAfterType(e){return!!(e&&typeof e=="object"&&"after"in e)}function isDateBeforeType(e){return!!(e&&typeof e=="object"&&"before"in e)}function isDayOfWeekType(e){return!!(e&&typeof e=="object"&&"dayOfWeek"in e)}function isDatesArray(e,t){return Array.isArray(e)&&e.every(t.isDate)}function dateMatchModifiers(e,t,n=defaultDateLib){const s=Array.isArray(t)?t:[t],{isSameDay:a,differenceInCalendarDays:o,isAfter:l}=n;return s.some(c=>{if(typeof c=="boolean")return c;if(n.isDate(c))return a(e,c);if(isDatesArray(c,n))return c.some(d=>a(e,d));if(isDateRange(c))return rangeIncludesDate(c,e,!1,n);if(isDayOfWeekType(c))return Array.isArray(c.dayOfWeek)?c.dayOfWeek.includes(e.getDay()):c.dayOfWeek===e.getDay();if(isDateInterval(c)){const d=o(c.before,e),f=o(c.after,e),R=d>0,S=f<0;return l(c.before,c.after)?S&&R:R||S}return isDateAfterType(c)?o(e,c.after)>0:isDateBeforeType(c)?o(c.before,e)>0:typeof c=="function"?c(e):!1})}function createGetModifiers(e,t,n,s,a){const{disabled:o,hidden:l,modifiers:c,showOutsideDays:d,broadcastCalendar:f,today:R=a.today()}=t,{isSameDay:S,isSameMonth:te,startOfMonth:A,isBefore:rt,endOfMonth:st,isAfter:it}=a,at=n&&A(n),ot=s&&st(s),lt={[DayFlag.focused]:[],[DayFlag.outside]:[],[DayFlag.disabled]:[],[DayFlag.hidden]:[],[DayFlag.today]:[]},ut={};for(const ct of e){const{date:dt,displayMonth:pt}=ct,mt=!!(pt&&!te(dt,pt)),Rt=!!(at&&rt(dt,at)),yt=!!(ot&&it(dt,ot)),It=!!(o&&dateMatchModifiers(dt,o,a)),ft=!!(l&&dateMatchModifiers(dt,l,a))||Rt||yt||!f&&!d&&mt||f&&d===!1&&mt,Ct=S(dt,R);mt&<.outside.push(ct),It&<.disabled.push(ct),ft&<.hidden.push(ct),Ct&<.today.push(ct),c&&Object.keys(c).forEach(Mt=>{const Dt=c?.[Mt];Dt&&dateMatchModifiers(dt,Dt,a)&&(ut[Mt]?ut[Mt].push(ct):ut[Mt]=[ct])})}return ct=>{const dt={[DayFlag.focused]:!1,[DayFlag.disabled]:!1,[DayFlag.hidden]:!1,[DayFlag.outside]:!1,[DayFlag.today]:!1},pt={};for(const mt in lt){const Rt=lt[mt];dt[mt]=Rt.some(yt=>yt===ct)}for(const mt in ut)pt[mt]=ut[mt].some(Rt=>Rt===ct);return{...dt,...pt}}}function getClassNamesForModifiers(e,t,n={}){return Object.entries(e).filter(([,a])=>a===!0).reduce((a,[o])=>(n[o]?a.push(n[o]):t[DayFlag[o]]?a.push(t[DayFlag[o]]):t[SelectionState[o]]&&a.push(t[SelectionState[o]]),a),[t[UI.Day]])}function getComponents(e){return{...components,...e}}function getDataAttributes(e){const t={"data-mode":e.mode??void 0,"data-required":"required"in e?e.required:void 0,"data-multiple-months":e.numberOfMonths&&e.numberOfMonths>1||void 0,"data-week-numbers":e.showWeekNumber||void 0,"data-broadcast-calendar":e.broadcastCalendar||void 0,"data-nav-layout":e.navLayout||void 0};return Object.entries(e).forEach(([n,s])=>{n.startsWith("data-")&&(t[n]=s)}),t}function getDefaultClassNames(){const e={};for(const t in UI)e[UI[t]]=`rdp-${UI[t]}`;for(const t in DayFlag)e[DayFlag[t]]=`rdp-${DayFlag[t]}`;for(const t in SelectionState)e[SelectionState[t]]=`rdp-${SelectionState[t]}`;for(const t in Animation)e[Animation[t]]=`rdp-${Animation[t]}`;return e}function formatCaption(e,t,n){return(n??new DateLib(t)).formatMonthYear(e)}const formatMonthCaption=formatCaption;function formatDay(e,t,n){return(n??new DateLib(t)).format(e,"d")}function formatMonthDropdown(e,t=defaultDateLib){return t.format(e,"LLLL")}function formatWeekdayName(e,t,n){return(n??new DateLib(t)).format(e,"cccccc")}function formatWeekNumber(e,t=defaultDateLib){return e<10?t.formatNumber(`0${e.toLocaleString()}`):t.formatNumber(`${e.toLocaleString()}`)}function formatWeekNumberHeader(){return""}function formatYearDropdown(e,t=defaultDateLib){return t.format(e,"yyyy")}const formatYearCaption=formatYearDropdown,defaultFormatters=Object.freeze(Object.defineProperty({__proto__:null,formatCaption,formatDay,formatMonthCaption,formatMonthDropdown,formatWeekNumber,formatWeekNumberHeader,formatWeekdayName,formatYearCaption,formatYearDropdown},Symbol.toStringTag,{value:"Module"}));function getFormatters(e){return e?.formatMonthCaption&&!e.formatCaption&&(e.formatCaption=e.formatMonthCaption),e?.formatYearCaption&&!e.formatYearDropdown&&(e.formatYearDropdown=e.formatYearCaption),{...defaultFormatters,...e}}function labelDayButton(e,t,n,s){let a=(s??new DateLib(n)).format(e,"PPPP");return t.today&&(a=`Today, ${a}`),t.selected&&(a=`${a}, selected`),a}const labelDay=labelDayButton;function labelGrid(e,t,n){return(n??new DateLib(t)).formatMonthYear(e)}const labelCaption=labelGrid;function labelGridcell(e,t,n,s){let a=(s??new DateLib(n)).format(e,"PPPP");return t?.today&&(a=`Today, ${a}`),a}function labelMonthDropdown(e){return"Choose the Month"}function labelNav(){return""}const defaultLabel="Go to the Next Month";function labelNext(e,t){return defaultLabel}function labelPrevious(e){return"Go to the Previous Month"}function labelWeekday(e,t,n){return(n??new DateLib(t)).format(e,"cccc")}function labelWeekNumber(e,t){return`Week ${e}`}function labelWeekNumberHeader(e){return"Week Number"}function labelYearDropdown(e){return"Choose the Year"}const defaultLabels=Object.freeze(Object.defineProperty({__proto__:null,labelCaption,labelDay,labelDayButton,labelGrid,labelGridcell,labelMonthDropdown,labelNav,labelNext,labelPrevious,labelWeekNumber,labelWeekNumberHeader,labelWeekday,labelYearDropdown},Symbol.toStringTag,{value:"Module"})),resolveLabel=(e,t,n)=>t||(n?typeof n=="function"?n:(...s)=>n:e);function getLabels(e,t){const n=t.locale?.labels??{};return{...defaultLabels,...e??{},labelDayButton:resolveLabel(labelDayButton,e?.labelDayButton,n.labelDayButton),labelMonthDropdown:resolveLabel(labelMonthDropdown,e?.labelMonthDropdown,n.labelMonthDropdown),labelNext:resolveLabel(labelNext,e?.labelNext,n.labelNext),labelPrevious:resolveLabel(labelPrevious,e?.labelPrevious,n.labelPrevious),labelWeekNumber:resolveLabel(labelWeekNumber,e?.labelWeekNumber,n.labelWeekNumber),labelYearDropdown:resolveLabel(labelYearDropdown,e?.labelYearDropdown,n.labelYearDropdown),labelGrid:resolveLabel(labelGrid,e?.labelGrid,n.labelGrid),labelGridcell:resolveLabel(labelGridcell,e?.labelGridcell,n.labelGridcell),labelNav:resolveLabel(labelNav,e?.labelNav,n.labelNav),labelWeekNumberHeader:resolveLabel(labelWeekNumberHeader,e?.labelWeekNumberHeader,n.labelWeekNumberHeader),labelWeekday:resolveLabel(labelWeekday,e?.labelWeekday,n.labelWeekday)}}function getMonthOptions(e,t,n,s,a){const{startOfMonth:o,startOfYear:l,endOfYear:c,eachMonthOfInterval:d,getMonth:f}=a;return d({start:l(e),end:c(e)}).map(te=>{const A=s.formatMonthDropdown(te,a),rt=f(te),st=t&&te<o(t)||n&&te>o(n)||!1;return{value:rt,label:A,disabled:st}})}function getStyleForModifiers(e,t={},n={}){let s={...t?.[UI.Day]};return Object.entries(e).filter(([,a])=>a===!0).forEach(([a])=>{s={...s,...n?.[a]}}),s}function getWeekdays(e,t,n,s){const a=s??e.today(),o=n?e.startOfBroadcastWeek(a,e):t?e.startOfISOWeek(a):e.startOfWeek(a),l=[];for(let c=0;c<7;c++){const d=e.addDays(o,c);l.push(d)}return l}function getYearOptions(e,t,n,s,a=!1){if(!e||!t)return;const{startOfYear:o,endOfYear:l,eachYearOfInterval:c,getYear:d}=s,f=o(e),R=l(t),S=c({start:f,end:R});return a&&S.reverse(),S.map(te=>{const A=n.formatYearDropdown(te,s);return{value:d(te),label:A,disabled:!1}})}function createNoonOverrides(e,t={}){const{weekStartsOn:n,locale:s}=t,a=n??s?.options?.weekStartsOn??0,o=c=>{const d=typeof c=="number"||typeof c=="string"?new Date(c):c;return new TZDate(d.getFullYear(),d.getMonth(),d.getDate(),12,0,0,e)},l=c=>{const d=o(c);return new Date(d.getFullYear(),d.getMonth(),d.getDate(),0,0,0,0)};return{today:()=>o(TZDate.tz(e)),newDate:(c,d,f)=>new TZDate(c,d,f,12,0,0,e),startOfDay:c=>o(c),startOfWeek:(c,d)=>{const f=o(c),R=d?.weekStartsOn??a,S=(f.getDay()-R+7)%7;return f.setDate(f.getDate()-S),f},startOfISOWeek:c=>{const d=o(c),f=(d.getDay()-1+7)%7;return d.setDate(d.getDate()-f),d},startOfMonth:c=>{const d=o(c);return d.setDate(1),d},startOfYear:c=>{const d=o(c);return d.setMonth(0,1),d},endOfWeek:(c,d)=>{const f=o(c),te=(((d?.weekStartsOn??a)+6)%7-f.getDay()+7)%7;return f.setDate(f.getDate()+te),f},endOfISOWeek:c=>{const d=o(c),f=(7-d.getDay())%7;return d.setDate(d.getDate()+f),d},endOfMonth:c=>{const d=o(c);return d.setMonth(d.getMonth()+1,0),d},endOfYear:c=>{const d=o(c);return d.setMonth(11,31),d},eachMonthOfInterval:c=>{const d=o(c.start),f=o(c.end),R=[],S=new TZDate(d.getFullYear(),d.getMonth(),1,12,0,0,e),te=f.getFullYear()*12+f.getMonth();for(;S.getFullYear()*12+S.getMonth()<=te;)R.push(new TZDate(S,e)),S.setMonth(S.getMonth()+1,1);return R},addDays:(c,d)=>{const f=o(c);return f.setDate(f.getDate()+d),f},addWeeks:(c,d)=>{const f=o(c);return f.setDate(f.getDate()+d*7),f},addMonths:(c,d)=>{const f=o(c);return f.setMonth(f.getMonth()+d),f},addYears:(c,d)=>{const f=o(c);return f.setFullYear(f.getFullYear()+d),f},eachYearOfInterval:c=>{const d=o(c.start),f=o(c.end),R=[],S=new TZDate(d.getFullYear(),0,1,12,0,0,e);for(;S.getFullYear()<=f.getFullYear();)R.push(new TZDate(S,e)),S.setFullYear(S.getFullYear()+1,0,1);return R},getWeek:(c,d)=>{const f=l(c);return getWeek(f,{weekStartsOn:d?.weekStartsOn??a,firstWeekContainsDate:d?.firstWeekContainsDate??s?.options?.firstWeekContainsDate??1})},getISOWeek:c=>{const d=l(c);return getISOWeek(d)},differenceInCalendarDays:(c,d)=>{const f=l(c),R=l(d);return differenceInCalendarDays(f,R)},differenceInCalendarMonths:(c,d)=>{const f=l(c),R=l(d);return differenceInCalendarMonths(f,R)}}}const asHtmlElement=e=>e instanceof HTMLElement?e:null,queryMonthEls=e=>[...e.querySelectorAll("[data-animated-month]")??[]],queryMonthEl=e=>asHtmlElement(e.querySelector("[data-animated-month]")),queryCaptionEl=e=>asHtmlElement(e.querySelector("[data-animated-caption]")),queryWeeksEl=e=>asHtmlElement(e.querySelector("[data-animated-weeks]")),queryNavEl=e=>asHtmlElement(e.querySelector("[data-animated-nav]")),queryWeekdaysEl=e=>asHtmlElement(e.querySelector("[data-animated-weekdays]"));function useAnimation(e,t,{classNames:n,months:s,focused:a,dateLib:o}){const l=React.useRef(null),c=React.useRef(s),d=React.useRef(!1);React.useLayoutEffect(()=>{const f=c.current;if(c.current=s,!t||!e.current||!(e.current instanceof HTMLElement)||s.length===0||f.length===0||s.length!==f.length)return;const R=o.isSameMonth(s[0].date,f[0].date),S=o.isAfter(s[0].date,f[0].date),te=S?n[Animation.caption_after_enter]:n[Animation.caption_before_enter],A=S?n[Animation.weeks_after_enter]:n[Animation.weeks_before_enter],rt=l.current,st=e.current.cloneNode(!0);if(st instanceof HTMLElement?(queryMonthEls(st).forEach(lt=>{if(!(lt instanceof HTMLElement))return;const ut=queryMonthEl(lt);ut&<.contains(ut)&<.removeChild(ut);const ct=queryCaptionEl(lt);ct&&ct.classList.remove(te);const dt=queryWeeksEl(lt);dt&&dt.classList.remove(A)}),l.current=st):l.current=null,d.current||R||a)return;const it=rt instanceof HTMLElement?queryMonthEls(rt):[],at=queryMonthEls(e.current);if(at?.every(ot=>ot instanceof HTMLElement)&&it&&it.every(ot=>ot instanceof HTMLElement)){d.current=!0,e.current.style.isolation="isolate";const ot=queryNavEl(e.current);ot&&(ot.style.zIndex="1"),at.forEach((lt,ut)=>{const ct=it[ut];if(!ct)return;lt.style.position="relative",lt.style.overflow="hidden";const dt=queryCaptionEl(lt);dt&&dt.classList.add(te);const pt=queryWeeksEl(lt);pt&&pt.classList.add(A);const mt=()=>{d.current=!1,e.current&&(e.current.style.isolation=""),ot&&(ot.style.zIndex=""),dt&&dt.classList.remove(te),pt&&pt.classList.remove(A),lt.style.position="",lt.style.overflow="",lt.contains(ct)&<.removeChild(ct)};ct.style.pointerEvents="none",ct.style.position="absolute",ct.style.overflow="hidden",ct.setAttribute("aria-hidden","true");const Rt=queryWeekdaysEl(ct);Rt&&(Rt.style.opacity="0");const yt=queryCaptionEl(ct);yt&&(yt.classList.add(S?n[Animation.caption_before_exit]:n[Animation.caption_after_exit]),yt.addEventListener("animationend",mt));const It=queryWeeksEl(ct);It&&It.classList.add(S?n[Animation.weeks_before_exit]:n[Animation.weeks_after_exit]),lt.insertBefore(ct,lt.firstChild)})}})}function getDates(e,t,n,s){const a=e[0],o=e[e.length-1],{ISOWeek:l,fixedWeeks:c,broadcastCalendar:d}=n??{},{addDays:f,differenceInCalendarDays:R,differenceInCalendarMonths:S,endOfBroadcastWeek:te,endOfISOWeek:A,endOfMonth:rt,endOfWeek:st,isAfter:it,startOfBroadcastWeek:at,startOfISOWeek:ot,startOfWeek:lt}=s,ut=d?at(a,s):l?ot(a):lt(a),ct=d?te(o):l?A(rt(o)):st(rt(o)),dt=t&&(d?te(t):l?A(t):st(t)),pt=dt&&it(ct,dt)?dt:ct,mt=R(pt,ut),Rt=S(o,a)+1,yt=[];for(let Ct=0;Ct<=mt;Ct++){const Mt=f(ut,Ct);yt.push(Mt)}const ft=(d?35:42)*Rt;if(c&&yt.length<ft){const Ct=ft-yt.length;for(let Mt=0;Mt<Ct;Mt++){const Dt=f(yt[yt.length-1],1);yt.push(Dt)}}return yt}function getDays(e){const t=[];return e.reduce((n,s)=>{const a=s.weeks.reduce((o,l)=>o.concat(l.days.slice()),t.slice());return n.concat(a.slice())},t.slice())}function getDisplayMonths(e,t,n,s){const{numberOfMonths:a=1}=n,o=[];for(let l=0;l<a;l++){const c=s.addMonths(e,l);if(t&&c>t)break;o.push(c)}return o}function getInitialMonth(e,t,n,s){const{month:a,defaultMonth:o,today:l=s.today(),numberOfMonths:c=1}=e;let d=a||o||l;const{differenceInCalendarMonths:f,addMonths:R,startOfMonth:S}=s;if(n&&f(n,d)<c-1){const te=-1*(c-1);d=R(n,te)}return t&&f(d,t)<0&&(d=t),S(d)}function getMonths(e,t,n,s){const{addDays:a,endOfBroadcastWeek:o,endOfISOWeek:l,endOfMonth:c,endOfWeek:d,getISOWeek:f,getWeek:R,startOfBroadcastWeek:S,startOfISOWeek:te,startOfWeek:A}=s,rt=e.reduce((st,it)=>{const at=n.broadcastCalendar?S(it,s):n.ISOWeek?te(it):A(it),ot=n.broadcastCalendar?o(it):n.ISOWeek?l(c(it)):d(c(it)),lt=t.filter(pt=>pt>=at&&pt<=ot),ut=n.broadcastCalendar?35:42;if(n.fixedWeeks&<.length<ut){const pt=t.filter(mt=>{const Rt=ut-lt.length;return mt>ot&&mt<=a(ot,Rt)});lt.push(...pt)}const ct=lt.reduce((pt,mt)=>{const Rt=n.ISOWeek?f(mt):R(mt),yt=pt.find(ft=>ft.weekNumber===Rt),It=new CalendarDay(mt,it,s);return yt?yt.days.push(It):pt.push(new CalendarWeek(Rt,[It])),pt},[]),dt=new CalendarMonth(it,ct);return st.push(dt),st},[]);return n.reverseMonths?rt.reverse():rt}function getNavMonths(e,t){let{startMonth:n,endMonth:s}=e;const{startOfYear:a,startOfDay:o,startOfMonth:l,endOfMonth:c,addYears:d,endOfYear:f,newDate:R,today:S}=t,{fromYear:te,toYear:A,fromMonth:rt,toMonth:st}=e;!n&&rt&&(n=rt),!n&&te&&(n=t.newDate(te,0,1)),!s&&st&&(s=st),!s&&A&&(s=R(A,11,31));const it=e.captionLayout==="dropdown"||e.captionLayout==="dropdown-years";return n?n=l(n):te?n=R(te,0,1):!n&&it&&(n=a(d(e.today??S(),-100))),s?s=c(s):A?s=R(A,11,31):!s&&it&&(s=f(e.today??S())),[n&&o(n),s&&o(s)]}function getNextMonth(e,t,n,s){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o=1}=n,{startOfMonth:l,addMonths:c,differenceInCalendarMonths:d}=s,f=a?o:1,R=l(e);if(!t)return c(R,f);if(!(d(t,e)<o))return c(R,f)}function getPreviousMonth(e,t,n,s){if(n.disableNavigation)return;const{pagedNavigation:a,numberOfMonths:o}=n,{startOfMonth:l,addMonths:c,differenceInCalendarMonths:d}=s,f=a?o??1:1,R=l(e);if(!t)return c(R,-f);if(!(d(R,t)<=0))return c(R,-f)}function getWeeks(e){const t=[];return e.reduce((n,s)=>n.concat(s.weeks.slice()),t.slice())}function useControlledValue(e,t){const[n,s]=React.useState(e);return[t===void 0?n:t,s]}function useCalendar(e,t){const[n,s]=getNavMonths(e,t),{startOfMonth:a,endOfMonth:o}=t,l=getInitialMonth(e,n,s,t),[c,d]=useControlledValue(l,e.month?l:void 0);React.useEffect(()=>{const ut=getInitialMonth(e,n,s,t);d(ut)},[e.timeZone]);const{months:f,weeks:R,days:S,previousMonth:te,nextMonth:A}=React.useMemo(()=>{const ut=getDisplayMonths(c,s,{numberOfMonths:e.numberOfMonths},t),ct=getDates(ut,e.endMonth?o(e.endMonth):void 0,{ISOWeek:e.ISOWeek,fixedWeeks:e.fixedWeeks,broadcastCalendar:e.broadcastCalendar},t),dt=getMonths(ut,ct,{broadcastCalendar:e.broadcastCalendar,fixedWeeks:e.fixedWeeks,ISOWeek:e.ISOWeek,reverseMonths:e.reverseMonths},t),pt=getWeeks(dt),mt=getDays(dt),Rt=getPreviousMonth(c,n,e,t),yt=getNextMonth(c,s,e,t);return{months:dt,weeks:pt,days:mt,previousMonth:Rt,nextMonth:yt}},[t,c.getTime(),s?.getTime(),n?.getTime(),e.disableNavigation,e.broadcastCalendar,e.endMonth?.getTime(),e.fixedWeeks,e.ISOWeek,e.numberOfMonths,e.pagedNavigation,e.reverseMonths]),{disableNavigation:rt,onMonthChange:st}=e,it=ut=>R.some(ct=>ct.days.some(dt=>dt.isEqualTo(ut))),at=ut=>{if(rt)return;let ct=a(ut);n&&ct<a(n)&&(ct=a(n)),s&&ct>a(s)&&(ct=a(s)),d(ct),st?.(ct)};return{months:f,weeks:R,days:S,navStart:n,navEnd:s,previousMonth:te,nextMonth:A,goToMonth:at,goToDay:ut=>{it(ut)||at(ut.date)}}}var FocusTargetPriority;(function(e){e[e.Today=0]="Today",e[e.Selected=1]="Selected",e[e.LastFocused=2]="LastFocused",e[e.FocusedModifier=3]="FocusedModifier"})(FocusTargetPriority||(FocusTargetPriority={}));function isFocusableDay(e){return!e[DayFlag.disabled]&&!e[DayFlag.hidden]&&!e[DayFlag.outside]}function calculateFocusTarget(e,t,n,s){let a,o=-1;for(const l of e){const c=t(l);isFocusableDay(c)&&(c[DayFlag.focused]&&o<FocusTargetPriority.FocusedModifier?(a=l,o=FocusTargetPriority.FocusedModifier):s?.isEqualTo(l)&&o<FocusTargetPriority.LastFocused?(a=l,o=FocusTargetPriority.LastFocused):n(l.date)&&o<FocusTargetPriority.Selected?(a=l,o=FocusTargetPriority.Selected):c[DayFlag.today]&&o<FocusTargetPriority.Today&&(a=l,o=FocusTargetPriority.Today))}return a||(a=e.find(l=>isFocusableDay(t(l)))),a}function getFocusableDate(e,t,n,s,a,o,l){const{ISOWeek:c,broadcastCalendar:d}=o,{addDays:f,addMonths:R,addWeeks:S,addYears:te,endOfBroadcastWeek:A,endOfISOWeek:rt,endOfWeek:st,max:it,min:at,startOfBroadcastWeek:ot,startOfISOWeek:lt,startOfWeek:ut}=l;let dt={day:f,week:S,month:R,year:te,startOfWeek:pt=>d?ot(pt,l):c?lt(pt):ut(pt),endOfWeek:pt=>d?A(pt):c?rt(pt):st(pt)}[e](n,t==="after"?1:-1);return t==="before"&&s?dt=it([s,dt]):t==="after"&&a&&(dt=at([a,dt])),dt}function getNextFocus(e,t,n,s,a,o,l,c=0){if(c>365)return;const d=getFocusableDate(e,t,n.date,s,a,o,l),f=!!(o.disabled&&dateMatchModifiers(d,o.disabled,l)),R=!!(o.hidden&&dateMatchModifiers(d,o.hidden,l)),S=d,te=new CalendarDay(d,S,l);return!f&&!R?te:getNextFocus(e,t,te,s,a,o,l,c+1)}function useFocus(e,t,n,s,a){const{autoFocus:o}=e,[l,c]=React.useState(),d=calculateFocusTarget(t.days,n,s||(()=>!1),l),[f,R]=React.useState(o?d:void 0);return{isFocusTarget:st=>!!d?.isEqualTo(st),setFocused:R,focused:f,blur:()=>{c(f),R(void 0)},moveFocus:(st,it)=>{if(!f)return;const at=getNextFocus(st,it,f,t.navStart,t.navEnd,e,a);at&&(e.disableNavigation&&!t.days.some(lt=>lt.isEqualTo(at))||(t.goToDay(at),R(at)))}}}function useMulti(e,t){const{selected:n,required:s,onSelect:a}=e,[o,l]=useControlledValue(n,a?n:void 0),c=a?n:o,{isSameDay:d}=t,f=A=>c?.some(rt=>d(rt,A))??!1,{min:R,max:S}=e;return{selected:c,select:(A,rt,st)=>{let it=[...c??[]];if(f(A)){if(c?.length===R||s&&c?.length===1)return;it=c?.filter(at=>!d(at,A))}else c?.length===S?it=[A]:it=[...it,A];return a||l(it),a?.(it,A,rt,st),it},isSelected:f}}function addToRange(e,t,n=0,s=0,a=!1,o=defaultDateLib){const{from:l,to:c}=t||{},{isSameDay:d,isAfter:f,isBefore:R}=o;let S;if(!l&&!c)S={from:e,to:n>0?void 0:e};else if(l&&!c)d(l,e)?n===0?S={from:l,to:e}:a?S={from:l,to:void 0}:S=void 0:R(e,l)?S={from:e,to:l}:S={from:l,to:e};else if(l&&c)if(d(l,e)&&d(c,e))a?S={from:l,to:c}:S=void 0;else if(d(l,e))S={from:l,to:n>0?void 0:e};else if(d(c,e))S={from:e,to:n>0?void 0:e};else if(R(e,l))S={from:e,to:c};else if(f(e,l))S={from:l,to:e};else if(f(e,c))S={from:l,to:e};else throw new Error("Invalid range");if(S?.from&&S?.to){const te=o.differenceInCalendarDays(S.to,S.from);s>0&&te>s?S={from:e,to:void 0}:n>1&&te<n&&(S={from:e,to:void 0})}return S}function rangeContainsDayOfWeek(e,t,n=defaultDateLib){const s=Array.isArray(t)?t:[t];let a=e.from;const o=n.differenceInCalendarDays(e.to,e.from),l=Math.min(o,6);for(let c=0;c<=l;c++){if(s.includes(a.getDay()))return!0;a=n.addDays(a,1)}return!1}function rangeOverlaps(e,t,n=defaultDateLib){return rangeIncludesDate(e,t.from,!1,n)||rangeIncludesDate(e,t.to,!1,n)||rangeIncludesDate(t,e.from,!1,n)||rangeIncludesDate(t,e.to,!1,n)}function rangeContainsModifiers(e,t,n=defaultDateLib){const s=Array.isArray(t)?t:[t];if(s.filter(c=>typeof c!="function").some(c=>typeof c=="boolean"?c:n.isDate(c)?rangeIncludesDate(e,c,!1,n):isDatesArray(c,n)?c.some(d=>rangeIncludesDate(e,d,!1,n)):isDateRange(c)?c.from&&c.to?rangeOverlaps(e,{from:c.from,to:c.to},n):!1:isDayOfWeekType(c)?rangeContainsDayOfWeek(e,c.dayOfWeek,n):isDateInterval(c)?n.isAfter(c.before,c.after)?rangeOverlaps(e,{from:n.addDays(c.after,1),to:n.addDays(c.before,-1)},n):dateMatchModifiers(e.from,c,n)||dateMatchModifiers(e.to,c,n):isDateAfterType(c)||isDateBeforeType(c)?dateMatchModifiers(e.from,c,n)||dateMatchModifiers(e.to,c,n):!1))return!0;const l=s.filter(c=>typeof c=="function");if(l.length){let c=e.from;const d=n.differenceInCalendarDays(e.to,e.from);for(let f=0;f<=d;f++){if(l.some(R=>R(c)))return!0;c=n.addDays(c,1)}}return!1}function useRange(e,t){const{disabled:n,excludeDisabled:s,resetOnSelect:a,selected:o,required:l,onSelect:c}=e,[d,f]=useControlledValue(o,c?o:void 0),R=c?o:d;return{selected:R,select:(A,rt,st)=>{const{min:it,max:at}=e;let ot;if(A){const lt=R?.from,ut=R?.to,ct=!!lt&&!!ut,dt=!!lt&&!!ut&&t.isSameDay(lt,ut)&&t.isSameDay(A,lt);a&&(ct||!R?.from)?!l&&dt?ot=void 0:ot={from:A,to:void 0}:ot=addToRange(A,R,it,at,l,t)}return s&&n&&ot?.from&&ot.to&&rangeContainsModifiers({from:ot.from,to:ot.to},n,t)&&(ot.from=A,ot.to=void 0),c||f(ot),c?.(ot,A,rt,st),ot},isSelected:A=>R&&rangeIncludesDate(R,A,!1,t)}}function useSingle(e,t){const{selected:n,required:s,onSelect:a}=e,[o,l]=useControlledValue(n,a?n:void 0),c=a?n:o,{isSameDay:d}=t;return{selected:c,select:(S,te,A)=>{let rt=S;return!s&&c&&c&&d(S,c)&&(rt=void 0),a||l(rt),a?.(rt,S,te,A),rt},isSelected:S=>c?d(c,S):!1}}function useSelection(e,t){const n=useSingle(e,t),s=useMulti(e,t),a=useRange(e,t);switch(e.mode){case"single":return n;case"multiple":return s;case"range":return a;default:return}}function toTimeZone(e,t){return e instanceof TZDate&&e.timeZone===t?e:new TZDate(e,t)}function toZoneNoon(e,t,n){return toTimeZone(e,t)}function convertMatcher(e,t,n){return typeof e=="boolean"||typeof e=="function"?e:e instanceof Date?toZoneNoon(e,t):Array.isArray(e)?e.map(s=>s instanceof Date?toZoneNoon(s,t):s):isDateRange(e)?{...e,from:e.from?toTimeZone(e.from,t):e.from,to:e.to?toTimeZone(e.to,t):e.to}:isDateInterval(e)?{before:toZoneNoon(e.before,t),after:toZoneNoon(e.after,t)}:isDateAfterType(e)?{after:toZoneNoon(e.after,t)}:isDateBeforeType(e)?{before:toZoneNoon(e.before,t)}:e}function convertMatchersToTimeZone(e,t,n){return e&&(Array.isArray(e)?e.map(s=>convertMatcher(s,t)):convertMatcher(e,t))}function DayPicker(e){let t=e;const n=t.timeZone;if(n&&(t={...e,timeZone:n},t.today&&(t.today=toTimeZone(t.today,n)),t.month&&(t.month=toTimeZone(t.month,n)),t.defaultMonth&&(t.defaultMonth=toTimeZone(t.defaultMonth,n)),t.startMonth&&(t.startMonth=toTimeZone(t.startMonth,n)),t.endMonth&&(t.endMonth=toTimeZone(t.endMonth,n)),t.mode==="single"&&t.selected?t.selected=toTimeZone(t.selected,n):t.mode==="multiple"&&t.selected?t.selected=t.selected?.map(Nn=>toTimeZone(Nn,n)):t.mode==="range"&&t.selected&&(t.selected={from:t.selected.from?toTimeZone(t.selected.from,n):t.selected.from,to:t.selected.to?toTimeZone(t.selected.to,n):t.selected.to}),t.disabled!==void 0&&(t.disabled=convertMatchersToTimeZone(t.disabled,n)),t.hidden!==void 0&&(t.hidden=convertMatchersToTimeZone(t.hidden,n)),t.modifiers)){const Nn={};Object.keys(t.modifiers).forEach($n=>{Nn[$n]=convertMatchersToTimeZone(t.modifiers?.[$n],n)}),t.modifiers=Nn}const{components:s,formatters:a,labels:o,dateLib:l,locale:c,classNames:d}=React.useMemo(()=>{const Nn={...enUS,...t.locale},$n=t.broadcastCalendar?1:t.weekStartsOn,En=t.noonSafe&&t.timeZone?createNoonOverrides(t.timeZone,{weekStartsOn:$n,locale:Nn}):void 0,Ln=t.dateLib&&En?{...En,...t.dateLib}:t.dateLib??En,zn=new DateLib({locale:Nn,weekStartsOn:$n,firstWeekContainsDate:t.firstWeekContainsDate,useAdditionalWeekYearTokens:t.useAdditionalWeekYearTokens,useAdditionalDayOfYearTokens:t.useAdditionalDayOfYearTokens,timeZone:t.timeZone,numerals:t.numerals},Ln);return{dateLib:zn,components:getComponents(t.components),formatters:getFormatters(t.formatters),labels:getLabels(t.labels,zn.options),locale:Nn,classNames:{...getDefaultClassNames(),...t.classNames}}},[t.locale,t.broadcastCalendar,t.weekStartsOn,t.firstWeekContainsDate,t.useAdditionalWeekYearTokens,t.useAdditionalDayOfYearTokens,t.timeZone,t.numerals,t.dateLib,t.noonSafe,t.components,t.formatters,t.labels,t.classNames]);t.today||(t={...t,today:l.today()});const{captionLayout:f,mode:R,navLayout:S,numberOfMonths:te=1,onDayBlur:A,onDayClick:rt,onDayFocus:st,onDayKeyDown:it,onDayMouseEnter:at,onDayMouseLeave:ot,onNextClick:lt,onPrevClick:ut,showWeekNumber:ct,styles:dt}=t,{formatCaption:pt,formatDay:mt,formatMonthDropdown:Rt,formatWeekNumber:yt,formatWeekNumberHeader:It,formatWeekdayName:ft,formatYearDropdown:Ct}=a,Mt=useCalendar(t,l),{days:Dt,months:Vt,navStart:Ht,navEnd:$t,previousMonth:Ft,nextMonth:zt,goToMonth:Jt}=Mt,Yt=createGetModifiers(Dt,t,Ht,$t,l),{isSelected:sn,select:fn,selected:Zt}=useSelection(t,l)??{},{blur:dn,focused:Wt,isFocusTarget:tn,moveFocus:Ut,setFocused:Qt}=useFocus(t,Mt,Yt,sn??(()=>!1),l),{labelDayButton:hn,labelGridcell:Kt,labelGrid:xn,labelMonthDropdown:an,labelNav:on,labelPrevious:vn,labelNext:Sn,labelWeekday:wn,labelWeekNumber:Cn,labelWeekNumberHeader:Tn,labelYearDropdown:qt}=o,nn=React.useMemo(()=>getWeekdays(l,t.ISOWeek,t.broadcastCalendar,t.today),[l,t.ISOWeek,t.broadcastCalendar,t.today]),Xt=R!==void 0||rt!==void 0,mn=React.useCallback(()=>{Ft&&(Jt(Ft),ut?.(Ft))},[Ft,Jt,ut]),un=React.useCallback(()=>{zt&&(Jt(zt),lt?.(zt))},[Jt,zt,lt]),pn=React.useCallback((Nn,$n)=>En=>{En.preventDefault(),En.stopPropagation(),Qt(Nn),!$n.disabled&&(fn?.(Nn.date,$n,En),rt?.(Nn.date,$n,En))},[fn,rt,Qt]),yn=React.useCallback((Nn,$n)=>En=>{Qt(Nn),st?.(Nn.date,$n,En)},[st,Qt]),Pn=React.useCallback((Nn,$n)=>En=>{dn(),A?.(Nn.date,$n,En)},[dn,A]),_n=React.useCallback((Nn,$n)=>En=>{const Ln={ArrowLeft:[En.shiftKey?"month":"day",t.dir==="rtl"?"after":"before"],ArrowRight:[En.shiftKey?"month":"day",t.dir==="rtl"?"before":"after"],ArrowDown:[En.shiftKey?"year":"week","after"],ArrowUp:[En.shiftKey?"year":"week","before"],PageUp:[En.shiftKey?"year":"month","before"],PageDown:[En.shiftKey?"year":"month","after"],Home:["startOfWeek","before"],End:["endOfWeek","after"]};if(Ln[En.key]){En.preventDefault(),En.stopPropagation();const[zn,On]=Ln[En.key];Ut(zn,On)}it?.(Nn.date,$n,En)},[Ut,it,t.dir]),Mn=React.useCallback((Nn,$n)=>En=>{at?.(Nn.date,$n,En)},[at]),Vn=React.useCallback((Nn,$n)=>En=>{ot?.(Nn.date,$n,En)},[ot]),Wn=React.useCallback(Nn=>$n=>{const En=Number($n.target.value),Ln=l.setMonth(l.startOfMonth(Nn),En);Jt(Ln)},[l,Jt]),Un=React.useCallback(Nn=>$n=>{const En=Number($n.target.value),Ln=l.setYear(l.startOfMonth(Nn),En);Jt(Ln)},[l,Jt]),{className:Zn,style:qn}=React.useMemo(()=>({className:[d[UI.Root],t.className].filter(Boolean).join(" "),style:{...dt?.[UI.Root],...t.style}}),[d,t.className,t.style,dt]),nr=getDataAttributes(t),ar=React.useRef(null);useAnimation(ar,!!t.animate,{classNames:d,months:Vt,focused:Wt,dateLib:l});const cr={dayPickerProps:t,selected:Zt,select:fn,isSelected:sn,months:Vt,nextMonth:zt,previousMonth:Ft,goToMonth:Jt,getModifiers:Yt,components:s,classNames:d,styles:dt,labels:o,formatters:a};return React.createElement(dayPickerContext.Provider,{value:cr},React.createElement(s.Root,{rootRef:t.animate?ar:void 0,className:Zn,style:qn,dir:t.dir,id:t.id,lang:t.lang??c.code,nonce:t.nonce,title:t.title,role:t.role,"aria-label":t["aria-label"],"aria-labelledby":t["aria-labelledby"],...nr},React.createElement(s.Months,{className:d[UI.Months],style:dt?.[UI.Months]},!t.hideNavigation&&!S&&React.createElement(s.Nav,{"data-animated-nav":t.animate?"true":void 0,className:d[UI.Nav],style:dt?.[UI.Nav],"aria-label":on(),onPreviousClick:mn,onNextClick:un,previousMonth:Ft,nextMonth:zt}),Vt.map((Nn,$n)=>React.createElement(s.Month,{"data-animated-month":t.animate?"true":void 0,className:d[UI.Month],style:dt?.[UI.Month],key:$n,displayIndex:$n,calendarMonth:Nn},S==="around"&&!t.hideNavigation&&$n===0&&React.createElement(s.PreviousMonthButton,{type:"button",className:d[UI.PreviousMonthButton],tabIndex:Ft?void 0:-1,"aria-disabled":Ft?void 0:!0,"aria-label":vn(Ft),onClick:mn,"data-animated-button":t.animate?"true":void 0},React.createElement(s.Chevron,{disabled:Ft?void 0:!0,className:d[UI.Chevron],orientation:t.dir==="rtl"?"right":"left"})),React.createElement(s.MonthCaption,{"data-animated-caption":t.animate?"true":void 0,className:d[UI.MonthCaption],style:dt?.[UI.MonthCaption],calendarMonth:Nn,displayIndex:$n},f?.startsWith("dropdown")?React.createElement(s.DropdownNav,{className:d[UI.Dropdowns],style:dt?.[UI.Dropdowns]},(()=>{const En=f==="dropdown"||f==="dropdown-months"?React.createElement(s.MonthsDropdown,{key:"month",className:d[UI.MonthsDropdown],"aria-label":an(),classNames:d,components:s,disabled:!!t.disableNavigation,onChange:Wn(Nn.date),options:getMonthOptions(Nn.date,Ht,$t,a,l),style:dt?.[UI.Dropdown],value:l.getMonth(Nn.date)}):React.createElement("span",{key:"month"},Rt(Nn.date,l)),Ln=f==="dropdown"||f==="dropdown-years"?React.createElement(s.YearsDropdown,{key:"year",className:d[UI.YearsDropdown],"aria-label":qt(l.options),classNames:d,components:s,disabled:!!t.disableNavigation,onChange:Un(Nn.date),options:getYearOptions(Ht,$t,a,l,!!t.reverseYears),style:dt?.[UI.Dropdown],value:l.getYear(Nn.date)}):React.createElement("span",{key:"year"},Ct(Nn.date,l));return l.getMonthYearOrder()==="year-first"?[Ln,En]:[En,Ln]})(),React.createElement("span",{role:"status","aria-live":"polite",style:{border:0,clip:"rect(0 0 0 0)",height:"1px",margin:"-1px",overflow:"hidden",padding:0,position:"absolute",width:"1px",whiteSpace:"nowrap",wordWrap:"normal"}},pt(Nn.date,l.options,l))):React.createElement(s.CaptionLabel,{className:d[UI.CaptionLabel],role:"status","aria-live":"polite"},pt(Nn.date,l.options,l))),S==="around"&&!t.hideNavigation&&$n===te-1&&React.createElement(s.NextMonthButton,{type:"button",className:d[UI.NextMonthButton],tabIndex:zt?void 0:-1,"aria-disabled":zt?void 0:!0,"aria-label":Sn(zt),onClick:un,"data-animated-button":t.animate?"true":void 0},React.createElement(s.Chevron,{disabled:zt?void 0:!0,className:d[UI.Chevron],orientation:t.dir==="rtl"?"left":"right"})),$n===te-1&&S==="after"&&!t.hideNavigation&&React.createElement(s.Nav,{"data-animated-nav":t.animate?"true":void 0,className:d[UI.Nav],style:dt?.[UI.Nav],"aria-label":on(),onPreviousClick:mn,onNextClick:un,previousMonth:Ft,nextMonth:zt}),React.createElement(s.MonthGrid,{role:"grid","aria-multiselectable":R==="multiple"||R==="range","aria-label":xn(Nn.date,l.options,l)||void 0,className:d[UI.MonthGrid],style:dt?.[UI.MonthGrid]},!t.hideWeekdays&&React.createElement(s.Weekdays,{"data-animated-weekdays":t.animate?"true":void 0,className:d[UI.Weekdays],style:dt?.[UI.Weekdays]},ct&&React.createElement(s.WeekNumberHeader,{"aria-label":Tn(l.options),className:d[UI.WeekNumberHeader],style:dt?.[UI.WeekNumberHeader],scope:"col"},It()),nn.map(En=>React.createElement(s.Weekday,{"aria-label":wn(En,l.options,l),className:d[UI.Weekday],key:String(En),style:dt?.[UI.Weekday],scope:"col"},ft(En,l.options,l)))),React.createElement(s.Weeks,{"data-animated-weeks":t.animate?"true":void 0,className:d[UI.Weeks],style:dt?.[UI.Weeks]},Nn.weeks.map(En=>React.createElement(s.Week,{className:d[UI.Week],key:En.weekNumber,style:dt?.[UI.Week],week:En},ct&&React.createElement(s.WeekNumber,{week:En,style:dt?.[UI.WeekNumber],"aria-label":Cn(En.weekNumber,{locale:c}),className:d[UI.WeekNumber],scope:"row",role:"rowheader"},yt(En.weekNumber,l)),En.days.map(Ln=>{const{date:zn}=Ln,On=Yt(Ln);if(On[DayFlag.focused]=!On.hidden&&!!Wt?.isEqualTo(Ln),On[SelectionState.selected]=sn?.(zn)||On.selected,isDateRange(Zt)){const{from:hr,to:gr}=Zt;On[SelectionState.range_start]=!!(hr&&gr&&l.isSameDay(zn,hr)),On[SelectionState.range_end]=!!(hr&&gr&&l.isSameDay(zn,gr)),On[SelectionState.range_middle]=rangeIncludesDate(Zt,zn,!0,l)}const Kn=getStyleForModifiers(On,dt,t.modifiersStyles),Bn=getClassNamesForModifiers(On,d,t.modifiersClassNames),Qn=!Xt&&!On.hidden?Kt(zn,On,l.options,l):void 0;return React.createElement(s.Day,{key:`${Ln.isoDate}_${Ln.displayMonthId}`,day:Ln,modifiers:On,className:Bn.join(" "),style:Kn,role:"gridcell","aria-selected":On.selected||void 0,"aria-label":Qn,"data-day":Ln.isoDate,"data-month":Ln.outside?Ln.dateMonthId:void 0,"data-selected":On.selected||void 0,"data-disabled":On.disabled||void 0,"data-hidden":On.hidden||void 0,"data-outside":Ln.outside||void 0,"data-focused":On.focused||void 0,"data-today":On.today||void 0},!On.hidden&&Xt?React.createElement(s.DayButton,{className:d[UI.DayButton],style:dt?.[UI.DayButton],type:"button",day:Ln,modifiers:On,disabled:!On.focused&&On.disabled||void 0,"aria-disabled":On.focused&&On.disabled||void 0,tabIndex:tn(Ln)?0:-1,"aria-label":hn(zn,On,l.options,l),onClick:pn(Ln,On),onBlur:Pn(Ln,On),onFocus:yn(Ln,On),onKeyDown:_n(Ln,On),onMouseEnter:Mn(Ln,On),onMouseLeave:Vn(Ln,On)},mt(zn,l.options,l)):!On.hidden&&mt(Ln.date,l.options,l))})))))))),t.footer&&React.createElement(s.Footer,{className:d[UI.Footer],style:dt?.[UI.Footer],role:"status","aria-live":"polite"},t.footer)))}function Calendar({className:e,classNames:t,showOutsideDays:n=!0,captionLayout:s="label",buttonVariant:a="ghost",formatters:o,components:l,...c}){const d=getDefaultClassNames();return jsxRuntime.jsx(DayPicker,{showOutsideDays:n,className:cn("bg-background group/calendar p-3 [--cell-size:2rem] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,e),captionLayout:s,formatters:{formatMonthDropdown:f=>f.toLocaleString("default",{month:"short"}),...o},classNames:{root:cn("w-fit",d.root),months:cn("relative flex flex-col gap-4 md:flex-row",d.months),month:cn("flex w-full flex-col gap-4",d.month),nav:cn("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",d.nav),button_previous:cn(buttonVariants({variant:a}),"h-[--cell-size] w-[--cell-size] select-none p-0 aria-disabled:opacity-50",d.button_previous),button_next:cn(buttonVariants({variant:a}),"h-[--cell-size] w-[--cell-size] select-none p-0 aria-disabled:opacity-50",d.button_next),month_caption:cn("flex h-[--cell-size] w-full items-center justify-center px-[--cell-size]",d.month_caption),dropdowns:cn("flex h-[--cell-size] w-full items-center justify-center gap-1.5 text-sm font-medium",d.dropdowns),dropdown_root:cn("has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border",d.dropdown_root),dropdown:cn("bg-popover absolute inset-0 opacity-0",d.dropdown),caption_label:cn("select-none font-medium",s==="label"?"text-sm":"[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5",d.caption_label),table:"w-full border-collapse",weekdays:cn("flex",d.weekdays),weekday:cn("text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal",d.weekday),week:cn("mt-2 flex w-full",d.week),week_number_header:cn("w-[--cell-size] select-none",d.week_number_header),week_number:cn("text-muted-foreground select-none text-[0.8rem]",d.week_number),day:cn("group/day relative aspect-square h-full w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md",d.day),range_start:cn("bg-accent rounded-l-md",d.range_start),range_middle:cn("rounded-none",d.range_middle),range_end:cn("bg-accent rounded-r-md",d.range_end),today:cn("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",d.today),outside:cn("text-muted-foreground aria-selected:text-muted-foreground",d.outside),disabled:cn("text-muted-foreground opacity-50",d.disabled),hidden:cn("invisible",d.hidden),...t},components:{Root:({className:f,rootRef:R,...S})=>jsxRuntime.jsx("div",{"data-slot":"calendar",ref:R,className:cn(f),...S}),Chevron:({className:f,orientation:R,...S})=>R==="left"?jsxRuntime.jsx(ChevronLeft,{className:cn("size-4",f),...S}):R==="right"?jsxRuntime.jsx(ChevronRight,{className:cn("size-4",f),...S}):jsxRuntime.jsx(ChevronDown,{className:cn("size-4",f),...S}),DayButton:CalendarDayButton,WeekNumber:({children:f,...R})=>jsxRuntime.jsx("td",{...R,children:jsxRuntime.jsx("div",{className:"flex size-[--cell-size] items-center justify-center text-center",children:f})}),...l},...c})}function CalendarDayButton({className:e,day:t,modifiers:n,...s}){const a=getDefaultClassNames(),o=React__namespace.useRef(null);return React__namespace.useEffect(()=>{n.focused&&o.current?.focus()},[n.focused]),jsxRuntime.jsx(Button$1,{ref:o,variant:"ghost",size:"icon","data-day":t.date.toLocaleDateString(),"data-selected-single":n.selected&&!n.range_start&&!n.range_end&&!n.range_middle,"data-range-start":n.range_start,"data-range-end":n.range_end,"data-range-middle":n.range_middle,className:cn("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-accent-foreground data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 flex aspect-square h-auto w-full min-w-[--cell-size] flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] [&>span]:text-xs [&>span]:opacity-70",a.day,e),...s})}function AssistantChat(e){return jsxRuntime.jsx(Card,{className:"max-w-6xl",children:jsxRuntime.jsx(AIChatLayout,{className:"h-[40em]",userId:e.userId,userName:e.userName,initialPrompt:e.initialPrompt})})}function formatDateToISO(e){if(!e||!isValidDate(e))return"";const t=e.getTimezoneOffset()*6e4;return new Date(e.getTime()-t).toISOString().split("T")[0]}function isValidDate(e){return e instanceof Date&&!Number.isNaN(e.getTime())}function DatePicker({date:e,onDateChange:t,label:n,id:s,className:a}){const[o,l]=React__namespace.useState(!1),[c,d]=React__namespace.useState(e),[f,R]=React__namespace.useState(formatDateToISO(e));React__namespace.useEffect(()=>{R(formatDateToISO(e)),isValidDate(e)&&d(e)},[e]);const S=A=>{const st=A.target.value.replace(/\D/g,"").slice(0,8);let it=st;if(st.length>4&&(it=`${st.slice(0,4)}-${st.slice(4)}`),st.length>6&&(it=`${st.slice(0,4)}-${st.slice(4,6)}-${st.slice(6)}`),R(it),st.length===8){const at=new Date(it),ot=new Date(at.getUTCFullYear(),at.getUTCMonth(),at.getUTCDate());isValidDate(ot)?(t(ot),d(ot)):t(void 0)}else t(void 0)},te=A=>{A&&(t(A),R(formatDateToISO(A))),l(!1)};return jsxRuntime.jsxs("div",{className:cn("flex flex-col gap-2",a),children:[n&&jsxRuntime.jsx(Label$2,{htmlFor:s,children:n}),jsxRuntime.jsxs("div",{className:"relative",children:[jsxRuntime.jsx(Input,{id:s,value:f,placeholder:"YYYY-MM-DD",className:"bg-background pr-10",onChange:S,onKeyDown:A=>{A.key==="ArrowDown"&&(A.preventDefault(),l(!0))}}),jsxRuntime.jsxs(Popover,{open:o,onOpenChange:l,children:[jsxRuntime.jsx(PopoverTrigger,{asChild:!0,children:jsxRuntime.jsx(Button$1,{variant:"ghost",size:"icon",className:"absolute right-1 top-1/2 h-7 w-7 -translate-y-1/2","aria-label":"Select date",children:jsxRuntime.jsx(Calendar$1,{className:"h-4 w-4"})})}),jsxRuntime.jsx(PopoverContent,{className:"w-auto min-w-[280px] p-0",align:"end",sideOffset:8,children:jsxRuntime.jsx(Calendar,{mode:"single",selected:e,onSelect:te,month:c,onMonthChange:d,initialFocus:!0,className:"w-full"})})]})]})]})}function ExternalProductCard({product:e,viewProductLink:t}){return e?jsxRuntime.jsx(Card,{className:"@container border-dashed border-2 hover:shadow-md transition-shadow h-full",children:jsxRuntime.jsxs(CardContent,{className:"p-6 flex flex-col h-full",children:[jsxRuntime.jsxs("div",{className:"flex justify-between items-start mb-4 @[36rem]:hidden",children:[jsxRuntime.jsx("h3",{className:"font-semibold text-lg pr-4 text-center w-full",children:e.Title||e.RandmarTitle}),jsxRuntime.jsx("div",{className:"w-24 h-10 flex-shrink-0",children:jsxRuntime.jsx(PartnerLogo,{id:e.ManufacturerId,name:e.ManufacturerName,width:96,height:40})})]}),jsxRuntime.jsxs("div",{className:"flex flex-col gap-x-6 gap-y-4 flex-grow @[36rem]:flex-row",children:[jsxRuntime.jsx("div",{className:"mx-auto flex-shrink-0 @[36rem]:mx-0 @[36rem]:w-48",children:jsxRuntime.jsx(ProductImage,{randmarSKU:e.RandmarSKU||"",alt:e.RandmarTitle||"",sceneName:e.SceneName})}),jsxRuntime.jsxs("div",{className:"flex flex-1 flex-col text-center @[36rem]:text-left",children:[jsxRuntime.jsxs("div",{className:"hidden @[36rem]:flex justify-between items-start mb-4",children:[jsxRuntime.jsx("h3",{className:"font-semibold text-lg pr-4",children:e.Title||e.RandmarTitle}),jsxRuntime.jsx("div",{className:"w-24 h-10 flex-shrink-0",children:jsxRuntime.jsx(PartnerLogo,{id:e.ManufacturerId,name:e.ManufacturerName,width:96,height:40})})]}),jsxRuntime.jsxs("div",{className:"flex flex-wrap gap-2 justify-center @[36rem]:hidden",children:[jsxRuntime.jsxs(Badge,{variant:"outline",className:"border-info/40 bg-info/10 text-info",children:[jsxRuntime.jsx(Telescope,{className:"mr-2 h-3 w-3"}),jsxRuntime.jsx("span",{children:"External Product"})]}),jsxRuntime.jsxs(Badge,{variant:"outline",className:"border-primary/40 bg-primary/10 text-primary",children:[jsxRuntime.jsx(Warehouse,{className:"mr-2 h-3 w-3"}),jsxRuntime.jsxs("span",{children:["Held by ",jsxRuntime.jsx("b",{children:"Randmar"})]})]})]}),jsxRuntime.jsxs("div",{className:"hidden @[36rem]:grid grid-cols-2 gap-2",children:[jsxRuntime.jsxs("div",{className:"flex items-center rounded-md bg-info/10 px-4 py-2 text-info border border-info text-sm",children:[jsxRuntime.jsx(Telescope,{className:"mr-2 h-5 w-5 flex-shrink-0"}),jsxRuntime.jsx("span",{children:"External Product"})]}),jsxRuntime.jsxs("div",{className:"flex items-center rounded-md bg-primary/10 px-4 py-2 text-primary border border-primary text-sm",children:[jsxRuntime.jsx(Warehouse,{className:"mr-2 h-5 w-5 flex-shrink-0"}),jsxRuntime.jsxs("span",{children:["Held by ",jsxRuntime.jsx("b",{children:"Randmar"})]})]})]}),t&&jsxRuntime.jsx("div",{className:"mt-auto pt-4 flex justify-center @[36rem]:justify-end",children:jsxRuntime.jsx(reactRouterDom.Link,{to:t,children:jsxRuntime.jsxs(Button$1,{variant:"secondary",className:"w-full @[36rem]:w-auto",children:[jsxRuntime.jsx(Eye,{className:"mr-2 h-4 w-4"}),"View Product"]})})})]})]})]})}):jsxRuntime.jsx(Card,{className:"@container border-dashed border-2 h-full",children:jsxRuntime.jsx(CardContent,{className:"p-6 flex flex-col h-full",children:jsxRuntime.jsxs("div",{className:"flex flex-col gap-6 flex-grow @[36rem]:flex-row",children:[jsxRuntime.jsx("div",{className:"flex-shrink-0 @[36rem]:w-48",children:jsxRuntime.jsx(Skeleton,{className:"aspect-square w-full h-auto"})}),jsxRuntime.jsxs("div",{className:"flex flex-1 flex-col gap-4",children:[jsxRuntime.jsxs("div",{className:"flex justify-between items-start",children:[jsxRuntime.jsx(Skeleton,{className:"h-10 w-1/2"}),jsxRuntime.jsx(Skeleton,{className:"h-10 w-24 rounded"})]}),jsxRuntime.jsxs("div",{children:[jsxRuntime.jsxs("div",{className:"flex flex-wrap gap-2 justify-center @[36rem]:hidden",children:[jsxRuntime.jsx(Skeleton,{className:"h-6 w-36 rounded-full"}),jsxRuntime.jsx(Skeleton,{className:"h-6 w-36 rounded-full"})]}),jsxRuntime.jsxs("div",{className:"hidden @[36rem]:grid grid-cols-2 gap-2",children:[jsxRuntime.jsx(Skeleton,{className:"h-10 w-full rounded-md"}),jsxRuntime.jsx(Skeleton,{className:"h-10 w-full rounded-md"})]})]}),jsxRuntime.jsx("div",{className:"mt-auto pt-4 flex justify-center @[36rem]:justify-end",children:jsxRuntime.jsx(Skeleton,{className:"h-10 w-full @[36rem]:w-40"})})]})]})})})}function getEndDateStatus(e){if(!e)return{text:"No End Date",variant:"neutral",daysRemaining:null};const t=new Date(e);if(isNaN(t.getTime()))return{text:"Invalid Date",variant:"neutral",daysRemaining:null};const n=new Date,s=new Date(t.getFullYear(),t.getMonth(),t.getDate()),a=new Date(n.getFullYear(),n.getMonth(),n.getDate()),o=s.getTime()-a.getTime(),l=Math.ceil(o/(1e3*60*60*24));return l<0?{text:`Ended ${Math.abs(l)}d ago`,variant:"destructive",daysRemaining:l}:l===0?{text:"Ends today",variant:"destructive",daysRemaining:l}:l<=7?{text:`Ends in ${l}d`,variant:"destructive",daysRemaining:l}:l<=30?{text:`Ends in ${l}d`,variant:"warning",daysRemaining:l}:{text:`Ends in ${l}d`,variant:"neutral",daysRemaining:l}}const formatDate=e=>{if(!e)return"N/A";try{const t=new Date(e);return isNaN(t.getTime())?"Invalid Date":t.toLocaleDateString(void 0,{year:"numeric",month:"short",day:"numeric"})}catch{return"Invalid Date"}};function OpportunitiesTable({applicationId:e,opportunities:t=null,loading:n=!1}){const{toast:s}=useToast(),[a,o]=React.useState({}),[l,c]=React.useState(!1),[d,f]=React.useState(""),[R,S]=React.useState(null),{data:te}=useGetV4PartnerByApplicationIdAccountQuery({applicationId:e},{skip:!e}),A=React.useCallback((pt,mt,Rt)=>{o(yt=>({...yt,[pt]:{...yt[pt],[mt]:Rt}}))},[]),[rt]=usePutV4ResellerByRouteResellerIdOpportunityAndManufacturerIdDefaultMutation(),st=React.useCallback(async pt=>{if(!te?.IsReseller)return;if(!pt.BidNumber){s({title:"Error",description:"Bid Number is missing, cannot set default.",variant:"destructive"});return}const mt=pt.BidNumber;A(mt,"isSettingDefault",!0),rt({routeResellerId:e,manufacturerId:pt.ManufacturerId??"",opportunityNumber:mt}).unwrap().then(()=>{s({title:"Success",description:`Opportunity "${pt.OpportunityName||pt.Opportunity||mt}" was successfully set as default.`,variant:"success"})}).catch(Rt=>{console.error("Set as default error:",Rt),s({title:"Error",description:Rt.data?.message||Rt.message||"An error occurred while setting this opportunity as default.",variant:"destructive"})}).finally(()=>{A(mt,"isSettingDefault",!1)})},[e,rt,s,A,te?.IsReseller]),[it]=usePostV4ResellerByRouteResellerIdOpportunityAndManufacturerIdBidNumberEmailMutation(),at=React.useCallback(pt=>{if(te?.IsReseller){if(!pt.BidNumber){s({title:"Error",description:"Bid Number is missing, cannot prepare report.",variant:"destructive"});return}S(pt),f(""),c(!0)}},[s,te?.IsReseller]),ot=React.useCallback(async()=>{if(!te?.IsReseller)return;if(!R||!R.BidNumber){s({title:"Error",description:"No opportunity selected or Bid Number is missing.",variant:"destructive"});return}if(!d.trim()||!/\S+@\S+\.\S+/.test(d)){s({title:"Validation Error",description:"Please enter a valid email address.",variant:"destructive"});return}const pt=R.BidNumber;A(pt,"isSendingReport",!0),it({routeResellerId:e,manufacturerId:R.ManufacturerId??"",bidNumber:pt,emailAddress:d}).unwrap().then(()=>{s({title:"Success",description:`A report for "${R.OpportunityName||R.Opportunity||pt}" was successfully sent to ${d}.`,variant:"success"}),c(!1)}).catch(mt=>{console.error("Send report by email error:",mt),s({title:"Error",description:mt.data?.message||mt.message||"An error occurred while sending the report by email.",variant:"destructive"})}).finally(()=>{A(pt,"isSendingReport",!1),l||(S(null),f(""))})},[R,d,e,it,s,A,c]),lt=React.useMemo(()=>[{accessorKey:"ManufacturerId",header:"Manuf.",cell:({row:pt})=>jsxRuntime.jsx("div",{className:"w-20 h-8",children:jsxRuntime.jsx(PartnerLogo,{id:pt.original.ManufacturerId,width:80,height:32})}),enableSorting:!0,enableFiltering:!0},{id:"opportunityDisplay",accessorFn:pt=>pt.OpportunityName||pt.Opportunity,header:"Opportunity",cell:({getValue:pt})=>jsxRuntime.jsx("div",{className:"min-w-[150px]",children:pt()??"N/A"}),enableSorting:!0,enableFiltering:!0},{accessorKey:"BidNumber",header:"Bid Number",cell:({row:pt})=>pt.original.BidNumber??"N/A",enableSorting:!0,enableFiltering:!0},{id:"statusInfo",header:"Status",cell:({row:pt})=>{const mt=pt.original,Rt=mt.Active===!0,yt=getEndDateStatus(mt.EndDate),It=Rt?"success":"secondary",ft=yt.variant==="destructive"?"destructive":yt.variant==="warning"?"warning":"secondary";return jsxRuntime.jsxs("div",{className:"flex items-center space-x-2 min-w-[200px]",children:[jsxRuntime.jsx(Badge,{variant:It,className:"font-medium",children:Rt?"Active":"Inactive"}),mt.EndDate&&jsxRuntime.jsx(Badge,{variant:ft,className:"font-medium",children:yt.text}),jsxRuntime.jsx(TooltipProvider,{delayDuration:100,children:jsxRuntime.jsxs(Tooltip$1,{children:[jsxRuntime.jsx(TooltipTrigger,{asChild:!0,children:jsxRuntime.jsx(Button$1,{variant:"ghost",size:"icon",className:"h-6 w-6 p-0 data-[state=delayed-open]:bg-accent data-[state=instant-open]:bg-accent",children:jsxRuntime.jsx(Info,{className:"h-4 w-4 text-muted-foreground"})})}),jsxRuntime.jsx(TooltipContent,{side:"top",align:"center",className:"bg-popover text-popover-foreground p-2 rounded shadow-lg",children:jsxRuntime.jsxs("div",{className:"text-sm space-y-1",children:[jsxRuntime.jsxs("p",{children:[jsxRuntime.jsx("strong",{children:"Start:"})," ",formatDate(mt.StartDate)]}),jsxRuntime.jsxs("p",{children:[jsxRuntime.jsx("strong",{children:"End:"})," ",formatDate(mt.EndDate)]}),jsxRuntime.jsxs("p",{children:[jsxRuntime.jsx("strong",{children:"Updated:"})," ",formatDate(mt.LastUpdate)]})]})})]})})]})},enableFiltering:!1},{id:"actions",header:"Actions",cell:({row:pt})=>{const mt=pt.original;if(!mt.BidNumber)return jsxRuntime.jsx("span",{className:"text-xs text-muted-foreground",children:"Actions unavailable"});const Rt=mt.BidNumber,yt=a[Rt]?.isSettingDefault,It=R?.BidNumber===Rt&&a[Rt]?.isSendingReport,ft=yt||It,Ct=mt.CanBeSetAsDefault===!0,Mt=te?.IsManufacturer?`/${e}/Opportunity/${mt.BidNumber}`:`/${e}/Opportunity/${mt.ManufacturerId}/${mt.BidNumber}`;return jsxRuntime.jsxs("div",{className:"flex space-x-2",children:[jsxRuntime.jsx(reactRouterDom.Link,{to:Mt,children:jsxRuntime.jsxs(Button$1,{variant:"outline",size:"sm",className:"flex items-center",children:[jsxRuntime.jsx(Star,{className:"mr-2 h-4 w-4"})," View"]})}),te?.IsReseller&&jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(Button$1,{variant:"outline",size:"sm",onClick:()=>st(mt),disabled:ft||!Ct,title:Ct?"Set as default":"This opportunity cannot be set as default",className:"flex items-center",children:[yt?jsxRuntime.jsx(LoaderCircle,{className:"mr-2 h-4 w-4 animate-spin"}):jsxRuntime.jsx(Star,{className:"mr-2 h-4 w-4"})," Set Default"]}),jsxRuntime.jsxs(Button$1,{variant:"outline",size:"sm",onClick:()=>at(mt),disabled:ft,title:"Send report by email",className:"flex items-center",children:[It?jsxRuntime.jsx(LoaderCircle,{className:"mr-2 h-4 w-4 animate-spin"}):jsxRuntime.jsx(Send,{className:"mr-2 h-4 w-4"})," Send Report"]})]})]})}}],[a,st,at,R,te?.IsReseller,e]),ut=React.useMemo(()=>{const pt={};if(t){const mt=Array.from(new Set(t.map(yt=>yt.ManufacturerId).filter(yt=>yt!=null)));pt.ManufacturerId=mt;const Rt=Array.from(new Set(t.map(yt=>yt.OpportunityName||yt.Opportunity).filter(yt=>yt!=null)));pt.opportunityDisplay=Rt}return pt},[t]),ct=t||[],dt=R?.BidNumber?a[R.BidNumber]?.isSendingReport:!1;return n?jsxRuntime.jsxs(Card,{className:"w-full",children:[jsxRuntime.jsxs(CardHeader,{children:[" ",jsxRuntime.jsx(Skeleton,{className:"h-7 w-48"})," "]}),jsxRuntime.jsxs(CardContent,{className:"space-y-4",children:[jsxRuntime.jsx(Skeleton,{className:"h-12 w-full rounded-md border"}),jsxRuntime.jsx(Skeleton,{className:"h-48 w-full rounded-md border"}),jsxRuntime.jsxs("div",{className:"flex items-center justify-between pt-4",children:[jsxRuntime.jsx(Skeleton,{className:"h-9 w-[130px]"}),jsxRuntime.jsxs("div",{className:"flex items-center space-x-2",children:[jsxRuntime.jsx(Skeleton,{className:"h-9 w-20"})," ",jsxRuntime.jsx(Skeleton,{className:"h-9 w-24"})," ",jsxRuntime.jsx(Skeleton,{className:"h-9 w-9"})," ",jsxRuntime.jsx(Skeleton,{className:"h-9 w-9"})]})]})]})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsxs(Card,{className:"w-full",children:[jsxRuntime.jsxs(CardHeader,{children:[" ",jsxRuntime.jsx(CardTitle,{className:"text-1xl font-bold",children:"Opportunities"})," "]}),jsxRuntime.jsx(CardContent,{children:jsxRuntime.jsx(DataTable,{columns:lt,data:ct,uniqueValues:ut})})]}),jsxRuntime.jsx(Dialog,{open:l,onOpenChange:pt=>{c(pt),pt||(S(null),f(""))},children:jsxRuntime.jsxs(DialogContent,{className:"@sm:max-w-[425px]",children:[jsxRuntime.jsxs(DialogHeader,{children:[jsxRuntime.jsx(DialogTitle,{children:"Send Opportunity Report"}),jsxRuntime.jsxs(DialogDescription,{children:["Enter the email address to send the report for opportunity: ",jsxRuntime.jsx("br",{}),jsxRuntime.jsx("span",{className:"font-semibold",children:R?.OpportunityName||R?.Opportunity||"N/A"}),R?.BidNumber&&jsxRuntime.jsxs("span",{className:"block text-sm text-muted-foreground",children:["Bid Number: ",R.BidNumber]})]})]}),jsxRuntime.jsx("div",{className:"grid gap-4 py-4",children:jsxRuntime.jsxs("div",{className:"grid grid-cols-4 items-center gap-4",children:[jsxRuntime.jsx(Label$2,{htmlFor:"email",className:"text-right",children:"Email"}),jsxRuntime.jsx(Input,{id:"email",type:"email",value:d,onChange:pt=>f(pt.target.value),placeholder:"recipient@example.com",className:"col-span-3",disabled:dt})]})}),jsxRuntime.jsxs(DialogFooter,{children:[jsxRuntime.jsx(Button$1,{variant:"outline",onClick:()=>c(!1),disabled:dt,children:"Cancel"}),jsxRuntime.jsxs(Button$1,{type:"submit",onClick:ot,disabled:dt,children:[dt&&jsxRuntime.jsx(LoaderCircle,{className:"mr-2 h-4 w-4 animate-spin"})," Send Report"]})]})]})})]})}function parseTimestamp(e){const t=e instanceof Date?new Date(e.getTime()):new Date(e);return Number.isNaN(t.getTime())?null:t}function localDayKey(e){const t=e.getFullYear().toString(),n=(e.getMonth()+1).toString().padStart(2,"0"),s=e.getDate().toString().padStart(2,"0");return`${t}-${n}-${s}`}function groupSystemLogEntries(e){const t=new Map;for(const n of e){const s=parseTimestamp(n.timestamp);if(!s)continue;const a=new Date(s.getFullYear(),s.getMonth(),s.getDate()),o=localDayKey(a),l=t.get(o);if(l){l.entries.push({entry:n,timestamp:s});continue}t.set(o,{dayKey:o,day:a,entries:[{entry:n,timestamp:s}]})}return Array.from(t.values()).map(n=>({...n,entries:[...n.entries].sort((s,a)=>s.timestamp.getTime()-a.timestamp.getTime())})).sort((n,s)=>s.day.getTime()-n.day.getTime())}const dayLabelFormatter=new Intl.DateTimeFormat(void 0,{weekday:"long",month:"short",day:"numeric",year:"numeric"}),timeLabelFormatter=new Intl.DateTimeFormat(void 0,{hour:"numeric",minute:"2-digit",second:"2-digit"});function SystemLogFeed({entries:e,emptyStateText:t="No system log entries available.",className:n,formatDayLabel:s=o=>dayLabelFormatter.format(o),formatTimeLabel:a=o=>timeLabelFormatter.format(o)}){const o=React__namespace.useMemo(()=>groupSystemLogEntries(e),[e]);return o.length===0?jsxRuntime.jsx("p",{className:cn("text-sm text-muted-foreground",n),children:t}):jsxRuntime.jsx("div",{className:cn("space-y-6",n),children:o.map(l=>jsxRuntime.jsxs("section",{className:"space-y-2",children:[jsxRuntime.jsx("h3",{className:"text-sm font-semibold text-foreground",children:s(l.day)}),jsxRuntime.jsx("div",{className:"space-y-2",children:l.entries.map((c,d)=>{const f=c.entry.id??`${l.dayKey}-${c.timestamp.getTime()}-${d}`;return jsxRuntime.jsxs("article",{className:"rounded-md border border-border bg-card p-3",children:[jsxRuntime.jsx("p",{className:"text-xs text-muted-foreground mb-1",children:a(c.timestamp)}),jsxRuntime.jsx("pre",{className:"font-mono text-xs text-foreground whitespace-pre-wrap break-words",children:c.entry.payload})]},f)})})]},l.dayKey))})}function useLoadScript(e){const[t,n]=React.useState(!0),[s,a]=React.useState(null),[o,l]=React.useState(!1),c=()=>{n(!1),l(!0)};return React.useEffect(()=>{if(!document){const S=new Error(`[ScriptLoadingError] document not defined when attempting to load ${e}`);a(S);return}const d=document.querySelector(`script[src="${e}"]`);if(d?.dataset.loaded){c();return}const f=d||document.createElement("script");d||(f.src=e);const R=()=>{f.dataset.loaded="1",c()};f.addEventListener("load",R),f.addEventListener("error",S=>{console.error("Failed to load script:",e,S);const te=new Error(`[ScriptLoadingError] Failed to load script: ${e}`);a(te)}),d||document.head.append(f)},[]),{isLoading:t,error:s,isSuccess:o}}const isGoogleReady=e=>e&&e.charts,isGoogleChartsReady=(e,t)=>{const{controls:n,toolbarItems:s,getChartEditor:a}=e;return t&&t.charts&&t.visualization&&t.visualization.ChartWrapper&&t.visualization.Dashboard&&(!n||t.visualization.ChartWrapper)&&(!a||t.visualization.ChartEditor)&&(!s||t.visualization.drawToolbar)},getGoogleInstanceFromWindow=e=>window.google;function useLoadGoogleCharts(e){const{chartVersion:t="current",chartPackages:n=["corechart","controls"],chartLanguage:s="en",mapsApiKey:a}=e,[o,l]=React.useState(null),[c,d]=React.useState(null),[f,R]=React.useState(null),{isLoading:S,error:te,isSuccess:A}=useLoadScript(e.chartLoaderScriptUrl||"https://www.gstatic.com/charts/loader.js");return React.useEffect(()=>{if(!A)return;const rt=getGoogleInstanceFromWindow();if(!isGoogleReady(rt)){const st=new Error("[ScriptInitializationError] Script loaded but Google not attached to window.");d(st);return}if(isGoogleChartsReady(e,rt)){l(rt);return}rt.charts.load(t,{packages:n,language:s,mapsApiKey:a}),rt.charts.setOnLoadCallback(()=>{if(!isGoogleChartsReady(e,rt)){const st=new Error("[GoogleChartsInitializationError] Google Charts not ready after load callback.");console.error(st),R(st);return}l(rt)})},[A]),{error:te||c||f,isLoading:S,google:o}}const chartDefaultProps={legend_toggle:!1,options:{},legendToggle:!1,getChartWrapper:()=>{},spreadSheetQueryParameters:{headers:1,gid:1},rootProps:{},chartWrapperParams:{},chartLoaderScriptUrl:"https://www.gstatic.com/charts/loader.js"},GoogleChartControls=e=>{const{isReady:t,chartControls:n,filter:s}=e;return!t||!n||!n?.length?null:React.createElement(React.Fragment,null,n.filter(a=>{let{controlProp:o,control:l}=a;return s?s({control:l,controlProp:o}):!0}).map(a=>{let{control:o}=a;return React.createElement("div",{key:o.getContainerId(),id:o.getContainerId()})}))};let uniqueID=0;const generateUniqueID=()=>(uniqueID+=1,`reactgooglegraph-${uniqueID}`);class GoogleChartControlsInternal{static initializeControls=t=>{for(let n=0;n<t.length;n+=1){const{controlType:s,options:a,controlWrapperParams:o}=t[n].controlProp;o&&"state"in o&&t[n].control.setState(o.state),t[n].control.setOptions(a),t[n].control.setControlType(s)}};static listenToControlEvents=(t,n)=>{const{google:s}=n;return t.flatMap(a=>{const{control:o,controlProp:l}=a,{controlEvents:c=[]}=l;return c.map(d=>{const{callback:f,eventName:R}=d;return s.visualization.events.addListener(o,R,function(){for(var S=arguments.length,te=new Array(S),A=0;A<S;A++)te[A]=arguments[A];f({chartWrapper:null,controlWrapper:o,props:n,google:s,eventArgs:te})})})})};static createControlId=t=>{let n;return typeof t>"u"?n=`googlechart-control-${generateUniqueID()}`:n=t,n};static createChartControls=t=>{const{controls:n,google:s}=t;return n?n.map((a,o)=>{const{controlID:l,controlType:c,options:d,controlWrapperParams:f}=a,R=this.createControlId(l);return{controlProp:a,control:new s.visualization.ControlWrapper({containerId:R,controlType:c,options:d,...f})}}):null};static addControls=t=>{const{chartWrapper:n,chartDashboard:s}=t,a=this.createChartControls(t);return!a||!s||!n?null:(s.bind(a.map(o=>{let{control:l}=o;return l}),n),this.initializeControls(a),a)}}const useCreateChartControls=e=>{const[t,n]=React__namespace.useState(null);return[React__namespace.useMemo(()=>!t||!e?null:e.map((a,o)=>{const l=t[o];return l?{controlProp:a,control:l}:void 0}).flatMap(a=>a?[a]:[]),[t,e]),n]},useListenToControlEvents=(e,t)=>{React__namespace.useEffect(()=>{const n=GoogleChartControlsInternal.listenToControlEvents(e??[],t);return()=>{n.forEach(s=>{t.google.visualization.events.removeListener(s)})}},[e,t])},useChartControls=e=>{const[t,n]=useCreateChartControls(e.controls);return useListenToControlEvents(t??[],e),{addControls:a=>{const o=GoogleChartControlsInternal.addControls(a);n(o?.map(l=>l.control)??null)},renderControl:a=>{const{chartWrapper:o,chartDashboard:l}=e;return React__namespace.createElement(GoogleChartControls,{...e,isReady:!!(o&&l),chartControls:t,filter:a})}}},useChartId=e=>{const t=React__namespace.useRef(null);return{chartId:(()=>{const{graphID:a,graph_id:o}=e,l=a||o;let c;return l?c=l:c=t.current||generateUniqueID(),t.current=c,t.current})()}},DEFAULT_CHART_COLORS=["#3366CC","#DC3912","#FF9900","#109618","#990099","#3B3EAC","#0099C6","#DD4477","#66AA00","#B82E2E","#316395","#994499","#22AA99","#AAAA11","#6633CC","#E67300","#8B0707","#329262","#5574A6","#3B3EAC"],loadDataTableFromSpreadSheet=async function(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};return new Promise((s,a)=>{const o=`${n.headers?`headers=${n.headers}`:"headers=0"}`,l=`${n.query?`&tq=${encodeURIComponent(n.query)}`:""}`,c=`${n.gid?`&gid=${n.gid}`:""}`,d=`${n.sheet?`&sheet=${n.sheet}`:""}`,f=`${n.access_token?`&access_token=${n.access_token}`:""}`,R=`${o}${c}${d}${l}${f}`,S=`${t}/gviz/tq?${R}`;new e.visualization.Query(S).send(A=>{A.isError()?a(`Error in query: ${A.getMessage()} ${A.getDetailedMessage()}`):s(A.getDataTable())})})},GRAY_COLOR="#CCCCCC";class GoogleChartInternal{static grayOutHiddenColumnsLabel=(t,n)=>{const{googleChartWrapper:s,options:a}=t;if(!s){console.error("googleChartWrapper is not defined");return}const o=s.getDataTable();if(!o)return;const l=o.getNumberOfColumns();if(n.length>0===!1)return;const d=Array.from({length:l-1}).map((f,R)=>{const S=this.getColumnId(o,R+1);return n.includes(S)?GRAY_COLOR:a&&a.colors?a.colors[R]:DEFAULT_CHART_COLORS[R]});s.setOptions({...a,colors:d}),s.draw()};static listenToLegendToggle=(t,n)=>{const[s,a]=n,{google:o,googleChartWrapper:l}=t;if(!l){console.error("googleChartWrapper is not defined");return}return o.visualization.events.addListener(l,"select",()=>{const d=l.getChart().getSelection(),f=l.getDataTable();if(d.length===0||d[0].row!==null||!f)return;const R=d[0].column,S=this.getColumnId(f,R);s?.includes(S)?a(te=>[...te.filter(A=>A!==S)]):a(te=>[...te,S])})};static draw=async t=>{const{data:n,diffdata:s,rows:a,columns:o,options:l,chartType:c,formatters:d,spreadSheetUrl:f,spreadSheetQueryParameters:R,googleChartDashboard:S,googleChartWrapper:te,google:A,hiddenColumns:rt,legendToggle:st,legend_toggle:it}=t;if(!te){console.error("draw was called with googleChartWrapper = null");return}let at,ot=null;if(s){const pt=A.visualization.arrayToDataTable(s.old),mt=A.visualization.arrayToDataTable(s.new);ot=A.visualization[c].prototype.computeDiff(pt,mt)}n?n instanceof A.visualization.DataTable?at=n:Array.isArray(n)?at=A.visualization.arrayToDataTable(n):at=new A.visualization.DataTable(n):a&&o?at=A.visualization.arrayToDataTable([o,...a]):f?at=await loadDataTableFromSpreadSheet(A,f,R):at=A.visualization.arrayToDataTable([]);const lt=at.getNumberOfColumns(),ut=Array(lt).fill(0).map((pt,mt)=>{const Rt=this.getColumnId(at,mt);return rt.includes(Rt)?{label:at.getColumnLabel(mt),type:at.getColumnType(mt),calc:()=>null}:mt}),ct=te.getChart();te.getChartType()==="Timeline"&&ct&&ct.clearChart(),te.setChartType(c),te.setOptions(l||{});const dt=new A.visualization.DataView(at);dt.setColumns(ut),te.setDataTable(dt),te.draw(),S&&S.draw(at),ot&&(te.setDataTable(ot),te.draw()),d&&(this.applyFormatters({dataTable:at,formatters:d,google:A}),te.setDataTable(at),te.draw()),(st===!0||it===!0)&&this.grayOutHiddenColumnsLabel(t,rt)};static getColumnId=(t,n)=>t.getColumnId(n)||t.getColumnLabel(n);static applyFormatters=t=>{let{dataTable:n,formatters:s,google:a}=t;for(let o of s)switch(o.type){case"ArrowFormat":{new a.visualization.ArrowFormat(o.options).format(n,o.column);return}case"BarFormat":{new a.visualization.BarFormat(o.options).format(n,o.column);return}case"ColorFormat":{const l=new a.visualization.ColorFormat(o.options),{ranges:c}=o;if(c)for(let d of c)l.addRange(...d);l.format(n,o.column);return}case"DateFormat":{new a.visualization.DateFormat(o.options).format(n,o.column);return}case"NumberFormat":{new a.visualization.NumberFormat(o.options).format(n,o.column);return}case"PatternFormat":{new a.visualization.PatternFormat(o.options).format(n,o.column);return}default:{console.warn(`Unknown formatter type: ${o.type}`);return}}}}const useGoogleChartDataTable=e=>{const{google:t,googleChartWrapper:n,googleChartDashboard:s}=e,[a,o]=React__namespace.useState([]);React__namespace.useEffect(()=>{n&&GoogleChartInternal.draw({...e,hiddenColumns:a,googleChartWrapper:n,googleChartDashboard:s,google:t})},[a,e.data,e.rows,e.columns,e.options,e.chartLoaderScriptUrl,e.chartType,e.formatters,e.spreadSheetUrl,e.spreadSheetQueryParameters,e.legendToggle,e.legend_toggle]);const l=()=>{const{googleChartWrapper:f}=e;f&&f.draw()},c=f=>{const R=[],{legendToggle:S,legend_toggle:te}=e;if(GoogleChartInternal.draw({...e,hiddenColumns:a,googleChartWrapper:f,googleChartDashboard:s,google:t}),window.addEventListener("resize",l),te||S){const A=GoogleChartInternal.listenToLegendToggle(e,[a,o]);A&&R.push(A)}return R},d=(f,R)=>{window.removeEventListener("resize",l),R.forEach(S=>{t.visualization.events.removeListener(S)}),f.getChartType()==="Timeline"&&f.getChart()&&f.getChart().clearChart()};React__namespace.useEffect(()=>{if(!n)return;const f=c(n);return()=>{d(n,f)}},[n,c,d])},listenToEvents=e=>{const{chartEvents:t,google:n,googleChartWrapper:s}=e;if(t){if(!s){console.warn("listenToEvents was called before chart wrapper ready.");return}return t.map(a=>{let{eventName:o,callback:l}=a;return n.visualization.events.addListener(s,o,function(){for(var c=arguments.length,d=new Array(c),f=0;f<c;f++)d[f]=arguments[f];l({chartWrapper:s,props:e,google:n,eventArgs:d})})})}},useGoogleChartEvents=e=>{React.useEffect(()=>{if(!e.googleChartWrapper)return;const t=listenToEvents(e);return()=>{t?.forEach(n=>{e.google.visualization.events.removeListener(n)})}},[e])},GoogleChart=e=>{const[t,n]=React__namespace.useState(null),[s,a]=React__namespace.useState(null),{addControls:o,renderControl:l}=useChartControls({...e,chartDashboard:s,chartWrapper:t});useGoogleChartEvents({...e,googleChartWrapper:t});const{chartId:c}=useChartId(e),d=React__namespace.useRef(null),f=React__namespace.useRef(null);React__namespace.useEffect(()=>{const{options:at,google:ot,chartType:lt,chartWrapperParams:ut,toolbarItems:ct,getChartEditor:dt,getChartWrapper:pt,onLoad:mt}=e,Rt={chartType:lt,options:at,containerId:c,...ut},yt=new ot.visualization.ChartWrapper(Rt);yt.setOptions(at||{}),pt?.(yt,ot);const It=new ot.visualization.Dashboard(d.current);ct&&ot.visualization.drawToolbar(f.current,ct);let ft=null;dt&&(ft=new ot.visualization.ChartEditor,dt({chartEditor:ft,chartWrapper:yt,google:ot})),o({...e,chartDashboard:It,chartWrapper:yt}),n(yt),a(It),mt?.(ot,{google:ot,chartWrapper:yt,chartEditor:ft,chartDashboard:It})},[]),useGoogleChartDataTable({...e,googleChartWrapper:t,googleChartDashboard:s});const R=()=>{const{width:at,height:ot,options:lt,style:ut,className:ct,rootProps:dt,google:pt}=e,mt={height:ot||lt&<.height,width:at||lt&<.width,...ut};return React__namespace.createElement("div",{id:c,style:mt,className:ct,...dt})},S=()=>e.toolbarItems?React__namespace.createElement("div",{ref:f}):null,{width:te,height:A,options:rt,style:st}=e,it={height:A||rt&&rt.height,width:te||rt&&rt.width,...st};return e.render?React__namespace.createElement("div",{ref:d,style:it},React__namespace.createElement("div",{ref:f,id:"toolbar"}),e.render({renderChart:R,renderControl:l,renderToolbar:S})):React__namespace.createElement("div",{ref:d,style:it},l(at=>{let{controlProp:ot}=at;return ot.controlPosition!=="bottom"}),R(),l(at=>{let{controlProp:ot}=at;return ot.controlPosition==="bottom"}),S())},ChartContext=React__namespace.createContext(chartDefaultProps),ContextProvider=e=>{let{children:t,value:n}=e;return React__namespace.createElement(ChartContext.Provider,{value:n},t)},ChartView=e=>{const{google:t,isLoading:n,error:s}=useLoadGoogleCharts(e);return n?e.loader??null:s?e.errorElement??null:t?React.createElement(GoogleChart,{google:t,...e}):null},Chart=e=>{const t={...chartDefaultProps,...e};return React.createElement(ContextProvider,{value:t},React.createElement(ChartView,t))};var GoogleDataTableColumnRoleType;(function(e){e.annotation="annotation",e.annotationText="annotationText",e.certainty="certainty",e.emphasis="emphasis",e.interval="interval",e.scope="scope",e.style="style",e.tooltip="tooltip",e.domain="domain"})(GoogleDataTableColumnRoleType||(GoogleDataTableColumnRoleType={}));function parseHsl(e){const t=e.match(/(\d+\.?\d*)\s*(\d+\.?\d*)%\s*(\d+\.?\d*)%/);return t?{h:parseFloat(t[1]),s:parseFloat(t[2]),l:parseFloat(t[3])}:null}function hslToHex(e,t,n){n/=100;const s=t*Math.min(n,1-n)/100,a=o=>{const l=(o+e/30)%12,c=n-s*Math.max(Math.min(l-3,9-l,1),-1);return Math.round(255*c).toString(16).padStart(2,"0")};return`#${a(0)}${a(8)}${a(4)}`}const Treemap=React__namespace.forwardRef(({data:e,options:t,height:n="500px",className:s,loading:a,disableClick:o=!0,...l},c)=>{const d=React__namespace.useRef(null),[f,R]=React__namespace.useState(null);React__namespace.useEffect(()=>{if(!d.current)return;const A=d.current,rt=()=>{const ot=getComputedStyle(A).getPropertyValue("--primary").trim();if(ot){const lt=parseHsl(ot);if(lt){const{h:ut,s:ct,l:dt}=lt;R({minColor:hslToHex(ut,ct,Math.min(100,dt+50)),midColor:hslToHex(ut,ct,Math.min(100,dt+35)),maxColor:hslToHex(ut,ct,Math.min(100,dt+20))})}return!0}return!1};if(rt())return;let st=0;const it=20,at=setInterval(()=>{(rt()||st>=it)&&clearInterval(at),st++},100);return()=>{at&&clearInterval(at)}},[]);const S=React__namespace.useMemo(()=>{const A={headerHeight:0,fontSize:14,showScale:!1,isHtml:!0,backgroundColor:"transparent",generateTooltip:(rt,st)=>{const it=e[rt+1]?.[0];if(!it)return"";const at=formatMoney(st);return`<div class="p-2 bg-background text-foreground border rounded-md shadow-lg">
|
|
724
724
|
<strong>${it}</strong><br>Value: ${at}
|
|
725
|
-
</div>`}};return f&&(!t||!t.colorAxis)&&(A.minColor=f.minColor,A.midColor=f.midColor,A.maxColor=f.maxColor),{...A,...t}},[e,t,f]),te=React__namespace.useMemo(()=>o?[{eventName:"select",callback:({chartWrapper:rt})=>{rt.getChart().setSelection(null)}}]:void 0,[o]);return React__namespace.useImperativeHandle(c,()=>d.current,[]),a?jsxRuntime.jsx("div",{ref:d,className:cn("w-full",s),style:{height:n},...l,children:jsxRuntime.jsx(Skeleton,{className:"h-full w-full"})}):!e||e.length<=2?jsxRuntime.jsx("div",{ref:d,className:cn("w-full flex items-center justify-center text-muted-foreground",s),style:{height:n},...l,children:"No data available"}):jsxRuntime.jsx("div",{ref:d,className:cn("w-full",s),style:{height:n},...l,children:jsxRuntime.jsx(Chart,{chartType:"TreeMap",width:"100%",height:"100%",data:e,options:S,chartEvents:te,loader:jsxRuntime.jsx(Skeleton,{className:"h-full w-full"})})})});Treemap.displayName="Treemap";const TopPercentTreemap=({data:e,topPercent:t=80,title:n,loading:s,...a})=>{const o=React__namespace.useMemo(()=>{if(!e||e.length===0)return[["ID","Parent","Value"],["Root",null,0]];const c=[...e].sort((rt,st)=>st.value-rt.value),f=c.reduce((rt,st)=>rt+st.value,0)*(t/100),R=[["ID","Parent","Value"],["Root",null,0]],S=[],te=[];let A=0;for(const rt of c)A<f?(S.push(rt),A+=rt.value):te.push(rt);if(S.forEach(rt=>{R.push([rt.name,"Root",rt.value])}),te.length>0){const rt=`More... (${te.length} items)`;R.push([rt,"Root",0]),te.forEach(st=>{R.push([st.name,rt,st.value])})}return R},[e,t]),l=React__namespace.useMemo(()=>({title:n,maxDepth:1,backgroundColor:"transparent"}),[n]);return jsxRuntime.jsx(Treemap,{data:o,options:l,className:cn("h-full",a.className),loading:s,disableClick:!1,...a})},portalThemeClasses=["central-theme","partner-theme","reseller-theme","manufacturer-theme","shopify-theme"],portalThemeClassByTheme={central:"central-theme",partner:"partner-theme",reseller:"reseller-theme",manufacturer:"manufacturer-theme",shopify:"shopify-theme"};function normalizePortalTheme(e){if(!e)return"default";const t=e.toLowerCase();switch(t){case"default":case"central":case"partner":case"reseller":case"manufacturer":case"shopify":return t;default:return"default"}}function PortalThemeProvider({theme:e,applyTo:t="documentElement",children:n}){const s=React.useMemo(()=>normalizePortalTheme(e),[e]),a=React.useRef(null);return React.useEffect(()=>{if(typeof document>"u")return;const o=t==="body"?document.body??document.documentElement:document.documentElement??document.body;if(o){a.current||(a.current=portalThemeClasses.filter(l=>o.classList.contains(l)));for(const l of portalThemeClasses)o.classList.remove(l);return s!=="default"&&o.classList.add(portalThemeClassByTheme[s]),()=>{for(const l of portalThemeClasses)o.classList.remove(l);for(const l of a.current??[])o.classList.add(l)}}},[t,s]),n}exports.AIChatLayout=AIChatLayout,exports.Accordion=Accordion,exports.AccordionContent=AccordionContent,exports.AccordionItem=AccordionItem,exports.AccordionTrigger=AccordionTrigger,exports.ActiveOrdersCard=ActiveOrdersCard,exports.Alert=Alert,exports.AlertDescription=AlertDescription,exports.AlertDialog=AlertDialog,exports.AlertDialogAction=AlertDialogAction,exports.AlertDialogCancel=AlertDialogCancel,exports.AlertDialogContent=AlertDialogContent,exports.AlertDialogDescription=AlertDialogDescription,exports.AlertDialogFooter=AlertDialogFooter,exports.AlertDialogHeader=AlertDialogHeader,exports.AlertDialogTitle=AlertDialogTitle,exports.AlertDialogTrigger=AlertDialogTrigger,exports.AlertTitle=AlertTitle,exports.ApiImage=ApiImage,exports.AreaChart=AreaChart,exports.AssistantChat=AssistantChat,exports.AssistantInsight=AssistantInsight,exports.Avatar=Avatar,exports.AvatarFallback=AvatarFallback,exports.AvatarFooter=AvatarFooter,exports.AvatarImage=AvatarImage,exports.Badge=Badge,exports.Button=Button$1,exports.Calendar=Calendar,exports.Card=Card,exports.CardContent=CardContent,exports.CardDescription=CardDescription,exports.CardFooter=CardFooter,exports.CardHeader=CardHeader,exports.CardTitle=CardTitle,exports.ChatLayout=ChatLayout,exports.ChatProvider=ChatProvider,exports.Checkbox=Checkbox,exports.CheckboxCardList=CheckboxCardList,exports.Command=Command,exports.CommandDialog=CommandDialog,exports.CommandEmpty=CommandEmpty,exports.CommandGroup=CommandGroup,exports.CommandInput=CommandInput,exports.CommandItem=CommandItem,exports.CommandList=CommandList,exports.CommandSeparator=CommandSeparator,exports.CommandShortcut=CommandShortcut,exports.CountryFlag=CountryFlag,exports.DataRefreshAssistantCluster=DataRefreshAssistantCluster,exports.DataTable=DataTable,exports.DatePicker=DatePicker,exports.Dialog=Dialog,exports.DialogClose=DialogClose,exports.DialogContent=DialogContent,exports.DialogDescription=DialogDescription,exports.DialogFooter=DialogFooter,exports.DialogHeader=DialogHeader,exports.DialogOverlay=DialogOverlay,exports.DialogPortal=DialogPortal,exports.DialogTitle=DialogTitle,exports.DialogTrigger=DialogTrigger,exports.DropdownMenu=DropdownMenu,exports.DropdownMenuCheckboxItem=DropdownMenuCheckboxItem,exports.DropdownMenuContent=DropdownMenuContent,exports.DropdownMenuGroup=DropdownMenuGroup,exports.DropdownMenuItem=DropdownMenuItem,exports.DropdownMenuLabel=DropdownMenuLabel,exports.DropdownMenuPortal=DropdownMenuPortal,exports.DropdownMenuRadioGroup=DropdownMenuRadioGroup,exports.DropdownMenuRadioItem=DropdownMenuRadioItem,exports.DropdownMenuSeparator=DropdownMenuSeparator,exports.DropdownMenuShortcut=DropdownMenuShortcut,exports.DropdownMenuSub=DropdownMenuSub,exports.DropdownMenuSubContent=DropdownMenuSubContent,exports.DropdownMenuSubTrigger=DropdownMenuSubTrigger,exports.DropdownMenuTrigger=DropdownMenuTrigger,exports.ExploreManufacturers=ExploreManufacturers,exports.ExternalProductCard=ExternalProductCard,exports.GeneralDocumentCard=GeneralDocumentCard,exports.Input=Input,exports.InputOTP=InputOTP,exports.InputOTPGroup=InputOTPGroup,exports.InputOTPSeparator=InputOTPSeparator,exports.InputOTPSlot=InputOTPSlot,exports.Label=Label$2,exports.Layout=Layout,exports.ManufacturerCard=ManufacturerCard,exports.ManufacturerGetStartedButton=ManufacturerGetStartedButton,exports.ManufacturerOverviewPage=ManufacturerOverviewPage,exports.ManufacturerReorderingCard=ManufacturerReorderingCard,exports.MultiSelect=MultiSelect,exports.Navbar=Navbar,exports.OpportunitiesTable=OpportunitiesTable,exports.OrdersCard=OrdersCard,exports.PageHeader=PageHeader,exports.PartnerActions=PartnerActions,exports.PartnerCard=PartnerCard,exports.PartnerRelationshipPage=PartnerRelationshipPage,exports.Popover=Popover,exports.PopoverAnchor=PopoverAnchor,exports.PopoverContent=PopoverContent,exports.PopoverTrigger=PopoverTrigger,exports.PortalThemeProvider=PortalThemeProvider,exports.Preloader=Preloader,exports.ProductCard=ProductCard,exports.ProductImage=ProductImage,exports.ProductInventoryGrid=ProductInventoryGrid,exports.ProductOverviewPage=ProductOverviewPage,exports.Progress=Progress,exports.RadioGroup=RadioGroup$1,exports.RadioGroupItem=RadioGroupItem,exports.RandmarApiConfigProvider=RandmarApiConfigProvider,exports.RefreshCluster=RefreshCluster,exports.ResellerBillingOverviewCard=ResellerBillingOverviewCard,exports.ResellerCard=ResellerCard,exports.ResellerOverview=ResellerOverview,exports.ResellerQualificationsCard=ResellerQualificationsCard,exports.ReturnsTable=ReturnsTable,exports.RichTextEditor=RichTextEditor,exports.RmPageHeader=RmPageHeader,exports.SalesChart=SalesChart,exports.SalesOverviewCard=SalesOverviewCard,exports.ScrollArea=ScrollArea,exports.ScrollBar=ScrollBar,exports.SearchNoResultsCard=SearchNoResultsCard,exports.SearchPage=SearchPage,exports.SearchPageGrid=SearchPageGrid,exports.SearchResultsHeader=SearchResultsHeader,exports.SearchResultsSkeleton=SearchResultsSkeleton,exports.Select=Select$1,exports.SelectContent=SelectContent,exports.SelectGroup=SelectGroup,exports.SelectItem=SelectItem,exports.SelectLabel=SelectLabel,exports.SelectScrollDownButton=SelectScrollDownButton,exports.SelectScrollUpButton=SelectScrollUpButton,exports.SelectTrigger=SelectTrigger,exports.SelectValue=SelectValue,exports.Separator=Separator$1,exports.Sheet=Sheet,exports.SheetClose=SheetClose,exports.SheetContent=SheetContent,exports.SheetDescription=SheetDescription,exports.SheetFooter=SheetFooter,exports.SheetHeader=SheetHeader,exports.SheetOverlay=SheetOverlay,exports.SheetPortal=SheetPortal,exports.SheetTitle=SheetTitle,exports.SheetTrigger=SheetTrigger,exports.Sidebar=Sidebar,exports.SidebarContent=SidebarContent,exports.SidebarFooter=SidebarFooter,exports.SidebarGroup=SidebarGroup,exports.SidebarGroupAction=SidebarGroupAction,exports.SidebarGroupContent=SidebarGroupContent,exports.SidebarGroupLabel=SidebarGroupLabel,exports.SidebarHeader=SidebarHeader,exports.SidebarInput=SidebarInput,exports.SidebarInset=SidebarInset,exports.SidebarMenu=SidebarMenu,exports.SidebarMenuAction=SidebarMenuAction,exports.SidebarMenuBadge=SidebarMenuBadge,exports.SidebarMenuButton=SidebarMenuButton,exports.SidebarMenuItem=SidebarMenuItem,exports.SidebarMenuSkeleton=SidebarMenuSkeleton,exports.SidebarMenuSub=SidebarMenuSub,exports.SidebarMenuSubButton=SidebarMenuSubButton,exports.SidebarMenuSubItem=SidebarMenuSubItem,exports.SidebarProvider=SidebarProvider,exports.SidebarRail=SidebarRail,exports.SidebarSeparator=SidebarSeparator,exports.SidebarTrigger=SidebarTrigger,exports.Skeleton=Skeleton,exports.SummaryOverviewCard=SummaryOverviewCard,exports.Switch=Switch,exports.SystemLogFeed=SystemLogFeed,exports.Table=Table,exports.TableBody=TableBody,exports.TableCaption=TableCaption,exports.TableCell=TableCell,exports.TableFooter=TableFooter,exports.TableHead=TableHead,exports.TableHeader=TableHeader,exports.TableRow=TableRow,exports.Tabs=Tabs,exports.TabsContent=TabsContent,exports.TabsList=TabsList,exports.TabsTrigger=TabsTrigger,exports.Textarea=Textarea,exports.Toast=Toast,exports.ToastAction=ToastAction,exports.ToastClose=ToastClose,exports.ToastDescription=ToastDescription,exports.ToastProvider=ToastProvider,exports.ToastTitle=ToastTitle,exports.ToastViewport=ToastViewport,exports.Toaster=Toaster,exports.Tooltip=Tooltip$1,exports.TooltipContent=TooltipContent,exports.TooltipProvider=TooltipProvider,exports.TooltipTrigger=TooltipTrigger,exports.TopPercentTreemap=TopPercentTreemap,exports.Topbar=Topbar,exports.Treemap=Treemap,exports.badgeVariants=badgeVariants,exports.buildApiUrl=buildApiUrl,exports.buttonVariants=buttonVariants,exports.formatMoney=formatMoney,exports.formatNumber=formatNumber,exports.formatYYYYMMDDIntToDateString=formatYYYYMMDDIntToDateString,exports.groupSystemLogEntries=groupSystemLogEntries,exports.toast=toast,exports.useApiOrigin=useApiOrigin,exports.useChat=useChat,exports.useIsMobile=useIsMobile,exports.useOptionalChat=useOptionalChat,exports.useRandmarApiConfig=useRandmarApiConfig,exports.useSidebar=useSidebar,exports.useToast=useToast,Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})}));
|
|
725
|
+
</div>`}};return f&&(!t||!t.colorAxis)&&(A.minColor=f.minColor,A.midColor=f.midColor,A.maxColor=f.maxColor),{...A,...t}},[e,t,f]),te=React__namespace.useMemo(()=>o?[{eventName:"select",callback:({chartWrapper:rt})=>{rt.getChart().setSelection(null)}}]:void 0,[o]);return React__namespace.useImperativeHandle(c,()=>d.current,[]),a?jsxRuntime.jsx("div",{ref:d,className:cn("w-full",s),style:{height:n},...l,children:jsxRuntime.jsx(Skeleton,{className:"h-full w-full"})}):!e||e.length<=2?jsxRuntime.jsx("div",{ref:d,className:cn("w-full flex items-center justify-center text-muted-foreground",s),style:{height:n},...l,children:"No data available"}):jsxRuntime.jsx("div",{ref:d,className:cn("w-full",s),style:{height:n},...l,children:jsxRuntime.jsx(Chart,{chartType:"TreeMap",width:"100%",height:"100%",data:e,options:S,chartEvents:te,loader:jsxRuntime.jsx(Skeleton,{className:"h-full w-full"})})})});Treemap.displayName="Treemap";const TopPercentTreemap=({data:e,topPercent:t=80,title:n,loading:s,...a})=>{const o=React__namespace.useMemo(()=>{if(!e||e.length===0)return[["ID","Parent","Value"],["Root",null,0]];const c=[...e].sort((rt,st)=>st.value-rt.value),f=c.reduce((rt,st)=>rt+st.value,0)*(t/100),R=[["ID","Parent","Value"],["Root",null,0]],S=[],te=[];let A=0;for(const rt of c)A<f?(S.push(rt),A+=rt.value):te.push(rt);if(S.forEach(rt=>{R.push([rt.name,"Root",rt.value])}),te.length>0){const rt=`More... (${te.length} items)`;R.push([rt,"Root",0]),te.forEach(st=>{R.push([st.name,rt,st.value])})}return R},[e,t]),l=React__namespace.useMemo(()=>({title:n,maxDepth:1,backgroundColor:"transparent"}),[n]);return jsxRuntime.jsx(Treemap,{data:o,options:l,className:cn("h-full",a.className),loading:s,disableClick:!1,...a})},portalThemeClasses=["central-theme","partner-theme","reseller-theme","manufacturer-theme","shopify-theme"],portalThemeClassByTheme={central:"central-theme",partner:"partner-theme",reseller:"reseller-theme",manufacturer:"manufacturer-theme",shopify:"shopify-theme"};function normalizePortalTheme(e){if(!e)return"default";const t=e.toLowerCase();switch(t){case"default":case"central":case"partner":case"reseller":case"manufacturer":case"shopify":return t;default:return"default"}}function PortalThemeProvider({theme:e,applyTo:t="documentElement",children:n}){const s=React.useMemo(()=>normalizePortalTheme(e),[e]),a=React.useRef(null);return React.useEffect(()=>{if(typeof document>"u")return;const o=t==="body"?document.body??document.documentElement:document.documentElement??document.body;if(o){a.current||(a.current=portalThemeClasses.filter(l=>o.classList.contains(l)));for(const l of portalThemeClasses)o.classList.remove(l);return s!=="default"&&o.classList.add(portalThemeClassByTheme[s]),()=>{for(const l of portalThemeClasses)o.classList.remove(l);for(const l of a.current??[])o.classList.add(l)}}},[t,s]),n}exports.AIChatLayout=AIChatLayout,exports.Accordion=Accordion,exports.AccordionContent=AccordionContent,exports.AccordionItem=AccordionItem,exports.AccordionTrigger=AccordionTrigger,exports.ActiveOrdersCard=ActiveOrdersCard,exports.Alert=Alert,exports.AlertDescription=AlertDescription,exports.AlertDialog=AlertDialog,exports.AlertDialogAction=AlertDialogAction,exports.AlertDialogCancel=AlertDialogCancel,exports.AlertDialogContent=AlertDialogContent,exports.AlertDialogDescription=AlertDialogDescription,exports.AlertDialogFooter=AlertDialogFooter,exports.AlertDialogHeader=AlertDialogHeader,exports.AlertDialogTitle=AlertDialogTitle,exports.AlertDialogTrigger=AlertDialogTrigger,exports.AlertTitle=AlertTitle,exports.ApiImage=ApiImage,exports.AreaChart=AreaChart,exports.AssistantChat=AssistantChat,exports.AssistantInsight=AssistantInsight,exports.Avatar=Avatar,exports.AvatarFallback=AvatarFallback,exports.AvatarFooter=AvatarFooter,exports.AvatarImage=AvatarImage,exports.Badge=Badge,exports.Button=Button$1,exports.Calendar=Calendar,exports.Card=Card,exports.CardContent=CardContent,exports.CardDescription=CardDescription,exports.CardFooter=CardFooter,exports.CardHeader=CardHeader,exports.CardTitle=CardTitle,exports.ChatLayout=ChatLayout,exports.ChatProvider=ChatProvider,exports.Checkbox=Checkbox,exports.CheckboxCardList=CheckboxCardList,exports.Command=Command,exports.CommandDialog=CommandDialog,exports.CommandEmpty=CommandEmpty,exports.CommandGroup=CommandGroup,exports.CommandInput=CommandInput,exports.CommandItem=CommandItem,exports.CommandList=CommandList,exports.CommandSeparator=CommandSeparator,exports.CommandShortcut=CommandShortcut,exports.CountryFlag=CountryFlag,exports.DataRefreshAssistantCluster=DataRefreshAssistantCluster,exports.DataTable=DataTable,exports.DatePicker=DatePicker,exports.Dialog=Dialog,exports.DialogClose=DialogClose,exports.DialogContent=DialogContent,exports.DialogDescription=DialogDescription,exports.DialogFooter=DialogFooter,exports.DialogHeader=DialogHeader,exports.DialogOverlay=DialogOverlay,exports.DialogPortal=DialogPortal,exports.DialogTitle=DialogTitle,exports.DialogTrigger=DialogTrigger,exports.DropdownMenu=DropdownMenu,exports.DropdownMenuCheckboxItem=DropdownMenuCheckboxItem,exports.DropdownMenuContent=DropdownMenuContent,exports.DropdownMenuGroup=DropdownMenuGroup,exports.DropdownMenuItem=DropdownMenuItem,exports.DropdownMenuLabel=DropdownMenuLabel,exports.DropdownMenuPortal=DropdownMenuPortal,exports.DropdownMenuRadioGroup=DropdownMenuRadioGroup,exports.DropdownMenuRadioItem=DropdownMenuRadioItem,exports.DropdownMenuSeparator=DropdownMenuSeparator,exports.DropdownMenuShortcut=DropdownMenuShortcut,exports.DropdownMenuSub=DropdownMenuSub,exports.DropdownMenuSubContent=DropdownMenuSubContent,exports.DropdownMenuSubTrigger=DropdownMenuSubTrigger,exports.DropdownMenuTrigger=DropdownMenuTrigger,exports.ExploreManufacturers=ExploreManufacturers,exports.ExternalProductCard=ExternalProductCard,exports.GeneralDocumentCard=GeneralDocumentCard,exports.Input=Input,exports.InputOTP=InputOTP,exports.InputOTPGroup=InputOTPGroup,exports.InputOTPSeparator=InputOTPSeparator,exports.InputOTPSlot=InputOTPSlot,exports.Label=Label$2,exports.Layout=Layout,exports.ManufacturerCard=ManufacturerCard,exports.ManufacturerGetStartedButton=ManufacturerGetStartedButton,exports.ManufacturerOverviewPage=ManufacturerOverviewPage,exports.ManufacturerReorderingCard=ManufacturerReorderingCard,exports.MultiSelect=MultiSelect,exports.Navbar=Navbar,exports.OpportunitiesTable=OpportunitiesTable,exports.OrdersCard=OrdersCard,exports.PageHeader=PageHeader,exports.PartnerActions=PartnerActions,exports.PartnerCard=PartnerCard,exports.PartnerRelationshipPage=PartnerRelationshipPage,exports.Popover=Popover,exports.PopoverAnchor=PopoverAnchor,exports.PopoverContent=PopoverContent,exports.PopoverTrigger=PopoverTrigger,exports.PortalThemeProvider=PortalThemeProvider,exports.Preloader=Preloader,exports.ProductCard=ProductCard,exports.ProductImage=ProductImage,exports.ProductInventoryGrid=ProductInventoryGrid,exports.ProductOverviewPage=ProductOverviewPage,exports.Progress=Progress,exports.RadioGroup=RadioGroup$1,exports.RadioGroupItem=RadioGroupItem,exports.RandmarApiConfigProvider=RandmarApiConfigProvider,exports.RefreshCluster=RefreshCluster,exports.ResellerBillingOverviewCard=ResellerBillingOverviewCard,exports.ResellerCard=ResellerCard,exports.ResellerOverview=ResellerOverview,exports.ResellerQualificationsCard=ResellerQualificationsCard,exports.ReturnsTable=ReturnsTable,exports.RichTextEditor=RichTextEditor,exports.RmBodyZone=RmBodyZone,exports.RmPageHeader=RmPageHeader,exports.SalesChart=SalesChart,exports.SalesOverviewCard=SalesOverviewCard,exports.ScrollArea=ScrollArea,exports.ScrollBar=ScrollBar,exports.SearchNoResultsCard=SearchNoResultsCard,exports.SearchPage=SearchPage,exports.SearchPageGrid=SearchPageGrid,exports.SearchResultsHeader=SearchResultsHeader,exports.SearchResultsSkeleton=SearchResultsSkeleton,exports.Select=Select$1,exports.SelectContent=SelectContent,exports.SelectGroup=SelectGroup,exports.SelectItem=SelectItem,exports.SelectLabel=SelectLabel,exports.SelectScrollDownButton=SelectScrollDownButton,exports.SelectScrollUpButton=SelectScrollUpButton,exports.SelectTrigger=SelectTrigger,exports.SelectValue=SelectValue,exports.Separator=Separator$1,exports.Sheet=Sheet,exports.SheetClose=SheetClose,exports.SheetContent=SheetContent,exports.SheetDescription=SheetDescription,exports.SheetFooter=SheetFooter,exports.SheetHeader=SheetHeader,exports.SheetOverlay=SheetOverlay,exports.SheetPortal=SheetPortal,exports.SheetTitle=SheetTitle,exports.SheetTrigger=SheetTrigger,exports.Sidebar=Sidebar,exports.SidebarContent=SidebarContent,exports.SidebarFooter=SidebarFooter,exports.SidebarGroup=SidebarGroup,exports.SidebarGroupAction=SidebarGroupAction,exports.SidebarGroupContent=SidebarGroupContent,exports.SidebarGroupLabel=SidebarGroupLabel,exports.SidebarHeader=SidebarHeader,exports.SidebarInput=SidebarInput,exports.SidebarInset=SidebarInset,exports.SidebarMenu=SidebarMenu,exports.SidebarMenuAction=SidebarMenuAction,exports.SidebarMenuBadge=SidebarMenuBadge,exports.SidebarMenuButton=SidebarMenuButton,exports.SidebarMenuItem=SidebarMenuItem,exports.SidebarMenuSkeleton=SidebarMenuSkeleton,exports.SidebarMenuSub=SidebarMenuSub,exports.SidebarMenuSubButton=SidebarMenuSubButton,exports.SidebarMenuSubItem=SidebarMenuSubItem,exports.SidebarProvider=SidebarProvider,exports.SidebarRail=SidebarRail,exports.SidebarSeparator=SidebarSeparator,exports.SidebarTrigger=SidebarTrigger,exports.Skeleton=Skeleton,exports.SummaryOverviewCard=SummaryOverviewCard,exports.Switch=Switch,exports.SystemLogFeed=SystemLogFeed,exports.Table=Table,exports.TableBody=TableBody,exports.TableCaption=TableCaption,exports.TableCell=TableCell,exports.TableFooter=TableFooter,exports.TableHead=TableHead,exports.TableHeader=TableHeader,exports.TableRow=TableRow,exports.Tabs=Tabs,exports.TabsContent=TabsContent,exports.TabsList=TabsList,exports.TabsTrigger=TabsTrigger,exports.Textarea=Textarea,exports.Toast=Toast,exports.ToastAction=ToastAction,exports.ToastClose=ToastClose,exports.ToastDescription=ToastDescription,exports.ToastProvider=ToastProvider,exports.ToastTitle=ToastTitle,exports.ToastViewport=ToastViewport,exports.Toaster=Toaster,exports.Tooltip=Tooltip$1,exports.TooltipContent=TooltipContent,exports.TooltipProvider=TooltipProvider,exports.TooltipTrigger=TooltipTrigger,exports.TopPercentTreemap=TopPercentTreemap,exports.Topbar=Topbar,exports.Treemap=Treemap,exports.badgeVariants=badgeVariants,exports.buildApiUrl=buildApiUrl,exports.buttonVariants=buttonVariants,exports.formatMoney=formatMoney,exports.formatNumber=formatNumber,exports.formatYYYYMMDDIntToDateString=formatYYYYMMDDIntToDateString,exports.groupSystemLogEntries=groupSystemLogEntries,exports.toast=toast,exports.useApiOrigin=useApiOrigin,exports.useChat=useChat,exports.useIsMobile=useIsMobile,exports.useOptionalChat=useOptionalChat,exports.useRandmarApiConfig=useRandmarApiConfig,exports.useSidebar=useSidebar,exports.useToast=useToast,Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})}));
|