Files
formipay/src/admin/components/App.js
dwindown f7a149a1c5 feat: initialize React admin build pipeline (F2.1-F2.6)
- Add package.json with @wordpress/scripts and React dependencies
- Configure webpack for admin bundle output
- Create src/admin directory structure (api, components, pages)
- Implement API client with nonce handling (ajaxRequest, apiRequest)
- Add API methods for orders, customers, products, forms, coupons, licenses
- Create React App component with page routing
- Add placeholder page components for all admin sections
- Create ReactAdmin PHP class to manage asset enqueuing
- Register ReactAdmin singleton in main plugin file
- Bump version to 2.0.0

Build: Run 'npm install && npm run build' to generate assets
2026-04-18 11:17:53 +07:00

40 lines
987 B
JavaScript

/**
* App Component - Main admin application shell
*/
import OrdersPage from '../pages/Orders';
import CustomersPage from '../pages/Customers';
import ProductsPage from '../pages/Products';
import FormsPage from '../pages/Forms';
import CouponsPage from '../pages/Coupons';
import AccessPage from '../pages/Access';
import LicensesPage from '../pages/Licenses';
const pageComponents = {
orders: OrdersPage,
customers: CustomersPage,
products: ProductsPage,
forms: FormsPage,
coupons: CouponsPage,
access: AccessPage,
licenses: LicensesPage,
};
export default function App({ page, initialData }) {
const PageComponent = pageComponents[page];
if (!PageComponent) {
return (
<div className="formipay-error">
<p>Unknown page: {page}</p>
</div>
);
}
return (
<div className="formipay-admin-wrap">
<PageComponent initialData={initialData} />
</div>
);
}