@empathyco/x-components
Version:
Empathy X Components
61 lines (58 loc) • 1.73 kB
JavaScript
import { setConfig, mergeConfig } from '../../../store/utils/config-store.utils.js';
import { fetchAiQuestions } from './actions/fetch-ai-questions.action.js';
import { setUrlParams } from './actions/set-url-params.action.js';
import { query } from './getters/ai-query.getter.js';
import { currentQuestionLoading } from './getters/current-question-loading.getter.js';
import { currentQuestion } from './getters/current-question.getter.js';
import { request } from './getters/request.getter.js';
/**
* {@link XStoreModule} For the ai module.
*
* @internal
*/
const aiXStoreModule = {
state: () => ({
query: '',
questionsByQuery: {},
config: {},
params: {},
relatedTags: [],
}),
getters: {
request,
query,
currentQuestion,
currentQuestionLoading,
},
mutations: {
setConfig,
mergeConfig,
setQuery: (state, query) => {
state.query = query;
},
setQuestionsByQuery: (state, params) => {
if (!state.questionsByQuery[params.query]) {
state.questionsByQuery[params.query] = {
questions: [],
loading: true,
};
}
state.questionsByQuery[params.query] = params.state;
},
setParams(state, params) {
state.params = params;
},
resetAiState(state) {
state.questionsByQuery = {};
},
setAiRelatedTags(state, relatedTags) {
state.relatedTags = relatedTags;
},
},
actions: {
fetchAiQuestions,
setUrlParams,
},
};
export { aiXStoreModule };
//# sourceMappingURL=module.js.map