diff --git a/package.json b/package.json
index 29da4621..6c0cb87e 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "openstack-uicore-foundation",
- "version": "5.0.44",
+ "version": "5.0.48-beta.0",
"description": "ui reactjs components for openstack marketing site",
"main": "lib/openstack-uicore-foundation.js",
"scripts": {
diff --git a/src/components/index.js b/src/components/index.js
index b77daffd..ec9e08ce 100644
--- a/src/components/index.js
+++ b/src/components/index.js
@@ -68,7 +68,7 @@ export {default as MuiMenuButton} from './mui/menu-button'
export {default as MuiSearchInput} from './mui/search-input'
export {default as MuiShowConfirmDialog} from './mui/showConfirmDialog'
export {default as MuiSponsorAddonSelect} from './mui/sponsor-addon-select'
-export {default as MuiSummitAddonSelect} from './mui/summit-addon-select'
+export {default as AddonTypeSelect} from './mui/addon-type-select'
export {default as MuiSummitsDropdown} from './mui/summits-dropdown'
export {default as MuiFormItemTable, getCurrentApplicableRate, isItemAvailable, GlobalQuantityField, ItemTableField, UnderlyingAlertNote, ExpandedRowContent} from './mui/FormItemTable'
export {default as MuiItemSettingsModal} from './mui/ItemSettingsModal'
@@ -96,7 +96,7 @@ export {default as MuiFormikRadioGroup} from './mui/formik-inputs/mui-formik-rad
export {default as MuiFormikSelectGroup} from './mui/formik-inputs/mui-formik-select-group'
export {default as MuiFormikSelect} from './mui/formik-inputs/mui-formik-select'
export {default as MuiFormikSelectV2} from './mui/formik-inputs/mui-formik-select-v2'
-export {default as MuiFormikSummitAddonSelect} from './mui/formik-inputs/mui-formik-summit-addon-select'
+export {default as MuiFormikAddonTypeSelect} from './mui/formik-inputs/mui-formik-addon-type-select'
export {default as MuiFormikSwitch} from './mui/formik-inputs/mui-formik-switch'
export {default as MuiFormikTextField} from './mui/formik-inputs/mui-formik-textfield'
export {default as MuiFormikTextEditor} from './mui/formik-inputs/mui-formik-text-editor'
diff --git a/src/components/mui/__tests__/summit-addon-select.test.js b/src/components/mui/__tests__/addon-type-select.test.js
similarity index 82%
rename from src/components/mui/__tests__/summit-addon-select.test.js
rename to src/components/mui/__tests__/addon-type-select.test.js
index fa1a415e..4927f2cd 100644
--- a/src/components/mui/__tests__/summit-addon-select.test.js
+++ b/src/components/mui/__tests__/addon-type-select.test.js
@@ -13,16 +13,19 @@
jest.mock("../../../utils/query-actions", () => ({
querySummitAddons: jest.fn((summitId, callback) => {
- callback(["Addon Alpha", "Addon Beta"]);
+ callback([
+ { id: 1, name: "Addon Alpha" },
+ { id: 2, name: "Addon Beta" }
+ ]);
})
}));
import React from "react";
import { render, screen, waitFor } from "@testing-library/react";
import "@testing-library/jest-dom";
-import SummitAddonSelect from "../summit-addon-select";
+import AddonTypeSelect from "../addon-type-select";
-describe("SummitAddonSelect", () => {
+describe("AddonTypeSelect", () => {
const defaultProps = {
value: "",
summitId: 5,
@@ -33,12 +36,12 @@ describe("SummitAddonSelect", () => {
beforeEach(() => jest.clearAllMocks());
test("renders a select combobox", () => {
- const { container } = render();
+ const { container } = render();
expect(container.querySelector("[role='combobox']")).toBeInTheDocument();
});
test("calls querySummitAddons on mount with summitId", async () => {
- render();
+ render();
await waitFor(() => {
expect(
require("../../../utils/query-actions").querySummitAddons
@@ -47,7 +50,7 @@ describe("SummitAddonSelect", () => {
});
test("renders options returned by querySummitAddons", async () => {
- render();
+ render();
// Options are rendered inside the Select's listbox - click to open
// Just verify the component renders without errors after options load
await waitFor(() => {
diff --git a/src/components/mui/__tests__/mui-formik-summit-addon-select.test.js b/src/components/mui/__tests__/mui-formik-addon-type-select.test.js
similarity index 73%
rename from src/components/mui/__tests__/mui-formik-summit-addon-select.test.js
rename to src/components/mui/__tests__/mui-formik-addon-type-select.test.js
index d610fc4c..4c63f73f 100644
--- a/src/components/mui/__tests__/mui-formik-summit-addon-select.test.js
+++ b/src/components/mui/__tests__/mui-formik-addon-type-select.test.js
@@ -11,13 +11,13 @@
* limitations under the License.
* */
-jest.mock("../summit-addon-select", () => {
+jest.mock("../addon-type-select", () => {
const React = require("react");
return {
__esModule: true,
default: ({ value, placeholder, inputProps }) => (
render(
);
-describe("MuiFormikSummitAddonSelect", () => {
- test("renders the SummitAddonSelect", () => {
+describe("MuiFormikAddonTypeSelect", () => {
+ test("renders the AddonTypeSelect", () => {
renderWithFormik({});
- expect(screen.getByTestId("summit-addon-select")).toBeInTheDocument();
+ expect(screen.getByTestId("addon-type-select")).toBeInTheDocument();
});
- test("passes placeholder to SummitAddonSelect", () => {
+ test("passes placeholder to AddonTypeSelect", () => {
renderWithFormik({ placeholder: "Choose addon" });
expect(screen.getByText("Choose addon")).toBeInTheDocument();
});
@@ -63,11 +63,11 @@ describe("MuiFormikSummitAddonSelect", () => {
onSubmit={jest.fn()}
>
);
- expect(screen.getByTestId("summit-addon-select")).toHaveAttribute(
+ expect(screen.getByTestId("addon-type-select")).toHaveAttribute(
"data-error",
"true"
);
@@ -75,7 +75,7 @@ describe("MuiFormikSummitAddonSelect", () => {
test("passes false error when not touched", () => {
renderWithFormik({});
- expect(screen.getByTestId("summit-addon-select")).toHaveAttribute(
+ expect(screen.getByTestId("addon-type-select")).toHaveAttribute(
"data-error",
"false"
);
diff --git a/src/components/mui/summit-addon-select.js b/src/components/mui/addon-type-select.js
similarity index 93%
rename from src/components/mui/summit-addon-select.js
rename to src/components/mui/addon-type-select.js
index 92927685..f0ae4212 100644
--- a/src/components/mui/summit-addon-select.js
+++ b/src/components/mui/addon-type-select.js
@@ -16,7 +16,7 @@ import { MenuItem, Select } from "@mui/material";
import PropTypes from "prop-types";
import { querySummitAddons } from "../../utils/query-actions";
-const SummitAddonSelect = ({
+const AddonTypeSelect = ({
value,
summitId,
placeholder = "Select...",
@@ -28,8 +28,8 @@ const SummitAddonSelect = ({
useEffect(() => {
querySummitAddons(summitId, (results) => {
const normalized = results.map((r) => ({
- value: r,
- label: r
+ value: r.name,
+ label: r.name
}));
setOptions(normalized);
});
@@ -64,11 +64,11 @@ const SummitAddonSelect = ({
);
};
-SummitAddonSelect.propTypes = {
+AddonTypeSelect.propTypes = {
value: PropTypes.string,
summitId: PropTypes.number.isRequired,
placeholder: PropTypes.string,
onChange: PropTypes.func.isRequired
};
-export default SummitAddonSelect;
+export default AddonTypeSelect;
diff --git a/src/components/mui/formik-inputs/mui-formik-summit-addon-select.js b/src/components/mui/formik-inputs/mui-formik-addon-type-select.js
similarity index 86%
rename from src/components/mui/formik-inputs/mui-formik-summit-addon-select.js
rename to src/components/mui/formik-inputs/mui-formik-addon-type-select.js
index 2216d9f8..965a7fad 100644
--- a/src/components/mui/formik-inputs/mui-formik-summit-addon-select.js
+++ b/src/components/mui/formik-inputs/mui-formik-addon-type-select.js
@@ -14,9 +14,9 @@
import React from "react";
import PropTypes from "prop-types";
import { useField } from "formik";
-import SummitAddonSelect from "../summit-addon-select";
+import AddonTypeSelect from "../addon-type-select";
-const MuiFormikSummitAddonSelect = ({
+const MuiFormikAddonTypeSelect = ({
name,
summitId,
placeholder = "Select...",
@@ -25,7 +25,7 @@ const MuiFormikSummitAddonSelect = ({
const [field, meta, helpers] = useField(name);
return (
- {
const endpoint = URI(
- `/api/v1/summits/${summitId}/add-ons/metadata`
+ `/api/v1/summits/all/add-on-types`
);
endpoint.addQuery("page", 1);
endpoint.addQuery("per_page", MAX_PER_PAGE);
diff --git a/webpack.common.js b/webpack.common.js
index b735486f..cd96e737 100644
--- a/webpack.common.js
+++ b/webpack.common.js
@@ -97,7 +97,7 @@ module.exports = {
'components/mui/search-input': './src/components/mui/search-input.js',
'components/mui/show-confirm-dialog': './src/components/mui/showConfirmDialog.js',
'components/mui/sponsor-addon-select': './src/components/mui/sponsor-addon-select.js',
- 'components/mui/summit-addon-select': './src/components/mui/summit-addon-select.js',
+ 'components/mui/addon-type-select': './src/components/mui/addon-type-select.js',
'components/mui/summits-dropdown': './src/components/mui/summits-dropdown.js',
'components/mui/form-item-table': './src/components/mui/FormItemTable/index.js',
'components/mui/item-settings-modal': './src/components/mui/ItemSettingsModal/index.js',
@@ -126,7 +126,7 @@ module.exports = {
'components/mui/formik-inputs/select-group': './src/components/mui/formik-inputs/mui-formik-select-group.js',
'components/mui/formik-inputs/select': './src/components/mui/formik-inputs/mui-formik-select.js',
'components/mui/formik-inputs/select-v2': './src/components/mui/formik-inputs/mui-formik-select-v2.js',
- 'components/mui/formik-inputs/summit-addon-select': './src/components/mui/formik-inputs/mui-formik-summit-addon-select.js',
+ 'components/mui/formik-inputs/addon-type-select': './src/components/mui/formik-inputs/mui-formik-addon-type-select.js',
'components/mui/formik-inputs/switch': './src/components/mui/formik-inputs/mui-formik-switch.js',
'components/mui/formik-inputs/textfield': './src/components/mui/formik-inputs/mui-formik-textfield.js',
'components/mui/formik-inputs/texteditor': './src/components/mui/formik-inputs/mui-formik-text-editor.js',