From 809dc6d724a773dc0ea49163ebd9e76bb4be71f2 Mon Sep 17 00:00:00 2001 From: Jonathan Miller <1+jmiller@noreply.git.mokoconsulting.tech> Date: Sat, 27 Jun 2026 20:20:36 +0000 Subject: [PATCH] feat: scaffold batch 2 --- .../en-GB/com_mokosuitelogistics.sys.ini | 2 ++ .../mokosuitelogistics.xml | 17 ++++++++++ .../services/provider.php | 31 +++++++++++++++++ .../src/Extension/MokoSuiteLogistics.php | 34 +++++++++++++++++++ 4 files changed, 84 insertions(+) create mode 100644 source/packages/com_mokosuitelogistics/admin/language/en-GB/com_mokosuitelogistics.sys.ini create mode 100644 source/packages/plg_webservices_mokosuitelogistics/mokosuitelogistics.xml create mode 100644 source/packages/plg_webservices_mokosuitelogistics/services/provider.php create mode 100644 source/packages/plg_webservices_mokosuitelogistics/src/Extension/MokoSuiteLogistics.php diff --git a/source/packages/com_mokosuitelogistics/admin/language/en-GB/com_mokosuitelogistics.sys.ini b/source/packages/com_mokosuitelogistics/admin/language/en-GB/com_mokosuitelogistics.sys.ini new file mode 100644 index 0000000..844c238 --- /dev/null +++ b/source/packages/com_mokosuitelogistics/admin/language/en-GB/com_mokosuitelogistics.sys.ini @@ -0,0 +1,2 @@ +COM_MOKOSUITELOGISTICS="MokoSuiteLogistics" +COM_MOKOSUITELOGISTICS_DESCRIPTION="Layer 2 — Fleet logistics, shipment tracking, route planning, warehouse management" diff --git a/source/packages/plg_webservices_mokosuitelogistics/mokosuitelogistics.xml b/source/packages/plg_webservices_mokosuitelogistics/mokosuitelogistics.xml new file mode 100644 index 0000000..8b669b7 --- /dev/null +++ b/source/packages/plg_webservices_mokosuitelogistics/mokosuitelogistics.xml @@ -0,0 +1,17 @@ + + + plg_webservices_mokosuitelogistics + 0.0.0 + 2026-06 + Moko Consulting + hello@mokoconsulting.tech + https://mokoconsulting.tech + (C) 2026 Moko Consulting + GPL-3.0-or-later + MokoSuiteLogistics webservices plugin + MokoConsulting\Plugin\WebServices\MokoSuiteLogistics + + src + services + + diff --git a/source/packages/plg_webservices_mokosuitelogistics/services/provider.php b/source/packages/plg_webservices_mokosuitelogistics/services/provider.php new file mode 100644 index 0000000..751f8c0 --- /dev/null +++ b/source/packages/plg_webservices_mokosuitelogistics/services/provider.php @@ -0,0 +1,31 @@ +set( + PluginInterface::class, + function (Container $container) { + $dispatcher = $container->get(DispatcherInterface::class); + $plugin = new MokoSuiteLogistics($dispatcher, (array) PluginHelper::getPlugin('webservices', 'mokosuitelogistics')); + $plugin->setApplication(Factory::getApplication()); + return $plugin; + } + ); + } +}; diff --git a/source/packages/plg_webservices_mokosuitelogistics/src/Extension/MokoSuiteLogistics.php b/source/packages/plg_webservices_mokosuitelogistics/src/Extension/MokoSuiteLogistics.php new file mode 100644 index 0000000..09726a2 --- /dev/null +++ b/source/packages/plg_webservices_mokosuitelogistics/src/Extension/MokoSuiteLogistics.php @@ -0,0 +1,34 @@ + 'onBeforeApiRoute', + ]; + } + + public function onBeforeApiRoute(&$router): void + { + $router->createCRUDRoutes('v1/mokosuitelogistics/shipments', 'shipments'); + $router->createCRUDRoutes('v1/mokosuitelogistics/routes', 'routes'); + $router->createCRUDRoutes('v1/mokosuitelogistics/carriers', 'carriers'); + $router->createCRUDRoutes('v1/mokosuitelogistics/warehouses', 'warehouses'); + $router->createCRUDRoutes('v1/mokosuitelogistics/packages', 'packages'); + $router->createCRUDRoutes('v1/mokosuitelogistics/tracking', 'tracking'); + } +}