@hopara/react 0.1.102 → 0.1.103

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 (2) hide show
  1. package/build/index.js +1 -1
  2. package/package.json +12 -12
package/build/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*! For license information please see index.js.LICENSE.txt */
2
- module.exports=function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(exports,"__esModule",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value==="object"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,"default",{enumerable:true,value});if(mode&2&&typeof value!="string")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module["default"]}:function getModuleExports(){return module};__webpack_require__.d(getter,"a",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p="";return __webpack_require__(__webpack_require__.s=144)}([function(module,exports){module.exports=require("react/jsx-runtime")},function(module,__webpack_exports__,__webpack_require__){"use strict";var external_typesafe_actions_=__webpack_require__(2);const actions={analyticsEvent:Object(external_typesafe_actions_["createAction"])("WA_EVENT")()};var GAActions=actions;const AppActions_actions={fetch:{request:Object(external_typesafe_actions_["createAction"])("FETCH_APP_REQUEST")(),success:Object(external_typesafe_actions_["createAction"])("FETCH_APP_SUCCESS")(),failure:Object(external_typesafe_actions_["createAction"])("FETCH_APP_FAILURE")()},create:{request:Object(external_typesafe_actions_["createAction"])("CREATE_APP_REQUEST")(),success:Object(external_typesafe_actions_["createAction"])("CREATE_APP_SUCCESS")(),failure:Object(external_typesafe_actions_["createAction"])("CREATE_APP_FAILURE")()},appPageLoaded:Object(external_typesafe_actions_["createAction"])("APP_PAGE_LOADED")(),appEditToggle:Object(external_typesafe_actions_["createAction"])("APP_EDIT_TOGGLE")(),timeTravelRequested:Object(external_typesafe_actions_["createAction"])("TIME_TRAVEL_REQUESTED")(),delete:Object(external_typesafe_actions_["createAsyncAction"])("DELETE_APP_REQUEST","DELETE_APP_SUCCESS","DELETE_APP_FAILURE")(),save:Object(external_typesafe_actions_["createAsyncAction"])("EDIT_APP_REQUEST","EDIT_APP_SUCCESS","EDIT_APP_FAILURE")(),restoreVersion:Object(external_typesafe_actions_["createAsyncAction"])("RESTORE_APP_VERSION_REQUEST","RESTORE_APP_VERSION_SUCCESS","RESTORE_APP_VERSION_FAILURE")(),checkoutVersion:Object(external_typesafe_actions_["createAsyncAction"])("CHECKOUT_APP_VERSION_REQUEST","CHECKOUT_APP_VERSION_SUCCESS","CHECKOUT_APP_VERSION_FAILURE")(),discardChanges:{request:Object(external_typesafe_actions_["createAction"])("DISCARD_APP_CHANGES_REQUEST")()},navigateToScreen:Object(external_typesafe_actions_["createAction"])("NavigateToScreen")()};var AppActions=AppActions_actions;const AppsActions_actions={appsLoaded:Object(external_typesafe_actions_["createAction"])("APPS_PAGE_LOADED")(),fetchApps:{success:Object(external_typesafe_actions_["createAction"])("FETCH_APPS_SUCCESS")(),failure:Object(external_typesafe_actions_["createAction"])("FETCH_APPS_FAILURE")()}};var AppsActions=AppsActions_actions;const AuthActions_actions={signedIn:Object(external_typesafe_actions_["createAction"])("SIGNED_IN")()};var AuthActions=AuthActions_actions;const DataBrowserActions_actions={rowChanged:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_CHANGED")(),rowPlaced:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_PLACED")(),rowUnplaced:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_UNPLACED")(),rowSelected:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_SELECTED")(),rowUnselected:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_UNSELECTED")(),rowCreate:{requested:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_CREATE_REQUESTED")()},rowDelete:{requested:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_DELETE_REQUESTED")()},onRowDetailsLoaded:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_DETAILS_LOADED")(),fetchDataBrowserRows:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROWS_FETCH_REQUESTED")(),dataBrowserRowsFetched:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROWS_FETCHED")(),dataBrowserSearch:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_SEARCH")(),navigateToPosition:Object(external_typesafe_actions_["createAction"])("NAVIGATE_TO_POSITION")(),paginateNext:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_PAGINATE_NEXT")(),paginatePrev:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_PAGINATE_PREVIOUS")()};var DataBrowserActions=DataBrowserActions_actions;const QueryActions_actions={dataListUpdated:Object(external_typesafe_actions_["createAction"])("DATA_LIST_UPDATED")()};var QueryActions=QueryActions_actions;const FilterActions_actions={sidebarFiltersClear:Object(external_typesafe_actions_["createAction"])("SIDEBAR_FILTERS_CLEAR")(),filterToggle:Object(external_typesafe_actions_["createAction"])("FILTER_TOGGLE")(),filterSearch:Object(external_typesafe_actions_["createAction"])("FILTER_SEARCH")(),filterSearchFetched:Object(external_typesafe_actions_["createAction"])("FILTER_SEARCH_FETCHED")()};var FilterActions=FilterActions_actions;var HocActions=__webpack_require__(63);const LayerActions_actions={imageTransformed:Object(external_typesafe_actions_["createAction"])("LAYER_IMAGE_TRANSFORMED")(),imageUploaded:Object(external_typesafe_actions_["createAction"])("LAYER_IMAGE_UPLOADED")(),imageEditing:Object(external_typesafe_actions_["createAction"])("LAYER_IMAGE_EDITING")(),dragStart:Object(external_typesafe_actions_["createAction"])("LAYER_DRAG_START")(),dragEnded:Object(external_typesafe_actions_["createAction"])("LAYER_DRAG_ENDED")(),click:Object(external_typesafe_actions_["createAction"])("LAYER_CLICK")(),clickOut:Object(external_typesafe_actions_["createAction"])("LAYER_CLICK_OUT")(),mouseHover:Object(external_typesafe_actions_["createAction"])("LAYER_MOUSE_HOVER")(),mouseLeft:Object(external_typesafe_actions_["createAction"])("LAYER_MOUSE_LEFT")(),nameChanged:Object(external_typesafe_actions_["createAction"])("LAYER_NAME_CHANGED")(),visibilityChanged:Object(external_typesafe_actions_["createAction"])("LAYER_VISIBILITY_CHANGED")(),queryChanged:Object(external_typesafe_actions_["createAction"])("LAYER_QUERY_CHANGED")(),transformChanged:Object(external_typesafe_actions_["createAction"])("LAYER_TRANSFORM_CHANGED")(),animationChanged:Object(external_typesafe_actions_["createAction"])("LAYER_ANIMATION_CHANGED")(),encodingChanged:Object(external_typesafe_actions_["createAction"])("LAYER_ENCODING_CHANGED")(),encodingPositionChanged:Object(external_typesafe_actions_["createAction"])("LAYER_POSITION_ENCODING_CHANGED")(),select:Object(external_typesafe_actions_["createAction"])("LAYER_SELECT")(),move:Object(external_typesafe_actions_["createAction"])("LAYER_MOVE")(),delete:Object(external_typesafe_actions_["createAction"])("LAYER_DELETE")(),createDraft:Object(external_typesafe_actions_["createAsyncAction"])("LAYER_CREATE_DRAFT_REQUEST","LAYER_CREATE_DRAFT_SUCCESS","LAYER_CREATE_DRAFT_FAILURE")()};var LayerActions=LayerActions_actions;var NavigationActions=__webpack_require__(76);const RootActions_actions={pageView:Object(external_typesafe_actions_["createAction"])("PAGE_VIEW")(),genericError:Object(external_typesafe_actions_["createAction"])("ERROR")()};var RootActions=RootActions_actions;const RowsetActions_actions={optimisticRowSaved:Object(external_typesafe_actions_["createAction"])("OPTIMISTIC_ROW_SAVED")(),rowSaved:Object(external_typesafe_actions_["createAction"])("ROW_SAVED")(),rowCreated:Object(external_typesafe_actions_["createAction"])("ROW_CREATED")(),rowDeleted:Object(external_typesafe_actions_["createAction"])("ROW_DELETED")(),rowFetched:Object(external_typesafe_actions_["createAction"])("ROW_FETCHED")(),fetchDataRequested:Object(external_typesafe_actions_["createAction"])("FETCH_DATA_REQUESTED")(),fetchData:Object(external_typesafe_actions_["createAsyncAction"])("FETCH_DATA_REQUEST","FETCH_DATA_SUCCESS","FETCH_DATA_FAILURE")()};var RowsetActions=RowsetActions_actions;var ViewActions=__webpack_require__(48);const SidebarActions_actions={toggle:Object(external_typesafe_actions_["createAction"])("SIDEBAR_TOGGLE")()};var SidebarActions=SidebarActions_actions;const UpdateActions_actions={subscribe:Object(external_typesafe_actions_["createAction"])("UPDATE_SUBSCRIBE")()};var UpdateActions=UpdateActions_actions;const encodingScopeActions={changed:Object(external_typesafe_actions_["createAction"])("ENCODING_SCOPE_CHANGED")()};const templateActions={createApp:Object(external_typesafe_actions_["createAsyncAction"])("CREATE_APP_FROM_TEMPLATE_REQUEST","CREATE_APP_FROM_TEMPLATE_SUCCESS","CREATE_APP_FROM_TEMPLATE_FAILURE")(),fetchTemplates:Object(external_typesafe_actions_["createAsyncAction"])("FETCH_TEMPLATES_REQUEST","FETCH_TEMPLATES_SUCCESS","FETCH_TEMPLATES_FAILURE")()};const visualizationActions={jumpRequested:Object(external_typesafe_actions_["createAction"])("JUMP_REQUESTED")(),rowJumpRequested:Object(external_typesafe_actions_["createAction"])("ROW_JUMP_REQUESTED")(),jumpBackRequested:Object(external_typesafe_actions_["createAction"])("JUMP_BACK_REQUESTED")(),setInitialPosition:Object(external_typesafe_actions_["createAction"])("SET_INITIAL_POSITION")(),save:Object(external_typesafe_actions_["createAsyncAction"])("VISUALIZATION_SAVE_REQUEST","VISUALIZATION_SAVE_SUCCESS","VISUALIZATION_SAVE_FAILURE")(),changeTab:Object(external_typesafe_actions_["createAction"])("CHANGE_VISUALIZATION_TAB")()};const worldActions={worldCreated:Object(external_typesafe_actions_["createAction"])("WORLD_CREATED")()};const Actions_actions={analytics:GAActions,app:AppActions,apps:AppsActions,auth:AuthActions,dataBrowser:DataBrowserActions,query:QueryActions,filter:FilterActions,hoc:HocActions["a"],layer:LayerActions,navigation:NavigationActions["b"],root:RootActions,rowset:RowsetActions,view:ViewActions["a"],sidebar:SidebarActions,update:UpdateActions,template:templateActions,encodingScope:encodingScopeActions,visualization:visualizationActions,world:worldActions};var Actions=__webpack_exports__["a"]=Actions_actions},function(module,exports){module.exports=require("typesafe-actions")},function(module,exports){module.exports=require("lodash/fp")},function(module,exports){module.exports=require("redux-saga/effects")},function(module,exports){module.exports=require("react")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"f",(function(){return Row["a"]}));__webpack_require__.d(__webpack_exports__,"g",(function(){return Rows["a"]}));__webpack_require__.d(__webpack_exports__,"e",(function(){return Query_Query}));__webpack_require__.d(__webpack_exports__,"d",(function(){return Queries_Queries}));__webpack_require__.d(__webpack_exports__,"a",(function(){return Column_Column}));__webpack_require__.d(__webpack_exports__,"c",(function(){return Columns_Columns}));__webpack_require__.d(__webpack_exports__,"i",(function(){return Geti["a"]}));__webpack_require__.d(__webpack_exports__,"b",(function(){return ColumnType["a"]}));__webpack_require__.d(__webpack_exports__,"h",(function(){return ValueFormatter["a"]}));var Row=__webpack_require__(55);var Rows=__webpack_require__(69);var initializerDefineProperty=__webpack_require__(13);var applyDecoratedDescriptor=__webpack_require__(11);var initializerWarningHelper=__webpack_require__(40);var src=__webpack_require__(8);var external_class_transformer_=__webpack_require__(7);var external_reflect_metadata_=__webpack_require__(47);var ColumnType=__webpack_require__(21);var external_js_sentencecase_=__webpack_require__(49);var external_js_sentencecase_default=__webpack_require__.n(external_js_sentencecase_);class Column_Column{constructor(props){this.name=void 0;this.id=void 0;this.type=void 0;this.stats=void 0;this.quantitative=void 0;this.temporal=void 0;if(props){this.name=props.name;this.type=props.type;this.stats=props.stats;this.id=props.id}}isUpperCase(string){return string===string.toUpperCase()}getType(){if(this.type)return this.type;return ColumnType["b"]}isType(type){return this.type===type}getLabel(){if(this.isUpperCase(this.name))return this.name;return external_js_sentencecase_default()(this.name)}isQuantitative(){return this.quantitative}isTemporal(){return this.temporal}isPrivate(){return this.name.startsWith("_")}getName(){return this.name}getStats(){return this.stats}isGeometry(){return this.type===ColumnType["a"].GEOMETRY}}class Columns_Columns extends Array{get(name){return this.find((c=>c.name.toLowerCase()===(name===null||name===void 0?void 0:name.toLowerCase())))}getPublics(){return new Columns_Columns(...this.filter((column=>!column.isPrivate())))}getQuantitatives(){return new Columns_Columns(...this.filter((column=>column.isQuantitative())))}getPrintables(){return new Columns_Columns(...this.filter((column=>!(column.type===ColumnType["a"].GEOMETRY||column.type===ColumnType["a"].JSON))))}getId(){return this.find((column=>column.id))}hasId(){return!!this.find((column=>column.id))}pickByNames(){let names=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];const picked=new Columns_Columns;names.forEach((name=>{const column=this.get(name);if(column)picked.push(column)}));return picked}has(name){return!!this.get(name)}}var _dec,_dec2,_class,_descriptor;let Transform_Transform=(_dec=Object(external_class_transformer_["Type"])((()=>Column_Column)),_dec2=Object(external_class_transformer_["Transform"])((_ref=>{let{value}=_ref;return Array.isArray(value)?new Columns_Columns(...value):new Columns_Columns})),_class=class Transform{constructor(){this.type=void 0;Object(initializerDefineProperty["a"])(this,"columns",_descriptor,this)}getColumns(){if(!this.columns){return new Columns_Columns}return new Columns_Columns(...this.columns)}},_descriptor=Object(applyDecoratedDescriptor["a"])(_class.prototype,"columns",[_dec,_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);var fp_=__webpack_require__(3);let QueryWriteMode;(function(QueryWriteMode){QueryWriteMode["NONE"]="NONE";QueryWriteMode["UPDATE"]="UPDATE";QueryWriteMode["INSERT"]="INSERT"})(QueryWriteMode||(QueryWriteMode={}));var Query_dec,Query_dec2,_dec3,_dec4,_dec5,_dec6,Query_class,Query_descriptor,_descriptor2,_descriptor3;let Query_Query=(Query_dec=Object(external_class_transformer_["Type"])((()=>Column_Column)),Query_dec2=Object(external_class_transformer_["Transform"])((_ref=>{let{value}=_ref;return Array.isArray(value)?new Columns_Columns(...value):new Columns_Columns})),_dec3=Object(external_class_transformer_["Type"])((()=>Transform_Transform)),_dec4=Object(external_class_transformer_["Transform"])((_ref2=>{let{value}=_ref2;return Array.isArray(value)?value:[]})),_dec5=Object(external_class_transformer_["Type"])((()=>Column_Column)),_dec6=Object(external_class_transformer_["Transform"])((_ref3=>{let{value}=_ref3;return Array.isArray(value)?new Columns_Columns(...value):new Columns_Columns})),Query_class=class Query{constructor(name,dataSource,columns){this.name=void 0;this.dataSource=void 0;this.writeMode=void 0;Object(initializerDefineProperty["a"])(this,"columns",Query_descriptor,this);Object(initializerDefineProperty["a"])(this,"transforms",_descriptor2,this);Object(initializerDefineProperty["a"])(this,"writeColumns",_descriptor3,this);this.name=name;this.dataSource=dataSource;this.columns=columns!==null&&columns!==void 0?columns:new Columns_Columns}initializeColumns(){if(Object(fp_["isNil"])(this.columns)){this.columns=new Columns_Columns}}getColumns(){this.initializeColumns();return new Columns_Columns(...this.columns)}getTransform(type){return this.transforms?this.transforms.find((transform=>transform.type.toLowerCase()===type.toLowerCase())):undefined}getTransformTypes(){return this.transforms?this.transforms.map((transform=>transform.type)):[]}getDataSource(){return this.dataSource}getResolutionRange(resolutionColumn){if(this.columns.has(resolutionColumn)){var _this$columns$get,_this$columns$get$sta,_this$columns$get2,_this$columns$get2$st;return new src["e"]({min:(_this$columns$get=this.columns.get(resolutionColumn))===null||_this$columns$get===void 0?void 0:(_this$columns$get$sta=_this$columns$get.stats)===null||_this$columns$get$sta===void 0?void 0:_this$columns$get$sta.min,max:(_this$columns$get2=this.columns.get(resolutionColumn))===null||_this$columns$get2===void 0?void 0:(_this$columns$get2$st=_this$columns$get2.stats)===null||_this$columns$get2$st===void 0?void 0:_this$columns$get2$st.max})}return undefined}canInsert(){return this.writeMode===QueryWriteMode.INSERT}canUpdate(){return this.writeMode===QueryWriteMode.INSERT||this.writeMode===QueryWriteMode.UPDATE}getName(){return this.name}},Query_descriptor=Object(applyDecoratedDescriptor["a"])(Query_class.prototype,"columns",[Query_dec,Query_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(applyDecoratedDescriptor["a"])(Query_class.prototype,"transforms",[_dec3,_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor3=Object(applyDecoratedDescriptor["a"])(Query_class.prototype,"writeColumns",[_dec5,_dec6],{configurable:true,enumerable:true,writable:true,initializer:null}),Query_class);class Queries_Queries extends Array{findQuery(key){if(!key)return;if(!key.query||!key.source)return;return this.find((q=>q.getName()===key.query&&q.getDataSource()===key.source))}findEntity(key){const query=this.findQuery(key);if(key.transform){return query===null||query===void 0?void 0:query.getTransform(key.transform)}return query}getColumns(key){const entity=this.findEntity(key);if(entity){return entity.columns}return new Columns_Columns}getColumn(queryKey,columnName){return this.getColumns(queryKey).find((column=>column.name===columnName))}}var Geti=__webpack_require__(60);var ValueFormatter=__webpack_require__(59)},function(module,exports){module.exports=require("class-transformer")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Bounds_Bounds}));__webpack_require__.d(__webpack_exports__,"e",(function(){return Range}));__webpack_require__.d(__webpack_exports__,"b",(function(){return Box}));__webpack_require__.d(__webpack_exports__,"d",(function(){return Point}));__webpack_require__.d(__webpack_exports__,"c",(function(){return Coordinates}));let PointEnum;(function(PointEnum){PointEnum[PointEnum["x"]=0]="x";PointEnum[PointEnum["y"]=1]="y"})(PointEnum||(PointEnum={}));class Point extends Array{constructor(){for(var _len=arguments.length,point=new Array(_len),_key=0;_key<_len;_key++){point[_key]=arguments[_key]}super(...[point[PointEnum.x],point[PointEnum.y]])}getX(){return this[PointEnum.x]}getY(){return this[PointEnum.y]}}var invariant_=__webpack_require__(64);var bearing_=__webpack_require__(100);var bearing_default=__webpack_require__.n(bearing_);var helpers_=__webpack_require__(23);var projection_=__webpack_require__(90);var centroid_=__webpack_require__(42);var centroid_default=__webpack_require__.n(centroid_);var transform_rotate_=__webpack_require__(77);var transform_rotate_default=__webpack_require__.n(transform_rotate_);let BoundPointEnum;(function(BoundPointEnum){BoundPointEnum[BoundPointEnum["bottomLeft"]=0]="bottomLeft";BoundPointEnum[BoundPointEnum["topLeft"]=1]="topLeft";BoundPointEnum[BoundPointEnum["topRight"]=2]="topRight";BoundPointEnum[BoundPointEnum["bottomRight"]=3]="bottomRight"})(BoundPointEnum||(BoundPointEnum={}));class Bounds_Bounds extends Array{constructor(){super(...[new Point(...arguments.length<=0?undefined:arguments[0]),new Point(...arguments.length<=1?undefined:arguments[1]),new Point(...arguments.length<=2?undefined:arguments[2]),new Point(...arguments.length<=3?undefined:arguments[3])])}static fromPlain(bounds){if(bounds.length<4||bounds.length>5){throw new Error("Bounds must have 4 or 5 points")}return new Bounds_Bounds(...bounds)}static fromGeoJSON(polygon){const coordinatesList=Object(invariant_["getCoords"])(polygon);const coordinates=coordinatesList.length?coordinatesList[0]:[];if(coordinates.length!==5){throw new Error("Polygon must have exactly 5 points")}return Bounds_Bounds.fromPlain([coordinates[0],coordinates[1],coordinates[2],coordinates[3]])}static fromFeatureCollection(collection){return this.fromGeoJSON(collection[0])}toGeoJSON(){const coordinates=[[this[0],this[1],this[2],this[3],this[0]]];return Object(helpers_["polygon"])(coordinates)}toFeatureCollection(){return Object(helpers_["featureCollection"])([this.toGeoJSON()])}toPolygon(){return[this[0],this[1],this[2],this[3],this[0]]}getTopRight(){return this[BoundPointEnum.topRight]}getTopLeft(){return this[BoundPointEnum.topLeft]}getBottomRight(){return this[BoundPointEnum.bottomRight]}getBottomLeft(){return this[BoundPointEnum.bottomLeft]}getBearing(){return bearing_default()(this.getTopRight(),this.getTopLeft())+90}getCentroid(){const coords=Object(invariant_["getCoords"])(centroid_default()(this.toGeoJSON()));return new Point(...coords)}extrudeKeepingWidth(refWidth,refHeight){const mercatorBounds=Bounds_Bounds.fromGeoJSON(Object(projection_["toMercator"])(this.toGeoJSON()));const adjacentLeg=mercatorBounds.getTopRight().getX()-mercatorBounds.getTopLeft().getX();const oppositeLeg=mercatorBounds.getTopRight().getY()-mercatorBounds.getTopLeft().getY();const ratio=refWidth/refHeight;const newWidth=Math.sqrt(Math.pow(adjacentLeg,2)+Math.pow(oppositeLeg,2));const newHeight=newWidth/ratio;const x1=mercatorBounds.getCentroid().getX()-newWidth/2;const y1=mercatorBounds.getCentroid().getY()-newHeight/2;const x2=mercatorBounds.getCentroid().getX()+newWidth/2;const y2=mercatorBounds.getCentroid().getY()+newHeight/2;const newBounds=Bounds_Bounds.fromPlain([[x1,y1],[x1,y2],[x2,y2],[x2,y1]]);const wsg84Rect=Object(projection_["toWgs84"])(newBounds.toGeoJSON());const rotatedGeoJSONPolygon=transform_rotate_default()(wsg84Rect,this.getBearing());return Bounds_Bounds.fromGeoJSON(rotatedGeoJSONPolygon)}}class Range{constructor(){let{min,max}=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.min=void 0;this.max=void 0;this.min=min;this.max=max}hasValues(){return this.min!==undefined||this.max!==undefined}getInterval(){return this.getMax()-this.getMin()}getCount(){return this.getMax()-this.getMin()+1}multiply(multiplier){const intervalDelta=this.getInterval()*multiplier-this.getInterval();return new Range({min:this.getMin()-intervalDelta/2,max:this.getMax()+intervalDelta/2})}getMin(){if(this.min===undefined)return 0;return this.min}getMax(){if(this.max===undefined)return Number.MAX_SAFE_INTEGER;return this.max}isInRange(value){if(value===undefined)return false;return value>=this.getMin()&&value<this.getMax()}toPlain(){return[this.getMin(),this.getMax()]}}class Box{constructor(_ref){let{x,y,z}=_ref;this.x=void 0;this.y=void 0;this.z=void 0;this.x=x;this.y=y;this.z=z}isPointInRange(point){return this.x.isInRange(point.x)&&this.y.isInRange(point.y)}getDimensions(){return{width:this.x.getInterval(),height:this.y.getInterval()}}getPolygon(){return[[this.x.getMin(),this.y.getMin()],[this.x.getMax(),this.y.getMin()],[this.x.getMax(),this.y.getMax()],[this.x.getMin(),this.y.getMax()],[this.x.getMin(),this.y.getMin()]]}multiply(factor){return new Box({x:this.x.multiply(factor),y:this.y.multiply(factor),z:this.z})}}const fromDimensions=dimensions=>new Box({x:new Range({min:0,max:dimensions.width}),y:new Range({min:0,max:dimensions.height})});class Coordinates{constructor(){let props=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.x=void 0;this.y=void 0;this.z=void 0;this.default=void 0;if(!props){props={}}this.x=props.x;this.y=props.y;this.z=props.z;if(props.longitude)this.x=props.longitude;if(props.latitude)this.y=props.latitude;if(!this.x){this.x=0;this.default=true}if(!this.y){this.y=0;this.default=true}if(!this.z){this.z=0}}static fromArray(xyz){return new Coordinates({x:xyz[0],y:xyz[1],z:xyz[2]})}isAtOrigin(){return this.x===0&&this.y===0}toArray(){return[this.x,this.y,this.z]}move(xMoveDelta,yMoveDelta,zMoveDelta){if(xMoveDelta)this.x=this.x+xMoveDelta;if(yMoveDelta)this.y=this.y+yMoveDelta;if(zMoveDelta)this.z=this.z+zMoveDelta}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return styled}));var _mui_material_styles__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(57);var _mui_material_styles__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_mui_material_styles__WEBPACK_IMPORTED_MODULE_0__);const styled=(c,args)=>{if(!(args!==null&&args!==void 0&&args.name)){throw new Error("styled component requires a name. Otherwise it will be hard to debug.")}args.shouldForwardProp=prop=>!prop.includes("_");return Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_0__["styled"])(c,args)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"f",(function(){return Encodings_Encodings}));__webpack_require__.d(__webpack_exports__,"e",(function(){return EncodingScope}));__webpack_require__.d(__webpack_exports__,"c",(function(){return DEFAULT_ENCODING_SCOPE}));__webpack_require__.d(__webpack_exports__,"h",(function(){return PositionEncoding_PositionEncoding}));__webpack_require__.d(__webpack_exports__,"a",(function(){return ColorEncoding["a"]}));__webpack_require__.d(__webpack_exports__,"b",(function(){return ColorEncoding["b"]}));__webpack_require__.d(__webpack_exports__,"o",(function(){return Schemes["b"]}));__webpack_require__.d(__webpack_exports__,"l",(function(){return getColorAccessor}));__webpack_require__.d(__webpack_exports__,"n",(function(){return getColumnStats}));__webpack_require__.d(__webpack_exports__,"g",(function(){return IconAccessor_IconAccessor}));__webpack_require__.d(__webpack_exports__,"p",(function(){return getSizeAccessor}));__webpack_require__.d(__webpack_exports__,"j",(function(){return TextEncoding_TextEncoding}));__webpack_require__.d(__webpack_exports__,"i",(function(){return scale_ScaleType["b"]}));__webpack_require__.d(__webpack_exports__,"d",(function(){return scale_ScaleType["a"]}));__webpack_require__.d(__webpack_exports__,"m",(function(){return scale_ScaleType["c"]}));__webpack_require__.d(__webpack_exports__,"k",(function(){return createScale}));var initializerDefineProperty=__webpack_require__(13);var applyDecoratedDescriptor=__webpack_require__(11);var initializerWarningHelper=__webpack_require__(40);var SizeEncoding=__webpack_require__(32);var ColorEncoding=__webpack_require__(19);class IconEncoding{constructor(props){this.value=void 0;this.field=void 0;this.createdTimestamp=void 0;this.map=void 0;Object.assign(this,props);this.createdTimestamp=new Date}isRenderable(){return!!this.value||!!this.field}}var src=__webpack_require__(6);var internals_src=__webpack_require__(16);var fp_=__webpack_require__(3);var external_d3_=__webpack_require__(22);class TextEncoding_TextEncoding{constructor(props){this.field=void 0;this.align=void 0;this.angle=void 0;this.suffix=void 0;this.prefix=void 0;this.format=void 0;Object.assign(this,props)}getField(){return this.field}getAnchor(){switch(this.align){case"left":return"start";case"right":return"end";default:return"middle"}}getAngle(){var _this$angle;return(_this$angle=this.angle)!==null&&_this$angle!==void 0?_this$angle:0}formatValue(value,columnType){if(this.format){try{if(columnType===src["b"].DATETIME){return external_d3_["utcFormat"](this.format)(value)}else{return external_d3_["format"](this.format)(value)}}catch(e){internals_src["c"].error("Invalid format "+this.format);return value}}return Object(src["h"])(value,columnType)}getValue(row,columnType){let value=Object(src["i"])(this.getField(),row);if(Object(fp_["isNil"])(value))return null;value=this.formatValue(value,columnType);if(this.prefix){value=this.prefix+value}if(this.suffix){value=value+this.suffix}return value}getMinPossibleSize(){return 6}isRenderable(){return!!this.field}}var ScaleKey=__webpack_require__(52);class PositionEncoding_PositionEncoding{constructor(props){this.x=void 0;this.y=void 0;this.z=void 0;this.createdTimestamp=void 0;Object.assign(this,props);this.createdTimestamp=new Date}getX(){return this.x}getY(){return this.y}getZ(){return this.z}hasZ(){return!!this.z}get(column){if(column==="x"){return this.getX()}else if(column==="y"){return this.getY()}else if(column==="z"){return this.getZ()}}is2D(){var _this$x,_this$y;return((_this$x=this.x)===null||_this$x===void 0?void 0:_this$x.field)===((_this$y=this.y)===null||_this$y===void 0?void 0:_this$y.field)}isRenderable(){var _this$x2,_this$y2;return!!((_this$x2=this.x)!==null&&_this$x2!==void 0&&_this$x2.field)&&!!((_this$y2=this.y)!==null&&_this$y2!==void 0&&_this$y2.field)}getScaleKeys(){var _this$x3,_this$x4,_this$x4$scale,_this$y3,_this$y4,_this$y4$scale,_this$z;const scaleKeys=new ScaleKey["b"]({field:(_this$x3=this.x)===null||_this$x3===void 0?void 0:_this$x3.field,type:(_this$x4=this.x)===null||_this$x4===void 0?void 0:(_this$x4$scale=_this$x4.scale)===null||_this$x4$scale===void 0?void 0:_this$x4$scale.type},{field:(_this$y3=this.y)===null||_this$y3===void 0?void 0:_this$y3.field,type:(_this$y4=this.y)===null||_this$y4===void 0?void 0:(_this$y4$scale=_this$y4.scale)===null||_this$y4$scale===void 0?void 0:_this$y4$scale.type});if((_this$z=this.z)!==null&&_this$z!==void 0&&_this$z.field){var _this$z2,_this$z3,_this$z3$scale;scaleKeys.setZ({field:(_this$z2=this.z)===null||_this$z2===void 0?void 0:_this$z2.field,type:(_this$z3=this.z)===null||_this$z3===void 0?void 0:(_this$z3$scale=_this$z3.scale)===null||_this$z3$scale===void 0?void 0:_this$z3$scale.type})}return scaleKeys}}class AnimationEncoding{constructor(props){this.field=void 0;this.timeline=void 0;Object.assign(this,props)}isRenderable(){return true}}class BoundsEncoding{constructor(props){this.field=void 0;Object.assign(this,props)}isRenderable(){return!!this.field}}class ImageEncoding{constructor(props){this.field=void 0;Object.assign(this,props)}isRenderable(){return!!this.field}}class PolygonEncoding_PolygonEncoding{constructor(props){this.field=void 0;this.contentType=void 0;Object.assign(this,props)}isGeoJson(columns){var _columns$get;if(this.contentType){return this.contentType==="geo-json"}return((_columns$get=columns.get(this.field))===null||_columns$get===void 0?void 0:_columns$get.getType())==src["b"].JSON}isRenderable(){return!!this.field}}var LineEncoding=__webpack_require__(61);var OffsetEncoding=__webpack_require__(79);var external_class_transformer_=__webpack_require__(7);var _dec,_dec2,_class,_descriptor,_descriptor2;let Encodings_Encodings=(_dec=Object(external_class_transformer_["Transform"])((_ref=>{let{value}=_ref;return value.isEnabled&&value!==null&&value!==void 0&&value.isEnabled()?value:false}),{toPlainOnly:true}),_dec2=Object(external_class_transformer_["Transform"])((_ref2=>{let{value}=_ref2;return value!==null&&value!==void 0&&value.isEnabled&&value.isEnabled()?value:false}),{toPlainOnly:true}),_class=class Encodings{constructor(props){var _props$strokeColor,_props$table,_this$position,_this$position$x,_this$position2,_this$position2$y;this.color=void 0;Object(initializerDefineProperty["a"])(this,"strokeColor",_descriptor,this);this.size=void 0;Object(initializerDefineProperty["a"])(this,"strokeSize",_descriptor2,this);this.icon=void 0;this.text=void 0;this.position=void 0;this.x=void 0;this.y=void 0;this.z=void 0;this.heatmap=void 0;this.animation=void 0;this.line=void 0;this.polygon=void 0;this.bounds=void 0;this.image=void 0;this.table=void 0;this.offset=void 0;if(!props)return;Object.assign(this,props);if(props.color)this.color=new ColorEncoding["a"](props.color);this.strokeColor=new ColorEncoding["a"]((_props$strokeColor=props.strokeColor)!==null&&_props$strokeColor!==void 0?_props$strokeColor:{});if(props.size)this.size=new SizeEncoding["a"](props.size);if(props.strokeSize)this.strokeSize=new SizeEncoding["a"](props.strokeSize);if(props.icon)this.icon=new IconEncoding(props.icon);if(props.text)this.text=new TextEncoding_TextEncoding(props.text);if(props.polygon)this.polygon=new PolygonEncoding_PolygonEncoding(props.polygon);if(props.offset)this.offset=new OffsetEncoding["a"](props.offset);if(props.image)this.image=new ImageEncoding(props.image);if(props.line)this.line=new LineEncoding["b"](props.line);if(props.bounds)this.bounds=new BoundsEncoding(props.bounds);if(props.animation)this.animation=new AnimationEncoding(props.animation);if((_props$table=props.table)!==null&&_props$table!==void 0&&_props$table.length){this.table=props.table.map((field=>({...field,value:{encoding:{text:new TextEncoding_TextEncoding(field.value.encoding.text)}}})))}if(props.position||props.x||props.y||props.z){var _props$position;this.position=new PositionEncoding_PositionEncoding((_props$position=props.position)!==null&&_props$position!==void 0?_props$position:{x:props.x,y:props.y,z:props.z})}if((props.bounds||props.polygon||props.line)&&(!((_this$position=this.position)!==null&&_this$position!==void 0&&(_this$position$x=_this$position.x)!==null&&_this$position$x!==void 0&&_this$position$x.field)||!((_this$position2=this.position)!==null&&_this$position2!==void 0&&(_this$position2$y=_this$position2.y)!==null&&_this$position2$y!==void 0&&_this$position2$y.field))){var _ref3,_ref4,_this$position$x$fiel,_this$position3,_this$position3$x,_props$bounds,_props$polygon,_props$line,_ref5,_ref6,_this$position$y$fiel,_this$position4,_this$position4$y,_props$bounds2,_props$polygon2,_props$line2;const xField=(_ref3=(_ref4=(_this$position$x$fiel=(_this$position3=this.position)===null||_this$position3===void 0?void 0:(_this$position3$x=_this$position3.x)===null||_this$position3$x===void 0?void 0:_this$position3$x.field)!==null&&_this$position$x$fiel!==void 0?_this$position$x$fiel:(_props$bounds=props.bounds)===null||_props$bounds===void 0?void 0:_props$bounds.field)!==null&&_ref4!==void 0?_ref4:(_props$polygon=props.polygon)===null||_props$polygon===void 0?void 0:_props$polygon.field)!==null&&_ref3!==void 0?_ref3:(_props$line=props.line)===null||_props$line===void 0?void 0:_props$line.field;const yField=(_ref5=(_ref6=(_this$position$y$fiel=(_this$position4=this.position)===null||_this$position4===void 0?void 0:(_this$position4$y=_this$position4.y)===null||_this$position4$y===void 0?void 0:_this$position4$y.field)!==null&&_this$position$y$fiel!==void 0?_this$position$y$fiel:(_props$bounds2=props.bounds)===null||_props$bounds2===void 0?void 0:_props$bounds2.field)!==null&&_ref6!==void 0?_ref6:(_props$polygon2=props.polygon)===null||_props$polygon2===void 0?void 0:_props$polygon2.field)!==null&&_ref5!==void 0?_ref5:(_props$line2=props.line)===null||_props$line2===void 0?void 0:_props$line2.field;this.position=new PositionEncoding_PositionEncoding({...this.position,x:{...this.position.x,field:xField},y:{...this.position.y,field:yField}})}if(this.position){this.x=this.position.x;this.y=this.position.y;this.z=this.position.z}}getColor(){if(this.color instanceof ColorEncoding["a"])return this.color}},_descriptor=Object(applyDecoratedDescriptor["a"])(_class.prototype,"strokeColor",[_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(applyDecoratedDescriptor["a"])(_class.prototype,"strokeSize",[_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);let EncodingScope;(function(EncodingScope){EncodingScope["QUERY"]="Query";EncodingScope["VISIBLE"]="Visible"})(EncodingScope||(EncodingScope={}));const DEFAULT_ENCODING_SCOPE=EncodingScope.QUERY;var Schemes=__webpack_require__(54);var Colors=__webpack_require__(18);class ColorLiteralAccessor_ColorLiteralAccessor{constructor(colorEncoding){this.colorEncoding=void 0;this.colorEncoding=colorEncoding}getRawColor(){if(!this.colorEncoding){throw new Error("Color encoding is not defined")}if(this.colorEncoding.value){return Object(Colors["b"])(this.colorEncoding.value)}return}getColor(){var _this$colorEncoding$o,_this$colorEncoding;const color=this.getRawColor();if(!color)return;return Object(Colors["c"])(color.copy({opacity:(_this$colorEncoding$o=(_this$colorEncoding=this.colorEncoding)===null||_this$colorEncoding===void 0?void 0:_this$colorEncoding.opacity)!==null&&_this$colorEncoding$o!==void 0?_this$colorEncoding$o:1}))}}class ColorFieldAccessor_ColorFieldAccessor{constructor(colorEncoding){this.colorEncoding=colorEncoding;this.scale=void 0}getColor(rows,visibleRows,row,columnStats){if(!this.scale){this.scale=this.colorEncoding.getScale(rows,visibleRows,columnStats)}const value=Object(src["i"])(this.colorEncoding.getField(),row);if(Object(fp_["isNil"])(value)){return new ColorLiteralAccessor_ColorLiteralAccessor(new ColorEncoding["a"]({...this.colorEncoding})).getColor()}return this.scale(value)}}class ColorConditionalAccessor_ColorConditionalAccessor{getAcessor(colorEncoding){if(colorEncoding.isFieldBased()){return new ColorFieldAccessor_ColorFieldAccessor(colorEncoding)}else{return new ColorLiteralAccessor_ColorLiteralAccessor(colorEncoding)}}constructor(colorEncoding){this.colorEncoding=colorEncoding;this.scale=void 0;this.conditionalAcessor=void 0;this.acessor=void 0;this.acessor=this.getAcessor(colorEncoding);if(colorEncoding.hasCondition()){this.conditionalAcessor=this.getAcessor(new ColorEncoding["a"](colorEncoding.condition))}}getColor(rows,visibleRows,row,columnStats){var _this$colorEncoding$c;if(this.colorEncoding.hasCondition()&&Object(src["i"])((_this$colorEncoding$c=this.colorEncoding.condition)===null||_this$colorEncoding$c===void 0?void 0:_this$colorEncoding$c.test,row)){return this.conditionalAcessor.getColor(rows,visibleRows,row,columnStats)}return this.acessor.getColor(rows,visibleRows,row,columnStats)}}function getAccessorInstance(colorEncoding){if(!(colorEncoding instanceof ColorEncoding["a"])){throw new Error("Color encoding is not defined")}if(colorEncoding.hasCondition()){return new ColorConditionalAccessor_ColorConditionalAccessor(colorEncoding)}if(colorEncoding.getField()){return new ColorFieldAccessor_ColorFieldAccessor(colorEncoding)}return new ColorLiteralAccessor_ColorLiteralAccessor(colorEncoding)}function getColumnStats(colorEncoding,columns){if(!(colorEncoding!==null&&colorEncoding!==void 0&&colorEncoding.getField()))return;const column=columns===null||columns===void 0?void 0:columns.get(colorEncoding.getField());if(!column)return;return column.getStats()}function getColorAccessor(colorEncoding,rows,visibleRows,columns,rowTranslator){const accessor=getAccessorInstance(colorEncoding);if(accessor instanceof ColorLiteralAccessor_ColorLiteralAccessor){return accessor.getColor()}return row=>{if(rowTranslator)row=rowTranslator.translate(row);return accessor.getColor(rows,visibleRows,row,getColumnStats(colorEncoding,columns))}}var ScaleType=__webpack_require__(45);class IconAccessor_IconAccessor{constructor(props){this.iconStore=void 0;Object.assign(this,props)}getDefaultIcon(){return this.iconStore["marker"]}getFallbackIcon(iconEncoding){const fallbackIconName=!!iconEncoding.value&&iconEncoding.value.toLowerCase();if(fallbackIconName&&this.iconStore[fallbackIconName]){return this.iconStore[fallbackIconName]}else{return this.getDefaultIcon()}}getIconName(iconMap,value){if(value){if(iconMap&&Object(src["i"])(value,iconMap)){return Object(src["i"])(value,iconMap)}return value.toLowerCase()}}getIcon(encoding,row){if(!encoding)return this.getDefaultIcon();if(!encoding.field)return this.getFallbackIcon(encoding);const iconName=this.getIconName(encoding.map,row[encoding.field]);if(!iconName||!this.iconStore[iconName]){return this.getFallbackIcon(encoding)}return this.iconStore[iconName]}}const getSizeAccessor=_ref=>{let{encoding,factor=1,columns,rowTranslator}=_ref;if(!encoding){return 0}if(encoding.hasField()){const sizeField=encoding.getField();const column=columns&&columns.get(sizeField);const columnStats=column===null||column===void 0?void 0:column.getStats();const columnDomain=columnStats&&columnStats.percentiles;return row=>{if(rowTranslator)row=rowTranslator.translate(row);const columnValue=sizeField&&typeof row[sizeField]==="number"?Number(row[sizeField]):undefined;return encoding.getSize(columnValue,columnDomain)*factor}}return encoding.getSize()*factor};var scale_ScaleType=__webpack_require__(37);function createScale(scaleType){if(scaleType&&scaleType===scale_ScaleType["b"].SQUARE)return external_d3_["scaleSqrt"]();if(scaleType&&scaleType===scale_ScaleType["b"].TIME)return external_d3_["scaleTime"]();return external_d3_["scaleLinear"]()}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return _applyDecoratedDescriptor}));function _applyDecoratedDescriptor(target,property,decorators,descriptor,context){var desc={};Object.keys(descriptor).forEach((function(key){desc[key]=descriptor[key]}));desc.enumerable=!!desc.enumerable;desc.configurable=!!desc.configurable;if("value"in desc||desc.initializer){desc.writable=true}desc=decorators.slice().reverse().reduce((function(desc,decorator){return decorator(target,property,desc)||desc}),desc);if(context&&desc.initializer!==void 0){desc.value=desc.initializer?desc.initializer.call(context):void 0;desc.initializer=undefined}if(desc.initializer===void 0){Object.defineProperty(target,property,desc);desc=null}return desc}},function(module,exports){module.exports=require("@mui/material")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return _initializerDefineProperty}));function _initializerDefineProperty(target,property,descriptor,context){if(!descriptor)return;Object.defineProperty(target,property,{enumerable:descriptor.enumerable,configurable:descriptor.configurable,writable:descriptor.writable,value:descriptor.initializer?descriptor.initializer.call(context):void 0})}},function(module,exports){module.exports=require("@emotion/react")},function(module,exports){module.exports=require("@deck.gl/layers")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return debug_Debug}));__webpack_require__.d(__webpack_exports__,"b",(function(){return internals_Internals}));__webpack_require__.d(__webpack_exports__,"c",(function(){return logger_Logger}));var fp_=__webpack_require__(3);const HOPARA_PREFIX="hopara-";class internals_Internals{static setParam(key,value){if(typeof window!=="undefined"){var _window;if((_window=window)!==null&&_window!==void 0&&_window.sessionStorage){window.sessionStorage.setItem(HOPARA_PREFIX+key,value)}}}static hasParam(key){return!Object(fp_["isNil"])(this.getParam(key))}static getParam(key){if(typeof window!=="undefined"){var _window2;if((_window2=window)!==null&&_window2!==void 0&&_window2.sessionStorage){return window.sessionStorage.getItem(HOPARA_PREFIX+key)}}}}const HOPARA_DEBUGGER_KEY="debugger";class debug_Debug{static enable(){internals_Internals.setParam(HOPARA_DEBUGGER_KEY,"true")}static disable(){internals_Internals.setParam(HOPARA_DEBUGGER_KEY,"false")}static isDebugging(){return internals_Internals.getParam(HOPARA_DEBUGGER_KEY)==="true"}}class logger_Logger{static info(){if(!debug_Debug.isDebugging())return;for(var _len=arguments.length,params=new Array(_len),_key=0;_key<_len;_key++){params[_key]=arguments[_key]}return console.log("INFO:",...params)}static debug(){if(!debug_Debug.isDebugging())return;for(var _len2=arguments.length,params=new Array(_len2),_key2=0;_key2<_len2;_key2++){params[_key2]=arguments[_key2]}return console.log("DEBUG:",...params)}static error(){for(var _len3=arguments.length,params=new Array(_len3),_key3=0;_key3<_len3;_key3++){params[_key3]=arguments[_key3]}return console.error("ERROR:",...params)}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Config}));let ConfigEnvironment;(function(ConfigEnvironment){ConfigEnvironment["DEVELOPMENT"]="development";ConfigEnvironment["SYSTEM_TEST"]="systemTest";ConfigEnvironment["TEST"]="test";ConfigEnvironment["PRODUCTION"]="production"})(ConfigEnvironment||(ConfigEnvironment={}));const HOPARA_ENV_KEY="HOPARA_ENV";class ConfigMap extends Map{constructor(newMap){super();this.environment=void 0;Object.keys(newMap).forEach((configName=>{this.set(configName,newMap[configName])}))}setEnvironment(environment){this.environment=environment}isDev(){return this.environment===ConfigEnvironment.DEVELOPMENT}getValueFromNodeEnvironment(key){var _process$env$key;return(_process$env$key=Object({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:undefined,WDS_SOCKET_PATH:undefined,WDS_SOCKET_PORT:undefined,FAST_REFRESH:true,REACT_APP_BUILD_NUMBER:"3277",REACT_APP_PACKAGE_VERSION:"0.1.102"})[key])!==null&&_process$env$key!==void 0?_process$env$key:Object({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:undefined,WDS_SOCKET_PATH:undefined,WDS_SOCKET_PORT:undefined,FAST_REFRESH:true,REACT_APP_BUILD_NUMBER:"3277",REACT_APP_PACKAGE_VERSION:"0.1.102"})[`REACT_APP_${key}`]}getHoparaEnvironment(){var _this$getValueFromNod;if(this.environment)return this.environment;const env=(_this$getValueFromNod=this.getValueFromNodeEnvironment(HOPARA_ENV_KEY))!==null&&_this$getValueFromNod!==void 0?_this$getValueFromNod:"production";if(!env)return ConfigEnvironment.DEVELOPMENT;if(env==="production")return ConfigEnvironment.PRODUCTION;if(env==="test")return ConfigEnvironment.TEST;if(env==="systemTest")return ConfigEnvironment.SYSTEM_TEST;return ConfigEnvironment.DEVELOPMENT}getValue(key,tenant){var _this$get;if(key===HOPARA_ENV_KEY)return this.getHoparaEnvironment();const fromNodeEnv=this.getValueFromNodeEnvironment(key);if(fromNodeEnv)return fromNodeEnv;const tenantKey=tenant?`${tenant.toUpperCase()}_${key}`:key;const configValues=(_this$get=this.get(tenantKey))!==null&&_this$get!==void 0?_this$get:this.get(key);if(!configValues)return"";if(this.environment){var _configValues$this$en;return(_configValues$this$en=configValues[this.environment])!==null&&_configValues$this$en!==void 0?_configValues$this$en:configValues[ConfigEnvironment.DEVELOPMENT]}const hoparaEnv=this.getHoparaEnvironment();if(hoparaEnv){var _configValues$hoparaE;return(_configValues$hoparaE=configValues[hoparaEnv])!==null&&_configValues$hoparaE!==void 0?_configValues$hoparaE:configValues[ConfigEnvironment.DEVELOPMENT]}if(true){var _configValues$ConfigE;return(_configValues$ConfigE=configValues[ConfigEnvironment.PRODUCTION])!==null&&_configValues$ConfigE!==void 0?_configValues$ConfigE:configValues[ConfigEnvironment.DEVELOPMENT]}return configValues[ConfigEnvironment.DEVELOPMENT]}getValueAsBoolean(key,tenant){return this.getValue(key,tenant)==="true"}}const Config=new ConfigMap({BUILD_NUMBER:{development:"000"},PACKAGE_VERSION:{development:"0.0.0"},COOKIE_DOMAIN:{development:"localhost",test:".hopara.app",production:".hopara.app"},EXTERNAL_TOKEN_COOKIE:{development:"localhost",test:".test.hopara.app",production:".hopara.app"},PUBLIC_URL:{development:""},SYSTEM_TEST:{development:"false",systemTest:"true"},AUTH0_DOMAIN:{development:"dev-rflz2ws3.us.auth0.com",production:"login.hopara.app"},AUTH0_CLIENT_ID:{development:"6NbIMZAkEI56VJsAM7BDwIeEIGWx8z1N",production:"9muV5ImpE5sBPYcTb1QHVfDktiHWyBPg"},AUTH0_REDIRECT_URI:{development:"http://localhost:3000",test:"https://test.hopara.app",production:"https://hopara.app"},AUTH0_AUDIENCE:{development:"kyrix"},AUTH0_SCOPE:{development:"row:read row:write table:write app:write view:write query:tenant:read"},APP_API_ADDRESS:{development:"https://app.test.hopara.app",test:"https://app.test.hopara.app",production:"https://app.hopara.app",systemTest:"http://localhost:1234"},BFF_API_ADDRESS:{development:"https://bff.test.hopara.app",test:"https://bff.test.hopara.app",production:"https://bff.hopara.app",systemTest:"http://localhost:1234"},TEMPLATE_API_ADDRESS:{development:"https://template.test.hopara.app",test:"https://template.test.hopara.app",production:"https://template.hopara.app",systemTest:"http://localhost:1234"},WATCHER_API_ADDRESS:{development:"https://update-watcher.test.hopara.app",test:"https://update-watcher.test.hopara.app",production:"https://update-watcher.hopara.app",systemTest:"http://localhost:1234"},DATASET_API_ADDRESS:{development:"https://dataset.test.hopara.app",test:"https://dataset.test.hopara.app",production:"https://dataset.hopara.app",systemTest:"http://localhost:1234"},AUTH_API_ADDRESS:{development:"https://auth.test.hopara.app",test:"https://auth.test.hopara.app",production:"https://auth.hopara.app",systemTest:"http://localhost:1234"},IMAGES_API_ADDRESS:{development:"https://images.hopara.app"},CONTENT_ADDRESS:{development:"https://content.hopara.app"},"IBBX.TECH_BFF_API_ADDRESS":{development:"https://bff.test.hopara.app",test:"https://bff.test.hopara.app",production:"https://bff.hopara.app"},"IBBX.TECH_DATASET_API_ADDRESS":{development:"https://dataset.test.hopara.app",test:"https://dataset.test.hopara.app",production:"https://dataset.hopara.app"},HOPARA_THEME_MODE:{development:"HOPARA"},STYLE_INTERFACE:{development:"aphrodite"},ENABLE_MAP:{development:"true",systemTest:"false"},FUNNY_ERRORS:{development:"true"}})},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return rgbColor}));__webpack_require__.d(__webpack_exports__,"c",(function(){return toRGBArray}));__webpack_require__.d(__webpack_exports__,"a",(function(){return fromString}));var d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(91);var d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__);var lodash_fp__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_1__);const TRANSPARENT_COLOR=[255,255,255,0];const WHITE_COLOR=[255,255,255,255];const rgbColor=hexColor=>d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__["rgb"](hexColor);const getAlpha=opacity=>{const maxOpacity=255;if(Object(lodash_fp__WEBPACK_IMPORTED_MODULE_1__["isNumber"])(opacity)&&opacity<=1&&opacity>=0){return Math.floor(maxOpacity*opacity)}return maxOpacity};function toRGBArray(color){const colorArr=[color.r,color.g,color.b];if(color.opacity!==undefined)colorArr.push(getAlpha(color.opacity));return colorArr}function fromString(cssColorSpecifier){let opacity=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1;const color=d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__["rgb"](cssColorSpecifier);color.opacity=opacity;return toRGBArray(color)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return ColorFormat}));__webpack_require__.d(__webpack_exports__,"c",(function(){return getValidValues}));__webpack_require__.d(__webpack_exports__,"a",(function(){return ColorEncoding_ColorEncoding}));var ScaleType=__webpack_require__(45);var Schemes=__webpack_require__(54);var external_d3_=__webpack_require__(22);function getDataDomain(values){var _values$sort;return(_values$sort=values===null||values===void 0?void 0:values.sort())!==null&&_values$sort!==void 0?_values$sort:[]}function getDomainFromStats(columnStats){var _columnStats$percenti;return(_columnStats$percenti=columnStats===null||columnStats===void 0?void 0:columnStats.percentiles)!==null&&_columnStats$percenti!==void 0?_columnStats$percenti:[]}class quantile_QuantileScaleBehavior{constructor(field){this.field=field}getScale(domain,colors){return external_d3_["scaleQuantile"](domain,colors)}getDomain(rows,visibleRows,columnStats){if(visibleRows.length)return getDataDomain(getValidValues(visibleRows,this.field));if(columnStats)return getDomainFromStats(columnStats);return[]}}var fp_=__webpack_require__(3);function getDataRange(values){const minValue=Object(fp_["min"])(values)||0;const maxValue=Object(fp_["max"])(values)||0;return[minValue,maxValue]}function quantize_getDomainFromStats(columnStats){return[columnStats.min,columnStats.max]}class quantize_QuantizeScaleBehavior{constructor(field){this.field=field}getScale(domain,colors){return external_d3_["scaleQuantize"](domain,colors)}getDomain(rows,visibleRows,columnStats){if(visibleRows.length)return getDataRange(getValidValues(visibleRows,this.field));if(columnStats)return quantize_getDomainFromStats(columnStats);return[]}}function ordinal_getDomainFromStats(columnStats){var _columnStats$values;return(_columnStats$values=columnStats===null||columnStats===void 0?void 0:columnStats.values)!==null&&_columnStats$values!==void 0?_columnStats$values:[columnStats.min,columnStats.max]}class ordinal_OrdinalScaleBehavior{constructor(field){this.field=field}getScale(domain,colors){return external_d3_["scaleOrdinal"](domain,colors)}getDomain(rows,visibleRows,columnStats){var _columnStats$values2;if(columnStats!==null&&columnStats!==void 0&&(_columnStats$values2=columnStats.values)!==null&&_columnStats$values2!==void 0&&_columnStats$values2.length){const rowsDomain=getValidValues(rows,this.field);const statsDomain=ordinal_getDomainFromStats(columnStats);return Object(fp_["concat"])(statsDomain,Object(fp_["difference"])(rowsDomain.sort(),statsDomain))}else if(visibleRows.length){return getValidValues(visibleRows,this.field)}return[]}}var src=__webpack_require__(6);let ColorFormat;(function(ColorFormat){ColorFormat["hex"]="hex";ColorFormat["rgb"]="rgb"})(ColorFormat||(ColorFormat={}));function getValidValues(rows,field){if(!(rows!==null&&rows!==void 0&&rows.length)){return[]}const valids=rows.getValues(field).filter((value=>Object(fp_["isNumber"])(value)||!Object(fp_["isEmpty"])(value)));return Object(fp_["uniq"])(valids)}class ColorEncoding_ColorEncoding{constructor(){let props=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.field=void 0;this.scale=void 0;this.opacity=void 0;this.value=void 0;this.animation=void 0;this.condition=void 0;this.createdTimestamp=void 0;Object.assign(this,props);if(!this.scale){this.scale={type:ScaleType["a"].ORDINAL}}this.createdTimestamp=new Date}getField(){return this.field}isFieldBased(){return!!this.field}hasCondition(){return!!this.condition}hasCustomScheme(){return!!this.scale.range}setField(field){this.field=field;return this}getScaleType(){return this.scale.type}isScale(scale){return Object(fp_["isString"])(this.getScaleType())&&this.getScaleType().toLowerCase()===scale.toLowerCase()}isOrdinal(){return this.isScale(ScaleType["a"].ORDINAL)}requiresQuantitativeValues(){return this.isScale(ScaleType["a"].QUANTIZE)||this.isScale(ScaleType["a"].QUANTILE)}getScale(){var _this$scale$domain;let rows=arguments.length>0&&arguments[0]!==undefined?arguments[0]:new src["g"];let visibleRows=arguments.length>1&&arguments[1]!==undefined?arguments[1]:new src["g"];let columnStats=arguments.length>2?arguments[2]:undefined;let colorFormat=arguments.length>3&&arguments[3]!==undefined?arguments[3]:ColorFormat.rgb;const domain=(_this$scale$domain=this.scale.domain)!==null&&_this$scale$domain!==void 0?_this$scale$domain:this.getScaleBehavior().getDomain(rows,visibleRows,columnStats);return this.getScaleBehavior().getScale(domain,this.getColors(colorFormat))}getColors(){let colorFormat=arguments.length>0&&arguments[0]!==undefined?arguments[0]:ColorFormat.rgb;if(colorFormat==="rgb"){return Object(Schemes["b"])(this.scale.scheme||this.scale.range,this.scale.reverse,this.opacity).colors}return Object(Schemes["a"])(this.scale.scheme||this.scale.range,this.scale.reverse).colors}getFallback(){return this.value}isRenderable(){return!!(this.field&&this.scale.scheme)||!!this.value}isEnabled(){return this.isRenderable()}getScaleBehavior(){if(this.isScale(ScaleType["a"].QUANTIZE)){return new quantize_QuantizeScaleBehavior(this.getField())}if(this.isScale(ScaleType["a"].QUANTILE)){return new quantile_QuantileScaleBehavior(this.getField())}return new ordinal_OrdinalScaleBehavior(this.getField())}}},function(module,exports){module.exports=require("vega")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ColumnType}));__webpack_require__.d(__webpack_exports__,"b",(function(){return DEFAULT_COLUMN_TYPE}));let ColumnType;(function(ColumnType){ColumnType["STRING"]="STRING";ColumnType["JSON"]="JSON";ColumnType["INTEGER"]="INTEGER";ColumnType["DECIMAL"]="DECIMAL";ColumnType["STRING_ARRAY"]="STRING_ARRAY";ColumnType["DATETIME"]="DATETIME";ColumnType["GEOMETRY"]="GEOMETRY";ColumnType["BOOLEAN"]="BOOLEAN"})(ColumnType||(ColumnType={}));const DEFAULT_COLUMN_TYPE=ColumnType.STRING},function(module,exports){module.exports=require("d3")},function(module,exports){module.exports=require("@turf/helpers")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"d",(function(){return createThemeSpecFromBrand}));__webpack_require__.d(__webpack_exports__,"c",(function(){return createMuiThemeFromSpec}));var _mui_material__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(12);var _mui_material__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_mui_material__WEBPACK_IMPORTED_MODULE_0__);__webpack_require__.d(__webpack_exports__,"b",(function(){return _mui_material__WEBPACK_IMPORTED_MODULE_0__["ThemeProvider"]}));__webpack_require__.d(__webpack_exports__,"a",(function(){return _mui_material__WEBPACK_IMPORTED_MODULE_0__["CssBaseline"]}));var _mui_material_styles__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(57);var _mui_material_styles__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__);var colorsys__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(93);var colorsys__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(colorsys__WEBPACK_IMPORTED_MODULE_2__);const createThemeSpecFromBrand=(tenantBrand,xxx)=>{const{themeFromSourceColor,argbFromHex,applyTheme,hexFromArgb}=xxx;const materialYou=themeFromSourceColor(argbFromHex(tenantBrand.originalColor));applyTheme(materialYou,{target:document.body});const material=materialYou.schemes[tenantBrand.mode||"light"];const borderColor=tenantBrand.mode==="dark"?materialYou.palettes.primary.tone(80):materialYou.palettes.neutral.tone(90);const luminance=Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["getLuminance"])(tenantBrand.originalColor);const lightSourceColor=hexFromArgb(materialYou.schemes.light.onSurface);const darkSourceColor=hexFromArgb(materialYou.schemes.dark.onSurface);const tones=new Array(11).fill(0).map(((_,i)=>i*10));return{mode:tenantBrand.mode,logoUrl:tenantBrand.logoUrl,logoSmallUrl:tenantBrand.logoSmallUrl,original:tenantBrand.originalColor,onOriginal:luminance>.4?lightSourceColor:darkSourceColor,primary:hexFromArgb(material.primary),onPrimary:hexFromArgb(material.onPrimary),primaryContainer:hexFromArgb(material.primaryContainer),onPrimaryContainer:hexFromArgb(material.onPrimaryContainer),secondary:hexFromArgb(material.secondary),onSecondary:hexFromArgb(material.onSecondary),secondaryContainer:hexFromArgb(material.secondaryContainer),onSecondaryContainer:hexFromArgb(material.onSecondaryContainer),tertiary:hexFromArgb(material.tertiary),onTertiary:hexFromArgb(material.onTertiary),tertiaryContainer:hexFromArgb(material.tertiaryContainer),onTertiaryContainer:hexFromArgb(material.onTertiaryContainer),error:hexFromArgb(material.error),onError:hexFromArgb(material.onError),errorContainer:hexFromArgb(material.errorContainer),onErrorContainer:hexFromArgb(material.onErrorContainer),surface:hexFromArgb(material.surface),onSurface:hexFromArgb(material.onSurface),background:hexFromArgb(material.background),onBackground:hexFromArgb(material.onBackground),onBackgroundLight:hexFromArgb(materialYou.palettes.neutral.tone(50)),outline:hexFromArgb(material.outline),surfaceVariant:hexFromArgb(material.surfaceVariant),onSurfaceVariant:hexFromArgb(material.onSurfaceVariant),inverseSurface:hexFromArgb(material.inverseSurface),inversePrimary:hexFromArgb(material.inversePrimary),inverseOnSurface:hexFromArgb(material.inverseOnSurface),borderRadius:tenantBrand.borderRadius,borderColor:hexFromArgb(borderColor),hasBackgroundTexture:false,tonal:{primary:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.primary.tone(tone))]))),secondary:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.secondary.tone(tone))]))),tertiary:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.tertiary.tone(tone))]))),error:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.error.tone(tone))]))),neutral:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.neutral.tone(tone))]))),neutralVariant:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.neutralVariant.tone(tone))])))}}};const createMuiThemeFromSpec=spec=>{var _spec$fontSize;const fontSize=(_spec$fontSize=spec.fontSize)!==null&&_spec$fontSize!==void 0?_spec$fontSize:12;const luminance=Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["getLuminance"])(spec.original);const mode=spec.mode;return Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["createTheme"])({palette:{hue:colorsys__WEBPACK_IMPORTED_MODULE_2___default.a.rgb_to_hsl(colorsys__WEBPACK_IMPORTED_MODULE_2___default.a.parseCss(spec.primary)).h+12,contrast:luminance<=.4,mode,spec,original:{main:spec.original,contrastText:spec.onOriginal},primary:{main:spec.primary,light:spec.primaryContainer,contrastText:spec.onPrimary,dark:spec.onPrimaryContainer},secondary:{main:spec.secondary,light:spec.secondaryContainer,contrastText:spec.onSecondary,dark:spec.onSecondaryContainer},tertiary:{main:spec.tertiary,light:spec.tertiaryContainer,contrastText:spec.onTertiary,dark:spec.onTertiaryContainer},error:{main:spec.error,light:spec.errorContainer,contrastText:spec.onError,dark:spec.onErrorContainer},background:{default:mode==="dark"?"#000000":"#FFFFFF",paper:spec.surface},text:{primary:spec.onBackground,secondary:spec.onSurface,component:spec.onBackgroundLight}},shape:{borderRadius:spec.borderRadius,borderLight:`1px solid ${spec.borderColor}`,paddingInner:fontSize},typography:{fontSize,fontFamily:"Inter, Work Sans, sans-serif"},spacing:1,shadows:Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["createTheme"])({}).shadows.map(((shadow,i)=>{if(i===2){return spec.mode==="dark"?"0 1px 1px 0 #444, 0 4px 18px 0 rgb(34 41 47 / 10%)":"0 1px 1px 0 #e5deee, 0 4px 18px 0 rgb(34 41 47 / 10%)"}return shadow})),components:{HoparaBranding:{logoUrl:spec.logoUrl,logoSmallUrl:spec.logoSmallUrl,hasBackgroundTexture:spec.hasBackgroundTexture},HoparaTable:{row:{backgroundEven:"#fcfaff",backgroundHover:"#faf8fd"}},HoparaInput:{backgroundColor:spec.background,backgroundClip:"padding-box",border:`1px solid ${spec.borderColor}`,borderColor:spec.borderColor,borderRadius:spec.borderRadius,display:"block",color:spec.onBackground,fontSize:"defaults.text.sizeSmall",lineHeight:"1.85",height:35,outline:"none",padding:".25em .75em",transition:"border-color 0.15s ease-in-out",width:"100%"},HoparaSidebar:{width:320,headerHeight:50,bottomHeight:25,headerBackgroundColor:spec.secondaryContainer,headerBackgroundColorLight:spec.surface,tabsSpacing:25,tabsBackground:spec.secondaryContainer,tabsBackgroundLight:spec.surface},MuiOutlinedInput:{styleOverrides:{root:{backgroundColor:spec.background,color:spec.onBackground},notchedOutline:{borderColor:spec.borderColor},input:{padding:"0.25em 0.75em",lineHeight:"26px",height:"26px"}}},MuiButton:{styleOverrides:{root:{}}},MuiListItemButton:{styleOverrides:{root:{}}}}})}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return PureComponent}));var react__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);var react__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);var _toast_Toast__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(27);var _hopara_internals__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(16);class PureComponent extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent{componentDidCatch(error,info){Object(_toast_Toast__WEBPACK_IMPORTED_MODULE_1__["a"])("Something went wrong");_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["c"].error(error,info)}}},function(module,exports){module.exports=require("reselect")},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(global){__webpack_require__.d(__webpack_exports__,"b",(function(){return toastSuccess}));__webpack_require__.d(__webpack_exports__,"a",(function(){return toastError}));var react_toastify__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(46);var react_toastify__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react_toastify__WEBPACK_IMPORTED_MODULE_0__);const toastSuccess=text=>{react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].dismiss();react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].success(text)};const toastError=text=>{react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].dismiss();react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].error(text)};const window=global;window.TOAST={toastSuccess,toastError}}).call(this,__webpack_require__(75))},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return StoreContext}));var external_reflect_metadata_=__webpack_require__(47);var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var external_redux_=__webpack_require__(73);function getInitialState(childReducers,state,action){const reducedInitialState={};for(const key in childReducers){if({}.hasOwnProperty.call(childReducers,key)){reducedInitialState[key]=childReducers[key](undefined,action)}}return reducedInitialState}function getChildrenState(childReducers,state,action){const reducedState={...state};for(const key in childReducers){if({}.hasOwnProperty.call(childReducers,key)){reducedState[key]=childReducers[key](state[key],action,state)}}return reducedState}function reducer(childReducers){return function(state,action){if(state==null){return getInitialState(childReducers,state,action)}return getChildrenState(childReducers,state,action)}}var external_redux_saga_=__webpack_require__(98);var external_redux_saga_default=__webpack_require__.n(external_redux_saga_);var effects_=__webpack_require__(4);var GA=__webpack_require__(86);var external_slugify_=__webpack_require__(99);var external_slugify_default=__webpack_require__.n(external_slugify_);var Actions=__webpack_require__(1);const formatName=name=>external_slugify_default()(name,{replacement:"_",lower:true,strict:true});function*notifyLogin(){GA["a"].login("auth0");yield}const getPageName=action=>{var _action$payload$autho;if((_action$payload$autho=action.payload.authorization)!==null&&_action$payload$autho!==void 0&&_action$payload$autho.tenant){var _action$payload$autho2;return`${action.payload.app.name} - ${(_action$payload$autho2=action.payload.authorization)===null||_action$payload$autho2===void 0?void 0:_action$payload$autho2.tenant}`}return action.payload.app.name};const getPagePath=action=>{var _window,_window$location,_action$payload$autho3;if((_window=window)!==null&&_window!==void 0&&(_window$location=_window.location)!==null&&_window$location!==void 0&&_window$location.search){var _window2,_window2$location;return(_window2=window)===null||_window2===void 0?void 0:(_window2$location=_window2.location)===null||_window2$location===void 0?void 0:_window2$location.search}else if((_action$payload$autho3=action.payload.authorization)!==null&&_action$payload$autho3!==void 0&&_action$payload$autho3.tenant){var _action$payload$autho4;return`/app/${(_action$payload$autho4=action.payload.authorization)===null||_action$payload$autho4===void 0?void 0:_action$payload$autho4.tenant}/${action.payload.app.name}`}return`/app/${action.payload.app.name}`};function*notifyPageView(action){GA["a"].pageview(getPageName(action),getPagePath(action));yield}function*notifyEngagement(action){const event={action:formatName(action.payload.event),label:action.payload.event,category:"engagement",value:action.payload.value||1};GA["a"].custom(event);yield}function*notifyViewZooming(action){yield notifyEngagement(Actions["a"].analytics.analyticsEvent({event:`View: Zoom ${action.payload.direction}`}))}function*notifyViewDragging(){yield notifyEngagement(Actions["a"].analytics.analyticsEvent({event:`View: Drag`}))}function*notifyJump(){yield notifyEngagement(Actions["a"].analytics.analyticsEvent({event:`Jump: Requested`,value:1}))}var external_query_string_=__webpack_require__(43);var external_query_string_default=__webpack_require__.n(external_query_string_);var fp_=__webpack_require__(3);function objectsToString(params){Object.keys(params).forEach((key=>{if(Object(fp_["isPlainObject"])(params[key])){params[key]=JSON.stringify(params[key])}else if(Object(fp_["isArray"])(params[key])){params[key]=params[key].map((item=>{if(Object(fp_["isObject"])(item))return JSON.stringify(item);return item}))}}));return params}const getHeadersWithAuthorization=authorization=>{const headers=new Headers;const token=authorization===null||authorization===void 0?void 0:authorization.accessToken;if(authorization&&token){var _authorization$tenant;headers.append("Authorization","Bearer "+token);headers.append("tenant",(_authorization$tenant=authorization.tenant)!==null&&_authorization$tenant!==void 0?_authorization$tenant:"")}return headers};class HttpError extends Error{constructor(data,statusText){var _data$message;super((_data$message=data.message)!==null&&_data$message!==void 0?_data$message:statusText);this.data=data}}async function tryFetch(href,options){const res=await fetch(href,options);if(!res.ok){const data=await res.json();throw new HttpError(data,res.statusText)}return res}async function httpGet(endpoint,resource){let queryParams=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let authorization=arguments.length>3?arguments[3]:undefined;const headers=await getHeadersWithAuthorization(authorization);const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));return tryFetch(url.href,{headers})}async function httpPost(endpoint,resource){let body=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let queryParams=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};let authorization=arguments.length>4?arguments[4]:undefined;const headers=await getHeadersWithAuthorization(authorization);headers.append("Content-Type","application/json");const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));const options={method:"POST",headers,body:JSON.stringify(body)};return tryFetch(url.href,options)}async function httpPut(endpoint,resource){let body=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let queryParams=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};let authorization=arguments.length>4?arguments[4]:undefined;const headers=await getHeadersWithAuthorization(authorization);headers.append("Content-Type","application/json");const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));const options={method:"PUT",headers,body:JSON.stringify(body)};return tryFetch(url.href,options)}async function httpDelete(endpoint,resource){let queryParams=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let authorization=arguments.length>3?arguments[3]:undefined;const headers=await getHeadersWithAuthorization(authorization);headers.append("Content-Type","application/json");const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));const options={method:"DELETE",headers};return tryFetch(url.href,options)}var external_class_transformer_=__webpack_require__(7);var src=__webpack_require__(17);var dataset_src=__webpack_require__(6);var initializerDefineProperty=__webpack_require__(13);var applyDecoratedDescriptor=__webpack_require__(11);var initializerWarningHelper=__webpack_require__(40);var _dec,_dec2,_class,_descriptor,_descriptor2;let App_App=(_dec=Object(external_class_transformer_["Expose"])(),_dec2=Object(external_class_transformer_["Expose"])(),_class=class App{constructor(props){Object(initializerDefineProperty["a"])(this,"id",_descriptor,this);Object(initializerDefineProperty["a"])(this,"name",_descriptor2,this);Object.assign(this,props)}},_descriptor=Object(applyDecoratedDescriptor["a"])(_class.prototype,"id",[_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(applyDecoratedDescriptor["a"])(_class.prototype,"name",[_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);var Visualization=__webpack_require__(44);class Visualizations_Visualizations extends Array{constructor(){for(var _len=arguments.length,visualizations=new Array(_len),_key=0;_key<_len;_key++){visualizations[_key]=arguments[_key]}super(...visualizations);this.selectedId=void 0;if(visualizations.length>0){this.selectedId=visualizations[0].id}}clone(){const cloned=new Visualizations_Visualizations(...this);cloned.selectedId=this.selectedId;return cloned}set(visualizations){if(this.selectedId){visualizations.selectedId=this.selectedId}else if(visualizations.length>0){visualizations.selectedId=visualizations[0].id}return visualizations}getOrigin(){return this[0]}getById(id){return this.find((visualization=>visualization.id===id))}getByName(name){return this.find((visualization=>visualization.name===name))}getCurrent(){if(this.length<1)return;if(!this.selectedId)return this[0];return this.find((visualization=>visualization.id===this.selectedId))}getCurrentIndex(){const currentVisualization=this.getCurrent();if(!currentVisualization)return 0;return Object(fp_["findIndex"])({id:currentVisualization.id},this)}isLastVisualization(visualizationId){if(!this.length)return true;return this[this.length-1].id===visualizationId}getNext(){const currentVisualization=this.getCurrent();if(!currentVisualization)return;const currentIndex=Object(fp_["findIndex"])({id:currentVisualization.id},this);if(this.length-1===currentIndex)return;return this[currentIndex+1]}setSelected(visualizationId){if(!visualizationId)return this;const cloned=this.clone();cloned.selectedId=visualizationId;return cloned}setInitialPosition(params){const cloned=this.clone();const visualizationIndex=Object(fp_["findIndex"])({id:params.visualizationId},this);const newVisualization=new Visualization["b"](this[visualizationIndex]);newVisualization.setInitialPosition(params.coordinates,params.zoom,params.bearing);cloned.splice(visualizationIndex,1,newVisualization);return cloned}}var visualization_Visualizations=Visualizations_Visualizations;class DataBrowsers_DataBrowsers extends Array{clone(){return new DataBrowsers_DataBrowsers(...this)}getById(id){return this.find((dataBrowser=>dataBrowser.getId()===id))}getByData(data){return this.find((dataBrowser=>dataBrowser.data.query===data.query&&dataBrowser.data.source===data.source))}fromVisualization(visualizationId){if(!visualizationId)return;const dataBrowsers=this.filter((dataBrowser=>dataBrowser.visualization===visualizationId));return new DataBrowsers_DataBrowsers(...dataBrowsers)}withQuery(queryName){const dataBrowsers=this.filter((dataBrowser=>dataBrowser.getQueryName()===queryName));return new DataBrowsers_DataBrowsers(...dataBrowsers)}immutableSetRows(dataBrowserId,rows,offset,lastPage){const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const cloned=this.clone();const dataBrowser=cloned[index].clone();dataBrowser.setRows(rows).setOffset(offset,lastPage);cloned.splice(index,1,dataBrowser);return cloned}immutableSetSelectedRow(dataBrowserId,row){if(!dataBrowserId)return this;const cloned=this.clone();const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const dataBrowser=this[index].clone();dataBrowser.selectedRow=row;cloned.splice(index,1,dataBrowser);return cloned}immutableSetStatus(dataBrowserId,status){if(!dataBrowserId)return this;const cloned=this.clone();const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const dataBrowser=this[index].clone();dataBrowser.setStatus(status);cloned.splice(index,1,dataBrowser);return cloned}immutableSetSearch(dataBrowserId,search){if(!dataBrowserId)return this;const cloned=this.clone();const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const dataBrowser=this[index].resetOffset();dataBrowser.search=search;cloned.splice(index,1,dataBrowser);return cloned}}var data_browser_DataBrowsers=DataBrowsers_DataBrowsers;var external_js_sentencecase_=__webpack_require__(49);var external_js_sentencecase_default=__webpack_require__.n(external_js_sentencecase_);var encoding_src=__webpack_require__(10);class PlaceTransforms_PlaceTransforms extends Array{async transform(viewState,world,row,position,centroid){if(!this.length)return row;const transformedRow=await super.reduce((async(r,transformer)=>await transformer.transform(viewState,world,await r,position,centroid)),Promise.resolve(row));return new dataset_src["f"](transformedRow)}async getDiff(viewState,world,row,position,centroid){if(!this.length)return row;return super.reduce((async(r,transformer)=>{const resolvedRow=await r;return{...resolvedRow,...await transformer.getDiff(viewState,world,row,position,centroid)}}),Promise.resolve({}))}}class DefaultTransform_DefaultTransform{async transform(viewState,world,row,position,centroid){const diff=await this.getDiff(viewState,world,row,position,centroid);return new dataset_src["f"]({...row,...diff})}async getDiff(viewState,world,_,position,centroid){const unprojectedCoordinate=viewState.unProjectCoordinate(world,centroid);const diff={_x:unprojectedCoordinate[0],_y:unprojectedCoordinate[1]};if(position.z){diff["_z"]=viewState.coordinates.z}return diff}}let DataBrowserRowsetStatus;(function(DataBrowserRowsetStatus){DataBrowserRowsetStatus["NONE"]="NONE";DataBrowserRowsetStatus["LOADING"]="LOADING";DataBrowserRowsetStatus["UPDATED"]="UPDATED"})(DataBrowserRowsetStatus||(DataBrowserRowsetStatus={}));class DataBrowser_DataBrowser{constructor(props){this.visualization=void 0;this.data=void 0;this.encoding=void 0;this.list=void 0;this.navigate=void 0;this.drag=void 0;this.details=void 0;this.insert=void 0;this.search=void 0;this.rowset=void 0;this.selectedRow=void 0;if(!props)return this;Object.assign(this,props);if(!props.rowset){this.rowset={rows:new dataset_src["g"],status:DataBrowserRowsetStatus.NONE,offset:0,lastPage:true,canPaginate:false}}if(props.encoding){let position=props.encoding.position;if(props.encoding.x||props.encoding.y||props.encoding.z){position=new encoding_src["h"]({x:props.encoding.x,y:props.encoding.y,z:props.encoding.z})}this.encoding=new encoding_src["f"]({position,x:props.encoding.x,y:props.encoding.y,z:props.encoding.z})}}clone(){return new DataBrowser_DataBrowser(this)}getId(){return`${this.visualization}-${this.getQueryName()}-${this.list.field}`}getRows(){return this.rowset.rows}setRows(rows){const cloned=this.clone();cloned.rowset.status=DataBrowserRowsetStatus.UPDATED;cloned.rowset.rows=rows;return cloned}setTerm(term){this.search={term}}getName(){var _this$data;return external_js_sentencecase_default()((_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.query)}getQueryName(){var _this$data2;return(_this$data2=this.data)===null||_this$data2===void 0?void 0:_this$data2.query}getDataSource(){var _this$data3;return(_this$data3=this.data)===null||_this$data3===void 0?void 0:_this$data3.source}hasMoreRows(){return this.rowset.rows&&this.rowset.rows.length>this.list.rowLimit}getData(){return this.data}setStatus(status){const cloned=this.clone();cloned.rowset.status=status;return cloned}isLoading(){return this.rowset.status===DataBrowserRowsetStatus.LOADING}getPlaceTransforms(){var _this$drag;const transforms=new PlaceTransforms_PlaceTransforms(new DefaultTransform_DefaultTransform);if((_this$drag=this.drag)!==null&&_this$drag!==void 0&&_this$drag.placeTransform){transforms.push(this.drag.placeTransform)}return transforms}setOffset(offset,lastPage){const cloned=this.clone();cloned.rowset.offset=offset;cloned.rowset.lastPage=lastPage;if(offset===0){cloned.rowset.canPaginate=!lastPage}return cloned}resetOffset(){const cloned=this.clone();cloned.rowset.offset=0;return cloned}}var data_browser_DataBrowser=DataBrowser_DataBrowser;class Legend{constructor(){this.layer=void 0;this.visualizationId=void 0}}class Legends extends Array{}class AxesList extends Array{filter(filterFunc){return new AxesList(...super.filter(filterFunc))}getFromVisualization(visualizationId){if(!visualizationId)return new AxesList;return this.filter((axes=>axes.visualizationId===visualizationId))}someFromVisualization(visualizationId){return this.some((axes=>axes.visualizationId===visualizationId))}}class FetchState{constructor(fetchBox){this.fetchBox=void 0;this.invalidated=void 0;this.fetchBox=fetchBox;this.invalidated=false}getFetchAgainBox(){return this.fetchBox.multiply(.75)}hasReachedUpThreshold(visibleWorldBox){return visibleWorldBox.y.getMax()>this.getFetchAgainBox().y.getMax()}hasReachedRightThreshold(visibleWorldBox){return visibleWorldBox.x.getMax()>this.getFetchAgainBox().x.getMax()}hasReachedDownThreshold(visibleWorldBox){return visibleWorldBox.y.getMin()<this.getFetchAgainBox().y.getMin()}hasReachedLeftThreshold(visibleWorldBox){return visibleWorldBox.x.getMin()<this.getFetchAgainBox().x.getMin()}hasReachedResizeThreshold(visibleWorldDimensions){return visibleWorldDimensions.height>this.getFetchAgainBox().getDimensions().height||visibleWorldDimensions.width>this.getFetchAgainBox().getDimensions().width}invalidate(){this.invalidated=true}shouldFetch(viewState,world){if(this.invalidated){return true}const visibleWorldBox=viewState.getVisibleWorld(world);const visibleWorldDimensions=viewState.getVisibleWorldDimensions(world);if(!visibleWorldBox)return false;return this.hasReachedUpThreshold(visibleWorldBox)||this.hasReachedDownThreshold(visibleWorldBox)||this.hasReachedRightThreshold(visibleWorldBox)||this.hasReachedLeftThreshold(visibleWorldBox)||this.hasReachedResizeThreshold(visibleWorldDimensions)}}var ScaleKey=__webpack_require__(52);const DEFAULT_TABLE_RESOLUTION=0;class Rowset_Rowset{constructor(props){var _props$rows,_props$resolution,_props$scales;this.data=void 0;this.transform=void 0;this.resolution=void 0;this.rows=void 0;this.fetchState=void 0;this.scales=void 0;Object.assign(this,props);this.rows=(_props$rows=props===null||props===void 0?void 0:props.rows)!==null&&_props$rows!==void 0?_props$rows:new dataset_src["g"];this.resolution=(_props$resolution=props===null||props===void 0?void 0:props.resolution)!==null&&_props$resolution!==void 0?_props$resolution:DEFAULT_TABLE_RESOLUTION;this.scales=(_props$scales=props===null||props===void 0?void 0:props.scales)!==null&&_props$scales!==void 0?_props$scales:new ScaleKey["a"]}cleanClone(){return new Rowset_Rowset({...this,rows:undefined,fetchState:undefined})}getId(){var _this$data$query,_this$data,_this$resolution,_this$scales$x$type,_this$scales$x,_this$scales$x$field,_this$scales$x2,_this$scales$y$type,_this$scales$y,_this$scales$y$field,_this$scales$y2,_this$transform$getTy,_this$transform;const keys=[(_this$data$query=(_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.query)!==null&&_this$data$query!==void 0?_this$data$query:"no-query",(_this$resolution=this.resolution)!==null&&_this$resolution!==void 0?_this$resolution:0,(_this$scales$x$type=(_this$scales$x=this.scales.x)===null||_this$scales$x===void 0?void 0:_this$scales$x.type)!==null&&_this$scales$x$type!==void 0?_this$scales$x$type:"no-x-type",(_this$scales$x$field=(_this$scales$x2=this.scales.x)===null||_this$scales$x2===void 0?void 0:_this$scales$x2.field)!==null&&_this$scales$x$field!==void 0?_this$scales$x$field:"no-x",(_this$scales$y$type=(_this$scales$y=this.scales.y)===null||_this$scales$y===void 0?void 0:_this$scales$y.type)!==null&&_this$scales$y$type!==void 0?_this$scales$y$type:"no-y",(_this$scales$y$field=(_this$scales$y2=this.scales.y)===null||_this$scales$y2===void 0?void 0:_this$scales$y2.field)!==null&&_this$scales$y$field!==void 0?_this$scales$y$field:"no-y-type",(_this$transform$getTy=(_this$transform=this.transform)===null||_this$transform===void 0?void 0:_this$transform.getType())!==null&&_this$transform$getTy!==void 0?_this$transform$getTy:"no-transform"];return keys.join("_")}updateRow(newRow){const indexOnList=Object(fp_["findIndex"])({_id:newRow._id},this.rows);return this.updateRowByIndex(newRow,indexOnList)}updateRowByIndex(newRow,rowIndex){var _this$rows;if((_this$rows=this.rows)!==null&&_this$rows!==void 0&&_this$rows.length){this.rows.splice(rowIndex,1,newRow);this.rows.etag=`${this.rows.etag}_${1}`}return this}getData(){return this.data}fill(rows,fetchBox){const cloned=this.cleanClone();cloned.rows=rows;if(fetchBox)cloned.fetchState=new FetchState(fetchBox);return cloned}}var spatial_src=__webpack_require__(8);const DEFAULT_RESOLUTION=0;class Resolution_Resolution{constructor(props){this.min=void 0;this.max=void 0;this.availableResolution=void 0;Object.assign(this,props)}getMin(){if(this.availableResolution){if(Object(fp_["isNil"])(this.min)){return this.availableResolution.getMin()}else if(this.min<this.availableResolution.getMin()){return this.availableResolution.getMin()}}return this.min||DEFAULT_RESOLUTION}getMax(){if(this.availableResolution){if(Object(fp_["isNil"])(this.max)){return this.availableResolution.getMax()}else if(this.max>this.availableResolution.getMax()){return this.availableResolution.getMax()}}return this.max||DEFAULT_RESOLUTION}getRange(){return new spatial_src["e"]({min:this.getMin(),max:this.getMax()})}getTargetResolution(zoomRange,zoomLevel){if(!zoomRange||!zoomLevel)return this.getMin();if(zoomLevel>zoomRange.getMax()){return this.getMax()}if(zoomLevel<=zoomRange.getMin()){return this.getMin()}return this.doGetTargetResolution(zoomRange,zoomLevel)}}class ProportionalResolution_ProportionalResolution extends Resolution_Resolution{getResolutionIntervalProportion(zoomRange){if(this.getRange().getCount()>zoomRange.getInterval()){return 1}return zoomRange.getInterval()/this.getRange().getCount()}doGetTargetResolution(zoomRange,zoomLevel){const baseResolution=Math.floor((zoomLevel-zoomRange.getMin())/this.getResolutionIntervalProportion(zoomRange));if(Number.isNaN(baseResolution))return 0;return baseResolution+this.getRange().getMin()}}class ResolutionFactory_ResolutionFactory{constructor(){this.resolutionRange=void 0}static default(){return ResolutionFactory_ResolutionFactory.fromCount(1)}static fromCount(resolutionCount){return this.fromRange(new spatial_src["e"]({min:0,max:resolutionCount-1}))}static fromRange(resolutionRange){const resolution=new ProportionalResolution_ProportionalResolution({});resolution.min=resolutionRange===null||resolutionRange===void 0?void 0:resolutionRange.min;resolution.max=resolutionRange===null||resolutionRange===void 0?void 0:resolutionRange.max;return resolution}}function fromZoom(zoom){return layer=>layer.belongsToZoom(zoom)}function isFromVisualizationId(visualizationId){return layer=>layer.belongsToVisualization(visualizationId)}function hasId(id){return layer=>layer.id===id}const hasData=layer=>layer.hasData();function hasRowset(rowsets,zoom){return layer=>{var _layer$getTargetRowse;return layer.type==="image"||rowsets.hasRowset((_layer$getTargetRowse=layer.getTargetRowset(zoom))===null||_layer$getTargetRowse===void 0?void 0:_layer$getTargetRowse.getId())}}function isDataLoaded(rowsets){return layer=>rowsets.withData(layer.getData()).length>0}function withDataLoaded(rowsets){return layer=>isDataLoaded(rowsets)(layer)}function parseTooltipField(itemSpec){return{title:itemSpec.title,value:{encoding:{text:new encoding_src["j"](itemSpec.value.encoding.text)}}}}function parseTooltip(tooltipSpec){const tooltipContent={};if(Array.isArray(tooltipSpec.table)){tooltipContent.table=tooltipSpec.table.map((itemSpec=>parseTooltipField(itemSpec)))}else{tooltipContent.table=tooltipSpec.table}tooltipContent.actions=tooltipSpec.actions;return tooltipContent}var ZoomRange=__webpack_require__(38);var Visible_dec,Visible_class,Visible_descriptor;let Visible_Visible=(Visible_dec=Object(external_class_transformer_["Type"])((()=>ZoomRange["a"])),Visible_class=class Visible{constructor(props){this.value=void 0;Object(initializerDefineProperty["a"])(this,"zoomRange",Visible_descriptor,this);this.condition=void 0;Object.assign(this,props)}},Visible_descriptor=Object(applyDecoratedDescriptor["a"])(Visible_class.prototype,"zoomRange",[Visible_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),Visible_class);var external_case_=__webpack_require__(50);var external_case_default=__webpack_require__.n(external_case_);const getSubSchema=(schema,symbol)=>{const subSchema=Object(fp_["clone"])(schema.definitions[symbol]);if(subSchema){subSchema.definitions=schema.definitions}return subSchema};const columnToOption=column=>({value:column.name,label:column.getLabel()});const getOptionsFromQuery=(queries,queryKey,filter)=>{const columns=queries.getColumns(queryKey);if(!filter){filter=()=>true}return columns.filter(filter).map(columnToOption)};class EditorProps_EditorPropsFactory{constructor(props){this.layer=void 0;this.visualization=void 0;this.queries=void 0;this.schema=void 0;this.zoom=void 0;Object.assign(this,props)}create(type,onChange){return{...this,type,title:external_case_default.a.title(type),elementId:`${this.layer.id}-${type}-editor`,onChange:_ref=>{let{layer,value}=_ref;onChange(layer,value,type)},getOptions:predicate=>getOptionsFromQuery(this.queries,this.layer.getQueryKey(),predicate)}}}var PureComponent=__webpack_require__(25);var material_=__webpack_require__(12);var theme=__webpack_require__(9);var Icons=__webpack_require__(72);var jsx_runtime_=__webpack_require__(0);const isSelectOption=option=>!!option.label;class Select_Select extends external_react_default.a.PureComponent{render(){var _this$props$options;return Object(jsx_runtime_["jsxs"])(material_["FormControl"],{error:this.props.error,fullWidth:this.props.fullWidth!==false,children:[Object(jsx_runtime_["jsx"])(material_["Select"],{native:true,value:this.props.value,inputProps:this.props.inputProps,onChange:e=>this.props.onChange(e),fullWidth:this.props.fullWidth!==false,sx:{"& .MuiOutlinedInput-root:hover":{"& > fieldset":{borderColor:"orange"}}},children:((_this$props$options=this.props.options)===null||_this$props$options===void 0?void 0:_this$props$options.length)>0&&this.props.options.map(((option,index)=>{if(isSelectOption(option)){return Object(jsx_runtime_["jsx"])("option",{value:option.value,children:option.label},index)}return Object(jsx_runtime_["jsx"])("option",{value:option,children:option},index)}))}),this.props.error&&this.props.errorMessage&&Object(jsx_runtime_["jsx"])(material_["FormHelperText"],{sx:{ml:0},children:this.props.errorMessage})]})}}const SelectView=Object(theme["a"])("div",{name:"SelectView"})((_ref=>{let{theme}=_ref;return{...theme.components.HoparaInput,padding:"0",position:"relative",cursor:"pointer",":nth-of-type(1n) > select":{appearance:"none",backgroundColor:"transparent",border:"none",color:"inherit",padding:theme.components.HoparaInput.padding,paddingRight:"1.575rem",margin:"0",width:"100%",fontFamily:"inherit",fontSize:"inherit",cursor:"inherit",lineHeight:"inherit",":-ms-expand":{display:"none"}}}}));const SelectIconBox=Object(theme["a"])("span",{name:"SelectIconBox"})((_ref2=>{let{theme}=_ref2;return{alignItems:"center",boxSizing:"border-box",color:theme.palette.primary.main,display:"flex",height:"1.15em",pointerEvents:"none",position:"absolute",right:"8px",top:"50%",transform:"translateY(-50%)",width:"1.15em"}}));const SelectIcon=Object(theme["a"])(Icons["a"],{name:"SelectIcon"})({height:"100%",width:"100%",color:"inherit"});const colors=["#ffffff","#fef445","#fac710","#f24726","#e6e6e6","#8fd14f","#cee741","#da0063","#808080","#12cdd4","#0ca789","#9510ac","#1a1a1a","#2d9bf0","#414bb2","#652cb3"];class ColorPicker_ColorPicker extends external_react_default.a.Component{constructor(props){super(props);this.state={isOpen:false,color:props.color,lastColor:props.color,enabled:props.enabled}}handleColorClick(){this.setState({isOpen:false})}handleColorHover(color){this.setState({color},(()=>this.props.onChange(this.state.color)))}handleColorLeave(){this.setState({color:this.state.lastColor},(()=>this.props.onChange(this.state.color)))}handlePickerClick(){this.setState({isOpen:!this.state.isOpen})}render(){const{isOpen}=this.state;const styles={color:{height:"19px",borderRadius:10},swatch:{display:"inline-block",cursor:"pointer",borderRadius:12,overflow:"hidden",height:"25px",width:"calc(100% - 20px)",padding:1,border:"2px solid transparent"},selected:{border:"2px solid #622fb4",padding:1}};return Object(jsx_runtime_["jsxs"])(SelectView,{children:[Object(jsx_runtime_["jsx"])(SelectIconBox,{children:isOpen?Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-up"}):Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-down"})}),Object(jsx_runtime_["jsx"])("div",{onClick:this.handlePickerClick.bind(this),style:{margin:4},children:Object(jsx_runtime_["jsx"])("div",{style:styles.swatch,children:Object(jsx_runtime_["jsx"])("div",{style:{...styles.color,background:this.state.color,padding:0}})})}),isOpen&&Object(jsx_runtime_["jsx"])("div",{role:"list",style:{position:"relative",zIndex:1,backgroundColor:"white",padding:10,borderRadius:20,boxShadow:"0 0 0 1px rgba(0,0,0,.1)",display:"flex",flexWrap:"wrap",justifyContent:"space-between"},children:colors.map(((color,i)=>Object(jsx_runtime_["jsx"])("div",{role:"listitem",onClick:()=>this.handleColorClick(),onMouseEnter:()=>this.handleColorHover(color),onMouseLeave:()=>this.handleColorLeave(),style:{width:100/4+"%",height:25},children:Object(jsx_runtime_["jsx"])("div",{style:{...styles.swatch,width:"100%",...color===this.state.color?styles.selected:{}},children:Object(jsx_runtime_["jsx"])("div",{style:{...styles.color,backgroundColor:color}})})},"item-"+i)))})]})}}var react_=__webpack_require__(14);class ColorScheme_ColorScheme extends external_react_default.a.Component{render(){const swatchStyle=Object(react_["css"])({background:"#fff",cursor:"pointer",height:25,padding:1,border:"2px solid transparent"});const selectedStyle=Object(react_["css"])({border:"2px solid #622fb4"});const styles=[swatchStyle,Object(react_["css"])(this.props.style)];if(this.props.selected){styles.push(selectedStyle)}const ColorSchemeView=Object(theme["a"])("div",{name:"ColorSchemeView"})(Object(react_["css"])(styles));return Object(jsx_runtime_["jsx"])(ColorSchemeView,{children:Object(jsx_runtime_["jsx"])("div",{style:{display:"flex",borderRadius:30,overflow:"hidden",width:"98%",margin:"1px auto"},children:this.props.colors.map(((color,index)=>Object(jsx_runtime_["jsx"])("div",{style:{backgroundColor:color,height:17,flexGrow:1}},this.props.id+"-color-"+color+"-"+index)))})})}}var Schemes=__webpack_require__(54);const ColorSchemePicker_length=8;const schemes=Object(Schemes["c"])(ColorSchemePicker_length);class ColorSchemePicker_ColorSchemePicker extends external_react_default.a.Component{getSchemeNameFromProps(){if(this.props.range){return"custom"}else if(this.props.scheme&&Object.keys(schemes).includes(this.props.scheme)){return this.props.scheme}return Object.keys(schemes)[0]}constructor(props){super(props);this._viewRef=external_react_default.a.createRef();this.clickOutListenerCached=void 0;this.state={selectedScheme:this.getSchemeNameFromProps(),isOpen:false};this.clickOutListenerCached=this.clickOutListener.bind(this)}handleSchemeClick(e){e.stopPropagation();e.preventDefault();this.setState({isOpen:false,selectedScheme:this.state.hoveredSheme})}isCustom(scheme){return scheme==="custom"}handleSchemeHover(e,scheme){e.stopPropagation();e.preventDefault();if(scheme===this.state.hoveredSheme)return;this.setState({hoveredSheme:scheme});if(this.isCustom(scheme)){this.props.onRangeChange(this.props.range)}else{this.props.onSchemeChange(scheme)}}handleSchemeLeave(e){e.stopPropagation();e.preventDefault();if(this.isCustom(this.state.selectedScheme)){this.props.onRangeChange(this.props.range)}else{this.props.onSchemeChange(this.state.selectedScheme)}}clickOutListener(event){if(this._viewRef.current&&!this._viewRef.current.contains(event.target)){this.setState({isOpen:false})}document.removeEventListener("click",this.clickOutListenerCached,true)}listenClickOut(){if(this.state.isOpen)document.addEventListener("click",this.clickOutListenerCached,true)}handlePickerClick(e){e.stopPropagation();e.preventDefault();this.setState((prevState=>({isOpen:!prevState.isOpen})),(()=>this.listenClickOut()))}handleListBlur(){this.setState({isOpen:false})}getColors(scheme){let colors;if(this.isCustom(scheme)){colors=this.props.range}else{colors=schemes[scheme]}if(this.props.reverse){return colors.slice().reverse()}return colors}getSelectedColors(){return this.getColors(this.state.selectedScheme)}render(){var _this$props$range;const{isOpen}=this.state;let options=schemes;if((_this$props$range=this.props.range)!==null&&_this$props$range!==void 0&&_this$props$range.length){options={custom:this.props.range,...schemes}}return Object(jsx_runtime_["jsxs"])(SelectView,{ref:this._viewRef,children:[Object(jsx_runtime_["jsx"])(SelectIconBox,{children:isOpen?Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-up"}):Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-down"})}),Object(jsx_runtime_["jsx"])("div",{onClick:this.handlePickerClick.bind(this),style:{margin:4},children:Object(jsx_runtime_["jsx"])(ColorScheme_ColorScheme,{style:{width:"calc(100% - 20px)"},id:this.props.id+"-selected-color-scheme",colors:this.getSelectedColors()})}),isOpen&&Object(jsx_runtime_["jsx"])("ul",{style:{position:"relative",zIndex:1,backgroundColor:"white",padding:10,borderRadius:20,boxShadow:"0 0 0 1px rgba(0,0,0,.1)",listStyle:"none"},onBlur:this.handleListBlur.bind(this),children:Object.keys(options).map((schemeName=>Object(jsx_runtime_["jsx"])("li",{children:Object(jsx_runtime_["jsx"])("button",{onClick:this.handleSchemeClick.bind(this),onMouseEnter:e=>this.handleSchemeHover(e,schemeName),onMouseLeave:this.handleSchemeLeave.bind(this),style:{background:"none",border:"none",width:"100%",cursor:"pointer",padding:0},children:Object(jsx_runtime_["jsx"])(ColorScheme_ColorScheme,{id:this.props.id+schemeName,colors:this.getColors(schemeName),selected:this.state.hoveredSheme?schemeName===this.state.hoveredSheme:schemeName===this.state.selectedScheme})})},schemeName)))})]})}}var icons_material_=__webpack_require__(29);class InputSearch_InputSearch extends external_react_default.a.Component{constructor(props){super(props);this.state={value:this.props.initialValue?this.props.initialValue:this.props.value}}getValue(){return this.props.value||this.state.value||""}handleChange(e){if(!this.props.value){this.setState({value:e.target.value})}return this.props.onChange&&this.props.onChange(e)}render(){return Object(jsx_runtime_["jsx"])(material_["OutlinedInput"],{fullWidth:true,value:this.getValue(),placeholder:this.props.placeholder,onFocus:e=>this.props.onFocus&&this.props.onFocus(e),onBlur:e=>this.props.onBlur&&this.props.onBlur(e),onChange:e=>this.handleChange(e),endAdornment:Object(jsx_runtime_["jsx"])(material_["InputAdornment"],{position:"end",children:Object(jsx_runtime_["jsx"])(material_["IconButton"],{onClick:e=>this.props.onSubmit&&this.props.onSubmit(e),edge:"end",color:"primary",children:Object(jsx_runtime_["jsx"])(icons_material_["Search"],{fontSize:"small"})})})})}}var Slider_=__webpack_require__(88);var Slider_default=__webpack_require__.n(Slider_);var Link_=__webpack_require__(105);var Link_default=__webpack_require__.n(Link_);let ThumbFormat;(function(ThumbFormat){ThumbFormat[ThumbFormat["CIRCLE"]=0]="CIRCLE";ThumbFormat[ThumbFormat["RECTANGLE"]=1]="RECTANGLE";ThumbFormat[ThumbFormat["LINK"]=2]="LINK"})(ThumbFormat||(ThumbFormat={}));const hoparaSliderThumb=thumbFormats=>props=>{const localProps={...props,style:{...props.style,sx:undefined}};const circleProps={...localProps};const rectangleProps={...localProps,sx:{borderRadius:0,border:0,width:5}};let ppp;if(!thumbFormats||thumbFormats.length===0)ppp=circleProps;else{const format=thumbFormats[props["data-index"]];if(format===ThumbFormat.CIRCLE){ppp=circleProps}else if(format===ThumbFormat.LINK){ppp={...circleProps,sx:{backgroundColor:"#ddd",border:"2px solid #ccc"}}}else{ppp=rectangleProps}}if(thumbFormats!==null&&thumbFormats!==void 0&&thumbFormats.length&&thumbFormats[props["data-index"]]===ThumbFormat.LINK){return Object(jsx_runtime_["jsxs"])(Slider_["SliderThumb"],{...ppp,onChange:()=>({}),children:[props.children,Object(jsx_runtime_["jsx"])(Link_default.a,{sx:{padding:3}})]})}return Object(jsx_runtime_["jsx"])(Slider_["SliderThumb"],{...ppp,children:props.children})};class Slider_Slider extends external_react_default.a.PureComponent{render(){const thumbComponent=hoparaSliderThumb(this.props.thumbFormats);const omited=Object(fp_["omit"])(["thumbFormats"],this.props);return Object(jsx_runtime_["jsx"])("div",{children:Object(jsx_runtime_["jsx"])(Slider_default.a,{...omited,components:{Thumb:thumbComponent}})})}}var ColorEncoding=__webpack_require__(19);var Switch_=__webpack_require__(106);var Switch_default=__webpack_require__.n(Switch_);class SidebarCardTitle_SidebarCardTitle extends PureComponent["a"]{render(){return Object(jsx_runtime_["jsx"])(material_["Typography"],{variant:"h5",sx:{typography:"h6",...this.props.sx},children:this.props.children})}}class SidebarContent_SidebarContent extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(material_["Box"],{...this.props,sx:{...this.props.sx},children:this.props.children})}}class EncodingEditorCard_EncodingEditorCard extends external_react_default.a.PureComponent{constructor(props){super(props)}render(){const showCardContent=this.props.canBeEnabled&&this.props.enabled||!this.props.canBeEnabled;return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])(SidebarCardTitle_SidebarCardTitle,{children:this.props.title}),Object(jsx_runtime_["jsxs"])(SidebarContent_SidebarContent,{children:[this.props.canBeEnabled&&Object(jsx_runtime_["jsx"])(material_["Box"],{sx:{textAlign:"right"},children:Object(jsx_runtime_["jsx"])(Switch_default.a,{sx:{margin:"-1em auto"},checked:this.props.enabled,onChange:()=>this.props.onEnabledChange&&this.props.onEnabledChange(!this.props.enabled)})}),showCardContent&&this.props.children]})]})}}class OpacitySlider_OpacitySlider extends external_react_default.a.Component{handleOpacityChange(event){this.props.onOpacityChange(Number(event.target.value))}render(){return Object(jsx_runtime_["jsx"])(Slider_Slider,{min:0,max:1,step:.01,value:this.props.opacity,onChange:this.handleOpacityChange.bind(this),valueLabelDisplay:"auto",sx:this.props.sx})}}class SidebarSubCard_SidebarSubCard extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(material_["Box"],{sx:{display:"grid",gridTemplateColumns:"1.05fr 2fr",marginTop:"0.33em",borderLeft:"3px solid #eee",paddingLeft:"0.5em",alignItems:"center",...this.props.sx},children:this.props.children})}}class SidebarSubCardTitle_SidebarSubCardTitle extends PureComponent["a"]{render(){return Object(jsx_runtime_["jsx"])(material_["Typography"],{variant:"h6",sx:{fontWeight:"500",textTransform:"uppercase",letterSpacing:.4,fontSize:11,...this.props.sx},children:this.props.children})}}const STATIC_FIELD="__static__";class ColorEncodingEditor_ColorEncodingEditor extends external_react_default.a.Component{handleValueChange(value){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,value}))}handleReverseChange(reverse){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,reverse}}))}handleFieldChange(event){if(event.target.value===STATIC_FIELD){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,field:undefined}))}return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,field:event.target.value}))}handleSchemeChange(scheme){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,scheme}}))}handleColorRangeChange(range){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,range}}))}handleOpacityChange(opacity){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,opacity}))}getField(){var _this$props$encoding;return((_this$props$encoding=this.props.encoding)===null||_this$props$encoding===void 0?void 0:_this$props$encoding.field)||STATIC_FIELD}isStaticField(){return this.getField()===STATIC_FIELD}render(){var _this$props$title,_this$props$encoding2,_this$props$encoding3,_this$props$encoding4,_this$props$encoding5,_this$props$encoding6;const options=this.props.options;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:(_this$props$title=this.props.title)!==null&&_this$props$title!==void 0?_this$props$title:"Color",canBeEnabled:this.props.canBeEnabled,enabled:this.props.enabled,onEnabledChange:this.props.onEnabledChange,children:[Object(jsx_runtime_["jsx"])(Select_Select,{value:this.getField(),onChange:this.handleFieldChange.bind(this),options:[{label:"Fixed color",value:STATIC_FIELD},...options.map((option=>({value:option.value,label:`Bind to ${option.label} field`})))]}),this.isStaticField()&&Object(jsx_runtime_["jsx"])("div",{style:{marginTop:8},children:Object(jsx_runtime_["jsx"])(ColorPicker_ColorPicker,{color:(_this$props$encoding2=this.props.encoding)===null||_this$props$encoding2===void 0?void 0:_this$props$encoding2.value,enabled:true,onChange:this.handleValueChange.bind(this)})}),!this.isStaticField()&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Scheme"}),Object(jsx_runtime_["jsx"])(ColorSchemePicker_ColorSchemePicker,{id:this.props.id+"-color-scheme-picker",reverse:!!this.props.encoding.scale.reverse,scheme:(_this$props$encoding3=this.props.encoding)===null||_this$props$encoding3===void 0?void 0:_this$props$encoding3.scale.scheme,range:(_this$props$encoding4=this.props.encoding)===null||_this$props$encoding4===void 0?void 0:_this$props$encoding4.scale.range,onSchemeChange:this.handleSchemeChange.bind(this),onRangeChange:this.handleColorRangeChange.bind(this)})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Reverse"}),Object(jsx_runtime_["jsx"])(material_["Switch"],{size:"small",checked:!!this.props.encoding.scale.reverse,onChange:e=>{var _e$target;return this.handleReverseChange(!!(e!==null&&e!==void 0&&(_e$target=e.target)!==null&&_e$target!==void 0&&_e$target.checked))}})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Fallback"}),Object(jsx_runtime_["jsx"])(ColorPicker_ColorPicker,{color:(_this$props$encoding5=this.props.encoding)===null||_this$props$encoding5===void 0?void 0:_this$props$encoding5.value,enabled:true,onChange:this.handleValueChange.bind(this)})]})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Opacity"}),Object(jsx_runtime_["jsx"])(OpacitySlider_OpacitySlider,{opacity:(_this$props$encoding6=this.props.encoding)===null||_this$props$encoding6===void 0?void 0:_this$props$encoding6.opacity,onOpacityChange:this.handleOpacityChange.bind(this),sx:{width:"92%"}})]})]})}}var color_ColorEncodingEditor=ColorEncodingEditor_ColorEncodingEditor;const createColorEditor=props=>{const options=new encoding_src["a"](props.layer.encoding.color).requiresQuantitativeValues()?props.getOptions((column=>column.isQuantitative())):props.getOptions();return Object(jsx_runtime_["jsx"])(color_ColorEncodingEditor,{id:props.elementId,encoding:new encoding_src["a"](props.layer.encoding.color),options,transform:props.layer.transform,onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})}},props.elementId)};var SizeEncoding=__webpack_require__(32);const NULL_FIELD="__static__";class FieldEditor_FieldEditor extends external_react_default.a.Component{constructor(props){super(props)}handleChange(event){if(event.target.value===NULL_FIELD){this.props.onChange(null)}else{this.props.onChange(event.target.value)}}render(){var _this$props$field;let options=this.props.options;options=options.map((option=>({value:option.value,label:`Bind to ${option.label} field`})));if(this.props.includeNullOption){var _this$props$nullOptio;options.unshift({label:(_this$props$nullOptio=this.props.nullOptionLabel)!==null&&_this$props$nullOptio!==void 0?_this$props$nullOptio:"None",value:NULL_FIELD})}const showError=this.props.required===true&&!this.props.field;const Wrapper=this.props.title?SidebarSubCard_SidebarSubCard:external_react_default.a.Fragment;return Object(jsx_runtime_["jsxs"])(Wrapper,{children:[this.props.title&&Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:this.props.title}),Object(jsx_runtime_["jsx"])(Select_Select,{error:showError,errorMessage:showError?"Please select a field":"",value:(_this$props$field=this.props.field)!==null&&_this$props$field!==void 0?_this$props$field:"",options,onChange:this.handleChange.bind(this)})]})}}var field_FieldEditor=FieldEditor_FieldEditor;const MIN_SIZE=0;const MAX_SIZE=100;class SizeEncodingEditor_SizeEncodingEditor extends external_react_default.a.Component{constructor(props){super(props)}getValue(){var _this$props$encoding;return(_this$props$encoding=this.props.encoding)!==null&&_this$props$encoding!==void 0&&_this$props$encoding.value?Math.round(this.props.encoding.value):0}isFixedSize(){var _this$props$encoding2;return!((_this$props$encoding2=this.props.encoding)!==null&&_this$props$encoding2!==void 0&&_this$props$encoding2.field)}resizeOnZoom(){var _this$props$encoding3,_this$props$encoding4;return Number.isFinite((_this$props$encoding3=this.props.encoding)===null||_this$props$encoding3===void 0?void 0:(_this$props$encoding4=_this$props$encoding3.resize)===null||_this$props$encoding4===void 0?void 0:_this$props$encoding4.referenceZoom)&&!this.props.disableResizeOnZooming}notifyChange(encoding){this.props.onEncodingChange(encoding)}handleFieldChange(field){this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,field}))}handleValueChange(event){this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,value:Number(event.target.value)}))}handleToggleResizeChange(){if(this.resizeOnZoom()){return this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{referenceZoom:undefined,maxZoom:undefined}}))}const referenceZoom=Math.round(this.props.currentZoom);this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{referenceZoom,maxZoom:referenceZoom+1}}))}handleResizeRefZoomChange(event,value){var _this$props$encoding5;this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{...(_this$props$encoding5=this.props.encoding)===null||_this$props$encoding5===void 0?void 0:_this$props$encoding5.resize,referenceZoom:value}}))}handleResizeMaxZoomChange(event,value){var _this$props$encoding6;this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{...(_this$props$encoding6=this.props.encoding)===null||_this$props$encoding6===void 0?void 0:_this$props$encoding6.resize,maxZoom:value}}))}handleRangeChange(event){this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,scale:{range:event.target.value}}))}renderFixedSize(){var _this$props$encoding7,_this$props$encoding8,_this$props$encoding9;return Object(jsx_runtime_["jsxs"])("div",{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Size"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{value:this.getValue(),onChange:this.handleValueChange.bind(this),valueLabelDisplay:"auto"})]}),!this.props.disableResizeOnZooming&&Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Resize while zooming"}),Object(jsx_runtime_["jsx"])(material_["Switch"],{size:"small",onChange:this.handleToggleResizeChange.bind(this),checked:this.resizeOnZoom()})]}),this.resizeOnZoom()&&((_this$props$encoding7=this.props.encoding)===null||_this$props$encoding7===void 0?void 0:(_this$props$encoding8=_this$props$encoding7.resize)===null||_this$props$encoding8===void 0?void 0:_this$props$encoding8.referenceZoom)&&((_this$props$encoding9=this.props.encoding)===null||_this$props$encoding9===void 0?void 0:_this$props$encoding9.resize.maxZoom)&&Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Zoom level"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:this.props.zoomRange.getMin(),max:this.props.zoomRange.getMax(),step:.5,value:this.props.encoding.resize.maxZoom,onChange:this.handleResizeMaxZoomChange.bind(this),valueLabelDisplay:"auto",valueLabelFormat:(level,pos)=>{switch(pos){case 0:return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:["enlarge until",Object(jsx_runtime_["jsx"])("br",{}),Object(jsx_runtime_["jsxs"])("b",{children:["zoom ",level]})]})}}})]})]})}renderRangedField(){var _this$props$encoding$,_this$props$encoding10,_this$props$encoding11,_this$props$encoding$2,_this$props$encoding12,_this$props$encoding13;return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Range"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:MIN_SIZE,max:MAX_SIZE,thumbFormats:[ThumbFormat.RECTANGLE,ThumbFormat.RECTANGLE],value:[(_this$props$encoding$=(_this$props$encoding10=this.props.encoding)===null||_this$props$encoding10===void 0?void 0:(_this$props$encoding11=_this$props$encoding10.scale)===null||_this$props$encoding11===void 0?void 0:_this$props$encoding11.range[0])!==null&&_this$props$encoding$!==void 0?_this$props$encoding$:MIN_SIZE,(_this$props$encoding$2=(_this$props$encoding12=this.props.encoding)===null||_this$props$encoding12===void 0?void 0:(_this$props$encoding13=_this$props$encoding12.scale)===null||_this$props$encoding13===void 0?void 0:_this$props$encoding13.range[1])!==null&&_this$props$encoding$2!==void 0?_this$props$encoding$2:MAX_SIZE],onChange:this.handleRangeChange.bind(this),valueLabelDisplay:"auto"})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Fallback"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{value:this.getValue(),onChange:this.handleValueChange.bind(this),valueLabelDisplay:"auto"})]})]})}render(){var _this$props$title,_this$props$encoding14;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:(_this$props$title=this.props.title)!==null&&_this$props$title!==void 0?_this$props$title:"Size",canBeEnabled:this.props.canBeEnabled,enabled:this.props.enabled,onEnabledChange:this.props.onEnabledChange,children:[Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:this.props.id,options:this.props.options,field:(_this$props$encoding14=this.props.encoding)===null||_this$props$encoding14===void 0?void 0:_this$props$encoding14.field,includeNullOption:true,nullOptionLabel:`Fixed ${this.props.title.toLowerCase()}`,onChange:this.handleFieldChange.bind(this)},this.props.id),this.isFixedSize()&&this.renderFixedSize(),!this.isFixedSize()&&this.renderRangedField()]})}}var size_SizeEncodingEditor=SizeEncodingEditor_SizeEncodingEditor;const sizeOptionsFilter=column=>column.isQuantitative()||column.isTemporal();const createSizeEditor=props=>{var _props$layer$visible$;return Object(jsx_runtime_["jsx"])(size_SizeEncodingEditor,{id:props.elementId,title:props.title,encoding:props.layer.encoding.size,options:props.getOptions(sizeOptionsFilter),onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})},currentZoom:props.zoom,zoomRange:(_props$layer$visible$=props.layer.visible.zoomRange)!==null&&_props$layer$visible$!==void 0?_props$layer$visible$:new spatial_src["e"]},props.elementId)};var OffsetEncoding=__webpack_require__(79);const createOffsetEditor=props=>{var _props$layer$encoding,_props$layer$visible$;return Object(jsx_runtime_["jsx"])(size_SizeEncodingEditor,{id:props.elementId,title:props.title,encoding:(_props$layer$encoding=props.layer.encoding.offset)===null||_props$layer$encoding===void 0?void 0:_props$layer$encoding.y,options:props.getOptions(sizeOptionsFilter),onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:new OffsetEncoding["a"]({y:newEncoding})})},currentZoom:props.zoom,zoomRange:(_props$layer$visible$=props.layer.visible.zoomRange)!==null&&_props$layer$visible$!==void 0?_props$layer$visible$:new ZoomRange["a"]},props.elementId)};function createFieldBasedEditor(props){var _props$layer$encoding,_props$layer$encoding2;return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:props.title,children:Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:props.elementId,options:props.getOptions(),field:(_props$layer$encoding=(_props$layer$encoding2=props.layer.encoding[props.type])===null||_props$layer$encoding2===void 0?void 0:_props$layer$encoding2.field)!==null&&_props$layer$encoding!==void 0?_props$layer$encoding:"",transform:props.layer.transform,includeNullOption:true,onChange:field=>{const newEncoding={...props.layer.encoding[props.type],field};props.onChange({layer:props.layer,value:newEncoding})}},props.elementId)})}const createIconEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.type===dataset_src["b"].STRING))});const createImageEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.type===dataset_src["b"].STRING))});const createLineEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.isGeometry()))});const createPolygonEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.isGeometry()||column.type===dataset_src["b"].STRING||column.type===dataset_src["b"].JSON))});const createTextEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.type===dataset_src["b"].STRING||column.isQuantitative()))});const createBoundsEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.isGeometry()))});class HeatmapEncoding{constructor(props){this.intensity=void 0;this.radius=void 0;this.createdTimestamp=void 0;Object.assign(this,props);this.createdTimestamp=new Date}isRenderable(){return true}}var Tooltip_=__webpack_require__(107);var Tooltip_default=__webpack_require__.n(Tooltip_);var Info_=__webpack_require__(108);var Info_default=__webpack_require__.n(Info_);class Infotip_Infotip extends external_react_default.a.PureComponent{render(){const props={placement:"top",arrow:true,...this.props};return Object(jsx_runtime_["jsx"])(Tooltip_default.a,{...props,children:Object(jsx_runtime_["jsx"])(Info_default.a,{fontSize:"small"})})}}const MIN_INTENSITY_MULTIPLIER=0;const MAX_INTENSITY_MULTIPLIER=5;const MIN_RADIUS=0;const MAX_RADIUS=80;const HeatmapEncodingEditor_NULL_FIELD="__static__";class HeatmapEncodingEditor_HeatmapEncodingEditor extends external_react_default.a.Component{constructor(props){super(props)}notifyChange(encoding){this.props.onEncodingChange(encoding)}handleIntensityMultiplierChange(event){const encoding=new HeatmapEncoding({...this.props.encoding});encoding.intensity.multiplier=event.target.value;this.notifyChange(encoding)}getField(){var _this$props$encoding$;return(_this$props$encoding$=this.props.encoding.intensity.field)!==null&&_this$props$encoding$!==void 0?_this$props$encoding$:HeatmapEncodingEditor_NULL_FIELD}handleRadiusChange(event){const encoding=new HeatmapEncoding({...this.props.encoding});encoding.radius=event.target.value;this.notifyChange(encoding)}handleIntensityFieldChange(field){const encoding=new HeatmapEncoding({...this.props.encoding});if(field===HeatmapEncodingEditor_NULL_FIELD){encoding.intensity.field=undefined}else{encoding.intensity.field=field}this.notifyChange(encoding)}render(){return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Heatmap",children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Intensity field"}),Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:this.props.elementId,options:this.props.fieldOptions,field:this.getField(),transform:this.props.transforms,includeNullOption:true,onChange:this.handleIntensityFieldChange.bind(this)},this.props.elementId)]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Intensity multiplier"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:MIN_INTENSITY_MULTIPLIER,max:MAX_INTENSITY_MULTIPLIER,step:.1,value:this.props.encoding.intensity.multiplier,onChange:this.handleIntensityMultiplierChange.bind(this),valueLabelDisplay:"auto"}),Object(jsx_runtime_["jsx"])(Infotip_Infotip,{title:"The higher the multiplier the more biased towards the end of the color spectrum",sx:{ml:5}})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Aggregation radius"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:MIN_RADIUS,max:MAX_RADIUS,step:2,value:this.props.encoding.radius,onChange:this.handleRadiusChange.bind(this),valueLabelDisplay:"auto"})]})]})}}var heatmap_HeatmapEncodingEditor=HeatmapEncodingEditor_HeatmapEncodingEditor;const createHeatmapEditor=props=>{const quantitativeFilter=column=>column.isQuantitative();return Object(jsx_runtime_["jsx"])(heatmap_HeatmapEncodingEditor,{elementId:props.elementId+"editor",transforms:props.layer.transform,onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})},fieldOptions:getOptionsFromQuery(props.queries,props.layer.getQueryKey(),quantitativeFilter),encoding:props.layer.encoding.heatmap},props.elementId)};class SchemeColorEncodingEditor_SchemeColorEncodingEditor extends external_react_default.a.Component{handleReverseChange(reverse){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,reverse}}))}handleSchemeChange(scheme){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,scheme}}))}handleRangeChange(range){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,range}}))}handleOpacityChange(opacity){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,opacity}))}render(){var _this$props$encoding,_this$props$encoding2;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Color",children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Scheme"}),Object(jsx_runtime_["jsx"])(ColorSchemePicker_ColorSchemePicker,{id:this.props.id+"-color-scheme-picker",reverse:!!this.props.encoding.scale.reverse,scheme:(_this$props$encoding=this.props.encoding)===null||_this$props$encoding===void 0?void 0:_this$props$encoding.scale.scheme,range:(_this$props$encoding2=this.props.encoding)===null||_this$props$encoding2===void 0?void 0:_this$props$encoding2.scale.range,onSchemeChange:this.handleSchemeChange.bind(this),onRangeChange:this.handleRangeChange.bind(this)})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Reverse"}),Object(jsx_runtime_["jsx"])(material_["Switch"],{size:"small",checked:!!this.props.encoding.scale.reverse,onChange:e=>{var _e$target;return this.handleReverseChange(!!(e!==null&&e!==void 0&&(_e$target=e.target)!==null&&_e$target!==void 0&&_e$target.checked))}})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Opacity"}),Object(jsx_runtime_["jsx"])(OpacitySlider_OpacitySlider,{opacity:this.props.encoding.opacity,onOpacityChange:this.handleOpacityChange.bind(this)})]})]})}}var color_SchemeColorEncodingEditor=SchemeColorEncodingEditor_SchemeColorEncodingEditor;const createSchemeColorEditor=props=>Object(jsx_runtime_["jsx"])(color_SchemeColorEncodingEditor,{id:props.elementId,encoding:new encoding_src["a"](props.layer.encoding.color),onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})}},props.elementId);class TypeEditor_TypeEditor extends external_react_default.a.Component{constructor(props){super(props)}render(){const options=this.props.options.map((option=>({value:option.value,label:option.label})));return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Type",children:Object(jsx_runtime_["jsx"])(Select_Select,{value:this.props.type,options,onChange:event=>this.props.onChange(event.target.value)})})}}var type_editor_TypeEditor=TypeEditor_TypeEditor;const createTypeEditor=props=>Object(jsx_runtime_["jsx"])(type_editor_TypeEditor,{id:props.layer.id+"type-editor",type:props.layer.type,options:Object.keys(LayerType).map((type=>({value:type,label:external_case_default.a.title(type)}))),onChange:value=>{props.onChange({layer:props.layer,value})}},props.layer.id+"type-editor");class QueryEditor_QueryEditor extends external_react_default.a.Component{constructor(props){super(props)}handleQueryChange(event){const index=Number(event.target.value);this.props.onChange(this.props.queries[index])}render(){var _this$props$queries$i;const options=this.props.queries.map(((query,index)=>({value:index,label:query.getName()})));options.unshift({label:"None",value:""});const query=this.props.queries.findQuery(this.props.queryKey);return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Query",children:Object(jsx_runtime_["jsx"])(Select_Select,{value:(_this$props$queries$i=this.props.queries.indexOf(query))!==null&&_this$props$queries$i!==void 0?_this$props$queries$i:"",options,error:!this.props.queryKey,errorMessage:!this.props.queryKey?"Please select a query":undefined,onChange:this.handleQueryChange.bind(this)})})}}var query_QueryEditor=QueryEditor_QueryEditor;const createQueryEditor=props=>Object(jsx_runtime_["jsx"])(query_QueryEditor,{id:props.layer.id+"-query",queryKey:props.layer.getData(),queries:props.queries,onChange:value=>{props.onChange({layer:props.layer,value})}},props.layer.id+"-query");var World=__webpack_require__(39);class PositionEncodingEditor_PositionEncodingEditor extends external_react_default.a.Component{constructor(props){super(props)}updateEncoding(newEncoding){this.props.onEncodingChange(newEncoding)}handleXFieldChange(field){var _this$props$encoding;this.updateEncoding(new encoding_src["h"]({...this.props.encoding,x:{...(_this$props$encoding=this.props.encoding)===null||_this$props$encoding===void 0?void 0:_this$props$encoding.x,field}}))}handleYFieldChange(field){var _this$props$encoding2;this.updateEncoding(new encoding_src["h"]({...this.props.encoding,y:{...(_this$props$encoding2=this.props.encoding)===null||_this$props$encoding2===void 0?void 0:_this$props$encoding2.y,field}}))}render(){var _this$props$encoding$,_this$props$encoding$2;const xTitle=this.props.worldType===World["b"].GEO?"Longitude":"X";const xSelect=Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:"x-position-field",field:(_this$props$encoding$=this.props.encoding.x)===null||_this$props$encoding$===void 0?void 0:_this$props$encoding$.field,options:this.props.options,onChange:this.handleXFieldChange.bind(this),title:xTitle,includeNullOption:true,transform:this.props.transform},"x-position-field");const yTitle=this.props.worldType===World["b"].GEO?"Latitude":"Y";const ySelect=Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:"y-position-field",field:(_this$props$encoding$2=this.props.encoding.y)===null||_this$props$encoding$2===void 0?void 0:_this$props$encoding$2.field,options:this.props.options,onChange:this.handleYFieldChange.bind(this),title:yTitle,includeNullOption:true,transform:this.props.transform},"y-position-field");const geoComponents=Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[ySelect,xSelect]});const cartesianComponents=Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[xSelect,ySelect]});return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Position",children:this.props.worldType===World["b"].GEO?geoComponents:cartesianComponents})}}var position_PositionEncodingEditor=PositionEncodingEditor_PositionEncodingEditor;const createPositionEditor=props=>{const options=props.getOptions((column=>column.isQuantitative()||column.isGeometry()||column.isTemporal()));return Object(jsx_runtime_["jsx"])(position_PositionEncodingEditor,{id:props.elementId,options,worldType:props.visualization.type,encoding:props.layer.encoding.position,transform:props.layer.transform,onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})}})};var external_supercluster_=__webpack_require__(109);var external_supercluster_default=__webpack_require__.n(external_supercluster_);class ClusterTransform_ClusterTransform{constructor(radius){this.radius=void 0;this.cache={};if(radius){this.radius=radius}else{this.radius=30}}getType(){return"CLUSTER"}apply(rows,columns,zoom){const zoomKey=Math.floor(zoom*10/5);const cacheKey=zoomKey+rows.etag;if(this.cache[cacheKey]){return this.cache[cacheKey]}const index=new external_supercluster_default.a({maxZoom:256,radius:this.radius*Math.sqrt(2),map:row=>{const map={};columns.forEach((column=>{if(!(column.isQuantitative()||column.isType(dataset_src["b"].BOOLEAN)))return;map[column.getName()]=row.getValue(column.getName())}));return map},reduce:(acc,row)=>{columns.forEach((column=>{if(!(column.isQuantitative()||column.isType(dataset_src["b"].BOOLEAN)))return;const name=column.getName();acc[column.getName()]=acc[name]>row[name]?acc[name]:row[name]}))}});index.load(rows.map((row=>({geometry:{coordinates:[row._x,row._y]},properties:row}))));const clusteredFeatures=index.getClusters([-180,-85,180,85],Math.floor(zoom!==null&&zoom!==void 0?zoom:0));const clusteredRows=new dataset_src["g"](...clusteredFeatures.map((feature=>{var _feature$properties$c,_feature$properties$p;return{...feature.properties,_x:feature.geometry.coordinates[0],_y:feature.geometry.coordinates[1],_id:`cluster-${(_feature$properties$c=feature.properties.cluster_id)!==null&&_feature$properties$c!==void 0?_feature$properties$c:feature.properties._id}`,point_count:(_feature$properties$p=feature.properties.point_count)!==null&&_feature$properties$p!==void 0?_feature$properties$p:1}})));clusteredRows.etag=rows.etag+zoomKey;this.cache[cacheKey]=clusteredRows;return clusteredRows}isBackend(){return false}}class BackendTransform{isBackend(){return true}}var TimeTransform_dec,TimeTransform_class,TimeTransform_descriptor;let TimeTransform_TimeTransform=(TimeTransform_dec=Object(external_class_transformer_["Type"])((()=>ProportionalResolution_ProportionalResolution)),TimeTransform_class=class TimeTransform extends BackendTransform{constructor(props){super();Object(initializerDefineProperty["a"])(this,"resolution",TimeTransform_descriptor,this);Object.assign(this,props)}getType(){return"TIME"}getResolution(){const availableResolution=new spatial_src["e"]({min:0,max:6});return new ProportionalResolution_ProportionalResolution({...this.resolution,availableResolution})}},TimeTransform_descriptor=Object(applyDecoratedDescriptor["a"])(TimeTransform_class.prototype,"resolution",[TimeTransform_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),TimeTransform_class);var Transforms_dec,Transforms_dec2,Transforms_class,Transforms_descriptor,Transforms_descriptor2;let Transforms_Transforms=(Transforms_dec=Object(external_class_transformer_["Type"])((()=>ClusterTransform_ClusterTransform)),Transforms_dec2=Object(external_class_transformer_["Type"])((()=>TimeTransform_TimeTransform)),Transforms_class=class Transforms{constructor(props){Object(initializerDefineProperty["a"])(this,"cluster",Transforms_descriptor,this);Object(initializerDefineProperty["a"])(this,"time",Transforms_descriptor2,this);Object.assign(this,props)}getCurrent(){var _this;const activeKeys=Object.keys(this).filter((key=>this[key]));return(_this=this[Object(fp_["first"])(activeKeys)])===null||_this===void 0?void 0:_this.getType()}getBackendTransform(){return this.time}},Transforms_descriptor=Object(applyDecoratedDescriptor["a"])(Transforms_class.prototype,"cluster",[Transforms_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),Transforms_descriptor2=Object(applyDecoratedDescriptor["a"])(Transforms_class.prototype,"time",[Transforms_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),Transforms_class);class TransformEditor_TransformEditor extends external_react_default.a.Component{constructor(props){super(props);this.onTypeChange=this.onTypeChange.bind(this);this.onClusterChange=this.onClusterChange.bind(this)}onTypeChange(event){const newTransform=new Transforms_Transforms;if(event.target.value){newTransform[event.target.value]=new ClusterTransform_ClusterTransform}this.props.onChange(newTransform)}onClusterChange(event){const newTransform=new Transforms_Transforms;newTransform.cluster=new ClusterTransform_ClusterTransform(event.target.value);this.props.onChange(newTransform)}getTypeOptions(){return this.props.options.map((option=>({label:external_js_sentencecase_default()(option),value:option.toLowerCase()})))}getCurrentType(){return Object.keys(this.props.transform).find((transformKey=>!!this.props.transform[transformKey]))}render(){var _this$props$transform,_this$getCurrentType,_this$props$transform2;const options=[{label:"None",value:""},...this.getTypeOptions()];const labelDisplay=((_this$props$transform=this.props.transform.cluster)===null||_this$props$transform===void 0?void 0:_this$props$transform.radius)+" pixels";return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Transform",children:[Object(jsx_runtime_["jsx"])(Select_Select,{value:(_this$getCurrentType=this.getCurrentType())!==null&&_this$getCurrentType!==void 0?_this$getCurrentType:"",options,onChange:this.onTypeChange}),this.getCurrentType()&&Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Aggregation radius"}),Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{children:Object(jsx_runtime_["jsx"])(Slider_Slider,{value:(_this$props$transform2=this.props.transform.cluster)===null||_this$props$transform2===void 0?void 0:_this$props$transform2.radius,onChange:this.onClusterChange,valueLabelDisplay:"auto",valueLabelFormat:()=>Object(jsx_runtime_["jsx"])(external_react_default.a.Fragment,{children:labelDisplay})})})]})]})}}var transform_TransformEditor=TransformEditor_TransformEditor;const createTransformEditor=props=>{var _query$getTransformTy;const query=props.queries.findQuery(props.layer.getQueryKey());return Object(jsx_runtime_["jsx"])(transform_TransformEditor,{id:props.elementId,options:(_query$getTransformTy=query===null||query===void 0?void 0:query.getTransformTypes())!==null&&_query$getTransformTy!==void 0?_query$getTransformTy:[],transform:props.layer.transform,onChange:newTransform=>{props.onChange({layer:props.layer,value:newTransform})}},props.elementId)};class VisibilityEditor_VisibilityEditor extends external_react_default.a.Component{constructor(props){super(props);this.toggle=this.toggle.bind(this);this.updateZoomRange=this.updateZoomRange.bind(this)}toggle(){const visible={...this.props.visible,value:!this.props.visible.value};this.props.onVisibilityChange(visible)}updateZoomRange(event){var _this$props$visible$z,_this$props$visible$z2,_this$props$visible$z3,_this$props$visible$z4,_this$props$visible$z5,_this$props$visible$z6,_this$props$visible$z7,_this$props$visible$z8,_this$props$visible$z9,_this$props$visible$z10,_this$props$visible$z11,_this$props$visible$z12,_this$props$visible$z13,_this$props$visible$z14,_this$props$visible$z15,_this$props$visible$z16,_this$props$visible$z17,_this$props$visible$z18;if((_this$props$visible$z=this.props.visible.zoomRange)!==null&&_this$props$visible$z!==void 0&&(_this$props$visible$z2=_this$props$visible$z.min)!==null&&_this$props$visible$z2!==void 0&&_this$props$visible$z2.relative&&(_this$props$visible$z3=this.props.visible.zoomRange)!==null&&_this$props$visible$z3!==void 0&&(_this$props$visible$z4=_this$props$visible$z3.max)!==null&&_this$props$visible$z4!==void 0&&_this$props$visible$z4.relative)return;else if((_this$props$visible$z5=this.props.visible.zoomRange)!==null&&_this$props$visible$z5!==void 0&&(_this$props$visible$z6=_this$props$visible$z5.min)!==null&&_this$props$visible$z6!==void 0&&_this$props$visible$z6.relative&&((_this$props$visible$z7=this.props.visible.zoomRange)===null||_this$props$visible$z7===void 0?void 0:(_this$props$visible$z8=_this$props$visible$z7.max)===null||_this$props$visible$z8===void 0?void 0:(_this$props$visible$z9=_this$props$visible$z8.fixed)===null||_this$props$visible$z9===void 0?void 0:_this$props$visible$z9.value)===event.target.value[1])return;else if((_this$props$visible$z10=this.props.visible.zoomRange)!==null&&_this$props$visible$z10!==void 0&&(_this$props$visible$z11=_this$props$visible$z10.max)!==null&&_this$props$visible$z11!==void 0&&_this$props$visible$z11.relative&&((_this$props$visible$z12=this.props.visible.zoomRange)===null||_this$props$visible$z12===void 0?void 0:(_this$props$visible$z13=_this$props$visible$z12.min)===null||_this$props$visible$z13===void 0?void 0:(_this$props$visible$z14=_this$props$visible$z13.fixed)===null||_this$props$visible$z14===void 0?void 0:_this$props$visible$z14.value)===event.target.value[0])return;const visible={...this.props.visible,zoomRange:new ZoomRange["a"]({min:(_this$props$visible$z15=this.props.visible.zoomRange)!==null&&_this$props$visible$z15!==void 0&&(_this$props$visible$z16=_this$props$visible$z15.min)!==null&&_this$props$visible$z16!==void 0&&_this$props$visible$z16.relative?this.props.visible.zoomRange.min:{fixed:{value:event.target.value[0]}},max:(_this$props$visible$z17=this.props.visible.zoomRange)!==null&&_this$props$visible$z17!==void 0&&(_this$props$visible$z18=_this$props$visible$z17.max)!==null&&_this$props$visible$z18!==void 0&&_this$props$visible$z18.relative?this.props.visible.zoomRange.max:{fixed:{value:event.target.value[1]}}})};this.props.onVisibilityChange(visible)}handleConditionFieldChange(field){const visible={...this.props.visible};visible.condition=field?{test:field}:undefined;this.props.onVisibilityChange(visible)}render(){var _this$props$visible$z19,_this$props$visible$z20,_this$props$visible$z21,_this$props$visible$c,_this$props$visible$z22,_this$props$visible$z23,_this$props$visible$z24,_this$props$visible$z25;const isMinReferenced=!!((_this$props$visible$z19=this.props.visible.zoomRange)!==null&&_this$props$visible$z19!==void 0&&(_this$props$visible$z20=_this$props$visible$z19.min)!==null&&_this$props$visible$z20!==void 0&&(_this$props$visible$z21=_this$props$visible$z20.relative)!==null&&_this$props$visible$z21!==void 0&&_this$props$visible$z21.layer);return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Visible",canBeEnabled:true,enabled:this.props.visible.value,onEnabledChange:this.toggle.bind(this),children:this.props.visible.value&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Condition"}),Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:this.props.elementId,options:this.props.fieldOptions,field:(_this$props$visible$c=this.props.visible.condition)===null||_this$props$visible$c===void 0?void 0:_this$props$visible$c.test,transform:this.props.transforms,includeNullOption:true,onChange:this.handleConditionFieldChange.bind(this)},this.props.elementId)]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Zoom"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:this.props.minZoom,max:this.props.maxZoom,step:.5,thumbFormats:[isMinReferenced?ThumbFormat.LINK:ThumbFormat.CIRCLE,ThumbFormat.CIRCLE],value:[(_this$props$visible$z22=(_this$props$visible$z23=this.props.visible.zoomRange)===null||_this$props$visible$z23===void 0?void 0:_this$props$visible$z23.getMin())!==null&&_this$props$visible$z22!==void 0?_this$props$visible$z22:this.props.minZoom,(_this$props$visible$z24=(_this$props$visible$z25=this.props.visible.zoomRange)===null||_this$props$visible$z25===void 0?void 0:_this$props$visible$z25.getMax())!==null&&_this$props$visible$z24!==void 0?_this$props$visible$z24:this.props.maxZoom],onChange:this.updateZoomRange.bind(this),valueLabelDisplay:"auto",valueLabelFormat:(level,pos)=>{if(pos===1){return Object(jsx_runtime_["jsxs"])(external_react_default.a.Fragment,{children:["visible until",Object(jsx_runtime_["jsx"])("br",{}),Object(jsx_runtime_["jsxs"])("b",{children:["zoom ",level]})]})}if(pos===0){return Object(jsx_runtime_["jsxs"])(external_react_default.a.Fragment,{children:["visible from",Object(jsx_runtime_["jsx"])("br",{}),Object(jsx_runtime_["jsxs"])("b",{children:["zoom ",level]})]})}}})]})]})})}}var visibility_editor_VisibilityEditor=VisibilityEditor_VisibilityEditor;const createVisibilityEditor=props=>Object(jsx_runtime_["jsx"])(visibility_editor_VisibilityEditor,{visible:props.layer.visible,elementId:props.elementId,transforms:props.layer.transform,onVisibilityChange:newVisibility=>{props.onChange({layer:props.layer,value:newVisibility})},fieldOptions:getOptionsFromQuery(props.queries,props.layer.getQueryKey()),maxZoom:props.visualization.zoomRange.getMax(),minZoom:props.visualization.zoomRange.getMin()},props.elementId);const getTypeOptions=(layerType,currentType)=>{const typeOptions=["custom",...Object.keys(layerAnimationTemplates)].map((key=>({value:key,label:external_case_default.a.title(key)})));if(currentType==="custom"){return typeOptions}return typeOptions.filter((option=>option.value!==LayerAnimationType.custom)).filter((option=>{if(option.value==="custom")return true;const template=layerAnimationTemplates[option.value];return template.layerTypes.includes(layerType)}))};class AnimationEditor_AnimationEditor extends external_react_default.a.PureComponent{onChange(params){var _params$enabled,_params$type,_this$props$animation;const enabled=(_params$enabled=params.enabled)!==null&&_params$enabled!==void 0?_params$enabled:this.props.animation.enabled;this.props.onChange(new LayerAnimation_LayerAnimation({enabled,data:enabled?{field:params.field,type:(_params$type=params.type)!==null&&_params$type!==void 0?_params$type:(_this$props$animation=this.props.animation.data)===null||_this$props$animation===void 0?void 0:_this$props$animation.type}:undefined}))}handleTypeChange(event){this.onChange({type:event.target.value})}handleFieldChange(field){this.onChange({field})}handleEnabledChange(enabled){var _getTypeOptions$;this.onChange({enabled,type:(_getTypeOptions$=getTypeOptions(this.props.layerType)[0])===null||_getTypeOptions$===void 0?void 0:_getTypeOptions$.value})}render(){var _this$props$animation2,_this$props$animation3,_this$props$animation4,_this$props$animation5,_this$props$animation6;const field=(_this$props$animation2=(_this$props$animation3=this.props.animation.data)===null||_this$props$animation3===void 0?void 0:_this$props$animation3.field)!==null&&_this$props$animation2!==void 0?_this$props$animation2:"";const type=(_this$props$animation4=(_this$props$animation5=this.props.animation.data)===null||_this$props$animation5===void 0?void 0:_this$props$animation5.type)!==null&&_this$props$animation4!==void 0?_this$props$animation4:LayerAnimationType.pulse;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Animation",canBeEnabled:true,enabled:this.props.animation.enabled,onEnabledChange:this.handleEnabledChange.bind(this),children:[Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:"field-editor",options:this.props.fieldOptions,transform:this.props.transform,title:"Condition",field,includeNullOption:true,nullOptionLabel:"Animate all rows",onChange:this.handleFieldChange.bind(this),required:false}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Type"}),Object(jsx_runtime_["jsx"])(Select_Select,{value:(_this$props$animation6=this.props.animation.data)===null||_this$props$animation6===void 0?void 0:_this$props$animation6.type,options:getTypeOptions(this.props.layerType,type),onChange:this.handleTypeChange.bind(this)})]})]})}}const createAnimationEditor=props=>Object(jsx_runtime_["jsx"])(AnimationEditor_AnimationEditor,{id:props.elementId,layerType:props.layer.type,animation:props.layer.getAnimation(),fieldOptions:props.getOptions(),onChange:value=>{props.onChange({layer:props.layer,value})}},props.elementId);var TextField_=__webpack_require__(110);var TextField_default=__webpack_require__.n(TextField_);var ChevronLeft_=__webpack_require__(111);var ChevronLeft_default=__webpack_require__.n(ChevronLeft_);class BackButton_BackButton extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(material_["Button"],{variant:"text",sx:{mb:theme=>theme.shape.paddingInner+"px"},onClick:()=>this.props.onBack(),startIcon:Object(jsx_runtime_["jsx"])(ChevronLeft_default.a,{}),children:"Back"})}}class SidebarCard_SidebarCard extends external_react_default.a.PureComponent{getGridProps(grid){if(!grid)return{};return{display:"grid",gridTemplateColumns:"0.7fr 2fr",borderBottom:theme=>theme.shape.borderLight,"& h5":{marginBottom:0,marginTop:5,fontSize:"14px",fontWeight:600}}}render(){return Object(jsx_runtime_["jsx"])(material_["Box"],{sx:{padding:"0.66em 1em","& h5":{marginBottom:"0.33em"},...this.getGridProps(this.props.grid)},children:this.props.children})}}class LayerItem_LayerItem extends external_react_default.a.PureComponent{constructor(props){super(props);this.titleRef=void 0;this.notifyDebounced=void 0;this.titleRef=Object(external_react_["createRef"])();this.state={title:props.title};this.notifyDebounced=Object(fp_["debounce"])(2e3,this.notifyTitleChange.bind(this))}notifyTitleChange(e){if(e.target.value===this.props.title)return;if(this.notifyDebounced.cancel)this.notifyDebounced.cancel();return this.props.onTitleChange(e.target.value)}focusOnTitle(){var _this$titleRef,_this$titleRef$curren;return(_this$titleRef=this.titleRef)===null||_this$titleRef===void 0?void 0:(_this$titleRef$curren=_this$titleRef.current)===null||_this$titleRef$curren===void 0?void 0:_this$titleRef$curren.focus()}handleTitleChange(e){this.setState({title:e.target.value});this.notifyDebounced(e)}render(){var _this$props$component;if(!((_this$props$component=this.props.components)!==null&&_this$props$component!==void 0&&_this$props$component.length))return null;return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])(BackButton_BackButton,{onBack:()=>this.props.onBack()}),Object(jsx_runtime_["jsxs"])(SidebarCard_SidebarCard,{grid:true,children:[Object(jsx_runtime_["jsx"])(SidebarCardTitle_SidebarCardTitle,{children:"Title"}),Object(jsx_runtime_["jsx"])(SidebarContent_SidebarContent,{children:Object(jsx_runtime_["jsx"])(TextField_default.a,{inputRef:this.titleRef,name:`layer-title`,value:this.state.title,inputProps:{"aria-label":this.props.title},onChange:this.handleTitleChange.bind(this),onBlur:this.notifyTitleChange.bind(this),variant:"outlined",fullWidth:true})})]}),this.props.components.map(((component,i)=>{if(!component)return null;return Object(jsx_runtime_["jsx"])(SidebarCard_SidebarCard,{grid:true,children:component},i)}))]})}}var external_react_dom_=__webpack_require__(112);var external_react_dom_default=__webpack_require__.n(external_react_dom_);var external_react_transition_group_=__webpack_require__(65);var SidebarTransition_module=__webpack_require__(36);var SidebarTransition_module_default=__webpack_require__.n(SidebarTransition_module);var Add_=__webpack_require__(113);var Add_default=__webpack_require__.n(Add_);var Box_=__webpack_require__(58);var Box_default=__webpack_require__.n(Box_);var external_react_beautiful_dnd_=__webpack_require__(89);var ListItemButton_=__webpack_require__(80);var ListItemButton_default=__webpack_require__.n(ListItemButton_);var ListItemIcon_=__webpack_require__(81);var ListItemIcon_default=__webpack_require__.n(ListItemIcon_);class ListActionButton_ListActionButton extends external_react_default.a.PureComponent{render(){const hasIcon=!!this.props.icon;return Object(jsx_runtime_["jsxs"])(ListItemButton_default.a,{sx:{typography:"h6",fontWeight:"normal",margin:12,border:"1px solid black",borderColor:"primary.main",borderRadius:2,color:this.props.active?"white":"primary.main",backgroundColor:this.props.active?"primary.main":"inherit","&:hover":{backgroundColor:this.props.active?"primary.main":"inherit"},...this.props.sx},onClick:this.props.onClick,children:[hasIcon?Object(jsx_runtime_["jsx"])(ListItemIcon_default.a,{sx:{color:this.props.active?"white":"primary.main"},children:this.props.icon}):undefined,Object(jsx_runtime_["jsx"])(material_["ListItemText"],{children:this.props.children})]})}}class LayerList_DraggableItem extends external_react_default.a.PureComponent{constructor(){super(...arguments);this.portalElementId="__hopara__layerDraggablePortal"}createPortal(){const portal=document.createElement("div");portal.id=this.portalElementId;document.body.appendChild(portal)}getPortal(){return document.querySelector(`#${this.portalElementId}`)}deletePortal(){var _this$getPortal;return(_this$getPortal=this.getPortal())===null||_this$getPortal===void 0?void 0:_this$getPortal.remove()}componentDidMount(){this.createPortal()}componentWillUnmount(){this.deletePortal()}render(){const provided=this.props.provided;const snapshot=this.props.snapshot;const usePortal=snapshot.isDragging;const child=Object(jsx_runtime_["jsx"])(Box_default.a,{ref:provided.innerRef,...provided.draggableProps,...provided.dragHandleProps,sx:{...provided.draggableProps.style,userSelect:"none",backgroundColor:"background.paper"},children:this.props.children});if(!usePortal){return child}return external_react_dom_default.a.createPortal(child,this.getPortal())}}class LayerList_LayerList extends external_react_default.a.PureComponent{constructor(props){super(props);this.state={items:props.list};this.onDragEnd=this.onDragEnd.bind(this)}onDragEnd(result){if(!result.destination)return;this.props.onMoveLayer(this.props.list[result.source.index],result.destination.index-result.source.index)}render(){var _this$props$list;return Object(jsx_runtime_["jsx"])(external_react_transition_group_["SwitchTransition"],{children:Object(jsx_runtime_["jsx"])(external_react_transition_group_["CSSTransition"],{addEndListener:(node,done)=>node.addEventListener("transitionend",done,false),classNames:{appear:SidebarTransition_module_default.a.appear,appearActive:SidebarTransition_module_default.a.appearActive,appearDone:SidebarTransition_module_default.a.appearDone,enter:!this.props.selectedItem?SidebarTransition_module_default.a.enter:SidebarTransition_module_default.a.enterInvert,enterActive:SidebarTransition_module_default.a.enterActive,enterDone:SidebarTransition_module_default.a.enterDone,exit:SidebarTransition_module_default.a.exit,exitActive:this.props.selectedItem?SidebarTransition_module_default.a.exitActive:SidebarTransition_module_default.a.exitActiveInvert,exitDone:SidebarTransition_module_default.a.exitDone},children:Object(jsx_runtime_["jsxs"])("div",{className:SidebarTransition_module_default.a.transitionBlock,children:[!this.props.selectedItem&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])(ListActionButton_ListActionButton,{onClick:()=>this.props.onNewLayerRequest("circle"),icon:Object(jsx_runtime_["jsx"])(Add_default.a,{}),children:"New Layer"}),!!((_this$props$list=this.props.list)!==null&&_this$props$list!==void 0&&_this$props$list.length)&&Object(jsx_runtime_["jsx"])(external_react_beautiful_dnd_["DragDropContext"],{onDragEnd:this.onDragEnd,children:Object(jsx_runtime_["jsx"])(external_react_beautiful_dnd_["Droppable"],{droppableId:"droppable",children:provided=>Object(jsx_runtime_["jsxs"])(material_["List"],{sx:{borderTop:theme=>theme.shape.borderLight,padding:0,overflowX:"hidden"},ref:provided.innerRef,...provided.droppableProps,children:[this.props.list.map(((item,i)=>this.props.renderItem&&Object(jsx_runtime_["jsx"])(external_react_beautiful_dnd_["Draggable"],{draggableId:item.id,index:i,children:(provided,snapshot)=>Object(jsx_runtime_["jsx"])(LayerList_DraggableItem,{provided,snapshot,children:this.props.renderItem(item,i)})},item.id))),provided.placeholder]})})})]}),!!this.props.selectedItem&&this.props.renderItemContent(this.props.selectedItem)]})},`${!this.props.selectedItem}`)})}}class SidebarListItem_SidebarListItem extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{children:Object(jsx_runtime_["jsx"])(material_["ListItem"],{...this.props,disablePadding:true,sx:{borderBottom:theme=>theme.shape.borderLight,"&:last-child":{borderBottom:"none"},...this.props.sx},children:this.props.children})})}}var DragIndicator_=__webpack_require__(114);var DragIndicator_default=__webpack_require__.n(DragIndicator_);const getLayerIcon=type=>{switch(type){case"circle":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABkElEQVRIDbWVX04CMRDGkcT4JzGE+KKGN72AV/BePvDGFbiTBOMJegHCA4liIOr327RlthTY1N0v+bLtdPab7nRm2+t1jLNE/1LzC7Gf2JtOf+T4La7DCzbArYxDv4hjCdgYm1yKCytwpcmjeG6NhWM00EIzpoKon+IG4z+BxpeIZgzAp/1iyOBGtrE4F1eejLGxlgMprp0j+b/LeL7I5sStOBOnnoyxORGfFGihGZELwIvs5EN8jp67ATbW8EmDnAzApzsRAcr2EFjDx4k2XXsBbLnKt8ovKcjtnHULfPDlTCxqmgOt2BJ915w8NwW+HHwAWmhWJz3ScyK+iiEqdfwmNgW+T94ZDbTQHPW9sfNHmiI+t5UUhZ2H1IT5WINWDzntA0rOia2VaRpA2lXzdNZoBAB0qBNJF2fS6q9CehVIF2dCb6w8KQJsrOWw18lDed3nPAttD3oPzfhLXWt8LdpuZr0EaHDZoBk7lzEHTVQui0N3g5aOgnJHfCku8MRgwS3EH7K0w6m62qVvxTsZ/wFcI1I2OGPt8AAAAABJRU5ErkJggg=="});case"line":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAA80lEQVRIDe2UqwoCQRSGvWHSZDEZtYnRLBgFi2CwCgZBMPgEJsHiC/gCvolvYNOiySJ4wev3LwY99UwSD3zs/szOtzvDnonF/vVLO1BiMVWIfy4q9Rkc90nmtkC+LawhKg14K4vgDGk4whLuEKTqWPTFlSA2I2mS9eVPGJgxd+xguIK2ouu2GUGP/AC9oG3G3HGEQVtygobbZgRjsuQHqJkxV1TjzEDyPaiZgpX6ZA6S76AMwUqNswDJN1CEoDXEJvkKCiHNOWSZt3DCNe+Rf518iCTvgzp0CjdwVcLMvpAl168Y7MAy74iOXLsy+8w/h9uBF9m2J4WGYdEsAAAAAElFTkSuQmCC"});case"image":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABlElEQVRIDe2UPS8FQRSG1/VRkIgQya183ISK0CCRiMSvEImKjlrhT6jEDxCFTkVNodMpJJp1NSoRQuJK8LzMTGY2sze7t1FcJ3l2zpw5552zsx9J8m9/fQIdpoF1xinYhzoMgl3DLWRfZD3CCGzBNRxWuEhoBgagBrIe6C6JamTSkJY0XZPjTFbAJuEWMgltwIKXLQ1pSTMwt1sQbT65YllH8wlLXqrTqpigjmMCNBY1dTprkiU4Z/xAy25g1koNDbL3TEXKeGz86KBdJyHvDtRIZ7Ty94H6jQZa/kJOfTLEwilcQC2S9ERMz6CpBbt6mfP4ddCDFC+gt8Y3fT+7YJuNasWC+ljewYr74wnxYdiEN5NzxqjXNqYVBPtIOjJFvmjWf43kHGQ3sLdF3Nkq3pqb5Tu9kaWubMwGPli4BXXpPpJscsG5r+XERikeg0uowjS0YvcU3cAipHCnO1DH29APsnNQF63YA0XLoCN+hh1toGPRr1WvWwqyBpQ9KunIUpC4NG0Mt7zgT1HOpWxzOTJtEf4GcqtLS/PNVVcAAAAASUVORK5CYII="});case"polygon":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAB2klEQVRIDbWVzS4EURCF21+Mnw0isbOwZcWWlUfwEHY8wuyIjbDgJbDzBHgJiWRCIiwmdowQnK/NvWpK9+0ZGSc5um7VqbpXdc3tLPtnDLj6Na1HxUHn73b5IeGr2AoJdoMZOafEF/EzCHp8cjAO+SQ2be6YFgviiHX+0aYGtagZW8GunPwNZwKLisEUqEEtakbQnrm4KjY25X5uEzsFalEzIrXBtFRnIi9wt01sfMSK0PUGa8q+Fe/FdVMJGx8xNB6VGwwpoy6+i+firOiBjxiaukhOwK8NCISR5eVciMzztpgCOWjQkkMuCLW+V/rLSE3EVZbdyD4y6yoTLTkB1MrHFAe77ouH4qQI9sQGRpdoSEcOoAa1qFkruxJOFZwXl8UqrEiAlpxS+BbRwztxpzTjJ4AGre17R4uC1ArwHYjXIZh4okFr4WvlvzpGy4L55tJbsk5nE0Oz6vxxTIddwC4vtXgUt8QTGzD2hmw0V8ZXaJZdFcdSc8IU0XjE/yD0ig24Zh+cko/PuPP5JRcgPzQLNuBWbYYWccKikSXRJ8tVCWpxIcai3N+Mar8+ONRqiR2zS5v4ZBLId9ezV9ByisdPZngHoRDXBn0valfQpJ4cjJbmp08J+xb7AjESVYEwGMWdAAAAAElFTkSuQmCC"});case"text":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAB50lEQVRIDe1Vy07DMBC08yCqighVkiIQHBAcuMFvcIIDEpQDn8GBL4BvKYIr/E2lHqjEAYqgVWmJmUnrkLhJi4AjI228nt0d1/YmFeIfc05AFsQdcG4Br6miGjUJDjGOdCJHMzkCtwz7gOkiuN8CtWzYM+yxqMIHuQmb9euL6rIca6lBrQSWdjBWYVyd2/wpWEsNaiXILkCfR1OKIKgfBsHKQWnCOECNVDd15hSJKIr2hFQ3Qsa39Xp9d05+ere8FI0XOAM9McdKpXqBlqihL3oqVpV+v3dn5kzm1KBWguwO2D1s0SK4UooG+qqJ1mpioQaSypqBGtRKoBfYwuwSdj6m888wDPchHFqWuJZKNhGNyOWz0hk1qLVNRi9AvxRKyTME21LKB9tWLfidCVdaowPpZYDgtl5huTfR9/2a43odvHcLumgyDkbD99Vut/tk8DyiRRjbNbcDEjlxJjiOd0JxZckjKdQOTUlxjJDnuh5HE9RIxM3AOoglkwyi6D4Iwxb47G6tIIzajJn5mFNjQ/NlXaPjQsTxVWzbbL3stym2pDhVSmXb/Ksmn5vya/DQ578GNaiVINtFb2B40WX9Pa6Y/WQtNaiVIHuuJP78c20uwEV4L3oXRXHmmND3M/WHYyb+z6dO4BNrv2Owww/ybwAAAABJRU5ErkJggg=="});case"heatmap":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABOUlEQVRIDe2UsUoDQRCGT6NFbAKC2PgESRMUhIBKUihCCl/AvE5eII+QJg+QSrCyME+iiBLSpAqafD9sjmPY4+ZCIBD84WNnZmd29vZuL0n+VfIEDsg/B41b0aFZRf4F2LhJ87tbWyivZVGDJwrfoRsWOGUU0hE8wrEcryokXoFG6QWWMJaDBgHZ16C5Gzle2Qa3FI6gFRbQrsVadYxSH4RtsF4oNlYJ3sFJbDIvZhvovPtQA+18EpD9CjqiN3DLNmhS+Q0NOINFQPYHqMEPuGUb2MJLAkLqwBDu5XhV1MC7TppXdA+U2E6zk6SH/Rx8PYGO5yH40SH7yUUTCE4zE7OMPcf+Ao1u7eSI3LuLJXreQazOHct7B/qBbdL8j7rfbPe8BrpYm+iTIl3AVLEfVSyWFhQYutl7phUpgSMwPf0USwAAAABJRU5ErkJggg=="});case"icon":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAACLUlEQVRIDdWUv0scQRTH31wODf4ovJ25JgoHASv/iBQmhYTUCiGmDcHGQhCLnE0KU0aIdkqaNFoFQUhhuvwB/gGHQUm83TSr66+7fXlvb+bcWWf3Dqwc2Js3732+77s3O7sAD32IXn+gVqs9DsNoBkQ8DSAmOjz+Biz9GB0d2ms0GpdFPQoNPK/6BgR+pAZPcpocA4rlIDj9mlOHXANPqXVAeK+FZwjwXQg45DUiTJHwJYUjSV3AetBsLiRxPz/UfMWTCpNLqf1KpTKe1XGOuP0Ut5JlnGsp5SSJWiyUUn1zQqkkM9rkhrWpUhKWsgl6kEuUe0TXn6urAbNFdzGd0cxfWpa11mKzBoL2+hUTAsRmGB4HFu1YMEPsBpe01nqulkGVBnGK4VjgL577GSlW6R5dmWXQbrfHTIX2KDJxrznNpnuwzjK4Hhz0TbM2wFMT95rTbLoH6yyD8OSEDMQRF2gjZ3nuZxA71+HEUafHrcoy4LQA3E3KCC/oTX59i7qjhEF4zlUy2slSdwzoLKwRdJGAAj8rpWayIrNOasToNWniT6ZmZutImaTnqXm6nS2zpngb4tKXcrnzqWi1YApK8Ts6l/NdBuFtEDS3u2sdOA24VpHyA53vuuYKJwSs//P9VRfEb6xzXETRz+GhEb6BZ05AJ+kmVgO/6WzOSK4BF6Po/KDIhJv7/mmd2bxRaMCiPJN+mueZOvNSVuvm08yxE7pvkh78Il/37fOw9P8BgG+jn5334VoAAAAASUVORK5CYII="});default:return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABkElEQVRIDbWVX04CMRDGkcT4JzGE+KKGN72AV/BePvDGFbiTBOMJegHCA4liIOr327RlthTY1N0v+bLtdPab7nRm2+t1jLNE/1LzC7Gf2JtOf+T4La7DCzbArYxDv4hjCdgYm1yKCytwpcmjeG6NhWM00EIzpoKon+IG4z+BxpeIZgzAp/1iyOBGtrE4F1eejLGxlgMprp0j+b/LeL7I5sStOBOnnoyxORGfFGihGZELwIvs5EN8jp67ATbW8EmDnAzApzsRAcr2EFjDx4k2XXsBbLnKt8ovKcjtnHULfPDlTCxqmgOt2BJ915w8NwW+HHwAWmhWJz3ScyK+iiEqdfwmNgW+T94ZDbTQHPW9sfNHmiI+t5UUhZ2H1IT5WINWDzntA0rOia2VaRpA2lXzdNZoBAB0qBNJF2fS6q9CehVIF2dCb6w8KQJsrOWw18lDed3nPAttD3oPzfhLXWt8LdpuZr0EaHDZoBk7lzEHTVQui0N3g5aOgnJHfCku8MRgwS3EH7K0w6m62qVvxTsZ/wFcI1I2OGPt8AAAAABJRU5ErkJggg=="})}};class LayerListItem_LayerListItem extends external_react_default.a.PureComponent{render(){if(!this.props.layerName)return null;return Object(jsx_runtime_["jsx"])(SidebarListItem_SidebarListItem,{sx:{"&:last-child":{}},secondaryAction:Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{children:Object(jsx_runtime_["jsx"])(material_["IconButton"],{onClick:()=>this.props.onDeleteClick(),color:"primary",children:Object(jsx_runtime_["jsx"])(icons_material_["DeleteOutlined"],{})})}),children:Object(jsx_runtime_["jsxs"])(ListItemButton_default.a,{className:"drag-handle",onClick:()=>this.props.onClick(),children:[Object(jsx_runtime_["jsx"])(DragIndicator_default.a,{fontSize:"small",sx:{opacity:.33,transform:"translateX(-0.33em)",cursor:"grab"}}),Object(jsx_runtime_["jsx"])(ListItemIcon_default.a,{sx:{minWidth:"35px"},children:getLayerIcon(this.props.layerType)}),Object(jsx_runtime_["jsx"])(material_["ListItemText"],{onClick:()=>this.props.onClick(),children:this.props.layerName})]})})}}let LayerType;(function(LayerType){LayerType["circle"]="circle";LayerType["heatmap"]="heatmap";LayerType["icon"]="icon";LayerType["image"]="image";LayerType["line"]="line";LayerType["polygon"]="polygon";LayerType["text"]="text"})(LayerType||(LayerType={}));const encodingTypeToFactory={color:createColorEditor,size:createSizeEditor,offset:createOffsetEditor,image:createImageEditor,bounds:createBoundsEditor,heatmap:createHeatmapEditor,icon:createIconEditor,line:createLineEditor,polygon:createPolygonEditor,text:createTextEditor};class LayerListComponent_LayerListView extends PureComponent["a"]{constructor(props){super(props);this.state={}}getEditorTypes(layer,schema){const encodingName=external_case_["pascal"](layer.type)+"LayerEncoding";const layerEncoding=getSubSchema(schema,encodingName);return layerEncoding!==null&&layerEncoding!==void 0&&layerEncoding.properties?Object.keys(layerEncoding.properties):[]}getEncodingsEditorsFromSchema(layer,schema){const editorTypes=this.getEditorTypes(layer,schema);return editorTypes.map((type=>{let factory=encodingTypeToFactory[type];if(layer.isType(LayerType.heatmap)&&type==="color"){factory=createSchemeColorEditor}return{type,factory,onChange:this.props.onEncodingChange}})).filter((c=>c.factory))}getEditorFactories(layer,schema){const factories=[{factory:createTypeEditor,type:"type",onChange:this.props.onNewLayerRequest},{factory:createQueryEditor,type:"query",onChange:this.props.onQueryChange}];if(layer.hasExplicitPosition()){factories.push({factory:createPositionEditor,type:"position",onChange:this.props.onEncodingChange})}if(!layer.hasData())return factories;factories.push(...this.getEncodingsEditorsFromSchema(layer,schema));factories.push({type:"transform",factory:createTransformEditor,onChange:this.props.onTransformChange});factories.push({type:"visibility",factory:createVisibilityEditor,onChange:this.props.onVisibilityChange});if(layer.canAnimate()){factories.push({type:"animation",factory:createAnimationEditor,onChange:this.props.onAnimationChange})}return factories}createEditorComponents(visualization,layer,schema){const propsFactory=new EditorProps_EditorPropsFactory({layer,visualization,schema,queries:this.props.queries,zoom:this.props.zoom});return this.getEditorFactories(layer,schema).map((editorFactory=>editorFactory.factory(propsFactory.create(editorFactory.type,editorFactory.onChange))))}getLayerContents(visualization,layer){const components=this.createEditorComponents(visualization,layer,this.props.schema);if(!components.length)return null;return Object(jsx_runtime_["jsx"])(LayerItem_LayerItem,{title:layer.name,onTitleChange:value=>this.props.onLayerNameChange(layer,value),components,onBack:this.props.onBackClick})}render(){var _this$props$layers;return Object(jsx_runtime_["jsx"])(LayerList_LayerList,{list:this.props.layers,selectedItem:((_this$props$layers=this.props.layers)!==null&&_this$props$layers!==void 0?_this$props$layers:[]).find((l=>l.id===this.props.selectedLayerId)),onNewLayerRequest:type=>this.props.onNewLayerRequest(undefined,type),renderItem:(layer,i)=>Object(jsx_runtime_["jsx"])(LayerListItem_LayerListItem,{layerName:layer.name,layerType:layer.type,onDeleteClick:()=>{this.props.onLayerDelete(layer)},onClick:()=>Object.keys(LayerType).includes(layer.type)&&this.props.onLayerClick(layer.id)},`${layer.name}-${i}`),renderItemContent:layer=>{if(layer)return this.getLayerContents(this.props.visualization,layer);return Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{})},onMoveLayer:(layer,steps)=>{this.props.onMoveLayer(layer.id,steps)}})}}var LayerListComponent=LayerListComponent_LayerListView;let LayerAnimationType;(function(LayerAnimationType){LayerAnimationType["custom"]="custom";LayerAnimationType["pulse"]="pulse";LayerAnimationType["ripple"]="ripple";LayerAnimationType["breathe"]="breathe";LayerAnimationType["blink"]="blink";LayerAnimationType["fadeInOut"]="fadeInOut";LayerAnimationType["flow"]="flow"})(LayerAnimationType||(LayerAnimationType={}));const layerAnimationTemplates={ripple:{layerTypes:[LayerType.circle,LayerType.icon],encodings:{color:{channel:{duration:1500},keyFrames:{"0%":{opacity:.7},"70%":{opacity:0},"100%":{opacity:0}}},size:{channel:{duration:1500},keyFrames:{"0%":{scale:1},"70%":{scale:2},"100%":{scale:2}}}}},pulse:{layerTypes:[LayerType.circle,LayerType.icon],encodings:{size:{channel:{duration:1500},keyFrames:{"0%":{scale:1},"60%":{scale:1.2},"90%":{scale:1}}}}},breathe:{layerTypes:[LayerType.circle,LayerType.icon],encodings:{size:{channel:{duration:5e3},keyFrames:{"0%":{scale:1},"50%":{scale:1.3},"90%":{scale:1.05},"100%":{scale:1}}}}},blink:{layerTypes:[LayerType.circle,LayerType.icon,LayerType.polygon],encodings:{color:{channel:{duration:1e3},keyFrames:{"0%":{opacity:1},"80%":{opacity:1},"81%":{opacity:0},"100%":{opacity:0}}}}},fadeInOut:{layerTypes:[LayerType.circle,LayerType.icon,LayerType.polygon],encodings:{color:{channel:{duration:1500},keyFrames:{"0%":{opacity:0},"50%":{opacity:1},"100%":{opacity:0}}}}},flow:{layerTypes:[LayerType.line],encodings:{color:{}}}};class LayerAnimation_LayerAnimation{constructor(data){this.enabled=void 0;this.data=void 0;Object.assign(this,data)}static createFromLayer(layer){var _animations$map$find;const animations=Object.values(layer.encoding).map((encoding=>encoding===null||encoding===void 0?void 0:encoding.animation)).filter(Boolean);if(animations.length===0){return new LayerAnimation_LayerAnimation({enabled:false})}return new LayerAnimation_LayerAnimation({enabled:true,data:{field:animations.map((animation=>animation.field)).find(Boolean),type:(_animations$map$find=animations.map((animation=>animation.type)).find(Boolean))!==null&&_animations$map$find!==void 0?_animations$map$find:LayerAnimationType.custom}})}fillLayer(layer){var _this$data;if(((_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.type)==="custom"){Object.keys(layer.encoding).forEach((encodingName=>{var _layer$encoding$encod;if((_layer$encoding$encod=layer.encoding[encodingName])!==null&&_layer$encoding$encod!==void 0&&_layer$encoding$encod.animation){var _this$data2;layer.encoding[encodingName].animation.field=(_this$data2=this.data)===null||_this$data2===void 0?void 0:_this$data2.field}}));return layer}Object.keys(layer.encoding).forEach((encodingName=>{if(layer.encoding[encodingName]){delete layer.encoding[encodingName].animation}}));if(!this.enabled||!this.data)return layer;const template=Object(fp_["clone"])(layerAnimationTemplates[this.data.type]);const animationType=this.data.type;const animationField=this.data.field;Object.entries(layer.encoding).forEach((_ref=>{let[encodingName,encoding]=_ref;if(!encoding)return;const animationEncodingTemplate=template.encodings[encodingName];if(!animationEncodingTemplate)return;animationEncodingTemplate.type=animationType;animationEncodingTemplate.field=animationField;if(!encoding){layer.encoding[encodingName]={}}layer.encoding[encodingName].animation=animationEncodingTemplate}));return layer}}var Layer_dec,Layer_dec2,_dec3,_dec4,_dec5,_dec6,Layer_class,Layer_descriptor,Layer_descriptor2,_descriptor3,_descriptor4,_descriptor5,_descriptor6;const requiredEncodingsMap={circle:["position","size","color"],icon:["position","size","color"],heatmap:["position"],image:["image","bounds"],line:["line","size"],polygon:["polygon"],text:["text","position","color","size"],table:[],"vega-lite":[]};let Layer_Layer=(Layer_dec=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),Layer_dec2=Object(external_class_transformer_["Transform"])((_ref=>{let{obj,value}=_ref;if(obj.type==="vega-lite")return value;return value?new encoding_src["f"](value):undefined})),_dec3=Object(external_class_transformer_["Type"])((()=>Transforms_Transforms)),_dec4=Object(external_class_transformer_["Transform"])((_ref2=>{let{value}=_ref2;return parseTooltip(value)})),_dec5=Object(external_class_transformer_["Type"])((()=>Visible_Visible)),_dec6=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),Layer_class=class Layer{constructor(props){Object(initializerDefineProperty["a"])(this,"id",Layer_descriptor,this);this.name=void 0;this.type=void 0;this.lastModified=void 0;this.editable=void 0;Object(initializerDefineProperty["a"])(this,"encoding",Layer_descriptor2,this);Object(initializerDefineProperty["a"])(this,"transform",_descriptor3,this);this.data=void 0;this.preRender=void 0;Object(initializerDefineProperty["a"])(this,"tooltip",_descriptor4,this);Object(initializerDefineProperty["a"])(this,"visible",_descriptor5,this);Object(initializerDefineProperty["a"])(this,"_visualization",_descriptor6,this);this.mark=void 0;this.autoHighlight=void 0;Object.assign(this,props)}isVega(){return this.type.toLocaleLowerCase()==="vega-lite"}isImage(){return this.type.toLocaleLowerCase()==="image"}clone(){const cloned=new Layer(this);cloned.lastModified=new Date;return cloned}isVisible(zoom){return this.visible.value&&this.belongsToZoom(zoom)}belongsToZoom(zoom){var _this$visible,_this$visible2,_this$visible3;return!((_this$visible=this.visible)!==null&&_this$visible!==void 0&&_this$visible.zoomRange)||((_this$visible2=this.visible)===null||_this$visible2===void 0?void 0:_this$visible2.zoomRange)&&((_this$visible3=this.visible)===null||_this$visible3===void 0?void 0:_this$visible3.zoomRange.isInRange(zoom))}shouldRender(rowsets){return this.isRenderable()&&withDataLoaded(rowsets)(this)}shouldPrerender(){return this.preRender!==false}isType(type){return this.type.toLowerCase()===type.toLowerCase()}getData(){return this.data}getQueryKey(){var _this$data,_this$data2,_this$transform;const queryKey={source:(_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.source,query:(_this$data2=this.data)===null||_this$data2===void 0?void 0:_this$data2.query};if((_this$transform=this.transform)!==null&&_this$transform!==void 0&&_this$transform.getCurrent()){var _this$transform2;return{...queryKey,transform:(_this$transform2=this.transform)===null||_this$transform2===void 0?void 0:_this$transform2.getCurrent()}}return queryKey}hasData(){var _this$data3,_this$data4;return((_this$data3=this.data)===null||_this$data3===void 0?void 0:_this$data3.query)&&((_this$data4=this.data)===null||_this$data4===void 0?void 0:_this$data4.source)}getResolutions(){var _this$transform3;const transform=(_this$transform3=this.transform)===null||_this$transform3===void 0?void 0:_this$transform3.getBackendTransform();if(!transform){return ResolutionFactory_ResolutionFactory.fromCount(1)}return ResolutionFactory_ResolutionFactory.fromRange(transform.getResolution().getRange())}getTargetResolution(zoom){return this.getResolutions().getTargetResolution(this.visible.zoomRange,zoom)}getScaleKeys(){var _this$encoding$positi,_this$encoding,_this$encoding$positi2;if(this.isVega()){var _this$encoding$x,_this$encoding$x2,_this$encoding$x2$sca,_this$encoding$y,_this$encoding$y2,_this$encoding$y2$sca;return this.encoding.x&&this.encoding.y?new ScaleKey["b"]({field:(_this$encoding$x=this.encoding.x)===null||_this$encoding$x===void 0?void 0:_this$encoding$x.field,type:(_this$encoding$x2=this.encoding.x)===null||_this$encoding$x2===void 0?void 0:(_this$encoding$x2$sca=_this$encoding$x2.scale)===null||_this$encoding$x2$sca===void 0?void 0:_this$encoding$x2$sca.type},{field:(_this$encoding$y=this.encoding.y)===null||_this$encoding$y===void 0?void 0:_this$encoding$y.field,type:(_this$encoding$y2=this.encoding.y)===null||_this$encoding$y2===void 0?void 0:(_this$encoding$y2$sca=_this$encoding$y2.scale)===null||_this$encoding$y2$sca===void 0?void 0:_this$encoding$y2$sca.type}):new ScaleKey["a"]}return(_this$encoding$positi=(_this$encoding=this.encoding)===null||_this$encoding===void 0?void 0:(_this$encoding$positi2=_this$encoding.position)===null||_this$encoding$positi2===void 0?void 0:_this$encoding$positi2.getScaleKeys())!==null&&_this$encoding$positi!==void 0?_this$encoding$positi:new ScaleKey["a"]}getTargetRowset(zoom){var _this$transform4;if(!this.isRenderable())return;return new Rowset_Rowset({data:this.getData(),transform:(_this$transform4=this.transform)===null||_this$transform4===void 0?void 0:_this$transform4.getBackendTransform(),resolution:this.getTargetResolution(zoom),scales:this.getScaleKeys()})}isFixedColor(){return this.type.toLowerCase()==="heatmap"}belongsToVisualization(visualizationId){return!!(visualizationId&&this._visualization&&this._visualization===visualizationId)}areEncodingsRenderable(){var _requiredEncodingsMap;return(_requiredEncodingsMap=requiredEncodingsMap[this.type.toLowerCase()])===null||_requiredEncodingsMap===void 0?void 0:_requiredEncodingsMap.map((encodingName=>{var _this$encoding$encodi;return(_this$encoding$encodi=this.encoding[encodingName])===null||_this$encoding$encodi===void 0?void 0:_this$encoding$encodi.isRenderable()})).every(Boolean)}isDataRenderable(){return!!this.data&&!!this.data.query&&!!this.data.source}isRenderable(){return this.areEncodingsRenderable()&&this.isDataRenderable()}change(partialLayer){const cloned=this.clone();return new Layer({...cloned,...partialLayer})}immutableSetAnimation(animation){return animation.fillLayer(this.clone())}getAnimation(){return LayerAnimation_LayerAnimation.createFromLayer(this)}canAnimate(){return this.isType(LayerType.circle)||this.isType(LayerType.polygon)||this.isType(LayerType.icon)||this.isType(LayerType.line)}hasExplicitPosition(){return!this.isType(LayerType.polygon)&&!this.isType(LayerType.image)&&!this.isType(LayerType.line)}},Layer_descriptor=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"id",[Layer_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),Layer_descriptor2=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"encoding",[Layer_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor3=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"transform",[_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor4=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"tooltip",[_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor5=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"visible",[_dec5],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor6=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"_visualization",[_dec6],{configurable:true,enumerable:true,writable:true,initializer:null}),Layer_class);const setUnifiedScaleDomain=(scaleDomain,scaleType,domain)=>{if(!scaleDomain[scaleType]){scaleDomain[scaleType]={domainMin:domain.min,domainMax:domain.max}}const scaleDomainMin=scaleDomain[scaleType].domainMin;if(scaleDomainMin===undefined||!Object(fp_["isNumber"])(scaleDomainMin)){scaleDomain[scaleType].domainMin=domain.min}else if(Object(fp_["isNumber"])(domain.min)&&scaleDomainMin>domain.min){scaleDomain[scaleType].domainMin=domain.min}const scaleDomainMax=scaleDomain[scaleType].domainMax;if(scaleDomainMax===undefined||!Object(fp_["isNumber"])(scaleDomainMax)){scaleDomain[scaleType].domainMax=domain.max}else if(Object(fp_["isNumber"])(domain.max)&&scaleDomainMax<domain.max){scaleDomain[scaleType].domainMax=domain.max}};const getDomainValues=(rowsets,field)=>rowsets.reduce(((domain,rowset)=>{var _rowset$rows;const values=rowset===null||rowset===void 0?void 0:(_rowset$rows=rowset.rows)===null||_rowset$rows===void 0?void 0:_rowset$rows.getValues(field);if(!values)return domain;const minValue=Object(fp_["min"])(values);const maxValue=Object(fp_["max"])(values);return{min:Object(fp_["isNumber"])(domain.min)&&domain.min<minValue||!Object(fp_["isNumber"])(minValue)?domain.min:minValue,max:Object(fp_["isNumber"])(domain.max)&&domain.max>maxValue||!Object(fp_["isNumber"])(maxValue)?domain.max:maxValue}}),{min:undefined,max:undefined});function getUnifiedScaleDomains(rowsets){return rowsets.reduce(((scaleDomains,rowset)=>{var _rowset$scales,_rowset$scales2,_rowset$scales3;if(rowset!==null&&rowset!==void 0&&(_rowset$scales=rowset.scales)!==null&&_rowset$scales!==void 0&&_rowset$scales.x){const xDomain=getDomainValues(rowsets,rowset.scales.x.field);setUnifiedScaleDomain(scaleDomains["x"],rowset.scales.x.type,xDomain)}if(rowset!==null&&rowset!==void 0&&(_rowset$scales2=rowset.scales)!==null&&_rowset$scales2!==void 0&&_rowset$scales2.y){const yDomain=getDomainValues(rowsets,rowset.scales.y.field);setUnifiedScaleDomain(scaleDomains["y"],rowset.scales.y.type,yDomain)}if(rowset!==null&&rowset!==void 0&&(_rowset$scales3=rowset.scales)!==null&&_rowset$scales3!==void 0&&_rowset$scales3.z){if(!scaleDomains["z"][rowset.scales.z.type]){scaleDomains["z"][rowset.scales.z.type]={domainMin:0,domainMax:50}}setUnifiedScaleDomain(scaleDomains["z"],rowset.scales.z.type,{min:0,max:50})}return scaleDomains}),{x:{},y:{},z:{}})}class Rowsets_Rowsets extends Array{hasRowset(rowsetId){if(!rowsetId)return false;return this.some((rowset=>rowset.getId()===rowsetId))}withData(data){const rowsets=this.filter((rowset=>rowset.data.query===data.query&&rowset.data.source===data.source));return new Rowsets_Rowsets(...rowsets)}getUnifiedScaleDomains(){return getUnifiedScaleDomains(this)}}const getFieldPositionOrDefault=fieldPosition=>{var _fieldPosition$scale;return(_fieldPosition$scale=fieldPosition===null||fieldPosition===void 0?void 0:fieldPosition.scale)!==null&&_fieldPosition$scale!==void 0?_fieldPosition$scale:{}};const getFieldPositionScaleType=(columns,fieldPosition)=>{const xColumn=columns?columns.get(fieldPosition===null||fieldPosition===void 0?void 0:fieldPosition.field):undefined;return Object(encoding_src["m"])(xColumn)};const getLayersWithScaleTypes=(layers,queries)=>new Layers_Layers(...layers.map((layer=>{const clonedLayer=layer.clone();const query=queries.findQuery(clonedLayer.getQueryKey());if(clonedLayer.encoding.position&&clonedLayer.encoding.position.x&&clonedLayer.encoding.position.y){clonedLayer.encoding.position.x.scale=getFieldPositionOrDefault(clonedLayer.encoding.position.x);clonedLayer.encoding.position.y.scale=getFieldPositionOrDefault(clonedLayer.encoding.position.y);if(clonedLayer.encoding.position.z){clonedLayer.encoding.position.z.scale=getFieldPositionOrDefault(clonedLayer.encoding.position.z)}if(clonedLayer.encoding.position.x.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.position.x.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.position.x)}if(clonedLayer.encoding.position.y.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.position.y.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.position.y)}if(clonedLayer.encoding.position.z)clonedLayer.encoding.position.z.scale.type=encoding_src["d"]}if(clonedLayer.encoding.x&&clonedLayer.encoding.y){clonedLayer.encoding.x.scale=getFieldPositionOrDefault(clonedLayer.encoding.x);clonedLayer.encoding.y.scale=getFieldPositionOrDefault(clonedLayer.encoding.y);if(clonedLayer.encoding.x.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.x.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.x)}if(clonedLayer.encoding.y.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.y.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.y)}}return clonedLayer})));function onlyTargetRowset(zoom){return layer=>layer.getTargetRowset(zoom)}class Layers_Layers extends Array{constructor(){for(var _len=arguments.length,layers=new Array(_len),_key=0;_key<_len;_key++){layers[_key]=arguments[_key]}const ls=layers.filter((layer=>!!layer));super(...ls)}filter(filterFunc){const filteredItems=super.filter(filterFunc);return new Layers_Layers(...filteredItems)}getById(layerId){return this.find(hasId(layerId))}upsertLayer(newLayer){const newLayerWithTimestamp=new Layer_Layer({...newLayer,lastModified:new Date});const cloned=new Layers_Layers(...this);const layerIndex=Object(fp_["findIndex"])((layer=>layer.id===newLayer.id),this);if(layerIndex>-1){cloned.splice(layerIndex,1,newLayerWithTimestamp)}else{cloned.push(newLayerWithTimestamp)}return cloned}changeLayer(id,partialLayer){const cloned=new Layers_Layers(...this);const layerIndex=Object(fp_["findIndex"])((layer=>layer.id===id),this);if(layerIndex>-1){const newLayer=this[layerIndex].change({...partialLayer});cloned.splice(layerIndex,1,newLayer)}return cloned}getRowsets(){let zoom=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;let visualizationId=arguments.length>1?arguments[1]:undefined;if(zoom<0)return new Rowsets_Rowsets;const layers=this.filter(isFromVisualizationId(visualizationId));const targetRowsets=layers.map(onlyTargetRowset(zoom));const validRowsets=targetRowsets.filter((rowset=>!!rowset));return new Rowsets_Rowsets(...Object(fp_["uniqBy"])((rowset=>rowset.getId()),validRowsets))}getTargetRowsets(zoom){if(zoom===undefined||zoom<0)return new Rowsets_Rowsets;const layers=this.filter(hasData).filter(fromZoom(zoom));const targetRowsets=layers.map(onlyTargetRowset(zoom));const validRowsets=targetRowsets.filter((rowset=>!!rowset));return new Rowsets_Rowsets(...Object(fp_["uniqBy"])((rowset=>rowset.getId()),validRowsets))}getFromVisualization(visualizationId){if(!visualizationId)return new Layers_Layers;return this.filter(isFromVisualizationId(visualizationId))}getVisibleFromVisualization(visualizationId,zoom){return this.getFromVisualization(visualizationId).getVisibles(zoom)}getVisibles(zoom){return this.filter((layer=>layer.isVisible(zoom)))}renderable(rowsets){return this.filter((layer=>layer.shouldRender(rowsets)))}someWithZPosition(){return this.some((layer=>{var _layer$encoding,_layer$encoding2;return((_layer$encoding=layer.encoding)===null||_layer$encoding===void 0?void 0:_layer$encoding.position)&&((_layer$encoding2=layer.encoding)===null||_layer$encoding2===void 0?void 0:_layer$encoding2.position.hasZ())}))}everyIsVega(){return this.length>0&&this.every((layer=>layer.isVega()))}changeLayerName(layerId,name){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===layerId));if(cloned[layerIndex]){const newLayer=cloned[layerIndex].clone();newLayer.name=name;cloned.splice(layerIndex,1,newLayer)}return cloned}moveLayer(layerId,steps){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===layerId));const element=cloned[layerIndex];cloned.splice(layerIndex,1);cloned.splice(layerIndex+steps,0,element);return cloned}deleteLayer(layerId){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===layerId));if(cloned[layerIndex]){cloned.splice(layerIndex,1)}return cloned}updateLastModified(){const cloned=new Layers_Layers;for(const layer of this){cloned.push(layer.clone())}return cloned}changeEncoding(id,specificEncoding,type){const cloned=new Layers_Layers(...this);const targetLayerIndex=cloned.findIndex((layer=>layer.id===id));const targetLayer=cloned[targetLayerIndex];if(targetLayer&&type){const clonedLayer=targetLayer.clone();cloned.splice(targetLayerIndex,1,clonedLayer);clonedLayer.encoding=new encoding_src["f"]({...targetLayer.encoding,[type]:specificEncoding})}return cloned}changeAnimation(id,params){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===id));if(cloned[layerIndex]){const newLayer=cloned[layerIndex].immutableSetAnimation(params);cloned.splice(layerIndex,1,newLayer)}return cloned}fillScaleTypes(queries){if(!(queries!==null&&queries!==void 0&&queries.length))return this;return getLayersWithScaleTypes(this,queries)}fillRefZooms(){const cloned=new Layers_Layers(...this);cloned.forEach((layer=>{var _layer$visible,_layer$visible$zoomRa,_layer$visible$zoomRa2,_layer$visible2,_layer$visible2$zoomR,_layer$visible2$zoomR2;if((_layer$visible=layer.visible)!==null&&_layer$visible!==void 0&&(_layer$visible$zoomRa=_layer$visible.zoomRange)!==null&&_layer$visible$zoomRa!==void 0&&(_layer$visible$zoomRa2=_layer$visible$zoomRa.min)!==null&&_layer$visible$zoomRa2!==void 0&&_layer$visible$zoomRa2.relative){var _layer$visible$zoomRa3;const refLayer=this.getById((_layer$visible$zoomRa3=layer.visible.zoomRange.min)===null||_layer$visible$zoomRa3===void 0?void 0:_layer$visible$zoomRa3.relative.layer);if(refLayer){var _layer$visible$zoomRa4,_layer$visible$zoomRa5;const refValue=((_layer$visible$zoomRa4=layer.visible.zoomRange.min)===null||_layer$visible$zoomRa4===void 0?void 0:_layer$visible$zoomRa4.relative.reference)==="MIN"?refLayer.visible.zoomRange.getMin():refLayer.visible.zoomRange.getMax();layer.visible.zoomRange.min.fixed={value:refValue+((_layer$visible$zoomRa5=layer.visible.zoomRange.min.relative.increment)!==null&&_layer$visible$zoomRa5!==void 0?_layer$visible$zoomRa5:0)}}}if((_layer$visible2=layer.visible)!==null&&_layer$visible2!==void 0&&(_layer$visible2$zoomR=_layer$visible2.zoomRange)!==null&&_layer$visible2$zoomR!==void 0&&(_layer$visible2$zoomR2=_layer$visible2$zoomR.max)!==null&&_layer$visible2$zoomR2!==void 0&&_layer$visible2$zoomR2.relative){var _layer$visible$zoomRa6;const refLayer=this.getById((_layer$visible$zoomRa6=layer.visible.zoomRange.max)===null||_layer$visible$zoomRa6===void 0?void 0:_layer$visible$zoomRa6.relative.layer);if(refLayer){var _layer$visible$zoomRa7,_layer$visible$zoomRa8;const refValue=((_layer$visible$zoomRa7=layer.visible.zoomRange.max)===null||_layer$visible$zoomRa7===void 0?void 0:_layer$visible$zoomRa7.relative.reference)==="MIN"?refLayer.visible.zoomRange.getMin():refLayer.visible.zoomRange.getMax();layer.visible.zoomRange.max.fixed={value:refValue+((_layer$visible$zoomRa8=layer.visible.zoomRange.max.relative.increment)!==null&&_layer$visible$zoomRa8!==void 0?_layer$visible$zoomRa8:0)}}}}));return cloned}}const getLayersFromVisualizations=response=>{const visualizations=Object(fp_["get"])("app.visualizations",response);const visualizationsLayers=visualizations.map(((visualization,index)=>{const layers=Object(fp_["get"])(["layers"],visualization)||[];return layers.map((layer=>({...layer,_visualization:index.toString()})))}),visualizations);return Object(fp_["flatten"])(visualizationsLayers)};const parseLayers=response=>{const layers=Object(external_class_transformer_["plainToClass"])(Layer_Layer,getLayersFromVisualizations(response))||new Layers_Layers;return new Layers_Layers(...layers)};var image_src=__webpack_require__(66);const drawBoundsFromCentroid=function(centroid,size){let ratio=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;const widthDelta=size/2;const heightDelta=size*ratio/2;return[[centroid[0]-widthDelta,centroid[1]+heightDelta],[centroid[0]-widthDelta,centroid[1]-heightDelta],[centroid[0]+widthDelta,centroid[1]-heightDelta],[centroid[0]+widthDelta,centroid[1]+heightDelta],[centroid[0]-widthDelta,centroid[1]+heightDelta]]};class ImageTransform_ImageTransform{constructor(props){this.field=void 0;Object.assign(this,props)}async transform(viewState,world,row,position,centroid){const diff=await this.getDiff(viewState,world,row,position,centroid);return new dataset_src["f"]({...row,...diff})}async getDiff(viewState,world,row,position,centroid){var _position$x;if(!position.is2D())return{};let ratio=1;if(row[this.field]){const meta=await Object(image_src["a"])(row[this.field]);ratio=meta.ratio}if(!((_position$x=position.x)!==null&&_position$x!==void 0&&_position$x.field))return{};return{[position.x.field]:drawBoundsFromCentroid(centroid,100,ratio).map((coordinate=>viewState.unProjectCoordinate(world,coordinate)))}}}var external_moment_=__webpack_require__(70);var external_moment_default=__webpack_require__.n(external_moment_);let FilterType;(function(FilterType){FilterType["DEFAULT"]="categorical";FilterType["CATEGORICAL"]="categorical";FilterType["RANGE"]="range"})(FilterType||(FilterType={}));var RangeFilter_dec,RangeFilter_dec2,RangeFilter_dec3,RangeFilter_dec4,RangeFilter_dec5,RangeFilter_dec6,RangeFilter_class,RangeFilter_descriptor,RangeFilter_descriptor2,RangeFilter_descriptor3,RangeFilter_descriptor4,RangeFilter_descriptor5;let RangeFilter_RangeFilter=(RangeFilter_dec=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec2=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec3=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec4=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec5=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec6=Object(external_class_transformer_["Expose"])(),RangeFilter_class=class RangeFilter{constructor(props){this.type=void 0;this.hidden=void 0;this.field=void 0;Object(initializerDefineProperty["a"])(this,"data",RangeFilter_descriptor,this);Object(initializerDefineProperty["a"])(this,"visualizationId",RangeFilter_descriptor2,this);Object(initializerDefineProperty["a"])(this,"required",RangeFilter_descriptor3,this);Object(initializerDefineProperty["a"])(this,"_values",RangeFilter_descriptor4,this);Object(initializerDefineProperty["a"])(this,"_options",RangeFilter_descriptor5,this);if(!props)return;if(props)Object.assign(this,props);this.values=props.values?new spatial_src["e"](props.values):new spatial_src["e"];this.options=props.options?new spatial_src["e"](props.options):new spatial_src["e"];if(!props.type)this.type=FilterType.RANGE}get values(){return this._values}set values(values){this._values=values}get options(){return this._options}set options(options){this._options=options}clone(){return new RangeFilter(this)}hasValues(){return this.values&&this.values.hasValues()}withValues(values){const cloned=this.clone();cloned.values=values;return cloned}toggleValue(value){this.values=value;return this}isRanged(){return true}toPlain(){const plain=Object(external_class_transformer_["classToPlain"])(this);return{...plain,values:[this.values.min,this.values.max]}}},RangeFilter_descriptor=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"data",[RangeFilter_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),RangeFilter_descriptor2=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"visualizationId",[RangeFilter_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),RangeFilter_descriptor3=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"required",[RangeFilter_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),RangeFilter_descriptor4=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"_values",[RangeFilter_dec4],{configurable:true,enumerable:true,writable:true,initializer:function(){return new spatial_src["e"]}}),RangeFilter_descriptor5=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"_options",[RangeFilter_dec5],{configurable:true,enumerable:true,writable:true,initializer:function(){return new spatial_src["e"]}}),Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"values",[RangeFilter_dec6],Object.getOwnPropertyDescriptor(RangeFilter_class.prototype,"values"),RangeFilter_class.prototype),RangeFilter_class);var CategoricalFilter_dec,CategoricalFilter_dec2,CategoricalFilter_dec3,CategoricalFilter_dec4,CategoricalFilter_dec5,CategoricalFilter_dec6,_dec7,_dec8,_dec9,CategoricalFilter_class,CategoricalFilter_descriptor,CategoricalFilter_descriptor2,CategoricalFilter_descriptor3,CategoricalFilter_descriptor4,CategoricalFilter_descriptor5,CategoricalFilter_descriptor6,_descriptor7,_descriptor8;let CategoricalFilter_SimpleFilter=(CategoricalFilter_dec=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec2=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec3=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec4=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec5=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec6=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),_dec7=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),_dec8=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),_dec9=Object(external_class_transformer_["Expose"])(),CategoricalFilter_class=class SimpleFilter{constructor(props){this.type=void 0;this.hidden=void 0;this.exactMatch=void 0;this.field=void 0;Object(initializerDefineProperty["a"])(this,"data",CategoricalFilter_descriptor,this);Object(initializerDefineProperty["a"])(this,"singleChoice",CategoricalFilter_descriptor2,this);Object(initializerDefineProperty["a"])(this,"required",CategoricalFilter_descriptor3,this);Object(initializerDefineProperty["a"])(this,"searchTerm",CategoricalFilter_descriptor4,this);Object(initializerDefineProperty["a"])(this,"visualizationId",CategoricalFilter_descriptor5,this);Object(initializerDefineProperty["a"])(this,"_values",CategoricalFilter_descriptor6,this);Object(initializerDefineProperty["a"])(this,"_options",_descriptor7,this);Object(initializerDefineProperty["a"])(this,"_searchResults",_descriptor8,this);if(!props)return;if(props)Object.assign(this,props);if(!props.type)this.type=FilterType.CATEGORICAL}get values(){if((this.singleChoice||this.required)&&this._values.length<1)return Object(fp_["take"])(1,this.options);if(this.singleChoice&&this._values.length>0)return Object(fp_["take"])(1,this._values);return this._values}set values(values){this._values=values}get options(){return Object(fp_["unionWith"])(fp_["isEqual"],this._options,this._values)}set options(options){this._options=options}set searchResults(results){if(!Object(fp_["isArray"])(results))return;this._searchResults=results}get searchResults(){return Object(fp_["difference"])(this._searchResults,this.values)}withValues(values){const cloned=this.clone();cloned.values=values;return cloned}clone(){return new SimpleFilter(this)}getValuesWithoutDefaults(){if(!this.singleChoice&&!this.required)return this._values;if(this._values.length===1&&Object(fp_["head"])(this._values)===Object(fp_["head"])(this.options))return[];return this._values}addValue(value){if(this._values.indexOf(value)>-1)return this;this._values.push(value);return this}removeValue(value){const valueIndex=this._values.indexOf(value);if(valueIndex>-1){this._values.splice(valueIndex,1)}return this}hasValue(value){return this.values.indexOf(value)>-1}hasValues(){return this.values.length>0}toggleValue(value){if(this.hasValue(value)){return this.removeValue(value)}else if(this.singleChoice){this.values=[value];return this}return this.addValue(value)}isRanged(){return false}toPlain(){return Object(external_class_transformer_["classToPlain"])(this)}},CategoricalFilter_descriptor=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"data",[CategoricalFilter_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor2=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"singleChoice",[CategoricalFilter_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor3=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"required",[CategoricalFilter_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor4=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"searchTerm",[CategoricalFilter_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor5=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"visualizationId",[CategoricalFilter_dec5],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor6=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"_values",[CategoricalFilter_dec6],{configurable:true,enumerable:true,writable:true,initializer:function(){return[]}}),_descriptor7=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"_options",[_dec7],{configurable:true,enumerable:true,writable:true,initializer:function(){return[]}}),_descriptor8=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"_searchResults",[_dec8],{configurable:true,enumerable:true,writable:true,initializer:function(){return[]}}),Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"values",[_dec9],Object.getOwnPropertyDescriptor(CategoricalFilter_class.prototype,"values"),CategoricalFilter_class.prototype),CategoricalFilter_class);class Filters_Filters extends Array{clone(){return new Filters_Filters(...this)}renderables(){const filters=this.filter((filter=>!filter.hidden));return new Filters_Filters(...filters)}exists(field,visualizationId){const filter=this.find((f=>{if(visualizationId)return f.field===field&&f.visualizationId===visualizationId;return f.field===field}));return!!filter}getByField(field){return this.find((filter=>filter.field===field))}getFromVisualization(visualizationId){const filters=this.filter((filter=>filter.visualizationId===visualizationId));return new Filters_Filters(...filters)}getSingleChoices(){const singleChoices=this.filter((filter=>filter.singleChoice));return new Filters_Filters(...singleChoices)}getWithValues(){const withSelecteds=this.filter((filter=>filter.hasValues()));return new Filters_Filters(...withSelecteds)}update(filter){const cloned=this.clone();const filterIndex=Object(fp_["findIndex"])({field:filter.field,visualizationId:filter.visualizationId},this);cloned.splice(filterIndex,1,filter);return cloned}upsert(filter){const cloned=this.clone();const filterIndex=Object(fp_["findIndex"])({field:filter.field,visualizationId:filter.visualizationId},this);if(filterIndex>=0){cloned.splice(filterIndex,1,filter)}else{cloned.push(filter)}return cloned}selectedValues(){return this.reduce(((values,filter)=>{if(filter instanceof CategoricalFilter_SimpleFilter){return[...values,...filter.values]}if(filter instanceof RangeFilter_RangeFilter&&(!!filter.values.min||!!filter.values.max)){return[...values,filter.values]}return values}),new Array)}categoricalSelectedValues(){return this.reduce(((values,filter)=>{if(filter instanceof CategoricalFilter_SimpleFilter){return[...values,...filter.values]}return values}),new Array)}someCategoricalWithSelectedWithoutDefaults(){return this.some((filter=>filter instanceof CategoricalFilter_SimpleFilter&&filter.getValuesWithoutDefaults().length>0))}clearCategoricalSelecteds(){const clear=this.map((filter=>{if(filter instanceof CategoricalFilter_SimpleFilter){const cloned=filter.clone();cloned.values=[];return cloned}return filter}));return new Filters_Filters(...clear)}overwrite(filters){const overwritten=new Filters_Filters;this.forEach((filter=>{const existingFilter=filters.getByField(filter.field);if(existingFilter){return overwritten.push(filter.withValues(existingFilter.values))}return overwritten.push(filter)}));return overwritten}mergeKeepingHidden(newFilters){const merged=this.overwrite(newFilters);newFilters.filter((filter=>!merged.exists(filter.field,filter.visualizationId))).forEach((filter=>filter.hidden&&merged.push(filter)));return merged}mergeVisualizations(visualizationId,sourceVisualization){if(!sourceVisualization){return this}const sourceFilters=this.getFromVisualization(sourceVisualization);const mergedFilters=new Filters_Filters;this.forEach((filter=>{if(filter.visualizationId!==visualizationId){mergedFilters.push(filter);return}const sameOnSourceFilters=sourceFilters.getByField(filter.field);if(sameOnSourceFilters){mergedFilters.push(filter.withValues(sameOnSourceFilters.values));return}mergedFilters.push(filter);return}));return mergedFilters}withoutHiddenFromVisualizations(visualizationId){const filters=this.filter((filter=>!(filter.hidden&&filter.visualizationId===visualizationId)));return new Filters_Filters(...filters)}getNonSingleChoice(){const filters=this.filter((filter=>!filter.singleChoice));return new Filters_Filters(...filters)}}var domain_Filters=Filters_Filters;const getDefaultSelectedValues=(plainFilter,column)=>{if(plainFilter.selectedValues)return plainFilter.selectedValues;const filterType=plainFilter.type&&plainFilter.type.toLowerCase();if(filterType===FilterType.RANGE&&(column===null||column===void 0?void 0:column.getType())===dataset_src["b"].DATETIME&&column.stats){const momentMax=external_moment_default()(column.stats.max);return new spatial_src["e"]({min:momentMax.subtract(1,"months").valueOf(),max:column.stats.max})}else if(filterType===FilterType.RANGE){return new spatial_src["e"]}return[]};const getDefaultOptions=(filter,column)=>{const filterType=filter.type&&filter.type.toLowerCase();if(filterType===FilterType.RANGE&&column!==null&&column!==void 0&&column.stats){return new spatial_src["e"]({min:column.stats.min,max:column.stats.max})}return filter.values};const createPlainFilter=(filterType,filter,column)=>({type:filterType,singleChoice:filter.singleChoice,required:filter.required,exactMatch:filter.exactMatch,field:filter.field,data:filter.data,visualizationId:filter.visualizationId,options:getDefaultOptions(filter,column),values:getDefaultSelectedValues(filter,column)});const parseFilters=(response,queries)=>{const visualizations=Object(fp_["get"])("app.visualizations",response);const visualizationsWithFilters=visualizations.filter((visualization=>visualization.filters));const visualizationsFilters=Object(fp_["flatMap"])((visualization=>visualization.filters.map((filter=>({...filter,visualizationId:visualization.id})))),visualizationsWithFilters);const validVisualizationsFilters=visualizationsFilters.filter((filter=>{const query=queries.findQuery(filter.data);if(!query)return false;return query.getColumns().get(filter.field)}));const filters=validVisualizationsFilters.map((filter=>{const query=queries.findQuery(filter.data);const column=query===null||query===void 0?void 0:query.getColumns().get(filter.field);const filterType=filter.type&&filter.type.toLowerCase();const plainFilter=createPlainFilter(filterType,filter,column);if(plainFilter.type===FilterType.RANGE)return new RangeFilter_RangeFilter(plainFilter);return new CategoricalFilter_SimpleFilter(plainFilter)}));return new domain_Filters(...filters)};let AppApiErrorType;(function(AppApiErrorType){AppApiErrorType["FETCHING_APP"]="Error fetching app";AppApiErrorType["FETCHING_TABLE"]="Error fetching query"})(AppApiErrorType||(AppApiErrorType={}));class AppApiError extends Error{constructor(type,response){super(`AppApiError: ${type}`);this.type=void 0;this.response=void 0;this.type=type;this.response=response}isAppResourceError(){return this.type===AppApiErrorType.FETCHING_APP}}const getLegendsFromVisualizations=response=>{const visualizations=Object(fp_["get"])("app.visualizations",response);const visualizationsLegends=visualizations.map((visualization=>{var _get;const legends=(_get=Object(fp_["get"])(["legends"],visualization))!==null&&_get!==void 0?_get:[];return legends.map((legend=>({visualizationId:visualization.id,layer:legend.layer})))}));return Object(fp_["flatten"])(visualizationsLegends)};const getAxesFromVisualizations=response=>{const visualizations=Object(fp_["get"])("app.visualizations",response);return visualizations.map((visualization=>{var _get2;let axesList=(_get2=Object(fp_["get"])(["axes"],visualization))!==null&&_get2!==void 0?_get2:[];if(!Array.isArray(axesList)){axesList=[]}return axesList.map((axes=>({...axes,visualizationId:visualization.id})))})).flat()};const parseApp=response=>{const plain=Object(fp_["get"])("app",response);return Object(external_class_transformer_["plainToClass"])(App_App,plain,{excludeExtraneousValues:true})};const parseVisualizations=response=>{const visualizations=Object(external_class_transformer_["plainToClass"])(Visualization["b"],Object(fp_["get"])("app.visualizations",response),{excludeExtraneousValues:true})||new visualization_Visualizations;return new visualization_Visualizations(...visualizations)};const parseLegends=response=>{var _plainToClass;const legends=(_plainToClass=Object(external_class_transformer_["plainToClass"])(Legend,getLegendsFromVisualizations(response)))!==null&&_plainToClass!==void 0?_plainToClass:[];return new Legends(...legends)};const parseAxesList=response=>new AxesList(...getAxesFromVisualizations(response));const parseQueries=response=>{const queries=Object(fp_["get"])("queries",response);return new dataset_src["d"](...Object(external_class_transformer_["plainToClass"])(dataset_src["e"],queries))};const getPlaceTransform=plainPlaceTransform=>{if(!(plainPlaceTransform!==null&&plainPlaceTransform!==void 0&&plainPlaceTransform.image))return undefined;return new ImageTransform_ImageTransform(plainPlaceTransform.image)};const parseDataBrowsers=response=>{let visualizations=Object(fp_["get"])("app.visualizations",response);visualizations=visualizations.filter((visualization=>!!visualization.dataBrowsers));const dataBrowsers=Object(fp_["flatMap"])((visualization=>visualization.dataBrowsers.map((dataBrowser=>new data_browser_DataBrowser({...dataBrowser,visualization:visualization.id,list:dataBrowser.list?{...dataBrowser.list,encoding:dataBrowser.list.encoding?new encoding_src["f"](dataBrowser.list.encoding):undefined}:undefined,drag:dataBrowser.drag?{placeTransform:getPlaceTransform(dataBrowser.drag.placeTransform)}:undefined})))),visualizations);return new data_browser_DataBrowsers(...dataBrowsers)};const parseResponse=response=>{const queries=parseQueries(response);return{app:parseApp(response),schema:Object(fp_["get"])("schema",response),history:Object(fp_["get"])("history",response),queries,layers:parseLayers(response),legends:parseLegends(response),axesList:parseAxesList(response),visualizations:parseVisualizations(response),filters:parseFilters(response,queries),dataBrowsers:parseDataBrowsers(response)}};async function getApp(application,version,authorization){const response=await httpGet(src["a"].getValue("BFF_API_ADDRESS",authorization.tenant),`/app/${application}`,{version,filterValueLimit:6},authorization);const body=await response.json();return parseResponse(body)}function getApps(authorization){return httpGet(src["a"].getValue("APP_API_ADDRESS"),`/app`,{},authorization).then((res=>res.json()))}function deleteApp(appId,authorization){return httpDelete(src["a"].getValue("APP_API_ADDRESS"),`/app/${appId}`,{},authorization).then((res=>res.json()))}function updateAppName(appId,name,authorization){return httpPut(src["a"].getValue("APP_API_ADDRESS"),`/app/${appId}/name`,{name},{},authorization).then((res=>res.json()))}function rollbackAppVersion(appId,version,authorization){return httpPut(src["a"].getValue("APP_API_ADDRESS"),`/app/${appId}/rollback`,{version},{},authorization).then((res=>res.json()))}var ViewState=__webpack_require__(62);class ViewStates_ViewStates extends Array{clone(){return new ViewStates_ViewStates(...this)}getFromVisualization(visualizationId){const viewState=this.find((vs=>vs.visualizationId===visualizationId));if(!visualizationId||!viewState){throw new Error("Cannot find a viewState")}return viewState}withUpdatedViewState(newViewState){if(!newViewState)return this;const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId:newViewState.visualizationId},this);cloned.splice(viewStateIndex,1,newViewState);return cloned}transitionToPosition(visualizationId,position,duration){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},this);const newViewState=this[viewStateIndex].transition(position,duration);cloned.splice(viewStateIndex,1,newViewState);return cloned}updateZ(visualizationId,z){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},this);const newViewState=this[viewStateIndex].clone();newViewState.coordinates.z=z;cloned.splice(viewStateIndex,1,newViewState);return cloned}zoom(visualizationId,zoomJumpSize){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},this);const newZoom=this[viewStateIndex].zoom+zoomJumpSize;const newViewState=this[viewStateIndex].zoomTransition(newZoom);cloned.splice(viewStateIndex,1,newViewState);return cloned}resetPosition(visualizationId){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},cloned);const newViewState=cloned[viewStateIndex].resetPosition();cloned.splice(viewStateIndex,1,newViewState);return cloned}}var view_state_ViewStates=ViewStates_ViewStates;let AppsStatus;(function(AppsStatus){AppsStatus["IDLE"]="IDLE";AppsStatus["LOADING"]="LOADING";AppsStatus["DIRTY"]="DIRTY";AppsStatus["SAVING"]="SAVING";AppsStatus["UPDATED"]="UPDATED";AppsStatus["ERROR"]="ERROR"})(AppsStatus||(AppsStatus={}));class AppsStore{constructor(){this.status=void 0;this.apps=void 0;for(var _len=arguments.length,apps=new Array(_len),_key=0;_key<_len;_key++){apps[_key]=arguments[_key]}this.apps=apps;this.status=AppsStatus.IDLE}immutableSetStatus(value){const cloned=this.clone();cloned.status=value;return cloned}is(status){return this.status===status}clone(){const cloned=new AppsStore(...this.apps);cloned.status=this.status;return cloned}immutableRemoveApp(appId){const cloned=this.clone();cloned.apps=cloned.apps.filter((app=>app.id!==appId));return cloned}}var state_AppsStore=AppsStore;var external_typesafe_actions_=__webpack_require__(2);let DragMode;(function(DragMode){DragMode["PAN"]="pan";DragMode["ROTATE"]="rotate"})(DragMode||(DragMode={}));const DEFAULT_DRAG_MODE=DragMode.PAN;class ViewController{constructor(props){this.visualizationId=void 0;this.dragMode=void 0;this.dragPan=void 0;Object.assign(this,props);if(!this.dragMode)this.dragMode=DEFAULT_DRAG_MODE;if(props.dragPan!==false)this.dragPan=true}clone(){return new ViewController(this)}reset(){return new ViewController({visualizationId:this.visualizationId,dragMode:DEFAULT_DRAG_MODE,dragPan:true})}immutableToggleDragMode(){const cloned=this.clone();if(this.dragMode===DragMode.PAN){cloned.dragMode=DragMode.ROTATE}else{cloned.dragMode=DragMode.PAN}return cloned}isRotateMode(){return this.dragMode===DragMode.ROTATE}}class ViewControllers_ViewControllers extends Array{constructor(){for(var _len=arguments.length,viewControllers=new Array(_len),_key=0;_key<_len;_key++){viewControllers[_key]=arguments[_key]}const vs=viewControllers.map((viewController=>new ViewController(viewController)));super(...vs)}getFromVisualization(visualizationId){if(!visualizationId)return;return this.find((viewController=>viewController.visualizationId===visualizationId))}immutableToggleDragMode(visualizationId){const viewControllerIndex=Object(fp_["findIndex"])((viewController=>viewController.visualizationId===visualizationId),this);if(viewControllerIndex>-1){const cloned=new ViewControllers_ViewControllers(...this);const newViewController=this[viewControllerIndex].immutableToggleDragMode();cloned.splice(viewControllerIndex,1,newViewController);return cloned}return this}}var Toast=__webpack_require__(27);class Worlds extends Array{clone(){return new Worlds(...this)}getFromVisualization(visualizationId){if(!visualizationId)return;return this.find((world=>world.visualizationId===visualizationId))}immutableUpdateWorld(world){const worldIndex=this.findIndex((w=>w.visualizationId===world.visualizationId));if(!world||worldIndex<0)return this;let cloned=this.clone();if(world.hasInitialDimentions()){cloned=new Worlds(...cloned.map((w=>w.withInitialDimensions(world.getInitialDimentions()))))}cloned.splice(worldIndex,1,world);return cloned}immutableResetWorldFromVisualization(visualizationId){const cloned=this.clone();const worldIndex=cloned.findIndex((world=>world.visualizationId===visualizationId));const world=cloned[worldIndex].clone();world.scaleDomains=undefined;cloned.splice(worldIndex,1,world);return cloned}}const getViewStates=(visualizations,params)=>{const viewStates=visualizations.map((visualization=>{const isParamsForVisualization=params&&params.visualization===visualization.id;return new ViewState["a"]({visualizationId:visualization.id,zoomRange:visualization.zoomRange,coordinates:isParamsForVisualization&&params!==null&&params!==void 0&&params.coordinates?Object(ViewState["b"])(params===null||params===void 0?void 0:params.coordinates,visualizations.getCurrent()):visualization.getInitialCoordinates(),zoom:isParamsForVisualization&&params!==null&&params!==void 0&&params.zoom?params===null||params===void 0?void 0:params.zoom:visualization.getInitialZoom(),bearing:isParamsForVisualization&&params!==null&&params!==void 0&&params.bearing?params===null||params===void 0?void 0:params.bearing:visualization.getInitialBearing(),zoomBehavior:visualization.zoomBehavior})}));return new view_state_ViewStates(...viewStates)};const getViewControllers=visualizations=>{const viewControllers=visualizations.map((visualization=>new ViewController({visualizationId:visualization.id})));return new ViewControllers_ViewControllers(...viewControllers)};const getMergedFilters=(response,params)=>{var _params$filters;if(params!==null&&params!==void 0&&(_params$filters=params.filters)!==null&&_params$filters!==void 0&&_params$filters.length&&params.filters.length>0){return response.filters.mergeKeepingHidden(params.filters)}return response.filters};const getWorlds=visualizations=>new Worlds(...visualizations.map((visualization=>new World["a"]({visualizationId:visualization.id,type:visualization.type,sizeRatio:visualization.getSizeRatio()}))));const responseToAction=(response,params)=>{if(!response)return{};const mergedFilters=getMergedFilters(response,params);return{...response,filters:mergedFilters,visualizations:response.visualizations,viewStates:getViewStates(response.visualizations,params),viewControllers:getViewControllers(response.visualizations),worlds:getWorlds(response.visualizations),version:params===null||params===void 0?void 0:params.version}};const getParams=action=>{var _action$payload$initi,_action$payload$initi2;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appPageLoaded):return action.payload.params;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.checkoutVersion.request):return{appId:action.payload.appId,version:action.payload.version};case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return{appId:action.payload.appId,coordinates:action.payload.initialPosition?new spatial_src["c"](action.payload.initialPosition):undefined,bearing:(_action$payload$initi=action.payload.initialPosition)===null||_action$payload$initi===void 0?void 0:_action$payload$initi.bearing,zoom:(_action$payload$initi2=action.payload.initialPosition)===null||_action$payload$initi2===void 0?void 0:_action$payload$initi2.zoom};default:return{appId:action.payload.appId}}};function*fetchApp(action){const authorization=yield Object(effects_["select"])((state=>state.authorization));const params=getParams(action);try{const appResponse=yield Object(effects_["call"])(getApp,params.appId,params.version,authorization);yield Object(effects_["put"])(Actions["a"].app.fetch.success(responseToAction(appResponse,params)))}catch(e){if(e instanceof AppApiError){yield Object(effects_["put"])(Actions["a"].app.fetch.failure({exception:e,...responseToAction(e.response,params)}))}else{yield Object(effects_["put"])(Actions["a"].app.fetch.failure({exception:e}))}}}function*fetchApps(){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));const payload=yield Object(effects_["call"])(getApps,authorization);yield Object(effects_["put"])(Actions["a"].apps.fetchApps.success({appsStore:new state_AppsStore(...payload)}))}catch(e){yield Object(effects_["put"])(Actions["a"].apps.fetchApps.failure(e))}}function*deleteAppSaga(action){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));yield Object(effects_["call"])(deleteApp,action.payload.appId,authorization);yield Object(effects_["put"])(Actions["a"].app.delete.success({appId:action.payload.appId}))}catch(e){yield Object(effects_["put"])(Actions["a"].app.delete.failure(e))}}function*updateAppNameSaga(action){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));yield Object(effects_["call"])(updateAppName,action.payload.appId,action.payload.name,authorization);yield Object(effects_["put"])(Actions["a"].app.save.success({appId:action.payload.appId}));Object(Toast["b"])("App saved successfully.")}catch(e){yield Object(effects_["put"])(Actions["a"].app.save.failure(e))}}function getRowsetsToFetch(candidateRowsets,rowsetStore,viewState,world){const nonexistent=Object(fp_["differenceBy"])((r=>r.getId()),candidateRowsets,rowsetStore.getRowsets());const empty=Object(fp_["intersectionBy"])((r=>r.getId()),candidateRowsets,rowsetStore.getEmptyRowsets());const newData=Object(fp_["uniqBy"])((r=>r.getId()),Object(fp_["unionWith"])(fp_["isEqual"],nonexistent,empty));const fetchAgainData=Object(fp_["intersectionBy"])((r=>r.getId()),candidateRowsets,rowsetStore.getRowsetsToFetchAgain(viewState,world));const rowsetsToFetch=Object(fp_["uniqBy"])((r=>r.getId()),Object(fp_["unionWith"])(fp_["isEqual"],fetchAgainData,newData));return new Rowsets_Rowsets(...rowsetsToFetch)}function getVisibleRowsetsToFetch(layers,rowsetStore,viewState,visualization,world){return new Rowsets_Rowsets(...getRowsetsToFetch(layers.getFromVisualization(visualization.id).getTargetRowsets(viewState.zoom),rowsetStore,viewState,world))}function shouldFetchRowset(rowset,rowsetStore,viewState,world){if(!rowset)return false;return getRowsetsToFetch([rowset],rowsetStore,viewState,world).length>0}let prefetchThreshold=2;function setPrefetchThreshold(newPrefetchThreshold){return prefetchThreshold=newPrefetchThreshold}function getPrefetchThreshold(){return prefetchThreshold}function getZoomFetch(layer,rowsetStore,viewState,world,currentZoomLevel,targetZoomLevel){const targetViewState=viewState.withZoom(targetZoomLevel);const targetRowset=layer.getTargetRowset(targetZoomLevel);const currentRowset=layer.getTargetRowset(currentZoomLevel);if(targetRowset&&currentRowset){if(targetRowset.resolution>currentRowset.resolution){const nextResolution=(currentRowset===null||currentRowset===void 0?void 0:currentRowset.resolution)+1;targetRowset.resolution=nextResolution>layer.getResolutions().getMax()?layer.getResolutions().getMax():nextResolution}else if(targetRowset.resolution<currentRowset.resolution){const previousResolution=(currentRowset===null||currentRowset===void 0?void 0:currentRowset.resolution)-1;targetRowset.resolution=previousResolution<layer.getResolutions().getMin()?layer.getResolutions().getMin():previousResolution}}if(shouldFetchRowset(targetRowset,rowsetStore,targetViewState,world)){return{rowset:targetRowset,targetViewState}}}function getZoomFetchs(layers,rowsetStore,viewState,world,zoomLevel,targetZoomLevel){const zoomLayers=layers.filter(fromZoom(targetZoomLevel));return zoomLayers.map((layer=>getZoomFetch(layer,rowsetStore,viewState,world,zoomLevel,targetZoomLevel)))}function getZoomInPreFetchs(layers,rowsetStore,viewState,world){let zoomInPrefetchs=[];for(let i=1;i<=getPrefetchThreshold();i++){const zoomFetchs=getZoomFetchs(layers,rowsetStore,viewState,world,viewState.zoom,viewState.zoom+i);zoomInPrefetchs=zoomInPrefetchs.concat(zoomFetchs)}return zoomInPrefetchs}const prefetchRowsetId=prefetch=>{var _prefetch$rowset;return prefetch&&((_prefetch$rowset=prefetch.rowset)===null||_prefetch$rowset===void 0?void 0:_prefetch$rowset.getId())};function getPrefetchs(layers,rowsetStore,viewState,visualization,world){if(!viewState)return[];const visualizationLayers=layers.getFromVisualization(visualization.id);const zoomInPrefetchs=getZoomInPreFetchs(visualizationLayers,rowsetStore,viewState,world);const possiblePrefetchs=Object(fp_["uniqBy"])(prefetchRowsetId,zoomInPrefetchs);const zoomFetchs=getZoomFetchs(visualizationLayers,rowsetStore,viewState,world,viewState.zoom,viewState.zoom);const prefetchs=Object(fp_["differenceBy"])((prefetch=>{var _prefetch$rowset2;return prefetch&&((_prefetch$rowset2=prefetch.rowset)===null||_prefetch$rowset2===void 0?void 0:_prefetch$rowset2.getId())}),possiblePrefetchs,zoomFetchs);return prefetchs.filter((prefetch=>!!prefetch))}function getBleedMultiplier(){return 2}function getFetchBox(visibleWorld){if(!visibleWorld)return;return visibleWorld.multiply(getBleedMultiplier())}var internals_src=__webpack_require__(16);let Filter_FilterType;(function(FilterType){FilterType["RANGE"]="range";FilterType["INTERSECT"]="intersect"})(Filter_FilterType||(Filter_FilterType={}));var ComparisonType;(function(ComparisonType){ComparisonType["GREATER_EQUALS_THAN"]="GREATER_EQUALS_THAN";ComparisonType["LESS_EQUALS_THAN"]="LESS_EQUALS_THAN";ComparisonType["PARTIAL_MATCH"]="PARTIAL_MATCH";ComparisonType["EQUALS"]="EQUALS";ComparisonType["INTERSECTS"]="INTERSECTS"})(ComparisonType||(ComparisonType={}));function convertRangeFilter(filter){const datasetFilters=[];const minValue=filter.values[0];if(minValue!==null&&minValue!==undefined&&!Number.isNaN(minValue)){const minFilter={column:filter.field,values:[minValue],comparisonType:ComparisonType.GREATER_EQUALS_THAN};datasetFilters.push(minFilter)}const maxValue=filter.values[1];if(maxValue!==null&&maxValue!==undefined&&!Number.isNaN(maxValue)){const maxFilter={column:filter.field,values:[maxValue],comparisonType:ComparisonType.LESS_EQUALS_THAN};datasetFilters.push(maxFilter)}return datasetFilters}function getComparisonType(filter){if(filter.type===Filter_FilterType.INTERSECT){return ComparisonType.INTERSECTS}if(filter.exactMatch){return ComparisonType.EQUALS}else{return ComparisonType.PARTIAL_MATCH}}function convertDefaultFilter(filter){const datasetFilters=[];const datasetFilter={column:filter.field,values:filter.values,comparisonType:getComparisonType(filter)};datasetFilters.push(datasetFilter);return datasetFilters}function filterToDatasetFilter(filter){if(filter.type==Filter_FilterType.RANGE){return convertRangeFilter(filter)}else{return convertDefaultFilter(filter)}}function toDatasetFilters(filters){if(filters){return filters.map((filter=>filterToDatasetFilter(filter))).flat()}return[]}const addParam=(queryParam,key,value)=>{if(value){if(Array.isArray(value)&&value.length>0){queryParam[key]=value}else{queryParam[key]=value}}};const getFilterParams=filterSet=>{const queryParams={};addParam(queryParams,"filter",toDatasetFilters(filterSet.filters));addParam(queryParams,"limit",filterSet.limit);addParam(queryParams,"offset",filterSet.offset);if(internals_src["a"].isDebugging())queryParams["debug"]=true;return queryParams};class DatasetRepository_DatasetRepository{static async getRows(query,transformParams,filter,authorization){const queryParams=getFilterParams(filter);addParam(queryParams,"dataSource",query.dataSource);addParam(queryParams,"transform",transformParams);return httpGet(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row`,queryParams,authorization)}static async getRow(rowId,query,authorization){const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpGet(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row/${rowId}`,queryParams,authorization);if(response.status!==200){throw new Error("Error getting row "+response.status)}return response.json()}static async updateRow(query,rowId,rowValues,authorization){const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpPost(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row/${rowId}`,rowValues,queryParams,authorization);if(response.status!==200){throw new Error("Error updating row "+response.status)}return response.json()}static async createRow(){let row=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};let query=arguments.length>1?arguments[1]:undefined;let authorization=arguments.length>2?arguments[2]:undefined;const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpPost(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row`,[row],queryParams,authorization);if(response.status!==200){throw new Error("Error updating row "+response.status)}return response.json()}static async deleteRow(rowId,query,authorization){const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpDelete(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row/${rowId}`,queryParams,authorization);if(response.status!==200){throw new Error("Error deleting row "+response.status)}return response.json()}}var Row=__webpack_require__(55);var Rows=__webpack_require__(69);const addId=(rows,idColumn)=>{rows.forEach((row=>{row["_id"]=row[idColumn.name]}));return rows};class DatasetService_DatasetService{static async getRows(query,transformParams,filterSet,authorization){const response=await DatasetRepository_DatasetRepository.getRows(query,transformParams,filterSet,authorization);const body=await response.json();const rows=new Rows["a"];body.forEach((responseRow=>rows.push(new Row["a"](responseRow))));rows.etag=response.headers.get("ETag");if(query.getColumns().hasId()){addId(rows,query.getColumns().getId())}const lastPageHeader=response.headers.get("last-page");return{rows,lastPage:lastPageHeader!=="false"}}static async getRowsWithLoader(loader,query,transformParams,filterSet){const rows=new Rows["a"];const loaderRows=await loader(filterSet,transformParams);loaderRows.forEach((responseRow=>rows.push(new Row["a"](responseRow))));rows.etag=Date.now().toString();if(query.getColumns().hasId()){addId(rows,query.getColumns().getId())}return{rows,lastPage:true}}static async getRow(rowId,query,authorization){const row=await DatasetRepository_DatasetRepository.getRow(rowId,query,authorization);const rowIdColumn=query.getColumns().getId();if(rowIdColumn){row["_id"]=row[rowIdColumn.name]}return row}static async updateRow(query,rowId,rowValues,authorization){return DatasetRepository_DatasetRepository.updateRow(query,rowId,rowValues,authorization)}static async createRow(row,query,authorization){return DatasetRepository_DatasetRepository.createRow(row,query,authorization)}static async deleteRow(rowId,query,authorization){return DatasetRepository_DatasetRepository.deleteRow(rowId,query,authorization)}}var ColumnType=__webpack_require__(21);class filter_Filters_Filters extends Array{push(item){const existingFilter=this.find((filter=>Object(fp_["isEqual"])(filter,item)));if(!existingFilter){return super.push(item)}return this.length}}function toFilters(box,xField,yField,zField,columns){var _columns$get,_columns$get3;const filters=new filter_Filters_Filters;if(!box)return filters;if(xField&&((_columns$get=columns.get(xField))===null||_columns$get===void 0?void 0:_columns$get.getType())!==ColumnType["a"].JSON){var _columns$get2;if(((_columns$get2=columns.get(xField))===null||_columns$get2===void 0?void 0:_columns$get2.getType())===ColumnType["a"].GEOMETRY){filters.push({field:xField,type:Filter_FilterType.INTERSECT,values:box.getPolygon()})}else{filters.push({field:xField,type:Filter_FilterType.RANGE,values:[box.x.getMin(),box.x.getMax()]})}}if(yField&&((_columns$get3=columns.get(yField))===null||_columns$get3===void 0?void 0:_columns$get3.getType())!==ColumnType["a"].JSON){var _columns$get4;if(((_columns$get4=columns.get(yField))===null||_columns$get4===void 0?void 0:_columns$get4.getType())===ColumnType["a"].GEOMETRY){filters.push({field:yField,type:Filter_FilterType.INTERSECT,values:box.getPolygon()})}else{filters.push({field:yField,type:Filter_FilterType.RANGE,values:[box.y.getMin(),box.y.getMax()]})}}if(zField){if(zField&&box.z){filters.push({field:zField,type:Filter_FilterType.RANGE,values:[box.z.getMin(),box.z.getMax()]})}}return filters}var projector_src=__webpack_require__(51);const getAuthorization=state=>state.authorization;const RowsetSaga_getApp=state=>state.appStore.app;const getRowsetStore=state=>state.rowsetStore;const RowsetSaga_getViewStates=state=>state.viewStates;const getLayers=state=>state.layers;const getFilterState=state=>state.filters;const getVisualizations=state=>state.visualizations;const getQueriesStore=state=>state.queryStore;const getProjectorStore=state=>state.projectorStore;const RowsetSaga_getWorlds=state=>state.worlds;function*showGenericErrorFeedback(){Object(Toast["a"])("An error has occurred.")}function*getPayloadFilters(action){let filters;if(Object(external_typesafe_actions_["isActionOf"])([Actions["a"].filter.sidebarFiltersClear,Actions["a"].filter.filterToggle],action)){filters=action.payload.filters}if(!filters){var _select;filters=yield(_select=Object(effects_["select"])(getFilterState))!==null&&_select!==void 0?_select:new domain_Filters}return{filters}}function*refreshData(action){const rowsetStore=yield Object(effects_["select"])(getRowsetStore);const layers=yield Object(effects_["select"])(getLayers);const visualizations=yield Object(effects_["select"])(getVisualizations);const app=yield Object(effects_["select"])(RowsetSaga_getApp);const worlds=yield Object(effects_["select"])(RowsetSaga_getWorlds);const visualization=action.payload.toVisualization||visualizations.getCurrent();let viewStates=action.payload.viewStates;if(!viewStates){viewStates=yield Object(effects_["select"])(RowsetSaga_getViewStates)}const viewState=viewStates.getFromVisualization(visualization.id);const world=worlds.getFromVisualization(visualization.id);if(!viewState||!world){throw new Error("Cannot refresh data without a view state and world")}const queryStore=yield Object(effects_["select"])(getQueriesStore);const subscribeQueries=new dataset_src["d"];const{filters}=yield getPayloadFilters(action);const rowsets=getVisibleRowsetsToFetch(layers,rowsetStore,viewState,visualization,world);if(rowsets.length>0){for(const rowset of rowsets){yield Object(effects_["put"])(Actions["a"].rowset.fetchDataRequested({app,visualization,rowset,viewState,filters}));const query=queryStore.queries.findQuery(rowset.getData());if(query){subscribeQueries.push(query)}}}yield Object(effects_["put"])(Actions["a"].update.subscribe({filters,queries:subscribeQueries}));const prefetchs=getPrefetchs(layers,rowsetStore,viewState,visualization,world);for(const prefetch of prefetchs){yield Object(effects_["put"])(Actions["a"].rowset.fetchDataRequested({app,visualization,rowset:prefetch.rowset,viewState:prefetch.targetViewState,filters}))}}const getSelectedFilters=(filterState,visualization)=>{if(!filterState)return new domain_Filters;return filterState.getFromVisualization(visualization.id).getWithValues()};const getFilters=(filters,visualization,rowset,modelBoxFilters)=>{const selectedFilters=getSelectedFilters(filters,visualization).map((f=>f.toPlain()));selectedFilters.push(...modelBoxFilters);return selectedFilters};function getTransformParams(rowset){if(rowset.transform){return{type:rowset.transform.getType(),resolution:rowset.resolution}}return undefined}function*fetchData(action){var _rowset$scales$z;const authorization=yield Object(effects_["select"])(getAuthorization);const queryStore=yield Object(effects_["select"])(getQueriesStore);const projectorStore=yield Object(effects_["select"])(getProjectorStore);const rowset=action.payload.rowset;const query=queryStore.queries.findQuery(rowset.getData());if(!query)return;const worlds=yield Object(effects_["select"])(RowsetSaga_getWorlds);const world=worlds===null||worlds===void 0?void 0:worlds.getFromVisualization(action.payload.visualization.id);const fetchBox=getFetchBox(action.payload.viewState.getVisibleWorld(world));const projector=projectorStore.getFromVisualization(action.payload.visualization.id);const boxProjector=projector?new projector_src["a"](projector,rowset.scales.x.type,rowset.scales.y.type):undefined;const fetchModelBox=fetchBox?boxProjector===null||boxProjector===void 0?void 0:boxProjector.unproject(fetchBox):undefined;const modelBoxFilters=fetchModelBox&&world!==null&&world!==void 0&&world.isGeo()?toFilters(fetchModelBox,rowset.scales.x.field,rowset.scales.y.field,(_rowset$scales$z=rowset.scales.z)===null||_rowset$scales$z===void 0?void 0:_rowset$scales$z.field,query.getColumns()):[];const filter={filters:getFilters(action.payload.filters,action.payload.visualization,rowset,modelBoxFilters)};yield Object(effects_["put"])(Actions["a"].rowset.fetchData.request({rowset}));try{const queryLoader=queryStore.getLoader(query);let response={rows:new dataset_src["g"],lastPage:true};if(queryLoader){response=yield Object(effects_["call"])(DatasetService_DatasetService.getRowsWithLoader,queryLoader.loader,query,filter,getTransformParams(rowset))}else{response=yield Object(effects_["call"])(DatasetService_DatasetService.getRows,query,getTransformParams(rowset),filter,authorization)}const payload={rowset:action.payload.rowset.fill(response.rows,fetchBox)};yield Object(effects_["put"])(Actions["a"].rowset.fetchData.success(payload))}catch(e){yield Object(effects_["put"])(Actions["a"].rowset.fetchData.failure({reason:"FETCH_DATA_FAILED",exception:e,rowset:action.payload.rowset}))}}function fetchValues(data,columnName,filterTerm,authorization){return httpGet(src["a"].getValue("DATASET_API_ADDRESS",authorization.tenant),`/view/${data.query}/column/${columnName}/value`,{filterTerm,limit:6,dataSource:data.source},authorization).then((res=>res.json()))}function*fetchFilterSuggestions(action){const filterActions=Actions["a"].filter;const authorization=yield Object(effects_["select"])((state=>state.authorization));if(!action.payload.filter.searchTerm){yield Object(effects_["put"])(filterActions.filterSearchFetched({filter:action.payload.filter.clone()}));return}try{const payload=yield Object(effects_["call"])(fetchValues,action.payload.filter.data,action.payload.filter.field,action.payload.filter.searchTerm,authorization);const newFilter=action.payload.filter.clone();newFilter.searchResults=payload;yield Object(effects_["put"])(filterActions.filterSearchFetched({filter:newFilter}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"FILTER_SEARCH_FAILED",exception:e}))}return}const RowSaga_getAuthorization=state=>state.authorization;const RowSaga_getRowsetStore=state=>state.rowsetStore;const RowSaga_getVisualizations=state=>state.visualizations;const RowSaga_getQueriesStore=state=>state.queryStore;function*showRowSavedFeedback(){Object(Toast["b"])("Row saved successfully.")}const getData=(payload,rowsetStore)=>{if(payload.rowsetId){return rowsetStore.getRowset(payload.rowsetId).data}return payload.data};function*updateRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const visualizations=yield Object(effects_["select"])(RowSaga_getVisualizations);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);const rowsetStore=yield Object(effects_["select"])(RowSaga_getRowsetStore);const currentVisualization=visualizations.getCurrent();if(!currentVisualization)throw new Error("visualization should be available for update row");try{var _action$payload$row;const data=getData(action.payload,rowsetStore);const query=queryStore.queries.findQuery(data);yield Object(effects_["call"])(DatasetService_DatasetService.updateRow,query,(_action$payload$row=action.payload.row)===null||_action$payload$row===void 0?void 0:_action$payload$row._id,action.payload.rowDiff,authorization);const isOptimistic=Object(external_typesafe_actions_["isActionOf"])([Actions["a"].layer.dragEnded,Actions["a"].layer.imageTransformed,Actions["a"].layer.imageUploaded],action);if(isOptimistic){yield Object(effects_["put"])(Actions["a"].rowset.optimisticRowSaved({...action.payload}))}else{yield Object(effects_["put"])(Actions["a"].rowset.rowSaved({...action.payload}))}}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_UPDATE_FAILED",exception:e}))}return}function*createRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);try{const query=queryStore.queries.findQuery(action.payload.data);const createdIds=yield Object(effects_["call"])(DatasetService_DatasetService.createRow,action.payload.row,query,authorization);yield Object(effects_["put"])(Actions["a"].rowset.rowCreated({row:new dataset_src["f"]({...action.payload.row,_id:createdIds[0]}),data:action.payload.data}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_CREATION_FAILED",exception:e}))}return}function*fetchRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);const rowsetStore=yield Object(effects_["select"])(RowSaga_getRowsetStore);try{const data=getData(action.payload,rowsetStore);const query=queryStore.queries.findQuery(data);const row=yield Object(effects_["call"])(DatasetService_DatasetService.getRow,action.payload.row._id,query,authorization);yield Object(effects_["put"])(Actions["a"].rowset.rowFetched({row:new dataset_src["f"](row),data:action.payload.data}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_FETCH_FAILED",exception:e}))}return}function*deleteRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);try{const query=queryStore.queries.findQuery(action.payload.data);yield Object(effects_["call"])(DatasetService_DatasetService.deleteRow,action.payload.rowId,query,authorization);yield Object(effects_["put"])(Actions["a"].rowset.rowDeleted(action.payload))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_DELETE_FAILED",exception:e}))}return}var external_socket_io_client_=__webpack_require__(115);var external_socket_io_client_default=__webpack_require__.n(external_socket_io_client_);class UpdateWatcher_UpdateWatcher{onQueryUpdate(queries){const dataList=queries.map((query=>({query:query.name,source:query.dataSource})));UpdateWatcher_UpdateWatcher.dispatcher(Actions["a"].query.dataListUpdated({dataList}))}constructor(){this.socket=void 0;UpdateWatcher_UpdateWatcher.dispatcher({type:"WATCHER_INIT"});this.socket=external_socket_io_client_default()(src["a"].getValue("WATCHER_API_ADDRESS"));this.socket.on("QUERY_UPDATED",(message=>this.onQueryUpdate(message)))}subscribe(queries,tenant){const simplifiedQueries=queries.map((query=>({name:query.name,dataSource:query.dataSource})));this.socket.emit("SUBSCRIBE",{queries:simplifiedQueries,tenant})}static configure(dispatcher){UpdateWatcher_UpdateWatcher.dispatcher=dispatcher}static init(){UpdateWatcher_UpdateWatcher.instance=new UpdateWatcher_UpdateWatcher}static getInstance(){if(!UpdateWatcher_UpdateWatcher.instance)UpdateWatcher_UpdateWatcher.init();return UpdateWatcher_UpdateWatcher.instance}}UpdateWatcher_UpdateWatcher.instance=void 0;UpdateWatcher_UpdateWatcher.dispatcher=void 0;function*subscribeForUpdates(action){const updateWatcher=UpdateWatcher_UpdateWatcher.getInstance();const authorization=yield Object(effects_["select"])((state=>state.authorization));updateWatcher.subscribe(action.payload.queries,authorization.tenant)}const dataBrowserToFilter=dataBrowser=>{var _dataBrowser$search,_dataBrowser$search2;return new CategoricalFilter_SimpleFilter({data:dataBrowser.getData(),field:dataBrowser.list.field,values:(_dataBrowser$search=dataBrowser.search)!==null&&_dataBrowser$search!==void 0&&_dataBrowser$search.term?[(_dataBrowser$search2=dataBrowser.search)===null||_dataBrowser$search2===void 0?void 0:_dataBrowser$search2.term]:[],exactMatch:false})};function*fetchDataBrowsersRows(action){var _dataBrowsers,_dataBrowsers2;const dataBrowsersState=yield Object(effects_["select"])((state=>state.dataBrowsers));let dataBrowsers=action.payload.dataBrowsers;if(!((_dataBrowsers=dataBrowsers)!==null&&_dataBrowsers!==void 0&&_dataBrowsers.length)&&action.payload.data){const dataBrowserFromData=dataBrowsersState.getByData(action.payload.data);dataBrowsers=dataBrowserFromData?new data_browser_DataBrowsers(dataBrowserFromData):new data_browser_DataBrowsers}else if(!((_dataBrowsers2=dataBrowsers)!==null&&_dataBrowsers2!==void 0&&_dataBrowsers2.length)&&action.payload.visualizationId){dataBrowsers=dataBrowsersState.fromVisualization(action.payload.visualizationId)}for(const db of(_dataBrowsers3=dataBrowsers)!==null&&_dataBrowsers3!==void 0?_dataBrowsers3:[]){var _dataBrowsers3;const dataBrowser=dataBrowsersState.getById(db.getId());if(!dataBrowser)return;yield Object(effects_["put"])(Actions["a"].dataBrowser.fetchDataBrowserRows({dataBrowser}))}}function*fetchDataBrowserRows(action){const authorization=yield Object(effects_["select"])((state=>state.authorization));const queryStore=yield Object(effects_["select"])((state=>state.queryStore));const dataBrowser=action.payload.dataBrowser;if(!dataBrowser){return}try{var _dataBrowser$search3,_dataBrowser$rowset$o,_dataBrowser$rowset;const filters=new domain_Filters;if((_dataBrowser$search3=dataBrowser.search)!==null&&_dataBrowser$search3!==void 0&&_dataBrowser$search3.term){filters.push(dataBrowserToFilter(dataBrowser))}const query=queryStore.queries.findQuery(dataBrowser.getData());if(!query){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"FETCH_DATA_BROWSER_FAILED",exception:`Query ${JSON.stringify(dataBrowser.getData())} not found in query store`}))}const limit=dataBrowser.list.rowLimit;const offset=Object(external_typesafe_actions_["isActionOf"])([Actions["a"].dataBrowser.paginateNext,Actions["a"].dataBrowser.paginatePrev],action)?action.payload.offset:(_dataBrowser$rowset$o=(_dataBrowser$rowset=dataBrowser.rowset)===null||_dataBrowser$rowset===void 0?void 0:_dataBrowser$rowset.offset)!==null&&_dataBrowser$rowset$o!==void 0?_dataBrowser$rowset$o:0;const response=yield Object(effects_["call"])(DatasetService_DatasetService.getRows,query,undefined,{filters,limit,offset},authorization);yield Object(effects_["put"])(Actions["a"].dataBrowser.dataBrowserRowsFetched({rows:response.rows,dataBrowserId:dataBrowser.getId(),offset,lastPage:response.lastPage}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"FETCH_DATA_BROWSER_FAILED",exception:e}))}}function getTemplates(){return httpGet(src["a"].getValue("TEMPLATE_API_ADDRESS"),`/template`,{}).then((res=>res.json()))}function createAppFromTemplate(templateId,appName,authorization){return httpPost(src["a"].getValue("BFF_API_ADDRESS"),`/app`,{templateId,appName},{},authorization).then((res=>res.json()))}class Template_Template{constructor(templateId){this.id=void 0;this.id=templateId}getName(){return external_js_sentencecase_default()(this.id)}}function*fetchTemplates(){try{yield Object(effects_["put"])(Actions["a"].template.fetchTemplates.request());const payload=yield Object(effects_["call"])(getTemplates);const templates=payload.map((template=>new Template_Template(template)));yield Object(effects_["put"])(Actions["a"].template.fetchTemplates.success({templates}))}catch(e){yield Object(effects_["put"])(Actions["a"].apps.fetchApps.failure(e))}}function*createTemplateApps(action){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));const payload=yield Object(effects_["call"])(createAppFromTemplate,action.payload.templateId,action.payload.name,authorization);yield Object(effects_["put"])(Actions["a"].template.createApp.success({id:payload.id}));if(payload.id){action.payload.history.push(`/${authorization.tenant}/app/${payload.id}`)}}catch(e){Object(Toast["a"])("Something went wrong creating the app");yield Object(effects_["put"])(Actions["a"].template.createApp.failure(e))}}const postLayer=async(type,partialLayer,authorization)=>{const res=await httpPost(src["a"].getValue("APP_API_ADDRESS"),`layer/${type}`,{partialLayer},{},authorization);return res.json()};const getLayer=async(type,partialLayer,authorization)=>postLayer(type,partialLayer,authorization);const LayerSaga_getAuthorization=state=>state.authorization;const LayerSaga_getVisualizations=state=>state.visualizations;const deepSetsZoomRange=(obj,zoomRange)=>{if(obj.hasOwnProperty("zoomRange")){var _zoomRange$min,_zoomRange$min$fixed,_zoomRange$min2,_zoomRange$min2$fixed,_zoomRange$max,_zoomRange$max$fixed,_zoomRange$max2,_zoomRange$max2$fixed;if(!obj["zoomRange"])obj["zoomRange"]=Object(fp_["cloneDeep"])(zoomRange);if(!obj["zoomRange"].min&&((_zoomRange$min=zoomRange.min)===null||_zoomRange$min===void 0?void 0:(_zoomRange$min$fixed=_zoomRange$min.fixed)===null||_zoomRange$min$fixed===void 0?void 0:_zoomRange$min$fixed.value)!==undefined)obj["zoomRange"].min={fixed:{value:(_zoomRange$min2=zoomRange.min)===null||_zoomRange$min2===void 0?void 0:(_zoomRange$min2$fixed=_zoomRange$min2.fixed)===null||_zoomRange$min2$fixed===void 0?void 0:_zoomRange$min2$fixed.value}};if(!obj["zoomRange"].max&&((_zoomRange$max=zoomRange.max)===null||_zoomRange$max===void 0?void 0:(_zoomRange$max$fixed=_zoomRange$max.fixed)===null||_zoomRange$max$fixed===void 0?void 0:_zoomRange$max$fixed.value)!==undefined)obj["zoomRange"].max={fixed:{value:(_zoomRange$max2=zoomRange.max)===null||_zoomRange$max2===void 0?void 0:(_zoomRange$max2$fixed=_zoomRange$max2.fixed)===null||_zoomRange$max2$fixed===void 0?void 0:_zoomRange$max2$fixed.value}}}const currentZoomRange=obj["zoomRange"]||zoomRange||obj["visible"]&&obj["visible"]["zoomRange"];Object.keys(obj).forEach((key=>{if(obj[key]&&typeof obj[key]==="object")deepSetsZoomRange(obj[key],currentZoomRange)}))};const defaultZoomRange=new ZoomRange["a"]({min:{fixed:{value:0}},max:{fixed:{value:24}}});function*createLayerDraft(action){var _currentVisualization;const authorization=yield Object(effects_["select"])(LayerSaga_getAuthorization);const visualizations=yield Object(effects_["select"])(LayerSaga_getVisualizations);const data=yield Object(effects_["call"])(getLayer,action.payload.type,action.payload.partialLayer,authorization);const currentVisualization=visualizations.getCurrent();data._visualization=currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id;const zoomRange=(_currentVisualization=currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.zoomRange)!==null&&_currentVisualization!==void 0?_currentVisualization:defaultZoomRange;const layer=Object(external_class_transformer_["plainToClass"])(Layer_Layer,data);deepSetsZoomRange(layer,zoomRange);yield Object(effects_["put"])(Actions["a"].layer.createDraft.success(layer))}function*restoreAppVersionRequest(action){const authorization=yield Object(effects_["select"])((state=>state.authorization));try{const appResponse=yield Object(effects_["call"])(rollbackAppVersion,action.payload.appId,action.payload.version,authorization);yield Object(effects_["put"])(Actions["a"].app.restoreVersion.success(appResponse))}catch(e){yield Object(effects_["put"])(Actions["a"].app.restoreVersion.failure(e))}}function*restoreAppVersionSuccess(action){yield Object(effects_["put"])(Actions["a"].app.fetch.request({appId:action.payload.id}));Object(Toast["b"])("App restored successfully.")}function*restoreAppVersionFailure(){Object(Toast["a"])("App could not be restored.")}async function put(appId,visualizationIndex,layers,initialPosition,authorization){const plainLayers=Object(external_class_transformer_["classToPlain"])(layers);const res=await httpPut(src["a"].getValue("APP_API_ADDRESS"),`app/${appId}/visualization/${visualizationIndex}`,{layers:plainLayers,initialPosition},{},authorization);return res.json()}const saveVisualization=async(appId,visualizationIndex,layers,initialPosition,authorization)=>put(appId,visualizationIndex,layers,initialPosition,authorization);const VisualizationSaga_getAuthorization=state=>state.authorization;const VisualizationSaga_getVisualizations=state=>state.visualizations;function*saveVisualizationRequest(action){const authorization=yield Object(effects_["select"])(VisualizationSaga_getAuthorization);const visualizations=yield Object(effects_["select"])(VisualizationSaga_getVisualizations);const appStore=yield Object(effects_["select"])((state=>state.appStore));const currentVisualization=visualizations.getCurrent();const visualizationIndex=visualizations.getCurrentIndex();try{var _appStore$app;yield Object(effects_["call"])(saveVisualization,(_appStore$app=appStore.app)===null||_appStore$app===void 0?void 0:_appStore$app.id,visualizationIndex,action.payload.layers,currentVisualization.initialPosition,authorization);yield Object(effects_["put"])(Actions["a"].visualization.save.success())}catch(e){yield Object(effects_["put"])(Actions["a"].visualization.save.failure(e))}}function*saveVisualizationSuccess(){Object(Toast["b"])("App saved successfully.")}function*saveVisualizationFailure(action){Object(Toast["a"])(`App could not be saved. ${action.payload.message}`)}function*setCurrentPositionAsInitial(_){Object(Toast["b"])("Current position now is initial position")}function*fetchLatestAppVersion(){const appVersion=yield Object(effects_["select"])((state=>state.appStore.version));const appId=yield Object(effects_["select"])((state=>{var _state$appStore$app;return(_state$appStore$app=state.appStore.app)===null||_state$appStore$app===void 0?void 0:_state$appStore$app.id}));if(appVersion!==undefined){yield Object(effects_["put"])(Actions["a"].app.fetch.request({appId}))}}function takeLatestPerKey(patternOrChannel,worker,keySelector){for(var _len=arguments.length,args=new Array(_len>3?_len-3:0),_key=3;_key<_len;_key++){args[_key-3]=arguments[_key]}return Object(effects_["fork"])((function*(){const tasks={};while(true){const action=yield Object(effects_["take"])(patternOrChannel);const key=yield Object(effects_["call"])(keySelector,action);if(tasks[key]){yield Object(effects_["cancel"])(tasks[key])}tasks[key]=yield Object(effects_["fork"])(worker,...args,action)}}))}let RowsetStatus;(function(RowsetStatus){RowsetStatus["NONE"]="NONE";RowsetStatus["LOADING"]="LOADING";RowsetStatus["LOADED"]="LOADED";RowsetStatus["ERROR"]="ERROR"})(RowsetStatus||(RowsetStatus={}));function*createWorld(action){const visualizations=yield Object(effects_["select"])((_ref=>{let{visualizations}=_ref;return visualizations}));const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;const worlds=yield Object(effects_["select"])((_ref2=>{let{worlds}=_ref2;return worlds}));const currentWorld=worlds.getFromVisualization(currentVisualization.id);if(!currentWorld||currentWorld.isReady())return;const layers=yield Object(effects_["select"])((_ref3=>{let{layers}=_ref3;return layers}));const vizLayers=layers.getFromVisualization(currentVisualization.id);const rowsetsFromLayers=vizLayers.getRowsets(currentVisualization.getInitialZoom(),currentVisualization.id);const rowsetStore=yield Object(effects_["select"])((_ref4=>{let{rowsetStore}=_ref4;return rowsetStore}));const rowsetsStatus=rowsetsFromLayers.map((rowset=>{const isRowsetFromAction=action.payload.rowset.getId()===rowset.getId();if(isRowsetFromAction)return RowsetStatus.NONE;return rowsetStore.getStatus(rowset)}));if(rowsetsStatus.every((rowsetStatus=>rowsetStatus!==RowsetStatus.LOADING))){const rowsets=new Rowsets_Rowsets(...rowsetsFromLayers.map((rowset=>rowsetStore.getRowset(rowset.getId()))));const unifedScaleDomain=rowsets.getUnifiedScaleDomains();const world=currentWorld.setScaleDomains(unifedScaleDomain);return yield Object(effects_["put"])(Actions["a"].world.worldCreated({world}))}}function*logError(action){internals_src["c"].error(action.payload.reason,action.payload.exception);yield}let lastTime=new Date;function*log(action){if(internals_src["a"].isDebugging()&&action.type!=="LAYER_MOUSE_LEFT"&&action.type!=="LAYER_MOUSE_HOVER"){const currentTime=new Date;internals_src["c"].debug("action interval",currentTime.getTime()-lastTime.getTime());lastTime=currentTime;internals_src["c"].debug("action",action)}yield}function selectRowsetId(action){return action.payload.rowset.getId()}function*appSaga(){yield Object(effects_["takeEvery"])(Actions["a"].apps.appsLoaded,fetchApps);yield Object(effects_["takeEvery"])(Actions["a"].apps.appsLoaded,fetchTemplates);yield Object(effects_["takeEvery"])(Actions["a"].app.appPageLoaded,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].template.createApp.request,createTemplateApps);yield Object(effects_["takeEvery"])(Actions["a"].hoc.hocUpdated,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].hoc.hocLoaded,fetchApp);yield Object(effects_["takeLatest"])(Actions["a"].filter.filterToggle,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].filter.filterSearch,fetchFilterSuggestions);yield Object(effects_["takeEvery"])(Actions["a"].filter.sidebarFiltersClear,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].visualization.changeTab,fetchLatestAppVersion);yield Object(effects_["takeLatest"])(Actions["a"].layer.encodingPositionChanged,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].layer.visibilityChanged,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].layer.queryChanged,refreshData);yield Object(effects_["debounce"])(100,Actions["a"].navigation.zoomInRequested,refreshData);yield Object(effects_["debounce"])(100,Actions["a"].navigation.zoomOutRequested,refreshData);yield Object(effects_["debounce"])(100,Actions["a"].view.viewZooming,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].view.viewDragEnd,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].dataBrowser.navigateToPosition,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].navigation.levelChangeRequested,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].view.viewLoaded,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].view.jumpViewLoaded,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].update.subscribe,subscribeForUpdates);yield Object(effects_["takeEvery"])(Actions["a"].query.dataListUpdated,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowSaved,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowSaved,fetchDataBrowsersRows);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowSaved,showRowSavedFeedback);yield Object(effects_["takeLatest"])(Actions["a"].rowset.optimisticRowSaved,showRowSavedFeedback);yield Object(effects_["takeLatest"])(Actions["a"].root.genericError,showGenericErrorFeedback);yield Object(effects_["takeEvery"])(Actions["a"].layer.createDraft.request,createLayerDraft);yield Object(effects_["takeLatest"])(Actions["a"].visualization.save.request,saveVisualizationRequest);yield Object(effects_["takeLatest"])(Actions["a"].visualization.save.success,saveVisualizationSuccess);yield Object(effects_["takeLatest"])(Actions["a"].visualization.save.failure,saveVisualizationFailure);yield Object(effects_["takeLatest"])(Actions["a"].app.restoreVersion.request,restoreAppVersionRequest);yield Object(effects_["takeLatest"])(Actions["a"].app.restoreVersion.success,restoreAppVersionSuccess);yield Object(effects_["takeLatest"])(Actions["a"].app.restoreVersion.failure,restoreAppVersionFailure);yield Object(effects_["takeEvery"])(Actions["a"].layer.dragEnded,updateRow);yield Object(effects_["takeLatest"])(Actions["a"].layer.imageUploaded,updateRow);yield Object(effects_["takeLatest"])(Actions["a"].layer.imageTransformed,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowPlaced,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowChanged,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowUnplaced,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.fetchDataBrowserRows,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.dataBrowserSearch,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.paginateNext,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.paginatePrev,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowCreate.requested,createRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowDelete.requested,deleteRow);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowCreated,fetchDataBrowsersRows);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowDeleted,fetchDataBrowsersRows);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowDeleted,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].app.fetch.success,fetchDataBrowsersRows);yield Object(effects_["takeEvery"])(Actions["a"].rowset.rowSaved,fetchRow);yield takeLatestPerKey(Actions["a"].rowset.fetchDataRequested,fetchData,selectRowsetId);yield Object(effects_["takeEvery"])(Actions["a"].app.fetch.request,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].app.discardChanges.request,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].app.checkoutVersion.request,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].app.fetch.success,notifyPageView);yield Object(effects_["takeEvery"])(Actions["a"].app.delete.request,deleteAppSaga);yield Object(effects_["takeEvery"])(Actions["a"].app.save.request,updateAppNameSaga);yield Object(effects_["takeEvery"])(Actions["a"].auth.signedIn,notifyLogin);yield Object(effects_["takeEvery"])(Actions["a"].analytics.analyticsEvent,notifyEngagement);yield Object(effects_["debounce"])(100,Actions["a"].view.viewZooming,notifyViewZooming);yield Object(effects_["takeLatest"])(Actions["a"].view.viewDragEnd,notifyViewDragging);yield Object(effects_["takeEvery"])(Actions["a"].visualization.rowJumpRequested,notifyJump);yield Object(effects_["takeEvery"])(Actions["a"].visualization.jumpRequested,notifyJump);yield Object(effects_["all"])([Object(effects_["takeEvery"])("*",log)]);yield Object(effects_["all"])([Object(effects_["takeEvery"])("ERROR",logError)]);yield Object(effects_["takeEvery"])(Actions["a"].app.fetch.failure,logError);yield Object(effects_["takeEvery"])(Actions["a"].rowset.fetchData.failure,logError);yield Object(effects_["takeEvery"])(Actions["a"].root.genericError,logError);yield Object(effects_["takeEvery"])(Actions["a"].visualization.setInitialPosition,setCurrentPositionAsInitial);yield Object(effects_["takeLatest"])(Actions["a"].rowset.fetchData.success,createWorld)}var external_redux_persist_=__webpack_require__(116);const ZOOM_JUMP_SIZE=1;function ViewStateReducer_reducer(state,action){var _action$payload;if(state==null){return new view_state_ViewStates}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new view_state_ViewStates;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.viewStates||state;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.jumpViewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewDragEnd):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewZooming):return action.payload.viewStates||state;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewStateChanged):return state.withUpdatedViewState(action.payload.viewState);case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.zoomInRequested):return state.zoom(action.payload.visualizationId,ZOOM_JUMP_SIZE);case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.zoomOutRequested):return state.zoom(action.payload.visualizationId,-ZOOM_JUMP_SIZE);case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.levelChangeRequested):return state.updateZ(action.payload.visualizationId,action.payload.level);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.navigateToPosition):return state.transitionToPosition(action.payload.visualizationId,{coordinates:action.payload.coordinates,zoom:(_action$payload=action.payload)===null||_action$payload===void 0?void 0:_action$payload.zoom},action.payload.duration);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowPlaced):if(action.payload.row._z!==undefined){return state.updateZ(action.payload.visualizationId,action.payload.row._z)}return state;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if(action.payload.viewStates){return action.payload.viewStates}return state;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return state.resetPosition(action.payload.toVisualization.id);default:return state}}var ViewStateReducer=ViewStateReducer_reducer;class Tooltip{constructor(props){this.row=void 0;this.rowsetId=void 0;this.layerId=void 0;this.visible=void 0;this.coordinates=void 0;this.fixed=void 0;Object.assign(this,props);if(this.visible===undefined)this.visible=true}clone(){return new Tooltip(this)}getCoordinates(){return this.coordinates}isFixed(){return this.fixed}immutableSetFixed(){const cloned=this.clone();cloned.fixed=true;return cloned}immutableMoveCoordinates(deltas){const cloned=this.clone();cloned.coordinates.move(deltas.x,deltas.y,deltas.z);return cloned}immutableSetCoordinates(x,y){const cloned=this.clone();cloned.coordinates.x=x!==null&&x!==void 0?x:this.coordinates.x;cloned.coordinates.y=y!==null&&y!==void 0?y:this.coordinates.y;return cloned}immutableSetVisibility(visible){const cloned=this.clone();cloned.visible=visible;return cloned}}var TooltipModel=Tooltip;function TooltipReducer_reducer(state,action){var _action$payload$pixel,_action$payload$pixel2;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.clickOut):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appEditToggle):case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnplaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.click):return new TooltipModel({layerId:action.payload.layerId,row:action.payload.row,coordinates:action.payload.pixel,fixed:true,rowsetId:action.payload.rowsetId});case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.mouseHover):if(state!==null&&state!==void 0&&state.isFixed())return state;return new TooltipModel({layerId:action.payload.layerId,row:action.payload.row,coordinates:action.payload.pixel,fixed:false,rowsetId:action.payload.rowsetId});case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.mouseLeft):if(state&&state.isFixed())return state;return;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewDragEnd):if(!state)return;if(state&&action.payload.displacementDelta){return state.immutableMoveCoordinates(action.payload.displacementDelta).immutableSetVisibility(true)}return state.immutableSetVisibility(true);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragEnded):if(!state)return;return state.immutableSetCoordinates((_action$payload$pixel=action.payload.pixel)===null||_action$payload$pixel===void 0?void 0:_action$payload$pixel.x,(_action$payload$pixel2=action.payload.pixel)===null||_action$payload$pixel2===void 0?void 0:_action$payload$pixel2.y).immutableSetVisibility(true);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragStart):if(!state||state.layerId!==action.payload.layerId)return;return state.immutableSetVisibility(false);case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewDragStart):if(!state)return;return state.immutableSetVisibility(false);case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewZooming):return;default:return state}}var TooltipReducer=TooltipReducer_reducer;class RowsetStore_RowsetStore{constructor(){let rowsets=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};let status=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};this.rowsets={};this.status={};Object.assign(this.rowsets,rowsets);Object.assign(this.status,status)}add(rowset){if(!rowset)return;this.rowsets[rowset.getId()]=rowset;this.status[rowset.getId()]=RowsetStatus.NONE}immutableAdd(rowset){const clonedRowsetStore=this.clone();clonedRowsetStore.add(rowset);return clonedRowsetStore}invalidate(data){const rowsetsArray=new Rowsets_Rowsets(...Object.values(this.rowsets));for(const rowset of rowsetsArray.withData(data)){var _this$rowsets$rowset$;(_this$rowsets$rowset$=this.rowsets[rowset.getId()].fetchState)===null||_this$rowsets$rowset$===void 0?void 0:_this$rowsets$rowset$.invalidate()}}immutableInvalidate(data){const cloned=this.clone();cloned.invalidate(data);return cloned}invalidateAll(){for(const rowset of Object.values(this.rowsets)){var _this$rowsets$rowset$2;(_this$rowsets$rowset$2=this.rowsets[rowset.getId()].fetchState)===null||_this$rowsets$rowset$2===void 0?void 0:_this$rowsets$rowset$2.invalidate()}}immutableInvalidateAll(){const cloned=this.clone();cloned.invalidateAll();return cloned}getStatus(rowset){if(!(rowset!==null&&rowset!==void 0&&rowset.getId())||!this.status[rowset.getId()]){return RowsetStatus.NONE}else{return this.status[rowset.getId()]}}clone(){return new RowsetStore_RowsetStore(this.rowsets,this.status)}getRowsetsToFetchAgain(viewState,world){const rowsets=Object.values(this.rowsets).filter((rowset=>rowset.fetchState&&rowset.fetchState.shouldFetch(viewState,world)));return new Rowsets_Rowsets(...rowsets)}getRowsets(){return new Rowsets_Rowsets(...Object.values(this.rowsets))}getRowset(rowsetId){return this.rowsets[rowsetId]}getEmptyRowsets(){const rowsets=Object.values(this.rowsets).filter((rowset=>!rowset.rows));return new Rowsets_Rowsets(...rowsets)}getByTargetRowset(rowset){if(!rowset)return;return this.rowsets[rowset.getId()]}updateRow(rowsetId,row,rowDiff){const clonedRowsetStore=this.clone();if(!rowsetId)return clonedRowsetStore;const newRow=new dataset_src["f"]({...row,...rowDiff});clonedRowsetStore.rowsets[rowsetId].updateRow(newRow);return clonedRowsetStore}immutableSetStatusLoading(rowset){const cloned=this.clone();cloned.status[rowset.getId()]=RowsetStatus.LOADING;return cloned}someLoading(){return!Object(fp_["isEmpty"])(this.status)&&Object(fp_["some"])(Object(fp_["equals"])(RowsetStatus.LOADING),this.status)}noneFilled(){return Object(fp_["isEmpty"])(this.status)}immutableSetStatus(rowsets,status){const cloned=this.clone();rowsets.forEach((rowset=>{cloned.status[rowset.getId()]=status}));return cloned}everyWithError(){return!Object(fp_["isEmpty"])(this.status)&&Object(fp_["every"])(Object(fp_["equals"])(RowsetStatus.ERROR),this.status)}}const RowsetReducer_reducer=(rowsetStore,action)=>{if(!rowsetStore){return new RowsetStore_RowsetStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):return new RowsetStore_RowsetStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterToggle):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.sidebarFiltersClear):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowPlaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowSaved):case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowDeleted):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnplaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.navigateToPosition):case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.levelChangeRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingPositionChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.visibilityChanged):return rowsetStore.immutableInvalidateAll();case Object(external_typesafe_actions_["getType"])(Actions["a"].query.dataListUpdated):{const mutatedRowsetStore=rowsetStore.clone();for(const data of action.payload.dataList){mutatedRowsetStore.invalidate(data)}return mutatedRowsetStore}case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.fetchData.request):return rowsetStore.immutableSetStatusLoading(action.payload.rowset);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.fetchData.success):return rowsetStore.immutableAdd(action.payload.rowset);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageEditing):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageTransformed):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageUploaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragEnded):return rowsetStore.updateRow(action.payload.rowsetId,action.payload.row,action.payload.rowDiff);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.fetchData.failure):if(action.payload.rowset){return rowsetStore.immutableSetStatus(new Rowsets_Rowsets(action.payload.rowset),RowsetStatus.ERROR)}return rowsetStore;default:return rowsetStore}};var RowsetReducer=RowsetReducer_reducer;function createFilter(payload){return new CategoricalFilter_SimpleFilter({hidden:true,exactMatch:true,field:payload.targetField.name||payload.field.name,values:[payload.field.value],visualizationId:payload.toVisualization.id})}const FilterReducer_reducer=(filterState,action)=>{var _action$payload$excep,_action$payload$excep2,_action$payload$fromV;if(!filterState){return new domain_Filters}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new domain_Filters;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.sidebarFiltersClear):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterToggle):return action.payload.filters;case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterSearch):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterSearchFetched):return filterState.update(action.payload.filter);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return filterState.upsert(createFilter(action.payload));case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&!((_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError())){return action.payload.filters}return filterState;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):return filterState.withoutHiddenFromVisualizations((_action$payload$fromV=action.payload.fromVisualization)===null||_action$payload$fromV===void 0?void 0:_action$payload$fromV.id);default:return filterState}};var FilterReducer=FilterReducer_reducer;const LayerReducer_reducer=(layers,action,globalState)=>{var _action$payload$excep,_action$payload$excep2,_globalState$querySto2;if(!layers){return new Layers_Layers}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new Layers_Layers;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.layers.fillScaleTypes(action.payload.queries).fillRefZooms();case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.visibilityChanged):return layers.changeLayer(action.payload.id,{visible:action.payload.visible}).fillRefZooms();case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.queryChanged):{const data={query:action.payload.query.name,source:action.payload.query.dataSource};return layers.changeLayer(action.payload.id,{data})}case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.transformChanged):return layers.changeLayer(action.payload.id,{transform:action.payload.transform});case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.animationChanged):return layers.changeAnimation(action.payload.id,action.payload.params);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.createDraft.success):{var _globalState$querySto;return layers.upsertLayer(action.payload).fillScaleTypes((_globalState$querySto=globalState.queryStore)===null||_globalState$querySto===void 0?void 0:_globalState$querySto.queries)}case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&!((_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError())){return action.payload.layers}return layers;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.nameChanged):return layers.changeLayerName(action.payload.layerId,action.payload.name);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.move):return layers.moveLayer(action.payload.id,action.payload.steps);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.delete):return layers.deleteLayer(action.payload.id);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingChanged):return layers.changeEncoding(action.payload.id,action.payload.encoding,action.payload.type).fillScaleTypes((_globalState$querySto2=globalState.queryStore)===null||_globalState$querySto2===void 0?void 0:_globalState$querySto2.queries);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):return layers.updateLastModified();default:return layers}};const selectedLayerIdReducer=(layers,action)=>{switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.createDraft.success):return action.payload.id;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.select):return action.payload.id;default:return layers}};var LayerReducer=LayerReducer_reducer;var QueryStore=__webpack_require__(53);const QueryReducer_reducer=(queryStore,action)=>{var _action$payload$query;if(!queryStore){return new QueryStore["b"]}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new QueryStore["b"];case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return queryStore.setQueries(action.payload.queries);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if(action.payload.exception.type===AppApiErrorType.FETCHING_TABLE){return queryStore.setStatus(QueryStore["a"].tableFetchingError)}else if(action.payload.queries){return queryStore.setQueries(action.payload.queries)}return queryStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return(new QueryStore["b"]).setLoaders((_action$payload$query=action.payload.queryLoaders)!==null&&_action$payload$query!==void 0?_action$payload$query:[]);default:return queryStore}};var QueryReducer=QueryReducer_reducer;function VisualizationsReducer_reducer(visualizationsState,action){var _action$payload$excep,_action$payload$excep2;if(visualizationsState==null){return new visualization_Visualizations}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new visualization_Visualizations;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appPageLoaded):return visualizationsState.setSelected(action.payload.params.visualization);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return visualizationsState.set(action.payload.visualizations);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):return visualizationsState.setSelected(action.payload.toVisualization.id);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&!((_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError())){return visualizationsState.set(action.payload.visualizations)}return visualizationsState;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.setInitialPosition):return visualizationsState.setInitialPosition(action.payload);default:return visualizationsState}}var VisualizationsReducer=VisualizationsReducer_reducer;class JumpStore{constructor(params){var _params$navigationPat;this.enabled=void 0;this.data=void 0;this.navigationPath=void 0;this.enabled=params===null||params===void 0?void 0:params.enabled;this.data=params===null||params===void 0?void 0:params.data;this.navigationPath=(_params$navigationPat=params===null||params===void 0?void 0:params.navigationPath)!==null&&_params$navigationPat!==void 0?_params$navigationPat:[]}addToNavigationPath(vizId){const cloned=new JumpStore(this);if(vizId){cloned.navigationPath=[...cloned.navigationPath,vizId]}return cloned}removeLastNavigation(){const cloned=new JumpStore(this);cloned.navigationPath=cloned.navigationPath.slice(0,-1);return cloned}previousVisualization(){if(!this.navigationPath.length)return;return this.navigationPath[this.navigationPath.length-1]}}var state_JumpStore=JumpStore;const JumpReducer_reducer=(jumpState,action)=>{var _action$payload$fromV;if(!jumpState){return new state_JumpStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new state_JumpStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):return new state_JumpStore({...jumpState,enabled:false,data:null});case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return new state_JumpStore({...jumpState,enabled:false}).addToNavigationPath((_action$payload$fromV=action.payload.fromVisualization)===null||_action$payload$fromV===void 0?void 0:_action$payload$fromV.id);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):return new state_JumpStore({...jumpState,enabled:false}).removeLastNavigation();default:return jumpState}};var JumpReducer=JumpReducer_reducer;const DataBrowserReducer_reducer=(state,action)=>{var _state$getByData,_state$getByData2;if(!state){return new data_browser_DataBrowsers}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new data_browser_DataBrowsers;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.dataBrowsers;case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.dataBrowserRowsFetched):return state.immutableSetRows(action.payload.dataBrowserId,action.payload.rows,action.payload.offset,action.payload.lastPage);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.fetchDataBrowserRows):return state.immutableSetStatus(action.payload.dataBrowser.getId(),DataBrowserRowsetStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowSelected):return state.immutableSetSelectedRow(action.payload.dataBrowserId,action.payload.row);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnselected):return state.immutableSetSelectedRow(action.payload.dataBrowserId,undefined);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowCreated):case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowFetched):return state.immutableSetSelectedRow((_state$getByData=state.getByData(action.payload.data))===null||_state$getByData===void 0?void 0:_state$getByData.getId(),action.payload.row);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowDeleted):return state.immutableSetSelectedRow((_state$getByData2=state.getByData(action.payload.data))===null||_state$getByData2===void 0?void 0:_state$getByData2.getId());case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.dataBrowserSearch):return state.immutableSetSearch(action.payload.dataBrowser.getId(),action.payload.dataBrowser.search);default:return state}};var DataBrowserReducer=DataBrowserReducer_reducer;class Authorization{constructor(params){var _params$signOut,_params$changeTenant;this.accessToken=void 0;this.tenants=void 0;this.tenant=void 0;this.permissions=void 0;this.email=void 0;this.signOut=void 0;this.changeTenant=void 0;this.accessToken=params.accessToken;this.tenant=params.tenant;this.tenants=params.tenants;this.email=params.email;this.permissions=params.permissions;this.signOut=(_params$signOut=params.signOut)!==null&&_params$signOut!==void 0?_params$signOut:()=>undefined;this.changeTenant=(_params$changeTenant=params.changeTenant)!==null&&_params$changeTenant!==void 0?_params$changeTenant:()=>undefined}static createEmpty(){return new Authorization({accessToken:"",tenant:"",tenants:[],email:"",permissions:[],signOut:()=>undefined,changeTenant:()=>undefined})}canEditApp(){return this.permissions.includes("app:write")}canEditRow(){return this.permissions.includes("row:write")}canListApps(){return this.permissions.includes("app:list")}containsTenant(tenant){var _this$tenants;return!!((_this$tenants=this.tenants)!==null&&_this$tenants!==void 0&&_this$tenants.length)&&this.tenants.includes(tenant)}static fromM2mToken(params){return new Authorization({accessToken:params.accessToken,tenant:params.tenant,permissions:params.permissions,tenants:params.tenants,email:"",signOut:()=>undefined,changeTenant:()=>undefined})}}const AuthReducer_reducer=(state,action)=>{if(!state){return Authorization.createEmpty()}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].auth.signedIn):return new Authorization(action.payload);case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return Authorization.fromM2mToken({accessToken:action.payload.accessToken,tenant:action.payload.tenant,tenants:action.payload.tenants,permissions:action.payload.permissions});default:return state}};var AuthReducer=AuthReducer_reducer;const LegendReducer_reducer=(legendState,action)=>{if(!legendState){return new Legends}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new Legends;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.legends;default:return legendState}};var LegendReducer=LegendReducer_reducer;const AxesReducer_reducer=(state,action)=>{if(!state){return new AxesList}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new AxesList;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.axesList;default:return state}};var AxesReducer=AxesReducer_reducer;var AppStore=__webpack_require__(33);const appReducer=(state,action)=>{var _action$payload$excep,_action$payload$excep2;if(!state)return new AppStore["b"];switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new AppStore["b"](undefined,undefined,undefined);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.checkoutVersion.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.discardChanges.request):return state.setStatus(AppStore["a"].loading);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return state.updateApp(action.payload.app,action.payload.history).setVersion(action.payload.version);case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new AppStore["b"](new App_App({id:action.payload.appId}));case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appPageLoaded):return state.updateApp(new App_App({id:action.payload.params.appId}));case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appEditToggle):return state.setEditing(action.payload.isEditing);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&(_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError()){return state.setStatus(AppStore["a"].fetchingError)}else if(action.payload.app){return state.updateApp(action.payload.app)}return state;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.request):return state.setStatus(AppStore["a"].deleting);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.save.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.save.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].template.createApp.request):return state.setStatus(AppStore["a"].saving);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.save.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.save.failure):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.failure):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.save.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.save.failure):return state.setStatus(AppStore["a"].updated);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.restoreVersion.request):return state.setStatus(AppStore["a"].restoringVersion);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.visibilityChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.animationChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.queryChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.transformChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingPositionChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.nameChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.delete):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.move):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.createDraft.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.setInitialPosition):return state.setStatus(AppStore["a"].dirty);default:return state}};const SchemaReducer_reducer=(schema,action)=>{if(!schema){return{}}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return{};case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.schema;default:return schema}};var SchemaReducer=SchemaReducer_reducer;const viewControllerReducer=(state,action)=>{if(!state)return new ViewControllers_ViewControllers;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new ViewControllers_ViewControllers;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):return action.payload.viewControllers;case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.bearingModeToggle):return state.immutableToggleDragMode(action.payload.visualizationId);default:return state}};const encodingScopeReducer=(state,action)=>{if(!state){return encoding_src["c"]}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return encoding_src["c"];case Object(external_typesafe_actions_["getType"])(Actions["a"].encodingScope.changed):return action.payload.scope;default:return state}};let TemplateStoreStatus;(function(TemplateStoreStatus){TemplateStoreStatus["NONE"]="NONE";TemplateStoreStatus["LOADING"]="LOADING";TemplateStoreStatus["UPDATED"]="UPDATED";TemplateStoreStatus["ERROR"]="ERROR"})(TemplateStoreStatus||(TemplateStoreStatus={}));class TemplateStore{constructor(){let templates=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];let status=arguments.length>1?arguments[1]:undefined;this.templates=void 0;this.status=void 0;this.templates=templates;this.status=status!==null&&status!==void 0?status:TemplateStoreStatus.NONE}clone(){return new TemplateStore(this.templates,this.status)}immutableSetStatus(value){const cloned=this.clone();cloned.status=value;return cloned}isLoading(){return this.status===TemplateStoreStatus.LOADING}}const templateReducer=(state,action)=>{if(!state){return new TemplateStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].template.fetchTemplates.request):return state.immutableSetStatus(TemplateStoreStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].template.fetchTemplates.success):return new TemplateStore(action.payload.templates,TemplateStoreStatus.UPDATED);case Object(external_typesafe_actions_["getType"])(Actions["a"].template.fetchTemplates.failure):return new TemplateStore([],TemplateStoreStatus.ERROR);default:return state}};class ViewLayerStore{constructor(selectedRow){this.selectedRow=void 0;this.selectedRow=selectedRow}clone(){return new ViewLayerStore(this.selectedRow)}immutableSetSelectedRow(layerId,rowsetId,updatingRow){const cloned=this.clone();cloned.selectedRow={layerId,rowsetId,updatingRow};return cloned}immutableRemoveSelectedRow(){const cloned=this.clone();cloned.selectedRow=undefined;return cloned}}function viewLayerReducer(state,action){if(!state){return new ViewLayerStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new ViewLayerStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.clickOut):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnplaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragEnded):return state.immutableRemoveSelectedRow();case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.click):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragStart):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageUploaded):return state.immutableSetSelectedRow(action.payload.layerId,action.payload.rowsetId,{...action.payload.row,...action.payload.rowDiff});default:return state}}let AppHistoryStatus;(function(AppHistoryStatus){AppHistoryStatus["IDLE"]="IDLE";AppHistoryStatus["LOADING"]="LOADING"})(AppHistoryStatus||(AppHistoryStatus={}));class AppHistory_AppHistory extends Array{clone(){return new AppHistory_AppHistory(...Object(fp_["clone"])(this))}constructor(){super(...arguments);this.status=void 0;this.status=AppHistoryStatus.IDLE}immutableSetStatus(status){const cloned=this.clone();cloned.status=status;return cloned}}const appHistoryReducer=(state,action)=>{if(!state)return new AppHistory_AppHistory(...[]);switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.request):return state.immutableSetStatus(AppHistoryStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return new AppHistory_AppHistory(...action.payload.history);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):return state.immutableSetStatus(AppHistoryStatus.IDLE);default:return state}};class ProjectorStore_ProjectorStore{constructor(){this.projectors=void 0}clone(){const cloned=new ProjectorStore_ProjectorStore;cloned.projectors=this.projectors;return cloned}getFromVisualization(visualizationId){if(!visualizationId)return;return this.projectors&&this.projectors[visualizationId]}immutableSet(projector,visualizationId){const cloned=this.clone();cloned.projectors[visualizationId]=projector;return cloned}setProjectorFromWorld(world){if(!world)return;const unifiedScaleDomains=world.getMaximizedScaleDomains();const worldBox=world===null||world===void 0?void 0:world.box();if(!worldBox||!unifiedScaleDomains)return;const projector=new projector_src["b"](unifiedScaleDomains,worldBox);this.projectors={...this.projectors,[world.visualizationId]:projector}}immutableClearFromVisualization(visualizationId){const cloned=this.clone();if(cloned.projectors[visualizationId])delete cloned.projectors[visualizationId];return cloned}immutableUpdateWorld(world){const cloned=this.clone();if(!world)return cloned;cloned.setProjectorFromWorld(world);return cloned}}function projectorReducer(state,action){if(!state)return new ProjectorStore_ProjectorStore;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new ProjectorStore_ProjectorStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.jumpViewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].world.worldCreated):return state.immutableUpdateWorld(action.payload.world);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return state.immutableClearFromVisualization(action.payload.toVisualization.id);default:return state}}const appsReducer=(state,action)=>{if(!state)return new state_AppsStore;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return(new state_AppsStore).immutableSetStatus(AppsStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.fetchApps.success):return action.payload.appsStore.immutableSetStatus(AppsStatus.UPDATED);case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.fetchApps.failure):return(new state_AppsStore).immutableSetStatus(AppsStatus.ERROR);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.success):return state.immutableRemoveApp(action.payload.appId);default:return state}};const worldReducer=(state,action)=>{var _action$payload$world;if(!state){return new Worlds}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new Worlds;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):return(_action$payload$world=action.payload.worlds)!==null&&_action$payload$world!==void 0?_action$payload$world:state;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewResized):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.jumpViewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].world.worldCreated):return action.payload.world?state.immutableUpdateWorld(action.payload.world):state;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return state.immutableResetWorldFromVisualization(action.payload.toVisualization.id);default:return state}};const getEnhancer=sagaMiddleware=>{if(internals_src["a"].isDebugging()&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__){return Object(external_redux_["compose"])(Object(external_redux_["applyMiddleware"])(sagaMiddleware),window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__())}return Object(external_redux_["applyMiddleware"])(sagaMiddleware)};function getStore(){const childReducers={visualizations:VisualizationsReducer,tooltip:TooltipReducer,rowsetStore:RowsetReducer,filters:FilterReducer,layers:LayerReducer,selectedLayerId:selectedLayerIdReducer,queryStore:QueryReducer,jump:JumpReducer,dataBrowsers:DataBrowserReducer,authorization:AuthReducer,legends:LegendReducer,viewStates:ViewStateReducer,appStore:appReducer,appsStore:appsReducer,appHistory:appHistoryReducer,schema:SchemaReducer,axesList:AxesReducer,viewControllers:viewControllerReducer,templates:templateReducer,encodingScope:encodingScopeReducer,viewLayers:viewLayerReducer,projectorStore:projectorReducer,worlds:worldReducer};const sagaMiddleware=external_redux_saga_default()();const enhancer=getEnhancer(sagaMiddleware);const store=Object(external_redux_["createStore"])(reducer(childReducers),enhancer);Object(external_redux_persist_["persistStore"])(store);sagaMiddleware.run(appSaga);UpdateWatcher_UpdateWatcher.configure(store.dispatch);return store}const StoreContext=external_react_default.a.createContext(null);var Store=__webpack_exports__["b"]=getStore},function(module,exports){module.exports=require("@mui/icons-material")},function(module,exports){module.exports=require("react-redux")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return CARTESIAN_VIEW_PADDING}));__webpack_require__.d(__webpack_exports__,"a",(function(){return AXES_PADDING}));const CARTESIAN_VIEW_PADDING=50;const AXES_PADDING=25},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return SizeEncoding}));var lodash_fp__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_0__);var d3__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(22);var d3__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(d3__WEBPACK_IMPORTED_MODULE_1__);const pixelToCommon=(pixel,zoom)=>pixel/Math.pow(2,zoom);const commonToPixel=(commonSize,zoom)=>commonSize*Math.pow(2,zoom);class SizeEncoding{constructor(props){this.field=void 0;this.value=void 0;this.scale=void 0;this.animation=void 0;this.createdTimestamp=void 0;this.resize=void 0;Object.assign(this,props);this.createdTimestamp=new Date}getUnits(){if(this.isCommon())return"common";return"pixels"}getRange(columnDomain,range){if(!range)return[];const rangeValues=[range[0],range[1]];if(!rangeValues)return[];if(columnDomain.length===rangeValues.length)return rangeValues;const stepsArray=Array.from({length:columnDomain.length},((_,i)=>i+1));const scale=d3__WEBPACK_IMPORTED_MODULE_1__["scaleLinear"]().domain([stepsArray[0],stepsArray[stepsArray.length-1]]).range([rangeValues[0],rangeValues[rangeValues.length-1]]);return stepsArray.map((step=>{var _scale;return(_scale=scale(step))!==null&&_scale!==void 0?_scale:step}))}getScaleValue(value,columnDomain,range){const discreteRange=this.getRange(columnDomain,range);return d3__WEBPACK_IMPORTED_MODULE_1__["scaleQuantile"]().domain(columnDomain).range(discreteRange)(value)}getSize(columnValue,columnDomain){let value=columnValue;if(Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(columnValue)&&columnDomain&&this.scale){value=this.getScaleValue(columnValue,columnDomain,this.scale.range)}if(!Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(value)&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(this.value)){value=this.value}if(!value){value=0}if(this.isCommon()){var _this$resize;return pixelToCommon(value,(_this$resize=this.resize)===null||_this$resize===void 0?void 0:_this$resize.referenceZoom)}return value}hasField(){return!!this.field}getField(){return this.field}setField(fieldName){this.field=fieldName}isCommon(){var _this$resize2;return typeof((_this$resize2=this.resize)===null||_this$resize2===void 0?void 0:_this$resize2.referenceZoom)==="number"}isPixels(){return!this.isCommon()}getMinPixels(){var _this$resize3;let factor=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;if(this.isCommon()&&(_this$resize3=this.resize)!==null&&_this$resize3!==void 0&&_this$resize3.referenceZoom){return commonToPixel(this.getSize(),this.resize.referenceZoom)*factor}}getMaxPixels(){var _this$resize4;let factor=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;if(this.isCommon()&&(_this$resize4=this.resize)!==null&&_this$resize4!==void 0&&_this$resize4.maxZoom){return commonToPixel(this.getSize(),this.resize.maxZoom)*factor}}isRenderable(){return!!(this.field&&this.scale)||Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(this.value)}isEnabled(){return this.isRenderable()}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return AppStatus}));let AppStatus;(function(AppStatus){AppStatus["idle"]="idle";AppStatus["loading"]="loading";AppStatus["dirty"]="dirty";AppStatus["updated"]="updated";AppStatus["fetchingError"]="fetchingError";AppStatus["deleting"]="deleting";AppStatus["saving"]="saving";AppStatus["viewingVersion"]="viewingVersion";AppStatus["restoringVersion"]="restoringVersion"})(AppStatus||(AppStatus={}));class AppStore{constructor(app,status,history,editing,version){this.app=void 0;this.history=void 0;this.status=void 0;this.isEditing=void 0;this.version=void 0;this.app=app;this.status=status!==null&&status!==void 0?status:AppStatus.idle;this.isEditing=editing!==null&&editing!==void 0?editing:false;this.history=history!==null&&history!==void 0?history:[];this.version=version}updateApp(app,history){return new AppStore(app,AppStatus.updated,history!==null&&history!==void 0?history:this.history,this.isEditing,this.version)}setStatus(status){return new AppStore(this.app,status,this.history,this.isEditing,this.version)}setEditing(editing){return new AppStore(this.app,this.status,this.history,editing,this.version)}setVersion(version){return new AppStore(this.app,version?AppStatus.viewingVersion:this.status,this.history,this.isEditing,version)}isAppReady(){return!!(this.app&&[AppStatus.updated,AppStatus.dirty,AppStatus.viewingVersion].includes(this.status))}}__webpack_exports__["b"]=AppStore},function(module,exports){module.exports=require("@deck.gl/core")},function(module,exports){module.exports=require("nebula.gl")},function(module,exports,__webpack_require__){module.exports={transitionBlock:"SidebarTransition_transitionBlock__2ONFT",enter:"SidebarTransition_enter__3P9py",enterInvert:"SidebarTransition_enterInvert__3lsEA",enterActive:"SidebarTransition_enterActive__2zE_e",enterDone:"SidebarTransition_enterDone__2Nyek",exit:"SidebarTransition_exit__1NquM",exitActive:"SidebarTransition_exitActive__kjse3",exitActiveInvert:"SidebarTransition_exitActiveInvert__5-Ogx"}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return ScaleType}));__webpack_require__.d(__webpack_exports__,"a",(function(){return DEFAULT_SCALE_TYPE}));__webpack_require__.d(__webpack_exports__,"c",(function(){return getColumnScaleType}));var _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(6);let ScaleType;(function(ScaleType){ScaleType["LINEAR"]="linear";ScaleType["SQUARE"]="sqrt";ScaleType["TIME"]="utc";ScaleType["ORDINAL"]="ordinal"})(ScaleType||(ScaleType={}));const DEFAULT_SCALE_TYPE=ScaleType.LINEAR;const getColumnScaleType=column=>{if(!column)return DEFAULT_SCALE_TYPE;switch(column.getType()){case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].STRING:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].JSON:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].STRING_ARRAY:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].GEOMETRY:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].BOOLEAN:return ScaleType.ORDINAL;case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].DATETIME:return ScaleType.TIME;default:return DEFAULT_SCALE_TYPE}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ZoomRange}));class ZoomRange{constructor(props){this.min=void 0;this.max=void 0;Object.assign(this,props)}hasValues(){var _this$min,_this$min$fixed,_this$max,_this$max$fixed;return((_this$min=this.min)===null||_this$min===void 0?void 0:(_this$min$fixed=_this$min.fixed)===null||_this$min$fixed===void 0?void 0:_this$min$fixed.value)!==undefined||((_this$max=this.max)===null||_this$max===void 0?void 0:(_this$max$fixed=_this$max.fixed)===null||_this$max$fixed===void 0?void 0:_this$max$fixed.value)!==undefined}getMin(){var _this$min2,_this$min2$fixed;if(((_this$min2=this.min)===null||_this$min2===void 0?void 0:(_this$min2$fixed=_this$min2.fixed)===null||_this$min2$fixed===void 0?void 0:_this$min2$fixed.value)===undefined)return 0;return this.min.fixed.value}getMax(){var _this$max2,_this$max2$fixed;if(((_this$max2=this.max)===null||_this$max2===void 0?void 0:(_this$max2$fixed=_this$max2.fixed)===null||_this$max2$fixed===void 0?void 0:_this$max2$fixed.value)===undefined)return Number.MAX_SAFE_INTEGER;return this.max.fixed.value}getInterval(){return this.getMax()-this.getMin()}getCount(){return this.getMax()-this.getMin()+1}multiply(multiplier){const intervalDelta=this.getInterval()*multiplier-this.getInterval();return new ZoomRange({min:{...this.min,fixed:{value:this.getMin()-intervalDelta/2}},max:{...this.max,fixed:{value:this.getMax()+intervalDelta/2}}})}isInRange(value){if(value===undefined)return false;return value>=this.getMin()&&value<this.getMax()}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return WorldType}));__webpack_require__.d(__webpack_exports__,"a",(function(){return World}));var lodash_fp__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_0__);var _hopara_encoding__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(10);var _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(8);let WorldType;(function(WorldType){WorldType["GEO"]="GEO";WorldType["CARTESIAN"]="CARTESIAN";WorldType["CUSTOM"]="CUSTOM"})(WorldType||(WorldType={}));let WorldStatus;(function(WorldStatus){WorldStatus["NONE"]="NONE";WorldStatus["UPDATING"]="UPDATING";WorldStatus["UPDATED"]="UPDATED"})(WorldStatus||(WorldStatus={}));const SAFE_WORLD_BOX=new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["b"]({x:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:-180,max:180}),y:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:-80,max:80})});const SAFE_WORLD_SCALE_DOMAINS={x:{[_hopara_encoding__WEBPACK_IMPORTED_MODULE_1__["i"].LINEAR]:{domainMin:SAFE_WORLD_BOX.x.getMin(),domainMax:SAFE_WORLD_BOX.x.getMax()}},y:{[_hopara_encoding__WEBPACK_IMPORTED_MODULE_1__["i"].LINEAR]:{domainMin:SAFE_WORLD_BOX.y.getMin(),domainMax:SAFE_WORLD_BOX.y.getMax()}},z:{[_hopara_encoding__WEBPACK_IMPORTED_MODULE_1__["i"].LINEAR]:{domainMin:0,domainMax:50}}};class World{constructor(partialWorld){this.type=void 0;this.visualizationId=void 0;this.scaleDomains=void 0;this.dimensions=void 0;this.sizeRatio=void 0;this.status=void 0;this.initialDimensions=void 0;Object.assign(this,partialWorld);if(!this.status)this.status=WorldStatus.NONE;if(!this.sizeRatio)this.sizeRatio={width:1,height:1};if(!this.initialDimensions)this.initialDimensions=this.dimensions;if(this.isCustom()&&!this.initialDimensions){this.initialDimensions={height:Number.MAX_SAFE_INTEGER,width:Number.MAX_SAFE_INTEGER}}if(this.isGeo()){this.scaleDomains=SAFE_WORLD_SCALE_DOMAINS;this.status=WorldStatus.UPDATED}}clone(){return new World(this)}isGeo(){return this.type===WorldType.GEO}isCartesian(){return this.type===WorldType.CARTESIAN}isCustom(){return this.type===WorldType.CUSTOM}box(){if(!this.initialDimensions)return;const width=this.initialDimensions.width*this.sizeRatio.width;const height=this.initialDimensions.height*this.sizeRatio.height;return new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["b"]({x:this.isGeo()?SAFE_WORLD_BOX.x:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:0,max:width}),y:this.isGeo()?SAFE_WORLD_BOX.y:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:0,max:height}),z:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:0,max:50})})}getScaleDomains(){return this.scaleDomains}getMaximizedScaleDomains(){if(!this.scaleDomains)return;if(!this.isCartesian())return this.scaleDomains;return Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["mapValues"])((axisScaleDomains=>Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["mapValues"])((_ref=>{let{domainMin,domainMax}=_ref;const domainDiff=Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(domainMax)&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(domainMin)?domainMax-domainMin:undefined;const maximazedValue=domainDiff?(domainMax!==null&&domainMax!==void 0?domainMax:1)+.05*domainDiff:undefined;return{domainMin,domainMax:maximazedValue}}),axisScaleDomains)),this.scaleDomains)}setScaleDomains(scaleDomains){const cloned=this.clone();cloned.scaleDomains=scaleDomains;cloned.status=WorldStatus.UPDATED;return cloned}getWorldPadding(){if(this.isCartesian())return 100;return 0}getDimensions(){if(!this.dimensions&&!this.initialDimensions)return;if(!this.dimensions||!this.dimensions.width)this.dimensions=this.initialDimensions;return{width:this.dimensions.width,height:this.dimensions.height}}withDimensions(dimensions){const cloned=this.clone();cloned.dimensions=dimensions;return cloned}withInitialDimensions(dimensions){const cloned=this.clone();if(this.isCustom()){cloned.initialDimensions=this.initialDimensions;cloned.dimensions=this.initialDimensions}else{const calculatedDimensions={width:dimensions.width-this.getWorldPadding(),height:dimensions.height-this.getWorldPadding()};cloned.initialDimensions=calculatedDimensions;cloned.dimensions=calculatedDimensions}return cloned}hasInitialDimentions(){return!!this.initialDimensions}getInitialDimentions(){return this.initialDimensions}isReady(){return this.status===WorldStatus.UPDATED&&!!this.scaleDomains}setReady(){const cloned=this.clone();cloned.status=WorldStatus.UPDATED;return cloned}}},function(module,__webpack_exports__,__webpack_require__){"use strict";function _initializerWarningHelper(descriptor,context){throw new Error("Decorating class property failed. Please ensure that "+"proposal-class-properties is enabled and runs after the decorators transform.")}},function(module,exports,__webpack_require__){module.exports={transitionBlock:"ViewTransition_transitionBlock__3-hy8",enter:"ViewTransition_enter__1qfMc",enterActive:"ViewTransition_enterActive__3-7mt",enterDone:"ViewTransition_enterDone__1pAFe",exit:"ViewTransition_exit__3gsBJ",exitActive:"ViewTransition_exitActive__3ephY"}},function(module,exports){module.exports=require("@turf/centroid")},function(module,exports){module.exports=require("query-string")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ZoomBehaviorType}));var _opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(13);var _opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(11);var _opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerWarningHelper_js__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(40);var class_transformer__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(7);var class_transformer__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(class_transformer__WEBPACK_IMPORTED_MODULE_3__);var _hopara_spatial__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(8);var _world_World__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(39);var _layer_ZoomRange__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(38);var _dec,_dec2,_dec3,_dec4,_dec5,_dec6,_dec7,_dec8,_dec9,_dec10,_class,_descriptor,_descriptor2,_descriptor3,_descriptor4,_descriptor5,_descriptor6,_descriptor7,_descriptor8;let ZoomBehaviorType;(function(ZoomBehaviorType){ZoomBehaviorType["FIXED"]="FIXED";ZoomBehaviorType["SCALE"]="SCALE"})(ZoomBehaviorType||(ZoomBehaviorType={}));let Visualization=(_dec=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec2=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Transform"])((_ref=>{let{value}=_ref;return value==="VEGA"?"CARTESIAN":value})),_dec3=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec4=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec5=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec6=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec7=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Transform"])((_ref2=>{let{value}=_ref2;return new _layer_ZoomRange__WEBPACK_IMPORTED_MODULE_6__["a"](value)})),_dec8=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec9=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec10=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_class=class Visualization{constructor(props){Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"id",_descriptor,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"type",_descriptor2,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"name",_descriptor3,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"initialPosition",_descriptor4,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"mapStyle",_descriptor5,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"zoomRange",_descriptor6,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"zoomBehavior",_descriptor7,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"sizeRatio",_descriptor8,this);Object.assign(this,props)}getMapStyle(){if(!this.isGeo)return;return this.mapStyle}getInitialCoordinates(){return new _hopara_spatial__WEBPACK_IMPORTED_MODULE_4__["c"](this.initialPosition)}getSizeRatio(){if(!this.sizeRatio)return{width:1,height:1};return this.sizeRatio}getInitialZoom(){return this.initialPosition&&this.initialPosition.zoom||0}getInitialBearing(){return this.initialPosition&&this.initialPosition.bearing||0}setInitialPosition(coordinates,zoom,bearing){this.initialPosition={x:coordinates.x,y:coordinates.y,z:coordinates.z,zoom,bearing};if(this.isGeo()){this.initialPosition.longitude=coordinates.x;this.initialPosition.latitude=coordinates.y}}isGeo(){return this.type===_world_World__WEBPACK_IMPORTED_MODULE_5__["b"].GEO}isCartesian(){return this.type===_world_World__WEBPACK_IMPORTED_MODULE_5__["b"].CARTESIAN}isCustom(){return this.type===_world_World__WEBPACK_IMPORTED_MODULE_5__["b"].CUSTOM}getName(){var _this$name;return(_this$name=this.name)!==null&&_this$name!==void 0?_this$name:`Visualization ${this.id}`}},_descriptor=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"id",[_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"type",[_dec2,_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor3=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"name",[_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor4=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"initialPosition",[_dec5],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor5=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"mapStyle",[_dec6],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor6=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"zoomRange",[_dec7,_dec8],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor7=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"zoomBehavior",[_dec9],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor8=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"sizeRatio",[_dec10],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);__webpack_exports__["b"]=Visualization},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ColorScaleType}));let ColorScaleType;(function(ColorScaleType){ColorScaleType["QUANTILE"]="quantile";ColorScaleType["QUANTIZE"]="quantize";ColorScaleType["ORDINAL"]="ordinal"})(ColorScaleType||(ColorScaleType={}))},function(module,exports){module.exports=require("react-toastify")},function(module,exports){module.exports=require("reflect-metadata")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return actions}));var _hopara_spatial__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(8);var lodash_fp__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_1__);var _view_state_ViewState__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(62);var _state_Actions__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(1);var typesafe_actions__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(2);var typesafe_actions__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__);const viewActions=dispatch=>(viewStates,worlds,visualizations,hasSelectedRow,tooltipEnabled)=>({onViewLoad:(dimensions,deckViewState)=>{var _worlds$getFromVisual;const currentVisualization=visualizations.getCurrent();const currentWorld=worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);if(!currentVisualization||!currentWorld)return;const previousViewState=viewStates.getFromVisualization(currentVisualization.id);const coordinates=Object(_view_state_ViewState__WEBPACK_IMPORTED_MODULE_2__["b"])(previousViewState.coordinates,visualizations.getCurrent(),dimensions);const viewState=previousViewState.withDeckViewState(currentWorld,deckViewState).withInitialCoordinates(new _hopara_spatial__WEBPACK_IMPORTED_MODULE_0__["c"]({x:dimensions.width/2,y:dimensions.height/2})).withCoordinates(coordinates);const world=(_worlds$getFromVisual=worlds.getFromVisualization(currentVisualization.id))===null||_worlds$getFromVisual===void 0?void 0:_worlds$getFromVisual.withInitialDimensions(dimensions);if(visualizations.getCurrentIndex()>0){dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.jumpViewLoaded({visualizationId:currentVisualization.id,viewStates:viewStates.withUpdatedViewState(viewState),world}))}else{dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewLoaded({visualizationId:currentVisualization.id,viewStates:viewStates.withUpdatedViewState(viewState),world}))}},onViewZooming:event=>{var _event$viewState,_event$oldViewState;const currentVisualization=visualizations.getCurrent();const currentWorld=worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);if(!currentVisualization||!currentWorld)return;const viewState=viewStates.getFromVisualization(currentVisualization.id).withDeckViewState(currentWorld,event.viewState);dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewZooming({direction:((_event$viewState=event.viewState)===null||_event$viewState===void 0?void 0:_event$viewState.zoom)>((_event$oldViewState=event.oldViewState)===null||_event$oldViewState===void 0?void 0:_event$oldViewState.zoom)?"IN":"OUT",viewStates:viewStates.withUpdatedViewState(viewState)}))},onViewResize:_ref=>{let{width,height}=_ref;const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;const currentWorld=worlds.getFromVisualization(currentVisualization.id);if(!currentWorld||Object(lodash_fp__WEBPACK_IMPORTED_MODULE_1__["isEqual"])(currentWorld===null||currentWorld===void 0?void 0:currentWorld.getDimensions(),{width,height})||!(currentWorld!==null&&currentWorld!==void 0&&currentWorld.type))return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewResized({world:currentWorld.withDimensions({width,height})}))},onViewHover:info=>{if(info.object||!hasSelectedRow&&!tooltipEnabled)return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].layer.mouseLeft())},onViewClick:info=>{if(info.object||!hasSelectedRow&&!tooltipEnabled)return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].layer.clickOut())},onViewDragStart:info=>{if(!info)return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewDragStart({}))},onViewDragEnd:(info,deckViewState)=>{if(!info)return;const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;const currentViewState=viewStates.getFromVisualization(currentVisualization.id);const currentWorld=worlds.getFromVisualization(currentVisualization.id);if(!currentViewState||!currentWorld)return;const updatedViewState=currentViewState.withDeckViewState(currentWorld,deckViewState);const oldProjectedCoordinates=updatedViewState.projectCoordinate(currentWorld,[currentViewState.coordinates.x,currentViewState.coordinates.y]);const nextProjectedCoordinates=updatedViewState.projectCoordinate(currentWorld,[updatedViewState.coordinates.x,updatedViewState.coordinates.y]);const displacementDelta={x:oldProjectedCoordinates[0]-nextProjectedCoordinates[0],y:oldProjectedCoordinates[1]-nextProjectedCoordinates[1]};return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewDragEnd({viewStates:viewStates.withUpdatedViewState(updatedViewState),displacementDelta}))}});__webpack_exports__["b"]=viewActions;const actions={viewLoaded:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_LOADED")(),jumpViewLoaded:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("JUMP_VIEW_LOADED")(),viewStateChanged:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_STATE_CHANGED")(),viewResized:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_RESIZED")(),viewZooming:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_ZOOMING")(),viewDragStart:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_DRAG_START")(),viewDragEnd:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_DRAG_END")()}},function(module,exports){module.exports=require("js-sentencecase")},function(module,exports){module.exports=require("case")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return Projector_Projector}));__webpack_require__.d(__webpack_exports__,"a",(function(){return BoxProjector_BoxProjector}));__webpack_require__.d(__webpack_exports__,"c",(function(){return RowProjector_RowProjector}));var src=__webpack_require__(10);class Projector_Projector{constructor(scaleDomains,worldBox){this.scales=void 0;this.scales={x:this.createScales(scaleDomains.x,worldBox.x),y:this.createScales(scaleDomains.y,worldBox.y),z:scaleDomains.z&&worldBox.z?this.createScales(scaleDomains.z,worldBox.z):undefined}}createScales(scaleDomains,range){return Object.keys(scaleDomains).reduce(((scales,scaleType)=>({...scales,[scaleType]:Object(src["k"])(scaleType).range(range.toPlain()).domain([scaleDomains[scaleType].domainMin,scaleDomains[scaleType].domainMax])})),{})}hasAllScalesSetted(xScaleType,yScaleType){const hasX=!!this.scales.x[xScaleType];const hasY=!!this.scales.y[yScaleType];return hasX&&hasY}projectX(value,scaleType){var _this$scales$x$scaleT;const scale=(_this$scales$x$scaleT=this.scales.x[scaleType])!==null&&_this$scales$x$scaleT!==void 0?_this$scales$x$scaleT:this.scales.x[Object.keys(this.scales.x)[0]];if(!scale)return undefined;return scale(value)}projectY(value,scaleType){var _this$scales$y$scaleT;const scale=(_this$scales$y$scaleT=this.scales.y[scaleType])!==null&&_this$scales$y$scaleT!==void 0?_this$scales$y$scaleT:this.scales.y[Object.keys(this.scales.y)[0]];if(!scale)return undefined;return scale(value)}projectZ(value){return value}project(point,xScaleType,yScaleType){if(!this.hasAllScalesSetted(xScaleType,yScaleType))return;const p=[this.projectX(point[0],xScaleType),this.projectY(point[1],yScaleType)];if(point[2]!==undefined){p.push(this.projectZ(point[2]))}return p}unprojectX(value,scaleType){var _this$scales$x$scaleT2;const scale=(_this$scales$x$scaleT2=this.scales.x[scaleType])!==null&&_this$scales$x$scaleT2!==void 0?_this$scales$x$scaleT2:this.scales.x[Object.keys(this.scales.x)[0]];if(!scale||value===undefined||value===null)return 0;return scale.invert(value)}unprojectY(value,scaleType){var _this$scales$y$scaleT2;const scale=(_this$scales$y$scaleT2=this.scales.y[scaleType])!==null&&_this$scales$y$scaleT2!==void 0?_this$scales$y$scaleT2:this.scales.y[Object.keys(this.scales.y)[0]];if(!scale||value===undefined||value===null)return 0;return scale.invert(value)}unprojectZ(value){return value}unproject(point,xScaleType,yScaleType){if(!this.hasAllScalesSetted(xScaleType,yScaleType))return;const p=[this.unprojectX(point[0],xScaleType),this.unprojectY(point[1],yScaleType)];if(point[2]!==undefined){p.push(this.unprojectZ(point[2]))}return p}}var spatial_src=__webpack_require__(8);class BoxProjector_BoxProjector{constructor(projector,xScaleType,yScaleType){this.projector=void 0;this.xScaleType=void 0;this.yScaleType=void 0;this.projector=projector;this.xScaleType=xScaleType;this.yScaleType=yScaleType}project(box){return new spatial_src["b"]({x:new spatial_src["e"]({min:this.projector.projectX(box.x.getMin(),this.xScaleType),max:this.projector.projectX(box.x.getMax(),this.xScaleType)}),y:new spatial_src["e"]({min:this.projector.projectY(box.y.getMin(),this.yScaleType),max:this.projector.projectY(box.y.getMax(),this.yScaleType)}),z:box.z?new spatial_src["e"]({min:this.projector.projectZ(box.z.getMin()),max:this.projector.projectZ(box.z.getMax())}):undefined})}unproject(box){return new spatial_src["b"]({x:new spatial_src["e"]({min:this.projector.unprojectX(box.x.getMin(),this.xScaleType),max:this.projector.unprojectX(box.x.getMax(),this.xScaleType)}),y:new spatial_src["e"]({min:this.projector.unprojectY(box.y.getMin(),this.yScaleType),max:this.projector.unprojectY(box.y.getMax(),this.yScaleType)}),z:box.z?new spatial_src["e"]({min:this.projector.unprojectZ(box.z.getMin()),max:this.projector.unprojectZ(box.z.getMax())}):undefined})}}var dataset_src=__webpack_require__(6);var centroid_=__webpack_require__(42);var centroid_default=__webpack_require__.n(centroid_);var helpers_=__webpack_require__(23);var fp_=__webpack_require__(3);class RowProjector_RowProjector{constructor(projector,scales){this.projector=void 0;this.scales=void 0;this.projector=projector;this.scales=scales}isPoint(value){return value.length===1}isPolygon(value){return value[0][0]===value[value.length-1][0]&&value[0][1]===value[value.length-1][1]}getGeometry(value){if(Object(fp_["isArray"])(value)){if(this.isPoint(value))return Object(helpers_["point"])(value[0]);if(this.isPolygon(value))return Object(helpers_["polygon"])([value]);return Object(helpers_["lineString"])(value)}return value}getCentroid(value){try{const geometry=this.getGeometry(value);const centroidGeoJson=centroid_default()(geometry);return centroidGeoJson.geometry.coordinates}catch(_){return[0,0]}}projectGeometry(data,index){if(Object(fp_["isArray"])(data))return data.map(this.projectGeometry.bind(this));if(index===0)return this.projector.projectX(Number(data),this.scales.x.type);if(index===1)return this.projector.projectY(Number(data),this.scales.y.type);if(index===2)return this.projector.projectZ(Number(data));return data}unprojectValue(value,index){if(index===0)return this.projector.unprojectX(Number(value),this.scales.x.type);if(index===1)return this.projector.unprojectY(Number(value),this.scales.y.type);if(index===2)return this.projector.unprojectZ(Number(value));return 0}unprojectGeometry(data,index){if(Object(fp_["isArray"])(data))return data.map(this.unprojectGeometry.bind(this));return this.unprojectValue(data,index)}isRowPlaced(row){return!Object(fp_["isNil"])(row._x)&&!Object(fp_["isNil"])(row._y)}project(rows,filterNotPlaceds){const projectedRows=rows.map((row=>{const projectedRow=this.projectRow(row);return new dataset_src["f"](projectedRow)}));if(filterNotPlaceds){return projectedRows.filter(this.isRowPlaced)}return projectedRows}projectRow(row){var _this$scales$z;let xValue=row[this.scales.x.field];let yValue=row[this.scales.y.field];if(Object(fp_["isObject"])(row[this.scales.x.field])&&!(row[this.scales.x.field]instanceof Date)){const centroid=this.getCentroid(row[this.scales.x.field]);xValue=centroid[0];yValue=centroid[1]}return new dataset_src["f"]({...row,[this.scales.x.field]:Object(fp_["isArray"])(row[this.scales.x.field])?this.projectGeometry(row[this.scales.x.field]):row[this.scales.x.field],_x:this.projector.projectX(xValue,this.scales.x.type),_y:this.projector.projectY(yValue,this.scales.y.type),_z:(_this$scales$z=this.scales.z)!==null&&_this$scales$z!==void 0&&_this$scales$z.field?this.projector.projectZ(row[this.scales.z.field]):undefined})}unprojectX(row){return row["_x"]===null?null:this.projector.unprojectX(row._x,this.scales.x.type)}unprojectZ(row){return row["_z"]===null?null:this.projector.unprojectZ(row._z)}unprojectY(row){return row["_y"]===null?null:this.projector.unprojectY(row._y,this.scales.y.type)}unprojectRow(row){var _this$scales$z2;const unprojectedValues={};if(Object(fp_["isArray"])(row[this.scales.x.field])){unprojectedValues[this.scales.x.field]=this.unprojectGeometry(row[this.scales.x.field])}else if(this.scales.x.field===this.scales.y.field){if(Object(fp_["isNil"])(this.unprojectX(row))||Object(fp_["isNil"])(this.unprojectY(row))){unprojectedValues[this.scales.x.field]=null}else{unprojectedValues[this.scales.x.field]=[[this.unprojectX(row),this.unprojectY(row)]]}}else{unprojectedValues[this.scales.x.field]=this.unprojectX(row);unprojectedValues[this.scales.y.field]=this.unprojectY(row)}if(row["_z"]!==undefined&&(_this$scales$z2=this.scales.z)!==null&&_this$scales$z2!==void 0&&_this$scales$z2.field){unprojectedValues[this.scales.z.field]=this.unprojectZ(row)}return Object(fp_["omit"])(["_x","_y","_z"],{...row,...unprojectedValues})}unproject(rows){return rows.map((row=>{const unprojectedRow=this.unprojectRow(row);return new dataset_src["f"](unprojectedRow)}))}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return ScaleKeys}));__webpack_require__.d(__webpack_exports__,"a",(function(){return NullScaleKeys}));var _ScaleType__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(37);class ScaleKeys{constructor(x,y,z){var _x$type,_x$field,_y$type,_y$field,_z$type;this.x=void 0;this.y=void 0;this.z=void 0;this.x={type:(_x$type=x.type)!==null&&_x$type!==void 0?_x$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:(_x$field=x.field)!==null&&_x$field!==void 0?_x$field:"_x"};this.y={type:(_y$type=y.type)!==null&&_y$type!==void 0?_y$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:(_y$field=y.field)!==null&&_y$field!==void 0?_y$field:"_y"};this.z=z!==null&&z!==void 0&&z.field?{type:(_z$type=z===null||z===void 0?void 0:z.type)!==null&&_z$type!==void 0?_z$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:z.field}:undefined}setZ(scaleKey){var _scaleKey$type;this.z=scaleKey.field?{type:(_scaleKey$type=scaleKey===null||scaleKey===void 0?void 0:scaleKey.type)!==null&&_scaleKey$type!==void 0?_scaleKey$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:scaleKey.field}:undefined}}class NullScaleKeys extends ScaleKeys{constructor(){super({},{})}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return QueryStoreStatus}));var _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(6);let QueryStoreStatus;(function(QueryStoreStatus){QueryStoreStatus[QueryStoreStatus["none"]=0]="none";QueryStoreStatus[QueryStoreStatus["error"]=1]="error";QueryStoreStatus[QueryStoreStatus["tableNotFound"]=2]="tableNotFound";QueryStoreStatus[QueryStoreStatus["tableFetchingError"]=3]="tableFetchingError";QueryStoreStatus[QueryStoreStatus["updated"]=4]="updated"})(QueryStoreStatus||(QueryStoreStatus={}));class QueryStore{constructor(queries,status,subsctiptions){this.queries=void 0;this.status=void 0;this.loaders=void 0;this.queries=queries||new _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["d"];this.status=status||QueryStoreStatus.none;this.loaders=subsctiptions||[]}setQueries(queries){return new QueryStore(queries,QueryStoreStatus.updated,this.loaders)}setStatus(status){return new QueryStore(this.queries,status,this.loaders)}setLoaders(queryLoaders){return new QueryStore(this.queries,this.status,queryLoaders)}getLoader(query){return this.loaders.find((loader=>loader.name===query.name&&loader.source===query.dataSource))}}__webpack_exports__["b"]=QueryStore},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"c",(function(){return getSchemes}));__webpack_require__.d(__webpack_exports__,"a",(function(){return getHexScheme}));__webpack_require__.d(__webpack_exports__,"b",(function(){return getRgbScheme}));var _hopara_memoize__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(78);var vega__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(20);var vega__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(vega__WEBPACK_IMPORTED_MODULE_1__);var ___WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(10);var _Colors__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(18);const continuous=["blues","greens","greys","oranges","purples","reds","blueGreen","bluePurple","greenBlue","orangeRed","purpleBlue","purpleBlueGreen","purpleRed","redPurple","yellowGreen","yellowOrangeBrown","yellowOrangeRed","blueOrange","brownBlueGreen","purpleGreen","purpleOrange","redBlue","redGrey","yellowGreenBlue","redYellowBlue","redYellowGreen","pinkYellowGreen","spectral","viridis","magma","inferno","plasma","cividis","rainbow","sinebow","turbo","browns","tealBlues","teals","warmGreys","goldGreen","goldOrange","goldRed","lightGreyRed","lightGreyTeal","lightMulti","lightOrange","lightTealBlue","darkBlue","darkGold","darkGreen","darkMulti","darkRed"];const discrete=["category10","category20","category20b","category20c","tableau10","tableau20","accent","dark2","paired","pastel1","pastel2","set1","set2","set3"];const schemeNames=[...continuous,...discrete];const getSchemes=length=>{const continuousSteps=Array.from({length},((_,i)=>(i+1)/length));const discreteSteps=Array.from({length},((_,i)=>i));return Object.fromEntries(schemeNames.map((name=>{let colors=Object(vega__WEBPACK_IMPORTED_MODULE_1__["scheme"])(name);if(typeof colors==="function"){colors=continuousSteps.map((step=>colors(step)))}else{colors=discreteSteps.map((step=>colors[step]))}return[name.toLowerCase(),colors]})))};Object(vega__WEBPACK_IMPORTED_MODULE_1__["scheme"])("temperature",["#3690c0","#800026"]);const DEFAULT_COLOR_SCHEME="purpleblue";const seqPaletteSteps=Array.from({length:9},((_,i)=>(i+1)/10));function getScheme(paletteName){const name=paletteName.toLocaleLowerCase();let colors=Object(vega__WEBPACK_IMPORTED_MODULE_1__["scheme"])(paletteName);if(!colors)return null;if(typeof colors==="function"){colors=seqPaletteSteps.map((step=>Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(colors(step))))}else{colors=colors.map((c=>Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(c)))}if(!colors.length)return null;return{name,colors}}const getOpacity=function(){let alpha=arguments.length>0&&arguments[0]!==undefined?arguments[0]:255;return alpha/255};const getCustomScheme=scheme=>({name:"custom",colors:scheme.map((color=>{if(Array.isArray(color)){return Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(`rgba(${color[0]}, ${color[1]}, ${color[2]}, ${getOpacity(color[3])})`)}return Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(color)}))});function formatColorScheme(scheme,colorFormat){let opacity=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;let colorScheme;if(typeof scheme==="string"){colorScheme=getScheme(scheme.toLocaleLowerCase())}else if(Array.isArray(scheme)){colorScheme=getCustomScheme(scheme)}if(!colorScheme){colorScheme=getScheme(DEFAULT_COLOR_SCHEME)}return{name:colorScheme.name,colors:colorScheme.colors.map((c=>{const color=c.copy({opacity});if(colorFormat===___WEBPACK_IMPORTED_MODULE_2__["b"].hex)return color.formatHex();return Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["c"])(color)}))}}function getHexScheme(scheme){let reverse=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;const colorScheme=formatColorScheme(scheme,___WEBPACK_IMPORTED_MODULE_2__["b"].hex);if(reverse)return{name:`${colorScheme.name}-reversed`,colors:[...colorScheme.colors].reverse()};return colorScheme}function doGetRgbScheme(name,reverse,opacity){const colorScheme=formatColorScheme(name,___WEBPACK_IMPORTED_MODULE_2__["b"].rgb,opacity);if(reverse)return{name:`${colorScheme.name}-reversed`,colors:[...colorScheme.colors].reverse()};return colorScheme}const getRgbSchemeCache=Object(_hopara_memoize__WEBPACK_IMPORTED_MODULE_0__["a"])(doGetRgbScheme);function getRgbScheme(scheme){let reverse=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;let opacity=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;return getRgbSchemeCache(scheme,reverse,opacity)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Row}));var _Geti__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(60);class Row{constructor(values){this._id=void 0;this._x=void 0;this._y=void 0;Object.assign(this,values)}getValue(key){return Object(_Geti__WEBPACK_IMPORTED_MODULE_0__["a"])(key,this)}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return OrthographicViewport}));__webpack_require__.d(__webpack_exports__,"b",(function(){return OrthographicView}));var lodash_fp__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_0__);var _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(34);var _deck_gl_core__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_deck_gl_core__WEBPACK_IMPORTED_MODULE_1__);var math_gl__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(74);var math_gl__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(math_gl__WEBPACK_IMPORTED_MODULE_2__);var _math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(101);var _math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(_math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3__);var gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(87);var gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__);const viewMatrix=(new math_gl__WEBPACK_IMPORTED_MODULE_2__["Matrix4"]).lookAt({eye:[0,0,1]});function getProjectionMatrix(_ref){let{width,height,near,far,padding,translationMatrix}=_ref;let left=-width/2;let right=width/2;let bottom=-height/2;let top=height/2;if(padding){const{left:l=0,right:r=0,top:t=0,bottom:b=0}=padding;const offsetX=Object(math_gl__WEBPACK_IMPORTED_MODULE_2__["clamp"])((l+width-r)/2,0,width)-width/2;const offsetY=Object(math_gl__WEBPACK_IMPORTED_MODULE_2__["clamp"])((t+height-b)/2,0,height)-height/2;left-=offsetX;right-=offsetX;bottom+=offsetY;top+=offsetY}return(new math_gl__WEBPACK_IMPORTED_MODULE_2__["Matrix4"]).ortho({left,right,bottom,top,near,far}).clone().translate(translationMatrix)}class OrthographicViewport extends _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__["Viewport"]{constructor(props){const{width,height,near=.1,far=1e3,zoom=0,target=[0,0,0],padding=null,flipY=true,fixedY=false,fixedX=false,translationMatrix=[0,0,0],initialCoordinates}=props;let zoomX=Array.isArray(zoom)?zoom[0]:zoom;let zoomY=Array.isArray(zoom)?zoom[1]:zoom;if(fixedY)zoomY=0;if(fixedX)zoomX=0;const zoom_=Math.min(zoomX,zoomY);const scale=Math.pow(2,zoom_);let distanceScales;if(zoomX!==zoomY){const scaleX=Math.pow(2,zoomX);const scaleY=Math.pow(2,zoomY);distanceScales={unitsPerMeter:[scaleX/scale,scaleY/scale,1],metersPerUnit:[scale/scaleX,scale/scaleY,1]}}super({...props,longitude:null,position:[fixedX&&initialCoordinates&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(initialCoordinates.x)?initialCoordinates.x:target[0],fixedY&&initialCoordinates&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(initialCoordinates.y)?initialCoordinates.y:target[1],target[2]],viewMatrix:viewMatrix.clone().scale([scale,scale*(flipY?-1:1),scale]),projectionMatrix:getProjectionMatrix({width:width||1,height:height||1,padding,near,far,translationMatrix}),zoom:zoom_,distanceScales})}projectFlat(_ref2){let[X,Y]=_ref2;const{unitsPerMeter}=this.distanceScales;return[X*unitsPerMeter[0],Y*unitsPerMeter[1]]}unprojectFlat(_ref3){let[x,y]=_ref3;const{metersPerUnit}=this.distanceScales;return[x*metersPerUnit[0],y*metersPerUnit[1]]}panByPosition(coords,pixel){const fromLocation=Object(_math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3__["pixelsToWorld"])(pixel,this.pixelUnprojectionMatrix);const toLocation=this.projectFlat(coords);const translate=gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__["add"]([],toLocation,gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__["negate"]([],fromLocation));const newCenter=gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__["add"]([],this.center,translate);return{target:this.unprojectFlat(newCenter)}}}class OrthographicView extends _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__["View"]{constructor(props){super({...props,type:OrthographicViewport})}get ViewportType(){return OrthographicViewport}get ControllerType(){return _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__["OrthographicController"]}}},function(module,exports){module.exports=require("@mui/material/styles")},function(module,exports){module.exports=require("@mui/material/Box")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return getFormatter}));__webpack_require__.d(__webpack_exports__,"a",(function(){return formatValue}));var ColumnType=__webpack_require__(21);class BooleanFormatter{format(value){return String(value)}unformat(value){return Boolean(value)}}var D3Formatter=__webpack_require__(85);var external_moment_=__webpack_require__(70);var external_moment_default=__webpack_require__.n(external_moment_);class DateFormatter_DateFormatter{format(value){return external_moment_default.a.utc(value).format("YYYY-MM-DD")}unformat(value){return external_moment_default.a.utc(value).valueOf()}}class StringArrayFormatter{format(value){return value.join(", ")}unformat(value){return value.split(", ")}}var fp_=__webpack_require__(3);class ValueFormatter{format(value){return value}unformat(value){return value}}const getFormatter=columnType=>{switch(columnType){case ColumnType["a"].DECIMAL:case ColumnType["a"].INTEGER:return new D3Formatter["a"](columnType);case ColumnType["a"].DATETIME:return new DateFormatter_DateFormatter;case ColumnType["a"].STRING_ARRAY:return new StringArrayFormatter;case ColumnType["a"].BOOLEAN:return new BooleanFormatter;default:return new ValueFormatter}};const formatValue=(value,columnType)=>{if(Object(fp_["isNil"])(value)){return""}const formatter=getFormatter(columnType);return formatter.format(value)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return geti}));function geti(key,object){if(!key)return;for(const candidateKey in object){if((candidateKey+"").toLowerCase()===key.toLowerCase()){return object[candidateKey]}}return}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return LineCap}));__webpack_require__.d(__webpack_exports__,"b",(function(){return LineEncoding}));let LineCap;(function(LineCap){LineCap["BUTT"]="butt";LineCap["ROUND"]="round"})(LineCap||(LineCap={}));class LineEncoding{constructor(props){this.field=void 0;this.segmentLength=void 0;this.cap=void 0;Object.assign(this,props)}isRenderable(){return!!this.field}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return getCoordinates}));var core_=__webpack_require__(34);var fp_=__webpack_require__(3);var OrthographicView=__webpack_require__(56);var Visualization=__webpack_require__(44);var src=__webpack_require__(8);function getPosition(coordinates,zoom,bearing){const position={coordinates:new src["c"],zoom:0,bearing:0};if(zoom){position.zoom=zoom}if(coordinates){position.coordinates=coordinates}if(bearing){position.bearing=bearing}return position}var Paddings=__webpack_require__(31);var World=__webpack_require__(39);var ZoomRange=__webpack_require__(38);const getCoordinates=(previousCoordinates,visualization,viewDimensions)=>{if(previousCoordinates&&!previousCoordinates.isAtOrigin())return previousCoordinates;if(!visualization||!viewDimensions)return;if(visualization.getInitialCoordinates().default&&visualization.type===World["b"].CARTESIAN&&viewDimensions){return new src["c"]({x:viewDimensions.width/2,y:viewDimensions.height/2})}return visualization.getInitialCoordinates()};class ViewState_ViewState{constructor(props){this.visualizationId=void 0;this.coordinates=void 0;this.zoom=void 0;this.zoomRange=void 0;this.bearing=void 0;this._initialPosition=void 0;this._lastModified=void 0;this.transitioning=void 0;this.transitionDuration=void 0;this.zoomBehavior=void 0;this.normalizedViewPortCache=void 0;Object.assign(this,props);if(props){const position=getPosition(props.coordinates,props.zoom,props.bearing);Object.assign(this,props,position);if(!this._initialPosition){this._initialPosition=position}}if(!this.coordinates)this.coordinates=new src["c"]({x:0,y:0});if(!this.zoomRange||!this.zoomRange.getMin()&&!this.zoomRange.getMax()){this.zoomRange=new ZoomRange["a"]({min:{fixed:{value:0}},max:{fixed:{value:20}}})}if(!this.zoom)this.zoom=0;if(!this.bearing)this.bearing=0}getDeckViewState(world){var _world$getDimensions,_world$getDimensions2;const deckViewState={pitch:0,bearing:this.bearing,minZoom:this.getMinZoom(),maxZoom:this.getMaxZoom(),x:this.coordinates.x,y:this.coordinates.y,longitude:(world===null||world===void 0?void 0:world.isGeo())&&this.coordinates.x,latitude:(world===null||world===void 0?void 0:world.isGeo())&&this.coordinates.y,target:this.coordinates.toArray(),zoom:this.zoom,height:world===null||world===void 0?void 0:(_world$getDimensions=world.getDimensions())===null||_world$getDimensions===void 0?void 0:_world$getDimensions.height,width:world===null||world===void 0?void 0:(_world$getDimensions2=world.getDimensions())===null||_world$getDimensions2===void 0?void 0:_world$getDimensions2.width};if(this.transitioning&&world){return{...this.getTransitionProps(world),...deckViewState}}return deckViewState}clone(){return new ViewState_ViewState({...this,normalizedViewPortCache:null,transitioning:false,_lastModified:Date.now()})}getInterpolator(world){if(world.isGeo()){return new core_["FlyToInterpolator"]}else{return new core_["LinearInterpolator"](["target","zoom"])}}getTransitionProps(world){var _this$transitionDurat;return{transitionInterpolator:this.getInterpolator(world),transitionDuration:(_this$transitionDurat=this.transitionDuration)!==null&&_this$transitionDurat!==void 0?_this$transitionDurat:500}}isTransitioning(){return!!this.transitioning}transition(positon,duration){var _positon$zoom,_positon$bearing;const cloned=this.clone();cloned.zoom=(_positon$zoom=positon.zoom)!==null&&_positon$zoom!==void 0?_positon$zoom:this.zoom;cloned.bearing=(_positon$bearing=positon.bearing)!==null&&_positon$bearing!==void 0?_positon$bearing:this.bearing;cloned.coordinates=positon.coordinates;cloned.transitioning=true;cloned.transitionDuration=duration;return cloned}zoomTransition(zoom){const cloned=this.clone();if(zoom<=this.getMinZoom()){cloned.zoom=this.getMinZoom()}else if(zoom>=this.getMaxZoom()){cloned.zoom=this.getMaxZoom()}else{cloned.zoom=zoom}cloned.transitioning=true;return cloned}getOrtographicViewPortProps(world,deckViewState){var _world$getDimensions3,_world$getDimensions4;return{...deckViewState,flipY:false,x:Paddings["b"],y:Paddings["a"],fixedX:this.zoomBehavior.x===Visualization["a"].FIXED,fixedY:this.zoomBehavior.y===Visualization["a"].FIXED,translationMatrix:[Paddings["b"]+Paddings["a"]/2,Paddings["b"]+Paddings["a"]/2,0],initialCoordinates:this._initialPosition.coordinates,height:world===null||world===void 0?void 0:(_world$getDimensions3=world.getDimensions())===null||_world$getDimensions3===void 0?void 0:_world$getDimensions3.height,width:world===null||world===void 0?void 0:(_world$getDimensions4=world.getDimensions())===null||_world$getDimensions4===void 0?void 0:_world$getDimensions4.width}}createViewPort(world,deckViewState){if(world.isGeo())return new core_["WebMercatorViewport"](deckViewState);return new OrthographicView["a"](this.getOrtographicViewPortProps(world,deckViewState))}getViewPort(world,deckViewState){return this.createViewPort(world,deckViewState!==null&&deckViewState!==void 0?deckViewState:this.getDeckViewState(world))}getNormalizedViewPort(world){if(this.normalizedViewPortCache){return this.normalizedViewPortCache}const deckViewState=Object(fp_["omit"])(["width","height"],this.getDeckViewState(world));const normalizedDeckViewState={...deckViewState,bearing:0};this.normalizedViewPortCache=this.createViewPort(world,normalizedDeckViewState);return this.normalizedViewPortCache}getVisibleWorldOrigin(world){const dimensions=world.getDimensions();return src["c"].fromArray(this.getNormalizedViewPort(world).unproject([dimensions&&-dimensions.width/2,dimensions&&-dimensions.height/2],{topLeft:false}))}getVisibleWorldTopRight(world){const dimensions=world.getDimensions();return src["c"].fromArray(this.getNormalizedViewPort(world).unproject([dimensions&&dimensions.width/2,dimensions&&dimensions.height/2],{topLeft:false}))}getVisibleWorldDimensions(world){const origin=this.getVisibleWorldOrigin(world);const topRight=this.getVisibleWorldTopRight(world);return{width:Math.abs(topRight.x-origin.x),height:Math.abs(topRight.y-origin.y)}}getVisibleWorld(world){if(!(world!==null&&world!==void 0&&world.getDimensions()))return;const worldOrigin=this.getVisibleWorldOrigin(world);const worldTopRight=this.getVisibleWorldTopRight(world);return new src["b"]({x:new src["e"]({min:Math.min(worldOrigin.x,worldTopRight.x),max:Math.max(worldOrigin.x,worldTopRight.x)}),y:new src["e"]({min:Math.min(worldOrigin.y,worldTopRight.y),max:Math.max(worldOrigin.y,worldTopRight.y)}),z:new src["e"]({min:this.coordinates.z,max:this.coordinates.z})})}unProjectCoordinate(world,coordinate){if(world.isGeo())this.getNormalizedViewPort(world).unproject(coordinate);return this.getViewPort(world).unproject(coordinate)}projectCoordinate(world,coordinate){if(world.isGeo())this.getNormalizedViewPort(world).project(coordinate);return this.getViewPort(world).project(coordinate)}withZoom(zoom){const cloned=this.clone();cloned.zoom=zoom;return cloned}getMaxZoom(){return this.zoomRange.getMax()-.01}getMinZoom(){return this.zoomRange.getMin()}withDeckViewState(world,deckViewState){var _deckViewState$target,_deckViewState$target2;const cloned=this.clone();if(world.isGeo()){cloned.coordinates=new src["c"]({x:deckViewState.longitude,y:deckViewState.latitude,z:this.coordinates.z})}else if((deckViewState===null||deckViewState===void 0?void 0:(_deckViewState$target=deckViewState.target)===null||_deckViewState$target===void 0?void 0:_deckViewState$target.length)===3){cloned.coordinates=src["c"].fromArray([...deckViewState.target])}else if((deckViewState===null||deckViewState===void 0?void 0:(_deckViewState$target2=deckViewState.target)===null||_deckViewState$target2===void 0?void 0:_deckViewState$target2.length)===2){cloned.coordinates=src["c"].fromArray([...deckViewState.target,this.coordinates.z])}cloned.bearing=deckViewState.bearing;cloned.zoom=deckViewState.zoom;return cloned}withCoordinates(coordinates){if(!coordinates)return this;const cloned=this.clone();cloned.coordinates=coordinates;return cloned}withInitialCoordinates(coordinates){if(!coordinates)return this;const cloned=this.clone();this._initialPosition.coordinates=coordinates;cloned.coordinates=coordinates;return cloned}isNewerThan(viewState){if(!viewState){return true}return this._lastModified>viewState._lastModified}getInitialPosition(){return this._initialPosition}resetPosition(){const cloned=this.clone();cloned.coordinates=this._initialPosition.coordinates;cloned.zoom=this._initialPosition.zoom;cloned.bearing=this._initialPosition.bearing;return cloned}}var view_state_ViewState=__webpack_exports__["a"]=ViewState_ViewState},function(module,__webpack_exports__,__webpack_require__){"use strict";var typesafe_actions__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(2);var typesafe_actions__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__);const actions={hocLoaded:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("HOC_LOADED")(),hocUpdated:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("HOC_UPDATED")()};__webpack_exports__["a"]=actions},function(module,exports){module.exports=require("@turf/invariant")},function(module,exports){module.exports=require("react-transition-group")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return imageMimeTypes}));__webpack_require__.d(__webpack_exports__,"a",(function(){return getMeta}));const svgMimeTypes="image/svg+xml";const imageMimeTypes=["image/png","image/jpeg",svgMimeTypes];const svgToPng=(svgImage,width,height)=>{const can=document.createElement("canvas");can.width=width;can.height=height;const ctx=can.getContext("2d");ctx.drawImage(svgImage,0,0);return can.toDataURL()};const getMeta=async(imageURI,options)=>new Promise(((resolve,reject)=>{if(!imageURI)return reject(new Error("invalid imageURI"));const img=new Image;img.src=imageURI;img.style.display="none";img.onload=event=>{const{naturalWidth:width,naturalHeight:height}=event.target;if(options!==null&&options!==void 0&&options.maxWidth&&options.maxWidth<width){reject(new Error(`Image width is too big. Max width is ${options.maxWidth}px`));return img.remove()}if(options!==null&&options!==void 0&&options.maxHeight&&options.maxHeight<height){reject(new Error(`Image height is too big. Max height is ${options.maxHeight}px`));return img.remove()}let base64=imageURI;if(base64.startsWith(`data:${svgMimeTypes}`)){base64=svgToPng(event.target,width,height)}resolve({base64,width,height,ratio:height/width});return img.remove()};window.document.body.appendChild(img)}))},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(global){__webpack_require__.d(__webpack_exports__,"a",(function(){return HoparaStore}));var react__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);var react__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);var react_redux__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(30);var react_redux__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);var _hopara_internals__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(16);var query_string__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(43);var query_string__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(query_string__WEBPACK_IMPORTED_MODULE_3__);var _state_Store__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(28);var _hopara_config__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(17);var _hopara_design_system_src_component_PureComponent__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(25);var _hopara_design_system_src_toast_ToastContainer__WEBPACK_IMPORTED_MODULE_7__=__webpack_require__(117);var _log__WEBPACK_IMPORTED_MODULE_8__=__webpack_require__(92);var _ThemeProvider__WEBPACK_IMPORTED_MODULE_9__=__webpack_require__(138);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__=__webpack_require__(0);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10___default=__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__);const window=global;const queryString=query_string__WEBPACK_IMPORTED_MODULE_3___default.a.parse(window.location.search);if(queryString.debug==="true"){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].enable()}else{_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].disable()}if(queryString.heatmapDebounce){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["b"].setParam("heatmapDebounce",Number(queryString.heatmapDebounce))}if(queryString.heatmapTextureSize){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["b"].setParam("heatmapTextureSize",Number(queryString.heatmapTextureSize))}const HoparaStore=Object(_state_Store__WEBPACK_IMPORTED_MODULE_4__["b"])();if(_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].isDebugging()){window._hoparaStore=HoparaStore;window._hoparaConfig=_hopara_config__WEBPACK_IMPORTED_MODULE_5__["a"]}window._hoparaEnableDebug=()=>{_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].enable();Object(_log__WEBPACK_IMPORTED_MODULE_8__["a"])();window._hoparaStore=HoparaStore;window._hoparaConfig=_hopara_config__WEBPACK_IMPORTED_MODULE_5__["a"]};class HoparaProvider extends _hopara_design_system_src_component_PureComponent__WEBPACK_IMPORTED_MODULE_6__["a"]{componentDidMount(){Object(_log__WEBPACK_IMPORTED_MODULE_8__["a"])()}componentDidCatch(error,info){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["c"].error(error,info)}render(){return Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__["jsx"])(react_redux__WEBPACK_IMPORTED_MODULE_1__["Provider"],{context:_state_Store__WEBPACK_IMPORTED_MODULE_4__["a"],store:HoparaStore,children:Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__["jsxs"])(_ThemeProvider__WEBPACK_IMPORTED_MODULE_9__["a"],{children:[Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__["jsx"])(_hopara_design_system_src_toast_ToastContainer__WEBPACK_IMPORTED_MODULE_7__["a"],{}),this.props.children]})})}}__webpack_exports__["b"]=HoparaProvider}).call(this,__webpack_require__(75))},function(module,exports){module.exports=require("react-table")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Rows}));var _Geti__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(60);var _Row__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(55);class Rows extends Array{constructor(){for(var _len=arguments.length,rows=new Array(_len),_key=0;_key<_len;_key++){rows[_key]=arguments[_key]}if(rows.length&&typeof rows[0]==="number"){super(rows[0]);this.etag=void 0}else{super();this.etag=void 0;rows.forEach((row=>super.push(new _Row__WEBPACK_IMPORTED_MODULE_1__["a"](row))))}}static empty(){return new Rows}getById(id){return this.find((row=>row._id===id))}filter(predicate,thisArg){const rows=new Rows;const filtered=super.filter(predicate,thisArg);filtered.forEach((row=>rows.push(row)));rows.etag=this.etag;return rows}map(callbackfn,thisArg){const rows=new Rows;const mapped=super.map(callbackfn,thisArg);mapped.forEach((row=>rows.push(row)));rows.etag=this.etag;return rows}getValues(field){return super.map((row=>Object(_Geti__WEBPACK_IMPORTED_MODULE_0__["a"])(field,row)))}getFromBox(delimiterBox){if(!delimiterBox)return this;const filtered=this.filter((row=>{const columnX="_x";const columnY="_y";const point={x:row[columnX],y:row[columnY]};return delimiterBox.isPointInRange(point)}));filtered.etag=`${filtered.etag}_${Date.now()}`;return filtered}}},function(module,exports){module.exports=require("moment")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return getSpecFromTenant}));__webpack_require__.d(__webpack_exports__,"a",(function(){return createMuiThemeFromTenant}));var dist_namespaceObject={};__webpack_require__.r(dist_namespaceObject);__webpack_require__.d(dist_namespaceObject,"Blend",(function(){return blend_Blend}));__webpack_require__.d(dist_namespaceObject,"Cam16",(function(){return cam16_Cam16}));__webpack_require__.d(dist_namespaceObject,"Hct",(function(){return hct_Hct}));__webpack_require__.d(dist_namespaceObject,"ViewingConditions",(function(){return viewing_conditions_ViewingConditions}));__webpack_require__.d(dist_namespaceObject,"CorePalette",(function(){return core_palette_CorePalette}));__webpack_require__.d(dist_namespaceObject,"TonalPalette",(function(){return tonal_palette_TonalPalette}));__webpack_require__.d(dist_namespaceObject,"QuantizerCelebi",(function(){return quantizer_celebi_QuantizerCelebi}));__webpack_require__.d(dist_namespaceObject,"QuantizerMap",(function(){return quantizer_map_QuantizerMap}));__webpack_require__.d(dist_namespaceObject,"QuantizerWsmeans",(function(){return quantizer_wsmeans_QuantizerWsmeans}));__webpack_require__.d(dist_namespaceObject,"QuantizerWu",(function(){return quantizer_wu_QuantizerWu}));__webpack_require__.d(dist_namespaceObject,"Scheme",(function(){return scheme_Scheme}));__webpack_require__.d(dist_namespaceObject,"SchemeAndroid",(function(){return scheme_android_SchemeAndroid}));__webpack_require__.d(dist_namespaceObject,"Score",(function(){return score_Score}));__webpack_require__.d(dist_namespaceObject,"argbFromRgb",(function(){return argbFromRgb}));__webpack_require__.d(dist_namespaceObject,"argbFromLinrgb",(function(){return argbFromLinrgb}));__webpack_require__.d(dist_namespaceObject,"alphaFromArgb",(function(){return alphaFromArgb}));__webpack_require__.d(dist_namespaceObject,"redFromArgb",(function(){return redFromArgb}));__webpack_require__.d(dist_namespaceObject,"greenFromArgb",(function(){return greenFromArgb}));__webpack_require__.d(dist_namespaceObject,"blueFromArgb",(function(){return blueFromArgb}));__webpack_require__.d(dist_namespaceObject,"isOpaque",(function(){return isOpaque}));__webpack_require__.d(dist_namespaceObject,"argbFromXyz",(function(){return argbFromXyz}));__webpack_require__.d(dist_namespaceObject,"xyzFromArgb",(function(){return xyzFromArgb}));__webpack_require__.d(dist_namespaceObject,"argbFromLab",(function(){return argbFromLab}));__webpack_require__.d(dist_namespaceObject,"labFromArgb",(function(){return labFromArgb}));__webpack_require__.d(dist_namespaceObject,"argbFromLstar",(function(){return argbFromLstar}));__webpack_require__.d(dist_namespaceObject,"lstarFromArgb",(function(){return lstarFromArgb}));__webpack_require__.d(dist_namespaceObject,"yFromLstar",(function(){return yFromLstar}));__webpack_require__.d(dist_namespaceObject,"linearized",(function(){return linearized}));__webpack_require__.d(dist_namespaceObject,"delinearized",(function(){return color_utils_delinearized}));__webpack_require__.d(dist_namespaceObject,"whitePointD65",(function(){return whitePointD65}));__webpack_require__.d(dist_namespaceObject,"signum",(function(){return signum}));__webpack_require__.d(dist_namespaceObject,"lerp",(function(){return lerp}));__webpack_require__.d(dist_namespaceObject,"clampInt",(function(){return clampInt}));__webpack_require__.d(dist_namespaceObject,"clampDouble",(function(){return clampDouble}));__webpack_require__.d(dist_namespaceObject,"sanitizeDegreesInt",(function(){return sanitizeDegreesInt}));__webpack_require__.d(dist_namespaceObject,"sanitizeDegreesDouble",(function(){return sanitizeDegreesDouble}));__webpack_require__.d(dist_namespaceObject,"rotationDirection",(function(){return rotationDirection}));__webpack_require__.d(dist_namespaceObject,"differenceDegrees",(function(){return math_utils_differenceDegrees}));__webpack_require__.d(dist_namespaceObject,"matrixMultiply",(function(){return matrixMultiply}));__webpack_require__.d(dist_namespaceObject,"hexFromArgb",(function(){return hexFromArgb}));__webpack_require__.d(dist_namespaceObject,"argbFromHex",(function(){return argbFromHex}));__webpack_require__.d(dist_namespaceObject,"sourceColorFromImage",(function(){return sourceColorFromImage}));__webpack_require__.d(dist_namespaceObject,"themeFromSourceColor",(function(){return themeFromSourceColor}));__webpack_require__.d(dist_namespaceObject,"themeFromImage",(function(){return themeFromImage}));__webpack_require__.d(dist_namespaceObject,"customColor",(function(){return customColor}));__webpack_require__.d(dist_namespaceObject,"applyTheme",(function(){return applyTheme}));function signum(num){if(num<0){return-1}else if(num===0){return 0}else{return 1}}function lerp(start,stop,amount){return(1-amount)*start+amount*stop}function clampInt(min,max,input){if(input<min){return min}else if(input>max){return max}return input}function clampDouble(min,max,input){if(input<min){return min}else if(input>max){return max}return input}function sanitizeDegreesInt(degrees){degrees=degrees%360;if(degrees<0){degrees=degrees+360}return degrees}function sanitizeDegreesDouble(degrees){degrees=degrees%360;if(degrees<0){degrees=degrees+360}return degrees}function rotationDirection(from,to){const increasingDifference=sanitizeDegreesDouble(to-from);return increasingDifference<=180?1:-1}function math_utils_differenceDegrees(a,b){return 180-Math.abs(Math.abs(a-b)-180)}function matrixMultiply(row,matrix){const a=row[0]*matrix[0][0]+row[1]*matrix[0][1]+row[2]*matrix[0][2];const b=row[0]*matrix[1][0]+row[1]*matrix[1][1]+row[2]*matrix[1][2];const c=row[0]*matrix[2][0]+row[1]*matrix[2][1]+row[2]*matrix[2][2];return[a,b,c]}const SRGB_TO_XYZ=[[.41233895,.35762064,.18051042],[.2126,.7152,.0722],[.01932141,.11916382,.95034478]];const XYZ_TO_SRGB=[[3.2413774792388685,-1.5376652402851851,-.49885366846268053],[-.9691452513005321,1.8758853451067872,.04156585616912061],[.05562093689691305,-.20395524564742123,1.0571799111220335]];const WHITE_POINT_D65=[95.047,100,108.883];function argbFromRgb(red,green,blue){return(255<<24|(red&255)<<16|(green&255)<<8|blue&255)>>>0}function argbFromLinrgb(linrgb){const r=color_utils_delinearized(linrgb[0]);const g=color_utils_delinearized(linrgb[1]);const b=color_utils_delinearized(linrgb[2]);return argbFromRgb(r,g,b)}function alphaFromArgb(argb){return argb>>24&255}function redFromArgb(argb){return argb>>16&255}function greenFromArgb(argb){return argb>>8&255}function blueFromArgb(argb){return argb&255}function isOpaque(argb){return alphaFromArgb(argb)>=255}function argbFromXyz(x,y,z){const matrix=XYZ_TO_SRGB;const linearR=matrix[0][0]*x+matrix[0][1]*y+matrix[0][2]*z;const linearG=matrix[1][0]*x+matrix[1][1]*y+matrix[1][2]*z;const linearB=matrix[2][0]*x+matrix[2][1]*y+matrix[2][2]*z;const r=color_utils_delinearized(linearR);const g=color_utils_delinearized(linearG);const b=color_utils_delinearized(linearB);return argbFromRgb(r,g,b)}function xyzFromArgb(argb){const r=linearized(redFromArgb(argb));const g=linearized(greenFromArgb(argb));const b=linearized(blueFromArgb(argb));return matrixMultiply([r,g,b],SRGB_TO_XYZ)}function argbFromLab(l,a,b){const whitePoint=WHITE_POINT_D65;const fy=(l+16)/116;const fx=a/500+fy;const fz=fy-b/200;const xNormalized=labInvf(fx);const yNormalized=labInvf(fy);const zNormalized=labInvf(fz);const x=xNormalized*whitePoint[0];const y=yNormalized*whitePoint[1];const z=zNormalized*whitePoint[2];return argbFromXyz(x,y,z)}function labFromArgb(argb){const linearR=linearized(redFromArgb(argb));const linearG=linearized(greenFromArgb(argb));const linearB=linearized(blueFromArgb(argb));const matrix=SRGB_TO_XYZ;const x=matrix[0][0]*linearR+matrix[0][1]*linearG+matrix[0][2]*linearB;const y=matrix[1][0]*linearR+matrix[1][1]*linearG+matrix[1][2]*linearB;const z=matrix[2][0]*linearR+matrix[2][1]*linearG+matrix[2][2]*linearB;const whitePoint=WHITE_POINT_D65;const xNormalized=x/whitePoint[0];const yNormalized=y/whitePoint[1];const zNormalized=z/whitePoint[2];const fx=labF(xNormalized);const fy=labF(yNormalized);const fz=labF(zNormalized);const l=116*fy-16;const a=500*(fx-fy);const b=200*(fy-fz);return[l,a,b]}function argbFromLstar(lstar){const y=yFromLstar(lstar);const component=color_utils_delinearized(y);return argbFromRgb(component,component,component)}function lstarFromArgb(argb){const y=xyzFromArgb(argb)[1];return 116*labF(y/100)-16}function yFromLstar(lstar){return 100*labInvf((lstar+16)/116)}function linearized(rgbComponent){const normalized=rgbComponent/255;if(normalized<=.040449936){return normalized/12.92*100}else{return Math.pow((normalized+.055)/1.055,2.4)*100}}function color_utils_delinearized(rgbComponent){const normalized=rgbComponent/100;let delinearized=0;if(normalized<=.0031308){delinearized=normalized*12.92}else{delinearized=1.055*Math.pow(normalized,1/2.4)-.055}return clampInt(0,255,Math.round(delinearized*255))}function whitePointD65(){return WHITE_POINT_D65}function labF(t){const e=216/24389;const kappa=24389/27;if(t>e){return Math.pow(t,1/3)}else{return(kappa*t+16)/116}}function labInvf(ft){const e=216/24389;const kappa=24389/27;const ft3=ft*ft*ft;if(ft3>e){return ft3}else{return(116*ft-16)/kappa}}class viewing_conditions_ViewingConditions{constructor(n,aw,nbb,ncb,c,nc,rgbD,fl,fLRoot,z){this.n=n;this.aw=aw;this.nbb=nbb;this.ncb=ncb;this.c=c;this.nc=nc;this.rgbD=rgbD;this.fl=fl;this.fLRoot=fLRoot;this.z=z}static make(){let whitePoint=arguments.length>0&&arguments[0]!==undefined?arguments[0]:whitePointD65();let adaptingLuminance=arguments.length>1&&arguments[1]!==undefined?arguments[1]:200/Math.PI*yFromLstar(50)/100;let backgroundLstar=arguments.length>2&&arguments[2]!==undefined?arguments[2]:50;let surround=arguments.length>3&&arguments[3]!==undefined?arguments[3]:2;let discountingIlluminant=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;const xyz=whitePoint;const rW=xyz[0]*.401288+xyz[1]*.650173+xyz[2]*-.051461;const gW=xyz[0]*-.250268+xyz[1]*1.204414+xyz[2]*.045854;const bW=xyz[0]*-.002079+xyz[1]*.048952+xyz[2]*.953127;const f=.8+surround/10;const c=f>=.9?lerp(.59,.69,(f-.9)*10):lerp(.525,.59,(f-.8)*10);let d=discountingIlluminant?1:f*(1-1/3.6*Math.exp((-adaptingLuminance-42)/92));d=d>1?1:d<0?0:d;const nc=f;const rgbD=[d*(100/rW)+1-d,d*(100/gW)+1-d,d*(100/bW)+1-d];const k=1/(5*adaptingLuminance+1);const k4=k*k*k*k;const k4F=1-k4;const fl=k4*adaptingLuminance+.1*k4F*k4F*Math.cbrt(5*adaptingLuminance);const n=yFromLstar(backgroundLstar)/whitePoint[1];const z=1.48+Math.sqrt(n);const nbb=.725/Math.pow(n,.2);const ncb=nbb;const rgbAFactors=[Math.pow(fl*rgbD[0]*rW/100,.42),Math.pow(fl*rgbD[1]*gW/100,.42),Math.pow(fl*rgbD[2]*bW/100,.42)];const rgbA=[400*rgbAFactors[0]/(rgbAFactors[0]+27.13),400*rgbAFactors[1]/(rgbAFactors[1]+27.13),400*rgbAFactors[2]/(rgbAFactors[2]+27.13)];const aw=(2*rgbA[0]+rgbA[1]+.05*rgbA[2])*nbb;return new viewing_conditions_ViewingConditions(n,aw,nbb,ncb,c,nc,rgbD,fl,Math.pow(fl,.25),z)}}viewing_conditions_ViewingConditions.DEFAULT=viewing_conditions_ViewingConditions.make();class cam16_Cam16{constructor(hue,chroma,j,q,m,s,jstar,astar,bstar){this.hue=hue;this.chroma=chroma;this.j=j;this.q=q;this.m=m;this.s=s;this.jstar=jstar;this.astar=astar;this.bstar=bstar}distance(other){const dJ=this.jstar-other.jstar;const dA=this.astar-other.astar;const dB=this.bstar-other.bstar;const dEPrime=Math.sqrt(dJ*dJ+dA*dA+dB*dB);const dE=1.41*Math.pow(dEPrime,.63);return dE}static fromInt(argb){return cam16_Cam16.fromIntInViewingConditions(argb,viewing_conditions_ViewingConditions.DEFAULT)}static fromIntInViewingConditions(argb,viewingConditions){const red=(argb&16711680)>>16;const green=(argb&65280)>>8;const blue=argb&255;const redL=linearized(red);const greenL=linearized(green);const blueL=linearized(blue);const x=.41233895*redL+.35762064*greenL+.18051042*blueL;const y=.2126*redL+.7152*greenL+.0722*blueL;const z=.01932141*redL+.11916382*greenL+.95034478*blueL;const rC=.401288*x+.650173*y-.051461*z;const gC=-.250268*x+1.204414*y+.045854*z;const bC=-.002079*x+.048952*y+.953127*z;const rD=viewingConditions.rgbD[0]*rC;const gD=viewingConditions.rgbD[1]*gC;const bD=viewingConditions.rgbD[2]*bC;const rAF=Math.pow(viewingConditions.fl*Math.abs(rD)/100,.42);const gAF=Math.pow(viewingConditions.fl*Math.abs(gD)/100,.42);const bAF=Math.pow(viewingConditions.fl*Math.abs(bD)/100,.42);const rA=signum(rD)*400*rAF/(rAF+27.13);const gA=signum(gD)*400*gAF/(gAF+27.13);const bA=signum(bD)*400*bAF/(bAF+27.13);const a=(11*rA+-12*gA+bA)/11;const b=(rA+gA-2*bA)/9;const u=(20*rA+20*gA+21*bA)/20;const p2=(40*rA+20*gA+bA)/20;const atan2=Math.atan2(b,a);const atanDegrees=atan2*180/Math.PI;const hue=atanDegrees<0?atanDegrees+360:atanDegrees>=360?atanDegrees-360:atanDegrees;const hueRadians=hue*Math.PI/180;const ac=p2*viewingConditions.nbb;const j=100*Math.pow(ac/viewingConditions.aw,viewingConditions.c*viewingConditions.z);const q=4/viewingConditions.c*Math.sqrt(j/100)*(viewingConditions.aw+4)*viewingConditions.fLRoot;const huePrime=hue<20.14?hue+360:hue;const eHue=.25*(Math.cos(huePrime*Math.PI/180+2)+3.8);const p1=5e4/13*eHue*viewingConditions.nc*viewingConditions.ncb;const t=p1*Math.sqrt(a*a+b*b)/(u+.305);const alpha=Math.pow(t,.9)*Math.pow(1.64-Math.pow(.29,viewingConditions.n),.73);const c=alpha*Math.sqrt(j/100);const m=c*viewingConditions.fLRoot;const s=50*Math.sqrt(alpha*viewingConditions.c/(viewingConditions.aw+4));const jstar=(1+100*.007)*j/(1+.007*j);const mstar=1/.0228*Math.log(1+.0228*m);const astar=mstar*Math.cos(hueRadians);const bstar=mstar*Math.sin(hueRadians);return new cam16_Cam16(hue,c,j,q,m,s,jstar,astar,bstar)}static fromJch(j,c,h){return cam16_Cam16.fromJchInViewingConditions(j,c,h,viewing_conditions_ViewingConditions.DEFAULT)}static fromJchInViewingConditions(j,c,h,viewingConditions){const q=4/viewingConditions.c*Math.sqrt(j/100)*(viewingConditions.aw+4)*viewingConditions.fLRoot;const m=c*viewingConditions.fLRoot;const alpha=c/Math.sqrt(j/100);const s=50*Math.sqrt(alpha*viewingConditions.c/(viewingConditions.aw+4));const hueRadians=h*Math.PI/180;const jstar=(1+100*.007)*j/(1+.007*j);const mstar=1/.0228*Math.log(1+.0228*m);const astar=mstar*Math.cos(hueRadians);const bstar=mstar*Math.sin(hueRadians);return new cam16_Cam16(h,c,j,q,m,s,jstar,astar,bstar)}static fromUcs(jstar,astar,bstar){return cam16_Cam16.fromUcsInViewingConditions(jstar,astar,bstar,viewing_conditions_ViewingConditions.DEFAULT)}static fromUcsInViewingConditions(jstar,astar,bstar,viewingConditions){const a=astar;const b=bstar;const m=Math.sqrt(a*a+b*b);const M=(Math.exp(m*.0228)-1)/.0228;const c=M/viewingConditions.fLRoot;let h=Math.atan2(b,a)*(180/Math.PI);if(h<0){h+=360}const j=jstar/(1-(jstar-100)*.007);return cam16_Cam16.fromJchInViewingConditions(j,c,h,viewingConditions)}toInt(){return this.viewed(viewing_conditions_ViewingConditions.DEFAULT)}viewed(viewingConditions){const alpha=this.chroma===0||this.j===0?0:this.chroma/Math.sqrt(this.j/100);const t=Math.pow(alpha/Math.pow(1.64-Math.pow(.29,viewingConditions.n),.73),1/.9);const hRad=this.hue*Math.PI/180;const eHue=.25*(Math.cos(hRad+2)+3.8);const ac=viewingConditions.aw*Math.pow(this.j/100,1/viewingConditions.c/viewingConditions.z);const p1=eHue*(5e4/13)*viewingConditions.nc*viewingConditions.ncb;const p2=ac/viewingConditions.nbb;const hSin=Math.sin(hRad);const hCos=Math.cos(hRad);const gamma=23*(p2+.305)*t/(23*p1+11*t*hCos+108*t*hSin);const a=gamma*hCos;const b=gamma*hSin;const rA=(460*p2+451*a+288*b)/1403;const gA=(460*p2-891*a-261*b)/1403;const bA=(460*p2-220*a-6300*b)/1403;const rCBase=Math.max(0,27.13*Math.abs(rA)/(400-Math.abs(rA)));const rC=signum(rA)*(100/viewingConditions.fl)*Math.pow(rCBase,1/.42);const gCBase=Math.max(0,27.13*Math.abs(gA)/(400-Math.abs(gA)));const gC=signum(gA)*(100/viewingConditions.fl)*Math.pow(gCBase,1/.42);const bCBase=Math.max(0,27.13*Math.abs(bA)/(400-Math.abs(bA)));const bC=signum(bA)*(100/viewingConditions.fl)*Math.pow(bCBase,1/.42);const rF=rC/viewingConditions.rgbD[0];const gF=gC/viewingConditions.rgbD[1];const bF=bC/viewingConditions.rgbD[2];const x=1.86206786*rF-1.01125463*gF+.14918677*bF;const y=.38752654*rF+.62144744*gF-.00897398*bF;const z=-.0158415*rF-.03412294*gF+1.04996444*bF;const argb=argbFromXyz(x,y,z);return argb}}class hct_solver_HctSolver{static sanitizeRadians(angle){return(angle+Math.PI*8)%(Math.PI*2)}static trueDelinearized(rgbComponent){const normalized=rgbComponent/100;let delinearized=0;if(normalized<=.0031308){delinearized=normalized*12.92}else{delinearized=1.055*Math.pow(normalized,1/2.4)-.055}return delinearized*255}static chromaticAdaptation(component){const af=Math.pow(Math.abs(component),.42);return signum(component)*400*af/(af+27.13)}static hueOf(linrgb){const scaledDiscount=matrixMultiply(linrgb,hct_solver_HctSolver.SCALED_DISCOUNT_FROM_LINRGB);const rA=hct_solver_HctSolver.chromaticAdaptation(scaledDiscount[0]);const gA=hct_solver_HctSolver.chromaticAdaptation(scaledDiscount[1]);const bA=hct_solver_HctSolver.chromaticAdaptation(scaledDiscount[2]);const a=(11*rA+-12*gA+bA)/11;const b=(rA+gA-2*bA)/9;return Math.atan2(b,a)}static areInCyclicOrder(a,b,c){const deltaAB=hct_solver_HctSolver.sanitizeRadians(b-a);const deltaAC=hct_solver_HctSolver.sanitizeRadians(c-a);return deltaAB<deltaAC}static intercept(source,mid,target){return(mid-source)/(target-source)}static lerpPoint(source,t,target){return[source[0]+(target[0]-source[0])*t,source[1]+(target[1]-source[1])*t,source[2]+(target[2]-source[2])*t]}static setCoordinate(source,coordinate,target,axis){const t=hct_solver_HctSolver.intercept(source[axis],coordinate,target[axis]);return hct_solver_HctSolver.lerpPoint(source,t,target)}static isBounded(x){return 0<=x&&x<=100}static nthVertex(y,n){const kR=hct_solver_HctSolver.Y_FROM_LINRGB[0];const kG=hct_solver_HctSolver.Y_FROM_LINRGB[1];const kB=hct_solver_HctSolver.Y_FROM_LINRGB[2];const coordA=n%4<=1?0:100;const coordB=n%2===0?0:100;if(n<4){const g=coordA;const b=coordB;const r=(y-g*kG-b*kB)/kR;if(hct_solver_HctSolver.isBounded(r)){return[r,g,b]}else{return[-1,-1,-1]}}else if(n<8){const b=coordA;const r=coordB;const g=(y-r*kR-b*kB)/kG;if(hct_solver_HctSolver.isBounded(g)){return[r,g,b]}else{return[-1,-1,-1]}}else{const r=coordA;const g=coordB;const b=(y-r*kR-g*kG)/kB;if(hct_solver_HctSolver.isBounded(b)){return[r,g,b]}else{return[-1,-1,-1]}}}static bisectToSegment(y,targetHue){let left=[-1,-1,-1];let right=left;let leftHue=0;let rightHue=0;let initialized=false;let uncut=true;for(let n=0;n<12;n++){const mid=hct_solver_HctSolver.nthVertex(y,n);if(mid[0]<0){continue}const midHue=hct_solver_HctSolver.hueOf(mid);if(!initialized){left=mid;right=mid;leftHue=midHue;rightHue=midHue;initialized=true;continue}if(uncut||hct_solver_HctSolver.areInCyclicOrder(leftHue,midHue,rightHue)){uncut=false;if(hct_solver_HctSolver.areInCyclicOrder(leftHue,targetHue,midHue)){right=mid;rightHue=midHue}else{left=mid;leftHue=midHue}}}return[left,right]}static midpoint(a,b){return[(a[0]+b[0])/2,(a[1]+b[1])/2,(a[2]+b[2])/2]}static criticalPlaneBelow(x){return Math.floor(x-.5)}static criticalPlaneAbove(x){return Math.ceil(x-.5)}static bisectToLimit(y,targetHue){const segment=hct_solver_HctSolver.bisectToSegment(y,targetHue);let left=segment[0];let leftHue=hct_solver_HctSolver.hueOf(left);let right=segment[1];for(let axis=0;axis<3;axis++){if(left[axis]!==right[axis]){let lPlane=-1;let rPlane=255;if(left[axis]<right[axis]){lPlane=hct_solver_HctSolver.criticalPlaneBelow(hct_solver_HctSolver.trueDelinearized(left[axis]));rPlane=hct_solver_HctSolver.criticalPlaneAbove(hct_solver_HctSolver.trueDelinearized(right[axis]))}else{lPlane=hct_solver_HctSolver.criticalPlaneAbove(hct_solver_HctSolver.trueDelinearized(left[axis]));rPlane=hct_solver_HctSolver.criticalPlaneBelow(hct_solver_HctSolver.trueDelinearized(right[axis]))}for(let i=0;i<8;i++){if(Math.abs(rPlane-lPlane)<=1){break}else{const mPlane=Math.floor((lPlane+rPlane)/2);const midPlaneCoordinate=hct_solver_HctSolver.CRITICAL_PLANES[mPlane];const mid=hct_solver_HctSolver.setCoordinate(left,midPlaneCoordinate,right,axis);const midHue=hct_solver_HctSolver.hueOf(mid);if(hct_solver_HctSolver.areInCyclicOrder(leftHue,targetHue,midHue)){right=mid;rPlane=mPlane}else{left=mid;leftHue=midHue;lPlane=mPlane}}}}}return hct_solver_HctSolver.midpoint(left,right)}static inverseChromaticAdaptation(adapted){const adaptedAbs=Math.abs(adapted);const base=Math.max(0,27.13*adaptedAbs/(400-adaptedAbs));return signum(adapted)*Math.pow(base,1/.42)}static findResultByJ(hueRadians,chroma,y){let j=Math.sqrt(y)*11;const viewingConditions=viewing_conditions_ViewingConditions.DEFAULT;const tInnerCoeff=1/Math.pow(1.64-Math.pow(.29,viewingConditions.n),.73);const eHue=.25*(Math.cos(hueRadians+2)+3.8);const p1=eHue*(5e4/13)*viewingConditions.nc*viewingConditions.ncb;const hSin=Math.sin(hueRadians);const hCos=Math.cos(hueRadians);for(let iterationRound=0;iterationRound<5;iterationRound++){const jNormalized=j/100;const alpha=chroma===0||j===0?0:chroma/Math.sqrt(jNormalized);const t=Math.pow(alpha*tInnerCoeff,1/.9);const ac=viewingConditions.aw*Math.pow(jNormalized,1/viewingConditions.c/viewingConditions.z);const p2=ac/viewingConditions.nbb;const gamma=23*(p2+.305)*t/(23*p1+11*t*hCos+108*t*hSin);const a=gamma*hCos;const b=gamma*hSin;const rA=(460*p2+451*a+288*b)/1403;const gA=(460*p2-891*a-261*b)/1403;const bA=(460*p2-220*a-6300*b)/1403;const rCScaled=hct_solver_HctSolver.inverseChromaticAdaptation(rA);const gCScaled=hct_solver_HctSolver.inverseChromaticAdaptation(gA);const bCScaled=hct_solver_HctSolver.inverseChromaticAdaptation(bA);const linrgb=matrixMultiply([rCScaled,gCScaled,bCScaled],hct_solver_HctSolver.LINRGB_FROM_SCALED_DISCOUNT);if(linrgb[0]<0||linrgb[1]<0||linrgb[2]<0){return 0}const kR=hct_solver_HctSolver.Y_FROM_LINRGB[0];const kG=hct_solver_HctSolver.Y_FROM_LINRGB[1];const kB=hct_solver_HctSolver.Y_FROM_LINRGB[2];const fnj=kR*linrgb[0]+kG*linrgb[1]+kB*linrgb[2];if(fnj<=0){return 0}if(iterationRound===4||Math.abs(fnj-y)<.002){if(linrgb[0]>100.01||linrgb[1]>100.01||linrgb[2]>100.01){return 0}return argbFromLinrgb(linrgb)}j=j-(fnj-y)*j/(2*fnj)}return 0}static solveToInt(hueDegrees,chroma,lstar){if(chroma<1e-4||lstar<1e-4||lstar>99.9999){return argbFromLstar(lstar)}hueDegrees=sanitizeDegreesDouble(hueDegrees);const hueRadians=hueDegrees/180*Math.PI;const y=yFromLstar(lstar);const exactAnswer=hct_solver_HctSolver.findResultByJ(hueRadians,chroma,y);if(exactAnswer!==0){return exactAnswer}const linrgb=hct_solver_HctSolver.bisectToLimit(y,hueRadians);return argbFromLinrgb(linrgb)}static solveToCam(hueDegrees,chroma,lstar){return cam16_Cam16.fromInt(hct_solver_HctSolver.solveToInt(hueDegrees,chroma,lstar))}}hct_solver_HctSolver.SCALED_DISCOUNT_FROM_LINRGB=[[.001200833568784504,.002389694492170889,.0002795742885861124],[.0005891086651375999,.0029785502573438758,.0003270666104008398],[.00010146692491640572,.0005364214359186694,.0032979401770712076]];hct_solver_HctSolver.LINRGB_FROM_SCALED_DISCOUNT=[[1373.2198709594231,-1100.4251190754821,-7.278681089101213],[-271.815969077903,559.6580465940733,-32.46047482791194],[1.9622899599665666,-57.173814538844006,308.7233197812385]];hct_solver_HctSolver.Y_FROM_LINRGB=[.2126,.7152,.0722];hct_solver_HctSolver.CRITICAL_PLANES=[.015176349177441876,.045529047532325624,.07588174588720938,.10623444424209313,.13658714259697685,.16693984095186062,.19729253930674434,.2276452376616281,.2579979360165119,.28835063437139563,.3188300904430532,.350925934958123,.3848314933096426,.42057480301049466,.458183274052838,.4976837250274023,.5391024159806381,.5824650784040898,.6277969426914107,.6751227633498623,.7244668422128921,.775853049866786,.829304845476233,.8848452951698498,.942497089126609,1.0022825574869039,1.0642236851973577,1.1283421258858297,1.1946592148522128,1.2631959812511864,1.3339731595349034,1.407011200216447,1.4823302800086415,1.5599503113873272,1.6398909516233677,1.7221716113234105,1.8068114625156377,1.8938294463134073,1.9832442801866852,2.075074464868551,2.1693382909216234,2.2660538449872063,2.36523901573795,2.4669114995532007,2.5710888059345764,2.6777882626779785,2.7870270208169257,2.898822059350997,3.0131901897720907,3.1301480604002863,3.2497121605402226,3.3718988244681087,3.4967242352587946,3.624204428461639,3.754355295633311,3.887192587735158,4.022731918402185,4.160988767090289,4.301978482107941,4.445716283538092,4.592217266055746,4.741496401646282,4.893568542229298,5.048448422192488,5.20615066083972,5.3666897647573375,5.5300801301023865,5.696336044816294,5.865471690767354,6.037501145825082,6.212438385869475,6.390297286737924,6.571091626112461,6.7548350853498045,6.941541251256611,7.131223617812143,7.323895587840543,7.5195704746346665,7.7182615035334345,7.919981813454504,8.124744458384042,8.332562408825165,8.543448553206703,8.757415699253682,8.974476575321063,9.194643831691977,9.417930041841839,9.644347703669503,9.873909240696694,10.106627003236781,10.342513269534024,10.58158024687427,10.8238400726681,11.069304815507364,11.317986476196008,11.569896988756009,11.825048221409341,12.083451977536606,12.345119996613247,12.610063955123938,12.878295467455942,13.149826086772048,13.42466730586372,13.702830557985108,13.984327217668513,14.269168601521828,14.55736596900856,14.848930523210871,15.143873411576273,15.44220572664832,15.743938506781891,16.04908273684337,16.35764934889634,16.66964922287304,16.985093187232053,17.30399201960269,17.62635644741625,17.95219714852476,18.281524751807332,18.614349837764564,18.95068293910138,19.290534541298456,19.633915083172692,19.98083495742689,20.331304511189067,20.685334046541502,21.042933821039977,21.404114048223256,21.76888489811322,22.137256497705877,22.50923893145328,22.884842241736916,23.264076429332462,23.6469514538663,24.033477234264016,24.42366364919083,24.817520537484558,25.21505769858089,25.61628489293138,26.021211842414342,26.429848230738664,26.842203703840827,27.258287870275353,27.678110301598522,28.10168053274597,28.529008062403893,28.96010235337422,29.39497283293396,29.83362889318845,30.276079891419332,30.722335150426627,31.172403958865512,31.62629557157785,32.08401920991837,32.54558406207592,33.010999283389665,33.4802739966603,33.953417292456834,34.430438229418264,34.911345834551085,35.39614910352207,35.88485700094671,36.37747846067349,36.87402238606382,37.37449765026789,37.87891309649659,38.38727753828926,38.89959975977785,39.41588851594697,39.93615253289054,40.460400508064545,40.98864111053629,41.520882981230194,42.05713473317016,42.597404951718396,43.141702194811224,43.6900349931913,44.24241185063697,44.798841244188324,45.35933162437017,45.92389141541209,46.49252901546552,47.065252796817916,47.64207110610409,48.22299226451468,48.808024568002054,49.3971762874833,49.9904556690408,50.587870934119984,51.189430279724725,51.79514187861014,52.40501387947288,53.0190544071392,53.637271562750364,54.259673423945976,54.88626804504493,55.517063457223934,56.15206766869424,56.79128866487574,57.43473440856916,58.08241284012621,58.734331877617365,59.39049941699807,60.05092333227251,60.715611475655585,61.38457167773311,62.057811747619894,62.7353394731159,63.417162620860914,64.10328893648692,64.79372614476921,65.48848194977529,66.18756403501224,66.89098006357258,67.59873767827808,68.31084450182222,69.02730813691093,69.74813616640164,70.47333615344107,71.20291564160104,71.93688215501312,72.67524319850172,73.41800625771542,74.16517879925733,74.9167682708136,75.67278210128072,76.43322770089146,77.1981124613393,77.96744375590167,78.74122893956174,79.51947534912904,80.30219030335869,81.08938110306934,81.88105503125999,82.67721935322541,83.4778813166706,84.28304815182372,85.09272707154808,85.90692527145302,86.72564993000343,87.54890820862819,88.3767072518277,89.2090541872801,90.04595612594655,90.88742016217518,91.73345337380438,92.58406282226491,93.43925555268066,94.29903859396902,95.16341895893969,96.03240364439274,96.9059996312159,97.78421388448044,98.6670533535366,99.55452497210776];class hct_Hct{constructor(argb){this.argb=argb;const cam=cam16_Cam16.fromInt(argb);this.internalHue=cam.hue;this.internalChroma=cam.chroma;this.internalTone=lstarFromArgb(argb);this.argb=argb}static from(hue,chroma,tone){return new hct_Hct(hct_solver_HctSolver.solveToInt(hue,chroma,tone))}static fromInt(argb){return new hct_Hct(argb)}toInt(){return this.argb}get hue(){return this.internalHue}set hue(newHue){this.setInternalState(hct_solver_HctSolver.solveToInt(newHue,this.internalChroma,this.internalTone))}get chroma(){return this.internalChroma}set chroma(newChroma){this.setInternalState(hct_solver_HctSolver.solveToInt(this.internalHue,newChroma,this.internalTone))}get tone(){return this.internalTone}set tone(newTone){this.setInternalState(hct_solver_HctSolver.solveToInt(this.internalHue,this.internalChroma,newTone))}setInternalState(argb){const cam=cam16_Cam16.fromInt(argb);this.internalHue=cam.hue;this.internalChroma=cam.chroma;this.internalTone=lstarFromArgb(argb);this.argb=argb}}class blend_Blend{static harmonize(designColor,sourceColor){const fromHct=hct_Hct.fromInt(designColor);const toHct=hct_Hct.fromInt(sourceColor);const differenceDegrees=math_utils_differenceDegrees(fromHct.hue,toHct.hue);const rotationDegrees=Math.min(differenceDegrees*.5,15);const outputHue=sanitizeDegreesDouble(fromHct.hue+rotationDegrees*rotationDirection(fromHct.hue,toHct.hue));return hct_Hct.from(outputHue,fromHct.chroma,fromHct.tone).toInt()}static hctHue(from,to,amount){const ucs=blend_Blend.cam16Ucs(from,to,amount);const ucsCam=cam16_Cam16.fromInt(ucs);const fromCam=cam16_Cam16.fromInt(from);const blended=hct_Hct.from(ucsCam.hue,fromCam.chroma,lstarFromArgb(from));return blended.toInt()}static cam16Ucs(from,to,amount){const fromCam=cam16_Cam16.fromInt(from);const toCam=cam16_Cam16.fromInt(to);const fromJ=fromCam.jstar;const fromA=fromCam.astar;const fromB=fromCam.bstar;const toJ=toCam.jstar;const toA=toCam.astar;const toB=toCam.bstar;const jstar=fromJ+(toJ-fromJ)*amount;const astar=fromA+(toA-fromA)*amount;const bstar=fromB+(toB-fromB)*amount;return cam16_Cam16.fromUcs(jstar,astar,bstar).toInt()}}class tonal_palette_TonalPalette{constructor(hue,chroma){this.hue=hue;this.chroma=chroma;this.cache=new Map}static fromInt(argb){const hct=hct_Hct.fromInt(argb);return tonal_palette_TonalPalette.fromHueAndChroma(hct.hue,hct.chroma)}static fromHueAndChroma(hue,chroma){return new tonal_palette_TonalPalette(hue,chroma)}tone(tone){let argb=this.cache.get(tone);if(argb===undefined){argb=hct_Hct.from(this.hue,this.chroma,tone).toInt();this.cache.set(tone,argb)}return argb}}class core_palette_CorePalette{constructor(argb,isContent){const hct=hct_Hct.fromInt(argb);const hue=hct.hue;const chroma=hct.chroma;if(isContent){this.a1=tonal_palette_TonalPalette.fromHueAndChroma(hue,chroma);this.a2=tonal_palette_TonalPalette.fromHueAndChroma(hue,chroma/3);this.a3=tonal_palette_TonalPalette.fromHueAndChroma(hue+60,chroma/2);this.n1=tonal_palette_TonalPalette.fromHueAndChroma(hue,Math.min(chroma/12,4));this.n2=tonal_palette_TonalPalette.fromHueAndChroma(hue,Math.min(chroma/6,8))}else{this.a1=tonal_palette_TonalPalette.fromHueAndChroma(hue,Math.max(48,chroma));this.a2=tonal_palette_TonalPalette.fromHueAndChroma(hue,16);this.a3=tonal_palette_TonalPalette.fromHueAndChroma(hue+60,24);this.n1=tonal_palette_TonalPalette.fromHueAndChroma(hue,4);this.n2=tonal_palette_TonalPalette.fromHueAndChroma(hue,8)}this.error=tonal_palette_TonalPalette.fromHueAndChroma(25,84)}static of(argb){return new core_palette_CorePalette(argb,false)}static contentOf(argb){return new core_palette_CorePalette(argb,true)}}var point_provider=__webpack_require__(143);class lab_point_provider_LabPointProvider{fromInt(argb){return labFromArgb(argb)}toInt(point){return argbFromLab(point[0],point[1],point[2])}distance(from,to){const dL=from[0]-to[0];const dA=from[1]-to[1];const dB=from[2]-to[2];return dL*dL+dA*dA+dB*dB}}const MAX_ITERATIONS=10;const MIN_MOVEMENT_DISTANCE=3;class quantizer_wsmeans_QuantizerWsmeans{static quantize(inputPixels,startingClusters,maxColors){const pixelToCount=new Map;const points=new Array;const pixels=new Array;const pointProvider=new lab_point_provider_LabPointProvider;let pointCount=0;for(let i=0;i<inputPixels.length;i++){const inputPixel=inputPixels[i];const pixelCount=pixelToCount.get(inputPixel);if(pixelCount===undefined){pointCount++;points.push(pointProvider.fromInt(inputPixel));pixels.push(inputPixel);pixelToCount.set(inputPixel,1)}else{pixelToCount.set(inputPixel,pixelCount+1)}}const counts=new Array;for(let i=0;i<pointCount;i++){const pixel=pixels[i];const count=pixelToCount.get(pixel);if(count!==undefined){counts[i]=count}}let clusterCount=Math.min(maxColors,pointCount);if(startingClusters.length>0){clusterCount=Math.min(clusterCount,startingClusters.length)}const clusters=new Array;for(let i=0;i<startingClusters.length;i++){clusters.push(pointProvider.fromInt(startingClusters[i]))}const additionalClustersNeeded=clusterCount-clusters.length;if(startingClusters.length===0&&additionalClustersNeeded>0){for(let i=0;i<additionalClustersNeeded;i++){const l=Math.random()*100;const a=Math.random()*(100- -100+1)+-100;const b=Math.random()*(100- -100+1)+-100;clusters.push(new Array(l,a,b))}}const clusterIndices=new Array;for(let i=0;i<pointCount;i++){clusterIndices.push(Math.floor(Math.random()*clusterCount))}const indexMatrix=new Array;for(let i=0;i<clusterCount;i++){indexMatrix.push(new Array);for(let j=0;j<clusterCount;j++){indexMatrix[i].push(0)}}const distanceToIndexMatrix=new Array;for(let i=0;i<clusterCount;i++){distanceToIndexMatrix.push(new Array);for(let j=0;j<clusterCount;j++){distanceToIndexMatrix[i].push(new DistanceAndIndex)}}const pixelCountSums=new Array;for(let i=0;i<clusterCount;i++){pixelCountSums.push(0)}for(let iteration=0;iteration<MAX_ITERATIONS;iteration++){for(let i=0;i<clusterCount;i++){for(let j=i+1;j<clusterCount;j++){const distance=pointProvider.distance(clusters[i],clusters[j]);distanceToIndexMatrix[j][i].distance=distance;distanceToIndexMatrix[j][i].index=i;distanceToIndexMatrix[i][j].distance=distance;distanceToIndexMatrix[i][j].index=j}distanceToIndexMatrix[i].sort();for(let j=0;j<clusterCount;j++){indexMatrix[i][j]=distanceToIndexMatrix[i][j].index}}let pointsMoved=0;for(let i=0;i<pointCount;i++){const point=points[i];const previousClusterIndex=clusterIndices[i];const previousCluster=clusters[previousClusterIndex];const previousDistance=pointProvider.distance(point,previousCluster);let minimumDistance=previousDistance;let newClusterIndex=-1;for(let j=0;j<clusterCount;j++){if(distanceToIndexMatrix[previousClusterIndex][j].distance>=4*previousDistance){continue}const distance=pointProvider.distance(point,clusters[j]);if(distance<minimumDistance){minimumDistance=distance;newClusterIndex=j}}if(newClusterIndex!==-1){const distanceChange=Math.abs(Math.sqrt(minimumDistance)-Math.sqrt(previousDistance));if(distanceChange>MIN_MOVEMENT_DISTANCE){pointsMoved++;clusterIndices[i]=newClusterIndex}}}if(pointsMoved===0&&iteration!==0){break}const componentASums=new Array(clusterCount).fill(0);const componentBSums=new Array(clusterCount).fill(0);const componentCSums=new Array(clusterCount).fill(0);for(let i=0;i<clusterCount;i++){pixelCountSums[i]=0}for(let i=0;i<pointCount;i++){const clusterIndex=clusterIndices[i];const point=points[i];const count=counts[i];pixelCountSums[clusterIndex]+=count;componentASums[clusterIndex]+=point[0]*count;componentBSums[clusterIndex]+=point[1]*count;componentCSums[clusterIndex]+=point[2]*count}for(let i=0;i<clusterCount;i++){const count=pixelCountSums[i];if(count===0){clusters[i]=[0,0,0];continue}const a=componentASums[i]/count;const b=componentBSums[i]/count;const c=componentCSums[i]/count;clusters[i]=[a,b,c]}}const argbToPopulation=new Map;for(let i=0;i<clusterCount;i++){const count=pixelCountSums[i];if(count===0){continue}const possibleNewCluster=pointProvider.toInt(clusters[i]);if(argbToPopulation.has(possibleNewCluster)){continue}argbToPopulation.set(possibleNewCluster,count)}return argbToPopulation}}class DistanceAndIndex{constructor(){this.distance=-1;this.index=-1}}class quantizer_map_QuantizerMap{static quantize(pixels){var _a;const countByColor=new Map;for(let i=0;i<pixels.length;i++){const pixel=pixels[i];const alpha=alphaFromArgb(pixel);if(alpha<255){continue}countByColor.set(pixel,((_a=countByColor.get(pixel))!==null&&_a!==void 0?_a:0)+1)}return countByColor}}const INDEX_BITS=5;const SIDE_LENGTH=33;const TOTAL_SIZE=35937;const directions={RED:"red",GREEN:"green",BLUE:"blue"};class quantizer_wu_QuantizerWu{constructor(){let weights=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];let momentsR=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];let momentsG=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];let momentsB=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];let moments=arguments.length>4&&arguments[4]!==undefined?arguments[4]:[];let cubes=arguments.length>5&&arguments[5]!==undefined?arguments[5]:[];this.weights=weights;this.momentsR=momentsR;this.momentsG=momentsG;this.momentsB=momentsB;this.moments=moments;this.cubes=cubes}quantize(pixels,maxColors){this.constructHistogram(pixels);this.computeMoments();const createBoxesResult=this.createBoxes(maxColors);const results=this.createResult(createBoxesResult.resultCount);return results}constructHistogram(pixels){var _a;this.weights=Array.from({length:TOTAL_SIZE}).fill(0);this.momentsR=Array.from({length:TOTAL_SIZE}).fill(0);this.momentsG=Array.from({length:TOTAL_SIZE}).fill(0);this.momentsB=Array.from({length:TOTAL_SIZE}).fill(0);this.moments=Array.from({length:TOTAL_SIZE}).fill(0);const countByColor=quantizer_map_QuantizerMap.quantize(pixels);for(const[pixel,count]of countByColor.entries()){const red=redFromArgb(pixel);const green=greenFromArgb(pixel);const blue=blueFromArgb(pixel);const bitsToRemove=8-INDEX_BITS;const iR=(red>>bitsToRemove)+1;const iG=(green>>bitsToRemove)+1;const iB=(blue>>bitsToRemove)+1;const index=this.getIndex(iR,iG,iB);this.weights[index]=((_a=this.weights[index])!==null&&_a!==void 0?_a:0)+count;this.momentsR[index]+=count*red;this.momentsG[index]+=count*green;this.momentsB[index]+=count*blue;this.moments[index]+=count*(red*red+green*green+blue*blue)}}computeMoments(){for(let r=1;r<SIDE_LENGTH;r++){const area=Array.from({length:SIDE_LENGTH}).fill(0);const areaR=Array.from({length:SIDE_LENGTH}).fill(0);const areaG=Array.from({length:SIDE_LENGTH}).fill(0);const areaB=Array.from({length:SIDE_LENGTH}).fill(0);const area2=Array.from({length:SIDE_LENGTH}).fill(0);for(let g=1;g<SIDE_LENGTH;g++){let line=0;let lineR=0;let lineG=0;let lineB=0;let line2=0;for(let b=1;b<SIDE_LENGTH;b++){const index=this.getIndex(r,g,b);line+=this.weights[index];lineR+=this.momentsR[index];lineG+=this.momentsG[index];lineB+=this.momentsB[index];line2+=this.moments[index];area[b]+=line;areaR[b]+=lineR;areaG[b]+=lineG;areaB[b]+=lineB;area2[b]+=line2;const previousIndex=this.getIndex(r-1,g,b);this.weights[index]=this.weights[previousIndex]+area[b];this.momentsR[index]=this.momentsR[previousIndex]+areaR[b];this.momentsG[index]=this.momentsG[previousIndex]+areaG[b];this.momentsB[index]=this.momentsB[previousIndex]+areaB[b];this.moments[index]=this.moments[previousIndex]+area2[b]}}}}createBoxes(maxColors){this.cubes=Array.from({length:maxColors}).fill(0).map((()=>new Box));const volumeVariance=Array.from({length:maxColors}).fill(0);this.cubes[0].r0=0;this.cubes[0].g0=0;this.cubes[0].b0=0;this.cubes[0].r1=SIDE_LENGTH-1;this.cubes[0].g1=SIDE_LENGTH-1;this.cubes[0].b1=SIDE_LENGTH-1;let generatedColorCount=maxColors;let next=0;for(let i=1;i<maxColors;i++){if(this.cut(this.cubes[next],this.cubes[i])){volumeVariance[next]=this.cubes[next].vol>1?this.variance(this.cubes[next]):0;volumeVariance[i]=this.cubes[i].vol>1?this.variance(this.cubes[i]):0}else{volumeVariance[next]=0;i--}next=0;let temp=volumeVariance[0];for(let j=1;j<=i;j++){if(volumeVariance[j]>temp){temp=volumeVariance[j];next=j}}if(temp<=0){generatedColorCount=i+1;break}}return new CreateBoxesResult(maxColors,generatedColorCount)}createResult(colorCount){const colors=[];for(let i=0;i<colorCount;++i){const cube=this.cubes[i];const weight=this.volume(cube,this.weights);if(weight>0){const r=Math.round(this.volume(cube,this.momentsR)/weight);const g=Math.round(this.volume(cube,this.momentsG)/weight);const b=Math.round(this.volume(cube,this.momentsB)/weight);const color=255<<24|(r&255)<<16|(g&255)<<8|b&255;colors.push(color)}}return colors}variance(cube){const dr=this.volume(cube,this.momentsR);const dg=this.volume(cube,this.momentsG);const db=this.volume(cube,this.momentsB);const xx=this.moments[this.getIndex(cube.r1,cube.g1,cube.b1)]-this.moments[this.getIndex(cube.r1,cube.g1,cube.b0)]-this.moments[this.getIndex(cube.r1,cube.g0,cube.b1)]+this.moments[this.getIndex(cube.r1,cube.g0,cube.b0)]-this.moments[this.getIndex(cube.r0,cube.g1,cube.b1)]+this.moments[this.getIndex(cube.r0,cube.g1,cube.b0)]+this.moments[this.getIndex(cube.r0,cube.g0,cube.b1)]-this.moments[this.getIndex(cube.r0,cube.g0,cube.b0)];const hypotenuse=dr*dr+dg*dg+db*db;const volume=this.volume(cube,this.weights);return xx-hypotenuse/volume}cut(one,two){const wholeR=this.volume(one,this.momentsR);const wholeG=this.volume(one,this.momentsG);const wholeB=this.volume(one,this.momentsB);const wholeW=this.volume(one,this.weights);const maxRResult=this.maximize(one,directions.RED,one.r0+1,one.r1,wholeR,wholeG,wholeB,wholeW);const maxGResult=this.maximize(one,directions.GREEN,one.g0+1,one.g1,wholeR,wholeG,wholeB,wholeW);const maxBResult=this.maximize(one,directions.BLUE,one.b0+1,one.b1,wholeR,wholeG,wholeB,wholeW);let direction;const maxR=maxRResult.maximum;const maxG=maxGResult.maximum;const maxB=maxBResult.maximum;if(maxR>=maxG&&maxR>=maxB){if(maxRResult.cutLocation<0){return false}direction=directions.RED}else if(maxG>=maxR&&maxG>=maxB){direction=directions.GREEN}else{direction=directions.BLUE}two.r1=one.r1;two.g1=one.g1;two.b1=one.b1;switch(direction){case directions.RED:one.r1=maxRResult.cutLocation;two.r0=one.r1;two.g0=one.g0;two.b0=one.b0;break;case directions.GREEN:one.g1=maxGResult.cutLocation;two.r0=one.r0;two.g0=one.g1;two.b0=one.b0;break;case directions.BLUE:one.b1=maxBResult.cutLocation;two.r0=one.r0;two.g0=one.g0;two.b0=one.b1;break;default:throw new Error("unexpected direction "+direction)}one.vol=(one.r1-one.r0)*(one.g1-one.g0)*(one.b1-one.b0);two.vol=(two.r1-two.r0)*(two.g1-two.g0)*(two.b1-two.b0);return true}maximize(cube,direction,first,last,wholeR,wholeG,wholeB,wholeW){const bottomR=this.bottom(cube,direction,this.momentsR);const bottomG=this.bottom(cube,direction,this.momentsG);const bottomB=this.bottom(cube,direction,this.momentsB);const bottomW=this.bottom(cube,direction,this.weights);let max=0;let cut=-1;let halfR=0;let halfG=0;let halfB=0;let halfW=0;for(let i=first;i<last;i++){halfR=bottomR+this.top(cube,direction,i,this.momentsR);halfG=bottomG+this.top(cube,direction,i,this.momentsG);halfB=bottomB+this.top(cube,direction,i,this.momentsB);halfW=bottomW+this.top(cube,direction,i,this.weights);if(halfW===0){continue}let tempNumerator=(halfR*halfR+halfG*halfG+halfB*halfB)*1;let tempDenominator=halfW*1;let temp=tempNumerator/tempDenominator;halfR=wholeR-halfR;halfG=wholeG-halfG;halfB=wholeB-halfB;halfW=wholeW-halfW;if(halfW===0){continue}tempNumerator=(halfR*halfR+halfG*halfG+halfB*halfB)*1;tempDenominator=halfW*1;temp+=tempNumerator/tempDenominator;if(temp>max){max=temp;cut=i}}return new MaximizeResult(cut,max)}volume(cube,moment){return moment[this.getIndex(cube.r1,cube.g1,cube.b1)]-moment[this.getIndex(cube.r1,cube.g1,cube.b0)]-moment[this.getIndex(cube.r1,cube.g0,cube.b1)]+moment[this.getIndex(cube.r1,cube.g0,cube.b0)]-moment[this.getIndex(cube.r0,cube.g1,cube.b1)]+moment[this.getIndex(cube.r0,cube.g1,cube.b0)]+moment[this.getIndex(cube.r0,cube.g0,cube.b1)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)]}bottom(cube,direction,moment){switch(direction){case directions.RED:return-moment[this.getIndex(cube.r0,cube.g1,cube.b1)]+moment[this.getIndex(cube.r0,cube.g1,cube.b0)]+moment[this.getIndex(cube.r0,cube.g0,cube.b1)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)];case directions.GREEN:return-moment[this.getIndex(cube.r1,cube.g0,cube.b1)]+moment[this.getIndex(cube.r1,cube.g0,cube.b0)]+moment[this.getIndex(cube.r0,cube.g0,cube.b1)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)];case directions.BLUE:return-moment[this.getIndex(cube.r1,cube.g1,cube.b0)]+moment[this.getIndex(cube.r1,cube.g0,cube.b0)]+moment[this.getIndex(cube.r0,cube.g1,cube.b0)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)];default:throw new Error("unexpected direction $direction")}}top(cube,direction,position,moment){switch(direction){case directions.RED:return moment[this.getIndex(position,cube.g1,cube.b1)]-moment[this.getIndex(position,cube.g1,cube.b0)]-moment[this.getIndex(position,cube.g0,cube.b1)]+moment[this.getIndex(position,cube.g0,cube.b0)];case directions.GREEN:return moment[this.getIndex(cube.r1,position,cube.b1)]-moment[this.getIndex(cube.r1,position,cube.b0)]-moment[this.getIndex(cube.r0,position,cube.b1)]+moment[this.getIndex(cube.r0,position,cube.b0)];case directions.BLUE:return moment[this.getIndex(cube.r1,cube.g1,position)]-moment[this.getIndex(cube.r1,cube.g0,position)]-moment[this.getIndex(cube.r0,cube.g1,position)]+moment[this.getIndex(cube.r0,cube.g0,position)];default:throw new Error("unexpected direction $direction")}}getIndex(r,g,b){return(r<<INDEX_BITS*2)+(r<<INDEX_BITS+1)+r+(g<<INDEX_BITS)+g+b}}class Box{constructor(){let r0=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;let r1=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;let g0=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0;let g1=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;let b0=arguments.length>4&&arguments[4]!==undefined?arguments[4]:0;let b1=arguments.length>5&&arguments[5]!==undefined?arguments[5]:0;let vol=arguments.length>6&&arguments[6]!==undefined?arguments[6]:0;this.r0=r0;this.r1=r1;this.g0=g0;this.g1=g1;this.b0=b0;this.b1=b1;this.vol=vol}}class CreateBoxesResult{constructor(requestedCount,resultCount){this.requestedCount=requestedCount;this.resultCount=resultCount}}class MaximizeResult{constructor(cutLocation,maximum){this.cutLocation=cutLocation;this.maximum=maximum}}class quantizer_celebi_QuantizerCelebi{static quantize(pixels,maxColors){const wu=new quantizer_wu_QuantizerWu;const wuResult=wu.quantize(pixels,maxColors);return quantizer_wsmeans_QuantizerWsmeans.quantize(pixels,wuResult,maxColors)}}class scheme_Scheme{constructor(props){this.props=props}get primary(){return this.props.primary}get onPrimary(){return this.props.onPrimary}get primaryContainer(){return this.props.primaryContainer}get onPrimaryContainer(){return this.props.onPrimaryContainer}get secondary(){return this.props.secondary}get onSecondary(){return this.props.onSecondary}get secondaryContainer(){return this.props.secondaryContainer}get onSecondaryContainer(){return this.props.onSecondaryContainer}get tertiary(){return this.props.tertiary}get onTertiary(){return this.props.onTertiary}get tertiaryContainer(){return this.props.tertiaryContainer}get onTertiaryContainer(){return this.props.onTertiaryContainer}get error(){return this.props.error}get onError(){return this.props.onError}get errorContainer(){return this.props.errorContainer}get onErrorContainer(){return this.props.onErrorContainer}get background(){return this.props.background}get onBackground(){return this.props.onBackground}get surface(){return this.props.surface}get onSurface(){return this.props.onSurface}get surfaceVariant(){return this.props.surfaceVariant}get onSurfaceVariant(){return this.props.onSurfaceVariant}get outline(){return this.props.outline}get outlineVariant(){return this.props.outlineVariant}get shadow(){return this.props.shadow}get scrim(){return this.props.scrim}get inverseSurface(){return this.props.inverseSurface}get inverseOnSurface(){return this.props.inverseOnSurface}get inversePrimary(){return this.props.inversePrimary}static light(argb){return scheme_Scheme.lightFromCorePalette(core_palette_CorePalette.of(argb))}static dark(argb){return scheme_Scheme.darkFromCorePalette(core_palette_CorePalette.of(argb))}static lightContent(argb){return scheme_Scheme.lightFromCorePalette(core_palette_CorePalette.contentOf(argb))}static darkContent(argb){return scheme_Scheme.darkFromCorePalette(core_palette_CorePalette.contentOf(argb))}static lightFromCorePalette(core){return new scheme_Scheme({primary:core.a1.tone(40),onPrimary:core.a1.tone(100),primaryContainer:core.a1.tone(90),onPrimaryContainer:core.a1.tone(10),secondary:core.a2.tone(40),onSecondary:core.a2.tone(100),secondaryContainer:core.a2.tone(90),onSecondaryContainer:core.a2.tone(10),tertiary:core.a3.tone(40),onTertiary:core.a3.tone(100),tertiaryContainer:core.a3.tone(90),onTertiaryContainer:core.a3.tone(10),error:core.error.tone(40),onError:core.error.tone(100),errorContainer:core.error.tone(90),onErrorContainer:core.error.tone(10),background:core.n1.tone(99),onBackground:core.n1.tone(10),surface:core.n1.tone(99),onSurface:core.n1.tone(10),surfaceVariant:core.n2.tone(90),onSurfaceVariant:core.n2.tone(30),outline:core.n2.tone(50),outlineVariant:core.n2.tone(80),shadow:core.n1.tone(0),scrim:core.n1.tone(0),inverseSurface:core.n1.tone(20),inverseOnSurface:core.n1.tone(95),inversePrimary:core.a1.tone(80)})}static darkFromCorePalette(core){return new scheme_Scheme({primary:core.a1.tone(80),onPrimary:core.a1.tone(20),primaryContainer:core.a1.tone(30),onPrimaryContainer:core.a1.tone(90),secondary:core.a2.tone(80),onSecondary:core.a2.tone(20),secondaryContainer:core.a2.tone(30),onSecondaryContainer:core.a2.tone(90),tertiary:core.a3.tone(80),onTertiary:core.a3.tone(20),tertiaryContainer:core.a3.tone(30),onTertiaryContainer:core.a3.tone(90),error:core.error.tone(80),onError:core.error.tone(20),errorContainer:core.error.tone(30),onErrorContainer:core.error.tone(80),background:core.n1.tone(10),onBackground:core.n1.tone(90),surface:core.n1.tone(10),onSurface:core.n1.tone(90),surfaceVariant:core.n2.tone(30),onSurfaceVariant:core.n2.tone(80),outline:core.n2.tone(60),outlineVariant:core.n2.tone(30),shadow:core.n1.tone(0),scrim:core.n1.tone(0),inverseSurface:core.n1.tone(90),inverseOnSurface:core.n1.tone(20),inversePrimary:core.a1.tone(40)})}toJSON(){return Object.assign({},this.props)}}class scheme_android_SchemeAndroid{constructor(props){this.props=props}get colorAccentPrimary(){return this.props.colorAccentPrimary}get colorAccentPrimaryVariant(){return this.props.colorAccentPrimaryVariant}get colorAccentSecondary(){return this.props.colorAccentSecondary}get colorAccentSecondaryVariant(){return this.props.colorAccentSecondaryVariant}get colorAccentTertiary(){return this.props.colorAccentTertiary}get colorAccentTertiaryVariant(){return this.props.colorAccentTertiaryVariant}get textColorPrimary(){return this.props.textColorPrimary}get textColorSecondary(){return this.props.textColorSecondary}get textColorTertiary(){return this.props.textColorTertiary}get textColorPrimaryInverse(){return this.props.textColorPrimaryInverse}get textColorSecondaryInverse(){return this.props.textColorSecondaryInverse}get textColorTertiaryInverse(){return this.props.textColorTertiaryInverse}get colorBackground(){return this.props.colorBackground}get colorBackgroundFloating(){return this.props.colorBackgroundFloating}get colorSurface(){return this.props.colorSurface}get colorSurfaceVariant(){return this.props.colorSurfaceVariant}get colorSurfaceHighlight(){return this.props.colorSurfaceHighlight}get surfaceHeader(){return this.props.surfaceHeader}get underSurface(){return this.props.underSurface}get offState(){return this.props.offState}get accentSurface(){return this.props.accentSurface}get textPrimaryOnAccent(){return this.props.textPrimaryOnAccent}get textSecondaryOnAccent(){return this.props.textSecondaryOnAccent}get volumeBackground(){return this.props.volumeBackground}get scrim(){return this.props.scrim}static light(argb){const core=core_palette_CorePalette.of(argb);return scheme_android_SchemeAndroid.lightFromCorePalette(core)}static dark(argb){const core=core_palette_CorePalette.of(argb);return scheme_android_SchemeAndroid.darkFromCorePalette(core)}static lightContent(argb){const core=core_palette_CorePalette.contentOf(argb);return scheme_android_SchemeAndroid.lightFromCorePalette(core)}static darkContent(argb){const core=core_palette_CorePalette.contentOf(argb);return scheme_android_SchemeAndroid.darkFromCorePalette(core)}static lightFromCorePalette(core){return new scheme_android_SchemeAndroid({colorAccentPrimary:core.a1.tone(90),colorAccentPrimaryVariant:core.a1.tone(40),colorAccentSecondary:core.a2.tone(90),colorAccentSecondaryVariant:core.a2.tone(40),colorAccentTertiary:core.a3.tone(90),colorAccentTertiaryVariant:core.a3.tone(40),textColorPrimary:core.n1.tone(10),textColorSecondary:core.n2.tone(30),textColorTertiary:core.n2.tone(50),textColorPrimaryInverse:core.n1.tone(95),textColorSecondaryInverse:core.n1.tone(80),textColorTertiaryInverse:core.n1.tone(60),colorBackground:core.n1.tone(95),colorBackgroundFloating:core.n1.tone(98),colorSurface:core.n1.tone(98),colorSurfaceVariant:core.n1.tone(90),colorSurfaceHighlight:core.n1.tone(100),surfaceHeader:core.n1.tone(90),underSurface:core.n1.tone(0),offState:core.n1.tone(20),accentSurface:core.a2.tone(95),textPrimaryOnAccent:core.n1.tone(10),textSecondaryOnAccent:core.n2.tone(30),volumeBackground:core.n1.tone(25),scrim:core.n1.tone(80)})}static darkFromCorePalette(core){return new scheme_android_SchemeAndroid({colorAccentPrimary:core.a1.tone(90),colorAccentPrimaryVariant:core.a1.tone(70),colorAccentSecondary:core.a2.tone(90),colorAccentSecondaryVariant:core.a2.tone(70),colorAccentTertiary:core.a3.tone(90),colorAccentTertiaryVariant:core.a3.tone(70),textColorPrimary:core.n1.tone(95),textColorSecondary:core.n2.tone(80),textColorTertiary:core.n2.tone(60),textColorPrimaryInverse:core.n1.tone(10),textColorSecondaryInverse:core.n1.tone(30),textColorTertiaryInverse:core.n1.tone(50),colorBackground:core.n1.tone(10),colorBackgroundFloating:core.n1.tone(10),colorSurface:core.n1.tone(20),colorSurfaceVariant:core.n1.tone(30),colorSurfaceHighlight:core.n1.tone(35),surfaceHeader:core.n1.tone(30),underSurface:core.n1.tone(0),offState:core.n1.tone(20),accentSurface:core.a2.tone(95),textPrimaryOnAccent:core.n1.tone(10),textSecondaryOnAccent:core.n2.tone(30),volumeBackground:core.n1.tone(25),scrim:core.n1.tone(80)})}toJSON(){return Object.assign({},this.props)}}class score_Score{constructor(){}static score(colorsToPopulation){let contentColor=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;let populationSum=0;for(const population of colorsToPopulation.values()){populationSum+=population}const colorsToProportion=new Map;const colorsToCam=new Map;const hueProportions=new Array(360).fill(0);for(const[color,population]of colorsToPopulation.entries()){const proportion=population/populationSum;colorsToProportion.set(color,proportion);const cam=cam16_Cam16.fromInt(color);colorsToCam.set(color,cam);const hue=Math.round(cam.hue);hueProportions[hue]+=proportion}const colorsToExcitedProportion=new Map;for(const[color,cam]of colorsToCam.entries()){const hue=Math.round(cam.hue);let excitedProportion=0;for(let i=hue-15;i<hue+15;i++){const neighborHue=sanitizeDegreesInt(i);excitedProportion+=hueProportions[neighborHue]}colorsToExcitedProportion.set(color,excitedProportion)}const colorsToScore=new Map;for(const[color,cam]of colorsToCam.entries()){const proportion=colorsToExcitedProportion.get(color);const proportionScore=proportion*100*score_Score.WEIGHT_PROPORTION;const chromaWeight=cam.chroma<score_Score.TARGET_CHROMA?score_Score.WEIGHT_CHROMA_BELOW:score_Score.WEIGHT_CHROMA_ABOVE;const chromaScore=(cam.chroma-score_Score.TARGET_CHROMA)*chromaWeight;const score=proportionScore+chromaScore;colorsToScore.set(color,score)}const filteredColors=contentColor?score_Score.filterContent(colorsToCam):score_Score.filter(colorsToExcitedProportion,colorsToCam);const dedupedColorsToScore=new Map;for(const color of filteredColors){let duplicateHue=false;const hue=colorsToCam.get(color).hue;for(const[alreadyChosenColor]of dedupedColorsToScore){const alreadyChosenHue=colorsToCam.get(alreadyChosenColor).hue;if(math_utils_differenceDegrees(hue,alreadyChosenHue)<15){duplicateHue=true;break}}if(duplicateHue){continue}dedupedColorsToScore.set(color,colorsToScore.get(color))}const colorsByScoreDescending=Array.from(dedupedColorsToScore.entries());colorsByScoreDescending.sort(((first,second)=>second[1]-first[1]));const answer=colorsByScoreDescending.map((entry=>entry[0]));if(answer.length===0){answer.push(4282549748)}return answer}static filter(colorsToExcitedProportion,colorsToCam){const filtered=new Array;for(const[color,cam]of colorsToCam.entries()){const proportion=colorsToExcitedProportion.get(color);if(cam.chroma>=score_Score.CUTOFF_CHROMA&&lstarFromArgb(color)>=score_Score.CUTOFF_TONE&&proportion>=score_Score.CUTOFF_EXCITED_PROPORTION){filtered.push(color)}}return filtered}static filterContent(colorsToCam){return Array.from(colorsToCam.keys())}}score_Score.TARGET_CHROMA=48;score_Score.WEIGHT_PROPORTION=.7;score_Score.WEIGHT_CHROMA_ABOVE=.3;score_Score.WEIGHT_CHROMA_BELOW=.1;score_Score.CUTOFF_CHROMA=15;score_Score.CUTOFF_TONE=10;score_Score.CUTOFF_EXCITED_PROPORTION=.01;const hexFromArgb=argb=>{const r=redFromArgb(argb);const g=greenFromArgb(argb);const b=blueFromArgb(argb);const outParts=[r.toString(16),g.toString(16),b.toString(16)];for(const[i,part]of outParts.entries()){if(part.length===1){outParts[i]="0"+part}}return"#"+outParts.join("")};const argbFromHex=hex=>{hex=hex.replace("#","");const isThree=hex.length===3;const isSix=hex.length===6;const isEight=hex.length===8;if(!isThree&&!isSix&&!isEight){throw new Error("unexpected hex "+hex)}let r=0;let g=0;let b=0;if(isThree){r=parseIntHex(hex.slice(0,1).repeat(2));g=parseIntHex(hex.slice(1,2).repeat(2));b=parseIntHex(hex.slice(2,3).repeat(2))}else if(isSix){r=parseIntHex(hex.slice(0,2));g=parseIntHex(hex.slice(2,4));b=parseIntHex(hex.slice(4,6))}else if(isEight){r=parseIntHex(hex.slice(2,4));g=parseIntHex(hex.slice(4,6));b=parseIntHex(hex.slice(6,8))}return(255<<24|(r&255)<<16|(g&255)<<8|b&255)>>>0};function parseIntHex(value){return parseInt(value,16)}async function sourceColorFromImage(image){const imageBytes=await new Promise(((resolve,reject)=>{const canvas=document.createElement("canvas");const context=canvas.getContext("2d");if(!context){return reject(new Error("Could not get canvas context"))}image.onload=()=>{canvas.width=image.width;canvas.height=image.height;context.drawImage(image,0,0);resolve(context.getImageData(0,0,image.width,image.height).data)}}));const pixels=[];for(let i=0;i<imageBytes.length;i+=4){const r=imageBytes[i];const g=imageBytes[i+1];const b=imageBytes[i+2];const a=imageBytes[i+3];if(a<255){continue}const argb=argbFromRgb(r,g,b);pixels.push(argb)}const result=quantizer_celebi_QuantizerCelebi.quantize(pixels,128);const ranked=score_Score.score(result);const top=ranked[0];return top}function themeFromSourceColor(source){let customColors=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];const palette=core_palette_CorePalette.of(source);return{source,schemes:{light:scheme_Scheme.light(source),dark:scheme_Scheme.dark(source)},palettes:{primary:palette.a1,secondary:palette.a2,tertiary:palette.a3,neutral:palette.n1,neutralVariant:palette.n2,error:palette.error},customColors:customColors.map((c=>customColor(source,c)))}}async function themeFromImage(image){let customColors=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];const source=await sourceColorFromImage(image);return themeFromSourceColor(source,customColors)}function customColor(source,color){let value=color.value;const from=value;const to=source;if(color.blend){value=blend_Blend.harmonize(from,to)}const palette=core_palette_CorePalette.of(value);const tones=palette.a1;return{color,value,light:{color:tones.tone(40),onColor:tones.tone(100),colorContainer:tones.tone(90),onColorContainer:tones.tone(10)},dark:{color:tones.tone(80),onColor:tones.tone(20),colorContainer:tones.tone(30),onColorContainer:tones.tone(90)}}}function applyTheme(theme,options){var _a,_b;const target=(options===null||options===void 0?void 0:options.target)||document.body;const isDark=(_a=options===null||options===void 0?void 0:options.dark)!==null&&_a!==void 0?_a:false;const scheme=isDark?theme.schemes.dark:theme.schemes.light;setSchemeProperties(target,scheme);if(options===null||options===void 0?void 0:options.brightnessSuffix){setSchemeProperties(target,theme.schemes.dark,"-dark");setSchemeProperties(target,theme.schemes.light,"-light")}if(options===null||options===void 0?void 0:options.paletteTones){const tones=(_b=options===null||options===void 0?void 0:options.paletteTones)!==null&&_b!==void 0?_b:[];for(const[key,palette]of Object.entries(theme.palettes)){const paletteKey=key.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();for(const tone of tones){const token=`--md-ref-palette-${paletteKey}-${paletteKey}${tone}`;const color=hexFromArgb(palette.tone(tone));target.style.setProperty(token,color)}}}}function setSchemeProperties(target,scheme){let suffix=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";for(const[key,value]of Object.entries(scheme.toJSON())){const token=key.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();const color=hexFromArgb(value);target.style.setProperty(`--md-sys-color-${token}${suffix}`,color)}}var Theme=__webpack_require__(24);const ChoiceIotTheme={logoUrl:"https://www.choiceiot.com/wp-content/uploads/choice-IOT-2.png",logoSmallUrl:"https://www.choiceiot.com/wp-content/uploads/2018/12/cbc-ipad-retina-icon.png",mode:"dark",originalColor:"#55BAE5",secondaryColor:"#929598",borderRadius:3};const EmbraerTheme={originalColor:"#100690",secondaryColor:"#FCC317",borderRadius:3,logoUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAB4EAAAGICAYAAABP45avAAAACXBIWXMAAAsSAAALEgHS3X78AAAgAElEQVR4nOzdO3IdR7ou7JSoqJC3y9xeQ97vNTgCAZ68BkYgYAQsjIDECFAcAaARAPLkAfKOR/QIhPaOd6o9RkUo4o+kEhJJkSAutdbKy/NEKHbviL7UygQWsvLN78sAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANA8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgDp8ZR6BVvTd2IcQTuO/bOQj/zrNw6sMngMAAAAAAFijbww20IK+G7dDCJcNBcDXIYQxg+cAAAAAAADW7GsDDtSu78YhhPCmoQB4CiEcTvMwZfAsAAAAAADAmmkHDVTrvfbPe43N8vNpHq4zeA4AAAAAAGADtIMGqpTaP5+HELYam+FDATAAAAAAALRNO2igOn03HqT7f1sLgI+meTjL4DkAAAAAAIAN0g4aqEZq/3wSQjhocFbPpnk4zOA5AAAAAACADRMCA1Xou3ErtX/ebnBGL6Z52M/gOQAAAAAAgAxoBw0Ur+/GvRDCm0YD4Hj/rwpgAAAAAADgTyqBgaL13RjbPw+NzuIUQvhumocpg2cBAAAAAAAy8Y2JAEqU7v+9bLT6N6QAeFcADAAAAAAAfEw7aKA4fTfuhBB+azgAjvanebjO4DkAAAAAAIDMCIGBovTd+CpVAPcNz9zhNA9XGTwHAAAAAACQIe2ggSKk9s+nIYS9xmfseJqHswyeAwAAAAAAyNRXJgbIXd+Nse3zeQhhq/HJOpvm4TCD5wAAAAAAADImBAay1nfjEEI4MUvhepqH5xk8BwAAAAAAkDntoIEspfbPMfw9MEPhOoSwm8FzAAAAAAAABVAJDGQntX+O9/9um50whRCeT/Nwk8GzAAAAAAAABfjaJAE56bsxVv5eCoDfiQHwrgAYAAAAAAB4CO2ggWz03RjbPw9m5E+H0zxcZ/IsAAAAAABAIYTAwMb13bgVQjhX/fuBGABfZPQ8AAAAAABAIbSDBjaq78a9EMIbAfAHzqZ5OMvoeQAAAAAAgIIIgYGN6bvxVaoA7s3Cn2IAfJjJswAAAAAAAAXSDhpYu74b+xT+7hj9D8T7f48yeh4AAAAAAKBAX5k0YJ36boxtny9V//5NDIB3p3mYMnsuAAAAAACgMNpBA2vTd+OQ7v8VAH8oBr+HAmAAAAAAAGAJKoGBlUvtn09DCHtG+5OeT/NwneFzAQAAAAAABXInMLBSqf1zvP93y0h/0qEAGAAAAAAAWJJ20MDK9N14kO7/FQB/2tE0D2c5PhgAAAAAAFAu7aCBxaX2zychhAOj+1ln0zwcZvpsAAAAAABAwYTAwKL6btxK7Z+3jexnXUzzsJ/pswEAAAAAAIXTDhpYTN+NeyGENwLgO8X7f1UAAwAAAAAAK6MSGFhE342x/fNgNO80hRC+m+ZhyvgZAQAAAACAwn1jAoGnSPf/Xqr+/aIY/O4KgAEAAAAAgFXTDhp4tL4bd0IIvwmA72V/mofrAp4TAAAAAAAonBAYeJS+G1+lCuDeCH7R4TQPV5k/IwAAAAAAUAntoIEHSe2fT0MIe0buXo6neTgr4DkBAAAAAIBKfGUigfvquzG2fT4PIWwZtHs5m+bhsIDnBAAAAAAAKiIEBu6l78YhhHBitO7tapqH3UKeFQAAAAAAqIh20MCdUvvnGP4eGKl7uw4h7BfyrAAAAAAAQGVUAgOfldo/x/t/t43SvU0hhOfTPNwU8rwAAAAAAEBlvjahwKf03Rgrfy8FwA8SA+BdATAAAAAAALBJ2kEDf9N3Y2z/PBiZBzuc5uG6sGcGAAAAAAAqIwQG/tR341YI4Vz176PEAPiiwOcGAAAAAAAqox008E7fjXshhDcC4EcZp3k4K/C5AQAAAACACgmBgRgAv0oVwL3ReLCzaR6OCntmAAAAAACgYtpBQ8P6buxT+Lvj5+BR4v2/AmAAAAAAACArX5kOaFPfjbHt86Xq30eLAfDuNA9Toc8PAAAAAABUSjtoaFDfjUO6/1cA/Dgx+D0UAAMAAAAAADlSCQwNSe2fT0MIe+b90aZUAXxd6PMDAAAAAACVUwkMjXiv/bMA+GmOBMAAAAAAAEDOhMDQgL4bD1IAvG2+nyQGwGcFPz8AAAAAANAA7aChYqn980kI4cA8P9nZNA+HhX8GAAAAAACgAUJgqFTfjVshhHPVv4u4mOZhv4LPAQAAAAAANEA7aKhQ343x3t83AuBFxPt/VQADAAAAAADFUAkMlem7MbZ/HszrIm5CCM+neZgq+CwAAAAAAEAjvjHRUId0/29s/7xjShcRg999ATAAAAAAAFAalcBQgb4bd1IA3JvPxexO83BVyWcBAAAAAAAa4k5gKFzfja9CCJcC4EUdCoABAAAAAIBSaQcNhUrtn09DCHvmcFHH0zycVfR5AAAAAACAxmgHDQXqu3E7tX/eMn+LOpvm4bCizwMAAAAAADRICAyF6bvxIFUAs6yraR52jSkAAAAAAFA67aChEKn980kI4cCcLe46hLBf2WcCAAAAAAAapRIYCpDaP8fq323ztbgphPB8moebyj4XAAAAAADQqK9NPOQttX++FACvRAyAdwXAAAAAAABATbSDhoz13RjbPw/maGUOp3m4rvSzAQAAAAAAjRICQ4b6btwKIZyr/l2pGABfVPz5AAAAAACARmkHDZnpu3EnhPBGALxS4zQPZxV/PgAAAAAAoGFCYMhI342v0v2/vXlZmbNpHo4q/WwAAAAAAADaQUMO+m7sU/vnHROyUvH+XwEwAAAAAABQta9ML2xW343bqn/XIgbAu9M8TA18VgAAAAAAoGHaQcMG9d04pPt/BcCrFYPfQwEwAAAAAADQApXAsAGp/fNpCGHP+K/clCqAryv/nAAAAAAAAO+oBIY1e6/9swB4PY4EwAAAAAAAQEu+MduwPn03HoQQTrR/XpsYAJ818ll5pL4b4+/ktvFj3aZ52F3yfzIdMjoxkZ91PM3DVabP1pS+G8+the50Pc3D0dL/pX03Xi7930mxbkII/0kPf50651zXenVKegf7MYNHIT/x5/+/7z3V7e9DqPl3olXvdWSrfQ3y8zQPYwbPURT7AmzKCvYFrHv4nM+ue+yV1E0IDGuQXjbigvLAeK/NmRcf7im+6O0YLCrQ+1m+Uxyf5xk/XxPSpoRuKJvh+4E79d27pfNVCon/Hf91JR11tvz88xl3/lyk34mb9M/txum735FpHm4ManGGRtYg2303njnE8GD2BaiFdQ+f89mfi7TmCe8fELXuqYcQGFas78b4x/fcicK1upjm4bChzwvAl8UNsQMdIjbnvUNxQL4+2BxKG0IXIYRf0xrbBhCt2fpoQ/1l+ON343aD9Nf0f6+EbvlKa5AXrXzctN6yJwLAQ93mF3ete65UDpdFCAwr1HfjXiPthnJy7WUHgM+ILzBC4M0ZrImgSHvpn5O+G2MI/FogDH92YPnz4ETfjfFd9Of0+1FDFX1NWluDHPTdeOx7GoCFvL/uefleB6GfvRfk7+vWBwBWJd0n4s679Yp/cHadwAbgM7b6bhwMzvo1VoEDNdtKFWa/xfu9+27UbhD+sp0OnL3puzH+jrxKncHYoDQHLxucgxY/MwDrs/Pee0Fc+wzpvZ/MCIFhYfHLru/Gy3TSlPWJwe++ABiAL3jpxWQjXjoYB9WJ1cGXKew6ML3wgdvg0YGJzWs1DD1wCAGANdlOgfD/67vxtO9G12JmRAgMC0ovdr+5gH8jdrXcAuAeege11ittQBpzqFf8HY+bPZeCLvik2wMTfkfWLG1Ct3xI5TSDZwCgLQepK8qlw0h5EALDQmKrp/hip8plIw4FwAA8wAvVwGulHSG0YScFXSe+Y+GTbn9Hzm2Krs1JI5/zc3YcPABgQ3ZSRxTvBhsmBIYnSu2fz21wbszxNA9njX52AB6ntym4HipwoElDOv2vDRx82l76HfH3cYVS+CkAtVcFwGYNKQzeMw+bIQSGJ0gbG2/SSxzrdzbNwyvjDsAjuCdtPYTt0KatVPEo5IJP61Mb9VPVMSsj/PyDamAANi2udWInFPsDGyAEhkdKGxpv0gYH63c1zcOhcQfgCWwOrpAKHGjebcjlTnD4vIN0YEIQvKC0X2MN8heb7gDkYEh3BVv3rJEQGB4otX8+jRsaxm5j4v2/+41+dgCWc6AyYqWE7EB0kt6fgE/bTkGwFurLsQb50LbODABkYscBuPUSAsMDpJeyS3fbbdQUQtid5mFqeAwAWI5NwhVQgQN85EBFMNxpO7VJtCH6RGkNomPb31nzApCLbUHw+giB4Z7Si8Rl+pJiMwTAACzNPWmrYaMR+NiJSjS405YN0adJY6f18adt+Q4GICPvDsCZkNUTAsM9pEvLT9O9VmzO4TQP18YfgIXZLFyQChzgDida3sKdtl099SSDfZs7vXTIAICM7KTchRUSAsMd+m6MJyXfpBcJNisGwBfmAIAVcE/aQlTgAF8QvyNOhRBwpz3t0x8ufa+8KO2512zL/hYAmRn6btwzKasjBIbPSK0h32j/nIVxmoez1gcBgJXSvngZKnCAL9n2nQtfFCs2ddV4mJfWIPfywkEcADLjkOgKCYHhE/pufJXu//Xls3ln0zwctT4IAKzclqqbp1GBAzzAoC003KnXFvr+UmBuHXc/vbECIDO9Q6KrIwSG98TNy74bL33pZON6mofD1gcBgLVxT9rTqMABHkLreLjbTupQxpfZw3kY1cAA5GbQBWU1hMCQpJPov8UXLWOShesQwm7rgwDAWqmMeCQVOMAjCLjgy4SbX5D2cg6yfsj89A7iAJAh654VEALDHy8NQ7r/10nIPEwhhMNpHqbWBwKAtVMZ8The1oDH8N0Bd3NY4suEmY9zoOIKgMz427QCQmCalto/n3tpyEoMfnenebhufSAA2AiVEQ+UNqdV4ACPseNuYPgi9+1/RlqDCMkfz0EcAHLjb9PChMA0K202xPt/9/wUZOVIAAzAhjl9+jBe0oCnEHDB3fasSz7LGuRprHkByM2e7mzLEgLTpL4bD1IA7NR5XmIL6LPWBwGALNhUvAcVOMACHMqFL/N78pG0r2MN8nSnpX8AAKrSW/csSwhMU1L759O0yHWiJC9nAmAAMnLgDr570TobeKr4jmajB+72o/H5Gwf2luHeaQBy8y8zshwhMM1ILW4u3VmXpYtpHg5bHwQAsmNz8Q6pAkdXFWAJNnrgbtva9v6l78YhhGA8lmPNC0BOtIRekBCYJqST5W9sVGYp3v8rAAYgRyoj7mbDEFiK71r4MhXzqcObNcjirHkByI2/SwsRAlO9vhtjm8Jz7Z+zdBNC2J3mYWp9IADIlnbHn6ACB1jYVt+NDuzC3b43Pu8M9ndWwpoXgJzoFLQQITDVSvf/XqYXBPITg999ATAAmdtObY9JVOAAKyIEhrs1XxGT1iAvMniUGlnzApAT7wYLEQJTpdTG5jcvSVmLFcDXrQ8CAEUQeH5IBQ6wCqoc4W69ivl31arWIKtjzQtALrbdC7wMITDV6bvxVQjh0otB1g4FwAAUZCu1P26eChxghbSYhy9rNgTuuzF+R6hUXa0t1cAAZKT1w2+LEAJTjdT++dzJxewdT/Nw1vogAFCcl06hvqMCB1gVXZzgy/7Z8BjZ61kPa14AcuH9YAFCYKqQWiK9CSHsmdGsnU3z8Kr1QQCgSH1qg9wsFTjAqqXvGeDzmqyISVd+WYOsx1bra14AsvEPU/F035T+ASC1qjltfiDydzXNw2HrgwBA0V703ThO8zA1Oo0qcFiHqxDCr0b6Xv6RNutrOiEfP89NBs8BuWq1LaI1yHq1vuYFIA8OiC5ACEyxUnuaE6dBixDv/91vfRAAKN7t2qO5Q00qcFijX3WOeZj0XrSXQpLSN0ps9MDdmmvTm9Yg2kGu120HHH+PAdgkf/8XoB00RUrtny9tRhYhnhzddYIUgEocNNquVAUOZCqus6d5iNeufBdCOCp8noTA8AUpFG3JiZ+JjXjhbmAAKJ9KYIqT2j+ftHgCtkACYFhObI34k/GELLxsqRpYBQ6UY5qHse/G63RgFqBoaf+n1BbYN+mKg1KLF5rtgJM5+wJAU+J+xDQPV2b98YTAFKXvxpPUkoYyHE7zcG2uYBE32mNCNmI18E8NvYiowIGCxO+mvhvjpv2peSvOUbpKh6e7Pbz0fYUHmbZTuNiCkjuR3P4+l9zBLq55j6d5cFd7PuwLUBPrnuXEtc7/pDWCA9x8QAhMEVLbxfOCT4C2KAbAF60PAgDVetnCBmzhFTjQrNgeuu/Gf6W7gkvyfeM/tdcqHRbzwTj23Rh/F34s8HfiU5roitZ341Bwi/ir2/2QvhvHwosZmuqAA6yVdc9y/hzH1Mr/dt1TQyDsupgncicw2UstCN/YgCzKGDeeWh8EAKq208idfO4ChnKVfj8wLCYGctM87MfrilQd5S9tYJe8Bjn+6F+XfEXWQSrMAKAA8VrGuC8/zcNuWveU3s3B36AnEgKTtb4bX6X7rNz/W474R8aGEwAtqLpNcuEVONC81L5TZx54T6w4mubheXxvLXhc/pnBM6zaUPA+0NX7lW1xMz6E8Hqzj/RkrhcAKFD6e/TcAbi2CYHJUjz12XfjpeqT4sQ2HtoEAdCK7dQuuToVVOAAf/jZOMDfpffWUg9JVH1IPq1BXmTwKI91/In/3Fh4NXArHXAAqpMOI+mE0jAhMNnpuzG2ff7NJebFuU5/UACgJbUGpSVX4AB/cc8afN5hBS0Sa3RS8Brk7FP3W6YN+NI7pjkcCFCo9Hdov9ADSd9n8AxFEwKTldR28I1Nx+LEPyCH6Q8KAHzJbkXBxFZav1Sjggqcjx1P8/CVMIwWpZbQwCek99dPVW2yIenu2ZK7rHz25ynez1j4oQPVwAAFS+8FpV9PwCMIgclCav98XvvdepV611JimgctJQB4iJquD3iZgtNalFyB87EptWCElpUUOjhUylpVEMzVpuQ9obN7HLwpvRrYnh1A2Uq/noBHEAKzcan9c7z/d89sFOlIAAzAQ6VNsrNKBq5P7ZOLV0EFzseOdSqBogKuf2fwDLRHVUwGUpVpqftC96oqn+bhovDOJNt9N9a0TgRoSno3vjDrbRECs1Fp8RgD4G0zUaTDdHIaAB6jphaMLyqpBq7pvrebaR5UAQPwJaWFclsZPMMqlLwGef2A9vulr3/dDQxQtp/NX1uEwGxEav98GkI4df9vsc4EwAA8RdosqyUI7ktvkZcqcKqqAs7gGSAHJd3hqHKftUudrUr62asuBE5rkFLvm33Q1RPTPFwVXg28pRoYoGgl/w3iEYTArF1qM3hZ2SZja2IAXNNdjgBsTk130hykdU6paqrsuHJYDYrkmhk2xc/eZp0W/OyvH3H1ROn7KS8r6YAD0Jz0N6uk62J4IiEwa9V3Y7zf5Y32z0WLL8dHrQ8CAMtILyA13cVXZJBaeAXOp6gChr9+t0tiQ4pN+dXIb0aqKi31EN2DqoD//A/90Q2n5MNqcb6GDJ4DgMex5m6IEJi16bsxtkg81/65aPEPxO4jTrkCwF3Gil5CDgoMXULpraw/cpVaLQJlHb6dHnCnJrSstvfxkjuRHD1hf+S48Ll8oRoYoFg6oDRECMzKpft/L50SLF58OdkXAAOwtPS3pabKzaI2M1MFTk1dWlxZAX/5saCxsBnFJpV0AKGa35W+G18VXAV885SrJ9Khl5K74fT2+QCK9V9T1w4hMCuVKmF+q6y9YKtiBbCNGQBWIm2i1VIBtlNYNXBNdwGfqSSEP6TvoZIOeGjHyyb527FmqYr0RcEfYYkDjKNqYABglYTArEw60Xmp/XMVDgXAAKxBTXfOF9Feue/GoeAKnE9xFzD8pbQDHhcZPAOwPkPB+0VPqgK+lbrhlF4NXNOVIgBQHSEwi0vtn88rqypp2dESLzcA8CXTPMQAoJa7XLdTm+VspcqNmtZrx6qA4Q99N54W1o1pcugU2tF341bhVcCLXT0xzcOrwivRD9J8AgAZEgKzqL4bY7uxNyGEPSNbhdhScWx9EABYK3cDr0/JFTgfm1JLRWheCoCzPoTyCQ6dQlteFrwGuZrmYelDi6WvfxWBALAqDno/kRCYxaRqlzeVtRRsWXyxWex0KwDcR9pUq6UaeCu1W85OBffwfex1aqkIzeq7ca/vxjcFBsDRTxk8A21zjdWapKrREr+nbi0e2KbuayV3Q1ANDMCq/MfIPs03JT88eUibiCeFL+L5UHz52DcmAGxIPIT0WyWD/7LvxrMMA8qTija8b1IrRerwj74bS2pjvGlxrP6R/m+pG/BXWkGTge2CJqH035eS75BdRRXwraMQwuWK/rvXIXah2C34+QGgSkJgniS1fz4t7IWJu8VN6l3VNJCdWFEo5MjfKjeGmhHvdY3BaSUHzPrUdjmb398KKnA+VlMLcf742XS4tC1+h+Fh/lvqeKVDPiVfH3a0qv/i+A7Rd+NVYfe5v28nzq93oZWzL1CGm1ThD7n6h5lphxCYR0vtn2uqIkEADDnbctdSMWx8LOO4oiDoRd+NY0Z/X2v6LrHBAmVzeAraUvIa5GwNXQuOCw6BQ5pf3+mrZV+gDPH3wDsKOSupg5C/K0/kTmAepe/Gk1QBLACuy75WbADkIFYDV1Qd1ufS+jBV4NRUZXmYwTMAj7eyqjp4oO8LGrAi39nTGqTkgHPl69J0KKbk4GjHlQ4AkBchMA8S2wf23fgmtTWkLodO4QOQmTF1qajBQWrDvGk1VQ6oIISyjQ6gkpGSDriXujY6zeAZHussHVBch9IPQZZ85zNAK0o6sLOuv7/V0g46c6niNqf7drdV/1YpvkT+2Hfjj60PRGWObKwBJYvtk/tufF1RcPlyk5WrFVTgfMw9olCu62keVAGTk5z2Xb6kuHe8dJ1YSa0n3zetc80Rw+Z4jUjBxRfbcb5d1wGQp0wOp9/bGg9hVUsInLG+G08ra9dHvvrKNoX5gwMbQA3iJtiPBW8cvi9WA/+0werVmiozzlQBQ7FioLJv+shFae1r4yG5DB7joUo+0Pd6AxvQx2k/sNR3+pfuQwXIVknrHsVNC9AOOlMCYACAPzc6a6r43MgmaKrAKanK6UtUAUOZ4nf6rhP9ZKakzdDiDkD13fiq8Crgce3/o3+sf1+v+393QVtp7QlAfr4vaE5quR5so4TAGRIAAwD8JbWTqyUw2NlQxVFNdwGv814+YDm3AbAT/eTmXwXNSFF///pujJWsLzJ4lMd6vcHK67Hwze+Xaf4ByMteQfPxawbPUDwhcGYEwAAAn1TT3ZFrbcvcd+NQSTvtkDZD3SMK5REAk6V0MKukThn/zuAZHmIouKXxRqqA//wf/yN8LnnNs1XwvcYAVUpdGkr6u+zdYQFC4IwIgAEAPm2ah4sSWyB+xva6WuSlCoyaqoA3WZEDPM61AJiMlfY3spjfo74btwpfgxxtes1RQTecF6qBAbJi3dMgIXAmBMAAAF/kbuCHK7kC52MbrcgBHuVMAEyu0oGsku4DjqFgSQfiSg6Ab1IAm4OSq4F71cAAeSjwjv4b10AtQwicAQEwAMCXpY3PWqqBt1Kb5pWp4B6+j228Ige4t7hhsz/Nw6HfW3LUd+P2uq9nWEAxa6BUBVzyPlc2Bw8r6IajGhhgw9LBt9IOZ9Wy97NxQuANEwADADzIYUXD9XLFm2InFVUB51SRA9wthifPU3AB2em7cS+EcFng38ifM3iG+zot4zE/Kcc1R8ndcPoCD1wAVCMdPi/x7/KvGTxDFYTAGyQABgB4mNQOqJYwcGUt8iqowPlYTa3AoVbxu/m7aR5eqf4lR7H6t+/G8xDCeaGHpIo4WNF3405pbbY/kt2Bwwq64RyktSkAaxL/HvfdeFnwQRwHShfyTRWfokACYACARzuuaB0VW+SNKwhMSr6H72NXqoAha/Gu7tfu7CI3qdvGdgok/5X+damuC/odK3kNcpXxvcsxnP4tg+d4rJeVdfQByEo6bBPXOt+HEPYKu//3YxcOlS5HCLwBAmAAgMeLm6B9Nx5XEnTetshbbFMsVeCoAgbWJXY02Ou78Sq1bbNp83gnfTcau6fbrug6hFuv83iMu6VW2yVXAWe75kjr37OC13ixGvjYgSHgPdY9yyj57+7n/JTnY5VJCLxmAmAAgEXEyrMXlWzyLr0pVlsVcMntD6EVty3o4z+nfTdepPtLBcIPU3KlKqszFdQSseS7X0tYcxyn6q5S179xT3Q3g+cA8mDdw6fEu/m1gl6QO4HXSAAMALCMFCoUURVzT4sEtxXcw/cxbQOhTHtps/+3vhtP3AUJT3JWwmGKvhsPCm89mf2aIx0YLHn9u5PWqgDwOaqAFyYEXhMBMADA4mI1cC0t5Q4W2hQruQLnY2daBkLx+tQu+jYMrq1FL6xaEYfe0u92yZ1ISlpzjOnnolQ1dawBYFlT+jvHgoTAayAABgBYXqqKqem+2CdtiqUKnFpaatU2t8BfYfCesYB7e11IODkUXgVczJqjgm44qoEB+JwjV8ksTwi8YgJgAFu/7NYAAByOSURBVIDVmebhrKJq4KduitVUWVHKpjfwMLFa8Dy+J6sKhi+6KaEaJv0uv8jgUR6ruM4j0zy8Knz9W1PnGgCWcZ32d1iYEHiFBMAAAGtxVNEwP2pTrO/G0itw3qcFFNQvvidfCoLhToeFVMMM6YBHiaaC15Eld0zZTh1sACCkv8fZ381fKiHwigiAAQDWY5qHixDCVSXD/eBNsQru4fvYay2goAnbgmD4rONpHrJf2/TduFX4GqTYNUeqlrrO4FEey93AANyKbaBL/puWNSHwCgiAAQDWruW7gUuuwPnYTWpxCLRBEAx/d1bQ38KSg7waOo+U3A1nSzUwAPFvsTbQqyUEXpgAGABg/VK1TC3VwFupvfMXVXAP38dqCvOB+4lB8LmxgndiAFxEO8RUBVzy/lfxnUcqWP+qBgZoW1z31HS9V5aEwAsSAAMAbFRNd8i8vGdl3ElFVcDXTgBDs3b6btQFgNYVEwAnp1k8xePcVFAFfKvkA3RbvvsBmlXauqdYQuCFCIABADZrmoe4oVdLiNinNs+f/zeUX4HzMSeAoW3x8Mt264NAs45L2gjtu3EnHt7I4FEe67j0KuBbqRq45PXvC1cCADQl/v09FACvjxB4AQJgAIBs1NRO+EubYjW10LtKm5hA20quLITHiAfYdgu8D7/kNchNhZ1HSl7/fvHgIwDVuE7rHh3A1uibZj7pCqVTC02cXOi78aCytoP8YUpfwNfGA4CSxWrgvhuPKwlI+7Tu+ts6M1Xg1HQI0V3AQLQd3zltDNGAKd1JW1wr3LQvVHQVcAbPsKi0/h0LDlPjwcexlupsAP5mSl04armKoShCYB4kvoz33XidTmhr1VWPuMl82XfjdxbdAFQgvli8qOTQ2kEMtVOr6/fVVAV8pgoYeM/Lilr7w8fehb9xrVLwu3fJa5A45jfpMF1tfi04BO7Tz5WrQQDqUsO6p3hCYB4sVov23bibKlO0wa7HbRC860sZgJLFv2N9N76uKCh9+X41cAX38H1MFTDvOy6xMi4H6T7duKb/VwhhL4SwVehH2eq7cW+ah4sMngWWcp02QS9Kft9OVcClfreE232PDJ6Dvxvi+v0TBx8BKE9cx/+su08ehMA8SnppOey78d8pDKYOcePoPLaGNp+QnSltHpE3mxb5iNXAPxa+UXkrVgP/9F61bE1rr9FmHyzjvatd4nfFUTowclJoB6cf0+YRlOzmveC3+L91fTf29n9YsZetXLf3BPYFymCOaNFNOuBd9IG3GgmBeZLYx73vxqsUHNawyUoIO303nqa7roF8XE/z4IAG3FOqBj5OV1jUIG6KXaUKnFqu5JhUAcPqpIMjz+PavsAOTnt9N245JELhttLf73/23fhzBdXtQyVXbZCvz12Dwl/sCwC5en/d89N7B1TZsK9NAE+VfqGfO6ldlbjwLvUuGQB4J7UeqmUTaSdV9dV0F/BrJ4Rh9dLhzhJbse1l8AzwVH06hHHed+NvfTe+ShW1RUnP/MJPA2ug2hygXFvp0NibtO4ZSlz31EYIzCLiBt40D/uqOapykqqNAKBkRxXNXk2dV6bUshtYxy/cH0Hw1T3+rTn5vrDnhS+5rZD5f7FCv7BN0ZeqgFmTvXTwEYCybaWDPcUegquFEJhFTfPwKt0nq6qjDvHFtJaWkwA0KLVeLC34+JyaXpqOVAHD2pV23YtKYGp2cLspmvtnjK3ZU1UPrEtNnW8AWten7/XfFJxthhCYxaW7p75zCX41LgXBABROp5K83KRW3cAapTsWi/rdUw1G5d5tivbd+Cbzd26BHOu24/sfoDp9Kji7TAfMWBMhMCuR2kM/1+avCn26v0jLBgCKlA6o1VINXIOaWnRDaV4X9rwOo9KC7XT4OrvqmBROq9phExw+AKjTTrozWNefNRECs1LTPMRNvn3toYu3lV5KBcEAlKq0Nqi1ukotuoENmOYhdmu6KWjs/5nBM8A63FbH5NYe+iSDZ6BNO9qGAlTrtujM9/waCIFZubTR91x76OJtewEEoFQltkGtlNbcsHkldUbQKo7WxPbQpzl85tSOV0teNkk1MEDdTgXBqycEZi3SxuuuzdfiHeTyQgoAjyCA3Kyr1Job2Kz/FDT+AihadJDJhqgAjk3bEg4AVE8QvGJCYNYm3RN8mNoxag9drlxeSAHgQdKhNEHw5mjJDXko6jCGK2lo1GmqxN2I9M7vEAY5cBgBoH5x3bNtnldDCMzaTfNwlqqCS7qLig85oQNAqUaH0TbiLIXwAA9lQ4hWnW/wEITgjVxsZXhXNgDL2+S6p2pCYDZimofrdE/whRko1okTOgCUJnYmCSG8NnFrNanABoAHixuha7+OKR34dh83OXkhGACo3pZDaKshBGZjUnvo/RDCkVkoUlyAX/bd6OUQgNKMOpKs1WtVwMATeN+gZXvrbAudgrYTP3FkJv5cDiYFoHqDrGF5QmA2bpqHMVUFa81Ynl6rBgBKk6qBVaaux5RCdyAfpd3zaSOI1q2zKmZI7/mQG9XAAG1YexeU2gmByUJqD/1dCOHKjBQntoS+bH0QACjLNA9nqoHX4jiF7gDA4+ysoxo4BWwvzBGZ6rUJBWjCjmrgZQmByUZqD72rMqdI2303OqUDQGlcSbFaN6njC5CX780HFOfHNTzwiSpgMqdNKEAbHEpbkBCY7Ezz8CqEsKs9dHEO+m50dxAAxZjm4UIXkpVysA8ykyr9SmsHDfzxvr2ygDYFawfGmQKoBgaonzXJgoTAZGmah6t0T/C1GSpKPJXpSxqAkggqV+M6tdwG8rJnPqBYq/z9FaxRigPVwADV6/tu9N6yECEw2ZrmIbYQjEGwNoJlOV3HfUUAsIR08Ew18PK02oY8raOlLLAaK2nlnt7fHeamJLrQAdTPFTYLEQKTvWke4ibiofbQRTnvu3G79UEAoBiHpmpRVylcBzKSTtM7rAnlWtXvrypgSrOn+ACger7nF/JNFZ+C6sV2gn03xtbQpyEE4WL+4l1Fl303fjfNg/AegKzF7iN9N56pglmMKmDITLpL9NS8ZC/+LfpP64PwRP/z3p5BbZuHW/F3ecl37BSk2WSlRC9184HiWfc8Xc3rHhnQQoTAFGOah+u+G3dT2xebtPm7DYJ3BcEAFODY+mIRZ3HNVsHngGqkAPgyrc/J2086KSwr3R0aNxH/le7ULf33YHvh4EtbXUq1Ew8x+M6Eoln3LCyte3ZSK+Xi1z2x06j9hacTAlOUFCYe9t34q5PsRYgvqOchhN3WBwIWsN1346WBrMc0D74bM5KqgY+1RHyy48KfH6qSqvzie9OWmaVF8e97CCH+c5H2Eg5S8FnqpuhiIXAaC1U2lKzFamD7ApWxL8CS0ronVljHrqqxQ9cQQnhR8LonvsMIgZ9ICEyR3msPfW5DI3vxdObpNA/uW4Sn6bVqg5UbC39B2rQxvXQCG5bu/31RydpBVyEWk/YSLtLhiL0CR3bJNYqDb5Qu7jcdxN/rhmbSvgBwL6mY7lW6+uq80INf2+kgH08gBKZYqT3084Jf3lpy0Hfjf6Z5eNX6QACQr/iS1Hfja5uijzKpAmYh3/fdaM34ON+n/1Rtm8NO/7OotCm6Hw8rF3gVxP8s8V/Sd+PgQD2VeJmq3gD4hNT1bDddD6MDSIOEwBTtvZe3VzZss/ey78abxk5oAlCeWA38o43RB3ud1mXwVDsqXIA1OUrfNyX9zX/y5m26J9z+CbXYarAaGOBB0oH3/RDCG53P2vN16wNAHVKF6a5WYdk7jRe6tz4IAOQrBZkqWh/mJoXnAKugEpiVaPhv/mADmMo41ADwBenqpteFjdM/M3iG4gmBqcY0D1chhO9CCFdmNWuXgmAAcpYqCdxte3/HqoCBVfH9wiq19jc/VQG/yOBRYElbrpIAuJexsCI6h9YWIASmKnGDYJqHXdUoWYtf3ufp5RMAcnVkZu7FVQ/AKqkCZh0uGhrlExuqVOqFfSaAu6XDlQroGiMEpkrTPMSN233tobO1lSqCLdAByNI0Dxdeju5FWA6skq4MrMPPLYxy343xPfwgg0eBVehTq3MA7tbEuoe/CIGpVtq8fe70eLZiS+jT1gcBgKy5G/huV2m9BbAq/zayrFq6WqoF7k2ldqqBAb7MIcvGCIGpWrrwPLaH1qYwT3t9NwqCAchS2hRWDfx5QnJg1RzoZV2q7iLWd+OOKmAa0DvsAHC3hg6/kQiBqV66J/gwhHCoPXSWDvpu9DIKQK4OzcwnXXh5BNbA9wzrUvuBA8EYrRhS63MAaF70jVGgFdM8nPXdeJ1aEG+b+Kyc9t34bo5aHwgA8hK7ivTdeKZ65m/cBQys2nU80GuU4WlSFfBOBcN4o4Xlym2lf0r30kFOgDvdVPJ9zz0IgWnKNA/XfTfupiB4z+xn5SSG9HGOWh8IALJzLAT+wFm6cgNglVQBwzJquYJp1/pjtdKBgcsKPkrsOHfs5wXgs4TADdEOmuak9tD7KliyE+9uuey7UZU2AFlJG0juv/3DZCyANfnJQMPTpKuXatjkHQV6q5eu+qilQ9tJBs8AABsnBKZZ0zyMIYTn7gnOSp9aQ/etDwQA2RmtGd55bRMWWIMbHYJgETXcBewA2nodV7Lm3UuVzQDQNCEwTUsbC99pNZaV7UraDwFQkXQv5evG53RKYTjAql0YYXiavhtfVVIFfOR+8PVJh/1qWfPWcAgCAJ5ECEzzUnvoXSdLs7Ldd2Mt9xYBUI8x3Z3TqmObsMCatH7oBp4kddd6UcEoXk/zUEt74pLUsubdUQ0MQOuEwJBM8xBPye5q9ZiNg74b3eECQDZSANrqobGbdJUGwKpdaTsPTzak65ZKd+RHYf0qW/OqBgagaUJgeM80D1fpnmD3T+Vh6LvxoPVBACAfqRqlxXBCxxRgXXzfwBP03bhVSRXwRdqjYQPSmreG8d+xrwRAy4TA8JF46nyah+fuvMvGad+Ne60PAgBZaa0q5UorRmBNroQ+8GQvK6gCnlQBZ0E1MAAUTggMnzHNQ3zhONQeOgsxCN5ufRAAyMM0DxeVVEbcl6o8YF0OjTQ8XqoCrqHq8bW28JuXDuXUcBBwSzUwAK0SAsMdUtXLrvbQGxdPMV+mF1oAyEErwaiqPGBdjoU+8GQnFQzhjc5sWTmupDhCNTAATRICwxdM83CdgmBtEDcrBsHnfTeW3tYKgAqkYLSFcFQrRmAdrqd5eGWk4fH6btwJIdRwlVI8EKIjWybS4ZzXFXyUWA3s7wwAzRECwz3EF5BpHg61J9u42BL6vPExACAfta8LztJhOIBVimHPvhGGJ6uh0vEqdWQjL2Oq0C7dC4UFALRGCAwPkF5Gnley+C3VTt+Np60PAgCblyojat6odBcwsA772kDD06Qq4J0KhlEHkgylyuwa1oUxAB4yeA4AWBshMDxQqoiJQfCFsduYA218AMhErUGpuzmBdTh07zgsooaD0jqQZCwVRdTwfa0aGICmCIHhEVJ76H0VMhv1su/Gg4Y/PwAZSEFpbeuBKbX9A1ilQ21f4enSe/FW4UM5qQIuQi3VwDW0TgeAexECwxNM8xCrUXfTCwvrd5raXgHAJo2VrQVep7Z/AKsQv1+eC4BhMTUEWtYeBUidG2r47h76biz94AQA3IsQGJ4oLYK/q6QtTonO+27cbn0QANictGn5upIpuFEFDKzQVQqAtXyFBaRrkkoPs27SAXvKcFzJ4UfVwAA0QQgMC0jtoXdtmm5En4Jgd7oAsEljClBLd6wSB1iBKX2/7LpvHJaR3oFfVDCchxk8A/eUvsNrOPx4oBoYgBYIgWFB0zzEO2z2tYdeu7hwvxQEA7ApKTgt/Z60G+1ZgRU4S9W/Kv1gWUM6FF2yq9RdjbLUcvjxJINnAICVEgLDwqZ5uIibHCEELc7WK7aEPm3pAwOQlxSglrwhphIHWFL8ToyVv4eqf2FZqYJRFTAbUcnhx2iv78adDJ4DAFZGCAwrEDc5pnl4njY+WJ+4gBcEA7BJR4WOvkocYAm394p/l8Jf3yuwGi8rqAIeHRApVzr8WMN3vLuBAaiaEBhWKG58pJOt2kOvT7zXZWjlwwKQl9QRpMQNsRqqOYDNuEmHX/eneYjh75FgB1YnVQEfFD7EtVSStq6GOdxRDQxAzYTAsGLpdOSu9tBrddJ3Y+kvxQCUq7QNsQvVesAD3Ia+R+mu39uq3wuDCGtRQ/ero9RSmIKl9WMNHfBUAwNQrW9MLazeNA/XfTfuppe1PUO+FjEIvo5j38BnBSAjcUOs78a4KVZKVUGpLayB1blJ/8SQ5t+3/78DI7Bx2xW0gb5Oh+Wpw3Ha5yr551IlMADVEgLDmqRTrvupVfGJcV+5+AJyGcN3QTBfcFTBRgqE1HFit5CRaOF7eT9t1OZuaqhtaynf96uqjCrl+4ENqTjgLeneSu8tm+OdYH20i69IXEemoge/P5AH6x7uo/V346Z81foAwCb03Rg3hc9DCFsmYOXehSJaTQEAAAAAAK0QAsOG9N3YpyBY25nVEwQDAAAAAADNeGaqYTPe/v7L27e///LTt89++EoQvHL/G/95+/svP1f+OQEAAAAAAFQCQw76btxJVcHuUFmtcZqHo5o/IAAAAAAAgBAYMtF341YKgrfNyUodTvNwVvHnAwAAAAAAGicEhsz03XgSQhjMy0rtT/NwUfHnAwAAAAAAGiYEhgz13bgXQjjVHnplphDC7jQP15V+PgAAAAAAoGFCYMhU343bKQjWHno1YhD8fJqHmxo/HAAAAAAA0K6vzT3kKVWp7oYQ3F+7GrHK+rzvRtXWAAAAAABAVVQCQwH6bjxIVcEs73qah+fGFQAAAAAAqIVKYCjANA+xGjgGlVoXL2+770YBOwAAAAAAUI1nphLK8Pb3X/7vt89++CmE8P+lf1jO9rfPfvjq7e+/XBlTAAAAAACgdNpBQ4H6bhxCCCfmbnGHqeoaAAAAAACgWEJgKFTfjTshhPP4L83honaneVARDAAAAAAAFEsIDAXru7FPQfCOeVzMlILg60o+DwAAAAAA0BghMFSg78bYGnowl4uJQfB30zxMlXweAAAAAACgIV+bbCjfNA9HIYT9FF7ydLHC+jJVWgMAAAAAABRFCAyVmObhIoTwPISgjfEytkMIpzV8EAAAAAAAoC3aQUOF+m6M4eWBuV3E2TQPhxV8DgAAAAAAoBHPTDTU5+3vv/z87bMf/hNC2AkhfGuKn2T722c//Pft77/8n4I/AwAAAAAA0BCVwFCxvhtvWxpvm+cnO5zm4azwzwAAAAAAADRACAyV67uxT0Hwnrl+sufTPLhzGQAAAAAAyJoQGBrRd+MQQjgx308yhRB2BcEAAAAAAEDOhMDQkNQe+jyEsGXeH+06BcFToc8PAAAAAABUTggMjUntoWMQvGPuH00QDAAAAAAAZOuZqYG2vP39l7dvf//lp2+f/fCVIPjR/jf+8/b3X34u9PkBAAAAAICKqQSGhvXduJOqgns/B49yNs3DYYHPDQAAAAAAVOxrkwvtmubhKoTwPLU35uEO+m48MG4AAAAAAEBOVAID7/TdeBJCGIzGoxxO83BW4HMDAAAAAAAVEgIDf+q7cS+EcKo99INNIYTdaR5UVAMAAAAAABsnBAY+0HfjdgqCt43Mg8Qg+Pk0DzcFPTMAAAAAAFAhdwIDH0jVrLshBO2NHyZWT5/33aiKGgAAAAAA2CiVwMBn9d14EEI40R76Qa6neXhe0PMCAAAAAACVUQkMfNY0D2epKliL4/vb7rvxtJSHBQAAAAAA6iMEBu6U2kPHytYLI3VvB303nhTyrAAAAAAAQGW0gwbure/GIbWH5n4OUzU1AAAAAADA2giBgQfpu3EnhHDunuB7253m4aqQZwUAAAAAACogBAYerO/GPgXBO0bvi6YUBF9n/pwAAAAAAEAlhMDAo/Xd+CqE8NIIflEMgr+b5mHK/DkBAAAAAIAKCIGBJ+m7cS+EcKo99Bddp4pgQTAAAAAAALBSXxte4CmmebgIITxPISeft51aaAMAAAAAAKyUSmBgMX03xorgAyN6p7NpHg4zfj4AAAAAAKBwz0wgsJS3v//y87fPfvhPCGEnhPCtgf2k7W+f/fDft7//8n8yfDYAAAAAAKACKoGBxfXduJ3uCd42up91OM3DWabPBgAAAAAAFEwIDKxE3419COFEe+g7PZ/mwV3KAAAAAADAooTAwEr13TikMJi/m0IIu4JgAAAAAABgSUJgYOVSe+jzEMKW0f6bm1QRPGX2XAAAAAAAQKG+NnHAqqVK1+chhCuD/TcxGL9M7bMBAAAAAACe7JkhBNbh7e+/vH37+y8/ffvsh9iBYMegf+B/4z9vf//l54yeCQAAAAAAKJR20MDa9d24k9pDq3790Nk0D4c5PRAAAAAAAFAeITCwEan98WUIYdsMfOBwmoezjJ4HAAAAAAAojBAY2Ki+G09CCINZ+IAgGAAAAAAAeDQhMLBxfTfuhRBOtYf+0xRC2J3m4TqT5wEAAAAAAAoiBAay0HfjdgqCtYf+gyAYAAAAAAB4lK8NG5CDFHbuhhC0Qf5DrIo+TXcnAwAAAAAA3JtKYCA7fTcehBBOtId+53qah+cZPAcAAAAAAFAIlcBAdqZ5OEtVwTdmJ2z33XiawXMAAAAAAACFEAIDWUrtoWMF7IUZCgd9N55k8BwAAAAAAEABtIMGstd345DaQ7fuMFVJAwAAAAAAfJYQGChC3407IYRz9wSH/WkeVEcDAAAAAACfJQQGitF3Y5+C4J2GZ22K9yWndtkAAAAAAAB/IwQGitN346sQwsuGZy4Gwd9N8zBl8CwAAAAAAEBmhMBAkfpu3AshnDbcHvo6VQQLggEAAAAAgA98bTiAEqV7cZ+nMLRF26k1NgAAAAAAwAdUAgPF67sxVgQfNDqTZ9M8HGbwHAAAAAAAQCaemQigdG9//+Xnb5/98J8Qwk4I4dvGJnT722c/fPX291+uMngWAAAAAAAgAyqBgWr03bid7gnebnBWD6d5OMvgOQAAAAAAgA0TAgNV6buxDyGcNNoe+vk0D63ekQwAAAAAACRCYKBKfTcOKQxuyRRC2BUEAwAAAABA24TAQLVSe+jzEMJWQ7N8kyqCpwyeBQAAAAAA2ICvDTpQq1QR+zyEcNHQJMfA+zK1xQYAAAAAABokBAaqFitip3nYDyEcNzTTsQL6NIPnAAAAAAAANkA7aKAZfTfupPbQrVTJjtM8HGXwHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPD/twfHBAAAAAiD1j+1GfwBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgUQ369EDPKq/wBQAAAABJRU5ErkJggg==",logoSmallUrl:"data:image/png;base64,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"};const HoparaTheme={originalColor:"#622AD4",secondaryColor:"#622AD4",borderRadius:3,mode:"light"};const IBBXTheme={originalColor:"#f66f2d",secondaryColor:"#219cb5",borderRadius:3,logoUrl:"https://ibbx.tech/wp-content/uploads/2021/12/ibbx-logo-preto.png",logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMUAAAC1CAYAAADvGjsxAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMi1jMDAwIDc5LjU2NmViYzViNCwgMjAyMi8wNS8wOS0wODoyNTo1NSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTRGQTU0MDNFOUNBMTFFQ0E0RDNGMjJGRTRGODA4NkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTRGQTU0MDRFOUNBMTFFQ0E0RDNGMjJGRTRGODA4NkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1NEZBNTQwMUU5Q0ExMUVDQTREM0YyMkZFNEY4MDg2QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo1NEZBNTQwMkU5Q0ExMUVDQTREM0YyMkZFNEY4MDg2QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkyM1agAACjeSURBVHja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"};const MWMTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#0067A9",secondaryColor:"#FFBC00",borderRadius:3};const SEWTheme={logoUrl:"https://www.sew-eurodrive.com.br/media/required_files/layout/img/sew-logo_bp40_bp50_91x67_2x-4.png",logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACQCAYAAACyAlbPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMi1jMDAwIDc5LjU2NmViYzViNCwgMjAyMi8wNS8wOS0wODoyNTo1NSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6N0RDRDMzODdGRkUwMTFFQzlDQjdCN0VCQzk4MjlENUYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6N0RDRDMzODhGRkUwMTFFQzlDQjdCN0VCQzk4MjlENUYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3RENEMzM4NUZGRTAxMUVDOUNCN0I3RUJDOTgyOUQ1RiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3RENEMzM4NkZGRTAxMUVDOUNCN0I3RUJDOTgyOUQ1RiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqO/74wAAB5uSURBVHja7F0HuFXFtV5XEKQjNlRUbEgQBQQEBBuKPdYkGjVKNMaE+GzRl1iI7WkSfUZNxIIgRcTeUXmIilhBsD2xYEMEAUUFAQEFbuZ3rxMPx1P2zJ7Zs/Y583/f+uDeu/fM7Clr1qxZpa6+vp4CAgICsoB1QhcEBAQEhhUQEBAQGFZAQECtomHhL+bUbSqtjS0VbaJoS0Vt+f/rK2qqaD1FUMKtZFqs6CtFCxTN5X9B34ahDgjIHtrVzyvPsDyjmaJuinZV1FlRF0VbKdrAsLxVzLBmKZqh6B1Fryh6jZmbS7Tg7wm3Gn5Qp2gpk2u0UtTE8Vjje+anJMRsKGTeQiD5eK1OKLwl9CBhtVd0qKJ9FPVNwJx08LWiaYqeUfSUoucc1HGtokGK1gTe4Y1hYXveVtFqh/VA0p/NG5RrhnWiojsd99vFis4TwLDwve8rCWtHCRIWBvdnio5WtB83Lu1jZn+mSxS9pehxRfcresFiHesGvuEVkM47KHrbYR29UtpkideKa4Y1QFEjIeM3rpj4lyZ2UHSqol+x2CkFnZj+yEfG2xWNUfRZgjK/qVEmAYlS0mVOL8cMq3+K39LHcfmQFncRNHbXFP4irYm1vaLRFOmQzhLGrAqBAbta0YeKrucjRYAe/k/RCiFt2dVx+bul+C0dFW3ksPyuFOmNJAAnnflpMywona9SNJOlqiwBbf8DztGKhrF0GFAZmFN3KHpCSHu6OZZIdkv5e/Z1WHY/QfNodKnJ5QrHM6M6pwoW4cksHV6Xor4iy3i71ITzgO4U6RNdoLcHiWR3x8dnCYDC/660GBZ2HSgGb1O0WZUtxNNZ4jom8KSywDX/g0LagouPnRyVvaeH73HJVHYTMmYTFC1Kg2FBX4Abt6OreDG2DlJWRcDIFzZw7wppjytltY8jFI64bRxJom2FjNeocvoGWzhW0RSKrpKrGZ8rGhJ4UkUpG7hdSHt2cfSNfT18Sx25uUjYVchYwSvlAdcM61xBk9M1RgZ+VBE5Y9mxQtrjYjH2VNTY0/e40GNJOQ4+TGVumG0wrMGKrqyhxTg08KPY+IAiNyjfgGlKO8tl9vf4Pb0dlNlXyJwpKxAkZVhnKLq0hhbgdIqU7gHxcZuQdtg2b/BpAmD7dnILRVsLGCO4zD3uimEdRpG/XC3hhsB/tHGHkHbYvNFr4vkIBf1Z1yqUru6lCr63pgwLIvaDNbbwvhW0+LIEOCA/L6AdNhlML/JvEb6H8COm9eNgEob1ZA0uPHD/5YH/ZPZYiHBFtpzR9xbwPTbtsSRIWAgD9awLhoUr/a1qcNHdGPiOMe4W0AZECOlRRQscbaiz1C87C/ie4XEe0mVYsBgeVIMLDvGOnqMAUyAKrATfQhv2WE2EMCxE3u1o6agsIZxMLFcuXYY1qkYX3HAKSIoRAtpgwx4LUpqUiAb9LH2Pb8A7JpZXhA7DQvCwbjW62IYFfpMYcGb1HSPMBsPaX1Cf2rhI2F3Ad8TWceowrCtrdKFNVPRp4DeJgetq3zfLiD6aNBbbvoL61IaPpAQJK7ZHxDoaH9WlRhfatRRgCyM9179OwkUOBbWkiJyI0bZ5gvfxLb4d+eF/PNs2wzq7RhcYlMWPBj5jDU9wn/pEEoNLHJ+kxelPciyUEP9KK25aHIaFyJtH1+gCu40CbONez/UnMZLsK7A/k7RJgsOzlslLnCQUh5C8DNHwOZrOoiT+30BRc4riBMFGDDHkbdzkBFcc+8Bt4Ske6++e4N19BPZnEgbsOyQyJO6FthnWAYIGB8lQ4WyNJAflEqFCsdqBRfgD+N8GmnW9TnIC0GUN5fQiL1LkruMrxXjOfukdzfewIUq8Jd+V5/tCzfcQvaJ91k4wcRiWlMD08OM7NuazC5mQeePvPDhw1j5G43tuqhLm8RFFMYbSxFMV/o4Q2md57JOeBgwL86aRwPGt47bp3sAO8NxuRKS93zbDwkLfTsCgvKfBrIphDkUuRSDcEsFa//gKnTmmShjWVEVnCmvTSM8Mq4fB7r6n4DHubcCwfOuvHlK0TPelSrqpjkIGxKYuCUcSpByDmcY9JZ7B4C+tEobVXGCb3qAo76PPBa6LvQSPsckpyHdI5JtNXqrEsH4i6FjjYtH8gqIwHYV+giFmu3v4DKmNyA1NNJm+ZC8PtE3nkgnJWH06PH9Bhr6llRiWlKgMLo+lCGkBpfxpeb+bFPiJc/g0GWlKehbemB+NBfdlU02p0bd0ZRy9oxLDWl/IgJyTwtFmCIvWIedgOoBecprH+nUMSPtmoD91mJDvizTjzaoSw2opZDCQLw1mBq4dTxEZ867AS1LDSI9160gk/TPQlzoRSH1KWJ9QpEd2wrAkXeNuo2i8opcUXUCREV/rsOYzDZ+B/eLe+sHTo3sG+jKum8165DckcqIw45XMGuqEDkxucJZQZEwKjv0qRVf4wdhzbSwR3DYkpZ1Efm7g4DSMTDGVLnT2IJn2V4WA8WgXPolUOgo3zeJxMA7DWil8kFrwbpG/Y2ACQjfyMkXuO/AGX0a1C0gHF6dQD2JdXa1oteZ7o8mfyUDPGAyrb4bGuk8MhuUz/hWEiTddMqwlGVygWzP9nH/+giUv3AY+zUfKWgL8Ki9Kqa7rDBjWfRQFSPThr9orxrF07wyNNYxBK3lo9PTYvsTG2JUmyWdVsGDh13agoiv46DiTF1Y/CrB9vKs3eK9i8kyHqGRb1ZSyob/KIc6c9ikxOmdY71ThwoLEcTpLXJC8fu/5TF8tqE/wri+bLEgb5eyr+pNs+6tip4sty/wd9oybeWrbK4pmuWZYr1b5IsOEhdsP3EQuJJluLLUAuEKt8FAvxnvHMn/fN4N92U+odGUlgU0lhoUbuK9qYMEg5Mhlit5n6SsgXeBy5yFPdfdOeMSShnLf49Ph2UrW9EoMC1ELainLMxgX9FuTSI4fZa3AV3SMUi46CAbZPYP9WO4W0FdIZPgNfp4GwwLG1uDi2ZOly1MoIC08RuWDMqbNsHbPaD/CsbtVkd/D4dlXIplbbBUUh2FBv7CoBhcQjGaHKrom8JJUgDRg93uoF9nMi6X+2iuj/QhTpWKuRL7ccaCbtBZAMg7Dwu3PZTW8kBD87nYKSAO+MmwXM29wraCGzs6VfriYdOhLHwdmZc0APa6x3jU1KmXlgGinoynANeB8PttDvYXKaNjuuTSwXK7ococMq5cgCWuEzcLiMixIWafW+GJClNK/BJ7iHHd6qLNrytLVxxS5js11VD6YU4u8n2Fn2MdDv0InOd4HwwLutl15BnEJZVcZmxX4MCKFRJLv6O86fnvOvvF9R+VDj9WjQIJs4qFfrUfj0PXfOpwi37xaxkMU4BJwjp2Zcp1IObZt3s+uN6WcP+trDuvI/wZf/oPW1Si6DGsl7z71NbygEIX1qsBXnMLHJUdOImmTwgJ/hv+d4rCOfJ2VD4X7fPpxroTUGRYwg8/Dq2p4QSFkc9vAV6rqWNgnpcX9Bf0QYuVNchfCqV/BkbcqNh3TkB5TeBf6soYX1fmBrzjDR46PS8WQU7y7dl/BTWguBA/itE13VA+MR5szbVAtm06SGESYUJ15AGoRJ1M2IlFmFWm76nTmf3d0XE9hPPM3HNYFy3YfLmbYcF53UXDSoGnzWPSsRcNSXBUfGvhKto4UZQDdJJKc7OC4nmcKfp7qsC5YvPuIOHGLq4JtRXmEfRIcRSfW2KI6MvAVZ5ifsvQOswaYrbiMFwWD0cKQTS5TncF28CQPYzfKVcE2w9IiQNcARUeQg9sBodibAlwibe8CKKebOSwf66Iw7hfinLty+kawyu1S7kOYbHyaBYaVA5ylYQOyD+shVlfxgmqbwhGiloEckdV0G10sn8C3FFm9VwtGuizcZeD/p1gkRdhWpIEfzyJxtaErBbgCJI9xVfQ9k0v8/v+r6BvvySrDygGZXpEGHokgEG/6YEV/YwY2twoGaMvAV77HxuQmj2W1OJ3jpDFFQ/LKIiaQY1Onhil/0EKKArU9xj83UNSRophEOFp14Z8hla2XkUHaXHj7YOszh9wmxa3jsV3joGxIWMh5mPVEIbgNLJU275UqYVjODX4bev5A7DozmPKBgGqwi+nE/8JItYfQQZJu8Y6jeZbNL76jKLDf8RlfzC+W+dsHFN2KZtl74ltKIQBjkiPhtQ4XAnbrSRRltBnEDAtS1/ncMZLQUvhEWkPZRzUcCyeV+Vs9ubXHSgOPsCQskmHB3P8MiiIXHJdSh8xS9FeWuj4VNFDrCp9IDatgscO+L8vZm7DJPl3hmawr3lPZVEwZ1m/z/j+GJaG0Uo1DfD4iSDA1BUggd2a4/XBTWZrgyCgdyN79qGSGdWbBz8iejCzRaeU9m8qMSwKWU0AaGJPhtj8T45nXMvx991FK9pYmDAtMaYsiv4dVLVwprqR0nILnCRmsWg9omBZeEKYK0EEcswWY+MzK6PelFg7IhGGdWeHv5yp6T9FAx23fWshgzaWAtJDF7EVQGUyO+eykDH7fAqqsn/PGsKBsPyrGczCmHME7y8EO2o1QzVLsn+YJn1DfBYblFVCVxM16PD2D3zcizcp0b5AGajI5OJOOY8Z1M0W+YUl1PjuRn4iUpfCh8AnVmI/odSnXCx9A23oNKK+hu9w2Qwt6sub3ZQ2pmpzoMqxBhvX0ZoJ+6wGKbnyeM9j9odwf4mHxlRP3pwmfUHBC/yTlPkNdF/ImZRtjFQ3O0ILWCZEzjTf0Jhn5NkiPb0tlWDaiF25EkUkEKBfv6DWmT1h0Xsq7MwYN/mkdKEobDiPVbYQNGEKDSFe6N+J+TBuuwvIOzxjD0gm1BGb1FkWx5bKA1G9udRjW6ZbrhhvCUbS2TgwSC6xlYWgH3zHp/oRPUUApuLJ6RhLSKeQnsYIuECp4luY7UzPEsFL3QIirj4I197EptQeK/TaUDefnRwJf8oKsKN9NAllmxRH6ZT4ViWRYx1B2oiekBcRqeiJ0gxdkxerdhGG9mpFv83LxFZdhnRvWSNFdPrjl+MHnGTmOmzKsRRn4trFSGdbOFJkSBKyNa0IXeIV0Vx1cKr1l8B42wTeFfxs2Cy+XTXEY1mlhbfwIjyt6P3SDV9xLsvMFvJDgXekRSEf5qrgSw8It4nFhbQQmLhBLeOOQimcTvCvZERqbxP2+Kq/EsKBsbxrWxlpAksgPQzeIgOTAfkkkLMkuOvBcWeqr8koM64ywJtbCsiBdiQICSK4Q2C4EG0ySugsW5AuE9vlIn5WXY1jw1+oR1sRa+AXJC9Fcy8BYPCywXXCxqU9YhkS/QtxePuqzAeUY1h/CelgL/6Qfsv0EhB2/HCZYKENiBFLYv3mN/lGOYf06rIX/YHI4HosF8lt+LaxNNuJDvSGwr71HSSnFsA5T1Dqshe8Bm5h9QzeIBY5edwtqD24vbSSUkJa+HtFeX/DdiFIM66ywDv6jR+hJ1RUErxpxo6C2wLrdhp4TfnqzBH2XCEPdYgxrU0V7hjXwfUSAXUnmLVTA2oDD8GwhbbFp9CnJr1AswwouJ5FysTeFG8EsQUoEh8kWy5Ji8T6ThORNLMaw2tb4xP+zol+G9R8YlgGwwdnUPUlJrirGb7MYw9qLouietRY6BbcySGH297D2M4kZLAn4Pg4us1gegvlJ8JccK2WQSyndEZhuP0V9FA2j6OajWoEJcRFFIaBfDOs+0/DtqmN7/iAigu+AftCjSUlaXNE1BzvGKYraU5SPcGqVTXDYlSBm/KVhrVcFfEsCkx2U6dviXZS/ZtwAfl8quo6iONq4ObuCspmSCEC8oZGKuio6gYIjczUBMdR9RjpwoST3nZVJVHRXk8zPUCpewAu+B/8flr3Sb9SQjuhiRdtRZMX/eljfVYmRnuqdxhu7bfg81UCPPV/S4DZM+P50JkhcmynqT5Hiup+iTooaeP4+GN8hZhK8+tP2A9ysxhnHhp7qRbLeaz3U62oDfNvjGN4qbVI1tFgWTPfH0A9XoEglj3RFXZg6U5TC3mWSSLQBSsrnWZ/wEvmLu44gZ0uoNuO+r0Nu9DlxAIkAeQu3T7HvkTj2Fkdlw3D5PIpygqb5Pd/xRi8KdfX1a0fBmFO3qetdd1ueTFsyU9uCpREkWUV6r+Zl3q9nsXshMyfcXsyiKFwxbFZwrb0qnIoCAqoD7ernOZOw4mAh05QSXL01MyxIYY34SInfr+adBjYui8murUtAQEBG0FBQWyA9fcUUEBAQYMSw1mFJp95y3TnJaU1Be+pi1lXsfbJYVgP+9nqD76r3dDRtwMdt2Ja1U7Q+98NK3ghwfH6P7Jhy6PRvnPFKAtM5mmv/akvzW3fO5aKAtFL0jcF7cbGu5jghafISzfcojXkQh2GdqOivjhYYlIkj8n5+iRdaXFymaEiJv+F2UCef4r8UXZ7389UUJeEwlRZh5gFLZdxUQscGc5BnFM2z3IfNFB2u6CBFe8TsP+j6YIoyjkkXOLK/wgxRB2t4YUIP+Sn3zUzum1eZsZog6RxdxQx9LjNztGUSM/e4aM3v6VwqIeQ2LiemU3ndbSGw8fSO+eyxiv6hUXZjRYfw/+9ztO6RmPk2VwwLivJNHDW88Oq7Iy/AuNi4zN86aLa70Om7nYXvxsVCt7yfsTM+wsxxUsKyMcHPp8gTQdeEoAPTqbwowfSv05RoOiZo+7ZFfoekCwgtjHyDDxvMo6RjhQugzgW/wxjBNe32mGupvcH8AOAHeajGe/hW3BrGMXn4lUHfwPbraIfrvk0SUboSvnF4hCkse6Hm++WU77qZaQtTF7kIuwsR+0iWbkaQuYnHSSy1nUfJ7Z1whITdEm5Z99GQIG0bSW7Ci+shllSOTzCPbGEvisx0nmYGH0d61EHuaHeFQdsOiKki6KtZ7nhu1wYO1/1ylwwrwA0G8s66laZEfI+i4Q52P0gXExVdKaBvuvKR4cmEkpxNxjVDg6HrqA6AKaSvVzwwxjMIxNlCs9wb85idOASG5Rdbs/jdOMazOb3Rzxy36VyHugtd9GdG8VMBbWnIDL2To/KHaz4PZlQpyfF+mmV+nXccF2nwHBiWf0APV8nBtI4Z204ptelIluSkzNGHuU0SMMFRuaM0n29ElUOZH6RZ5ljpiyUwLBnALV/3Mn9/jH6sEHYNSHKXC+qj+1Jk2OUA5fzpDsqdyxKcDsrpsTYz6K+bAsMKiItzSvx+EMVTsLoAbiH7COqjx4W044+Oyh2i+fz+Fo+DSGcnPoKJb4bVhgLyxffC8djQYBK7kGykANLNJQLaAXOErg7KxQ3pYo3nd6BID1oMB2rWnWaqtPVNX3ThmgNl3YMUXV3WVWCWL1H14HXepVpSZCOzneb7LXkR5IfEvULAd8EbfiDJSQn/F4oMIRcnKAOB/pAUFBcZ2xgyH0ietoMF4tbwDkW/0zwWFmM2usl/kybxWM3rfkWMdW+cqMMFw4INx1E1KCHdVKADOJsia3kdbJ/HsMDATrawAGCr1jxhORdaYFjLeVI3t9DXMJb93wTvj+ejdr50C8W+zlX+lo7m0VBNhrVfEYbVW/P0Mi7hBgDAs8P1DbazI2FdDTKswgkCKUA3WmSrvP8fk2B8cIw7giIbLyhfYfSIcNDPGZYHy/QeCfvnDG7LNnxcuYrMjU9PSNiWQqaJSw3dYHUbOZpHMJp9V+P5AfRjA+T9BR8HxTGsOj5bYwFvUIKgm2lK1YViTPrlBONxmGE7BvJOB/EcvnpwYoX7DQwxdydzn7ukZgVfcFs+Ygnnv5kRTjQoaydKFtG12FjpqifWdTiXdJgnXNn2Lvjd4Rrvf0V2ovHW8cbodN27YFiN+Gw/twzNocitpNrRQfP5lXmD38ugvv+iyvY8uPkzyYTSK2FfFDsKLmIJ4R0P7Uk6Vl87nDe6Nln5N4Jg5Do6OVtZcRDh4Y0Y6/5ciUfCxvwBjctQC6ouLCgikQzQLGN+3uLR9eWCL+D1MZ9FEo6lmuXvTO7ip/3O4J0uCepbVPBzJ4M2zHM8l3Qkz3wDUV0TmFuytO59BvBbTtUFiOEtmdHgyGLiTpI7Qm5n8O4NGs/iJhfJGnSU+hvy7j3bQd8h7M5nVD76RiE2T1AflNJn8+JBXx9H+npX12nkoXyPe9OHy5qt+bitY3+FaA8zsrTuG1KALRzMZApcs+eiVbQ2eH+KAZPQvYVs7YhhAciafJhmW0zRg5JdIuBGbILj+fQAS8Fxb1X7MMPSkepvztoiC5bucnBB3v8bGbyvmz/uY4M6Gjn8ft1wQI09jhUyha90XMcqloLjAq5bUGjrmDOMCQwrwAQwgZiU9/NqgzJ0b61MmM/qMFTfx8ZKy8dSRwLC0VbnJvdhg00iMKyEqDf8myTAKLPQN22pQTlbaT6/g0EdSxz2QzvN51d6GCuEgOmfYn3Qab4V89nNNdv2zywueJ8Mq1i0TZsGp3WOnzcFFN6wPocLRvcSu/Ucg3J1jQUP1Xx+OblLW4552E/znbSyK33HUhXinP/GwzoZFvM5XFi0j/ksdKVPClr3seFK6f4tL8y6MsxhiQWpqNzHtzFgJGkACw3X6J+VeQY3N/DJWk+j3NMo8rOL8x2I4qnrzf+2oeQXB38mfYPCD1IaLzCqCeQPoyleEon2GlLqKGHr3ivDQqN34QVZruHLLBw5SkV/xHW1rq/X0pQmIBgpYrL/rcwzy5hpddcotxXrJQ6p8Bz85R41aPdrjvpjDzLTCb2c0nid6plhQc8Ez4ADYqzluOt5qIN24ojejaW3cus+0TpzdSTEbvw5M61itKBEwxdo1gPbp2I2S4MNjnizU5qAaBfcYypdP5u4rMCsAll5Sllt92XGs41B2eMTfnfhMRchRv5EkXmFyTFtaoK26OSMhCL7UvILmwwG1ugzHak64qz7RFnbXUhY9QmOV7pX7bjaRnQDREV4n39GooBjDep+N+F3X811x3WLeJD1DsvKiO1/MjzCHMIMZhpvDDBm3Y30M6jksIL0U28V4jcsMaItO7Jk1dKwrPEJd+ohzLTjGvdiAxyXkEkmAeYKrPNbWyhrKGUYDR2VeS0f7ypJcNBD3Fog5p+kWR+OfxdbEGffSlgGjlmIhvBAzOehs0HAtn3LSKlgOKYGjgeQvUilwyj5rdwvmWzghoTvY97dRHreCGDYbT2tUwgBiLc+yEJZrmyvYFbzD96AK617OOOPlMKwoCM5I+azHxYwrMc8TYhJSUVVihSeutlsIZH9nkqH94D7yGQBG9v/CNpkZ1o4nkLC+xdL1XHNO5BWDbkkf+3pu4dbYFhguosdtQ+85CyN04wRw/Jth/VRwc/QIz3voR0jLJSxlaHIDWlhixJ/e5YinZRPXEj6ukWXOMFCGbmj6Pma7w2kZO5XSfAKJdc9SXHFmWX6okTD0QtSrg9B5O6yUE5OyW9yPH2ozN+OdrgrVgL8EyVlzhlK+j6TxZCz2L9f0aea795H/iKNDEvwrq24V14hkWHh1mhiivXZMgbMXTQg7Mgdmu/iOnhwib/BYHNPD+MAI9EBguYFnKNPdVDuYM3nGzOj84Ek9lOjqQog1TXn55RO+BkM4gMOyjWREnF1Xkqf8nrKzANX0AiQt0TIfMBxaA9HZd9K+qGacVHiQ5eFcTFNdXYLVQGkMixc4SKc77cO68A19YmOyoZuzsQMoNxknMhMZI7jvockg2B9s4XMBRzXe5Ke7ZQuTC4VoATfyEN/XG/wDhj+DKoCSHZ+nk6RTZOLjsYN0U8dt/9Mg3cQhK3clT3sgDo52i1xdX4RRfZaEpTsYJhQsB9D7t2m4Aisa9dVV7AppeWL+piBRCg+o7NNhuUy7lAl5SVskTrzDmjDdQZW3ggSFyfVeDPNstcrImWZXL/DzOGgMn/HMe23FOm1bChR1/DR+CcU36Ibi7O1ozmBMYfBLKz145qJ6M7RwrGFEt4kbRgilw7O60ddf0jT+GK6OQTvNKjD5bo3TvUWxw7rG4qMBm2Ha8GkjxuPZzDvgscxw+mpwVDm8HHqXtLzoVuk8d2lfKSw8KB7aaDRfzDAu5mPZeUiEkxmghSKPJCI1tAt5pguZWkNR9B7SN/DAN8CpfwGhvMC/fUdz62FzKRwbHmaj6S6+EZzrBYV+f1VvBHofBPKupgiZfgclnyaabTDVE+L+XFyjHmFOsaSmS5ymcN1/6Xxy/X1a7dnTt2mhc805d203nLjId2tMGz8xix5IeoADPpa8Y6wmifvVzyB3uQjpYkurBVPvjUxv+XrEkxrE/67ziLAopllIFVuwYxue+6j5ryLY+ItZiaDDDWIR/55wkm3seZ3FR6dVvFYLbMwl3Tm6Dpc76ISEn8LzSNoCy7rc42xrstbuCsMvzlOXfj7PMN124zXgNd1365+XnmGFRAQECAVIURyQEBAYFgBAQEBgWEFBATULP4twACu8sI0xi2kpQAAAABJRU5ErkJggg==",originalColor:"#de0000",secondaryColor:"#008585",borderRadius:3};const SGPAMTheme={logoUrl:"https://sgpam.com.br/sites/all/themes/pam/images/logo.png?a=x",logoSmallUrl:"data:image/png;base64,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",originalColor:"#2896b6",secondaryColor:"#e8922c",borderRadius:3};const ConfibraTheme={logoSmallUrl:"data:image/png;base64,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Y7u9dt83lLX3aTPHL9EJECPVJAAa6ymsEhgsB+hA3BJkQfEY+df/nkb+5yH2fxhz/jPLb7vtFO4RLEZd1EILcUFgARG4LJYBq5XXb3RvUPjJ73wnjSX5tNucTNmty3BabwK3DU9WS1q7P77tp+jbfqmWDCSAU9BBpL3sdHrFm998rnZikkIQWBoIVBr0lgZnNXJx7LnnUpAEkmpstNcrFHqt555Wdt/ToIKBmTbr+IYKTGM96QHIl0f+Sm5Oo1Nfe71yfv7Dyoo3PG83NMnIz+CIfVkjcFlLAKXId91xxwjcI68//3waDT5tQRKATsCXBCANwNTW2/mxSdtfj809yZaMhZEfNxWlB6dz6XUy8mtM5c/ljUBtbeIyKCtLAu7gYC8+9NFrf+sZZX3rWT3m0wdJyZTO9nlFIPAz0oK5mBRr/e/8KfzuplTPR2TOr/GTP1cOAleMBMCvpCgJfGtfGo07XYAk4EASsLROYPZVuuJkAaO+akxg5E+NqquWj0DfgJF/WkZ+BlrsKwKBK04C4LdSlASgE8AFHr221glghUDrBILzAxyfgTAHivFl7zvfhd+7cftPZLfdsnJ3Lu9llt+2XrT9DJjYVwQCV5wEwG+lKAn4OgHl6wQ8SALWpJEEuNFTmuLIT3N+OtCTbMHIv2wEp33TLbeuTzNdsQWBKwmBK7YD4JeUm5rag9WBr6l/8eO97i0/1mvtJZ0AfmjxwVoAYutLRjDn736HcmjOb9mPInw3HuSGHwZT7CsOgSu+AyhKAvv2lawOLE9a+CKx3iuAV6pHfz3nb6K1/lGL5vzKwsh/q4z8V1yVlwKVInDFdwBcWHyDUEsC7pa39arb3trr9T2lHOgFzNdHcIfg7Vv1vF9FrEftmNqtMvLpb8ZO7CsXgX82HQBLAq999+9H9dyfRnwYGv3pZ2Heb121AlsIvNGW9TLyEzZiBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFB4MpD4P8DtGktnoREaAYAAAAASUVORK5CYII=",originalColor:"#E93323",secondaryColor:"#363435",borderRadius:3};const JMendesTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#006373",secondaryColor:"#000000",borderRadius:3};const SAAECapivariTheme={logoSmallUrl:"data:image/png;base64,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dxV1tU+gjYWYptzwr3fOSgbmPOz69jDOTaqo6D+ebbif6cPRjPaJR740qkMdrHbd2DgmulMRqFNZ5TiNvsG1Nzv/rcJ/oQzHTYSBXSHAiMguJ6Z2tme66cWKJ+ur2a2i2qVJYo5nidkuKx5EOFsvPvoq3ILw26l8b2tnV8e2lbcutwa+UyJ94pHFo9KOPxayrEZYT4w8h7MHo6mYLvHjdyppOwI+uwsUO5CNwIjnKgQKPWKBtk0ELjvpscZcRSQ3bWzkJLuph+kOPil8Iog7LE6ZINqPdXYHdE10a32QgCdNCU83PvmZB/fxezYTm9FwpO4OHY6c389Tf+Avfzi2vSU1gVnyaG3SqMgup9pYjyxkrYnsKbcxjqtm66llFBqMqkxUFuLMRV0QUztHODYiDVrYUbETv4N9ftS6o32vu9seHf5+MX/cVwuWLvFZi60o5aTbp//ie7sGRTggfd2jfzVR+Z1TA6Mq8QAaBdFOg+Yw6rp2pGM/RmQNlx69goAmV5ssSdIpVjjz2UXfoNE4rUiEHRD6TsIj7WHnRnNQWrTr2Y8VPohFtg4n+L8bfvqVsamWzomuayqYxoyH0ycgGCbbQ9fBK2ZCNvsQo6pbYCIuuQAkixHM73Q5UZiEuZNRiIHaU3vdEAHpxlo5QemAcZ2mhNq1sxBW/VxhORECoN862TDXma4i1OjQL3FDx4kVGTdebDLpXUH12LnJlbVX2vVuSScYAetMVNJR4h+IDvitTpUbL+FgwC4WRg+lhBdEHQczmZWN81Dna0eiOn+4qsP7STwMCnAWzq1PqI4Sz+LkFbMZMBMz7ftiprKyOQ1jD+vS5vA2UHIXBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBA4mQj8X33C1WZd1V9aAAAAAElFTkSuQmCC",originalColor:"#2A629B",secondaryColor:"#4AA366",borderRadius:3};const SaoMartinhoTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#0F2D56",secondaryColor:"#3D8937",borderRadius:3};const VallourecTheme={logoSmallUrl:"data:image/png;base64,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dgh1xGwQ+IndT9zwg2O/v5hjlGzvj0CaAPpjsihrrrvwyN8g70/TW3vlRMCsDxNCH9JTtqmILvnVnm9fli97rdgSLp0IpAlg6YxlNtbe5XQs1b/RLUC1ffdJwFf86pN/bFdd3+QQtbWy4r3XXXLkVUsoVMmVEIE0ASyhS+H6iw+9u9XNThj0Pr+9EwB/y3cFeO/P1Z73/zxYhCAD/+buipX2gSNrTy9LKgJpAlhSw5llN/zo2A9jVb8Y6dvzDUDeGtg9vtD8DjuAsGXQ7YPxcj7A5IAL5M03/d8/bVhiYUruhAikCWCJXQp8jx5f1DlSW3shk1lP+PXUn22kbWIgHbb92iG08vyme++60xlLLETJnSgCaQKIgrFUyBsuO+4C5LJ9OjBs4801+6YgKP9mH5Z42w04xnTUfvLl579q81KJS/KjPwJpAuiPyZKoWZGN/TOW923czuvbfkxy0mHHz5NAW0NEMwT5L/dcvutZSyIYyYmBEUg/Cz4wNIu74c6bvnrbut2ftQuS/Cna4tMjuyWQa7Xf/LJbANSFW4FXXvmjIy4Va8KlGYG0A1ia42perRxbfQoS/paBLnIHwGI7geotQTxDuOTGH5+Av0uYylKPQJoAlvAIX/3DI27Hd3fXT9XFVruVvvAz1aAtUv40ASzSgZus2Q/d7SlnYVf/08nyY8L46vWXHf+1SfMnxkUdgTQBLOrhG278+efvP561WkcP5yQHvvDTztIXfiYXrCXBlSaAJTGMEztx42UnnMeVfWIutObFx66/9MRLhvIlhiUTgTQBLJmhHOJIOzsSk0BnIFeeb1/Raqcv/AwM0NJsSBPA0hzXPq82XHrij1H5/r6GUIHnBO+59rLjfzmoPdUvzQikCWBpjmuzV+3l+PPdecNPeaNuWZ6+8NMctSVdmyaAJT28vc5tuPSYm3Ab8MbeWkwJeX7GjT844eZ6fTpf+hFIE8DSH+MeD1ftdv+34m8JXV1W5vmGe2c7n1meJ2KHikCaAHao4c6yq88/eEvRapVv9eGDv6+//PL0hZ8d7DIo3U0TQBmKHYfY8OPjP459/4U4rtpz5W7v23E8T57WIzBWr0jnO0gE2vkR+Xj3QRdffOj2HcTj5GaKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIrALETg/wMyQJ8pIYtP9gAAAABJRU5ErkJggg==",originalColor:"#469CDA",secondaryColor:"#469CDA",borderRadius:3};const LexmarkTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#008A44",secondaryColor:"#006446",borderRadius:3};const ElementalMachinesTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAIzklEQVR4Ae3csW4cRRgH8FkLCwOWCG2gThEKUyDRBIknwFA6SIhXoIrEA4BSpaWMkAgtyRNEwgVINCnMG5CUSSQ7MQrysmOiFFFm9jTxrnfmfq4cz83sN79v5+/L+XQh+CJAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAwCHQlCleu9u8dhuPdEPrdvg+XhzUuDt9vl6xlztkL3PvlnaK+llbyuvfDVPXu7B31pXvKzVtGvd3hUOP9odEHoevubIet2/u3uoe5ul819sarfpj62Wff9FuPnh1/e3jy5Nog+27qcX6+HgLuh/Ps8+kv3EvDObwU+v7Lw/Dk8UdfPb1+YXPrxt2b3fGqlW2s+sCdr5+8/+ifp7/1JyffO/yrqrX7OPfDsnobz2Q8m/GMxt6sWt1KARAX7J6FP/rQf7zqwh7XroD7Ybm9PT2j/4bfVw2B0QCIT/OGw//rsPDKqbJcHpW9roD74XUFZ5jf9x/EMxt7NXa10QCI/+f3m3+McX3G3Q919Dqe2dirsWqzARBf3Q0nJ9fGFjG+HgLuh8r6PJzd055lys4GQPxTnxf8MnprNuR+qKvh8ez+/+f6dN3ZAIh/509PNbJ+Au6H6nre95/nas4GwPM3+eTmG1sjAfdDfc0engV8mKs6GwDDxOEdfr4IvBBwP7ygqOabbM9GAsDbe6tp8yyFuh9mYT7Ti+R7NhIAZ1qJxQgQWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE6B7IeCTvXpp3Nu0LUIEEgLeAaQtjFCoHkBAdB8i22QQFpAAKRtjBBoXkAANN9iGySQFhAAaRsjBJoXEADNt9gGCaQFBEDaxgiB5gUEQPMttkECaQEBkLYxQqB5AQHQfIttkEBaQACkbYwQaF5AADTfYhskkBYQAGkbIwSaFxAAzbfYBgmkBQRA2sYIgeYFBEDzLbZBAmkBAZC2MUKgeQEB0HyLbZBAWkAApG2MEGheQAA032IbJJAWEABpGyMEmhfIfirwzt5R37xAgxv0ac4NNnWiLXkGMBGsZQnUICAAauiSGglMJCAAJoK1LIEaBARADV1SI4GJBATARLCWJVCDgACooUtqJDCRgACYCNayBGoQEAA1dEmNBCYSEAATwVqWQA0CAqCGLqmRwEQCAmAiWMsSqEFAANTQJTUSmEhAAEwEa1kCNQgIgBq6pEYCEwkIgIlgLUugBgEBUEOX1EhgIgEBMBGsZQnUICAAauiSGglMJCAAJoK1LIEaBARADV1SI4GJBATARLCWJVCDQPZTgX26bA0tVCOBcgHPAMrtzCRQvYAAqL6FNkCgXEAAlNuZSaB6AQFQfQttgEC5gAAotzOTQPUCAqD6FtoAgXIBAVBuZyaB6gUEQPUttAEC5QICoNzOTALVCwiA6ltoAwTKBQRAuZ2ZBKoXEADVt9AGCJQLCIByOzMJVC8gAKpvoQ0QKBcQAOV2ZhKoXkAAVN9CGyBQLiAAyu3MJFC9gACovoU2QKBcQACU25lJoHoBAVB9C22AQLmAACi3M5NA9QLZTwXe2Tvqq9/hGm7ApzmvYdMLt+wZQCGcaQRaEBAALXTRHggUCgiAQjjTCLQgIABa6KI9ECgUEACFcKYRaEFAALTQRXsgUCggAArhTCPQgoAAaKGL9kCgUEAAFMKZRqAFAQHQQhftgUChwEgAdIeF65pGgMAiBPJneCQAwv1F7EERBAiUCmTPcDYAui78VXpV8wgQOH+BLoSDXBXZAAihu52bbIwAgYULdN2dXIXZANgOW7eHBHmcW8AYAQLLFIhnN57hXHXZANi/1T0MGxvXcwsYI0BgoQLD2T09w5nysgEQ513Y3LrRhe7PzBqGCBBYmEA8s/HsjpU1GgB3b3bH/Wb4Yljw77HFjBMgcP4C8azGMxvP7lg1owEQF7j309txwU88ExjjNE7gfAXiGY1nNZ7ZVSpZKQDiQnHBC2++9Wm3sfGdFwZXofUYAvMJxDMZz2Y8o6se/lhd9kNBXy7/+VOKH65c7X88DMe7IfS7fR8uD4+7OHy//fLj/ZvAeQoM72N5cJ7Xn/bap+/wuz8c/IMw/Kkvvtq///Pwor0vAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAiUC/wHyHAACWlb5OQAAAABJRU5ErkJggg==",originalColor:"#2F59F5",secondaryColor:"#2F59F5",borderRadius:3};const EuEntregoTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAj1UlEQVR4Ae1de3BdR3nf75x7r15+SH7p4diJE7+FJSeUMnVIJ23JdAqEhlJeQ2EGZgot00JbHhkYWsJAaYeWNvzDtIQSylACDdAw0GEKbYGGmBaaRpIj2Y7t2LFsyZJf8kOSde855+tvrywiHEu+und3z+N+Z0Y69557zrff99v9/c7unt09SskmCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCMSJAMaYtSRtAgJlp/eho06ULy5qi6Eo+ynm+Coo+h36Oc+RzEPjKJ19Fns9RmMvjM4f47oc4j0iRF+gjpZBD5fshURQofKZcLqQAx3Ihzi4EXhCFXi4Ili9XUyc7O6eJiA24LyZiRkAEIIYMWHPg9PLJktcaqqDN47CV2WuNFLd5iltZEf64jZhXwrVmRaoJTGvWn0G5Jnwvfy4f099V+c99FKSuINEp+DSt9/BrGj5NzR6jaXwvf2aii6R4AgXtfKRoArox4RFNhIE/4VM00UCNE3+8a+WFB6A87oOQFEUADJSB1qPnW6cvBu1EpXYU8nZSUTtH2JNqB5nxp4+pNZrYignEZt9AstkxoWsTrC4BrwnFfE4RjSG4ceA0RsobhzKMecxjkcqN5xtpbMe2NaefBNjZASC+SEQAFsH+dcz+t58+16XoysYwVBtxV9vAkdqIgroRpO7EnQ3kVu0ovIVFzMhPphEoNz/4PNov48B/DPJxQnlqmJiGlaJhNIOGG73G4Us7Vpw1nXTW7NW1AHQPcuFwcGaT8oLNIPEtmtyKoo1oVm9AGdP7Lrlbp7nI0xTy8QREAuKghpVHw/ozOkCOoqZx5N6e9uOPEoVpjrBW3zMvAJrkh8LRWynyNisv2hIxg+y0BXfxzcwgvFTHay1DKb6eSqjFHUOT4zDE/ohHfESxd5j96MjGxs5nD2+hmRQHV5HrmRGA5fsvri6VLncjI7sjjrpRFdyK4LYwqutQe68iNOQkQWAOAXRKQhxOojwd9kgdxuEhNDOGvKhhaLp39Ym509K+T50AtB05t/LKVKkbT6i6UW1/Ee7g3WgLgvjckfbMEP9TggDRJZS9/RCIISKvLAyQi6HpnvZjaXs8mlgB0M+3G/vP4A4e3qFU+GLc0XdpsqPaflNKiom4WXcI6D4HdQDiAGGgAYjDU/mGsO/Stq4zSYUiEQKge9u/OXRqOwcKRGcQXum/3ai6L08qcOKXIFApAiDZSTxBegp9T33Y93nkPzW9a93RJNQWYhGAFYMXVk0Hl18DAGfJzqoXn/WgFtkEgTpBgC5CDPoR7FPohOxrVk2PXehpPe86+JzrBHV606Xp+7D7XBxpS5qCQDIQ4BVoKtwFX+5CTRfDJq/om/HnXfsWU+843+46UElPEEg2AvFwQgQg2aVCvKsbBOpEAHTvPto+us0vmyAgCMwhAE6UuTH33dHeeQ2gcf9pjMTjZY7ik2QEgXQgAE6UueHYW+cCwGEo7X/HmSzJpQOBOLjhXABw9xcBSEd5FC9dIxADN2IQACUC4LpgSXrpQIDdc8O5AGA6pghAOoqjeOkYgTi44VQAmodOd6IJsM4xrpKcIJAOBMCNMkcceutUAMIgkLu/w8yVpNKHgGuOOBUAPOcUAUhfmRSPHSLgmiNOBQDV/x6HWEpSgkD6EHDMEbcCgIU70pcj4rEg4BIBtxxxJgB3M+eYeItLKCUtQSBtCGiOaK648tvZegCFgZHtHPF+V4FJOoJAWhEgj3YUe7oOuPDfWQ0Ac5+l+u8iRyWN9CPgkCsOBYB2pj9nJAJBwAEC7I4r7gSAIhEAB2VHksgAAg654k4A5AlABkqmhOAIAWc3SycCoFf9xdsftzoCT5IRBFKNAOYEbNOccRGEk6cADX2nt0aqeNBFQJKGIJAFBDxV2Daze+0ztmNxUgNgr+SsSmMbMLEvCLhAwBVnnAiAPAJ0UWQkjUwh4OhRoCsB2JGpzJFgBAHbCLBywhknAoB1gDfbxkvsCwJZQsAVZ5wIAN73JwKQpdIpsThAwA1nrAuAfp03+gBWO0BMkhAEsoMAOFPmjuWIrAvA5ckrcve3nIliPpsIuOCOdQGgyBMByGb5lKgsI+CCO9YFQFEkAmC5oIj5jCLggDv2BYDddGZktAhIWPWMgAPuWBcAJpIaQD0XYom9agRccMe6ABCr26pGQC4UBOoYARfcsSoA7f2nWjALsLOO81BCFwSqRkBzR3OoagMVXGhVAM57JHf/CjJBThEEFkLANoesCoBSoQjAQjkrxwWBihCwy6FcRT5UeRJF6mYsbpD+jdQVBLEXiyc8rpR/gNk7mC/QqWZPXf6VbWumvn/wTPNUpJaVitxBFG2D8G1H3Hfhmj0YBdmYfgAkgrgQ0ByymbZVAYhIbQAB0rmB9KToW8TeFzc0t3/v8BaamR9ICV+m8Pfo7MFL2Om/Ufw9NXtIqc2HuGF4cuwepuitaM/dK2Iwh4zsK0WgzKFKT67iPKsCgF7MjenjPwWK1EMFz//o5K72MY3p4SqALV83Kxrfxudvt+wbay9G4UcgAr+LyVFWca/SXbksgQiAQxtsumW1DwDkt+q8aWCI6OteIbez1Nv1rjnym0pD29N2tX2djim7YifbCIBDG21GaPVORMwb0lADACGP++S/cbqn/cc2wda2Z3auO4TdbzftG9sTRuEjeBus1Qy2HY/Yt4uA5pDNFKzVAF7MnMdIpg6bzpuxTU8UlPcSF+Sf7+/0rva9Ol2l6In5x+WzIDAfAc0hzaX5x0x+tiYAgwdOrcfrwK3ZNwECevUf3prv/NXLvR3jJuwt1YZOV6ev/VjqtXJ+nSAADpW5ZClcewQt2q261IoHXsD4p8Xd698+2E3FWm3Vcr1OX/uh/anFjlybYQQscsmaANh+fFFLdus7Lt6++vFabJi+VvsjNQHTqGbDnk0uWRMAFdntvaw+a+mJLfmu36v+entXzvolfQL2EE6pZYtcsiYATMlrAuje/gbyfivuav9CxVD7pf3Tfi50jhyvPwRscsmaAKA6a/XxRTXFQD/qi6vDr1J/tX++57+p0vPlvOwjYJNL1gSAFXUlKWv04BvXj/qqjV8/ItT+Vnu9XJctBGxyyZoAkOL25GQDBZTPfTA5/tzYk1l/MSxZtrpHwCaXrI0ExAjAdYnJOYztvzoCLzEu3cgR7W++f+QhzB34/Rudm5jfCSPXMWPSY/VN31f/pfz8yVfuWDP+KFGYGB8XcUS/kvtf959Zp8LS+jBUv4ze99/E6XdhPAtq4fFtNrlkJbDWo+dbJy9MnY8PsnkpY1ZfwcvdYnps/7wUrH2cnUAUHEvFLEJS/644/4HS7nU/mw1pDRiHhvN947crKn0SefByh8m+IKmWlc1tE5vaJl7wQ40HrDQBpi8Gian+6ym9aSS/zlftt/a/xjy2fDmFHtEflXrX35M18mvgdEw6Nh0jhm3HVpOxxSkrAkBUSo4AYD6/ZQZYNa/XI7CaQE3GQX7l3TfT2/Xpmsyk4GIdo441LhGwxSkrAhApSoYAoPq/oaX9eykoXwu6WPZ/dkWiBc+J6weP1Htndnfo9Q7qYtOx6pjjCNYWp6wIADoWktIBuPfalXziyLxa0rzq/95abFi5Fm3+erjzX4tdOWbd3+F4s8UpKwKA5a8SUQMAaFjDL/1b4uLQvf3o8Es/slVGoGOffeJRpYGlX2aLU3YEIFKJEAC9gOfSoU7iFYmL4/EsdvhVmvNXY3d6c2FLnLIiAETJEAC9em+lmZrk85IWB9rBjyUZLxe+6bEOLtKZS8MWp6wIAKoriegD0Et3zwGY5n3S4vApG02rWspEeaBTLQaWeK0tTlkRALQQ1y4xPiuntzDrpbpTvyUuDozwSz2otQbgGANbnLIiABg42VYrviauv3vn2mkTduK2kbQ4NvGas3FjEnf6rjGwxSkrAqCYVsadQTr9HwydbkqCH7X6oN88VKsNk9cfpTOrTdpLoy3nGFjilHEBWDs4viwpL76YJFqexsJ1rc/6tWPXHov1OybLxJp+EhJ3jgHnZrllNnjjAnA58FvNuli9Nf2uvuqvTs6VSYtDz5RLDjrxeBIHBja4ZVwAQiolov2vi8XsizrjKSAmU01aHFenyZoMMXW24sDABreMC4DHUWJqAPotvakrWddzmMId1zsc47G7ytNkY3QgzqSvxn6Xax9scMu4ALDyEiMAWEjBeSbZKBTM6mU27FZtUy+QoefI1+tWXh/A/SIhNrhlXACiRNUA1B79iu40l9Or/u9JXAxYIKOhf+Q9ifPLskPlmGNaHMQGt4wLAIaJJqYPQK+kMzw5do/lMmHVfNl/xGE1kSqNR6w+1dB36lVVXp66y3SsOua4HLfBLeMCgNphYpoAOqOYorfGlWEm0k22/+xHKnqsHmoCOkYdK0qUbyJfq7Fhg1vmBUBxsgRA8b16bb1qAI/7Gu03xoDfG7cfi6cPEWB+MN9/8ntZ7BjUMenYdIxxkl/nAcqCcW4ZXxUYSxi36qVhE7Oh+lyMwo/An3clxqcKHSn7ndDq/wtC0O1iCp7ESsYZWxU4wKrACksyxL+Rx8ZH2BoPrNB/8ivotX5D/HDN94ACr5DbmaalwRuGxrdExWAIum9cpOcjI5/TgwCmBH+12Lv+jSY9Nt4EgHOJGrc+CxbnuBT8hUngbNua9VfIbxvnlNk3zi3jAoDqv3EnTWQSM7+2aWDsl0zYsm2jad/YHu2v7XTEfroQALeMT24zLgBoLxl30lQ2hRx+ZVn/qUQsVrJQTNq/MAofWeh3OV7HCLD5m6txAUCnQiJrALrY4K66cYajb3QPciGJxUj7pf3TfibRP/EpXgRscMu4AKC/NLECMJt9fOeh0sjfxZuV10991i++8/q/ytG6R8ACt8wLQIJrAHMFCG2ptxUGRj489z0Je+2P9isJvogPiUXAePPauADY6KiwkR0c8ccKfSc/H3dzQKev/dD+2IhTbGYHAXDLeO3auACgE9C4k7ayUN9xnymN/mdcHYM6XZ2+3Plt5XDG7FrgllEBQOcVpolSIieuLFwU+M6iin7q+hGhftSn00XXpLT5F84c+WU+AuBWmWPzj9X42agArB8dbUJXu/HRhTXGeMPLda97EAV7C/0jX9Mj8G54QQ0naPs6nSAMnpDe/hqArMdLwa0NJ8zODDUqAJcuLDPeSeEyn0HI1+rhtxjP/hnTE4i0PW1X29fpuIxL0soOAhcuXzLaxDZ6t24ZHO8olkqjmYAbr+RGe+ZbxN4X9Su6q3nLsF7MQ8/n11N6y7P60jKxJxMZmM0gCvl852T3OmNvvDIqAE0Hz6wPpmdOZA56iAFi2guw8EJI/4B+V59+XZd+Y49+aYd+/4Beglyv3ju7gGe4HR17ejmyPegUTVmfSOZyL1MB5ZoabpretsbYm5mMCkDj0MjNYZGPZQpxCUYQSBACfoFuubKz6zlTLhntA1ABXpkomyAgCNhDwDDHjAoA50gEwF7Wi2VBAKtDmOWYWQEIAhEAKaSCgEUE2DDHjAqAYk9Wr7GY+WJaEDDNMaMCwL7Z6olktyAgCPw8AqY5ZlQAVBhKE+Dn80u+CQJmETDMMaMCkJcagNnMFmuCwDUImOaYUQHgSPoArskv+SoIGEXANMeMCoCKpAlgNLfFmCBwLQKGOWZWAK51Vr4LAoJAohEwKwDkBYmOVpwTBNKOgGGOGRUA8jlMO77ivyCQZARMc8yoAJSw8H6SwRPfBIG0I2CaY0YFQPm+CEDaS5j4n2wEDHPMqABgLrz0ASS7+Ih3KUfANMeMCoCSJkDKi5e4n3gEDHPMqABQLidNgMSXIHEwzQiY5phZAQikEzDNhUt8Tz4CZJhjZgXAD6UPIPllSDxMMQJkmGNGBUDlCtIESHHhEtdTgIBhjhkVAC+IRABSUIbExfQiYJpjZgXAayylF1rxXBBIPgKeYY4ZFYCVy5ZPJR9C8VAQSC8CpjlmVACGb8ILNIjwTgzZBAFBwDgC4FaZYwYNGxUA0uRn1m/RkU0QEARMIwBulTlm0K75VXxJTeF1WKl+Sehi+OJ9gaPs0ddIRf+BRZCP5Th3LqBglRfyzRHxy4mj+5jVhsVsyG9LRAA3FrzC6rv4+45H/k+iHJ0pPw/ncD2qm7dHrF6lSL08jW+mXhISmluGN6OvBtO+FfpPHs8mAeiM56kPv3pX5+ceJVrwaceLmfMD+0bfBhH8GArkOsP5VXfmILiPkcrfP7N77TOLBa9fu86l0l+j7L16sfPS/BuRGi72rt9oMgYbAnAQmbDVpJPx26KfNJB37+XejvFKfWk+cLqrdKX0z0rxnZVeI+fNR4AwqMx7Z2l3x+fnH73R5/wAxDfizwJ387XbGyVu+XcIwEEIwHaTyRjtAyg7xuarKSYDXrItosfbV3fevRTy6zSmtq8dwXX3oGr64yWnWfcXUIDC/salkl/DVurpfBh3tTcopQUkYxuradMRGRcAtMmMt1NMB12pPRSkkUIu9/oTG6gq4PV1jYXl96Ljxtj73Cv1Pc3nAa+PF3u7vl5tDMXdXd9At8GfV3t9Uq+zwS3jAoA7XmYEQPl0/2T3uprIe2nHirPKU+9PaqFKml8g/9O7ejo+Uatfe3q6Pq5t1WonUddb4JZxAcBds6q7ZaKAhjO6vfWhF3V+2YRfxV1dX0JhPGLCVtZtMNHfPElU84jSHxCeE8BWlvACt4zfXI0LAAA37mQsmcj06ANYfsVc2vwlc7Yyaonocntbx1dMRbd+eccjkPJslMdZUIzfXM0LAKlJUxkYpx285PDfTKbvkfd9k/Yyaquv2v6W6+FxbBNhZKp68nq/pfKYBW4ZFwCO6EIqwb3GaWrMP3vNoZq++r5/sCYD9XAxU5/xMJkHjNuMyaANbhkXAAzcmIgJH6PJdvlrzpo0WO5MNNqkMOldMmx5pJ4z7olHM8ZtxmQQ3DpvOmkLAhAZd9J00JXYmwjPFCo5b0nnMF9c0vl1djIzG611leFjPIPJyIbh58ZvrsbBiTJSA7jMwWrT5QZPAkQAFgPV9w8v9nM1v6HnPDPzMmxwy7gAoLPLuEpVk/G1XhOW2LgAYIh0TWMKao0p2ddTuGZ1aFwAMB/jtmTHXbl3NrhlXgA4G00AtEeNCwDGFshYgAXKO0buDY50dRl/ZMeKbl0gydQd9ixwy7gAhBmpAXBkvgaAZ9LyJGAB2jHTfy/wU9WHlx8cWYNJQSuqNpCwC21wy7gA+CqfiSYAelzbTee/p+hHpm1mxR556jumYwmueJmp/mtsbHDLuAAsy4WZEAAm3mW6QK5aG+mZgcZHc5n20709mlqzRn3XdLoBq27TNuO0Z4NbxgXgdPe6y5mYism023Rm6zYungR8zbTdtNtDf8s/2Wj/kwrvSjs2z/tPwSy3nj9i4pNxAbjqVOprAVjcsPtuNr+oBKZ0PigLp84vunrSjrI1aedl81NK+WcrnLIiAKTYirNOM5BVw96Bse2m0yz1dv0flgt7yLTd1Noj9eliT9cB0/63DI53QGw3m7Yblz1bnLIiAFD003EBZTJd1ALuMGlvztbNLZ3vRjPpibnvdbsn+uHWXOeHbMRfCrNU/cezDEucsiIAWMN1zEamurYJ1X2VjTQPb6EZvVwYRql9wYb9NNhEX8iX165VrxjspqINf/EY99ds2I3Lpi1OWREAVL0yIQCI4zduOcqNNjJdT3st7l7/tlzeeykeOWKtgGzMolwMK5AeIyHpszkvtwdLfr3ZRsefTl+vzKyIX7eYL2n7zRancjaAwDPdcTa4lIYNHyuyybxs9OLYPTj3WxWdX8VJ092dP8Flb+ke5MKRYPSlGBDzi0zRS0CUbkyO0c+x0/eOBcx6RO3mOfR1HELV9QD2/4sy8dOZXZ0HIQJc83I/N8B5376RVyDNVTc4LVU/k8dWbqp2BEDRGNrPqQJ4IWeZw9fgN2sCMJfu1arw4/iu/8obBICanz53E/PMpoi9Lrx0pCvy1Hq8f2mtLuAYq7AKRFuN4a4rccEy/DXbeTmGfg8CX8JQ5ktojF5Ezk6Ax2ex2MYZ+HGWlDfOKjrpEZ1kPzeyWa09fr2qPXx1szH9Dvx1k5ajVDTGNpKyIgCY9GJFrWwAcCObuIPd1zUy8ge2qquLpa/vlvh9+OrfYqeWf9OCsW7odMtUxC1RlMtzoZjjyM9xGOQUXmPEqHvnowDHPHyPciqHnCKvFCi/iGfmJSLsKSx5lCt6flDKew3FlV7bzDG9ss4StsElnGv61LYj51Zevjx9r2m7cduzxSkrAuApHsMtIxsbq7azZ9Q7EczfJj2gq4KBgVhK/113W2r1O22LO0xdnnkHbv4N1w0+xQc1p2y4b6kTMG+lumIDgEpsokf5fZsPceYKVSWxp+mcNQdOL4+YP5Amnyv1Ff2a6RGAphU5K85WCpbp81AP7xqexCunZEs0AheLpfeg7Y8ZgNnbmlbmrNxUrfXL5PtPzqAqZn5ZrZjyFtXroxubO3foZ/gxuSDJLoJA69HzrZMXpo7ilNZFTkvnT6RmSr3rrTyOttIE0ChDWbJVC2DedHxq5GPpLEHZ93ry4vRHEWX2yD/LJSt3f10qrAkAupetOa0dj2NDTO9t7B/J0AyzOFA0n2ZD38ivw+ofmrecDIsod9ZuptYEAMNoR5IBn0EvmD2Mb/rC2sFx/cxdtgQgsOzQ6Fo8qv2CnfEPCQgQLoBLo7Y8sSYA6DjTz68zt+FZ+60XguAz+pl75oJLYUDFSX4YedGRQtcrdtkml6wJACYvZFIAdK6hwL2lMDD6YMU5KCdaQSA/MPIpjDh9pRXjCTJqk0vWBAC9C8cThKF5V5jfXegf+YR5w2KxEgQK/Sc/qSL+k0rOTf05FrlkTQA8zmYTYH5hQk3gg4W+0T+bf0w+20cAmP8lhsa+335KyUjBJpesCYAqZLcJML9YYBLMRwt9J7+66tDZzCw/PT++JH3GnIzmhv6Rh4D5/Unyy7ovFrlkrSNLz8keGBi9ggazPZGxjnzlCWCg0BF01ry+vORX5ZfJmRUikH96rJfC8BHUunZUeEk2TsPU6p6ezsYniZY6jaOi+K2RUztMzFgAoj42FMzb0D24t6F/9H16bn99RG0/ygdwA8Fd/z0qDP6n7sgPeDWHbJFf5541AdDGmeqjGaBjLW+YhRZx9FeHgtFD+b5Tb38dsz/3k+yXhoDGrjAw8uZPDIwMYYLPg1mc4VcJIrY5ZFUA0L44XkmQWTsHd6qNSoX/8E0UXvRWv6m8RFXWgrQUj8Yq3z/6Vo0dZmF+CZ192ywllQqztjlkVQAwVCazYwEqKT0ovFvx9+WBgZFT+b6Rv2/cN3r33RbeNVCJL0k+R6+72LBv9JXoTH0YWI1hsZJ/1Ngl2WdXvtnmkJUFQebA0Y8vsrA04Fw8Ve/L69PxO8KQ3/HEwOgkxGAvltf6IZbQ+lFTS0Pf+dtWXajadgovbOo/e1OkSnegpnQnevRfdvLiyC/8bOYoelJlex4Bm48AdSpWBQD9/8+pzCwN9Hym1PSJuQXX34M73D0h/l2+NK0woAhNJR5Al88+tPmeQcfBUfL56P07O088gF7gmtKL6WL9WPTSTLCJouAWjGTDmoZqO1x5kf4L+Ipew/D5TUj/PBbXfCpz6JpjJr9aewyonSzsG+vBenT9Jh2uL1t4kkLqOPgxgowaw/SDU1gm8BS+j2GV3bOoQUyEgT/hUzTRQI0Tt+9aeekHRIFpjHS7/Ojhc03TV9TKUAVtHoet6JxvjRS34g6FyTgRxuJTO/SsA/7ijTx8E+7obab9qEd75Od6i7vacXOws1kVgPb+Uy3nOFxwfTo7IdW51XKNgYt4BFPEMyQ8ii2/eAMv38AxpT9zCdNL8ZvCObi/EBVQCLDcGR5dMpX3+L2A32eP6c8y8Sm2QrWK/GVjvR2TthywKgDa6ULfyAjuCJ22AhC7gkBWEcALY0aLu7u6bMZn9SmAdhy9mIdtBiC2BYGsIuCCO9YFACOZjmQ1gyQuQcAmAi64Y10A0MaUGoDNUiK2s4uAA+7YFwD2RACyW0QlMpsIOOCOdQHAKnoiADYLidjOLAIuuGNdAJa1NIoAZLaISmA2EXDBHesCUB7mSuqsTaDEtiCQPQTojIsh4tYFYDZjpCMwewVUIrKKACknT8+cCABecn3IKlhiXBDIGAKuOONEADCsdH/G8kfCEQTsIuCIM64EYMguWmJdEMgYAqSccMaJAFCUdxJMxoqAhFPHCLjijBMBeHXvmiNoBshrteu4QEvoS0AAXClzZgmXVHuqEwF4lCjEtMOD1Top1wkC9YSA5ormjIuYnQjA1UCkGeAiRyWNLCDgjCvuBIBoMAs5IzEIAtYRcMgVdwIQuenVtJ45koAgYBsBh1xxJwCeCIDtciP2M4KAQ644E4A9uzoPl9ehy0geSRiCgBUEsFZjmStWjL/QqDMB0KvVYo2zZ17oghwRBASBOQQ0R2ys7Dxn/9q9MwEoJ8zsrHfz2kDluyCQCgQcc8StABBZW988FZkrTgoCN0KAyOl7NJwKABE9daP45XdBoJ4RAEf6XMbvVAD8XE4EwGXuSlqpQ8A1R5wKwNTOtaNYJXgsdbkiDgsCLhAAN8occZHW1TScCoBOE+OcpRbgMIMlqfQgEAc3nAsAskMEID1lUjx1i4BzbrgXAM9tJ4fb/JPUBIEaEIiBG84FgHzfucrVkCVyqSDgDIE4uIFmh9uN8arpwsDoBbxyernblCU1QSDBCBBdKvZ0rsRjQHbppfsawGyATgc7uARU0hIEqkSg3zX5tZ/OBaAMjgwIqrKMyGWZRSAmTsQjAJF0BGa2IEtg1SEQEydy1Xlb21XNXuO/TPEkKVa3w9LtGBzUiz6BltqsytWCQKoQmEC5103hfuz7mlXjYxdicN95J+D1YnyA2fvEvtGtEIGyIKAX5A6cdzsEYtX1zpdjgkBqEECfF0h2FGUZZEfN14v6vRz1XdnZ9VwSYkiEACwERNPgyMYw1GIAYYioB/tuVnQr9v5C18hxQSA2BEidU0z7Pf1SD+IBD9X6ppaGgXNbVl+MzacbJJxoAbie75sPccNzM+PbKQq7oar6b6cIw/WQkmO2EMCiHaNMvF+xNwSy7ycs4eUrb//krvbUzXNJnQAslKm3HOXGk1Ont1MY7CwLg1LbIQybMexgM/bNC10nxwWBBRCYBtGP4k6u39J7kNnfn/Nof2NLfsjFa7sX8Mn44cwIwGLINB843RUVS5vDyNtMFEEQ1Gb0N2xhotuwlwFJi4GX5d9InUe7/Ah6o0FyOoLycNjHZ2ooHJnaunokjufyruGuCwFYDNSWfWPtEQWbg9C7Df01GzlSG4jURtQiNqD3BnsRiMXwS+xvswPOxuHfMMbWDSMvhz1Fw6gRDudy/Gw+ajp8oacVAlDfW90LwI2yv/Xo+dapSzMQBd6oQr4qCmVx2IA7RwezaoeN1hvZkd8NIoB356HgjqNDeBx5MIr9ML4PY1jbsAeCY3zb8G3+uhOD3VQ0mGomTYkAGMjW7kEuPBuda0e5bA8VtUchtaOp0Y7HmTjG7bjrYK/WoS+iDcfakGSTgWQzZIJKCGYCWE0An9Noe4/hjj0G0R0n9sZwbNxTPMacH2tamRuf2NQ2kaHgYw1FBCAG+LVgHIvG24LIa/VU2BapqJWV1woCQCAYtQluAwlwTC2De82oZTRjJZUmZJbuzCz/lY/pzziOZorbfNTVa1bT8GUKH8t7/RluTKHTDJ1naqr8m6LJSBObrpKbaIJCb8LLhedD8ib8XH5ixZVgYqy3YxLnyxYDAm4LTgwB1kOS+gnIuamLzaGaKUQ5z+ewmFOB73OOfA4C9Gt5OfbJV2Ho57HnyMupKJwdS+H54GIUlEIOlY/Pek9RQLlcSAE+58KQ/ELgBfqChuKKFSumT2wgTXrZBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBGpD4P8BckMwMnzeXTMAAAAASUVORK5CYII=",originalColor:"#00B9CC",secondaryColor:"#00B9CC",borderRadius:3};const FitesaTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#005A60",secondaryColor:"#7BC5BF",borderRadius:3};const FuelicsTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAS3ElEQVR4Ae3de3BU93nG8T3n7EV70V2AACFACLAtAthKjXFtAmnaQG0aUhc7ph5qT1tnMqmdNEOdNmnGmsTjkJSp3cSZDi4TJ/UknYkndcau2z/SSUmTjDG2BhdjsI0R4iJA6Iak3dXet2dnAmGIDOLd63n3qxmPxWrfc37v59U+e1a7Z9dw8YVAcQWM9T3rrfUL17vDVtgy600zG88GGwKhVfFk8rZEKt4aSURXpdPJ7FQiOnt8anJW1v6ayZIsw8yE/KELDYGGY7cu6n502+0PvTOTOq7zGwH3b77lOwQKINDjMnd07PC7Qq6gL+vze91WRzKd2DQ4OfDRiehE69jwaOOx88cCBdjTxU00NQYbF61qX9VhX0AAXFSZ4f8JgBlCcbUPFnjkW4/4/Av9zUbSaPSaVvdUYuru88ODa/pH+ucPTZy3MtnMBxfzk7IKEABl5Xfuzjd9a5Ovu7V7ntvKLkhkkhtHxkbvPj7cd8PA2GlPKp1ybmNVtnICoMoGnme7xv27729e3tJxUzyTWDccGbz/vXPv3HBu4pyZzqTz3DTl5RAgAMqh7rR9bnVZf7X5L9o9VmBNPB3b8tbZQ5vfH3w/EEtOOa0T1nuFAAFwBQj/vEzAvuFv/9j2+c11jb8/MTXx4OGzB24bGBvgd+YyIqd/yzCdPsFirN/+S/72udvbWkL1d4WTka2HTh+84+TICU8xdsU2yytAAJTXv9L2bnTv7K5b137blnAs+tDbZ9++vX+4nxt+pU2pgOshAAqI6ehN2Yf7n9388IezWeMLfUP9m945e6TW0f2w+BkJEAAzYtJ9pa6ertCGJR/587HIyGfsG/7ycDysu2G6uyRAAFyiqM5vtn5na2edP/iNY+ePfrxv6FjQqQqmaZlOXXs5100AlFO/zPv+5is7P/v+0NEvv3F8/9xIPFKW1XjdXldtTV0mVBNKBrz+mNfyTXncnrDbdIdNw8yaLjNsmOaQYRrxKxdoZO0ruNIhl8uos1971Hflz/n3tQUIgGsbqbvGop5FNQ+t3r6rt//1B988daBk9/puy+2aFZqdsl+7HwnV1A75vYF+n+U5apruMcNwDZmmOepyWaOuVHL4QjwyZtkvM4xFhy8cPnByrPfZ3uR0g+ju6Q7c2r6qdd+Rfaem+zmXXV3AuPqP+ak2gba/bvNvW3vfy/936s11J4dPeIr5On3DvlXXB+qz8xvaJlpCLe8FvIED9o39qGVaA+lk4vjE1PDxPX/5b4PajJ3UDwHgpGnludbcjf/+NVtf3tf36oahySFzhmfdXvde7Ru6q7N12ejc2tZ9Xq/3l6ZhHY3Ho2/98hf7+z7onvy6d0JBQQQIgIIwVv5G7tt935Imf8NLB0+9eeNoeMQo9D2//Xjd1da0INUxa8mhukD9i27TfGMoMda7Z9ue87bOjM7vr3xFfSskAPTN9Lc6emDPA51+0/tfB072duae4ivkPb99OO/qnL10qmP2kleCvtBLmXSi99XDve/t7dnLKYG/NYnKu4A/AlbeTAq6otxhf1NN3Xf3H39tSSFv/Ll7/CVzOmNLZnW+HPIFnx+Jjr/29HtfH3b1uDj5v6ATLO7GOAIorm9Zt5678W/9nT9+5Y3+/R8Znhw2C3HYn/vDXnOoJdM1r6u3KdT8D5FsbO+3D397hBt+WUct3jlHAGK6yi/807Wf+sH+vn0Fu/HnDve75q2Yamtq/2qgNvT8r3p/NcihfuX/HlxthQTA1XQc/LOen/z9N1/ve/2uc+PnCnLPb9/bZ9csvu3QvIZ5jx0+/+7ep7b9U8zBPCz91wIEgMJfhSdf+trdBwcOPmy/tNdbiMP++Y3z07+79M4fx1LJzz1219/lnrfnr/pKfm8IACWDvNjGF3/0xfaB8TO77HP46/O98ece7y9rXR5bs3jNE7fXrvvGhg0b+Mv+RWgl/ycAlAwy10bPcz01GXfy6f19hzqT6WlfOTvjbnOP95fPvSF6y8IPf+HLf/T47hkXckVHCXAGlaPGdZXF2u/iE5jlfezwmbc3Dk6cs65yzWv+6OKNf3X7zZ//Cjf+a3o5+QocATh5epetfUv9xvYz42e3HTv/vj+fd+jNnbBjH/ZHV8z70Oce/8RX91y2C75VKEAAKBjq1n/c6p/V3PjowdNvdk7l8U69uXv+xbM6YjfO7Xrka/c8+V0FNLRwDQEeAlwDyAk/nj2r6Y7RyOg99lN+lvRlvrlX9s1tmJteveDmf3nyT3Zy43fC4AuwRgKgAIjl3MTDu7fWZzPZT9mfyrMgn0P/oC+YXb3glp89cc/XHy1nP+y7tAIEQGm9C743X6DljpHIyB9OTk2KX9ade9y/om3l4N53f7Sl4AtkgxUtQABU9HiuvrgHn3uwIZVJb+kfOT5Heu+fe65/fmNbclHzws/09pyJXn2P/FSbAAHg4ImGPKG1I+Ghzfnc+9d4/C77Jb4v9XzyiZ84mIKlCwUIACFcucu2f397syuT+qT9Edyzpff+uR5Wtq0cff6tHz5Q7n7Yf3kECIDyuOe91xZ3w8qRyOjGcCwsfuwf8oVct7Tf/Hh/Tz8n9uQ9EWdugABw4Ny6H+72uN3eOwbGTs3P5/X+XW0r3v38xr95xoEELLlAAgRAgSBLuZnf++idndFE5BP2c//iN/asranNttS27ijlutlX5QkQAJU3k2uuyLK8N54Y7e/K57F/1/wVx4+cP/LTa+6MK6gW4KXADhvv5t2bA8lM6tazF876pIf/PrfPNa+xbVe0PsHpvQ6bf6GXyxFAoUWLvL2bmm9aPBkb3xhLTIn/+Le0ddmkabj/84V7X0gXeblsvsIFCIAKH9CVy8ukkwtPj5y+IZ/D/845nS9E09Hc+/XzVeUCBICDfgFyh/+mYdx5buKs+K2+GoIN2aAn8L2n7n2Kp/4cNPtiLZUAKJZsEbbbVdc1O5KI3J5IJcSH/8tmLxs005mT9vJ4X78izMhpmyQAHDQxqyYze2Ry9MZ8Dv8XNC988UIkPuygtllqEQUIgCLiFnrTmXS25dToiWbpX//tj+N2uU3rxV3bd3HST6GH49DtEQAOGdyOf90RtM/cWxeOR8Qv/ulo6ZjMuiw+rNMhMy/FMgmAUigXYB/eoLcuGouuTmfkT93PbZj3rpWNjxRgOWxCiQAB4JBBeo1s7fjURKf08D/XZr2/7ufhSGbMIS2zzBIIEAAlQC7ILiyzbiw6OieTkX34bu5df0zT+l/78X+kIOthIyoECACHjDGVSDedGO4PSo8AOucsi2YzJn/9d8i8S7VMAqBU0nnsZ33Perdhmu2ZrPyp+6ZA45BppMbzWAalCgUIAAcMdf2q1aFkJrnGfu2O+AVAQV/oXMZwhx3QLkssoQABUEJs6a4SZsAXT8TsIwDZ4//cfv0+/5FUeuiCdA3U6RQgABww10DW8EZT0TnSD/3Iteg2PEfHxly8AMgB8y7lEgmAUmoL95VKezxTiViD9Aggd/6/kU33P/vpZ/P7yGDh+imrXAECoHJnc2llqXTUDoBow6ULrvObllCL/fDf4um/63SrhqsTAA6Zsn34L34KwO/1J4y0MeWQVllmCQUIgBJiS3eVMd2+ialxfx4PAdIuyyV/DbF04dRVvAABUPEjcrm8llEzNDnklR4E+H3B8WwmM+GAVlliiQUIgBKDl2N3XssTy1pujgDKgV/h+yQAKnxAhVie4bI/AZQvBKYRIACmQeEiBKpFgAColknTJwLTCBAA06BwEQLVIkAAVMuk6ROBaQQIgGlQuAiBahEgAKpl0vSJwDQCBMA0KFyEQLUIEADVMmn6RGAaAQJgGhQuQqBaBAiAapk0fSIwjQABMA0KFyFQLQIEQLVMmj4RmEaAAJgGpdIuSqaT8ncDtZvJurLZRDqR1zYqzYT1FEbAXZjNVNdWnvnvZ5oHRo/PMdy+kgRoOhlfKn0vgNxkkumU10hnln7p37+kMgSymXjKl6nt67m3J1Fdv4n5d0sACAz9bs+nhyNjf5ZKpyxB+XWXJFLxGvtzAcSn9J4ZH5hj7/Rpj+WJX/fOHVDg8/jCa5eufMhe6gEHLLeilkgACMYRTU6tee3Yq8viKWfcngZGT3vs/9oErTqipDHYmFm7dO18e7EEwHVOrCSHsNe5poq/uv3efOmKX2SVLTCTSat8eFPsMRIAxRZm+whUsAABUMHDYWkIFFuAACi2MNtHoIIFCIAKHg5LQ6DYAgRAsYXZPgIVLEAAVPBwWBoCxRYgAIotzPYRqGABAqCCh8PSECi2AAFQbGG2j0AFCxAAguFYpuURlFFSRAHTtPhdFvhyLoAALegJPLfpQ3eN2i8JLoVfNpaKt/z8nZ99XHruwfLW5eHFLYt/4XXXjNrtik8qElCVpMTjdofdWd9bJdmZsp2U4hdYGZnLdWJw4D+MVOR/SnIqoK0X9AZvto86/sD+VnTjbQg2jdR4/DuNVFTljcTr82WP/vQoH38uuKURAAK0X593XrJzz7/y47+dFCzzUonbsDIuj3t8533/PHbpQr5BwBbgcZMDfg3se3/RPf/lrVlG/tu4fHt8r0OAANAxR7pAQCRAAIjYKEJAhwABoGOOdIGASIAAELFRhIAOAQJAxxzpAgGRAAEgYqMIAR0CBICOOdIFAiIBAkDERhECOgQIAB1zpAsERAIEgIiNIgR0CBAAOuZIFwiIBAgAERtFCOgQIAB0zJEuEBAJEAAiNooQ0CFAAOiYI10gIBIgAERsFCGgQ4AA0DFHukBAJEAAiNgoQkCHAAGgY450gYBIgAAQsVGEgA4BAkDHHOkCAZEAASBiowgBHQIEgI450gUCIgECQMRGEQI6BAgAHXOkCwREAgSAiI0iBHQIEAA65kgXCIgECAARG0UI6BAgAHTMkS4QEAkQACI2ihDQIUAA6JgjXSAgEiAARGwUIaBDgADQMUe6QEAkQACI2ChCQIcAAaBjjnSBgEiAABCxUYSADgECQMcc6QIBkQABIGKjCAEdAgSAjjnSBQIiAQJAxEYRAjoECAAdc6QLBEQCBICIjSIEdAgQADrmSBcIiAQIABEbRQjoECAAdMyRLhAQCRAAIjaKENAhQADomCNdICASIABEbBQhoEOAANAxR7pAQCRAAIjYKEJAhwABoGOOdIGASIAAELFRhIAOAQJAxxzpAgGRAAEgYqMIAR0CBICOOdIFAiIBAkDERhECOgQIAB1zpAsERAIEgIiNIgR0CBAAOuZIFwiIBAgAERtFCOgQIAB0zJEuEBAJEAAiNooQ0CFAAOiYI10gIBIgAERsFCGgQ4AA0DFHukBAJEAAiNgoQkCHAAGgY450gYBIgAAQsVGEgA4BAkDHHOkCAZEAASBiowgBHQIEgI450gUCIgECQMRGEQI6BAgAHXOkCwREAgSAiI0iBHQIEAA65kgXCIgECAARG0UI6BAgAHTMkS4QEAkQACI2ihDQIUAA6JgjXSAgEiAARGwUIaBDgADQMUe6QEAkQACI2ChCQIcAAaBjjnSBgEiAABCxUYSADgECQMcc6QIBkQABIGKjCAEdAgSAjjnSBQIiAQJAxEYRAjoECAAdc6QLBEQCBICIjSIEdAgQADrmSBcIiAQIABEbRQjoECAAdMyRLhAQCRAAIjaKENAhQADomCNdICASIABEbBQhoEOAANAxR7pAQCRAAIjYKEJAhwABoGOOdIGASIAAELFRhIAOAQJAxxzpAgGRAAEgYqMIAR0CBICOOdIFAiIBAkDERhECOgQIAB1zpAsERAIEgIiNIgR0CBAAOuZIFwiIBAgAERtFCOgQIAB0zJEuEBAJEAAiNooQ0CFAAOiYI10gIBIgAERsFCGgQ4AA0DFHukBAJEAAiNgoQkCHAAGgY450gYBIgAAQsVGEgA4BAkDHHOkCAZEAASBiowgBHQIEgI450gUCIgECQMRGEQI6BAgAHXOkCwREAgSAiI0iBHQIEAA65kgXCIgECAARG0UI6BAgAHTMkS4QEAkQACI2ihDQIUAA6JgjXSAgEiAARGwUIaBDgADQMUe6QEAkQACI2ChCQIcAAaBjjnSBgEiAABCxUYSADgECQMcc6QIBkQABIGKjCAEdAgSAjjnSBQIiAQJAxEYRAjoECAAdc6QLBEQCBICIjSIEdAgQADrmSBcIiAQIABEbRQjoECAAdMyRLhAQCRAAIjaKENAhQADomCNdICASIABEbBQhoEOAANAxR7pAQCRAAIjYKEJAhwABoGOOdIGASIAAELFRhIAOAQJAxxzpAgGRAAEgYqMIAR0CBICOOdIFAiIBAkDERhECOgQIAB1zpAsERAIEgIiNIgR0CBAAOuZIFwiIBAgAERtFCOgQIAB0zJEuEBAJEAAiNooQ0CFAAOiYI10gIBIgAERsFCGgQ4AA0DFHukBAJEAAiNgoQkCHAAGgY450gYBIgAAQsVGEgA6B/wddB+V3cw9SSAAAAABJRU5ErkJggg==",originalColor:"#277822",secondaryColor:"#01060A",borderRadius:3};const HealthmetryxTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAWTUlEQVR4Ae2dD4wc1X3H35vd+2O75k/wnQ8DTaFCISaljZuoEi0kkIQag+8w9m3AJaCWiEpRWrW0ilrStKZJqRo1EaBUURSoAiUQ7g5ir/nTlqQyfxRIEwMtxihRUogC+O5sEvPHcH925/U3xgifmZuZ3Z3dffPeZ6TT7c77vfd+v89v57tv3ryZ1SplGx6f+gsxWZ5i1rXioNx7/dYNx+7vmgMNdrx+fPIarXRvg9XaZl4Ogq/dvXFgT9s6oGGrCZQzeBcJwPEZ7LpiUp+fvUU6LowAyMH/WfF3aVdgxXQ6r1RVdiMAMWx82BX4ECQxQgAC8QQQgHgu7IWAFwQQAC/STJAQiCeAAMRzYS8EvCCAAHiRZoKEQDwBBCCeC3sh4AUBBMCLNBMkBOIJIADxXNgLAS8IIABepJkgIRBPAAGI58JeCHhBAAHwIs0ECYF4AghAPBf2QsALAgiAF2kmSAjEE0AA4rmwFwJeEEAAvEgzQUIgngACEM+FvRDwggAC4EWaCRIC8QQQgHgu7IWAFwQQAC/STJAQiCeAAMRzYS8EvCCAAHiRZoKEQDwBBCCeC3sh4AUBBMCLNBMkBOIJIADxXNgLAS8IIABepJkgIRBPAAGI58JeCHhBAAHwIs0ECYF4AghAPBf2QsALAgiAF2kmSAjEE0AA4rmwFwJeEEAAvEgzQUIgngACEM+FvRDwggAC4EWaCRIC8QQQgHgu7IWAFwTKhY9SBxeOjE1O2xJHqVR66O6NA3sW80drdVeodO9i5Xnu18ask/aW59kmbblFoPACoJW50chRZctWN+YC8WVRAdi2aeXlnfJ1eHzyGaX0aZ3qj36KR4BTgOLlDI8hkBuB1BGA1maDMkFHhqxZojLK3CB2789iiw0EIJBMIFUAtm0a+n5yE50tHR6b3q+06Wyn9AYBRwlwCuBoYgkLAlkIIABZKGEDAUcJIACOJpawIJCFAAKQhRI2EHCUAALgaGIJCwJZCCAAWShhAwFHCSAAjiaWsCCQhQACkIUSNhBwlAAC4GhiCQsCWQggAFkoYQMBRwkgAI4mlrAgkIUAApCFEjYQcJQAAuBoYgkLAlkIIABZKGEDAUcJIACOJpawIJCFAAKQhRI2EHCUAALgaGIJCwJZCCAAWShhAwFHCSAAjiaWsCCQhQACkIUSNhBwlAAC4GhiCQsCWQggAFkoYQMBRwkgAI4mlrAgkIUAApCFEjYQcJQAAuBoYgkLAlkIIABZKGEDAUcJIACOJpawIJCFAAKQhRI2EHCUAALgaGIJCwJZCCAAWShhAwFHCSAAjiaWsCCQhQACkIUSNhBwlAAC4GhiCQsCWQiUsxhhkz+B9RPTFW3Ml/NveUGLKxe84w0EjiBQOAEwOvyyNvpbR8Rhz9va/FOZnAnVUqXVCZlsMUolcN6tk8uW9Ya/Wgt6BpWuLw+M7lHK9IZK96pAz+pQHzBKvaYDdUCFZr9ZUntx+/pVr6c27LhB4QRg++jQPY7nhPBSCFw4MX1qKQzXGK3XiOkZ8vc++TuxrkqiqaG81Mpo+Sf/D/4zcuhrc+j1wd1Kz5TU8PjUL+Xd8/L3glj8TL5YdgW6vqs+b3Zt37xqn+x3fiucADifEQJcQGDLFhM8uXrvGSZQZxtjPiSFZyljBuTgX2DX5JtjpV709xtv6oUR+QhUNHYQcZiU/dFo7rFQmQd1f/ioiyMGBEAyzGYXgfW3v7hC95aHTaguelxPny3eHa3kK7rD25D0F/19TCThc2qmNC+i8AMZU+wQIdrRp/Y9OF45fa7DPuXeHQKQO1IabIbAhWP7TghUuEHqXizD9bPlW76Uz5d8M97E1pFxgTrTKHOmnEtcM6tW7BdB2KZMMN6nph8oqhggALG5ZmcnCIyO/XzJjOrZLN+qn5SJu9+RPnMZ13fCd+njGPm7QunwChGDl0cmpqomDO5cs3vF/Vu26GgiohAbAlCINLnl5AV3TZ1SCtWnZpX6Iznio3Pwom9HyzzjJ0QMPvH46dPPDo9NfaVP9dw8XnnXy7YHhgDYniFX/DNGr5/Yu1aZ8NPy/bhWwnJ1EdrJMo750qya//uR8albjAlurFYGfmRrGl1Ngq28vfMrmsUfHp+8ZHhiardcnLtPa73O4YP/8Pwuk3nLT8mo4BmJ/x6JP7pcad2GAFiXEncckkmyi59YPf0/cmp/h/yd5k5kDUUiZzn6ArmK8cTwxPRNF9+19/iGarfZmFOANgP2sfmLxqZ/K9TmRon9rDcX5PhI4R0xB3Jl48qaMZeMjE19MVxS/2cb1hUwAnhHntjRLIENdz9/nAx1vyYH/05p46xm23G83jIRxWtlJeKPo1OjbseKAHQ7A470PzI2vale79ktQ92rJCQ+V+l5lftA9B1ymvRvw9v2Lk83b48FiWoPV29aPX9sz4B8iMeMNuMS9KA3gecX6GVqLnxyZGIyWgfR8Q0B6DhydzocuWvqoz062CURjboTVVciOUWukj4yPD7919FVk0560NHOOhkYfbWPQPQhXT8xda2s1f8P6YVv/XxQy4S8ue7x1Xu/E82l5NNkeisIQDojLA4jEN2oI6vdHpC7a/9WdvP5OYxNLi+1OUfmUh4avmPvqlzaS2mEBKYAovhtAsNje9+je0uPyZ5z397LqzYQWK3K4SPRkuk2tL2gSQRgAQ7eLEbgovE9H5ZVbY/KLP+vL2bD/lwJnCz3Szy8fmLP6bm2ekRjqQuBhif2fkCbsPeIeta8nVv2ys77150q95WwtYvA+onJS0OjvyHtW/s5aFfsXW53lTbBg3IMrq1uGvhhO3xJFQC5eaMqa5qtWr54OIjya8ujYdKzh+/jdX4EZPnqFbKC7V+lRUaL+WFtpKXj5Bj8L8nDh6qbBp9opGIWW5KahZKnNuvHJq/k4Lci+cvlCdLfjiZg8/YGAcibqCPtyT3tV8mde1+XcPiMWJBTGYW/W/eU7hwdM6U83SG5edJ0pC25xr9R7mn/qoRTpCf0OEI/MYxzZ4PpLyZaNFiIADQIzHXz9WPTvyfX+G+TOPls2Jhso64eGZvcnJdrJDkvkg60MzK2Z7XWpiqh9DsQjrMhyCPRb4puuc4jQAQgD4oOtHFw+akO7pNQXHhGnwMZSQxhST1Qt4+OPd3yZVkEIJGzH4XR2v56reeb0USTHxEXP0q5KvDeObXir1qNBAFolaAD9Xe+b/rvZLrv9x0IxasQ5MEi10TLs1sJGgFohZ4DdXVYXyeTfp9zIBQfQ+iT5dnXtxJ4+krAVlqnbgEI6C3iZFEu9x0QX/9P7kf4pXgcvX5Nfj3ogDyT/0D05E05hZHn8+uj5OnDR0vZ0WJzlPyPfsDD5XmNtcN3TZ9d3Tj4kMTZ8IYANIzMuQq5LizJiU5NDvIfyoXIh+W4flqeO/DTulI/ua8yONlM+xd8c/+xumf2tCDQ75V77j8gbUe/N7ha/ooifMlhh+YfxeB3k43iSxGAeC7s7TyBp+TyVlWH5sGZGfO9/7x8KPqGz2W79w+OiX4G/NFDf9F9DSq66hHWyh8VDbhEzqXPl1190f6CbmeOTEyv27ZpMLqK09CGADSEC+OcCUzJsP32ktG3bq0MPplz24nNffviE18Sgzujv/Nve+mo3r75SqiDq6PZ9cSKthYac7W4hgDYmh/8WkBgp/zK7uf7zcp7xitaRvfd3e6/7LhXxIOb5Manm2UZ9LDcgvtZmVH4YHe9aqx3EdKPRM8O2L7p+KcbqckIoBFa2LZK4Ak5yLZUK0PRakP7NlkGuV0p+clvU5Vf+70yVPqfZJLgXfY5Gu+RVsGfSskfx5fG7+UyYDwX9uZLYI82elTuZ/9taw/+w+MVIdg2OnSTmq+/R+YIvnV4kdWvjbrsvFsnlzXiIwLQCC1smyFwa32u7/RtlcEJJQdWMw10q872zav2VUcHL5XTlT8XH2rd8qOBfpf2LVXDDdhzx1cjsLBtiMCLygQXVkdXXnFoFr6hyjYZbx8duj5Q4cdEvX5hk19xvshIq6GfG2MEEEeRfa0S+L6aV2uqlYF7W23IlvpbR4/fUTLBeeLPy7b4tIgfa0fHfhEthMq0IQCZMGHUAIHxPjN3TnXzyqkG6hTCdGtlYKcJzFpx9lWLHe6dCebWZfUPAchKCrtUAlrp62Si7+PjlZPeSDUuqMH2jUOPhcpsEPdDa0MwwblZfUMAspLCLpGALKD5m22jg3L9vFgTfYlBLVJ4z+jQdyXKaxcp7vpuuRfiI1mdQACyksIuicCXtlWG/iHJwLWy9+8e/IKsEfiupXGdLE90PjmLbwhAFkrYLE5A65tlpv8vFzdws2TLFh3OG32ZRGflpKAOguiGp9QNAUhFhEECgeqaXQNXJZQ7XXTw7kSj7Bz5GJXpmYEIgNMf0TYGp9VzQbn3iuibsI29WN90n9p3g9xU/FPrHDXqN7P4hABkoYTNkQTmgjD8+NYNx+4/ssC39+OV0+fk+QKfsS5ubc7I4hMCkIUSNgsJGPOZrZXj/3vhTn/fyRzI3fIsg2csI3DchWP7TkjzibsB0wi1qVyWlsotscE1bWr+ULMH17AP5NmHMea+7ZWhG/Js04m2jPmKxPEvNsVS0uEp4s8LST4hAEl02lgml82ekuajv7Ztw+OTl8vdbHkKwIw4++m2OVzghvvloSaz+uCjuY6yJYxQhyem+cIpQBohyg8ncJ18+z97+A5ev0lgvDL4mizAucUmHnJj0Elp/iAAaYQof4vAT+aXvZLrD1O+1bAr/2U15G02xSKCxAjApoQU2hej/+T+dafOFjqGNju/dXToB9KFPTdBGb0qLWRGAGmEKJcnaauHqpXBfwdFCoGD90EYa26Blqcdp85HIAApOaVYphFL6vNwyEZALgfKYwWt2VIfD4YAWJMrSx0x6rFtG1d+x1LvrHNr9nXzgDg1b4VjRiEAViSi0E4EXyi0+x12/uAPmpj2Xt7NHJJOF4As6wCul0Hg8syddtgwnO/zfjlqG5E/4dJjvdrIaUHTchrwuMzAr1mwsztvlqZ1myoAssyRSz9pFF0t1+arrobWzrhkLnCnTJx+sp19ZGw79fhmDiAjSQ/NDqieUnGeiW9RguRGqcctcSf1h18RAEsyZZ8b5s7qyIDND7+0D9khj/YfmPlfeVmzwMHU4zvVwIIgcKELBEKjb+pCt050ueMPT56Rx4Ul3oTToUBTj+9Ugw45Sjd2Edh9T2Vl9HPabE0SMEY932TVPKtxCpAnTV/akjXtt/sSa7viNIG2QQBSv+BTDdoFiHbtJVAryy/ksrVEQETUBgFgBNBSFn2sLM+3u/fioV0+hp5rzMb8PNf2mmss9Qs+1aC5fqlVVAJy7lotqu9W+a2DFy3wJ/X4Tl0oYEEQC1wYueOFk0ypN3WF04JKHXwzM1N//uBy0A72mWtXJmD4nwdQI78fKJcCurylngIUTgBMufwN+Vm2c7sMdtHulywNLpDC+xY1sLvgpX614hG7XSyGd0bpN2Q5cPedNXJTcMLPtaUOEbofAR50ioD83t2O8Yqud6o/l/sJgnr0/MSub6PjKvEYTyzsuvc40FkCgX6osx2621s0ArAjut2JpwEIgB1ZssILGbA+bIUjDjgRWiIAew8sTTzGEwsdyAMhZCfwSl84EK1hZ8uBQK8uWTECWL6iL/EYTyzMgQNNFIfA9zj/zy9ZtdmaFU8F6n+jnHiMJxbmh4OWbCdglGH4b3uSmvBvtk8nXoxEAJqA6mQVefafk3F5HlTfbCnxGE8s9JydX+HXQs7/Hcz46/NB4jGeWOggD0KKJ7Bn++ZV++KL2FtkAkt7XuUUoMgJ7IjvRvHt3xHQne9kpsYpQOepF63HAAEoWsqy+lvu5xQgKyuf7RgBOJr9+gxXARxNbX5hhYElP2SRX0i0dIhAuY8RAB+GFAJLanM/TjGhuKAE5uo6caI/sbCgMeN2YwSmxisnWbFstTG3sc5CoLfEKUAWTj7bPOdz8K7HPl+fTfySTyx0HQ7xRQT0s3Bwl0CJUwB3k5tHZEaHz+XRDm3YSWC+N3kSsHCPBLMTc3avhscnd8i3bn/2Gi1Z/lpabR0yAkhjVOTynvnkJxMiAB3Prv6gdGnNQ03liXHPdRwBHXaMQBgwCdgx2IXsKAi4B6CQicvmtKzx4F6AbKiwgoB/BLgK4F/OidgjAj01TgE8SjehQmAhgTqnAAuB8A4CPhGQXylmDsCnhBMrBA4nUK7NIQCHA+E1BHwiwGVAn7JNrBA4ggCXAY8AwlsI+ESAEYBP2SZWCBxBoFxjIdARSHgLAX8IcBXAn1wTKQTeQYA5gHcgYQcEIPAWAZYCv0WC/xBwkECZpcAOZpWQIJATAUYAOYGkGQgUkQACUMSs4TMEMhJImwQs3hOBjKmqQP8oY/wdNwtV/WeJnWr9daVMb6JNXoVGXSpNHZNXc7TjHoHCCUC1MnRDkdNQ3TT4Z53yX54/eI48fxAB6BTwAvbDKUABk4bLEMhKwGhuB87KCjsIeEeAEYB3KSdgCLxNAAF4mwWvIOAdAQTAu5QTsE8ESnXuBvQp38QKgYYIMAJoCBfGEHCLAALgVj6JBgILCKStBEQAFuDiDQTcIhCEyiRFhAAk0aEMAo4TQAAcTzDhQSCJAAKQRIcyCBScQL3EKUDBU4j7EGgfAUYA7WNLyxCwngACYH2KcBACzRPQxnAVoHl81ISA2wQYAbidX6KDQCIBBCARD4UQcJsAAuB2fonOcwKsBPT8A0D4EEgiwAggiQ5lEHCcAALgeIIJz28CtTKXAf3+BBA9BBIIMAJIgEMRBIpOgEnAomcQ/yHQAgEdcgrQAj6qQqDYBGpl7gYsdgbxHgItEAgYAbRAj6oQKDgB5gAKnkDch0ArBBgBtEKPuhAoOIFauZfbgQueQ9yHQNsIsA6gbWhpGALdJ5B2GbDcfRf98mB4bGqnCfSSjkRtzCkd6YdOrCVQSvldAASg06nT6jR5TNPSTndLf34SmOdeAD8TT9QQiAhwGZDPAQQ8JsBlQI+TT+gQmO9hKTCfAgh4SyCoczOQt8kncAiUEAA+BBDwl0C9ZMKk6FkIlESHMggUnACnAAVPIO5DoBUC9VIfI4BWAFIXAkUmwAigyNnDdwi0SKDcy2XAFhFSHQLFJVCbDTkFKG768BwCrREo9bMOoDWC1IZAgQnUZhgBFDh9uA6B1giU+0OeCNQaQmpDoLgE5t74FeYAips+PIdAawR6ljIH0BpBakOgwARmDzAHUOD04ToEWiPQs5w5gNYIUhsCBSbQN8spQIHTh+sQaI3AzJIak4CtIaQ2BIpLoP+NOpcBi5s+PIdAqwReqSe1wPMAkuhQBoGCE9g7sJpTgILnEPch0DSBDz+oEICm6VERAgUnsGWLRgAKnkPch0CzBBInAKNGmQNoFi31IGA/gcRv/8h9BMD+JOIhBJolgAA0S456EHCAAALgQBIJAQLNEkAAmiVHPQg4QAABcCCJhACBZgkgAM2Sox4EHCCAADiQREKAQLMEEIBmyVEPAg4QQAAcSCIhQKBZAqkCUG62Zeo1TWBKai5punbOFYN6fT7nJmnOHgIIgD25eNOT6ujKU2zzCX/yJzBTM6/19+hr82+5oRZfTbP+fwykZ9aR4HruAAAAAElFTkSuQmCC",originalColor:"#4EABE9",secondaryColor:"#4EABE9",borderRadius:3};const getSpecFromTenant=tenant=>{switch(tenant){case"brf-global.com":case"pilkington.com":case"jbs.com.br":case"unipac.com.br":case"cecil.com.br":case"tirolez.com.br":case"eldoradobrasil.com.br":case"entrevias.com.br":case"ibbx.tech":return Object(Theme["d"])(IBBXTheme,dist_namespaceObject);case"choiceiot.com":return Object(Theme["d"])(ChoiceIotTheme,dist_namespaceObject);case"sgpam.com.br":return Object(Theme["d"])(SGPAMTheme,dist_namespaceObject);case"embraer.com":return Object(Theme["d"])(EmbraerTheme,dist_namespaceObject);case"mwm.com.br":return Object(Theme["d"])(MWMTheme,dist_namespaceObject);case"sew.com.br":return Object(Theme["d"])(SEWTheme,dist_namespaceObject);case"confibra.com.br":return Object(Theme["d"])(ConfibraTheme,dist_namespaceObject);case"jmendes.com.br":return Object(Theme["d"])(JMendesTheme,dist_namespaceObject);case"saaecapivari.com.br":return Object(Theme["d"])(SAAECapivariTheme,dist_namespaceObject);case"saomartinho.com.br":return Object(Theme["d"])(SaoMartinhoTheme,dist_namespaceObject);case"vallourec.com":return Object(Theme["d"])(VallourecTheme,dist_namespaceObject);case"lexmark.com":return Object(Theme["d"])(LexmarkTheme,dist_namespaceObject);case"elementalmachines.com":return Object(Theme["d"])(ElementalMachinesTheme,dist_namespaceObject);case"euentrego.com":return Object(Theme["d"])(EuEntregoTheme,dist_namespaceObject);case"fitesa.com":return Object(Theme["d"])(FitesaTheme,dist_namespaceObject);case"fuelics.com":return Object(Theme["d"])(FuelicsTheme,dist_namespaceObject);case"healthmetryx.com":return Object(Theme["d"])(HealthmetryxTheme,dist_namespaceObject);default:return Object(Theme["d"])(HoparaTheme,dist_namespaceObject)}};const createMuiThemeFromTenant=tenant=>{const spec=getSpecFromTenant(tenant);return Object(Theme["c"])(spec)}},function(module,__webpack_exports__,__webpack_require__){"use strict";var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var external_feather_icons_react_=__webpack_require__(103);var external_feather_icons_react_default=__webpack_require__.n(external_feather_icons_react_);function _extends(){_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function SvgCompass(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",_extends({viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,external_react_["createElement"]("g",{fillRule:"evenodd",transform:"matrix(1.021277, 0, 0, 1.021277, 7.404254, -0.000004)"},external_react_["createElement"]("path",{d:"M 4.55 23.5 L 0 11.75 L 4.55 0 L 9 11.75 L 4.55 23.5 Z M 4.54 20.704 L 7.836 11.75 L 1.087 11.75 L 4.54 20.704 Z",style:{stroke:"none"}})))}const ForwardRef=external_react_["forwardRef"](SvgCompass);var compass=__webpack_require__.p+"static/media/compass.1b7cfab3.svg";var _path;function target_extends(){target_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return target_extends.apply(this,arguments)}function SvgTarget(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",target_extends({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,_path||(_path=external_react_["createElement"]("path",{d:"M11,2V4.07C7.38,4.53 4.53,7.38 4.07,11H2V13H4.07C4.53,16.62 7.38,19.47 11,19.93V22H13V19.93C16.62,19.47 19.47,16.62 19.93,13H22V11H19.93C19.47,7.38 16.62,4.53 13,4.07V2M11,6.08V8H13V6.09C15.5,6.5 17.5,8.5 17.92,11H16V13H17.91C17.5,15.5 15.5,17.5 13,17.92V16H11V17.91C8.5,17.5 6.5,15.5 6.08,13H8V11H6.09C6.5,8.5 8.5,6.5 11,6.08M12,11A1,1 0 0,0 11,12A1,1 0 0,0 12,13A1,1 0 0,0 13,12A1,1 0 0,0 12,11Z"})))}const target_ForwardRef=external_react_["forwardRef"](SvgTarget);var target=__webpack_require__.p+"static/media/target.5caa5a92.svg";var _g;function place_row_extends(){place_row_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return place_row_extends.apply(this,arguments)}function SvgPlaceRow(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",place_row_extends({width:"24px",height:"24px",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",ref:svgRef,"aria-labelledby":titleId},props),title===undefined?external_react_["createElement"]("title",{id:titleId},"placeRow"):title?external_react_["createElement"]("title",{id:titleId},title):null,_g||(_g=external_react_["createElement"]("g",{id:"placeRow",fillRule:"evenodd"},external_react_["createElement"]("polygon",{fill:"currentColor",points:"12 2 16.2426407 6.24264069 15.1213203 7.36396103 13 5.242 13 11 18.759 11 16.636039 8.87867966 17.7573593 7.75735931 22 12 17.7573593 16.2426407 16.636039 15.1213203 18.757 13 13 13 13 18.757 15.1213203 16.636039 16.2426407 17.7573593 12 22 7.75735931 17.7573593 8.87867966 16.636039 11 18.759 11 13 5.242 13 7.36396103 15.1213203 6.24264069 16.2426407 2 12 6.24264069 7.75735931 7.36396103 8.87867966 5.24 11 11 11 11 5.24 8.87867966 7.36396103 7.75735931 6.24264069"}))))}const place_row_ForwardRef=external_react_["forwardRef"](SvgPlaceRow);var place_row=__webpack_require__.p+"static/media/place-row.c46a02cf.svg";var filter_large_path;function filter_large_extends(){filter_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return filter_large_extends.apply(this,arguments)}function SvgFilterLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",filter_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,filter_large_path||(filter_large_path=external_react_["createElement"]("path",{d:"M21.3 34.7v-1.1h5.4v1.1Zm-8-11.15v-1.1h21.4v1.1Zm-6-11.15v-1.1h33.4v1.1Z"})))}const filter_large_ForwardRef=external_react_["forwardRef"](SvgFilterLarge);var filter_large=__webpack_require__.p+"static/media/filter-large.61677ff2.svg";var table_large_path;function table_large_extends(){table_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return table_large_extends.apply(this,arguments)}function SvgTableLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",table_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,table_large_path||(table_large_path=external_react_["createElement"]("path",{d:"M8.6 39.4V8.6h30.8v30.8Zm1.1-21.3h28.6V9.7H9.7Zm9.9 10.1h8.8v-9h-8.8Zm0 10.1h8.8v-9h-8.8ZM9.7 28.2h8.8v-9H9.7Zm19.8 0h8.8v-9h-8.8ZM9.7 38.3h8.8v-9H9.7Zm19.8 0h8.8v-9h-8.8Z"})))}const table_large_ForwardRef=external_react_["forwardRef"](SvgTableLarge);var table_large=__webpack_require__.p+"static/media/table-large.72b90bd0.svg";var layers_large_path;function layers_large_extends(){layers_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return layers_large_extends.apply(this,arguments)}function SvgLayersLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",layers_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,layers_large_path||(layers_large_path=external_react_["createElement"]("path",{d:"M24 35.9 10.2 25.2l.85-.7L24 34.5l12.95-10 .85.7Zm0-6.15-13.8-10.7L24 8.35l13.8 10.7Zm0-11Zm0 9.6 12-9.3L24 9.8l-12 9.25Z"})))}const layers_large_ForwardRef=external_react_["forwardRef"](SvgLayersLarge);var layers_large=__webpack_require__.p+"static/media/layers-large.596ff81a.svg";var tune_large_path;function tune_large_extends(){tune_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return tune_large_extends.apply(this,arguments)}function SvgTuneLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",tune_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,tune_large_path||(tune_large_path=external_react_["createElement"]("path",{d:"M23.1 40.7v-9.2h1.1v4.05h16.5v1.1H24.2v4.05ZM7.3 36.65v-1.1h9.5v1.1Zm8.4-8.05v-4.05H7.3v-1.1h8.4V19.4h1.1v9.2Zm7.4-4.05v-1.1h17.6v1.1Zm8.1-8.1V7.3h1.1v4.05h8.4v1.1h-8.4v4Zm-23.9-4v-1.1h17.6v1.1Z"})))}const tune_large_ForwardRef=external_react_["forwardRef"](SvgTuneLarge);var tune_large=__webpack_require__.p+"static/media/tune-large.ecd7a42c.svg";var styles_=__webpack_require__(104);var icons_material_=__webpack_require__(29);var jsx_runtime_=__webpack_require__(0);class Icons_Icons extends external_react_default.a.PureComponent{render(){const style={...this.props.style,fill:"currentColor",width:"1em",height:"1em"};if(this.props.icon==="compass"){return Object(jsx_runtime_["jsx"])(ForwardRef,{style})}if(this.props.icon==="target"){return Object(jsx_runtime_["jsx"])(target_ForwardRef,{style})}if(this.props.icon==="placing-row"){return Object(jsx_runtime_["jsx"])(icons_material_["LocationOnOutlined"],{style})}if(this.props.icon==="place-row"){return Object(jsx_runtime_["jsx"])(place_row_ForwardRef,{style})}if(this.props.icon==="filter-large"){return Object(jsx_runtime_["jsx"])(filter_large_ForwardRef,{style})}if(this.props.icon==="table-large"){return Object(jsx_runtime_["jsx"])(table_large_ForwardRef,{style})}if(this.props.icon==="layers-large"){return Object(jsx_runtime_["jsx"])(layers_large_ForwardRef,{style})}if(this.props.icon==="tune-large"){return Object(jsx_runtime_["jsx"])(tune_large_ForwardRef,{style})}if(this.props.icon==="edit"){return Object(jsx_runtime_["jsx"])(icons_material_["EditOutlined"],{style})}if(this.props.icon==="toggleOn"){return Object(jsx_runtime_["jsx"])(icons_material_["ToggleOnOutlined"],{style})}if(this.props.icon==="toggleOff"){return Object(jsx_runtime_["jsx"])(icons_material_["ToggleOffOutlined"],{style})}return Object(jsx_runtime_["jsx"])(external_feather_icons_react_default.a,{icon:this.props.icon,style:this.props.style})}}var icons_Icons=__webpack_exports__["a"]=Object(styles_["withTheme"])(Icons_Icons)},function(module,exports){module.exports=require("redux")},function(module,exports){module.exports=require("math.gl")},function(module,exports){var g;g=function(){return this}();try{g=g||new Function("return this")()}catch(e){if(typeof window==="object")g=window}module.exports=g},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return navigationActions}));var typesafe_actions__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(2);var typesafe_actions__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__);var _state_Actions__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(1);const userActions=dispatch=>({onZoomInClick:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization){dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].root.genericError({reason:"Cannot zoom while visualization does not exist"}));return}dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.zoomInRequested({visualizationId:currentVisualization.id}));dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Sidebar Zoom: In"}))},onZoomOutClick:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization){dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].root.genericError({reason:"Cannot zoom while visualization does not exist"}));return}dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.zoomOutRequested({visualizationId:currentVisualization.id}));dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Sidebar Zoom: Out"}))},onJumpBackClick:(visualizations,jumpStore)=>()=>{const previousViz=jumpStore.previousVisualization();const toVisualization=previousViz?visualizations.getById(previousViz):visualizations.getOrigin();const fromVisualization=visualizations.getCurrent();if(!toVisualization||!fromVisualization)return;dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Jump: Back"}));return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].visualization.jumpBackRequested({fromVisualization,toVisualization}))},onLevelChange:visualizations=>level=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization)throw new Error("Cannot change level while visualization does not exist");dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Level: Change"}));return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.levelChangeRequested({level,visualizationId:currentVisualization.id}))},onBearingModeClick:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization)throw new Error("Cannot change bearing while visualization does not exist");dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Bearing: Toggle"}));return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.bearingModeToggle({visualizationId:currentVisualization.id}))}});__webpack_exports__["a"]=userActions;const navigationActions={zoomInRequested:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("ZOOM_IN_REQUESTED")(),zoomOutRequested:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("ZOOM_OUT_REQUESTED")(),levelChangeRequested:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("LEVEL_CHANGE_REQUESTED")(),bearingModeToggle:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("BEARING_MODE_REQUESTED")(),changeTab:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("CHANGE_TAB")()}},function(module,exports){module.exports=require("@turf/transform-rotate")},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(setImmediate){__webpack_require__.d(__webpack_exports__,"a",(function(){return memoize}));var fast_memoize__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(102);var fast_memoize__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(fast_memoize__WEBPACK_IMPORTED_MODULE_0__);const defaultStore=new Map;const memoize=(fn,options)=>fast_memoize__WEBPACK_IMPORTED_MODULE_0___default()(fn,{cache:{create(){var _options$cacheStore,_options$cachePrefix;const store=(_options$cacheStore=options===null||options===void 0?void 0:options.cacheStore)!==null&&_options$cacheStore!==void 0?_options$cacheStore:defaultStore;const keyPrefix=(_options$cachePrefix=options===null||options===void 0?void 0:options.cachePrefix)!==null&&_options$cachePrefix!==void 0?_options$cachePrefix:"";return{has(key){var _options$cacheKey;return store.has((_options$cacheKey=options===null||options===void 0?void 0:options.cacheKey)!==null&&_options$cacheKey!==void 0?_options$cacheKey:keyPrefix+key)},get(key){var _options$cacheKey2;return store.get((_options$cacheKey2=options===null||options===void 0?void 0:options.cacheKey)!==null&&_options$cacheKey2!==void 0?_options$cacheKey2:keyPrefix+key)},set(key,value){var _options$cacheKey3;const cacheKey=(_options$cacheKey3=options===null||options===void 0?void 0:options.cacheKey)!==null&&_options$cacheKey3!==void 0?_options$cacheKey3:key;const keyToDelete=(options===null||options===void 0?void 0:options.deleteKeyOnSet)&&(options===null||options===void 0?void 0:options.deleteKeyOnSet(store,cacheKey,keyPrefix));if(keyToDelete)setImmediate((()=>store.delete(keyToDelete)));store.set(keyPrefix+cacheKey,value)}}}}})}).call(this,__webpack_require__(139).setImmediate)},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return OffsetEncoding}));var _size_SizeEncoding__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(32);class OffsetEncoding{constructor(offset){this.x=void 0;this.y=void 0;if(offset.x)this.x=new _size_SizeEncoding__WEBPACK_IMPORTED_MODULE_0__["a"](offset.x);if(offset.y)this.y=new _size_SizeEncoding__WEBPACK_IMPORTED_MODULE_0__["a"](offset.y)}isRenderable(){return!!this.x||!!this.y}}},function(module,exports){module.exports=require("@mui/material/ListItemButton")},function(module,exports){module.exports=require("@mui/material/ListItemIcon")},function(module,exports){module.exports=require("deck.gl")},function(module,exports){module.exports=require("vega-lite")},function(module,exports){module.exports=require("@mui/material/TableRow")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return D3Formatter_D3Formatter}));var external_d3_=__webpack_require__(22);var ColumnType=__webpack_require__(21);const getDecimalsQty=(value,decimalSeparator)=>{let splitted=[];if(typeof value==="string"){splitted=value.split(decimalSeparator)}else if(typeof value==="number"){const numStr=value.toString();splitted=numStr.split(".")}return splitted.length===2?splitted[1].length:0};class D3Formatter_D3Formatter{constructor(columnType){this.columnType=void 0;this.columnType=columnType}getFormatString(){switch(this.columnType){case ColumnType["a"].DECIMAL:return",.2f";case ColumnType["a"].INTEGER:return",d";default:return}}getDecimalSeparator(){return"."}format(value){const formatString=this.getFormatString();if(!formatString)return value;return external_d3_["format"](formatString)(value)}unformatDecimal(value){const unformatted=typeof value==="string"?Number(value.replace(/,/g,"")):value;const decimalsQty=getDecimalsQty(value,this.getDecimalSeparator());if(!decimalsQty){return Number(unformatted)/100}else if(decimalsQty===1){return Number(unformatted)/10}else if(decimalsQty>2){return Number(unformatted)*10}return unformatted}unformat(value){switch(this.columnType){case ColumnType["a"].INTEGER:return typeof value==="string"?Number(value.replace(/,/g,"")):value;case ColumnType["a"].DECIMAL:return this.unformatDecimal(value);default:return value}}}},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(global){const window=global;const sendEvent=(name,props)=>{if(!window.gtag)return;window.gtag("event",name,props)};const pageview=(title,path)=>{sendEvent("page_view",{page_path:path,page_location:window.location.href,page_title:title})};const login=method=>{sendEvent("login",{method})};const custom=event=>{sendEvent(event.action,{event_category:event.category,event_label:event.label,value:event.value})};const GA={pageview,login,custom};__webpack_exports__["a"]=GA}).call(this,__webpack_require__(75))},function(module,exports){module.exports=require("gl-matrix/vec2")},function(module,exports){module.exports=require("@mui/material/Slider")},function(module,exports){module.exports=require("react-beautiful-dnd")},function(module,exports){module.exports=require("@turf/projection")},function(module,exports){module.exports=require("d3/dist/d3.min")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return logAppInfo}));var _hopara_config__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(17);var _hopara_internals__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(16);const logAppInfo=()=>{if(!_hopara_internals__WEBPACK_IMPORTED_MODULE_1__["a"].isDebugging())return;const envs=["HOPARA_ENV","PACKAGE_VERSION","BUILD_NUMBER","APP_API_ADDRESS","BFF_ADDRESS","DATASET_API_ADDRESS"];return envs.forEach((env=>_hopara_internals__WEBPACK_IMPORTED_MODULE_1__["c"].info(env,"=",_hopara_config__WEBPACK_IMPORTED_MODULE_0__["a"].getValue(env))))}},function(module,exports){module.exports=require("colorsys")},function(module,exports){module.exports=require("@luma.gl/engine")},function(module,exports){module.exports=require("@mui/material/TableCell")},function(module,exports){module.exports=require("d3-svg-legend")},function(module,exports){module.exports=require("jwt-decode")},function(module,exports){module.exports=require("redux-saga")},function(module,exports){module.exports=require("slugify")},function(module,exports){module.exports=require("@turf/bearing")},function(module,exports){module.exports=require("@math.gl/web-mercator")},function(module,exports){module.exports=require("fast-memoize")},function(module,exports){module.exports=require("feather-icons-react")},function(module,exports){module.exports=require("@mui/styles")},function(module,exports){module.exports=require("@mui/icons-material/Link")},function(module,exports){module.exports=require("@mui/material/Switch")},function(module,exports){module.exports=require("@mui/material/Tooltip")},function(module,exports){module.exports=require("@mui/icons-material/Info")},function(module,exports){module.exports=require("supercluster")},function(module,exports){module.exports=require("@mui/material/TextField")},function(module,exports){module.exports=require("@mui/icons-material/ChevronLeft")},function(module,exports){module.exports=require("react-dom")},function(module,exports){module.exports=require("@mui/icons-material/Add")},function(module,exports){module.exports=require("@mui/icons-material/DragIndicator")},function(module,exports){module.exports=require("socket.io-client")},function(module,exports){module.exports=require("redux-persist")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ToastContainer}));var react__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);var react__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);var react_toastify__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(46);var react_toastify__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(react_toastify__WEBPACK_IMPORTED_MODULE_1__);var react_toastify_dist_ReactToastify_css__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(141);var react_toastify_dist_ReactToastify_css__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(react_toastify_dist_ReactToastify_css__WEBPACK_IMPORTED_MODULE_2__);var _toast_css__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(142);var _toast_css__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(_toast_css__WEBPACK_IMPORTED_MODULE_3__);var _emotion_react__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(14);var _emotion_react__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(_emotion_react__WEBPACK_IMPORTED_MODULE_4__);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(0);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5___default=__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__);react_toastify__WEBPACK_IMPORTED_MODULE_1__["toast"].configure();const transition=Object(react_toastify__WEBPACK_IMPORTED_MODULE_1__["cssTransition"])({enter:"hopara-Toastify__fade-in",exit:"hopara-Toastify__fade-out"});class ToastContainerClass extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent{render(){const position="bottom-left";return Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__["jsx"])(react_toastify__WEBPACK_IMPORTED_MODULE_1__["ToastContainer"],{autoClose:3500,limit:1,newestOnTop:true,position,theme:"light",hideProgressBar:true,icon:false,transition,containerId:"hp-toast-global",className:"hopara-Toastify",toastClassName:this.props.theme.palette.mode==="dark"?"hopara-Toastify__toast__dark":"hopara-Toastify__toast__light",bodyClassName:"hopara-Toastify__body"})}}const ToastContainer=Object(_emotion_react__WEBPACK_IMPORTED_MODULE_4__["withTheme"])(ToastContainerClass)},function(module,exports){module.exports=require("@deck.gl/react/typed")},function(module,exports){module.exports=require("react-map-gl")},function(module,exports){module.exports=require("maplibre-gl")},function(module,exports){module.exports=require("@deck.gl/aggregation-layers")},function(module,exports){module.exports=require("@turf/rhumb-bearing")},function(module,exports){module.exports=require("@turf/rhumb-distance")},function(module,exports){module.exports=require("@turf/transform-translate")},function(module,exports){module.exports=require("@turf/bbox-polygon")},function(module,exports){module.exports=require("@turf/bbox")},function(module,exports){module.exports=require("@turf/meta")},function(module,exports){module.exports=require("@turf/polygon-to-line")},function(module,exports){module.exports=require("@deck.gl/core/typed")},function(module,exports){module.exports=require("@turf/distance")},function(module,exports){module.exports=require("@mui/material/Table")},function(module,exports){module.exports=require("@mui/material/TableContainer")},function(module,exports){module.exports=require("@mui/material/Paper")},function(module,exports){module.exports=require("@mui/material/TablePagination")},function(module,exports){module.exports=require("@mui/material/TableSortLabel")},function(module,exports){module.exports=require("@mui/material/TableBody")},function(module,exports){module.exports=require("@mui/material/TableHead")},function(module,__webpack_exports__,__webpack_require__){"use strict";var external_react_redux_=__webpack_require__(30);var Store=__webpack_require__(28);var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var src=__webpack_require__(17);var Theme=__webpack_require__(24);var SpecFromTenant=__webpack_require__(71);var jsx_runtime_=__webpack_require__(0);const DEFAULT_STYLE_INTERFACE=src["a"].getValue("STYLE_INTERFACE").toLowerCase();class ThemeProvider_ThemeProvider extends external_react_default.a.Component{constructor(props){super(props);this.interfaceName=void 0;this.state={selectedTheme:null,theme:Object(SpecFromTenant["a"])("hopara")};this.interfaceName=DEFAULT_STYLE_INTERFACE}componentDidUpdate(){var _this$props$authoriza;if((_this$props$authoriza=this.props.authorization)!==null&&_this$props$authoriza!==void 0&&_this$props$authoriza.tenant&&this.state.selectedTheme!==this.props.authorization.tenant){this.setState({selectedTheme:this.props.authorization.tenant,theme:Object(SpecFromTenant["a"])(this.props.authorization.tenant)})}}render(){return Object(jsx_runtime_["jsxs"])(Theme["b"],{theme:this.state.theme,children:[Object(jsx_runtime_["jsx"])(Theme["a"],{}),this.props.children]})}}var hoc_ThemeProvider=__webpack_exports__["a"]=Object(external_react_redux_["connect"])((state=>({authorization:state.authorization})),null,null,{context:Store["a"]})(ThemeProvider_ThemeProvider)},function(module,exports,__webpack_require__){(function(global){var scope=typeof global!=="undefined"&&global||typeof self!=="undefined"&&self||window;var apply=Function.prototype.apply;exports.setTimeout=function(){return new Timeout(apply.call(setTimeout,scope,arguments),clearTimeout)};exports.setInterval=function(){return new Timeout(apply.call(setInterval,scope,arguments),clearInterval)};exports.clearTimeout=exports.clearInterval=function(timeout){if(timeout){timeout.close()}};function Timeout(id,clearFn){this._id=id;this._clearFn=clearFn}Timeout.prototype.unref=Timeout.prototype.ref=function(){};Timeout.prototype.close=function(){this._clearFn.call(scope,this._id)};exports.enroll=function(item,msecs){clearTimeout(item._idleTimeoutId);item._idleTimeout=msecs};exports.unenroll=function(item){clearTimeout(item._idleTimeoutId);item._idleTimeout=-1};exports._unrefActive=exports.active=function(item){clearTimeout(item._idleTimeoutId);var msecs=item._idleTimeout;if(msecs>=0){item._idleTimeoutId=setTimeout((function onTimeout(){if(item._onTimeout)item._onTimeout()}),msecs)}};__webpack_require__(140);exports.setImmediate=typeof self!=="undefined"&&self.setImmediate||typeof global!=="undefined"&&global.setImmediate||this&&this.setImmediate;exports.clearImmediate=typeof self!=="undefined"&&self.clearImmediate||typeof global!=="undefined"&&global.clearImmediate||this&&this.clearImmediate}).call(this,__webpack_require__(75))},function(module,exports){module.exports=require("setimmediate")},function(module,exports){module.exports=require("react-toastify/dist/ReactToastify.css")},function(module,exports,__webpack_require__){},function(module,exports){},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.r(__webpack_exports__);__webpack_require__.d(__webpack_exports__,"Hopara",(function(){return HoparaHOC}));__webpack_require__.d(__webpack_exports__,"View",(function(){return ViewContainer}));var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var external_jwt_decode_=__webpack_require__(97);var external_jwt_decode_default=__webpack_require__.n(external_jwt_decode_);var PureComponent=__webpack_require__(25);var src=__webpack_require__(16);var Provider=__webpack_require__(67);var HocActions=__webpack_require__(63);var jsx_runtime_=__webpack_require__(0);const logInit=(message,props)=>{var _props$accessToken;src["c"].debug(message,{appId:props.app,accessToken:props.accessToken?`${(_props$accessToken=props.accessToken)===null||_props$accessToken===void 0?void 0:_props$accessToken.substring(0,50)}...`:undefined})};class HoparaHOC_Hopara extends PureComponent["a"]{getActionPayload(){var _this$props$tenant;const accessTokenDecoded=external_jwt_decode_default()(this.props.accessToken);const{tenants=[],scope=""}=accessTokenDecoded;return{appId:this.props.app,accessToken:this.props.accessToken,tenant:(_this$props$tenant=this.props.tenant)!==null&&_this$props$tenant!==void 0?_this$props$tenant:tenants[0],tenants,permissions:scope===null||scope===void 0?void 0:scope.split(""),queryLoaders:this.props.queryLoaders,initialPosition:this.props.initialPosition}}componentDidMount(){if(!this.props.app||!this.props.accessToken)return;logInit("initializing module",this.props);Provider["a"].dispatch(HocActions["a"].hocLoaded(this.getActionPayload()))}componentDidUpdate(prevProps){var _state$appStore$app;if(!this.props.app||!this.props.accessToken)return;const state=Provider["a"].getState();if(this.props.app===((_state$appStore$app=state.appStore.app)===null||_state$appStore$app===void 0?void 0:_state$appStore$app.id)&&this.props.accessToken===state.authorization.accessToken&&this.props.tenant===state.authorization.tenant)return;if(!prevProps.app||!prevProps.accessToken){logInit("initializing module",this.props);Provider["a"].dispatch(HocActions["a"].hocLoaded(this.getActionPayload()))}else{logInit("updating module",this.props);Provider["a"].dispatch(HocActions["a"].hocUpdated(this.getActionPayload()))}}render(){return Object(jsx_runtime_["jsx"])(Provider["b"],{children:this.props.children})}}var HoparaHOC=HoparaHOC_Hopara;var external_react_redux_=__webpack_require__(30);var Store=__webpack_require__(28);var Actions=__webpack_require__(1);const layerActions=dispatch=>(visualizations,isEditing,hasSelectedRow,tooltipEnabled)=>({onLayerHover:info=>{if(!info)return;if(!info.row&&(hasSelectedRow||tooltipEnabled))return dispatch(Actions["a"].layer.mouseLeft());if(!info.row)return;dispatch(Actions["a"].layer.mouseHover({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowIndex:info.rowIndex,rowsetId:info.rowsetId}))},onLayerClick:info=>{if(!(info!==null&&info!==void 0&&info.row)&&(hasSelectedRow||tooltipEnabled))return dispatch(Actions["a"].layer.clickOut());if(!(info!==null&&info!==void 0&&info.row))return;dispatch(Actions["a"].layer.click({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowIndex:info.rowIndex,rowsetId:info.rowsetId}))},onLayerDragStart:info=>{var _info$coordinates,_info$coordinates2;if(!info||!isEditing)return;dispatch(Actions["a"].layer.dragStart({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowDiff:{_x:(_info$coordinates=info.coordinates)===null||_info$coordinates===void 0?void 0:_info$coordinates.x,_y:(_info$coordinates2=info.coordinates)===null||_info$coordinates2===void 0?void 0:_info$coordinates2.y},rowIndex:info.rowIndex,rowsetId:info.rowsetId}))},onLayerDragEnd:info=>{if(!info||!isEditing||!info.coordinates)return;dispatch(Actions["a"].layer.dragEnded({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowDiff:info.updatedData,rowIndex:info.rowIndex,rowsetId:info.rowsetId}))}});var ViewLayerActions=layerActions;var ViewActions=__webpack_require__(48);var AppStore=__webpack_require__(33);var QueryStore=__webpack_require__(53);const getZoomButtons=props=>[{active:false,title:"Zoom in",icon:"plus",clickCallback:props.onZoomInClick},{active:false,title:"Zoom out",icon:"minus",clickCallback:props.onZoomOutClick}];const getJumpBackButton=props=>[{active:false,title:"Back to origin",icon:"arrow-left",clickCallback:props.onJumpBackClick}];const getBearingButton=props=>[{active:props.isBearing,title:"Change bearing",icon:"compass",iconStyle:{transform:`rotate(${props.currentBearing*-1}deg) scale(1.5)`},clickCallback:props.onBearingModeClick}];const MIN_Z=0;const MAX_Z=50;const getZSteps=currentZ=>{let steps;if(currentZ<=MIN_Z){steps=[MIN_Z,MIN_Z+1,MIN_Z+2]}else if(currentZ>=MAX_Z){steps=[MAX_Z-2,MAX_Z-1,MAX_Z]}else{steps=[currentZ-1,currentZ,currentZ+1]}return steps};const getZAxisButton=props=>{const currentZ=props.currentZ;if(currentZ===undefined)return[];const steps=getZSteps(currentZ);const zActions=[];zActions.push({active:false,disabled:currentZ<=MIN_Z,title:"Previous level",icon:"chevron-down",clickCallback:()=>props.onLevelChange(currentZ-1)});steps.forEach((step=>{zActions.push({active:step===currentZ,title:`Level ${step+1}`,label:(step+1).toString(),clickCallback:()=>currentZ!==step&&props.onLevelChange(step)})}));zActions.push({active:false,disabled:currentZ>=MAX_Z,title:"Next level",icon:"chevron-up",clickCallback:()=>props.onLevelChange(currentZ+1)});return zActions.reverse()};var src_theme=__webpack_require__(9);var Icons=__webpack_require__(72);const NavigationBar=Object(src_theme["a"])("div",{name:"NavigationView"})((_ref=>{let{theme}=_ref;return{bottom:theme.shape.paddingInner,position:"absolute",right:theme.shape.paddingInner,zIndex:2,transition:"transform 0.5s ease-in-out","@media (min-width: 768px)":{bottom:"auto",right:theme.shape.paddingInner,top:theme.shape.paddingInner}}}));const NavigationBarActions=Object(src_theme["a"])("ul",{name:"NavigationViewActions"})({alignItems:"flex-end",display:"flex",flexDirection:"column",listStyle:"none",margin:"0",padding:"0"});const NavigationBarAction=Object(src_theme["a"])("li",{name:"NavigationViewAction"})({marginBottom:8,display:"flex",flexDirection:"row-reverse",":last-of-type":{marginBottom:0},":hover:nth-of-type(1n) > ul":{visibility:"visible",opacity:1,width:"auto"}});const NavigationBarActionInner=Object(src_theme["a"])("div",{name:"NavigationViewActionInner"})((_ref2=>{let{theme}=_ref2;return{width:32,borderRadius:theme.shape.borderRadius,boxShadow:theme.shadows[2],backgroundColor:theme.palette.background.paper,display:"block"}}));const NavigationBarButton=Object(src_theme["a"])("button",{name:"NavigationViewButton"})((_ref3=>{let{theme,_active}=_ref3;return{color:theme.palette.primary.main,alignItems:"center",background:"none",borderRadius:_active?theme.shape.borderRadius:0,border:_active?`1px solid ${theme.palette.primary.main}`:"none",cursor:"pointer",display:"flex",justifyContent:"center",padding:8,position:"relative",width:32,height:32,":disabled":{color:"#ccc"}}}));const NavigationBarButtonIcon=Object(src_theme["a"])(Icons["a"],{name:"NavigationViewButtonIcon"})({width:16,height:16,flex:1,color:"inherit",lineHeight:0});const NavigationBarButtonBadge=Object(src_theme["a"])(Icons["a"],{name:"NavigationViewButtonBadgeIcon"})((_ref4=>{let{theme}=_ref4;return{background:"#fff",border:"1px solid #fff",borderRadius:"50%",bottom:4,color:theme.palette.secondary.main,height:11,position:"absolute",right:4,width:11}}));const canJumpBack=visualizations=>{if(visualizations&&visualizations.length<=1)return false;return visualizations.getCurrentIndex()>0};const doActionList=props=>{var _props$visualizations;const actions=new Array;const currentVisualization=(_props$visualizations=props.visualizations)===null||_props$visualizations===void 0?void 0:_props$visualizations.getCurrent();if(!(currentVisualization!==null&&currentVisualization!==void 0&&currentVisualization.isCustom()))actions.push(getZoomButtons(props));if(currentVisualization!==null&&currentVisualization!==void 0&&currentVisualization.isGeo())actions.push(getBearingButton(props));if(props.hasZAxes)actions.push(getZAxisButton(props));if(canJumpBack(props.visualizations))actions.push(getJumpBackButton(props));return actions};const NavigationComponent=props=>Object(jsx_runtime_["jsx"])(NavigationBar,{children:Object(jsx_runtime_["jsx"])(NavigationBarActions,{children:doActionList(props).map(((items,i)=>Object(jsx_runtime_["jsx"])(NavigationBarAction,{children:Object(jsx_runtime_["jsx"])(NavigationBarActionInner,{children:items.map(((item,index)=>Object(jsx_runtime_["jsxs"])(NavigationBarButton,{disabled:item.disabled,onClick:()=>item.clickCallback(),title:item.title,_active:item.active,children:[item.icon&&Object(jsx_runtime_["jsx"])(NavigationBarButtonIcon,{icon:item.icon,style:item.iconStyle}),item.badgeIcon&&Object(jsx_runtime_["jsx"])(NavigationBarButtonBadge,{icon:item.badgeIcon}),!item.icon&&item.label&&Object(jsx_runtime_["jsx"])("span",{children:item.label})]},index)))})},i)))})});var NavigationActions=__webpack_require__(76);const mapStateToProps=state=>{var _state$layers,_state$viewStates,_currentViewState$coo,_getFromVisualization;const currentVisualization=state.visualizations.getCurrent();const currentLayers=(_state$layers=state.layers)===null||_state$layers===void 0?void 0:_state$layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);const hasZAxes=currentLayers.someWithZPosition();const currentViewState=(_state$viewStates=state.viewStates)===null||_state$viewStates===void 0?void 0:_state$viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);const currentZ=(_currentViewState$coo=currentViewState.coordinates)===null||_currentViewState$coo===void 0?void 0:_currentViewState$coo.z;const currentBearing=currentViewState.bearing;const isVega=currentLayers.everyIsVega();return{isVega,isBearing:(_getFromVisualization=state.viewControllers.getFromVisualization(state.visualizations.getCurrent().id))===null||_getFromVisualization===void 0?void 0:_getFromVisualization.isRotateMode(),isPreparingToJump:state.jump.enabled,jumpStore:state.jump,visualizations:state.visualizations,currentZ,currentBearing,hasZAxes,currentViewState}};const mapDispatchToProps=dispatch=>({...Object(NavigationActions["a"])(dispatch)});const mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps,onJumpBackClick:dispatchProps.onJumpBackClick(stateProps.visualizations,stateProps.jumpStore),onZoomInClick:dispatchProps.onZoomInClick(stateProps.visualizations),onZoomOutClick:dispatchProps.onZoomOutClick(stateProps.visualizations),onLevelChange:dispatchProps.onLevelChange(stateProps.visualizations),onBearingModeClick:dispatchProps.onBearingModeClick(stateProps.visualizations)});var NavigationContainer=Object(external_react_redux_["connect"])(mapStateToProps,mapDispatchToProps,mergeProps,{context:Store["a"]})(NavigationComponent);var spatial_src=__webpack_require__(8);var dataset_src=__webpack_require__(6);var encoding_src=__webpack_require__(10);var projector_src=__webpack_require__(51);const tooltipActions=dispatch=>({onImageUpload:(layer,tooltip)=>info=>{if(!tooltip.row||!tooltip.rowsetId||!layer)return;const boundsColumnField=layer.encoding.bounds.field;const bounds=spatial_src["a"].fromPlain(tooltip.row[boundsColumnField]).extrudeKeepingWidth(info.width,info.height).toPolygon();const imageColumnField=layer.encoding.image.field;dispatch(Actions["a"].layer.imageUploaded({layerId:layer.id,rowsetId:tooltip.rowsetId,row:tooltip.row,rowDiff:{[imageColumnField]:info.base64,[boundsColumnField]:bounds}}))},onUnplaceClick:(visualizations,rowsetStore,projectorStore)=>tooltip=>{var _tooltip$row;const currentVisualization=visualizations.getCurrent();if(!currentVisualization||!tooltip.rowsetId)return;const rowset=rowsetStore.getRowset(tooltip.rowsetId);const rowDiff=new dataset_src["f"]({_x:null,_y:null,_z:null});const projector=projectorStore.getFromVisualization(currentVisualization.id);if(!projector)return;const rowProjector=new projector_src["c"](projector,rowset.scales);dispatch(Actions["a"].dataBrowser.rowUnplaced({visualizationId:currentVisualization.id,position:new encoding_src["h"]({}),data:rowset.data,row:new dataset_src["f"](rowProjector.unprojectRow({...tooltip.row,...rowDiff,_id:(_tooltip$row=tooltip.row)===null||_tooltip$row===void 0?void 0:_tooltip$row._id})),rowDiff:rowProjector.unprojectRow(rowDiff)}))},onJumpClick:visualizations=>(jumpAction,value)=>{const toVisualization=visualizations.getByName(jumpAction.visualization);if(!toVisualization)throw new Error("Target visualization should exists to jump");const fromVisualization=visualizations.getCurrent();if(!fromVisualization)throw new Error("Origin visualization should exists to jump");return dispatch(Actions["a"].visualization.rowJumpRequested({fromVisualization,toVisualization,field:{name:jumpAction.field,value},targetField:{name:jumpAction.targetField}}))},onZoomClick:visualization=>(zoom,coordinates)=>{dispatch(Actions["a"].dataBrowser.navigateToPosition({zoom,coordinates,visualizationId:visualization===null||visualization===void 0?void 0:visualization.id,duration:1500}))}});var TooltipActions=tooltipActions;let TooltipPlacement;(function(TooltipPlacement){TooltipPlacement["top"]="top";TooltipPlacement["bottom"]="bottom";TooltipPlacement["left"]="left";TooltipPlacement["right"]="right";TooltipPlacement["topRight"]="topRight";TooltipPlacement["topLeft"]="topLeft";TooltipPlacement["bottomRight"]="bottomRight";TooltipPlacement["bottomLeft"]="bottomLeft"})(TooltipPlacement||(TooltipPlacement={}));var react_=__webpack_require__(14);const TooltipView=Object(src_theme["a"])("div",{name:"TooltipView"})((_ref=>{let{theme,_visible,_fixed,_placement}=_ref;const tooltipVisible=Object(react_["css"])({opacity:.97});const tooltipFixed=Object(react_["css"])({pointerEvents:"inherit"});const baseTooltipVisible={border:`1px solid ${theme.palette.background.paper}`};const tooltipTop=Object(react_["css"])({...baseTooltipVisible,marginTop:-15,transform:"translate3d(-50%, -100%, 0)"});const tooltipBottom=Object(react_["css"])({...baseTooltipVisible,marginTop:15,transform:"translate3d(-50%, 0, 0)"});const tooltipLeft=Object(react_["css"])({...baseTooltipVisible,marginLeft:-15,transform:"translate3d(-100%, -50%, 0)"});const tooltipRight=Object(react_["css"])({...baseTooltipVisible,marginLeft:15,transform:"translate3d(0, -50%, 0)"});const tooltipTopRight=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(0, -100%, 0)"});const tooltipTopLeft=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(-100%, -100%, 0)"});const tooltipBottomRight=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(0, 0, 0)"});const tooltipBottomLeft=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(-100%, 0, 0)"});const tooltipUnplaced=Object(react_["css"])({visibility:"hidden"});const styles=[Object(react_["css"])({borderRadius:theme.shape.borderRadius,boxShadow:theme.shadows[2],fontSize:theme.typography.fontSize,display:"block",position:"absolute",transition:"opacity 0.14s ease-out",zIndex:999,pointerEvents:"none",opacity:0,visibility:"visible",backgroundColor:theme.palette.background.paper,maxWidth:500})];if(_visible){styles.push(tooltipVisible)}if(_fixed){styles.push(tooltipFixed)}if(_placement===TooltipPlacement.top){styles.push(tooltipTop)}if(_placement===TooltipPlacement.bottom){styles.push(tooltipBottom)}if(_placement===TooltipPlacement.left){styles.push(tooltipLeft)}if(_placement===TooltipPlacement.right){styles.push(tooltipRight)}if(_placement===TooltipPlacement.topRight){styles.push(tooltipTopRight)}if(_placement===TooltipPlacement.topLeft){styles.push(tooltipTopLeft)}if(_placement===TooltipPlacement.bottomRight){styles.push(tooltipBottomRight)}if(_placement===TooltipPlacement.bottomLeft){styles.push(tooltipBottomLeft)}if(!_placement){styles.push(tooltipUnplaced)}return styles}));const TooltipContent=Object(src_theme["a"])("div",{name:"TooltipContent"})((_ref2=>{let{theme}=_ref2;return{borderRadius:theme.shape.borderRadius,overflow:"hidden"}}));const TooltipTableView=Object(src_theme["a"])("table",{name:"TooltipTableView"})((_ref3=>{let{theme}=_ref3;return{borderCollapse:"collapse",borderRadius:theme.shape.borderRadius,overflow:"hidden"}}));const TooltipRow=Object(src_theme["a"])("tr",{name:"TooltipRow"})((_ref4=>{let{theme}=_ref4;return{padding:0,":nth-of-type(odd)":{backgroundColor:theme.palette.mode==="dark"?"#444":"#f3f3f3"}}}));const TooltipHeading=Object(src_theme["a"])("th",{name:"TooltipHeading"})((_ref5=>{let{theme}=_ref5;return{borderRight:`1px solid ${theme.palette.background.paper}`,padding:"0.75em",paddingRight:"1em",textAlign:"left",whiteSpace:"nowrap"}}));const TooltipField=Object(src_theme["a"])("td",{name:"TooltipField"})({padding:"0.75em"});const TooltipToolbarView=Object(src_theme["a"])("div",{name:"TooltipToolbarView"})({alignItems:"center",display:"flex",flexDirection:"row",justifyContent:"center",padding:"0.5rem",":nth-of-type(1n) button":{marginRight:"0.5rem",":last-child":{marginRight:0}}});class TooltipView_Tooltip extends external_react_["Component"]{constructor(){super(...arguments);this._ref=external_react_default.a.createRef()}hasCoordinates(){var _this$props$coordinat,_this$props$coordinat2;return!!((_this$props$coordinat=this.props.coordinates)!==null&&_this$props$coordinat!==void 0&&_this$props$coordinat.x&&(_this$props$coordinat2=this.props.coordinates)!==null&&_this$props$coordinat2!==void 0&&_this$props$coordinat2.y)}getPlacement(){const offset=10;if(!this._ref.current||!this.hasCoordinates())return;const tooltipWidth=this._ref.current.clientWidth;const tooltipHeight=this._ref.current.clientHeight;const parentWidth=this._ref.current.parentElement?this._ref.current.parentElement.clientWidth:window.innerWidth;const parentHeight=this._ref.current.parentElement?this._ref.current.parentElement.clientHeight:window.innerHeight;const hasTopSpace=this.props.coordinates.y>tooltipHeight+offset;const hasBottomSpace=parentHeight-this.props.coordinates.y>tooltipHeight+offset;const hasRightSpace=parentWidth-this.props.coordinates.x>tooltipWidth+offset;const hasLeftSpace=this.props.coordinates.x>tooltipWidth+offset;const hasMiddleTopSpace=this.props.coordinates.y>tooltipHeight/2;const hasMiddleBottomSpace=parentHeight-this.props.coordinates.y>tooltipHeight/2;const hasMiddleRightSpace=parentWidth-this.props.coordinates.x>tooltipWidth/2;const hasMiddleLeftSpace=this.props.coordinates.x>tooltipWidth/2;if(hasTopSpace&&hasMiddleRightSpace&&hasMiddleLeftSpace)return TooltipPlacement.top;if(hasBottomSpace&&hasMiddleRightSpace&&hasMiddleLeftSpace)return TooltipPlacement.bottom;if(hasLeftSpace&&hasMiddleTopSpace&&hasMiddleBottomSpace)return TooltipPlacement.left;if(hasRightSpace&&hasMiddleTopSpace&&hasMiddleBottomSpace)return TooltipPlacement.right;if(hasTopSpace&&hasRightSpace)return TooltipPlacement.topRight;if(hasTopSpace&&hasLeftSpace)return TooltipPlacement.topLeft;if(hasBottomSpace&&hasRightSpace)return TooltipPlacement.bottomRight;if(hasBottomSpace&&hasLeftSpace)return TooltipPlacement.bottomLeft;if(hasBottomSpace)return TooltipPlacement.bottom;if(hasLeftSpace)return TooltipPlacement.left;if(hasRightSpace)return TooltipPlacement.right;return TooltipPlacement.top}setPlacement(){const tooltip=this._ref.current;if(!tooltip)return;this._ref.current.setAttribute("data-placement",this.getPlacement())}componentDidUpdate(){if(!this.hasCoordinates())return;return this.setPlacement()}render(){var _this$props$coordinat3,_this$props$coordinat4;const placement=this.getPlacement();return Object(jsx_runtime_["jsx"])(TooltipView,{id:"__hopara__tooltip__",ref:this._ref,_visible:this.props.isVisible,_fixed:this.props.isFixed,_placement:this.props.children?placement:undefined,style:{display:this.hasCoordinates(),left:(_this$props$coordinat3=this.props.coordinates)===null||_this$props$coordinat3===void 0?void 0:_this$props$coordinat3.x,top:(_this$props$coordinat4=this.props.coordinates)===null||_this$props$coordinat4===void 0?void 0:_this$props$coordinat4.y},children:this.props.children&&Object(jsx_runtime_["jsx"])(TooltipContent,{children:this.props.children})})}}var material_=__webpack_require__(12);var fp_=__webpack_require__(3);var icons_material_=__webpack_require__(29);class TooltipTable_TooltipTable extends external_react_default.a.PureComponent{renderUnplaceAction(key,line){return Object(jsx_runtime_["jsx"])(TooltipRow,{children:Object(jsx_runtime_["jsx"])(TooltipField,{style:{textAlign:"center"},colSpan:2,children:Object(jsx_runtime_["jsxs"])(material_["Button"],{color:"secondary",variant:"outlined",onClick:line["onUnplaceClick"],children:[Object(jsx_runtime_["jsx"])(icons_material_["DeleteOutline"],{})," Unplace"]})})},key)}renderJumpAction(key,line){return Object(jsx_runtime_["jsx"])(TooltipRow,{children:Object(jsx_runtime_["jsx"])(TooltipField,{colSpan:2,children:Object(jsx_runtime_["jsxs"])(material_["Link"],{href:"#",target:line.target,underline:"none",onClick:e=>{e.preventDefault();e.stopPropagation();return line.onClick(e)},sx:{display:"flex",alignItems:"center"},children:[line.title,line.icon!==null&&Object(jsx_runtime_["jsx"])(icons_material_["NavigateNextOutlined"],{})]})})},key)}renderLinkLine(key,line){return Object(jsx_runtime_["jsx"])(TooltipRow,{children:Object(jsx_runtime_["jsx"])(TooltipField,{colSpan:2,children:Object(jsx_runtime_["jsxs"])(material_["Link"],{href:line.href,target:line.target,underline:"none",sx:{display:"flex",alignItems:"center"},children:[line.title,Object(jsx_runtime_["jsx"])(icons_material_["NavigateNextOutlined"],{})]})})},key)}renderTableLine(key,line){return Object(jsx_runtime_["jsxs"])(TooltipRow,{children:[Object(jsx_runtime_["jsx"])(TooltipHeading,{children:line.title}),Object(jsx_runtime_["jsx"])(TooltipField,{children:line.value})]},key)}render(){const lineKeys=Object.keys(this.props.lines);if(!lineKeys.length)return null;return Object(jsx_runtime_["jsx"])(TooltipTableView,{children:Object(jsx_runtime_["jsx"])("tbody",{children:lineKeys.map((key=>{const line=this.props.lines[key];if(line["onUnplaceClick"])return this.renderUnplaceAction(key,line);else if(line["onClick"])return this.renderJumpAction(key,line);else if(line["href"])return this.renderLinkLine(key,line);else if(line["title"]&&!Object(fp_["isNil"])(line["value"]))return this.renderTableLine(key,line);return null}))})})}}var image_src=__webpack_require__(66);var Toast=__webpack_require__(27);const MAX_TEXTURE_SIZE=4096;const MAX_FILE_SIZE=2*1024*1024;function niceBytes(x){const units=["bytes","KB","MB","GB","TB","PB","EB","ZB","YB"];let l=0;let n=parseInt(x,10)||0;while(n>=1024&&++l){n=n/1024}return n.toFixed(n<10&&l>0?1:0)+" "+units[l]}const TooltipToolbar=props=>{const inputFile=Object(external_react_["useRef"])(null);return Object(jsx_runtime_["jsxs"])(TooltipToolbarView,{children:[props.onImageUpload&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])("input",{type:"file",id:"file",accept:image_src["b"].join(", "),ref:inputFile,style:{display:"none"},onChange:event=>{var _event$target;event.stopPropagation();event.preventDefault();const file=(event===null||event===void 0?void 0:(_event$target=event.target)===null||_event$target===void 0?void 0:_event$target.files)&&event.target.files[0];if(!file)return;if(file.size>MAX_FILE_SIZE){Object(Toast["a"])(`Image file size is too big. Max file size is ${niceBytes(MAX_FILE_SIZE)}`);return}const reader=new FileReader;reader.onload=async function(){const result=this.result;if(image_src["b"].every((mimeType=>!(result!==null&&result!==void 0&&result.includes(mimeType))))){Object(Toast["a"])("Invalid type detected. Allowed types: jpg, png and svg");return}return Object(image_src["a"])(result,{maxWidth:MAX_TEXTURE_SIZE,maxHeight:MAX_TEXTURE_SIZE}).then((imageMeta=>props.onImageUpload&&props.onImageUpload(imageMeta))).catch((err=>{console.log(err);Object(Toast["a"])(err.message)}))};reader.readAsDataURL(file)}}),Object(jsx_runtime_["jsxs"])(material_["Button"],{color:"primary",variant:"outlined",onClick:()=>{var _inputFile$current;return inputFile===null||inputFile===void 0?void 0:(_inputFile$current=inputFile.current)===null||_inputFile$current===void 0?void 0:_inputFile$current.click()},children:[Object(jsx_runtime_["jsx"])(icons_material_["UploadOutlined"],{})," Replace Image"]})]}),Object(jsx_runtime_["jsxs"])(material_["Button"],{color:"secondary",variant:"outlined",onClick:props.onUnplaceClick,children:[Object(jsx_runtime_["jsx"])(icons_material_["DeleteOutline"],{})," Unplace"]})]})};var view_TooltipToolbar=TooltipToolbar;var external_query_string_=__webpack_require__(43);var external_query_string_default=__webpack_require__.n(external_query_string_);const getLocation=href=>{const match=href.match(/^((https|http)?:\/\/(([^:/?#]*)(?::([0-9]+))?))?([/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/);return match&&{origin:match[1]||"",protocol:match[2]||"",host:match[3]||"",hostname:match[4]||"",port:match[5]||"",pathname:match[6]||"",search:match[7]||"",hash:match[8]||""}};const replaceValue=(value,row)=>{if(value.startsWith(":")){var _row$columnName;const columnName=value.replace(":","");return(_row$columnName=row[columnName])!==null&&_row$columnName!==void 0?_row$columnName:""}return value};const replacePathWithRowValues=(path,row)=>{const splittedPath=path.split("/");if(!splittedPath.length)return"";const replecedPath=splittedPath.map((value=>replaceValue(value,row)));return replecedPath.join("/")};const replaceSearchWithRowValues=(search,row)=>{if(!search)return"";const parsedSearch=external_query_string_default.a.parse(search);if(Object(fp_["isEmpty"])(parsedSearch))return"";const searchWithReplacedKeys=Object(fp_["mapKeys"])((k=>replaceValue(k,row)),parsedSearch);const searchWithReplecedValues=Object(fp_["mapValues"])((v=>replaceValue(v,row)),searchWithReplacedKeys);const searchStringifyed=external_query_string_default.a.stringify(searchWithReplecedValues);return searchStringifyed?`?${searchStringifyed}`:""};class URLStringTemplate{constructor(href){this.origin="";this.protocol="";this.host="";this.hostname="";this.port="";this.pathname="";this.search="";this.hash="";Object.assign(this,href?getLocation(href):undefined)}clone(){const cloned=new URLStringTemplate;Object.assign(cloned,this);return cloned}getValue(){return`${this.origin}${this.pathname}${this.search}${this.hash}`}getCompiledValue(row){const cloned=this.clone();cloned.pathname=replacePathWithRowValues(this.pathname,row);cloned.search=replaceSearchWithRowValues(this.search,row);return cloned.getValue()}}const createJumpLine=(row,title,action,onJumpClick)=>{const value=row?row[action.field]:undefined;if(Object(fp_["isNil"])(value))return null;return{title,onClick:()=>{onJumpClick(action,value)}}};const createLinkLine=(row,title,action)=>{var _action$target;const urlStringTemple=new URLStringTemplate(action.href);const formattedHref=urlStringTemple.getCompiledValue(row);return{title,href:formattedHref,target:(_action$target=action.target)!==null&&_action$target!==void 0?_action$target:"_top"}};const createZoomLine=(row,title,action,onZoomClick)=>({title,onClick:()=>{var _action$fixed;onZoomClick((_action$fixed=action.fixed)===null||_action$fixed===void 0?void 0:_action$fixed.value,new spatial_src["c"]({x:row._x,y:row._y,z:row._z}))}});const createActionLine=(row,actionItem,onJumpClick,onZoomClick)=>{var _actionItem$visible,_actionItem$visible$c;const testField=(_actionItem$visible=actionItem.visible)===null||_actionItem$visible===void 0?void 0:(_actionItem$visible$c=_actionItem$visible.condition)===null||_actionItem$visible$c===void 0?void 0:_actionItem$visible$c.test;if(testField&&Object(fp_["isNil"])(row[testField]))return null;if(actionItem.jump)return createJumpLine(row,actionItem.title,actionItem.jump,onJumpClick);if(actionItem.link)return createLinkLine(row,actionItem.title,actionItem.link);if(actionItem.zoom)return createZoomLine(row,actionItem.title,actionItem.zoom,onZoomClick);return null};const getRowColumn=(columns,name)=>{if(columns.has(name)){return columns.get(name)}return new dataset_src["a"]({name})};const createLine=(column,value,title)=>({title:title!==null&&title!==void 0?title:column.getLabel(),value});const createFieldLine=(row,columns,item)=>{const textEncoding=item.value.encoding.text;const column=getRowColumn(columns,textEncoding.field);return createLine(column,textEncoding.getValue(row,column===null||column===void 0?void 0:column.getType()),item.title)};const createTooltipItem=column=>{const textEncoding=new encoding_src["j"]({field:column.getName()});return{title:column.getLabel(),value:{encoding:{text:textEncoding}}}};const createTooltipFields=columns=>columns.map((column=>createTooltipItem(column)));const getTooltipFields=(table,columns)=>{if(src["a"].isDebugging()){return createTooltipFields(columns.getPrintables())}if(table===true){const tooltipColumns=columns.getPublics().getPrintables();return createTooltipFields(new dataset_src["c"](...tooltipColumns))}else if(Array.isArray(table)){return table}return[]};const getLines=(row,columns,tooltipSpec,onJumpClick,onZoomClick)=>{var _tooltipSpec$actions$,_tooltipSpec$actions;if(!tooltipSpec)return[];const tooltipFields=getTooltipFields(tooltipSpec.table,columns);const tooltipFieldLines=tooltipFields.map((field=>createFieldLine(row,columns,field)));const tooltipActionLines=(_tooltipSpec$actions$=tooltipSpec===null||tooltipSpec===void 0?void 0:(_tooltipSpec$actions=tooltipSpec.actions)===null||_tooltipSpec$actions===void 0?void 0:_tooltipSpec$actions.map((action=>createActionLine(row,action,onJumpClick,onZoomClick))))!==null&&_tooltipSpec$actions$!==void 0?_tooltipSpec$actions$:[];return[...tooltipFieldLines,...tooltipActionLines].filter((line=>!!line))};class TooltipComponent_TooltipComponent extends PureComponent["a"]{renderToolbar(){var _this$props$tooltip;if(!((_this$props$tooltip=this.props.tooltip)!==null&&_this$props$tooltip!==void 0&&_this$props$tooltip.fixed)||!this.props.isEditing)return;return Object(jsx_runtime_["jsx"])(view_TooltipToolbar,{...this.props,onImageUpload:this.props.canEditImage?this.props.onImageUpload:undefined,onUnplaceClick:()=>this.props.onUnplaceClick(this.props.tooltip)})}renderTable(){const lines=getLines(this.props.tooltip.row,this.props.columns,this.props.layer.tooltip,this.props.onJumpClick,this.props.onZoomClick);if(this.props.isEditing){lines.push({title:"Unplace row",onUnplaceClick:()=>this.props.onUnplaceClick(this.props.tooltip),icon:null})}if(!lines.length)return null;return Object(jsx_runtime_["jsx"])(TooltipTable_TooltipTable,{...this.props,lines})}getTooltipContent(){var _this$props$layer,_this$props$tooltip2;if((_this$props$layer=this.props.layer)!==null&&_this$props$layer!==void 0&&_this$props$layer.isImage()&&this.props.layer.editable&&this.props.isEditing){return this.renderToolbar()}else if((_this$props$tooltip2=this.props.tooltip)!==null&&_this$props$tooltip2!==void 0&&_this$props$tooltip2.row){return this.renderTable()}return null}render(){var _this$props$tooltip3,_this$props$tooltip4,_this$props$tooltip5;return Object(jsx_runtime_["jsx"])(TooltipView_Tooltip,{coordinates:(_this$props$tooltip3=this.props.tooltip)===null||_this$props$tooltip3===void 0?void 0:_this$props$tooltip3.getCoordinates(),isFixed:(_this$props$tooltip4=this.props.tooltip)===null||_this$props$tooltip4===void 0?void 0:_this$props$tooltip4.isFixed(),isVisible:(_this$props$tooltip5=this.props.tooltip)===null||_this$props$tooltip5===void 0?void 0:_this$props$tooltip5.visible,children:this.getTooltipContent()})}}var tooltip_TooltipComponent=TooltipComponent_TooltipComponent;function getLayer(state,currentVisualization){var _state$tooltip;if(state.layers&&(_state$tooltip=state.tooltip)!==null&&_state$tooltip!==void 0&&_state$tooltip.layerId){return state.layers.getFromVisualization(currentVisualization.id).getById(state.tooltip.layerId)}return undefined}const TooltipContainer_mapStateToProps=state=>{var _queries$findQuery;const currentVisualization=state.visualizations.getCurrent();const layer=getLayer(state,currentVisualization);const columns=(_queries$findQuery=state.queryStore.queries.findQuery(layer===null||layer===void 0?void 0:layer.getQueryKey()))===null||_queries$findQuery===void 0?void 0:_queries$findQuery.getColumns();const canEditImage=!!(layer!==null&&layer!==void 0&&layer.isType("image"));return{layer,columns,visualizations:state.visualizations,rowsetStore:state.rowsetStore,projectorStore:state.projectorStore,tooltip:state.tooltip,currentVisualization:state.visualizations.getCurrent(),isEditing:state.appStore.isEditing&&(layer===null||layer===void 0?void 0:layer.editable),canEditImage}};const TooltipContainer_mapDispatchToProps=dispatch=>TooltipActions(dispatch);const TooltipContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps,onImageUpload:dispatchProps.onImageUpload(stateProps.layer,stateProps.tooltip),onUnplaceClick:dispatchProps.onUnplaceClick(stateProps.visualizations,stateProps.rowsetStore,stateProps.projectorStore),onJumpClick:dispatchProps.onJumpClick(stateProps.visualizations),onZoomClick:dispatchProps.onZoomClick(stateProps.currentVisualization)});var TooltipContainer=Object(external_react_redux_["connect"])(TooltipContainer_mapStateToProps,TooltipContainer_mapDispatchToProps,TooltipContainer_mergeProps,{context:Store["a"]})(tooltip_TooltipComponent);var typed_=__webpack_require__(118);var typed_default=__webpack_require__.n(typed_);var external_react_map_gl_=__webpack_require__(119);var external_react_map_gl_default=__webpack_require__.n(external_react_map_gl_);var external_maplibre_gl_=__webpack_require__(120);var external_maplibre_gl_default=__webpack_require__.n(external_maplibre_gl_);var layers_=__webpack_require__(15);var engine_=__webpack_require__(94);let keyFramesCollection={};let lastRenderTime={};const getUniformsFromKeyframes=keyFramesList=>{const newUniformValues={};keyFramesList.forEach((keyFrames=>{const startValues=keyFrames.getStartData();const endValues=keyFrames.getEndData();for(const key in startValues){const startValue=startValues[key];const endValue=endValues[key];newUniformValues[key]=startValue+keyFrames.factor*(endValue-startValue)}}));return newUniformValues};class AnimationEngine_AnimationEngine{constructor(params){var _params$fps;this.layerId=void 0;this.timeline=void 0;this.animationData=void 0;this.redrawFn=void 0;this.fps=void 0;this.layerId=params.layerId;this.timeline=params.timeline;this.animationData=params.animationDataList;this.redrawFn=params.redrawFn;this.fps=(_params$fps=params.fps)!==null&&_params$fps!==void 0?_params$fps:30}createKeyFrames(){var _this$animationData;if(!((_this$animationData=this.animationData)!==null&&_this$animationData!==void 0&&_this$animationData.length))return[];const keyFramesList=[];this.animationData.forEach((animationData=>{var _animationData$channe;if(!animationData)return new engine_["KeyFrames"]([]);const sanitizedChannel=(_animationData$channe=animationData.channel)!==null&&_animationData$channe!==void 0?_animationData$channe:{};if(sanitizedChannel.repeat===-1||!sanitizedChannel.repeat){sanitizedChannel.repeat=Number.POSITIVE_INFINITY}if(!sanitizedChannel.duration){sanitizedChannel.duration=5e3}const channel=this.timeline.addChannel(animationData.channel);const frames=new Array;Object.entries(animationData.keyFrames).forEach((_ref=>{let[timePercent,values]=_ref;const time=animationData.channel.duration*parseInt(timePercent)/100;frames.push([time,values])}));const keyFrames=new engine_["KeyFrames"](frames);this.timeline.attachAnimation(keyFrames,channel);keyFramesList.push(keyFrames)}));return keyFramesList}getUniforms(){if(!this.layerId){return{}}if(!keyFramesCollection[this.layerId]){keyFramesCollection[this.layerId]=this.createKeyFrames()}return getUniformsFromKeyframes(keyFramesCollection[this.layerId])}render(){if(!this.layerId){return}if(this.timeline.animations.size===0){keyFramesCollection={};lastRenderTime={}}const timeFraction=1e3/this.fps;if(!lastRenderTime[this.layerId]||lastRenderTime[this.layerId]+timeFraction<=this.timeline.time){lastRenderTime[this.layerId]=this.timeline.time;setTimeout((()=>{window.requestAnimationFrame((()=>{this.redrawFn()}))}),timeFraction)}}}const UNIT={common:0,meters:1,pixels:2};class AnimatedCircleLayer_AnimatedCircleLayer extends layers_["ScatterplotLayer"]{draw(opts){const animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:opts.context.timeline,animationDataList:this.props.animations,redrawFn:()=>this.setNeedsRedraw()});const uniformValues=animationEngine.getUniforms();const{radiusUnits,radiusScale,radiusMinPixels,radiusMaxPixels,stroked,filled,billboard,antialiasing,lineWidthUnits,lineWidthScale,lineWidthMinPixels,lineWidthMaxPixels}=this.props;this.state.model.setUniforms(opts.uniforms).setUniforms({stroked:stroked?1:0,filled,billboard,antialiasing,radiusUnits:UNIT[radiusUnits],radiusScale,radiusMinPixels,radiusMaxPixels,lineWidthUnits:UNIT[lineWidthUnits],lineWidthScale,lineWidthMinPixels,lineWidthMaxPixels,...uniformValues}).draw();animationEngine.render()}}AnimatedCircleLayer_AnimatedCircleLayer.layerName="AnimatedCircleLayer";var core_=__webpack_require__(34);class AnimatedLayerFactory_AnimatedCompositeLayer extends core_["CompositeLayer"]{constructor(props){super(props)}renderLayers(){return this.props.layers}}AnimatedLayerFactory_AnimatedCompositeLayer.layerName="AnimatedCompositeLayer";function attributeReplacement(keyFrames,replacements,originalProps){return Object.fromEntries(Object.entries(keyFrames).map((_ref=>{let[percent,keyframe]=_ref;Object.entries(replacements).forEach((_ref2=>{let[key,fn]=_ref2;keyframe[key]=fn(keyframe,originalProps)}));return[percent,Object(fp_["omitBy"])(fp_["isUndefined"],keyframe)]})))}class AnimatedLayerFactory_AnimatedLayerFactory{constructor(StaticClass,AnimatedClass){let replacements=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};this.StaticClass=StaticClass;this.AnimatedClass=AnimatedClass;this.replacements=replacements}create(encoding,deckProps,callbacks){const animations=this.getAnimations(encoding);const layers=this.createLayers(animations,deckProps);return new AnimatedLayerFactory_AnimatedCompositeLayer({id:deckProps.id,layerId:deckProps.layerId,layers,pickable:deckProps.pickable,...callbacks})}createAnimation(encoding){var _encoding$animation,_encoding$animation2,_encoding$animation3;return{field:(_encoding$animation=encoding.animation)===null||_encoding$animation===void 0?void 0:_encoding$animation.field,keyFrames:attributeReplacement((_encoding$animation2=encoding.animation)===null||_encoding$animation2===void 0?void 0:_encoding$animation2.keyFrames,this.replacements,encoding),channel:(_encoding$animation3=encoding.animation)===null||_encoding$animation3===void 0?void 0:_encoding$animation3.channel}}static hasAnimations(encodings){var _encodings$size,_encodings$color;return!!((_encodings$size=encodings.size)!==null&&_encodings$size!==void 0&&_encodings$size.animation||(_encodings$color=encodings.color)!==null&&_encodings$color!==void 0&&_encodings$color.animation)}getAnimations(encodings){var _encodings$size2,_encodings$color2;const animations=[];if((_encodings$size2=encodings.size)!==null&&_encodings$size2!==void 0&&_encodings$size2.animation){animations.push(this.createAnimation(encodings.size))}if((_encodings$color2=encodings.color)!==null&&_encodings$color2!==void 0&&_encodings$color2.animation){animations.push(this.createAnimation(encodings.color))}return animations}createLayers(allAnimations,deckProps){const animatedData=[];const notAnimatedData=[];deckProps.data.forEach((row=>{var _allAnimations$;const field=(_allAnimations$=allAnimations[0])===null||_allAnimations$===void 0?void 0:_allAnimations$.field;if(!field||row[field]){animatedData.push(row)}else{notAnimatedData.push(row)}}));const animatedProps=Object(fp_["omitBy"])(fp_["isUndefined"],{...deckProps,id:`${deckProps.id}-animated`,data:animatedData});const notAnimatedProps=Object(fp_["omitBy"])(fp_["isUndefined"],{...deckProps,id:`${deckProps.id}-not-animated`,data:notAnimatedData});return[new this.StaticClass(notAnimatedProps),new this.AnimatedClass({...animatedProps,animations:allAnimations})]}}class RenderController{constructor(){this._shouldRender=true;this.params={}}shouldRender(){return this._shouldRender}update(params){if(!params.cacheKey){this._shouldRender=false;return}this._shouldRender=params.cacheKey!==this.params.cacheKey||this.params.selectedRow!==params.selectedRow||this.params.lastModified!==params.lastModified;this.params=params}}class DataComparator_DataComparator{constructor(){this.renderControllers={}}getRenderController(layerId){if(!this.renderControllers[layerId]){this.renderControllers[layerId]=new RenderController}return this.renderControllers[layerId]}isEqual(layerId,params){const controller=this.getRenderController(layerId);controller.update(params);if(params.encoding&&AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(params.encoding))return false;return!controller.shouldRender()}}const HIGHLIGHT_COLOR=[0,0,0,77];class BaseFactory_BaseFactory{constructor(){this.dataComparator=new DataComparator_DataComparator}getDeckProps(factoryProps,layerProps){var _factoryProps$dataCom,_this$getRows,_factoryProps$visible;const dataComparator=(_factoryProps$dataCom=factoryProps.dataComparator)!==null&&_factoryProps$dataCom!==void 0?_factoryProps$dataCom:this.dataComparator;const comparisonParams={cacheKey:(_this$getRows=this.getRows(factoryProps))===null||_this$getRows===void 0?void 0:_this$getRows.etag,lastModified:factoryProps.lastModified,selectedRow:factoryProps.selectedRow,encoding:factoryProps.encoding};const validProps={...layerProps,layerId:factoryProps.layerId,visible:(_factoryProps$visible=factoryProps.visible)===null||_factoryProps$visible===void 0?void 0:_factoryProps$visible.value,editable:factoryProps.editable,dataComparator:()=>dataComparator.isEqual(factoryProps.id,comparisonParams),stroked:!!layerProps.stroked,...factoryProps.autoHighlight&&{highlightColor:HIGHLIGHT_COLOR,autoHighlight:true}};validProps.colorEncoding=factoryProps.encoding.getColor();return Object(fp_["omitBy"])(fp_["isUndefined"],validProps)}getColorUpdateTrigger(color,visibleRows){const triggers=new Array;triggers.push(color===null||color===void 0?void 0:color.createdTimestamp,visibleRows===null||visibleRows===void 0?void 0:visibleRows.etag);return triggers}getPositionUpdateTrigger(position,editing){const triggers=[Math.random()];if(editing){triggers.push((()=>({})))}return triggers}getSizeUpdateTrigger(size){const triggers=new Array;triggers.push(size===null||size===void 0?void 0:size.createdTimestamp);return triggers}getIconUpdateTrigger(icon){const triggers=new Array;triggers.push(icon===null||icon===void 0?void 0:icon.createdTimestamp);return triggers}getPositionAccessor(props){const xColumn="_x";const yColumn="_y";return row=>{var _props$selectedRow,_props$selectedRow$up,_props$selectedRow2,_props$selectedRow2$u,_props$selectedRow3;const tempRow=props.selectedRow&&((_props$selectedRow=props.selectedRow)===null||_props$selectedRow===void 0?void 0:(_props$selectedRow$up=_props$selectedRow.updatingRow)===null||_props$selectedRow$up===void 0?void 0:_props$selectedRow$up._id)!==undefined&&((_props$selectedRow2=props.selectedRow)===null||_props$selectedRow2===void 0?void 0:(_props$selectedRow2$u=_props$selectedRow2.updatingRow)===null||_props$selectedRow2$u===void 0?void 0:_props$selectedRow2$u._id)===row._id?(_props$selectedRow3=props.selectedRow)===null||_props$selectedRow3===void 0?void 0:_props$selectedRow3.updatingRow:undefined;const rowToPlace=tempRow?tempRow:row;return[Number(rowToPlace[xColumn]),Number(rowToPlace[yColumn])]}}getRows(props){var _props$visible,_props$visible$condit,_props$visible2;if(!props.rows){return new dataset_src["g"]}let rows=props.rows;const conditionField=(_props$visible=props.visible)===null||_props$visible===void 0?void 0:(_props$visible$condit=_props$visible.condition)===null||_props$visible$condit===void 0?void 0:_props$visible$condit.test;if(conditionField){rows=rows.filter((row=>row[conditionField]))}if(!props.transform||!props.transform.cluster||!((_props$visible2=props.visible)!==null&&_props$visible2!==void 0&&_props$visible2.value))return rows;return props.transform.cluster.apply(rows,props.columns,props.zoom)}getColorAccessor(columns,color,rows,visibleRows,rowTranslator){return Object(encoding_src["l"])(color,rows||new dataset_src["g"],visibleRows||new dataset_src["g"],columns,rowTranslator)}getColorRange(color){return Object(encoding_src["o"])(color.scale.scheme||color.scale.range,color.scale.reverse,color.opacity).colors}getSizeAccessor(props){return Object(encoding_src["p"])(props)}getTranslatedRow(rowTranslator,originalObject){if(!rowTranslator){return{row:originalObject}}return{row:rowTranslator.translate(originalObject)}}getInfoCoordinate(coordinate){if(!coordinate||!coordinate[0]||!coordinate[1])return;return new spatial_src["c"]({x:coordinate[0],y:coordinate[1]})}getRowIndex(rows,row){var _rows$findIndex;if(!rows)return;const rowIndex=(_rows$findIndex=rows.findIndex((r=>r===row)))!==null&&_rows$findIndex!==void 0?_rows$findIndex:-1;return rowIndex>=0?rowIndex:undefined}isGeoJSON(info){return info.layer instanceof layers_["GeoJsonLayer"]}getCallbackInfo(info,props,editHandler){var _info$layer,_info$layer$props,_this$getRowIndex;if(!(info!==null&&info!==void 0&&(_info$layer=info.layer)!==null&&_info$layer!==void 0&&(_info$layer$props=_info$layer.props)!==null&&_info$layer$props!==void 0&&_info$layer$props.pickable))return;const rowIndex=this.isGeoJSON(info)?info.index:(_this$getRowIndex=this.getRowIndex(props.rows,info.object))!==null&&_this$getRowIndex!==void 0?_this$getRowIndex:info.index;const row=props.rows?props.rows[rowIndex]:info.object;const coordinates=this.getInfoCoordinate(info.coordinate);const updatedData=info.updatedData?info.updatedData:{_x:coordinates===null||coordinates===void 0?void 0:coordinates.x,_y:coordinates===null||coordinates===void 0?void 0:coordinates.y};return{row,rowIndex,rowsetId:props.rowsetId,layerId:props.layerId,updatedData:editHandler?updatedData:undefined,coordinates,pixel:this.getInfoCoordinate(info.pixel),editable:props.editable}}getDeckLayerCallbacks(props){const callbacks=props.layerCallbacks;return{onHover:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onHover)&&callbacks.onHover(this.getCallbackInfo(info,props)),onClick:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onClick)&&callbacks.onClick(this.getCallbackInfo(info,props)),onDragStart:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onDragStart)&&callbacks.onDragStart(this.getCallbackInfo(info,props,true)),onDrag:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onDrag)&&callbacks.onDrag(this.getCallbackInfo(info,props,true)),onDragEnd:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onDragEnd)&&callbacks.onDragEnd(this.getCallbackInfo(info,props,true)),onEdit:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onEdit)&&callbacks.onEdit(this.getCallbackInfo(info,props,true)),onEditEnd:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onEditEnd)&&callbacks.onEditEnd(this.getCallbackInfo(info,props,true))}}}class StrokableFactory_StrokableFactory extends BaseFactory_BaseFactory{getColorStrokeProps(color,rows,visibleRows,columns,rowTranslator){if(!color){return{}}const colorAccessor=super.getColorAccessor(columns,color,rows,visibleRows,rowTranslator);return{stroked:!!colorAccessor,getLineColor:colorAccessor}}getStrokeSizeProps(visibleRows,columns,size,rowTranslator){if(!size){return{}}return{getLineWidth:super.getSizeAccessor({encoding:size,visibleRows,columns,rowTranslator}),lineWidthUnits:size===null||size===void 0?void 0:size.getUnits(),stroked:true}}}const DIAMETER_TO_RADIUS=.5;const animatedLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["ScatterplotLayer"],AnimatedCircleLayer_AnimatedCircleLayer,{radiusScale:kProps=>kProps.scale,radiusMinPixels:(kProps,props)=>props.getMinPixels&&props.getMinPixels(kProps.scale*DIAMETER_TO_RADIUS),radiusMaxPixels:(kProps,props)=>props.getMaxPixels&&props.getMaxPixels(kProps.scale*DIAMETER_TO_RADIUS)});class CircleFactory_CircleFactory extends StrokableFactory_StrokableFactory{getStrokeProps(props){var _props$encoding;const sizeProps=this.getStrokeSizeProps(props.visibleRows,props.columns,props.encoding.strokeSize);const colorProps=this.getColorStrokeProps((_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.strokeColor,props.rows,props.visibleRows,props.columns);if(sizeProps.stroked&&colorProps.stroked){return{...sizeProps,...colorProps,stroked:true}}}create(props){var _props$encoding2,_props$encoding3,_props$encoding4,_props$encoding4$size,_props$encoding5,_props$encoding5$size,_props$encoding6,_props$encoding6$size;const deckProps=super.getDeckProps(props,{id:props.id,data:super.getRows(props),getFillColor:super.getColorAccessor(props.columns,(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.color,props.rows,props.visibleRows),getPosition:super.getPositionAccessor(props),getRadius:super.getSizeAccessor({encoding:(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.size,factor:DIAMETER_TO_RADIUS,visibleRows:props.visibleRows,columns:props.columns}),updateTriggers:{getFillColor:Math.random(),getRadius:Math.random(),getPosition:Math.random()},radiusUnits:(_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$size=_props$encoding4.size)===null||_props$encoding4$size===void 0?void 0:_props$encoding4$size.getUnits(),...this.getStrokeProps(props),pickable:props.pickable,radiusMaxPixels:(_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:(_props$encoding5$size=_props$encoding5.size)===null||_props$encoding5$size===void 0?void 0:_props$encoding5$size.getMaxPixels(DIAMETER_TO_RADIUS),radiusMinPixels:(_props$encoding6=props.encoding)===null||_props$encoding6===void 0?void 0:(_props$encoding6$size=_props$encoding6.size)===null||_props$encoding6$size===void 0?void 0:_props$encoding6$size.getMinPixels(DIAMETER_TO_RADIUS),...super.getDeckLayerCallbacks(props)});if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return animatedLayerFactory.create(props.encoding,deckProps,super.getDeckLayerCallbacks(props))}else{return new layers_["ScatterplotLayer"](deckProps)}}}var aggregation_layers_=__webpack_require__(121);const getWeight=encoding=>row=>{if(encoding&&encoding.intensity.field){if(Object(fp_["isNil"])(row[encoding.intensity.field])){return 1}return Math.abs(parseFloat(row[encoding.intensity.field]))}return 1};const previousRows={};class HeatmapFactory_HeatmapFactory extends BaseFactory_BaseFactory{getWeightUpdateTrigger(heatmap){const triggers=new Array;triggers.push(heatmap===null||heatmap===void 0?void 0:heatmap.createdTimestamp);return triggers}create(props){var _props$encoding,_props$encoding2,_props$encoding$heatm,_props$encoding$heatm2;let rows;if(!(props!==null&&props!==void 0&&props.rows)){rows=previousRows[props.layerId]}else{previousRows[props.layerId]=props===null||props===void 0?void 0:props.rows;rows=props===null||props===void 0?void 0:props.rows}const deckProps=super.getDeckProps(props,{id:props.id,data:rows,colorRange:super.getColorRange((_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.color),getPosition:super.getPositionAccessor(props),getWeight:getWeight((_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.heatmap),weightsTextureSize:src["b"].hasParam("heatmapTextureSize")?src["b"].getParam("heatmapTextureSize"):512,debounceTimeout:src["b"].hasParam("heatmapDebounce")?src["b"].getParam("heatmapDebounce"):0,intensity:(_props$encoding$heatm=props.encoding.heatmap)===null||_props$encoding$heatm===void 0?void 0:_props$encoding$heatm.intensity.multiplier,radiusPixels:(_props$encoding$heatm2=props.encoding.heatmap)===null||_props$encoding$heatm2===void 0?void 0:_props$encoding$heatm2.radius,updateTriggers:{getWeight:this.getWeightUpdateTrigger(props.encoding.heatmap)},...super.getDeckLayerCallbacks(props)});return new aggregation_layers_["HeatmapLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],deckProps))}}var config_src=__webpack_require__(17);const CustomIcons=["apple","centrifuge","deflection","desktop","electric","image-placeholder","incubator","ip-address","laptop","linux","load-balancer","macaddress","machine","marker","microchip","mobile","person","pressure","refrigerator","server","stove","tag","temperature-and-vibration","wifi-excellent","wifi-fair","wifi-good","wifi-off","wifi-weak","windows"];const MaterialIcons=["10k","10mp","11mp","123","12mp","13mp","14mp","15mp","16mp","17mp","18-up-rating","18mp","19mp","1k-plus","1k","1x-mobiledata","20mp","21mp","22mp","23mp","24mp","2k-plus","2k","2mp","30fps-select","30fps","360","3d-rotation","3g-mobiledata","3k-plus","3k","3mp","3p","4g-mobiledata","4g-plus-mobiledata","4k-plus","4k","4mp","5g","5k-plus","5k","5mp","6-ft-apart","60fps-select","60fps","6k-plus","6k","6mp","7k-plus","7k","7mp","8k-plus","8k","8mp","9k-plus","9k","9mp","abc","ac-unit","access-alarm","access-alarms","access-time-filled","access-time","accessibility-new","accessibility","accessible-forward","accessible","account-balance-wallet","account-balance","account-box","account-circle","account-tree","ad-units","adb","add-a-photo","add-alarm","add-alert","add-box","add-business","add-call","add-card","add-chart","add-circle-outline","add-circle","add-comment","add-home-work","add-home","add-ic-call","add-link","add-location-alt","add-location","add-moderator","add-photo-alternate","add-reaction","add-road","add-shopping-cart","add-task","add-to-drive","add-to-home-screen","add-to-photos","add-to-queue","add","addchart","adf-scanner","adjust","admin-panel-settings","ads-click","agriculture","air","airline-seat-flat-angled","airline-seat-flat","airline-seat-individual-suite","airline-seat-legroom-extra","airline-seat-legroom-normal","airline-seat-legroom-reduced","airline-seat-recline-extra","airline-seat-recline-normal","airline-stops","airlines","airplane-ticket","airplanemode-active","airplanemode-inactive","airplay","airport-shuttle","alarm-add","alarm-off","alarm-on","alarm","album","align-horizontal-center","align-horizontal-left","align-horizontal-right","align-vertical-bottom","align-vertical-center","align-vertical-top","all-inbox","all-inclusive","all-out","alt-route","alternate-email","amp-stories","analytics","anchor","android","animation","announcement","aod","apartment","api","app-blocking","app-registration","app-settings-alt","app-shortcut","approval","apps-outage","apps","architecture","archive","area-chart","arrow-back-ios-new","arrow-back-ios","arrow-back","arrow-circle-down","arrow-circle-left","arrow-circle-right","arrow-circle-up","arrow-downward","arrow-drop-down-circle","arrow-drop-down","arrow-drop-up","arrow-forward-ios","arrow-forward","arrow-left","arrow-outward","arrow-right-alt","arrow-right","arrow-upward","art-track","article","aspect-ratio","assessment","assignment-ind","assignment-late","assignment-return","assignment-returned","assignment-turned-in","assignment","assist-walker","assistant-direction","assistant-navigation","assistant-photo","assistant","assured-workload","atm","attach-email","attach-file","attach-money","attachment","attractions","attribution","audio-file","audiotrack","auto-awesome-mosaic","auto-awesome-motion","auto-awesome","auto-delete","auto-fix-high","auto-fix-normal","auto-fix-off","auto-graph","auto-mode","auto-stories","autofps-select","autorenew","av-timer","baby-changing-station","back-hand","backpack","backspace","backup-table","backup","badge","bakery-dining","balance","balcony","ballot","bar-chart","batch-prediction","bathroom","bathtub","battery-0-bar","battery-1-bar","battery-2-bar","battery-3-bar","battery-4-bar","battery-5-bar","battery-6-bar","battery-alert","battery-charging-full","battery-full","battery-saver","battery-std","battery-unknown","beach-access","bed","bedroom-baby","bedroom-child","bedroom-parent","bedtime-off","bedtime","beenhere","bento","bike-scooter","biotech","blender","blind","blinds-closed","blinds","block-flipped","block","bloodtype","bluetooth-audio","bluetooth-connected","bluetooth-disabled","bluetooth-drive","bluetooth-searching","bluetooth","blur-circular","blur-linear","blur-off","blur-on","bolt","book-online","book","bookmark-add","bookmark-added","bookmark-border","bookmark-remove","bookmark","bookmarks","border-all","border-bottom","border-clear","border-color","border-horizontal","border-inner","border-left","border-outer","border-right","border-style","border-top","border-vertical","boy","branding-watermark","breakfast-dining","brightness-1","brightness-2","brightness-3","brightness-4","brightness-5","brightness-6","brightness-7","brightness-auto","brightness-high","brightness-low","brightness-medium","broadcast-on-home","broadcast-on-personal","broken-image","browse-gallery","browser-not-supported","browser-updated","brunch-dining","brush","bubble-chart","bug-report","build-circle","build","bungalow","burst-mode","bus-alert","business-center","business","cabin","cable","cached","cake","calculate","calendar-month","calendar-today","calendar-view-day","calendar-view-month","calendar-view-week","call-end","call-made","call-merge","call-missed-outgoing","call-missed","call-received","call-split","call-to-action","call","camera-alt","camera-enhance","camera-front","camera-indoor","camera-outdoor","camera-rear","camera-roll","camera","cameraswitch","campaign","cancel-presentation","cancel-schedule-send","cancel","candlestick-chart","car-crash","car-rental","car-repair","card-giftcard","card-membership","card-travel","carpenter","cases","casino","cast-connected","cast-for-education","cast","castle","catching-pokemon","category","celebration","cell-tower","cell-wifi","center-focus-strong","center-focus-weak","chair-alt","chair","chalet","change-circle","change-history","charging-station","chat-bubble-outline","chat-bubble","chat","check-box-outline-blank","check-box","check-circle-outline","check-circle","check","checklist-rtl","checklist","checkroom","chevron-left","chevron-right","child-care","child-friendly","chrome-reader-mode","church","circle-notifications","circle","class","clean-hands","cleaning-services","clear-all","clear","close-fullscreen","close","closed-caption-disabled","closed-caption-off","closed-caption","cloud-circle","cloud-done","cloud-download","cloud-off","cloud-queue","cloud-sync","cloud-upload","cloud","cloudy-snowing","co-present","co2","code-off","code","coffee-maker","coffee","collections-bookmark","collections","color-lens","colorize","comment-bank","comment","comments-disabled","commit","commute","compare-arrows","compare","compass-calibration","compost","compress","computer","confirmation-number","connect-without-contact","connected-tv","connecting-airports","construction","contact-emergency","contact-mail","contact-page","contact-phone","contact-support","contactless","contacts","content-copy","content-cut","content-paste-go","content-paste-off","content-paste-search","content-paste","contrast","control-camera","control-point-duplicate","control-point","cookie","copy-all","copyright","coronavirus","corporate-fare","cottage","countertops","create-new-folder","create","credit-card-off","credit-card","credit-score","crib","crisis-alert","crop-16-9","crop-3-2","crop-5-4","crop-7-5","crop-din","crop-free","crop-landscape","crop-original","crop-portrait","crop-rotate","crop-square","crop","cruelty-free","css","currency-bitcoin","currency-exchange","currency-franc","currency-lira","currency-pound","currency-ruble","currency-rupee","currency-yen","currency-yuan","curtains-closed","curtains","cyclone","dangerous","dark-mode","dashboard-customize","dashboard","data-array","data-exploration","data-object","data-saver-off","data-saver-on","data-thresholding","data-usage","dataset-linked","dataset","date-range","deblur","deck","dehaze","delete-forever","delete-outline","delete-sweep","delete","delivery-dining","density-large","density-medium","density-small","departure-board","description","deselect","design-services","desk","desktop-access-disabled","desktop-mac","desktop-windows","details","developer-board-off","developer-board","developer-mode","device-hub","device-thermostat","device-unknown","devices-fold","devices-other","devices","dialer-sip","dialpad","diamond","difference","dining","dinner-dining","directions-bike","directions-boat-filled","directions-boat","directions-bus-filled","directions-bus","directions-car-filled","directions-car","directions-off","directions-railway-filled","directions-railway","directions-run","directions-subway-filled","directions-subway","directions-transit-filled","directions-transit","directions-walk","directions","dirty-lens","disabled-by-default","disabled-visible","disc-full","discount","display-settings","diversity-1","diversity-2","diversity-3","dns","do-disturb-alt","do-disturb-off","do-disturb-on","do-disturb","do-not-disturb-alt","do-not-disturb-off","do-not-disturb-on-total-silence","do-not-disturb-on","do-not-disturb","do-not-step","do-not-touch","dock","document-scanner","domain-add","domain-disabled","domain-verification","domain","done-all","done-outline","done","donut-large","donut-small","door-back","door-front","door-sliding","doorbell","double-arrow","downhill-skiing","download-done","download-for-offline","download","downloading","drafts","drag-handle","drag-indicator","draw","drive-eta","drive-file-move-outline","drive-file-move-rtl","drive-file-move","drive-file-rename-outline","drive-folder-upload","dry-cleaning","dry","duo","dvr","dynamic-feed","dynamic-form","e-mobiledata","earbuds-battery","earbuds","east","eco","edgesensor-high","edgesensor-low","edit-attributes","edit-calendar","edit-location-alt","edit-location","edit-note","edit-notifications","edit-off","edit-road","edit","egg-alt","egg","eject","elderly-woman","elderly","electric-bike","electric-bolt","electric-car","electric-meter","electric-moped","electric-rickshaw","electric-scooter","electrical-services","elevator","email","emergency-recording","emergency-share","emergency","emoji-emotions","emoji-events","emoji-flags","emoji-food-beverage","emoji-nature","emoji-objects","emoji-people","emoji-symbols","emoji-transportation","energy-savings-leaf","engineering","enhanced-encryption","equalizer","error-outline","error","escalator-warning","escalator","euro-symbol","euro","ev-station","event-available","event-busy","event-note","event-repeat","event-seat","event","exit-to-app","expand-circle-down","expand-less","expand-more","expand","explicit","explore-off","explore","exposure-neg-1","exposure-neg-2","exposure-plus-1","exposure-plus-2","exposure-zero","exposure","extension-off","extension","face-2","face-3","face-4","face-5","face-6","face-retouching-natural","face-retouching-off","face-unlock","face","facebook","fact-check","factory","family-restroom","fast-forward","fast-rewind","fastfood","favorite-border","favorite","fax","featured-play-list","featured-video","feed","feedback","female","fence","festival","fiber-dvr","fiber-manual-record","fiber-new","fiber-pin","fiber-smart-record","file-copy","file-download-done","file-download-off","file-download","file-open","file-present","file-upload","filter-1","filter-2","filter-3","filter-4","filter-5","filter-6","filter-7","filter-8","filter-9-plus","filter-9","filter-alt-off","filter-alt","filter-b-and-w","filter-center-focus","filter-drama","filter-frames","filter-hdr","filter-list-alt","filter-list-off","filter-list","filter-none","filter-tilt-shift","filter-vintage","filter","find-in-page","find-replace","fingerprint","fire-extinguisher","fire-hydrant-alt","fire-truck","fireplace","first-page","fit-screen","fitbit","fitness-center","flag-circle","flag","flaky","flare","flash-auto","flash-off","flash-on","flashlight-off","flashlight-on","flatware","flight-class","flight-land","flight-takeoff","flight","flip-camera-android","flip-camera-ios","flip-to-back","flip-to-front","flip","flood","flourescent","flutter-dash","fmd-bad","fmd-good","foggy","folder-copy","folder-delete","folder-off","folder-open","folder-shared","folder-special","folder-zip","folder","follow-the-signs","font-download-off","font-download","food-bank","forest","fork-left","fork-right","format-align-center","format-align-justify","format-align-left","format-align-right","format-bold","format-clear","format-color-fill","format-color-reset","format-color-text","format-indent-decrease","format-indent-increase","format-italic","format-line-spacing","format-list-bulleted","format-list-numbered-rtl","format-list-numbered","format-overline","format-paint","format-quote","format-shapes","format-size","format-strikethrough","format-textdirection-l-to-r","format-textdirection-r-to-l","format-underlined","fort","forum","forward-10","forward-30","forward-5","forward-to-inbox","forward","foundation","free-breakfast","free-cancellation","front-hand","fullscreen-exit","fullscreen","functions","g-mobiledata","g-translate","gamepad","games","garage","gas-meter","gavel","generating-tokens","gesture","get-app","gif-box","gif","girl","gite","golf-course","gpp-bad","gpp-good","gpp-maybe","gps-fixed","gps-not-fixed","gps-off","grade","gradient","grading","grain","graphic-eq","grass","grid-3x3","grid-4x4","grid-goldenratio","grid-off","grid-on","grid-view","group-add","group-off","group-remove","group-work","group","groups-2","groups-3","groups","h-mobiledata","h-plus-mobiledata","hail","handshake","handyman","hardware","hd","hdr-auto-select","hdr-auto","hdr-enhanced-select","hdr-off-select","hdr-off","hdr-on-select","hdr-on","hdr-plus","hdr-strong","hdr-weak","headphones-battery","headphones","headset-mic","headset-off","headset","healing","health-and-safety","hearing-disabled","hearing","heart-broken","heat-pump","height","help-center","help-outline","help","hevc","hexagon","hide-image","hide-source","high-quality","highlight-alt","highlight-off","highlight","hiking","history-edu","history-toggle-off","history","hive","hls-off","hls","holiday-village","home-filled","home-max","home-mini","home-repair-service","home-work","home","horizontal-distribute","horizontal-rule","horizontal-split","hot-tub","hotel-class","hotel","hourglass-bottom","hourglass-disabled","hourglass-empty","hourglass-full","hourglass-top","house-siding","house","houseboat","how-to-reg","how-to-vote","html","http","https","hub","hvac","ice-skating","icecream","image-aspect-ratio","image-not-supported","image-search","image","imagesearch-roller","import-contacts","import-export","important-devices","inbox","incomplete-circle","indeterminate-check-box","info-outline","info","input","insert-chart-outlined","insert-chart","insert-comment","insert-drive-file","insert-emoticon","insert-invitation","insert-link","insert-page-break","insert-photo","insights","install-desktop","install-mobile","integration-instructions","interests","interpreter-mode","inventory-2","inventory","invert-colors-off","invert-colors","ios-share","iron","iso","javascript","join-full","join-inner","join-left","join-right","kayaking","kebab-dining","key-off","key","keyboard-alt","keyboard-arrow-down","keyboard-arrow-left","keyboard-arrow-right","keyboard-arrow-up","keyboard-backspace","keyboard-capslock","keyboard-command-key","keyboard-control-key","keyboard-double-arrow-down","keyboard-double-arrow-left","keyboard-double-arrow-right","keyboard-double-arrow-up","keyboard-hide","keyboard-option-key","keyboard-return","keyboard-tab","keyboard-voice","keyboard","king-bed","kitchen","kitesurfing","label-important-outline","label-important","label-off","label-outline","label","lan","landscape","landslide","language","laptop-chromebook","laptop-mac","laptop-windows","laptop","last-page","launch","layers-clear","layers","leaderboard","leak-add","leak-remove","legend-toggle","lens-blur","lens","library-add-check","library-add","library-books","library-music","light-mode","light","lightbulb-circle","lightbulb-outline","lightbulb","line-axis","line-style","line-weight","linear-scale","link-off","link","linked-camera","liquor","list-alt","list","live-help","live-tv","living","local-activity","local-airport","local-atm","local-bar","local-cafe","local-car-wash","local-convenience-store","local-dining","local-drink","local-fire-department","local-florist","local-gas-station","local-grocery-store","local-hospital","local-hotel","local-laundry-service","local-library","local-mall","local-movies","local-offer","local-parking","local-pharmacy","local-phone","local-pizza","local-play","local-police","local-post-office","local-printshop","local-see","local-shipping","local-taxi","location-city","location-disabled","location-off","location-on","location-pin","location-searching","lock-clock","lock-open","lock-outline","lock-person","lock-reset","lock","login","logo-dev","logout","looks-3","looks-4","looks-5","looks-6","looks-one","looks-two","looks","loop","loupe","low-priority","loyalty","lte-mobiledata","lte-plus-mobiledata","luggage","lunch-dining","lyrics","macro-off","mail-lock","mail-outline","mail","male","man-2","man-3","man-4","man","manage-accounts","manage-history","manage-search","map","maps-home-work","maps-ugc","margin","mark-as-unread","mark-chat-read","mark-chat-unread","mark-email-read","mark-email-unread","mark-unread-chat-alt","markunread-mailbox","markunread","masks","maximize","media-bluetooth-off","media-bluetooth-on","mediation","medical-information","medical-services","medication-liquid","medication","meeting-room","memory","menu-book","menu-open","menu","merge-type","merge","message","mic-external-off","mic-external-on","mic-none","mic-off","mic","microwave","military-tech","minimize","minor-crash","miscellaneous-services","missed-video-call","mms","mobile-friendly","mobile-off","mobile-screen-share","mobiledata-off","mode-comment","mode-edit-outline","mode-edit","mode-fan-off","mode-night","mode-of-travel","mode-standby","mode","model-training","monetization-on","money-off-csred","money-off","money","monitor-heart","monitor-weight","monitor","monochrome-photos","mood-bad","mood","moped","more-horiz","more-time","more-vert","more","mosque","motion-photos-auto","motion-photos-off","motion-photos-on","motion-photos-pause","motion-photos-paused","mouse","move-down","move-to-inbox","move-up","movie-creation","movie-filter","movie","moving","mp","multiline-chart","multiple-stop","museum","music-note","music-off","music-video","my-location","nat","nature-people","nature","navigate-before","navigate-next","navigation","near-me-disabled","near-me","nearby-error","nearby-off","nest-cam-wired-stand","network-cell","network-check","network-locked","network-ping","network-wifi-1-bar","network-wifi-2-bar","network-wifi-3-bar","network-wifi","new-label","new-releases","newspaper","next-plan","next-week","nfc","night-shelter","nightlife","nightlight-round","nightlight","nights-stay","no-accounts","no-adult-content","no-backpack","no-cell","no-crash","no-drinks","no-encryption-gmailerrorred","no-encryption","no-flash","no-food","no-luggage","no-meals-ouline","no-meals","no-meeting-room","no-photography","no-sim","no-stroller","no-transfer","noise-aware","noise-control-off","nordic-walking","north-east","north-west","north","not-accessible","not-interested","not-listed-location","not-started","note-add","note-alt","note","notes","notification-add","notification-important","notifications-active","notifications-none","notifications-off","notifications-paused","notifications","numbers","offline-bolt","offline-pin","offline-share","oil-barrel","on-device-training","ondemand-video","online-prediction","opacity","open-in-browser","open-in-full","open-in-new-off","open-in-new","open-with","other-houses","outbond","outbound","outbox","outdoor-grill","outgoing-mail","outlet","outlined-flag","output","padding","pages","pageview","paid","palette","pan-tool-alt","pan-tool","panorama-fish-eye","panorama-horizontal-select","panorama-horizontal","panorama-photosphere-select","panorama-photosphere","panorama-vertical-select","panorama-vertical","panorama-wide-angle-select","panorama-wide-angle","panorama","paragliding","park","party-mode","password","pattern","pause-circle-filled","pause-circle-outline","pause-circle","pause-presentation","pause","payment","payments","pedal-bike","pending-actions","pending","pentagon","people-alt","people-outline","people","percent","perm-camera-mic","perm-contact-calendar","perm-data-setting","perm-device-information","perm-identity","perm-media","perm-phone-msg","perm-scan-wifi","person-2","person-3","person-4","person-add-alt-1","person-add-alt","person-add-disabled","person-add","person-off","person-outline","person-pin-circle","person-pin","person-remove-alt-1","person-remove","person-search","person","personal-injury","personal-video","pest-control-rodent","pest-control","pets","phishing","phone-android","phone-bluetooth-speaker","phone-callback","phone-disabled","phone-enabled","phone-forwarded","phone-in-talk","phone-iphone","phone-locked","phone-missed","phone-paused","phone","phonelink-erase","phonelink-lock","phonelink-off","phonelink-ring","phonelink-setup","phonelink","photo-album","photo-camera-back","photo-camera-front","photo-camera","photo-filter","photo-library","photo-size-select-actual","photo-size-select-large","photo-size-select-small","photo","php","piano-off","piano","picture-as-pdf","picture-in-picture-alt","picture-in-picture","pie-chart-outline","pie-chart-outlined","pie-chart","pin-drop","pin-end","pin-invoke","pin","pinch","pivot-table-chart","pix","place","plagiarism","play-arrow","play-circle-filled","play-circle-outline","play-circle","play-disabled","play-for-work","play-lesson","playlist-add-check-circle","playlist-add-check","playlist-add-circle","playlist-add","playlist-play","playlist-remove","plumbing","plus-one","podcasts","point-of-sale","policy","poll","polyline","polymer","pool","portable-wifi-off","portrait","post-add","power-input","power-off","power-settings-new","power","precision-manufacturing","pregnant-woman","present-to-all","preview","price-change","price-check","print-disabled","print","priority-high","privacy-tip","private-connectivity","production-quantity-limits","propane-tank","propane","psychology-alt","psychology","public-off","public","publish","published-with-changes","punch-clock","push-pin","qr-code-2","qr-code-scanner","qr-code","query-builder","query-stats","question-answer","question-mark","queue-music","queue-play-next","queue","quickreply","quiz","r-mobiledata","radar","radio-button-checked","radio-button-unchecked","radio","railway-alert","ramen-dining","ramp-left","ramp-right","rate-review","raw-off","raw-on","read-more","real-estate-agent","receipt-long","receipt","recent-actors","recommend","record-voice-over","rectangle","recycling","redeem","redo","reduce-capacity","refresh","remember-me","remove-circle-outline","remove-circle","remove-done","remove-from-queue","remove-moderator","remove-red-eye","remove-road","remove-shopping-cart","remove","reorder","repartition","repeat-on","repeat-one-on","repeat-one","repeat","replay-10","replay-30","replay-5","replay-circle-filled","replay","reply-all","reply","report-gmailerrorred","report-off","report-problem","report","request-page","request-quote","reset-tv","restart-alt","restaurant-menu","restaurant","restore-from-trash","restore-page","restore","reviews","rice-bowl","ring-volume","rocket-launch","rocket","roller-shades-closed","roller-shades","roller-skating","roofing","room-preferences","room-service","room","rotate-90-degrees-ccw","rotate-90-degrees-cw","rotate-left","rotate-right","roundabout-left","roundabout-right","rounded-corner","route","router","rowing","rss-feed","rsvp","rtt","rule-folder","rule","run-circle","running-with-errors","rv-hookup","safety-check","safety-divider","sailing","sanitizer","satellite-alt","satellite","save-alt","save-as","save","saved-search","savings","scale","scanner","scatter-plot","schedule-send","schedule","schema","school","science","score","scoreboard","screen-lock-landscape","screen-lock-portrait","screen-lock-rotation","screen-rotation-alt","screen-rotation","screen-search-desktop","screen-share","screenshot-monitor","screenshot","scuba-diving","sd-card-alert","sd-card","sd-storage","sd","search-off","search","security-update-good","security-update-warning","security-update","security","segment","select-all","self-improvement","sell","send-and-archive","send-time-extension","send-to-mobile","send","sensor-door","sensor-occupied","sensor-window","sensors-off","sensors","sentiment-dissatisfied","sentiment-neutral","sentiment-satisfied-alt","sentiment-satisfied","sentiment-very-dissatisfied","sentiment-very-satisfied","set-meal","settings-accessibility","settings-applications","settings-backup-restore","settings-bluetooth","settings-brightness","settings-cell","settings-ethernet","settings-input-antenna","settings-input-component","settings-input-composite","settings-input-hdmi","settings-input-svideo","settings-overscan","settings-phone","settings-power","settings-remote","settings-suggest","settings-system-daydream","settings-voice","settings","severe-cold","shape-line","share-location","share","shield-moon","shield","shop-2","shop-two","shop","shopping-bag","shopping-basket","shopping-cart-checkout","shopping-cart","short-text","shortcut","show-chart","shower","shuffle-on","shuffle","shutter-speed","sick","sign-language","signal-cellular-0-bar","signal-cellular-4-bar","signal-cellular-alt-1-bar","signal-cellular-alt-2-bar","signal-cellular-alt","signal-cellular-connected-no-internet-0-bar","signal-cellular-connected-no-internet-4-bar","signal-cellular-no-sim","signal-cellular-nodata","signal-cellular-null","signal-cellular-off","signal-wifi-0-bar","signal-wifi-4-bar-lock","signal-wifi-4-bar","signal-wifi-bad","signal-wifi-connected-no-internet-4","signal-wifi-off","signal-wifi-statusbar-4-bar","signal-wifi-statusbar-connected-no-internet-4","signal-wifi-statusbar-null","signpost","sim-card-alert","sim-card-download","sim-card","single-bed","sip","skateboarding","skip-next","skip-previous","sledding","slideshow","slow-motion-video","smart-button","smart-display","smart-screen","smart-toy","smartphone","smoke-free","smoking-rooms","sms-failed","sms","snippet-folder","snooze","snowboarding","snowing","snowmobile","snowshoeing","soap","social-distance","solar-power","sort-by-alpha","sort","sos","soup-kitchen","source","south-america","south-east","south-west","south","spa","space-bar","space-dashboard","spatial-audio-off","spatial-audio","spatial-tracking","speaker-group","speaker-notes-off","speaker-notes","speaker-phone","speaker","speed","spellcheck","splitscreen","spoke","sports-bar","sports-baseball","sports-basketball","sports-cricket","sports-esports","sports-football","sports-golf","sports-gymnastics","sports-handball","sports-hockey","sports-kabaddi","sports-martial-arts","sports-mma","sports-motorsports","sports-rugby","sports-score","sports-soccer","sports-tennis","sports-volleyball","sports","square-foot","square","ssid-chart","stacked-bar-chart","stacked-line-chart","stadium","stairs","star-border-purple500","star-border","star-half","star-outline","star-purple500","star-rate","star","stars","start","stay-current-landscape","stay-current-portrait","stay-primary-landscape","stay-primary-portrait","sticky-note-2","stop-circle","stop-screen-share","stop","storage","store-mall-directory","store","storefront","storm","straight","straighten","stream","streetview","strikethrough-s","stroller","style","subdirectory-arrow-left","subdirectory-arrow-right","subject","subscript","subscriptions","subtitles-off","subtitles","subway","summarize","sunny-snowing","sunny","superscript","supervised-user-circle","supervisor-account","support-agent","support","surfing","surround-sound","swap-calls","swap-horiz","swap-horizontal-circle","swap-vert","swap-vertical-circle","swipe-down-alt","swipe-down","swipe-left-alt","swipe-left","swipe-right-alt","swipe-right","swipe-up-alt","swipe-up","swipe-vertical","swipe","switch-access-shortcut-add","switch-access-shortcut","switch-account","switch-camera","switch-left","switch-right","switch-video","synagogue","sync-alt","sync-disabled","sync-lock","sync-problem","sync","system-security-update-good","system-security-update-warning","system-security-update","system-update-alt","system-update","tab-unselected","tab","table-bar","table-chart","table-restaurant","table-rows","table-view","tablet-android","tablet-mac","tablet","tag-faces","tag","takeout-dining","tap-and-play","tapas","task-alt","task","taxi-alert","temple-buddhist","temple-hindu","terminal","terrain","text-decrease","text-fields","text-format","text-increase","text-rotate-up","text-rotate-vertical","text-rotation-angledown","text-rotation-angleup","text-rotation-down","text-rotation-none","text-snippet","textsms","texture","theater-comedy","theaters","thermostat-auto","thermostat","thermostat-vibration","thumb-down-alt","thumb-down-off-alt","thumb-down","thumb-up-alt","thumb-up-off-alt","thumb-up","thumbs-up-down","thunderstorm","time-to-leave","timelapse","timeline","timer-10-select","timer-10","timer-3-select","timer-3","timer-off","timer","tips-and-updates","tire-repair","title","toc","today","toggle-off","toggle-on","token","toll","tonality","topic","tornado","touch-app","tour","toys","track-changes","traffic","train","tram","transcribe","transfer-within-a-station","transform","transgender","transit-enterexit","translate","travel-explore","trending-down","trending-flat","trending-up","trip-origin","troubleshoot","try","tsunami","tty","tune","tungsten","turn-left","turn-right","turn-sharp-left","turn-sharp-right","turn-slight-left","turn-slight-right","turned-in-not","turned-in","tv-off","tv","two-wheeler","type-specimen","u-turn-left","u-turn-right","umbrella","unarchive","undo","unfold-less-double","unfold-less","unfold-more-double","unfold-more","unpublished","unsubscribe","upcoming","update-disabled","update","upgrade","upload-file","upload","usb-off","usb","vaccines","vape-free","vaping-rooms","verified-user","verified","vertical-align-bottom","vertical-align-center","vertical-align-top","vertical-distribute","vertical-shades-closed","vertical-shades","vertical-split","vibration","video-call","video-camera-back","video-camera-front","video-file","video-label","video-library","video-settings","video-stable","videocam-off","videocam","videogame-asset-off","videogame-asset","view-agenda","view-array","view-carousel","view-column","view-comfy-alt","view-comfy","view-compact-alt","view-compact","view-cozy","view-day","view-headline","view-in-ar","view-kanban","view-list","view-module","view-quilt","view-sidebar","view-stream","view-timeline","view-week","vignette","villa","visibility-off","visibility","voice-chat","voice-over-off","voicemail","volcano","volume-down-alt","volume-down","volume-mute","volume-off","volume-up","volunteer-activism","vpn-key-off","vpn-key","vpn-lock","vrpano","wallet","wallpaper","warehouse","warning-amber","warning","wash","watch-later","watch-off","watch","water-damage","water-drop","water","waterfall-chart","waves","waving-hand","wb-auto","wb-cloudy","wb-incandescent","wb-iridescent","wb-shade","wb-sunny","wb-twighlight","wb-twilight","wc","web-asset-off","web-asset","web-stories","web","webhook","weekend","west","whatsapp","whatshot","wheelchair-pickup","where-to-vote","widgets","width-full","width-normal","width-wide","wifi-1-bar","wifi-2-bar","wifi-calling-3","wifi-calling","wifi-channel","wifi-find","wifi-lock","wifi-off","wifi-password","wifi-protected-setup","wifi-tethering-error-rounded","wifi-tethering-error","wifi-tethering-off","wifi-tethering","wifi","wind-power","window","wine-bar","woman-2","woman","work-history","work-off","work-outline","work","workspace-premium","workspaces-filled","workspaces-outline","workspaces","wrap-text","wrong-location","wysiwyg","yard","youtube-searched-for","zoom-in-map","zoom-in","zoom-out-map","zoom-out"];const FuelicsIcons=["fuelics-dieselTank","fuelics-dumpster","fuelics-parkingSpace","fuelics-powerMeter","fuelics-septicTank","fuelics-waterMeter","fuelics-waterTank"];const customMappings={marker:{width:480,height:640,anchorY:640},refrigerator:{width:480,height:640},stove:{width:480,height:550},centrifuge:{width:480,height:550},incubator:{width:480,height:550},machine:{width:640,height:640},"temperature-and-vibration":{width:480,height:480},deflection:{width:480,height:480},desktop:{width:256,height:256},laptop:{width:256,height:256}};const generateIconURL=(iconName,type)=>`${config_src["a"].getValue("IMAGES_API_ADDRESS")}/icons/${type?type+"/":""}${iconName}.png`;const generateCustomMappings=()=>CustomIcons.reduce(((mapping,iconName)=>({...mapping,[iconName]:{url:generateIconURL(iconName,"custom"),width:customMappings[iconName]&&customMappings[iconName].width?customMappings[iconName].width:240,height:customMappings[iconName]&&customMappings[iconName].height?customMappings[iconName].height:240,anchorY:customMappings[iconName]&&customMappings[iconName].anchorY?customMappings[iconName].anchorY:undefined,mask:true}})),{});const generateMaterialMappings=()=>MaterialIcons.reduce(((mapping,iconName)=>({...mapping,[iconName]:{url:generateIconURL(iconName,"material"),width:240,height:240,mask:true}})),{});const generateFuelicsMappings=()=>FuelicsIcons.reduce(((mapping,iconName)=>({...mapping,[iconName]:{url:generateIconURL(iconName,"fuelics"),width:640,height:640,mask:true}})),{});const RasterMappings={...generateMaterialMappings(),...generateCustomMappings(),...generateFuelicsMappings()};class AnimatedIconLayer_AnimatedIconLayer extends layers_["IconLayer"]{draw(_ref){let{uniforms,context}=_ref;const animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:context.timeline,animationDataList:this.props.animations,redrawFn:()=>this.setNeedsRedraw()});const uniformValues=animationEngine.getUniforms();const{sizeScale,sizeMinPixels,sizeMaxPixels,sizeUnits,billboard,alphaCutoff}=this.props;const{iconManager}=this.state;const iconsTexture=iconManager.getTexture();if(iconsTexture){this.state.model.setUniforms(uniforms).setUniforms({iconsTexture,iconsTextureDim:[iconsTexture.width,iconsTexture.height],sizeUnits:UNIT[sizeUnits],sizeScale,sizeMinPixels,sizeMaxPixels,billboard,alphaCutoff,...uniformValues}).draw()}animationEngine.render()}}AnimatedIconLayer_AnimatedIconLayer.layerName="AnimatedIconLayer";const IconFactory_animatedLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["IconLayer"],AnimatedIconLayer_AnimatedIconLayer,{sizeScale:kProps=>kProps.scale,sizeMinPixels:(kProps,props)=>props.getMinPixels&&props.getMinPixels(kProps.scale),sizeMaxPixels:(kProps,props)=>props.getMaxPixels&&props.getMaxPixels(kProps.scale)});class IconFactory_IconFactory extends BaseFactory_BaseFactory{create(props){var _props$encoding$size,_props$encoding,_props$encoding$size2;const iconAccessor=new encoding_src["g"]({iconStore:RasterMappings});const deckProps=super.getDeckProps(props,{id:`${props.id}`,data:super.getRows(props),pickable:props.pickable,sizeUnits:(_props$encoding$size=props.encoding.size)===null||_props$encoding$size===void 0?void 0:_props$encoding$size.getUnits(),getSize:Object(encoding_src["p"])({encoding:props.encoding.size,columns:props.columns}),getColor:super.getColorAccessor(props.columns,(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.color,props.rows,props.visibleRows),getPosition:super.getPositionAccessor(props),getIcon:row=>iconAccessor.getIcon(props.encoding.icon,row),updateTriggers:{getColor:super.getColorUpdateTrigger(props.encoding.color,props.visibleRows),getSize:super.getSizeUpdateTrigger(props.encoding.size),getPosition:super.getPositionUpdateTrigger(props.encoding.position,props.editing),getIcon:super.getIconUpdateTrigger(props.encoding.icon)},alphaCutoff:0,...super.getDeckLayerCallbacks(props)});if((_props$encoding$size2=props.encoding.size)!==null&&_props$encoding$size2!==void 0&&_props$encoding$size2.isCommon()){if(props.encoding.size.getMinPixels()){deckProps.sizeMinPixels=props.encoding.size.getMinPixels()}if(props.encoding.size.getMaxPixels()){deckProps.sizeMaxPixels=props.encoding.size.getMaxPixels()}}if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return IconFactory_animatedLayerFactory.create(props.encoding,deckProps,super.getDeckLayerCallbacks(props))}else{return new layers_["IconLayer"](deckProps)}}}var helpers_=__webpack_require__(23);var centroid_=__webpack_require__(42);var centroid_default=__webpack_require__.n(centroid_);var rhumb_bearing_=__webpack_require__(122);var rhumb_bearing_default=__webpack_require__.n(rhumb_bearing_);var rhumb_distance_=__webpack_require__(123);var rhumb_distance_default=__webpack_require__.n(rhumb_distance_);var transform_translate_=__webpack_require__(124);var transform_translate_default=__webpack_require__.n(transform_translate_);var external_deck_gl_=__webpack_require__(82);var external_nebula_gl_=__webpack_require__(35);var bbox_polygon_=__webpack_require__(125);var bbox_polygon_default=__webpack_require__.n(bbox_polygon_);var bbox_=__webpack_require__(126);var bbox_default=__webpack_require__.n(bbox_);var meta_=__webpack_require__(127);var polygon_to_line_=__webpack_require__(128);var polygon_to_line_default=__webpack_require__.n(polygon_to_line_);class ImageScaleMode_ImageScaleMode extends external_nebula_gl_["ScaleMode"]{getGuides(props){this._cornerGuidePoints=[];const selectedGeometry=this.getSelectedFeaturesAsFeatureCollection(props);if(this._isSinglePointGeometrySelected(selectedGeometry)){return{type:"FeatureCollection",features:[]}}const boundingBox=bbox_polygon_default()(bbox_default()(selectedGeometry));if(boundingBox.properties)boundingBox.properties.mode="scale";const cornerGuidePoints=[];Object(meta_["coordEach"])(selectedGeometry,((coord,coordIndex)=>{if(coordIndex<4){const cornerPoint=Object(helpers_["point"])(coord,{guideType:"editHandle",editHandleType:"scale",positionIndexes:[coordIndex]});cornerGuidePoints.push(cornerPoint)}}));this._cornerGuidePoints=cornerGuidePoints;const lines=selectedGeometry.features.length&&polygon_to_line_default()(selectedGeometry.features[0]);let collection=[];if(lines)collection.push(lines);collection=[...collection,...this._cornerGuidePoints];return Object(helpers_["featureCollection"])(collection)}}var invariant_=__webpack_require__(64);var transform_rotate_=__webpack_require__(77);var transform_rotate_default=__webpack_require__.n(transform_rotate_);function getMiddlePoint(p1,p2){const x1=p1[0];const x2=p2[0];const y1=p1[1];const y2=p2[1];const maxX=Math.max(x1,x2);const maxY=Math.max(y1,y2);const minX=Math.min(x1,x2);const minY=Math.min(y1,y2);return new spatial_src["d"](minX+(maxX-minX)/2,minY+(maxY-minY)/2)}class ImageRotateMode_ImageRotateMode extends external_nebula_gl_["RotateMode"]{getGuides(props){const selectedGeometry=this._geometryBeingRotated||this.getSelectedFeaturesAsFeatureCollection(props);if(!selectedGeometry.features.length)return Object(helpers_["featureCollection"])([]);if(this._isRotating){return Object(helpers_["featureCollection"])([centroid_default()(selectedGeometry)])}const coords=Object(invariant_["getCoords"])(selectedGeometry.features[0]);const topLeft=coords[0][1];const topRight=coords[0][2];const topCenter=getMiddlePoint(topLeft,topRight);const pointToRotate=Object(helpers_["point"])(topLeft);const topCenterHigh=transform_rotate_default()(pointToRotate,90,{pivot:topCenter});const topCenterMiddle=getMiddlePoint(topCenter,Object(invariant_["getCoord"])(topCenterHigh));const topCenterLine=Object(helpers_["lineString"])([topCenterMiddle,topCenter]);const rotateHandle=Object(helpers_["point"])(topCenterMiddle,{guideType:"editHandle",editHandleType:"rotate"});return Object(helpers_["featureCollection"])([rotateHandle,topCenterLine])}}class ImageTransformMode_ImageTransformMode extends external_nebula_gl_["CompositeMode"]{constructor(){super([new external_nebula_gl_["TranslateMode"],new ImageScaleMode_ImageScaleMode,new ImageRotateMode_ImageRotateMode])}handlePointerMove(event,props){let updatedCursor=null;super.handlePointerMove(event,{...props,onUpdateCursor:cursor=>{updatedCursor=cursor||updatedCursor}});props.onUpdateCursor(updatedCursor)}handleStartDragging(event,props){let scaleMode=null;let translateMode=null;const filteredModes=[];this._modes.forEach((mode=>{if(mode instanceof external_nebula_gl_["TranslateMode"]){translateMode=mode}else{if(mode instanceof ImageScaleMode_ImageScaleMode){scaleMode=mode}filteredModes.push(mode)}}));if(scaleMode instanceof ImageScaleMode_ImageScaleMode&&!scaleMode.isEditHandleSelected()){filteredModes.push(translateMode)}filteredModes.filter(Boolean).forEach((mode=>mode.handleStartDragging(event,props)))}}class ImageLayer_ImageLayer extends external_deck_gl_["CompositeLayer"]{getCentroid(bounds){const poly=Object(helpers_["polygon"])([bounds]);const center=centroid_default()(poly);return center.geometry.coordinates}getBoundsColumnField(){var _this$props$bounds;return(_this$props$bounds=this.props.bounds)===null||_this$props$bounds===void 0?void 0:_this$props$bounds.field}getBounds(props,row){var _props$selectedRow,_props$selectedRow2,_props$selectedRow3;if(!this.props.bounds)return undefined;if(this.props.editable&&(_props$selectedRow=props.selectedRow)!==null&&_props$selectedRow!==void 0&&_props$selectedRow.updatingRow&&(_props$selectedRow2=props.selectedRow)!==null&&_props$selectedRow2!==void 0&&_props$selectedRow2.updatingRow._id&&((_props$selectedRow3=props.selectedRow)===null||_props$selectedRow3===void 0?void 0:_props$selectedRow3.updatingRow._id)===row._id){return props.selectedRow.updatingRow[this.getBoundsColumnField()]}return row[this.getBoundsColumnField()]}getImageColumnField(){var _this$props$image;return(_this$props$image=this.props.image)===null||_this$props$image===void 0?void 0:_this$props$image.field}getImage(props,row){if(!this.props.image)return undefined;return row[this.getImageColumnField()]}createEditLayer(id,bounds,selected,boundsColumn,index){return new external_nebula_gl_["EditableGeoJsonLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],{id:`${id}-editable`,layerId:this.props.layerId,data:spatial_src["a"].fromPlain(bounds).toFeatureCollection(),mode:ImageTransformMode_ImageTransformMode,visible:this.props.visible&&selected,pickable:true,boundsColumn,selected,selectedFeatureIndexes:[0],getFillColor:[0,0,0,0],getLineWidth:0,getLineColor:[0,0,0,0],getEditHandlePointRadius:60,onEdit:event=>{var _event$updatedData;const bounds=(_event$updatedData=event.updatedData)===null||_event$updatedData===void 0?void 0:_event$updatedData.features[0].geometry.coordinates[0];if(!bounds)return;const coordinate=this.getCentroid(bounds);const pixel=this.context.viewport.project(coordinate);return this.props.onEdit&&this.props.onEdit({layer:{props:{pickable:this.props.pickable}},layerId:this.props.layerId,rowsetId:this.props.rowsetId,index,boundsColumn,editType:event.editType,bounds,coordinate,pixel})}}))}createBitmapLayer(id,image,bounds,selected,boundsColumn,index){return new layers_["BitmapLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],{id:`${id}-image`,layerId:this.props.layerId,image:image||RasterMappings["image-placeholder"].url,bounds,boundsColumn,selected,bitmap:null,visible:this.props.visible,pickable:true,index}))}renderLayers(){var _props$rows;if(!this.props.bounds){return[]}const layers=(_props$rows=this.props.rows)===null||_props$rows===void 0?void 0:_props$rows.map(((row,index)=>{var _row$_id,_this$props$selectedR,_this$props$selectedR2,_this$props$selectedR3;const id=`${this.props.id}-${(_row$_id=row._id)!==null&&_row$_id!==void 0?_row$_id:index}`;const bounds=this.getBounds(this.props,row);const boundsColumn=this.getBoundsColumnField();const image=this.getImage(this.props,row);const selected=row._id&&this.props.layerId===((_this$props$selectedR=this.props.selectedRow)===null||_this$props$selectedR===void 0?void 0:_this$props$selectedR.layerId)&&true&&row._id===((_this$props$selectedR2=this.props.selectedRow)===null||_this$props$selectedR2===void 0?void 0:(_this$props$selectedR3=_this$props$selectedR2.updatingRow)===null||_this$props$selectedR3===void 0?void 0:_this$props$selectedR3._id);const subLayers=[];if(this.props.editable&&this.props.editing&&!this.props.dragging){subLayers.push(this.createEditLayer(id,bounds,selected,boundsColumn,index))}subLayers.push(this.createBitmapLayer(id,image,bounds,selected,boundsColumn,index));return subLayers}));return layers.flat()}}ImageLayer_ImageLayer.layerName="HoparaImageLayer";class ImageFactory_ImageFactory extends BaseFactory_BaseFactory{getTranslatedBounds(bounds,newCoordinate){const poly=Object(helpers_["polygon"])([bounds]);const center=centroid_default()(poly);const from=Object(helpers_["point"])([center.geometry.coordinates[0],center.geometry.coordinates[1]]);const to=Object(helpers_["point"])(newCoordinate);const bearing=rhumb_bearing_default()(from,to);const distance=rhumb_distance_default()(from,to);const translated=transform_translate_default()(poly,distance,bearing);return translated.geometry.coordinates[0]}create(props){var _props$encoding,_props$encoding2;const callbacks=this.getDeckLayerCallbacks(props);const deckProps=super.getDeckProps(props,{id:props.id,bounds:(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.bounds,image:(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.image,rowsetId:props.rowsetId,rows:props.rows,editing:!!props.editing,dragging:!!props.dragging,selectedRow:props.selectedRow,pickable:props.pickable,...callbacks,onHover:(info,event)=>callbacks.onHover&&callbacks.onHover({...info,index:info.sourceLayer.props.index},event),onClick:(info,event)=>callbacks.onClick&&callbacks.onClick({...info,index:info.sourceLayer.props.index},event),onDragStart:(info,event)=>{if(!info.sourceLayer.props.selected||info.sourceLayer instanceof external_nebula_gl_["EditableGeoJsonLayer"])return;return callbacks.onDragStart&&callbacks.onDragStart({...info},event)},onDrag:(info,event)=>{if(!info.sourceLayer.props.selected||!props.editing||info.sourceLayer instanceof external_nebula_gl_["EditableGeoJsonLayer"])return;const{index,bounds,boundsColumn}=info.sourceLayer.props;if(!bounds)return;const newBounds=this.getTranslatedBounds(bounds,info.coordinate);const updatedData={[boundsColumn]:newBounds};return callbacks.onDrag&&callbacks.onDrag({...info,index,updatedData},event)},onDragEnd:(info,event)=>{if(!info.sourceLayer.props.selected||!props.editing)return;const{index,bounds,boundsColumn}=info.sourceLayer.props;if(!bounds)return;const newBounds=this.getTranslatedBounds(bounds,info.coordinate);const updatedData={[boundsColumn]:newBounds};return callbacks.onDragEnd&&callbacks.onDragEnd({...info,index,updatedData},event)},onEdit:info=>{const{bounds,coordinate,boundsColumn,editType}=info;const updatedData={[boundsColumn]:bounds,_x:coordinate[0],_y:coordinate[1]};if(["translated","scaled","rotated","extruded"].indexOf(editType)>-1){return callbacks.onEditEnd&&callbacks.onEditEnd({...info,coordinate,updatedData},{})}return callbacks.onEdit&&callbacks.onEdit({...info,coordinate,updatedData},{})}});return new ImageLayer_ImageLayer(deckProps)}}var core_typed_=__webpack_require__(129);const functions=`\nvec4 hsla2rgba(vec4 hsla) {\n float h = hsla.x;\n float s = hsla.y;\n float l = hsla.z;\n float a = hsla.w;\n float c = (1.0 - abs(2.0 * l - 1.0)) * s;\n float x = c * (1.0 - abs(mod(h / 60.0, 2.0) - 1.0));\n float m = l - 0.5 * c;\n vec3 rgb;\n if (h < 60.0) {\n rgb = vec3(c, x, 0.0);\n } else if (h < 120.0) {\n rgb = vec3(x, c, 0.0);\n } else if (h < 180.0) {\n rgb = vec3(0.0, c, x);\n } else if (h < 240.0) {\n rgb = vec3(0.0, x, c);\n } else if (h < 300.0) {\n rgb = vec3(x, 0.0, c);\n } else {\n rgb = vec3(c, 0.0, x);\n }\n return vec4(rgb + m, a);\n}\n\nvec4 rgba2hsla(vec4 rgba) {\n float r = rgba.x;\n float g = rgba.y;\n float b = rgba.z;\n float a = rgba.w;\n float max = max(r, max(g, b));\n float min = min(r, min(g, b));\n float h = 0.0;\n float s = 0.0;\n float l = (max + min) / 2.0;\n float d = max - min;\n if (max != min) {\n if (max == r) {\n h = 60.0 * (g - b) / d;\n } else if (max == g) {\n h = 60.0 * (b - r) / d + 120.0;\n } else {\n h = 60.0 * (r - g) / d + 240.0;\n }\n if (l > 0.5) {\n s = d / (2.0 - max - min);\n } else {\n s = d / (max + min);\n }\n }\n return vec4(h, s, l, a);\n}\n\n// function that receives a rgba color and returns a new rgba color with lightness increased by 20%\nvec4 lighten(vec4 color, float lightness) {\n float h, s, l, a;\n vec4 hsla = rgba2hsla(color);\n h = hsla.x;\n s = hsla.y;\n l = hsla.z;\n a = hsla.w;\n l = l + lightness;\n if (l > 1.0) {\n l = 1.0;\n }\n return hsla2rgba(vec4(h, s, l, a));\n}\n`;class LineLayer_LineLayer extends layers_["PathLayer"]{initializeState(){super.initializeState({});const attributeManager=this.getAttributeManager();attributeManager.addInstanced({timestamps:{size:1,accessor:"getTimestamps",shaderAttributes:{instanceTimestamps:{vertexOffset:0},instanceNextTimestamps:{vertexOffset:1}}},isAnimated:{size:1,accessor:"getIsAnimated",shaderAttributes:{instanceIsAnimated:{vertexOffset:0}}}})}draw(opts){let uniformValues={};let animationEngine;if(this.props.animationType){animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:opts.context.timeline,animationDataList:this.props.animations,redrawFn:()=>this.setNeedsRedraw()});uniformValues=animationEngine.getUniforms()}const{jointRounded,capRounded,billboard,miterLimit,widthUnits,widthScale,widthMinPixels,widthMaxPixels}=this.props;this.state.model.setUniforms(opts.uniforms).setUniforms({jointType:Number(jointRounded),capType:Number(capRounded),billboard,widthUnits:core_typed_["UNIT"][widthUnits],widthScale,miterLimit,widthMinPixels,widthMaxPixels,segmentLength:this.props.segmentLength/this.props.speed,...uniformValues}).draw();if(animationEngine){animationEngine.render()}}getShaders(){const shaders=super.getShaders();shaders.inject={"vs:#decl":`\n uniform float segmentLength;\n attribute float instanceTimestamps;\n attribute float instanceNextTimestamps;\n attribute float instanceIsAnimated;\n varying float vTime;\n varying float segmentLengthReal;\n varying float pathLengthCommons;\n varying float pathLengthPixel;\n varying float totalTime;\n varying float isAnimated;\n `,"vs:#main-end":`\n vTime = instanceTimestamps + (instanceNextTimestamps - instanceTimestamps) * vPathPosition.y / vPathLength;\n pathLengthPixel = vPathLength;\n pathLengthCommons = project_pixel_size(vPathLength);\n totalTime = instanceNextTimestamps - instanceTimestamps;\n isAnimated = instanceIsAnimated;\n \n `,"fs:#decl":`\n uniform float currentTime;\n uniform float segmentLength;\n varying float vTime;\n varying float pathLengthCommons;\n varying float pathLengthPixel;\n varying float totalTime;\n varying float isAnimated;\n ${functions}\n \n `,"fs:DECKGL_FILTER_COLOR":`\n int currentStep = 0;\n if (isAnimated > 0.0) { \n currentStep = int((currentTime - vTime) / segmentLength);\n } else {\n currentStep = int(vTime / segmentLength);\n }\n if(segmentLength > 0.0) {\n if (mod(float(currentStep), 2.0) > 0.0) {\n vec4 rgba = lighten(vec4(color.r, color.g, color.b, color.a), 0.1);\n color.r = rgba.x;\n color.g = rgba.y;\n color.b = rgba.z;\n color.a = rgba.a;\n }\n }\n `};return shaders}}LineLayer_LineLayer.layerName="LineLayer";function maxBy(array,field){return array.reduce(((max,item)=>{if(max[field]<item[field]){return item}return max}))}function deepMax(array){let max=0;array.forEach((item=>{if(Array.isArray(item)){const candidate=deepMax(item);if(candidate>max){max=candidate}}else{if(item>max){max=item}}}));return max}var LineEncoding=__webpack_require__(61);var distance_=__webpack_require__(130);var distance_default=__webpack_require__.n(distance_);const SPEED_KM_PER_SECOND=1;const getRowDistances=(row,pathField)=>{const route=row[pathField];const distances=route.map(((_,index)=>{const point1=route[index];const point2=route[index+1];if(!point2){return}return distance_default()(point1,point2,{units:"kilometers"})})).filter((distance=>!!distance));let accDistance=0;return distances.map((distance=>{accDistance+=distance;return accDistance}))};const getTimelineData=(data,pathField)=>{if(!pathField){return{durationMs:0,timestampFn:()=>undefined}}const allDistances=data.map((row=>getRowDistances(row,pathField)));const maxDistance=deepMax(allDistances);const durationMs=1e3*(maxDistance/SPEED_KM_PER_SECOND);return{durationMs,timestampFn:row=>{const distances=getRowDistances(row,pathField);return[0,...distances.map((distance=>1e3*(distance/SPEED_KM_PER_SECOND)))]}}};class LineFactory_LineFactory extends BaseFactory_BaseFactory{create(props){var _props$encoding,_props$encoding$line,_props$encoding3,_props$encoding$line2,_props$encoding4,_props$encoding4$size,_props$encoding5,_props$encoding$line3,_props$encoding$color,_props$encoding$color2,_props$encoding6,_props$encoding6$size;const pathField=(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:(_props$encoding$line=_props$encoding.line)===null||_props$encoding$line===void 0?void 0:_props$encoding$line.field;const data=super.getRows(props);const timelineData=getTimelineData(data,pathField);const deckProps=super.getDeckProps(props,{id:props.id,layerId:props.layerId,data,getPath:row=>pathField?row[pathField]:undefined,getIsAnimated:row=>{var _props$encoding2,_props$encoding2$colo,_props$encoding2$colo2;const animationField=(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:(_props$encoding2$colo=_props$encoding2.color)===null||_props$encoding2$colo===void 0?void 0:(_props$encoding2$colo2=_props$encoding2$colo.animation)===null||_props$encoding2$colo2===void 0?void 0:_props$encoding2$colo2.field;if(!animationField){return[1]}return row[animationField]?[1]:[0]},getColor:this.getColorAccessor(props.columns,(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.color,props.rows,props.visibleRows),capRounded:((_props$encoding$line2=props.encoding.line)===null||_props$encoding$line2===void 0?void 0:_props$encoding$line2.cap)===LineEncoding["a"].ROUND,jointRounded:true,widthUnits:(_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$size=_props$encoding4.size)===null||_props$encoding4$size===void 0?void 0:_props$encoding4$size.getUnits(),getWidth:super.getSizeAccessor({encoding:(_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:_props$encoding5.size,factor:.5,visibleRows:props.visibleRows,columns:props.columns}),speed:SPEED_KM_PER_SECOND,segmentLength:(_props$encoding$line3=props.encoding.line)===null||_props$encoding$line3===void 0?void 0:_props$encoding$line3.segmentLength,updateTrigger:{getColor:super.getColorUpdateTrigger(props.encoding.color,props.visibleRows),getWidth:super.getSizeUpdateTrigger(props.encoding.size),getPath:super.getPositionUpdateTrigger(props.encoding.position,props.editing)},pickable:true,getTimestamps:timelineData.timestampFn,animationType:(_props$encoding$color=props.encoding.color)===null||_props$encoding$color===void 0?void 0:(_props$encoding$color2=_props$encoding$color.animation)===null||_props$encoding$color2===void 0?void 0:_props$encoding$color2.type,animations:[{channel:{duration:timelineData.durationMs,repeat:Number.POSITIVE_INFINITY},keyFrames:{"0%":{currentTime:0},"100%":{currentTime:timelineData.durationMs}}}],...super.getDeckLayerCallbacks(props)});if((_props$encoding6=props.encoding)!==null&&_props$encoding6!==void 0&&(_props$encoding6$size=_props$encoding6.size)!==null&&_props$encoding6$size!==void 0&&_props$encoding6$size.isCommon()){var _props$encoding7,_props$encoding7$size,_props$encoding8,_props$encoding8$size;deckProps.widthMinPixels=(_props$encoding7=props.encoding)===null||_props$encoding7===void 0?void 0:(_props$encoding7$size=_props$encoding7.size)===null||_props$encoding7$size===void 0?void 0:_props$encoding7$size.getMinPixels();deckProps.widthMaxPixels=(_props$encoding8=props.encoding)===null||_props$encoding8===void 0?void 0:(_props$encoding8$size=_props$encoding8.size)===null||_props$encoding8$size===void 0?void 0:_props$encoding8$size.getMaxPixels()}return new LineLayer_LineLayer(Object(fp_["omitBy"])(fp_["isUndefined"],deckProps))}}class RowTranslator{constructor(rows,fieldName){this.rows=void 0;this.fieldName=void 0;this.rows=rows;this.fieldName=fieldName}translate(field){return this.rows.find((row=>row[this.fieldName]===field))}}const layerIdEtagDict={};const etagChanged=props=>{var _props$rows2;if(!layerIdEtagDict[props.layerId]){var _props$rows;layerIdEtagDict[props.layerId]=(_props$rows=props.rows)===null||_props$rows===void 0?void 0:_props$rows.etag;return true}if(layerIdEtagDict[props.layerId]!==((_props$rows2=props.rows)===null||_props$rows2===void 0?void 0:_props$rows2.etag)){var _props$rows3;layerIdEtagDict[props.layerId]=(_props$rows3=props.rows)===null||_props$rows3===void 0?void 0:_props$rows3.etag;return true}return false};function decorateTransitionProps(viewLayerProps,deckProps,colorAccessorName){var _deckProps$updateTrig;const props={...deckProps,id:deckProps.id,[colorAccessorName]:row=>{var _ref;const accessor=deckProps[colorAccessorName];let color=(_ref=typeof accessor==="function"?accessor(row):accessor)!==null&&_ref!==void 0?_ref:[0,0,0,0];if(!deckProps.visible){color=[color[0],color[1],color[2],0]}return color},updateTriggers:{...deckProps.updateTriggers,[colorAccessorName]:[...(_deckProps$updateTrig=deckProps.updateTriggers[colorAccessorName])!==null&&_deckProps$updateTrig!==void 0?_deckProps$updateTrig:[],deckProps.visible]},pickable:deckProps.visible?deckProps.pickable:false,visible:true};if(etagChanged(viewLayerProps)){return props}return Object(fp_["omitBy"])(fp_["isUndefined"],{...props,transitions:{[colorAccessorName]:{duration:300}}})}const GL={LINE_STRIP:3,TRIANGLE_FAN:6};const getSolidPolygonLayerClass=animationDataList=>class AnimatedSolidPolygonLayer extends layers_["SolidPolygonLayer"]{draw(opts){const animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:opts.context.timeline,animationDataList,redrawFn:()=>{this.setNeedsRedraw()}});const uniformValues=animationEngine.getUniforms();const{extruded,filled,wireframe,elevationScale}=this.props;const{topModel,sideModel,polygonTesselator}=this.state;const renderUniforms={...opts.uniforms,extruded:Boolean(extruded),elevationScale,...uniformValues};if(sideModel){sideModel.setInstanceCount(polygonTesselator.instanceCount-1);sideModel.setUniforms(renderUniforms);if(wireframe){sideModel.setDrawMode(GL.LINE_STRIP);sideModel.setUniforms({isWireframe:true}).draw()}if(filled){sideModel.setDrawMode(GL.TRIANGLE_FAN);sideModel.setUniforms({isWireframe:false}).draw()}}if(topModel){topModel.setVertexCount(polygonTesselator.vertexCount);topModel.setUniforms(renderUniforms).draw()}animationEngine.render()}};class AnimatedPolygonLayer_AnimatedGeoJsonLayer extends layers_["GeoJsonLayer"]{getSubLayerClass(subLayerId,DefaultLayerClass){const{_subLayerProps:overridingProps}=this.props;const geoJsonProps=this.props;const AnimatedSolidPolygonLayer=getSolidPolygonLayerClass(geoJsonProps.animations);return overridingProps&&overridingProps[subLayerId]&&overridingProps[subLayerId].type||AnimatedSolidPolygonLayer}}AnimatedPolygonLayer_AnimatedGeoJsonLayer.layerName="AnimatedGeoJsonLayer";class AnimatedPolygonLayer_AnimatedPolygonLayer extends layers_["PolygonLayer"]{getSubLayerClass(subLayerId,DefaultLayerClass){const{_subLayerProps:overridingProps}=this.props;const geoJsonProps=this.props;const AnimatedSolidPolygonLayer=getSolidPolygonLayerClass(geoJsonProps.animations);return overridingProps&&overridingProps[subLayerId]&&overridingProps[subLayerId].type||AnimatedSolidPolygonLayer}}AnimatedPolygonLayer_AnimatedPolygonLayer.layerName="AnimatedPolygonLayer";const animatedGeoJsonLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["GeoJsonLayer"],AnimatedPolygonLayer_AnimatedGeoJsonLayer);const animatedPolygonLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["PolygonLayer"],AnimatedPolygonLayer_AnimatedPolygonLayer);class PolygonFactory_PolygonFactory extends StrokableFactory_StrokableFactory{getRowTranslator(rows,encoding,columns){var _encoding$polygon;if((_encoding$polygon=encoding.polygon)!==null&&_encoding$polygon!==void 0&&_encoding$polygon.isGeoJson(columns)){return new RowTranslator(rows,encoding.polygon.field)}}getColorProps(color,rows,visibleRows,columns,rowTranslator){if(color){const colorAccessor=super.getColorAccessor(columns,color,rows,visibleRows,rowTranslator);return{filled:true,getFillColor:colorAccessor}}else{return{filled:false,pickable:false}}}getData(rows,encoding,columns){if(encoding.polygon&&encoding.polygon.isGeoJson(columns)){const field=encoding.polygon.field;if(rows){return rows.map((row=>row[field]))}}return rows}getPolygon(polygonEncoding){return row=>Object(fp_["isArray"])(row[polygonEncoding.field])?row[polygonEncoding.field]:[]}getLayerProps(props){var _props$encoding,_props$encoding2,_props$encoding3,_props$encoding4,_props$encoding5;const rowTranslator=this.getRowTranslator(props.rows,props.encoding,props.columns);return{id:props.id,layerId:props.layerId,pickable:props.pickable,updateTriggers:{getFillColor:super.getColorUpdateTrigger((_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.color,props.visibleRows),getLineColor:super.getColorUpdateTrigger((_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.strokeColor,props.visibleRows),getLineWidth:super.getSizeUpdateTrigger((_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.strokeSize),getPosition:super.getPositionUpdateTrigger(props.encoding.position,props.editing)},data:this.getData(props.rows,props.encoding,props.columns),...this.getColorProps((_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:_props$encoding4.color,props.rows,props.visibleRows,props.columns,rowTranslator),...this.getStrokeSizeProps(props.visibleRows,props.columns,props.encoding.strokeSize,rowTranslator),...this.getColorStrokeProps((_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:_props$encoding5.strokeColor,props.rows,props.visibleRows,props.columns,rowTranslator),...super.getDeckLayerCallbacks(props)}}doCreate(props){var _props$encoding$polyg;const layerProps=this.getLayerProps(props);if((_props$encoding$polyg=props.encoding.polygon)!==null&&_props$encoding$polyg!==void 0&&_props$encoding$polyg.isGeoJson(props.columns)){const deckProps=super.getDeckProps(props,layerProps);const decoratedDeckProps=decorateTransitionProps(props,deckProps,"getFillColor");if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return animatedGeoJsonLayerFactory.create(props.encoding,decoratedDeckProps,super.getDeckLayerCallbacks(props))}else{return new layers_["GeoJsonLayer"](decoratedDeckProps)}}const deckProps=super.getDeckProps(props,{...layerProps,getPolygon:this.getPolygon(props.encoding.polygon)});const decoratedDeckProps=decorateTransitionProps(props,deckProps,"getFillColor");if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return animatedPolygonLayerFactory.create(props.encoding,decoratedDeckProps,super.getDeckLayerCallbacks(props))}return new layers_["PolygonLayer"](decoratedDeckProps)}parseContent(row,polygonEncoding){const fieldContent=row[polygonEncoding.field];if(typeof fieldContent==="string"){try{return JSON.parse(fieldContent)}catch{}}return fieldContent}create(props){for(const row of(_props$rows=props.rows)!==null&&_props$rows!==void 0?_props$rows:[]){var _props$rows,_props$encoding$polyg2;const field=(_props$encoding$polyg2=props.encoding.polygon)===null||_props$encoding$polyg2===void 0?void 0:_props$encoding$polyg2.field;if(field)row[field]=this.parseContent(row,props.encoding.polygon)}return this.doCreate(props)}}class CommonOffsetExtension_CommonOffsetExtension extends core_["LayerExtension"]{getShaders(){return{...super.getShaders(null),inject:{"vs:#decl":`\n uniform float offsetMinPixels;\n uniform float offsetMaxPixels;\n uniform float offsetCommons;\n `,"vs:DECKGL_FILTER_GL_POSITION":`\n float common_y = offsetCommons * project_size();\n float pixel_y = project_size_to_pixel(common_y, UNIT_COMMON);\n pixel_y = clamp(pixel_y, offsetMinPixels, offsetMaxPixels);\n vec2 clipspace_pos = project_pixel_size_to_clipspace(vec2(1.0, pixel_y));\n position.y -= clipspace_pos.y;\n `}}}updateState(params){if(!params||!params.props)return;const{offsetMinPixels=0,offsetMaxPixels=Number.MAX_SAFE_INTEGER,offsetCommons=0}=params.props;const models=this.getModels();for(const model of models){model.setUniforms({offsetMinPixels,offsetMaxPixels,offsetCommons})}}getSubLayerProps(){if(!this.props)return;const{offsetMinPixels=0,offsetMaxPixels=Number.MAX_SAFE_INTEGER,offsetCommons=0}=this.props;return{offsetMinPixels,offsetMaxPixels,offsetCommons}}}const MAX_TEXT_LENGTH=32;const getSpecialChars=()=>{const charNumbers=[...Array(256).keys(),8722];return charNumbers.map((charCode=>String.fromCharCode(charCode)))};const characterSet=getSpecialChars();const extensions=[new CommonOffsetExtension_CommonOffsetExtension];const fontSettings={fontSize:50};class TextFactory_TextFactory extends BaseFactory_BaseFactory{constructor(){super(...arguments);this.getText=text=>row=>{const value=text.getValue(row);if(value){return value.toString().substring(0,MAX_TEXT_LENGTH)}return""}}create(props){var _props$encoding,_props$encoding2,_props$encoding3,_props$encoding4,_props$encoding4$size,_props$encoding5,_props$encoding5$size,_props$encoding6,_props$encoding6$size,_props$encoding$offse,_props$encoding7,_props$encoding7$offs,_props$encoding7$offs2,_props$encoding$offse2,_props$encoding8,_props$encoding8$offs,_props$encoding8$offs2,_props$encoding9,_props$encoding9$offs,_props$encoding9$offs2;const textEncoding=(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.text;const colorAccessor=super.getColorAccessor(props.columns,(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.color,props.rows,props.visibleRows);const sizeAccessor=super.getSizeAccessor({encoding:(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.size,visibleRows:props.visibleRows,columns:props.columns});const deckProps=super.getDeckProps(props,{id:props.id,pickable:props.pickable,data:super.getRows(props),getText:this.getText(textEncoding),characterSet,sizeUnits:((_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$size=_props$encoding4.size)===null||_props$encoding4$size===void 0?void 0:_props$encoding4$size.getUnits())||"pixels",getAngle:textEncoding.getAngle(),getTextAnchor:textEncoding.getAnchor(),getPosition:super.getPositionAccessor(props),getSize:sizeAccessor,sizeMaxPixels:((_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:(_props$encoding5$size=_props$encoding5.size)===null||_props$encoding5$size===void 0?void 0:_props$encoding5$size.getMaxPixels())||Number.MAX_SAFE_INTEGER,sizeMinPixels:((_props$encoding6=props.encoding)===null||_props$encoding6===void 0?void 0:(_props$encoding6$size=_props$encoding6.size)===null||_props$encoding6$size===void 0?void 0:_props$encoding6$size.getMinPixels())||textEncoding.getMinPossibleSize(),offsetMinPixels:(_props$encoding$offse=(_props$encoding7=props.encoding)===null||_props$encoding7===void 0?void 0:(_props$encoding7$offs=_props$encoding7.offset)===null||_props$encoding7$offs===void 0?void 0:(_props$encoding7$offs2=_props$encoding7$offs.y)===null||_props$encoding7$offs2===void 0?void 0:_props$encoding7$offs2.getMinPixels())!==null&&_props$encoding$offse!==void 0?_props$encoding$offse:0,offsetMaxPixels:(_props$encoding$offse2=(_props$encoding8=props.encoding)===null||_props$encoding8===void 0?void 0:(_props$encoding8$offs=_props$encoding8.offset)===null||_props$encoding8$offs===void 0?void 0:(_props$encoding8$offs2=_props$encoding8$offs.y)===null||_props$encoding8$offs2===void 0?void 0:_props$encoding8$offs2.getMaxPixels())!==null&&_props$encoding$offse2!==void 0?_props$encoding$offse2:0,extensions,getColor:colorAccessor,updateTriggers:{getColor:super.getColorUpdateTrigger(props.encoding.color,props.visibleRows),getSize:super.getSizeUpdateTrigger(props.encoding.size),getPosition:super.getPositionUpdateTrigger(props.encoding.position,props.editing)},fontFamily:"Arial",fontSettings,...super.getDeckLayerCallbacks(props)});if((_props$encoding9=props.encoding)!==null&&_props$encoding9!==void 0&&(_props$encoding9$offs=_props$encoding9.offset)!==null&&_props$encoding9$offs!==void 0&&(_props$encoding9$offs2=_props$encoding9$offs.y)!==null&&_props$encoding9$offs2!==void 0&&_props$encoding9$offs2.isCommon()){var _props$encoding10,_props$encoding10$off,_props$encoding10$off2;deckProps.offsetCommons=(_props$encoding10=props.encoding)===null||_props$encoding10===void 0?void 0:(_props$encoding10$off=_props$encoding10.offset)===null||_props$encoding10$off===void 0?void 0:(_props$encoding10$off2=_props$encoding10$off.y)===null||_props$encoding10$off2===void 0?void 0:_props$encoding10$off2.getSize()}else{var _props$encoding$offse3,_props$encoding11,_props$encoding11$off,_props$encoding11$off2;deckProps.getPixelOffset=[0,(_props$encoding$offse3=(_props$encoding11=props.encoding)===null||_props$encoding11===void 0?void 0:(_props$encoding11$off=_props$encoding11.offset)===null||_props$encoding11$off===void 0?void 0:(_props$encoding11$off2=_props$encoding11$off.y)===null||_props$encoding11$off2===void 0?void 0:_props$encoding11$off2.value)!==null&&_props$encoding$offse3!==void 0?_props$encoding$offse3:0]}return new layers_["TextLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],deckProps))}}var external_vega_=__webpack_require__(20);var external_vega_lite_=__webpack_require__(83);var memoize_src=__webpack_require__(78);function getDeckProps(id,data,cacheKey,dataComparator){return{id,data,dataComparator:()=>dataComparator.isEqual(id,{cacheKey})}}function newVegaLineLayer(id,data,cacheKey,dataComparator){return new layers_["LineLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),widthUnits:"pixels",getColor:o=>o.color,getWidth:o=>o.strokeWidth})}const getCharacterSet=()=>{const charNumbers=[...Array(256).keys(),8722];return charNumbers.map((charCode=>String.fromCharCode(charCode)))};const VegaTextLayerFactory_characterSet=getCharacterSet();const VegaTextLayerFactory_fontSettings={sdf:false,fontSize:128,buffer:3};const _subLayerProps={characters:{alphaCutoff:.1}};function newVegaTextLayer(id,data,cacheKey,dataComparator){return new layers_["TextLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),characterSet:VegaTextLayerFactory_characterSet,sizeUnits:"pixels",autoHighlight:true,pickable:true,fontFamily:"Arial",fontSettings:VegaTextLayerFactory_fontSettings,getColor:o=>o.color,getTextAnchor:o=>o.textAnchor,getSize:o=>o.size,getAngle:o=>o.angle,_subLayerProps})}function newVegaPathLayer(id,data,cacheKey,dataComparator){if(!data)return null;return new layers_["PathLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),widthScale:1,widthMinPixels:2,widthUnits:"pixels",getPath:o=>o.positions,getColor:o=>o.strokeColor,getWidth:o=>o.strokeWidth})}function newVegaPolygonLayer(id,data,cacheKey,dataComparator){if(!data)return null;const newlayer=new layers_["PolygonLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),getPolygon:o=>o.positions,getFillColor:o=>o.fillColor,getLineColor:o=>o.strokeColor,wireframe:false,filled:true,stroked:true,pickable:true,extruded:true,getElevation:o=>o.depth,getLineWidth:o=>o.strokeWidth});return newlayer}function newVegaCircleLayer(id,data,cacheKey,dataComparator){return new layers_["ScatterplotLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),stroked:true,filled:true,pickable:true,radiusUnits:"pixels",getFillColor:o=>o.color,getLineColor:o=>o.strokeColor,getLineWidth:o=>o.strokeWidth,getPosition:o=>o.position,getRadius:o=>o.size})}const layerNames={lines:"VEGA_LAYER_LINES",text:"VEGA_LAYER_TEXT",paths:"VEGA_LAYER_PATHS",polygons:"VEGA_LAYER_POLYGONS",circles:"VEGA_LAYER_CIRCLES"};function getFacetLayers(stage,cacheKey,dataComparator,guideLines){if(!stage.facets)return[];const lines=guideLines!==null&&guideLines!==void 0&&guideLines.length?guideLines:[];stage.facets.forEach((f=>{if(f.lines)lines.push.apply(lines,f.lines)}));const facetLineLayer=newVegaLineLayer("FACET_"+layerNames.lines,lines,cacheKey,dataComparator);return[facetLineLayer]}function getAxesDomainLayers(stage,cacheKey,dataComparator){const{x,y,z}=stage.axes;return[x,y,z].map(((axes,i)=>{const lines=[];const texts=[];const role=i===0?"X":i===1?"Y":"Z";axes.forEach((axis=>{if(axis.domain)lines.push(axis.domain);if(axis.title)texts.push(axis.title)}));const layerPrefix="AXIS_"+role+"_DOMAIN_";const lineLayer=newVegaLineLayer(layerPrefix+layerNames.lines,lines,cacheKey,dataComparator);const textLayer=newVegaTextLayer(layerPrefix+layerNames.text,texts,cacheKey,dataComparator);return[textLayer,lineLayer]}))}function getAxesTicksLayers(stage,cacheKey,dataComparator){const{x,y,z}=stage.axes;return[x,y,z].map(((axes,i)=>{const lines=[];const texts=[];const gridLines=[];const role=i===0?"X":i===1?"Y":"Z";axes.forEach((axis=>{var _stage$gridLines;if((_stage$gridLines=stage.gridLines)!==null&&_stage$gridLines!==void 0&&_stage$gridLines.length){var _stage$gridLines2;const filtereds=(_stage$gridLines2=stage.gridLines)===null||_stage$gridLines2===void 0?void 0:_stage$gridLines2.filter((line=>line.role===axis.role));filtereds.forEach((gridLine=>gridLines.push(gridLine)))}if(axis.ticks)axis.ticks.forEach((tickLine=>lines.push(tickLine)));if(axis.tickText)axis.tickText.forEach((text=>texts.push(text)))}));const layerPrefix="AXIS_"+role+"_TICKS_";const lineLayer=newVegaLineLayer(layerPrefix+layerNames.lines,lines,cacheKey,dataComparator);const gridLineLayer=newVegaLineLayer(layerPrefix+"GRID_"+layerNames.lines,gridLines,cacheKey,dataComparator);const textLayer=newVegaTextLayer(layerPrefix+layerNames.text,texts,cacheKey,dataComparator);return[textLayer,lineLayer,gridLineLayer]}))}function getChartLayers(stage,cacheKey,dataComparator){const textLayer=newVegaTextLayer(layerNames.text,stage.text,cacheKey,dataComparator);const pathLayer=newVegaPathLayer(layerNames.paths,stage.path,cacheKey,dataComparator);const polygonLayer=newVegaPolygonLayer(layerNames.polygons,stage.polygon,cacheKey,dataComparator);const circleLayer=newVegaCircleLayer(layerNames.circles,stage.circle,cacheKey,dataComparator);return[textLayer,pathLayer,polygonLayer,circleLayer]}const legendMap={"legend-title":(legend,textItem)=>{legend.title=textItem.text},"legend-symbol"(legend,symbol){const{bounds,fill,shape}=symbol;const legendRowSymbol={bounds,fill,shape};const i=symbol.datum.index;legend.rows[i]=legend.rows[i]||{};legend.rows[i].symbol=legendRowSymbol},"legend-label"(legend,label){const i=label.datum.index;legend.rows[i]=legend.rows[i]||{};const row=legend.rows[i];row.label=label.text;row.value=label.datum.value}};const markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){var _item$mark;const fn=legendMap[(_item$mark=item.mark)===null||_item$mark===void 0?void 0:_item$mark.role];if(fn){fn(stage.legend,item)}else{}}))};var legend=markStager;var Colors=__webpack_require__(18);const min3dDepth=.05;const rect_markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){const z=item.z||0;const depth=(item.depth||0)+min3dDepth;const ty=options.projection&&options.projection.flipY===false?1:-1;const ordinal=options.assignCubeOrdinal(item.datum);if(ordinal!==undefined&&ordinal>options.maxOrdinal){options.maxOrdinal=ordinal}if(ordinal===undefined){}else{var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;const cube={ordinal,size:[item.width,item.height,depth],position:[x+Math.round(item.x||0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*(y+Math.round(item.y||0))-item.height+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),z],color:item.fill&&item.fill!=="transparent"&&Object(Colors["a"])(item.fill,item.opacity)||options.defaultCubeColor||[128,128,128,128]};cube.color[3]=item.opacity===undefined?255:255*item.opacity;if(stage.cube){stage.cube.push(cube)}}}))};var rect=rect_markStager;function zSwap(v3){const temp=-v3[1];if(v3[0]===-1){v3[0]=0}if(v3[2]){v3[1]=v3[2];v3[2]=temp}}const lineZ=-1;function styledLine(options,x1,y1,x2,y2,stroke,strokeWidth,role){var _options$projection$x,_options$projection,_options$projection$y,_options$projection2,_options$projection$x2,_options$projection3,_options$projection$y2,_options$projection4;const ty=options.projection&&options.projection.flipY===false?1:-1;const line={sourcePosition:[x1+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),y1*ty+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),lineZ],targetPosition:[x2+((_options$projection$x2=(_options$projection3=options.projection)===null||_options$projection3===void 0?void 0:_options$projection3.xOffset)!==null&&_options$projection$x2!==void 0?_options$projection$x2:0),y2*ty+((_options$projection$y2=(_options$projection4=options.projection)===null||_options$projection4===void 0?void 0:_options$projection4.yOffset)!==null&&_options$projection$y2!==void 0?_options$projection$y2:0),lineZ],color:Object(Colors["a"])(stroke),strokeWidth,role};return line}const rule_markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){const x1=item.x||0;const y1=item.y||0;const x2=item.x2!=null?item.x2:x1;const y2=item.y2!=null?item.y2:y1;const lineItem=styledLine(options,x1,y1+y,x2,y2+y,item.stroke,item.strokeWidth,options.currAxis.role);if(item.mark.role==="axis-tick"){if(options.currAxis.role==="z"){zSwap(lineItem.sourcePosition);zSwap(lineItem.targetPosition)}options.currAxis.ticks.push(lineItem)}else if(item.mark.role==="axis-domain"){if(options.currAxis.role==="z"){zSwap(lineItem.sourcePosition);zSwap(lineItem.targetPosition)}options.currAxis.domain=lineItem}else if(stage.gridLines){stage.gridLines.push(lineItem)}}))};function box(options,gx,gy,height,width,stroke,strokeWidth){let diagonals=arguments.length>7&&arguments[7]!==undefined?arguments[7]:false;const lines=[styledLine(options,gx,gy,gx+width,gy,stroke,strokeWidth),styledLine(options,gx+width,gy,gx+width,gy+height,stroke,strokeWidth),styledLine(options,gx+width,gy+height,gx,gy+height,stroke,strokeWidth),styledLine(options,gx,gy+height,gx,gy,stroke,strokeWidth)];if(diagonals){lines.push(styledLine(options,gx,gy,gx+width,gy+height,stroke,strokeWidth));lines.push(styledLine(options,gx,gy+height,gx+width,gy,stroke,strokeWidth))}return lines}var rule=rule_markStager;const line_markStager=(options,stage,scene,x,y,groupType)=>{const ty=options.projection&&options.projection.flipY===false?1:-1;const g={opacity:1,strokeOpacity:1,strokeWidth:1,...scene.items[0]};const path={strokeWidth:g.strokeWidth,strokeColor:g.stroke&&g.stroke!=="transparent"?Object(Colors["a"])(g.stroke,g.opacity):[0,0,0,0],positions:scene.items.map((it=>{var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;return[it.x+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*it.y+ +((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),it.z||0]}))};if(path.strokeColor[3]){path.strokeColor[3]*=g.strokeOpacity;path.strokeColor[3]*=g.opacity}if(stage.path){stage.path.push(path)}};var marks_line=line_markStager;function convertAngle(vegaTextAngle){if(vegaTextAngle&&!isNaN(vegaTextAngle)){return 360-vegaTextAngle}return 0}function convertAlignment(textAlign){switch(textAlign){case"center":return"middle";case"left":return"start";case"right":return"end"}return"start"}function convertBaseline(baseline){switch(baseline){case"middle":return"center"}return baseline||"bottom"}const text_markStager=(options,stage,scene,x,y,groupType)=>{const fontScale=1;const ty=options.projection&&options.projection.flipY===false?1:-1;external_vega_["sceneVisit"](scene,(function(item){var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;if(!item.text)return;const size=item.fontSize*fontScale;const alignmentBaseline=convertBaseline(item.baseline);const yOffset=alignmentBaseline==="top"?item.fontSize/2:0;const textItem={color:item.fill&&item.fill!=="transparent"?Object(Colors["a"])(item.fill,item.opacity):[0,0,0,0],text:item.limit===undefined?item.text:external_vega_["truncate"](item.text,item.limit,"right",item.ellipsis||"..."),position:[x+(item.x||0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*(y+(item.y||0)+yOffset)+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),0],size,angle:convertAngle(item.angle),textAnchor:convertAlignment(item.align),alignmentBaseline,metaData:item.metaData};if(item.mark.role==="axis-label"){const tickText=textItem;tickText.value=item.datum.value;if(options.currAxis.role==="x"){var _options$projection$x2,_options$projection3;textItem.position[0]=(item.x||0)+((_options$projection$x2=(_options$projection3=options.projection)===null||_options$projection3===void 0?void 0:_options$projection3.xOffset)!==null&&_options$projection$x2!==void 0?_options$projection$x2:0)}else if(options.currAxis.role==="y"){var _options$projection$y2,_options$projection4;textItem.position[1]=ty*((item.y||0)+yOffset)+((_options$projection$y2=(_options$projection4=options.projection)===null||_options$projection4===void 0?void 0:_options$projection4.yOffset)!==null&&_options$projection$y2!==void 0?_options$projection$y2:0)}else if(options.currAxis.role==="z"){zSwap(tickText.position)}options.currAxis.tickText.push(tickText)}else if(item.mark.role==="axis-title"){if(options.currAxis.role==="y"){textItem.position[0]=textItem.position[0]-6}else if(options.currAxis.role==="x"){textItem.position[1]=textItem.position[1]-6}else if(options.currAxis.role==="z"){zSwap(textItem.position)}options.currAxis.title=textItem}else if(stage.text){stage.text.push(textItem)}}))};var marks_text=text_markStager;const area_markStager=(options,stage,scene,x,y,groupType)=>{const ty=options.projection&&options.projection.flipY===false?1:-1;const g={fillOpacity:1,opacity:1,strokeOpacity:1,strokeWidth:0,depth:0,...scene.items[0]};const points=scene.items.map((groupItem=>{var _item$x,_options$projection$x,_options$projection,_item$y,_options$projection$y,_options$projection2,_item$x2,_options$projection$x2,_options$projection3,_item$y2,_options$projection$y2,_options$projection4;const item={z:0,x2:groupItem.x,y2:groupItem.y,z2:groupItem.z,...groupItem};return[((_item$x=item.x)!==null&&_item$x!==void 0?_item$x:0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*((_item$y=item.y)!==null&&_item$y!==void 0?_item$y:0)+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),item.z,((_item$x2=item.x2)!==null&&_item$x2!==void 0?_item$x2:0)+((_options$projection$x2=(_options$projection3=options.projection)===null||_options$projection3===void 0?void 0:_options$projection3.xOffset)!==null&&_options$projection$x2!==void 0?_options$projection$x2:0),ty*((_item$y2=item.y2)!==null&&_item$y2!==void 0?_item$y2:0)+((_options$projection$y2=(_options$projection4=options.projection)===null||_options$projection4===void 0?void 0:_options$projection4.yOffset)!==null&&_options$projection$y2!==void 0?_options$projection$y2:0),item.z2]}));const positions=[];const startpoint=[points[0][0],points[0][1],points[0][2]];points.forEach((p=>{positions.push([p[0],p[1],p[2]])}));points.reverse().forEach((p=>{positions.push([p[3],p[4],p[5]])}));positions.push(startpoint);const polygon={fillColor:g.fill&&g.fill!=="transparent"?Object(Colors["a"])(g.fill,g.opacity):[0,0,0,0],positions,strokeColor:g.stroke&&g.stroke!=="transparent"?Object(Colors["a"])(g.stroke):[0,0,0,0],strokeWidth:g.strokeWidth,depth:g.depth};if(polygon.fillColor[3]){polygon.fillColor[3]*=g.fillOpacity;polygon.fillColor[3]*=g.opacity}if(polygon.strokeColor[3]){polygon.strokeColor[3]*=g.strokeOpacity;polygon.strokeColor[3]*=g.opacity}if(stage.polygon){stage.polygon.push(polygon)}};var marks_area=area_markStager;const symbol_markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){const z=item.z||0;const ty=options.projection&&options.projection.flipY===false?1:-1;if(item.shape==="circle"&&stage.circle){var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;const circle={size:item.size,position:[x+Math.round(item.x||0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*(y+Math.round(item.y||0))+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),z],color:item.fill&&item.fill!=="transparent"?Object(Colors["a"])(item.fill,item.opacity):[0,0,0,0],strokeWidth:item.strokeWidth,strokeColor:item.stroke&&item.stroke!=="transparent"?Object(Colors["a"])(item.stroke,item.opacity):[0,0,0,0]};stage.circle.push(circle)}}))};var symbol=symbol_markStager;let GroupType;(function(GroupType){GroupType[GroupType["none"]=0]="none";GroupType[GroupType["legend"]=1]="legend";GroupType[GroupType["xAxis"]=2]="xAxis";GroupType[GroupType["yAxis"]=3]="yAxis";GroupType[GroupType["zAxis"]=4]="zAxis"})(GroupType||(GroupType={}));function getOrientItem(group){if(group.orient){return group}return group.datum}function setCurrentAxis(options,stage,groupType){var _stage$axes$x,_stage$axes,_stage$axes$y,_stage$axes2,_stage$axes$z,_stage$axes3;let axes;let role;switch(groupType){case GroupType.xAxis:axes=(_stage$axes$x=(_stage$axes=stage.axes)===null||_stage$axes===void 0?void 0:_stage$axes.x)!==null&&_stage$axes$x!==void 0?_stage$axes$x:[];role="x";break;case GroupType.yAxis:axes=(_stage$axes$y=(_stage$axes2=stage.axes)===null||_stage$axes2===void 0?void 0:_stage$axes2.y)!==null&&_stage$axes$y!==void 0?_stage$axes$y:[];role="y";break;case GroupType.zAxis:axes=(_stage$axes$z=(_stage$axes3=stage.axes)===null||_stage$axes3===void 0?void 0:_stage$axes3.z)!==null&&_stage$axes$z!==void 0?_stage$axes$z:[];role="z";break;default:return}options.currAxis={domain:null,tickText:[],ticks:[],role};axes.push(options.currAxis)}function convertGroupRole(group,options){if(group.mark.role==="legend")return GroupType.legend;if(group.mark.role==="axis"){if(group.mark.zindex===options.zAxisZindex&&options.zAxisZindex!==undefined){return GroupType.zAxis}const orientItem=getOrientItem(group);if(orientItem){switch(orientItem.orient){case"bottom":case"top":return GroupType.xAxis;case"left":case"right":return GroupType.yAxis}}}}const SceneToStage_group=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(g){const gx=g.x||0;const gy=g.y||0;if(g.context&&g.context.background&&!stage.backgroundColor){stage.backgroundColor=Object(Colors["a"])(g.context.background)}if(g.stroke&&stage.facets){const facetRect={datum:g.datum,lines:box(options,gx+x,gy+y,g.height,g.width,g.stroke,1)};stage.facets.push(facetRect)}groupType=convertGroupRole(g,options)||groupType;setCurrentAxis(options,stage,groupType);external_vega_["sceneVisit"](g,(function(item){mainStager(options,stage,item,gx+x,gy+y,groupType)}))}))};const markStagers={group:SceneToStage_group,legend,rect,rule,line:marks_line,area:marks_area,text:marks_text,symbol};const mainStager=(options,stage,scene,x,y,groupType)=>{if(scene.marktype!=="group"&&groupType===GroupType.legend){legend(options,stage,scene,x,y,groupType)}else if(markStagers[scene.marktype]){markStagers[scene.marktype](options,stage,scene,x,y,groupType)}};function orderDomain(domain,dim){if(domain.sourcePosition[dim]>domain.targetPosition[dim]){const temp=domain.targetPosition;domain.targetPosition=domain.sourcePosition;domain.sourcePosition=temp}}function sortAxis(axes,dim){axes.forEach((axis=>{if(axis.domain)orderDomain(axis.domain,dim);axis.ticks.sort(((a,b)=>a.sourcePosition[dim]-b.sourcePosition[dim]));axis.tickText.sort(((a,b)=>a.position[dim]-b.position[dim]))}))}function sceneToStage(options,scene){var _stage$axes$x2,_stage$axes4,_stage$axes$y2,_stage$axes5;const stage={circle:[],cube:[],path:[],polygon:[],axes:{x:[],y:[],z:[]},gridLines:[],text:[],legend:{rows:{}},facets:[]};mainStager(options,stage,scene,0,0);sortAxis((_stage$axes$x2=(_stage$axes4=stage.axes)===null||_stage$axes4===void 0?void 0:_stage$axes4.x)!==null&&_stage$axes$x2!==void 0?_stage$axes$x2:[],0);sortAxis((_stage$axes$y2=(_stage$axes5=stage.axes)===null||_stage$axes5===void 0?void 0:_stage$axes5.y)!==null&&_stage$axes$y2!==void 0?_stage$axes$y2:[],1);return stage}var Visualization=__webpack_require__(44);class VegaLiteFactory_VegaCompositeLayer extends external_deck_gl_["CompositeLayer"]{renderLayers(){return this.props.layers}}VegaLiteFactory_VegaCompositeLayer.layerName="HoparaVegaCompositeLayer";const MAX_TICKS=4e3;class VegaLiteFactory_VegaLiteFactory{constructor(cacheStore,dataComparator){this.cacheStore=void 0;this.dataComparator=void 0;this.cacheStore=cacheStore!==null&&cacheStore!==void 0?cacheStore:new Map;this.dataComparator=dataComparator!==null&&dataComparator!==void 0?dataComparator:new DataComparator_DataComparator}getWorldDomainMin(axis,scaleType,scaleDomains){if(!axis||!scaleType||!scaleDomains)return;return Object(fp_["get"])([axis,scaleType,"domainMin"],scaleDomains)}getWorldDomainMax(axis,scaleType,scaleDomains){if(!axis||!scaleType||!scaleDomains)return;return Object(fp_["get"])([axis,scaleType,"domainMax"],scaleDomains)}getAxisTicksByZoom(axisConfig){let zoom=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;let size=arguments.length>2?arguments[2]:undefined;let zoomBehavior=arguments.length>3?arguments[3]:undefined;const shouldUseZoomableBehavior=(axisConfig===null||axisConfig===void 0?void 0:axisConfig.tickCount)===undefined&&zoomBehavior!==Visualization["a"].FIXED;const tickCount=Math.ceil((size||0)/140*Math.pow(2,Math.ceil(zoom)));return{tickCount:shouldUseZoomableBehavior?tickCount<MAX_TICKS?tickCount:MAX_TICKS:axisConfig===null||axisConfig===void 0?void 0:axisConfig.tickCount,labelOverlap:shouldUseZoomableBehavior?zoom&&Math.ceil(zoom||1)<2:axisConfig===null||axisConfig===void 0?void 0:axisConfig.labelOverlap,tickRound:shouldUseZoomableBehavior?false:axisConfig===null||axisConfig===void 0?void 0:axisConfig.tickRound}}getEncodingWithDomains(props,baseProps){var _props$encoding$x,_props$encoding$x2,_props$encoding$x2$sc,_props$encoding$x3,_props$encoding$x3$sc,_props$encoding,_props$encoding$y,_props$encoding2,_props$encoding2$x,_baseProps$worldBox,_baseProps$worldBox$g,_baseProps$zoomBehavi,_props$encoding$y2,_props$encoding$y2$sc,_props$encoding$y3,_props$encoding$y3$sc,_props$encoding3,_props$encoding3$y,_props$encoding4,_props$encoding4$y,_baseProps$worldBox2,_baseProps$worldBox2$,_baseProps$zoomBehavi2;return{...props.encoding,x:{...props.encoding.x,scale:{...(_props$encoding$x=props.encoding.x)===null||_props$encoding$x===void 0?void 0:_props$encoding$x.scale,domainMin:this.getWorldDomainMin("x",(_props$encoding$x2=props.encoding.x)===null||_props$encoding$x2===void 0?void 0:(_props$encoding$x2$sc=_props$encoding$x2.scale)===null||_props$encoding$x2$sc===void 0?void 0:_props$encoding$x2$sc.type,baseProps.scaleDomains),domainMax:this.getWorldDomainMax("x",(_props$encoding$x3=props.encoding.x)===null||_props$encoding$x3===void 0?void 0:(_props$encoding$x3$sc=_props$encoding$x3.scale)===null||_props$encoding$x3$sc===void 0?void 0:_props$encoding$x3$sc.type,baseProps.scaleDomains)},axis:{...(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:(_props$encoding$y=_props$encoding.y)===null||_props$encoding$y===void 0?void 0:_props$encoding$y.axis,...this.getAxisTicksByZoom((_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:(_props$encoding2$x=_props$encoding2.x)===null||_props$encoding2$x===void 0?void 0:_props$encoding2$x.axis,baseProps.zoom,(_baseProps$worldBox=baseProps.worldBox)===null||_baseProps$worldBox===void 0?void 0:(_baseProps$worldBox$g=_baseProps$worldBox.getDimensions())===null||_baseProps$worldBox$g===void 0?void 0:_baseProps$worldBox$g.width,(_baseProps$zoomBehavi=baseProps.zoomBehavior)===null||_baseProps$zoomBehavi===void 0?void 0:_baseProps$zoomBehavi.x)}},y:{...props.encoding.y,scale:{...props.encoding.y.scale,domainMin:this.getWorldDomainMin("y",(_props$encoding$y2=props.encoding.y)===null||_props$encoding$y2===void 0?void 0:(_props$encoding$y2$sc=_props$encoding$y2.scale)===null||_props$encoding$y2$sc===void 0?void 0:_props$encoding$y2$sc.type,baseProps.scaleDomains),domainMax:this.getWorldDomainMax("y",(_props$encoding$y3=props.encoding.y)===null||_props$encoding$y3===void 0?void 0:(_props$encoding$y3$sc=_props$encoding$y3.scale)===null||_props$encoding$y3$sc===void 0?void 0:_props$encoding$y3$sc.type,baseProps.scaleDomains)},axis:{...(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:(_props$encoding3$y=_props$encoding3.y)===null||_props$encoding3$y===void 0?void 0:_props$encoding3$y.axis,...this.getAxisTicksByZoom((_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$y=_props$encoding4.y)===null||_props$encoding4$y===void 0?void 0:_props$encoding4$y.axis,baseProps.zoom,(_baseProps$worldBox2=baseProps.worldBox)===null||_baseProps$worldBox2===void 0?void 0:(_baseProps$worldBox2$=_baseProps$worldBox2.getDimensions())===null||_baseProps$worldBox2$===void 0?void 0:_baseProps$worldBox2$.height,(_baseProps$zoomBehavi2=baseProps.zoomBehavior)===null||_baseProps$zoomBehavi2===void 0?void 0:_baseProps$zoomBehavi2.y)}}}}getLayerSpec(props,baseProps){var _props$rows;return{data:{values:(_props$rows=props.rows)!==null&&_props$rows!==void 0?_props$rows:[]},mark:props.mark,encoding:this.getEncodingWithDomains(props,baseProps)}}getSpec(props){var _props$worldBox;const worldDimensions=(_props$worldBox=props.worldBox)===null||_props$worldBox===void 0?void 0:_props$worldBox.getDimensions();return{height:worldDimensions?worldDimensions.height:"container",width:worldDimensions?worldDimensions.width:"container",layer:props.layers.map((layerSpec=>this.getLayerSpec(layerSpec,props))),config:props.themeMode==="dark"?{axis:{labelColor:"#fff",gridColor:"#444",domainColor:"#666",titleColor:"#fff"}}:undefined}}getStage(props,view){var _props$worldBox2;return sceneToStage({projection:{yOffset:(_props$worldBox2=props.worldBox)===null||_props$worldBox2===void 0?void 0:_props$worldBox2.getDimensions().height}},view.scenegraph().root)}getVegaStage(props){const vegaSpec=this.getSpec(props);const compiledSpec=external_vega_lite_["compile"](vegaSpec);if(!compiledSpec||!compiledSpec.spec)return;const runtime=external_vega_["parse"](compiledSpec.spec);const view=new external_vega_["View"](runtime);view.run();return this.getStage(props,view)}getZoomCacheKey(props){const layerKey=props.layers.reduce(((key,layer)=>`${key}-${layer.id}-${layer.rows.etag}-${props.zoom.toFixed(0)}`),"");return layerKey}getCacheKey(props){const layerKey=props.layers.reduce(((key,layer)=>`${key}-${layer.id}-${layer.rows.etag}`),"");return layerKey}vegaStage(props){return Object(memoize_src["a"])(this.getVegaStage.bind(this),{cacheStore:this.cacheStore,cacheKey:this.getZoomCacheKey(props)})(props)}create(props){if(!props.worldBox)return[];const stage=this.vegaStage({layers:props.layers,worldBox:props.worldBox,themeMode:props.themeMode,scaleDomains:props.scaleDomains,zoom:props.zoom,zoomBehavior:props.zoomBehavior});if(!stage)return[];const zoomCacheKey=this.getZoomCacheKey(props);const cacheKey=this.getCacheKey(props);const chartLayers=getChartLayers(stage,cacheKey,this.dataComparator);const axesTicksLayers=getAxesTicksLayers(stage,zoomCacheKey,this.dataComparator);const axesXTicksLayers=axesTicksLayers.length>1?axesTicksLayers[0].flat():[];const axesYTicksLayers=axesTicksLayers.length>1?axesTicksLayers[1].flat():[];const axesDomainLayers=getAxesDomainLayers(stage,zoomCacheKey,this.dataComparator).flat();const facetLayers=getFacetLayers(stage,cacheKey,this.dataComparator);return[new VegaLiteFactory_VegaCompositeLayer({id:"vega-facet",targetView:"vega-background",layers:facetLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-axes-domain",targetView:"vega-background",layers:axesDomainLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-axes-x",targetView:"vega-axes-x",layers:axesXTicksLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-axes-y",targetView:"vega-axes-y",layers:axesYTicksLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-chart",layers:chartLayers})]}}var external_react_table_=__webpack_require__(68);var Box_=__webpack_require__(58);var Box_default=__webpack_require__.n(Box_);var Table_=__webpack_require__(131);var Table_default=__webpack_require__.n(Table_);var TableCell_=__webpack_require__(95);var TableCell_default=__webpack_require__.n(TableCell_);var TableContainer_=__webpack_require__(132);var TableContainer_default=__webpack_require__.n(TableContainer_);var Paper_=__webpack_require__(133);var Paper_default=__webpack_require__.n(Paper_);var TablePagination_=__webpack_require__(134);var TablePagination_default=__webpack_require__.n(TablePagination_);var TableSortLabel_=__webpack_require__(135);var TableSortLabel_default=__webpack_require__.n(TableSortLabel_);const TableLayerBox=Object(src_theme["a"])(Box_default.a,{name:"TableLayerBox"})({width:"100%",height:"100%"});const TableLayerPaper=Object(src_theme["a"])(Paper_default.a,{name:"TableLayerPaper"})({width:"100%",height:"100%",mb:2,display:"flex",flexDirection:"column"});const TableLayerContainer=Object(src_theme["a"])(TableContainer_default.a,{name:"TableLayerContainer"})({overflow:"auto",flex:"1 1"});const TableLayerTable=Object(src_theme["a"])(Table_default.a,{name:"TableLayerTable"})({position:"relative"});const TableLayerTableCell=Object(src_theme["a"])(TableCell_default.a,{name:"TableLayerTable"})((_ref=>{let{_styleprops}=_ref;return{..._styleprops,display:"inline-flex",alignItems:"center",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}));const TableLayerTableCellBox=Object(src_theme["a"])(Box_default.a,{name:"TableLayerTableCellBox"})({display:"inline-block",overflow:"hidden",width:"100%",textOverflow:"ellipsis",whiteSpace:"nowrap"});const TableLayerHeaderCell=Object(src_theme["a"])(TableCell_default.a,{name:"TableLayerHeaderCell"})((_ref2=>{let{_cellstyles}=_ref2;return{..._cellstyles,position:"sticky",top:0}}));const TableLayerHeaderSortLabel=Object(src_theme["a"])(TableSortLabel_default.a,{name:"TableLayerHeaderSortLabel"})((_ref3=>{let{_cellstyles}=_ref3;return{..._cellstyles,display:undefined,overflow:"hidden",width:"100%"}}));const TableLayerHeaderLabel=Object(src_theme["a"])(Box_default.a,{name:"TableLayerHeaderLabel"})({display:"inline-block",overflow:"hidden",maxWidth:"100%",textOverflow:"ellipsis",whiteSpace:"nowrap"});const TableLayerHeaderLabelAria=Object(src_theme["a"])(Box_default.a,{name:"TableLayerHeaderLabelAria"})({border:0,clip:"rect(0 0 0 0)",height:"1px",margin:-1,overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:"1px"});const TableLayerHeaderResizer=Object(src_theme["a"])("div",{name:"TableLayerHeaderResizer"})((props=>{const style=Object(react_["css"])({alignItems:"center",display:"flex",height:"70%",justifyContent:"center",position:"absolute",right:3,top:0,touchAction:"none",transform:"translate(50%, 15%)",width:10,zIndex:3,":before":{borderLeft:"1px solid #ccc",content:'""',height:"100%",left:"50%",position:"absolute",transform:"translateX(-50%)",transition:"border 0.2s ease"},":after":{background:"#efefef",border:"1px solid #999",borderRadius:"50%",content:'""',height:6,transition:"border 0.2s ease",width:6,zIndex:2},":hover:before":{borderColor:props.theme.palette.primary.main},":hover:after":{borderColor:props.theme.palette.primary.main}});if(props._isResizing){return Object(react_["css"])([style,Object(react_["css"])({":before":{borderColor:props.theme.palette.primary.main},":after":{borderColor:props.theme.palette.primary.main}})])}return style}));const TableLayerPagination=Object(src_theme["a"])(TablePagination_default.a,{name:"TableLayerPagination"})({borderTop:"1px solid #ebe9f1"});var TableBody_=__webpack_require__(136);var TableBody_default=__webpack_require__.n(TableBody_);var TableRow_=__webpack_require__(84);var TableRow_default=__webpack_require__.n(TableRow_);var TableHead_=__webpack_require__(137);var TableHead_default=__webpack_require__.n(TableHead_);const TableHeader=_ref=>{let{headerGroups}=_ref;return Object(jsx_runtime_["jsx"])(TableHead_default.a,{children:headerGroups.map(((headerGroup,index)=>Object(external_react_["createElement"])(TableRow_default.a,{...headerGroup.getHeaderGroupProps(),key:index},headerGroup.headers.map(((column,i)=>{const cellProps=column.getHeaderProps(column.getSortByToggleProps());return Object(jsx_runtime_["jsxs"])(TableLayerHeaderCell,{sortDirection:column.isSorted?column.isSortedDesc?"desc":"asc":false,_cellstyles:cellProps.style,children:[Object(jsx_runtime_["jsxs"])(TableLayerHeaderSortLabel,{...Object(fp_["omit"])(["style"],cellProps),active:column.isSorted,direction:column.isSorted&&column.isSortedDesc?"desc":"asc",_cellstyles:cellProps.style,children:[Object(jsx_runtime_["jsx"])(TableLayerHeaderLabel,{component:"span",children:column.render("Header")}),column.isSorted?Object(jsx_runtime_["jsx"])(TableLayerHeaderLabelAria,{component:"span",children:column.isSortedDesc?"sorted descending":"sorted ascending"}):null]}),Object(jsx_runtime_["jsx"])(TableLayerHeaderResizer,{_isResizing:column.isResizing,...column.getResizerProps()})]},i)})))))})};const TablePagination=_ref=>{let{gotoPage,pageIndex,pageSize,setPageSize,dataLength}=_ref;return Object(jsx_runtime_["jsx"])(TableLayerPagination,{rowsPerPageOptions:[10,20,50,100],component:"div",count:dataLength,rowsPerPage:pageSize,page:pageIndex,onPageChange:(e,page)=>gotoPage(page),onRowsPerPageChange:e=>setPageSize(Number(e.target.value)),sx:{}})};const ColumnCell=_ref=>{let{value,column,valueFormatter}=_ref;return valueFormatter?valueFormatter(value,column.id):value};const TableLayout=_ref2=>{let{columns,data,valueFormatter}=_ref2;const defaultColumn=external_react_default.a.useMemo((()=>({minWidth:50,width:180,maxWidth:400,Cell:ColumnCell})),[]);const{getTableProps,getTableBodyProps,headerGroups,page,prepareRow,gotoPage,setPageSize,state:{pageIndex,pageSize}}=Object(external_react_table_["useTable"])({columns,data,defaultColumn,initialState:{pageSize:20},valueFormatter},external_react_table_["useBlockLayout"],external_react_table_["useResizeColumns"],external_react_table_["useSortBy"],external_react_table_["usePagination"]);return Object(jsx_runtime_["jsx"])(TableLayerBox,{children:Object(jsx_runtime_["jsxs"])(TableLayerPaper,{children:[Object(jsx_runtime_["jsx"])(TableLayerContainer,{children:Object(jsx_runtime_["jsxs"])(TableLayerTable,{...getTableProps(),children:[Object(jsx_runtime_["jsx"])(TableHeader,{headerGroups}),Object(jsx_runtime_["jsx"])(TableBody_default.a,{...getTableBodyProps(),children:page===null||page===void 0?void 0:page.map(((row,index)=>{prepareRow(row);return Object(external_react_["createElement"])(TableRow_default.a,{...row.getRowProps(),key:index},row.cells.map(((cell,i)=>{const cellProps=cell.getCellProps();return Object(external_react_["createElement"])(TableLayerTableCell,{...Object(fp_["omit"])(["style"],cellProps),_styleprops:cellProps.style,key:i},Object(jsx_runtime_["jsx"])(TableLayerTableCellBox,{component:"span",children:cell.render("Cell")}))})))}))})]})}),Object(jsx_runtime_["jsx"])(TablePagination,{gotoPage,pageIndex,pageSize,setPageSize,dataLength:data===null||data===void 0?void 0:data.length})]})})};const Table_Table=props=>{const data=external_react_default.a.useMemo((()=>props.rows),[props.rows]);const columns=external_react_default.a.useMemo((()=>props.columns),[props.columns]);return Object(jsx_runtime_["jsx"])(TableLayout,{data,columns,valueFormatter:props.valueFormatter})};const formatTableColumns=(columns,fields)=>{if(!columns)return[];if(fields!==null&&fields!==void 0&&fields.length){return fields.map((field=>{var _field$title;const column=columns.get(field.value.encoding.text.field);if(!column)return;return{Header:(_field$title=field.title)!==null&&_field$title!==void 0?_field$title:column===null||column===void 0?void 0:column.getLabel(),accessor:column===null||column===void 0?void 0:column.getName()}})).filter((tableColumn=>!!tableColumn))}return columns.map((column=>({Header:column.getLabel(),accessor:column.getName()})))};class TableLayer_Table extends PureComponent["a"]{render(){const formattedColumns=formatTableColumns(this.props.columns,this.props.fields);return Object(jsx_runtime_["jsx"])(Table_Table,{rows:this.props.rows,columns:formattedColumns,valueFormatter:(value,columnName)=>{var _this$props$columns;const column=(_this$props$columns=this.props.columns)===null||_this$props$columns===void 0?void 0:_this$props$columns.get(columnName);const tableField=this.props.fields.find((field=>field.value.encoding.text.field===columnName));if(!column||!tableField)return value;return tableField.value.encoding.text.formatValue(value,column.getType())}})}}var TableLayer=TableLayer_Table;class TableFactory_TableFactory{create(props){var _props$encoding$table,_props$encoding;return external_react_default.a.createElement(TableLayer,{columns:props.columns,fields:(_props$encoding$table=(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.table)!==null&&_props$encoding$table!==void 0?_props$encoding$table:[],rows:props.rows,key:props.id})}}class ViewLayers extends Array{}const factories={circle:new CircleFactory_CircleFactory,heatmap:new HeatmapFactory_HeatmapFactory,icon:new IconFactory_IconFactory,image:new ImageFactory_ImageFactory,line:new LineFactory_LineFactory,polygon:new PolygonFactory_PolygonFactory,text:new TextFactory_TextFactory,table:new TableFactory_TableFactory};function getFactory(type){return factories[type.toLowerCase()]}function hasFactory(layer){return!!getFactory(layer.type)}function isVegaLayer(layer){return layer.isVega()}function getViewLayerId(layer){var _animation$data,_animation$data2;const animation=layer.getAnimation();return[layer.id,layer.type,animation===null||animation===void 0?void 0:(_animation$data=animation.data)===null||_animation$data===void 0?void 0:_animation$data.type,animation===null||animation===void 0?void 0:(_animation$data2=animation.data)===null||_animation$data2===void 0?void 0:_animation$data2.field].join("#")}function getVisibleRows(layer,props,rowset){var _props$projectedRows$;if(layer.isFixedColor()||props.encodingScope===encoding_src["e"].QUERY){return new dataset_src["g"]}if(!props.projectedRows){return new dataset_src["g"]}return(_props$projectedRows$=props.projectedRows[rowset.getId()])===null||_props$projectedRows$===void 0?void 0:_props$projectedRows$.getFromBox(props.visibleWorldBox)}function createViewLayer(props,layer){var _props$queries,_props$selectedRow,_layer$transform$clus,_layer$transform,_layer$encoding;if(!layer.shouldRender(props.rowsetStore.getRowsets())){return null}const rowset=props.rowsetStore.getByTargetRowset(layer.getTargetRowset(props.zoom));if(!rowset)return null;const columns=(_props$queries=props.queries)===null||_props$queries===void 0?void 0:_props$queries.getColumns(layer.getQueryKey());const visibleRows=getVisibleRows(layer,props,rowset);const factory=getFactory(layer.type);const rows=props.projectedRows&&props.projectedRows[rowset.getId()]?props.projectedRows[rowset.getId()]:rowset.rows;return factory.create({id:getViewLayerId(layer),layerId:layer.id,encoding:layer.encoding,bearing:props.bearing,columns,editable:layer.editable,editing:!!props.editing,dragging:props.dragging,pickable:props.editing&&layer.editable||!!layer.tooltip,layerCallbacks:props.layerCallbacks,lastModified:layer.lastModified,transform:layer.transform,rows,rowsetId:rowset===null||rowset===void 0?void 0:rowset.getId(),selectedRow:((_props$selectedRow=props.selectedRow)===null||_props$selectedRow===void 0?void 0:_props$selectedRow.rowsetId)===(rowset===null||rowset===void 0?void 0:rowset.getId())?props.selectedRow:undefined,visible:{value:layer.isVisible(props.zoom),condition:layer.visible.condition},visibleRows,zoom:((_layer$transform$clus=(_layer$transform=layer.transform)===null||_layer$transform===void 0?void 0:_layer$transform.cluster)!==null&&_layer$transform$clus!==void 0?_layer$transform$clus:(_layer$encoding=layer.encoding)===null||_layer$encoding===void 0?void 0:_layer$encoding.cluster)?Math.floor(props.zoom):undefined,autoHighlight:layer.autoHighlight,dataComparator:props.dataComparator})}const createVegaViewLayers=(vegaLayers,props)=>{const layersSpec=vegaLayers.map((layer=>{var _rowset$rows;if(!layer.shouldRender(props.rowsetStore.getRowsets()))return null;if(!layer.isVisible(props.zoom))return null;const rowset=props.rowsetStore.getByTargetRowset(layer.getTargetRowset(props.zoom));if(!(rowset!==null&&rowset!==void 0&&(_rowset$rows=rowset.rows)!==null&&_rowset$rows!==void 0&&_rowset$rows.length))return null;return{id:layer.id,rows:rowset.rows,mark:layer.mark,encoding:layer.encoding}})).filter((layerSpec=>!!layerSpec));return new VegaLiteFactory_VegaLiteFactory(props.cacheStore,props.dataComparator).create({layers:layersSpec,worldBox:props.worldBox,themeMode:props.themeMode,scaleDomains:props.scaleDomains,zoom:props.zoom,zoomBehavior:props.zoomBehavior})};const createViewLayers=props=>{if(!props.layers||props.layers.length===0){return new ViewLayers}const viewLayers=[];const vegaLayers=props.layers.filter(isVegaLayer);if(vegaLayers.length){const vegaViewLayers=createVegaViewLayers(vegaLayers,props);viewLayers.push(...vegaViewLayers)}const hoparaLayers=props.layers.filter(hasFactory).map((layer=>createViewLayer(props,layer)));if(hoparaLayers.length){viewLayers.push(...hoparaLayers)}return new ViewLayers(...viewLayers)};const mapStyleNameToId={light:"419395b0-c660-4d87-b01d-e0d48df9c702","light-street":"659eb88b-0a25-45ca-a129-3682b21b1b80",dark:"6bafab84-bb35-4ff5-b048-d419f7d0da53",winter:"winter",building:"winter",terrain:"hybrid"};const getMapStyle=style=>{var _ref;const styleId=(_ref=style&&mapStyleNameToId[style])!==null&&_ref!==void 0?_ref:mapStyleNameToId.light;return`https://api.maptiler.com/maps/${styleId}/style.json?key=t0AYWwS0LsMuX1Of2myK&c=adasd`};const isDarkStyle=style=>!!style&&style==="dark";var SpecFromTenant=__webpack_require__(71);class DeckView_DeckView extends PureComponent["a"]{constructor(props){super(props);this.deckgl=void 0;this.viewLayerCache=void 0;this.visualizationId=void 0;this.renderMap=void 0;this.previousViewLayers=void 0;this.usePreviousViewLayers=void 0;this.previousLastModified=void 0;this.previousRows=void 0;this.viewLayerFilter=void 0;this.cacheStore=new Map;this.dataComparator=void 0;this.zoomStep=.5;this.state={isHoveringLayer:false,isItemDragging:false,isViewDragging:false};this.viewLayerCache=new Map;this.deckgl=external_react_default.a.createRef();this.visualizationId=props.visualization.id;this.renderMap=false;this.previousRows={};this.dataComparator=new DataComparator_DataComparator}getCursor(_ref){let{isDragging}=_ref;if(isDragging)return"grabbing";if(this.state.isHoveringLayer)return"pointer";return"grab"}shouldUseViewStateFromProps(){return this.props.viewState.visualizationId===this.visualizationId&&this.props.viewState.isNewerThan(this.state.viewState)}getViewState(){if(this.shouldUseViewStateFromProps()){return this.props.viewState}return this.state.viewState}getRowProjector(rowset){return rowset&&this.props.projector?new projector_src["c"](this.props.projector,rowset.scales):undefined}onLayerHover(info){if(!info&&this.state.isHoveringLayer)this.setState({isHoveringLayer:false});else if(info&&!this.state.isHoveringLayer)this.setState({isHoveringLayer:true});return this.props.onLayerHover&&this.props.onLayerHover(info)}onLayerDrag(info){if(!info||!info.editable||!this.props.isEditing)return;this.setState({draggingRow:{layerId:info.layerId,rowsetId:info.rowsetId,updatingRow:{...info.row,...info.updatedData}}})}onLayerDragStart(info,event){if(!info||!info.editable||!this.props.isEditing)return;if(this.props.isEditing&&info!==null&&info!==void 0&&info.editable)this.setState({isItemDragging:true});return this.props.onLayerDragStart(info,event)}onLayerDragEnd(info,event,keepEditing){if(!keepEditing){this.setState({isItemDragging:false,draggingRow:undefined})}if(!this.props.isEditing||!(info!==null&&info!==void 0&&info.editable))return;const rowset=this.props.rowsetStore.getRowset(info.rowsetId);const rowProjector=this.getRowProjector(rowset);const unprojectedInfo={...info,row:rowProjector===null||rowProjector===void 0?void 0:rowProjector.unprojectRow(info.row),updatedData:rowProjector===null||rowProjector===void 0?void 0:rowProjector.unprojectRow(info.updatedData)};return this.props.onLayerDragEnd&&this.props.onLayerDragEnd(unprojectedInfo,event)}onLayerEdit(info){return this.onLayerDrag(info)}onLayerEditEnd(info,event){return this.onLayerDragEnd(info,event,true)}getZoom(){var _this$props$viewState;return Number((_this$props$viewState=this.props.viewState)===null||_this$props$viewState===void 0?void 0:_this$props$viewState.zoom.toFixed(2))}getBearing(){var _this$props$viewState2;return(_this$props$viewState2=this.props.viewState)===null||_this$props$viewState2===void 0?void 0:_this$props$viewState2.bearing}getVisibleWorld(){var _this$props$viewState3;return(_this$props$viewState3=this.props.viewState)===null||_this$props$viewState3===void 0?void 0:_this$props$viewState3.getVisibleWorld(this.props.world)}getWorldBox(){return this.props.world?this.props.world.box():undefined}getSelectedRow(){var _this$state$draggingR;return(_this$state$draggingR=this.state.draggingRow)!==null&&_this$state$draggingR!==void 0?_this$state$draggingR:this.props.selectedRow}getThemeMode(){var _this$props$visualiza,_this$props$visualiza2;const theme=this.props.tenant?Object(SpecFromTenant["b"])(this.props.tenant):undefined;return(_this$props$visualiza=this.props.visualization)!==null&&_this$props$visualiza!==void 0&&_this$props$visualiza.getMapStyle()&&isDarkStyle((_this$props$visualiza2=this.props.visualization)===null||_this$props$visualiza2===void 0?void 0:_this$props$visualiza2.getMapStyle())?"dark":(theme===null||theme===void 0?void 0:theme.mode)==="dark"?"dark":"light"}getProjectedRows(){return this.props.rowsetStore.getRowsets().reduce(((map,rowset)=>{var _this$previousRows$ro,_rowset$rows;const rowsChanged=((_this$previousRows$ro=this.previousRows[rowset.getId()])===null||_this$previousRows$ro===void 0?void 0:_this$previousRows$ro.etag)!==((_rowset$rows=rowset.rows)===null||_rowset$rows===void 0?void 0:_rowset$rows.etag);if(!rowsChanged){return{...map,[rowset.getId()]:this.previousRows[rowset.getId()]}}const rowProjector=this.getRowProjector(rowset);const rows=rowProjector?rowProjector.project(rowset.rows,true):new dataset_src["g"];this.previousRows[rowset.getId()]=rows;return{...map,[rowset.getId()]:rows}}),{})}doGetViewLayers(){var _this$props$world;const{visualization,queries,rowsetStore,isEditing,encodingScope}=this.props;const zoom=this.getZoom();const bearing=this.getBearing();const visibleWorldBox=this.getVisibleWorld();const worldBox=this.getWorldBox();const layerCallbacks={onSelectionEdit:this.props.onSelectionEdit,onClick:this.props.onLayerClick,onDrag:this.onLayerDrag.bind(this),onHover:this.onLayerHover.bind(this),onDragStart:this.onLayerDragStart.bind(this),onDragEnd:this.onLayerDragEnd.bind(this),onEdit:this.onLayerEdit.bind(this),onEditEnd:this.onLayerEditEnd.bind(this)};return createViewLayers({visualization,zoom,bearing,visibleWorldBox,worldBox,queries,rowsetStore,layerCallbacks,encodingScope,editing:isEditing,dragging:this.state.isItemDragging,layers:this.props.layers,projectedRows:this.getProjectedRows(),selectedRow:this.getSelectedRow(),themeMode:this.getThemeMode(),cacheStore:this.cacheStore,scaleDomains:(_this$props$world=this.props.world)===null||_this$props$world===void 0?void 0:_this$props$world.getMaximizedScaleDomains(),zoomBehavior:this.props.viewState.zoomBehavior,dataComparator:this.dataComparator})}getMostRecentLayerLastModified(){return Math.max(...this.props.layers.map((layer=>{var _layer$lastModified;return(_layer$lastModified=layer.lastModified)===null||_layer$lastModified===void 0?void 0:_layer$lastModified.getMilliseconds()})))}wasLayerModified(){return!!this.previousLastModified&&this.previousLastModified!==this.getMostRecentLayerLastModified()}getViewLayers(){if(this.usePreviousViewLayers&&this.previousViewLayers&&!this.wasLayerModified()){return this.previousViewLayers}const viewLayers=this.doGetViewLayers();this.previousViewLayers=viewLayers;this.previousLastModified=this.getMostRecentLayerLastModified();return viewLayers}getZoomDirection(event){var _event$oldViewState,_event$viewState;const oldValue=(_event$oldViewState=event.oldViewState)===null||_event$oldViewState===void 0?void 0:_event$oldViewState.zoom;const currentValue=(_event$viewState=event.viewState)===null||_event$viewState===void 0?void 0:_event$viewState.zoom;if(currentValue-oldValue>0)return"in";return"out"}nextZoomStep(zoom){if(Number.isInteger(zoom))return zoom+this.zoomStep;return Math.ceil(zoom*(1/this.zoomStep))/(1/this.zoomStep)}prevZoomStep(zoom){if(Number.isInteger(zoom))return zoom-this.zoomStep;return Math.floor(zoom*(1/this.zoomStep))/(1/this.zoomStep)}shouldNotifyZooming(event){var _event$interactionSta,_event$oldViewState3,_event$viewState3;if((_event$interactionSta=event.interactionState)!==null&&_event$interactionSta!==void 0&&_event$interactionSta.inTransition){return false}if(this.getZoomDirection(event)==="in"){var _event$oldViewState2,_event$viewState2;const stateNextStep=this.nextZoomStep((_event$oldViewState2=event.oldViewState)===null||_event$oldViewState2===void 0?void 0:_event$oldViewState2.zoom);const eventNextStep=this.nextZoomStep((_event$viewState2=event.viewState)===null||_event$viewState2===void 0?void 0:_event$viewState2.zoom);return stateNextStep!=eventNextStep}const statePrevStep=this.prevZoomStep((_event$oldViewState3=event.oldViewState)===null||_event$oldViewState3===void 0?void 0:_event$oldViewState3.zoom);const eventPrevStep=this.prevZoomStep((_event$viewState3=event.viewState)===null||_event$viewState3===void 0?void 0:_event$viewState3.zoom);return statePrevStep!==eventPrevStep}getViews(){return[]}getViewController(){if(this.props.viewController.dragPan&&this.state.isItemDragging){const controller=this.props.viewController.clone();controller.dragPan=!this.state.isItemDragging;return controller}return this.props.viewController}onViewStateChange(event){if(this.props.visualization.id!==this.visualizationId)return;if(event.interactionState.isZooming&&this.shouldNotifyZooming(event)&&this.props.onViewZooming){return this.props.onViewZooming({...event})}else{this.setState({viewState:this.props.viewState.withDeckViewState(this.props.world,event.viewState)})}}onViewHover(info){var _info$layer,_info$layer$props,_info$layer2,_info$layer2$props;if(!(info!==null&&info!==void 0&&(_info$layer=info.layer)!==null&&_info$layer!==void 0&&(_info$layer$props=_info$layer.props)!==null&&_info$layer$props!==void 0&&_info$layer$props.pickable)&&this.state.isHoveringLayer)return this.setState({isHoveringLayer:false});if(this.props.isEditing&&(_info$layer2=info.layer)!==null&&_info$layer2!==void 0&&(_info$layer2$props=_info$layer2.props)!==null&&_info$layer2$props!==void 0&&_info$layer2$props.editable)return;return this.props.onViewHover&&this.props.onViewHover(info)}onViewClick(info){var _info$layer3,_info$layer3$props;if(this.props.isEditing&&(_info$layer3=info.layer)!==null&&_info$layer3!==void 0&&(_info$layer3$props=_info$layer3.props)!==null&&_info$layer3$props!==void 0&&_info$layer3$props.editable)return;return this.props.onViewClick&&this.props.onViewClick(info)}onViewDragStart(info){var _info$layer4,_info$layer4$props;if(this.props.isEditing&&(_info$layer4=info.layer)!==null&&_info$layer4!==void 0&&(_info$layer4$props=_info$layer4.props)!==null&&_info$layer4$props!==void 0&&_info$layer4$props.editable&&this.state.isItemDragging)return;this.setState({isViewDragging:true});return this.props.onViewDragStart&&this.props.onViewDragStart(info)}onViewDragEnd(info){var _this$getViewState;if(!this.state.isViewDragging)return;if(this.props.onViewDragEnd)this.props.onViewDragEnd(info,(_this$getViewState=this.getViewState())===null||_this$getViewState===void 0?void 0:_this$getViewState.getDeckViewState(this.props.world));this.setState({isViewDragging:false})}UNSAFE_componentWillUpdate(nextProps,nextState){this.usePreviousViewLayers=nextState.viewState!==this.state.viewState&&nextProps===this.props&&this.state.draggingRow===nextState.draggingRow}onViewLoad(){const dimensions={width:this.deckgl.current.deck.width,height:this.deckgl.current.deck.height};const viewState=this.deckgl.current.deck.props.viewState;this.props.onViewLoad(dimensions,viewState)}render(){var _this$getViewState2;const deckViewState=(_this$getViewState2=this.getViewState())===null||_this$getViewState2===void 0?void 0:_this$getViewState2.getDeckViewState(this.props.world);if(!deckViewState)return null;return Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{children:Object(jsx_runtime_["jsx"])(typed_default.a,{ref:this.deckgl,viewState:deckViewState,views:this.getViews(),layers:this.getViewLayers(),onLoad:this.onViewLoad.bind(this),onResize:size=>this.props.onViewResize&&this.props.onViewResize(size),onHover:this.onViewHover.bind(this),layerFilter:this.viewLayerFilter,onClick:this.onViewClick.bind(this),onDragStart:this.onViewDragStart.bind(this),onDragEnd:this.onViewDragEnd.bind(this),onViewStateChange:event=>this.onViewStateChange(event),getCursor:this.getCursor.bind(this),children:this.renderMap&&Object(jsx_runtime_["jsx"])(external_react_map_gl_default.a,{reuseMaps:true,mapLib:external_maplibre_gl_default.a,mapStyle:getMapStyle(this.props.visualization.mapStyle),styleDiffing:false,attributionControl:false,interactive:false})})})}}var view_DeckView=DeckView_DeckView;const isMapEnabled=config_src["a"].getValueAsBoolean("ENABLE_MAP");class GeoViewComponent_GeoViewComponent extends view_DeckView{constructor(props){super(props);this.renderMap=isMapEnabled}getViews(){return[new core_["MapView"]({id:"main-view",controller:this.getViewController()})]}}var external_reselect_=__webpack_require__(26);const currentVisualizationSelector=Object(external_reselect_["createSelector"])([_ref=>{let{visualizations}=_ref;return visualizations}],(visualizations=>visualizations.getCurrent()));const viewStateSelector=Object(external_reselect_["createSelector"])([_ref2=>{let{viewStates}=_ref2;return viewStates},currentVisualizationSelector],((viewStates,currentVisualization)=>viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const viewControllerSelector=Object(external_reselect_["createSelector"])([_ref3=>{let{viewControllers}=_ref3;return viewControllers},currentVisualizationSelector],((viewControllers,currentVisualization)=>viewControllers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const axesListSelector=Object(external_reselect_["createSelector"])([_ref4=>{let{axesList}=_ref4;return axesList},currentVisualizationSelector],((axesList,currentVisualization)=>axesList.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const projectorSelector=Object(external_reselect_["createSelector"])([_ref5=>{let{projectorStore}=_ref5;return projectorStore},currentVisualizationSelector],((projectorStore,currentVisualization)=>projectorStore.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const layersSelector=Object(external_reselect_["createSelector"])([_ref6=>{let{layers}=_ref6;return layers},currentVisualizationSelector],((layers,currentVisualization)=>layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const worldSelector=Object(external_reselect_["createSelector"])([_ref7=>{let{worlds}=_ref7;return worlds},currentVisualizationSelector],((worlds,currentVisualization)=>worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const GeoViewContainer_mapStateToProps=state=>({isEditing:state.appStore.isEditing,jumpState:state.jump,layers:layersSelector(state),queries:state.queryStore.queries,rowsetStore:state.rowsetStore,encodingScope:state.encodingScope,selectedRow:state.viewLayers.selectedRow,tooltipEnabled:!!state.tooltip,tenant:state.authorization.tenant,viewStates:state.viewStates,viewState:viewStateSelector(state),visualization:currentVisualizationSelector(state),visualizations:state.visualizations,viewController:viewControllerSelector(state),axesList:axesListSelector(state),projector:projectorSelector(state),worlds:state.worlds,world:worldSelector(state)});const GeoViewContainer_mapDispatchToProps=dispatch=>({layerActions:ViewLayerActions(dispatch),viewActions:Object(ViewActions["b"])(dispatch)});const GeoViewContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps.layerActions(stateProps.visualizations,stateProps.isEditing,!!stateProps.selectedRow,stateProps.tooltipEnabled),...dispatchProps.viewActions(stateProps.viewStates,stateProps.worlds,stateProps.visualizations,!!stateProps.selectedRow,stateProps.tooltipEnabled)});var GeoViewContainer=Object(external_react_redux_["connect"])(GeoViewContainer_mapStateToProps,GeoViewContainer_mapDispatchToProps,GeoViewContainer_mergeProps,{context:Store["a"]})(GeoViewComponent_GeoViewComponent);var OrthographicView=__webpack_require__(56);var Paddings=__webpack_require__(31);class CartesianViewComponent_CartesianViewComponent extends view_DeckView{constructor(){super(...arguments);this.viewLayerFilter=_ref=>{let{layer,viewport}=_ref;if(!layer.props.targetView&&viewport.id==="main-view")return true;return layer.props.targetView===viewport.id}}getViews(){const viewPortProps=this.props.viewState.getOrtographicViewPortProps(this.props.world);return[new OrthographicView["b"]({...viewPortProps,id:"vega-background",controller:false,width:viewPortProps.width+Paddings["b"]*2,height:viewPortProps.height+Paddings["b"]*2,x:0,y:0,fixedX:true,fixedY:true,translationMatrix:[Paddings["b"],Paddings["b"]+Paddings["a"],0]}),new OrthographicView["b"]({...viewPortProps,id:"vega-axes-y",controller:false,width:viewPortProps.width+Paddings["a"],x:Paddings["a"],y:Paddings["a"],fixedX:true}),new OrthographicView["b"]({...viewPortProps,id:"vega-axes-x",controller:false,height:viewPortProps.height+Paddings["a"],fixedY:true}),new OrthographicView["b"]({...viewPortProps,id:"main-view",controller:this.getViewController()})]}}const CartesianViewContainer_currentVisualizationSelector=Object(external_reselect_["createSelector"])([_ref=>{let{visualizations}=_ref;return visualizations}],(visualizations=>visualizations.getCurrent()));const CartesianViewContainer_viewStateSelector=Object(external_reselect_["createSelector"])([_ref2=>{let{viewStates}=_ref2;return viewStates},CartesianViewContainer_currentVisualizationSelector],((viewStates,currentVisualization)=>viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_viewControllerSelector=Object(external_reselect_["createSelector"])([_ref3=>{let{viewControllers}=_ref3;return viewControllers},CartesianViewContainer_currentVisualizationSelector],((viewControllers,currentVisualization)=>viewControllers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_axesListSelector=Object(external_reselect_["createSelector"])([_ref4=>{let{axesList}=_ref4;return axesList},CartesianViewContainer_currentVisualizationSelector],((axesList,currentVisualization)=>axesList.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_projectorSelector=Object(external_reselect_["createSelector"])([_ref5=>{let{projectorStore}=_ref5;return projectorStore},CartesianViewContainer_currentVisualizationSelector],((projectorStore,currentVisualization)=>projectorStore.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_layersSelector=Object(external_reselect_["createSelector"])([_ref6=>{let{layers}=_ref6;return layers},CartesianViewContainer_currentVisualizationSelector],((layers,currentVisualization)=>layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_worldSelector=Object(external_reselect_["createSelector"])([_ref7=>{let{worlds}=_ref7;return worlds},CartesianViewContainer_currentVisualizationSelector],((worlds,currentVisualization)=>worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_mapStateToProps=state=>({isEditing:state.appStore.isEditing,jumpState:state.jump,layers:CartesianViewContainer_layersSelector(state),queries:state.queryStore.queries,rowsetStore:state.rowsetStore,encodingScope:state.encodingScope,selectedRow:state.viewLayers.selectedRow,tooltipEnabled:!!state.tooltip,tenant:state.authorization.tenant,viewStates:state.viewStates,viewState:CartesianViewContainer_viewStateSelector(state),visualization:CartesianViewContainer_currentVisualizationSelector(state),visualizations:state.visualizations,viewController:CartesianViewContainer_viewControllerSelector(state),axesList:CartesianViewContainer_axesListSelector(state),projector:CartesianViewContainer_projectorSelector(state),worlds:state.worlds,world:CartesianViewContainer_worldSelector(state)});const CartesianViewContainer_mapDispatchToProps=dispatch=>({layerActions:ViewLayerActions(dispatch),viewActions:Object(ViewActions["b"])(dispatch)});const CartesianViewContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps.layerActions(stateProps.visualizations,stateProps.isEditing,!!stateProps.selectedRow,stateProps.tooltipEnabled),...dispatchProps.viewActions(stateProps.viewStates,stateProps.worlds,stateProps.visualizations,!!stateProps.selectedRow,stateProps.tooltipEnabled),visualizations:null,viewStates:null});var CartesianViewContainer=Object(external_react_redux_["connect"])(CartesianViewContainer_mapStateToProps,CartesianViewContainer_mapDispatchToProps,CartesianViewContainer_mergeProps,{context:Store["a"]})(CartesianViewComponent_CartesianViewComponent);var external_d3_=__webpack_require__(22);const LegendView=Object(src_theme["a"])("div",{name:"LegendView"})((_ref=>{let{theme,_isCartesian,_visible}=_ref;const style=Object(react_["css"])({borderRadius:theme.shape.borderRadius,fontSize:theme.typography.fontSize,position:"absolute",top:theme.shape.paddingInner,right:theme.shape.paddingInner,padding:theme.shape.paddingInner,backgroundColor:"rgba(255,255,255,0.66)",backdropFilter:"blur(10px)",transition:"all 0.42s ease",overflow:"hidden",transform:`translateX(${_visible?"0":"250%"})`,zIndex:99,"@media (min-width: 768px)":{top:"auto",right:theme.shape.paddingInner,bottom:theme.shape.paddingInner+30},"& svg":{transition:"height 0.2s ease"},"& .LegendViewBox":{transform:"translate(0, 0)"},"& text":{fontSize:theme.typography.body2.fontSize,fontFamily:theme.typography.body2.fontFamily,fill:theme.palette.text.primary},"& .legendTitle":{display:"none"},"& .role-legend-title":{display:"none"},"& .role-legend-entry > g":{transform:"translate(0, 0)"},"& .role-mark":{display:"none"},"& .role-legend > g":{transform:"translate(0, 0)"},"& .legendCells":{opacity:0,transition:"opacity 0.2s ease"},"& .LegendExpanded .legendCells":{opacity:1},"& .LegendExpanded .role-legend-entry":{opacity:1}});if(_isCartesian){return Object(react_["css"])([style,Object(react_["css"])({"@media (min-width: 768px)":{transform:`translateX(${_visible?"0":"-250%"})`,bottom:"auto",right:"auto",left:55,top:30}})])}return style}));const LegendViewContent=Object(src_theme["a"])("div",{name:"LegendViewContent"})({transition:"height 0.2s ease",overflow:"hidden"});const LegendTitleBox=Object(src_theme["a"])(material_["Box"],{name:"LegendTitleBox"})({display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"});const LegendTitleTypography=Object(src_theme["a"])(material_["Typography"],{name:"LegendTitleTypography"})({cursor:"pointer"});const LegendTitleIconButton=Object(src_theme["a"])(material_["IconButton"],{name:"LegendTitleIconButton"})({marginLeft:5});const LegendTitle=_ref=>{let{title,onClick,expanded}=_ref;return Object(jsx_runtime_["jsxs"])(LegendTitleBox,{children:[Object(jsx_runtime_["jsx"])(LegendTitleTypography,{variant:"body1",onClick:()=>onClick(),children:title}),Object(jsx_runtime_["jsxs"])(LegendTitleIconButton,{onClick:()=>onClick(),children:[!expanded&&Object(jsx_runtime_["jsx"])(icons_material_["ExpandMore"],{}),expanded&&Object(jsx_runtime_["jsx"])(icons_material_["ExpandLess"],{})]})]})};class LegendCartesianComponent_LegendCartesianComponent extends PureComponent["a"]{constructor(props){super(props);this._ref=external_react_default.a.createRef();this.view=void 0;this.lastCacheKey="";this.state={expanded:false,visible:false,title:""}}setTitle(title){if(this.state.title!==title){this.setState({title})}}getLayerSpec(layer){var _layer$getTargetRowse,_this$props$rowsetSto,_this$props$rowsetSto2;const rowsetId=(_layer$getTargetRowse=layer.getTargetRowset(this.props.zoom))===null||_layer$getTargetRowse===void 0?void 0:_layer$getTargetRowse.getId();const layerRows=rowsetId?(_this$props$rowsetSto=(_this$props$rowsetSto2=this.props.rowsetStore.getRowset(rowsetId))===null||_this$props$rowsetSto2===void 0?void 0:_this$props$rowsetSto2.rows)!==null&&_this$props$rowsetSto!==void 0?_this$props$rowsetSto:[]:[];return{data:{values:layerRows},mark:layer.mark,encoding:{...layer===null||layer===void 0?void 0:layer.encoding,x:null,y:null,z:null}}}getSpec(){var _this$props$layers$fi;return{background:null,height:0,width:0,layer:(_this$props$layers$fi=this.props.layers.filter((layer=>layer.isVega())).map((layerSpec=>this.getLayerSpec(layerSpec))))!==null&&_this$props$layers$fi!==void 0?_this$props$layers$fi:[]}}createCacheKey(inputSpec){const dataKeys=inputSpec.layer.reduce(((key,layer)=>{var _layer$data,_layer$data$values;return`${key}_${(_layer$data=layer.data)===null||_layer$data===void 0?void 0:(_layer$data$values=_layer$data.values)===null||_layer$data$values===void 0?void 0:_layer$data$values.etag}`}),"");return`${dataKeys}_${this.state.expanded}_${this.state.visible}`}shouldRecreate(inputSpec){const cacheKey=this.createCacheKey(inputSpec);if(cacheKey===this.lastCacheKey)return false;this.lastCacheKey=cacheKey;return true}async createLegend(){var _innerHTML,_svgElm$select$node,_d3$select$select$nod;const inputSpec=this.getSpec();if(!this.shouldRecreate(inputSpec))return;const vegaSpec=external_vega_lite_["compile"](inputSpec);if(!vegaSpec||!vegaSpec.spec)return;const runtime=external_vega_["parse"](vegaSpec.spec);this.view=await new external_vega_["View"](runtime,{renderer:"svg",container:this._ref.current}).runAsync();if(external_d3_["select"](this._ref.current).select("g.role-legend").empty()&&this._ref.current){return this.setState({visible:false})}else if(!this._ref.current){return}this.setState({visible:true});const svgElm=external_d3_["select"](this._ref.current).select("svg");if(!svgElm.empty()&&this.state.expanded){svgElm.node().classList.add("LegendExpanded")}const firstGElm=svgElm.select("g").node();if(firstGElm){firstGElm.style.transform="translate(0, 0)"}const title=(_innerHTML=(_svgElm$select$node=svgElm.select(".role-legend-title text").node())===null||_svgElm$select$node===void 0?void 0:_svgElm$select$node.innerHTML)!==null&&_innerHTML!==void 0?_innerHTML:"";this.setTitle(title);const dimensions=(_d3$select$select$nod=external_d3_["select"](this._ref.current).select(".role-legend-entry").node())===null||_d3$select$select$nod===void 0?void 0:_d3$select$select$nod.getBBox();if(dimensions){this._ref.current.style.height=`${this.state.expanded?dimensions.height:0}px`}}componentDidUpdate(){this.createLegend()}render(){var _this$props$visualiza;if(!this.props.layers.length)return null;return Object(jsx_runtime_["jsxs"])(LegendView,{_isCartesian:(_this$props$visualiza=this.props.visualization)===null||_this$props$visualiza===void 0?void 0:_this$props$visualiza.isCartesian(),_visible:!!this.state.visible,children:[Object(jsx_runtime_["jsx"])(LegendTitle,{title:this.state.title,onClick:()=>this.setState({expanded:!this.state.expanded}),expanded:!!this.state.expanded}),Object(jsx_runtime_["jsx"])(LegendViewContent,{ref:this._ref})]})}}var external_d3_svg_legend_=__webpack_require__(96);var external_d3_svg_legend_default=__webpack_require__.n(external_d3_svg_legend_);var D3Formatter=__webpack_require__(85);var ValueFormatter=__webpack_require__(59);external_d3_svg_legend_default.a.legendColor.prototype.labelFormat=fn=>fn;const d3=__webpack_require__(22);const isLegendCandidate=layer=>{var _layer$encoding$color;if(!layer)return false;if(!((_layer$encoding$color=layer.encoding.color)!==null&&_layer$encoding$color!==void 0&&_layer$encoding$color.field))return false;return!layer.isFixedColor()};const getScale=_ref=>{let{visualization,layers,rowsetStore,zoom,queries,legends,visibleWorldBox}=_ref;if(!visualization)return{};const validLayers=layers.getVisibleFromVisualization(visualization.id,zoom).renderable(rowsetStore.getRowsets());const validLegend=legends.find((legend=>validLayers.some((layer=>legend.layer===layer.name&&layer.belongsToVisualization(legend.visualizationId)))));if(!validLegend)return{};const validLayer=validLayers.find((layer=>layer.name===validLegend.layer));if(!validLayer)return{};if(!isLegendCandidate(validLayer)){return{}}const targetRowset=validLayer.getTargetRowset(zoom);if(!targetRowset)return{};const rowset=rowsetStore.getRowset(targetRowset.getId());if(!rowset)return{};const query=queries.findQuery(rowset.getData());const color=validLayer.encoding.color;const column=query===null||query===void 0?void 0:query.getColumns().get(color.field);if(!column)return{};const scale=color.getScale(rowset.rows,rowset.rows.getFromBox(visibleWorldBox),Object(encoding_src["n"])(color,query===null||query===void 0?void 0:query.getColumns()),encoding_src["b"].hex);return{scale,valueFormatter:Object(ValueFormatter["b"])(column.getType()),columnLabel:column.getLabel(),reversed:color.scale.reverse}};const DEFAULT_INVALID_LABEL_VALUE="___INVALID_LABEL_VALUE___";class LegendGeoComponent_LegendGeoComponent extends external_react_["PureComponent"]{constructor(props){super(props);this._ref=external_react_default.a.createRef();this.state={expanded:false,visible:false,title:""}}setTitle(title){if(title!==this.state.title){this.setState({title})}}removeQuantileDuplicatedValues(scale,_ref2){let{i,domain,generatedLabels}=_ref2;const quantilesWithMin=[domain[0],...scale.quantiles()];const isSameAsNext=i<quantilesWithMin.length+1?quantilesWithMin[i]===quantilesWithMin[i+1]:false;if(isSameAsNext)return DEFAULT_INVALID_LABEL_VALUE;return generatedLabels[i]}formatLabels(scale,_ref3){let{i,domain,generatedLabels}=_ref3;const isQuantile=!!scale.quantiles;if(isQuantile)return this.removeQuantileDuplicatedValues(scale,{i,domain,generatedLabels});return generatedLabels[i]}removeInvalidValues(){for(var _len=arguments.length,filterParams=new Array(_len),_key=0;_key<_len;_key++){filterParams[_key]=arguments[_key]}const[cell]=filterParams;return cell.label!==DEFAULT_INVALID_LABEL_VALUE}renderLegend(){const{scale,valueFormatter,columnLabel,reversed}=getScale({layers:this.props.layers,rowsetStore:this.props.rowsetStore,zoom:this.props.zoom,visualization:this.props.visualization,queries:this.props.queries,legends:this.props.legends,visibleWorldBox:this.props.visibleWorldBox});const svgElm=d3.select(this._ref.current).select("svg");if(svgElm.empty()){d3.select(this._ref.current).append("svg")}const svg=d3.select(this._ref.current).select("svg");d3.select(this._ref.current).selectAll("g").remove();if(!scale){return this.setState({visible:false})}else if(!this._ref.current){return}this.setState({visible:true});let stringFormat="";if(valueFormatter instanceof D3Formatter["a"]){var _valueFormatter$getFo;stringFormat=(_valueFormatter$getFo=valueFormatter.getFormatString())!==null&&_valueFormatter$getFo!==void 0?_valueFormatter$getFo:""}const legendBoxClasses=["LegendViewBox"];if(this.state.expanded){legendBoxClasses.push("LegendExpanded")}svg.append("g").attr("class",legendBoxClasses.join(" ")).attr("transform","translate(20, 30)");const legendSettings=external_d3_svg_legend_default.a.legendColor().title(columnLabel!==null&&columnLabel!==void 0?columnLabel:"").shapeWidth(15).orient("vertical").ascending(!reversed).labelFormat(d3.format(stringFormat)).labels((props=>this.formatLabels(scale,props))).cellFilter(this.removeInvalidValues).scale(scale);svg.select(".LegendViewBox").call(legendSettings);const title=svg.select(".legendTitle").node().innerHTML;this.setTitle(title);const dimensions=d3.select(this._ref.current).select("svg .legendCells").node().getBBox();if(dimensions){this._ref.current.style.width=`${dimensions.width}px`;this._ref.current.style.height=`${this.state.expanded?dimensions.height:0}px`}}componentDidMount(){this.renderLegend()}componentDidUpdate(){this.renderLegend()}render(){var _this$props$visualiza;return Object(jsx_runtime_["jsxs"])(LegendView,{_isCartesian:(_this$props$visualiza=this.props.visualization)===null||_this$props$visualiza===void 0?void 0:_this$props$visualiza.isCartesian(),_visible:!!this.state.visible,children:[Object(jsx_runtime_["jsx"])(LegendTitle,{title:this.state.title,onClick:()=>this.setState({expanded:!this.state.expanded}),expanded:this.state.expanded}),Object(jsx_runtime_["jsx"])(LegendViewContent,{ref:this._ref})]})}}class LegendComponent_LegendComponent extends external_react_default.a.Component{render(){var _this$props$visualiza,_this$props$visualiza2;if((_this$props$visualiza=this.props.visualization)!==null&&_this$props$visualiza!==void 0&&_this$props$visualiza.isCartesian()){return Object(jsx_runtime_["jsx"])(LegendCartesianComponent_LegendCartesianComponent,{...this.props})}else if((_this$props$visualiza2=this.props.visualization)!==null&&_this$props$visualiza2!==void 0&&_this$props$visualiza2.isGeo()){return Object(jsx_runtime_["jsx"])(LegendGeoComponent_LegendGeoComponent,{...this.props})}return null}}const LegendContainer_layersSelector=_ref=>{let{layers}=_ref;return layers};const visualizationSelector=_ref2=>{let{visualizations}=_ref2;return visualizations};const viewStatesSelector=_ref3=>{let{viewStates}=_ref3;return viewStates};const worldsSelector=_ref4=>{let{worlds}=_ref4;return worlds};const LegendContainer_currentVisualizationSelector=Object(external_reselect_["createSelector"])([visualizationSelector],(visualizations=>visualizations.getCurrent()));const currentLayersSelector=Object(external_reselect_["createSelector"])([LegendContainer_layersSelector,LegendContainer_currentVisualizationSelector],((layers,currentVisualization)=>layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const currentViewStateSelector=Object(external_reselect_["createSelector"])([viewStatesSelector,LegendContainer_currentVisualizationSelector],((viewStates,currentVisualization)=>viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const currentWorldSelector=Object(external_reselect_["createSelector"])([worldsSelector,LegendContainer_currentVisualizationSelector],((worlds,currentVisualization)=>worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const LegendContainer_viewStateSelector=Object(external_reselect_["createSelector"])([currentViewStateSelector,currentWorldSelector],((viewState,world)=>{const zoom=Number(viewState.zoom.toFixed(0));const visibleWorldBox=viewState.getVisibleWorld(world);return{zoom,visibleWorldBox}}));const LegendContainer_mapStateToProps=state=>({rowsetStore:state.rowsetStore,queries:state.queryStore.queries,legends:state.legends,layers:currentLayersSelector(state),visualization:LegendContainer_currentVisualizationSelector(state),...LegendContainer_viewStateSelector(state)});var LegendContainer=Object(external_react_redux_["connect"])(LegendContainer_mapStateToProps,null,null,{context:Store["a"]})(LegendComponent_LegendComponent);const CustomView=Object(src_theme["a"])("div",{name:"CustomView"})((_ref=>{let{theme}=_ref;return{padding:`70px 3.5rem ${theme.shape.paddingInner}px ${theme.shape.paddingInner}px`,height:"100%","@media (min-width: 768px)":{paddingTop:theme.shape.paddingInner}}}));class CustomViewComponent_CustomViewComponent extends PureComponent["a"]{constructor(props){super(props);this.viewLayerCache=void 0;this.viewLayerCache=new Map}componentDidMount(){this.props.onViewLoad()}getViewLayers(){return createViewLayers({visualization:this.props.currentVisualization,layers:this.props.layers.getFromVisualization(this.props.currentVisualization.id).renderable(this.props.rowsetStore.getRowsets()),queries:this.props.queries,rowsetStore:this.props.rowsetStore,visibleWorldBox:this.props.visibleWorldBox,zoom:0,encodingScope:this.props.encodingScope,themeMode:"light"})}render(){return Object(jsx_runtime_["jsx"])(CustomView,{children:this.getViewLayers()})}}const CustomViewContainer_mapStateToProps=state=>{var _getFromVisualization;return{visualizations:state.visualizations,layers:state.layers,queries:state.queryStore.queries,rowsetStore:state.rowsetStore,currentVisualization:state.visualizations.getCurrent(),encodingScope:state.encodingScope,visibleWorldBox:state.visualizations.getCurrent()&&((_getFromVisualization=state.worlds.getFromVisualization(state.visualizations.getCurrent().id))===null||_getFromVisualization===void 0?void 0:_getFromVisualization.box())}};const CustomViewContainer_mapDispatchToProps=dispatch=>({onViewLoad:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;if(visualizations.getCurrentIndex()>0){dispatch(Actions["a"].view.jumpViewLoaded({visualizationId:currentVisualization.id}))}else{dispatch(Actions["a"].view.viewLoaded({visualizationId:currentVisualization.id}))}}});const CustomViewContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps,onViewLoad:dispatchProps.onViewLoad(stateProps.visualizations,stateProps.jumpState)});var CustomViewContainer=Object(external_react_redux_["connect"])(CustomViewContainer_mapStateToProps,CustomViewContainer_mapDispatchToProps,CustomViewContainer_mergeProps,{context:Store["a"]})(CustomViewComponent_CustomViewComponent);var external_react_transition_group_=__webpack_require__(65);var ViewTransition_module=__webpack_require__(41);var ViewTransition_module_default=__webpack_require__.n(ViewTransition_module);const dotBricksKeyframes=react_["keyframes"]`
2
+ module.exports=function(modules){var installedModules={};function __webpack_require__(moduleId){if(installedModules[moduleId]){return installedModules[moduleId].exports}var module=installedModules[moduleId]={i:moduleId,l:false,exports:{}};modules[moduleId].call(module.exports,module,module.exports,__webpack_require__);module.l=true;return module.exports}__webpack_require__.m=modules;__webpack_require__.c=installedModules;__webpack_require__.d=function(exports,name,getter){if(!__webpack_require__.o(exports,name)){Object.defineProperty(exports,name,{enumerable:true,get:getter})}};__webpack_require__.r=function(exports){if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(exports,"__esModule",{value:true})};__webpack_require__.t=function(value,mode){if(mode&1)value=__webpack_require__(value);if(mode&8)return value;if(mode&4&&typeof value==="object"&&value&&value.__esModule)return value;var ns=Object.create(null);__webpack_require__.r(ns);Object.defineProperty(ns,"default",{enumerable:true,value});if(mode&2&&typeof value!="string")for(var key in value)__webpack_require__.d(ns,key,function(key){return value[key]}.bind(null,key));return ns};__webpack_require__.n=function(module){var getter=module&&module.__esModule?function getDefault(){return module["default"]}:function getModuleExports(){return module};__webpack_require__.d(getter,"a",getter);return getter};__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)};__webpack_require__.p="";return __webpack_require__(__webpack_require__.s=144)}([function(module,exports){module.exports=require("react/jsx-runtime")},function(module,__webpack_exports__,__webpack_require__){"use strict";var external_typesafe_actions_=__webpack_require__(2);const actions={analyticsEvent:Object(external_typesafe_actions_["createAction"])("WA_EVENT")()};var GAActions=actions;const AppActions_actions={fetch:{request:Object(external_typesafe_actions_["createAction"])("FETCH_APP_REQUEST")(),success:Object(external_typesafe_actions_["createAction"])("FETCH_APP_SUCCESS")(),failure:Object(external_typesafe_actions_["createAction"])("FETCH_APP_FAILURE")()},create:{request:Object(external_typesafe_actions_["createAction"])("CREATE_APP_REQUEST")(),success:Object(external_typesafe_actions_["createAction"])("CREATE_APP_SUCCESS")(),failure:Object(external_typesafe_actions_["createAction"])("CREATE_APP_FAILURE")()},appPageLoaded:Object(external_typesafe_actions_["createAction"])("APP_PAGE_LOADED")(),appEditToggle:Object(external_typesafe_actions_["createAction"])("APP_EDIT_TOGGLE")(),timeTravelRequested:Object(external_typesafe_actions_["createAction"])("TIME_TRAVEL_REQUESTED")(),delete:Object(external_typesafe_actions_["createAsyncAction"])("DELETE_APP_REQUEST","DELETE_APP_SUCCESS","DELETE_APP_FAILURE")(),save:Object(external_typesafe_actions_["createAsyncAction"])("EDIT_APP_REQUEST","EDIT_APP_SUCCESS","EDIT_APP_FAILURE")(),restoreVersion:Object(external_typesafe_actions_["createAsyncAction"])("RESTORE_APP_VERSION_REQUEST","RESTORE_APP_VERSION_SUCCESS","RESTORE_APP_VERSION_FAILURE")(),checkoutVersion:Object(external_typesafe_actions_["createAsyncAction"])("CHECKOUT_APP_VERSION_REQUEST","CHECKOUT_APP_VERSION_SUCCESS","CHECKOUT_APP_VERSION_FAILURE")(),discardChanges:{request:Object(external_typesafe_actions_["createAction"])("DISCARD_APP_CHANGES_REQUEST")()},navigateToScreen:Object(external_typesafe_actions_["createAction"])("NavigateToScreen")()};var AppActions=AppActions_actions;const AppsActions_actions={appsLoaded:Object(external_typesafe_actions_["createAction"])("APPS_PAGE_LOADED")(),fetchApps:{success:Object(external_typesafe_actions_["createAction"])("FETCH_APPS_SUCCESS")(),failure:Object(external_typesafe_actions_["createAction"])("FETCH_APPS_FAILURE")()}};var AppsActions=AppsActions_actions;const AuthActions_actions={signedIn:Object(external_typesafe_actions_["createAction"])("SIGNED_IN")()};var AuthActions=AuthActions_actions;const DataBrowserActions_actions={rowChanged:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_CHANGED")(),rowPlaced:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_PLACED")(),rowUnplaced:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_UNPLACED")(),rowSelected:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_SELECTED")(),rowUnselected:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_UNSELECTED")(),rowCreate:{requested:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_CREATE_REQUESTED")()},rowDelete:{requested:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_DELETE_REQUESTED")()},onRowDetailsLoaded:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROW_DETAILS_LOADED")(),fetchDataBrowserRows:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROWS_FETCH_REQUESTED")(),dataBrowserRowsFetched:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_ROWS_FETCHED")(),dataBrowserSearch:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_SEARCH")(),navigateToPosition:Object(external_typesafe_actions_["createAction"])("NAVIGATE_TO_POSITION")(),paginateNext:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_PAGINATE_NEXT")(),paginatePrev:Object(external_typesafe_actions_["createAction"])("DATA_BROWSER_PAGINATE_PREVIOUS")()};var DataBrowserActions=DataBrowserActions_actions;const QueryActions_actions={dataListUpdated:Object(external_typesafe_actions_["createAction"])("DATA_LIST_UPDATED")()};var QueryActions=QueryActions_actions;const FilterActions_actions={sidebarFiltersClear:Object(external_typesafe_actions_["createAction"])("SIDEBAR_FILTERS_CLEAR")(),filterToggle:Object(external_typesafe_actions_["createAction"])("FILTER_TOGGLE")(),filterSearch:Object(external_typesafe_actions_["createAction"])("FILTER_SEARCH")(),filterSearchFetched:Object(external_typesafe_actions_["createAction"])("FILTER_SEARCH_FETCHED")()};var FilterActions=FilterActions_actions;var HocActions=__webpack_require__(63);const LayerActions_actions={imageTransformed:Object(external_typesafe_actions_["createAction"])("LAYER_IMAGE_TRANSFORMED")(),imageUploaded:Object(external_typesafe_actions_["createAction"])("LAYER_IMAGE_UPLOADED")(),imageEditing:Object(external_typesafe_actions_["createAction"])("LAYER_IMAGE_EDITING")(),dragStart:Object(external_typesafe_actions_["createAction"])("LAYER_DRAG_START")(),dragEnded:Object(external_typesafe_actions_["createAction"])("LAYER_DRAG_ENDED")(),click:Object(external_typesafe_actions_["createAction"])("LAYER_CLICK")(),clickOut:Object(external_typesafe_actions_["createAction"])("LAYER_CLICK_OUT")(),mouseHover:Object(external_typesafe_actions_["createAction"])("LAYER_MOUSE_HOVER")(),mouseLeft:Object(external_typesafe_actions_["createAction"])("LAYER_MOUSE_LEFT")(),nameChanged:Object(external_typesafe_actions_["createAction"])("LAYER_NAME_CHANGED")(),visibilityChanged:Object(external_typesafe_actions_["createAction"])("LAYER_VISIBILITY_CHANGED")(),queryChanged:Object(external_typesafe_actions_["createAction"])("LAYER_QUERY_CHANGED")(),transformChanged:Object(external_typesafe_actions_["createAction"])("LAYER_TRANSFORM_CHANGED")(),animationChanged:Object(external_typesafe_actions_["createAction"])("LAYER_ANIMATION_CHANGED")(),encodingChanged:Object(external_typesafe_actions_["createAction"])("LAYER_ENCODING_CHANGED")(),encodingPositionChanged:Object(external_typesafe_actions_["createAction"])("LAYER_POSITION_ENCODING_CHANGED")(),select:Object(external_typesafe_actions_["createAction"])("LAYER_SELECT")(),move:Object(external_typesafe_actions_["createAction"])("LAYER_MOVE")(),delete:Object(external_typesafe_actions_["createAction"])("LAYER_DELETE")(),createDraft:Object(external_typesafe_actions_["createAsyncAction"])("LAYER_CREATE_DRAFT_REQUEST","LAYER_CREATE_DRAFT_SUCCESS","LAYER_CREATE_DRAFT_FAILURE")()};var LayerActions=LayerActions_actions;var NavigationActions=__webpack_require__(76);const RootActions_actions={pageView:Object(external_typesafe_actions_["createAction"])("PAGE_VIEW")(),genericError:Object(external_typesafe_actions_["createAction"])("ERROR")()};var RootActions=RootActions_actions;const RowsetActions_actions={optimisticRowSaved:Object(external_typesafe_actions_["createAction"])("OPTIMISTIC_ROW_SAVED")(),rowSaved:Object(external_typesafe_actions_["createAction"])("ROW_SAVED")(),rowCreated:Object(external_typesafe_actions_["createAction"])("ROW_CREATED")(),rowDeleted:Object(external_typesafe_actions_["createAction"])("ROW_DELETED")(),rowFetched:Object(external_typesafe_actions_["createAction"])("ROW_FETCHED")(),fetchDataRequested:Object(external_typesafe_actions_["createAction"])("FETCH_DATA_REQUESTED")(),fetchData:Object(external_typesafe_actions_["createAsyncAction"])("FETCH_DATA_REQUEST","FETCH_DATA_SUCCESS","FETCH_DATA_FAILURE")()};var RowsetActions=RowsetActions_actions;var ViewActions=__webpack_require__(48);const SidebarActions_actions={toggle:Object(external_typesafe_actions_["createAction"])("SIDEBAR_TOGGLE")()};var SidebarActions=SidebarActions_actions;const UpdateActions_actions={subscribe:Object(external_typesafe_actions_["createAction"])("UPDATE_SUBSCRIBE")()};var UpdateActions=UpdateActions_actions;const encodingScopeActions={changed:Object(external_typesafe_actions_["createAction"])("ENCODING_SCOPE_CHANGED")()};const templateActions={createApp:Object(external_typesafe_actions_["createAsyncAction"])("CREATE_APP_FROM_TEMPLATE_REQUEST","CREATE_APP_FROM_TEMPLATE_SUCCESS","CREATE_APP_FROM_TEMPLATE_FAILURE")(),fetchTemplates:Object(external_typesafe_actions_["createAsyncAction"])("FETCH_TEMPLATES_REQUEST","FETCH_TEMPLATES_SUCCESS","FETCH_TEMPLATES_FAILURE")()};const visualizationActions={jumpRequested:Object(external_typesafe_actions_["createAction"])("JUMP_REQUESTED")(),rowJumpRequested:Object(external_typesafe_actions_["createAction"])("ROW_JUMP_REQUESTED")(),jumpBackRequested:Object(external_typesafe_actions_["createAction"])("JUMP_BACK_REQUESTED")(),setInitialPosition:Object(external_typesafe_actions_["createAction"])("SET_INITIAL_POSITION")(),save:Object(external_typesafe_actions_["createAsyncAction"])("VISUALIZATION_SAVE_REQUEST","VISUALIZATION_SAVE_SUCCESS","VISUALIZATION_SAVE_FAILURE")(),changeTab:Object(external_typesafe_actions_["createAction"])("CHANGE_VISUALIZATION_TAB")()};const worldActions={worldCreated:Object(external_typesafe_actions_["createAction"])("WORLD_CREATED")()};const Actions_actions={analytics:GAActions,app:AppActions,apps:AppsActions,auth:AuthActions,dataBrowser:DataBrowserActions,query:QueryActions,filter:FilterActions,hoc:HocActions["a"],layer:LayerActions,navigation:NavigationActions["b"],root:RootActions,rowset:RowsetActions,view:ViewActions["a"],sidebar:SidebarActions,update:UpdateActions,template:templateActions,encodingScope:encodingScopeActions,visualization:visualizationActions,world:worldActions};var Actions=__webpack_exports__["a"]=Actions_actions},function(module,exports){module.exports=require("typesafe-actions")},function(module,exports){module.exports=require("lodash/fp")},function(module,exports){module.exports=require("redux-saga/effects")},function(module,exports){module.exports=require("react")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"f",(function(){return Row["a"]}));__webpack_require__.d(__webpack_exports__,"g",(function(){return Rows["a"]}));__webpack_require__.d(__webpack_exports__,"e",(function(){return Query_Query}));__webpack_require__.d(__webpack_exports__,"d",(function(){return Queries_Queries}));__webpack_require__.d(__webpack_exports__,"a",(function(){return Column_Column}));__webpack_require__.d(__webpack_exports__,"c",(function(){return Columns_Columns}));__webpack_require__.d(__webpack_exports__,"i",(function(){return Geti["a"]}));__webpack_require__.d(__webpack_exports__,"b",(function(){return ColumnType["a"]}));__webpack_require__.d(__webpack_exports__,"h",(function(){return ValueFormatter["a"]}));var Row=__webpack_require__(55);var Rows=__webpack_require__(69);var initializerDefineProperty=__webpack_require__(13);var applyDecoratedDescriptor=__webpack_require__(11);var initializerWarningHelper=__webpack_require__(40);var src=__webpack_require__(8);var external_class_transformer_=__webpack_require__(7);var external_reflect_metadata_=__webpack_require__(47);var ColumnType=__webpack_require__(21);var external_js_sentencecase_=__webpack_require__(49);var external_js_sentencecase_default=__webpack_require__.n(external_js_sentencecase_);class Column_Column{constructor(props){this.name=void 0;this.id=void 0;this.type=void 0;this.stats=void 0;this.quantitative=void 0;this.temporal=void 0;if(props){this.name=props.name;this.type=props.type;this.stats=props.stats;this.id=props.id}}isUpperCase(string){return string===string.toUpperCase()}getType(){if(this.type)return this.type;return ColumnType["b"]}isType(type){return this.type===type}getLabel(){if(this.isUpperCase(this.name))return this.name;return external_js_sentencecase_default()(this.name)}isQuantitative(){return this.quantitative}isTemporal(){return this.temporal}isPrivate(){return this.name.startsWith("_")}getName(){return this.name}getStats(){return this.stats}isGeometry(){return this.type===ColumnType["a"].GEOMETRY}}class Columns_Columns extends Array{get(name){return this.find((c=>c.name.toLowerCase()===(name===null||name===void 0?void 0:name.toLowerCase())))}getPublics(){return new Columns_Columns(...this.filter((column=>!column.isPrivate())))}getQuantitatives(){return new Columns_Columns(...this.filter((column=>column.isQuantitative())))}getPrintables(){return new Columns_Columns(...this.filter((column=>!(column.type===ColumnType["a"].GEOMETRY||column.type===ColumnType["a"].JSON))))}getId(){return this.find((column=>column.id))}hasId(){return!!this.find((column=>column.id))}pickByNames(){let names=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];const picked=new Columns_Columns;names.forEach((name=>{const column=this.get(name);if(column)picked.push(column)}));return picked}has(name){return!!this.get(name)}}var _dec,_dec2,_class,_descriptor;let Transform_Transform=(_dec=Object(external_class_transformer_["Type"])((()=>Column_Column)),_dec2=Object(external_class_transformer_["Transform"])((_ref=>{let{value}=_ref;return Array.isArray(value)?new Columns_Columns(...value):new Columns_Columns})),_class=class Transform{constructor(){this.type=void 0;Object(initializerDefineProperty["a"])(this,"columns",_descriptor,this)}getColumns(){if(!this.columns){return new Columns_Columns}return new Columns_Columns(...this.columns)}},_descriptor=Object(applyDecoratedDescriptor["a"])(_class.prototype,"columns",[_dec,_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);var fp_=__webpack_require__(3);let QueryWriteMode;(function(QueryWriteMode){QueryWriteMode["NONE"]="NONE";QueryWriteMode["UPDATE"]="UPDATE";QueryWriteMode["INSERT"]="INSERT"})(QueryWriteMode||(QueryWriteMode={}));var Query_dec,Query_dec2,_dec3,_dec4,_dec5,_dec6,Query_class,Query_descriptor,_descriptor2,_descriptor3;let Query_Query=(Query_dec=Object(external_class_transformer_["Type"])((()=>Column_Column)),Query_dec2=Object(external_class_transformer_["Transform"])((_ref=>{let{value}=_ref;return Array.isArray(value)?new Columns_Columns(...value):new Columns_Columns})),_dec3=Object(external_class_transformer_["Type"])((()=>Transform_Transform)),_dec4=Object(external_class_transformer_["Transform"])((_ref2=>{let{value}=_ref2;return Array.isArray(value)?value:[]})),_dec5=Object(external_class_transformer_["Type"])((()=>Column_Column)),_dec6=Object(external_class_transformer_["Transform"])((_ref3=>{let{value}=_ref3;return Array.isArray(value)?new Columns_Columns(...value):new Columns_Columns})),Query_class=class Query{constructor(name,dataSource,columns){this.name=void 0;this.dataSource=void 0;this.writeMode=void 0;Object(initializerDefineProperty["a"])(this,"columns",Query_descriptor,this);Object(initializerDefineProperty["a"])(this,"transforms",_descriptor2,this);Object(initializerDefineProperty["a"])(this,"writeColumns",_descriptor3,this);this.name=name;this.dataSource=dataSource;this.columns=columns!==null&&columns!==void 0?columns:new Columns_Columns}initializeColumns(){if(Object(fp_["isNil"])(this.columns)){this.columns=new Columns_Columns}}getColumns(){this.initializeColumns();return new Columns_Columns(...this.columns)}getTransform(type){return this.transforms?this.transforms.find((transform=>transform.type.toLowerCase()===type.toLowerCase())):undefined}getTransformTypes(){return this.transforms?this.transforms.map((transform=>transform.type)):[]}getDataSource(){return this.dataSource}getResolutionRange(resolutionColumn){if(this.columns.has(resolutionColumn)){var _this$columns$get,_this$columns$get$sta,_this$columns$get2,_this$columns$get2$st;return new src["e"]({min:(_this$columns$get=this.columns.get(resolutionColumn))===null||_this$columns$get===void 0?void 0:(_this$columns$get$sta=_this$columns$get.stats)===null||_this$columns$get$sta===void 0?void 0:_this$columns$get$sta.min,max:(_this$columns$get2=this.columns.get(resolutionColumn))===null||_this$columns$get2===void 0?void 0:(_this$columns$get2$st=_this$columns$get2.stats)===null||_this$columns$get2$st===void 0?void 0:_this$columns$get2$st.max})}return undefined}canInsert(){return this.writeMode===QueryWriteMode.INSERT}canUpdate(){return this.writeMode===QueryWriteMode.INSERT||this.writeMode===QueryWriteMode.UPDATE}getName(){return this.name}},Query_descriptor=Object(applyDecoratedDescriptor["a"])(Query_class.prototype,"columns",[Query_dec,Query_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(applyDecoratedDescriptor["a"])(Query_class.prototype,"transforms",[_dec3,_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor3=Object(applyDecoratedDescriptor["a"])(Query_class.prototype,"writeColumns",[_dec5,_dec6],{configurable:true,enumerable:true,writable:true,initializer:null}),Query_class);class Queries_Queries extends Array{findQuery(key){if(!key)return;if(!key.query||!key.source)return;return this.find((q=>q.getName()===key.query&&q.getDataSource()===key.source))}findEntity(key){const query=this.findQuery(key);if(key.transform){return query===null||query===void 0?void 0:query.getTransform(key.transform)}return query}getColumns(key){const entity=this.findEntity(key);if(entity){return entity.columns}return new Columns_Columns}getColumn(queryKey,columnName){return this.getColumns(queryKey).find((column=>column.name===columnName))}}var Geti=__webpack_require__(60);var ValueFormatter=__webpack_require__(59)},function(module,exports){module.exports=require("class-transformer")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Bounds_Bounds}));__webpack_require__.d(__webpack_exports__,"e",(function(){return Range}));__webpack_require__.d(__webpack_exports__,"b",(function(){return Box}));__webpack_require__.d(__webpack_exports__,"d",(function(){return Point}));__webpack_require__.d(__webpack_exports__,"c",(function(){return Coordinates}));let PointEnum;(function(PointEnum){PointEnum[PointEnum["x"]=0]="x";PointEnum[PointEnum["y"]=1]="y"})(PointEnum||(PointEnum={}));class Point extends Array{constructor(){for(var _len=arguments.length,point=new Array(_len),_key=0;_key<_len;_key++){point[_key]=arguments[_key]}super(...[point[PointEnum.x],point[PointEnum.y]])}getX(){return this[PointEnum.x]}getY(){return this[PointEnum.y]}}var invariant_=__webpack_require__(64);var bearing_=__webpack_require__(100);var bearing_default=__webpack_require__.n(bearing_);var helpers_=__webpack_require__(23);var projection_=__webpack_require__(90);var centroid_=__webpack_require__(42);var centroid_default=__webpack_require__.n(centroid_);var transform_rotate_=__webpack_require__(77);var transform_rotate_default=__webpack_require__.n(transform_rotate_);let BoundPointEnum;(function(BoundPointEnum){BoundPointEnum[BoundPointEnum["bottomLeft"]=0]="bottomLeft";BoundPointEnum[BoundPointEnum["topLeft"]=1]="topLeft";BoundPointEnum[BoundPointEnum["topRight"]=2]="topRight";BoundPointEnum[BoundPointEnum["bottomRight"]=3]="bottomRight"})(BoundPointEnum||(BoundPointEnum={}));class Bounds_Bounds extends Array{constructor(){super(...[new Point(...arguments.length<=0?undefined:arguments[0]),new Point(...arguments.length<=1?undefined:arguments[1]),new Point(...arguments.length<=2?undefined:arguments[2]),new Point(...arguments.length<=3?undefined:arguments[3])])}static fromPlain(bounds){if(bounds.length<4||bounds.length>5){throw new Error("Bounds must have 4 or 5 points")}return new Bounds_Bounds(...bounds)}static fromGeoJSON(polygon){const coordinatesList=Object(invariant_["getCoords"])(polygon);const coordinates=coordinatesList.length?coordinatesList[0]:[];if(coordinates.length!==5){throw new Error("Polygon must have exactly 5 points")}return Bounds_Bounds.fromPlain([coordinates[0],coordinates[1],coordinates[2],coordinates[3]])}static fromFeatureCollection(collection){return this.fromGeoJSON(collection[0])}toGeoJSON(){const coordinates=[[this[0],this[1],this[2],this[3],this[0]]];return Object(helpers_["polygon"])(coordinates)}toFeatureCollection(){return Object(helpers_["featureCollection"])([this.toGeoJSON()])}toPolygon(){return[this[0],this[1],this[2],this[3],this[0]]}getTopRight(){return this[BoundPointEnum.topRight]}getTopLeft(){return this[BoundPointEnum.topLeft]}getBottomRight(){return this[BoundPointEnum.bottomRight]}getBottomLeft(){return this[BoundPointEnum.bottomLeft]}getBearing(){return bearing_default()(this.getTopRight(),this.getTopLeft())+90}getCentroid(){const coords=Object(invariant_["getCoords"])(centroid_default()(this.toGeoJSON()));return new Point(...coords)}extrudeKeepingWidth(refWidth,refHeight){const mercatorBounds=Bounds_Bounds.fromGeoJSON(Object(projection_["toMercator"])(this.toGeoJSON()));const adjacentLeg=mercatorBounds.getTopRight().getX()-mercatorBounds.getTopLeft().getX();const oppositeLeg=mercatorBounds.getTopRight().getY()-mercatorBounds.getTopLeft().getY();const ratio=refWidth/refHeight;const newWidth=Math.sqrt(Math.pow(adjacentLeg,2)+Math.pow(oppositeLeg,2));const newHeight=newWidth/ratio;const x1=mercatorBounds.getCentroid().getX()-newWidth/2;const y1=mercatorBounds.getCentroid().getY()-newHeight/2;const x2=mercatorBounds.getCentroid().getX()+newWidth/2;const y2=mercatorBounds.getCentroid().getY()+newHeight/2;const newBounds=Bounds_Bounds.fromPlain([[x1,y1],[x1,y2],[x2,y2],[x2,y1]]);const wsg84Rect=Object(projection_["toWgs84"])(newBounds.toGeoJSON());const rotatedGeoJSONPolygon=transform_rotate_default()(wsg84Rect,this.getBearing());return Bounds_Bounds.fromGeoJSON(rotatedGeoJSONPolygon)}}class Range{constructor(){let{min,max}=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.min=void 0;this.max=void 0;this.min=min;this.max=max}hasValues(){return this.min!==undefined||this.max!==undefined}getInterval(){return this.getMax()-this.getMin()}getCount(){return this.getMax()-this.getMin()+1}multiply(multiplier){const intervalDelta=this.getInterval()*multiplier-this.getInterval();return new Range({min:this.getMin()-intervalDelta/2,max:this.getMax()+intervalDelta/2})}getMin(){if(this.min===undefined)return 0;return this.min}getMax(){if(this.max===undefined)return Number.MAX_SAFE_INTEGER;return this.max}isInRange(value){if(value===undefined)return false;return value>=this.getMin()&&value<this.getMax()}toPlain(){return[this.getMin(),this.getMax()]}}class Box{constructor(_ref){let{x,y,z}=_ref;this.x=void 0;this.y=void 0;this.z=void 0;this.x=x;this.y=y;this.z=z}isPointInRange(point){return this.x.isInRange(point.x)&&this.y.isInRange(point.y)}getDimensions(){return{width:this.x.getInterval(),height:this.y.getInterval()}}getPolygon(){return[[this.x.getMin(),this.y.getMin()],[this.x.getMax(),this.y.getMin()],[this.x.getMax(),this.y.getMax()],[this.x.getMin(),this.y.getMax()],[this.x.getMin(),this.y.getMin()]]}multiply(factor){return new Box({x:this.x.multiply(factor),y:this.y.multiply(factor),z:this.z})}}const fromDimensions=dimensions=>new Box({x:new Range({min:0,max:dimensions.width}),y:new Range({min:0,max:dimensions.height})});class Coordinates{constructor(){let props=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.x=void 0;this.y=void 0;this.z=void 0;this.default=void 0;if(!props){props={}}this.x=props.x;this.y=props.y;this.z=props.z;if(props.longitude)this.x=props.longitude;if(props.latitude)this.y=props.latitude;if(!this.x){this.x=0;this.default=true}if(!this.y){this.y=0;this.default=true}if(!this.z){this.z=0}}static fromArray(xyz){return new Coordinates({x:xyz[0],y:xyz[1],z:xyz[2]})}isAtOrigin(){return this.x===0&&this.y===0}toArray(){return[this.x,this.y,this.z]}move(xMoveDelta,yMoveDelta,zMoveDelta){if(xMoveDelta)this.x=this.x+xMoveDelta;if(yMoveDelta)this.y=this.y+yMoveDelta;if(zMoveDelta)this.z=this.z+zMoveDelta}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return styled}));var _mui_material_styles__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(57);var _mui_material_styles__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_mui_material_styles__WEBPACK_IMPORTED_MODULE_0__);const styled=(c,args)=>{if(!(args!==null&&args!==void 0&&args.name)){throw new Error("styled component requires a name. Otherwise it will be hard to debug.")}args.shouldForwardProp=prop=>!prop.includes("_");return Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_0__["styled"])(c,args)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"f",(function(){return Encodings_Encodings}));__webpack_require__.d(__webpack_exports__,"e",(function(){return EncodingScope}));__webpack_require__.d(__webpack_exports__,"c",(function(){return DEFAULT_ENCODING_SCOPE}));__webpack_require__.d(__webpack_exports__,"h",(function(){return PositionEncoding_PositionEncoding}));__webpack_require__.d(__webpack_exports__,"a",(function(){return ColorEncoding["a"]}));__webpack_require__.d(__webpack_exports__,"b",(function(){return ColorEncoding["b"]}));__webpack_require__.d(__webpack_exports__,"o",(function(){return Schemes["b"]}));__webpack_require__.d(__webpack_exports__,"l",(function(){return getColorAccessor}));__webpack_require__.d(__webpack_exports__,"n",(function(){return getColumnStats}));__webpack_require__.d(__webpack_exports__,"g",(function(){return IconAccessor_IconAccessor}));__webpack_require__.d(__webpack_exports__,"p",(function(){return getSizeAccessor}));__webpack_require__.d(__webpack_exports__,"j",(function(){return TextEncoding_TextEncoding}));__webpack_require__.d(__webpack_exports__,"i",(function(){return scale_ScaleType["b"]}));__webpack_require__.d(__webpack_exports__,"d",(function(){return scale_ScaleType["a"]}));__webpack_require__.d(__webpack_exports__,"m",(function(){return scale_ScaleType["c"]}));__webpack_require__.d(__webpack_exports__,"k",(function(){return createScale}));var initializerDefineProperty=__webpack_require__(13);var applyDecoratedDescriptor=__webpack_require__(11);var initializerWarningHelper=__webpack_require__(40);var SizeEncoding=__webpack_require__(32);var ColorEncoding=__webpack_require__(19);class IconEncoding{constructor(props){this.value=void 0;this.field=void 0;this.createdTimestamp=void 0;this.map=void 0;Object.assign(this,props);this.createdTimestamp=new Date}isRenderable(){return!!this.value||!!this.field}}var src=__webpack_require__(6);var internals_src=__webpack_require__(16);var fp_=__webpack_require__(3);var external_d3_=__webpack_require__(22);class TextEncoding_TextEncoding{constructor(props){this.field=void 0;this.align=void 0;this.angle=void 0;this.suffix=void 0;this.prefix=void 0;this.format=void 0;Object.assign(this,props)}getField(){return this.field}getAnchor(){switch(this.align){case"left":return"start";case"right":return"end";default:return"middle"}}getAngle(){var _this$angle;return(_this$angle=this.angle)!==null&&_this$angle!==void 0?_this$angle:0}formatValue(value,columnType){if(this.format){try{if(columnType===src["b"].DATETIME){return external_d3_["utcFormat"](this.format)(value)}else{return external_d3_["format"](this.format)(value)}}catch(e){internals_src["c"].error("Invalid format "+this.format);return value}}return Object(src["h"])(value,columnType)}getValue(row,columnType){let value=Object(src["i"])(this.getField(),row);if(Object(fp_["isNil"])(value))return null;value=this.formatValue(value,columnType);if(this.prefix){value=this.prefix+value}if(this.suffix){value=value+this.suffix}return value}getMinPossibleSize(){return 6}isRenderable(){return!!this.field}}var ScaleKey=__webpack_require__(52);class PositionEncoding_PositionEncoding{constructor(props){this.x=void 0;this.y=void 0;this.z=void 0;this.createdTimestamp=void 0;Object.assign(this,props);this.createdTimestamp=new Date}getX(){return this.x}getY(){return this.y}getZ(){return this.z}hasZ(){return!!this.z}get(column){if(column==="x"){return this.getX()}else if(column==="y"){return this.getY()}else if(column==="z"){return this.getZ()}}is2D(){var _this$x,_this$y;return((_this$x=this.x)===null||_this$x===void 0?void 0:_this$x.field)===((_this$y=this.y)===null||_this$y===void 0?void 0:_this$y.field)}isRenderable(){var _this$x2,_this$y2;return!!((_this$x2=this.x)!==null&&_this$x2!==void 0&&_this$x2.field)&&!!((_this$y2=this.y)!==null&&_this$y2!==void 0&&_this$y2.field)}getScaleKeys(){var _this$x3,_this$x4,_this$x4$scale,_this$y3,_this$y4,_this$y4$scale,_this$z;const scaleKeys=new ScaleKey["b"]({field:(_this$x3=this.x)===null||_this$x3===void 0?void 0:_this$x3.field,type:(_this$x4=this.x)===null||_this$x4===void 0?void 0:(_this$x4$scale=_this$x4.scale)===null||_this$x4$scale===void 0?void 0:_this$x4$scale.type},{field:(_this$y3=this.y)===null||_this$y3===void 0?void 0:_this$y3.field,type:(_this$y4=this.y)===null||_this$y4===void 0?void 0:(_this$y4$scale=_this$y4.scale)===null||_this$y4$scale===void 0?void 0:_this$y4$scale.type});if((_this$z=this.z)!==null&&_this$z!==void 0&&_this$z.field){var _this$z2,_this$z3,_this$z3$scale;scaleKeys.setZ({field:(_this$z2=this.z)===null||_this$z2===void 0?void 0:_this$z2.field,type:(_this$z3=this.z)===null||_this$z3===void 0?void 0:(_this$z3$scale=_this$z3.scale)===null||_this$z3$scale===void 0?void 0:_this$z3$scale.type})}return scaleKeys}}class AnimationEncoding{constructor(props){this.field=void 0;this.timeline=void 0;Object.assign(this,props)}isRenderable(){return true}}class BoundsEncoding{constructor(props){this.field=void 0;Object.assign(this,props)}isRenderable(){return!!this.field}}class ImageEncoding{constructor(props){this.field=void 0;Object.assign(this,props)}isRenderable(){return!!this.field}}class PolygonEncoding_PolygonEncoding{constructor(props){this.field=void 0;this.contentType=void 0;Object.assign(this,props)}isGeoJson(columns){var _columns$get;if(this.contentType){return this.contentType==="geo-json"}return((_columns$get=columns.get(this.field))===null||_columns$get===void 0?void 0:_columns$get.getType())==src["b"].JSON}isRenderable(){return!!this.field}}var LineEncoding=__webpack_require__(61);var OffsetEncoding=__webpack_require__(79);var external_class_transformer_=__webpack_require__(7);var _dec,_dec2,_class,_descriptor,_descriptor2;let Encodings_Encodings=(_dec=Object(external_class_transformer_["Transform"])((_ref=>{let{value}=_ref;return value.isEnabled&&value!==null&&value!==void 0&&value.isEnabled()?value:false}),{toPlainOnly:true}),_dec2=Object(external_class_transformer_["Transform"])((_ref2=>{let{value}=_ref2;return value!==null&&value!==void 0&&value.isEnabled&&value.isEnabled()?value:false}),{toPlainOnly:true}),_class=class Encodings{constructor(props){var _props$strokeColor,_props$table,_this$position,_this$position$x,_this$position2,_this$position2$y;this.color=void 0;Object(initializerDefineProperty["a"])(this,"strokeColor",_descriptor,this);this.size=void 0;Object(initializerDefineProperty["a"])(this,"strokeSize",_descriptor2,this);this.icon=void 0;this.text=void 0;this.position=void 0;this.x=void 0;this.y=void 0;this.z=void 0;this.heatmap=void 0;this.animation=void 0;this.line=void 0;this.polygon=void 0;this.bounds=void 0;this.image=void 0;this.table=void 0;this.offset=void 0;if(!props)return;Object.assign(this,props);if(props.color)this.color=new ColorEncoding["a"](props.color);this.strokeColor=new ColorEncoding["a"]((_props$strokeColor=props.strokeColor)!==null&&_props$strokeColor!==void 0?_props$strokeColor:{});if(props.size)this.size=new SizeEncoding["a"](props.size);if(props.strokeSize)this.strokeSize=new SizeEncoding["a"](props.strokeSize);if(props.icon)this.icon=new IconEncoding(props.icon);if(props.text)this.text=new TextEncoding_TextEncoding(props.text);if(props.polygon)this.polygon=new PolygonEncoding_PolygonEncoding(props.polygon);if(props.offset)this.offset=new OffsetEncoding["a"](props.offset);if(props.image)this.image=new ImageEncoding(props.image);if(props.line)this.line=new LineEncoding["b"](props.line);if(props.bounds)this.bounds=new BoundsEncoding(props.bounds);if(props.animation)this.animation=new AnimationEncoding(props.animation);if((_props$table=props.table)!==null&&_props$table!==void 0&&_props$table.length){this.table=props.table.map((field=>({...field,value:{encoding:{text:new TextEncoding_TextEncoding(field.value.encoding.text)}}})))}if(props.position||props.x||props.y||props.z){var _props$position;this.position=new PositionEncoding_PositionEncoding((_props$position=props.position)!==null&&_props$position!==void 0?_props$position:{x:props.x,y:props.y,z:props.z})}if((props.bounds||props.polygon||props.line)&&(!((_this$position=this.position)!==null&&_this$position!==void 0&&(_this$position$x=_this$position.x)!==null&&_this$position$x!==void 0&&_this$position$x.field)||!((_this$position2=this.position)!==null&&_this$position2!==void 0&&(_this$position2$y=_this$position2.y)!==null&&_this$position2$y!==void 0&&_this$position2$y.field))){var _ref3,_ref4,_this$position$x$fiel,_this$position3,_this$position3$x,_props$bounds,_props$polygon,_props$line,_ref5,_ref6,_this$position$y$fiel,_this$position4,_this$position4$y,_props$bounds2,_props$polygon2,_props$line2;const xField=(_ref3=(_ref4=(_this$position$x$fiel=(_this$position3=this.position)===null||_this$position3===void 0?void 0:(_this$position3$x=_this$position3.x)===null||_this$position3$x===void 0?void 0:_this$position3$x.field)!==null&&_this$position$x$fiel!==void 0?_this$position$x$fiel:(_props$bounds=props.bounds)===null||_props$bounds===void 0?void 0:_props$bounds.field)!==null&&_ref4!==void 0?_ref4:(_props$polygon=props.polygon)===null||_props$polygon===void 0?void 0:_props$polygon.field)!==null&&_ref3!==void 0?_ref3:(_props$line=props.line)===null||_props$line===void 0?void 0:_props$line.field;const yField=(_ref5=(_ref6=(_this$position$y$fiel=(_this$position4=this.position)===null||_this$position4===void 0?void 0:(_this$position4$y=_this$position4.y)===null||_this$position4$y===void 0?void 0:_this$position4$y.field)!==null&&_this$position$y$fiel!==void 0?_this$position$y$fiel:(_props$bounds2=props.bounds)===null||_props$bounds2===void 0?void 0:_props$bounds2.field)!==null&&_ref6!==void 0?_ref6:(_props$polygon2=props.polygon)===null||_props$polygon2===void 0?void 0:_props$polygon2.field)!==null&&_ref5!==void 0?_ref5:(_props$line2=props.line)===null||_props$line2===void 0?void 0:_props$line2.field;this.position=new PositionEncoding_PositionEncoding({...this.position,x:{...this.position.x,field:xField},y:{...this.position.y,field:yField}})}if(this.position){this.x=this.position.x;this.y=this.position.y;this.z=this.position.z}}getColor(){if(this.color instanceof ColorEncoding["a"])return this.color}},_descriptor=Object(applyDecoratedDescriptor["a"])(_class.prototype,"strokeColor",[_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(applyDecoratedDescriptor["a"])(_class.prototype,"strokeSize",[_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);let EncodingScope;(function(EncodingScope){EncodingScope["QUERY"]="Query";EncodingScope["VISIBLE"]="Visible"})(EncodingScope||(EncodingScope={}));const DEFAULT_ENCODING_SCOPE=EncodingScope.QUERY;var Schemes=__webpack_require__(54);var Colors=__webpack_require__(18);class ColorLiteralAccessor_ColorLiteralAccessor{constructor(colorEncoding){this.colorEncoding=void 0;this.colorEncoding=colorEncoding}getRawColor(){if(!this.colorEncoding){throw new Error("Color encoding is not defined")}if(this.colorEncoding.value){return Object(Colors["b"])(this.colorEncoding.value)}return}getColor(){var _this$colorEncoding$o,_this$colorEncoding;const color=this.getRawColor();if(!color)return;return Object(Colors["c"])(color.copy({opacity:(_this$colorEncoding$o=(_this$colorEncoding=this.colorEncoding)===null||_this$colorEncoding===void 0?void 0:_this$colorEncoding.opacity)!==null&&_this$colorEncoding$o!==void 0?_this$colorEncoding$o:1}))}}class ColorFieldAccessor_ColorFieldAccessor{constructor(colorEncoding){this.colorEncoding=colorEncoding;this.scale=void 0}getColor(rows,visibleRows,row,columnStats){if(!this.scale){this.scale=this.colorEncoding.getScale(rows,visibleRows,columnStats)}const value=Object(src["i"])(this.colorEncoding.getField(),row);if(Object(fp_["isNil"])(value)){return new ColorLiteralAccessor_ColorLiteralAccessor(new ColorEncoding["a"]({...this.colorEncoding})).getColor()}return this.scale(value)}}class ColorConditionalAccessor_ColorConditionalAccessor{getAcessor(colorEncoding){if(colorEncoding.isFieldBased()){return new ColorFieldAccessor_ColorFieldAccessor(colorEncoding)}else{return new ColorLiteralAccessor_ColorLiteralAccessor(colorEncoding)}}constructor(colorEncoding){this.colorEncoding=colorEncoding;this.scale=void 0;this.conditionalAcessor=void 0;this.acessor=void 0;this.acessor=this.getAcessor(colorEncoding);if(colorEncoding.hasCondition()){this.conditionalAcessor=this.getAcessor(new ColorEncoding["a"](colorEncoding.condition))}}getColor(rows,visibleRows,row,columnStats){var _this$colorEncoding$c;if(this.colorEncoding.hasCondition()&&Object(src["i"])((_this$colorEncoding$c=this.colorEncoding.condition)===null||_this$colorEncoding$c===void 0?void 0:_this$colorEncoding$c.test,row)){return this.conditionalAcessor.getColor(rows,visibleRows,row,columnStats)}return this.acessor.getColor(rows,visibleRows,row,columnStats)}}function getAccessorInstance(colorEncoding){if(!(colorEncoding instanceof ColorEncoding["a"])){throw new Error("Color encoding is not defined")}if(colorEncoding.hasCondition()){return new ColorConditionalAccessor_ColorConditionalAccessor(colorEncoding)}if(colorEncoding.getField()){return new ColorFieldAccessor_ColorFieldAccessor(colorEncoding)}return new ColorLiteralAccessor_ColorLiteralAccessor(colorEncoding)}function getColumnStats(colorEncoding,columns){if(!(colorEncoding!==null&&colorEncoding!==void 0&&colorEncoding.getField()))return;const column=columns===null||columns===void 0?void 0:columns.get(colorEncoding.getField());if(!column)return;return column.getStats()}function getColorAccessor(colorEncoding,rows,visibleRows,columns,rowTranslator){const accessor=getAccessorInstance(colorEncoding);if(accessor instanceof ColorLiteralAccessor_ColorLiteralAccessor){return accessor.getColor()}return row=>{if(rowTranslator)row=rowTranslator.translate(row);return accessor.getColor(rows,visibleRows,row,getColumnStats(colorEncoding,columns))}}var ScaleType=__webpack_require__(45);class IconAccessor_IconAccessor{constructor(props){this.iconStore=void 0;Object.assign(this,props)}getDefaultIcon(){return this.iconStore["marker"]}getFallbackIcon(iconEncoding){const fallbackIconName=!!iconEncoding.value&&iconEncoding.value.toLowerCase();if(fallbackIconName&&this.iconStore[fallbackIconName]){return this.iconStore[fallbackIconName]}else{return this.getDefaultIcon()}}getIconName(iconMap,value){if(value){if(iconMap&&Object(src["i"])(value,iconMap)){return Object(src["i"])(value,iconMap)}return value.toLowerCase()}}getIcon(encoding,row){if(!encoding)return this.getDefaultIcon();if(!encoding.field)return this.getFallbackIcon(encoding);const iconName=this.getIconName(encoding.map,row[encoding.field]);if(!iconName||!this.iconStore[iconName]){return this.getFallbackIcon(encoding)}return this.iconStore[iconName]}}const getSizeAccessor=_ref=>{let{encoding,factor=1,columns,rowTranslator}=_ref;if(!encoding){return 0}if(encoding.hasField()){const sizeField=encoding.getField();const column=columns&&columns.get(sizeField);const columnStats=column===null||column===void 0?void 0:column.getStats();const columnDomain=columnStats&&columnStats.percentiles;return row=>{if(rowTranslator)row=rowTranslator.translate(row);const columnValue=sizeField&&typeof row[sizeField]==="number"?Number(row[sizeField]):undefined;return encoding.getSize(columnValue,columnDomain)*factor}}return encoding.getSize()*factor};var scale_ScaleType=__webpack_require__(37);function createScale(scaleType){if(scaleType&&scaleType===scale_ScaleType["b"].SQUARE)return external_d3_["scaleSqrt"]();if(scaleType&&scaleType===scale_ScaleType["b"].TIME)return external_d3_["scaleTime"]();return external_d3_["scaleLinear"]()}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return _applyDecoratedDescriptor}));function _applyDecoratedDescriptor(target,property,decorators,descriptor,context){var desc={};Object.keys(descriptor).forEach((function(key){desc[key]=descriptor[key]}));desc.enumerable=!!desc.enumerable;desc.configurable=!!desc.configurable;if("value"in desc||desc.initializer){desc.writable=true}desc=decorators.slice().reverse().reduce((function(desc,decorator){return decorator(target,property,desc)||desc}),desc);if(context&&desc.initializer!==void 0){desc.value=desc.initializer?desc.initializer.call(context):void 0;desc.initializer=undefined}if(desc.initializer===void 0){Object.defineProperty(target,property,desc);desc=null}return desc}},function(module,exports){module.exports=require("@mui/material")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return _initializerDefineProperty}));function _initializerDefineProperty(target,property,descriptor,context){if(!descriptor)return;Object.defineProperty(target,property,{enumerable:descriptor.enumerable,configurable:descriptor.configurable,writable:descriptor.writable,value:descriptor.initializer?descriptor.initializer.call(context):void 0})}},function(module,exports){module.exports=require("@emotion/react")},function(module,exports){module.exports=require("@deck.gl/layers")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return debug_Debug}));__webpack_require__.d(__webpack_exports__,"b",(function(){return internals_Internals}));__webpack_require__.d(__webpack_exports__,"c",(function(){return logger_Logger}));var fp_=__webpack_require__(3);const HOPARA_PREFIX="hopara-";class internals_Internals{static setParam(key,value){if(typeof window!=="undefined"){var _window;if((_window=window)!==null&&_window!==void 0&&_window.sessionStorage){window.sessionStorage.setItem(HOPARA_PREFIX+key,value)}}}static hasParam(key){return!Object(fp_["isNil"])(this.getParam(key))}static getParam(key){if(typeof window!=="undefined"){var _window2;if((_window2=window)!==null&&_window2!==void 0&&_window2.sessionStorage){return window.sessionStorage.getItem(HOPARA_PREFIX+key)}}}}const HOPARA_DEBUGGER_KEY="debugger";class debug_Debug{static enable(){internals_Internals.setParam(HOPARA_DEBUGGER_KEY,"true")}static disable(){internals_Internals.setParam(HOPARA_DEBUGGER_KEY,"false")}static isDebugging(){return internals_Internals.getParam(HOPARA_DEBUGGER_KEY)==="true"}}class logger_Logger{static info(){if(!debug_Debug.isDebugging())return;for(var _len=arguments.length,params=new Array(_len),_key=0;_key<_len;_key++){params[_key]=arguments[_key]}return console.log("INFO:",...params)}static debug(){if(!debug_Debug.isDebugging())return;for(var _len2=arguments.length,params=new Array(_len2),_key2=0;_key2<_len2;_key2++){params[_key2]=arguments[_key2]}return console.log("DEBUG:",...params)}static error(){for(var _len3=arguments.length,params=new Array(_len3),_key3=0;_key3<_len3;_key3++){params[_key3]=arguments[_key3]}return console.error("ERROR:",...params)}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Config}));let ConfigEnvironment;(function(ConfigEnvironment){ConfigEnvironment["DEVELOPMENT"]="development";ConfigEnvironment["SYSTEM_TEST"]="systemTest";ConfigEnvironment["TEST"]="test";ConfigEnvironment["PRODUCTION"]="production"})(ConfigEnvironment||(ConfigEnvironment={}));const HOPARA_ENV_KEY="HOPARA_ENV";class ConfigMap extends Map{constructor(newMap){super();this.environment=void 0;Object.keys(newMap).forEach((configName=>{this.set(configName,newMap[configName])}))}setEnvironment(environment){this.environment=environment}isDev(){return this.environment===ConfigEnvironment.DEVELOPMENT}getValueFromNodeEnvironment(key){var _process$env$key;return(_process$env$key=Object({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:undefined,WDS_SOCKET_PATH:undefined,WDS_SOCKET_PORT:undefined,FAST_REFRESH:true,REACT_APP_BUILD_NUMBER:"3279",REACT_APP_PACKAGE_VERSION:"0.1.103"})[key])!==null&&_process$env$key!==void 0?_process$env$key:Object({NODE_ENV:"production",PUBLIC_URL:"",WDS_SOCKET_HOST:undefined,WDS_SOCKET_PATH:undefined,WDS_SOCKET_PORT:undefined,FAST_REFRESH:true,REACT_APP_BUILD_NUMBER:"3279",REACT_APP_PACKAGE_VERSION:"0.1.103"})[`REACT_APP_${key}`]}getHoparaEnvironment(){var _this$getValueFromNod;if(this.environment)return this.environment;const env=(_this$getValueFromNod=this.getValueFromNodeEnvironment(HOPARA_ENV_KEY))!==null&&_this$getValueFromNod!==void 0?_this$getValueFromNod:"production";if(!env)return ConfigEnvironment.DEVELOPMENT;if(env==="production")return ConfigEnvironment.PRODUCTION;if(env==="test")return ConfigEnvironment.TEST;if(env==="systemTest")return ConfigEnvironment.SYSTEM_TEST;return ConfigEnvironment.DEVELOPMENT}getValue(key,tenant){var _this$get;if(key===HOPARA_ENV_KEY)return this.getHoparaEnvironment();const fromNodeEnv=this.getValueFromNodeEnvironment(key);if(fromNodeEnv)return fromNodeEnv;const tenantKey=tenant?`${tenant.toUpperCase()}_${key}`:key;const configValues=(_this$get=this.get(tenantKey))!==null&&_this$get!==void 0?_this$get:this.get(key);if(!configValues)return"";if(this.environment){var _configValues$this$en;return(_configValues$this$en=configValues[this.environment])!==null&&_configValues$this$en!==void 0?_configValues$this$en:configValues[ConfigEnvironment.DEVELOPMENT]}const hoparaEnv=this.getHoparaEnvironment();if(hoparaEnv){var _configValues$hoparaE;return(_configValues$hoparaE=configValues[hoparaEnv])!==null&&_configValues$hoparaE!==void 0?_configValues$hoparaE:configValues[ConfigEnvironment.DEVELOPMENT]}if(true){var _configValues$ConfigE;return(_configValues$ConfigE=configValues[ConfigEnvironment.PRODUCTION])!==null&&_configValues$ConfigE!==void 0?_configValues$ConfigE:configValues[ConfigEnvironment.DEVELOPMENT]}return configValues[ConfigEnvironment.DEVELOPMENT]}getValueAsBoolean(key,tenant){return this.getValue(key,tenant)==="true"}}const Config=new ConfigMap({BUILD_NUMBER:{development:"000"},PACKAGE_VERSION:{development:"0.0.0"},COOKIE_DOMAIN:{development:"localhost",test:".hopara.app",production:".hopara.app"},EXTERNAL_TOKEN_COOKIE:{development:"localhost",test:".test.hopara.app",production:".hopara.app"},PUBLIC_URL:{development:""},SYSTEM_TEST:{development:"false",systemTest:"true"},AUTH0_DOMAIN:{development:"dev-rflz2ws3.us.auth0.com",production:"login.hopara.app"},AUTH0_CLIENT_ID:{development:"6NbIMZAkEI56VJsAM7BDwIeEIGWx8z1N",production:"9muV5ImpE5sBPYcTb1QHVfDktiHWyBPg"},AUTH0_REDIRECT_URI:{development:"http://localhost:3000",test:"https://test.hopara.app",production:"https://hopara.app"},AUTH0_AUDIENCE:{development:"kyrix"},AUTH0_SCOPE:{development:"row:read row:write table:write app:write view:write query:tenant:read"},APP_API_ADDRESS:{development:"https://app.test.hopara.app",test:"https://app.test.hopara.app",production:"https://app.hopara.app",systemTest:"http://localhost:1234"},BFF_API_ADDRESS:{development:"https://bff.test.hopara.app",test:"https://bff.test.hopara.app",production:"https://bff.hopara.app",systemTest:"http://localhost:1234"},TEMPLATE_API_ADDRESS:{development:"https://template.test.hopara.app",test:"https://template.test.hopara.app",production:"https://template.hopara.app",systemTest:"http://localhost:1234"},WATCHER_API_ADDRESS:{development:"https://update-watcher.test.hopara.app",test:"https://update-watcher.test.hopara.app",production:"https://update-watcher.hopara.app",systemTest:"http://localhost:1234"},DATASET_API_ADDRESS:{development:"https://dataset.test.hopara.app",test:"https://dataset.test.hopara.app",production:"https://dataset.hopara.app",systemTest:"http://localhost:1234"},AUTH_API_ADDRESS:{development:"https://auth.test.hopara.app",test:"https://auth.test.hopara.app",production:"https://auth.hopara.app",systemTest:"http://localhost:1234"},IMAGES_API_ADDRESS:{development:"https://images.hopara.app"},CONTENT_ADDRESS:{development:"https://content.hopara.app"},"IBBX.TECH_BFF_API_ADDRESS":{development:"https://bff.test.hopara.app",test:"https://bff.test.hopara.app",production:"https://bff.hopara.app"},"IBBX.TECH_DATASET_API_ADDRESS":{development:"https://dataset.test.hopara.app",test:"https://dataset.test.hopara.app",production:"https://dataset.hopara.app"},HOPARA_THEME_MODE:{development:"HOPARA"},STYLE_INTERFACE:{development:"aphrodite"},ENABLE_MAP:{development:"true",systemTest:"false"},FUNNY_ERRORS:{development:"true"}})},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return rgbColor}));__webpack_require__.d(__webpack_exports__,"c",(function(){return toRGBArray}));__webpack_require__.d(__webpack_exports__,"a",(function(){return fromString}));var d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(91);var d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__);var lodash_fp__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_1__);const TRANSPARENT_COLOR=[255,255,255,0];const WHITE_COLOR=[255,255,255,255];const rgbColor=hexColor=>d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__["rgb"](hexColor);const getAlpha=opacity=>{const maxOpacity=255;if(Object(lodash_fp__WEBPACK_IMPORTED_MODULE_1__["isNumber"])(opacity)&&opacity<=1&&opacity>=0){return Math.floor(maxOpacity*opacity)}return maxOpacity};function toRGBArray(color){const colorArr=[color.r,color.g,color.b];if(color.opacity!==undefined)colorArr.push(getAlpha(color.opacity));return colorArr}function fromString(cssColorSpecifier){let opacity=arguments.length>1&&arguments[1]!==undefined?arguments[1]:1;const color=d3_dist_d3_min__WEBPACK_IMPORTED_MODULE_0__["rgb"](cssColorSpecifier);color.opacity=opacity;return toRGBArray(color)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return ColorFormat}));__webpack_require__.d(__webpack_exports__,"c",(function(){return getValidValues}));__webpack_require__.d(__webpack_exports__,"a",(function(){return ColorEncoding_ColorEncoding}));var ScaleType=__webpack_require__(45);var Schemes=__webpack_require__(54);var external_d3_=__webpack_require__(22);function getDataDomain(values){var _values$sort;return(_values$sort=values===null||values===void 0?void 0:values.sort())!==null&&_values$sort!==void 0?_values$sort:[]}function getDomainFromStats(columnStats){var _columnStats$percenti;return(_columnStats$percenti=columnStats===null||columnStats===void 0?void 0:columnStats.percentiles)!==null&&_columnStats$percenti!==void 0?_columnStats$percenti:[]}class quantile_QuantileScaleBehavior{constructor(field){this.field=field}getScale(domain,colors){return external_d3_["scaleQuantile"](domain,colors)}getDomain(rows,visibleRows,columnStats){if(visibleRows.length)return getDataDomain(getValidValues(visibleRows,this.field));if(columnStats)return getDomainFromStats(columnStats);return[]}}var fp_=__webpack_require__(3);function getDataRange(values){const minValue=Object(fp_["min"])(values)||0;const maxValue=Object(fp_["max"])(values)||0;return[minValue,maxValue]}function quantize_getDomainFromStats(columnStats){return[columnStats.min,columnStats.max]}class quantize_QuantizeScaleBehavior{constructor(field){this.field=field}getScale(domain,colors){return external_d3_["scaleQuantize"](domain,colors)}getDomain(rows,visibleRows,columnStats){if(visibleRows.length)return getDataRange(getValidValues(visibleRows,this.field));if(columnStats)return quantize_getDomainFromStats(columnStats);return[]}}function ordinal_getDomainFromStats(columnStats){var _columnStats$values;return(_columnStats$values=columnStats===null||columnStats===void 0?void 0:columnStats.values)!==null&&_columnStats$values!==void 0?_columnStats$values:[columnStats.min,columnStats.max]}class ordinal_OrdinalScaleBehavior{constructor(field){this.field=field}getScale(domain,colors){return external_d3_["scaleOrdinal"](domain,colors)}getDomain(rows,visibleRows,columnStats){var _columnStats$values2;if(columnStats!==null&&columnStats!==void 0&&(_columnStats$values2=columnStats.values)!==null&&_columnStats$values2!==void 0&&_columnStats$values2.length){const rowsDomain=getValidValues(rows,this.field);const statsDomain=ordinal_getDomainFromStats(columnStats);return Object(fp_["concat"])(statsDomain,Object(fp_["difference"])(rowsDomain.sort(),statsDomain))}else if(visibleRows.length){return getValidValues(visibleRows,this.field)}return[]}}var src=__webpack_require__(6);let ColorFormat;(function(ColorFormat){ColorFormat["hex"]="hex";ColorFormat["rgb"]="rgb"})(ColorFormat||(ColorFormat={}));function getValidValues(rows,field){if(!(rows!==null&&rows!==void 0&&rows.length)){return[]}const valids=rows.getValues(field).filter((value=>Object(fp_["isNumber"])(value)||!Object(fp_["isEmpty"])(value)));return Object(fp_["uniq"])(valids)}class ColorEncoding_ColorEncoding{constructor(){let props=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};this.field=void 0;this.scale=void 0;this.opacity=void 0;this.value=void 0;this.animation=void 0;this.condition=void 0;this.createdTimestamp=void 0;Object.assign(this,props);if(!this.scale){this.scale={type:ScaleType["a"].ORDINAL}}this.createdTimestamp=new Date}getField(){return this.field}isFieldBased(){return!!this.field}hasCondition(){return!!this.condition}hasCustomScheme(){return!!this.scale.range}setField(field){this.field=field;return this}getScaleType(){return this.scale.type}isScale(scale){return Object(fp_["isString"])(this.getScaleType())&&this.getScaleType().toLowerCase()===scale.toLowerCase()}isOrdinal(){return this.isScale(ScaleType["a"].ORDINAL)}requiresQuantitativeValues(){return this.isScale(ScaleType["a"].QUANTIZE)||this.isScale(ScaleType["a"].QUANTILE)}getScale(){var _this$scale$domain;let rows=arguments.length>0&&arguments[0]!==undefined?arguments[0]:new src["g"];let visibleRows=arguments.length>1&&arguments[1]!==undefined?arguments[1]:new src["g"];let columnStats=arguments.length>2?arguments[2]:undefined;let colorFormat=arguments.length>3&&arguments[3]!==undefined?arguments[3]:ColorFormat.rgb;const domain=(_this$scale$domain=this.scale.domain)!==null&&_this$scale$domain!==void 0?_this$scale$domain:this.getScaleBehavior().getDomain(rows,visibleRows,columnStats);return this.getScaleBehavior().getScale(domain,this.getColors(colorFormat))}getColors(){let colorFormat=arguments.length>0&&arguments[0]!==undefined?arguments[0]:ColorFormat.rgb;if(colorFormat==="rgb"){return Object(Schemes["b"])(this.scale.scheme||this.scale.range,this.scale.reverse,this.opacity).colors}return Object(Schemes["a"])(this.scale.scheme||this.scale.range,this.scale.reverse).colors}getFallback(){return this.value}isRenderable(){return!!(this.field&&this.scale.scheme)||!!this.value}isEnabled(){return this.isRenderable()}getScaleBehavior(){if(this.isScale(ScaleType["a"].QUANTIZE)){return new quantize_QuantizeScaleBehavior(this.getField())}if(this.isScale(ScaleType["a"].QUANTILE)){return new quantile_QuantileScaleBehavior(this.getField())}return new ordinal_OrdinalScaleBehavior(this.getField())}}},function(module,exports){module.exports=require("vega")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ColumnType}));__webpack_require__.d(__webpack_exports__,"b",(function(){return DEFAULT_COLUMN_TYPE}));let ColumnType;(function(ColumnType){ColumnType["STRING"]="STRING";ColumnType["JSON"]="JSON";ColumnType["INTEGER"]="INTEGER";ColumnType["DECIMAL"]="DECIMAL";ColumnType["STRING_ARRAY"]="STRING_ARRAY";ColumnType["DATETIME"]="DATETIME";ColumnType["GEOMETRY"]="GEOMETRY";ColumnType["BOOLEAN"]="BOOLEAN"})(ColumnType||(ColumnType={}));const DEFAULT_COLUMN_TYPE=ColumnType.STRING},function(module,exports){module.exports=require("d3")},function(module,exports){module.exports=require("@turf/helpers")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"d",(function(){return createThemeSpecFromBrand}));__webpack_require__.d(__webpack_exports__,"c",(function(){return createMuiThemeFromSpec}));var _mui_material__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(12);var _mui_material__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(_mui_material__WEBPACK_IMPORTED_MODULE_0__);__webpack_require__.d(__webpack_exports__,"b",(function(){return _mui_material__WEBPACK_IMPORTED_MODULE_0__["ThemeProvider"]}));__webpack_require__.d(__webpack_exports__,"a",(function(){return _mui_material__WEBPACK_IMPORTED_MODULE_0__["CssBaseline"]}));var _mui_material_styles__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(57);var _mui_material_styles__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__);var colorsys__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(93);var colorsys__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(colorsys__WEBPACK_IMPORTED_MODULE_2__);const createThemeSpecFromBrand=(tenantBrand,xxx)=>{const{themeFromSourceColor,argbFromHex,applyTheme,hexFromArgb}=xxx;const materialYou=themeFromSourceColor(argbFromHex(tenantBrand.originalColor));applyTheme(materialYou,{target:document.body});const material=materialYou.schemes[tenantBrand.mode||"light"];const borderColor=tenantBrand.mode==="dark"?materialYou.palettes.primary.tone(80):materialYou.palettes.neutral.tone(90);const luminance=Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["getLuminance"])(tenantBrand.originalColor);const lightSourceColor=hexFromArgb(materialYou.schemes.light.onSurface);const darkSourceColor=hexFromArgb(materialYou.schemes.dark.onSurface);const tones=new Array(11).fill(0).map(((_,i)=>i*10));return{mode:tenantBrand.mode,logoUrl:tenantBrand.logoUrl,logoSmallUrl:tenantBrand.logoSmallUrl,original:tenantBrand.originalColor,onOriginal:luminance>.4?lightSourceColor:darkSourceColor,primary:hexFromArgb(material.primary),onPrimary:hexFromArgb(material.onPrimary),primaryContainer:hexFromArgb(material.primaryContainer),onPrimaryContainer:hexFromArgb(material.onPrimaryContainer),secondary:hexFromArgb(material.secondary),onSecondary:hexFromArgb(material.onSecondary),secondaryContainer:hexFromArgb(material.secondaryContainer),onSecondaryContainer:hexFromArgb(material.onSecondaryContainer),tertiary:hexFromArgb(material.tertiary),onTertiary:hexFromArgb(material.onTertiary),tertiaryContainer:hexFromArgb(material.tertiaryContainer),onTertiaryContainer:hexFromArgb(material.onTertiaryContainer),error:hexFromArgb(material.error),onError:hexFromArgb(material.onError),errorContainer:hexFromArgb(material.errorContainer),onErrorContainer:hexFromArgb(material.onErrorContainer),surface:hexFromArgb(material.surface),onSurface:hexFromArgb(material.onSurface),background:hexFromArgb(material.background),onBackground:hexFromArgb(material.onBackground),onBackgroundLight:hexFromArgb(materialYou.palettes.neutral.tone(50)),outline:hexFromArgb(material.outline),surfaceVariant:hexFromArgb(material.surfaceVariant),onSurfaceVariant:hexFromArgb(material.onSurfaceVariant),inverseSurface:hexFromArgb(material.inverseSurface),inversePrimary:hexFromArgb(material.inversePrimary),inverseOnSurface:hexFromArgb(material.inverseOnSurface),borderRadius:tenantBrand.borderRadius,borderColor:hexFromArgb(borderColor),hasBackgroundTexture:false,tonal:{primary:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.primary.tone(tone))]))),secondary:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.secondary.tone(tone))]))),tertiary:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.tertiary.tone(tone))]))),error:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.error.tone(tone))]))),neutral:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.neutral.tone(tone))]))),neutralVariant:Object.fromEntries(tones.map((tone=>[tone,hexFromArgb(materialYou.palettes.neutralVariant.tone(tone))])))}}};const createMuiThemeFromSpec=spec=>{var _spec$fontSize;const fontSize=(_spec$fontSize=spec.fontSize)!==null&&_spec$fontSize!==void 0?_spec$fontSize:12;const luminance=Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["getLuminance"])(spec.original);const mode=spec.mode;return Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["createTheme"])({palette:{hue:colorsys__WEBPACK_IMPORTED_MODULE_2___default.a.rgb_to_hsl(colorsys__WEBPACK_IMPORTED_MODULE_2___default.a.parseCss(spec.primary)).h+12,contrast:luminance<=.4,mode,spec,original:{main:spec.original,contrastText:spec.onOriginal},primary:{main:spec.primary,light:spec.primaryContainer,contrastText:spec.onPrimary,dark:spec.onPrimaryContainer},secondary:{main:spec.secondary,light:spec.secondaryContainer,contrastText:spec.onSecondary,dark:spec.onSecondaryContainer},tertiary:{main:spec.tertiary,light:spec.tertiaryContainer,contrastText:spec.onTertiary,dark:spec.onTertiaryContainer},error:{main:spec.error,light:spec.errorContainer,contrastText:spec.onError,dark:spec.onErrorContainer},background:{default:mode==="dark"?"#000000":"#FFFFFF",paper:spec.surface},text:{primary:spec.onBackground,secondary:spec.onSurface,component:spec.onBackgroundLight}},shape:{borderRadius:spec.borderRadius,borderLight:`1px solid ${spec.borderColor}`,paddingInner:fontSize},typography:{fontSize,fontFamily:"Inter, Work Sans, sans-serif"},spacing:1,shadows:Object(_mui_material_styles__WEBPACK_IMPORTED_MODULE_1__["createTheme"])({}).shadows.map(((shadow,i)=>{if(i===2){return spec.mode==="dark"?"0 1px 1px 0 #444, 0 4px 18px 0 rgb(34 41 47 / 10%)":"0 1px 1px 0 #e5deee, 0 4px 18px 0 rgb(34 41 47 / 10%)"}return shadow})),components:{HoparaBranding:{logoUrl:spec.logoUrl,logoSmallUrl:spec.logoSmallUrl,hasBackgroundTexture:spec.hasBackgroundTexture},HoparaTable:{row:{backgroundEven:"#fcfaff",backgroundHover:"#faf8fd"}},HoparaInput:{backgroundColor:spec.background,backgroundClip:"padding-box",border:`1px solid ${spec.borderColor}`,borderColor:spec.borderColor,borderRadius:spec.borderRadius,display:"block",color:spec.onBackground,fontSize:"defaults.text.sizeSmall",lineHeight:"1.85",height:35,outline:"none",padding:".25em .75em",transition:"border-color 0.15s ease-in-out",width:"100%"},HoparaSidebar:{width:320,headerHeight:50,bottomHeight:25,headerBackgroundColor:spec.secondaryContainer,headerBackgroundColorLight:spec.surface,tabsSpacing:25,tabsBackground:spec.secondaryContainer,tabsBackgroundLight:spec.surface},MuiOutlinedInput:{styleOverrides:{root:{backgroundColor:spec.background,color:spec.onBackground},notchedOutline:{borderColor:spec.borderColor},input:{padding:"0.25em 0.75em",lineHeight:"26px",height:"26px"}}},MuiButton:{styleOverrides:{root:{}}},MuiListItemButton:{styleOverrides:{root:{}}}}})}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return PureComponent}));var react__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);var react__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);var _toast_Toast__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(27);var _hopara_internals__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(16);class PureComponent extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent{componentDidCatch(error,info){Object(_toast_Toast__WEBPACK_IMPORTED_MODULE_1__["a"])("Something went wrong");_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["c"].error(error,info)}}},function(module,exports){module.exports=require("reselect")},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(global){__webpack_require__.d(__webpack_exports__,"b",(function(){return toastSuccess}));__webpack_require__.d(__webpack_exports__,"a",(function(){return toastError}));var react_toastify__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(46);var react_toastify__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react_toastify__WEBPACK_IMPORTED_MODULE_0__);const toastSuccess=text=>{react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].dismiss();react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].success(text)};const toastError=text=>{react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].dismiss();react_toastify__WEBPACK_IMPORTED_MODULE_0__["toast"].error(text)};const window=global;window.TOAST={toastSuccess,toastError}}).call(this,__webpack_require__(75))},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return StoreContext}));var external_reflect_metadata_=__webpack_require__(47);var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var external_redux_=__webpack_require__(73);function getInitialState(childReducers,state,action){const reducedInitialState={};for(const key in childReducers){if({}.hasOwnProperty.call(childReducers,key)){reducedInitialState[key]=childReducers[key](undefined,action)}}return reducedInitialState}function getChildrenState(childReducers,state,action){const reducedState={...state};for(const key in childReducers){if({}.hasOwnProperty.call(childReducers,key)){reducedState[key]=childReducers[key](state[key],action,state)}}return reducedState}function reducer(childReducers){return function(state,action){if(state==null){return getInitialState(childReducers,state,action)}return getChildrenState(childReducers,state,action)}}var external_redux_saga_=__webpack_require__(98);var external_redux_saga_default=__webpack_require__.n(external_redux_saga_);var effects_=__webpack_require__(4);var GA=__webpack_require__(86);var external_slugify_=__webpack_require__(99);var external_slugify_default=__webpack_require__.n(external_slugify_);var Actions=__webpack_require__(1);const formatName=name=>external_slugify_default()(name,{replacement:"_",lower:true,strict:true});function*notifyLogin(){GA["a"].login("auth0");yield}const getPageName=action=>{var _action$payload$autho;if((_action$payload$autho=action.payload.authorization)!==null&&_action$payload$autho!==void 0&&_action$payload$autho.tenant){var _action$payload$autho2;return`${action.payload.app.name} - ${(_action$payload$autho2=action.payload.authorization)===null||_action$payload$autho2===void 0?void 0:_action$payload$autho2.tenant}`}return action.payload.app.name};const getPagePath=action=>{var _window,_window$location,_action$payload$autho3;if((_window=window)!==null&&_window!==void 0&&(_window$location=_window.location)!==null&&_window$location!==void 0&&_window$location.search){var _window2,_window2$location;return(_window2=window)===null||_window2===void 0?void 0:(_window2$location=_window2.location)===null||_window2$location===void 0?void 0:_window2$location.search}else if((_action$payload$autho3=action.payload.authorization)!==null&&_action$payload$autho3!==void 0&&_action$payload$autho3.tenant){var _action$payload$autho4;return`/app/${(_action$payload$autho4=action.payload.authorization)===null||_action$payload$autho4===void 0?void 0:_action$payload$autho4.tenant}/${action.payload.app.name}`}return`/app/${action.payload.app.name}`};function*notifyPageView(action){GA["a"].pageview(getPageName(action),getPagePath(action));yield}function*notifyEngagement(action){const event={action:formatName(action.payload.event),label:action.payload.event,category:"engagement",value:action.payload.value||1};GA["a"].custom(event);yield}function*notifyViewZooming(action){yield notifyEngagement(Actions["a"].analytics.analyticsEvent({event:`View: Zoom ${action.payload.direction}`}))}function*notifyViewDragging(){yield notifyEngagement(Actions["a"].analytics.analyticsEvent({event:`View: Drag`}))}function*notifyJump(){yield notifyEngagement(Actions["a"].analytics.analyticsEvent({event:`Jump: Requested`,value:1}))}var external_query_string_=__webpack_require__(43);var external_query_string_default=__webpack_require__.n(external_query_string_);var fp_=__webpack_require__(3);function objectsToString(params){Object.keys(params).forEach((key=>{if(Object(fp_["isPlainObject"])(params[key])){params[key]=JSON.stringify(params[key])}else if(Object(fp_["isArray"])(params[key])){params[key]=params[key].map((item=>{if(Object(fp_["isObject"])(item))return JSON.stringify(item);return item}))}}));return params}const getHeadersWithAuthorization=authorization=>{const headers=new Headers;const token=authorization===null||authorization===void 0?void 0:authorization.accessToken;if(authorization&&token){var _authorization$tenant;headers.append("Authorization","Bearer "+token);headers.append("tenant",(_authorization$tenant=authorization.tenant)!==null&&_authorization$tenant!==void 0?_authorization$tenant:"")}return headers};class HttpError extends Error{constructor(data,statusText){var _data$message;super((_data$message=data.message)!==null&&_data$message!==void 0?_data$message:statusText);this.data=data}}async function tryFetch(href,options){const res=await fetch(href,options);if(!res.ok){const data=await res.json();throw new HttpError(data,res.statusText)}return res}async function httpGet(endpoint,resource){let queryParams=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let authorization=arguments.length>3?arguments[3]:undefined;const headers=await getHeadersWithAuthorization(authorization);const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));return tryFetch(url.href,{headers})}async function httpPost(endpoint,resource){let body=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let queryParams=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};let authorization=arguments.length>4?arguments[4]:undefined;const headers=await getHeadersWithAuthorization(authorization);headers.append("Content-Type","application/json");const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));const options={method:"POST",headers,body:JSON.stringify(body)};return tryFetch(url.href,options)}async function httpPut(endpoint,resource){let body=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let queryParams=arguments.length>3&&arguments[3]!==undefined?arguments[3]:{};let authorization=arguments.length>4?arguments[4]:undefined;const headers=await getHeadersWithAuthorization(authorization);headers.append("Content-Type","application/json");const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));const options={method:"PUT",headers,body:JSON.stringify(body)};return tryFetch(url.href,options)}async function httpDelete(endpoint,resource){let queryParams=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};let authorization=arguments.length>3?arguments[3]:undefined;const headers=await getHeadersWithAuthorization(authorization);headers.append("Content-Type","application/json");const url=new URL(resource,endpoint);url.search=external_query_string_default.a.stringify(objectsToString(queryParams));const options={method:"DELETE",headers};return tryFetch(url.href,options)}var external_class_transformer_=__webpack_require__(7);var src=__webpack_require__(17);var dataset_src=__webpack_require__(6);var initializerDefineProperty=__webpack_require__(13);var applyDecoratedDescriptor=__webpack_require__(11);var initializerWarningHelper=__webpack_require__(40);var _dec,_dec2,_class,_descriptor,_descriptor2;let App_App=(_dec=Object(external_class_transformer_["Expose"])(),_dec2=Object(external_class_transformer_["Expose"])(),_class=class App{constructor(props){Object(initializerDefineProperty["a"])(this,"id",_descriptor,this);Object(initializerDefineProperty["a"])(this,"name",_descriptor2,this);Object.assign(this,props)}},_descriptor=Object(applyDecoratedDescriptor["a"])(_class.prototype,"id",[_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(applyDecoratedDescriptor["a"])(_class.prototype,"name",[_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);var Visualization=__webpack_require__(44);class Visualizations_Visualizations extends Array{constructor(){for(var _len=arguments.length,visualizations=new Array(_len),_key=0;_key<_len;_key++){visualizations[_key]=arguments[_key]}super(...visualizations);this.selectedId=void 0;if(visualizations.length>0){this.selectedId=visualizations[0].id}}clone(){const cloned=new Visualizations_Visualizations(...this);cloned.selectedId=this.selectedId;return cloned}set(visualizations){if(this.selectedId){visualizations.selectedId=this.selectedId}else if(visualizations.length>0){visualizations.selectedId=visualizations[0].id}return visualizations}getOrigin(){return this[0]}getById(id){return this.find((visualization=>visualization.id===id))}getByName(name){return this.find((visualization=>visualization.name===name))}getCurrent(){if(this.length<1)return;if(!this.selectedId)return this[0];return this.find((visualization=>visualization.id===this.selectedId))}getCurrentIndex(){const currentVisualization=this.getCurrent();if(!currentVisualization)return 0;return Object(fp_["findIndex"])({id:currentVisualization.id},this)}isLastVisualization(visualizationId){if(!this.length)return true;return this[this.length-1].id===visualizationId}getNext(){const currentVisualization=this.getCurrent();if(!currentVisualization)return;const currentIndex=Object(fp_["findIndex"])({id:currentVisualization.id},this);if(this.length-1===currentIndex)return;return this[currentIndex+1]}setSelected(visualizationId){if(!visualizationId)return this;const cloned=this.clone();cloned.selectedId=visualizationId;return cloned}setInitialPosition(params){const cloned=this.clone();const visualizationIndex=Object(fp_["findIndex"])({id:params.visualizationId},this);const newVisualization=new Visualization["b"](this[visualizationIndex]);newVisualization.setInitialPosition(params.coordinates,params.zoom,params.bearing);cloned.splice(visualizationIndex,1,newVisualization);return cloned}}var visualization_Visualizations=Visualizations_Visualizations;class DataBrowsers_DataBrowsers extends Array{clone(){return new DataBrowsers_DataBrowsers(...this)}getById(id){return this.find((dataBrowser=>dataBrowser.getId()===id))}getByData(data){return this.find((dataBrowser=>dataBrowser.data.query===data.query&&dataBrowser.data.source===data.source))}fromVisualization(visualizationId){if(!visualizationId)return;const dataBrowsers=this.filter((dataBrowser=>dataBrowser.visualization===visualizationId));return new DataBrowsers_DataBrowsers(...dataBrowsers)}withQuery(queryName){const dataBrowsers=this.filter((dataBrowser=>dataBrowser.getQueryName()===queryName));return new DataBrowsers_DataBrowsers(...dataBrowsers)}immutableSetRows(dataBrowserId,rows,offset,lastPage){const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const cloned=this.clone();const dataBrowser=cloned[index].clone();dataBrowser.setRows(rows).setOffset(offset,lastPage);cloned.splice(index,1,dataBrowser);return cloned}immutableSetSelectedRow(dataBrowserId,row){if(!dataBrowserId)return this;const cloned=this.clone();const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const dataBrowser=this[index].clone();dataBrowser.selectedRow=row;cloned.splice(index,1,dataBrowser);return cloned}immutableSetStatus(dataBrowserId,status){if(!dataBrowserId)return this;const cloned=this.clone();const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const dataBrowser=this[index].clone();dataBrowser.setStatus(status);cloned.splice(index,1,dataBrowser);return cloned}immutableSetSearch(dataBrowserId,search){if(!dataBrowserId)return this;const cloned=this.clone();const index=Object(fp_["findIndex"])((d=>d.getId()===dataBrowserId),this);const dataBrowser=this[index].resetOffset();dataBrowser.search=search;cloned.splice(index,1,dataBrowser);return cloned}}var data_browser_DataBrowsers=DataBrowsers_DataBrowsers;var external_js_sentencecase_=__webpack_require__(49);var external_js_sentencecase_default=__webpack_require__.n(external_js_sentencecase_);var encoding_src=__webpack_require__(10);class PlaceTransforms_PlaceTransforms extends Array{async transform(viewState,world,row,position,centroid){if(!this.length)return row;const transformedRow=await super.reduce((async(r,transformer)=>await transformer.transform(viewState,world,await r,position,centroid)),Promise.resolve(row));return new dataset_src["f"](transformedRow)}async getDiff(viewState,world,row,position,centroid){if(!this.length)return row;return super.reduce((async(r,transformer)=>{const resolvedRow=await r;return{...resolvedRow,...await transformer.getDiff(viewState,world,row,position,centroid)}}),Promise.resolve({}))}}class DefaultTransform_DefaultTransform{async transform(viewState,world,row,position,centroid){const diff=await this.getDiff(viewState,world,row,position,centroid);return new dataset_src["f"]({...row,...diff})}async getDiff(viewState,world,_,position,centroid){const unprojectedCoordinate=viewState.unProjectCoordinate(world,centroid);const diff={_x:unprojectedCoordinate[0],_y:unprojectedCoordinate[1]};if(position.z){diff["_z"]=viewState.coordinates.z}return diff}}let DataBrowserRowsetStatus;(function(DataBrowserRowsetStatus){DataBrowserRowsetStatus["NONE"]="NONE";DataBrowserRowsetStatus["LOADING"]="LOADING";DataBrowserRowsetStatus["UPDATED"]="UPDATED"})(DataBrowserRowsetStatus||(DataBrowserRowsetStatus={}));class DataBrowser_DataBrowser{constructor(props){this.visualization=void 0;this.data=void 0;this.encoding=void 0;this.list=void 0;this.navigate=void 0;this.drag=void 0;this.details=void 0;this.insert=void 0;this.search=void 0;this.rowset=void 0;this.selectedRow=void 0;if(!props)return this;Object.assign(this,props);if(!props.rowset){this.rowset={rows:new dataset_src["g"],status:DataBrowserRowsetStatus.NONE,offset:0,lastPage:true,canPaginate:false}}if(props.encoding){let position=props.encoding.position;if(props.encoding.x||props.encoding.y||props.encoding.z){position=new encoding_src["h"]({x:props.encoding.x,y:props.encoding.y,z:props.encoding.z})}this.encoding=new encoding_src["f"]({position,x:props.encoding.x,y:props.encoding.y,z:props.encoding.z})}}clone(){return new DataBrowser_DataBrowser(this)}getId(){return`${this.visualization}-${this.getQueryName()}-${this.list.field}`}getRows(){return this.rowset.rows}setRows(rows){const cloned=this.clone();cloned.rowset.status=DataBrowserRowsetStatus.UPDATED;cloned.rowset.rows=rows;return cloned}setTerm(term){this.search={term}}getName(){var _this$data;return external_js_sentencecase_default()((_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.query)}getQueryName(){var _this$data2;return(_this$data2=this.data)===null||_this$data2===void 0?void 0:_this$data2.query}getDataSource(){var _this$data3;return(_this$data3=this.data)===null||_this$data3===void 0?void 0:_this$data3.source}hasMoreRows(){return this.rowset.rows&&this.rowset.rows.length>this.list.rowLimit}getData(){return this.data}setStatus(status){const cloned=this.clone();cloned.rowset.status=status;return cloned}isLoading(){return this.rowset.status===DataBrowserRowsetStatus.LOADING}getPlaceTransforms(){var _this$drag;const transforms=new PlaceTransforms_PlaceTransforms(new DefaultTransform_DefaultTransform);if((_this$drag=this.drag)!==null&&_this$drag!==void 0&&_this$drag.placeTransform){transforms.push(this.drag.placeTransform)}return transforms}setOffset(offset,lastPage){const cloned=this.clone();cloned.rowset.offset=offset;cloned.rowset.lastPage=lastPage;if(offset===0){cloned.rowset.canPaginate=!lastPage}return cloned}resetOffset(){const cloned=this.clone();cloned.rowset.offset=0;return cloned}}var data_browser_DataBrowser=DataBrowser_DataBrowser;class Legend{constructor(){this.layer=void 0;this.visualizationId=void 0}}class Legends extends Array{}class AxesList extends Array{filter(filterFunc){return new AxesList(...super.filter(filterFunc))}getFromVisualization(visualizationId){if(!visualizationId)return new AxesList;return this.filter((axes=>axes.visualizationId===visualizationId))}someFromVisualization(visualizationId){return this.some((axes=>axes.visualizationId===visualizationId))}}class FetchState{constructor(fetchBox){this.fetchBox=void 0;this.invalidated=void 0;this.fetchBox=fetchBox;this.invalidated=false}getFetchAgainBox(){return this.fetchBox.multiply(.75)}hasReachedUpThreshold(visibleWorldBox){return visibleWorldBox.y.getMax()>this.getFetchAgainBox().y.getMax()}hasReachedRightThreshold(visibleWorldBox){return visibleWorldBox.x.getMax()>this.getFetchAgainBox().x.getMax()}hasReachedDownThreshold(visibleWorldBox){return visibleWorldBox.y.getMin()<this.getFetchAgainBox().y.getMin()}hasReachedLeftThreshold(visibleWorldBox){return visibleWorldBox.x.getMin()<this.getFetchAgainBox().x.getMin()}hasReachedResizeThreshold(visibleWorldDimensions){return visibleWorldDimensions.height>this.getFetchAgainBox().getDimensions().height||visibleWorldDimensions.width>this.getFetchAgainBox().getDimensions().width}invalidate(){this.invalidated=true}shouldFetch(viewState,world){if(this.invalidated){return true}const visibleWorldBox=viewState.getVisibleWorld(world);const visibleWorldDimensions=viewState.getVisibleWorldDimensions(world);if(!visibleWorldBox)return false;return this.hasReachedUpThreshold(visibleWorldBox)||this.hasReachedDownThreshold(visibleWorldBox)||this.hasReachedRightThreshold(visibleWorldBox)||this.hasReachedLeftThreshold(visibleWorldBox)||this.hasReachedResizeThreshold(visibleWorldDimensions)}}var ScaleKey=__webpack_require__(52);const DEFAULT_TABLE_RESOLUTION=0;class Rowset_Rowset{constructor(props){var _props$rows,_props$resolution,_props$scales;this.data=void 0;this.transform=void 0;this.resolution=void 0;this.rows=void 0;this.fetchState=void 0;this.scales=void 0;Object.assign(this,props);this.rows=(_props$rows=props===null||props===void 0?void 0:props.rows)!==null&&_props$rows!==void 0?_props$rows:new dataset_src["g"];this.resolution=(_props$resolution=props===null||props===void 0?void 0:props.resolution)!==null&&_props$resolution!==void 0?_props$resolution:DEFAULT_TABLE_RESOLUTION;this.scales=(_props$scales=props===null||props===void 0?void 0:props.scales)!==null&&_props$scales!==void 0?_props$scales:new ScaleKey["a"]}cleanClone(){return new Rowset_Rowset({...this,rows:undefined,fetchState:undefined})}getId(){var _this$data$query,_this$data,_this$resolution,_this$scales$x$type,_this$scales$x,_this$scales$x$field,_this$scales$x2,_this$scales$y$type,_this$scales$y,_this$scales$y$field,_this$scales$y2,_this$transform$getTy,_this$transform;const keys=[(_this$data$query=(_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.query)!==null&&_this$data$query!==void 0?_this$data$query:"no-query",(_this$resolution=this.resolution)!==null&&_this$resolution!==void 0?_this$resolution:0,(_this$scales$x$type=(_this$scales$x=this.scales.x)===null||_this$scales$x===void 0?void 0:_this$scales$x.type)!==null&&_this$scales$x$type!==void 0?_this$scales$x$type:"no-x-type",(_this$scales$x$field=(_this$scales$x2=this.scales.x)===null||_this$scales$x2===void 0?void 0:_this$scales$x2.field)!==null&&_this$scales$x$field!==void 0?_this$scales$x$field:"no-x",(_this$scales$y$type=(_this$scales$y=this.scales.y)===null||_this$scales$y===void 0?void 0:_this$scales$y.type)!==null&&_this$scales$y$type!==void 0?_this$scales$y$type:"no-y",(_this$scales$y$field=(_this$scales$y2=this.scales.y)===null||_this$scales$y2===void 0?void 0:_this$scales$y2.field)!==null&&_this$scales$y$field!==void 0?_this$scales$y$field:"no-y-type",(_this$transform$getTy=(_this$transform=this.transform)===null||_this$transform===void 0?void 0:_this$transform.getType())!==null&&_this$transform$getTy!==void 0?_this$transform$getTy:"no-transform"];return keys.join("_")}updateRow(newRow){const indexOnList=Object(fp_["findIndex"])({_id:newRow._id},this.rows);return this.updateRowByIndex(newRow,indexOnList)}updateRowByIndex(newRow,rowIndex){var _this$rows;if((_this$rows=this.rows)!==null&&_this$rows!==void 0&&_this$rows.length){this.rows.splice(rowIndex,1,newRow);this.rows.etag=`${this.rows.etag}_${1}`}return this}getData(){return this.data}fill(rows,fetchBox){const cloned=this.cleanClone();cloned.rows=rows;if(fetchBox)cloned.fetchState=new FetchState(fetchBox);return cloned}}var spatial_src=__webpack_require__(8);const DEFAULT_RESOLUTION=0;class Resolution_Resolution{constructor(props){this.min=void 0;this.max=void 0;this.availableResolution=void 0;Object.assign(this,props)}getMin(){if(this.availableResolution){if(Object(fp_["isNil"])(this.min)){return this.availableResolution.getMin()}else if(this.min<this.availableResolution.getMin()){return this.availableResolution.getMin()}}return this.min||DEFAULT_RESOLUTION}getMax(){if(this.availableResolution){if(Object(fp_["isNil"])(this.max)){return this.availableResolution.getMax()}else if(this.max>this.availableResolution.getMax()){return this.availableResolution.getMax()}}return this.max||DEFAULT_RESOLUTION}getRange(){return new spatial_src["e"]({min:this.getMin(),max:this.getMax()})}getTargetResolution(zoomRange,zoomLevel){if(!zoomRange||!zoomLevel)return this.getMin();if(zoomLevel>zoomRange.getMax()){return this.getMax()}if(zoomLevel<=zoomRange.getMin()){return this.getMin()}return this.doGetTargetResolution(zoomRange,zoomLevel)}}class ProportionalResolution_ProportionalResolution extends Resolution_Resolution{getResolutionIntervalProportion(zoomRange){if(this.getRange().getCount()>zoomRange.getInterval()){return 1}return zoomRange.getInterval()/this.getRange().getCount()}doGetTargetResolution(zoomRange,zoomLevel){const baseResolution=Math.floor((zoomLevel-zoomRange.getMin())/this.getResolutionIntervalProportion(zoomRange));if(Number.isNaN(baseResolution))return 0;return baseResolution+this.getRange().getMin()}}class ResolutionFactory_ResolutionFactory{constructor(){this.resolutionRange=void 0}static default(){return ResolutionFactory_ResolutionFactory.fromCount(1)}static fromCount(resolutionCount){return this.fromRange(new spatial_src["e"]({min:0,max:resolutionCount-1}))}static fromRange(resolutionRange){const resolution=new ProportionalResolution_ProportionalResolution({});resolution.min=resolutionRange===null||resolutionRange===void 0?void 0:resolutionRange.min;resolution.max=resolutionRange===null||resolutionRange===void 0?void 0:resolutionRange.max;return resolution}}function fromZoom(zoom){return layer=>layer.belongsToZoom(zoom)}function isFromVisualizationId(visualizationId){return layer=>layer.belongsToVisualization(visualizationId)}function hasId(id){return layer=>layer.id===id}const hasData=layer=>layer.hasData();function hasRowset(rowsets,zoom){return layer=>{var _layer$getTargetRowse;return layer.type==="image"||rowsets.hasRowset((_layer$getTargetRowse=layer.getTargetRowset(zoom))===null||_layer$getTargetRowse===void 0?void 0:_layer$getTargetRowse.getId())}}function isDataLoaded(rowsets){return layer=>rowsets.withData(layer.getData()).length>0}function withDataLoaded(rowsets){return layer=>isDataLoaded(rowsets)(layer)}function parseTooltipField(itemSpec){return{title:itemSpec.title,value:{encoding:{text:new encoding_src["j"](itemSpec.value.encoding.text)}}}}function parseTooltip(tooltipSpec){const tooltipContent={};if(Array.isArray(tooltipSpec.table)){tooltipContent.table=tooltipSpec.table.map((itemSpec=>parseTooltipField(itemSpec)))}else{tooltipContent.table=tooltipSpec.table}tooltipContent.actions=tooltipSpec.actions;return tooltipContent}var ZoomRange=__webpack_require__(38);var Visible_dec,Visible_class,Visible_descriptor;let Visible_Visible=(Visible_dec=Object(external_class_transformer_["Type"])((()=>ZoomRange["a"])),Visible_class=class Visible{constructor(props){this.value=void 0;Object(initializerDefineProperty["a"])(this,"zoomRange",Visible_descriptor,this);this.condition=void 0;Object.assign(this,props)}},Visible_descriptor=Object(applyDecoratedDescriptor["a"])(Visible_class.prototype,"zoomRange",[Visible_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),Visible_class);var external_case_=__webpack_require__(50);var external_case_default=__webpack_require__.n(external_case_);const getSubSchema=(schema,symbol)=>{const subSchema=Object(fp_["clone"])(schema.definitions[symbol]);if(subSchema){subSchema.definitions=schema.definitions}return subSchema};const columnToOption=column=>({value:column.name,label:column.getLabel()});const getOptionsFromQuery=(queries,queryKey,filter)=>{const columns=queries.getColumns(queryKey);if(!filter){filter=()=>true}return columns.filter(filter).map(columnToOption)};class EditorProps_EditorPropsFactory{constructor(props){this.layer=void 0;this.visualization=void 0;this.queries=void 0;this.schema=void 0;this.zoom=void 0;Object.assign(this,props)}create(type,onChange){return{...this,type,title:external_case_default.a.title(type),elementId:`${this.layer.id}-${type}-editor`,onChange:_ref=>{let{layer,value}=_ref;onChange(layer,value,type)},getOptions:predicate=>getOptionsFromQuery(this.queries,this.layer.getQueryKey(),predicate)}}}var PureComponent=__webpack_require__(25);var material_=__webpack_require__(12);var theme=__webpack_require__(9);var Icons=__webpack_require__(72);var jsx_runtime_=__webpack_require__(0);const isSelectOption=option=>!!option.label;class Select_Select extends external_react_default.a.PureComponent{render(){var _this$props$options;return Object(jsx_runtime_["jsxs"])(material_["FormControl"],{error:this.props.error,fullWidth:this.props.fullWidth!==false,children:[Object(jsx_runtime_["jsx"])(material_["Select"],{native:true,value:this.props.value,inputProps:this.props.inputProps,onChange:e=>this.props.onChange(e),fullWidth:this.props.fullWidth!==false,sx:{"& .MuiOutlinedInput-root:hover":{"& > fieldset":{borderColor:"orange"}}},children:((_this$props$options=this.props.options)===null||_this$props$options===void 0?void 0:_this$props$options.length)>0&&this.props.options.map(((option,index)=>{if(isSelectOption(option)){return Object(jsx_runtime_["jsx"])("option",{value:option.value,children:option.label},index)}return Object(jsx_runtime_["jsx"])("option",{value:option,children:option},index)}))}),this.props.error&&this.props.errorMessage&&Object(jsx_runtime_["jsx"])(material_["FormHelperText"],{sx:{ml:0},children:this.props.errorMessage})]})}}const SelectView=Object(theme["a"])("div",{name:"SelectView"})((_ref=>{let{theme}=_ref;return{...theme.components.HoparaInput,padding:"0",position:"relative",cursor:"pointer",":nth-of-type(1n) > select":{appearance:"none",backgroundColor:"transparent",border:"none",color:"inherit",padding:theme.components.HoparaInput.padding,paddingRight:"1.575rem",margin:"0",width:"100%",fontFamily:"inherit",fontSize:"inherit",cursor:"inherit",lineHeight:"inherit",":-ms-expand":{display:"none"}}}}));const SelectIconBox=Object(theme["a"])("span",{name:"SelectIconBox"})((_ref2=>{let{theme}=_ref2;return{alignItems:"center",boxSizing:"border-box",color:theme.palette.primary.main,display:"flex",height:"1.15em",pointerEvents:"none",position:"absolute",right:"8px",top:"50%",transform:"translateY(-50%)",width:"1.15em"}}));const SelectIcon=Object(theme["a"])(Icons["a"],{name:"SelectIcon"})({height:"100%",width:"100%",color:"inherit"});const colors=["#ffffff","#fef445","#fac710","#f24726","#e6e6e6","#8fd14f","#cee741","#da0063","#808080","#12cdd4","#0ca789","#9510ac","#1a1a1a","#2d9bf0","#414bb2","#652cb3"];class ColorPicker_ColorPicker extends external_react_default.a.Component{constructor(props){super(props);this.state={isOpen:false,color:props.color,lastColor:props.color,enabled:props.enabled}}handleColorClick(){this.setState({isOpen:false})}handleColorHover(color){this.setState({color},(()=>this.props.onChange(this.state.color)))}handleColorLeave(){this.setState({color:this.state.lastColor},(()=>this.props.onChange(this.state.color)))}handlePickerClick(){this.setState({isOpen:!this.state.isOpen})}render(){const{isOpen}=this.state;const styles={color:{height:"19px",borderRadius:10},swatch:{display:"inline-block",cursor:"pointer",borderRadius:12,overflow:"hidden",height:"25px",width:"calc(100% - 20px)",padding:1,border:"2px solid transparent"},selected:{border:"2px solid #622fb4",padding:1}};return Object(jsx_runtime_["jsxs"])(SelectView,{children:[Object(jsx_runtime_["jsx"])(SelectIconBox,{children:isOpen?Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-up"}):Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-down"})}),Object(jsx_runtime_["jsx"])("div",{onClick:this.handlePickerClick.bind(this),style:{margin:4},children:Object(jsx_runtime_["jsx"])("div",{style:styles.swatch,children:Object(jsx_runtime_["jsx"])("div",{style:{...styles.color,background:this.state.color,padding:0}})})}),isOpen&&Object(jsx_runtime_["jsx"])("div",{role:"list",style:{position:"relative",zIndex:1,backgroundColor:"white",padding:10,borderRadius:20,boxShadow:"0 0 0 1px rgba(0,0,0,.1)",display:"flex",flexWrap:"wrap",justifyContent:"space-between"},children:colors.map(((color,i)=>Object(jsx_runtime_["jsx"])("div",{role:"listitem",onClick:()=>this.handleColorClick(),onMouseEnter:()=>this.handleColorHover(color),onMouseLeave:()=>this.handleColorLeave(),style:{width:100/4+"%",height:25},children:Object(jsx_runtime_["jsx"])("div",{style:{...styles.swatch,width:"100%",...color===this.state.color?styles.selected:{}},children:Object(jsx_runtime_["jsx"])("div",{style:{...styles.color,backgroundColor:color}})})},"item-"+i)))})]})}}var react_=__webpack_require__(14);class ColorScheme_ColorScheme extends external_react_default.a.Component{render(){const swatchStyle=Object(react_["css"])({background:"#fff",cursor:"pointer",height:25,padding:1,border:"2px solid transparent"});const selectedStyle=Object(react_["css"])({border:"2px solid #622fb4"});const styles=[swatchStyle,Object(react_["css"])(this.props.style)];if(this.props.selected){styles.push(selectedStyle)}const ColorSchemeView=Object(theme["a"])("div",{name:"ColorSchemeView"})(Object(react_["css"])(styles));return Object(jsx_runtime_["jsx"])(ColorSchemeView,{children:Object(jsx_runtime_["jsx"])("div",{style:{display:"flex",borderRadius:30,overflow:"hidden",width:"98%",margin:"1px auto"},children:this.props.colors.map(((color,index)=>Object(jsx_runtime_["jsx"])("div",{style:{backgroundColor:color,height:17,flexGrow:1}},this.props.id+"-color-"+color+"-"+index)))})})}}var Schemes=__webpack_require__(54);const ColorSchemePicker_length=8;const schemes=Object(Schemes["c"])(ColorSchemePicker_length);class ColorSchemePicker_ColorSchemePicker extends external_react_default.a.Component{getSchemeNameFromProps(){if(this.props.range){return"custom"}else if(this.props.scheme&&Object.keys(schemes).includes(this.props.scheme)){return this.props.scheme}return Object.keys(schemes)[0]}constructor(props){super(props);this._viewRef=external_react_default.a.createRef();this.clickOutListenerCached=void 0;this.state={selectedScheme:this.getSchemeNameFromProps(),isOpen:false};this.clickOutListenerCached=this.clickOutListener.bind(this)}handleSchemeClick(e){e.stopPropagation();e.preventDefault();this.setState({isOpen:false,selectedScheme:this.state.hoveredSheme})}isCustom(scheme){return scheme==="custom"}handleSchemeHover(e,scheme){e.stopPropagation();e.preventDefault();if(scheme===this.state.hoveredSheme)return;this.setState({hoveredSheme:scheme});if(this.isCustom(scheme)){this.props.onRangeChange(this.props.range)}else{this.props.onSchemeChange(scheme)}}handleSchemeLeave(e){e.stopPropagation();e.preventDefault();if(this.isCustom(this.state.selectedScheme)){this.props.onRangeChange(this.props.range)}else{this.props.onSchemeChange(this.state.selectedScheme)}}clickOutListener(event){if(this._viewRef.current&&!this._viewRef.current.contains(event.target)){this.setState({isOpen:false})}document.removeEventListener("click",this.clickOutListenerCached,true)}listenClickOut(){if(this.state.isOpen)document.addEventListener("click",this.clickOutListenerCached,true)}handlePickerClick(e){e.stopPropagation();e.preventDefault();this.setState((prevState=>({isOpen:!prevState.isOpen})),(()=>this.listenClickOut()))}handleListBlur(){this.setState({isOpen:false})}getColors(scheme){let colors;if(this.isCustom(scheme)){colors=this.props.range}else{colors=schemes[scheme]}if(this.props.reverse){return colors.slice().reverse()}return colors}getSelectedColors(){return this.getColors(this.state.selectedScheme)}render(){var _this$props$range;const{isOpen}=this.state;let options=schemes;if((_this$props$range=this.props.range)!==null&&_this$props$range!==void 0&&_this$props$range.length){options={custom:this.props.range,...schemes}}return Object(jsx_runtime_["jsxs"])(SelectView,{ref:this._viewRef,children:[Object(jsx_runtime_["jsx"])(SelectIconBox,{children:isOpen?Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-up"}):Object(jsx_runtime_["jsx"])(SelectIcon,{icon:"chevron-down"})}),Object(jsx_runtime_["jsx"])("div",{onClick:this.handlePickerClick.bind(this),style:{margin:4},children:Object(jsx_runtime_["jsx"])(ColorScheme_ColorScheme,{style:{width:"calc(100% - 20px)"},id:this.props.id+"-selected-color-scheme",colors:this.getSelectedColors()})}),isOpen&&Object(jsx_runtime_["jsx"])("ul",{style:{position:"relative",zIndex:1,backgroundColor:"white",padding:10,borderRadius:20,boxShadow:"0 0 0 1px rgba(0,0,0,.1)",listStyle:"none"},onBlur:this.handleListBlur.bind(this),children:Object.keys(options).map((schemeName=>Object(jsx_runtime_["jsx"])("li",{children:Object(jsx_runtime_["jsx"])("button",{onClick:this.handleSchemeClick.bind(this),onMouseEnter:e=>this.handleSchemeHover(e,schemeName),onMouseLeave:this.handleSchemeLeave.bind(this),style:{background:"none",border:"none",width:"100%",cursor:"pointer",padding:0},children:Object(jsx_runtime_["jsx"])(ColorScheme_ColorScheme,{id:this.props.id+schemeName,colors:this.getColors(schemeName),selected:this.state.hoveredSheme?schemeName===this.state.hoveredSheme:schemeName===this.state.selectedScheme})})},schemeName)))})]})}}var icons_material_=__webpack_require__(29);class InputSearch_InputSearch extends external_react_default.a.Component{constructor(props){super(props);this.state={value:this.props.initialValue?this.props.initialValue:this.props.value}}getValue(){return this.props.value||this.state.value||""}handleChange(e){if(!this.props.value){this.setState({value:e.target.value})}return this.props.onChange&&this.props.onChange(e)}render(){return Object(jsx_runtime_["jsx"])(material_["OutlinedInput"],{fullWidth:true,value:this.getValue(),placeholder:this.props.placeholder,onFocus:e=>this.props.onFocus&&this.props.onFocus(e),onBlur:e=>this.props.onBlur&&this.props.onBlur(e),onChange:e=>this.handleChange(e),endAdornment:Object(jsx_runtime_["jsx"])(material_["InputAdornment"],{position:"end",children:Object(jsx_runtime_["jsx"])(material_["IconButton"],{onClick:e=>this.props.onSubmit&&this.props.onSubmit(e),edge:"end",color:"primary",children:Object(jsx_runtime_["jsx"])(icons_material_["Search"],{fontSize:"small"})})})})}}var Slider_=__webpack_require__(88);var Slider_default=__webpack_require__.n(Slider_);var Link_=__webpack_require__(105);var Link_default=__webpack_require__.n(Link_);let ThumbFormat;(function(ThumbFormat){ThumbFormat[ThumbFormat["CIRCLE"]=0]="CIRCLE";ThumbFormat[ThumbFormat["RECTANGLE"]=1]="RECTANGLE";ThumbFormat[ThumbFormat["LINK"]=2]="LINK"})(ThumbFormat||(ThumbFormat={}));const hoparaSliderThumb=thumbFormats=>props=>{const localProps={...props,style:{...props.style,sx:undefined}};const circleProps={...localProps};const rectangleProps={...localProps,sx:{borderRadius:0,border:0,width:5}};let ppp;if(!thumbFormats||thumbFormats.length===0)ppp=circleProps;else{const format=thumbFormats[props["data-index"]];if(format===ThumbFormat.CIRCLE){ppp=circleProps}else if(format===ThumbFormat.LINK){ppp={...circleProps,sx:{backgroundColor:"#ddd",border:"2px solid #ccc"}}}else{ppp=rectangleProps}}if(thumbFormats!==null&&thumbFormats!==void 0&&thumbFormats.length&&thumbFormats[props["data-index"]]===ThumbFormat.LINK){return Object(jsx_runtime_["jsxs"])(Slider_["SliderThumb"],{...ppp,onChange:()=>({}),children:[props.children,Object(jsx_runtime_["jsx"])(Link_default.a,{sx:{padding:3}})]})}return Object(jsx_runtime_["jsx"])(Slider_["SliderThumb"],{...ppp,children:props.children})};class Slider_Slider extends external_react_default.a.PureComponent{render(){const thumbComponent=hoparaSliderThumb(this.props.thumbFormats);const omited=Object(fp_["omit"])(["thumbFormats"],this.props);return Object(jsx_runtime_["jsx"])("div",{children:Object(jsx_runtime_["jsx"])(Slider_default.a,{...omited,components:{Thumb:thumbComponent}})})}}var ColorEncoding=__webpack_require__(19);var Switch_=__webpack_require__(106);var Switch_default=__webpack_require__.n(Switch_);class SidebarCardTitle_SidebarCardTitle extends PureComponent["a"]{render(){return Object(jsx_runtime_["jsx"])(material_["Typography"],{variant:"h5",sx:{typography:"h6",...this.props.sx},children:this.props.children})}}class SidebarContent_SidebarContent extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(material_["Box"],{...this.props,sx:{...this.props.sx},children:this.props.children})}}class EncodingEditorCard_EncodingEditorCard extends external_react_default.a.PureComponent{constructor(props){super(props)}render(){const showCardContent=this.props.canBeEnabled&&this.props.enabled||!this.props.canBeEnabled;return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])(SidebarCardTitle_SidebarCardTitle,{children:this.props.title}),Object(jsx_runtime_["jsxs"])(SidebarContent_SidebarContent,{children:[this.props.canBeEnabled&&Object(jsx_runtime_["jsx"])(material_["Box"],{sx:{textAlign:"right"},children:Object(jsx_runtime_["jsx"])(Switch_default.a,{sx:{margin:"-1em auto"},checked:this.props.enabled,onChange:()=>this.props.onEnabledChange&&this.props.onEnabledChange(!this.props.enabled)})}),showCardContent&&this.props.children]})]})}}class OpacitySlider_OpacitySlider extends external_react_default.a.Component{handleOpacityChange(event){this.props.onOpacityChange(Number(event.target.value))}render(){return Object(jsx_runtime_["jsx"])(Slider_Slider,{min:0,max:1,step:.01,value:this.props.opacity,onChange:this.handleOpacityChange.bind(this),valueLabelDisplay:"auto",sx:this.props.sx})}}class SidebarSubCard_SidebarSubCard extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(material_["Box"],{sx:{display:"grid",gridTemplateColumns:"1.05fr 2fr",marginTop:"0.33em",borderLeft:"3px solid #eee",paddingLeft:"0.5em",alignItems:"center",...this.props.sx},children:this.props.children})}}class SidebarSubCardTitle_SidebarSubCardTitle extends PureComponent["a"]{render(){return Object(jsx_runtime_["jsx"])(material_["Typography"],{variant:"h6",sx:{fontWeight:"500",textTransform:"uppercase",letterSpacing:.4,fontSize:11,...this.props.sx},children:this.props.children})}}const STATIC_FIELD="__static__";class ColorEncodingEditor_ColorEncodingEditor extends external_react_default.a.Component{handleValueChange(value){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,value}))}handleReverseChange(reverse){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,reverse}}))}handleFieldChange(event){if(event.target.value===STATIC_FIELD){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,field:undefined}))}return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,field:event.target.value}))}handleSchemeChange(scheme){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,scheme}}))}handleColorRangeChange(range){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,range}}))}handleOpacityChange(opacity){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,opacity}))}getField(){var _this$props$encoding;return((_this$props$encoding=this.props.encoding)===null||_this$props$encoding===void 0?void 0:_this$props$encoding.field)||STATIC_FIELD}isStaticField(){return this.getField()===STATIC_FIELD}render(){var _this$props$title,_this$props$encoding2,_this$props$encoding3,_this$props$encoding4,_this$props$encoding5,_this$props$encoding6;const options=this.props.options;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:(_this$props$title=this.props.title)!==null&&_this$props$title!==void 0?_this$props$title:"Color",canBeEnabled:this.props.canBeEnabled,enabled:this.props.enabled,onEnabledChange:this.props.onEnabledChange,children:[Object(jsx_runtime_["jsx"])(Select_Select,{value:this.getField(),onChange:this.handleFieldChange.bind(this),options:[{label:"Fixed color",value:STATIC_FIELD},...options.map((option=>({value:option.value,label:`Bind to ${option.label} field`})))]}),this.isStaticField()&&Object(jsx_runtime_["jsx"])("div",{style:{marginTop:8},children:Object(jsx_runtime_["jsx"])(ColorPicker_ColorPicker,{color:(_this$props$encoding2=this.props.encoding)===null||_this$props$encoding2===void 0?void 0:_this$props$encoding2.value,enabled:true,onChange:this.handleValueChange.bind(this)})}),!this.isStaticField()&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Scheme"}),Object(jsx_runtime_["jsx"])(ColorSchemePicker_ColorSchemePicker,{id:this.props.id+"-color-scheme-picker",reverse:!!this.props.encoding.scale.reverse,scheme:(_this$props$encoding3=this.props.encoding)===null||_this$props$encoding3===void 0?void 0:_this$props$encoding3.scale.scheme,range:(_this$props$encoding4=this.props.encoding)===null||_this$props$encoding4===void 0?void 0:_this$props$encoding4.scale.range,onSchemeChange:this.handleSchemeChange.bind(this),onRangeChange:this.handleColorRangeChange.bind(this)})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Reverse"}),Object(jsx_runtime_["jsx"])(material_["Switch"],{size:"small",checked:!!this.props.encoding.scale.reverse,onChange:e=>{var _e$target;return this.handleReverseChange(!!(e!==null&&e!==void 0&&(_e$target=e.target)!==null&&_e$target!==void 0&&_e$target.checked))}})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Fallback"}),Object(jsx_runtime_["jsx"])(ColorPicker_ColorPicker,{color:(_this$props$encoding5=this.props.encoding)===null||_this$props$encoding5===void 0?void 0:_this$props$encoding5.value,enabled:true,onChange:this.handleValueChange.bind(this)})]})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Opacity"}),Object(jsx_runtime_["jsx"])(OpacitySlider_OpacitySlider,{opacity:(_this$props$encoding6=this.props.encoding)===null||_this$props$encoding6===void 0?void 0:_this$props$encoding6.opacity,onOpacityChange:this.handleOpacityChange.bind(this),sx:{width:"92%"}})]})]})}}var color_ColorEncodingEditor=ColorEncodingEditor_ColorEncodingEditor;const createColorEditor=props=>{const options=new encoding_src["a"](props.layer.encoding.color).requiresQuantitativeValues()?props.getOptions((column=>column.isQuantitative())):props.getOptions();return Object(jsx_runtime_["jsx"])(color_ColorEncodingEditor,{id:props.elementId,encoding:new encoding_src["a"](props.layer.encoding.color),options,transform:props.layer.transform,onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})}},props.elementId)};var SizeEncoding=__webpack_require__(32);const NULL_FIELD="__static__";class FieldEditor_FieldEditor extends external_react_default.a.Component{constructor(props){super(props)}handleChange(event){if(event.target.value===NULL_FIELD){this.props.onChange(null)}else{this.props.onChange(event.target.value)}}render(){var _this$props$field;let options=this.props.options;options=options.map((option=>({value:option.value,label:`Bind to ${option.label} field`})));if(this.props.includeNullOption){var _this$props$nullOptio;options.unshift({label:(_this$props$nullOptio=this.props.nullOptionLabel)!==null&&_this$props$nullOptio!==void 0?_this$props$nullOptio:"None",value:NULL_FIELD})}const showError=this.props.required===true&&!this.props.field;const Wrapper=this.props.title?SidebarSubCard_SidebarSubCard:external_react_default.a.Fragment;return Object(jsx_runtime_["jsxs"])(Wrapper,{children:[this.props.title&&Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:this.props.title}),Object(jsx_runtime_["jsx"])(Select_Select,{error:showError,errorMessage:showError?"Please select a field":"",value:(_this$props$field=this.props.field)!==null&&_this$props$field!==void 0?_this$props$field:"",options,onChange:this.handleChange.bind(this)})]})}}var field_FieldEditor=FieldEditor_FieldEditor;const MIN_SIZE=0;const MAX_SIZE=100;class SizeEncodingEditor_SizeEncodingEditor extends external_react_default.a.Component{constructor(props){super(props)}getValue(){var _this$props$encoding;return(_this$props$encoding=this.props.encoding)!==null&&_this$props$encoding!==void 0&&_this$props$encoding.value?Math.round(this.props.encoding.value):0}isFixedSize(){var _this$props$encoding2;return!((_this$props$encoding2=this.props.encoding)!==null&&_this$props$encoding2!==void 0&&_this$props$encoding2.field)}resizeOnZoom(){var _this$props$encoding3,_this$props$encoding4;return Number.isFinite((_this$props$encoding3=this.props.encoding)===null||_this$props$encoding3===void 0?void 0:(_this$props$encoding4=_this$props$encoding3.resize)===null||_this$props$encoding4===void 0?void 0:_this$props$encoding4.referenceZoom)&&!this.props.disableResizeOnZooming}notifyChange(encoding){this.props.onEncodingChange(encoding)}handleFieldChange(field){this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,field}))}handleValueChange(event){this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,value:Number(event.target.value)}))}handleToggleResizeChange(){if(this.resizeOnZoom()){return this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{referenceZoom:undefined,maxZoom:undefined}}))}const referenceZoom=Math.round(this.props.currentZoom);this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{referenceZoom,maxZoom:referenceZoom+1}}))}handleResizeRefZoomChange(event,value){var _this$props$encoding5;this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{...(_this$props$encoding5=this.props.encoding)===null||_this$props$encoding5===void 0?void 0:_this$props$encoding5.resize,referenceZoom:value}}))}handleResizeMaxZoomChange(event,value){var _this$props$encoding6;this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,resize:{...(_this$props$encoding6=this.props.encoding)===null||_this$props$encoding6===void 0?void 0:_this$props$encoding6.resize,maxZoom:value}}))}handleRangeChange(event){this.notifyChange(new SizeEncoding["a"]({...this.props.encoding,scale:{range:event.target.value}}))}renderFixedSize(){var _this$props$encoding7,_this$props$encoding8,_this$props$encoding9;return Object(jsx_runtime_["jsxs"])("div",{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Size"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{value:this.getValue(),onChange:this.handleValueChange.bind(this),valueLabelDisplay:"auto"})]}),!this.props.disableResizeOnZooming&&Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Resize while zooming"}),Object(jsx_runtime_["jsx"])(material_["Switch"],{size:"small",onChange:this.handleToggleResizeChange.bind(this),checked:this.resizeOnZoom()})]}),this.resizeOnZoom()&&((_this$props$encoding7=this.props.encoding)===null||_this$props$encoding7===void 0?void 0:(_this$props$encoding8=_this$props$encoding7.resize)===null||_this$props$encoding8===void 0?void 0:_this$props$encoding8.referenceZoom)&&((_this$props$encoding9=this.props.encoding)===null||_this$props$encoding9===void 0?void 0:_this$props$encoding9.resize.maxZoom)&&Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Zoom level"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:this.props.zoomRange.getMin(),max:this.props.zoomRange.getMax(),step:.5,value:this.props.encoding.resize.maxZoom,onChange:this.handleResizeMaxZoomChange.bind(this),valueLabelDisplay:"auto",valueLabelFormat:(level,pos)=>{switch(pos){case 0:return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:["enlarge until",Object(jsx_runtime_["jsx"])("br",{}),Object(jsx_runtime_["jsxs"])("b",{children:["zoom ",level]})]})}}})]})]})}renderRangedField(){var _this$props$encoding$,_this$props$encoding10,_this$props$encoding11,_this$props$encoding$2,_this$props$encoding12,_this$props$encoding13;return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Range"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:MIN_SIZE,max:MAX_SIZE,thumbFormats:[ThumbFormat.RECTANGLE,ThumbFormat.RECTANGLE],value:[(_this$props$encoding$=(_this$props$encoding10=this.props.encoding)===null||_this$props$encoding10===void 0?void 0:(_this$props$encoding11=_this$props$encoding10.scale)===null||_this$props$encoding11===void 0?void 0:_this$props$encoding11.range[0])!==null&&_this$props$encoding$!==void 0?_this$props$encoding$:MIN_SIZE,(_this$props$encoding$2=(_this$props$encoding12=this.props.encoding)===null||_this$props$encoding12===void 0?void 0:(_this$props$encoding13=_this$props$encoding12.scale)===null||_this$props$encoding13===void 0?void 0:_this$props$encoding13.range[1])!==null&&_this$props$encoding$2!==void 0?_this$props$encoding$2:MAX_SIZE],onChange:this.handleRangeChange.bind(this),valueLabelDisplay:"auto"})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Fallback"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{value:this.getValue(),onChange:this.handleValueChange.bind(this),valueLabelDisplay:"auto"})]})]})}render(){var _this$props$title,_this$props$encoding14;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:(_this$props$title=this.props.title)!==null&&_this$props$title!==void 0?_this$props$title:"Size",canBeEnabled:this.props.canBeEnabled,enabled:this.props.enabled,onEnabledChange:this.props.onEnabledChange,children:[Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:this.props.id,options:this.props.options,field:(_this$props$encoding14=this.props.encoding)===null||_this$props$encoding14===void 0?void 0:_this$props$encoding14.field,includeNullOption:true,nullOptionLabel:`Fixed ${this.props.title.toLowerCase()}`,onChange:this.handleFieldChange.bind(this)},this.props.id),this.isFixedSize()&&this.renderFixedSize(),!this.isFixedSize()&&this.renderRangedField()]})}}var size_SizeEncodingEditor=SizeEncodingEditor_SizeEncodingEditor;const sizeOptionsFilter=column=>column.isQuantitative()||column.isTemporal();const createSizeEditor=props=>{var _props$layer$visible$;return Object(jsx_runtime_["jsx"])(size_SizeEncodingEditor,{id:props.elementId,title:props.title,encoding:props.layer.encoding.size,options:props.getOptions(sizeOptionsFilter),onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})},currentZoom:props.zoom,zoomRange:(_props$layer$visible$=props.layer.visible.zoomRange)!==null&&_props$layer$visible$!==void 0?_props$layer$visible$:new spatial_src["e"]},props.elementId)};var OffsetEncoding=__webpack_require__(79);const createOffsetEditor=props=>{var _props$layer$encoding,_props$layer$visible$;return Object(jsx_runtime_["jsx"])(size_SizeEncodingEditor,{id:props.elementId,title:props.title,encoding:(_props$layer$encoding=props.layer.encoding.offset)===null||_props$layer$encoding===void 0?void 0:_props$layer$encoding.y,options:props.getOptions(sizeOptionsFilter),onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:new OffsetEncoding["a"]({y:newEncoding})})},currentZoom:props.zoom,zoomRange:(_props$layer$visible$=props.layer.visible.zoomRange)!==null&&_props$layer$visible$!==void 0?_props$layer$visible$:new ZoomRange["a"]},props.elementId)};function createFieldBasedEditor(props){var _props$layer$encoding,_props$layer$encoding2;return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:props.title,children:Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:props.elementId,options:props.getOptions(),field:(_props$layer$encoding=(_props$layer$encoding2=props.layer.encoding[props.type])===null||_props$layer$encoding2===void 0?void 0:_props$layer$encoding2.field)!==null&&_props$layer$encoding!==void 0?_props$layer$encoding:"",transform:props.layer.transform,includeNullOption:true,onChange:field=>{const newEncoding={...props.layer.encoding[props.type],field};props.onChange({layer:props.layer,value:newEncoding})}},props.elementId)})}const createIconEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.type===dataset_src["b"].STRING))});const createImageEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.type===dataset_src["b"].STRING))});const createLineEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.isGeometry()))});const createPolygonEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.isGeometry()||column.type===dataset_src["b"].STRING||column.type===dataset_src["b"].JSON))});const createTextEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.type===dataset_src["b"].STRING||column.isQuantitative()))});const createBoundsEditor=props=>createFieldBasedEditor({...props,getOptions:()=>props.getOptions((column=>column.isGeometry()))});class HeatmapEncoding{constructor(props){this.intensity=void 0;this.radius=void 0;this.createdTimestamp=void 0;Object.assign(this,props);this.createdTimestamp=new Date}isRenderable(){return true}}var Tooltip_=__webpack_require__(107);var Tooltip_default=__webpack_require__.n(Tooltip_);var Info_=__webpack_require__(108);var Info_default=__webpack_require__.n(Info_);class Infotip_Infotip extends external_react_default.a.PureComponent{render(){const props={placement:"top",arrow:true,...this.props};return Object(jsx_runtime_["jsx"])(Tooltip_default.a,{...props,children:Object(jsx_runtime_["jsx"])(Info_default.a,{fontSize:"small"})})}}const MIN_INTENSITY_MULTIPLIER=0;const MAX_INTENSITY_MULTIPLIER=5;const MIN_RADIUS=0;const MAX_RADIUS=80;const HeatmapEncodingEditor_NULL_FIELD="__static__";class HeatmapEncodingEditor_HeatmapEncodingEditor extends external_react_default.a.Component{constructor(props){super(props)}notifyChange(encoding){this.props.onEncodingChange(encoding)}handleIntensityMultiplierChange(event){const encoding=new HeatmapEncoding({...this.props.encoding});encoding.intensity.multiplier=event.target.value;this.notifyChange(encoding)}getField(){var _this$props$encoding$;return(_this$props$encoding$=this.props.encoding.intensity.field)!==null&&_this$props$encoding$!==void 0?_this$props$encoding$:HeatmapEncodingEditor_NULL_FIELD}handleRadiusChange(event){const encoding=new HeatmapEncoding({...this.props.encoding});encoding.radius=event.target.value;this.notifyChange(encoding)}handleIntensityFieldChange(field){const encoding=new HeatmapEncoding({...this.props.encoding});if(field===HeatmapEncodingEditor_NULL_FIELD){encoding.intensity.field=undefined}else{encoding.intensity.field=field}this.notifyChange(encoding)}render(){return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Heatmap",children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Intensity field"}),Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:this.props.elementId,options:this.props.fieldOptions,field:this.getField(),transform:this.props.transforms,includeNullOption:true,onChange:this.handleIntensityFieldChange.bind(this)},this.props.elementId)]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Intensity multiplier"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:MIN_INTENSITY_MULTIPLIER,max:MAX_INTENSITY_MULTIPLIER,step:.1,value:this.props.encoding.intensity.multiplier,onChange:this.handleIntensityMultiplierChange.bind(this),valueLabelDisplay:"auto"}),Object(jsx_runtime_["jsx"])(Infotip_Infotip,{title:"The higher the multiplier the more biased towards the end of the color spectrum",sx:{ml:5}})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Aggregation radius"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:MIN_RADIUS,max:MAX_RADIUS,step:2,value:this.props.encoding.radius,onChange:this.handleRadiusChange.bind(this),valueLabelDisplay:"auto"})]})]})}}var heatmap_HeatmapEncodingEditor=HeatmapEncodingEditor_HeatmapEncodingEditor;const createHeatmapEditor=props=>{const quantitativeFilter=column=>column.isQuantitative();return Object(jsx_runtime_["jsx"])(heatmap_HeatmapEncodingEditor,{elementId:props.elementId+"editor",transforms:props.layer.transform,onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})},fieldOptions:getOptionsFromQuery(props.queries,props.layer.getQueryKey(),quantitativeFilter),encoding:props.layer.encoding.heatmap},props.elementId)};class SchemeColorEncodingEditor_SchemeColorEncodingEditor extends external_react_default.a.Component{handleReverseChange(reverse){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,reverse}}))}handleSchemeChange(scheme){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,scheme}}))}handleRangeChange(range){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,scale:{...this.props.encoding.scale,range}}))}handleOpacityChange(opacity){return this.props.onEncodingChange(new ColorEncoding["a"]({...this.props.encoding,opacity}))}render(){var _this$props$encoding,_this$props$encoding2;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Color",children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Scheme"}),Object(jsx_runtime_["jsx"])(ColorSchemePicker_ColorSchemePicker,{id:this.props.id+"-color-scheme-picker",reverse:!!this.props.encoding.scale.reverse,scheme:(_this$props$encoding=this.props.encoding)===null||_this$props$encoding===void 0?void 0:_this$props$encoding.scale.scheme,range:(_this$props$encoding2=this.props.encoding)===null||_this$props$encoding2===void 0?void 0:_this$props$encoding2.scale.range,onSchemeChange:this.handleSchemeChange.bind(this),onRangeChange:this.handleRangeChange.bind(this)})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Reverse"}),Object(jsx_runtime_["jsx"])(material_["Switch"],{size:"small",checked:!!this.props.encoding.scale.reverse,onChange:e=>{var _e$target;return this.handleReverseChange(!!(e!==null&&e!==void 0&&(_e$target=e.target)!==null&&_e$target!==void 0&&_e$target.checked))}})]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Opacity"}),Object(jsx_runtime_["jsx"])(OpacitySlider_OpacitySlider,{opacity:this.props.encoding.opacity,onOpacityChange:this.handleOpacityChange.bind(this)})]})]})}}var color_SchemeColorEncodingEditor=SchemeColorEncodingEditor_SchemeColorEncodingEditor;const createSchemeColorEditor=props=>Object(jsx_runtime_["jsx"])(color_SchemeColorEncodingEditor,{id:props.elementId,encoding:new encoding_src["a"](props.layer.encoding.color),onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})}},props.elementId);class TypeEditor_TypeEditor extends external_react_default.a.Component{constructor(props){super(props)}render(){const options=this.props.options.map((option=>({value:option.value,label:option.label})));return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Type",children:Object(jsx_runtime_["jsx"])(Select_Select,{value:this.props.type,options,onChange:event=>this.props.onChange(event.target.value)})})}}var type_editor_TypeEditor=TypeEditor_TypeEditor;const createTypeEditor=props=>Object(jsx_runtime_["jsx"])(type_editor_TypeEditor,{id:props.layer.id+"type-editor",type:props.layer.type,options:Object.keys(LayerType).map((type=>({value:type,label:external_case_default.a.title(type)}))),onChange:value=>{props.onChange({layer:props.layer,value})}},props.layer.id+"type-editor");class QueryEditor_QueryEditor extends external_react_default.a.Component{constructor(props){super(props)}handleQueryChange(event){const index=Number(event.target.value);this.props.onChange(this.props.queries[index])}render(){var _this$props$queries$i;const options=this.props.queries.map(((query,index)=>({value:index,label:query.getName()})));options.unshift({label:"None",value:""});const query=this.props.queries.findQuery(this.props.queryKey);return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Query",children:Object(jsx_runtime_["jsx"])(Select_Select,{value:(_this$props$queries$i=this.props.queries.indexOf(query))!==null&&_this$props$queries$i!==void 0?_this$props$queries$i:"",options,error:!this.props.queryKey,errorMessage:!this.props.queryKey?"Please select a query":undefined,onChange:this.handleQueryChange.bind(this)})})}}var query_QueryEditor=QueryEditor_QueryEditor;const createQueryEditor=props=>Object(jsx_runtime_["jsx"])(query_QueryEditor,{id:props.layer.id+"-query",queryKey:props.layer.getData(),queries:props.queries,onChange:value=>{props.onChange({layer:props.layer,value})}},props.layer.id+"-query");var World=__webpack_require__(39);class PositionEncodingEditor_PositionEncodingEditor extends external_react_default.a.Component{constructor(props){super(props)}updateEncoding(newEncoding){this.props.onEncodingChange(newEncoding)}handleXFieldChange(field){var _this$props$encoding;this.updateEncoding(new encoding_src["h"]({...this.props.encoding,x:{...(_this$props$encoding=this.props.encoding)===null||_this$props$encoding===void 0?void 0:_this$props$encoding.x,field}}))}handleYFieldChange(field){var _this$props$encoding2;this.updateEncoding(new encoding_src["h"]({...this.props.encoding,y:{...(_this$props$encoding2=this.props.encoding)===null||_this$props$encoding2===void 0?void 0:_this$props$encoding2.y,field}}))}render(){var _this$props$encoding$,_this$props$encoding$2;const xTitle=this.props.worldType===World["b"].GEO?"Longitude":"X";const xSelect=Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:"x-position-field",field:(_this$props$encoding$=this.props.encoding.x)===null||_this$props$encoding$===void 0?void 0:_this$props$encoding$.field,options:this.props.options,onChange:this.handleXFieldChange.bind(this),title:xTitle,includeNullOption:true,transform:this.props.transform},"x-position-field");const yTitle=this.props.worldType===World["b"].GEO?"Latitude":"Y";const ySelect=Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:"y-position-field",field:(_this$props$encoding$2=this.props.encoding.y)===null||_this$props$encoding$2===void 0?void 0:_this$props$encoding$2.field,options:this.props.options,onChange:this.handleYFieldChange.bind(this),title:yTitle,includeNullOption:true,transform:this.props.transform},"y-position-field");const geoComponents=Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[ySelect,xSelect]});const cartesianComponents=Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[xSelect,ySelect]});return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Position",children:this.props.worldType===World["b"].GEO?geoComponents:cartesianComponents})}}var position_PositionEncodingEditor=PositionEncodingEditor_PositionEncodingEditor;const createPositionEditor=props=>{const options=props.getOptions((column=>column.isQuantitative()||column.isGeometry()||column.isTemporal()));return Object(jsx_runtime_["jsx"])(position_PositionEncodingEditor,{id:props.elementId,options,worldType:props.visualization.type,encoding:props.layer.encoding.position,transform:props.layer.transform,onEncodingChange:newEncoding=>{props.onChange({layer:props.layer,value:newEncoding})}})};var external_supercluster_=__webpack_require__(109);var external_supercluster_default=__webpack_require__.n(external_supercluster_);class ClusterTransform_ClusterTransform{constructor(radius){this.radius=void 0;this.cache={};if(radius){this.radius=radius}else{this.radius=30}}getType(){return"CLUSTER"}apply(rows,columns,zoom){const zoomKey=Math.floor(zoom*10/5);const cacheKey=zoomKey+rows.etag;if(this.cache[cacheKey]){return this.cache[cacheKey]}const index=new external_supercluster_default.a({maxZoom:256,radius:this.radius*Math.sqrt(2),map:row=>{const map={};columns.forEach((column=>{if(!(column.isQuantitative()||column.isType(dataset_src["b"].BOOLEAN)))return;map[column.getName()]=row.getValue(column.getName())}));return map},reduce:(acc,row)=>{columns.forEach((column=>{if(!(column.isQuantitative()||column.isType(dataset_src["b"].BOOLEAN)))return;const name=column.getName();acc[column.getName()]=acc[name]>row[name]?acc[name]:row[name]}))}});index.load(rows.map((row=>({geometry:{coordinates:[row._x,row._y]},properties:row}))));const clusteredFeatures=index.getClusters([-180,-85,180,85],Math.floor(zoom!==null&&zoom!==void 0?zoom:0));const clusteredRows=new dataset_src["g"](...clusteredFeatures.map((feature=>{var _feature$properties$c,_feature$properties$p;return{...feature.properties,_x:feature.geometry.coordinates[0],_y:feature.geometry.coordinates[1],_id:`cluster-${(_feature$properties$c=feature.properties.cluster_id)!==null&&_feature$properties$c!==void 0?_feature$properties$c:feature.properties._id}`,point_count:(_feature$properties$p=feature.properties.point_count)!==null&&_feature$properties$p!==void 0?_feature$properties$p:1}})));clusteredRows.etag=rows.etag+zoomKey;this.cache[cacheKey]=clusteredRows;return clusteredRows}isBackend(){return false}}class BackendTransform{isBackend(){return true}}var TimeTransform_dec,TimeTransform_class,TimeTransform_descriptor;let TimeTransform_TimeTransform=(TimeTransform_dec=Object(external_class_transformer_["Type"])((()=>ProportionalResolution_ProportionalResolution)),TimeTransform_class=class TimeTransform extends BackendTransform{constructor(props){super();Object(initializerDefineProperty["a"])(this,"resolution",TimeTransform_descriptor,this);Object.assign(this,props)}getType(){return"TIME"}getResolution(){const availableResolution=new spatial_src["e"]({min:0,max:6});return new ProportionalResolution_ProportionalResolution({...this.resolution,availableResolution})}},TimeTransform_descriptor=Object(applyDecoratedDescriptor["a"])(TimeTransform_class.prototype,"resolution",[TimeTransform_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),TimeTransform_class);var Transforms_dec,Transforms_dec2,Transforms_class,Transforms_descriptor,Transforms_descriptor2;let Transforms_Transforms=(Transforms_dec=Object(external_class_transformer_["Type"])((()=>ClusterTransform_ClusterTransform)),Transforms_dec2=Object(external_class_transformer_["Type"])((()=>TimeTransform_TimeTransform)),Transforms_class=class Transforms{constructor(props){Object(initializerDefineProperty["a"])(this,"cluster",Transforms_descriptor,this);Object(initializerDefineProperty["a"])(this,"time",Transforms_descriptor2,this);Object.assign(this,props)}getCurrent(){var _this;const activeKeys=Object.keys(this).filter((key=>this[key]));return(_this=this[Object(fp_["first"])(activeKeys)])===null||_this===void 0?void 0:_this.getType()}getBackendTransform(){return this.time}},Transforms_descriptor=Object(applyDecoratedDescriptor["a"])(Transforms_class.prototype,"cluster",[Transforms_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),Transforms_descriptor2=Object(applyDecoratedDescriptor["a"])(Transforms_class.prototype,"time",[Transforms_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),Transforms_class);class TransformEditor_TransformEditor extends external_react_default.a.Component{constructor(props){super(props);this.onTypeChange=this.onTypeChange.bind(this);this.onClusterChange=this.onClusterChange.bind(this)}onTypeChange(event){const newTransform=new Transforms_Transforms;if(event.target.value){newTransform[event.target.value]=new ClusterTransform_ClusterTransform}this.props.onChange(newTransform)}onClusterChange(event){const newTransform=new Transforms_Transforms;newTransform.cluster=new ClusterTransform_ClusterTransform(event.target.value);this.props.onChange(newTransform)}getTypeOptions(){return this.props.options.map((option=>({label:external_js_sentencecase_default()(option),value:option.toLowerCase()})))}getCurrentType(){return Object.keys(this.props.transform).find((transformKey=>!!this.props.transform[transformKey]))}render(){var _this$props$transform,_this$getCurrentType,_this$props$transform2;const options=[{label:"None",value:""},...this.getTypeOptions()];const labelDisplay=((_this$props$transform=this.props.transform.cluster)===null||_this$props$transform===void 0?void 0:_this$props$transform.radius)+" pixels";return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Transform",children:[Object(jsx_runtime_["jsx"])(Select_Select,{value:(_this$getCurrentType=this.getCurrentType())!==null&&_this$getCurrentType!==void 0?_this$getCurrentType:"",options,onChange:this.onTypeChange}),this.getCurrentType()&&Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Aggregation radius"}),Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{children:Object(jsx_runtime_["jsx"])(Slider_Slider,{value:(_this$props$transform2=this.props.transform.cluster)===null||_this$props$transform2===void 0?void 0:_this$props$transform2.radius,onChange:this.onClusterChange,valueLabelDisplay:"auto",valueLabelFormat:()=>Object(jsx_runtime_["jsx"])(external_react_default.a.Fragment,{children:labelDisplay})})})]})]})}}var transform_TransformEditor=TransformEditor_TransformEditor;const createTransformEditor=props=>{var _query$getTransformTy;const query=props.queries.findQuery(props.layer.getQueryKey());return Object(jsx_runtime_["jsx"])(transform_TransformEditor,{id:props.elementId,options:(_query$getTransformTy=query===null||query===void 0?void 0:query.getTransformTypes())!==null&&_query$getTransformTy!==void 0?_query$getTransformTy:[],transform:props.layer.transform,onChange:newTransform=>{props.onChange({layer:props.layer,value:newTransform})}},props.elementId)};class VisibilityEditor_VisibilityEditor extends external_react_default.a.Component{constructor(props){super(props);this.toggle=this.toggle.bind(this);this.updateZoomRange=this.updateZoomRange.bind(this)}toggle(){const visible={...this.props.visible,value:!this.props.visible.value};this.props.onVisibilityChange(visible)}updateZoomRange(event){var _this$props$visible$z,_this$props$visible$z2,_this$props$visible$z3,_this$props$visible$z4,_this$props$visible$z5,_this$props$visible$z6,_this$props$visible$z7,_this$props$visible$z8,_this$props$visible$z9,_this$props$visible$z10,_this$props$visible$z11,_this$props$visible$z12,_this$props$visible$z13,_this$props$visible$z14,_this$props$visible$z15,_this$props$visible$z16,_this$props$visible$z17,_this$props$visible$z18;if((_this$props$visible$z=this.props.visible.zoomRange)!==null&&_this$props$visible$z!==void 0&&(_this$props$visible$z2=_this$props$visible$z.min)!==null&&_this$props$visible$z2!==void 0&&_this$props$visible$z2.relative&&(_this$props$visible$z3=this.props.visible.zoomRange)!==null&&_this$props$visible$z3!==void 0&&(_this$props$visible$z4=_this$props$visible$z3.max)!==null&&_this$props$visible$z4!==void 0&&_this$props$visible$z4.relative)return;else if((_this$props$visible$z5=this.props.visible.zoomRange)!==null&&_this$props$visible$z5!==void 0&&(_this$props$visible$z6=_this$props$visible$z5.min)!==null&&_this$props$visible$z6!==void 0&&_this$props$visible$z6.relative&&((_this$props$visible$z7=this.props.visible.zoomRange)===null||_this$props$visible$z7===void 0?void 0:(_this$props$visible$z8=_this$props$visible$z7.max)===null||_this$props$visible$z8===void 0?void 0:(_this$props$visible$z9=_this$props$visible$z8.fixed)===null||_this$props$visible$z9===void 0?void 0:_this$props$visible$z9.value)===event.target.value[1])return;else if((_this$props$visible$z10=this.props.visible.zoomRange)!==null&&_this$props$visible$z10!==void 0&&(_this$props$visible$z11=_this$props$visible$z10.max)!==null&&_this$props$visible$z11!==void 0&&_this$props$visible$z11.relative&&((_this$props$visible$z12=this.props.visible.zoomRange)===null||_this$props$visible$z12===void 0?void 0:(_this$props$visible$z13=_this$props$visible$z12.min)===null||_this$props$visible$z13===void 0?void 0:(_this$props$visible$z14=_this$props$visible$z13.fixed)===null||_this$props$visible$z14===void 0?void 0:_this$props$visible$z14.value)===event.target.value[0])return;const visible={...this.props.visible,zoomRange:new ZoomRange["a"]({min:(_this$props$visible$z15=this.props.visible.zoomRange)!==null&&_this$props$visible$z15!==void 0&&(_this$props$visible$z16=_this$props$visible$z15.min)!==null&&_this$props$visible$z16!==void 0&&_this$props$visible$z16.relative?this.props.visible.zoomRange.min:{fixed:{value:event.target.value[0]}},max:(_this$props$visible$z17=this.props.visible.zoomRange)!==null&&_this$props$visible$z17!==void 0&&(_this$props$visible$z18=_this$props$visible$z17.max)!==null&&_this$props$visible$z18!==void 0&&_this$props$visible$z18.relative?this.props.visible.zoomRange.max:{fixed:{value:event.target.value[1]}}})};this.props.onVisibilityChange(visible)}handleConditionFieldChange(field){const visible={...this.props.visible};visible.condition=field?{test:field}:undefined;this.props.onVisibilityChange(visible)}render(){var _this$props$visible$z19,_this$props$visible$z20,_this$props$visible$z21,_this$props$visible$c,_this$props$visible$z22,_this$props$visible$z23,_this$props$visible$z24,_this$props$visible$z25;const isMinReferenced=!!((_this$props$visible$z19=this.props.visible.zoomRange)!==null&&_this$props$visible$z19!==void 0&&(_this$props$visible$z20=_this$props$visible$z19.min)!==null&&_this$props$visible$z20!==void 0&&(_this$props$visible$z21=_this$props$visible$z20.relative)!==null&&_this$props$visible$z21!==void 0&&_this$props$visible$z21.layer);return Object(jsx_runtime_["jsx"])(EncodingEditorCard_EncodingEditorCard,{title:"Visible",canBeEnabled:true,enabled:this.props.visible.value,onEnabledChange:this.toggle.bind(this),children:this.props.visible.value&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Condition"}),Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:this.props.elementId,options:this.props.fieldOptions,field:(_this$props$visible$c=this.props.visible.condition)===null||_this$props$visible$c===void 0?void 0:_this$props$visible$c.test,transform:this.props.transforms,includeNullOption:true,onChange:this.handleConditionFieldChange.bind(this)},this.props.elementId)]}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Zoom"}),Object(jsx_runtime_["jsx"])(Slider_Slider,{min:this.props.minZoom,max:this.props.maxZoom,step:.5,thumbFormats:[isMinReferenced?ThumbFormat.LINK:ThumbFormat.CIRCLE,ThumbFormat.CIRCLE],value:[(_this$props$visible$z22=(_this$props$visible$z23=this.props.visible.zoomRange)===null||_this$props$visible$z23===void 0?void 0:_this$props$visible$z23.getMin())!==null&&_this$props$visible$z22!==void 0?_this$props$visible$z22:this.props.minZoom,(_this$props$visible$z24=(_this$props$visible$z25=this.props.visible.zoomRange)===null||_this$props$visible$z25===void 0?void 0:_this$props$visible$z25.getMax())!==null&&_this$props$visible$z24!==void 0?_this$props$visible$z24:this.props.maxZoom],onChange:this.updateZoomRange.bind(this),valueLabelDisplay:"auto",valueLabelFormat:(level,pos)=>{if(pos===1){return Object(jsx_runtime_["jsxs"])(external_react_default.a.Fragment,{children:["visible until",Object(jsx_runtime_["jsx"])("br",{}),Object(jsx_runtime_["jsxs"])("b",{children:["zoom ",level]})]})}if(pos===0){return Object(jsx_runtime_["jsxs"])(external_react_default.a.Fragment,{children:["visible from",Object(jsx_runtime_["jsx"])("br",{}),Object(jsx_runtime_["jsxs"])("b",{children:["zoom ",level]})]})}}})]})]})})}}var visibility_editor_VisibilityEditor=VisibilityEditor_VisibilityEditor;const createVisibilityEditor=props=>Object(jsx_runtime_["jsx"])(visibility_editor_VisibilityEditor,{visible:props.layer.visible,elementId:props.elementId,transforms:props.layer.transform,onVisibilityChange:newVisibility=>{props.onChange({layer:props.layer,value:newVisibility})},fieldOptions:getOptionsFromQuery(props.queries,props.layer.getQueryKey()),maxZoom:props.visualization.zoomRange.getMax(),minZoom:props.visualization.zoomRange.getMin()},props.elementId);const getTypeOptions=(layerType,currentType)=>{const typeOptions=["custom",...Object.keys(layerAnimationTemplates)].map((key=>({value:key,label:external_case_default.a.title(key)})));if(currentType==="custom"){return typeOptions}return typeOptions.filter((option=>option.value!==LayerAnimationType.custom)).filter((option=>{if(option.value==="custom")return true;const template=layerAnimationTemplates[option.value];return template.layerTypes.includes(layerType)}))};class AnimationEditor_AnimationEditor extends external_react_default.a.PureComponent{onChange(params){var _params$enabled,_params$type,_this$props$animation;const enabled=(_params$enabled=params.enabled)!==null&&_params$enabled!==void 0?_params$enabled:this.props.animation.enabled;this.props.onChange(new LayerAnimation_LayerAnimation({enabled,data:enabled?{field:params.field,type:(_params$type=params.type)!==null&&_params$type!==void 0?_params$type:(_this$props$animation=this.props.animation.data)===null||_this$props$animation===void 0?void 0:_this$props$animation.type}:undefined}))}handleTypeChange(event){this.onChange({type:event.target.value})}handleFieldChange(field){this.onChange({field})}handleEnabledChange(enabled){var _getTypeOptions$;this.onChange({enabled,type:(_getTypeOptions$=getTypeOptions(this.props.layerType)[0])===null||_getTypeOptions$===void 0?void 0:_getTypeOptions$.value})}render(){var _this$props$animation2,_this$props$animation3,_this$props$animation4,_this$props$animation5,_this$props$animation6;const field=(_this$props$animation2=(_this$props$animation3=this.props.animation.data)===null||_this$props$animation3===void 0?void 0:_this$props$animation3.field)!==null&&_this$props$animation2!==void 0?_this$props$animation2:"";const type=(_this$props$animation4=(_this$props$animation5=this.props.animation.data)===null||_this$props$animation5===void 0?void 0:_this$props$animation5.type)!==null&&_this$props$animation4!==void 0?_this$props$animation4:LayerAnimationType.pulse;return Object(jsx_runtime_["jsxs"])(EncodingEditorCard_EncodingEditorCard,{title:"Animation",canBeEnabled:true,enabled:this.props.animation.enabled,onEnabledChange:this.handleEnabledChange.bind(this),children:[Object(jsx_runtime_["jsx"])(field_FieldEditor,{id:"field-editor",options:this.props.fieldOptions,transform:this.props.transform,title:"Condition",field,includeNullOption:true,nullOptionLabel:"Animate all rows",onChange:this.handleFieldChange.bind(this),required:false}),Object(jsx_runtime_["jsxs"])(SidebarSubCard_SidebarSubCard,{children:[Object(jsx_runtime_["jsx"])(SidebarSubCardTitle_SidebarSubCardTitle,{children:"Type"}),Object(jsx_runtime_["jsx"])(Select_Select,{value:(_this$props$animation6=this.props.animation.data)===null||_this$props$animation6===void 0?void 0:_this$props$animation6.type,options:getTypeOptions(this.props.layerType,type),onChange:this.handleTypeChange.bind(this)})]})]})}}const createAnimationEditor=props=>Object(jsx_runtime_["jsx"])(AnimationEditor_AnimationEditor,{id:props.elementId,layerType:props.layer.type,animation:props.layer.getAnimation(),fieldOptions:props.getOptions(),onChange:value=>{props.onChange({layer:props.layer,value})}},props.elementId);var TextField_=__webpack_require__(110);var TextField_default=__webpack_require__.n(TextField_);var ChevronLeft_=__webpack_require__(111);var ChevronLeft_default=__webpack_require__.n(ChevronLeft_);class BackButton_BackButton extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(material_["Button"],{variant:"text",sx:{mb:theme=>theme.shape.paddingInner+"px"},onClick:()=>this.props.onBack(),startIcon:Object(jsx_runtime_["jsx"])(ChevronLeft_default.a,{}),children:"Back"})}}class SidebarCard_SidebarCard extends external_react_default.a.PureComponent{getGridProps(grid){if(!grid)return{};return{display:"grid",gridTemplateColumns:"0.7fr 2fr",borderBottom:theme=>theme.shape.borderLight,"& h5":{marginBottom:0,marginTop:5,fontSize:"14px",fontWeight:600}}}render(){return Object(jsx_runtime_["jsx"])(material_["Box"],{sx:{padding:"0.66em 1em","& h5":{marginBottom:"0.33em"},...this.getGridProps(this.props.grid)},children:this.props.children})}}class LayerItem_LayerItem extends external_react_default.a.PureComponent{constructor(props){super(props);this.titleRef=void 0;this.notifyDebounced=void 0;this.titleRef=Object(external_react_["createRef"])();this.state={title:props.title};this.notifyDebounced=Object(fp_["debounce"])(2e3,this.notifyTitleChange.bind(this))}notifyTitleChange(e){if(e.target.value===this.props.title)return;if(this.notifyDebounced.cancel)this.notifyDebounced.cancel();return this.props.onTitleChange(e.target.value)}focusOnTitle(){var _this$titleRef,_this$titleRef$curren;return(_this$titleRef=this.titleRef)===null||_this$titleRef===void 0?void 0:(_this$titleRef$curren=_this$titleRef.current)===null||_this$titleRef$curren===void 0?void 0:_this$titleRef$curren.focus()}handleTitleChange(e){this.setState({title:e.target.value});this.notifyDebounced(e)}render(){var _this$props$component;if(!((_this$props$component=this.props.components)!==null&&_this$props$component!==void 0&&_this$props$component.length))return null;return Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])(BackButton_BackButton,{onBack:()=>this.props.onBack()}),Object(jsx_runtime_["jsxs"])(SidebarCard_SidebarCard,{grid:true,children:[Object(jsx_runtime_["jsx"])(SidebarCardTitle_SidebarCardTitle,{children:"Title"}),Object(jsx_runtime_["jsx"])(SidebarContent_SidebarContent,{children:Object(jsx_runtime_["jsx"])(TextField_default.a,{inputRef:this.titleRef,name:`layer-title`,value:this.state.title,inputProps:{"aria-label":this.props.title},onChange:this.handleTitleChange.bind(this),onBlur:this.notifyTitleChange.bind(this),variant:"outlined",fullWidth:true})})]}),this.props.components.map(((component,i)=>{if(!component)return null;return Object(jsx_runtime_["jsx"])(SidebarCard_SidebarCard,{grid:true,children:component},i)}))]})}}var external_react_dom_=__webpack_require__(112);var external_react_dom_default=__webpack_require__.n(external_react_dom_);var external_react_transition_group_=__webpack_require__(65);var SidebarTransition_module=__webpack_require__(36);var SidebarTransition_module_default=__webpack_require__.n(SidebarTransition_module);var Add_=__webpack_require__(113);var Add_default=__webpack_require__.n(Add_);var Box_=__webpack_require__(58);var Box_default=__webpack_require__.n(Box_);var external_react_beautiful_dnd_=__webpack_require__(89);var ListItemButton_=__webpack_require__(80);var ListItemButton_default=__webpack_require__.n(ListItemButton_);var ListItemIcon_=__webpack_require__(81);var ListItemIcon_default=__webpack_require__.n(ListItemIcon_);class ListActionButton_ListActionButton extends external_react_default.a.PureComponent{render(){const hasIcon=!!this.props.icon;return Object(jsx_runtime_["jsxs"])(ListItemButton_default.a,{sx:{typography:"h6",fontWeight:"normal",margin:12,border:"1px solid black",borderColor:"primary.main",borderRadius:2,color:this.props.active?"white":"primary.main",backgroundColor:this.props.active?"primary.main":"inherit","&:hover":{backgroundColor:this.props.active?"primary.main":"inherit"},...this.props.sx},onClick:this.props.onClick,children:[hasIcon?Object(jsx_runtime_["jsx"])(ListItemIcon_default.a,{sx:{color:this.props.active?"white":"primary.main"},children:this.props.icon}):undefined,Object(jsx_runtime_["jsx"])(material_["ListItemText"],{children:this.props.children})]})}}class LayerList_DraggableItem extends external_react_default.a.PureComponent{constructor(){super(...arguments);this.portalElementId="__hopara__layerDraggablePortal"}createPortal(){const portal=document.createElement("div");portal.id=this.portalElementId;document.body.appendChild(portal)}getPortal(){return document.querySelector(`#${this.portalElementId}`)}deletePortal(){var _this$getPortal;return(_this$getPortal=this.getPortal())===null||_this$getPortal===void 0?void 0:_this$getPortal.remove()}componentDidMount(){this.createPortal()}componentWillUnmount(){this.deletePortal()}render(){const provided=this.props.provided;const snapshot=this.props.snapshot;const usePortal=snapshot.isDragging;const child=Object(jsx_runtime_["jsx"])(Box_default.a,{ref:provided.innerRef,...provided.draggableProps,...provided.dragHandleProps,sx:{...provided.draggableProps.style,userSelect:"none",backgroundColor:"background.paper"},children:this.props.children});if(!usePortal){return child}return external_react_dom_default.a.createPortal(child,this.getPortal())}}class LayerList_LayerList extends external_react_default.a.PureComponent{constructor(props){super(props);this.state={items:props.list};this.onDragEnd=this.onDragEnd.bind(this)}onDragEnd(result){if(!result.destination)return;this.props.onMoveLayer(this.props.list[result.source.index],result.destination.index-result.source.index)}render(){var _this$props$list;return Object(jsx_runtime_["jsx"])(external_react_transition_group_["SwitchTransition"],{children:Object(jsx_runtime_["jsx"])(external_react_transition_group_["CSSTransition"],{addEndListener:(node,done)=>node.addEventListener("transitionend",done,false),classNames:{appear:SidebarTransition_module_default.a.appear,appearActive:SidebarTransition_module_default.a.appearActive,appearDone:SidebarTransition_module_default.a.appearDone,enter:!this.props.selectedItem?SidebarTransition_module_default.a.enter:SidebarTransition_module_default.a.enterInvert,enterActive:SidebarTransition_module_default.a.enterActive,enterDone:SidebarTransition_module_default.a.enterDone,exit:SidebarTransition_module_default.a.exit,exitActive:this.props.selectedItem?SidebarTransition_module_default.a.exitActive:SidebarTransition_module_default.a.exitActiveInvert,exitDone:SidebarTransition_module_default.a.exitDone},children:Object(jsx_runtime_["jsxs"])("div",{className:SidebarTransition_module_default.a.transitionBlock,children:[!this.props.selectedItem&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])(ListActionButton_ListActionButton,{onClick:()=>this.props.onNewLayerRequest("circle"),icon:Object(jsx_runtime_["jsx"])(Add_default.a,{}),children:"New Layer"}),!!((_this$props$list=this.props.list)!==null&&_this$props$list!==void 0&&_this$props$list.length)&&Object(jsx_runtime_["jsx"])(external_react_beautiful_dnd_["DragDropContext"],{onDragEnd:this.onDragEnd,children:Object(jsx_runtime_["jsx"])(external_react_beautiful_dnd_["Droppable"],{droppableId:"droppable",children:provided=>Object(jsx_runtime_["jsxs"])(material_["List"],{sx:{borderTop:theme=>theme.shape.borderLight,padding:0,overflowX:"hidden"},ref:provided.innerRef,...provided.droppableProps,children:[this.props.list.map(((item,i)=>this.props.renderItem&&Object(jsx_runtime_["jsx"])(external_react_beautiful_dnd_["Draggable"],{draggableId:item.id,index:i,children:(provided,snapshot)=>Object(jsx_runtime_["jsx"])(LayerList_DraggableItem,{provided,snapshot,children:this.props.renderItem(item,i)})},item.id))),provided.placeholder]})})})]}),!!this.props.selectedItem&&this.props.renderItemContent(this.props.selectedItem)]})},`${!this.props.selectedItem}`)})}}class SidebarListItem_SidebarListItem extends external_react_default.a.PureComponent{render(){return Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{children:Object(jsx_runtime_["jsx"])(material_["ListItem"],{...this.props,disablePadding:true,sx:{borderBottom:theme=>theme.shape.borderLight,"&:last-child":{borderBottom:"none"},...this.props.sx},children:this.props.children})})}}var DragIndicator_=__webpack_require__(114);var DragIndicator_default=__webpack_require__.n(DragIndicator_);const getLayerIcon=type=>{switch(type){case"circle":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABkElEQVRIDbWVX04CMRDGkcT4JzGE+KKGN72AV/BePvDGFbiTBOMJegHCA4liIOr327RlthTY1N0v+bLtdPab7nRm2+t1jLNE/1LzC7Gf2JtOf+T4La7DCzbArYxDv4hjCdgYm1yKCytwpcmjeG6NhWM00EIzpoKon+IG4z+BxpeIZgzAp/1iyOBGtrE4F1eejLGxlgMprp0j+b/LeL7I5sStOBOnnoyxORGfFGihGZELwIvs5EN8jp67ATbW8EmDnAzApzsRAcr2EFjDx4k2XXsBbLnKt8ovKcjtnHULfPDlTCxqmgOt2BJ915w8NwW+HHwAWmhWJz3ScyK+iiEqdfwmNgW+T94ZDbTQHPW9sfNHmiI+t5UUhZ2H1IT5WINWDzntA0rOia2VaRpA2lXzdNZoBAB0qBNJF2fS6q9CehVIF2dCb6w8KQJsrOWw18lDed3nPAttD3oPzfhLXWt8LdpuZr0EaHDZoBk7lzEHTVQui0N3g5aOgnJHfCku8MRgwS3EH7K0w6m62qVvxTsZ/wFcI1I2OGPt8AAAAABJRU5ErkJggg=="});case"line":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAA80lEQVRIDe2UqwoCQRSGvWHSZDEZtYnRLBgFi2CwCgZBMPgEJsHiC/gCvolvYNOiySJ4wev3LwY99UwSD3zs/szOtzvDnonF/vVLO1BiMVWIfy4q9Rkc90nmtkC+LawhKg14K4vgDGk4whLuEKTqWPTFlSA2I2mS9eVPGJgxd+xguIK2ouu2GUGP/AC9oG3G3HGEQVtygobbZgRjsuQHqJkxV1TjzEDyPaiZgpX6ZA6S76AMwUqNswDJN1CEoDXEJvkKCiHNOWSZt3DCNe+Rf518iCTvgzp0CjdwVcLMvpAl168Y7MAy74iOXLsy+8w/h9uBF9m2J4WGYdEsAAAAAElFTkSuQmCC"});case"image":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABlElEQVRIDe2UPS8FQRSG1/VRkIgQya183ISK0CCRiMSvEImKjlrhT6jEDxCFTkVNodMpJJp1NSoRQuJK8LzMTGY2sze7t1FcJ3l2zpw5552zsx9J8m9/fQIdpoF1xinYhzoMgl3DLWRfZD3CCGzBNRxWuEhoBgagBrIe6C6JamTSkJY0XZPjTFbAJuEWMgltwIKXLQ1pSTMwt1sQbT65YllH8wlLXqrTqpigjmMCNBY1dTprkiU4Z/xAy25g1koNDbL3TEXKeGz86KBdJyHvDtRIZ7Ty94H6jQZa/kJOfTLEwilcQC2S9ERMz6CpBbt6mfP4ddCDFC+gt8Y3fT+7YJuNasWC+ljewYr74wnxYdiEN5NzxqjXNqYVBPtIOjJFvmjWf43kHGQ3sLdF3Nkq3pqb5Tu9kaWubMwGPli4BXXpPpJscsG5r+XERikeg0uowjS0YvcU3cAipHCnO1DH29APsnNQF63YA0XLoCN+hh1toGPRr1WvWwqyBpQ9KunIUpC4NG0Mt7zgT1HOpWxzOTJtEf4GcqtLS/PNVVcAAAAASUVORK5CYII="});case"polygon":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAB2klEQVRIDbWVzS4EURCF21+Mnw0isbOwZcWWlUfwEHY8wuyIjbDgJbDzBHgJiWRCIiwmdowQnK/NvWpK9+0ZGSc5um7VqbpXdc3tLPtnDLj6Na1HxUHn73b5IeGr2AoJdoMZOafEF/EzCHp8cjAO+SQ2be6YFgviiHX+0aYGtagZW8GunPwNZwKLisEUqEEtakbQnrm4KjY25X5uEzsFalEzIrXBtFRnIi9wt01sfMSK0PUGa8q+Fe/FdVMJGx8xNB6VGwwpoy6+i+firOiBjxiaukhOwK8NCISR5eVciMzztpgCOWjQkkMuCLW+V/rLSE3EVZbdyD4y6yoTLTkB1MrHFAe77ouH4qQI9sQGRpdoSEcOoAa1qFkruxJOFZwXl8UqrEiAlpxS+BbRwztxpzTjJ4AGre17R4uC1ArwHYjXIZh4okFr4WvlvzpGy4L55tJbsk5nE0Oz6vxxTIddwC4vtXgUt8QTGzD2hmw0V8ZXaJZdFcdSc8IU0XjE/yD0ig24Zh+cko/PuPP5JRcgPzQLNuBWbYYWccKikSXRJ8tVCWpxIcai3N+Mar8+ONRqiR2zS5v4ZBLId9ezV9ByisdPZngHoRDXBn0valfQpJ4cjJbmp08J+xb7AjESVYEwGMWdAAAAAElFTkSuQmCC"});case"text":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAAB50lEQVRIDe1Vy07DMBC08yCqighVkiIQHBAcuMFvcIIDEpQDn8GBL4BvKYIr/E2lHqjEAYqgVWmJmUnrkLhJi4AjI228nt0d1/YmFeIfc05AFsQdcG4Br6miGjUJDjGOdCJHMzkCtwz7gOkiuN8CtWzYM+yxqMIHuQmb9euL6rIca6lBrQSWdjBWYVyd2/wpWEsNaiXILkCfR1OKIKgfBsHKQWnCOECNVDd15hSJKIr2hFQ3Qsa39Xp9d05+ere8FI0XOAM9McdKpXqBlqihL3oqVpV+v3dn5kzm1KBWguwO2D1s0SK4UooG+qqJ1mpioQaSypqBGtRKoBfYwuwSdj6m888wDPchHFqWuJZKNhGNyOWz0hk1qLVNRi9AvxRKyTME21LKB9tWLfidCVdaowPpZYDgtl5huTfR9/2a43odvHcLumgyDkbD99Vut/tk8DyiRRjbNbcDEjlxJjiOd0JxZckjKdQOTUlxjJDnuh5HE9RIxM3AOoglkwyi6D4Iwxb47G6tIIzajJn5mFNjQ/NlXaPjQsTxVWzbbL3stym2pDhVSmXb/Ksmn5vya/DQ578GNaiVINtFb2B40WX9Pa6Y/WQtNaiVIHuuJP78c20uwEV4L3oXRXHmmND3M/WHYyb+z6dO4BNrv2Owww/ybwAAAABJRU5ErkJggg=="});case"heatmap":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABOUlEQVRIDe2UsUoDQRCGT6NFbAKC2PgESRMUhIBKUihCCl/AvE5eII+QJg+QSrCyME+iiBLSpAqafD9sjmPY4+ZCIBD84WNnZmd29vZuL0n+VfIEDsg/B41b0aFZRf4F2LhJ87tbWyivZVGDJwrfoRsWOGUU0hE8wrEcryokXoFG6QWWMJaDBgHZ16C5Gzle2Qa3FI6gFRbQrsVadYxSH4RtsF4oNlYJ3sFJbDIvZhvovPtQA+18EpD9CjqiN3DLNmhS+Q0NOINFQPYHqMEPuGUb2MJLAkLqwBDu5XhV1MC7TppXdA+U2E6zk6SH/Rx8PYGO5yH40SH7yUUTCE4zE7OMPcf+Ao1u7eSI3LuLJXreQazOHct7B/qBbdL8j7rfbPe8BrpYm+iTIl3AVLEfVSyWFhQYutl7phUpgSMwPf0USwAAAABJRU5ErkJggg=="});case"icon":return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAACLUlEQVRIDdWUv0scQRTH31wODf4ovJ25JgoHASv/iBQmhYTUCiGmDcHGQhCLnE0KU0aIdkqaNFoFQUhhuvwB/gGHQUm83TSr66+7fXlvb+bcWWf3Dqwc2Js3732+77s3O7sAD32IXn+gVqs9DsNoBkQ8DSAmOjz+Biz9GB0d2ms0GpdFPQoNPK/6BgR+pAZPcpocA4rlIDj9mlOHXANPqXVAeK+FZwjwXQg45DUiTJHwJYUjSV3AetBsLiRxPz/UfMWTCpNLqf1KpTKe1XGOuP0Ut5JlnGsp5SSJWiyUUn1zQqkkM9rkhrWpUhKWsgl6kEuUe0TXn6urAbNFdzGd0cxfWpa11mKzBoL2+hUTAsRmGB4HFu1YMEPsBpe01nqulkGVBnGK4VjgL577GSlW6R5dmWXQbrfHTIX2KDJxrznNpnuwzjK4Hhz0TbM2wFMT95rTbLoH6yyD8OSEDMQRF2gjZ3nuZxA71+HEUafHrcoy4LQA3E3KCC/oTX59i7qjhEF4zlUy2slSdwzoLKwRdJGAAj8rpWayIrNOasToNWniT6ZmZutImaTnqXm6nS2zpngb4tKXcrnzqWi1YApK8Ts6l/NdBuFtEDS3u2sdOA24VpHyA53vuuYKJwSs//P9VRfEb6xzXETRz+GhEb6BZ05AJ+kmVgO/6WzOSK4BF6Po/KDIhJv7/mmd2bxRaMCiPJN+mueZOvNSVuvm08yxE7pvkh78Il/37fOw9P8BgG+jn5334VoAAAAASUVORK5CYII="});default:return Object(jsx_runtime_["jsx"])("img",{src:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYCAYAAADgdz34AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAGKADAAQAAAABAAAAGAAAAADiNXWtAAABkElEQVRIDbWVX04CMRDGkcT4JzGE+KKGN72AV/BePvDGFbiTBOMJegHCA4liIOr327RlthTY1N0v+bLtdPab7nRm2+t1jLNE/1LzC7Gf2JtOf+T4La7DCzbArYxDv4hjCdgYm1yKCytwpcmjeG6NhWM00EIzpoKon+IG4z+BxpeIZgzAp/1iyOBGtrE4F1eejLGxlgMprp0j+b/LeL7I5sStOBOnnoyxORGfFGihGZELwIvs5EN8jp67ATbW8EmDnAzApzsRAcr2EFjDx4k2XXsBbLnKt8ovKcjtnHULfPDlTCxqmgOt2BJ915w8NwW+HHwAWmhWJz3ScyK+iiEqdfwmNgW+T94ZDbTQHPW9sfNHmiI+t5UUhZ2H1IT5WINWDzntA0rOia2VaRpA2lXzdNZoBAB0qBNJF2fS6q9CehVIF2dCb6w8KQJsrOWw18lDed3nPAttD3oPzfhLXWt8LdpuZr0EaHDZoBk7lzEHTVQui0N3g5aOgnJHfCku8MRgwS3EH7K0w6m62qVvxTsZ/wFcI1I2OGPt8AAAAABJRU5ErkJggg=="})}};class LayerListItem_LayerListItem extends external_react_default.a.PureComponent{render(){if(!this.props.layerName)return null;return Object(jsx_runtime_["jsx"])(SidebarListItem_SidebarListItem,{sx:{"&:last-child":{}},secondaryAction:Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{children:Object(jsx_runtime_["jsx"])(material_["IconButton"],{onClick:()=>this.props.onDeleteClick(),color:"primary",children:Object(jsx_runtime_["jsx"])(icons_material_["DeleteOutlined"],{})})}),children:Object(jsx_runtime_["jsxs"])(ListItemButton_default.a,{className:"drag-handle",onClick:()=>this.props.onClick(),children:[Object(jsx_runtime_["jsx"])(DragIndicator_default.a,{fontSize:"small",sx:{opacity:.33,transform:"translateX(-0.33em)",cursor:"grab"}}),Object(jsx_runtime_["jsx"])(ListItemIcon_default.a,{sx:{minWidth:"35px"},children:getLayerIcon(this.props.layerType)}),Object(jsx_runtime_["jsx"])(material_["ListItemText"],{onClick:()=>this.props.onClick(),children:this.props.layerName})]})})}}let LayerType;(function(LayerType){LayerType["circle"]="circle";LayerType["heatmap"]="heatmap";LayerType["icon"]="icon";LayerType["image"]="image";LayerType["line"]="line";LayerType["polygon"]="polygon";LayerType["text"]="text"})(LayerType||(LayerType={}));const encodingTypeToFactory={color:createColorEditor,size:createSizeEditor,offset:createOffsetEditor,image:createImageEditor,bounds:createBoundsEditor,heatmap:createHeatmapEditor,icon:createIconEditor,line:createLineEditor,polygon:createPolygonEditor,text:createTextEditor};class LayerListComponent_LayerListView extends PureComponent["a"]{constructor(props){super(props);this.state={}}getEditorTypes(layer,schema){const encodingName=external_case_["pascal"](layer.type)+"LayerEncoding";const layerEncoding=getSubSchema(schema,encodingName);return layerEncoding!==null&&layerEncoding!==void 0&&layerEncoding.properties?Object.keys(layerEncoding.properties):[]}getEncodingsEditorsFromSchema(layer,schema){const editorTypes=this.getEditorTypes(layer,schema);return editorTypes.map((type=>{let factory=encodingTypeToFactory[type];if(layer.isType(LayerType.heatmap)&&type==="color"){factory=createSchemeColorEditor}return{type,factory,onChange:this.props.onEncodingChange}})).filter((c=>c.factory))}getEditorFactories(layer,schema){const factories=[{factory:createTypeEditor,type:"type",onChange:this.props.onNewLayerRequest},{factory:createQueryEditor,type:"query",onChange:this.props.onQueryChange}];if(layer.hasExplicitPosition()){factories.push({factory:createPositionEditor,type:"position",onChange:this.props.onEncodingChange})}if(!layer.hasData())return factories;factories.push(...this.getEncodingsEditorsFromSchema(layer,schema));factories.push({type:"transform",factory:createTransformEditor,onChange:this.props.onTransformChange});factories.push({type:"visibility",factory:createVisibilityEditor,onChange:this.props.onVisibilityChange});if(layer.canAnimate()){factories.push({type:"animation",factory:createAnimationEditor,onChange:this.props.onAnimationChange})}return factories}createEditorComponents(visualization,layer,schema){const propsFactory=new EditorProps_EditorPropsFactory({layer,visualization,schema,queries:this.props.queries,zoom:this.props.zoom});return this.getEditorFactories(layer,schema).map((editorFactory=>editorFactory.factory(propsFactory.create(editorFactory.type,editorFactory.onChange))))}getLayerContents(visualization,layer){const components=this.createEditorComponents(visualization,layer,this.props.schema);if(!components.length)return null;return Object(jsx_runtime_["jsx"])(LayerItem_LayerItem,{title:layer.name,onTitleChange:value=>this.props.onLayerNameChange(layer,value),components,onBack:this.props.onBackClick})}render(){var _this$props$layers;return Object(jsx_runtime_["jsx"])(LayerList_LayerList,{list:this.props.layers,selectedItem:((_this$props$layers=this.props.layers)!==null&&_this$props$layers!==void 0?_this$props$layers:[]).find((l=>l.id===this.props.selectedLayerId)),onNewLayerRequest:type=>this.props.onNewLayerRequest(undefined,type),renderItem:(layer,i)=>Object(jsx_runtime_["jsx"])(LayerListItem_LayerListItem,{layerName:layer.name,layerType:layer.type,onDeleteClick:()=>{this.props.onLayerDelete(layer)},onClick:()=>Object.keys(LayerType).includes(layer.type)&&this.props.onLayerClick(layer.id)},`${layer.name}-${i}`),renderItemContent:layer=>{if(layer)return this.getLayerContents(this.props.visualization,layer);return Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{})},onMoveLayer:(layer,steps)=>{this.props.onMoveLayer(layer.id,steps)}})}}var LayerListComponent=LayerListComponent_LayerListView;let LayerAnimationType;(function(LayerAnimationType){LayerAnimationType["custom"]="custom";LayerAnimationType["pulse"]="pulse";LayerAnimationType["ripple"]="ripple";LayerAnimationType["breathe"]="breathe";LayerAnimationType["blink"]="blink";LayerAnimationType["fadeInOut"]="fadeInOut";LayerAnimationType["flow"]="flow"})(LayerAnimationType||(LayerAnimationType={}));const layerAnimationTemplates={ripple:{layerTypes:[LayerType.circle,LayerType.icon],encodings:{color:{channel:{duration:1500},keyFrames:{"0%":{opacity:.7},"70%":{opacity:0},"100%":{opacity:0}}},size:{channel:{duration:1500},keyFrames:{"0%":{scale:1},"70%":{scale:2},"100%":{scale:2}}}}},pulse:{layerTypes:[LayerType.circle,LayerType.icon],encodings:{size:{channel:{duration:1500},keyFrames:{"0%":{scale:1},"60%":{scale:1.2},"90%":{scale:1}}}}},breathe:{layerTypes:[LayerType.circle,LayerType.icon],encodings:{size:{channel:{duration:5e3},keyFrames:{"0%":{scale:1},"50%":{scale:1.3},"90%":{scale:1.05},"100%":{scale:1}}}}},blink:{layerTypes:[LayerType.circle,LayerType.icon,LayerType.polygon],encodings:{color:{channel:{duration:1e3},keyFrames:{"0%":{opacity:1},"80%":{opacity:1},"81%":{opacity:0},"100%":{opacity:0}}}}},fadeInOut:{layerTypes:[LayerType.circle,LayerType.icon,LayerType.polygon],encodings:{color:{channel:{duration:1500},keyFrames:{"0%":{opacity:0},"50%":{opacity:1},"100%":{opacity:0}}}}},flow:{layerTypes:[LayerType.line],encodings:{color:{}}}};class LayerAnimation_LayerAnimation{constructor(data){this.enabled=void 0;this.data=void 0;Object.assign(this,data)}static createFromLayer(layer){var _animations$map$find;const animations=Object.values(layer.encoding).map((encoding=>encoding===null||encoding===void 0?void 0:encoding.animation)).filter(Boolean);if(animations.length===0){return new LayerAnimation_LayerAnimation({enabled:false})}return new LayerAnimation_LayerAnimation({enabled:true,data:{field:animations.map((animation=>animation.field)).find(Boolean),type:(_animations$map$find=animations.map((animation=>animation.type)).find(Boolean))!==null&&_animations$map$find!==void 0?_animations$map$find:LayerAnimationType.custom}})}fillLayer(layer){var _this$data;if(((_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.type)==="custom"){Object.keys(layer.encoding).forEach((encodingName=>{var _layer$encoding$encod;if((_layer$encoding$encod=layer.encoding[encodingName])!==null&&_layer$encoding$encod!==void 0&&_layer$encoding$encod.animation){var _this$data2;layer.encoding[encodingName].animation.field=(_this$data2=this.data)===null||_this$data2===void 0?void 0:_this$data2.field}}));return layer}Object.keys(layer.encoding).forEach((encodingName=>{if(layer.encoding[encodingName]){delete layer.encoding[encodingName].animation}}));if(!this.enabled||!this.data)return layer;const template=Object(fp_["clone"])(layerAnimationTemplates[this.data.type]);const animationType=this.data.type;const animationField=this.data.field;Object.entries(layer.encoding).forEach((_ref=>{let[encodingName,encoding]=_ref;if(!encoding)return;const animationEncodingTemplate=template.encodings[encodingName];if(!animationEncodingTemplate)return;animationEncodingTemplate.type=animationType;animationEncodingTemplate.field=animationField;if(!encoding){layer.encoding[encodingName]={}}layer.encoding[encodingName].animation=animationEncodingTemplate}));return layer}}var Layer_dec,Layer_dec2,_dec3,_dec4,_dec5,_dec6,Layer_class,Layer_descriptor,Layer_descriptor2,_descriptor3,_descriptor4,_descriptor5,_descriptor6;const requiredEncodingsMap={circle:["position","size","color"],icon:["position","size","color"],heatmap:["position"],image:["image","bounds"],line:["line","size"],polygon:["polygon"],text:["text","position","color","size"],table:[],"vega-lite":[]};let Layer_Layer=(Layer_dec=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),Layer_dec2=Object(external_class_transformer_["Transform"])((_ref=>{let{obj,value}=_ref;if(obj.type==="vega-lite")return value;return value?new encoding_src["f"](value):undefined})),_dec3=Object(external_class_transformer_["Type"])((()=>Transforms_Transforms)),_dec4=Object(external_class_transformer_["Transform"])((_ref2=>{let{value}=_ref2;return parseTooltip(value)})),_dec5=Object(external_class_transformer_["Type"])((()=>Visible_Visible)),_dec6=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),Layer_class=class Layer{constructor(props){Object(initializerDefineProperty["a"])(this,"id",Layer_descriptor,this);this.name=void 0;this.type=void 0;this.lastModified=void 0;this.editable=void 0;Object(initializerDefineProperty["a"])(this,"encoding",Layer_descriptor2,this);Object(initializerDefineProperty["a"])(this,"transform",_descriptor3,this);this.data=void 0;this.preRender=void 0;Object(initializerDefineProperty["a"])(this,"tooltip",_descriptor4,this);Object(initializerDefineProperty["a"])(this,"visible",_descriptor5,this);Object(initializerDefineProperty["a"])(this,"_visualization",_descriptor6,this);this.mark=void 0;this.autoHighlight=void 0;Object.assign(this,props)}isVega(){return this.type.toLocaleLowerCase()==="vega-lite"}isImage(){return this.type.toLocaleLowerCase()==="image"}clone(){const cloned=new Layer(this);cloned.lastModified=new Date;return cloned}isVisible(zoom){return this.visible.value&&this.belongsToZoom(zoom)}belongsToZoom(zoom){var _this$visible,_this$visible2,_this$visible3;return!((_this$visible=this.visible)!==null&&_this$visible!==void 0&&_this$visible.zoomRange)||((_this$visible2=this.visible)===null||_this$visible2===void 0?void 0:_this$visible2.zoomRange)&&((_this$visible3=this.visible)===null||_this$visible3===void 0?void 0:_this$visible3.zoomRange.isInRange(zoom))}shouldRender(rowsets){return this.isRenderable()&&withDataLoaded(rowsets)(this)}shouldPrerender(){return this.preRender!==false}isType(type){return this.type.toLowerCase()===type.toLowerCase()}getData(){return this.data}getQueryKey(){var _this$data,_this$data2,_this$transform;const queryKey={source:(_this$data=this.data)===null||_this$data===void 0?void 0:_this$data.source,query:(_this$data2=this.data)===null||_this$data2===void 0?void 0:_this$data2.query};if((_this$transform=this.transform)!==null&&_this$transform!==void 0&&_this$transform.getCurrent()){var _this$transform2;return{...queryKey,transform:(_this$transform2=this.transform)===null||_this$transform2===void 0?void 0:_this$transform2.getCurrent()}}return queryKey}hasData(){var _this$data3,_this$data4;return((_this$data3=this.data)===null||_this$data3===void 0?void 0:_this$data3.query)&&((_this$data4=this.data)===null||_this$data4===void 0?void 0:_this$data4.source)}getResolutions(){var _this$transform3;const transform=(_this$transform3=this.transform)===null||_this$transform3===void 0?void 0:_this$transform3.getBackendTransform();if(!transform){return ResolutionFactory_ResolutionFactory.fromCount(1)}return ResolutionFactory_ResolutionFactory.fromRange(transform.getResolution().getRange())}getTargetResolution(zoom){return this.getResolutions().getTargetResolution(this.visible.zoomRange,zoom)}getScaleKeys(){var _this$encoding$positi,_this$encoding,_this$encoding$positi2;if(this.isVega()){var _this$encoding$x,_this$encoding$x2,_this$encoding$x2$sca,_this$encoding$y,_this$encoding$y2,_this$encoding$y2$sca;return this.encoding.x&&this.encoding.y?new ScaleKey["b"]({field:(_this$encoding$x=this.encoding.x)===null||_this$encoding$x===void 0?void 0:_this$encoding$x.field,type:(_this$encoding$x2=this.encoding.x)===null||_this$encoding$x2===void 0?void 0:(_this$encoding$x2$sca=_this$encoding$x2.scale)===null||_this$encoding$x2$sca===void 0?void 0:_this$encoding$x2$sca.type},{field:(_this$encoding$y=this.encoding.y)===null||_this$encoding$y===void 0?void 0:_this$encoding$y.field,type:(_this$encoding$y2=this.encoding.y)===null||_this$encoding$y2===void 0?void 0:(_this$encoding$y2$sca=_this$encoding$y2.scale)===null||_this$encoding$y2$sca===void 0?void 0:_this$encoding$y2$sca.type}):new ScaleKey["a"]}return(_this$encoding$positi=(_this$encoding=this.encoding)===null||_this$encoding===void 0?void 0:(_this$encoding$positi2=_this$encoding.position)===null||_this$encoding$positi2===void 0?void 0:_this$encoding$positi2.getScaleKeys())!==null&&_this$encoding$positi!==void 0?_this$encoding$positi:new ScaleKey["a"]}getTargetRowset(zoom){var _this$transform4;if(!this.isRenderable())return;return new Rowset_Rowset({data:this.getData(),transform:(_this$transform4=this.transform)===null||_this$transform4===void 0?void 0:_this$transform4.getBackendTransform(),resolution:this.getTargetResolution(zoom),scales:this.getScaleKeys()})}isFixedColor(){return this.type.toLowerCase()==="heatmap"}belongsToVisualization(visualizationId){return!!(visualizationId&&this._visualization&&this._visualization===visualizationId)}areEncodingsRenderable(){var _requiredEncodingsMap;return(_requiredEncodingsMap=requiredEncodingsMap[this.type.toLowerCase()])===null||_requiredEncodingsMap===void 0?void 0:_requiredEncodingsMap.map((encodingName=>{var _this$encoding$encodi;return(_this$encoding$encodi=this.encoding[encodingName])===null||_this$encoding$encodi===void 0?void 0:_this$encoding$encodi.isRenderable()})).every(Boolean)}isDataRenderable(){return!!this.data&&!!this.data.query&&!!this.data.source}isRenderable(){return this.areEncodingsRenderable()&&this.isDataRenderable()}change(partialLayer){const cloned=this.clone();return new Layer({...cloned,...partialLayer})}immutableSetAnimation(animation){return animation.fillLayer(this.clone())}getAnimation(){return LayerAnimation_LayerAnimation.createFromLayer(this)}canAnimate(){return this.isType(LayerType.circle)||this.isType(LayerType.polygon)||this.isType(LayerType.icon)||this.isType(LayerType.line)}hasExplicitPosition(){return!this.isType(LayerType.polygon)&&!this.isType(LayerType.image)&&!this.isType(LayerType.line)}},Layer_descriptor=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"id",[Layer_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),Layer_descriptor2=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"encoding",[Layer_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor3=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"transform",[_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor4=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"tooltip",[_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor5=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"visible",[_dec5],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor6=Object(applyDecoratedDescriptor["a"])(Layer_class.prototype,"_visualization",[_dec6],{configurable:true,enumerable:true,writable:true,initializer:null}),Layer_class);const setUnifiedScaleDomain=(scaleDomain,scaleType,domain)=>{if(!scaleDomain[scaleType]){scaleDomain[scaleType]={domainMin:domain.min,domainMax:domain.max}}const scaleDomainMin=scaleDomain[scaleType].domainMin;if(scaleDomainMin===undefined||!Object(fp_["isNumber"])(scaleDomainMin)){scaleDomain[scaleType].domainMin=domain.min}else if(Object(fp_["isNumber"])(domain.min)&&scaleDomainMin>domain.min){scaleDomain[scaleType].domainMin=domain.min}const scaleDomainMax=scaleDomain[scaleType].domainMax;if(scaleDomainMax===undefined||!Object(fp_["isNumber"])(scaleDomainMax)){scaleDomain[scaleType].domainMax=domain.max}else if(Object(fp_["isNumber"])(domain.max)&&scaleDomainMax<domain.max){scaleDomain[scaleType].domainMax=domain.max}};const getDomainValues=(rowsets,field)=>rowsets.reduce(((domain,rowset)=>{var _rowset$rows;const values=rowset===null||rowset===void 0?void 0:(_rowset$rows=rowset.rows)===null||_rowset$rows===void 0?void 0:_rowset$rows.getValues(field);if(!values)return domain;const minValue=Object(fp_["min"])(values);const maxValue=Object(fp_["max"])(values);return{min:Object(fp_["isNumber"])(domain.min)&&domain.min<minValue||!Object(fp_["isNumber"])(minValue)?domain.min:minValue,max:Object(fp_["isNumber"])(domain.max)&&domain.max>maxValue||!Object(fp_["isNumber"])(maxValue)?domain.max:maxValue}}),{min:undefined,max:undefined});function getUnifiedScaleDomains(rowsets){return rowsets.reduce(((scaleDomains,rowset)=>{var _rowset$scales,_rowset$scales2,_rowset$scales3;if(rowset!==null&&rowset!==void 0&&(_rowset$scales=rowset.scales)!==null&&_rowset$scales!==void 0&&_rowset$scales.x){const xDomain=getDomainValues(rowsets,rowset.scales.x.field);setUnifiedScaleDomain(scaleDomains["x"],rowset.scales.x.type,xDomain)}if(rowset!==null&&rowset!==void 0&&(_rowset$scales2=rowset.scales)!==null&&_rowset$scales2!==void 0&&_rowset$scales2.y){const yDomain=getDomainValues(rowsets,rowset.scales.y.field);setUnifiedScaleDomain(scaleDomains["y"],rowset.scales.y.type,yDomain)}if(rowset!==null&&rowset!==void 0&&(_rowset$scales3=rowset.scales)!==null&&_rowset$scales3!==void 0&&_rowset$scales3.z){if(!scaleDomains["z"][rowset.scales.z.type]){scaleDomains["z"][rowset.scales.z.type]={domainMin:0,domainMax:50}}setUnifiedScaleDomain(scaleDomains["z"],rowset.scales.z.type,{min:0,max:50})}return scaleDomains}),{x:{},y:{},z:{}})}class Rowsets_Rowsets extends Array{hasRowset(rowsetId){if(!rowsetId)return false;return this.some((rowset=>rowset.getId()===rowsetId))}withData(data){const rowsets=this.filter((rowset=>rowset.data.query===data.query&&rowset.data.source===data.source));return new Rowsets_Rowsets(...rowsets)}getUnifiedScaleDomains(){return getUnifiedScaleDomains(this)}}const getFieldPositionOrDefault=fieldPosition=>{var _fieldPosition$scale;return(_fieldPosition$scale=fieldPosition===null||fieldPosition===void 0?void 0:fieldPosition.scale)!==null&&_fieldPosition$scale!==void 0?_fieldPosition$scale:{}};const getFieldPositionScaleType=(columns,fieldPosition)=>{const xColumn=columns?columns.get(fieldPosition===null||fieldPosition===void 0?void 0:fieldPosition.field):undefined;return Object(encoding_src["m"])(xColumn)};const getLayersWithScaleTypes=(layers,queries)=>new Layers_Layers(...layers.map((layer=>{const clonedLayer=layer.clone();const query=queries.findQuery(clonedLayer.getQueryKey());if(clonedLayer.encoding.position&&clonedLayer.encoding.position.x&&clonedLayer.encoding.position.y){clonedLayer.encoding.position.x.scale=getFieldPositionOrDefault(clonedLayer.encoding.position.x);clonedLayer.encoding.position.y.scale=getFieldPositionOrDefault(clonedLayer.encoding.position.y);if(clonedLayer.encoding.position.z){clonedLayer.encoding.position.z.scale=getFieldPositionOrDefault(clonedLayer.encoding.position.z)}if(clonedLayer.encoding.position.x.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.position.x.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.position.x)}if(clonedLayer.encoding.position.y.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.position.y.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.position.y)}if(clonedLayer.encoding.position.z)clonedLayer.encoding.position.z.scale.type=encoding_src["d"]}if(clonedLayer.encoding.x&&clonedLayer.encoding.y){clonedLayer.encoding.x.scale=getFieldPositionOrDefault(clonedLayer.encoding.x);clonedLayer.encoding.y.scale=getFieldPositionOrDefault(clonedLayer.encoding.y);if(clonedLayer.encoding.x.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.x.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.x)}if(clonedLayer.encoding.y.scale.type!==encoding_src["i"].SQUARE){clonedLayer.encoding.y.scale.type=getFieldPositionScaleType(query===null||query===void 0?void 0:query.getColumns(),clonedLayer.encoding.y)}}return clonedLayer})));function onlyTargetRowset(zoom){return layer=>layer.getTargetRowset(zoom)}class Layers_Layers extends Array{constructor(){for(var _len=arguments.length,layers=new Array(_len),_key=0;_key<_len;_key++){layers[_key]=arguments[_key]}const ls=layers.filter((layer=>!!layer));super(...ls)}filter(filterFunc){const filteredItems=super.filter(filterFunc);return new Layers_Layers(...filteredItems)}getById(layerId){return this.find(hasId(layerId))}upsertLayer(newLayer){const newLayerWithTimestamp=new Layer_Layer({...newLayer,lastModified:new Date});const cloned=new Layers_Layers(...this);const layerIndex=Object(fp_["findIndex"])((layer=>layer.id===newLayer.id),this);if(layerIndex>-1){cloned.splice(layerIndex,1,newLayerWithTimestamp)}else{cloned.push(newLayerWithTimestamp)}return cloned}changeLayer(id,partialLayer){const cloned=new Layers_Layers(...this);const layerIndex=Object(fp_["findIndex"])((layer=>layer.id===id),this);if(layerIndex>-1){const newLayer=this[layerIndex].change({...partialLayer});cloned.splice(layerIndex,1,newLayer)}return cloned}getRowsets(){let zoom=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;let visualizationId=arguments.length>1?arguments[1]:undefined;if(zoom<0)return new Rowsets_Rowsets;const layers=this.filter(isFromVisualizationId(visualizationId));const targetRowsets=layers.map(onlyTargetRowset(zoom));const validRowsets=targetRowsets.filter((rowset=>!!rowset));return new Rowsets_Rowsets(...Object(fp_["uniqBy"])((rowset=>rowset.getId()),validRowsets))}getTargetRowsets(zoom){if(zoom===undefined||zoom<0)return new Rowsets_Rowsets;const layers=this.filter(hasData).filter(fromZoom(zoom));const targetRowsets=layers.map(onlyTargetRowset(zoom));const validRowsets=targetRowsets.filter((rowset=>!!rowset));return new Rowsets_Rowsets(...Object(fp_["uniqBy"])((rowset=>rowset.getId()),validRowsets))}getFromVisualization(visualizationId){if(!visualizationId)return new Layers_Layers;return this.filter(isFromVisualizationId(visualizationId))}getVisibleFromVisualization(visualizationId,zoom){return this.getFromVisualization(visualizationId).getVisibles(zoom)}getVisibles(zoom){return this.filter((layer=>layer.isVisible(zoom)))}renderable(rowsets){return this.filter((layer=>layer.shouldRender(rowsets)))}someWithZPosition(){return this.some((layer=>{var _layer$encoding,_layer$encoding2;return((_layer$encoding=layer.encoding)===null||_layer$encoding===void 0?void 0:_layer$encoding.position)&&((_layer$encoding2=layer.encoding)===null||_layer$encoding2===void 0?void 0:_layer$encoding2.position.hasZ())}))}everyIsVega(){return this.length>0&&this.every((layer=>layer.isVega()))}changeLayerName(layerId,name){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===layerId));if(cloned[layerIndex]){const newLayer=cloned[layerIndex].clone();newLayer.name=name;cloned.splice(layerIndex,1,newLayer)}return cloned}moveLayer(layerId,steps){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===layerId));const element=cloned[layerIndex];cloned.splice(layerIndex,1);cloned.splice(layerIndex+steps,0,element);return cloned}deleteLayer(layerId){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===layerId));if(cloned[layerIndex]){cloned.splice(layerIndex,1)}return cloned}updateLastModified(){const cloned=new Layers_Layers;for(const layer of this){cloned.push(layer.clone())}return cloned}changeEncoding(id,specificEncoding,type){const cloned=new Layers_Layers(...this);const targetLayerIndex=cloned.findIndex((layer=>layer.id===id));const targetLayer=cloned[targetLayerIndex];if(targetLayer&&type){const clonedLayer=targetLayer.clone();cloned.splice(targetLayerIndex,1,clonedLayer);clonedLayer.encoding=new encoding_src["f"]({...targetLayer.encoding,[type]:specificEncoding})}return cloned}changeAnimation(id,params){const cloned=new Layers_Layers(...this);const layerIndex=cloned.findIndex((layer=>layer.id===id));if(cloned[layerIndex]){const newLayer=cloned[layerIndex].immutableSetAnimation(params);cloned.splice(layerIndex,1,newLayer)}return cloned}fillScaleTypes(queries){if(!(queries!==null&&queries!==void 0&&queries.length))return this;return getLayersWithScaleTypes(this,queries)}fillRefZooms(){const cloned=new Layers_Layers(...this);cloned.forEach((layer=>{var _layer$visible,_layer$visible$zoomRa,_layer$visible$zoomRa2,_layer$visible2,_layer$visible2$zoomR,_layer$visible2$zoomR2;if((_layer$visible=layer.visible)!==null&&_layer$visible!==void 0&&(_layer$visible$zoomRa=_layer$visible.zoomRange)!==null&&_layer$visible$zoomRa!==void 0&&(_layer$visible$zoomRa2=_layer$visible$zoomRa.min)!==null&&_layer$visible$zoomRa2!==void 0&&_layer$visible$zoomRa2.relative){var _layer$visible$zoomRa3;const refLayer=this.getById((_layer$visible$zoomRa3=layer.visible.zoomRange.min)===null||_layer$visible$zoomRa3===void 0?void 0:_layer$visible$zoomRa3.relative.layer);if(refLayer){var _layer$visible$zoomRa4,_layer$visible$zoomRa5;const refValue=((_layer$visible$zoomRa4=layer.visible.zoomRange.min)===null||_layer$visible$zoomRa4===void 0?void 0:_layer$visible$zoomRa4.relative.reference)==="MIN"?refLayer.visible.zoomRange.getMin():refLayer.visible.zoomRange.getMax();layer.visible.zoomRange.min.fixed={value:refValue+((_layer$visible$zoomRa5=layer.visible.zoomRange.min.relative.increment)!==null&&_layer$visible$zoomRa5!==void 0?_layer$visible$zoomRa5:0)}}}if((_layer$visible2=layer.visible)!==null&&_layer$visible2!==void 0&&(_layer$visible2$zoomR=_layer$visible2.zoomRange)!==null&&_layer$visible2$zoomR!==void 0&&(_layer$visible2$zoomR2=_layer$visible2$zoomR.max)!==null&&_layer$visible2$zoomR2!==void 0&&_layer$visible2$zoomR2.relative){var _layer$visible$zoomRa6;const refLayer=this.getById((_layer$visible$zoomRa6=layer.visible.zoomRange.max)===null||_layer$visible$zoomRa6===void 0?void 0:_layer$visible$zoomRa6.relative.layer);if(refLayer){var _layer$visible$zoomRa7,_layer$visible$zoomRa8;const refValue=((_layer$visible$zoomRa7=layer.visible.zoomRange.max)===null||_layer$visible$zoomRa7===void 0?void 0:_layer$visible$zoomRa7.relative.reference)==="MIN"?refLayer.visible.zoomRange.getMin():refLayer.visible.zoomRange.getMax();layer.visible.zoomRange.max.fixed={value:refValue+((_layer$visible$zoomRa8=layer.visible.zoomRange.max.relative.increment)!==null&&_layer$visible$zoomRa8!==void 0?_layer$visible$zoomRa8:0)}}}}));return cloned}}const getLayersFromVisualizations=response=>{const visualizations=Object(fp_["get"])("app.visualizations",response);const visualizationsLayers=visualizations.map(((visualization,index)=>{const layers=Object(fp_["get"])(["layers"],visualization)||[];return layers.map((layer=>({...layer,_visualization:index.toString()})))}),visualizations);return Object(fp_["flatten"])(visualizationsLayers)};const parseLayers=response=>{const layers=Object(external_class_transformer_["plainToClass"])(Layer_Layer,getLayersFromVisualizations(response))||new Layers_Layers;return new Layers_Layers(...layers)};var image_src=__webpack_require__(66);const drawBoundsFromCentroid=function(centroid,size){let ratio=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;const widthDelta=size/2;const heightDelta=size*ratio/2;return[[centroid[0]-widthDelta,centroid[1]+heightDelta],[centroid[0]-widthDelta,centroid[1]-heightDelta],[centroid[0]+widthDelta,centroid[1]-heightDelta],[centroid[0]+widthDelta,centroid[1]+heightDelta],[centroid[0]-widthDelta,centroid[1]+heightDelta]]};class ImageTransform_ImageTransform{constructor(props){this.field=void 0;Object.assign(this,props)}async transform(viewState,world,row,position,centroid){const diff=await this.getDiff(viewState,world,row,position,centroid);return new dataset_src["f"]({...row,...diff})}async getDiff(viewState,world,row,position,centroid){var _position$x;if(!position.is2D())return{};let ratio=1;if(row[this.field]){const meta=await Object(image_src["a"])(row[this.field]);ratio=meta.ratio}if(!((_position$x=position.x)!==null&&_position$x!==void 0&&_position$x.field))return{};return{[position.x.field]:drawBoundsFromCentroid(centroid,100,ratio).map((coordinate=>viewState.unProjectCoordinate(world,coordinate)))}}}var external_moment_=__webpack_require__(70);var external_moment_default=__webpack_require__.n(external_moment_);let FilterType;(function(FilterType){FilterType["DEFAULT"]="categorical";FilterType["CATEGORICAL"]="categorical";FilterType["RANGE"]="range"})(FilterType||(FilterType={}));var RangeFilter_dec,RangeFilter_dec2,RangeFilter_dec3,RangeFilter_dec4,RangeFilter_dec5,RangeFilter_dec6,RangeFilter_class,RangeFilter_descriptor,RangeFilter_descriptor2,RangeFilter_descriptor3,RangeFilter_descriptor4,RangeFilter_descriptor5;let RangeFilter_RangeFilter=(RangeFilter_dec=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec2=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec3=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec4=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec5=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),RangeFilter_dec6=Object(external_class_transformer_["Expose"])(),RangeFilter_class=class RangeFilter{constructor(props){this.type=void 0;this.hidden=void 0;this.field=void 0;Object(initializerDefineProperty["a"])(this,"data",RangeFilter_descriptor,this);Object(initializerDefineProperty["a"])(this,"visualizationId",RangeFilter_descriptor2,this);Object(initializerDefineProperty["a"])(this,"required",RangeFilter_descriptor3,this);Object(initializerDefineProperty["a"])(this,"_values",RangeFilter_descriptor4,this);Object(initializerDefineProperty["a"])(this,"_options",RangeFilter_descriptor5,this);if(!props)return;if(props)Object.assign(this,props);this.values=props.values?new spatial_src["e"](props.values):new spatial_src["e"];this.options=props.options?new spatial_src["e"](props.options):new spatial_src["e"];if(!props.type)this.type=FilterType.RANGE}get values(){return this._values}set values(values){this._values=values}get options(){return this._options}set options(options){this._options=options}clone(){return new RangeFilter(this)}hasValues(){return this.values&&this.values.hasValues()}withValues(values){const cloned=this.clone();cloned.values=values;return cloned}toggleValue(value){this.values=value;return this}isRanged(){return true}toPlain(){const plain=Object(external_class_transformer_["classToPlain"])(this);return{...plain,values:[this.values.min,this.values.max]}}},RangeFilter_descriptor=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"data",[RangeFilter_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),RangeFilter_descriptor2=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"visualizationId",[RangeFilter_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),RangeFilter_descriptor3=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"required",[RangeFilter_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),RangeFilter_descriptor4=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"_values",[RangeFilter_dec4],{configurable:true,enumerable:true,writable:true,initializer:function(){return new spatial_src["e"]}}),RangeFilter_descriptor5=Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"_options",[RangeFilter_dec5],{configurable:true,enumerable:true,writable:true,initializer:function(){return new spatial_src["e"]}}),Object(applyDecoratedDescriptor["a"])(RangeFilter_class.prototype,"values",[RangeFilter_dec6],Object.getOwnPropertyDescriptor(RangeFilter_class.prototype,"values"),RangeFilter_class.prototype),RangeFilter_class);var CategoricalFilter_dec,CategoricalFilter_dec2,CategoricalFilter_dec3,CategoricalFilter_dec4,CategoricalFilter_dec5,CategoricalFilter_dec6,_dec7,_dec8,_dec9,CategoricalFilter_class,CategoricalFilter_descriptor,CategoricalFilter_descriptor2,CategoricalFilter_descriptor3,CategoricalFilter_descriptor4,CategoricalFilter_descriptor5,CategoricalFilter_descriptor6,_descriptor7,_descriptor8;let CategoricalFilter_SimpleFilter=(CategoricalFilter_dec=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec2=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec3=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec4=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec5=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),CategoricalFilter_dec6=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),_dec7=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),_dec8=Object(external_class_transformer_["Exclude"])({toPlainOnly:true}),_dec9=Object(external_class_transformer_["Expose"])(),CategoricalFilter_class=class SimpleFilter{constructor(props){this.type=void 0;this.hidden=void 0;this.exactMatch=void 0;this.field=void 0;Object(initializerDefineProperty["a"])(this,"data",CategoricalFilter_descriptor,this);Object(initializerDefineProperty["a"])(this,"singleChoice",CategoricalFilter_descriptor2,this);Object(initializerDefineProperty["a"])(this,"required",CategoricalFilter_descriptor3,this);Object(initializerDefineProperty["a"])(this,"searchTerm",CategoricalFilter_descriptor4,this);Object(initializerDefineProperty["a"])(this,"visualizationId",CategoricalFilter_descriptor5,this);Object(initializerDefineProperty["a"])(this,"_values",CategoricalFilter_descriptor6,this);Object(initializerDefineProperty["a"])(this,"_options",_descriptor7,this);Object(initializerDefineProperty["a"])(this,"_searchResults",_descriptor8,this);if(!props)return;if(props)Object.assign(this,props);if(!props.type)this.type=FilterType.CATEGORICAL}get values(){if((this.singleChoice||this.required)&&this._values.length<1)return Object(fp_["take"])(1,this.options);if(this.singleChoice&&this._values.length>0)return Object(fp_["take"])(1,this._values);return this._values}set values(values){this._values=values}get options(){return Object(fp_["unionWith"])(fp_["isEqual"],this._options,this._values)}set options(options){this._options=options}set searchResults(results){if(!Object(fp_["isArray"])(results))return;this._searchResults=results}get searchResults(){return Object(fp_["difference"])(this._searchResults,this.values)}withValues(values){const cloned=this.clone();cloned.values=values;return cloned}clone(){return new SimpleFilter(this)}getValuesWithoutDefaults(){if(!this.singleChoice&&!this.required)return this._values;if(this._values.length===1&&Object(fp_["head"])(this._values)===Object(fp_["head"])(this.options))return[];return this._values}addValue(value){if(this._values.indexOf(value)>-1)return this;this._values.push(value);return this}removeValue(value){const valueIndex=this._values.indexOf(value);if(valueIndex>-1){this._values.splice(valueIndex,1)}return this}hasValue(value){return this.values.indexOf(value)>-1}hasValues(){return this.values.length>0}toggleValue(value){if(this.hasValue(value)){return this.removeValue(value)}else if(this.singleChoice){this.values=[value];return this}return this.addValue(value)}isRanged(){return false}toPlain(){return Object(external_class_transformer_["classToPlain"])(this)}},CategoricalFilter_descriptor=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"data",[CategoricalFilter_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor2=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"singleChoice",[CategoricalFilter_dec2],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor3=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"required",[CategoricalFilter_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor4=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"searchTerm",[CategoricalFilter_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor5=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"visualizationId",[CategoricalFilter_dec5],{configurable:true,enumerable:true,writable:true,initializer:null}),CategoricalFilter_descriptor6=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"_values",[CategoricalFilter_dec6],{configurable:true,enumerable:true,writable:true,initializer:function(){return[]}}),_descriptor7=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"_options",[_dec7],{configurable:true,enumerable:true,writable:true,initializer:function(){return[]}}),_descriptor8=Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"_searchResults",[_dec8],{configurable:true,enumerable:true,writable:true,initializer:function(){return[]}}),Object(applyDecoratedDescriptor["a"])(CategoricalFilter_class.prototype,"values",[_dec9],Object.getOwnPropertyDescriptor(CategoricalFilter_class.prototype,"values"),CategoricalFilter_class.prototype),CategoricalFilter_class);class Filters_Filters extends Array{clone(){return new Filters_Filters(...this)}renderables(){const filters=this.filter((filter=>!filter.hidden));return new Filters_Filters(...filters)}exists(field,visualizationId){const filter=this.find((f=>{if(visualizationId)return f.field===field&&f.visualizationId===visualizationId;return f.field===field}));return!!filter}getByField(field){return this.find((filter=>filter.field===field))}getFromVisualization(visualizationId){const filters=this.filter((filter=>filter.visualizationId===visualizationId));return new Filters_Filters(...filters)}getSingleChoices(){const singleChoices=this.filter((filter=>filter.singleChoice));return new Filters_Filters(...singleChoices)}getWithValues(){const withSelecteds=this.filter((filter=>filter.hasValues()));return new Filters_Filters(...withSelecteds)}update(filter){const cloned=this.clone();const filterIndex=Object(fp_["findIndex"])({field:filter.field,visualizationId:filter.visualizationId},this);cloned.splice(filterIndex,1,filter);return cloned}upsert(filter){const cloned=this.clone();const filterIndex=Object(fp_["findIndex"])({field:filter.field,visualizationId:filter.visualizationId},this);if(filterIndex>=0){cloned.splice(filterIndex,1,filter)}else{cloned.push(filter)}return cloned}selectedValues(){return this.reduce(((values,filter)=>{if(filter instanceof CategoricalFilter_SimpleFilter){return[...values,...filter.values]}if(filter instanceof RangeFilter_RangeFilter&&(!!filter.values.min||!!filter.values.max)){return[...values,filter.values]}return values}),new Array)}categoricalSelectedValues(){return this.reduce(((values,filter)=>{if(filter instanceof CategoricalFilter_SimpleFilter){return[...values,...filter.values]}return values}),new Array)}someCategoricalWithSelectedWithoutDefaults(){return this.some((filter=>filter instanceof CategoricalFilter_SimpleFilter&&filter.getValuesWithoutDefaults().length>0))}clearCategoricalSelecteds(){const clear=this.map((filter=>{if(filter instanceof CategoricalFilter_SimpleFilter){const cloned=filter.clone();cloned.values=[];return cloned}return filter}));return new Filters_Filters(...clear)}overwrite(filters){const overwritten=new Filters_Filters;this.forEach((filter=>{const existingFilter=filters.getByField(filter.field);if(existingFilter){return overwritten.push(filter.withValues(existingFilter.values))}return overwritten.push(filter)}));return overwritten}mergeKeepingHidden(newFilters){const merged=this.overwrite(newFilters);newFilters.filter((filter=>!merged.exists(filter.field,filter.visualizationId))).forEach((filter=>filter.hidden&&merged.push(filter)));return merged}mergeVisualizations(visualizationId,sourceVisualization){if(!sourceVisualization){return this}const sourceFilters=this.getFromVisualization(sourceVisualization);const mergedFilters=new Filters_Filters;this.forEach((filter=>{if(filter.visualizationId!==visualizationId){mergedFilters.push(filter);return}const sameOnSourceFilters=sourceFilters.getByField(filter.field);if(sameOnSourceFilters){mergedFilters.push(filter.withValues(sameOnSourceFilters.values));return}mergedFilters.push(filter);return}));return mergedFilters}withoutHiddenFromVisualizations(visualizationId){const filters=this.filter((filter=>!(filter.hidden&&filter.visualizationId===visualizationId)));return new Filters_Filters(...filters)}getNonSingleChoice(){const filters=this.filter((filter=>!filter.singleChoice));return new Filters_Filters(...filters)}}var domain_Filters=Filters_Filters;const getDefaultSelectedValues=(plainFilter,column)=>{if(plainFilter.selectedValues)return plainFilter.selectedValues;const filterType=plainFilter.type&&plainFilter.type.toLowerCase();if(filterType===FilterType.RANGE&&(column===null||column===void 0?void 0:column.getType())===dataset_src["b"].DATETIME&&column.stats){const momentMax=external_moment_default()(column.stats.max);return new spatial_src["e"]({min:momentMax.subtract(1,"months").valueOf(),max:column.stats.max})}else if(filterType===FilterType.RANGE){return new spatial_src["e"]}return[]};const getDefaultOptions=(filter,column)=>{const filterType=filter.type&&filter.type.toLowerCase();if(filterType===FilterType.RANGE&&column!==null&&column!==void 0&&column.stats){return new spatial_src["e"]({min:column.stats.min,max:column.stats.max})}return filter.values};const createPlainFilter=(filterType,filter,column)=>({type:filterType,singleChoice:filter.singleChoice,required:filter.required,exactMatch:filter.exactMatch,field:filter.field,data:filter.data,visualizationId:filter.visualizationId,options:getDefaultOptions(filter,column),values:getDefaultSelectedValues(filter,column)});const parseFilters=(response,queries)=>{const visualizations=Object(fp_["get"])("app.visualizations",response);const visualizationsWithFilters=visualizations.filter((visualization=>visualization.filters));const visualizationsFilters=Object(fp_["flatMap"])((visualization=>visualization.filters.map((filter=>({...filter,visualizationId:visualization.id})))),visualizationsWithFilters);const validVisualizationsFilters=visualizationsFilters.filter((filter=>{const query=queries.findQuery(filter.data);if(!query)return false;return query.getColumns().get(filter.field)}));const filters=validVisualizationsFilters.map((filter=>{const query=queries.findQuery(filter.data);const column=query===null||query===void 0?void 0:query.getColumns().get(filter.field);const filterType=filter.type&&filter.type.toLowerCase();const plainFilter=createPlainFilter(filterType,filter,column);if(plainFilter.type===FilterType.RANGE)return new RangeFilter_RangeFilter(plainFilter);return new CategoricalFilter_SimpleFilter(plainFilter)}));return new domain_Filters(...filters)};let AppApiErrorType;(function(AppApiErrorType){AppApiErrorType["FETCHING_APP"]="Error fetching app";AppApiErrorType["FETCHING_TABLE"]="Error fetching query"})(AppApiErrorType||(AppApiErrorType={}));class AppApiError extends Error{constructor(type,response){super(`AppApiError: ${type}`);this.type=void 0;this.response=void 0;this.type=type;this.response=response}isAppResourceError(){return this.type===AppApiErrorType.FETCHING_APP}}const getLegendsFromVisualizations=response=>{const visualizations=Object(fp_["get"])("app.visualizations",response);const visualizationsLegends=visualizations.map((visualization=>{var _get;const legends=(_get=Object(fp_["get"])(["legends"],visualization))!==null&&_get!==void 0?_get:[];return legends.map((legend=>({visualizationId:visualization.id,layer:legend.layer})))}));return Object(fp_["flatten"])(visualizationsLegends)};const getAxesFromVisualizations=response=>{const visualizations=Object(fp_["get"])("app.visualizations",response);return visualizations.map((visualization=>{var _get2;let axesList=(_get2=Object(fp_["get"])(["axes"],visualization))!==null&&_get2!==void 0?_get2:[];if(!Array.isArray(axesList)){axesList=[]}return axesList.map((axes=>({...axes,visualizationId:visualization.id})))})).flat()};const parseApp=response=>{const plain=Object(fp_["get"])("app",response);return Object(external_class_transformer_["plainToClass"])(App_App,plain,{excludeExtraneousValues:true})};const parseVisualizations=response=>{const visualizations=Object(external_class_transformer_["plainToClass"])(Visualization["b"],Object(fp_["get"])("app.visualizations",response),{excludeExtraneousValues:true})||new visualization_Visualizations;return new visualization_Visualizations(...visualizations)};const parseLegends=response=>{var _plainToClass;const legends=(_plainToClass=Object(external_class_transformer_["plainToClass"])(Legend,getLegendsFromVisualizations(response)))!==null&&_plainToClass!==void 0?_plainToClass:[];return new Legends(...legends)};const parseAxesList=response=>new AxesList(...getAxesFromVisualizations(response));const parseQueries=response=>{const queries=Object(fp_["get"])("queries",response);return new dataset_src["d"](...Object(external_class_transformer_["plainToClass"])(dataset_src["e"],queries))};const getPlaceTransform=plainPlaceTransform=>{if(!(plainPlaceTransform!==null&&plainPlaceTransform!==void 0&&plainPlaceTransform.image))return undefined;return new ImageTransform_ImageTransform(plainPlaceTransform.image)};const parseDataBrowsers=response=>{let visualizations=Object(fp_["get"])("app.visualizations",response);visualizations=visualizations.filter((visualization=>!!visualization.dataBrowsers));const dataBrowsers=Object(fp_["flatMap"])((visualization=>visualization.dataBrowsers.map((dataBrowser=>new data_browser_DataBrowser({...dataBrowser,visualization:visualization.id,list:dataBrowser.list?{...dataBrowser.list,encoding:dataBrowser.list.encoding?new encoding_src["f"](dataBrowser.list.encoding):undefined}:undefined,drag:dataBrowser.drag?{placeTransform:getPlaceTransform(dataBrowser.drag.placeTransform)}:undefined})))),visualizations);return new data_browser_DataBrowsers(...dataBrowsers)};const parseResponse=response=>{const queries=parseQueries(response);return{app:parseApp(response),schema:Object(fp_["get"])("schema",response),history:Object(fp_["get"])("history",response),queries,layers:parseLayers(response),legends:parseLegends(response),axesList:parseAxesList(response),visualizations:parseVisualizations(response),filters:parseFilters(response,queries),dataBrowsers:parseDataBrowsers(response)}};async function getApp(application,version,authorization){const response=await httpGet(src["a"].getValue("BFF_API_ADDRESS",authorization.tenant),`/app/${application}`,{version,filterValueLimit:6},authorization);const body=await response.json();return parseResponse(body)}function getApps(authorization){return httpGet(src["a"].getValue("APP_API_ADDRESS"),`/app`,{},authorization).then((res=>res.json()))}function deleteApp(appId,authorization){return httpDelete(src["a"].getValue("APP_API_ADDRESS"),`/app/${appId}`,{},authorization).then((res=>res.json()))}function updateAppName(appId,name,authorization){return httpPut(src["a"].getValue("APP_API_ADDRESS"),`/app/${appId}/name`,{name},{},authorization).then((res=>res.json()))}function rollbackAppVersion(appId,version,authorization){return httpPut(src["a"].getValue("APP_API_ADDRESS"),`/app/${appId}/rollback`,{version},{},authorization).then((res=>res.json()))}var ViewState=__webpack_require__(62);class ViewStates_ViewStates extends Array{clone(){return new ViewStates_ViewStates(...this)}getFromVisualization(visualizationId){const viewState=this.find((vs=>vs.visualizationId===visualizationId));if(!visualizationId||!viewState){throw new Error("Cannot find a viewState")}return viewState}withUpdatedViewState(newViewState){if(!newViewState)return this;const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId:newViewState.visualizationId},this);cloned.splice(viewStateIndex,1,newViewState);return cloned}transitionToPosition(visualizationId,position,duration){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},this);const newViewState=this[viewStateIndex].transition(position,duration);cloned.splice(viewStateIndex,1,newViewState);return cloned}updateZ(visualizationId,z){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},this);const newViewState=this[viewStateIndex].clone();newViewState.coordinates.z=z;cloned.splice(viewStateIndex,1,newViewState);return cloned}zoom(visualizationId,zoomJumpSize){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},this);const newZoom=this[viewStateIndex].zoom+zoomJumpSize;const newViewState=this[viewStateIndex].zoomTransition(newZoom);cloned.splice(viewStateIndex,1,newViewState);return cloned}resetPosition(visualizationId){const cloned=this.clone();const viewStateIndex=Object(fp_["findIndex"])({visualizationId},cloned);const newViewState=cloned[viewStateIndex].resetPosition();cloned.splice(viewStateIndex,1,newViewState);return cloned}}var view_state_ViewStates=ViewStates_ViewStates;let AppsStatus;(function(AppsStatus){AppsStatus["IDLE"]="IDLE";AppsStatus["LOADING"]="LOADING";AppsStatus["DIRTY"]="DIRTY";AppsStatus["SAVING"]="SAVING";AppsStatus["UPDATED"]="UPDATED";AppsStatus["ERROR"]="ERROR"})(AppsStatus||(AppsStatus={}));class AppsStore{constructor(){this.status=void 0;this.apps=void 0;for(var _len=arguments.length,apps=new Array(_len),_key=0;_key<_len;_key++){apps[_key]=arguments[_key]}this.apps=apps;this.status=AppsStatus.IDLE}immutableSetStatus(value){const cloned=this.clone();cloned.status=value;return cloned}is(status){return this.status===status}clone(){const cloned=new AppsStore(...this.apps);cloned.status=this.status;return cloned}immutableRemoveApp(appId){const cloned=this.clone();cloned.apps=cloned.apps.filter((app=>app.id!==appId));return cloned}}var state_AppsStore=AppsStore;var external_typesafe_actions_=__webpack_require__(2);let DragMode;(function(DragMode){DragMode["PAN"]="pan";DragMode["ROTATE"]="rotate"})(DragMode||(DragMode={}));const DEFAULT_DRAG_MODE=DragMode.PAN;class ViewController{constructor(props){this.visualizationId=void 0;this.dragMode=void 0;this.dragPan=void 0;Object.assign(this,props);if(!this.dragMode)this.dragMode=DEFAULT_DRAG_MODE;if(props.dragPan!==false)this.dragPan=true}clone(){return new ViewController(this)}reset(){return new ViewController({visualizationId:this.visualizationId,dragMode:DEFAULT_DRAG_MODE,dragPan:true})}immutableToggleDragMode(){const cloned=this.clone();if(this.dragMode===DragMode.PAN){cloned.dragMode=DragMode.ROTATE}else{cloned.dragMode=DragMode.PAN}return cloned}isRotateMode(){return this.dragMode===DragMode.ROTATE}}class ViewControllers_ViewControllers extends Array{constructor(){for(var _len=arguments.length,viewControllers=new Array(_len),_key=0;_key<_len;_key++){viewControllers[_key]=arguments[_key]}const vs=viewControllers.map((viewController=>new ViewController(viewController)));super(...vs)}getFromVisualization(visualizationId){if(!visualizationId)return;return this.find((viewController=>viewController.visualizationId===visualizationId))}immutableToggleDragMode(visualizationId){const viewControllerIndex=Object(fp_["findIndex"])((viewController=>viewController.visualizationId===visualizationId),this);if(viewControllerIndex>-1){const cloned=new ViewControllers_ViewControllers(...this);const newViewController=this[viewControllerIndex].immutableToggleDragMode();cloned.splice(viewControllerIndex,1,newViewController);return cloned}return this}}var Toast=__webpack_require__(27);class Worlds extends Array{clone(){return new Worlds(...this)}getFromVisualization(visualizationId){if(!visualizationId)return;return this.find((world=>world.visualizationId===visualizationId))}immutableUpdateWorld(world){const worldIndex=this.findIndex((w=>w.visualizationId===world.visualizationId));if(!world||worldIndex<0)return this;let cloned=this.clone();if(world.hasInitialDimentions()){cloned=new Worlds(...cloned.map((w=>w.withInitialDimensions(world.getInitialDimentions()))))}cloned.splice(worldIndex,1,world);return cloned}immutableResetWorldFromVisualization(visualizationId){const cloned=this.clone();const worldIndex=cloned.findIndex((world=>world.visualizationId===visualizationId));const world=cloned[worldIndex].clone();world.scaleDomains=undefined;cloned.splice(worldIndex,1,world);return cloned}}const getViewStates=(visualizations,params)=>{const viewStates=visualizations.map((visualization=>{const isParamsForVisualization=params&&params.visualization===visualization.id;return new ViewState["a"]({visualizationId:visualization.id,zoomRange:visualization.zoomRange,coordinates:isParamsForVisualization&&params!==null&&params!==void 0&&params.coordinates?Object(ViewState["b"])(params===null||params===void 0?void 0:params.coordinates,visualizations.getCurrent()):visualization.getInitialCoordinates(),zoom:isParamsForVisualization&&params!==null&&params!==void 0&&params.zoom?params===null||params===void 0?void 0:params.zoom:visualization.getInitialZoom(),bearing:isParamsForVisualization&&params!==null&&params!==void 0&&params.bearing?params===null||params===void 0?void 0:params.bearing:visualization.getInitialBearing(),zoomBehavior:visualization.zoomBehavior})}));return new view_state_ViewStates(...viewStates)};const getViewControllers=visualizations=>{const viewControllers=visualizations.map((visualization=>new ViewController({visualizationId:visualization.id})));return new ViewControllers_ViewControllers(...viewControllers)};const getMergedFilters=(response,params)=>{var _params$filters;if(params!==null&&params!==void 0&&(_params$filters=params.filters)!==null&&_params$filters!==void 0&&_params$filters.length&&params.filters.length>0){return response.filters.mergeKeepingHidden(params.filters)}return response.filters};const getWorlds=visualizations=>new Worlds(...visualizations.map((visualization=>new World["a"]({visualizationId:visualization.id,type:visualization.type,sizeRatio:visualization.getSizeRatio()}))));const responseToAction=(response,params)=>{if(!response)return{};const mergedFilters=getMergedFilters(response,params);return{...response,filters:mergedFilters,visualizations:response.visualizations,viewStates:getViewStates(response.visualizations,params),viewControllers:getViewControllers(response.visualizations),worlds:getWorlds(response.visualizations),version:params===null||params===void 0?void 0:params.version}};const getParams=action=>{var _action$payload$initi,_action$payload$initi2;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appPageLoaded):return action.payload.params;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.checkoutVersion.request):return{appId:action.payload.appId,version:action.payload.version};case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return{appId:action.payload.appId,coordinates:action.payload.initialPosition?new spatial_src["c"](action.payload.initialPosition):undefined,bearing:(_action$payload$initi=action.payload.initialPosition)===null||_action$payload$initi===void 0?void 0:_action$payload$initi.bearing,zoom:(_action$payload$initi2=action.payload.initialPosition)===null||_action$payload$initi2===void 0?void 0:_action$payload$initi2.zoom,visualization:action.payload.initialPosition?"0":undefined};default:return{appId:action.payload.appId}}};function*fetchApp(action){const authorization=yield Object(effects_["select"])((state=>state.authorization));const params=getParams(action);try{const appResponse=yield Object(effects_["call"])(getApp,params.appId,params.version,authorization);yield Object(effects_["put"])(Actions["a"].app.fetch.success(responseToAction(appResponse,params)))}catch(e){if(e instanceof AppApiError){yield Object(effects_["put"])(Actions["a"].app.fetch.failure({exception:e,...responseToAction(e.response,params)}))}else{yield Object(effects_["put"])(Actions["a"].app.fetch.failure({exception:e}))}}}function*fetchApps(){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));const payload=yield Object(effects_["call"])(getApps,authorization);yield Object(effects_["put"])(Actions["a"].apps.fetchApps.success({appsStore:new state_AppsStore(...payload)}))}catch(e){yield Object(effects_["put"])(Actions["a"].apps.fetchApps.failure(e))}}function*deleteAppSaga(action){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));yield Object(effects_["call"])(deleteApp,action.payload.appId,authorization);yield Object(effects_["put"])(Actions["a"].app.delete.success({appId:action.payload.appId}))}catch(e){yield Object(effects_["put"])(Actions["a"].app.delete.failure(e))}}function*updateAppNameSaga(action){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));yield Object(effects_["call"])(updateAppName,action.payload.appId,action.payload.name,authorization);yield Object(effects_["put"])(Actions["a"].app.save.success({appId:action.payload.appId}));Object(Toast["b"])("App saved successfully.")}catch(e){yield Object(effects_["put"])(Actions["a"].app.save.failure(e))}}function getRowsetsToFetch(candidateRowsets,rowsetStore,viewState,world){const nonexistent=Object(fp_["differenceBy"])((r=>r.getId()),candidateRowsets,rowsetStore.getRowsets());const empty=Object(fp_["intersectionBy"])((r=>r.getId()),candidateRowsets,rowsetStore.getEmptyRowsets());const newData=Object(fp_["uniqBy"])((r=>r.getId()),Object(fp_["unionWith"])(fp_["isEqual"],nonexistent,empty));const fetchAgainData=Object(fp_["intersectionBy"])((r=>r.getId()),candidateRowsets,rowsetStore.getRowsetsToFetchAgain(viewState,world));const rowsetsToFetch=Object(fp_["uniqBy"])((r=>r.getId()),Object(fp_["unionWith"])(fp_["isEqual"],fetchAgainData,newData));return new Rowsets_Rowsets(...rowsetsToFetch)}function getVisibleRowsetsToFetch(layers,rowsetStore,viewState,visualization,world){return new Rowsets_Rowsets(...getRowsetsToFetch(layers.getFromVisualization(visualization.id).getTargetRowsets(viewState.zoom),rowsetStore,viewState,world))}function shouldFetchRowset(rowset,rowsetStore,viewState,world){if(!rowset)return false;return getRowsetsToFetch([rowset],rowsetStore,viewState,world).length>0}let prefetchThreshold=2;function setPrefetchThreshold(newPrefetchThreshold){return prefetchThreshold=newPrefetchThreshold}function getPrefetchThreshold(){return prefetchThreshold}function getZoomFetch(layer,rowsetStore,viewState,world,currentZoomLevel,targetZoomLevel){const targetViewState=viewState.withZoom(targetZoomLevel);const targetRowset=layer.getTargetRowset(targetZoomLevel);const currentRowset=layer.getTargetRowset(currentZoomLevel);if(targetRowset&&currentRowset){if(targetRowset.resolution>currentRowset.resolution){const nextResolution=(currentRowset===null||currentRowset===void 0?void 0:currentRowset.resolution)+1;targetRowset.resolution=nextResolution>layer.getResolutions().getMax()?layer.getResolutions().getMax():nextResolution}else if(targetRowset.resolution<currentRowset.resolution){const previousResolution=(currentRowset===null||currentRowset===void 0?void 0:currentRowset.resolution)-1;targetRowset.resolution=previousResolution<layer.getResolutions().getMin()?layer.getResolutions().getMin():previousResolution}}if(shouldFetchRowset(targetRowset,rowsetStore,targetViewState,world)){return{rowset:targetRowset,targetViewState}}}function getZoomFetchs(layers,rowsetStore,viewState,world,zoomLevel,targetZoomLevel){const zoomLayers=layers.filter(fromZoom(targetZoomLevel));return zoomLayers.map((layer=>getZoomFetch(layer,rowsetStore,viewState,world,zoomLevel,targetZoomLevel)))}function getZoomInPreFetchs(layers,rowsetStore,viewState,world){let zoomInPrefetchs=[];for(let i=1;i<=getPrefetchThreshold();i++){const zoomFetchs=getZoomFetchs(layers,rowsetStore,viewState,world,viewState.zoom,viewState.zoom+i);zoomInPrefetchs=zoomInPrefetchs.concat(zoomFetchs)}return zoomInPrefetchs}const prefetchRowsetId=prefetch=>{var _prefetch$rowset;return prefetch&&((_prefetch$rowset=prefetch.rowset)===null||_prefetch$rowset===void 0?void 0:_prefetch$rowset.getId())};function getPrefetchs(layers,rowsetStore,viewState,visualization,world){if(!viewState)return[];const visualizationLayers=layers.getFromVisualization(visualization.id);const zoomInPrefetchs=getZoomInPreFetchs(visualizationLayers,rowsetStore,viewState,world);const possiblePrefetchs=Object(fp_["uniqBy"])(prefetchRowsetId,zoomInPrefetchs);const zoomFetchs=getZoomFetchs(visualizationLayers,rowsetStore,viewState,world,viewState.zoom,viewState.zoom);const prefetchs=Object(fp_["differenceBy"])((prefetch=>{var _prefetch$rowset2;return prefetch&&((_prefetch$rowset2=prefetch.rowset)===null||_prefetch$rowset2===void 0?void 0:_prefetch$rowset2.getId())}),possiblePrefetchs,zoomFetchs);return prefetchs.filter((prefetch=>!!prefetch))}function getBleedMultiplier(){return 2}function getFetchBox(visibleWorld){if(!visibleWorld)return;return visibleWorld.multiply(getBleedMultiplier())}var internals_src=__webpack_require__(16);let Filter_FilterType;(function(FilterType){FilterType["RANGE"]="range";FilterType["INTERSECT"]="intersect"})(Filter_FilterType||(Filter_FilterType={}));var ComparisonType;(function(ComparisonType){ComparisonType["GREATER_EQUALS_THAN"]="GREATER_EQUALS_THAN";ComparisonType["LESS_EQUALS_THAN"]="LESS_EQUALS_THAN";ComparisonType["PARTIAL_MATCH"]="PARTIAL_MATCH";ComparisonType["EQUALS"]="EQUALS";ComparisonType["INTERSECTS"]="INTERSECTS"})(ComparisonType||(ComparisonType={}));function convertRangeFilter(filter){const datasetFilters=[];const minValue=filter.values[0];if(minValue!==null&&minValue!==undefined&&!Number.isNaN(minValue)){const minFilter={column:filter.field,values:[minValue],comparisonType:ComparisonType.GREATER_EQUALS_THAN};datasetFilters.push(minFilter)}const maxValue=filter.values[1];if(maxValue!==null&&maxValue!==undefined&&!Number.isNaN(maxValue)){const maxFilter={column:filter.field,values:[maxValue],comparisonType:ComparisonType.LESS_EQUALS_THAN};datasetFilters.push(maxFilter)}return datasetFilters}function getComparisonType(filter){if(filter.type===Filter_FilterType.INTERSECT){return ComparisonType.INTERSECTS}if(filter.exactMatch){return ComparisonType.EQUALS}else{return ComparisonType.PARTIAL_MATCH}}function convertDefaultFilter(filter){const datasetFilters=[];const datasetFilter={column:filter.field,values:filter.values,comparisonType:getComparisonType(filter)};datasetFilters.push(datasetFilter);return datasetFilters}function filterToDatasetFilter(filter){if(filter.type==Filter_FilterType.RANGE){return convertRangeFilter(filter)}else{return convertDefaultFilter(filter)}}function toDatasetFilters(filters){if(filters){return filters.map((filter=>filterToDatasetFilter(filter))).flat()}return[]}const addParam=(queryParam,key,value)=>{if(value){if(Array.isArray(value)&&value.length>0){queryParam[key]=value}else{queryParam[key]=value}}};const getFilterParams=filterSet=>{const queryParams={};addParam(queryParams,"filter",toDatasetFilters(filterSet.filters));addParam(queryParams,"limit",filterSet.limit);addParam(queryParams,"offset",filterSet.offset);if(internals_src["a"].isDebugging())queryParams["debug"]=true;return queryParams};class DatasetRepository_DatasetRepository{static async getRows(query,transformParams,filter,authorization){const queryParams=getFilterParams(filter);addParam(queryParams,"dataSource",query.dataSource);addParam(queryParams,"transform",transformParams);return httpGet(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row`,queryParams,authorization)}static async getRow(rowId,query,authorization){const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpGet(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row/${rowId}`,queryParams,authorization);if(response.status!==200){throw new Error("Error getting row "+response.status)}return response.json()}static async updateRow(query,rowId,rowValues,authorization){const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpPost(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row/${rowId}`,rowValues,queryParams,authorization);if(response.status!==200){throw new Error("Error updating row "+response.status)}return response.json()}static async createRow(){let row=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};let query=arguments.length>1?arguments[1]:undefined;let authorization=arguments.length>2?arguments[2]:undefined;const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpPost(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row`,[row],queryParams,authorization);if(response.status!==200){throw new Error("Error updating row "+response.status)}return response.json()}static async deleteRow(rowId,query,authorization){const queryParams={};if(internals_src["a"].isDebugging())queryParams["debug"]=true;addParam(queryParams,"dataSource",query.dataSource);const response=await httpDelete(src["a"].getValue("DATASET_API_ADDRESS"),`view/${query.name}/row/${rowId}`,queryParams,authorization);if(response.status!==200){throw new Error("Error deleting row "+response.status)}return response.json()}}var Row=__webpack_require__(55);var Rows=__webpack_require__(69);const addId=(rows,idColumn)=>{rows.forEach((row=>{row["_id"]=row[idColumn.name]}));return rows};class DatasetService_DatasetService{static async getRows(query,transformParams,filterSet,authorization){const response=await DatasetRepository_DatasetRepository.getRows(query,transformParams,filterSet,authorization);const body=await response.json();const rows=new Rows["a"];body.forEach((responseRow=>rows.push(new Row["a"](responseRow))));rows.etag=response.headers.get("ETag");if(query.getColumns().hasId()){addId(rows,query.getColumns().getId())}const lastPageHeader=response.headers.get("last-page");return{rows,lastPage:lastPageHeader!=="false"}}static async getRowsWithLoader(loader,query,transformParams,filterSet){const rows=new Rows["a"];const loaderRows=await loader(filterSet,transformParams);loaderRows.forEach((responseRow=>rows.push(new Row["a"](responseRow))));rows.etag=Date.now().toString();if(query.getColumns().hasId()){addId(rows,query.getColumns().getId())}return{rows,lastPage:true}}static async getRow(rowId,query,authorization){const row=await DatasetRepository_DatasetRepository.getRow(rowId,query,authorization);const rowIdColumn=query.getColumns().getId();if(rowIdColumn){row["_id"]=row[rowIdColumn.name]}return row}static async updateRow(query,rowId,rowValues,authorization){return DatasetRepository_DatasetRepository.updateRow(query,rowId,rowValues,authorization)}static async createRow(row,query,authorization){return DatasetRepository_DatasetRepository.createRow(row,query,authorization)}static async deleteRow(rowId,query,authorization){return DatasetRepository_DatasetRepository.deleteRow(rowId,query,authorization)}}var ColumnType=__webpack_require__(21);class filter_Filters_Filters extends Array{push(item){const existingFilter=this.find((filter=>Object(fp_["isEqual"])(filter,item)));if(!existingFilter){return super.push(item)}return this.length}}function toFilters(box,xField,yField,zField,columns){var _columns$get,_columns$get3;const filters=new filter_Filters_Filters;if(!box)return filters;if(xField&&((_columns$get=columns.get(xField))===null||_columns$get===void 0?void 0:_columns$get.getType())!==ColumnType["a"].JSON){var _columns$get2;if(((_columns$get2=columns.get(xField))===null||_columns$get2===void 0?void 0:_columns$get2.getType())===ColumnType["a"].GEOMETRY){filters.push({field:xField,type:Filter_FilterType.INTERSECT,values:box.getPolygon()})}else{filters.push({field:xField,type:Filter_FilterType.RANGE,values:[box.x.getMin(),box.x.getMax()]})}}if(yField&&((_columns$get3=columns.get(yField))===null||_columns$get3===void 0?void 0:_columns$get3.getType())!==ColumnType["a"].JSON){var _columns$get4;if(((_columns$get4=columns.get(yField))===null||_columns$get4===void 0?void 0:_columns$get4.getType())===ColumnType["a"].GEOMETRY){filters.push({field:yField,type:Filter_FilterType.INTERSECT,values:box.getPolygon()})}else{filters.push({field:yField,type:Filter_FilterType.RANGE,values:[box.y.getMin(),box.y.getMax()]})}}if(zField){if(zField&&box.z){filters.push({field:zField,type:Filter_FilterType.RANGE,values:[box.z.getMin(),box.z.getMax()]})}}return filters}var projector_src=__webpack_require__(51);const getAuthorization=state=>state.authorization;const RowsetSaga_getApp=state=>state.appStore.app;const getRowsetStore=state=>state.rowsetStore;const RowsetSaga_getViewStates=state=>state.viewStates;const getLayers=state=>state.layers;const getFilterState=state=>state.filters;const getVisualizations=state=>state.visualizations;const getQueriesStore=state=>state.queryStore;const getProjectorStore=state=>state.projectorStore;const RowsetSaga_getWorlds=state=>state.worlds;function*showGenericErrorFeedback(){Object(Toast["a"])("An error has occurred.")}function*getPayloadFilters(action){let filters;if(Object(external_typesafe_actions_["isActionOf"])([Actions["a"].filter.sidebarFiltersClear,Actions["a"].filter.filterToggle],action)){filters=action.payload.filters}if(!filters){var _select;filters=yield(_select=Object(effects_["select"])(getFilterState))!==null&&_select!==void 0?_select:new domain_Filters}return{filters}}function*refreshData(action){const rowsetStore=yield Object(effects_["select"])(getRowsetStore);const layers=yield Object(effects_["select"])(getLayers);const visualizations=yield Object(effects_["select"])(getVisualizations);const app=yield Object(effects_["select"])(RowsetSaga_getApp);const worlds=yield Object(effects_["select"])(RowsetSaga_getWorlds);const visualization=action.payload.toVisualization||visualizations.getCurrent();let viewStates=action.payload.viewStates;if(!viewStates){viewStates=yield Object(effects_["select"])(RowsetSaga_getViewStates)}const viewState=viewStates.getFromVisualization(visualization.id);const world=worlds.getFromVisualization(visualization.id);if(!viewState||!world){throw new Error("Cannot refresh data without a view state and world")}const queryStore=yield Object(effects_["select"])(getQueriesStore);const subscribeQueries=new dataset_src["d"];const{filters}=yield getPayloadFilters(action);const rowsets=getVisibleRowsetsToFetch(layers,rowsetStore,viewState,visualization,world);if(rowsets.length>0){for(const rowset of rowsets){yield Object(effects_["put"])(Actions["a"].rowset.fetchDataRequested({app,visualization,rowset,viewState,filters}));const query=queryStore.queries.findQuery(rowset.getData());if(query){subscribeQueries.push(query)}}}yield Object(effects_["put"])(Actions["a"].update.subscribe({filters,queries:subscribeQueries}));const prefetchs=getPrefetchs(layers,rowsetStore,viewState,visualization,world);for(const prefetch of prefetchs){yield Object(effects_["put"])(Actions["a"].rowset.fetchDataRequested({app,visualization,rowset:prefetch.rowset,viewState:prefetch.targetViewState,filters}))}}const getSelectedFilters=(filterState,visualization)=>{if(!filterState)return new domain_Filters;return filterState.getFromVisualization(visualization.id).getWithValues()};const getFilters=(filters,visualization,rowset,modelBoxFilters)=>{const selectedFilters=getSelectedFilters(filters,visualization).map((f=>f.toPlain()));selectedFilters.push(...modelBoxFilters);return selectedFilters};function getTransformParams(rowset){if(rowset.transform){return{type:rowset.transform.getType(),resolution:rowset.resolution}}return undefined}function*fetchData(action){var _rowset$scales$z;const authorization=yield Object(effects_["select"])(getAuthorization);const queryStore=yield Object(effects_["select"])(getQueriesStore);const projectorStore=yield Object(effects_["select"])(getProjectorStore);const rowset=action.payload.rowset;const query=queryStore.queries.findQuery(rowset.getData());if(!query)return;const worlds=yield Object(effects_["select"])(RowsetSaga_getWorlds);const world=worlds===null||worlds===void 0?void 0:worlds.getFromVisualization(action.payload.visualization.id);const fetchBox=getFetchBox(action.payload.viewState.getVisibleWorld(world));const projector=projectorStore.getFromVisualization(action.payload.visualization.id);const boxProjector=projector?new projector_src["a"](projector,rowset.scales.x.type,rowset.scales.y.type):undefined;const fetchModelBox=fetchBox?boxProjector===null||boxProjector===void 0?void 0:boxProjector.unproject(fetchBox):undefined;const modelBoxFilters=fetchModelBox&&world!==null&&world!==void 0&&world.isGeo()?toFilters(fetchModelBox,rowset.scales.x.field,rowset.scales.y.field,(_rowset$scales$z=rowset.scales.z)===null||_rowset$scales$z===void 0?void 0:_rowset$scales$z.field,query.getColumns()):[];const filter={filters:getFilters(action.payload.filters,action.payload.visualization,rowset,modelBoxFilters)};yield Object(effects_["put"])(Actions["a"].rowset.fetchData.request({rowset}));try{const queryLoader=queryStore.getLoader(query);let response={rows:new dataset_src["g"],lastPage:true};if(queryLoader){response=yield Object(effects_["call"])(DatasetService_DatasetService.getRowsWithLoader,queryLoader.loader,query,filter,getTransformParams(rowset))}else{response=yield Object(effects_["call"])(DatasetService_DatasetService.getRows,query,getTransformParams(rowset),filter,authorization)}const payload={rowset:action.payload.rowset.fill(response.rows,fetchBox)};yield Object(effects_["put"])(Actions["a"].rowset.fetchData.success(payload))}catch(e){yield Object(effects_["put"])(Actions["a"].rowset.fetchData.failure({reason:"FETCH_DATA_FAILED",exception:e,rowset:action.payload.rowset}))}}function fetchValues(data,columnName,filterTerm,authorization){return httpGet(src["a"].getValue("DATASET_API_ADDRESS",authorization.tenant),`/view/${data.query}/column/${columnName}/value`,{filterTerm,limit:6,dataSource:data.source},authorization).then((res=>res.json()))}function*fetchFilterSuggestions(action){const filterActions=Actions["a"].filter;const authorization=yield Object(effects_["select"])((state=>state.authorization));if(!action.payload.filter.searchTerm){yield Object(effects_["put"])(filterActions.filterSearchFetched({filter:action.payload.filter.clone()}));return}try{const payload=yield Object(effects_["call"])(fetchValues,action.payload.filter.data,action.payload.filter.field,action.payload.filter.searchTerm,authorization);const newFilter=action.payload.filter.clone();newFilter.searchResults=payload;yield Object(effects_["put"])(filterActions.filterSearchFetched({filter:newFilter}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"FILTER_SEARCH_FAILED",exception:e}))}return}const RowSaga_getAuthorization=state=>state.authorization;const RowSaga_getRowsetStore=state=>state.rowsetStore;const RowSaga_getVisualizations=state=>state.visualizations;const RowSaga_getQueriesStore=state=>state.queryStore;function*showRowSavedFeedback(){Object(Toast["b"])("Row saved successfully.")}const getData=(payload,rowsetStore)=>{if(payload.rowsetId){return rowsetStore.getRowset(payload.rowsetId).data}return payload.data};function*updateRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const visualizations=yield Object(effects_["select"])(RowSaga_getVisualizations);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);const rowsetStore=yield Object(effects_["select"])(RowSaga_getRowsetStore);const currentVisualization=visualizations.getCurrent();if(!currentVisualization)throw new Error("visualization should be available for update row");try{var _action$payload$row;const data=getData(action.payload,rowsetStore);const query=queryStore.queries.findQuery(data);yield Object(effects_["call"])(DatasetService_DatasetService.updateRow,query,(_action$payload$row=action.payload.row)===null||_action$payload$row===void 0?void 0:_action$payload$row._id,action.payload.rowDiff,authorization);const isOptimistic=Object(external_typesafe_actions_["isActionOf"])([Actions["a"].layer.dragEnded,Actions["a"].layer.imageTransformed,Actions["a"].layer.imageUploaded],action);if(isOptimistic){yield Object(effects_["put"])(Actions["a"].rowset.optimisticRowSaved({...action.payload}))}else{yield Object(effects_["put"])(Actions["a"].rowset.rowSaved({...action.payload}))}}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_UPDATE_FAILED",exception:e}))}return}function*createRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);try{const query=queryStore.queries.findQuery(action.payload.data);const createdIds=yield Object(effects_["call"])(DatasetService_DatasetService.createRow,action.payload.row,query,authorization);yield Object(effects_["put"])(Actions["a"].rowset.rowCreated({row:new dataset_src["f"]({...action.payload.row,_id:createdIds[0]}),data:action.payload.data}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_CREATION_FAILED",exception:e}))}return}function*fetchRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);const rowsetStore=yield Object(effects_["select"])(RowSaga_getRowsetStore);try{const data=getData(action.payload,rowsetStore);const query=queryStore.queries.findQuery(data);const row=yield Object(effects_["call"])(DatasetService_DatasetService.getRow,action.payload.row._id,query,authorization);yield Object(effects_["put"])(Actions["a"].rowset.rowFetched({row:new dataset_src["f"](row),data:action.payload.data}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_FETCH_FAILED",exception:e}))}return}function*deleteRow(action){const authorization=yield Object(effects_["select"])(RowSaga_getAuthorization);const queryStore=yield Object(effects_["select"])(RowSaga_getQueriesStore);try{const query=queryStore.queries.findQuery(action.payload.data);yield Object(effects_["call"])(DatasetService_DatasetService.deleteRow,action.payload.rowId,query,authorization);yield Object(effects_["put"])(Actions["a"].rowset.rowDeleted(action.payload))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"ROW_DELETE_FAILED",exception:e}))}return}var external_socket_io_client_=__webpack_require__(115);var external_socket_io_client_default=__webpack_require__.n(external_socket_io_client_);class UpdateWatcher_UpdateWatcher{onQueryUpdate(queries){const dataList=queries.map((query=>({query:query.name,source:query.dataSource})));UpdateWatcher_UpdateWatcher.dispatcher(Actions["a"].query.dataListUpdated({dataList}))}constructor(){this.socket=void 0;UpdateWatcher_UpdateWatcher.dispatcher({type:"WATCHER_INIT"});this.socket=external_socket_io_client_default()(src["a"].getValue("WATCHER_API_ADDRESS"));this.socket.on("QUERY_UPDATED",(message=>this.onQueryUpdate(message)))}subscribe(queries,tenant){const simplifiedQueries=queries.map((query=>({name:query.name,dataSource:query.dataSource})));this.socket.emit("SUBSCRIBE",{queries:simplifiedQueries,tenant})}static configure(dispatcher){UpdateWatcher_UpdateWatcher.dispatcher=dispatcher}static init(){UpdateWatcher_UpdateWatcher.instance=new UpdateWatcher_UpdateWatcher}static getInstance(){if(!UpdateWatcher_UpdateWatcher.instance)UpdateWatcher_UpdateWatcher.init();return UpdateWatcher_UpdateWatcher.instance}}UpdateWatcher_UpdateWatcher.instance=void 0;UpdateWatcher_UpdateWatcher.dispatcher=void 0;function*subscribeForUpdates(action){const updateWatcher=UpdateWatcher_UpdateWatcher.getInstance();const authorization=yield Object(effects_["select"])((state=>state.authorization));updateWatcher.subscribe(action.payload.queries,authorization.tenant)}const dataBrowserToFilter=dataBrowser=>{var _dataBrowser$search,_dataBrowser$search2;return new CategoricalFilter_SimpleFilter({data:dataBrowser.getData(),field:dataBrowser.list.field,values:(_dataBrowser$search=dataBrowser.search)!==null&&_dataBrowser$search!==void 0&&_dataBrowser$search.term?[(_dataBrowser$search2=dataBrowser.search)===null||_dataBrowser$search2===void 0?void 0:_dataBrowser$search2.term]:[],exactMatch:false})};function*fetchDataBrowsersRows(action){var _dataBrowsers,_dataBrowsers2;const dataBrowsersState=yield Object(effects_["select"])((state=>state.dataBrowsers));let dataBrowsers=action.payload.dataBrowsers;if(!((_dataBrowsers=dataBrowsers)!==null&&_dataBrowsers!==void 0&&_dataBrowsers.length)&&action.payload.data){const dataBrowserFromData=dataBrowsersState.getByData(action.payload.data);dataBrowsers=dataBrowserFromData?new data_browser_DataBrowsers(dataBrowserFromData):new data_browser_DataBrowsers}else if(!((_dataBrowsers2=dataBrowsers)!==null&&_dataBrowsers2!==void 0&&_dataBrowsers2.length)&&action.payload.visualizationId){dataBrowsers=dataBrowsersState.fromVisualization(action.payload.visualizationId)}for(const db of(_dataBrowsers3=dataBrowsers)!==null&&_dataBrowsers3!==void 0?_dataBrowsers3:[]){var _dataBrowsers3;const dataBrowser=dataBrowsersState.getById(db.getId());if(!dataBrowser)return;yield Object(effects_["put"])(Actions["a"].dataBrowser.fetchDataBrowserRows({dataBrowser}))}}function*fetchDataBrowserRows(action){const authorization=yield Object(effects_["select"])((state=>state.authorization));const queryStore=yield Object(effects_["select"])((state=>state.queryStore));const dataBrowser=action.payload.dataBrowser;if(!dataBrowser){return}try{var _dataBrowser$search3,_dataBrowser$rowset$o,_dataBrowser$rowset;const filters=new domain_Filters;if((_dataBrowser$search3=dataBrowser.search)!==null&&_dataBrowser$search3!==void 0&&_dataBrowser$search3.term){filters.push(dataBrowserToFilter(dataBrowser))}const query=queryStore.queries.findQuery(dataBrowser.getData());if(!query){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"FETCH_DATA_BROWSER_FAILED",exception:`Query ${JSON.stringify(dataBrowser.getData())} not found in query store`}))}const limit=dataBrowser.list.rowLimit;const offset=Object(external_typesafe_actions_["isActionOf"])([Actions["a"].dataBrowser.paginateNext,Actions["a"].dataBrowser.paginatePrev],action)?action.payload.offset:(_dataBrowser$rowset$o=(_dataBrowser$rowset=dataBrowser.rowset)===null||_dataBrowser$rowset===void 0?void 0:_dataBrowser$rowset.offset)!==null&&_dataBrowser$rowset$o!==void 0?_dataBrowser$rowset$o:0;const response=yield Object(effects_["call"])(DatasetService_DatasetService.getRows,query,undefined,{filters,limit,offset},authorization);yield Object(effects_["put"])(Actions["a"].dataBrowser.dataBrowserRowsFetched({rows:response.rows,dataBrowserId:dataBrowser.getId(),offset,lastPage:response.lastPage}))}catch(e){yield Object(effects_["put"])(Actions["a"].root.genericError({reason:"FETCH_DATA_BROWSER_FAILED",exception:e}))}}function getTemplates(){return httpGet(src["a"].getValue("TEMPLATE_API_ADDRESS"),`/template`,{}).then((res=>res.json()))}function createAppFromTemplate(templateId,appName,authorization){return httpPost(src["a"].getValue("BFF_API_ADDRESS"),`/app`,{templateId,appName},{},authorization).then((res=>res.json()))}class Template_Template{constructor(templateId){this.id=void 0;this.id=templateId}getName(){return external_js_sentencecase_default()(this.id)}}function*fetchTemplates(){try{yield Object(effects_["put"])(Actions["a"].template.fetchTemplates.request());const payload=yield Object(effects_["call"])(getTemplates);const templates=payload.map((template=>new Template_Template(template)));yield Object(effects_["put"])(Actions["a"].template.fetchTemplates.success({templates}))}catch(e){yield Object(effects_["put"])(Actions["a"].apps.fetchApps.failure(e))}}function*createTemplateApps(action){try{const authorization=yield Object(effects_["select"])((state=>state.authorization));const payload=yield Object(effects_["call"])(createAppFromTemplate,action.payload.templateId,action.payload.name,authorization);yield Object(effects_["put"])(Actions["a"].template.createApp.success({id:payload.id}));if(payload.id){action.payload.history.push(`/${authorization.tenant}/app/${payload.id}`)}}catch(e){Object(Toast["a"])("Something went wrong creating the app");yield Object(effects_["put"])(Actions["a"].template.createApp.failure(e))}}const postLayer=async(type,partialLayer,authorization)=>{const res=await httpPost(src["a"].getValue("APP_API_ADDRESS"),`layer/${type}`,{partialLayer},{},authorization);return res.json()};const getLayer=async(type,partialLayer,authorization)=>postLayer(type,partialLayer,authorization);const LayerSaga_getAuthorization=state=>state.authorization;const LayerSaga_getVisualizations=state=>state.visualizations;const deepSetsZoomRange=(obj,zoomRange)=>{if(obj.hasOwnProperty("zoomRange")){var _zoomRange$min,_zoomRange$min$fixed,_zoomRange$min2,_zoomRange$min2$fixed,_zoomRange$max,_zoomRange$max$fixed,_zoomRange$max2,_zoomRange$max2$fixed;if(!obj["zoomRange"])obj["zoomRange"]=Object(fp_["cloneDeep"])(zoomRange);if(!obj["zoomRange"].min&&((_zoomRange$min=zoomRange.min)===null||_zoomRange$min===void 0?void 0:(_zoomRange$min$fixed=_zoomRange$min.fixed)===null||_zoomRange$min$fixed===void 0?void 0:_zoomRange$min$fixed.value)!==undefined)obj["zoomRange"].min={fixed:{value:(_zoomRange$min2=zoomRange.min)===null||_zoomRange$min2===void 0?void 0:(_zoomRange$min2$fixed=_zoomRange$min2.fixed)===null||_zoomRange$min2$fixed===void 0?void 0:_zoomRange$min2$fixed.value}};if(!obj["zoomRange"].max&&((_zoomRange$max=zoomRange.max)===null||_zoomRange$max===void 0?void 0:(_zoomRange$max$fixed=_zoomRange$max.fixed)===null||_zoomRange$max$fixed===void 0?void 0:_zoomRange$max$fixed.value)!==undefined)obj["zoomRange"].max={fixed:{value:(_zoomRange$max2=zoomRange.max)===null||_zoomRange$max2===void 0?void 0:(_zoomRange$max2$fixed=_zoomRange$max2.fixed)===null||_zoomRange$max2$fixed===void 0?void 0:_zoomRange$max2$fixed.value}}}const currentZoomRange=obj["zoomRange"]||zoomRange||obj["visible"]&&obj["visible"]["zoomRange"];Object.keys(obj).forEach((key=>{if(obj[key]&&typeof obj[key]==="object")deepSetsZoomRange(obj[key],currentZoomRange)}))};const defaultZoomRange=new ZoomRange["a"]({min:{fixed:{value:0}},max:{fixed:{value:24}}});function*createLayerDraft(action){var _currentVisualization;const authorization=yield Object(effects_["select"])(LayerSaga_getAuthorization);const visualizations=yield Object(effects_["select"])(LayerSaga_getVisualizations);const data=yield Object(effects_["call"])(getLayer,action.payload.type,action.payload.partialLayer,authorization);const currentVisualization=visualizations.getCurrent();data._visualization=currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id;const zoomRange=(_currentVisualization=currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.zoomRange)!==null&&_currentVisualization!==void 0?_currentVisualization:defaultZoomRange;const layer=Object(external_class_transformer_["plainToClass"])(Layer_Layer,data);deepSetsZoomRange(layer,zoomRange);yield Object(effects_["put"])(Actions["a"].layer.createDraft.success(layer))}function*restoreAppVersionRequest(action){const authorization=yield Object(effects_["select"])((state=>state.authorization));try{const appResponse=yield Object(effects_["call"])(rollbackAppVersion,action.payload.appId,action.payload.version,authorization);yield Object(effects_["put"])(Actions["a"].app.restoreVersion.success(appResponse))}catch(e){yield Object(effects_["put"])(Actions["a"].app.restoreVersion.failure(e))}}function*restoreAppVersionSuccess(action){yield Object(effects_["put"])(Actions["a"].app.fetch.request({appId:action.payload.id}));Object(Toast["b"])("App restored successfully.")}function*restoreAppVersionFailure(){Object(Toast["a"])("App could not be restored.")}async function put(appId,visualizationIndex,layers,initialPosition,authorization){const plainLayers=Object(external_class_transformer_["classToPlain"])(layers);const res=await httpPut(src["a"].getValue("APP_API_ADDRESS"),`app/${appId}/visualization/${visualizationIndex}`,{layers:plainLayers,initialPosition},{},authorization);return res.json()}const saveVisualization=async(appId,visualizationIndex,layers,initialPosition,authorization)=>put(appId,visualizationIndex,layers,initialPosition,authorization);const VisualizationSaga_getAuthorization=state=>state.authorization;const VisualizationSaga_getVisualizations=state=>state.visualizations;function*saveVisualizationRequest(action){const authorization=yield Object(effects_["select"])(VisualizationSaga_getAuthorization);const visualizations=yield Object(effects_["select"])(VisualizationSaga_getVisualizations);const appStore=yield Object(effects_["select"])((state=>state.appStore));const currentVisualization=visualizations.getCurrent();const visualizationIndex=visualizations.getCurrentIndex();try{var _appStore$app;yield Object(effects_["call"])(saveVisualization,(_appStore$app=appStore.app)===null||_appStore$app===void 0?void 0:_appStore$app.id,visualizationIndex,action.payload.layers,currentVisualization.initialPosition,authorization);yield Object(effects_["put"])(Actions["a"].visualization.save.success())}catch(e){yield Object(effects_["put"])(Actions["a"].visualization.save.failure(e))}}function*saveVisualizationSuccess(){Object(Toast["b"])("App saved successfully.")}function*saveVisualizationFailure(action){Object(Toast["a"])(`App could not be saved. ${action.payload.message}`)}function*setCurrentPositionAsInitial(_){Object(Toast["b"])("Current position now is initial position")}function*fetchLatestAppVersion(){const appVersion=yield Object(effects_["select"])((state=>state.appStore.version));const appId=yield Object(effects_["select"])((state=>{var _state$appStore$app;return(_state$appStore$app=state.appStore.app)===null||_state$appStore$app===void 0?void 0:_state$appStore$app.id}));if(appVersion!==undefined){yield Object(effects_["put"])(Actions["a"].app.fetch.request({appId}))}}function takeLatestPerKey(patternOrChannel,worker,keySelector){for(var _len=arguments.length,args=new Array(_len>3?_len-3:0),_key=3;_key<_len;_key++){args[_key-3]=arguments[_key]}return Object(effects_["fork"])((function*(){const tasks={};while(true){const action=yield Object(effects_["take"])(patternOrChannel);const key=yield Object(effects_["call"])(keySelector,action);if(tasks[key]){yield Object(effects_["cancel"])(tasks[key])}tasks[key]=yield Object(effects_["fork"])(worker,...args,action)}}))}let RowsetStatus;(function(RowsetStatus){RowsetStatus["NONE"]="NONE";RowsetStatus["LOADING"]="LOADING";RowsetStatus["LOADED"]="LOADED";RowsetStatus["ERROR"]="ERROR"})(RowsetStatus||(RowsetStatus={}));function*createWorld(action){const visualizations=yield Object(effects_["select"])((_ref=>{let{visualizations}=_ref;return visualizations}));const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;const worlds=yield Object(effects_["select"])((_ref2=>{let{worlds}=_ref2;return worlds}));const currentWorld=worlds.getFromVisualization(currentVisualization.id);if(!currentWorld||currentWorld.isReady())return;const layers=yield Object(effects_["select"])((_ref3=>{let{layers}=_ref3;return layers}));const vizLayers=layers.getFromVisualization(currentVisualization.id);const rowsetsFromLayers=vizLayers.getRowsets(currentVisualization.getInitialZoom(),currentVisualization.id);const rowsetStore=yield Object(effects_["select"])((_ref4=>{let{rowsetStore}=_ref4;return rowsetStore}));const rowsetsStatus=rowsetsFromLayers.map((rowset=>{const isRowsetFromAction=action.payload.rowset.getId()===rowset.getId();if(isRowsetFromAction)return RowsetStatus.NONE;return rowsetStore.getStatus(rowset)}));if(rowsetsStatus.every((rowsetStatus=>rowsetStatus!==RowsetStatus.LOADING))){const rowsets=new Rowsets_Rowsets(...rowsetsFromLayers.map((rowset=>rowsetStore.getRowset(rowset.getId()))));const unifedScaleDomain=rowsets.getUnifiedScaleDomains();const world=currentWorld.setScaleDomains(unifedScaleDomain);return yield Object(effects_["put"])(Actions["a"].world.worldCreated({world}))}}function*logError(action){internals_src["c"].error(action.payload.reason,action.payload.exception);yield}let lastTime=new Date;function*log(action){if(internals_src["a"].isDebugging()&&action.type!=="LAYER_MOUSE_LEFT"&&action.type!=="LAYER_MOUSE_HOVER"){const currentTime=new Date;internals_src["c"].debug("action interval",currentTime.getTime()-lastTime.getTime());lastTime=currentTime;internals_src["c"].debug("action",action)}yield}function selectRowsetId(action){return action.payload.rowset.getId()}function*appSaga(){yield Object(effects_["takeEvery"])(Actions["a"].apps.appsLoaded,fetchApps);yield Object(effects_["takeEvery"])(Actions["a"].apps.appsLoaded,fetchTemplates);yield Object(effects_["takeEvery"])(Actions["a"].app.appPageLoaded,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].template.createApp.request,createTemplateApps);yield Object(effects_["takeEvery"])(Actions["a"].hoc.hocUpdated,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].hoc.hocLoaded,fetchApp);yield Object(effects_["takeLatest"])(Actions["a"].filter.filterToggle,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].filter.filterSearch,fetchFilterSuggestions);yield Object(effects_["takeEvery"])(Actions["a"].filter.sidebarFiltersClear,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].visualization.changeTab,fetchLatestAppVersion);yield Object(effects_["takeLatest"])(Actions["a"].layer.encodingPositionChanged,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].layer.visibilityChanged,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].layer.queryChanged,refreshData);yield Object(effects_["debounce"])(100,Actions["a"].navigation.zoomInRequested,refreshData);yield Object(effects_["debounce"])(100,Actions["a"].navigation.zoomOutRequested,refreshData);yield Object(effects_["debounce"])(100,Actions["a"].view.viewZooming,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].view.viewDragEnd,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].dataBrowser.navigateToPosition,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].navigation.levelChangeRequested,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].view.viewLoaded,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].view.jumpViewLoaded,refreshData);yield Object(effects_["takeEvery"])(Actions["a"].update.subscribe,subscribeForUpdates);yield Object(effects_["takeEvery"])(Actions["a"].query.dataListUpdated,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowSaved,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowSaved,fetchDataBrowsersRows);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowSaved,showRowSavedFeedback);yield Object(effects_["takeLatest"])(Actions["a"].rowset.optimisticRowSaved,showRowSavedFeedback);yield Object(effects_["takeLatest"])(Actions["a"].root.genericError,showGenericErrorFeedback);yield Object(effects_["takeEvery"])(Actions["a"].layer.createDraft.request,createLayerDraft);yield Object(effects_["takeLatest"])(Actions["a"].visualization.save.request,saveVisualizationRequest);yield Object(effects_["takeLatest"])(Actions["a"].visualization.save.success,saveVisualizationSuccess);yield Object(effects_["takeLatest"])(Actions["a"].visualization.save.failure,saveVisualizationFailure);yield Object(effects_["takeLatest"])(Actions["a"].app.restoreVersion.request,restoreAppVersionRequest);yield Object(effects_["takeLatest"])(Actions["a"].app.restoreVersion.success,restoreAppVersionSuccess);yield Object(effects_["takeLatest"])(Actions["a"].app.restoreVersion.failure,restoreAppVersionFailure);yield Object(effects_["takeEvery"])(Actions["a"].layer.dragEnded,updateRow);yield Object(effects_["takeLatest"])(Actions["a"].layer.imageUploaded,updateRow);yield Object(effects_["takeLatest"])(Actions["a"].layer.imageTransformed,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowPlaced,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowChanged,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowUnplaced,updateRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.fetchDataBrowserRows,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.dataBrowserSearch,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.paginateNext,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.paginatePrev,fetchDataBrowserRows);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowCreate.requested,createRow);yield Object(effects_["takeEvery"])(Actions["a"].dataBrowser.rowDelete.requested,deleteRow);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowCreated,fetchDataBrowsersRows);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowDeleted,fetchDataBrowsersRows);yield Object(effects_["takeLatest"])(Actions["a"].rowset.rowDeleted,refreshData);yield Object(effects_["takeLatest"])(Actions["a"].app.fetch.success,fetchDataBrowsersRows);yield Object(effects_["takeEvery"])(Actions["a"].rowset.rowSaved,fetchRow);yield takeLatestPerKey(Actions["a"].rowset.fetchDataRequested,fetchData,selectRowsetId);yield Object(effects_["takeEvery"])(Actions["a"].app.fetch.request,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].app.discardChanges.request,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].app.checkoutVersion.request,fetchApp);yield Object(effects_["takeEvery"])(Actions["a"].app.fetch.success,notifyPageView);yield Object(effects_["takeEvery"])(Actions["a"].app.delete.request,deleteAppSaga);yield Object(effects_["takeEvery"])(Actions["a"].app.save.request,updateAppNameSaga);yield Object(effects_["takeEvery"])(Actions["a"].auth.signedIn,notifyLogin);yield Object(effects_["takeEvery"])(Actions["a"].analytics.analyticsEvent,notifyEngagement);yield Object(effects_["debounce"])(100,Actions["a"].view.viewZooming,notifyViewZooming);yield Object(effects_["takeLatest"])(Actions["a"].view.viewDragEnd,notifyViewDragging);yield Object(effects_["takeEvery"])(Actions["a"].visualization.rowJumpRequested,notifyJump);yield Object(effects_["takeEvery"])(Actions["a"].visualization.jumpRequested,notifyJump);yield Object(effects_["all"])([Object(effects_["takeEvery"])("*",log)]);yield Object(effects_["all"])([Object(effects_["takeEvery"])("ERROR",logError)]);yield Object(effects_["takeEvery"])(Actions["a"].app.fetch.failure,logError);yield Object(effects_["takeEvery"])(Actions["a"].rowset.fetchData.failure,logError);yield Object(effects_["takeEvery"])(Actions["a"].root.genericError,logError);yield Object(effects_["takeEvery"])(Actions["a"].visualization.setInitialPosition,setCurrentPositionAsInitial);yield Object(effects_["takeLatest"])(Actions["a"].rowset.fetchData.success,createWorld)}var external_redux_persist_=__webpack_require__(116);const ZOOM_JUMP_SIZE=1;function ViewStateReducer_reducer(state,action){var _action$payload;if(state==null){return new view_state_ViewStates}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new view_state_ViewStates;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.viewStates||state;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.jumpViewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewDragEnd):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewZooming):return action.payload.viewStates||state;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewStateChanged):return state.withUpdatedViewState(action.payload.viewState);case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.zoomInRequested):return state.zoom(action.payload.visualizationId,ZOOM_JUMP_SIZE);case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.zoomOutRequested):return state.zoom(action.payload.visualizationId,-ZOOM_JUMP_SIZE);case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.levelChangeRequested):return state.updateZ(action.payload.visualizationId,action.payload.level);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.navigateToPosition):return state.transitionToPosition(action.payload.visualizationId,{coordinates:action.payload.coordinates,zoom:(_action$payload=action.payload)===null||_action$payload===void 0?void 0:_action$payload.zoom},action.payload.duration);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowPlaced):if(action.payload.row._z!==undefined){return state.updateZ(action.payload.visualizationId,action.payload.row._z)}return state;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if(action.payload.viewStates){return action.payload.viewStates}return state;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return state.resetPosition(action.payload.toVisualization.id);default:return state}}var ViewStateReducer=ViewStateReducer_reducer;class Tooltip{constructor(props){this.row=void 0;this.rowsetId=void 0;this.layerId=void 0;this.visible=void 0;this.coordinates=void 0;this.fixed=void 0;Object.assign(this,props);if(this.visible===undefined)this.visible=true}clone(){return new Tooltip(this)}getCoordinates(){return this.coordinates}isFixed(){return this.fixed}immutableSetFixed(){const cloned=this.clone();cloned.fixed=true;return cloned}immutableMoveCoordinates(deltas){const cloned=this.clone();cloned.coordinates.move(deltas.x,deltas.y,deltas.z);return cloned}immutableSetCoordinates(x,y){const cloned=this.clone();cloned.coordinates.x=x!==null&&x!==void 0?x:this.coordinates.x;cloned.coordinates.y=y!==null&&y!==void 0?y:this.coordinates.y;return cloned}immutableSetVisibility(visible){const cloned=this.clone();cloned.visible=visible;return cloned}}var TooltipModel=Tooltip;function TooltipReducer_reducer(state,action){var _action$payload$pixel,_action$payload$pixel2;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.clickOut):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appEditToggle):case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnplaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.click):return new TooltipModel({layerId:action.payload.layerId,row:action.payload.row,coordinates:action.payload.pixel,fixed:true,rowsetId:action.payload.rowsetId});case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.mouseHover):if(state!==null&&state!==void 0&&state.isFixed())return state;return new TooltipModel({layerId:action.payload.layerId,row:action.payload.row,coordinates:action.payload.pixel,fixed:false,rowsetId:action.payload.rowsetId});case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.mouseLeft):if(state&&state.isFixed())return state;return;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewDragEnd):if(!state)return;if(state&&action.payload.displacementDelta){return state.immutableMoveCoordinates(action.payload.displacementDelta).immutableSetVisibility(true)}return state.immutableSetVisibility(true);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragEnded):if(!state)return;return state.immutableSetCoordinates((_action$payload$pixel=action.payload.pixel)===null||_action$payload$pixel===void 0?void 0:_action$payload$pixel.x,(_action$payload$pixel2=action.payload.pixel)===null||_action$payload$pixel2===void 0?void 0:_action$payload$pixel2.y).immutableSetVisibility(true);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragStart):if(!state||state.layerId!==action.payload.layerId)return;return state.immutableSetVisibility(false);case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewDragStart):if(!state)return;return state.immutableSetVisibility(false);case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewZooming):return;default:return state}}var TooltipReducer=TooltipReducer_reducer;class RowsetStore_RowsetStore{constructor(){let rowsets=arguments.length>0&&arguments[0]!==undefined?arguments[0]:{};let status=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};this.rowsets={};this.status={};Object.assign(this.rowsets,rowsets);Object.assign(this.status,status)}add(rowset){if(!rowset)return;this.rowsets[rowset.getId()]=rowset;this.status[rowset.getId()]=RowsetStatus.NONE}immutableAdd(rowset){const clonedRowsetStore=this.clone();clonedRowsetStore.add(rowset);return clonedRowsetStore}invalidate(data){const rowsetsArray=new Rowsets_Rowsets(...Object.values(this.rowsets));for(const rowset of rowsetsArray.withData(data)){var _this$rowsets$rowset$;(_this$rowsets$rowset$=this.rowsets[rowset.getId()].fetchState)===null||_this$rowsets$rowset$===void 0?void 0:_this$rowsets$rowset$.invalidate()}}immutableInvalidate(data){const cloned=this.clone();cloned.invalidate(data);return cloned}invalidateAll(){for(const rowset of Object.values(this.rowsets)){var _this$rowsets$rowset$2;(_this$rowsets$rowset$2=this.rowsets[rowset.getId()].fetchState)===null||_this$rowsets$rowset$2===void 0?void 0:_this$rowsets$rowset$2.invalidate()}}immutableInvalidateAll(){const cloned=this.clone();cloned.invalidateAll();return cloned}getStatus(rowset){if(!(rowset!==null&&rowset!==void 0&&rowset.getId())||!this.status[rowset.getId()]){return RowsetStatus.NONE}else{return this.status[rowset.getId()]}}clone(){return new RowsetStore_RowsetStore(this.rowsets,this.status)}getRowsetsToFetchAgain(viewState,world){const rowsets=Object.values(this.rowsets).filter((rowset=>rowset.fetchState&&rowset.fetchState.shouldFetch(viewState,world)));return new Rowsets_Rowsets(...rowsets)}getRowsets(){return new Rowsets_Rowsets(...Object.values(this.rowsets))}getRowset(rowsetId){return this.rowsets[rowsetId]}getEmptyRowsets(){const rowsets=Object.values(this.rowsets).filter((rowset=>!rowset.rows));return new Rowsets_Rowsets(...rowsets)}getByTargetRowset(rowset){if(!rowset)return;return this.rowsets[rowset.getId()]}updateRow(rowsetId,row,rowDiff){const clonedRowsetStore=this.clone();if(!rowsetId)return clonedRowsetStore;const newRow=new dataset_src["f"]({...row,...rowDiff});clonedRowsetStore.rowsets[rowsetId].updateRow(newRow);return clonedRowsetStore}immutableSetStatusLoading(rowset){const cloned=this.clone();cloned.status[rowset.getId()]=RowsetStatus.LOADING;return cloned}someLoading(){return!Object(fp_["isEmpty"])(this.status)&&Object(fp_["some"])(Object(fp_["equals"])(RowsetStatus.LOADING),this.status)}noneFilled(){return Object(fp_["isEmpty"])(this.status)}immutableSetStatus(rowsets,status){const cloned=this.clone();rowsets.forEach((rowset=>{cloned.status[rowset.getId()]=status}));return cloned}everyWithError(){return!Object(fp_["isEmpty"])(this.status)&&Object(fp_["every"])(Object(fp_["equals"])(RowsetStatus.ERROR),this.status)}}const RowsetReducer_reducer=(rowsetStore,action)=>{if(!rowsetStore){return new RowsetStore_RowsetStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):return new RowsetStore_RowsetStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterToggle):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.sidebarFiltersClear):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowPlaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowSaved):case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowDeleted):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnplaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.navigateToPosition):case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.levelChangeRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingPositionChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.visibilityChanged):return rowsetStore.immutableInvalidateAll();case Object(external_typesafe_actions_["getType"])(Actions["a"].query.dataListUpdated):{const mutatedRowsetStore=rowsetStore.clone();for(const data of action.payload.dataList){mutatedRowsetStore.invalidate(data)}return mutatedRowsetStore}case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.fetchData.request):return rowsetStore.immutableSetStatusLoading(action.payload.rowset);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.fetchData.success):return rowsetStore.immutableAdd(action.payload.rowset);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageEditing):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageTransformed):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageUploaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragEnded):return rowsetStore.updateRow(action.payload.rowsetId,action.payload.row,action.payload.rowDiff);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.fetchData.failure):if(action.payload.rowset){return rowsetStore.immutableSetStatus(new Rowsets_Rowsets(action.payload.rowset),RowsetStatus.ERROR)}return rowsetStore;default:return rowsetStore}};var RowsetReducer=RowsetReducer_reducer;function createFilter(payload){return new CategoricalFilter_SimpleFilter({hidden:true,exactMatch:true,field:payload.targetField.name||payload.field.name,values:[payload.field.value],visualizationId:payload.toVisualization.id})}const FilterReducer_reducer=(filterState,action)=>{var _action$payload$excep,_action$payload$excep2,_action$payload$fromV;if(!filterState){return new domain_Filters}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new domain_Filters;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.sidebarFiltersClear):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterToggle):return action.payload.filters;case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterSearch):case Object(external_typesafe_actions_["getType"])(Actions["a"].filter.filterSearchFetched):return filterState.update(action.payload.filter);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return filterState.upsert(createFilter(action.payload));case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&!((_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError())){return action.payload.filters}return filterState;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):return filterState.withoutHiddenFromVisualizations((_action$payload$fromV=action.payload.fromVisualization)===null||_action$payload$fromV===void 0?void 0:_action$payload$fromV.id);default:return filterState}};var FilterReducer=FilterReducer_reducer;const LayerReducer_reducer=(layers,action,globalState)=>{var _action$payload$excep,_action$payload$excep2,_globalState$querySto2;if(!layers){return new Layers_Layers}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new Layers_Layers;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.layers.fillScaleTypes(action.payload.queries).fillRefZooms();case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.visibilityChanged):return layers.changeLayer(action.payload.id,{visible:action.payload.visible}).fillRefZooms();case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.queryChanged):{const data={query:action.payload.query.name,source:action.payload.query.dataSource};return layers.changeLayer(action.payload.id,{data})}case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.transformChanged):return layers.changeLayer(action.payload.id,{transform:action.payload.transform});case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.animationChanged):return layers.changeAnimation(action.payload.id,action.payload.params);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.createDraft.success):{var _globalState$querySto;return layers.upsertLayer(action.payload).fillScaleTypes((_globalState$querySto=globalState.queryStore)===null||_globalState$querySto===void 0?void 0:_globalState$querySto.queries)}case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&!((_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError())){return action.payload.layers}return layers;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.nameChanged):return layers.changeLayerName(action.payload.layerId,action.payload.name);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.move):return layers.moveLayer(action.payload.id,action.payload.steps);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.delete):return layers.deleteLayer(action.payload.id);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingChanged):return layers.changeEncoding(action.payload.id,action.payload.encoding,action.payload.type).fillScaleTypes((_globalState$querySto2=globalState.queryStore)===null||_globalState$querySto2===void 0?void 0:_globalState$querySto2.queries);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):return layers.updateLastModified();default:return layers}};const selectedLayerIdReducer=(layers,action)=>{switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.createDraft.success):return action.payload.id;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.select):return action.payload.id;default:return layers}};var LayerReducer=LayerReducer_reducer;var QueryStore=__webpack_require__(53);const QueryReducer_reducer=(queryStore,action)=>{var _action$payload$query;if(!queryStore){return new QueryStore["b"]}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new QueryStore["b"];case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return queryStore.setQueries(action.payload.queries);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if(action.payload.exception.type===AppApiErrorType.FETCHING_TABLE){return queryStore.setStatus(QueryStore["a"].tableFetchingError)}else if(action.payload.queries){return queryStore.setQueries(action.payload.queries)}return queryStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return(new QueryStore["b"]).setLoaders((_action$payload$query=action.payload.queryLoaders)!==null&&_action$payload$query!==void 0?_action$payload$query:[]);default:return queryStore}};var QueryReducer=QueryReducer_reducer;function VisualizationsReducer_reducer(visualizationsState,action){var _action$payload$excep,_action$payload$excep2;if(visualizationsState==null){return new visualization_Visualizations}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new visualization_Visualizations;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appPageLoaded):return visualizationsState.setSelected(action.payload.params.visualization);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return visualizationsState.set(action.payload.visualizations);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):return visualizationsState.setSelected(action.payload.toVisualization.id);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&!((_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError())){return visualizationsState.set(action.payload.visualizations)}return visualizationsState;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.setInitialPosition):return visualizationsState.setInitialPosition(action.payload);default:return visualizationsState}}var VisualizationsReducer=VisualizationsReducer_reducer;class JumpStore{constructor(params){var _params$navigationPat;this.enabled=void 0;this.data=void 0;this.navigationPath=void 0;this.enabled=params===null||params===void 0?void 0:params.enabled;this.data=params===null||params===void 0?void 0:params.data;this.navigationPath=(_params$navigationPat=params===null||params===void 0?void 0:params.navigationPath)!==null&&_params$navigationPat!==void 0?_params$navigationPat:[]}addToNavigationPath(vizId){const cloned=new JumpStore(this);if(vizId){cloned.navigationPath=[...cloned.navigationPath,vizId]}return cloned}removeLastNavigation(){const cloned=new JumpStore(this);cloned.navigationPath=cloned.navigationPath.slice(0,-1);return cloned}previousVisualization(){if(!this.navigationPath.length)return;return this.navigationPath[this.navigationPath.length-1]}}var state_JumpStore=JumpStore;const JumpReducer_reducer=(jumpState,action)=>{var _action$payload$fromV;if(!jumpState){return new state_JumpStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new state_JumpStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):return new state_JumpStore({...jumpState,enabled:false,data:null});case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return new state_JumpStore({...jumpState,enabled:false}).addToNavigationPath((_action$payload$fromV=action.payload.fromVisualization)===null||_action$payload$fromV===void 0?void 0:_action$payload$fromV.id);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpBackRequested):return new state_JumpStore({...jumpState,enabled:false}).removeLastNavigation();default:return jumpState}};var JumpReducer=JumpReducer_reducer;const DataBrowserReducer_reducer=(state,action)=>{var _state$getByData,_state$getByData2;if(!state){return new data_browser_DataBrowsers}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new data_browser_DataBrowsers;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.dataBrowsers;case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.dataBrowserRowsFetched):return state.immutableSetRows(action.payload.dataBrowserId,action.payload.rows,action.payload.offset,action.payload.lastPage);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.fetchDataBrowserRows):return state.immutableSetStatus(action.payload.dataBrowser.getId(),DataBrowserRowsetStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowSelected):return state.immutableSetSelectedRow(action.payload.dataBrowserId,action.payload.row);case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnselected):return state.immutableSetSelectedRow(action.payload.dataBrowserId,undefined);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowCreated):case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowFetched):return state.immutableSetSelectedRow((_state$getByData=state.getByData(action.payload.data))===null||_state$getByData===void 0?void 0:_state$getByData.getId(),action.payload.row);case Object(external_typesafe_actions_["getType"])(Actions["a"].rowset.rowDeleted):return state.immutableSetSelectedRow((_state$getByData2=state.getByData(action.payload.data))===null||_state$getByData2===void 0?void 0:_state$getByData2.getId());case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.dataBrowserSearch):return state.immutableSetSearch(action.payload.dataBrowser.getId(),action.payload.dataBrowser.search);default:return state}};var DataBrowserReducer=DataBrowserReducer_reducer;class Authorization{constructor(params){var _params$signOut,_params$changeTenant;this.accessToken=void 0;this.tenants=void 0;this.tenant=void 0;this.permissions=void 0;this.email=void 0;this.signOut=void 0;this.changeTenant=void 0;this.accessToken=params.accessToken;this.tenant=params.tenant;this.tenants=params.tenants;this.email=params.email;this.permissions=params.permissions;this.signOut=(_params$signOut=params.signOut)!==null&&_params$signOut!==void 0?_params$signOut:()=>undefined;this.changeTenant=(_params$changeTenant=params.changeTenant)!==null&&_params$changeTenant!==void 0?_params$changeTenant:()=>undefined}static createEmpty(){return new Authorization({accessToken:"",tenant:"",tenants:[],email:"",permissions:[],signOut:()=>undefined,changeTenant:()=>undefined})}canEditApp(){return this.permissions.includes("app:write")}canEditRow(){return this.permissions.includes("row:write")}canListApps(){return this.permissions.includes("app:list")}containsTenant(tenant){var _this$tenants;return!!((_this$tenants=this.tenants)!==null&&_this$tenants!==void 0&&_this$tenants.length)&&this.tenants.includes(tenant)}static fromM2mToken(params){return new Authorization({accessToken:params.accessToken,tenant:params.tenant,permissions:params.permissions,tenants:params.tenants,email:"",signOut:()=>undefined,changeTenant:()=>undefined})}}const AuthReducer_reducer=(state,action)=>{if(!state){return Authorization.createEmpty()}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].auth.signedIn):return new Authorization(action.payload);case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return Authorization.fromM2mToken({accessToken:action.payload.accessToken,tenant:action.payload.tenant,tenants:action.payload.tenants,permissions:action.payload.permissions});default:return state}};var AuthReducer=AuthReducer_reducer;const LegendReducer_reducer=(legendState,action)=>{if(!legendState){return new Legends}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new Legends;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.legends;default:return legendState}};var LegendReducer=LegendReducer_reducer;const AxesReducer_reducer=(state,action)=>{if(!state){return new AxesList}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new AxesList;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.axesList;default:return state}};var AxesReducer=AxesReducer_reducer;var AppStore=__webpack_require__(33);const appReducer=(state,action)=>{var _action$payload$excep,_action$payload$excep2;if(!state)return new AppStore["b"];switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new AppStore["b"](undefined,undefined,undefined);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.checkoutVersion.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.discardChanges.request):return state.setStatus(AppStore["a"].loading);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return state.updateApp(action.payload.app,action.payload.history).setVersion(action.payload.version);case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return new AppStore["b"](new App_App({id:action.payload.appId}));case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appPageLoaded):return state.updateApp(new App_App({id:action.payload.params.appId}));case Object(external_typesafe_actions_["getType"])(Actions["a"].app.appEditToggle):return state.setEditing(action.payload.isEditing);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):if((_action$payload$excep=action.payload.exception)!==null&&_action$payload$excep!==void 0&&_action$payload$excep.isAppResourceError&&(_action$payload$excep2=action.payload.exception)!==null&&_action$payload$excep2!==void 0&&_action$payload$excep2.isAppResourceError()){return state.setStatus(AppStore["a"].fetchingError)}else if(action.payload.app){return state.updateApp(action.payload.app)}return state;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.request):return state.setStatus(AppStore["a"].deleting);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.save.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.save.request):case Object(external_typesafe_actions_["getType"])(Actions["a"].template.createApp.request):return state.setStatus(AppStore["a"].saving);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.save.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.save.failure):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.failure):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.save.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.save.failure):return state.setStatus(AppStore["a"].updated);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.restoreVersion.request):return state.setStatus(AppStore["a"].restoringVersion);case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.visibilityChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.animationChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.queryChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.transformChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingPositionChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.encodingChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.nameChanged):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.delete):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.move):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.createDraft.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.setInitialPosition):return state.setStatus(AppStore["a"].dirty);default:return state}};const SchemaReducer_reducer=(schema,action)=>{if(!schema){return{}}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return{};case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return action.payload.schema;default:return schema}};var SchemaReducer=SchemaReducer_reducer;const viewControllerReducer=(state,action)=>{if(!state)return new ViewControllers_ViewControllers;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new ViewControllers_ViewControllers;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):return action.payload.viewControllers;case Object(external_typesafe_actions_["getType"])(Actions["a"].navigation.bearingModeToggle):return state.immutableToggleDragMode(action.payload.visualizationId);default:return state}};const encodingScopeReducer=(state,action)=>{if(!state){return encoding_src["c"]}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].hoc.hocUpdated):return encoding_src["c"];case Object(external_typesafe_actions_["getType"])(Actions["a"].encodingScope.changed):return action.payload.scope;default:return state}};let TemplateStoreStatus;(function(TemplateStoreStatus){TemplateStoreStatus["NONE"]="NONE";TemplateStoreStatus["LOADING"]="LOADING";TemplateStoreStatus["UPDATED"]="UPDATED";TemplateStoreStatus["ERROR"]="ERROR"})(TemplateStoreStatus||(TemplateStoreStatus={}));class TemplateStore{constructor(){let templates=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];let status=arguments.length>1?arguments[1]:undefined;this.templates=void 0;this.status=void 0;this.templates=templates;this.status=status!==null&&status!==void 0?status:TemplateStoreStatus.NONE}clone(){return new TemplateStore(this.templates,this.status)}immutableSetStatus(value){const cloned=this.clone();cloned.status=value;return cloned}isLoading(){return this.status===TemplateStoreStatus.LOADING}}const templateReducer=(state,action)=>{if(!state){return new TemplateStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].template.fetchTemplates.request):return state.immutableSetStatus(TemplateStoreStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].template.fetchTemplates.success):return new TemplateStore(action.payload.templates,TemplateStoreStatus.UPDATED);case Object(external_typesafe_actions_["getType"])(Actions["a"].template.fetchTemplates.failure):return new TemplateStore([],TemplateStoreStatus.ERROR);default:return state}};class ViewLayerStore{constructor(selectedRow){this.selectedRow=void 0;this.selectedRow=selectedRow}clone(){return new ViewLayerStore(this.selectedRow)}immutableSetSelectedRow(layerId,rowsetId,updatingRow){const cloned=this.clone();cloned.selectedRow={layerId,rowsetId,updatingRow};return cloned}immutableRemoveSelectedRow(){const cloned=this.clone();cloned.selectedRow=undefined;return cloned}}function viewLayerReducer(state,action){if(!state){return new ViewLayerStore}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new ViewLayerStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.clickOut):case Object(external_typesafe_actions_["getType"])(Actions["a"].dataBrowser.rowUnplaced):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragEnded):return state.immutableRemoveSelectedRow();case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.click):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.dragStart):case Object(external_typesafe_actions_["getType"])(Actions["a"].layer.imageUploaded):return state.immutableSetSelectedRow(action.payload.layerId,action.payload.rowsetId,{...action.payload.row,...action.payload.rowDiff});default:return state}}let AppHistoryStatus;(function(AppHistoryStatus){AppHistoryStatus["IDLE"]="IDLE";AppHistoryStatus["LOADING"]="LOADING"})(AppHistoryStatus||(AppHistoryStatus={}));class AppHistory_AppHistory extends Array{clone(){return new AppHistory_AppHistory(...Object(fp_["clone"])(this))}constructor(){super(...arguments);this.status=void 0;this.status=AppHistoryStatus.IDLE}immutableSetStatus(status){const cloned=this.clone();cloned.status=status;return cloned}}const appHistoryReducer=(state,action)=>{if(!state)return new AppHistory_AppHistory(...[]);switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.request):return state.immutableSetStatus(AppHistoryStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):return new AppHistory_AppHistory(...action.payload.history);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):return state.immutableSetStatus(AppHistoryStatus.IDLE);default:return state}};class ProjectorStore_ProjectorStore{constructor(){this.projectors=void 0}clone(){const cloned=new ProjectorStore_ProjectorStore;cloned.projectors=this.projectors;return cloned}getFromVisualization(visualizationId){if(!visualizationId)return;return this.projectors&&this.projectors[visualizationId]}immutableSet(projector,visualizationId){const cloned=this.clone();cloned.projectors[visualizationId]=projector;return cloned}setProjectorFromWorld(world){if(!world)return;const unifiedScaleDomains=world.getMaximizedScaleDomains();const worldBox=world===null||world===void 0?void 0:world.box();if(!worldBox||!unifiedScaleDomains)return;const projector=new projector_src["b"](unifiedScaleDomains,worldBox);this.projectors={...this.projectors,[world.visualizationId]:projector}}immutableClearFromVisualization(visualizationId){const cloned=this.clone();if(cloned.projectors[visualizationId])delete cloned.projectors[visualizationId];return cloned}immutableUpdateWorld(world){const cloned=this.clone();if(!world)return cloned;cloned.setProjectorFromWorld(world);return cloned}}function projectorReducer(state,action){if(!state)return new ProjectorStore_ProjectorStore;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new ProjectorStore_ProjectorStore;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.jumpViewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].world.worldCreated):return state.immutableUpdateWorld(action.payload.world);case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return state.immutableClearFromVisualization(action.payload.toVisualization.id);default:return state}}const appsReducer=(state,action)=>{if(!state)return new state_AppsStore;switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return(new state_AppsStore).immutableSetStatus(AppsStatus.LOADING);case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.fetchApps.success):return action.payload.appsStore.immutableSetStatus(AppsStatus.UPDATED);case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.fetchApps.failure):return(new state_AppsStore).immutableSetStatus(AppsStatus.ERROR);case Object(external_typesafe_actions_["getType"])(Actions["a"].app.delete.success):return state.immutableRemoveApp(action.payload.appId);default:return state}};const worldReducer=(state,action)=>{var _action$payload$world;if(!state){return new Worlds}switch(action.type){case Object(external_typesafe_actions_["getType"])(Actions["a"].apps.appsLoaded):return new Worlds;case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.success):case Object(external_typesafe_actions_["getType"])(Actions["a"].app.fetch.failure):return(_action$payload$world=action.payload.worlds)!==null&&_action$payload$world!==void 0?_action$payload$world:state;case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewResized):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.jumpViewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].view.viewLoaded):case Object(external_typesafe_actions_["getType"])(Actions["a"].world.worldCreated):return action.payload.world?state.immutableUpdateWorld(action.payload.world):state;case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.jumpRequested):case Object(external_typesafe_actions_["getType"])(Actions["a"].visualization.rowJumpRequested):return state.immutableResetWorldFromVisualization(action.payload.toVisualization.id);default:return state}};const getEnhancer=sagaMiddleware=>{if(internals_src["a"].isDebugging()&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__){return Object(external_redux_["compose"])(Object(external_redux_["applyMiddleware"])(sagaMiddleware),window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__())}return Object(external_redux_["applyMiddleware"])(sagaMiddleware)};function getStore(){const childReducers={visualizations:VisualizationsReducer,tooltip:TooltipReducer,rowsetStore:RowsetReducer,filters:FilterReducer,layers:LayerReducer,selectedLayerId:selectedLayerIdReducer,queryStore:QueryReducer,jump:JumpReducer,dataBrowsers:DataBrowserReducer,authorization:AuthReducer,legends:LegendReducer,viewStates:ViewStateReducer,appStore:appReducer,appsStore:appsReducer,appHistory:appHistoryReducer,schema:SchemaReducer,axesList:AxesReducer,viewControllers:viewControllerReducer,templates:templateReducer,encodingScope:encodingScopeReducer,viewLayers:viewLayerReducer,projectorStore:projectorReducer,worlds:worldReducer};const sagaMiddleware=external_redux_saga_default()();const enhancer=getEnhancer(sagaMiddleware);const store=Object(external_redux_["createStore"])(reducer(childReducers),enhancer);Object(external_redux_persist_["persistStore"])(store);sagaMiddleware.run(appSaga);UpdateWatcher_UpdateWatcher.configure(store.dispatch);return store}const StoreContext=external_react_default.a.createContext(null);var Store=__webpack_exports__["b"]=getStore},function(module,exports){module.exports=require("@mui/icons-material")},function(module,exports){module.exports=require("react-redux")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return CARTESIAN_VIEW_PADDING}));__webpack_require__.d(__webpack_exports__,"a",(function(){return AXES_PADDING}));const CARTESIAN_VIEW_PADDING=50;const AXES_PADDING=25},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return SizeEncoding}));var lodash_fp__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_0__);var d3__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(22);var d3__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(d3__WEBPACK_IMPORTED_MODULE_1__);const pixelToCommon=(pixel,zoom)=>pixel/Math.pow(2,zoom);const commonToPixel=(commonSize,zoom)=>commonSize*Math.pow(2,zoom);class SizeEncoding{constructor(props){this.field=void 0;this.value=void 0;this.scale=void 0;this.animation=void 0;this.createdTimestamp=void 0;this.resize=void 0;Object.assign(this,props);this.createdTimestamp=new Date}getUnits(){if(this.isCommon())return"common";return"pixels"}getRange(columnDomain,range){if(!range)return[];const rangeValues=[range[0],range[1]];if(!rangeValues)return[];if(columnDomain.length===rangeValues.length)return rangeValues;const stepsArray=Array.from({length:columnDomain.length},((_,i)=>i+1));const scale=d3__WEBPACK_IMPORTED_MODULE_1__["scaleLinear"]().domain([stepsArray[0],stepsArray[stepsArray.length-1]]).range([rangeValues[0],rangeValues[rangeValues.length-1]]);return stepsArray.map((step=>{var _scale;return(_scale=scale(step))!==null&&_scale!==void 0?_scale:step}))}getScaleValue(value,columnDomain,range){const discreteRange=this.getRange(columnDomain,range);return d3__WEBPACK_IMPORTED_MODULE_1__["scaleQuantile"]().domain(columnDomain).range(discreteRange)(value)}getSize(columnValue,columnDomain){let value=columnValue;if(Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(columnValue)&&columnDomain&&this.scale){value=this.getScaleValue(columnValue,columnDomain,this.scale.range)}if(!Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(value)&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(this.value)){value=this.value}if(!value){value=0}if(this.isCommon()){var _this$resize;return pixelToCommon(value,(_this$resize=this.resize)===null||_this$resize===void 0?void 0:_this$resize.referenceZoom)}return value}hasField(){return!!this.field}getField(){return this.field}setField(fieldName){this.field=fieldName}isCommon(){var _this$resize2;return typeof((_this$resize2=this.resize)===null||_this$resize2===void 0?void 0:_this$resize2.referenceZoom)==="number"}isPixels(){return!this.isCommon()}getMinPixels(){var _this$resize3;let factor=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;if(this.isCommon()&&(_this$resize3=this.resize)!==null&&_this$resize3!==void 0&&_this$resize3.referenceZoom){return commonToPixel(this.getSize(),this.resize.referenceZoom)*factor}}getMaxPixels(){var _this$resize4;let factor=arguments.length>0&&arguments[0]!==undefined?arguments[0]:1;if(this.isCommon()&&(_this$resize4=this.resize)!==null&&_this$resize4!==void 0&&_this$resize4.maxZoom){return commonToPixel(this.getSize(),this.resize.maxZoom)*factor}}isRenderable(){return!!(this.field&&this.scale)||Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(this.value)}isEnabled(){return this.isRenderable()}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return AppStatus}));let AppStatus;(function(AppStatus){AppStatus["idle"]="idle";AppStatus["loading"]="loading";AppStatus["dirty"]="dirty";AppStatus["updated"]="updated";AppStatus["fetchingError"]="fetchingError";AppStatus["deleting"]="deleting";AppStatus["saving"]="saving";AppStatus["viewingVersion"]="viewingVersion";AppStatus["restoringVersion"]="restoringVersion"})(AppStatus||(AppStatus={}));class AppStore{constructor(app,status,history,editing,version){this.app=void 0;this.history=void 0;this.status=void 0;this.isEditing=void 0;this.version=void 0;this.app=app;this.status=status!==null&&status!==void 0?status:AppStatus.idle;this.isEditing=editing!==null&&editing!==void 0?editing:false;this.history=history!==null&&history!==void 0?history:[];this.version=version}updateApp(app,history){return new AppStore(app,AppStatus.updated,history!==null&&history!==void 0?history:this.history,this.isEditing,this.version)}setStatus(status){return new AppStore(this.app,status,this.history,this.isEditing,this.version)}setEditing(editing){return new AppStore(this.app,this.status,this.history,editing,this.version)}setVersion(version){return new AppStore(this.app,version?AppStatus.viewingVersion:this.status,this.history,this.isEditing,version)}isAppReady(){return!!(this.app&&[AppStatus.updated,AppStatus.dirty,AppStatus.viewingVersion].includes(this.status))}}__webpack_exports__["b"]=AppStore},function(module,exports){module.exports=require("@deck.gl/core")},function(module,exports){module.exports=require("nebula.gl")},function(module,exports,__webpack_require__){module.exports={transitionBlock:"SidebarTransition_transitionBlock__2ONFT",enter:"SidebarTransition_enter__3P9py",enterInvert:"SidebarTransition_enterInvert__3lsEA",enterActive:"SidebarTransition_enterActive__2zE_e",enterDone:"SidebarTransition_enterDone__2Nyek",exit:"SidebarTransition_exit__1NquM",exitActive:"SidebarTransition_exitActive__kjse3",exitActiveInvert:"SidebarTransition_exitActiveInvert__5-Ogx"}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return ScaleType}));__webpack_require__.d(__webpack_exports__,"a",(function(){return DEFAULT_SCALE_TYPE}));__webpack_require__.d(__webpack_exports__,"c",(function(){return getColumnScaleType}));var _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(6);let ScaleType;(function(ScaleType){ScaleType["LINEAR"]="linear";ScaleType["SQUARE"]="sqrt";ScaleType["TIME"]="utc";ScaleType["ORDINAL"]="ordinal"})(ScaleType||(ScaleType={}));const DEFAULT_SCALE_TYPE=ScaleType.LINEAR;const getColumnScaleType=column=>{if(!column)return DEFAULT_SCALE_TYPE;switch(column.getType()){case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].STRING:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].JSON:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].STRING_ARRAY:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].GEOMETRY:case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].BOOLEAN:return ScaleType.ORDINAL;case _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["b"].DATETIME:return ScaleType.TIME;default:return DEFAULT_SCALE_TYPE}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ZoomRange}));class ZoomRange{constructor(props){this.min=void 0;this.max=void 0;Object.assign(this,props)}hasValues(){var _this$min,_this$min$fixed,_this$max,_this$max$fixed;return((_this$min=this.min)===null||_this$min===void 0?void 0:(_this$min$fixed=_this$min.fixed)===null||_this$min$fixed===void 0?void 0:_this$min$fixed.value)!==undefined||((_this$max=this.max)===null||_this$max===void 0?void 0:(_this$max$fixed=_this$max.fixed)===null||_this$max$fixed===void 0?void 0:_this$max$fixed.value)!==undefined}getMin(){var _this$min2,_this$min2$fixed;if(((_this$min2=this.min)===null||_this$min2===void 0?void 0:(_this$min2$fixed=_this$min2.fixed)===null||_this$min2$fixed===void 0?void 0:_this$min2$fixed.value)===undefined)return 0;return this.min.fixed.value}getMax(){var _this$max2,_this$max2$fixed;if(((_this$max2=this.max)===null||_this$max2===void 0?void 0:(_this$max2$fixed=_this$max2.fixed)===null||_this$max2$fixed===void 0?void 0:_this$max2$fixed.value)===undefined)return Number.MAX_SAFE_INTEGER;return this.max.fixed.value}getInterval(){return this.getMax()-this.getMin()}getCount(){return this.getMax()-this.getMin()+1}multiply(multiplier){const intervalDelta=this.getInterval()*multiplier-this.getInterval();return new ZoomRange({min:{...this.min,fixed:{value:this.getMin()-intervalDelta/2}},max:{...this.max,fixed:{value:this.getMax()+intervalDelta/2}}})}isInRange(value){if(value===undefined)return false;return value>=this.getMin()&&value<this.getMax()}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return WorldType}));__webpack_require__.d(__webpack_exports__,"a",(function(){return World}));var lodash_fp__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_0__);var _hopara_encoding__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(10);var _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(8);let WorldType;(function(WorldType){WorldType["GEO"]="GEO";WorldType["CARTESIAN"]="CARTESIAN";WorldType["CUSTOM"]="CUSTOM"})(WorldType||(WorldType={}));let WorldStatus;(function(WorldStatus){WorldStatus["NONE"]="NONE";WorldStatus["UPDATING"]="UPDATING";WorldStatus["UPDATED"]="UPDATED"})(WorldStatus||(WorldStatus={}));const SAFE_WORLD_BOX=new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["b"]({x:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:-180,max:180}),y:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:-80,max:80})});const SAFE_WORLD_SCALE_DOMAINS={x:{[_hopara_encoding__WEBPACK_IMPORTED_MODULE_1__["i"].LINEAR]:{domainMin:SAFE_WORLD_BOX.x.getMin(),domainMax:SAFE_WORLD_BOX.x.getMax()}},y:{[_hopara_encoding__WEBPACK_IMPORTED_MODULE_1__["i"].LINEAR]:{domainMin:SAFE_WORLD_BOX.y.getMin(),domainMax:SAFE_WORLD_BOX.y.getMax()}},z:{[_hopara_encoding__WEBPACK_IMPORTED_MODULE_1__["i"].LINEAR]:{domainMin:0,domainMax:50}}};class World{constructor(partialWorld){this.type=void 0;this.visualizationId=void 0;this.scaleDomains=void 0;this.dimensions=void 0;this.sizeRatio=void 0;this.status=void 0;this.initialDimensions=void 0;Object.assign(this,partialWorld);if(!this.status)this.status=WorldStatus.NONE;if(!this.sizeRatio)this.sizeRatio={width:1,height:1};if(!this.initialDimensions)this.initialDimensions=this.dimensions;if(this.isCustom()&&!this.initialDimensions){this.initialDimensions={height:Number.MAX_SAFE_INTEGER,width:Number.MAX_SAFE_INTEGER}}if(this.isGeo()){this.scaleDomains=SAFE_WORLD_SCALE_DOMAINS;this.status=WorldStatus.UPDATED}}clone(){return new World(this)}isGeo(){return this.type===WorldType.GEO}isCartesian(){return this.type===WorldType.CARTESIAN}isCustom(){return this.type===WorldType.CUSTOM}box(){if(!this.initialDimensions)return;const width=this.initialDimensions.width*this.sizeRatio.width;const height=this.initialDimensions.height*this.sizeRatio.height;return new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["b"]({x:this.isGeo()?SAFE_WORLD_BOX.x:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:0,max:width}),y:this.isGeo()?SAFE_WORLD_BOX.y:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:0,max:height}),z:new _hopara_spatial__WEBPACK_IMPORTED_MODULE_2__["e"]({min:0,max:50})})}getScaleDomains(){return this.scaleDomains}getMaximizedScaleDomains(){if(!this.scaleDomains)return;if(!this.isCartesian())return this.scaleDomains;return Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["mapValues"])((axisScaleDomains=>Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["mapValues"])((_ref=>{let{domainMin,domainMax}=_ref;const domainDiff=Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(domainMax)&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(domainMin)?domainMax-domainMin:undefined;const maximazedValue=domainDiff?(domainMax!==null&&domainMax!==void 0?domainMax:1)+.05*domainDiff:undefined;return{domainMin,domainMax:maximazedValue}}),axisScaleDomains)),this.scaleDomains)}setScaleDomains(scaleDomains){const cloned=this.clone();cloned.scaleDomains=scaleDomains;cloned.status=WorldStatus.UPDATED;return cloned}getWorldPadding(){if(this.isCartesian())return 100;return 0}getDimensions(){if(!this.dimensions&&!this.initialDimensions)return;if(!this.dimensions||!this.dimensions.width)this.dimensions=this.initialDimensions;return{width:this.dimensions.width,height:this.dimensions.height}}withDimensions(dimensions){const cloned=this.clone();cloned.dimensions=dimensions;return cloned}withInitialDimensions(dimensions){const cloned=this.clone();if(this.isCustom()){cloned.initialDimensions=this.initialDimensions;cloned.dimensions=this.initialDimensions}else{const calculatedDimensions={width:dimensions.width-this.getWorldPadding(),height:dimensions.height-this.getWorldPadding()};cloned.initialDimensions=calculatedDimensions;cloned.dimensions=calculatedDimensions}return cloned}hasInitialDimentions(){return!!this.initialDimensions}getInitialDimentions(){return this.initialDimensions}isReady(){return this.status===WorldStatus.UPDATED&&!!this.scaleDomains}setReady(){const cloned=this.clone();cloned.status=WorldStatus.UPDATED;return cloned}}},function(module,__webpack_exports__,__webpack_require__){"use strict";function _initializerWarningHelper(descriptor,context){throw new Error("Decorating class property failed. Please ensure that "+"proposal-class-properties is enabled and runs after the decorators transform.")}},function(module,exports,__webpack_require__){module.exports={transitionBlock:"ViewTransition_transitionBlock__3-hy8",enter:"ViewTransition_enter__1qfMc",enterActive:"ViewTransition_enterActive__3-7mt",enterDone:"ViewTransition_enterDone__1pAFe",exit:"ViewTransition_exit__3gsBJ",exitActive:"ViewTransition_exitActive__3ephY"}},function(module,exports){module.exports=require("@turf/centroid")},function(module,exports){module.exports=require("query-string")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ZoomBehaviorType}));var _opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(13);var _opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(11);var _opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerWarningHelper_js__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(40);var class_transformer__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(7);var class_transformer__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(class_transformer__WEBPACK_IMPORTED_MODULE_3__);var _hopara_spatial__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(8);var _world_World__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(39);var _layer_ZoomRange__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(38);var _dec,_dec2,_dec3,_dec4,_dec5,_dec6,_dec7,_dec8,_dec9,_dec10,_class,_descriptor,_descriptor2,_descriptor3,_descriptor4,_descriptor5,_descriptor6,_descriptor7,_descriptor8;let ZoomBehaviorType;(function(ZoomBehaviorType){ZoomBehaviorType["FIXED"]="FIXED";ZoomBehaviorType["SCALE"]="SCALE"})(ZoomBehaviorType||(ZoomBehaviorType={}));let Visualization=(_dec=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec2=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Transform"])((_ref=>{let{value}=_ref;return value==="VEGA"?"CARTESIAN":value})),_dec3=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec4=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec5=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec6=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec7=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Transform"])((_ref2=>{let{value}=_ref2;return new _layer_ZoomRange__WEBPACK_IMPORTED_MODULE_6__["a"](value)})),_dec8=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec9=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_dec10=Object(class_transformer__WEBPACK_IMPORTED_MODULE_3__["Expose"])(),_class=class Visualization{constructor(props){Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"id",_descriptor,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"type",_descriptor2,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"name",_descriptor3,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"initialPosition",_descriptor4,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"mapStyle",_descriptor5,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"zoomRange",_descriptor6,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"zoomBehavior",_descriptor7,this);Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_initializerDefineProperty_js__WEBPACK_IMPORTED_MODULE_0__["a"])(this,"sizeRatio",_descriptor8,this);Object.assign(this,props)}getMapStyle(){if(!this.isGeo)return;return this.mapStyle}getInitialCoordinates(){return new _hopara_spatial__WEBPACK_IMPORTED_MODULE_4__["c"](this.initialPosition)}getSizeRatio(){if(!this.sizeRatio)return{width:1,height:1};return this.sizeRatio}getInitialZoom(){return this.initialPosition&&this.initialPosition.zoom||0}getInitialBearing(){return this.initialPosition&&this.initialPosition.bearing||0}setInitialPosition(coordinates,zoom,bearing){this.initialPosition={x:coordinates.x,y:coordinates.y,z:coordinates.z,zoom,bearing};if(this.isGeo()){this.initialPosition.longitude=coordinates.x;this.initialPosition.latitude=coordinates.y}}isGeo(){return this.type===_world_World__WEBPACK_IMPORTED_MODULE_5__["b"].GEO}isCartesian(){return this.type===_world_World__WEBPACK_IMPORTED_MODULE_5__["b"].CARTESIAN}isCustom(){return this.type===_world_World__WEBPACK_IMPORTED_MODULE_5__["b"].CUSTOM}getName(){var _this$name;return(_this$name=this.name)!==null&&_this$name!==void 0?_this$name:`Visualization ${this.id}`}},_descriptor=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"id",[_dec],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor2=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"type",[_dec2,_dec3],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor3=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"name",[_dec4],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor4=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"initialPosition",[_dec5],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor5=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"mapStyle",[_dec6],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor6=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"zoomRange",[_dec7,_dec8],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor7=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"zoomBehavior",[_dec9],{configurable:true,enumerable:true,writable:true,initializer:null}),_descriptor8=Object(_opt_atlassian_pipelines_agent_build_node_modules_babel_runtime_helpers_esm_applyDecoratedDescriptor_js__WEBPACK_IMPORTED_MODULE_1__["a"])(_class.prototype,"sizeRatio",[_dec10],{configurable:true,enumerable:true,writable:true,initializer:null}),_class);__webpack_exports__["b"]=Visualization},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ColorScaleType}));let ColorScaleType;(function(ColorScaleType){ColorScaleType["QUANTILE"]="quantile";ColorScaleType["QUANTIZE"]="quantize";ColorScaleType["ORDINAL"]="ordinal"})(ColorScaleType||(ColorScaleType={}))},function(module,exports){module.exports=require("react-toastify")},function(module,exports){module.exports=require("reflect-metadata")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return actions}));var _hopara_spatial__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(8);var lodash_fp__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_1__);var _view_state_ViewState__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(62);var _state_Actions__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(1);var typesafe_actions__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(2);var typesafe_actions__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__);const viewActions=dispatch=>(viewStates,worlds,visualizations,hasSelectedRow,tooltipEnabled)=>({onViewLoad:(dimensions,deckViewState)=>{var _worlds$getFromVisual;const currentVisualization=visualizations.getCurrent();const currentWorld=worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);if(!currentVisualization||!currentWorld)return;const previousViewState=viewStates.getFromVisualization(currentVisualization.id);const coordinates=Object(_view_state_ViewState__WEBPACK_IMPORTED_MODULE_2__["b"])(previousViewState.coordinates,visualizations.getCurrent(),dimensions);const viewState=previousViewState.withDeckViewState(currentWorld,deckViewState).withInitialCoordinates(new _hopara_spatial__WEBPACK_IMPORTED_MODULE_0__["c"]({x:dimensions.width/2,y:dimensions.height/2})).withCoordinates(coordinates);const world=(_worlds$getFromVisual=worlds.getFromVisualization(currentVisualization.id))===null||_worlds$getFromVisual===void 0?void 0:_worlds$getFromVisual.withInitialDimensions(dimensions);if(visualizations.getCurrentIndex()>0){dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.jumpViewLoaded({visualizationId:currentVisualization.id,viewStates:viewStates.withUpdatedViewState(viewState),world}))}else{dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewLoaded({visualizationId:currentVisualization.id,viewStates:viewStates.withUpdatedViewState(viewState),world}))}},onViewZooming:event=>{var _event$viewState,_event$oldViewState;const currentVisualization=visualizations.getCurrent();const currentWorld=worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);if(!currentVisualization||!currentWorld)return;const viewState=viewStates.getFromVisualization(currentVisualization.id).withDeckViewState(currentWorld,event.viewState);dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewZooming({direction:((_event$viewState=event.viewState)===null||_event$viewState===void 0?void 0:_event$viewState.zoom)>((_event$oldViewState=event.oldViewState)===null||_event$oldViewState===void 0?void 0:_event$oldViewState.zoom)?"IN":"OUT",viewStates:viewStates.withUpdatedViewState(viewState)}))},onViewResize:_ref=>{let{width,height}=_ref;const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;const currentWorld=worlds.getFromVisualization(currentVisualization.id);if(!currentWorld||Object(lodash_fp__WEBPACK_IMPORTED_MODULE_1__["isEqual"])(currentWorld===null||currentWorld===void 0?void 0:currentWorld.getDimensions(),{width,height})||!(currentWorld!==null&&currentWorld!==void 0&&currentWorld.type))return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewResized({world:currentWorld.withDimensions({width,height})}))},onViewHover:info=>{if(info.object||!hasSelectedRow&&!tooltipEnabled)return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].layer.mouseLeft())},onViewClick:info=>{if(info.object||!hasSelectedRow&&!tooltipEnabled)return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].layer.clickOut())},onViewDragStart:info=>{if(!info)return;return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewDragStart({}))},onViewDragEnd:(info,deckViewState)=>{if(!info)return;const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;const currentViewState=viewStates.getFromVisualization(currentVisualization.id);const currentWorld=worlds.getFromVisualization(currentVisualization.id);if(!currentViewState||!currentWorld)return;const updatedViewState=currentViewState.withDeckViewState(currentWorld,deckViewState);const oldProjectedCoordinates=updatedViewState.projectCoordinate(currentWorld,[currentViewState.coordinates.x,currentViewState.coordinates.y]);const nextProjectedCoordinates=updatedViewState.projectCoordinate(currentWorld,[updatedViewState.coordinates.x,updatedViewState.coordinates.y]);const displacementDelta={x:oldProjectedCoordinates[0]-nextProjectedCoordinates[0],y:oldProjectedCoordinates[1]-nextProjectedCoordinates[1]};return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_3__["a"].view.viewDragEnd({viewStates:viewStates.withUpdatedViewState(updatedViewState),displacementDelta}))}});__webpack_exports__["b"]=viewActions;const actions={viewLoaded:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_LOADED")(),jumpViewLoaded:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("JUMP_VIEW_LOADED")(),viewStateChanged:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_STATE_CHANGED")(),viewResized:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_RESIZED")(),viewZooming:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_ZOOMING")(),viewDragStart:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_DRAG_START")(),viewDragEnd:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_4__["createAction"])("VIEW_DRAG_END")()}},function(module,exports){module.exports=require("js-sentencecase")},function(module,exports){module.exports=require("case")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return Projector_Projector}));__webpack_require__.d(__webpack_exports__,"a",(function(){return BoxProjector_BoxProjector}));__webpack_require__.d(__webpack_exports__,"c",(function(){return RowProjector_RowProjector}));var src=__webpack_require__(10);class Projector_Projector{constructor(scaleDomains,worldBox){this.scales=void 0;this.scales={x:this.createScales(scaleDomains.x,worldBox.x),y:this.createScales(scaleDomains.y,worldBox.y),z:scaleDomains.z&&worldBox.z?this.createScales(scaleDomains.z,worldBox.z):undefined}}createScales(scaleDomains,range){return Object.keys(scaleDomains).reduce(((scales,scaleType)=>({...scales,[scaleType]:Object(src["k"])(scaleType).range(range.toPlain()).domain([scaleDomains[scaleType].domainMin,scaleDomains[scaleType].domainMax])})),{})}hasAllScalesSetted(xScaleType,yScaleType){const hasX=!!this.scales.x[xScaleType];const hasY=!!this.scales.y[yScaleType];return hasX&&hasY}projectX(value,scaleType){var _this$scales$x$scaleT;const scale=(_this$scales$x$scaleT=this.scales.x[scaleType])!==null&&_this$scales$x$scaleT!==void 0?_this$scales$x$scaleT:this.scales.x[Object.keys(this.scales.x)[0]];if(!scale)return undefined;return scale(value)}projectY(value,scaleType){var _this$scales$y$scaleT;const scale=(_this$scales$y$scaleT=this.scales.y[scaleType])!==null&&_this$scales$y$scaleT!==void 0?_this$scales$y$scaleT:this.scales.y[Object.keys(this.scales.y)[0]];if(!scale)return undefined;return scale(value)}projectZ(value){return value}project(point,xScaleType,yScaleType){if(!this.hasAllScalesSetted(xScaleType,yScaleType))return;const p=[this.projectX(point[0],xScaleType),this.projectY(point[1],yScaleType)];if(point[2]!==undefined){p.push(this.projectZ(point[2]))}return p}unprojectX(value,scaleType){var _this$scales$x$scaleT2;const scale=(_this$scales$x$scaleT2=this.scales.x[scaleType])!==null&&_this$scales$x$scaleT2!==void 0?_this$scales$x$scaleT2:this.scales.x[Object.keys(this.scales.x)[0]];if(!scale||value===undefined||value===null)return 0;return scale.invert(value)}unprojectY(value,scaleType){var _this$scales$y$scaleT2;const scale=(_this$scales$y$scaleT2=this.scales.y[scaleType])!==null&&_this$scales$y$scaleT2!==void 0?_this$scales$y$scaleT2:this.scales.y[Object.keys(this.scales.y)[0]];if(!scale||value===undefined||value===null)return 0;return scale.invert(value)}unprojectZ(value){return value}unproject(point,xScaleType,yScaleType){if(!this.hasAllScalesSetted(xScaleType,yScaleType))return;const p=[this.unprojectX(point[0],xScaleType),this.unprojectY(point[1],yScaleType)];if(point[2]!==undefined){p.push(this.unprojectZ(point[2]))}return p}}var spatial_src=__webpack_require__(8);class BoxProjector_BoxProjector{constructor(projector,xScaleType,yScaleType){this.projector=void 0;this.xScaleType=void 0;this.yScaleType=void 0;this.projector=projector;this.xScaleType=xScaleType;this.yScaleType=yScaleType}project(box){return new spatial_src["b"]({x:new spatial_src["e"]({min:this.projector.projectX(box.x.getMin(),this.xScaleType),max:this.projector.projectX(box.x.getMax(),this.xScaleType)}),y:new spatial_src["e"]({min:this.projector.projectY(box.y.getMin(),this.yScaleType),max:this.projector.projectY(box.y.getMax(),this.yScaleType)}),z:box.z?new spatial_src["e"]({min:this.projector.projectZ(box.z.getMin()),max:this.projector.projectZ(box.z.getMax())}):undefined})}unproject(box){return new spatial_src["b"]({x:new spatial_src["e"]({min:this.projector.unprojectX(box.x.getMin(),this.xScaleType),max:this.projector.unprojectX(box.x.getMax(),this.xScaleType)}),y:new spatial_src["e"]({min:this.projector.unprojectY(box.y.getMin(),this.yScaleType),max:this.projector.unprojectY(box.y.getMax(),this.yScaleType)}),z:box.z?new spatial_src["e"]({min:this.projector.unprojectZ(box.z.getMin()),max:this.projector.unprojectZ(box.z.getMax())}):undefined})}}var dataset_src=__webpack_require__(6);var centroid_=__webpack_require__(42);var centroid_default=__webpack_require__.n(centroid_);var helpers_=__webpack_require__(23);var fp_=__webpack_require__(3);class RowProjector_RowProjector{constructor(projector,scales){this.projector=void 0;this.scales=void 0;this.projector=projector;this.scales=scales}isPoint(value){return value.length===1}isPolygon(value){return value[0][0]===value[value.length-1][0]&&value[0][1]===value[value.length-1][1]}getGeometry(value){if(Object(fp_["isArray"])(value)){if(this.isPoint(value))return Object(helpers_["point"])(value[0]);if(this.isPolygon(value))return Object(helpers_["polygon"])([value]);return Object(helpers_["lineString"])(value)}return value}getCentroid(value){try{const geometry=this.getGeometry(value);const centroidGeoJson=centroid_default()(geometry);return centroidGeoJson.geometry.coordinates}catch(_){return[0,0]}}projectGeometry(data,index){if(Object(fp_["isArray"])(data))return data.map(this.projectGeometry.bind(this));if(index===0)return this.projector.projectX(Number(data),this.scales.x.type);if(index===1)return this.projector.projectY(Number(data),this.scales.y.type);if(index===2)return this.projector.projectZ(Number(data));return data}unprojectValue(value,index){if(index===0)return this.projector.unprojectX(Number(value),this.scales.x.type);if(index===1)return this.projector.unprojectY(Number(value),this.scales.y.type);if(index===2)return this.projector.unprojectZ(Number(value));return 0}unprojectGeometry(data,index){if(Object(fp_["isArray"])(data))return data.map(this.unprojectGeometry.bind(this));return this.unprojectValue(data,index)}isRowPlaced(row){return!Object(fp_["isNil"])(row._x)&&!Object(fp_["isNil"])(row._y)}project(rows,filterNotPlaceds){const projectedRows=rows.map((row=>{const projectedRow=this.projectRow(row);return new dataset_src["f"](projectedRow)}));if(filterNotPlaceds){return projectedRows.filter(this.isRowPlaced)}return projectedRows}projectRow(row){var _this$scales$z;let xValue=row[this.scales.x.field];let yValue=row[this.scales.y.field];if(Object(fp_["isObject"])(row[this.scales.x.field])&&!(row[this.scales.x.field]instanceof Date)){const centroid=this.getCentroid(row[this.scales.x.field]);xValue=centroid[0];yValue=centroid[1]}return new dataset_src["f"]({...row,[this.scales.x.field]:Object(fp_["isArray"])(row[this.scales.x.field])?this.projectGeometry(row[this.scales.x.field]):row[this.scales.x.field],_x:this.projector.projectX(xValue,this.scales.x.type),_y:this.projector.projectY(yValue,this.scales.y.type),_z:(_this$scales$z=this.scales.z)!==null&&_this$scales$z!==void 0&&_this$scales$z.field?this.projector.projectZ(row[this.scales.z.field]):undefined})}unprojectX(row){return row["_x"]===null?null:this.projector.unprojectX(row._x,this.scales.x.type)}unprojectZ(row){return row["_z"]===null?null:this.projector.unprojectZ(row._z)}unprojectY(row){return row["_y"]===null?null:this.projector.unprojectY(row._y,this.scales.y.type)}unprojectRow(row){var _this$scales$z2;const unprojectedValues={};if(Object(fp_["isArray"])(row[this.scales.x.field])){unprojectedValues[this.scales.x.field]=this.unprojectGeometry(row[this.scales.x.field])}else if(this.scales.x.field===this.scales.y.field){if(Object(fp_["isNil"])(this.unprojectX(row))||Object(fp_["isNil"])(this.unprojectY(row))){unprojectedValues[this.scales.x.field]=null}else{unprojectedValues[this.scales.x.field]=[[this.unprojectX(row),this.unprojectY(row)]]}}else{unprojectedValues[this.scales.x.field]=this.unprojectX(row);unprojectedValues[this.scales.y.field]=this.unprojectY(row)}if(row["_z"]!==undefined&&(_this$scales$z2=this.scales.z)!==null&&_this$scales$z2!==void 0&&_this$scales$z2.field){unprojectedValues[this.scales.z.field]=this.unprojectZ(row)}return Object(fp_["omit"])(["_x","_y","_z"],{...row,...unprojectedValues})}unproject(rows){return rows.map((row=>{const unprojectedRow=this.unprojectRow(row);return new dataset_src["f"](unprojectedRow)}))}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return ScaleKeys}));__webpack_require__.d(__webpack_exports__,"a",(function(){return NullScaleKeys}));var _ScaleType__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(37);class ScaleKeys{constructor(x,y,z){var _x$type,_x$field,_y$type,_y$field,_z$type;this.x=void 0;this.y=void 0;this.z=void 0;this.x={type:(_x$type=x.type)!==null&&_x$type!==void 0?_x$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:(_x$field=x.field)!==null&&_x$field!==void 0?_x$field:"_x"};this.y={type:(_y$type=y.type)!==null&&_y$type!==void 0?_y$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:(_y$field=y.field)!==null&&_y$field!==void 0?_y$field:"_y"};this.z=z!==null&&z!==void 0&&z.field?{type:(_z$type=z===null||z===void 0?void 0:z.type)!==null&&_z$type!==void 0?_z$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:z.field}:undefined}setZ(scaleKey){var _scaleKey$type;this.z=scaleKey.field?{type:(_scaleKey$type=scaleKey===null||scaleKey===void 0?void 0:scaleKey.type)!==null&&_scaleKey$type!==void 0?_scaleKey$type:_ScaleType__WEBPACK_IMPORTED_MODULE_0__["b"].LINEAR,field:scaleKey.field}:undefined}}class NullScaleKeys extends ScaleKeys{constructor(){super({},{})}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return QueryStoreStatus}));var _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(6);let QueryStoreStatus;(function(QueryStoreStatus){QueryStoreStatus[QueryStoreStatus["none"]=0]="none";QueryStoreStatus[QueryStoreStatus["error"]=1]="error";QueryStoreStatus[QueryStoreStatus["tableNotFound"]=2]="tableNotFound";QueryStoreStatus[QueryStoreStatus["tableFetchingError"]=3]="tableFetchingError";QueryStoreStatus[QueryStoreStatus["updated"]=4]="updated"})(QueryStoreStatus||(QueryStoreStatus={}));class QueryStore{constructor(queries,status,subsctiptions){this.queries=void 0;this.status=void 0;this.loaders=void 0;this.queries=queries||new _hopara_dataset__WEBPACK_IMPORTED_MODULE_0__["d"];this.status=status||QueryStoreStatus.none;this.loaders=subsctiptions||[]}setQueries(queries){return new QueryStore(queries,QueryStoreStatus.updated,this.loaders)}setStatus(status){return new QueryStore(this.queries,status,this.loaders)}setLoaders(queryLoaders){return new QueryStore(this.queries,this.status,queryLoaders)}getLoader(query){return this.loaders.find((loader=>loader.name===query.name&&loader.source===query.dataSource))}}__webpack_exports__["b"]=QueryStore},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"c",(function(){return getSchemes}));__webpack_require__.d(__webpack_exports__,"a",(function(){return getHexScheme}));__webpack_require__.d(__webpack_exports__,"b",(function(){return getRgbScheme}));var _hopara_memoize__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(78);var vega__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(20);var vega__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(vega__WEBPACK_IMPORTED_MODULE_1__);var ___WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(10);var _Colors__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(18);const continuous=["blues","greens","greys","oranges","purples","reds","blueGreen","bluePurple","greenBlue","orangeRed","purpleBlue","purpleBlueGreen","purpleRed","redPurple","yellowGreen","yellowOrangeBrown","yellowOrangeRed","blueOrange","brownBlueGreen","purpleGreen","purpleOrange","redBlue","redGrey","yellowGreenBlue","redYellowBlue","redYellowGreen","pinkYellowGreen","spectral","viridis","magma","inferno","plasma","cividis","rainbow","sinebow","turbo","browns","tealBlues","teals","warmGreys","goldGreen","goldOrange","goldRed","lightGreyRed","lightGreyTeal","lightMulti","lightOrange","lightTealBlue","darkBlue","darkGold","darkGreen","darkMulti","darkRed"];const discrete=["category10","category20","category20b","category20c","tableau10","tableau20","accent","dark2","paired","pastel1","pastel2","set1","set2","set3"];const schemeNames=[...continuous,...discrete];const getSchemes=length=>{const continuousSteps=Array.from({length},((_,i)=>(i+1)/length));const discreteSteps=Array.from({length},((_,i)=>i));return Object.fromEntries(schemeNames.map((name=>{let colors=Object(vega__WEBPACK_IMPORTED_MODULE_1__["scheme"])(name);if(typeof colors==="function"){colors=continuousSteps.map((step=>colors(step)))}else{colors=discreteSteps.map((step=>colors[step]))}return[name.toLowerCase(),colors]})))};Object(vega__WEBPACK_IMPORTED_MODULE_1__["scheme"])("temperature",["#3690c0","#800026"]);const DEFAULT_COLOR_SCHEME="purpleblue";const seqPaletteSteps=Array.from({length:9},((_,i)=>(i+1)/10));function getScheme(paletteName){const name=paletteName.toLocaleLowerCase();let colors=Object(vega__WEBPACK_IMPORTED_MODULE_1__["scheme"])(paletteName);if(!colors)return null;if(typeof colors==="function"){colors=seqPaletteSteps.map((step=>Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(colors(step))))}else{colors=colors.map((c=>Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(c)))}if(!colors.length)return null;return{name,colors}}const getOpacity=function(){let alpha=arguments.length>0&&arguments[0]!==undefined?arguments[0]:255;return alpha/255};const getCustomScheme=scheme=>({name:"custom",colors:scheme.map((color=>{if(Array.isArray(color)){return Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(`rgba(${color[0]}, ${color[1]}, ${color[2]}, ${getOpacity(color[3])})`)}return Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["b"])(color)}))});function formatColorScheme(scheme,colorFormat){let opacity=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;let colorScheme;if(typeof scheme==="string"){colorScheme=getScheme(scheme.toLocaleLowerCase())}else if(Array.isArray(scheme)){colorScheme=getCustomScheme(scheme)}if(!colorScheme){colorScheme=getScheme(DEFAULT_COLOR_SCHEME)}return{name:colorScheme.name,colors:colorScheme.colors.map((c=>{const color=c.copy({opacity});if(colorFormat===___WEBPACK_IMPORTED_MODULE_2__["b"].hex)return color.formatHex();return Object(_Colors__WEBPACK_IMPORTED_MODULE_3__["c"])(color)}))}}function getHexScheme(scheme){let reverse=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;const colorScheme=formatColorScheme(scheme,___WEBPACK_IMPORTED_MODULE_2__["b"].hex);if(reverse)return{name:`${colorScheme.name}-reversed`,colors:[...colorScheme.colors].reverse()};return colorScheme}function doGetRgbScheme(name,reverse,opacity){const colorScheme=formatColorScheme(name,___WEBPACK_IMPORTED_MODULE_2__["b"].rgb,opacity);if(reverse)return{name:`${colorScheme.name}-reversed`,colors:[...colorScheme.colors].reverse()};return colorScheme}const getRgbSchemeCache=Object(_hopara_memoize__WEBPACK_IMPORTED_MODULE_0__["a"])(doGetRgbScheme);function getRgbScheme(scheme){let reverse=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;let opacity=arguments.length>2&&arguments[2]!==undefined?arguments[2]:1;return getRgbSchemeCache(scheme,reverse,opacity)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Row}));var _Geti__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(60);class Row{constructor(values){this._id=void 0;this._x=void 0;this._y=void 0;Object.assign(this,values)}getValue(key){return Object(_Geti__WEBPACK_IMPORTED_MODULE_0__["a"])(key,this)}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return OrthographicViewport}));__webpack_require__.d(__webpack_exports__,"b",(function(){return OrthographicView}));var lodash_fp__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(3);var lodash_fp__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(lodash_fp__WEBPACK_IMPORTED_MODULE_0__);var _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(34);var _deck_gl_core__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(_deck_gl_core__WEBPACK_IMPORTED_MODULE_1__);var math_gl__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(74);var math_gl__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(math_gl__WEBPACK_IMPORTED_MODULE_2__);var _math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(101);var _math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(_math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3__);var gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(87);var gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__);const viewMatrix=(new math_gl__WEBPACK_IMPORTED_MODULE_2__["Matrix4"]).lookAt({eye:[0,0,1]});function getProjectionMatrix(_ref){let{width,height,near,far,padding,translationMatrix}=_ref;let left=-width/2;let right=width/2;let bottom=-height/2;let top=height/2;if(padding){const{left:l=0,right:r=0,top:t=0,bottom:b=0}=padding;const offsetX=Object(math_gl__WEBPACK_IMPORTED_MODULE_2__["clamp"])((l+width-r)/2,0,width)-width/2;const offsetY=Object(math_gl__WEBPACK_IMPORTED_MODULE_2__["clamp"])((t+height-b)/2,0,height)-height/2;left-=offsetX;right-=offsetX;bottom+=offsetY;top+=offsetY}return(new math_gl__WEBPACK_IMPORTED_MODULE_2__["Matrix4"]).ortho({left,right,bottom,top,near,far}).clone().translate(translationMatrix)}class OrthographicViewport extends _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__["Viewport"]{constructor(props){const{width,height,near=.1,far=1e3,zoom=0,target=[0,0,0],padding=null,flipY=true,fixedY=false,fixedX=false,translationMatrix=[0,0,0],initialCoordinates}=props;let zoomX=Array.isArray(zoom)?zoom[0]:zoom;let zoomY=Array.isArray(zoom)?zoom[1]:zoom;if(fixedY)zoomY=0;if(fixedX)zoomX=0;const zoom_=Math.min(zoomX,zoomY);const scale=Math.pow(2,zoom_);let distanceScales;if(zoomX!==zoomY){const scaleX=Math.pow(2,zoomX);const scaleY=Math.pow(2,zoomY);distanceScales={unitsPerMeter:[scaleX/scale,scaleY/scale,1],metersPerUnit:[scale/scaleX,scale/scaleY,1]}}super({...props,longitude:null,position:[fixedX&&initialCoordinates&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(initialCoordinates.x)?initialCoordinates.x:target[0],fixedY&&initialCoordinates&&Object(lodash_fp__WEBPACK_IMPORTED_MODULE_0__["isNumber"])(initialCoordinates.y)?initialCoordinates.y:target[1],target[2]],viewMatrix:viewMatrix.clone().scale([scale,scale*(flipY?-1:1),scale]),projectionMatrix:getProjectionMatrix({width:width||1,height:height||1,padding,near,far,translationMatrix}),zoom:zoom_,distanceScales})}projectFlat(_ref2){let[X,Y]=_ref2;const{unitsPerMeter}=this.distanceScales;return[X*unitsPerMeter[0],Y*unitsPerMeter[1]]}unprojectFlat(_ref3){let[x,y]=_ref3;const{metersPerUnit}=this.distanceScales;return[x*metersPerUnit[0],y*metersPerUnit[1]]}panByPosition(coords,pixel){const fromLocation=Object(_math_gl_web_mercator__WEBPACK_IMPORTED_MODULE_3__["pixelsToWorld"])(pixel,this.pixelUnprojectionMatrix);const toLocation=this.projectFlat(coords);const translate=gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__["add"]([],toLocation,gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__["negate"]([],fromLocation));const newCenter=gl_matrix_vec2__WEBPACK_IMPORTED_MODULE_4__["add"]([],this.center,translate);return{target:this.unprojectFlat(newCenter)}}}class OrthographicView extends _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__["View"]{constructor(props){super({...props,type:OrthographicViewport})}get ViewportType(){return OrthographicViewport}get ControllerType(){return _deck_gl_core__WEBPACK_IMPORTED_MODULE_1__["OrthographicController"]}}},function(module,exports){module.exports=require("@mui/material/styles")},function(module,exports){module.exports=require("@mui/material/Box")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return getFormatter}));__webpack_require__.d(__webpack_exports__,"a",(function(){return formatValue}));var ColumnType=__webpack_require__(21);class BooleanFormatter{format(value){return String(value)}unformat(value){return Boolean(value)}}var D3Formatter=__webpack_require__(85);var external_moment_=__webpack_require__(70);var external_moment_default=__webpack_require__.n(external_moment_);class DateFormatter_DateFormatter{format(value){return external_moment_default.a.utc(value).format("YYYY-MM-DD")}unformat(value){return external_moment_default.a.utc(value).valueOf()}}class StringArrayFormatter{format(value){return value.join(", ")}unformat(value){return value.split(", ")}}var fp_=__webpack_require__(3);class ValueFormatter{format(value){return value}unformat(value){return value}}const getFormatter=columnType=>{switch(columnType){case ColumnType["a"].DECIMAL:case ColumnType["a"].INTEGER:return new D3Formatter["a"](columnType);case ColumnType["a"].DATETIME:return new DateFormatter_DateFormatter;case ColumnType["a"].STRING_ARRAY:return new StringArrayFormatter;case ColumnType["a"].BOOLEAN:return new BooleanFormatter;default:return new ValueFormatter}};const formatValue=(value,columnType)=>{if(Object(fp_["isNil"])(value)){return""}const formatter=getFormatter(columnType);return formatter.format(value)}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return geti}));function geti(key,object){if(!key)return;for(const candidateKey in object){if((candidateKey+"").toLowerCase()===key.toLowerCase()){return object[candidateKey]}}return}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return LineCap}));__webpack_require__.d(__webpack_exports__,"b",(function(){return LineEncoding}));let LineCap;(function(LineCap){LineCap["BUTT"]="butt";LineCap["ROUND"]="round"})(LineCap||(LineCap={}));class LineEncoding{constructor(props){this.field=void 0;this.segmentLength=void 0;this.cap=void 0;Object.assign(this,props)}isRenderable(){return!!this.field}}},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return getCoordinates}));var core_=__webpack_require__(34);var fp_=__webpack_require__(3);var OrthographicView=__webpack_require__(56);var Visualization=__webpack_require__(44);var src=__webpack_require__(8);function getPosition(coordinates,zoom,bearing){const position={coordinates:new src["c"],zoom:0,bearing:0};if(zoom){position.zoom=zoom}if(coordinates){position.coordinates=coordinates}if(bearing){position.bearing=bearing}return position}var Paddings=__webpack_require__(31);var World=__webpack_require__(39);var ZoomRange=__webpack_require__(38);const getCoordinates=(previousCoordinates,visualization,viewDimensions)=>{if(previousCoordinates&&!previousCoordinates.isAtOrigin())return previousCoordinates;if(!visualization||!viewDimensions)return;if(visualization.getInitialCoordinates().default&&visualization.type===World["b"].CARTESIAN&&viewDimensions){return new src["c"]({x:viewDimensions.width/2,y:viewDimensions.height/2})}return visualization.getInitialCoordinates()};class ViewState_ViewState{constructor(props){this.visualizationId=void 0;this.coordinates=void 0;this.zoom=void 0;this.zoomRange=void 0;this.bearing=void 0;this._initialPosition=void 0;this._lastModified=void 0;this.transitioning=void 0;this.transitionDuration=void 0;this.zoomBehavior=void 0;this.normalizedViewPortCache=void 0;Object.assign(this,props);if(props){const position=getPosition(props.coordinates,props.zoom,props.bearing);Object.assign(this,props,position);if(!this._initialPosition){this._initialPosition=position}}if(!this.coordinates)this.coordinates=new src["c"]({x:0,y:0});if(!this.zoomRange||!this.zoomRange.getMin()&&!this.zoomRange.getMax()){this.zoomRange=new ZoomRange["a"]({min:{fixed:{value:0}},max:{fixed:{value:20}}})}if(!this.zoom)this.zoom=0;if(!this.bearing)this.bearing=0}getDeckViewState(world){var _world$getDimensions,_world$getDimensions2;const deckViewState={pitch:0,bearing:this.bearing,minZoom:this.getMinZoom(),maxZoom:this.getMaxZoom(),x:this.coordinates.x,y:this.coordinates.y,longitude:(world===null||world===void 0?void 0:world.isGeo())&&this.coordinates.x,latitude:(world===null||world===void 0?void 0:world.isGeo())&&this.coordinates.y,target:this.coordinates.toArray(),zoom:this.zoom,height:world===null||world===void 0?void 0:(_world$getDimensions=world.getDimensions())===null||_world$getDimensions===void 0?void 0:_world$getDimensions.height,width:world===null||world===void 0?void 0:(_world$getDimensions2=world.getDimensions())===null||_world$getDimensions2===void 0?void 0:_world$getDimensions2.width};if(this.transitioning&&world){return{...this.getTransitionProps(world),...deckViewState}}return deckViewState}clone(){return new ViewState_ViewState({...this,normalizedViewPortCache:null,transitioning:false,_lastModified:Date.now()})}getInterpolator(world){if(world.isGeo()){return new core_["FlyToInterpolator"]}else{return new core_["LinearInterpolator"](["target","zoom"])}}getTransitionProps(world){var _this$transitionDurat;return{transitionInterpolator:this.getInterpolator(world),transitionDuration:(_this$transitionDurat=this.transitionDuration)!==null&&_this$transitionDurat!==void 0?_this$transitionDurat:500}}isTransitioning(){return!!this.transitioning}transition(positon,duration){var _positon$zoom,_positon$bearing;const cloned=this.clone();cloned.zoom=(_positon$zoom=positon.zoom)!==null&&_positon$zoom!==void 0?_positon$zoom:this.zoom;cloned.bearing=(_positon$bearing=positon.bearing)!==null&&_positon$bearing!==void 0?_positon$bearing:this.bearing;cloned.coordinates=positon.coordinates;cloned.transitioning=true;cloned.transitionDuration=duration;return cloned}zoomTransition(zoom){const cloned=this.clone();if(zoom<=this.getMinZoom()){cloned.zoom=this.getMinZoom()}else if(zoom>=this.getMaxZoom()){cloned.zoom=this.getMaxZoom()}else{cloned.zoom=zoom}cloned.transitioning=true;return cloned}getOrtographicViewPortProps(world,deckViewState){var _world$getDimensions3,_world$getDimensions4;return{...deckViewState,flipY:false,x:Paddings["b"],y:Paddings["a"],fixedX:this.zoomBehavior.x===Visualization["a"].FIXED,fixedY:this.zoomBehavior.y===Visualization["a"].FIXED,translationMatrix:[Paddings["b"]+Paddings["a"]/2,Paddings["b"]+Paddings["a"]/2,0],initialCoordinates:this._initialPosition.coordinates,height:world===null||world===void 0?void 0:(_world$getDimensions3=world.getDimensions())===null||_world$getDimensions3===void 0?void 0:_world$getDimensions3.height,width:world===null||world===void 0?void 0:(_world$getDimensions4=world.getDimensions())===null||_world$getDimensions4===void 0?void 0:_world$getDimensions4.width}}createViewPort(world,deckViewState){if(world.isGeo())return new core_["WebMercatorViewport"](deckViewState);return new OrthographicView["a"](this.getOrtographicViewPortProps(world,deckViewState))}getViewPort(world,deckViewState){return this.createViewPort(world,deckViewState!==null&&deckViewState!==void 0?deckViewState:this.getDeckViewState(world))}getNormalizedViewPort(world){if(this.normalizedViewPortCache){return this.normalizedViewPortCache}const deckViewState=Object(fp_["omit"])(["width","height"],this.getDeckViewState(world));const normalizedDeckViewState={...deckViewState,bearing:0};this.normalizedViewPortCache=this.createViewPort(world,normalizedDeckViewState);return this.normalizedViewPortCache}getVisibleWorldOrigin(world){const dimensions=world.getDimensions();return src["c"].fromArray(this.getNormalizedViewPort(world).unproject([dimensions&&-dimensions.width/2,dimensions&&-dimensions.height/2],{topLeft:false}))}getVisibleWorldTopRight(world){const dimensions=world.getDimensions();return src["c"].fromArray(this.getNormalizedViewPort(world).unproject([dimensions&&dimensions.width/2,dimensions&&dimensions.height/2],{topLeft:false}))}getVisibleWorldDimensions(world){const origin=this.getVisibleWorldOrigin(world);const topRight=this.getVisibleWorldTopRight(world);return{width:Math.abs(topRight.x-origin.x),height:Math.abs(topRight.y-origin.y)}}getVisibleWorld(world){if(!(world!==null&&world!==void 0&&world.getDimensions()))return;const worldOrigin=this.getVisibleWorldOrigin(world);const worldTopRight=this.getVisibleWorldTopRight(world);return new src["b"]({x:new src["e"]({min:Math.min(worldOrigin.x,worldTopRight.x),max:Math.max(worldOrigin.x,worldTopRight.x)}),y:new src["e"]({min:Math.min(worldOrigin.y,worldTopRight.y),max:Math.max(worldOrigin.y,worldTopRight.y)}),z:new src["e"]({min:this.coordinates.z,max:this.coordinates.z})})}unProjectCoordinate(world,coordinate){if(world.isGeo())this.getNormalizedViewPort(world).unproject(coordinate);return this.getViewPort(world).unproject(coordinate)}projectCoordinate(world,coordinate){if(world.isGeo())this.getNormalizedViewPort(world).project(coordinate);return this.getViewPort(world).project(coordinate)}withZoom(zoom){const cloned=this.clone();cloned.zoom=zoom;return cloned}getMaxZoom(){return this.zoomRange.getMax()-.01}getMinZoom(){return this.zoomRange.getMin()}withDeckViewState(world,deckViewState){var _deckViewState$target,_deckViewState$target2;const cloned=this.clone();if(world.isGeo()){cloned.coordinates=new src["c"]({x:deckViewState.longitude,y:deckViewState.latitude,z:this.coordinates.z})}else if((deckViewState===null||deckViewState===void 0?void 0:(_deckViewState$target=deckViewState.target)===null||_deckViewState$target===void 0?void 0:_deckViewState$target.length)===3){cloned.coordinates=src["c"].fromArray([...deckViewState.target])}else if((deckViewState===null||deckViewState===void 0?void 0:(_deckViewState$target2=deckViewState.target)===null||_deckViewState$target2===void 0?void 0:_deckViewState$target2.length)===2){cloned.coordinates=src["c"].fromArray([...deckViewState.target,this.coordinates.z])}cloned.bearing=deckViewState.bearing;cloned.zoom=deckViewState.zoom;return cloned}withCoordinates(coordinates){if(!coordinates)return this;const cloned=this.clone();cloned.coordinates=coordinates;return cloned}withInitialCoordinates(coordinates){if(!coordinates)return this;const cloned=this.clone();this._initialPosition.coordinates=coordinates;cloned.coordinates=coordinates;return cloned}isNewerThan(viewState){if(!viewState){return true}return this._lastModified>viewState._lastModified}getInitialPosition(){return this._initialPosition}resetPosition(){const cloned=this.clone();cloned.coordinates=this._initialPosition.coordinates;cloned.zoom=this._initialPosition.zoom;cloned.bearing=this._initialPosition.bearing;return cloned}}var view_state_ViewState=__webpack_exports__["a"]=ViewState_ViewState},function(module,__webpack_exports__,__webpack_require__){"use strict";var typesafe_actions__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(2);var typesafe_actions__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__);const actions={hocLoaded:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("HOC_LOADED")(),hocUpdated:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("HOC_UPDATED")()};__webpack_exports__["a"]=actions},function(module,exports){module.exports=require("@turf/invariant")},function(module,exports){module.exports=require("react-transition-group")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return imageMimeTypes}));__webpack_require__.d(__webpack_exports__,"a",(function(){return getMeta}));const svgMimeTypes="image/svg+xml";const imageMimeTypes=["image/png","image/jpeg",svgMimeTypes];const svgToPng=(svgImage,width,height)=>{const can=document.createElement("canvas");can.width=width;can.height=height;const ctx=can.getContext("2d");ctx.drawImage(svgImage,0,0);return can.toDataURL()};const getMeta=async(imageURI,options)=>new Promise(((resolve,reject)=>{if(!imageURI)return reject(new Error("invalid imageURI"));const img=new Image;img.src=imageURI;img.style.display="none";img.onload=event=>{const{naturalWidth:width,naturalHeight:height}=event.target;if(options!==null&&options!==void 0&&options.maxWidth&&options.maxWidth<width){reject(new Error(`Image width is too big. Max width is ${options.maxWidth}px`));return img.remove()}if(options!==null&&options!==void 0&&options.maxHeight&&options.maxHeight<height){reject(new Error(`Image height is too big. Max height is ${options.maxHeight}px`));return img.remove()}let base64=imageURI;if(base64.startsWith(`data:${svgMimeTypes}`)){base64=svgToPng(event.target,width,height)}resolve({base64,width,height,ratio:height/width});return img.remove()};window.document.body.appendChild(img)}))},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(global){__webpack_require__.d(__webpack_exports__,"a",(function(){return HoparaStore}));var react__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);var react__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);var react_redux__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(30);var react_redux__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);var _hopara_internals__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(16);var query_string__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(43);var query_string__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(query_string__WEBPACK_IMPORTED_MODULE_3__);var _state_Store__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(28);var _hopara_config__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(17);var _hopara_design_system_src_component_PureComponent__WEBPACK_IMPORTED_MODULE_6__=__webpack_require__(25);var _hopara_design_system_src_toast_ToastContainer__WEBPACK_IMPORTED_MODULE_7__=__webpack_require__(117);var _log__WEBPACK_IMPORTED_MODULE_8__=__webpack_require__(92);var _ThemeProvider__WEBPACK_IMPORTED_MODULE_9__=__webpack_require__(138);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__=__webpack_require__(0);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10___default=__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__);const window=global;const queryString=query_string__WEBPACK_IMPORTED_MODULE_3___default.a.parse(window.location.search);if(queryString.debug==="true"){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].enable()}else{_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].disable()}if(queryString.heatmapDebounce){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["b"].setParam("heatmapDebounce",Number(queryString.heatmapDebounce))}if(queryString.heatmapTextureSize){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["b"].setParam("heatmapTextureSize",Number(queryString.heatmapTextureSize))}const HoparaStore=Object(_state_Store__WEBPACK_IMPORTED_MODULE_4__["b"])();if(_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].isDebugging()){window._hoparaStore=HoparaStore;window._hoparaConfig=_hopara_config__WEBPACK_IMPORTED_MODULE_5__["a"]}window._hoparaEnableDebug=()=>{_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["a"].enable();Object(_log__WEBPACK_IMPORTED_MODULE_8__["a"])();window._hoparaStore=HoparaStore;window._hoparaConfig=_hopara_config__WEBPACK_IMPORTED_MODULE_5__["a"]};class HoparaProvider extends _hopara_design_system_src_component_PureComponent__WEBPACK_IMPORTED_MODULE_6__["a"]{componentDidMount(){Object(_log__WEBPACK_IMPORTED_MODULE_8__["a"])()}componentDidCatch(error,info){_hopara_internals__WEBPACK_IMPORTED_MODULE_2__["c"].error(error,info)}render(){return Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__["jsx"])(react_redux__WEBPACK_IMPORTED_MODULE_1__["Provider"],{context:_state_Store__WEBPACK_IMPORTED_MODULE_4__["a"],store:HoparaStore,children:Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__["jsxs"])(_ThemeProvider__WEBPACK_IMPORTED_MODULE_9__["a"],{children:[Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_10__["jsx"])(_hopara_design_system_src_toast_ToastContainer__WEBPACK_IMPORTED_MODULE_7__["a"],{}),this.props.children]})})}}__webpack_exports__["b"]=HoparaProvider}).call(this,__webpack_require__(75))},function(module,exports){module.exports=require("react-table")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return Rows}));var _Geti__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(60);var _Row__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(55);class Rows extends Array{constructor(){for(var _len=arguments.length,rows=new Array(_len),_key=0;_key<_len;_key++){rows[_key]=arguments[_key]}if(rows.length&&typeof rows[0]==="number"){super(rows[0]);this.etag=void 0}else{super();this.etag=void 0;rows.forEach((row=>super.push(new _Row__WEBPACK_IMPORTED_MODULE_1__["a"](row))))}}static empty(){return new Rows}getById(id){return this.find((row=>row._id===id))}filter(predicate,thisArg){const rows=new Rows;const filtered=super.filter(predicate,thisArg);filtered.forEach((row=>rows.push(row)));rows.etag=this.etag;return rows}map(callbackfn,thisArg){const rows=new Rows;const mapped=super.map(callbackfn,thisArg);mapped.forEach((row=>rows.push(row)));rows.etag=this.etag;return rows}getValues(field){return super.map((row=>Object(_Geti__WEBPACK_IMPORTED_MODULE_0__["a"])(field,row)))}getFromBox(delimiterBox){if(!delimiterBox)return this;const filtered=this.filter((row=>{const columnX="_x";const columnY="_y";const point={x:row[columnX],y:row[columnY]};return delimiterBox.isPointInRange(point)}));filtered.etag=`${filtered.etag}_${Date.now()}`;return filtered}}},function(module,exports){module.exports=require("moment")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return getSpecFromTenant}));__webpack_require__.d(__webpack_exports__,"a",(function(){return createMuiThemeFromTenant}));var dist_namespaceObject={};__webpack_require__.r(dist_namespaceObject);__webpack_require__.d(dist_namespaceObject,"Blend",(function(){return blend_Blend}));__webpack_require__.d(dist_namespaceObject,"Cam16",(function(){return cam16_Cam16}));__webpack_require__.d(dist_namespaceObject,"Hct",(function(){return hct_Hct}));__webpack_require__.d(dist_namespaceObject,"ViewingConditions",(function(){return viewing_conditions_ViewingConditions}));__webpack_require__.d(dist_namespaceObject,"CorePalette",(function(){return core_palette_CorePalette}));__webpack_require__.d(dist_namespaceObject,"TonalPalette",(function(){return tonal_palette_TonalPalette}));__webpack_require__.d(dist_namespaceObject,"QuantizerCelebi",(function(){return quantizer_celebi_QuantizerCelebi}));__webpack_require__.d(dist_namespaceObject,"QuantizerMap",(function(){return quantizer_map_QuantizerMap}));__webpack_require__.d(dist_namespaceObject,"QuantizerWsmeans",(function(){return quantizer_wsmeans_QuantizerWsmeans}));__webpack_require__.d(dist_namespaceObject,"QuantizerWu",(function(){return quantizer_wu_QuantizerWu}));__webpack_require__.d(dist_namespaceObject,"Scheme",(function(){return scheme_Scheme}));__webpack_require__.d(dist_namespaceObject,"SchemeAndroid",(function(){return scheme_android_SchemeAndroid}));__webpack_require__.d(dist_namespaceObject,"Score",(function(){return score_Score}));__webpack_require__.d(dist_namespaceObject,"argbFromRgb",(function(){return argbFromRgb}));__webpack_require__.d(dist_namespaceObject,"argbFromLinrgb",(function(){return argbFromLinrgb}));__webpack_require__.d(dist_namespaceObject,"alphaFromArgb",(function(){return alphaFromArgb}));__webpack_require__.d(dist_namespaceObject,"redFromArgb",(function(){return redFromArgb}));__webpack_require__.d(dist_namespaceObject,"greenFromArgb",(function(){return greenFromArgb}));__webpack_require__.d(dist_namespaceObject,"blueFromArgb",(function(){return blueFromArgb}));__webpack_require__.d(dist_namespaceObject,"isOpaque",(function(){return isOpaque}));__webpack_require__.d(dist_namespaceObject,"argbFromXyz",(function(){return argbFromXyz}));__webpack_require__.d(dist_namespaceObject,"xyzFromArgb",(function(){return xyzFromArgb}));__webpack_require__.d(dist_namespaceObject,"argbFromLab",(function(){return argbFromLab}));__webpack_require__.d(dist_namespaceObject,"labFromArgb",(function(){return labFromArgb}));__webpack_require__.d(dist_namespaceObject,"argbFromLstar",(function(){return argbFromLstar}));__webpack_require__.d(dist_namespaceObject,"lstarFromArgb",(function(){return lstarFromArgb}));__webpack_require__.d(dist_namespaceObject,"yFromLstar",(function(){return yFromLstar}));__webpack_require__.d(dist_namespaceObject,"linearized",(function(){return linearized}));__webpack_require__.d(dist_namespaceObject,"delinearized",(function(){return color_utils_delinearized}));__webpack_require__.d(dist_namespaceObject,"whitePointD65",(function(){return whitePointD65}));__webpack_require__.d(dist_namespaceObject,"signum",(function(){return signum}));__webpack_require__.d(dist_namespaceObject,"lerp",(function(){return lerp}));__webpack_require__.d(dist_namespaceObject,"clampInt",(function(){return clampInt}));__webpack_require__.d(dist_namespaceObject,"clampDouble",(function(){return clampDouble}));__webpack_require__.d(dist_namespaceObject,"sanitizeDegreesInt",(function(){return sanitizeDegreesInt}));__webpack_require__.d(dist_namespaceObject,"sanitizeDegreesDouble",(function(){return sanitizeDegreesDouble}));__webpack_require__.d(dist_namespaceObject,"rotationDirection",(function(){return rotationDirection}));__webpack_require__.d(dist_namespaceObject,"differenceDegrees",(function(){return math_utils_differenceDegrees}));__webpack_require__.d(dist_namespaceObject,"matrixMultiply",(function(){return matrixMultiply}));__webpack_require__.d(dist_namespaceObject,"hexFromArgb",(function(){return hexFromArgb}));__webpack_require__.d(dist_namespaceObject,"argbFromHex",(function(){return argbFromHex}));__webpack_require__.d(dist_namespaceObject,"sourceColorFromImage",(function(){return sourceColorFromImage}));__webpack_require__.d(dist_namespaceObject,"themeFromSourceColor",(function(){return themeFromSourceColor}));__webpack_require__.d(dist_namespaceObject,"themeFromImage",(function(){return themeFromImage}));__webpack_require__.d(dist_namespaceObject,"customColor",(function(){return customColor}));__webpack_require__.d(dist_namespaceObject,"applyTheme",(function(){return applyTheme}));function signum(num){if(num<0){return-1}else if(num===0){return 0}else{return 1}}function lerp(start,stop,amount){return(1-amount)*start+amount*stop}function clampInt(min,max,input){if(input<min){return min}else if(input>max){return max}return input}function clampDouble(min,max,input){if(input<min){return min}else if(input>max){return max}return input}function sanitizeDegreesInt(degrees){degrees=degrees%360;if(degrees<0){degrees=degrees+360}return degrees}function sanitizeDegreesDouble(degrees){degrees=degrees%360;if(degrees<0){degrees=degrees+360}return degrees}function rotationDirection(from,to){const increasingDifference=sanitizeDegreesDouble(to-from);return increasingDifference<=180?1:-1}function math_utils_differenceDegrees(a,b){return 180-Math.abs(Math.abs(a-b)-180)}function matrixMultiply(row,matrix){const a=row[0]*matrix[0][0]+row[1]*matrix[0][1]+row[2]*matrix[0][2];const b=row[0]*matrix[1][0]+row[1]*matrix[1][1]+row[2]*matrix[1][2];const c=row[0]*matrix[2][0]+row[1]*matrix[2][1]+row[2]*matrix[2][2];return[a,b,c]}const SRGB_TO_XYZ=[[.41233895,.35762064,.18051042],[.2126,.7152,.0722],[.01932141,.11916382,.95034478]];const XYZ_TO_SRGB=[[3.2413774792388685,-1.5376652402851851,-.49885366846268053],[-.9691452513005321,1.8758853451067872,.04156585616912061],[.05562093689691305,-.20395524564742123,1.0571799111220335]];const WHITE_POINT_D65=[95.047,100,108.883];function argbFromRgb(red,green,blue){return(255<<24|(red&255)<<16|(green&255)<<8|blue&255)>>>0}function argbFromLinrgb(linrgb){const r=color_utils_delinearized(linrgb[0]);const g=color_utils_delinearized(linrgb[1]);const b=color_utils_delinearized(linrgb[2]);return argbFromRgb(r,g,b)}function alphaFromArgb(argb){return argb>>24&255}function redFromArgb(argb){return argb>>16&255}function greenFromArgb(argb){return argb>>8&255}function blueFromArgb(argb){return argb&255}function isOpaque(argb){return alphaFromArgb(argb)>=255}function argbFromXyz(x,y,z){const matrix=XYZ_TO_SRGB;const linearR=matrix[0][0]*x+matrix[0][1]*y+matrix[0][2]*z;const linearG=matrix[1][0]*x+matrix[1][1]*y+matrix[1][2]*z;const linearB=matrix[2][0]*x+matrix[2][1]*y+matrix[2][2]*z;const r=color_utils_delinearized(linearR);const g=color_utils_delinearized(linearG);const b=color_utils_delinearized(linearB);return argbFromRgb(r,g,b)}function xyzFromArgb(argb){const r=linearized(redFromArgb(argb));const g=linearized(greenFromArgb(argb));const b=linearized(blueFromArgb(argb));return matrixMultiply([r,g,b],SRGB_TO_XYZ)}function argbFromLab(l,a,b){const whitePoint=WHITE_POINT_D65;const fy=(l+16)/116;const fx=a/500+fy;const fz=fy-b/200;const xNormalized=labInvf(fx);const yNormalized=labInvf(fy);const zNormalized=labInvf(fz);const x=xNormalized*whitePoint[0];const y=yNormalized*whitePoint[1];const z=zNormalized*whitePoint[2];return argbFromXyz(x,y,z)}function labFromArgb(argb){const linearR=linearized(redFromArgb(argb));const linearG=linearized(greenFromArgb(argb));const linearB=linearized(blueFromArgb(argb));const matrix=SRGB_TO_XYZ;const x=matrix[0][0]*linearR+matrix[0][1]*linearG+matrix[0][2]*linearB;const y=matrix[1][0]*linearR+matrix[1][1]*linearG+matrix[1][2]*linearB;const z=matrix[2][0]*linearR+matrix[2][1]*linearG+matrix[2][2]*linearB;const whitePoint=WHITE_POINT_D65;const xNormalized=x/whitePoint[0];const yNormalized=y/whitePoint[1];const zNormalized=z/whitePoint[2];const fx=labF(xNormalized);const fy=labF(yNormalized);const fz=labF(zNormalized);const l=116*fy-16;const a=500*(fx-fy);const b=200*(fy-fz);return[l,a,b]}function argbFromLstar(lstar){const y=yFromLstar(lstar);const component=color_utils_delinearized(y);return argbFromRgb(component,component,component)}function lstarFromArgb(argb){const y=xyzFromArgb(argb)[1];return 116*labF(y/100)-16}function yFromLstar(lstar){return 100*labInvf((lstar+16)/116)}function linearized(rgbComponent){const normalized=rgbComponent/255;if(normalized<=.040449936){return normalized/12.92*100}else{return Math.pow((normalized+.055)/1.055,2.4)*100}}function color_utils_delinearized(rgbComponent){const normalized=rgbComponent/100;let delinearized=0;if(normalized<=.0031308){delinearized=normalized*12.92}else{delinearized=1.055*Math.pow(normalized,1/2.4)-.055}return clampInt(0,255,Math.round(delinearized*255))}function whitePointD65(){return WHITE_POINT_D65}function labF(t){const e=216/24389;const kappa=24389/27;if(t>e){return Math.pow(t,1/3)}else{return(kappa*t+16)/116}}function labInvf(ft){const e=216/24389;const kappa=24389/27;const ft3=ft*ft*ft;if(ft3>e){return ft3}else{return(116*ft-16)/kappa}}class viewing_conditions_ViewingConditions{constructor(n,aw,nbb,ncb,c,nc,rgbD,fl,fLRoot,z){this.n=n;this.aw=aw;this.nbb=nbb;this.ncb=ncb;this.c=c;this.nc=nc;this.rgbD=rgbD;this.fl=fl;this.fLRoot=fLRoot;this.z=z}static make(){let whitePoint=arguments.length>0&&arguments[0]!==undefined?arguments[0]:whitePointD65();let adaptingLuminance=arguments.length>1&&arguments[1]!==undefined?arguments[1]:200/Math.PI*yFromLstar(50)/100;let backgroundLstar=arguments.length>2&&arguments[2]!==undefined?arguments[2]:50;let surround=arguments.length>3&&arguments[3]!==undefined?arguments[3]:2;let discountingIlluminant=arguments.length>4&&arguments[4]!==undefined?arguments[4]:false;const xyz=whitePoint;const rW=xyz[0]*.401288+xyz[1]*.650173+xyz[2]*-.051461;const gW=xyz[0]*-.250268+xyz[1]*1.204414+xyz[2]*.045854;const bW=xyz[0]*-.002079+xyz[1]*.048952+xyz[2]*.953127;const f=.8+surround/10;const c=f>=.9?lerp(.59,.69,(f-.9)*10):lerp(.525,.59,(f-.8)*10);let d=discountingIlluminant?1:f*(1-1/3.6*Math.exp((-adaptingLuminance-42)/92));d=d>1?1:d<0?0:d;const nc=f;const rgbD=[d*(100/rW)+1-d,d*(100/gW)+1-d,d*(100/bW)+1-d];const k=1/(5*adaptingLuminance+1);const k4=k*k*k*k;const k4F=1-k4;const fl=k4*adaptingLuminance+.1*k4F*k4F*Math.cbrt(5*adaptingLuminance);const n=yFromLstar(backgroundLstar)/whitePoint[1];const z=1.48+Math.sqrt(n);const nbb=.725/Math.pow(n,.2);const ncb=nbb;const rgbAFactors=[Math.pow(fl*rgbD[0]*rW/100,.42),Math.pow(fl*rgbD[1]*gW/100,.42),Math.pow(fl*rgbD[2]*bW/100,.42)];const rgbA=[400*rgbAFactors[0]/(rgbAFactors[0]+27.13),400*rgbAFactors[1]/(rgbAFactors[1]+27.13),400*rgbAFactors[2]/(rgbAFactors[2]+27.13)];const aw=(2*rgbA[0]+rgbA[1]+.05*rgbA[2])*nbb;return new viewing_conditions_ViewingConditions(n,aw,nbb,ncb,c,nc,rgbD,fl,Math.pow(fl,.25),z)}}viewing_conditions_ViewingConditions.DEFAULT=viewing_conditions_ViewingConditions.make();class cam16_Cam16{constructor(hue,chroma,j,q,m,s,jstar,astar,bstar){this.hue=hue;this.chroma=chroma;this.j=j;this.q=q;this.m=m;this.s=s;this.jstar=jstar;this.astar=astar;this.bstar=bstar}distance(other){const dJ=this.jstar-other.jstar;const dA=this.astar-other.astar;const dB=this.bstar-other.bstar;const dEPrime=Math.sqrt(dJ*dJ+dA*dA+dB*dB);const dE=1.41*Math.pow(dEPrime,.63);return dE}static fromInt(argb){return cam16_Cam16.fromIntInViewingConditions(argb,viewing_conditions_ViewingConditions.DEFAULT)}static fromIntInViewingConditions(argb,viewingConditions){const red=(argb&16711680)>>16;const green=(argb&65280)>>8;const blue=argb&255;const redL=linearized(red);const greenL=linearized(green);const blueL=linearized(blue);const x=.41233895*redL+.35762064*greenL+.18051042*blueL;const y=.2126*redL+.7152*greenL+.0722*blueL;const z=.01932141*redL+.11916382*greenL+.95034478*blueL;const rC=.401288*x+.650173*y-.051461*z;const gC=-.250268*x+1.204414*y+.045854*z;const bC=-.002079*x+.048952*y+.953127*z;const rD=viewingConditions.rgbD[0]*rC;const gD=viewingConditions.rgbD[1]*gC;const bD=viewingConditions.rgbD[2]*bC;const rAF=Math.pow(viewingConditions.fl*Math.abs(rD)/100,.42);const gAF=Math.pow(viewingConditions.fl*Math.abs(gD)/100,.42);const bAF=Math.pow(viewingConditions.fl*Math.abs(bD)/100,.42);const rA=signum(rD)*400*rAF/(rAF+27.13);const gA=signum(gD)*400*gAF/(gAF+27.13);const bA=signum(bD)*400*bAF/(bAF+27.13);const a=(11*rA+-12*gA+bA)/11;const b=(rA+gA-2*bA)/9;const u=(20*rA+20*gA+21*bA)/20;const p2=(40*rA+20*gA+bA)/20;const atan2=Math.atan2(b,a);const atanDegrees=atan2*180/Math.PI;const hue=atanDegrees<0?atanDegrees+360:atanDegrees>=360?atanDegrees-360:atanDegrees;const hueRadians=hue*Math.PI/180;const ac=p2*viewingConditions.nbb;const j=100*Math.pow(ac/viewingConditions.aw,viewingConditions.c*viewingConditions.z);const q=4/viewingConditions.c*Math.sqrt(j/100)*(viewingConditions.aw+4)*viewingConditions.fLRoot;const huePrime=hue<20.14?hue+360:hue;const eHue=.25*(Math.cos(huePrime*Math.PI/180+2)+3.8);const p1=5e4/13*eHue*viewingConditions.nc*viewingConditions.ncb;const t=p1*Math.sqrt(a*a+b*b)/(u+.305);const alpha=Math.pow(t,.9)*Math.pow(1.64-Math.pow(.29,viewingConditions.n),.73);const c=alpha*Math.sqrt(j/100);const m=c*viewingConditions.fLRoot;const s=50*Math.sqrt(alpha*viewingConditions.c/(viewingConditions.aw+4));const jstar=(1+100*.007)*j/(1+.007*j);const mstar=1/.0228*Math.log(1+.0228*m);const astar=mstar*Math.cos(hueRadians);const bstar=mstar*Math.sin(hueRadians);return new cam16_Cam16(hue,c,j,q,m,s,jstar,astar,bstar)}static fromJch(j,c,h){return cam16_Cam16.fromJchInViewingConditions(j,c,h,viewing_conditions_ViewingConditions.DEFAULT)}static fromJchInViewingConditions(j,c,h,viewingConditions){const q=4/viewingConditions.c*Math.sqrt(j/100)*(viewingConditions.aw+4)*viewingConditions.fLRoot;const m=c*viewingConditions.fLRoot;const alpha=c/Math.sqrt(j/100);const s=50*Math.sqrt(alpha*viewingConditions.c/(viewingConditions.aw+4));const hueRadians=h*Math.PI/180;const jstar=(1+100*.007)*j/(1+.007*j);const mstar=1/.0228*Math.log(1+.0228*m);const astar=mstar*Math.cos(hueRadians);const bstar=mstar*Math.sin(hueRadians);return new cam16_Cam16(h,c,j,q,m,s,jstar,astar,bstar)}static fromUcs(jstar,astar,bstar){return cam16_Cam16.fromUcsInViewingConditions(jstar,astar,bstar,viewing_conditions_ViewingConditions.DEFAULT)}static fromUcsInViewingConditions(jstar,astar,bstar,viewingConditions){const a=astar;const b=bstar;const m=Math.sqrt(a*a+b*b);const M=(Math.exp(m*.0228)-1)/.0228;const c=M/viewingConditions.fLRoot;let h=Math.atan2(b,a)*(180/Math.PI);if(h<0){h+=360}const j=jstar/(1-(jstar-100)*.007);return cam16_Cam16.fromJchInViewingConditions(j,c,h,viewingConditions)}toInt(){return this.viewed(viewing_conditions_ViewingConditions.DEFAULT)}viewed(viewingConditions){const alpha=this.chroma===0||this.j===0?0:this.chroma/Math.sqrt(this.j/100);const t=Math.pow(alpha/Math.pow(1.64-Math.pow(.29,viewingConditions.n),.73),1/.9);const hRad=this.hue*Math.PI/180;const eHue=.25*(Math.cos(hRad+2)+3.8);const ac=viewingConditions.aw*Math.pow(this.j/100,1/viewingConditions.c/viewingConditions.z);const p1=eHue*(5e4/13)*viewingConditions.nc*viewingConditions.ncb;const p2=ac/viewingConditions.nbb;const hSin=Math.sin(hRad);const hCos=Math.cos(hRad);const gamma=23*(p2+.305)*t/(23*p1+11*t*hCos+108*t*hSin);const a=gamma*hCos;const b=gamma*hSin;const rA=(460*p2+451*a+288*b)/1403;const gA=(460*p2-891*a-261*b)/1403;const bA=(460*p2-220*a-6300*b)/1403;const rCBase=Math.max(0,27.13*Math.abs(rA)/(400-Math.abs(rA)));const rC=signum(rA)*(100/viewingConditions.fl)*Math.pow(rCBase,1/.42);const gCBase=Math.max(0,27.13*Math.abs(gA)/(400-Math.abs(gA)));const gC=signum(gA)*(100/viewingConditions.fl)*Math.pow(gCBase,1/.42);const bCBase=Math.max(0,27.13*Math.abs(bA)/(400-Math.abs(bA)));const bC=signum(bA)*(100/viewingConditions.fl)*Math.pow(bCBase,1/.42);const rF=rC/viewingConditions.rgbD[0];const gF=gC/viewingConditions.rgbD[1];const bF=bC/viewingConditions.rgbD[2];const x=1.86206786*rF-1.01125463*gF+.14918677*bF;const y=.38752654*rF+.62144744*gF-.00897398*bF;const z=-.0158415*rF-.03412294*gF+1.04996444*bF;const argb=argbFromXyz(x,y,z);return argb}}class hct_solver_HctSolver{static sanitizeRadians(angle){return(angle+Math.PI*8)%(Math.PI*2)}static trueDelinearized(rgbComponent){const normalized=rgbComponent/100;let delinearized=0;if(normalized<=.0031308){delinearized=normalized*12.92}else{delinearized=1.055*Math.pow(normalized,1/2.4)-.055}return delinearized*255}static chromaticAdaptation(component){const af=Math.pow(Math.abs(component),.42);return signum(component)*400*af/(af+27.13)}static hueOf(linrgb){const scaledDiscount=matrixMultiply(linrgb,hct_solver_HctSolver.SCALED_DISCOUNT_FROM_LINRGB);const rA=hct_solver_HctSolver.chromaticAdaptation(scaledDiscount[0]);const gA=hct_solver_HctSolver.chromaticAdaptation(scaledDiscount[1]);const bA=hct_solver_HctSolver.chromaticAdaptation(scaledDiscount[2]);const a=(11*rA+-12*gA+bA)/11;const b=(rA+gA-2*bA)/9;return Math.atan2(b,a)}static areInCyclicOrder(a,b,c){const deltaAB=hct_solver_HctSolver.sanitizeRadians(b-a);const deltaAC=hct_solver_HctSolver.sanitizeRadians(c-a);return deltaAB<deltaAC}static intercept(source,mid,target){return(mid-source)/(target-source)}static lerpPoint(source,t,target){return[source[0]+(target[0]-source[0])*t,source[1]+(target[1]-source[1])*t,source[2]+(target[2]-source[2])*t]}static setCoordinate(source,coordinate,target,axis){const t=hct_solver_HctSolver.intercept(source[axis],coordinate,target[axis]);return hct_solver_HctSolver.lerpPoint(source,t,target)}static isBounded(x){return 0<=x&&x<=100}static nthVertex(y,n){const kR=hct_solver_HctSolver.Y_FROM_LINRGB[0];const kG=hct_solver_HctSolver.Y_FROM_LINRGB[1];const kB=hct_solver_HctSolver.Y_FROM_LINRGB[2];const coordA=n%4<=1?0:100;const coordB=n%2===0?0:100;if(n<4){const g=coordA;const b=coordB;const r=(y-g*kG-b*kB)/kR;if(hct_solver_HctSolver.isBounded(r)){return[r,g,b]}else{return[-1,-1,-1]}}else if(n<8){const b=coordA;const r=coordB;const g=(y-r*kR-b*kB)/kG;if(hct_solver_HctSolver.isBounded(g)){return[r,g,b]}else{return[-1,-1,-1]}}else{const r=coordA;const g=coordB;const b=(y-r*kR-g*kG)/kB;if(hct_solver_HctSolver.isBounded(b)){return[r,g,b]}else{return[-1,-1,-1]}}}static bisectToSegment(y,targetHue){let left=[-1,-1,-1];let right=left;let leftHue=0;let rightHue=0;let initialized=false;let uncut=true;for(let n=0;n<12;n++){const mid=hct_solver_HctSolver.nthVertex(y,n);if(mid[0]<0){continue}const midHue=hct_solver_HctSolver.hueOf(mid);if(!initialized){left=mid;right=mid;leftHue=midHue;rightHue=midHue;initialized=true;continue}if(uncut||hct_solver_HctSolver.areInCyclicOrder(leftHue,midHue,rightHue)){uncut=false;if(hct_solver_HctSolver.areInCyclicOrder(leftHue,targetHue,midHue)){right=mid;rightHue=midHue}else{left=mid;leftHue=midHue}}}return[left,right]}static midpoint(a,b){return[(a[0]+b[0])/2,(a[1]+b[1])/2,(a[2]+b[2])/2]}static criticalPlaneBelow(x){return Math.floor(x-.5)}static criticalPlaneAbove(x){return Math.ceil(x-.5)}static bisectToLimit(y,targetHue){const segment=hct_solver_HctSolver.bisectToSegment(y,targetHue);let left=segment[0];let leftHue=hct_solver_HctSolver.hueOf(left);let right=segment[1];for(let axis=0;axis<3;axis++){if(left[axis]!==right[axis]){let lPlane=-1;let rPlane=255;if(left[axis]<right[axis]){lPlane=hct_solver_HctSolver.criticalPlaneBelow(hct_solver_HctSolver.trueDelinearized(left[axis]));rPlane=hct_solver_HctSolver.criticalPlaneAbove(hct_solver_HctSolver.trueDelinearized(right[axis]))}else{lPlane=hct_solver_HctSolver.criticalPlaneAbove(hct_solver_HctSolver.trueDelinearized(left[axis]));rPlane=hct_solver_HctSolver.criticalPlaneBelow(hct_solver_HctSolver.trueDelinearized(right[axis]))}for(let i=0;i<8;i++){if(Math.abs(rPlane-lPlane)<=1){break}else{const mPlane=Math.floor((lPlane+rPlane)/2);const midPlaneCoordinate=hct_solver_HctSolver.CRITICAL_PLANES[mPlane];const mid=hct_solver_HctSolver.setCoordinate(left,midPlaneCoordinate,right,axis);const midHue=hct_solver_HctSolver.hueOf(mid);if(hct_solver_HctSolver.areInCyclicOrder(leftHue,targetHue,midHue)){right=mid;rPlane=mPlane}else{left=mid;leftHue=midHue;lPlane=mPlane}}}}}return hct_solver_HctSolver.midpoint(left,right)}static inverseChromaticAdaptation(adapted){const adaptedAbs=Math.abs(adapted);const base=Math.max(0,27.13*adaptedAbs/(400-adaptedAbs));return signum(adapted)*Math.pow(base,1/.42)}static findResultByJ(hueRadians,chroma,y){let j=Math.sqrt(y)*11;const viewingConditions=viewing_conditions_ViewingConditions.DEFAULT;const tInnerCoeff=1/Math.pow(1.64-Math.pow(.29,viewingConditions.n),.73);const eHue=.25*(Math.cos(hueRadians+2)+3.8);const p1=eHue*(5e4/13)*viewingConditions.nc*viewingConditions.ncb;const hSin=Math.sin(hueRadians);const hCos=Math.cos(hueRadians);for(let iterationRound=0;iterationRound<5;iterationRound++){const jNormalized=j/100;const alpha=chroma===0||j===0?0:chroma/Math.sqrt(jNormalized);const t=Math.pow(alpha*tInnerCoeff,1/.9);const ac=viewingConditions.aw*Math.pow(jNormalized,1/viewingConditions.c/viewingConditions.z);const p2=ac/viewingConditions.nbb;const gamma=23*(p2+.305)*t/(23*p1+11*t*hCos+108*t*hSin);const a=gamma*hCos;const b=gamma*hSin;const rA=(460*p2+451*a+288*b)/1403;const gA=(460*p2-891*a-261*b)/1403;const bA=(460*p2-220*a-6300*b)/1403;const rCScaled=hct_solver_HctSolver.inverseChromaticAdaptation(rA);const gCScaled=hct_solver_HctSolver.inverseChromaticAdaptation(gA);const bCScaled=hct_solver_HctSolver.inverseChromaticAdaptation(bA);const linrgb=matrixMultiply([rCScaled,gCScaled,bCScaled],hct_solver_HctSolver.LINRGB_FROM_SCALED_DISCOUNT);if(linrgb[0]<0||linrgb[1]<0||linrgb[2]<0){return 0}const kR=hct_solver_HctSolver.Y_FROM_LINRGB[0];const kG=hct_solver_HctSolver.Y_FROM_LINRGB[1];const kB=hct_solver_HctSolver.Y_FROM_LINRGB[2];const fnj=kR*linrgb[0]+kG*linrgb[1]+kB*linrgb[2];if(fnj<=0){return 0}if(iterationRound===4||Math.abs(fnj-y)<.002){if(linrgb[0]>100.01||linrgb[1]>100.01||linrgb[2]>100.01){return 0}return argbFromLinrgb(linrgb)}j=j-(fnj-y)*j/(2*fnj)}return 0}static solveToInt(hueDegrees,chroma,lstar){if(chroma<1e-4||lstar<1e-4||lstar>99.9999){return argbFromLstar(lstar)}hueDegrees=sanitizeDegreesDouble(hueDegrees);const hueRadians=hueDegrees/180*Math.PI;const y=yFromLstar(lstar);const exactAnswer=hct_solver_HctSolver.findResultByJ(hueRadians,chroma,y);if(exactAnswer!==0){return exactAnswer}const linrgb=hct_solver_HctSolver.bisectToLimit(y,hueRadians);return argbFromLinrgb(linrgb)}static solveToCam(hueDegrees,chroma,lstar){return cam16_Cam16.fromInt(hct_solver_HctSolver.solveToInt(hueDegrees,chroma,lstar))}}hct_solver_HctSolver.SCALED_DISCOUNT_FROM_LINRGB=[[.001200833568784504,.002389694492170889,.0002795742885861124],[.0005891086651375999,.0029785502573438758,.0003270666104008398],[.00010146692491640572,.0005364214359186694,.0032979401770712076]];hct_solver_HctSolver.LINRGB_FROM_SCALED_DISCOUNT=[[1373.2198709594231,-1100.4251190754821,-7.278681089101213],[-271.815969077903,559.6580465940733,-32.46047482791194],[1.9622899599665666,-57.173814538844006,308.7233197812385]];hct_solver_HctSolver.Y_FROM_LINRGB=[.2126,.7152,.0722];hct_solver_HctSolver.CRITICAL_PLANES=[.015176349177441876,.045529047532325624,.07588174588720938,.10623444424209313,.13658714259697685,.16693984095186062,.19729253930674434,.2276452376616281,.2579979360165119,.28835063437139563,.3188300904430532,.350925934958123,.3848314933096426,.42057480301049466,.458183274052838,.4976837250274023,.5391024159806381,.5824650784040898,.6277969426914107,.6751227633498623,.7244668422128921,.775853049866786,.829304845476233,.8848452951698498,.942497089126609,1.0022825574869039,1.0642236851973577,1.1283421258858297,1.1946592148522128,1.2631959812511864,1.3339731595349034,1.407011200216447,1.4823302800086415,1.5599503113873272,1.6398909516233677,1.7221716113234105,1.8068114625156377,1.8938294463134073,1.9832442801866852,2.075074464868551,2.1693382909216234,2.2660538449872063,2.36523901573795,2.4669114995532007,2.5710888059345764,2.6777882626779785,2.7870270208169257,2.898822059350997,3.0131901897720907,3.1301480604002863,3.2497121605402226,3.3718988244681087,3.4967242352587946,3.624204428461639,3.754355295633311,3.887192587735158,4.022731918402185,4.160988767090289,4.301978482107941,4.445716283538092,4.592217266055746,4.741496401646282,4.893568542229298,5.048448422192488,5.20615066083972,5.3666897647573375,5.5300801301023865,5.696336044816294,5.865471690767354,6.037501145825082,6.212438385869475,6.390297286737924,6.571091626112461,6.7548350853498045,6.941541251256611,7.131223617812143,7.323895587840543,7.5195704746346665,7.7182615035334345,7.919981813454504,8.124744458384042,8.332562408825165,8.543448553206703,8.757415699253682,8.974476575321063,9.194643831691977,9.417930041841839,9.644347703669503,9.873909240696694,10.106627003236781,10.342513269534024,10.58158024687427,10.8238400726681,11.069304815507364,11.317986476196008,11.569896988756009,11.825048221409341,12.083451977536606,12.345119996613247,12.610063955123938,12.878295467455942,13.149826086772048,13.42466730586372,13.702830557985108,13.984327217668513,14.269168601521828,14.55736596900856,14.848930523210871,15.143873411576273,15.44220572664832,15.743938506781891,16.04908273684337,16.35764934889634,16.66964922287304,16.985093187232053,17.30399201960269,17.62635644741625,17.95219714852476,18.281524751807332,18.614349837764564,18.95068293910138,19.290534541298456,19.633915083172692,19.98083495742689,20.331304511189067,20.685334046541502,21.042933821039977,21.404114048223256,21.76888489811322,22.137256497705877,22.50923893145328,22.884842241736916,23.264076429332462,23.6469514538663,24.033477234264016,24.42366364919083,24.817520537484558,25.21505769858089,25.61628489293138,26.021211842414342,26.429848230738664,26.842203703840827,27.258287870275353,27.678110301598522,28.10168053274597,28.529008062403893,28.96010235337422,29.39497283293396,29.83362889318845,30.276079891419332,30.722335150426627,31.172403958865512,31.62629557157785,32.08401920991837,32.54558406207592,33.010999283389665,33.4802739966603,33.953417292456834,34.430438229418264,34.911345834551085,35.39614910352207,35.88485700094671,36.37747846067349,36.87402238606382,37.37449765026789,37.87891309649659,38.38727753828926,38.89959975977785,39.41588851594697,39.93615253289054,40.460400508064545,40.98864111053629,41.520882981230194,42.05713473317016,42.597404951718396,43.141702194811224,43.6900349931913,44.24241185063697,44.798841244188324,45.35933162437017,45.92389141541209,46.49252901546552,47.065252796817916,47.64207110610409,48.22299226451468,48.808024568002054,49.3971762874833,49.9904556690408,50.587870934119984,51.189430279724725,51.79514187861014,52.40501387947288,53.0190544071392,53.637271562750364,54.259673423945976,54.88626804504493,55.517063457223934,56.15206766869424,56.79128866487574,57.43473440856916,58.08241284012621,58.734331877617365,59.39049941699807,60.05092333227251,60.715611475655585,61.38457167773311,62.057811747619894,62.7353394731159,63.417162620860914,64.10328893648692,64.79372614476921,65.48848194977529,66.18756403501224,66.89098006357258,67.59873767827808,68.31084450182222,69.02730813691093,69.74813616640164,70.47333615344107,71.20291564160104,71.93688215501312,72.67524319850172,73.41800625771542,74.16517879925733,74.9167682708136,75.67278210128072,76.43322770089146,77.1981124613393,77.96744375590167,78.74122893956174,79.51947534912904,80.30219030335869,81.08938110306934,81.88105503125999,82.67721935322541,83.4778813166706,84.28304815182372,85.09272707154808,85.90692527145302,86.72564993000343,87.54890820862819,88.3767072518277,89.2090541872801,90.04595612594655,90.88742016217518,91.73345337380438,92.58406282226491,93.43925555268066,94.29903859396902,95.16341895893969,96.03240364439274,96.9059996312159,97.78421388448044,98.6670533535366,99.55452497210776];class hct_Hct{constructor(argb){this.argb=argb;const cam=cam16_Cam16.fromInt(argb);this.internalHue=cam.hue;this.internalChroma=cam.chroma;this.internalTone=lstarFromArgb(argb);this.argb=argb}static from(hue,chroma,tone){return new hct_Hct(hct_solver_HctSolver.solveToInt(hue,chroma,tone))}static fromInt(argb){return new hct_Hct(argb)}toInt(){return this.argb}get hue(){return this.internalHue}set hue(newHue){this.setInternalState(hct_solver_HctSolver.solveToInt(newHue,this.internalChroma,this.internalTone))}get chroma(){return this.internalChroma}set chroma(newChroma){this.setInternalState(hct_solver_HctSolver.solveToInt(this.internalHue,newChroma,this.internalTone))}get tone(){return this.internalTone}set tone(newTone){this.setInternalState(hct_solver_HctSolver.solveToInt(this.internalHue,this.internalChroma,newTone))}setInternalState(argb){const cam=cam16_Cam16.fromInt(argb);this.internalHue=cam.hue;this.internalChroma=cam.chroma;this.internalTone=lstarFromArgb(argb);this.argb=argb}}class blend_Blend{static harmonize(designColor,sourceColor){const fromHct=hct_Hct.fromInt(designColor);const toHct=hct_Hct.fromInt(sourceColor);const differenceDegrees=math_utils_differenceDegrees(fromHct.hue,toHct.hue);const rotationDegrees=Math.min(differenceDegrees*.5,15);const outputHue=sanitizeDegreesDouble(fromHct.hue+rotationDegrees*rotationDirection(fromHct.hue,toHct.hue));return hct_Hct.from(outputHue,fromHct.chroma,fromHct.tone).toInt()}static hctHue(from,to,amount){const ucs=blend_Blend.cam16Ucs(from,to,amount);const ucsCam=cam16_Cam16.fromInt(ucs);const fromCam=cam16_Cam16.fromInt(from);const blended=hct_Hct.from(ucsCam.hue,fromCam.chroma,lstarFromArgb(from));return blended.toInt()}static cam16Ucs(from,to,amount){const fromCam=cam16_Cam16.fromInt(from);const toCam=cam16_Cam16.fromInt(to);const fromJ=fromCam.jstar;const fromA=fromCam.astar;const fromB=fromCam.bstar;const toJ=toCam.jstar;const toA=toCam.astar;const toB=toCam.bstar;const jstar=fromJ+(toJ-fromJ)*amount;const astar=fromA+(toA-fromA)*amount;const bstar=fromB+(toB-fromB)*amount;return cam16_Cam16.fromUcs(jstar,astar,bstar).toInt()}}class tonal_palette_TonalPalette{constructor(hue,chroma){this.hue=hue;this.chroma=chroma;this.cache=new Map}static fromInt(argb){const hct=hct_Hct.fromInt(argb);return tonal_palette_TonalPalette.fromHueAndChroma(hct.hue,hct.chroma)}static fromHueAndChroma(hue,chroma){return new tonal_palette_TonalPalette(hue,chroma)}tone(tone){let argb=this.cache.get(tone);if(argb===undefined){argb=hct_Hct.from(this.hue,this.chroma,tone).toInt();this.cache.set(tone,argb)}return argb}}class core_palette_CorePalette{constructor(argb,isContent){const hct=hct_Hct.fromInt(argb);const hue=hct.hue;const chroma=hct.chroma;if(isContent){this.a1=tonal_palette_TonalPalette.fromHueAndChroma(hue,chroma);this.a2=tonal_palette_TonalPalette.fromHueAndChroma(hue,chroma/3);this.a3=tonal_palette_TonalPalette.fromHueAndChroma(hue+60,chroma/2);this.n1=tonal_palette_TonalPalette.fromHueAndChroma(hue,Math.min(chroma/12,4));this.n2=tonal_palette_TonalPalette.fromHueAndChroma(hue,Math.min(chroma/6,8))}else{this.a1=tonal_palette_TonalPalette.fromHueAndChroma(hue,Math.max(48,chroma));this.a2=tonal_palette_TonalPalette.fromHueAndChroma(hue,16);this.a3=tonal_palette_TonalPalette.fromHueAndChroma(hue+60,24);this.n1=tonal_palette_TonalPalette.fromHueAndChroma(hue,4);this.n2=tonal_palette_TonalPalette.fromHueAndChroma(hue,8)}this.error=tonal_palette_TonalPalette.fromHueAndChroma(25,84)}static of(argb){return new core_palette_CorePalette(argb,false)}static contentOf(argb){return new core_palette_CorePalette(argb,true)}}var point_provider=__webpack_require__(143);class lab_point_provider_LabPointProvider{fromInt(argb){return labFromArgb(argb)}toInt(point){return argbFromLab(point[0],point[1],point[2])}distance(from,to){const dL=from[0]-to[0];const dA=from[1]-to[1];const dB=from[2]-to[2];return dL*dL+dA*dA+dB*dB}}const MAX_ITERATIONS=10;const MIN_MOVEMENT_DISTANCE=3;class quantizer_wsmeans_QuantizerWsmeans{static quantize(inputPixels,startingClusters,maxColors){const pixelToCount=new Map;const points=new Array;const pixels=new Array;const pointProvider=new lab_point_provider_LabPointProvider;let pointCount=0;for(let i=0;i<inputPixels.length;i++){const inputPixel=inputPixels[i];const pixelCount=pixelToCount.get(inputPixel);if(pixelCount===undefined){pointCount++;points.push(pointProvider.fromInt(inputPixel));pixels.push(inputPixel);pixelToCount.set(inputPixel,1)}else{pixelToCount.set(inputPixel,pixelCount+1)}}const counts=new Array;for(let i=0;i<pointCount;i++){const pixel=pixels[i];const count=pixelToCount.get(pixel);if(count!==undefined){counts[i]=count}}let clusterCount=Math.min(maxColors,pointCount);if(startingClusters.length>0){clusterCount=Math.min(clusterCount,startingClusters.length)}const clusters=new Array;for(let i=0;i<startingClusters.length;i++){clusters.push(pointProvider.fromInt(startingClusters[i]))}const additionalClustersNeeded=clusterCount-clusters.length;if(startingClusters.length===0&&additionalClustersNeeded>0){for(let i=0;i<additionalClustersNeeded;i++){const l=Math.random()*100;const a=Math.random()*(100- -100+1)+-100;const b=Math.random()*(100- -100+1)+-100;clusters.push(new Array(l,a,b))}}const clusterIndices=new Array;for(let i=0;i<pointCount;i++){clusterIndices.push(Math.floor(Math.random()*clusterCount))}const indexMatrix=new Array;for(let i=0;i<clusterCount;i++){indexMatrix.push(new Array);for(let j=0;j<clusterCount;j++){indexMatrix[i].push(0)}}const distanceToIndexMatrix=new Array;for(let i=0;i<clusterCount;i++){distanceToIndexMatrix.push(new Array);for(let j=0;j<clusterCount;j++){distanceToIndexMatrix[i].push(new DistanceAndIndex)}}const pixelCountSums=new Array;for(let i=0;i<clusterCount;i++){pixelCountSums.push(0)}for(let iteration=0;iteration<MAX_ITERATIONS;iteration++){for(let i=0;i<clusterCount;i++){for(let j=i+1;j<clusterCount;j++){const distance=pointProvider.distance(clusters[i],clusters[j]);distanceToIndexMatrix[j][i].distance=distance;distanceToIndexMatrix[j][i].index=i;distanceToIndexMatrix[i][j].distance=distance;distanceToIndexMatrix[i][j].index=j}distanceToIndexMatrix[i].sort();for(let j=0;j<clusterCount;j++){indexMatrix[i][j]=distanceToIndexMatrix[i][j].index}}let pointsMoved=0;for(let i=0;i<pointCount;i++){const point=points[i];const previousClusterIndex=clusterIndices[i];const previousCluster=clusters[previousClusterIndex];const previousDistance=pointProvider.distance(point,previousCluster);let minimumDistance=previousDistance;let newClusterIndex=-1;for(let j=0;j<clusterCount;j++){if(distanceToIndexMatrix[previousClusterIndex][j].distance>=4*previousDistance){continue}const distance=pointProvider.distance(point,clusters[j]);if(distance<minimumDistance){minimumDistance=distance;newClusterIndex=j}}if(newClusterIndex!==-1){const distanceChange=Math.abs(Math.sqrt(minimumDistance)-Math.sqrt(previousDistance));if(distanceChange>MIN_MOVEMENT_DISTANCE){pointsMoved++;clusterIndices[i]=newClusterIndex}}}if(pointsMoved===0&&iteration!==0){break}const componentASums=new Array(clusterCount).fill(0);const componentBSums=new Array(clusterCount).fill(0);const componentCSums=new Array(clusterCount).fill(0);for(let i=0;i<clusterCount;i++){pixelCountSums[i]=0}for(let i=0;i<pointCount;i++){const clusterIndex=clusterIndices[i];const point=points[i];const count=counts[i];pixelCountSums[clusterIndex]+=count;componentASums[clusterIndex]+=point[0]*count;componentBSums[clusterIndex]+=point[1]*count;componentCSums[clusterIndex]+=point[2]*count}for(let i=0;i<clusterCount;i++){const count=pixelCountSums[i];if(count===0){clusters[i]=[0,0,0];continue}const a=componentASums[i]/count;const b=componentBSums[i]/count;const c=componentCSums[i]/count;clusters[i]=[a,b,c]}}const argbToPopulation=new Map;for(let i=0;i<clusterCount;i++){const count=pixelCountSums[i];if(count===0){continue}const possibleNewCluster=pointProvider.toInt(clusters[i]);if(argbToPopulation.has(possibleNewCluster)){continue}argbToPopulation.set(possibleNewCluster,count)}return argbToPopulation}}class DistanceAndIndex{constructor(){this.distance=-1;this.index=-1}}class quantizer_map_QuantizerMap{static quantize(pixels){var _a;const countByColor=new Map;for(let i=0;i<pixels.length;i++){const pixel=pixels[i];const alpha=alphaFromArgb(pixel);if(alpha<255){continue}countByColor.set(pixel,((_a=countByColor.get(pixel))!==null&&_a!==void 0?_a:0)+1)}return countByColor}}const INDEX_BITS=5;const SIDE_LENGTH=33;const TOTAL_SIZE=35937;const directions={RED:"red",GREEN:"green",BLUE:"blue"};class quantizer_wu_QuantizerWu{constructor(){let weights=arguments.length>0&&arguments[0]!==undefined?arguments[0]:[];let momentsR=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];let momentsG=arguments.length>2&&arguments[2]!==undefined?arguments[2]:[];let momentsB=arguments.length>3&&arguments[3]!==undefined?arguments[3]:[];let moments=arguments.length>4&&arguments[4]!==undefined?arguments[4]:[];let cubes=arguments.length>5&&arguments[5]!==undefined?arguments[5]:[];this.weights=weights;this.momentsR=momentsR;this.momentsG=momentsG;this.momentsB=momentsB;this.moments=moments;this.cubes=cubes}quantize(pixels,maxColors){this.constructHistogram(pixels);this.computeMoments();const createBoxesResult=this.createBoxes(maxColors);const results=this.createResult(createBoxesResult.resultCount);return results}constructHistogram(pixels){var _a;this.weights=Array.from({length:TOTAL_SIZE}).fill(0);this.momentsR=Array.from({length:TOTAL_SIZE}).fill(0);this.momentsG=Array.from({length:TOTAL_SIZE}).fill(0);this.momentsB=Array.from({length:TOTAL_SIZE}).fill(0);this.moments=Array.from({length:TOTAL_SIZE}).fill(0);const countByColor=quantizer_map_QuantizerMap.quantize(pixels);for(const[pixel,count]of countByColor.entries()){const red=redFromArgb(pixel);const green=greenFromArgb(pixel);const blue=blueFromArgb(pixel);const bitsToRemove=8-INDEX_BITS;const iR=(red>>bitsToRemove)+1;const iG=(green>>bitsToRemove)+1;const iB=(blue>>bitsToRemove)+1;const index=this.getIndex(iR,iG,iB);this.weights[index]=((_a=this.weights[index])!==null&&_a!==void 0?_a:0)+count;this.momentsR[index]+=count*red;this.momentsG[index]+=count*green;this.momentsB[index]+=count*blue;this.moments[index]+=count*(red*red+green*green+blue*blue)}}computeMoments(){for(let r=1;r<SIDE_LENGTH;r++){const area=Array.from({length:SIDE_LENGTH}).fill(0);const areaR=Array.from({length:SIDE_LENGTH}).fill(0);const areaG=Array.from({length:SIDE_LENGTH}).fill(0);const areaB=Array.from({length:SIDE_LENGTH}).fill(0);const area2=Array.from({length:SIDE_LENGTH}).fill(0);for(let g=1;g<SIDE_LENGTH;g++){let line=0;let lineR=0;let lineG=0;let lineB=0;let line2=0;for(let b=1;b<SIDE_LENGTH;b++){const index=this.getIndex(r,g,b);line+=this.weights[index];lineR+=this.momentsR[index];lineG+=this.momentsG[index];lineB+=this.momentsB[index];line2+=this.moments[index];area[b]+=line;areaR[b]+=lineR;areaG[b]+=lineG;areaB[b]+=lineB;area2[b]+=line2;const previousIndex=this.getIndex(r-1,g,b);this.weights[index]=this.weights[previousIndex]+area[b];this.momentsR[index]=this.momentsR[previousIndex]+areaR[b];this.momentsG[index]=this.momentsG[previousIndex]+areaG[b];this.momentsB[index]=this.momentsB[previousIndex]+areaB[b];this.moments[index]=this.moments[previousIndex]+area2[b]}}}}createBoxes(maxColors){this.cubes=Array.from({length:maxColors}).fill(0).map((()=>new Box));const volumeVariance=Array.from({length:maxColors}).fill(0);this.cubes[0].r0=0;this.cubes[0].g0=0;this.cubes[0].b0=0;this.cubes[0].r1=SIDE_LENGTH-1;this.cubes[0].g1=SIDE_LENGTH-1;this.cubes[0].b1=SIDE_LENGTH-1;let generatedColorCount=maxColors;let next=0;for(let i=1;i<maxColors;i++){if(this.cut(this.cubes[next],this.cubes[i])){volumeVariance[next]=this.cubes[next].vol>1?this.variance(this.cubes[next]):0;volumeVariance[i]=this.cubes[i].vol>1?this.variance(this.cubes[i]):0}else{volumeVariance[next]=0;i--}next=0;let temp=volumeVariance[0];for(let j=1;j<=i;j++){if(volumeVariance[j]>temp){temp=volumeVariance[j];next=j}}if(temp<=0){generatedColorCount=i+1;break}}return new CreateBoxesResult(maxColors,generatedColorCount)}createResult(colorCount){const colors=[];for(let i=0;i<colorCount;++i){const cube=this.cubes[i];const weight=this.volume(cube,this.weights);if(weight>0){const r=Math.round(this.volume(cube,this.momentsR)/weight);const g=Math.round(this.volume(cube,this.momentsG)/weight);const b=Math.round(this.volume(cube,this.momentsB)/weight);const color=255<<24|(r&255)<<16|(g&255)<<8|b&255;colors.push(color)}}return colors}variance(cube){const dr=this.volume(cube,this.momentsR);const dg=this.volume(cube,this.momentsG);const db=this.volume(cube,this.momentsB);const xx=this.moments[this.getIndex(cube.r1,cube.g1,cube.b1)]-this.moments[this.getIndex(cube.r1,cube.g1,cube.b0)]-this.moments[this.getIndex(cube.r1,cube.g0,cube.b1)]+this.moments[this.getIndex(cube.r1,cube.g0,cube.b0)]-this.moments[this.getIndex(cube.r0,cube.g1,cube.b1)]+this.moments[this.getIndex(cube.r0,cube.g1,cube.b0)]+this.moments[this.getIndex(cube.r0,cube.g0,cube.b1)]-this.moments[this.getIndex(cube.r0,cube.g0,cube.b0)];const hypotenuse=dr*dr+dg*dg+db*db;const volume=this.volume(cube,this.weights);return xx-hypotenuse/volume}cut(one,two){const wholeR=this.volume(one,this.momentsR);const wholeG=this.volume(one,this.momentsG);const wholeB=this.volume(one,this.momentsB);const wholeW=this.volume(one,this.weights);const maxRResult=this.maximize(one,directions.RED,one.r0+1,one.r1,wholeR,wholeG,wholeB,wholeW);const maxGResult=this.maximize(one,directions.GREEN,one.g0+1,one.g1,wholeR,wholeG,wholeB,wholeW);const maxBResult=this.maximize(one,directions.BLUE,one.b0+1,one.b1,wholeR,wholeG,wholeB,wholeW);let direction;const maxR=maxRResult.maximum;const maxG=maxGResult.maximum;const maxB=maxBResult.maximum;if(maxR>=maxG&&maxR>=maxB){if(maxRResult.cutLocation<0){return false}direction=directions.RED}else if(maxG>=maxR&&maxG>=maxB){direction=directions.GREEN}else{direction=directions.BLUE}two.r1=one.r1;two.g1=one.g1;two.b1=one.b1;switch(direction){case directions.RED:one.r1=maxRResult.cutLocation;two.r0=one.r1;two.g0=one.g0;two.b0=one.b0;break;case directions.GREEN:one.g1=maxGResult.cutLocation;two.r0=one.r0;two.g0=one.g1;two.b0=one.b0;break;case directions.BLUE:one.b1=maxBResult.cutLocation;two.r0=one.r0;two.g0=one.g0;two.b0=one.b1;break;default:throw new Error("unexpected direction "+direction)}one.vol=(one.r1-one.r0)*(one.g1-one.g0)*(one.b1-one.b0);two.vol=(two.r1-two.r0)*(two.g1-two.g0)*(two.b1-two.b0);return true}maximize(cube,direction,first,last,wholeR,wholeG,wholeB,wholeW){const bottomR=this.bottom(cube,direction,this.momentsR);const bottomG=this.bottom(cube,direction,this.momentsG);const bottomB=this.bottom(cube,direction,this.momentsB);const bottomW=this.bottom(cube,direction,this.weights);let max=0;let cut=-1;let halfR=0;let halfG=0;let halfB=0;let halfW=0;for(let i=first;i<last;i++){halfR=bottomR+this.top(cube,direction,i,this.momentsR);halfG=bottomG+this.top(cube,direction,i,this.momentsG);halfB=bottomB+this.top(cube,direction,i,this.momentsB);halfW=bottomW+this.top(cube,direction,i,this.weights);if(halfW===0){continue}let tempNumerator=(halfR*halfR+halfG*halfG+halfB*halfB)*1;let tempDenominator=halfW*1;let temp=tempNumerator/tempDenominator;halfR=wholeR-halfR;halfG=wholeG-halfG;halfB=wholeB-halfB;halfW=wholeW-halfW;if(halfW===0){continue}tempNumerator=(halfR*halfR+halfG*halfG+halfB*halfB)*1;tempDenominator=halfW*1;temp+=tempNumerator/tempDenominator;if(temp>max){max=temp;cut=i}}return new MaximizeResult(cut,max)}volume(cube,moment){return moment[this.getIndex(cube.r1,cube.g1,cube.b1)]-moment[this.getIndex(cube.r1,cube.g1,cube.b0)]-moment[this.getIndex(cube.r1,cube.g0,cube.b1)]+moment[this.getIndex(cube.r1,cube.g0,cube.b0)]-moment[this.getIndex(cube.r0,cube.g1,cube.b1)]+moment[this.getIndex(cube.r0,cube.g1,cube.b0)]+moment[this.getIndex(cube.r0,cube.g0,cube.b1)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)]}bottom(cube,direction,moment){switch(direction){case directions.RED:return-moment[this.getIndex(cube.r0,cube.g1,cube.b1)]+moment[this.getIndex(cube.r0,cube.g1,cube.b0)]+moment[this.getIndex(cube.r0,cube.g0,cube.b1)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)];case directions.GREEN:return-moment[this.getIndex(cube.r1,cube.g0,cube.b1)]+moment[this.getIndex(cube.r1,cube.g0,cube.b0)]+moment[this.getIndex(cube.r0,cube.g0,cube.b1)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)];case directions.BLUE:return-moment[this.getIndex(cube.r1,cube.g1,cube.b0)]+moment[this.getIndex(cube.r1,cube.g0,cube.b0)]+moment[this.getIndex(cube.r0,cube.g1,cube.b0)]-moment[this.getIndex(cube.r0,cube.g0,cube.b0)];default:throw new Error("unexpected direction $direction")}}top(cube,direction,position,moment){switch(direction){case directions.RED:return moment[this.getIndex(position,cube.g1,cube.b1)]-moment[this.getIndex(position,cube.g1,cube.b0)]-moment[this.getIndex(position,cube.g0,cube.b1)]+moment[this.getIndex(position,cube.g0,cube.b0)];case directions.GREEN:return moment[this.getIndex(cube.r1,position,cube.b1)]-moment[this.getIndex(cube.r1,position,cube.b0)]-moment[this.getIndex(cube.r0,position,cube.b1)]+moment[this.getIndex(cube.r0,position,cube.b0)];case directions.BLUE:return moment[this.getIndex(cube.r1,cube.g1,position)]-moment[this.getIndex(cube.r1,cube.g0,position)]-moment[this.getIndex(cube.r0,cube.g1,position)]+moment[this.getIndex(cube.r0,cube.g0,position)];default:throw new Error("unexpected direction $direction")}}getIndex(r,g,b){return(r<<INDEX_BITS*2)+(r<<INDEX_BITS+1)+r+(g<<INDEX_BITS)+g+b}}class Box{constructor(){let r0=arguments.length>0&&arguments[0]!==undefined?arguments[0]:0;let r1=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;let g0=arguments.length>2&&arguments[2]!==undefined?arguments[2]:0;let g1=arguments.length>3&&arguments[3]!==undefined?arguments[3]:0;let b0=arguments.length>4&&arguments[4]!==undefined?arguments[4]:0;let b1=arguments.length>5&&arguments[5]!==undefined?arguments[5]:0;let vol=arguments.length>6&&arguments[6]!==undefined?arguments[6]:0;this.r0=r0;this.r1=r1;this.g0=g0;this.g1=g1;this.b0=b0;this.b1=b1;this.vol=vol}}class CreateBoxesResult{constructor(requestedCount,resultCount){this.requestedCount=requestedCount;this.resultCount=resultCount}}class MaximizeResult{constructor(cutLocation,maximum){this.cutLocation=cutLocation;this.maximum=maximum}}class quantizer_celebi_QuantizerCelebi{static quantize(pixels,maxColors){const wu=new quantizer_wu_QuantizerWu;const wuResult=wu.quantize(pixels,maxColors);return quantizer_wsmeans_QuantizerWsmeans.quantize(pixels,wuResult,maxColors)}}class scheme_Scheme{constructor(props){this.props=props}get primary(){return this.props.primary}get onPrimary(){return this.props.onPrimary}get primaryContainer(){return this.props.primaryContainer}get onPrimaryContainer(){return this.props.onPrimaryContainer}get secondary(){return this.props.secondary}get onSecondary(){return this.props.onSecondary}get secondaryContainer(){return this.props.secondaryContainer}get onSecondaryContainer(){return this.props.onSecondaryContainer}get tertiary(){return this.props.tertiary}get onTertiary(){return this.props.onTertiary}get tertiaryContainer(){return this.props.tertiaryContainer}get onTertiaryContainer(){return this.props.onTertiaryContainer}get error(){return this.props.error}get onError(){return this.props.onError}get errorContainer(){return this.props.errorContainer}get onErrorContainer(){return this.props.onErrorContainer}get background(){return this.props.background}get onBackground(){return this.props.onBackground}get surface(){return this.props.surface}get onSurface(){return this.props.onSurface}get surfaceVariant(){return this.props.surfaceVariant}get onSurfaceVariant(){return this.props.onSurfaceVariant}get outline(){return this.props.outline}get outlineVariant(){return this.props.outlineVariant}get shadow(){return this.props.shadow}get scrim(){return this.props.scrim}get inverseSurface(){return this.props.inverseSurface}get inverseOnSurface(){return this.props.inverseOnSurface}get inversePrimary(){return this.props.inversePrimary}static light(argb){return scheme_Scheme.lightFromCorePalette(core_palette_CorePalette.of(argb))}static dark(argb){return scheme_Scheme.darkFromCorePalette(core_palette_CorePalette.of(argb))}static lightContent(argb){return scheme_Scheme.lightFromCorePalette(core_palette_CorePalette.contentOf(argb))}static darkContent(argb){return scheme_Scheme.darkFromCorePalette(core_palette_CorePalette.contentOf(argb))}static lightFromCorePalette(core){return new scheme_Scheme({primary:core.a1.tone(40),onPrimary:core.a1.tone(100),primaryContainer:core.a1.tone(90),onPrimaryContainer:core.a1.tone(10),secondary:core.a2.tone(40),onSecondary:core.a2.tone(100),secondaryContainer:core.a2.tone(90),onSecondaryContainer:core.a2.tone(10),tertiary:core.a3.tone(40),onTertiary:core.a3.tone(100),tertiaryContainer:core.a3.tone(90),onTertiaryContainer:core.a3.tone(10),error:core.error.tone(40),onError:core.error.tone(100),errorContainer:core.error.tone(90),onErrorContainer:core.error.tone(10),background:core.n1.tone(99),onBackground:core.n1.tone(10),surface:core.n1.tone(99),onSurface:core.n1.tone(10),surfaceVariant:core.n2.tone(90),onSurfaceVariant:core.n2.tone(30),outline:core.n2.tone(50),outlineVariant:core.n2.tone(80),shadow:core.n1.tone(0),scrim:core.n1.tone(0),inverseSurface:core.n1.tone(20),inverseOnSurface:core.n1.tone(95),inversePrimary:core.a1.tone(80)})}static darkFromCorePalette(core){return new scheme_Scheme({primary:core.a1.tone(80),onPrimary:core.a1.tone(20),primaryContainer:core.a1.tone(30),onPrimaryContainer:core.a1.tone(90),secondary:core.a2.tone(80),onSecondary:core.a2.tone(20),secondaryContainer:core.a2.tone(30),onSecondaryContainer:core.a2.tone(90),tertiary:core.a3.tone(80),onTertiary:core.a3.tone(20),tertiaryContainer:core.a3.tone(30),onTertiaryContainer:core.a3.tone(90),error:core.error.tone(80),onError:core.error.tone(20),errorContainer:core.error.tone(30),onErrorContainer:core.error.tone(80),background:core.n1.tone(10),onBackground:core.n1.tone(90),surface:core.n1.tone(10),onSurface:core.n1.tone(90),surfaceVariant:core.n2.tone(30),onSurfaceVariant:core.n2.tone(80),outline:core.n2.tone(60),outlineVariant:core.n2.tone(30),shadow:core.n1.tone(0),scrim:core.n1.tone(0),inverseSurface:core.n1.tone(90),inverseOnSurface:core.n1.tone(20),inversePrimary:core.a1.tone(40)})}toJSON(){return Object.assign({},this.props)}}class scheme_android_SchemeAndroid{constructor(props){this.props=props}get colorAccentPrimary(){return this.props.colorAccentPrimary}get colorAccentPrimaryVariant(){return this.props.colorAccentPrimaryVariant}get colorAccentSecondary(){return this.props.colorAccentSecondary}get colorAccentSecondaryVariant(){return this.props.colorAccentSecondaryVariant}get colorAccentTertiary(){return this.props.colorAccentTertiary}get colorAccentTertiaryVariant(){return this.props.colorAccentTertiaryVariant}get textColorPrimary(){return this.props.textColorPrimary}get textColorSecondary(){return this.props.textColorSecondary}get textColorTertiary(){return this.props.textColorTertiary}get textColorPrimaryInverse(){return this.props.textColorPrimaryInverse}get textColorSecondaryInverse(){return this.props.textColorSecondaryInverse}get textColorTertiaryInverse(){return this.props.textColorTertiaryInverse}get colorBackground(){return this.props.colorBackground}get colorBackgroundFloating(){return this.props.colorBackgroundFloating}get colorSurface(){return this.props.colorSurface}get colorSurfaceVariant(){return this.props.colorSurfaceVariant}get colorSurfaceHighlight(){return this.props.colorSurfaceHighlight}get surfaceHeader(){return this.props.surfaceHeader}get underSurface(){return this.props.underSurface}get offState(){return this.props.offState}get accentSurface(){return this.props.accentSurface}get textPrimaryOnAccent(){return this.props.textPrimaryOnAccent}get textSecondaryOnAccent(){return this.props.textSecondaryOnAccent}get volumeBackground(){return this.props.volumeBackground}get scrim(){return this.props.scrim}static light(argb){const core=core_palette_CorePalette.of(argb);return scheme_android_SchemeAndroid.lightFromCorePalette(core)}static dark(argb){const core=core_palette_CorePalette.of(argb);return scheme_android_SchemeAndroid.darkFromCorePalette(core)}static lightContent(argb){const core=core_palette_CorePalette.contentOf(argb);return scheme_android_SchemeAndroid.lightFromCorePalette(core)}static darkContent(argb){const core=core_palette_CorePalette.contentOf(argb);return scheme_android_SchemeAndroid.darkFromCorePalette(core)}static lightFromCorePalette(core){return new scheme_android_SchemeAndroid({colorAccentPrimary:core.a1.tone(90),colorAccentPrimaryVariant:core.a1.tone(40),colorAccentSecondary:core.a2.tone(90),colorAccentSecondaryVariant:core.a2.tone(40),colorAccentTertiary:core.a3.tone(90),colorAccentTertiaryVariant:core.a3.tone(40),textColorPrimary:core.n1.tone(10),textColorSecondary:core.n2.tone(30),textColorTertiary:core.n2.tone(50),textColorPrimaryInverse:core.n1.tone(95),textColorSecondaryInverse:core.n1.tone(80),textColorTertiaryInverse:core.n1.tone(60),colorBackground:core.n1.tone(95),colorBackgroundFloating:core.n1.tone(98),colorSurface:core.n1.tone(98),colorSurfaceVariant:core.n1.tone(90),colorSurfaceHighlight:core.n1.tone(100),surfaceHeader:core.n1.tone(90),underSurface:core.n1.tone(0),offState:core.n1.tone(20),accentSurface:core.a2.tone(95),textPrimaryOnAccent:core.n1.tone(10),textSecondaryOnAccent:core.n2.tone(30),volumeBackground:core.n1.tone(25),scrim:core.n1.tone(80)})}static darkFromCorePalette(core){return new scheme_android_SchemeAndroid({colorAccentPrimary:core.a1.tone(90),colorAccentPrimaryVariant:core.a1.tone(70),colorAccentSecondary:core.a2.tone(90),colorAccentSecondaryVariant:core.a2.tone(70),colorAccentTertiary:core.a3.tone(90),colorAccentTertiaryVariant:core.a3.tone(70),textColorPrimary:core.n1.tone(95),textColorSecondary:core.n2.tone(80),textColorTertiary:core.n2.tone(60),textColorPrimaryInverse:core.n1.tone(10),textColorSecondaryInverse:core.n1.tone(30),textColorTertiaryInverse:core.n1.tone(50),colorBackground:core.n1.tone(10),colorBackgroundFloating:core.n1.tone(10),colorSurface:core.n1.tone(20),colorSurfaceVariant:core.n1.tone(30),colorSurfaceHighlight:core.n1.tone(35),surfaceHeader:core.n1.tone(30),underSurface:core.n1.tone(0),offState:core.n1.tone(20),accentSurface:core.a2.tone(95),textPrimaryOnAccent:core.n1.tone(10),textSecondaryOnAccent:core.n2.tone(30),volumeBackground:core.n1.tone(25),scrim:core.n1.tone(80)})}toJSON(){return Object.assign({},this.props)}}class score_Score{constructor(){}static score(colorsToPopulation){let contentColor=arguments.length>1&&arguments[1]!==undefined?arguments[1]:false;let populationSum=0;for(const population of colorsToPopulation.values()){populationSum+=population}const colorsToProportion=new Map;const colorsToCam=new Map;const hueProportions=new Array(360).fill(0);for(const[color,population]of colorsToPopulation.entries()){const proportion=population/populationSum;colorsToProportion.set(color,proportion);const cam=cam16_Cam16.fromInt(color);colorsToCam.set(color,cam);const hue=Math.round(cam.hue);hueProportions[hue]+=proportion}const colorsToExcitedProportion=new Map;for(const[color,cam]of colorsToCam.entries()){const hue=Math.round(cam.hue);let excitedProportion=0;for(let i=hue-15;i<hue+15;i++){const neighborHue=sanitizeDegreesInt(i);excitedProportion+=hueProportions[neighborHue]}colorsToExcitedProportion.set(color,excitedProportion)}const colorsToScore=new Map;for(const[color,cam]of colorsToCam.entries()){const proportion=colorsToExcitedProportion.get(color);const proportionScore=proportion*100*score_Score.WEIGHT_PROPORTION;const chromaWeight=cam.chroma<score_Score.TARGET_CHROMA?score_Score.WEIGHT_CHROMA_BELOW:score_Score.WEIGHT_CHROMA_ABOVE;const chromaScore=(cam.chroma-score_Score.TARGET_CHROMA)*chromaWeight;const score=proportionScore+chromaScore;colorsToScore.set(color,score)}const filteredColors=contentColor?score_Score.filterContent(colorsToCam):score_Score.filter(colorsToExcitedProportion,colorsToCam);const dedupedColorsToScore=new Map;for(const color of filteredColors){let duplicateHue=false;const hue=colorsToCam.get(color).hue;for(const[alreadyChosenColor]of dedupedColorsToScore){const alreadyChosenHue=colorsToCam.get(alreadyChosenColor).hue;if(math_utils_differenceDegrees(hue,alreadyChosenHue)<15){duplicateHue=true;break}}if(duplicateHue){continue}dedupedColorsToScore.set(color,colorsToScore.get(color))}const colorsByScoreDescending=Array.from(dedupedColorsToScore.entries());colorsByScoreDescending.sort(((first,second)=>second[1]-first[1]));const answer=colorsByScoreDescending.map((entry=>entry[0]));if(answer.length===0){answer.push(4282549748)}return answer}static filter(colorsToExcitedProportion,colorsToCam){const filtered=new Array;for(const[color,cam]of colorsToCam.entries()){const proportion=colorsToExcitedProportion.get(color);if(cam.chroma>=score_Score.CUTOFF_CHROMA&&lstarFromArgb(color)>=score_Score.CUTOFF_TONE&&proportion>=score_Score.CUTOFF_EXCITED_PROPORTION){filtered.push(color)}}return filtered}static filterContent(colorsToCam){return Array.from(colorsToCam.keys())}}score_Score.TARGET_CHROMA=48;score_Score.WEIGHT_PROPORTION=.7;score_Score.WEIGHT_CHROMA_ABOVE=.3;score_Score.WEIGHT_CHROMA_BELOW=.1;score_Score.CUTOFF_CHROMA=15;score_Score.CUTOFF_TONE=10;score_Score.CUTOFF_EXCITED_PROPORTION=.01;const hexFromArgb=argb=>{const r=redFromArgb(argb);const g=greenFromArgb(argb);const b=blueFromArgb(argb);const outParts=[r.toString(16),g.toString(16),b.toString(16)];for(const[i,part]of outParts.entries()){if(part.length===1){outParts[i]="0"+part}}return"#"+outParts.join("")};const argbFromHex=hex=>{hex=hex.replace("#","");const isThree=hex.length===3;const isSix=hex.length===6;const isEight=hex.length===8;if(!isThree&&!isSix&&!isEight){throw new Error("unexpected hex "+hex)}let r=0;let g=0;let b=0;if(isThree){r=parseIntHex(hex.slice(0,1).repeat(2));g=parseIntHex(hex.slice(1,2).repeat(2));b=parseIntHex(hex.slice(2,3).repeat(2))}else if(isSix){r=parseIntHex(hex.slice(0,2));g=parseIntHex(hex.slice(2,4));b=parseIntHex(hex.slice(4,6))}else if(isEight){r=parseIntHex(hex.slice(2,4));g=parseIntHex(hex.slice(4,6));b=parseIntHex(hex.slice(6,8))}return(255<<24|(r&255)<<16|(g&255)<<8|b&255)>>>0};function parseIntHex(value){return parseInt(value,16)}async function sourceColorFromImage(image){const imageBytes=await new Promise(((resolve,reject)=>{const canvas=document.createElement("canvas");const context=canvas.getContext("2d");if(!context){return reject(new Error("Could not get canvas context"))}image.onload=()=>{canvas.width=image.width;canvas.height=image.height;context.drawImage(image,0,0);resolve(context.getImageData(0,0,image.width,image.height).data)}}));const pixels=[];for(let i=0;i<imageBytes.length;i+=4){const r=imageBytes[i];const g=imageBytes[i+1];const b=imageBytes[i+2];const a=imageBytes[i+3];if(a<255){continue}const argb=argbFromRgb(r,g,b);pixels.push(argb)}const result=quantizer_celebi_QuantizerCelebi.quantize(pixels,128);const ranked=score_Score.score(result);const top=ranked[0];return top}function themeFromSourceColor(source){let customColors=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];const palette=core_palette_CorePalette.of(source);return{source,schemes:{light:scheme_Scheme.light(source),dark:scheme_Scheme.dark(source)},palettes:{primary:palette.a1,secondary:palette.a2,tertiary:palette.a3,neutral:palette.n1,neutralVariant:palette.n2,error:palette.error},customColors:customColors.map((c=>customColor(source,c)))}}async function themeFromImage(image){let customColors=arguments.length>1&&arguments[1]!==undefined?arguments[1]:[];const source=await sourceColorFromImage(image);return themeFromSourceColor(source,customColors)}function customColor(source,color){let value=color.value;const from=value;const to=source;if(color.blend){value=blend_Blend.harmonize(from,to)}const palette=core_palette_CorePalette.of(value);const tones=palette.a1;return{color,value,light:{color:tones.tone(40),onColor:tones.tone(100),colorContainer:tones.tone(90),onColorContainer:tones.tone(10)},dark:{color:tones.tone(80),onColor:tones.tone(20),colorContainer:tones.tone(30),onColorContainer:tones.tone(90)}}}function applyTheme(theme,options){var _a,_b;const target=(options===null||options===void 0?void 0:options.target)||document.body;const isDark=(_a=options===null||options===void 0?void 0:options.dark)!==null&&_a!==void 0?_a:false;const scheme=isDark?theme.schemes.dark:theme.schemes.light;setSchemeProperties(target,scheme);if(options===null||options===void 0?void 0:options.brightnessSuffix){setSchemeProperties(target,theme.schemes.dark,"-dark");setSchemeProperties(target,theme.schemes.light,"-light")}if(options===null||options===void 0?void 0:options.paletteTones){const tones=(_b=options===null||options===void 0?void 0:options.paletteTones)!==null&&_b!==void 0?_b:[];for(const[key,palette]of Object.entries(theme.palettes)){const paletteKey=key.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();for(const tone of tones){const token=`--md-ref-palette-${paletteKey}-${paletteKey}${tone}`;const color=hexFromArgb(palette.tone(tone));target.style.setProperty(token,color)}}}}function setSchemeProperties(target,scheme){let suffix=arguments.length>2&&arguments[2]!==undefined?arguments[2]:"";for(const[key,value]of Object.entries(scheme.toJSON())){const token=key.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase();const color=hexFromArgb(value);target.style.setProperty(`--md-sys-color-${token}${suffix}`,color)}}var Theme=__webpack_require__(24);const ChoiceIotTheme={logoUrl:"https://www.choiceiot.com/wp-content/uploads/choice-IOT-2.png",logoSmallUrl:"https://www.choiceiot.com/wp-content/uploads/2018/12/cbc-ipad-retina-icon.png",mode:"dark",originalColor:"#55BAE5",secondaryColor:"#929598",borderRadius:3};const EmbraerTheme={originalColor:"#100690",secondaryColor:"#FCC317",borderRadius:3,logoUrl:"data:image/png;base64,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",logoSmallUrl:"data:image/png;base64,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"};const HoparaTheme={originalColor:"#622AD4",secondaryColor:"#622AD4",borderRadius:3,mode:"light"};const IBBXTheme={originalColor:"#f66f2d",secondaryColor:"#219cb5",borderRadius:3,logoUrl:"https://ibbx.tech/wp-content/uploads/2021/12/ibbx-logo-preto.png",logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMUAAAC1CAYAAADvGjsxAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMi1jMDAwIDc5LjU2NmViYzViNCwgMjAyMi8wNS8wOS0wODoyNTo1NSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NTRGQTU0MDNFOUNBMTFFQ0E0RDNGMjJGRTRGODA4NkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NTRGQTU0MDRFOUNBMTFFQ0E0RDNGMjJGRTRGODA4NkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo1NEZBNTQwMUU5Q0ExMUVDQTREM0YyMkZFNEY4MDg2QSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo1NEZBNTQwMkU5Q0ExMUVDQTREM0YyMkZFNEY4MDg2QSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkyM1agAACjeSURBVHja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"};const MWMTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#0067A9",secondaryColor:"#FFBC00",borderRadius:3};const SEWTheme={logoUrl:"https://www.sew-eurodrive.com.br/media/required_files/layout/img/sew-logo_bp40_bp50_91x67_2x-4.png",logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwAAACQCAYAAACyAlbPAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMi1jMDAwIDc5LjU2NmViYzViNCwgMjAyMi8wNS8wOS0wODoyNTo1NSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjQgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6N0RDRDMzODdGRkUwMTFFQzlDQjdCN0VCQzk4MjlENUYiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6N0RDRDMzODhGRkUwMTFFQzlDQjdCN0VCQzk4MjlENUYiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo3RENEMzM4NUZGRTAxMUVDOUNCN0I3RUJDOTgyOUQ1RiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo3RENEMzM4NkZGRTAxMUVDOUNCN0I3RUJDOTgyOUQ1RiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PqO/74wAAB5uSURBVHja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",originalColor:"#de0000",secondaryColor:"#008585",borderRadius:3};const SGPAMTheme={logoUrl:"https://sgpam.com.br/sites/all/themes/pam/images/logo.png?a=x",logoSmallUrl:"data:image/png;base64,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",originalColor:"#2896b6",secondaryColor:"#e8922c",borderRadius:3};const ConfibraTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAABAAElEQVR4Ae19C3xcV3nnuffOaEbSSDNS/JJkW1ESJ8GOE2fdUAcEViBpNwUKphuaNLtd02UpZWlXZdtfw+I2zq67GwpbvN2WsilLXGhC2vwK29JHQsJGBhfSFjcBYwcn8WOcyIofelnPed27/++c+82duZqxPHrYsvsde3TueX3nO/97Ht/5zuMqJUYQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUHgnw0C1pVe0sEX9u+0lPVg4amvq/xTf6mU5ykLP88vOAMAX4QhJkIsyy0LRfQ5G5N2HgRKONFUYjGlbrpVebF4Wrm5re3/4w/SFOXkn/95J/jeq86NdHqP71FqdAS+VFaF8uBHkeZovBK85kLCuuMnlNXzk0hq7Vx5990PMY3+D2/fiXfxoHqjX6lT+MFQGYlX/ukCwEX/5mfMO6eyaANy9K7Nfz83y1ZeJKrsG9aryC99XHkNDXudeOy9rddeOzq/vJdu6sjSZW1+nA2/8EIKjT3pDg0mlYcGPTmOugSbKgB+4epkofHrakcthuJpAz+/vvgeNVs6H650NacuT0C0PNdVVmaKHhx3cmL16/e/v9CRdQb61VQhouKvo2SOamxoU4W8Y034ZS4nMwfXTLxqIWJNg9+RIXREdmr4r/+606urG2m9665RlAe9lJW2bCulotGkVygoy8UPxDVu8wW/jEkqQ+WXyXl5CthS3chmlRo8razJhphqaV17+uDBM8vXrz9lWVQ5rixjyn5llUmXBh1AL/r83vzf/mXK7XsmqaYmFP1MgelvJSnAALHQoMy31pTy49FwHq3DSFVXUCtWD1iRaDqf9e7tuPfegX7HabPGxjrV9OgT1ti51dZffU1Z4+f8Ms/9Jc+b/3i9UvG4Um9+64jbfeco2tju9ne/e/ex7dtTMSebtMfGe1XB61UjZ5Q3crYiv6UYzKUkpWXgZy3taWJ+16AzIXyjymrG+HH1dZnIv//YKa+h8bsj58Y+vG7LlnNzyXspp7niJIBg5D/biZG+EyIxevMzfu9fMrKjAwhXqrB7oV7cfOlyeqq4WkDJTCurUHBULruahItoU1Nn/7e/rTreeGOg/70QtxPJNBqUUg1GElDTk+jvuNrXXirOv/aUfgrKHz9v7FzKGhlKOZbdWSIJpN+47/1pZau0ciKQBCJJpSUB867mznVlbqks9Cun69cF7Yk/OZIAUGdSLTF38OxaNTV58qpka+fg918Zbr35ugFIAoXK1C8/33m/26VW5OLI//Rfpgp7n01qMXhiLMRmUAUYgKA7MFWD55yBnBAicQmdmjdIAq7jkC6gYN946wDpBPIqd2/H235ioD872madGe60h4eesDBNUM/vVRZJQJfQaJy1JNCgLC0JvFNLAqsgCQxvf19KZe1kJpvpxRy91yIpYGRwAbnlt8kNn992MCkw9aD8bXt1ceW1LFOKJIFfgCRQ3/BaNj997+pbbnl9AZm7pKSuGAlAj/yxWNI9NdBpFfKdFinB0IsH8/lLivPCZ05z1XxOWbbjeNmp1TR/jU7kO/ufeEJ1ONAJbNigvMamtM44Xt9GOgMLksN8JIF5F4J0AdPTRUnADkkCJ+97XxpDc9pyoA+I1KUU6QPwu2RGSwLojFKtMe/sqbWqvsFuaGgiSUBdKZIAD4CXDOOFyvjMC9/vhdDYq576vymr76mkmoTIiZ/p88sFvlryLB07jFBqQVolUz5azE6TKYXTBa+AuYQu2s/BUOUYwQSGfRAPkoAXjRmdwMo1A9Bip13WCRw61GZlJjqt6cwT1vTkavsHf69IIcccGCrhUVChKyHDo6ThYT5/uVzMtfIlAfVjpBN4ByQBb3f7T/80dALvS8Wy2aTKWr2Y6vTakAJIGijy6xOg2cwMmmUMck5BGTh+WbTZHIQtxYHORTW3KJVqLUQ/+usD6qoVmGJl7r3qCpAELmsJABXHOnPoH1dGrUgsdwpz/gLm/KPDZuTHewuqwWxvemmF11RZSRLIYmR3jU6AaizpBIZYJ9DVpTBypamEXn1jGzoMR9FIXFzpuARlZ0lgnHUCVplO4OTPvi8NZWfagySgtCSQp/JdfEYJW8oVkoCHVQGSorzBs6sJY7uxHpLA9yEJ3HxZ6wS4jVx8cBcgx8Hnn29W9fFHINZuyT/19VThW88kbcz3rXEz5+fC1dSgQnwxjdLuhOmxbSSC8EhKQrkxTMPEZwmCRzGmEuTg+l62n5BjsAzBLPLIWMwFa9ikE7BuvHnAq69P5938vR1vjGI60NVmFZxOW7lPWFOTq63nv6V1AuUjfcBl8MQ5LZLNOoEff+uI9zZfJ/BT7949dM89yelCIaVUpheDcJkkQFgQf/QLxnfGjhEJkCov41zL4SPiRJTXuhy/ZYW6X+yFJLAsPVXIX9Y6gctSAjAj/6GV1tTUcm/wTKfW9tPIf1b30nN9yxXTceOjQG4YFSNeck80B60TsB03l1ntoVdqiEMS2LBadaw/ONB/CDqB+mha7wqKY3VAKUdlIQlA437JDEsCWB3APoEU6wRUNjvavm1bmiUBdaklAQaIsBqGTsDyfEnAUw2NsctaEljadZqBD9l65I9j5J+cuD2/5w9WqvSxmDcJLTfm/KZApc02lHgOTppzksFoVGbYaUYZHtlnjkImecBTtXQzJQYT00gYNDc3NDg9M8PjnQ4Hk3YU2uv6xoJ6y9sGvIYE9gmoezvWr0cn4OsEcrknVC632vnhP2ptO3PG1Dk/9jf5lLs47wuxmS7xTT9yE0rGDckJkoCLfQK0OuB1v3MUy2y7V5VIAjYkAUTGPgGjE6ieZyATVH4n1VNeeAjQweoLlgi1JBD5pf8ESWD5ZSsJXFYSgB75jx9fic0uy73Tp7HhZXKtNTKsvLO0zn/xDDeFxcqT6XI+NZWMeivoBCwHksDkJFYHLNVgRTqHDh2CJIBO4Hvf0zoBK5Jz3fqGlXYuE9M6gUsuCQT7BNDAtE6gVBJAp5C2I1gdiGJ1QO8TuFSSC/AtQCcxjM4I+hRvCDoBmIaGxstSEuC6VlMdu1SRB195pRmC6yNqYvz23Of/10p19JUYaYpVNqNZCvp/wyEXjsfkheLbSAQYaf0MyueZPB5zruzm3APdAPsYMkE8ThlMOkxXEMQwKbmDYO2D569PaDeJKxhZSRKwfvztWhLIZQv3dhzEdGDDhrZIodBS8NxHVCG3xdn/bWWRkss35blxLhxaux2mQOX1odNyAIdbWiegdwyOqre9c8RW1u7lviSAjU+pnJ3vdUkSGMY23eHyTp95Zu4M/QBJ9p+vXSYN+joBBZ1A9CO/qnUCKp+/rFYHWNqbLy4XJb1l25Y3Mb4Kov5a69xoTA2ehYY2t6h5c2UNKiwr70LZUoNDhVC2Ewq4RE6qqVOYEk1PYp9AbjV+axrsQsvQhg2NHQ8+2D/RmD3hJZoGMUUY9aLRgoICEZsKLgmzjLGWROjMwPRUEr9Ob3py5dAzzyRHP/rRTMtXv5rOR6OnIAGMQicwrXEOz8kWmXvuqCgb/UwrE8NDONEw7GCb+WpMSddAKmihgYqk1UVmZ0HIL5HaemFl+Y3pgXjh775zn/f337lanTiql7949DMUDOZcoUpf2IXlcP5YTFcPXyWVT+famFDeNTcqlWhW3jjEWWQOrTuiBhwa7rgDIZ2BGdMNnyYePXM8fuJ8wxJOuHxhty4NDg+R4so7MxBXK1fd5sXjbz/zzef2dV1/y8jY6NmDTi73TCEav8ld3rbKoXMDtM1Y8xBwcX5UZg9l/smmLobsgFeTD8fR1LB923vlR8rLFdZ4Kzvursvm85/+yuMv/qeb3/Sa5dlPgULEa0pu0mnoYFTRGFpF5wI/6Pzwh159sRz0okkCPfqycg8diFvr3nQbVmLePnH8zL5P/9HnxheYhQUnt+R1ADiJlYjE44761ANK7d+PHWL10MAAhwL2a89Yy+ZqRRHIsNu4Fuqvoe7TtlEVaOSvixdUc2rcjU05aiiRsGltfhpzxSILxYcSNkr5LA0v9afoYTeTYH92l9Lw/Wi+OnRG2VBXe5nsFs/OtNfb1vKj+/dPXXP06IGj11xzLJJa3m/ls11erD5hRScdTAugcWSVJNNeKLsaz+wPexgrOvhZHVdDzzPViZy/O/TMnyVHIxOnuu74YPrkfT9zO/xGvamJmGVHoPFEub2LoxNgLumdaLQJJ3Sa7pGXlXXV8hikgC3WREO7E48vhyQw2XrddWOQCiq8mIXCc350lrQEQI3fjkd3FSbGftX9u333uUPD/8pz8xstrxCHiKVLTn8ZXX45NFKG/eYKE9HkH9Mso5WENviWLUqtXP0DFfE+Zt9064vOXXd3W2vW1tEophVW4JVocHpDj0d89g1GFZILKE5gjMukC3xZgmAfDmeb/bWtJYFB5Z4+GR9vaL4tF3HuPp1MHLz+2InXh1tbD0Zs9Yx31Yqb3Pa1q6xzEGtpiW5RjCkLk2Zew9INhVuQBKwjkATc3Bq16uq7Y/n6/O88/qdGElDeU5iyRNxEahPt2b/4Zx38cvgFQCNXmP8r7wSuafjRobh17fWXhSSwZCWA06dPJyL5sdbC0LnN9tRkt1swi2C62fBOGb8WceXxXwl8g0blR5mHFVAtI0LeGP29ulhBLV8x7kVi/ZPnxvY13fnuUQgEQ17EUflEMqFT4y6CBWWpyAiXk3kMu4sR0RFhpIIkAEVbDCLrFtt2Rr2C27G/peXY5ldeOXB08+ZjdY7qh+a9y441JKzIGCQBkmCYJtslNGt6DPPIiav5IxwrPPSz16ztxNSkEz6QBKATiEQgCdyRfu1nt92Ohjfq2FiXd5yERWXUUuF8eWXe2GYeyc20jV0MIZxoxyAkASwLxrypyS1qYqId0uuSlgSWpARAI78Tje5SE5mPFb786Ebvm0/Hac5Popa+sMF/Lwx+eMTk+Rm/vvnZnEsgCRA9nAxThfYuHLhp/oHV1PSxQl3kLzpvuuX17Or2EaTYh9H5R/Ytt3Zbq9fWFX50SHn5AuaN3FURBbNvgKjzL6haRjrgcnD5UL119WP/0viGIv2lOCY9c870dSAkgShG1siZgWg2WneTG2+467W6uoM3/diPvT40MnrQyeaewbr8TYWVbaus8VGtE9Dp5vGHmwrzUWqb0gfEK4aNjSrv1cMYYAtrsqva73by2fzvPv6VF3/9lvWvAdOnIGEfUg3N3aquvk5NYz8IGiNjxPSCHObyZCQyolXN8Lsg5K0c6QReUd5LP4RO4MYlLQksOQnAn/O3euPjm3GLT7c6+ZryXn4J598x5y/OS4NXYZ4Yfn49HB725/Ba7BANrQHCMVxcyOElmsehke6ffCW979onn+Rro8jeN5ROK6u9fYhSI16COi6unCZ3pluJ1/OFUepwGo5vKAd/Z/pbwNAZHYISHSLKsvZNKpbrilp2x/5nnz22eXjY6ARal/VjNNM6ARwxNJJASOoK8rjQp5m8VE7JZaNQk8bzdQIKOgFaHcArCOkEthWsusgQieGeDUmAFPBaJ3CheVbmpLIv8xem7ftTHaVTl75OABvUIAk0LFlJgEtTuawX2VeP/PHYLiypbM4//scbVf9rSSuNkR/7+z0S7agRacNsl46oXF0oggk342Cpv0ldy1/OidLoEbi+UalVa7HRxnkRI+WOghXv75iYOGA9+WSZFmpoaCipxsY2ev0nNruDg7tU+kii8KdfwtLclLJ9hZUpDefAZSvlrlpYuX+5i9LP9Cmlqp/RWHL1CZWPxgoTq68+kEuk+r2cu2PTyMiB4xs2bIy62Q7cJbBL5XObnB9+D+vu8zufTxxRCenH3Gk+4DIl53dZGmpCzPgL/Gn3XapVWW+6Ke38+FuP4yqxPcvetW2PPjsQURvtbGYzlMO7oL9I2GcHkFnBp21ymvvfUp7CXLPbxOGdB1ongFOEbtd14PmqTPRnf+EFb9nytDdR6F3x5g1vzJ2XhU25ZCQA7OxLTOfzrZNDZzZj7tStXj+Bkf8QRn7MQ2eMPqZiBFDwC7pQ/yDl7E8+bbJojT+Kq7gSiXHXjvRPjWUw8u/hkb+MVGtrq5YETh85rCIr24dcNDi3KZkgxZ2aIp0A88o2l4HIsB/bTLo0DvmF3eH4nC5sIx2iRqGbiDhTzlQutwkNvQvrW0YncPCg0Qk0NWudgIXVAezCc7AZB+moG1wIw7xX4rmSH0pbRSeQj0QK7Xfcse/kfduwOSsxRF2K0QmAzwVZHajED/NfBQtKQntUWBIo6gSiS0onMEspqhRugb1p5I8mk7uwhLI5t+eRjd7rJ5LWiSP+yA8ki/gXH0IccDE4nN0czfizL8dim/zDYewuhmDO767qpH3gGPmjGPmjGPlzM0Z+zpHtoSNHknjeiENLm93hs7vUUUgCX/ljcz+hi86taEpzNJwxfxyFR8KZ/iYGnxXQnQy8ArcJD9IFeVHBc5Bq8lBmjq2+9kCmKdXvuvkdt/XcdeD48eMbo1NTHd5g/y4vm90UPfxDZZ/D1mufIZpnk2E3U2W3Ca32t1ps8i+nMKPcLS04m4/fjRvT9pu7j6NvfdGdyu2IPPmkk4/kN6Iz2+zm8pAEJhP2ICQBiOVMsVquzOVs4RyvWC8CD/8plBNtF4UkYK29hqSXjHPfB31JYAKSwJsvuSRwySUAnvNje6+e83uY87sY+W3M+a3iyM+gzkA7BDqHV4vPr5fiheNwGPv7bnqBdF00RGWVaBr3MPJPjk1h5H+84sjPHLDtXym97zR0AhHSCYBcnnUCUzi2PEMS4JSlNvPGfswjuzmc7WrhHL8kHI8kCTiZaWc8l92EE4VdOJVXphNwWpdrSQAbXBKozCGdANPivCvkwV5lNqcr84Sjmj/FM2GkE6Cf3dGJfQLTnfB1IvWJ1vxHPzq0wpcErLp66ASQwo5AJ0CSC83QmMdwHtX8Kc9qJkwjHM8PpzqsdQKH9T4Bb2Jsi4rH2iP1jUtCEuCSh7m/KG4z549jzj+5ufCVR/Wc3z1uRn7dMICdYXA2sM/PLtGgdkazTKoUpTQDysY3PCPF2W/cC7cc6SyM/A1V5/zn5wArcKQTmB7baJ3o3+yePrPLhU4g/2dfwvo1tutWEVMNR0S5lGNyGa5ZGA+PkBzO6Xl2zTxyOJddx0Mnl9E6gbrCRHsnJIFkfyGf23HbyAR0Aus24mqujshUZhc6iE2RAzhFSFtgtSnOepl80T/kMQ+nKQnzTfsriXcbUgCu66Jlt1H1kz99AGcf9quJKS0JTJNOIA+dQI50ApMJS0sCXGK2maUAwXAIx5i3TRWPbnO+mnQCrZnovduXhCRwySQAs86fb/WGBjHnH+/2XuM5v9mFtrAvwlSg8qpq/IIXG8qRR/66eAZ75qfRiDDnz1ad8wd0Kj+xTmDo8BFlL18FNTzyxz4BHbtMJ0A+s/A2a3iYBy4b02Wb4lEY3LDqJsegE3CgE2jbZOdyXdCo+zoBs08g0mz1YypgdgxGsIqgdQJMm+1S2mE+5upm2iY9dwS8TwAiPq59n+omXVGk3oIkcM9Q+x0f0DoBq67JlwRodYAkAe42z8cLl6E83/OlmDWMRiC6YxDLg3rH4BTtGKzHjsH6SyoJcEln5X8hI9DIbyebd2GJZHNhzx9thMKvOOc3Q3UwZi3MK+BichdApeFen0tmcuKYbstKjPwrIFzae1R9bE/Bs0YvZM7P1KrZHnQCEPw3FrROYGiXe/SVRPbxR7Uk4BQlAeaCqYRRqBzOvuEqzv5cYg43c3jGxA9F5GwcOgFaHVhz7YEsVgdyOegE7rrrQD90Ag50AvnBk7s8TBeihw8omy5i8Y3Jh5sn053ZnXH8WmxqP0SfBlI2xVpCdwmsaFPYkDWq7nzXARWDJJAxOoGiJJD3JQFaHSguJzNvAc/hMnB24TfAPNRs09Zx0gms6TI6gZ/j1YFLoxO46BIAz/mxvXczlpn0On8w5+eqybAzvAsDP1M1FSdM0w8tG/mT2HlkHW7/4p69zMl8bct8ZkrvE7DbV9PncvQ+Ad3x+ZtYzKhcmlPAufGtwnsxGocXPXxi7H8e2lBSRHGFeCQ77UyikdPqQD10AkexT+Aaf5+A07qiwj4BfndMO5w3+9duE9f04w4swMcvD24aVieOUSxMs6a7KXKkoUnrBMzqwD3KjsV8SSAKSYB2OFbSCSwczzNL6dP29wkUdwxOjEMnUN8eaYYkMIizA60X9+wAl3gmv4vgo+f8DQ3+Oj/m/K+/lvSOv6q1/baepPOoEWbLf9Fz5snQK+/nDU2uVOTSPrjzTdG9bzTyx5r24CHdtmfP8TlnXSWhB53A2PT0xsKJ49AJnN7lpY8m3Ce/rPfge7T0abjxU5fzz02NUeKRsDg6EpYwXDbWgVfW2geocCodD8Sz0AkUIAlMQyeQh04AncGO9Von4O8TmDqHfQJ56AT+Se8T4PQBX8SF8aWn+RimTTSIY86D3OSi76BYkASclasgCayEJACdQCwOSSDjrw6ojS50AgXoBHBEOhHxdQKGLvPIiHE9pLyM4Ri+cw5WiFKpTqB1WSb6b3/xBW/5ijTy6V3R1XXRVgcumgRQnPMPD5kdfpjz49CE3uGnv9mnIQ2BVIR/DniXJeHXF6bPkeCvR35Ih3WxjIU5P97P4VVf+PJejlHNxqEkZ3h42MzlaccaGSxT5bFvdcWKFVWPg1r+PoGhw4ehE1gxRHf40T4BfbJwHN80KK6AEMHZ+PfDqx5BD5eb3UQ7bAJaZp/AJHYHt22yoBPADqaOozg7cI3eJ3DNsbrmNqwOQFegTxHy6gB3T2G683MbjrlhzuRfc60lgePIyIIkAJ0A5vuRhmB1II19Ak5NOgHOh/GfXxnKUqOTxjRKHyPGoacY7j7YAom4LWLZsbJ4i+zgEi5qNjTyRzHnp3X+POb8tM7vpX1tP1Vuf8Qq7W8NY8HotDAMllI1z/xq6bZXF9p+z7b32PX1e8ATRv4njs+W7+ljxzZFIvYuHLZJuDlQo549gpEEqwaF8fEdKzZsqNoJEG2zTyCPfQKnN7sjI7vU0HCi8Ogf4jgsZgf6mq5gtCPtNxlGRTvK/pjwmR0GR+LScjz2J5vD2M8fDRE1D52Aiw1Q2TVXH8gnWiD+ezvWQSdw/Pgr2CeQ6cAHWKATyGyKHP5BmU6AKS28HfDPXAc+yK2oEyBJgHQCJAkEOgGVn9oMaQaSgL9jsLhPgKmU3a0EgpzL3EvCsgXTIoqaKukE6vBdh2uuJzsNbcbWlv/zeHruOdWWctElAJ7zq/ExjPwT3bTOX9zbT71gGb/lrrKgBXXwi4ZdHPnjGRwtncbrONz2xS/tDWdHI706ejSBnxp+9llzZn0/7GOvdqi2dow2XtLKg3/qABz88HXeyF9/rXXozs0OSQT6d8+HFe1aw1p1sVMI9gkcUU7bmiHvzGnXa0o1WZksbj/CBR1aEgA9bRgfdjOX7M82h4fdHL/U5jilfvTs+8OKYJXCy0Zxd0hB7xPwQjqBSPHsQAP2CSz2fQKlfDLv3Lz8+lRRJ2AkAdIJkCSAU3pDdAESymJObHJ5NfkwfqV5zvU54NVQMB07fe3Zo30Cr7wMXiwro3LNQ5uvSaqH/7dSmzej2rSMw5sUFotiuKSLQlyP/Jjzk7Y///gX/XX+o/6cH6IiY4IHfmSGjCAZvNj5MmjoM/WAmksjP837Med3zjPnH3755U22be8qnDyZmH72G3SuXjk//Cdlx2NJq619I64rc/iOArwwheOgo176+IECrtsqLFutnNVrlX33T0EZFX9RDY3sWPGBDxQ7AeKmeHZgeLjDG3httxoaXJX/40dwHDaQBALAysvB6LFvgFoYVUbBxDQujhNQR7soM/pd0GYo7BgkSSCzGjqBBLYJ5wqQBLBP4BDpBNwOa3psF7a/+vsE6Is+C29KSxBIQvzE0hK2XSNr3H6kFFYHLOgEHEgCFiQBlyWB+vxG+9w5DEoZ8JxNWGOYvmFAYgwZm3L3QpTHUGSOmaKLbeaQ8DJOtO4FrzGRiXz8E8pZf/M4poI7Wrq6XuR4C20vigSAhmChQmMUy6Sg7DJz/n6s8x8+BHmy9LYZhpdtrjLsXujiltDXIz8qSiyeKTSl0AWrw6u/UGHk/73fiw3HJuP28JkOHJ3t9jKTSZXPYqdiXlcW7xw+RDJ8QHdhXDmJazwnUQm79Zweo7g+DoyDQFoyOHqo9fQ9PWrFk33FTqC4T+DIkbVW84Yz3tnTDSrZ0oQGZXnQCQS7IueCCZeb05a6GetSP4oX8kfjcLBj0MZtw1onkM93QeWA1QHoBIb9swPNTegUMl1unM4O+DqB4vQuTJ95mYvNtEI8Fkn54fQdwpLVAWKFdQJ6deA9d5LiEGcH6H1ZkATMsFMksygPYd5NJvqUpmXFwOMWqjw2STETOAdt4WvJi2gYwQXNAvPiVTjPvxsif0cBe/tpnd/z9/brY7HFShFAbkad8FjGbDFo7J6bzYWlft7FDj8z8jt73MamPXnHSXd9fqa2f+D3/sd25LbdHh1K4naajdb0tFMYwmiBM98WTilqZZ0uD48eQd9OXEOnQNeFKSsWU1ZLK4l5oxDoDqCP3D84MrVjQ1/QCVCpvFdeiQ1FIreq8dFO9+TJ3dAFrCo8+jlfJ8CrA6YkjArGZkrq/6UnEx5wQn5g1VjFpm2cgbzgB/vxwv4+NZAuSgLtXQdyTS39+by7Yz3pBPpxdmAS+wROvbELl45sipNOgD7PDsNvlvOo1aYSUqnox+VmDsmHy1Yuvfj1y5cEPJIE3onVgbr6/WdyUzvaHnnEma7HjsFJTE+nJqHHySdwNVoZawbJIM+ywBocYTrMO5eFSUGShDQKaQA7BlVj06jjeu9d/uhX9nL4QtsLKgHokf/VV5ssd3q5NzZ9O471ruXz/PoOv+IGjDAcXKxq/hy+ADbN0QEyrpHCnL+ZbsA8vOaPZmr7vV/+5dhwQ0N8Opu5AS9rq3cOg/WPXoLmFg3/vGwEr5Ti6a/b0vo+/XAOHyfrkt5VK7upu2jDjUdDH77HofkerxpY69bhNgn1/MkjR07G128845051ZAv6gQwIGidQJCHYYU5Yn+2w/5hN6XmuIZS8Jf9Q2ngbSSBqJPJG51AFKcIS/cJ4JrsfsvfMajvE6Dbc7VCM6Be21OIh2Ji5pE9wvH8ThnXm3l0iSykMo9WB4BhW6KhNf/JT2LHIE4Rdt+C4910nwDQoE7A79C5I62OEed7IXaYN04TKgO1EdILHDtKdxtgwHATi6kTYK6Ym3nZmPOvitQ37FZnz3Rmv/zIrXR194We5zcwMDshUObFlUnMFGl3n9uKHX62A21/bE81bf/Ab/7mdqTcbr32aqc60381rspSNp2Jx9JSkZbPF486um3CjypSVYOXapHW11OjrnIPqPU3F6xf3YFLOxtexHXnxVUDdKaxoePHb1WjkATeMDoBSFO+TsBIApwNyx5cUav7m5DwaMzl4XRsG3+WI1gz7ucCnUCBdAJ1WB3ooNUB7BNQuR3rztDZgQ04O+B2OFPQCSi1yTl2WNFvriYYLZlTLmm4iQYxw3npMtF3EvSOwZWj1k++B2cHsDowgX0Cn/qUM92kNmK6thmfVcJ5h0zC1joBphLkyz612wbVAM0wyoZi8V2SzgXbG1QkcsBtTIzaH39Q2RtuHs/ipObqBdQJLIgEUJzzj4wsp4924CaftfpKpEHcQadvmJ0NwHIwagf3AlKQypdG/lj9dCGRyqCqHO6osMPP+5u/iQ2Pj8env//9GzB6b8U0RllvnDxPBoZ3alRUSi5J6VNZYurhaX5nW7jhONpt0VVhOBBEvYa+/diPrBXCLAkkjU4gD50A1uNLdAKcG+MbdnPO1fwpnMM4LtOq5vb90YNpSSDjOLk8ThEWsB/Ac0r2CWw+ZjU39wOVLnXmZBw3EMX0fg8q/5wN81rOI7nox6EB+ZAPXXRKV8tBEtBnB/AQaWltzX/mM1oSSEMnELGsIWuamimtDiyk8r2c54BHfmJeTTw6t4CbjRxcc7iJegKF689xkhAjKvY4LKBZkA7gDD7XRXN+b2ykM/d/Pr/SGsIHFPFdd7peGp3Dedk9f2iQtByewL/SU6W4dKLPbcX+fst+AhVxTx47/CqlPTM+fh+q0nZncqRTHXwB3xuE6O6bMK/hfM478jMR2LqroAaE+abXj0/N/8mjqIkRHMQhXWS5aXPdU0N25MMYrTojH/oPvk7gD3AcllYHqDGFuSpPX+qqFpPLwXHD8aqFkz9NceKvHcPqQCyRb796F+7r7z+eatxxzTXXkE5gR8SD2O3Et2evu2l7ZPAN5ZwNNrlxPpoOaJG71I/5qWSX8lT6XCku+TFdHX56QHl//phS7Ws2Fu7d/phd37D/9HPP7Yj89m8fmK737vcK2c1uXXwXLqNJOHmakQWdC3dfnCfb7M/SYFl+msL5/3B8psduUjYrLAd7f7oH9082BYqc85O74NAF6QCisVjMLRS2YG7VqbC11zv9hhn5qzZ+Lh7zGXazf9gOwxMOZzfHYzeaHInd+GgH5nfHV1dY5+eY+NxbJzqtrXoTDj6XZcZ1Dq1kB7yX5xr4V0pFvbqea05MKBwIoimJUuMk2pcb1gkMnzw5oHC1lDpzShWgVNRf8bFQ7XQ2nDPnGXaX0yx3cZpy3+quEG0kNzqBDEYrd5PrYsRX0aT1gQ/Q8KmXr4595EN3qEhK2WMj+LJbKH0xo2r+xQh4qM6rSR0OD7t9Wv4+AawAJPEOuvG+C5GmJqf12Wfpjod9A2+71Sk4TkFvTy/yy3yEaV4I35yW7GrxmS6HU1xMCOjMQi7QCcysIRRv7mZeHcCxF46lUim1XQ30d+b/7lspC2vWCl+X0fNkv/GXFmfubNaekuDUkCaSuuGreEMfXnYfXmrfean93TMIBtcY1RbKVHq1RFv7o4fXt+ykWq7O/pv7Hnjjl37x1NS58T1dH/ygUZ/7TGBNewR3DO7GVKHTufPu7VgdSLl94HUCykktVnMuPt2FYr4CnUrvVC9j0eg+PhpXLantxz66/fZpVz3xJrOy0keiIJZRe7LtV/c41BFgjh2mE3ZXyHpBvfBhT+U9/ZeYEKSuVt09Dwy/sP/wyMi5J7xPfvy4iqiHVV30BmwNvxeSQJwvdK3GI/sHb6Eyq7OFV04FX1Kkui6mUs72gZ/YckfkP35SWetvns4p94m2rq7jVdPNEjCvDiCV9JKuZ/ViG2yn942/xuenTkHsxzJK1ZF/Fm7OE8zAGaBnqlIoKccJyGD8xqjvtnWSV1/HF/Y8FIRVfnL3PYv2j1x0GWZSrJzqQnxZQcV8+rIF9kVohVNrS6cbiT6AdpJONTd/DRTLOgB/n8Du4aNHO633vH+bOns6VfjeP+BqMboqHWIq+OVKyGrKcI4XwmX1OGHMA7dGCSMVHbBxMNefbm7cDtlkNG5Z3wW9412f/0If7L4jH/kQEnk9dScx/UEnYIzBmCUt4pmf/QhFN5cnHE4dNpedaVZ7c2XxoKNyn/m6sq5f3+m9ZesDruvuTTY1fa31Oy+kQefhgffctRVnNLbhXIHpAMBJWMRnXpgDngowOlyGINxwxte2hdMHbkrJVPBucX0caMSwrLxdrwSZ+eZoPBLRGHM+tdrz6gDUVx9XevcrxFhrAtKTPmZZKwvzi1/tReO+fuUmMGeKx/uQQ59tWWRXNQNffrQHO/16rL/56lbv8EG/A6gavaaAskpXkrLU3xvF9/Ce/7bWBUzRWnAVgw5iBLfh7sZ15J2Rn3zXduwUTOW/+bTeXUmVhAzTZWzYXYXkrN6z0SkNJ0kgehZf7x0fi6um1u1HPvILd2C1o2/d5/f0oXGQBObhZqWeXHunlgRoWnChhvM5X/xwHHZXxQAdJzZdqcLf/gUOE0MSeMvbHzi7/x8Oj52beML79H89DsXxw/jG4w34KOm9NALrz6adZ4Crmo/P9Gzh5ysbhellZSiNvb3P0HcHSKc1W5Lzhs+zA3gMmKBfotGHlBUamEqQs995ebmAQO4fg6hMmYDlXpZiUeN3V64Bbxc28qPxbwWJB72WZShHOa0gt7k88SsP887c6uyUh4s13Oe/hYzhTx+WqGL8swO7oRPodN73gW3QCaTy/4BBgCoFzRf1O+A8qxCZkzdLGDwqEUbGmHfgl4dO4EES1JLAdcnthKXt2RQFnYCRBI595BdoEOuxsLgS7gBKUQoQ4nxMKPlT3kHc0ieKaz66EsRgTsmnxBBW9DtzWrlP/QUkgTd1qi3dD3iuZySBv/l/acR++Mzbbt1aiNZtow6Aj2pX4q2EcvGR4zGHYTdHnBlOIWXcGjd18vjmJE3/cN9hhTiU7sJNTR3AsRdewJy/ebt7+o3U9H/9TZU5cwpKlHxKw6srXpAxsx5AH4TN5ylMN0zfbUyi8TcrnADDnH/2kZ95yb90UMNtozJAHbcoJsx7OBMbjUc1JFKR//I7vYPr3pQ+R7qAW2+tOESSTsDydQI2dALe8GDK6/tGUSdAuISxCed3oe5qdPiV8+oHu2nVCo0FkgA6AuxmVctW9KQ/9d9JOOjr+sQn+tDs8W5cfOGxoSff0dUTgRQQwW3DF2KYF8YynIbD2T/sZn+2mY6ON4QpwdNfhyTQcrX1lh5IAvshCZx7IgKdQIF0Ara1spBIbgfvKQvboqlAYfpl9DiTedhV6VFHUKITqPuPn9A6AQwdNekEauoAUslkEqqcXlStTqyo63+8FMXjAjM8s/eaBwoVkhrgGX6TK3FEjZ+u70ZIH9b5H6qQtKJX/hA+34VEUSxfElXukStGrsmTR84AEaJPhrmmZ/p+LGGq6uuTVrKlFzingfcMXQDFJVOqE7ChE8ApwlT+e89DEsCHR3TFXLgSGH7Db9i4qQwkhJKL5r+mTFQeSAJY9iOTb2ntwXcReuwIlRKdgC8JHP7oh6nv6LH6jxU7AB4hKV31EpgQimt4C8dkN4czX8wd8WsM+2j34FnlfuOvlLVuPSSBrZAEjE6gxdcJnPypd3S6dc42K59P2bg1iakSJc4pnDO7TW7nK5OJEY7P6cI2TQWwTwE6AWs77WykqQDKAJ2AqkknUFMHQHN+unmFNM8Wafs1EwxhOYsMiPGtHKc8xfxcLrT99NPafj3XPP+cP5xbhL6Ii+qI67HDQfN2c+m50p2XIBqOBZ2KikO7H5s9hdEJqN14/wAARXBVihRFyDOl54vnzay2wBnlAHvMoQ7z3ezH1O0zAypy8J+U29DUc+S3dmhJYN2uXX2YdvVhFPPy8XiPC51AFNJChM6/cELYM/L0wyhOabySJDU9Mo1iPiTGQCfgPf0XenXAvT2QBOK//dsjk3XebizNdVpOdDuWYlOz6QRqYqZCZOavQpDxojaITt+FTsB96QeowrOmKCNVUwcw9dXHUMHQ0wAk+lYf2Qxc8DqMD3cApTHKcq7JwdS4QgS58pPuAFatJZ5qGvmZjTqcuCNaNMdbGJ6ZMvPMCPFIym4O9/1pGIV4ibvjYdcFRKo8sU6Ag0/einlsLLINOKADIBF1/qUxGDPSAd+mqvGBrkBDbnjhcsIfG28c/LLrbupRy9ugbNVQ9637/c/3IW7fS9AJqJblPd7JtNYJEN1K1ZhrQe0lYt4rUSVufYqIprmm/R9FncDbi5KAv09g9/Bbbu2crqvbBnxT1hRtdyiVfYgemXCe7Dah/JfLxO5ay6Y7+elJVeh7Vp8dqFZCph+2L7gDSP/nB3a6o8NJ54XvpOg4rBbmwtRK3LUWpCTpeR8rFxAjd2eXcra8HW8QMb74pfPSqBSIJSB4I23l91QpyQX7Vea5WnIgR4cK6FdhZ2C1VOxff//9KkNzmclJrVT0YC+0oSpPhkR/v8nANm+cKzTBaJYjaQpkfL1sTjlv4MhAe3vPsa9/jWDp63rPtj7SCVCB841NPVOd63oi2H0ZIaUmIpS+EBrd6B+kHp2bwdX85fpmctIJ8YddHFrib4jraR/zTqFMk+q3lUFJv/sd3A6dvNp669YHBo8dO3VOjezx/tWHRixIAioa7cwl2raDoZSVAc6oQzzhI0FCG0PQL0uJX2k45eXnjBUTzYT+wCmie8QIx4Wb4/mUTJDOgw4O2diD0bo9/a/fdIdjW4+v/tKfvszxqtkX3AGAwIM4+KEidJgFW1ANT5SzeQpDzG6//NXyv2B/zoXpBW74oGLYXbiyrucdNYtAzAB3APrF65dhcuDw+diG52BEZFqcA5eJ/akiYW8FOoAZIcUoVR/e/3NIhryGBtX0q9iVCduerbeuSqxygP7kJpjXu/qow/UNVU5TX/H28aDrAOLpSkvRcAdeZOB15ba3aZ0AGjRB0PcmXydw8OO/Qq27JwZlnIU1eqpaXI8oC90BUNmoAyi2MArxDfIINxAT4vOo03BHr+fMlEDXYPIl5nWnRh0o8Z2Fou357yp73XWd6m3QCSjs0Yglv9ayf38asXef/Hc/15n1rG3YNZrSB8Vw4hHHvXWWDlbHyFi0WxOGvg1ZalhUN/WO4plwLle1shaxBDGDtWmLusOg+wSiddtJMkd/+o+IsqAdwE4vn01BqNxuRepSPAUoLVTpc3lxS0Pm90w1hgzbxWb16suq8NRfEZImQq1/ee2dFCo+8TlSqjXnkrJQUuRK24JxJhwXCdROC/sEgMFuVBQobFEQKotuZzWTqprAr9PgsxwhvrTEs02lL8bTrQnkwA8t0NErogoe3puBxtCHBgi2Kb3hvTQHxDfeeEel/kVGqax6xbHo4z/oAFM3SLLSoJh5CEUnWppjavjEu25Zfji8KJz4xt9RL+4WV2XiTm4kk6+DTkAldT0ELT1i6/iUCoayIxN6BzzCF739B3ZXLatfPh9ikGcskB/hq4uHP46D/eWzG5/L2SNSjJOY+xQcey80vJ2RaSgC9YsyaYOe15SYy31hlGePZRjl+SbH58Kj7Mmr6DPMCPB2tn31qYc4xoXap7asfxA878SlEKgNRsitCZwLzQhVqZyu0Z5Tcj364KIS+5c/ATX/sjRG8q0tb31r+oJJS0RBoEYEapkCKPX+n1EOekmL9p8/95RZc/Y7AeqJyk1pNQ+Hlcec3VUc5/3Gw7S5MYE+FCEY+7CO3tQzsP3nqMfta6vhJhWc/kLvjWTZjLKz/gg0O2M1xGCew0gFZdAoYZSj++2xHAhmOE0N2UhUQaAGBGrqAOrf/341jZ0GFpZJ1D/sU6RgKpUCasi35qjchehRslJqOutNv1h9DzjsQX+0E9H2Vopayc9FoyN5gg5gWyozozurlKZWPy4DN2t2c5m0GKo7ADR+fI4c0kytWUh8QaAmBGrqAEZGM6P19bHduNyhs/COuz+oRkeS6tvfNMtWUIDwOG04MJXXVHYO4QodbgJosjpROB6XhdMFTcLE59HUpNN/cXZanXpdqeZUz6lf69XzzOWf/uxeplTNttfj3gUKTENxdgJ3/RXNTF6LQRUfqsUPylCezJSBlEc6xvTUqDcy8qi9bGV6JDONbXRiBIHFQ6CmDsDflqpPpBXe/TPb8EGIZOHF7+kbbhyaN1er4wvAPzeraqSK0jJ1APRrbOhBr9Ljet5OpJm9A9hwi2GfvtRLF5guggmXIezWGo2JyZHMg7272184ll4EFoSkIFCGQE0dAKccGR0drU8ksA4a6bR6fuKDFvYHWN/6htYN6DVsHdH0BvyXKzu7DS325b6DlXozJQETM/Av72uMi2fTmhru7/PUYeVF6noGfh46AWwQavvyV/ZyGcK2fc01ugPwjryEIMqNc2CbeWU3U2B/lmJYKgnCTQz2Zy4Dt47ZmFDW2uugvY3gc4RZpV44xgTEFgQWDYE5dQClkkDmXdu2QSeQtPZjCzJ0Ap5/j1rQLMp55+YTDq/mX556pqtquhFc4Imft6Kjx1vR2INmtxOp986kYHyoAyDj4is+ei5uvC/KX10GXPdkr79ZedGoiqso8v3qRclbMvnnjcCcOgCGjCSBBEkCddHOwh3/UusEvH3QCdBZAa1M41GOx1NurjNHS+4QTIyZkgD7c96VbM6Nx1jKle7ut05j9xl0AgPQCUCz3tdWQSeAHVh7bWU/BAlma+GGjT2k6LQHccHJDEkgnHNQJn7isnBM9jfuEJe0L5ZWIApu2s7lvmLXxU6NjI3L3J/BE3tREQjX1TllRrfUZAq5vXQduPvffgvnq3EMFDfdmLMCpdU/eOaM2YfdPPoazXgg8s/GWCkd7gBKm5p39fXK7bqeyOxs+8zuh6rRe+2h33oQbX6nc/iAcl4+gGhMuVqKwJ9jslbfhPDeBe7UmKLZWqIiURySwbVllrU3Zmff2/rsfmn8AaTytMgIzEsCYN60JNCc2O1FIp1ez51aJ+Du/abWCej9VGgZ3Di4oZu07JoZanzYn3MK4psn7iA4nFNxOo6PcEwHLLqbnnQCtE9A2Xvb9vxJH6cs2p67F2EPofPa6rUu66GLNiz8ghIUY/oPQR7mKeh2TISAl/JwP3nrVcruvhPnkLHrDwet1LP7wxmIWxBYNASC2rsAWQwfPdSJj9pCEjjdqf7bJ3FHIMRobBSi7YncNMsz5AZMoyOFkJsbDDFU+kxuTs2jKaenMDJBahOz9K8JdVesVt5K/JT1UMeeP9lJqSqZgQ+8+0FMF3bqK86xN30mbU7FPBF39Ew8EN/sz2WoJJfA78YN2Pn3gPIaGvfajQ3v9U/3MXGxBYFFRWBBJADmkPYJJBL1u3HBfWce+wSsyYmk9/ffxp1r9IEQWiYMGiinMTY3ZG4s4QbO6YIjpyZmEI/ocGqmHaZKTdLGEqF7ql/ZyeTWU7/2Kw+6JAl8ZncfpynaNikMrYfwVZatXizeY+GeAHsY3zrQ+9kpFvNU2tQNB0FHUKSmH3Qo7fOna72x5VfdeptyU6m0Y9tfgf7h8MiJE9hmJUYQuHgI8DC1oDmSTmA6k9kL0bnT+/3fUd6PDuKeOxwh1heImKxKm0qQedCEDWNBE6YzHBRKB+QoLKwrIBpBkySXiUdp6EdpDE1y46lrnSK9AJ4fQgewE8EVTfpDP/8gUu60cVFF3bFD+pSeocO5VRrZiRSHM1k/d8z5Pcz51boblP3vfol2/O2NNDbKyM8wiX1REVhQCYA5H5maytQ7zvPYnPOat7JtIy4MTarjR/BpI2yygeETT6Zpah/tX9pEjQc1XWO48Za7OJxtjs12eaogP4TTp7rxdR2YzoEP3rcVI3u6bc8Tx8mj1LiuncZtO3utBrTa627caE1NON5JrCpoiYa7odIUIV54hx/m+LjqC9l4o1YeXwemdRKE4dTXi/kTJyAeiREELj4C4RayIBygkltD9JXgbDaVyU49hqlAt/rc7yrv5Zf02YHSDsAwwCM9N1EW7YMugZsarw4YRsOjbJh9ph6OjVGbjv/iV1jWllHL2/E1OPXwqj2PPRym4P3y3bHhTCKufvrebre59TH32KvJ/Je+oBWcVo6uD/O1+SUjPncBxCtt8cU0Q1nLVijr9rfTtd/7oumX7leqZVT9xm+o/PR0YcWGDaZnDGcubkFgkRFYFAkAZ72pDZw7ePCgexW+u0bnwt2OtRvhn1SvpZWLG1/oEFFpR1BeTu6XuCmxm2OFGz6Hh+OH3ZweNm1dxs/OTMe88bEYPh12w8Cv/+pWHHdMtz28+zjHtP7X39K8PHP6Q739lh3Zp+piCX1ZQ1MyqVat24icHUUXR9BkAvoB02XBl1hy0AVMT4/a/a8fcG27gJ2TCuv8Lw60bxjasHPnuHrkEUQSIwhcOgS45SwaB/hkeAK9TGsml9OSQP7zn1XuKz9SUVwrZs/QCfCIzxJB0ICZUSMJoANAEIXSnRQ8C2f5gd1BN8GpA3ocl6QA+s6eu/bajNd1PYZ06+H2T392piSAT98O79+fUPuxTPfIp5T69Oe61cr2x7xMNlnAbbKk5KTbeMERSGCeHwHNeuzoc919kf/31P3qINb3N99pRnxq/GIEgSWAALeMRWUFkkDiqii+uz45uTn7xJc2WidPJCM4dUf3CmgG0JpLmyYxY9zMHk8Jgk01FIHiQMI2NEpKEKQq8ZzxWB7La1ujvFWrQdTbg/X4PdiQD53AnuMzkvkep4+9vCliRXapqUwiT8ejSZrQt80ggoeGj6/9ugnYmOOrkbEdK+64Qxp9NTDF/5IhwK1g0RlgSSAHSQCf3IZO4NO4sQxadRo10QEwI2aE50bNvkH3YHyCDmPujIdo0/IcpAEXOgGcH8AH9+yH27/4pRmSAOcHPYczPHw0od1Hh6FQxE+bljIrPzZWkMbvQyPWkkNgUXQAlUpJii5IAmp5Q8N+Grrdjk7oBPDt+BNpHCIyOgEt15clDhq+8a7m5kShRs3eFe0QLYzgNIpbmakYvnAbw1p9RZ0Ak4IegDT3sm2XARH7skSAW8xFY54lAdYJFKAT8KATiNBV49QIQ8YwOFMnYKIFkoNxm9iV5ANu7qXkmTbT0nEgBZCSz117XUZdc8M0Hh9e9amZOoFSOvIsCFyuCFw0CYABYkngKkgC1AC9dqwO4BssdBOP/tY9RSy2Vn5gm6mw2zRh9g0Ssn84Xqmbn9n202hFHmYD05Mxb/hsDKE3DHzw32wteM5ox8TEAevJJ2f2UgED8iQIXFYIcEu56EyzJMA6Aetzn9E6AZekALQ6wxg3TnZDSvc5NeEB+yamkQiqrQKwHEHUwlICp+FOxGOdwPL2jFqxmhb8902OTd1/7ZNPith/0WuLZLhYCNBelUtiSBIYUGoIO+z2W/WN+7yOtaPqhvW4yqsZnzjCGULdtulP6S/MKjVj848brolB3QH9OC27Ob3pLthlbI7jp6GOCEeabegErPGRpDU11tHQsaz79V/v3eTdcw9d2i9GELjsEaDafkmNlgTiqjU3blYHtE7gZdIJ4D4BiOM8UpsmG8z5mXE+I0DLgdybcVOmDsDEq9TgTbGZDqehFOTH3YrZJwCJIXVVQW188ziOPO+bUmP3X/upR0QSuKQ1RzJfCAS4zSwErTnR0JLANCSBRkgCicZ9qn3NqIWDMl5Dg5ECdAvl5hnOggJNgzUN2biDWJyO/dmmGPzMNqcKpaEehj7Tlc04uFMgiROBHc1nJ7tPb98ukgBDJvZliwDV/iVhAp3AFPYJTHZ7f0BnBw75W4aDkZ+aJxnDOM/qA1/zFMQ3TAYNTgAACTpJREFUcU1sjkXje1g2CFMKctDZwYmVAXyuy2tsKtid14972BY8cW5SdAI+PGJdnghccgmAYQt0AglfJwBJQOsEmvRnj/WWv+KozanYDo/iYX9q+qU/Cmc3xw3bHO7btPc4n6cvBzne+LmkmhoXnUAYMnFfdggsGQmAkWNJIJOdxtmByW73kf+p9wk4+j4BXgOgRkmmnH1ymeZqJIBglOf4OpFOxT7V4piYpX/9mMhEKymhE/BEJ1AKkDxfhggsGQmAsStKAvWN+7FCAJ3Aaq0TUNAJBAIANfWguXOzZxqmEyBX8MRhxqa0bMJxmDaHh2ySBOguANYJjI12NLd0dp/+7Gc3eX/2Z7I6EIJLnEsbgdKWsKQ4DSQBc5+A9Ye/i30C+GiHPjvArFLjLTWYp8OLNPjmlKAJK+0qTPNmH9NFlFMwkPDqA4WZXIJz/zo+nSAkncCKVQX77XeP42rvfRNT2CfwwAOyOlAKqDwvaQSWnATAaAWSAFYH4o37cJ/AqAedAJRwOKzH+wQ4Ntsk+rOCzzRkE2KafSBClHYcHBbQ4CZfnpbS0M+P7+sEcN7fcU8PJNXpkx3NDQ3dpx95RCQBhlLsJY9AaStZkswGkkBWnyLM/e/dWidQV+E+gaB5mmIFo7hx01/TjOmvacr8lxs9A2LiUaj5R+G0K4F8cFpAp9d7BSBq4PNjCncDFJy73jOuYrF9Y4Xh+6/9RZEENEjyZ0kjsGQlAEYtkAQa99sNjfss7BOw192ojE4ADZF2AM0wQfM1DZzdMyJW8CB6YZrh9OQmhSRsLQngIJNjOaollVQtLYmWlmsq0BUvQWDpIXDRDwPNBYIN2DYMSWBHpK6u1f3Zn9c3C/HZAQ9Xi7Gh3oybZmkzJj8ybHM88uOmzmFsB2GBHGF6y8Ct06ID8pyosppTKnrzzeiYGtEnmJhEQ4wgsJQRuGxqaqkkYMXr97krVo26dLV3Pa0OoClqSaC02RPs1JxLmzS7udmfLw6FkQnTNL4mT0wGGhLKvn69strW4N7wKO4MjLxIF336scQSBJY0AqUtYUkzysxpncDUVOvk0NBj3tRkt/Mnjyj72CsIRuPGf1OgYJTmdKUFpVn9zBgcs9z2V/81/dKuhO4RtGjkv3G9sj/2axj5E/usltb785HI0IoVK+T6r3IYxbVEEbhsJADGT0sCY2NDCvsE7HrsE1jZPupdd6PCd/yqDtacNohQ1pSDYP1UZcRnSYClDdqXcB0+LLKqY5QaP0T//fnhYWn8ITTFubQRKB0YlzanIe5OP/dcIhKNtk7msDrged3OM3+lbPxIDDDXc5cL/5ScR/Pzj/4MCXcS7PalC3ai07E+9Cv0ZZ99TqrlflwMPkSdU4hNcQoCSxqBy04CYDTpos3Bc+dG0AD78UtDFzCqpQDSCSymwae96Lt+XnNzxqpvOEH5D46NjUjjX0zQhfZiIcDj2WLRX1S69AWi4319K2N1dTE1OtyLY7u9dt83lLX3aTPHL9EJECPVJAAa6ymsEhgsB+hA3BJkQfEY+df/nkb+5yH2fxhz/jPLb7vtFO4RLEZd1EILcUFgARG4LJYBq5XXb3RvUPjJ73wnjSX5tNucTNmty3BabwK3DU9WS1q7P77tp+jbfqmWDCSAU9BBpL3sdHrFm998rnZikkIQWBoIVBr0lgZnNXJx7LnnUpAEkmpstNcrFHqt555Wdt/ToIKBmTbr+IYKTGM96QHIl0f+Sm5Oo1Nfe71yfv7Dyoo3PG83NMnIz+CIfVkjcFlLAKXId91xxwjcI68//3waDT5tQRKATsCXBCANwNTW2/mxSdtfj809yZaMhZEfNxWlB6dz6XUy8mtM5c/ljUBtbeIyKCtLAu7gYC8+9NFrf+sZZX3rWT3m0wdJyZTO9nlFIPAz0oK5mBRr/e/8KfzuplTPR2TOr/GTP1cOAleMBMCvpCgJfGtfGo07XYAk4EASsLROYPZVuuJkAaO+akxg5E+NqquWj0DfgJF/WkZ+BlrsKwKBK04C4LdSlASgE8AFHr221glghUDrBILzAxyfgTAHivFl7zvfhd+7cftPZLfdsnJ3Lu9llt+2XrT9DJjYVwQCV5wEwG+lKAn4OgHl6wQ8SALWpJEEuNFTmuLIT3N+OtCTbMHIv2wEp33TLbeuTzNdsQWBKwmBK7YD4JeUm5rag9WBr6l/8eO97i0/1mvtJZ0AfmjxwVoAYutLRjDn736HcmjOb9mPInw3HuSGHwZT7CsOgSu+AyhKAvv2lawOLE9a+CKx3iuAV6pHfz3nb6K1/lGL5vzKwsh/q4z8V1yVlwKVInDFdwBcWHyDUEsC7pa39arb3trr9T2lHOgFzNdHcIfg7Vv1vF9FrEftmNqtMvLpb8ZO7CsXgX82HQBLAq999+9H9dyfRnwYGv3pZ2Heb121AlsIvNGW9TLyEzZiBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFB4MpD4P8DtGktnoREaAYAAAAASUVORK5CYII=",originalColor:"#E93323",secondaryColor:"#363435",borderRadius:3};const JMendesTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAzK0lEQVR4Ae19B3wcxfX/mz1Jbmdj6j+4UIMpCQQCdgKGhGpIQjMkdCcE6WQbY5pOkk1+CQfEuEjCYIOLCpgOhgQChAQCtundtEAMmOpGfvyoki1b0t38v3OybJUru3tbZk9vPp+73Z158+bNd3beTn1DxI4RYAQYAUaAEWAEGAFGgBFgBBgBRoARYAQYAUaAEWAEGAFGgBFgBBgBRoARYAQYAUaAEWAEGAFGgBFgBBgBRoARYAQYAUaAEWAEGAFGgBFgBBgBRoARYAQYAUaAEWAEGAFGgBFgBBgBRoARYAQYAUaAEWAEGAFGgBFgBBgBRoARYAQYAUaAEWAEGAFGgBFgBBgBRoARYAS8QUB4kwyn4jkCixeH6MlX9qA2uQ8J2odIjiASO0KObUjKbZJXEtuQkINIijiuG+DX3P4TuMezFGsQ9yOE4Wd8RPHQRxTa/VOqHd8KOnZ5gAArgDwoxGQWIlNHUKL1KFTWo1Bx94ff91GJixzPnhBtJOkN8H6OyHiO+onn6MZZax1Phxl6ggArAE9gdiGRiyqG0CY5hhLyaFT6o1Eph7qQijmWQnwMwqfRSvgr9R32GM29eJO5iEzlNwKsAPwuASvpXxgL06bG0xFlHAmBL700rET3iPY7dDX+hrTuo+HhxygWa/EoXU7GBgKsAGyA5mkU1Zf/12vHkmwbh4o1FpW+v6fp55KYEN+iq3AvGUWzqXb6ilxYcVx3EGAF4A6uuXONxYpo1frfonk/BZV+z9wZ+spBQnk9igHF66i+eomvknDiXRBgBdAFDg0eLruuHzWujUCSclT8YRpI5KwIQmAAkWpoWPgudA8SzjJnblYRYAVgFTG36JMVf90laDJfhoq/k1vJaMT3TQqFLqPaWUs1kqnXicIKQIcij5SfiEo/B7/ddRDHUxmEeIAMUU61VR96mi4nlkSAFYCfL8Kksl1pk7gBFf8UP8XwP23RgvGBG2gwXUXV1ev9l6f3SMAKwI+yLl1YSImVZWju/xGVPzij+m5jJWglFME5VFfzittJMf92BFgBeP0mqAU8GxMPouKP9DrpQKSnVhoSxTBIOJ0HCd0vMVYA7mO8NYXxFYdQWwKLZOSQrZ58lxIBIZ6hPnIc3VTzacpw9nQEAR1XkjmSMe2YRKJnUTz+NFd+kyUj5REYH3mTistPMBmDyWwgELIRh6NYQUBKQas3XIMm/xxEK7QSlWmpL8YEzqKDRq+j159fzng4jwB3AZzHdCvHWMyg1U03o/L/bqsn39lCQIhpWEX4P7bicqS0CLACSAtNjgGq8q9qbACX83PkxNE7EBB0Jw0beAFvMOoAJPcrjwHkjmFPDqrZv6qxDgHn9wxkH9sISDoXLaq/QwH0tc2DI3ZBgBVAFzgceFCVPxKtBacLHODGLLojIOWxUAKLoQQKugfxs3UEWAFYxyxzjEjFPBjnKMlMxKE5ISDlSVACt2BshbuwOQFJxLMAOQLYJXqk/BKSCR6o6gKKaw8H0MOP70DLX3jUtRR6AWNWAE4VciR6LMxz3Q523KpyCtPsfEbRjw8vwBQh7yjMjlVKClYAKWGx6Fk8BQY4E48jFq/rtwhd7uTyZ/Tj0R9ACbydO6/ex4H7ULmWeUXFQPoy8SJW+O2XKyuObxMBQU0wOzaSzY5Zx4+bq9Yx6xrjq8QirvxdIfH8SVKYEi33U2mMW2AWwWcFYBGwLuSRinMxEn1aFz9+8AcBST+gRNM8fxIPbqo8BmC37C4s/x7FE48gej+7LDie4wgcSIccvoqWP/+645zzlCEvprBbsC2yFvP929mNzvHMIiC+RBfrM1CvgukwXMVXuG/EdOt3OBsBP9wnNl8LQjiTgL42y5npiFgB2HkLImXjMOV3kp2oHKcbAkIkoEg/QEV+EyHv4Vizz7A6BRW9AL8+n1FtDOcUsnMLAZ4FsIrs5Kk7UnMrXlS5rdWovZ5ejdZL8TYq+xuo9LAKrM4YDL/Nldy/N4NbAFaxb26BHT/iym8GN0ForotlONzkSZKhpVQ3cwWa7TgkhJ0uCHALwEpJTJyyB7W2roACYMMeKXET6/F1fwaV/Elcl9CQAW+wXb+UQGnjyS0AK0XR0jYN5Fz5u2AmvkBlvx9ei8nY6zmqHd/aJZgftEaAWwBmi6ek7GB8+ZW5asZMiK8xBvIAidA9NOaQJXTGGXGzMOZE124HoA2tCmU5mJ0DCPDLbBbE4rInQHqMWfL8o0s273GKD91DtNfjjn7pk9aTNu5Bou0HULL7QcXuDfx2TI61CDXYKjDdiuvWrlcc3YxN8NsIOlxpPcJW4fox/D/BmAN+BR9TQWIlzav6HP7s0iDACiANMF2827/+r3bx6z0PqEx0I4UHNtD1sW8cyXbybAQY9iB5NPj9CJV3H9z3dYR3dyYC04qSnof3cxQSz9OxI9/0rMXSXRYNn1kBTIj+kFrpPAqFr047HVUSXYQmb28z7LkUh3fOoSH9H8p5IC8aHUDfiqOA4XGojKri+7hxCi0ZpQyE/Av1K3qA5k7/QsN66ZlIvVMBqGW8mxJnA+Vx+B2EJua/qaF6/5SoJ+f9W1bhxe2TMjyfPAU1Y57+DlT8uVQ7M7fttcpaz/jKIymROB/YnY5KP0BDqFRXArYE5H1kDPwrPgD/p6GMrorUu2YBIpXHUyJ+CSr/GKC6dR+EkOkNSjS3RfK+8gu0gaSooyJxTc59ZjVV2hb/HZWUo8Ukd3X17c2deQitErRI0CqJN86jkrJ/4GMwG+bHl+TOOhgc8r8FoL5EpeWnoqD/gIp8cMpiCYXG4pz6B3uEKcOTq5s+RtxhPcLywUMtwyV5NxUW/onmz/gopyypcRIS6rDTk8En2O+VEFihSDWY1rzX0cHOnAB2J3KwCyoTJosXh+hfr56FJugVeMnT9zlVJSgs2AEVoOcmkpLoKXiheyqGTOkGJUyIh8kI/SHnpn5JxU9hDUlV/F8GJeum5RS0Bl2EuVQYvonmxZpMxwsQYX4qgPam/lxU/L1MlMXr1FDz45R0JdHb8WKflzIsqJ6CXsQUWRmW5aqRcfsuWfHjV6NVdZx9JkGJKT5Hm+YKqqtaBIUggyK1GTnzSwGUVKCpnpiNSvtrM5lvpxHXYQCwrAd96cJCir//v/Af3CMskB6iES/vVBo2YH5Oo/oTp2xLLW0zoVxLAEN+vT/ZylXQa2QUXIpW07PZSIMSnh+DgKqvvmb9pSTjV+KLFLYEfghr1lM5+ZGao86Tyk8PkTAmUf2s1amyatpPbYNuaatB5d/RdJx8IlRjSPG2Z6gkimXPoXIoAmxZDrYLvgIoiR5Aq5ruxEv5QxtFEac+4WdSxpNtp6X0D5Qnmq4kLqaGqvtyEntixd7UEp9PCToKOOfEKi8iS3kGjnr/BRWXTUb38dYg5ynYTbhINIKXcg5eSnuryNRob3011gF0c+2n+q5DV2KnbiHBeRSigcLhaM6r9yLlF8D6zo2o92z6LFXpC7oXqyQn5IxzKt4e+AWzBXBhLEwtjQtglefcHDFKbTtudeNBeOGDWvmVmaxiKLb7c8Lmsuv6UePamzCL8vuc+OR7ZElnUlPToTQe3aOFNU8HLbtG0ASm0sr9aVPTq6iguVZ+lXU139vTSXFoT88A+CTnrwsPpvqa3Cq/Ouikce2LaAFx5TdT7FLuQnGsKCwuvwYDrIGqU4ESliJlv8BKvhfR5Fe7xRxwInULQFAAFQBW8g0LH0oNM1bmBEwkOpao9TVU/gNy4tPbIkuJuoRzIVc33U+q9RQQFxwFkLTBT3/Di9nfIWzRqx3wZkpeUmJxS1AcNrcY9FtMZZbi66O2x9p3xdHxaFmp1sMg+0x6eUwpx1LjmiWk9pAEwAVjELAkejEq/vXA0zl5Ba1EU7nnQqEJ0Z2oVf43AGWn0FiJHQ2noO/5bs7yRqKVGFOZkTMfZtCOgBAfkij8JdVNf19nSPRvAah+lZQ3AETnKn+yRJLrvXuWTVtQmv/iVSoQox2p/MXRGVz5e74KOflIuSfJlhcoUnlYTnxcjqy3AoiUYcUZ+lWuuDT9fxI/cCU5J5kK8U/YJT6SFlSrlYr2nRqwikQXYEyl0j4TjpkWAXVwTCL+T+wyTL0JLW1E7wL0VQCR8kswx1/hIhRpZgDkbi6mmTtrIW7FYN9JVF2tDFvk5lavxzSfHJ8bE46dGQE5EOH/pNKp+2Sm8ydUTwUQiZ6B+efZrkIiQ6n7ZkJjBWCI6ZjfPx+DfW05Y1NSPgULfCbkzIcZZEdA0g4Ub3kcU9i7ZCf2lkI/BVBacRS+/LcDBof7/F2AlTS872ddfDoepNit41ajK9bfislUV42tzQ644ug5qPzXOsCJWZhHYDgl2v6l2+yAXgogUokjnhMPoE9aZB5XO5RiHb6iLT1iKuMhRLv28Pfbw6CLMM13oyNiRMp/Dj634OemgnVE1LxjImkENbc8gnfP5ffbPHL6KIDSWH/s5rsPI/7bmBffNuWnKWNO/J8h7iuflCln8DQqqa5mXgYC80ElFftCwT6oXx7NZyHwlJJG0erGal3yoY8CiDfOReXf1yNgUisA2rStR+mbS0bARl9D1SxzxCao1Nl8/UI/wPThYThq+2z8psBGwHz8HkV74B388tLqjQlkvCWRNJki5ad7m2jq1PTYDFRSfjb6pBekFtEFX3VwRConjb5E3hxykyr5Ln6GMRsWaP7UxS/Xh3ZrNmvBRv1eSMmuNLYD0Yb90VL4EcLVcmBcpTqwI/+tIqcExCVPKRtgq/INqq360KUUTLH1XwGUlu9JcbnQlLROEQlK3QKQAgpAB4d1/XVVl/siSbtp7KVIW/3aXdLgSvPeUNIHoJWmFMIhaDUcinunlmV3pNR7rqqrm8B5ipPnHEZzL97kV8b9VQDJffeNdyHzaq7US5dGAcT9VwBCLMY8v17Tc+3Tju+ggNTv7mRBqYGstc2jsNBFDSoeid9hrBCSyJj/k/LHtPGzKxHBmdkd8ylvoRRb7vy4iZRNgBac73nSQvwI8+lv9Ug3Un4imr4P9/D3ykPZnBs49AiafXmzV0k6lo5SCKvWj8SJO0eC59H4/QwKwd8PjGOZc5ORaKEi4wCaP+s9N1NJx9u/Apo0dXva1DItnWCu+veR36bkLxP+tQAEYQNS6NRAVn4FZvu06nO4U79pVBzbjoz1J6PboAa71JFgPIYAIHo6THm3xG+C/7E9w9z38W8WoKV1Gl6K7dzPYooUNg5sTOGLrq06cdYPh6+ANE7P2WinH6KnS7Mh9lXSjHZ9zUm0XWhHGCU9B+MG2GqcPJsvXaze6n8MTlI604/M+9MFaD9F5mU0Ef1RQKERRSlPfCmtPDxp9dXzkjAimO6r9zxZPxJMmhpb8yskXYoPgPrq+fMO+pH3jGmKtbS9sQ/NmpX645Qxrv1AfyqgxGkrflV+gfPka8e3poTMiH+T0t9NT0Pc2Gsqv8JRjW8ok2X1NWMoZOwFYyZY5yC+cBPiYPCWQ+ir+BSvZfVeAUSi0PryUK8z2im9DBq2z9ed6Ly4XUpDw5d5kZCWaag58LqaShoeHpZcmCTEU1rK6ZVQEku+Syu38So5lY73CiAhPddyXQCV9F2X584P4U0etgDElxTqc64jO/s65yGI92oAsa76HszMHEmhon0xVtCAjkHqVloQ82de5kGYVr3IPHnulN4qgEjZSIh8TO5i58QhfQtA7bH36sUzxHiqvXZdTjnJx8i101dAEZRQQeEIlEWtZ+WhDZbyUlL7Yjxy3ioAibXnfjtB6zOKIMUnGcOdCFRGPeqq/uIEq7zlsWDGJxgnGI+z+L6PGYQFGCfouXszHzOvbAckmkq9ypp3CkBZRFEWU/13mfMsKHcDm5nz+An1C1+cmYRDtyCgzt+rr5oIJbAnWgOYL+8NikBGSR1O64HLXBmcFCDROh7sNJjyEUWZsyX/kzk8h1AhEniRf0tzY+nHIXJgn9dR1cGm9TXoHxfAZqP4R17nVdJQin9wghd59EYBLF4cwpzvWV5kKGsakjIrADdbAJKq8DVLfRhpVsGZIImAOvikofqXOJ33FAwWfpy3qAic9eCB80YBPP7q0Zj6+54H+TGTROamlRFypwUgxFuY7nJ2e6+Z3OYrTd2sh7Bpaj8ogavQItiYf9mUJ9GlscFu58sbBUCJ89zOiGn+IksLINR/BXhJ0/zMEUosM74wpRkyc/GZKhUC6iSk+uoYOpZKETyciiSwfmrvRFPjGW7L774CUEs/Jekw+LcZyyz2BufFmvAyve4o8ELchtV+apMMOzcQqK/+GIrgZJTbOLDPo/EV4Xo3wH0F8N26E/FB9Xq/f/rXTGYbBExGfTI9A4shQmDnYVGlxVhMbgeB+uo7qLDwR1AE+aFspRxNJRXD7EBhNo77CoDkcWaF8YZOZt+WaognHJTlT1R/bTDOGnQw076xUusHxoxSRkquhCJo800OpxIW0tVtwh4oADrSKSwc4jMIZpgyK4EBOz+DfmXuW4PVwN+YUWqvNzsvETjjjDg11FyNle5HQAn4anMv52xL6erKWXcVwEUVysz2XjmD4DSDxKeZZyTUjjVJz+ecrBGaROplZOcPAvWzXqTtjIMwS3CPPwI4kKpMWldygFFqFu4qgObEkamT9dm3TUAxZXHCeDwLRZZgcTvVznw2CxEHu42A2l/fUH02klG295ye3XFbeiXyEIwDuGYu310F0G4s0gOQLCaRMKEADOMuhb5Fzu3kqvvQp88fbMXlSO4goLoEhjgLXbtmdxJwkatMuNYNcFsBjHYRllxYZ28BqDXoREtsJSJg1nvetFW24nIk9xCoq14MBfBz/IK1C1OQa/Yz3FMAavkv0ffdK80cOMtEdgWg2AuxyHIq6gsjiq61HI8jeINAXc0rML46CmX7hjcJOpCKxMEsLjn3FMDS5buiBZ153b1LmcrOVuycnQYURviv0ALp7QekYiJx1Bbv80+FjD5+amPRYDocSuBRfYTKJInYG6tIXamrrjBNZqUlPiJTlnwNk9Lc4ora2AY0FxeblxUWb/sXzjBPz5S+IaCMvwwLj4USCMASYtmXVm3cww2s3FMAQuqrAEiYb1KFlDEKk07IuTR3+hcmqZnMbwSUKTJjr9MhxoN+i5I1fSOxX1YaGwTuKQDSWQFgZ+KE6E6m8Fo461WTTcXvsOK5yhRPJtIHAWUhOjQCm26E3haapAyaAhC761PKKSSJJ0++TRGQwksa2HKaxQlxA6nDMNgFDwGlBIaHz4ISuE9j4TGm5rxzrwUg5SDnxXWQY/KUW5P8Gma9jFbAP9NSq3n/foVz04ZzgHMIqOPLi8v+RiVlv866pNtKquoA1ONHYcGQrqsGpSunaLmnAIQIW8Hfc1qJA0KtOINiackl3cl9/7ToOBugji8XNAJLtO6jDZ9+TpHoAopUHuZIImrZ9vGjzsuo7B1JyBaTgCkA74/8toiqPMBShNrql9K+GKr5z85DBMTSzYkNpoQcT4m259Ai+ADn603MuVWglMB2hjLE8aaHGTKTVNAUgNS7BUBiX8uWVwuNS/H12dSltIRYBmMUb3Xx4wd3EZBbFMDWdCQWncnEPGr+9EMqiV6MefO+WwMt3qn9AyJ0Isp6jcWY7pHLoHUBpOZdALVISXxorRuQPMNdTOtWytd3e+ZHtxHoX7AMSaTep6Es6kp5A61q+hitgjLbh2yoxULCUEqgye3smOQfuBaAfQ1sEpGcyRI2NlkMC8/ES/HO5rQ/wmKSACwkyRkpvRiotRaC/p1ZKEz1SqqmROPK5IBhZuLUoXVVWC5snIlA/7d0C9gIdMG5NwhIWU7gcSEzllkmbFgrUotHREEp0pIYE5iLpmbCcrocwQEEUnQDUnGVtHNywLA4+ghNKrM+lVZf9ShO0Lw4FWtP/aQ7B6K4pwAENXoKkK3ExGhbfcW6mc/jpajCCT8320qWI+WOgGF0DASa5CV/RRvFOxQpj6LMC0xGaierq5kHZd9gKY7zxC3Os3T3dOAAKACssV694QhbwKpjrfmEH1vQORIpZDyFSmmx9SUHUCJRRasaX6biKdZ2qhrqODfxriOy22PiymnJ7rUArO6iswdK7rFE/NjcmTAHzxGYP+Nr9MLet5nuQSTaXqVIxcmm46uNYYV0JsYe/DEoIohbAKYLywphgjSzWmxF+F5P+7ptBKTchhLxB7GQ6Fp0Ccx9CBdUq4HHS22nmVNEGTgFAHv4gXAH0uSpOwZCUhayKwLSwCh9Tk5gIdFUWt30GKYLdzDFqb6m1p89AwItHuedOc1nK13xka1o3kcStLHldO+T5RRzRiBEuSqAdhEkbO/HG1+iCVN2MyVTKBTB+MPHpmidIpL0mVOsOvNxTwEI+V7nhLS+T9C5WsvHwqVGoE+B/S5AT457UFvbMxSZmt2ORe3MbzELhI1DHq4PMETAFIAUK3pirK3PaNPaX9ss9ELBksZXxFrHcq4sRcmWp6m0cv+sPNv3hszNSucUQSLhipFZ91oABQFqAaBTR23xc5wqK+bjKQJOtgLU8q7/h81Fy2h8xSFZc1EU/iNoXKmYPdI2jIC1ABZU/y8y8U2PjOjqISV3A3Qtm0xyCYfGATqnIWk7fBCexKaizDtG1UnSJCZ1jurefSJgCiCJhAjOOADB5NKEKThGil2gEJDCrW27g7Cp6BEqvWLnjHg0VD+MAcG/ZqTJNVAteNo25EqX2r0uQDLT8sVc8+5p/LY4twI8BdyBxApDKx3gko7FcEpsejjrjsK+xmQw+C4dk9z95X9IbVF2wbmrAIzQEhdkdpGlHGdrb4CLEjHrLAi09v00C0VuwZIOxhThnRkXC904ay22Dl+RW0IZYkt6KUNoTkHuKgAhnoJ0/m+lNAuRlDvRmqZxZsmZTgMElCFW9/fsn0qr18/KmNthA+ajK/BKRhq7gSKoCkDNlwqx3G6+fYkn5eXo+wlf0uZE7SEg3Zkj7yKMTJRRcfSkLn6dH9q3hVd09nLsXhgvO8arGyN3WwAqMSEtbtvsJqHXj5L2odKKX3mdLKeXEwLudgM6RBNUn/E8ifrqZWiNPNZB7shViA103Mi3HeGVgon7CoAKAjYOAJSkjKbAir10RUAIbxSA6iK2yrqMMBQUTkW4zEhjLfBJUoZKXXLuK4Ch/dQ4gIsjpC4gI+XPYUbqYBc4M0t3EPBGAbTLfjIVl5ekzcaCGViYJO5NG241wOUpRvcVQCy2EeMAOp+4krpIpOBWQGpkdPT1UgGgfidm08Qpe6QHouCPeOfb0oebDolTUcHDpqltELqvAJRQIXmbDdn8jSLo16Y2hvgrJaeeRECu8xQISWFqaa1Jm2bDDKxNEPVpw80HPE03Tf/SPLl1Sm8UwILqZyDaJ9bF8zGGlAUkW/mobx+LwHzS0pVFMlnSPxX2BX+elsYovBqtgA1pw00FuLzCEDJ4owCEwKCIcYepPOtEJOVY9PdG6yQSy5ICgcIQ1uT74KS8Lu2Uce2166AAFtqWSi3/FcaDtuObjOiNAlDCGAW3m5RJMzJZpZlALE53BEI+WaCW8sfYMPTb7uJseS5K3IB7eyP4ah+COpzEZeedAqib/j40YvCmBEkeavtgCZcLj9lvRkD096cFoJIXNC3tXoGbaj5F+P22yqkgNMdWPIuRvFMASjDD+LNF+XQhn275HEFdJO8Ncmzv4/Fd6iiyRFP6aUFB6QcL05WNOnlq4awn0wU76e+tAqidhVWB4gUnM+AJr+TBkysneJIWJ2IdAbUMN+cBN+vJbokh5SVpNwvV1bwC2dQguBXnyddfCeStAlAphtBkCqJLyCszLgMNYp7ySmZfZgI6ENwDm8hO6XhIcTXfChCw/msM9GzA3HsFUFv9d2hEZ6y5pkDaPS+5PbXSje7xZ865IZDrlFtuqWPx72VpOSQPkBUfpA3vGjCH1CEkHjnvFYDKmBABHQuQv8FGoVM9KhtOxhoCIWvkDlNLeUTa5ePtXZTZ2VMUn1NRuDo7nXMU/iiAuqq/QAs87Vw2POSUiM/DMtBtPUyRkzKFgHTl+GxTSW8hEpO33Ha/MQbcinc+y4Il8UdK2hnsHtm9Z38UgMqPEboQUySt7mXNJc7quOmW1utc4s5s7SIgyX8FoBaOTZ6TWg7VrBe0OG32BL1Nx4+8JW24SwH+KYC6me8AEBPNIpdynhvb86m0fExuLDi2owgIDRQA0SDa8Fn698IILUqbZ1FQ7ua233Tp+qcAlETbiKvxvyqdcFr7x2UtXRgLay1jrxJOpP7yeo/Bb9ImWTvzWXz0ehoxFeJRqpvprCGRtEJ0DfBXAVRXrydDXNJVpKA8yV2ppWl+UKTNazkXLw5hTb6/73IHwIJOxpqAoo7HHldBGAvo5AR9RQV9Sjv5eHrrP2h11Q9AK97taa6dSkzK8zDy61vhOZWNwPN54l1dvv7KmtQ2tGb9mLSYioLbMAuW2BIujQm0YNqaLc8e3/ivAFSGiwaiEgXpEJFOpSTFDXygSCc8/LiNU18/kk2fpjwxbVjtzM+gJLAiFk6I26ihyldjOXooADX1EQr9Bi2B5rTAaRsg++JU2ftwoOQ22oqY74IVbdhRqyxKeXhGeYRYhPBPqF84/bRhRgbOBeqhAFR+ame+jf3PFzmXNQ85SbknJeI3e5giJ9UZgQQN6/zo+72k/ejS2OC0chjhv5IInU1zY77byvR39VR3hJY//zodPHoPeP+oe1AAnveF7N/S8ueDdRxaAIDNKuJBhx2BzvfYrHTeEeC0aRwzvvyFniP+SobXlrXS8udWeydO+pT0aQF0yDgsPD6wqwRJzkJXIHPzryOffHUOASmHOsfMIU5SBMKSlH4KQFkRDoVODuSGIUmFFI8/SOPL93LoNWI2ZhAQGioAIlYAZsouJY06UoyKTki5aCJlBJ08sWswLv9Bk6fqNTClE0ROy6KMcujmpDxQN5FSyaNfC6BDyvpr/4uuwBgogXUdXoG5qkHB5paH6LLr+gVG5iALKoR+CoBocBA2jemrANQLWV/9MRVACRC2SQbNSfopNa7NfKx00PKkq7yShmspWjy+u5ZydRJKbwWgBF1Q/W8qLDgULYH3O8kdjFu1O2xVI+8cdLO0imPbYQbge24mYZt3IrGH7bgeRdRfASggFsz4hPoUHQYlEMQptktgOvpSj8qz9yVTsOEgbTMtDVYAjhWOOiLJGHgMZgdcPSvNMXk7M1IHSJREf9/Zi+8dQiAe13ewTRB3ARwq5nY2yqjCmFFjoQQ8s5rqkPwCfOpxlNT5DvFjNlsR0LcFQHLnrWLqeReMLkBn7NRZ6fXVl0AJnIouwVedg7S+V9tVpWygkvL0J8lonQFNhZNCXwUgSftZoOApgI73sL76b1TU90AoAqs21zs4eH9N7lmXt6A7cJ73iedhislpVrm3tjkTrADcLZt501ahS3AUThxSJ7Fu3WPtbqq5cW9vCSyi4ug5uTHi2PTd5/sDBb32s3QuFm4BdEbDxL06bllK1V8271SXoK7qSlgWGon1Ai+Yj+grJV5aeRtFomf5KoXfiU+I/hDn6u1gWwwjfojtuF5EFJK7AJZwlvIqNI+fxoYapdmtudqq5VRfNRqtgd9jbACrCLV3IUrIO3rl7MDk2CDkeza10etEzf1tl5QUx9qO60VEbgFYRTl5vNPh2Fu/HCPm11FFxUBLHISQaA0swlHke6NLcD1+bZbie0+sbNndjIHBK7xP2qcUIxXn0oam95DvS/EroFA2W/lp5IzFChD/mDShmngLfbsnmxHSbBBQtBtIUC9GInEZfZlYgcpxpuXSVJuJ6qsvQ7dgH/wWokWwyTIPLyPIxDSMCdyU9oBJL2VxKy3VqiuOPgXlfkeXlXvx3e0d7b16/aEQdZBb4jrCV0jfDX5ky4deCkBQt5NT5BCSiXuouOwJmlhhfbS3tupDqqueQEXGbhgfmAkwNC4QeSGtbroPSkAz+3bZXqEs4R3NfdWqI/mzLtRKMdeOb+3iZ/pBHm+a1C9CSdjVqrfTSwEkuiuALeAdQy2Jt/AFqbE1aDSv6nNqqJ5CoYJd0CKYAmXw3hbOOt1IeRqUwOMZzUnpJG8mWdQJOSXRi6m56YMtzf2e9N0Ufk+CtD6S9FcAgr5JK78mAXopAJHpCy2L8AW5nOJNH+HFipH6slh1qmtQVz0TymAfdAsOaR8n0Gy7sTpksqnxWSqpGGY1e1rQKxv9JdFiav7sfVT8G/DbKb1cNvv/yZkDeXB6vtqEcAvAUlEI+Ul2ejkQL9WVGEj6CAOFUdt77utrXkuOE4z5yXAYaFR2B2rRMvgge/ouU6gZDClgIDUYBiW2oKGmb9V4zeMvvYvyqcdvly1h6W8+TR+UISTepOzuW5suzsDOtSAptFcABa5l3h7jFeajwfJOQlbRd2svQ9fgahoebkD/2fqov1pHQPSvzT+iiyqGUHPiSFTAn8PvSJz7PsK8THYoxRd4lZ/B+7yEQomltLDmXTtcfI0TKT8RX/0/QwZrxlwF2e2KneZrfk0nLr4yTeoToV4KYNvQCvpS1UcrDgOF2DCMvnM5FZfPoOED7oAi2GiFQxfaG2etxfNdm3+UtPcv20ZQQuyFigplIJVCGIGv9FAoiTAUxAA8p/saSQRtQHgjaL8ELVoYGH9QL74IvYfByfdI7XIMolPTcKvXnw48yjBjg0VYttz7lmMl9/83nWQ5nh8RhCpvvV26F9c/qYujOCYpWaltyoAvqiHmkyycR0mzYjbZmI2mmr6TroISWB+mTaEw5rULsBipkQoLG2l7aoIyCsYSZbP5VQegyEQETfzJJpv56TmHxIlUW/339AQpQkrKJyH9G1OE6Odl0Ciqq3lFP8G2SqRXCyApl/wPLuqrbtPJHdE1+BNRyxRMH96Fgb7Z6Ou/ZZNZ9mhq8RGhorf/stMHlaIkujsq/CWwenwBFLS1BVrp8hwvsNEFkL9Lx047/74DbeTP21zo1wIoKbsRTeVJjsIg0L826DoaEv5H3n2RHQWqG7NYzKB1G46itsREVPpTEercyjZBrTTmJ/2ofQymW8JpHksq9iUZD8gYiViL2aahaXKijbd+LQBBLzmuAKQ8muJ0NK1uXEORsjtJFNyRPIpMm2LQTJDxZfsBr3EYVzkPX313piOlWG6p8iuIZCI4X39KtmQ1K9ie4uinAPqEnqRmqwOBPTOW0kfZj5dUQdRWgVFr1S24A2ez3+Xn8cwp5fTDU51j0Nx6NmrZb7FJZ/Mcu+rduOTE5hNyzbJXrZHVjVBIZiP4TGcI1ZXV3umnANQofHEUzTy5n6voSXkA+M+itk0zMFawFGMFd5IRfphqY//naro6MVdTnpvkCfiyjkXlxxV7MLxyhrHUUlJrm36Byq99k3pLnqR4fsu9xjfeFbgVEIR8EoXtrgLokCdppYeOwct/DMUbJZTPa5imewzTdY/RsAEvYMzA+tqCDt66XdUqvSdeOxT96F8C31+gpdXJoKaHn1bV/6cBz1qCJ0GVluj9Ji4iawrOJ3n1GwRUQEQqTsausb/5hEnnZL9Dy0Apo8egFB7HbMLHnQO1v082mzdgE1Xip5BVfeHH4DpYA7mfpYaaI0zLEak8jBJtz5mm951QvIsBwB/4LoYJAfRsAfTtvwybSNo8bZKmBmsQZBiLoLFQAoTWgVq19xq6J8tJGMsRBiMkGimFSWW7Yn/dSMg4khL4rWqCxRyHpuxS42PPVwhrX0fZNtVeQj7FMmiJTylbTlbPFoDKRkn076hgv7ScI68jCPF1UhEI4w1cP0HlW4WFSKvQxP3MlfEEtRFGNu6OLsruWJ24G9JT8/N74Hogrjt5nX1b6RnGQTDc8oapuMpsWKtUA7b6vqvdM2KI07Dp7IHu3jo+69kCUEhJsQh/+isAKbeFtBhDSByjxE62FOKquYCdriVlzbhZBb9V6Eqsw7UZr3Hz5uvG5D2JjYir6PCKizAWMYWTVyK1zBj3+JFacix2xnLi3TBOgWflVBr4qYtyHdf2J33/Bb1tuvKrXLTJKfgPTuVXxmkLCpYp0YPg9FUA/Yc/RM2ffoUXe7sgAJlSxnabcJv3DmyuoR0VVV2T9x0e6nnzfcdVMd0SjJst9yogqE7cblryCVN2o7a2MwOVcSmfovkzvjadR58J9bIH0BmMuRdvwuPdnb34PuAIJL+OWHdh1rXFK6EU9f1IpcqHQbek8tbVT18F0I5YoMDUtZA1kmuJ6UVXkUqMossSjWQ3IwpmjQb+xQyhLjR6KwBltIPoTV3AYjlyREAYi0xzkG2zA/f1J3EvBn43mM6jBoR6KwAFkCGu1QAnFiFXBIT4jMSei02xUetAJB1nilYnooJgNf8VdPorgKHh+zEq/h+dypllsYOAmGXKAnAsVoSVijV2UvA1jqAVtLD6BV9lsJG4/gogaVBDXGMjbxxFFwSUncNhAxpMibNm/cX4+n/fFK1WRKJaK3FMCqO/AlAZGTbgXswErzCZJybTDgFRY8pM24ToTjAv9kftxM8u0Ec0LHxrdjL9KIKhAFQrQIT+rB98LFFWBNRKyaLw/Kx0iqBVqsNbrJt7N8XcRSIh/hzUTWPBUACq7Ib2vxutgJddLEZm7Q4CV9O8WPbjv5RlYaLz3RHBRa6CVuLrb35xk4ui2GEdHAWQbAUY4zEgmD/bc+2UWJDiCPEWjRk1N6vIan9DQtZlpdOSwLgmqF9/BWdwFICSNrmBRNygbtlpj4DE/oULTZn9ijctwKKf72mfox4Cin/TmJF39vAOkEewFIACdjBOBSLxaYAw7p2iCrGIGqqy7+EviZ6Hyo/zBQLm1LJmYURMKTiNsxY8BVBdvR6Lgy7SGFMWTQ389SuszAqEOv9QyuxdhKyM/CCQN1H9rBf9SNnJNIOnAFTu66oewf/NTgLBvJxEQEyiudO/yMhRHahCCbXXQwcLRRlFTRG4iooGXpHCP3BewVQACubhAydhQNCcUYnAFUuQBRZ1VF+VfRenOthVymMDmdOQmGhqZiMAmQuuAlDn/xni11AC3wYA594hojL2MWjIJVkzW1o+BpV/elY6HQmEwJkSFo8z0zEfm2UKrgJQGait+hD/v9ucF774ioDA2EzRGTT78uaMYpSW74kpv3tAE8pIp2UgRv0H0wQtRbMpVAALoVtOlz//Hh1yWH+sHx/dLYQfvURAiGKqm5XZGOaFsTC1tjyBUf9dvRTNobS+ISo8hm6a9V+H+GnBJtgtgA4Ihw6E1Vihvirs/EBAYLNWffUdGZNWg34tTVgvL3+YkU7PQIlTn8+jhhkr9RTPvlTBbwGovC9bJmnk7x4i+upgPO1lHw6OaRkBQbVUX1OWNd6a9X9Ev//CrHQ6EghxFaz8BnSlYmZA86MFoPJYO76VBg5Rg4LPZM4yhzqGgBAP4ITf7JU6aeBDXuVYup4yQsuyrupqT5P0MLH8UQAKNDUA1S98IpTAcg8x7J1JCfEU9dvl7Kwr4UorD4eBD9U9w7x/4NyDNDw8Du+TDJzkJgXOLwWgMj039h0O+TwehfaKSQyYzCoCqpXVL3wytVtuTh97wpSDcMTbIxig7ZeeSNcQ8Q+sNTkzyBt9zCCbfwpA5Vqd8DuYjsJH5+9mQGAaSwg8iO2vY5KKNlO0iRV7U2vbY+j3b5OJTMswIZbgy38aKn+LlvI5KFQQm2Xms69Ow33sZRijkBHzkZgyPQJY5Xf8qIkmmv27ULztWfAZnp6XpiGqazOYfkVqz0kvcPmtADoKsCSqRqDzdiCnI5vuXo0/Y3dfdnNdyqxXm3wGzX51IlKwnFrlNyxc3Bu+/B0F0zsUgMptSfmZOIOvFnfBMznVUVp+XIXYgPGUSRgJX5Q1+dLKbdDnXwZle2BWWt0IhIhhLcNVuonltjy9RwEoJCdO2YNaW+/G12mU28DmB3+cc2+EzqC6me9kzU9xbDsSTf9E5R+ZlVYnAoED1aW4gBqqzR9ZppP8OcqSHwuBzILw6rNf0yHn30ryqyJEUUuHe5cCNIuTohPiFgqFx1LdtLVZo11UMYTiG5dAsQbsyy+QN+MkVP5Hs+YxTwl6bwUoqTgOXYJFGCAckqdlazdbmEali6iu5nZTDNo39/wLX/7dTdHrQiTE/Th1fTw1xL7SRSQ/5Oi9CkChXVExkL5M/ImEvARfr0I/CkCrNIW4Czv6olR77TpTcpVW7k/x+ONQokGy5/cd8nYxNdTcaiqPeU7UuxVAR+GWTt2HEi1zoASO6/DqXVf09UPGRVQ7a6npfJdU/BQWfR7Fl39b03H8J3yWCgvH0YIZn/gvih4SsALoXA4lZadBCahz6Xbr7J2/96IRoyDXkLHX9abO7esAIhI9lhL0IL78Azq89L6Kz2E85g80dMAiTPEl9JbVW+lYAXTHu3RhIcXfPweDYJX4uu3bPTgvngWh3yvmUGHBHJo/42tLeYqUjaOEqEflVwOpmjsBq1E0mwrD1+aLCS+nAWcFkA5RtX99fOUpFE9Mwcv+k3RkwfJPfglrqHDAAssVIhYzaFUTju6S0WDkWdwHBVfBzf3MpcUKIDM+7aGlFUdhgct4PKhz64O4seUlDHTeTMMG3oYm8EYzWe5C077A5x60iE7o4q/bg6BWtGyUQdIaLOp5SzfxdJSHFYCVUlGzBl/jEAspz0W0o3HVeTPVR2QYd6AJfActrPrASja70EamjqBEK4ytyL27+Ov18A3yWUuhvnNowbQ1eommtzSsAOyWj1r80hw/E4Nox4PFaLQMwnZZORQPe9YFVuzJJ7G45T5Tp/JkSzhSeTwl2tRe/sHZSH0JV4fFCii5wgG3WO7S+CKwfomyAnCiTGKxAlrXNJLa6Eg0tY9CRYRCkP2dYJ2Rh6AVSGsplrIupf4Fy7IexpGRWbfASPRyWO+dBV+9VouqA0cl3QPFew+a+R93k5ofLSLACsAiYKbIkwph/e6YKkOzWY5AnBF4affGbwRe3J2gHApM8VFEgtTR2njRxXu44ifeJ0O+R/3D79H1sW8UieMuORPywQlIW3VzoNDoAPx8elfUVKV8HkruKQoVPkC106H02DmFgE+F6pT4AeUTi/WlLzcNxLbZgTCaEcbLPRBWZ4tgOquJRFEjBhybMG/dSMce3JR1770XEEyauj21tB2JFsHRUAMjoRTUeMAgd5JW6/Ply+D9NBWEnqFjDnldCwzcyazvXFkB+F4EARXgwvLvYcwdrZoEfmJvKIbdoRgGYf0EFAMUG9FAtHjUdQD8NuHahHAoOFoPetWqUYuQVuGHAUqxEmEfwJTbSlhz2oAwdowAI8AIMAKMACPACDACjAAjwAgwAowAI8AIMAKMACPACDACjAAjwAgwAowAI8AIMAKMACPACDACjAAjwAgwAowAI8AIMAKMACPACDACjAAjwAgwAowAI8AIMAKMACPACDACjAAjwAgwAowAI8AIMAKMACPACDACjAAjwAgwAowAI8AIMAKMACPACDACjAAjwAgwAowAI8AI5BkC/x82Npb/d6k7xgAAAABJRU5ErkJggg==",originalColor:"#006373",secondaryColor:"#000000",borderRadius:3};const SAAECapivariTheme={logoSmallUrl:"data:image/png;base64,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dxV1tU+gjYWYptzwr3fOSgbmPOz69jDOTaqo6D+ebbif6cPRjPaJR740qkMdrHbd2DgmulMRqFNZ5TiNvsG1Nzv/rcJ/oQzHTYSBXSHAiMguJ6Z2tme66cWKJ+ur2a2i2qVJYo5nidkuKx5EOFsvPvoq3ILw26l8b2tnV8e2lbcutwa+UyJ94pHFo9KOPxayrEZYT4w8h7MHo6mYLvHjdyppOwI+uwsUO5CNwIjnKgQKPWKBtk0ELjvpscZcRSQ3bWzkJLuph+kOPil8Iog7LE6ZINqPdXYHdE10a32QgCdNCU83PvmZB/fxezYTm9FwpO4OHY6c389Tf+Avfzi2vSU1gVnyaG3SqMgup9pYjyxkrYnsKbcxjqtm66llFBqMqkxUFuLMRV0QUztHODYiDVrYUbETv4N9ftS6o32vu9seHf5+MX/cVwuWLvFZi60o5aTbp//ie7sGRTggfd2jfzVR+Z1TA6Mq8QAaBdFOg+Yw6rp2pGM/RmQNlx69goAmV5ssSdIpVjjz2UXfoNE4rUiEHRD6TsIj7WHnRnNQWrTr2Y8VPohFtg4n+L8bfvqVsamWzomuayqYxoyH0ycgGCbbQ9fBK2ZCNvsQo6pbYCIuuQAkixHM73Q5UZiEuZNRiIHaU3vdEAHpxlo5QemAcZ2mhNq1sxBW/VxhORECoN862TDXma4i1OjQL3FDx4kVGTdebDLpXUH12LnJlbVX2vVuSScYAetMVNJR4h+IDvitTpUbL+FgwC4WRg+lhBdEHQczmZWN81Dna0eiOn+4qsP7STwMCnAWzq1PqI4Sz+LkFbMZMBMz7ftiprKyOQ1jD+vS5vA2UHIXBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBA4mQj8X33C1WZd1V9aAAAAAElFTkSuQmCC",originalColor:"#2A629B",secondaryColor:"#4AA366",borderRadius:3};const SaoMartinhoTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#0F2D56",secondaryColor:"#3D8937",borderRadius:3};const VallourecTheme={logoSmallUrl:"data:image/png;base64,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dgh1xGwQ+IndT9zwg2O/v5hjlGzvj0CaAPpjsihrrrvwyN8g70/TW3vlRMCsDxNCH9JTtqmILvnVnm9fli97rdgSLp0IpAlg6YxlNtbe5XQs1b/RLUC1ffdJwFf86pN/bFdd3+QQtbWy4r3XXXLkVUsoVMmVEIE0ASyhS+H6iw+9u9XNThj0Pr+9EwB/y3cFeO/P1Z73/zxYhCAD/+buipX2gSNrTy9LKgJpAlhSw5llN/zo2A9jVb8Y6dvzDUDeGtg9vtD8DjuAsGXQ7YPxcj7A5IAL5M03/d8/bVhiYUruhAikCWCJXQp8jx5f1DlSW3shk1lP+PXUn22kbWIgHbb92iG08vyme++60xlLLETJnSgCaQKIgrFUyBsuO+4C5LJ9OjBs4801+6YgKP9mH5Z42w04xnTUfvLl579q81KJS/KjPwJpAuiPyZKoWZGN/TOW923czuvbfkxy0mHHz5NAW0NEMwT5L/dcvutZSyIYyYmBEUg/Cz4wNIu74c6bvnrbut2ftQuS/Cna4tMjuyWQa7Xf/LJbANSFW4FXXvmjIy4Va8KlGYG0A1ia42perRxbfQoS/paBLnIHwGI7geotQTxDuOTGH5+Av0uYylKPQJoAlvAIX/3DI27Hd3fXT9XFVruVvvAz1aAtUv40ASzSgZus2Q/d7SlnYVf/08nyY8L46vWXHf+1SfMnxkUdgTQBLOrhG278+efvP561WkcP5yQHvvDTztIXfiYXrCXBlSaAJTGMEztx42UnnMeVfWIutObFx66/9MRLhvIlhiUTgTQBLJmhHOJIOzsSk0BnIFeeb1/Raqcv/AwM0NJsSBPA0hzXPq82XHrij1H5/r6GUIHnBO+59rLjfzmoPdUvzQikCWBpjmuzV+3l+PPdecNPeaNuWZ6+8NMctSVdmyaAJT28vc5tuPSYm3Ab8MbeWkwJeX7GjT844eZ6fTpf+hFIE8DSH+MeD1ftdv+34m8JXV1W5vmGe2c7n1meJ2KHikCaAHao4c6yq88/eEvRapVv9eGDv6+//PL0hZ8d7DIo3U0TQBmKHYfY8OPjP459/4U4rtpz5W7v23E8T57WIzBWr0jnO0gE2vkR+Xj3QRdffOj2HcTj5GaKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIpAikCKQIrALETg/wMyQJ8pIYtP9gAAAABJRU5ErkJggg==",originalColor:"#469CDA",secondaryColor:"#469CDA",borderRadius:3};const LexmarkTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAANaklEQVR4Ae3Uv64kRxmG8dmDCLBZrYQQBBCYgAh8AWgdIjkj4Ba4B+fmggjILDlEQkI4cmSRWCJCQk5WyLIl+7C968979uyZmf5T1fVV9e8k35zp6uqe5633OZ38IYAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggMAqAo9W3bX1pr/9+nbrFu5HYDGBb24+Pf3zF++cvrl5vPjePW744OPd+3izx+/yDASaE8he/kaACKAReI/dkYDyn4VNAGfRuDAEAeW/GCMBXMTjYtcElP9qfARwFZEFXRJQ/lmxEcAsTBZ1RUD5Z8dFALNRWdgFAeVfFBMBLMJlcWoCyr84HgJYjMwNKQko/6pYCGAVNjelIqD8q+MggNXo3JiCgPJvioEANuFzc1MCyr8ZPwFsRmiDJgSUvwh2AiiC0Sa7ElD+YrgJoBhKG+1CQPmLYiaAojhtVpWA8hfHSwDFkdqwCgHlr4KVAKpgtWlRAspfFOfdzQjgLg2f8xFQ/qqZEEBVvDbfRED5N+GbczMBzKFkzf4ElH8X5gSwC2YPWURA+Rfh2rKYALbQc295AspfnumFHQngAhyXdiag/DsDP50IYHfkHvggAeV/EEvtLwmgNmH7Xyeg/NcZVVpBAJXA2nYmAeWfCarOMgKow9Wucwgo/xxKVdcQQFW8Nj9LQPnPotnzAgHsSduzXhJQ/jQngQDSRHGQF1H+VEETQKo4Bn8Z5U8XMAGki2TQF1L+lMESQMpYBnsp5U8bKAGkjWaQF1P+1EESQOp4On855U8fIAGkj6jTF1T+LoJrI4BHj551QcdLriOg/Ou4NbiriQB+86snn59IoEHcOzxS+XeAXO4RTQTw5Mc/fJcEyoWYZiflTxPF3BdpIoDp5UhgbkSdrFP+ToJ6/TWbCWB6DRJ4PYxu/1P+bqNrKoCJGgl0e3Zevrjydx1gcwFM9Eig0zOk/J0G9+q1Uwhgeh0SeBVKF5+Uv4uYrr1kGgFML0oC1+JKcl35kwSx/TVSCWD6OSSwPdSqOyh/Vbx7b55OABMAEtj7GMx8nvLPBNXPspQCmPCRQLJDpPzJAinzOmkFMP08EigT8uZdlH8zwqwbpBbABI0EGh8d5W8cQN3HpxfA9PNJoO4hOLu78p9FM8qFLgQwwSaBnY+c8u8MvM3juhHAhIcEdjokyr8T6PaP6UoAEy4SqHxolL8y4FzbdyeACR8JVDpEyl8JbN5tuxTAhJMECh8q5S8MtI/tuhXAhJcECh0y5S8Esr9tuhbAhJsENh465d8IsO/buxfAhJ8EVh7CR6e/nz755X9O39w8XrmD2zonMIQApgxIYOFJnMp/e/P+6cnbfzxNn/0dksAwApjSI4GZZzjK/95nz05/+uuz00/eep8EZrIbbNlQApiyIYErJ/Ru+WMpCQSJw83hBDAlSAJnzvFD5Y+lJBAkDjWHFMCUIAncO8eXyh9LSSBIHGYOK4ApQRL47hzPKX8ceRIIEoeYQwtgSvDwElhS/jjyJBAkhp/DC2BK8LASWFP+OPIkECSGnocQwJTg4SSwpfxx5EkgSAw7DyOAKcHDSKBE+ePIk0CQGHIeSgBTgsNLoGT548iTQJAYbh5OAFOCw0qgRvnjyJNAkBhqHlIAU4LDSaBm+ePIk0CQGGYeVgBTgsNIYI/yx5EngSAxxDy0AKYEu5fAnuWPI08CQaL7eXgBTAl2K4EW5Y8jTwJBoutJAN/F150EWpY/jjwJBIluJwHcia4bCWQof3AjgSDR5SSAe7Gll0Cm8gc7EggS3U0CeCCytBLIWP7gRwJBoqtJAGfiSieBzOUPhiQQJLqZBHAhqjQS6KH8wZEEgkQXkwCuxNRcAj2VP1iSQJBIPwlgRkTNJNBj+YMnCQSJ1JMAZsazuwR6Ln8wJYEgkXYSwIJodpPACOUPriQQJFJOAlgYS3UJjFT+YEsCQSLdJIAVkVSTwIjlD74kECRSTQJYGUdxCYxc/mBMAkEizSSADVEUk8ARyh+cSSBIpJgEsDGGzRI4UvmDNQkEieaTAApEsFoCRyx/8CaBINF0EkAh/IslcOTyB3MSCBLNJgEURD9bAsr/ijoJvGLR4BMBFIZ+VQLK/yZxEniTyU7fEEAF0GcloPznaZPAeTYVrxBAJbhvSED5r5MmgeuMCq8ggMJA7273vQRuTh+fbm/eP7332bO7131+gAAJPACl3lcEUI/ti50nCTz97c/efvr0p5WfNND2nz3/Lf/6wf9OXz76dKBflfKnEMAOsdyebn93enb66Ont08c7PK7vR3zwh8enL7766PTt7e9P/755hwTqxkkAdfl+vzsJfI/i/Ico/yTMF3+3j0ngPK4SVwigBMWZe5DABVBvlD/WkkCQqDEJoAbVC3uSwANwzpY/1pJAkCg9CaA00Rn7kcAdSFfLH2tJIEiUnARQkuaCvUjgOazZ5Q+wJBAkSk0CKEVyxT6HlsDi8gdgEggSJSYBlKC4YY9DSmB1+QM0CQSJrZMAthIscP+hJLC5/AGcBILElkkAW+gVvPcQEihW/gBPAkFi7SSAteQq3De0BIqXPwIggSCxZhLAGmoV7xlSAtXKH0GQQJBYOglgKbEd1g8lgerlj0BIIEgsmQSwhNaOa4eQwG7lj2BIIEjMnQQwl1SDdV1LYPfyR0AkECTmTAKYQ6nhmi4l0Kz8ERQJBIlrkwCuEUpwvSsJNC9/BEYCQeLSJIBLdBJd60ICacofwZFAkDg3CeAcmYTfp5ZAuvJHgCQQJB6aBPAQlcTfpZRA2vJHkCQQJO5PArhPpIP/U0kgffkjUBIIEncnAdyl0dHnFBLopvwRLAkEiZgEECQ6nE0l0F35I2ASCBLTJIC7NDr83EQC3ZY/AiaBIEEAQaLjuasEui9/BE0CEwkCiPPQ+dxFAsOUP8ImAQKIszDArCqB4cofgR9bAgQQ52CQWUUCw5Y/Qj+uBAggzsBAs6gEhi9/BH9MCRBA5D/YLCKBw5Q/wj+eBAggsh9wbpLA4cofB+BYEiCAyH3QuUoChy1/HILjSIAAIvOB5yIJHL78cRCOIQECiLwHn7MkoPz3TsH4EiCAe5GP/O9FCSj/mejHlgABnIl91K8flIDyX4l7XAkQwJXoR7z8mgSUf2bEY0qAAGbGP9qySQJf//f0l9MXX310ev55tN9X5/eMJwECqHNS0u/67dc3zz7581s/V/6lUY0lAQJYmv8A66fy/+PDH33+7ZeP3h3g5zT4CeNIgAAaHJ+Wj1T+UvTHkAABlDoPHeyj/KVD6l8CBFD6TCTdT/lrBdO3BAig1rlItK/y1w6jXwkQQO2z0Xh/5d8rgD4lQAB7nY8Gz1H+vaH3JwEC2PuM7PQ85d8J9BuP6UsCBPBGgP1/ofytM+xHAgTQ+qwUfr7yFwa6ers+JEAAqwPOd6PyZ8skvwQIINuZWfk+yr8SXPXbckuAAKofgPoPUP76jLc9Ia8ECGBbss3vVv7mEcx8gZwSIICZ8WVcpvwZU7n0TvkkQACX8kp8TfkTh3Px1XJJgAAuhpXzovLnzGX+W+WRAAHMTy3FSuVPEUOBl8ghAQIoEOVeWyj/XqT3ek57CRDAXllvfI7ybwSY9va2EiCAtAfj1Ysp/ysWY376TgINfhwBNIC+5JHKv4RWz2ufS6DBHwE0gD73kco/l5R1awkQwFpyle9T/sqAbf+CAAEkPAjKnzCUQV+JAJIFq/zJAhn8dQggUcDKnyiMg7wKASQJWvmTBHGw1yCABIErf4IQDvoKBNA4eOVvHMDBH08ADQ+A8jeE79EvCBBAo4Og/I3Ae+xrBAjgNRz7/KP8+3D2lOsECOA6o6IrlL8oTpttJEAAGwEuuV35l9Cydg8CBLAH5efPUP6dQHvMIgIEsAjXusXKv46bu+oTIIDKjJW/MmDbbyJAAJvwXb5Z+S/zcbU9AQKolIHyVwJr26IECKAozpebKX8FqLasQoAACmNV/sJAbVeVAAEUxKv8BWHaahcCBFAIs/IXAmmbXQkQQAHcyl8Aoi2aECCAjdiVfyNAtzclQAAb8Cv/BnhuTUGAAFbGoPwrwbktFQECWBGH8q+A5paUBAhgYSzKvxCY5akJEMCCeJR/ASxLuyBAADNjUv6ZoCzrigABzIhL+WdAsqRLAgRwJTblvwLI5a4JEMCF+JT/AhyXhiBAAGdiVP4zYHw9FAECeCBO5X8Aiq+GJEAA92JV/ntA/Ds0AQK4E6/y34HhIwIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggAACCCCAAAIIIIAAAggggMB5Av8HpcOz8RjDDy8AAAAASUVORK5CYII=",originalColor:"#008A44",secondaryColor:"#006446",borderRadius:3};const ElementalMachinesTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAIzklEQVR4Ae3csW4cRRgH8FkLCwOWCG2gThEKUyDRBIknwFA6SIhXoIrEA4BSpaWMkAgtyRNEwgVINCnMG5CUSSQ7MQrysmOiFFFm9jTxrnfmfq4cz83sN79v5+/L+XQh+CJAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECAwCHQlCleu9u8dhuPdEPrdvg+XhzUuDt9vl6xlztkL3PvlnaK+llbyuvfDVPXu7B31pXvKzVtGvd3hUOP9odEHoevubIet2/u3uoe5ul819sarfpj62Wff9FuPnh1/e3jy5Nog+27qcX6+HgLuh/Ps8+kv3EvDObwU+v7Lw/Dk8UdfPb1+YXPrxt2b3fGqlW2s+sCdr5+8/+ifp7/1JyffO/yrqrX7OPfDsnobz2Q8m/GMxt6sWt1KARAX7J6FP/rQf7zqwh7XroD7Ybm9PT2j/4bfVw2B0QCIT/OGw//rsPDKqbJcHpW9roD74XUFZ5jf9x/EMxt7NXa10QCI/+f3m3+McX3G3Q919Dqe2dirsWqzARBf3Q0nJ9fGFjG+HgLuh8r6PJzd055lys4GQPxTnxf8MnprNuR+qKvh8ez+/+f6dN3ZAIh/509PNbJ+Au6H6nre95/nas4GwPM3+eTmG1sjAfdDfc0engV8mKs6GwDDxOEdfr4IvBBwP7ygqOabbM9GAsDbe6tp8yyFuh9mYT7Ti+R7NhIAZ1qJxQgQWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE4BATCntmsRWJiAAFhYQ5RDYE6B7IeCTvXpp3Nu0LUIEEgLeAaQtjFCoHkBAdB8i22QQFpAAKRtjBBoXkAANN9iGySQFhAAaRsjBJoXEADNt9gGCaQFBEDaxgiB5gUEQPMttkECaQEBkLYxQqB5AQHQfIttkEBaQACkbYwQaF5AADTfYhskkBYQAGkbIwSaFxAAzbfYBgmkBQRA2sYIgeYFBEDzLbZBAmkBAZC2MUKgeQEB0HyLbZBAWkAApG2MEGheQAA032IbJJAWEABpGyMEmhfIfirwzt5R37xAgxv0ac4NNnWiLXkGMBGsZQnUICAAauiSGglMJCAAJoK1LIEaBARADV1SI4GJBATARLCWJVCDgACooUtqJDCRgACYCNayBGoQEAA1dEmNBCYSEAATwVqWQA0CAqCGLqmRwEQCAmAiWMsSqEFAANTQJTUSmEhAAEwEa1kCNQgIgBq6pEYCEwkIgIlgLUugBgEBUEOX1EhgIgEBMBGsZQnUICAAauiSGglMJCAAJoK1LIEaBARADV1SI4GJBATARLCWJVCDQPZTgX26bA0tVCOBcgHPAMrtzCRQvYAAqL6FNkCgXEAAlNuZSaB6AQFQfQttgEC5gAAotzOTQPUCAqD6FtoAgXIBAVBuZyaB6gUEQPUttAEC5QICoNzOTALVCwiA6ltoAwTKBQRAuZ2ZBKoXEADVt9AGCJQLCIByOzMJVC8gAKpvoQ0QKBcQAOV2ZhKoXkAAVN9CGyBQLiAAyu3MJFC9gACovoU2QKBcQACU25lJoHoBAVB9C22AQLmAACi3M5NA9QLZTwXe2Tvqq9/hGm7ApzmvYdMLt+wZQCGcaQRaEBAALXTRHggUCgiAQjjTCLQgIABa6KI9ECgUEACFcKYRaEFAALTQRXsgUCggAArhTCPQgoAAaKGL9kCgUEAAFMKZRqAFAQHQQhftgUChwEgAdIeF65pGgMAiBPJneCQAwv1F7EERBAiUCmTPcDYAui78VXpV8wgQOH+BLoSDXBXZAAihu52bbIwAgYULdN2dXIXZANgOW7eHBHmcW8AYAQLLFIhnN57hXHXZANi/1T0MGxvXcwsYI0BgoQLD2T09w5nysgEQ513Y3LrRhe7PzBqGCBBYmEA8s/HsjpU1GgB3b3bH/Wb4Yljw77HFjBMgcP4C8azGMxvP7lg1owEQF7j309txwU88ExjjNE7gfAXiGY1nNZ7ZVSpZKQDiQnHBC2++9Wm3sfGdFwZXofUYAvMJxDMZz2Y8o6se/lhd9kNBXy7/+VOKH65c7X88DMe7IfS7fR8uD4+7OHy//fLj/ZvAeQoM72N5cJ7Xn/bap+/wuz8c/IMw/Kkvvtq///Pwor0vAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAgQIECBAgAABAiUC/wHyHAACWlb5OQAAAABJRU5ErkJggg==",originalColor:"#2F59F5",secondaryColor:"#2F59F5",borderRadius:3};const EuEntregoTheme={logoSmallUrl:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQAAAAEACAYAAABccqhmAAABdWlDQ1BrQ0dDb2xvclNwYWNlRGlzcGxheVAzAAAokXWQvUvDUBTFT6tS0DqIDh0cMolD1NIKdnFoKxRFMFQFq1OafgltfCQpUnETVyn4H1jBWXCwiFRwcXAQRAcR3Zw6KbhoeN6XVNoi3sfl/Ticc7lcwBtQGSv2AijplpFMxKS11Lrke4OHnlOqZrKooiwK/v276/PR9d5PiFlNu3YQ2U9cl84ul3aeAlN//V3Vn8maGv3f1EGNGRbgkYmVbYsJ3iUeMWgp4qrgvMvHgtMunzuelWSc+JZY0gpqhrhJLKc79HwHl4plrbWD2N6f1VeXxRzqUcxhEyYYilBRgQQF4X/8044/ji1yV2BQLo8CLMpESRETssTz0KFhEjJxCEHqkLhz634PrfvJbW3vFZhtcM4v2tpCAzidoZPV29p4BBgaAG7qTDVUR+qh9uZywPsJMJgChu8os2HmwiF3e38M6Hvh/GMM8B0CdpXzryPO7RqFn4Er/QcXKWq8UwZBywAAADhlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAAqACAAQAAAABAAABAKADAAQAAAABAAABAAAAAABEIjhzAAAj1UlEQVR4Ae1de3BdR3nf75x7r15+SH7p4diJE7+FJSeUMnVIJ23JdAqEhlJeQ2EGZgot00JbHhkYWsJAaYeWNvzDtIQSylACDdAw0GEKbYGGmBaaRpIj2Y7t2LFsyZJf8kOSde855+tvrywiHEu+und3z+N+Z0Y69557zrff99v9/c7unt09SskmCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCgoAgIAgIAoKAICAICAKCgCAgCAgCMSJAMaYtSRtAgJlp/eho06ULy5qi6Eo+ynm+Coo+h36Oc+RzEPjKJ19Fns9RmMvjM4f47oc4j0iRF+gjpZBD5fshURQofKZcLqQAx3Ihzi4EXhCFXi4Ili9XUyc7O6eJiA24LyZiRkAEIIYMWHPg9PLJktcaqqDN47CV2WuNFLd5iltZEf64jZhXwrVmRaoJTGvWn0G5Jnwvfy4f099V+c99FKSuINEp+DSt9/BrGj5NzR6jaXwvf2aii6R4AgXtfKRoArox4RFNhIE/4VM00UCNE3+8a+WFB6A87oOQFEUADJSB1qPnW6cvBu1EpXYU8nZSUTtH2JNqB5nxp4+pNZrYignEZt9AstkxoWsTrC4BrwnFfE4RjSG4ceA0RsobhzKMecxjkcqN5xtpbMe2NaefBNjZASC+SEQAFsH+dcz+t58+16XoysYwVBtxV9vAkdqIgroRpO7EnQ3kVu0ovIVFzMhPphEoNz/4PNov48B/DPJxQnlqmJiGlaJhNIOGG73G4Us7Vpw1nXTW7NW1AHQPcuFwcGaT8oLNIPEtmtyKoo1oVm9AGdP7Lrlbp7nI0xTy8QREAuKghpVHw/ozOkCOoqZx5N6e9uOPEoVpjrBW3zMvAJrkh8LRWynyNisv2hIxg+y0BXfxzcwgvFTHay1DKb6eSqjFHUOT4zDE/ohHfESxd5j96MjGxs5nD2+hmRQHV5HrmRGA5fsvri6VLncjI7sjjrpRFdyK4LYwqutQe68iNOQkQWAOAXRKQhxOojwd9kgdxuEhNDOGvKhhaLp39Ym509K+T50AtB05t/LKVKkbT6i6UW1/Ee7g3WgLgvjckfbMEP9TggDRJZS9/RCIISKvLAyQi6HpnvZjaXs8mlgB0M+3G/vP4A4e3qFU+GLc0XdpsqPaflNKiom4WXcI6D4HdQDiAGGgAYjDU/mGsO/Stq4zSYUiEQKge9u/OXRqOwcKRGcQXum/3ai6L08qcOKXIFApAiDZSTxBegp9T33Y93nkPzW9a93RJNQWYhGAFYMXVk0Hl18DAGfJzqoXn/WgFtkEgTpBgC5CDPoR7FPohOxrVk2PXehpPe86+JzrBHV606Xp+7D7XBxpS5qCQDIQ4BVoKtwFX+5CTRfDJq/om/HnXfsWU+843+46UElPEEg2AvFwQgQg2aVCvKsbBOpEAHTvPto+us0vmyAgCMwhAE6UuTH33dHeeQ2gcf9pjMTjZY7ik2QEgXQgAE6UueHYW+cCwGEo7X/HmSzJpQOBOLjhXABw9xcBSEd5FC9dIxADN2IQACUC4LpgSXrpQIDdc8O5AGA6pghAOoqjeOkYgTi44VQAmodOd6IJsM4xrpKcIJAOBMCNMkcceutUAMIgkLu/w8yVpNKHgGuOOBUAPOcUAUhfmRSPHSLgmiNOBQDV/x6HWEpSgkD6EHDMEbcCgIU70pcj4rEg4BIBtxxxJgB3M+eYeItLKCUtQSBtCGiOaK648tvZegCFgZHtHPF+V4FJOoJAWhEgj3YUe7oOuPDfWQ0Ac5+l+u8iRyWN9CPgkCsOBYB2pj9nJAJBwAEC7I4r7gSAIhEAB2VHksgAAg654k4A5AlABkqmhOAIAWc3SycCoFf9xdsftzoCT5IRBFKNAOYEbNOccRGEk6cADX2nt0aqeNBFQJKGIJAFBDxV2Daze+0ztmNxUgNgr+SsSmMbMLEvCLhAwBVnnAiAPAJ0UWQkjUwh4OhRoCsB2JGpzJFgBAHbCLBywhknAoB1gDfbxkvsCwJZQsAVZ5wIAN73JwKQpdIpsThAwA1nrAuAfp03+gBWO0BMkhAEsoMAOFPmjuWIrAvA5ckrcve3nIliPpsIuOCOdQGgyBMByGb5lKgsI+CCO9YFQFEkAmC5oIj5jCLggDv2BYDddGZktAhIWPWMgAPuWBcAJpIaQD0XYom9agRccMe6ABCr26pGQC4UBOoYARfcsSoA7f2nWjALsLOO81BCFwSqRkBzR3OoagMVXGhVAM57JHf/CjJBThEEFkLANoesCoBSoQjAQjkrxwWBihCwy6FcRT5UeRJF6mYsbpD+jdQVBLEXiyc8rpR/gNk7mC/QqWZPXf6VbWumvn/wTPNUpJaVitxBFG2D8G1H3Hfhmj0YBdmYfgAkgrgQ0ByymbZVAYhIbQAB0rmB9KToW8TeFzc0t3/v8BaamR9ICV+m8Pfo7MFL2Om/Ufw9NXtIqc2HuGF4cuwepuitaM/dK2Iwh4zsK0WgzKFKT67iPKsCgF7MjenjPwWK1EMFz//o5K72MY3p4SqALV83Kxrfxudvt+wbay9G4UcgAr+LyVFWca/SXbksgQiAQxtsumW1DwDkt+q8aWCI6OteIbez1Nv1rjnym0pD29N2tX2djim7YifbCIBDG21GaPVORMwb0lADACGP++S/cbqn/cc2wda2Z3auO4TdbzftG9sTRuEjeBus1Qy2HY/Yt4uA5pDNFKzVAF7MnMdIpg6bzpuxTU8UlPcSF+Sf7+/0rva9Ol2l6In5x+WzIDAfAc0hzaX5x0x+tiYAgwdOrcfrwK3ZNwECevUf3prv/NXLvR3jJuwt1YZOV6ev/VjqtXJ+nSAADpW5ZClcewQt2q261IoHXsD4p8Xd698+2E3FWm3Vcr1OX/uh/anFjlybYQQscsmaANh+fFFLdus7Lt6++vFabJi+VvsjNQHTqGbDnk0uWRMAFdntvaw+a+mJLfmu36v+entXzvolfQL2EE6pZYtcsiYATMlrAuje/gbyfivuav9CxVD7pf3Tfi50jhyvPwRscsmaAKA6a/XxRTXFQD/qi6vDr1J/tX++57+p0vPlvOwjYJNL1gSAFXUlKWv04BvXj/qqjV8/ItT+Vnu9XJctBGxyyZoAkOL25GQDBZTPfTA5/tzYk1l/MSxZtrpHwCaXrI0ExAjAdYnJOYztvzoCLzEu3cgR7W++f+QhzB34/Rudm5jfCSPXMWPSY/VN31f/pfz8yVfuWDP+KFGYGB8XcUS/kvtf959Zp8LS+jBUv4ze99/E6XdhPAtq4fFtNrlkJbDWo+dbJy9MnY8PsnkpY1ZfwcvdYnps/7wUrH2cnUAUHEvFLEJS/644/4HS7nU/mw1pDRiHhvN947crKn0SefByh8m+IKmWlc1tE5vaJl7wQ40HrDQBpi8Gian+6ym9aSS/zlftt/a/xjy2fDmFHtEflXrX35M18mvgdEw6Nh0jhm3HVpOxxSkrAkBUSo4AYD6/ZQZYNa/XI7CaQE3GQX7l3TfT2/Xpmsyk4GIdo441LhGwxSkrAhApSoYAoPq/oaX9eykoXwu6WPZ/dkWiBc+J6weP1Htndnfo9Q7qYtOx6pjjCNYWp6wIADoWktIBuPfalXziyLxa0rzq/95abFi5Fm3+erjzX4tdOWbd3+F4s8UpKwKA5a8SUQMAaFjDL/1b4uLQvf3o8Es/slVGoGOffeJRpYGlX2aLU3YEIFKJEAC9gOfSoU7iFYmL4/EsdvhVmvNXY3d6c2FLnLIiAETJEAC9em+lmZrk85IWB9rBjyUZLxe+6bEOLtKZS8MWp6wIAKoriegD0Et3zwGY5n3S4vApG02rWspEeaBTLQaWeK0tTlkRALQQ1y4xPiuntzDrpbpTvyUuDozwSz2otQbgGANbnLIiABg42VYrviauv3vn2mkTduK2kbQ4NvGas3FjEnf6rjGwxSkrAqCYVsadQTr9HwydbkqCH7X6oN88VKsNk9cfpTOrTdpLoy3nGFjilHEBWDs4viwpL76YJFqexsJ1rc/6tWPXHov1OybLxJp+EhJ3jgHnZrllNnjjAnA58FvNuli9Nf2uvuqvTs6VSYtDz5RLDjrxeBIHBja4ZVwAQiolov2vi8XsizrjKSAmU01aHFenyZoMMXW24sDABreMC4DHUWJqAPotvakrWddzmMId1zsc47G7ytNkY3QgzqSvxn6Xax9scMu4ALDyEiMAWEjBeSbZKBTM6mU27FZtUy+QoefI1+tWXh/A/SIhNrhlXACiRNUA1B79iu40l9Or/u9JXAxYIKOhf+Q9ifPLskPlmGNaHMQGt4wLAIaJJqYPQK+kMzw5do/lMmHVfNl/xGE1kSqNR6w+1dB36lVVXp66y3SsOua4HLfBLeMCgNphYpoAOqOYorfGlWEm0k22/+xHKnqsHmoCOkYdK0qUbyJfq7Fhg1vmBUBxsgRA8b16bb1qAI/7Gu03xoDfG7cfi6cPEWB+MN9/8ntZ7BjUMenYdIxxkl/nAcqCcW4ZXxUYSxi36qVhE7Oh+lyMwo/An3clxqcKHSn7ndDq/wtC0O1iCp7ESsYZWxU4wKrACksyxL+Rx8ZH2BoPrNB/8ivotX5D/HDN94ACr5DbmaalwRuGxrdExWAIum9cpOcjI5/TgwCmBH+12Lv+jSY9Nt4EgHOJGrc+CxbnuBT8hUngbNua9VfIbxvnlNk3zi3jAoDqv3EnTWQSM7+2aWDsl0zYsm2jad/YHu2v7XTEfroQALeMT24zLgBoLxl30lQ2hRx+ZVn/qUQsVrJQTNq/MAofWeh3OV7HCLD5m6txAUCnQiJrALrY4K66cYajb3QPciGJxUj7pf3TfibRP/EpXgRscMu4AKC/NLECMJt9fOeh0sjfxZuV10991i++8/q/ytG6R8ACt8wLQIJrAHMFCG2ptxUGRj489z0Je+2P9isJvogPiUXAePPauADY6KiwkR0c8ccKfSc/H3dzQKev/dD+2IhTbGYHAXDLeO3auACgE9C4k7ayUN9xnymN/mdcHYM6XZ2+3Plt5XDG7FrgllEBQOcVpolSIieuLFwU+M6iin7q+hGhftSn00XXpLT5F84c+WU+AuBWmWPzj9X42agArB8dbUJXu/HRhTXGeMPLda97EAV7C/0jX9Mj8G54QQ0naPs6nSAMnpDe/hqArMdLwa0NJ8zODDUqAJcuLDPeSeEyn0HI1+rhtxjP/hnTE4i0PW1X29fpuIxL0soOAhcuXzLaxDZ6t24ZHO8olkqjmYAbr+RGe+ZbxN4X9Su6q3nLsF7MQ8/n11N6y7P60jKxJxMZmM0gCvl852T3OmNvvDIqAE0Hz6wPpmdOZA56iAFi2guw8EJI/4B+V59+XZd+Y49+aYd+/4Beglyv3ju7gGe4HR17ejmyPegUTVmfSOZyL1MB5ZoabpretsbYm5mMCkDj0MjNYZGPZQpxCUYQSBACfoFuubKz6zlTLhntA1ABXpkomyAgCNhDwDDHjAoA50gEwF7Wi2VBAKtDmOWYWQEIAhEAKaSCgEUE2DDHjAqAYk9Wr7GY+WJaEDDNMaMCwL7Z6olktyAgCPw8AqY5ZlQAVBhKE+Dn80u+CQJmETDMMaMCkJcagNnMFmuCwDUImOaYUQHgSPoArskv+SoIGEXANMeMCoCKpAlgNLfFmCBwLQKGOWZWAK51Vr4LAoJAohEwKwDkBYmOVpwTBNKOgGGOGRUA8jlMO77ivyCQZARMc8yoAJSw8H6SwRPfBIG0I2CaY0YFQPm+CEDaS5j4n2wEDHPMqABgLrz0ASS7+Ih3KUfANMeMCoCSJkDKi5e4n3gEDHPMqABQLidNgMSXIHEwzQiY5phZAQikEzDNhUt8Tz4CZJhjZgXAD6UPIPllSDxMMQJkmGNGBUDlCtIESHHhEtdTgIBhjhkVAC+IRABSUIbExfQiYJpjZgXAayylF1rxXBBIPgKeYY4ZFYCVy5ZPJR9C8VAQSC8CpjlmVACGb8ILNIjwTgzZBAFBwDgC4FaZYwYNGxUA0uRn1m/RkU0QEARMIwBulTlm0K75VXxJTeF1WKl+Sehi+OJ9gaPs0ddIRf+BRZCP5Th3LqBglRfyzRHxy4mj+5jVhsVsyG9LRAA3FrzC6rv4+45H/k+iHJ0pPw/ncD2qm7dHrF6lSL08jW+mXhISmluGN6OvBtO+FfpPHs8mAeiM56kPv3pX5+ceJVrwaceLmfMD+0bfBhH8GArkOsP5VXfmILiPkcrfP7N77TOLBa9fu86l0l+j7L16sfPS/BuRGi72rt9oMgYbAnAQmbDVpJPx26KfNJB37+XejvFKfWk+cLqrdKX0z0rxnZVeI+fNR4AwqMx7Z2l3x+fnH73R5/wAxDfizwJ387XbGyVu+XcIwEEIwHaTyRjtAyg7xuarKSYDXrItosfbV3fevRTy6zSmtq8dwXX3oGr64yWnWfcXUIDC/salkl/DVurpfBh3tTcopQUkYxuradMRGRcAtMmMt1NMB12pPRSkkUIu9/oTG6gq4PV1jYXl96Ljxtj73Cv1Pc3nAa+PF3u7vl5tDMXdXd9At8GfV3t9Uq+zwS3jAoA7XmYEQPl0/2T3uprIe2nHirPKU+9PaqFKml8g/9O7ejo+Uatfe3q6Pq5t1WonUddb4JZxAcBds6q7ZaKAhjO6vfWhF3V+2YRfxV1dX0JhPGLCVtZtMNHfPElU84jSHxCeE8BWlvACt4zfXI0LAAA37mQsmcj06ANYfsVc2vwlc7Yyaonocntbx1dMRbd+eccjkPJslMdZUIzfXM0LAKlJUxkYpx285PDfTKbvkfd9k/Yyaquv2v6W6+FxbBNhZKp68nq/pfKYBW4ZFwCO6EIqwb3GaWrMP3vNoZq++r5/sCYD9XAxU5/xMJkHjNuMyaANbhkXAAzcmIgJH6PJdvlrzpo0WO5MNNqkMOldMmx5pJ4z7olHM8ZtxmQQ3DpvOmkLAhAZd9J00JXYmwjPFCo5b0nnMF9c0vl1djIzG611leFjPIPJyIbh58ZvrsbBiTJSA7jMwWrT5QZPAkQAFgPV9w8v9nM1v6HnPDPzMmxwy7gAoLPLuEpVk/G1XhOW2LgAYIh0TWMKao0p2ddTuGZ1aFwAMB/jtmTHXbl3NrhlXgA4G00AtEeNCwDGFshYgAXKO0buDY50dRl/ZMeKbl0gydQd9ixwy7gAhBmpAXBkvgaAZ9LyJGAB2jHTfy/wU9WHlx8cWYNJQSuqNpCwC21wy7gA+CqfiSYAelzbTee/p+hHpm1mxR556jumYwmueJmp/mtsbHDLuAAsy4WZEAAm3mW6QK5aG+mZgcZHc5n20709mlqzRn3XdLoBq27TNuO0Z4NbxgXgdPe6y5mYism023Rm6zYungR8zbTdtNtDf8s/2Wj/kwrvSjs2z/tPwSy3nj9i4pNxAbjqVOprAVjcsPtuNr+oBKZ0PigLp84vunrSjrI1aedl81NK+WcrnLIiAKTYirNOM5BVw96Bse2m0yz1dv0flgt7yLTd1Noj9eliT9cB0/63DI53QGw3m7Yblz1bnLIiAFD003EBZTJd1ALuMGlvztbNLZ3vRjPpibnvdbsn+uHWXOeHbMRfCrNU/cezDEucsiIAWMN1zEamurYJ1X2VjTQPb6EZvVwYRql9wYb9NNhEX8iX165VrxjspqINf/EY99ds2I3Lpi1OWREAVL0yIQCI4zduOcqNNjJdT3st7l7/tlzeeykeOWKtgGzMolwMK5AeIyHpszkvtwdLfr3ZRsefTl+vzKyIX7eYL2n7zRancjaAwDPdcTa4lIYNHyuyybxs9OLYPTj3WxWdX8VJ092dP8Flb+ke5MKRYPSlGBDzi0zRS0CUbkyO0c+x0/eOBcx6RO3mOfR1HELV9QD2/4sy8dOZXZ0HIQJc83I/N8B5376RVyDNVTc4LVU/k8dWbqp2BEDRGNrPqQJ4IWeZw9fgN2sCMJfu1arw4/iu/8obBICanz53E/PMpoi9Lrx0pCvy1Hq8f2mtLuAYq7AKRFuN4a4rccEy/DXbeTmGfg8CX8JQ5ktojF5Ezk6Ax2ex2MYZ+HGWlDfOKjrpEZ1kPzeyWa09fr2qPXx1szH9Dvx1k5ajVDTGNpKyIgCY9GJFrWwAcCObuIPd1zUy8ge2qquLpa/vlvh9+OrfYqeWf9OCsW7odMtUxC1RlMtzoZjjyM9xGOQUXmPEqHvnowDHPHyPciqHnCKvFCi/iGfmJSLsKSx5lCt6flDKew3FlV7bzDG9ss4StsElnGv61LYj51Zevjx9r2m7cduzxSkrAuApHsMtIxsbq7azZ9Q7EczfJj2gq4KBgVhK/113W2r1O22LO0xdnnkHbv4N1w0+xQc1p2y4b6kTMG+lumIDgEpsokf5fZsPceYKVSWxp+mcNQdOL4+YP5Amnyv1Ff2a6RGAphU5K85WCpbp81AP7xqexCunZEs0AheLpfeg7Y8ZgNnbmlbmrNxUrfXL5PtPzqAqZn5ZrZjyFtXroxubO3foZ/gxuSDJLoJA69HzrZMXpo7ilNZFTkvnT6RmSr3rrTyOttIE0ChDWbJVC2DedHxq5GPpLEHZ93ry4vRHEWX2yD/LJSt3f10qrAkAupetOa0dj2NDTO9t7B/J0AyzOFA0n2ZD38ivw+ofmrecDIsod9ZuptYEAMNoR5IBn0EvmD2Mb/rC2sFx/cxdtgQgsOzQ6Fo8qv2CnfEPCQgQLoBLo7Y8sSYA6DjTz68zt+FZ+60XguAz+pl75oJLYUDFSX4YedGRQtcrdtkml6wJACYvZFIAdK6hwL2lMDD6YMU5KCdaQSA/MPIpjDh9pRXjCTJqk0vWBAC9C8cThKF5V5jfXegf+YR5w2KxEgQK/Sc/qSL+k0rOTf05FrlkTQA8zmYTYH5hQk3gg4W+0T+bf0w+20cAmP8lhsa+335KyUjBJpesCYAqZLcJML9YYBLMRwt9J7+66tDZzCw/PT++JH3GnIzmhv6Rh4D5/Unyy7ovFrlkrSNLz8keGBi9ggazPZGxjnzlCWCg0BF01ry+vORX5ZfJmRUikH96rJfC8BHUunZUeEk2TsPU6p6ezsYniZY6jaOi+K2RUztMzFgAoj42FMzb0D24t6F/9H16bn99RG0/ygdwA8Fd/z0qDP6n7sgPeDWHbJFf5541AdDGmeqjGaBjLW+YhRZx9FeHgtFD+b5Tb38dsz/3k+yXhoDGrjAw8uZPDIwMYYLPg1mc4VcJIrY5ZFUA0L44XkmQWTsHd6qNSoX/8E0UXvRWv6m8RFXWgrQUj8Yq3z/6Vo0dZmF+CZ192ywllQqztjlkVQAwVCazYwEqKT0ovFvx9+WBgZFT+b6Rv2/cN3r33RbeNVCJL0k+R6+72LBv9JXoTH0YWI1hsZJ/1Ngl2WdXvtnmkJUFQebA0Y8vsrA04Fw8Ve/L69PxO8KQ3/HEwOgkxGAvltf6IZbQ+lFTS0Pf+dtWXajadgovbOo/e1OkSnegpnQnevRfdvLiyC/8bOYoelJlex4Bm48AdSpWBQD9/8+pzCwN9Hym1PSJuQXX34M73D0h/l2+NK0woAhNJR5Al88+tPmeQcfBUfL56P07O088gF7gmtKL6WL9WPTSTLCJouAWjGTDmoZqO1x5kf4L+Ipew/D5TUj/PBbXfCpz6JpjJr9aewyonSzsG+vBenT9Jh2uL1t4kkLqOPgxgowaw/SDU1gm8BS+j2GV3bOoQUyEgT/hUzTRQI0Tt+9aeekHRIFpjHS7/Ojhc03TV9TKUAVtHoet6JxvjRS34g6FyTgRxuJTO/SsA/7ijTx8E+7obab9qEd75Od6i7vacXOws1kVgPb+Uy3nOFxwfTo7IdW51XKNgYt4BFPEMyQ8ii2/eAMv38AxpT9zCdNL8ZvCObi/EBVQCLDcGR5dMpX3+L2A32eP6c8y8Sm2QrWK/GVjvR2TthywKgDa6ULfyAjuCJ22AhC7gkBWEcALY0aLu7u6bMZn9SmAdhy9mIdtBiC2BYGsIuCCO9YFACOZjmQ1gyQuQcAmAi64Y10A0MaUGoDNUiK2s4uAA+7YFwD2RACyW0QlMpsIOOCOdQHAKnoiADYLidjOLAIuuGNdAJa1NIoAZLaISmA2EXDBHesCUB7mSuqsTaDEtiCQPQTojIsh4tYFYDZjpCMwewVUIrKKACknT8+cCABecn3IKlhiXBDIGAKuOONEADCsdH/G8kfCEQTsIuCIM64EYMguWmJdEMgYAqSccMaJAFCUdxJMxoqAhFPHCLjijBMBeHXvmiNoBshrteu4QEvoS0AAXClzZgmXVHuqEwF4lCjEtMOD1Top1wkC9YSA5ormjIuYnQjA1UCkGeAiRyWNLCDgjCvuBIBoMAs5IzEIAtYRcMgVdwIQuenVtJ45koAgYBsBh1xxJwCeCIDtciP2M4KAQ644E4A9uzoPl9ehy0geSRiCgBUEsFZjmStWjL/QqDMB0KvVYo2zZ17oghwRBASBOQQ0R2ys7Dxn/9q9MwEoJ8zsrHfz2kDluyCQCgQcc8StABBZW988FZkrTgoCN0KAyOl7NJwKABE9daP45XdBoJ4RAEf6XMbvVAD8XE4EwGXuSlqpQ8A1R5wKwNTOtaNYJXgsdbkiDgsCLhAAN8occZHW1TScCoBOE+OcpRbgMIMlqfQgEAc3nAsAskMEID1lUjx1i4BzbrgXAM9tJ4fb/JPUBIEaEIiBG84FgHzfucrVkCVyqSDgDIE4uIFmh9uN8arpwsDoBbxyernblCU1QSDBCBBdKvZ0rsRjQHbppfsawGyATgc7uARU0hIEqkSg3zX5tZ/OBaAMjgwIqrKMyGWZRSAmTsQjAJF0BGa2IEtg1SEQEydy1Xlb21XNXuO/TPEkKVa3w9LtGBzUiz6BltqsytWCQKoQmEC5103hfuz7mlXjYxdicN95J+D1YnyA2fvEvtGtEIGyIKAX5A6cdzsEYtX1zpdjgkBqEECfF0h2FGUZZEfN14v6vRz1XdnZ9VwSYkiEACwERNPgyMYw1GIAYYioB/tuVnQr9v5C18hxQSA2BEidU0z7Pf1SD+IBD9X6ppaGgXNbVl+MzacbJJxoAbie75sPccNzM+PbKQq7oar6b6cIw/WQkmO2EMCiHaNMvF+xNwSy7ycs4eUrb//krvbUzXNJnQAslKm3HOXGk1Ont1MY7CwLg1LbIQybMexgM/bNC10nxwWBBRCYBtGP4k6u39J7kNnfn/Nof2NLfsjFa7sX8Mn44cwIwGLINB843RUVS5vDyNtMFEEQ1Gb0N2xhotuwlwFJi4GX5d9InUe7/Ah6o0FyOoLycNjHZ2ooHJnaunokjufyruGuCwFYDNSWfWPtEQWbg9C7Df01GzlSG4jURtQiNqD3BnsRiMXwS+xvswPOxuHfMMbWDSMvhz1Fw6gRDudy/Gw+ajp8oacVAlDfW90LwI2yv/Xo+dapSzMQBd6oQr4qCmVx2IA7RwezaoeN1hvZkd8NIoB356HgjqNDeBx5MIr9ML4PY1jbsAeCY3zb8G3+uhOD3VQ0mGomTYkAGMjW7kEuPBuda0e5bA8VtUchtaOp0Y7HmTjG7bjrYK/WoS+iDcfakGSTgWQzZIJKCGYCWE0An9Noe4/hjj0G0R0n9sZwbNxTPMacH2tamRuf2NQ2kaHgYw1FBCAG+LVgHIvG24LIa/VU2BapqJWV1woCQCAYtQluAwlwTC2De82oZTRjJZUmZJbuzCz/lY/pzziOZorbfNTVa1bT8GUKH8t7/RluTKHTDJ1naqr8m6LJSBObrpKbaIJCb8LLhedD8ib8XH5ixZVgYqy3YxLnyxYDAm4LTgwB1kOS+gnIuamLzaGaKUQ5z+ewmFOB73OOfA4C9Gt5OfbJV2Ho57HnyMupKJwdS+H54GIUlEIOlY/Pek9RQLlcSAE+58KQ/ELgBfqChuKKFSumT2wgTXrZBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBAQBQUAQEAQEAUFAEBAEBAFBQBAQBGpD4P8BckMwMnzeXTMAAAAASUVORK5CYII=",originalColor:"#00B9CC",secondaryColor:"#00B9CC",borderRadius:3};const FitesaTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#005A60",secondaryColor:"#7BC5BF",borderRadius:3};const FuelicsTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#277822",secondaryColor:"#01060A",borderRadius:3};const HealthmetryxTheme={logoSmallUrl:"data:image/png;base64,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",originalColor:"#4EABE9",secondaryColor:"#4EABE9",borderRadius:3};const getSpecFromTenant=tenant=>{switch(tenant){case"brf-global.com":case"pilkington.com":case"jbs.com.br":case"unipac.com.br":case"cecil.com.br":case"tirolez.com.br":case"eldoradobrasil.com.br":case"entrevias.com.br":case"ibbx.tech":return Object(Theme["d"])(IBBXTheme,dist_namespaceObject);case"choiceiot.com":return Object(Theme["d"])(ChoiceIotTheme,dist_namespaceObject);case"sgpam.com.br":return Object(Theme["d"])(SGPAMTheme,dist_namespaceObject);case"embraer.com":return Object(Theme["d"])(EmbraerTheme,dist_namespaceObject);case"mwm.com.br":return Object(Theme["d"])(MWMTheme,dist_namespaceObject);case"sew.com.br":return Object(Theme["d"])(SEWTheme,dist_namespaceObject);case"confibra.com.br":return Object(Theme["d"])(ConfibraTheme,dist_namespaceObject);case"jmendes.com.br":return Object(Theme["d"])(JMendesTheme,dist_namespaceObject);case"saaecapivari.com.br":return Object(Theme["d"])(SAAECapivariTheme,dist_namespaceObject);case"saomartinho.com.br":return Object(Theme["d"])(SaoMartinhoTheme,dist_namespaceObject);case"vallourec.com":return Object(Theme["d"])(VallourecTheme,dist_namespaceObject);case"lexmark.com":return Object(Theme["d"])(LexmarkTheme,dist_namespaceObject);case"elementalmachines.com":return Object(Theme["d"])(ElementalMachinesTheme,dist_namespaceObject);case"euentrego.com":return Object(Theme["d"])(EuEntregoTheme,dist_namespaceObject);case"fitesa.com":return Object(Theme["d"])(FitesaTheme,dist_namespaceObject);case"fuelics.com":return Object(Theme["d"])(FuelicsTheme,dist_namespaceObject);case"healthmetryx.com":return Object(Theme["d"])(HealthmetryxTheme,dist_namespaceObject);default:return Object(Theme["d"])(HoparaTheme,dist_namespaceObject)}};const createMuiThemeFromTenant=tenant=>{const spec=getSpecFromTenant(tenant);return Object(Theme["c"])(spec)}},function(module,__webpack_exports__,__webpack_require__){"use strict";var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var external_feather_icons_react_=__webpack_require__(103);var external_feather_icons_react_default=__webpack_require__.n(external_feather_icons_react_);function _extends(){_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return _extends.apply(this,arguments)}function SvgCompass(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",_extends({viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,external_react_["createElement"]("g",{fillRule:"evenodd",transform:"matrix(1.021277, 0, 0, 1.021277, 7.404254, -0.000004)"},external_react_["createElement"]("path",{d:"M 4.55 23.5 L 0 11.75 L 4.55 0 L 9 11.75 L 4.55 23.5 Z M 4.54 20.704 L 7.836 11.75 L 1.087 11.75 L 4.54 20.704 Z",style:{stroke:"none"}})))}const ForwardRef=external_react_["forwardRef"](SvgCompass);var compass=__webpack_require__.p+"static/media/compass.1b7cfab3.svg";var _path;function target_extends(){target_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return target_extends.apply(this,arguments)}function SvgTarget(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",target_extends({xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,_path||(_path=external_react_["createElement"]("path",{d:"M11,2V4.07C7.38,4.53 4.53,7.38 4.07,11H2V13H4.07C4.53,16.62 7.38,19.47 11,19.93V22H13V19.93C16.62,19.47 19.47,16.62 19.93,13H22V11H19.93C19.47,7.38 16.62,4.53 13,4.07V2M11,6.08V8H13V6.09C15.5,6.5 17.5,8.5 17.92,11H16V13H17.91C17.5,15.5 15.5,17.5 13,17.92V16H11V17.91C8.5,17.5 6.5,15.5 6.08,13H8V11H6.09C6.5,8.5 8.5,6.5 11,6.08M12,11A1,1 0 0,0 11,12A1,1 0 0,0 12,13A1,1 0 0,0 13,12A1,1 0 0,0 12,11Z"})))}const target_ForwardRef=external_react_["forwardRef"](SvgTarget);var target=__webpack_require__.p+"static/media/target.5caa5a92.svg";var _g;function place_row_extends(){place_row_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return place_row_extends.apply(this,arguments)}function SvgPlaceRow(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",place_row_extends({width:"24px",height:"24px",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",ref:svgRef,"aria-labelledby":titleId},props),title===undefined?external_react_["createElement"]("title",{id:titleId},"placeRow"):title?external_react_["createElement"]("title",{id:titleId},title):null,_g||(_g=external_react_["createElement"]("g",{id:"placeRow",fillRule:"evenodd"},external_react_["createElement"]("polygon",{fill:"currentColor",points:"12 2 16.2426407 6.24264069 15.1213203 7.36396103 13 5.242 13 11 18.759 11 16.636039 8.87867966 17.7573593 7.75735931 22 12 17.7573593 16.2426407 16.636039 15.1213203 18.757 13 13 13 13 18.757 15.1213203 16.636039 16.2426407 17.7573593 12 22 7.75735931 17.7573593 8.87867966 16.636039 11 18.759 11 13 5.242 13 7.36396103 15.1213203 6.24264069 16.2426407 2 12 6.24264069 7.75735931 7.36396103 8.87867966 5.24 11 11 11 11 5.24 8.87867966 7.36396103 7.75735931 6.24264069"}))))}const place_row_ForwardRef=external_react_["forwardRef"](SvgPlaceRow);var place_row=__webpack_require__.p+"static/media/place-row.c46a02cf.svg";var filter_large_path;function filter_large_extends(){filter_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return filter_large_extends.apply(this,arguments)}function SvgFilterLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",filter_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,filter_large_path||(filter_large_path=external_react_["createElement"]("path",{d:"M21.3 34.7v-1.1h5.4v1.1Zm-8-11.15v-1.1h21.4v1.1Zm-6-11.15v-1.1h33.4v1.1Z"})))}const filter_large_ForwardRef=external_react_["forwardRef"](SvgFilterLarge);var filter_large=__webpack_require__.p+"static/media/filter-large.61677ff2.svg";var table_large_path;function table_large_extends(){table_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return table_large_extends.apply(this,arguments)}function SvgTableLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",table_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,table_large_path||(table_large_path=external_react_["createElement"]("path",{d:"M8.6 39.4V8.6h30.8v30.8Zm1.1-21.3h28.6V9.7H9.7Zm9.9 10.1h8.8v-9h-8.8Zm0 10.1h8.8v-9h-8.8ZM9.7 28.2h8.8v-9H9.7Zm19.8 0h8.8v-9h-8.8ZM9.7 38.3h8.8v-9H9.7Zm19.8 0h8.8v-9h-8.8Z"})))}const table_large_ForwardRef=external_react_["forwardRef"](SvgTableLarge);var table_large=__webpack_require__.p+"static/media/table-large.72b90bd0.svg";var layers_large_path;function layers_large_extends(){layers_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return layers_large_extends.apply(this,arguments)}function SvgLayersLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",layers_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,layers_large_path||(layers_large_path=external_react_["createElement"]("path",{d:"M24 35.9 10.2 25.2l.85-.7L24 34.5l12.95-10 .85.7Zm0-6.15-13.8-10.7L24 8.35l13.8 10.7Zm0-11Zm0 9.6 12-9.3L24 9.8l-12 9.25Z"})))}const layers_large_ForwardRef=external_react_["forwardRef"](SvgLayersLarge);var layers_large=__webpack_require__.p+"static/media/layers-large.596ff81a.svg";var tune_large_path;function tune_large_extends(){tune_large_extends=Object.assign?Object.assign.bind():function(target){for(var i=1;i<arguments.length;i++){var source=arguments[i];for(var key in source){if(Object.prototype.hasOwnProperty.call(source,key)){target[key]=source[key]}}}return target};return tune_large_extends.apply(this,arguments)}function SvgTuneLarge(_ref,svgRef){let{title,titleId,...props}=_ref;return external_react_["createElement"]("svg",tune_large_extends({xmlns:"http://www.w3.org/2000/svg",height:48,width:48,ref:svgRef,"aria-labelledby":titleId},props),title?external_react_["createElement"]("title",{id:titleId},title):null,tune_large_path||(tune_large_path=external_react_["createElement"]("path",{d:"M23.1 40.7v-9.2h1.1v4.05h16.5v1.1H24.2v4.05ZM7.3 36.65v-1.1h9.5v1.1Zm8.4-8.05v-4.05H7.3v-1.1h8.4V19.4h1.1v9.2Zm7.4-4.05v-1.1h17.6v1.1Zm8.1-8.1V7.3h1.1v4.05h8.4v1.1h-8.4v4Zm-23.9-4v-1.1h17.6v1.1Z"})))}const tune_large_ForwardRef=external_react_["forwardRef"](SvgTuneLarge);var tune_large=__webpack_require__.p+"static/media/tune-large.ecd7a42c.svg";var styles_=__webpack_require__(104);var icons_material_=__webpack_require__(29);var jsx_runtime_=__webpack_require__(0);class Icons_Icons extends external_react_default.a.PureComponent{render(){const style={...this.props.style,fill:"currentColor",width:"1em",height:"1em"};if(this.props.icon==="compass"){return Object(jsx_runtime_["jsx"])(ForwardRef,{style})}if(this.props.icon==="target"){return Object(jsx_runtime_["jsx"])(target_ForwardRef,{style})}if(this.props.icon==="placing-row"){return Object(jsx_runtime_["jsx"])(icons_material_["LocationOnOutlined"],{style})}if(this.props.icon==="place-row"){return Object(jsx_runtime_["jsx"])(place_row_ForwardRef,{style})}if(this.props.icon==="filter-large"){return Object(jsx_runtime_["jsx"])(filter_large_ForwardRef,{style})}if(this.props.icon==="table-large"){return Object(jsx_runtime_["jsx"])(table_large_ForwardRef,{style})}if(this.props.icon==="layers-large"){return Object(jsx_runtime_["jsx"])(layers_large_ForwardRef,{style})}if(this.props.icon==="tune-large"){return Object(jsx_runtime_["jsx"])(tune_large_ForwardRef,{style})}if(this.props.icon==="edit"){return Object(jsx_runtime_["jsx"])(icons_material_["EditOutlined"],{style})}if(this.props.icon==="toggleOn"){return Object(jsx_runtime_["jsx"])(icons_material_["ToggleOnOutlined"],{style})}if(this.props.icon==="toggleOff"){return Object(jsx_runtime_["jsx"])(icons_material_["ToggleOffOutlined"],{style})}return Object(jsx_runtime_["jsx"])(external_feather_icons_react_default.a,{icon:this.props.icon,style:this.props.style})}}var icons_Icons=__webpack_exports__["a"]=Object(styles_["withTheme"])(Icons_Icons)},function(module,exports){module.exports=require("redux")},function(module,exports){module.exports=require("math.gl")},function(module,exports){var g;g=function(){return this}();try{g=g||new Function("return this")()}catch(e){if(typeof window==="object")g=window}module.exports=g},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"b",(function(){return navigationActions}));var typesafe_actions__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(2);var typesafe_actions__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__);var _state_Actions__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(1);const userActions=dispatch=>({onZoomInClick:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization){dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].root.genericError({reason:"Cannot zoom while visualization does not exist"}));return}dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.zoomInRequested({visualizationId:currentVisualization.id}));dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Sidebar Zoom: In"}))},onZoomOutClick:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization){dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].root.genericError({reason:"Cannot zoom while visualization does not exist"}));return}dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.zoomOutRequested({visualizationId:currentVisualization.id}));dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Sidebar Zoom: Out"}))},onJumpBackClick:(visualizations,jumpStore)=>()=>{const previousViz=jumpStore.previousVisualization();const toVisualization=previousViz?visualizations.getById(previousViz):visualizations.getOrigin();const fromVisualization=visualizations.getCurrent();if(!toVisualization||!fromVisualization)return;dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Jump: Back"}));return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].visualization.jumpBackRequested({fromVisualization,toVisualization}))},onLevelChange:visualizations=>level=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization)throw new Error("Cannot change level while visualization does not exist");dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Level: Change"}));return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.levelChangeRequested({level,visualizationId:currentVisualization.id}))},onBearingModeClick:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization)throw new Error("Cannot change bearing while visualization does not exist");dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].analytics.analyticsEvent({event:"Bearing: Toggle"}));return dispatch(_state_Actions__WEBPACK_IMPORTED_MODULE_1__["a"].navigation.bearingModeToggle({visualizationId:currentVisualization.id}))}});__webpack_exports__["a"]=userActions;const navigationActions={zoomInRequested:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("ZOOM_IN_REQUESTED")(),zoomOutRequested:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("ZOOM_OUT_REQUESTED")(),levelChangeRequested:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("LEVEL_CHANGE_REQUESTED")(),bearingModeToggle:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("BEARING_MODE_REQUESTED")(),changeTab:Object(typesafe_actions__WEBPACK_IMPORTED_MODULE_0__["createAction"])("CHANGE_TAB")()}},function(module,exports){module.exports=require("@turf/transform-rotate")},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(setImmediate){__webpack_require__.d(__webpack_exports__,"a",(function(){return memoize}));var fast_memoize__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(102);var fast_memoize__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(fast_memoize__WEBPACK_IMPORTED_MODULE_0__);const defaultStore=new Map;const memoize=(fn,options)=>fast_memoize__WEBPACK_IMPORTED_MODULE_0___default()(fn,{cache:{create(){var _options$cacheStore,_options$cachePrefix;const store=(_options$cacheStore=options===null||options===void 0?void 0:options.cacheStore)!==null&&_options$cacheStore!==void 0?_options$cacheStore:defaultStore;const keyPrefix=(_options$cachePrefix=options===null||options===void 0?void 0:options.cachePrefix)!==null&&_options$cachePrefix!==void 0?_options$cachePrefix:"";return{has(key){var _options$cacheKey;return store.has((_options$cacheKey=options===null||options===void 0?void 0:options.cacheKey)!==null&&_options$cacheKey!==void 0?_options$cacheKey:keyPrefix+key)},get(key){var _options$cacheKey2;return store.get((_options$cacheKey2=options===null||options===void 0?void 0:options.cacheKey)!==null&&_options$cacheKey2!==void 0?_options$cacheKey2:keyPrefix+key)},set(key,value){var _options$cacheKey3;const cacheKey=(_options$cacheKey3=options===null||options===void 0?void 0:options.cacheKey)!==null&&_options$cacheKey3!==void 0?_options$cacheKey3:key;const keyToDelete=(options===null||options===void 0?void 0:options.deleteKeyOnSet)&&(options===null||options===void 0?void 0:options.deleteKeyOnSet(store,cacheKey,keyPrefix));if(keyToDelete)setImmediate((()=>store.delete(keyToDelete)));store.set(keyPrefix+cacheKey,value)}}}}})}).call(this,__webpack_require__(139).setImmediate)},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return OffsetEncoding}));var _size_SizeEncoding__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(32);class OffsetEncoding{constructor(offset){this.x=void 0;this.y=void 0;if(offset.x)this.x=new _size_SizeEncoding__WEBPACK_IMPORTED_MODULE_0__["a"](offset.x);if(offset.y)this.y=new _size_SizeEncoding__WEBPACK_IMPORTED_MODULE_0__["a"](offset.y)}isRenderable(){return!!this.x||!!this.y}}},function(module,exports){module.exports=require("@mui/material/ListItemButton")},function(module,exports){module.exports=require("@mui/material/ListItemIcon")},function(module,exports){module.exports=require("deck.gl")},function(module,exports){module.exports=require("vega-lite")},function(module,exports){module.exports=require("@mui/material/TableRow")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return D3Formatter_D3Formatter}));var external_d3_=__webpack_require__(22);var ColumnType=__webpack_require__(21);const getDecimalsQty=(value,decimalSeparator)=>{let splitted=[];if(typeof value==="string"){splitted=value.split(decimalSeparator)}else if(typeof value==="number"){const numStr=value.toString();splitted=numStr.split(".")}return splitted.length===2?splitted[1].length:0};class D3Formatter_D3Formatter{constructor(columnType){this.columnType=void 0;this.columnType=columnType}getFormatString(){switch(this.columnType){case ColumnType["a"].DECIMAL:return",.2f";case ColumnType["a"].INTEGER:return",d";default:return}}getDecimalSeparator(){return"."}format(value){const formatString=this.getFormatString();if(!formatString)return value;return external_d3_["format"](formatString)(value)}unformatDecimal(value){const unformatted=typeof value==="string"?Number(value.replace(/,/g,"")):value;const decimalsQty=getDecimalsQty(value,this.getDecimalSeparator());if(!decimalsQty){return Number(unformatted)/100}else if(decimalsQty===1){return Number(unformatted)/10}else if(decimalsQty>2){return Number(unformatted)*10}return unformatted}unformat(value){switch(this.columnType){case ColumnType["a"].INTEGER:return typeof value==="string"?Number(value.replace(/,/g,"")):value;case ColumnType["a"].DECIMAL:return this.unformatDecimal(value);default:return value}}}},function(module,__webpack_exports__,__webpack_require__){"use strict";(function(global){const window=global;const sendEvent=(name,props)=>{if(!window.gtag)return;window.gtag("event",name,props)};const pageview=(title,path)=>{sendEvent("page_view",{page_path:path,page_location:window.location.href,page_title:title})};const login=method=>{sendEvent("login",{method})};const custom=event=>{sendEvent(event.action,{event_category:event.category,event_label:event.label,value:event.value})};const GA={pageview,login,custom};__webpack_exports__["a"]=GA}).call(this,__webpack_require__(75))},function(module,exports){module.exports=require("gl-matrix/vec2")},function(module,exports){module.exports=require("@mui/material/Slider")},function(module,exports){module.exports=require("react-beautiful-dnd")},function(module,exports){module.exports=require("@turf/projection")},function(module,exports){module.exports=require("d3/dist/d3.min")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return logAppInfo}));var _hopara_config__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(17);var _hopara_internals__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(16);const logAppInfo=()=>{if(!_hopara_internals__WEBPACK_IMPORTED_MODULE_1__["a"].isDebugging())return;const envs=["HOPARA_ENV","PACKAGE_VERSION","BUILD_NUMBER","APP_API_ADDRESS","BFF_ADDRESS","DATASET_API_ADDRESS"];return envs.forEach((env=>_hopara_internals__WEBPACK_IMPORTED_MODULE_1__["c"].info(env,"=",_hopara_config__WEBPACK_IMPORTED_MODULE_0__["a"].getValue(env))))}},function(module,exports){module.exports=require("colorsys")},function(module,exports){module.exports=require("@luma.gl/engine")},function(module,exports){module.exports=require("@mui/material/TableCell")},function(module,exports){module.exports=require("d3-svg-legend")},function(module,exports){module.exports=require("jwt-decode")},function(module,exports){module.exports=require("redux-saga")},function(module,exports){module.exports=require("slugify")},function(module,exports){module.exports=require("@turf/bearing")},function(module,exports){module.exports=require("@math.gl/web-mercator")},function(module,exports){module.exports=require("fast-memoize")},function(module,exports){module.exports=require("feather-icons-react")},function(module,exports){module.exports=require("@mui/styles")},function(module,exports){module.exports=require("@mui/icons-material/Link")},function(module,exports){module.exports=require("@mui/material/Switch")},function(module,exports){module.exports=require("@mui/material/Tooltip")},function(module,exports){module.exports=require("@mui/icons-material/Info")},function(module,exports){module.exports=require("supercluster")},function(module,exports){module.exports=require("@mui/material/TextField")},function(module,exports){module.exports=require("@mui/icons-material/ChevronLeft")},function(module,exports){module.exports=require("react-dom")},function(module,exports){module.exports=require("@mui/icons-material/Add")},function(module,exports){module.exports=require("@mui/icons-material/DragIndicator")},function(module,exports){module.exports=require("socket.io-client")},function(module,exports){module.exports=require("redux-persist")},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.d(__webpack_exports__,"a",(function(){return ToastContainer}));var react__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(5);var react__WEBPACK_IMPORTED_MODULE_0___default=__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);var react_toastify__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(46);var react_toastify__WEBPACK_IMPORTED_MODULE_1___default=__webpack_require__.n(react_toastify__WEBPACK_IMPORTED_MODULE_1__);var react_toastify_dist_ReactToastify_css__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(141);var react_toastify_dist_ReactToastify_css__WEBPACK_IMPORTED_MODULE_2___default=__webpack_require__.n(react_toastify_dist_ReactToastify_css__WEBPACK_IMPORTED_MODULE_2__);var _toast_css__WEBPACK_IMPORTED_MODULE_3__=__webpack_require__(142);var _toast_css__WEBPACK_IMPORTED_MODULE_3___default=__webpack_require__.n(_toast_css__WEBPACK_IMPORTED_MODULE_3__);var _emotion_react__WEBPACK_IMPORTED_MODULE_4__=__webpack_require__(14);var _emotion_react__WEBPACK_IMPORTED_MODULE_4___default=__webpack_require__.n(_emotion_react__WEBPACK_IMPORTED_MODULE_4__);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__=__webpack_require__(0);var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5___default=__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__);react_toastify__WEBPACK_IMPORTED_MODULE_1__["toast"].configure();const transition=Object(react_toastify__WEBPACK_IMPORTED_MODULE_1__["cssTransition"])({enter:"hopara-Toastify__fade-in",exit:"hopara-Toastify__fade-out"});class ToastContainerClass extends react__WEBPACK_IMPORTED_MODULE_0___default.a.PureComponent{render(){const position="bottom-left";return Object(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_5__["jsx"])(react_toastify__WEBPACK_IMPORTED_MODULE_1__["ToastContainer"],{autoClose:3500,limit:1,newestOnTop:true,position,theme:"light",hideProgressBar:true,icon:false,transition,containerId:"hp-toast-global",className:"hopara-Toastify",toastClassName:this.props.theme.palette.mode==="dark"?"hopara-Toastify__toast__dark":"hopara-Toastify__toast__light",bodyClassName:"hopara-Toastify__body"})}}const ToastContainer=Object(_emotion_react__WEBPACK_IMPORTED_MODULE_4__["withTheme"])(ToastContainerClass)},function(module,exports){module.exports=require("@deck.gl/react/typed")},function(module,exports){module.exports=require("react-map-gl")},function(module,exports){module.exports=require("maplibre-gl")},function(module,exports){module.exports=require("@deck.gl/aggregation-layers")},function(module,exports){module.exports=require("@turf/rhumb-bearing")},function(module,exports){module.exports=require("@turf/rhumb-distance")},function(module,exports){module.exports=require("@turf/transform-translate")},function(module,exports){module.exports=require("@turf/bbox-polygon")},function(module,exports){module.exports=require("@turf/bbox")},function(module,exports){module.exports=require("@turf/meta")},function(module,exports){module.exports=require("@turf/polygon-to-line")},function(module,exports){module.exports=require("@deck.gl/core/typed")},function(module,exports){module.exports=require("@turf/distance")},function(module,exports){module.exports=require("@mui/material/Table")},function(module,exports){module.exports=require("@mui/material/TableContainer")},function(module,exports){module.exports=require("@mui/material/Paper")},function(module,exports){module.exports=require("@mui/material/TablePagination")},function(module,exports){module.exports=require("@mui/material/TableSortLabel")},function(module,exports){module.exports=require("@mui/material/TableBody")},function(module,exports){module.exports=require("@mui/material/TableHead")},function(module,__webpack_exports__,__webpack_require__){"use strict";var external_react_redux_=__webpack_require__(30);var Store=__webpack_require__(28);var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var src=__webpack_require__(17);var Theme=__webpack_require__(24);var SpecFromTenant=__webpack_require__(71);var jsx_runtime_=__webpack_require__(0);const DEFAULT_STYLE_INTERFACE=src["a"].getValue("STYLE_INTERFACE").toLowerCase();class ThemeProvider_ThemeProvider extends external_react_default.a.Component{constructor(props){super(props);this.interfaceName=void 0;this.state={selectedTheme:null,theme:Object(SpecFromTenant["a"])("hopara")};this.interfaceName=DEFAULT_STYLE_INTERFACE}componentDidUpdate(){var _this$props$authoriza;if((_this$props$authoriza=this.props.authorization)!==null&&_this$props$authoriza!==void 0&&_this$props$authoriza.tenant&&this.state.selectedTheme!==this.props.authorization.tenant){this.setState({selectedTheme:this.props.authorization.tenant,theme:Object(SpecFromTenant["a"])(this.props.authorization.tenant)})}}render(){return Object(jsx_runtime_["jsxs"])(Theme["b"],{theme:this.state.theme,children:[Object(jsx_runtime_["jsx"])(Theme["a"],{}),this.props.children]})}}var hoc_ThemeProvider=__webpack_exports__["a"]=Object(external_react_redux_["connect"])((state=>({authorization:state.authorization})),null,null,{context:Store["a"]})(ThemeProvider_ThemeProvider)},function(module,exports,__webpack_require__){(function(global){var scope=typeof global!=="undefined"&&global||typeof self!=="undefined"&&self||window;var apply=Function.prototype.apply;exports.setTimeout=function(){return new Timeout(apply.call(setTimeout,scope,arguments),clearTimeout)};exports.setInterval=function(){return new Timeout(apply.call(setInterval,scope,arguments),clearInterval)};exports.clearTimeout=exports.clearInterval=function(timeout){if(timeout){timeout.close()}};function Timeout(id,clearFn){this._id=id;this._clearFn=clearFn}Timeout.prototype.unref=Timeout.prototype.ref=function(){};Timeout.prototype.close=function(){this._clearFn.call(scope,this._id)};exports.enroll=function(item,msecs){clearTimeout(item._idleTimeoutId);item._idleTimeout=msecs};exports.unenroll=function(item){clearTimeout(item._idleTimeoutId);item._idleTimeout=-1};exports._unrefActive=exports.active=function(item){clearTimeout(item._idleTimeoutId);var msecs=item._idleTimeout;if(msecs>=0){item._idleTimeoutId=setTimeout((function onTimeout(){if(item._onTimeout)item._onTimeout()}),msecs)}};__webpack_require__(140);exports.setImmediate=typeof self!=="undefined"&&self.setImmediate||typeof global!=="undefined"&&global.setImmediate||this&&this.setImmediate;exports.clearImmediate=typeof self!=="undefined"&&self.clearImmediate||typeof global!=="undefined"&&global.clearImmediate||this&&this.clearImmediate}).call(this,__webpack_require__(75))},function(module,exports){module.exports=require("setimmediate")},function(module,exports){module.exports=require("react-toastify/dist/ReactToastify.css")},function(module,exports,__webpack_require__){},function(module,exports){},function(module,__webpack_exports__,__webpack_require__){"use strict";__webpack_require__.r(__webpack_exports__);__webpack_require__.d(__webpack_exports__,"Hopara",(function(){return HoparaHOC}));__webpack_require__.d(__webpack_exports__,"View",(function(){return ViewContainer}));var external_react_=__webpack_require__(5);var external_react_default=__webpack_require__.n(external_react_);var external_jwt_decode_=__webpack_require__(97);var external_jwt_decode_default=__webpack_require__.n(external_jwt_decode_);var PureComponent=__webpack_require__(25);var src=__webpack_require__(16);var Provider=__webpack_require__(67);var HocActions=__webpack_require__(63);var jsx_runtime_=__webpack_require__(0);const logInit=(message,props)=>{var _props$accessToken;src["c"].debug(message,{appId:props.app,accessToken:props.accessToken?`${(_props$accessToken=props.accessToken)===null||_props$accessToken===void 0?void 0:_props$accessToken.substring(0,50)}...`:undefined})};class HoparaHOC_Hopara extends PureComponent["a"]{getActionPayload(){var _this$props$tenant;const accessTokenDecoded=external_jwt_decode_default()(this.props.accessToken);const{tenants=[],scope=""}=accessTokenDecoded;return{appId:this.props.app,accessToken:this.props.accessToken,tenant:(_this$props$tenant=this.props.tenant)!==null&&_this$props$tenant!==void 0?_this$props$tenant:tenants[0],tenants,permissions:scope===null||scope===void 0?void 0:scope.split(""),queryLoaders:this.props.queryLoaders,initialPosition:this.props.initialPosition}}componentDidMount(){if(!this.props.app||!this.props.accessToken)return;logInit("initializing module",this.props);Provider["a"].dispatch(HocActions["a"].hocLoaded(this.getActionPayload()))}componentDidUpdate(prevProps){var _state$appStore$app;if(!this.props.app||!this.props.accessToken)return;const state=Provider["a"].getState();if(this.props.app===((_state$appStore$app=state.appStore.app)===null||_state$appStore$app===void 0?void 0:_state$appStore$app.id)&&this.props.accessToken===state.authorization.accessToken&&this.props.tenant===state.authorization.tenant)return;if(!prevProps.app||!prevProps.accessToken){logInit("initializing module",this.props);Provider["a"].dispatch(HocActions["a"].hocLoaded(this.getActionPayload()))}else{logInit("updating module",this.props);Provider["a"].dispatch(HocActions["a"].hocUpdated(this.getActionPayload()))}}render(){return Object(jsx_runtime_["jsx"])(Provider["b"],{children:this.props.children})}}var HoparaHOC=HoparaHOC_Hopara;var external_react_redux_=__webpack_require__(30);var Store=__webpack_require__(28);var Actions=__webpack_require__(1);const layerActions=dispatch=>(visualizations,isEditing,hasSelectedRow,tooltipEnabled)=>({onLayerHover:info=>{if(!info)return;if(!info.row&&(hasSelectedRow||tooltipEnabled))return dispatch(Actions["a"].layer.mouseLeft());if(!info.row)return;dispatch(Actions["a"].layer.mouseHover({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowIndex:info.rowIndex,rowsetId:info.rowsetId}))},onLayerClick:info=>{if(!(info!==null&&info!==void 0&&info.row)&&(hasSelectedRow||tooltipEnabled))return dispatch(Actions["a"].layer.clickOut());if(!(info!==null&&info!==void 0&&info.row))return;dispatch(Actions["a"].layer.click({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowIndex:info.rowIndex,rowsetId:info.rowsetId}))},onLayerDragStart:info=>{var _info$coordinates,_info$coordinates2;if(!info||!isEditing)return;dispatch(Actions["a"].layer.dragStart({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowDiff:{_x:(_info$coordinates=info.coordinates)===null||_info$coordinates===void 0?void 0:_info$coordinates.x,_y:(_info$coordinates2=info.coordinates)===null||_info$coordinates2===void 0?void 0:_info$coordinates2.y},rowIndex:info.rowIndex,rowsetId:info.rowsetId}))},onLayerDragEnd:info=>{if(!info||!isEditing||!info.coordinates)return;dispatch(Actions["a"].layer.dragEnded({layerId:info.layerId,coordinates:info.coordinates,pixel:info.pixel,row:info.row,rowDiff:info.updatedData,rowIndex:info.rowIndex,rowsetId:info.rowsetId}))}});var ViewLayerActions=layerActions;var ViewActions=__webpack_require__(48);var AppStore=__webpack_require__(33);var QueryStore=__webpack_require__(53);const getZoomButtons=props=>[{active:false,title:"Zoom in",icon:"plus",clickCallback:props.onZoomInClick},{active:false,title:"Zoom out",icon:"minus",clickCallback:props.onZoomOutClick}];const getJumpBackButton=props=>[{active:false,title:"Back to origin",icon:"arrow-left",clickCallback:props.onJumpBackClick}];const getBearingButton=props=>[{active:props.isBearing,title:"Change bearing",icon:"compass",iconStyle:{transform:`rotate(${props.currentBearing*-1}deg) scale(1.5)`},clickCallback:props.onBearingModeClick}];const MIN_Z=0;const MAX_Z=50;const getZSteps=currentZ=>{let steps;if(currentZ<=MIN_Z){steps=[MIN_Z,MIN_Z+1,MIN_Z+2]}else if(currentZ>=MAX_Z){steps=[MAX_Z-2,MAX_Z-1,MAX_Z]}else{steps=[currentZ-1,currentZ,currentZ+1]}return steps};const getZAxisButton=props=>{const currentZ=props.currentZ;if(currentZ===undefined)return[];const steps=getZSteps(currentZ);const zActions=[];zActions.push({active:false,disabled:currentZ<=MIN_Z,title:"Previous level",icon:"chevron-down",clickCallback:()=>props.onLevelChange(currentZ-1)});steps.forEach((step=>{zActions.push({active:step===currentZ,title:`Level ${step+1}`,label:(step+1).toString(),clickCallback:()=>currentZ!==step&&props.onLevelChange(step)})}));zActions.push({active:false,disabled:currentZ>=MAX_Z,title:"Next level",icon:"chevron-up",clickCallback:()=>props.onLevelChange(currentZ+1)});return zActions.reverse()};var src_theme=__webpack_require__(9);var Icons=__webpack_require__(72);const NavigationBar=Object(src_theme["a"])("div",{name:"NavigationView"})((_ref=>{let{theme}=_ref;return{bottom:theme.shape.paddingInner,position:"absolute",right:theme.shape.paddingInner,zIndex:2,transition:"transform 0.5s ease-in-out","@media (min-width: 768px)":{bottom:"auto",right:theme.shape.paddingInner,top:theme.shape.paddingInner}}}));const NavigationBarActions=Object(src_theme["a"])("ul",{name:"NavigationViewActions"})({alignItems:"flex-end",display:"flex",flexDirection:"column",listStyle:"none",margin:"0",padding:"0"});const NavigationBarAction=Object(src_theme["a"])("li",{name:"NavigationViewAction"})({marginBottom:8,display:"flex",flexDirection:"row-reverse",":last-of-type":{marginBottom:0},":hover:nth-of-type(1n) > ul":{visibility:"visible",opacity:1,width:"auto"}});const NavigationBarActionInner=Object(src_theme["a"])("div",{name:"NavigationViewActionInner"})((_ref2=>{let{theme}=_ref2;return{width:32,borderRadius:theme.shape.borderRadius,boxShadow:theme.shadows[2],backgroundColor:theme.palette.background.paper,display:"block"}}));const NavigationBarButton=Object(src_theme["a"])("button",{name:"NavigationViewButton"})((_ref3=>{let{theme,_active}=_ref3;return{color:theme.palette.primary.main,alignItems:"center",background:"none",borderRadius:_active?theme.shape.borderRadius:0,border:_active?`1px solid ${theme.palette.primary.main}`:"none",cursor:"pointer",display:"flex",justifyContent:"center",padding:8,position:"relative",width:32,height:32,":disabled":{color:"#ccc"}}}));const NavigationBarButtonIcon=Object(src_theme["a"])(Icons["a"],{name:"NavigationViewButtonIcon"})({width:16,height:16,flex:1,color:"inherit",lineHeight:0});const NavigationBarButtonBadge=Object(src_theme["a"])(Icons["a"],{name:"NavigationViewButtonBadgeIcon"})((_ref4=>{let{theme}=_ref4;return{background:"#fff",border:"1px solid #fff",borderRadius:"50%",bottom:4,color:theme.palette.secondary.main,height:11,position:"absolute",right:4,width:11}}));const canJumpBack=visualizations=>{if(visualizations&&visualizations.length<=1)return false;return visualizations.getCurrentIndex()>0};const doActionList=props=>{var _props$visualizations;const actions=new Array;const currentVisualization=(_props$visualizations=props.visualizations)===null||_props$visualizations===void 0?void 0:_props$visualizations.getCurrent();if(!(currentVisualization!==null&&currentVisualization!==void 0&&currentVisualization.isCustom()))actions.push(getZoomButtons(props));if(currentVisualization!==null&&currentVisualization!==void 0&&currentVisualization.isGeo())actions.push(getBearingButton(props));if(props.hasZAxes)actions.push(getZAxisButton(props));if(canJumpBack(props.visualizations))actions.push(getJumpBackButton(props));return actions};const NavigationComponent=props=>Object(jsx_runtime_["jsx"])(NavigationBar,{children:Object(jsx_runtime_["jsx"])(NavigationBarActions,{children:doActionList(props).map(((items,i)=>Object(jsx_runtime_["jsx"])(NavigationBarAction,{children:Object(jsx_runtime_["jsx"])(NavigationBarActionInner,{children:items.map(((item,index)=>Object(jsx_runtime_["jsxs"])(NavigationBarButton,{disabled:item.disabled,onClick:()=>item.clickCallback(),title:item.title,_active:item.active,children:[item.icon&&Object(jsx_runtime_["jsx"])(NavigationBarButtonIcon,{icon:item.icon,style:item.iconStyle}),item.badgeIcon&&Object(jsx_runtime_["jsx"])(NavigationBarButtonBadge,{icon:item.badgeIcon}),!item.icon&&item.label&&Object(jsx_runtime_["jsx"])("span",{children:item.label})]},index)))})},i)))})});var NavigationActions=__webpack_require__(76);const mapStateToProps=state=>{var _state$layers,_state$viewStates,_currentViewState$coo,_getFromVisualization;const currentVisualization=state.visualizations.getCurrent();const currentLayers=(_state$layers=state.layers)===null||_state$layers===void 0?void 0:_state$layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);const hasZAxes=currentLayers.someWithZPosition();const currentViewState=(_state$viewStates=state.viewStates)===null||_state$viewStates===void 0?void 0:_state$viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id);const currentZ=(_currentViewState$coo=currentViewState.coordinates)===null||_currentViewState$coo===void 0?void 0:_currentViewState$coo.z;const currentBearing=currentViewState.bearing;const isVega=currentLayers.everyIsVega();return{isVega,isBearing:(_getFromVisualization=state.viewControllers.getFromVisualization(state.visualizations.getCurrent().id))===null||_getFromVisualization===void 0?void 0:_getFromVisualization.isRotateMode(),isPreparingToJump:state.jump.enabled,jumpStore:state.jump,visualizations:state.visualizations,currentZ,currentBearing,hasZAxes,currentViewState}};const mapDispatchToProps=dispatch=>({...Object(NavigationActions["a"])(dispatch)});const mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps,onJumpBackClick:dispatchProps.onJumpBackClick(stateProps.visualizations,stateProps.jumpStore),onZoomInClick:dispatchProps.onZoomInClick(stateProps.visualizations),onZoomOutClick:dispatchProps.onZoomOutClick(stateProps.visualizations),onLevelChange:dispatchProps.onLevelChange(stateProps.visualizations),onBearingModeClick:dispatchProps.onBearingModeClick(stateProps.visualizations)});var NavigationContainer=Object(external_react_redux_["connect"])(mapStateToProps,mapDispatchToProps,mergeProps,{context:Store["a"]})(NavigationComponent);var spatial_src=__webpack_require__(8);var dataset_src=__webpack_require__(6);var encoding_src=__webpack_require__(10);var projector_src=__webpack_require__(51);const tooltipActions=dispatch=>({onImageUpload:(layer,tooltip)=>info=>{if(!tooltip.row||!tooltip.rowsetId||!layer)return;const boundsColumnField=layer.encoding.bounds.field;const bounds=spatial_src["a"].fromPlain(tooltip.row[boundsColumnField]).extrudeKeepingWidth(info.width,info.height).toPolygon();const imageColumnField=layer.encoding.image.field;dispatch(Actions["a"].layer.imageUploaded({layerId:layer.id,rowsetId:tooltip.rowsetId,row:tooltip.row,rowDiff:{[imageColumnField]:info.base64,[boundsColumnField]:bounds}}))},onUnplaceClick:(visualizations,rowsetStore,projectorStore)=>tooltip=>{var _tooltip$row;const currentVisualization=visualizations.getCurrent();if(!currentVisualization||!tooltip.rowsetId)return;const rowset=rowsetStore.getRowset(tooltip.rowsetId);const rowDiff=new dataset_src["f"]({_x:null,_y:null,_z:null});const projector=projectorStore.getFromVisualization(currentVisualization.id);if(!projector)return;const rowProjector=new projector_src["c"](projector,rowset.scales);dispatch(Actions["a"].dataBrowser.rowUnplaced({visualizationId:currentVisualization.id,position:new encoding_src["h"]({}),data:rowset.data,row:new dataset_src["f"](rowProjector.unprojectRow({...tooltip.row,...rowDiff,_id:(_tooltip$row=tooltip.row)===null||_tooltip$row===void 0?void 0:_tooltip$row._id})),rowDiff:rowProjector.unprojectRow(rowDiff)}))},onJumpClick:visualizations=>(jumpAction,value)=>{const toVisualization=visualizations.getByName(jumpAction.visualization);if(!toVisualization)throw new Error("Target visualization should exists to jump");const fromVisualization=visualizations.getCurrent();if(!fromVisualization)throw new Error("Origin visualization should exists to jump");return dispatch(Actions["a"].visualization.rowJumpRequested({fromVisualization,toVisualization,field:{name:jumpAction.field,value},targetField:{name:jumpAction.targetField}}))},onZoomClick:visualization=>(zoom,coordinates)=>{dispatch(Actions["a"].dataBrowser.navigateToPosition({zoom,coordinates,visualizationId:visualization===null||visualization===void 0?void 0:visualization.id,duration:1500}))}});var TooltipActions=tooltipActions;let TooltipPlacement;(function(TooltipPlacement){TooltipPlacement["top"]="top";TooltipPlacement["bottom"]="bottom";TooltipPlacement["left"]="left";TooltipPlacement["right"]="right";TooltipPlacement["topRight"]="topRight";TooltipPlacement["topLeft"]="topLeft";TooltipPlacement["bottomRight"]="bottomRight";TooltipPlacement["bottomLeft"]="bottomLeft"})(TooltipPlacement||(TooltipPlacement={}));var react_=__webpack_require__(14);const TooltipView=Object(src_theme["a"])("div",{name:"TooltipView"})((_ref=>{let{theme,_visible,_fixed,_placement}=_ref;const tooltipVisible=Object(react_["css"])({opacity:.97});const tooltipFixed=Object(react_["css"])({pointerEvents:"inherit"});const baseTooltipVisible={border:`1px solid ${theme.palette.background.paper}`};const tooltipTop=Object(react_["css"])({...baseTooltipVisible,marginTop:-15,transform:"translate3d(-50%, -100%, 0)"});const tooltipBottom=Object(react_["css"])({...baseTooltipVisible,marginTop:15,transform:"translate3d(-50%, 0, 0)"});const tooltipLeft=Object(react_["css"])({...baseTooltipVisible,marginLeft:-15,transform:"translate3d(-100%, -50%, 0)"});const tooltipRight=Object(react_["css"])({...baseTooltipVisible,marginLeft:15,transform:"translate3d(0, -50%, 0)"});const tooltipTopRight=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(0, -100%, 0)"});const tooltipTopLeft=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(-100%, -100%, 0)"});const tooltipBottomRight=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(0, 0, 0)"});const tooltipBottomLeft=Object(react_["css"])({...baseTooltipVisible,transform:"translate3d(-100%, 0, 0)"});const tooltipUnplaced=Object(react_["css"])({visibility:"hidden"});const styles=[Object(react_["css"])({borderRadius:theme.shape.borderRadius,boxShadow:theme.shadows[2],fontSize:theme.typography.fontSize,display:"block",position:"absolute",transition:"opacity 0.14s ease-out",zIndex:999,pointerEvents:"none",opacity:0,visibility:"visible",backgroundColor:theme.palette.background.paper,maxWidth:500})];if(_visible){styles.push(tooltipVisible)}if(_fixed){styles.push(tooltipFixed)}if(_placement===TooltipPlacement.top){styles.push(tooltipTop)}if(_placement===TooltipPlacement.bottom){styles.push(tooltipBottom)}if(_placement===TooltipPlacement.left){styles.push(tooltipLeft)}if(_placement===TooltipPlacement.right){styles.push(tooltipRight)}if(_placement===TooltipPlacement.topRight){styles.push(tooltipTopRight)}if(_placement===TooltipPlacement.topLeft){styles.push(tooltipTopLeft)}if(_placement===TooltipPlacement.bottomRight){styles.push(tooltipBottomRight)}if(_placement===TooltipPlacement.bottomLeft){styles.push(tooltipBottomLeft)}if(!_placement){styles.push(tooltipUnplaced)}return styles}));const TooltipContent=Object(src_theme["a"])("div",{name:"TooltipContent"})((_ref2=>{let{theme}=_ref2;return{borderRadius:theme.shape.borderRadius,overflow:"hidden"}}));const TooltipTableView=Object(src_theme["a"])("table",{name:"TooltipTableView"})((_ref3=>{let{theme}=_ref3;return{borderCollapse:"collapse",borderRadius:theme.shape.borderRadius,overflow:"hidden"}}));const TooltipRow=Object(src_theme["a"])("tr",{name:"TooltipRow"})((_ref4=>{let{theme}=_ref4;return{padding:0,":nth-of-type(odd)":{backgroundColor:theme.palette.mode==="dark"?"#444":"#f3f3f3"}}}));const TooltipHeading=Object(src_theme["a"])("th",{name:"TooltipHeading"})((_ref5=>{let{theme}=_ref5;return{borderRight:`1px solid ${theme.palette.background.paper}`,padding:"0.75em",paddingRight:"1em",textAlign:"left",whiteSpace:"nowrap"}}));const TooltipField=Object(src_theme["a"])("td",{name:"TooltipField"})({padding:"0.75em"});const TooltipToolbarView=Object(src_theme["a"])("div",{name:"TooltipToolbarView"})({alignItems:"center",display:"flex",flexDirection:"row",justifyContent:"center",padding:"0.5rem",":nth-of-type(1n) button":{marginRight:"0.5rem",":last-child":{marginRight:0}}});class TooltipView_Tooltip extends external_react_["Component"]{constructor(){super(...arguments);this._ref=external_react_default.a.createRef()}hasCoordinates(){var _this$props$coordinat,_this$props$coordinat2;return!!((_this$props$coordinat=this.props.coordinates)!==null&&_this$props$coordinat!==void 0&&_this$props$coordinat.x&&(_this$props$coordinat2=this.props.coordinates)!==null&&_this$props$coordinat2!==void 0&&_this$props$coordinat2.y)}getPlacement(){const offset=10;if(!this._ref.current||!this.hasCoordinates())return;const tooltipWidth=this._ref.current.clientWidth;const tooltipHeight=this._ref.current.clientHeight;const parentWidth=this._ref.current.parentElement?this._ref.current.parentElement.clientWidth:window.innerWidth;const parentHeight=this._ref.current.parentElement?this._ref.current.parentElement.clientHeight:window.innerHeight;const hasTopSpace=this.props.coordinates.y>tooltipHeight+offset;const hasBottomSpace=parentHeight-this.props.coordinates.y>tooltipHeight+offset;const hasRightSpace=parentWidth-this.props.coordinates.x>tooltipWidth+offset;const hasLeftSpace=this.props.coordinates.x>tooltipWidth+offset;const hasMiddleTopSpace=this.props.coordinates.y>tooltipHeight/2;const hasMiddleBottomSpace=parentHeight-this.props.coordinates.y>tooltipHeight/2;const hasMiddleRightSpace=parentWidth-this.props.coordinates.x>tooltipWidth/2;const hasMiddleLeftSpace=this.props.coordinates.x>tooltipWidth/2;if(hasTopSpace&&hasMiddleRightSpace&&hasMiddleLeftSpace)return TooltipPlacement.top;if(hasBottomSpace&&hasMiddleRightSpace&&hasMiddleLeftSpace)return TooltipPlacement.bottom;if(hasLeftSpace&&hasMiddleTopSpace&&hasMiddleBottomSpace)return TooltipPlacement.left;if(hasRightSpace&&hasMiddleTopSpace&&hasMiddleBottomSpace)return TooltipPlacement.right;if(hasTopSpace&&hasRightSpace)return TooltipPlacement.topRight;if(hasTopSpace&&hasLeftSpace)return TooltipPlacement.topLeft;if(hasBottomSpace&&hasRightSpace)return TooltipPlacement.bottomRight;if(hasBottomSpace&&hasLeftSpace)return TooltipPlacement.bottomLeft;if(hasBottomSpace)return TooltipPlacement.bottom;if(hasLeftSpace)return TooltipPlacement.left;if(hasRightSpace)return TooltipPlacement.right;return TooltipPlacement.top}setPlacement(){const tooltip=this._ref.current;if(!tooltip)return;this._ref.current.setAttribute("data-placement",this.getPlacement())}componentDidUpdate(){if(!this.hasCoordinates())return;return this.setPlacement()}render(){var _this$props$coordinat3,_this$props$coordinat4;const placement=this.getPlacement();return Object(jsx_runtime_["jsx"])(TooltipView,{id:"__hopara__tooltip__",ref:this._ref,_visible:this.props.isVisible,_fixed:this.props.isFixed,_placement:this.props.children?placement:undefined,style:{display:this.hasCoordinates(),left:(_this$props$coordinat3=this.props.coordinates)===null||_this$props$coordinat3===void 0?void 0:_this$props$coordinat3.x,top:(_this$props$coordinat4=this.props.coordinates)===null||_this$props$coordinat4===void 0?void 0:_this$props$coordinat4.y},children:this.props.children&&Object(jsx_runtime_["jsx"])(TooltipContent,{children:this.props.children})})}}var material_=__webpack_require__(12);var fp_=__webpack_require__(3);var icons_material_=__webpack_require__(29);class TooltipTable_TooltipTable extends external_react_default.a.PureComponent{renderUnplaceAction(key,line){return Object(jsx_runtime_["jsx"])(TooltipRow,{children:Object(jsx_runtime_["jsx"])(TooltipField,{style:{textAlign:"center"},colSpan:2,children:Object(jsx_runtime_["jsxs"])(material_["Button"],{color:"secondary",variant:"outlined",onClick:line["onUnplaceClick"],children:[Object(jsx_runtime_["jsx"])(icons_material_["DeleteOutline"],{})," Unplace"]})})},key)}renderJumpAction(key,line){return Object(jsx_runtime_["jsx"])(TooltipRow,{children:Object(jsx_runtime_["jsx"])(TooltipField,{colSpan:2,children:Object(jsx_runtime_["jsxs"])(material_["Link"],{href:"#",target:line.target,underline:"none",onClick:e=>{e.preventDefault();e.stopPropagation();return line.onClick(e)},sx:{display:"flex",alignItems:"center"},children:[line.title,line.icon!==null&&Object(jsx_runtime_["jsx"])(icons_material_["NavigateNextOutlined"],{})]})})},key)}renderLinkLine(key,line){return Object(jsx_runtime_["jsx"])(TooltipRow,{children:Object(jsx_runtime_["jsx"])(TooltipField,{colSpan:2,children:Object(jsx_runtime_["jsxs"])(material_["Link"],{href:line.href,target:line.target,underline:"none",sx:{display:"flex",alignItems:"center"},children:[line.title,Object(jsx_runtime_["jsx"])(icons_material_["NavigateNextOutlined"],{})]})})},key)}renderTableLine(key,line){return Object(jsx_runtime_["jsxs"])(TooltipRow,{children:[Object(jsx_runtime_["jsx"])(TooltipHeading,{children:line.title}),Object(jsx_runtime_["jsx"])(TooltipField,{children:line.value})]},key)}render(){const lineKeys=Object.keys(this.props.lines);if(!lineKeys.length)return null;return Object(jsx_runtime_["jsx"])(TooltipTableView,{children:Object(jsx_runtime_["jsx"])("tbody",{children:lineKeys.map((key=>{const line=this.props.lines[key];if(line["onUnplaceClick"])return this.renderUnplaceAction(key,line);else if(line["onClick"])return this.renderJumpAction(key,line);else if(line["href"])return this.renderLinkLine(key,line);else if(line["title"]&&!Object(fp_["isNil"])(line["value"]))return this.renderTableLine(key,line);return null}))})})}}var image_src=__webpack_require__(66);var Toast=__webpack_require__(27);const MAX_TEXTURE_SIZE=4096;const MAX_FILE_SIZE=2*1024*1024;function niceBytes(x){const units=["bytes","KB","MB","GB","TB","PB","EB","ZB","YB"];let l=0;let n=parseInt(x,10)||0;while(n>=1024&&++l){n=n/1024}return n.toFixed(n<10&&l>0?1:0)+" "+units[l]}const TooltipToolbar=props=>{const inputFile=Object(external_react_["useRef"])(null);return Object(jsx_runtime_["jsxs"])(TooltipToolbarView,{children:[props.onImageUpload&&Object(jsx_runtime_["jsxs"])(jsx_runtime_["Fragment"],{children:[Object(jsx_runtime_["jsx"])("input",{type:"file",id:"file",accept:image_src["b"].join(", "),ref:inputFile,style:{display:"none"},onChange:event=>{var _event$target;event.stopPropagation();event.preventDefault();const file=(event===null||event===void 0?void 0:(_event$target=event.target)===null||_event$target===void 0?void 0:_event$target.files)&&event.target.files[0];if(!file)return;if(file.size>MAX_FILE_SIZE){Object(Toast["a"])(`Image file size is too big. Max file size is ${niceBytes(MAX_FILE_SIZE)}`);return}const reader=new FileReader;reader.onload=async function(){const result=this.result;if(image_src["b"].every((mimeType=>!(result!==null&&result!==void 0&&result.includes(mimeType))))){Object(Toast["a"])("Invalid type detected. Allowed types: jpg, png and svg");return}return Object(image_src["a"])(result,{maxWidth:MAX_TEXTURE_SIZE,maxHeight:MAX_TEXTURE_SIZE}).then((imageMeta=>props.onImageUpload&&props.onImageUpload(imageMeta))).catch((err=>{console.log(err);Object(Toast["a"])(err.message)}))};reader.readAsDataURL(file)}}),Object(jsx_runtime_["jsxs"])(material_["Button"],{color:"primary",variant:"outlined",onClick:()=>{var _inputFile$current;return inputFile===null||inputFile===void 0?void 0:(_inputFile$current=inputFile.current)===null||_inputFile$current===void 0?void 0:_inputFile$current.click()},children:[Object(jsx_runtime_["jsx"])(icons_material_["UploadOutlined"],{})," Replace Image"]})]}),Object(jsx_runtime_["jsxs"])(material_["Button"],{color:"secondary",variant:"outlined",onClick:props.onUnplaceClick,children:[Object(jsx_runtime_["jsx"])(icons_material_["DeleteOutline"],{})," Unplace"]})]})};var view_TooltipToolbar=TooltipToolbar;var external_query_string_=__webpack_require__(43);var external_query_string_default=__webpack_require__.n(external_query_string_);const getLocation=href=>{const match=href.match(/^((https|http)?:\/\/(([^:/?#]*)(?::([0-9]+))?))?([/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/);return match&&{origin:match[1]||"",protocol:match[2]||"",host:match[3]||"",hostname:match[4]||"",port:match[5]||"",pathname:match[6]||"",search:match[7]||"",hash:match[8]||""}};const replaceValue=(value,row)=>{if(value.startsWith(":")){var _row$columnName;const columnName=value.replace(":","");return(_row$columnName=row[columnName])!==null&&_row$columnName!==void 0?_row$columnName:""}return value};const replacePathWithRowValues=(path,row)=>{const splittedPath=path.split("/");if(!splittedPath.length)return"";const replecedPath=splittedPath.map((value=>replaceValue(value,row)));return replecedPath.join("/")};const replaceSearchWithRowValues=(search,row)=>{if(!search)return"";const parsedSearch=external_query_string_default.a.parse(search);if(Object(fp_["isEmpty"])(parsedSearch))return"";const searchWithReplacedKeys=Object(fp_["mapKeys"])((k=>replaceValue(k,row)),parsedSearch);const searchWithReplecedValues=Object(fp_["mapValues"])((v=>replaceValue(v,row)),searchWithReplacedKeys);const searchStringifyed=external_query_string_default.a.stringify(searchWithReplecedValues);return searchStringifyed?`?${searchStringifyed}`:""};class URLStringTemplate{constructor(href){this.origin="";this.protocol="";this.host="";this.hostname="";this.port="";this.pathname="";this.search="";this.hash="";Object.assign(this,href?getLocation(href):undefined)}clone(){const cloned=new URLStringTemplate;Object.assign(cloned,this);return cloned}getValue(){return`${this.origin}${this.pathname}${this.search}${this.hash}`}getCompiledValue(row){const cloned=this.clone();cloned.pathname=replacePathWithRowValues(this.pathname,row);cloned.search=replaceSearchWithRowValues(this.search,row);return cloned.getValue()}}const createJumpLine=(row,title,action,onJumpClick)=>{const value=row?row[action.field]:undefined;if(Object(fp_["isNil"])(value))return null;return{title,onClick:()=>{onJumpClick(action,value)}}};const createLinkLine=(row,title,action)=>{var _action$target;const urlStringTemple=new URLStringTemplate(action.href);const formattedHref=urlStringTemple.getCompiledValue(row);return{title,href:formattedHref,target:(_action$target=action.target)!==null&&_action$target!==void 0?_action$target:"_top"}};const createZoomLine=(row,title,action,onZoomClick)=>({title,onClick:()=>{var _action$fixed;onZoomClick((_action$fixed=action.fixed)===null||_action$fixed===void 0?void 0:_action$fixed.value,new spatial_src["c"]({x:row._x,y:row._y,z:row._z}))}});const createActionLine=(row,actionItem,onJumpClick,onZoomClick)=>{var _actionItem$visible,_actionItem$visible$c;const testField=(_actionItem$visible=actionItem.visible)===null||_actionItem$visible===void 0?void 0:(_actionItem$visible$c=_actionItem$visible.condition)===null||_actionItem$visible$c===void 0?void 0:_actionItem$visible$c.test;if(testField&&Object(fp_["isNil"])(row[testField]))return null;if(actionItem.jump)return createJumpLine(row,actionItem.title,actionItem.jump,onJumpClick);if(actionItem.link)return createLinkLine(row,actionItem.title,actionItem.link);if(actionItem.zoom)return createZoomLine(row,actionItem.title,actionItem.zoom,onZoomClick);return null};const getRowColumn=(columns,name)=>{if(columns.has(name)){return columns.get(name)}return new dataset_src["a"]({name})};const createLine=(column,value,title)=>({title:title!==null&&title!==void 0?title:column.getLabel(),value});const createFieldLine=(row,columns,item)=>{const textEncoding=item.value.encoding.text;const column=getRowColumn(columns,textEncoding.field);return createLine(column,textEncoding.getValue(row,column===null||column===void 0?void 0:column.getType()),item.title)};const createTooltipItem=column=>{const textEncoding=new encoding_src["j"]({field:column.getName()});return{title:column.getLabel(),value:{encoding:{text:textEncoding}}}};const createTooltipFields=columns=>columns.map((column=>createTooltipItem(column)));const getTooltipFields=(table,columns)=>{if(src["a"].isDebugging()){return createTooltipFields(columns.getPrintables())}if(table===true){const tooltipColumns=columns.getPublics().getPrintables();return createTooltipFields(new dataset_src["c"](...tooltipColumns))}else if(Array.isArray(table)){return table}return[]};const getLines=(row,columns,tooltipSpec,onJumpClick,onZoomClick)=>{var _tooltipSpec$actions$,_tooltipSpec$actions;if(!tooltipSpec)return[];const tooltipFields=getTooltipFields(tooltipSpec.table,columns);const tooltipFieldLines=tooltipFields.map((field=>createFieldLine(row,columns,field)));const tooltipActionLines=(_tooltipSpec$actions$=tooltipSpec===null||tooltipSpec===void 0?void 0:(_tooltipSpec$actions=tooltipSpec.actions)===null||_tooltipSpec$actions===void 0?void 0:_tooltipSpec$actions.map((action=>createActionLine(row,action,onJumpClick,onZoomClick))))!==null&&_tooltipSpec$actions$!==void 0?_tooltipSpec$actions$:[];return[...tooltipFieldLines,...tooltipActionLines].filter((line=>!!line))};class TooltipComponent_TooltipComponent extends PureComponent["a"]{renderToolbar(){var _this$props$tooltip;if(!((_this$props$tooltip=this.props.tooltip)!==null&&_this$props$tooltip!==void 0&&_this$props$tooltip.fixed)||!this.props.isEditing)return;return Object(jsx_runtime_["jsx"])(view_TooltipToolbar,{...this.props,onImageUpload:this.props.canEditImage?this.props.onImageUpload:undefined,onUnplaceClick:()=>this.props.onUnplaceClick(this.props.tooltip)})}renderTable(){const lines=getLines(this.props.tooltip.row,this.props.columns,this.props.layer.tooltip,this.props.onJumpClick,this.props.onZoomClick);if(this.props.isEditing){lines.push({title:"Unplace row",onUnplaceClick:()=>this.props.onUnplaceClick(this.props.tooltip),icon:null})}if(!lines.length)return null;return Object(jsx_runtime_["jsx"])(TooltipTable_TooltipTable,{...this.props,lines})}getTooltipContent(){var _this$props$layer,_this$props$tooltip2;if((_this$props$layer=this.props.layer)!==null&&_this$props$layer!==void 0&&_this$props$layer.isImage()&&this.props.layer.editable&&this.props.isEditing){return this.renderToolbar()}else if((_this$props$tooltip2=this.props.tooltip)!==null&&_this$props$tooltip2!==void 0&&_this$props$tooltip2.row){return this.renderTable()}return null}render(){var _this$props$tooltip3,_this$props$tooltip4,_this$props$tooltip5;return Object(jsx_runtime_["jsx"])(TooltipView_Tooltip,{coordinates:(_this$props$tooltip3=this.props.tooltip)===null||_this$props$tooltip3===void 0?void 0:_this$props$tooltip3.getCoordinates(),isFixed:(_this$props$tooltip4=this.props.tooltip)===null||_this$props$tooltip4===void 0?void 0:_this$props$tooltip4.isFixed(),isVisible:(_this$props$tooltip5=this.props.tooltip)===null||_this$props$tooltip5===void 0?void 0:_this$props$tooltip5.visible,children:this.getTooltipContent()})}}var tooltip_TooltipComponent=TooltipComponent_TooltipComponent;function getLayer(state,currentVisualization){var _state$tooltip;if(state.layers&&(_state$tooltip=state.tooltip)!==null&&_state$tooltip!==void 0&&_state$tooltip.layerId){return state.layers.getFromVisualization(currentVisualization.id).getById(state.tooltip.layerId)}return undefined}const TooltipContainer_mapStateToProps=state=>{var _queries$findQuery;const currentVisualization=state.visualizations.getCurrent();const layer=getLayer(state,currentVisualization);const columns=(_queries$findQuery=state.queryStore.queries.findQuery(layer===null||layer===void 0?void 0:layer.getQueryKey()))===null||_queries$findQuery===void 0?void 0:_queries$findQuery.getColumns();const canEditImage=!!(layer!==null&&layer!==void 0&&layer.isType("image"));return{layer,columns,visualizations:state.visualizations,rowsetStore:state.rowsetStore,projectorStore:state.projectorStore,tooltip:state.tooltip,currentVisualization:state.visualizations.getCurrent(),isEditing:state.appStore.isEditing&&(layer===null||layer===void 0?void 0:layer.editable),canEditImage}};const TooltipContainer_mapDispatchToProps=dispatch=>TooltipActions(dispatch);const TooltipContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps,onImageUpload:dispatchProps.onImageUpload(stateProps.layer,stateProps.tooltip),onUnplaceClick:dispatchProps.onUnplaceClick(stateProps.visualizations,stateProps.rowsetStore,stateProps.projectorStore),onJumpClick:dispatchProps.onJumpClick(stateProps.visualizations),onZoomClick:dispatchProps.onZoomClick(stateProps.currentVisualization)});var TooltipContainer=Object(external_react_redux_["connect"])(TooltipContainer_mapStateToProps,TooltipContainer_mapDispatchToProps,TooltipContainer_mergeProps,{context:Store["a"]})(tooltip_TooltipComponent);var typed_=__webpack_require__(118);var typed_default=__webpack_require__.n(typed_);var external_react_map_gl_=__webpack_require__(119);var external_react_map_gl_default=__webpack_require__.n(external_react_map_gl_);var external_maplibre_gl_=__webpack_require__(120);var external_maplibre_gl_default=__webpack_require__.n(external_maplibre_gl_);var layers_=__webpack_require__(15);var engine_=__webpack_require__(94);let keyFramesCollection={};let lastRenderTime={};const getUniformsFromKeyframes=keyFramesList=>{const newUniformValues={};keyFramesList.forEach((keyFrames=>{const startValues=keyFrames.getStartData();const endValues=keyFrames.getEndData();for(const key in startValues){const startValue=startValues[key];const endValue=endValues[key];newUniformValues[key]=startValue+keyFrames.factor*(endValue-startValue)}}));return newUniformValues};class AnimationEngine_AnimationEngine{constructor(params){var _params$fps;this.layerId=void 0;this.timeline=void 0;this.animationData=void 0;this.redrawFn=void 0;this.fps=void 0;this.layerId=params.layerId;this.timeline=params.timeline;this.animationData=params.animationDataList;this.redrawFn=params.redrawFn;this.fps=(_params$fps=params.fps)!==null&&_params$fps!==void 0?_params$fps:30}createKeyFrames(){var _this$animationData;if(!((_this$animationData=this.animationData)!==null&&_this$animationData!==void 0&&_this$animationData.length))return[];const keyFramesList=[];this.animationData.forEach((animationData=>{var _animationData$channe;if(!animationData)return new engine_["KeyFrames"]([]);const sanitizedChannel=(_animationData$channe=animationData.channel)!==null&&_animationData$channe!==void 0?_animationData$channe:{};if(sanitizedChannel.repeat===-1||!sanitizedChannel.repeat){sanitizedChannel.repeat=Number.POSITIVE_INFINITY}if(!sanitizedChannel.duration){sanitizedChannel.duration=5e3}const channel=this.timeline.addChannel(animationData.channel);const frames=new Array;Object.entries(animationData.keyFrames).forEach((_ref=>{let[timePercent,values]=_ref;const time=animationData.channel.duration*parseInt(timePercent)/100;frames.push([time,values])}));const keyFrames=new engine_["KeyFrames"](frames);this.timeline.attachAnimation(keyFrames,channel);keyFramesList.push(keyFrames)}));return keyFramesList}getUniforms(){if(!this.layerId){return{}}if(!keyFramesCollection[this.layerId]){keyFramesCollection[this.layerId]=this.createKeyFrames()}return getUniformsFromKeyframes(keyFramesCollection[this.layerId])}render(){if(!this.layerId){return}if(this.timeline.animations.size===0){keyFramesCollection={};lastRenderTime={}}const timeFraction=1e3/this.fps;if(!lastRenderTime[this.layerId]||lastRenderTime[this.layerId]+timeFraction<=this.timeline.time){lastRenderTime[this.layerId]=this.timeline.time;setTimeout((()=>{window.requestAnimationFrame((()=>{this.redrawFn()}))}),timeFraction)}}}const UNIT={common:0,meters:1,pixels:2};class AnimatedCircleLayer_AnimatedCircleLayer extends layers_["ScatterplotLayer"]{draw(opts){const animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:opts.context.timeline,animationDataList:this.props.animations,redrawFn:()=>this.setNeedsRedraw()});const uniformValues=animationEngine.getUniforms();const{radiusUnits,radiusScale,radiusMinPixels,radiusMaxPixels,stroked,filled,billboard,antialiasing,lineWidthUnits,lineWidthScale,lineWidthMinPixels,lineWidthMaxPixels}=this.props;this.state.model.setUniforms(opts.uniforms).setUniforms({stroked:stroked?1:0,filled,billboard,antialiasing,radiusUnits:UNIT[radiusUnits],radiusScale,radiusMinPixels,radiusMaxPixels,lineWidthUnits:UNIT[lineWidthUnits],lineWidthScale,lineWidthMinPixels,lineWidthMaxPixels,...uniformValues}).draw();animationEngine.render()}}AnimatedCircleLayer_AnimatedCircleLayer.layerName="AnimatedCircleLayer";var core_=__webpack_require__(34);class AnimatedLayerFactory_AnimatedCompositeLayer extends core_["CompositeLayer"]{constructor(props){super(props)}renderLayers(){return this.props.layers}}AnimatedLayerFactory_AnimatedCompositeLayer.layerName="AnimatedCompositeLayer";function attributeReplacement(keyFrames,replacements,originalProps){return Object.fromEntries(Object.entries(keyFrames).map((_ref=>{let[percent,keyframe]=_ref;Object.entries(replacements).forEach((_ref2=>{let[key,fn]=_ref2;keyframe[key]=fn(keyframe,originalProps)}));return[percent,Object(fp_["omitBy"])(fp_["isUndefined"],keyframe)]})))}class AnimatedLayerFactory_AnimatedLayerFactory{constructor(StaticClass,AnimatedClass){let replacements=arguments.length>2&&arguments[2]!==undefined?arguments[2]:{};this.StaticClass=StaticClass;this.AnimatedClass=AnimatedClass;this.replacements=replacements}create(encoding,deckProps,callbacks){const animations=this.getAnimations(encoding);const layers=this.createLayers(animations,deckProps);return new AnimatedLayerFactory_AnimatedCompositeLayer({id:deckProps.id,layerId:deckProps.layerId,layers,pickable:deckProps.pickable,...callbacks})}createAnimation(encoding){var _encoding$animation,_encoding$animation2,_encoding$animation3;return{field:(_encoding$animation=encoding.animation)===null||_encoding$animation===void 0?void 0:_encoding$animation.field,keyFrames:attributeReplacement((_encoding$animation2=encoding.animation)===null||_encoding$animation2===void 0?void 0:_encoding$animation2.keyFrames,this.replacements,encoding),channel:(_encoding$animation3=encoding.animation)===null||_encoding$animation3===void 0?void 0:_encoding$animation3.channel}}static hasAnimations(encodings){var _encodings$size,_encodings$color;return!!((_encodings$size=encodings.size)!==null&&_encodings$size!==void 0&&_encodings$size.animation||(_encodings$color=encodings.color)!==null&&_encodings$color!==void 0&&_encodings$color.animation)}getAnimations(encodings){var _encodings$size2,_encodings$color2;const animations=[];if((_encodings$size2=encodings.size)!==null&&_encodings$size2!==void 0&&_encodings$size2.animation){animations.push(this.createAnimation(encodings.size))}if((_encodings$color2=encodings.color)!==null&&_encodings$color2!==void 0&&_encodings$color2.animation){animations.push(this.createAnimation(encodings.color))}return animations}createLayers(allAnimations,deckProps){const animatedData=[];const notAnimatedData=[];deckProps.data.forEach((row=>{var _allAnimations$;const field=(_allAnimations$=allAnimations[0])===null||_allAnimations$===void 0?void 0:_allAnimations$.field;if(!field||row[field]){animatedData.push(row)}else{notAnimatedData.push(row)}}));const animatedProps=Object(fp_["omitBy"])(fp_["isUndefined"],{...deckProps,id:`${deckProps.id}-animated`,data:animatedData});const notAnimatedProps=Object(fp_["omitBy"])(fp_["isUndefined"],{...deckProps,id:`${deckProps.id}-not-animated`,data:notAnimatedData});return[new this.StaticClass(notAnimatedProps),new this.AnimatedClass({...animatedProps,animations:allAnimations})]}}class RenderController{constructor(){this._shouldRender=true;this.params={}}shouldRender(){return this._shouldRender}update(params){if(!params.cacheKey){this._shouldRender=false;return}this._shouldRender=params.cacheKey!==this.params.cacheKey||this.params.selectedRow!==params.selectedRow||this.params.lastModified!==params.lastModified;this.params=params}}class DataComparator_DataComparator{constructor(){this.renderControllers={}}getRenderController(layerId){if(!this.renderControllers[layerId]){this.renderControllers[layerId]=new RenderController}return this.renderControllers[layerId]}isEqual(layerId,params){const controller=this.getRenderController(layerId);controller.update(params);if(params.encoding&&AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(params.encoding))return false;return!controller.shouldRender()}}const HIGHLIGHT_COLOR=[0,0,0,77];class BaseFactory_BaseFactory{constructor(){this.dataComparator=new DataComparator_DataComparator}getDeckProps(factoryProps,layerProps){var _factoryProps$dataCom,_this$getRows,_factoryProps$visible;const dataComparator=(_factoryProps$dataCom=factoryProps.dataComparator)!==null&&_factoryProps$dataCom!==void 0?_factoryProps$dataCom:this.dataComparator;const comparisonParams={cacheKey:(_this$getRows=this.getRows(factoryProps))===null||_this$getRows===void 0?void 0:_this$getRows.etag,lastModified:factoryProps.lastModified,selectedRow:factoryProps.selectedRow,encoding:factoryProps.encoding};const validProps={...layerProps,layerId:factoryProps.layerId,visible:(_factoryProps$visible=factoryProps.visible)===null||_factoryProps$visible===void 0?void 0:_factoryProps$visible.value,editable:factoryProps.editable,dataComparator:()=>dataComparator.isEqual(factoryProps.id,comparisonParams),stroked:!!layerProps.stroked,...factoryProps.autoHighlight&&{highlightColor:HIGHLIGHT_COLOR,autoHighlight:true}};validProps.colorEncoding=factoryProps.encoding.getColor();return Object(fp_["omitBy"])(fp_["isUndefined"],validProps)}getColorUpdateTrigger(color,visibleRows){const triggers=new Array;triggers.push(color===null||color===void 0?void 0:color.createdTimestamp,visibleRows===null||visibleRows===void 0?void 0:visibleRows.etag);return triggers}getPositionUpdateTrigger(position,editing){const triggers=[Math.random()];if(editing){triggers.push((()=>({})))}return triggers}getSizeUpdateTrigger(size){const triggers=new Array;triggers.push(size===null||size===void 0?void 0:size.createdTimestamp);return triggers}getIconUpdateTrigger(icon){const triggers=new Array;triggers.push(icon===null||icon===void 0?void 0:icon.createdTimestamp);return triggers}getPositionAccessor(props){const xColumn="_x";const yColumn="_y";return row=>{var _props$selectedRow,_props$selectedRow$up,_props$selectedRow2,_props$selectedRow2$u,_props$selectedRow3;const tempRow=props.selectedRow&&((_props$selectedRow=props.selectedRow)===null||_props$selectedRow===void 0?void 0:(_props$selectedRow$up=_props$selectedRow.updatingRow)===null||_props$selectedRow$up===void 0?void 0:_props$selectedRow$up._id)!==undefined&&((_props$selectedRow2=props.selectedRow)===null||_props$selectedRow2===void 0?void 0:(_props$selectedRow2$u=_props$selectedRow2.updatingRow)===null||_props$selectedRow2$u===void 0?void 0:_props$selectedRow2$u._id)===row._id?(_props$selectedRow3=props.selectedRow)===null||_props$selectedRow3===void 0?void 0:_props$selectedRow3.updatingRow:undefined;const rowToPlace=tempRow?tempRow:row;return[Number(rowToPlace[xColumn]),Number(rowToPlace[yColumn])]}}getRows(props){var _props$visible,_props$visible$condit,_props$visible2;if(!props.rows){return new dataset_src["g"]}let rows=props.rows;const conditionField=(_props$visible=props.visible)===null||_props$visible===void 0?void 0:(_props$visible$condit=_props$visible.condition)===null||_props$visible$condit===void 0?void 0:_props$visible$condit.test;if(conditionField){rows=rows.filter((row=>row[conditionField]))}if(!props.transform||!props.transform.cluster||!((_props$visible2=props.visible)!==null&&_props$visible2!==void 0&&_props$visible2.value))return rows;return props.transform.cluster.apply(rows,props.columns,props.zoom)}getColorAccessor(columns,color,rows,visibleRows,rowTranslator){return Object(encoding_src["l"])(color,rows||new dataset_src["g"],visibleRows||new dataset_src["g"],columns,rowTranslator)}getColorRange(color){return Object(encoding_src["o"])(color.scale.scheme||color.scale.range,color.scale.reverse,color.opacity).colors}getSizeAccessor(props){return Object(encoding_src["p"])(props)}getTranslatedRow(rowTranslator,originalObject){if(!rowTranslator){return{row:originalObject}}return{row:rowTranslator.translate(originalObject)}}getInfoCoordinate(coordinate){if(!coordinate||!coordinate[0]||!coordinate[1])return;return new spatial_src["c"]({x:coordinate[0],y:coordinate[1]})}getRowIndex(rows,row){var _rows$findIndex;if(!rows)return;const rowIndex=(_rows$findIndex=rows.findIndex((r=>r===row)))!==null&&_rows$findIndex!==void 0?_rows$findIndex:-1;return rowIndex>=0?rowIndex:undefined}isGeoJSON(info){return info.layer instanceof layers_["GeoJsonLayer"]}getCallbackInfo(info,props,editHandler){var _info$layer,_info$layer$props,_this$getRowIndex;if(!(info!==null&&info!==void 0&&(_info$layer=info.layer)!==null&&_info$layer!==void 0&&(_info$layer$props=_info$layer.props)!==null&&_info$layer$props!==void 0&&_info$layer$props.pickable))return;const rowIndex=this.isGeoJSON(info)?info.index:(_this$getRowIndex=this.getRowIndex(props.rows,info.object))!==null&&_this$getRowIndex!==void 0?_this$getRowIndex:info.index;const row=props.rows?props.rows[rowIndex]:info.object;const coordinates=this.getInfoCoordinate(info.coordinate);const updatedData=info.updatedData?info.updatedData:{_x:coordinates===null||coordinates===void 0?void 0:coordinates.x,_y:coordinates===null||coordinates===void 0?void 0:coordinates.y};return{row,rowIndex,rowsetId:props.rowsetId,layerId:props.layerId,updatedData:editHandler?updatedData:undefined,coordinates,pixel:this.getInfoCoordinate(info.pixel),editable:props.editable}}getDeckLayerCallbacks(props){const callbacks=props.layerCallbacks;return{onHover:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onHover)&&callbacks.onHover(this.getCallbackInfo(info,props)),onClick:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onClick)&&callbacks.onClick(this.getCallbackInfo(info,props)),onDragStart:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onDragStart)&&callbacks.onDragStart(this.getCallbackInfo(info,props,true)),onDrag:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onDrag)&&callbacks.onDrag(this.getCallbackInfo(info,props,true)),onDragEnd:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onDragEnd)&&callbacks.onDragEnd(this.getCallbackInfo(info,props,true)),onEdit:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onEdit)&&callbacks.onEdit(this.getCallbackInfo(info,props,true)),onEditEnd:info=>(callbacks===null||callbacks===void 0?void 0:callbacks.onEditEnd)&&callbacks.onEditEnd(this.getCallbackInfo(info,props,true))}}}class StrokableFactory_StrokableFactory extends BaseFactory_BaseFactory{getColorStrokeProps(color,rows,visibleRows,columns,rowTranslator){if(!color){return{}}const colorAccessor=super.getColorAccessor(columns,color,rows,visibleRows,rowTranslator);return{stroked:!!colorAccessor,getLineColor:colorAccessor}}getStrokeSizeProps(visibleRows,columns,size,rowTranslator){if(!size){return{}}return{getLineWidth:super.getSizeAccessor({encoding:size,visibleRows,columns,rowTranslator}),lineWidthUnits:size===null||size===void 0?void 0:size.getUnits(),stroked:true}}}const DIAMETER_TO_RADIUS=.5;const animatedLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["ScatterplotLayer"],AnimatedCircleLayer_AnimatedCircleLayer,{radiusScale:kProps=>kProps.scale,radiusMinPixels:(kProps,props)=>props.getMinPixels&&props.getMinPixels(kProps.scale*DIAMETER_TO_RADIUS),radiusMaxPixels:(kProps,props)=>props.getMaxPixels&&props.getMaxPixels(kProps.scale*DIAMETER_TO_RADIUS)});class CircleFactory_CircleFactory extends StrokableFactory_StrokableFactory{getStrokeProps(props){var _props$encoding;const sizeProps=this.getStrokeSizeProps(props.visibleRows,props.columns,props.encoding.strokeSize);const colorProps=this.getColorStrokeProps((_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.strokeColor,props.rows,props.visibleRows,props.columns);if(sizeProps.stroked&&colorProps.stroked){return{...sizeProps,...colorProps,stroked:true}}}create(props){var _props$encoding2,_props$encoding3,_props$encoding4,_props$encoding4$size,_props$encoding5,_props$encoding5$size,_props$encoding6,_props$encoding6$size;const deckProps=super.getDeckProps(props,{id:props.id,data:super.getRows(props),getFillColor:super.getColorAccessor(props.columns,(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.color,props.rows,props.visibleRows),getPosition:super.getPositionAccessor(props),getRadius:super.getSizeAccessor({encoding:(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.size,factor:DIAMETER_TO_RADIUS,visibleRows:props.visibleRows,columns:props.columns}),updateTriggers:{getFillColor:Math.random(),getRadius:Math.random(),getPosition:Math.random()},radiusUnits:(_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$size=_props$encoding4.size)===null||_props$encoding4$size===void 0?void 0:_props$encoding4$size.getUnits(),...this.getStrokeProps(props),pickable:props.pickable,radiusMaxPixels:(_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:(_props$encoding5$size=_props$encoding5.size)===null||_props$encoding5$size===void 0?void 0:_props$encoding5$size.getMaxPixels(DIAMETER_TO_RADIUS),radiusMinPixels:(_props$encoding6=props.encoding)===null||_props$encoding6===void 0?void 0:(_props$encoding6$size=_props$encoding6.size)===null||_props$encoding6$size===void 0?void 0:_props$encoding6$size.getMinPixels(DIAMETER_TO_RADIUS),...super.getDeckLayerCallbacks(props)});if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return animatedLayerFactory.create(props.encoding,deckProps,super.getDeckLayerCallbacks(props))}else{return new layers_["ScatterplotLayer"](deckProps)}}}var aggregation_layers_=__webpack_require__(121);const getWeight=encoding=>row=>{if(encoding&&encoding.intensity.field){if(Object(fp_["isNil"])(row[encoding.intensity.field])){return 1}return Math.abs(parseFloat(row[encoding.intensity.field]))}return 1};const previousRows={};class HeatmapFactory_HeatmapFactory extends BaseFactory_BaseFactory{getWeightUpdateTrigger(heatmap){const triggers=new Array;triggers.push(heatmap===null||heatmap===void 0?void 0:heatmap.createdTimestamp);return triggers}create(props){var _props$encoding,_props$encoding2,_props$encoding$heatm,_props$encoding$heatm2;let rows;if(!(props!==null&&props!==void 0&&props.rows)){rows=previousRows[props.layerId]}else{previousRows[props.layerId]=props===null||props===void 0?void 0:props.rows;rows=props===null||props===void 0?void 0:props.rows}const deckProps=super.getDeckProps(props,{id:props.id,data:rows,colorRange:super.getColorRange((_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.color),getPosition:super.getPositionAccessor(props),getWeight:getWeight((_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.heatmap),weightsTextureSize:src["b"].hasParam("heatmapTextureSize")?src["b"].getParam("heatmapTextureSize"):512,debounceTimeout:src["b"].hasParam("heatmapDebounce")?src["b"].getParam("heatmapDebounce"):0,intensity:(_props$encoding$heatm=props.encoding.heatmap)===null||_props$encoding$heatm===void 0?void 0:_props$encoding$heatm.intensity.multiplier,radiusPixels:(_props$encoding$heatm2=props.encoding.heatmap)===null||_props$encoding$heatm2===void 0?void 0:_props$encoding$heatm2.radius,updateTriggers:{getWeight:this.getWeightUpdateTrigger(props.encoding.heatmap)},...super.getDeckLayerCallbacks(props)});return new aggregation_layers_["HeatmapLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],deckProps))}}var config_src=__webpack_require__(17);const CustomIcons=["apple","centrifuge","deflection","desktop","electric","image-placeholder","incubator","ip-address","laptop","linux","load-balancer","macaddress","machine","marker","microchip","mobile","person","pressure","refrigerator","server","stove","tag","temperature-and-vibration","wifi-excellent","wifi-fair","wifi-good","wifi-off","wifi-weak","windows"];const MaterialIcons=["10k","10mp","11mp","123","12mp","13mp","14mp","15mp","16mp","17mp","18-up-rating","18mp","19mp","1k-plus","1k","1x-mobiledata","20mp","21mp","22mp","23mp","24mp","2k-plus","2k","2mp","30fps-select","30fps","360","3d-rotation","3g-mobiledata","3k-plus","3k","3mp","3p","4g-mobiledata","4g-plus-mobiledata","4k-plus","4k","4mp","5g","5k-plus","5k","5mp","6-ft-apart","60fps-select","60fps","6k-plus","6k","6mp","7k-plus","7k","7mp","8k-plus","8k","8mp","9k-plus","9k","9mp","abc","ac-unit","access-alarm","access-alarms","access-time-filled","access-time","accessibility-new","accessibility","accessible-forward","accessible","account-balance-wallet","account-balance","account-box","account-circle","account-tree","ad-units","adb","add-a-photo","add-alarm","add-alert","add-box","add-business","add-call","add-card","add-chart","add-circle-outline","add-circle","add-comment","add-home-work","add-home","add-ic-call","add-link","add-location-alt","add-location","add-moderator","add-photo-alternate","add-reaction","add-road","add-shopping-cart","add-task","add-to-drive","add-to-home-screen","add-to-photos","add-to-queue","add","addchart","adf-scanner","adjust","admin-panel-settings","ads-click","agriculture","air","airline-seat-flat-angled","airline-seat-flat","airline-seat-individual-suite","airline-seat-legroom-extra","airline-seat-legroom-normal","airline-seat-legroom-reduced","airline-seat-recline-extra","airline-seat-recline-normal","airline-stops","airlines","airplane-ticket","airplanemode-active","airplanemode-inactive","airplay","airport-shuttle","alarm-add","alarm-off","alarm-on","alarm","album","align-horizontal-center","align-horizontal-left","align-horizontal-right","align-vertical-bottom","align-vertical-center","align-vertical-top","all-inbox","all-inclusive","all-out","alt-route","alternate-email","amp-stories","analytics","anchor","android","animation","announcement","aod","apartment","api","app-blocking","app-registration","app-settings-alt","app-shortcut","approval","apps-outage","apps","architecture","archive","area-chart","arrow-back-ios-new","arrow-back-ios","arrow-back","arrow-circle-down","arrow-circle-left","arrow-circle-right","arrow-circle-up","arrow-downward","arrow-drop-down-circle","arrow-drop-down","arrow-drop-up","arrow-forward-ios","arrow-forward","arrow-left","arrow-outward","arrow-right-alt","arrow-right","arrow-upward","art-track","article","aspect-ratio","assessment","assignment-ind","assignment-late","assignment-return","assignment-returned","assignment-turned-in","assignment","assist-walker","assistant-direction","assistant-navigation","assistant-photo","assistant","assured-workload","atm","attach-email","attach-file","attach-money","attachment","attractions","attribution","audio-file","audiotrack","auto-awesome-mosaic","auto-awesome-motion","auto-awesome","auto-delete","auto-fix-high","auto-fix-normal","auto-fix-off","auto-graph","auto-mode","auto-stories","autofps-select","autorenew","av-timer","baby-changing-station","back-hand","backpack","backspace","backup-table","backup","badge","bakery-dining","balance","balcony","ballot","bar-chart","batch-prediction","bathroom","bathtub","battery-0-bar","battery-1-bar","battery-2-bar","battery-3-bar","battery-4-bar","battery-5-bar","battery-6-bar","battery-alert","battery-charging-full","battery-full","battery-saver","battery-std","battery-unknown","beach-access","bed","bedroom-baby","bedroom-child","bedroom-parent","bedtime-off","bedtime","beenhere","bento","bike-scooter","biotech","blender","blind","blinds-closed","blinds","block-flipped","block","bloodtype","bluetooth-audio","bluetooth-connected","bluetooth-disabled","bluetooth-drive","bluetooth-searching","bluetooth","blur-circular","blur-linear","blur-off","blur-on","bolt","book-online","book","bookmark-add","bookmark-added","bookmark-border","bookmark-remove","bookmark","bookmarks","border-all","border-bottom","border-clear","border-color","border-horizontal","border-inner","border-left","border-outer","border-right","border-style","border-top","border-vertical","boy","branding-watermark","breakfast-dining","brightness-1","brightness-2","brightness-3","brightness-4","brightness-5","brightness-6","brightness-7","brightness-auto","brightness-high","brightness-low","brightness-medium","broadcast-on-home","broadcast-on-personal","broken-image","browse-gallery","browser-not-supported","browser-updated","brunch-dining","brush","bubble-chart","bug-report","build-circle","build","bungalow","burst-mode","bus-alert","business-center","business","cabin","cable","cached","cake","calculate","calendar-month","calendar-today","calendar-view-day","calendar-view-month","calendar-view-week","call-end","call-made","call-merge","call-missed-outgoing","call-missed","call-received","call-split","call-to-action","call","camera-alt","camera-enhance","camera-front","camera-indoor","camera-outdoor","camera-rear","camera-roll","camera","cameraswitch","campaign","cancel-presentation","cancel-schedule-send","cancel","candlestick-chart","car-crash","car-rental","car-repair","card-giftcard","card-membership","card-travel","carpenter","cases","casino","cast-connected","cast-for-education","cast","castle","catching-pokemon","category","celebration","cell-tower","cell-wifi","center-focus-strong","center-focus-weak","chair-alt","chair","chalet","change-circle","change-history","charging-station","chat-bubble-outline","chat-bubble","chat","check-box-outline-blank","check-box","check-circle-outline","check-circle","check","checklist-rtl","checklist","checkroom","chevron-left","chevron-right","child-care","child-friendly","chrome-reader-mode","church","circle-notifications","circle","class","clean-hands","cleaning-services","clear-all","clear","close-fullscreen","close","closed-caption-disabled","closed-caption-off","closed-caption","cloud-circle","cloud-done","cloud-download","cloud-off","cloud-queue","cloud-sync","cloud-upload","cloud","cloudy-snowing","co-present","co2","code-off","code","coffee-maker","coffee","collections-bookmark","collections","color-lens","colorize","comment-bank","comment","comments-disabled","commit","commute","compare-arrows","compare","compass-calibration","compost","compress","computer","confirmation-number","connect-without-contact","connected-tv","connecting-airports","construction","contact-emergency","contact-mail","contact-page","contact-phone","contact-support","contactless","contacts","content-copy","content-cut","content-paste-go","content-paste-off","content-paste-search","content-paste","contrast","control-camera","control-point-duplicate","control-point","cookie","copy-all","copyright","coronavirus","corporate-fare","cottage","countertops","create-new-folder","create","credit-card-off","credit-card","credit-score","crib","crisis-alert","crop-16-9","crop-3-2","crop-5-4","crop-7-5","crop-din","crop-free","crop-landscape","crop-original","crop-portrait","crop-rotate","crop-square","crop","cruelty-free","css","currency-bitcoin","currency-exchange","currency-franc","currency-lira","currency-pound","currency-ruble","currency-rupee","currency-yen","currency-yuan","curtains-closed","curtains","cyclone","dangerous","dark-mode","dashboard-customize","dashboard","data-array","data-exploration","data-object","data-saver-off","data-saver-on","data-thresholding","data-usage","dataset-linked","dataset","date-range","deblur","deck","dehaze","delete-forever","delete-outline","delete-sweep","delete","delivery-dining","density-large","density-medium","density-small","departure-board","description","deselect","design-services","desk","desktop-access-disabled","desktop-mac","desktop-windows","details","developer-board-off","developer-board","developer-mode","device-hub","device-thermostat","device-unknown","devices-fold","devices-other","devices","dialer-sip","dialpad","diamond","difference","dining","dinner-dining","directions-bike","directions-boat-filled","directions-boat","directions-bus-filled","directions-bus","directions-car-filled","directions-car","directions-off","directions-railway-filled","directions-railway","directions-run","directions-subway-filled","directions-subway","directions-transit-filled","directions-transit","directions-walk","directions","dirty-lens","disabled-by-default","disabled-visible","disc-full","discount","display-settings","diversity-1","diversity-2","diversity-3","dns","do-disturb-alt","do-disturb-off","do-disturb-on","do-disturb","do-not-disturb-alt","do-not-disturb-off","do-not-disturb-on-total-silence","do-not-disturb-on","do-not-disturb","do-not-step","do-not-touch","dock","document-scanner","domain-add","domain-disabled","domain-verification","domain","done-all","done-outline","done","donut-large","donut-small","door-back","door-front","door-sliding","doorbell","double-arrow","downhill-skiing","download-done","download-for-offline","download","downloading","drafts","drag-handle","drag-indicator","draw","drive-eta","drive-file-move-outline","drive-file-move-rtl","drive-file-move","drive-file-rename-outline","drive-folder-upload","dry-cleaning","dry","duo","dvr","dynamic-feed","dynamic-form","e-mobiledata","earbuds-battery","earbuds","east","eco","edgesensor-high","edgesensor-low","edit-attributes","edit-calendar","edit-location-alt","edit-location","edit-note","edit-notifications","edit-off","edit-road","edit","egg-alt","egg","eject","elderly-woman","elderly","electric-bike","electric-bolt","electric-car","electric-meter","electric-moped","electric-rickshaw","electric-scooter","electrical-services","elevator","email","emergency-recording","emergency-share","emergency","emoji-emotions","emoji-events","emoji-flags","emoji-food-beverage","emoji-nature","emoji-objects","emoji-people","emoji-symbols","emoji-transportation","energy-savings-leaf","engineering","enhanced-encryption","equalizer","error-outline","error","escalator-warning","escalator","euro-symbol","euro","ev-station","event-available","event-busy","event-note","event-repeat","event-seat","event","exit-to-app","expand-circle-down","expand-less","expand-more","expand","explicit","explore-off","explore","exposure-neg-1","exposure-neg-2","exposure-plus-1","exposure-plus-2","exposure-zero","exposure","extension-off","extension","face-2","face-3","face-4","face-5","face-6","face-retouching-natural","face-retouching-off","face-unlock","face","facebook","fact-check","factory","family-restroom","fast-forward","fast-rewind","fastfood","favorite-border","favorite","fax","featured-play-list","featured-video","feed","feedback","female","fence","festival","fiber-dvr","fiber-manual-record","fiber-new","fiber-pin","fiber-smart-record","file-copy","file-download-done","file-download-off","file-download","file-open","file-present","file-upload","filter-1","filter-2","filter-3","filter-4","filter-5","filter-6","filter-7","filter-8","filter-9-plus","filter-9","filter-alt-off","filter-alt","filter-b-and-w","filter-center-focus","filter-drama","filter-frames","filter-hdr","filter-list-alt","filter-list-off","filter-list","filter-none","filter-tilt-shift","filter-vintage","filter","find-in-page","find-replace","fingerprint","fire-extinguisher","fire-hydrant-alt","fire-truck","fireplace","first-page","fit-screen","fitbit","fitness-center","flag-circle","flag","flaky","flare","flash-auto","flash-off","flash-on","flashlight-off","flashlight-on","flatware","flight-class","flight-land","flight-takeoff","flight","flip-camera-android","flip-camera-ios","flip-to-back","flip-to-front","flip","flood","flourescent","flutter-dash","fmd-bad","fmd-good","foggy","folder-copy","folder-delete","folder-off","folder-open","folder-shared","folder-special","folder-zip","folder","follow-the-signs","font-download-off","font-download","food-bank","forest","fork-left","fork-right","format-align-center","format-align-justify","format-align-left","format-align-right","format-bold","format-clear","format-color-fill","format-color-reset","format-color-text","format-indent-decrease","format-indent-increase","format-italic","format-line-spacing","format-list-bulleted","format-list-numbered-rtl","format-list-numbered","format-overline","format-paint","format-quote","format-shapes","format-size","format-strikethrough","format-textdirection-l-to-r","format-textdirection-r-to-l","format-underlined","fort","forum","forward-10","forward-30","forward-5","forward-to-inbox","forward","foundation","free-breakfast","free-cancellation","front-hand","fullscreen-exit","fullscreen","functions","g-mobiledata","g-translate","gamepad","games","garage","gas-meter","gavel","generating-tokens","gesture","get-app","gif-box","gif","girl","gite","golf-course","gpp-bad","gpp-good","gpp-maybe","gps-fixed","gps-not-fixed","gps-off","grade","gradient","grading","grain","graphic-eq","grass","grid-3x3","grid-4x4","grid-goldenratio","grid-off","grid-on","grid-view","group-add","group-off","group-remove","group-work","group","groups-2","groups-3","groups","h-mobiledata","h-plus-mobiledata","hail","handshake","handyman","hardware","hd","hdr-auto-select","hdr-auto","hdr-enhanced-select","hdr-off-select","hdr-off","hdr-on-select","hdr-on","hdr-plus","hdr-strong","hdr-weak","headphones-battery","headphones","headset-mic","headset-off","headset","healing","health-and-safety","hearing-disabled","hearing","heart-broken","heat-pump","height","help-center","help-outline","help","hevc","hexagon","hide-image","hide-source","high-quality","highlight-alt","highlight-off","highlight","hiking","history-edu","history-toggle-off","history","hive","hls-off","hls","holiday-village","home-filled","home-max","home-mini","home-repair-service","home-work","home","horizontal-distribute","horizontal-rule","horizontal-split","hot-tub","hotel-class","hotel","hourglass-bottom","hourglass-disabled","hourglass-empty","hourglass-full","hourglass-top","house-siding","house","houseboat","how-to-reg","how-to-vote","html","http","https","hub","hvac","ice-skating","icecream","image-aspect-ratio","image-not-supported","image-search","image","imagesearch-roller","import-contacts","import-export","important-devices","inbox","incomplete-circle","indeterminate-check-box","info-outline","info","input","insert-chart-outlined","insert-chart","insert-comment","insert-drive-file","insert-emoticon","insert-invitation","insert-link","insert-page-break","insert-photo","insights","install-desktop","install-mobile","integration-instructions","interests","interpreter-mode","inventory-2","inventory","invert-colors-off","invert-colors","ios-share","iron","iso","javascript","join-full","join-inner","join-left","join-right","kayaking","kebab-dining","key-off","key","keyboard-alt","keyboard-arrow-down","keyboard-arrow-left","keyboard-arrow-right","keyboard-arrow-up","keyboard-backspace","keyboard-capslock","keyboard-command-key","keyboard-control-key","keyboard-double-arrow-down","keyboard-double-arrow-left","keyboard-double-arrow-right","keyboard-double-arrow-up","keyboard-hide","keyboard-option-key","keyboard-return","keyboard-tab","keyboard-voice","keyboard","king-bed","kitchen","kitesurfing","label-important-outline","label-important","label-off","label-outline","label","lan","landscape","landslide","language","laptop-chromebook","laptop-mac","laptop-windows","laptop","last-page","launch","layers-clear","layers","leaderboard","leak-add","leak-remove","legend-toggle","lens-blur","lens","library-add-check","library-add","library-books","library-music","light-mode","light","lightbulb-circle","lightbulb-outline","lightbulb","line-axis","line-style","line-weight","linear-scale","link-off","link","linked-camera","liquor","list-alt","list","live-help","live-tv","living","local-activity","local-airport","local-atm","local-bar","local-cafe","local-car-wash","local-convenience-store","local-dining","local-drink","local-fire-department","local-florist","local-gas-station","local-grocery-store","local-hospital","local-hotel","local-laundry-service","local-library","local-mall","local-movies","local-offer","local-parking","local-pharmacy","local-phone","local-pizza","local-play","local-police","local-post-office","local-printshop","local-see","local-shipping","local-taxi","location-city","location-disabled","location-off","location-on","location-pin","location-searching","lock-clock","lock-open","lock-outline","lock-person","lock-reset","lock","login","logo-dev","logout","looks-3","looks-4","looks-5","looks-6","looks-one","looks-two","looks","loop","loupe","low-priority","loyalty","lte-mobiledata","lte-plus-mobiledata","luggage","lunch-dining","lyrics","macro-off","mail-lock","mail-outline","mail","male","man-2","man-3","man-4","man","manage-accounts","manage-history","manage-search","map","maps-home-work","maps-ugc","margin","mark-as-unread","mark-chat-read","mark-chat-unread","mark-email-read","mark-email-unread","mark-unread-chat-alt","markunread-mailbox","markunread","masks","maximize","media-bluetooth-off","media-bluetooth-on","mediation","medical-information","medical-services","medication-liquid","medication","meeting-room","memory","menu-book","menu-open","menu","merge-type","merge","message","mic-external-off","mic-external-on","mic-none","mic-off","mic","microwave","military-tech","minimize","minor-crash","miscellaneous-services","missed-video-call","mms","mobile-friendly","mobile-off","mobile-screen-share","mobiledata-off","mode-comment","mode-edit-outline","mode-edit","mode-fan-off","mode-night","mode-of-travel","mode-standby","mode","model-training","monetization-on","money-off-csred","money-off","money","monitor-heart","monitor-weight","monitor","monochrome-photos","mood-bad","mood","moped","more-horiz","more-time","more-vert","more","mosque","motion-photos-auto","motion-photos-off","motion-photos-on","motion-photos-pause","motion-photos-paused","mouse","move-down","move-to-inbox","move-up","movie-creation","movie-filter","movie","moving","mp","multiline-chart","multiple-stop","museum","music-note","music-off","music-video","my-location","nat","nature-people","nature","navigate-before","navigate-next","navigation","near-me-disabled","near-me","nearby-error","nearby-off","nest-cam-wired-stand","network-cell","network-check","network-locked","network-ping","network-wifi-1-bar","network-wifi-2-bar","network-wifi-3-bar","network-wifi","new-label","new-releases","newspaper","next-plan","next-week","nfc","night-shelter","nightlife","nightlight-round","nightlight","nights-stay","no-accounts","no-adult-content","no-backpack","no-cell","no-crash","no-drinks","no-encryption-gmailerrorred","no-encryption","no-flash","no-food","no-luggage","no-meals-ouline","no-meals","no-meeting-room","no-photography","no-sim","no-stroller","no-transfer","noise-aware","noise-control-off","nordic-walking","north-east","north-west","north","not-accessible","not-interested","not-listed-location","not-started","note-add","note-alt","note","notes","notification-add","notification-important","notifications-active","notifications-none","notifications-off","notifications-paused","notifications","numbers","offline-bolt","offline-pin","offline-share","oil-barrel","on-device-training","ondemand-video","online-prediction","opacity","open-in-browser","open-in-full","open-in-new-off","open-in-new","open-with","other-houses","outbond","outbound","outbox","outdoor-grill","outgoing-mail","outlet","outlined-flag","output","padding","pages","pageview","paid","palette","pan-tool-alt","pan-tool","panorama-fish-eye","panorama-horizontal-select","panorama-horizontal","panorama-photosphere-select","panorama-photosphere","panorama-vertical-select","panorama-vertical","panorama-wide-angle-select","panorama-wide-angle","panorama","paragliding","park","party-mode","password","pattern","pause-circle-filled","pause-circle-outline","pause-circle","pause-presentation","pause","payment","payments","pedal-bike","pending-actions","pending","pentagon","people-alt","people-outline","people","percent","perm-camera-mic","perm-contact-calendar","perm-data-setting","perm-device-information","perm-identity","perm-media","perm-phone-msg","perm-scan-wifi","person-2","person-3","person-4","person-add-alt-1","person-add-alt","person-add-disabled","person-add","person-off","person-outline","person-pin-circle","person-pin","person-remove-alt-1","person-remove","person-search","person","personal-injury","personal-video","pest-control-rodent","pest-control","pets","phishing","phone-android","phone-bluetooth-speaker","phone-callback","phone-disabled","phone-enabled","phone-forwarded","phone-in-talk","phone-iphone","phone-locked","phone-missed","phone-paused","phone","phonelink-erase","phonelink-lock","phonelink-off","phonelink-ring","phonelink-setup","phonelink","photo-album","photo-camera-back","photo-camera-front","photo-camera","photo-filter","photo-library","photo-size-select-actual","photo-size-select-large","photo-size-select-small","photo","php","piano-off","piano","picture-as-pdf","picture-in-picture-alt","picture-in-picture","pie-chart-outline","pie-chart-outlined","pie-chart","pin-drop","pin-end","pin-invoke","pin","pinch","pivot-table-chart","pix","place","plagiarism","play-arrow","play-circle-filled","play-circle-outline","play-circle","play-disabled","play-for-work","play-lesson","playlist-add-check-circle","playlist-add-check","playlist-add-circle","playlist-add","playlist-play","playlist-remove","plumbing","plus-one","podcasts","point-of-sale","policy","poll","polyline","polymer","pool","portable-wifi-off","portrait","post-add","power-input","power-off","power-settings-new","power","precision-manufacturing","pregnant-woman","present-to-all","preview","price-change","price-check","print-disabled","print","priority-high","privacy-tip","private-connectivity","production-quantity-limits","propane-tank","propane","psychology-alt","psychology","public-off","public","publish","published-with-changes","punch-clock","push-pin","qr-code-2","qr-code-scanner","qr-code","query-builder","query-stats","question-answer","question-mark","queue-music","queue-play-next","queue","quickreply","quiz","r-mobiledata","radar","radio-button-checked","radio-button-unchecked","radio","railway-alert","ramen-dining","ramp-left","ramp-right","rate-review","raw-off","raw-on","read-more","real-estate-agent","receipt-long","receipt","recent-actors","recommend","record-voice-over","rectangle","recycling","redeem","redo","reduce-capacity","refresh","remember-me","remove-circle-outline","remove-circle","remove-done","remove-from-queue","remove-moderator","remove-red-eye","remove-road","remove-shopping-cart","remove","reorder","repartition","repeat-on","repeat-one-on","repeat-one","repeat","replay-10","replay-30","replay-5","replay-circle-filled","replay","reply-all","reply","report-gmailerrorred","report-off","report-problem","report","request-page","request-quote","reset-tv","restart-alt","restaurant-menu","restaurant","restore-from-trash","restore-page","restore","reviews","rice-bowl","ring-volume","rocket-launch","rocket","roller-shades-closed","roller-shades","roller-skating","roofing","room-preferences","room-service","room","rotate-90-degrees-ccw","rotate-90-degrees-cw","rotate-left","rotate-right","roundabout-left","roundabout-right","rounded-corner","route","router","rowing","rss-feed","rsvp","rtt","rule-folder","rule","run-circle","running-with-errors","rv-hookup","safety-check","safety-divider","sailing","sanitizer","satellite-alt","satellite","save-alt","save-as","save","saved-search","savings","scale","scanner","scatter-plot","schedule-send","schedule","schema","school","science","score","scoreboard","screen-lock-landscape","screen-lock-portrait","screen-lock-rotation","screen-rotation-alt","screen-rotation","screen-search-desktop","screen-share","screenshot-monitor","screenshot","scuba-diving","sd-card-alert","sd-card","sd-storage","sd","search-off","search","security-update-good","security-update-warning","security-update","security","segment","select-all","self-improvement","sell","send-and-archive","send-time-extension","send-to-mobile","send","sensor-door","sensor-occupied","sensor-window","sensors-off","sensors","sentiment-dissatisfied","sentiment-neutral","sentiment-satisfied-alt","sentiment-satisfied","sentiment-very-dissatisfied","sentiment-very-satisfied","set-meal","settings-accessibility","settings-applications","settings-backup-restore","settings-bluetooth","settings-brightness","settings-cell","settings-ethernet","settings-input-antenna","settings-input-component","settings-input-composite","settings-input-hdmi","settings-input-svideo","settings-overscan","settings-phone","settings-power","settings-remote","settings-suggest","settings-system-daydream","settings-voice","settings","severe-cold","shape-line","share-location","share","shield-moon","shield","shop-2","shop-two","shop","shopping-bag","shopping-basket","shopping-cart-checkout","shopping-cart","short-text","shortcut","show-chart","shower","shuffle-on","shuffle","shutter-speed","sick","sign-language","signal-cellular-0-bar","signal-cellular-4-bar","signal-cellular-alt-1-bar","signal-cellular-alt-2-bar","signal-cellular-alt","signal-cellular-connected-no-internet-0-bar","signal-cellular-connected-no-internet-4-bar","signal-cellular-no-sim","signal-cellular-nodata","signal-cellular-null","signal-cellular-off","signal-wifi-0-bar","signal-wifi-4-bar-lock","signal-wifi-4-bar","signal-wifi-bad","signal-wifi-connected-no-internet-4","signal-wifi-off","signal-wifi-statusbar-4-bar","signal-wifi-statusbar-connected-no-internet-4","signal-wifi-statusbar-null","signpost","sim-card-alert","sim-card-download","sim-card","single-bed","sip","skateboarding","skip-next","skip-previous","sledding","slideshow","slow-motion-video","smart-button","smart-display","smart-screen","smart-toy","smartphone","smoke-free","smoking-rooms","sms-failed","sms","snippet-folder","snooze","snowboarding","snowing","snowmobile","snowshoeing","soap","social-distance","solar-power","sort-by-alpha","sort","sos","soup-kitchen","source","south-america","south-east","south-west","south","spa","space-bar","space-dashboard","spatial-audio-off","spatial-audio","spatial-tracking","speaker-group","speaker-notes-off","speaker-notes","speaker-phone","speaker","speed","spellcheck","splitscreen","spoke","sports-bar","sports-baseball","sports-basketball","sports-cricket","sports-esports","sports-football","sports-golf","sports-gymnastics","sports-handball","sports-hockey","sports-kabaddi","sports-martial-arts","sports-mma","sports-motorsports","sports-rugby","sports-score","sports-soccer","sports-tennis","sports-volleyball","sports","square-foot","square","ssid-chart","stacked-bar-chart","stacked-line-chart","stadium","stairs","star-border-purple500","star-border","star-half","star-outline","star-purple500","star-rate","star","stars","start","stay-current-landscape","stay-current-portrait","stay-primary-landscape","stay-primary-portrait","sticky-note-2","stop-circle","stop-screen-share","stop","storage","store-mall-directory","store","storefront","storm","straight","straighten","stream","streetview","strikethrough-s","stroller","style","subdirectory-arrow-left","subdirectory-arrow-right","subject","subscript","subscriptions","subtitles-off","subtitles","subway","summarize","sunny-snowing","sunny","superscript","supervised-user-circle","supervisor-account","support-agent","support","surfing","surround-sound","swap-calls","swap-horiz","swap-horizontal-circle","swap-vert","swap-vertical-circle","swipe-down-alt","swipe-down","swipe-left-alt","swipe-left","swipe-right-alt","swipe-right","swipe-up-alt","swipe-up","swipe-vertical","swipe","switch-access-shortcut-add","switch-access-shortcut","switch-account","switch-camera","switch-left","switch-right","switch-video","synagogue","sync-alt","sync-disabled","sync-lock","sync-problem","sync","system-security-update-good","system-security-update-warning","system-security-update","system-update-alt","system-update","tab-unselected","tab","table-bar","table-chart","table-restaurant","table-rows","table-view","tablet-android","tablet-mac","tablet","tag-faces","tag","takeout-dining","tap-and-play","tapas","task-alt","task","taxi-alert","temple-buddhist","temple-hindu","terminal","terrain","text-decrease","text-fields","text-format","text-increase","text-rotate-up","text-rotate-vertical","text-rotation-angledown","text-rotation-angleup","text-rotation-down","text-rotation-none","text-snippet","textsms","texture","theater-comedy","theaters","thermostat-auto","thermostat","thermostat-vibration","thumb-down-alt","thumb-down-off-alt","thumb-down","thumb-up-alt","thumb-up-off-alt","thumb-up","thumbs-up-down","thunderstorm","time-to-leave","timelapse","timeline","timer-10-select","timer-10","timer-3-select","timer-3","timer-off","timer","tips-and-updates","tire-repair","title","toc","today","toggle-off","toggle-on","token","toll","tonality","topic","tornado","touch-app","tour","toys","track-changes","traffic","train","tram","transcribe","transfer-within-a-station","transform","transgender","transit-enterexit","translate","travel-explore","trending-down","trending-flat","trending-up","trip-origin","troubleshoot","try","tsunami","tty","tune","tungsten","turn-left","turn-right","turn-sharp-left","turn-sharp-right","turn-slight-left","turn-slight-right","turned-in-not","turned-in","tv-off","tv","two-wheeler","type-specimen","u-turn-left","u-turn-right","umbrella","unarchive","undo","unfold-less-double","unfold-less","unfold-more-double","unfold-more","unpublished","unsubscribe","upcoming","update-disabled","update","upgrade","upload-file","upload","usb-off","usb","vaccines","vape-free","vaping-rooms","verified-user","verified","vertical-align-bottom","vertical-align-center","vertical-align-top","vertical-distribute","vertical-shades-closed","vertical-shades","vertical-split","vibration","video-call","video-camera-back","video-camera-front","video-file","video-label","video-library","video-settings","video-stable","videocam-off","videocam","videogame-asset-off","videogame-asset","view-agenda","view-array","view-carousel","view-column","view-comfy-alt","view-comfy","view-compact-alt","view-compact","view-cozy","view-day","view-headline","view-in-ar","view-kanban","view-list","view-module","view-quilt","view-sidebar","view-stream","view-timeline","view-week","vignette","villa","visibility-off","visibility","voice-chat","voice-over-off","voicemail","volcano","volume-down-alt","volume-down","volume-mute","volume-off","volume-up","volunteer-activism","vpn-key-off","vpn-key","vpn-lock","vrpano","wallet","wallpaper","warehouse","warning-amber","warning","wash","watch-later","watch-off","watch","water-damage","water-drop","water","waterfall-chart","waves","waving-hand","wb-auto","wb-cloudy","wb-incandescent","wb-iridescent","wb-shade","wb-sunny","wb-twighlight","wb-twilight","wc","web-asset-off","web-asset","web-stories","web","webhook","weekend","west","whatsapp","whatshot","wheelchair-pickup","where-to-vote","widgets","width-full","width-normal","width-wide","wifi-1-bar","wifi-2-bar","wifi-calling-3","wifi-calling","wifi-channel","wifi-find","wifi-lock","wifi-off","wifi-password","wifi-protected-setup","wifi-tethering-error-rounded","wifi-tethering-error","wifi-tethering-off","wifi-tethering","wifi","wind-power","window","wine-bar","woman-2","woman","work-history","work-off","work-outline","work","workspace-premium","workspaces-filled","workspaces-outline","workspaces","wrap-text","wrong-location","wysiwyg","yard","youtube-searched-for","zoom-in-map","zoom-in","zoom-out-map","zoom-out"];const FuelicsIcons=["fuelics-dieselTank","fuelics-dumpster","fuelics-parkingSpace","fuelics-powerMeter","fuelics-septicTank","fuelics-waterMeter","fuelics-waterTank"];const customMappings={marker:{width:480,height:640,anchorY:640},refrigerator:{width:480,height:640},stove:{width:480,height:550},centrifuge:{width:480,height:550},incubator:{width:480,height:550},machine:{width:640,height:640},"temperature-and-vibration":{width:480,height:480},deflection:{width:480,height:480},desktop:{width:256,height:256},laptop:{width:256,height:256}};const generateIconURL=(iconName,type)=>`${config_src["a"].getValue("IMAGES_API_ADDRESS")}/icons/${type?type+"/":""}${iconName}.png`;const generateCustomMappings=()=>CustomIcons.reduce(((mapping,iconName)=>({...mapping,[iconName]:{url:generateIconURL(iconName,"custom"),width:customMappings[iconName]&&customMappings[iconName].width?customMappings[iconName].width:240,height:customMappings[iconName]&&customMappings[iconName].height?customMappings[iconName].height:240,anchorY:customMappings[iconName]&&customMappings[iconName].anchorY?customMappings[iconName].anchorY:undefined,mask:true}})),{});const generateMaterialMappings=()=>MaterialIcons.reduce(((mapping,iconName)=>({...mapping,[iconName]:{url:generateIconURL(iconName,"material"),width:240,height:240,mask:true}})),{});const generateFuelicsMappings=()=>FuelicsIcons.reduce(((mapping,iconName)=>({...mapping,[iconName]:{url:generateIconURL(iconName,"fuelics"),width:640,height:640,mask:true}})),{});const RasterMappings={...generateMaterialMappings(),...generateCustomMappings(),...generateFuelicsMappings()};class AnimatedIconLayer_AnimatedIconLayer extends layers_["IconLayer"]{draw(_ref){let{uniforms,context}=_ref;const animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:context.timeline,animationDataList:this.props.animations,redrawFn:()=>this.setNeedsRedraw()});const uniformValues=animationEngine.getUniforms();const{sizeScale,sizeMinPixels,sizeMaxPixels,sizeUnits,billboard,alphaCutoff}=this.props;const{iconManager}=this.state;const iconsTexture=iconManager.getTexture();if(iconsTexture){this.state.model.setUniforms(uniforms).setUniforms({iconsTexture,iconsTextureDim:[iconsTexture.width,iconsTexture.height],sizeUnits:UNIT[sizeUnits],sizeScale,sizeMinPixels,sizeMaxPixels,billboard,alphaCutoff,...uniformValues}).draw()}animationEngine.render()}}AnimatedIconLayer_AnimatedIconLayer.layerName="AnimatedIconLayer";const IconFactory_animatedLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["IconLayer"],AnimatedIconLayer_AnimatedIconLayer,{sizeScale:kProps=>kProps.scale,sizeMinPixels:(kProps,props)=>props.getMinPixels&&props.getMinPixels(kProps.scale),sizeMaxPixels:(kProps,props)=>props.getMaxPixels&&props.getMaxPixels(kProps.scale)});class IconFactory_IconFactory extends BaseFactory_BaseFactory{create(props){var _props$encoding$size,_props$encoding,_props$encoding$size2;const iconAccessor=new encoding_src["g"]({iconStore:RasterMappings});const deckProps=super.getDeckProps(props,{id:`${props.id}`,data:super.getRows(props),pickable:props.pickable,sizeUnits:(_props$encoding$size=props.encoding.size)===null||_props$encoding$size===void 0?void 0:_props$encoding$size.getUnits(),getSize:Object(encoding_src["p"])({encoding:props.encoding.size,columns:props.columns}),getColor:super.getColorAccessor(props.columns,(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.color,props.rows,props.visibleRows),getPosition:super.getPositionAccessor(props),getIcon:row=>iconAccessor.getIcon(props.encoding.icon,row),updateTriggers:{getColor:super.getColorUpdateTrigger(props.encoding.color,props.visibleRows),getSize:super.getSizeUpdateTrigger(props.encoding.size),getPosition:super.getPositionUpdateTrigger(props.encoding.position,props.editing),getIcon:super.getIconUpdateTrigger(props.encoding.icon)},alphaCutoff:0,...super.getDeckLayerCallbacks(props)});if((_props$encoding$size2=props.encoding.size)!==null&&_props$encoding$size2!==void 0&&_props$encoding$size2.isCommon()){if(props.encoding.size.getMinPixels()){deckProps.sizeMinPixels=props.encoding.size.getMinPixels()}if(props.encoding.size.getMaxPixels()){deckProps.sizeMaxPixels=props.encoding.size.getMaxPixels()}}if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return IconFactory_animatedLayerFactory.create(props.encoding,deckProps,super.getDeckLayerCallbacks(props))}else{return new layers_["IconLayer"](deckProps)}}}var helpers_=__webpack_require__(23);var centroid_=__webpack_require__(42);var centroid_default=__webpack_require__.n(centroid_);var rhumb_bearing_=__webpack_require__(122);var rhumb_bearing_default=__webpack_require__.n(rhumb_bearing_);var rhumb_distance_=__webpack_require__(123);var rhumb_distance_default=__webpack_require__.n(rhumb_distance_);var transform_translate_=__webpack_require__(124);var transform_translate_default=__webpack_require__.n(transform_translate_);var external_deck_gl_=__webpack_require__(82);var external_nebula_gl_=__webpack_require__(35);var bbox_polygon_=__webpack_require__(125);var bbox_polygon_default=__webpack_require__.n(bbox_polygon_);var bbox_=__webpack_require__(126);var bbox_default=__webpack_require__.n(bbox_);var meta_=__webpack_require__(127);var polygon_to_line_=__webpack_require__(128);var polygon_to_line_default=__webpack_require__.n(polygon_to_line_);class ImageScaleMode_ImageScaleMode extends external_nebula_gl_["ScaleMode"]{getGuides(props){this._cornerGuidePoints=[];const selectedGeometry=this.getSelectedFeaturesAsFeatureCollection(props);if(this._isSinglePointGeometrySelected(selectedGeometry)){return{type:"FeatureCollection",features:[]}}const boundingBox=bbox_polygon_default()(bbox_default()(selectedGeometry));if(boundingBox.properties)boundingBox.properties.mode="scale";const cornerGuidePoints=[];Object(meta_["coordEach"])(selectedGeometry,((coord,coordIndex)=>{if(coordIndex<4){const cornerPoint=Object(helpers_["point"])(coord,{guideType:"editHandle",editHandleType:"scale",positionIndexes:[coordIndex]});cornerGuidePoints.push(cornerPoint)}}));this._cornerGuidePoints=cornerGuidePoints;const lines=selectedGeometry.features.length&&polygon_to_line_default()(selectedGeometry.features[0]);let collection=[];if(lines)collection.push(lines);collection=[...collection,...this._cornerGuidePoints];return Object(helpers_["featureCollection"])(collection)}}var invariant_=__webpack_require__(64);var transform_rotate_=__webpack_require__(77);var transform_rotate_default=__webpack_require__.n(transform_rotate_);function getMiddlePoint(p1,p2){const x1=p1[0];const x2=p2[0];const y1=p1[1];const y2=p2[1];const maxX=Math.max(x1,x2);const maxY=Math.max(y1,y2);const minX=Math.min(x1,x2);const minY=Math.min(y1,y2);return new spatial_src["d"](minX+(maxX-minX)/2,minY+(maxY-minY)/2)}class ImageRotateMode_ImageRotateMode extends external_nebula_gl_["RotateMode"]{getGuides(props){const selectedGeometry=this._geometryBeingRotated||this.getSelectedFeaturesAsFeatureCollection(props);if(!selectedGeometry.features.length)return Object(helpers_["featureCollection"])([]);if(this._isRotating){return Object(helpers_["featureCollection"])([centroid_default()(selectedGeometry)])}const coords=Object(invariant_["getCoords"])(selectedGeometry.features[0]);const topLeft=coords[0][1];const topRight=coords[0][2];const topCenter=getMiddlePoint(topLeft,topRight);const pointToRotate=Object(helpers_["point"])(topLeft);const topCenterHigh=transform_rotate_default()(pointToRotate,90,{pivot:topCenter});const topCenterMiddle=getMiddlePoint(topCenter,Object(invariant_["getCoord"])(topCenterHigh));const topCenterLine=Object(helpers_["lineString"])([topCenterMiddle,topCenter]);const rotateHandle=Object(helpers_["point"])(topCenterMiddle,{guideType:"editHandle",editHandleType:"rotate"});return Object(helpers_["featureCollection"])([rotateHandle,topCenterLine])}}class ImageTransformMode_ImageTransformMode extends external_nebula_gl_["CompositeMode"]{constructor(){super([new external_nebula_gl_["TranslateMode"],new ImageScaleMode_ImageScaleMode,new ImageRotateMode_ImageRotateMode])}handlePointerMove(event,props){let updatedCursor=null;super.handlePointerMove(event,{...props,onUpdateCursor:cursor=>{updatedCursor=cursor||updatedCursor}});props.onUpdateCursor(updatedCursor)}handleStartDragging(event,props){let scaleMode=null;let translateMode=null;const filteredModes=[];this._modes.forEach((mode=>{if(mode instanceof external_nebula_gl_["TranslateMode"]){translateMode=mode}else{if(mode instanceof ImageScaleMode_ImageScaleMode){scaleMode=mode}filteredModes.push(mode)}}));if(scaleMode instanceof ImageScaleMode_ImageScaleMode&&!scaleMode.isEditHandleSelected()){filteredModes.push(translateMode)}filteredModes.filter(Boolean).forEach((mode=>mode.handleStartDragging(event,props)))}}class ImageLayer_ImageLayer extends external_deck_gl_["CompositeLayer"]{getCentroid(bounds){const poly=Object(helpers_["polygon"])([bounds]);const center=centroid_default()(poly);return center.geometry.coordinates}getBoundsColumnField(){var _this$props$bounds;return(_this$props$bounds=this.props.bounds)===null||_this$props$bounds===void 0?void 0:_this$props$bounds.field}getBounds(props,row){var _props$selectedRow,_props$selectedRow2,_props$selectedRow3;if(!this.props.bounds)return undefined;if(this.props.editable&&(_props$selectedRow=props.selectedRow)!==null&&_props$selectedRow!==void 0&&_props$selectedRow.updatingRow&&(_props$selectedRow2=props.selectedRow)!==null&&_props$selectedRow2!==void 0&&_props$selectedRow2.updatingRow._id&&((_props$selectedRow3=props.selectedRow)===null||_props$selectedRow3===void 0?void 0:_props$selectedRow3.updatingRow._id)===row._id){return props.selectedRow.updatingRow[this.getBoundsColumnField()]}return row[this.getBoundsColumnField()]}getImageColumnField(){var _this$props$image;return(_this$props$image=this.props.image)===null||_this$props$image===void 0?void 0:_this$props$image.field}getImage(props,row){if(!this.props.image)return undefined;return row[this.getImageColumnField()]}createEditLayer(id,bounds,selected,boundsColumn,index){return new external_nebula_gl_["EditableGeoJsonLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],{id:`${id}-editable`,layerId:this.props.layerId,data:spatial_src["a"].fromPlain(bounds).toFeatureCollection(),mode:ImageTransformMode_ImageTransformMode,visible:this.props.visible&&selected,pickable:true,boundsColumn,selected,selectedFeatureIndexes:[0],getFillColor:[0,0,0,0],getLineWidth:0,getLineColor:[0,0,0,0],getEditHandlePointRadius:60,onEdit:event=>{var _event$updatedData;const bounds=(_event$updatedData=event.updatedData)===null||_event$updatedData===void 0?void 0:_event$updatedData.features[0].geometry.coordinates[0];if(!bounds)return;const coordinate=this.getCentroid(bounds);const pixel=this.context.viewport.project(coordinate);return this.props.onEdit&&this.props.onEdit({layer:{props:{pickable:this.props.pickable}},layerId:this.props.layerId,rowsetId:this.props.rowsetId,index,boundsColumn,editType:event.editType,bounds,coordinate,pixel})}}))}createBitmapLayer(id,image,bounds,selected,boundsColumn,index){return new layers_["BitmapLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],{id:`${id}-image`,layerId:this.props.layerId,image:image||RasterMappings["image-placeholder"].url,bounds,boundsColumn,selected,bitmap:null,visible:this.props.visible,pickable:true,index}))}renderLayers(){var _props$rows;if(!this.props.bounds){return[]}const layers=(_props$rows=this.props.rows)===null||_props$rows===void 0?void 0:_props$rows.map(((row,index)=>{var _row$_id,_this$props$selectedR,_this$props$selectedR2,_this$props$selectedR3;const id=`${this.props.id}-${(_row$_id=row._id)!==null&&_row$_id!==void 0?_row$_id:index}`;const bounds=this.getBounds(this.props,row);const boundsColumn=this.getBoundsColumnField();const image=this.getImage(this.props,row);const selected=row._id&&this.props.layerId===((_this$props$selectedR=this.props.selectedRow)===null||_this$props$selectedR===void 0?void 0:_this$props$selectedR.layerId)&&true&&row._id===((_this$props$selectedR2=this.props.selectedRow)===null||_this$props$selectedR2===void 0?void 0:(_this$props$selectedR3=_this$props$selectedR2.updatingRow)===null||_this$props$selectedR3===void 0?void 0:_this$props$selectedR3._id);const subLayers=[];if(this.props.editable&&this.props.editing&&!this.props.dragging){subLayers.push(this.createEditLayer(id,bounds,selected,boundsColumn,index))}subLayers.push(this.createBitmapLayer(id,image,bounds,selected,boundsColumn,index));return subLayers}));return layers.flat()}}ImageLayer_ImageLayer.layerName="HoparaImageLayer";class ImageFactory_ImageFactory extends BaseFactory_BaseFactory{getTranslatedBounds(bounds,newCoordinate){const poly=Object(helpers_["polygon"])([bounds]);const center=centroid_default()(poly);const from=Object(helpers_["point"])([center.geometry.coordinates[0],center.geometry.coordinates[1]]);const to=Object(helpers_["point"])(newCoordinate);const bearing=rhumb_bearing_default()(from,to);const distance=rhumb_distance_default()(from,to);const translated=transform_translate_default()(poly,distance,bearing);return translated.geometry.coordinates[0]}create(props){var _props$encoding,_props$encoding2;const callbacks=this.getDeckLayerCallbacks(props);const deckProps=super.getDeckProps(props,{id:props.id,bounds:(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.bounds,image:(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.image,rowsetId:props.rowsetId,rows:props.rows,editing:!!props.editing,dragging:!!props.dragging,selectedRow:props.selectedRow,pickable:props.pickable,...callbacks,onHover:(info,event)=>callbacks.onHover&&callbacks.onHover({...info,index:info.sourceLayer.props.index},event),onClick:(info,event)=>callbacks.onClick&&callbacks.onClick({...info,index:info.sourceLayer.props.index},event),onDragStart:(info,event)=>{if(!info.sourceLayer.props.selected||info.sourceLayer instanceof external_nebula_gl_["EditableGeoJsonLayer"])return;return callbacks.onDragStart&&callbacks.onDragStart({...info},event)},onDrag:(info,event)=>{if(!info.sourceLayer.props.selected||!props.editing||info.sourceLayer instanceof external_nebula_gl_["EditableGeoJsonLayer"])return;const{index,bounds,boundsColumn}=info.sourceLayer.props;if(!bounds)return;const newBounds=this.getTranslatedBounds(bounds,info.coordinate);const updatedData={[boundsColumn]:newBounds};return callbacks.onDrag&&callbacks.onDrag({...info,index,updatedData},event)},onDragEnd:(info,event)=>{if(!info.sourceLayer.props.selected||!props.editing)return;const{index,bounds,boundsColumn}=info.sourceLayer.props;if(!bounds)return;const newBounds=this.getTranslatedBounds(bounds,info.coordinate);const updatedData={[boundsColumn]:newBounds};return callbacks.onDragEnd&&callbacks.onDragEnd({...info,index,updatedData},event)},onEdit:info=>{const{bounds,coordinate,boundsColumn,editType}=info;const updatedData={[boundsColumn]:bounds,_x:coordinate[0],_y:coordinate[1]};if(["translated","scaled","rotated","extruded"].indexOf(editType)>-1){return callbacks.onEditEnd&&callbacks.onEditEnd({...info,coordinate,updatedData},{})}return callbacks.onEdit&&callbacks.onEdit({...info,coordinate,updatedData},{})}});return new ImageLayer_ImageLayer(deckProps)}}var core_typed_=__webpack_require__(129);const functions=`\nvec4 hsla2rgba(vec4 hsla) {\n float h = hsla.x;\n float s = hsla.y;\n float l = hsla.z;\n float a = hsla.w;\n float c = (1.0 - abs(2.0 * l - 1.0)) * s;\n float x = c * (1.0 - abs(mod(h / 60.0, 2.0) - 1.0));\n float m = l - 0.5 * c;\n vec3 rgb;\n if (h < 60.0) {\n rgb = vec3(c, x, 0.0);\n } else if (h < 120.0) {\n rgb = vec3(x, c, 0.0);\n } else if (h < 180.0) {\n rgb = vec3(0.0, c, x);\n } else if (h < 240.0) {\n rgb = vec3(0.0, x, c);\n } else if (h < 300.0) {\n rgb = vec3(x, 0.0, c);\n } else {\n rgb = vec3(c, 0.0, x);\n }\n return vec4(rgb + m, a);\n}\n\nvec4 rgba2hsla(vec4 rgba) {\n float r = rgba.x;\n float g = rgba.y;\n float b = rgba.z;\n float a = rgba.w;\n float max = max(r, max(g, b));\n float min = min(r, min(g, b));\n float h = 0.0;\n float s = 0.0;\n float l = (max + min) / 2.0;\n float d = max - min;\n if (max != min) {\n if (max == r) {\n h = 60.0 * (g - b) / d;\n } else if (max == g) {\n h = 60.0 * (b - r) / d + 120.0;\n } else {\n h = 60.0 * (r - g) / d + 240.0;\n }\n if (l > 0.5) {\n s = d / (2.0 - max - min);\n } else {\n s = d / (max + min);\n }\n }\n return vec4(h, s, l, a);\n}\n\n// function that receives a rgba color and returns a new rgba color with lightness increased by 20%\nvec4 lighten(vec4 color, float lightness) {\n float h, s, l, a;\n vec4 hsla = rgba2hsla(color);\n h = hsla.x;\n s = hsla.y;\n l = hsla.z;\n a = hsla.w;\n l = l + lightness;\n if (l > 1.0) {\n l = 1.0;\n }\n return hsla2rgba(vec4(h, s, l, a));\n}\n`;class LineLayer_LineLayer extends layers_["PathLayer"]{initializeState(){super.initializeState({});const attributeManager=this.getAttributeManager();attributeManager.addInstanced({timestamps:{size:1,accessor:"getTimestamps",shaderAttributes:{instanceTimestamps:{vertexOffset:0},instanceNextTimestamps:{vertexOffset:1}}},isAnimated:{size:1,accessor:"getIsAnimated",shaderAttributes:{instanceIsAnimated:{vertexOffset:0}}}})}draw(opts){let uniformValues={};let animationEngine;if(this.props.animationType){animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:opts.context.timeline,animationDataList:this.props.animations,redrawFn:()=>this.setNeedsRedraw()});uniformValues=animationEngine.getUniforms()}const{jointRounded,capRounded,billboard,miterLimit,widthUnits,widthScale,widthMinPixels,widthMaxPixels}=this.props;this.state.model.setUniforms(opts.uniforms).setUniforms({jointType:Number(jointRounded),capType:Number(capRounded),billboard,widthUnits:core_typed_["UNIT"][widthUnits],widthScale,miterLimit,widthMinPixels,widthMaxPixels,segmentLength:this.props.segmentLength/this.props.speed,...uniformValues}).draw();if(animationEngine){animationEngine.render()}}getShaders(){const shaders=super.getShaders();shaders.inject={"vs:#decl":`\n uniform float segmentLength;\n attribute float instanceTimestamps;\n attribute float instanceNextTimestamps;\n attribute float instanceIsAnimated;\n varying float vTime;\n varying float segmentLengthReal;\n varying float pathLengthCommons;\n varying float pathLengthPixel;\n varying float totalTime;\n varying float isAnimated;\n `,"vs:#main-end":`\n vTime = instanceTimestamps + (instanceNextTimestamps - instanceTimestamps) * vPathPosition.y / vPathLength;\n pathLengthPixel = vPathLength;\n pathLengthCommons = project_pixel_size(vPathLength);\n totalTime = instanceNextTimestamps - instanceTimestamps;\n isAnimated = instanceIsAnimated;\n \n `,"fs:#decl":`\n uniform float currentTime;\n uniform float segmentLength;\n varying float vTime;\n varying float pathLengthCommons;\n varying float pathLengthPixel;\n varying float totalTime;\n varying float isAnimated;\n ${functions}\n \n `,"fs:DECKGL_FILTER_COLOR":`\n int currentStep = 0;\n if (isAnimated > 0.0) { \n currentStep = int((currentTime - vTime) / segmentLength);\n } else {\n currentStep = int(vTime / segmentLength);\n }\n if(segmentLength > 0.0) {\n if (mod(float(currentStep), 2.0) > 0.0) {\n vec4 rgba = lighten(vec4(color.r, color.g, color.b, color.a), 0.1);\n color.r = rgba.x;\n color.g = rgba.y;\n color.b = rgba.z;\n color.a = rgba.a;\n }\n }\n `};return shaders}}LineLayer_LineLayer.layerName="LineLayer";function maxBy(array,field){return array.reduce(((max,item)=>{if(max[field]<item[field]){return item}return max}))}function deepMax(array){let max=0;array.forEach((item=>{if(Array.isArray(item)){const candidate=deepMax(item);if(candidate>max){max=candidate}}else{if(item>max){max=item}}}));return max}var LineEncoding=__webpack_require__(61);var distance_=__webpack_require__(130);var distance_default=__webpack_require__.n(distance_);const SPEED_KM_PER_SECOND=1;const getRowDistances=(row,pathField)=>{const route=row[pathField];const distances=route.map(((_,index)=>{const point1=route[index];const point2=route[index+1];if(!point2){return}return distance_default()(point1,point2,{units:"kilometers"})})).filter((distance=>!!distance));let accDistance=0;return distances.map((distance=>{accDistance+=distance;return accDistance}))};const getTimelineData=(data,pathField)=>{if(!pathField){return{durationMs:0,timestampFn:()=>undefined}}const allDistances=data.map((row=>getRowDistances(row,pathField)));const maxDistance=deepMax(allDistances);const durationMs=1e3*(maxDistance/SPEED_KM_PER_SECOND);return{durationMs,timestampFn:row=>{const distances=getRowDistances(row,pathField);return[0,...distances.map((distance=>1e3*(distance/SPEED_KM_PER_SECOND)))]}}};class LineFactory_LineFactory extends BaseFactory_BaseFactory{create(props){var _props$encoding,_props$encoding$line,_props$encoding3,_props$encoding$line2,_props$encoding4,_props$encoding4$size,_props$encoding5,_props$encoding$line3,_props$encoding$color,_props$encoding$color2,_props$encoding6,_props$encoding6$size;const pathField=(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:(_props$encoding$line=_props$encoding.line)===null||_props$encoding$line===void 0?void 0:_props$encoding$line.field;const data=super.getRows(props);const timelineData=getTimelineData(data,pathField);const deckProps=super.getDeckProps(props,{id:props.id,layerId:props.layerId,data,getPath:row=>pathField?row[pathField]:undefined,getIsAnimated:row=>{var _props$encoding2,_props$encoding2$colo,_props$encoding2$colo2;const animationField=(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:(_props$encoding2$colo=_props$encoding2.color)===null||_props$encoding2$colo===void 0?void 0:(_props$encoding2$colo2=_props$encoding2$colo.animation)===null||_props$encoding2$colo2===void 0?void 0:_props$encoding2$colo2.field;if(!animationField){return[1]}return row[animationField]?[1]:[0]},getColor:this.getColorAccessor(props.columns,(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.color,props.rows,props.visibleRows),capRounded:((_props$encoding$line2=props.encoding.line)===null||_props$encoding$line2===void 0?void 0:_props$encoding$line2.cap)===LineEncoding["a"].ROUND,jointRounded:true,widthUnits:(_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$size=_props$encoding4.size)===null||_props$encoding4$size===void 0?void 0:_props$encoding4$size.getUnits(),getWidth:super.getSizeAccessor({encoding:(_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:_props$encoding5.size,factor:.5,visibleRows:props.visibleRows,columns:props.columns}),speed:SPEED_KM_PER_SECOND,segmentLength:(_props$encoding$line3=props.encoding.line)===null||_props$encoding$line3===void 0?void 0:_props$encoding$line3.segmentLength,updateTrigger:{getColor:super.getColorUpdateTrigger(props.encoding.color,props.visibleRows),getWidth:super.getSizeUpdateTrigger(props.encoding.size),getPath:super.getPositionUpdateTrigger(props.encoding.position,props.editing)},pickable:true,getTimestamps:timelineData.timestampFn,animationType:(_props$encoding$color=props.encoding.color)===null||_props$encoding$color===void 0?void 0:(_props$encoding$color2=_props$encoding$color.animation)===null||_props$encoding$color2===void 0?void 0:_props$encoding$color2.type,animations:[{channel:{duration:timelineData.durationMs,repeat:Number.POSITIVE_INFINITY},keyFrames:{"0%":{currentTime:0},"100%":{currentTime:timelineData.durationMs}}}],...super.getDeckLayerCallbacks(props)});if((_props$encoding6=props.encoding)!==null&&_props$encoding6!==void 0&&(_props$encoding6$size=_props$encoding6.size)!==null&&_props$encoding6$size!==void 0&&_props$encoding6$size.isCommon()){var _props$encoding7,_props$encoding7$size,_props$encoding8,_props$encoding8$size;deckProps.widthMinPixels=(_props$encoding7=props.encoding)===null||_props$encoding7===void 0?void 0:(_props$encoding7$size=_props$encoding7.size)===null||_props$encoding7$size===void 0?void 0:_props$encoding7$size.getMinPixels();deckProps.widthMaxPixels=(_props$encoding8=props.encoding)===null||_props$encoding8===void 0?void 0:(_props$encoding8$size=_props$encoding8.size)===null||_props$encoding8$size===void 0?void 0:_props$encoding8$size.getMaxPixels()}return new LineLayer_LineLayer(Object(fp_["omitBy"])(fp_["isUndefined"],deckProps))}}class RowTranslator{constructor(rows,fieldName){this.rows=void 0;this.fieldName=void 0;this.rows=rows;this.fieldName=fieldName}translate(field){return this.rows.find((row=>row[this.fieldName]===field))}}const layerIdEtagDict={};const etagChanged=props=>{var _props$rows2;if(!layerIdEtagDict[props.layerId]){var _props$rows;layerIdEtagDict[props.layerId]=(_props$rows=props.rows)===null||_props$rows===void 0?void 0:_props$rows.etag;return true}if(layerIdEtagDict[props.layerId]!==((_props$rows2=props.rows)===null||_props$rows2===void 0?void 0:_props$rows2.etag)){var _props$rows3;layerIdEtagDict[props.layerId]=(_props$rows3=props.rows)===null||_props$rows3===void 0?void 0:_props$rows3.etag;return true}return false};function decorateTransitionProps(viewLayerProps,deckProps,colorAccessorName){var _deckProps$updateTrig;const props={...deckProps,id:deckProps.id,[colorAccessorName]:row=>{var _ref;const accessor=deckProps[colorAccessorName];let color=(_ref=typeof accessor==="function"?accessor(row):accessor)!==null&&_ref!==void 0?_ref:[0,0,0,0];if(!deckProps.visible){color=[color[0],color[1],color[2],0]}return color},updateTriggers:{...deckProps.updateTriggers,[colorAccessorName]:[...(_deckProps$updateTrig=deckProps.updateTriggers[colorAccessorName])!==null&&_deckProps$updateTrig!==void 0?_deckProps$updateTrig:[],deckProps.visible]},pickable:deckProps.visible?deckProps.pickable:false,visible:true};if(etagChanged(viewLayerProps)){return props}return Object(fp_["omitBy"])(fp_["isUndefined"],{...props,transitions:{[colorAccessorName]:{duration:300}}})}const GL={LINE_STRIP:3,TRIANGLE_FAN:6};const getSolidPolygonLayerClass=animationDataList=>class AnimatedSolidPolygonLayer extends layers_["SolidPolygonLayer"]{draw(opts){const animationEngine=new AnimationEngine_AnimationEngine({layerId:this.props.id,timeline:opts.context.timeline,animationDataList,redrawFn:()=>{this.setNeedsRedraw()}});const uniformValues=animationEngine.getUniforms();const{extruded,filled,wireframe,elevationScale}=this.props;const{topModel,sideModel,polygonTesselator}=this.state;const renderUniforms={...opts.uniforms,extruded:Boolean(extruded),elevationScale,...uniformValues};if(sideModel){sideModel.setInstanceCount(polygonTesselator.instanceCount-1);sideModel.setUniforms(renderUniforms);if(wireframe){sideModel.setDrawMode(GL.LINE_STRIP);sideModel.setUniforms({isWireframe:true}).draw()}if(filled){sideModel.setDrawMode(GL.TRIANGLE_FAN);sideModel.setUniforms({isWireframe:false}).draw()}}if(topModel){topModel.setVertexCount(polygonTesselator.vertexCount);topModel.setUniforms(renderUniforms).draw()}animationEngine.render()}};class AnimatedPolygonLayer_AnimatedGeoJsonLayer extends layers_["GeoJsonLayer"]{getSubLayerClass(subLayerId,DefaultLayerClass){const{_subLayerProps:overridingProps}=this.props;const geoJsonProps=this.props;const AnimatedSolidPolygonLayer=getSolidPolygonLayerClass(geoJsonProps.animations);return overridingProps&&overridingProps[subLayerId]&&overridingProps[subLayerId].type||AnimatedSolidPolygonLayer}}AnimatedPolygonLayer_AnimatedGeoJsonLayer.layerName="AnimatedGeoJsonLayer";class AnimatedPolygonLayer_AnimatedPolygonLayer extends layers_["PolygonLayer"]{getSubLayerClass(subLayerId,DefaultLayerClass){const{_subLayerProps:overridingProps}=this.props;const geoJsonProps=this.props;const AnimatedSolidPolygonLayer=getSolidPolygonLayerClass(geoJsonProps.animations);return overridingProps&&overridingProps[subLayerId]&&overridingProps[subLayerId].type||AnimatedSolidPolygonLayer}}AnimatedPolygonLayer_AnimatedPolygonLayer.layerName="AnimatedPolygonLayer";const animatedGeoJsonLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["GeoJsonLayer"],AnimatedPolygonLayer_AnimatedGeoJsonLayer);const animatedPolygonLayerFactory=new AnimatedLayerFactory_AnimatedLayerFactory(layers_["PolygonLayer"],AnimatedPolygonLayer_AnimatedPolygonLayer);class PolygonFactory_PolygonFactory extends StrokableFactory_StrokableFactory{getRowTranslator(rows,encoding,columns){var _encoding$polygon;if((_encoding$polygon=encoding.polygon)!==null&&_encoding$polygon!==void 0&&_encoding$polygon.isGeoJson(columns)){return new RowTranslator(rows,encoding.polygon.field)}}getColorProps(color,rows,visibleRows,columns,rowTranslator){if(color){const colorAccessor=super.getColorAccessor(columns,color,rows,visibleRows,rowTranslator);return{filled:true,getFillColor:colorAccessor}}else{return{filled:false,pickable:false}}}getData(rows,encoding,columns){if(encoding.polygon&&encoding.polygon.isGeoJson(columns)){const field=encoding.polygon.field;if(rows){return rows.map((row=>row[field]))}}return rows}getPolygon(polygonEncoding){return row=>Object(fp_["isArray"])(row[polygonEncoding.field])?row[polygonEncoding.field]:[]}getLayerProps(props){var _props$encoding,_props$encoding2,_props$encoding3,_props$encoding4,_props$encoding5;const rowTranslator=this.getRowTranslator(props.rows,props.encoding,props.columns);return{id:props.id,layerId:props.layerId,pickable:props.pickable,updateTriggers:{getFillColor:super.getColorUpdateTrigger((_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.color,props.visibleRows),getLineColor:super.getColorUpdateTrigger((_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.strokeColor,props.visibleRows),getLineWidth:super.getSizeUpdateTrigger((_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.strokeSize),getPosition:super.getPositionUpdateTrigger(props.encoding.position,props.editing)},data:this.getData(props.rows,props.encoding,props.columns),...this.getColorProps((_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:_props$encoding4.color,props.rows,props.visibleRows,props.columns,rowTranslator),...this.getStrokeSizeProps(props.visibleRows,props.columns,props.encoding.strokeSize,rowTranslator),...this.getColorStrokeProps((_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:_props$encoding5.strokeColor,props.rows,props.visibleRows,props.columns,rowTranslator),...super.getDeckLayerCallbacks(props)}}doCreate(props){var _props$encoding$polyg;const layerProps=this.getLayerProps(props);if((_props$encoding$polyg=props.encoding.polygon)!==null&&_props$encoding$polyg!==void 0&&_props$encoding$polyg.isGeoJson(props.columns)){const deckProps=super.getDeckProps(props,layerProps);const decoratedDeckProps=decorateTransitionProps(props,deckProps,"getFillColor");if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return animatedGeoJsonLayerFactory.create(props.encoding,decoratedDeckProps,super.getDeckLayerCallbacks(props))}else{return new layers_["GeoJsonLayer"](decoratedDeckProps)}}const deckProps=super.getDeckProps(props,{...layerProps,getPolygon:this.getPolygon(props.encoding.polygon)});const decoratedDeckProps=decorateTransitionProps(props,deckProps,"getFillColor");if(AnimatedLayerFactory_AnimatedLayerFactory.hasAnimations(props.encoding)){return animatedPolygonLayerFactory.create(props.encoding,decoratedDeckProps,super.getDeckLayerCallbacks(props))}return new layers_["PolygonLayer"](decoratedDeckProps)}parseContent(row,polygonEncoding){const fieldContent=row[polygonEncoding.field];if(typeof fieldContent==="string"){try{return JSON.parse(fieldContent)}catch{}}return fieldContent}create(props){for(const row of(_props$rows=props.rows)!==null&&_props$rows!==void 0?_props$rows:[]){var _props$rows,_props$encoding$polyg2;const field=(_props$encoding$polyg2=props.encoding.polygon)===null||_props$encoding$polyg2===void 0?void 0:_props$encoding$polyg2.field;if(field)row[field]=this.parseContent(row,props.encoding.polygon)}return this.doCreate(props)}}class CommonOffsetExtension_CommonOffsetExtension extends core_["LayerExtension"]{getShaders(){return{...super.getShaders(null),inject:{"vs:#decl":`\n uniform float offsetMinPixels;\n uniform float offsetMaxPixels;\n uniform float offsetCommons;\n `,"vs:DECKGL_FILTER_GL_POSITION":`\n float common_y = offsetCommons * project_size();\n float pixel_y = project_size_to_pixel(common_y, UNIT_COMMON);\n pixel_y = clamp(pixel_y, offsetMinPixels, offsetMaxPixels);\n vec2 clipspace_pos = project_pixel_size_to_clipspace(vec2(1.0, pixel_y));\n position.y -= clipspace_pos.y;\n `}}}updateState(params){if(!params||!params.props)return;const{offsetMinPixels=0,offsetMaxPixels=Number.MAX_SAFE_INTEGER,offsetCommons=0}=params.props;const models=this.getModels();for(const model of models){model.setUniforms({offsetMinPixels,offsetMaxPixels,offsetCommons})}}getSubLayerProps(){if(!this.props)return;const{offsetMinPixels=0,offsetMaxPixels=Number.MAX_SAFE_INTEGER,offsetCommons=0}=this.props;return{offsetMinPixels,offsetMaxPixels,offsetCommons}}}const MAX_TEXT_LENGTH=32;const getSpecialChars=()=>{const charNumbers=[...Array(256).keys(),8722];return charNumbers.map((charCode=>String.fromCharCode(charCode)))};const characterSet=getSpecialChars();const extensions=[new CommonOffsetExtension_CommonOffsetExtension];const fontSettings={fontSize:50};class TextFactory_TextFactory extends BaseFactory_BaseFactory{constructor(){super(...arguments);this.getText=text=>row=>{const value=text.getValue(row);if(value){return value.toString().substring(0,MAX_TEXT_LENGTH)}return""}}create(props){var _props$encoding,_props$encoding2,_props$encoding3,_props$encoding4,_props$encoding4$size,_props$encoding5,_props$encoding5$size,_props$encoding6,_props$encoding6$size,_props$encoding$offse,_props$encoding7,_props$encoding7$offs,_props$encoding7$offs2,_props$encoding$offse2,_props$encoding8,_props$encoding8$offs,_props$encoding8$offs2,_props$encoding9,_props$encoding9$offs,_props$encoding9$offs2;const textEncoding=(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.text;const colorAccessor=super.getColorAccessor(props.columns,(_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:_props$encoding2.color,props.rows,props.visibleRows);const sizeAccessor=super.getSizeAccessor({encoding:(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:_props$encoding3.size,visibleRows:props.visibleRows,columns:props.columns});const deckProps=super.getDeckProps(props,{id:props.id,pickable:props.pickable,data:super.getRows(props),getText:this.getText(textEncoding),characterSet,sizeUnits:((_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$size=_props$encoding4.size)===null||_props$encoding4$size===void 0?void 0:_props$encoding4$size.getUnits())||"pixels",getAngle:textEncoding.getAngle(),getTextAnchor:textEncoding.getAnchor(),getPosition:super.getPositionAccessor(props),getSize:sizeAccessor,sizeMaxPixels:((_props$encoding5=props.encoding)===null||_props$encoding5===void 0?void 0:(_props$encoding5$size=_props$encoding5.size)===null||_props$encoding5$size===void 0?void 0:_props$encoding5$size.getMaxPixels())||Number.MAX_SAFE_INTEGER,sizeMinPixels:((_props$encoding6=props.encoding)===null||_props$encoding6===void 0?void 0:(_props$encoding6$size=_props$encoding6.size)===null||_props$encoding6$size===void 0?void 0:_props$encoding6$size.getMinPixels())||textEncoding.getMinPossibleSize(),offsetMinPixels:(_props$encoding$offse=(_props$encoding7=props.encoding)===null||_props$encoding7===void 0?void 0:(_props$encoding7$offs=_props$encoding7.offset)===null||_props$encoding7$offs===void 0?void 0:(_props$encoding7$offs2=_props$encoding7$offs.y)===null||_props$encoding7$offs2===void 0?void 0:_props$encoding7$offs2.getMinPixels())!==null&&_props$encoding$offse!==void 0?_props$encoding$offse:0,offsetMaxPixels:(_props$encoding$offse2=(_props$encoding8=props.encoding)===null||_props$encoding8===void 0?void 0:(_props$encoding8$offs=_props$encoding8.offset)===null||_props$encoding8$offs===void 0?void 0:(_props$encoding8$offs2=_props$encoding8$offs.y)===null||_props$encoding8$offs2===void 0?void 0:_props$encoding8$offs2.getMaxPixels())!==null&&_props$encoding$offse2!==void 0?_props$encoding$offse2:0,extensions,getColor:colorAccessor,updateTriggers:{getColor:super.getColorUpdateTrigger(props.encoding.color,props.visibleRows),getSize:super.getSizeUpdateTrigger(props.encoding.size),getPosition:super.getPositionUpdateTrigger(props.encoding.position,props.editing)},fontFamily:"Arial",fontSettings,...super.getDeckLayerCallbacks(props)});if((_props$encoding9=props.encoding)!==null&&_props$encoding9!==void 0&&(_props$encoding9$offs=_props$encoding9.offset)!==null&&_props$encoding9$offs!==void 0&&(_props$encoding9$offs2=_props$encoding9$offs.y)!==null&&_props$encoding9$offs2!==void 0&&_props$encoding9$offs2.isCommon()){var _props$encoding10,_props$encoding10$off,_props$encoding10$off2;deckProps.offsetCommons=(_props$encoding10=props.encoding)===null||_props$encoding10===void 0?void 0:(_props$encoding10$off=_props$encoding10.offset)===null||_props$encoding10$off===void 0?void 0:(_props$encoding10$off2=_props$encoding10$off.y)===null||_props$encoding10$off2===void 0?void 0:_props$encoding10$off2.getSize()}else{var _props$encoding$offse3,_props$encoding11,_props$encoding11$off,_props$encoding11$off2;deckProps.getPixelOffset=[0,(_props$encoding$offse3=(_props$encoding11=props.encoding)===null||_props$encoding11===void 0?void 0:(_props$encoding11$off=_props$encoding11.offset)===null||_props$encoding11$off===void 0?void 0:(_props$encoding11$off2=_props$encoding11$off.y)===null||_props$encoding11$off2===void 0?void 0:_props$encoding11$off2.value)!==null&&_props$encoding$offse3!==void 0?_props$encoding$offse3:0]}return new layers_["TextLayer"](Object(fp_["omitBy"])(fp_["isUndefined"],deckProps))}}var external_vega_=__webpack_require__(20);var external_vega_lite_=__webpack_require__(83);var memoize_src=__webpack_require__(78);function getDeckProps(id,data,cacheKey,dataComparator){return{id,data,dataComparator:()=>dataComparator.isEqual(id,{cacheKey})}}function newVegaLineLayer(id,data,cacheKey,dataComparator){return new layers_["LineLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),widthUnits:"pixels",getColor:o=>o.color,getWidth:o=>o.strokeWidth})}const getCharacterSet=()=>{const charNumbers=[...Array(256).keys(),8722];return charNumbers.map((charCode=>String.fromCharCode(charCode)))};const VegaTextLayerFactory_characterSet=getCharacterSet();const VegaTextLayerFactory_fontSettings={sdf:false,fontSize:128,buffer:3};const _subLayerProps={characters:{alphaCutoff:.1}};function newVegaTextLayer(id,data,cacheKey,dataComparator){return new layers_["TextLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),characterSet:VegaTextLayerFactory_characterSet,sizeUnits:"pixels",autoHighlight:true,pickable:true,fontFamily:"Arial",fontSettings:VegaTextLayerFactory_fontSettings,getColor:o=>o.color,getTextAnchor:o=>o.textAnchor,getSize:o=>o.size,getAngle:o=>o.angle,_subLayerProps})}function newVegaPathLayer(id,data,cacheKey,dataComparator){if(!data)return null;return new layers_["PathLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),widthScale:1,widthMinPixels:2,widthUnits:"pixels",getPath:o=>o.positions,getColor:o=>o.strokeColor,getWidth:o=>o.strokeWidth})}function newVegaPolygonLayer(id,data,cacheKey,dataComparator){if(!data)return null;const newlayer=new layers_["PolygonLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),getPolygon:o=>o.positions,getFillColor:o=>o.fillColor,getLineColor:o=>o.strokeColor,wireframe:false,filled:true,stroked:true,pickable:true,extruded:true,getElevation:o=>o.depth,getLineWidth:o=>o.strokeWidth});return newlayer}function newVegaCircleLayer(id,data,cacheKey,dataComparator){return new layers_["ScatterplotLayer"]({...getDeckProps(id,data,cacheKey,dataComparator),stroked:true,filled:true,pickable:true,radiusUnits:"pixels",getFillColor:o=>o.color,getLineColor:o=>o.strokeColor,getLineWidth:o=>o.strokeWidth,getPosition:o=>o.position,getRadius:o=>o.size})}const layerNames={lines:"VEGA_LAYER_LINES",text:"VEGA_LAYER_TEXT",paths:"VEGA_LAYER_PATHS",polygons:"VEGA_LAYER_POLYGONS",circles:"VEGA_LAYER_CIRCLES"};function getFacetLayers(stage,cacheKey,dataComparator,guideLines){if(!stage.facets)return[];const lines=guideLines!==null&&guideLines!==void 0&&guideLines.length?guideLines:[];stage.facets.forEach((f=>{if(f.lines)lines.push.apply(lines,f.lines)}));const facetLineLayer=newVegaLineLayer("FACET_"+layerNames.lines,lines,cacheKey,dataComparator);return[facetLineLayer]}function getAxesDomainLayers(stage,cacheKey,dataComparator){const{x,y,z}=stage.axes;return[x,y,z].map(((axes,i)=>{const lines=[];const texts=[];const role=i===0?"X":i===1?"Y":"Z";axes.forEach((axis=>{if(axis.domain)lines.push(axis.domain);if(axis.title)texts.push(axis.title)}));const layerPrefix="AXIS_"+role+"_DOMAIN_";const lineLayer=newVegaLineLayer(layerPrefix+layerNames.lines,lines,cacheKey,dataComparator);const textLayer=newVegaTextLayer(layerPrefix+layerNames.text,texts,cacheKey,dataComparator);return[textLayer,lineLayer]}))}function getAxesTicksLayers(stage,cacheKey,dataComparator){const{x,y,z}=stage.axes;return[x,y,z].map(((axes,i)=>{const lines=[];const texts=[];const gridLines=[];const role=i===0?"X":i===1?"Y":"Z";axes.forEach((axis=>{var _stage$gridLines;if((_stage$gridLines=stage.gridLines)!==null&&_stage$gridLines!==void 0&&_stage$gridLines.length){var _stage$gridLines2;const filtereds=(_stage$gridLines2=stage.gridLines)===null||_stage$gridLines2===void 0?void 0:_stage$gridLines2.filter((line=>line.role===axis.role));filtereds.forEach((gridLine=>gridLines.push(gridLine)))}if(axis.ticks)axis.ticks.forEach((tickLine=>lines.push(tickLine)));if(axis.tickText)axis.tickText.forEach((text=>texts.push(text)))}));const layerPrefix="AXIS_"+role+"_TICKS_";const lineLayer=newVegaLineLayer(layerPrefix+layerNames.lines,lines,cacheKey,dataComparator);const gridLineLayer=newVegaLineLayer(layerPrefix+"GRID_"+layerNames.lines,gridLines,cacheKey,dataComparator);const textLayer=newVegaTextLayer(layerPrefix+layerNames.text,texts,cacheKey,dataComparator);return[textLayer,lineLayer,gridLineLayer]}))}function getChartLayers(stage,cacheKey,dataComparator){const textLayer=newVegaTextLayer(layerNames.text,stage.text,cacheKey,dataComparator);const pathLayer=newVegaPathLayer(layerNames.paths,stage.path,cacheKey,dataComparator);const polygonLayer=newVegaPolygonLayer(layerNames.polygons,stage.polygon,cacheKey,dataComparator);const circleLayer=newVegaCircleLayer(layerNames.circles,stage.circle,cacheKey,dataComparator);return[textLayer,pathLayer,polygonLayer,circleLayer]}const legendMap={"legend-title":(legend,textItem)=>{legend.title=textItem.text},"legend-symbol"(legend,symbol){const{bounds,fill,shape}=symbol;const legendRowSymbol={bounds,fill,shape};const i=symbol.datum.index;legend.rows[i]=legend.rows[i]||{};legend.rows[i].symbol=legendRowSymbol},"legend-label"(legend,label){const i=label.datum.index;legend.rows[i]=legend.rows[i]||{};const row=legend.rows[i];row.label=label.text;row.value=label.datum.value}};const markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){var _item$mark;const fn=legendMap[(_item$mark=item.mark)===null||_item$mark===void 0?void 0:_item$mark.role];if(fn){fn(stage.legend,item)}else{}}))};var legend=markStager;var Colors=__webpack_require__(18);const min3dDepth=.05;const rect_markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){const z=item.z||0;const depth=(item.depth||0)+min3dDepth;const ty=options.projection&&options.projection.flipY===false?1:-1;const ordinal=options.assignCubeOrdinal(item.datum);if(ordinal!==undefined&&ordinal>options.maxOrdinal){options.maxOrdinal=ordinal}if(ordinal===undefined){}else{var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;const cube={ordinal,size:[item.width,item.height,depth],position:[x+Math.round(item.x||0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*(y+Math.round(item.y||0))-item.height+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),z],color:item.fill&&item.fill!=="transparent"&&Object(Colors["a"])(item.fill,item.opacity)||options.defaultCubeColor||[128,128,128,128]};cube.color[3]=item.opacity===undefined?255:255*item.opacity;if(stage.cube){stage.cube.push(cube)}}}))};var rect=rect_markStager;function zSwap(v3){const temp=-v3[1];if(v3[0]===-1){v3[0]=0}if(v3[2]){v3[1]=v3[2];v3[2]=temp}}const lineZ=-1;function styledLine(options,x1,y1,x2,y2,stroke,strokeWidth,role){var _options$projection$x,_options$projection,_options$projection$y,_options$projection2,_options$projection$x2,_options$projection3,_options$projection$y2,_options$projection4;const ty=options.projection&&options.projection.flipY===false?1:-1;const line={sourcePosition:[x1+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),y1*ty+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),lineZ],targetPosition:[x2+((_options$projection$x2=(_options$projection3=options.projection)===null||_options$projection3===void 0?void 0:_options$projection3.xOffset)!==null&&_options$projection$x2!==void 0?_options$projection$x2:0),y2*ty+((_options$projection$y2=(_options$projection4=options.projection)===null||_options$projection4===void 0?void 0:_options$projection4.yOffset)!==null&&_options$projection$y2!==void 0?_options$projection$y2:0),lineZ],color:Object(Colors["a"])(stroke),strokeWidth,role};return line}const rule_markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){const x1=item.x||0;const y1=item.y||0;const x2=item.x2!=null?item.x2:x1;const y2=item.y2!=null?item.y2:y1;const lineItem=styledLine(options,x1,y1+y,x2,y2+y,item.stroke,item.strokeWidth,options.currAxis.role);if(item.mark.role==="axis-tick"){if(options.currAxis.role==="z"){zSwap(lineItem.sourcePosition);zSwap(lineItem.targetPosition)}options.currAxis.ticks.push(lineItem)}else if(item.mark.role==="axis-domain"){if(options.currAxis.role==="z"){zSwap(lineItem.sourcePosition);zSwap(lineItem.targetPosition)}options.currAxis.domain=lineItem}else if(stage.gridLines){stage.gridLines.push(lineItem)}}))};function box(options,gx,gy,height,width,stroke,strokeWidth){let diagonals=arguments.length>7&&arguments[7]!==undefined?arguments[7]:false;const lines=[styledLine(options,gx,gy,gx+width,gy,stroke,strokeWidth),styledLine(options,gx+width,gy,gx+width,gy+height,stroke,strokeWidth),styledLine(options,gx+width,gy+height,gx,gy+height,stroke,strokeWidth),styledLine(options,gx,gy+height,gx,gy,stroke,strokeWidth)];if(diagonals){lines.push(styledLine(options,gx,gy,gx+width,gy+height,stroke,strokeWidth));lines.push(styledLine(options,gx,gy+height,gx+width,gy,stroke,strokeWidth))}return lines}var rule=rule_markStager;const line_markStager=(options,stage,scene,x,y,groupType)=>{const ty=options.projection&&options.projection.flipY===false?1:-1;const g={opacity:1,strokeOpacity:1,strokeWidth:1,...scene.items[0]};const path={strokeWidth:g.strokeWidth,strokeColor:g.stroke&&g.stroke!=="transparent"?Object(Colors["a"])(g.stroke,g.opacity):[0,0,0,0],positions:scene.items.map((it=>{var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;return[it.x+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*it.y+ +((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),it.z||0]}))};if(path.strokeColor[3]){path.strokeColor[3]*=g.strokeOpacity;path.strokeColor[3]*=g.opacity}if(stage.path){stage.path.push(path)}};var marks_line=line_markStager;function convertAngle(vegaTextAngle){if(vegaTextAngle&&!isNaN(vegaTextAngle)){return 360-vegaTextAngle}return 0}function convertAlignment(textAlign){switch(textAlign){case"center":return"middle";case"left":return"start";case"right":return"end"}return"start"}function convertBaseline(baseline){switch(baseline){case"middle":return"center"}return baseline||"bottom"}const text_markStager=(options,stage,scene,x,y,groupType)=>{const fontScale=1;const ty=options.projection&&options.projection.flipY===false?1:-1;external_vega_["sceneVisit"](scene,(function(item){var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;if(!item.text)return;const size=item.fontSize*fontScale;const alignmentBaseline=convertBaseline(item.baseline);const yOffset=alignmentBaseline==="top"?item.fontSize/2:0;const textItem={color:item.fill&&item.fill!=="transparent"?Object(Colors["a"])(item.fill,item.opacity):[0,0,0,0],text:item.limit===undefined?item.text:external_vega_["truncate"](item.text,item.limit,"right",item.ellipsis||"..."),position:[x+(item.x||0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*(y+(item.y||0)+yOffset)+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),0],size,angle:convertAngle(item.angle),textAnchor:convertAlignment(item.align),alignmentBaseline,metaData:item.metaData};if(item.mark.role==="axis-label"){const tickText=textItem;tickText.value=item.datum.value;if(options.currAxis.role==="x"){var _options$projection$x2,_options$projection3;textItem.position[0]=(item.x||0)+((_options$projection$x2=(_options$projection3=options.projection)===null||_options$projection3===void 0?void 0:_options$projection3.xOffset)!==null&&_options$projection$x2!==void 0?_options$projection$x2:0)}else if(options.currAxis.role==="y"){var _options$projection$y2,_options$projection4;textItem.position[1]=ty*((item.y||0)+yOffset)+((_options$projection$y2=(_options$projection4=options.projection)===null||_options$projection4===void 0?void 0:_options$projection4.yOffset)!==null&&_options$projection$y2!==void 0?_options$projection$y2:0)}else if(options.currAxis.role==="z"){zSwap(tickText.position)}options.currAxis.tickText.push(tickText)}else if(item.mark.role==="axis-title"){if(options.currAxis.role==="y"){textItem.position[0]=textItem.position[0]-6}else if(options.currAxis.role==="x"){textItem.position[1]=textItem.position[1]-6}else if(options.currAxis.role==="z"){zSwap(textItem.position)}options.currAxis.title=textItem}else if(stage.text){stage.text.push(textItem)}}))};var marks_text=text_markStager;const area_markStager=(options,stage,scene,x,y,groupType)=>{const ty=options.projection&&options.projection.flipY===false?1:-1;const g={fillOpacity:1,opacity:1,strokeOpacity:1,strokeWidth:0,depth:0,...scene.items[0]};const points=scene.items.map((groupItem=>{var _item$x,_options$projection$x,_options$projection,_item$y,_options$projection$y,_options$projection2,_item$x2,_options$projection$x2,_options$projection3,_item$y2,_options$projection$y2,_options$projection4;const item={z:0,x2:groupItem.x,y2:groupItem.y,z2:groupItem.z,...groupItem};return[((_item$x=item.x)!==null&&_item$x!==void 0?_item$x:0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*((_item$y=item.y)!==null&&_item$y!==void 0?_item$y:0)+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),item.z,((_item$x2=item.x2)!==null&&_item$x2!==void 0?_item$x2:0)+((_options$projection$x2=(_options$projection3=options.projection)===null||_options$projection3===void 0?void 0:_options$projection3.xOffset)!==null&&_options$projection$x2!==void 0?_options$projection$x2:0),ty*((_item$y2=item.y2)!==null&&_item$y2!==void 0?_item$y2:0)+((_options$projection$y2=(_options$projection4=options.projection)===null||_options$projection4===void 0?void 0:_options$projection4.yOffset)!==null&&_options$projection$y2!==void 0?_options$projection$y2:0),item.z2]}));const positions=[];const startpoint=[points[0][0],points[0][1],points[0][2]];points.forEach((p=>{positions.push([p[0],p[1],p[2]])}));points.reverse().forEach((p=>{positions.push([p[3],p[4],p[5]])}));positions.push(startpoint);const polygon={fillColor:g.fill&&g.fill!=="transparent"?Object(Colors["a"])(g.fill,g.opacity):[0,0,0,0],positions,strokeColor:g.stroke&&g.stroke!=="transparent"?Object(Colors["a"])(g.stroke):[0,0,0,0],strokeWidth:g.strokeWidth,depth:g.depth};if(polygon.fillColor[3]){polygon.fillColor[3]*=g.fillOpacity;polygon.fillColor[3]*=g.opacity}if(polygon.strokeColor[3]){polygon.strokeColor[3]*=g.strokeOpacity;polygon.strokeColor[3]*=g.opacity}if(stage.polygon){stage.polygon.push(polygon)}};var marks_area=area_markStager;const symbol_markStager=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(item){const z=item.z||0;const ty=options.projection&&options.projection.flipY===false?1:-1;if(item.shape==="circle"&&stage.circle){var _options$projection$x,_options$projection,_options$projection$y,_options$projection2;const circle={size:item.size,position:[x+Math.round(item.x||0)+((_options$projection$x=(_options$projection=options.projection)===null||_options$projection===void 0?void 0:_options$projection.xOffset)!==null&&_options$projection$x!==void 0?_options$projection$x:0),ty*(y+Math.round(item.y||0))+((_options$projection$y=(_options$projection2=options.projection)===null||_options$projection2===void 0?void 0:_options$projection2.yOffset)!==null&&_options$projection$y!==void 0?_options$projection$y:0),z],color:item.fill&&item.fill!=="transparent"?Object(Colors["a"])(item.fill,item.opacity):[0,0,0,0],strokeWidth:item.strokeWidth,strokeColor:item.stroke&&item.stroke!=="transparent"?Object(Colors["a"])(item.stroke,item.opacity):[0,0,0,0]};stage.circle.push(circle)}}))};var symbol=symbol_markStager;let GroupType;(function(GroupType){GroupType[GroupType["none"]=0]="none";GroupType[GroupType["legend"]=1]="legend";GroupType[GroupType["xAxis"]=2]="xAxis";GroupType[GroupType["yAxis"]=3]="yAxis";GroupType[GroupType["zAxis"]=4]="zAxis"})(GroupType||(GroupType={}));function getOrientItem(group){if(group.orient){return group}return group.datum}function setCurrentAxis(options,stage,groupType){var _stage$axes$x,_stage$axes,_stage$axes$y,_stage$axes2,_stage$axes$z,_stage$axes3;let axes;let role;switch(groupType){case GroupType.xAxis:axes=(_stage$axes$x=(_stage$axes=stage.axes)===null||_stage$axes===void 0?void 0:_stage$axes.x)!==null&&_stage$axes$x!==void 0?_stage$axes$x:[];role="x";break;case GroupType.yAxis:axes=(_stage$axes$y=(_stage$axes2=stage.axes)===null||_stage$axes2===void 0?void 0:_stage$axes2.y)!==null&&_stage$axes$y!==void 0?_stage$axes$y:[];role="y";break;case GroupType.zAxis:axes=(_stage$axes$z=(_stage$axes3=stage.axes)===null||_stage$axes3===void 0?void 0:_stage$axes3.z)!==null&&_stage$axes$z!==void 0?_stage$axes$z:[];role="z";break;default:return}options.currAxis={domain:null,tickText:[],ticks:[],role};axes.push(options.currAxis)}function convertGroupRole(group,options){if(group.mark.role==="legend")return GroupType.legend;if(group.mark.role==="axis"){if(group.mark.zindex===options.zAxisZindex&&options.zAxisZindex!==undefined){return GroupType.zAxis}const orientItem=getOrientItem(group);if(orientItem){switch(orientItem.orient){case"bottom":case"top":return GroupType.xAxis;case"left":case"right":return GroupType.yAxis}}}}const SceneToStage_group=(options,stage,scene,x,y,groupType)=>{external_vega_["sceneVisit"](scene,(function(g){const gx=g.x||0;const gy=g.y||0;if(g.context&&g.context.background&&!stage.backgroundColor){stage.backgroundColor=Object(Colors["a"])(g.context.background)}if(g.stroke&&stage.facets){const facetRect={datum:g.datum,lines:box(options,gx+x,gy+y,g.height,g.width,g.stroke,1)};stage.facets.push(facetRect)}groupType=convertGroupRole(g,options)||groupType;setCurrentAxis(options,stage,groupType);external_vega_["sceneVisit"](g,(function(item){mainStager(options,stage,item,gx+x,gy+y,groupType)}))}))};const markStagers={group:SceneToStage_group,legend,rect,rule,line:marks_line,area:marks_area,text:marks_text,symbol};const mainStager=(options,stage,scene,x,y,groupType)=>{if(scene.marktype!=="group"&&groupType===GroupType.legend){legend(options,stage,scene,x,y,groupType)}else if(markStagers[scene.marktype]){markStagers[scene.marktype](options,stage,scene,x,y,groupType)}};function orderDomain(domain,dim){if(domain.sourcePosition[dim]>domain.targetPosition[dim]){const temp=domain.targetPosition;domain.targetPosition=domain.sourcePosition;domain.sourcePosition=temp}}function sortAxis(axes,dim){axes.forEach((axis=>{if(axis.domain)orderDomain(axis.domain,dim);axis.ticks.sort(((a,b)=>a.sourcePosition[dim]-b.sourcePosition[dim]));axis.tickText.sort(((a,b)=>a.position[dim]-b.position[dim]))}))}function sceneToStage(options,scene){var _stage$axes$x2,_stage$axes4,_stage$axes$y2,_stage$axes5;const stage={circle:[],cube:[],path:[],polygon:[],axes:{x:[],y:[],z:[]},gridLines:[],text:[],legend:{rows:{}},facets:[]};mainStager(options,stage,scene,0,0);sortAxis((_stage$axes$x2=(_stage$axes4=stage.axes)===null||_stage$axes4===void 0?void 0:_stage$axes4.x)!==null&&_stage$axes$x2!==void 0?_stage$axes$x2:[],0);sortAxis((_stage$axes$y2=(_stage$axes5=stage.axes)===null||_stage$axes5===void 0?void 0:_stage$axes5.y)!==null&&_stage$axes$y2!==void 0?_stage$axes$y2:[],1);return stage}var Visualization=__webpack_require__(44);class VegaLiteFactory_VegaCompositeLayer extends external_deck_gl_["CompositeLayer"]{renderLayers(){return this.props.layers}}VegaLiteFactory_VegaCompositeLayer.layerName="HoparaVegaCompositeLayer";const MAX_TICKS=4e3;class VegaLiteFactory_VegaLiteFactory{constructor(cacheStore,dataComparator){this.cacheStore=void 0;this.dataComparator=void 0;this.cacheStore=cacheStore!==null&&cacheStore!==void 0?cacheStore:new Map;this.dataComparator=dataComparator!==null&&dataComparator!==void 0?dataComparator:new DataComparator_DataComparator}getWorldDomainMin(axis,scaleType,scaleDomains){if(!axis||!scaleType||!scaleDomains)return;return Object(fp_["get"])([axis,scaleType,"domainMin"],scaleDomains)}getWorldDomainMax(axis,scaleType,scaleDomains){if(!axis||!scaleType||!scaleDomains)return;return Object(fp_["get"])([axis,scaleType,"domainMax"],scaleDomains)}getAxisTicksByZoom(axisConfig){let zoom=arguments.length>1&&arguments[1]!==undefined?arguments[1]:0;let size=arguments.length>2?arguments[2]:undefined;let zoomBehavior=arguments.length>3?arguments[3]:undefined;const shouldUseZoomableBehavior=(axisConfig===null||axisConfig===void 0?void 0:axisConfig.tickCount)===undefined&&zoomBehavior!==Visualization["a"].FIXED;const tickCount=Math.ceil((size||0)/140*Math.pow(2,Math.ceil(zoom)));return{tickCount:shouldUseZoomableBehavior?tickCount<MAX_TICKS?tickCount:MAX_TICKS:axisConfig===null||axisConfig===void 0?void 0:axisConfig.tickCount,labelOverlap:shouldUseZoomableBehavior?zoom&&Math.ceil(zoom||1)<2:axisConfig===null||axisConfig===void 0?void 0:axisConfig.labelOverlap,tickRound:shouldUseZoomableBehavior?false:axisConfig===null||axisConfig===void 0?void 0:axisConfig.tickRound}}getEncodingWithDomains(props,baseProps){var _props$encoding$x,_props$encoding$x2,_props$encoding$x2$sc,_props$encoding$x3,_props$encoding$x3$sc,_props$encoding,_props$encoding$y,_props$encoding2,_props$encoding2$x,_baseProps$worldBox,_baseProps$worldBox$g,_baseProps$zoomBehavi,_props$encoding$y2,_props$encoding$y2$sc,_props$encoding$y3,_props$encoding$y3$sc,_props$encoding3,_props$encoding3$y,_props$encoding4,_props$encoding4$y,_baseProps$worldBox2,_baseProps$worldBox2$,_baseProps$zoomBehavi2;return{...props.encoding,x:{...props.encoding.x,scale:{...(_props$encoding$x=props.encoding.x)===null||_props$encoding$x===void 0?void 0:_props$encoding$x.scale,domainMin:this.getWorldDomainMin("x",(_props$encoding$x2=props.encoding.x)===null||_props$encoding$x2===void 0?void 0:(_props$encoding$x2$sc=_props$encoding$x2.scale)===null||_props$encoding$x2$sc===void 0?void 0:_props$encoding$x2$sc.type,baseProps.scaleDomains),domainMax:this.getWorldDomainMax("x",(_props$encoding$x3=props.encoding.x)===null||_props$encoding$x3===void 0?void 0:(_props$encoding$x3$sc=_props$encoding$x3.scale)===null||_props$encoding$x3$sc===void 0?void 0:_props$encoding$x3$sc.type,baseProps.scaleDomains)},axis:{...(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:(_props$encoding$y=_props$encoding.y)===null||_props$encoding$y===void 0?void 0:_props$encoding$y.axis,...this.getAxisTicksByZoom((_props$encoding2=props.encoding)===null||_props$encoding2===void 0?void 0:(_props$encoding2$x=_props$encoding2.x)===null||_props$encoding2$x===void 0?void 0:_props$encoding2$x.axis,baseProps.zoom,(_baseProps$worldBox=baseProps.worldBox)===null||_baseProps$worldBox===void 0?void 0:(_baseProps$worldBox$g=_baseProps$worldBox.getDimensions())===null||_baseProps$worldBox$g===void 0?void 0:_baseProps$worldBox$g.width,(_baseProps$zoomBehavi=baseProps.zoomBehavior)===null||_baseProps$zoomBehavi===void 0?void 0:_baseProps$zoomBehavi.x)}},y:{...props.encoding.y,scale:{...props.encoding.y.scale,domainMin:this.getWorldDomainMin("y",(_props$encoding$y2=props.encoding.y)===null||_props$encoding$y2===void 0?void 0:(_props$encoding$y2$sc=_props$encoding$y2.scale)===null||_props$encoding$y2$sc===void 0?void 0:_props$encoding$y2$sc.type,baseProps.scaleDomains),domainMax:this.getWorldDomainMax("y",(_props$encoding$y3=props.encoding.y)===null||_props$encoding$y3===void 0?void 0:(_props$encoding$y3$sc=_props$encoding$y3.scale)===null||_props$encoding$y3$sc===void 0?void 0:_props$encoding$y3$sc.type,baseProps.scaleDomains)},axis:{...(_props$encoding3=props.encoding)===null||_props$encoding3===void 0?void 0:(_props$encoding3$y=_props$encoding3.y)===null||_props$encoding3$y===void 0?void 0:_props$encoding3$y.axis,...this.getAxisTicksByZoom((_props$encoding4=props.encoding)===null||_props$encoding4===void 0?void 0:(_props$encoding4$y=_props$encoding4.y)===null||_props$encoding4$y===void 0?void 0:_props$encoding4$y.axis,baseProps.zoom,(_baseProps$worldBox2=baseProps.worldBox)===null||_baseProps$worldBox2===void 0?void 0:(_baseProps$worldBox2$=_baseProps$worldBox2.getDimensions())===null||_baseProps$worldBox2$===void 0?void 0:_baseProps$worldBox2$.height,(_baseProps$zoomBehavi2=baseProps.zoomBehavior)===null||_baseProps$zoomBehavi2===void 0?void 0:_baseProps$zoomBehavi2.y)}}}}getLayerSpec(props,baseProps){var _props$rows;return{data:{values:(_props$rows=props.rows)!==null&&_props$rows!==void 0?_props$rows:[]},mark:props.mark,encoding:this.getEncodingWithDomains(props,baseProps)}}getSpec(props){var _props$worldBox;const worldDimensions=(_props$worldBox=props.worldBox)===null||_props$worldBox===void 0?void 0:_props$worldBox.getDimensions();return{height:worldDimensions?worldDimensions.height:"container",width:worldDimensions?worldDimensions.width:"container",layer:props.layers.map((layerSpec=>this.getLayerSpec(layerSpec,props))),config:props.themeMode==="dark"?{axis:{labelColor:"#fff",gridColor:"#444",domainColor:"#666",titleColor:"#fff"}}:undefined}}getStage(props,view){var _props$worldBox2;return sceneToStage({projection:{yOffset:(_props$worldBox2=props.worldBox)===null||_props$worldBox2===void 0?void 0:_props$worldBox2.getDimensions().height}},view.scenegraph().root)}getVegaStage(props){const vegaSpec=this.getSpec(props);const compiledSpec=external_vega_lite_["compile"](vegaSpec);if(!compiledSpec||!compiledSpec.spec)return;const runtime=external_vega_["parse"](compiledSpec.spec);const view=new external_vega_["View"](runtime);view.run();return this.getStage(props,view)}getZoomCacheKey(props){const layerKey=props.layers.reduce(((key,layer)=>`${key}-${layer.id}-${layer.rows.etag}-${props.zoom.toFixed(0)}`),"");return layerKey}getCacheKey(props){const layerKey=props.layers.reduce(((key,layer)=>`${key}-${layer.id}-${layer.rows.etag}`),"");return layerKey}vegaStage(props){return Object(memoize_src["a"])(this.getVegaStage.bind(this),{cacheStore:this.cacheStore,cacheKey:this.getZoomCacheKey(props)})(props)}create(props){if(!props.worldBox)return[];const stage=this.vegaStage({layers:props.layers,worldBox:props.worldBox,themeMode:props.themeMode,scaleDomains:props.scaleDomains,zoom:props.zoom,zoomBehavior:props.zoomBehavior});if(!stage)return[];const zoomCacheKey=this.getZoomCacheKey(props);const cacheKey=this.getCacheKey(props);const chartLayers=getChartLayers(stage,cacheKey,this.dataComparator);const axesTicksLayers=getAxesTicksLayers(stage,zoomCacheKey,this.dataComparator);const axesXTicksLayers=axesTicksLayers.length>1?axesTicksLayers[0].flat():[];const axesYTicksLayers=axesTicksLayers.length>1?axesTicksLayers[1].flat():[];const axesDomainLayers=getAxesDomainLayers(stage,zoomCacheKey,this.dataComparator).flat();const facetLayers=getFacetLayers(stage,cacheKey,this.dataComparator);return[new VegaLiteFactory_VegaCompositeLayer({id:"vega-facet",targetView:"vega-background",layers:facetLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-axes-domain",targetView:"vega-background",layers:axesDomainLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-axes-x",targetView:"vega-axes-x",layers:axesXTicksLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-axes-y",targetView:"vega-axes-y",layers:axesYTicksLayers}),new VegaLiteFactory_VegaCompositeLayer({id:"vega-chart",layers:chartLayers})]}}var external_react_table_=__webpack_require__(68);var Box_=__webpack_require__(58);var Box_default=__webpack_require__.n(Box_);var Table_=__webpack_require__(131);var Table_default=__webpack_require__.n(Table_);var TableCell_=__webpack_require__(95);var TableCell_default=__webpack_require__.n(TableCell_);var TableContainer_=__webpack_require__(132);var TableContainer_default=__webpack_require__.n(TableContainer_);var Paper_=__webpack_require__(133);var Paper_default=__webpack_require__.n(Paper_);var TablePagination_=__webpack_require__(134);var TablePagination_default=__webpack_require__.n(TablePagination_);var TableSortLabel_=__webpack_require__(135);var TableSortLabel_default=__webpack_require__.n(TableSortLabel_);const TableLayerBox=Object(src_theme["a"])(Box_default.a,{name:"TableLayerBox"})({width:"100%",height:"100%"});const TableLayerPaper=Object(src_theme["a"])(Paper_default.a,{name:"TableLayerPaper"})({width:"100%",height:"100%",mb:2,display:"flex",flexDirection:"column"});const TableLayerContainer=Object(src_theme["a"])(TableContainer_default.a,{name:"TableLayerContainer"})({overflow:"auto",flex:"1 1"});const TableLayerTable=Object(src_theme["a"])(Table_default.a,{name:"TableLayerTable"})({position:"relative"});const TableLayerTableCell=Object(src_theme["a"])(TableCell_default.a,{name:"TableLayerTable"})((_ref=>{let{_styleprops}=_ref;return{..._styleprops,display:"inline-flex",alignItems:"center",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"}}));const TableLayerTableCellBox=Object(src_theme["a"])(Box_default.a,{name:"TableLayerTableCellBox"})({display:"inline-block",overflow:"hidden",width:"100%",textOverflow:"ellipsis",whiteSpace:"nowrap"});const TableLayerHeaderCell=Object(src_theme["a"])(TableCell_default.a,{name:"TableLayerHeaderCell"})((_ref2=>{let{_cellstyles}=_ref2;return{..._cellstyles,position:"sticky",top:0}}));const TableLayerHeaderSortLabel=Object(src_theme["a"])(TableSortLabel_default.a,{name:"TableLayerHeaderSortLabel"})((_ref3=>{let{_cellstyles}=_ref3;return{..._cellstyles,display:undefined,overflow:"hidden",width:"100%"}}));const TableLayerHeaderLabel=Object(src_theme["a"])(Box_default.a,{name:"TableLayerHeaderLabel"})({display:"inline-block",overflow:"hidden",maxWidth:"100%",textOverflow:"ellipsis",whiteSpace:"nowrap"});const TableLayerHeaderLabelAria=Object(src_theme["a"])(Box_default.a,{name:"TableLayerHeaderLabelAria"})({border:0,clip:"rect(0 0 0 0)",height:"1px",margin:-1,overflow:"hidden",padding:0,position:"absolute",whiteSpace:"nowrap",width:"1px"});const TableLayerHeaderResizer=Object(src_theme["a"])("div",{name:"TableLayerHeaderResizer"})((props=>{const style=Object(react_["css"])({alignItems:"center",display:"flex",height:"70%",justifyContent:"center",position:"absolute",right:3,top:0,touchAction:"none",transform:"translate(50%, 15%)",width:10,zIndex:3,":before":{borderLeft:"1px solid #ccc",content:'""',height:"100%",left:"50%",position:"absolute",transform:"translateX(-50%)",transition:"border 0.2s ease"},":after":{background:"#efefef",border:"1px solid #999",borderRadius:"50%",content:'""',height:6,transition:"border 0.2s ease",width:6,zIndex:2},":hover:before":{borderColor:props.theme.palette.primary.main},":hover:after":{borderColor:props.theme.palette.primary.main}});if(props._isResizing){return Object(react_["css"])([style,Object(react_["css"])({":before":{borderColor:props.theme.palette.primary.main},":after":{borderColor:props.theme.palette.primary.main}})])}return style}));const TableLayerPagination=Object(src_theme["a"])(TablePagination_default.a,{name:"TableLayerPagination"})({borderTop:"1px solid #ebe9f1"});var TableBody_=__webpack_require__(136);var TableBody_default=__webpack_require__.n(TableBody_);var TableRow_=__webpack_require__(84);var TableRow_default=__webpack_require__.n(TableRow_);var TableHead_=__webpack_require__(137);var TableHead_default=__webpack_require__.n(TableHead_);const TableHeader=_ref=>{let{headerGroups}=_ref;return Object(jsx_runtime_["jsx"])(TableHead_default.a,{children:headerGroups.map(((headerGroup,index)=>Object(external_react_["createElement"])(TableRow_default.a,{...headerGroup.getHeaderGroupProps(),key:index},headerGroup.headers.map(((column,i)=>{const cellProps=column.getHeaderProps(column.getSortByToggleProps());return Object(jsx_runtime_["jsxs"])(TableLayerHeaderCell,{sortDirection:column.isSorted?column.isSortedDesc?"desc":"asc":false,_cellstyles:cellProps.style,children:[Object(jsx_runtime_["jsxs"])(TableLayerHeaderSortLabel,{...Object(fp_["omit"])(["style"],cellProps),active:column.isSorted,direction:column.isSorted&&column.isSortedDesc?"desc":"asc",_cellstyles:cellProps.style,children:[Object(jsx_runtime_["jsx"])(TableLayerHeaderLabel,{component:"span",children:column.render("Header")}),column.isSorted?Object(jsx_runtime_["jsx"])(TableLayerHeaderLabelAria,{component:"span",children:column.isSortedDesc?"sorted descending":"sorted ascending"}):null]}),Object(jsx_runtime_["jsx"])(TableLayerHeaderResizer,{_isResizing:column.isResizing,...column.getResizerProps()})]},i)})))))})};const TablePagination=_ref=>{let{gotoPage,pageIndex,pageSize,setPageSize,dataLength}=_ref;return Object(jsx_runtime_["jsx"])(TableLayerPagination,{rowsPerPageOptions:[10,20,50,100],component:"div",count:dataLength,rowsPerPage:pageSize,page:pageIndex,onPageChange:(e,page)=>gotoPage(page),onRowsPerPageChange:e=>setPageSize(Number(e.target.value)),sx:{}})};const ColumnCell=_ref=>{let{value,column,valueFormatter}=_ref;return valueFormatter?valueFormatter(value,column.id):value};const TableLayout=_ref2=>{let{columns,data,valueFormatter}=_ref2;const defaultColumn=external_react_default.a.useMemo((()=>({minWidth:50,width:180,maxWidth:400,Cell:ColumnCell})),[]);const{getTableProps,getTableBodyProps,headerGroups,page,prepareRow,gotoPage,setPageSize,state:{pageIndex,pageSize}}=Object(external_react_table_["useTable"])({columns,data,defaultColumn,initialState:{pageSize:20},valueFormatter},external_react_table_["useBlockLayout"],external_react_table_["useResizeColumns"],external_react_table_["useSortBy"],external_react_table_["usePagination"]);return Object(jsx_runtime_["jsx"])(TableLayerBox,{children:Object(jsx_runtime_["jsxs"])(TableLayerPaper,{children:[Object(jsx_runtime_["jsx"])(TableLayerContainer,{children:Object(jsx_runtime_["jsxs"])(TableLayerTable,{...getTableProps(),children:[Object(jsx_runtime_["jsx"])(TableHeader,{headerGroups}),Object(jsx_runtime_["jsx"])(TableBody_default.a,{...getTableBodyProps(),children:page===null||page===void 0?void 0:page.map(((row,index)=>{prepareRow(row);return Object(external_react_["createElement"])(TableRow_default.a,{...row.getRowProps(),key:index},row.cells.map(((cell,i)=>{const cellProps=cell.getCellProps();return Object(external_react_["createElement"])(TableLayerTableCell,{...Object(fp_["omit"])(["style"],cellProps),_styleprops:cellProps.style,key:i},Object(jsx_runtime_["jsx"])(TableLayerTableCellBox,{component:"span",children:cell.render("Cell")}))})))}))})]})}),Object(jsx_runtime_["jsx"])(TablePagination,{gotoPage,pageIndex,pageSize,setPageSize,dataLength:data===null||data===void 0?void 0:data.length})]})})};const Table_Table=props=>{const data=external_react_default.a.useMemo((()=>props.rows),[props.rows]);const columns=external_react_default.a.useMemo((()=>props.columns),[props.columns]);return Object(jsx_runtime_["jsx"])(TableLayout,{data,columns,valueFormatter:props.valueFormatter})};const formatTableColumns=(columns,fields)=>{if(!columns)return[];if(fields!==null&&fields!==void 0&&fields.length){return fields.map((field=>{var _field$title;const column=columns.get(field.value.encoding.text.field);if(!column)return;return{Header:(_field$title=field.title)!==null&&_field$title!==void 0?_field$title:column===null||column===void 0?void 0:column.getLabel(),accessor:column===null||column===void 0?void 0:column.getName()}})).filter((tableColumn=>!!tableColumn))}return columns.map((column=>({Header:column.getLabel(),accessor:column.getName()})))};class TableLayer_Table extends PureComponent["a"]{render(){const formattedColumns=formatTableColumns(this.props.columns,this.props.fields);return Object(jsx_runtime_["jsx"])(Table_Table,{rows:this.props.rows,columns:formattedColumns,valueFormatter:(value,columnName)=>{var _this$props$columns;const column=(_this$props$columns=this.props.columns)===null||_this$props$columns===void 0?void 0:_this$props$columns.get(columnName);const tableField=this.props.fields.find((field=>field.value.encoding.text.field===columnName));if(!column||!tableField)return value;return tableField.value.encoding.text.formatValue(value,column.getType())}})}}var TableLayer=TableLayer_Table;class TableFactory_TableFactory{create(props){var _props$encoding$table,_props$encoding;return external_react_default.a.createElement(TableLayer,{columns:props.columns,fields:(_props$encoding$table=(_props$encoding=props.encoding)===null||_props$encoding===void 0?void 0:_props$encoding.table)!==null&&_props$encoding$table!==void 0?_props$encoding$table:[],rows:props.rows,key:props.id})}}class ViewLayers extends Array{}const factories={circle:new CircleFactory_CircleFactory,heatmap:new HeatmapFactory_HeatmapFactory,icon:new IconFactory_IconFactory,image:new ImageFactory_ImageFactory,line:new LineFactory_LineFactory,polygon:new PolygonFactory_PolygonFactory,text:new TextFactory_TextFactory,table:new TableFactory_TableFactory};function getFactory(type){return factories[type.toLowerCase()]}function hasFactory(layer){return!!getFactory(layer.type)}function isVegaLayer(layer){return layer.isVega()}function getViewLayerId(layer){var _animation$data,_animation$data2;const animation=layer.getAnimation();return[layer.id,layer.type,animation===null||animation===void 0?void 0:(_animation$data=animation.data)===null||_animation$data===void 0?void 0:_animation$data.type,animation===null||animation===void 0?void 0:(_animation$data2=animation.data)===null||_animation$data2===void 0?void 0:_animation$data2.field].join("#")}function getVisibleRows(layer,props,rowset){var _props$projectedRows$;if(layer.isFixedColor()||props.encodingScope===encoding_src["e"].QUERY){return new dataset_src["g"]}if(!props.projectedRows){return new dataset_src["g"]}return(_props$projectedRows$=props.projectedRows[rowset.getId()])===null||_props$projectedRows$===void 0?void 0:_props$projectedRows$.getFromBox(props.visibleWorldBox)}function createViewLayer(props,layer){var _props$queries,_props$selectedRow,_layer$transform$clus,_layer$transform,_layer$encoding;if(!layer.shouldRender(props.rowsetStore.getRowsets())){return null}const rowset=props.rowsetStore.getByTargetRowset(layer.getTargetRowset(props.zoom));if(!rowset)return null;const columns=(_props$queries=props.queries)===null||_props$queries===void 0?void 0:_props$queries.getColumns(layer.getQueryKey());const visibleRows=getVisibleRows(layer,props,rowset);const factory=getFactory(layer.type);const rows=props.projectedRows&&props.projectedRows[rowset.getId()]?props.projectedRows[rowset.getId()]:rowset.rows;return factory.create({id:getViewLayerId(layer),layerId:layer.id,encoding:layer.encoding,bearing:props.bearing,columns,editable:layer.editable,editing:!!props.editing,dragging:props.dragging,pickable:props.editing&&layer.editable||!!layer.tooltip,layerCallbacks:props.layerCallbacks,lastModified:layer.lastModified,transform:layer.transform,rows,rowsetId:rowset===null||rowset===void 0?void 0:rowset.getId(),selectedRow:((_props$selectedRow=props.selectedRow)===null||_props$selectedRow===void 0?void 0:_props$selectedRow.rowsetId)===(rowset===null||rowset===void 0?void 0:rowset.getId())?props.selectedRow:undefined,visible:{value:layer.isVisible(props.zoom),condition:layer.visible.condition},visibleRows,zoom:((_layer$transform$clus=(_layer$transform=layer.transform)===null||_layer$transform===void 0?void 0:_layer$transform.cluster)!==null&&_layer$transform$clus!==void 0?_layer$transform$clus:(_layer$encoding=layer.encoding)===null||_layer$encoding===void 0?void 0:_layer$encoding.cluster)?Math.floor(props.zoom):undefined,autoHighlight:layer.autoHighlight,dataComparator:props.dataComparator})}const createVegaViewLayers=(vegaLayers,props)=>{const layersSpec=vegaLayers.map((layer=>{var _rowset$rows;if(!layer.shouldRender(props.rowsetStore.getRowsets()))return null;if(!layer.isVisible(props.zoom))return null;const rowset=props.rowsetStore.getByTargetRowset(layer.getTargetRowset(props.zoom));if(!(rowset!==null&&rowset!==void 0&&(_rowset$rows=rowset.rows)!==null&&_rowset$rows!==void 0&&_rowset$rows.length))return null;return{id:layer.id,rows:rowset.rows,mark:layer.mark,encoding:layer.encoding}})).filter((layerSpec=>!!layerSpec));return new VegaLiteFactory_VegaLiteFactory(props.cacheStore,props.dataComparator).create({layers:layersSpec,worldBox:props.worldBox,themeMode:props.themeMode,scaleDomains:props.scaleDomains,zoom:props.zoom,zoomBehavior:props.zoomBehavior})};const createViewLayers=props=>{if(!props.layers||props.layers.length===0){return new ViewLayers}const viewLayers=[];const vegaLayers=props.layers.filter(isVegaLayer);if(vegaLayers.length){const vegaViewLayers=createVegaViewLayers(vegaLayers,props);viewLayers.push(...vegaViewLayers)}const hoparaLayers=props.layers.filter(hasFactory).map((layer=>createViewLayer(props,layer)));if(hoparaLayers.length){viewLayers.push(...hoparaLayers)}return new ViewLayers(...viewLayers)};const mapStyleNameToId={light:"419395b0-c660-4d87-b01d-e0d48df9c702","light-street":"659eb88b-0a25-45ca-a129-3682b21b1b80",dark:"6bafab84-bb35-4ff5-b048-d419f7d0da53",winter:"winter",building:"winter",terrain:"hybrid"};const getMapStyle=style=>{var _ref;const styleId=(_ref=style&&mapStyleNameToId[style])!==null&&_ref!==void 0?_ref:mapStyleNameToId.light;return`https://api.maptiler.com/maps/${styleId}/style.json?key=t0AYWwS0LsMuX1Of2myK&c=adasd`};const isDarkStyle=style=>!!style&&style==="dark";var SpecFromTenant=__webpack_require__(71);class DeckView_DeckView extends PureComponent["a"]{constructor(props){super(props);this.deckgl=void 0;this.viewLayerCache=void 0;this.visualizationId=void 0;this.renderMap=void 0;this.previousViewLayers=void 0;this.usePreviousViewLayers=void 0;this.previousLastModified=void 0;this.previousRows=void 0;this.viewLayerFilter=void 0;this.cacheStore=new Map;this.dataComparator=void 0;this.zoomStep=.5;this.state={isHoveringLayer:false,isItemDragging:false,isViewDragging:false};this.viewLayerCache=new Map;this.deckgl=external_react_default.a.createRef();this.visualizationId=props.visualization.id;this.renderMap=false;this.previousRows={};this.dataComparator=new DataComparator_DataComparator}getCursor(_ref){let{isDragging}=_ref;if(isDragging)return"grabbing";if(this.state.isHoveringLayer)return"pointer";return"grab"}shouldUseViewStateFromProps(){return this.props.viewState.visualizationId===this.visualizationId&&this.props.viewState.isNewerThan(this.state.viewState)}getViewState(){if(this.shouldUseViewStateFromProps()){return this.props.viewState}return this.state.viewState}getRowProjector(rowset){return rowset&&this.props.projector?new projector_src["c"](this.props.projector,rowset.scales):undefined}onLayerHover(info){if(!info&&this.state.isHoveringLayer)this.setState({isHoveringLayer:false});else if(info&&!this.state.isHoveringLayer)this.setState({isHoveringLayer:true});return this.props.onLayerHover&&this.props.onLayerHover(info)}onLayerDrag(info){if(!info||!info.editable||!this.props.isEditing)return;this.setState({draggingRow:{layerId:info.layerId,rowsetId:info.rowsetId,updatingRow:{...info.row,...info.updatedData}}})}onLayerDragStart(info,event){if(!info||!info.editable||!this.props.isEditing)return;if(this.props.isEditing&&info!==null&&info!==void 0&&info.editable)this.setState({isItemDragging:true});return this.props.onLayerDragStart(info,event)}onLayerDragEnd(info,event,keepEditing){if(!keepEditing){this.setState({isItemDragging:false,draggingRow:undefined})}if(!this.props.isEditing||!(info!==null&&info!==void 0&&info.editable))return;const rowset=this.props.rowsetStore.getRowset(info.rowsetId);const rowProjector=this.getRowProjector(rowset);const unprojectedInfo={...info,row:rowProjector===null||rowProjector===void 0?void 0:rowProjector.unprojectRow(info.row),updatedData:rowProjector===null||rowProjector===void 0?void 0:rowProjector.unprojectRow(info.updatedData)};return this.props.onLayerDragEnd&&this.props.onLayerDragEnd(unprojectedInfo,event)}onLayerEdit(info){return this.onLayerDrag(info)}onLayerEditEnd(info,event){return this.onLayerDragEnd(info,event,true)}getZoom(){var _this$props$viewState;return Number((_this$props$viewState=this.props.viewState)===null||_this$props$viewState===void 0?void 0:_this$props$viewState.zoom.toFixed(2))}getBearing(){var _this$props$viewState2;return(_this$props$viewState2=this.props.viewState)===null||_this$props$viewState2===void 0?void 0:_this$props$viewState2.bearing}getVisibleWorld(){var _this$props$viewState3;return(_this$props$viewState3=this.props.viewState)===null||_this$props$viewState3===void 0?void 0:_this$props$viewState3.getVisibleWorld(this.props.world)}getWorldBox(){return this.props.world?this.props.world.box():undefined}getSelectedRow(){var _this$state$draggingR;return(_this$state$draggingR=this.state.draggingRow)!==null&&_this$state$draggingR!==void 0?_this$state$draggingR:this.props.selectedRow}getThemeMode(){var _this$props$visualiza,_this$props$visualiza2;const theme=this.props.tenant?Object(SpecFromTenant["b"])(this.props.tenant):undefined;return(_this$props$visualiza=this.props.visualization)!==null&&_this$props$visualiza!==void 0&&_this$props$visualiza.getMapStyle()&&isDarkStyle((_this$props$visualiza2=this.props.visualization)===null||_this$props$visualiza2===void 0?void 0:_this$props$visualiza2.getMapStyle())?"dark":(theme===null||theme===void 0?void 0:theme.mode)==="dark"?"dark":"light"}getProjectedRows(){return this.props.rowsetStore.getRowsets().reduce(((map,rowset)=>{var _this$previousRows$ro,_rowset$rows;const rowsChanged=((_this$previousRows$ro=this.previousRows[rowset.getId()])===null||_this$previousRows$ro===void 0?void 0:_this$previousRows$ro.etag)!==((_rowset$rows=rowset.rows)===null||_rowset$rows===void 0?void 0:_rowset$rows.etag);if(!rowsChanged){return{...map,[rowset.getId()]:this.previousRows[rowset.getId()]}}const rowProjector=this.getRowProjector(rowset);const rows=rowProjector?rowProjector.project(rowset.rows,true):new dataset_src["g"];this.previousRows[rowset.getId()]=rows;return{...map,[rowset.getId()]:rows}}),{})}doGetViewLayers(){var _this$props$world;const{visualization,queries,rowsetStore,isEditing,encodingScope}=this.props;const zoom=this.getZoom();const bearing=this.getBearing();const visibleWorldBox=this.getVisibleWorld();const worldBox=this.getWorldBox();const layerCallbacks={onSelectionEdit:this.props.onSelectionEdit,onClick:this.props.onLayerClick,onDrag:this.onLayerDrag.bind(this),onHover:this.onLayerHover.bind(this),onDragStart:this.onLayerDragStart.bind(this),onDragEnd:this.onLayerDragEnd.bind(this),onEdit:this.onLayerEdit.bind(this),onEditEnd:this.onLayerEditEnd.bind(this)};return createViewLayers({visualization,zoom,bearing,visibleWorldBox,worldBox,queries,rowsetStore,layerCallbacks,encodingScope,editing:isEditing,dragging:this.state.isItemDragging,layers:this.props.layers,projectedRows:this.getProjectedRows(),selectedRow:this.getSelectedRow(),themeMode:this.getThemeMode(),cacheStore:this.cacheStore,scaleDomains:(_this$props$world=this.props.world)===null||_this$props$world===void 0?void 0:_this$props$world.getMaximizedScaleDomains(),zoomBehavior:this.props.viewState.zoomBehavior,dataComparator:this.dataComparator})}getMostRecentLayerLastModified(){return Math.max(...this.props.layers.map((layer=>{var _layer$lastModified;return(_layer$lastModified=layer.lastModified)===null||_layer$lastModified===void 0?void 0:_layer$lastModified.getMilliseconds()})))}wasLayerModified(){return!!this.previousLastModified&&this.previousLastModified!==this.getMostRecentLayerLastModified()}getViewLayers(){if(this.usePreviousViewLayers&&this.previousViewLayers&&!this.wasLayerModified()){return this.previousViewLayers}const viewLayers=this.doGetViewLayers();this.previousViewLayers=viewLayers;this.previousLastModified=this.getMostRecentLayerLastModified();return viewLayers}getZoomDirection(event){var _event$oldViewState,_event$viewState;const oldValue=(_event$oldViewState=event.oldViewState)===null||_event$oldViewState===void 0?void 0:_event$oldViewState.zoom;const currentValue=(_event$viewState=event.viewState)===null||_event$viewState===void 0?void 0:_event$viewState.zoom;if(currentValue-oldValue>0)return"in";return"out"}nextZoomStep(zoom){if(Number.isInteger(zoom))return zoom+this.zoomStep;return Math.ceil(zoom*(1/this.zoomStep))/(1/this.zoomStep)}prevZoomStep(zoom){if(Number.isInteger(zoom))return zoom-this.zoomStep;return Math.floor(zoom*(1/this.zoomStep))/(1/this.zoomStep)}shouldNotifyZooming(event){var _event$interactionSta,_event$oldViewState3,_event$viewState3;if((_event$interactionSta=event.interactionState)!==null&&_event$interactionSta!==void 0&&_event$interactionSta.inTransition){return false}if(this.getZoomDirection(event)==="in"){var _event$oldViewState2,_event$viewState2;const stateNextStep=this.nextZoomStep((_event$oldViewState2=event.oldViewState)===null||_event$oldViewState2===void 0?void 0:_event$oldViewState2.zoom);const eventNextStep=this.nextZoomStep((_event$viewState2=event.viewState)===null||_event$viewState2===void 0?void 0:_event$viewState2.zoom);return stateNextStep!=eventNextStep}const statePrevStep=this.prevZoomStep((_event$oldViewState3=event.oldViewState)===null||_event$oldViewState3===void 0?void 0:_event$oldViewState3.zoom);const eventPrevStep=this.prevZoomStep((_event$viewState3=event.viewState)===null||_event$viewState3===void 0?void 0:_event$viewState3.zoom);return statePrevStep!==eventPrevStep}getViews(){return[]}getViewController(){if(this.props.viewController.dragPan&&this.state.isItemDragging){const controller=this.props.viewController.clone();controller.dragPan=!this.state.isItemDragging;return controller}return this.props.viewController}onViewStateChange(event){if(this.props.visualization.id!==this.visualizationId)return;if(event.interactionState.isZooming&&this.shouldNotifyZooming(event)&&this.props.onViewZooming){return this.props.onViewZooming({...event})}else{this.setState({viewState:this.props.viewState.withDeckViewState(this.props.world,event.viewState)})}}onViewHover(info){var _info$layer,_info$layer$props,_info$layer2,_info$layer2$props;if(!(info!==null&&info!==void 0&&(_info$layer=info.layer)!==null&&_info$layer!==void 0&&(_info$layer$props=_info$layer.props)!==null&&_info$layer$props!==void 0&&_info$layer$props.pickable)&&this.state.isHoveringLayer)return this.setState({isHoveringLayer:false});if(this.props.isEditing&&(_info$layer2=info.layer)!==null&&_info$layer2!==void 0&&(_info$layer2$props=_info$layer2.props)!==null&&_info$layer2$props!==void 0&&_info$layer2$props.editable)return;return this.props.onViewHover&&this.props.onViewHover(info)}onViewClick(info){var _info$layer3,_info$layer3$props;if(this.props.isEditing&&(_info$layer3=info.layer)!==null&&_info$layer3!==void 0&&(_info$layer3$props=_info$layer3.props)!==null&&_info$layer3$props!==void 0&&_info$layer3$props.editable)return;return this.props.onViewClick&&this.props.onViewClick(info)}onViewDragStart(info){var _info$layer4,_info$layer4$props;if(this.props.isEditing&&(_info$layer4=info.layer)!==null&&_info$layer4!==void 0&&(_info$layer4$props=_info$layer4.props)!==null&&_info$layer4$props!==void 0&&_info$layer4$props.editable&&this.state.isItemDragging)return;this.setState({isViewDragging:true});return this.props.onViewDragStart&&this.props.onViewDragStart(info)}onViewDragEnd(info){var _this$getViewState;if(!this.state.isViewDragging)return;if(this.props.onViewDragEnd)this.props.onViewDragEnd(info,(_this$getViewState=this.getViewState())===null||_this$getViewState===void 0?void 0:_this$getViewState.getDeckViewState(this.props.world));this.setState({isViewDragging:false})}UNSAFE_componentWillUpdate(nextProps,nextState){this.usePreviousViewLayers=nextState.viewState!==this.state.viewState&&nextProps===this.props&&this.state.draggingRow===nextState.draggingRow}onViewLoad(){const dimensions={width:this.deckgl.current.deck.width,height:this.deckgl.current.deck.height};const viewState=this.deckgl.current.deck.props.viewState;this.props.onViewLoad(dimensions,viewState)}render(){var _this$getViewState2;const deckViewState=(_this$getViewState2=this.getViewState())===null||_this$getViewState2===void 0?void 0:_this$getViewState2.getDeckViewState(this.props.world);if(!deckViewState)return null;return Object(jsx_runtime_["jsx"])(jsx_runtime_["Fragment"],{children:Object(jsx_runtime_["jsx"])(typed_default.a,{ref:this.deckgl,viewState:deckViewState,views:this.getViews(),layers:this.getViewLayers(),onLoad:this.onViewLoad.bind(this),onResize:size=>this.props.onViewResize&&this.props.onViewResize(size),onHover:this.onViewHover.bind(this),layerFilter:this.viewLayerFilter,onClick:this.onViewClick.bind(this),onDragStart:this.onViewDragStart.bind(this),onDragEnd:this.onViewDragEnd.bind(this),onViewStateChange:event=>this.onViewStateChange(event),getCursor:this.getCursor.bind(this),children:this.renderMap&&Object(jsx_runtime_["jsx"])(external_react_map_gl_default.a,{reuseMaps:true,mapLib:external_maplibre_gl_default.a,mapStyle:getMapStyle(this.props.visualization.mapStyle),styleDiffing:false,attributionControl:false,interactive:false})})})}}var view_DeckView=DeckView_DeckView;const isMapEnabled=config_src["a"].getValueAsBoolean("ENABLE_MAP");class GeoViewComponent_GeoViewComponent extends view_DeckView{constructor(props){super(props);this.renderMap=isMapEnabled}getViews(){return[new core_["MapView"]({id:"main-view",controller:this.getViewController()})]}}var external_reselect_=__webpack_require__(26);const currentVisualizationSelector=Object(external_reselect_["createSelector"])([_ref=>{let{visualizations}=_ref;return visualizations}],(visualizations=>visualizations.getCurrent()));const viewStateSelector=Object(external_reselect_["createSelector"])([_ref2=>{let{viewStates}=_ref2;return viewStates},currentVisualizationSelector],((viewStates,currentVisualization)=>viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const viewControllerSelector=Object(external_reselect_["createSelector"])([_ref3=>{let{viewControllers}=_ref3;return viewControllers},currentVisualizationSelector],((viewControllers,currentVisualization)=>viewControllers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const axesListSelector=Object(external_reselect_["createSelector"])([_ref4=>{let{axesList}=_ref4;return axesList},currentVisualizationSelector],((axesList,currentVisualization)=>axesList.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const projectorSelector=Object(external_reselect_["createSelector"])([_ref5=>{let{projectorStore}=_ref5;return projectorStore},currentVisualizationSelector],((projectorStore,currentVisualization)=>projectorStore.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const layersSelector=Object(external_reselect_["createSelector"])([_ref6=>{let{layers}=_ref6;return layers},currentVisualizationSelector],((layers,currentVisualization)=>layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const worldSelector=Object(external_reselect_["createSelector"])([_ref7=>{let{worlds}=_ref7;return worlds},currentVisualizationSelector],((worlds,currentVisualization)=>worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const GeoViewContainer_mapStateToProps=state=>({isEditing:state.appStore.isEditing,jumpState:state.jump,layers:layersSelector(state),queries:state.queryStore.queries,rowsetStore:state.rowsetStore,encodingScope:state.encodingScope,selectedRow:state.viewLayers.selectedRow,tooltipEnabled:!!state.tooltip,tenant:state.authorization.tenant,viewStates:state.viewStates,viewState:viewStateSelector(state),visualization:currentVisualizationSelector(state),visualizations:state.visualizations,viewController:viewControllerSelector(state),axesList:axesListSelector(state),projector:projectorSelector(state),worlds:state.worlds,world:worldSelector(state)});const GeoViewContainer_mapDispatchToProps=dispatch=>({layerActions:ViewLayerActions(dispatch),viewActions:Object(ViewActions["b"])(dispatch)});const GeoViewContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps.layerActions(stateProps.visualizations,stateProps.isEditing,!!stateProps.selectedRow,stateProps.tooltipEnabled),...dispatchProps.viewActions(stateProps.viewStates,stateProps.worlds,stateProps.visualizations,!!stateProps.selectedRow,stateProps.tooltipEnabled)});var GeoViewContainer=Object(external_react_redux_["connect"])(GeoViewContainer_mapStateToProps,GeoViewContainer_mapDispatchToProps,GeoViewContainer_mergeProps,{context:Store["a"]})(GeoViewComponent_GeoViewComponent);var OrthographicView=__webpack_require__(56);var Paddings=__webpack_require__(31);class CartesianViewComponent_CartesianViewComponent extends view_DeckView{constructor(){super(...arguments);this.viewLayerFilter=_ref=>{let{layer,viewport}=_ref;if(!layer.props.targetView&&viewport.id==="main-view")return true;return layer.props.targetView===viewport.id}}getViews(){const viewPortProps=this.props.viewState.getOrtographicViewPortProps(this.props.world);return[new OrthographicView["b"]({...viewPortProps,id:"vega-background",controller:false,width:viewPortProps.width+Paddings["b"]*2,height:viewPortProps.height+Paddings["b"]*2,x:0,y:0,fixedX:true,fixedY:true,translationMatrix:[Paddings["b"],Paddings["b"]+Paddings["a"],0]}),new OrthographicView["b"]({...viewPortProps,id:"vega-axes-y",controller:false,width:viewPortProps.width+Paddings["a"],x:Paddings["a"],y:Paddings["a"],fixedX:true}),new OrthographicView["b"]({...viewPortProps,id:"vega-axes-x",controller:false,height:viewPortProps.height+Paddings["a"],fixedY:true}),new OrthographicView["b"]({...viewPortProps,id:"main-view",controller:this.getViewController()})]}}const CartesianViewContainer_currentVisualizationSelector=Object(external_reselect_["createSelector"])([_ref=>{let{visualizations}=_ref;return visualizations}],(visualizations=>visualizations.getCurrent()));const CartesianViewContainer_viewStateSelector=Object(external_reselect_["createSelector"])([_ref2=>{let{viewStates}=_ref2;return viewStates},CartesianViewContainer_currentVisualizationSelector],((viewStates,currentVisualization)=>viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_viewControllerSelector=Object(external_reselect_["createSelector"])([_ref3=>{let{viewControllers}=_ref3;return viewControllers},CartesianViewContainer_currentVisualizationSelector],((viewControllers,currentVisualization)=>viewControllers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_axesListSelector=Object(external_reselect_["createSelector"])([_ref4=>{let{axesList}=_ref4;return axesList},CartesianViewContainer_currentVisualizationSelector],((axesList,currentVisualization)=>axesList.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_projectorSelector=Object(external_reselect_["createSelector"])([_ref5=>{let{projectorStore}=_ref5;return projectorStore},CartesianViewContainer_currentVisualizationSelector],((projectorStore,currentVisualization)=>projectorStore.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_layersSelector=Object(external_reselect_["createSelector"])([_ref6=>{let{layers}=_ref6;return layers},CartesianViewContainer_currentVisualizationSelector],((layers,currentVisualization)=>layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_worldSelector=Object(external_reselect_["createSelector"])([_ref7=>{let{worlds}=_ref7;return worlds},CartesianViewContainer_currentVisualizationSelector],((worlds,currentVisualization)=>worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const CartesianViewContainer_mapStateToProps=state=>({isEditing:state.appStore.isEditing,jumpState:state.jump,layers:CartesianViewContainer_layersSelector(state),queries:state.queryStore.queries,rowsetStore:state.rowsetStore,encodingScope:state.encodingScope,selectedRow:state.viewLayers.selectedRow,tooltipEnabled:!!state.tooltip,tenant:state.authorization.tenant,viewStates:state.viewStates,viewState:CartesianViewContainer_viewStateSelector(state),visualization:CartesianViewContainer_currentVisualizationSelector(state),visualizations:state.visualizations,viewController:CartesianViewContainer_viewControllerSelector(state),axesList:CartesianViewContainer_axesListSelector(state),projector:CartesianViewContainer_projectorSelector(state),worlds:state.worlds,world:CartesianViewContainer_worldSelector(state)});const CartesianViewContainer_mapDispatchToProps=dispatch=>({layerActions:ViewLayerActions(dispatch),viewActions:Object(ViewActions["b"])(dispatch)});const CartesianViewContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps.layerActions(stateProps.visualizations,stateProps.isEditing,!!stateProps.selectedRow,stateProps.tooltipEnabled),...dispatchProps.viewActions(stateProps.viewStates,stateProps.worlds,stateProps.visualizations,!!stateProps.selectedRow,stateProps.tooltipEnabled),visualizations:null,viewStates:null});var CartesianViewContainer=Object(external_react_redux_["connect"])(CartesianViewContainer_mapStateToProps,CartesianViewContainer_mapDispatchToProps,CartesianViewContainer_mergeProps,{context:Store["a"]})(CartesianViewComponent_CartesianViewComponent);var external_d3_=__webpack_require__(22);const LegendView=Object(src_theme["a"])("div",{name:"LegendView"})((_ref=>{let{theme,_isCartesian,_visible}=_ref;const style=Object(react_["css"])({borderRadius:theme.shape.borderRadius,fontSize:theme.typography.fontSize,position:"absolute",top:theme.shape.paddingInner,right:theme.shape.paddingInner,padding:theme.shape.paddingInner,backgroundColor:"rgba(255,255,255,0.66)",backdropFilter:"blur(10px)",transition:"all 0.42s ease",overflow:"hidden",transform:`translateX(${_visible?"0":"250%"})`,zIndex:99,"@media (min-width: 768px)":{top:"auto",right:theme.shape.paddingInner,bottom:theme.shape.paddingInner+30},"& svg":{transition:"height 0.2s ease"},"& .LegendViewBox":{transform:"translate(0, 0)"},"& text":{fontSize:theme.typography.body2.fontSize,fontFamily:theme.typography.body2.fontFamily,fill:theme.palette.text.primary},"& .legendTitle":{display:"none"},"& .role-legend-title":{display:"none"},"& .role-legend-entry > g":{transform:"translate(0, 0)"},"& .role-mark":{display:"none"},"& .role-legend > g":{transform:"translate(0, 0)"},"& .legendCells":{opacity:0,transition:"opacity 0.2s ease"},"& .LegendExpanded .legendCells":{opacity:1},"& .LegendExpanded .role-legend-entry":{opacity:1}});if(_isCartesian){return Object(react_["css"])([style,Object(react_["css"])({"@media (min-width: 768px)":{transform:`translateX(${_visible?"0":"-250%"})`,bottom:"auto",right:"auto",left:55,top:30}})])}return style}));const LegendViewContent=Object(src_theme["a"])("div",{name:"LegendViewContent"})({transition:"height 0.2s ease",overflow:"hidden"});const LegendTitleBox=Object(src_theme["a"])(material_["Box"],{name:"LegendTitleBox"})({display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"});const LegendTitleTypography=Object(src_theme["a"])(material_["Typography"],{name:"LegendTitleTypography"})({cursor:"pointer"});const LegendTitleIconButton=Object(src_theme["a"])(material_["IconButton"],{name:"LegendTitleIconButton"})({marginLeft:5});const LegendTitle=_ref=>{let{title,onClick,expanded}=_ref;return Object(jsx_runtime_["jsxs"])(LegendTitleBox,{children:[Object(jsx_runtime_["jsx"])(LegendTitleTypography,{variant:"body1",onClick:()=>onClick(),children:title}),Object(jsx_runtime_["jsxs"])(LegendTitleIconButton,{onClick:()=>onClick(),children:[!expanded&&Object(jsx_runtime_["jsx"])(icons_material_["ExpandMore"],{}),expanded&&Object(jsx_runtime_["jsx"])(icons_material_["ExpandLess"],{})]})]})};class LegendCartesianComponent_LegendCartesianComponent extends PureComponent["a"]{constructor(props){super(props);this._ref=external_react_default.a.createRef();this.view=void 0;this.lastCacheKey="";this.state={expanded:false,visible:false,title:""}}setTitle(title){if(this.state.title!==title){this.setState({title})}}getLayerSpec(layer){var _layer$getTargetRowse,_this$props$rowsetSto,_this$props$rowsetSto2;const rowsetId=(_layer$getTargetRowse=layer.getTargetRowset(this.props.zoom))===null||_layer$getTargetRowse===void 0?void 0:_layer$getTargetRowse.getId();const layerRows=rowsetId?(_this$props$rowsetSto=(_this$props$rowsetSto2=this.props.rowsetStore.getRowset(rowsetId))===null||_this$props$rowsetSto2===void 0?void 0:_this$props$rowsetSto2.rows)!==null&&_this$props$rowsetSto!==void 0?_this$props$rowsetSto:[]:[];return{data:{values:layerRows},mark:layer.mark,encoding:{...layer===null||layer===void 0?void 0:layer.encoding,x:null,y:null,z:null}}}getSpec(){var _this$props$layers$fi;return{background:null,height:0,width:0,layer:(_this$props$layers$fi=this.props.layers.filter((layer=>layer.isVega())).map((layerSpec=>this.getLayerSpec(layerSpec))))!==null&&_this$props$layers$fi!==void 0?_this$props$layers$fi:[]}}createCacheKey(inputSpec){const dataKeys=inputSpec.layer.reduce(((key,layer)=>{var _layer$data,_layer$data$values;return`${key}_${(_layer$data=layer.data)===null||_layer$data===void 0?void 0:(_layer$data$values=_layer$data.values)===null||_layer$data$values===void 0?void 0:_layer$data$values.etag}`}),"");return`${dataKeys}_${this.state.expanded}_${this.state.visible}`}shouldRecreate(inputSpec){const cacheKey=this.createCacheKey(inputSpec);if(cacheKey===this.lastCacheKey)return false;this.lastCacheKey=cacheKey;return true}async createLegend(){var _innerHTML,_svgElm$select$node,_d3$select$select$nod;const inputSpec=this.getSpec();if(!this.shouldRecreate(inputSpec))return;const vegaSpec=external_vega_lite_["compile"](inputSpec);if(!vegaSpec||!vegaSpec.spec)return;const runtime=external_vega_["parse"](vegaSpec.spec);this.view=await new external_vega_["View"](runtime,{renderer:"svg",container:this._ref.current}).runAsync();if(external_d3_["select"](this._ref.current).select("g.role-legend").empty()&&this._ref.current){return this.setState({visible:false})}else if(!this._ref.current){return}this.setState({visible:true});const svgElm=external_d3_["select"](this._ref.current).select("svg");if(!svgElm.empty()&&this.state.expanded){svgElm.node().classList.add("LegendExpanded")}const firstGElm=svgElm.select("g").node();if(firstGElm){firstGElm.style.transform="translate(0, 0)"}const title=(_innerHTML=(_svgElm$select$node=svgElm.select(".role-legend-title text").node())===null||_svgElm$select$node===void 0?void 0:_svgElm$select$node.innerHTML)!==null&&_innerHTML!==void 0?_innerHTML:"";this.setTitle(title);const dimensions=(_d3$select$select$nod=external_d3_["select"](this._ref.current).select(".role-legend-entry").node())===null||_d3$select$select$nod===void 0?void 0:_d3$select$select$nod.getBBox();if(dimensions){this._ref.current.style.height=`${this.state.expanded?dimensions.height:0}px`}}componentDidUpdate(){this.createLegend()}render(){var _this$props$visualiza;if(!this.props.layers.length)return null;return Object(jsx_runtime_["jsxs"])(LegendView,{_isCartesian:(_this$props$visualiza=this.props.visualization)===null||_this$props$visualiza===void 0?void 0:_this$props$visualiza.isCartesian(),_visible:!!this.state.visible,children:[Object(jsx_runtime_["jsx"])(LegendTitle,{title:this.state.title,onClick:()=>this.setState({expanded:!this.state.expanded}),expanded:!!this.state.expanded}),Object(jsx_runtime_["jsx"])(LegendViewContent,{ref:this._ref})]})}}var external_d3_svg_legend_=__webpack_require__(96);var external_d3_svg_legend_default=__webpack_require__.n(external_d3_svg_legend_);var D3Formatter=__webpack_require__(85);var ValueFormatter=__webpack_require__(59);external_d3_svg_legend_default.a.legendColor.prototype.labelFormat=fn=>fn;const d3=__webpack_require__(22);const isLegendCandidate=layer=>{var _layer$encoding$color;if(!layer)return false;if(!((_layer$encoding$color=layer.encoding.color)!==null&&_layer$encoding$color!==void 0&&_layer$encoding$color.field))return false;return!layer.isFixedColor()};const getScale=_ref=>{let{visualization,layers,rowsetStore,zoom,queries,legends,visibleWorldBox}=_ref;if(!visualization)return{};const validLayers=layers.getVisibleFromVisualization(visualization.id,zoom).renderable(rowsetStore.getRowsets());const validLegend=legends.find((legend=>validLayers.some((layer=>legend.layer===layer.name&&layer.belongsToVisualization(legend.visualizationId)))));if(!validLegend)return{};const validLayer=validLayers.find((layer=>layer.name===validLegend.layer));if(!validLayer)return{};if(!isLegendCandidate(validLayer)){return{}}const targetRowset=validLayer.getTargetRowset(zoom);if(!targetRowset)return{};const rowset=rowsetStore.getRowset(targetRowset.getId());if(!rowset)return{};const query=queries.findQuery(rowset.getData());const color=validLayer.encoding.color;const column=query===null||query===void 0?void 0:query.getColumns().get(color.field);if(!column)return{};const scale=color.getScale(rowset.rows,rowset.rows.getFromBox(visibleWorldBox),Object(encoding_src["n"])(color,query===null||query===void 0?void 0:query.getColumns()),encoding_src["b"].hex);return{scale,valueFormatter:Object(ValueFormatter["b"])(column.getType()),columnLabel:column.getLabel(),reversed:color.scale.reverse}};const DEFAULT_INVALID_LABEL_VALUE="___INVALID_LABEL_VALUE___";class LegendGeoComponent_LegendGeoComponent extends external_react_["PureComponent"]{constructor(props){super(props);this._ref=external_react_default.a.createRef();this.state={expanded:false,visible:false,title:""}}setTitle(title){if(title!==this.state.title){this.setState({title})}}removeQuantileDuplicatedValues(scale,_ref2){let{i,domain,generatedLabels}=_ref2;const quantilesWithMin=[domain[0],...scale.quantiles()];const isSameAsNext=i<quantilesWithMin.length+1?quantilesWithMin[i]===quantilesWithMin[i+1]:false;if(isSameAsNext)return DEFAULT_INVALID_LABEL_VALUE;return generatedLabels[i]}formatLabels(scale,_ref3){let{i,domain,generatedLabels}=_ref3;const isQuantile=!!scale.quantiles;if(isQuantile)return this.removeQuantileDuplicatedValues(scale,{i,domain,generatedLabels});return generatedLabels[i]}removeInvalidValues(){for(var _len=arguments.length,filterParams=new Array(_len),_key=0;_key<_len;_key++){filterParams[_key]=arguments[_key]}const[cell]=filterParams;return cell.label!==DEFAULT_INVALID_LABEL_VALUE}renderLegend(){const{scale,valueFormatter,columnLabel,reversed}=getScale({layers:this.props.layers,rowsetStore:this.props.rowsetStore,zoom:this.props.zoom,visualization:this.props.visualization,queries:this.props.queries,legends:this.props.legends,visibleWorldBox:this.props.visibleWorldBox});const svgElm=d3.select(this._ref.current).select("svg");if(svgElm.empty()){d3.select(this._ref.current).append("svg")}const svg=d3.select(this._ref.current).select("svg");d3.select(this._ref.current).selectAll("g").remove();if(!scale){return this.setState({visible:false})}else if(!this._ref.current){return}this.setState({visible:true});let stringFormat="";if(valueFormatter instanceof D3Formatter["a"]){var _valueFormatter$getFo;stringFormat=(_valueFormatter$getFo=valueFormatter.getFormatString())!==null&&_valueFormatter$getFo!==void 0?_valueFormatter$getFo:""}const legendBoxClasses=["LegendViewBox"];if(this.state.expanded){legendBoxClasses.push("LegendExpanded")}svg.append("g").attr("class",legendBoxClasses.join(" ")).attr("transform","translate(20, 30)");const legendSettings=external_d3_svg_legend_default.a.legendColor().title(columnLabel!==null&&columnLabel!==void 0?columnLabel:"").shapeWidth(15).orient("vertical").ascending(!reversed).labelFormat(d3.format(stringFormat)).labels((props=>this.formatLabels(scale,props))).cellFilter(this.removeInvalidValues).scale(scale);svg.select(".LegendViewBox").call(legendSettings);const title=svg.select(".legendTitle").node().innerHTML;this.setTitle(title);const dimensions=d3.select(this._ref.current).select("svg .legendCells").node().getBBox();if(dimensions){this._ref.current.style.width=`${dimensions.width}px`;this._ref.current.style.height=`${this.state.expanded?dimensions.height:0}px`}}componentDidMount(){this.renderLegend()}componentDidUpdate(){this.renderLegend()}render(){var _this$props$visualiza;return Object(jsx_runtime_["jsxs"])(LegendView,{_isCartesian:(_this$props$visualiza=this.props.visualization)===null||_this$props$visualiza===void 0?void 0:_this$props$visualiza.isCartesian(),_visible:!!this.state.visible,children:[Object(jsx_runtime_["jsx"])(LegendTitle,{title:this.state.title,onClick:()=>this.setState({expanded:!this.state.expanded}),expanded:this.state.expanded}),Object(jsx_runtime_["jsx"])(LegendViewContent,{ref:this._ref})]})}}class LegendComponent_LegendComponent extends external_react_default.a.Component{render(){var _this$props$visualiza,_this$props$visualiza2;if((_this$props$visualiza=this.props.visualization)!==null&&_this$props$visualiza!==void 0&&_this$props$visualiza.isCartesian()){return Object(jsx_runtime_["jsx"])(LegendCartesianComponent_LegendCartesianComponent,{...this.props})}else if((_this$props$visualiza2=this.props.visualization)!==null&&_this$props$visualiza2!==void 0&&_this$props$visualiza2.isGeo()){return Object(jsx_runtime_["jsx"])(LegendGeoComponent_LegendGeoComponent,{...this.props})}return null}}const LegendContainer_layersSelector=_ref=>{let{layers}=_ref;return layers};const visualizationSelector=_ref2=>{let{visualizations}=_ref2;return visualizations};const viewStatesSelector=_ref3=>{let{viewStates}=_ref3;return viewStates};const worldsSelector=_ref4=>{let{worlds}=_ref4;return worlds};const LegendContainer_currentVisualizationSelector=Object(external_reselect_["createSelector"])([visualizationSelector],(visualizations=>visualizations.getCurrent()));const currentLayersSelector=Object(external_reselect_["createSelector"])([LegendContainer_layersSelector,LegendContainer_currentVisualizationSelector],((layers,currentVisualization)=>layers.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const currentViewStateSelector=Object(external_reselect_["createSelector"])([viewStatesSelector,LegendContainer_currentVisualizationSelector],((viewStates,currentVisualization)=>viewStates.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const currentWorldSelector=Object(external_reselect_["createSelector"])([worldsSelector,LegendContainer_currentVisualizationSelector],((worlds,currentVisualization)=>worlds.getFromVisualization(currentVisualization===null||currentVisualization===void 0?void 0:currentVisualization.id)));const LegendContainer_viewStateSelector=Object(external_reselect_["createSelector"])([currentViewStateSelector,currentWorldSelector],((viewState,world)=>{const zoom=Number(viewState.zoom.toFixed(0));const visibleWorldBox=viewState.getVisibleWorld(world);return{zoom,visibleWorldBox}}));const LegendContainer_mapStateToProps=state=>({rowsetStore:state.rowsetStore,queries:state.queryStore.queries,legends:state.legends,layers:currentLayersSelector(state),visualization:LegendContainer_currentVisualizationSelector(state),...LegendContainer_viewStateSelector(state)});var LegendContainer=Object(external_react_redux_["connect"])(LegendContainer_mapStateToProps,null,null,{context:Store["a"]})(LegendComponent_LegendComponent);const CustomView=Object(src_theme["a"])("div",{name:"CustomView"})((_ref=>{let{theme}=_ref;return{padding:`70px 3.5rem ${theme.shape.paddingInner}px ${theme.shape.paddingInner}px`,height:"100%","@media (min-width: 768px)":{paddingTop:theme.shape.paddingInner}}}));class CustomViewComponent_CustomViewComponent extends PureComponent["a"]{constructor(props){super(props);this.viewLayerCache=void 0;this.viewLayerCache=new Map}componentDidMount(){this.props.onViewLoad()}getViewLayers(){return createViewLayers({visualization:this.props.currentVisualization,layers:this.props.layers.getFromVisualization(this.props.currentVisualization.id).renderable(this.props.rowsetStore.getRowsets()),queries:this.props.queries,rowsetStore:this.props.rowsetStore,visibleWorldBox:this.props.visibleWorldBox,zoom:0,encodingScope:this.props.encodingScope,themeMode:"light"})}render(){return Object(jsx_runtime_["jsx"])(CustomView,{children:this.getViewLayers()})}}const CustomViewContainer_mapStateToProps=state=>{var _getFromVisualization;return{visualizations:state.visualizations,layers:state.layers,queries:state.queryStore.queries,rowsetStore:state.rowsetStore,currentVisualization:state.visualizations.getCurrent(),encodingScope:state.encodingScope,visibleWorldBox:state.visualizations.getCurrent()&&((_getFromVisualization=state.worlds.getFromVisualization(state.visualizations.getCurrent().id))===null||_getFromVisualization===void 0?void 0:_getFromVisualization.box())}};const CustomViewContainer_mapDispatchToProps=dispatch=>({onViewLoad:visualizations=>()=>{const currentVisualization=visualizations.getCurrent();if(!currentVisualization)return;if(visualizations.getCurrentIndex()>0){dispatch(Actions["a"].view.jumpViewLoaded({visualizationId:currentVisualization.id}))}else{dispatch(Actions["a"].view.viewLoaded({visualizationId:currentVisualization.id}))}}});const CustomViewContainer_mergeProps=(stateProps,dispatchProps)=>({...stateProps,...dispatchProps,onViewLoad:dispatchProps.onViewLoad(stateProps.visualizations,stateProps.jumpState)});var CustomViewContainer=Object(external_react_redux_["connect"])(CustomViewContainer_mapStateToProps,CustomViewContainer_mapDispatchToProps,CustomViewContainer_mergeProps,{context:Store["a"]})(CustomViewComponent_CustomViewComponent);var external_react_transition_group_=__webpack_require__(65);var ViewTransition_module=__webpack_require__(41);var ViewTransition_module_default=__webpack_require__.n(ViewTransition_module);const dotBricksKeyframes=react_["keyframes"]`
3
3
  0% {
4
4
  box-shadow: 9991px -16px 0 0, 9991px 0 0 0, 10007px 0 0 0
5
5
  }