Skip to content
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 3 additions & 6 deletions .junie/mcp/mcp.json
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
{
"mcpServers": {
"laravel-boost": {
"command": "/usr/bin/php8.4",
"args": [
"/home/hassan/code/nativephp.com/artisan",
"boost:mcp"
]
"command": "php",
"args": ["./artisan", "boost:mcp"]
}
}
}
}
8 changes: 6 additions & 2 deletions resources/css/docsearch.css
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
}

.DocSearch-Button {
@apply m-0 flex items-center rounded-full bg-gray-50/50 font-normal ring-1 ring-slate-600/30 transition duration-300 ease-out ring-inset dark:bg-black/30;
@apply m-0 flex h-10 items-center rounded-full bg-gray-50/50 font-normal ring-1 ring-slate-600/30 transition duration-300 ease-out ring-inset min-[1024px]:h-9 dark:bg-black/30;
}

.DocSearch-Button:hover {
Expand All @@ -29,13 +29,17 @@
}

.DocSearch-Button-Placeholder {
@apply px-1 text-sm text-black/60 transition duration-300 xl:pr-5 dark:text-white/60;
@apply pr-2 pl-1 text-sm text-black/60 transition duration-300 xl:pr-5 dark:text-white/60;
}

.DocSearch-Button-Keys {
@apply mt-1 ml-1 hidden min-w-[auto] text-sm leading-none sm:flex;
}

.DocSearch-Button-Placeholder {
@apply inline!;
}

.DocSearch-Button-Key {
background: none;
box-shadow: none;
Expand Down
11 changes: 10 additions & 1 deletion resources/js/app.js
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,15 @@ docsearch({
apiKey: '9be495a1aaf367b47c873d30a8e7ccf5',
indexName: 'nativephp',
insights: true,
container: '#docsearch',
container: '#docsearch-desktop',
debug: false,
})

docsearch({
appId: 'ZNII9QZ8WI',
apiKey: '9be495a1aaf367b47c873d30a8e7ccf5',
indexName: 'nativephp',
insights: true,
container: '#docsearch-mobile',
debug: false,
})
135 changes: 80 additions & 55 deletions resources/views/components/navbar/mobile-menu.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -68,148 +68,160 @@ class="-ml-2.5 h-5 w-0.5 -rotate-45 rounded-full bg-current transition duration-
role="dialog"
aria-modal="true"
aria-label="Site menu"
class="fixed top-21 right-3 bottom-3.5 left-3 h-auto w-auto origin-top -translate-y-2 scale-y-90 overflow-y-scroll overscroll-contain rounded-2xl bg-gray-100/50 opacity-0 ring-1 ring-gray-200/80 backdrop-blur-2xl transition transition-discrete duration-300 open:translate-y-0 open:scale-y-100 open:opacity-100 min-[500px]:right-3.5 min-[500px]:left-3.5 dark:bg-black/50 dark:text-white dark:ring-gray-700/70 starting:open:-translate-y-2 starting:open:scale-y-0 starting:open:opacity-0"
class="fixed top-20 right-3 bottom-3.5 left-3 w-auto origin-top -translate-y-2 scale-y-90 overflow-y-scroll overscroll-contain rounded-2xl bg-gray-200/50 opacity-0 ring-1 ring-gray-200/80 backdrop-blur-2xl transition transition-discrete duration-300 open:translate-y-0 open:scale-y-100 open:opacity-100 min-[500px]:right-3.5 min-[500px]:left-3.5 dark:bg-black/50 dark:text-white dark:ring-gray-700/70 starting:open:-translate-y-2 starting:open:scale-y-0 starting:open:opacity-0"
>
<div class="flex h-full flex-col overflow-hidden p-6">
<div class="@container flex flex-col overflow-hidden px-6 pt-4 pb-6">
<nav
class="flex flex-1 flex-col items-start text-xl"
class="@md:grid-cols-3 grid grid-cols-2 text-xl"
aria-label="Primary"
>
@php
$isHomeActive = request()->routeIs('welcome*');
$isPricingActive = request()->routeIs('pricing*');
$isDocsActive = request()->is('docs*');
$isBlogActive = request()->routeIs('blog*');
$isPartnersActive = request()->routeIs('partners*');
$isSponsorActive = request()->routeIs('sponsoring*');
$isLoginActive = request()->routeIs('customer.login*');
@endphp

{{-- Home Link --}}
<div class="w-full">
<div>
<a
href="/"
@class([
'flex items-center justify-between py-3 transition duration-200',
'flex items-center gap-2 py-3 transition duration-200',
'font-medium' => $isHomeActive,
'opacity-50 hover:translate-x-1 hover:opacity-100' => ! $isHomeActive,
])
aria-current="{{ $isHomeActive ? 'page' : 'false' }}"
>
<div>Home</div>
@if ($isHomeActive)
<x-icons.right-arrow
class="size-4 shrink-0"
aria-hidden="true"
focusable="false"
/>
@endif

<div>Home</div>
</a>
</div>

<div
class="h-0.5 w-full rounded-full bg-current opacity-5"
role="presentation"
></div>

{{-- Docs Link --}}
<div class="w-full">
<div>
<a
href="/docs/"
@class([
'flex items-center justify-between py-3 transition duration-200',
'flex items-center gap-2 py-3 transition duration-200',
'font-medium' => $isDocsActive,
'opacity-50 hover:translate-x-1 hover:opacity-100' => ! $isDocsActive,
])
aria-current="{{ $isDocsActive ? 'page' : 'false' }}"
>
<div>Docs</div>
@if ($isDocsActive)
<x-icons.right-arrow
class="size-4 shrink-0"
aria-hidden="true"
focusable="false"
/>
@endif

<div>Docs</div>
</a>
</div>

<div
class="h-0.5 w-full rounded-full bg-current opacity-5"
role="presentation"
></div>

{{-- Blog Link --}}
<div class="w-full">
<div>
<a
href="{{ route('blog') }}"
@class([
'flex items-center justify-between py-3 transition duration-200',
'flex items-center gap-2 py-3 transition duration-200',
'font-medium' => $isBlogActive,
'opacity-50 hover:translate-x-1 hover:opacity-100' => ! $isBlogActive,
])
aria-current="{{ $isBlogActive ? 'page' : 'false' }}"
>
<div>Blog</div>
@if ($isBlogActive)
<x-icons.right-arrow
class="size-4 shrink-0"
aria-hidden="true"
focusable="false"
/>
@endif

<div>Blog</div>
</a>
</div>

<div
class="h-0.5 w-full rounded-full bg-current opacity-5"
role="presentation"
></div>

{{-- Shop Link --}}
<div class="w-full">
<div>
<a
href="https://shop.nativephp.com/"
class="flex items-center justify-between py-3 opacity-50 transition duration-200 hover:translate-x-1 hover:opacity-100"
class="flex items-center gap-2 py-3 opacity-50 transition duration-200 hover:translate-x-1 hover:opacity-100"
aria-label="NativePHP Shop"
>
<div>Shop</div>
</a>
</div>

<div
class="h-0.5 w-full rounded-full bg-current opacity-5"
role="presentation"
></div>

<div class="w-full">
<div>
<a
href="/partners"
class="flex items-center justify-between py-3 opacity-50 transition duration-200 hover:translate-x-1 hover:opacity-100"
aria-label="NativePHP Partners"
href="{{ route('partners') }}"
@class([
'flex items-center gap-2 py-3 transition duration-200',
'font-medium' => $isPartnersActive,
'opacity-50 hover:translate-x-1 hover:opacity-100' => ! $isPartnersActive,
])
aria-current="{{ $isPartnersActive ? 'page' : 'false' }}"
>
@if ($isPartnersActive)
<x-icons.right-arrow
class="size-4 shrink-0"
aria-hidden="true"
focusable="false"
/>
@endif

<div>Partners</div>
</a>
</div>

<div
class="h-0.5 w-full rounded-full bg-current opacity-5"
role="presentation"
></div>

{{-- Login/Logout --}}
@feature(App\Features\ShowAuthButtons::class)
<div class="w-full">
<div>
@auth
<form method="POST" action="{{ route('customer.logout') }}" class="w-full">
<form
method="POST"
action="{{ route('customer.logout') }}"
class="w-full"
>
@csrf
<button type="submit" class="flex w-full items-center justify-between py-3 opacity-50 transition duration-200 hover:translate-x-1 hover:opacity-100">
<button
type="submit"
class="flex w-full items-center justify-between py-3 opacity-50 transition duration-200 hover:translate-x-1 hover:opacity-100"
>
<div>Log out</div>
</button>
</form>
@else
<a
href="{{ route('customer.login') }}"
class="flex items-center justify-between py-3 opacity-50 transition duration-200 hover:translate-x-1 hover:opacity-100"
@class([
'flex items-center gap-2 py-3 transition duration-200',
'font-medium' => $isLoginActive,
'opacity-50 hover:translate-x-1 hover:opacity-100' => ! $isLoginActive,
])
aria-current="{{ $isLoginActive ? 'page' : 'false' }}"
>
@if ($isLoginActive)
<x-icons.right-arrow
class="size-4 shrink-0"
aria-hidden="true"
focusable="false"
/>
@endif

<div>Log in</div>
</a>
@endauth
Expand All @@ -218,11 +230,22 @@ class="flex items-center justify-between py-3 opacity-50 transition duration-200
</nav>

<div
class="mb-2 flex w-full items-center justify-between gap-2 pb-2"
class="mt-6 mb-2 flex w-full flex-wrap items-center justify-between gap-2 pb-2"
>
<div>Theme:</div>
{{-- Doc search --}}
<div class="contrast-150 dark:contrast-100">
<div
id="docsearch-mobile"
x-on:click="
window.scrollTo({ top: 0, behavior: 'instant' })
showMobileMenu = false
"
aria-label="Search documentation"
></div>
</div>

<div
class="flex h-10 items-center gap-0.5 rounded-full bg-gray-100 p-1 text-sm ring-1 ring-black/5 dark:bg-black/20 dark:ring-white/10"
class="flex h-10 items-center rounded-full bg-gray-100/90 p-1 text-sm ring-1 ring-black/5 dark:bg-black/20 dark:ring-white/10"
role="radiogroup"
aria-label="Theme preference"
>
Expand All @@ -231,7 +254,7 @@ class="flex h-10 items-center gap-0.5 rounded-full bg-gray-100 p-1 text-sm ring-
role="radio"
:aria-checked="themePreference === 'light'"
x-on:click="themePreference = 'light'; showMobileMenu = false"
class="rounded-full px-3 py-1.5 transition duration-300 ease-in-out"
class="rounded-full px-2.5 py-1.5 transition duration-300 ease-in-out"
:class="{
'bg-zinc-300/70': themePreference === 'light',
}"
Expand All @@ -244,7 +267,7 @@ class="rounded-full px-3 py-1.5 transition duration-300 ease-in-out"
role="radio"
:aria-checked="themePreference === 'system'"
x-on:click="themePreference = 'system'; showMobileMenu = false"
class="rounded-full px-3 py-1.5 transition duration-300 ease-in-out"
class="rounded-full px-2.5 py-1.5 transition duration-300 ease-in-out"
:class="{
'bg-zinc-300/50 dark:bg-gray-200/10': themePreference === 'system',
}"
Expand All @@ -257,7 +280,7 @@ class="rounded-full px-3 py-1.5 transition duration-300 ease-in-out"
role="radio"
:aria-checked="themePreference === 'dark'"
x-on:click="themePreference = 'dark'; showMobileMenu = false"
class="rounded-full px-3 py-1.5 transition duration-300 ease-in-out"
class="rounded-full px-2.5 py-1.5 transition duration-300 ease-in-out"
:class="{
'bg-gray-200/10': themePreference === 'dark',
}"
Expand All @@ -274,10 +297,12 @@ class="h-0.5 w-full rounded-full bg-current opacity-5"
></div>

<nav
class="mt-4 mx-auto flex"
class="mx-auto mt-4 flex"
aria-label="Social media"
>
<div class="grid grid-cols-4 justify-items-center gap-4">
<div
class="flex flex-wrap justify-center-safe gap-4 contrast-120"
>
<x-social-networks-all />
</div>
</nav>
Expand Down
5 changes: 1 addition & 4 deletions resources/views/components/navigation-bar.blade.php
Original file line number Diff line number Diff line change
Expand Up @@ -164,12 +164,9 @@ class="opacity-60 transition duration-200 hover:opacity-100"
{{-- Doc search --}}
<div
class="-mr-0.5 transition-all duration-200 ease-in-out will-change-transform"
:class="{
'pr-0.5': showMobileMenu,
}"
>
<div
id="docsearch"
id="docsearch-desktop"
x-on:click="if (window.innerWidth < 640) window.scrollTo({ top: 0, behavior: 'instant' })"
aria-label="Search documentation"
></div>
Expand Down
Loading