aboutsummaryrefslogtreecommitdiff
path: root/src/models/questionSlice.ts
diff options
context:
space:
mode:
authorMax Nanis2025-06-07 04:17:19 +0700
committerMax Nanis2025-06-07 04:17:19 +0700
commit51b1003d1e0ce43aa6c30f461d710cb09cdfc29f (patch)
tree85a33808ae2e01a3a46ffbbf4e0255b0c27caa7e /src/models/questionSlice.ts
parent257bc2f85b71a8564e95a8e6ba39ab0b00e022df (diff)
downloadpanel-ui-51b1003d1e0ce43aa6c30f461d710cb09cdfc29f.tar.gz
panel-ui-51b1003d1e0ce43aa6c30f461d710cb09cdfc29f.zip
Passing in onClick for FullProfileQuestion so that Profile Question and SoftPair are different. Using API models to POST to Softpair submission (with offerwall_id saved). Updating from Conditional to Ineligible buckets. Availability Count to app state. Using / exploring sidebar to show filtered questions for specific Bucket.
Diffstat (limited to 'src/models/questionSlice.ts')
-rw-r--r--src/models/questionSlice.ts6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/models/questionSlice.ts b/src/models/questionSlice.ts
index 9543088..a617234 100644
--- a/src/models/questionSlice.ts
+++ b/src/models/questionSlice.ts
@@ -58,6 +58,12 @@ export default questionSlice.reducer
// We need to fetch the next available Question that either doesn't have an Answer, or the Answer
// isn't Answer.completed
export const selectQuestions = (state: RootState) => state.questions
+export const makeSelectQuestionsByIds = (ids: string[]) =>
+ createSelector(
+ (state: RootState) => state.questions,
+ (questions: ProfileQuestion[]) => questions.filter(q => ids.includes(q.question_id))
+ )
+
export const selectActiveQuestion = (state: RootState) => state.questions.find(i => i.active)
export const selectAnswers = (state: RootState) => state.answers