Jake Vanderwerf
2026-05-11 ac444cba221832c012c0435fdc8339fe9f37febb
assets/js/concise/AuthManager.js
@@ -17,8 +17,8 @@
      this.nonces = {};
      this.subscribers = new Set();
      this.storageKey = 'jvb_auth_state';
      this.cacheMetaKey = 'jvb_auth_meta';
      this.storageKey = `${jvbBase.base}auth_state`;
      this.cacheMetaKey = `${jvbBase.base}auth_meta`;
      this.cacheExpiry = 5 * 60 * 1000; // 5 minutes
      this.init();
@@ -74,8 +74,10 @@
    */
   async fetch(url, options = {}) {
      const attempt = async (retryCount = 0) => {
         const isFormData = options.body instanceof FormData;
         const headers = {
            'Content-Type': 'application/json',
            ...(!isFormData && { 'Content-Type': 'application/json' }),
            ...options.headers,
            'X-WP-Nonce': this.getNonce()
         };
@@ -86,13 +88,12 @@
            headers
         });
         // If auth failed and we haven't retried yet, refresh and try once more
         if ((response.status === 403 || response.status === 401) && retryCount === 0) {
            const result = await response.clone().json();
            if (resconsole.logult.code === 'rest_cookie_invalid_nonce' || result.message?.includes('Cookie check')) {
               ('Nonce invalid, refreshing auth...');
            if (result.code === 'rest_cookie_invalid_nonce' || result.message?.includes('Cookie check')) {
               console.log('Nonce invalid, refreshing auth...');
               await this.refresh();
               return attempt(1); // Retry once
               return attempt(retryCount + 1);
            }
         }
@@ -141,9 +142,16 @@
    * Set authentication data
    */
   setAuthData(authData) {
      const wasAuthenticated = this.initialized && this.authenticated;
      this.authenticated = authData.authenticated || false;
      this.user = authData.user || false;
      this.nonces = authData.nonces || {};
      // Session expired — was logged in, now isn't
      if (wasAuthenticated && !this.authenticated) {
         window.location.href = `/login?redirect_to=${encodeURIComponent(window.location.href)}`;
      }
   }
   /**