option.label}
onChange={handleSearch}
placeholder={placeholder}
+ data-1p-ignore
/>
-
-
-
{
},
});
}}
+ disabled={!proEnabled && !['pos_cash', 'pos_card'].includes(item.id)}
/>
@@ -202,6 +203,7 @@ const Gateways = () => {
modalGateway.current = item;
setOpen(true);
}}
+ disabled={!proEnabled && !['pos_cash', 'pos_card'].includes(item.id)}
>
{t('Settings', { _tags: 'wp-admin-settings' })}
diff --git a/packages/settings/src/screens/checkout/order-status-select.tsx b/packages/settings/src/screens/checkout/order-status-select.tsx
index 9e90732..63c65ac 100644
--- a/packages/settings/src/screens/checkout/order-status-select.tsx
+++ b/packages/settings/src/screens/checkout/order-status-select.tsx
@@ -1,11 +1,6 @@
import * as React from 'react';
-import { useQuery } from '@tanstack/react-query';
-import apiFetch from '@wordpress/api-fetch';
-import { map } from 'lodash';
-
import Select from '../../components/select';
-import useNotices from '../../hooks/use-notices';
interface OrderStatusSelectProps {
selectedStatus: string;
@@ -13,31 +8,11 @@ interface OrderStatusSelectProps {
}
const OrderStatusSelect = ({ selectedStatus, mutate }: OrderStatusSelectProps) => {
- const { setNotice } = useNotices();
-
- const { data: options } = useQuery({
- queryKey: ['order-statuses'],
- queryFn: async () => {
- const response = await apiFetch>({
- path: `wcpos/v1/settings/checkout/order-statuses?wcpos=1`,
- method: 'GET',
- }).catch((err) => {
- console.error(err);
- return err;
- });
-
- // if we have an error response, set the notice
- if (response?.code && response?.message) {
- setNotice({ type: 'error', message: response?.message });
- }
+ const order_statuses = window?.wcpos?.settings?.order_statuses;
- return map(response, (label, value) => ({
- label,
- value,
- }));
- },
- placeholderData: [],
- });
+ const options = React.useMemo(() => {
+ return Object.entries(order_statuses).map(([value, label]) => ({ value, label }));
+ }, [order_statuses]);
return (
|