|
@@ -1,8 +1,10 @@
|
|
|
-import {createStore, StoreDefinition} from 'reflux';
|
|
|
+import {createStore} from 'reflux';
|
|
|
|
|
|
import GroupStore from 'sentry/stores/groupStore';
|
|
|
import {makeSafeRefluxStore} from 'sentry/utils/makeSafeRefluxStore';
|
|
|
|
|
|
+import {CommonStoreDefinition} from './types';
|
|
|
+
|
|
|
interface InternalDefinition {
|
|
|
/**
|
|
|
* The last item to have been selected
|
|
@@ -15,7 +17,9 @@ interface InternalDefinition {
|
|
|
records: Map<string, boolean>;
|
|
|
}
|
|
|
|
|
|
-interface SelectedGroupStoreDefinition extends StoreDefinition, InternalDefinition {
|
|
|
+interface SelectedGroupStoreDefinition
|
|
|
+ extends CommonStoreDefinition<Map<string, boolean>>,
|
|
|
+ InternalDefinition {
|
|
|
add(ids: string[]): void;
|
|
|
allSelected(): boolean;
|
|
|
anySelected(): boolean;
|
|
@@ -50,6 +54,10 @@ const storeConfig: SelectedGroupStoreDefinition = {
|
|
|
this.lastSelected = null;
|
|
|
},
|
|
|
|
|
|
+ getState() {
|
|
|
+ return this.records;
|
|
|
+ },
|
|
|
+
|
|
|
onGroupChange(itemIds) {
|
|
|
this.prune();
|
|
|
this.add([...itemIds]);
|