@rizom/brain 0.2.0-alpha.234 → 0.2.0-alpha.236
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/brain.js +1276 -1273
- package/dist/chunks/blog-post-adapter-vt71whj1.js +5 -0
- package/dist/chunks/{index-23zvavvg.js → index-51pqwxdb.js} +3 -3
- package/dist/chunks/{index-23zvavvg.js.map → index-51pqwxdb.js.map} +1 -1
- package/dist/chunks/{index-k1dcptsq.js → index-72d2a6vf.js} +3 -3
- package/dist/chunks/{index-k1dcptsq.js.map → index-72d2a6vf.js.map} +1 -1
- package/dist/chunks/{index-5ecgasa8.js → index-8ej1r6tb.js} +3 -3
- package/dist/chunks/{index-5ecgasa8.js.map → index-8ej1r6tb.js.map} +1 -1
- package/dist/chunks/{index-twtkr2fy.js → index-8hmmeype.js} +4 -4
- package/dist/chunks/{index-twtkr2fy.js.map → index-8hmmeype.js.map} +1 -1
- package/dist/chunks/{index-nqjbkf5n.js → index-a3n899ev.js} +3 -3
- package/dist/chunks/{index-nqjbkf5n.js.map → index-a3n899ev.js.map} +1 -1
- package/dist/chunks/{index-6tjqzkys.js → index-aatpaped.js} +4 -4
- package/dist/chunks/{index-6tjqzkys.js.map → index-aatpaped.js.map} +1 -1
- package/dist/chunks/index-atsf9t9d.js +6 -0
- package/dist/chunks/{index-q0dkt6nc.js.map → index-atsf9t9d.js.map} +5 -4
- package/dist/chunks/{index-zx3c2cws.js → index-b6k44k1d.js} +3 -3
- package/dist/chunks/{index-zx3c2cws.js.map → index-b6k44k1d.js.map} +3 -3
- package/dist/chunks/{index-vtwspye3.js → index-fxc39qy2.js} +3 -3
- package/dist/chunks/{index-vtwspye3.js.map → index-fxc39qy2.js.map} +1 -1
- package/dist/chunks/{index-srk70x0g.js → index-kga4gmhq.js} +3 -3
- package/dist/chunks/{index-srk70x0g.js.map → index-kga4gmhq.js.map} +1 -1
- package/dist/chunks/{index-57d1xga4.js → index-q5r12b3s.js} +4 -4
- package/dist/chunks/{index-57d1xga4.js.map → index-q5r12b3s.js.map} +1 -1
- package/dist/chunks/index-zc6br876.js +10 -0
- package/dist/chunks/{index-9djq51zg.js.map → index-zc6br876.js.map} +8 -8
- package/dist/chunks/{rss-datasource-gj506d71.js → rss-datasource-9j87n822.js} +3 -3
- package/dist/chunks/{rss-datasource-gj506d71.js.map → rss-datasource-9j87n822.js.map} +1 -1
- package/dist/deploy.js +1 -1
- package/dist/entities.js +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/interfaces.js +2 -2
- package/dist/interfaces.js.map +1 -1
- package/dist/migrations/auth-service/0009_wild_namor.sql +44 -0
- package/dist/migrations/auth-service/0010_mixed_red_skull.sql +23 -0
- package/dist/migrations/auth-service/meta/0009_snapshot.json +1824 -0
- package/dist/migrations/auth-service/meta/0010_snapshot.json +1820 -0
- package/dist/migrations/auth-service/meta/_journal.json +14 -0
- package/dist/plugins.d.ts +48 -3
- package/dist/plugins.js +3 -3
- package/dist/plugins.js.map +4 -4
- package/dist/services.js +1 -1
- package/dist/site.js +224 -224
- package/dist/site.js.map +7 -5
- package/dist/templates.js +2 -2
- package/dist/templates.js.map +1 -1
- package/dist/themes.js +1 -1
- package/dist/ui/admin-app.js +102 -102
- package/dist/ui/admin-app.js.map +10 -10
- package/package.json +1 -1
- package/dist/chunks/blog-post-adapter-bgre78xn.js +0 -5
- package/dist/chunks/index-9djq51zg.js +0 -10
- package/dist/chunks/index-q0dkt6nc.js +0 -6
- /package/dist/chunks/{blog-post-adapter-bgre78xn.js.map → blog-post-adapter-vt71whj1.js.map} +0 -0
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
// @bun
|
|
2
|
+
import{a,b}from"./index-51pqwxdb.js";import"./index-atsf9t9d.js";import"./index-zc6br876.js";import"./index-kga4gmhq.js";import"./index-72d2a6vf.js";import"./index-8hmmeype.js";import"./index-aatpaped.js";import"./index-8ej1r6tb.js";import"./index-b6k44k1d.js";import"./index-q5r12b3s.js";import"./index-fxc39qy2.js";export{b as blogPostAdapter,a as BlogPostAdapter};
|
|
3
|
+
|
|
4
|
+
//# debugId=D2E6026F1A96F07064756E2164756E21
|
|
5
|
+
//# sourceMappingURL=blog-post-adapter-vt71whj1.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{h as v,i as G}from"./index-
|
|
2
|
+
import{h as v,i as G}from"./index-atsf9t9d.js";import{$ as D}from"./index-72d2a6vf.js";import{ta as z}from"./index-aatpaped.js";class H extends D{constructor(){super({entityType:"post",purpose:"A long-form published article, essay, or blog post written for an audience.",schema:G,frontmatterSchema:v,supportsCoverImage:!0})}toMarkdown(j){let q=this.extractBody(j.content);try{let x=this.parseFrontMatter(j.content,v),I={...x,slug:x.slug??j.metadata.slug};return this.buildMarkdown(q,I)}catch{return q}}fromMarkdown(j){let q=this.parseFrontMatter(j,v),x=q.slug??z(q.title);return{content:j,entityType:"post",metadata:{title:q.title,slug:x,status:q.status,publishedAt:q.publishedAt,seriesName:q.seriesName,seriesIndex:q.seriesIndex}}}parsePostFrontmatter(j){return this.parseFrontMatter(j.content,v)}createPostContent(j,q){return this.buildMarkdown(q,j)}buildStub(j){let q={title:j.title,slug:j.id,status:"generating",excerpt:"",author:"AI"};return{content:this.buildMarkdown("",q),metadata:{title:j.title,slug:j.id,status:"generating"}}}}var M=new H;
|
|
3
3
|
export{H as a,M as b};
|
|
4
4
|
|
|
5
|
-
//# debugId=
|
|
6
|
-
//# sourceMappingURL=index-
|
|
5
|
+
//# debugId=24D15C2BCA0E5B6F64756E2164756E21
|
|
6
|
+
//# sourceMappingURL=index-51pqwxdb.js.map
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"import { BaseEntityAdapter } from \"@brains/plugins\";\nimport { slugify } from \"@brains/utils/string-utils\";\nimport {\n blogPostSchema,\n blogPostFrontmatterSchema,\n type BlogPost,\n type BlogPostFrontmatter,\n type BlogPostMetadata,\n} from \"../schemas/blog-post\";\n\n/**\n * Entity adapter for blog post entities\n * Following summary plugin pattern - frontmatter in content, key fields duplicated in metadata\n */\nexport class BlogPostAdapter extends BaseEntityAdapter<\n BlogPost,\n BlogPostMetadata,\n BlogPostFrontmatter\n> {\n constructor() {\n super({\n entityType: \"post\",\n purpose:\n \"A long-form published article, essay, or blog post written for an audience.\",\n schema: blogPostSchema,\n frontmatterSchema: blogPostFrontmatterSchema,\n supportsCoverImage: true,\n });\n }\n\n /**\n * Convert blog post entity to markdown with frontmatter\n * Merges auto-generated metadata (like slug) back into frontmatter\n */\n public override toMarkdown(entity: BlogPost): string {\n const body = this.extractBody(entity.content);\n try {\n const frontmatter = this.parseFrontMatter(\n entity.content,\n blogPostFrontmatterSchema,\n );\n\n // Merge auto-generated slug from metadata if missing in frontmatter\n const completeFrontmatter = {\n ...frontmatter,\n slug: frontmatter.slug ?? entity.metadata.slug,\n };\n\n return this.buildMarkdown(body, completeFrontmatter);\n } catch {\n return body;\n }\n }\n\n /**\n * Parse markdown with frontmatter to create partial blog post entity\n * Syncs frontmatter → metadata for key searchable fields\n * Auto-generates slug from title if not provided in frontmatter\n */\n public fromMarkdown(markdown: string): Partial<BlogPost> {\n const frontmatter = this.parseFrontMatter(\n markdown,\n blogPostFrontmatterSchema,\n );\n const slug = frontmatter.slug ?? slugify(frontmatter.title);\n\n return {\n content: markdown,\n entityType: \"post\",\n metadata: {\n title: frontmatter.title,\n slug,\n status: frontmatter.status,\n publishedAt: frontmatter.publishedAt,\n seriesName: frontmatter.seriesName,\n seriesIndex: frontmatter.seriesIndex,\n },\n };\n }\n\n /** Parse blog post frontmatter from entity content */\n public parsePostFrontmatter(entity: BlogPost): BlogPostFrontmatter {\n return this.parseFrontMatter(entity.content, blogPostFrontmatterSchema);\n }\n\n /** Create blog post content with frontmatter */\n public createPostContent(\n frontmatter: BlogPostFrontmatter,\n body: string,\n ): string {\n return this.buildMarkdown(body, frontmatter);\n }\n\n public buildStub(input: { id: string; title: string }): {\n content: string;\n metadata: BlogPostMetadata;\n } {\n const frontmatter: BlogPostFrontmatter = {\n title: input.title,\n slug: input.id,\n status: \"generating\",\n excerpt: \"\",\n author: \"AI\",\n };\n return {\n content: this.buildMarkdown(\"\", frontmatter),\n metadata: {\n title: input.title,\n slug: input.id,\n status: \"generating\",\n },\n };\n }\n}\n\n// Create default instance\nexport const blogPostAdapter: BlogPostAdapter = new BlogPostAdapter();\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": ";4IAcO,AAAM,IAAwB,CAInC,CACA,WAAW,EAAG,CACZ,MAAM,CACJ,WAAY,OACZ,QACE,8EACF,OAAQ,EACR,kBAAmB,EACnB,mBAAoB,EACtB,CAAC,EAOa,UAAU,CAAC,EAA0B,CACnD,IAAM,EAAO,KAAK,YAAY,EAAO,OAAO,EAC5C,GAAI,CACF,IAAM,EAAc,KAAK,iBACvB,EAAO,QACP,CACF,EAGM,EAAsB,IACvB,EACH,KAAM,EAAY,MAAQ,EAAO,SAAS,IAC5C,EAEA,OAAO,KAAK,cAAc,EAAM,CAAmB,EACnD,KAAM,CACN,OAAO,GASJ,YAAY,CAAC,EAAqC,CACvD,IAAM,EAAc,KAAK,iBACvB,EACA,CACF,EACM,EAAO,EAAY,MAAQ,EAAQ,EAAY,KAAK,EAE1D,MAAO,CACL,QAAS,EACT,WAAY,OACZ,SAAU,CACR,MAAO,EAAY,MACnB,OACA,OAAQ,EAAY,OACpB,YAAa,EAAY,YACzB,WAAY,EAAY,WACxB,YAAa,EAAY,WAC3B,CACF,EAIK,oBAAoB,CAAC,EAAuC,CACjE,OAAO,KAAK,iBAAiB,EAAO,QAAS,CAAyB,EAIjE,iBAAiB,CACtB,EACA,EACQ,CACR,OAAO,KAAK,cAAc,EAAM,CAAW,EAGtC,SAAS,CAAC,EAGf,CACA,IAAM,EAAmC,CACvC,MAAO,EAAM,MACb,KAAM,EAAM,GACZ,OAAQ,aACR,QAAS,GACT,OAAQ,IACV,EACA,MAAO,CACL,QAAS,KAAK,cAAc,GAAI,CAAW,EAC3C,SAAU,CACR,MAAO,EAAM,MACb,KAAM,EAAM,GACZ,OAAQ,YACV,CACF,EAEJ,CAGO,IAAM,EAAmC,IAAI",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "24D15C2BCA0E5B6F64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// @bun
|
|
2
|
-
import{
|
|
2
|
+
import{sa as a_}from"./index-aatpaped.js";import{_a as M}from"./index-q5r12b3s.js";import{$a as GD,ab as p,bb as H9,cb as y1}from"./index-fxc39qy2.js";var b1=p((Ar,uK)=>{var QR=Object.prototype.toString;uK.exports=function(Z){if(Z===void 0)return"undefined";if(Z===null)return"null";var X=typeof Z;if(X==="boolean")return"boolean";if(X==="string")return"string";if(X==="number")return"number";if(X==="symbol")return"symbol";if(X==="function")return VR(Z)?"generatorfunction":"function";if(HR(Z))return"array";if(BR(Z))return"buffer";if(zR(Z))return"arguments";if(KR(Z))return"date";if(WR(Z))return"error";if(UR(Z))return"regexp";switch(pK(Z)){case"Symbol":return"symbol";case"Promise":return"promise";case"WeakMap":return"weakmap";case"WeakSet":return"weakset";case"Map":return"map";case"Set":return"set";case"Int8Array":return"int8array";case"Uint8Array":return"uint8array";case"Uint8ClampedArray":return"uint8clampedarray";case"Int16Array":return"int16array";case"Uint16Array":return"uint16array";case"Int32Array":return"int32array";case"Uint32Array":return"uint32array";case"Float32Array":return"float32array";case"Float64Array":return"float64array"}if(DR(Z))return"generator";switch(X=QR.call(Z),X){case"[object Object]":return"object";case"[object Map Iterator]":return"mapiterator";case"[object Set Iterator]":return"setiterator";case"[object String Iterator]":return"stringiterator";case"[object Array Iterator]":return"arrayiterator"}return X.slice(8,-1).toLowerCase().replace(/\s/g,"")};function pK($){return typeof $.constructor==="function"?$.constructor.name:null}function HR($){if(Array.isArray)return Array.isArray($);return $ instanceof Array}function WR($){return $ instanceof Error||typeof $.message==="string"&&$.constructor&&typeof $.constructor.stackTraceLimit==="number"}function KR($){if($ instanceof Date)return!0;return typeof $.toDateString==="function"&&typeof $.getDate==="function"&&typeof $.setDate==="function"}function UR($){if($ instanceof RegExp)return!0;return typeof $.flags==="string"&&typeof $.ignoreCase==="boolean"&&typeof $.multiline==="boolean"&&typeof $.global==="boolean"}function VR($,Z){return pK($)==="GeneratorFunction"}function DR($){return typeof $.throw==="function"&&typeof $.return==="function"&&typeof $.next==="function"}function zR($){try{if(typeof $.length==="number"&&typeof $.callee==="function")return!0}catch(Z){if(Z.message.indexOf("callee")!==-1)return!0}return!1}function BR($){if($.constructor&&typeof $.constructor.isBuffer==="function")return $.constructor.isBuffer($);return!1}});var oK=p((qr,fK)=>{/*!
|
|
3
3
|
* is-extendable <https://github.com/jonschlinkert/is-extendable>
|
|
4
4
|
*
|
|
5
5
|
* Copyright (c) 2015, Jon Schlinkert.
|
|
@@ -81,5 +81,5 @@ ${this.stack.split(`
|
|
|
81
81
|
`).trim();if(!U.includes("("))U=U.replace(/at (.*)/,"at ($1)");return J=`${K}
|
|
82
82
|
${U}`,J}},G=$.spanOptions&&"captureStackTrace"in $.spanOptions?$.spanOptions:{captureStackTrace:Y,...$.spanOptions};return p_(Z,$.spanName,G)}var Sn=e4,kn=()=>($)=>$,vn=()=>($)=>$,bn=()=>($)=>$;var yK={};H9(yK,{unsafeSet:()=>C2,unsafeHas:()=>I2,unsafeGet:()=>l_,size:()=>ln,set:()=>pn,runtimePromise:()=>i_,runtime:()=>gK,run:()=>rn,remove:()=>on,makeRuntimePromise:()=>dn,makeRuntime:()=>mn,make:()=>bK,join:()=>sn,isFiberMap:()=>vK,has:()=>fn,get:()=>un,clear:()=>nn,awaitEmpty:()=>an,TypeId:()=>R2});var SK=L1;var f_=R5;var o_=aW;var R2=Symbol.for("effect/FiberMap"),vK=($)=>T($,R2),yn={[R2]:R2,[Symbol.iterator](){if(this.state._tag==="Closed")return fz();return this.state.backing[Symbol.iterator]()},toString(){return i(this.toJSON())},toJSON(){return{_id:"FiberMap",state:this.state}},[d](){return this.toJSON()},pipe(){return _(this,arguments)}},hn=($,Z)=>{let X=Object.create(yn);return X.state={_tag:"Open",backing:$},X.deferred=Z,X},bK=()=>RK(C5(D_(),($)=>hn(c6(),$)),($)=>R1((Z)=>{let X=$.state;if(X._tag==="Closed")return I1;return $.state={_tag:"Closed"},AT(oz(X.backing,([,J])=>J),o5(Z.id(),E1)).pipe(IK($.deferred))})),mn=()=>_2(bK(),($)=>gK($)()),dn=()=>_2(bK(),($)=>i_($)()),r_=-1,E1=jO(r_,0),cn=CQ(void 0,{emptyCase:z8,failCase:z8,dieCase:z8,interruptCase:($,Z)=>GJ(I7(Z),r_),sequentialCase:($,Z,X)=>Z||X,parallelCase:($,Z,X)=>Z||X}),C2=W(($)=>vK($[0]),($,Z,X,J)=>{if($.state._tag==="Closed"){X.unsafeInterruptAsFork(o5(J?.interruptAs??s0,E1));return}let Y=V0($.state.backing,Z);if(Y._tag==="Some"){if(J?.onlyIfMissing===!0){X.unsafeInterruptAsFork(o5(J?.interruptAs??s0,E1));return}else if(Y.value===X)return;Y.value.unsafeInterruptAsFork(o5(J?.interruptAs??s0,E1))}U8($.state.backing,Z,X),X.addObserver((G)=>{if($.state._tag==="Closed")return;let Q=V0($.state.backing,Z);if(a(Q)&&X===Q.value)p6($.state.backing,Z);if(pH(G)&&(J?.propagateInterruption===!0?!cn(G.cause):!_Q(G.cause)))O_($.deferred,G)})}),pn=W(($)=>vK($[0]),($,Z,X,J)=>CK((Y)=>C1(()=>C2($,Z,X,{...J,interruptAs:Y})))),l_=W(2,($,Z)=>$.state._tag==="Closed"?N():V0($.state.backing,Z)),un=W(2,($,Z)=>_K(()=>l_($,Z))),I2=W(2,($,Z)=>$.state._tag==="Closed"?!1:c8($.state.backing,Z)),fn=W(2,($,Z)=>C1(()=>I2($,Z))),on=W(2,($,Z)=>R1((X)=>{if($.state._tag==="Closed")return I1;let J=V0($.state.backing,Z);if(J._tag==="None")return I1;return cZ(J.value,o5(X.id(),E1))})),nn=($)=>R1((Z)=>{if($.state._tag==="Closed")return I1;return FK($.state.backing,([,X])=>cZ(X,o5(Z.id(),E1)))}),kK=function(){let $=void 0;return()=>{if($===void 0)$=xK(T2);return $}}(),rn=function(){let $=arguments[0];if(MK(arguments[2]))return n_($,arguments[1],arguments[2],arguments[3]);let Z=arguments[1],X=arguments[2];return(J)=>n_($,Z,J,X)},n_=($,Z,X,J)=>R1((Y)=>{if($.state._tag==="Closed")return T2;else if(J?.onlyIfMissing===!0&&I2($,Z))return C1(kK);let G=o_({context:Y.currentContext,fiberRefs:Y.getFiberRefs(),runtimeFlags:f_.runtimeFlags}),Q=SK(G)(X);return C2($,Z,Q,{...J,interruptAs:Y.id()}),LK(Q)}),gK=($)=>()=>C5(EK(),(Z)=>{let X=SK(Z);return(J,Y,G)=>{if($.state._tag==="Closed")return kK();else if(G?.onlyIfMissing===!0&&I2($,J))return kK();let Q=X(Y,G);return C2($,J,Q,G),Q}}),i_=($)=>()=>C5(gK($)(),(Z)=>(X,J,Y)=>new Promise((G,Q)=>Z(X,J,Y).addObserver((H)=>{if(uH(H))G(H.value);else Q(RQ(H.cause))}))),ln=($)=>C1(()=>$.state._tag==="Closed"?0:X4($.state.backing)),sn=($)=>Q4($.deferred),an=($)=>jK({while:()=>$.state._tag==="Open"&&X4($.state.backing)>0,body:()=>OT(uz($)[1]),step:r8});var hK=GD(ZG(),1);var h70=a_();function Wr($){let{data:Z,content:X}=hK.default($);return{frontmatter:{...Z},content:X.trim()}}function Kr($,Z){return hK.default.stringify(Z,$)}function m70($,Z,X){let{frontmatter:J,content:Y}=Wr($);if(X===null||X===void 0)delete J[Z];else J[Z]=X;return Kr(J,Y)}class t_{cache=null;cacheParseError=null;logger;entityService;entityType;defaultBody;readScope;constructor($,Z,X,J,Y="public"){this.entityService=$,this.logger=Z.child(this.constructor.name),this.entityType=X,this.defaultBody=J,this.readScope=Y}async initialize(){if(await this.load())return;if(await this.load())return;this.logger.info(`No ${this.entityType} found, creating default ${this.entityType}`);try{let $=this.createContent(this.defaultBody);await this.entityService.createEntity({entity:{id:this.entityType,entityType:this.entityType,content:$,metadata:{}}}),await this.load(),this.logger.info(`Default ${this.entityType} created successfully`)}catch($){this.logger.error(`Failed to create default ${this.entityType}`,{error:$})}}get(){if(this.cache&&!this.cacheParseError)return this.parseBody(this.cache.content);return this.defaultBody}getContent(){if(this.cache)return this.cache.content;return this.createContent(this.defaultBody)}async refreshCache(){await this.load()}async load(){try{let $=await this.entityService.getEntity({entityType:this.entityType,id:this.entityType,visibilityScope:this.readScope});if(this.cache=$,this.cacheParseError=null,$)try{return this.parseBody($.content),this.logger.debug(`${this.entityType} loaded`),!0}catch(Z){return this.cacheParseError=Z instanceof Error?Z:Error(String(Z)),this.logger.error(`Failed to parse ${this.entityType} \u2014 using default. Fix the entity content to clear this error.`,{error:this.cacheParseError.message}),!0}else this.logger.debug(`No ${this.entityType} found in database`)}catch($){this.logger.warn(`Failed to load ${this.entityType}`,{error:$}),this.cache=null,this.cacheParseError=null}return!1}}export{HX as B,Ql as C,n8 as D,jE as E,I as F,r1 as G,k8 as H,OX as I,S5 as J,W0 as K,VZ as L,e9 as M,U2 as N,j1 as O,yK as P,mK as Q,XR as R,k2 as S,YR as T,Zz as U,JG as V,i$ as W,YG as X,Wr as Y,Kr as Z,m70 as _,WX as $,t_ as aa,KE as ba,UE as ca,VE as da};
|
|
83
83
|
|
|
84
|
-
//# debugId=
|
|
85
|
-
//# sourceMappingURL=index-
|
|
84
|
+
//# debugId=0A61260099509FC264756E2164756E21
|
|
85
|
+
//# sourceMappingURL=index-72d2a6vf.js.map
|