PageSourceSearch

https://www.eatrightpro.org/Areas/Shared/scripts/7310.b190901ca6e9caf873b6.js

js eatrightpro.org collected 2026-10-09 21:39:54 UTC 3,711 bytes, 3 lines download raw bytes

1"use strict";(self.webpackChunk_verndale_toolkit=self.webpackChunk_verndale_toolkit||[]).push([[7310],{77310:function(u,n,r){r.r(n);var d=r(39551);const s={savedMessage:"Saved to Your Academy Favorites",pendingSaveParam:"save",loginUrlField:"redirectUrl"};class h extends d.wA{setupDefaults(){this.dom={save:this.el.querySelector("[data-save]"),login:this.el.querySelector("[data-login]"),nativeShare:this.el.querySelector("[data-native-share]")};const{bookmarkEndpoint:e,loginUrl:t,loginUrlField:i,pageId:a,pendingSaveParam:l,saved:o,savedMessage:g,shareUrl:v,shareTitle:c}=this.el.dataset;this.bookmarkEndpoint=e||"",this.pageId=a||"",this.shareUrl=v||window.location.href,this.shareTitle=c||document.title,this.savedMessage=g||s.savedMessage,this.pendingSaveParam=l||s.pendingSaveParam,this.loginUrlField=i||s.loginUrlField,this.pending=!1,this.loginUrl=this.dom.login?.dataset.loginUrl||t||"",this.saved=o!==void 0?o==="true":this.dom.save?.getAttribute("aria-pressed")==="true",this.resumingPendingSave=!1,this.setSavedState(this.saved)}addListeners(){this.dom.save?.addEventListener("click",this.handleSave.bind(this)),this.dom.login?.addEventListener("click",this.handleLogin.bind(this)),this.dom.nativeShare?.addEventListener("click",this.handleNativeShare.bind(this)),this.resumePendingSave()}async handleSave(){if(this.pending)return;const e=!this.saved;this.bookmarkEndpoint&&!await this.persistBookmark(e)||this.applySavedState(e)}handleLogin(){this.el.dispatchEvent(new CustomEvent("content-actions:login-required",{bubbles:!0,detail:{pageId:this.pageId,url:this.shareUrl}})),this.loginUrl&&window.location.assign(this.loginUrl)}async resumePendingSave(){const e=!!(this.dom.save&&this.bookmarkEndpoint);if(!e&&!this.dom.login)return;const t=new URLSearchParams(window.location.search);if(t.get(this.pendingSaveParam)!=="true")return;t.delete(this.pendingSaveParam);const i=t.toString();if(window.history.replaceState({},"",`${window.location.pathname}${i?`?${i}`:""}${window.location.hash}`),!e||this.saved)return;this.resumingPendingSave=!0;const a=await this.persistBookmark(!0);this.resumingPendingSave=!1,a&&this.applySavedState(!0)}applySavedState(e){this.setSavedState(e),e&&document.dispatchEvent(new CustomEvent("toast:show",{detail:{message:this.savedMessage,iconId:"bookmark-fill"}})),this.el.dispatchEvent(new CustomEvent("content-actions:save",{bubbles:!0,detail:{saved:e,pageId:this.pageId,url:this.shareUrl}}))}async persistBookmark(e){this.setPending(!0);try{const t=await fetch(this.bookmarkEndpoint,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"same-origin",body:JSON.stringify({pageId:this.pageId,bookmarked:e})});if(t.status===401||t.status===403)return this.el.dispatchEvent(new CustomEvent("content-actions:login-required",{bubbles:!0,detail:{pageId:this.pageId,url:this.shareUrl}})),this.resumingPendingSave||await this.redirectToLogin(t),!1;if(!t.ok)throw new Error(`Bookmark request failed: ${t.status}`);return!0}catch(t){return console.error(t),!1}finally{this.setPending(!1)}}async redirectToLogin(e){let t="";try{t=(await e.json())?.[this.loginUrlField]||""}catch{}t=t||this.loginUrl,t&&window.location.assign(t)}setPending(e){this.pending=e,this.dom.save&&(this.dom.save.disabled=e,this.dom.save.setAttribute("aria-busy",String(e)))}setSavedState(e){this.saved=e,this.dom.save&&(this.dom.save.setAttribute("aria-pressed",String(e)),this.dom.save.classList.toggle("is-saved",e))}async handleNativeShare(){const e={title:this.shareTitle,url:this.shareUrl};if(navigator.share){try{await navigator.share(e)}catch{}return}this.el.classList.add("content-actions--fallback")}}n.default=h}}]);
2
3//# sourceMappingURL=7310.b190901ca6e9caf873b6.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.