From ebe79f582d1019a719c83002e2a0e0c44f5a1148 Mon Sep 17 00:00:00 2001 From: Santiago Palenque Date: Tue, 2 Jun 2026 12:39:48 -0300 Subject: [PATCH 1/5] chore: adjustments for new grid --- src/actions/sponsor-purchases-actions.js | 14 +++++++-- src/i18n/en.json | 4 +-- .../sponsor-cart-tab/components/cart-view.js | 8 ++--- .../components/payment-view.js | 1 - .../sponsor-order-details.js | 12 ++------ src/pages/sponsors/sponsor-page/utils.js | 29 +++++++------------ 6 files changed, 29 insertions(+), 39 deletions(-) diff --git a/src/actions/sponsor-purchases-actions.js b/src/actions/sponsor-purchases-actions.js index 6d21e082f..5b799abdd 100644 --- a/src/actions/sponsor-purchases-actions.js +++ b/src/actions/sponsor-purchases-actions.js @@ -395,7 +395,7 @@ export const updateClientInfo = }; export const cancelSponsorForm = - (orderId, lineId) => async (dispatch, getState) => { + (orderId, lineId, lineName) => async (dispatch, getState) => { const { currentSummitState, currentSponsorState } = getState(); const { currentSummit } = currentSummitState; const { entity: sponsor } = currentSponsorState; @@ -414,7 +414,17 @@ export const cancelSponsorForm = null, snackbarErrorHandler )(params)(dispatch) - .then(() => dispatch(getSponsorOrder(orderId))) + .then(() => { + dispatch(getSponsorOrder(orderId)); + dispatch( + snackbarSuccessHandler({ + html: T.translate( + "edit_sponsor.purchase_tab.order_details.line_cancelled", + { lineName } + ) + }) + ); + }) .catch(console.log) // need to catch promise reject .finally(() => { dispatch(stopLoading()); diff --git a/src/i18n/en.json b/src/i18n/en.json index aa449c7bc..1ea40d141 100644 --- a/src/i18n/en.json +++ b/src/i18n/en.json @@ -2654,10 +2654,10 @@ "general_info": "General Info", "payment_info": "Payment Info", "issue_refund": "Issue a Refund", - "info_note": "Active order items can be canceled. Canceled items show an undo action to restore them. Refund and payment rows are display-only.", "address_updated": "Address updated successfully", "client_updated": "Client info updated successfully", - "order_refunded": "Refund issued successfully." + "order_refunded": "Refund issued successfully.", + "line_cancelled": "{lineName} was cancelled. This item has been voided and removed from the balance. Use the undo action to restore it." } }, "mu_tab": { diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js index 1257df9c5..b7934a3a8 100644 --- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js +++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/cart-view.js @@ -170,6 +170,7 @@ const CartView = ({ }, { columnKey: "amount", + align: "right", header: T.translate("edit_sponsor.cart_tab.amount") }, { @@ -244,12 +245,7 @@ const CartView = ({ } confirmButtonColor="error" > - + diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js index dfbfed236..e41fb1049 100644 --- a/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js +++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js @@ -17,7 +17,6 @@ import T from "i18n-react/dist/i18n-react"; import { Box, Card, CardContent, Grid2, Typography } from "@mui/material"; import { ListCard } from "openstack-uicore-foundation/lib/components/mui/cards"; import SponsorOrderGrid from "openstack-uicore-foundation/lib/components/mui/sponsor-order-grid"; -import InfoNote from "openstack-uicore-foundation/lib/components/mui/info-note"; import { cancelSponsorForm, getSponsorOrder, @@ -122,7 +121,7 @@ const SponsorOrderDetails = ({ }; const handleCancelForm = (item) => { - cancelSponsorForm(currentOrder.id, item.id); + cancelSponsorForm(currentOrder.id, item.id, item.name); }; const handleUndoCancelForm = (item) => { @@ -170,20 +169,13 @@ const SponsorOrderDetails = ({ variant="outlined" > - diff --git a/src/pages/sponsors/sponsor-page/utils.js b/src/pages/sponsors/sponsor-page/utils.js index fabf207d4..da2f265ba 100644 --- a/src/pages/sponsors/sponsor-page/utils.js +++ b/src/pages/sponsors/sponsor-page/utils.js @@ -3,21 +3,14 @@ import { formatDiscount } from "openstack-uicore-foundation/lib/utils/money"; -export const normalizeOrder = (data) => { - const amountDueSign = data?.amount_due < 0 ? "-" : ""; - const amountDueStr = currencyAmountFromCents(Math.abs(data.amount_due || 0)); // currencyAmountFromCents doesn't allow negatives - const amountDue = `${amountDueSign}${amountDueStr}`; - - return { - ...data, - total: currencyAmountFromCents(data.net_amount || 0), - amount_due: data.amount_due === 0 ? "$0.00" : amountDue, - forms: data.forms.map((form) => ({ - ...form, - addon_name: form.add_on?.name || "", - discount: formatDiscount(form.discount_amount, form.discount_type), - discount_total: form.discount_in_cents || 0, - amount: currencyAmountFromCents(form.net_amount || 0) - })) - }; -}; +export const normalizeOrder = (data) => ({ + ...data, + total: data.net_amount || data.amount_due || 0, + forms: data.forms.map((form) => ({ + ...form, + addon_name: form.add_on?.name || "", + discount: formatDiscount(form.discount_amount, form.discount_type), + discount_total: form.discount_in_cents || 0, + amount: currencyAmountFromCents(form.net_amount || 0) + })) +}); From 8ba609424ee3945e0bee2e2e5b3563f85de8f095 Mon Sep 17 00:00:00 2001 From: Santiago Palenque Date: Wed, 3 Jun 2026 17:44:54 -0300 Subject: [PATCH 2/5] chore: new grid version --- .../tabs/sponsor-cart-tab/components/payment-view.js | 7 +------ .../tabs/sponsor-purchases-tab/sponsor-order-details.js | 9 +++------ 2 files changed, 4 insertions(+), 12 deletions(-) diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/payment-view.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/payment-view.js index 12979c5b7..5f91435c9 100644 --- a/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/payment-view.js +++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-cart-tab/components/payment-view.js @@ -75,12 +75,7 @@ const PaymentView = ({ - + diff --git a/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js b/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js index e41fb1049..97dbc1e9f 100644 --- a/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js +++ b/src/pages/sponsors/sponsor-page/tabs/sponsor-purchases-tab/sponsor-order-details.js @@ -170,12 +170,9 @@ const SponsorOrderDetails = ({ > From e386807dd1cec799df9f5700df542dd8a1c093d1 Mon Sep 17 00:00:00 2001 From: Santiago Palenque Date: Thu, 4 Jun 2026 12:43:30 -0300 Subject: [PATCH 3/5] chore: update uicore version --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 8712ef186..871ed9278 100644 --- a/package.json +++ b/package.json @@ -92,7 +92,7 @@ "moment": "^2.29.1", "moment-duration-format": "^2.3.2", "moment-timezone": "^0.5.33", - "openstack-uicore-foundation": "5.0.32", + "openstack-uicore-foundation": "5.0.33-beta.0", "p-limit": "^6.1.0", "path-browserify": "^1.0.1", "postcss-loader": "^6.2.1", diff --git a/yarn.lock b/yarn.lock index f50d24946..08490c328 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9056,10 +9056,10 @@ open@^10.0.3: is-inside-container "^1.0.0" wsl-utils "^0.1.0" -openstack-uicore-foundation@5.0.32: - version "5.0.32" - resolved "https://registry.npmjs.org/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.32.tgz#856623f5d7b3021f7fa08550a3c0a7f656bd3011" - integrity sha512-jQCs/F2+74bOGgj/0mT8W6h0DfT6kbgkbwau6ZFOi5lDBjrCkKTOJosnCyonj3R4TEvtx4A6x1nmwP6Z7Mc+dQ== +openstack-uicore-foundation@5.0.33-beta.0: + version "5.0.33-beta.0" + resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.33-beta.0.tgz#37fc59711db9725494ba8d72dd39a4d42b68a15b" + integrity sha512-youGpTLTboy0jajVM4yvPF6inpVx63TpNjLCzIMoh499JlYwLmv8G/SRys0UJRbx+9+c2yF5QC3/miIIgPxagQ== dependencies: use-sync-external-store "^1.6.0" From 47316e3a26005591c7ab29e9ad9a8d0fd42535cb Mon Sep 17 00:00:00 2001 From: Santiago Palenque Date: Fri, 5 Jun 2026 14:55:52 -0300 Subject: [PATCH 4/5] chore: new uicore version --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 871ed9278..9b1a46960 100644 --- a/package.json +++ b/package.json @@ -92,7 +92,7 @@ "moment": "^2.29.1", "moment-duration-format": "^2.3.2", "moment-timezone": "^0.5.33", - "openstack-uicore-foundation": "5.0.33-beta.0", + "openstack-uicore-foundation": "5.0.33-beta.2", "p-limit": "^6.1.0", "path-browserify": "^1.0.1", "postcss-loader": "^6.2.1", diff --git a/yarn.lock b/yarn.lock index 08490c328..79b6fd9af 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9056,10 +9056,10 @@ open@^10.0.3: is-inside-container "^1.0.0" wsl-utils "^0.1.0" -openstack-uicore-foundation@5.0.33-beta.0: - version "5.0.33-beta.0" - resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.33-beta.0.tgz#37fc59711db9725494ba8d72dd39a4d42b68a15b" - integrity sha512-youGpTLTboy0jajVM4yvPF6inpVx63TpNjLCzIMoh499JlYwLmv8G/SRys0UJRbx+9+c2yF5QC3/miIIgPxagQ== +openstack-uicore-foundation@5.0.33-beta.2: + version "5.0.33-beta.2" + resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.33-beta.2.tgz#9a9c4b85dce7f1517df74121dab6cd88324d685e" + integrity sha512-rlzo61gAKFZD7+Ey9Z12aTPIZRGelfh1dwZhfc6bZFmQR2JlQGsskjFSSjljXe92D0Vzq3/1tLi9lCyQqAJJwg== dependencies: use-sync-external-store "^1.6.0" From e54b8075e0d7659c1437b8f06c85a292d8cb5366 Mon Sep 17 00:00:00 2001 From: Santiago Palenque Date: Fri, 5 Jun 2026 15:12:52 -0300 Subject: [PATCH 5/5] chore: upgrade uicore version --- package.json | 2 +- yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package.json b/package.json index 9b1a46960..e6a7ddf04 100644 --- a/package.json +++ b/package.json @@ -92,7 +92,7 @@ "moment": "^2.29.1", "moment-duration-format": "^2.3.2", "moment-timezone": "^0.5.33", - "openstack-uicore-foundation": "5.0.33-beta.2", + "openstack-uicore-foundation": "5.0.33-beta.3", "p-limit": "^6.1.0", "path-browserify": "^1.0.1", "postcss-loader": "^6.2.1", diff --git a/yarn.lock b/yarn.lock index 79b6fd9af..812dcb6a7 100644 --- a/yarn.lock +++ b/yarn.lock @@ -9056,10 +9056,10 @@ open@^10.0.3: is-inside-container "^1.0.0" wsl-utils "^0.1.0" -openstack-uicore-foundation@5.0.33-beta.2: - version "5.0.33-beta.2" - resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.33-beta.2.tgz#9a9c4b85dce7f1517df74121dab6cd88324d685e" - integrity sha512-rlzo61gAKFZD7+Ey9Z12aTPIZRGelfh1dwZhfc6bZFmQR2JlQGsskjFSSjljXe92D0Vzq3/1tLi9lCyQqAJJwg== +openstack-uicore-foundation@5.0.33-beta.3: + version "5.0.33-beta.3" + resolved "https://registry.yarnpkg.com/openstack-uicore-foundation/-/openstack-uicore-foundation-5.0.33-beta.3.tgz#1a9136913632aa9da28e9620ca680b18e45bad0c" + integrity sha512-OJJAkfsZNH377IeKB/EHxp1c6gyQpTMiIt+UEhLhqj/qpfDMiQflozWLr0kYAhfwlHDdqn7nnZbmidugIwJJPg== dependencies: use-sync-external-store "^1.6.0"