messages/index
@boldpenguin/sdk-redux › Globals › "messages/index"
Index
Variables
- getInlineMessagesForAnswerId
- getMessagesForApplicationForm
- getMessagesForCurrentQuestionSet
- getMessagesForQuoteRequest
- getMessagesForStepperStepQuestionSet
Functions
Variables
Const
getInlineMessagesForAnswerId
• getInlineMessagesForAnswerId: function & OutputSelectorFields‹function› & object = createSelector( [getMessages, (_: BpSdkStore, answerId: string) => answerId], (messages: IMessage[], answerId: string) => { return messages.filter( (m) => m.component === MessageComponent.Answer && m.metadata.answer_id === answerId && m.location === MessageLocation.Question, ); }, )
Returns inline messages for a specific answer id
Const
getMessagesForApplicationForm
• getMessagesForApplicationForm: function & OutputSelectorFields‹function› & object = createSelector(getMessages, (messages) => { return messages.filter((m) => m.component === MessageComponent.Application); })
Returns messages targeting the application form. This is mostly intended to capture legacy messages as non-legacy messages will likely be configured to target other components.
Const
getMessagesForCurrentQuestionSet
• getMessagesForCurrentQuestionSet: function & OutputSelectorFields‹function› & object = createSelector([getMessages, getCurrentActiveQuestionSet], (messages, questionSet) => { const answerIds = questionSet?.answers.map((a) => a.id) || []; if (!messages.length || !answerIds.length) return [];
return messages.filter( (m) => m.component === MessageComponent.Answer && m.location !== MessageLocation.Question && answerIds.includes(m.metadata.answer_id || ''), ); })
Returns an array of messages matching any answer id in the current question set
Const
getMessagesForQuoteRequest
• getMessagesForQuoteRequest: function & OutputSelectorFields‹function› & object = createSelector( [getMessages, (_: BpSdkStore, quoteRequestId: string) => quoteRequestId], (messages, quoteRequestId) => { return messages.filter((m) => m.component === MessageComponent.QuoteRequest && m.metadata.quote_request_id === quoteRequestId); }, )
Returns messages targeting specific quote request
Const
getMessagesForStepperStepQuestionSet
• getMessagesForStepperStepQuestionSet: function & OutputSelectorFields‹function› & object = createSelector( [getMessages, (_: BpSdkStore, questionSetId: string) => questionSetId], (messages, questionSetId) => { return messages.filter( (m) => m.component === MessageComponent.Answer && m.metadata.answer_id === questionSetId && m.location !== MessageLocation.Question, ); }, )
Stepper steps are converted into question sets on the frontend. The question_set_id is taken from the parent anchor question of the original step (which is a question group). Any messages for this step will use the parent anchor's information as the message's component.
Functions
Const
getMessages
▸ getMessages(state
: BpSdkStore): IMessage[]
Get messages on current application form
Parameters:
Name | Type | Description |
---|---|---|
state | BpSdkStore | BpSdk Redux store |
Returns: IMessage[]