@malloydata/render 0.0.211-dev241112165721 → 0.0.211

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.
@@ -0,0 +1,6 @@
1
+ function n() {
2
+ return null;
3
+ }
4
+ export {
5
+ n as default
6
+ };
@@ -81491,7 +81491,7 @@ function gXe() {
81491
81491
  return pXe();
81492
81492
  }
81493
81493
  var mXe = {}, yXe = /* @__PURE__ */ Nt("<button class=malloy-chart_debug_menu>"), EXe = /* @__PURE__ */ Nt("<div class=malloy-chart>");
81494
- const AXe = T0e(() => import("./chart/chart-dev-tool.tsx"));
81494
+ const AXe = T0e(() => import("./chart-dev-tool-BgukBFxT.mjs"));
81495
81495
  let Noe = !1;
81496
81496
  try {
81497
81497
  const t = mXe.IS_STORYBOOK;
@@ -1504,7 +1504,7 @@ ${E}`,y)}}else{if(g.urls)for(const E of g.urls)try{if(E.startsWith("internal://"
1504
1504
  .malloy-chart_debug_icon {
1505
1505
  width: 16px;
1506
1506
  }
1507
- `;var eXe=Dt('<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 24 24"stroke-width=1.5 stroke=currentColor class=malloy-chart_debug_icon><path stroke-linecap=round stroke-linejoin=round d="M11.42 15.17 17.25 21A2.652 2.652 0 0 0 21 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 1 1-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14a4.5 4.5 0 0 0 4.486-6.336l-3.276 3.277a3.004 3.004 0 0 1-2.25-2.25l3.276-3.276a4.5 4.5 0 0 0-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437 1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008v-.008Z">');function tXe(){return eXe()}var nXe={},rXe=Dt("<button class=malloy-chart_debug_menu>"),iXe=Dt("<div class=malloy-chart>");const sXe=T0e(()=>import("./chart/chart-dev-tool.tsx"));let ase=!1;try{const t=nXe.IS_STORYBOOK;typeof t<"u"&&(ase=!!t)}catch{}function oXe(t){Nl().addCSSToShadowRoot(ZKe);const{field:n,data:r}=t,i=t.metadata.field(n).vegaChartProps,s=t.runtime??t.metadata.field(n).runtime;if(!s)throw new Error("Charts must have a runtime defined in their metadata");const o=r;for(let _=0;_<o.length;_++)o[_].__malloyDataRecord=r[_].__malloyDataRecord;let u=[];i.mapMalloyDataToChartData&&(u=i.mapMalloyDataToChartData(n,o));const[a,l]=Ln(null),c=()=>{var _;return(_=a())==null?void 0:_.view};io(()=>{var C;const _=c();_&&(_.data("values",u),_.runAsync(),(C=t.onView)==null||C.call(t,_))});const[f,x]=Ln(null);let d=null;const p=_=>{d&&clearTimeout(d),_!==null?x(_):d=setTimeout(()=>x(null),0)},m=(_,C)=>{if(c()&&C&&i.getTooltipData){const O=i.getTooltipData(C,c());p(O)}else p(null)},g=JKe(),y=new Map,E=_=>{const C=Object.prototype.hasOwnProperty.call(_,"debounce");y.has(_.sourceId)&&(clearTimeout(y.get(_.sourceId)),y.delete(_.sourceId));let O="always";typeof _.debounce=="object"&&_.debounce.strategy&&(O=_.debounce.strategy);let F=100;typeof _.debounce=="number"?F=_.debounce:typeof _.debounce=="object"&&typeof _.debounce.time=="number"&&(F=_.debounce.time),!_.data?C?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"remove",sourceId:_.sourceId}])},F)):g.applyBrushOps([{type:"remove",sourceId:_.sourceId}]):C&&O==="always"?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])},F)):g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])};let A=[];io(()=>{var _;(_=a())==null||_.onSignal("brushOut",(C,O)=>{A=O,O.forEach(F=>{E(F)})})}),io(()=>{var O;const _=t.field.allFields.map(F=>F.isAtomicField()?F.referenceId:null),C=g.store.brushes.filter(F=>_.includes(F.fieldRefId));(O=a())==null||O.setSignalAndRun("brushIn",JSON.parse(JSON.stringify(C)))});const[v,S]=Ln(!1),b=()=>{x(null),S(!0)};return(()=>{var _=iXe();return _.addEventListener("mouseleave",()=>{x(null),g.applyBrushOps(A.filter(C=>{var O;return((O=C.data)==null?void 0:O.type)!=="measure-range"}).map(C=>({type:"remove",sourceId:C.sourceId})))}),ot(_,Ye(IKe,{get width(){return i.plotWidth},get height(){return i.plotHeight},onMouseOver:m,onViewInterface:l,get explore(){return t.field},runtime:s}),null),ot(_,Ye(MKe,{get show(){return!!f()},get children(){return Ye(QKe,{get data(){return f()}})}}),null),ot(_,Ye(Ti,{get when(){return ase&&!t.devMode},get children(){return[(()=>{var C=rXe();return C.$$click=b,ot(C,Ye(tXe,{})),C})(),Ye(Ti,{get when(){return v()},get children(){return Ye(sXe,Yo({onClose:()=>S(!1)},t,{devMode:!0}))}})]}}),null),_})()}qT(["click"]);function lse(t){return t.tagParse().tag.has("hidden")}const cse={xs:28,sm:64,md:128,lg:256,xl:384,"2xl":512};function fse(t,e=0,n=0,r=0){let i={};return t.allFields.forEach(s=>{if(!lse(s))if(!s.isExploreField())i[Ms(s)]={abs:[e,e],rel:[n,n],depth:r},e++,n++;else{const[o,u,a]=fse(s,e,0,r+1);i={...i,...o},i[Ms(s)]={abs:[e,u-1],rel:[n,n+a-1],depth:r},e=u,n+=a}}),[i,e,n]}function uXe(t,e){const[n]=fse(e),r=Math.max(...Object.values(n).map(s=>s.abs[1]))+1;n[Ms(e)]={abs:[0,r-1],rel:[0,r-1],depth:-1};const i={fields:{},fieldHeaderRangeMap:n,fieldLayout(s){return this.fields[Ms(s)]},totalHeaderSize:r,maxDepth:0};for(const[s,o]of Object.entries(t.fields)){if(!(s in n))continue;const u=o.field,a={metadata:o,width:null,height:null,absoluteColumnRange:n[s].abs,relativeColumnRange:n[s].rel,depth:n[s].depth};i.maxDepth=Math.max(i.maxDepth,a.depth);const{tag:l}=u.tagParse(),c=l.tag("column"),f=c==null?void 0:c.text("width"),x=c==null?void 0:c.numeric("width");f&&cse[f]?a.width=cse[f]:x&&(a.width=x),c!=null&&c.numeric("height")&&(a.height=c.numeric("height")),i.fields[s]=a}return i}const xse=kT(),E2=()=>MT(xse);function aXe(){return tC({headerSizes:{},columnWidths:{}})}const lXe=`.malloy-table * {
1507
+ `;var eXe=Dt('<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 24 24"stroke-width=1.5 stroke=currentColor class=malloy-chart_debug_icon><path stroke-linecap=round stroke-linejoin=round d="M11.42 15.17 17.25 21A2.652 2.652 0 0 0 21 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 1 1-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14a4.5 4.5 0 0 0 4.486-6.336l-3.276 3.277a3.004 3.004 0 0 1-2.25-2.25l3.276-3.276a4.5 4.5 0 0 0-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437 1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008v-.008Z">');function tXe(){return eXe()}var nXe={},rXe=Dt("<button class=malloy-chart_debug_menu>"),iXe=Dt("<div class=malloy-chart>");const sXe=T0e(()=>Promise.resolve().then(()=>put));let ase=!1;try{const t=nXe.IS_STORYBOOK;typeof t<"u"&&(ase=!!t)}catch{}function oXe(t){Nl().addCSSToShadowRoot(ZKe);const{field:n,data:r}=t,i=t.metadata.field(n).vegaChartProps,s=t.runtime??t.metadata.field(n).runtime;if(!s)throw new Error("Charts must have a runtime defined in their metadata");const o=r;for(let _=0;_<o.length;_++)o[_].__malloyDataRecord=r[_].__malloyDataRecord;let u=[];i.mapMalloyDataToChartData&&(u=i.mapMalloyDataToChartData(n,o));const[a,l]=Ln(null),c=()=>{var _;return(_=a())==null?void 0:_.view};io(()=>{var C;const _=c();_&&(_.data("values",u),_.runAsync(),(C=t.onView)==null||C.call(t,_))});const[f,x]=Ln(null);let d=null;const p=_=>{d&&clearTimeout(d),_!==null?x(_):d=setTimeout(()=>x(null),0)},m=(_,C)=>{if(c()&&C&&i.getTooltipData){const O=i.getTooltipData(C,c());p(O)}else p(null)},g=JKe(),y=new Map,E=_=>{const C=Object.prototype.hasOwnProperty.call(_,"debounce");y.has(_.sourceId)&&(clearTimeout(y.get(_.sourceId)),y.delete(_.sourceId));let O="always";typeof _.debounce=="object"&&_.debounce.strategy&&(O=_.debounce.strategy);let F=100;typeof _.debounce=="number"?F=_.debounce:typeof _.debounce=="object"&&typeof _.debounce.time=="number"&&(F=_.debounce.time),!_.data?C?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"remove",sourceId:_.sourceId}])},F)):g.applyBrushOps([{type:"remove",sourceId:_.sourceId}]):C&&O==="always"?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])},F)):g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])};let A=[];io(()=>{var _;(_=a())==null||_.onSignal("brushOut",(C,O)=>{A=O,O.forEach(F=>{E(F)})})}),io(()=>{var O;const _=t.field.allFields.map(F=>F.isAtomicField()?F.referenceId:null),C=g.store.brushes.filter(F=>_.includes(F.fieldRefId));(O=a())==null||O.setSignalAndRun("brushIn",JSON.parse(JSON.stringify(C)))});const[v,S]=Ln(!1),b=()=>{x(null),S(!0)};return(()=>{var _=iXe();return _.addEventListener("mouseleave",()=>{x(null),g.applyBrushOps(A.filter(C=>{var O;return((O=C.data)==null?void 0:O.type)!=="measure-range"}).map(C=>({type:"remove",sourceId:C.sourceId})))}),ot(_,Ye(IKe,{get width(){return i.plotWidth},get height(){return i.plotHeight},onMouseOver:m,onViewInterface:l,get explore(){return t.field},runtime:s}),null),ot(_,Ye(MKe,{get show(){return!!f()},get children(){return Ye(QKe,{get data(){return f()}})}}),null),ot(_,Ye(Ti,{get when(){return ase&&!t.devMode},get children(){return[(()=>{var C=rXe();return C.$$click=b,ot(C,Ye(tXe,{})),C})(),Ye(Ti,{get when(){return v()},get children(){return Ye(sXe,Yo({onClose:()=>S(!1)},t,{devMode:!0}))}})]}}),null),_})()}qT(["click"]);function lse(t){return t.tagParse().tag.has("hidden")}const cse={xs:28,sm:64,md:128,lg:256,xl:384,"2xl":512};function fse(t,e=0,n=0,r=0){let i={};return t.allFields.forEach(s=>{if(!lse(s))if(!s.isExploreField())i[Ms(s)]={abs:[e,e],rel:[n,n],depth:r},e++,n++;else{const[o,u,a]=fse(s,e,0,r+1);i={...i,...o},i[Ms(s)]={abs:[e,u-1],rel:[n,n+a-1],depth:r},e=u,n+=a}}),[i,e,n]}function uXe(t,e){const[n]=fse(e),r=Math.max(...Object.values(n).map(s=>s.abs[1]))+1;n[Ms(e)]={abs:[0,r-1],rel:[0,r-1],depth:-1};const i={fields:{},fieldHeaderRangeMap:n,fieldLayout(s){return this.fields[Ms(s)]},totalHeaderSize:r,maxDepth:0};for(const[s,o]of Object.entries(t.fields)){if(!(s in n))continue;const u=o.field,a={metadata:o,width:null,height:null,absoluteColumnRange:n[s].abs,relativeColumnRange:n[s].rel,depth:n[s].depth};i.maxDepth=Math.max(i.maxDepth,a.depth);const{tag:l}=u.tagParse(),c=l.tag("column"),f=c==null?void 0:c.text("width"),x=c==null?void 0:c.numeric("width");f&&cse[f]?a.width=cse[f]:x&&(a.width=x),c!=null&&c.numeric("height")&&(a.height=c.numeric("height")),i.fields[s]=a}return i}const xse=kT(),E2=()=>MT(xse);function aXe(){return tC({headerSizes:{},columnWidths:{}})}const lXe=`.malloy-table * {
1508
1508
  box-sizing: border-box;
1509
1509
  }
1510
1510
 
@@ -1847,4 +1847,4 @@ ${E}`,y)}}else{if(g.urls)for(const E of g.urls)try{if(E.startsWith("internal://"
1847
1847
  'calt' 1;
1848
1848
  }
1849
1849
  }
1850
- `,Kle=kT(),Nl=()=>{const t=MT(Kle);if(!t)throw new Error("ConfigContext missing a value; did you provide a ConfigProvider?");return t};function cut(t,{element:e}){const n=On(()=>t.result?t.result:t.queryResult&&t.modelDef?new FB.Result(t.queryResult,t.modelDef):null),r=new Set;function i(a){const l=e.renderRoot;if(!(l instanceof ShadowRoot)){console.warn("Couldn't add CSS to render element, it is not rendering in a ShadowRoot");return}if(!r.has(a)){const c=new CSSStyleSheet;c.replaceSync(a),l.adoptedStyleSheets.push(c),r.add(a)}}function s(a,l){if(!document.getElementById(a)){const c=document.createElement("style");c.id=a,c.textContent=l,document.head.appendChild(c)}}i(lut);const o=()=>Object.assign({disableVirtualization:!1,rowLimit:1/0},t.tableConfig),u=()=>Object.assign({disableVirtualization:!1},t.dashboardConfig);return Ye(Ti,{get when(){return n()},get children(){return Ye(Kle.Provider,{get value(){return{onClick:t.onClick,vegaConfigOverride:t.vegaConfigOverride,element:e,addCSSToShadowRoot:i,addCSSToDocument:s,tableConfig:o,dashboardConfig:u}},get children(){return Ye(fut,{get result(){return n()},element:e,get scrollEl(){return t.scrollEl},get vegaConfigOverride(){return t.vegaConfigOverride}})}})}})}function fut(t){const e=On(()=>aut(t.result,{getVegaConfigOverride:t.vegaConfigOverride})),n=()=>{const i=e().modelTag,s=e().resultTag,o=i.tag("theme"),u=s.tag("theme");return{modelTag:i,resultTag:s,modelTheme:o,localTheme:u}};io(()=>{if(t.element){const i=xut(n().modelTheme,n().localTheme);for(const[s,o]of Object.entries(i))t.element.style.setProperty(s,o)}});const r=()=>vc({field:t.result.resultExplore,dataColumn:t.result.data,resultMetadata:e(),tag:n().resultTag,customProps:{table:{scrollEl:t.scrollEl},dashboard:{scrollEl:t.scrollEl}}});return Ye(use.Provider,{get value(){return e()},get children(){return r().renderValue}})}function no(t,...e){let n;for(const r of e)if(n=r==null?void 0:r.text(t),typeof n<"u")break;return n??`var(--malloy-theme--${t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()})`}function xut(t,e){const n={},r=no("tableRowHeight",e,t),i=no("tableBodyColor",e,t),s=no("tableFontSize",e,t),o=no("tableHeaderColor",e,t),u=no("tableHeaderWeight",e,t),a=no("tableBodyWeight",e,t),l=no("tableBorder",e,t),c=no("tableBackground",e,t),f=no("tableGutterSize",e,t),x=no("tablePinnedBackground",e,t),d=no("tablePinnedBorder",e,t),p=no("fontFamily",e,t);return n["--malloy-render--table-row-height"]=r,n["--malloy-render--table-body-color"]=i,n["--malloy-render--table-font-size"]=s,n["--malloy-render--font-family"]=p,n["--malloy-render--table-header-color"]=o,n["--malloy-render--table-header-weight"]=u,n["--malloy-render--table-body-weight"]=a,n["--malloy-render--table-border"]=l,n["--malloy-render--table-background"]=c,n["--malloy-render--table-gutter-size"]=f,n["--malloy-render--table-pinned-background"]=x,n["--malloy-render--table-pinned-border"]=d,n}function dut({customElements:t=window.customElements,HTMLElement:e=window.HTMLElement}){t.get("malloy-render")?console.warn("The custom element 'malloy-render' has already been defined. Make sure you are not loading multiple versions of the malloy-render package as they could conflict."):l0e(c0e("malloy-render",{result:void 0,queryResult:void 0,modelDef:void 0,scrollEl:void 0,onClick:void 0,vegaConfigOverride:void 0,tableConfig:void 0,dashboardConfig:void 0},{customElements:t,BaseElement:e}),I0e)(cut)}return dut});
1850
+ `,Kle=kT(),Nl=()=>{const t=MT(Kle);if(!t)throw new Error("ConfigContext missing a value; did you provide a ConfigProvider?");return t};function cut(t,{element:e}){const n=On(()=>t.result?t.result:t.queryResult&&t.modelDef?new FB.Result(t.queryResult,t.modelDef):null),r=new Set;function i(a){const l=e.renderRoot;if(!(l instanceof ShadowRoot)){console.warn("Couldn't add CSS to render element, it is not rendering in a ShadowRoot");return}if(!r.has(a)){const c=new CSSStyleSheet;c.replaceSync(a),l.adoptedStyleSheets.push(c),r.add(a)}}function s(a,l){if(!document.getElementById(a)){const c=document.createElement("style");c.id=a,c.textContent=l,document.head.appendChild(c)}}i(lut);const o=()=>Object.assign({disableVirtualization:!1,rowLimit:1/0},t.tableConfig),u=()=>Object.assign({disableVirtualization:!1},t.dashboardConfig);return Ye(Ti,{get when(){return n()},get children(){return Ye(Kle.Provider,{get value(){return{onClick:t.onClick,vegaConfigOverride:t.vegaConfigOverride,element:e,addCSSToShadowRoot:i,addCSSToDocument:s,tableConfig:o,dashboardConfig:u}},get children(){return Ye(fut,{get result(){return n()},element:e,get scrollEl(){return t.scrollEl},get vegaConfigOverride(){return t.vegaConfigOverride}})}})}})}function fut(t){const e=On(()=>aut(t.result,{getVegaConfigOverride:t.vegaConfigOverride})),n=()=>{const i=e().modelTag,s=e().resultTag,o=i.tag("theme"),u=s.tag("theme");return{modelTag:i,resultTag:s,modelTheme:o,localTheme:u}};io(()=>{if(t.element){const i=xut(n().modelTheme,n().localTheme);for(const[s,o]of Object.entries(i))t.element.style.setProperty(s,o)}});const r=()=>vc({field:t.result.resultExplore,dataColumn:t.result.data,resultMetadata:e(),tag:n().resultTag,customProps:{table:{scrollEl:t.scrollEl},dashboard:{scrollEl:t.scrollEl}}});return Ye(use.Provider,{get value(){return e()},get children(){return r().renderValue}})}function no(t,...e){let n;for(const r of e)if(n=r==null?void 0:r.text(t),typeof n<"u")break;return n??`var(--malloy-theme--${t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()})`}function xut(t,e){const n={},r=no("tableRowHeight",e,t),i=no("tableBodyColor",e,t),s=no("tableFontSize",e,t),o=no("tableHeaderColor",e,t),u=no("tableHeaderWeight",e,t),a=no("tableBodyWeight",e,t),l=no("tableBorder",e,t),c=no("tableBackground",e,t),f=no("tableGutterSize",e,t),x=no("tablePinnedBackground",e,t),d=no("tablePinnedBorder",e,t),p=no("fontFamily",e,t);return n["--malloy-render--table-row-height"]=r,n["--malloy-render--table-body-color"]=i,n["--malloy-render--table-font-size"]=s,n["--malloy-render--font-family"]=p,n["--malloy-render--table-header-color"]=o,n["--malloy-render--table-header-weight"]=u,n["--malloy-render--table-body-weight"]=a,n["--malloy-render--table-border"]=l,n["--malloy-render--table-background"]=c,n["--malloy-render--table-gutter-size"]=f,n["--malloy-render--table-pinned-background"]=x,n["--malloy-render--table-pinned-border"]=d,n}function dut({customElements:t=window.customElements,HTMLElement:e=window.HTMLElement}){t.get("malloy-render")?console.warn("The custom element 'malloy-render' has already been defined. Make sure you are not loading multiple versions of the malloy-render package as they could conflict."):l0e(c0e("malloy-render",{result:void 0,queryResult:void 0,modelDef:void 0,scrollEl:void 0,onClick:void 0,vegaConfigOverride:void 0,tableConfig:void 0,dashboardConfig:void 0},{customElements:t,BaseElement:e}),I0e)(cut)}function hut(){return null}const put=Object.freeze(Object.defineProperty({__proto__:null,default:hut},Symbol.toStringTag,{value:"Module"}));return dut});
@@ -0,0 +1,6 @@
1
+ function n() {
2
+ return null;
3
+ }
4
+ export {
5
+ n as default
6
+ };
@@ -81491,7 +81491,7 @@ function gXe() {
81491
81491
  return pXe();
81492
81492
  }
81493
81493
  var mXe = {}, yXe = /* @__PURE__ */ Nt("<button class=malloy-chart_debug_menu>"), EXe = /* @__PURE__ */ Nt("<div class=malloy-chart>");
81494
- const AXe = T0e(() => import("./chart/chart-dev-tool.tsx"));
81494
+ const AXe = T0e(() => import("./chart-dev-tool-BgukBFxT.mjs"));
81495
81495
  let Noe = !1;
81496
81496
  try {
81497
81497
  const t = mXe.IS_STORYBOOK;
@@ -1504,7 +1504,7 @@ ${E}`,y)}}else{if(g.urls)for(const E of g.urls)try{if(E.startsWith("internal://"
1504
1504
  .malloy-chart_debug_icon {
1505
1505
  width: 16px;
1506
1506
  }
1507
- `;var eXe=Dt('<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 24 24"stroke-width=1.5 stroke=currentColor class=malloy-chart_debug_icon><path stroke-linecap=round stroke-linejoin=round d="M11.42 15.17 17.25 21A2.652 2.652 0 0 0 21 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 1 1-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14a4.5 4.5 0 0 0 4.486-6.336l-3.276 3.277a3.004 3.004 0 0 1-2.25-2.25l3.276-3.276a4.5 4.5 0 0 0-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437 1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008v-.008Z">');function tXe(){return eXe()}var nXe={},rXe=Dt("<button class=malloy-chart_debug_menu>"),iXe=Dt("<div class=malloy-chart>");const sXe=T0e(()=>import("./chart/chart-dev-tool.tsx"));let use=!1;try{const t=nXe.IS_STORYBOOK;typeof t<"u"&&(use=!!t)}catch{}function oXe(t){Nl().addCSSToShadowRoot(ZKe);const{field:n,data:r}=t,i=t.metadata.field(n).vegaChartProps,s=t.runtime??t.metadata.field(n).runtime;if(!s)throw new Error("Charts must have a runtime defined in their metadata");const o=r;for(let _=0;_<o.length;_++)o[_].__malloyDataRecord=r[_].__malloyDataRecord;let u=[];i.mapMalloyDataToChartData&&(u=i.mapMalloyDataToChartData(n,o));const[a,l]=Ln(null),c=()=>{var _;return(_=a())==null?void 0:_.view};io(()=>{var C;const _=c();_&&(_.data("values",u),_.runAsync(),(C=t.onView)==null||C.call(t,_))});const[f,x]=Ln(null);let d=null;const p=_=>{d&&clearTimeout(d),_!==null?x(_):d=setTimeout(()=>x(null),0)},m=(_,C)=>{if(c()&&C&&i.getTooltipData){const O=i.getTooltipData(C,c());p(O)}else p(null)},g=JKe(),y=new Map,E=_=>{const C=Object.prototype.hasOwnProperty.call(_,"debounce");y.has(_.sourceId)&&(clearTimeout(y.get(_.sourceId)),y.delete(_.sourceId));let O="always";typeof _.debounce=="object"&&_.debounce.strategy&&(O=_.debounce.strategy);let F=100;typeof _.debounce=="number"?F=_.debounce:typeof _.debounce=="object"&&typeof _.debounce.time=="number"&&(F=_.debounce.time),!_.data?C?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"remove",sourceId:_.sourceId}])},F)):g.applyBrushOps([{type:"remove",sourceId:_.sourceId}]):C&&O==="always"?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])},F)):g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])};let A=[];io(()=>{var _;(_=a())==null||_.onSignal("brushOut",(C,O)=>{A=O,O.forEach(F=>{E(F)})})}),io(()=>{var O;const _=t.field.allFields.map(F=>F.isAtomicField()?F.referenceId:null),C=g.store.brushes.filter(F=>_.includes(F.fieldRefId));(O=a())==null||O.setSignalAndRun("brushIn",JSON.parse(JSON.stringify(C)))});const[v,S]=Ln(!1),b=()=>{x(null),S(!0)};return(()=>{var _=iXe();return _.addEventListener("mouseleave",()=>{x(null),g.applyBrushOps(A.filter(C=>{var O;return((O=C.data)==null?void 0:O.type)!=="measure-range"}).map(C=>({type:"remove",sourceId:C.sourceId})))}),ot(_,Ye(IKe,{get width(){return i.plotWidth},get height(){return i.plotHeight},onMouseOver:m,onViewInterface:l,get explore(){return t.field},runtime:s}),null),ot(_,Ye(MKe,{get show(){return!!f()},get children(){return Ye(QKe,{get data(){return f()}})}}),null),ot(_,Ye(Ti,{get when(){return use&&!t.devMode},get children(){return[(()=>{var C=rXe();return C.$$click=b,ot(C,Ye(tXe,{})),C})(),Ye(Ti,{get when(){return v()},get children(){return Ye(sXe,Yo({onClose:()=>S(!1)},t,{devMode:!0}))}})]}}),null),_})()}UT(["click"]);function ase(t){return t.tagParse().tag.has("hidden")}const lse={xs:28,sm:64,md:128,lg:256,xl:384,"2xl":512};function cse(t,e=0,n=0,r=0){let i={};return t.allFields.forEach(s=>{if(!ase(s))if(!s.isExploreField())i[Ms(s)]={abs:[e,e],rel:[n,n],depth:r},e++,n++;else{const[o,u,a]=cse(s,e,0,r+1);i={...i,...o},i[Ms(s)]={abs:[e,u-1],rel:[n,n+a-1],depth:r},e=u,n+=a}}),[i,e,n]}function uXe(t,e){const[n]=cse(e),r=Math.max(...Object.values(n).map(s=>s.abs[1]))+1;n[Ms(e)]={abs:[0,r-1],rel:[0,r-1],depth:-1};const i={fields:{},fieldHeaderRangeMap:n,fieldLayout(s){return this.fields[Ms(s)]},totalHeaderSize:r,maxDepth:0};for(const[s,o]of Object.entries(t.fields)){if(!(s in n))continue;const u=o.field,a={metadata:o,width:null,height:null,absoluteColumnRange:n[s].abs,relativeColumnRange:n[s].rel,depth:n[s].depth};i.maxDepth=Math.max(i.maxDepth,a.depth);const{tag:l}=u.tagParse(),c=l.tag("column"),f=c==null?void 0:c.text("width"),x=c==null?void 0:c.numeric("width");f&&lse[f]?a.width=lse[f]:x&&(a.width=x),c!=null&&c.numeric("height")&&(a.height=c.numeric("height")),i.fields[s]=a}return i}const fse=BT(),E2=()=>kT(fse);function aXe(){return eC({headerSizes:{},columnWidths:{}})}const lXe=`.malloy-table * {
1507
+ `;var eXe=Dt('<svg xmlns=http://www.w3.org/2000/svg fill=none viewBox="0 0 24 24"stroke-width=1.5 stroke=currentColor class=malloy-chart_debug_icon><path stroke-linecap=round stroke-linejoin=round d="M11.42 15.17 17.25 21A2.652 2.652 0 0 0 21 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 1 1-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14a4.5 4.5 0 0 0 4.486-6.336l-3.276 3.277a3.004 3.004 0 0 1-2.25-2.25l3.276-3.276a4.5 4.5 0 0 0-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437 1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008v-.008Z">');function tXe(){return eXe()}var nXe={},rXe=Dt("<button class=malloy-chart_debug_menu>"),iXe=Dt("<div class=malloy-chart>");const sXe=T0e(()=>Promise.resolve().then(()=>put));let use=!1;try{const t=nXe.IS_STORYBOOK;typeof t<"u"&&(use=!!t)}catch{}function oXe(t){Nl().addCSSToShadowRoot(ZKe);const{field:n,data:r}=t,i=t.metadata.field(n).vegaChartProps,s=t.runtime??t.metadata.field(n).runtime;if(!s)throw new Error("Charts must have a runtime defined in their metadata");const o=r;for(let _=0;_<o.length;_++)o[_].__malloyDataRecord=r[_].__malloyDataRecord;let u=[];i.mapMalloyDataToChartData&&(u=i.mapMalloyDataToChartData(n,o));const[a,l]=Ln(null),c=()=>{var _;return(_=a())==null?void 0:_.view};io(()=>{var C;const _=c();_&&(_.data("values",u),_.runAsync(),(C=t.onView)==null||C.call(t,_))});const[f,x]=Ln(null);let d=null;const p=_=>{d&&clearTimeout(d),_!==null?x(_):d=setTimeout(()=>x(null),0)},m=(_,C)=>{if(c()&&C&&i.getTooltipData){const O=i.getTooltipData(C,c());p(O)}else p(null)},g=JKe(),y=new Map,E=_=>{const C=Object.prototype.hasOwnProperty.call(_,"debounce");y.has(_.sourceId)&&(clearTimeout(y.get(_.sourceId)),y.delete(_.sourceId));let O="always";typeof _.debounce=="object"&&_.debounce.strategy&&(O=_.debounce.strategy);let F=100;typeof _.debounce=="number"?F=_.debounce:typeof _.debounce=="object"&&typeof _.debounce.time=="number"&&(F=_.debounce.time),!_.data?C?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"remove",sourceId:_.sourceId}])},F)):g.applyBrushOps([{type:"remove",sourceId:_.sourceId}]):C&&O==="always"?y.set(_.sourceId,setTimeout(()=>{g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])},F)):g.applyBrushOps([{type:"add",sourceId:_.sourceId,value:_.data}])};let A=[];io(()=>{var _;(_=a())==null||_.onSignal("brushOut",(C,O)=>{A=O,O.forEach(F=>{E(F)})})}),io(()=>{var O;const _=t.field.allFields.map(F=>F.isAtomicField()?F.referenceId:null),C=g.store.brushes.filter(F=>_.includes(F.fieldRefId));(O=a())==null||O.setSignalAndRun("brushIn",JSON.parse(JSON.stringify(C)))});const[v,S]=Ln(!1),b=()=>{x(null),S(!0)};return(()=>{var _=iXe();return _.addEventListener("mouseleave",()=>{x(null),g.applyBrushOps(A.filter(C=>{var O;return((O=C.data)==null?void 0:O.type)!=="measure-range"}).map(C=>({type:"remove",sourceId:C.sourceId})))}),ot(_,Ye(IKe,{get width(){return i.plotWidth},get height(){return i.plotHeight},onMouseOver:m,onViewInterface:l,get explore(){return t.field},runtime:s}),null),ot(_,Ye(MKe,{get show(){return!!f()},get children(){return Ye(QKe,{get data(){return f()}})}}),null),ot(_,Ye(Ti,{get when(){return use&&!t.devMode},get children(){return[(()=>{var C=rXe();return C.$$click=b,ot(C,Ye(tXe,{})),C})(),Ye(Ti,{get when(){return v()},get children(){return Ye(sXe,Yo({onClose:()=>S(!1)},t,{devMode:!0}))}})]}}),null),_})()}UT(["click"]);function ase(t){return t.tagParse().tag.has("hidden")}const lse={xs:28,sm:64,md:128,lg:256,xl:384,"2xl":512};function cse(t,e=0,n=0,r=0){let i={};return t.allFields.forEach(s=>{if(!ase(s))if(!s.isExploreField())i[Ms(s)]={abs:[e,e],rel:[n,n],depth:r},e++,n++;else{const[o,u,a]=cse(s,e,0,r+1);i={...i,...o},i[Ms(s)]={abs:[e,u-1],rel:[n,n+a-1],depth:r},e=u,n+=a}}),[i,e,n]}function uXe(t,e){const[n]=cse(e),r=Math.max(...Object.values(n).map(s=>s.abs[1]))+1;n[Ms(e)]={abs:[0,r-1],rel:[0,r-1],depth:-1};const i={fields:{},fieldHeaderRangeMap:n,fieldLayout(s){return this.fields[Ms(s)]},totalHeaderSize:r,maxDepth:0};for(const[s,o]of Object.entries(t.fields)){if(!(s in n))continue;const u=o.field,a={metadata:o,width:null,height:null,absoluteColumnRange:n[s].abs,relativeColumnRange:n[s].rel,depth:n[s].depth};i.maxDepth=Math.max(i.maxDepth,a.depth);const{tag:l}=u.tagParse(),c=l.tag("column"),f=c==null?void 0:c.text("width"),x=c==null?void 0:c.numeric("width");f&&lse[f]?a.width=lse[f]:x&&(a.width=x),c!=null&&c.numeric("height")&&(a.height=c.numeric("height")),i.fields[s]=a}return i}const fse=BT(),E2=()=>kT(fse);function aXe(){return eC({headerSizes:{},columnWidths:{}})}const lXe=`.malloy-table * {
1508
1508
  box-sizing: border-box;
1509
1509
  }
1510
1510
 
@@ -1847,4 +1847,4 @@ ${E}`,y)}}else{if(g.urls)for(const E of g.urls)try{if(E.startsWith("internal://"
1847
1847
  'calt' 1;
1848
1848
  }
1849
1849
  }
1850
- `,Yle=BT(),Nl=()=>{const t=kT(Yle);if(!t)throw new Error("ConfigContext missing a value; did you provide a ConfigProvider?");return t};function cut(t,{element:e}){const n=On(()=>t.result?t.result:t.queryResult&&t.modelDef?new NB.Result(t.queryResult,t.modelDef):null),r=new Set;function i(a){const l=e.renderRoot;if(!(l instanceof ShadowRoot)){console.warn("Couldn't add CSS to render element, it is not rendering in a ShadowRoot");return}if(!r.has(a)){const c=new CSSStyleSheet;c.replaceSync(a),l.adoptedStyleSheets.push(c),r.add(a)}}function s(a,l){if(!document.getElementById(a)){const c=document.createElement("style");c.id=a,c.textContent=l,document.head.appendChild(c)}}i(lut);const o=()=>Object.assign({disableVirtualization:!1,rowLimit:1/0},t.tableConfig),u=()=>Object.assign({disableVirtualization:!1},t.dashboardConfig);return Ye(Ti,{get when(){return n()},get children(){return Ye(Yle.Provider,{get value(){return{onClick:t.onClick,vegaConfigOverride:t.vegaConfigOverride,element:e,addCSSToShadowRoot:i,addCSSToDocument:s,tableConfig:o,dashboardConfig:u}},get children(){return Ye(fut,{get result(){return n()},element:e,get scrollEl(){return t.scrollEl},get vegaConfigOverride(){return t.vegaConfigOverride}})}})}})}function fut(t){const e=On(()=>aut(t.result,{getVegaConfigOverride:t.vegaConfigOverride})),n=()=>{const i=e().modelTag,s=e().resultTag,o=i.tag("theme"),u=s.tag("theme");return{modelTag:i,resultTag:s,modelTheme:o,localTheme:u}};io(()=>{if(t.element){const i=xut(n().modelTheme,n().localTheme);for(const[s,o]of Object.entries(i))t.element.style.setProperty(s,o)}});const r=()=>vc({field:t.result.resultExplore,dataColumn:t.result.data,resultMetadata:e(),tag:n().resultTag,customProps:{table:{scrollEl:t.scrollEl},dashboard:{scrollEl:t.scrollEl}}});return Ye(ose.Provider,{get value(){return e()},get children(){return r().renderValue}})}function no(t,...e){let n;for(const r of e)if(n=r==null?void 0:r.text(t),typeof n<"u")break;return n??`var(--malloy-theme--${t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()})`}function xut(t,e){const n={},r=no("tableRowHeight",e,t),i=no("tableBodyColor",e,t),s=no("tableFontSize",e,t),o=no("tableHeaderColor",e,t),u=no("tableHeaderWeight",e,t),a=no("tableBodyWeight",e,t),l=no("tableBorder",e,t),c=no("tableBackground",e,t),f=no("tableGutterSize",e,t),x=no("tablePinnedBackground",e,t),d=no("tablePinnedBorder",e,t),p=no("fontFamily",e,t);return n["--malloy-render--table-row-height"]=r,n["--malloy-render--table-body-color"]=i,n["--malloy-render--table-font-size"]=s,n["--malloy-render--font-family"]=p,n["--malloy-render--table-header-color"]=o,n["--malloy-render--table-header-weight"]=u,n["--malloy-render--table-body-weight"]=a,n["--malloy-render--table-border"]=l,n["--malloy-render--table-background"]=c,n["--malloy-render--table-gutter-size"]=f,n["--malloy-render--table-pinned-background"]=x,n["--malloy-render--table-pinned-border"]=d,n}function dut({customElements:t=window.customElements,HTMLElement:e=window.HTMLElement}){t.get("malloy-render")?console.warn("The custom element 'malloy-render' has already been defined. Make sure you are not loading multiple versions of the malloy-render package as they could conflict."):l0e(c0e("malloy-render",{result:void 0,queryResult:void 0,modelDef:void 0,scrollEl:void 0,onClick:void 0,vegaConfigOverride:void 0,tableConfig:void 0,dashboardConfig:void 0},{customElements:t,BaseElement:e}),I0e)(cut)}dut({})});
1850
+ `,Yle=BT(),Nl=()=>{const t=kT(Yle);if(!t)throw new Error("ConfigContext missing a value; did you provide a ConfigProvider?");return t};function cut(t,{element:e}){const n=On(()=>t.result?t.result:t.queryResult&&t.modelDef?new NB.Result(t.queryResult,t.modelDef):null),r=new Set;function i(a){const l=e.renderRoot;if(!(l instanceof ShadowRoot)){console.warn("Couldn't add CSS to render element, it is not rendering in a ShadowRoot");return}if(!r.has(a)){const c=new CSSStyleSheet;c.replaceSync(a),l.adoptedStyleSheets.push(c),r.add(a)}}function s(a,l){if(!document.getElementById(a)){const c=document.createElement("style");c.id=a,c.textContent=l,document.head.appendChild(c)}}i(lut);const o=()=>Object.assign({disableVirtualization:!1,rowLimit:1/0},t.tableConfig),u=()=>Object.assign({disableVirtualization:!1},t.dashboardConfig);return Ye(Ti,{get when(){return n()},get children(){return Ye(Yle.Provider,{get value(){return{onClick:t.onClick,vegaConfigOverride:t.vegaConfigOverride,element:e,addCSSToShadowRoot:i,addCSSToDocument:s,tableConfig:o,dashboardConfig:u}},get children(){return Ye(fut,{get result(){return n()},element:e,get scrollEl(){return t.scrollEl},get vegaConfigOverride(){return t.vegaConfigOverride}})}})}})}function fut(t){const e=On(()=>aut(t.result,{getVegaConfigOverride:t.vegaConfigOverride})),n=()=>{const i=e().modelTag,s=e().resultTag,o=i.tag("theme"),u=s.tag("theme");return{modelTag:i,resultTag:s,modelTheme:o,localTheme:u}};io(()=>{if(t.element){const i=xut(n().modelTheme,n().localTheme);for(const[s,o]of Object.entries(i))t.element.style.setProperty(s,o)}});const r=()=>vc({field:t.result.resultExplore,dataColumn:t.result.data,resultMetadata:e(),tag:n().resultTag,customProps:{table:{scrollEl:t.scrollEl},dashboard:{scrollEl:t.scrollEl}}});return Ye(ose.Provider,{get value(){return e()},get children(){return r().renderValue}})}function no(t,...e){let n;for(const r of e)if(n=r==null?void 0:r.text(t),typeof n<"u")break;return n??`var(--malloy-theme--${t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()})`}function xut(t,e){const n={},r=no("tableRowHeight",e,t),i=no("tableBodyColor",e,t),s=no("tableFontSize",e,t),o=no("tableHeaderColor",e,t),u=no("tableHeaderWeight",e,t),a=no("tableBodyWeight",e,t),l=no("tableBorder",e,t),c=no("tableBackground",e,t),f=no("tableGutterSize",e,t),x=no("tablePinnedBackground",e,t),d=no("tablePinnedBorder",e,t),p=no("fontFamily",e,t);return n["--malloy-render--table-row-height"]=r,n["--malloy-render--table-body-color"]=i,n["--malloy-render--table-font-size"]=s,n["--malloy-render--font-family"]=p,n["--malloy-render--table-header-color"]=o,n["--malloy-render--table-header-weight"]=u,n["--malloy-render--table-body-weight"]=a,n["--malloy-render--table-border"]=l,n["--malloy-render--table-background"]=c,n["--malloy-render--table-gutter-size"]=f,n["--malloy-render--table-pinned-background"]=x,n["--malloy-render--table-pinned-border"]=d,n}function dut({customElements:t=window.customElements,HTMLElement:e=window.HTMLElement}){t.get("malloy-render")?console.warn("The custom element 'malloy-render' has already been defined. Make sure you are not loading multiple versions of the malloy-render package as they could conflict."):l0e(c0e("malloy-render",{result:void 0,queryResult:void 0,modelDef:void 0,scrollEl:void 0,onClick:void 0,vegaConfigOverride:void 0,tableConfig:void 0,dashboardConfig:void 0},{customElements:t,BaseElement:e}),I0e)(cut)}dut({});function hut(){return null}const put=Object.freeze(Object.defineProperty({__proto__:null,default:hut},Symbol.toStringTag,{value:"Module"}))});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@malloydata/render",
3
- "version": "0.0.211-dev241112165721",
3
+ "version": "0.0.211",
4
4
  "license": "MIT",
5
5
  "main": "dist/module/index.umd.js",
6
6
  "types": "dist/index.d.ts",
@@ -30,7 +30,7 @@
30
30
  "build-types": "tsc --build --declaration --emitDeclarationOnly"
31
31
  },
32
32
  "dependencies": {
33
- "@malloydata/malloy": "^0.0.211-dev241112165721",
33
+ "@malloydata/malloy": "^0.0.211",
34
34
  "@tanstack/solid-virtual": "^3.10.4",
35
35
  "component-register": "^0.8.6",
36
36
  "lodash": "^4.17.20",
@@ -1,19 +1,14 @@
1
- import {fileURLToPath} from 'node:url';
2
- import {defineConfig} from 'vite';
1
+ import {PluginOption, defineConfig} from 'vite';
3
2
  import solidPlugin from 'vite-plugin-solid';
4
3
 
5
4
  export default defineConfig({
6
- plugins: [solidPlugin()],
5
+ plugins: [viteStripMalloyDevToolsPlugin(), solidPlugin()],
7
6
  optimizeDeps: {
8
7
  include: ['@malloydata/malloy'],
9
8
  },
10
9
  build: {
11
10
  rollupOptions: {
12
- external: [
13
- fileURLToPath(
14
- new URL('src/component/chart/chart-dev-tool.tsx', import.meta.url)
15
- ),
16
- ],
11
+ external: [],
17
12
  output: {},
18
13
  },
19
14
  commonjsOptions: {
@@ -24,3 +19,18 @@ export default defineConfig({
24
19
  'process.env': {},
25
20
  },
26
21
  });
22
+
23
+ function viteStripMalloyDevToolsPlugin(): PluginOption {
24
+ return {
25
+ name: 'vite-plugin-strip-malloy-dev-tools',
26
+ async transform(code, id) {
27
+ if (id.endsWith('chart-dev-tool.tsx')) {
28
+ return `
29
+ export default function noop() {
30
+ return null;
31
+ }
32
+ `;
33
+ }
34
+ },
35
+ };
36
+ }