{"version":3,"sources":["services/utilis/Api.ts","config/config.ts","components/Container/Container.tsx","services/utilis/RestClient.ts","services/Client.ts","atoms.ts","utilis/useSetLoadingState.ts","utilis/toSingleElementArray.ts","services/reactQueryHook/utilis/searchDocumentResponseTransformer.ts","services/reactQueryHook/useSearchQuery.ts","components/SearchButton/SearchButton.tsx","icons/bootstrap-download.svg","components/SearchInput/SearchInput.tsx","utilis/getAlphanumericText.ts","components/SearchBar/SearchBar.tsx","services/reactQueryHook/useGetDocumentQuery.ts","components/SearchResultsSection/RenderLocale.tsx","components/SearchResultsSection/RenderLocalesColumn.tsx","components/SearchResultsSection/MobileRow.tsx","components/SearchResultsSection/StandardRow.tsx","components/SearchResultsSection/Header.tsx","components/SearchResultsSection/SearchResultsSection.tsx","components/SearchResults/SearchResults.tsx","components/Search/Search.tsx","services/queryClient.ts","App.tsx","reportWebVitals.ts","i18n/i18n.tsx","index.tsx"],"names":["RestApiMethod","ApiOperation","config","find","bankConfig","domain","window","location","hostname","bank","cssFileAddress","language","fullPage","tagsConstraints","keyDocuments","otherDocuments","Container","children","ContainerWrapper","Operations","SearchDocuments","method","GET","url","text","GetDocument","responseType","client","axios","create","baseURL","request","props","params","additionalParams","onErrorFunction","axiosClient","get","Error","requestInternal","catch","err","operation","urlParams","operationObject","restRequest","loadingState","atom","key","default","useSetLoadingState","isLoading","useRecoilState","setLoading","useEffect","toSingleElementArray","item","Array","isArray","getLocaleSecondPart","locale","split","pop","toLowerCase","getLocaleFirstPart","slice","filterDocumentTags","document","every","constraint","tags","includes","length","getLocalesUniqueByCode","locales","allLocales","sortedLocales","sort","l1","l2","filter","index","findIndex","d","getUniqueLocales","documents","uniqueByTag","tagSet","getLocalesUniqueByTag","map","getLocalesFromDocuments","searchDocumentResponseTransformer","result","hit","id","productId","isin","name","documentTypes","groupBy","documentType","detailedDocumentType","documentLocale","tag","forEach","Object","entries","documentsToAdd","push","type","useSearchQuery","query","useQuery","a","res","data","enabled","isFetching","SearchButton","_path","_path2","others","Button","className","SearchInput","getAlphanumericText","value","replace","SearchBar","onSearch","defaultValue","theme","useTheme","smaller","useMediaQuery","breakpoints","down","t","useTranslation","useState","input","setInput","loading","classNames","label","fullWidth","onChange","event","target","disabled","onKeyDown","variant","onClick","_extends","assign","i","arguments","source","prototype","hasOwnProperty","call","apply","this","_objectWithoutProperties","excluded","sourceKeys","keys","indexOf","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","propertyIsEnumerable","SvgBootstrapDownload","_ref","svgRef","title","titleId","xmlns","width","height","fill","viewBox","ref","ForwardRef","useGetDocumentQuery","join","headers","onSuccess","file","Blob","saveAs","documentLocales","RenderLocale","setError","refetch","isError","countryCode","onDownload","useCallback","toUpperCase","RenderLocalesColumn","error","MobileRow","cells","cell","header","StandardRow","Header","SearchResultsTable","getTypeLabel","renderMobileRow","row","renderStandardRow","TableContainer","component","Table","TableBody","SearchResultsSection","isNotEmpty","Alert","severity","SearchResults","firstSectionDocuments","useMemo","secondSectionDocuments","showSecondSection","Search","parsed","queryString","parse","search","setText","isFetched","history","replaceState","stringify","CircularProgress","queryClient","QueryClient","defaultOptions","queries","staleTime","refetchOnWindowFocus","retry","App","QueryClientProvider","rel","href","reportWebVitals","onPerfEntry","Function","then","getCLS","getFID","getFCP","getLCP","getTTFB","languageDetector","LanguageDetector","addDetector","lookup","i18n","use","initReactI18next","init","resources","hbl","translation","translationHBL","slg","translationSLG","detection","order","ReactDOM","render","StrictMode","CssBaseline","getElementById"],"mappings":"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","file":"static/js/main.ec46578a.chunk.js","sourcesContent":["import {ApiOperationsType} from './Api.types';\r\n\r\nexport enum RestApiMethod {\r\n GET,\r\n}\r\n\r\nexport enum ApiOperation {\r\n SearchDocuments,\r\n GetDocument,\r\n}\r\n\r\nexport const Operations: ApiOperationsType = {\r\n [ApiOperation.SearchDocuments]: {\r\n method: RestApiMethod.GET,\r\n url: ({text}) => `/Document/search/${text}`,\r\n },\r\n [ApiOperation.GetDocument]: {\r\n method: RestApiMethod.GET,\r\n url: () => '/Document',\r\n responseType: 'blob'\r\n }\r\n};\r\n","import dev from './config.dev.json';\r\nimport prod from './config.prod.json';\r\n\r\ninterface IBankConfig {\r\n bank: string;\r\n domain: string;\r\n cssFileAddress: string;\r\n language: string;\r\n fullPage: boolean;\r\n tagsConstraints: string[];\r\n keyDocuments: string[];\r\n otherDocuments: string[];\r\n}\r\n\r\nconst defaultConfig: IBankConfig = {\r\n bank: 'default bank',\r\n domain: '',\r\n cssFileAddress: 'bib-hbl.css',\r\n language: 'hbl',\r\n fullPage: false,\r\n tagsConstraints: ['Constraint:YES'],\r\n keyDocuments: ['FIDLEG-BIB'],\r\n otherDocuments: ['KIID', 'KIDforPRIIP', 'Factsheet', 'Prospectus', 'AnnualReport', 'SemiAnnualReport']\r\n}\r\n\r\nlet config = [] as IBankConfig[];\r\n\r\nswitch (process.env.NODE_ENV) {\r\n case 'production':\r\n config = prod;\r\n break;\r\n case 'development':\r\n config = dev;\r\n break;\r\n}\r\n\r\nexport default config.find(\r\n (bankConfig) => bankConfig.domain === window.location.hostname\r\n) || defaultConfig;\r\n","import React from 'react';\r\nimport MuiContainer from '@material-ui/core/Container/Container'\r\nimport config from '../../config/config';\r\n\r\ninterface IContainerProps {\r\n children: React.ReactFragment\r\n}\r\n\r\nconst Container = ({children}: IContainerProps) => {\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n}\r\n\r\nconst ContainerWrapper = ({children}: IContainerProps) => {\r\n return config.fullPage ? {children} : <>{children};\r\n}\r\n\r\nexport default ContainerWrapper\r\n","import axios, {AxiosError, AxiosRequestConfig} from 'axios';\r\nimport {RestApiMethod} from './Api';\r\n\r\nconst client = axios.create({\r\n baseURL: '/api',\r\n});\r\n\r\ninterface IRequestProps {\r\n url: string;\r\n method: RestApiMethod;\r\n params?: Record;\r\n additionalParams?: Partial;\r\n onErrorFunction?: (Error: AxiosError) => any;\r\n}\r\n\r\nconst requestInternal = (\r\n url: string,\r\n method: RestApiMethod,\r\n params?: Record,\r\n additionalParams?: Partial\r\n) => {\r\n const axiosClient = client;\r\n\r\n switch (method) {\r\n case RestApiMethod.GET:\r\n return axiosClient.get(url, {params, ...additionalParams});\r\n default:\r\n throw new Error('Runtime error');\r\n }\r\n};\r\n\r\nexport const request = (props: IRequestProps) => {\r\n const {\r\n url,\r\n method,\r\n params,\r\n additionalParams,\r\n onErrorFunction = () => {},\r\n } = props;\r\n\r\n return requestInternal(url, method, params, additionalParams).catch(\r\n (err: AxiosError) => {\r\n onErrorFunction(err);\r\n throw err;\r\n }\r\n );\r\n};\r\n","import {AxiosError, AxiosResponse} from 'axios';\r\nimport {ApiOperation, Operations} from './utilis/Api';\r\nimport {IUrlParamsType} from './utilis/Api.types';\r\nimport {request as restRequest} from './utilis/RestClient';\r\n\r\ninterface IRequestProps {\r\n operation: ApiOperation;\r\n params?: Record;\r\n urlParams?: IUrlParamsType;\r\n onErrorFunction?: (Error: AxiosError) => any;\r\n}\r\n\r\nexport const request = (props: IRequestProps): Promise> => {\r\n const {operation, params, urlParams, onErrorFunction = () => {}} = props;\r\n\r\n const operationObject = Operations[operation];\r\n\r\n const additionalParams = {\r\n ...(operationObject.responseType && {responseType: operationObject.responseType})\r\n };\r\n\r\n return restRequest({\r\n url: operationObject.url(urlParams || {}),\r\n method: operationObject.method,\r\n params: params,\r\n additionalParams,\r\n onErrorFunction: onErrorFunction,\r\n });\r\n};\r\n","import {atom} from 'recoil';\r\n\r\nexport const loadingState = atom({\r\n key: 'loading',\r\n default: false\r\n});\r\n","import {useEffect} from 'react';\r\nimport {useRecoilState} from 'recoil';\r\nimport {loadingState} from '../atoms';\r\n\r\nconst useSetLoadingState = (isLoading: boolean) => {\r\n const [,setLoading] = useRecoilState(loadingState);\r\n\r\n useEffect(() => {\r\n setLoading(isLoading);\r\n }, [isLoading, setLoading]);\r\n}\r\n\r\nexport default useSetLoadingState\r\n","const toSingleElementArray = (item: T|T[]): T[] => {\r\n return Array.isArray(item) ? item : [item];\r\n};\r\n\r\nexport default toSingleElementArray;\r\n","import {groupBy} from 'lodash';\r\nimport {ILocale} from './../../utilis/ResponseObjects.types';\r\nimport config from '../../../config/config';\r\nimport toSingleElementArray from '../../../utilis/toSingleElementArray';\r\nimport {ISearchDocumentsResponseType, ISingleDocument} from '../../utilis/ResponseObjects.types';\r\n\r\ninterface ICompactDocumentDocumentType {\r\n detailedDocumentType: string;\r\n locale: string;\r\n tags: string[];\r\n}\r\n\r\nconst getLocaleSecondPart = (locale: string) => (\r\n locale.split('_').pop()?.toLowerCase()\r\n)\r\n\r\nconst getLocaleFirstPart = (locale: string) => (\r\n locale.slice(0,2).toLowerCase()\r\n)\r\n\r\nconst getLocalesFromDocuments = (documents: ICompactDocumentDocumentType[]) => (\r\n documents.map(document => ({locale: document.locale, tagSet: document.tags}))\r\n)\r\n\r\n// Filter locale using full locale code\r\nconst filterLocalesByFullLocale = (allLocales: ILocale[]) => (\r\n (locale: ILocale, index: number) => (\r\n allLocales.findIndex(d => d.locale === locale.locale) === index\r\n )\r\n)\r\n\r\n// Filter locale using only first part of locale code\r\nconst filterLocalesByFirstPartLocale = (allLocales: ILocale[]) => (\r\n (locale: ILocale, index: number) => (\r\n allLocales.findIndex(d => getLocaleFirstPart(d.locale) === getLocaleFirstPart(locale.locale)) === index\r\n )\r\n)\r\n\r\n// Show only those document's that has required tags, or does not have any tag's at all\r\nconst filterDocumentTags = (document: ICompactDocumentDocumentType) => (\r\n config.tagsConstraints.every(constraint => document.tags.includes(constraint)) || document.tags.length === 0\r\n)\r\n\r\n\r\n// Show unique locales for each document, preferably with tags\r\nconst getLocalesUniqueByTag = (locales: ILocale[]) => {\r\n const sortedLocales = locales.sort((l1, l2) => l2.tagSet.length - l1.tagSet.length);\r\n\r\n return sortedLocales.filter(filterLocalesByFullLocale(sortedLocales));\r\n}\r\n\r\n// Show unique locales for each document, removing non '_CH' ones if needed\r\nconst getLocalesUniqueByCode = (locales: ILocale[]) => {\r\n const sortedLocales = locales.sort((l1, l2) => +(getLocaleSecondPart(l1.locale) === 'CH') - +(getLocaleSecondPart(l2.locale) === 'CH'));\r\n\r\n return sortedLocales.filter(filterLocalesByFirstPartLocale(sortedLocales));\r\n}\r\n\r\nconst getUniqueLocales = (documents: ICompactDocumentDocumentType[]) => {\r\n const locales = getLocalesFromDocuments(documents);\r\n\r\n const uniqueByTag = getLocalesUniqueByTag(locales);\r\n\r\n const uniqueByTagAndCode = getLocalesUniqueByCode(uniqueByTag);\r\n\r\n return uniqueByTagAndCode;\r\n}\r\n\r\nconst searchDocumentResponseTransformer = (result: ISearchDocumentsResponseType): ISingleDocument[] => {\r\n const documents = [] as ISingleDocument[];\r\n\r\n const compactDocuments = toSingleElementArray(result.hit ?? []).map(hit => ({\r\n id: hit.productId,\r\n isin: hit.isin,\r\n name: hit.name,\r\n documentTypes: groupBy(\r\n toSingleElementArray(hit.documentTypes.documentType ?? []).map(document => ({\r\n detailedDocumentType: document.detailedDocumentType,\r\n locale: document.documentLocale,\r\n tags: toSingleElementArray(document.tagSet.tag || [])\r\n })),\r\n 'detailedDocumentType'\r\n )\r\n }));\r\n\r\n compactDocuments.forEach(item => {\r\n for (const [key, value] of Object.entries(item.documentTypes)) {\r\n const documentsToAdd = value.filter(filterDocumentTags);\r\n\r\n if (documentsToAdd.length > 0) {\r\n documents.push({\r\n id: item.id,\r\n name: item.name,\r\n isin: item.isin,\r\n type: key,\r\n locales: getUniqueLocales(documentsToAdd),\r\n });\r\n }\r\n\r\n }\r\n })\r\n \r\n return documents;\r\n}\r\n\r\nexport default searchDocumentResponseTransformer;\r\n","import {useQuery} from 'react-query';\r\nimport {request} from '../Client';\r\nimport {ApiOperation} from '../utilis/Api';\r\nimport {ISearchDocumentsResponseType} from '../utilis/ResponseObjects.types';\r\nimport useSetLoadingState from '../../utilis/useSetLoadingState';\r\nimport searchDocumentResponseTransformer from './utilis/searchDocumentResponseTransformer';\r\n\r\nconst useSearchQuery = (text: string) => {\r\n const query = useQuery(['searchDocument', text], async () => {\r\n const res = await request({\r\n operation: ApiOperation.SearchDocuments,\r\n urlParams: {text}\r\n });\r\n return searchDocumentResponseTransformer(res.data);\r\n }, {\r\n enabled: text !== ''\r\n });\r\n\r\n useSetLoadingState(query.isFetching);\r\n\r\n return query;\r\n}\r\n\r\nexport default useSearchQuery;","import Button from '@material-ui/core/Button';\r\nimport {ButtonProps} from '@material-ui/core';\r\n\r\nfunction SearchButton({children, ...others}: ButtonProps) {\r\n return (\r\n \r\n );\r\n}\r\n\r\nexport default SearchButton;\r\n","var _path, _path2;\n\nvar _excluded = [\"title\", \"titleId\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport * as React from \"react\";\n\nfunction SvgBootstrapDownload(_ref, svgRef) {\n var title = _ref.title,\n titleId = _ref.titleId,\n props = _objectWithoutProperties(_ref, _excluded);\n\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: 16,\n height: 16,\n fill: \"currentColor\",\n className: \"bi bi-download\",\n viewBox: \"0 0 16 16\",\n ref: svgRef,\n \"aria-labelledby\": titleId\n }, props), title ? /*#__PURE__*/React.createElement(\"title\", {\n id: titleId\n }, title) : null, _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M.5 9.9a.5.5 0 0 1 .5.5v2.5a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-2.5a.5.5 0 0 1 1 0v2.5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2v-2.5a.5.5 0 0 1 .5-.5z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7.646 11.854a.5.5 0 0 0 .708 0l3-3a.5.5 0 0 0-.708-.708L8.5 10.293V1.5a.5.5 0 0 0-1 0v8.793L5.354 8.146a.5.5 0 1 0-.708.708l3 3z\"\n })));\n}\n\nvar ForwardRef = /*#__PURE__*/React.forwardRef(SvgBootstrapDownload);\nexport default __webpack_public_path__ + \"static/media/bootstrap-download.e59d328a.svg\";\nexport { ForwardRef as ReactComponent };","import TextField, {TextFieldProps} from '@material-ui/core/TextField/TextField'\r\n\r\nconst SearchInput = (props: TextFieldProps) => {\r\n return (\r\n \r\n )\r\n}\r\n\r\nexport default SearchInput\r\n","const getAlphanumericText = (value: string) => (\r\n value.replace(/[\\W_]+/g,'')\r\n);\r\n\r\nexport default getAlphanumericText;","import useTheme from '@material-ui/core/styles/useTheme';\r\nimport useMediaQuery from '@material-ui/core/useMediaQuery/useMediaQuery';\r\nimport SearchIcon from '@material-ui/icons/Search';\r\nimport {useState} from 'react';\r\nimport {useTranslation} from 'react-i18next';\r\nimport {useRecoilState} from 'recoil';\r\nimport classNames from 'classnames';\r\nimport {loadingState} from '../../atoms';\r\nimport SearchButton from '../SearchButton/SearchButton';\r\nimport SearchInput from '../SearchInput/SearchInput';\r\nimport getAlphanumericText from '../../utilis/getAlphanumericText';\r\n\r\ninterface ISearchBarProps {\r\n onSearch: (text: string) => void;\r\n defaultValue: string,\r\n}\r\n\r\nconst SearchBar = ({onSearch, defaultValue: value}: ISearchBarProps) => {\r\n const theme = useTheme();\r\n const smaller = useMediaQuery(theme.breakpoints.down('xs'));\r\n const {t} = useTranslation();\r\n const [input, setInput] = useState(getAlphanumericText(value));\r\n const [loading] = useRecoilState(loadingState);\r\n \r\n return (\r\n
\r\n
\r\n setInput(getAlphanumericText(event.target.value))}\r\n disabled={loading}\r\n onKeyDown={(event) => event.key === 'Enter' && onSearch(input)}\r\n />\r\n
\r\n
\r\n
\r\n onSearch(input)} disabled={loading}>\r\n {t('search-bar.button-label')}\r\n \r\n \r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default SearchBar\r\n","import {useQuery, UseQueryResult} from 'react-query';\r\nimport {saveAs} from 'file-saver';\r\nimport {request} from '../Client';\r\nimport {ApiOperation} from '../utilis/Api';\r\nimport useSetLoadingState from '../../utilis/useSetLoadingState';\r\n\r\ninterface IUseGetDocumentQueryProps {\r\n isin: string,\r\n documentLocales: string,\r\n documentType: string,\r\n tagSet: string[],\r\n}\r\n\r\nconst useGetDocumentQuery = (props: IUseGetDocumentQueryProps): UseQueryResult => {\r\n const query = useQuery(['getDocument', props], async () => {\r\n const res = await request({\r\n operation: ApiOperation.GetDocument,\r\n params: {\r\n ...props,\r\n tagSet: props.tagSet.join(',')\r\n }\r\n });\r\n\r\n if (res.headers['content-type'] !== 'application/pdf') {\r\n throw new Error('Response is not a pdf file');\r\n }\r\n\r\n return res.data;\r\n }, {\r\n enabled: false,\r\n onSuccess: (data) => {\r\n const file = new Blob([data], {\r\n type: 'application/pdf',\r\n });\r\n saveAs(file, `${props.isin}_${props.documentType}_${props.documentLocales}`);\r\n }\r\n });\r\n\r\n useSetLoadingState(query.isFetching);\r\n\r\n return query;\r\n}\r\n\r\nexport default useGetDocumentQuery;","import {useCallback, useEffect} from 'react';\r\nimport {useRecoilState} from 'recoil';\r\nimport classNames from 'classnames';\r\nimport {ReactComponent as DownloadIcon} from '../../icons/bootstrap-download.svg'\r\nimport useGetDocumentQuery from '../../services/reactQueryHook/useGetDocumentQuery';\r\nimport {loadingState} from '../../atoms';\r\nimport {ILocale} from '../../services/utilis/ResponseObjects.types';\r\n\r\ninterface IRenderLocaleProps {\r\n isin: string,\r\n locale: ILocale,\r\n type: string,\r\n setError: (error: boolean) => void,\r\n}\r\n\r\nconst RenderLocale = ({isin, locale, type, setError}: IRenderLocaleProps) => {\r\n const [loading] = useRecoilState(loadingState);\r\n\r\n const {refetch, isError} = useGetDocumentQuery({\r\n isin,\r\n documentType: type,\r\n documentLocales: locale.locale,\r\n tagSet: locale.tagSet\r\n });\r\n\r\n useEffect(() => {\r\n setError(isError);\r\n }, [isError, setError])\r\n\r\n const onDownload = useCallback(\r\n () => {\r\n if (!loading) {\r\n refetch(); //Download document\r\n }\r\n },\r\n [loading, refetch],\r\n )\r\n\r\n const prettifyLocale = (countryCode: String) => countryCode && countryCode.slice(0,2).toUpperCase();\r\n\r\n return (\r\n
\r\n
\r\n {prettifyLocale(locale.locale)}\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default RenderLocale\r\n","import {useState} from 'react';\r\nimport {useTranslation} from 'react-i18next';\r\nimport {ISingleDocument} from '../../services/utilis/ResponseObjects.types';\r\nimport RenderLocale from './RenderLocale';\r\n\r\ninterface IRenderLocalesColumnProps {\r\n hit: ISingleDocument\r\n}\r\n\r\nconst RenderLocalesColumn = ({hit}: IRenderLocalesColumnProps) => {\r\n const [error, setError] = useState(false);\r\n const {t} = useTranslation();\r\n\r\n return (\r\n <>\r\n
\r\n {hit.locales.map((locale, index) => (\r\n \r\n ))}\r\n
\r\n\r\n {error &&
{t('errors.notFoundError')}
}\r\n \r\n )\r\n}\r\n\r\nexport default RenderLocalesColumn\r\n","import TableCell from '@material-ui/core/TableCell/TableCell'\r\nimport TableRow from '@material-ui/core/TableRow/TableRow'\r\nimport {Fragment} from 'react'\r\n\r\ninterface IMobileRowProps {\r\n cells: {\r\n header: string|JSX.Element,\r\n value: string|JSX.Element\r\n }[]\r\n}\r\n\r\nconst MobileRow = ({cells}: IMobileRowProps) => {\r\n return (\r\n \r\n {cells.map((cell, index) => (\r\n \r\n \r\n {cell.header}\r\n \r\n \r\n {cell.value}\r\n \r\n \r\n ))}\r\n \r\n )\r\n}\r\n\r\nexport default MobileRow\r\n","import TableCell from '@material-ui/core/TableCell/TableCell'\r\nimport TableRow from '@material-ui/core/TableRow/TableRow'\r\nimport classNames from 'classnames'\r\n\r\ninterface IStandardRowProps {\r\n cells: {\r\n value: string|JSX.Element\r\n }[],\r\n header?: boolean\r\n}\r\n\r\nconst StandardRow = ({cells, header = false}: IStandardRowProps) => {\r\n return (\r\n \r\n {cells.map((cell, index) => (\r\n \r\n {cell.value}\r\n \r\n ))}\r\n \r\n )\r\n}\r\n\r\nexport default StandardRow\r\n","import TableHead from '@material-ui/core/TableHead/TableHead';\r\nimport {useTranslation} from 'react-i18next';\r\nimport StandardRow from './StandardRow';\r\n\r\nconst Header = () => {\r\n const {t} = useTranslation();\r\n \r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default Header\r\n","import {Fragment, useCallback} from 'react'\r\nimport Table from '@material-ui/core/Table';\r\nimport TableBody from '@material-ui/core/TableBody';\r\nimport TableContainer from '@material-ui/core/TableContainer';\r\nimport useTheme from '@material-ui/core/styles/useTheme';\r\nimport useMediaQuery from '@material-ui/core/useMediaQuery/useMediaQuery';\r\nimport {useTranslation} from 'react-i18next';\r\nimport classNames from 'classnames';\r\nimport {Alert} from '@material-ui/lab';\r\nimport RenderLocalesColumn from './RenderLocalesColumn';\r\nimport MobileRow from './MobileRow';\r\nimport StandardRow from './StandardRow';\r\nimport Header from './Header';\r\nimport {ISingleDocument} from '../../services/utilis/ResponseObjects.types';\r\n\r\ninterface ISearchResultsProps {\r\n documents: ISingleDocument[]|undefined,\r\n title: string,\r\n}\r\n\r\ninterface ISearchResultsTableProps {\r\n documents: ISingleDocument[]\r\n}\r\n\r\nconst SearchResultsTable = ({documents}: ISearchResultsTableProps) => {\r\n const theme = useTheme();\r\n const smaller = useMediaQuery(theme.breakpoints.down('xs'));\r\n const {t} = useTranslation();\r\n\r\n const getTypeLabel = useCallback(\r\n (type) => t(`documentTypes.${type}` as any, type), [t],\r\n );\r\n\r\n const renderMobileRow = useCallback(\r\n (row) => (\r\n },\r\n ]} />\r\n ),\r\n [getTypeLabel, t]\r\n );\r\n\r\n const renderStandardRow = useCallback(\r\n (row) => (\r\n }\r\n ]} />\r\n ),\r\n [getTypeLabel]\r\n );\r\n\r\n return (\r\n \r\n \r\n {!smaller &&
}\r\n \r\n {documents.map((row, index) => (\r\n \r\n {smaller ? renderMobileRow(row) : renderStandardRow(row)}\r\n \r\n ))}\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nconst SearchResultsSection = ({documents, title}: ISearchResultsProps) => {\r\n const theme = useTheme();\r\n const smaller = useMediaQuery(theme.breakpoints.down('xs'));\r\n const {t} = useTranslation();\r\n \r\n const isNotEmpty = documents && documents.length > 0;\r\n\r\n return (\r\n
\r\n
{title}
\r\n {isNotEmpty\r\n ? \r\n :
{t('alerts.no-results')}
\r\n }\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default SearchResultsSection\r\n","import React, {useMemo} from 'react'\r\nimport {useTranslation} from 'react-i18next'\r\nimport config from '../../config/config'\r\nimport {ISingleDocument} from '../../services/utilis/ResponseObjects.types'\r\nimport SearchResultsSection from '../SearchResultsSection/SearchResultsSection'\r\n\r\ninterface ISearchResultsProps {\r\n documents: ISingleDocument[]|undefined,\r\n}\r\n\r\nconst SearchResults = ({documents}: ISearchResultsProps) => {\r\n const {t} = useTranslation();\r\n\r\n const firstSectionDocuments = useMemo(() => documents?.filter(document => config.keyDocuments.includes(document.type)), [documents]);\r\n const secondSectionDocuments = useMemo(() => documents?.filter(document => config.otherDocuments.includes(document.type)), [documents]);\r\n\r\n const showSecondSection = secondSectionDocuments && secondSectionDocuments.length > 0;\r\n \r\n return (\r\n <>\r\n \r\n {showSecondSection && }\r\n \r\n )\r\n}\r\n\r\nexport default SearchResults\r\n","import {useEffect, useState} from 'react';\r\nimport queryString from 'query-string';\r\nimport {CircularProgress} from '@material-ui/core';\r\nimport {useRecoilState} from 'recoil';\r\nimport useSearchQuery from '../../services/reactQueryHook/useSearchQuery';\r\nimport SearchBar from '../SearchBar/SearchBar';\r\nimport getAlphanumericText from '../../utilis/getAlphanumericText';\r\nimport {loadingState} from '../../atoms';\r\nimport SearchResults from '../SearchResults/SearchResults';\r\n\r\nconst Search = () => { \r\n const parsed = queryString.parse(window.location.search);\r\n const [text, setText] = useState(typeof parsed.isin === 'string' ? parsed.isin : '');\r\n const {data, isFetched} = useSearchQuery(getAlphanumericText(text));\r\n const [loading] = useRecoilState(loadingState);\r\n\r\n useEffect(() => {\r\n if (text && text !== parsed.isin) {\r\n window.history.replaceState(null, '', `?${queryString.stringify({isin: text})}`)\r\n }\r\n }, [parsed.isin, text]);\r\n\r\n return (\r\n
\r\n {loading &&
\r\n \r\n
}\r\n \r\n \r\n {isFetched && }\r\n
\r\n )\r\n}\r\n\r\nexport default Search\r\n","import {QueryClient} from 'react-query';\r\n\r\nexport const queryClient = new QueryClient({\r\n defaultOptions: {\r\n queries: {\r\n staleTime: 5000,\r\n refetchOnWindowFocus: false,\r\n retry: false\r\n },\r\n },\r\n});\r\n","import {Helmet} from 'react-helmet-async';\r\nimport {QueryClientProvider} from 'react-query';\r\nimport {RecoilRoot} from 'recoil';\r\nimport config from './config/config';\r\nimport Container from './components/Container/Container';\r\nimport Search from './components/Search/Search';\r\nimport {queryClient} from './services/queryClient';\r\n\r\nfunction App() {\r\n return (\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default App;\r\n","import {ReportHandler} from 'web-vitals';\r\n\r\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\r\n if (onPerfEntry && onPerfEntry instanceof Function) {\r\n import('web-vitals').then(({getCLS, getFID, getFCP, getLCP, getTTFB}) => {\r\n getCLS(onPerfEntry);\r\n getFID(onPerfEntry);\r\n getFCP(onPerfEntry);\r\n getLCP(onPerfEntry);\r\n getTTFB(onPerfEntry);\r\n });\r\n }\r\n};\r\n\r\nexport default reportWebVitals;\r\n","import i18n from 'i18next';\r\nimport {initReactI18next} from 'react-i18next';\r\nimport LanguageDetector from 'i18next-browser-languagedetector';\r\nimport config from '../config/config';\r\nimport translationHBL from './hbl/translation.json';\r\nimport translationSLG from './slg/translation.json';\r\n\r\ndeclare module 'react-i18next' {\r\n interface Resources {\r\n translation: typeof translationHBL;\r\n }\r\n}\r\n\r\nconst languageDetector = new LanguageDetector();\r\nlanguageDetector.addDetector({\r\n name: 'configLanguageDetector',\r\n lookup: () => {\r\n return config.language;\r\n }\r\n});\r\n\r\ni18n.use(initReactI18next).use(languageDetector).init({\r\n resources: {\r\n hbl: {\r\n translation: translationHBL,\r\n },\r\n slg: {\r\n translation: translationSLG\r\n }\r\n },\r\n detection: {\r\n order: ['configLanguageDetector']\r\n }\r\n});\r\n\r\nexport default i18n;\r\n","import {CssBaseline} from '@material-ui/core';\r\nimport React from 'react';\r\nimport ReactDOM from 'react-dom';\r\nimport {HelmetProvider} from 'react-helmet-async';\r\nimport App from './App';\r\nimport reportWebVitals from './reportWebVitals';\r\nimport './i18n/i18n';\r\n\r\nReactDOM.render(\r\n \r\n \r\n \r\n \r\n \r\n ,\r\n document.getElementById('root')\r\n);\r\n\r\n// If you want to start measuring performance in your app, pass a function\r\n// to log results (for example: reportWebVitals(console.log))\r\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\r\nreportWebVitals();\r\n"],"sourceRoot":""}