@rizom/brain 0.2.0-alpha.258 → 0.2.0-alpha.259

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/site.js CHANGED
@@ -1,5 +1,5 @@
1
1
  // @bun
2
- import{Ab as Y0,Db as U,Ga as Z0,Ma as a,Na as q0,Oa as M0,Pa as r,Qa as h,Za as P,_a as g,la as L,ma as X0,oa as R,ua as $0,va as R0,wa as S,wb as z,xb as k,yb as I,zb as N0}from"./chunks/index-ga7bq62s.js";import"./chunks/index-npee9ahv.js";import"./chunks/index-wgvqkry5.js";import"./chunks/index-e16dgk7f.js";import"./chunks/index-z292a1td.js";import"./chunks/index-pghefxjz.js";import"./chunks/index-q7vxqhw0.js";import{Fc as m}from"./chunks/index-7ytt9vvj.js";import"./chunks/index-7rpsxmkw.js";import"./chunks/index-b321g3dq.js";import"./chunks/index-x1z91h8f.js";import"./chunks/index-fd1gxz8a.js";import"./chunks/index-ra0ektdg.js";import"./chunks/index-b8fr3719.js";import{zh as v}from"./chunks/index-gq8ts1j6.js";import"./chunks/index-sam9qxh9.js";import{Qi as G}from"./chunks/index-8p1j80d4.js";import"./chunks/index-88hscfqt.js";var A=G.string().nullable().default(null),H=G.object({name:G.string(),organization:A,description:A,avatar:A,website:A,email:A,socialLinks:G.array(G.object({platform:G.enum(["github","instagram","linkedin","email","website"]),url:G.string(),label:A})).nullable().default(null),tagline:A,intro:A,story:A,audience:A});class b{postsListUrl;id="personal:homepage";name="Personal Homepage DataSource";description="Fetches profile and blog posts for a personal homepage";constructor(w){this.postsListUrl=w}async fetch(w,Q,X){let W=X.entityService,[$,O,M]=await Promise.all([U(W,H),k(W,{entityType:"post",count:6,parse:P}),z(W)]),F={profile:$,posts:O,postsListUrl:this.postsListUrl,cta:I(M.cta)};return Q.parse(F)}}class d{id="personal:about";name="About Page DataSource";description="Fetches full profile data for the about page";async fetch(w,Q,X){let $={profile:await U(X.entityService,H)};return Q.parse($)}}import{jsxDEV as K,Fragment as K0}from"preact/jsx-dev-runtime";function T0(w){return new Date(w).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}function y0(w){return w.split(/(\*[^*]+\*)/).map((Q,X)=>{if(Q.startsWith("*")&&Q.endsWith("*")&&Q.length>2)return K("em",{className:"font-sans italic font-medium text-theme-inverse tracking-[-0.015em] [font-variation-settings:'opsz'_72]",children:Q.slice(1,-1)},X,!1,void 0,this);return Q})}var x=({profile:w,posts:Q,postsListUrl:X,cta:W})=>{let $=w.tagline??w.description,O=w.name.split(" ")[0];return K(K0,{children:[K(R,{title:w.name,description:w.description??$??"Personal site",ogType:"website"},void 0,!1,void 0,this),K("header",{className:"hero-decor bg-brand text-theme-inverse relative flex flex-col items-center justify-center px-6 md:px-12 pt-32 pb-24 gap-7",children:K("div",{className:"w-full max-w-[1100px] mx-auto text-center flex flex-col items-center gap-7",children:[$&&K("h1",{className:"font-heading font-bold text-[clamp(2.5rem,6vw,5rem)] leading-[1.05] tracking-[-0.035em] text-theme-inverse text-balance m-0 [font-variation-settings:'wdth'_90,'opsz'_96]",children:y0($)},void 0,!1,void 0,this),w.description&&K("p",{className:"text-[clamp(1.0625rem,1.4vw,1.3125rem)] leading-[1.5] text-theme-inverse opacity-95 max-w-[600px] mx-auto m-0",children:w.description},void 0,!1,void 0,this),K("div",{className:"flex flex-wrap justify-center gap-3.5 mt-2",children:[K("a",{href:X,className:"inline-flex items-center gap-2 rounded-full py-3.5 px-7 bg-theme text-brand border-2 border-theme font-heading font-semibold text-[15px] hover:bg-theme-subtle hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:["Read the Blog ",K("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("a",{href:"/about",className:"rounded-full py-3.5 px-7 border-2 border-theme-light text-theme-inverse font-heading font-semibold text-[15px] hover:bg-brand-dark hover:border-theme hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:["About ",O]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),Q.length>0&&K("section",{className:"flex flex-col py-24 px-6 md:px-12 gap-11 bg-theme-subtle",children:[K("div",{className:"flex justify-between items-end max-w-layout mx-auto w-full gap-6 flex-wrap",children:[K("div",{children:[K("span",{className:"block font-heading font-semibold text-[13px] uppercase tracking-[0.22em] text-brand mb-3 [font-variation-settings:'wdth'_85,'opsz'_12]",children:"The Archive"},void 0,!1,void 0,this),K("h2",{className:"font-heading font-bold text-[clamp(2.25rem,5vw,3.75rem)] leading-none tracking-[-0.03em] text-heading m-0 [font-variation-settings:'wdth'_92,'opsz'_64]",children:["Recent"," ",K("em",{className:"font-sans italic font-medium text-brand [font-variation-settings:'opsz'_60]",children:"posts"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),K("a",{href:X,className:"font-heading font-semibold text-[15px] text-brand inline-flex items-center gap-1.5 pb-1.5 border-b-2 border-current hover:text-brand-dark transition-colors [font-variation-settings:'wdth'_88,'opsz'_16]",children:["View the whole archive ",K("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),K("div",{className:"grid grid-cols-[repeat(auto-fit,minmax(min(100%,320px),1fr))] gap-8 max-w-layout mx-auto w-full",children:Q.map((M)=>K("a",{href:M.url,className:"group flex flex-col bg-theme border border-theme rounded-md overflow-hidden hover:-translate-y-1 hover:border-brand/50 transition-all no-underline shadow-sm hover:shadow-lg",children:[M.coverImageUrl?K("img",{src:M.coverImageUrl,alt:M.metadata.title,className:"w-full aspect-[16/10] object-cover bg-theme-muted"},void 0,!1,void 0,this):K("div",{className:"w-full aspect-[16/10] bg-gradient-to-br from-brand to-accent","aria-hidden":"true"},void 0,!1,void 0,this),K("div",{className:"flex flex-col gap-4 p-7 flex-1",children:[K("div",{className:"flex flex-wrap items-center gap-3.5 font-heading text-[11px] font-semibold uppercase tracking-[0.18em] text-theme-muted [font-variation-settings:'wdth'_85,'opsz'_11]",children:[M.frontmatter.seriesName&&K(K0,{children:[K("span",{className:"text-brand",children:M.frontmatter.seriesName},void 0,!1,void 0,this),K("span",{className:"w-[3px] h-[3px] rounded-full bg-current opacity-50","aria-hidden":"true"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("time",{children:T0(M.metadata.publishedAt??M.created)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("h3",{className:"font-sans font-semibold text-[clamp(1.375rem,1.8vw,1.625rem)] leading-[1.18] tracking-[-0.012em] text-heading m-0 text-balance",children:M.metadata.title},void 0,!1,void 0,this),M.frontmatter.excerpt&&K("p",{className:"text-base leading-[1.55] text-theme-muted m-0 flex-1",children:M.frontmatter.excerpt},void 0,!1,void 0,this),K("span",{className:"inline-flex items-center gap-1.5 font-heading font-semibold text-[13px] uppercase tracking-[0.14em] text-brand mt-1 [font-variation-settings:'wdth'_88,'opsz'_14]",children:["Read the post"," ",K("span",{"aria-hidden":"true",className:"transition-transform group-hover:translate-x-1",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},M.id,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("section",{className:"cta-decor bg-theme-dark text-theme-on-dark flex-grow flex flex-col items-center justify-center py-24 px-6 md:px-12 gap-5",children:[K("span",{className:"font-heading font-medium text-xs uppercase tracking-[0.24em] text-accent [font-variation-settings:'wdth'_85,'opsz'_12]",children:"Get in touch"},void 0,!1,void 0,this),K("h2",{className:"text-center font-heading font-bold text-[clamp(2rem,4vw,3rem)] leading-none tracking-[-0.03em] text-theme-on-dark m-0 [font-variation-settings:'wdth'_90,'opsz'_64]",children:W.heading},void 0,!1,void 0,this),W.subtitle&&K("p",{className:"text-center text-base leading-[1.55] text-theme-on-dark opacity-80 max-w-[480px] m-0",children:W.subtitle},void 0,!1,void 0,this),K("a",{href:W.buttonLink,className:"inline-flex items-center gap-2 rounded-full py-3.5 px-7 bg-brand text-theme-inverse border-2 border-brand font-heading font-semibold text-[15px] hover:bg-brand-dark hover:-translate-y-0.5 transition-all mt-2 [font-variation-settings:'wdth'_92,'opsz'_18]",children:[W.buttonText," ",K("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};import{jsxDEV as _,Fragment as C0}from"preact/jsx-dev-runtime";var D=({profile:w})=>{let Q=`About ${w.name}`,X=w.description??w.intro??"About page",W=Boolean(w.email??w.website);return _(C0,{children:[_(R,{title:Q,description:X,ogType:"profile"},void 0,!1,void 0,this),_("section",{className:"hero-decor bg-brand text-theme-inverse relative flex flex-col px-6 md:px-12 pt-32 pb-24",children:_("div",{className:"w-full max-w-3xl mx-auto flex flex-col gap-6",children:[_("h1",{className:"font-heading font-bold text-[clamp(2.5rem,6vw,4.5rem)] leading-[1.05] tracking-[-0.035em] text-theme-inverse text-balance m-0 [font-variation-settings:'wdth'_90,'opsz'_96]",children:w.name},void 0,!1,void 0,this),w.description&&_("p",{className:"text-[clamp(1.0625rem,1.4vw,1.25rem)] leading-[1.55] text-theme-inverse opacity-95 max-w-2xl m-0",children:w.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),w.story&&_("section",{className:`py-24 px-6 md:px-12 bg-theme-subtle${W?"":" flex-grow"}`,children:_("div",{className:"max-w-3xl mx-auto",children:_(h,{markdown:w.story},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),W&&_("section",{className:"cta-decor bg-theme-dark text-theme-on-dark flex-grow flex flex-col items-center justify-center py-24 px-6 md:px-12 gap-5",children:[_("span",{className:"font-heading font-medium text-xs uppercase tracking-[0.24em] text-accent [font-variation-settings:'wdth'_85,'opsz'_12]",children:"Get in touch"},void 0,!1,void 0,this),_("h2",{className:"text-center font-heading font-bold text-[clamp(2rem,4vw,3rem)] leading-none tracking-[-0.03em] text-theme-on-dark m-0 [font-variation-settings:'wdth'_90,'opsz'_64]",children:["Say"," ",_("em",{className:"font-sans italic font-medium text-accent [font-variation-settings:'opsz'_72]",children:"hi."},void 0,!1,void 0,this)]},void 0,!0,void 0,this),_("div",{className:"flex flex-wrap justify-center gap-3.5 mt-2",children:[w.email&&_("a",{href:`mailto:${w.email}`,className:"inline-flex items-center gap-2 rounded-full py-3.5 px-7 bg-brand text-theme-inverse border-2 border-brand font-heading font-semibold text-[15px] hover:bg-brand-dark hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:["Get in Touch ",_("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),w.website&&_("a",{href:w.website,className:"rounded-full py-3.5 px-7 border-2 border-theme-light text-theme-on-dark font-heading font-semibold text-[15px] hover:bg-brand-dark hover:border-theme hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:"Website"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};var W0={name:"@brains/site-personal",license:"AGPL-3.0-only",version:"0.2.0-alpha.258",description:"Personal site composition package",dependencies:{"@brains/blog":"workspace:*","@brains/plugins":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/site-engine":"workspace:*","@brains/site-info":"workspace:*","@brains/templates":"workspace:*","@brains/ui-library":"workspace:*","@brains/utils":"workspace:*",preact:"^10.27.2"},devDependencies:{"@brains/eslint-config":"workspace:*","@brains/typescript-config":"workspace:*","@types/bun":"^1.3.14","bun-types":"^1.3.14",eslint:"^10.5.0",typescript:"^7.0.2"},exports:{".":"./src/index.ts"},files:["src"],private:!0,scripts:{lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",typecheck:"tsc --noEmit"},type:"module"};var L0=G.object({entityDisplay:G.object({post:G.object({label:G.string().default("Post"),pluralName:G.string().optional()}).default({label:"Post"})}).default({post:{label:"Post"}})}),P0=G.object({heading:G.string(),buttonText:G.string(),buttonLink:G.string(),subtitle:G.string().nullable().default(null)}),z0=g;class u extends m{dependencies=["blog"];constructor(w={}){super("personal-site",W0,w,L0)}async onRegister(w){let Q=this.config.entityDisplay.post,X=`/${Q.pluralName??Q.label.toLowerCase()+"s"}`,W=new b(X);w.entities.registerDataSource(W);let $=new d;w.entities.registerDataSource($);let O=G.object({profile:H,posts:G.array(z0),postsListUrl:G.string(),cta:P0}),M=G.object({profile:H});w.templates.register({homepage:v({name:"homepage",description:"Personal homepage with recent blog posts",schema:O,dataSourceId:"personal:homepage",requiredPermission:"public",layout:{component:x}}),about:v({name:"about",description:"About page with profile",schema:M,dataSourceId:"personal:about",requiredPermission:"public",layout:{component:D}})}),this.logger.info("Personal site plugin registered successfully")}async getTools(){return[]}async getResources(){return[]}}function c(w){return new u(w??{})}var p=[{id:"home",path:"/",title:"Home",description:"Personal site homepage",layout:"default",navigation:{show:!0,label:"Home",slot:"secondary",priority:10},sections:[{id:"homepage",template:"personal-site:homepage",dataQuery:{}}]},{id:"about",path:"/about",title:"About",description:"About page",layout:"default",navigation:{show:!0,label:"About",slot:"primary",priority:90},sections:[{id:"about",template:"personal-site:about",dataQuery:{}}]}];import{jsxDEV as J}from"preact/jsx-dev-runtime";function n({sections:w,siteInfo:Q}){let X=[...Q.navigation.primary,...Q.navigation.secondary].filter((W)=>W.label!=="Home");return J("div",{className:"flex flex-col min-h-screen bg-theme overflow-x-clip",children:[J(S,{title:Q.title,titleClassName:"font-heading font-bold text-2xl",navigation:Q.navigation.primary,showThemeToggle:!0,themeToggleClassName:"bg-theme-toggle text-theme-toggle-icon hover:bg-theme-toggle-hover rounded-[10px]",...Q.logo!==void 0?{logo:Q.logo}:{}},void 0,!1,void 0,this),J("main",{className:"flex-grow flex flex-col",children:w},void 0,!1,void 0,this),J("footer",{className:"bg-footer text-footer border-t border-theme",children:J("div",{className:"max-w-layout mx-auto flex flex-col md:flex-row justify-between items-center py-8 px-6 md:px-8",children:[J("div",{className:"flex flex-col gap-1 mb-4 md:mb-0",children:[J("span",{className:"text-brand font-heading font-bold text-lg",children:Q.title},void 0,!1,void 0,this),Q.description&&J("span",{className:"text-theme-muted text-xs",children:Q.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this),J("nav",{className:"flex flex-wrap justify-center gap-x-6 gap-y-2 mb-4 md:mb-0",children:X.map((W)=>J("a",{href:W.href,className:"text-theme-muted text-[13px] hover:text-brand transition-colors",children:W.label},W.href,!1,void 0,this))},void 0,!1,void 0,this),J("div",{className:"flex items-center gap-4",children:[Q.copyright&&J("span",{className:"text-theme-light text-[11px]",children:Q.copyright},void 0,!1,void 0,this),J(X0,{variant:"footer",size:"sm"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}var N=G.string().nullable().default(null),T=G.object({name:G.string(),organization:N,description:N,avatar:N,website:N,email:N,socialLinks:G.array(G.object({platform:G.enum(["github","instagram","linkedin","email","website"]),url:G.string(),label:N})).nullable().default(null),tagline:N,intro:N,story:N,audience:N,role:N,expertise:G.array(G.string()).nullable().default(null),currentFocus:N,availability:N});class V{postsListUrl;decksListUrl;id="professional:homepage-list";name="Homepage List DataSource";description="Fetches profile, blog posts, and presentation decks for homepage";constructor(w,Q){this.postsListUrl=w,this.decksListUrl=Q}async fetch(w,Q,X){let W=X.entityService,[$,O,M,F]=await Promise.all([U(W,T),k(W,{entityType:"post",count:3,parse:P}),k(W,{entityType:"deck",count:3,parse:Y0}),z(W)]),y={profile:$,posts:O,decks:M,postsListUrl:this.postsListUrl,decksListUrl:this.decksListUrl,cta:I(F.cta),sections:F.sections??{}};return Q.parse(y)}}class E{id="professional:about";name="About Page DataSource";description="Fetches full profile data for the about page";async fetch(w,Q,X){let $={profile:await U(X.entityService,T)};return Q.parse($)}}import{jsxDEV as q,Fragment as h0}from"preact/jsx-dev-runtime";var b0="grid md:grid-cols-[14rem_1px_1fr] gap-y-2 gap-x-0 md:gap-16 items-start",d0="border-t md:border-t-0 md:border-l border-rule-strong md:self-stretch",f=({number:w,title:Q,blurb:X,children:W})=>q("section",{className:"py-20 border-b border-rule px-6 md:px-12",children:q("div",{className:"max-w-6xl mx-auto",children:q("div",{className:b0,children:[q(q0,{title:Q,number:w,...X?{blurb:X}:{}},void 0,!1,void 0,this),q("div",{className:d0,"aria-hidden":"true"},void 0,!1,void 0,this),q("div",{className:"mt-6 md:mt-0",children:W},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),l=({profile:w,posts:Q,decks:X,postsListUrl:W,decksListUrl:$,cta:O,sections:M})=>{let F=w.tagline?.length?w.tagline:w.description,y=Q.map((Z)=>({id:Z.id,url:Z.url,title:Z.metadata.title,date:Z.metadata.publishedAt??Z.created,description:Z.frontmatter.excerpt,series:Z.frontmatter.seriesName&&Z.frontmatter.seriesIndex?{name:Z.frontmatter.seriesName,index:Z.frontmatter.seriesIndex}:void 0})),C=X.map((Z)=>({id:Z.id,url:Z.url,title:Z.frontmatter.title||Z.id,date:Z.frontmatter.publishedAt??Z.created,...Z.frontmatter.description?{description:Z.frontmatter.description}:{}})),A0=w.name||"Home",H0=[w.intro,w.description,F].find((Z)=>Z)??"Professional site",U0=Boolean(w.description)||(w.expertise?.length??0)>0,G0=w.socialLinks?.map(({label:Z,...v0})=>({...v0,...Z?{label:Z}:{}}));return q(h0,{children:[q(R,{title:A0,description:H0,ogType:"website"},void 0,!1,void 0,this),q("div",{className:"homepage-list bg-theme",children:[q("header",{className:"hero-bg-pattern relative w-full px-6 md:px-12 pt-28 pb-24 md:pt-28 md:pb-24 overflow-hidden border-b border-rule",children:q("div",{className:"relative z-10 max-w-6xl mx-auto w-full",children:[w.name&&q("div",{className:"flex items-center gap-[0.6rem] mb-6 font-mono text-[0.7rem] font-medium uppercase tracking-[0.22em] text-accent",children:[q("span",{className:"w-[18px] h-px bg-accent","aria-hidden":"true"},void 0,!1,void 0,this),q("span",{children:w.name},void 0,!1,void 0,this)]},void 0,!0,void 0,this),F&&q("h1",{className:"font-heading text-[clamp(2.75rem,6.5vw,5.5rem)] font-normal text-heading leading-[1.02] tracking-[-0.025em] max-w-[18ch] [font-variation-settings:'opsz'_144,'SOFT'_30]",children:r(F,"italic font-normal text-accent [font-variation-settings:'opsz'_144,'SOFT'_80]")},void 0,!1,void 0,this),w.intro&&q("p",{className:"font-heading font-light text-[clamp(1.1rem,1.8vw,1.4rem)] leading-[1.5] text-theme-muted max-w-[42ch] mt-8 [font-variation-settings:'opsz'_24]",children:r(w.intro,"italic text-accent")},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),q(f,{number:"01",title:"Essays",blurb:M.essays?.blurb,children:q(a,{items:y,viewAllUrl:W,viewAllLabel:"View all essays"},void 0,!1,void 0,this)},void 0,!1,void 0,this),C.length>0&&q(f,{number:"02",title:"Presentations",blurb:M.presentations?.blurb,children:q(a,{items:C,viewAllUrl:$,viewAllLabel:"View all presentations"},void 0,!1,void 0,this)},void 0,!1,void 0,this),U0&&q(f,{number:"03",title:"About",blurb:M.about?.blurb,children:q("div",{className:"flex flex-col gap-8",children:[w.description&&q("p",{className:"font-heading font-light text-[1.25rem] leading-[1.55] text-theme max-w-[55ch] [font-variation-settings:'opsz'_24,'SOFT'_50]",children:w.description},void 0,!1,void 0,this),w.expertise&&w.expertise.length>0&&q(M0,{subjects:w.expertise},void 0,!1,void 0,this),q("a",{href:"/about",className:"mt-6 inline-flex items-center gap-2 font-mono text-[0.7rem] font-medium uppercase tracking-[0.18em] text-accent pb-1 relative before:content-[''] before:absolute before:left-0 before:right-full before:bottom-0 before:h-px before:bg-accent before:transition-[right] before:duration-300 hover:before:right-0",children:["Learn more",q("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),q($0,{cta:O,variant:"editorial",...G0?{socialLinks:G0}:{}},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};import{jsxDEV as Y,Fragment as m0}from"preact/jsx-dev-runtime";var i=({profile:w})=>{let Q=`About ${w.name||"Me"}`,X=[w.description,w.intro].find(($)=>$)??"About page",W=(w.expertise?.length??0)>0||Boolean(w.currentFocus)||Boolean(w.availability)||Boolean(w.email)||Boolean(w.website)||(w.socialLinks?.length??0)>0;return Y(m0,{children:[Y(R,{title:Q,description:X,ogType:"profile"},void 0,!1,void 0,this),Y("div",{className:"about-page bg-theme",children:[Y("header",{className:"hero-bg-pattern relative w-full py-16 md:py-24 px-6 md:px-12 bg-theme overflow-hidden",children:Y("div",{className:"relative z-10 max-w-4xl mx-auto",children:[Y("h1",{className:"text-5xl md:text-6xl font-semibold mb-6 text-heading",children:["About ",w.name||"Me"]},void 0,!0,void 0,this),w.description&&Y("p",{className:"text-xl md:text-2xl text-theme-muted leading-relaxed",children:w.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),Y("div",{className:"container mx-auto px-6 md:px-12 max-w-4xl py-12 md:py-16",children:[w.story&&Y("section",{className:"content-section-reveal mb-20 md:mb-28",children:Y(h,{markdown:w.story},void 0,!1,void 0,this)},void 0,!1,void 0,this),W&&Y("div",{className:"content-section-reveal grid md:grid-cols-2 gap-x-16 gap-y-12",children:[w.expertise&&w.expertise.length>0&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Expertise"},void 0,!1,void 0,this),Y("ul",{className:"flex flex-wrap gap-3",children:w.expertise.map(($,O)=>Y("li",{className:Z0({variant:"accent",size:"lg"}),children:$},O,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this),w.currentFocus&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Current Focus"},void 0,!1,void 0,this),Y("p",{className:"text-lg text-theme leading-relaxed",children:w.currentFocus},void 0,!1,void 0,this)]},void 0,!0,void 0,this),w.availability&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Availability"},void 0,!1,void 0,this),Y("p",{className:"text-lg text-theme leading-relaxed",children:w.availability},void 0,!1,void 0,this)]},void 0,!0,void 0,this),(Boolean(w.email)||Boolean(w.website)||(w.socialLinks?.length??0)>0)&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Contact"},void 0,!1,void 0,this),Y("div",{className:"space-y-4",children:[w.email&&Y("p",{className:"text-lg",children:Y("a",{href:`mailto:${w.email}`,className:"text-brand hover:text-brand-dark transition-colors",children:w.email},void 0,!1,void 0,this)},void 0,!1,void 0,this),w.website&&Y("p",{className:"text-lg",children:Y("a",{href:w.website,target:"_blank",rel:"noopener noreferrer",className:"text-brand hover:text-brand-dark transition-colors",children:w.website},void 0,!1,void 0,this)},void 0,!1,void 0,this),w.socialLinks&&w.socialLinks.length>0&&Y("div",{className:"flex flex-wrap gap-4 mt-4",children:w.socialLinks.map(($,O)=>Y(L,{href:$.url,external:!0,variant:"secondary",size:"md",children:$.label?.length?$.label:$.platform},O,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};import{jsxDEV as B,Fragment as _0}from"preact/jsx-dev-runtime";var s=()=>{return B(_0,{children:[B(R,{title:"Thanks for subscribing!",description:"You've successfully subscribed to the newsletter."},void 0,!1,void 0,this),B("div",{className:"min-h-[60vh] flex items-center justify-center px-6",children:B("div",{className:"text-center max-w-md",children:[B("div",{className:"text-6xl mb-6",children:"\uD83C\uDF89"},void 0,!1,void 0,this),B("h1",{className:"text-3xl font-semibold mb-4 text-heading",children:"Thanks for subscribing!"},void 0,!1,void 0,this),B("p",{className:"text-lg text-theme-muted mb-8",children:"You'll receive a confirmation email shortly. Check your inbox to confirm your subscription."},void 0,!1,void 0,this),B(L,{href:"/",variant:"primary",children:"Back to Home"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},t=()=>{return B(_0,{children:[B(R,{title:"Subscription failed",description:"There was a problem with your subscription."},void 0,!1,void 0,this),B("div",{className:"min-h-[60vh] flex items-center justify-center px-6",children:B("div",{className:"text-center max-w-md",children:[B("div",{className:"text-6xl mb-6",children:"\uD83D\uDE22"},void 0,!1,void 0,this),B("h1",{className:"text-3xl font-semibold mb-4 text-heading",children:"Something went wrong"},void 0,!1,void 0,this),B("p",{className:"text-lg text-theme-muted mb-8",children:"We couldn't process your subscription. Please try again or contact us if the problem persists."},void 0,!1,void 0,this),B(L,{href:"/",variant:"primary",children:"Back to Home"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)};var B0=G.object({label:G.string().describe("Display label for entity type (e.g., 'Essay')"),pluralName:G.string().optional().describe("URL path segment (defaults to label.toLowerCase() + 's')")}),g0={post:{label:"Post"},deck:{label:"Deck"}},O0=G.object({entityDisplay:G.object({post:B0,deck:B0}).default(g0).describe("Display metadata for post and deck entity types used by the homepage")});var J0={name:"@brains/site-professional",license:"AGPL-3.0-only",version:"0.2.0-alpha.258",description:"Professional site composition package",dependencies:{"@brains/blog":"workspace:*","@brains/decks":"workspace:*","@brains/plugins":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/site-engine":"workspace:*","@brains/site-info":"workspace:*","@brains/templates":"workspace:*","@brains/ui-library":"workspace:*","@brains/utils":"workspace:*",preact:"^10.27.2"},devDependencies:{"@brains/eslint-config":"workspace:*","@brains/typescript-config":"workspace:*","@types/bun":"^1.3.14","bun-types":"^1.3.14",eslint:"^10.5.0",typescript:"^7.0.2"},exports:{".":"./src/index.ts"},files:["src"],private:!0,scripts:{lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",typecheck:"tsc --noEmit"},type:"module"};var V0=G.object({blurb:G.string().nullable().default(null).describe("Short italic subtitle under the section title")}),E0=G.object({heading:G.string(),buttonText:G.string(),buttonLink:G.string()}),j0=g,x0=N0;class o extends m{dependencies=["blog","decks"];constructor(w){super("professional-site",J0,w,O0)}async onRegister(w){let Q=this.config.entityDisplay.post,X=this.config.entityDisplay.deck,W=`/${Q.pluralName??Q.label.toLowerCase()+"s"}`,$=`/${X.pluralName??X.label.toLowerCase()+"s"}`,O=new V(W,$);w.entities.registerDataSource(O);let M=new E;w.entities.registerDataSource(M);let F=G.object({profile:T,posts:G.array(j0),decks:G.array(x0),postsListUrl:G.string(),decksListUrl:G.string(),cta:E0,sections:G.record(G.string(),V0)}),y=G.object({profile:T}),C=G.object({});w.templates.register({"homepage-list":v({name:"homepage-list",description:"Professional homepage with essays and presentations",schema:F,dataSourceId:"professional:homepage-list",requiredPermission:"public",layout:{component:l}}),about:v({name:"about",description:"About page with full profile information",schema:y,dataSourceId:"professional:about",requiredPermission:"public",layout:{component:i}}),"subscribe-thanks":v({name:"subscribe-thanks",description:"Newsletter subscription success page",schema:C,requiredPermission:"public",layout:{component:s}}),"subscribe-error":v({name:"subscribe-error",description:"Newsletter subscription error page",schema:C,requiredPermission:"public",layout:{component:t}})}),this.logger.info("Professional site plugin registered successfully")}async getTools(){return[]}async getResources(){return[]}}function e(w){return new o(w??{})}var w0=[{id:"home",path:"/",title:"Home",description:"Professional site homepage",layout:"default",navigation:{show:!0,label:"Home",slot:"secondary",priority:10},sections:[{id:"homepage",template:"professional-site:homepage-list",dataQuery:{}}]},{id:"about",path:"/about",title:"About",description:"About page",layout:"default",navigation:{show:!0,label:"About",slot:"primary",priority:90},sections:[{id:"about",template:"professional-site:about",dataQuery:{}}]},{id:"subscribe-thanks",path:"/subscribe/thanks",title:"Thanks for subscribing",description:"Newsletter subscription confirmation",layout:"default",navigation:{show:!1},sections:[{id:"subscribe-thanks",template:"professional-site:subscribe-thanks",dataQuery:{},content:{}}]},{id:"subscribe-error",path:"/subscribe/error",title:"Subscription failed",description:"Newsletter subscription error",layout:"default",navigation:{show:!1},sections:[{id:"subscribe-error",template:"professional-site:subscribe-error",dataQuery:{},content:{}}]}];import{jsxDEV as j}from"preact/jsx-dev-runtime";function Q0({sections:w,siteInfo:Q,slots:X,wordmark:W}){return j("div",{className:"flex flex-col min-h-screen bg-theme overflow-x-clip",children:[j(S,{title:Q.title,navigation:Q.navigation.primary,showThemeToggle:!0,...Q.logo!==void 0?{logo:Q.logo}:{},...W!==void 0?{wordmark:W}:{}},void 0,!1,void 0,this),j("main",{className:"flex-grow flex flex-col bg-theme",children:w},void 0,!1,void 0,this),j(R0,{primaryNavigation:Q.navigation.primary,secondaryNavigation:Q.navigation.secondary,copyright:Q.copyright,socialLinks:Q.socialLinks,title:Q.title,tagline:Q.description,children:X?.getSlot("footer-top").map(($)=>$.render())},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function F0(w){return w}var m2=n;function g2(w){return F0(c(w))}var D0=p,S2=D0,V2=Q0;function E2(w){return F0(e(w))}var j2=w0;export{D0 as routes,E2 as professionalSitePlugin,j2 as professionalRoutes,g2 as personalSitePlugin,S2 as personalRoutes,V2 as ProfessionalLayout,m2 as PersonalLayout};
2
+ import{Ab as Y0,Db as U,Ga as Z0,Ma as a,Na as q0,Oa as M0,Pa as r,Qa as h,Za as P,_a as g,la as L,ma as X0,oa as R,ua as $0,va as R0,wa as S,wb as z,xb as k,yb as I,zb as N0}from"./chunks/index-0sdv84f7.js";import"./chunks/index-npee9ahv.js";import"./chunks/index-wgvqkry5.js";import"./chunks/index-e16dgk7f.js";import"./chunks/index-z292a1td.js";import"./chunks/index-pghefxjz.js";import"./chunks/index-q7vxqhw0.js";import{Fc as m}from"./chunks/index-7ytt9vvj.js";import"./chunks/index-7rpsxmkw.js";import"./chunks/index-b321g3dq.js";import"./chunks/index-x1z91h8f.js";import"./chunks/index-fd1gxz8a.js";import"./chunks/index-ra0ektdg.js";import"./chunks/index-b8fr3719.js";import{zh as v}from"./chunks/index-gq8ts1j6.js";import"./chunks/index-sam9qxh9.js";import{Qi as G}from"./chunks/index-8p1j80d4.js";import"./chunks/index-88hscfqt.js";var A=G.string().nullable().default(null),H=G.object({name:G.string(),organization:A,description:A,avatar:A,website:A,email:A,socialLinks:G.array(G.object({platform:G.enum(["github","instagram","linkedin","email","website"]),url:G.string(),label:A})).nullable().default(null),tagline:A,intro:A,story:A,audience:A});class b{postsListUrl;id="personal:homepage";name="Personal Homepage DataSource";description="Fetches profile and blog posts for a personal homepage";constructor(w){this.postsListUrl=w}async fetch(w,Q,X){let W=X.entityService,[$,O,M]=await Promise.all([U(W,H),k(W,{entityType:"post",count:6,parse:P}),z(W)]),F={profile:$,posts:O,postsListUrl:this.postsListUrl,cta:I(M.cta)};return Q.parse(F)}}class d{id="personal:about";name="About Page DataSource";description="Fetches full profile data for the about page";async fetch(w,Q,X){let $={profile:await U(X.entityService,H)};return Q.parse($)}}import{jsxDEV as K,Fragment as K0}from"preact/jsx-dev-runtime";function T0(w){return new Date(w).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}function y0(w){return w.split(/(\*[^*]+\*)/).map((Q,X)=>{if(Q.startsWith("*")&&Q.endsWith("*")&&Q.length>2)return K("em",{className:"font-sans italic font-medium text-theme-inverse tracking-[-0.015em] [font-variation-settings:'opsz'_72]",children:Q.slice(1,-1)},X,!1,void 0,this);return Q})}var x=({profile:w,posts:Q,postsListUrl:X,cta:W})=>{let $=w.tagline??w.description,O=w.name.split(" ")[0];return K(K0,{children:[K(R,{title:w.name,description:w.description??$??"Personal site",ogType:"website"},void 0,!1,void 0,this),K("header",{className:"hero-decor bg-brand text-theme-inverse relative flex flex-col items-center justify-center px-6 md:px-12 pt-32 pb-24 gap-7",children:K("div",{className:"w-full max-w-[1100px] mx-auto text-center flex flex-col items-center gap-7",children:[$&&K("h1",{className:"font-heading font-bold text-[clamp(2.5rem,6vw,5rem)] leading-[1.05] tracking-[-0.035em] text-theme-inverse text-balance m-0 [font-variation-settings:'wdth'_90,'opsz'_96]",children:y0($)},void 0,!1,void 0,this),w.description&&K("p",{className:"text-[clamp(1.0625rem,1.4vw,1.3125rem)] leading-[1.5] text-theme-inverse opacity-95 max-w-[600px] mx-auto m-0",children:w.description},void 0,!1,void 0,this),K("div",{className:"flex flex-wrap justify-center gap-3.5 mt-2",children:[K("a",{href:X,className:"inline-flex items-center gap-2 rounded-full py-3.5 px-7 bg-theme text-brand border-2 border-theme font-heading font-semibold text-[15px] hover:bg-theme-subtle hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:["Read the Blog ",K("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("a",{href:"/about",className:"rounded-full py-3.5 px-7 border-2 border-theme-light text-theme-inverse font-heading font-semibold text-[15px] hover:bg-brand-dark hover:border-theme hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:["About ",O]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),Q.length>0&&K("section",{className:"flex flex-col py-24 px-6 md:px-12 gap-11 bg-theme-subtle",children:[K("div",{className:"flex justify-between items-end max-w-layout mx-auto w-full gap-6 flex-wrap",children:[K("div",{children:[K("span",{className:"block font-heading font-semibold text-[13px] uppercase tracking-[0.22em] text-brand mb-3 [font-variation-settings:'wdth'_85,'opsz'_12]",children:"The Archive"},void 0,!1,void 0,this),K("h2",{className:"font-heading font-bold text-[clamp(2.25rem,5vw,3.75rem)] leading-none tracking-[-0.03em] text-heading m-0 [font-variation-settings:'wdth'_92,'opsz'_64]",children:["Recent"," ",K("em",{className:"font-sans italic font-medium text-brand [font-variation-settings:'opsz'_60]",children:"posts"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),K("a",{href:X,className:"font-heading font-semibold text-[15px] text-brand inline-flex items-center gap-1.5 pb-1.5 border-b-2 border-current hover:text-brand-dark transition-colors [font-variation-settings:'wdth'_88,'opsz'_16]",children:["View the whole archive ",K("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),K("div",{className:"grid grid-cols-[repeat(auto-fit,minmax(min(100%,320px),1fr))] gap-8 max-w-layout mx-auto w-full",children:Q.map((M)=>K("a",{href:M.url,className:"group flex flex-col bg-theme border border-theme rounded-md overflow-hidden hover:-translate-y-1 hover:border-brand/50 transition-all no-underline shadow-sm hover:shadow-lg",children:[M.coverImageUrl?K("img",{src:M.coverImageUrl,alt:M.metadata.title,className:"w-full aspect-[16/10] object-cover bg-theme-muted"},void 0,!1,void 0,this):K("div",{className:"w-full aspect-[16/10] bg-gradient-to-br from-brand to-accent","aria-hidden":"true"},void 0,!1,void 0,this),K("div",{className:"flex flex-col gap-4 p-7 flex-1",children:[K("div",{className:"flex flex-wrap items-center gap-3.5 font-heading text-[11px] font-semibold uppercase tracking-[0.18em] text-theme-muted [font-variation-settings:'wdth'_85,'opsz'_11]",children:[M.frontmatter.seriesName&&K(K0,{children:[K("span",{className:"text-brand",children:M.frontmatter.seriesName},void 0,!1,void 0,this),K("span",{className:"w-[3px] h-[3px] rounded-full bg-current opacity-50","aria-hidden":"true"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("time",{children:T0(M.metadata.publishedAt??M.created)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("h3",{className:"font-sans font-semibold text-[clamp(1.375rem,1.8vw,1.625rem)] leading-[1.18] tracking-[-0.012em] text-heading m-0 text-balance",children:M.metadata.title},void 0,!1,void 0,this),M.frontmatter.excerpt&&K("p",{className:"text-base leading-[1.55] text-theme-muted m-0 flex-1",children:M.frontmatter.excerpt},void 0,!1,void 0,this),K("span",{className:"inline-flex items-center gap-1.5 font-heading font-semibold text-[13px] uppercase tracking-[0.14em] text-brand mt-1 [font-variation-settings:'wdth'_88,'opsz'_14]",children:["Read the post"," ",K("span",{"aria-hidden":"true",className:"transition-transform group-hover:translate-x-1",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},M.id,!0,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this),K("section",{className:"cta-decor bg-theme-dark text-theme-on-dark flex-grow flex flex-col items-center justify-center py-24 px-6 md:px-12 gap-5",children:[K("span",{className:"font-heading font-medium text-xs uppercase tracking-[0.24em] text-accent [font-variation-settings:'wdth'_85,'opsz'_12]",children:"Get in touch"},void 0,!1,void 0,this),K("h2",{className:"text-center font-heading font-bold text-[clamp(2rem,4vw,3rem)] leading-none tracking-[-0.03em] text-theme-on-dark m-0 [font-variation-settings:'wdth'_90,'opsz'_64]",children:W.heading},void 0,!1,void 0,this),W.subtitle&&K("p",{className:"text-center text-base leading-[1.55] text-theme-on-dark opacity-80 max-w-[480px] m-0",children:W.subtitle},void 0,!1,void 0,this),K("a",{href:W.buttonLink,className:"inline-flex items-center gap-2 rounded-full py-3.5 px-7 bg-brand text-theme-inverse border-2 border-brand font-heading font-semibold text-[15px] hover:bg-brand-dark hover:-translate-y-0.5 transition-all mt-2 [font-variation-settings:'wdth'_92,'opsz'_18]",children:[W.buttonText," ",K("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};import{jsxDEV as _,Fragment as C0}from"preact/jsx-dev-runtime";var D=({profile:w})=>{let Q=`About ${w.name}`,X=w.description??w.intro??"About page",W=Boolean(w.email??w.website);return _(C0,{children:[_(R,{title:Q,description:X,ogType:"profile"},void 0,!1,void 0,this),_("section",{className:"hero-decor bg-brand text-theme-inverse relative flex flex-col px-6 md:px-12 pt-32 pb-24",children:_("div",{className:"w-full max-w-3xl mx-auto flex flex-col gap-6",children:[_("h1",{className:"font-heading font-bold text-[clamp(2.5rem,6vw,4.5rem)] leading-[1.05] tracking-[-0.035em] text-theme-inverse text-balance m-0 [font-variation-settings:'wdth'_90,'opsz'_96]",children:w.name},void 0,!1,void 0,this),w.description&&_("p",{className:"text-[clamp(1.0625rem,1.4vw,1.25rem)] leading-[1.55] text-theme-inverse opacity-95 max-w-2xl m-0",children:w.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),w.story&&_("section",{className:`py-24 px-6 md:px-12 bg-theme-subtle${W?"":" flex-grow"}`,children:_("div",{className:"max-w-3xl mx-auto",children:_(h,{markdown:w.story},void 0,!1,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),W&&_("section",{className:"cta-decor bg-theme-dark text-theme-on-dark flex-grow flex flex-col items-center justify-center py-24 px-6 md:px-12 gap-5",children:[_("span",{className:"font-heading font-medium text-xs uppercase tracking-[0.24em] text-accent [font-variation-settings:'wdth'_85,'opsz'_12]",children:"Get in touch"},void 0,!1,void 0,this),_("h2",{className:"text-center font-heading font-bold text-[clamp(2rem,4vw,3rem)] leading-none tracking-[-0.03em] text-theme-on-dark m-0 [font-variation-settings:'wdth'_90,'opsz'_64]",children:["Say"," ",_("em",{className:"font-sans italic font-medium text-accent [font-variation-settings:'opsz'_72]",children:"hi."},void 0,!1,void 0,this)]},void 0,!0,void 0,this),_("div",{className:"flex flex-wrap justify-center gap-3.5 mt-2",children:[w.email&&_("a",{href:`mailto:${w.email}`,className:"inline-flex items-center gap-2 rounded-full py-3.5 px-7 bg-brand text-theme-inverse border-2 border-brand font-heading font-semibold text-[15px] hover:bg-brand-dark hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:["Get in Touch ",_("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),w.website&&_("a",{href:w.website,className:"rounded-full py-3.5 px-7 border-2 border-theme-light text-theme-on-dark font-heading font-semibold text-[15px] hover:bg-brand-dark hover:border-theme hover:-translate-y-0.5 transition-all [font-variation-settings:'wdth'_92,'opsz'_18]",children:"Website"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};var W0={name:"@brains/site-personal",license:"AGPL-3.0-only",version:"0.2.0-alpha.259",description:"Personal site composition package",dependencies:{"@brains/blog":"workspace:*","@brains/plugins":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/site-engine":"workspace:*","@brains/site-info":"workspace:*","@brains/templates":"workspace:*","@brains/ui-library":"workspace:*","@brains/utils":"workspace:*",preact:"^10.27.2"},devDependencies:{"@brains/eslint-config":"workspace:*","@brains/typescript-config":"workspace:*","@types/bun":"^1.3.14","bun-types":"^1.3.14",eslint:"^10.5.0",typescript:"^7.0.2"},exports:{".":"./src/index.ts"},files:["src"],private:!0,scripts:{lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",typecheck:"tsc --noEmit"},type:"module"};var L0=G.object({entityDisplay:G.object({post:G.object({label:G.string().default("Post"),pluralName:G.string().optional()}).default({label:"Post"})}).default({post:{label:"Post"}})}),P0=G.object({heading:G.string(),buttonText:G.string(),buttonLink:G.string(),subtitle:G.string().nullable().default(null)}),z0=g;class u extends m{dependencies=["blog"];constructor(w={}){super("personal-site",W0,w,L0)}async onRegister(w){let Q=this.config.entityDisplay.post,X=`/${Q.pluralName??Q.label.toLowerCase()+"s"}`,W=new b(X);w.entities.registerDataSource(W);let $=new d;w.entities.registerDataSource($);let O=G.object({profile:H,posts:G.array(z0),postsListUrl:G.string(),cta:P0}),M=G.object({profile:H});w.templates.register({homepage:v({name:"homepage",description:"Personal homepage with recent blog posts",schema:O,dataSourceId:"personal:homepage",requiredPermission:"public",layout:{component:x}}),about:v({name:"about",description:"About page with profile",schema:M,dataSourceId:"personal:about",requiredPermission:"public",layout:{component:D}})}),this.logger.info("Personal site plugin registered successfully")}async getTools(){return[]}async getResources(){return[]}}function c(w){return new u(w??{})}var p=[{id:"home",path:"/",title:"Home",description:"Personal site homepage",layout:"default",navigation:{show:!0,label:"Home",slot:"secondary",priority:10},sections:[{id:"homepage",template:"personal-site:homepage",dataQuery:{}}]},{id:"about",path:"/about",title:"About",description:"About page",layout:"default",navigation:{show:!0,label:"About",slot:"primary",priority:90},sections:[{id:"about",template:"personal-site:about",dataQuery:{}}]}];import{jsxDEV as J}from"preact/jsx-dev-runtime";function n({sections:w,siteInfo:Q}){let X=[...Q.navigation.primary,...Q.navigation.secondary].filter((W)=>W.label!=="Home");return J("div",{className:"flex flex-col min-h-screen bg-theme overflow-x-clip",children:[J(S,{title:Q.title,titleClassName:"font-heading font-bold text-2xl",navigation:Q.navigation.primary,showThemeToggle:!0,themeToggleClassName:"bg-theme-toggle text-theme-toggle-icon hover:bg-theme-toggle-hover rounded-[10px]",...Q.logo!==void 0?{logo:Q.logo}:{}},void 0,!1,void 0,this),J("main",{className:"flex-grow flex flex-col",children:w},void 0,!1,void 0,this),J("footer",{className:"bg-footer text-footer border-t border-theme",children:J("div",{className:"max-w-layout mx-auto flex flex-col md:flex-row justify-between items-center py-8 px-6 md:px-8",children:[J("div",{className:"flex flex-col gap-1 mb-4 md:mb-0",children:[J("span",{className:"text-brand font-heading font-bold text-lg",children:Q.title},void 0,!1,void 0,this),Q.description&&J("span",{className:"text-theme-muted text-xs",children:Q.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this),J("nav",{className:"flex flex-wrap justify-center gap-x-6 gap-y-2 mb-4 md:mb-0",children:X.map((W)=>J("a",{href:W.href,className:"text-theme-muted text-[13px] hover:text-brand transition-colors",children:W.label},W.href,!1,void 0,this))},void 0,!1,void 0,this),J("div",{className:"flex items-center gap-4",children:[Q.copyright&&J("span",{className:"text-theme-light text-[11px]",children:Q.copyright},void 0,!1,void 0,this),J(X0,{variant:"footer",size:"sm"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}var N=G.string().nullable().default(null),T=G.object({name:G.string(),organization:N,description:N,avatar:N,website:N,email:N,socialLinks:G.array(G.object({platform:G.enum(["github","instagram","linkedin","email","website"]),url:G.string(),label:N})).nullable().default(null),tagline:N,intro:N,story:N,audience:N,role:N,expertise:G.array(G.string()).nullable().default(null),currentFocus:N,availability:N});class V{postsListUrl;decksListUrl;id="professional:homepage-list";name="Homepage List DataSource";description="Fetches profile, blog posts, and presentation decks for homepage";constructor(w,Q){this.postsListUrl=w,this.decksListUrl=Q}async fetch(w,Q,X){let W=X.entityService,[$,O,M,F]=await Promise.all([U(W,T),k(W,{entityType:"post",count:3,parse:P}),k(W,{entityType:"deck",count:3,parse:Y0}),z(W)]),y={profile:$,posts:O,decks:M,postsListUrl:this.postsListUrl,decksListUrl:this.decksListUrl,cta:I(F.cta),sections:F.sections??{}};return Q.parse(y)}}class E{id="professional:about";name="About Page DataSource";description="Fetches full profile data for the about page";async fetch(w,Q,X){let $={profile:await U(X.entityService,T)};return Q.parse($)}}import{jsxDEV as q,Fragment as h0}from"preact/jsx-dev-runtime";var b0="grid md:grid-cols-[14rem_1px_1fr] gap-y-2 gap-x-0 md:gap-16 items-start",d0="border-t md:border-t-0 md:border-l border-rule-strong md:self-stretch",f=({number:w,title:Q,blurb:X,children:W})=>q("section",{className:"py-20 border-b border-rule px-6 md:px-12",children:q("div",{className:"max-w-6xl mx-auto",children:q("div",{className:b0,children:[q(q0,{title:Q,number:w,...X?{blurb:X}:{}},void 0,!1,void 0,this),q("div",{className:d0,"aria-hidden":"true"},void 0,!1,void 0,this),q("div",{className:"mt-6 md:mt-0",children:W},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)},void 0,!1,void 0,this),l=({profile:w,posts:Q,decks:X,postsListUrl:W,decksListUrl:$,cta:O,sections:M})=>{let F=w.tagline?.length?w.tagline:w.description,y=Q.map((Z)=>({id:Z.id,url:Z.url,title:Z.metadata.title,date:Z.metadata.publishedAt??Z.created,description:Z.frontmatter.excerpt,series:Z.frontmatter.seriesName&&Z.frontmatter.seriesIndex?{name:Z.frontmatter.seriesName,index:Z.frontmatter.seriesIndex}:void 0})),C=X.map((Z)=>({id:Z.id,url:Z.url,title:Z.frontmatter.title||Z.id,date:Z.frontmatter.publishedAt??Z.created,...Z.frontmatter.description?{description:Z.frontmatter.description}:{}})),A0=w.name||"Home",H0=[w.intro,w.description,F].find((Z)=>Z)??"Professional site",U0=Boolean(w.description)||(w.expertise?.length??0)>0,G0=w.socialLinks?.map(({label:Z,...v0})=>({...v0,...Z?{label:Z}:{}}));return q(h0,{children:[q(R,{title:A0,description:H0,ogType:"website"},void 0,!1,void 0,this),q("div",{className:"homepage-list bg-theme",children:[q("header",{className:"hero-bg-pattern relative w-full px-6 md:px-12 pt-28 pb-24 md:pt-28 md:pb-24 overflow-hidden border-b border-rule",children:q("div",{className:"relative z-10 max-w-6xl mx-auto w-full",children:[w.name&&q("div",{className:"flex items-center gap-[0.6rem] mb-6 font-mono text-[0.7rem] font-medium uppercase tracking-[0.22em] text-accent",children:[q("span",{className:"w-[18px] h-px bg-accent","aria-hidden":"true"},void 0,!1,void 0,this),q("span",{children:w.name},void 0,!1,void 0,this)]},void 0,!0,void 0,this),F&&q("h1",{className:"font-heading text-[clamp(2.75rem,6.5vw,5.5rem)] font-normal text-heading leading-[1.02] tracking-[-0.025em] max-w-[18ch] [font-variation-settings:'opsz'_144,'SOFT'_30]",children:r(F,"italic font-normal text-accent [font-variation-settings:'opsz'_144,'SOFT'_80]")},void 0,!1,void 0,this),w.intro&&q("p",{className:"font-heading font-light text-[clamp(1.1rem,1.8vw,1.4rem)] leading-[1.5] text-theme-muted max-w-[42ch] mt-8 [font-variation-settings:'opsz'_24]",children:r(w.intro,"italic text-accent")},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),q(f,{number:"01",title:"Essays",blurb:M.essays?.blurb,children:q(a,{items:y,viewAllUrl:W,viewAllLabel:"View all essays"},void 0,!1,void 0,this)},void 0,!1,void 0,this),C.length>0&&q(f,{number:"02",title:"Presentations",blurb:M.presentations?.blurb,children:q(a,{items:C,viewAllUrl:$,viewAllLabel:"View all presentations"},void 0,!1,void 0,this)},void 0,!1,void 0,this),U0&&q(f,{number:"03",title:"About",blurb:M.about?.blurb,children:q("div",{className:"flex flex-col gap-8",children:[w.description&&q("p",{className:"font-heading font-light text-[1.25rem] leading-[1.55] text-theme max-w-[55ch] [font-variation-settings:'opsz'_24,'SOFT'_50]",children:w.description},void 0,!1,void 0,this),w.expertise&&w.expertise.length>0&&q(M0,{subjects:w.expertise},void 0,!1,void 0,this),q("a",{href:"/about",className:"mt-6 inline-flex items-center gap-2 font-mono text-[0.7rem] font-medium uppercase tracking-[0.18em] text-accent pb-1 relative before:content-[''] before:absolute before:left-0 before:right-full before:bottom-0 before:h-px before:bg-accent before:transition-[right] before:duration-300 hover:before:right-0",children:["Learn more",q("span",{"aria-hidden":"true",children:"\u2192"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),q($0,{cta:O,variant:"editorial",...G0?{socialLinks:G0}:{}},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};import{jsxDEV as Y,Fragment as m0}from"preact/jsx-dev-runtime";var i=({profile:w})=>{let Q=`About ${w.name||"Me"}`,X=[w.description,w.intro].find(($)=>$)??"About page",W=(w.expertise?.length??0)>0||Boolean(w.currentFocus)||Boolean(w.availability)||Boolean(w.email)||Boolean(w.website)||(w.socialLinks?.length??0)>0;return Y(m0,{children:[Y(R,{title:Q,description:X,ogType:"profile"},void 0,!1,void 0,this),Y("div",{className:"about-page bg-theme",children:[Y("header",{className:"hero-bg-pattern relative w-full py-16 md:py-24 px-6 md:px-12 bg-theme overflow-hidden",children:Y("div",{className:"relative z-10 max-w-4xl mx-auto",children:[Y("h1",{className:"text-5xl md:text-6xl font-semibold mb-6 text-heading",children:["About ",w.name||"Me"]},void 0,!0,void 0,this),w.description&&Y("p",{className:"text-xl md:text-2xl text-theme-muted leading-relaxed",children:w.description},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),Y("div",{className:"container mx-auto px-6 md:px-12 max-w-4xl py-12 md:py-16",children:[w.story&&Y("section",{className:"content-section-reveal mb-20 md:mb-28",children:Y(h,{markdown:w.story},void 0,!1,void 0,this)},void 0,!1,void 0,this),W&&Y("div",{className:"content-section-reveal grid md:grid-cols-2 gap-x-16 gap-y-12",children:[w.expertise&&w.expertise.length>0&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Expertise"},void 0,!1,void 0,this),Y("ul",{className:"flex flex-wrap gap-3",children:w.expertise.map(($,O)=>Y("li",{className:Z0({variant:"accent",size:"lg"}),children:$},O,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this),w.currentFocus&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Current Focus"},void 0,!1,void 0,this),Y("p",{className:"text-lg text-theme leading-relaxed",children:w.currentFocus},void 0,!1,void 0,this)]},void 0,!0,void 0,this),w.availability&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Availability"},void 0,!1,void 0,this),Y("p",{className:"text-lg text-theme leading-relaxed",children:w.availability},void 0,!1,void 0,this)]},void 0,!0,void 0,this),(Boolean(w.email)||Boolean(w.website)||(w.socialLinks?.length??0)>0)&&Y("section",{children:[Y("h2",{className:"text-sm tracking-widest uppercase text-theme-muted mb-6",children:"Contact"},void 0,!1,void 0,this),Y("div",{className:"space-y-4",children:[w.email&&Y("p",{className:"text-lg",children:Y("a",{href:`mailto:${w.email}`,className:"text-brand hover:text-brand-dark transition-colors",children:w.email},void 0,!1,void 0,this)},void 0,!1,void 0,this),w.website&&Y("p",{className:"text-lg",children:Y("a",{href:w.website,target:"_blank",rel:"noopener noreferrer",className:"text-brand hover:text-brand-dark transition-colors",children:w.website},void 0,!1,void 0,this)},void 0,!1,void 0,this),w.socialLinks&&w.socialLinks.length>0&&Y("div",{className:"flex flex-wrap gap-4 mt-4",children:w.socialLinks.map(($,O)=>Y(L,{href:$.url,external:!0,variant:"secondary",size:"md",children:$.label?.length?$.label:$.platform},O,!1,void 0,this))},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)};import{jsxDEV as B,Fragment as _0}from"preact/jsx-dev-runtime";var s=()=>{return B(_0,{children:[B(R,{title:"Thanks for subscribing!",description:"You've successfully subscribed to the newsletter."},void 0,!1,void 0,this),B("div",{className:"min-h-[60vh] flex items-center justify-center px-6",children:B("div",{className:"text-center max-w-md",children:[B("div",{className:"text-6xl mb-6",children:"\uD83C\uDF89"},void 0,!1,void 0,this),B("h1",{className:"text-3xl font-semibold mb-4 text-heading",children:"Thanks for subscribing!"},void 0,!1,void 0,this),B("p",{className:"text-lg text-theme-muted mb-8",children:"You'll receive a confirmation email shortly. Check your inbox to confirm your subscription."},void 0,!1,void 0,this),B(L,{href:"/",variant:"primary",children:"Back to Home"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},t=()=>{return B(_0,{children:[B(R,{title:"Subscription failed",description:"There was a problem with your subscription."},void 0,!1,void 0,this),B("div",{className:"min-h-[60vh] flex items-center justify-center px-6",children:B("div",{className:"text-center max-w-md",children:[B("div",{className:"text-6xl mb-6",children:"\uD83D\uDE22"},void 0,!1,void 0,this),B("h1",{className:"text-3xl font-semibold mb-4 text-heading",children:"Something went wrong"},void 0,!1,void 0,this),B("p",{className:"text-lg text-theme-muted mb-8",children:"We couldn't process your subscription. Please try again or contact us if the problem persists."},void 0,!1,void 0,this),B(L,{href:"/",variant:"primary",children:"Back to Home"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)};var B0=G.object({label:G.string().describe("Display label for entity type (e.g., 'Essay')"),pluralName:G.string().optional().describe("URL path segment (defaults to label.toLowerCase() + 's')")}),g0={post:{label:"Post"},deck:{label:"Deck"}},O0=G.object({entityDisplay:G.object({post:B0,deck:B0}).default(g0).describe("Display metadata for post and deck entity types used by the homepage")});var J0={name:"@brains/site-professional",license:"AGPL-3.0-only",version:"0.2.0-alpha.259",description:"Professional site composition package",dependencies:{"@brains/blog":"workspace:*","@brains/decks":"workspace:*","@brains/plugins":"workspace:*","@brains/profile":"workspace:*","@brains/site-composition":"workspace:*","@brains/site-engine":"workspace:*","@brains/site-info":"workspace:*","@brains/templates":"workspace:*","@brains/ui-library":"workspace:*","@brains/utils":"workspace:*",preact:"^10.27.2"},devDependencies:{"@brains/eslint-config":"workspace:*","@brains/typescript-config":"workspace:*","@types/bun":"^1.3.14","bun-types":"^1.3.14",eslint:"^10.5.0",typescript:"^7.0.2"},exports:{".":"./src/index.ts"},files:["src"],private:!0,scripts:{lint:"eslint . --max-warnings 0","lint:fix":"eslint . --max-warnings 0 --fix",typecheck:"tsc --noEmit"},type:"module"};var V0=G.object({blurb:G.string().nullable().default(null).describe("Short italic subtitle under the section title")}),E0=G.object({heading:G.string(),buttonText:G.string(),buttonLink:G.string()}),j0=g,x0=N0;class o extends m{dependencies=["blog","decks"];constructor(w){super("professional-site",J0,w,O0)}async onRegister(w){let Q=this.config.entityDisplay.post,X=this.config.entityDisplay.deck,W=`/${Q.pluralName??Q.label.toLowerCase()+"s"}`,$=`/${X.pluralName??X.label.toLowerCase()+"s"}`,O=new V(W,$);w.entities.registerDataSource(O);let M=new E;w.entities.registerDataSource(M);let F=G.object({profile:T,posts:G.array(j0),decks:G.array(x0),postsListUrl:G.string(),decksListUrl:G.string(),cta:E0,sections:G.record(G.string(),V0)}),y=G.object({profile:T}),C=G.object({});w.templates.register({"homepage-list":v({name:"homepage-list",description:"Professional homepage with essays and presentations",schema:F,dataSourceId:"professional:homepage-list",requiredPermission:"public",layout:{component:l}}),about:v({name:"about",description:"About page with full profile information",schema:y,dataSourceId:"professional:about",requiredPermission:"public",layout:{component:i}}),"subscribe-thanks":v({name:"subscribe-thanks",description:"Newsletter subscription success page",schema:C,requiredPermission:"public",layout:{component:s}}),"subscribe-error":v({name:"subscribe-error",description:"Newsletter subscription error page",schema:C,requiredPermission:"public",layout:{component:t}})}),this.logger.info("Professional site plugin registered successfully")}async getTools(){return[]}async getResources(){return[]}}function e(w){return new o(w??{})}var w0=[{id:"home",path:"/",title:"Home",description:"Professional site homepage",layout:"default",navigation:{show:!0,label:"Home",slot:"secondary",priority:10},sections:[{id:"homepage",template:"professional-site:homepage-list",dataQuery:{}}]},{id:"about",path:"/about",title:"About",description:"About page",layout:"default",navigation:{show:!0,label:"About",slot:"primary",priority:90},sections:[{id:"about",template:"professional-site:about",dataQuery:{}}]},{id:"subscribe-thanks",path:"/subscribe/thanks",title:"Thanks for subscribing",description:"Newsletter subscription confirmation",layout:"default",navigation:{show:!1},sections:[{id:"subscribe-thanks",template:"professional-site:subscribe-thanks",dataQuery:{},content:{}}]},{id:"subscribe-error",path:"/subscribe/error",title:"Subscription failed",description:"Newsletter subscription error",layout:"default",navigation:{show:!1},sections:[{id:"subscribe-error",template:"professional-site:subscribe-error",dataQuery:{},content:{}}]}];import{jsxDEV as j}from"preact/jsx-dev-runtime";function Q0({sections:w,siteInfo:Q,slots:X,wordmark:W}){return j("div",{className:"flex flex-col min-h-screen bg-theme overflow-x-clip",children:[j(S,{title:Q.title,navigation:Q.navigation.primary,showThemeToggle:!0,...Q.logo!==void 0?{logo:Q.logo}:{},...W!==void 0?{wordmark:W}:{}},void 0,!1,void 0,this),j("main",{className:"flex-grow flex flex-col bg-theme",children:w},void 0,!1,void 0,this),j(R0,{primaryNavigation:Q.navigation.primary,secondaryNavigation:Q.navigation.secondary,copyright:Q.copyright,socialLinks:Q.socialLinks,title:Q.title,tagline:Q.description,children:X?.getSlot("footer-top").map(($)=>$.render())},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function F0(w){return w}var m2=n;function g2(w){return F0(c(w))}var D0=p,S2=D0,V2=Q0;function E2(w){return F0(e(w))}var j2=w0;export{D0 as routes,E2 as professionalSitePlugin,j2 as professionalRoutes,g2 as personalSitePlugin,S2 as personalRoutes,V2 as ProfessionalLayout,m2 as PersonalLayout};
3
3
 
4
- //# debugId=C1F237108EE5F60964756E2164756E21
4
+ //# debugId=E554F32C1C3C801B64756E2164756E21
5
5
  //# sourceMappingURL=site.js.map
package/dist/site.js.map CHANGED
@@ -23,6 +23,6 @@
23
23
  "/** Curated public site authoring surface for @rizom/brain/site. */\n\nimport type { ComponentType } from \"preact\";\nimport {\n personalSitePlugin as createPersonalSitePlugin,\n PersonalLayout as RuntimePersonalLayout,\n routes as runtimePersonalRoutes,\n} from \"@brains/site-personal\";\nimport {\n professionalSitePlugin as createProfessionalSitePlugin,\n ProfessionalLayout as RuntimeProfessionalLayout,\n routes as runtimeProfessionalRoutes,\n} from \"@brains/site-professional\";\n\n/**\n * Opaque plugin marker. Consumers receive plugin instances via\n * `personalSitePlugin(config)` / `professionalSitePlugin(config)` and pass\n * them along to brain definitions; they do not introspect the shape.\n */\nexport interface Plugin {\n readonly id: string;\n readonly version: string;\n readonly type: \"core\" | \"entity\" | \"service\" | \"interface\";\n readonly packageName: string;\n}\n\n/**\n * Opaque route definition. Consumers receive route exports from\n * `@rizom/brain/site` and place them on `SitePackage.routes` verbatim.\n */\nexport interface SectionDefinitionInput {\n readonly id: string;\n readonly template: string;\n readonly content?: unknown;\n readonly dataQuery?:\n | {\n readonly entityType?: string | undefined;\n readonly template?: string | undefined;\n readonly query?: Record<string, unknown> | undefined;\n readonly [key: string]: unknown;\n }\n | undefined;\n readonly order?: number | undefined;\n}\n\nexport interface RouteDefinitionInput {\n readonly id: string;\n readonly path: string;\n readonly title?: string | undefined;\n readonly pageLabel?: string | undefined;\n readonly description?: string | undefined;\n readonly sections?: SectionDefinitionInput[] | undefined;\n readonly layout?: string | undefined;\n readonly fullscreen?: boolean | undefined;\n readonly pluginId?: string | undefined;\n readonly sourceEntityType?: string | undefined;\n readonly external?: boolean | undefined;\n readonly navigation?:\n | {\n readonly show?: boolean | undefined;\n readonly label?: string | undefined;\n readonly slot?: \"primary\" | \"secondary\" | undefined;\n readonly priority?: number | undefined;\n }\n | undefined;\n}\n\n/**\n * Per-entity-type display metadata used by generated list/detail routes.\n */\nexport interface EntityDisplayEntry {\n /** Human-readable singular label, e.g. \"Post\". */\n label: string;\n /** Plural name override; defaults to `${label}s`. */\n pluralName?: string;\n /** Layout name override; defaults to \"default\". */\n layout?: string;\n /** Enable pagination for list pages. */\n paginate?: boolean;\n /** Items per page; defaults to 10. */\n pageSize?: number;\n navigation?: {\n /** Whether to show this entity in navigation. */\n show?: boolean;\n /** Which navigation slot to render in. */\n slot?: \"primary\" | \"secondary\";\n /** Sort priority within the slot; lower comes first. */\n priority?: number;\n };\n}\n\n/**\n * A site package bundles layout components, hand-written routes, the site\n * plugin factory, and per-entity display metadata. Themes are resolved\n * separately by the framework.\n */\nexport interface SitePackage<TPluginConfig = Record<string, unknown>> {\n /** Layout components keyed by name — at minimum \"default\" is required. */\n layouts: Record<string, unknown>;\n /** Hand-written route definitions. */\n routes: RouteDefinitionInput[];\n /** Site plugin factory. */\n plugin: (config?: TPluginConfig) => Plugin;\n /** Per-entity display metadata. */\n entityDisplay: Record<string, EntityDisplayEntry>;\n /** Static assets to write to the output directory. */\n staticAssets?: Record<string, string>;\n}\n\ninterface RuntimePluginShape {\n readonly id: string;\n readonly version: string;\n readonly type: Plugin[\"type\"];\n readonly packageName: string;\n}\n\nfunction toPublicPlugin(plugin: RuntimePluginShape): Plugin {\n // Preserve the runtime instance. Rebuilding the opaque public shape here\n // strips prototype methods such as register(), leaving externally authored\n // SitePackages with a plugin that typechecks but cannot initialize.\n return plugin;\n}\n\nexport const PersonalLayout: ComponentType<Record<string, unknown>> =\n RuntimePersonalLayout as unknown as ComponentType<Record<string, unknown>>;\n\nexport function personalSitePlugin(config?: Record<string, unknown>): Plugin {\n return toPublicPlugin(createPersonalSitePlugin(config));\n}\n\nexport const routes: RouteDefinitionInput[] =\n runtimePersonalRoutes as RouteDefinitionInput[];\n\nexport const personalRoutes: RouteDefinitionInput[] = routes;\n\nexport const ProfessionalLayout: ComponentType<Record<string, unknown>> =\n RuntimeProfessionalLayout as unknown as ComponentType<\n Record<string, unknown>\n >;\n\nexport function professionalSitePlugin(\n config?: Record<string, unknown>,\n): Plugin {\n return toPublicPlugin(createProfessionalSitePlugin(config));\n}\n\nexport const professionalRoutes: RouteDefinitionInput[] =\n runtimeProfessionalRoutes as RouteDefinitionInput[];\n"
24
24
  ],
25
25
  "mappings": "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",
26
- "debugId": "C1F237108EE5F60964756E2164756E21",
26
+ "debugId": "E554F32C1C3C801B64756E2164756E21",
27
27
  "names": []
28
28
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rizom/brain",
3
- "version": "0.2.0-alpha.258",
3
+ "version": "0.2.0-alpha.259",
4
4
  "description": "Brain runtime + CLI — scaffold, run, and manage AI brain instances",
5
5
  "keywords": [
6
6
  "brain",