UNPKG

@finos/perspective-viewer

Version:

The `<perspective-viewer>` Custom Element, frontend for Perspective.js

3 lines (2 loc) 4.9 kB
var o=Object.defineProperty;var f=e=>o(e,"__esModule",{value:!0});var l=(e,r)=>{f(e);for(var t in r)o(e,t,{get:r[t],enumerable:!0})};l(exports,{convert:()=>_});function _(e,{warn:r=!0,replace_defaults:t=!1}={}){if(typeof e=="object"&&!(e instanceof ArrayBuffer)){let n=JSON.parse(JSON.stringify(e));return"viewers"in n&&"detail"in n?g(n,{warn:r,replace_defaults:t}):p(n,!1,{warn:r,replace_defaults:t})}else return e}function g(e,r){for(let t in e.viewers)e.viewers[t]=p(e.viewers[t],!0,r),"master"in e.viewers[t]||(e.viewers[t].master=!1,r.warn&&console.warn('Deprecated perspective missing attribute "master" set to default')),"linked"in e.viewers[t]||(e.viewers[t].linked=!1,r.warn&&console.warn('Deprecated perspective missing attribute "linked" set to default'));return e}function p(e,r,t){return m(e,[w,v,d,k,t.replace_defaults?b:!1,$,D,r?S:Y].filter(n=>!!n),t)}function m(e,r,t){for(let n of r)e=n(e,t);return e}function b(e,r){for(let t of["group_by","split_by","filter","sort"])e[t]===null&&(e[t]=[],r.warn&&console.warn(`Deprecated perspective missing attribute "${t}" set to default"`)),"aggregates"in e&&e.aggregates===null&&(e.aggregates={},r.warn&&console.warn('Deprecated perspective missing attribute "aggregates" set to default"'));return e}function s(e,r){return function(t,n){let i=0;for(let a of r)if(a in t){if(i++>0)throw new Error(`Duplicate "${e}" fields`);t[e]=t[a],a!==e&&(delete t[a],n.warn&&console.warn(`Deprecated perspective attribute "${a}" renamed "${e}"`))}return t}}var w=s("group_by",["group_by","row_pivots","row-pivot","row-pivots","row_pivot"]),v=s("split_by",["split_by","column_pivots","column-pivot","column-pivots","column_pivot","col_pivots","col-pivot","col-pivots","col_pivot"]),d=s("filter",["filter","filters"]);function y(e,r,t,n,i){if(e.test(t)){let a=t.replace(e,r);i.warn&&console.warn(`Deprecated perspective "expression" attribute value "${t}" updated to "${a}"`);for(let c of["group_by","split_by"])if(c in n)for(let u in n[c])n[c][u]===t.replace(/"/g,"")&&(n[c][u]=a,i.warn&&console.warn(`Deprecated perspective expression in "${c}" attribute "${t}" replaced with "${a}"`));for(let c of n.filter||[])c[0]===t.replace(/"/g,"")&&(c[0]=a,i.warn&&console.warn(`Deprecated perspective expression in "filter" attribute "${t}" replaced with "${a}"`));for(let c of n.sort||[])c[0]===t.replace(/"/g,"")&&(c[0]=a,i.warn&&console.warn(`Deprecated perspective expression in "sort" attribute "${t}" replaced with "${a}"`));return a}else return t}function k(e,r){if(e["computed-columns"]){if("expressions"in e)throw new Error('Duplicate "expressions" and "computed-columns');e.expressions=e["computed-columns"],delete e["computed-columns"],r.warn&&console.warn('Deprecated perspective attribute "computed-columns" renamed "expressions"');let t=[[/^year_bucket\("(.+?)"\)/,`bucket("$1", 'y')`],[/^month_bucket\("(.+?)"\)/,`bucket("$1", 'M')`],[/^day_bucket\("(.+?)"\)/,`bucket("$1", 'd')`],[/^hour_bucket\("(.+?)"\)/,`bucket("$1", 'h')`],[/^minute_bucket\("(.+?)"\)/,`bucket("$1", 'm')`],[/^second_bucket\("(.+?)"\)/,`bucket("$1", 's')`]];for(let n in e.expressions){let i=e.expressions[n];for(let[a,c]of t)i=y(a,c,i,e,r);e.expressions[n]=i}}return e}function $(e,r){let t={datagrid:"Datagrid",Datagrid:"Datagrid",d3_y_area:"Y Area","Y Area":"Y Area",d3_y_line:"Y Line","Y Line":"Y Line",d3_xy_line:"X/Y Line","X/Y Line":"X/Y Line",d3_y_scatter:"Y Scatter","Y Scatter":"Y Scatter",d3_xy_scatter:"X/Y Scatter","X/Y Scatter":"X/Y Scatter",d3_x_bar:"X Bar","X Bar":"X Bar",d3_y_bar:"Y Bar","Y Bar":"Y Bar",d3_heatmap:"Heatmap",Heatmap:"Heatmap",d3_treemap:"Treemap",Treemap:"Treemap",d3_sunburst:"Sunburst",Sunburst:"Sunburst"};return"plugin"in e&&e.plugin!==t[e.plugin]&&(e.plugin=t[e.plugin],r.warn&&console.warn(`Deprecated perspective "plugin" attribute value "${e.plugin}" updated to "${t[e.plugin]}"`)),e}function D(e,r){if(e.plugin==="Datagrid"&&!!e.plugin_config&&!e.plugin_config.columns){r.warn&&console.warn('Deprecated perspective attribute "plugin_config" moved to "plugin_config.columns"');let t={};for(let n of Object.keys(e.plugin_config)){let i=e.plugin_config[n];delete e.plugin_config[n],typeof i.color_mode=="string"&&(i.number_color_mode=i.color_mode,delete i.color_mode,r.warn&&console.warn('Deprecated perspective attribute "color_mode" renamed "number_color_mode"')),t[n]=i}e.plugin_config.columns=t,r.replace_defaults&&(e.plugin_config.editable=!1,e.plugin_config.scroll_lock=!0)}return e}function Y(e,r){let t=["editable","selectable","name","table","master","linked"];for(let n of t)n in e&&(delete e[n],r.warn&&console.warn(`Deprecated perspective attribute "${n}" removed`));return e}function S(e,r){let t=["editable","selectable","name","table","master","linked"];for(let n of t)n in e&&e[n]===null&&(delete e[n],r.warn&&console.warn(`Deprecated perspective attribute "${n}" removed`));return e} //# sourceMappingURL=migrate.js.map