aboutsummaryrefslogtreecommitdiff
path: root/src/client/react/actions/search.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/react/actions/search.ts')
-rw-r--r--src/client/react/actions/search.ts24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/client/react/actions/search.ts b/src/client/react/actions/search.ts
new file mode 100644
index 0000000..45c31fb
--- /dev/null
+++ b/src/client/react/actions/search.ts
@@ -0,0 +1,24 @@
+export interface InputChangeAction {
+ type: 'SEARCH/INPUT_CHANGE',
+ typedValue: string,
+}
+
+export const inputChange = (typedValue: string): InputChangeAction => ({
+ type: 'SEARCH/INPUT_CHANGE',
+ typedValue,
+});
+
+export interface ChangeSelectedResultAction {
+ type: 'SEARCH/CHANGE_SELECTED_RESULT',
+ relativeChange: 1 | -1,
+}
+
+/**
+ * Change the selected result.
+ * @param {+1/-1} relativeChange usually +1 or -1, the change relative to the
+ * current result.
+ */
+export const changeSelectedResult = (relativeChange: 1 | -1): ChangeSelectedResultAction => ({
+ type: 'SEARCH/CHANGE_SELECTED_RESULT',
+ relativeChange,
+});