@evolver-fi/evolver-basics-admin-components 0.0.9 → 0.0.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/{BreadCrumbs-EFff4Rip.js → BreadCrumbs-BzG2oi8Z.js} +2 -2
  2. package/dist/BreadCrumbs-BzG2oi8Z.js.map +1 -0
  3. package/dist/{JwtTokensRoute-C7ue3mI1.js → JwtTokensRoute-DKaxXWe8.js} +2 -2
  4. package/dist/JwtTokensRoute-DKaxXWe8.js.map +1 -0
  5. package/dist/{ScheduledTaskFormRoute-CcBBzEsv.js → ScheduledTaskFormRoute-BpHIsRQr.js} +2 -2
  6. package/dist/{ScheduledTaskFormRoute-CcBBzEsv.js.map → ScheduledTaskFormRoute-BpHIsRQr.js.map} +1 -1
  7. package/dist/{SingleLogMessageRoute-yVcnPuBs.js → SingleLogMessageRoute-i_AbkS5G.js} +2 -2
  8. package/dist/SingleLogMessageRoute-i_AbkS5G.js.map +1 -0
  9. package/dist/{SingleMessageRoute-wSsAUDru.js → SingleMessageRoute-Dh7BWlPt.js} +2 -2
  10. package/dist/SingleMessageRoute-Dh7BWlPt.js.map +1 -0
  11. package/dist/{TriggerablesRoute-i4z1o99f.js → TriggerablesRoute-CHtOEVBR.js} +2 -2
  12. package/dist/{TriggerablesRoute-i4z1o99f.js.map → TriggerablesRoute-CHtOEVBR.js.map} +1 -1
  13. package/dist/breadcrumbs/index.js +1 -1
  14. package/dist/jwt-tokens/index.js +1 -1
  15. package/dist/main/index.js +6 -6
  16. package/dist/message-log/index.js +1 -1
  17. package/dist/message-sending/index.js +1 -1
  18. package/dist/scheduled-tasks/index.js +1 -1
  19. package/dist/triggerables/index.js +1 -1
  20. package/dist/types/admin-components/src/routes/jwt-tokens/loader.d.ts +1 -1
  21. package/dist/types/admin-components/src/routes/message-log/loader.d.ts +1 -1
  22. package/dist/types/admin-components/src/routes/message-sending/loader.d.ts +1 -1
  23. package/dist/types/admin-components/src/routes/scheduled-tasks/loader.d.ts +1 -1
  24. package/dist/types/admin-components/src/routes/triggerables/loader.d.ts +1 -1
  25. package/package.json +5 -5
  26. package/dist/BreadCrumbs-EFff4Rip.js.map +0 -1
  27. package/dist/JwtTokensRoute-C7ue3mI1.js.map +0 -1
  28. package/dist/SingleLogMessageRoute-yVcnPuBs.js.map +0 -1
  29. package/dist/SingleMessageRoute-wSsAUDru.js.map +0 -1
@@ -4,7 +4,7 @@ import "react";
4
4
  import { g as b, c as P, a as q, r as V, i as z } from "./createSvgIcon-DHqCx8A0.js";
5
5
  import { IconButton as k, Backdrop as D, CircularProgress as H, Button as m, Grid as d, TextField as T } from "@mui/material";
6
6
  import { d as W, n as p, a as K } from "./validation-C1lKYJJR.js";
7
- import { useNavigate as y, useSearchParams as B, useLoaderData as S } from "react-router-dom";
7
+ import { useNavigate as y, useSearchParams as B, useLoaderData as S } from "react-router";
8
8
  import { c as I, f as A, a as f, b as E, d as C, D as _, e as U, L as $, g as N } from "./ArrowBack-C8PcQDeL.js";
9
9
  import "axios";
10
10
  const O = {
@@ -242,4 +242,4 @@ export {
242
242
  pe as l,
243
243
  fe as s
244
244
  };
245
- //# sourceMappingURL=SingleLogMessageRoute-yVcnPuBs.js.map
245
+ //# sourceMappingURL=SingleLogMessageRoute-i_AbkS5G.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleLogMessageRoute-i_AbkS5G.js","sources":["../node_modules/@evolver-fi/evolver-basics/dist/esm/message-log/utils/index.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/message-log/actions/index.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/message-log/slices/logSlice.js","../../node_modules/@mui/icons-material/Search.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/common/components/ValueFilterLink.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/message-log/components/logListColumnDefinitions.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/message-log/components/LogListComponent.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/message-log/components/LogMessageComponent.js","../src/routes/message-log/loader.ts","../src/routes/message-log/MessageLogRoute.tsx","../src/routes/message-log/SingleLogMessageRoute.tsx"],"sourcesContent":["import { formatDatetimeRangeFilter, formatNumberRangeFilter, } from '../../common/components/listUtils';\nimport { getBackendClient } from '../../common/evolverClient';\nimport { createFilterQuery } from '../../common/utils/filterUtils';\nexport const formatterByKey = {\n s: formatDatetimeRangeFilter,\n d: formatNumberRangeFilter,\n rqs: formatNumberRangeFilter,\n rps: formatNumberRangeFilter,\n};\nexport const fetchLogs = (logFilters, backendClient) => {\n const client = backendClient || getBackendClient();\n const url = new URL('log', client.defaults.baseURL);\n createFilterQuery(logFilters, formatterByKey).forEach((value, key) => url.searchParams.append(key, value));\n return client.get(url.toString());\n};\nexport const fetchLogById = (id, backendClient) => {\n const client = backendClient || getBackendClient();\n const url = new URL(`log/${id}`, client.defaults.baseURL);\n return client.get(url.toString());\n};\n","import { createAsyncThunk } from '@reduxjs/toolkit';\nimport { fetchLogs } from '../utils';\nexport const fetchLogsAction = createAsyncThunk('logs/fetchLogs', async (logFilters, thunkApi) => {\n const response = await fetchLogs(logFilters);\n if (response.status !== 200) {\n return thunkApi.rejectWithValue({\n message: 'Failed to fetch logs.',\n });\n }\n return response.data;\n});\n","import { createSlice } from '@reduxjs/toolkit';\nimport { fetchLogsAction } from '../actions';\nconst initialState = {\n logMessages: [],\n logMessageTotalCount: 0,\n status: 'loading',\n filters: {\n page: '0',\n size: '100',\n },\n};\nexport const logSlice = createSlice({\n name: 'log',\n initialState,\n reducers: {\n updateLogs(state, { payload }) {\n state.logMessages = payload;\n },\n updateFilters(state, { payload }) {\n state.filters = { ...state.filters, ...payload };\n },\n clearFilters(state, { payload }) {\n const filters = { ...state.filters };\n payload.forEach((element) => {\n delete filters[element];\n });\n state.filters = filters;\n },\n },\n extraReducers: (builder) => {\n builder.addCase(fetchLogsAction.pending, (state) => {\n state.status = 'loading';\n state.error = 'undefined';\n });\n builder.addCase(fetchLogsAction.fulfilled, (state, { payload }) => {\n state.logMessages = payload.content;\n state.logMessageTotalCount = payload.totalElements;\n state.status = 'succeeded';\n });\n builder.addCase(fetchLogsAction.rejected, (state, { payload }) => {\n if (payload) {\n state.error = payload.message;\n }\n state.status = 'failed';\n });\n },\n});\nexport const { updateLogs, updateFilters, clearFilters } = logSlice.actions;\nexport const selectLogs = (state) => state.logs.logMessages;\nexport const selectLogMessageTotalCount = (state) => state.logs.logMessageTotalCount;\nexport const selectFilters = (state) => state.logs.filters;\nexport const selectStatus = (state) => state.logs.status;\nexport default logSlice.reducer;\n","\"use strict\";\n\"use client\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _createSvgIcon = _interopRequireDefault(require(\"./utils/createSvgIcon\"));\nvar _jsxRuntime = require(\"react/jsx-runtime\");\nvar _default = exports.default = (0, _createSvgIcon.default)( /*#__PURE__*/(0, _jsxRuntime.jsx)(\"path\", {\n d: \"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14\"\n}), 'Search');","import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { IconButton } from '@mui/material';\nimport Search from '@mui/icons-material/Search';\nimport { filterValueFromRowValue } from '../utils/filterUtils';\n/**\n * Generate a link to update the filter for the value displayed in the cell\n * TODO: Disable the button if already filtered by the key?\n * @param key The Filter key\n * @param value the value to set as the filter. If the value is null or undefined no button will be shown\n */\nconst ValueFilterLink = ({ filterKey, value, isEmptyValueHidden, updateFilters, }) => {\n const handleClick = (e) => {\n e.preventDefault();\n e.stopPropagation();\n const filterValue = {\n [filterKey]: filterValueFromRowValue(value),\n };\n updateFilters(filterValue);\n };\n if (isEmptyValueHidden && (value === null || value === undefined || value === '')) {\n return null;\n }\n return (_jsxs(_Fragment, { children: [value, ' ', _jsx(IconButton, { onClick: handleClick, size: \"small\", children: _jsx(Search, {}) })] }));\n};\nexport default ValueFilterLink;\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { formatDateTime, formatMetadata } from '../../common/components/listUtils';\nimport { datetimeRangeValidator, numberRangeValidator, numberValidator, } from '../../common/utils/validation';\nimport ValueFilterLink from '../../common/components/ValueFilterLink';\nimport DateTimeRangeFilterField from '../../common/components/DateTimeRangeFilterField';\nconst definition = [\n {\n id: 'startTime',\n label: 'Start time',\n renderValue: (value) => formatDateTime(value),\n minWidth: 250,\n filterKey: 's',\n filterHelper: 'yyyy-MM-dd HH:mm:ss - ?yyyy-MM-dd HH:mm:ss',\n filterValidator: datetimeRangeValidator,\n renderFilter: (props) => _jsx(DateTimeRangeFilterField, { ...props }),\n },\n {\n id: 'durationMs',\n label: 'Duration, ms',\n minWidth: 100,\n filterKey: 'd',\n filterHelper: 'number - ?number',\n filterValidator: numberRangeValidator,\n },\n {\n id: 'messageType',\n label: 'Type',\n minWidth: 100,\n filterKey: 'm',\n filterHelper: 'e.g. ControlValue/list',\n },\n { id: 'protocol', label: 'Protocol', minWidth: 150, filterKey: 'p', filterHelper: 'e.g. http' },\n { id: 'statusCode', label: 'Status', minWidth: 150, filterKey: 'c', filterHelper: 'e.g. 400' },\n {\n id: 'messageChainId',\n label: 'Message Chain ID',\n minWidth: 150,\n filterKey: 'mci',\n renderValue: (value, column, updateFilters) => (_jsx(ValueFilterLink, { value: value.toString(), filterKey: column.filterKey, updateFilters: updateFilters })),\n filterHelper: 'e.g. 123',\n filterValidator: numberValidator,\n },\n {\n id: 'requestSize',\n label: 'Request size',\n minWidth: 150,\n filterKey: 'rqs',\n filterHelper: 'number - ?number',\n filterValidator: numberRangeValidator,\n },\n {\n id: 'responseSize',\n label: 'Response size',\n minWidth: 150,\n filterKey: 'rps',\n filterHelper: 'number - ?number',\n filterValidator: numberRangeValidator,\n },\n {\n id: 'metadata',\n label: 'Metadata',\n renderValue: (value) => formatMetadata(value),\n minWidth: 150,\n filterKey: 'md',\n filterHelper: 'A=a, B=b',\n },\n];\nexport default definition;\n","import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Backdrop, CircularProgress } from '@mui/material';\nimport columns from './logListColumnDefinitions';\nimport { ListTable } from '../../common/components/ListTable';\nconst LogListComponent = ({ onPageChange, logStatus, logRows, logFilters, logMessageTotalCount, onClickRowAction, onFilterChange, onFilterClear, }) => (_jsxs(_Fragment, { children: [_jsx(ListTable, { onPageChange: onPageChange, rows: logRows, columns: columns, filters: logFilters, messageTotalCount: logMessageTotalCount, onClickRowAction: onClickRowAction, onFilterChange: onFilterChange, onFilterClear: onFilterClear }), logStatus === 'loading' && (_jsx(Backdrop, { open: true, children: _jsx(CircularProgress, {}) }))] }));\nexport default LogListComponent;\n","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport ArrowBackIcon from '@mui/icons-material/ArrowBack';\nimport { Button, Grid, TextField } from '@mui/material';\nimport { formatDateTime } from '../../common/components/listUtils';\nconst LogMessageField = ({ label, value, isWide, isFull, }) => (_jsx(Grid, { item: true, xs: 12, sm: isFull ? 12 : 6, md: isFull ? 12 : isWide ? 6 : 3, children: _jsx(TextField, { label: label, value: value, InputProps: {\n readOnly: true,\n }, InputLabelProps: {\n style: { fontSize: 20 },\n }, multiline: true, fullWidth: true }) }));\nconst LogMessageComponent = ({ message, backAction, downloadDataAction, }) => {\n return (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"contained\", startIcon: _jsx(ArrowBackIcon, {}), onClick: () => backAction(), sx: {\n marginBottom: 0.5,\n width: 200,\n backgroundColor: 'secondary.main',\n }, children: \"Back\" }), message ? (_jsxs(Grid, { container: true, direction: \"row\", justifyContent: \"flex-start\", spacing: 2, children: [_jsx(Grid, { item: true, xs: 12, md: 12, lg: 12, children: _jsx(\"h1\", { children: \"Message Details\" }) }), _jsx(LogMessageField, { label: \"Sent At\", value: formatDateTime(message.startTime) }), _jsx(LogMessageField, { label: \"Duration, ms\", value: message.durationMs }), _jsx(LogMessageField, { label: \"App Server\", value: message.appServer }), _jsx(LogMessageField, { label: \"App Version\", value: message.appVersion }), _jsx(LogMessageField, { label: \"Type\", value: message.messageType }), _jsx(LogMessageField, { label: \"Protocol\", value: message.protocol }), _jsx(LogMessageField, { label: \"Requesting system\", value: message.requestingSystem }), _jsx(LogMessageField, { label: \"Responding system\", value: message.respondingSystem }), _jsxs(Grid, { item: true, container: true, xs: 12, spacing: 2, children: [_jsx(LogMessageField, { label: \"Request headers\", value: message.requestHeaders, isWide: true }), _jsx(LogMessageField, { label: \"Response headers\", value: message.responseHeaders, isWide: true })] }), _jsx(LogMessageField, { label: \"Address\", value: message.address, isFull: true }), _jsx(LogMessageField, { label: \"Status code\", value: message.statusCode }), _jsx(LogMessageField, { label: \"Status message\", value: message.statusMessage }), _jsx(LogMessageField, { label: \"Message chain ID\", value: message.messageChainId }), _jsx(LogMessageField, { label: \"Request Size (B)\", value: message.requestSize }), _jsx(LogMessageField, { label: \"Response Size (B)\", value: message.responseSize }), _jsx(Grid, { item: true, container: true, xs: 12, spacing: 2, children: _jsx(LogMessageField, { label: \"Metadata\", value: Object.entries(message.metadata)\n .map(([key, value]) => `${key} = ${value}`)\n .join('\\n'), isFull: true }) }), _jsxs(Grid, { container: true, item: true, direction: \"row\", xs: 12, spacing: 2, children: [_jsx(Grid, { item: true, xs: 12, md: 3, children: _jsx(Button, { disabled: message.requestSize === 0, variant: \"contained\", onClick: () => downloadDataAction(message.id, 'request'), sx: { margin: 1, width: 200 }, children: \"Download Request\" }) }), _jsx(Grid, { item: true, xs: 12, md: 3, children: _jsx(Button, { disabled: message.responseSize === 0, variant: \"contained\", onClick: () => downloadDataAction(message.id, 'response'), sx: { margin: 1, width: 200 }, children: \"Download Response\" }) })] })] })) : (_jsx(\"p\", { children: \"No message data found\" }))] }));\n};\nexport default LogMessageComponent;\n","import { filterFromUrlSearchParams } from \"@evolver-fi/evolver-basics\";\nimport {\n fetchLogs,\n LogMessageResponse,\n LogFilter,\n fetchLogById,\n LogMessage,\n} from \"@evolver-fi/evolver-basics/message-log\";\nimport { AxiosInstance } from \"axios\";\nimport { LoaderFunction, LoaderFunctionArgs } from \"react-router\";\n\nexport const getMessageLogLoader =\n (backendClient?: AxiosInstance) =>\n async ({ request }: LoaderFunctionArgs): Promise<LogMessageResponse> => {\n try {\n const requestUrl = new URL(request.url);\n\n const filter = filterFromUrlSearchParams<LogFilter>(\n requestUrl.searchParams,\n [\n \"c\",\n \"p\",\n \"s\",\n \"page\",\n \"size\",\n \"v\",\n \"m\",\n \"p\",\n \"d\",\n \"mci\",\n \"rqs\",\n \"rps\",\n \"md\",\n ]\n );\n\n const logs = await fetchLogs(filter, backendClient);\n\n if (logs.status !== 200) {\n throw new Error(`Failed to fetch logs: ${logs.data}`);\n }\n\n return logs.data;\n } catch (error) {\n console.error(error);\n throw error;\n }\n };\n\nexport const loader: LoaderFunction = getMessageLogLoader();\n\nexport const getSingleLogMessageLoader =\n (backendClient?: AxiosInstance) =>\n async ({ params }: LoaderFunctionArgs): Promise<LogMessage> => {\n if (!params.id) {\n throw new Error(\"No message id provided\"); // shouldn't route here without an id\n }\n try {\n const { id } = params;\n const response = await fetchLogById(id, backendClient);\n\n if (response.status !== 200) {\n throw new Error(`Failed to fetch message: ${response.data}`);\n }\n\n return response.data;\n } catch (error) {\n console.error(error);\n throw error;\n }\n };\n\nexport const singleLogMessageLoader: LoaderFunction =\n getSingleLogMessageLoader();\n","import { useLoaderData, useNavigate, useSearchParams } from \"react-router\";\n\nimport { createFilterQuery, Filter } from \"@evolver-fi/evolver-basics\";\nimport { filterFromUrlSearchParams } from \"@evolver-fi/evolver-basics\";\n\nimport { LogFilter } from \"@evolver-fi/evolver-basics/message-log\";\nimport {\n LogListComponent,\n LogMessageResponse,\n} from \"@evolver-fi/evolver-basics/message-log\";\n\nconst MessageLogRoute = () => {\n const navigate = useNavigate();\n const [searchParams, setSearchParams] = useSearchParams();\n const logFilters = filterFromUrlSearchParams<LogFilter>(searchParams, [\n \"v\",\n \"p\",\n \"s\",\n \"d\",\n \"c\",\n \"mci\",\n \"rqs\",\n \"rps\",\n \"md\",\n \"page\",\n \"size\",\n ]);\n\n const logMessageResponse = useLoaderData() as LogMessageResponse;\n\n const { totalElements, content: logRows } = logMessageResponse;\n\n const handlePageChange = (page: number): void => {\n const newSearchParams = new URLSearchParams(searchParams);\n newSearchParams.set(\"page\", page.toString());\n setSearchParams(newSearchParams);\n };\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const handleOnClickRow = (id: string | number, _newWindow?: boolean) => {\n navigate(`/message-log/${id}`);\n };\n\n const handleFilterChange = (value: Partial<Filter<LogFilter>>): void => {\n const newParams = createFilterQuery(value);\n setSearchParams(newParams);\n };\n\n const handleFilterClear = (key: keyof LogFilter): void => {\n const newParams = new URLSearchParams(searchParams);\n newParams.delete(key);\n setSearchParams(newParams);\n };\n\n return (\n <LogListComponent\n onPageChange={handlePageChange}\n logStatus={\"\"}\n logRows={logRows}\n logFilters={logFilters}\n logMessageTotalCount={totalElements}\n onClickRowAction={handleOnClickRow}\n onFilterChange={handleFilterChange}\n onFilterClear={handleFilterClear}\n />\n );\n};\n\nexport default MessageLogRoute;\n","import {\n LogMessage,\n LogMessageComponent,\n} from \"@evolver-fi/evolver-basics/message-log\";\nimport { useLoaderData, useNavigate } from \"react-router\";\n\nconst SingleMessageRoute = () => {\n const navigate = useNavigate();\n const message = useLoaderData() as LogMessage;\n\n return (\n <LogMessageComponent\n message={message}\n backAction={() => navigate(\"..\", { relative: \"path\" })}\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n downloadDataAction={function (_id: number, _type: string): void {\n throw new Error(\"Function not implemented.\");\n }}\n />\n );\n};\n\nexport default SingleMessageRoute;\n"],"names":["formatterByKey","formatDatetimeRangeFilter","formatNumberRangeFilter","fetchLogs","logFilters","backendClient","client","getBackendClient","url","createFilterQuery","value","key","fetchLogById","id","fetchLogsAction","createAsyncThunk","thunkApi","response","initialState","createSlice","state","payload","filters","element","builder","_interopRequireDefault","require$$0","Search","default_1","_createSvgIcon","require$$1","_jsxRuntime","require$$2","ValueFilterLink","filterKey","isEmptyValueHidden","updateFilters","handleClick","e","filterValue","filterValueFromRowValue","_jsxs","_Fragment","_jsx","IconButton","definition","formatDateTime","datetimeRangeValidator","props","DateTimeRangeFilterField","numberRangeValidator","column","numberValidator","formatMetadata","LogListComponent","onPageChange","logStatus","logRows","logMessageTotalCount","onClickRowAction","onFilterChange","onFilterClear","ListTable","columns","Backdrop","CircularProgress","LogMessageField","label","isWide","isFull","Grid","TextField","LogMessageComponent","message","backAction","downloadDataAction","Button","ArrowBackIcon","getMessageLogLoader","request","requestUrl","filter","filterFromUrlSearchParams","logs","error","loader","getSingleLogMessageLoader","params","singleLogMessageLoader","MessageLogRoute","navigate","useNavigate","searchParams","setSearchParams","useSearchParams","logMessageResponse","useLoaderData","totalElements","handlePageChange","page","newSearchParams","handleOnClickRow","_newWindow","handleFilterChange","newParams","handleFilterClear","jsx","SingleMessageRoute","_id","_type"],"mappings":";;;;;;;;;AAGO,MAAMA,IAAiB;AAAA,EAC1B,GAAGC;AAAA,EACH,GAAGC;AAAA,EACH,KAAKA;AAAA,EACL,KAAKA;AACT,GACaC,IAAY,CAACC,GAAYC,MAAkB;AACpD,QAAMC,IAASD,KAAiBE,EAAkB,GAC5CC,IAAM,IAAI,IAAI,OAAOF,EAAO,SAAS,OAAO;AAClD,SAAAG,EAAkBL,GAAYJ,CAAc,EAAE,QAAQ,CAACU,GAAOC,MAAQH,EAAI,aAAa,OAAOG,GAAKD,CAAK,CAAC,GAClGJ,EAAO,IAAIE,EAAI,SAAQ,CAAE;AACpC,GACaI,IAAe,CAACC,GAAIR,MAAkB;AAC/C,QAAMC,IAASD,KAAiBE,EAAkB,GAC5CC,IAAM,IAAI,IAAI,OAAOK,CAAE,IAAIP,EAAO,SAAS,OAAO;AACxD,SAAOA,EAAO,IAAIE,EAAI,SAAQ,CAAE;AACpC,GCjBaM,IAAkBC,EAAiB,kBAAkB,OAAOX,GAAYY,MAAa;AAC9F,QAAMC,IAAW,MAAMd,EAAUC,CAAU;AAC3C,SAAIa,EAAS,WAAW,MACbD,EAAS,gBAAgB;AAAA,IAC5B,SAAS;AAAA,EACrB,CAAS,IAEEC,EAAS;AACpB,CAAC,GCRKC,IAAe;AAAA,EACjB,aAAa,CAAE;AAAA,EACf,sBAAsB;AAAA,EACtB,QAAQ;AAAA,EACR,SAAS;AAAA,IACL,MAAM;AAAA,IACN,MAAM;AAAA,EACT;AACL;AACwBC,EAAY;AAAA,EAChC,MAAM;AAAA,EACN,cAAAD;AAAA,EACA,UAAU;AAAA,IACN,WAAWE,GAAO,EAAE,SAAAC,KAAW;AAC3B,MAAAD,EAAM,cAAcC;AAAA,IACvB;AAAA,IACD,cAAcD,GAAO,EAAE,SAAAC,KAAW;AAC9B,MAAAD,EAAM,UAAU,EAAE,GAAGA,EAAM,SAAS,GAAGC,EAAS;AAAA,IACnD;AAAA,IACD,aAAaD,GAAO,EAAE,SAAAC,KAAW;AAC7B,YAAMC,IAAU,EAAE,GAAGF,EAAM,QAAS;AACpC,MAAAC,EAAQ,QAAQ,CAACE,MAAY;AACzB,eAAOD,EAAQC,CAAO;AAAA,MACtC,CAAa,GACDH,EAAM,UAAUE;AAAA,IACnB;AAAA,EACJ;AAAA,EACD,eAAe,CAACE,MAAY;AACxB,IAAAA,EAAQ,QAAQV,EAAgB,SAAS,CAACM,MAAU;AAChD,MAAAA,EAAM,SAAS,WACfA,EAAM,QAAQ;AAAA,IAC1B,CAAS,GACDI,EAAQ,QAAQV,EAAgB,WAAW,CAACM,GAAO,EAAE,SAAAC,QAAc;AAC/D,MAAAD,EAAM,cAAcC,EAAQ,SAC5BD,EAAM,uBAAuBC,EAAQ,eACrCD,EAAM,SAAS;AAAA,IAC3B,CAAS,GACDI,EAAQ,QAAQV,EAAgB,UAAU,CAACM,GAAO,EAAE,SAAAC,QAAc;AAC9D,MAAIA,MACAD,EAAM,QAAQC,EAAQ,UAE1BD,EAAM,SAAS;AAAA,IAC3B,CAAS;AAAA,EACJ;AACL,CAAC;YC3CGK,IAAyBC;AAC7B,OAAO,eAAeC,GAAS,cAAc;AAAA,EAC3C,OAAO;AACT,CAAC;AACD,IAAeC,IAAAD,EAAA,UAAG,QACdE,IAAiBJ,EAAuBK,GAAgC,GACxEC,IAAcC;AACHJ,IAAeD,EAAA,cAAOE,EAAe,6BAA2BE,EAAY,KAAK,QAAQ;AAAA,EACtG,GAAG;AACL,CAAC,GAAG,QAAQ;ACFZ,MAAME,IAAkB,CAAC,EAAE,WAAAC,GAAW,OAAAxB,GAAO,oBAAAyB,GAAoB,eAAAC,EAAa,MAAQ;AAClF,QAAMC,IAAc,CAACC,MAAM;AACvB,IAAAA,EAAE,eAAgB,GAClBA,EAAE,gBAAiB;AACnB,UAAMC,IAAc;AAAA,MAChB,CAACL,CAAS,GAAGM,EAAwB9B,CAAK;AAAA,IAC7C;AACD,IAAA0B,EAAcG,CAAW;AAAA,EAC5B;AACD,SAAIJ,MAAuBzB,KAAU,QAA+BA,MAAU,MACnE,OAEH+B,EAAK,KAACC,EAAS,UAAE,EAAE,UAAU,CAAChC,GAAO,KAAKiC,MAAKC,GAAY,EAAE,SAASP,GAAa,MAAM,SAAS,UAAUM,EAAAA,IAAKhB,GAAQ,CAAE,CAAA,GAAG,CAAC,GAAG;AAC9I,GClBMkB,KAAa;AAAA,EACf;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa,CAACnC,MAAUoC,EAAepC,CAAK;AAAA,IAC5C,UAAU;AAAA,IACV,WAAW;AAAA,IACX,cAAc;AAAA,IACd,iBAAiBqC;AAAA,IACjB,cAAc,CAACC,MAAUL,EAAAA,IAAKM,GAA0B,EAAE,GAAGD,GAAO;AAAA,EACvE;AAAA,EACD;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,WAAW;AAAA,IACX,cAAc;AAAA,IACd,iBAAiBE;AAAA,EACpB;AAAA,EACD;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,WAAW;AAAA,IACX,cAAc;AAAA,EACjB;AAAA,EACD,EAAE,IAAI,YAAY,OAAO,YAAY,UAAU,KAAK,WAAW,KAAK,cAAc,YAAa;AAAA,EAC/F,EAAE,IAAI,cAAc,OAAO,UAAU,UAAU,KAAK,WAAW,KAAK,cAAc,WAAY;AAAA,EAC9F;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,WAAW;AAAA,IACX,aAAa,CAACxC,GAAOyC,GAAQf,MAAmBO,EAAI,IAACV,GAAiB,EAAE,OAAOvB,EAAM,SAAQ,GAAI,WAAWyC,EAAO,WAAW,eAAef,EAAa,CAAE;AAAA,IAC5J,cAAc;AAAA,IACd,iBAAiBgB;AAAA,EACpB;AAAA,EACD;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,WAAW;AAAA,IACX,cAAc;AAAA,IACd,iBAAiBF;AAAA,EACpB;AAAA,EACD;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,UAAU;AAAA,IACV,WAAW;AAAA,IACX,cAAc;AAAA,IACd,iBAAiBA;AAAA,EACpB;AAAA,EACD;AAAA,IACI,IAAI;AAAA,IACJ,OAAO;AAAA,IACP,aAAa,CAACxC,MAAU2C,EAAe3C,CAAK;AAAA,IAC5C,UAAU;AAAA,IACV,WAAW;AAAA,IACX,cAAc;AAAA,EACjB;AACL,GC9DM4C,KAAmB,CAAC,EAAE,cAAAC,GAAc,WAAAC,GAAW,SAAAC,GAAS,YAAArD,GAAY,sBAAAsD,GAAsB,kBAAAC,GAAkB,gBAAAC,GAAgB,eAAAC,QAAsBpB,EAAAA,KAAMC,EAAS,UAAE,EAAE,UAAU,CAACC,EAAI,IAACmB,GAAW,EAAE,cAAcP,GAAc,MAAME,GAAS,SAASM,IAAS,SAAS3D,GAAY,mBAAmBsD,GAAsB,kBAAkBC,GAAkB,gBAAgBC,GAAgB,eAAeC,GAAe,GAAGL,MAAc,aAAcb,MAAKqB,GAAU,EAAE,MAAM,IAAM,UAAUrB,EAAAA,IAAKsB,GAAkB,EAAE,EAAC,CAAE,CAAE,EAAG,CAAA,GCAtgBC,IAAkB,CAAC,EAAE,OAAAC,GAAO,OAAAzD,GAAO,QAAA0D,GAAQ,QAAAC,EAAM,MAAS1B,EAAAA,IAAK2B,GAAM,EAAE,MAAM,IAAM,IAAI,IAAI,IAAID,IAAS,KAAK,GAAG,IAAIA,IAAS,KAAKD,IAAS,IAAI,GAAG,UAAUzB,EAAAA,IAAK4B,GAAW,EAAE,OAAOJ,GAAO,OAAOzD,GAAO,YAAY;AAAA,EAChN,UAAU;AACb,GAAE,iBAAiB;AAAA,EAChB,OAAO,EAAE,UAAU,GAAI;AACnC,GAAW,WAAW,IAAM,WAAW,GAAM,CAAA,EAAG,CAAA,GAC1C8D,KAAsB,CAAC,EAAE,SAAAC,GAAS,YAAAC,GAAY,oBAAAC,EAAkB,MAC1DlC,EAAAA,KAAMC,EAAAA,UAAW,EAAE,UAAU,CAACC,MAAKiC,GAAQ,EAAE,SAAS,aAAa,WAAWjC,EAAAA,IAAKkC,GAAe,CAAE,CAAA,GAAG,SAAS,MAAMH,EAAY,GAAE,IAAI;AAAA,EAChI,cAAc;AAAA,EACd,OAAO;AAAA,EACP,iBAAiB;AACpB,GAAE,UAAU,QAAQ,GAAGD,IAAWhC,EAAK,KAAC6B,GAAM,EAAE,WAAW,IAAM,WAAW,OAAO,gBAAgB,cAAc,SAAS,GAAG,UAAU,CAAC3B,EAAI,IAAC2B,GAAM,EAAE,MAAM,IAAM,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,UAAU3B,EAAAA,IAAK,MAAM,EAAE,UAAU,mBAAmB,EAAC,CAAE,GAAGA,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,WAAW,OAAOpB,EAAe2B,EAAQ,SAAS,EAAG,CAAA,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,gBAAgB,OAAOO,EAAQ,WAAU,CAAE,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,cAAc,OAAOO,EAAQ,WAAW,GAAG9B,MAAKuB,GAAiB,EAAE,OAAO,eAAe,OAAOO,EAAQ,WAAY,CAAA,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,QAAQ,OAAOO,EAAQ,YAAW,CAAE,GAAG9B,MAAKuB,GAAiB,EAAE,OAAO,YAAY,OAAOO,EAAQ,SAAU,CAAA,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,qBAAqB,OAAOO,EAAQ,iBAAkB,CAAA,GAAG9B,EAAI,IAACuB,GAAiB,EAAE,OAAO,qBAAqB,OAAOO,EAAQ,iBAAkB,CAAA,GAAGhC,EAAAA,KAAM6B,GAAM,EAAE,MAAM,IAAM,WAAW,IAAM,IAAI,IAAI,SAAS,GAAG,UAAU,CAAC3B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,mBAAmB,OAAOO,EAAQ,gBAAgB,QAAQ,IAAM,GAAG9B,EAAI,IAACuB,GAAiB,EAAE,OAAO,oBAAoB,OAAOO,EAAQ,iBAAiB,QAAQ,GAAM,CAAA,CAAC,EAAC,CAAE,GAAG9B,MAAKuB,GAAiB,EAAE,OAAO,WAAW,OAAOO,EAAQ,SAAS,QAAQ,GAAM,CAAA,GAAG9B,EAAI,IAACuB,GAAiB,EAAE,OAAO,eAAe,OAAOO,EAAQ,WAAY,CAAA,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,kBAAkB,OAAOO,EAAQ,cAAe,CAAA,GAAG9B,EAAI,IAACuB,GAAiB,EAAE,OAAO,oBAAoB,OAAOO,EAAQ,eAAc,CAAE,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,oBAAoB,OAAOO,EAAQ,YAAW,CAAE,GAAG9B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,qBAAqB,OAAOO,EAAQ,aAAc,CAAA,GAAG9B,EAAAA,IAAK2B,GAAM,EAAE,MAAM,IAAM,WAAW,IAAM,IAAI,IAAI,SAAS,GAAG,UAAU3B,EAAAA,IAAKuB,GAAiB,EAAE,OAAO,YAAY,OAAO,OAAO,QAAQO,EAAQ,QAAQ,EACnvD,IAAI,CAAC,CAAC9D,GAAKD,CAAK,MAAM,GAAGC,CAAG,MAAMD,CAAK,EAAE,EACzC,KAAK;AAAA,CAAI,GAAG,QAAQ,GAAM,CAAA,GAAG,GAAG+B,OAAM6B,GAAM,EAAE,WAAW,IAAM,MAAM,IAAM,WAAW,OAAO,IAAI,IAAI,SAAS,GAAG,UAAU,CAAC3B,MAAK2B,GAAM,EAAE,MAAM,IAAM,IAAI,IAAI,IAAI,GAAG,UAAU3B,MAAKiC,GAAQ,EAAE,UAAUH,EAAQ,gBAAgB,GAAG,SAAS,aAAa,SAAS,MAAME,EAAmBF,EAAQ,IAAI,SAAS,GAAG,IAAI,EAAE,QAAQ,GAAG,OAAO,IAAK,GAAE,UAAU,oBAAoB,EAAC,CAAE,GAAG9B,EAAAA,IAAK2B,GAAM,EAAE,MAAM,IAAM,IAAI,IAAI,IAAI,GAAG,UAAU3B,EAAAA,IAAKiC,GAAQ,EAAE,UAAUH,EAAQ,iBAAiB,GAAG,SAAS,aAAa,SAAS,MAAME,EAAmBF,EAAQ,IAAI,UAAU,GAAG,IAAI,EAAE,QAAQ,GAAG,OAAO,IAAK,GAAE,UAAU,oBAAmB,CAAE,EAAG,CAAA,CAAC,EAAG,CAAA,CAAC,EAAG,CAAA,IAAM9B,EAAI,IAAC,KAAK,EAAE,UAAU,yBAAyB,CAAE,EAAC,CAAE,GCLpsBmC,KACX,CAACzE,MACD,OAAO,EAAE,SAAA0E,QAA+D;AAClE,MAAA;AACF,UAAMC,IAAa,IAAI,IAAID,EAAQ,GAAG,GAEhCE,IAASC;AAAA,MACbF,EAAW;AAAA,MACX;AAAA,QACE;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,QACA;AAAA,MAAA;AAAA,IAEJ,GAEMG,IAAO,MAAMhF,EAAU8E,GAAQ5E,CAAa;AAE9C,QAAA8E,EAAK,WAAW;AAClB,YAAM,IAAI,MAAM,yBAAyBA,EAAK,IAAI,EAAE;AAGtD,WAAOA,EAAK;AAAA,WACLC,GAAO;AACd,kBAAQ,MAAMA,CAAK,GACbA;AAAA,EAAA;AAEV,GAEWC,KAAyBP,GAAoB,GAE7CQ,KACX,CAACjF,MACD,OAAO,EAAE,QAAAkF,QAAsD;AACzD,MAAA,CAACA,EAAO;AACJ,UAAA,IAAI,MAAM,wBAAwB;AAEtC,MAAA;AACI,UAAA,EAAE,IAAA1E,MAAO0E,GACTtE,IAAW,MAAML,EAAaC,GAAIR,CAAa;AAEjD,QAAAY,EAAS,WAAW;AACtB,YAAM,IAAI,MAAM,4BAA4BA,EAAS,IAAI,EAAE;AAG7D,WAAOA,EAAS;AAAA,WACTmE,GAAO;AACd,kBAAQ,MAAMA,CAAK,GACbA;AAAA,EAAA;AAEV,GAEWI,KACXF,GAA0B,GC9DtBG,KAAkB,MAAM;AAC5B,QAAMC,IAAWC,EAAY,GACvB,CAACC,GAAcC,CAAe,IAAIC,EAAgB,GAClD1F,IAAa8E,EAAqCU,GAAc;AAAA,IACpE;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAAA,CACD,GAEKG,IAAqBC,EAAc,GAEnC,EAAE,eAAAC,GAAe,SAASxC,EAAY,IAAAsC,GAEtCG,IAAmB,CAACC,MAAuB;AACzC,UAAAC,IAAkB,IAAI,gBAAgBR,CAAY;AACxD,IAAAQ,EAAgB,IAAI,QAAQD,EAAK,SAAA,CAAU,GAC3CN,EAAgBO,CAAe;AAAA,EACjC,GAGMC,IAAmB,CAACxF,GAAqByF,MAAyB;AAC7D,IAAAZ,EAAA,gBAAgB7E,CAAE,EAAE;AAAA,EAC/B,GAEM0F,IAAqB,CAAC7F,MAA4C;AAChE,UAAA8F,IAAY/F,EAAkBC,CAAK;AACzC,IAAAmF,EAAgBW,CAAS;AAAA,EAC3B,GAEMC,IAAoB,CAAC9F,MAA+B;AAClD,UAAA6F,IAAY,IAAI,gBAAgBZ,CAAY;AAClD,IAAAY,EAAU,OAAO7F,CAAG,GACpBkF,EAAgBW,CAAS;AAAA,EAC3B;AAGE,SAAAE,gBAAAA,EAAA;AAAA,IAACpD;AAAA,IAAA;AAAA,MACC,cAAc4C;AAAA,MACd,WAAW;AAAA,MACX,SAAAzC;AAAA,MACA,YAAArD;AAAA,MACA,sBAAsB6F;AAAA,MACtB,kBAAkBI;AAAA,MAClB,gBAAgBE;AAAA,MAChB,eAAeE;AAAA,IAAA;AAAA,EACjB;AAEJ,GC5DME,KAAqB,MAAM;AAC/B,QAAMjB,IAAWC,EAAY,GACvBlB,IAAUuB,EAAc;AAG5B,SAAAU,gBAAAA,EAAA;AAAA,IAAClC;AAAA,IAAA;AAAA,MACC,SAAAC;AAAA,MACA,YAAY,MAAMiB,EAAS,MAAM,EAAE,UAAU,QAAQ;AAAA,MAErD,oBAAoB,SAAUkB,GAAaC,GAAqB;AACxD,cAAA,IAAI,MAAM,2BAA2B;AAAA,MAAA;AAAA,IAC7C;AAAA,EACF;AAEJ;","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
@@ -5,7 +5,7 @@ import { g as C, c as N, a as w } from "./createSvgIcon-DHqCx8A0.js";
5
5
  import { Button as M, Grid as y, TextField as v, FormControl as P, Select as T, MenuItem as R, Checkbox as B, FormHelperText as U, Backdrop as H, CircularProgress as V } from "@mui/material";
6
6
  import { c as k, f as j, a as G, g as W, d as h, D as K, e as _, L as O } from "./ArrowBack-C8PcQDeL.js";
7
7
  import "axios";
8
- import { useNavigate as F, useLoaderData as S, useSearchParams as $ } from "react-router-dom";
8
+ import { useNavigate as F, useLoaderData as S, useSearchParams as $ } from "react-router";
9
9
  import { d as L, a as b, n as z } from "./validation-C1lKYJJR.js";
10
10
  const Y = {
11
11
  ct: j,
@@ -251,4 +251,4 @@ export {
251
251
  be as m,
252
252
  pe as s
253
253
  };
254
- //# sourceMappingURL=SingleMessageRoute-wSsAUDru.js.map
254
+ //# sourceMappingURL=SingleMessageRoute-Dh7BWlPt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SingleMessageRoute-Dh7BWlPt.js","sources":["../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/utils/index.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/actions/index.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/slices/messageSlice.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/components/MessageComponent.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/types/index.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/common/types/index.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/common/components/EnumSelectFilterField.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/crud/filterUtils.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/components/messageListColumnDefinitions.js","../node_modules/@evolver-fi/evolver-basics/dist/esm/messages/components/MessageListComponent.js","../src/routes/message-sending/loader.ts","../src/routes/message-sending/MessageSendingRoute.tsx","../src/routes/message-sending/SingleMessageRoute.tsx"],"sourcesContent":["import { createFilterQuery } from '../../common/utils/filterUtils';\nimport { formatDatetimeRangeFilter, formatNumberRangeFilter, } from '../../common/components/listUtils';\nimport { getBackendClient } from '../../common/evolverClient';\nexport const formatterByKey = {\n ct: formatDatetimeRangeFilter,\n lut: formatDatetimeRangeFilter,\n fc: formatNumberRangeFilter,\n};\nexport const fetchMessages = (filters, backendClient) => {\n const client = backendClient || getBackendClient();\n const url = new URL('message', client.defaults.baseURL);\n createFilterQuery(filters, formatterByKey).forEach((value, key) => url.searchParams.append(key, value));\n return client.get(url.toString());\n};\nexport const fetchMessageById = (id, backendClient) => {\n const client = backendClient || getBackendClient();\n const url = new URL(`message/${id}`, client.defaults.baseURL);\n return client.get(url.toString());\n};\n","import { createAsyncThunk } from '@reduxjs/toolkit';\nimport { fetchMessages } from '../utils';\nexport const fetchMessagesAction = createAsyncThunk('messages/fetchMessages', async (filters, thunkApi) => {\n const response = await fetchMessages(filters);\n if (response.status !== 200) {\n return thunkApi.rejectWithValue({\n message: 'Failed to fetch messages.',\n });\n }\n return response.data;\n});\n","import { createSlice } from '@reduxjs/toolkit';\nimport { fetchMessagesAction } from '../actions';\nconst initialState = {\n messages: [],\n messageTotalCount: 0,\n status: 'loading',\n filters: {\n page: '0',\n size: '100',\n },\n};\nexport const messageSlice = createSlice({\n name: 'message',\n initialState,\n reducers: {\n updateMessages(state, { payload }) {\n state.messages = payload;\n },\n updateFilters(state, { payload }) {\n state.filters = { ...state.filters, ...payload };\n },\n },\n extraReducers: (builder) => {\n builder.addCase(fetchMessagesAction.pending, (state) => {\n state.status = 'loading';\n state.error = 'undefined';\n });\n builder.addCase(fetchMessagesAction.fulfilled, (state, { payload }) => {\n state.messages = payload.content;\n state.messageTotalCount = payload.totalElements;\n state.status = 'succeeded';\n });\n builder.addCase(fetchMessagesAction.rejected, (state, { payload }) => {\n if (payload) {\n state.error = payload.message;\n }\n state.status = 'failed';\n });\n },\n});\nexport const { updateMessages, updateFilters } = messageSlice.actions;\nexport const selectMessages = (state) => state.messages.messages;\nexport const selectMessageTotalCount = (state) => state.messages.messageTotalCount;\nexport const selectFilters = (state) => state.messages.filters;\nexport const selectStatus = (state) => state.messages.status;\nexport default messageSlice.reducer;\n","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport ArrowBackIcon from '@mui/icons-material/ArrowBack';\nimport { Button, Grid, TextField } from '@mui/material';\nimport { formatDateTime } from '../../common/components/listUtils';\nconst MessageField = ({ label, value, isFull }) => (_jsx(Grid, { item: true, xs: 12, sm: isFull ? 12 : 6, md: isFull ? 12 : 3, children: _jsx(TextField, { label: label, value: value, InputProps: {\n readOnly: true,\n }, InputLabelProps: {\n style: { fontSize: 20 },\n }, multiline: true, fullWidth: true }) }));\nconst MessageComponent = ({ message, backAction, }) => {\n return (_jsxs(_Fragment, { children: [_jsx(Button, { variant: \"contained\", startIcon: _jsx(ArrowBackIcon, {}), onClick: () => backAction(), sx: {\n backgroundColor: 'secondary.main',\n marginBottom: 0.5,\n width: 200,\n }, children: \"Back\" }), message ? (_jsxs(Grid, { container: true, direction: \"row\", justifyContent: \"center\", spacing: 2, children: [_jsx(Grid, { item: true, xs: 12, children: _jsx(\"h1\", { children: \"Message Details\" }) }), _jsx(MessageField, { label: \"State\", value: message.state }), _jsx(MessageField, { label: \"MessageChain ID\", value: message.messageChainId }), _jsx(MessageField, { label: \"Creation time\", value: formatDateTime(message.creationTime) }), _jsx(MessageField, { label: \"Last updated time\", value: formatDateTime(message.lastUpdatedTime) }), _jsx(MessageField, { label: \"Fail count\", value: message.failCount }), _jsx(MessageField, { label: \"MessageGroup Id\", value: message.messageGroupId }), _jsx(MessageField, { label: \"Priority\", value: message.priority }), _jsx(MessageField, { label: \"Message target config\", value: message.messageTargetConfig.messageType }), _jsx(MessageField, { label: \"Target system\", value: message.targetSystem }), _jsx(MessageField, { label: \"Message type\", value: message.messageType }), _jsx(MessageField, { label: \"Target Uri\", value: message.targetUri, isFull: true }), _jsx(MessageField, { label: \"Metadata\", value: Object.entries(message.metadata)\n .map(([key, value]) => `${key} = ${value}`)\n .join('\\n'), isFull: true })] })) : (_jsx(\"p\", { children: \"No message data found\" }))] }));\n};\nexport default MessageComponent;\n","export var MessageStatus;\n(function (MessageStatus) {\n MessageStatus[\"DELAYED\"] = \"DELAYED\";\n MessageStatus[\"PENDING\"] = \"PENDING\";\n MessageStatus[\"SENDING\"] = \"SENDING\";\n MessageStatus[\"SENT\"] = \"SENT\";\n MessageStatus[\"FAILED\"] = \"FAILED\";\n MessageStatus[\"DISABLED\"] = \"DISABLED\";\n})(MessageStatus || (MessageStatus = {}));\nexport var MessageTargetConfigStatus;\n(function (MessageTargetConfigStatus) {\n MessageTargetConfigStatus[\"ENABLED\"] = \"ENABLED\";\n MessageTargetConfigStatus[\"LOG_ONLY\"] = \"LOG_ONLY\";\n MessageTargetConfigStatus[\"PAUSED\"] = \"PAUSED\";\n MessageTargetConfigStatus[\"DISABLED\"] = \"DISABLED\";\n})(MessageTargetConfigStatus || (MessageTargetConfigStatus = {}));\n","export const NULL_VALUE = 'null';\nexport const NOT_NULL_VALUE = '!null';\n","import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { Checkbox, FormControl, FormHelperText, MenuItem, Select, } from '@mui/material';\nimport { NOT_NULL_VALUE, NULL_VALUE } from '../types';\nfunction isString(data) {\n return typeof data === 'string';\n}\nconst EnumSelectFilterField = ({ filterValue, validationError, setFilterValue, enumValues, }) => {\n const selectValues = [\n { label: 'None', value: NULL_VALUE },\n { label: 'Any', value: NOT_NULL_VALUE },\n ...enumValues,\n ];\n const findLabelByValue = (value) => {\n const entry = selectValues.find((sv) => sv.value === value || sv.label === value);\n return entry?.label;\n };\n const findValueByLabel = (label) => {\n const entry = selectValues.find((sv) => sv.label === label);\n return entry?.value ?? entry?.label;\n };\n const handleChange = (event) => {\n const { target: { value }, } = event;\n if (isString(value)) {\n setFilterValue(value);\n return;\n }\n const newValue = value.map(findValueByLabel).filter(Boolean);\n setFilterValue(newValue.join(',') || '');\n };\n const formattedFilterValue = filterValue?.split(',')?.map((v) => findLabelByValue(v) ?? '') ?? [];\n return (_jsx(_Fragment, { children: _jsxs(FormControl, { sx: { width: 300 }, children: [_jsx(Select, { size: \"small\", labelId: \"demo-multiple-checkbox-label\", id: \"demo-multiple-checkbox\", multiple: true, value: formattedFilterValue, onChange: handleChange, renderValue: (selected) => selected.join(', '), error: !!validationError, children: selectValues.map((flow) => (_jsxs(MenuItem, { value: flow.label, children: [_jsx(Checkbox, { checked: formattedFilterValue.find((sv) => sv === flow.label) !== undefined }), flow.label] }, flow.label))) }), validationError && _jsx(FormHelperText, { children: validationError })] }) }));\n};\nexport default EnumSelectFilterField;\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport EnumSelectFilterField from '../common/components/EnumSelectFilterField';\nexport const createEnumSelectFilter = (field) => {\n if (field.type === 'enum') {\n const selectValues = field.enumValues.map((v) => ({\n label: v,\n }));\n return createSelectFilterRenderer(selectValues);\n }\n return undefined;\n};\nexport const createSelectFilterRenderer = (enumValues) => {\n // eslint-disable-next-line react/display-name\n return (props) => (_jsx(EnumSelectFilterField, { enumValues: enumValues, ...props }));\n};\n","import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { MessageStatus } from '../types';\nimport { formatDateTime, formatMetadata } from '../../common/components/listUtils';\nimport { datetimeRangeValidator, numberRangeValidator, numberValidator, } from '../../common/utils/validation';\nimport DateTimeRangeFilterField from '../../common/components/DateTimeRangeFilterField';\nimport { createSelectFilterRenderer } from '../../crud/filterUtils';\nconst definition = [\n {\n id: 'creationTime',\n label: 'Creation time',\n renderValue: (value) => formatDateTime(value),\n minWidth: 250,\n filterKey: 'ct',\n filterHelper: 'yyyy-MM-dd HH:mm:ss - ?yyyy-MM-dd HH:mm:ss',\n filterValidator: datetimeRangeValidator,\n renderFilter: (props) => _jsx(DateTimeRangeFilterField, { ...props }),\n },\n {\n id: 'lastUpdatedTime',\n label: 'Last updated time',\n renderValue: (value) => formatDateTime(value),\n minWidth: 250,\n filterKey: 'lut',\n filterHelper: 'yyyy-MM-dd HH:mm:ss - ?yyyy-MM-dd HH:mm:ss',\n filterValidator: datetimeRangeValidator,\n },\n {\n id: 'state',\n label: 'State',\n minWidth: 100,\n filterKey: 's',\n filterHelper: 'e.g. SENT',\n renderFilter: createSelectFilterRenderer([\n { label: MessageStatus.DELAYED },\n { label: MessageStatus.PENDING },\n { label: MessageStatus.SENDING },\n { label: MessageStatus.SENT },\n { label: MessageStatus.FAILED },\n { label: MessageStatus.DISABLED },\n ]),\n },\n {\n id: 'messageChainId',\n label: 'Message Chain ID',\n minWidth: 150,\n filterKey: 'mci',\n filterHelper: 'e.g. 123',\n filterValidator: numberValidator,\n },\n {\n id: 'messageGroupId',\n label: 'Message Group ID',\n minWidth: 150,\n filterKey: 'mgi',\n filterHelper: 'e.g. 123',\n filterValidator: numberValidator,\n },\n {\n id: 'failCount',\n label: 'Fail count',\n minWidth: 150,\n filterKey: 'fc',\n filterHelper: 'number - ?number',\n filterValidator: numberRangeValidator,\n },\n {\n id: 'priority',\n label: 'Priority',\n minWidth: 150,\n filterKey: 'p',\n filterHelper: 'eg. 123',\n filterValidator: numberValidator,\n },\n {\n id: 'metadata',\n label: 'Metadata',\n renderValue: (value) => formatMetadata(value),\n minWidth: 150,\n filterKey: 'md',\n filterHelper: 'A=a, B=b',\n },\n];\nexport default definition;\n","import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from \"react/jsx-runtime\";\nimport { Backdrop, CircularProgress } from '@mui/material';\nimport { ListTable } from '../../common/components/ListTable';\nimport columns from './messageListColumnDefinitions';\nconst MessageListComponent = ({ onPageChange, messageStatus, messageRows, messageFilters, messageTotalCount, onClickRowAction, onFilterChange, }) => (_jsxs(_Fragment, { children: [_jsx(ListTable, { onPageChange: onPageChange, rows: messageRows, columns: columns, filters: messageFilters, messageTotalCount: messageTotalCount, onClickRowAction: onClickRowAction, onFilterChange: onFilterChange }), messageStatus === 'loading' && (_jsx(Backdrop, { open: true, children: _jsx(CircularProgress, {}) }))] }));\nexport default MessageListComponent;\n","import { filterFromUrlSearchParams } from \"@evolver-fi/evolver-basics\";\nimport {\n fetchMessageById,\n fetchMessages,\n MessageFilter,\n} from \"@evolver-fi/evolver-basics/messages\";\nimport { AxiosInstance } from \"axios\";\nimport { LoaderFunction, LoaderFunctionArgs } from \"react-router\";\n\nexport const getSingleMessageLoader =\n (backendClient?: AxiosInstance) =>\n async ({ params }: LoaderFunctionArgs) => {\n try {\n if (!params.id) {\n throw new Error(\"No message id provided\"); // shouldn't route here without an id\n }\n const response = await fetchMessageById(params.id, backendClient);\n\n if (response.status !== 200) {\n throw new Error(`Failed to fetch message: ${response.data}`);\n }\n\n return response.data;\n } catch (error) {\n console.error(error);\n throw error;\n }\n };\n\nexport const singleMessageLoader: LoaderFunction = getSingleMessageLoader();\n\nexport const getMessageListLoader =\n (backendClient?: AxiosInstance) =>\n async ({ request }: LoaderFunctionArgs) => {\n try {\n const requestUrl = new URL(request.url);\n const filter = filterFromUrlSearchParams<MessageFilter>(\n requestUrl.searchParams,\n [\"s\", \"mci\", \"ct\", \"lut\", \"fc\", \"mgi\", \"p\", \"md\", \"page\", \"size\"] // TODO: should sort be included?\n );\n\n const response = await fetchMessages(filter, backendClient);\n if (response.status !== 200) {\n throw new Error(`Failed to fetch messages: ${response.data}`);\n }\n\n return response.data;\n } catch (error) {\n console.error(error);\n throw error;\n }\n };\n\nexport const messageListLoader: LoaderFunction = getMessageListLoader();\n","import {\n createFilterQuery,\n filterFromUrlSearchParams,\n} from \"@evolver-fi/evolver-basics\";\nimport {\n MessageFilter,\n MessageListComponent,\n MessageResponse,\n} from \"@evolver-fi/evolver-basics/messages\";\nimport { useLoaderData, useNavigate, useSearchParams } from \"react-router\";\n\nconst MessageSendingRoute = () => {\n const navigate = useNavigate();\n\n const data = useLoaderData() as MessageResponse;\n const { content, totalElements } = data;\n\n const [searchParams, setSearchParams] = useSearchParams();\n const filters = filterFromUrlSearchParams<MessageFilter>(searchParams, [\n \"s\",\n \"mci\",\n \"ct\",\n \"lut\",\n \"fc\",\n \"mgi\",\n \"p\",\n \"md\",\n \"page\",\n \"size\",\n \"sort\",\n ]);\n\n const handlePageChange = (page: number) => {\n const newSearchParams = new URLSearchParams(searchParams);\n newSearchParams.set(\"page\", page.toString());\n setSearchParams(newSearchParams);\n };\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const handleClickRowAction = (id: string | number, _newWindow?: boolean) => {\n navigate(`./${id}`, { relative: \"path\" });\n };\n\n const handleFilterChange = (value: MessageFilter) => {\n const newSearchParams = createFilterQuery(value);\n setSearchParams(newSearchParams);\n };\n\n return (\n <MessageListComponent\n onPageChange={handlePageChange}\n messageStatus={\"\"}\n messageRows={content}\n messageFilters={filters}\n messageTotalCount={totalElements}\n onClickRowAction={handleClickRowAction}\n onFilterChange={handleFilterChange}\n />\n );\n};\n\nexport default MessageSendingRoute;\n","import { Message, MessageComponent } from \"@evolver-fi/evolver-basics/messages\";\nimport { useLoaderData, useNavigate } from \"react-router\";\n\nconst SingleMessageRoute = () => {\n const message = useLoaderData() as Message;\n\n const navigate = useNavigate();\n\n const handleBackAction = () => {\n navigate(-1);\n };\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const handleDownloadDataAction = (_id: number, _type: string) => {\n // download data from /messages/:id/download\n // TODO: download not implemented in the component library\n };\n\n if (!message) {\n return <div>Loading...</div>; // TODO: handle 404, maybe in the loader?\n }\n\n // TODO: insert some messages into the backend and actually test this\n return (\n <MessageComponent\n message={message}\n backAction={handleBackAction}\n downloadDataAction={handleDownloadDataAction}\n />\n );\n};\n\nexport default SingleMessageRoute;\n"],"names":["formatterByKey","formatDatetimeRangeFilter","formatNumberRangeFilter","fetchMessages","filters","backendClient","client","getBackendClient","url","createFilterQuery","value","key","fetchMessageById","id","fetchMessagesAction","createAsyncThunk","thunkApi","response","initialState","createSlice","state","payload","builder","MessageField","label","isFull","_jsx","Grid","TextField","MessageComponent","message","backAction","_jsxs","_Fragment","Button","ArrowBackIcon","formatDateTime","MessageStatus","MessageTargetConfigStatus","NULL_VALUE","NOT_NULL_VALUE","isString","data","EnumSelectFilterField","filterValue","validationError","setFilterValue","enumValues","selectValues","findLabelByValue","entry","sv","findValueByLabel","handleChange","event","newValue","formattedFilterValue","_a","v","FormControl","Select","selected","flow","MenuItem","Checkbox","FormHelperText","createSelectFilterRenderer","props","definition","datetimeRangeValidator","DateTimeRangeFilterField","numberValidator","numberRangeValidator","formatMetadata","MessageListComponent","onPageChange","messageStatus","messageRows","messageFilters","messageTotalCount","onClickRowAction","onFilterChange","ListTable","columns","Backdrop","CircularProgress","getSingleMessageLoader","params","error","singleMessageLoader","getMessageListLoader","request","requestUrl","filter","filterFromUrlSearchParams","messageListLoader","MessageSendingRoute","navigate","useNavigate","useLoaderData","content","totalElements","searchParams","setSearchParams","useSearchParams","handlePageChange","page","newSearchParams","handleClickRowAction","_newWindow","handleFilterChange","jsx","SingleMessageRoute","handleBackAction","handleDownloadDataAction","_id","_type"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9]}
@@ -6,7 +6,7 @@ import { P as t, _ as f, B as w, g as we, c as Me, a as Nt, r as mn, i as vn, C
6
6
  import { ThemeContext as Nn, keyframes as Ze } from "@emotion/react";
7
7
  import { d as jt } from "./ExpandMore-CCOUGfS4.js";
8
8
  import Te from "react-dom";
9
- import { useNavigate as On, useRevalidator as $n, useLoaderData as jn } from "react-router-dom";
9
+ import { useNavigate as On, useRevalidator as $n, useLoaderData as jn } from "react-router";
10
10
  function Pe(e, n) {
11
11
  return process.env.NODE_ENV === "production" ? () => null : function(...r) {
12
12
  return e(...r) || n(...r);
@@ -3533,4 +3533,4 @@ export {
3533
3533
  zr as g,
3534
3534
  Xr as l
3535
3535
  };
3536
- //# sourceMappingURL=TriggerablesRoute-i4z1o99f.js.map
3536
+ //# sourceMappingURL=TriggerablesRoute-CHtOEVBR.js.map