Eliminate all inline scripts to enable script-src 'self' without 'unsafe-inline', providing strong XSS mitigation via CSP. Inline script removal: - login.phtml: replace inline APP_ASSET_BASE with data-asset-base attribute + app-boot.js (matching default.phtml pattern) - api-docs: extract SwaggerUI init to js/pages/admin-api-docs-index.js - docs: extract checkbox enablement to js/pages/admin-docs-index.js - language-switcher: replace onchange handler with data-auto-submit attribute + js/components/app-auto-submit.js event listener CSP policy (dev + prod nginx): default-src 'none'; script-src 'self'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self'; form-action 'self'; base-uri 'self'; frame-ancestors 'none'; manifest-src 'self' Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
26 lines
1.1 KiB
JavaScript
26 lines
1.1 KiB
JavaScript
import './core/app-telemetry.js';
|
|
import './components/app-flash-auto-dismiss.js';
|
|
import './components/app-tabs.js';
|
|
import './components/app-fslightbox-refresh.js';
|
|
import './components/app-password-hints.js';
|
|
import './components/app-copy-badge.js';
|
|
import './components/app-multiselect-init.js';
|
|
import './components/app-nav-history.js';
|
|
import './components/app-toggle-sidebar.js';
|
|
import './components/app-toggle-aside-panels.js';
|
|
import './components/app-toggle-details-aside.js';
|
|
import './components/app-filter-drawer.js';
|
|
import './components/app-active-filter-chips.js';
|
|
import './components/app-global-search.js';
|
|
import './components/app-theme-toggle.js';
|
|
import './components/app-contrast-toggle.js';
|
|
import './components/app-confirm-actions.js';
|
|
import './components/app-details-state.js';
|
|
import './components/app-tenant-switcher.js';
|
|
import './components/app-color-default-toggle.js';
|
|
import './components/app-custom-field-options-toggle.js';
|
|
import './components/app-tenant-sso-toggle.js';
|
|
import './components/app-settings-telemetry.js';
|
|
import './components/app-standard-detail-page.js';
|
|
import './components/app-auto-submit.js';
|