diff --git a/packages/admin-next/admin-shared/src/extensions/widgets/constants.ts b/packages/admin-next/admin-shared/src/extensions/widgets/constants.ts index 8be91408da..bb63ab9304 100644 --- a/packages/admin-next/admin-shared/src/extensions/widgets/constants.ts +++ b/packages/admin-next/admin-shared/src/extensions/widgets/constants.ts @@ -85,6 +85,29 @@ const GIFT_CARD_INJECTION_ZONES = [ "custom_gift_card.after", ] as const +const REGION_INJECTION_ZONES = [ + "region.details.before", + "region.details.after", + "region.list.before", + "region.list.after", +] as const + +const SHIPPING_PROFILE_INJECTION_ZONES = [ + "shipping_profile.details.before", + "shipping_profile.details.after", + "shipping_profile.list.before", + "shipping_profile.list.after", +] as const + +const LOCATION_INJECTION_ZONES = [ + "location.details.before", + "location.details.after", + "location.details.side.before", + "location.details.side.after", + "location.list.before", + "location.list.after", +] as const + const LOGIN_INJECTION_ZONES = ["login.before", "login.after"] as const /** @@ -103,5 +126,8 @@ export const INJECTION_ZONES = [ ...DISCOUNT_INJECTION_ZONES, ...PROMOTION_INJECTION_ZONES, ...GIFT_CARD_INJECTION_ZONES, + ...REGION_INJECTION_ZONES, + ...SHIPPING_PROFILE_INJECTION_ZONES, + ...LOCATION_INJECTION_ZONES, ...LOGIN_INJECTION_ZONES, ] as const diff --git a/packages/admin-next/dashboard/src/components/layout/settings-layout/settings-layout.tsx b/packages/admin-next/dashboard/src/components/layout/settings-layout/settings-layout.tsx index 56c173be5e..96dd233585 100644 --- a/packages/admin-next/dashboard/src/components/layout/settings-layout/settings-layout.tsx +++ b/packages/admin-next/dashboard/src/components/layout/settings-layout/settings-layout.tsx @@ -54,8 +54,8 @@ const useSettingRoutes = (): NavItemProps[] => { to: "/settings/shipping-profiles", }, { - label: t("shipping.domain"), - to: "/settings/shipping", + label: t("location.domain"), + to: "/settings/locations", }, ], [t] diff --git a/packages/admin-next/dashboard/src/i18n/translations/en.json b/packages/admin-next/dashboard/src/i18n/translations/en.json index 73ee70b077..37bec18794 100644 --- a/packages/admin-next/dashboard/src/i18n/translations/en.json +++ b/packages/admin-next/dashboard/src/i18n/translations/en.json @@ -675,8 +675,8 @@ "invalidEmail": "Email must be a valid email address." } }, - "shipping": { - "title": "Location & Shipping", + "location": { + "title": "Locations & Shipping", "domain": "Location & Shipping", "description": "Choose where you ship and how much you charge for shipping at checkout. Define shipping options specific for your locations.", "createLocation": "Create location", diff --git a/packages/admin-next/dashboard/src/providers/router-provider/route-map.tsx b/packages/admin-next/dashboard/src/providers/router-provider/route-map.tsx index e853462e99..6222a6d529 100644 --- a/packages/admin-next/dashboard/src/providers/router-provider/route-map.tsx +++ b/packages/admin-next/dashboard/src/providers/router-provider/route-map.tsx @@ -682,33 +682,33 @@ export const RouteMap: RouteObject[] = [ ], }, { - path: "shipping", + path: "locations", element: , handle: { - crumb: () => "Location & Shipping", + crumb: () => "Locations & Shipping", }, children: [ { path: "", - lazy: () => import("../../routes/shipping/location-list"), + lazy: () => import("../../routes/locations/location-list"), }, { path: "create", - lazy: () => import("../../routes/shipping/location-create"), + lazy: () => import("../../routes/locations/location-create"), }, { path: ":location_id", - lazy: () => import("../../routes/shipping/location-details"), + lazy: () => import("../../routes/locations/location-details"), children: [ { path: "edit", - lazy: () => import("../../routes/shipping/location-edit"), + lazy: () => import("../../routes/locations/location-edit"), }, { path: "sales-channels/edit", lazy: () => import( - "../../routes/shipping/location-add-sales-channels" + "../../routes/locations/location-add-sales-channels" ), }, { @@ -717,7 +717,7 @@ export const RouteMap: RouteObject[] = [ { path: "service-zones/create", lazy: () => - import("../../routes/shipping/service-zone-create"), + import("../../routes/locations/service-zone-create"), }, { path: "service-zone/:zone_id", @@ -725,13 +725,15 @@ export const RouteMap: RouteObject[] = [ { path: "edit", lazy: () => - import("../../routes/shipping/service-zone-edit"), + import( + "../../routes/locations/service-zone-edit" + ), }, { path: "edit-areas", lazy: () => import( - "../../routes/shipping/service-zone-areas-edit" + "../../routes/locations/service-zone-areas-edit" ), }, { @@ -741,7 +743,7 @@ export const RouteMap: RouteObject[] = [ path: "create", lazy: () => import( - "../../routes/shipping/shipping-options-create" + "../../routes/locations/shipping-options-create" ), }, { @@ -751,14 +753,14 @@ export const RouteMap: RouteObject[] = [ path: "edit", lazy: () => import( - "../../routes/shipping/shipping-option-edit" + "../../routes/locations/shipping-option-edit" ), }, { path: "edit-pricing", lazy: () => import( - "../../routes/shipping/shipping-options-edit-pricing" + "../../routes/locations/shipping-options-edit-pricing" ), }, ], diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/components/edit-sales-channels-form/edit-sales-channels-form.tsx b/packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/components/edit-sales-channels-form/edit-sales-channels-form.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/components/edit-sales-channels-form/edit-sales-channels-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/components/edit-sales-channels-form/edit-sales-channels-form.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/components/edit-sales-channels-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/components/edit-sales-channels-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/components/edit-sales-channels-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/components/edit-sales-channels-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/location-add-sales-channels.tsx b/packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/location-add-sales-channels.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-add-sales-channels/location-add-sales-channels.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-add-sales-channels/location-add-sales-channels.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-create/components/create-location-form/create-location-form.tsx b/packages/admin-next/dashboard/src/routes/locations/location-create/components/create-location-form/create-location-form.tsx similarity index 98% rename from packages/admin-next/dashboard/src/routes/shipping/location-create/components/create-location-form/create-location-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-create/components/create-location-form/create-location-form.tsx index 2883450738..97622f42f1 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/location-create/components/create-location-form/create-location-form.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/location-create/components/create-location-form/create-location-form.tsx @@ -55,7 +55,7 @@ export const CreateLocationForm = () => { address: values.address, }) - handleSuccess("/settings/shipping") + handleSuccess("/settings/locations") toast.success(t("general.success"), { description: t("locations.toast.create"), @@ -92,10 +92,10 @@ export const CreateLocationForm = () => {
- {t("shipping.createLocation")} + {t("location.createLocation")} - {t("shipping.createLocationDetailsHint")} + {t("location.createLocationDetailsHint")}
diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-create/components/create-location-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-create/components/create-location-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-create/components/create-location-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-create/components/create-location-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-create/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-create/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-create/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-create/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-create/location-create.tsx b/packages/admin-next/dashboard/src/routes/locations/location-create/location-create.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-create/location-create.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-create/location-create.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-general-section/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-details/components/location-general-section/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-general-section/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-details/components/location-general-section/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-general-section/location-general-section.tsx b/packages/admin-next/dashboard/src/routes/locations/location-details/components/location-general-section/location-general-section.tsx similarity index 86% rename from packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-general-section/location-general-section.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-details/components/location-general-section/location-general-section.tsx index cf9a0223ca..8913b3c755 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-general-section/location-general-section.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/location-details/components/location-general-section/location-general-section.tsx @@ -1,12 +1,3 @@ -import { useNavigate } from "react-router-dom" -import { useTranslation } from "react-i18next" -import { useMemo, useState } from "react" -import { - FulfillmentSetDTO, - ServiceZoneDTO, - ShippingOptionDTO, - StockLocationDTO, -} from "@medusajs/types" import { ChevronDownMini, CurrencyDollar, @@ -15,6 +6,12 @@ import { Plus, Trash, } from "@medusajs/icons" +import { + FulfillmentSetDTO, + ServiceZoneDTO, + ShippingOptionDTO, + StockLocationDTO, +} from "@medusajs/types" import { Badge, Button, @@ -25,19 +22,22 @@ import { toast, usePrompt, } from "@medusajs/ui" +import { useMemo, useState } from "react" +import { useTranslation } from "react-i18next" +import { useNavigate } from "react-router-dom" import { ActionMenu } from "../../../../../components/common/action-menu" -import { countries as staticCountries } from "../../../../../lib/countries" +import { NoRecords } from "../../../../../components/common/empty-table-content" +import { ListSummary } from "../../../../../components/common/list-summary" +import { useDeleteShippingOption } from "../../../../../hooks/api/shipping-options" import { useCreateFulfillmentSet, useDeleteFulfillmentSet, useDeleteServiceZone, useDeleteStockLocation, } from "../../../../../hooks/api/stock-locations" -import { useDeleteShippingOption } from "../../../../../hooks/api/shipping-options" +import { countries as staticCountries } from "../../../../../lib/countries" import { formatProvider } from "../../../../../lib/format-provider" -import { NoRecords } from "../../../../../components/common/empty-table-content" -import { ListSummary } from "../../../../../components/common/list-summary" import { isOptionEnabledInStore, isReturnOption, @@ -103,7 +103,7 @@ function ShippingOption({ const handleDelete = async () => { const res = await prompt({ title: t("general.areYouSure"), - description: t("shipping.shippingOptions.deleteWarning", { + description: t("location.shippingOptions.deleteWarning", { name: option.name, }), confirmText: t("actions.delete"), @@ -118,7 +118,7 @@ function ShippingOption({ await deleteOption() toast.success(t("general.success"), { - description: t("shipping.shippingOptions.toast.delete", { + description: t("location.shippingOptions.toast.delete", { name: option.name, }), dismissLabel: t("actions.close"), @@ -141,7 +141,7 @@ function ShippingOption({
{isInStore && ( - {t("shipping.shippingOptions.inStore")} + {t("location.shippingOptions.inStore")} )} , - label: t("shipping.serviceZone.editOption"), - to: `/settings/shipping/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${option.service_zone_id}/shipping-option/${option.id}/edit`, + label: t("location.serviceZone.editOption"), + to: `/settings/locations/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${option.service_zone_id}/shipping-option/${option.id}/edit`, }, { - label: t("shipping.serviceZone.editPrices"), + label: t("location.serviceZone.editPrices"), icon: , - to: `/settings/shipping/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${option.service_zone_id}/shipping-option/${option.id}/edit-pricing`, + to: `/settings/locations/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${option.service_zone_id}/shipping-option/${option.id}/edit-pricing`, }, { label: t("actions.delete"), @@ -196,18 +196,18 @@ function ServiceZoneOptions({
- {t("shipping.serviceZone.shippingOptions")} + {t("location.serviceZone.shippingOptions")}
@@ -228,18 +228,18 @@ function ServiceZoneOptions({
- {t("shipping.serviceZone.returnOptions")} + {t("location.serviceZone.returnOptions")}
@@ -280,7 +280,7 @@ function ServiceZone({ zone, locationId, fulfillmentSetId }: ServiceZoneProps) { const handleDelete = async () => { const res = await prompt({ title: t("general.areYouSure"), - description: t("shipping.serviceZone.deleteWarning", { + description: t("location.serviceZone.deleteWarning", { name: zone.name, }), confirmText: t("actions.delete"), @@ -295,7 +295,7 @@ function ServiceZone({ zone, locationId, fulfillmentSetId }: ServiceZoneProps) { await deleteZone() toast.success(t("general.success"), { - description: t("shipping.serviceZone.toast.delete", { + description: t("location.serviceZone.toast.delete", { name: zone.name, }), dismissLabel: t("actions.close"), @@ -350,14 +350,14 @@ function ServiceZone({ zone, locationId, fulfillmentSetId }: ServiceZoneProps) { · {shippingOptionsCount}{" "} - {t("shipping.serviceZone.optionsLength", { + {t("location.serviceZone.optionsLength", { count: shippingOptionsCount, })} · {returnOptionsCount}{" "} - {t("shipping.serviceZone.returnOptionsLength", { + {t("location.serviceZone.returnOptionsLength", { count: returnOptionsCount, })} @@ -389,12 +389,12 @@ function ServiceZone({ zone, locationId, fulfillmentSetId }: ServiceZoneProps) { { label: t("actions.edit"), icon: , - to: `/settings/shipping/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${zone.id}/edit`, + to: `/settings/locations/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${zone.id}/edit`, }, { - label: t("shipping.serviceZone.areas.manage"), + label: t("location.serviceZone.areas.manage"), icon: , - to: `/settings/shipping/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${zone.id}/edit-areas`, + to: `/settings/locations/${locationId}/fulfillment-set/${fulfillmentSetId}/service-zone/${zone.id}/edit-areas`, }, { label: t("actions.delete"), @@ -469,7 +469,7 @@ function FulfillmentSet(props: FulfillmentSetProps) { const handleDelete = async () => { const res = await prompt({ title: t("general.areYouSure"), - description: t("shipping.fulfillmentSet.disableWarning", { + description: t("location.fulfillmentSet.disableWarning", { name: fulfillmentSet?.name, }), confirmText: t("actions.delete"), @@ -484,7 +484,7 @@ function FulfillmentSet(props: FulfillmentSetProps) { await deleteFulfillmentSet() toast.success(t("general.success"), { - description: t("shipping.fulfillmentSet.toast.disable", { + description: t("location.fulfillmentSet.toast.disable", { name: fulfillmentSet?.name, }), dismissLabel: t("actions.close"), @@ -502,7 +502,7 @@ function FulfillmentSet(props: FulfillmentSetProps) {
- {t(`shipping.fulfillmentSet.${type}.offers`)} + {t(`location.fulfillmentSet.${type}.offers`)}
@@ -517,10 +517,10 @@ function FulfillmentSet(props: FulfillmentSetProps) { actions: [ { icon: , - label: t("shipping.fulfillmentSet.addZone"), + label: t("location.fulfillmentSet.addZone"), onClick: () => navigate( - `/settings/shipping/${locationId}/fulfillment-set/${fulfillmentSet.id}/service-zones/create` + `/settings/locations/${locationId}/fulfillment-set/${fulfillmentSet.id}/service-zones/create` ), disabled: !fulfillmentSetExists, }, @@ -543,7 +543,7 @@ function FulfillmentSet(props: FulfillmentSetProps) { {fulfillmentSetExists && !hasServiceZones && (
@@ -551,11 +551,11 @@ function FulfillmentSet(props: FulfillmentSetProps) { variant="secondary" onClick={() => navigate( - `/settings/shipping/${locationId}/fulfillment-set/${fulfillmentSet.id}/service-zones/create` + `/settings/locations/${locationId}/fulfillment-set/${fulfillmentSet.id}/service-zones/create` ) } > - {t("shipping.fulfillmentSet.addZone")} + {t("location.fulfillmentSet.addZone")}
)} @@ -586,7 +586,7 @@ const Actions = ({ location }: { location: StockLocationDTO }) => { const handleDelete = async () => { const res = await prompt({ title: t("general.areYouSure"), - description: t("shipping.deleteLocationWarning", { + description: t("location.deleteLocationWarning", { name: location.name, }), verificationText: location.name, @@ -602,7 +602,7 @@ const Actions = ({ location }: { location: StockLocationDTO }) => { try { await mutateAsync(undefined) toast.success(t("general.success"), { - description: t("shipping.toast.delete"), + description: t("location.toast.delete"), dismissLabel: t("actions.close"), }) } catch (e) { @@ -611,7 +611,7 @@ const Actions = ({ location }: { location: StockLocationDTO }) => { dismissLabel: t("actions.close"), }) } - navigate("/settings/shipping", { replace: true }) + navigate("/settings/locations", { replace: true }) } return ( diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-sales-channels-section/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-details/components/location-sales-channels-section/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-sales-channels-section/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-details/components/location-sales-channels-section/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-sales-channels-section/locations-sales-channels-section.tsx b/packages/admin-next/dashboard/src/routes/locations/location-details/components/location-sales-channels-section/locations-sales-channels-section.tsx similarity index 95% rename from packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-sales-channels-section/locations-sales-channels-section.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-details/components/location-sales-channels-section/locations-sales-channels-section.tsx index 2104efec98..e78d2984c2 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/location-details/components/location-sales-channels-section/locations-sales-channels-section.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/location-details/components/location-sales-channels-section/locations-sales-channels-section.tsx @@ -1,11 +1,11 @@ +import { Channels, PencilSquare } from "@medusajs/icons" +import { StockLocationDTO } from "@medusajs/types" import { Heading, Text } from "@medusajs/ui" import { Trans, useTranslation } from "react-i18next" -import { StockLocationDTO } from "@medusajs/types" -import { Channels, PencilSquare } from "@medusajs/icons" -import { useSalesChannels } from "../../../../../hooks/api/sales-channels" import { ActionMenu } from "../../../../../components/common/action-menu" import { ListSummary } from "../../../../../components/common/list-summary" +import { useSalesChannels } from "../../../../../hooks/api/sales-channels" type Props = { location: StockLocationDTO @@ -20,7 +20,7 @@ function LocationsSalesChannelsSection({ location }: Props) { return (
- {t("shipping.salesChannels.title")} + {t("location.salesChannels.title")} {noChannels ? ( - {t("shipping.salesChannels.placeholder")} + {t("location.salesChannels.placeholder")} ) : ( { + const initialData = useLoaderData() as Awaited< + ReturnType + > + + const { location_id } = useParams() + const { + stock_location: location, + isPending: isLoading, + isError, + error, + } = useStockLocation( + location_id!, + { + fields: + "name,*sales_channels,address.city,address.country_code,fulfillment_sets.type,fulfillment_sets.name,*fulfillment_sets.service_zones.geo_zones,*fulfillment_sets.service_zones,*fulfillment_sets.service_zones.shipping_options,*fulfillment_sets.service_zones.shipping_options.rules,*fulfillment_sets.service_zones.shipping_options.shipping_profile", + }, + { + initialData, + } + ) + + // TODO: Move to loading.tsx and set as Suspense fallback for the route + if (isLoading || !location) { + return
Loading...
+ } + + if (isError) { + throw error + } + + return ( +
+ {before.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} +
+
+ + {after.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} +
+ +
+
+
+ {sideBefore.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} + + {sideAfter.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} +
+ +
+
+ +
+
+ ) +} diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-edit/components/edit-location-form/edit-location-form.tsx b/packages/admin-next/dashboard/src/routes/locations/location-edit/components/edit-location-form/edit-location-form.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-edit/components/edit-location-form/edit-location-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-edit/components/edit-location-form/edit-location-form.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-edit/components/edit-location-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-edit/components/edit-location-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-edit/components/edit-location-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-edit/components/edit-location-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-edit/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-edit/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-edit/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-edit/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-edit/location-edit.tsx b/packages/admin-next/dashboard/src/routes/locations/location-edit/location-edit.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-edit/location-edit.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-edit/location-edit.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-list/components/location/index.ts b/packages/admin-next/dashboard/src/routes/locations/location-list/components/location/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/location-list/components/location/index.ts rename to packages/admin-next/dashboard/src/routes/locations/location-list/components/location/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-list/components/location/location.tsx b/packages/admin-next/dashboard/src/routes/locations/location-list/components/location/location.tsx similarity index 91% rename from packages/admin-next/dashboard/src/routes/shipping/location-list/components/location/location.tsx rename to packages/admin-next/dashboard/src/routes/locations/location-list/components/location/location.tsx index 30f8fb7eb8..9947557949 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/location-list/components/location/location.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/location-list/components/location/location.tsx @@ -1,3 +1,9 @@ +import { Buildings, PencilSquare, Trash } from "@medusajs/icons" +import { + FulfillmentSetDTO, + SalesChannelDTO, + StockLocationDTO, +} from "@medusajs/types" import { Button, Container, @@ -6,19 +12,13 @@ import { toast, usePrompt, } from "@medusajs/ui" -import { - FulfillmentSetDTO, - SalesChannelDTO, - StockLocationDTO, -} from "@medusajs/types" import { useTranslation } from "react-i18next" -import { Buildings, PencilSquare, Trash } from "@medusajs/icons" import { useNavigate } from "react-router-dom" -import { countries } from "../../../../../lib/countries" import { ActionMenu } from "../../../../../components/common/action-menu" -import { useDeleteStockLocation } from "../../../../../hooks/api/stock-locations" import { BadgeListSummary } from "../../../../../components/common/badge-list-summary" +import { useDeleteStockLocation } from "../../../../../hooks/api/stock-locations" +import { countries } from "../../../../../lib/countries" type SalesChannelsProps = { salesChannels?: SalesChannelDTO[] @@ -37,7 +37,7 @@ function SalesChannels(props: SalesChannelsProps) { className="text-ui-fg-subtle flex-1" as="div" > - {t(`shipping.fulfillmentSet.salesChannels`)} + {t(`location.fulfillmentSet.salesChannels`)}
{salesChannels?.length ? ( @@ -80,7 +80,7 @@ function FulfillmentSet(props: FulfillmentSetProps) { className="text-ui-fg-subtle flex-1" as="div" > - {t(`shipping.fulfillmentSet.${type}.title`)} + {t(`location.fulfillmentSet.${type}.title`)}
@@ -107,7 +107,7 @@ function Location(props: LocationProps) { const handleDelete = async () => { const result = await prompt({ title: t("general.areYouSure"), - description: t("shipping.deleteLocation.confirm", { + description: t("location.deleteLocation.confirm", { name: location.name, }), confirmText: t("actions.remove"), @@ -122,7 +122,7 @@ function Location(props: LocationProps) { await deleteLocation() toast.success(t("general.success"), { - description: t("shipping.deleteLocation.success", { + description: t("location.deleteLocation.success", { name: location.name, }), dismissLabel: t("general.close"), @@ -139,14 +139,14 @@ function Location(props: LocationProps) {
- {/*ICON*/} + {/* ICON*/}
- {/*LOCATION INFO*/} + {/* LOCATION INFO*/}
{location.name} @@ -160,7 +160,7 @@ function Location(props: LocationProps) {
- {/*ACTION*/} + {/* ACTION*/}
, - to: `/settings/shipping/${location.id}/edit`, + to: `/settings/locations/${location.id}/edit`, }, { - label: t("shipping.deleteLocation.label"), + label: t("location.deleteLocation.label"), icon: , onClick: handleDelete, }, @@ -182,7 +182,7 @@ function Location(props: LocationProps) { /> + +
+ {stockLocations.map((location) => ( + + ))} +
+ {after.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} + +
+ ) +} diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/components/edit-region-areas-form/edit-service-zone-areas-form.tsx b/packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/components/edit-region-areas-form/edit-service-zone-areas-form.tsx similarity index 94% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/components/edit-region-areas-form/edit-service-zone-areas-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/components/edit-region-areas-form/edit-service-zone-areas-form.tsx index 1c2bfb55dc..6b5d4a4a89 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/components/edit-region-areas-form/edit-service-zone-areas-form.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/components/edit-region-areas-form/edit-service-zone-areas-form.tsx @@ -1,39 +1,39 @@ -import { useForm } from "react-hook-form" import { zodResolver } from "@hookform/resolvers/zod" import { - ColumnDef, - createColumnHelper, - RowSelectionState, + ColumnDef, + createColumnHelper, + RowSelectionState, } from "@tanstack/react-table" +import { useForm } from "react-hook-form" import * as zod from "zod" -import { - Alert, - Badge, - Button, - Checkbox, - Heading, - IconButton, - Text, - toast, -} from "@medusajs/ui" -import { ServiceZoneDTO, HttpTypes } from "@medusajs/types" -import { useTranslation } from "react-i18next" import { XMarkMini } from "@medusajs/icons" - +import { HttpTypes, ServiceZoneDTO } from "@medusajs/types" import { - RouteFocusModal, - useRouteModal, -} from "../../../../../components/route-modal" -import { SplitView } from "../../../../../components/layout/split-view" -import { useUpdateServiceZone } from "../../../../../hooks/api/stock-locations" + Alert, + Badge, + Button, + Checkbox, + Heading, + IconButton, + Text, + toast, +} from "@medusajs/ui" +import { useTranslation } from "react-i18next" + import { useEffect, useMemo, useState } from "react" -import { useCountryTableQuery } from "../../../../regions/common/hooks/use-country-table-query" -import { useCountries } from "../../../../regions/common/hooks/use-countries" -import { countries as staticCountries } from "../../../../../lib/countries" -import { useDataTable } from "../../../../../hooks/use-data-table" -import { useCountryTableColumns } from "../../../../regions/common/hooks/use-country-table-columns" +import { SplitView } from "../../../../../components/layout/split-view" +import { + RouteFocusModal, + useRouteModal, +} from "../../../../../components/route-modal" import { DataTable } from "../../../../../components/table/data-table" +import { useUpdateServiceZone } from "../../../../../hooks/api/stock-locations" +import { useDataTable } from "../../../../../hooks/use-data-table" +import { countries as staticCountries } from "../../../../../lib/countries" +import { useCountries } from "../../../../regions/common/hooks/use-countries" +import { useCountryTableColumns } from "../../../../regions/common/hooks/use-country-table-columns" +import { useCountryTableQuery } from "../../../../regions/common/hooks/use-country-table-query" const PREFIX = "ac" const PAGE_SIZE = 50 @@ -215,7 +215,7 @@ export function EditServiceZoneAreasForm({
- {t("shipping.serviceZone.editAreasTitle", { + {t("location.serviceZone.editAreasTitle", { zone: zone.name, })} @@ -224,10 +224,10 @@ export function EditServiceZoneAreasForm({
- {t("shipping.serviceZone.areas.title")} + {t("location.serviceZone.areas.title")} - {t("shipping.serviceZone.areas.description")} + {t("location.serviceZone.areas.description")}
{!!selectedCountries.length && ( @@ -268,7 +268,7 @@ export function EditServiceZoneAreasForm({ )} {showAreasError && ( - {t("shipping.serviceZone.areas.error")} + {t("location.serviceZone.areas.error")} )} diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/components/edit-region-areas-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/components/edit-region-areas-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/components/edit-region-areas-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/components/edit-region-areas-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/index.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/index.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/service-zone-areas-edit.tsx b/packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/service-zone-areas-edit.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-areas-edit/service-zone-areas-edit.tsx rename to packages/admin-next/dashboard/src/routes/locations/service-zone-areas-edit/service-zone-areas-edit.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx b/packages/admin-next/dashboard/src/routes/locations/service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx similarity index 93% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx index 09a33d9a46..bd2bea678a 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/service-zone-create/components/create-service-zone-form/create-service-zone-form.tsx @@ -1,41 +1,41 @@ -import { useForm } from "react-hook-form" import { zodResolver } from "@hookform/resolvers/zod" import { - ColumnDef, - createColumnHelper, - RowSelectionState, + ColumnDef, + createColumnHelper, + RowSelectionState, } from "@tanstack/react-table" +import { useForm } from "react-hook-form" import * as zod from "zod" -import { - Alert, - Badge, - Button, - Checkbox, - Heading, - IconButton, - Input, - Text, - toast, -} from "@medusajs/ui" -import { FulfillmentSetDTO, HttpTypes } from "@medusajs/types" -import { useTranslation } from "react-i18next" import { XMarkMini } from "@medusajs/icons" - +import { FulfillmentSetDTO, HttpTypes } from "@medusajs/types" import { - RouteFocusModal, - useRouteModal, -} from "../../../../../components/route-modal" + Alert, + Badge, + Button, + Checkbox, + Heading, + IconButton, + Input, + Text, + toast, +} from "@medusajs/ui" +import { useTranslation } from "react-i18next" + +import { useEffect, useMemo, useState } from "react" import { Form } from "../../../../../components/common/form" import { SplitView } from "../../../../../components/layout/split-view" -import { useCreateServiceZone } from "../../../../../hooks/api/stock-locations" -import { useEffect, useMemo, useState } from "react" -import { useCountryTableQuery } from "../../../../regions/common/hooks/use-country-table-query" -import { useCountries } from "../../../../regions/common/hooks/use-countries" -import { countries as staticCountries } from "../../../../../lib/countries" -import { useDataTable } from "../../../../../hooks/use-data-table" -import { useCountryTableColumns } from "../../../../regions/common/hooks/use-country-table-columns" +import { + RouteFocusModal, + useRouteModal, +} from "../../../../../components/route-modal" import { DataTable } from "../../../../../components/table/data-table" +import { useCreateServiceZone } from "../../../../../hooks/api/stock-locations" +import { useDataTable } from "../../../../../hooks/use-data-table" +import { countries as staticCountries } from "../../../../../lib/countries" +import { useCountries } from "../../../../regions/common/hooks/use-countries" +import { useCountryTableColumns } from "../../../../regions/common/hooks/use-country-table-columns" +import { useCountryTableQuery } from "../../../../regions/common/hooks/use-country-table-query" const PREFIX = "ac" const PAGE_SIZE = 50 @@ -211,7 +211,7 @@ export function CreateServiceZoneForm({
- {t("shipping.fulfillmentSet.create.title", { + {t("location.fulfillmentSet.create.title", { fulfillmentSet: fulfillmentSet.name, })} @@ -224,7 +224,7 @@ export function CreateServiceZoneForm({ return ( - {t("shipping.serviceZone.create.zoneName")} + {t("location.serviceZone.create.zoneName")} @@ -239,10 +239,10 @@ export function CreateServiceZoneForm({ - {t("shipping.serviceZone.create.subtitle")} + {t("location.serviceZone.create.subtitle")} - {t("shipping.serviceZone.create.description")} + {t("location.serviceZone.create.description")} @@ -250,10 +250,10 @@ export function CreateServiceZoneForm({
- {t("shipping.serviceZone.areas.title")} + {t("location.serviceZone.areas.title")} - {t("shipping.serviceZone.areas.description")} + {t("location.serviceZone.areas.description")}
{!!selectedCountries.length && ( @@ -294,7 +294,7 @@ export function CreateServiceZoneForm({ )} {showAreasError && ( - {t("shipping.serviceZone.areas.error")} + {t("location.serviceZone.areas.error")} )} diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-create/components/create-service-zone-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-create/components/create-service-zone-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-create/components/create-service-zone-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-create/components/create-service-zone-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-create/index.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-create/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-create/index.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-create/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-create/loader.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-create/loader.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-create/loader.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-create/loader.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-create/service-zone-create.tsx b/packages/admin-next/dashboard/src/routes/locations/service-zone-create/service-zone-create.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-create/service-zone-create.tsx rename to packages/admin-next/dashboard/src/routes/locations/service-zone-create/service-zone-create.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx b/packages/admin-next/dashboard/src/routes/locations/service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx similarity index 95% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx index bd5d66e9eb..3ed4f37649 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/service-zone-edit/components/edit-region-form/edit-service-zone-form.tsx @@ -1,13 +1,13 @@ +import { ServiceZoneDTO } from "@medusajs/types" import { Alert, Button, Input, Text, toast } from "@medusajs/ui" import { useForm } from "react-hook-form" import { useTranslation } from "react-i18next" import * as zod from "zod" -import { ServiceZoneDTO } from "@medusajs/types" import { Form } from "../../../../../components/common/form" import { - RouteDrawer, - useRouteModal, + RouteDrawer, + useRouteModal, } from "../../../../../components/route-modal" import { useUpdateServiceZone } from "../../../../../hooks/api/stock-locations" @@ -88,10 +88,10 @@ export const EditServiceZoneForm = ({
- {t("shipping.serviceZone.create.subtitle")} + {t("location.serviceZone.create.subtitle")} - {t("shipping.serviceZone.create.description")} + {t("location.serviceZone.create.description")}
diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/components/edit-region-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-edit/components/edit-region-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/components/edit-region-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-edit/components/edit-region-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/index.ts b/packages/admin-next/dashboard/src/routes/locations/service-zone-edit/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/index.ts rename to packages/admin-next/dashboard/src/routes/locations/service-zone-edit/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/service-zone-edit.tsx b/packages/admin-next/dashboard/src/routes/locations/service-zone-edit/service-zone-edit.tsx similarity index 95% rename from packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/service-zone-edit.tsx rename to packages/admin-next/dashboard/src/routes/locations/service-zone-edit/service-zone-edit.tsx index 2f8b5628af..ee6727f788 100644 --- a/packages/admin-next/dashboard/src/routes/shipping/service-zone-edit/service-zone-edit.tsx +++ b/packages/admin-next/dashboard/src/routes/locations/service-zone-edit/service-zone-edit.tsx @@ -3,8 +3,8 @@ import { useTranslation } from "react-i18next" import { json, useParams } from "react-router-dom" import { RouteDrawer } from "../../../components/route-modal" -import { EditServiceZoneForm } from "./components/edit-region-form" import { useStockLocation } from "../../../hooks/api/stock-locations" +import { EditServiceZoneForm } from "./components/edit-region-form" export const ServiceZoneEdit = () => { const { t } = useTranslation() @@ -36,7 +36,7 @@ export const ServiceZoneEdit = () => { return ( - {t("shipping.serviceZone.edit.title")} + {t("location.serviceZone.edit.title")} {!isPending && zone && ( - {t("shipping.shippingOptions.create.allocation")} + {t("location.shippingOptions.create.allocation")} @@ -173,7 +173,7 @@ export const EditShippingOptionForm = ({ return ( - {t("shipping.shippingOptions.create.profile")} + {t("location.shippingOptions.create.profile")} @@ -236,7 +236,7 @@ export const EditShippingOptionForm = ({
- {t("shipping.shippingOptions.create.enable")} + {t("location.shippingOptions.create.enable")} { const { t } = useTranslation() @@ -31,7 +31,7 @@ export const ShippingOptionEdit = () => { return ( - {t("shipping.shippingOptions.edit.title")} + {t("location.shippingOptions.edit.title")} {!isPending && shippingOption && ( - {t("shipping.shippingOptions.create.details")} + {t("location.shippingOptions.create.details")} {!isCalculatedPriceType && ( @@ -241,7 +241,7 @@ export function CreateShippingOptionsForm({ disabled={!canMoveToPricing} > - {t("shipping.shippingOptions.create.pricing")} + {t("location.shippingOptions.create.pricing")} )} @@ -286,7 +286,7 @@ export function CreateShippingOptionsForm({
{t( - `shipping.${ + `location.${ isReturn ? "returnOptions" : "shippingOptions" }.create.title`, { @@ -298,10 +298,10 @@ export function CreateShippingOptionsForm({ {!isReturn && (
- {t("shipping.shippingOptions.create.subtitle")} + {t("location.shippingOptions.create.subtitle")} - {t("shipping.shippingOptions.create.description")} + {t("location.shippingOptions.create.description")}
)} @@ -313,7 +313,7 @@ export function CreateShippingOptionsForm({ return ( - {t("shipping.shippingOptions.create.allocation")} + {t("location.shippingOptions.create.allocation")} @@ -374,7 +374,7 @@ export function CreateShippingOptionsForm({ return ( - {t("shipping.shippingOptions.create.profile")} + {t("location.shippingOptions.create.profile")} @@ -437,7 +437,7 @@ export function CreateShippingOptionsForm({
- {t("shipping.shippingOptions.create.enable")} + {t("location.shippingOptions.create.enable")} {t( - "shipping.shippingOptions.create.enableDescription" + "location.shippingOptions.create.enableDescription" )} diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/components/create-shipping-options-form/create-shipping-options-prices-form.tsx b/packages/admin-next/dashboard/src/routes/locations/shipping-options-create/components/create-shipping-options-form/create-shipping-options-prices-form.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/components/create-shipping-options-form/create-shipping-options-prices-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-create/components/create-shipping-options-form/create-shipping-options-prices-form.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/components/create-shipping-options-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/shipping-options-create/components/create-shipping-options-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/components/create-shipping-options-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-create/components/create-shipping-options-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/index.ts b/packages/admin-next/dashboard/src/routes/locations/shipping-options-create/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/index.ts rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-create/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/loader.ts b/packages/admin-next/dashboard/src/routes/locations/shipping-options-create/loader.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/loader.ts rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-create/loader.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/shipping-options-create.tsx b/packages/admin-next/dashboard/src/routes/locations/shipping-options-create/shipping-options-create.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-create/shipping-options-create.tsx rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-create/shipping-options-create.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/components/create-shipping-options-form/edit-shipping-options-pricing-form.tsx b/packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/components/create-shipping-options-form/edit-shipping-options-pricing-form.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/components/create-shipping-options-form/edit-shipping-options-pricing-form.tsx rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/components/create-shipping-options-form/edit-shipping-options-pricing-form.tsx diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/components/create-shipping-options-form/index.ts b/packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/components/create-shipping-options-form/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/components/create-shipping-options-form/index.ts rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/components/create-shipping-options-form/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/index.ts b/packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/index.ts similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/index.ts rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/index.ts diff --git a/packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/shipping-options-edit-pricing.tsx b/packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/shipping-options-edit-pricing.tsx similarity index 100% rename from packages/admin-next/dashboard/src/routes/shipping/shipping-options-edit-pricing/shipping-options-edit-pricing.tsx rename to packages/admin-next/dashboard/src/routes/locations/shipping-options-edit-pricing/shipping-options-edit-pricing.tsx diff --git a/packages/admin-next/dashboard/src/routes/orders/order-detail/components/order-fulfillment-section/order-fulfillment-section.tsx b/packages/admin-next/dashboard/src/routes/orders/order-detail/components/order-fulfillment-section/order-fulfillment-section.tsx index 53571bdc7c..775a3e9b86 100644 --- a/packages/admin-next/dashboard/src/routes/orders/order-detail/components/order-fulfillment-section/order-fulfillment-section.tsx +++ b/packages/admin-next/dashboard/src/routes/orders/order-detail/components/order-fulfillment-section/order-fulfillment-section.tsx @@ -11,8 +11,8 @@ import { Heading, StatusBadge, Text, - toast, Tooltip, + toast, usePrompt, } from "@medusajs/ui" import { format } from "date-fns" @@ -21,10 +21,10 @@ import { Link } from "react-router-dom" import { ActionMenu } from "../../../../../components/common/action-menu" import { Skeleton } from "../../../../../components/common/skeleton" import { Thumbnail } from "../../../../../components/common/thumbnail" +import { useCancelFulfillment } from "../../../../../hooks/api/fulfillment" +import { useStockLocation } from "../../../../../hooks/api/stock-locations" import { formatProvider } from "../../../../../lib/format-provider" import { getLocaleAmount } from "../../../../../lib/money-amount-helpers" -import { useStockLocation } from "../../../../../hooks/api/stock-locations" -import { useCancelFulfillment } from "../../../../../hooks/api/fulfillment" type OrderFulfillmentSectionProps = { order: OrderDTO & { fulfillments: FulfillmentDTO[] } @@ -285,7 +285,7 @@ const Fulfillment = ({ {stock_location ? ( diff --git a/packages/admin-next/dashboard/src/routes/regions/region-detail/region-detail.tsx b/packages/admin-next/dashboard/src/routes/regions/region-detail/region-detail.tsx index 24e63acc1a..431b38475a 100644 --- a/packages/admin-next/dashboard/src/routes/regions/region-detail/region-detail.tsx +++ b/packages/admin-next/dashboard/src/routes/regions/region-detail/region-detail.tsx @@ -6,6 +6,9 @@ import { RegionCountrySection } from "./components/region-country-section" import { RegionGeneralSection } from "./components/region-general-section" import { regionLoader } from "./loader" +import after from "virtual:medusa/widgets/region/details/after" +import before from "virtual:medusa/widgets/region/details/before" + export const RegionDetail = () => { const initialData = useLoaderData() as Awaited< ReturnType @@ -36,8 +39,22 @@ export const RegionDetail = () => { return (
+ {before.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} + {after.widgets.map((w, i) => { + return ( +
+ +
+ ) + })}
diff --git a/packages/admin-next/dashboard/src/routes/regions/region-list/region-list.tsx b/packages/admin-next/dashboard/src/routes/regions/region-list/region-list.tsx index 02139e2a9d..da448a49fb 100644 --- a/packages/admin-next/dashboard/src/routes/regions/region-list/region-list.tsx +++ b/packages/admin-next/dashboard/src/routes/regions/region-list/region-list.tsx @@ -1,10 +1,28 @@ import { Outlet } from "react-router-dom" + import { RegionListTable } from "./components/region-list-table" +import after from "virtual:medusa/widgets/region/list/after" +import before from "virtual:medusa/widgets/region/list/before" + export const RegionList = () => { return (
+ {before.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} + {after.widgets.map((w, i) => { + return ( +
+ +
+ ) + })}
) diff --git a/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-create/components/create-shipping-profile-form/create-shipping-profile-form.tsx b/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-create/components/create-shipping-profile-form/create-shipping-profile-form.tsx index e7bab2c383..70652891dd 100644 --- a/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-create/components/create-shipping-profile-form/create-shipping-profile-form.tsx +++ b/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-create/components/create-shipping-profile-form/create-shipping-profile-form.tsx @@ -6,8 +6,8 @@ import * as zod from "zod" import { Form } from "../../../../../components/common/form" import { - RouteFocusModal, - useRouteModal, + RouteFocusModal, + useRouteModal, } from "../../../../../components/route-modal" import { useCreateShippingProfile } from "../../../../../hooks/api/shipping-profiles" diff --git a/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-detail/shipping-profile-detail.tsx b/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-detail/shipping-profile-detail.tsx index 02c16c967a..452a5c2077 100644 --- a/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-detail/shipping-profile-detail.tsx +++ b/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profile-detail/shipping-profile-detail.tsx @@ -1,4 +1,5 @@ import { useParams } from "react-router-dom" + import { JsonViewSection } from "../../../components/common/json-view-section" import { GeneralSectionSkeleton, @@ -7,6 +8,9 @@ import { import { useShippingProfile } from "../../../hooks/api/shipping-profiles" import { ShippingProfileGeneralSection } from "./components/shipping-profile-general-section" +import after from "virtual:medusa/widgets/shipping_profile/details/after" +import before from "virtual:medusa/widgets/shipping_profile/details/before" + export const ShippingProfileDetail = () => { const { id } = useParams() @@ -29,7 +33,21 @@ export const ShippingProfileDetail = () => { return (
+ {before.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} + {after.widgets.map((w, i) => { + return ( +
+ +
+ ) + })}
) diff --git a/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profiles-list/shipping-profile-list.tsx b/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profiles-list/shipping-profile-list.tsx index b6dda68fa0..5c3ffbb2d1 100644 --- a/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profiles-list/shipping-profile-list.tsx +++ b/packages/admin-next/dashboard/src/routes/shipping-profiles/shipping-profiles-list/shipping-profile-list.tsx @@ -1,10 +1,28 @@ import { Outlet } from "react-router-dom" + import { ShippingProfileListTable } from "./components/shipping-profile-list-table" +import after from "virtual:medusa/widgets/shipping_profile/list/after" +import before from "virtual:medusa/widgets/shipping_profile/list/before" + export const ShippingProfileList = () => { return (
+ {before.widgets.map((w, i) => { + return ( +
+ +
+ ) + })} + {after.widgets.map((w, i) => { + return ( +
+ +
+ ) + })}
) diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-details/location-details.tsx b/packages/admin-next/dashboard/src/routes/shipping/location-details/location-details.tsx deleted file mode 100644 index 236461a744..0000000000 --- a/packages/admin-next/dashboard/src/routes/shipping/location-details/location-details.tsx +++ /dev/null @@ -1,55 +0,0 @@ -import { Outlet, useLoaderData, useParams } from "react-router-dom" - -import { JsonViewSection } from "../../../components/common/json-view-section" -import { LocationGeneralSection } from "./components/location-general-section" -import { useStockLocation } from "../../../hooks/api/stock-locations" -import LocationsSalesChannelsSection from "./components/location-sales-channels-section/locations-sales-channels-section" -import { locationLoader } from "./loader" - -export const LocationDetails = () => { - const initialData = useLoaderData() as Awaited< - ReturnType - > - - const { location_id } = useParams() - const { - stock_location: location, - isPending: isLoading, - isError, - error, - } = useStockLocation( - location_id!, - { - fields: - "name,*sales_channels,address.city,address.country_code,fulfillment_sets.type,fulfillment_sets.name,*fulfillment_sets.service_zones.geo_zones,*fulfillment_sets.service_zones,*fulfillment_sets.service_zones.shipping_options,*fulfillment_sets.service_zones.shipping_options.rules,*fulfillment_sets.service_zones.shipping_options.shipping_profile", - }, - { - initialData, - } - ) - - // TODO: Move to loading.tsx and set as Suspense fallback for the route - if (isLoading || !location) { - return
Loading...
- } - - if (isError) { - throw error - } - - return ( -
-
- -
- -
- -
-
- -
- -
- ) -} diff --git a/packages/admin-next/dashboard/src/routes/shipping/location-list/location-list.tsx b/packages/admin-next/dashboard/src/routes/shipping/location-list/location-list.tsx deleted file mode 100644 index c1be4db4a5..0000000000 --- a/packages/admin-next/dashboard/src/routes/shipping/location-list/location-list.tsx +++ /dev/null @@ -1,47 +0,0 @@ -import { Button, Container, Heading, Text } from "@medusajs/ui" -import { useTranslation } from "react-i18next" -import { Link, Outlet, useLoaderData } from "react-router-dom" - -import { shippingListLoader } from "./loader" -import { useStockLocations } from "../../../hooks/api/stock-locations" -import Location from "./components/location/location" -import { locationListFields } from "./const" - -export function LocationList() { - const { t } = useTranslation() - - const initialData = useLoaderData() as Awaited< - ReturnType - > - - let { stock_locations: stockLocations = [], isPending } = useStockLocations( - { - fields: locationListFields, - }, - { initialData } - ) - - return ( - <> -
- -
- {t("shipping.title")} - - {t("shipping.description")} - -
- -
-
- {stockLocations.map((location) => ( - - ))} -
-
- - - ) -}