{!! g7_meta_generator_tag() !!} {{ config('app.name', '그누보드7') }} - Admin @include('partials.template-externals-head') @if(empty($activeAdminTemplate)) @include('partials.error-fallback-styles') @endif {{-- 자산 URL 자가 복구 헬퍼 — CSS 의 onerror 보다 먼저 정의되어야 한다 --}} @include('partials.asset-url-recovery') @if(!empty($activeAdminTemplate)) {{-- onerror: 정적 최적화 서버에서 확장자 붙은 CSS 가 가로채였을 때 확장자 없는 형태로 1회 교체한다(무스타일 화면 방지). 링크당 1회. --}} @endif
@if(empty($activeAdminTemplate)) @include('partials.error-fallback-ui') @endif
@if(!empty($activeAdminTemplate)) @include('partials.template-externals-scripts', ['position' => 'before-core']) {{-- 코어 엔진 + 템플릿 컴포넌트 번들 로드 → 초기화 (재시도 + 폴백 UI) --}} @include('partials.bootstrap-scripts', [ 'templateType' => 'admin', {{-- 코어 엔진 번들은 public/ 의 실물 정적 파일이라 자산 URL 이중 모드 대상이 아니다. 미빌드 상태에서 filemtime() 이 warning 을 내지 않도록 file_exists 가드 (coreEditorAsset/coreDevToolsAsset 와 동일 패턴). --}} 'coreEngineSrc' => asset('build/core/template-engine.min.js') . '?v=' . (file_exists(public_path('build/core/template-engine.min.js')) ? filemtime(public_path('build/core/template-engine.min.js')) : 0), 'componentsSrc' => \App\Support\AssetUrl::templateAsset($activeAdminTemplate, 'js/components.iife.js', $extensionCacheVersion), 'initConfig' => array_filter([ 'templateId' => $activeAdminTemplate, 'templateType' => 'admin', 'locale' => app()->getLocale(), 'debug' => (bool) config('app.debug'), 'websocket' => config('broadcasting.connections.reverb.key') ? [ 'appKey' => config('broadcasting.connections.reverb.key'), 'host' => config('g7.websocket.client.host', config('broadcasting.connections.reverb.options.host', 'localhost')), 'port' => (int) config('g7.websocket.client.port', config('broadcasting.connections.reverb.options.port', 80)), 'scheme' => config('g7.websocket.client.scheme', config('broadcasting.connections.reverb.options.scheme', 'https')), ] : null, ], fn ($value) => $value !== null), ]) @include('partials.template-externals-scripts', ['position' => 'body-end']) @endif