diff --git a/app/package-lock.json b/app/package-lock.json
index 53e509d828..a33c272d40 100644
--- a/app/package-lock.json
+++ b/app/package-lock.json
@@ -12,6 +12,7 @@
"@formatjs/intl-pluralrules": "1.3.9",
"@formatjs/intl-relativetimeformat": "4.5.1",
"@formatjs/intl-utils": "1.6.0",
+ "@reportportal/ui-kit": "^0.0.1-alpha.8",
"axios": "1.6.4",
"c3": "0.7.20",
"chart.js": "2.9.4",
@@ -2251,6 +2252,40 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
+ "node_modules/@floating-ui/core": {
+ "version": "1.6.1",
+ "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.1.tgz",
+ "integrity": "sha512-42UH54oPZHPdRHdw6BgoBD6cg/eVTmVrFcgeRDM3jbO7uxSoipVcmcIGFcA5jmOHO5apcyvBhkSKES3fQJnu7A==",
+ "dependencies": {
+ "@floating-ui/utils": "^0.2.0"
+ }
+ },
+ "node_modules/@floating-ui/dom": {
+ "version": "1.6.4",
+ "resolved": "https://registry.npmjs.org/@floating-ui/dom/-/dom-1.6.4.tgz",
+ "integrity": "sha512-0G8R+zOvQsAG1pg2Q99P21jiqxqGBW1iRe/iXHsBRBxnpXKFI8QwbB4x5KmYLggNO5m34IQgOIu9SCRfR/WWiQ==",
+ "dependencies": {
+ "@floating-ui/core": "^1.0.0",
+ "@floating-ui/utils": "^0.2.0"
+ }
+ },
+ "node_modules/@floating-ui/react-dom": {
+ "version": "2.0.9",
+ "resolved": "https://registry.npmjs.org/@floating-ui/react-dom/-/react-dom-2.0.9.tgz",
+ "integrity": "sha512-q0umO0+LQK4+p6aGyvzASqKbKOJcAHJ7ycE9CuUvfx3s9zTHWmGJTPOIlM/hmSBfUfg/XfY5YhLBLR/LHwShQQ==",
+ "dependencies": {
+ "@floating-ui/dom": "^1.0.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.8.0",
+ "react-dom": ">=16.8.0"
+ }
+ },
+ "node_modules/@floating-ui/utils": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.2.tgz",
+ "integrity": "sha512-J4yDIIthosAsRZ5CPYP/jQvUAQtlZTTD/4suA08/FEnlxqW3sKS9iAhgsa9VYLZ6vDHn/ixJgIqRQPotoBjxIw=="
+ },
"node_modules/@formatjs/ecma402-abstract": {
"version": "1.11.4",
"resolved": "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-1.11.4.tgz",
@@ -3478,6 +3513,73 @@
"resolved": "https://registry.npmjs.org/@react-dnd/shallowequal/-/shallowequal-4.0.2.tgz",
"integrity": "sha512-/RVXdLvJxLg4QKvMoM5WlwNR9ViO9z8B/qPcc+C0Sa/teJY7QG7kJ441DwzOjMYEY7GmU4dj5EcGHIkKZiQZCA=="
},
+ "node_modules/@reportportal/ui-kit": {
+ "version": "0.0.1-alpha.8",
+ "resolved": "https://registry.npmjs.org/@reportportal/ui-kit/-/ui-kit-0.0.1-alpha.8.tgz",
+ "integrity": "sha512-LxxQzseIcrIpEZ0Ip7eDcBvNbZModPOihWSIlBSdS2ni8thu42SL56ENvYKZTpXomcM9pkTVMuMwxVETOVpoyA==",
+ "dependencies": {
+ "@floating-ui/react-dom": "^2.0.1",
+ "classnames": "^2.3.2",
+ "downshift": "^6.1.12",
+ "framer-motion": "^10.15.2",
+ "rc-scrollbars": "^1.1.6"
+ },
+ "engines": {
+ "node": ">=16.x"
+ },
+ "peerDependencies": {
+ "react": "17.x-18.x",
+ "react-dom": "17.x-18.x"
+ }
+ },
+ "node_modules/@reportportal/ui-kit/node_modules/classnames": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/classnames/-/classnames-2.5.1.tgz",
+ "integrity": "sha512-saHYOzhIQs6wy2sVxTM6bUDsQO4F50V9RQ22qBpEdCW+I+/Wmke2HOl6lS6dTpdxVhb88/I6+Hs+438c3lfUow=="
+ },
+ "node_modules/@reportportal/ui-kit/node_modules/downshift": {
+ "version": "6.1.12",
+ "resolved": "https://registry.npmjs.org/downshift/-/downshift-6.1.12.tgz",
+ "integrity": "sha512-7XB/iaSJVS4T8wGFT3WRXmSF1UlBHAA40DshZtkrIscIN+VC+Lh363skLxFTvJwtNgHxAMDGEHT4xsyQFWL+UA==",
+ "dependencies": {
+ "@babel/runtime": "^7.14.8",
+ "compute-scroll-into-view": "^1.0.17",
+ "prop-types": "^15.7.2",
+ "react-is": "^17.0.2",
+ "tslib": "^2.3.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.12.0"
+ }
+ },
+ "node_modules/@reportportal/ui-kit/node_modules/framer-motion": {
+ "version": "10.18.0",
+ "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-10.18.0.tgz",
+ "integrity": "sha512-oGlDh1Q1XqYPksuTD/usb0I70hq95OUzmL9+6Zd+Hs4XV0oaISBa/UUMSjYiq6m8EUF32132mOJ8xVZS+I0S6w==",
+ "dependencies": {
+ "tslib": "^2.4.0"
+ },
+ "optionalDependencies": {
+ "@emotion/is-prop-valid": "^0.8.2"
+ },
+ "peerDependencies": {
+ "react": "^18.0.0",
+ "react-dom": "^18.0.0"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
+ },
+ "react-dom": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@reportportal/ui-kit/node_modules/react-is": {
+ "version": "17.0.2",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w=="
+ },
"node_modules/@samverschueren/stream-to-observable": {
"version": "0.3.1",
"resolved": "https://registry.npmjs.org/@samverschueren/stream-to-observable/-/stream-to-observable-0.3.1.tgz",
@@ -21518,6 +21620,19 @@
"rc": "cli.js"
}
},
+ "node_modules/rc-scrollbars": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/rc-scrollbars/-/rc-scrollbars-1.1.6.tgz",
+ "integrity": "sha512-Tr/7dE7JUR4t2Zx50egsC0qLBXsUxez7NK97V3/0BLyNIdZXTy9eEA9Dk7SybZvTgK4VLZbyNlteIvMmesRT1A==",
+ "dependencies": {
+ "dom-css": "^2.1.0",
+ "raf": "^3.4.1"
+ },
+ "peerDependencies": {
+ "react": "^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^0.14.0 || ^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
"node_modules/rc-slider": {
"version": "10.1.1",
"resolved": "https://registry.npmjs.org/rc-slider/-/rc-slider-10.1.1.tgz",
diff --git a/app/package.json b/app/package.json
index 143f7e8c7b..80ef900d91 100644
--- a/app/package.json
+++ b/app/package.json
@@ -25,6 +25,7 @@
"@formatjs/intl-pluralrules": "1.3.9",
"@formatjs/intl-relativetimeformat": "4.5.1",
"@formatjs/intl-utils": "1.6.0",
+ "@reportportal/ui-kit": "^0.0.1-alpha.8",
"axios": "1.6.4",
"c3": "0.7.20",
"chart.js": "2.9.4",
@@ -103,10 +104,10 @@
"@babel/polyfill": "7.12.1",
"@babel/preset-env": "7.23.3",
"@babel/preset-react": "7.23.3",
+ "@cfaester/enzyme-adapter-react-18": "0.7.1",
"@pmmmwh/react-refresh-webpack-plugin": "0.5.10",
"@sowtame/webpack-subresource-integrity": "2.0.0",
"@types/jest": "24.9.0",
- "@cfaester/enzyme-adapter-react-18": "0.7.1",
"axios-mock-adapter": "1.17.0",
"babel-eslint": "10.0.3",
"babel-loader": "8.2.3",
diff --git a/app/src/componentLibrary/autocompletes/common/autocompleteOptions.jsx b/app/src/componentLibrary/autocompletes/common/autocompleteOptions.jsx
index e377c282d7..1a80c266d4 100644
--- a/app/src/componentLibrary/autocompletes/common/autocompleteOptions.jsx
+++ b/app/src/componentLibrary/autocompletes/common/autocompleteOptions.jsx
@@ -18,7 +18,7 @@ import { Component } from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames/bind';
import { ScrollWrapper } from 'components/main/scrollWrapper';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { autocompleteVariantType, singleAutocompleteOptionVariantType } from './propTypes';
import { AutocompletePrompt } from './autocompletePrompt';
import { AutocompleteOption } from './autocompleteOption';
@@ -71,7 +71,7 @@ export class AutocompleteOptions extends Component {
return (
<>
-
+
{!createWithoutConfirmation && this.renderNewItem(options)}
>
diff --git a/app/src/componentLibrary/plainTable/plainTable.jsx b/app/src/componentLibrary/plainTable/plainTable.jsx
index 3a212f65a5..53748e6f3d 100644
--- a/app/src/componentLibrary/plainTable/plainTable.jsx
+++ b/app/src/componentLibrary/plainTable/plainTable.jsx
@@ -16,7 +16,7 @@
import PropTypes from 'prop-types';
import classNames from 'classnames/bind';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { PlainTableHeader } from './plainTableHeader';
import { columnPropTypes } from './propTypes';
import { PlainTableBody } from './plainTableBody';
@@ -26,7 +26,7 @@ const cx = classNames.bind(styles);
export const PlainTable = ({ columns, data, actions, isLoading }) =>
isLoading ? (
-
+
) : (
diff --git a/app/src/components/extensionLoader/extensionLoader.jsx b/app/src/components/extensionLoader/extensionLoader.jsx
index fb470acd62..a146d7745b 100644
--- a/app/src/components/extensionLoader/extensionLoader.jsx
+++ b/app/src/components/extensionLoader/extensionLoader.jsx
@@ -1,7 +1,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import { ErrorBoundary } from 'components/containers/errorBoundary';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { createImportProps } from 'controllers/plugins/uiExtensions/createImportProps';
import { ExtensionError } from './extensionError';
import { extensionType } from './extensionTypes';
@@ -22,7 +22,7 @@ function ExtensionLoader({ extension, withPreloader, ...componentProps }) {
const extensionImportProps = createImportProps(pluginName);
return (
-
: null}>
+
: null}>
{Component ?
: null}
);
diff --git a/app/src/components/integrations/elements/bts/btsPropertiesForIssueForm/btsPropertiesForIssueForm.jsx b/app/src/components/integrations/elements/bts/btsPropertiesForIssueForm/btsPropertiesForIssueForm.jsx
index 70d9a7448f..c16710628d 100644
--- a/app/src/components/integrations/elements/bts/btsPropertiesForIssueForm/btsPropertiesForIssueForm.jsx
+++ b/app/src/components/integrations/elements/bts/btsPropertiesForIssueForm/btsPropertiesForIssueForm.jsx
@@ -21,7 +21,7 @@ import { defineMessages, injectIntl } from 'react-intl';
import track from 'react-tracking';
import classNames from 'classnames/bind';
import { fetch } from 'common/utils';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { projectIdSelector } from 'controllers/pages';
import { projectInfoSelector } from 'controllers/project';
import { showNotification, NOTIFICATION_TYPES } from 'controllers/notification';
@@ -414,7 +414,7 @@ export class BtsPropertiesForIssueForm extends Component {
return (
{loading && !this.state.issueType ? (
-
+
) : (
{!disabled && (
@@ -451,7 +451,7 @@ export class BtsPropertiesForIssueForm extends Component {
)}
{loading ? (
-
+
) : (
{
return (
{loading ? (
-
+
) : (
<>
(
-
- {Array(bubblesCount)
- .fill(null)
- .map((item, index) => (
- // eslint-disable-next-line react/no-array-index-key
-
- ))}
-
-);
-BubblesPreloader.propTypes = {
- color: PropTypes.string,
- bubblesCount: PropTypes.number,
- customClassName: PropTypes.string,
-};
-BubblesPreloader.defaultProps = {
- color: '#1a9cb0',
- bubblesCount: 7,
- customClassName: '',
-};
diff --git a/app/src/components/preloaders/bubblesPreloader/bubblesPreloader.scss b/app/src/components/preloaders/bubblesPreloader/bubblesPreloader.scss
deleted file mode 100644
index b2e358951d..0000000000
--- a/app/src/components/preloaders/bubblesPreloader/bubblesPreloader.scss
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright 2021 EPAM Systems
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-.bubbles-preloader {
- position: relative;
-}
-
-.bubble {
- position: absolute;
- width: 6px;
- height: 6px;
- border-radius: 50%;
- background: $COLOR--white-two;
- transform: scale(0.3);
- animation: bubbles 2.5s infinite linear;
-}
-
-.bubble:nth-child(1) {
- left: 0;
- animation-delay: 0.1s;
-}
-
-.bubble:nth-child(2) {
- left: 7px;
- animation-delay: 0.3s;
-}
-
-.bubble:nth-child(3) {
- left: 14px;
- animation-delay: 0.5s;
-}
-
-.bubble:nth-child(4) {
- left: 21px;
- animation-delay: 0.7s;
-}
-
-.bubble:nth-child(5) {
- left: 28px;
- animation-delay: 0.9s;
-}
-
-.bubble:nth-child(6) {
- left: 35px;
- animation-delay: 1.1s;
-}
-
-.bubble:nth-child(7) {
- left: 42px;
- animation-delay: 1.3s;
-}
-
-@keyframes bubbles {
- 20%,
- 60% {
- transform: scale(0.5);
- }
- 40% {
- transform: scale(1);
- }
-}
diff --git a/app/src/components/preloaders/bubblesPreloader/index.js b/app/src/components/preloaders/bubblesPreloader/index.js
deleted file mode 100644
index f0c597a8f4..0000000000
--- a/app/src/components/preloaders/bubblesPreloader/index.js
+++ /dev/null
@@ -1,17 +0,0 @@
-/*
- * Copyright 2021 EPAM Systems
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-export { BubblesPreloader } from './bubblesPreloader';
diff --git a/app/src/controllers/plugins/uiExtensions/createImportProps.js b/app/src/controllers/plugins/uiExtensions/createImportProps.js
index b744a2a1f1..57532f9267 100644
--- a/app/src/controllers/plugins/uiExtensions/createImportProps.js
+++ b/app/src/controllers/plugins/uiExtensions/createImportProps.js
@@ -106,7 +106,7 @@ import {
} from 'controllers/notification';
import { SpinningPreloader } from 'components/preloaders/spinningPreloader';
import { DottedPreloader } from 'components/preloaders/dottedPreloader';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { FieldProvider } from 'components/fields/fieldProvider';
import { FieldErrorHint } from 'components/fields/fieldErrorHint';
import { SimpleBreadcrumbs } from 'components/main/simpleBreadcrumbs';
@@ -296,7 +296,7 @@ export const createImportProps = (pluginName) => ({
AttributeListFormField,
Breadcrumbs,
PlainTable,
- BubblesPreloader,
+ BubblesLoader,
},
componentLibrary: { DraggableRuleList },
HOCs: {
diff --git a/app/src/index.jsx b/app/src/index.jsx
index 847e728086..20d9cd3f5a 100644
--- a/app/src/index.jsx
+++ b/app/src/index.jsx
@@ -27,6 +27,7 @@ import 'reset-css/reset.css';
import 'common/css/fonts/fonts.scss';
import 'common/css/common.scss';
import 'c3/c3.css';
+import '@reportportal/ui-kit/dist/style.css';
import { initPluginRegistration } from 'controllers/plugins/uiExtensions/registerPlugin';
diff --git a/app/src/pages/inside/profilePage/modals/loaderBlock/loaderBlock.jsx b/app/src/pages/inside/profilePage/modals/loaderBlock/loaderBlock.jsx
index 1dc3ad8476..cdede6dbf9 100644
--- a/app/src/pages/inside/profilePage/modals/loaderBlock/loaderBlock.jsx
+++ b/app/src/pages/inside/profilePage/modals/loaderBlock/loaderBlock.jsx
@@ -16,7 +16,7 @@
import React from 'react';
import classNames from 'classnames/bind';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import PropTypes from 'prop-types';
import styles from './loaderBlock.scss';
@@ -26,7 +26,7 @@ export const LoaderBlock = ({ text, className }) => {
return (
diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/elements/labeledPreloader/labeledPreloader.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/elements/labeledPreloader/labeledPreloader.jsx
index ccc865e3c6..d24b358aa8 100644
--- a/app/src/pages/inside/projectSettingsPageContainer/content/elements/labeledPreloader/labeledPreloader.jsx
+++ b/app/src/pages/inside/projectSettingsPageContainer/content/elements/labeledPreloader/labeledPreloader.jsx
@@ -17,14 +17,14 @@
import React from 'react';
import PropTypes from 'prop-types';
import classNames from 'classnames/bind';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import styles from './labeledPreloader.scss';
const cx = classNames.bind(styles);
export const LabeledPreloader = ({ text }) => (
-
+
{text}
);
diff --git a/app/src/pages/inside/projectSettingsPageContainer/content/integrations/integrations.jsx b/app/src/pages/inside/projectSettingsPageContainer/content/integrations/integrations.jsx
index f4477e663e..df203f1523 100644
--- a/app/src/pages/inside/projectSettingsPageContainer/content/integrations/integrations.jsx
+++ b/app/src/pages/inside/projectSettingsPageContainer/content/integrations/integrations.jsx
@@ -22,7 +22,7 @@ import {
pluginsLoadingSelector,
availablePluginsSelector,
} from 'controllers/plugins';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import {
updatePagePropertiesAction,
PROJECT_SETTINGS_TAB_PAGE,
@@ -64,7 +64,7 @@ export const Integrations = () => {
}, [query, plugins]);
if (loading) {
- return ;
+ return ;
}
const onItemClick = (pluginData) => {
dispatch(
diff --git a/app/src/pages/inside/projectSettingsPageContainer/generalTab/generalTab.jsx b/app/src/pages/inside/projectSettingsPageContainer/generalTab/generalTab.jsx
index dffec11970..0a6a3b5fc3 100644
--- a/app/src/pages/inside/projectSettingsPageContainer/generalTab/generalTab.jsx
+++ b/app/src/pages/inside/projectSettingsPageContainer/generalTab/generalTab.jsx
@@ -41,7 +41,7 @@ import { projectIdSelector } from 'controllers/pages';
import { showNotification, NOTIFICATION_TYPES } from 'controllers/notification';
import { langSelector } from 'controllers/lang';
import { SpinningPreloader } from 'components/preloaders/spinningPreloader';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { Button } from 'componentLibrary/button';
import { Dropdown } from 'componentLibrary/dropdown';
import { PROJECT_SETTINGS_GENERAL_TAB_EVENTS } from 'analyticsEvents/projectSettingsPageEvents';
@@ -431,7 +431,7 @@ export class GeneralTab extends Component {
{processingData && (
-
+
{this.props.intl.formatMessage(COMMON_LOCALE_KEYS.processData)}
diff --git a/app/src/pages/inside/stepPage/modals/makeDecisionModal/makeDecisionTabs/makeDecisionTabs.jsx b/app/src/pages/inside/stepPage/modals/makeDecisionModal/makeDecisionTabs/makeDecisionTabs.jsx
index 7a240c8913..289cc4f68c 100644
--- a/app/src/pages/inside/stepPage/modals/makeDecisionModal/makeDecisionTabs/makeDecisionTabs.jsx
+++ b/app/src/pages/inside/stepPage/modals/makeDecisionModal/makeDecisionTabs/makeDecisionTabs.jsx
@@ -18,7 +18,7 @@ import PropTypes from 'prop-types';
import classNames from 'classnames/bind';
import { useState } from 'react';
import { useIntl } from 'react-intl';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import Parser from 'html-react-parser';
import ExternalLinkIcon from 'common/img/go-to-another-page-inline.svg';
import {
@@ -111,7 +111,7 @@ export const MakeDecisionTabs = ({
{loadingMLSuggest && (
-
+
{formatMessage(messages.analyzingSuggestions)}
diff --git a/app/src/pages/inside/uniqueErrorsPage/emptyUniqueErrors/emptyUniqueErrors.jsx b/app/src/pages/inside/uniqueErrorsPage/emptyUniqueErrors/emptyUniqueErrors.jsx
index 1a3ca01f9c..ded995746e 100644
--- a/app/src/pages/inside/uniqueErrorsPage/emptyUniqueErrors/emptyUniqueErrors.jsx
+++ b/app/src/pages/inside/uniqueErrorsPage/emptyUniqueErrors/emptyUniqueErrors.jsx
@@ -28,7 +28,7 @@ import { loadingSelector } from 'controllers/uniqueErrors';
import { fetchParentLaunchSuccessAction } from 'controllers/testItem/actionCreators';
import { GhostButton } from 'components/buttons/ghostButton';
import { SpinningPreloader } from 'components/preloaders/spinningPreloader';
-import { BubblesPreloader } from 'components/preloaders/bubblesPreloader';
+import { BubblesLoader } from '@reportportal/ui-kit';
import { RP_CLUSTER_LAST_RUN } from '../constants';
import { messages } from '../messages';
import styles from './emptyUniqueErrors.scss';
@@ -92,7 +92,7 @@ export class EmptyUniqueErrors extends Component {
return (
<>
-
+
{formatMessage(messages.inProgressAnalysisText)}
diff --git a/app/src/routes/pageSwitcher.jsx b/app/src/routes/pageSwitcher.jsx
index a8b271282f..9c8875d2bd 100644
--- a/app/src/routes/pageSwitcher.jsx
+++ b/app/src/routes/pageSwitcher.jsx
@@ -19,6 +19,7 @@ import { connect } from 'react-redux';
import { PropTypes } from 'prop-types';
import { HTML5Backend } from 'react-dnd-html5-backend';
import { DndProvider } from 'react-dnd';
+import { ThemeProvider } from '@reportportal/ui-kit';
import { ModalContainer } from 'components/main/modal';
import { pageNames } from 'controllers/pages/constants';
import { pageSelector, isInitialDispatchDoneSelector } from 'controllers/pages';
@@ -64,17 +65,19 @@ export default class PageSwitcher extends React.Component {
return (
-
- {mode === 'development' && }
-
-
-
-
-
-
-
-
-
+
+
+ {mode === 'development' && }
+
+
+
+
+
+
+
+
+
+
);
}