MCPcopy
hub / github.com/apache/echarts / _innerSelect

Method _innerSelect

src/model/Series.ts:685–719  ·  view source on GitHub ↗
(data: SeriesData, innerDataIndices: number[])

Source from the content-addressed store, hash-verified

683 }
684
685 private _innerSelect(data: SeriesData, innerDataIndices: number[]) {
686 const option = this.option;
687 const selectedMode = option.selectedMode;
688 const len = innerDataIndices.length;
689 if (!selectedMode || !len) {
690 return;
691 }
692
693 if (selectedMode === 'series') {
694 option.selectedMap = 'all';
695 }
696 else if (selectedMode === 'multiple') {
697 if (!zrUtil.isObject(option.selectedMap)) {
698 option.selectedMap = {};
699 }
700 const selectedMap = option.selectedMap;
701 for (let i = 0; i < len; i++) {
702 const dataIndex = innerDataIndices[i];
703 // TODO different types of data share same object.
704 const nameOrId = getSelectionKey(data, dataIndex);
705 selectedMap[nameOrId] = true;
706 this._selectedDataIndicesMap[nameOrId] = data.getRawIndex(dataIndex);
707 }
708 }
709 else if (selectedMode === 'single' || selectedMode === true) {
710 const lastDataIndex = innerDataIndices[len - 1];
711 const nameOrId = getSelectionKey(data, lastDataIndex);
712 option.selectedMap = {
713 [nameOrId]: true
714 };
715 this._selectedDataIndicesMap = {
716 [nameOrId]: data.getRawIndex(lastDataIndex)
717 };
718 }
719 }
720
721 private _initSelectedMapFromData(data: SeriesData) {
722 // Ignore select info in data if selectedMap exists.

Callers 2

selectMethod · 0.95

Calls 2

getSelectionKeyFunction · 0.85
getRawIndexMethod · 0.65

Tested by

no test coverage detected