@evolver-fi/evolver-basics-admin-components 0.0.12 → 0.0.19-beta.1
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.
- package/dist/ConfirmButton-jayUa8_J.js.map +1 -1
- package/dist/{ExpandMore-CCOUGfS4.js → ExpandMore-CFLBmfHS.js} +2 -2
- package/dist/{ExpandMore-CCOUGfS4.js.map → ExpandMore-CFLBmfHS.js.map} +1 -1
- package/dist/{JwtTokensRoute-DKaxXWe8.js → JwtTokensRoute-CavNQu9F.js} +3 -3
- package/dist/JwtTokensRoute-CavNQu9F.js.map +1 -0
- package/dist/{ScheduledTaskFormRoute-BpHIsRQr.js → ScheduledTaskFormRoute-CnVsqh-c.js} +11 -10
- package/dist/ScheduledTaskFormRoute-CnVsqh-c.js.map +1 -0
- package/dist/SingleLogMessageRoute-B6hkr7rG.js +305 -0
- package/dist/SingleLogMessageRoute-B6hkr7rG.js.map +1 -0
- package/dist/SingleMessageRoute-Bxix2rv7.js +320 -0
- package/dist/SingleMessageRoute-Bxix2rv7.js.map +1 -0
- package/dist/TableMetadataDisplay-DTDUH1KY.js +330 -0
- package/dist/TableMetadataDisplay-DTDUH1KY.js.map +1 -0
- package/dist/{TriggerablesRoute-CHtOEVBR.js → TriggerablesRoute-BY72XS5U.js} +3 -3
- package/dist/TriggerablesRoute-BY72XS5U.js.map +1 -0
- package/dist/{createSvgIcon-DHqCx8A0.js → createSvgIcon-DCKQGUI3.js} +963 -953
- package/dist/createSvgIcon-DCKQGUI3.js.map +1 -0
- package/dist/jwt-tokens/index.js +1 -1
- package/dist/main/index.js +5 -5
- package/dist/message-log/index.js +1 -1
- package/dist/message-sending/index.js +1 -1
- package/dist/{validation-C1lKYJJR.js → parser-CI353PAC.js} +470 -486
- package/dist/parser-CI353PAC.js.map +1 -0
- package/dist/scheduled-tasks/index.js +1 -1
- package/dist/triggerables/index.js +1 -1
- package/dist/types/admin-components/src/common/format.d.ts +1 -0
- package/dist/types/admin-components/src/common/types.d.ts +27 -0
- package/dist/types/admin-components/src/common/validation.d.ts +5 -0
- package/dist/types/admin-components/src/components/filter/EnumSelectFilter.d.ts +11 -0
- package/dist/types/admin-components/src/components/filter/FilterHelperTexts.d.ts +4 -0
- package/dist/types/admin-components/src/components/filter/FilterLink.d.ts +2 -0
- package/dist/types/admin-components/src/components/filter/TextFilter.d.ts +2 -0
- package/dist/types/admin-components/src/components/filter/types.d.ts +20 -0
- package/dist/types/admin-components/src/components/metadata/TableMetadataDisplay.d.ts +2 -0
- package/dist/types/admin-components/src/components/metadata/utils.d.ts +1 -0
- package/dist/types/admin-components/src/components/table/Pagination.d.ts +7 -0
- package/dist/types/admin-components/src/components/table/Table.d.ts +3 -0
- package/dist/types/admin-components/src/components/table/types.d.ts +48 -0
- package/dist/types/admin-components/src/routes/message-log/messageLogColumns.d.ts +3 -0
- package/dist/types/admin-components/src/routes/message-log/types.d.ts +35 -0
- package/dist/types/admin-components/src/routes/message-sending/loader.d.ts +1 -1
- package/dist/types/admin-components/src/routes/message-sending/messageSendingColumns.d.ts +3 -0
- package/dist/types/admin-components/src/routes/message-sending/types.d.ts +41 -0
- package/dist/validation-BRENvwZ0.js +22 -0
- package/dist/validation-BRENvwZ0.js.map +1 -0
- package/package.json +6 -3
- package/dist/ArrowBack-C8PcQDeL.js +0 -161
- package/dist/ArrowBack-C8PcQDeL.js.map +0 -1
- package/dist/JwtTokensRoute-DKaxXWe8.js.map +0 -1
- package/dist/ScheduledTaskFormRoute-BpHIsRQr.js.map +0 -1
- package/dist/SingleLogMessageRoute-i_AbkS5G.js +0 -245
- package/dist/SingleLogMessageRoute-i_AbkS5G.js.map +0 -1
- package/dist/SingleMessageRoute-Dh7BWlPt.js +0 -254
- package/dist/SingleMessageRoute-Dh7BWlPt.js.map +0 -1
- package/dist/TriggerablesRoute-CHtOEVBR.js.map +0 -1
- package/dist/createSvgIcon-DHqCx8A0.js.map +0 -1
- package/dist/validation-C1lKYJJR.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
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":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7]}
|
|
@@ -1,254 +0,0 @@
|
|
|
1
|
-
import { filterFromUrlSearchParams as E, createFilterQuery as I } from "@evolver-fi/evolver-basics";
|
|
2
|
-
import { j as s } from "./jsx-runtime-B6kdoens.js";
|
|
3
|
-
import "react";
|
|
4
|
-
import { g as C, c as N, a as w } from "./createSvgIcon-DHqCx8A0.js";
|
|
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
|
-
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
|
-
import "axios";
|
|
8
|
-
import { useNavigate as F, useLoaderData as S, useSearchParams as $ } from "react-router";
|
|
9
|
-
import { d as L, a as b, n as z } from "./validation-C1lKYJJR.js";
|
|
10
|
-
const Y = {
|
|
11
|
-
ct: j,
|
|
12
|
-
lut: j,
|
|
13
|
-
fc: G
|
|
14
|
-
}, A = (e, t) => {
|
|
15
|
-
const a = t || C(), n = new URL("message", a.defaults.baseURL);
|
|
16
|
-
return k(e, Y).forEach((i, c) => n.searchParams.append(c, i)), a.get(n.toString());
|
|
17
|
-
}, Q = (e, t) => {
|
|
18
|
-
const a = t || C(), n = new URL(`message/${e}`, a.defaults.baseURL);
|
|
19
|
-
return a.get(n.toString());
|
|
20
|
-
}, x = N("messages/fetchMessages", async (e, t) => {
|
|
21
|
-
const a = await A(e);
|
|
22
|
-
return a.status !== 200 ? t.rejectWithValue({
|
|
23
|
-
message: "Failed to fetch messages."
|
|
24
|
-
}) : a.data;
|
|
25
|
-
}), q = {
|
|
26
|
-
messages: [],
|
|
27
|
-
messageTotalCount: 0,
|
|
28
|
-
status: "loading",
|
|
29
|
-
filters: {
|
|
30
|
-
page: "0",
|
|
31
|
-
size: "100"
|
|
32
|
-
}
|
|
33
|
-
};
|
|
34
|
-
w({
|
|
35
|
-
name: "message",
|
|
36
|
-
initialState: q,
|
|
37
|
-
reducers: {
|
|
38
|
-
updateMessages(e, { payload: t }) {
|
|
39
|
-
e.messages = t;
|
|
40
|
-
},
|
|
41
|
-
updateFilters(e, { payload: t }) {
|
|
42
|
-
e.filters = { ...e.filters, ...t };
|
|
43
|
-
}
|
|
44
|
-
},
|
|
45
|
-
extraReducers: (e) => {
|
|
46
|
-
e.addCase(x.pending, (t) => {
|
|
47
|
-
t.status = "loading", t.error = "undefined";
|
|
48
|
-
}), e.addCase(x.fulfilled, (t, { payload: a }) => {
|
|
49
|
-
t.messages = a.content, t.messageTotalCount = a.totalElements, t.status = "succeeded";
|
|
50
|
-
}), e.addCase(x.rejected, (t, { payload: a }) => {
|
|
51
|
-
a && (t.error = a.message), t.status = "failed";
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
const o = ({ label: e, value: t, isFull: a }) => s.jsx(y, { item: !0, xs: 12, sm: a ? 12 : 6, md: a ? 12 : 3, children: s.jsx(v, { label: e, value: t, InputProps: {
|
|
56
|
-
readOnly: !0
|
|
57
|
-
}, InputLabelProps: {
|
|
58
|
-
style: { fontSize: 20 }
|
|
59
|
-
}, multiline: !0, fullWidth: !0 }) }), J = ({ message: e, backAction: t }) => s.jsxs(s.Fragment, { children: [s.jsx(M, { variant: "contained", startIcon: s.jsx(W, {}), onClick: () => t(), sx: {
|
|
60
|
-
backgroundColor: "secondary.main",
|
|
61
|
-
marginBottom: 0.5,
|
|
62
|
-
width: 200
|
|
63
|
-
}, children: "Back" }), e ? s.jsxs(y, { container: !0, direction: "row", justifyContent: "center", spacing: 2, children: [s.jsx(y, { item: !0, xs: 12, children: s.jsx("h1", { children: "Message Details" }) }), s.jsx(o, { label: "State", value: e.state }), s.jsx(o, { label: "MessageChain ID", value: e.messageChainId }), s.jsx(o, { label: "Creation time", value: h(e.creationTime) }), s.jsx(o, { label: "Last updated time", value: h(e.lastUpdatedTime) }), s.jsx(o, { label: "Fail count", value: e.failCount }), s.jsx(o, { label: "MessageGroup Id", value: e.messageGroupId }), s.jsx(o, { label: "Priority", value: e.priority }), s.jsx(o, { label: "Message target config", value: e.messageTargetConfig.messageType }), s.jsx(o, { label: "Target system", value: e.targetSystem }), s.jsx(o, { label: "Message type", value: e.messageType }), s.jsx(o, { label: "Target Uri", value: e.targetUri, isFull: !0 }), s.jsx(o, { label: "Metadata", value: Object.entries(e.metadata).map(([a, n]) => `${a} = ${n}`).join(`
|
|
64
|
-
`), isFull: !0 })] }) : s.jsx("p", { children: "No message data found" })] });
|
|
65
|
-
var d;
|
|
66
|
-
(function(e) {
|
|
67
|
-
e.DELAYED = "DELAYED", e.PENDING = "PENDING", e.SENDING = "SENDING", e.SENT = "SENT", e.FAILED = "FAILED", e.DISABLED = "DISABLED";
|
|
68
|
-
})(d || (d = {}));
|
|
69
|
-
var D;
|
|
70
|
-
(function(e) {
|
|
71
|
-
e.ENABLED = "ENABLED", e.LOG_ONLY = "LOG_ONLY", e.PAUSED = "PAUSED", e.DISABLED = "DISABLED";
|
|
72
|
-
})(D || (D = {}));
|
|
73
|
-
const X = "null", Z = "!null";
|
|
74
|
-
function ee(e) {
|
|
75
|
-
return typeof e == "string";
|
|
76
|
-
}
|
|
77
|
-
const te = ({ filterValue: e, validationError: t, setFilterValue: a, enumValues: n }) => {
|
|
78
|
-
var f;
|
|
79
|
-
const i = [
|
|
80
|
-
{ label: "None", value: X },
|
|
81
|
-
{ label: "Any", value: Z },
|
|
82
|
-
...n
|
|
83
|
-
], c = (l) => {
|
|
84
|
-
const r = i.find((m) => m.value === l || m.label === l);
|
|
85
|
-
return r == null ? void 0 : r.label;
|
|
86
|
-
}, u = (l) => {
|
|
87
|
-
const r = i.find((m) => m.label === l);
|
|
88
|
-
return (r == null ? void 0 : r.value) ?? (r == null ? void 0 : r.label);
|
|
89
|
-
}, p = (l) => {
|
|
90
|
-
const { target: { value: r } } = l;
|
|
91
|
-
if (ee(r)) {
|
|
92
|
-
a(r);
|
|
93
|
-
return;
|
|
94
|
-
}
|
|
95
|
-
const m = r.map(u).filter(Boolean);
|
|
96
|
-
a(m.join(",") || "");
|
|
97
|
-
}, g = ((f = e == null ? void 0 : e.split(",")) == null ? void 0 : f.map((l) => c(l) ?? "")) ?? [];
|
|
98
|
-
return s.jsx(s.Fragment, { children: s.jsxs(P, { sx: { width: 300 }, children: [s.jsx(T, { size: "small", labelId: "demo-multiple-checkbox-label", id: "demo-multiple-checkbox", multiple: !0, value: g, onChange: p, renderValue: (l) => l.join(", "), error: !!t, children: i.map((l) => s.jsxs(R, { value: l.label, children: [s.jsx(B, { checked: g.find((r) => r === l.label) !== void 0 }), l.label] }, l.label)) }), t && s.jsx(U, { children: t })] }) });
|
|
99
|
-
}, ae = (e) => (t) => s.jsx(te, { enumValues: e, ...t }), se = [
|
|
100
|
-
{
|
|
101
|
-
id: "creationTime",
|
|
102
|
-
label: "Creation time",
|
|
103
|
-
renderValue: (e) => h(e),
|
|
104
|
-
minWidth: 250,
|
|
105
|
-
filterKey: "ct",
|
|
106
|
-
filterHelper: "yyyy-MM-dd HH:mm:ss - ?yyyy-MM-dd HH:mm:ss",
|
|
107
|
-
filterValidator: L,
|
|
108
|
-
renderFilter: (e) => s.jsx(K, { ...e })
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
id: "lastUpdatedTime",
|
|
112
|
-
label: "Last updated time",
|
|
113
|
-
renderValue: (e) => h(e),
|
|
114
|
-
minWidth: 250,
|
|
115
|
-
filterKey: "lut",
|
|
116
|
-
filterHelper: "yyyy-MM-dd HH:mm:ss - ?yyyy-MM-dd HH:mm:ss",
|
|
117
|
-
filterValidator: L
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
id: "state",
|
|
121
|
-
label: "State",
|
|
122
|
-
minWidth: 100,
|
|
123
|
-
filterKey: "s",
|
|
124
|
-
filterHelper: "e.g. SENT",
|
|
125
|
-
renderFilter: ae([
|
|
126
|
-
{ label: d.DELAYED },
|
|
127
|
-
{ label: d.PENDING },
|
|
128
|
-
{ label: d.SENDING },
|
|
129
|
-
{ label: d.SENT },
|
|
130
|
-
{ label: d.FAILED },
|
|
131
|
-
{ label: d.DISABLED }
|
|
132
|
-
])
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
id: "messageChainId",
|
|
136
|
-
label: "Message Chain ID",
|
|
137
|
-
minWidth: 150,
|
|
138
|
-
filterKey: "mci",
|
|
139
|
-
filterHelper: "e.g. 123",
|
|
140
|
-
filterValidator: b
|
|
141
|
-
},
|
|
142
|
-
{
|
|
143
|
-
id: "messageGroupId",
|
|
144
|
-
label: "Message Group ID",
|
|
145
|
-
minWidth: 150,
|
|
146
|
-
filterKey: "mgi",
|
|
147
|
-
filterHelper: "e.g. 123",
|
|
148
|
-
filterValidator: b
|
|
149
|
-
},
|
|
150
|
-
{
|
|
151
|
-
id: "failCount",
|
|
152
|
-
label: "Fail count",
|
|
153
|
-
minWidth: 150,
|
|
154
|
-
filterKey: "fc",
|
|
155
|
-
filterHelper: "number - ?number",
|
|
156
|
-
filterValidator: z
|
|
157
|
-
},
|
|
158
|
-
{
|
|
159
|
-
id: "priority",
|
|
160
|
-
label: "Priority",
|
|
161
|
-
minWidth: 150,
|
|
162
|
-
filterKey: "p",
|
|
163
|
-
filterHelper: "eg. 123",
|
|
164
|
-
filterValidator: b
|
|
165
|
-
},
|
|
166
|
-
{
|
|
167
|
-
id: "metadata",
|
|
168
|
-
label: "Metadata",
|
|
169
|
-
renderValue: (e) => _(e),
|
|
170
|
-
minWidth: 150,
|
|
171
|
-
filterKey: "md",
|
|
172
|
-
filterHelper: "A=a, B=b"
|
|
173
|
-
}
|
|
174
|
-
], re = ({ onPageChange: e, messageStatus: t, messageRows: a, messageFilters: n, messageTotalCount: i, onClickRowAction: c, onFilterChange: u }) => s.jsxs(s.Fragment, { children: [s.jsx(O, { onPageChange: e, rows: a, columns: se, filters: n, messageTotalCount: i, onClickRowAction: c, onFilterChange: u }), t === "loading" && s.jsx(H, { open: !0, children: s.jsx(V, {}) })] }), le = (e) => async ({ params: t }) => {
|
|
175
|
-
try {
|
|
176
|
-
if (!t.id)
|
|
177
|
-
throw new Error("No message id provided");
|
|
178
|
-
const a = await Q(t.id, e);
|
|
179
|
-
if (a.status !== 200)
|
|
180
|
-
throw new Error(`Failed to fetch message: ${a.data}`);
|
|
181
|
-
return a.data;
|
|
182
|
-
} catch (a) {
|
|
183
|
-
throw console.error(a), a;
|
|
184
|
-
}
|
|
185
|
-
}, pe = le(), ne = (e) => async ({ request: t }) => {
|
|
186
|
-
try {
|
|
187
|
-
const a = new URL(t.url), n = E(
|
|
188
|
-
a.searchParams,
|
|
189
|
-
["s", "mci", "ct", "lut", "fc", "mgi", "p", "md", "page", "size"]
|
|
190
|
-
// TODO: should sort be included?
|
|
191
|
-
), i = await A(n, e);
|
|
192
|
-
if (i.status !== 200)
|
|
193
|
-
throw new Error(`Failed to fetch messages: ${i.data}`);
|
|
194
|
-
return i.data;
|
|
195
|
-
} catch (a) {
|
|
196
|
-
throw console.error(a), a;
|
|
197
|
-
}
|
|
198
|
-
}, be = ne(), xe = () => {
|
|
199
|
-
const e = F(), t = S(), { content: a, totalElements: n } = t, [i, c] = $(), u = E(i, [
|
|
200
|
-
"s",
|
|
201
|
-
"mci",
|
|
202
|
-
"ct",
|
|
203
|
-
"lut",
|
|
204
|
-
"fc",
|
|
205
|
-
"mgi",
|
|
206
|
-
"p",
|
|
207
|
-
"md",
|
|
208
|
-
"page",
|
|
209
|
-
"size",
|
|
210
|
-
"sort"
|
|
211
|
-
]), p = (l) => {
|
|
212
|
-
const r = new URLSearchParams(i);
|
|
213
|
-
r.set("page", l.toString()), c(r);
|
|
214
|
-
}, g = (l, r) => {
|
|
215
|
-
e(`./${l}`, { relative: "path" });
|
|
216
|
-
}, f = (l) => {
|
|
217
|
-
const r = I(l);
|
|
218
|
-
c(r);
|
|
219
|
-
};
|
|
220
|
-
return /* @__PURE__ */ s.jsx(
|
|
221
|
-
re,
|
|
222
|
-
{
|
|
223
|
-
onPageChange: p,
|
|
224
|
-
messageStatus: "",
|
|
225
|
-
messageRows: a,
|
|
226
|
-
messageFilters: u,
|
|
227
|
-
messageTotalCount: n,
|
|
228
|
-
onClickRowAction: g,
|
|
229
|
-
onFilterChange: f
|
|
230
|
-
}
|
|
231
|
-
);
|
|
232
|
-
}, ye = () => {
|
|
233
|
-
const e = S(), t = F(), a = () => {
|
|
234
|
-
t(-1);
|
|
235
|
-
}, n = (i, c) => {
|
|
236
|
-
};
|
|
237
|
-
return e ? /* @__PURE__ */ s.jsx(
|
|
238
|
-
J,
|
|
239
|
-
{
|
|
240
|
-
message: e,
|
|
241
|
-
backAction: a,
|
|
242
|
-
downloadDataAction: n
|
|
243
|
-
}
|
|
244
|
-
) : /* @__PURE__ */ s.jsx("div", { children: "Loading..." });
|
|
245
|
-
};
|
|
246
|
-
export {
|
|
247
|
-
xe as M,
|
|
248
|
-
ye as S,
|
|
249
|
-
le as a,
|
|
250
|
-
ne as g,
|
|
251
|
-
be as m,
|
|
252
|
-
pe as s
|
|
253
|
-
};
|
|
254
|
-
//# sourceMappingURL=SingleMessageRoute-Dh7BWlPt.js.map
|
|
@@ -1 +0,0 @@
|
|
|
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]}
|