@eeacms/react-chart-editor
Version:
plotly.js chart editor react component UI
2 lines • 5.24 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _PlotlyFold=_interopRequireDefault(require("./PlotlyFold"));var _TraceRequiredPanel=_interopRequireDefault(require("./TraceRequiredPanel"));var _propTypes=_interopRequireDefault(require("prop-types"));var _react=_interopRequireWildcard(require("react"));var _lib=require("../../lib");var _constants=require("../../lib/constants");function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f={__proto__:null,default:e};if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f)}for(const t in e)"default"!==t&&{}.hasOwnProperty.call(e,t)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,t))&&(i.get||i.set)?o(f,t,i):f[t]=e[t]);return f})(e,t)}function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}(function(){var enterModule=typeof reactHotLoaderGlobal!=="undefined"?reactHotLoaderGlobal.enterModule:undefined;enterModule&&enterModule(module)})();var __signature__=typeof reactHotLoaderGlobal!=="undefined"?reactHotLoaderGlobal.default.signature:function(a){return a};const TraceFold=(0,_lib.connectTraceToPlot)(_PlotlyFold.default);const NonCartesianSubplotFold=(0,_lib.connectNonCartesianSubplotToLayout)(_PlotlyFold.default);const CartesianSubplotFold=(0,_lib.connectCartesianSubplotToLayout)(_PlotlyFold.default);class SubplotAccordion extends _react.Component{render(){const{data=[],layout={},localize:_}=this.context;const{children}=this.props;const subplotFolds=[];const allCartesianAxisCombinations=data.reduce((acc,curVal,inx)=>{if(_constants.TRACE_TO_AXIS.cartesian.some(c=>c===curVal.type)){const xaxis="xaxis"+(curVal.xaxis?curVal.xaxis.substring(1):"");const yaxis="yaxis"+(curVal.yaxis?curVal.yaxis.substring(1):"");const existingComboIndex=acc.findIndex(t=>t.xaxis===xaxis&&t.yaxis===yaxis);if(existingComboIndex===-1){acc.push({xaxis:xaxis,yaxis:yaxis,xaxisName:curVal.xaxis?(0,_lib.getSubplotTitle)(curVal.xaxis,"x",_):"X 1",yaxisName:curVal.yaxis?(0,_lib.getSubplotTitle)(curVal.yaxis,"y",_):"Y 1",index:[inx]})}else{acc[existingComboIndex].index.push(inx)}}return acc},[]);allCartesianAxisCombinations.forEach(d=>subplotFolds[d.index[0]]=_react.default.createElement(CartesianSubplotFold,{key:d.index[0],traceIndexes:d.index,canDelete:false,xaxis:d.xaxis,yaxis:d.yaxis,name:"".concat(d.xaxisName," | ").concat(d.yaxisName)},children));Object.keys(layout).forEach(layoutKey=>{const traceIndexes=[];let subplotName;if(["geo","mapbox","polar","gl3d","ternary"].some(subplotType=>{subplotName=(0,_lib.getSubplotTitle)(layoutKey,subplotType,_);const trIndex=_constants.SUBPLOT_TO_ATTR[subplotType].layout===layoutKey?data.findIndex(trace=>_constants.TRACE_TO_AXIS[subplotType].some(tt=>tt===trace.type)):data.findIndex(trace=>trace[_constants.SUBPLOT_TO_ATTR[subplotType].data]===layoutKey);if(trIndex!==-1){traceIndexes.push(trIndex)}return layoutKey.startsWith(_constants.SUBPLOT_TO_ATTR[subplotType].layout)})){subplotFolds[traceIndexes[0]]=_react.default.createElement(NonCartesianSubplotFold,{key:layoutKey,traceIndexes:traceIndexes,canDelete:false,subplot:layoutKey,name:subplotName},children)}});const counter={pie:0,table:0,sunburst:0,treemap:0,sankey:0,parcoords:0,parcats:0};data.forEach((d,i)=>{if(d.type==="pie"&&d.values||["pie","table","sunburst","treemap","sankey","parcoords","parcats","funnelarea"].includes(d.type)){counter[d.type]++;const currentCount=counter[d.type];subplotFolds[i]=_react.default.createElement(TraceFold,{key:i,traceIndexes:[i],canDelete:false,name:(0,_lib.capitalize)(d.type)+(currentCount>1?" "+currentCount:"")},children)}});return _react.default.createElement(_TraceRequiredPanel.default,null,subplotFolds)}__reactstandin__regenerateByEval(key,code){this[key]=eval(code)}}SubplotAccordion.contextTypes={fullData:_propTypes.default.array,data:_propTypes.default.array,layout:_propTypes.default.object,localize:_propTypes.default.func};SubplotAccordion.propTypes={children:_propTypes.default.node};const _default=SubplotAccordion;var _default2=exports.default=_default;;(function(){var reactHotLoader=typeof reactHotLoaderGlobal!=="undefined"?reactHotLoaderGlobal.default:undefined;if(!reactHotLoader){return}reactHotLoader.register(TraceFold,"TraceFold","/react-chart-editor/src/components/containers/SubplotAccordion.js");reactHotLoader.register(NonCartesianSubplotFold,"NonCartesianSubplotFold","/react-chart-editor/src/components/containers/SubplotAccordion.js");reactHotLoader.register(CartesianSubplotFold,"CartesianSubplotFold","/react-chart-editor/src/components/containers/SubplotAccordion.js");reactHotLoader.register(SubplotAccordion,"SubplotAccordion","/react-chart-editor/src/components/containers/SubplotAccordion.js");reactHotLoader.register(_default,"default","/react-chart-editor/src/components/containers/SubplotAccordion.js")})();;(function(){var leaveModule=typeof reactHotLoaderGlobal!=="undefined"?reactHotLoaderGlobal.leaveModule:undefined;leaveModule&&leaveModule(module)})();
//# sourceMappingURL=SubplotAccordion.js.map