{ "version": 3, "sources": ["../javascripts/actions/message.ts", "../javascripts/actions/safety-addons.ts"], "sourcesContent": ["import type { Dispatch as ReduxDispatch } from '@reduxjs/toolkit';\nimport type { Conversation, Message, MessagePayload } from '../@types/Conversation';\nimport type { BaseAction } from '../@types/actions';\nimport * as http from '../Http';\nimport { buildAuthorizedPostRequest } from '../Http/requestTemplates';\nimport type { RootState } from '../reducers';\nimport requestCache from '../utils/request-cache';\n\nexport const REQ_CREATE_MESSAGE = 'REQ/CREATE_MESSAGE';\nexport const RCV_CREATE_MESSAGE = 'RCV/CREATE_MESSAGE';\nexport const REQUEST_FAILED = 'MESSAGE/REQUEST_FAILED';\ntype REQ_CREATE_MESSAGE_TYPE = BaseAction;\ntype RCV_CREATE_MESSAGE_TYPE = BaseAction & {\n response: Message;\n};\ntype REQUEST_FAILED_TYPE = BaseAction;\n\nexport type MESSAGE_ACTION =\n | REQ_CREATE_MESSAGE_TYPE\n | RCV_CREATE_MESSAGE_TYPE\n | REQUEST_FAILED_TYPE;\n\ntype Dispatch = ReduxDispatch;\n\nexport const create =\n (conversation: Conversation, message: MessagePayload) =>\n async (dispatch: Dispatch, getState: () => RootState) => {\n const cacheKey = `${REQ_CREATE_MESSAGE}/${conversation.id}`;\n const { auth } = getState();\n if (!auth.token || requestCache.isPending(cacheKey)) {\n return;\n }\n requestCache.isPending(cacheKey, true);\n\n try {\n dispatch({ type: REQ_CREATE_MESSAGE });\n\n const response = await http.json(\n `/api/conversations/${conversation.id}`,\n buildAuthorizedPostRequest(auth.token, { content: message }),\n );\n http.validateResponse(response);\n dispatch({\n type: RCV_CREATE_MESSAGE,\n response: response.response,\n });\n } catch (_e) {\n dispatch({ type: REQUEST_FAILED, action: REQ_CREATE_MESSAGE });\n }\n requestCache.isPending(cacheKey, false);\n };\n", "import type { Dispatch as ReduxDispatch } from '@reduxjs/toolkit';\n\nimport type { ElasticSearchResponse } from '../@types/ElasticSearchResponse';\nimport type { SafetyAddon } from '../@types/SafetyAddon';\nimport type { BaseAction } from '../@types/actions';\nimport * as http from '../Http';\nimport { buildGetRequest } from '../Http/requestTemplates';\nimport requestCache from '../utils/request-cache';\n\nexport const REQ_SAFETY_ADDONS_LIST = 'REQ/SAFETY_ADDONS_LIST';\nexport const RCV_SAFETY_ADDONS_LIST = 'RCV/SAFETY_ADDONS_LIST';\nexport const REQUEST_FAILED = 'SAFETY_ADDONS/REQUEST_FAILED';\ntype REQ_SAFETY_ADDONS_LIST_TYPE = BaseAction;\ntype RCV_SAFETY_ADDONS_LIST_TYPE = BaseAction & {\n response: ElasticSearchResponse;\n};\ntype REQUEST_FAILED_TYPE = BaseAction & {\n action: typeof REQ_SAFETY_ADDONS_LIST;\n};\n\nexport type SAFETY_ADDONS_ACTION =\n | REQ_SAFETY_ADDONS_LIST_TYPE\n | RCV_SAFETY_ADDONS_LIST_TYPE\n | REQUEST_FAILED_TYPE;\n\ntype Dispatch = ReduxDispatch;\n\nexport const all = () => async (dispatch: Dispatch) => {\n if (requestCache.isPending(REQ_SAFETY_ADDONS_LIST)) {\n return;\n }\n requestCache.isPending(REQ_SAFETY_ADDONS_LIST, true);\n\n try {\n dispatch({ type: REQ_SAFETY_ADDONS_LIST });\n\n const response = await http.json>(\n '/api/safety-addons',\n buildGetRequest(),\n );\n http.validateResponse(response);\n dispatch({\n type: RCV_SAFETY_ADDONS_LIST,\n response: response.response,\n });\n } catch (_e) {\n dispatch({ type: REQUEST_FAILED, action: REQ_SAFETY_ADDONS_LIST });\n }\n requestCache.isPending(REQ_SAFETY_ADDONS_LIST, false);\n};\n"], "mappings": "mHAQO,IAAMA,EAAqB,qBACrBC,EAAqB,qBACrBC,EAAiB,yBAcjBC,EACX,CAACC,EAA4BC,IAC7B,MAAOC,EAAoBC,IAA8B,CACvD,IAAMC,EAAW,GAAGR,CAAkB,IAAII,EAAa,EAAE,GACnD,CAAE,KAAAK,CAAK,EAAIF,EAAS,EAC1B,GAAI,GAACE,EAAK,OAASC,EAAa,UAAUF,CAAQ,GAGlD,CAAAE,EAAa,UAAUF,EAAU,EAAI,EAErC,GAAI,CACFF,EAAS,CAAE,KAAMN,CAAmB,CAAC,EAErC,IAAMW,EAAW,MAAWC,EAC1B,sBAAsBR,EAAa,EAAE,GACrCS,EAA2BJ,EAAK,MAAO,CAAE,QAASJ,CAAQ,CAAC,CAC7D,EACKS,EAAiBH,CAAQ,EAC9BL,EAAS,CACP,KAAML,EACN,SAAUU,EAAS,QACrB,CAAC,CACH,MAAa,CACXL,EAAS,CAAE,KAAMJ,EAAgB,OAAQF,CAAmB,CAAC,CAC/D,CACAU,EAAa,UAAUF,EAAU,EAAK,EACxC,ECzCK,IAAMO,EAAyB,yBACzBC,EAAyB,yBACzBC,EAAiB,+BAgBjBC,EAAM,IAAM,MAAOC,GAAuB,CACrD,GAAI,CAAAC,EAAa,UAAUL,CAAsB,EAGjD,CAAAK,EAAa,UAAUL,EAAwB,EAAI,EAEnD,GAAI,CACFI,EAAS,CAAE,KAAMJ,CAAuB,CAAC,EAEzC,IAAMM,EAAW,MAAWC,EAC1B,qBACAC,EAAgB,CAClB,EACKC,EAAiBH,CAAQ,EAC9BF,EAAS,CACP,KAAMH,EACN,SAAUK,EAAS,QACrB,CAAC,CACH,MAAa,CACXF,EAAS,CAAE,KAAMF,EAAgB,OAAQF,CAAuB,CAAC,CACnE,CACAK,EAAa,UAAUL,EAAwB,EAAK,EACtD", "names": ["REQ_CREATE_MESSAGE", "RCV_CREATE_MESSAGE", "REQUEST_FAILED", "create", "conversation", "message", "dispatch", "getState", "cacheKey", "auth", "request_cache_default", "response", "json", "buildAuthorizedPostRequest", "validateResponse", "REQ_SAFETY_ADDONS_LIST", "RCV_SAFETY_ADDONS_LIST", "REQUEST_FAILED", "all", "dispatch", "request_cache_default", "response", "json", "buildGetRequest", "validateResponse"] }