12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import {createStore, StoreDefinition} from 'reflux';
- import {FieldObject} from 'sentry/components/forms/types';
- export type FormSearchField = {
- description: React.ReactNode;
- field: FieldObject;
- route: string;
- title: React.ReactNode;
- };
- interface StoreInterface {
- get(): InternalDefinition['searchMap'];
- reset(): void;
- }
- type InternalDefinition = {
- loadSearchMap: (searchMap: null | FormSearchField[]) => void;
- searchMap: null | FormSearchField[];
- };
- interface ExternalIssuesDefinition
- extends StoreDefinition,
- InternalDefinition,
- StoreInterface {}
- const storeConfig: ExternalIssuesDefinition = {
- searchMap: null,
- init() {
-
-
- this.reset();
- },
- get() {
- return this.searchMap;
- },
- reset() {
-
- this.searchMap = null;
- },
-
- loadSearchMap(searchMap) {
-
- if (this.searchMap !== null) {
- return;
- }
- this.searchMap = searchMap;
- this.trigger(this.searchMap);
- },
- };
- const FormSearchStore = createStore(storeConfig);
- export default FormSearchStore;
|