public syncSelectionState()

in src/interactivitySelectionService.ts [124:153]


    public syncSelectionState(): void {
        if (this.isInvertedSelectionMode) {
            return this.syncSelectionStateInverted();
        }

        if (!this.selectableDataPoints && !this.selectableLegendDataPoints) {
            return;
        }

        // get current state of selections from selection manager
        const selectedIds: ISelectionId[] = <ISelectionId[]>this.selectionManager.getSelectionIds();
        if (this.selectableDataPoints) {
            // update datapoints (set selection state for datapoint, update `selected` property of datapoint)
            this.updateSelectableDataPointsBySelectedIds(this.selectableDataPoints, selectedIds);
        }

        if (this.selectableLegendDataPoints) {
            // update datapoints for legend datapoint (set selection state for datapoint, update `selected` property of datapoint)
            this.updateSelectableDataPointsBySelectedIds(this.selectableLegendDataPoints, selectedIds);
        }

        if (this.selectableLabelsDataPoints) {
            // update datapoints for label datapoints
            for (let labelsDataPoint of this.selectableLabelsDataPoints) {
                labelsDataPoint.selected = selectedIds.some((value: ISelectionId) => {
                    return value.includes(<ISelectionId>labelsDataPoint.identity);
                });
            }
        }
    }