diff --git a/package.json b/package.json
index a49847b5a..77fb152a7 100644
--- a/package.json
+++ b/package.json
@@ -93,7 +93,7 @@
"moment-duration-format": "^2.3.2",
"moment-timezone": "^0.5.33",
"mui-color-input": "^9.0.0",
- "openstack-uicore-foundation": "5.0.40",
+ "openstack-uicore-foundation": "5.0.43",
"p-limit": "^6.1.0",
"path-browserify": "^1.0.1",
"postcss-loader": "^6.2.1",
diff --git a/src/actions/__tests__/dropbox-sync-actions.test.js b/src/actions/__tests__/dropbox-sync-actions.test.js
index d15395d1b..a18c8e93c 100644
--- a/src/actions/__tests__/dropbox-sync-actions.test.js
+++ b/src/actions/__tests__/dropbox-sync-actions.test.js
@@ -8,9 +8,9 @@ import flushPromises from "flush-promises";
import {
getRequest,
putRequest,
- postRequest
+ postRequest,
+ snackbarErrorHandler
} from "openstack-uicore-foundation/lib/utils/actions";
-import { snackbarErrorHandler } from "../base-actions";
import * as DropboxSyncActions from "../dropbox-sync-actions";
import * as methods from "../../utils/methods";
import * as MediaUploadActions from "../media-upload-actions";
diff --git a/src/actions/dropbox-sync-actions.js b/src/actions/dropbox-sync-actions.js
index bba4db31a..b0791857a 100644
--- a/src/actions/dropbox-sync-actions.js
+++ b/src/actions/dropbox-sync-actions.js
@@ -21,9 +21,9 @@ import {
stopLoading,
startLoading,
showSuccessMessage,
- authErrorHandler
+ authErrorHandler,
+ snackbarErrorHandler
} from "openstack-uicore-foundation/lib/utils/actions";
-import { snackbarErrorHandler } from "./base-actions";
import { getAccessTokenSafely, range } from "../utils/methods";
import { MAX_PER_PAGE, TEN, TWO } from "../utils/constants";
diff --git a/src/components/forms/badge-form.js b/src/components/forms/badge-form.js
index ed30b9d7b..6b20cb0d5 100644
--- a/src/components/forms/badge-form.js
+++ b/src/components/forms/badge-form.js
@@ -16,13 +16,11 @@ import T from "i18n-react/dist/i18n-react";
import Swal from "sweetalert2";
import moment from "moment-timezone";
import "awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css";
-import {
- Dropdown,
- SimpleLinkList,
- Table,
- FreeTextSearch,
- DateTimePicker
-} from "openstack-uicore-foundation/lib/components";
+import Dropdown from "openstack-uicore-foundation/lib/components/inputs/dropdown";
+import SimpleLinkList from "openstack-uicore-foundation/lib/components/simple-link-list";
+import Table from "openstack-uicore-foundation/lib/components/table";
+import FreeTextSearch from "openstack-uicore-foundation/lib/components/free-text-search";
+import DateTimePicker from "openstack-uicore-foundation/lib/components/inputs/datetimepicker";
import { epochToMomentTimeZone } from "openstack-uicore-foundation/lib/utils/methods";
import { Pagination } from "react-bootstrap";
import { shallowEqual } from "../../utils/methods";
diff --git a/src/components/forms/badge-type-form.js b/src/components/forms/badge-type-form.js
index f8d7fe347..b92959229 100644
--- a/src/components/forms/badge-type-form.js
+++ b/src/components/forms/badge-type-form.js
@@ -14,10 +14,8 @@
import React from "react";
import T from "i18n-react/dist/i18n-react";
import "awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css";
-import {
- Input,
- SimpleLinkList
-} from "openstack-uicore-foundation/lib/components";
+import Input from "openstack-uicore-foundation/lib/components/inputs/text-input";
+import SimpleLinkList from "openstack-uicore-foundation/lib/components/simple-link-list";
import {
isEmpty,
scrollToError,
@@ -47,7 +45,7 @@ class BadgeTypeForm extends React.Component {
this.handleSubmit = this.handleSubmit.bind(this);
}
- componentDidUpdate(prevProps, prevState, snapshot) {
+ componentDidUpdate(prevProps) {
const state = {};
scrollToError(this.props.errors);
diff --git a/src/components/forms/event-category-group-form.js b/src/components/forms/event-category-group-form.js
index 3c0f9abfd..5195d60cb 100644
--- a/src/components/forms/event-category-group-form.js
+++ b/src/components/forms/event-category-group-form.js
@@ -19,12 +19,10 @@ import {
queryTracks,
queryGroups
} from "openstack-uicore-foundation/lib/utils/query-actions";
-import {
- Input,
- SimpleLinkList,
- Dropdown,
- DateTimePicker
-} from "openstack-uicore-foundation/lib/components";
+import Input from "openstack-uicore-foundation/lib/components/inputs/text-input";
+import SimpleLinkList from "openstack-uicore-foundation/lib/components/simple-link-list";
+import Dropdown from "openstack-uicore-foundation/lib/components/inputs/dropdown";
+import DateTimePicker from "openstack-uicore-foundation/lib/components/inputs/datetimepicker";
import TextEditorV3 from "openstack-uicore-foundation/lib/components/inputs/editor-input-v3";
import Swal from "sweetalert2";
import {
diff --git a/src/components/forms/event-comment-form.js b/src/components/forms/event-comment-form.js
index e7b5b6265..692bd0755 100644
--- a/src/components/forms/event-comment-form.js
+++ b/src/components/forms/event-comment-form.js
@@ -14,7 +14,7 @@
import React from "react";
import T from "i18n-react/dist/i18n-react";
import "awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css";
-import { Input } from "openstack-uicore-foundation/lib/components";
+import Input from "openstack-uicore-foundation/lib/components/inputs/text-input";
import {
isEmpty,
scrollToError,
diff --git a/src/components/forms/room-form.js b/src/components/forms/room-form.js
index 043e1766f..da5274eee 100644
--- a/src/components/forms/room-form.js
+++ b/src/components/forms/room-form.js
@@ -14,12 +14,10 @@
import React from "react";
import T from "i18n-react/dist/i18n-react";
import "awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css";
-import {
- Input,
- SimpleLinkList,
- Dropdown,
- UploadInput
-} from "openstack-uicore-foundation/lib/components";
+import Input from "openstack-uicore-foundation/lib/components/inputs/text-input";
+import SimpleLinkList from "openstack-uicore-foundation/lib/components/simple-link-list";
+import Dropdown from "openstack-uicore-foundation/lib/components/inputs/dropdown";
+import UploadInput from "openstack-uicore-foundation/lib/components/inputs/upload-input";
import TextEditorV3 from "openstack-uicore-foundation/lib/components/inputs/editor-input-v3";
import { isEmpty, scrollToError, shallowEqual } from "../../utils/methods";
import HourIntervalInput from "../inputs/date-interval-input";
diff --git a/src/components/forms/schedule-settings-form/index.js b/src/components/forms/schedule-settings-form/index.js
index dd30219d9..7fbc41a59 100644
--- a/src/components/forms/schedule-settings-form/index.js
+++ b/src/components/forms/schedule-settings-form/index.js
@@ -9,26 +9,18 @@
* 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.
- **/
+ * */
import React from "react";
import T from "i18n-react/dist/i18n-react";
import "awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css";
-import {
- Dropdown,
- Input,
- SimpleLinkList
-} from "openstack-uicore-foundation/lib/components";
-import {
- isEmpty,
- scrollToError,
- shallowEqual,
- hasErrors
-} from "../../../utils/methods";
+import Dropdown from "openstack-uicore-foundation/lib/components/inputs/dropdown";
+import Input from "openstack-uicore-foundation/lib/components/inputs/text-input";
import Switch from "react-switch";
+import SortableTable from "openstack-uicore-foundation/lib/components/table-sortable";
+import { isEmpty, scrollToError, shallowEqual } from "../../../utils/methods";
import EditLabelSlider from "../../inputs/edit-label-slider";
import PreFilterInput from "./pre-filter-input";
-import SortableTable from "openstack-uicore-foundation/lib/components/table-sortable";
class ScheduleSettingsForm extends React.Component {
constructor(props) {
@@ -40,7 +32,7 @@ class ScheduleSettingsForm extends React.Component {
};
}
- componentDidUpdate(prevProps, prevState, snapshot) {
+ componentDidUpdate(prevProps) {
const state = {};
scrollToError(this.props.errors);
@@ -70,11 +62,11 @@ class ScheduleSettingsForm extends React.Component {
errors[id] = "";
entity[id] = value;
- this.setState({ entity: entity, errors: errors });
+ this.setState({ entity, errors });
};
updateFilterOrder = (filters, filterId, newOrder) => {
- console.log(`updateFilterOrder`, filters, filterId, newOrder);
+ console.log("updateFilterOrder", filters, filterId, newOrder);
};
onSwitchChange = (id, val) => {
@@ -136,17 +128,15 @@ class ScheduleSettingsForm extends React.Component {
const columns = [
{
columnKey: "type",
- render: (filter) => {
- return (
-
- );
- }
+ render: (filter) => (
+
+ )
}
];
diff --git a/src/components/forms/tag-group-form.js b/src/components/forms/tag-group-form.js
index b3375e05c..a0a265b5a 100644
--- a/src/components/forms/tag-group-form.js
+++ b/src/components/forms/tag-group-form.js
@@ -9,16 +9,14 @@
* 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.
- **/
+ * */
import React from "react";
import T from "i18n-react/dist/i18n-react";
import "awesome-bootstrap-checkbox/awesome-bootstrap-checkbox.css";
import { queryTags } from "openstack-uicore-foundation/lib/utils/query-actions";
-import {
- Input,
- SimpleLinkList
-} from "openstack-uicore-foundation/lib/components";
+import Input from "openstack-uicore-foundation/lib/components/inputs/text-input";
+import SimpleLinkList from "openstack-uicore-foundation/lib/components/simple-link-list";
import { isEmpty, scrollToError, shallowEqual } from "../../utils/methods";
class TagGroupForm extends React.Component {
@@ -36,7 +34,7 @@ class TagGroupForm extends React.Component {
this.handleSubmit = this.handleSubmit.bind(this);
}
- componentDidUpdate(prevProps, prevState, snapshot) {
+ componentDidUpdate(prevProps) {
const state = {};
scrollToError(this.props.errors);
@@ -55,17 +53,17 @@ class TagGroupForm extends React.Component {
}
handleChange(ev) {
- let entity = { ...this.state.entity };
- let errors = { ...this.state.errors };
- let { value, id } = ev.target;
+ const entity = { ...this.state.entity };
+ const errors = { ...this.state.errors };
+ const { value, id } = ev.target;
errors[id] = "";
entity[id] = value;
- this.setState({ entity: entity, errors: errors });
+ this.setState({ entity, errors });
}
handleSubmit(ev) {
- let entity = { ...this.state.entity };
+ const entity = { ...this.state.entity };
ev.preventDefault();
@@ -73,7 +71,7 @@ class TagGroupForm extends React.Component {
}
hasErrors(field) {
- let { errors } = this.state;
+ const { errors } = this.state;
if (field in errors) {
return errors[field];
}
@@ -91,13 +89,12 @@ class TagGroupForm extends React.Component {
render() {
const { entity } = this.state;
- const { currentSummit } = this.props;
- let allowedTagsColumns = [
+ const allowedTagsColumns = [
{ columnKey: "tag", value: T.translate("edit_tag_group.tag") }
];
- let allowedTagsOptions = {
+ const allowedTagsOptions = {
title: T.translate("edit_tag_group.allowed_tags"),
sortCol: "tag",
valueKey: "id",
diff --git a/src/components/upload-dialog/index.js b/src/components/upload-dialog/index.js
index 75eb31cfe..a9dcd8ccf 100644
--- a/src/components/upload-dialog/index.js
+++ b/src/components/upload-dialog/index.js
@@ -23,7 +23,7 @@ import {
Typography
} from "@mui/material";
import PropTypes from "prop-types";
-import { UploadInputV3 } from "openstack-uicore-foundation/lib/components";
+import UploadInputV3 from "openstack-uicore-foundation/lib/components/inputs/upload-input-v3";
import T from "i18n-react/dist/i18n-react";
import CloseIcon from "@mui/icons-material/Close";
import NoteAddIcon from "@mui/icons-material/NoteAdd";
diff --git a/src/pages/companies/components/__tests__/company-dialog.test.js b/src/pages/companies/components/__tests__/company-dialog.test.js
index fb6eef49f..bb0077fed 100644
--- a/src/pages/companies/components/__tests__/company-dialog.test.js
+++ b/src/pages/companies/components/__tests__/company-dialog.test.js
@@ -23,25 +23,29 @@ jest.mock("openstack-uicore-foundation/lib/utils/query-actions", () => ({
})
}));
-jest.mock("openstack-uicore-foundation/lib/components", () => ({
- UploadInputV3: ({ id, onUploadComplete, onUploadStart, value }) => (
-
-
+ )
+ })
+);
jest.mock(
"openstack-uicore-foundation/lib/components/mui/formik-inputs/textfield",
diff --git a/src/pages/companies/components/company-dialog.js b/src/pages/companies/components/company-dialog.js
index cc332ee7d..7bbe62a97 100644
--- a/src/pages/companies/components/company-dialog.js
+++ b/src/pages/companies/components/company-dialog.js
@@ -33,7 +33,7 @@ import {
Typography
} from "@mui/material";
import CloseIcon from "@mui/icons-material/Close";
-import { UploadInputV3 } from "openstack-uicore-foundation/lib/components";
+import UploadInputV3 from "openstack-uicore-foundation/lib/components/inputs/upload-input-v3";
import { getCountryList } from "openstack-uicore-foundation/lib/utils/query-actions";
import Table from "openstack-uicore-foundation/lib/components/mui/table";
import MuiFormikTextField from "openstack-uicore-foundation/lib/components/mui/formik-inputs/textfield";
diff --git a/src/pages/sponsors-global/form-templates/sponsor-inventory-popup.js b/src/pages/sponsors-global/form-templates/sponsor-inventory-popup.js
index ed5e0640b..b067df348 100644
--- a/src/pages/sponsors-global/form-templates/sponsor-inventory-popup.js
+++ b/src/pages/sponsors-global/form-templates/sponsor-inventory-popup.js
@@ -19,7 +19,7 @@ import {
} from "@mui/material";
import CloseIcon from "@mui/icons-material/Close";
import AdditionalInputList from "openstack-uicore-foundation/lib/components/mui/formik-inputs/additional-input-list";
-import { MuiFormikUpload } from "openstack-uicore-foundation/lib/components";
+import MuiFormikUpload from "openstack-uicore-foundation/lib/components/mui/formik-inputs/upload";
import {
ALLOWED_INVENTORY_IMAGE_FORMATS,
MAX_INVENTORY_IMAGE_UPLOAD_SIZE,
diff --git a/src/pages/sponsors/sponsor-form-item-list-page/components/sponsor-form-item-form.js b/src/pages/sponsors/sponsor-form-item-list-page/components/sponsor-form-item-form.js
index 13c6edd2e..b8ed5a098 100644
--- a/src/pages/sponsors/sponsor-form-item-list-page/components/sponsor-form-item-form.js
+++ b/src/pages/sponsors/sponsor-form-item-list-page/components/sponsor-form-item-form.js
@@ -13,7 +13,7 @@ import {
import T from "i18n-react";
import * as yup from "yup";
import { FormikProvider, useFormik } from "formik";
-import { MuiFormikUpload } from "openstack-uicore-foundation/lib/components";
+import MuiFormikUpload from "openstack-uicore-foundation/lib/components/mui/formik-inputs/upload";
import AdditionalInputList from "openstack-uicore-foundation/lib/components/mui/formik-inputs/additional-input-list";
import {
addIssAfterDateFieldValidator,
diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/__tests__/client-form.test.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/__tests__/client-form.test.js
index 95f18bd65..35c1276b4 100644
--- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/__tests__/client-form.test.js
+++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/__tests__/client-form.test.js
@@ -9,21 +9,25 @@ jest.mock("i18n-react/dist/i18n-react", () => ({
default: { translate: (key) => key }
}));
-jest.mock("openstack-uicore-foundation/lib/components", () => {
- const React = require("react");
- const { useField } = require("formik");
- return {
- MuiFormikTextField: ({ name, label, ...props }) => {
- const [field] = useField(name);
- return React.createElement("input", {
- "aria-label": label,
- id: name,
- ...field,
- ...props
- });
- }
- };
-});
+jest.mock(
+ "openstack-uicore-foundation/lib/components/mui/formik-inputs/textfield",
+ () => {
+ const React = require("react");
+ const { useField } = require("formik");
+ return {
+ __esModule: true,
+ default: ({ name, label, ...props }) => {
+ const [field] = useField(name);
+ return React.createElement("input", {
+ "aria-label": label,
+ id: name,
+ ...field,
+ ...props
+ });
+ }
+ };
+ }
+);
describe("ClientForm", () => {
beforeEach(() => {
diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/index.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/index.js
index 4280f5926..f4f8c0d6f 100644
--- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/index.js
+++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/client-form/index.js
@@ -17,7 +17,7 @@ import T from "i18n-react/dist/i18n-react";
import { FormikProvider, useFormik } from "formik";
import * as yup from "yup";
import Box from "@mui/material/Box";
-import { MuiFormikTextField } from "openstack-uicore-foundation/lib/components";
+import MuiFormikTextField from "openstack-uicore-foundation/lib/components/mui/formik-inputs/textfield";
import { DEBOUNCE_WAIT_250 } from "../../../../../../../utils/constants";
const ClientForm = ({ initialValues, onChange }) => {
diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/__tests__/edit-cart-form.test.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/__tests__/edit-cart-form.test.js
index c220ede42..6482f2aee 100644
--- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/__tests__/edit-cart-form.test.js
+++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/__tests__/edit-cart-form.test.js
@@ -29,25 +29,28 @@ jest.mock("../../../../../../../../actions/sponsor-cart-actions", () => ({
}));
// Mock the uicore component bundle — prevents setTexts() crash on module init
-jest.mock("openstack-uicore-foundation/lib/components", () => {
- const React = require("react");
- return {
- __esModule: true,
- MuiFormItemTable: ({ data }) =>
- React.createElement(
- "div",
- null,
- (data || []).map((item) =>
- React.createElement(
- "div",
- { key: item.form_item_id },
- React.createElement("span", null, item.name)
+jest.mock(
+ "openstack-uicore-foundation/lib/components/mui/form-item-table",
+ () => {
+ const React = require("react");
+ return {
+ __esModule: true,
+ default: ({ data }) =>
+ React.createElement(
+ "div",
+ null,
+ (data || []).map((item) =>
+ React.createElement(
+ "div",
+ { key: item.form_item_id },
+ React.createElement("span", null, item.name)
+ )
)
- )
- ),
- getCurrentApplicableRate: () => "standard"
- };
-});
+ ),
+ getCurrentApplicableRate: () => "standard"
+ };
+ }
+);
// Mock sub-components used directly by index.js
jest.mock("openstack-uicore-foundation/lib/components/mui/notes-modal", () => {
diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/index.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/index.js
index 334571027..092d71263 100644
--- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/index.js
+++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/edit-form/index.js
@@ -20,10 +20,9 @@ import { Button, Typography } from "@mui/material";
import Box from "@mui/material/Box";
import moment from "moment-timezone";
import { epochToMomentTimeZone } from "openstack-uicore-foundation/lib/utils/methods";
-import {
- MuiFormItemTable,
+import MuiFormItemTable, {
getCurrentApplicableRate
-} from "openstack-uicore-foundation/lib/components";
+} from "openstack-uicore-foundation/lib/components/mui/form-item-table";
import { DISCOUNT_TYPES } from "../../../../../../../utils/constants";
import showConfirmDialog from "../../../../../../../components/mui/showConfirmDialog";
diff --git a/yarn.lock b/yarn.lock
index 6b20d86b7..0f12c7811 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -9068,10 +9068,10 @@ open@^10.0.3:
is-inside-container "^1.0.0"
wsl-utils "^0.1.0"
-openstack-uicore-foundation@5.0.40:
- version "5.0.40"
- resolved "https://registry.npmjs.org/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.40.tgz#bdef7be6e35a6e29160846c47901eb4fb7c58d42"
- integrity sha512-hgLmZprm9VA0aAVEuXttopK+RhmHOR6XnUmDu2lZpy1XK5SKrwRtnPAHK0zzG4dbVSeoodMneCdIj0l/2h4XzA==
+openstack-uicore-foundation@5.0.43:
+ version "5.0.43"
+ resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.43.tgz#a0f870bd2d1dd7a97a1b6e78009b5248ca27baab"
+ integrity sha512-UBIENc7nEhhKEsmaGRKdEIziNhnGypy5bf9ydssEgFB/Fe6Q6gH07x1U8m5s1nXYV9OCneMvLTBH98tprUXlOg==
dependencies:
use-sync-external-store "^1.6.0"