'; echo '
'; echo ''; } public function enqueue_admin_assets($hook): void { $screen = function_exists('get_current_screen') ? get_current_screen() : null; if (!$screen || $screen->base !== 'toplevel_page_' . self::PAGE_SLUG) { return; } $build_dir = trailingslashit(AKSRT_DIR) . 'assets/admin/build/'; $build_uri = trailingslashit(AKSRT_URI) . 'assets/admin/build/'; $css_files = [ 'naive-ui.css', 'index.css', 'index2.css', ]; foreach ($css_files as $css_file) { $path = $build_dir . $css_file; if (file_exists($path)) { wp_enqueue_style( 'aksrt-admin-' . sanitize_key(str_replace(['.', '/'], '-', $css_file)), $build_uri . $css_file, [], (string) filemtime($path) ); } } $entry = $build_dir . 'index.js'; if (file_exists($entry)) { wp_enqueue_script( 'aksrt-admin-app', $build_uri . 'index.js', [], (string) filemtime($entry), true ); wp_localize_script('aksrt-admin-app', 'aksrtAdminData', [ 'apiUrl' => esc_url_raw(rest_url(self::API_NAMESPACE)), 'nonce' => wp_create_nonce('wp_rest'), 'siteUrl' => home_url('/'), 'adminUrl' => admin_url('/'), 'themeVersion' => wp_get_theme()->get('Version') ?: '3.4.0-dev', ]); } wp_enqueue_media(); } public function add_module_type_attribute(string $tag, string $handle): string { if ('aksrt-admin-app' === $handle) { return str_replace('