<div object key:page-title="I am a page title"></div>
→
<div object key:page-title="I am a page title"></div>
<div object key:page-title="@innerText">I am a page title</div>
<div object key:page-title="@innerText" edit:page-title>I am an editable page title</div>
<div object key:page-title="@innerText" edit:page-title default:page-title="Default page title">I am an editable page title with a default value</div>
<div object key:some-multi-line-text="@innerText" edit:some-multi-line-text:textarea>Some text on multiple lines</div>
<div array key="someSortableItems" sortable> <div object key:sortable-item-text="@innerText" edit:sortable-item-text>Sortable item 1</div> <div object key:sortable-item-text="@innerText" edit:sortable-item-text>Sortable item 2</div> <div object key:sortable-item-text="@innerText" edit:sortable-item-text>Sortable item 3</div> </div>
<div object key:page-title="@search"> <div target:page-title="@innerText">Page title</div> <button edit:page-title>Edit page title</button> </div>
<div object key:my-favorite-link-name="@search" key:my-favorite-link-url="@search"> <div> <a target:my-favorite-link-url="@href" href="https://www.notion.so/" target="_blank"> <span target:my-favorite-link-name="@innerText">Notion</span> </a> </div> <button edit:my-favorite-link-name edit:my-favorite-link-url>Edit link</button> </div>
<div object key:my-favorite-image-url="@search"> <div> <img target:my-favorite-image-url="@src" src="https://remake-web-assets.s3.amazonaws.com/jack-o-lanterns.png" alt="Jack o' lanterns for Halloween"> </div> <button edit:my-favorite-image-url>Edit image URL</button> </div>
<div object key:page-title="@innerText" edit:page-title:without-remove>My Amazing Adventure!</div>
<div object key:site-name="@search"> <div target:site-name="@innerText">Site name</div> <input type="text" update:site-name value="Site name"> </div>
<div object key:text-note="@search"> <div target:text-note="@innerText">This is a text note</div> <textarea update:text-note>This is a text note</textarea> </div>
<div object key:portfolio-theme="Classic"> <div>Portfolio theme: <b watch:portfolio-theme="@innerText">Classic</b></div> <div><label><input type="radio" value="Classic" update:portfolio-theme name="portfolio-theme" checked> Classic</label></div> <div><label><input type="radio" value="Modern" update:portfolio-theme name="portfolio-theme"> Modern</label></div> <div><label><input type="radio" value="Artistic" update:portfolio-theme name="portfolio-theme"> Artistic</label></div> </div>
<div object key:dark-mode="on" key:available-for-projects="off"> <div><b>Settings:</b></div> <div><label><input type="checkbox" update:dark-mode checked> Dark mode</label> <b data-dark-mode-on>On</b><b data-dark-mode-off>Off</b></div> <div><label><input type="checkbox" update:available-for-projects> Available for projects</label> <b data-available-on>On</b><b data-available-off>Off</b></div> </div>
<div object key:page-layout="One column"> <div>Page layout: <b watch:page-layout="@innerText">One column</b></div> <select update:page-layout> <option value="One column">One column</option> <option value="Two column">Two column</option> <option value="Three column">Three column</option> </select> </div>
<div object key:favorite-color="@search"> <div>Favorite color: <b target:favorite-color="@innerText">none chosen</b></div> <button update:favorite-color="red">red</button> <button update:favorite-color="green">green</button> <button update:favorite-color="rainbow">rainbow</button> </div>
<div object key:direct-messages="@search"> <div>Direct messages: <b target:direct-messages="@innerText">on</b></div> <button toggle:direct-messages>Toggle</button> </div>
<div object key:page-title-being-watched="@search"> <div target:page-title-being-watched="@innerText">Page title</div> <div>Mirror data: <span watch:page-title-being-watched="@innerText">Page title</span></div> <div>Mirror data: <span watch:page-title-being-watched="@innerText">Page title</span></div> <div>Mirror data: <span watch:page-title-being-watched="@innerText">Page title</span></div> <button edit:page-title-being-watched>Edit page title</button> </div>
<div object key:number-for-calculation="@search"> <button edit:number-for-calculation>Edit number</button> <div><b target:number-for-calculation="@innerText">10</b></div> <div>x 3 = <span watch:number-for-calculation="customWatchFunc(3)">30</span></div> <div>x 6 = <span watch:number-for-calculation="customWatchFunc(6)">60</span></div> <div>x 9 = <span watch:number-for-calculation="customWatchFunc(9)">90</span></div> </div>
<div> <button save>Save page</button> </div>
<div object> <h1 class="books-heading">Books:</h1> <div array key="books"> <div object key:book-name="@search"> <div target:book-name="@innerText">Ready Player One</div> <div object key="authorInfo" key:author-name="@search"> <div target:author-name="@innerText">Ernest Cline</div> <div class="other-books"> <div>Books by same author:</div> <div array key="otherBooks"> <div object key:book-name="@search"> <div target:book-name="@innerText">Ready Player Two</div> <div array key="audiobookReaders"> <div object key:reader-name="@search" key:reader-rating="@search"> <div>Read by: <span target:reader-name="@innerText">Wil Wheaton</span></div> <div target:reader-rating="@innerText">4.8/5</div> </div> </div> </div> <div object key:book-name="@search"> <div target:book-name="@innerText">Armada</div> <div array key="audiobookReaders"> <div object key:reader-name="@search" key:reader-rating="@search"> <div>Read by: <span target:reader-name="@innerText">Wil Wheaton</span></div> <div target:reader-rating="@innerText">n/a</div> </div> </div> </div> </div> </div> </div> </div> <div object key:book-name="@search"> <div target:book-name="@innerText">Dune</div> <div object key="authorInfo" key:author-name="@search"> <div target:author-name="@innerText">Frank Herbert</div> <div class="other-books"> <div>Books by same author:</div> <div array key="otherBooks"> <div object key:book-name="@search"> <div target:book-name="@innerText">The Jesus Incident</div> <div array key="audiobookReaders"> <div object key:reader-name="@search" key:reader-rating="@search"> <div>Read by: <span target:reader-name="@innerText">Scott Brick</span></div> <div target:reader-rating="@innerText">4.4/5</div> </div> </div> </div> </div> </div> </div> </div> </div> </div>
<div object> <div array key="todos"> {{#for todo in todos}} <div object key:text="@innerText" edit:text>{{todo.text}}</div> {{/for}} </div> <button new:todo>Add todo</button> </div>
<div object> <button new:project>New project</button> <div array key="projects"> {{#for project in projects}} <div object key:project-name="@search"> <h1 target:project-name="@innerText" edit:project-name>{{project.projectName}}</h1> <div object key:budget="@innerText" edit:budget>$4,500</div> <div array key="projectItems"> {{#for projectItem in project.projectItems}} <div object key:item-length="@search" key:item-type="@search" edit:item-length edit:item-type> <div target:item-length="@innerText">{{projectItem.itemLength}}</div> <div target:item-type="@innerText">{{projectItem.itemType}}</div> </div> {{/for}} </div> <button new:project-item>New item</button> </div> {{/for}} </div> </div>
<div object key:uploaded-image="@search"> <input update:uploaded-image type="file" accept="image/*"> <div> <img target:uploaded-image="@src"> </div> </div>
<div custom-save="customSaveFunc"> <div object key:page-title="@innerText" edit:page-title>I am an editable page title</div> </div>
<div> <div object key:page-title="I am a page title"> <button remove>Remove</button> </div> </div>
<div object key:page-title="I am a page title"> <button erase>Erase data</button> </div>
<div object key:page-title="@innerText"> <button edit:page-title:with-erase>Click me and then the "remove" button to test</button> </div>
<div no-save> <div object key:item-title="@innerText" edit:item-title>Edit me!</div> </div>
<div object key:product-name="@search"> <div target:product-name="@innerText">The best product</div> <div ignore-data object key="productDetails" key:product-price="@innerText">$20</div> </div>
<div disable-events> <div object key:favorite-planet="Pluto" key:a-simple-note="A note" key:cool-mode="on"> <input type="text" update:a-simple-note value="A note"> <button update:favorite-planet="Mars">Mars</button> <button toggle:cool-mode>Toggle cool mode</button> <button erase>Erase data</button> </div> </div>
<div object temporary:key:color-picker-choice="Forest green"> <div>Color picker choice: <b watch:color-picker-choice="@innerText">Forest green</b></div> <div><label><input type="radio" value="Forest green" update:color-picker-choice name="color-picker-choice" checked> Forest green</label></div> <div><label><input type="radio" value="Sapphire" update:color-picker-choice name="color-picker-choice"> Sapphire</label></div> <div><label><input type="radio" value="Amber" update:color-picker-choice name="color-picker-choice"> Amber</label></div> </div>
<div object temporary:key:menu-selection="Site preview"> <div>Selected menu: <b watch:menu-selection="@innerText">Site preview</b></div> <div><button update:menu-selection="Site preview" checked> Site preview</button></div> <div><button update:menu-selection="Code editor"> Code editor</button></div> <div><button update:menu-selection="User settings"> User settings</button></div> </div>
<div object temporary:key:headline-keyword="@search"> <div>Generated headline: <b>Don't miss out, try <span target:headline-keyword="@innerText">Fooz</span> today!</b></div> <button edit:headline-keyword>Edit keyword</button> </div>
<div object key:some-page-heading="@search"> <div target:some-page-heading="@innerText">Page heading</div> <div>Mirror data: <span watch:some-page-heading="@innerText">Page title</span></div> <button edit:some-page-heading>Edit page title</button> <div object key="nestedData" key:some-page-heading="This shouldn't update unless clicked directly"> <div edit:some-page-heading watch:some-page-heading="@innerText">This shouldn't update unless clicked directly</div> </div> </div>