react-semaphor 0.1.368 → 0.1.370
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analytics-protocol/index.cjs +1 -1
- package/dist/analytics-protocol/index.js +1 -1
- package/dist/brand-studio/index.cjs +5 -5
- package/dist/brand-studio/index.js +24 -23
- package/dist/chunks/{braces-Cc86y9Ov.js → braces-C3-w6xDL.js} +1 -1
- package/dist/chunks/{braces-CXvY9MwQ.js → braces-C8QqW4wu.js} +1 -1
- package/dist/chunks/{calendar-preferences-dialog-BOFlzOJg.js → calendar-preferences-dialog-6q51A6XC.js} +3 -3
- package/dist/chunks/{calendar-preferences-dialog-ZzwfJv2J.js → calendar-preferences-dialog-CUGzkNcE.js} +1 -1
- package/dist/chunks/{chevrons-up-down-CUZL1zaU.js → chevrons-up-down-CnCSGY02.js} +1 -1
- package/dist/chunks/{chevrons-up-down-qQMadOWA.js → chevrons-up-down-DSvLu4Ye.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-9-PCYMjR.js → dashboard-briefing-launcher-BEZnvIla.js} +1 -1
- package/dist/chunks/{dashboard-briefing-launcher-D2lBFqAd.js → dashboard-briefing-launcher-ptERmNJr.js} +176 -177
- package/dist/chunks/{dashboard-controls-D4bUHAjX.js → dashboard-controls-CGt6_hMf.js} +11 -11
- package/dist/chunks/{dashboard-controls-BIk094Ah.js → dashboard-controls-CqKC5oEk.js} +77 -77
- package/dist/chunks/{dashboard-json-DImOf512.js → dashboard-json-6SgPm_QW.js} +13 -14
- package/dist/chunks/dashboard-json-CYSbOdmE.js +1 -0
- package/dist/chunks/{edit-dashboard-visual-DTxkV6Fl.js → edit-dashboard-visual-ByQx_M2i.js} +8 -9
- package/dist/chunks/{edit-dashboard-visual-BHKlcqQR.js → edit-dashboard-visual-w6hKbjlw.js} +1 -1
- package/dist/chunks/index-BtqYNH_S.js +1361 -0
- package/dist/chunks/{index-BVEIk-rB.js → index-CPyEi9gS.js} +72498 -76193
- package/dist/chunks/{palette-DPuAc82h.js → palette-D-f4-82S.js} +1 -1
- package/dist/chunks/{palette-C1k347Tb.js → palette-DUGktM-M.js} +1 -1
- package/dist/chunks/{resource-management-panel-BeHceP2D.js → resource-management-panel-Bf8-3eUf.js} +1 -1
- package/dist/chunks/{resource-management-panel-BOfbSf48.js → resource-management-panel-mJ84NxzC.js} +152 -152
- package/dist/chunks/save-D3YYinDz.js +6 -0
- package/dist/chunks/save-kkBEBeLg.js +21 -0
- package/dist/chunks/{switch-xcWLtWs0.js → switch-Dkx2qEOr.js} +758 -776
- package/dist/chunks/{switch-C0S63HAv.js → switch-fIkmwzUt.js} +27 -32
- package/dist/chunks/{use-create-flow-overlay-state-B5FygfQL.js → use-create-flow-overlay-state-BfoXDDrd.js} +190 -189
- package/dist/chunks/use-create-flow-overlay-state-c6rCm36x.js +26 -0
- package/dist/chunks/{use-visual-utils-DxDE8S8M.js → use-visual-utils-C_c-aiqi.js} +1 -1
- package/dist/chunks/{use-visual-utils-CszWnFBW.js → use-visual-utils-NN0e3fBP.js} +13 -13
- package/dist/chunks/validation-DYL3ArlL.js +1 -0
- package/dist/chunks/validation-PPSpYtVf.js +900 -0
- package/dist/chunks/validators-CgxWT8UX.js +1 -0
- package/dist/chunks/validators-DBNa-eb1.js +1799 -0
- package/dist/dashboard/index.cjs +1 -1
- package/dist/dashboard/index.js +1 -1
- package/dist/dashboard-authoring/index.cjs +1 -1
- package/dist/dashboard-authoring/index.js +1 -1
- package/dist/data-app-builder/index.cjs +51 -1
- package/dist/data-app-builder/index.js +3666 -2
- package/dist/data-app-sdk/index.cjs +1 -1
- package/dist/data-app-sdk/index.js +661 -389
- package/dist/data-app-sdk-validation/index.cjs +1 -1
- package/dist/data-app-sdk-validation/index.js +4 -4
- package/dist/index.cjs +1 -1
- package/dist/index.js +14 -14
- package/dist/surfboard/index.cjs +1 -1
- package/dist/surfboard/index.js +2 -2
- package/dist/types/analytics-protocol.d.ts +472 -3
- package/dist/types/dashboard-assistant.d.ts +469 -3
- package/dist/types/dashboard-authoring.d.ts +170 -2
- package/dist/types/data-app-builder.d.ts +167 -2
- package/dist/types/data-app-sdk-validation.d.ts +576 -25
- package/dist/types/data-app-sdk.d.ts +655 -37
- package/dist/types/main.d.ts +167 -2
- package/package.json +1 -1
- package/dist/chunks/dashboard-json-Bo1kX6W1.js +0 -1
- package/dist/chunks/index-HjDeEytV.js +0 -1411
- package/dist/chunks/use-create-flow-overlay-state-DOXTbTcQ.js +0 -26
- package/dist/chunks/validation-CrUjNWby.js +0 -689
- package/dist/chunks/validation-DGl8wnTt.js +0 -1
- package/dist/chunks/validators-Dq5X4mp0.js +0 -1
- package/dist/chunks/validators-L0xEXtjf.js +0 -965
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const i=require("../chunks/validation-DGl8wnTt.js"),b=require("../chunks/index-BxM99sFL.js"),u=require("react"),q=require("react/jsx-runtime"),C=require("../chunks/validators-Dq5X4mp0.js"),w=["records","changes","drivers","largestNegativeChanges","largestPositiveChanges","largestNegativeDrivers","largestPositiveDrivers"],M=["records","changes","drivers","largestNegativeChanges","largestPositiveChanges","largestNegativeDrivers","largestPositiveDrivers"];function D(t){var r,a;if(!t)return{};const e=$(t.executionResult),n=P(t,e),o=_(n);return{...t,...Object.keys(n).length?{resultSets:n}:{},...o&&!((r=t.columns)!=null&&r.length)?{columns:o.columns}:{},...o&&!((a=t.records)!=null&&a.length)?{records:o.records}:{},...o&&t.rowCount===void 0?{rowCount:o.rowCount}:{}}}function P(t,e){const n={...t.resultSets||{}};for(const r of w){if(n[r]){n[r]=T(n[r]);continue}const a=z(t[r]);if(!a.length)continue;const s=e.length?e:j(a);n[r]={records:k(a,s),columns:s,rowCount:a.length}}const o=K(t.executionResult);return o&&o.records.length>0&&!n.records&&(n.records=o),n}function T(t){var e;return{...t,records:k(t.records||[],t.columns||[]),rowCount:t.rowCount??((e=t.records)==null?void 0:e.length)??0}}function _(t){var e;for(const n of M)if((e=t[n])!=null&&e.records.length)return t[n];return Object.values(t).find(n=>n.records.length)||Object.values(t)[0]}function K(t){const e=t==null?void 0:t.result;if(!(!e||e.kind!=="records"&&e.kind!=="sql"))return{records:k(e.records,e.columns),columns:e.columns,rowCount:e.rowCount??e.records.length}}function $(t){const e=t==null?void 0:t.result;return!e||e.kind!=="records"&&e.kind!=="sql"?[]:e.columns}function z(t){return Array.isArray(t)?t.filter(e=>!!(e&&typeof e=="object"&&!Array.isArray(e))):[]}function k(t,e){return e.length?t.map(n=>{const o={};return e.forEach((r,a)=>{const s=B(n,{name:r.key,label:r.label,fallbackNames:[r.name,Object.keys(n)[a]]});s!==void 0&&(o[r.key]=s)}),Object.keys(o).length?o:n}):t}function j(t){return Array.from(new Set(t.flatMap(n=>Object.keys(n)))).map(n=>({key:n,name:n,label:n}))}function B(t,e){const n=[e.name,e.label,...e.fallbackNames||[]].filter(o=>!!o);for(const o of n)if(Object.prototype.hasOwnProperty.call(t,o))return t[o]}function O(){return{executeAnalysis:(t,e,n)=>y(t,e,n??{}).then(D),executeMetric:(t,e)=>y(t,e),executeRecords:(t,e)=>y(t,e),executeInputOptions:(t,e)=>y(t,e)}}async function y(t,e,n){if(!e.token)throw new Error("SemaphorDataAppProvider needs a token to execute queries.");const o=await fetch(V(e),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${e.token}`},body:JSON.stringify({intent:t,activeInputs:e.activeInputs,...n?{analysisOptions:n}:{},resultShape:t.kind})}),r=await N(o);if(!o.ok||r.error)throw new Error(r.error||`Semaphor Data App execution failed with status ${o.status}.`);return r}async function N(t){const e=await t.text().catch(()=>"");if(!e.trim())return t.ok?{error:"Semaphor Data App execution returned an empty response."}:{};try{return JSON.parse(e)}catch{return t.ok?{error:"Semaphor Data App execution returned invalid JSON.",details:e}:{error:U(t,e),details:e}}}function U(t,e){const n=t.statusText?` ${t.statusText}`:"",o=e.replace(/\s+/g," ").trim();return o?`Semaphor Data App execution failed with status ${t.status}${n}: ${o.slice(0,240)}`:`Semaphor Data App execution failed with status ${t.status}${n}.`}function V(t){const e=L(t).replace(/\/+$/,"");return e?e.endsWith("/api")?`${e}/v1/data-app/execute`:`${e}/api/v1/data-app/execute`:"/api/v1/data-app/execute"}function L(t){if(t.apiBaseUrl)return t.apiBaseUrl;if(!t.token)return"";try{return b.jwtDecode(t.token).apiServiceUrl||""}catch{return""}}const R=u.createContext({});function E(){if(!(typeof window>"u"))return window.__SEMAPHOR_DATA_APP_RUNTIME__}function x(){return u.useContext(R)}function Q({token:t,apiBaseUrl:e,executor:n,children:o}){var d;const r=E(),a=((d=r==null?void 0:r.authToken)==null?void 0:d.accessToken)||t,s=(r==null?void 0:r.dataApiBaseUrl)||(r==null?void 0:r.apiBaseUrl)||e,p=u.useMemo(()=>O(),[]),c=n||p,h=u.useMemo(()=>({token:a,apiBaseUrl:s,executor:c}),[s,c,a]);return q.jsx(R.Provider,{value:h,children:o})}const A={value:null},I={},H={records:[]},g={options:[]};function J(t){const e=i.toSemaphorActiveInputSnapshots(t.inputs),n=i.toSemaphorAnalysisQueryOptions(t);try{const o=i.toSemaphorAnalysisIntent(t),r=f(o);return r?{error:r,activeInputs:e,analysisOptions:n,queryKey:l(void 0,e,r,n),idleData:I}:{intent:o,error:null,activeInputs:e,analysisOptions:n,queryKey:l(o,e,void 0,n),idleData:I}}catch(o){const r=S(o);return{error:r,activeInputs:e,analysisOptions:n,queryKey:l(void 0,e,r,n),idleData:I}}}function Y(t){const e=i.toSemaphorActiveInputSnapshots(t.inputs);try{const n=i.toSemaphorMetricIntent(t),o=f(n);return o?{error:o,activeInputs:e,queryKey:l(void 0,e,o),idleData:A}:{intent:n,error:null,activeInputs:e,queryKey:l(n,e),idleData:A}}catch(n){const o=S(n);return{error:o,activeInputs:e,queryKey:l(void 0,e,o),idleData:A}}}function W(t){const e=i.toSemaphorActiveInputSnapshots(t.inputs),n=H;try{const o=i.toSemaphorRecordsIntent(t),r=f(o);return r?{error:r,activeInputs:e,queryKey:l(void 0,e,r),idleData:n}:{intent:o,error:null,activeInputs:e,queryKey:l(o,e),idleData:n}}catch(o){const r=S(o);return{error:r,activeInputs:e,queryKey:l(void 0,e,r),idleData:n}}}function F(t){try{const e=i.toSemaphorInputOptionsIntent(t),n=f(e);return n?{error:n,queryKey:l(void 0,void 0,n),idleData:g}:{intent:e,error:null,queryKey:l(e),idleData:g}}catch(e){const n=S(e);return{error:n,queryKey:l(void 0,void 0,n),idleData:g}}}function S(t){return t instanceof Error?t:new Error(String(t))}function f(t){const e=C.validateSemaphorAnalyticsIntent(t);if(e.ok)return null;const n=e.errors.map(o=>o.path?`${o.code} at ${o.path}: ${o.message}`:`${o.code}: ${o.message}`).join("; ");return new Error(`Invalid Semaphor analytics intent. ${n}`)}function l(t,e,n,o){return JSON.stringify({intent:t,activeInputs:e,analysisOptions:o,error:n==null?void 0:n.message})}function G(t){const[e,n]=u.useState(t.defaultValue),o=Object.prototype.hasOwnProperty.call(t,"value"),r=o?t.value:e,a=u.useMemo(()=>i.normalizeSemaphorInputOptions(t.options),[t.options]),s=u.useCallback(c=>{var d;const h=c;(d=t.onValueChange)==null||d.call(t,h),o||n(h)},[o,t]),p=u.useCallback(()=>s(void 0),[s]);return u.useMemo(()=>{const c=i.toSemaphorInputSpec(t);return{id:t.id,kind:t.kind,label:t.label,field:c.field,operator:c.operator,controlRole:t.kind==="control"?t.role:void 0,value:r,options:a,isActive:i.hasSemaphorInputValue(r),setValue:s,clear:p,toAnalyticsInput:()=>({inputId:c.inputId,field:c.field,kind:t.kind,label:t.label,value:r,isActive:i.hasSemaphorInputValue(r),operator:c.operator,controlRole:t.kind==="control"?t.role:void 0})}},[p,a,s,t,r])}function X(t){const e=u.useMemo(()=>J(t),[t]),n=u.useCallback(a=>{var s,p;return e.intent?(p=(s=a.executor)==null?void 0:s.executeAnalysis)==null?void 0:p.call(s,e.intent,a,e.analysisOptions):void 0},[e.analysisOptions,e.intent]),o=v(e.queryKey,n,e.idleData,e.activeInputs),r=u.useMemo(()=>D(e.error?e.idleData:o.data),[e.error,e.idleData,o.data]);return{id:t.id,intent:e.intent,...r||{},status:e.error?"error":o.status,isLoading:!e.error&&o.status==="loading",error:e.error||o.error}}function Z(t){const e=u.useMemo(()=>Y(t),[t]),n=u.useCallback(a=>{var s;return e.intent?(s=a.executor)==null?void 0:s.executeMetric(e.intent,a):void 0},[e.intent]),o=v(e.queryKey,n,e.idleData,e.activeInputs),r=e.error?e.idleData:o.data;return{id:t.id,intent:e.intent,value:(r==null?void 0:r.value)??null,metrics:r==null?void 0:r.metrics,comparisonValue:r==null?void 0:r.comparisonValue,delta:r==null?void 0:r.delta,deltaPercent:r==null?void 0:r.deltaPercent,records:r==null?void 0:r.records,executionResult:r==null?void 0:r.executionResult,status:e.error?"error":o.status,isLoading:!e.error&&o.status==="loading",error:e.error||o.error}}function ee(t){const e=u.useMemo(()=>W(t),[t]),n=u.useCallback(a=>{var s;return e.intent?(s=a.executor)==null?void 0:s.executeRecords(e.intent,a):void 0},[e.intent]),o=v(e.queryKey,n,e.idleData,e.activeInputs),r=e.error?e.idleData:o.data;return{id:t.id,intent:e.intent,records:(r==null?void 0:r.records)||[],columns:r==null?void 0:r.columns,rowCount:r==null?void 0:r.rowCount,executionResult:r==null?void 0:r.executionResult,status:e.error?"error":o.status,isLoading:!e.error&&o.status==="loading",error:e.error||o.error}}function te(t){const e=u.useMemo(()=>F(t),[t]),n=u.useCallback(a=>{var s;return e.intent?(s=a.executor)==null?void 0:s.executeInputOptions(e.intent,a):void 0},[e.intent]),o=v(e.queryKey,n,e.idleData),r=e.error?e.idleData:o.data;return{id:t.id,intent:e.intent,options:(r==null?void 0:r.options)||[],executionResult:r==null?void 0:r.executionResult,status:e.error?"error":o.status,isLoading:!e.error&&o.status==="loading",error:e.error||o.error}}function v(t,e,n,o){const r=x(),a=u.useRef(e),s=u.useRef(o),[p,c]=u.useState({status:"idle",data:n,error:null});return a.current=e,s.current=o,u.useEffect(()=>{let h;try{h=a.current({...r,activeInputs:s.current})}catch(m){c({status:"error",data:n,error:S(m)});return}if(!h){c({status:"idle",data:n,error:null});return}let d=!1;return c(m=>({status:"loading",data:m.data,error:null})),h.then(m=>{d||c({status:"success",data:m,error:null})}).catch(m=>{d||c({status:"error",data:n,error:S(m)})}),()=>{d=!0}},[n,t,r]),p}exports.hasSemaphorInputValue=i.hasSemaphorInputValue;exports.normalizeSemaphorAnalysisQueryOptions=i.normalizeSemaphorAnalysisQueryOptions;exports.normalizeSemaphorInputOptions=i.normalizeSemaphorInputOptions;exports.toSemaphorActiveInputSnapshots=i.toSemaphorActiveInputSnapshots;exports.toSemaphorAnalysisIntent=i.toSemaphorAnalysisIntent;exports.toSemaphorAnalysisQueryOptions=i.toSemaphorAnalysisQueryOptions;exports.toSemaphorInputBinding=i.toSemaphorInputBinding;exports.toSemaphorInputBindings=i.toSemaphorInputBindings;exports.toSemaphorInputOptionsIntent=i.toSemaphorInputOptionsIntent;exports.toSemaphorInputSnapshots=i.toSemaphorInputSnapshots;exports.toSemaphorInputSpec=i.toSemaphorInputSpec;exports.toSemaphorMetricIntent=i.toSemaphorMetricIntent;exports.toSemaphorRecordsIntent=i.toSemaphorRecordsIntent;exports.validateSemaphorDataAppHookSpecs=i.validateSemaphorDataAppHookSpecs;exports.SemaphorDataAppContext=R;exports.SemaphorDataAppProvider=Q;exports.createSemaphorQueryExecutor=O;exports.normalizeSemaphorAnalysisPayload=D;exports.readWindowRuntime=E;exports.useSemaphorAnalysis=X;exports.useSemaphorDataAppRuntime=x;exports.useSemaphorInput=G;exports.useSemaphorInputOptions=te;exports.useSemaphorMetric=Z;exports.useSemaphorRecords=ee;
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const u=require("../chunks/validation-DYL3ArlL.js"),z=require("../chunks/index-BxM99sFL.js"),p=require("react"),Q=require("react/jsx-runtime"),$=require("../chunks/validators-CgxWT8UX.js"),N=["records","changes","drivers","largestNegativeChanges","largestPositiveChanges","largestNegativeDrivers","largestPositiveDrivers"],U=["records","changes","drivers","largestNegativeChanges","largestPositiveChanges","largestNegativeDrivers","largestPositiveDrivers"];function O(e){if(!e)return{};const t=W(e.executionResult),n=B(e,t),r=J(n);return{...e,...Object.keys(n).length?{resultSets:n}:{},...r?{columns:r.columns,records:r.records,rowCount:r.rowCount}:{}}}function B(e,t){const n=L(e.resultSets);for(const i of N){if(n[i]){n[i]=_(n[i]);continue}const a=H(e[i]);if(!a.length)continue;const s=t.length?t:F(a);n[i]={records:R(a,s),columns:s,rowCount:a.length}}const r=Y(e.executionResult);return r&&r.records.length>0&&!n.records&&(n.records=r),n}function L(e){return Object.fromEntries(Object.entries(e||{}).map(([t,n])=>[t,_(n)]))}function _(e){var t;return{...e,records:R(e.records||[],e.columns||[]),rowCount:e.rowCount??((t=e.records)==null?void 0:t.length)??0}}function J(e){var t;for(const n of U)if((t=e[n])!=null&&t.records.length)return e[n];return Object.values(e).find(n=>n.records.length)||Object.values(e)[0]}function Y(e){const t=e==null?void 0:e.result;if(!(!t||t.kind!=="records"&&t.kind!=="sql"))return{records:R(t.records,t.columns),columns:t.columns,rowCount:t.rowCount??t.records.length}}function W(e){const t=e==null?void 0:e.result;return!t||t.kind!=="records"&&t.kind!=="sql"?[]:t.columns}function H(e){return Array.isArray(e)?e.filter(t=>!!(t&&typeof t=="object"&&!Array.isArray(t))):[]}function R(e,t){return t.length?e.map(n=>{const r={};return t.forEach((i,a)=>{const s=X(n,{name:i.key,label:i.label,fallbackNames:[i.name,Object.keys(n)[a]]});s!==void 0&&(r[i.key]=s)}),Object.keys(r).length?r:n}):e}function F(e){return Array.from(new Set(e.flatMap(n=>Object.keys(n)))).map(n=>({key:n,name:n,label:n}))}function X(e,t){const n=[t.name,t.label,...t.fallbackNames||[]].filter(r=>!!r);for(const r of n)if(Object.prototype.hasOwnProperty.call(e,r))return e[r]}function G(e){return e}function Z(e){return e}const ee={filter(e){return{...e,kind:"filter"}},control(e){return{...e,kind:"control"}},sqlParam(e){return{...e,kind:"control",role:"sqlParam"}},metric(e){return{...e,queryKind:"metric"}},analysis(e){return{...e,queryKind:"analysis"}},records(e){return{...e,queryKind:"records"}},inputOptions(e){return{...e,queryKind:"inputOptions"}},sql(e){return{...e,queryKind:"sql"}},matrix(e){return{...e,queryKind:"matrix"}}};function T(){return{executeAnalysis:(e,t,n)=>S(e,t,n??{}).then(O),executeMetric:(e,t)=>S(e,t),executeRecords:(e,t)=>S(e,t),executeInputOptions:(e,t)=>S(e,t),executeSql:(e,t)=>S(e,t),executeMatrix:(e,t)=>S(e,t)}}async function S(e,t,n){if(!t.token)throw new Error("SemaphorDataAppProvider needs a token to execute queries.");const r=await fetch(ne(t),{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${t.token}`},body:JSON.stringify({intent:e,activeInputs:t.activeInputs,...n?{analysisOptions:n}:{},resultShape:e.kind})}),i=await te(r);if(!r.ok||i.error)throw new Error(i.error||`Semaphor Data App execution failed with status ${r.status}.`);return i}async function te(e){const t=await e.text().catch(()=>"");if(!t.trim())return e.ok?{error:"Semaphor Data App execution returned an empty response."}:{};try{return JSON.parse(t)}catch{return e.ok?{error:"Semaphor Data App execution returned invalid JSON.",details:t}:{error:re(e,t),details:t}}}function re(e,t){const n=e.statusText?` ${e.statusText}`:"",r=t.replace(/\s+/g," ").trim();return r?`Semaphor Data App execution failed with status ${e.status}${n}: ${r.slice(0,240)}`:`Semaphor Data App execution failed with status ${e.status}${n}.`}function ne(e){const t=oe(e).replace(/\/+$/,"");return t?t.endsWith("/api")?`${t}/v1/data-app/execute`:`${t}/api/v1/data-app/execute`:"/api/v1/data-app/execute"}function oe(e){if(e.apiBaseUrl)return e.apiBaseUrl;if(!e.token)return"";try{return z.jwtDecode(e.token).apiServiceUrl||""}catch{return""}}const K=p.createContext({});function V(){if(!(typeof window>"u"))return window.__SEMAPHOR_DATA_APP_RUNTIME__}function j(){return p.useContext(K)}function ie({token:e,apiBaseUrl:t,executor:n,children:r}){var o;const i=V(),a=((o=i==null?void 0:i.authToken)==null?void 0:o.accessToken)||e,s=(i==null?void 0:i.dataApiBaseUrl)||(i==null?void 0:i.apiBaseUrl)||t,h=p.useMemo(()=>T(),[]),c=n||h,l=p.useMemo(()=>({token:a,apiBaseUrl:s,executor:c}),[s,c,a]);return Q.jsx(K.Provider,{value:l,children:r})}const g={value:null},D={},ue={records:[]},k={options:[]},ae={records:[]},x={};function se(e){const t=u.toSemaphorActiveInputSnapshots(e.inputs),n=u.toSemaphorAnalysisQueryOptions(e);try{const r=u.toSemaphorAnalysisIntent(e),i=y(r);return i?{error:i,activeInputs:t,analysisOptions:n,queryKey:m(void 0,t,i,n),idleData:D}:{intent:r,error:null,activeInputs:t,analysisOptions:n,queryKey:m(r,t,void 0,n),idleData:D}}catch(r){const i=f(r);return{error:i,activeInputs:t,analysisOptions:n,queryKey:m(void 0,t,i,n),idleData:D}}}function ce(e){const t=u.toSemaphorActiveInputSnapshots(e.inputs);try{const n=u.toSemaphorMetricIntent(e),r=y(n);return r?{error:r,activeInputs:t,queryKey:m(void 0,t,r),idleData:g}:{intent:n,error:null,activeInputs:t,queryKey:m(n,t),idleData:g}}catch(n){const r=f(n);return{error:r,activeInputs:t,queryKey:m(void 0,t,r),idleData:g}}}function le(e){const t=u.toSemaphorActiveInputSnapshots(e.inputs),n=ue;try{const r=u.toSemaphorRecordsIntent(e),i=y(r);return i?{error:i,activeInputs:t,queryKey:m(void 0,t,i),idleData:n}:{intent:r,error:null,activeInputs:t,queryKey:m(r,t),idleData:n}}catch(r){const i=f(r);return{error:i,activeInputs:t,queryKey:m(void 0,t,i),idleData:n}}}function de(e){try{const t=u.toSemaphorInputOptionsIntent(e),n=y(t);return n?{error:n,queryKey:m(void 0,void 0,n),idleData:k}:{intent:t,error:null,queryKey:m(t),idleData:k}}catch(t){const n=f(t);return{error:n,queryKey:m(void 0,void 0,n),idleData:k}}}function pe(e){const t=u.toSemaphorActiveInputSnapshots(e.inputs),n=ae;try{const r=u.toSemaphorSqlIntent(e),i=y(r);return i?{error:i,activeInputs:t,queryKey:m(void 0,t,i),idleData:n}:{intent:r,error:null,activeInputs:t,queryKey:m(r,t),idleData:n}}catch(r){const i=f(r);return{error:i,activeInputs:t,queryKey:m(void 0,t,i),idleData:n}}}function me(e){const t=u.toSemaphorActiveInputSnapshots(e.inputs);try{const n=u.toSemaphorMatrixIntent(e),r=y(n);return r?{error:r,activeInputs:t,queryKey:m(void 0,t,r),idleData:x}:{intent:n,error:null,activeInputs:t,queryKey:m(n,t),idleData:x}}catch(n){const r=f(n);return{error:r,activeInputs:t,queryKey:m(void 0,t,r),idleData:x}}}function f(e){return e instanceof Error?e:new Error(String(e))}function y(e){const t=$.validateSemaphorAnalyticsIntent(e);if(t.ok)return null;const n=t.errors.map(r=>r.path?`${r.code} at ${r.path}: ${r.message}`:`${r.code}: ${r.message}`).join("; ");return new Error(`Invalid Semaphor analytics intent. ${n}`)}function m(e,t,n,r){return JSON.stringify({intent:e,activeInputs:t,analysisOptions:r,error:n==null?void 0:n.message})}function he(e){const[t,n]=p.useState(e.defaultValue),r=Object.prototype.hasOwnProperty.call(e,"value"),i=r?e.value:t,a=p.useMemo(()=>u.normalizeSemaphorInputOptions(e.options),[e.options]),s=p.useCallback(c=>{var o;const l=c;(o=e.onValueChange)==null||o.call(e,l),r||n(l)},[r,e]),h=p.useCallback(()=>s(void 0),[s]);return p.useMemo(()=>{const c=u.toSemaphorInputSpec(e);return{id:e.id,kind:e.kind,label:e.label,field:c.field,operator:c.operator,controlRole:e.kind==="control"?e.role:void 0,value:i,options:a,isActive:u.hasSemaphorInputValue(i),setValue:s,clear:h,toAnalyticsInput:()=>({inputId:c.inputId,field:c.field,kind:e.kind,label:e.label,value:i,isActive:u.hasSemaphorInputValue(i),operator:c.operator,controlRole:e.kind==="control"?e.role:void 0})}},[h,a,s,e,i])}function fe(e){const[t,n]=p.useState(()=>ve(e));return p.useEffect(()=>{n(r=>{let i=r;for(const a of e)!Object.prototype.hasOwnProperty.call(i,a.id)&&a.defaultValue!==void 0&&(i={...i,[a.id]:a.defaultValue});return i})},[e]),p.useMemo(()=>e.map(r=>{const i=Object.prototype.hasOwnProperty.call(r,"value"),a=i?r.value:t[r.id],s=u.normalizeSemaphorInputOptions(r.options),h=o=>{var d;(d=r.onValueChange)==null||d.call(r,o),i||n(v=>({...v,[r.id]:o}))},c=()=>h(void 0),l=u.toSemaphorInputSpec(r);return{id:r.id,kind:r.kind,label:r.label,field:l.field,operator:l.operator,controlRole:r.kind==="control"?r.role:void 0,value:a,options:s,isActive:u.hasSemaphorInputValue(a),setValue:h,clear:c,toAnalyticsInput:()=>({inputId:l.inputId,field:l.field,kind:r.kind,label:r.label,value:a,isActive:u.hasSemaphorInputValue(a),operator:l.operator,controlRole:r.kind==="control"?r.role:void 0})}}),[e,t])}function Se(e,t={}){const n=p.useMemo(()=>t.inputs?{...e,inputs:t.inputs}:e,[t.inputs,e]),r=p.useMemo(()=>{switch(n.queryKind){case"metric":return{queryKind:n.queryKind,request:ce(n)};case"analysis":return{queryKind:n.queryKind,request:se(n)};case"records":return{queryKind:n.queryKind,request:le(n)};case"inputOptions":return{queryKind:n.queryKind,request:de(n)};case"sql":return{queryKind:n.queryKind,request:pe(n)};case"matrix":return{queryKind:n.queryKind,request:me(n)};default:return E(n)}},[n]),i=p.useCallback(o=>{var v,q,b,w,C,I,M,A,P;const d=r.request;if(d.intent)switch(r.queryKind){case"metric":return(v=o.executor)==null?void 0:v.executeMetric(d.intent,o);case"analysis":return(b=(q=o.executor)==null?void 0:q.executeAnalysis)==null?void 0:b.call(q,d.intent,o,d.analysisOptions);case"records":return(w=o.executor)==null?void 0:w.executeRecords(d.intent,o);case"inputOptions":return(C=o.executor)==null?void 0:C.executeInputOptions(d.intent,o);case"sql":return(M=(I=o.executor)==null?void 0:I.executeSql)==null?void 0:M.call(I,d.intent,o);case"matrix":return(P=(A=o.executor)==null?void 0:A.executeMatrix)==null?void 0:P.call(A,d.intent,o);default:return E(r)}},[r]),a=ye(r.request.queryKey,i,r.request.idleData,r.request.activeInputs),s=r.request.error?r.request.idleData:a.data,h=r.request.error?"error":a.status,c=!r.request.error&&a.status==="loading",l=r.request.error||a.error;switch(r.queryKind){case"metric":{const o=s;return{id:n.id,intent:r.request.intent,value:(o==null?void 0:o.value)??null,metrics:o==null?void 0:o.metrics,comparisonValue:o==null?void 0:o.comparisonValue,delta:o==null?void 0:o.delta,deltaPercent:o==null?void 0:o.deltaPercent,records:o==null?void 0:o.records,executionResult:o==null?void 0:o.executionResult,status:h,isLoading:c,error:l}}case"analysis":{const o=O(s);return{id:n.id,intent:r.request.intent,...o||{},status:h,isLoading:c,error:l}}case"records":{const o=s;return{id:n.id,intent:r.request.intent,records:(o==null?void 0:o.records)||[],columns:o==null?void 0:o.columns,rowCount:o==null?void 0:o.rowCount,pagination:o==null?void 0:o.pagination,executionResult:o==null?void 0:o.executionResult,status:h,isLoading:c,error:l}}case"inputOptions":{const o=s;return{id:n.id,intent:r.request.intent,options:(o==null?void 0:o.options)||[],executionResult:o==null?void 0:o.executionResult,status:h,isLoading:c,error:l}}case"sql":{const o=s;return{id:n.id,intent:r.request.intent,records:(o==null?void 0:o.records)||[],columns:o==null?void 0:o.columns,rowCount:o==null?void 0:o.rowCount,pagination:o==null?void 0:o.pagination,output:o==null?void 0:o.output,rowLimitExceeded:o==null?void 0:o.rowLimitExceeded,executionResult:o==null?void 0:o.executionResult,status:h,isLoading:c,error:l}}case"matrix":{const o=s;return{id:n.id,intent:r.request.intent,payload:o==null?void 0:o.payload,grid:o==null?void 0:o.grid,expansion:o==null?void 0:o.expansion,executionResult:o==null?void 0:o.executionResult,status:h,isLoading:c,error:l}}default:return E(r)}}function ye(e,t,n,r){const i=j(),a=p.useRef(t),s=p.useRef(r),[h,c]=p.useState({status:"idle",data:n,error:null});return a.current=t,s.current=r,p.useEffect(()=>{let l;try{l=a.current({...i,activeInputs:s.current})}catch(d){c({status:"error",data:n,error:f(d)});return}if(!l){c({status:"idle",data:n,error:null});return}let o=!1;return c(d=>({status:"loading",data:d.data,error:null})),l.then(d=>{o||c({status:"success",data:d,error:null})}).catch(d=>{o||c({status:"error",data:n,error:f(d)})}),()=>{o=!0}},[n,e,i]),h}function ve(e){return Object.fromEntries(e.filter(t=>t.defaultValue!==void 0).map(t=>[t.id,t.defaultValue]))}function E(e){throw new Error(`Unsupported Semaphor query kind: ${JSON.stringify(e)}`)}exports.hasSemaphorInputValue=u.hasSemaphorInputValue;exports.normalizeSemaphorAnalysisQueryOptions=u.normalizeSemaphorAnalysisQueryOptions;exports.normalizeSemaphorInputOptions=u.normalizeSemaphorInputOptions;exports.toSemaphorActiveInputSnapshots=u.toSemaphorActiveInputSnapshots;exports.toSemaphorAnalysisIntent=u.toSemaphorAnalysisIntent;exports.toSemaphorAnalysisQueryOptions=u.toSemaphorAnalysisQueryOptions;exports.toSemaphorInputBinding=u.toSemaphorInputBinding;exports.toSemaphorInputBindings=u.toSemaphorInputBindings;exports.toSemaphorInputOptionsIntent=u.toSemaphorInputOptionsIntent;exports.toSemaphorInputSnapshots=u.toSemaphorInputSnapshots;exports.toSemaphorInputSpec=u.toSemaphorInputSpec;exports.toSemaphorMatrixIntent=u.toSemaphorMatrixIntent;exports.toSemaphorMetricIntent=u.toSemaphorMetricIntent;exports.toSemaphorRecordsIntent=u.toSemaphorRecordsIntent;exports.toSemaphorSqlIntent=u.toSemaphorSqlIntent;exports.validateSemaphorDataAppQuerySpecs=u.validateSemaphorDataAppQuerySpecs;exports.SemaphorDataAppContext=K;exports.SemaphorDataAppProvider=ie;exports.createSemaphorQueryExecutor=T;exports.defineSemaphorDataApp=G;exports.defineSemaphorInput=Z;exports.normalizeSemaphorAnalysisPayload=O;exports.readWindowRuntime=V;exports.semaphor=ee;exports.useSemaphorDataAppRuntime=j;exports.useSemaphorInput=he;exports.useSemaphorInputs=fe;exports.useSemaphorQuery=Se;
|