tiddlywiki 5.2.0 → 5.2.3

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.
Files changed (1131) hide show
  1. package/.eslintignore +5 -12
  2. package/.eslintrc.yml +17 -1
  3. package/.github/ISSUE_TEMPLATE/bug_report.yml +67 -0
  4. package/.github/ISSUE_TEMPLATE/config.yml +8 -0
  5. package/.github/PULL_REQUEST_TEMPLATE/pull_request_template.md +8 -0
  6. package/.github/workflows/ci.yml +3 -0
  7. package/bin/build-site.sh +1 -1
  8. package/bin/build-tw-org.sh +97 -0
  9. package/boot/boot.js +85 -21
  10. package/boot/bootprefix.js +1 -0
  11. package/contributing.md +1 -1
  12. package/core/copyright.tid +1 -1
  13. package/core/language/en-GB/ControlPanel.multids +17 -0
  14. package/core/language/en-GB/EditTemplate.multids +1 -0
  15. package/core/language/en-GB/Fields.multids +4 -3
  16. package/core/language/en-GB/Help/default.tid +4 -1
  17. package/core/language/en-GB/Help/render.tid +2 -2
  18. package/core/language/en-GB/Misc.multids +1 -1
  19. package/core/language/en-GB/SideBar.multids +1 -0
  20. package/core/modules/commands/init.js +1 -1
  21. package/core/modules/commands/render.js +1 -1
  22. package/core/modules/commands/rendertiddler.js +1 -0
  23. package/core/modules/commands/rendertiddlers.js +1 -1
  24. package/core/modules/commands/save.js +56 -42
  25. package/core/modules/commands/savelibrarytiddlers.js +1 -1
  26. package/core/modules/commands/savewikifolder.js +1 -1
  27. package/core/modules/deserializers.js +7 -10
  28. package/core/modules/editor/engines/framed.js +4 -2
  29. package/core/modules/editor/engines/simple.js +1 -1
  30. package/core/modules/editor/factory.js +1 -1
  31. package/core/modules/editor/operations/text/focus-editor.js +17 -0
  32. package/core/modules/editor/operations/text/prefix-lines.js +2 -2
  33. package/core/modules/editor/operations/text/wrap-lines.js +29 -10
  34. package/core/modules/filterrunprefixes/cascade.js +53 -0
  35. package/core/modules/filterrunprefixes/filter.js +16 -9
  36. package/core/modules/filterrunprefixes/map.js +25 -10
  37. package/core/modules/filterrunprefixes/reduce.js +16 -18
  38. package/core/modules/filterrunprefixes/sort.js +10 -8
  39. package/core/modules/filters/crypto.js +27 -0
  40. package/core/modules/filters/insertafter.js +46 -0
  41. package/core/modules/filters/insertbefore.js +7 -2
  42. package/core/modules/filters/is/draft.js +2 -2
  43. package/core/modules/filters/listops.js +14 -1
  44. package/core/modules/filters/lookup.js +29 -6
  45. package/core/modules/filters/math.js +29 -0
  46. package/core/modules/filters/prefix.js +30 -12
  47. package/core/modules/filters/removeprefix.js +16 -6
  48. package/core/modules/filters/removesuffix.js +20 -6
  49. package/core/modules/filters/search.js +1 -0
  50. package/core/modules/filters/strings.js +11 -9
  51. package/core/modules/filters/suffix.js +32 -10
  52. package/core/modules/filters/untagged.js +1 -1
  53. package/core/modules/filters.js +23 -3
  54. package/core/modules/parsers/parseutils.js +2 -2
  55. package/core/modules/parsers/wikiparser/rules/html.js +4 -2
  56. package/core/modules/parsers/wikiparser/wikiparser.js +11 -8
  57. package/core/modules/pluginswitcher.js +1 -1
  58. package/core/modules/savers/gitea.js +2 -2
  59. package/core/modules/savers/github.js +2 -2
  60. package/core/modules/savers/gitlab.js +2 -2
  61. package/core/modules/savers/put.js +11 -7
  62. package/core/modules/savers/upload.js +1 -1
  63. package/core/modules/server/routes/put-tiddler.js +2 -2
  64. package/core/modules/server/server.js +40 -14
  65. package/core/modules/startup/browser-messaging.js +6 -4
  66. package/core/modules/startup/render.js +7 -2
  67. package/core/modules/startup/rootwidget.js +14 -0
  68. package/core/modules/startup/story.js +3 -1
  69. package/core/modules/startup/windows.js +22 -9
  70. package/core/modules/tiddler.js +3 -3
  71. package/core/modules/upgraders/plugins.js +1 -1
  72. package/core/modules/utils/crypto.js +2 -2
  73. package/core/modules/utils/dom/dom.js +51 -0
  74. package/core/modules/utils/dom/dragndrop.js +32 -14
  75. package/core/modules/utils/dom/notifier.js +2 -1
  76. package/core/modules/utils/dom/scroller.js +11 -7
  77. package/core/modules/utils/edition-info.js +1 -5
  78. package/core/modules/utils/parsetree.js +48 -11
  79. package/core/modules/utils/pluginmaker.js +2 -4
  80. package/core/modules/utils/utils.js +15 -19
  81. package/core/modules/widgets/action-listops.js +2 -2
  82. package/core/modules/widgets/action-sendmessage.js +17 -7
  83. package/core/modules/widgets/action-setfield.js +12 -14
  84. package/core/modules/widgets/action-setmultiplefields.js +86 -0
  85. package/core/modules/widgets/button.js +7 -2
  86. package/core/modules/widgets/checkbox.js +124 -15
  87. package/core/modules/widgets/codeblock.js +7 -1
  88. package/core/modules/widgets/draggable.js +49 -19
  89. package/core/modules/widgets/dropzone.js +2 -1
  90. package/core/modules/widgets/element.js +9 -3
  91. package/core/modules/widgets/eventcatcher.js +11 -33
  92. package/core/modules/widgets/image.js +14 -0
  93. package/core/modules/widgets/importvariables.js +1 -1
  94. package/core/modules/widgets/let.js +96 -0
  95. package/core/modules/widgets/link.js +2 -1
  96. package/core/modules/widgets/list.js +3 -0
  97. package/core/modules/widgets/navigator.js +2 -17
  98. package/core/modules/widgets/radio.js +2 -2
  99. package/core/modules/widgets/scrollable.js +11 -7
  100. package/core/modules/widgets/setmultiplevariables.js +81 -0
  101. package/core/modules/widgets/vars.js +2 -4
  102. package/core/modules/widgets/widget.js +58 -31
  103. package/core/modules/wiki-bulkops.js +20 -15
  104. package/core/modules/wiki.js +49 -22
  105. package/core/palettes/CupertinoDark.tid +3 -3
  106. package/core/palettes/GruvBoxDark.tid +2 -2
  107. package/core/palettes/Nord.tid +2 -2
  108. package/core/templates/save-lazy-all.tid +2 -2
  109. package/core/templates/server/static.sidebar.wikitext.tid +1 -1
  110. package/core/templates/server/static.tiddler.html.tid +2 -2
  111. package/core/templates/tiddlywiki5.html.tid +1 -1
  112. package/core/ui/Actions/new-image.tid +1 -0
  113. package/core/ui/Actions/new-journal.tid +2 -1
  114. package/core/ui/Actions/new-tiddler.tid +1 -0
  115. package/core/ui/AdvancedSearch/Filter.tid +50 -10
  116. package/core/ui/AdvancedSearch/FilterButtons/clear.tid +1 -0
  117. package/core/ui/AdvancedSearch/FilterButtons/delete.tid +1 -0
  118. package/core/ui/AdvancedSearch/FilterButtons/dropdown.tid +5 -2
  119. package/core/ui/AdvancedSearch/FilterButtons/export.tid +1 -0
  120. package/core/ui/AdvancedSearch/Shadows.tid +54 -12
  121. package/core/ui/AdvancedSearch/Standard.tid +36 -19
  122. package/core/ui/AdvancedSearch/System.tid +54 -12
  123. package/core/ui/AdvancedSearch.tid +1 -0
  124. package/core/ui/AlertTemplate.tid +10 -1
  125. package/core/ui/Components/tag-link.tid +2 -1
  126. package/core/ui/ControlPanel/Advanced.tid +1 -0
  127. package/core/ui/ControlPanel/Appearance.tid +1 -0
  128. package/core/ui/ControlPanel/Basics.tid +3 -0
  129. package/core/ui/ControlPanel/Cascades/EditTemplateBody.tid +9 -0
  130. package/core/ui/ControlPanel/Cascades/FieldEditor.tid +9 -0
  131. package/core/ui/ControlPanel/Cascades/StoryTiddler.tid +9 -0
  132. package/core/ui/ControlPanel/Cascades/TiddlerColour.tid +9 -0
  133. package/core/ui/ControlPanel/Cascades/TiddlerIcon.tid +9 -0
  134. package/core/ui/ControlPanel/Cascades/ViewTemplateBody.tid +9 -0
  135. package/core/ui/ControlPanel/Cascades/ViewTemplateTitle.tid +9 -0
  136. package/core/ui/ControlPanel/Cascades.tid +10 -0
  137. package/core/ui/ControlPanel/EditorTypes.tid +1 -0
  138. package/core/ui/ControlPanel/Info.tid +1 -0
  139. package/core/ui/ControlPanel/KeyboardShortcuts.tid +18 -7
  140. package/core/ui/ControlPanel/Modals/AddPlugins.tid +26 -9
  141. package/core/ui/ControlPanel/Parsing.tid +3 -0
  142. package/core/ui/ControlPanel/Plugins/Add/Updates.tid +5 -1
  143. package/core/ui/ControlPanel/Plugins/AddPlugins.tid +4 -1
  144. package/core/ui/ControlPanel/Plugins.tid +1 -0
  145. package/core/ui/ControlPanel/Saving/TiddlySpot.tid +2 -1
  146. package/core/ui/ControlPanel/Saving.tid +1 -0
  147. package/core/ui/ControlPanel/Settings/DefaultMoreSidebarTab.tid +1 -0
  148. package/core/ui/ControlPanel/Settings/DefaultSidebarTab.tid +1 -0
  149. package/core/ui/ControlPanel/Settings/LinkToBehaviour.tid +1 -0
  150. package/core/ui/ControlPanel/Settings/ToolbarButtonStyle.tid +1 -0
  151. package/core/ui/ControlPanel/Toolbars/EditorItemTemplate.tid +8 -1
  152. package/core/ui/ControlPanel/Toolbars/ItemTemplate.tid +11 -1
  153. package/core/ui/ControlPanel/Toolbars.tid +1 -0
  154. package/core/ui/ControlPanel.tid +1 -0
  155. package/core/ui/DefaultSearchResultList.tid +1 -0
  156. package/core/ui/EditTemplate/Preview/output.tid +1 -1
  157. package/core/ui/EditTemplate/body/canonical-uri.tid +13 -0
  158. package/core/ui/EditTemplate/body/default.tid +41 -0
  159. package/core/ui/EditTemplate/body-editor.tid +2 -0
  160. package/core/ui/EditTemplate/body.tid +1 -51
  161. package/core/ui/EditTemplate/controls.tid +1 -0
  162. package/core/ui/EditTemplate/fieldEditor-default.tid +3 -0
  163. package/core/ui/EditTemplate/fields.tid +19 -10
  164. package/core/ui/EditTemplate/shadow.tid +2 -0
  165. package/core/ui/EditTemplate/tags.tid +1 -1
  166. package/core/ui/EditTemplate/title.tid +10 -5
  167. package/core/ui/EditTemplate/type.tid +1 -1
  168. package/core/ui/EditTemplate.tid +30 -6
  169. package/core/ui/EditorToolbar/editor-height.tid +1 -0
  170. package/core/ui/EditorToolbar/excise-dropdown.tid +5 -4
  171. package/core/ui/EditorToolbar/file-import.tid +4 -0
  172. package/core/ui/EditorToolbar/link-dropdown.tid +10 -5
  173. package/core/ui/EditorToolbar/more-dropdown.tid +5 -1
  174. package/core/ui/EditorToolbar/paint.tid +1 -0
  175. package/core/ui/EditorToolbar/preview.tid +5 -4
  176. package/core/ui/EditorToolbar/size-dropdown.tid +6 -1
  177. package/core/ui/ExportTiddlyWikiCore.tid +15 -5
  178. package/core/ui/ImportListing.tid +23 -5
  179. package/core/ui/ImportPreviews/Fields.tid +1 -0
  180. package/core/ui/KeyboardShortcuts/advanced-search.tid +1 -0
  181. package/core/ui/KeyboardShortcuts/change-sidebar-layout.tid +4 -2
  182. package/core/ui/KeyboardShortcuts/new-image.tid +1 -0
  183. package/core/ui/KeyboardShortcuts/new-journal.tid +1 -0
  184. package/core/ui/KeyboardShortcuts/new-tiddler.tid +1 -0
  185. package/core/ui/KeyboardShortcuts/save-wiki.tid +1 -0
  186. package/core/ui/KeyboardShortcuts/toggle-sidebar.tid +4 -3
  187. package/core/ui/LayoutSwitcher.tid +16 -4
  188. package/core/ui/ListItemTemplate.tid +1 -3
  189. package/core/ui/ListTaggedCascade.tid +15 -0
  190. package/core/ui/Manager/ItemMainFields.tid +1 -0
  191. package/core/ui/Manager/ItemSidebarColour.tid +4 -1
  192. package/core/ui/Manager/ItemSidebarIcon.tid +4 -4
  193. package/core/ui/Manager/ItemSidebarTools.tid +7 -2
  194. package/core/ui/Manager.tid +11 -6
  195. package/core/ui/MissingTemplate.tid +1 -0
  196. package/core/ui/MoreSideBar/Types.tid +1 -0
  197. package/core/ui/MoreSideBar/plugins/Languages.tid +1 -1
  198. package/core/ui/MoreSideBar/plugins/Plugins.tid +1 -1
  199. package/core/ui/MoreSideBar/plugins/Theme.tid +1 -1
  200. package/core/ui/PageControls/controlpanel.tid +1 -1
  201. package/core/ui/PageStylesheet.tid +1 -0
  202. package/core/ui/PageTemplate/story.tid +2 -2
  203. package/core/ui/PaletteManager.tid +11 -10
  204. package/core/ui/PluginInfo.tid +1 -0
  205. package/core/ui/PluginInfoDefaultContents.tid +1 -0
  206. package/core/ui/PluginListItemTemplate.tid +13 -3
  207. package/core/ui/SearchResults.tid +8 -6
  208. package/core/ui/SideBar/More.tid +1 -0
  209. package/core/ui/SideBar/Open.tid +4 -4
  210. package/core/ui/SideBarSegments/search.tid +2 -0
  211. package/core/ui/SideBarSegments/tabs.tid +1 -1
  212. package/core/ui/StoryTiddlerTemplate.tid +3 -0
  213. package/core/ui/TagPickerTagTemplate.tid +3 -3
  214. package/core/ui/TagTemplate.tid +1 -1
  215. package/core/ui/TiddlerFieldTemplate.tid +1 -0
  216. package/core/ui/TiddlerFields.tid +1 -0
  217. package/core/ui/TiddlerIcon.tid +8 -0
  218. package/core/ui/TiddlerInfo/Advanced/PluginInfo.tid +1 -0
  219. package/core/ui/TiddlerInfo/Advanced/ShadowInfo.tid +1 -0
  220. package/core/ui/TiddlerInfo/Advanced.tid +1 -0
  221. package/core/ui/TiddlerInfo.tid +1 -0
  222. package/core/ui/TopRightBar/menu.tid +1 -0
  223. package/core/ui/UntaggedTemplate.tid +1 -0
  224. package/core/ui/ViewTemplate/body/blank.tid +3 -0
  225. package/core/ui/ViewTemplate/body/code.tid +3 -0
  226. package/core/ui/ViewTemplate/body/default.tid +7 -0
  227. package/core/ui/ViewTemplate/{import.tid → body/import.tid} +7 -3
  228. package/core/ui/ViewTemplate/body/plugin.tid +11 -0
  229. package/core/ui/ViewTemplate/body/rendered-plain-text.tid +7 -0
  230. package/core/ui/ViewTemplate/body.tid +3 -9
  231. package/core/ui/ViewTemplate/classic.tid +1 -0
  232. package/core/ui/ViewTemplate/subtitle/modified.tid +4 -0
  233. package/core/ui/ViewTemplate/subtitle/modifier.tid +4 -0
  234. package/core/ui/ViewTemplate/subtitle.tid +6 -2
  235. package/core/ui/ViewTemplate/tags.tid +1 -0
  236. package/core/ui/ViewTemplate/title/default.tid +6 -0
  237. package/core/ui/ViewTemplate/title/system.tid +6 -0
  238. package/core/ui/ViewTemplate/title.tid +5 -16
  239. package/core/ui/ViewTemplate/unfold.tid +1 -0
  240. package/core/ui/ViewTemplate.tid +1 -1
  241. package/core/ui/ViewToolbar/new-here.tid +1 -0
  242. package/core/wiki/allfields.tid +9 -3
  243. package/core/wiki/config/EditTemplateBodyFilters.multids +5 -0
  244. package/core/wiki/config/FieldEditorFilters.multids +4 -0
  245. package/core/wiki/config/OfficialPluginLibrary.tid +1 -1
  246. package/core/wiki/config/StoryTiddlerTemplateFilters.multids +5 -0
  247. package/core/wiki/config/TiddlerColourFilters.multids +5 -0
  248. package/core/wiki/config/TiddlerIconFilters.multids +5 -0
  249. package/core/wiki/config/ViewTemplateBodyFilters.multids +10 -0
  250. package/core/wiki/config/ViewTemplateTitleFilters.multids +5 -0
  251. package/core/wiki/currpalettepreview.tid +7 -2
  252. package/core/wiki/debugstylesheets.tid +10 -0
  253. package/core/wiki/download-wiki-button.tid +2 -1
  254. package/core/wiki/languageswitcher.tid +2 -0
  255. package/core/wiki/macros/colour-picker.tid +9 -2
  256. package/core/wiki/macros/copy-to-clipboard.tid +5 -2
  257. package/core/wiki/macros/diff.tid +4 -3
  258. package/core/wiki/macros/dumpvariables.tid +1 -0
  259. package/core/wiki/macros/image-picker.tid +5 -4
  260. package/core/wiki/macros/keyboard-driven-input.tid +22 -12
  261. package/core/wiki/macros/list.tid +9 -4
  262. package/core/wiki/macros/tabs.tid +55 -30
  263. package/core/wiki/macros/tag-picker.tid +14 -13
  264. package/core/wiki/macros/tag.tid +13 -6
  265. package/core/wiki/macros/thumbnails.tid +21 -9
  266. package/core/wiki/macros/timeline.tid +1 -0
  267. package/core/wiki/macros/toc.tid +19 -8
  268. package/core/wiki/macros/translink.tid +1 -0
  269. package/core/wiki/macros/tree.tid +8 -3
  270. package/core/wiki/minifocusswitcher.tid +1 -0
  271. package/core/wiki/minilanguageswitcher.tid +1 -0
  272. package/core/wiki/minithemeswitcher.tid +2 -1
  273. package/core/wiki/modules.tid +1 -0
  274. package/core/wiki/palettepreview.tid +1 -0
  275. package/core/wiki/paletteswitcher.tid +13 -2
  276. package/core/wiki/peek-stylesheets.tid +4 -5
  277. package/core/wiki/tags/EditTemplateBodyFilter.tid +2 -0
  278. package/core/wiki/tags/StoryTiddlerTemplateFilter.tid +2 -0
  279. package/core/wiki/tags/TiddlerColourFilter.tid +3 -0
  280. package/core/wiki/tags/TiddlerIconFilter.tid +3 -0
  281. package/core/wiki/tags/ViewTemplateBodyFilter.tid +3 -0
  282. package/core/wiki/tags/ViewTemplateSubtitle.tid +2 -0
  283. package/core/wiki/tags/ViewTemplateTitleFilter.tid +3 -0
  284. package/core/wiki/themeswitcher.tid +10 -1
  285. package/core/wiki/title.tid +2 -1
  286. package/core/wiki/viewswitcher.tid +1 -0
  287. package/editions/de-AT/tiddlers/howto/TiddlyWiki und TiddlyDesktop.tid +1 -1
  288. package/editions/dev/tiddlers/_tw_shared/tiddlywiki.files +5 -0
  289. package/editions/dev/tiddlers/from Heigele and Jurke/Syncadaptor.tid +2 -2
  290. package/editions/dev/tiddlers/system/github-fork-ribbon.tid +1 -1
  291. package/editions/dev/tiddlywiki.info +1 -1
  292. package/editions/dynaviewdemo/tiddlers/SideBar-Open.tid +1 -1
  293. package/editions/es-ES/tiddlers/TiddlyDesktop.tid +2 -2
  294. package/editions/fr-FR/output/images/Blurry%20Lawn.jpg +0 -0
  295. package/editions/fr-FR/output/images/Newnham%20Horizon.jpg +0 -0
  296. package/editions/fr-FR/output/index.html +5051 -0
  297. package/editions/fr-FR/output/text/Alice%20in%20Wonderland.tid +3709 -0
  298. package/editions/fr-FR/tiddlers/$ _config_ViewTemplateTitleFilters_fr-default.tid +7 -0
  299. package/editions/fr-FR/tiddlers/$ _core_ui_ViewTemplate_title_fr-default.tid +8 -0
  300. package/editions/fr-FR/tiddlers/$__deprecated.tid +9 -0
  301. package/editions/fr-FR/tiddlers/$__editions_tw5.com_doc-macros.tid +69 -5
  302. package/editions/fr-FR/tiddlers/$__editions_tw5.com_version-macros.tid +15 -0
  303. package/editions/fr-FR/tiddlers/CamelCase.tid +6 -3
  304. package/editions/fr-FR/tiddlers/Community Links Aggregator.tid +11 -0
  305. package/editions/fr-FR/tiddlers/Community.tid +6 -4
  306. package/editions/fr-FR/tiddlers/Creating and editing tiddlers.tid +11 -11
  307. package/editions/fr-FR/tiddlers/Deprecated - What does it mean.tid +17 -0
  308. package/editions/fr-FR/tiddlers/Developers.tid +10 -5
  309. package/editions/fr-FR/tiddlers/Federatial.tid +11 -0
  310. package/editions/fr-FR/tiddlers/Forums.tid +27 -13
  311. package/editions/fr-FR/tiddlers/GettingStarted.tid +16 -14
  312. package/editions/fr-FR/tiddlers/Glossaire en-GB -_ fr-FR.tid +4 -1
  313. package/editions/fr-FR/tiddlers/HTML in WikiText.tid +77 -28
  314. package/editions/fr-FR/tiddlers/HelloThere.tid +15 -12
  315. package/editions/fr-FR/tiddlers/HelloThumbnail - Latest Version.tid +1 -1
  316. package/editions/fr-FR/tiddlers/How to export tiddlers.tid +31 -0
  317. package/editions/fr-FR/tiddlers/ImageWidget.tid +33 -0
  318. package/editions/fr-FR/tiddlers/Images in WikiText.tid +69 -0
  319. package/editions/fr-FR/tiddlers/Importing Tiddlers.tid +26 -0
  320. package/editions/fr-FR/tiddlers/JeremyRuston.tid +9 -9
  321. package/editions/fr-FR/tiddlers/Linking in WikiText.tid +108 -19
  322. package/editions/fr-FR/tiddlers/ListField.tid +6 -6
  323. package/editions/fr-FR/tiddlers/Macros in WikiText.tid +5 -5
  324. package/editions/fr-FR/tiddlers/Macros.tid +17 -8
  325. package/editions/fr-FR/tiddlers/PermaLinks.tid +19 -19
  326. package/editions/fr-FR/tiddlers/Philosophy of Tiddlers.tid +2 -2
  327. package/editions/fr-FR/tiddlers/Share Plugin.tid +15 -0
  328. package/editions/fr-FR/tiddlers/{Sharing_a_TiddlyWiki_on_Dropbox.tid → Sharing a TiddlyWiki on Dropbox.tid } +12 -4
  329. package/editions/fr-FR/tiddlers/Sharing your tiddlers with others.tid +18 -0
  330. package/editions/fr-FR/tiddlers/Structuring TiddlyWiki.tid +6 -6
  331. package/editions/fr-FR/tiddlers/Styles and Classes in WikiText.tid +11 -10
  332. package/editions/fr-FR/tiddlers/Tagging.tid +24 -18
  333. package/editions/fr-FR/tiddlers/TaskManagementExample.tid +3 -1
  334. package/editions/fr-FR/tiddlers/TiddlerLinks.tid +5 -5
  335. package/editions/fr-FR/tiddlers/TiddlyFox Apocalypse.tid +46 -0
  336. package/editions/fr-FR/tiddlers/TiddlyFox.tid +6 -3
  337. package/editions/fr-FR/tiddlers/TiddlyWiki.tid +6 -4
  338. package/editions/fr-FR/tiddlers/_TiddlyWiki for Scholars_ by Alberto Molina.tid +2 -2
  339. package/editions/fr-FR/tiddlers/community/editions/_Noteself_ by Danielo Rodr/303/255guez.tid" +34 -0
  340. package/editions/fr-FR/tiddlers/community/resources/TW5-firebase_ TiddlyWiki5 for Google Firebase by Peter Neumark.tid +28 -0
  341. package/editions/fr-FR/tiddlers/community/resources/TiddlyDrive Add-on for Google Drive by Joshua Stubbs.tid +24 -0
  342. package/editions/fr-FR/tiddlers/community/resources/TiddlyServer by Arlen Beiler.tid +35 -0
  343. package/editions/fr-FR/tiddlers/community/resources/Twexe_ Single File Tiddlywiki5 executable.tid +30 -0
  344. package/editions/fr-FR/tiddlers/community/resources/_Timimi_ Extension and executable by Riz.tid +33 -0
  345. package/editions/fr-FR/tiddlers/community/resources/_file-backups_ Extension for Firefox by pmario.tid +19 -0
  346. package/editions/fr-FR/tiddlers/community/resources/_savetiddlers_ Extension for Chrome and Firefox by buggyj.tid +17 -0
  347. package/editions/fr-FR/tiddlers/concepts/Pragma.tid +23 -0
  348. package/editions/fr-FR/tiddlers/{WikiText.tid → concepts/WikiText.tid} +6 -4
  349. package/editions/fr-FR/tiddlers/definitions/TiddlyDesktop.tid +19 -0
  350. package/editions/fr-FR/tiddlers/gettingstarted/GettingStarted - Internet Explorer.tid +11 -0
  351. package/editions/fr-FR/tiddlers/gettingstarted/GettingStarted - Safari.tid +12 -0
  352. package/editions/fr-FR/tiddlers/{A_Gentle_Guide_to_TiddlyWiki.tid → hellothere/A Gentle Guide to TiddlyWiki.tid } +6 -4
  353. package/editions/fr-FR/tiddlers/howtos/How to Customize TiddlyDesktop.tid +33 -0
  354. package/editions/fr-FR/tiddlers/howtos/Windows HTA Hack.tid +17 -0
  355. package/editions/fr-FR/tiddlers/nodejs/Installing TiddlyWiki on Node.js.tid +49 -0
  356. package/editions/fr-FR/tiddlers/nodejs/Serving TW5 from Android.tid +47 -0
  357. package/editions/fr-FR/tiddlers/nodejs/TiddlyWiki on Node.js.tid +18 -0
  358. package/editions/fr-FR/tiddlers/saving/Emergency Tiddler Export.tid +28 -0
  359. package/editions/fr-FR/tiddlers/saving/Example config-tiddlyweb-host for IIS.tid +9 -0
  360. package/editions/fr-FR/tiddlers/saving/Example package.json for IIS.tid +15 -0
  361. package/editions/fr-FR/tiddlers/saving/Example tiddlywiki.info for IIS.tid +18 -0
  362. package/editions/fr-FR/tiddlers/saving/Example web.config for IIS.tid +32 -0
  363. package/editions/fr-FR/tiddlers/saving/Installing TiddlyWiki on Microsoft Internet Information Server.tid +69 -0
  364. package/editions/fr-FR/tiddlers/saving/Saving on Android.tid +36 -0
  365. package/editions/fr-FR/tiddlers/saving/Saving on Beaker Browser.tid +35 -0
  366. package/editions/fr-FR/tiddlers/saving/Saving on Browser with File System Access API.tid +20 -0
  367. package/editions/fr-FR/tiddlers/saving/Saving on TidGi Desktop.tid +28 -0
  368. package/editions/fr-FR/tiddlers/saving/Saving on TiddlyDesktop.tid +20 -0
  369. package/editions/fr-FR/tiddlers/saving/Saving on TiddlyHost.tid +18 -0
  370. package/editions/fr-FR/tiddlers/{Saving on TiddlySpot.tid → saving/Saving on TiddlySpot.tid } +14 -3
  371. package/editions/fr-FR/tiddlers/saving/Saving on a PHP Server.tid +45 -0
  372. package/editions/fr-FR/tiddlers/saving/Saving on iPad_iPhone.tid +30 -0
  373. package/editions/fr-FR/tiddlers/saving/Saving to a Git service.tid +26 -0
  374. package/editions/fr-FR/tiddlers/saving/Saving via WebDAV.tid +88 -0
  375. package/editions/fr-FR/tiddlers/saving/Saving via a Minimal Ruby Server.tid +20 -0
  376. package/editions/fr-FR/tiddlers/saving/Saving with Polly.tid +30 -0
  377. package/editions/fr-FR/tiddlers/saving/Saving with TW Receiver.tid +16 -0
  378. package/editions/fr-FR/tiddlers/{Saving with TiddlyFox on Android.tid → saving/Saving with TiddlyFox on Android.tid } +5 -5
  379. package/editions/fr-FR/tiddlers/saving/Saving with TiddlyFox.tid +31 -0
  380. package/editions/fr-FR/tiddlers/saving/Saving with TiddlyIE.tid +25 -0
  381. package/editions/fr-FR/tiddlers/{Saving with the HTML5 fallback saver.tid → saving/Saving with the HTML5 fallback saver.tid } +11 -6
  382. package/editions/fr-FR/tiddlers/saving/Saving.tid +67 -0
  383. package/editions/fr-FR/tiddlers/saving/TiddlyWiki Cloud.tid +17 -0
  384. package/editions/fr-FR/tiddlers/system/$__core_ui_SideBar_Open.tid +40 -0
  385. package/editions/fr-FR/tiddlers/{$__editions_fr-FR_util-macros.tid → system/$__editions_fr-FR_util-macros.tid} +4 -3
  386. package/editions/fr-FR/tiddlers/system/$__editions_tw5.com_wikitext-macros.tid +68 -0
  387. package/editions/fr-FR/tiddlers/system/tw5.com-card-template.tid +17 -0
  388. package/editions/fr-FR/tiddlers/tiddlydesktop/TiddlyDesktop_Releases.tid +9 -0
  389. package/editions/fr-FR/tiddlers/widgets/TranscludeWidget.tid +72 -0
  390. package/editions/fr-FR/tiddlers/{Block_Quotes_in_WikiText.tid → wikitext/Block Quotes in WikiText.tid } +17 -9
  391. package/editions/fr-FR/tiddlers/wikitext/Code Blocks in WikiText.tid +44 -0
  392. package/editions/fr-FR/tiddlers/{Dashes in WikiText.tid → wikitext/Dashes in WikiText.tid } +3 -3
  393. package/editions/fr-FR/tiddlers/{Definitions_in_WikiText.tid → wikitext/Definitions in WikiText.tid } +2 -2
  394. package/editions/fr-FR/tiddlers/wikitext/Formatting in WikiText.tid +22 -0
  395. package/editions/fr-FR/tiddlers/{Hard Linebreaks in WikiText.tid → wikitext/Hard Linebreaks in WikiText.tid } +6 -5
  396. package/editions/fr-FR/tiddlers/{Headings in WikiText.tid → wikitext/Headings in WikiText.tid } +5 -5
  397. package/editions/fr-FR/tiddlers/wikitext/Horizontal Rules in WikiText.tid +17 -0
  398. package/editions/fr-FR/tiddlers/{Lists_in_WikiText.tid → wikitext/Lists in WikiText.tid } +19 -19
  399. package/editions/fr-FR/tiddlers/wikitext/Macro Calls in WikiText.tid +27 -0
  400. package/editions/fr-FR/tiddlers/{Paragraphs in WikiText.tid → wikitext/Paragraphs in WikiText.tid } +8 -7
  401. package/editions/fr-FR/tiddlers/wikitext/Tables in WikiText.tid +69 -0
  402. package/editions/fr-FR/tiddlers/wikitext/Transclusion and Substitution.tid +61 -0
  403. package/editions/fr-FR/tiddlers/{Transclusion_in_WikiText.tid → wikitext/Transclusion in WikiText.tid } +14 -13
  404. package/editions/fr-FR/tiddlers/{Transclusion_with_Templates.tid → wikitext/Transclusion with Templates.tid } +2 -1
  405. package/editions/fr-FR/tiddlers/{Typed_Blocks_in_WikiText.tid → wikitext/Typed Blocks in WikiText.tid } +16 -11
  406. package/editions/fr-FR/tiddlers/{Variables_in_WikiText.tid → wikitext/Variables in WikiText.tid } +7 -8
  407. package/editions/fr-FR/tiddlers/wikitext/Widgets in WikiText.tid +30 -0
  408. package/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText (Examples).tid +52 -0
  409. package/editions/fr-FR/tiddlers/wikitext/parser/Block Mode WikiText.tid +37 -0
  410. package/editions/fr-FR/tiddlers/wikitext/parser/Inline Mode WikiText.tid +28 -0
  411. package/editions/fr-FR/tiddlers/wikitext/parser/Places where the parser ignores WikiText.tid +14 -0
  412. package/editions/fr-FR/tiddlers/wikitext/parser/WikiText Parser Modes.tid +17 -0
  413. package/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode HTML examples.tid +73 -0
  414. package/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode transitions.tid +59 -0
  415. package/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ macro examples.tid +56 -0
  416. package/editions/fr-FR/tiddlers/wikitext/parser/WikiText parser mode_ transclusion examples.tid +56 -0
  417. package/editions/fr-FR/tiddlers/wikitext/parser/table-example.tid +8 -0
  418. package/editions/katexdemo/tiddlers/$__DefaultTiddlers.tid +8 -0
  419. package/editions/katexdemo/tiddlers/HelloThere.tid +4 -1
  420. package/editions/katexdemo/tiddlers/LaTeX.tid +8 -0
  421. package/editions/katexdemo/tiddlers/TiddlyWiki.tid +8 -0
  422. package/editions/katexdemo/tiddlers/TiddlyWiki5.tid +6 -0
  423. package/editions/prerelease/tiddlers/Release 5.2.4.tid +59 -0
  424. package/editions/prerelease/tiddlers/system/PrereleaseLocalPluginLibrary.tid +1 -1
  425. package/editions/prerelease/tiddlers/system/PrereleaseOfficialPluginLibrary.tid +1 -1
  426. package/editions/prerelease/tiddlers/system/TiddlyWiki Pre-release.tid +4 -1
  427. package/editions/prerelease/tiddlers/system/download-empty.tid +1 -0
  428. package/editions/prerelease/tiddlywiki.info +0 -2
  429. package/editions/test/tiddlers/tests/data/tabs-macro/expected-html-tabs-horizontal-all.tid +5 -0
  430. package/editions/test/tiddlers/tests/data/tabs-macro/expected-html-tabs-horizontal.tid +5 -0
  431. package/editions/test/tiddlers/tests/data/tabs-macro/expected-html-tabs-vertical.tid +5 -0
  432. package/editions/test/tiddlers/tests/test-action-widgets.js +98 -0
  433. package/editions/test/tiddlers/tests/test-checkbox-widget.js +507 -0
  434. package/editions/test/tiddlers/tests/test-filters.js +277 -65
  435. package/editions/test/tiddlers/tests/test-html-parser.js +32 -11
  436. package/editions/test/tiddlers/tests/test-prefixes-filter.js +57 -5
  437. package/editions/test/tiddlers/tests/test-tags.js +19 -0
  438. package/editions/test/tiddlers/tests/test-utils.js +16 -0
  439. package/editions/test/tiddlers/tests/test-widget.js +36 -1
  440. package/editions/test/tiddlers/tests/test-wikitext-parser.js +44 -31
  441. package/editions/test/tiddlers/tests/test-wikitext-tabs-macro.js +87 -0
  442. package/editions/test/tiddlers/tests/test-wikitext.js +8 -1
  443. package/editions/translators/tiddlywiki.info +7 -1
  444. package/editions/tw.org/tiddlers/$__DefaultTiddlers.tid +6 -0
  445. package/editions/tw.org/tiddlers/$__SiteSubtitle.tid +6 -0
  446. package/editions/tw.org/tiddlers/$__SiteTitle.tid +6 -0
  447. package/editions/tw.org/tiddlers/$__StoryList.tid +3 -0
  448. package/editions/tw.org/tiddlers/$__config_DefaultSidebarTab.tid +6 -0
  449. package/editions/tw.org/tiddlers/$__core_templates_static.content.tid +18 -0
  450. package/editions/tw.org/tiddlers/$__favicon.ico.png +0 -0
  451. package/editions/tw.org/tiddlers/$__favicon.ico.png.meta +4 -0
  452. package/editions/tw.org/tiddlers/$__palette.tid +6 -0
  453. package/editions/tw.org/tiddlers/$__palettes_BlueFlavour +165 -0
  454. package/editions/tw.org/tiddlers/$__palettes_BlueFlavour.meta +8 -0
  455. package/editions/tw.org/tiddlers/$__palettes_FlowingSun +165 -0
  456. package/editions/tw.org/tiddlers/$__palettes_FlowingSun.meta +8 -0
  457. package/editions/tw.org/tiddlers/$__themes_tiddlywiki_vanilla_metrics_bodyfontsize.tid +6 -0
  458. package/editions/tw.org/tiddlers/$__themes_tiddlywiki_vanilla_metrics_bodylineheight.tid +6 -0
  459. package/editions/tw.org/tiddlers/$__themes_tiddlywiki_vanilla_metrics_sidebarwidth.tid +6 -0
  460. package/editions/tw.org/tiddlers/$__themes_tiddlywiki_vanilla_options_sidebarlayout.tid +6 -0
  461. package/editions/tw.org/tiddlers/Code of Conduct.tid +30 -0
  462. package/editions/tw.org/tiddlers/Fundraising.tid +23 -0
  463. package/editions/tw.org/tiddlers/HelloThere.tid +15 -0
  464. package/editions/tw.org/tiddlers/Table of Contents.tid +12 -0
  465. package/editions/tw.org/tiddlers/TiddlyWiki.tid +8 -0
  466. package/editions/tw.org/tiddlers/_tw_shared/tiddlywiki.files +5 -0
  467. package/editions/tw.org/tiddlywiki.info +30 -0
  468. package/editions/tw5.com/tiddlers/$__StoryList.tid +3 -3
  469. package/editions/tw5.com/tiddlers/Brackets.tid +14 -0
  470. package/editions/tw5.com/tiddlers/{images → _tw_shared}/Motovun Jack.svg +0 -0
  471. package/editions/tw5.com/tiddlers/{images → _tw_shared}/Motovun Jack.svg.meta +1 -1
  472. package/editions/tw5.com/tiddlers/_tw_shared/favicons/classic.tiddlywiki.com.ico +0 -0
  473. package/editions/tw5.com/tiddlers/_tw_shared/favicons/classic.tiddlywiki.com.ico.meta +3 -0
  474. package/editions/tw5.com/tiddlers/_tw_shared/favicons/links.tiddlywiki.org.ico +0 -0
  475. package/editions/tw5.com/tiddlers/_tw_shared/favicons/links.tiddlywiki.org.ico.meta +3 -0
  476. package/editions/tw5.com/tiddlers/_tw_shared/favicons/talk.tiddlywiki.org.svg +6 -0
  477. package/editions/tw5.com/tiddlers/_tw_shared/favicons/talk.tiddlywiki.org.svg.meta +3 -0
  478. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.dev.ico +0 -0
  479. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.dev.ico.meta +3 -0
  480. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.ico +0 -0
  481. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.ico.meta +3 -0
  482. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.prerelease.ico +0 -0
  483. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.prerelease.ico.meta +3 -0
  484. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.upgrade.ico +0 -0
  485. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.com.upgrade.ico.meta +3 -0
  486. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.org.ico +0 -0
  487. package/editions/tw5.com/tiddlers/_tw_shared/favicons/tiddlywiki.org.ico.meta +3 -0
  488. package/editions/tw5.com/tiddlers/_tw_shared/sites/classic.tiddlywiki.com.tid +6 -0
  489. package/editions/tw5.com/tiddlers/_tw_shared/sites/links.tiddlywiki.org.tid +6 -0
  490. package/editions/tw5.com/tiddlers/_tw_shared/sites/talk.tiddlywiki.org.tid +6 -0
  491. package/editions/tw5.com/tiddlers/_tw_shared/sites/tiddlywiki.com.dev.tid +6 -0
  492. package/editions/tw5.com/tiddlers/_tw_shared/sites/tiddlywiki.com.prerelease.tid +6 -0
  493. package/editions/tw5.com/tiddlers/_tw_shared/sites/tiddlywiki.com.tid +6 -0
  494. package/editions/tw5.com/tiddlers/_tw_shared/sites/tiddlywiki.com.upgrade.tid +6 -0
  495. package/editions/tw5.com/tiddlers/_tw_shared/sites/tiddlywiki.org.tid +6 -0
  496. package/editions/tw5.com/tiddlers/_tw_shared/sites.tid +32 -0
  497. package/editions/tw5.com/tiddlers/_tw_shared/styles.tid +48 -0
  498. package/editions/tw5.com/tiddlers/_tw_shared/tags-TiddlyWikiSites.tid +3 -0
  499. package/editions/tw5.com/tiddlers/{License.tid → about/License.tid} +0 -0
  500. package/editions/tw5.com/tiddlers/commands/NamedCommandParameters.tid +2 -2
  501. package/editions/tw5.com/tiddlers/community/Community Links Aggregator.tid +1 -1
  502. package/editions/tw5.com/tiddlers/community/Contributing.tid +3 -2
  503. package/editions/tw5.com/tiddlers/community/Contributor License Agreement.tid +3 -3
  504. package/editions/tw5.com/tiddlers/community/Forums.tid +16 -13
  505. package/editions/tw5.com/tiddlers/community/Signing the Contributor License Agreement.tid +2 -2
  506. package/editions/tw5.com/tiddlers/community/TW Icons by morosanuae.tid +2 -2
  507. package/editions/tw5.com/tiddlers/community/TiddlyWiki Hangouts.tid +2 -2
  508. package/editions/tw5.com/tiddlers/community/editions/TiddlyMemo by oflg.tid +16 -0
  509. package/editions/tw5.com/tiddlers/community/editions/_Noteself_ by Danielo Rodriguez.tid +2 -2
  510. package/editions/tw5.com/tiddlers/community/examples/Reveal.js by Devin Weaver.tid +2 -2
  511. package/editions/tw5.com/tiddlers/community/plugins/Encrypt single tiddler plugin.tid +2 -2
  512. package/editions/tw5.com/tiddlers/community/plugins/TiddlyClip by buggyjay.tid +3 -3
  513. package/editions/tw5.com/tiddlers/community/plugins/TiddlyMap by Felix Kuppers.tid +2 -2
  514. package/editions/tw5.com/tiddlers/community/resources/Projectify by Nicolas Petton.tid +6 -4
  515. package/editions/tw5.com/tiddlers/community/resources/TW5 Magick.tid +2 -2
  516. package/editions/tw5.com/tiddlers/community/resources/_Dynamic Tables_ by Jed Carty.tid +2 -2
  517. package/editions/tw5.com/tiddlers/community/resources/_TiddlyServer_ by Matt Lauber.tid +5 -3
  518. package/editions/tw5.com/tiddlers/community/resources/_muritest_ by Simon Huber.tid +2 -2
  519. package/editions/tw5.com/tiddlers/concepts/Cascades.tid +48 -0
  520. package/editions/tw5.com/tiddlers/concepts/Concepts.tid +5 -3
  521. package/editions/tw5.com/tiddlers/concepts/Customizing EditTemplate Field Rendering.tid +47 -0
  522. package/editions/tw5.com/tiddlers/concepts/DataTiddlers.tid +4 -21
  523. package/editions/tw5.com/tiddlers/concepts/DictionaryTiddlers.tid +3 -2
  524. package/editions/tw5.com/tiddlers/concepts/Edit Template Body Cascade.tid +16 -0
  525. package/editions/tw5.com/tiddlers/concepts/Field Editor Cascade.tid +17 -0
  526. package/editions/tw5.com/tiddlers/concepts/Filters.tid +15 -10
  527. package/editions/tw5.com/tiddlers/concepts/JSONTiddlers.tid +4 -3
  528. package/editions/tw5.com/tiddlers/concepts/KeyboardShortcutTiddler.tid +7 -0
  529. package/editions/tw5.com/tiddlers/concepts/Macros.tid +6 -4
  530. package/editions/tw5.com/tiddlers/concepts/Messages.tid +2 -2
  531. package/editions/tw5.com/tiddlers/concepts/ModuleType.tid +2 -2
  532. package/editions/tw5.com/tiddlers/concepts/Order of Tagged Tiddlers.tid +3 -1
  533. package/editions/tw5.com/tiddlers/concepts/Pragma.tid +2 -2
  534. package/editions/tw5.com/tiddlers/concepts/Railroad Diagrams.tid +2 -1
  535. package/editions/tw5.com/tiddlers/concepts/Story Tiddler Template Cascade.tid +16 -0
  536. package/editions/tw5.com/tiddlers/concepts/Story Tiddler Template.tid +13 -0
  537. package/editions/tw5.com/tiddlers/concepts/SystemTags.tid +1 -1
  538. package/editions/tw5.com/tiddlers/concepts/TagTiddlers.tid +1 -1
  539. package/editions/tw5.com/tiddlers/concepts/Tiddler Colour Cascade.tid +16 -0
  540. package/editions/tw5.com/tiddlers/concepts/Tiddler Icon Cascade.tid +16 -0
  541. package/editions/tw5.com/tiddlers/concepts/TiddlerFields.tid +2 -1
  542. package/editions/tw5.com/tiddlers/concepts/TiddlyWiki5.tid +4 -2
  543. package/editions/tw5.com/tiddlers/concepts/Title List.tid +4 -1
  544. package/editions/tw5.com/tiddlers/concepts/View Template Body Cascade.tid +19 -0
  545. package/editions/tw5.com/tiddlers/concepts/View Template Title Cascade.tid +16 -0
  546. package/editions/tw5.com/tiddlers/customising/Alternative page layouts.tid +1 -1
  547. package/editions/tw5.com/tiddlers/customising/Creating new toolbar buttons.tid +35 -0
  548. package/editions/tw5.com/tiddlers/customising/Customise TiddlyWiki.tid +3 -3
  549. package/editions/tw5.com/tiddlers/customising/Customising TiddlyWiki's user interface.tid +75 -0
  550. package/editions/tw5.com/tiddlers/definitions/BT.tid +3 -2
  551. package/editions/tw5.com/tiddlers/definitions/JavaScript Object Notation.tid +2 -6
  552. package/editions/tw5.com/tiddlers/definitions/MathML.tid +2 -2
  553. package/editions/tw5.com/tiddlers/definitions/Node.js.tid +5 -3
  554. package/editions/tw5.com/tiddlers/definitions/Osmosoft.tid +3 -2
  555. package/editions/tw5.com/tiddlers/definitions/TiddlyDesktop.tid +1 -1
  556. package/editions/tw5.com/tiddlers/definitions/TiddlyWeb.tid +1 -0
  557. package/editions/tw5.com/tiddlers/definitions/node-webkit.tid +2 -1
  558. package/editions/tw5.com/tiddlers/demonstrations/Alice in Wonderland.tid +1 -1
  559. package/editions/tw5.com/tiddlers/demonstrations/Apple.tid +7 -2
  560. package/editions/tw5.com/tiddlers/demonstrations/Caruso - Ave Maria.tid +1 -0
  561. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/Demo Tiddler List with Custom Story Tiddler Template.tid +10 -0
  562. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/Styles.tid +31 -0
  563. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/Template.tid +26 -0
  564. package/editions/tw5.com/tiddlers/demonstrations/CustomStoryTiddlerTemplateDemo.tid/TiddlerTemplateFilter.tid +6 -0
  565. package/editions/tw5.com/tiddlers/demonstrations/CustomTiddlerColourCascadeDemo/CustomTiddlerColourCascadeDemo.tid +9 -0
  566. package/editions/tw5.com/tiddlers/demonstrations/CustomTiddlerIconCascadeDemo/CustomTiddlerIconCascadeDemo.tid +9 -0
  567. package/editions/tw5.com/tiddlers/demonstrations/ImageGallery Example.tid +5 -16
  568. package/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/Demonstration_ keyboard-driven-input Macro.tid +2 -2
  569. package/editions/tw5.com/tiddlers/demonstrations/KeyboardDrivenInput/kdi-demo-configtid.tid +4 -3
  570. package/editions/tw5.com/tiddlers/demonstrations/SampleNotification.tid +2 -1
  571. package/editions/tw5.com/tiddlers/demonstrations/SampleTiddlerFirst.tid +3 -1
  572. package/editions/tw5.com/tiddlers/demonstrations/SampleTiddlerSecond.tid +3 -1
  573. package/editions/tw5.com/tiddlers/demonstrations/SampleTiddlerThird.tid +3 -1
  574. package/editions/tw5.com/tiddlers/demonstrations/SampleWizard.tid +2 -1
  575. package/editions/tw5.com/tiddlers/demonstrations/SampleWizard2.tid +2 -1
  576. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Contents.tid +3 -2
  577. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/First.tid +3 -3
  578. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/FirstOne.tid +2 -2
  579. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/FirstThree.tid +2 -2
  580. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/FirstTwo.tid +2 -2
  581. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Fourth.tid +2 -2
  582. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Second.tid +2 -2
  583. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondOne.tid +2 -2
  584. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThree.tid +3 -3
  585. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThreeOne.tid +2 -2
  586. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThreeThree.tid +2 -2
  587. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondThreeTwo.tid +2 -2
  588. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/SecondTwo.tid +2 -2
  589. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/Third.tid +3 -3
  590. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/ThirdOne.tid +2 -2
  591. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/ThirdThree.tid +2 -2
  592. package/editions/tw5.com/tiddlers/demonstrations/TableOfContents/ThirdTwo.tid +2 -2
  593. package/editions/tw5.com/tiddlers/demonstrations/Tagged with TagMacro.tid +2 -1
  594. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Compose ballad.tid +3 -3
  595. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Get the Ring.tid +3 -3
  596. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Go to Mordor.tid +3 -3
  597. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Kill the Dragon.tid +4 -4
  598. package/editions/tw5.com/tiddlers/demonstrations/Tasks/Make the beds.tid +3 -3
  599. package/editions/tw5.com/tiddlers/demonstrations/Tasks/done.tid +3 -1
  600. package/editions/tw5.com/tiddlers/demonstrations/Tasks/task.tid +3 -2
  601. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Days of the Week.tid +5 -4
  602. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Friday.tid +2 -1
  603. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Monday.tid +2 -1
  604. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Saturday.tid +3 -2
  605. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Sunday.tid +2 -1
  606. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Thursday.tid +2 -1
  607. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Tuesday.tid +2 -1
  608. package/editions/tw5.com/tiddlers/demonstrations/Weekdays/Wednesday.tid +2 -1
  609. package/editions/tw5.com/tiddlers/demonstrations/sampletag1.tid +3 -0
  610. package/editions/tw5.com/tiddlers/demonstrations/sampletag2.tid +3 -0
  611. package/editions/tw5.com/tiddlers/features/DateFormat.tid +7 -1
  612. package/editions/tw5.com/tiddlers/features/Importing Tiddlers.tid +1 -1
  613. package/editions/tw5.com/tiddlers/features/JSON in TiddlyWiki.tid +69 -0
  614. package/editions/tw5.com/tiddlers/features/LazyLoading.tid +2 -3
  615. package/editions/tw5.com/tiddlers/features/Modals.tid +2 -1
  616. package/editions/tw5.com/tiddlers/features/Scalability.tid +4 -2
  617. package/editions/tw5.com/tiddlers/filters/Filter Operators.tid +9 -5
  618. package/editions/tw5.com/tiddlers/filters/Mathematics Operators.tid +23 -3
  619. package/editions/tw5.com/tiddlers/filters/acos Operator.tid +15 -0
  620. package/editions/tw5.com/tiddlers/filters/all.tid +2 -2
  621. package/editions/tw5.com/tiddlers/filters/asin Operator.tid +15 -0
  622. package/editions/tw5.com/tiddlers/filters/atan Operator.tid +13 -0
  623. package/editions/tw5.com/tiddlers/filters/atan2 Operator.tid +15 -0
  624. package/editions/tw5.com/tiddlers/filters/butlast.tid +3 -1
  625. package/editions/tw5.com/tiddlers/filters/cos Operator.tid +13 -0
  626. package/editions/tw5.com/tiddlers/filters/deserializers Operator.tid +1 -1
  627. package/editions/tw5.com/tiddlers/filters/enlist-input Operator.tid +1 -1
  628. package/editions/tw5.com/tiddlers/filters/examples/acos Operator (Examples).tid +7 -0
  629. package/editions/tw5.com/tiddlers/filters/examples/asin Operator (Examples).tid +7 -0
  630. package/editions/tw5.com/tiddlers/filters/examples/atan Operator (Examples).tid +7 -0
  631. package/editions/tw5.com/tiddlers/filters/examples/atan2 Operator (Examples).tid +7 -0
  632. package/editions/tw5.com/tiddlers/filters/examples/butlast.tid +4 -3
  633. package/editions/tw5.com/tiddlers/filters/examples/cos Operator (Examples).tid +7 -0
  634. package/editions/tw5.com/tiddlers/filters/examples/cycle Operator (Examples).tid +1 -1
  635. package/editions/tw5.com/tiddlers/filters/examples/insertafter Operator (Examples).tid +28 -0
  636. package/editions/tw5.com/tiddlers/filters/examples/insertbefore Operator (Examples).tid +28 -0
  637. package/editions/tw5.com/tiddlers/filters/examples/log Operator (Examples).tid +1 -1
  638. package/editions/tw5.com/tiddlers/filters/examples/lookup Operator (Examples).tid +7 -1
  639. package/editions/tw5.com/tiddlers/filters/examples/match Operator (Examples).tid +1 -1
  640. package/editions/tw5.com/tiddlers/filters/examples/prefix.tid +4 -3
  641. package/editions/tw5.com/tiddlers/filters/examples/removeprefix.tid +2 -1
  642. package/editions/tw5.com/tiddlers/filters/examples/removesuffix.tid +2 -3
  643. package/editions/tw5.com/tiddlers/filters/examples/rest.tid +4 -3
  644. package/editions/tw5.com/tiddlers/filters/examples/search-replace Operator (Examples).tid +8 -2
  645. package/editions/tw5.com/tiddlers/filters/examples/search.tid +6 -1
  646. package/editions/tw5.com/tiddlers/filters/examples/sin Operator (Examples).tid +7 -0
  647. package/editions/tw5.com/tiddlers/filters/examples/sortan.tid +5 -1
  648. package/editions/tw5.com/tiddlers/filters/examples/subfilter Operator (Examples).tid +25 -3
  649. package/editions/tw5.com/tiddlers/filters/examples/suffix.tid +3 -2
  650. package/editions/tw5.com/tiddlers/filters/examples/tan Operator (Examples).tid +7 -0
  651. package/editions/tw5.com/tiddlers/filters/examples/zth Operator (Examples).tid +10 -0
  652. package/editions/tw5.com/tiddlers/filters/format.tid +3 -1
  653. package/editions/tw5.com/tiddlers/filters/insertafter Operator.tid +35 -0
  654. package/editions/tw5.com/tiddlers/filters/insertbefore Operator.tid +28 -6
  655. package/editions/tw5.com/tiddlers/filters/list.tid +2 -2
  656. package/editions/tw5.com/tiddlers/filters/lookup Operator.tid +28 -10
  657. package/editions/tw5.com/tiddlers/filters/nth.tid +9 -7
  658. package/editions/tw5.com/tiddlers/filters/prefix.tid +17 -2
  659. package/editions/tw5.com/tiddlers/filters/range.tid +1 -1
  660. package/editions/tw5.com/tiddlers/filters/removeprefix.tid +18 -3
  661. package/editions/tw5.com/tiddlers/filters/removesuffix.tid +18 -3
  662. package/editions/tw5.com/tiddlers/filters/search.tid +10 -9
  663. package/editions/tw5.com/tiddlers/filters/sha256 Operator.tid +18 -0
  664. package/editions/tw5.com/tiddlers/filters/sin Operator.tid +13 -0
  665. package/editions/tw5.com/tiddlers/filters/storyviews.tid +1 -1
  666. package/editions/tw5.com/tiddlers/filters/subfilter Operator.tid +5 -3
  667. package/editions/tw5.com/tiddlers/filters/suffix.tid +17 -2
  668. package/editions/tw5.com/tiddlers/filters/syntax/Cascade Filter Run Prefix (Examples).tid +46 -0
  669. package/editions/tw5.com/tiddlers/filters/syntax/Cascade Filter Run Prefix.tid +20 -0
  670. package/editions/tw5.com/tiddlers/filters/syntax/Filter Expression.tid +4 -2
  671. package/editions/tw5.com/tiddlers/filters/syntax/Filter Filter Run Prefix (Examples).tid +30 -0
  672. package/editions/tw5.com/tiddlers/filters/syntax/Filter Filter Run Prefix.tid +27 -0
  673. package/editions/tw5.com/tiddlers/filters/syntax/Filter Run Prefix (Examples).tid +7 -36
  674. package/editions/tw5.com/tiddlers/filters/syntax/Intersection Filter Run Prefix (Examples).tid +36 -0
  675. package/editions/tw5.com/tiddlers/filters/syntax/Intersection Filter Run Prefix.tid +15 -0
  676. package/editions/tw5.com/tiddlers/filters/syntax/Map Filter Run Prefix (Examples).tid +44 -1
  677. package/editions/tw5.com/tiddlers/filters/syntax/Map Filter Run Prefix.tid +11 -2
  678. package/editions/tw5.com/tiddlers/filters/syntax/Named Filter Run Prefix.tid +3 -3
  679. package/editions/tw5.com/tiddlers/filters/syntax/Reduce Filter Run Prefix (Examples).tid +27 -0
  680. package/editions/tw5.com/tiddlers/filters/syntax/Reduce Filter Run Prefix.tid +38 -0
  681. package/editions/tw5.com/tiddlers/filters/tan Operator.tid +13 -0
  682. package/editions/tw5.com/tiddlers/filters/zth Operator.tid +18 -0
  683. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Android.tid +2 -1
  684. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Chrome.tid +2 -1
  685. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Firefox.tid +2 -1
  686. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Internet Explorer.tid +2 -1
  687. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Node.js.tid +2 -1
  688. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Online.tid +2 -2
  689. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - Safari.tid +2 -1
  690. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted - iOS.tid +2 -1
  691. package/editions/tw5.com/tiddlers/gettingstarted/GettingStarted.tid +6 -0
  692. package/editions/tw5.com/tiddlers/{AllTiddlers.tid → hellothere/AllTiddlers.tid} +0 -0
  693. package/editions/tw5.com/tiddlers/hellothere/HelloThere.tid +3 -3
  694. package/editions/tw5.com/tiddlers/hellothere/Some of the things you can do with TiddlyWiki.tid +2 -2
  695. package/editions/tw5.com/tiddlers/hellothere/badges/ProductHunt-Badge.svg.tid +1 -0
  696. package/editions/tw5.com/tiddlers/hellothere/badges/ProductHunt-Link.tid +1 -0
  697. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting NewImageType.tid +3 -1
  698. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting ShowEditPreviewPerTiddler.tid +10 -0
  699. package/editions/tw5.com/tiddlers/hiddensettings/Hidden Setting_ Typin Refresh Delay.tid +2 -2
  700. package/editions/tw5.com/tiddlers/howtos/Concatenating text and variables using macro substitution.tid +4 -14
  701. package/editions/tw5.com/tiddlers/howtos/Constructing JSON tiddlers.tid +16 -0
  702. package/editions/tw5.com/tiddlers/howtos/Creating SubStories.tid +21 -33
  703. package/editions/tw5.com/tiddlers/howtos/Creating a splash screen.tid +1 -1
  704. package/editions/tw5.com/tiddlers/howtos/Debugging Stylesheets.tid +11 -0
  705. package/editions/tw5.com/tiddlers/howtos/How to apply custom styles by tag.tid +2 -2
  706. package/editions/tw5.com/tiddlers/howtos/How to create a custom story tiddler template.tid +40 -0
  707. package/editions/tw5.com/tiddlers/howtos/How to create a custom tiddler colour rule.tid +36 -0
  708. package/editions/tw5.com/tiddlers/howtos/How to create a custom tiddler icon rule.tid +36 -0
  709. package/editions/tw5.com/tiddlers/howtos/How to create dynamic editor toolbar buttons.tid +2 -2
  710. package/editions/tw5.com/tiddlers/howtos/How to customize TiddlyDesktop.tid +1 -1
  711. package/editions/tw5.com/tiddlers/howtos/How to update TiddlyWiki to the latest version.tid +7 -0
  712. package/editions/tw5.com/tiddlers/howtos/Modifying JSON tiddlers.tid +18 -0
  713. package/editions/tw5.com/tiddlers/howtos/Reading data from JSON tiddlers.tid +25 -0
  714. package/editions/tw5.com/tiddlers/howtos/Simple ways to write protect tiddlers.tid +4 -5
  715. package/editions/tw5.com/tiddlers/howtos/Text preview.tid +6 -2
  716. package/editions/tw5.com/tiddlers/howtos/Using Stylesheets.tid +8 -4
  717. package/editions/tw5.com/tiddlers/images/Icon Gallery.tid +14 -0
  718. package/editions/tw5.com/tiddlers/images/New Release Banner.png +0 -0
  719. package/editions/tw5.com/tiddlers/languages/LanguageGallery.tid +2 -2
  720. package/editions/tw5.com/tiddlers/macros/JsonTiddlersMacro.tid +3 -3
  721. package/editions/tw5.com/tiddlers/macros/TagMacro.tid +1 -1
  722. package/editions/tw5.com/tiddlers/macros/examples/colour-picker Macro (Example 1).tid +2 -2
  723. package/editions/tw5.com/tiddlers/macros/examples/image-picker Macro (Example 1).tid +2 -2
  724. package/editions/tw5.com/tiddlers/macros/examples/image-picker Macro (Example 2).tid +2 -2
  725. package/editions/tw5.com/tiddlers/macros/examples/unusedtitle Macro (Examples 1).tid +2 -2
  726. package/editions/tw5.com/tiddlers/macros/jsontiddler Macro.tid +2 -2
  727. package/editions/tw5.com/tiddlers/macros/list-links-draggable Macro.tid +3 -1
  728. package/editions/tw5.com/tiddlers/mechanisms/InfoMechanism.tid +1 -0
  729. package/editions/tw5.com/tiddlers/mechanisms/PluginMechanism.tid +1 -1
  730. package/editions/tw5.com/tiddlers/mechanisms/RefreshThrottling.tid +2 -2
  731. package/editions/tw5.com/tiddlers/mechanisms/StateMechanism.tid +2 -2
  732. package/editions/tw5.com/tiddlers/messages/SampleModal.tid +2 -1
  733. package/editions/tw5.com/tiddlers/messages/SampleWindowTemplate.tid +10 -0
  734. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-close-all-windows.tid +20 -0
  735. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-close-window.tid +41 -0
  736. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-download-file.tid +6 -1
  737. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-edit-text-operation.tid +3 -0
  738. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-new-tiddler.tid +11 -2
  739. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-open-window.tid +28 -6
  740. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-relink-tiddler.tid +26 -0
  741. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-rename-tiddler.tid +4 -2
  742. package/editions/tw5.com/tiddlers/messages/WidgetMessage_ tm-scroll.tid +3 -0
  743. package/editions/tw5.com/tiddlers/nodejs/Environment Variables on Node.js.tid +6 -4
  744. package/editions/tw5.com/tiddlers/nodejs/Installing TiddlyWiki on Node.js.tid +15 -13
  745. package/editions/tw5.com/tiddlers/nodejs/Installing custom plugins on Node.js.tid +11 -19
  746. package/editions/tw5.com/tiddlers/nodejs/Installing official plugins on Node.js.tid +40 -0
  747. package/editions/tw5.com/tiddlers/nodejs/PluginsCS.tid +9 -0
  748. package/editions/tw5.com/tiddlers/nodejs/TiddlyWiki on Node.js.tid +7 -2
  749. package/editions/tw5.com/tiddlers/nodejs/Uninstalling a plugin with Node.js.tid +31 -0
  750. package/editions/tw5.com/tiddlers/nodejs/Using TiddlyWiki on Node.js.tid +4 -4
  751. package/editions/tw5.com/tiddlers/nodejs/tiddlywiki.files_Files.tid +6 -5
  752. package/editions/tw5.com/tiddlers/nodejs/tiddlywiki.info_Files.tid +2 -2
  753. package/editions/tw5.com/tiddlers/platforms/TiddlyFox Apocalypse.tid +2 -2
  754. package/editions/tw5.com/tiddlers/platforms/TiddlyWiki in the Sky for TiddlyWeb.tid +4 -8
  755. package/editions/tw5.com/tiddlers/plugins/Highlight Plugin.tid +3 -1
  756. package/editions/tw5.com/tiddlers/plugins/Installing a plugin from the plugin library.tid +22 -35
  757. package/editions/tw5.com/tiddlers/plugins/Manually installing a plugin.tid +19 -4
  758. package/editions/tw5.com/tiddlers/plugins/OfficialPlugins.tid +3 -1
  759. package/editions/tw5.com/tiddlers/plugins/Plugin Ordering.tid +47 -0
  760. package/editions/tw5.com/tiddlers/plugins/Plugin Types.tid +2 -2
  761. package/editions/tw5.com/tiddlers/plugins/PluginFolders.tid +27 -1
  762. package/editions/tw5.com/tiddlers/plugins/Plugins.tid +19 -7
  763. package/editions/tw5.com/tiddlers/plugins/Uninstalling a plugin.tid +15 -25
  764. package/editions/tw5.com/tiddlers/reference/Reference.tid +1 -0
  765. package/editions/tw5.com/tiddlers/releasenotes/BetaReleases.tid +2 -2
  766. package/editions/tw5.com/tiddlers/releasenotes/Release 5.1.21.tid +6 -0
  767. package/editions/tw5.com/tiddlers/releasenotes/Release 5.1.22.tid +6 -0
  768. package/editions/tw5.com/tiddlers/releasenotes/Release 5.1.23.tid +38 -34
  769. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.0.tid +42 -38
  770. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.1.tid +122 -0
  771. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.2.tid +160 -0
  772. package/editions/tw5.com/tiddlers/releasenotes/Release 5.2.3.tid +152 -0
  773. package/editions/tw5.com/tiddlers/releasenotes/ReleaseTemplate.tid +3 -0
  774. package/editions/tw5.com/tiddlers/releasenotes/Releases.tid +4 -2
  775. package/editions/tw5.com/tiddlers/releasenotes/alpha/AlphaReleases.tid +2 -2
  776. package/editions/tw5.com/tiddlers/saving/Example config-tiddlyweb-host for IIS.txt.meta +1 -1
  777. package/editions/tw5.com/tiddlers/saving/Example package.json for IIS.txt.meta +1 -1
  778. package/editions/tw5.com/tiddlers/saving/Example tiddlywiki.info for IIS.txt.meta +1 -1
  779. package/editions/tw5.com/tiddlers/saving/Example web.config for IIS.txt.meta +1 -1
  780. package/editions/tw5.com/tiddlers/saving/Saving on Android.tid +1 -1
  781. package/editions/tw5.com/tiddlers/saving/Saving on Browser with the File System Access API.tid +21 -0
  782. package/editions/tw5.com/tiddlers/saving/Saving on TidGi.tid +26 -0
  783. package/editions/tw5.com/tiddlers/saving/Saving on TiddlyDesktop.tid +3 -3
  784. package/editions/tw5.com/tiddlers/saving/Saving on iPad_iPhone.tid +1 -1
  785. package/editions/tw5.com/tiddlers/saving/Saving via WebDAV.tid +35 -1
  786. package/editions/tw5.com/tiddlers/saving/Saving with Polly.tid +29 -0
  787. package/editions/tw5.com/tiddlers/saving/Saving.tid +9 -11
  788. package/editions/tw5.com/tiddlers/styleguide/Documentation Macros.tid +6 -2
  789. package/editions/tw5.com/tiddlers/system/Deprecated.tid +4 -4
  790. package/editions/tw5.com/tiddlers/system/Deprecated_-_What_does_it_mean.tid +2 -6
  791. package/editions/tw5.com/tiddlers/{TableOfContents.tid → system/TableOfContents.tid} +0 -0
  792. package/editions/tw5.com/tiddlers/system/doc-macros.tid +52 -1
  793. package/editions/tw5.com/tiddlers/system/doc-styles.tid +69 -4
  794. package/editions/tw5.com/tiddlers/system/download-empty-button.tid +1 -1
  795. package/editions/tw5.com/tiddlers/system/download-empty.tid +1 -0
  796. package/editions/tw5.com/tiddlers/system/operator-macros.tid +16 -7
  797. package/editions/tw5.com/tiddlers/system/operator-template.tid +14 -11
  798. package/editions/tw5.com/tiddlers/system/style-guide-macros.tid +5 -1
  799. package/editions/tw5.com/tiddlers/system/systemtag-template.tid +21 -0
  800. package/editions/tw5.com/tiddlers/system/tw5.com-card-template.tid +12 -8
  801. package/editions/tw5.com/tiddlers/system/tw5.com-styles.tid +5 -6
  802. package/editions/tw5.com/tiddlers/system/variable-macros.tid +4 -2
  803. package/editions/tw5.com/tiddlers/system/version-macros.tid +3 -3
  804. package/editions/tw5.com/tiddlers/system/wikitext-macros.tid +52 -3
  805. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Image.tid +2 -2
  806. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_Macro_View_Body.tid +9 -0
  807. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_ViewTemplate.tid +2 -2
  808. package/editions/tw5.com/tiddlers/systemtags/SystemTag_ $__tags_ViewTemplateSubtitle.tid +9 -0
  809. package/editions/tw5.com/tiddlers/tiddlydesktop/TiddlyDesktop_Releases.tid +1 -1
  810. package/editions/tw5.com/tiddlers/variables/examples/Sample Headings 1-2-3.tid +2 -1
  811. package/editions/tw5.com/tiddlers/variables/examples/Sample Headings 3-4-5.tid +2 -1
  812. package/editions/tw5.com/tiddlers/variables/examples/Sample Headings 4-5-6.tid +2 -1
  813. package/editions/tw5.com/tiddlers/variables/modifier Variable.tid +2 -2
  814. package/editions/tw5.com/tiddlers/webserver/Using HTTPS.tid +17 -2
  815. package/editions/tw5.com/tiddlers/webserver/WebServer API_ Get All Tiddlers.tid +1 -1
  816. package/editions/tw5.com/tiddlers/webserver/WebServer Authorization.tid +15 -3
  817. package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ admin.tid +8 -0
  818. package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ required-plugins.tid +8 -0
  819. package/editions/tw5.com/tiddlers/webserver/WebServer Parameter_ tls-passphrase.tid +10 -0
  820. package/editions/tw5.com/tiddlers/widgets/$__editions_tw5.com_widget-examples_qualify-transcluded.tid +14 -0
  821. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 1.tid +2 -2
  822. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 2.tid +2 -2
  823. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 3.tid +2 -2
  824. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Example 4.tid +2 -2
  825. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget Template.tid +2 -2
  826. package/editions/tw5.com/tiddlers/widgets/ActionCreateTiddlerWidget_Example.tid +2 -2
  827. package/editions/tw5.com/tiddlers/widgets/ActionListopsWidget.tid +52 -2
  828. package/editions/tw5.com/tiddlers/widgets/ActionSendMessageWidget.tid +3 -1
  829. package/editions/tw5.com/tiddlers/widgets/ActionSetMultipleFieldsWidget.tid +31 -0
  830. package/editions/tw5.com/tiddlers/widgets/ActionWidget Execution Modes.tid +5 -2
  831. package/editions/tw5.com/tiddlers/widgets/ActionWidgets.tid +4 -4
  832. package/editions/tw5.com/tiddlers/widgets/ButtonWidget.tid +2 -2
  833. package/editions/tw5.com/tiddlers/widgets/CheckboxWidget.tid +78 -4
  834. package/editions/tw5.com/tiddlers/widgets/DraggableWidget.tid +24 -4
  835. package/editions/tw5.com/tiddlers/widgets/DroppableWidget.tid +2 -2
  836. package/editions/tw5.com/tiddlers/widgets/DropzoneWidget.tid +2 -2
  837. package/editions/tw5.com/tiddlers/widgets/EditTextWidget.tid +9 -20
  838. package/editions/tw5.com/tiddlers/widgets/EditWidget.tid +2 -2
  839. package/editions/tw5.com/tiddlers/widgets/EventCatcherWidget.tid +10 -7
  840. package/editions/tw5.com/tiddlers/widgets/FieldManglerWidget.tid +3 -3
  841. package/editions/tw5.com/tiddlers/widgets/ImageWidget.tid +13 -3
  842. package/editions/tw5.com/tiddlers/widgets/JSONTiddlerWidget.tid +5 -4
  843. package/editions/tw5.com/tiddlers/{Keyboard Codes.tid → widgets/Keyboard Codes.tid} +0 -0
  844. package/editions/tw5.com/tiddlers/widgets/KeyboardWidget.tid +2 -2
  845. package/editions/tw5.com/tiddlers/widgets/LetWidget.tid +57 -0
  846. package/editions/tw5.com/tiddlers/widgets/LinkCatcherWidget.tid +3 -2
  847. package/editions/tw5.com/tiddlers/widgets/ListWidget.tid +2 -2
  848. package/editions/tw5.com/tiddlers/widgets/ListopsData.tid +1 -0
  849. package/editions/tw5.com/tiddlers/widgets/MacroCallWidget.tid +3 -1
  850. package/editions/tw5.com/tiddlers/widgets/MessageCatcherWidget.tid +3 -3
  851. package/editions/tw5.com/tiddlers/widgets/MessageHandlerWidgets.tid +13 -0
  852. package/editions/tw5.com/tiddlers/widgets/NavigatorWidget.tid +5 -2
  853. package/editions/tw5.com/tiddlers/widgets/QualifyWidget.tid +39 -0
  854. package/editions/tw5.com/tiddlers/widgets/RadioWidget.tid +2 -2
  855. package/editions/tw5.com/tiddlers/widgets/RangeWidget.tid +2 -2
  856. package/editions/tw5.com/tiddlers/widgets/ScrollableWidget.tid +3 -3
  857. package/editions/tw5.com/tiddlers/widgets/SelectWidget.tid +15 -2
  858. package/editions/tw5.com/tiddlers/widgets/SetMultipleVariablesWidget.tid +33 -0
  859. package/editions/tw5.com/tiddlers/widgets/SetWidget.tid +3 -1
  860. package/editions/tw5.com/tiddlers/widgets/The Extended Listops Filters.tid +2 -1
  861. package/editions/tw5.com/tiddlers/widgets/TranscludeWidget.tid +8 -10
  862. package/editions/tw5.com/tiddlers/widgets/TriggeringWidgets.tid +13 -0
  863. package/editions/tw5.com/tiddlers/widgets/VarsWidget.tid +7 -5
  864. package/editions/tw5.com/tiddlers/widgets/ViewWidget.tid +26 -8
  865. package/editions/tw5.com/tiddlers/widgets/WikifyWidget.tid +2 -2
  866. package/editions/tw5.com/tiddlers/wikitext/Code Blocks in WikiText.tid +4 -7
  867. package/editions/tw5.com/tiddlers/wikitext/Dashes in WikiText.tid +7 -3
  868. package/editions/tw5.com/tiddlers/wikitext/Formatting in WikiText.tid +7 -7
  869. package/editions/tw5.com/tiddlers/wikitext/HTML in WikiText.tid +30 -4
  870. package/editions/tw5.com/tiddlers/wikitext/Headings in WikiText.tid +3 -3
  871. package/editions/tw5.com/tiddlers/wikitext/Horizontal Rules in WikiText.tid +3 -5
  872. package/editions/tw5.com/tiddlers/wikitext/Images in WikiText.tid +3 -3
  873. package/editions/tw5.com/tiddlers/wikitext/Linking in WikiText.tid +44 -1
  874. package/editions/tw5.com/tiddlers/wikitext/Macro Calls in WikiText.tid +3 -3
  875. package/editions/tw5.com/tiddlers/wikitext/Tables in WikiText.tid +13 -37
  876. package/editions/tw5.com/tiddlers/wikitext/Transclusion and Substitution.tid +3 -2
  877. package/editions/tw5.com/tiddlers/wikitext/Transclusion in WikiText.tid +2 -1
  878. package/editions/tw5.com/tiddlers/wikitext/Widgets in WikiText.tid +6 -6
  879. package/editions/tw5.com/tiddlers/wikitext/parser/Block Mode WikiText (Examples).tid +51 -0
  880. package/editions/tw5.com/tiddlers/wikitext/parser/Block Mode WikiText.tid +35 -0
  881. package/editions/tw5.com/tiddlers/wikitext/parser/Inline Mode WikiText.tid +26 -0
  882. package/editions/tw5.com/tiddlers/wikitext/parser/Places where the parser ignores WikiText.tid +14 -0
  883. package/editions/tw5.com/tiddlers/wikitext/parser/WikiText Parser Modes.tid +16 -0
  884. package/editions/tw5.com/tiddlers/wikitext/parser/WikiText parser mode transitions.tid +59 -0
  885. package/editions/tw5.com/tiddlers/wikitext/parser/WikiText parser mode_ HTML examples.tid +72 -0
  886. package/editions/tw5.com/tiddlers/wikitext/parser/WikiText parser mode_ macro examples.tid +55 -0
  887. package/editions/tw5.com/tiddlers/wikitext/parser/WikiText parser mode_ transclusion examples.tid +56 -0
  888. package/editions/tw5.com/tiddlers/wikitext/parser/table-example.tid +8 -0
  889. package/languages/de-DE/ControlPanel.multids +17 -0
  890. package/languages/de-DE/EditTemplate.multids +1 -0
  891. package/languages/de-DE/Fields.multids +6 -5
  892. package/languages/de-DE/Help/render.tid +2 -1
  893. package/languages/de-DE/SideBar.multids +2 -0
  894. package/languages/fr-FR/ControlPanel.multids +18 -0
  895. package/languages/fr-FR/EditTemplate.multids +1 -0
  896. package/languages/fr-FR/Fields.multids +4 -2
  897. package/languages/fr-FR/Help/default.tid +4 -1
  898. package/languages/fr-FR/Help/render.tid +2 -1
  899. package/languages/fr-FR/Misc.multids +1 -1
  900. package/languages/fr-FR/SideBar.multids +1 -0
  901. package/languages/ja-JP/Buttons.multids +147 -30
  902. package/languages/ja-JP/ControlPanel.multids +175 -37
  903. package/languages/ja-JP/CoreReadMe.tid +2 -2
  904. package/languages/ja-JP/Dates.multids +24 -24
  905. package/languages/ja-JP/Docs/ModuleTypes.multids +3 -3
  906. package/languages/ja-JP/Docs/PaletteColours.multids +18 -18
  907. package/languages/ja-JP/EditTemplate.multids +23 -7
  908. package/languages/ja-JP/Exporters.multids +1 -1
  909. package/languages/ja-JP/Fields.multids +28 -23
  910. package/languages/ja-JP/Filters.multids +12 -9
  911. package/languages/ja-JP/GettingStarted.tid +6 -6
  912. package/languages/ja-JP/Help/build.tid +2 -2
  913. package/languages/ja-JP/Help/editions.tid +6 -2
  914. package/languages/ja-JP/Help/help.tid +1 -1
  915. package/languages/ja-JP/Help/init.tid +2 -2
  916. package/languages/ja-JP/Help/load.tid +2 -2
  917. package/languages/ja-JP/Help/makelibrary.tid +3 -3
  918. package/languages/ja-JP/Help/output.tid +2 -2
  919. package/languages/ja-JP/Help/rendertiddler.tid +2 -2
  920. package/languages/ja-JP/Help/rendertiddlers.tid +2 -2
  921. package/languages/ja-JP/Help/savetiddler.tid +2 -2
  922. package/languages/ja-JP/Help/savetiddlers.tid +12 -2
  923. package/languages/ja-JP/Help/server.tid +6 -6
  924. package/languages/ja-JP/Help/setfield.tid +7 -7
  925. package/languages/ja-JP/Help/unpackplugin.tid +2 -2
  926. package/languages/ja-JP/Help/verbose.tid +6 -2
  927. package/languages/ja-JP/Help/version.tid +2 -2
  928. package/languages/ja-JP/Import.multids +27 -8
  929. package/languages/ja-JP/Misc.multids +98 -11
  930. package/languages/ja-JP/Modals/Download.tid +2 -2
  931. package/languages/ja-JP/Notifications.multids +2 -2
  932. package/languages/ja-JP/Search.multids +8 -4
  933. package/languages/ja-JP/SideBar.multids +6 -4
  934. package/languages/ja-JP/SiteSubtitle.tid +1 -1
  935. package/languages/ja-JP/SiteTitle.tid +1 -1
  936. package/languages/ja-JP/TiddlerInfo.multids +10 -10
  937. package/languages/ja-JP/Types/application%2Fjavascript.tid +1 -1
  938. package/languages/ja-JP/Types/image%2Fgif.tid +1 -1
  939. package/languages/ja-JP/Types/image%2Fjpeg.tid +1 -1
  940. package/languages/ja-JP/Types/image%2Fpng.tid +1 -1
  941. package/languages/ja-JP/Types/image%2Fsvg%2Bxml.tid +1 -1
  942. package/languages/ja-JP/Types/image%2Fx-icon.tid +1 -1
  943. package/languages/ja-JP/Types/text%2Fcss.tid +1 -1
  944. package/languages/ja-JP/Types/text%2Fvnd.tiddlywiki.tid +1 -1
  945. package/languages/ja-JP/plugin.info +1 -1
  946. package/languages/pl-PL/ControlPanel.multids +18 -3
  947. package/languages/pl-PL/Docs/PaletteColours.multids +1 -1
  948. package/languages/pl-PL/EditTemplate.multids +1 -0
  949. package/languages/pl-PL/Fields.multids +3 -3
  950. package/languages/pl-PL/Help/default.tid +4 -1
  951. package/languages/pl-PL/Import.multids +4 -4
  952. package/languages/pl-PL/Misc.multids +2 -2
  953. package/languages/pl-PL/SideBar.multids +2 -1
  954. package/languages/zh-Hans/ControlPanel.multids +17 -0
  955. package/languages/zh-Hans/EditTemplate.multids +1 -0
  956. package/languages/zh-Hans/Fields.multids +4 -2
  957. package/languages/zh-Hans/Help/default.tid +4 -1
  958. package/languages/zh-Hans/Help/render.tid +1 -0
  959. package/languages/zh-Hans/Misc.multids +1 -1
  960. package/languages/zh-Hans/SideBar.multids +1 -0
  961. package/languages/zh-Hant/ControlPanel.multids +17 -0
  962. package/languages/zh-Hant/EditTemplate.multids +1 -0
  963. package/languages/zh-Hant/Fields.multids +4 -2
  964. package/languages/zh-Hant/Help/default.tid +4 -1
  965. package/languages/zh-Hant/Help/render.tid +1 -0
  966. package/languages/zh-Hant/Misc.multids +1 -1
  967. package/languages/zh-Hant/SideBar.multids +1 -0
  968. package/license +1 -1
  969. package/licenses/cla-individual.md +33 -1
  970. package/package.json +5 -3
  971. package/plugins/tiddlywiki/browser-sniff/browser.js +5 -1
  972. package/plugins/tiddlywiki/browser-sniff/usage.tid +1 -0
  973. package/plugins/tiddlywiki/browser-storage/rawmarkup.js +18 -1
  974. package/plugins/tiddlywiki/browser-storage/readme.tid +0 -1
  975. package/plugins/tiddlywiki/browser-storage/settings.tid +5 -1
  976. package/plugins/tiddlywiki/browser-storage/startup.js +14 -9
  977. package/plugins/tiddlywiki/codemirror/engine.js +55 -2
  978. package/plugins/tiddlywiki/dynannotate/docs/readme.tid +72 -8
  979. package/plugins/tiddlywiki/dynannotate/examples/viewtemplate.tid +3 -4
  980. package/plugins/tiddlywiki/dynannotate/modules/dynannotate.js +10 -1
  981. package/plugins/tiddlywiki/dynannotate/modules/legacy-selection-tracker.js +104 -0
  982. package/plugins/tiddlywiki/dynannotate/modules/selection-tracker.js +144 -89
  983. package/plugins/tiddlywiki/dynannotate/modules/startup.js +40 -0
  984. package/plugins/tiddlywiki/highlight/files/default.min.css +9 -0
  985. package/plugins/tiddlywiki/highlight/files/highlight.min.js +1401 -0
  986. package/plugins/tiddlywiki/highlight/files/tiddlywiki.files +2 -2
  987. package/plugins/tiddlywiki/highlight/highlightblock.js +27 -21
  988. package/plugins/tiddlywiki/highlight/plugin.info +1 -1
  989. package/plugins/tiddlywiki/highlight/readme.tid +18 -47
  990. package/plugins/tiddlywiki/highlight/styles.tid +10 -5
  991. package/plugins/tiddlywiki/highlight/usage.tid +48 -1
  992. package/plugins/tiddlywiki/highlight-legacy/TypeMappings.multids +8 -0
  993. package/plugins/tiddlywiki/{highlight → highlight-legacy}/files/default.css +0 -0
  994. package/plugins/tiddlywiki/{highlight → highlight-legacy}/files/highlight.pack.js +0 -0
  995. package/plugins/tiddlywiki/highlight-legacy/files/tiddlywiki.files +22 -0
  996. package/plugins/tiddlywiki/highlight-legacy/highlightblock.js +44 -0
  997. package/plugins/tiddlywiki/highlight-legacy/license.tid +27 -0
  998. package/plugins/tiddlywiki/highlight-legacy/plugin.info +7 -0
  999. package/plugins/tiddlywiki/highlight-legacy/readme.tid +65 -0
  1000. package/plugins/tiddlywiki/highlight-legacy/styles.tid +82 -0
  1001. package/plugins/tiddlywiki/highlight-legacy/usage.tid +28 -0
  1002. package/plugins/tiddlywiki/internals/editpreviews/raw.tid +1 -0
  1003. package/{editions/katexdemo/tiddlers → plugins/tiddlywiki/katex}/ImplementationNotes.tid +3 -3
  1004. package/plugins/tiddlywiki/katex/developer.tid +58 -0
  1005. package/plugins/tiddlywiki/katex/files/contrib/mhchem.min.js +1 -0
  1006. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_AMS-Regular.woff +0 -0
  1007. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Bold.woff +0 -0
  1008. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Regular.woff +0 -0
  1009. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Bold.woff +0 -0
  1010. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Regular.woff +0 -0
  1011. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Bold.woff +0 -0
  1012. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-BoldItalic.woff +0 -0
  1013. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Italic.woff +0 -0
  1014. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Regular.woff +0 -0
  1015. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-BoldItalic.woff +0 -0
  1016. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-Italic.woff +0 -0
  1017. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Bold.woff +0 -0
  1018. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Italic.woff +0 -0
  1019. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Regular.woff +0 -0
  1020. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Script-Regular.woff +0 -0
  1021. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size1-Regular.woff +0 -0
  1022. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size2-Regular.woff +0 -0
  1023. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size3-Regular.woff +0 -0
  1024. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size4-Regular.woff +0 -0
  1025. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Typewriter-Regular.woff +0 -0
  1026. package/plugins/tiddlywiki/katex/files/katex.min.css +1 -1
  1027. package/plugins/tiddlywiki/katex/files/katex.min.js +1 -1
  1028. package/plugins/tiddlywiki/katex/files/katex.without-font-face.min.css +1 -1
  1029. package/plugins/tiddlywiki/katex/files/tiddlywiki.files +2 -2
  1030. package/plugins/tiddlywiki/katex/plugin.info +1 -1
  1031. package/plugins/tiddlywiki/katex/readme.tid +1 -1
  1032. package/plugins/tiddlywiki/katex/snippets/logo.tid +4 -0
  1033. package/plugins/tiddlywiki/katex/snippets/math.tid +8 -0
  1034. package/plugins/tiddlywiki/katex/styles.tid +7 -0
  1035. package/plugins/tiddlywiki/katex/usage.tid +18 -2
  1036. package/plugins/tiddlywiki/markdown/EditorToolbar/link-dropdown.tid +73 -0
  1037. package/plugins/tiddlywiki/markdown/EditorToolbar/link.tid +11 -0
  1038. package/plugins/tiddlywiki/markdown/EditorToolbar/linkify.tid +15 -0
  1039. package/plugins/tiddlywiki/markdown/EditorToolbar/mono-block.tid +17 -0
  1040. package/plugins/tiddlywiki/markdown/KeyboardShortcuts/new-markdown-tiddler.tid +8 -0
  1041. package/plugins/tiddlywiki/markdown/config.multids +5 -0
  1042. package/plugins/tiddlywiki/markdown/config_renderWikiTextPragma.tid +1 -1
  1043. package/plugins/tiddlywiki/markdown/editor-operations/make-markdown-link.js +37 -0
  1044. package/plugins/tiddlywiki/markdown/images/markdown-linkify.tid +6 -0
  1045. package/plugins/tiddlywiki/markdown/wrapper.js +33 -22
  1046. package/plugins/tiddlywiki/menubar/items/search.tid +2 -0
  1047. package/plugins/tiddlywiki/menubar/menu.tid +1 -1
  1048. package/plugins/tiddlywiki/tiddlyweb/save-wiki-button.tid +1 -1
  1049. package/readme.md +6 -4
  1050. package/themes/tiddlywiki/snowwhite/base.tid +2 -1
  1051. package/themes/tiddlywiki/vanilla/ThemeTweaks.tid +7 -3
  1052. package/themes/tiddlywiki/vanilla/base.tid +40 -6
  1053. package/themes/tiddlywiki/vanilla/reset.tid +1 -1
  1054. package/themes/tiddlywiki/vanilla/sticky.tid +1 -0
  1055. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -43
  1056. package/core/ui/ViewTemplate/plugin.tid +0 -15
  1057. package/editions/fr-FR/tiddlers/$__core_ui_SideBar_Open.tid +0 -15
  1058. package/editions/fr-FR/tiddlers/$__core_ui_ViewTemplate_title.tid +0 -46
  1059. package/editions/fr-FR/tiddlers/$__editions_tw5.com_wikitext-macros.tid +0 -47
  1060. package/editions/fr-FR/tiddlers/Code Blocks in WikiText.tid +0 -33
  1061. package/editions/fr-FR/tiddlers/Formatting in WikiText.tid +0 -23
  1062. package/editions/fr-FR/tiddlers/Horizontal Rules in WikiText.tid +0 -17
  1063. package/editions/fr-FR/tiddlers/Images_in_WikiText.tid +0 -48
  1064. package/editions/fr-FR/tiddlers/ImportTiddlers.tid +0 -14
  1065. package/editions/fr-FR/tiddlers/Installing TiddlyWiki on Node.js.tid +0 -23
  1066. package/editions/fr-FR/tiddlers/Macro_Calls_in_WikiText.tid +0 -22
  1067. package/editions/fr-FR/tiddlers/Pragma.tid +0 -17
  1068. package/editions/fr-FR/tiddlers/Saving on Android.tid +0 -10
  1069. package/editions/fr-FR/tiddlers/Saving on InternetExplorer.tid +0 -11
  1070. package/editions/fr-FR/tiddlers/Saving on Safari.tid +0 -24
  1071. package/editions/fr-FR/tiddlers/Saving on iPad_iPhone.tid +0 -23
  1072. package/editions/fr-FR/tiddlers/Saving with TiddlyFox.tid +0 -24
  1073. package/editions/fr-FR/tiddlers/Saving with TiddlyIE.tid +0 -19
  1074. package/editions/fr-FR/tiddlers/Saving.tid +0 -10
  1075. package/editions/fr-FR/tiddlers/Saving_on_a_PHP_Server.tid +0 -30
  1076. package/editions/fr-FR/tiddlers/Sharing_your_tiddlers_with_others.tid +0 -16
  1077. package/editions/fr-FR/tiddlers/Tables_in_WikiText.tid +0 -102
  1078. package/editions/fr-FR/tiddlers/TiddlyDesktop.tid +0 -23
  1079. package/editions/fr-FR/tiddlers/TiddlyDesktop_Releases.tid +0 -9
  1080. package/editions/fr-FR/tiddlers/TiddlyWiki on Node.js.tid +0 -18
  1081. package/editions/fr-FR/tiddlers/TranscludeWidget.tid +0 -73
  1082. package/editions/fr-FR/tiddlers/Widgets_in_WikiText.tid +0 -30
  1083. package/editions/katexdemo/tiddlers/DefaultTiddlers.tid +0 -5
  1084. package/editions/prerelease/tiddlers/Release 5.2.1.tid +0 -62
  1085. package/editions/tw5.com/tiddlers/customising/Page and tiddler layout customisation.tid +0 -63
  1086. package/editions/tw5.com/tiddlers/demonstrations/SampleAlert.tid +0 -9
  1087. package/plugins/tiddlywiki/highlight/howto.tid +0 -10
  1088. package/plugins/tiddlywiki/katex/files/README.md +0 -119
  1089. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_AMS-Regular.ttf +0 -0
  1090. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_AMS-Regular.woff2 +0 -0
  1091. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Bold.ttf +0 -0
  1092. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Bold.woff2 +0 -0
  1093. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Regular.ttf +0 -0
  1094. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Caligraphic-Regular.woff2 +0 -0
  1095. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Bold.ttf +0 -0
  1096. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Bold.woff2 +0 -0
  1097. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Regular.ttf +0 -0
  1098. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Fraktur-Regular.woff2 +0 -0
  1099. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Bold.ttf +0 -0
  1100. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Bold.woff2 +0 -0
  1101. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-BoldItalic.ttf +0 -0
  1102. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-BoldItalic.woff2 +0 -0
  1103. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Italic.ttf +0 -0
  1104. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Italic.woff2 +0 -0
  1105. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Regular.ttf +0 -0
  1106. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Main-Regular.woff2 +0 -0
  1107. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-BoldItalic.ttf +0 -0
  1108. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-BoldItalic.woff2 +0 -0
  1109. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-Italic.ttf +0 -0
  1110. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Math-Italic.woff2 +0 -0
  1111. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Bold.ttf +0 -0
  1112. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Bold.woff2 +0 -0
  1113. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Italic.ttf +0 -0
  1114. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Italic.woff2 +0 -0
  1115. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Regular.ttf +0 -0
  1116. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_SansSerif-Regular.woff2 +0 -0
  1117. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Script-Regular.ttf +0 -0
  1118. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Script-Regular.woff2 +0 -0
  1119. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size1-Regular.ttf +0 -0
  1120. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size1-Regular.woff2 +0 -0
  1121. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size2-Regular.ttf +0 -0
  1122. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size2-Regular.woff2 +0 -0
  1123. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size3-Regular.ttf +0 -0
  1124. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size3-Regular.woff2 +0 -0
  1125. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size4-Regular.ttf +0 -0
  1126. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Size4-Regular.woff2 +0 -0
  1127. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Typewriter-Regular.ttf +0 -0
  1128. package/plugins/tiddlywiki/katex/files/fonts/KaTeX_Typewriter-Regular.woff2 +0 -0
  1129. package/plugins/tiddlywiki/katex/files/katex.css +0 -1079
  1130. package/plugins/tiddlywiki/katex/files/katex.js +0 -18183
  1131. package/plugins/tiddlywiki/katex/files/mhchem.min.js +0 -1
@@ -128,6 +128,21 @@ describe("HTML tag new parser tests", function() {
128
128
  expect($tw.utils.parseAttribute("p=\"blah\" ",0)).toEqual(
129
129
  { type : 'string', start : 0, name : 'p', value : 'blah', end : 8 }
130
130
  );
131
+ expect($tw.utils.parseAttribute("p=\"bl\nah\" ",0)).toEqual(
132
+ { type : 'string', start : 0, name : 'p', value : 'bl\nah', end : 9 }
133
+ );
134
+ expect($tw.utils.parseAttribute("p={{{blah}}} ",0)).toEqual(
135
+ { type : 'filtered', start : 0, name : 'p', filter : 'blah', end : 12 }
136
+ );
137
+ expect($tw.utils.parseAttribute("p={{{bl\nah}}} ",0)).toEqual(
138
+ { type : 'filtered', start : 0, name : 'p', filter : 'bl\nah', end : 13 }
139
+ );
140
+ expect($tw.utils.parseAttribute("p={{{ [{$:/layout}] }}} ",0)).toEqual(
141
+ { type : 'filtered', start : 0, name : 'p', filter : ' [{$:/layout}] ', end : 23 }
142
+ );
143
+ expect($tw.utils.parseAttribute("p={{blah}} ",0)).toEqual(
144
+ { type : 'indirect', start : 0, name : 'p', textReference : 'blah', end : 10 }
145
+ );
131
146
  expect($tw.utils.parseAttribute("p=blah ",0)).toEqual(
132
147
  { type : 'string', start : 0, name : 'p', value : 'blah', end : 6 }
133
148
  );
@@ -156,46 +171,52 @@ describe("HTML tag new parser tests", function() {
156
171
  null
157
172
  );
158
173
  expect(parser.parseTag("<mytag>",0)).toEqual(
159
- { type : 'element', start : 0, attributes : { }, tag : 'mytag', end : 7 }
174
+ { type : 'element', start : 0, attributes : { }, orderedAttributes: [ ], tag : 'mytag', end : 7 }
160
175
  );
161
176
  expect(parser.parseTag("<mytag attrib1>",0)).toEqual(
162
- { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', value : 'true', start : 6, name : 'attrib1', end : 14 } }, tag : 'mytag', end : 15 }
177
+ { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', value : 'true', start : 6, name : 'attrib1', end : 14 } }, orderedAttributes: [ { start: 6, name: 'attrib1', type: 'string', value: 'true', end: 14 } ], tag : 'mytag', end : 15 }
163
178
  );
164
179
  expect(parser.parseTag("<mytag attrib1/>",0)).toEqual(
165
- { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', value : 'true', start : 6, name : 'attrib1', end : 14 } }, tag : 'mytag', isSelfClosing : true, end : 16 }
180
+ { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', value : 'true', start : 6, name : 'attrib1', end : 14 } }, orderedAttributes: [ { start: 6, name: 'attrib1', type: 'string', value: 'true', end: 14 } ], tag : 'mytag', isSelfClosing : true, end : 16 }
166
181
  );
167
182
  expect(parser.parseTag("<$view field=\"title\" format=\"link\"/>",0)).toEqual(
168
- { type : 'view', start : 0, attributes : { field : { start : 6, name : 'field', type : 'string', value : 'title', end : 20 }, format : { start : 20, name : 'format', type : 'string', value : 'link', end : 34 } }, tag : '$view', isSelfClosing : true, end : 36 }
183
+ { type : 'view', start : 0, attributes : { field : { start : 6, name : 'field', type : 'string', value : 'title', end : 20 }, format : { start : 20, name : 'format', type : 'string', value : 'link', end : 34 } }, orderedAttributes: [ { start: 6, name: 'field', type: 'string', value: 'title', end: 20 }, { start: 20, name: 'format', type: 'string', value: 'link', end: 34 } ], tag : '$view', isSelfClosing : true, end : 36 }
169
184
  );
170
185
  expect(parser.parseTag("<mytag attrib1='something'>",0)).toEqual(
171
- { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', start : 6, name : 'attrib1', value : 'something', end : 26 } }, tag : 'mytag', end : 27 }
186
+ { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', start : 6, name : 'attrib1', value : 'something', end : 26 } }, orderedAttributes: [ { start: 6, name: 'attrib1', type: 'string', value: 'something', end: 26 } ], tag : 'mytag', end : 27 }
187
+ );
188
+ expect(parser.parseTag("<mytag attrib1 attrib1='something'>",0)).toEqual(
189
+ { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', start : 15, name : 'attrib1', value : 'something', end : 34 } }, orderedAttributes: [ { start: 6, name: 'attrib1', type: 'string', value: 'true', end: 15 }, { start: 15, name: 'attrib1', type: 'string', value: 'something', end: 34 } ], tag : 'mytag', end : 35 }
190
+ );
191
+ expect(parser.parseTag("<mytag attrib1 attrib1='something' attrib1='else'>",0)).toEqual(
192
+ { type : 'element', start : 0, attributes : { attrib1 : { type : 'string', start : 34, name : 'attrib1', value : 'else', end : 49 } }, orderedAttributes: [ { start: 6, name: 'attrib1', type: 'string', value: 'true', end: 15 }, { start: 15, name: 'attrib1', type: 'string', value: 'something', end: 34 }, { start: 34, name: 'attrib1', type: 'string', value: 'else', end: 49 } ], tag : 'mytag', end : 50 }
172
193
  );
173
194
  expect(parser.parseTag("<$mytag attrib1='something' attrib2=else thing>",0)).toEqual(
174
- { type : 'mytag', start : 0, attributes : { attrib1 : { type : 'string', start : 7, name : 'attrib1', value : 'something', end : 27 }, attrib2 : { type : 'string', start : 27, name : 'attrib2', value : 'else', end : 40 }, thing : { type : 'string', start : 40, name : 'thing', value : 'true', end : 46 } }, tag : '$mytag', end : 47 }
195
+ { type : 'mytag', start : 0, attributes : { attrib1 : { type : 'string', start : 7, name : 'attrib1', value : 'something', end : 27 }, attrib2 : { type : 'string', start : 27, name : 'attrib2', value : 'else', end : 40 }, thing : { type : 'string', start : 40, name : 'thing', value : 'true', end : 46 } }, orderedAttributes: [ { start: 7, name: 'attrib1', type: 'string', value: 'something', end: 27 }, { start: 27, name: 'attrib2', type: 'string', value: 'else', end: 40 }, { start: 40, name: 'thing', type: 'string', value: 'true', end: 46 } ], tag : '$mytag', end : 47 }
175
196
  );
176
197
  expect(parser.parseTag("< $mytag attrib1='something' attrib2=else thing>",0)).toEqual(
177
198
  null
178
199
  );
179
200
  expect(parser.parseTag("<$mytag attrib3=<<myMacro one:two three:'four and five'>>>",0)).toEqual(
180
- { type : 'mytag', start : 0, attributes : { attrib3 : { type : 'macro', start : 7, name : 'attrib3', value : { type : 'macrocall', start : 16, params : [ { type : 'macro-parameter', start : 25, value : 'two', name : 'one', end : 33 }, { type : 'macro-parameter', start : 33, value : 'four and five', name : 'three', end : 55 } ], name : 'myMacro', end : 57 }, end : 57 } }, tag : '$mytag', end : 58 }
201
+ { type : 'mytag', start : 0, attributes : { attrib3 : { type : 'macro', start : 7, name : 'attrib3', value : { type : 'macrocall', start : 16, params : [ { type : 'macro-parameter', start : 25, value : 'two', name : 'one', end : 33 }, { type : 'macro-parameter', start : 33, value : 'four and five', name : 'three', end : 55 } ], name : 'myMacro', end : 57 }, end : 57 } }, orderedAttributes: [ { type : 'macro', start : 7, name : 'attrib3', value : { type : 'macrocall', start : 16, params : [ { type : 'macro-parameter', start : 25, value : 'two', name : 'one', end : 33 }, { type : 'macro-parameter', start : 33, value : 'four and five', name : 'three', end : 55 } ], name : 'myMacro', end : 57 }, end : 57 } ], tag : '$mytag', end : 58 }
181
202
  );
182
203
  expect(parser.parseTag("<$mytag attrib1='something' attrib2=else thing attrib3=<<myMacro one:two three:'four and five'>>>",0)).toEqual(
183
- { type : 'mytag', start : 0, attributes : { attrib1 : { type : 'string', start : 7, name : 'attrib1', value : 'something', end : 27 }, attrib2 : { type : 'string', start : 27, name : 'attrib2', value : 'else', end : 40 }, thing : { type : 'string', start : 40, name : 'thing', value : 'true', end : 47 }, attrib3 : { type : 'macro', start : 47, name : 'attrib3', value : { type : 'macrocall', start : 55, params : [ { type : 'macro-parameter', start : 64, value : 'two', name : 'one', end : 72 }, { type : 'macro-parameter', start : 72, value : 'four and five', name : 'three', end : 94 } ], name : 'myMacro', end : 96 }, end : 96 } }, tag : '$mytag', end : 97 }
204
+ { type : 'mytag', start : 0, attributes : { attrib1 : { type : 'string', start : 7, name : 'attrib1', value : 'something', end : 27 }, attrib2 : { type : 'string', start : 27, name : 'attrib2', value : 'else', end : 40 }, thing : { type : 'string', start : 40, name : 'thing', value : 'true', end : 47 }, attrib3 : { type : 'macro', start : 47, name : 'attrib3', value : { type : 'macrocall', start : 55, params : [ { type : 'macro-parameter', start : 64, value : 'two', name : 'one', end : 72 }, { type : 'macro-parameter', start : 72, value : 'four and five', name : 'three', end : 94 } ], name : 'myMacro', end : 96 }, end : 96 } }, orderedAttributes: [ { type : 'string', start : 7, name : 'attrib1', value : 'something', end : 27 }, { type : 'string', start : 27, name : 'attrib2', value : 'else', end : 40 }, { type : 'string', start : 40, name : 'thing', value : 'true', end : 47 }, { type : 'macro', start : 47, name : 'attrib3', value : { type : 'macrocall', start : 55, params : [ { type : 'macro-parameter', start : 64, value : 'two', name : 'one', end : 72 }, { type : 'macro-parameter', start : 72, value : 'four and five', name : 'three', end : 94 } ], name : 'myMacro', end : 96 }, end : 96 } ], tag : '$mytag', end : 97 }
184
205
  );
185
206
  });
186
207
 
187
208
  it("should find and parse HTML tags", function() {
188
209
  expect(parser.findNextTag("<something <mytag>",1)).toEqual(
189
- { type : 'element', start : 11, attributes : { }, tag : 'mytag', end : 18 }
210
+ { type : 'element', start : 11, attributes : { }, orderedAttributes: [ ], tag : 'mytag', end : 18 }
190
211
  );
191
212
  expect(parser.findNextTag("something else </mytag>",0)).toEqual(
192
213
  null
193
214
  );
194
215
  expect(parser.findNextTag("<<some other stuff>> <mytag>",0)).toEqual(
195
- { type : 'element', start : 1, attributes : { other : { type : 'string', value : 'true', start : 6, name : 'other', end : 13 }, stuff : { type : 'string', value : 'true', start : 13, name : 'stuff', end : 18 } }, tag : 'some', end : 19 }
216
+ { type : 'element', start : 1, attributes : { other : { type : 'string', value : 'true', start : 6, name : 'other', end : 13 }, stuff : { type : 'string', value : 'true', start : 13, name : 'stuff', end : 18 } }, orderedAttributes: [ { type : 'string', value : 'true', start : 6, name : 'other', end : 13 }, { type : 'string', value : 'true', start : 13, name : 'stuff', end : 18 } ], tag : 'some', end : 19 }
196
217
  );
197
218
  expect(parser.findNextTag("<<some other stuff>> <mytag>",2)).toEqual(
198
- { type : 'element', start : 21, attributes : { }, tag : 'mytag', end : 28 }
219
+ { type : 'element', start : 21, attributes : { }, orderedAttributes: [ ], tag : 'mytag', end : 28 }
199
220
  );
200
221
  });
201
222
 
@@ -288,6 +288,38 @@ describe("'reduce' and 'intersection' filter prefix tests", function() {
288
288
  tags: ["cakes","with tea"],
289
289
  text: "Does anyone eat pound cake?"
290
290
  });
291
+ wiki.addTiddler({
292
+ title: "$:/filter1",
293
+ text: "[tag[cakes]then[It is customary]]",
294
+ tags: "$:/tags/Filter $:/tags/SecondFilter"
295
+ });
296
+ wiki.addTiddler({
297
+ title: "$:/filter2",
298
+ text: "[<currentTiddler>tag[shopping]then[It is not customary]]",
299
+ tags: "$:/tags/Filter $:/tags/SecondFilter"
300
+ });
301
+ wiki.addTiddler({
302
+ title: "$:/filter3",
303
+ text: "[[Just a default]]",
304
+ tags: "$:/tags/Filter"
305
+ });
306
+ wiki.addTiddler({
307
+ title: "$:/tags/Filter",
308
+ list: "$:/filter1 $:/filter2 $:/filter3"
309
+ });
310
+ wiki.addTiddler({
311
+ title: "$:/tags/SecondFilter",
312
+ list: "$:/filter1 $:/filter2"
313
+ });
314
+
315
+ it("should handle the :cascade filter prefix", function() {
316
+ expect(wiki.filterTiddlers("[[Rice Pudding]] :cascade[all[shadows+tiddlers]tag[$:/tags/Filter]get[text]]").join(",")).toBe("It is not customary");
317
+ expect(wiki.filterTiddlers("[[chocolate cake]] :cascade[all[shadows+tiddlers]tag[$:/tags/Filter]get[text]]").join(",")).toBe("It is customary");
318
+ expect(wiki.filterTiddlers("[[Sparkling water]] :cascade[all[shadows+tiddlers]tag[$:/tags/Filter]get[text]]").join(",")).toBe("Just a default");
319
+ expect(wiki.filterTiddlers("[[Rice Pudding]] :cascade[all[shadows+tiddlers]tag[$:/tags/SecondFilter]get[text]]").join(",")).toBe("It is not customary");
320
+ expect(wiki.filterTiddlers("[[chocolate cake]] :cascade[all[shadows+tiddlers]tag[$:/tags/SecondFilter]get[text]]").join(",")).toBe("It is customary");
321
+ expect(wiki.filterTiddlers("[[Sparkling water]] :cascade[all[shadows+tiddlers]tag[$:/tags/SecondFilter]get[text]]").join(",")).toBe("");
322
+ });
291
323
 
292
324
  it("should handle the :reduce filter prefix", function() {
293
325
  expect(wiki.filterTiddlers("[tag[shopping]] :reduce[get[quantity]add<accumulator>]").join(",")).toBe("22");
@@ -360,10 +392,10 @@ describe("'reduce' and 'intersection' filter prefix tests", function() {
360
392
  rootWidget.setVariable("larger-than-18","[get[text]length[]compare:integer:gteq[18]]");
361
393
  rootWidget.setVariable("nr","18");
362
394
  rootWidget.setVariable("larger-than-18-with-var","[get[text]length[]compare:integer:gteq<nr>]");
363
- expect(wiki.filterTiddlers("[tag[textexample]] :filter[get[text]length[]compare:integer:gteq[18]]",anchorWidget).join(",")).toBe("Red wine,Cheesecake,Chocolate Cake");
364
- expect(wiki.filterTiddlers("[tag[textexample]]",anchorWidget).join(",")).toBe("Sparkling water,Red wine,Cheesecake,Chocolate Cake");
365
- expect(wiki.filterTiddlers("[tag[textexample]filter<larger-than-18>]",anchorWidget).join(",")).toBe("Red wine,Cheesecake,Chocolate Cake");
366
- expect(wiki.filterTiddlers("[tag[textexample]filter<larger-than-18-with-var>]",anchorWidget).join(",")).toBe("Red wine,Cheesecake,Chocolate Cake");
395
+ expect(wiki.filterTiddlers("[tag[textexample]] :filter[get[text]length[]compare:integer:gteq[18]]",anchorWidget).join(",")).toBe("Cheesecake,Chocolate Cake,Red wine");
396
+ expect(wiki.filterTiddlers("[tag[textexample]]",anchorWidget).join(",")).toBe("Cheesecake,Chocolate Cake,Red wine,Sparkling water");
397
+ expect(wiki.filterTiddlers("[tag[textexample]filter<larger-than-18>]",anchorWidget).join(",")).toBe("Cheesecake,Chocolate Cake,Red wine");
398
+ expect(wiki.filterTiddlers("[tag[textexample]filter<larger-than-18-with-var>]",anchorWidget).join(",")).toBe("Cheesecake,Chocolate Cake,Red wine");
367
399
  });
368
400
 
369
401
  it("should handle the :sort prefix", function() {
@@ -373,7 +405,7 @@ describe("'reduce' and 'intersection' filter prefix tests", function() {
373
405
  expect(wiki.filterTiddlers("[tag[textexample]] :sort:number:[get[text]length[]]").join(",")).toBe("Sparkling water,Chocolate Cake,Red wine,Cheesecake");
374
406
  expect(wiki.filterTiddlers("[tag[textexample]] :sort:number:reverse[get[text]length[]]").join(",")).toBe("Cheesecake,Red wine,Chocolate Cake,Sparkling water");
375
407
  expect(wiki.filterTiddlers("[tag[notatag]] :sort:number[get[price]]").join(",")).toBe("");
376
- expect(wiki.filterTiddlers("[tag[cakes]] :sort:string[{!!title}]").join(",")).toBe("Cheesecake,cheesecake,Chocolate Cake,chocolate cake,Persian love cake,Pound cake");
408
+ expect(wiki.filterTiddlers("[tag[cakes]] :sort:string[{!!title}]").join(",")).toBe("cheesecake,Cheesecake,chocolate cake,Chocolate Cake,Persian love cake,Pound cake");
377
409
  expect(wiki.filterTiddlers("[tag[cakes]] :sort:string:casesensitive[{!!title}]").join(",")).toBe("Cheesecake,Chocolate Cake,Persian love cake,Pound cake,cheesecake,chocolate cake");
378
410
  expect(wiki.filterTiddlers("[tag[cakes]] :sort:string:casesensitive,reverse[{!!title}]").join(",")).toBe("chocolate cake,cheesecake,Pound cake,Persian love cake,Chocolate Cake,Cheesecake");
379
411
  });
@@ -384,6 +416,26 @@ describe("'reduce' and 'intersection' filter prefix tests", function() {
384
416
  expect(wiki.filterTiddlers("[tag[shopping]] :map[get[description]else{!!title}]").join(",")).toBe("A square of rich chocolate cake,a round yellow seed,Milk,Rice Pudding");
385
417
  // Return the first title from :map if the filter returns more than one result
386
418
  expect(wiki.filterTiddlers("[tag[shopping]] :map[tags[]]").join(",")).toBe("shopping,shopping,shopping,shopping");
419
+ // Return all titles from :map if the flat suffix is used
420
+ expect(wiki.filterTiddlers("[tag[shopping]] :map:flat[tags[]]").join(",")).toBe("shopping,food,shopping,food,shopping,dairy,drinks,shopping,dairy");
421
+ // Prepend the position in the list using the index and length variables
422
+ expect(wiki.filterTiddlers("[tag[shopping]] :map[get[title]addprefix[-]addprefix<length>addprefix[of]addprefix<index>]").join(",")).toBe("0of4-Brownies,1of4-Chick Peas,2of4-Milk,3of4-Rice Pudding");
423
+ });
424
+
425
+ it("should handle macro parameters for filter run prefixes",function() {
426
+ var widget = require("$:/core/modules/widgets/widget.js");
427
+ var rootWidget = new widget.widget({ type:"widget", children:[ {type:"widget", children:[]} ] },
428
+ { wiki:wiki, document:$tw.document});
429
+ rootWidget.makeChildWidgets();
430
+ var anchorWidget = rootWidget.children[0];
431
+ rootWidget.setVariable("greet","Hello $name$",[{name:"name"}],true);
432
+ rootWidget.setVariable("echo","$text$",[{name:"text"}],true);
433
+ // :map prefix
434
+ expect(wiki.filterTiddlers("1 :map[subfilter<greet Tom>join[ ]]",anchorWidget).join(",")).toBe("Hello Tom");
435
+ expect(wiki.filterTiddlers('[tag[shopping]] :map[<echo "$(index)$ $(currentTiddler)$">]',anchorWidget).join(",")).toBe("0 Brownies,1 Chick Peas,2 Milk,3 Rice Pudding");
436
+ // :reduce prefix
437
+ expect(wiki.filterTiddlers("1 :reduce[subfilter<greet Tom>join[ ]]",anchorWidget).join(",")).toBe("Hello Tom");
438
+ expect(wiki.filterTiddlers('[tag[shopping]] :reduce[<echo "$(accumulator)$ $(index)$ $(currentTiddler)$,">]',anchorWidget).join(",")).toBe(" 0 Brownies, 1 Chick Peas, 2 Milk, 3 Rice Pudding,");
387
439
  });
388
440
  });
389
441
 
@@ -102,6 +102,25 @@ function runTests(wiki,wikiOptions) {
102
102
  expect(wiki.filterTiddlers("[tag[TiddlerSeventh]]").join(",")).toBe("Tiddler10,TiddlerOne,Tiddler Three,Tiddler11,Tiddler9,a fourth tiddler");
103
103
  });
104
104
 
105
+ it("should apply identical tag ordering irrespective of tag creation order", function () {
106
+ var wiki;
107
+ wiki = new $tw.Wiki(wikiOptions);
108
+ wiki.addTiddler({ title: "A", text: "", tags: "sortTag"});
109
+ wiki.addTiddler({ title: "B", text: "", tags: "sortTag"});
110
+ wiki.addTiddler({ title: "C", text: "", tags: "sortTag"});
111
+ expect(wiki.filterTiddlers("[tag[sortTag]]").join(',')).toBe("A,B,C");
112
+ wiki = new $tw.Wiki(wikiOptions);
113
+ wiki.addTiddler({ title: "A", text: "", tags: "sortTag"});
114
+ wiki.addTiddler({ title: "C", text: "", tags: "sortTag"});
115
+ wiki.addTiddler({ title: "B", text: "", tags: "sortTag"});
116
+ expect(wiki.filterTiddlers("[tag[sortTag]]").join(',')).toBe("A,B,C");
117
+ wiki = new $tw.Wiki(wikiOptions);
118
+ wiki.addTiddler({ title: "C", text: "", tags: "sortTag"});
119
+ wiki.addTiddler({ title: "B", text: "", tags: "sortTag"});
120
+ wiki.addTiddler({ title: "A", text: "", tags: "sortTag"});
121
+ expect(wiki.filterTiddlers("[tag[sortTag]]").join(',')).toBe("A,B,C");
122
+ });
123
+
105
124
  // Tests for issue (#3296)
106
125
  it("should apply tag ordering in order of dependency", function () {
107
126
  var wiki = new $tw.Wiki(wikiOptions);
@@ -78,6 +78,12 @@ describe("Utility tests", function() {
78
78
  expect(fds(d,"ddd hh mm ssss")).toBe("Sun 17 41 2828");
79
79
  expect(fds(d,"MM0DD")).toBe("1109");
80
80
  expect(fds(d,"MM0\\D\\D")).toBe("110DD");
81
+ const day = d.getUTCDate();
82
+ const dayStr = ("" + day).padStart(2, '0');
83
+ const hours = d.getUTCHours();
84
+ const hoursStr = ("" + hours).padStart(2, '0');
85
+ const expectedUtcStr = `201411${dayStr}${hoursStr}4128542`;
86
+ expect(fds(d,"[UTC]YYYY0MM0DD0hh0mm0ssXXX")).toBe(expectedUtcStr);
81
87
 
82
88
  // test some edge cases found at: https://en.wikipedia.org/wiki/ISO_week_date
83
89
  // 2016-11-13 is Week 45 and it's a Sunday (month nr: 10)
@@ -169,6 +175,16 @@ describe("Utility tests", function() {
169
175
  expect(cv("1.1.1","1.1.2")).toEqual(-1);
170
176
  });
171
177
 
178
+ it("should insert strings into sorted arrays", function() {
179
+ expect($tw.utils.insertSortedArray([],"a").join(",")).toEqual("a");
180
+ expect($tw.utils.insertSortedArray(["b","c","d"],"a").join(",")).toEqual("a,b,c,d");
181
+ expect($tw.utils.insertSortedArray(["b","c","d"],"d").join(",")).toEqual("b,c,d");
182
+ expect($tw.utils.insertSortedArray(["b","c","d"],"f").join(",")).toEqual("b,c,d,f");
183
+ expect($tw.utils.insertSortedArray(["b","c","d","e"],"f").join(",")).toEqual("b,c,d,e,f");
184
+ expect($tw.utils.insertSortedArray(["b","c","g"],"f").join(",")).toEqual("b,c,f,g");
185
+ expect($tw.utils.insertSortedArray(["b","c","d"],"ccc").join(",")).toEqual("b,c,ccc,d");
186
+ });
187
+
172
188
  });
173
189
 
174
190
  })();
@@ -143,7 +143,8 @@ describe("Widget module", function() {
143
143
  var wiki = new $tw.Wiki();
144
144
  // Add a tiddler
145
145
  wiki.addTiddlers([
146
- {title: "TiddlerOne", text: "<$transclude tiddler='TiddlerOne'/>\n"}
146
+ {title: "TiddlerOne", text: "<$transclude tiddler='TiddlerTwo'/>\n"},
147
+ {title: "TiddlerTwo", text: "<$transclude tiddler='TiddlerOne'/>"}
147
148
  ]);
148
149
  // Test parse tree
149
150
  var parseTreeNode = {type: "widget", children: [
@@ -247,6 +248,40 @@ describe("Widget module", function() {
247
248
  expect(wrapper.children[0].children[2].sequenceNumber).toBe(4);
248
249
  });
249
250
 
251
+ it("should deal with the let widget", function() {
252
+ var wiki = new $tw.Wiki();
253
+ wiki.addTiddlers([
254
+ {title: "TiddlerOne", text: "lookup"},
255
+ {title: "TiddlerTwo", lookup: "value", newlookup: "value", wrong: "wrong"},
256
+ {title: "TiddlerThree", text: "wrong", value: "Happy Result", wrong: "ALL WRONG!!"}
257
+ ]);
258
+ var text="\\define macro() TiddlerThree\n"+
259
+ "\\define currentTiddler() TiddlerOne\n"+
260
+ "<$let "+
261
+ "field={{!!text}} "+
262
+ "currentTiddler='TiddlerTwo' "+
263
+ "field={{{ [all[current]get<field>] }}} "+
264
+ "currentTiddler=<<macro>>>"+
265
+ "<$transclude field=<<field>>/></$let>";
266
+ var widgetNode = createWidgetNode(parseText(text,wiki),wiki);
267
+ var wrapper = renderWidgetNode(widgetNode);
268
+ expect(wrapper.innerHTML).toBe("<p>Happy Result</p>");
269
+
270
+ // This is important. $Let needs to be aware enough not to let its
271
+ // own variables interfere with its ability to recognize no change.
272
+ // Doesn't matter that nothing has changed, we just need to make sure
273
+ // it recognizes that that its outward facing variables are unchanged
274
+ // EVEN IF some intermediate variables did change, there's no need to
275
+ // refresh.
276
+ wiki.addTiddler({title: "TiddlerOne", text: "newlookup"});
277
+ expect(widgetNode.refresh({})).toBe(false);
278
+
279
+ // But if we make a change that might result in different outfacing
280
+ // variables, then it should refresh
281
+ wiki.addTiddler({title: "TiddlerOne", text: "badlookup"});
282
+ expect(widgetNode.refresh({})).toBe(true);
283
+ });
284
+
250
285
  it("should deal with attributes specified as macro invocations", function() {
251
286
  var wiki = new $tw.Wiki();
252
287
  // Construct the widget node
@@ -25,88 +25,88 @@ describe("WikiText parser tests", function() {
25
25
  it("should parse tags", function() {
26
26
  expect(parse("<br>")).toEqual(
27
27
 
28
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'br', isBlock : false, attributes : { }, start : 0, end : 4 } ] } ]
28
+ [ { type : 'element', tag : 'p', start : 0, end : 4, children : [ { type : 'element', tag : 'br', start : 0, end : 4, isBlock : false, attributes : { }, orderedAttributes: [ ] } ] } ]
29
29
 
30
30
  );
31
31
  expect(parse("</br>")).toEqual(
32
32
 
33
- [ { type : 'element', tag : 'p', children : [ { type : 'text', text : '</br>' } ] } ]
33
+ [ { type : 'element', tag : 'p', start : 0, end : 5, children : [ { type : 'text', text : '</br>', start : 0, end : 5 } ] } ]
34
34
 
35
35
  );
36
36
  expect(parse("<div>")).toEqual(
37
37
 
38
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { }, children : [ ], start : 0, end : 5 } ] } ]
38
+ [ { type : 'element', tag : 'p', start : 0, end : 5, children : [ { type : 'element', tag : 'div', start : 0, end : 5, isBlock : false, attributes : { }, orderedAttributes: [ ], children : [ ] } ] } ]
39
39
 
40
40
  );
41
41
  expect(parse("<div/>")).toEqual(
42
42
 
43
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isSelfClosing : true, isBlock : false, attributes : { }, start : 0, end : 6 } ] } ]
43
+ [ { type : 'element', tag : 'p', start : 0, end : 6, children : [ { type : 'element', tag : 'div', isSelfClosing : true, isBlock : false, attributes : { }, orderedAttributes: [ ], start : 0, end : 6 } ] } ]
44
44
 
45
45
  );
46
46
  expect(parse("<div></div>")).toEqual(
47
47
 
48
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { }, children : [ ], start : 0, end : 5 } ] } ]
48
+ [ { type : 'element', tag : 'p', start : 0, end : 11, children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { }, orderedAttributes: [ ], children : [ ], start : 0, end : 5 } ] } ]
49
49
 
50
50
  );
51
51
  expect(parse("<div>some text</div>")).toEqual(
52
52
 
53
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { }, children : [ { type : 'text', text : 'some text' } ], start : 0, end : 5 } ] } ]
53
+ [ { type : 'element', tag : 'p', start : 0, end : 20, children : [ { type : 'element', tag : 'div', start : 0, end : 20, isBlock : false, attributes : { }, orderedAttributes: [ ], children : [ { type : 'text', text : 'some text', start : 5, end : 14 } ], start : 0, end : 5 } ] } ]
54
54
 
55
55
  );
56
56
  expect(parse("<div attribute>some text</div>")).toEqual(
57
57
 
58
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'string', value : 'true', start : 4, end : 14, name: 'attribute' } }, children : [ { type : 'text', text : 'some text' } ], start : 0, end : 15 } ] } ]
58
+ [ { type : 'element', tag : 'p', start : 0, end : 30, children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'string', value : 'true', start : 4, end : 14, name: 'attribute' } }, orderedAttributes: [ { type : 'string', value : 'true', start : 4, end : 14, name: 'attribute' } ], children : [ { type : 'text', text : 'some text', start : 15, end : 24 } ], start : 0, end : 15 } ] } ]
59
59
 
60
60
  );
61
61
  expect(parse("<div attribute='value'>some text</div>")).toEqual(
62
62
 
63
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'string', name: 'attribute', value : 'value', start: 4, end: 22 } }, children : [ { type : 'text', text : 'some text' } ], start: 0, end: 23 } ] } ]
63
+ [ { type : 'element', tag : 'p', start : 0, end : 38, children : [ { type : 'element', tag : 'div', start: 0, end: 38, isBlock : false, attributes : { attribute : { type : 'string', name: 'attribute', value : 'value', start: 4, end: 22 } }, orderedAttributes: [ { type: 'string', name: 'attribute', value : 'value', start: 4, end: 22 } ], children : [ { type : 'text', text : 'some text', start : 23, end : 32 } ], start : 0, end : 23 } ] } ]
64
64
 
65
65
  );
66
66
  expect(parse("<div attribute={{TiddlerTitle}}>some text</div>")).toEqual(
67
67
 
68
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'indirect', name: 'attribute', textReference : 'TiddlerTitle', start : 4, end : 31 } }, children : [ { type : 'text', text : 'some text' } ], start : 0, end : 32 } ] } ]
68
+ [ { type : 'element', tag : 'p', start: 0, end: 47, children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'indirect', name: 'attribute', textReference : 'TiddlerTitle', start : 4, end : 31 } }, orderedAttributes: [ { type : 'indirect', name: 'attribute', textReference : 'TiddlerTitle', start : 4, end : 31 } ], children : [ { type : 'text', text : 'some text', start : 32, end : 41 } ], start : 0, end : 32 } ] } ]
69
69
 
70
70
  );
71
71
  expect(parse("<$reveal state='$:/temp/search' type='nomatch' text=''>")).toEqual(
72
72
 
73
- [ { type : 'element', tag : 'p', children : [ { type : 'reveal', tag: '$reveal', start : 0, attributes : { state : { start : 8, name : 'state', type : 'string', value : '$:/temp/search', end : 31 }, type : { start : 31, name : 'type', type : 'string', value : 'nomatch', end : 46 }, text : { start : 46, name : 'text', type : 'string', value : '', end : 54 } }, end : 55, isBlock : false, children : [ ] } ] } ]
73
+ [ { type : 'element', tag : 'p', start: 0, end: 55, children : [ { type : 'reveal', tag: '$reveal', start : 0, attributes : { state : { start : 8, name : 'state', type : 'string', value : '$:/temp/search', end : 31 }, type : { start : 31, name : 'type', type : 'string', value : 'nomatch', end : 46 }, text : { start : 46, name : 'text', type : 'string', value : '', end : 54 } }, orderedAttributes: [ { start : 8, name : 'state', type : 'string', value : '$:/temp/search', end : 31 }, { start : 31, name : 'type', type : 'string', value : 'nomatch', end : 46 }, { start : 46, name : 'text', type : 'string', value : '', end : 54 } ], end : 55, isBlock : false, children : [ ] } ] } ]
74
74
 
75
75
  );
76
76
  expect(parse("<div attribute={{TiddlerTitle!!field}}>some text</div>")).toEqual(
77
77
 
78
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'indirect', name : 'attribute', textReference : 'TiddlerTitle!!field', start : 4, end : 38 } }, children : [ { type : 'text', text : 'some text' } ], start : 0, end : 39 } ] } ]
78
+ [ { type : 'element', tag : 'p', start: 0, end: 54, children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'indirect', name : 'attribute', textReference : 'TiddlerTitle!!field', start : 4, end : 38 } }, orderedAttributes: [ { type : 'indirect', name : 'attribute', textReference : 'TiddlerTitle!!field', start : 4, end : 38 } ], children : [ { type : 'text', text : 'some text', start : 39, end : 48 } ], start : 0, end : 39 } ] } ]
79
79
 
80
80
  );
81
81
  expect(parse("<div attribute={{Tiddler Title!!field}}>some text</div>")).toEqual(
82
82
 
83
- [ { type : 'element', tag : 'p', children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'indirect', name : 'attribute', textReference : 'Tiddler Title!!field', start : 4, end : 39 } }, children : [ { type : 'text', text : 'some text' } ], start : 0, end : 40 } ] } ]
83
+ [ { type : 'element', tag : 'p', start: 0, end: 55, children : [ { type : 'element', tag : 'div', isBlock : false, attributes : { attribute : { type : 'indirect', name : 'attribute', textReference : 'Tiddler Title!!field', start : 4, end : 39 } }, orderedAttributes: [ { type : 'indirect', name : 'attribute', textReference : 'Tiddler Title!!field', start : 4, end : 39 } ], children : [ { type : 'text', text : 'some text', start : 40, end : 49 } ], start : 0, end : 40 } ] } ]
84
84
 
85
85
  );
86
86
  expect(parse("<div attribute={{TiddlerTitle!!field}}>\n\nsome text</div>")).toEqual(
87
87
 
88
- [ { type : 'element', start : 0, attributes : { attribute : { start : 4, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 38 } }, tag : 'div', end : 39, isBlock : true, children : [ { type : 'element', tag : 'p', children : [ { type : 'text', text : 'some text' } ] } ] } ]
88
+ [ { type : 'element', start : 0, attributes : { attribute : { start : 4, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 38 } }, orderedAttributes: [ { start : 4, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 38 } ], tag : 'div', end : 39, isBlock : true, children : [ { type : 'element', tag : 'p', start : 41, end : 50, children : [ { type : 'text', text : 'some text', start : 41, end : 50 } ] } ] } ]
89
89
 
90
90
  );
91
91
  expect(parse("<div><div attribute={{TiddlerTitle!!field}}>\n\nsome text</div></div>")).toEqual(
92
92
 
93
- [ { type : 'element', tag : 'p', children : [ { type : 'element', start : 0, attributes : { }, tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { attribute : { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } }, tag : 'div', end : 44, isBlock : true, children : [ { type : 'element', tag : 'p', children : [ { type : 'text', text : 'some text' } ] } ] } ] } ] } ]
93
+ [ { type : 'element', tag : 'p', start: 0, end: 67, children : [ { type : 'element', start : 0, attributes : { }, orderedAttributes: [ ], tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { attribute : { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } }, orderedAttributes: [ { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } ], tag : 'div', end : 44, isBlock : true, children : [ { type : 'element', tag : 'p', start : 46, end : 55, children : [ { type : 'text', text : 'some text', start : 46, end : 55 } ] } ] } ] } ] } ]
94
94
 
95
95
  );
96
96
  expect(parse("<div><div attribute={{TiddlerTitle!!field}}>\n\n!some heading</div></div>")).toEqual(
97
97
 
98
- [ { type : 'element', tag : 'p', children : [ { type : 'element', start : 0, attributes : { }, tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { attribute : { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } }, tag : 'div', end : 44, isBlock : true, children : [ { type : 'element', tag : 'h1', attributes : { class : { type : 'string', value : '' } }, children : [ { type : 'text', text : 'some heading</div></div>' } ] } ] } ] } ] } ]
98
+ [ { type : 'element', tag : 'p', start: 0, end: 71, children : [ { type : 'element', start : 0, attributes : { }, orderedAttributes: [ ], tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { attribute : { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } }, orderedAttributes: [ { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } ], tag : 'div', end : 44, isBlock : true, children : [ { type : 'element', tag : 'h1', attributes : { class : { type : 'string', value : '' } }, children : [ { type : 'text', text : 'some heading</div></div>', start : 47, end : 71 } ] } ] } ] } ] } ]
99
99
 
100
100
  );
101
101
  expect(parse("<div><div attribute={{TiddlerTitle!!field}}>\n!some heading</div></div>")).toEqual(
102
102
 
103
- [ { type : 'element', tag : 'p', children : [ { type : 'element', start : 0, attributes : { }, tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { attribute : { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } }, tag : 'div', end : 44, isBlock : false, children : [ { type : 'text', text : '\n!some heading' } ] } ] } ] } ]
103
+ [ { type : 'element', tag : 'p', start: 0, end: 70, children : [ { type : 'element', start : 0, attributes : { }, orderedAttributes: [ ], tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { attribute : { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } }, orderedAttributes: [ { start : 9, name : 'attribute', type : 'indirect', textReference : 'TiddlerTitle!!field', end : 43 } ], tag : 'div', end : 44, isBlock : false, children : [ { type : 'text', text : '\n!some heading', start : 44, end : 58 } ] } ] } ] } ]
104
104
 
105
105
  );
106
106
  // Regression test for issue (#3306)
107
107
  expect(parse("<div><span><span>\n\nSome text</span></span></div>")).toEqual(
108
108
 
109
- [ { type : 'element', tag : 'p', children : [ { type : 'element', start : 0, attributes : { }, tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { }, tag : 'span', end : 11, isBlock : false, children : [ { type : 'element', start : 11, attributes : { }, tag : 'span', end : 17, isBlock : true, children : [ { type : 'element', tag : 'p', children : [ { type : 'text', text : 'Some text' } ] } ] } ] } ] } ] } ]
109
+ [ { type : 'element', tag : 'p', start: 0, end: 48, children : [ { type : 'element', start : 0, attributes : { }, orderedAttributes: [ ], tag : 'div', end : 5, isBlock : false, children : [ { type : 'element', start : 5, attributes : { }, orderedAttributes: [ ], tag : 'span', end : 11, isBlock : false, children : [ { type : 'element', start : 11, attributes : { }, orderedAttributes: [ ], tag : 'span', end : 17, isBlock : true, children : [ { type : 'element', tag : 'p', start : 19, end : 28, children : [ { type : 'text', text : 'Some text', start : 19, end : 28 } ] } ] } ] } ] } ] } ]
110
110
 
111
111
  );
112
112
  });
@@ -119,7 +119,7 @@ describe("WikiText parser tests", function() {
119
119
  );
120
120
  });
121
121
 
122
- it("should parse comment in pragma area. Comment will be INVISIBLE", function() {
122
+ it("should parse comment in pragma area. Comment will be invisible", function() {
123
123
  expect(parse("<!-- comment in pragma area -->\n\\define aMacro()\nnothing\n\\end\n")).toEqual(
124
124
 
125
125
  [ { type : 'set', attributes : { name : { type : 'string', value : 'aMacro' }, value : { type : 'string', value : 'nothing' } }, children : [ ], params : [ ], isMacroDefinition : true } ]
@@ -127,41 +127,54 @@ describe("WikiText parser tests", function() {
127
127
  );
128
128
  });
129
129
 
130
+ it("should block mode filtered transclusions", function() {
131
+ expect(parse("{{{ filter }}}")).toEqual(
132
+
133
+ [ { type: 'list', attributes: { filter: { type: 'string', value: ' filter ' } }, isBlock: true } ]
134
+
135
+ );
136
+ expect(parse("{{{ fil\nter }}}")).toEqual(
137
+
138
+ [ { type: 'list', attributes: { filter: { type: 'string', value: ' fil\nter ' } }, isBlock: true } ]
139
+
140
+ );
141
+ });
142
+
130
143
  it("should parse inline macro calls", function() {
131
144
  expect(parse("<<john>><<paul>><<george>><<ringo>>")).toEqual(
132
145
 
133
- [ { type: 'element', tag: 'p', children: [ { type: 'macrocall', start: 0, params: [ ], name: 'john', end: 8 }, { type: 'macrocall', start: 8, params: [ ], name: 'paul', end: 16 }, { type: 'macrocall', start: 16, params: [ ], name: 'george', end: 26 }, { type: 'macrocall', start: 26, params: [ ], name: 'ringo', end: 35 } ] } ]
146
+ [ { type: 'element', tag: 'p', start: 0, end: 35, children: [ { type: 'macrocall', start: 0, params: [ ], name: 'john', end: 8 }, { type: 'macrocall', start: 8, params: [ ], name: 'paul', end: 16 }, { type: 'macrocall', start: 16, params: [ ], name: 'george', end: 26 }, { type: 'macrocall', start: 26, params: [ ], name: 'ringo', end: 35 } ] } ]
134
147
 
135
148
  );
136
149
  expect(parse("text <<john one:val1 two: 'val \"2\"' three: \"val '3'\" four: \"\"\"val 4\"5'\"\"\" five: [[val 5]] >>")).toEqual(
137
150
 
138
- [{ type: 'element', tag: 'p', children: [ { type: 'text', text: 'text ' }, { type: 'macrocall', name: 'john', start: 5, params: [ { type: 'macro-parameter', start: 11, value: 'val1', name: 'one', end: 20 }, { type: 'macro-parameter', start: 20, value: 'val "2"', name: 'two', end: 35 }, { type: 'macro-parameter', start: 35, value: 'val \'3\'', name: 'three', end: 52 }, { type: 'macro-parameter', start: 52, value: 'val 4"5\'', name: 'four', end: 73 }, { type: 'macro-parameter', start: 73, value: 'val 5', name: 'five', end: 89 } ], end: 92 } ] } ]
151
+ [{ type: 'element', tag: 'p', start: 0, end: 92, children: [ { type: 'text', text: 'text ', start: 0, end: 5 }, { type: 'macrocall', name: 'john', start: 5, params: [ { type: 'macro-parameter', start: 11, value: 'val1', name: 'one', end: 20 }, { type: 'macro-parameter', start: 20, value: 'val "2"', name: 'two', end: 35 }, { type: 'macro-parameter', start: 35, value: 'val \'3\'', name: 'three', end: 52 }, { type: 'macro-parameter', start: 52, value: 'val 4"5\'', name: 'four', end: 73 }, { type: 'macro-parameter', start: 73, value: 'val 5', name: 'five', end: 89 } ], end: 92 } ] } ]
139
152
 
140
153
  );
141
154
  expect(parse("ignored << carrots <<john>>")).toEqual(
142
155
 
143
- [ { type: 'element', tag: 'p', children: [ { type: 'text', text: 'ignored << carrots ' }, { type: 'macrocall', name: 'john', start: 19, params: [ ], end: 27 } ] } ]
156
+ [ { type: 'element', tag: 'p', start: 0, end: 27, children: [ { type: 'text', text: 'ignored << carrots ', start: 0, end: 19 }, { type: 'macrocall', name: 'john', start: 19, params: [ ], end: 27 } ] } ]
144
157
 
145
158
  );
146
159
  expect(parse("text <<<john>>")).toEqual(
147
160
 
148
- [ { type: 'element', tag: 'p', children: [ { type: 'text', text: 'text ' }, { type: 'macrocall', name: '<john', start: 5, params: [ ], end: 14 } ] } ]
161
+ [ { type: 'element', tag: 'p', start: 0, end: 14, children: [ { type: 'text', text: 'text ', start: 0, end: 5 }, { type: 'macrocall', name: '<john', start: 5, params: [ ], end: 14 } ] } ]
149
162
 
150
163
  );
151
164
  expect(parse("before\n<<john>>")).toEqual(
152
165
 
153
- [ { type: 'element', tag: 'p', children: [ { type: 'text', text: 'before\n' }, { type: 'macrocall', start: 7, params: [ ], name: 'john', end: 15 } ] } ]
166
+ [ { type: 'element', tag: 'p', start: 0, end: 15, children: [ { type: 'text', text: 'before\n', start: 0, end: 7 }, { type: 'macrocall', start: 7, params: [ ], name: 'john', end: 15 } ] } ]
154
167
 
155
168
  );
156
169
  // A single space will cause it to be inline
157
170
  expect(parse("<<john>> ")).toEqual(
158
171
 
159
- [ { type: 'element', tag: 'p', children: [ { type: 'macrocall', start: 0, params: [ ], name: 'john', end: 8 }, { type: 'text', text: ' ' } ] } ]
172
+ [ { type: 'element', tag: 'p', start: 0, end: 9, children: [ { type: 'macrocall', start: 0, params: [ ], name: 'john', end: 8 }, { type: 'text', text: ' ', start: 8, end: 9 } ] } ]
160
173
 
161
174
  );
162
175
  expect(parse("text <<outie one:'my <<innie>>' >>")).toEqual(
163
176
 
164
- [ { type: 'element', tag: 'p', children: [ { type: 'text', text: 'text ' }, { type: 'macrocall', start: 5, params: [ { type: 'macro-parameter', start: 12, value: 'my <<innie>>', name: 'one', end: 31 } ], name: 'outie', end: 34 } ] } ]
177
+ [ { type: 'element', tag: 'p', start: 0, end: 34, children: [ { type: 'text', text: 'text ', start: 0, end: 5 }, { type: 'macrocall', start: 5, params: [ { type: 'macro-parameter', start: 12, value: 'my <<innie>>', name: 'one', end: 31 } ], name: 'outie', end: 34 } ] } ]
165
178
 
166
179
  );
167
180
 
@@ -180,17 +193,17 @@ describe("WikiText parser tests", function() {
180
193
  );
181
194
  expect(parse("<< carrots\n\n<<john>>")).toEqual(
182
195
 
183
- [ { type: 'element', tag: 'p', children: [ { type: 'text', text: '<< carrots' } ] }, { type: 'macrocall', start: 12, params: [ ], name: 'john', end: 20, isBlock: true } ]
196
+ [ { type: 'element', tag: 'p', start : 0, end : 10, children: [ { type: 'text', text: '<< carrots', start : 0, end : 10 } ] }, { type: 'macrocall', start: 12, params: [ ], name: 'john', end: 20, isBlock: true } ]
184
197
 
185
198
  );
186
199
  expect(parse("before\n\n<<john>>")).toEqual(
187
200
 
188
- [ { type: 'element', tag: 'p', children: [ { type: 'text', text: 'before' } ] }, { type: 'macrocall', start: 8, name: 'john', params: [ ], end: 16, isBlock: true } ]
201
+ [ { type: 'element', tag: 'p', start : 0, end : 6, children: [ { type: 'text', text: 'before', start : 0, end : 6 } ] }, { type: 'macrocall', start: 8, name: 'john', params: [ ], end: 16, isBlock: true } ]
189
202
 
190
203
  );
191
204
  expect(parse("<<john>>\nafter")).toEqual(
192
205
 
193
- [ { type: 'macrocall', start: 0, name: 'john', params: [ ], end: 8, isBlock: true }, { type: 'element', tag: 'p', children: [ { type: 'text', text: 'after' } ] } ]
206
+ [ { type: 'macrocall', start: 0, name: 'john', params: [ ], end: 8, isBlock: true }, { type: 'element', tag: 'p', start: 9, end: 14, children: [ { type: 'text', text: 'after', start: 9, end: 14 } ] } ]
194
207
 
195
208
  );
196
209
  expect(parse("<<multiline arg:\"\"\"\n\nwikitext\n\"\"\" >>")).toEqual(
@@ -218,7 +231,7 @@ describe("WikiText parser tests", function() {
218
231
  );
219
232
  expect(parse("<<john param>>>")).toEqual(
220
233
 
221
- [ { type: 'element', tag: 'p', children: [ { type: 'macrocall', start: 0, params: [ { type: 'macro-parameter', start: 6, value: 'param', end: 12 } ], name: 'john', end: 14 }, { type: 'text', text: '>' } ] } ]
234
+ [ { type: 'element', tag: 'p', start: 0, end: 15, children: [ { type: 'macrocall', start: 0, params: [ { type: 'macro-parameter', start: 6, value: 'param', end: 12 } ], name: 'john', end: 14 }, { type: 'text', text: '>', start: 14, end: 15 } ] } ]
222
235
 
223
236
  );
224
237
  // equals signs should be allowed
@@ -233,7 +246,7 @@ describe("WikiText parser tests", function() {
233
246
  it("should parse horizontal rules", function() {
234
247
  expect(parse("---Not a rule\n\n----\n\nBetween\n\n---")).toEqual(
235
248
 
236
- [ { type : 'element', tag : 'p', children : [ { type : 'entity', entity : '&mdash;' }, { type : 'text', text : 'Not a rule' } ] }, { type : 'element', tag : 'hr' }, { type : 'element', tag : 'p', children : [ { type : 'text', text : 'Between' } ] }, { type : 'element', tag : 'hr' } ]
249
+ [ { type : 'element', tag : 'p', start : 0, end : 13, children : [ { type : 'entity', entity : '&mdash;' }, { type : 'text', text : 'Not a rule', start : 3, end : 13 } ] }, { type : 'element', tag : 'hr' }, { type : 'element', tag : 'p', start : 21, end : 28, children : [ { type : 'text', text : 'Between', start : 21, end : 28 } ] }, { type : 'element', tag : 'hr' } ]
237
250
 
238
251
  );
239
252
 
@@ -242,7 +255,7 @@ describe("WikiText parser tests", function() {
242
255
  it("should parse hard linebreak areas", function() {
243
256
  expect(parse("\"\"\"Something\nin the\nway she moves\n\"\"\"\n\n")).toEqual(
244
257
 
245
- [ { type : 'element', tag : 'p', children : [ { type : 'text', text : 'Something' }, { type : 'element', tag : 'br' }, { type : 'text', text : 'in the' }, { type : 'element', tag : 'br' }, { type : 'text', text : 'way she moves' }, { type : 'element', tag : 'br' } ] } ]
258
+ [ { type : 'element', tag : 'p', children : [ { type : 'text', text : 'Something', start : 3, end : 12 }, { type : 'element', tag : 'br' }, { type : 'text', text : 'in the', start : 13, end : 19 }, { type : 'element', tag : 'br' }, { type : 'text', text : 'way she moves', start : 20, end : 33 }, { type : 'element', tag : 'br' } ], start : 0, end : 37 } ]
246
259
 
247
260
  );
248
261