mirror of
https://github.com/Jermolene/TiddlyWiki5
synced 2024-11-29 12:59:56 +00:00
64812f5c06
* Add join attribute to list widget * Use new join attribute in HTML saving templates This simplifies the logic involved in saving tiddlers in JSON format into TW html files, and should also slightly speed up the saving process depending on how often that list widget gets refreshed. * Unit tests for list widget's new join attribute * Add `<$list-join>` widget Allows specifying complicated join text more easily than an attribute
37 lines
1.8 KiB
Plaintext
37 lines
1.8 KiB
Plaintext
title: $:/core/templates/store.area.template.html
|
|
|
|
\whitespace trim
|
|
<!-- Unencrypted -->
|
|
<$list filter="[[$:/isEncrypted]get[text]else[no]match[no]]">
|
|
<$list filter="[[storeAreaFormat]is[variable]getvariable[]else[json]match[json]]">
|
|
<!-- New-style JSON store area, with an old-style store area for compatibility with v5.1.x tooling -->
|
|
`<script class="tiddlywiki-tiddler-store" type="application/json">[`
|
|
<$let newline={{{ [charcode[10]] }}} join=`,$(newline)$`>
|
|
<$text text=<<newline>>/>
|
|
<$list filter=<<saveTiddlerFilter>> join=<<join>> template="$:/core/templates/html-json-tiddler"/>
|
|
<$vars numTiddlers={{{ [subfilter<saveTiddlerFilter>count[]] }}}>
|
|
<$list filter={{{ [<skinnySaveTiddlerFilter>] }}} join=<<join>> template="$:/core/templates/html-json-skinny-tiddler"/>
|
|
</$vars>
|
|
<$text text=<<newline>>/>
|
|
</$let>
|
|
`]</script>`
|
|
`<div id="storeArea" style="display:none;">`
|
|
`</div>`
|
|
</$list>
|
|
<$list filter="[[storeAreaFormat]is[variable]getvariable[]else[json]match[div]]">
|
|
<!-- Old-style DIV/PRE-based store area -->
|
|
<$reveal type="nomatch" state="$:/isEncrypted" text="yes">
|
|
`<div id="storeArea" style="display:none;">`
|
|
<$list filter=<<saveTiddlerFilter>> template="$:/core/templates/html-div-tiddler"/>
|
|
<$list filter={{{ [<skinnySaveTiddlerFilter>] }}} template="$:/core/templates/html-div-skinny-tiddler"/>
|
|
`</div>`
|
|
</$reveal>
|
|
</$list>
|
|
</$list>
|
|
<!-- Encrypted -->
|
|
<$list filter="[[$:/isEncrypted]get[text]else[no]match[yes]]">
|
|
`<!--~~ Encrypted tiddlers ~~-->`
|
|
`<pre id="encryptedStoreArea" type="text/plain" style="display:none;">`
|
|
<$encrypt filter=<<saveTiddlerFilter>>/>
|
|
`</pre>`
|
|
</$list> |