!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},s=(new e.Error).stack;s&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[s]="9d544475-050d-4796-91e8-8f4d2dde0bd7",e._sentryDebugIdIdentifier="sentry-dbid-9d544475-050d-4796-91e8-8f4d2dde0bd7")}catch(e){}}(),(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[377],{70812:function(e,s,t){Promise.resolve().then(t.bind(t,54565)),Promise.resolve().then(t.bind(t,90496)),Promise.resolve().then(t.bind(t,77765)),Promise.resolve().then(t.bind(t,42239)),Promise.resolve().then(t.bind(t,62835)),Promise.resolve().then(t.bind(t,18286)),Promise.resolve().then(t.bind(t,48462)),Promise.resolve().then(t.bind(t,3667)),Promise.resolve().then(t.bind(t,19374)),Promise.resolve().then(t.bind(t,3365)),Promise.resolve().then(t.bind(t,84233)),Promise.resolve().then(t.bind(t,65298)),Promise.resolve().then(t.bind(t,41504)),Promise.resolve().then(t.bind(t,33854)),Promise.resolve().then(t.bind(t,37806)),Promise.resolve().then(t.bind(t,80357)),Promise.resolve().then(t.bind(t,15575)),Promise.resolve().then(t.bind(t,10126)),Promise.resolve().then(t.bind(t,84163)),Promise.resolve().then(t.bind(t,35176)),Promise.resolve().then(t.bind(t,78978)),Promise.resolve().then(t.bind(t,98210)),Promise.resolve().then(t.bind(t,63086)),Promise.resolve().then(t.bind(t,30802)),Promise.resolve().then(t.bind(t,32563)),Promise.resolve().then(t.bind(t,92718)),Promise.resolve().then(t.bind(t,5246)),Promise.resolve().then(t.bind(t,68653)),Promise.resolve().then(t.bind(t,69402)),Promise.resolve().then(t.bind(t,42630)),Promise.resolve().then(t.bind(t,10986)),Promise.resolve().then(t.bind(t,48554)),Promise.resolve().then(t.bind(t,80060)),Promise.resolve().then(t.bind(t,31582)),Promise.resolve().then(t.bind(t,62042)),Promise.resolve().then(t.bind(t,35868)),Promise.resolve().then(t.bind(t,83044)),Promise.resolve().then(t.t.bind(t,60880,23)),Promise.resolve().then(t.bind(t,15409))},43553:function(e,s,t){"use strict";t.d(s,{Z:function(){return o}});var r=t(52322);let n=e=>e.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),a=function(){for(var e=arguments.length,s=Array(e),t=0;t!!e&&t.indexOf(e)===s).join(" ")};var l={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let i=(0,r.forwardRef)((e,s)=>{let{color:t="currentColor",size:n=24,strokeWidth:i=2,absoluteStrokeWidth:o,className:d="",children:u,iconNode:c,...m}=e;return(0,r.createElement)("svg",{ref:s,...l,width:n,height:n,stroke:t,strokeWidth:o?24*Number(i)/Number(n):i,className:a("lucide",d),...m},[...c.map(e=>{let[s,t]=e;return(0,r.createElement)(s,t)}),...Array.isArray(u)?u:[u]])}),o=(e,s)=>{let t=(0,r.forwardRef)((t,l)=>{let{className:o,...d}=t;return(0,r.createElement)(i,{ref:l,iconNode:s,className:a("lucide-".concat(n(e)),o),...d})});return t.displayName="".concat(e),t}},68055:function(e,s,t){"use strict";t.d(s,{Z:function(){return r}});let r=(0,t(43553).Z)("Link",[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]])},53371:function(e,s,t){"use strict";t.d(s,{Z:function(){return r}});let r=(0,t(43553).Z)("Star",[["polygon",{points:"12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2",key:"8f66p6"}]])},39618:function(e,s,t){"use strict";t.d(s,{default:function(){return n.a}});var r=t(60880),n=t.n(r)},28774:function(e,s,t){"use strict";var r=t(21279);t.o(r,"useParams")&&t.d(s,{useParams:function(){return r.useParams}}),t.o(r,"usePathname")&&t.d(s,{usePathname:function(){return r.usePathname}}),t.o(r,"useRouter")&&t.d(s,{useRouter:function(){return r.useRouter}}),t.o(r,"useSearchParams")&&t.d(s,{useSearchParams:function(){return r.useSearchParams}})},82049:function(e,s,t){"use strict";t.d(s,{Z:function(){return o}});var r=t(63509),n=t(39618),a=t(68055),l=t(77677),i=t(53371);function o(e){let{posts:s,style:t="cards",forceSubscribeInvite:o=!1}=e;return(0,r.jsxs)("div",{className:"flex flex-col gap-4 justify-center",children:[(0,r.jsxs)("div",{className:"container mx-4 ".concat("cards"===t?"my-4":"my-0"," mx-auto flex flex-wrap gap-4 justify-center"),children:["cards"===t&&s.map((e,s)=>(0,r.jsx)(l.default,{post:e,index:s},e.slug)),"naked"===t&&(0,r.jsx)("div",{className:"flex flex-col gap-2",children:s.map(e=>(0,r.jsxs)("div",{className:"flex flex-row items-center my-0",children:[e.stars>1&&(0,r.jsx)(i.Z,{className:"w-4 h-4 mr-2 text-yellow-500 fill-yellow-500"}),(0,r.jsxs)(n.default,{href:"/posts/".concat(e.slug),className:"flex flex-row items-center text-gray-600 hover:scale-100 no-underline",children:[" ",e.title,(0,r.jsx)(a.Z,{className:"w-4 h-4 ml-2 text-gray-600"})]})]},e.slug))})]}),(0,r.jsxs)("div",{className:"flex flex-col gap-2",children:[(o||s.length<3)&&(0,r.jsxs)("p",{className:"text-tiny text-gray-400 text-center text-balance !my-0",children:["I will add more posts soon (subscribed to"," ",(0,r.jsx)("a",{href:"/newsletter",children:"my newsletter"})," to be notified."]}),(0,r.jsxs)("p",{className:"text-tiny text-gray-400 text-center text-balance !my-0",children:["Click ",(0,r.jsx)("a",{href:"/blog",children:"here"})," to view all of my posts."]})]})]})}},15409:function(e,s,t){"use strict";t.d(s,{default:function(){return o}});var r=t(63509),n=t(52322),a=t(28774),l=t(39618),i=t(82049);function o(e){let{posts:s,tags:t,initialTag:o}=e,d=(0,a.useSearchParams)(),[u,c]=(0,n.useState)(s),[m,b]=(0,n.useState)(o);(0,n.useEffect)(()=>{let e=null==d?void 0:d.get("tag");b(e||""),e?c(s.filter(s=>s.tags&&s.tags.includes(e))):c(s)},[d,s]);let h=()=>(0,r.jsx)(r.Fragment,{children:(0,r.jsxs)("p",{className:"text-center text-sm text-gray-400 mb-4",children:["Showing posts tagged with:"," ",(0,r.jsx)("span",{className:"font-semibold",children:m})," ",(0,r.jsx)(l.default,{href:"/blog",className:"text-blue-600 hover:underline",children:"(clear filter)"})]})}),f=()=>(0,r.jsxs)("div",{className:"max-h-[180px] md:max-h-[700px] overflow-y-auto",children:[(0,r.jsx)("p",{className:"absolute top-0 left-0 right-0 bg-white text-center text-sm font-semibold text-gray-600 mb-2",children:"Filter by tag:"}),(0,r.jsx)("div",{className:"flex flex-wrap items-center justify-center gap-2 overflow-y-auto pt-6",children:t.sort((e,s)=>s.count-e.count).map(e=>(0,r.jsxs)(l.default,{href:"/blog?tag=".concat(e.tag),className:"text-center capitalize p-1 items-center rounded-full text-tiny h-6 mb-0 bg-gray-200 px-2 py-1 hover:bg-gray-300 text-gray-600 no-underline",children:[e.tag.length>20?e.tag.substring(0,20)+"...":e.tag," ","(",e.count,")"]},e.tag))})]});return(0,r.jsxs)("div",{className:"relative flex flex-row md:gap-8 justify-between mx-auto",children:[(0,r.jsx)(i.Z,{posts:u}),(0,r.jsx)("div",{id:"mobile-filter-container",className:"md:hidden",children:(0,r.jsx)("div",{className:"fixed bottom-0 right-0 z-20 border border-gray-400 shadow-lg bg-white rounded-lg mx-4 my-2 p-2",children:(0,r.jsx)("div",{className:"relative",children:m?(0,r.jsx)(h,{}):(0,r.jsx)(f,{})})})}),(0,r.jsx)("div",{id:"desktop-filter-container",className:"hidden md:block",children:(0,r.jsx)("div",{className:"sticky top-20 w-96 m-1 mt-4 p-2 z-20 border border-gray-400 shadow-lg bg-white rounded-lg",children:(0,r.jsx)("div",{className:"relative",children:m?(0,r.jsx)(h,{}):(0,r.jsx)(f,{})})})})]})}},77677:function(e,s,t){"use strict";var r=t(63509),n=t(86570),a=t(79774),l=t(99644),i=t(14129),o=t(79962);s.default=e=>{let{post:s,index:t}=e;return(0,r.jsx)("div",{className:"mx-auto w-full md:max-w-[48%] 2xl:max-w-[31%]",children:(0,r.jsxs)(n.w,{as:a.O,href:"/posts/".concat(s.slug),classNames:{base:"no-button-style z-0 p-2 w-full min-w-64 cursor-pointer"},children:[(0,r.jsx)(l.u,{className:"py-1 md:py-2 lg:py-3",children:(0,r.jsxs)("div",{className:"w-full flex justify-between items-start",children:[(0,r.jsx)("span",{className:"text-left text-balance font-semibold",children:s.title}),(0,r.jsxs)("div",{className:"flex justify-end mt-1 ml-2",children:[s.stars>=2&&(0,r.jsx)("span",{className:"text-tiny rounded-md px-1 py-0.5 text-nowrap text-rose-600 border border-rose-600",children:"Most popular"}),(s.stars>=1&&s.stars<2||0===t&&s.stars<1&&s.stars>0)&&(0,r.jsx)("span",{className:"text-tiny rounded-md px-1 py-0.5 text-orange-500 border border-orange-500",children:"Popular"}),0===s.stars&&0===t&&(0,r.jsx)("span",{className:"text-tiny rounded-md px-1 py-0.5 text-nowrap text-orange-500 border border-orange-500",children:"Most recent"})]})]})}),(0,r.jsx)(i.G,{className:"py-2",children:(0,r.jsx)("span",{className:"text-sm text-gray-500",children:s.description})}),(0,r.jsxs)(o.i,{className:"flex justify-between items-end py-1 md:py-2 lg:py-3",children:[(0,r.jsx)("span",{className:"text-tiny text-gray-400 min-w-20",children:s.date}),(0,r.jsx)("div",{className:"flex flex-wrap space-x-1 justify-end",children:s.tags.map(e=>(0,r.jsxs)("span",{className:"text-tiny text-gray-400",children:["#",e]},e))})]})]})})}},14129:function(e,s,t){"use strict";t.d(s,{G:function(){return d}});var r=t(72189),n=t(79472),a=t(69860),l=t(49700),i=t(63509),o=(0,n.Gp)((e,s)=>{var t;let{as:n,className:o,children:d,...u}=e,c=(0,a.gy)(s),{slots:m,classNames:b}=(0,r.R)(),h=(0,l.W)(null==b?void 0:b.body,o);return(0,i.jsx)(n||"div",{ref:c,className:null==(t=m.body)?void 0:t.call(m,{class:h}),...u,children:d})});o.displayName="NextUI.CardBody";var d=o},86570:function(e,s,t){"use strict";t.d(s,{w:function(){return d}});var r=t(72189),n=t(65929),a=t(79472),l=t(19153),i=t(63509),o=(0,a.Gp)((e,s)=>{let{children:t,context:a,Component:o,isPressable:d,disableAnimation:u,disableRipple:c,getCardProps:m,getRippleProps:b}=(0,n.n)({...e,ref:s});return(0,i.jsxs)(o,{...m(),children:[(0,i.jsx)(r.k,{value:a,children:t}),d&&!u&&!c&&(0,i.jsx)(l.L,{...b()})]})});o.displayName="NextUI.Card";var d=o},65929:function(e,s,t){"use strict";t.d(s,{n:function(){return y}});var r=t(39475),n=t(81048),a=(0,r.tv)({slots:{base:["flex","flex-col","relative","overflow-hidden","h-auto","outline-none","text-foreground","box-border","bg-content1",...n.Dh],header:["flex","p-3","z-10","w-full","justify-start","items-center","shrink-0","overflow-inherit","color-inherit","subpixel-antialiased"],body:["relative","flex","flex-1","w-full","p-3","flex-auto","flex-col","place-content-inherit","align-items-inherit","h-auto","break-words","text-left","overflow-y-auto","subpixel-antialiased"],footer:["p-3","h-auto","flex","w-full","items-center","overflow-hidden","color-inherit","subpixel-antialiased"]},variants:{shadow:{none:{base:"shadow-none"},sm:{base:"shadow-small"},md:{base:"shadow-medium"},lg:{base:"shadow-large"}},radius:{none:{base:"rounded-none",header:"rounded-none",footer:"rounded-none"},sm:{base:"rounded-small",header:"rounded-t-small",footer:"rounded-b-small"},md:{base:"rounded-medium",header:"rounded-t-medium",footer:"rounded-b-medium"},lg:{base:"rounded-large",header:"rounded-t-large",footer:"rounded-b-large"}},fullWidth:{true:{base:"w-full"}},isHoverable:{true:{base:"data-[hover=true]:bg-content2 dark:data-[hover=true]:bg-content2"}},isPressable:{true:{base:"cursor-pointer"}},isBlurred:{true:{base:["bg-background/80","dark:bg-background/20","backdrop-blur-md","backdrop-saturate-150"]}},isFooterBlurred:{true:{footer:["bg-background/10","backdrop-blur","backdrop-saturate-150"]}},isDisabled:{true:{base:"opacity-disabled cursor-not-allowed"}},disableAnimation:{true:"",false:{base:"transition-transform-background motion-reduce:transition-none"}}},compoundVariants:[{isPressable:!0,class:"data-[pressed=true]:scale-[0.97] tap-highlight-transparent"}],defaultVariants:{radius:"lg",shadow:"md",fullWidth:!1,isHoverable:!1,isPressable:!1,isDisabled:!1,isFooterBlurred:!1}}),l=t(52322),i=t(91251),o=t(91560),d=t(69289),u=t(68736),c=t(38357),m=t(5053),b=t(79472),h=t(49700),f=t(15078),x=t(46595),v=t(24099),p=t(69860),g=t(99099);function y(e){var s,t,r,n;let y=(0,m.w)(),[w,j]=(0,b.oe)(e,a.variantKeys),{ref:P,as:N,children:k,onClick:C,onPress:D,autoFocus:B,className:E,classNames:Z,allowTextSelectionOnPress:_=!0,...I}=w,R=(0,p.gy)(P),S=N||(e.isPressable?"button":"div"),W="string"==typeof S,z=null!=(t=null!=(s=e.disableAnimation)?s:null==y?void 0:y.disableAnimation)&&t,F=null!=(n=null!=(r=e.disableRipple)?r:null==y?void 0:y.disableRipple)&&n,A=(0,h.W)(null==Z?void 0:Z.base,E),{onClick:H,onClear:M,ripples:L}=(0,g.i)(),G=e=>{z||F||!R.current||H(e)},{buttonProps:O,isPressed:T}=(0,c.j)({onPress:D,elementType:N,isDisabled:!e.isPressable,onClick:(0,i.t)(C,G),allowTextSelectionOnPress:_,...I},R),{hoverProps:q,isHovered:U}=(0,u.X)({isDisabled:!e.isHoverable,...I}),{isFocusVisible:V,isFocused:X,focusProps:$}=(0,d.F)({autoFocus:B}),K=(0,l.useMemo)(()=>a({...j,disableAnimation:z}),[(0,f.Xx)(j),z]),J=(0,l.useMemo)(()=>({slots:K,classNames:Z,disableAnimation:z,isDisabled:e.isDisabled,isFooterBlurred:e.isFooterBlurred,fullWidth:e.fullWidth}),[K,Z,e.isDisabled,e.isFooterBlurred,z,e.fullWidth]),Q=(0,l.useCallback)(function(){let s=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return{ref:R,className:K.base({class:A}),tabIndex:e.isPressable?0:-1,"data-hover":(0,x.PB)(U),"data-pressed":(0,x.PB)(T),"data-focus":(0,x.PB)(X),"data-focus-visible":(0,x.PB)(V),"data-disabled":(0,x.PB)(e.isDisabled),...(0,o.d)(e.isPressable?{...O,...$,role:"button"}:{},e.isHoverable?q:{},(0,v.z)(I,{enabled:W}),(0,v.z)(s))}},[R,K,A,W,e.isPressable,e.isHoverable,e.isDisabled,U,T,V,O,$,q,I]),Y=(0,l.useCallback)(()=>({ripples:L,onClear:M}),[L,M]);return{context:J,domRef:R,Component:S,classNames:Z,children:k,isHovered:U,isPressed:T,disableAnimation:z,isPressable:e.isPressable,isHoverable:e.isHoverable,disableRipple:F,handleClick:G,isFocusVisible:V,getCardProps:Q,getRippleProps:Y}}},72189:function(e,s,t){"use strict";t.d(s,{R:function(){return n},k:function(){return r}});var[r,n]=(0,t(23746).k)({name:"CardContext",strict:!0,errorMessage:"useCardContext: `context` is undefined. Seems you forgot to wrap component within "})},89927:function(e,s,t){"use strict";t.d(s,{G:function(){return n}});var r=t(52322),n=(null==globalThis?void 0:globalThis.document)?r.useLayoutEffect:r.useEffect}},function(e){e.O(0,[812,1,834,880,322,345,738,244,4,414,744],function(){return e(e.s=70812)}),_N_E=e.O()}]);