From f20360777bf47751fbc025e5b8f9adf6f4072fd7 Mon Sep 17 00:00:00 2001 From: isaacclad Date: Sat, 27 Jun 2026 15:15:34 +0000 Subject: [PATCH] Sync app launcher from registry --- config/ladill_launcher.php | 47 ++++++++++++--------------- public/images/launcher-icons/link.svg | 25 ++++++++++++++ 2 files changed, 46 insertions(+), 26 deletions(-) create mode 100644 public/images/launcher-icons/link.svg diff --git a/config/ladill_launcher.php b/config/ladill_launcher.php index 058c8c4..14a3c31 100644 --- a/config/ladill_launcher.php +++ b/config/ladill_launcher.php @@ -2,44 +2,39 @@ /* |-------------------------------------------------------------------------- -| Ladill App Launcher — SHARED, IDENTICAL across every app/service repo +| Ladill App Launcher — GENERATED, IDENTICAL across every app/service repo |-------------------------------------------------------------------------- | -| Lists ONLY fully-extracted apps (each on its own subdomain). To replicate the -| launcher in a new app, copy these three things verbatim into that repo: -| - config/ladill_launcher.php (this file) -| - resources/views/partials/launcher.blade.php -| - public/images/launcher-icons/* (the icon set) +| DO NOT EDIT BY HAND. This file is generated from the app registry in the +| monolith (config/ladill_apps.php). To change the launcher, edit that +| registry and run: php artisan ladill:launcher:sync --propagate | -| When a service becomes FULLY extracted: add one row below AND drop its icon in -| public/images/launcher-icons/ — in EVERY repo. That's the only edit needed. -| Do NOT list a service here until it is fully extracted to its own subdomain. -| -| URLs are absolute (built from the platform root) so this file is byte-identical -| in every app; the blade omits whichever row matches the app's APP_URL host. -| Icons are served from /images/launcher-icons/. +| URLs are absolute (built from the platform root) so this file is +| byte-identical in every repo; the blade omits whichever row matches the +| app's own host. Icons are served from /images/launcher-icons/. */ $root = config('app.platform_domain', 'ladill.com'); return [ 'apps' => [ - ['name' => 'Bird', 'url' => 'https://bird.'.$root, 'icon' => 'bird.svg'], - ['name' => 'Email', 'url' => 'https://email.'.$root, 'icon' => 'email.svg'], - ['name' => 'Mail', 'url' => 'https://mail.'.$root, 'icon' => 'mail.svg'], + ['name' => 'Merchant', 'url' => 'https://merchant.'.$root.'/sso/connect?redirect='.urlencode('https://merchant.'.$root.'/dashboard'), 'icon' => 'merchant.svg'], + ['name' => 'POS', 'url' => 'https://pos.'.$root.'/sso/connect?redirect='.urlencode('https://pos.'.$root.'/dashboard'), 'icon' => 'pos.svg'], + ['name' => 'Mini', 'url' => 'https://mini.'.$root.'/sso/connect?redirect='.urlencode('https://mini.'.$root.'/dashboard'), 'icon' => 'mini.svg'], + ['name' => 'Give', 'url' => 'https://give.'.$root.'/sso/connect?redirect='.urlencode('https://give.'.$root.'/dashboard'), 'icon' => 'give.svg'], + ['name' => 'Events', 'url' => 'https://events.'.$root.'/sso/connect?redirect='.urlencode('https://events.'.$root.'/dashboard'), 'icon' => 'events.svg'], + ['name' => 'Invoice', 'url' => 'https://invoice.'.$root.'/sso/connect?redirect='.urlencode('https://invoice.'.$root.'/dashboard'), 'icon' => 'invoice.svg'], + ['name' => 'Transfer', 'url' => 'https://transfer.'.$root.'/sso/connect?redirect='.urlencode('https://transfer.'.$root.'/dashboard'), 'icon' => 'transfer.svg'], + ['name' => 'Accounting', 'url' => 'https://accounting.'.$root.'/sso/connect?redirect='.urlencode('https://accounting.'.$root.'/dashboard'), 'icon' => 'accounting.svg'], + ['name' => 'CRM', 'url' => 'https://crm.'.$root.'/sso/connect?redirect='.urlencode('https://crm.'.$root.'/dashboard'), 'icon' => 'crm.svg'], + ['name' => 'QR Plus', 'url' => 'https://qrplus.'.$root.'/sso/connect?redirect='.urlencode('https://qrplus.'.$root.'/dashboard'), 'icon' => 'qrplus.svg'], + ['name' => 'Link', 'url' => 'https://link.'.$root.'/sso/connect?redirect='.urlencode('https://link.'.$root.'/dashboard'), 'icon' => 'link.svg'], ['name' => 'SMS', 'url' => 'https://sms.'.$root, 'icon' => 'sms.svg'], + ['name' => 'Bird', 'url' => 'https://bird.'.$root, 'icon' => 'bird.svg'], + ['name' => 'Mail', 'url' => 'https://mail.'.$root, 'icon' => 'mail.svg'], + ['name' => 'Email', 'url' => 'https://email.'.$root, 'icon' => 'email.svg'], ['name' => 'Domains', 'url' => 'https://domains.'.$root, 'icon' => 'domains.svg'], ['name' => 'Servers', 'url' => 'https://servers.'.$root, 'icon' => 'servers.svg'], ['name' => 'Hosting', 'url' => 'https://hosting.'.$root, 'icon' => 'hosting.svg'], - ['name' => 'QR Plus', 'url' => 'https://qrplus.'.$root.'/sso/connect?redirect='.urlencode('https://qrplus.'.$root.'/dashboard'), 'icon' => 'qrplus.svg'], - ['name' => 'Events', 'url' => 'https://events.'.$root.'/sso/connect?redirect='.urlencode('https://events.'.$root.'/dashboard'), 'icon' => 'events.svg'], - ['name' => 'Mini', 'url' => 'https://mini.'.$root.'/sso/connect?redirect='.urlencode('https://mini.'.$root.'/dashboard'), 'icon' => 'mini.svg'], - ['name' => 'Invoice', 'url' => 'https://invoice.'.$root.'/sso/connect?redirect='.urlencode('https://invoice.'.$root.'/dashboard'), 'icon' => 'invoice.svg'], - ['name' => 'Give', 'url' => 'https://give.'.$root.'/sso/connect?redirect='.urlencode('https://give.'.$root.'/dashboard'), 'icon' => 'give.svg'], - ['name' => 'Merchant', 'url' => 'https://merchant.'.$root.'/sso/connect?redirect='.urlencode('https://merchant.'.$root.'/dashboard'), 'icon' => 'merchant.svg'], - ['name' => 'POS', 'url' => 'https://pos.'.$root.'/sso/connect?redirect='.urlencode('https://pos.'.$root.'/dashboard'), 'icon' => 'pos.svg'], - ['name' => 'Transfer', 'url' => 'https://transfer.'.$root.'/sso/connect?redirect='.urlencode('https://transfer.'.$root.'/dashboard'), 'icon' => 'transfer.svg'], - ['name' => 'CRM', 'url' => 'https://crm.'.$root.'/sso/connect?redirect='.urlencode('https://crm.'.$root.'/dashboard'), 'icon' => 'crm.svg'], - ['name' => 'Accounting', 'url' => 'https://accounting.'.$root.'/sso/connect?redirect='.urlencode('https://accounting.'.$root.'/dashboard'), 'icon' => 'accounting.svg'], ], ]; diff --git a/public/images/launcher-icons/link.svg b/public/images/launcher-icons/link.svg new file mode 100644 index 0000000..4122dc4 --- /dev/null +++ b/public/images/launcher-icons/link.svg @@ -0,0 +1,25 @@ + + + + + + + + + \ No newline at end of file