app.blade.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. {{-- resources/views/wiki/layouts/app.blade.php
  2. Wiki 栏目布局中间层。
  3. 继承 layouts.library(提供 navbar + footer 外壳)。
  4. 负责:wiki 三栏容器、wiki CSS 注入、term-drawer 全局组件。
  5. --}}
  6. @extends('layouts.library')
  7. @push('styles')
  8. @vite('resources/css/modules/_wiki.css')
  9. @endpush
  10. @section('content')
  11. <div class="container-xl wiki-layout">
  12. {{-- 左侧边栏 --}}
  13. @hasSection('wiki-sidebar-left')
  14. <aside class="wiki-sidebar-left">
  15. @yield('wiki-sidebar-left')
  16. </aside>
  17. @else
  18. @if(isset($lang))
  19. <aside class="wiki-sidebar-left">
  20. @isset($categories)
  21. <div class="wiki-sidebar-section">
  22. <div class="wiki-sidebar-title">分类浏览</div>
  23. <ul class="wiki-cat-list">
  24. <li>
  25. <a href="{{ route('library.wiki.index', ['lang' => $lang]) }}"
  26. class="{{ (request('category', 'all') === 'all') ? 'active' : '' }}">
  27. 全部
  28. </a>
  29. </li>
  30. @foreach ($categories as $cat)
  31. <li>
  32. <a href="{{ route('library.wiki.index', ['lang' => $lang]) }}?category={{ $cat['id'] }}"
  33. class="{{ (request('category', 'all') === $cat['id']) ? 'active' : '' }}">
  34. {{ $cat['label'] }}
  35. @if(isset($cat['count']))
  36. <span class="wiki-cat-count">{{ $cat['count'] }}</span>
  37. @endif
  38. </a>
  39. </li>
  40. @endforeach
  41. </ul>
  42. </div>
  43. @endisset
  44. @isset($recentUpdates)
  45. <div class="wiki-sidebar-section">
  46. <div class="wiki-sidebar-title">最近更新</div>
  47. <ul class="wiki-cat-list">
  48. @foreach ($recentUpdates as $item)
  49. <li>
  50. <a href="{{ route('library.wiki.show', [$item['lang'], $item['word']]) }}">
  51. {{ $item['word'] }}
  52. </a>
  53. </li>
  54. @endforeach
  55. </ul>
  56. </div>
  57. @endisset
  58. </aside>
  59. @endif
  60. @endif
  61. {{-- 主内容区 --}}
  62. <main class="wiki-main">
  63. @yield('wiki-content')
  64. </main>
  65. {{-- 右侧边栏 --}}
  66. <aside class="wiki-sidebar-right">
  67. @yield('wiki-sidebar')
  68. </aside>
  69. </div>
  70. {{-- 术语抽屉(移动端,所有阅读页公用,在此统一挂载) --}}
  71. <x-wiki.term-drawer />
  72. @endsection