.catch((xhr) => { ErrorReport(this.getFlux(), API.errorMessage(xhr), () => this.fetchData(this.props)); this.setState({loadStatus: 'error'}); });
if (['chromosome', 'table', 'channel', 'query'].some((prop) => this.props[prop] !== props[prop])) { this.data = { dataStart: 0, dataStep: 0, primKeys: [], colourVals: [], columns: {} }; this.applyData(props); } if (width - sideWidth < 1) { return; } if (!this.config.tablesById[table] || !this.config.tablesById[table].tableBasedSummaryValuesById[channel]) { ErrorReport(this.getFlux(), `${props.group}/${props.track} is not a valid per row summary track`); return; } if (colourProperty && !this.config.tablesById[table].propertiesById[colourProperty]) { ErrorReport(this.getFlux(), `Per ${table} channel: ${colourProperty} is not a valid property of ${table}`); return; } this.props.onChangeLoadStatus('LOADING'); let columns = [tableConfig.primKey]; if (colourProperty) columns.push(colourProperty); let APIargs = { database: this.config.dataset, table, columns, query,
.catch((error) => { ErrorReport(this.getFlux(), error.message, () => this.fetchData(props, requestContext)); });
.catch((error) => { ErrorReport(this.getFlux(), error.message, () => this.fetchData(props, requestContext)); this.setState({loadStatus: 'error'}); });
.catch((error) => { ErrorReport(this.getFlux(), error.message, () => this.fetchData(props)); changeLayerStatus({loadStatus: 'error'}); });
.catch((error) => { this.applyData(this.props, []); ErrorReport(this.getFlux(), error.message, () => this.fetchData(nextProps, requestContext)); throw error; })
const tableConfig = this.config.tablesById[table]; if (this.props.chromosome !== chromosome || this.props.track !== track || this.props.query !== query || this.props.table !== table) { this.applyData(nextProps, []); } if (width < 1) { return; } if (!tableConfig || !tableConfig.propertiesById[track] || !tableConfig.propertiesById[track].showInBrowser || !(tableConfig.propertiesById[track].isCategorical || tableConfig.propertiesById[track].isBoolean) ) { ErrorReport(this.getFlux(), `${table}/${track} is not a valid categorical summary track`); return; } const {blockLevel, blockIndex, needNext, summaryWindow} = findBlock({start, end, width}); //If we already at this block then don't change it! if (this.props.chromosome !== chromosome || this.props.track !== track || this.props.query !== query || this.props.table !== table || !(this.blockLevel === blockLevel && this.blockIndex === blockIndex && this.needNext === needNext && this.requestSummaryWindow === summaryWindow )) { //Current block was unacceptable so choose best one this.blockLevel = blockLevel;
.catch((error) => { console.error(error); ErrorReport(this.getFlux(), error.message, () => this.fetchData(props, requestContext)); changeLayerStatus({loadStatus: 'error'}); });