import{component}from"@plusnew/core";importfactoryfrom"@plusnew/state";const{ Repository, Branch, Item, List }=factory<{blogPost: {listParameter: {sort: "asc","desc"},item: {id: string,model: "blogPost",attributes: {title: string},relationships: {author: {id: string,model: 'user',}}}},user: {listParameter: {},item: {id: string,model: "user",attributes: {name: string},relationships: {}}}}>();exportdefaultcomponent("Example"()=><Repositoryrequests={{blogPost: {readList: ({ sort })=>fetch(`/api/blogPost?sort=${sort}`).then((res)=>res.json()),readItem: (id)=>fetch(`/api/blogPost/${id}`).then((res)=>res.json())},user: {readList: ()=>fetch(`/api/user`).then((res)=>res.json()),readItem: (id)=>fetch(`/api/user/${id}`).then((res)=>res.json())},}}><Branch><Listmodel="blogPost"parameter={{sort: 'asc'}}>{({isLoading,items: blogPosts})=>blogPosts.map(blogPost=><Itemmodel="blogPost"id={blogPost.id}>{(blogPostItemView)=>blogPostItemView.isLoading
? 'loading'
:
<>{blogPostItemView.item.attributes.title}<Itemmodel="user"id={blogPostItemView.item.relationships.author.id}>{({isLoading,item: author, commitAttributes})=><inputvalue={author?.attributes.name??""}onchange={(evt)=>commitAttributes({'name': evt.currentTarget.value})}/>}</Item><Merge>{({ merge, changes })=><buttononclick={()=>merge(changes)}/>}</Merge></>}<Item>
)
}</List></Branch></Repository>);Uh oh!
There was an error while loading. Please reload this page.
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Latest commit | ||||