react-semaphor 0.1.430 → 0.1.431

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.
Files changed (27) hide show
  1. package/dist/brand-studio/index.cjs +1 -1
  2. package/dist/brand-studio/index.js +1 -1
  3. package/dist/chunks/{code-editor-DOh3aYEh.js → code-editor-BSENCZwR.js} +1 -1
  4. package/dist/chunks/{code-editor-C65eEYyU.js → code-editor-C8zzmSgt.js} +4 -3
  5. package/dist/chunks/{dashboard-0Tpj3XFq.js → dashboard-CPq4lMF5.js} +26271 -26189
  6. package/dist/chunks/{dashboard-CVDy3fbO.js → dashboard-D2wh2Avv.js} +229 -229
  7. package/dist/chunks/{dashboard-briefing-launcher-DLQqwXMF.js → dashboard-briefing-launcher-DyhfpSOW.js} +1 -1
  8. package/dist/chunks/{dashboard-briefing-launcher-pkNPk_4j.js → dashboard-briefing-launcher-n7BdUvVr.js} +3 -3
  9. package/dist/chunks/{dashboard-controls-DbW9Jt_P.js → dashboard-controls-BCkIDYU4.js} +1 -1
  10. package/dist/chunks/{dashboard-controls-CIN4biYx.js → dashboard-controls-BoiZVnIH.js} +4 -4
  11. package/dist/chunks/{dashboard-json-BDKT0Z-m.js → dashboard-json-BW3ftPy_.js} +1 -1
  12. package/dist/chunks/{dashboard-json-DBfR770k.js → dashboard-json-CC5FPyln.js} +2 -2
  13. package/dist/chunks/{edit-dashboard-visual-qkvRHS8Q.js → edit-dashboard-visual-BYhZFx_B.js} +3 -3
  14. package/dist/chunks/{edit-dashboard-visual-BjAp_UpK.js → edit-dashboard-visual-CkVRSfgf.js} +1 -1
  15. package/dist/chunks/{report-preferences-dialog-LCHeqh7t.js → report-preferences-dialog-CDlNNs5F.js} +1 -1
  16. package/dist/chunks/{report-preferences-dialog-Bx8uzG8K.js → report-preferences-dialog-Dpt-3Gkx.js} +2 -2
  17. package/dist/chunks/{use-create-flow-overlay-state-C-CxrQ48.js → use-create-flow-overlay-state-CCJylXK4.js} +1 -1
  18. package/dist/chunks/{use-create-flow-overlay-state-C-j8E5IZ.js → use-create-flow-overlay-state-Du9wYMdG.js} +2 -2
  19. package/dist/dashboard/index.cjs +1 -1
  20. package/dist/dashboard/index.js +1 -1
  21. package/dist/data-app-builder/index.cjs +1 -1
  22. package/dist/data-app-builder/index.js +2 -2
  23. package/dist/index.cjs +1 -1
  24. package/dist/index.js +6 -6
  25. package/dist/surfboard/index.cjs +1 -1
  26. package/dist/surfboard/index.js +2 -2
  27. package/package.json +1 -1
@@ -53,7 +53,7 @@
53
53
  [zustand devtools middleware] Unsupported __setState action format.
54
54
  When using 'store' option in devtools(), the 'state' should have only one key, which is a value of 'store' that was passed in devtools(),
55
55
  and value of this only key should be a state object. Example: { "type": "__setState", "state": { "abc123Store": { "foo": "bar" } } }
56
- `);const g=C.state[s];if(g==null)return;JSON.stringify(o.getState())!==JSON.stringify(g)&&h(g);return}Ms(o)&&o.dispatch(C)});case"DISPATCH":switch(m.payload.type){case"RESET":return h(y),s===void 0?d==null?void 0:d.init(o.getState()):d==null?void 0:d.init(gr(l.name));case"COMMIT":if(s===void 0){d==null||d.init(o.getState());return}return d==null?void 0:d.init(gr(l.name));case"ROLLBACK":return jo(m.state,C=>{if(s===void 0){h(C),d==null||d.init(o.getState());return}h(C[s]),d==null||d.init(gr(l.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return jo(m.state,C=>{if(s===void 0){h(C);return}JSON.stringify(o.getState())!==JSON.stringify(C[s])&&h(C[s])});case"IMPORT_STATE":{const{nextLiftedState:C}=m.payload,g=(b=C.computedStates.slice(-1)[0])==null?void 0:b.state;if(!g)return;h(s===void 0?g:g[s]),d==null||d.send(null,C);return}case"PAUSE_RECORDING":return f=!f}return}}),y},oc=nh,jo=(e,n)=>{let t;try{t=JSON.parse(e)}catch(r){console.error("[zustand devtools middleware] Could not parse the received json",r)}t!==void 0&&n(t)};function rh(e,n){let t;try{t=e()}catch{return}return{getItem:o=>{var i;const a=l=>l===null?null:JSON.parse(l,void 0),s=(i=t.getItem(o))!=null?i:null;return s instanceof Promise?s.then(a):a(s)},setItem:(o,i)=>t.setItem(o,JSON.stringify(i,void 0)),removeItem:o=>t.removeItem(o)}}const Ci=e=>n=>{try{const t=e(n);return t instanceof Promise?t:{then(r){return Ci(r)(t)},catch(r){return this}}}catch(t){return{then(r){return this},catch(r){return Ci(r)(t)}}}},oh=(e,n)=>(t,r,o)=>{let i={storage:rh(()=>window.localStorage),partialize:b=>b,version:0,merge:(b,C)=>({...C,...b}),...n},a=!1,s=0;const l=new Set,c=new Set;let d=i.storage;if(!d)return e((...b)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),t(...b)},r,o);const u=()=>{const b=i.partialize({...r()});return d.setItem(i.name,{state:b,version:i.version})},f=o.setState;o.setState=(b,C)=>(f(b,C),u());const h=e((...b)=>(t(...b),u()),r,o);o.getInitialState=()=>h;let y;const m=()=>{var b,C;if(!d)return;const g=++s;a=!1,l.forEach(S=>{var x;return S((x=r())!=null?x:h)});const v=((C=i.onRehydrateStorage)==null?void 0:C.call(i,(b=r())!=null?b:h))||void 0;return Ci(d.getItem.bind(d))(i.name).then(S=>{if(S)if(typeof S.version=="number"&&S.version!==i.version){if(i.migrate){const x=i.migrate(S.state,S.version);return x instanceof Promise?x.then(I=>[!0,I]):[!0,x]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,S.state];return[!1,void 0]}).then(S=>{var x;if(g!==s)return;const[I,E]=S;if(y=i.merge(E,(x=r())!=null?x:h),t(y,!0),I)return u()}).then(()=>{g===s&&(v==null||v(r(),void 0),y=r(),a=!0,c.forEach(S=>S(y)))}).catch(S=>{g===s&&(v==null||v(void 0,S))})};return o.persist={setOptions:b=>{i={...i,...b},b.storage&&(d=b.storage)},clearStorage:()=>{d==null||d.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>m(),hasHydrated:()=>a,onHydrate:b=>(l.add(b),()=>{l.delete(b)}),onFinishHydration:b=>(c.add(b),()=>{c.delete(b)})},i.skipHydration||m(),y||h},ih=oh,Ns=e=>Symbol.iterator in e,ks=e=>"entries"in e,Ls=(e,n)=>{const t=e instanceof Map?e:new Map(e.entries()),r=n instanceof Map?n:new Map(n.entries());if(t.size!==r.size)return!1;for(const[o,i]of t)if(!r.has(o)||!Object.is(i,r.get(o)))return!1;return!0},ah=(e,n)=>{const t=e[Symbol.iterator](),r=n[Symbol.iterator]();let o=t.next(),i=r.next();for(;!o.done&&!i.done;){if(!Object.is(o.value,i.value))return!1;o=t.next(),i=r.next()}return!!o.done&&!!i.done};function sh(e,n){return Object.is(e,n)?!0:typeof e!="object"||e===null||typeof n!="object"||n===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(n)?!1:Ns(e)&&Ns(n)?ks(e)&&ks(n)?Ls(e,n):ah(e,n):Ls({entries:()=>Object.entries(e)},{entries:()=>Object.entries(n)})}function ro(e){const n=Ie.useRef(void 0);return t=>{const r=e(t);return sh(n.current,r)?n.current:n.current=r}}let yr;const lh=new Uint8Array(16);function ch(){if(!yr&&(yr=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!yr))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return yr(lh)}const ge=[];for(let e=0;e<256;++e)ge.push((e+256).toString(16).slice(1));function dh(e,n=0){return ge[e[n+0]]+ge[e[n+1]]+ge[e[n+2]]+ge[e[n+3]]+"-"+ge[e[n+4]]+ge[e[n+5]]+"-"+ge[e[n+6]]+ge[e[n+7]]+"-"+ge[e[n+8]]+ge[e[n+9]]+"-"+ge[e[n+10]]+ge[e[n+11]]+ge[e[n+12]]+ge[e[n+13]]+ge[e[n+14]]+ge[e[n+15]]}const uh=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Vs={randomUUID:uh};function Je(e,n,t){if(Vs.randomUUID&&!e)return Vs.randomUUID();e=e||{};const r=e.random||(e.rng||ch)();return r[6]=r[6]&15|64,r[8]=r[8]&63|128,dh(r)}function fh(e){var r;if(!(e!=null&&e.length))return;const n=new Map;for(const o of e)for(const i of o.filterGroups)for(const a of i.filters){if(!((r=a.field)!=null&&r.id))continue;const s=a.field.id;n.has(s)||n.set(s,[]),n.get(s).push({field:a.field,value:a.value})}const t=[];for(const[o,i]of n.entries())if(i.length===1){const a=i[0];t.push({id:Je(),logicalOperator:"AND",negate:!1,conditions:[{id:Je(),field:a.field,operator:"=",value:a.value}],groups:[]})}else{const a=i[0].field,l=i.map(c=>c.value).map(c=>({id:Je(),field:a,operator:"=",value:c}));t.push({id:Je(),logicalOperator:"OR",negate:!1,conditions:l,groups:[]})}if(t.length!==0)return{id:Je(),logicalOperator:"AND",negate:!1,conditions:[],groups:t}}function ph(e){const n=e.filter(Boolean);if(n.length!==0)return n.length===1?n[0]:{id:Je(),logicalOperator:"AND",negate:!1,conditions:[],groups:n}}function mh(e){if(!e)return;const n=t=>({logicalOperator:t.logicalOperator,negate:t.negate,conditions:t.conditions.map(r=>({field:r.field.id,operator:r.operator,value:r.value})),groups:t.groups.map(n)});return JSON.stringify(n(e))}const ic=Ut((e,n)=>({context:null,setContext:t=>e({context:t}),appendCondition:t=>{const r=n().context;r&&e({context:{...r,type:"multiClick",conditions:[...r.conditions,t]}})},clear:()=>e({context:null})}));function _t(e){return e?e.interactions||[]:[]}function hh({intent:e,card:n}){var i,a,s;const t=ic.getState().context;if(!t||!((i=t.conditions)!=null&&i.length))return;const r={sourceCardId:t.cardId,filterGroups:[{filters:t.conditions}],metric:t.metric},o=n==null?void 0:n.interactionConfig;switch(e.mode){case"clickFilter":{const l=_t(o),c={conditions:t.conditions,metrics:t.metric?[t.metric]:void 0},d=Fh(l,c);return!d||d.mode!=="clickFilter"?void 0:{interactionMode:"clickFilter",...r,applyToCardIds:d.applyToCardIds,excludeCardIds:d.excludeCardIds}}case"drillDown":{const l=(a=o==null?void 0:o.drillHierarchies)==null?void 0:a.find(c=>c.id===e.hierarchyId);return l?{interactionMode:"drillDown",...r,hierarchyId:l.id,toField:e.drillField}:void 0}case"dynamicDrill":return{interactionMode:"dynamicDrill",...r,toField:e.drillField};case"drillToDetail":{const c=_t(o).find(d=>d.mode==="drillToDetail");return!c||c.mode!=="drillToDetail"||!((s=c.detailFields)!=null&&s.length)||!c.targetInsightId?void 0:{interactionMode:"drillToDetail",...r,detailFields:c.detailFields,sortBy:c.sortBy,limit:c.limit,targetInsightId:c.targetInsightId,contextMode:c.contextMode,displayMode:c.displayMode}}case"drillToURL":{const c=_t(o).find(d=>d.mode==="drillToURL");return!c||c.mode!=="drillToURL"||!c.urlTemplate?void 0:{interactionMode:"drillToURL",...r,url:c.urlTemplate}}case"drillThrough":{const c=_t(o).find(d=>d.mode==="drillThrough");return!c||c.mode!=="drillThrough"||!c.targetDashboardId?void 0:{interactionMode:"drillThrough",...r,targetDashboardId:c.targetDashboardId}}case"inlineDrill":return{interactionMode:"inlineDrill",...r,fetchMode:"lazy",inlineLimit:10};default:return}}const ac=["year","quarter","month","week","day"],gh=[...ac,"hour","minute","second"];function yh(e){const t=(wh(e)?gh:ac).map(r=>({field:{...e,id:`${e.id}_${r}`,granularity:r,label:Bs(r),dateFormat:Sh(r)},mode:"drillDown",label:`Drill to ${Bs(r)}`,retainFilters:!0}));return{id:`auto_date_${e.id}`,label:`${e.label}`,type:"date",steps:t,default:!0,baseField:e}}function bh(e,n=[]){return Ch(e)?!vh(e.id,n):!1}function vh(e,n){return n.find(t=>t.id===`auto_date_${e}`?!0:t.steps.some(r=>{const o=r.field.id;return o===e||o.startsWith(`${e}_`)}))}function Ch(e){return!!(xh(e)||e.granularity)}function Sh(e){return{year:"YYYY",quarter:"YYYY-Q1",month:"MMM YYYY",week:"YYYY-WW",day:"MMM DD, YYYY",hour:"YYYY-MM-DD HH:mm",minute:"YYYY-MM-DD HH:mm",second:"YYYY-MM-DD HH:mm:ss"}[e]}function Xi(e,n){const t=e.steps.map(a=>a.field.granularity).filter(a=>!!a);if(t.length===0)return;if(!n){const a=t[0];return a?e.steps.find(s=>s.field.granularity===a):void 0}const r=t.indexOf(n);if(r<0)return;const o=t[r+1];return o?e.steps.find(a=>a.field.granularity===o):void 0}function Qi(e,n,t){var i,a;if(t&&t.length>0)return t[t.length-1].granularity;const r=e.baseField;if(!r)return;const o=(a=(i=n.config)==null?void 0:i.groupByColumns)==null?void 0:a.find(s=>s.id===r.id?!0:s.qualifiedFieldName&&r.qualifiedFieldName?s.qualifiedFieldName===r.qualifiedFieldName:s.name&&r.name?s.name===r.name:!1);return o==null?void 0:o.granularity}function Bs(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function xh(e){const n=Qr.normalizeAnalyticsCatalogDataType(e.dataType);return n==="date"||n==="datetime"}function wh(e){return Qr.normalizeAnalyticsCatalogDataType(e.dataType)==="datetime"}function sc(e,n,t,r=!0){let o=e;return n.forEach(i=>{const a=Ih(i,t),s=`{{${i.id}}}`,l=r?encodeURIComponent(String(a)):String(a);o=o.replace(new RegExp(s,"g"),l)}),o}function Ih(e,n){if(e.category==="identifier")switch(e.id){case"card_id":return n.cardId||"";case"frame_id":return n.frameId||"";case"sheet_id":return n.sheetId||"";default:return console.warn(`Unknown identifier parameter: ${e.id}`),""}if(e.category==="attribute"&&e.field){const t=n.clickedValues.find(r=>r.field.id===e.field.id);return t?t.value:(console.warn(`Attribute parameter "${e.id}" (field: ${e.field.id}) not found in clicked values`),"")}return console.warn(`Cannot resolve parameter: ${e.id}`),""}function Eh(e){const n=[];if(!e||e.trim()==="")return n.push("URL template cannot be empty"),{valid:!1,errors:n};const t=(e.match(/\{\{/g)||[]).length,r=(e.match(/\}\}/g)||[]).length;t!==r&&n.push("Unclosed parameter placeholders ({{ or }})"),e.match(new RegExp("(?<!\\{)\\{(?!\\{)|(?<!\\})\\}(?!\\})","g"))&&n.push("Invalid placeholder syntax (use {{param_id}}, not {param_id})");const i=e.replace(/\{\{[^}]+\}\}/g,"VALUE");try{new URL(i)}catch{n.push("Invalid URL structure")}return{valid:n.length===0,errors:n}}function br(e){return typeof e=="string"&&e.trim().length>0}function Zi(e){if(!(e!=null&&e.trigger)||!(e!=null&&e.mode))return!1;switch(e.mode){case"drillDown":return br(e.hierarchyId);case"dynamicDrill":return Array.isArray(e.availableFields)&&e.availableFields.length>0;case"drillThrough":return br(e.targetDashboardId);case"drillToDetail":return br(e.targetInsightId);case"drillToURL":return br(e.urlTemplate);case"clickFilter":case"inlineDrill":case"drillUp":return!0;default:return!1}}function Th(e){return e.filter(n=>Zi(n))}function Si(e,n){if(n.type==="metric")return e;if(n.type==="attribute"){const t=e.find(r=>r.field.id===n.field.id);return t?[t]:[]}return e}function Ji(e,n){var o,i;const t=e.filter(a=>Zi(a));if(t.length===0)return[];const r=[];for(const a of t){if(!a.trigger)continue;const{trigger:s}=a;if(s.type==="metric"&&((o=n.metrics)!=null&&o.length)&&n.metrics[0].field.id===s.field.id){r.push(a);continue}s.type==="attribute"&&((i=n.conditions)!=null&&i.length)&&n.conditions.find(c=>c.field.id===s.field.id)&&r.push(a)}return r}function Fh(e,n){const t=Ji(e,n);return t.length>0?t[0]:null}function ft(e,n){if(e.sourceCardId!==n.sourceCardId||!Array.isArray(e.filterGroups)||!Array.isArray(n.filterGroups)||e.filterGroups.length!==n.filterGroups.length)return!1;const t=a=>a.filters.map(s=>({fieldId:s.field.id,value:String(s.value),operator:s.operator??"="})).sort((s,l)=>s.fieldId!==l.fieldId?s.fieldId.localeCompare(l.fieldId):s.value.localeCompare(l.value)),r=a=>a.map(t).sort((s,l)=>{const c=s.map(u=>`${u.fieldId}:${u.value}`).join("|"),d=l.map(u=>`${u.fieldId}:${u.value}`).join("|");return c.localeCompare(d)}),o=r(e.filterGroups),i=r(n.filterGroups);return o.every((a,s)=>{const l=i[s];return a.length!==l.length?!1:a.every((c,d)=>{const u=l[d];return c.fieldId===u.fieldId&&c.value===u.value&&c.operator===u.operator})})}function Dh(e,n,t,r,o,i,a){var b,C,g,v,S,x,I;const s=_t(n.interactionConfig),l=Ji(s,e),c=l.some(E=>E.mode==="dynamicDrill");if((l.length>1||c)&&i)return i(l,e,a),!0;const d=l.length>0?l[0]:null;if(!d)return!1;if(d&&d.mode!=="clickFilter"){const F=[{filters:d.trigger?Si(e.conditions,d.trigger):e.conditions}];let T;if(d.mode==="drillToDetail")T={interactionMode:"drillToDetail",sourceCardId:n.id,filterGroups:F,metric:(b=e.metrics)==null?void 0:b[0],detailFields:d.detailFields||[],sortBy:d.sortBy,limit:d.limit,detailTitle:d.label,targetInsightId:d.targetInsightId,contextMode:d.contextMode,displayMode:d.displayMode};else if(d.mode==="drillDown"){const D=(g=(C=n.interactionConfig)==null?void 0:C.drillHierarchies)==null?void 0:g.find(A=>A.id===d.hierarchyId);if(D){const _=Ee.getState().interactionStates[n.id],O=(_==null?void 0:_.breadcrumbs)||[],B=O.length;let G;if(D.type==="date"||D.baseField){const N=Qi(D,n,O);G=Xi(D,N)}else G=D.steps[B];G&&(T={interactionMode:"drillDown",sourceCardId:n.id,hierarchyId:D.id,filterGroups:F,metric:(v=e.metrics)==null?void 0:v[0],toField:G.field,granularity:G.field.granularity})}}else if(d.mode==="drillThrough")T={interactionMode:"drillThrough",sourceCardId:n.id,filterGroups:F,metric:(S=e.metrics)==null?void 0:S[0],targetDashboardId:d.targetDashboardId,contextMode:d.contextMode};else if(d.mode==="drillToURL"){const D=sc(d.urlTemplate,d.parameters||[],{clickedValues:F.flatMap(A=>A.filters),cardId:n.id,frameId:t,sheetId:r},d.encodeParameters!==!1);try{new URL(D)}catch(A){return console.error("Invalid URL:",D,A),!1}return window.open(D,"_blank","noopener,noreferrer"),!0}else{if(d.mode==="drillUp")return Ee.getState().popInteractionStep(n.id),!0;d.mode==="dynamicDrill"&&d.drillField&&(T={interactionMode:"dynamicDrill",sourceCardId:n.id,filterGroups:F,metric:(x=e.metrics)==null?void 0:x[0],toField:d.drillField})}return T?(Ee.getState().applyInteractionEvent(n.id,T),!0):!1}if(!d||d.mode!=="clickFilter")return!1;const u=d.trigger?Si(e.conditions,d.trigger):e.conditions,f={interactionMode:"clickFilter",sourceCardId:n.id,filterGroups:[{filters:u}],metric:(I=e.metrics)==null?void 0:I[0],applyToCardIds:d.applyToCardIds,excludeCardIds:d.excludeCardIds},h=o.interactionStates[n.id]??et(),y=h.appliedClickFilters??[];return y.some(E=>ft(E,f))&&y.length===1?o.setInteractionState(n.id,{...h,appliedClickFilters:[]}):o.setInteractionState(n.id,{...h,appliedClickFilters:[f]}),!0}function Ah(e,n,t,r){const o=Ee(),i=ic();return{handlePointerInteraction:({context:l,gesture:c,position:d,modifierKeys:u})=>{var v;const h=_t(e.interactionConfig).some(S=>Zi(S));if(c==="leftClick"&&!(u!=null&&u.shift)&&h){Dh(l,e,n,t,o,r,d);return}if(i.setContext({type:c,cardId:e.id,conditions:l.conditions,metric:(v=l.metrics)==null?void 0:v[0],anchorPosition:d}),c!=="leftClick"||!h)return;const y=hh({intent:{mode:"clickFilter"},card:e});if(!y)return;const m=o.interactionStates[e.id]??et(),b=m.appliedClickFilters??[],g=b.some(S=>ft(S,y))?b.filter(S=>!ft(S,y)):[...b,y];o.setInteractionState(e.id,{...m,appliedClickFilters:g})},applySelectedInteraction:(l,c)=>{var h,y,m,b,C,g,v;const u=[{filters:l.trigger?Si(c.conditions,l.trigger):c.conditions}];let f;if(l.mode==="clickFilter"){const S=l.applyToCardIds?[...l.applyToCardIds,e.id]:void 0;f={interactionMode:"clickFilter",sourceCardId:e.id,filterGroups:u,metric:(h=c.metrics)==null?void 0:h[0],applyToCardIds:S,excludeCardIds:l.excludeCardIds,filterSourceCard:!0}}else if(l.mode==="drillToDetail")f={interactionMode:"drillToDetail",sourceCardId:e.id,filterGroups:u,metric:(y=c.metrics)==null?void 0:y[0],detailFields:l.detailFields||[],sortBy:l.sortBy,limit:l.limit,detailTitle:l.label,targetInsightId:l.targetInsightId,contextMode:l.contextMode,displayMode:l.displayMode};else if(l.mode==="drillDown"){const S=(b=(m=e.interactionConfig)==null?void 0:m.drillHierarchies)==null?void 0:b.find(x=>x.id===l.hierarchyId);if(S){const x=o.interactionStates[e.id],I=(x==null?void 0:x.breadcrumbs)||[],E=I.length;let F;if(S.type==="date"||S.baseField){const T=Qi(S,e,I);F=Xi(S,T)}else F=S.steps[E];F&&(f={interactionMode:"drillDown",sourceCardId:e.id,hierarchyId:S.id,filterGroups:u,metric:(C=c.metrics)==null?void 0:C[0],toField:F.field,granularity:F.field.granularity})}}else if(l.mode==="drillThrough")f={interactionMode:"drillThrough",sourceCardId:e.id,filterGroups:u,metric:(g=c.metrics)==null?void 0:g[0],targetDashboardId:l.targetDashboardId,contextMode:l.contextMode};else if(l.mode==="drillToURL"){const S=sc(l.urlTemplate,l.parameters||[],{clickedValues:u.flatMap(x=>x.filters),cardId:e.id,frameId:n,sheetId:t},l.encodeParameters!==!1);try{new URL(S)}catch(x){console.error("Invalid URL:",S,x);return}window.open(S,"_blank","noopener,noreferrer");return}else if(l.mode==="drillUp"){o.popInteractionStep(e.id);return}else l.mode==="dynamicDrill"&&(l.drillField?f={interactionMode:"dynamicDrill",sourceCardId:e.id,filterGroups:u,metric:(v=c.metrics)==null?void 0:v[0],toField:l.drillField}:console.warn("⚠️ dynamicDrill interaction missing drillField!",l));f&&o.applyInteractionEvent(e.id,f)}}}const Pt=Ut()(oc((e,n)=>({clearBlurCallbacks:{},registerClearBlurCallback:(t,r)=>{e(o=>({clearBlurCallbacks:{...o.clearBlurCallbacks,[t]:r}}))},clearBlurForCard:t=>{const o=n().clearBlurCallbacks[t];if(o)try{o()}catch(i){console.warn(`Failed to clear blur for card ${t}:`,i),e(a=>{const{[t]:s,...l}=a.clearBlurCallbacks;return{clearBlurCallbacks:l}})}},clearAllBlur:()=>{const t=n(),r=[];Object.entries(t.clearBlurCallbacks).forEach(([o,i])=>{if(i)try{i()}catch(a){console.warn(`Failed to clear blur for card ${o}:`,a),r.push(o)}}),r.length>0&&e(o=>{const i={...o.clearBlurCallbacks};return r.forEach(a=>{delete i[a]}),{clearBlurCallbacks:i}})},unregisterCard:t=>{e(r=>{const{[t]:o,...i}=r.clearBlurCallbacks;return{clearBlurCallbacks:i}})},resetStore:()=>{const t=n();Object.values(t.clearBlurCallbacks).forEach(r=>{if(r)try{r()}catch{}}),e({clearBlurCallbacks:{}})}}),{name:"chartjs-store"}));it.subscribe("dashboard:load",()=>{Pt.getState().resetStore()});it.subscribe("dashboard:unload",()=>{Pt.getState().resetStore()});const Rh=["table","pivotTable","aggregateTable","matrixTable","detailTable"],_h=new Set(Rh);function Ph(e){return typeof e=="string"&&_h.has(e)}const Oh=["table","pivotTable","aggregateTable","detailTable"],Mh=new Set(Oh);function Nh(e){return typeof e=="string"&&Mh.has(e)}const lc=["bar","kpi","horizontalBar","line","area","stackedArea","combo","stackedBar","stackedLine","table","pivotTable","bullet","custom"],cc=["kpi","table","bullet"],kh=["bar","kpi","horizontalBar","line","area","stackedArea","combo","stackedBar","stackedLine","table","pivotTable","bullet"],Lh=6;function Vh(e){if(!(e===void 0||!Number.isFinite(e))&&Number.isInteger(e))return Math.max(0,Math.min(Lh,e))}function dc(e){var n;return((n=e==null?void 0:e.comparison)==null?void 0:n.mode)==="explicit"?e.comparison.spec:void 0}function uc(e){var n;return((n=dc(e))==null?void 0:n.kind)||"none"}function Bh(e){const n=dc(e);return(n==null?void 0:n.kind)==="target"?n.targetValue:void 0}function jh(e){return(e==null?void 0:e.semanticComparisonPolarity)||(e==null?void 0:e.comparisonPolarity)||am.DEFAULT_METRIC_COMPARISON_POLARITY}function $h(e,n){const t=e.metricColumns||[];if(t.length===0)return e;const r=lc.includes(n),o=cc.includes(n),i=l=>{var c;return(c=l.parameters)!=null&&c.windowTransform?{...l,parameters:{...l.parameters,windowTransform:void 0}}:l};let a=!1;const s=t.map(l=>{var u;const c=uc(l);if(c==="none")return l;let d=l;return(u=d.parameters)!=null&&u.windowTransform&&(a=!0,d=i(d)),r?c==="target"&&!o?(a=!0,{...d,comparison:void 0}):d:(a=!0,{...d,comparison:void 0})});return a?{...e,metricColumns:s}:e}const pt="__DRILL_CONTEXT__";function et(){return{breadcrumbs:[],hierarchyId:void 0,appliedClickFilters:[]}}const Ee=Ut()(oc(e=>({interactionStates:{},replacedCards:{},pendingDrillThrough:null,setInteractionState:(n,t)=>{e(r=>({interactionStates:{...r.interactionStates,[n]:t}}))},resetInteractionState:n=>{e(t=>({interactionStates:{...t.interactionStates,[n]:et()}}))},toggleClickFilter:(n,t)=>{e(r=>{const o=r.interactionStates[n]??et(),i=o.appliedClickFilters??[],a=i.some(l=>ft(l,t)),s=a?i.filter(l=>!ft(l,t)):[...i,t];return a&&s.filter(c=>c.sourceCardId===t.sourceCardId).length===0&&Pt.getState().clearBlurForCard(t.sourceCardId),{interactionStates:{...r.interactionStates,[n]:{...o,appliedClickFilters:s}}}})},removeClickFiltersByValue:(n,t,r)=>{e(o=>{const i=o.interactionStates[n]??et(),a=i.appliedClickFilters??[],s=a.filter(d=>d.filterGroups.some(u=>u.filters.some(f=>{const h=f.field.label,y=f.field.name;return(h===t||y===t)&&f.value===r}))),l=new Set,c=a.filter(d=>{const u=s.some(f=>ft(d,f));return u&&l.add(d.sourceCardId),!u});return l.forEach(d=>{const u=o.interactionStates[d],h=((u==null?void 0:u.appliedClickFilters)??[]).filter(m=>!s.some(b=>ft(m,b)));let y=!1;Object.entries(o.interactionStates).forEach(([m,b])=>{m===d?h.length>0&&(y=!0):((b==null?void 0:b.appliedClickFilters)??[]).some(v=>v.sourceCardId===d)&&(y=!0)}),y||Pt.getState().clearBlurForCard(d),o.interactionStates[d]={...u,appliedClickFilters:h}}),{interactionStates:{...o.interactionStates,[n]:{...i,appliedClickFilters:c}}}})},applyInteractionEvent:(n,t,r=!1)=>{e(o=>{var s;const i=o.interactionStates[n]??et(),a=r?et():i;if(t.interactionMode==="clickFilter"){const l=r?[t]:[...a.appliedClickFilters??[],t];return{interactionStates:{...o.interactionStates,[n]:{...a,appliedClickFilters:l}}}}if(t.interactionMode==="drillDown"||t.interactionMode==="dynamicDrill"){if(!((s=t.filterGroups)!=null&&s.length))return o;const l={sourceFilterGroups:t.filterGroups,toField:t.toField,granularity:t.granularity,timeComparison:t.timeComparison,metric:t.metric};return{interactionStates:{...o.interactionStates,[n]:{...i,hierarchyId:t.interactionMode==="drillDown"?t.hierarchyId:i.hierarchyId,breadcrumbs:[...i.breadcrumbs??[],l]}}}}return t.interactionMode==="drillToDetail"||t.interactionMode==="drillThrough"||t.interactionMode==="drillToURL"||t.interactionMode==="inlineDrill"?{interactionStates:{...o.interactionStates,[n]:{...i,lastInteractionEvent:t}}}:o})},popInteractionStep:n=>{e(t=>{var i;const r=t.interactionStates[n];if(!((i=r==null?void 0:r.breadcrumbs)!=null&&i.length))return t;const o=r.breadcrumbs.slice(0,-1);return{interactionStates:{...t.interactionStates,[n]:{...r,breadcrumbs:o,hierarchyId:o.length===0?void 0:r.hierarchyId}}}})},clearLastInteractionEvent:n=>{e(t=>{const r=t.interactionStates[n];return!r||!r.lastInteractionEvent?t:{interactionStates:{...t.interactionStates,[n]:{...r,lastInteractionEvent:void 0}}}})},replaceCardWithInsight:(n,t,r,o)=>{e(i=>({replacedCards:{...i.replacedCards,[n]:{insightId:t,filters:r,contextMode:o}}}))},restoreCard:n=>{e(t=>{const{[n]:r,...o}=t.replacedCards;return{replacedCards:o}})},clearAllClickFilters:()=>{e(n=>{const t={...n.interactionStates};for(const r in t)r!==pt&&(t[r]={...t[r],appliedClickFilters:[]});return Pt.getState().clearAllBlur(),{interactionStates:t}})},setPendingDrillThrough:n=>{e({pendingDrillThrough:n})},clearPendingDrillThrough:()=>{e({pendingDrillThrough:null})},resetAllInteractionStates:()=>{Pt.getState().clearAllBlur(),e({interactionStates:{},replacedCards:{},pendingDrillThrough:null})}}),{name:"interaction-store"}));it.subscribe("dashboard:load",()=>{Ee.getState().resetAllInteractionStates()});it.subscribe("dashboard:unload",()=>{Ee.getState().resetAllInteractionStates()});function ea(e,n){return Object.entries(n).filter(([r])=>r!==pt).flatMap(([,r])=>(r==null?void 0:r.appliedClickFilters)??[]).filter(r=>{var o,i;return r.sourceCardId===e&&!r.filterSourceCard?!1:(o=r.applyToCardIds)!=null&&o.length?r.applyToCardIds.includes(e):(i=r.excludeCardIds)!=null&&i.length?!r.excludeCardIds.includes(e):!0})}const Uh=e=>Ee(ro(n=>ea(e,n.interactionStates)));function Jn(e,n,t){var y,m;const r=e.id,o=(y=e.config)==null?void 0:y.filters,i=ea(r,n),a=n[pt],c=[...t&&(a==null?void 0:a.targetDashboardId)===t&&(a==null?void 0:a.contextMode)!=="none"?(a==null?void 0:a.appliedClickFilters)||[]:[],...i],d=fh(c),f=(((m=n[r])==null?void 0:m.breadcrumbs)??[]).map((b,C)=>({id:`breadcrumb-${C}`,logicalOperator:"OR",negate:!1,conditions:[],groups:b.sourceFilterGroups.map((g,v)=>({id:`breadcrumb-${C}-group-${v}`,logicalOperator:"AND",negate:!1,conditions:g.filters.map(S=>({id:`${S.field.id}-${S.value}`,field:S.field,operator:"=",value:S.value})),groups:[]}))})),h=f.length>0?{id:`${r}-drill-root`,logicalOperator:"AND",negate:!1,conditions:[],groups:f}:void 0;return ph([o,d,h])}function zh(e,n){return e.name===n.name&&e.qualifiedEntityName===n.qualifiedEntityName}function fc(e,n,t){var c,d,u,f;const r=n[e.id],o=(c=r==null?void 0:r.breadcrumbs)==null?void 0:c.slice(-1)[0],i=o!=null&&o.toField?[o.toField]:(d=e.config)==null?void 0:d.groupByColumns,a=o!=null&&o.toField&&((u=e.config)!=null&&u.sortByColumns)?e.config.sortByColumns.map(h=>{var m,b;const y=(b=(m=e.config)==null?void 0:m.groupByColumns)==null?void 0:b[0];return y&&zh(h,y)?{...o.toField,role:"sortby",direction:h.direction}:h}):(f=e.config)==null?void 0:f.sortByColumns,s=t??Jn(e,n),l={...e.config,groupByColumns:i,sortByColumns:a,filters:s};return $h(l,e.type)}function qh(e){const n=Ee(o=>o.interactionStates),t=We(o=>{var i;return(i=o.dashboard)==null?void 0:i.id}),r=Jn(e,n,t);return fc(e,n,r)}function pc(e,n,t){const r=t??Jn(e,n);return mh(r)}function Hh(e){const n=Ee(i=>i.interactionStates),t=We(i=>{var a;return(a=i.dashboard)==null?void 0:a.id}),r=Jn(e,n,t);return pc(e,n,r)}var mc={},hc={},ta={exports:{}},z=String,gc=function(){return{isColorSupported:!1,reset:z,bold:z,dim:z,italic:z,underline:z,inverse:z,hidden:z,strikethrough:z,black:z,red:z,green:z,yellow:z,blue:z,magenta:z,cyan:z,white:z,gray:z,bgBlack:z,bgRed:z,bgGreen:z,bgYellow:z,bgBlue:z,bgMagenta:z,bgCyan:z,bgWhite:z,blackBright:z,redBright:z,greenBright:z,yellowBright:z,blueBright:z,magentaBright:z,cyanBright:z,whiteBright:z,bgBlackBright:z,bgRedBright:z,bgGreenBright:z,bgYellowBright:z,bgBlueBright:z,bgMagentaBright:z,bgCyanBright:z,bgWhiteBright:z}};ta.exports=gc();ta.exports.createColors=gc;var Gh=ta.exports;(function(e){Object.defineProperty(e,"__esModule",{value:!0});function n(l,c){for(var d in c)Object.defineProperty(l,d,{enumerable:!0,get:c[d]})}n(e,{dim:function(){return a},default:function(){return s}});const t=r(Gh);function r(l){return l&&l.__esModule?l:{default:l}}let o=new Set;function i(l,c,d){typeof process<"u"&&process.env.JEST_WORKER_ID||d&&o.has(d)||(d&&o.add(d),console.warn(""),c.forEach(u=>console.warn(l,"-",u)))}function a(l){return t.default.dim(l)}const s={info(l,c){i(t.default.bold(t.default.cyan("info")),...Array.isArray(l)?[l]:[c,l])},warn(l,c){i(t.default.bold(t.default.yellow("warn")),...Array.isArray(l)?[l]:[c,l])},risk(l,c){i(t.default.bold(t.default.magenta("risk")),...Array.isArray(l)?[l]:[c,l])}}})(hc);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return o}});const n=t(hc);function t(i){return i&&i.__esModule?i:{default:i}}function r({version:i,from:a,to:s}){n.default.warn(`${a}-color-renamed`,[`As of Tailwind CSS ${i}, \`${a}\` has been renamed to \`${s}\`.`,"Update your configuration file to silence this warning."])}const o={inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",slate:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},zinc:{50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},neutral:{50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717",950:"#0a0a0a"},stone:{50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917",950:"#0c0a09"},red:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},orange:{50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12",950:"#431407"},amber:{50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f",950:"#451a03"},yellow:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},lime:{50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314",950:"#1a2e05"},green:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d",950:"#052e16"},emerald:{50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b",950:"#022c22"},teal:{50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a",950:"#042f2e"},cyan:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},sky:{50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e",950:"#082f49"},blue:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},indigo:{50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81",950:"#1e1b4b"},violet:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},purple:{50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87",950:"#3b0764"},fuchsia:{50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75",950:"#4a044e"},pink:{50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843",950:"#500724"},rose:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},get lightBlue(){return r({version:"v2.2",from:"lightBlue",to:"sky"}),this.sky},get warmGray(){return r({version:"v3.0",from:"warmGray",to:"stone"}),this.stone},get trueGray(){return r({version:"v3.0",from:"trueGray",to:"neutral"}),this.neutral},get coolGray(){return r({version:"v3.0",from:"coolGray",to:"gray"}),this.gray},get blueGray(){return r({version:"v3.0",from:"blueGray",to:"slate"}),this.slate}}})(mc);let $o=mc;var Wh=($o.__esModule?$o:{default:$o}).default;const oe=no(Wh),Yh=".semaphor-scope";function Kh(e){return e?e.closest(Yh):null}function Xh(e){if(!e)return"light";const n=e.dataset.semaphorTheme;return n==="dark"||n==="light"?n:e.classList.contains("dark")?"dark":"light"}const Qh=!1,yc=["table","view","materialized view"],Zh=["_forecast"],Br="dm",Jh="semaphor_calculated_fields",eg="calculated_fields",na=["lg","md","sm","xs","xxs"],xi={default:{dashboardPanel:"",dashboardTabsContainer:"",gridLayout:{className:""},chart:{font:{family:mt.SEMAPHOR_DEFAULT_FONT_FAMILY},dataset:{backgroundColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]],borderColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]]},options:{interaction:{mode:"index"},plugins:{datalabels:{display:!1,color:wi},title:{display:!0},tooltip:{backgroundColor:"#fff",bodyColor:"#000",borderWidth:.25,titleColor:"#000",borderColor:"rgb(128,131,139)",cornerRadius:4,usePointStyle:!0,pointStyle:"rectRounded",boxPadding:4},legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},scales:{y:{grid:{display:!0},title:{display:!0,text:""},beginAtZero:!0,ticks:{precision:0}},x:{grid:{display:!0},title:{display:!0}}},layout:{padding:{top:-40}},borderRadius:2,responsive:!0,maintainAspectRatio:!1}}},dark:{chart:{dataset:{datalables:{color:wi},backgroundColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]],borderColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]]},options:{plugins:{tooltip:{backgroundColor:"#000",bodyColor:"#fff",borderWidth:.25,titleColor:"#fff",borderColor:"rgb(128,131,139)",cornerRadius:2,boxPadding:4}},datalabels:{display:!1},scales:{x:{grid:{display:!0,color:oe.slate[800]}},y:{grid:{display:!0,color:oe.slate[800]}}}}}}};function wi(e){var r,o,i,a,s,l,c,d,u;const n=(s=(a=(i=(o=(r=e==null?void 0:e.chart)==null?void 0:r.config)==null?void 0:o._config)==null?void 0:i.options)==null?void 0:a.plugins)==null?void 0:s.datalabels;let t=(l=e==null?void 0:e.dataset)==null?void 0:l.backgroundColor;return(n==null?void 0:n.align)==="end"&&(n==null?void 0:n.anchor)==="end"&&(t=Fr((c=e==null?void 0:e.chart)==null?void 0:c.canvas)),(n==null?void 0:n.align)==="start"&&(n==null?void 0:n.anchor)==="start"&&(t=Fr((d=e==null?void 0:e.chart)==null?void 0:d.canvas)),bc(t,{baseColor:Fr((u=e==null?void 0:e.chart)==null?void 0:u.canvas)})}function Fr(e){if(typeof document<"u"){const n=Kh(e);if(n){const r=window.getComputedStyle(n).getPropertyValue("--semaphor-background").trim();return r?`hsl(${r})`:Xh(n)==="dark"?"#000000":"#FFFFFF"}const t=document.documentElement;if(t.classList.contains("dark"))return"#000000";if(t.classList.contains("light"))return"#FFFFFF"}return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"#000000":"#FFFFFF"}function bc(e,n={}){let t=0,r=0,o=0,i=0;const a=n.baseColor?mt.parseRuntimeColor(n.baseColor):null,s=f=>{if(!f)return oe.gray[500];const h=mt.parseRuntimeColor(f);if(!h)return oe.gray[500];const y=vc(h,a);t+=y.r,r+=y.g,o+=y.b,i++};if(Array.isArray(e)?e.forEach(f=>{s(f)}):s(e),i===0)return oe.gray[500];const l=t/i,c=r/i,d=o/i;return(l*299+c*587+d*114)/1e3>=180?"black":"white"}function vc(e,n){if(e.alpha>=1)return e;const t=n?vc(n,null):tg;return{r:e.r*e.alpha+t.r*(1-e.alpha),g:e.g*e.alpha+t.g*(1-e.alpha),b:e.b*e.alpha+t.b*(1-e.alpha)}}const tg={r:255,g:255,b:255};function ng({capabilities:e,database:n,schema:t,table:r}){const o=e.prefixLevels,i=[];for(const a of o)a==="database"&&n&&i.push(n),a==="schema"&&t&&i.push(t),a==="table"&&i.push(r);return i.join(".")}function ra(e){return e.startsWith('"')&&e.endsWith('"')?e:e.match(/[A-Z]/)?`"${e}"`:e}function oo(e){return _e(e)==="string"}function io(e){return _e(e)==="number"}function oa(e){return _e(e)==="date"}function ia(e){return _e(e)==="boolean"}function rg(e,n,t,r,o,i,a){const{measures:s,dimensions:l}=e,c=s==null?void 0:s.map(y=>`${y.calc}(${y.name}) as ${y.calc}_${y.name.replace(/"/g,"")}`).join(", "),d=(l==null?void 0:l.join(", "))||"";let u="";const h=(r?`${Br}.${r}`:a||aa({schemaName:n,tableName:t,databaseName:o,capabilities:i})).split(".").map(y=>ra(y)).join(".");if(c&&d)return u=`SELECT ${d}, COUNT(*) as count, ${c} FROM ${h} GROUP BY ${d} ORDER BY ${d} DESC LIMIT 100`,u;if(!c&&d)return u=`SELECT ${d}, COUNT(*) as count FROM ${h} GROUP BY ${d} ORDER BY ${d} DESC LIMIT 100`,u;if(c&&!d)return u=`SELECT ${c} FROM ${h} LIMIT 100`,u}function og(e,n,t="AVG"){var i,a,s,l;let r={};const o=ra(e.column_name);return oo(e.data_type)&&(((i=n.dimensions)==null?void 0:i.includes(o))?r={...n,dimensions:(a=n.dimensions)==null?void 0:a.filter(d=>d!==o)}:r={...n,dimensions:[...n.dimensions||[],o]}),io(e.data_type)&&(((s=n.measures)==null?void 0:s.some(d=>d.name===o&&d.calc===t))?r={...n,measures:(l=n.measures)==null?void 0:l.filter(d=>!(d.name===o&&d.calc===t))}:r={...n,measures:[...n.measures||[],{name:o,calc:t||"SUM"}]}),r}function ig(e){return oo(e.dataType)?"string":io(e.dataType)?"number":oa(e.dataType)?"date":ia(e.dataType)?"boolean":"string"}function ag(e){let n;const t=e.data_type.toLowerCase();return oo(t)?n="T":io(t)?n="#":oa(t)?n="D":ia(t)?n="B":n="?",n}function sg(e,n){const{dimensions:t,measures:r}=n,o=t==null?void 0:t.includes(e.column_name),i=r==null?void 0:r.some(a=>a.name===e.column_name);return o||i}function Cc(e){return e?e!=null&&e.startsWith(`${Br}.`)?e:`${Br}.${e}`:""}function lg({schemaName:e,tableName:n,databaseName:t,connectionType:r}){return r==="S3"||r==="API"?n:r==="S3Tables"?`${t}.${e}.${n}`:e?`${e}.${n}`:n}function cg({schemaName:e,tableName:n,modelName:t,databaseName:r,capabilities:o,connectionType:i}){let a;o?a=aa({schemaName:e,tableName:n,databaseName:r,capabilities:o}):a=lg({schemaName:e,tableName:n,databaseName:r,connectionType:i}),t&&(a=Cc(t));let s=a;return(c=>/[A-Z]/.test(c))(n)&&(s=s.split(".").map(d=>`"${d}"`).join(".")),s}function aa({schemaName:e,tableName:n,databaseName:t,capabilities:r}){return ng({capabilities:r,database:t,schema:e||void 0,table:n})}const dg=e=>{const n=new Date(e);return!isNaN(n.getTime())},ug=e=>!isNaN(Number(e))&&!isNaN(parseFloat(e)),Sc=e=>{let n;return typeof e=="number"?n="number":typeof e=="string"?dg(e)?n="date":ug(e)?n="number":n="string":typeof e=="boolean"?n="boolean":e instanceof Date?n="date":n="unknown",n};function fg({get:e,dataPoint:n,card:t}){var f;const{addOrUpdateFilterValue:r,addFilteringCard:o,removeFilterValues:i,replaceFilterValue:a,removeFilteringCard:s}=e().actions,l=e().filteringCards,{columnName:c,columnValue:d}=n,u={filterId:t.id,connectionId:t==null?void 0:t.connectionId,tableName:t.lastSelectedTable,name:c,expression:(f=t.preferences)==null?void 0:f.filterOnClickField,valueType:Sc(d),operation:"=",values:[d]};if(l!=null&&l.find(h=>h.id===t.id)){const h=t.id;if(d==null){s(t),i(h);return}else a(u)}o(t),r(u)}const jr={lg:48,md:36,sm:24,xs:12,xxs:6},Fn=[...na].sort((e,n)=>jr[e]-jr[n]),pg={initialHeight:35,minH:10},mg={initialHeight:8,minH:4};function hg(e){var n,t;if(e)return((n=e.cards)==null?void 0:n.find(r=>r.id===e.activeCardId))||((t=e.cards)==null?void 0:t[0])}function Ii(e){var n;return((n=hg(e))==null?void 0:n.type)==="text"?"text":"default"}function xc(e){return Ii(e)==="text"?mg:pg}function gg(e,n){return e.x<n.x+n.w&&e.x+e.w>n.x}function yg(e){const n=[...e].sort((r,o)=>r.y!==o.y?r.y-o.y:r.x-o.x),t=[];for(const r of n){if(r.static){t.push({...r});continue}const o=t.reduce((i,a)=>gg(r,a)?Math.max(i,a.y+a.h):i,0);t.push({...r,y:o})}return t}function bg({layouts:e,previousFrame:n,nextFrame:t}){if(!e||Ii(n)===Ii(t))return e;const r=xc(t);let o=!1;const i={};return Object.keys(e).forEach(a=>{const s=e[a];if(!s)return;let l=!1;const c=s.map(d=>d.i!==t.id||d.h===r.initialHeight&&d.minH===r.minH?d:(o=!0,l=!0,{...d,h:r.initialHeight,minH:r.minH}));i[a]=l?yg(c):c}),o?i:e}function vg(e,n){const t=Math.max(1,Math.min(e.w,n)),r=e.minW==null?void 0:Math.max(1,Math.min(e.minW,t)),o=e.maxW==null?void 0:Math.max(t,Math.min(e.maxW,n));return{...e,x:Math.max(0,Math.min(e.x,n-t)),y:Math.max(0,e.y),w:t,...r==null?{}:{minW:r},...o==null?{}:{maxW:o}}}function Cg(e,n){return e.x<n.x+n.w&&e.x+e.w>n.x&&e.y<n.y+n.h&&e.y+e.h>n.y}function js(e,n){return!n.some(t=>Cg(e,t))}function Sg(e,n,t){const r=e.x+e.w;if(r+e.w<=t){const l={...e,x:r,y:e.y};if(js(l,n))return{x:r,y:e.y}}const o=Math.max(t-e.w,0),i=e.y+e.h,a=n.map(l=>l.y+l.h).filter(l=>l>i).sort((l,c)=>l-c),s=[i,...a];for(const l of s)for(let c=0;c<=o;c+=1){const d={...e,x:c,y:l};if(js(d,n))return{x:c,y:l}}return{x:0,y:i}}function xg(e,n,t){var i,a,s;const r=(i=e[t])==null?void 0:i.find(l=>l.i===n);if(r)return r;const o=Fn.indexOf(t);if(o!==-1){for(let l=o+1;l<Fn.length;l+=1){const c=Fn[l],d=(a=e[c])==null?void 0:a.find(u=>u.i===n);if(d)return d}for(let l=o-1;l>=0;l-=1){const c=Fn[l],d=(s=e[c])==null?void 0:s.find(u=>u.i===n);if(d)return d}}}function $s({id:e,layouts:n,initialHeight:t,y:r,x:o,w:i,minH:a,frame:s}){const l=xc(s);return lm.createFrameLayouts({id:e,layouts:n,initialHeight:t??l.initialHeight,y:r,x:o,w:i,minH:a??l.minH})}function Us(e,n){if(!n)return;const t={...n};return na.forEach(r=>{t[r]&&(t[r]=t[r].filter(o=>o.i!==e))}),t}function wg({sourceId:e,duplicatedId:n,layouts:t}){if(!t||!Fn.some(i=>{var a;return(a=t[i])==null?void 0:a.some(s=>s.i===e)}))return;const o={...t};return Object.keys(o).forEach(i=>{const a=o[i];if(!a)return;const s=[...a],l=xg(t,e,i);if(!l)return;const c=vg(l,jr[i]),d=s.filter(h=>h.i!==e&&h.i!==n),{x:u,y:f}=Sg(c,d,jr[i]);s.push({...c,i:n,x:u,y:f}),o[i]=s}),o}function Ig(e){const n=We.getState().dashboard.globalCacheConfig,{card:t,filter:r}=e;return n}const Eg=["new","edit","delete","create","update","remove"];function ao(e){const n=[],t=e.sheets||[];for(const r of t){for(const o of r.cards||[])n.push({card:o,sheet:r});for(const o of r.frames||[])for(const i of o.cards||[])n.push({card:i,sheet:r})}return n}function sa(e){return ao(e).map(n=>n.card)}function zs(e,n,t){if(t&&n===t)return!0;const r=e.sheets||[];for(const o of r){const i=o.cards||[];for(const s of i)if(s.id===n)return!1;const a=o.frames||[];for(const s of a){const l=s.cards||[];for(const c of l)if(c.id===n)return!1}}return!0}function Tg(e){return!e||e.trim().length===0?{isValid:!1,error:"Card ID cannot be empty"}:e.length<3?{isValid:!1,error:"Card ID must be at least 3 characters"}:e.length>50?{isValid:!1,error:"Card ID must be less than 50 characters"}:/^[a-zA-Z0-9-_]+$/.test(e)?/^[a-zA-Z0-9]/.test(e)?Eg.includes(e.toLowerCase())?{isValid:!1,error:`"${e}" is a reserved keyword and cannot be used`}:{isValid:!0}:{isValid:!1,error:"Card ID must start with a letter or number"}:{isValid:!1,error:"Card ID can only contain letters, numbers, hyphens, and underscores"}}function Fg(e,n){var t;return(t=wc(e,n))==null?void 0:t.card}function wc(e,n){for(const t of ao(e))if(t.card.id===n)return t}function Dg(e,n){for(const t of e.sheets||[])for(const r of t.frames||[])for(const o of r.cards||[])if(o.id===n)return{card:o,sheet:t}}function Ic(e,n){const t=le.toDate(e);return isNaN(n)?le.constructFrom(e,NaN):(n&&t.setDate(t.getDate()+n),t)}function la(e,n){const t=le.toDate(e);if(isNaN(n))return le.constructFrom(e,NaN);if(!n)return t;const r=t.getDate(),o=le.constructFrom(e,t.getTime());o.setMonth(t.getMonth()+n+1,0);const i=o.getDate();return r>=i?o:(t.setFullYear(o.getFullYear(),o.getMonth(),r),t)}function Ec(e,n){const t=+le.toDate(e);return le.constructFrom(e,t+n)}function Ei(e,n){return Ec(e,n*le.millisecondsInHour)}function Ag(e,n){return Ec(e,n*le.millisecondsInMinute)}function Rg(e,n){const t=n*3;return la(e,t)}function _g(e,n){const t=n*7;return Ic(e,t)}function Pg(e,n){return la(e,n*12)}function Og(e,n){return Ic(e,-n)}function Mg(e,n){return la(e,-n)}function Tc(e,n){return Ei(e,-n)}function Fc(e,n){return Ag(e,-n)}function Ng(e,n){return Rg(e,-n)}function kg(e,n){return _g(e,-n)}function Lg(e,n){return Pg(e,-n)}const It=(e,n)=>e.toString().padStart(n,"0"),zt=(e,n)=>{const t=le.formatInTimeZone(e,n,"yyyy-MM-dd"),[r,o,i]=t.split("-").map(a=>Number(a));return{year:r,month:o,day:i}},qt=(e,n)=>{const{year:t,month:r,day:o,hours:i=0,minutes:a=0,seconds:s=0,milliseconds:l=0}=e,c=`${It(t,4)}-${It(r,2)}-${It(o,2)}T${It(i,2)}:${It(a,2)}:${It(s,2)}.${It(l,3)}`;return le.fromZonedTime(c,n)},so=(e,n)=>new Date(Date.UTC(e,n,0)).getUTCDate(),lo=(e,n)=>{if(n===0)return e;const t=new Date(Date.UTC(e.year,e.month-1,e.day));return t.setUTCDate(t.getUTCDate()+n),{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate()}},Vg=(e,n)=>n===0?e:lo(e,n*7),Dc=(e,n)=>{if(n===0)return e;const t=new Date(Date.UTC(e.year,e.month-1,1));t.setUTCMonth(t.getUTCMonth()+n);const r=t.getUTCFullYear(),o=t.getUTCMonth()+1,i=Math.min(e.day,so(r,o));return{year:r,month:o,day:i}},Bg=(e,n)=>Dc(e,n*3),jg=(e,n)=>{if(n===0)return e;const t=e.year+n,r=Math.min(e.day,so(t,e.month));return{year:t,month:e.month,day:r}},Ac=e=>Math.floor((e-1)/3)*3+1,Ft=(e,n)=>{const t=zt(e,n);return qt(t,n)},ut=(e,n)=>{const t=zt(e,n);return qt({...t,hours:23,minutes:59,seconds:59,milliseconds:999},n)},ca=(e,n,t)=>{const r=zt(e,n);return qt(t(r),n)},da=(e,n,t)=>{const r=zt(e,n),o=qt(t(r),n);return ut(o,n)},on=(e,n,t=1)=>{const r=typeof t=="object"?t.weekStart:t,i=(Number(le.formatInTimeZone(e,n,"i"))-r+7)%7,a=zt(e,n),s=i===0?a:lo(a,-i);return qt(s,n)},Dn=(e,n,t=1)=>{const r=typeof t=="object"?t.weekStart:t,o=on(e,n,r),i=zt(o,n),a=lo(i,6),s=qt(a,n);return ut(s,n)},An=(e,n)=>ca(e,n,t=>({year:t.year,month:t.month,day:1})),Rn=(e,n)=>da(e,n,t=>({year:t.year,month:t.month,day:so(t.year,t.month)})),_n=(e,n)=>ca(e,n,t=>({year:t.year,month:Ac(t.month),day:1})),Pn=(e,n)=>da(e,n,t=>{const o=Ac(t.month)+2;return{year:t.year,month:o,day:so(t.year,o)}}),On=(e,n)=>ca(e,n,t=>({year:t.year,month:1,day:1})),Mn=(e,n)=>da(e,n,t=>({year:t.year,month:12,day:31})),er=(e,n,t,r)=>{if(r===0)return Ft(e,n);const o=zt(e,n);let i=o;switch(t){case"day":i=lo(o,r);break;case"week":i=Vg(o,r);break;case"month":i=Dc(o,r);break;case"quarter":i=Bg(o,r);break;case"year":i=jg(o,r);break}return qt(i,n)},Zt=(e,n,t)=>er(e,n,"day",t),Jt=(e,n,t)=>er(e,n,"week",t),en=(e,n,t)=>er(e,n,"month",t),tn=(e,n,t)=>er(e,n,"quarter",t),nn=(e,n,t)=>er(e,n,"year",t),$g=e=>e?typeof e=="object"&&"tz"in e?e.tz:e:Intl.DateTimeFormat().resolvedOptions().timeZone,Ug=new Set(["last","this","previous","between"]),qs=e=>`${e}`.padStart(2,"0"),co=e=>{if(!e||typeof e!="object")return!1;const n=e.mode;return typeof n=="string"&&Ug.has(n)},Rc=e=>{if(!e||typeof e!="object")return!1;const n=e;return n.mode==="fixed"&&n.unit==="month"&&typeof n.year=="number"&&Number.isInteger(n.year)&&typeof n.month=="number"&&Number.isInteger(n.month)&&n.month>=0&&n.month<=11};function ua(e,n,t=1){if(co(e))return zg(e,n,t);if(!Rc(e))return;const r=`${e.year}-${qs(e.month+1)}-01T00:00:00`,o=e.month===11?e.year+1:e.year,i=(e.month+1)%12,a=`${o}-${qs(i+1)}-01T00:00:00`,s=le.fromZonedTime(r,n),l=le.fromZonedTime(a,n),c=new Date(l.getTime()-1);return[s,c]}function zg(e,n,t=1){const r=new Date,o=le.toZonedTime(r,n),i=le.fromZonedTime(o,n);switch(e.mode){case"last":{const{n:a,unit:s,complete:l}=e;if(l)switch(s){case"day":{const c=Zt(r,n,-a),d=Zt(r,n,-1);return[Ft(c,n),ut(d,n)]}case"week":{const c=Jt(r,n,-a),d=Jt(r,n,-1);return[on(c,n,t),Dn(d,n,t)]}case"month":{const c=en(r,n,-a),d=en(r,n,-1);return[An(c,n),Rn(d,n)]}case"quarter":{const c=tn(r,n,-a),d=tn(r,n,-1);return[_n(c,n),Pn(d,n)]}case"year":{const c=nn(r,n,-a),d=nn(r,n,-1);return[On(c,n),Mn(d,n)]}}else{let c;if(s==="minute")return[Fc(r,a),r];if(s==="hour")return[Tc(r,a),r];switch(s){case"day":c=Og(o,a);break;case"week":c=kg(o,a);break;case"month":c=Mg(o,a);break;case"quarter":c=Ng(o,a);break;case"year":c=Lg(o,a);break}return[le.fromZonedTime(c,n),i]}break}case"this":{const{unit:a,toDate:s}=e;let l,c;switch(a){case"day":l=Ft(r,n),c=ut(r,n);break;case"week":l=on(r,n,t),c=Dn(r,n,t);break;case"month":l=An(r,n),c=Rn(r,n);break;case"quarter":l=_n(r,n),c=Pn(r,n);break;case"year":l=On(r,n),c=Mn(r,n);break}return s?[l,r]:[l,c]}case"previous":{const{unit:a}=e;switch(a){case"day":{const s=Zt(r,n,-1);return[Ft(s,n),ut(s,n)]}case"week":{const s=Jt(r,n,-1);return[on(s,n,t),Dn(s,n,t)]}case"month":{const s=en(r,n,-1);return[An(s,n),Rn(s,n)]}case"quarter":{const s=tn(r,n,-1);return[_n(s,n),Pn(s,n)]}case"year":{const s=nn(r,n,-1);return[On(s,n),Mn(s,n)]}}break}case"between":{const{unit:a,from:s,to:l}=e;switch(a){case"day":{const c=Zt(r,n,s),d=Zt(r,n,l);return[Ft(c,n),ut(d,n)]}case"week":{const c=Jt(r,n,s),d=Jt(r,n,l);return[on(c,n,t),Dn(d,n,t)]}case"month":{const c=en(r,n,s),d=en(r,n,l);return[An(c,n),Rn(d,n)]}case"quarter":{const c=tn(r,n,s),d=tn(r,n,l);return[_n(c,n),Pn(d,n)]}case"year":{const c=nn(r,n,s),d=nn(r,n,l);return[On(c,n),Mn(d,n)]}}break}}return[Ft(r,n),ut(r,n)]}function qg(e){if(!e)return null;for(const[o,i]of Object.entries(_c))if(Hg(i,e))return o;const n=(o,i)=>Math.abs(o)===1?i:`${i}s`,t=(o,i)=>{if(o===0)return i==="day"?"today":`this ${i}`;if(o===-1)return i==="day"?"yesterday":`last ${i}`;if(o===1)return i==="day"?"tomorrow":`next ${i}`;const a=Math.abs(o);return o<0?`${a} ${n(a,i)} ago`:`${a} ${n(a,i)} ahead`},r=o=>o.charAt(0).toUpperCase()+o.slice(1);return e.mode==="this"?`This ${e.unit}${e.toDate?" to date":""}`:e.mode==="previous"?`Last ${e.unit}`:e.mode==="last"?`Last ${e.n} ${n(e.n,e.unit)}`:e.mode==="between"?e.from===e.to?r(t(e.from,e.unit)):`${r(t(e.from,e.unit))} to ${t(e.to,e.unit)}`:null}function Hg(e,n){return!(e.mode!==n.mode||e.unit!==n.unit||e.mode==="last"&&n.mode==="last"&&(e.n!==n.n||!!e.complete!=!!n.complete)||e.mode==="this"&&n.mode==="this"&&!!e.toDate!=!!n.toDate||e.mode==="between"&&n.mode==="between"&&(e.from!==n.from||e.to!==n.to))}const _c={"Last 30 minutes":{mode:"last",n:30,unit:"minute"},"Last 1 hour":{mode:"last",n:1,unit:"hour"},"Last 4 hours":{mode:"last",n:4,unit:"hour"},"Last 12 hours":{mode:"last",n:12,unit:"hour"},"Last 24 hours":{mode:"last",n:24,unit:"hour"},Today:{mode:"this",unit:"day"},"Last 7 days":{mode:"between",unit:"day",from:-6,to:0},"Last 30 days":{mode:"between",unit:"day",from:-29,to:0},"Last 90 days":{mode:"between",unit:"day",from:-89,to:0},"This week":{mode:"this",unit:"week"},"Last week":{mode:"previous",unit:"week"},"Last 2 weeks":{mode:"last",n:2,unit:"week",complete:!0},"This month":{mode:"this",unit:"month"},"Last month":{mode:"previous",unit:"month"},"Last 3 months":{mode:"last",n:3,unit:"month",complete:!0},"Last 6 months":{mode:"last",n:6,unit:"month",complete:!0},"Last 9 months":{mode:"last",n:9,unit:"month",complete:!0},"Last 12 months":{mode:"last",n:12,unit:"month",complete:!0},"This quarter":{mode:"this",unit:"quarter"},"Last quarter":{mode:"previous",unit:"quarter"},"Last 4 quarters":{mode:"last",n:4,unit:"quarter",complete:!0},"This year":{mode:"this",unit:"year"},"Last year":{mode:"previous",unit:"year"}};function Pc(e,n){const t=n||Intl.DateTimeFormat().resolvedOptions().timeZone,r={};for(const o of e.sheets||[])for(const i of o.frames||[])for(const a of i.cards||[]){if(!a.inlineFilters||a.inlineFilters.length===0)continue;const s=[];for(const l of a.inlineFilters){if(_e(l.dataType)==="date"&&l.defaultDateFilter){const d=ua(l.defaultDateFilter,t);if(!d)continue;const[u,f]=d,h={filterId:l.id,name:l.column,operation:"between",valueType:"date",values:[u,f],dataType:l.dataType,...co(l.defaultDateFilter)?{relativeMeta:l.defaultDateFilter}:{}};s.push(h);continue}l.defaultValues&&l.defaultValues.length>0&&s.push({filterId:l.id,name:l.column,operation:l.operation,valueType:_e(l.dataType),values:l.defaultValues,dataType:l.dataType})}s.length>0&&(r[a.id]=s)}return r}const Gg=new Set(["between","not between","=","!=",">",">=","<","<=","is null","is not null"]),Wg=new Set(["between","not between","=","!=",">",">=","<","<=","in","not in","is null","is not null"]),Yg=new Set(["=","!=","in","not in","like","not like","is null","is not null"]),Kg=new Set(["=","!=","is null","is not null"]),Xg={date:Gg,number:Wg,string:Yg,boolean:Kg};function Oc(e){const n=_e(e);return n==="number"||n==="boolean"||n==="date"?n:"string"}function uo(e,n){const t=n||Intl.DateTimeFormat().resolvedOptions().timeZone,r=Oc(e.dataType);if(r==="date"&&e.defaultDateFilter){const i=ua(e.defaultDateFilter,t);if(!i)return;const[a,s]=i;return{filterId:e.id,name:e.column,operation:"between",valueType:"date",values:[a,s],dataType:e.dataType,fieldMeta:e.fieldMeta,semanticContext:e.semanticContext,...co(e.defaultDateFilter)?{relativeMeta:e.defaultDateFilter}:{}}}if(e.defaultValues&&e.defaultValues.length>0)return{filterId:e.id,name:e.column,operation:e.operation,valueType:r,values:e.defaultValues,dataType:e.dataType,fieldMeta:e.fieldMeta,semanticContext:e.semanticContext}}function Qg(e,n){return e!=null&&e.length?e.map(t=>uo(t,n)).filter(t=>!!t):[]}function fa(e,n){var r;if(e.id!==n.filterId)return!1;const t=Oc(e.dataType);return n.valueType!==t?!1:((r=Xg[t])==null?void 0:r.has(n.operation))??n.operation===e.operation}function Zg(e,n){if(!(e!=null&&e.length)||!(n!=null&&n.length))return[];const t=new Map(e.map(r=>[r.id,r]));return n.filter(r=>{const o=t.get(r.filterId);return o?fa(o,r):!1})}function Jg(e,n){const t=[...e];for(const r of n){const o=t.findIndex(i=>i.filterId===r.filterId);o>=0?t[o]=r:t.push(r)}return t}function ey(e){const{previousFilters:n,nextFilters:t,filterValues:r}=e;if(!(r!=null&&r.length))return[];const o=new Set((n||[]).map(l=>l.id)),i=new Set((t||[]).map(l=>l.id)),a=r.filter(l=>!o.has(l.filterId)&&!i.has(l.filterId)),s=Zg(t,r);return[...a,...s]}function ty(e){const{previousFilters:n,nextFilters:t,currentFilterValues:r,defaultFilterValues:o}=e,i=ey({previousFilters:n,nextFilters:t,filterValues:r}),a=new Set((n||[]).map(u=>u.id)),s=new Set((r||[]).map(u=>u.filterId)),l=new Set(i.map(u=>u.filterId)),c=new Map((t||[]).map(u=>[u.id,u])),d=o.filter(u=>{const f=c.get(u.filterId);return!f||!fa(f,u)?!1:a.has(u.filterId)?s.has(u.filterId)&&!l.has(u.filterId):!0});return Jg(d,i)}function Hn(e,n){return Object.prototype.hasOwnProperty.call(e||{},n)}function Mc(e){return e!==void 0}function pa(e){return e.initialValueStrategy==="saved_default"}function Nc(e){return e.scope==="dashboard"&&pa(e)}function kc(e){return pa(e)&&e.defaultValue!==void 0}function Lc(e){const n={...e.dashboardValues||{}};for(const t of Object.values(e.cardValuesMap||{}))Object.assign(n,t);return n}function ny(e){return ma({controls:e.controls,dashboardDefaultValues:e.defaultControlValues})}function ma(e){const n={},t=e.dashboardDefaultValues,r=Mc(t);for(const o of e.controls||[])if(Nc(o)){if(r&&Hn(t,o.id)){const i=t==null?void 0:t[o.id];i!==void 0&&(n[o.id]=i);continue}o.defaultValue!==void 0&&(n[o.id]=o.defaultValue)}return n}function ry(e){const n=ma(e);return(e.controls||[]).map(t=>{if(!Nc(t))return t;const r=Hn(n,t.id)?n[t.id]:void 0;return t.defaultValue===r?t:{...t,defaultValue:r}})}function ha(e,n){if(pa(e))return e.scope==="dashboard"&&Mc(n)&&Hn(n,e.id)?n==null?void 0:n[e.id]:e.defaultValue}function oy(e){const n={};for(const t of sa(e)){const r={};for(const o of t.controls||[])kc(o)&&(r[o.id]=o.defaultValue);Object.keys(r).length>0&&(n[t.id]=r)}return n}function Uo(e,n,t){const r=(t==null?void 0:t.hasExplicitRuntimeOverrides)===!0,o=r?{}:ny(e),i=r?{}:oy(e);if(n===void 0)return{dashboardControlValues:o,cardControlValuesMap:i};const a=new Set((e.controls||[]).map(l=>l.id)),s=new Map;for(const l of sa(e))for(const c of l.controls||[])s.set(c.id,l.id);for(const[l,c]of Object.entries(n)){if(a.has(l)){c===void 0?delete o[l]:o[l]=c;continue}const d=s.get(l);d&&(i[d]||(i[d]={}),c===void 0?(delete i[d][l],Object.keys(i[d]).length===0&&delete i[d]):i[d][l]=c)}return{dashboardControlValues:o,cardControlValuesMap:i}}function iy(e){var t,r;const n={};for(const o of e.relevantControlIds){if(Hn(e.cardValues,o)){n[o]=(t=e.cardValues)==null?void 0:t[o];continue}Hn(e.dashboardValues,o)&&(n[o]=(r=e.dashboardValues)==null?void 0:r[o])}return n}function ay(e){const n={};for(const t of e.nextControls){const r=e.renamed&&t.id===e.renamed.newId?e.renamed.oldId:t.id;if(Object.prototype.hasOwnProperty.call(e.previousValues,r)){n[t.id]=e.previousValues[r];continue}const o=ha(t,e.nextDefaultValues);o!==void 0&&(n[t.id]=o)}return n}function sy(e){const n={};for(const t of e.nextControls){const r=e.renamed&&t.id===e.renamed.newId?e.renamed.oldId:t.id;if(e.previousValues&&Object.prototype.hasOwnProperty.call(e.previousValues,r)){n[t.id]=e.previousValues[r];continue}kc(t)&&(n[t.id]=t.defaultValue)}return n}function Vc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ly(e,n){return e&&n.reduce((t,r)=>{const o=new RegExp(`\\[\\[\\s*param\\.${Vc(r)}\\s*\\]\\]`,"g");return t.replace(o,"NULL")},e)}function cy(e,n){return(e||[]).some(t=>t.target==="sql_param"&&t.paramId===n)}function dy(e,n,t){return!e||e.length===0?e:e.map(r=>r.controlId===n?{...r,controlId:t}:r)}function uy(e,n){return!e||e.length===0?e:e.filter(t=>t.controlId!==n)}function fy(e,n,t){if(!e)return e;const r=new RegExp(`\\[\\[\\s*param\\.${Vc(n)}\\s*\\]\\]`,"g");return e.replace(r,`[[param.${t}]]`)}function Bc(e,n){if(n.type==="rename"){const t=dy(e.controlBindings,n.oldId,n.newId),r=cy(e.controlBindings,n.oldId)?e.sql:fy(e.sql,n.oldId,n.newId);return{...e,controlBindings:t,sql:r}}return{...e,controlBindings:uy(e.controlBindings,n.controlId),sql:ly(e.sql,[n.controlId,...(e.controlBindings||[]).filter(t=>t.target==="sql_param"&&t.controlId===n.controlId).map(t=>t.paramId)])}}function py(e,n){const t=new Set((e.controls||[]).map(r=>r.id));return n.type==="rename"?!t.has(n.oldId)&&!t.has(n.newId):!t.has(n.controlId)}function jc(e,n){return e&&e.map(t=>py(t,n)?Bc(t,n):t)}function my(e,n){return e&&e.map(t=>({...t,cards:jc(t.cards,n)||[]}))}function hy(e,n){return{...e,sheets:(e.sheets||[]).map(t=>({...t,cards:jc(t.cards,n),frames:my(t.frames,n)}))}}function gy(e,n,t){const r=new Set((t==null?void 0:t.affectedControlIds)||[]),o=(a,s)=>s?[...(a||[]).filter(c=>!r.has(c.controlId)&&!s.some(d=>d.controlId===c.controlId&&d.target===c.target)),...s]:(a||[]).filter(c=>!r.has(c.controlId)),i=a=>Object.prototype.hasOwnProperty.call(n,a.id)?{...a,controlBindings:o(a.controlBindings,n[a.id])}:a;return{...e,sheets:(e.sheets||[]).map(a=>({...a,cards:(a.cards||[]).map(i),frames:(a.frames||[]).map(s=>({...s,cards:(s.cards||[]).map(i)}))}))}}function $c(e){if(e.type==="model")return`${Br}.${e.name}`;if(e.type==="dataset"){if(e.database&&e.schema)return`${e.database}.${e.schema}.${e.name}`;if(e.schema)return`${e.schema}.${e.name}`;if(e.database)return`${e.database}.${e.name}`}if(yc.includes(e.type)){if(e.database&&e.schema)return`${e.database}.${e.schema}.${e.name}`;if(e.schema)return`${e.schema}.${e.name}`;if(e.database)return`${e.database}.${e.name}`}return e.name}function yy(e){return Array.isArray(e)?e.reduce((n,t)=>t.role!=="assistant"?(n.push(t),n):t.parts.some(o=>{var i;return!!(o.type==="reasoning"&&o.state==="streaming"||o.type==="text"&&o.state==="streaming"||(i=o.type)!=null&&i.startsWith("tool-")&&o.state==="input-streaming")})?(console.log("Removing aborted assistant message:",t.id),n):(n.push(t),n),[]):e}function ga(e){const{selectedEntities:n}=e,t=n.map(r=>({...r,qualifiedEntityName:$c(r)}));return{...e,selectedEntities:t}}const Hs={selectedEntities:[]};function by(e){var n;return ga({selectedEntities:e.selectedEntities,fileAttachments:(n=e.fileAttachments)==null?void 0:n.map(({data:t,preview:r,...o})=>o)})}const Se=Ut()(to((e,n)=>({currentAIContext:Hs,hasEditorEntitySelectionOverride:!1,activeAssistantType:null,dashboardEntitySelectionOverrides:{},pendingDashboardDraftMigration:null,assistantMessageContexts:{},reasoningEffort:"low",showReasoning:!1,messageQueues:{dashboard:[],editor:[]},fileAttachments:{dashboard:[],editor:[]},uploadProgress:new Map,actions:{setCurrentAIContext:t=>{e(r=>{r.currentAIContext=ga(t)})},setHasEditorEntitySelectionOverride:t=>{e(r=>{r.hasEditorEntitySelectionOverride=t})},setActiveAssistantType:t=>{e(r=>{r.activeAssistantType=t})},updateSelectedEntities:t=>{e(r=>{r.currentAIContext.selectedEntities=t})},setDashboardEntitySelectionOverride:(t,r)=>{e(o=>{o.dashboardEntitySelectionOverrides[t]=r})},clearDashboardEntitySelectionOverride:t=>{e(r=>{delete r.dashboardEntitySelectionOverrides[t]})},setPendingDashboardDraftMigration:t=>{e(r=>{r.pendingDashboardDraftMigration=t})},setPendingDashboardDraftMigrationExpectedDashboardId:t=>{e(r=>{r.pendingDashboardDraftMigration&&(r.pendingDashboardDraftMigration.expectedDashboardId=t)})},clearPendingDashboardDraftMigration:()=>{e(t=>{t.pendingDashboardDraftMigration=null})},setAssistantMessageContext:(t,r)=>{e(o=>{o.assistantMessageContexts[t]=by(r)})},clearAssistantMessageContext:t=>{e(r=>{delete r.assistantMessageContexts[t]})},clearAssistantMessageContexts:t=>{e(r=>{if(!t||t.length===0){r.assistantMessageContexts={};return}t.forEach(o=>{delete r.assistantMessageContexts[o]})})},clearAIContext:()=>{e(t=>{t.currentAIContext=Hs,t.hasEditorEntitySelectionOverride=!1,t.dashboardEntitySelectionOverrides={},t.pendingDashboardDraftMigration=null,t.assistantMessageContexts={}})},mergeAIContext:t=>{e(r=>{r.currentAIContext={...r.currentAIContext,...t}})},setReasoningEffort:t=>{e(r=>{r.reasoningEffort=t})},setShowReasoning:t=>{e(r=>{r.showReasoning=t})},queueMessage:(t,r,o)=>{e(i=>{i.messageQueues[t].push({id:crypto.randomUUID(),text:r,timestamp:Date.now(),fileAttachments:o})})},dequeueMessage:t=>{if(n().messageQueues[t].length===0)return;let o;return e(i=>{const a=i.messageQueues[t].shift();a&&(o={id:a.id,text:a.text,timestamp:a.timestamp})}),o},removeFromQueue:(t,r)=>{e(o=>{o.messageQueues[t]=o.messageQueues[t].filter(i=>i.id!==r)})},clearQueue:t=>{e(r=>{r.messageQueues[t]=[]})},addFileAttachment:(t,r)=>{e(o=>{o.fileAttachments[t].push(r)})},removeFileAttachment:(t,r)=>{e(o=>{o.fileAttachments[t]=o.fileAttachments[t].filter(i=>i.id!==r)})},clearFileAttachments:t=>{e(r=>{r.fileAttachments[t]=[]})},updateUploadProgress:(t,r)=>{e(o=>{o.uploadProgress.set(t,r)})},getFileAttachments:t=>n().fileAttachments[t]}}))),vy=()=>Se(e=>e.currentAIContext),Cy=()=>Se(e=>e.activeAssistantType),Sy=e=>Se(n=>e?n.assistantMessageContexts[e]:void 0),xy=()=>Se(e=>e.actions),wy=e=>Se(n=>n.messageQueues[e]),Iy=()=>Se(ro(e=>({queueMessage:e.actions.queueMessage,dequeueMessage:e.actions.dequeueMessage,removeFromQueue:e.actions.removeFromQueue,clearQueue:e.actions.clearQueue}))),Ey=e=>Se(n=>n.fileAttachments[e]),Ty=()=>Se(ro(e=>({addFileAttachment:e.actions.addFileAttachment,removeFileAttachment:e.actions.removeFileAttachment,clearFileAttachments:e.actions.clearFileAttachments,updateUploadProgress:e.actions.updateUploadProgress,getFileAttachments:e.actions.getFileAttachments}))),Fy={},Ti={},Dy=e=>({updatePageSize:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,pageSize:n}}}}}),updateColumnSettingsMap:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,columnSettingsMap:n}}}}}),updateTableBaseFormatting:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,baseFormatting:n}}}}}),updateTableConditionalFormatting:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,conditionalFormatting:n}}}}}),updateColumnSizing:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,columnSizing:n}}}}}),updateColumnVisibility:(n,t)=>e(r=>{var a,s,l,c,d,u;const i={...((l=(s=(a=r.card)==null?void 0:a.preferences)==null?void 0:s.tablePrefs)==null?void 0:l.columnVisibility)||{},[n]:t};return{card:{...r.card,preferences:{...(c=r.card)==null?void 0:c.preferences,tablePrefs:{...(u=(d=r.card)==null?void 0:d.preferences)==null?void 0:u.tablePrefs,columnVisibility:i}}}}}),showAllColumns:()=>e(n=>{var i,a,s,l,c,d;const t=((s=(a=(i=n.card)==null?void 0:i.preferences)==null?void 0:a.tablePrefs)==null?void 0:s.columnVisibility)||Ti,r=Object.keys(t);if(r.length===0)return n;const o={};return r.forEach(u=>{o[u]=!0}),{card:{...n.card,preferences:{...(l=n.card)==null?void 0:l.preferences,tablePrefs:{...(d=(c=n.card)==null?void 0:c.preferences)==null?void 0:d.tablePrefs,columnVisibility:o}}}}}),hideAllColumns:()=>e(n=>{var i,a,s,l,c,d;const t=((s=(a=(i=n.card)==null?void 0:i.preferences)==null?void 0:a.tablePrefs)==null?void 0:s.columnVisibility)||Ti,r=Object.keys(t);if(r.length===0)return n;const o={};return r.forEach(u=>{o[u]=!1}),{card:{...n.card,preferences:{...(l=n.card)==null?void 0:l.preferences,tablePrefs:{...(d=(c=n.card)==null?void 0:c.preferences)==null?void 0:d.tablePrefs,columnVisibility:o}}}}}),toggleSelectColumn:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,selectColumnVisible:n}}}}}),initializeColumnVisibility:n=>e(t=>{var o,i,a;const r={};return n.forEach(s=>{r[s]=!0}),{card:{...t.card,preferences:{...(o=t.card)==null?void 0:o.preferences,tablePrefs:{...(a=(i=t.card)==null?void 0:i.preferences)==null?void 0:a.tablePrefs,columnVisibility:r}}}}}),updateAllColumnVisibility:n=>typeof n=="function"?(console.error("Function updater received instead of visibility object - ignoring"),e(t=>t)):e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,columnVisibility:n}}}}})});function Ay(e){var t,r;const n=(r=(t=e==null?void 0:e.preferences)==null?void 0:t.textVisualOptions)==null?void 0:r.content;return Array.isArray(n)&&n.length>0}function ya(e){var n;return!!((n=e==null?void 0:e.description)!=null&&n.trim())||Ay(e)}function ba(e){var n,t;return!e||e.type!=="text"?!1:!!((n=e.sql)!=null&&n.trim()||(t=e.python)!=null&&t.trim()||Hl.hasValidCardConfig(e.config))}function Ry(e){var n,t;return!e||e.type!=="text"?!1:((t=(n=e.preferences)==null?void 0:n.textVisualOptions)==null?void 0:t.isDynamicText)===!0?!0:ba(e)&&!ya(e)}function _y(e){var n,t;return!e||e.type!=="text"?!1:ba(e)&&(((t=(n=e.preferences)==null?void 0:n.textVisualOptions)==null?void 0:t.isDynamicText)===!0||!ya(e))}const Py=/^\(?\s*\{[\s\S]*\}\s*\)?$/,Oy=[{pattern:/\bfetch\s*\(/i,message:"Visual code must not fetch external data."},{pattern:/\bXMLHttpRequest\b/i,message:"Visual code must not use XMLHttpRequest."},{pattern:/\bWebSocket\b/i,message:"Visual code must not use WebSocket."},{pattern:/\bimport\s*\(/i,message:"Visual code must not use dynamic imports."},{pattern:/<script[\s>]|<\/script>|<!DOCTYPE|<html[\s>]|<body[\s>]/i,message:"Visual code must be renderer code only, not an HTML document."},{pattern:/\bcreateElement\s*\(\s*['"]script['"]\s*\)/i,message:"Visual code must not create script elements at runtime."},{pattern:/\bimportScripts\s*\(/i,message:"Visual code must not import external scripts."}];function Uc(e){return e.visualizationMode??"builtin"}function zc(e){return Uc(e)==="dynamic"}function My(e){return e.type==="custom"}function Ny(e,n){return n?{...e,settings:n}:e}function ky(e,n){const t=n.selectedConnectionId||e.connectionId||"";if(!e.dataSource){if(!t)return;const r=n.selectedDatabaseName||e.lastSelectedDatabase,o=n.selectedSchemaName||e.lastSelectedSchema,i=n.selectedTableName||e.lastSelectedTable;return{connectionId:t,connectionType:"",mode:"database",selectedEntities:[],...r&&o&&i?{dbSelection:{database:r,schema:o,entityType:"table"}}:{}}}return{...e.dataSource,connectionId:n.selectedConnectionId||e.dataSource.connectionId||e.connectionId||""}}function Ly(e){var n,t,r,o;return{showChrome:(t=(n=e.preferences)==null?void 0:n.displayOptions)==null?void 0:t.showChrome,allowScroll:(o=(r=e.preferences)==null?void 0:r.displayOptions)==null?void 0:o.allowScroll}}function Vy(e){var n,t;return(((n=e.dynamicCardPreferences)==null?void 0:n.provenance)==="card-config"||((t=e.dynamicCardPreferences)==null?void 0:t.provenance)==="query_spec")&&!!e.config}function By(e){var n,t,r,o;return((t=(n=e.dynamicCardPreferences)==null?void 0:n.fallback)==null?void 0:t.mode)==="table"&&!e.dynamicCardPreferences.fallback.chartType?"table":((o=(r=e.dynamicCardPreferences)==null?void 0:r.fallback)==null?void 0:o.chartType)||e.type}function qc(e,n="Fallback to the underlying built-in visual"){return{mode:e==="table"||e==="detailTable"?"table":"chart",chartType:e,reason:n}}function Hc(e,n){return{renderer:"dynamic-visual",builtinDisplayOptions:n,fallback:qc(e)}}function Gc(e){var o,i,a,s,l,c,d,u,f,h,y,m,b,C;const n=(o=e.dynamicCardPreferences)==null?void 0:o.builtinDisplayOptions;if(!n)return((a=(i=e.preferences)==null?void 0:i.displayOptions)==null?void 0:a.showChrome)!==!1||((l=(s=e.preferences)==null?void 0:s.displayOptions)==null?void 0:l.allowScroll)!==!1?e:{...e,preferences:{...e.preferences,displayOptions:{...e.preferences.displayOptions,showChrome:!0,allowScroll:!0}}};const t=n.showChrome??((d=(c=e.preferences)==null?void 0:c.displayOptions)==null?void 0:d.showChrome),r=n.allowScroll??((f=(u=e.preferences)==null?void 0:u.displayOptions)==null?void 0:f.allowScroll);return t===((y=(h=e.preferences)==null?void 0:h.displayOptions)==null?void 0:y.showChrome)&&r===((b=(m=e.preferences)==null?void 0:m.displayOptions)==null?void 0:b.allowScroll)?e:{...e,preferences:{...e.preferences,displayOptions:{...(C=e.preferences)==null?void 0:C.displayOptions,showChrome:t,allowScroll:r}}}}function jy(e,n,t){var r;return{...Hc(e.type,Ly(e)),...e.dynamicCardPreferences,renderer:"dynamic-visual",artifactId:(t==null?void 0:t.artifactId)||((r=e.dynamicCardPreferences)==null?void 0:r.artifactId)||e.id,title:(t==null?void 0:t.title)||e.title,rendererCode:n}}function $y(e,n,t){return n==="dynamic"&&(t!=null&&t.rendererCode)?{...e,visualizationMode:"dynamic",dynamicCardPreferences:jy(e,t.rendererCode,{artifactId:t.artifactId,title:t.title})}:{...Gc(e),visualizationMode:"builtin",dynamicCardPreferences:void 0}}function Uy(e){return{...e,type:By(e),visualizationMode:"builtin"}}function zy(e,{isDevMode:n,cardSql:t,isShowingVisual:r,selectedSchemaName:o,selectedDatamodelId:i,selectedDatabaseName:a,selectedTableName:s,selectedConnectionId:l,remoteChartSettings:c,stripConfig:d}){const u=Vy(e),f=n&&!u,h=!n&&_y(e),y=f||h;return{...e,dataSource:ky(e,{selectedConnectionId:l,selectedDatabaseName:a,selectedSchemaName:o,selectedTableName:s}),lastSelectedSchema:o,lastSelectedDatamodelId:i,lastSelectedDatabase:a,lastSelectedTable:s,connectionId:l||e.connectionId,sql:y?t||e.sql:void 0,python:y?e.python:void 0,config:f||!e.config?void 0:d(e.config),customCfg:r?e.customCfg:null,preferences:e.preferences,customCardPreferences:Ny(e.customCardPreferences,c)}}function Wc(e){return String(e||"").trim().replace(/;+\s*$/,"")}function qy(e){let n=e.trim();for(;n.startsWith("(")&&n.endsWith(")")&&Hy(n);)n=n.slice(1,-1).trim();return n}function Hy(e){let n=0;for(let t=0;t<e.length;t+=1){const r=e[t];if(r==="("){n+=1;continue}if(r===")"&&(n-=1,n===0&&t<e.length-1||n<0))return!1}return n===0}function Yc(e,n,t){let r=n+1;for(;r<e.length;){const o=e[r];if(o==="\\"){r+=2;continue}if(t==="`"&&o==="$"&&e[r+1]==="{"){r=Qc(e,r+1,"{","}")+1;continue}if(o===t)return r;r+=1}return e.length-1}function Kc(e,n){let t=n+2;for(;t<e.length&&e[t]!==`
56
+ `);const g=C.state[s];if(g==null)return;JSON.stringify(o.getState())!==JSON.stringify(g)&&h(g);return}Ms(o)&&o.dispatch(C)});case"DISPATCH":switch(m.payload.type){case"RESET":return h(y),s===void 0?d==null?void 0:d.init(o.getState()):d==null?void 0:d.init(gr(l.name));case"COMMIT":if(s===void 0){d==null||d.init(o.getState());return}return d==null?void 0:d.init(gr(l.name));case"ROLLBACK":return jo(m.state,C=>{if(s===void 0){h(C),d==null||d.init(o.getState());return}h(C[s]),d==null||d.init(gr(l.name))});case"JUMP_TO_STATE":case"JUMP_TO_ACTION":return jo(m.state,C=>{if(s===void 0){h(C);return}JSON.stringify(o.getState())!==JSON.stringify(C[s])&&h(C[s])});case"IMPORT_STATE":{const{nextLiftedState:C}=m.payload,g=(b=C.computedStates.slice(-1)[0])==null?void 0:b.state;if(!g)return;h(s===void 0?g:g[s]),d==null||d.send(null,C);return}case"PAUSE_RECORDING":return f=!f}return}}),y},oc=nh,jo=(e,n)=>{let t;try{t=JSON.parse(e)}catch(r){console.error("[zustand devtools middleware] Could not parse the received json",r)}t!==void 0&&n(t)};function rh(e,n){let t;try{t=e()}catch{return}return{getItem:o=>{var i;const a=l=>l===null?null:JSON.parse(l,void 0),s=(i=t.getItem(o))!=null?i:null;return s instanceof Promise?s.then(a):a(s)},setItem:(o,i)=>t.setItem(o,JSON.stringify(i,void 0)),removeItem:o=>t.removeItem(o)}}const Ci=e=>n=>{try{const t=e(n);return t instanceof Promise?t:{then(r){return Ci(r)(t)},catch(r){return this}}}catch(t){return{then(r){return this},catch(r){return Ci(r)(t)}}}},oh=(e,n)=>(t,r,o)=>{let i={storage:rh(()=>window.localStorage),partialize:b=>b,version:0,merge:(b,C)=>({...C,...b}),...n},a=!1,s=0;const l=new Set,c=new Set;let d=i.storage;if(!d)return e((...b)=>{console.warn(`[zustand persist middleware] Unable to update item '${i.name}', the given storage is currently unavailable.`),t(...b)},r,o);const u=()=>{const b=i.partialize({...r()});return d.setItem(i.name,{state:b,version:i.version})},f=o.setState;o.setState=(b,C)=>(f(b,C),u());const h=e((...b)=>(t(...b),u()),r,o);o.getInitialState=()=>h;let y;const m=()=>{var b,C;if(!d)return;const g=++s;a=!1,l.forEach(S=>{var x;return S((x=r())!=null?x:h)});const v=((C=i.onRehydrateStorage)==null?void 0:C.call(i,(b=r())!=null?b:h))||void 0;return Ci(d.getItem.bind(d))(i.name).then(S=>{if(S)if(typeof S.version=="number"&&S.version!==i.version){if(i.migrate){const x=i.migrate(S.state,S.version);return x instanceof Promise?x.then(I=>[!0,I]):[!0,x]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}else return[!1,S.state];return[!1,void 0]}).then(S=>{var x;if(g!==s)return;const[I,E]=S;if(y=i.merge(E,(x=r())!=null?x:h),t(y,!0),I)return u()}).then(()=>{g===s&&(v==null||v(r(),void 0),y=r(),a=!0,c.forEach(S=>S(y)))}).catch(S=>{g===s&&(v==null||v(void 0,S))})};return o.persist={setOptions:b=>{i={...i,...b},b.storage&&(d=b.storage)},clearStorage:()=>{d==null||d.removeItem(i.name)},getOptions:()=>i,rehydrate:()=>m(),hasHydrated:()=>a,onHydrate:b=>(l.add(b),()=>{l.delete(b)}),onFinishHydration:b=>(c.add(b),()=>{c.delete(b)})},i.skipHydration||m(),y||h},ih=oh,Ns=e=>Symbol.iterator in e,ks=e=>"entries"in e,Ls=(e,n)=>{const t=e instanceof Map?e:new Map(e.entries()),r=n instanceof Map?n:new Map(n.entries());if(t.size!==r.size)return!1;for(const[o,i]of t)if(!r.has(o)||!Object.is(i,r.get(o)))return!1;return!0},ah=(e,n)=>{const t=e[Symbol.iterator](),r=n[Symbol.iterator]();let o=t.next(),i=r.next();for(;!o.done&&!i.done;){if(!Object.is(o.value,i.value))return!1;o=t.next(),i=r.next()}return!!o.done&&!!i.done};function sh(e,n){return Object.is(e,n)?!0:typeof e!="object"||e===null||typeof n!="object"||n===null||Object.getPrototypeOf(e)!==Object.getPrototypeOf(n)?!1:Ns(e)&&Ns(n)?ks(e)&&ks(n)?Ls(e,n):ah(e,n):Ls({entries:()=>Object.entries(e)},{entries:()=>Object.entries(n)})}function ro(e){const n=Ie.useRef(void 0);return t=>{const r=e(t);return sh(n.current,r)?n.current:n.current=r}}let yr;const lh=new Uint8Array(16);function ch(){if(!yr&&(yr=typeof crypto<"u"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto),!yr))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return yr(lh)}const ge=[];for(let e=0;e<256;++e)ge.push((e+256).toString(16).slice(1));function dh(e,n=0){return ge[e[n+0]]+ge[e[n+1]]+ge[e[n+2]]+ge[e[n+3]]+"-"+ge[e[n+4]]+ge[e[n+5]]+"-"+ge[e[n+6]]+ge[e[n+7]]+"-"+ge[e[n+8]]+ge[e[n+9]]+"-"+ge[e[n+10]]+ge[e[n+11]]+ge[e[n+12]]+ge[e[n+13]]+ge[e[n+14]]+ge[e[n+15]]}const uh=typeof crypto<"u"&&crypto.randomUUID&&crypto.randomUUID.bind(crypto),Vs={randomUUID:uh};function Je(e,n,t){if(Vs.randomUUID&&!e)return Vs.randomUUID();e=e||{};const r=e.random||(e.rng||ch)();return r[6]=r[6]&15|64,r[8]=r[8]&63|128,dh(r)}function fh(e){var r;if(!(e!=null&&e.length))return;const n=new Map;for(const o of e)for(const i of o.filterGroups)for(const a of i.filters){if(!((r=a.field)!=null&&r.id))continue;const s=a.field.id;n.has(s)||n.set(s,[]),n.get(s).push({field:a.field,value:a.value})}const t=[];for(const[o,i]of n.entries())if(i.length===1){const a=i[0];t.push({id:Je(),logicalOperator:"AND",negate:!1,conditions:[{id:Je(),field:a.field,operator:"=",value:a.value}],groups:[]})}else{const a=i[0].field,l=i.map(c=>c.value).map(c=>({id:Je(),field:a,operator:"=",value:c}));t.push({id:Je(),logicalOperator:"OR",negate:!1,conditions:l,groups:[]})}if(t.length!==0)return{id:Je(),logicalOperator:"AND",negate:!1,conditions:[],groups:t}}function ph(e){const n=e.filter(Boolean);if(n.length!==0)return n.length===1?n[0]:{id:Je(),logicalOperator:"AND",negate:!1,conditions:[],groups:n}}function mh(e){if(!e)return;const n=t=>({logicalOperator:t.logicalOperator,negate:t.negate,conditions:t.conditions.map(r=>({field:r.field.id,operator:r.operator,value:r.value})),groups:t.groups.map(n)});return JSON.stringify(n(e))}const ic=Ut((e,n)=>({context:null,setContext:t=>e({context:t}),appendCondition:t=>{const r=n().context;r&&e({context:{...r,type:"multiClick",conditions:[...r.conditions,t]}})},clear:()=>e({context:null})}));function _t(e){return e?e.interactions||[]:[]}function hh({intent:e,card:n}){var i,a,s;const t=ic.getState().context;if(!t||!((i=t.conditions)!=null&&i.length))return;const r={sourceCardId:t.cardId,filterGroups:[{filters:t.conditions}],metric:t.metric},o=n==null?void 0:n.interactionConfig;switch(e.mode){case"clickFilter":{const l=_t(o),c={conditions:t.conditions,metrics:t.metric?[t.metric]:void 0},d=Fh(l,c);return!d||d.mode!=="clickFilter"?void 0:{interactionMode:"clickFilter",...r,applyToCardIds:d.applyToCardIds,excludeCardIds:d.excludeCardIds}}case"drillDown":{const l=(a=o==null?void 0:o.drillHierarchies)==null?void 0:a.find(c=>c.id===e.hierarchyId);return l?{interactionMode:"drillDown",...r,hierarchyId:l.id,toField:e.drillField}:void 0}case"dynamicDrill":return{interactionMode:"dynamicDrill",...r,toField:e.drillField};case"drillToDetail":{const c=_t(o).find(d=>d.mode==="drillToDetail");return!c||c.mode!=="drillToDetail"||!((s=c.detailFields)!=null&&s.length)||!c.targetInsightId?void 0:{interactionMode:"drillToDetail",...r,detailFields:c.detailFields,sortBy:c.sortBy,limit:c.limit,targetInsightId:c.targetInsightId,contextMode:c.contextMode,displayMode:c.displayMode}}case"drillToURL":{const c=_t(o).find(d=>d.mode==="drillToURL");return!c||c.mode!=="drillToURL"||!c.urlTemplate?void 0:{interactionMode:"drillToURL",...r,url:c.urlTemplate}}case"drillThrough":{const c=_t(o).find(d=>d.mode==="drillThrough");return!c||c.mode!=="drillThrough"||!c.targetDashboardId?void 0:{interactionMode:"drillThrough",...r,targetDashboardId:c.targetDashboardId}}case"inlineDrill":return{interactionMode:"inlineDrill",...r,fetchMode:"lazy",inlineLimit:10};default:return}}const ac=["year","quarter","month","week","day"],gh=[...ac,"hour","minute","second"];function yh(e){const t=(wh(e)?gh:ac).map(r=>({field:{...e,id:`${e.id}_${r}`,granularity:r,label:Bs(r),dateFormat:Sh(r)},mode:"drillDown",label:`Drill to ${Bs(r)}`,retainFilters:!0}));return{id:`auto_date_${e.id}`,label:`${e.label}`,type:"date",steps:t,default:!0,baseField:e}}function bh(e,n=[]){return Ch(e)?!vh(e.id,n):!1}function vh(e,n){return n.find(t=>t.id===`auto_date_${e}`?!0:t.steps.some(r=>{const o=r.field.id;return o===e||o.startsWith(`${e}_`)}))}function Ch(e){return!!(xh(e)||e.granularity)}function Sh(e){return{year:"YYYY",quarter:"YYYY-Q1",month:"MMM YYYY",week:"YYYY-WW",day:"MMM DD, YYYY",hour:"YYYY-MM-DD HH:mm",minute:"YYYY-MM-DD HH:mm",second:"YYYY-MM-DD HH:mm:ss"}[e]}function Xi(e,n){const t=e.steps.map(a=>a.field.granularity).filter(a=>!!a);if(t.length===0)return;if(!n){const a=t[0];return a?e.steps.find(s=>s.field.granularity===a):void 0}const r=t.indexOf(n);if(r<0)return;const o=t[r+1];return o?e.steps.find(a=>a.field.granularity===o):void 0}function Qi(e,n,t){var i,a;if(t&&t.length>0)return t[t.length-1].granularity;const r=e.baseField;if(!r)return;const o=(a=(i=n.config)==null?void 0:i.groupByColumns)==null?void 0:a.find(s=>s.id===r.id?!0:s.qualifiedFieldName&&r.qualifiedFieldName?s.qualifiedFieldName===r.qualifiedFieldName:s.name&&r.name?s.name===r.name:!1);return o==null?void 0:o.granularity}function Bs(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function xh(e){const n=Qr.normalizeAnalyticsCatalogDataType(e.dataType);return n==="date"||n==="datetime"}function wh(e){return Qr.normalizeAnalyticsCatalogDataType(e.dataType)==="datetime"}function sc(e,n,t,r=!0){let o=e;return n.forEach(i=>{const a=Ih(i,t),s=`{{${i.id}}}`,l=r?encodeURIComponent(String(a)):String(a);o=o.replace(new RegExp(s,"g"),l)}),o}function Ih(e,n){if(e.category==="identifier")switch(e.id){case"card_id":return n.cardId||"";case"frame_id":return n.frameId||"";case"sheet_id":return n.sheetId||"";default:return console.warn(`Unknown identifier parameter: ${e.id}`),""}if(e.category==="attribute"&&e.field){const t=n.clickedValues.find(r=>r.field.id===e.field.id);return t?t.value:(console.warn(`Attribute parameter "${e.id}" (field: ${e.field.id}) not found in clicked values`),"")}return console.warn(`Cannot resolve parameter: ${e.id}`),""}function Eh(e){const n=[];if(!e||e.trim()==="")return n.push("URL template cannot be empty"),{valid:!1,errors:n};const t=(e.match(/\{\{/g)||[]).length,r=(e.match(/\}\}/g)||[]).length;t!==r&&n.push("Unclosed parameter placeholders ({{ or }})"),e.match(new RegExp("(?<!\\{)\\{(?!\\{)|(?<!\\})\\}(?!\\})","g"))&&n.push("Invalid placeholder syntax (use {{param_id}}, not {param_id})");const i=e.replace(/\{\{[^}]+\}\}/g,"VALUE");try{new URL(i)}catch{n.push("Invalid URL structure")}return{valid:n.length===0,errors:n}}function br(e){return typeof e=="string"&&e.trim().length>0}function Zi(e){if(!(e!=null&&e.trigger)||!(e!=null&&e.mode))return!1;switch(e.mode){case"drillDown":return br(e.hierarchyId);case"dynamicDrill":return Array.isArray(e.availableFields)&&e.availableFields.length>0;case"drillThrough":return br(e.targetDashboardId);case"drillToDetail":return br(e.targetInsightId);case"drillToURL":return br(e.urlTemplate);case"clickFilter":case"inlineDrill":case"drillUp":return!0;default:return!1}}function Th(e){return e.filter(n=>Zi(n))}function Si(e,n){if(n.type==="metric")return e;if(n.type==="attribute"){const t=e.find(r=>r.field.id===n.field.id);return t?[t]:[]}return e}function Ji(e,n){var o,i;const t=e.filter(a=>Zi(a));if(t.length===0)return[];const r=[];for(const a of t){if(!a.trigger)continue;const{trigger:s}=a;if(s.type==="metric"&&((o=n.metrics)!=null&&o.length)&&n.metrics[0].field.id===s.field.id){r.push(a);continue}s.type==="attribute"&&((i=n.conditions)!=null&&i.length)&&n.conditions.find(c=>c.field.id===s.field.id)&&r.push(a)}return r}function Fh(e,n){const t=Ji(e,n);return t.length>0?t[0]:null}function ft(e,n){if(e.sourceCardId!==n.sourceCardId||!Array.isArray(e.filterGroups)||!Array.isArray(n.filterGroups)||e.filterGroups.length!==n.filterGroups.length)return!1;const t=a=>a.filters.map(s=>({fieldId:s.field.id,value:String(s.value),operator:s.operator??"="})).sort((s,l)=>s.fieldId!==l.fieldId?s.fieldId.localeCompare(l.fieldId):s.value.localeCompare(l.value)),r=a=>a.map(t).sort((s,l)=>{const c=s.map(u=>`${u.fieldId}:${u.value}`).join("|"),d=l.map(u=>`${u.fieldId}:${u.value}`).join("|");return c.localeCompare(d)}),o=r(e.filterGroups),i=r(n.filterGroups);return o.every((a,s)=>{const l=i[s];return a.length!==l.length?!1:a.every((c,d)=>{const u=l[d];return c.fieldId===u.fieldId&&c.value===u.value&&c.operator===u.operator})})}function Dh(e,n,t,r,o,i,a){var b,C,g,v,S,x,I;const s=_t(n.interactionConfig),l=Ji(s,e),c=l.some(E=>E.mode==="dynamicDrill");if((l.length>1||c)&&i)return i(l,e,a),!0;const d=l.length>0?l[0]:null;if(!d)return!1;if(d&&d.mode!=="clickFilter"){const F=[{filters:d.trigger?Si(e.conditions,d.trigger):e.conditions}];let T;if(d.mode==="drillToDetail")T={interactionMode:"drillToDetail",sourceCardId:n.id,filterGroups:F,metric:(b=e.metrics)==null?void 0:b[0],detailFields:d.detailFields||[],sortBy:d.sortBy,limit:d.limit,detailTitle:d.label,targetInsightId:d.targetInsightId,contextMode:d.contextMode,displayMode:d.displayMode};else if(d.mode==="drillDown"){const D=(g=(C=n.interactionConfig)==null?void 0:C.drillHierarchies)==null?void 0:g.find(A=>A.id===d.hierarchyId);if(D){const _=Ee.getState().interactionStates[n.id],O=(_==null?void 0:_.breadcrumbs)||[],B=O.length;let G;if(D.type==="date"||D.baseField){const N=Qi(D,n,O);G=Xi(D,N)}else G=D.steps[B];G&&(T={interactionMode:"drillDown",sourceCardId:n.id,hierarchyId:D.id,filterGroups:F,metric:(v=e.metrics)==null?void 0:v[0],toField:G.field,granularity:G.field.granularity})}}else if(d.mode==="drillThrough")T={interactionMode:"drillThrough",sourceCardId:n.id,filterGroups:F,metric:(S=e.metrics)==null?void 0:S[0],targetDashboardId:d.targetDashboardId,contextMode:d.contextMode};else if(d.mode==="drillToURL"){const D=sc(d.urlTemplate,d.parameters||[],{clickedValues:F.flatMap(A=>A.filters),cardId:n.id,frameId:t,sheetId:r},d.encodeParameters!==!1);try{new URL(D)}catch(A){return console.error("Invalid URL:",D,A),!1}return window.open(D,"_blank","noopener,noreferrer"),!0}else{if(d.mode==="drillUp")return Ee.getState().popInteractionStep(n.id),!0;d.mode==="dynamicDrill"&&d.drillField&&(T={interactionMode:"dynamicDrill",sourceCardId:n.id,filterGroups:F,metric:(x=e.metrics)==null?void 0:x[0],toField:d.drillField})}return T?(Ee.getState().applyInteractionEvent(n.id,T),!0):!1}if(!d||d.mode!=="clickFilter")return!1;const u=d.trigger?Si(e.conditions,d.trigger):e.conditions,f={interactionMode:"clickFilter",sourceCardId:n.id,filterGroups:[{filters:u}],metric:(I=e.metrics)==null?void 0:I[0],applyToCardIds:d.applyToCardIds,excludeCardIds:d.excludeCardIds},h=o.interactionStates[n.id]??et(),y=h.appliedClickFilters??[];return y.some(E=>ft(E,f))&&y.length===1?o.setInteractionState(n.id,{...h,appliedClickFilters:[]}):o.setInteractionState(n.id,{...h,appliedClickFilters:[f]}),!0}function Ah(e,n,t,r){const o=Ee(),i=ic();return{handlePointerInteraction:({context:l,gesture:c,position:d,modifierKeys:u})=>{var v;const h=_t(e.interactionConfig).some(S=>Zi(S));if(c==="leftClick"&&!(u!=null&&u.shift)&&h){Dh(l,e,n,t,o,r,d);return}if(i.setContext({type:c,cardId:e.id,conditions:l.conditions,metric:(v=l.metrics)==null?void 0:v[0],anchorPosition:d}),c!=="leftClick"||!h)return;const y=hh({intent:{mode:"clickFilter"},card:e});if(!y)return;const m=o.interactionStates[e.id]??et(),b=m.appliedClickFilters??[],g=b.some(S=>ft(S,y))?b.filter(S=>!ft(S,y)):[...b,y];o.setInteractionState(e.id,{...m,appliedClickFilters:g})},applySelectedInteraction:(l,c)=>{var h,y,m,b,C,g,v;const u=[{filters:l.trigger?Si(c.conditions,l.trigger):c.conditions}];let f;if(l.mode==="clickFilter"){const S=l.applyToCardIds?[...l.applyToCardIds,e.id]:void 0;f={interactionMode:"clickFilter",sourceCardId:e.id,filterGroups:u,metric:(h=c.metrics)==null?void 0:h[0],applyToCardIds:S,excludeCardIds:l.excludeCardIds,filterSourceCard:!0}}else if(l.mode==="drillToDetail")f={interactionMode:"drillToDetail",sourceCardId:e.id,filterGroups:u,metric:(y=c.metrics)==null?void 0:y[0],detailFields:l.detailFields||[],sortBy:l.sortBy,limit:l.limit,detailTitle:l.label,targetInsightId:l.targetInsightId,contextMode:l.contextMode,displayMode:l.displayMode};else if(l.mode==="drillDown"){const S=(b=(m=e.interactionConfig)==null?void 0:m.drillHierarchies)==null?void 0:b.find(x=>x.id===l.hierarchyId);if(S){const x=o.interactionStates[e.id],I=(x==null?void 0:x.breadcrumbs)||[],E=I.length;let F;if(S.type==="date"||S.baseField){const T=Qi(S,e,I);F=Xi(S,T)}else F=S.steps[E];F&&(f={interactionMode:"drillDown",sourceCardId:e.id,hierarchyId:S.id,filterGroups:u,metric:(C=c.metrics)==null?void 0:C[0],toField:F.field,granularity:F.field.granularity})}}else if(l.mode==="drillThrough")f={interactionMode:"drillThrough",sourceCardId:e.id,filterGroups:u,metric:(g=c.metrics)==null?void 0:g[0],targetDashboardId:l.targetDashboardId,contextMode:l.contextMode};else if(l.mode==="drillToURL"){const S=sc(l.urlTemplate,l.parameters||[],{clickedValues:u.flatMap(x=>x.filters),cardId:e.id,frameId:n,sheetId:t},l.encodeParameters!==!1);try{new URL(S)}catch(x){console.error("Invalid URL:",S,x);return}window.open(S,"_blank","noopener,noreferrer");return}else if(l.mode==="drillUp"){o.popInteractionStep(e.id);return}else l.mode==="dynamicDrill"&&(l.drillField?f={interactionMode:"dynamicDrill",sourceCardId:e.id,filterGroups:u,metric:(v=c.metrics)==null?void 0:v[0],toField:l.drillField}:console.warn("⚠️ dynamicDrill interaction missing drillField!",l));f&&o.applyInteractionEvent(e.id,f)}}}const Pt=Ut()(oc((e,n)=>({clearBlurCallbacks:{},registerClearBlurCallback:(t,r)=>{e(o=>({clearBlurCallbacks:{...o.clearBlurCallbacks,[t]:r}}))},clearBlurForCard:t=>{const o=n().clearBlurCallbacks[t];if(o)try{o()}catch(i){console.warn(`Failed to clear blur for card ${t}:`,i),e(a=>{const{[t]:s,...l}=a.clearBlurCallbacks;return{clearBlurCallbacks:l}})}},clearAllBlur:()=>{const t=n(),r=[];Object.entries(t.clearBlurCallbacks).forEach(([o,i])=>{if(i)try{i()}catch(a){console.warn(`Failed to clear blur for card ${o}:`,a),r.push(o)}}),r.length>0&&e(o=>{const i={...o.clearBlurCallbacks};return r.forEach(a=>{delete i[a]}),{clearBlurCallbacks:i}})},unregisterCard:t=>{e(r=>{const{[t]:o,...i}=r.clearBlurCallbacks;return{clearBlurCallbacks:i}})},resetStore:()=>{const t=n();Object.values(t.clearBlurCallbacks).forEach(r=>{if(r)try{r()}catch{}}),e({clearBlurCallbacks:{}})}}),{name:"chartjs-store"}));it.subscribe("dashboard:load",()=>{Pt.getState().resetStore()});it.subscribe("dashboard:unload",()=>{Pt.getState().resetStore()});const Rh=["table","pivotTable","aggregateTable","matrixTable","detailTable"],_h=new Set(Rh);function Ph(e){return typeof e=="string"&&_h.has(e)}const Oh=["table","pivotTable","aggregateTable","detailTable"],Mh=new Set(Oh);function Nh(e){return typeof e=="string"&&Mh.has(e)}const lc=["bar","kpi","horizontalBar","line","area","stackedArea","combo","stackedBar","stackedLine","table","pivotTable","bullet","custom"],cc=["kpi","table","bullet"],kh=["bar","kpi","horizontalBar","line","area","stackedArea","combo","stackedBar","stackedLine","table","pivotTable","bullet"],Lh=6;function Vh(e){if(!(e===void 0||!Number.isFinite(e))&&Number.isInteger(e))return Math.max(0,Math.min(Lh,e))}function dc(e){var n;return((n=e==null?void 0:e.comparison)==null?void 0:n.mode)==="explicit"?e.comparison.spec:void 0}function uc(e){var n;return((n=dc(e))==null?void 0:n.kind)||"none"}function Bh(e){const n=dc(e);return(n==null?void 0:n.kind)==="target"?n.targetValue:void 0}function jh(e){return(e==null?void 0:e.semanticComparisonPolarity)||(e==null?void 0:e.comparisonPolarity)||am.DEFAULT_METRIC_COMPARISON_POLARITY}function $h(e,n){const t=e.metricColumns||[];if(t.length===0)return e;const r=lc.includes(n),o=cc.includes(n),i=l=>{var c;return(c=l.parameters)!=null&&c.windowTransform?{...l,parameters:{...l.parameters,windowTransform:void 0}}:l};let a=!1;const s=t.map(l=>{var u;const c=uc(l);if(c==="none")return l;let d=l;return(u=d.parameters)!=null&&u.windowTransform&&(a=!0,d=i(d)),r?c==="target"&&!o?(a=!0,{...d,comparison:void 0}):d:(a=!0,{...d,comparison:void 0})});return a?{...e,metricColumns:s}:e}const pt="__DRILL_CONTEXT__";function et(){return{breadcrumbs:[],hierarchyId:void 0,appliedClickFilters:[]}}const Ee=Ut()(oc(e=>({interactionStates:{},replacedCards:{},pendingDrillThrough:null,setInteractionState:(n,t)=>{e(r=>({interactionStates:{...r.interactionStates,[n]:t}}))},resetInteractionState:n=>{e(t=>({interactionStates:{...t.interactionStates,[n]:et()}}))},toggleClickFilter:(n,t)=>{e(r=>{const o=r.interactionStates[n]??et(),i=o.appliedClickFilters??[],a=i.some(l=>ft(l,t)),s=a?i.filter(l=>!ft(l,t)):[...i,t];return a&&s.filter(c=>c.sourceCardId===t.sourceCardId).length===0&&Pt.getState().clearBlurForCard(t.sourceCardId),{interactionStates:{...r.interactionStates,[n]:{...o,appliedClickFilters:s}}}})},removeClickFiltersByValue:(n,t,r)=>{e(o=>{const i=o.interactionStates[n]??et(),a=i.appliedClickFilters??[],s=a.filter(d=>d.filterGroups.some(u=>u.filters.some(f=>{const h=f.field.label,y=f.field.name;return(h===t||y===t)&&f.value===r}))),l=new Set,c=a.filter(d=>{const u=s.some(f=>ft(d,f));return u&&l.add(d.sourceCardId),!u});return l.forEach(d=>{const u=o.interactionStates[d],h=((u==null?void 0:u.appliedClickFilters)??[]).filter(m=>!s.some(b=>ft(m,b)));let y=!1;Object.entries(o.interactionStates).forEach(([m,b])=>{m===d?h.length>0&&(y=!0):((b==null?void 0:b.appliedClickFilters)??[]).some(v=>v.sourceCardId===d)&&(y=!0)}),y||Pt.getState().clearBlurForCard(d),o.interactionStates[d]={...u,appliedClickFilters:h}}),{interactionStates:{...o.interactionStates,[n]:{...i,appliedClickFilters:c}}}})},applyInteractionEvent:(n,t,r=!1)=>{e(o=>{var s;const i=o.interactionStates[n]??et(),a=r?et():i;if(t.interactionMode==="clickFilter"){const l=r?[t]:[...a.appliedClickFilters??[],t];return{interactionStates:{...o.interactionStates,[n]:{...a,appliedClickFilters:l}}}}if(t.interactionMode==="drillDown"||t.interactionMode==="dynamicDrill"){if(!((s=t.filterGroups)!=null&&s.length))return o;const l={sourceFilterGroups:t.filterGroups,toField:t.toField,granularity:t.granularity,timeComparison:t.timeComparison,metric:t.metric};return{interactionStates:{...o.interactionStates,[n]:{...i,hierarchyId:t.interactionMode==="drillDown"?t.hierarchyId:i.hierarchyId,breadcrumbs:[...i.breadcrumbs??[],l]}}}}return t.interactionMode==="drillToDetail"||t.interactionMode==="drillThrough"||t.interactionMode==="drillToURL"||t.interactionMode==="inlineDrill"?{interactionStates:{...o.interactionStates,[n]:{...i,lastInteractionEvent:t}}}:o})},popInteractionStep:n=>{e(t=>{var i;const r=t.interactionStates[n];if(!((i=r==null?void 0:r.breadcrumbs)!=null&&i.length))return t;const o=r.breadcrumbs.slice(0,-1);return{interactionStates:{...t.interactionStates,[n]:{...r,breadcrumbs:o,hierarchyId:o.length===0?void 0:r.hierarchyId}}}})},clearLastInteractionEvent:n=>{e(t=>{const r=t.interactionStates[n];return!r||!r.lastInteractionEvent?t:{interactionStates:{...t.interactionStates,[n]:{...r,lastInteractionEvent:void 0}}}})},replaceCardWithInsight:(n,t,r,o)=>{e(i=>({replacedCards:{...i.replacedCards,[n]:{insightId:t,filters:r,contextMode:o}}}))},restoreCard:n=>{e(t=>{const{[n]:r,...o}=t.replacedCards;return{replacedCards:o}})},clearAllClickFilters:()=>{e(n=>{const t={...n.interactionStates};for(const r in t)r!==pt&&(t[r]={...t[r],appliedClickFilters:[]});return Pt.getState().clearAllBlur(),{interactionStates:t}})},setPendingDrillThrough:n=>{e({pendingDrillThrough:n})},clearPendingDrillThrough:()=>{e({pendingDrillThrough:null})},resetAllInteractionStates:()=>{Pt.getState().clearAllBlur(),e({interactionStates:{},replacedCards:{},pendingDrillThrough:null})}}),{name:"interaction-store"}));it.subscribe("dashboard:load",()=>{Ee.getState().resetAllInteractionStates()});it.subscribe("dashboard:unload",()=>{Ee.getState().resetAllInteractionStates()});function ea(e,n){return Object.entries(n).filter(([r])=>r!==pt).flatMap(([,r])=>(r==null?void 0:r.appliedClickFilters)??[]).filter(r=>{var o,i;return r.sourceCardId===e&&!r.filterSourceCard?!1:(o=r.applyToCardIds)!=null&&o.length?r.applyToCardIds.includes(e):(i=r.excludeCardIds)!=null&&i.length?!r.excludeCardIds.includes(e):!0})}const Uh=e=>Ee(ro(n=>ea(e,n.interactionStates)));function Jn(e,n,t){var y,m;const r=e.id,o=(y=e.config)==null?void 0:y.filters,i=ea(r,n),a=n[pt],c=[...t&&(a==null?void 0:a.targetDashboardId)===t&&(a==null?void 0:a.contextMode)!=="none"?(a==null?void 0:a.appliedClickFilters)||[]:[],...i],d=fh(c),f=(((m=n[r])==null?void 0:m.breadcrumbs)??[]).map((b,C)=>({id:`breadcrumb-${C}`,logicalOperator:"OR",negate:!1,conditions:[],groups:b.sourceFilterGroups.map((g,v)=>({id:`breadcrumb-${C}-group-${v}`,logicalOperator:"AND",negate:!1,conditions:g.filters.map(S=>({id:`${S.field.id}-${S.value}`,field:S.field,operator:"=",value:S.value})),groups:[]}))})),h=f.length>0?{id:`${r}-drill-root`,logicalOperator:"AND",negate:!1,conditions:[],groups:f}:void 0;return ph([o,d,h])}function zh(e,n){return e.name===n.name&&e.qualifiedEntityName===n.qualifiedEntityName}function fc(e,n,t){var c,d,u,f;const r=n[e.id],o=(c=r==null?void 0:r.breadcrumbs)==null?void 0:c.slice(-1)[0],i=o!=null&&o.toField?[o.toField]:(d=e.config)==null?void 0:d.groupByColumns,a=o!=null&&o.toField&&((u=e.config)!=null&&u.sortByColumns)?e.config.sortByColumns.map(h=>{var m,b;const y=(b=(m=e.config)==null?void 0:m.groupByColumns)==null?void 0:b[0];return y&&zh(h,y)?{...o.toField,role:"sortby",direction:h.direction}:h}):(f=e.config)==null?void 0:f.sortByColumns,s=t??Jn(e,n),l={...e.config,groupByColumns:i,sortByColumns:a,filters:s};return $h(l,e.type)}function qh(e){const n=Ee(o=>o.interactionStates),t=We(o=>{var i;return(i=o.dashboard)==null?void 0:i.id}),r=Jn(e,n,t);return fc(e,n,r)}function pc(e,n,t){const r=t??Jn(e,n);return mh(r)}function Hh(e){const n=Ee(i=>i.interactionStates),t=We(i=>{var a;return(a=i.dashboard)==null?void 0:a.id}),r=Jn(e,n,t);return pc(e,n,r)}var mc={},hc={},ta={exports:{}},z=String,gc=function(){return{isColorSupported:!1,reset:z,bold:z,dim:z,italic:z,underline:z,inverse:z,hidden:z,strikethrough:z,black:z,red:z,green:z,yellow:z,blue:z,magenta:z,cyan:z,white:z,gray:z,bgBlack:z,bgRed:z,bgGreen:z,bgYellow:z,bgBlue:z,bgMagenta:z,bgCyan:z,bgWhite:z,blackBright:z,redBright:z,greenBright:z,yellowBright:z,blueBright:z,magentaBright:z,cyanBright:z,whiteBright:z,bgBlackBright:z,bgRedBright:z,bgGreenBright:z,bgYellowBright:z,bgBlueBright:z,bgMagentaBright:z,bgCyanBright:z,bgWhiteBright:z}};ta.exports=gc();ta.exports.createColors=gc;var Gh=ta.exports;(function(e){Object.defineProperty(e,"__esModule",{value:!0});function n(l,c){for(var d in c)Object.defineProperty(l,d,{enumerable:!0,get:c[d]})}n(e,{dim:function(){return a},default:function(){return s}});const t=r(Gh);function r(l){return l&&l.__esModule?l:{default:l}}let o=new Set;function i(l,c,d){typeof process<"u"&&process.env.JEST_WORKER_ID||d&&o.has(d)||(d&&o.add(d),console.warn(""),c.forEach(u=>console.warn(l,"-",u)))}function a(l){return t.default.dim(l)}const s={info(l,c){i(t.default.bold(t.default.cyan("info")),...Array.isArray(l)?[l]:[c,l])},warn(l,c){i(t.default.bold(t.default.yellow("warn")),...Array.isArray(l)?[l]:[c,l])},risk(l,c){i(t.default.bold(t.default.magenta("risk")),...Array.isArray(l)?[l]:[c,l])}}})(hc);(function(e){Object.defineProperty(e,"__esModule",{value:!0}),Object.defineProperty(e,"default",{enumerable:!0,get:function(){return o}});const n=t(hc);function t(i){return i&&i.__esModule?i:{default:i}}function r({version:i,from:a,to:s}){n.default.warn(`${a}-color-renamed`,[`As of Tailwind CSS ${i}, \`${a}\` has been renamed to \`${s}\`.`,"Update your configuration file to silence this warning."])}const o={inherit:"inherit",current:"currentColor",transparent:"transparent",black:"#000",white:"#fff",slate:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},gray:{50:"#f9fafb",100:"#f3f4f6",200:"#e5e7eb",300:"#d1d5db",400:"#9ca3af",500:"#6b7280",600:"#4b5563",700:"#374151",800:"#1f2937",900:"#111827",950:"#030712"},zinc:{50:"#fafafa",100:"#f4f4f5",200:"#e4e4e7",300:"#d4d4d8",400:"#a1a1aa",500:"#71717a",600:"#52525b",700:"#3f3f46",800:"#27272a",900:"#18181b",950:"#09090b"},neutral:{50:"#fafafa",100:"#f5f5f5",200:"#e5e5e5",300:"#d4d4d4",400:"#a3a3a3",500:"#737373",600:"#525252",700:"#404040",800:"#262626",900:"#171717",950:"#0a0a0a"},stone:{50:"#fafaf9",100:"#f5f5f4",200:"#e7e5e4",300:"#d6d3d1",400:"#a8a29e",500:"#78716c",600:"#57534e",700:"#44403c",800:"#292524",900:"#1c1917",950:"#0c0a09"},red:{50:"#fef2f2",100:"#fee2e2",200:"#fecaca",300:"#fca5a5",400:"#f87171",500:"#ef4444",600:"#dc2626",700:"#b91c1c",800:"#991b1b",900:"#7f1d1d",950:"#450a0a"},orange:{50:"#fff7ed",100:"#ffedd5",200:"#fed7aa",300:"#fdba74",400:"#fb923c",500:"#f97316",600:"#ea580c",700:"#c2410c",800:"#9a3412",900:"#7c2d12",950:"#431407"},amber:{50:"#fffbeb",100:"#fef3c7",200:"#fde68a",300:"#fcd34d",400:"#fbbf24",500:"#f59e0b",600:"#d97706",700:"#b45309",800:"#92400e",900:"#78350f",950:"#451a03"},yellow:{50:"#fefce8",100:"#fef9c3",200:"#fef08a",300:"#fde047",400:"#facc15",500:"#eab308",600:"#ca8a04",700:"#a16207",800:"#854d0e",900:"#713f12",950:"#422006"},lime:{50:"#f7fee7",100:"#ecfccb",200:"#d9f99d",300:"#bef264",400:"#a3e635",500:"#84cc16",600:"#65a30d",700:"#4d7c0f",800:"#3f6212",900:"#365314",950:"#1a2e05"},green:{50:"#f0fdf4",100:"#dcfce7",200:"#bbf7d0",300:"#86efac",400:"#4ade80",500:"#22c55e",600:"#16a34a",700:"#15803d",800:"#166534",900:"#14532d",950:"#052e16"},emerald:{50:"#ecfdf5",100:"#d1fae5",200:"#a7f3d0",300:"#6ee7b7",400:"#34d399",500:"#10b981",600:"#059669",700:"#047857",800:"#065f46",900:"#064e3b",950:"#022c22"},teal:{50:"#f0fdfa",100:"#ccfbf1",200:"#99f6e4",300:"#5eead4",400:"#2dd4bf",500:"#14b8a6",600:"#0d9488",700:"#0f766e",800:"#115e59",900:"#134e4a",950:"#042f2e"},cyan:{50:"#ecfeff",100:"#cffafe",200:"#a5f3fc",300:"#67e8f9",400:"#22d3ee",500:"#06b6d4",600:"#0891b2",700:"#0e7490",800:"#155e75",900:"#164e63",950:"#083344"},sky:{50:"#f0f9ff",100:"#e0f2fe",200:"#bae6fd",300:"#7dd3fc",400:"#38bdf8",500:"#0ea5e9",600:"#0284c7",700:"#0369a1",800:"#075985",900:"#0c4a6e",950:"#082f49"},blue:{50:"#eff6ff",100:"#dbeafe",200:"#bfdbfe",300:"#93c5fd",400:"#60a5fa",500:"#3b82f6",600:"#2563eb",700:"#1d4ed8",800:"#1e40af",900:"#1e3a8a",950:"#172554"},indigo:{50:"#eef2ff",100:"#e0e7ff",200:"#c7d2fe",300:"#a5b4fc",400:"#818cf8",500:"#6366f1",600:"#4f46e5",700:"#4338ca",800:"#3730a3",900:"#312e81",950:"#1e1b4b"},violet:{50:"#f5f3ff",100:"#ede9fe",200:"#ddd6fe",300:"#c4b5fd",400:"#a78bfa",500:"#8b5cf6",600:"#7c3aed",700:"#6d28d9",800:"#5b21b6",900:"#4c1d95",950:"#2e1065"},purple:{50:"#faf5ff",100:"#f3e8ff",200:"#e9d5ff",300:"#d8b4fe",400:"#c084fc",500:"#a855f7",600:"#9333ea",700:"#7e22ce",800:"#6b21a8",900:"#581c87",950:"#3b0764"},fuchsia:{50:"#fdf4ff",100:"#fae8ff",200:"#f5d0fe",300:"#f0abfc",400:"#e879f9",500:"#d946ef",600:"#c026d3",700:"#a21caf",800:"#86198f",900:"#701a75",950:"#4a044e"},pink:{50:"#fdf2f8",100:"#fce7f3",200:"#fbcfe8",300:"#f9a8d4",400:"#f472b6",500:"#ec4899",600:"#db2777",700:"#be185d",800:"#9d174d",900:"#831843",950:"#500724"},rose:{50:"#fff1f2",100:"#ffe4e6",200:"#fecdd3",300:"#fda4af",400:"#fb7185",500:"#f43f5e",600:"#e11d48",700:"#be123c",800:"#9f1239",900:"#881337",950:"#4c0519"},get lightBlue(){return r({version:"v2.2",from:"lightBlue",to:"sky"}),this.sky},get warmGray(){return r({version:"v3.0",from:"warmGray",to:"stone"}),this.stone},get trueGray(){return r({version:"v3.0",from:"trueGray",to:"neutral"}),this.neutral},get coolGray(){return r({version:"v3.0",from:"coolGray",to:"gray"}),this.gray},get blueGray(){return r({version:"v3.0",from:"blueGray",to:"slate"}),this.slate}}})(mc);let $o=mc;var Wh=($o.__esModule?$o:{default:$o}).default;const oe=no(Wh),Yh=".semaphor-scope";function Kh(e){return e?e.closest(Yh):null}function Xh(e){if(!e)return"light";const n=e.dataset.semaphorTheme;return n==="dark"||n==="light"?n:e.classList.contains("dark")?"dark":"light"}const Qh=!1,yc=["table","view","materialized view"],Zh=["_forecast"],Br="dm",Jh="semaphor_calculated_fields",eg="calculated_fields",na=["lg","md","sm","xs","xxs"],xi={default:{dashboardPanel:"",dashboardTabsContainer:"",gridLayout:{className:""},chart:{font:{family:mt.SEMAPHOR_DEFAULT_FONT_FAMILY},dataset:{backgroundColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]],borderColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]]},options:{interaction:{mode:"index"},plugins:{datalabels:{display:!1,color:wi},title:{display:!0},tooltip:{backgroundColor:"#fff",bodyColor:"#000",borderWidth:.25,titleColor:"#000",borderColor:"rgb(128,131,139)",cornerRadius:4,usePointStyle:!0,pointStyle:"rectRounded",boxPadding:4},legend:{position:"top",align:"center",maxHeight:0,labels:{useBorderRadius:!0,borderRadius:2}}},scales:{y:{grid:{display:!0},title:{display:!0,text:""},beginAtZero:!0,ticks:{precision:0}},x:{grid:{display:!0},title:{display:!0}}},layout:{padding:{top:-40}},borderRadius:2,responsive:!0,maintainAspectRatio:!1}}},dark:{chart:{dataset:{datalables:{color:wi},backgroundColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]],borderColor:[oe.teal[500],oe.teal[300],oe.gray[700],oe.gray[500],oe.gray[300]]},options:{plugins:{tooltip:{backgroundColor:"#000",bodyColor:"#fff",borderWidth:.25,titleColor:"#fff",borderColor:"rgb(128,131,139)",cornerRadius:2,boxPadding:4}},datalabels:{display:!1},scales:{x:{grid:{display:!0,color:oe.slate[800]}},y:{grid:{display:!0,color:oe.slate[800]}}}}}}};function wi(e){var r,o,i,a,s,l,c,d,u;const n=(s=(a=(i=(o=(r=e==null?void 0:e.chart)==null?void 0:r.config)==null?void 0:o._config)==null?void 0:i.options)==null?void 0:a.plugins)==null?void 0:s.datalabels;let t=(l=e==null?void 0:e.dataset)==null?void 0:l.backgroundColor;return(n==null?void 0:n.align)==="end"&&(n==null?void 0:n.anchor)==="end"&&(t=Fr((c=e==null?void 0:e.chart)==null?void 0:c.canvas)),(n==null?void 0:n.align)==="start"&&(n==null?void 0:n.anchor)==="start"&&(t=Fr((d=e==null?void 0:e.chart)==null?void 0:d.canvas)),bc(t,{baseColor:Fr((u=e==null?void 0:e.chart)==null?void 0:u.canvas)})}function Fr(e){if(typeof document<"u"){const n=Kh(e);if(n){const r=window.getComputedStyle(n).getPropertyValue("--semaphor-background").trim();return r?`hsl(${r})`:Xh(n)==="dark"?"#000000":"#FFFFFF"}const t=document.documentElement;if(t.classList.contains("dark"))return"#000000";if(t.classList.contains("light"))return"#FFFFFF"}return typeof window<"u"&&typeof window.matchMedia=="function"&&window.matchMedia("(prefers-color-scheme: dark)").matches?"#000000":"#FFFFFF"}function bc(e,n={}){let t=0,r=0,o=0,i=0;const a=n.baseColor?mt.parseRuntimeColor(n.baseColor):null,s=f=>{if(!f)return oe.gray[500];const h=mt.parseRuntimeColor(f);if(!h)return oe.gray[500];const y=vc(h,a);t+=y.r,r+=y.g,o+=y.b,i++};if(Array.isArray(e)?e.forEach(f=>{s(f)}):s(e),i===0)return oe.gray[500];const l=t/i,c=r/i,d=o/i;return(l*299+c*587+d*114)/1e3>=180?"black":"white"}function vc(e,n){if(e.alpha>=1)return e;const t=n?vc(n,null):tg;return{r:e.r*e.alpha+t.r*(1-e.alpha),g:e.g*e.alpha+t.g*(1-e.alpha),b:e.b*e.alpha+t.b*(1-e.alpha)}}const tg={r:255,g:255,b:255};function ng({capabilities:e,database:n,schema:t,table:r}){const o=e.prefixLevels,i=[];for(const a of o)a==="database"&&n&&i.push(n),a==="schema"&&t&&i.push(t),a==="table"&&i.push(r);return i.join(".")}function ra(e){return e.startsWith('"')&&e.endsWith('"')?e:e.match(/[A-Z]/)?`"${e}"`:e}function oo(e){return _e(e)==="string"}function io(e){return _e(e)==="number"}function oa(e){return _e(e)==="date"}function ia(e){return _e(e)==="boolean"}function rg(e,n,t,r,o,i,a){const{measures:s,dimensions:l}=e,c=s==null?void 0:s.map(y=>`${y.calc}(${y.name}) as ${y.calc}_${y.name.replace(/"/g,"")}`).join(", "),d=(l==null?void 0:l.join(", "))||"";let u="";const h=(r?`${Br}.${r}`:a||aa({schemaName:n,tableName:t,databaseName:o,capabilities:i})).split(".").map(y=>ra(y)).join(".");if(c&&d)return u=`SELECT ${d}, COUNT(*) as count, ${c} FROM ${h} GROUP BY ${d} ORDER BY ${d} DESC LIMIT 100`,u;if(!c&&d)return u=`SELECT ${d}, COUNT(*) as count FROM ${h} GROUP BY ${d} ORDER BY ${d} DESC LIMIT 100`,u;if(c&&!d)return u=`SELECT ${c} FROM ${h} LIMIT 100`,u}function og(e,n,t="AVG"){var i,a,s,l;let r={};const o=ra(e.column_name);return oo(e.data_type)&&(((i=n.dimensions)==null?void 0:i.includes(o))?r={...n,dimensions:(a=n.dimensions)==null?void 0:a.filter(d=>d!==o)}:r={...n,dimensions:[...n.dimensions||[],o]}),io(e.data_type)&&(((s=n.measures)==null?void 0:s.some(d=>d.name===o&&d.calc===t))?r={...n,measures:(l=n.measures)==null?void 0:l.filter(d=>!(d.name===o&&d.calc===t))}:r={...n,measures:[...n.measures||[],{name:o,calc:t||"SUM"}]}),r}function ig(e){return oo(e.dataType)?"string":io(e.dataType)?"number":oa(e.dataType)?"date":ia(e.dataType)?"boolean":"string"}function ag(e){let n;const t=e.data_type.toLowerCase();return oo(t)?n="T":io(t)?n="#":oa(t)?n="D":ia(t)?n="B":n="?",n}function sg(e,n){const{dimensions:t,measures:r}=n,o=t==null?void 0:t.includes(e.column_name),i=r==null?void 0:r.some(a=>a.name===e.column_name);return o||i}function Cc(e){return e?e!=null&&e.startsWith(`${Br}.`)?e:`${Br}.${e}`:""}function lg({schemaName:e,tableName:n,databaseName:t,connectionType:r}){return r==="S3"||r==="API"?n:r==="S3Tables"?`${t}.${e}.${n}`:e?`${e}.${n}`:n}function cg({schemaName:e,tableName:n,modelName:t,databaseName:r,capabilities:o,connectionType:i}){let a;o?a=aa({schemaName:e,tableName:n,databaseName:r,capabilities:o}):a=lg({schemaName:e,tableName:n,databaseName:r,connectionType:i}),t&&(a=Cc(t));let s=a;return(c=>/[A-Z]/.test(c))(n)&&(s=s.split(".").map(d=>`"${d}"`).join(".")),s}function aa({schemaName:e,tableName:n,databaseName:t,capabilities:r}){return ng({capabilities:r,database:t,schema:e||void 0,table:n})}const dg=e=>{const n=new Date(e);return!isNaN(n.getTime())},ug=e=>!isNaN(Number(e))&&!isNaN(parseFloat(e)),Sc=e=>{let n;return typeof e=="number"?n="number":typeof e=="string"?dg(e)?n="date":ug(e)?n="number":n="string":typeof e=="boolean"?n="boolean":e instanceof Date?n="date":n="unknown",n};function fg({get:e,dataPoint:n,card:t}){var f;const{addOrUpdateFilterValue:r,addFilteringCard:o,removeFilterValues:i,replaceFilterValue:a,removeFilteringCard:s}=e().actions,l=e().filteringCards,{columnName:c,columnValue:d}=n,u={filterId:t.id,connectionId:t==null?void 0:t.connectionId,tableName:t.lastSelectedTable,name:c,expression:(f=t.preferences)==null?void 0:f.filterOnClickField,valueType:Sc(d),operation:"=",values:[d]};if(l!=null&&l.find(h=>h.id===t.id)){const h=t.id;if(d==null){s(t),i(h);return}else a(u)}o(t),r(u)}const jr={lg:48,md:36,sm:24,xs:12,xxs:6},Fn=[...na].sort((e,n)=>jr[e]-jr[n]),pg={initialHeight:35,minH:10},mg={initialHeight:8,minH:4};function hg(e){var n,t;if(e)return((n=e.cards)==null?void 0:n.find(r=>r.id===e.activeCardId))||((t=e.cards)==null?void 0:t[0])}function Ii(e){var t;const n=(t=hg(e))==null?void 0:t.type;return n==="text"||n==="kpi"?"compact":"default"}function xc(e){return Ii(e)==="compact"?mg:pg}function gg(e,n){return e.x<n.x+n.w&&e.x+e.w>n.x}function yg(e){const n=[...e].sort((r,o)=>r.y!==o.y?r.y-o.y:r.x-o.x),t=[];for(const r of n){if(r.static){t.push({...r});continue}const o=t.reduce((i,a)=>gg(r,a)?Math.max(i,a.y+a.h):i,0);t.push({...r,y:o})}return t}function bg({layouts:e,previousFrame:n,nextFrame:t}){if(!e||Ii(n)===Ii(t))return e;const r=xc(t);let o=!1;const i={};return Object.keys(e).forEach(a=>{const s=e[a];if(!s)return;let l=!1;const c=s.map(d=>d.i!==t.id||d.h===r.initialHeight&&d.minH===r.minH?d:(o=!0,l=!0,{...d,h:r.initialHeight,minH:r.minH}));i[a]=l?yg(c):c}),o?i:e}function vg(e,n){const t=Math.max(1,Math.min(e.w,n)),r=e.minW==null?void 0:Math.max(1,Math.min(e.minW,t)),o=e.maxW==null?void 0:Math.max(t,Math.min(e.maxW,n));return{...e,x:Math.max(0,Math.min(e.x,n-t)),y:Math.max(0,e.y),w:t,...r==null?{}:{minW:r},...o==null?{}:{maxW:o}}}function Cg(e,n){return e.x<n.x+n.w&&e.x+e.w>n.x&&e.y<n.y+n.h&&e.y+e.h>n.y}function js(e,n){return!n.some(t=>Cg(e,t))}function Sg(e,n,t){const r=e.x+e.w;if(r+e.w<=t){const l={...e,x:r,y:e.y};if(js(l,n))return{x:r,y:e.y}}const o=Math.max(t-e.w,0),i=e.y+e.h,a=n.map(l=>l.y+l.h).filter(l=>l>i).sort((l,c)=>l-c),s=[i,...a];for(const l of s)for(let c=0;c<=o;c+=1){const d={...e,x:c,y:l};if(js(d,n))return{x:c,y:l}}return{x:0,y:i}}function xg(e,n,t){var i,a,s;const r=(i=e[t])==null?void 0:i.find(l=>l.i===n);if(r)return r;const o=Fn.indexOf(t);if(o!==-1){for(let l=o+1;l<Fn.length;l+=1){const c=Fn[l],d=(a=e[c])==null?void 0:a.find(u=>u.i===n);if(d)return d}for(let l=o-1;l>=0;l-=1){const c=Fn[l],d=(s=e[c])==null?void 0:s.find(u=>u.i===n);if(d)return d}}}function $s({id:e,layouts:n,initialHeight:t,y:r,x:o,w:i,minH:a,frame:s}){const l=xc(s);return lm.createFrameLayouts({id:e,layouts:n,initialHeight:t??l.initialHeight,y:r,x:o,w:i,minH:a??l.minH})}function Us(e,n){if(!n)return;const t={...n};return na.forEach(r=>{t[r]&&(t[r]=t[r].filter(o=>o.i!==e))}),t}function wg({sourceId:e,duplicatedId:n,layouts:t}){if(!t||!Fn.some(i=>{var a;return(a=t[i])==null?void 0:a.some(s=>s.i===e)}))return;const o={...t};return Object.keys(o).forEach(i=>{const a=o[i];if(!a)return;const s=[...a],l=xg(t,e,i);if(!l)return;const c=vg(l,jr[i]),d=s.filter(h=>h.i!==e&&h.i!==n),{x:u,y:f}=Sg(c,d,jr[i]);s.push({...c,i:n,x:u,y:f}),o[i]=s}),o}function Ig(e){const n=We.getState().dashboard.globalCacheConfig,{card:t,filter:r}=e;return n}const Eg=["new","edit","delete","create","update","remove"];function ao(e){const n=[],t=e.sheets||[];for(const r of t){for(const o of r.cards||[])n.push({card:o,sheet:r});for(const o of r.frames||[])for(const i of o.cards||[])n.push({card:i,sheet:r})}return n}function sa(e){return ao(e).map(n=>n.card)}function zs(e,n,t){if(t&&n===t)return!0;const r=e.sheets||[];for(const o of r){const i=o.cards||[];for(const s of i)if(s.id===n)return!1;const a=o.frames||[];for(const s of a){const l=s.cards||[];for(const c of l)if(c.id===n)return!1}}return!0}function Tg(e){return!e||e.trim().length===0?{isValid:!1,error:"Card ID cannot be empty"}:e.length<3?{isValid:!1,error:"Card ID must be at least 3 characters"}:e.length>50?{isValid:!1,error:"Card ID must be less than 50 characters"}:/^[a-zA-Z0-9-_]+$/.test(e)?/^[a-zA-Z0-9]/.test(e)?Eg.includes(e.toLowerCase())?{isValid:!1,error:`"${e}" is a reserved keyword and cannot be used`}:{isValid:!0}:{isValid:!1,error:"Card ID must start with a letter or number"}:{isValid:!1,error:"Card ID can only contain letters, numbers, hyphens, and underscores"}}function Fg(e,n){var t;return(t=wc(e,n))==null?void 0:t.card}function wc(e,n){for(const t of ao(e))if(t.card.id===n)return t}function Dg(e,n){for(const t of e.sheets||[])for(const r of t.frames||[])for(const o of r.cards||[])if(o.id===n)return{card:o,sheet:t}}function Ic(e,n){const t=le.toDate(e);return isNaN(n)?le.constructFrom(e,NaN):(n&&t.setDate(t.getDate()+n),t)}function la(e,n){const t=le.toDate(e);if(isNaN(n))return le.constructFrom(e,NaN);if(!n)return t;const r=t.getDate(),o=le.constructFrom(e,t.getTime());o.setMonth(t.getMonth()+n+1,0);const i=o.getDate();return r>=i?o:(t.setFullYear(o.getFullYear(),o.getMonth(),r),t)}function Ec(e,n){const t=+le.toDate(e);return le.constructFrom(e,t+n)}function Ei(e,n){return Ec(e,n*le.millisecondsInHour)}function Ag(e,n){return Ec(e,n*le.millisecondsInMinute)}function Rg(e,n){const t=n*3;return la(e,t)}function _g(e,n){const t=n*7;return Ic(e,t)}function Pg(e,n){return la(e,n*12)}function Og(e,n){return Ic(e,-n)}function Mg(e,n){return la(e,-n)}function Tc(e,n){return Ei(e,-n)}function Fc(e,n){return Ag(e,-n)}function Ng(e,n){return Rg(e,-n)}function kg(e,n){return _g(e,-n)}function Lg(e,n){return Pg(e,-n)}const It=(e,n)=>e.toString().padStart(n,"0"),zt=(e,n)=>{const t=le.formatInTimeZone(e,n,"yyyy-MM-dd"),[r,o,i]=t.split("-").map(a=>Number(a));return{year:r,month:o,day:i}},qt=(e,n)=>{const{year:t,month:r,day:o,hours:i=0,minutes:a=0,seconds:s=0,milliseconds:l=0}=e,c=`${It(t,4)}-${It(r,2)}-${It(o,2)}T${It(i,2)}:${It(a,2)}:${It(s,2)}.${It(l,3)}`;return le.fromZonedTime(c,n)},so=(e,n)=>new Date(Date.UTC(e,n,0)).getUTCDate(),lo=(e,n)=>{if(n===0)return e;const t=new Date(Date.UTC(e.year,e.month-1,e.day));return t.setUTCDate(t.getUTCDate()+n),{year:t.getUTCFullYear(),month:t.getUTCMonth()+1,day:t.getUTCDate()}},Vg=(e,n)=>n===0?e:lo(e,n*7),Dc=(e,n)=>{if(n===0)return e;const t=new Date(Date.UTC(e.year,e.month-1,1));t.setUTCMonth(t.getUTCMonth()+n);const r=t.getUTCFullYear(),o=t.getUTCMonth()+1,i=Math.min(e.day,so(r,o));return{year:r,month:o,day:i}},Bg=(e,n)=>Dc(e,n*3),jg=(e,n)=>{if(n===0)return e;const t=e.year+n,r=Math.min(e.day,so(t,e.month));return{year:t,month:e.month,day:r}},Ac=e=>Math.floor((e-1)/3)*3+1,Ft=(e,n)=>{const t=zt(e,n);return qt(t,n)},ut=(e,n)=>{const t=zt(e,n);return qt({...t,hours:23,minutes:59,seconds:59,milliseconds:999},n)},ca=(e,n,t)=>{const r=zt(e,n);return qt(t(r),n)},da=(e,n,t)=>{const r=zt(e,n),o=qt(t(r),n);return ut(o,n)},on=(e,n,t=1)=>{const r=typeof t=="object"?t.weekStart:t,i=(Number(le.formatInTimeZone(e,n,"i"))-r+7)%7,a=zt(e,n),s=i===0?a:lo(a,-i);return qt(s,n)},Dn=(e,n,t=1)=>{const r=typeof t=="object"?t.weekStart:t,o=on(e,n,r),i=zt(o,n),a=lo(i,6),s=qt(a,n);return ut(s,n)},An=(e,n)=>ca(e,n,t=>({year:t.year,month:t.month,day:1})),Rn=(e,n)=>da(e,n,t=>({year:t.year,month:t.month,day:so(t.year,t.month)})),_n=(e,n)=>ca(e,n,t=>({year:t.year,month:Ac(t.month),day:1})),Pn=(e,n)=>da(e,n,t=>{const o=Ac(t.month)+2;return{year:t.year,month:o,day:so(t.year,o)}}),On=(e,n)=>ca(e,n,t=>({year:t.year,month:1,day:1})),Mn=(e,n)=>da(e,n,t=>({year:t.year,month:12,day:31})),er=(e,n,t,r)=>{if(r===0)return Ft(e,n);const o=zt(e,n);let i=o;switch(t){case"day":i=lo(o,r);break;case"week":i=Vg(o,r);break;case"month":i=Dc(o,r);break;case"quarter":i=Bg(o,r);break;case"year":i=jg(o,r);break}return qt(i,n)},Zt=(e,n,t)=>er(e,n,"day",t),Jt=(e,n,t)=>er(e,n,"week",t),en=(e,n,t)=>er(e,n,"month",t),tn=(e,n,t)=>er(e,n,"quarter",t),nn=(e,n,t)=>er(e,n,"year",t),$g=e=>e?typeof e=="object"&&"tz"in e?e.tz:e:Intl.DateTimeFormat().resolvedOptions().timeZone,Ug=new Set(["last","this","previous","between"]),qs=e=>`${e}`.padStart(2,"0"),co=e=>{if(!e||typeof e!="object")return!1;const n=e.mode;return typeof n=="string"&&Ug.has(n)},Rc=e=>{if(!e||typeof e!="object")return!1;const n=e;return n.mode==="fixed"&&n.unit==="month"&&typeof n.year=="number"&&Number.isInteger(n.year)&&typeof n.month=="number"&&Number.isInteger(n.month)&&n.month>=0&&n.month<=11};function ua(e,n,t=1){if(co(e))return zg(e,n,t);if(!Rc(e))return;const r=`${e.year}-${qs(e.month+1)}-01T00:00:00`,o=e.month===11?e.year+1:e.year,i=(e.month+1)%12,a=`${o}-${qs(i+1)}-01T00:00:00`,s=le.fromZonedTime(r,n),l=le.fromZonedTime(a,n),c=new Date(l.getTime()-1);return[s,c]}function zg(e,n,t=1){const r=new Date,o=le.toZonedTime(r,n),i=le.fromZonedTime(o,n);switch(e.mode){case"last":{const{n:a,unit:s,complete:l}=e;if(l)switch(s){case"day":{const c=Zt(r,n,-a),d=Zt(r,n,-1);return[Ft(c,n),ut(d,n)]}case"week":{const c=Jt(r,n,-a),d=Jt(r,n,-1);return[on(c,n,t),Dn(d,n,t)]}case"month":{const c=en(r,n,-a),d=en(r,n,-1);return[An(c,n),Rn(d,n)]}case"quarter":{const c=tn(r,n,-a),d=tn(r,n,-1);return[_n(c,n),Pn(d,n)]}case"year":{const c=nn(r,n,-a),d=nn(r,n,-1);return[On(c,n),Mn(d,n)]}}else{let c;if(s==="minute")return[Fc(r,a),r];if(s==="hour")return[Tc(r,a),r];switch(s){case"day":c=Og(o,a);break;case"week":c=kg(o,a);break;case"month":c=Mg(o,a);break;case"quarter":c=Ng(o,a);break;case"year":c=Lg(o,a);break}return[le.fromZonedTime(c,n),i]}break}case"this":{const{unit:a,toDate:s}=e;let l,c;switch(a){case"day":l=Ft(r,n),c=ut(r,n);break;case"week":l=on(r,n,t),c=Dn(r,n,t);break;case"month":l=An(r,n),c=Rn(r,n);break;case"quarter":l=_n(r,n),c=Pn(r,n);break;case"year":l=On(r,n),c=Mn(r,n);break}return s?[l,r]:[l,c]}case"previous":{const{unit:a}=e;switch(a){case"day":{const s=Zt(r,n,-1);return[Ft(s,n),ut(s,n)]}case"week":{const s=Jt(r,n,-1);return[on(s,n,t),Dn(s,n,t)]}case"month":{const s=en(r,n,-1);return[An(s,n),Rn(s,n)]}case"quarter":{const s=tn(r,n,-1);return[_n(s,n),Pn(s,n)]}case"year":{const s=nn(r,n,-1);return[On(s,n),Mn(s,n)]}}break}case"between":{const{unit:a,from:s,to:l}=e;switch(a){case"day":{const c=Zt(r,n,s),d=Zt(r,n,l);return[Ft(c,n),ut(d,n)]}case"week":{const c=Jt(r,n,s),d=Jt(r,n,l);return[on(c,n,t),Dn(d,n,t)]}case"month":{const c=en(r,n,s),d=en(r,n,l);return[An(c,n),Rn(d,n)]}case"quarter":{const c=tn(r,n,s),d=tn(r,n,l);return[_n(c,n),Pn(d,n)]}case"year":{const c=nn(r,n,s),d=nn(r,n,l);return[On(c,n),Mn(d,n)]}}break}}return[Ft(r,n),ut(r,n)]}function qg(e){if(!e)return null;for(const[o,i]of Object.entries(_c))if(Hg(i,e))return o;const n=(o,i)=>Math.abs(o)===1?i:`${i}s`,t=(o,i)=>{if(o===0)return i==="day"?"today":`this ${i}`;if(o===-1)return i==="day"?"yesterday":`last ${i}`;if(o===1)return i==="day"?"tomorrow":`next ${i}`;const a=Math.abs(o);return o<0?`${a} ${n(a,i)} ago`:`${a} ${n(a,i)} ahead`},r=o=>o.charAt(0).toUpperCase()+o.slice(1);return e.mode==="this"?`This ${e.unit}${e.toDate?" to date":""}`:e.mode==="previous"?`Last ${e.unit}`:e.mode==="last"?`Last ${e.n} ${n(e.n,e.unit)}`:e.mode==="between"?e.from===e.to?r(t(e.from,e.unit)):`${r(t(e.from,e.unit))} to ${t(e.to,e.unit)}`:null}function Hg(e,n){return!(e.mode!==n.mode||e.unit!==n.unit||e.mode==="last"&&n.mode==="last"&&(e.n!==n.n||!!e.complete!=!!n.complete)||e.mode==="this"&&n.mode==="this"&&!!e.toDate!=!!n.toDate||e.mode==="between"&&n.mode==="between"&&(e.from!==n.from||e.to!==n.to))}const _c={"Last 30 minutes":{mode:"last",n:30,unit:"minute"},"Last 1 hour":{mode:"last",n:1,unit:"hour"},"Last 4 hours":{mode:"last",n:4,unit:"hour"},"Last 12 hours":{mode:"last",n:12,unit:"hour"},"Last 24 hours":{mode:"last",n:24,unit:"hour"},Today:{mode:"this",unit:"day"},"Last 7 days":{mode:"between",unit:"day",from:-6,to:0},"Last 30 days":{mode:"between",unit:"day",from:-29,to:0},"Last 90 days":{mode:"between",unit:"day",from:-89,to:0},"This week":{mode:"this",unit:"week"},"Last week":{mode:"previous",unit:"week"},"Last 2 weeks":{mode:"last",n:2,unit:"week",complete:!0},"This month":{mode:"this",unit:"month"},"Last month":{mode:"previous",unit:"month"},"Last 3 months":{mode:"last",n:3,unit:"month",complete:!0},"Last 6 months":{mode:"last",n:6,unit:"month",complete:!0},"Last 9 months":{mode:"last",n:9,unit:"month",complete:!0},"Last 12 months":{mode:"last",n:12,unit:"month",complete:!0},"This quarter":{mode:"this",unit:"quarter"},"Last quarter":{mode:"previous",unit:"quarter"},"Last 4 quarters":{mode:"last",n:4,unit:"quarter",complete:!0},"This year":{mode:"this",unit:"year"},"Last year":{mode:"previous",unit:"year"}};function Pc(e,n){const t=n||Intl.DateTimeFormat().resolvedOptions().timeZone,r={};for(const o of e.sheets||[])for(const i of o.frames||[])for(const a of i.cards||[]){if(!a.inlineFilters||a.inlineFilters.length===0)continue;const s=[];for(const l of a.inlineFilters){if(_e(l.dataType)==="date"&&l.defaultDateFilter){const d=ua(l.defaultDateFilter,t);if(!d)continue;const[u,f]=d,h={filterId:l.id,name:l.column,operation:"between",valueType:"date",values:[u,f],dataType:l.dataType,...co(l.defaultDateFilter)?{relativeMeta:l.defaultDateFilter}:{}};s.push(h);continue}l.defaultValues&&l.defaultValues.length>0&&s.push({filterId:l.id,name:l.column,operation:l.operation,valueType:_e(l.dataType),values:l.defaultValues,dataType:l.dataType})}s.length>0&&(r[a.id]=s)}return r}const Gg=new Set(["between","not between","=","!=",">",">=","<","<=","is null","is not null"]),Wg=new Set(["between","not between","=","!=",">",">=","<","<=","in","not in","is null","is not null"]),Yg=new Set(["=","!=","in","not in","like","not like","is null","is not null"]),Kg=new Set(["=","!=","is null","is not null"]),Xg={date:Gg,number:Wg,string:Yg,boolean:Kg};function Oc(e){const n=_e(e);return n==="number"||n==="boolean"||n==="date"?n:"string"}function uo(e,n){const t=n||Intl.DateTimeFormat().resolvedOptions().timeZone,r=Oc(e.dataType);if(r==="date"&&e.defaultDateFilter){const i=ua(e.defaultDateFilter,t);if(!i)return;const[a,s]=i;return{filterId:e.id,name:e.column,operation:"between",valueType:"date",values:[a,s],dataType:e.dataType,fieldMeta:e.fieldMeta,semanticContext:e.semanticContext,...co(e.defaultDateFilter)?{relativeMeta:e.defaultDateFilter}:{}}}if(e.defaultValues&&e.defaultValues.length>0)return{filterId:e.id,name:e.column,operation:e.operation,valueType:r,values:e.defaultValues,dataType:e.dataType,fieldMeta:e.fieldMeta,semanticContext:e.semanticContext}}function Qg(e,n){return e!=null&&e.length?e.map(t=>uo(t,n)).filter(t=>!!t):[]}function fa(e,n){var r;if(e.id!==n.filterId)return!1;const t=Oc(e.dataType);return n.valueType!==t?!1:((r=Xg[t])==null?void 0:r.has(n.operation))??n.operation===e.operation}function Zg(e,n){if(!(e!=null&&e.length)||!(n!=null&&n.length))return[];const t=new Map(e.map(r=>[r.id,r]));return n.filter(r=>{const o=t.get(r.filterId);return o?fa(o,r):!1})}function Jg(e,n){const t=[...e];for(const r of n){const o=t.findIndex(i=>i.filterId===r.filterId);o>=0?t[o]=r:t.push(r)}return t}function ey(e){const{previousFilters:n,nextFilters:t,filterValues:r}=e;if(!(r!=null&&r.length))return[];const o=new Set((n||[]).map(l=>l.id)),i=new Set((t||[]).map(l=>l.id)),a=r.filter(l=>!o.has(l.filterId)&&!i.has(l.filterId)),s=Zg(t,r);return[...a,...s]}function ty(e){const{previousFilters:n,nextFilters:t,currentFilterValues:r,defaultFilterValues:o}=e,i=ey({previousFilters:n,nextFilters:t,filterValues:r}),a=new Set((n||[]).map(u=>u.id)),s=new Set((r||[]).map(u=>u.filterId)),l=new Set(i.map(u=>u.filterId)),c=new Map((t||[]).map(u=>[u.id,u])),d=o.filter(u=>{const f=c.get(u.filterId);return!f||!fa(f,u)?!1:a.has(u.filterId)?s.has(u.filterId)&&!l.has(u.filterId):!0});return Jg(d,i)}function Hn(e,n){return Object.prototype.hasOwnProperty.call(e||{},n)}function Mc(e){return e!==void 0}function pa(e){return e.initialValueStrategy==="saved_default"}function Nc(e){return e.scope==="dashboard"&&pa(e)}function kc(e){return pa(e)&&e.defaultValue!==void 0}function Lc(e){const n={...e.dashboardValues||{}};for(const t of Object.values(e.cardValuesMap||{}))Object.assign(n,t);return n}function ny(e){return ma({controls:e.controls,dashboardDefaultValues:e.defaultControlValues})}function ma(e){const n={},t=e.dashboardDefaultValues,r=Mc(t);for(const o of e.controls||[])if(Nc(o)){if(r&&Hn(t,o.id)){const i=t==null?void 0:t[o.id];i!==void 0&&(n[o.id]=i);continue}o.defaultValue!==void 0&&(n[o.id]=o.defaultValue)}return n}function ry(e){const n=ma(e);return(e.controls||[]).map(t=>{if(!Nc(t))return t;const r=Hn(n,t.id)?n[t.id]:void 0;return t.defaultValue===r?t:{...t,defaultValue:r}})}function ha(e,n){if(pa(e))return e.scope==="dashboard"&&Mc(n)&&Hn(n,e.id)?n==null?void 0:n[e.id]:e.defaultValue}function oy(e){const n={};for(const t of sa(e)){const r={};for(const o of t.controls||[])kc(o)&&(r[o.id]=o.defaultValue);Object.keys(r).length>0&&(n[t.id]=r)}return n}function Uo(e,n,t){const r=(t==null?void 0:t.hasExplicitRuntimeOverrides)===!0,o=r?{}:ny(e),i=r?{}:oy(e);if(n===void 0)return{dashboardControlValues:o,cardControlValuesMap:i};const a=new Set((e.controls||[]).map(l=>l.id)),s=new Map;for(const l of sa(e))for(const c of l.controls||[])s.set(c.id,l.id);for(const[l,c]of Object.entries(n)){if(a.has(l)){c===void 0?delete o[l]:o[l]=c;continue}const d=s.get(l);d&&(i[d]||(i[d]={}),c===void 0?(delete i[d][l],Object.keys(i[d]).length===0&&delete i[d]):i[d][l]=c)}return{dashboardControlValues:o,cardControlValuesMap:i}}function iy(e){var t,r;const n={};for(const o of e.relevantControlIds){if(Hn(e.cardValues,o)){n[o]=(t=e.cardValues)==null?void 0:t[o];continue}Hn(e.dashboardValues,o)&&(n[o]=(r=e.dashboardValues)==null?void 0:r[o])}return n}function ay(e){const n={};for(const t of e.nextControls){const r=e.renamed&&t.id===e.renamed.newId?e.renamed.oldId:t.id;if(Object.prototype.hasOwnProperty.call(e.previousValues,r)){n[t.id]=e.previousValues[r];continue}const o=ha(t,e.nextDefaultValues);o!==void 0&&(n[t.id]=o)}return n}function sy(e){const n={};for(const t of e.nextControls){const r=e.renamed&&t.id===e.renamed.newId?e.renamed.oldId:t.id;if(e.previousValues&&Object.prototype.hasOwnProperty.call(e.previousValues,r)){n[t.id]=e.previousValues[r];continue}kc(t)&&(n[t.id]=t.defaultValue)}return n}function Vc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ly(e,n){return e&&n.reduce((t,r)=>{const o=new RegExp(`\\[\\[\\s*param\\.${Vc(r)}\\s*\\]\\]`,"g");return t.replace(o,"NULL")},e)}function cy(e,n){return(e||[]).some(t=>t.target==="sql_param"&&t.paramId===n)}function dy(e,n,t){return!e||e.length===0?e:e.map(r=>r.controlId===n?{...r,controlId:t}:r)}function uy(e,n){return!e||e.length===0?e:e.filter(t=>t.controlId!==n)}function fy(e,n,t){if(!e)return e;const r=new RegExp(`\\[\\[\\s*param\\.${Vc(n)}\\s*\\]\\]`,"g");return e.replace(r,`[[param.${t}]]`)}function Bc(e,n){if(n.type==="rename"){const t=dy(e.controlBindings,n.oldId,n.newId),r=cy(e.controlBindings,n.oldId)?e.sql:fy(e.sql,n.oldId,n.newId);return{...e,controlBindings:t,sql:r}}return{...e,controlBindings:uy(e.controlBindings,n.controlId),sql:ly(e.sql,[n.controlId,...(e.controlBindings||[]).filter(t=>t.target==="sql_param"&&t.controlId===n.controlId).map(t=>t.paramId)])}}function py(e,n){const t=new Set((e.controls||[]).map(r=>r.id));return n.type==="rename"?!t.has(n.oldId)&&!t.has(n.newId):!t.has(n.controlId)}function jc(e,n){return e&&e.map(t=>py(t,n)?Bc(t,n):t)}function my(e,n){return e&&e.map(t=>({...t,cards:jc(t.cards,n)||[]}))}function hy(e,n){return{...e,sheets:(e.sheets||[]).map(t=>({...t,cards:jc(t.cards,n),frames:my(t.frames,n)}))}}function gy(e,n,t){const r=new Set((t==null?void 0:t.affectedControlIds)||[]),o=(a,s)=>s?[...(a||[]).filter(c=>!r.has(c.controlId)&&!s.some(d=>d.controlId===c.controlId&&d.target===c.target)),...s]:(a||[]).filter(c=>!r.has(c.controlId)),i=a=>Object.prototype.hasOwnProperty.call(n,a.id)?{...a,controlBindings:o(a.controlBindings,n[a.id])}:a;return{...e,sheets:(e.sheets||[]).map(a=>({...a,cards:(a.cards||[]).map(i),frames:(a.frames||[]).map(s=>({...s,cards:(s.cards||[]).map(i)}))}))}}function $c(e){if(e.type==="model")return`${Br}.${e.name}`;if(e.type==="dataset"){if(e.database&&e.schema)return`${e.database}.${e.schema}.${e.name}`;if(e.schema)return`${e.schema}.${e.name}`;if(e.database)return`${e.database}.${e.name}`}if(yc.includes(e.type)){if(e.database&&e.schema)return`${e.database}.${e.schema}.${e.name}`;if(e.schema)return`${e.schema}.${e.name}`;if(e.database)return`${e.database}.${e.name}`}return e.name}function yy(e){return Array.isArray(e)?e.reduce((n,t)=>t.role!=="assistant"?(n.push(t),n):t.parts.some(o=>{var i;return!!(o.type==="reasoning"&&o.state==="streaming"||o.type==="text"&&o.state==="streaming"||(i=o.type)!=null&&i.startsWith("tool-")&&o.state==="input-streaming")})?(console.log("Removing aborted assistant message:",t.id),n):(n.push(t),n),[]):e}function ga(e){const{selectedEntities:n}=e,t=n.map(r=>({...r,qualifiedEntityName:$c(r)}));return{...e,selectedEntities:t}}const Hs={selectedEntities:[]};function by(e){var n;return ga({selectedEntities:e.selectedEntities,fileAttachments:(n=e.fileAttachments)==null?void 0:n.map(({data:t,preview:r,...o})=>o)})}const Se=Ut()(to((e,n)=>({currentAIContext:Hs,hasEditorEntitySelectionOverride:!1,activeAssistantType:null,dashboardEntitySelectionOverrides:{},pendingDashboardDraftMigration:null,assistantMessageContexts:{},reasoningEffort:"low",showReasoning:!1,messageQueues:{dashboard:[],editor:[]},fileAttachments:{dashboard:[],editor:[]},uploadProgress:new Map,actions:{setCurrentAIContext:t=>{e(r=>{r.currentAIContext=ga(t)})},setHasEditorEntitySelectionOverride:t=>{e(r=>{r.hasEditorEntitySelectionOverride=t})},setActiveAssistantType:t=>{e(r=>{r.activeAssistantType=t})},updateSelectedEntities:t=>{e(r=>{r.currentAIContext.selectedEntities=t})},setDashboardEntitySelectionOverride:(t,r)=>{e(o=>{o.dashboardEntitySelectionOverrides[t]=r})},clearDashboardEntitySelectionOverride:t=>{e(r=>{delete r.dashboardEntitySelectionOverrides[t]})},setPendingDashboardDraftMigration:t=>{e(r=>{r.pendingDashboardDraftMigration=t})},setPendingDashboardDraftMigrationExpectedDashboardId:t=>{e(r=>{r.pendingDashboardDraftMigration&&(r.pendingDashboardDraftMigration.expectedDashboardId=t)})},clearPendingDashboardDraftMigration:()=>{e(t=>{t.pendingDashboardDraftMigration=null})},setAssistantMessageContext:(t,r)=>{e(o=>{o.assistantMessageContexts[t]=by(r)})},clearAssistantMessageContext:t=>{e(r=>{delete r.assistantMessageContexts[t]})},clearAssistantMessageContexts:t=>{e(r=>{if(!t||t.length===0){r.assistantMessageContexts={};return}t.forEach(o=>{delete r.assistantMessageContexts[o]})})},clearAIContext:()=>{e(t=>{t.currentAIContext=Hs,t.hasEditorEntitySelectionOverride=!1,t.dashboardEntitySelectionOverrides={},t.pendingDashboardDraftMigration=null,t.assistantMessageContexts={}})},mergeAIContext:t=>{e(r=>{r.currentAIContext={...r.currentAIContext,...t}})},setReasoningEffort:t=>{e(r=>{r.reasoningEffort=t})},setShowReasoning:t=>{e(r=>{r.showReasoning=t})},queueMessage:(t,r,o)=>{e(i=>{i.messageQueues[t].push({id:crypto.randomUUID(),text:r,timestamp:Date.now(),fileAttachments:o})})},dequeueMessage:t=>{if(n().messageQueues[t].length===0)return;let o;return e(i=>{const a=i.messageQueues[t].shift();a&&(o={id:a.id,text:a.text,timestamp:a.timestamp})}),o},removeFromQueue:(t,r)=>{e(o=>{o.messageQueues[t]=o.messageQueues[t].filter(i=>i.id!==r)})},clearQueue:t=>{e(r=>{r.messageQueues[t]=[]})},addFileAttachment:(t,r)=>{e(o=>{o.fileAttachments[t].push(r)})},removeFileAttachment:(t,r)=>{e(o=>{o.fileAttachments[t]=o.fileAttachments[t].filter(i=>i.id!==r)})},clearFileAttachments:t=>{e(r=>{r.fileAttachments[t]=[]})},updateUploadProgress:(t,r)=>{e(o=>{o.uploadProgress.set(t,r)})},getFileAttachments:t=>n().fileAttachments[t]}}))),vy=()=>Se(e=>e.currentAIContext),Cy=()=>Se(e=>e.activeAssistantType),Sy=e=>Se(n=>e?n.assistantMessageContexts[e]:void 0),xy=()=>Se(e=>e.actions),wy=e=>Se(n=>n.messageQueues[e]),Iy=()=>Se(ro(e=>({queueMessage:e.actions.queueMessage,dequeueMessage:e.actions.dequeueMessage,removeFromQueue:e.actions.removeFromQueue,clearQueue:e.actions.clearQueue}))),Ey=e=>Se(n=>n.fileAttachments[e]),Ty=()=>Se(ro(e=>({addFileAttachment:e.actions.addFileAttachment,removeFileAttachment:e.actions.removeFileAttachment,clearFileAttachments:e.actions.clearFileAttachments,updateUploadProgress:e.actions.updateUploadProgress,getFileAttachments:e.actions.getFileAttachments}))),Fy={},Ti={},Dy=e=>({updatePageSize:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,pageSize:n}}}}}),updateColumnSettingsMap:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,columnSettingsMap:n}}}}}),updateTableBaseFormatting:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,baseFormatting:n}}}}}),updateTableConditionalFormatting:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,conditionalFormatting:n}}}}}),updateColumnSizing:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,columnSizing:n}}}}}),updateColumnVisibility:(n,t)=>e(r=>{var a,s,l,c,d,u;const i={...((l=(s=(a=r.card)==null?void 0:a.preferences)==null?void 0:s.tablePrefs)==null?void 0:l.columnVisibility)||{},[n]:t};return{card:{...r.card,preferences:{...(c=r.card)==null?void 0:c.preferences,tablePrefs:{...(u=(d=r.card)==null?void 0:d.preferences)==null?void 0:u.tablePrefs,columnVisibility:i}}}}}),showAllColumns:()=>e(n=>{var i,a,s,l,c,d;const t=((s=(a=(i=n.card)==null?void 0:i.preferences)==null?void 0:a.tablePrefs)==null?void 0:s.columnVisibility)||Ti,r=Object.keys(t);if(r.length===0)return n;const o={};return r.forEach(u=>{o[u]=!0}),{card:{...n.card,preferences:{...(l=n.card)==null?void 0:l.preferences,tablePrefs:{...(d=(c=n.card)==null?void 0:c.preferences)==null?void 0:d.tablePrefs,columnVisibility:o}}}}}),hideAllColumns:()=>e(n=>{var i,a,s,l,c,d;const t=((s=(a=(i=n.card)==null?void 0:i.preferences)==null?void 0:a.tablePrefs)==null?void 0:s.columnVisibility)||Ti,r=Object.keys(t);if(r.length===0)return n;const o={};return r.forEach(u=>{o[u]=!1}),{card:{...n.card,preferences:{...(l=n.card)==null?void 0:l.preferences,tablePrefs:{...(d=(c=n.card)==null?void 0:c.preferences)==null?void 0:d.tablePrefs,columnVisibility:o}}}}}),toggleSelectColumn:n=>e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,selectColumnVisible:n}}}}}),initializeColumnVisibility:n=>e(t=>{var o,i,a;const r={};return n.forEach(s=>{r[s]=!0}),{card:{...t.card,preferences:{...(o=t.card)==null?void 0:o.preferences,tablePrefs:{...(a=(i=t.card)==null?void 0:i.preferences)==null?void 0:a.tablePrefs,columnVisibility:r}}}}}),updateAllColumnVisibility:n=>typeof n=="function"?(console.error("Function updater received instead of visibility object - ignoring"),e(t=>t)):e(t=>{var r,o,i;return{card:{...t.card,preferences:{...(r=t.card)==null?void 0:r.preferences,tablePrefs:{...(i=(o=t.card)==null?void 0:o.preferences)==null?void 0:i.tablePrefs,columnVisibility:n}}}}})});function Ay(e){var t,r;const n=(r=(t=e==null?void 0:e.preferences)==null?void 0:t.textVisualOptions)==null?void 0:r.content;return Array.isArray(n)&&n.length>0}function ya(e){var n;return!!((n=e==null?void 0:e.description)!=null&&n.trim())||Ay(e)}function ba(e){var n,t;return!e||e.type!=="text"?!1:!!((n=e.sql)!=null&&n.trim()||(t=e.python)!=null&&t.trim()||Hl.hasValidCardConfig(e.config))}function Ry(e){var n,t;return!e||e.type!=="text"?!1:((t=(n=e.preferences)==null?void 0:n.textVisualOptions)==null?void 0:t.isDynamicText)===!0?!0:ba(e)&&!ya(e)}function _y(e){var n,t;return!e||e.type!=="text"?!1:ba(e)&&(((t=(n=e.preferences)==null?void 0:n.textVisualOptions)==null?void 0:t.isDynamicText)===!0||!ya(e))}const Py=/^\(?\s*\{[\s\S]*\}\s*\)?$/,Oy=[{pattern:/\bfetch\s*\(/i,message:"Visual code must not fetch external data."},{pattern:/\bXMLHttpRequest\b/i,message:"Visual code must not use XMLHttpRequest."},{pattern:/\bWebSocket\b/i,message:"Visual code must not use WebSocket."},{pattern:/\bimport\s*\(/i,message:"Visual code must not use dynamic imports."},{pattern:/<script[\s>]|<\/script>|<!DOCTYPE|<html[\s>]|<body[\s>]/i,message:"Visual code must be renderer code only, not an HTML document."},{pattern:/\bcreateElement\s*\(\s*['"]script['"]\s*\)/i,message:"Visual code must not create script elements at runtime."},{pattern:/\bimportScripts\s*\(/i,message:"Visual code must not import external scripts."}];function Uc(e){return e.visualizationMode??"builtin"}function zc(e){return Uc(e)==="dynamic"}function My(e){return e.type==="custom"}function Ny(e,n){return n?{...e,settings:n}:e}function ky(e,n){const t=n.selectedConnectionId||e.connectionId||"";if(!e.dataSource){if(!t)return;const r=n.selectedDatabaseName||e.lastSelectedDatabase,o=n.selectedSchemaName||e.lastSelectedSchema,i=n.selectedTableName||e.lastSelectedTable;return{connectionId:t,connectionType:"",mode:"database",selectedEntities:[],...r&&o&&i?{dbSelection:{database:r,schema:o,entityType:"table"}}:{}}}return{...e.dataSource,connectionId:n.selectedConnectionId||e.dataSource.connectionId||e.connectionId||""}}function Ly(e){var n,t,r,o;return{showChrome:(t=(n=e.preferences)==null?void 0:n.displayOptions)==null?void 0:t.showChrome,allowScroll:(o=(r=e.preferences)==null?void 0:r.displayOptions)==null?void 0:o.allowScroll}}function Vy(e){var n,t;return(((n=e.dynamicCardPreferences)==null?void 0:n.provenance)==="card-config"||((t=e.dynamicCardPreferences)==null?void 0:t.provenance)==="query_spec")&&!!e.config}function By(e){var n,t,r,o;return((t=(n=e.dynamicCardPreferences)==null?void 0:n.fallback)==null?void 0:t.mode)==="table"&&!e.dynamicCardPreferences.fallback.chartType?"table":((o=(r=e.dynamicCardPreferences)==null?void 0:r.fallback)==null?void 0:o.chartType)||e.type}function qc(e,n="Fallback to the underlying built-in visual"){return{mode:e==="table"||e==="detailTable"?"table":"chart",chartType:e,reason:n}}function Hc(e,n){return{renderer:"dynamic-visual",builtinDisplayOptions:n,fallback:qc(e)}}function Gc(e){var o,i,a,s,l,c,d,u,f,h,y,m,b,C;const n=(o=e.dynamicCardPreferences)==null?void 0:o.builtinDisplayOptions;if(!n)return((a=(i=e.preferences)==null?void 0:i.displayOptions)==null?void 0:a.showChrome)!==!1||((l=(s=e.preferences)==null?void 0:s.displayOptions)==null?void 0:l.allowScroll)!==!1?e:{...e,preferences:{...e.preferences,displayOptions:{...e.preferences.displayOptions,showChrome:!0,allowScroll:!0}}};const t=n.showChrome??((d=(c=e.preferences)==null?void 0:c.displayOptions)==null?void 0:d.showChrome),r=n.allowScroll??((f=(u=e.preferences)==null?void 0:u.displayOptions)==null?void 0:f.allowScroll);return t===((y=(h=e.preferences)==null?void 0:h.displayOptions)==null?void 0:y.showChrome)&&r===((b=(m=e.preferences)==null?void 0:m.displayOptions)==null?void 0:b.allowScroll)?e:{...e,preferences:{...e.preferences,displayOptions:{...(C=e.preferences)==null?void 0:C.displayOptions,showChrome:t,allowScroll:r}}}}function jy(e,n,t){var r;return{...Hc(e.type,Ly(e)),...e.dynamicCardPreferences,renderer:"dynamic-visual",artifactId:(t==null?void 0:t.artifactId)||((r=e.dynamicCardPreferences)==null?void 0:r.artifactId)||e.id,title:(t==null?void 0:t.title)||e.title,rendererCode:n}}function $y(e,n,t){return n==="dynamic"&&(t!=null&&t.rendererCode)?{...e,visualizationMode:"dynamic",dynamicCardPreferences:jy(e,t.rendererCode,{artifactId:t.artifactId,title:t.title})}:{...Gc(e),visualizationMode:"builtin",dynamicCardPreferences:void 0}}function Uy(e){return{...e,type:By(e),visualizationMode:"builtin"}}function zy(e,{isDevMode:n,cardSql:t,isShowingVisual:r,selectedSchemaName:o,selectedDatamodelId:i,selectedDatabaseName:a,selectedTableName:s,selectedConnectionId:l,remoteChartSettings:c,stripConfig:d}){const u=Vy(e),f=n&&!u,h=!n&&_y(e),y=f||h;return{...e,dataSource:ky(e,{selectedConnectionId:l,selectedDatabaseName:a,selectedSchemaName:o,selectedTableName:s}),lastSelectedSchema:o,lastSelectedDatamodelId:i,lastSelectedDatabase:a,lastSelectedTable:s,connectionId:l||e.connectionId,sql:y?t||e.sql:void 0,python:y?e.python:void 0,config:f||!e.config?void 0:d(e.config),customCfg:r?e.customCfg:null,preferences:e.preferences,customCardPreferences:Ny(e.customCardPreferences,c)}}function Wc(e){return String(e||"").trim().replace(/;+\s*$/,"")}function qy(e){let n=e.trim();for(;n.startsWith("(")&&n.endsWith(")")&&Hy(n);)n=n.slice(1,-1).trim();return n}function Hy(e){let n=0;for(let t=0;t<e.length;t+=1){const r=e[t];if(r==="("){n+=1;continue}if(r===")"&&(n-=1,n===0&&t<e.length-1||n<0))return!1}return n===0}function Yc(e,n,t){let r=n+1;for(;r<e.length;){const o=e[r];if(o==="\\"){r+=2;continue}if(t==="`"&&o==="$"&&e[r+1]==="{"){r=Qc(e,r+1,"{","}")+1;continue}if(o===t)return r;r+=1}return e.length-1}function Kc(e,n){let t=n+2;for(;t<e.length&&e[t]!==`
57
57
  `;)t+=1;return t}function Xc(e,n){let t=n+2;for(;t<e.length-1;){if(e[t]==="*"&&e[t+1]==="/")return t+1;t+=1}return e.length-1}function Qc(e,n,t,r){let o=1,i=n+1;for(;i<e.length;){const a=e[i],s=e[i+1];if(a==='"'||a==="'"||a==="`"){i=Yc(e,i,a),i+=1;continue}if(a==="/"&&s==="/"){i=Kc(e,i),i+=1;continue}if(a==="/"&&s==="*"){i=Xc(e,i),i+=1;continue}if(a===t)o+=1;else if(a===r&&(o-=1,o===0))return i;i+=1}return e.length-1}function Gy(e){const n=qy(e),t=n.indexOf("{");if(t<0)return null;const r=Qc(n,t,"{","}");return r<=t?null:n.slice(t+1,r)}function Wy(e){const n=[];let t=0,r=0,o=0,i=0,a=0;for(;a<e.length;){const l=e[a],c=e[a+1];if(l==='"'||l==="'"||l==="`"){a=Yc(e,a,l),a+=1;continue}if(l==="/"&&c==="/"){a=Kc(e,a),a+=1;continue}if(l==="/"&&c==="*"){a=Xc(e,a),a+=1;continue}l==="{"?r+=1:l==="}"?r-=1:l==="("?o+=1:l===")"?o-=1:l==="["?i+=1:l==="]"?i-=1:l===","&&r===0&&o===0&&i===0&&(n.push(e.slice(t,a).trim()),t=a+1),a+=1}const s=e.slice(t).trim();return s&&n.push(s),n.filter(Boolean)}function Yt(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Gs(e,n){const t={getterOrSetter:new RegExp(String.raw`^(?:async\s+)?(?:get|set)\s+['"]?${Yt(n)}['"]?\b`,"s"),methodShorthand:new RegExp(String.raw`^(?:async\s+)?['"]?${Yt(n)}['"]?\s*\(`,"s"),functionAssignment:new RegExp(String.raw`^['"]?${Yt(n)}['"]?\s*:\s*(?:async\s+)?function\b`,"s"),arrowAssignment:new RegExp(String.raw`^['"]?${Yt(n)}['"]?\s*:\s*(?:async\s+)?(?:\([^)]*\)|[A-Za-z_$][\w$]*)\s*=>`,"s")},r=e.find(o=>new RegExp(String.raw`^(?:async\s+)?(?:get\s+|set\s+)?['"]?${Yt(n)}['"]?\b|^['"]?${Yt(n)}['"]?\s*:`,"s").test(o));return r?t.getterOrSetter.test(r)?`Visual code cannot use getter/setter lifecycle hooks for ${n}.`:t.methodShorthand.test(r)||t.functionAssignment.test(r)?null:t.arrowAssignment.test(r)?`Visual code cannot use arrow functions for ${n}; use a method or function-valued property instead.`:`Visual code must define ${n}${n==="mount"?"({ container, payload, runtime })":"()"} as a function.`:`Visual code must define ${n}${n==="mount"?"({ container, payload, runtime })":"()"} as a function.`}function Zc(e){const n=Wc(e);if(!n)return{valid:!1,error:"Paste or generate visual code before saving this dynamic visual."};try{if(!Py.test(n))return{valid:!1,error:"Visual code must be a single object-literal expression."};for(const{pattern:a,message:s}of Oy)if(a.test(n))return{valid:!1,error:s};new Function(`"use strict"; return (${n});`);const t=Gy(n);if(!t)return{valid:!1,error:"Visual code must be a single object-literal expression."};const r=Wy(t);if(r.length===0)return{valid:!1,error:"Visual code must define mount() and destroy() lifecycle methods."};const o=Gs(r,"mount");if(o)return{valid:!1,error:o};const i=Gs(r,"destroy");return i?{valid:!1,error:i}:{valid:!0}}catch(t){return{valid:!1,error:t instanceof Error?t.message:"Visual code could not be parsed."}}}function Yy(e){var n;return zc(e)&&Zc((n=e.dynamicCardPreferences)==null?void 0:n.rendererCode).error||null}function Ky(e){for(const n of e.cards){const t=Yy(n);if(t)return t}return null}function Xy(e){if(e==null)return"nullish";if(typeof e=="number")return Number.isFinite(e)?"number":"invalid-number";if(typeof e=="string"){const n=e.trim();return n?Number.isNaN(Date.parse(n))?"string":"dateish-string":"blank-string"}return typeof e=="boolean"?"boolean":Array.isArray(e)?"array":typeof e=="object"?"object":typeof e}function Qy(e){if(!e||typeof e!="object")return null;const n=e;return{groupByColumns:(n.groupByColumns||[]).map(t=>(t==null?void 0:t.name)||(t==null?void 0:t.label)||""),metricColumns:(n.metricColumns||[]).map(t=>(t==null?void 0:t.name)||(t==null?void 0:t.label)||""),detailColumns:(n.detailColumns||[]).map(t=>(t==null?void 0:t.name)||(t==null?void 0:t.label)||""),filters:(n.filters||[]).map(t=>({column:(t==null?void 0:t.column)||"",operation:(t==null?void 0:t.operation)||""}))}}function Zy(e){var a,s,l,c,d,u;if(!e)return"no-payload";const n=Array.isArray(e.records)?e.records:[],t=n.slice(0,20).map(f=>f&&typeof f=="object"&&!Array.isArray(f)?f:{}),r=Array.from(new Set(t.flatMap(f=>Object.keys(f)))).sort().slice(0,20),o=r.map(f=>{const h=t.reduce((y,m)=>{const b=Xy(m[f]);return y[b]=(y[b]||0)+1,y},{});return{key:f,kinds:h}}),i=t.slice(0,8).map(f=>{const h={};for(const y of r.slice(0,8)){const m=f[y];if(m==null){h[y]="nullish";continue}if(typeof m=="number"){h[y]=Number.isFinite(m)?`n:${m}`:"n:invalid";continue}if(typeof m=="string"){h[y]=`s:${m.trim().slice(0,64)}`;continue}if(typeof m=="boolean"){h[y]=`b:${m}`;continue}if(Array.isArray(m)){h[y]=`a:${m.length}`;continue}if(typeof m=="object"){h[y]=`o:${Object.keys(m).slice(0,6).join(",")}`;continue}h[y]=`${typeof m}:${String(m).slice(0,64)}`}return h});return JSON.stringify({title:e.title||"",themeMode:((a=e.theme)==null?void 0:a.mode)||"unknown",hasRecords:n.length>0,rowCount:((s=e.metadata)==null?void 0:s.rowCount)??n.length,artifactId:((l=e.metadata)==null?void 0:l.artifactId)||"",sql:((c=e.metadata)==null?void 0:c.sql)||"",python:((d=e.metadata)==null?void 0:d.python)||"",cardConfig:Qy((u=e.metadata)==null?void 0:u.cardConfig),sampleKeys:r,sampleValueProfile:o,sampleValueSnapshot:i})}function Jc(){return{version:1,blocks:[{type:"paragraph",children:[]}]}}function va(e){return tr(e)?e.version===1&&Array.isArray(e.blocks)&&e.blocks.every(eb):!1}function Jy(e,n){return!va(e)||!e.blocks.length?"":e.blocks.map(t=>rb(t,n)).join("")}function eb(e){return tr(e)?e.type==="paragraph"?Array.isArray(e.children)&&e.children.every(Dr):e.type==="heading"?(e.level===1||e.level===2)&&Array.isArray(e.children)&&e.children.every(Dr):e.type==="list"?(e.style==="bulleted"||e.style==="numbered")&&Array.isArray(e.items)&&e.items.every(n=>Array.isArray(n)&&n.every(Dr)):!1:!1}function Dr(e){return tr(e)?e.type==="text"?typeof e.value=="string"&&Ws(e.format):e.type==="variable"?nb(e.ref)&&Ws(e.format):e.type==="link"?typeof e.url=="string"&&Array.isArray(e.children)&&e.children.every(tb):!1:!1}function tb(e){return Dr(e)&&(e.type==="text"||e.type==="variable")}function Ws(e){return e===void 0?!0:tr(e)?(e.bold===void 0||typeof e.bold=="boolean")&&(e.italic===void 0||typeof e.italic=="boolean"):!1}function nb(e){return tr(e)?e.source==="dashboardInput"?typeof e.inputId=="string"&&Ys(e.export):e.source==="dashboardInputAlias"?typeof e.variableName=="string"&&(e.export===void 0||Ys(e.export)):e.source==="documentMeta"?e.key==="generatedAt"||e.key==="pageNumber"||e.key==="pageCount":!1:!1}function Ys(e){return e==="label"||e==="value"||e==="start"||e==="end"||e==="range"}function tr(e){return!!e&&typeof e=="object"&&!Array.isArray(e)}function rb(e,n){switch(e.type){case"heading":{const t=e.level===1?"h1":"h2";return`<${t}>${zo(e.children,n)}</${t}>`}case"list":{const t=e.style==="numbered"?"ol":"ul",r=e.items.map(o=>`<li>${zo(o,n)}</li>`).join("");return`<${t}>${r}</${t}>`}case"paragraph":default:return e.children.length===0?"<p><br></p>":`<p>${zo(e.children,n)}</p>`}}function zo(e,n){return e.map(t=>ed(t,n)).join("")}function ed(e,n){if(e.type==="link"){const r=e.children.map(i=>ed(i,n)).join(""),o=sb(e.url);return o?`<a href="${ab(o)}" target="_blank" rel="noopener noreferrer">${r}</a>`:r}const t=e.type==="variable"?ib(e.ref,n):e.value;return ob(td(t),e.format)}function ob(e,n){let t=e;return n!=null&&n.italic&&(t=`<em>${t}</em>`),n!=null&&n.bold&&(t=`<strong>${t}</strong>`),t}function ib(e,n){if(e.source==="documentMeta")return"";const t=e.source==="dashboardInput"?n.variablesById[e.inputId]:n.variablesByName[e.variableName];if(!t)return"";const r=e.source==="dashboardInputAlias"?e.export||"label":e.export,o=t.exports[r];return o==null?"":String(o)}function td(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function ab(e){return td(e)}function sb(e){const n=(e||"").trim();if(!n)return"";if(n.startsWith("/")||n.startsWith("#")||n.startsWith("?")||n.startsWith("//"))return n;if(lb(n))return"";const t=n.match(/^([a-zA-Z][a-zA-Z0-9+\-.]*):/);if(!t)return`https://${n}`;const r=t[1].toLowerCase();return r==="http"||r==="https"||r==="mailto"||r==="tel"?n:""}function lb(e){for(let n=0;n<e.length;n+=1){const t=e.charCodeAt(n);if(t<=32||t===127)return!0}return!1}const cb=(e,n)=>({updateFrame:t=>{e(r=>{Object.assign(r.frame,t)})},setActiveCardInFrame:t=>{const{frame:r}=n(),o=r.cards.find(i=>i.id===t);o&&e(i=>{i.frame.activeCardId=t,i.card=o})},addCard:()=>{const{frame:t}=n(),r={type:"bar",id:`card-${Date.now()}`,title:`Card ${t.cards.length+1}`,dataSource:{connectionId:"",connectionType:"",mode:"database",selectedEntities:[]},config:{groupByColumns:[],metricColumns:[],pivotByColumns:[],sortByColumns:[]},paginationConfig:{page:1,pageSize:50}};e(o=>{o.frame.cards.push(r),o.frame.activeCardId=r.id,o.card=r})},removeCard:t=>{const{frame:r}=n();r.cards.length<=1||e(o=>{const i=o.frame.cards.findIndex(a=>a.id===t);if(i!==-1&&o.frame.cards.splice(i,1),o.frame.activeCardId===t){const a=o.frame.cards[0];a&&(o.frame.activeCardId=a.id,o.card=a)}})},updateCard:(t,r)=>{e(o=>{o.card.id===t&&Object.assign(o.card,r)})},setActiveCard:t=>{const{frame:r}=n(),o=r.cards.find(i=>i.id===t);o&&e(i=>{i.frame.activeCardId=t,i.card=o})},setActiveTabCard:t=>{e(r=>{r.activeTabCardId=t})},setDataSource:t=>{e(r=>{r.card.dataSource=t})},updateDataSource:t=>{e(r=>{const o={...t};r.card.dataSource=o})},updateSemanticDomain:t=>{e(r=>{r.card.dataSource?(r.card.dataSource.semanticDomainId=t,r.card.dataSource.mode="semanticDomain"):r.card.dataSource={connectionId:"",connectionType:"",mode:"semanticDomain",semanticDomainId:t,selectedEntities:[]}})},updateDirectSource:t=>{e(r=>{r.card.dataSource?r.card.dataSource={...r.card.dataSource,...t}:r.card.dataSource={connectionId:"",connectionType:"",mode:"database",...t,selectedEntities:[]}})},getAvailableFields:()=>[],updateCardConfig:(t,r)=>{e(o=>{o.card.id===t&&(o.card.config={...o.card.config,...r})})},updateRowLimit:(t,r)=>{e(o=>{o.card.id===t&&(o.card.config||(o.card.config={}),o.card.config.rowLimit=r)})},addGroupByColumn:(t,r)=>{e(o=>{var i;o.card.id===t&&((i=o.card.config)!=null&&i.groupByColumns||(o.card.config.groupByColumns=[]),o.card.config.groupByColumns.push(r))})},removeGroupByColumn:(t,r)=>{e(o=>{var i;if(o.card.id===t&&((i=o.card.config)!=null&&i.groupByColumns)){const a=o.card.config.groupByColumns.findIndex(s=>s.id===r);a!==-1&&o.card.config.groupByColumns.splice(a,1)}})},updateGroupByColumn:(t,r,o)=>{e(i=>{var a;if(i.card.id===t&&((a=i.card.config)!=null&&a.groupByColumns)){const s=i.card.config.groupByColumns.findIndex(l=>l.id===r);s!==-1&&Object.assign(i.card.config.groupByColumns[s],o)}})},addMetricColumn:(t,r)=>{e(o=>{var i;o.card.id===t&&((i=o.card.config)!=null&&i.metricColumns||(o.card.config.metricColumns=[]),o.card.config.metricColumns.push(r))})},removeMetricColumn:(t,r)=>{e(o=>{var i;if(o.card.id===t&&((i=o.card.config)!=null&&i.metricColumns)){const a=o.card.config.metricColumns.findIndex(s=>s.id===r);a!==-1&&o.card.config.metricColumns.splice(a,1)}})},updateMetricColumn:(t,r,o)=>{e(i=>{var a;if(i.card.id===t&&((a=i.card.config)!=null&&a.metricColumns)){const s=i.card.config.metricColumns.findIndex(l=>l.id===r);if(s!==-1){const l=i.card.config.metricColumns[s];if(o.parameters){l.parameters={...l.parameters||{},...o.parameters};const c={...o};delete c.parameters,Object.assign(l,c)}else Object.assign(l,o)}}})},addPivotByColumn:(t,r)=>{e(o=>{var i;o.card.id===t&&((i=o.card.config)!=null&&i.pivotByColumns||(o.card.config.pivotByColumns=[]),o.card.config.pivotByColumns.push(r))})},removePivotByColumn:(t,r)=>{e(o=>{var i;if(o.card.id===t&&((i=o.card.config)!=null&&i.pivotByColumns)){const a=o.card.config.pivotByColumns.findIndex(s=>s.id===r);a!==-1&&o.card.config.pivotByColumns.splice(a,1)}})},updatePivotByColumn:(t,r,o)=>{e(i=>{var a;if(i.card.id===t&&((a=i.card.config)!=null&&a.pivotByColumns)){const s=i.card.config.pivotByColumns.findIndex(l=>l.id===r);s!==-1&&Object.assign(i.card.config.pivotByColumns[s],o)}})},addSortByColumn:(t,r)=>{e(o=>{var i;o.card.id===t&&((i=o.card.config)!=null&&i.sortByColumns||(o.card.config.sortByColumns=[]),o.card.config.sortByColumns.push(r))})},removeSortByColumn:(t,r)=>{e(o=>{var i;if(o.card.id===t&&((i=o.card.config)!=null&&i.sortByColumns)){const a=o.card.config.sortByColumns.findIndex(s=>s.id===r);a!==-1&&o.card.config.sortByColumns.splice(a,1)}})},updateSortByColumn:(t,r,o)=>{e(i=>{var a;if(i.card.id===t&&((a=i.card.config)!=null&&a.sortByColumns)){const s=i.card.config.sortByColumns.findIndex(l=>l.id===r);s!==-1&&Object.assign(i.card.config.sortByColumns[s],o)}})},updateFilters:(t,r)=>{e(o=>{o.card.id===t&&(o.card.config||(o.card.config={}),o.card.config.filters=r)})},clearFilters:t=>{e(r=>{r.card.id===t&&r.card.config&&(r.card.config.filters=void 0)})},addJoin:(t,r)=>{e(o=>{var i;o.card.id===t&&((i=o.card.config)!=null&&i.joinPlan||(o.card.config.joinPlan={baseEntity:{connectionId:"",connectionType:"none",type:"table",name:""},joins:[]}),o.card.config.joinPlan.joins.push(r))})},removeJoin:(t,r)=>{e(o=>{var i;if(o.card.id===t&&((i=o.card.config)!=null&&i.joinPlan)){const a=o.card.config.joinPlan.joins.findIndex(s=>s.id===r);a!==-1&&o.card.config.joinPlan.joins.splice(a,1)}})},updateJoin:(t,r,o)=>{e(i=>{var a;if(i.card.id===t&&((a=i.card.config)!=null&&a.joinPlan)){const s=i.card.config.joinPlan.joins.findIndex(l=>l.id===r);s!==-1&&Object.assign(i.card.config.joinPlan.joins[s],o)}})},reorderJoins:(t,r)=>{e(o=>{var i;if(o.card.id===t&&((i=o.card.config)!=null&&i.joinPlan)){const a=r.map((s,l)=>{const c=o.card.config.joinPlan.joins.find(d=>d.id===s);return c?{...c,sequence:l}:null}).filter(Boolean);o.card.config.joinPlan.joins=a}})}}),db=[],ub=[],fb=e=>({updateDrillHierarchies:n=>{e(t=>({card:{...t.card,interactionConfig:{...t.card.interactionConfig,drillHierarchies:n}}}))},addDrillHierarchy:n=>e(t=>{var o;const r=((o=t.card.interactionConfig)==null?void 0:o.drillHierarchies)||[];return{card:{...t.card,interactionConfig:{...t.card.interactionConfig,drillHierarchies:[...r,n]}}}}),removeDrillHierarchy:n=>e(t=>{var o;const r=((o=t.card.interactionConfig)==null?void 0:o.drillHierarchies)||[];return{card:{...t.card,interactionConfig:{...t.card.interactionConfig,drillHierarchies:r.filter(i=>i.id!==n)}}}}),updateDrillHierarchy:(n,t)=>e(r=>{var i;const o=((i=r.card.interactionConfig)==null?void 0:i.drillHierarchies)||[];return{card:{...r.card,interactionConfig:{...r.card.interactionConfig,drillHierarchies:o.map(a=>a.id===n?{...a,...t}:a)}}}}),setDefaultHierarchy:n=>e(t=>{var o;const r=((o=t.card.interactionConfig)==null?void 0:o.drillHierarchies)||[];return{card:{...t.card,interactionConfig:{...t.card.interactionConfig,drillHierarchies:r.map(i=>({...i,default:i.id===n}))}}}}),updateAllowedDrillTargets:n=>e(t=>({card:{...t.card,interactionConfig:{...t.card.interactionConfig,allowedDrillTargets:n}}})),addDrillTarget:n=>e(t=>{var o;const r=((o=t.card.interactionConfig)==null?void 0:o.allowedDrillTargets)||[];return r.some(i=>i.id===n.id)?t:{card:{...t.card,interactionConfig:{...t.card.interactionConfig,allowedDrillTargets:[...r,n]}}}}),removeDrillTarget:n=>e(t=>{var o;const r=((o=t.card.interactionConfig)==null?void 0:o.allowedDrillTargets)||[];return{card:{...t.card,interactionConfig:{...t.card.interactionConfig,allowedDrillTargets:r.filter(i=>i.id!==n)}}}}),updateInlineDrillPreview:n=>e(t=>({card:{...t.card,config:{...t.card.config,inlineDrillPreview:n}}})),toggleInlineDrillPreview:n=>e(t=>{var r,o,i,a,s;return{card:{...t.card,config:{...t.card.config,inlineDrillPreview:{...(r=t.card.config)==null?void 0:r.inlineDrillPreview,enabled:n,limit:((i=(o=t.card.config)==null?void 0:o.inlineDrillPreview)==null?void 0:i.limit)||5,mode:((s=(a=t.card.config)==null?void 0:a.inlineDrillPreview)==null?void 0:s.mode)||"lazy"}}}}}),updateInteractionConfig:n=>e(t=>({card:{...t.card,interactionConfig:{...t.card.interactionConfig,...n}}})),resetDrillConfiguration:()=>e(n=>({card:{...n.card,interactionConfig:{drillHierarchies:db,allowedDrillTargets:ub},config:{...n.card.config,inlineDrillPreview:{enabled:!1,limit:5,mode:"lazy"}}}}))}),nd="en-US",Ks=["compact","maximumFractionDigits","minimumFractionDigits","negativeStyle","type","useGrouping"];function pb(e){if(e.type!=="currency"||Object.prototype.hasOwnProperty.call(e,"currency")||Object.prototype.hasOwnProperty.call(e,"locale"))return!1;const n=Object.keys(e).sort();return n.length===Ks.length&&Ks.every((t,r)=>n[r]===t)&&typeof e.minimumFractionDigits=="number"&&typeof e.maximumFractionDigits=="number"&&e.useGrouping===!0&&e.negativeStyle==="minus"&&typeof e.compact=="boolean"}function rd(e,n){if(!(typeof e!="number"||typeof n!="number"))return e===n?n:void 0}function kt(e){if(typeof e!="string")return;const n=e.trim();if(!(!n||n.toLowerCase()==="none"))return n}function Ar(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.max(0,Math.min(10,Math.trunc(e)))}function mb(e){return e==="currency"?2:e==="percent"?1:e==="scientific"?2:0}function hb(e,n,t){const r=Ar(n.minimumFractionDigits),o=Ar(n.maximumFractionDigits);if(typeof r=="number"||typeof o=="number"){const s=r??0,l=o??Math.max(s,2);return{minimumFractionDigits:Math.min(s,l),maximumFractionDigits:Math.max(s,l)}}const i=Ar(n.decimals);if(typeof i=="number")return{minimumFractionDigits:i,maximumFractionDigits:i};if(t!=null&&t.preserveOmittedProperties)return{};const a=mb(e);return{minimumFractionDigits:a,maximumFractionDigits:a}}function $e(e,n,t){const r=hb(e,n,t),o=kt(n.locale),i=kt(n.currency),a=typeof n.prefix=="string"?n.prefix:void 0,s=typeof n.suffix=="string"?n.suffix:void 0,l=e==="percent"&&s==="%"?void 0:s,c={type:e,locale:o,minimumFractionDigits:r.minimumFractionDigits,maximumFractionDigits:r.maximumFractionDigits,useGrouping:typeof n.useGrouping=="boolean"?n.useGrouping:typeof n.thousandsSeparator=="boolean"?n.thousandsSeparator:!0,prefix:a,suffix:l,negativeStyle:n.negativeStyle||"minus",compact:!!n.compact,scale:typeof n.scale=="number"?n.scale:void 0};return e==="currency"&&i&&(c.currency=i),e==="percent"&&(c.percentValueMode=n.percentValueMode||"fraction"),c}function Fi(e){return{type:"date",locale:e.locale||nd,pattern:e.pattern,relative:!!e.relative,timezone:e.timezone,sourceTimezone:e.sourceTimezone,prefix:e.prefix,suffix:e.suffix}}function qo(e){return e==="millisecond"||e==="second"||e==="minute"||e==="hour"||e==="day"}function Di(e){const n=Ar(e.maxUnits);return{type:"duration",inputUnit:qo(e.inputUnit)?e.inputUnit:"second",outputStyle:e.outputStyle==="digital"||e.outputStyle==="long"?e.outputStyle:"compact",largestUnit:qo(e.largestUnit)?e.largestUnit:void 0,smallestUnit:qo(e.smallestUnit)?e.smallestUnit:"second",maxUnits:n,prefix:e.prefix,suffix:e.suffix,negativeStyle:e.negativeStyle||"minus"}}function Xs(e){return{type:"string",prefix:e.prefix,suffix:e.suffix}}function fo(e,n){if(!e)return;if(typeof e=="string"){const r=e.trim().toLowerCase();return r==="currency"?$e("currency",{},n):r==="percentage"||r==="percent"?$e("percent",{percentValueMode:"fraction"},n):r==="scientific"?$e("scientific",{},n):r==="date"?Fi({}):r==="duration"?Di({}):r==="string"?Xs({}):r==="number"?$e("number",{},n):void 0}const t=e;if(t.type==="percentage")return $e("percent",{...t,percentValueMode:t.percentValueMode||"fraction"},n);if(t.type==="number"||t.type==="currency"||t.type==="percent"||t.type==="scientific"){const r=$e(t.type,t,n);return pb(t)?{...r,currency:"USD"}:r}if(t.type==="date")return Fi(t);if(t.type==="duration")return Di(t);if(t.type==="string")return Xs(t)}function Ca(e,n){if(!(e!=null&&e.type)||e.type==="auto")return;if(e.type==="date")return Fi({locale:e.locale,pattern:e.dateFormat,timezone:e.timezone,sourceTimezone:e.sourceTimezone,relative:e.relative,prefix:e.prefix,suffix:e.suffix});if(e.type==="duration")return Di({inputUnit:e.durationInputUnit,outputStyle:e.durationDisplayStyle,largestUnit:e.durationLargestUnit,smallestUnit:e.durationSmallestUnit,maxUnits:e.durationMaxUnits,prefix:e.prefix,suffix:e.suffix,negativeStyle:e.negativeInParentheses?"parentheses":"minus"});if(e.type!=="number"&&e.type!=="currency"&&e.type!=="percent"&&e.type!=="scientific")return;const t=typeof e.decimalPlaces=="number"?e.decimalPlaces:void 0;return $e(e.type,{type:e.type,currency:e.currency,locale:e.locale,prefix:e.prefix,suffix:e.suffix,minimumFractionDigits:e.minimumFractionDigits??t,maximumFractionDigits:e.maximumFractionDigits??t,useGrouping:e.useGrouping,compact:!!e.useSuffix,negativeStyle:e.negativeInParentheses?"parentheses":"minus",scale:e.multiplyBy,percentValueMode:e.type==="percent"?typeof e.multiplyBy=="number"?"whole":e.percentValueMode||"fraction":void 0},n)}function gb(e){const n=Ca(e,{preserveOmittedProperties:!0});if(!n||n.type!=="currency")return n;const t=!kt(e==null?void 0:e.currency)&&typeof(e==null?void 0:e.decimalPlaces)=="number";return{...n,currency:t?"USD":n.currency}}function yb(e){if(!e)return;const n=kt(e.currency),t=kt(e.locale),r=typeof e.prefix=="string"?e.prefix:void 0,o=typeof e.suffix=="string"?e.suffix:void 0,i=n?"currency":o==="%"?"percent":"number";return $e(i,{currency:n,locale:t,prefix:r,suffix:o,minimumFractionDigits:e.minimumFractionDigits,maximumFractionDigits:e.maximumFractionDigits,decimals:e.decimalPlaces,useGrouping:e.useGrouping,percentValueMode:i==="percent"?e.percentValueMode||"whole":void 0})}function bb(e){if(!e)return;const n=kt(e.currency),t=kt(e.locale),r=typeof e.suffix=="string"?e.suffix:void 0,o=n?"currency":r==="%"?"percent":"number";return $e(o,{currency:n,locale:t,suffix:r,minimumFractionDigits:e.minimumFractionDigits,maximumFractionDigits:e.maximumFractionDigits,decimals:e.decimalPlaces,useGrouping:e.useGrouping,percentValueMode:o==="percent"?e.percentValueMode||"whole":void 0})}function od(e,n){if(!e)return;const t=e.style==="currency"?"currency":e.style==="percent"?"percent":e.style==="scientific"?"scientific":e.style==="decimal"?"number":void 0;if(t)return $e(t,{currency:e.currency,locale:e.locale,minimumFractionDigits:e.minimumFractionDigits,maximumFractionDigits:e.maximumFractionDigits,useGrouping:e.useGrouping,percentValueMode:t==="percent"?e.percentValueMode||"whole":void 0,scale:e.scale,compact:e.compact,negativeStyle:e.negativeStyle,prefix:e.prefix,suffix:e.suffix},n)}function id(e){return!!(e&&e.minimumFractionDigits===void 0&&e.maximumFractionDigits===void 0&&typeof e.currency=="string"&&e.currency.length>0&&typeof e.locale=="string"&&e.locale.length>0&&typeof e.showDataBar=="boolean"&&typeof e.dataBarColor=="string"&&e.dataBarColor.length>0)}function vb(e){const n=od(e,{preserveOmittedProperties:!0});return!n||n.type==="date"||n.type==="duration"||n.type==="string"||!id(e)?n:{...n,minimumFractionDigits:n.minimumFractionDigits===void 0&&n.maximumFractionDigits===void 0?0:n.minimumFractionDigits,maximumFractionDigits:n.minimumFractionDigits===void 0&&n.maximumFractionDigits===void 0?2:n.maximumFractionDigits}}function Cb(e,n){const t=fo(e,n);if(t){if(t.type==="date")return{type:"date",locale:t.locale,dateFormat:t.pattern,timezone:t.timezone,sourceTimezone:t.sourceTimezone,relative:t.relative,prefix:t.prefix,suffix:t.suffix};if(t.type==="duration")return{type:"duration",durationInputUnit:t.inputUnit,durationDisplayStyle:t.outputStyle,durationLargestUnit:t.largestUnit,durationSmallestUnit:t.smallestUnit,durationMaxUnits:t.maxUnits,prefix:t.prefix,suffix:t.suffix,negativeInParentheses:t.negativeStyle==="parentheses"};if(t.type!=="string")return{type:t.type,locale:t.locale,currency:t.type==="currency"?t.currency:void 0,decimalPlaces:n!=null&&n.preserveOmittedProperties?void 0:rd(t.minimumFractionDigits,t.maximumFractionDigits),minimumFractionDigits:t.minimumFractionDigits,maximumFractionDigits:t.maximumFractionDigits,useGrouping:t.useGrouping,prefix:t.prefix,suffix:t.suffix,useSuffix:!!t.compact,negativeInParentheses:t.negativeStyle==="parentheses",multiplyBy:t.type==="percent"?t.scale??(t.percentValueMode==="whole"?1:100):t.scale,percentValueMode:t.type==="percent"?t.percentValueMode:void 0}}}function Sb(e,n){const t=fo(e,n);return!t||t.type==="date"||t.type==="duration"||t.type==="string"?void 0:{style:t.type==="currency"?"currency":t.type==="percent"?"percent":t.type==="scientific"?"scientific":"decimal",currency:t.type==="currency"&&t.currency||(n!=null&&n.preserveOmittedProperties?void 0:"USD"),locale:t.locale||(n!=null&&n.preserveOmittedProperties?void 0:nd),minimumFractionDigits:t.minimumFractionDigits??(n!=null&&n.preserveOmittedProperties?void 0:0),maximumFractionDigits:t.maximumFractionDigits??(n!=null&&n.preserveOmittedProperties?void 0:2),useGrouping:typeof t.useGrouping=="boolean"?t.useGrouping:!0,percentValueMode:t.type==="percent"?t.percentValueMode||"fraction":"whole",scale:t.scale,compact:t.compact,negativeStyle:t.negativeStyle,prefix:t.prefix,suffix:t.suffix,showDataBar:!1,dataBarColor:"#3b82f6",dataBarMinValue:void 0,dataBarMaxValue:void 0}}function xb(e){const n=fo(e);if(!(!n||n.type==="date"||n.type==="duration"||n.type==="string"))return{decimalPlaces:rd(n.minimumFractionDigits,n.maximumFractionDigits),minimumFractionDigits:n.minimumFractionDigits,maximumFractionDigits:n.maximumFractionDigits,currency:n.type==="currency"?n.currency:void 0,locale:n.locale,prefix:n.prefix,suffix:n.suffix||(n.type==="percent"?"%":void 0),useGrouping:n.useGrouping,percentValueMode:n.type==="percent"?n.percentValueMode:void 0,enabled:!0}}function wb(e){var n;return(n=e==null?void 0:e.kpiVisualOptions)!=null&&n.formatOptions?{...e,kpiVisualOptions:{...e.kpiVisualOptions,formatOptions:void 0}}:e}function Ib(e){var i,a,s,l,c,d;if(!e||e.type!=="kpi")return e;const n=(a=(i=e.preferences)==null?void 0:i.kpiVisualOptions)==null?void 0:a.formatOptions;if(!n)return e;const t=(l=(s=e.config)==null?void 0:s.metricColumns)==null?void 0:l[0];if(!t)return e;const r=Ca(n)||t.format,o=wb(e.preferences);return r?{...e,config:{...e.config,metricColumns:[{...t,format:r},...((d=(c=e.config)==null?void 0:c.metricColumns)==null?void 0:d.slice(1))||[]]},preferences:o}:{...e,preferences:o}}const Eb=()=>({groupByColumns:[],metricColumns:[],pivotByColumns:[],sortByColumns:[],showTrendline:!1,trendlineWindow:30,trendlineGranularity:"day"});function Qs(e){var t;if(e.type!=="text")return;const n=(t=e.preferences)==null?void 0:t.textVisualOptions;va(n==null?void 0:n.richContent)||(e.preferences={...e.preferences,textVisualOptions:{...n,content:void 0,richContent:Jc()}})}function rn(e){const n=Ib(e)||e;return{...n,visualizationMode:n.visualizationMode??"builtin"}}function Tb(e){return{...e,cards:e.cards.map(n=>rn(n))}}const nr=Ut()(to((e,n)=>({isDevMode:!1,userInputForAI:"",triggerAIRun:!1,showAIDialog:!1,isShowingVisual:!0,runSql:!1,sqlGen:{},sql:"",isSqlRunning:!1,queryResultColumns:[],showFilters:!1,applyFilters:!1,filterValues:[{filterId:"sample-filter-id",valueType:"string",name:"",operation:"in",values:[""]}],inlineFilterValuesMap:{},dataSourceState:{mode:"directSource"},card:{id:"editor-card-id",title:"Editor Card",type:"bar",visualizationMode:"builtin",data:[]},frame:{id:Je(),cards:[{id:"editor-card-id",title:"Editor Card",type:"bar",visualizationMode:"builtin",data:[]}],activeCardId:"editor-card-id"},modeDrafts:{sqlDraft:null,pythonDraft:null,configDraft:null,originalMode:"none"},actions:{...fb(e),...cb(e,n),...Dy(e),resetEditorStore:()=>{e(t=>{t.tempQueryData=void 0,t.isDevMode=!1,t.isShowingVisual=!0,t.showAIDialog=!1,t.userInputForAI="",t.triggerAIRun=!1,t.runSql=!1,t.isSqlRunning=!1,t.sqlGen={},t.queryResultColumns=[],t.queryError=void 0,t.pythonStdOut=void 0,t.showFilters=!1,t.applyFilters=!1,t.filterValues=void 0,t.inlineFilterValuesMap={},t.selectedConnectionId=void 0,t.selectedDatamodelId=void 0,t.selectedDatabaseName=void 0,t.selectedSchemaName=void 0,t.selectedTableName=void 0,t.currentAssitantScope=void 0,t.activeTabCardId=void 0,t.editorContext=void 0,t.card={id:"editor-card-id",title:"Editor Card",type:"bar",visualizationMode:"builtin"},t.frame={id:Je(),cards:[{id:"editor-card-id",title:"Editor Card",type:"bar",visualizationMode:"builtin"}],activeCardId:"editor-card-id"},t.modeDrafts={sqlDraft:null,pythonDraft:null,configDraft:null,originalMode:"none"}})},setEditorFilterMode:(t,r)=>{e(o=>{var a,s;const i=(s=(a=o.card.queryConfig)==null?void 0:a.filterColumns)==null?void 0:s.find(l=>l.name===t);i&&(r==="include"?i.mode="include":i.mode="exclude")})},setCardTitle:t=>{e(r=>{r.card.title=t})},setCardDescription:t=>{e(r=>{r.card.description=t})},setCardInfo:t=>{e(r=>{r.card.info=t})},setCardId:t=>{e(r=>{const o=r.card.id;r.card.id=t,r.frame.cards=r.frame.cards.map(i=>i.id===o?{...i,id:t}:i),r.frame.activeCardId===o&&(r.frame.activeCardId=t),r.activeTabCardId===o&&(r.activeTabCardId=t)})},setCountryLogo:t=>{e(r=>{r.card.preferences||(r.card.preferences={}),r.card.preferences.kpiVisualOptions||(r.card.preferences.kpiVisualOptions={}),r.card.preferences.kpiVisualOptions.countryLogoId=t||void 0})},setQueryConfig:t=>{e(r=>{r.card.queryConfig=t})},addOrderByColumn:t=>{e(r=>{var o;r.card.queryConfig={...r.card.queryConfig,orderBy:[...((o=r.card.queryConfig)==null?void 0:o.orderBy)||[],t]}})},removeOrderByColumn:t=>{e(r=>{var o,i;r.card.queryConfig={...r.card.queryConfig,orderBy:(i=(o=r.card.queryConfig)==null?void 0:o.orderBy)==null?void 0:i.filter(a=>a.columnId!==t.columnId)}})},updateOrderByColumn:t=>{e(r=>{var o,i;r.card.queryConfig={...r.card.queryConfig,orderBy:(i=(o=r.card.queryConfig)==null?void 0:o.orderBy)==null?void 0:i.map(a=>a.columnId===t.columnId?t:a)}})},setOrderByColumns:t=>{e(r=>{r.card.queryConfig={...r.card.queryConfig,orderBy:t}})},setPivotByColumns:t=>{e(r=>{r.card.queryConfig={...r.card.queryConfig,pivotColumns:t}})},updateEditorFilterValue:(t,r,o)=>{e(i=>{var s,l,c,d,u;const a=(l=(s=i.card.queryConfig)==null?void 0:s.filters)==null?void 0:l.find(f=>f.filterColumnName===t);o&&(i.card.queryConfig={...i.card.queryConfig,filters:(d=(c=i.card.queryConfig)==null?void 0:c.filters)==null?void 0:d.filter(f=>f.filterColumnName!==t)}),a?a.filterValue=r:i.card.queryConfig={...i.card.queryConfig,filters:[...((u=i.card.queryConfig)==null?void 0:u.filters)||[],{filterColumnName:t,filterValue:r}]}})},clearEditorFilter:t=>{e(r=>{var o,i;r.card.queryConfig={...r.card.queryConfig,filters:(i=(o=r.card.queryConfig)==null?void 0:o.filters)==null?void 0:i.filter(a=>a.filterColumnName!==t.name)}})},removeEditorFilter:t=>{e(r=>{var o,i,a,s;r.card.queryConfig={...r.card.queryConfig,filters:(i=(o=r.card.queryConfig)==null?void 0:o.filters)==null?void 0:i.filter(l=>l.filterColumnName!==t.name),filterColumns:(s=(a=r.card.queryConfig)==null?void 0:a.filterColumns)==null?void 0:s.filter(l=>l.id!==t.id)}})},setTempQueryData:t=>{e(r=>{r.tempQueryData=t})},setIsDevMode:t=>{n().actions.switchEditorMode(t?"dev":"standard")},switchEditorMode:(t,r)=>{const o=n().isDevMode?"dev":"standard";if(t===o){r!=null&&r.sqlToLoad&&e(i=>{i.card.sql=r.sqlToLoad});return}e(i=>{var s,l;const a=i.card;r!=null&&r.skipDraftSave||(o==="dev"?(i.modeDrafts.sqlDraft=a.sql||null,i.modeDrafts.pythonDraft=a.python||null):i.modeDrafts.configDraft=a.config?{...a.config}:null),o==="dev"?(i.card.sql=void 0,i.card.python=void 0):i.card.config=void 0,t==="dev"?(i.card.sql=(r==null?void 0:r.sqlToLoad)||i.modeDrafts.sqlDraft||a.sql,i.card.python=i.modeDrafts.pythonDraft||a.python):i.card.config=i.modeDrafts.configDraft||a.config,t==="dev"?(s=a.dataSource)!=null&&s.connectionId&&(i.card.connectionId=a.dataSource.connectionId):a.connectionId&&(i.card.dataSource?i.card.dataSource.connectionId=a.connectionId:i.card.dataSource={connectionId:a.connectionId,connectionType:((l=a.dataSource)==null?void 0:l.connectionType)||"",mode:"database",selectedEntities:[]}),i.isDevMode=t==="dev"})},initializeModeDrafts:t=>{e(r=>{var c,d;const o=!!((c=t.sql)!=null&&c.trim()),i=!!((d=t.python)!=null&&d.trim()),a=o||i,s=Hl.hasValidCardConfig(t.config);let l;a&&s?l="both":a?l="dev":s?l="standard":l="none",r.modeDrafts={sqlDraft:null,pythonDraft:null,configDraft:null,originalMode:l},l==="both"&&(r.modeDrafts.configDraft=t.config?{...t.config}:null,r.isDevMode=!0),l==="dev"||l==="both"?r.isDevMode=!0:r.isDevMode=!1})},mergeDraftsIntoCard:()=>{e(t=>{const{sqlDraft:r,pythonDraft:o,configDraft:i}=t.modeDrafts;t.isDevMode?i&&(t.card.config=i):(r&&(t.card.sql=r),o&&(t.card.python=o))})},clearModeDrafts:()=>{e(t=>{t.modeDrafts={sqlDraft:null,pythonDraft:null,configDraft:null,originalMode:"none"}})},setMetricColumns:t=>{e(r=>{r.card.queryConfig={...r.card.queryConfig,metricColumns:t}})},addColumnToMetricColumns:t=>{e(r=>{var o;r.card.queryConfig={...r.card.queryConfig,metricColumns:[...((o=r.card.queryConfig)==null?void 0:o.metricColumns)||[],t]}})},updateMetricColumnOld:(t,r)=>{e(o=>{var i,a;o.card.queryConfig={...o.card.queryConfig,metricColumns:(a=(i=o.card.queryConfig)==null?void 0:i.metricColumns)==null?void 0:a.map(s=>s.id===t?r:s)}})},removeColumnFromMetricColumns:t=>{e(r=>{var o,i,a,s;r.card.queryConfig={...r.card.queryConfig,metricColumns:(i=(o=r.card.queryConfig)==null?void 0:o.metricColumns)==null?void 0:i.filter(l=>l.id!==t)},r.card.queryConfig={...r.card.queryConfig,orderBy:(s=(a=r.card.queryConfig)==null?void 0:a.orderBy)==null?void 0:s.filter(l=>l.columnId!==t)}})},removeColumnFromPivotBy:t=>{e(r=>{var o,i,a,s;r.card.queryConfig={...r.card.queryConfig,pivotColumns:(i=(o=r.card.queryConfig)==null?void 0:o.pivotColumns)==null?void 0:i.filter(l=>l.id!==t)},r.card.queryConfig={...r.card.queryConfig,orderBy:(s=(a=r.card.queryConfig)==null?void 0:a.orderBy)==null?void 0:s.filter(l=>l.columnId!==t)}})},setGroupByColumns:t=>{e(r=>{r.card.queryConfig={...r.card.queryConfig,groupByColumns:t}})},addColumnToGroupBy:t=>{e(r=>{var o;r.card.queryConfig={...r.card.queryConfig,groupByColumns:[...((o=r.card.queryConfig)==null?void 0:o.groupByColumns)||[],t]}})},updateGroupByColumnOld:(t,r)=>{e(o=>{var i,a;o.card.queryConfig={...o.card.queryConfig,groupByColumns:(a=(i=o.card.queryConfig)==null?void 0:i.groupByColumns)==null?void 0:a.map(s=>s.id===t?r:s)}})},updatePivotByColumnOld:(t,r)=>{e(o=>{var i,a;o.card.queryConfig={...o.card.queryConfig,pivotColumns:(a=(i=o.card.queryConfig)==null?void 0:i.pivotColumns)==null?void 0:a.map(s=>s.id===t?r:s)}})},removeColumnFromGroupBy:t=>{e(r=>{var o,i,a,s;r.card.queryConfig={...r.card.queryConfig,groupByColumns:(i=(o=r.card.queryConfig)==null?void 0:o.groupByColumns)==null?void 0:i.filter(l=>l.id!==t)},r.card.queryConfig={...r.card.queryConfig,orderBy:(s=(a=r.card.queryConfig)==null?void 0:a.orderBy)==null?void 0:s.filter(l=>l.columnId!==t)}})},setFilterColumns:t=>{e(r=>{r.card.queryConfig={...r.card.queryConfig,filterColumns:t}})},addColumnToFilterColumns:t=>{e(r=>{var o;r.card.queryConfig={...r.card.queryConfig,filterColumns:[...((o=r.card.queryConfig)==null?void 0:o.filterColumns)||[],t]}})},updateFilterColumn:(t,r)=>{e(o=>{var i,a;o.card.queryConfig={...o.card.queryConfig,filterColumns:(a=(i=o.card.queryConfig)==null?void 0:i.filterColumns)==null?void 0:a.map(s=>s.id===t?r:s)}})},removeColumnFromFilterColumns:t=>{e(r=>{var o,i;r.card.queryConfig={...r.card.queryConfig,filterColumns:(i=(o=r.card.queryConfig)==null?void 0:o.filterColumns)==null?void 0:i.filter(a=>a.id!==t)}})},setCurrentAssitantScope:t=>{e(r=>{r.currentAssitantScope=t})},setLegendOptions:t=>{e(r=>{var o,i,a,s,l,c;r.card.preferences={...r.card.preferences,chartOptions:{...(o=r.card.preferences)==null?void 0:o.chartOptions,plugins:{...(a=(i=r.card.preferences)==null?void 0:i.chartOptions)==null?void 0:a.plugins,legend:{...(c=(l=(s=r.card.preferences)==null?void 0:s.chartOptions)==null?void 0:l.plugins)==null?void 0:c.legend,...t}}}}})},setChartGrid:t=>{e(r=>{var o,i,a,s,l,c,d,u,f,h,y,m,b,C,g;r.card.preferences={...r.card.preferences,chartOptions:{...(o=r.card.preferences)==null?void 0:o.chartOptions,scales:{x:{...(s=(a=(i=r.card.preferences)==null?void 0:i.chartOptions)==null?void 0:a.scales)==null?void 0:s.x,grid:{...(u=(d=(c=(l=r.card.preferences)==null?void 0:l.chartOptions)==null?void 0:c.scales)==null?void 0:d.x)==null?void 0:u.grid,display:t==="x"||t==="xy"}},y:{...(y=(h=(f=r.card.preferences)==null?void 0:f.chartOptions)==null?void 0:h.scales)==null?void 0:y.y,grid:{...(g=(C=(b=(m=r.card.preferences)==null?void 0:m.chartOptions)==null?void 0:b.scales)==null?void 0:C.y)==null?void 0:g.grid,display:t==="y"||t==="xy"}}}}}})},runAssistant:t=>{e(r=>{r.showAIDialog=!0,r.userInputForAI=t,r.triggerAIRun=!0})},setShowAIDialog:t=>{e(r=>{r.showAIDialog=t})},setUserInputForAI:t=>{e(r=>{r.userInputForAI=t})},setTriggerAIRun:t=>{e(r=>{r.triggerAIRun=t})},updateCardTab:(t,r)=>{e(o=>{const i=rn(r),a=o.frame,s={...a,cards:a.cards.map(c=>c.id===i.id?i:c),activeCardId:t};o.frame=s;const l=s.cards.find(c=>c.id===t);o.card=rn(l)})},setActiveTabCardId:t=>{e(r=>{r.activeTabCardId=t})},setCustomCardPreferences:t=>{e(r=>{r.card.customCardPreferences=t,r.card.visualizationMode="builtin"})},setVisualizationMode:t=>{e(r=>{r.card.visualizationMode=t,t==="builtin"&&r.card.dynamicCardPreferences&&(r.card=Gc(r.card))})},setDynamicCardPreferences:t=>{e(r=>{r.card.dynamicCardPreferences=t})},setChartOrientation:t=>{e(r=>{var a,s,l,c,d,u;const o=r.card.preferences;let i={};((a=o==null?void 0:o.chartOptions)==null?void 0:a.indexAxis)!==t&&(i={x:(l=(s=o==null?void 0:o.chartOptions)==null?void 0:s.scales)==null?void 0:l.y,y:(d=(c=o==null?void 0:o.chartOptions)==null?void 0:c.scales)==null?void 0:d.x}),r.card.preferences={...o,chartOptions:{...o==null?void 0:o.chartOptions,scales:{...(u=o==null?void 0:o.chartOptions)==null?void 0:u.scales,...i},indexAxis:t}}})},setValueAlignment:t=>{e(r=>{var o;r.card.preferences={...r.card.preferences,kpiVisualOptions:{...(o=r.card.preferences)==null?void 0:o.kpiVisualOptions,valueAlignment:t}}})},setSortChart:t=>{e(r=>{r.card.preferences={...r.card.preferences,sortChart:t}})},setCustomVisualCode:t=>{e(r=>{r.card.preferences={...r.card.preferences,customVisualCode:t}})},setNumberFormat:(t,r,o,i)=>{e(a=>{var s,l,c;a.card.preferences={...(s=a.card)==null?void 0:s.preferences,formatNumber:{...(c=(l=a.card)==null?void 0:l.preferences)==null?void 0:c.formatNumber,decimalPlaces:t,currency:r,locale:o,suffix:i,enabled:!0}}})},setColorRanges:t=>{e(r=>{var o,i;r.card.preferences={...r.card.preferences,formatNumber:{...(i=(o=r.card)==null?void 0:o.preferences)==null?void 0:i.formatNumber,colorRanges:t}}})},setQueryResultColumns:t=>{e(r=>{r.queryResultColumns=t})},setCardPreferences:t=>{e(r=>{r.card.preferences=t})},setFilterOnClickColumnIndex:t=>{e(r=>{r.card.preferences={...r.card.preferences,filterOnClickColumnIndex:t}})},setFilterOnClickField:t=>{e(r=>{r.card.preferences={...r.card.preferences,filterOnClick:!0,filterOnClickField:t}})},setCardRefreshInterval:t=>{e(r=>{r.card.refreshInterval=t})},setIsShowingVisual:t=>{e({isShowingVisual:t})},setRunSql:t=>{e({runSql:t})},setIsSqlRunning:t=>{e({isSqlRunning:t})},clearQueryConfig:()=>{e(t=>{t.card.queryConfig=void 0})},updateCardInFrame:t=>{e(r=>{const o=rn(t);r.frame.cards=r.frame.cards.map(i=>i.id===o.id?o:i)})},setFrame:t=>{e({frame:Tb(t)})},replaceFrameCards:t=>{const r=t.map(o=>rn(o));e(o=>{var i,a;o.frame.cards=r,o.frame.activeCardId=((i=r[0])==null?void 0:i.id)||"",o.card=r[0]||o.card,o.activeTabCardId=((a=r[0])==null?void 0:a.id)||null})},setCard:t=>{e({card:rn(t)})},switchCardType:t=>{e(r=>{r.card.type=t,r.card.visualizationMode="builtin",r.card.sql="",r.card.python="",r.card.customCfg={},r.card.preferences={},Qs(r.card)})},setCardType:t=>{e(r=>{var i;const o=r.card.type;if(r.card.type=t,r.card.visualizationMode="builtin",t==="text"&&o!=="text"&&Qs(r.card),t==="range"&&(r.card.preferences={...r.card.preferences,chartOptions:{...(i=r.card.preferences)==null?void 0:i.chartOptions,indexAxis:"y"}}),t==="kpi"){const a=r.card.config??{},s=a.groupByColumns||[],l=a.metricColumns||[],c=s.find(f=>_e(f.dataType)==="date");let d=[],u=[];c?(d=[c],u=l.slice(0,2)):(d=[],u=l.slice(0,3)),r.card.config={...a,groupByColumns:d,metricColumns:u,pivotByColumns:[],sortByColumns:[],showTrendline:!1,trendlineWindow:30,trendlineGranularity:"day"}}})},setCardSql:t=>{e(r=>{r.card.sql=t})},setCardPython:t=>{e(r=>{r.card.python=t})},setPythonStdOut:t=>{e(r=>{r.pythonStdOut=t})},setCardConfig:t=>{e(r=>{r.card.config=t})},setCardCustomCfg:t=>{e(r=>{r.card.customCfg=t})},setShowFilters:t=>{e(r=>{r.showFilters=t})},setApplyFilters:t=>{e(r=>{r.applyFilters=t})},setFilterValues:t=>{e(r=>{r.filterValues=t})},setInlineFilterValuesMap:t=>{e(r=>{r.inlineFilterValuesMap=t})},setCardInlineFilterValue:(t,r)=>{e(o=>{o.inlineFilterValuesMap[t]||(o.inlineFilterValuesMap[t]=[]);const i=o.inlineFilterValuesMap[t].findIndex(a=>a.filterId===r.filterId);i>=0?o.inlineFilterValuesMap[t][i]=r:o.inlineFilterValuesMap[t].push(r)})},removeCardInlineFilterValue:(t,r)=>{e(o=>{o.inlineFilterValuesMap[t]&&(o.inlineFilterValuesMap[t]=o.inlineFilterValuesMap[t].filter(i=>i.filterId!==r))})},setSqlGen:t=>{e(r=>{r.sqlGen=t})},setSqlGenMeasure:(t,r)=>{e(o=>{o.sqlGen.measures=[...o.sqlGen.measures||[],{name:t,calc:r}]})},setSqlGenDimension:t=>{e(r=>{r.sqlGen.dimensions=[...r.sqlGen.dimensions||[],t]})},setSelectedDatamodelId:t=>{var r,o;e(i=>{i.selectedDatamodelId=t,i.card.datamodelId=t}),(o=(r=n()).onDatamodelChange)==null||o.call(r,t)},setSelectedConnectionId:t=>{var r,o;e(i=>{i.selectedConnectionId=t,i.card.connectionId=t}),(o=(r=n()).onConnectionChange)==null||o.call(r,t)},setSelectedDatabaseName:t=>{var r,o;e(i=>{i.selectedDatabaseName=t,i.card.lastSelectedDatabase=t}),(o=(r=n()).onDatabaseChange)==null||o.call(r,t)},setSelectedSchemaName:t=>{var r,o;e(i=>{i.selectedSchemaName=t,i.card.lastSelectedSchema=t}),(o=(r=n()).onSchemaChange)==null||o.call(r,t)},setSelectedTableName:t=>{var r,o;e(i=>{i.selectedTableName=t,i.card.lastSelectedTable=t}),(o=(r=n()).onTableChange)==null||o.call(r,t)},setOnConnectionChange:t=>{e({onConnectionChange:t})},setOnDatabaseChange:t=>{e({onDatabaseChange:t})},setOnSchemaChange:t=>{e({onSchemaChange:t})},setOnTableChange:t=>{e({onTableChange:t})},setOnSave:t=>{e({onSave:t})},setOnClose:t=>{e({onClose:t})},setEditorContext:t=>{e({editorContext:t})},clearEditorContext:()=>{e({editorContext:void 0})}}}))),Fb=()=>nr(e=>e.actions);it.subscribe("dashboard:load",()=>{nr.getState().actions.resetEditorStore()});it.subscribe("dashboard:unload",()=>{nr.getState().actions.resetEditorStore()});function Sa(e){return!e.entityName||e.entityName===Nr.CALCULATED_FIELD_ENTITY_MARKER||e.entityName==="calculated_fields"||e.qualifiedEntityName===Nr.CALCULATED_FIELD_ENTITY_MARKER||e.qualifiedEntityName==="calculated_fields"?"root":e.qualifiedEntityName||e.entityName}function $r(e){return e!=null&&e.startsWith("card-source-")?e.replace("card-source-",""):e}function Ur(e){return["domain",e.role||"field",Sa(e),e.name].join("::")}function Db(e){if("expression"in e)return e.expression||void 0}function Ot(e){return[e.role||"field",Sa(e),e.name,Db(e)||""].join("::")}function Ab(e){if(e.fieldScope==="domain")return`domain:${Ur(e)}`;const n=$r(e.id);return n?`id:${n}`:`fallback:${Ot(e)}`}function po(e,n,t){if(e.fieldScope==="domain"&&n.fieldScope==="domain")return Ur(e)===Ur(n);const r=$r(e.id),o=$r(n.id);return r&&o?r===o||!!(t!=null&&t.allowComparableFallback)&&Ot(e)===Ot(n):Ot(e)===Ot(n)}function ad(e,n,t){return e.findIndex(r=>po(r,n,t))}function sd(e){const n=new Map;return e.forEach(t=>{const r=Ab(t);n.has(r)||n.set(r,t)}),Array.from(n.values())}function Rb(e,n,t,r){var a;const i=ad(e,t||n,r);if(i>=0){const s=(a=e[i])==null?void 0:a.id,l=s&&s!==n.id?{...n,id:s}:n;return e.map((c,d)=>d===i?l:c)}return[...e,n]}function _b(e,n,t){return e.filter(r=>!po(r,n,t))}function Pb(e){return new Set(e.map(Ot))}function ld(e){return!!(e&&Object.prototype.hasOwnProperty.call(e,"calculatedFields"))}function Lt(...e){return sd(e.flatMap(n=>n||[]))}function mn(e,n){return{...e,fieldScope:n}}function xa(e){return((e==null?void 0:e.calculatedFields)||[]).filter(n=>n.fieldScope==="sheet").map(n=>mn(n,"sheet"))}function cd(e){return((e==null?void 0:e.calculatedFields)||[]).filter(n=>!n.fieldScope).map(n=>mn(n,"sheet"))}function Ob(e){return e?[...(e.calculatedFields||[]).filter(n=>n.fieldScope==="dashboard"),...(e.frames||[]).flatMap(n=>n.calculatedFields||[])].map(n=>mn(n,"dashboard")):[]}function dd(e){if(e!==void 0)return Lt(e.map(n=>mn(n,"dashboard")))}function Zs(e){var r;const n=[],t=(e.sheets||[]).map(o=>{var i;return n.push(...Ob(o)),{...o,calculatedFields:Lt(xa(o),cd(o)),frames:(i=o.frames)==null?void 0:i.map(a=>a.calculatedFields===void 0?a:{...a,calculatedFields:void 0})}});return{...e,calculatedFields:dd(Lt((r=e.calculatedFields)==null?void 0:r.map(o=>mn(o,"dashboard")),n)),sheets:t}}function Js(e,n){var o;if(!((o=e==null?void 0:e.frames)!=null&&o.length))return[];const t=n?e.frames.find(i=>i.id===n):void 0,r=e.frames.filter(i=>!n||i.id!==n);return Lt(t==null?void 0:t.calculatedFields,...r.map(i=>i.calculatedFields))}function Mb(e,n){return e?xa(e):[]}function Nb(e,n){if(!e)return[];const t=xa(e),r=cd(e),o=Lt(t,r);return ld(e)?o.length===0?[]:r.length===0?o:Lt(o,Js(e,n)):Js(e,n)}function Ho(e){if(e!==void 0)return Lt(e.map(n=>mn(n,"sheet")))}function kb(e){const{field:n,sheetFields:t=[],dashboardFields:r=[]}=e,o=s=>s.find(l=>po(l,n,{allowComparableFallback:!0}));if(n.fieldScope==="sheet")return{scope:"sheet",matchedField:o(t)};if(n.fieldScope==="dashboard")return{scope:"dashboard",matchedField:o(r)};const i=o(t);if(i)return{scope:"sheet",matchedField:i};const a=o(r);return a?{scope:"dashboard",matchedField:a}:{scope:"card"}}const ud="MMM D, YYYY [at] h:mm A";function Rr(){return{version:1,page:{size:"letter",orientation:"portrait",margins:{top:.5,right:.5,bottom:.5,left:.5,unit:"in"}},runtime:{generatedAtFormat:ud},inputs:[],sections:[]}}function Lb(){return{region:"header",enabled:!0,heightPx:72,layout:{type:"preset",preset:"mvp_header"},blocks:[]}}function Vb(){return{region:"footer",enabled:!0,heightPx:40,layout:{type:"preset",preset:"mvp_footer"},blocks:[]}}function fd(e){return[{type:"text",value:e}]}function Bb(e,n=[]){return(e==null?void 0:e.map(t=>t.type==="text"?t.value:jb(t.ref,n)).join(""))||""}function jb(e,n){if(e.source==="documentMeta")return n.some(o=>o.variableName===e.key)?`{{document.${e.key}}}`:`{{${e.key}}}`;const t=n.find(r=>r.id===e.inputId);return`{{${(t==null?void 0:t.variableName)||e.inputId}.${e.export}}}`}function $b(e,n){return e.find(t=>t.type==="text"&&t.role===n)}function Ub(e,n){return e.find(t=>t.type==="image"&&t.role===n)}function zb(e,n){const t={...n,type:"text",content:typeof n.content=="string"?fd(n.content):n.content};return pd(e,t)}function qb(e,n){return pd(e,n)}function pd(e,n){const t=e.findIndex(r=>r.id===n.id);return t===-1?[...e,n]:e.map((r,o)=>o===t?n:r)}function wa(e){return(e==null?void 0:e.kind)==="document"}function Ia(e){return(e||[]).filter(n=>!wa(n))}const Hb=Ia;function md(e){return e==="dashboard"?[{value:"toolbar",label:"Toolbar"},{value:"advanced",label:"More controls"}]:[{value:"card_header",label:"Header"},{value:"advanced",label:"More options"}]}const Gb=[{value:"saved_default",label:"Use configured default"},{value:"embed_required",label:"From embedding app"}],hd=["COUNT","SUM","AVG","MIN","MAX","MEDIAN","DISTINCT"],gd=["day","week","month","quarter","year","hour","minute","second"];function zr(e){return e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"").replace(/_{2,}/g,"_")}function mo(e){return e==="boolean"?[{value:"true",label:"True"},{value:"false",label:"False"}]:e==="grain_selector"?gd.map(n=>({value:n,label:n.charAt(0).toUpperCase()+n.slice(1)})):e==="aggregation_selector"?hd.map(n=>({value:n,label:n==="COUNT"?"Count":n==="DISTINCT"?"Distinct":n.charAt(0)+n.slice(1).toLowerCase()})):null}function Wb(e){return e==="enum"||e==="multi_enum"||e==="aggregation_selector"||e==="grain_selector"}function Yb(e,n,t=[]){let r=n.length+1,o=`${e}_control_${r}`;const i=new Set(t);for(;n.some(a=>a.id===o)||i.has(o);)r+=1,o=`${e}_control_${r}`;return{id:o,label:`New ${e==="dashboard"?"Dashboard":"Card"} Control`,scope:e,type:"enum",source:{kind:"manual",options:[{value:"option_a",label:"Option A"},{value:"option_b",label:"Option B"}]},initialValueStrategy:"saved_default",defaultValue:"option_a",requiredAtExecution:!0,placement:e==="dashboard"?"toolbar":"card_header"}}function Kb(e,n){const t=new Set;for(const r of e.controls||[])t.add(r.id);for(const r of e.sheets||[]){for(const o of r.cards||[])if(o.id!==(n==null?void 0:n.excludeCardId))for(const i of o.controls||[])t.add(i.id);for(const o of r.frames||[])for(const i of o.cards||[])if(i.id!==(n==null?void 0:n.excludeCardId))for(const a of i.controls||[])t.add(a.id)}return Array.from(t)}function Ea(e){const n=mo(e.type);return n?{...e,source:{kind:"manual",options:n}}:(e.source.kind==="manual",e)}function Xb(e){return Wb(e.type)}function Qb(e,n){const t=n.trim();if(t.length!==0)switch(e.type){case"number":return Number(t);case"boolean":return t==="true";case"multi_enum":return t.split(",").map(r=>r.trim()).filter(Boolean);default:return t}}function Zb(e){const n=(o,i)=>i==="field_selector"||i==="metric_selector"?{kind:"manual",options:[]}:{kind:"manual",options:mo(i)??(o.source.kind==="manual"?o.source.options:[])},t=e.controls.map(o=>o.id===e.controlId?{...o,type:e.nextType,source:n(o,e.nextType),defaultValue:void 0}:o);if(!e.defaultValues)return{controls:t};const r={...e.defaultValues};return delete r[e.controlId],{controls:t,defaultValues:r}}function Jb(e,n){return[...(n||[]).filter(r=>r.target==="sql_param"),...e]}function ev(e){var o,i,a,s,l,c;const n=((i=(o=e.config)==null?void 0:o.metricColumns)==null?void 0:i.map(d=>`${d.id} (${d.label})`))||[],t=((s=(a=e.config)==null?void 0:a.groupByColumns)==null?void 0:s.map(d=>`${d.id} (${d.label})`))||[],r=((c=(l=e.config)==null?void 0:l.groupByColumns)==null?void 0:c.filter(d=>["date","datetime"].includes((d.dataType||"").toLowerCase())).map(d=>`${d.id} (${d.label})`))||[];return{config_metric_selector:n,config_field_selector:t,config_aggregation:hd,config_grain:r.length>0?gd:[]}}const tv={config_metric_selector:new Set(["metric_selector"]),config_field_selector:new Set(["field_selector"]),config_aggregation:new Set(["aggregation_selector"]),config_grain:new Set(["grain_selector"])};function nv(e,n){return tv[n].has(e)}function rv(e,n){return nv(e.type,n)}function ov(e){const n=iv(e.card);return e.control?n.filter(t=>rv(e.control,t.value)):n}function iv(e){var t,r,o;const n=[];return(((t=e.config)==null?void 0:t.metricColumns)||[]).length>0&&(n.push({value:"config_metric_selector",label:"Metric Selector"}),n.push({value:"config_aggregation",label:"Aggregation"})),(((r=e.config)==null?void 0:r.groupByColumns)||[]).length>0&&n.push({value:"config_field_selector",label:"Group By Selector"}),(((o=e.config)==null?void 0:o.groupByColumns)||[]).some(i=>["date","datetime"].includes((i.dataType||"").toLowerCase()))&&n.push({value:"config_grain",label:"Time Grain"}),n}function Ta(e){const n=new Set;return e.filter(t=>n.has(t.value)?!1:(n.add(t.value),!0))}function rr(e){return[...e].sort((n,t)=>n.label.localeCompare(t.label,void 0,{numeric:!0,sensitivity:"base"}))}function yd(e,n){return zr(e)||zr(n)||n}function bd(e){return e.role==="metric"||_e(e.dataType||"")==="number"}function av(e){return!bd(e)}function sv(e){return{...e,role:"groupby"}}function lv(e,n="SUM"){return{...e,role:"metric",aggregate:e.aggregate||n}}function cv(e){const n=new Map,t={};return e.filter(av).filter(r=>typeof r.id=="string"&&r.id.length>0).forEach(r=>{const o=r.label||r.name||r.id,i=yd(o,r.name||r.id);n.has(i)||n.set(i,{value:i,label:o}),t[i]||(t[i]=sv(r))}),{choices:rr(Array.from(n.values())),targetMap:t}}function dv(e,n="SUM"){const t=new Map,r={};return e.filter(bd).filter(o=>typeof o.id=="string"&&o.id.length>0).forEach(o=>{const i=o.label||o.name||o.id,a=yd(i,o.name||o.id);t.has(a)||t.set(a,{value:a,label:i}),r[a]||(r[a]=lv(o,n))}),{choices:rr(Array.from(t.values())),targetMap:r}}function uv(e){var n;return rr(Ta((((n=e==null?void 0:e.config)==null?void 0:n.groupByColumns)||[]).filter(t=>typeof t.id=="string"&&t.id.length>0).map(t=>({value:t.id,label:t.label||t.id}))))}function fv(e){var n;return rr(Ta((((n=e==null?void 0:e.config)==null?void 0:n.metricColumns)||[]).filter(t=>typeof t.id=="string"&&t.id.length>0).map(t=>({value:t.id,label:t.label||t.id}))))}function pv(e){if(e.length===0)return[];const n=new Map,t=new Map;return e.forEach(r=>{Ta(r).forEach(i=>{n.set(i.value,(n.get(i.value)||0)+1),t.has(i.value)||t.set(i.value,i.label)})}),rr(Array.from(n.entries()).filter(([,r])=>r===e.length).map(([r])=>({value:r,label:t.get(r)||r})))}function Fa(e){return e==="field_selector"||e==="metric_selector"}function vd(e,n){var t;if(e.source.kind==="manual")return(t=e.source.options.find(r=>r.value===n))==null?void 0:t.presentation}function Cd(e,n){return n?{...e,...n.granularity?{granularity:n.granularity}:{},...n.dateFormat?{dateFormat:n.dateFormat}:{},...n.customFormat!==void 0?{customFormat:n.customFormat}:{}}:e}function mv(e,n){return e.filter(t=>t.canBindStructuralControl&&(n==="field_selector"?t.fieldChoices.length>0:n==="metric_selector"?t.metricChoices.length>0:!1))}function hv(e){const n=e.participants.filter(r=>e.selectedCardIds.includes(r.cardId));if(n.length===0)return[];const t=n.map(r=>e.controlType==="field_selector"?r.fieldChoices:r.metricChoices);return pv(t)}function gv(e){var i,a;const n=e.participants.filter(s=>e.selectedCardIds.includes(s.cardId)),t=hv(e),r={},o={};for(const s of t)for(const l of n){if(e.controlType==="field_selector"&&((i=l.fieldTargetMap)!=null&&i[s.value])){r[s.value]=l.fieldTargetMap[s.value];break}if(e.controlType==="metric_selector"&&((a=l.metricTargetMap)!=null&&a[s.value])){o[s.value]=l.metricTargetMap[s.value];break}}return{choices:t,fieldTargetMap:r,metricTargetMap:o}}function yv(e){if(!Fa(e.control.type)||e.control.source.kind!=="manual")return e.control;const n=new Set(e.choices.map(r=>r.value)),t=e.control.source.options.filter(r=>n.has(r.value));return{...e.control,source:{kind:"manual",options:t.length>0||e.choices.length===0?t:e.choices.map(r=>({value:r.value,label:r.label}))}}}function bv(e){return!Fa(e.control.type)||e.control.source.kind!=="manual"?e.control:yv(e)}function vv(e){if(e.control.type!=="field_selector"&&e.control.type!=="metric_selector")return{};if(e.control.source.kind!=="manual")return{};const n=e.control.type==="field_selector"?"config_field_selector":"config_metric_selector",t=e.control.source.options.map(r=>r.value);return Object.fromEntries(e.participants.filter(r=>e.selectedCardIds.includes(r.cardId)).filter(r=>r.canBindStructuralControl).map(r=>{const o=n==="config_field_selector"?r.fieldChoices:r.metricChoices,i=new Set(o.map(l=>l.value)),a=n==="config_field_selector"?r.fieldTargetMap||{}:r.metricTargetMap||{},s=Object.fromEntries(t.filter(l=>i.has(l)).filter(l=>!!a[l]).map(l=>{const c=a[l];return n==="config_field_selector"?[l,Cd(c,vd(e.control,l))]:[l,c]}));return[r.cardId,[{controlId:e.control.id,target:n,mapping:s}]]}))}function Cv(e,n){if(!e||e.length===0)return e;const t=new Map(n.map(r=>[r.id,r]));return e.map(r=>{if(r.target!=="config_field_selector")return r;const o=t.get(r.controlId);if(!o||o.source.kind!=="manual")return r;const i=Object.fromEntries(Object.entries(r.mapping).map(([a,s])=>[a,Cd(s,vd(o,a))]));return{...r,mapping:i}})}function Sd(e){return e==="field_selector"||e==="metric_selector"||e==="aggregation_selector"||e==="grain_selector"}function Sv(e){return e===Nr.CONTROL_CARD_DEFAULT_VALUE}const Ai="__semaphor_ui_option_",xv={clear:"__semaphor_ui_clear__",noDefault:"__semaphor_ui_no_default__",cardDefault:"__semaphor_ui_card_default__"};function xd(e){return`${Ai}${e}`}function wv(e,n){if(n===void 0)return;const t=e.findIndex(r=>r.value===n);if(t!==-1)return xd(t)}function Iv(e,n){if(!n.startsWith(Ai))return;const t=Number(n.slice(Ai.length));if(!(!Number.isInteger(t)||t<0))return e[t]}function wd(e){return Array.isArray(e)?e.filter(n=>typeof n=="string"):typeof e=="string"?[e]:[]}const Ln=[{value:"enum",label:"Dropdown",description:"Choose a single option from a list."},{value:"multi_enum",label:"Multi-select",description:"Choose multiple options from a list."},{value:"boolean",label:"Toggle",description:"Switch between true and false."},{value:"number",label:"Number",description:"Enter a numeric value."},{value:"date",label:"Date",description:"Pick a calendar date."},{value:"text",label:"Text",description:"Enter freeform text."},{value:"grain_selector",label:"Time grain",description:"Day, week, month, quarter, or year."},{value:"aggregation_selector",label:"Aggregation",description:"Count, sum, average, and more."},{value:"field_selector",label:"Group by field",description:"Switch which field the card groups by."},{value:"metric_selector",label:"Displayed metric",description:"Switch which metric the card shows."}],Ev={enum:"Dropdown",multi_enum:"Multi-select",boolean:"Toggle",number:"Number",date:"Date",text:"Text",field_selector:"Group By Field",metric_selector:"Metric",aggregation_selector:"Aggregation",grain_selector:"Time Grain"};function Tv(e){return Ln.find(n=>n.value===e)||Ln[0]}function Fv(e){var a;const n=e,t=new Set(["grain_selector","aggregation_selector","field_selector","metric_selector"]),o=(n==null?void 0:n.scope)==="card"&&((a=n.card)==null?void 0:a.sql)==null?Ln.filter(s=>t.has(s.value)):Ln;if(!(n!=null&&n.includeType)||o.some(s=>s.value===n.includeType))return o;const i=Ln.find(s=>s.value===n.includeType);return i?[...o,i]:o}function Dv(e,n){return e==="dashboard"?n==="advanced"?"More controls":"Toolbar":n==="advanced"?"More options":"Header"}function Av(e){var n;return((n=md(e)[0])==null?void 0:n.value)||"toolbar"}function Rv(e){const n=Ea(e);if(n.type==="boolean")return"True, False";if(n.source.kind==="sql_query")return"SQL query";const t=n.source.kind==="manual"?n.source.options.map(r=>r.label||r.value).filter(Boolean):[];return t.length===0?"No choices yet":t.length<=3?t.join(", "):`${t.slice(0,3).join(", ")} +${t.length-3} more`}function _v(e){return Array.isArray(e)?e.length>0:e!=null&&String(e).trim().length>0}function Id(e,n){var i,a;const t=mo(e.type),r=Ea(e),o=(t??(r.source.kind==="manual"?r.source.options:[])).map(s=>s.value);if(e.type==="boolean")return typeof n=="boolean"?n:!1;if(e.type==="multi_enum"){const s=wd(n),l=r.source.kind==="sql_query";if(s.length>0){const d=o.length>0?s.filter(u=>o.includes(u)):l?s:[];if(d.length>0)return d}const c=o[0];return c?[c]:l?void 0:[]}if(Sd(e.type)&&Sv(n))return Nr.CONTROL_CARD_DEFAULT_VALUE;if(n!==void 0&&(o.length===0||typeof n=="string"&&o.includes(n)))return n;if(e.type==="grain_selector")return"month";if(e.type==="aggregation_selector")return"SUM";if((i=t==null?void 0:t[0])!=null&&i.value)return t[0].value;if(r.source.kind==="manual"&&((a=r.source.options[0])!=null&&a.value))return r.source.options[0].value}function el(e){return JSON.stringify({connectionId:e.connectionId,sql:e.sql,valueColumn:e.valueColumn})}function Pv(e){const{previousControl:n,nextControl:t,currentDefaultValue:r}=e;if(!(n.source.kind!=="sql_query"&&t.source.kind==="sql_query")&&!(n.source.kind==="sql_query"&&t.source.kind==="sql_query"&&el(n.source)!==el(t.source)))return Id(t,r)}function Ed(e){const{control:n,defaultValues:t}=e;return t&&Object.prototype.hasOwnProperty.call(t,n.id)?t[n.id]:n.defaultValue}function Ov(e,n){return e.scope!=="dashboard"||e.source.kind!=="sql_query"?e:e.initialValueStrategy==="embed_required"?e.requiredAtExecution?e:{...e,requiredAtExecution:!0}:e}function tl(e){return e.initialValueStrategy!=="embed_required"}function Td(e){const n={},t=new Map(e.controls.map(r=>[r.id,r]));for(const r of e.controls){if(!tl(r))continue;const o=Ed({control:r,defaultValues:e.defaultValues});o!==void 0&&(n[r.id]=o)}for(const r of e.overrides||[]){const o=t.get(r.controlId);if(o&&!tl(o)){delete n[r.controlId];continue}if(r.value===void 0){delete n[r.controlId];continue}n[r.controlId]=r.value}return n}function Mv(e){const n=new Set(e.reservedIds),t=new Set(e.existingControls.map(a=>a.id)),r=zr(e.label)||e.fallbackId;if(!t.has(r)&&!n.has(r))return r;let o=2,i=`${r}_${o}`;for(;t.has(i)||n.has(i);)o+=1,i=`${r}_${o}`;return i}function be(e){return typeof e=="string"?e.trim():""}function Vt(e){return Array.from(new Set(e.map(be).filter(Boolean)))}function or(e){var n;return(n=e.candidateDatasetNames)!=null&&n.length?Vt(e.candidateDatasetNames):Vt([e.datasetName])}function Fd(e,n){const t=e||[];for(const r of or(n)){const o=t.find(a=>be(a.name)===r);if(o)return o;const i=t.filter(a=>Dd(a).includes(r));if(i.length===1)return i[0]}}function Nv(e,n){const t=be(n.name);if(!t)return[];const r=Dd(n).filter(o=>Fd(e,{datasetName:o})===n);return Vt([t,...r])}function Dd(e){const n=be(e.table),t=be(e.schema),r=be(e.catalog)||be(e.database);return n?Vt([n,t?`${t}.${n}`:"",r?`${r}.${n}`:"",r&&t?`${r}.${t}.${n}`:""]):[]}function Ad(e,n,t,r=[t]){if(!n||!t)return;const o=Vt(r);e.set(`${n}:${t}:${o.join("|")}`,{domainId:n,datasetName:t,candidateDatasetNames:o})}function Rd(e,n,t){var r;for(const o of((r=e.dataSource)==null?void 0:r.selectedEntities)||[])(o==null?void 0:o.type)==="dataset"&&Ad(t,be(o.domainId)||n,be(o.name))}function Go(e,n,t,r){const o=Pd(e,n,r);o&&Ad(t,o.domainId,o.datasetName,or(o))}function kv(e,n,t,r){var i;const o=(i=e.config)==null?void 0:i.joinPlan;if(o){Go(o.baseEntity,n,t,r);for(const a of o.joins||[])Go(a.source,n,t,r),Go(a.target,n,t,r)}}function Lv(e,n){var o;if(!e)return;const t=be((o=e.dataSource)==null?void 0:o.semanticDomainId),r=_d(e);Rd(e,t,n),kv(e,t,n,r)}function _d(e){var r;if(!e)return[];const n=new Map,t=be((r=e.dataSource)==null?void 0:r.semanticDomainId);return Rd(e,t,n),Array.from(n.values())}function Vv(e,n){var o;const t=be((o=e==null?void 0:e.dataSource)==null?void 0:o.semanticDomainId);if(t)return t;const r=Array.from(new Set(n.map(i=>i.domainId))).filter(Boolean);return r.length===1?r[0]:""}function Pd(e,n,t=[]){if(!e)return null;const r=be(e.domainId)||n,o=be(e.name),i=be(e.alias),a=be(e.id),s=t.find(u=>u.domainId===r&&u.datasetName===o),l=t.find(u=>u.domainId===r&&u.datasetName===i);let c;s||l?c=[(s||l).datasetName]:i&&(e.type==="table"||a===i)?c=[i,o]:c=[o,i];const d=Vt(c)[0]||"";return!r||!d?null:{domainId:r,datasetName:d,candidateDatasetNames:Vt(c)}}function Od(e){const n=new Map;for(const t of e||[])Lv(t,n);return Array.from(n.values())}function Bv(e){return Od(e?[e]:[])}function Ri(e){return Od(e==null?void 0:e.cards)}function jv(e,n){var o,i;if(!e)return null;const t=_d(e);if(t.length===1)return t[0];const r=Vv(e,t);return Pd((i=(o=n||e.config)==null?void 0:o.joinPlan)==null?void 0:i.baseEntity,r,t)||null}function $v(e,n){var t;if(!e||!n)return null;for(const r of e.sheets||[]){const o=(t=r.frames)==null?void 0:t.find(i=>i.id===n);if(o)return o}return null}function nl(e){return`${e.domainId}:${e.datasetName}:${or(e).join("|")}`}function Uv(e,n){if(e.length!==n.length)return!1;const t=new Set(n.map(nl));return e.every(r=>t.has(nl(r)))}function zv(e,n){return Uv(Ri(e),Ri(n))}function qv(e,n){const t=n.sourceField||n.name,r=n.entityId||n.entityName||"",o=n.qualifiedEntityName,i=n.qualifiedFieldName||((o||n.entityId)&&n.name?`${o||n.entityId}.${n.name}`:"");if(!r||!t||!n.name||!i||!n.entityId||!n.entityName||!n.entityType||!n.dataType)return null;const a=Hv(e,n,i);return{sourceDataset:r,sourceField:t,name:n.name,qualifiedFieldName:i,qualifiedEntityName:o,entityId:n.entityId,entityName:n.entityName,entityType:n.entityType,dataType:n.dataType,...a?{source:a}:{},dateFormat:n.dateFormat,customFormat:n.customFormat}}function Ae(e){return typeof e=="string"?e.trim():""}function Md(e){return e.type==="dataset"&&"id"in e&&"domainId"in e}function Hv(e,n,t){var s,l;if(((s=e.dataSource)==null?void 0:s.mode)==="semanticDomain"){const c=Ae(e.dataSource.semanticDomainId),d=Ae(n.entityId),u=Ae(n.entityName);if(!c||!d&&!u)return;const f=(e.dataSource.selectedEntities||[]).filter(Md).filter(b=>{const C=Ae(b.domainId),g=Ae(b.name);return C===c&&!!g&&Re.semanticDatasetMatchesFieldCoordinates(b,{entityId:d,entityName:u})});if(f.length!==1)return;const h=f[0],y=Ae(h.id),m=Ae(h.name);return{kind:"semantic",domainId:c,datasetName:m,...y?{datasetId:y}:{}}}const r=Ae((l=e.dataSource)==null?void 0:l.connectionId)||Ae(e.connectionId),o=t.split(".").slice(0,-1).join("."),i=Ae(n.qualifiedEntityName),a=Re.selectMostQualifiedCompatibleEntityIdentity([i,o]);return r&&a?{kind:"physical",connectionId:r,tableName:a}:void 0}function Gv(e,n,t){var i;const r=(((i=e.dataSource)==null?void 0:i.selectedEntities)||[]).filter(a=>Md(a)&&Ae(a.domainId)===n.domainId&&Ae(a.name)===t),o=r.length===1?r[0]:void 0;return{kind:"semantic",domainId:n.domainId,datasetName:t,...o!=null&&o.id?{datasetId:o.id}:{}}}function Wv(e){var n;return((n=e==null?void 0:e.groupByColumns)==null?void 0:n.find(t=>_e(t.dataType||"")==="date"))||null}function Yv(e){var n,t;return(t=(n=e.dataSource)==null?void 0:n.semanticDomainId)!=null&&t.trim()?!0:Bv(e).length>0}function Nd(e){var r;const n=kd(e);if(n.kind==="none")return null;if(n.kind==="explicit_temporal")return qv(e.card,n.field);if(!e.semanticExecutionPayload)return null;const t=e.semanticExecutionPayload.domainsById[n.datasetReference.domainId];if(!t)return null;for(const o of or(n.datasetReference)){const i=(r=t.datasetsByName[o])==null?void 0:r.primaryDateField;if(i!==void 0)return i?{...i,source:Gv(e.card,n.datasetReference,o)}:null}return null}function kd(e){var i;const{card:n,cardConfig:t=n.config}=e;if((i=n.sql)!=null&&i.trim())return{kind:"none"};const r=Wv(t);if(r)return{kind:"explicit_temporal",field:r};if(!Yv(n))return{kind:"none"};const o=jv(n,t);return o?{kind:"semantic_fallback",datasetReference:o}:{kind:"none"}}const Kv=new Set(["between","not between",">",">=","<","<="]),Xv=/^([01]\d|2[0-3]):([0-5]\d)$/;function rl(e){const t=(e instanceof Date?e:new Date(e)).getTime();return Number.isFinite(t)?t:null}function Ld(e){if((e==null?void 0:e.valueType)!=="date"||e.operation!=="between"||!Array.isArray(e.values)||e.values.length!==2)return!1;const n=rl(e.values[0]),t=rl(e.values[1]);return n!==null&&t!==null&&n<t}function _i(e){const n=Qr.normalizeAnalyticsCatalogDataType(e);return n==="datetime"?"datetime":n==="date"?"date-only":"unknown"}function Vd(e){return _i(e)==="datetime"}function Qv(e){var t;const n=_i((t=e.fieldMeta)==null?void 0:t.dataType);return n!=="unknown"?n:_i(e.dataType)}function Zv(e){return!!(e&&Kv.has(e))}function Da(e){return(e==null?void 0:e.mode)==="last"&&(e.unit==="minute"||e.unit==="hour")}function Jv(e){return Da(e)?"minute":void 0}function Bd(e){const n=Xv.exec(e);return n?{hours:Number(n[1]),minutes:Number(n[2])}:null}function eC(e){return Bd(e)!==null}function tC(e,n){return le.formatInTimeZone(e,n,"HH:mm")}function nC(e,n,t,r={}){if(!Bd(n))return null;const i=le.formatInTimeZone(e,t,"yyyy-MM-dd"),a=r.boundary==="end"?"59.999":"00.000",s=`${i}T${n}:${a}`;return le.fromZonedTime(s,t)}function rC(e,n={}){let t=[e==null?void 0:e.from,e==null?void 0:e.to];return n.temporalPrecision!=="minute"&&(e.from&&e.to===void 0?t=[e.from,Ei(e.from,24)]:e.from&&e.to&&e.from.getTime()===e.to.getTime()&&(t=[e.from,Ei(e.to,24)])),{from:t[0],to:t[1],values:t.filter(Boolean)}}function oC(e,n=new Date){return Da(e)?[e.unit==="minute"?Fc(n,e.n):Tc(n,e.n),n]:null}const jd="Global Date",iC="__global_date__",aC="__global_date__";function Aa(e){return(e==null?void 0:e.kind)==="global-date"}function sC(e){return e==null?void 0:e.find(n=>Aa(n))}function lC(){return typeof globalThis<"u"&&globalThis.crypto&&typeof globalThis.crypto.randomUUID=="function"?`global-date-filter:${globalThis.crypto.randomUUID()}`:`global-date-filter:${Date.now().toString(36)}:${Math.random().toString(36).slice(2)}`}function cC(){return{kind:"global-date",id:lC(),title:jd,column:iC,dataType:"date",connectionId:aC,sql:"",operation:"between",showLabel:!0,displayMode:"inherit",toolbarWidth:220}}function dC(e,n,t){const r=e?ao({sheets:e.sheets||[]}):[],o=t?r.filter(({sheet:l,card:c})=>{var d,u;return!(t.applyToCardIds!==void 0&&!t.applyToCardIds.includes(c.id)||(d=t.excludeCardIds)!=null&&d.includes(c.id)||t.sheetId&&t.sheetId!==l.id||t.applyToSheetIds!==void 0&&!t.applyToSheetIds.includes(l.id)||(u=t.excludeSheetIds)!=null&&u.includes(l.id))}):r,i=Array.from(new Map(o.map(({card:l})=>[l.id,l])).values()),a=i.map(l=>({card:l,resolvedPrimaryDateField:Nd({card:l,cardConfig:l.config,semanticExecutionPayload:n})})).filter(({resolvedPrimaryDateField:l})=>l!==null),s=a.map(({card:l})=>l.id);return{eligibleCardIds:s,eligibleCardCount:s.length,totalCardCount:i.length,ineligibleCardCount:Math.max(0,i.length-s.length),hasEligibleCards:s.length>0,allEligibleTargetsAreDateTime:a.length>0&&a.every(({resolvedPrimaryDateField:l})=>Vd(l==null?void 0:l.dataType))}}function $d(e){return Re.isComparisonCapableDashboardDateInputDefinition(e)}function ye(e){return typeof e=="string"?e.trim():""}function uC(e){const n=e.split(".");return n.length>1?n.slice(0,-1).join("."):""}function Ud(e,n){return!e||!n||e.kind!==n.kind?!1:e.kind==="semantic"&&n.kind==="semantic"?cn.semaphorSourcesReferToSameDataset(e,n):e.kind==="physical"&&n.kind==="physical"?!!(e.connectionId===n.connectionId&&Re.qualifiedEntityIdentitiesReferToSameEntity(e.tableName,n.tableName)):cn.semaphorSourcesReferToSameDataset(e,n)}function fC(e,n){const t=e.semanticContext,r=n.semanticContext;if(!r)return t;const o=Array.isArray(r.selectedEntities)?r.selectedEntities:[];return{...t,...r,semanticDomainId:ye(r.semanticDomainId)||(t==null?void 0:t.semanticDomainId),connectionId:ye(r.connectionId)||(t==null?void 0:t.connectionId),connectionType:ye(r.connectionType)||(t==null?void 0:t.connectionType),selectedEntities:o.length>0?o:t==null?void 0:t.selectedEntities}}function pC(e,n){const t=Re.resolveDashboardDateComparisonInputDefinition(e);return t.status!=="eligible"||t.kind!=="field_date"?n:Pi(e.filter,n,t.qualifiedFieldName)||n}function mC(e,n,t){var d;const r=n.fieldMeta;if(!r)return!0;const o=uC(t),i=t.split(".").at(-1)||"",a=ye(r.qualifiedFieldName);if(a&&!Re.qualifiedFieldIdentitiesReferToSameField(a,t))return!1;const s=ye(r.name);if(s&&s!==i&&s!==t)return!1;const l=ye(r.qualifiedEntityName),c=ye((d=e.fieldMeta)==null?void 0:d.qualifiedEntityName)||o;return!(l&&(!c||!Re.qualifiedEntityIdentitiesReferToSameEntity(l,c)))}function hC(e,n,t){var s,l,c,d;const r=Re.resolveDashboardDateComparisonFilterDefinition(e),o=fC(e,n),i=ye(o==null?void 0:o.connectionId),a=Re.resolveDashboardDateComparisonFilterDefinition({...e,...i?{connectionId:i}:{},semanticContext:o,fieldMeta:{...e.fieldMeta,...n.fieldMeta,name:ye((s=n.fieldMeta)==null?void 0:s.name)||ye((l=e.fieldMeta)==null?void 0:l.name)||ye(e.column)||t.split(".").at(-1)||t,qualifiedFieldName:ye((c=n.fieldMeta)==null?void 0:c.qualifiedFieldName)||ye((d=e.fieldMeta)==null?void 0:d.qualifiedFieldName)||t}});return!!(r.status==="eligible"&&r.kind==="field_date"&&a.status==="eligible"&&a.kind==="field_date"&&cn.hasCompleteSemaphorSourceIdentity(r.source)&&cn.hasCompleteSemaphorSourceIdentity(a.source)&&Ud(r.source,a.source))}function Pi(e,n,t){if(n.filterId!==e.id)return;const r=ye(n.name),o=ye(e.column);if(!(!r||r!==o&&r!==t&&!Re.qualifiedFieldIdentitiesReferToSameField(r,t))&&!(!mC(e,n,t)||!hC(e,n,t)))return{...n,name:t,...e.fieldMeta?{fieldMeta:e.fieldMeta}:{},...e.semanticContext?{semanticContext:e.semanticContext}:{}}}function gC(e,n){return!!(e.operation===n.operation&&e.valueType===n.valueType&&e.values.length===n.values.length&&e.values.every((t,r)=>t===n.values[r]))}function yC(e){if(!e.temporalBinding)return{status:"ineligible",reason:"temporal_binding_missing"};if(Aa(e.filter))return{status:"ineligible",reason:"global_date_filter"};if(_e(e.temporalBinding.dataType)!=="date")return{status:"ineligible",reason:"temporal_binding_not_date"};const n=Re.resolveDashboardDateComparisonFilterDefinition(e.filter);if(n.status!=="eligible"||n.kind!=="field_date")return{status:"ineligible",reason:n.status==="ineligible"?n.reason:"global_date_filter"};const t=n.qualifiedFieldName,r=ye(e.temporalBinding.qualifiedFieldName);if(!t||!r||!Re.qualifiedFieldIdentitiesReferToSameField(t,r))return{status:"ineligible",reason:"field_identity_mismatch"};const o=n.source,i=e.temporalBinding.source;return!cn.hasCompleteSemaphorSourceIdentity(o)||!cn.hasCompleteSemaphorSourceIdentity(i)?{status:"ineligible",reason:"source_identity_incomplete"}:Ud(o,i)?{status:"eligible",qualifiedFieldName:t}:{status:"ineligible",reason:"source_identity_mismatch"}}function bC(e){const n=yC(e);if(n.status==="ineligible")return n;if(!e.filterValue)return{status:"ineligible",reason:"filter_value_missing"};const t=Pi(e.filter,e.filterValue,n.qualifiedFieldName);if(!t)return{status:"ineligible",reason:"filter_value_identity_mismatch"};const r=e.effectiveFilterValue?Pi(e.filter,e.effectiveFilterValue,n.qualifiedFieldName):t;return!r||!gC(t,r)?{status:"ineligible",reason:"filter_value_execution_mismatch"}:Ld(r)?{status:"eligible",qualifiedFieldName:n.qualifiedFieldName,filterValue:r}:{status:"ineligible",reason:"finite_range_required"}}function vC(e,n){switch(e.runtimeScope){case"shared":return!0;case"perSheet":return!!n.sheetId;case"perCard":return!!n.cardId;case"perDocumentSection":return!!n.sectionId;default:return!1}}function CC(e,n,t){switch(e.runtimeScope){case"shared":return!0;case"perSheet":return!!(n.sheetId&&n.sheetId===t.sheetId);case"perCard":return!!(n.cardId&&n.cardId===t.cardId);case"perDocumentSection":return!!(n.sectionId&&n.sectionId===t.sectionId);default:return!1}}function Gn(e,n,t){var r,o,i,a,s,l,c;switch(n.runtimeScope){case"shared":return(r=e==null?void 0:e.shared)==null?void 0:r[n.id];case"perSheet":return t.sheetId?(i=(o=e==null?void 0:e.bySheetId)==null?void 0:o[t.sheetId])==null?void 0:i[n.id]:void 0;case"perCard":return t.cardId?(s=(a=e==null?void 0:e.byCardId)==null?void 0:a[t.cardId])==null?void 0:s[n.id]:void 0;case"perDocumentSection":return t.sectionId?(c=(l=e==null?void 0:e.byDocumentSectionId)==null?void 0:l[t.sectionId])==null?void 0:c[n.id]:void 0;default:return}}function Dt(e,n,t,r){var i,a,s,l,c,d;const o=Hd(e);switch(n.runtimeScope){case"shared":return o.shared||(o.shared={}),o.shared[n.id]=r,ke(o);case"perSheet":return t.sheetId?(o.bySheetId||(o.bySheetId={}),(i=o.bySheetId)[a=t.sheetId]||(i[a]={}),o.bySheetId[t.sheetId][n.id]=r,ke(o)):o;case"perCard":return t.cardId?(o.byCardId||(o.byCardId={}),(s=o.byCardId)[l=t.cardId]||(s[l]={}),o.byCardId[t.cardId][n.id]=r,ke(o)):o;case"perDocumentSection":return t.sectionId?(o.byDocumentSectionId||(o.byDocumentSectionId={}),(c=o.byDocumentSectionId)[d=t.sectionId]||(c[d]={}),o.byDocumentSectionId[t.sectionId][n.id]=r,ke(o)):o;default:return o}}function zd(e,n,t){var o,i,a,s,l,c,d;const r=Hd(e);switch(n.runtimeScope){case"shared":(o=r.shared)==null||delete o[n.id];break;case"perSheet":t.sheetId&&((a=(i=r.bySheetId)==null?void 0:i[t.sheetId])==null||delete a[n.id]);break;case"perCard":t.cardId&&((l=(s=r.byCardId)==null?void 0:s[t.cardId])==null||delete l[n.id]);break;case"perDocumentSection":t.sectionId&&((d=(c=r.byDocumentSectionId)==null?void 0:c[t.sectionId])==null||delete d[n.id]);break}return ke(r)}function SC(e){const n=Gn(e.runtimeValues,e.input,e.target),t=Gn(e.dashboard.defaultInputValues,e.input,e.target),r=qd(e.input,e.timezone),o=ol(n)?n:ol(t)?t:r,i=(n==null?void 0:n.comparisonSelection)??(t==null?void 0:t.comparisonSelection),a=$d(e.input)?i??((o==null?void 0:o.status)==="set"?{mode:"off"}:void 0):void 0;return(o==null?void 0:o.status)==="set"?{status:"set",value:o.value,...a?{comparisonSelection:a}:{}}:(o==null?void 0:o.status)==="cleared"?{status:"cleared",...a?{comparisonSelection:a}:{}}:a?{comparisonSelection:a}:void 0}function ol(e){return(e==null?void 0:e.status)==="set"||(e==null?void 0:e.status)==="cleared"}function xn(e,n,t,r){const o=Gn(e,n,t);return r?(o==null?void 0:o.status)==="set"?Dt(e,n,t,{status:"set",value:o.value,comparisonSelection:r}):(o==null?void 0:o.status)==="cleared"?Dt(e,n,t,{status:"cleared",comparisonSelection:r}):Dt(e,n,t,{comparisonSelection:r}):o!=null&&o.comparisonSelection?o.status==="set"?Dt(e,n,t,{status:"set",value:o.value}):o.status==="cleared"?Dt(e,n,t,{status:"cleared"}):zd(e,n,t):e}function Oi(e,n,t,r){var i;const o=(i=Gn(e,n,t))==null?void 0:i.comparisonSelection;return Dt(e,n,t,{...r,...o?{comparisonSelection:o}:{}})}function qd(e,n){if(e.kind==="filter"){const o=uo(e.filter,n);return o?{status:"set",value:{kind:"filter",filterValue:o}}:void 0}const t=Td({controls:[e.control]}),r=Object.prototype.hasOwnProperty.call(t,e.control.id)?t[e.control.id]:ha(e.control);return r!==void 0?{status:"set",value:{kind:"control",value:r}}:void 0}function xC(e){return e?{status:"set",value:{kind:"filter",filterValue:e}}:void 0}function wC(e){return e!==void 0?{status:"set",value:{kind:"control",value:e}}:void 0}function Hd(e){return{shared:e!=null&&e.shared?{...e.shared}:void 0,bySheetId:Wo(e==null?void 0:e.bySheetId),byCardId:Wo(e==null?void 0:e.byCardId),byDocumentSectionId:Wo(e==null?void 0:e.byDocumentSectionId)}}function ke(e){const n={};e.shared&&Object.keys(e.shared).length>0&&(n.shared=e.shared);const t=Yo(e.bySheetId);t&&(n.bySheetId=t);const r=Yo(e.byCardId);r&&(n.byCardId=r);const o=Yo(e.byDocumentSectionId);return o&&(n.byDocumentSectionId=o),n}function Wo(e){if(e)return Object.fromEntries(Object.entries(e).map(([n,t])=>[n,{...t}]))}function Yo(e){if(!e)return;const n=Object.fromEntries(Object.entries(e).filter(([,t])=>Object.keys(t).length>0));return Object.keys(n).length>0?n:void 0}function vr(){return{domainsById:{}}}function Ko(e,n){if(n)for(const[t,r]of Object.entries(n.domainsById))e.domainsById[t]||(e.domainsById[t]={datasetsByName:{}}),Object.assign(e.domainsById[t].datasetsByName,r.datasetsByName)}function IC(e){var r;const n=new Set,t=o=>{o!=null&&o.id&&n.add(o.id)};for(const o of(e==null?void 0:e.cards)||[])t(o);for(const o of(e==null?void 0:e.frames)||[])for(const i of o.cards||[])t(i);for(const o of((r=e==null?void 0:e.document)==null?void 0:r.sections)||[])(o.type==="table"||o.type==="chart")&&t(o.card);return n}function EC(e){var n;return new Set((((n=e==null?void 0:e.document)==null?void 0:n.sections)||[]).map(t=>t.id))}function TC({inputs:e,sheetId:n,deletedCardIds:t}){if(!(e!=null&&e.length))return{inputs:e,removedInputIds:new Set};const r=[],o=new Set;for(const i of e){if(i.scope.kind==="sheets"){const a=i.scope.sheetIds.filter(s=>s!==n);a.length>0?r.push({...i,scope:{...i.scope,sheetIds:a}}):o.add(i.id);continue}if(i.scope.kind==="documentSections"&&i.scope.sheetId===n){o.add(i.id);continue}if(i.scope.kind==="cards"){const a=i.scope.cardIds.filter(s=>!t.has(s));a.length>0?r.push({...i,scope:{...i.scope,cardIds:a}}):o.add(i.id);continue}r.push(i)}return{inputs:r,removedInputIds:o}}function il(e,n){var t;if(!(!e||n.size===0)){for(const r of n)(t=e.shared)==null||delete t[r];for(const r of[e.bySheetId,e.byCardId,e.byDocumentSectionId])for(const o of Object.values(r||{}))for(const i of n)delete o[i]}}function al(){return typeof globalThis<"u"&&globalThis.crypto&&typeof globalThis.crypto.randomUUID=="function"?`dashboard:draft:${globalThis.crypto.randomUUID()}`:`dashboard:draft:${Date.now().toString(36)}:${Math.random().toString(36).slice(2)}`}function FC(e,n){var r,o,i,a,s;return!!(Object.prototype.hasOwnProperty.call(Se.getState().dashboardEntitySelectionOverrides,n)||(e.title||"").trim()||(e.description||"").trim()||(r=e.sheets)!=null&&r.length||(o=e.filters)!=null&&o.length||(a=(i=e.aiContext)==null?void 0:i.selectedEntities)!=null&&a.length||((s=e.aiContext)==null?void 0:s.mode)==="fixed")}function sl(e){var l;const n=(e.id||"").trim();if(!n)return;const t=Se.getState(),r=t.pendingDashboardDraftMigration;if(!r)return;const{actions:o,dashboardEntitySelectionOverrides:i}=t,a=`dashboard:${n}`,s=(l=r.expectedDashboardId)==null?void 0:l.trim();if(s&&s===n){const c=i[r.scopeKey],d=i[a];c!==void 0&&d===void 0&&o.setDashboardEntitySelectionOverride(a,c),o.clearDashboardEntitySelectionOverride(r.scopeKey)}else s&&s!==n&&o.clearDashboardEntitySelectionOverride(r.scopeKey);o.clearPendingDashboardDraftMigration()}function DC(e,n){const t=(e==null?void 0:e.defaultValues)??null,r=(n==null?void 0:n.defaultValues)??null,o=(e==null?void 0:e.defaultDateFilter)??null,i=(n==null?void 0:n.defaultDateFilter)??null;return JSON.stringify(t)===JSON.stringify(r)&&JSON.stringify(o)===JSON.stringify(i)}function AC(e,n,t,r){const o=new Set((t.cards||[]).map(a=>a.id)),i=new Map(((n==null?void 0:n.cards)||[]).map(a=>[a.id,a]));for(const a of t.cards||[]){const s=a.inlineFilters||[];if(s.length===0){delete e.inlineFilterValuesMap[a.id];continue}const l=i.get(a.id),c=new Map(((l==null?void 0:l.inlineFilters)||[]).map(u=>[u.id,u])),d=new Set(s.map(u=>u.id));for(const u of(l==null?void 0:l.inlineFilters)||[])d.has(u.id)||e.inlineFilterValuesMap[a.id]&&(e.inlineFilterValuesMap[a.id]=e.inlineFilterValuesMap[a.id].filter(f=>f.filterId!==u.id));for(const u of s){const f=c.get(u.id);if(!(!f||!DC(f,u)))continue;if(u.defaultDateFilter&&!r)throw new Error("Cannot update inline date-filter defaults before report context initialization");const y=uo(u,r);if(y){e.inlineFilterValuesMap[a.id]||(e.inlineFilterValuesMap[a.id]=[]);const m=e.inlineFilterValuesMap[a.id].findIndex(b=>b.filterId===u.id);m>=0?e.inlineFilterValuesMap[a.id][m]=y:e.inlineFilterValuesMap[a.id].push(y)}else e.inlineFilterValuesMap[a.id]&&(e.inlineFilterValuesMap[a.id]=e.inlineFilterValuesMap[a.id].filter(m=>m.filterId!==u.id))}}for(const a of(n==null?void 0:n.cards)||[])o.has(a.id)||delete e.inlineFilterValuesMap[a.id]}function RC(e,n,t,r){const o=new Set((t.cards||[]).map(i=>i.id));for(const i of t.cards||[]){const a=i.inlineFilters||[],s=new Set(a.map(c=>c.id));if(s.size===0){delete e.inlineFilterValuesMap[i.id];continue}const l=(r[i.id]||[]).filter(c=>s.has(c.filterId));l.length>0?e.inlineFilterValuesMap[i.id]=l:delete e.inlineFilterValuesMap[i.id]}for(const i of(n==null?void 0:n.cards)||[])o.has(i.id)||delete e.inlineFilterValuesMap[i.id]}function Xo(e,n){const t=Object.keys(e),r=Object.keys(n);return t.length!==r.length?!1:t.every(o=>Object.is(e[o],n[o]))}function Et(e,n){return e[n]||(e[n]={filterValuesByInputId:{},filterModesByInputId:{},controlValuesByInputId:{}}),e[n]}function ll(e,n){var r;if(!e)return{};const t={shared:e.shared?{...e.shared}:void 0,bySheetId:Qo(e.bySheetId),byCardId:Qo(e.byCardId),byDocumentSectionId:Qo(e.byDocumentSectionId)};return(r=t.shared)==null||delete r[n],Zo(t.bySheetId,n),Zo(t.byCardId,n),Zo(t.byDocumentSectionId,n),ke(t)}function Qo(e){if(e)return Object.fromEntries(Object.entries(e).map(([n,t])=>[n,{...t}]))}function Zo(e,n){if(e)for(const t of Object.values(e))delete t[n]}const We=Ut()(to((e,n)=>({relaodToken:0,isSessionExpired:!1,currentBreakpoint:"lg",dashboard:{id:"",style:xi},dashboardAssistantDraftScopeKey:al(),showContext:!1,selectedSheetId:null,selectedCardId:null,selectedFrameId:null,selectedCard:null,selectedDocumentSectionIdsBySheetId:{},documentInspectorTabsBySheetId:{},documentInputRuntimeBySheetId:{},visualEditPendingFrameRewrites:{},visualEditPendingFilterRewrites:{},visualEditPendingDashboardCalculatedFields:void 0,showFilters:!1,isDashboardEditing:!1,isVisualEditing:!1,showDashboardJSON:!1,filteringCards:[],inlineFilterValuesMap:{},controlValues:{},cardControlValuesMap:{},dashboardInputValues:{},dashboardInputReferenceTime:void 0,semanticExecutionPayload:vr(),reportContext:null,reportContextSessionAccessToken:null,drillHistory:[],drillContext:null,actions:{applyResolvedCalendarPreferences:(t,r)=>{e(o=>{o.reportContext&&(o.reportContext.calendar.tz=t.tz,o.reportContext.calendar.weekStart=t.weekStart,o.reportContext.preferenceSources.calendar=r)})},applyResolvedValueFormatPreferences:(t,r)=>{e(o=>{o.reportContext&&(o.reportContext.valueFormat=t,o.reportContext.preferenceSources.valueFormat=r)})},setInitStore:()=>{const t=n().dashboard,r=n().dashboardAssistantDraftScopeKey,o=Se.getState().actions,i=Se.getState().pendingDashboardDraftMigration;!t.id&&r&&FC(t,r)?Se.getState().actions.setPendingDashboardDraftMigration({scopeKey:r,canSurviveBlankReset:!0,expectedDashboardId:null}):i!=null&&i.canSurviveBlankReset?o.setPendingDashboardDraftMigration({...i,canSurviveBlankReset:!1}):o.clearPendingDashboardDraftMigration(),e(a=>{a.relaodToken=0,a.isSessionExpired=!1,a.authToken=void 0,a.currentBreakpoint="lg",a.dashboard={id:"",style:xi},a.dashboardAssistantDraftScopeKey=al(),a.showContext=!1,a.selectedSheetId=null,a.selectedCardId=null,a.selectedFrameId=null,a.selectedCard=null,a.selectedDocumentSectionIdsBySheetId={},a.documentInspectorTabsBySheetId={},a.documentInputRuntimeBySheetId={},a.visualEditPendingFrameRewrites={},a.visualEditPendingFilterRewrites={},a.visualEditPendingDashboardCalculatedFields=void 0,a.showFilters=!1,a.isDashboardEditing=!1,a.isVisualEditing=!1,a.showDashboardJSON=!1,a.filteringCards=[],a.selectedLensId=void 0,a.filterValues=void 0,a.inlineFilterValuesMap={},a.controlValues={},a.cardControlValuesMap={},a.dashboardInputValues={},a.dashboardInputReferenceTime=void 0,a.semanticExecutionPayload=vr(),a.reportContext=null,a.reportContextSessionAccessToken=null})},triggerReload:()=>{e(t=>{t.relaodToken=t!=null&&t.relaodToken?t.relaodToken+1:1})},setAiContext:t=>{e(r=>{r.dashboard.aiContext=t})},setHandleOpenAssistantProfile:t=>{e(r=>{r.handleOpenAssistantProfile=t})},setFilterMode:(t,r)=>{const o=r==="exclude"?"not in":"in";e(i=>{var s,l,c;const a=(s=i.dashboard.filters)==null?void 0:s.find(d=>d.id===t);a&&(a.operation=o,i.dashboard.filters=(l=i.dashboard.filters)==null?void 0:l.map(d=>d.id===t?a:d),i.filterValues&&i.filterValues.length>0&&(i.filterValues=(c=i.filterValues)==null?void 0:c.map(d=>d.filterId===t?{...d,operation:o}:d)))})},updateEmailSettings:t=>{e(r=>{r.dashboard.emailSettings=t})},setDefaultFilterValues:t=>{e(r=>{r.dashboard.defaultFilterValues=t})},setDefaultControlValues:t=>{e(r=>{r.dashboard.defaultControlValues=t})},setDashboardInputs:t=>{e(r=>{r.dashboard.inputs=t})},upsertDashboardInput:t=>{e(r=>{const o=r.dashboard.inputs||[],i=o.findIndex(a=>a.id===t.id);if(i>=0){o[i]=t,r.dashboard.inputs=o;return}r.dashboard.inputs=[...o,t]})},removeDashboardInput:t=>{e(r=>{r.dashboard.inputs=(r.dashboard.inputs||[]).filter(o=>o.id!==t),r.dashboard.defaultInputValues=ll(r.dashboard.defaultInputValues,t),r.dashboardInputValues=ll(r.dashboardInputValues,t)})},setDefaultDashboardInputValues:t=>{e(r=>{r.dashboard.defaultInputValues=t?ke(t):void 0})},setDefaultDashboardInputComparisonSelection:(t,r,o)=>{e(i=>{i.dashboard.defaultInputValues=xn(i.dashboard.defaultInputValues||{},t,r,o),i.dashboardInputValues=xn(i.dashboardInputValues,t,r,void 0)})},setDashboardInputValues:t=>{e(r=>{r.dashboardInputValues=ke(t)})},setDashboardInputSlot:(t,r,o)=>{e(i=>{i.dashboardInputValues=o.status==="set"||o.status==="cleared"?Oi(i.dashboardInputValues,t,r,o):xn(i.dashboardInputValues,t,r,o.comparisonSelection)})},setDashboardInputComparisonSelection:(t,r,o)=>{e(i=>{i.dashboardInputValues=xn(i.dashboardInputValues,t,r,o)})},resetDashboardInputComparisonSelection:(t,r)=>{e(o=>{o.dashboardInputValues=xn(o.dashboardInputValues,t,r,void 0)})},clearDashboardInputSlot:(t,r)=>{e(o=>{o.dashboardInputValues=Oi(o.dashboardInputValues,t,r,{status:"cleared"})})},removeDashboardInputSlot:(t,r)=>{e(o=>{o.dashboardInputValues=zd(o.dashboardInputValues,t,r)})},setDashboardControlsModel:(t,r,o)=>{e(i=>{const a=o!=null&&o.renamed?{type:"rename",oldId:o.renamed.oldId,newId:o.renamed.newId}:o!=null&&o.removedControlId?{type:"remove",controlId:o.removedControlId}:null;a&&(i.dashboard=hy(i.dashboard,a)),o!=null&&o.cardBindingsById&&(i.dashboard=gy(i.dashboard,o.cardBindingsById,{affectedControlIds:o.affectedBindingControlIds}));const s=ma({controls:t,dashboardDefaultValues:r}),l=ry({controls:t,dashboardDefaultValues:s});i.dashboard.controls=l,i.dashboard.defaultControlValues=s,i.controlValues=ay({previousValues:i.controlValues,nextControls:l,nextDefaultValues:s,renamed:o==null?void 0:o.renamed})})},updateDashboardControl:(t,r)=>{e(o=>{o.dashboard.controls=(o.dashboard.controls||[]).map(i=>i.id===t?{...i,...r}:i)})},reorderDashboardControls:t=>{e(r=>{const o=r.dashboard.controls||[];if(o.length===0)return;const i=new Map(o.map(c=>[c.id,c])),a=t.map(c=>i.get(c)).filter(c=>c!==void 0),s=new Set(t),l=o.filter(c=>!s.has(c.id));r.dashboard.controls=[...a,...l]})},setIsDownloadingPdf:t=>{e(r=>{r.isDownloadingPdf=t})},setGlobalCacheConfig:t=>{e(r=>{r.dashboard.globalCacheConfig=t})},setLenses:t=>{e(r=>{r.lenses=t})},setSelectedLensId:t=>{e(r=>{r.selectedLensId=t})},deleteSheet:t=>{e(r=>{var i,a,s,l,c,d,u,f,h,y,m,b,C,g,v,S,x,I;const o=(i=r.dashboard.sheets)==null?void 0:i.findIndex(E=>E.id===t);if(o!==void 0&&o>-1){const E=(a=r.dashboard.sheets)==null?void 0:a[o],F=IC(E),T=EC(E),D=TC({inputs:r.dashboard.inputs,sheetId:t,deletedCardIds:F});(s=r.dashboard.sheets)==null||s.splice(o,1);const A=(l=r.dashboard.filters)==null?void 0:l.filter(O=>O.sheetId===t),_=(c=r.filterValues)==null?void 0:c.filter(O=>A==null?void 0:A.some(B=>B.id===O.filterId));r.filterValues=(d=r.filterValues)==null?void 0:d.filter(O=>!(_!=null&&_.some(B=>B.filterId===O.filterId))),r.dashboard.filters=(u=r.dashboard.filters)==null?void 0:u.filter(O=>O.sheetId!==t),r.selectedSheetId=(h=(f=r.dashboard.sheets)==null?void 0:f[0])==null?void 0:h.id,delete r.selectedDocumentSectionIdsBySheetId[t],delete r.documentInspectorTabsBySheetId[t],delete r.documentInputRuntimeBySheetId[t],(y=r.dashboardInputValues.bySheetId)==null||delete y[t],(b=(m=r.dashboard.defaultInputValues)==null?void 0:m.bySheetId)==null||delete b[t];for(const O of F)(C=r.dashboardInputValues.byCardId)==null||delete C[O],(v=(g=r.dashboard.defaultInputValues)==null?void 0:g.byCardId)==null||delete v[O];for(const O of T)(S=r.dashboardInputValues.byDocumentSectionId)==null||delete S[O],(I=(x=r.dashboard.defaultInputValues)==null?void 0:x.byDocumentSectionId)==null||delete I[O];if(r.dashboard.inputs=D.inputs,il(r.dashboardInputValues,D.removedInputIds),il(r.dashboard.defaultInputValues,D.removedInputIds),r.dashboardInputValues=ke(r.dashboardInputValues),r.dashboard.defaultInputValues&&(r.dashboard.defaultInputValues=ke(r.dashboard.defaultInputValues)),r.dashboard.id&&typeof localStorage<"u")try{const O=`semaphor-default-sheet-${r.dashboard.id}`;localStorage.getItem(O)===t&&localStorage.removeItem(O)}catch(O){console.error("Error clearing default sheet preference:",O)}}})},addSheet:t=>{e(r=>{r.dashboard.sheets||(r.dashboard.sheets=[]);const o=t.kind==="document"?[]:r.dashboard.filters;let i={};o==null||o.forEach(s=>{na.forEach(l=>{i!=null&&i[l]||(i={...i,[l]:[]});const c={i:s.id,x:0,y:0,w:10,h:8};i[l].push(c)})});const a=t.kind==="document"?{...t,document:t.document||Rr()}:{...t,layouts:i};r.dashboard.sheets.push(a)})},setGlobalStyle:t=>{e(r=>{r.dashboard.globalStyle=t})},setAIScopeTables:t=>{e(r=>{r.dashboard.aiScopeTables=t})},addToAIScope:t=>{e(r=>{const{connectionId:o,connectionType:i,databaseName:a,schemaName:s,tableName:l,datamodelName:c,datamodelId:d}=t,u={connectionId:o||"",connectionType:i||"",databaseName:a||"",schemaName:s||"",tableName:l||"",datamodelName:c||"",datamodelId:d||""};let h=[...r.dashboard.aiScopeTables||[],u];h=h.filter((y,m,b)=>b.findIndex(C=>C.tableName===y.tableName&&C.datamodelName===y.datamodelName)===m),r.dashboard.aiScopeTables=h})},removeFromAIScope:t=>{e(r=>{const{connectionId:o,tableName:i,datamodelName:a}=t,s=r.dashboard.aiScopeTables||[];if(a){const l=s.filter(c=>!(c.datamodelName===a&&c.connectionId===o));r.dashboard.aiScopeTables=l}else if(i){const l=s.filter(c=>!(c.tableName===i&&c.connectionId===o));r.dashboard.aiScopeTables=l}})},setIsSessionExpired:t=>{e(()=>({isSessionExpired:t}))},setCardPython:(t,r)=>{e(o=>{var a,s,l;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(c=>c.id===o.selectedSheetId);i&&((l=i==null?void 0:i.frames)==null||l.forEach(c=>{var u;const d=(u=c.cards)==null?void 0:u.find(f=>f.id===t);d&&(d.python=r)}))})},addBaseQuery:t=>{e(r=>{var o;r.dashboard.baseQueries||(r.dashboard.baseQueries=[]),(o=r.dashboard.baseQueries)==null||o.push(t)})},removeBaseQuery:t=>{e(r=>{var i,a;const o=(i=r.dashboard.baseQueries)==null?void 0:i.findIndex(s=>s.id===t);o!=null&&o>-1&&((a=r.dashboard.baseQueries)==null||a.splice(o,1))})},setBaseQueries:t=>{e(r=>{r.dashboard.baseQueries=t})},setCurrentBreakpoint:t=>{e(()=>({currentBreakpoint:t}))},setFilteringCards:t=>{e(()=>({filteringCards:t}))},addFilteringCard:t=>{e(r=>{var o;(o=r.filteringCards)==null||o.push(t)})},removeFilteringCard:t=>{e(r=>{var i,a;const o=(i=r.filteringCards)==null?void 0:i.findIndex(s=>s.id===t.id);o!==void 0&&o>-1&&((a=r.filteringCards)==null||a.splice(o,1))})},setCustomCards:t=>{e(r=>{r.dashboard.customCards=t})},setAuthToken:t=>{e(r=>{var o;((o=r.authToken)==null?void 0:o.accessToken)!==t.accessToken&&(r.reportContext=null,r.reportContextSessionAccessToken=null),r.authToken=t})},setThemeStyle:t=>{e(r=>{vi(r.themeStyle,t)||(r.themeStyle=t)})},setDashboard:(t,r)=>{var c,d,u,f,h,y,m,b,C,g;sl(t);const o=Zs(t),i=n(),a=((c=r==null?void 0:r.reportContext)==null?void 0:c.calendar.tz)??((d=i.reportContext)==null?void 0:d.calendar.tz),s=Pc(o,a),l=Uo(o,((u=i.dashboard)==null?void 0:u.id)===o.id?Lc({dashboardValues:i.controlValues,cardValuesMap:i.cardControlValuesMap}):void 0,{hasExplicitRuntimeOverrides:((f=i.dashboard)==null?void 0:f.id)===o.id});e({dashboard:o,selectedDocumentSectionIdsBySheetId:{},documentInspectorTabsBySheetId:{},documentInputRuntimeBySheetId:{},inlineFilterValuesMap:s,controlValues:l.dashboardControlValues,cardControlValuesMap:l.cardControlValuesMap,dashboardInputValues:(r==null?void 0:r.dashboardInputValues)??(((h=i.dashboard)==null?void 0:h.id)===o.id?i.dashboardInputValues:{}),dashboardInputReferenceTime:(r==null?void 0:r.dashboardInputReferenceTime)??(((y=i.dashboard)==null?void 0:y.id)===o.id?i.dashboardInputReferenceTime:void 0),semanticExecutionPayload:(r==null?void 0:r.semanticExecutionPayload)??(((m=i.dashboard)==null?void 0:m.id)===o.id?i.semanticExecutionPayload:vr()),reportContext:(r==null?void 0:r.reportContext)??(((b=i.dashboard)==null?void 0:b.id)===o.id?i.reportContext:null),reportContextSessionAccessToken:r!=null&&r.reportContext?((C=i.authToken)==null?void 0:C.accessToken)??null:((g=i.dashboard)==null?void 0:g.id)===o.id?i.reportContextSessionAccessToken:null})},setDashboardWithFilterValues:(t,r,o,i)=>{sl(t);const a=Zs(t),s=Uo(a,o,{hasExplicitRuntimeOverrides:o!==void 0});e(l=>{var u,f,h;const c=((u=l.dashboard)==null?void 0:u.id)===a.id,d=i&&Object.prototype.hasOwnProperty.call(i,"dashboardInputValues");l.dashboard=a,l.filterValues=r,l.controlValues=s.dashboardControlValues,l.cardControlValuesMap=s.cardControlValuesMap,d?(l.dashboardInputValues=(i==null?void 0:i.dashboardInputValues)||{},l.dashboardInputReferenceTime=i==null?void 0:i.dashboardInputReferenceTime):c||(l.dashboardInputValues={},l.dashboardInputReferenceTime=void 0),l.semanticExecutionPayload=(i==null?void 0:i.semanticExecutionPayload)??vr(),l.reportContext=(i==null?void 0:i.reportContext)??(c?l.reportContext:null),l.reportContextSessionAccessToken=i!=null&&i.reportContext?((f=i.authToken)==null?void 0:f.accessToken)??((h=l.authToken)==null?void 0:h.accessToken)??null:c?l.reportContextSessionAccessToken:null,l.authToken=(i==null?void 0:i.authToken)??l.authToken,i&&Object.prototype.hasOwnProperty.call(i,"selectedSheetId")&&(l.selectedSheetId=i.selectedSheetId??null),l.selectedDocumentSectionIdsBySheetId={},l.documentInspectorTabsBySheetId={},l.documentInputRuntimeBySheetId={}})},hydrateRuntimeControlValues:(t,r)=>{const o=Uo(t,r,{hasExplicitRuntimeOverrides:r!==void 0});e(i=>{i.controlValues=o.dashboardControlValues,i.cardControlValuesMap=o.cardControlValuesMap})},mergeSemanticExecutionPayload:t=>{e(r=>{Ko(r.semanticExecutionPayload,t)})},setDashboardTheme:t=>{e(r=>{r.theme=t})},setSheets:t=>{e(r=>{r.dashboard&&(r.dashboard.sheets=t)})},setDashboardTitle:t=>{e(r=>{r.dashboard&&(r.dashboard.title=t)})},setDashboardDescription:t=>{e(r=>{r.dashboard&&(r.dashboard.description=t)})},setSheetTitle:(t,r)=>{e(o=>{var a,s;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(l=>l.id===t);i&&(i.title=r)})},updateSheetDocument:(t,r)=>{e(o=>{var s,l;const i=(l=(s=o.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(c=>c.id===t);if(!i)return;const a=i.document||Rr();i.kind="document",i.document=r(a)})},updateDocumentSectionCard:(t,r,o,i)=>{e(a=>{var c,d;const s=(d=(c=a.dashboard)==null?void 0:c.sheets)==null?void 0:d.find(u=>u.id===t);if(!s)return;const l=s.document||Rr();s.kind="document",s.document={...l,sections:l.sections.map(u=>u.id!==r?u:u.type==="table"||u.type==="chart"?{...u,title:o.title||u.title,card:o}:u)},(i==null?void 0:i.calculatedFields)!==void 0&&(s.calculatedFields=Ho(i.calculatedFields))})},setSelectedDocumentSectionId:(t,r)=>{e(o=>{o.selectedDocumentSectionIdsBySheetId={...o.selectedDocumentSectionIdsBySheetId,[t]:r}})},setDocumentInspectorTab:(t,r)=>{e(o=>{o.documentInspectorTabsBySheetId={...o.documentInspectorTabsBySheetId,[t]:r}})},setDocumentInputFilterValues:(t,r)=>{e(o=>{const i=Et(o.documentInputRuntimeBySheetId,t);Xo(i.filterValuesByInputId,r)||(i.filterValuesByInputId=r)})},setDocumentInputFilterValue:(t,r,o)=>{e(i=>{const a=Et(i.documentInputRuntimeBySheetId,t);a.filterValuesByInputId[r]!==o&&(a.filterValuesByInputId={...a.filterValuesByInputId,[r]:o})})},removeDocumentInputFilterValue:(t,r)=>{e(o=>{const i=Et(o.documentInputRuntimeBySheetId,t);r in i.filterValuesByInputId&&i.filterValuesByInputId[r]===void 0||(i.filterValuesByInputId={...i.filterValuesByInputId,[r]:void 0})})},setDocumentInputFilterModes:(t,r)=>{e(o=>{const i=Et(o.documentInputRuntimeBySheetId,t);Xo(i.filterModesByInputId,r)||(i.filterModesByInputId=r)})},setDocumentInputFilterMode:(t,r,o)=>{e(i=>{const a=Et(i.documentInputRuntimeBySheetId,t);a.filterModesByInputId[r]!==o&&(a.filterModesByInputId={...a.filterModesByInputId,[r]:o})})},setDocumentInputControlValues:(t,r)=>{e(o=>{const i=Et(o.documentInputRuntimeBySheetId,t);Xo(i.controlValuesByInputId,r)||(i.controlValuesByInputId=r)})},setDocumentInputControlValue:(t,r,o)=>{e(i=>{const a=Et(i.documentInputRuntimeBySheetId,t);Object.is(a.controlValuesByInputId[r],o)||(a.controlValuesByInputId={...a.controlValuesByInputId,[r]:o})})},clearDocumentInputRuntime:t=>{e(r=>{if(t){delete r.documentInputRuntimeBySheetId[t];return}r.documentInputRuntimeBySheetId={}})},setCardTitle:(t,r,o)=>{e(i=>{var s,l,c;const a=(l=(s=i.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(d=>d.id===t);a&&((c=a==null?void 0:a.frames)==null||c.forEach(d=>{var f;const u=(f=d.cards)==null?void 0:f.find(h=>h.id===r);u&&(u.title=o)}))})},setCardInfo:(t,r)=>{e(o=>{var a,s,l;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(c=>c.id===o.selectedSheetId);i&&((l=i==null?void 0:i.frames)==null||l.forEach(c=>{var u;const d=(u=c.cards)==null?void 0:u.find(f=>f.id===t);d&&(d.info=r)}))})},setCardDescription:(t,r,o,i)=>{e(a=>{var l,c,d;const s=(c=(l=a.dashboard)==null?void 0:l.sheets)==null?void 0:c.find(u=>u.id===t);s&&((d=s==null?void 0:s.frames)==null||d.forEach(u=>{var h;const f=(h=u.cards)==null?void 0:h.find(y=>y.id===r);f&&(f.description=o,i!==void 0&&(f.preferences=i))}))})},setCardKpiOptions:(t,r,o)=>{e(i=>{var s,l,c;const a=(l=(s=i.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(d=>d.id===t);a&&((c=a==null?void 0:a.frames)==null||c.forEach(d=>{var f;const u=(f=d.cards)==null?void 0:f.find(h=>h.id===r);u&&(u.preferences||(u.preferences={}),u.preferences.kpiVisualOptions||(u.preferences.kpiVisualOptions={}),u.preferences.kpiVisualOptions={...u.preferences.kpiVisualOptions,...o})}))})},updateCardFilters:(t,r)=>{e(o=>{var a,s;const i=(a=o.dashboard)==null?void 0:a.sheets;if(i)for(const l of i){const c=l.frames||[];for(const d of c){const u=(s=d.cards)==null?void 0:s.find(f=>f.id===t);if(u){u.config||(u.config={}),u.config.filters=r;return}}}})},clearCardFilters:t=>{e(r=>{var i,a;const o=(i=r.dashboard)==null?void 0:i.sheets;if(o)for(const s of o){const l=s.frames||[];for(const c of l){const d=(a=c.cards)==null?void 0:a.find(u=>u.id===t);if(d&&d.config){d.config.filters=void 0;return}}}})},setCardInlineFilterValue:(t,r)=>{e(o=>{o.inlineFilterValuesMap[t]||(o.inlineFilterValuesMap[t]=[]);const i=o.inlineFilterValuesMap[t].findIndex(a=>a.filterId===r.filterId);i>=0?o.inlineFilterValuesMap[t][i]=r:o.inlineFilterValuesMap[t].push(r)})},removeCardInlineFilterValue:(t,r)=>{e(o=>{o.inlineFilterValuesMap[t]&&(o.inlineFilterValuesMap[t]=o.inlineFilterValuesMap[t].filter(i=>i.filterId!==r))})},getCardInlineFilterValues:t=>n().inlineFilterValuesMap[t]||[],setControlValue:(t,r)=>{e(o=>{if(r===void 0){delete o.controlValues[t];return}o.controlValues[t]=r})},removeControlValue:t=>{e(r=>{delete r.controlValues[t]})},setCardControlValue:(t,r,o)=>{e(i=>{if(o===void 0){if(!i.cardControlValuesMap[t])return;delete i.cardControlValuesMap[t][r],Object.keys(i.cardControlValuesMap[t]).length===0&&delete i.cardControlValuesMap[t];return}i.cardControlValuesMap[t]||(i.cardControlValuesMap[t]={}),i.cardControlValuesMap[t][r]=o})},removeCardControlValue:(t,r)=>{e(o=>{o.cardControlValuesMap[t]&&(delete o.cardControlValuesMap[t][r],Object.keys(o.cardControlValuesMap[t]).length===0&&delete o.cardControlValuesMap[t])})},setCardControlRuntimeModel:(t,r,o)=>{e(i=>{const a=sy({previousValues:i.cardControlValuesMap[t],nextControls:r,renamed:o==null?void 0:o.renamed});if(Object.keys(a).length===0){delete i.cardControlValuesMap[t];return}i.cardControlValuesMap[t]=a})},clearAllInlineFilterValues:()=>{e(t=>{t.inlineFilterValuesMap={}})},setInlineFilterValuesMap:t=>{e(r=>{r.inlineFilterValuesMap=t})},setCardInlineFilterMode:(t,r,o,i)=>{const a=i==="exclude"?"not in":"in";e(s=>{var c,d,u,f;const l=(d=(c=s.dashboard)==null?void 0:c.sheets)==null?void 0:d.find(h=>h.id===t);if(l)for(const h of l.frames||[]){const y=(u=h.cards)==null?void 0:u.find(m=>m.id===r);if(y&&y.inlineFilters){y.inlineFilters=y.inlineFilters.map(m=>m.id===o?{...m,operation:a}:m),s.inlineFilterValuesMap[r]&&(s.inlineFilterValuesMap[r]=s.inlineFilterValuesMap[r].map(m=>m.filterId===o?{...m,operation:a}:m)),(f=s.onAcceptChanges)==null||f.call(s,h,s.dashboard);return}}})},setCardInlineFilterDefaultValues:(t,r,o,i)=>{e(a=>{var l,c,d,u;const s=(c=(l=a.dashboard)==null?void 0:l.sheets)==null?void 0:c.find(f=>f.id===t);if(s)for(const f of s.frames||[]){const h=(d=f.cards)==null?void 0:d.find(y=>y.id===r);if(h&&h.inlineFilters){h.inlineFilters=h.inlineFilters.map(y=>y.id===o?{...y,defaultValues:i}:y),(u=a.onAcceptChanges)==null||u.call(a,f,a.dashboard);return}}})},setCardSql:(t,r,o)=>{e(i=>{var s,l,c,d;const a=(l=(s=i.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(u=>u.id===t);if(a){const u=(c=a.cards)==null?void 0:c.find(f=>f.id===r);u&&(u.sql=o,(d=i.onUpdateCard)==null||d.call(i,u,t))}})},setSheetLayout:(t,r)=>{e(o=>{var a,s;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(l=>l.id===t);i&&(i.layout=r)})},setSheetLayouts:(t,r)=>{e(o=>{var a,s;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(l=>l.id===t);i&&(i.layouts=r)})},setShowContext:t=>{e(()=>({showContext:t}))},setShowFilters:t=>{e(()=>({showFilters:t}))},setFilterLayout:t=>{e(r=>{r.dashboard.filterLayout={...r.dashboard.filterLayout,...t}})},setFilterValues:t=>{e(()=>({filterValues:t}))},addOrUpdateFilterValue:t=>{e(r=>{if(r.filterValues){const o=r.filterValues.findIndex(i=>i.filterId===t.filterId);o>-1?r.filterValues.splice(o,1,t):r.filterValues.push(t)}else r.filterValues=[t]})},addOrUpdateFilterValues:t=>{e(r=>{r.filterValues?t.forEach(o=>{var a,s,l,c;const i=(a=r==null?void 0:r.filterValues)==null?void 0:a.findIndex(d=>d.filterId===o.filterId);if(o.values.length===0){r.filterValues=(s=r.filterValues)==null?void 0:s.filter(d=>d.filterId!==o.filterId);return}i!==void 0&&i>-1?(l=r.filterValues)==null||l.splice(i,1,o):(c=r.filterValues)==null||c.push(o)}):r.filterValues=t})},removeFilterValues:t=>{e(r=>{if(r.filterValues){const o=r.filterValues.filter(i=>i.filterId!==t&&!i.filterId.startsWith(t));r.filterValues=o}})},replaceFilterValue:t=>{e(r=>{if(r.filterValues){const o=r.filterValues.findIndex(i=>i.filterId===t.filterId);o>-1&&r.filterValues.splice(o,1,t)}})},addFilter:t=>{e(r=>{var a,s;if((((a=r.dashboard.filters)==null?void 0:a.findIndex(l=>l.kind==="global-date"&&t.kind==="global-date"))??-1)>=0)return;r.dashboard.filters?(s=r.dashboard.filters)==null||s.push(t):r.dashboard.filters=[t],Ia(r.dashboard.sheets).forEach(l=>{$s({id:t.id,layouts:l.layouts,y:0,initialHeight:8,minH:7,w:10})})})},removeFilter:t=>{e(r=>{var o,i,a;if(r.dashboard.filters){const s=(o=r.dashboard.filters)==null?void 0:o.findIndex(l=>l.id===t);if(s>-1){(i=r.dashboard.filters)==null||i.splice(s,1),(a=r.dashboard.sheets)==null||a.find(c=>c.id===r.selectedSheetId);const l=r.dashboard.sheets;l==null||l.forEach(c=>{const d=Us(t,c.layouts);c.layouts=d})}}})},reorderFilters:t=>{e(r=>{if(!r.dashboard.filters)return;const o=new Map(r.dashboard.filters.map(l=>[l.id,l])),i=t.map(l=>o.get(l)).filter(l=>l!==void 0),a=new Set(t),s=r.dashboard.filters.filter(l=>!a.has(l.id));r.dashboard.filters=[...i,...s]})},updateCurrentDashboardCard:t=>{e(r=>{var s,l,c,d,u;const o=(l=(s=r.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(f=>f.id===r.selectedSheetId),i=(c=o==null?void 0:o.frames)==null?void 0:c.find(f=>f.id===r.selectedFrameId),a=(d=i==null?void 0:i.cards)==null?void 0:d.findIndex(f=>f.id===t.id);typeof a=="number"&&a>=0&&((u=i==null?void 0:i.cards)==null||u.splice(a,1,t))})},updateFrameCard:(t,r,o)=>{e(i=>{var l,c,d,u,f;const a=(c=(l=i.dashboard)==null?void 0:l.sheets)==null?void 0:c.find(h=>h.id===t);if(!a)return;const s=(d=a==null?void 0:a.frames)==null?void 0:d.find(h=>h.id===r);if(s){const h=(u=s.cards)==null?void 0:u.findIndex(y=>y.id===o.id);h>-1&&((f=s.cards)==null||f.splice(h,1,o))}})},updateFilter:t=>{e(r=>{var o,i;if(r.dashboard.filters){const a=(o=r.dashboard.filters)==null?void 0:o.findIndex(s=>s.id===t.id);a>-1&&((i=r.dashboard.filters)==null||i.splice(a,1,t))}})},updateFilterId:(t,r)=>{e(o=>{var s,l;const i=(s=o.dashboard.filters)==null?void 0:s.find(c=>c.id===t),a=(l=o.dashboard.filters)==null?void 0:l.some(c=>c.id===r);i&&!a&&(i.id=r)})},setFilterDefaultValues:(t,r)=>{e(o=>{var a;const i=(a=o.dashboard.filters)==null?void 0:a.find(s=>s.id===t);i&&(i.defaultValues=r)})},setIsDashboardEditing:t=>{e(()=>({isDashboardEditing:t}))},setShowDashboardJSON:t=>{e(()=>({showDashboardJSON:t}))},setIsVisualEditing:t=>{e(r=>{r.isVisualEditing=t,t||(r.visualEditPendingFrameRewrites={},r.visualEditPendingFilterRewrites={},r.visualEditPendingDashboardCalculatedFields=void 0)})},setVisualEditPendingFrameRewrites:(t,r)=>{e(o=>{o.visualEditPendingFrameRewrites[t]=r})},setVisualEditPendingFilterRewrites:(t,r)=>{e(o=>{o.visualEditPendingFilterRewrites[t]=r})},clearVisualEditPendingFrameRewrites:t=>{e(r=>{if(t){delete r.visualEditPendingFrameRewrites[t];return}r.visualEditPendingFrameRewrites={}})},clearVisualEditPendingFilterRewrites:t=>{e(r=>{if(t){delete r.visualEditPendingFilterRewrites[t];return}r.visualEditPendingFilterRewrites={}})},addFrame:(t,r,o)=>{e(i=>{var s,l,c;const a=(l=(s=i.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(d=>d.id===t);if(a){if(wa(a))return;a.frames||(a.frames=[]);const d=typeof o=="string"?{position:o}:o||{};if(d.insertAfterFrameId){const y=a.frames.findIndex(m=>m.id===d.insertAfterFrameId);y>=0?a.frames.splice(y+1,0,r):a.frames.push(r)}else d.position==="start"?a.frames.unshift(r):a.frames.push(r);let u=1/0;const f=0;d.position==="start"&&(u=0);const h=d.copyLayoutFromFrameId&&wg({sourceId:d.copyLayoutFromFrameId,duplicatedId:r.id,layouts:a.layouts})||$s({id:r.id,layouts:a.layouts,x:f,y:u,frame:r});a.layouts=h,Ko(i.semanticExecutionPayload,d.semanticExecutionPayload),(c=i.onAddFrame)==null||c.call(i,r,t)}})},removeFrame:(t,r)=>{e(o=>{var a,s,l,c,d;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(u=>u.id===t);if(i){const u=(l=i.frames)==null?void 0:l.findIndex(f=>f.id===r);console.log(u),typeof u=="number"&&u>-1&&((c=i.frames)==null||c.splice(u,1),(d=i.layout)==null||d.splice(u,1),Us(r,i.layouts))}})},updateFrame:(t,r,o)=>{e(i=>{var b,C,g,v;const a=(C=(b=i.dashboard)==null?void 0:b.sheets)==null?void 0:C.find(S=>S.id===t);if(!(a!=null&&a.frames))return;const s=i.isVisualEditing&&i.selectedFrameId===r.id?i.visualEditPendingFrameRewrites[t]:void 0,l=i.isVisualEditing&&i.selectedFrameId===r.id?i.visualEditPendingFilterRewrites[t]:void 0,c=i.isVisualEditing&&i.selectedFrameId===r.id?i.visualEditPendingDashboardCalculatedFields:void 0,d=a.frames.findIndex(S=>S.id===r.id);if(d===-1){console.warn("updateFrame: frame not found",r.id,t);return}const u=a.frames[d];i.isVisualEditing&&i.selectedFrameId===r.id&&(a.layouts=bg({layouts:a.layouts,previousFrame:u,nextFrame:r})),r.calculatedFields!==void 0&&(a.calculatedFields=Ho(r.calculatedFields));const f=S=>S.calculatedFields===void 0?S:{...S,calculatedFields:void 0},h=s&&s.length>0?(()=>{const S=s.map(x=>x.id===r.id?r:x);return S.some(x=>x.id===r.id)?S:[r,...S]})():[r],y=new Map(h.map(S=>[S.id,S])),m=f(r);a.frames=a.frames.map(S=>{const x=y.get(S.id);return x?f(x):S.calculatedFields===void 0?S:{...S,calculatedFields:void 0}}),l&&(i.dashboard.filters=l),c&&(i.dashboard.calculatedFields=c),i.isVisualEditing&&i.selectedFrameId===r.id?RC(i,u,m,nr.getState().inlineFilterValuesMap):AC(i,u,m,(g=i.reportContext)==null?void 0:g.calendar.tz),s!=null&&s.length&&delete i.visualEditPendingFrameRewrites[t],l&&delete i.visualEditPendingFilterRewrites[t],c&&(i.visualEditPendingDashboardCalculatedFields=void 0),Ko(i.semanticExecutionPayload,o==null?void 0:o.semanticExecutionPayload),(v=i.onAcceptChanges)==null||v.call(i,m,i.dashboard)})},updateCard:(t,r)=>{e(o=>{var s,l,c,d,u;const i=(l=(s=o.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(f=>f.id===t),a=(c=i==null?void 0:i.cards)==null?void 0:c.findIndex(f=>f.id===r.id);i&&((d=i.cards)==null||d.splice(a,1,r),(u=o.onUpdateCard)==null||u.call(o,r,t))})},updateSheetCalculatedFields:(t,r)=>{e(o=>{var a,s,l;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(c=>c.id===t);i&&(i.calculatedFields=Ho(r)||[],(l=i.frames)!=null&&l.length&&(i.frames=i.frames.map(c=>c.calculatedFields===void 0?c:{...c,calculatedFields:void 0})))})},updateDashboardCalculatedFields:t=>{e(r=>{if(!r.dashboard)return;const o=dd(t)||[];if(r.isVisualEditing&&r.selectedFrameId){r.visualEditPendingDashboardCalculatedFields=o;return}r.dashboard.calculatedFields=o})},removeCard:(t,r)=>{e(o=>{var s,l,c,d,u,f;const i=(l=(s=o.dashboard)==null?void 0:s.sheets)==null?void 0:l.find(h=>h.id===t),a=(c=i==null?void 0:i.cards)==null?void 0:c.findIndex(h=>h.id===r.id);i&&((d=i.cards)==null||d.splice(a,1),(u=i.layout)==null||u.splice(a,1),(f=o.onRemoveCard)==null||f.call(o,r,t))})},setStyle:t=>{e(r=>{if(r.dashboard){if(vi(r.dashboard.style,t))return;r.dashboard.style=t}})},setSelectedCardId:(t,r)=>{e(o=>{var a,s,l;const i=(s=(a=o.dashboard)==null?void 0:a.sheets)==null?void 0:s.find(c=>c.id===t);i&&(((l=i.cards)==null?void 0:l.find(d=>d.id===r))?o.selectedCardId=r:o.selectedCardId=null)})},setSelectedFrameId:t=>{e(r=>{var i,a;((a=(i=r.dashboard)==null?void 0:i.sheets)==null?void 0:a.find(s=>s.id===r.selectedSheetId))&&(r.selectedFrameId=t)})},clearSelectedFrameId:()=>{e(t=>{t.selectedFrameId=null})},setSelectedSheetId:t=>{e(r=>{var i,a;((a=(i=r.dashboard)==null?void 0:i.sheets)==null?void 0:a.find(s=>s.id===t))&&(r.selectedSheetId=t)})},setOnSaveFunction:t=>{e(()=>({onSaveFunction:t}))},setOnAddCard:t=>{e(()=>({onAddCard:t}))},setOnAcceptChanges:t=>{e(()=>({onAcceptChanges:t}))},setOnUpdateCard:t=>{e(()=>({onUpdateCard:t}))},setOnRemoveCard:t=>{e(()=>({onRemoveCard:t}))},setOnEvent:t=>{e(()=>({onEvent:t}))},getDashboard:()=>n().dashboard,getSelectedSheet:()=>{var t,r;return(r=(t=n().dashboard)==null?void 0:t.sheets)==null?void 0:r.find(o=>o.id===n().selectedSheetId)},getCardFrame:t=>{var o,i;const r=(o=n().dashboard)==null?void 0:o.sheets;if(r)for(let a=0;a<r.length;a++){const s=r[a].frames;if(s){for(let l=0;l<s.length;l++)if((i=s[l].cards)==null?void 0:i.find(d=>d.id===t))return s[l]}}},getSelectedFrame:()=>{var r,o,i;const t=(o=(r=n().dashboard)==null?void 0:r.sheets)==null?void 0:o.find(a=>a.id===n().selectedSheetId);return(i=t==null?void 0:t.frames)==null?void 0:i.find(a=>a.id===n().selectedFrameId)},getCard:t=>{var o,i;const r=(o=n().dashboard)==null?void 0:o.sheets;if(r)for(let a=0;a<r.length;a++){const s=r[a].frames;if(s)for(let l=0;l<s.length;l++){const c=(i=s[l].cards)==null?void 0:i.find(d=>d.id===t);if(c)return c}}},getSelectedSheetLayout:()=>{var r,o;const t=(o=(r=n().dashboard)==null?void 0:r.sheets)==null?void 0:o.find(i=>i.id===n().selectedSheetId);return t==null?void 0:t.layout},getSelectedSheetLayouts:()=>{var r,o;const t=(o=(r=n().dashboard)==null?void 0:r.sheets)==null?void 0:o.find(i=>i.id===n().selectedSheetId);return t==null?void 0:t.layouts},getStyle:()=>{var t;return(t=n().dashboard)==null?void 0:t.style},getCardSheet(t){var o,i;const r=(o=n().dashboard)==null?void 0:o.sheets;if(r)for(let a=0;a<r.length;a++){const s=r[a].frames;if(s){for(let l=0;l<s.length;l++)if((i=s[l].cards)==null?void 0:i.find(d=>d.id===t))return r[a]}}},handleDataPointClickAction:(t,r)=>{fg({card:t,dataPoint:r,get:n})},updateCardId:(t,r)=>{const o=n(),i=Tg(r);return i.isValid?zs(o.dashboard,r,t)?(e(a=>{var l;const s=a.dashboard.sheets||[];for(const c of s){const d=c.frames||[];for(const u of d){const f=u.cards||[];for(let h=0;h<f.length;h++)f[h].id===t&&(f[h].id=r);u.activeCardId===t&&(u.activeCardId=r)}}a.selectedCardId===t&&(a.selectedCardId=r),((l=a.selectedCard)==null?void 0:l.id)===t&&(a.selectedCard.id=r)}),{success:!0}):{success:!1,error:"This Card ID already exists in the dashboard"}:{success:!1,error:i.error}},isCardIdUnique:(t,r)=>zs(n().dashboard,t,r),navigateWithDrill:(t,r,o,i,a)=>{e(s=>{s.drillHistory.push({sourceDashboardId:r,targetDashboardId:t,sourceDashboardTitle:o,filters:i,contextMode:a,timestamp:Date.now()}),s.drillContext={filters:i,sourceDashboardId:r,sourceDashboardTitle:o}})},goBackFromDrill:()=>{e(t=>{if(t.drillHistory.pop(),t.drillHistory.length===0)t.drillContext=null,Ee.getState().resetInteractionState(pt);else{const r=t.drillHistory[t.drillHistory.length-1];t.drillContext={filters:r.filters,sourceDashboardId:r.sourceDashboardId,sourceDashboardTitle:r.sourceDashboardTitle};const o={sourceCardId:pt,interactionMode:"clickFilter",filterGroups:[{filters:r.filters}]};Ee.getState().setInteractionState(pt,{...et(),appliedClickFilters:[o],contextMode:r.contextMode,sourceDashboardId:r.sourceDashboardId,sourceDashboardTitle:r.sourceDashboardTitle,targetDashboardId:r.targetDashboardId})}})},clearDrillContext:()=>{e(t=>{t.drillHistory=[],t.drillContext=null}),Ee.getState().resetInteractionState(pt)}}}))),Gd=()=>We(n=>{var i,a,s,l,c;const t=(a=(i=n.dashboard)==null?void 0:i.sheets)==null?void 0:a.find(d=>d.id===n.selectedSheetId),r=(s=t==null?void 0:t.frames)==null?void 0:s.find(d=>d.id===n.selectedFrameId);return((l=r==null?void 0:r.cards)==null?void 0:l.find(d=>d.id===(r==null?void 0:r.activeCardId)))||((c=r==null?void 0:r.cards)==null?void 0:c[0])}),_C=()=>{var t;const e=We(r=>{var o,i;return(i=(o=r.dashboard)==null?void 0:o.sheets)==null?void 0:i.find(a=>a.id===r.selectedSheetId)});return(((t=e==null?void 0:e.frames)==null?void 0:t.map(r=>{var o;return(o=r.cards)==null?void 0:o.find(i=>i.id===r.activeCardId)}))||[]).filter(r=>r!==void 0)},PC=()=>{var n,t,r;const e=Gd();return{metricFields:((n=e==null?void 0:e.config)==null?void 0:n.metricColumns)||[],groupByFields:((t=e==null?void 0:e.config)==null?void 0:t.groupByColumns)||[],pivotByFields:((r=e==null?void 0:e.config)==null?void 0:r.pivotByColumns)||[]}},OC=()=>We(e=>e.actions);it.subscribe("dashboard:load",()=>{We.getState().actions.setInitStore()});it.subscribe("dashboard:unload",()=>{We.getState().actions.setInitStore()});async function MC(e,n){const t=n.slice(0,16),r=new TextEncoder,o=await window.crypto.subtle.importKey("raw",r.encode(t),{name:"PBKDF2"},!1,["deriveKey"]),i=await window.crypto.subtle.deriveKey({name:"PBKDF2",salt:r.encode(t),iterations:1e5,hash:"SHA-256"},o,{name:"AES-GCM",length:256},!1,["encrypt"]),a=window.crypto.getRandomValues(new Uint8Array(12)),s=await window.crypto.subtle.encrypt({name:"AES-GCM",iv:a},i,r.encode(e)),l=new Uint8Array(a.length+s.byteLength);return l.set(a,0),l.set(new Uint8Array(s),a.length),{payload:btoa(String.fromCharCode(...l))}}async function Wd(e,n){const t=n.slice(0,16),r=new TextEncoder,o=new TextDecoder,i=await window.crypto.subtle.importKey("raw",r.encode(t),{name:"PBKDF2"},!1,["deriveKey"]),a=await window.crypto.subtle.deriveKey({name:"PBKDF2",salt:r.encode(t),iterations:1e5,hash:"SHA-256"},i,{name:"AES-GCM",length:256},!1,["decrypt"]),s=Uint8Array.from(atob(e),f=>f.charCodeAt(0)),l=s.slice(0,12),c=s.slice(s.length-16),d=s.slice(12,s.length-16),u=new Uint8Array(d.length+c.length);u.set(d),u.set(c,d.length);try{const f=await window.crypto.subtle.decrypt({name:"AES-GCM",iv:l},a,u);return{decryptedData:o.decode(f)}}catch(f){throw new Error(`Decryption failed: ${f}`)}}const Ra="-",NC=e=>{const n=LC(e),{conflictingClassGroups:t,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:a=>{const s=a.split(Ra);return s[0]===""&&s.length!==1&&s.shift(),Yd(s,n)||kC(a)},getConflictingClassGroupIds:(a,s)=>{const l=t[a]||[];return s&&r[a]?[...l,...r[a]]:l}}},Yd=(e,n)=>{var a;if(e.length===0)return n.classGroupId;const t=e[0],r=n.nextPart.get(t),o=r?Yd(e.slice(1),r):void 0;if(o)return o;if(n.validators.length===0)return;const i=e.join(Ra);return(a=n.validators.find(({validator:s})=>s(i)))==null?void 0:a.classGroupId},cl=/^\[(.+)\]$/,kC=e=>{if(cl.test(e)){const n=cl.exec(e)[1],t=n==null?void 0:n.substring(0,n.indexOf(":"));if(t)return"arbitrary.."+t}},LC=e=>{const{theme:n,prefix:t}=e,r={nextPart:new Map,validators:[]};return BC(Object.entries(e.classGroups),t).forEach(([i,a])=>{Mi(a,r,i,n)}),r},Mi=(e,n,t,r)=>{e.forEach(o=>{if(typeof o=="string"){const i=o===""?n:dl(n,o);i.classGroupId=t;return}if(typeof o=="function"){if(VC(o)){Mi(o(r),n,t,r);return}n.validators.push({validator:o,classGroupId:t});return}Object.entries(o).forEach(([i,a])=>{Mi(a,dl(n,i),t,r)})})},dl=(e,n)=>{let t=e;return n.split(Ra).forEach(r=>{t.nextPart.has(r)||t.nextPart.set(r,{nextPart:new Map,validators:[]}),t=t.nextPart.get(r)}),t},VC=e=>e.isThemeGetter,BC=(e,n)=>n?e.map(([t,r])=>{const o=r.map(i=>typeof i=="string"?n+i:typeof i=="object"?Object.fromEntries(Object.entries(i).map(([a,s])=>[n+a,s])):i);return[t,o]}):e,jC=e=>{if(e<1)return{get:()=>{},set:()=>{}};let n=0,t=new Map,r=new Map;const o=(i,a)=>{t.set(i,a),n++,n>e&&(n=0,r=t,t=new Map)};return{get(i){let a=t.get(i);if(a!==void 0)return a;if((a=r.get(i))!==void 0)return o(i,a),a},set(i,a){t.has(i)?t.set(i,a):o(i,a)}}},Kd="!",$C=e=>{const{separator:n,experimentalParseClassName:t}=e,r=n.length===1,o=n[0],i=n.length,a=s=>{const l=[];let c=0,d=0,u;for(let b=0;b<s.length;b++){let C=s[b];if(c===0){if(C===o&&(r||s.slice(b,b+i)===n)){l.push(s.slice(d,b)),d=b+i;continue}if(C==="/"){u=b;continue}}C==="["?c++:C==="]"&&c--}const f=l.length===0?s:s.substring(d),h=f.startsWith(Kd),y=h?f.substring(1):f,m=u&&u>d?u-d:void 0;return{modifiers:l,hasImportantModifier:h,baseClassName:y,maybePostfixModifierPosition:m}};return t?s=>t({className:s,parseClassName:a}):a},UC=e=>{if(e.length<=1)return e;const n=[];let t=[];return e.forEach(r=>{r[0]==="["?(n.push(...t.sort(),r),t=[]):t.push(r)}),n.push(...t.sort()),n},zC=e=>({cache:jC(e.cacheSize),parseClassName:$C(e),...NC(e)}),qC=/\s+/,HC=(e,n)=>{const{parseClassName:t,getClassGroupId:r,getConflictingClassGroupIds:o}=n,i=[],a=e.trim().split(qC);let s="";for(let l=a.length-1;l>=0;l-=1){const c=a[l],{modifiers:d,hasImportantModifier:u,baseClassName:f,maybePostfixModifierPosition:h}=t(c);let y=!!h,m=r(y?f.substring(0,h):f);if(!m){if(!y){s=c+(s.length>0?" "+s:s);continue}if(m=r(f),!m){s=c+(s.length>0?" "+s:s);continue}y=!1}const b=UC(d).join(":"),C=u?b+Kd:b,g=C+m;if(i.includes(g))continue;i.push(g);const v=o(m,y);for(let S=0;S<v.length;++S){const x=v[S];i.push(C+x)}s=c+(s.length>0?" "+s:s)}return s};function GC(){let e=0,n,t,r="";for(;e<arguments.length;)(n=arguments[e++])&&(t=Xd(n))&&(r&&(r+=" "),r+=t);return r}const Xd=e=>{if(typeof e=="string")return e;let n,t="";for(let r=0;r<e.length;r++)e[r]&&(n=Xd(e[r]))&&(t&&(t+=" "),t+=n);return t};function ul(e,...n){let t,r,o,i=a;function a(l){const c=n.reduce((d,u)=>u(d),e());return t=zC(c),r=t.cache.get,o=t.cache.set,i=s,s(l)}function s(l){const c=r(l);if(c)return c;const d=HC(l,t);return o(l,d),d}return function(){return i(GC.apply(null,arguments))}}const ie=e=>{const n=t=>t[e]||[];return n.isThemeGetter=!0,n},Qd=/^\[(?:([a-z-]+):)?(.+)\]$/i,WC=/^\d+\/\d+$/,YC=new Set(["px","full","screen"]),KC=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,XC=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,QC=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,ZC=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,JC=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Qe=e=>an(e)||YC.has(e)||WC.test(e),lt=e=>hn(e,"length",sS),an=e=>!!e&&!Number.isNaN(Number(e)),Jo=e=>hn(e,"number",an),wn=e=>!!e&&Number.isInteger(Number(e)),eS=e=>e.endsWith("%")&&an(e.slice(0,-1)),q=e=>Qd.test(e),ct=e=>KC.test(e),tS=new Set(["length","size","percentage"]),nS=e=>hn(e,tS,Zd),rS=e=>hn(e,"position",Zd),oS=new Set(["image","url"]),iS=e=>hn(e,oS,cS),aS=e=>hn(e,"",lS),In=()=>!0,hn=(e,n,t)=>{const r=Qd.exec(e);return r?r[1]?typeof n=="string"?r[1]===n:n.has(r[1]):t(r[2]):!1},sS=e=>XC.test(e)&&!QC.test(e),Zd=()=>!1,lS=e=>ZC.test(e),cS=e=>JC.test(e),fl=()=>{const e=ie("colors"),n=ie("spacing"),t=ie("blur"),r=ie("brightness"),o=ie("borderColor"),i=ie("borderRadius"),a=ie("borderSpacing"),s=ie("borderWidth"),l=ie("contrast"),c=ie("grayscale"),d=ie("hueRotate"),u=ie("invert"),f=ie("gap"),h=ie("gradientColorStops"),y=ie("gradientColorStopPositions"),m=ie("inset"),b=ie("margin"),C=ie("opacity"),g=ie("padding"),v=ie("saturate"),S=ie("scale"),x=ie("sepia"),I=ie("skew"),E=ie("space"),F=ie("translate"),T=()=>["auto","contain","none"],D=()=>["auto","hidden","clip","visible","scroll"],A=()=>["auto",q,n],_=()=>[q,n],O=()=>["",Qe,lt],B=()=>["auto",an,q],G=()=>["bottom","center","left","left-bottom","left-top","right","right-bottom","right-top","top"],N=()=>["solid","dashed","dotted","double","none"],M=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],P=()=>["start","end","center","between","around","evenly","stretch"],V=()=>["","0",q],ee=()=>["auto","avoid","all","avoid-page","page","left","right","column"],ne=()=>[an,q];return{cacheSize:500,separator:":",theme:{colors:[In],spacing:[Qe,lt],blur:["none","",ct,q],brightness:ne(),borderColor:[e],borderRadius:["none","","full",ct,q],borderSpacing:_(),borderWidth:O(),contrast:ne(),grayscale:V(),hueRotate:ne(),invert:V(),gap:_(),gradientColorStops:[e],gradientColorStopPositions:[eS,lt],inset:A(),margin:A(),opacity:ne(),padding:_(),saturate:ne(),scale:ne(),sepia:V(),skew:ne(),space:_(),translate:_()},classGroups:{aspect:[{aspect:["auto","square","video",q]}],container:["container"],columns:[{columns:[ct]}],"break-after":[{"break-after":ee()}],"break-before":[{"break-before":ee()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:[...G(),q]}],overflow:[{overflow:D()}],"overflow-x":[{"overflow-x":D()}],"overflow-y":[{"overflow-y":D()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:[m]}],"inset-x":[{"inset-x":[m]}],"inset-y":[{"inset-y":[m]}],start:[{start:[m]}],end:[{end:[m]}],top:[{top:[m]}],right:[{right:[m]}],bottom:[{bottom:[m]}],left:[{left:[m]}],visibility:["visible","invisible","collapse"],z:[{z:["auto",wn,q]}],basis:[{basis:A()}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["wrap","wrap-reverse","nowrap"]}],flex:[{flex:["1","auto","initial","none",q]}],grow:[{grow:V()}],shrink:[{shrink:V()}],order:[{order:["first","last","none",wn,q]}],"grid-cols":[{"grid-cols":[In]}],"col-start-end":[{col:["auto",{span:["full",wn,q]},q]}],"col-start":[{"col-start":B()}],"col-end":[{"col-end":B()}],"grid-rows":[{"grid-rows":[In]}],"row-start-end":[{row:["auto",{span:[wn,q]},q]}],"row-start":[{"row-start":B()}],"row-end":[{"row-end":B()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":["auto","min","max","fr",q]}],"auto-rows":[{"auto-rows":["auto","min","max","fr",q]}],gap:[{gap:[f]}],"gap-x":[{"gap-x":[f]}],"gap-y":[{"gap-y":[f]}],"justify-content":[{justify:["normal",...P()]}],"justify-items":[{"justify-items":["start","end","center","stretch"]}],"justify-self":[{"justify-self":["auto","start","end","center","stretch"]}],"align-content":[{content:["normal",...P(),"baseline"]}],"align-items":[{items:["start","end","center","baseline","stretch"]}],"align-self":[{self:["auto","start","end","center","stretch","baseline"]}],"place-content":[{"place-content":[...P(),"baseline"]}],"place-items":[{"place-items":["start","end","center","baseline","stretch"]}],"place-self":[{"place-self":["auto","start","end","center","stretch"]}],p:[{p:[g]}],px:[{px:[g]}],py:[{py:[g]}],ps:[{ps:[g]}],pe:[{pe:[g]}],pt:[{pt:[g]}],pr:[{pr:[g]}],pb:[{pb:[g]}],pl:[{pl:[g]}],m:[{m:[b]}],mx:[{mx:[b]}],my:[{my:[b]}],ms:[{ms:[b]}],me:[{me:[b]}],mt:[{mt:[b]}],mr:[{mr:[b]}],mb:[{mb:[b]}],ml:[{ml:[b]}],"space-x":[{"space-x":[E]}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":[E]}],"space-y-reverse":["space-y-reverse"],w:[{w:["auto","min","max","fit","svw","lvw","dvw",q,n]}],"min-w":[{"min-w":[q,n,"min","max","fit"]}],"max-w":[{"max-w":[q,n,"none","full","min","max","fit","prose",{screen:[ct]},ct]}],h:[{h:[q,n,"auto","min","max","fit","svh","lvh","dvh"]}],"min-h":[{"min-h":[q,n,"min","max","fit","svh","lvh","dvh"]}],"max-h":[{"max-h":[q,n,"min","max","fit","svh","lvh","dvh"]}],size:[{size:[q,n,"auto","min","max","fit"]}],"font-size":[{text:["base",ct,lt]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:["thin","extralight","light","normal","medium","semibold","bold","extrabold","black",Jo]}],"font-family":[{font:[In]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:["tighter","tight","normal","wide","wider","widest",q]}],"line-clamp":[{"line-clamp":["none",an,Jo]}],leading:[{leading:["none","tight","snug","normal","relaxed","loose",Qe,q]}],"list-image":[{"list-image":["none",q]}],"list-style-type":[{list:["none","disc","decimal",q]}],"list-style-position":[{list:["inside","outside"]}],"placeholder-color":[{placeholder:[e]}],"placeholder-opacity":[{"placeholder-opacity":[C]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"text-color":[{text:[e]}],"text-opacity":[{"text-opacity":[C]}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...N(),"wavy"]}],"text-decoration-thickness":[{decoration:["auto","from-font",Qe,lt]}],"underline-offset":[{"underline-offset":["auto",Qe,q]}],"text-decoration-color":[{decoration:[e]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:_()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",q]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",q]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-opacity":[{"bg-opacity":[C]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:[...G(),rS]}],"bg-repeat":[{bg:["no-repeat",{repeat:["","x","y","round","space"]}]}],"bg-size":[{bg:["auto","cover","contain",nS]}],"bg-image":[{bg:["none",{"gradient-to":["t","tr","r","br","b","bl","l","tl"]},iS]}],"bg-color":[{bg:[e]}],"gradient-from-pos":[{from:[y]}],"gradient-via-pos":[{via:[y]}],"gradient-to-pos":[{to:[y]}],"gradient-from":[{from:[h]}],"gradient-via":[{via:[h]}],"gradient-to":[{to:[h]}],rounded:[{rounded:[i]}],"rounded-s":[{"rounded-s":[i]}],"rounded-e":[{"rounded-e":[i]}],"rounded-t":[{"rounded-t":[i]}],"rounded-r":[{"rounded-r":[i]}],"rounded-b":[{"rounded-b":[i]}],"rounded-l":[{"rounded-l":[i]}],"rounded-ss":[{"rounded-ss":[i]}],"rounded-se":[{"rounded-se":[i]}],"rounded-ee":[{"rounded-ee":[i]}],"rounded-es":[{"rounded-es":[i]}],"rounded-tl":[{"rounded-tl":[i]}],"rounded-tr":[{"rounded-tr":[i]}],"rounded-br":[{"rounded-br":[i]}],"rounded-bl":[{"rounded-bl":[i]}],"border-w":[{border:[s]}],"border-w-x":[{"border-x":[s]}],"border-w-y":[{"border-y":[s]}],"border-w-s":[{"border-s":[s]}],"border-w-e":[{"border-e":[s]}],"border-w-t":[{"border-t":[s]}],"border-w-r":[{"border-r":[s]}],"border-w-b":[{"border-b":[s]}],"border-w-l":[{"border-l":[s]}],"border-opacity":[{"border-opacity":[C]}],"border-style":[{border:[...N(),"hidden"]}],"divide-x":[{"divide-x":[s]}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":[s]}],"divide-y-reverse":["divide-y-reverse"],"divide-opacity":[{"divide-opacity":[C]}],"divide-style":[{divide:N()}],"border-color":[{border:[o]}],"border-color-x":[{"border-x":[o]}],"border-color-y":[{"border-y":[o]}],"border-color-s":[{"border-s":[o]}],"border-color-e":[{"border-e":[o]}],"border-color-t":[{"border-t":[o]}],"border-color-r":[{"border-r":[o]}],"border-color-b":[{"border-b":[o]}],"border-color-l":[{"border-l":[o]}],"divide-color":[{divide:[o]}],"outline-style":[{outline:["",...N()]}],"outline-offset":[{"outline-offset":[Qe,q]}],"outline-w":[{outline:[Qe,lt]}],"outline-color":[{outline:[e]}],"ring-w":[{ring:O()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:[e]}],"ring-opacity":[{"ring-opacity":[C]}],"ring-offset-w":[{"ring-offset":[Qe,lt]}],"ring-offset-color":[{"ring-offset":[e]}],shadow:[{shadow:["","inner","none",ct,aS]}],"shadow-color":[{shadow:[In]}],opacity:[{opacity:[C]}],"mix-blend":[{"mix-blend":[...M(),"plus-lighter","plus-darker"]}],"bg-blend":[{"bg-blend":M()}],filter:[{filter:["","none"]}],blur:[{blur:[t]}],brightness:[{brightness:[r]}],contrast:[{contrast:[l]}],"drop-shadow":[{"drop-shadow":["","none",ct,q]}],grayscale:[{grayscale:[c]}],"hue-rotate":[{"hue-rotate":[d]}],invert:[{invert:[u]}],saturate:[{saturate:[v]}],sepia:[{sepia:[x]}],"backdrop-filter":[{"backdrop-filter":["","none"]}],"backdrop-blur":[{"backdrop-blur":[t]}],"backdrop-brightness":[{"backdrop-brightness":[r]}],"backdrop-contrast":[{"backdrop-contrast":[l]}],"backdrop-grayscale":[{"backdrop-grayscale":[c]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[d]}],"backdrop-invert":[{"backdrop-invert":[u]}],"backdrop-opacity":[{"backdrop-opacity":[C]}],"backdrop-saturate":[{"backdrop-saturate":[v]}],"backdrop-sepia":[{"backdrop-sepia":[x]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":[a]}],"border-spacing-x":[{"border-spacing-x":[a]}],"border-spacing-y":[{"border-spacing-y":[a]}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["none","all","","colors","opacity","shadow","transform",q]}],duration:[{duration:ne()}],ease:[{ease:["linear","in","out","in-out",q]}],delay:[{delay:ne()}],animate:[{animate:["none","spin","ping","pulse","bounce",q]}],transform:[{transform:["","gpu","none"]}],scale:[{scale:[S]}],"scale-x":[{"scale-x":[S]}],"scale-y":[{"scale-y":[S]}],rotate:[{rotate:[wn,q]}],"translate-x":[{"translate-x":[F]}],"translate-y":[{"translate-y":[F]}],"skew-x":[{"skew-x":[I]}],"skew-y":[{"skew-y":[I]}],"transform-origin":[{origin:["center","top","top-right","right","bottom-right","bottom","bottom-left","left","top-left",q]}],accent:[{accent:["auto",e]}],appearance:[{appearance:["none","auto"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",q]}],"caret-color":[{caret:[e]}],"pointer-events":[{"pointer-events":["none","auto"]}],resize:[{resize:["none","y","x",""]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":_()}],"scroll-mx":[{"scroll-mx":_()}],"scroll-my":[{"scroll-my":_()}],"scroll-ms":[{"scroll-ms":_()}],"scroll-me":[{"scroll-me":_()}],"scroll-mt":[{"scroll-mt":_()}],"scroll-mr":[{"scroll-mr":_()}],"scroll-mb":[{"scroll-mb":_()}],"scroll-ml":[{"scroll-ml":_()}],"scroll-p":[{"scroll-p":_()}],"scroll-px":[{"scroll-px":_()}],"scroll-py":[{"scroll-py":_()}],"scroll-ps":[{"scroll-ps":_()}],"scroll-pe":[{"scroll-pe":_()}],"scroll-pt":[{"scroll-pt":_()}],"scroll-pr":[{"scroll-pr":_()}],"scroll-pb":[{"scroll-pb":_()}],"scroll-pl":[{"scroll-pl":_()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",q]}],fill:[{fill:[e,"none"]}],"stroke-w":[{stroke:[Qe,lt,Jo]}],stroke:[{stroke:[e,"none"]}],sr:["sr-only","not-sr-only"],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]}}},dS=(e,{cacheSize:n,prefix:t,separator:r,experimentalParseClassName:o,extend:i={},override:a={}})=>{Nn(e,"cacheSize",n),Nn(e,"prefix",t),Nn(e,"separator",r),Nn(e,"experimentalParseClassName",o);for(const s in a)uS(e[s],a[s]);for(const s in i)fS(e[s],i[s]);return e},Nn=(e,n,t)=>{t!==void 0&&(e[n]=t)},uS=(e,n)=>{if(n)for(const t in n)Nn(e,t,n[t])},fS=(e,n)=>{if(n)for(const t in n){const r=n[t];r!==void 0&&(e[t]=(e[t]||[]).concat(r))}},pS=(e,...n)=>typeof e=="function"?ul(fl,e,...n):ul(()=>dS(fl(),e),...n),mS=pS({extend:{classGroups:{rounded:["rounded-control","rounded-card"]}}});function ae(...e){return mS(Vn(e))}const hS=e=>Object.keys(e).length===0;function ht(e){return!!e&&typeof e=="object"}function ei(e,n,t){return typeof n=="string"&&n.trim().length>0&&(t.preserveSyntheticMessage||e.usesFallbackMessage!==!0)}function Jd(e,n,t={}){return typeof e=="string"&&e.trim()?e:ht(e)?e instanceof Error&&ei(e,e.message,t)||ei(e,e.message,t)?e.message:typeof e.details=="string"&&e.details.trim()?e.details:ei(e,e.error,t)?e.error:typeof e.detail=="string"&&e.detail.trim()?e.detail:ht(e.details)&&typeof e.details.error=="string"&&e.details.error.trim()?e.details.error:n:n}function ti(e,n,t){if(e instanceof Error){const a=e;return a.status??(a.status=n),a.payload??(a.payload=e),a.error??(a.error=a.message),a}const r=Jd(e),o=r||t,i=new Error(o);if(ht(e))for(const[a,s]of Object.entries(e))a==="message"||a==="name"||a==="stack"||(i[a]=s);return typeof i.error!="string"&&(i.error=o),i.status=n,i.payload=e,i.usesFallbackMessage=!r,i}function eu(e,n="Unknown error",t={}){return Jd(e,n,t)||n}function gS(e,n,t={}){const r=eu(n,"",t);return r?`${e}: ${r}`:e}function yS(e){return ht(e)&&typeof e.status=="number"?e.status:void 0}function bS(e){if(!(!ht(e)||!ht(e.details)))return Array.isArray(e.details.violations)?e.details.violations:void 0}function vS(e){return ht(e)&&typeof e.sql=="string"?e.sql:void 0}async function tu(e){const n=`HTTP error! status: ${e.status}`,t=await e.text();if(!t)return ti(null,e.status,n);try{return ti(JSON.parse(t),e.status,n)}catch{return ti(t,e.status,n)}}async function _a(e,n,t="GET",r){try{const o=await fetch(e,{method:t,headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`},...r!==void 0?{body:JSON.stringify(r)}:{}});if(!o.ok)throw await tu(o);const i=await o.text();if(!i)return{success:!0,status:o.status};try{return JSON.parse(i)}catch{return i}}catch(o){throw console.error("Error during fetch:",o),o}}async function CS(e,n,t={}){const r=new URLSearchParams(t).toString(),o=r?`${e}?${r}`:e;return _a(o,n,"GET")}async function SS(e,n,t={},r="POST"){try{const o=JSON.stringify(t),i=await MC(o,n),a=await fetch(e,{method:r,headers:{"Content-Type":"application/json",Authorization:`Bearer ${n}`},body:JSON.stringify(i)});if(!a.ok)throw await tu(a);const s=await a.text();if(!s)return{success:!0,status:a.status};let l;try{l=JSON.parse(s)}catch{return s}if(l.payload){const c=await Wd(l.payload,n);return JSON.parse(c.decryptedData)}return l}catch(o){throw console.error("Error during fetch:",o),o}}async function nu(e,n,t={},r="POST"){return _a(e,n,r,t)}const xS=typeof window<"u"&&window.isSecureContext,wS=xS?SS:nu;function IS(e){return e?Fe.jwtDecode(e).params:void 0}function ES(e){return e.charAt(0).toUpperCase()+e.slice(1)}function TS(e){return e.replace(/\w\S*/g,n=>n.charAt(0).toUpperCase()+n.substring(1).toLowerCase())}function FS(e){return e.replace(/[_-]+/g," ").replace(/([a-z])([A-Z])/g,"$1 $2").replace(/\w\S*/g,n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase())}const DS="focus:ring-1 focus:ring-offset-0 focus-visible:ring-1 focus-visible:ring-offset-0",AS="focus-visible:ring-0 focus-visible:ring-ring focus-visible:ring-offset-0 focus:ring-0 focus:ring-ring focus:ring-offset-0";async function RS(e){var i,a;const n=(a=(i=We.getState())==null?void 0:i.authToken)==null?void 0:a.accessToken;if(!n)return;const t=`${e}/v1/invalidate-token`,r=await fetch(t,{method:"POST",headers:{Authorization:`Bearer ${n}`}});if(!r.ok)throw new Error("Failed to invalidate token");const o=await r.json();return console.log("invalidateToken",o),o}async function _S(e,n,t={}){if(!n)return null;let r=`${e}/v1/dashboard`;const o=Object.fromEntries(Object.entries(t).filter(([c,d])=>d!==void 0)),i=new URLSearchParams(o).toString();i&&(r+=`?${i}`);let s=await(await fetch(r,{headers:{Authorization:`Bearer ${n}`}})).json();if("payload"in s){const c=await Wd(atob(s.payload),n);s=JSON.parse(c.decryptedData)}if(!ht(s)||!("initialReportContext"in s))throw new Error("Dashboard response is missing initialReportContext");const l=sm.parseReportRuntimeContext(s.initialReportContext);if(!l.ok)throw new Error(`Dashboard response has invalid initialReportContext: ${l.issues.map(c=>c.message).join("; ")}`);return{...s,initialReportContext:l.value}}async function PS(e,n){if(!n)return null;const t=`${e}/v1/plugins`;return await(await fetch(t,{headers:{Authorization:`Bearer ${n}`}})).json()}const _e=e=>{const n=typeof e=="string"?e.trim().toLowerCase():"";if(n.includes("json"))return"json";if(n.includes("geo")||n.includes("geography")||n.includes("geometry"))return"geo";const t=Qr.normalizeAnalyticsCatalogDataType(e);return t==="datetime"?"date":t==="unknown"?"string":t},ru=ot("inline-flex items-center justify-center gap-1.5 whitespace-nowrap rounded-control text-sm font-medium transition-colors focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary/90 focus-visible:bg-primary/90",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:bg-destructive/90",outline:"border border-input bg-background hover:bg-accent hover:text-accent-foreground focus-visible:border-ring",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary/80 focus-visible:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground focus-visible:bg-accent focus-visible:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline focus-visible:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 px-3",lg:"h-11 px-8",icon:"h-10 w-10",xs:"h-7 px-2.5 text-[12px]"}},defaultVariants:{variant:"default",size:"default"}}),ou=p.forwardRef(({className:e,variant:n,size:t,asChild:r=!1,...o},i)=>{const a=r?Xl:"button";return w.jsx(a,{className:ae(ru({variant:n,size:t,className:e})),ref:i,...o})});ou.displayName="Button";const OS=ot("flex w-full rounded-control border border-input bg-background file:border-0 file:bg-transparent file:font-medium placeholder:text-muted-foreground focus-visible:border-ring focus-visible:outline-none disabled:cursor-not-allowed disabled:opacity-50",{variants:{size:{default:"h-10 px-3 py-2 text-sm file:text-sm",sm:"h-8 px-2.5 py-1.5 text-[13px] file:text-[13px]",xs:"h-7 px-2 py-1 text-[12px] file:text-[12px]"}},defaultVariants:{size:"default"}}),iu=p.forwardRef(({className:e,type:n,size:t,...r},o)=>w.jsx("input",{type:n,className:ae(OS({size:t,className:e})),ref:o,...r}));iu.displayName="Input";var MS=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],H=MS.reduce((e,n)=>{const t=Mt(`Primitive.${n}`),r=p.forwardRef((o,i)=>{const{asChild:a,...s}=o,l=a?t:n;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),w.jsx(l,{...s,ref:i})});return r.displayName=`Primitive.${n}`,{...e,[n]:r}},{});function au(e,n){e&&Qn.flushSync(()=>e.dispatchEvent(n))}var NS="Label",su=p.forwardRef((e,n)=>w.jsx(H.label,{...e,ref:n,onMouseDown:t=>{var o;t.target.closest("button, input, select, textarea")||((o=e.onMouseDown)==null||o.call(e,t),!t.defaultPrevented&&t.detail>1&&t.preventDefault())}}));su.displayName=NS;var lu=su;const kS=ot("text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"),cu=p.forwardRef(({className:e,...n},t)=>w.jsx(lu,{ref:t,className:ae(kS(),e),...n}));cu.displayName=lu.displayName;function L(e,n,{checkForDefaultPrevented:t=!0}={}){return function(o){if(e==null||e(o),t===!1||!o||!o.defaultPrevented)return n==null?void 0:n(o)}}function Ye(e,n=[]){let t=[];function r(i,a){const s=p.createContext(a);s.displayName=i+"Context";const l=t.length;t=[...t,a];const c=u=>{var C;const{scope:f,children:h,...y}=u,m=((C=f==null?void 0:f[e])==null?void 0:C[l])||s,b=p.useMemo(()=>y,Object.values(y));return w.jsx(m.Provider,{value:b,children:h})};c.displayName=i+"Provider";function d(u,f,h={}){var C;const{optional:y=!1}=h,m=((C=f==null?void 0:f[e])==null?void 0:C[l])||s,b=p.useContext(m);if(b)return b;if(a!==void 0)return a;if(!y)throw new Error(`\`${u}\` must be used within \`${i}\``)}return[c,d]}const o=()=>{const i=t.map(a=>p.createContext(a));return function(s){const l=(s==null?void 0:s[e])||i;return p.useMemo(()=>({[`__scope${e}`]:{...s,[e]:l}}),[s,l])}};return o.scopeName=e,[r,LS(o,...n)]}function LS(...e){const n=e[0];if(e.length===1)return n;const t=()=>{const r=e.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(i){const a=r.reduce((s,{useScope:l,scopeName:c})=>{const u=l(i)[`__scope${c}`];return{...s,...u}},{});return p.useMemo(()=>({[`__scope${n.scopeName}`]:a}),[a])}};return t.scopeName=n.scopeName,t}function pe(e){const n=p.useRef(e);return p.useEffect(()=>{n.current=e}),p.useMemo(()=>(...t)=>{var r;return(r=n.current)==null?void 0:r.call(n,...t)},[])}var VS="DismissableLayer",Ni="dismissableLayer.update",BS="dismissableLayer.pointerDownOutside",jS="dismissableLayer.focusOutside",pl,Pa=p.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),ir=p.forwardRef((e,n)=>{const{disableOutsidePointerEvents:t=!1,deferPointerDownOutside:r=!1,onEscapeKeyDown:o,onPointerDownOutside:i,onFocusOutside:a,onInteractOutside:s,onDismiss:l,...c}=e,d=p.useContext(Pa),[u,f]=p.useState(null),h=(u==null?void 0:u.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,y]=p.useState({}),m=Z(n,f),b=Array.from(d.layers),[C]=[...d.layersWithOutsidePointerEventsDisabled].slice(-1),g=C?b.indexOf(C):-1,v=u?b.indexOf(u):-1,S=d.layersWithOutsidePointerEventsDisabled.size>0,x=v>=g,I=p.useRef(!1),E=HS(A=>{i==null||i(A),s==null||s(A),A.defaultPrevented||l==null||l()},{ownerDocument:h,deferPointerDownOutside:r,isDeferredPointerDownOutsideRef:I,dismissableSurfaces:d.dismissableSurfaces,shouldHandlePointerDownOutside:p.useCallback(A=>{if(!(A instanceof Node))return!1;const _=[...d.branches].some(O=>O.contains(A));return x&&!_},[d.branches,x])}),F=GS(A=>{if(r&&I.current)return;const _=A.target;[...d.branches].some(B=>B.contains(_))||(a==null||a(A),s==null||s(A),A.defaultPrevented||l==null||l())},h),T=u?v===b.length-1:!1,D=pe(A=>{A.key==="Escape"&&(o==null||o(A),!A.defaultPrevented&&l&&(A.preventDefault(),l()))});return p.useEffect(()=>{if(T)return h.addEventListener("keydown",D,{capture:!0}),()=>h.removeEventListener("keydown",D,{capture:!0})},[h,T,D]),p.useEffect(()=>{if(u)return t&&(d.layersWithOutsidePointerEventsDisabled.size===0&&(pl=h.body.style.pointerEvents,h.body.style.pointerEvents="none"),d.layersWithOutsidePointerEventsDisabled.add(u)),d.layers.add(u),ml(),()=>{t&&(d.layersWithOutsidePointerEventsDisabled.delete(u),d.layersWithOutsidePointerEventsDisabled.size===0&&(h.body.style.pointerEvents=pl))}},[u,h,t,d]),p.useEffect(()=>()=>{u&&(d.layers.delete(u),d.layersWithOutsidePointerEventsDisabled.delete(u),ml())},[u,d]),p.useEffect(()=>{const A=()=>y({});return document.addEventListener(Ni,A),()=>document.removeEventListener(Ni,A)},[]),w.jsx(H.div,{...c,ref:m,style:{pointerEvents:S?x?"auto":"none":void 0,...e.style},onFocusCapture:L(e.onFocusCapture,F.onFocusCapture),onBlurCapture:L(e.onBlurCapture,F.onBlurCapture),onPointerDownCapture:L(e.onPointerDownCapture,E.onPointerDownCapture)})});ir.displayName=VS;var $S="DismissableLayerBranch",US=p.forwardRef((e,n)=>{const t=p.useContext(Pa),r=p.useRef(null),o=Z(n,r);return p.useEffect(()=>{const i=r.current;if(i)return t.branches.add(i),()=>{t.branches.delete(i)}},[t.branches]),w.jsx(H.div,{...e,ref:o})});US.displayName=$S;function zS(){const e=p.useContext(Pa),[n,t]=p.useState(null);return p.useEffect(()=>{if(n)return e.dismissableSurfaces.add(n),()=>{e.dismissableSurfaces.delete(n)}},[n,e.dismissableSurfaces]),t}var qS=()=>!0;function HS(e,n){const{ownerDocument:t=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:r=!1,isDeferredPointerDownOutsideRef:o,dismissableSurfaces:i,shouldHandlePointerDownOutside:a=qS}=n,s=pe(e),l=p.useRef(!1),c=p.useRef(!1),d=p.useRef(new Map),u=p.useRef(()=>{});return p.useEffect(()=>{function f(){c.current=!1,o.current=!1,d.current.clear()}function h(){return Array.from(d.current.values()).some(Boolean)}function y(v){if(!c.current)return;const S=v.target;S instanceof Node&&[...i].some(I=>I.contains(S))||d.current.set(v.type,!0),v.type==="click"&&window.setTimeout(()=>{c.current&&u.current()},0)}function m(v){c.current&&d.current.set(v.type,!1)}const b=v=>{if(v.target&&!l.current){let S=function(){t.removeEventListener("click",u.current);const I=h();f(),I||du(BS,s,x,{discrete:!0})};if(!a(v.target)){t.removeEventListener("click",u.current),f(),l.current=!1;return}const x={originalEvent:v};c.current=!0,o.current=r&&v.button===0,d.current.clear(),!r||v.button!==0?S():(t.removeEventListener("click",u.current),u.current=S,t.addEventListener("click",u.current,{once:!0}))}else t.removeEventListener("click",u.current),f();l.current=!1},C=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const v of C)t.addEventListener(v,y,!0),t.addEventListener(v,m);const g=window.setTimeout(()=>{t.addEventListener("pointerdown",b)},0);return()=>{window.clearTimeout(g),t.removeEventListener("pointerdown",b),t.removeEventListener("click",u.current);for(const v of C)t.removeEventListener(v,y,!0),t.removeEventListener(v,m)}},[t,s,r,o,i,a]),{onPointerDownCapture:()=>l.current=!0}}function GS(e,n=globalThis==null?void 0:globalThis.document){const t=pe(e),r=p.useRef(!1);return p.useEffect(()=>{const o=i=>{i.target&&!r.current&&du(jS,t,{originalEvent:i},{discrete:!1})};return n.addEventListener("focusin",o),()=>n.removeEventListener("focusin",o)},[n,t]),{onFocusCapture:()=>r.current=!0,onBlurCapture:()=>r.current=!1}}function ml(){const e=new CustomEvent(Ni);document.dispatchEvent(e)}function du(e,n,t,{discrete:r}){const o=t.originalEvent.target,i=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:t});n&&o.addEventListener(e,n,{once:!0}),r?au(o,i):o.dispatchEvent(i)}var Cr=0,je=null;function Oa(){p.useEffect(()=>{je||(je={start:hl(),end:hl()});const{start:e,end:n}=je;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement("afterbegin",e),document.body.lastElementChild!==n&&document.body.insertAdjacentElement("beforeend",n),Cr++,()=>{Cr===1&&(je==null||je.start.remove(),je==null||je.end.remove(),je=null),Cr=Math.max(0,Cr-1)}},[])}function hl(){const e=document.createElement("span");return e.setAttribute("data-radix-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}var ni="focusScope.autoFocusOnMount",ri="focusScope.autoFocusOnUnmount",gl={bubbles:!1,cancelable:!0},WS="FocusScope",ho=p.forwardRef((e,n)=>{const{loop:t=!1,trapped:r=!1,onMountAutoFocus:o,onUnmountAutoFocus:i,...a}=e,[s,l]=p.useState(null),c=pe(o),d=pe(i),u=p.useRef(null),f=Z(n,l),h=p.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;p.useEffect(()=>{if(r){let m=function(v){if(h.paused||!s)return;const S=v.target;s.contains(S)?u.current=S:dt(u.current,{select:!0})},b=function(v){if(h.paused||!s)return;const S=v.relatedTarget;S!==null&&(s.contains(S)||dt(u.current,{select:!0}))},C=function(v){if(document.activeElement===document.body)for(const x of v)x.removedNodes.length>0&&dt(s)};document.addEventListener("focusin",m),document.addEventListener("focusout",b);const g=new MutationObserver(C);return s&&g.observe(s,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",m),document.removeEventListener("focusout",b),g.disconnect()}}},[r,s,h.paused]),p.useEffect(()=>{if(s){bl.add(h);const m=document.activeElement;if(!s.contains(m)){const C=new CustomEvent(ni,gl);s.addEventListener(ni,c),s.dispatchEvent(C),C.defaultPrevented||(YS(JS(uu(s)),{select:!0}),document.activeElement===m&&dt(s))}return()=>{s.removeEventListener(ni,c),setTimeout(()=>{const C=new CustomEvent(ri,gl);s.addEventListener(ri,d),s.dispatchEvent(C),C.defaultPrevented||dt(m??document.body,{select:!0}),s.removeEventListener(ri,d),bl.remove(h)},0)}}},[s,c,d,h]);const y=p.useCallback(m=>{if(!t&&!r||h.paused)return;const b=m.key==="Tab"&&!m.altKey&&!m.ctrlKey&&!m.metaKey,C=document.activeElement;if(b&&C){const g=m.currentTarget,[v,S]=KS(g);v&&S?!m.shiftKey&&C===S?(m.preventDefault(),t&&dt(v,{select:!0})):m.shiftKey&&C===v&&(m.preventDefault(),t&&dt(S,{select:!0})):C===g&&m.preventDefault()}},[t,r,h.paused]);return w.jsx(H.div,{tabIndex:-1,...a,ref:f,onKeyDown:y})});ho.displayName=WS;function YS(e,{select:n=!1}={}){const t=document.activeElement;for(const r of e)if(dt(r,{select:n}),document.activeElement!==t)return}function KS(e){const n=uu(e),t=yl(n,e),r=yl(n.reverse(),e);return[t,r]}function uu(e){const n=[],t=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const o=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||o?NodeFilter.FILTER_SKIP:r.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;t.nextNode();)n.push(t.currentNode);return n}function yl(e,n){const t=typeof n.checkVisibility=="function"&&n.checkVisibility({checkVisibilityCSS:!0});for(const r of e)if(!(t?!r.checkVisibility({checkVisibilityCSS:!0}):XS(r,{upTo:n})))return r}function XS(e,{upTo:n}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(n!==void 0&&e===n)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function QS(e){return e instanceof HTMLInputElement&&"select"in e}function dt(e,{select:n=!1}={}){if(e&&e.focus){const t=document.activeElement;e.focus({preventScroll:!0}),e!==t&&QS(e)&&n&&e.select()}}var bl=ZS();function ZS(){let e=[];return{add(n){const t=e[0];n!==t&&(t==null||t.pause()),e=vl(e,n),e.unshift(n)},remove(n){var t;e=vl(e,n),(t=e[0])==null||t.resume()}}}function vl(e,n){const t=[...e],r=t.indexOf(n);return r!==-1&&t.splice(r,1),t}function JS(e){return e.filter(n=>n.tagName!=="A")}var ce=globalThis!=null&&globalThis.document?p.useLayoutEffect:()=>{},e0=p[" useId ".trim().toString()]||(()=>{}),t0=0;function vt(e){const[n,t]=p.useState(e0());return ce(()=>{t(r=>r??String(t0++))},[e]),n?`radix-${n}`:""}const n0=["top","right","bottom","left"],rt=Math.min,qe=Math.max,Wn=Math.round,Sr=Math.floor,tt=e=>({x:e,y:e}),r0={left:"right",right:"left",bottom:"top",top:"bottom"};function fu(e,n,t){return qe(e,rt(n,t))}function He(e,n){return typeof e=="function"?e(n):e}function gt(e){return e.split("-")[0]}function gn(e){return e.split("-")[1]}function Ma(e){return e==="x"?"y":"x"}function Na(e){return e==="y"?"height":"width"}function ze(e){const n=e[0];return n==="t"||n==="b"?"y":"x"}function ka(e){return Ma(ze(e))}function o0(e,n,t){t===void 0&&(t=!1);const r=gn(e),o=ka(e),i=Na(o);let a=o==="x"?r===(t?"end":"start")?"right":"left":r==="start"?"bottom":"top";return n.reference[i]>n.floating[i]&&(a=qr(a)),[a,qr(a)]}function i0(e){const n=qr(e);return[ki(e),n,ki(n)]}function ki(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const Cl=["left","right"],Sl=["right","left"],a0=["top","bottom"],s0=["bottom","top"];function l0(e,n,t){switch(e){case"top":case"bottom":return t?n?Sl:Cl:n?Cl:Sl;case"left":case"right":return n?a0:s0;default:return[]}}function c0(e,n,t,r){const o=gn(e);let i=l0(gt(e),t==="start",r);return o&&(i=i.map(a=>a+"-"+o),n&&(i=i.concat(i.map(ki)))),i}function qr(e){const n=gt(e);return r0[n]+e.slice(n.length)}function d0(e){var n,t,r,o;return{top:(n=e.top)!=null?n:0,right:(t=e.right)!=null?t:0,bottom:(r=e.bottom)!=null?r:0,left:(o=e.left)!=null?o:0}}function pu(e){return typeof e!="number"?d0(e):{top:e,right:e,bottom:e,left:e}}function Hr(e){const{x:n,y:t,width:r,height:o}=e;return{width:r,height:o,top:t,left:n,right:n+r,bottom:t+o,x:n,y:t}}function xl(e,n,t){let{reference:r,floating:o}=e;const i=ze(n),a=ka(n),s=Na(a),l=gt(n),c=i==="y",d=r.x+r.width/2-o.width/2,u=r.y+r.height/2-o.height/2,f=r[s]/2-o[s]/2;let h;switch(l){case"top":h={x:d,y:r.y-o.height};break;case"bottom":h={x:d,y:r.y+r.height};break;case"right":h={x:r.x+r.width,y:u};break;case"left":h={x:r.x-o.width,y:u};break;default:h={x:r.x,y:r.y}}const y=gn(n);return y&&(h[a]+=f*(y==="end"?1:-1)*(t&&c?-1:1)),h}async function mu(e,n){var t;n===void 0&&(n={});const{x:r,y:o,platform:i,rects:a,elements:s,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:d="viewport",elementContext:u="floating",altBoundary:f=!1,padding:h=0}=He(n,e),y=pu(h),b=s[f?u==="floating"?"reference":"floating":u],C=Hr(await i.getClippingRect({element:(t=await(i.isElement==null?void 0:i.isElement(b)))==null||t?b:b.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(s.floating)),boundary:c,rootBoundary:d,strategy:l})),g=u==="floating"?{x:r,y:o,width:a.floating.width,height:a.floating.height}:a.reference,v=await(i.getOffsetParent==null?void 0:i.getOffsetParent(s.floating)),S=await(i.isElement==null?void 0:i.isElement(v))&&await(i.getScale==null?void 0:i.getScale(v))||{x:1,y:1},x=Hr(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:s,rect:g,offsetParent:v,strategy:l}):g);return{top:(C.top-x.top+y.top)/S.y,bottom:(x.bottom-C.bottom+y.bottom)/S.y,left:(C.left-x.left+y.left)/S.x,right:(x.right-C.right+y.right)/S.x}}const u0=50,f0=async(e,n,t)=>{const{placement:r="bottom",strategy:o="absolute",middleware:i=[],platform:a}=t,s=a.detectOverflow?a:{...a,detectOverflow:mu},l=await(a.isRTL==null?void 0:a.isRTL(n));let c=await a.getElementRects({reference:e,floating:n,strategy:o}),{x:d,y:u}=xl(c,r,l),f=r,h=0;const y={};for(let m=0;m<i.length;m++){const b=i[m];if(!b)continue;const{name:C,fn:g}=b,{x:v,y:S,data:x,reset:I}=await g({x:d,y:u,initialPlacement:r,placement:f,strategy:o,middlewareData:y,rects:c,platform:s,elements:{reference:e,floating:n}});d=v??d,u=S??u,y[C]={...y[C],...x},I&&h<u0&&(h++,typeof I=="object"&&(I.placement&&(f=I.placement),I.rects&&(c=I.rects===!0?await a.getElementRects({reference:e,floating:n,strategy:o}):I.rects),{x:d,y:u}=xl(c,f,l)),m=-1)}return{x:d,y:u,placement:f,strategy:o,middlewareData:y}},p0=e=>({name:"arrow",options:e,async fn(n){const{x:t,y:r,placement:o,rects:i,platform:a,elements:s,middlewareData:l}=n,{element:c,padding:d=0}=He(e,n)||{};if(c==null)return{};const u=pu(d),f={x:t,y:r},h=ka(o),y=Na(h),m=await a.getDimensions(c),b=h==="y",C=b?"top":"left",g=b?"bottom":"right",v=b?"clientHeight":"clientWidth",S=i.reference[y]+i.reference[h]-f[h]-i.floating[y],x=f[h]-i.reference[h],I=await(a.getOffsetParent==null?void 0:a.getOffsetParent(c));let E=I?I[v]:0;(!E||!await(a.isElement==null?void 0:a.isElement(I)))&&(E=s.floating[v]||i.floating[y]);const F=S/2-x/2,T=E/2-m[y]/2-1,D=rt(u[C],T),A=rt(u[g],T),_=E-m[y]-A,O=E/2-m[y]/2+F,B=fu(D,O,_),G=!l.arrow&&gn(o)!=null&&O!==B&&i.reference[y]/2-(O<D?D:A)-m[y]/2<0,N=G?O<D?O-D:O-_:0;return{[h]:f[h]+N,data:{[h]:B,centerOffset:O-B-N,...G&&{alignmentOffset:N}},reset:G}}}),m0=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(n){var t,r;const{placement:o,middlewareData:i,rects:a,initialPlacement:s,platform:l,elements:c}=n,{mainAxis:d=!0,crossAxis:u=!0,fallbackPlacements:f,fallbackStrategy:h="bestFit",fallbackAxisSideDirection:y="none",flipAlignment:m=!0,...b}=He(e,n);if((t=i.arrow)!=null&&t.alignmentOffset)return{};const C=gt(o),g=ze(s),v=gt(s)===s,S=await(l.isRTL==null?void 0:l.isRTL(c.floating)),x=f||(v||!m?[qr(s)]:i0(s)),I=y!=="none";!f&&I&&x.push(...c0(s,m,y,S));const E=[s,...x],F=await l.detectOverflow(n,b),T=[];let D=((r=i.flip)==null?void 0:r.overflows)||[];if(d&&T.push(F[C]),u){const B=o0(o,a,S);T.push(F[B[0]],F[B[1]])}if(D=[...D,{placement:o,overflows:T}],!T.every(B=>B<=0)){var A,_;const B=(((A=i.flip)==null?void 0:A.index)||0)+1,G=E[B];if(G&&(!(u==="alignment"?g!==ze(G):!1)||D.every(P=>ze(P.placement)===g?P.overflows[0]>0:!0)))return{data:{index:B,overflows:D},reset:{placement:G}};let N=(_=D.filter(M=>M.overflows[0]<=0).sort((M,P)=>M.overflows[1]-P.overflows[1])[0])==null?void 0:_.placement;if(!N)switch(h){case"bestFit":{var O;const M=(O=D.filter(P=>{if(I){const V=ze(P.placement);return V===g||V==="y"}return!0}).map(P=>[P.placement,P.overflows.filter(V=>V>0).reduce((V,ee)=>V+ee,0)]).sort((P,V)=>P[1]-V[1])[0])==null?void 0:O[0];M&&(N=M);break}case"initialPlacement":N=s;break}if(o!==N)return{reset:{placement:N}}}return{}}}};function wl(e,n){return{top:e.top-n.height,right:e.right-n.width,bottom:e.bottom-n.height,left:e.left-n.width}}function Il(e){return n0.some(n=>e[n]>=0)}const h0=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(n){const{rects:t,platform:r}=n,{strategy:o="referenceHidden",...i}=He(e,n);switch(o){case"referenceHidden":{const a=await r.detectOverflow(n,{...i,elementContext:"reference"}),s=wl(a,t.reference);return{data:{referenceHiddenOffsets:s,referenceHidden:Il(s)}}}case"escaped":{const a=await r.detectOverflow(n,{...i,altBoundary:!0}),s=wl(a,t.floating);return{data:{escapedOffsets:s,escaped:Il(s)}}}default:return{}}}}},hu=new Set(["left","top"]);async function g0(e,n){const{placement:t,platform:r,elements:o}=e,i=await(r.isRTL==null?void 0:r.isRTL(o.floating)),a=gt(t),s=gn(t),l=ze(t)==="y",c=hu.has(a)?-1:1,d=i&&l?-1:1,u=He(n,e);let{mainAxis:f,crossAxis:h,alignmentAxis:y}=typeof u=="number"?{mainAxis:u,crossAxis:0,alignmentAxis:null}:{mainAxis:u.mainAxis||0,crossAxis:u.crossAxis||0,alignmentAxis:u.alignmentAxis};return s&&typeof y=="number"&&(h=s==="end"?y*-1:y),l?{x:h*d,y:f*c}:{x:f*c,y:h*d}}const y0=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(n){var t,r;const{x:o,y:i,placement:a,middlewareData:s}=n,l=await g0(n,e);return a===((t=s.offset)==null?void 0:t.placement)&&(r=s.arrow)!=null&&r.alignmentOffset?{}:{x:o+l.x,y:i+l.y,data:{...l,placement:a}}}}},b0=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(n){const{x:t,y:r,placement:o,platform:i}=n,{mainAxis:a=!0,crossAxis:s=!1,limiter:l={fn:g=>{let{x:v,y:S}=g;return{x:v,y:S}}},...c}=He(e,n),d={x:t,y:r},u=await i.detectOverflow(n,c),f=ze(o),h=Ma(f);let y=d[h],m=d[f];const b=(g,v)=>fu(v+u[g==="y"?"top":"left"],v,v-u[g==="y"?"bottom":"right"]);a&&(y=b(h,y)),s&&(m=b(f,m));const C=l.fn({...n,[h]:y,[f]:m});return{...C,data:{x:C.x-t,y:C.y-r,enabled:{[h]:a,[f]:s}}}}}},v0=function(e){return e===void 0&&(e={}),{options:e,fn(n){var t,r;const{x:o,y:i,placement:a,rects:s,middlewareData:l}=n,{offset:c=0,mainAxis:d=!0,crossAxis:u=!0}=He(e,n),f={x:o,y:i},h=ze(a),y=Ma(h);let m=f[y],b=f[h];const C=He(c,n),g=typeof C=="number"?{mainAxis:C,crossAxis:0}:{mainAxis:(t=C.mainAxis)!=null?t:0,crossAxis:(r=C.crossAxis)!=null?r:0};if(d){const x=y==="y"?"height":"width",I=s.reference[y]-s.floating[x]+g.mainAxis,E=s.reference[y]+s.reference[x]-g.mainAxis;m<I?m=I:m>E&&(m=E)}if(u){var v,S;const x=y==="y"?"width":"height",I=hu.has(gt(a)),E=s.reference[h]-s.floating[x]+(I&&((v=l.offset)==null?void 0:v[h])||0)+(I?0:g.crossAxis),F=s.reference[h]+s.reference[x]+(I?0:((S=l.offset)==null?void 0:S[h])||0)-(I?g.crossAxis:0);b<E?b=E:b>F&&(b=F)}return{[y]:m,[h]:b}}}},C0=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(n){const{placement:t,rects:r,platform:o,elements:i}=n,{apply:a=()=>{},...s}=He(e,n),l=await o.detectOverflow(n,s),c=gt(t),d=gn(t),u=ze(t)==="y",{width:f,height:h}=r.floating;let y,m;c==="top"||c==="bottom"?(y=c,m=d===(await(o.isRTL==null?void 0:o.isRTL(i.floating))?"start":"end")?"left":"right"):(m=c,y=d==="end"?"top":"bottom");const b=h-l.top-l.bottom,C=f-l.left-l.right,g=rt(h-l[y],b),v=rt(f-l[m],C),S=n.middlewareData.shift,x=!S;let I=g,E=v;S!=null&&S.enabled.x&&(E=C),S!=null&&S.enabled.y&&(I=b),x&&!d&&(u?E=f-2*qe(l.left,l.right):I=h-2*qe(l.top,l.bottom)),await a({...n,availableWidth:E,availableHeight:I});const F=await o.getDimensions(i.floating);return f!==F.width||h!==F.height?{reset:{rects:!0}}:{}}}};function go(){return typeof window<"u"}function yn(e){return gu(e)?(e.nodeName||"").toLowerCase():"#document"}function xe(e){var n;return(e==null||(n=e.ownerDocument)==null?void 0:n.defaultView)||window}function at(e){var n;return(n=(gu(e)?e.ownerDocument:e.document)||window.document)==null?void 0:n.documentElement}function gu(e){return go()?e instanceof Node||e instanceof xe(e).Node:!1}function Le(e){return go()?e instanceof Element||e instanceof xe(e).Element:!1}function Ct(e){return go()?e instanceof HTMLElement||e instanceof xe(e).HTMLElement:!1}function El(e){return!go()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof xe(e).ShadowRoot}function yo(e){const{overflow:n,overflowX:t,overflowY:r,display:o}=Ge(e);return/auto|scroll|overlay|hidden|clip/.test(n+r+t)&&o!=="inline"&&o!=="contents"}function S0(e){return/^(table|td|th)$/.test(yn(e))}function bo(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const x0=/transform|translate|scale|rotate|perspective|filter/,w0=/paint|layout|strict|content/,Tt=e=>!!e&&e!=="none";let oi;function La(e){const n=Le(e)?Ge(e):e;return Tt(n.transform)||Tt(n.translate)||Tt(n.scale)||Tt(n.rotate)||Tt(n.perspective)||!Va()&&(Tt(n.backdropFilter)||Tt(n.filter))||x0.test(n.willChange||"")||w0.test(n.contain||"")}function I0(e){let n=Bt(e);for(;Ct(n)&&!Yn(n);){if(La(n))return n;if(bo(n))return null;n=Bt(n)}return null}function Va(){return oi==null&&(oi=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),oi}function Yn(e){return/^(html|body|#document)$/.test(yn(e))}function Ge(e){return xe(e).getComputedStyle(e)}function vo(e){return Le(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Bt(e){if(yn(e)==="html")return e;const n=e.assignedSlot||e.parentNode||El(e)&&e.host||at(e);return El(n)?n.host:n}function yu(e){const n=Bt(e);return Yn(n)?(e.ownerDocument||e).body:Ct(n)&&yo(n)?n:yu(n)}function Kn(e,n,t){var r;n===void 0&&(n=[]),t===void 0&&(t=!0);const o=yu(e),i=o===((r=e.ownerDocument)==null?void 0:r.body),a=xe(o);if(i){const s=Li(a);return n.concat(a,a.visualViewport||[],yo(o)?o:[],s&&t?Kn(s):[])}else return n.concat(o,Kn(o,[],t))}function Li(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function bu(e){const n=Ge(e);let t=parseFloat(n.width)||0,r=parseFloat(n.height)||0;const o=Ct(e),i=o?e.offsetWidth:t,a=o?e.offsetHeight:r,s=Wn(t)!==i||Wn(r)!==a;return s&&(t=i,r=a),{width:t,height:r,$:s}}function Ba(e){return Le(e)?e:e.contextElement}function sn(e){const n=Ba(e);if(!Ct(n))return tt(1);const t=n.getBoundingClientRect(),{width:r,height:o,$:i}=bu(n);let a=(i?Wn(t.width):t.width)/r,s=(i?Wn(t.height):t.height)/o;return(!a||!Number.isFinite(a))&&(a=1),(!s||!Number.isFinite(s))&&(s=1),{x:a,y:s}}const E0=tt(0);function vu(e){const n=xe(e);return!Va()||!n.visualViewport?E0:{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function T0(e,n,t){return n===void 0&&(n=!1),!!t&&n&&t===xe(e)}function jt(e,n,t,r){n===void 0&&(n=!1),t===void 0&&(t=!1);const o=e.getBoundingClientRect(),i=Ba(e);let a=tt(1);n&&(r?Le(r)&&(a=sn(r)):a=sn(e));const s=T0(i,t,r)?vu(i):tt(0);let l=(o.left+s.x)/a.x,c=(o.top+s.y)/a.y,d=o.width/a.x,u=o.height/a.y;if(i&&r){const f=xe(i),h=Le(r)?xe(r):r;let y=f,m=Li(y);for(;m&&h!==y;){const b=sn(m),C=m.getBoundingClientRect(),g=Ge(m),v=C.left+(m.clientLeft+parseFloat(g.paddingLeft))*b.x,S=C.top+(m.clientTop+parseFloat(g.paddingTop))*b.y;l*=b.x,c*=b.y,d*=b.x,u*=b.y,l+=v,c+=S,y=xe(m),m=Li(y)}}return Hr({width:d,height:u,x:l,y:c})}function Co(e,n){const t=vo(e).scrollLeft;return n?n.left+t:jt(at(e)).left+t}function Cu(e,n){const t=e.getBoundingClientRect(),r=t.left+n.scrollLeft-Co(e,t),o=t.top+n.scrollTop;return{x:r,y:o}}function F0(e){let{elements:n,rect:t,offsetParent:r,strategy:o}=e;const i=o==="fixed",a=at(r),s=n?bo(n.floating):!1;if(r===a||s&&i)return t;let l={scrollLeft:0,scrollTop:0},c=tt(1);const d=tt(0),u=Ct(r);if((u||!i)&&((yn(r)!=="body"||yo(a))&&(l=vo(r)),u)){const h=jt(r);c=sn(r),d.x=h.x+r.clientLeft,d.y=h.y+r.clientTop}const f=a&&!u&&!i?Cu(a,l):tt(0);return{width:t.width*c.x,height:t.height*c.y,x:t.x*c.x-l.scrollLeft*c.x+d.x+f.x,y:t.y*c.y-l.scrollTop*c.y+d.y+f.y}}function D0(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function A0(e){const n=vo(e),t=e.ownerDocument.body,r=qe(e.scrollWidth,e.clientWidth,t.scrollWidth,t.clientWidth),o=qe(e.scrollHeight,e.clientHeight,t.scrollHeight,t.clientHeight);let i=-n.scrollLeft+Co(e);const a=-n.scrollTop;return Ge(t).direction==="rtl"&&(i+=qe(e.clientWidth,t.clientWidth)-r),{width:r,height:o,x:i,y:a}}const R0=25;function _0(e,n,t){t===void 0&&(t="viewport");const r=t==="layoutViewport",o=xe(e),i=at(e),a=o.visualViewport;let s=i.clientWidth,l=i.clientHeight,c=0,d=0;if(a){const f=!Va()||n==="fixed";r?f||(c=-a.offsetLeft,d=-a.offsetTop):(s=a.width,l=a.height,f&&(c=a.offsetLeft,d=a.offsetTop))}if(Co(i)<=0){const f=i.ownerDocument,h=f.body,y=getComputedStyle(h),m=f.compatMode==="CSS1Compat"&&parseFloat(y.marginLeft)+parseFloat(y.marginRight)||0,b=Math.abs(i.clientWidth-h.clientWidth-m),C=getComputedStyle(i).scrollbarGutter==="stable both-edges"?b/2:b;C<=R0&&(s-=C)}return{width:s,height:l,x:c,y:d}}function P0(e,n){const t=jt(e,!0,n==="fixed"),r=t.top+e.clientTop,o=t.left+e.clientLeft,i=sn(e),a=e.clientWidth*i.x,s=e.clientHeight*i.y,l=o*i.x,c=r*i.y;return{width:a,height:s,x:l,y:c}}function Tl(e,n,t){let r;if(n==="viewport"||n==="layoutViewport")r=_0(e,t,n);else if(n==="document")r=A0(at(e));else if(Le(n))r=P0(n,t);else{const o=vu(e);r={x:n.x-o.x,y:n.y-o.y,width:n.width,height:n.height}}return Hr(r)}function O0(e,n){const t=n.get(e);if(t)return t;let r=Kn(e,[],!1).filter(s=>Le(s)&&yn(s)!=="body"),o=null;const i=Ge(e).position==="fixed";let a=i?Bt(e):e;for(;Le(a)&&!Yn(a);){const s=Ge(a),l=La(a),c=o?o.position:i?"fixed":"";!l&&(c==="fixed"||c==="absolute"&&s.position==="static")?r=r.filter(u=>u!==a):o=s,a=Bt(a)}return n.set(e,r),r}function M0(e){let{element:n,boundary:t,rootBoundary:r,strategy:o}=e;const a=[...t==="clippingAncestors"?bo(n)?[]:O0(n,this._c):[].concat(t),r],s=Tl(n,a[0],o);let l=s.top,c=s.right,d=s.bottom,u=s.left;for(let f=1;f<a.length;f++){const h=Tl(n,a[f],o);l=qe(h.top,l),c=rt(h.right,c),d=rt(h.bottom,d),u=qe(h.left,u)}return{width:c-u,height:d-l,x:u,y:l}}function N0(e){const{width:n,height:t}=bu(e);return{width:n,height:t}}function k0(e,n,t){const r=Ct(n),o=at(n),i=t==="fixed",a=jt(e,!0,i,n);let s={scrollLeft:0,scrollTop:0};const l=tt(0);if((r||!i)&&((yn(n)!=="body"||yo(o))&&(s=vo(n)),r)){const f=jt(n,!0,i,n);l.x=f.x+n.clientLeft,l.y=f.y+n.clientTop}!r&&o&&(l.x=Co(o));const c=o&&!r&&!i?Cu(o,s):tt(0),d=a.left+s.scrollLeft-l.x-c.x,u=a.top+s.scrollTop-l.y-c.y;return{x:d,y:u,width:a.width,height:a.height}}function ii(e){return Ge(e).position==="static"}function Fl(e,n){if(!Ct(e)||Ge(e).position==="fixed")return null;if(n)return n(e);let t=e.offsetParent;return at(e)===t&&(t=t.ownerDocument.body),t}function Su(e,n){const t=xe(e);if(bo(e))return t;if(!Ct(e)){let o=Bt(e);for(;o&&!Yn(o);){if(Le(o)&&!ii(o))return o;o=Bt(o)}return t}let r=Fl(e,n);for(;r&&S0(r)&&ii(r);)r=Fl(r,n);return r&&Yn(r)&&ii(r)&&!La(r)?t:r||I0(e)||t}const L0=async function(e){const n=this.getOffsetParent||Su,t=this.getDimensions,r=await t(e.floating);return{reference:k0(e.reference,await n(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function V0(e){return Ge(e).direction==="rtl"}const B0={convertOffsetParentRelativeRectToViewportRelativeRect:F0,getDocumentElement:at,getClippingRect:M0,getOffsetParent:Su,getElementRects:L0,getClientRects:D0,getDimensions:N0,getScale:sn,isElement:Le,isRTL:V0};function xu(e,n){return e.x===n.x&&e.y===n.y&&e.width===n.width&&e.height===n.height}function j0(e,n,t){let r=null,o;const i=at(e);function a(){var d;clearTimeout(o),(d=r)==null||d.disconnect(),r=null}function s(d,u){d===void 0&&(d=!1),u===void 0&&(u=1),a();const f=e.getBoundingClientRect(),{left:h,top:y,width:m,height:b}=f;if(d||n(),!m||!b)return;const C=Sr(y),g=Sr(i.clientWidth-(h+m)),v=Sr(i.clientHeight-(y+b)),S=Sr(h),I={rootMargin:-C+"px "+-g+"px "+-v+"px "+-S+"px",threshold:qe(0,rt(1,u))||1};let E=!0;function F(T){const D=T[0].intersectionRatio;if(!xu(f,e.getBoundingClientRect()))return s();if(D!==u){if(!E)return s();D?s(!1,D):o=setTimeout(()=>{s(!1,1e-7)},1e3)}E=!1}try{r=new IntersectionObserver(F,{...I,root:i.ownerDocument})}catch{r=new IntersectionObserver(F,I)}r.observe(e)}const l=xe(e),c=()=>s(t);return l.addEventListener("resize",c),s(!0),()=>{l.removeEventListener("resize",c),a()}}function wu(e,n,t,r){r===void 0&&(r={});const{ancestorScroll:o=!0,ancestorResize:i=!0,elementResize:a=typeof ResizeObserver=="function",layoutShift:s=typeof IntersectionObserver=="function",animationFrame:l=!1}=r,c=Ba(e),d=o||i?[...c?Kn(c):[],...n?Kn(n):[]]:[];d.forEach(C=>{o&&C.addEventListener("scroll",t),i&&C.addEventListener("resize",t)});const u=c&&s?j0(c,t,i):null;let f=-1,h=null;a&&(h=new ResizeObserver(C=>{let[g]=C;g&&g.target===c&&h&&n&&(h.unobserve(n),cancelAnimationFrame(f),f=requestAnimationFrame(()=>{var v;(v=h)==null||v.observe(n)})),t()}),c&&!l&&h.observe(c),n&&h.observe(n));let y,m=l?jt(e):null;l&&b();function b(){const C=jt(e);m&&!xu(m,C)&&t(),m=C,y=requestAnimationFrame(b)}return t(),()=>{var C;d.forEach(g=>{o&&g.removeEventListener("scroll",t),i&&g.removeEventListener("resize",t)}),u==null||u(),(C=h)==null||C.disconnect(),h=null,l&&cancelAnimationFrame(y)}}const $0=mu,U0=y0,z0=b0,q0=m0,H0=C0,G0=h0,Dl=p0,W0=v0,Y0=(e,n,t)=>{const r=new Map,o=t??{},i={...B0,...o.platform,_c:r};return f0(e,n,{...o,platform:i})};var K0=typeof document<"u",X0=function(){},_r=K0?Ie.useLayoutEffect:X0;function Gr(e,n){if(e===n)return!0;if(typeof e!=typeof n)return!1;if(typeof e=="function"&&e.toString()===n.toString())return!0;let t,r,o;if(e&&n&&typeof e=="object"){if(Array.isArray(e)){if(t=e.length,t!==n.length)return!1;for(r=t;r--!==0;)if(!Gr(e[r],n[r]))return!1;return!0}if(o=Object.keys(e),t=o.length,t!==Object.keys(n).length)return!1;for(r=t;r--!==0;)if(!{}.hasOwnProperty.call(n,o[r]))return!1;for(r=t;r--!==0;){const i=o[r];if(!(i==="_owner"&&e.$$typeof)&&!Gr(e[i],n[i]))return!1}return!0}return e!==e&&n!==n}function Iu(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function Al(e,n){const t=Iu(e);return Math.round(n*t)/t}function ai(e){const n=p.useRef(e);return _r(()=>{n.current=e}),n}function Eu(e){e===void 0&&(e={});const{placement:n="bottom",strategy:t="absolute",middleware:r=[],platform:o,elements:{reference:i,floating:a}={},transform:s=!0,whileElementsMounted:l,open:c}=e,[d,u]=p.useState({x:0,y:0,strategy:t,placement:n,middlewareData:{},isPositioned:!1}),[f,h]=p.useState(r);Gr(f,r)||h(r);const[y,m]=p.useState(null),[b,C]=p.useState(null),g=p.useCallback(P=>{P!==I.current&&(I.current=P,m(P))},[]),v=p.useCallback(P=>{P!==E.current&&(E.current=P,C(P))},[]),S=i||y,x=a||b,I=p.useRef(null),E=p.useRef(null),F=p.useRef(d),T=l!=null,D=ai(l),A=ai(o),_=ai(c),O=p.useCallback(()=>{if(!I.current||!E.current)return;const P={placement:n,strategy:t,middleware:f};A.current&&(P.platform=A.current),Y0(I.current,E.current,P).then(V=>{const ee={...V,isPositioned:_.current!==!1};B.current&&!Gr(F.current,ee)&&(F.current=ee,Qn.flushSync(()=>{u(ee)}))})},[f,n,t,A,_]);_r(()=>{c===!1&&F.current.isPositioned&&(F.current.isPositioned=!1,u(P=>({...P,isPositioned:!1})))},[c]);const B=p.useRef(!1);_r(()=>(B.current=!0,()=>{B.current=!1}),[]),_r(()=>{if(S&&(I.current=S),x&&(E.current=x),S&&x){if(D.current)return D.current(S,x,O);O()}},[S,x,O,D,T]);const G=p.useMemo(()=>({reference:I,floating:E,setReference:g,setFloating:v}),[g,v]),N=p.useMemo(()=>({reference:S,floating:x}),[S,x]),M=p.useMemo(()=>{const P={position:t,left:0,top:0};if(!N.floating)return P;const V=Al(N.floating,d.x),ee=Al(N.floating,d.y);return s?{...P,transform:"translate("+V+"px, "+ee+"px)",...Iu(N.floating)>=1.5&&{willChange:"transform"}}:{position:t,left:V,top:ee}},[t,s,N.floating,d.x,d.y]);return p.useMemo(()=>({...d,update:O,refs:G,elements:N,floatingStyles:M}),[d,O,G,N,M])}const Q0=e=>{function n(t){return{}.hasOwnProperty.call(t,"current")}return{name:"arrow",options:e,fn(t){const{element:r,padding:o}=typeof e=="function"?e(t):e;return r&&n(r)?r.current!=null?Dl({element:r.current,padding:o}).fn(t):{}:r?Dl({element:r,padding:o}).fn(t):{}}}},Tu=(e,n)=>{const t=U0(e);return{name:t.name,fn:t.fn,options:[e,n]}},Fu=(e,n)=>{const t=z0(e);return{name:t.name,fn:t.fn,options:[e,n]}},Z0=(e,n)=>({fn:W0(e).fn,options:[e,n]}),Du=(e,n)=>{const t=q0(e);return{name:t.name,fn:t.fn,options:[e,n]}},Au=(e,n)=>{const t=H0(e);return{name:t.name,fn:t.fn,options:[e,n]}},J0=(e,n)=>{const t=G0(e);return{name:t.name,fn:t.fn,options:[e,n]}},ex=(e,n)=>{const t=Q0(e);return{name:t.name,fn:t.fn,options:[e,n]}};var tx="Arrow",Ru=p.forwardRef((e,n)=>{const{children:t,width:r=10,height:o=5,...i}=e;return w.jsx(H.svg,{...i,ref:n,width:r,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:e.asChild?t:w.jsx("polygon",{points:"0,0 30,0 15,10"})})});Ru.displayName=tx;var nx=Ru;function ja(e){const[n,t]=p.useState(void 0);return ce(()=>{if(e){t({width:e.offsetWidth,height:e.offsetHeight});const r=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const i=o[0];let a,s;if("borderBoxSize"in i){const l=i.borderBoxSize,c=Array.isArray(l)?l[0]:l;a=c.inlineSize,s=c.blockSize}else a=e.offsetWidth,s=e.offsetHeight;t({width:a,height:s})});return r.observe(e,{box:"border-box"}),()=>r.unobserve(e)}else t(void 0)},[e]),n}var $a="Popper",[_u,Ht]=Ye($a),[rx,Pu]=_u($a),Ou=e=>{const{__scopePopper:n,children:t}=e,[r,o]=p.useState(null),[i,a]=p.useState(void 0);return w.jsx(rx,{scope:n,anchor:r,onAnchorChange:o,placementState:i,setPlacementState:a,children:t})};Ou.displayName=$a;var Mu="PopperAnchor",Nu=p.forwardRef((e,n)=>{const{__scopePopper:t,virtualRef:r,...o}=e,i=Pu(Mu,t),a=p.useRef(null),s=i.onAnchorChange,l=p.useCallback(y=>{a.current=y,y&&s(y)},[s]),c=Z(n,l),d=p.useRef(null);p.useEffect(()=>{if(!r)return;const y=d.current;d.current=r.current,y!==d.current&&s(d.current)});const u=i.placementState&&za(i.placementState),f=u==null?void 0:u[0],h=u==null?void 0:u[1];return r?null:w.jsx(H.div,{"data-radix-popper-side":f,"data-radix-popper-align":h,...o,ref:c})});Nu.displayName=Mu;var Ua="PopperContent",[ox,ix]=_u(Ua),ku=p.forwardRef((e,n)=>{var Y,se,X,W,Q,R;const{__scopePopper:t,side:r="bottom",sideOffset:o=0,align:i="center",alignOffset:a=0,arrowPadding:s=0,avoidCollisions:l=!0,collisionBoundary:c=[],collisionPadding:d=0,sticky:u="partial",hideWhenDetached:f=!1,updatePositionStrategy:h="optimized",onPlaced:y,...m}=e,b=Pu(Ua,t),[C,g]=p.useState(null),v=Z(n,g),[S,x]=p.useState(null),I=ja(S),E=(I==null?void 0:I.width)??0,F=(I==null?void 0:I.height)??0,T=r+(i!=="center"?"-"+i:""),D=typeof d=="number"?d:{top:0,right:0,bottom:0,left:0,...d},A=Array.isArray(c)?c:[c],_=A.length>0,O={padding:D,boundary:A.filter(sx),altBoundary:_},{refs:B,floatingStyles:G,placement:N,isPositioned:M,middlewareData:P}=Eu({strategy:"fixed",placement:T,whileElementsMounted:(...$)=>wu(...$,{animationFrame:h==="always"}),elements:{reference:b.anchor},middleware:[Tu({mainAxis:o+F,alignmentAxis:a}),l&&Fu({mainAxis:!0,crossAxis:!1,limiter:u==="partial"?Z0():void 0,...O}),l&&Du({...O}),Au({...O,apply:({elements:$,rects:j,availableWidth:U,availableHeight:re})=>{const{width:he,height:Me}=j.reference,Ve=$.floating.style;Ve.setProperty("--radix-popper-available-width",`${U}px`),Ve.setProperty("--radix-popper-available-height",`${re}px`),Ve.setProperty("--radix-popper-anchor-width",`${he}px`),Ve.setProperty("--radix-popper-anchor-height",`${Me}px`)}}),S&&ex({element:S,padding:s}),lx({arrowWidth:E,arrowHeight:F}),f&&J0({strategy:"referenceHidden",...O,boundary:_?O.boundary:void 0})]}),V=b.setPlacementState;ce(()=>(V(N),()=>{V(void 0)}),[N,V]);const[ee,ne]=za(N),K=pe(y);ce(()=>{M&&(K==null||K())},[M,K]);const de=(Y=P.arrow)==null?void 0:Y.x,te=(se=P.arrow)==null?void 0:se.y,me=((X=P.arrow)==null?void 0:X.centerOffset)!==0,[ve,k]=p.useState();return ce(()=>{C&&k(window.getComputedStyle(C).zIndex)},[C]),w.jsx("div",{ref:B.setFloating,"data-radix-popper-content-wrapper":"",style:{...G,transform:M?G.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:ve,"--radix-popper-transform-origin":[(W=P.transformOrigin)==null?void 0:W.x,(Q=P.transformOrigin)==null?void 0:Q.y].join(" "),...((R=P.hide)==null?void 0:R.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:e.dir,children:w.jsx(ox,{scope:t,placedSide:ee,placedAlign:ne,onArrowChange:x,arrowX:de,arrowY:te,shouldHideArrow:me,children:w.jsx(H.div,{"data-side":ee,"data-align":ne,...m,ref:v,style:{...m.style,animation:M?void 0:"none"}})})})});ku.displayName=Ua;var Lu="PopperArrow",ax={top:"bottom",right:"left",bottom:"top",left:"right"},Vu=p.forwardRef(function(n,t){const{__scopePopper:r,...o}=n,i=ix(Lu,r),a=ax[i.placedSide];return w.jsx("span",{ref:i.onArrowChange,style:{position:"absolute",left:i.arrowX,top:i.arrowY,[a]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[i.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[i.placedSide],visibility:i.shouldHideArrow?"hidden":void 0},children:w.jsx(nx,{...o,ref:t,style:{...o.style,display:"block"}})})});Vu.displayName=Lu;function sx(e){return e!==null}var lx=e=>({name:"transformOrigin",options:e,fn(n){var b,C,g;const{placement:t,rects:r,middlewareData:o}=n,a=((b=o.arrow)==null?void 0:b.centerOffset)!==0,s=a?0:e.arrowWidth,l=a?0:e.arrowHeight,[c,d]=za(t),u={start:"0%",center:"50%",end:"100%"}[d],f=(((C=o.arrow)==null?void 0:C.x)??0)+s/2,h=(((g=o.arrow)==null?void 0:g.y)??0)+l/2;let y="",m="";return c==="bottom"?(y=a?u:`${f}px`,m=`${-l}px`):c==="top"?(y=a?u:`${f}px`,m=`${r.floating.height+l}px`):c==="right"?(y=`${-l}px`,m=a?u:`${h}px`):c==="left"&&(y=`${r.floating.width+l}px`,m=a?u:`${h}px`),{data:{x:y,y:m}}}});function za(e){const[n,t="center"]=e.split("-");return[n,t]}var So=Ou,ar=Nu,xo=ku,wo=Vu,cx="Portal",sr=p.forwardRef((e,n)=>{var s;const{container:t,...r}=e,[o,i]=p.useState(!1);ce(()=>i(!0),[]);const a=t||o&&((s=globalThis==null?void 0:globalThis.document)==null?void 0:s.body);return a?Qn.createPortal(w.jsx(H.div,{...r,ref:n}),a):null});sr.displayName=cx;function dx(e,n){return p.useReducer((t,r)=>n[t][r]??t,e)}var Pe=e=>{const{present:n,children:t}=e,r=ux(n),o=typeof t=="function"?t({present:r.isPresent}):p.Children.only(t),i=fx(r.ref,px(o));return typeof t=="function"||r.isPresent?p.cloneElement(o,{ref:i}):null};Pe.displayName="Presence";function ux(e){const[n,t]=p.useState(),r=p.useRef(null),o=p.useRef(e),i=p.useRef("none"),a=p.useRef(void 0),s=e?"mounted":"unmounted",[l,c]=dx(s,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return p.useEffect(()=>{l==="mounted"?(i.current=a.current??En(r.current),a.current=void 0):i.current="none"},[l]),ce(()=>{const d=r.current,u=o.current;if(u!==e){const h=i.current,y=En(d);e?(a.current=y,c("MOUNT")):y==="none"||(d==null?void 0:d.display)==="none"?c("UNMOUNT"):c(u&&h!==y?"ANIMATION_OUT":"UNMOUNT"),o.current=e}},[e,c]),ce(()=>{if(n){let d;const u=n.ownerDocument.defaultView??window,f=y=>{const b=En(r.current).includes(CSS.escape(y.animationName));if(y.target===n&&b&&(c("ANIMATION_END"),!o.current)){const C=n.style.animationFillMode;n.style.animationFillMode="forwards",d=u.setTimeout(()=>{n.style.animationFillMode==="forwards"&&(n.style.animationFillMode=C)})}},h=y=>{y.target===n&&(i.current=En(r.current))};return n.addEventListener("animationstart",h),n.addEventListener("animationcancel",f),n.addEventListener("animationend",f),()=>{u.clearTimeout(d),n.removeEventListener("animationstart",h),n.removeEventListener("animationcancel",f),n.removeEventListener("animationend",f)}}else c("ANIMATION_END")},[n,c]),{isPresent:["mounted","unmountSuspended"].includes(l),ref:p.useCallback(d=>{if(d){const u=getComputedStyle(d);r.current=u,a.current=En(u)}else r.current=null;t(d)},[])}}function Rl(e,n){if(typeof e=="function")return e(n);e!=null&&(e.current=n)}function fx(...e){const n=p.useRef(e);return n.current=e,p.useCallback(t=>{const r=n.current;let o=!1;const i=r.map(a=>{const s=Rl(a,t);return!o&&typeof s=="function"&&(o=!0),s});if(o)return()=>{for(let a=0;a<i.length;a++){const s=i[a];typeof s=="function"?s():Rl(r[a],null)}}},[])}function En(e){return(e==null?void 0:e.animationName)||"none"}function px(e){var r,o;let n=(r=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:r.get,t=n&&"isReactWarning"in n&&n.isReactWarning;return t?e.ref:(n=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,t=n&&"isReactWarning"in n&&n.isReactWarning,t?e.props.ref:e.props.ref||e.ref)}var mx=p[" useInsertionEffect ".trim().toString()]||ce;function yt({prop:e,defaultProp:n,onChange:t=()=>{},caller:r}){const[o,i,a]=hx({defaultProp:n,onChange:t}),s=e!==void 0,l=s?e:o;{const d=p.useRef(e!==void 0);p.useEffect(()=>{const u=d.current;u!==s&&console.warn(`${r} is changing from ${u?"controlled":"uncontrolled"} to ${s?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),d.current=s},[s,r])}const c=p.useCallback(d=>{var u;if(s){const f=gx(d)?d(e):d;f!==e&&((u=a.current)==null||u.call(a,f))}else i(d)},[s,e,i,a]);return[l,c]}function hx({defaultProp:e,onChange:n}){const[t,r]=p.useState(e),o=p.useRef(t),i=p.useRef(n);return mx(()=>{i.current=n},[n]),p.useEffect(()=>{var a;o.current!==t&&((a=i.current)==null||a.call(i,t),o.current=t)},[t,o]),[t,r,i]}function gx(e){return typeof e=="function"}var yx=function(e){if(typeof document>"u")return null;var n=Array.isArray(e)?e[0]:e;return n.ownerDocument.body},Kt=new WeakMap,xr=new WeakMap,wr={},si=0,Bu=function(e){return e&&(e.host||Bu(e.parentNode))},bx=function(e,n){return n.map(function(t){if(e.contains(t))return t;var r=Bu(t);return r&&e.contains(r)?r:(console.error("aria-hidden",t,"in not contained inside",e,". Doing nothing"),null)}).filter(function(t){return!!t})},vx=function(e,n,t,r){var o=bx(n,Array.isArray(e)?e:[e]);wr[t]||(wr[t]=new WeakMap);var i=wr[t],a=[],s=new Set,l=new Set(o),c=function(u){!u||s.has(u)||(s.add(u),c(u.parentNode))};o.forEach(c);var d=function(u){!u||l.has(u)||Array.prototype.forEach.call(u.children,function(f){if(s.has(f))d(f);else try{var h=f.getAttribute(r),y=h!==null&&h!=="false",m=(Kt.get(f)||0)+1,b=(i.get(f)||0)+1;Kt.set(f,m),i.set(f,b),a.push(f),m===1&&y&&xr.set(f,!0),b===1&&f.setAttribute(t,"true"),y||f.setAttribute(r,"true")}catch(C){console.error("aria-hidden: cannot operate on ",f,C)}})};return d(n),s.clear(),si++,function(){a.forEach(function(u){var f=Kt.get(u)-1,h=i.get(u)-1;Kt.set(u,f),i.set(u,h),f||(xr.has(u)||u.removeAttribute(r),xr.delete(u)),h||u.removeAttribute(t)}),si--,si||(Kt=new WeakMap,Kt=new WeakMap,xr=new WeakMap,wr={})}},qa=function(e,n,t){t===void 0&&(t="data-aria-hidden");var r=Array.from(Array.isArray(e)?e:[e]),o=yx(e);return o?(r.push.apply(r,Array.from(o.querySelectorAll("[aria-live], script"))),vx(r,o,t,"aria-hidden")):function(){return null}},Ue=function(){return Ue=Object.assign||function(n){for(var t,r=1,o=arguments.length;r<o;r++){t=arguments[r];for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&(n[i]=t[i])}return n},Ue.apply(this,arguments)};function ju(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var o=0,r=Object.getOwnPropertySymbols(e);o<r.length;o++)n.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(e,r[o])&&(t[r[o]]=e[r[o]]);return t}function Cx(e,n,t){if(t||arguments.length===2)for(var r=0,o=n.length,i;r<o;r++)(i||!(r in n))&&(i||(i=Array.prototype.slice.call(n,0,r)),i[r]=n[r]);return e.concat(i||Array.prototype.slice.call(n))}var Pr="right-scroll-bar-position",Or="width-before-scroll-bar",Sx="with-scroll-bars-hidden",xx="--removed-body-scroll-bar-size";function li(e,n){return typeof e=="function"?e(n):e&&(e.current=n),e}function wx(e,n){var t=Ie.useState(function(){return{value:e,callback:n,facade:{get current(){return t.value},set current(r){var o=t.value;o!==r&&(t.value=r,t.callback(r,o))}}}})[0];return t.callback=n,t.facade}var Ix=typeof window<"u"?p.useLayoutEffect:p.useEffect,_l=new WeakMap;function Ex(e,n){var t=wx(null,function(r){return e.forEach(function(o){return li(o,r)})});return Ix(function(){var r=_l.get(t);if(r){var o=new Set(r),i=new Set(e),a=t.current;o.forEach(function(s){i.has(s)||li(s,null)}),i.forEach(function(s){o.has(s)||li(s,a)})}_l.set(t,e)},[e]),t}function Tx(e){return e}function Fx(e,n){n===void 0&&(n=Tx);var t=[],r=!1,o={read:function(){if(r)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return t.length?t[t.length-1]:e},useMedium:function(i){var a=n(i,r);return t.push(a),function(){t=t.filter(function(s){return s!==a})}},assignSyncMedium:function(i){for(r=!0;t.length;){var a=t;t=[],a.forEach(i)}t={push:function(s){return i(s)},filter:function(){return t}}},assignMedium:function(i){r=!0;var a=[];if(t.length){var s=t;t=[],s.forEach(i),a=t}var l=function(){var d=a;a=[],d.forEach(i)},c=function(){return Promise.resolve().then(l)};c(),t={push:function(d){a.push(d),c()},filter:function(d){return a=a.filter(d),t}}}};return o}function Dx(e){e===void 0&&(e={});var n=Fx(null);return n.options=Ue({async:!0,ssr:!1},e),n}var $u=function(e){var n=e.sideCar,t=ju(e,["sideCar"]);if(!n)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var r=n.read();if(!r)throw new Error("Sidecar medium not found");return p.createElement(r,Ue({},t))};$u.isSideCarExport=!0;function Ax(e,n){return e.useMedium(n),$u}var Uu=Dx(),ci=function(){},Io=p.forwardRef(function(e,n){var t=p.useRef(null),r=p.useState({onScrollCapture:ci,onWheelCapture:ci,onTouchMoveCapture:ci}),o=r[0],i=r[1],a=e.forwardProps,s=e.children,l=e.className,c=e.removeScrollBar,d=e.enabled,u=e.shards,f=e.sideCar,h=e.noRelative,y=e.noIsolation,m=e.inert,b=e.allowPinchZoom,C=e.as,g=C===void 0?"div":C,v=e.gapMode,S=ju(e,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),x=f,I=Ex([t,n]),E=Ue(Ue({},S),o);return p.createElement(p.Fragment,null,d&&p.createElement(x,{sideCar:Uu,removeScrollBar:c,shards:u,noRelative:h,noIsolation:y,inert:m,setCallbacks:i,allowPinchZoom:!!b,lockRef:t,gapMode:v}),a?p.cloneElement(p.Children.only(s),Ue(Ue({},E),{ref:I})):p.createElement(g,Ue({},E,{className:l,ref:I}),s))});Io.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};Io.classNames={fullWidth:Or,zeroRight:Pr};var Rx=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function _x(){if(!document)return null;var e=document.createElement("style");e.type="text/css";var n=Rx();return n&&e.setAttribute("nonce",n),e}function Px(e,n){e.styleSheet?e.styleSheet.cssText=n:e.appendChild(document.createTextNode(n))}function Ox(e){var n=document.head||document.getElementsByTagName("head")[0];n.appendChild(e)}var Mx=function(){var e=0,n=null;return{add:function(t){e==0&&(n=_x())&&(Px(n,t),Ox(n)),e++},remove:function(){e--,!e&&n&&(n.parentNode&&n.parentNode.removeChild(n),n=null)}}},Nx=function(){var e=Mx();return function(n,t){p.useEffect(function(){return e.add(n),function(){e.remove()}},[n&&t])}},zu=function(){var e=Nx(),n=function(t){var r=t.styles,o=t.dynamic;return e(r,o),null};return n},kx={left:0,top:0,right:0,gap:0},di=function(e){return parseInt(e||"",10)||0},Lx=function(e){var n=window.getComputedStyle(document.body),t=n[e==="padding"?"paddingLeft":"marginLeft"],r=n[e==="padding"?"paddingTop":"marginTop"],o=n[e==="padding"?"paddingRight":"marginRight"];return[di(t),di(r),di(o)]},Vx=function(e){if(e===void 0&&(e="margin"),typeof window>"u")return kx;var n=Lx(e),t=document.documentElement.clientWidth,r=window.innerWidth;return{left:n[0],top:n[1],right:n[2],gap:Math.max(0,r-t+n[2]-n[0])}},Bx=zu(),ln="data-scroll-locked",jx=function(e,n,t,r){var o=e.left,i=e.top,a=e.right,s=e.gap;return t===void 0&&(t="margin"),`
58
58
  .`.concat(Sx,` {
59
59
  overflow: hidden `).concat(r,`;