PageSourceSearch

https://guidy.ai/_nuxt/CqSPWBaB.js

js guidy.ai collected 2026-10-05 12:01:40 UTC 4,628 bytes, 1 lines download raw bytes

1import{w as N,e as B,h as o,i as n,j as t,z as s,I,af as k,ag as V,aQ as U,ah as S,B as j,M as T,aR as D,K as v,G as w,L as E,H as $,r as h,g as u,aS as L,N as M,f as q,E as K,F as R,S as F,T as O,C as z,U as H,v as Q,k as Y}from"./5kN0Q-Sq.js";import{_ as J}from"./BG7zbOuQ.js";import{_ as W}from"./uWoHyOH0.js";import{a as X}from"./BFXagX4M.js";import"./D-pDahf4.js";const Z={class:"newsletter-card"},ee={class:"newsletter-inner"},te={class:"newsletter-form"},se={class:"form-field"},oe=["disabled"],ae={key:0,class:"form-field-error"},ne=["disabled"],le={class:"newsletter-consent"},ie={class:"newsletter-consent-text"},re={key:1,class:"newsletter-heading"},ue=N({__name:"BlogNewsletterSignup",setup(P){const{$sdk:c}=B(),l=h(""),d=h(!1),i=h(null),a=h(!1),p=h(!1),_=u(()=>d.value&&l.value.trim().length>0&&!a.value);async function b(){if(!_.value)return;i.value=null;const m=L.safeParse({email:l.value});if(!m.success){i.value=m.error.flatten().fieldErrors.email?.[0]??"Please enter a valid email";return}a.value=!0;try{await c.notify.subscribeNewsletter(m.data),p.value=!0}catch{i.value="Something went wrong, try again."}finally{a.value=!1}}return(m,e)=>{const f=E;return o(),n("div",Z,[t("div",ee,[s(p)?(o(),n("div",re,[...e[9]||(e[9]=[t("h2",{class:"newsletter-title"},"You're on the list.",-1),t("p",{class:"newsletter-subtitle"}," Thanks for subscribing — keep an eye on your inbox for our next set of tips. ",-1)])])):(o(),n(I,{key:0},[e[8]||(e[8]=t("div",{class:"newsletter-heading"},[t("h2",{class:"newsletter-title"},"Subscribe to our newsletter"),t("p",{class:"newsletter-subtitle"}," Get our best tips delivered monthly, straight to your inbox. ")],-1)),t("div",te,[t("div",se,[k(t("input",{"onUpdate:modelValue":e[0]||(e[0]=g=>S(l)?l.value=g:null),type:"email",placeholder:"Email address",disabled:s(a),onInput:e[1]||(e[1]=g=>i.value=null),onKeyup:U(b,["enter"])},null,40,oe),[[V,s(l)]]),s(i)?(o(),n("span",ae,j(s(i)),1)):T("",!0)]),t("button",{class:"btn-primary newsletter-submit",disabled:!s(_),onClick:b}," Subscribe ",8,ne),t("label",le,[k(t("input",{"onUpdate:modelValue":e[2]||(e[2]=g=>S(d)?d.value=g:null),type:"checkbox"},null,512),[[D,s(d)]]),e[7]||(e[7]=t("span",{class:"newsletter-consent-box","aria-hidden":"true"},null,-1)),t("span",ie,[e[5]||(e[5]=v(" I agree with Guidy's ",-1)),w(f,{to:"/terms-of-use/",class:"newsletter-consent-link"},{default:$(()=>[...e[3]||(e[3]=[v("Terms of Use",-1)])]),_:1}),e[6]||(e[6]=v(" and ",-1)),w(f,{to:"/privacy-policy/",class:"newsletter-consent-link"},{default:$(()=>[...e[4]||(e[4]=[v("Privacy Policy",-1)])]),_:1})])])])],64))])])}}}),ce=Object.assign(M(ue,[["__scopeId","data-v-3f4e5c34"]]),{__name:"BlogNewsletterSignup"}),de={class:"blog-page container"},pe={class:"blog-hero"},me={class:"blog-list-section"},ge={key:0,class:"blog-grid"},_e={key:1,class:"blog-empty"},fe={key:2,class:"blog-pagination"},he=N({__name:"index",async setup(P){let c,l;const d=q(),{$sdk:i}=B(),a=u(()=>Math.max(1,parseInt(String(d.query.page??"1"))||1)),{data:p}=([c,l]=K(()=>Y(()=>`blog-${a.value}`,()=>i.blog.getAll(a.value),{watch:[a]})),c=await c,l(),c),_=u(()=>p.value?.articles??[]),b=u(()=>p.value?.total??0),m=u(()=>p.value?.limit??18),e=u(()=>Math.max(1,Math.ceil(b.value/m.value))),f=u(()=>_.value.map(r=>({to:`/blog/${r.slug}/`,image:r.image,title:r.title,readTime:`${r.readMinutes} min read`})));function g(r){Q({path:"/blog/",query:{page:r>1?r:void 0}})}return R({title:"Guidy Blog | AI Desktop Assistant Tips & Updates",description:"Tips, how-tos, and product updates from the Guidy team. Learn how to get more out of your AI desktop assistant and master any software, faster."}),F(X(_.value)),(r,y)=>{const A=ce,C=J,G=W;return o(),n("div",de,[t("section",pe,[y[0]||(y[0]=t("div",{class:"blog-hero-text"},[t("h1",{class:"page-title headline-1"},"Blog"),t("p",{class:"page-description"}," Most software is more capable than we give it credit for, we just never find the right button. This blog is our ongoing attempt to fix that. Small walkthroughs, quiet time-savers, and the occasional feature that's been sitting there the whole time. If it helps one person avoid a pointless hour of clicking around, Guidy’s done its job. ")
1],-1)),w(A,{class:"blog-hero-newsletter"})]),t("section",me,[s(f).length?(o(),n("div",ge,[(o(!0),n(I,null,O(s(f),x=>(o(),z(C,H({key:x.to},{ref_for:!0},x),null,16))),128))])):(o(),n("p",_e,"No articles yet — check back soon.")),s(e)>1?(o(),n("div",fe,[w(G,{"current-page":s(a),"total-pages":s(e),onChange:g},null,8,["current-page","total-pages"])])):T("",!0)])])}}}),ke=M(he,[["__scopeId","data-v-b995767d"]]);export{ke as default};

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.