actualizar copinchapedia

This commit is contained in:
M0 committed 2023-09-29 14:06:55 -04:00
1 parent 065df943db
commit e70ca6e739
16 files changed
+41998 -67

No files matched your search

File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
+9 -27
View File
@@ -199,22 +199,10 @@ Error message and password prompt
<li>$:/plugins/felixhayashi/topstoryview</li>
<li>$:/plugins/flibbles/relink</li>
<li>$:/plugins/flibbles/relink-fieldnames</li>
<li>$:/plugins/flibbles/relink-markdown</li>
<li>$:/plugins/flibbles/relink-titles</li>
<li>$:/plugins/sq/streams</li>
<li>$:/plugins/sq/streams-as-editor</li>
<li>$:/plugins/sq/streams-search</li>
<li>$:/plugins/tiddlywiki/filesystem</li>
<li>$:/plugins/tiddlywiki/menubar</li>
<li>$:/plugins/tiddlywiki/menubar/items/about</li>
@@ -441,14 +429,14 @@ Error message and password prompt
{"created":"20230928083723989","text":"#f5f2e9","title":"$:/config/DefaultColourMappings/menubar-background","modified":"20230928083725645"},
{"created":"20230928083910399","text":"menubar-background","title":"$:/config/DefaultColourMappings/menubar-foreground","modified":"20230928083912310"},
{"created":"20230929115731062","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/contents","modified":"20230929115746121"},
{"created":"20230928092309468","text":"show","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger","modified":"20230929115855111"},
{"created":"20230928092236057","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols","modified":"20230929115922244"},
{"created":"20230928092309468","text":"show","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/hamburger","modified":"20230928152409425"},
{"created":"20230928092236057","text":"show","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols","modified":"20230929120259822"},
{"created":"20230928182228358","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/search","modified":"20230929105601850"},
{"created":"20230929093532645","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/search 1","modified":"20230929105610913"},
{"created":"20230928092218000","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server","modified":"20230929105628231"},
{"created":"20230928161436942","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar","modified":"20230929115849575"},
{"created":"20230928092258081","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/topleftbar","modified":"20230929115938035"},
{"created":"20230928092201524","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar","modified":"20230929115947765"},
{"created":"20230928161436942","text":"show","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar","modified":"20230929115700325"},
{"created":"20230928092258081","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/topleftbar","modified":"20230929120142364"},
{"created":"20230928092201524","text":"hide","title":"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/toprightbar","modified":"20230929120301512"},
{"created":"20230928090647497","title":"$:/config/plugins/menubar/TableOfContents/Tag","text":"contenidos","modified":"20230928090647497"},
{"created":"20230927223047457","text":"yes","title":"$:/config/RelinkOnRename","modified":"20230927223047457"},
{"created":"20230928074541041","text":"hide","title":"$:/config/ViewToolbarButtons/Visibility/$:/core/ui/Buttons/edit","modified":"20230928074541041"},
@@ -467,14 +455,8 @@ Error message and password prompt
{"text":"{\n \"tiddlers\": {\n \"$:/plugins/danielo515/2click2edit/ClickListener.js\": {\n \"text\": \"/*\\\\\\ntitle: $:/plugins/danielo515/2click2edit/ClickListener.js\\ntype: application/javascript\\nmodule-type: widget\\n\\nThis widgets adds an double click event listener to its parent\\n\\n\\\\*/\\n\\n(function(){\\n\\n/*jslint node: true, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar Widget = require(\\\"$:/core/modules/widgets/widget.js\\\").widget;\\n\\nvar ClickListener = function(parseTreeNode,options) {\\n\\tthis.initialise(parseTreeNode,options);\\n};\\n\\n/*\\nInherit from the base widget class\\n*/\\nClickListener.prototype = new Widget();\\n\\n/*\\nRender this widget into the DOM\\n*/\\nClickListener.prototype.render = function(parent,nextSibling) {\\n\\tthis.parentDomNode = parent;\\n\\tthis.execute();\\n\\tvar self = this;\\n /*Since the event listener have been added to the parent, the \\\"this\\\" property is pointing to the\\n wrong object, we should call our edit function with our widget object set as the this property.*/\\n parent.addEventListener(\\\"dblclick\\\",function(event){self.editTiddler.call(self,event)});\\n};\\n\\nClickListener.prototype.editTiddler = function(event) {\\n this.dispatchEvent({type: \\\"tm-edit-tiddler\\\", param: this.getVariable(\\\"currentTiddler\\\")}); \\n};\\n\\n/*\\nCompute the internal state of the widget\\n*/\\nClickListener.prototype.execute = function() {\\n};\\n\\n/*\\nSelectively refreshes the widget if needed. Returns true if the widget or any of its children needed re-rendering\\n*/\\nClickListener.prototype.refresh = function(changedTiddlers) {\\n\\treturn false;\\n};\\n\\nexports.click = ClickListener;\\n\\n})();\",\n \"title\": \"$:/plugins/danielo515/2click2edit/ClickListener.js\",\n \"type\": \"application/javascript\",\n \"module-type\": \"widget\"\n },\n \"$:/plugins/danielo515/2click2edit/readme\": {\n \"title\": \"$:/plugins/danielo515/2click2edit/readme\",\n \"text\": \"This plugin adds the ability to edit tiddlers by double clicking on its body.\\nJust try to edit any tiddler shown here by double clicking on it.\\n\\nThis can be considered a fast solution. It is only to fill the gap until TiddlyWiki adds support \\nfor it officially.\\n\"\n },\n \"$:/plugins/danielo515/2click2edit/ui/ViewTemplate\": {\n \"tags\": \"$:/tags/ViewTemplate\",\n \"title\": \"$:/plugins/danielo515/2click2edit/ui/ViewTemplate\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"text\": \"\u003C$click>\"\n }\n }\n}","bag":"default","revision":"0","version":"0.1","type":"application/json","title":"$:/plugins/danielo515/2click2edit","source":"https://github.com/danielo515/TW5-2click2edit","plugin-type":"plugin","list":"readme","description":"double click to edit tiddlers","dependents":"","core-version":">=5.1.0","author":"Danielo Rodriguez"},
{"text":"{\n \"tiddlers\": {\n \"$:/plugins/felixhayashi/respawn/respawn.js\": {\n \"title\": \"$:/plugins/felixhayashi/respawn/respawn.js\",\n \"text\": \"/*\\\\\\n\\ntitle: $:/plugins/felixhayashi/respawn/respawn.js\\ntype: application/javascript\\nmodule-type: startup\\n\\n@preserve\\n\\n\\\\*/\\n\\n(function(){\\n \\n /*jslint node: true, browser: true */\\n /*global $tw: false */\\n \\\"use strict\\\";\\n \\n var configTRef = \\\"$:/plugins/felixhayashi/respawn/config\\\";\\n \\n var changeListener = function(changedTiddlers) {\\n \\n if(!changedTiddlers[\\\"$:/StoryList\\\"]) return;\\n \\n var tObj = $tw.wiki.getTiddler(\\\"$:/StoryList\\\");\\n if(tObj && !tObj.fields[\\\"list\\\"].length) {\\n \\n var confTObj = $tw.wiki.getTiddler(configTRef);\\n var config = confTObj ? confTObj.fields : {};\\n \\n window.setTimeout(function() {\\n $tw.rootWidget.dispatchEvent({\\n type: \\\"tm-home\\\"\\n });\\n }, parseInt(config.delay) || 500);\\n }\\n \\n };\\n \\n exports.name = \\\"respawn\\\";\\n exports.platforms = [\\\"browser\\\"];\\n exports.after = [\\\"story\\\"];\\n exports.synchronous = true;\\n \\n exports.startup = function() {\\n \\n $tw.wiki.addEventListener(\\\"change\\\", changeListener);\\n \\n };\\n\\n})();\\n\",\n \"type\": \"application/javascript\",\n \"module-type\": \"startup\"\n },\n \"$:/plugins/felixhayashi/respawn/Configuration\": {\n \"title\": \"$:/plugins/felixhayashi/respawn/Configuration\",\n \"text\": \"\u003C!-- The config output is not written to this tiddler! -->\\n\\nPlease see the [[GitHub page|https://github.com/felixhayashi/TW5-Respawn]] for more information on the options.\\n\\nYou may have to save and reload the wiki to activate changes.\\n\\n\u003Ctable>\\n \u003Ctr>\\n \u003Cth align=\\\"left\\\">Delay (seconds):\u003C/th>\\n \u003Ctd>\\n \u003C$edit-text\\n tiddler=\\\"$:/plugins/felixhayashi/respawn/config\\\"\\n field=\\\"delay\\\"\\n tag=\\\"input\\\"\\n default=\\\"500\\\" />\\n \u003C/td>\\n \u003C/tr>\\n\u003C/table>\"\n },\n \"$:/plugins/felixhayashi/respawn/License\": {\n \"title\": \"$:/plugins/felixhayashi/respawn/License\",\n \"text\": \"This code is released under the BSD license. For the exact terms visit:\\n\\nhttps://github.com/felixhayashi/TW5-Respawn/blob/master/LICENSE\"\n },\n \"$:/plugins/felixhayashi/respawn/Readme\": {\n \"title\": \"$:/plugins/felixhayashi/respawn/Readme\",\n \"text\": \"Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-Respawn]] for more information.\"\n }\n }\n}","version":"0.0.3","type":"application/json","title":"$:/plugins/felixhayashi/respawn","source":"https://github.com/felixhayashi/TW5-respawn","released":"","plugin-type":"plugin","list":"Configuration License Readme","description":"Respawn – Open default tiddlers when river is empty","dependents":"","core-version":">=5.1.5","author":"Felix Küppers"},
{"text":"{\n \"tiddlers\": {\n \"$:/plugins/felixhayashi/topstoryview/config.js\": {\n \"text\": \"/*\\\\\\n\\ntitle: $:/plugins/felixhayashi/topstoryview/config.js\\ntype: application/javascript\\nmodule-type: library\\n\\n@preserve\\n\\n\\\\*/\\n(function(){\\\"use strict\\\";exports.config={classNames:{storyRiver:\\\"tc-story-river\\\",backDrop:\\\"story-backdrop\\\",tiddlerFrame:\\\"tc-tiddler-frame\\\",tiddlerTitle:\\\"tc-title\\\"},references:{userConfig:\\\"$:/config/topStoryView\\\",focussedTiddlerStore:\\\"$:/temp/focussedTiddler\\\",refreshTrigger:\\\"$:/temp/focussedTiddler/refresh\\\"},checkbackTime:$tw.utils.getAnimationDuration()}})();\",\n \"title\": \"$:/plugins/felixhayashi/topstoryview/config.js\",\n \"type\": \"application/javascript\",\n \"module-type\": \"library\"\n },\n \"$:/plugins/felixhayashi/topstoryview/layout\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/layout\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"tags\": [\n \"$:/tags/Stylesheet\"\n ],\n \"text\": \"html .tc-story-river:after {\\n content: \\\"\\\";\\n display: block; }\\n\"\n },\n \"$:/plugins/felixhayashi/topstoryview/Configuration\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/Configuration\",\n \"text\": \"Please see the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information on the options.\\n\\nSave and reload the wiki to activate changes.\\n\\n\u003Ctable>\\n \u003Ctr>\\n \u003Cth align=\\\"left\\\">Scroll offset:\u003C/th>\\n \u003Ctd>\u003C$edit-text tiddler=\\\"$:/config/topStoryView\\\" field=\\\"scroll-offset\\\" tag=\\\"input\\\" default=\\\"150px\\\" />\u003C/td>\\n \u003C/tr>\\n\u003C/table>\"\n },\n \"$:/plugins/felixhayashi/topstoryview/License\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/License\",\n \"text\": \"This code is released under the BSD license. For the exact terms visit:\\n\\nhttps://github.com/felixhayashi/TW5-TopStoryView/blob/master/LICENSE\"\n },\n \"$:/plugins/felixhayashi/topstoryview/Readme\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/Readme\",\n \"text\": \"Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information.\"\n },\n \"$:/plugins/felixhayashi/topstoryview/top.js\": {\n \"text\": \"/*\\\\\\ntitle: $:/plugins/felixhayashi/topstoryview/top.js\\ntype: application/javascript\\nmodule-type: storyview\\n\\nViews the story as a linear sequence\\n\\n@preserve\\n\\n\\\\*/\\n(function(){\\\"use strict\\\";var t=require(\\\"$:/plugins/felixhayashi/topstoryview/config.js\\\").config;var e=\\\"cubic-bezier(0.645, 0.045, 0.355, 1)\\\";var i=function(e){this.listWidget=e;this.pageScroller=new $tw.utils.PageScroller;this.pageScroller.scrollIntoView=this.scrollIntoView;this.pageScroller.storyRiverDomNode=document.getElementsByClassName(t.classNames.storyRiver)[0];var i=$tw.wiki.getTiddler(t.references.userConfig);var o=i?i.fields:{};$tw.hooks.addHook(\\\"th-opening-default-tiddlers-list\\\",this.hookOpenDefaultTiddlers);var r=parseInt(o[\\\"scroll-offset\\\"]);this.pageScroller.scrollOffset=isNaN(r)?71:r;this.recalculateBottomSpace()};i.prototype.refreshStart=function(t,e){};i.prototype.refreshEnd=function(t,e){};i.prototype.hookOpenDefaultTiddlers=function(t){return t};i.prototype.navigateTo=function(t){var e=this.listWidget.findListItem(0,t.title);if(e===undefined)return;var i=this.listWidget.children[e];var o=i.findFirstDomNode();if(!(o instanceof Element))return;this.pageScroller.scrollIntoView(o)};i.prototype.insert=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element))return;this.startInsertAnimation(e,function(){this.recalculateBottomSpace()}.bind(this))};i.prototype.remove=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element)){t.removeChildDomNodes();return}var i=this.getLastFrame()===e;this.startRemoveAnimation(t,e,function(){t.removeChildDomNodes();this.recalculateBottomSpace();if(i){this.pageScroller.scrollIntoView(this.getLastFrame())}}.bind(this))};i.prototype.getLastFrame=function(){var t=this.listWidget.children[this.listWidget.children.length-1];return t?t.findFirstDomNode():null};i.prototype.recalculateBottomSpace=function(){var t=this.pageScroller.storyRiverDomNode;if(this.getLastFrame()){var e=this.getLastFrame().getBoundingClientRect();var i=window.innerHeight;if(e.height\u003Ci){t.style[\\\"paddingBottom\\\"]=i-e.height+\\\"px\\\";return}}t.style[\\\"paddingBottom\\\"]=\\\"\\\"};i.prototype.scrollIntoView=function(t){if(this.preventNextScrollAttempt){this.preventNextScrollAttempt=false}if(!t)return;var e=$tw.utils.getAnimationDuration();this.cancelScroll();this.startTime=Date.now();var i=$tw.utils.getScrollPosition();var o=t.getBoLine truncated
{"name":"Relink","title":"$:/plugins/flibbles/relink","description":"Flexibility when relinking renamed tiddlers","author":"Flibbles","version":"2.3.5","core-version":">=5.1.22","source":"https://github.com/flibbles/tw5-relink","demo":"http://flibbles.github.io/tw5-relink/","list":"readme configuration license","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/flibbles/relink/js/bulkops.js\":{\"text\":\"/*\\\\\\nmodule-type: startup\\n\\nReplaces the relinkTiddler defined in $:/core/modules/wiki-bulkops.js\\n\\nThis is a startup instead of a wikimethods module-type because it's the only\\nway to ensure this runs after the old relinkTiddler method is applied.\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: false, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\\nvar utils = require(\\\"$:/plugins/flibbles/relink/js/utils.js\\\");\\n\\nexports.name = \\\"redefine-relinkTiddler\\\";\\nexports.synchronous = true;\\n// load-modules is when wikimethods are applied in\\n// ``$:/core/modules/startup/load-modules.js``\\nexports.after = ['load-modules'];\\n// We come before commands because they may do renaming, or jasmine testing\\nexports.before = ['commands'];\\n\\nexports.startup = function() {\\n\\t$tw.Wiki.prototype.relinkTiddler = relinkTiddler;\\n};\\n\\n/** Walks through all relinkable tiddlers and relinks them.\\n * This replaces the existing function in core Tiddlywiki.\\n */\\nfunction relinkTiddler(fromTitle, toTitle, options) {\\n\\toptions = options || {};\\n\\tvar failures = [];\\n\\tvar indexer = utils.getIndexer(this);\\n\\tvar records = indexer.relinkLookup(fromTitle, toTitle, options);\\n\\tfor (var title in records) {\\n\\t\\tvar entries = records[title],\\n\\t\\t\\tchanges = Object.create(null),\\n\\t\\t\\tupdate = false,\\n\\t\\t\\tfails = false;\\n\\t\\tfor (var field in entries) {\\n\\t\\t\\tvar entry = entries[field];\\n\\t\\t\\tfails = fails || entry.impossible;\\n\\t\\t\\tif (entry.output !== undefined) {\\n\\t\\t\\t\\tchanges[field] = entry.output;\\n\\t\\t\\t\\tupdate = true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\tif (fails) {\\n\\t\\t\\tfailures.push(title);\\n\\t\\t}\\n\\t\\t// If any fields changed, update tiddler\\n\\t\\tif (update) {\\n\\t\\t\\tconsole.log(\\\"Renaming '\\\"+fromTitle+\\\"' to '\\\"+toTitle+\\\"' in '\\\" + title + \\\"'\\\");\\n\\n\\t\\t\\tvar tiddler = this.getTiddler(title);\\n\\t\\t\\tvar modifyField = utils.touchModifyField(this) ? this.getModificationFields() : undefined;\\n\\t\\t\\tvar newTiddler = new $tw.Tiddler(tiddler,changes,modifyField)\\n\\t\\t\\tnewTiddler = $tw.hooks.invokeHook(\\\"th-relinking-tiddler\\\",newTiddler,tiddler);\\n\\t\\t\\tthis.addTiddler(newTiddler);\\n\\t\\t\\t// If the title changed, we need to perform a nested rename\\n\\t\\t\\tif (newTiddler.fields.title !== title) {\\n\\t\\t\\t\\tthis.deleteTiddler(title);\\n\\t\\t\\t\\tthis.relinkTiddler(title, newTiddler.fields.title,options);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t};\\n\\tif (failures.length > 0) {\\n\\t\\tvar options = $tw.utils.extend(\\n\\t\\t\\t{ variables: {to: toTitle, from: fromTitle},\\n\\t\\t\\t wiki: this},\\n\\t\\t\\toptions );\\n\\t\\tlanguage.reportFailures(failures, options);\\n\\t}\\n};\\n\\n})();\\n\",\"module-type\":\"startup\",\"title\":\"$:/plugins/flibbles/relink/js/bulkops.js\",\"type\":\"application/javascript\"},\"$:/plugins/flibbles/relink/js/indexer.js\":{\"text\":\"/*\\\\\\nmodule-type: indexer\\n\\nIndexes results from tiddler reference reports so we don't have to call them\\nso much.\\n\\n\\\\*/\\n\\n\\\"use strict\\\";\\n\\nvar utils = require(\\\"./utils.js\\\");\\nvar TiddlerContext = utils.getContext('tiddler');\\n\\nfunction Indexer(wiki) {\\n\\tthis.wiki = wiki;\\n};\\n\\nIndexer.prototype.init = function() {\\n\\tthis.rebuild();\\n};\\n\\nIndexer.prototype.rebuild = function() {\\n\\tthis.index = null;\\n\\tthis.backIndex = null;\\n\\tthis.contexts = Object.create(null);\\n\\tthis.changedTiddlers = undefined;\\n\\tthis.lastRelinks = Object.create(null);\\n};\\n\\nIndexer.prototype.update = function(updateDescriptor) {\\n\\tif (!this.index) {\\n\\t\\treturn;\\n\\t}\\n\\tvar title;\\n\\tif (!this.changedTiddlers) {\\n\\t\\tthis.changedTiddlers = Object.create(null);\\n\\t}\\n\\tif (updateDescriptor.old.exists) {\\n\\t\\ttitle = updateDescriptor.old.tiddler.fields.title;\\n\\t\\tthis.changedTiddlers[title] = {deleted: true};\\n\\t\\tthis._purge(title);\\n\\t}\\n\\tif (updateDescriptor['new'].exists) {\\n\\t\\t// If its the same tiddler as old, this overrides the 'deleted' entry\\n\\t\\ttitle = updateDescriptor['new'].tiddler.fields.title;\\n\\t\\tthis.changedTiddlers[title] = {modified: true};\\n\\t}\\n};\\n\\nIndexer.prototype.lookup = function(title) {\\n\\tthis._upkeep();\\n\\treturn this.index[title];\\n};\\n\\nIndexer.prototype.reverseLookup = function(title) {\\n\\tthis._upkeep();\\n\\treturn this.backIndex[title] || Line truncated
{"name":"Relink Field Names","title":"$:/plugins/flibbles/relink-fieldnames","description":"Renames field names with titles matching Relinked tiddlers","author":"Flibbles","version":"2.3.5","core-version":">=5.1.22","parent-plugin":"$:/plugins/flibbles/relink","source":"https://github.com/flibbles/tw5-relink","demo":"http://flibbles.github.io/tw5-relink/","list":"readme reference","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/config/flibbles/relink/attributes/$action-deletefield/$field\":{\"title\":\"$:/config/flibbles/relink/attributes/$action-deletefield/$field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$action-listops/$field\":{\"title\":\"$:/config/flibbles/relink/attributes/$action-listops/$field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$action-setfield/$field\":{\"title\":\"$:/config/flibbles/relink/attributes/$action-setfield/$field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$button/setField\":{\"title\":\"$:/config/flibbles/relink/attributes/$button/setField\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$checkbox/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$checkbox/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$edit-text/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$edit-text/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$edit/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$edit/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$fields/exclude\":{\"title\":\"$:/config/flibbles/relink/attributes/$fields/exclude\",\"text\":\"fieldnamelist\"},\"$:/config/flibbles/relink/attributes/$fields/include\":{\"title\":\"$:/config/flibbles/relink/attributes/$fields/include\",\"text\":\"fieldnamelist\"},\"$:/config/flibbles/relink/attributes/$jsontiddler/exclude\":{\"title\":\"$:/config/flibbles/relink/attributes/$jsontiddler/exclude\",\"text\":\"fieldnamelist\"},\"$:/config/flibbles/relink/attributes/$radio/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$radio/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$range/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$range/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$reveal/stateField\":{\"title\":\"$:/config/flibbles/relink/attributes/$reveal/stateField\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$select/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$select/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$setvariable/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$setvariable/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$set/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$set/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$transclude/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$transclude/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$view/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$view/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/fieldnames/blacklist\":{\"title\":\"$:/config/flibbles/relink/fieldnames/blacklist\",\"filter\":\"[all[shadows+tiddlers]removeprefix[$:/language/Docs/Fields/]]\",\"text\":\"This tiddler specifies what fields //Relink-fieldname// should refuse to change. Edit its `filter` field if you'd like to change that list.\\n\"},\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldname.js\":{\"title\":\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldname.js\",\"text\":\"/*\\\\\\ntitle: $:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldname.js\\nmodule-type: relinkfieldtype\\ntype: application/javascript\\n\\nThis field type behaves exactly like the \\\"title\\\" field type, except that\\nit ignores any titles that appear on the field name blacklist.\\n\\n\\\\*/\\n\\nexports.name = 'fieldname';\\n\\nvar utils = require(\\\"../utils.js\\\");\\n\\nexports.report = function(value, callback, options) {\\n\\tif (!utils.isReserved(value, options)) {\\n\\t\\tcallback(value);\\n\\t}\\n};\\n\\nexports.relink = function(value, fromTitle, toTitle, options) {\\n\\tif (value === fromTitle\\n\\t&& !utils.isReserved(fromTitle, options)) {\\n\\t\\tif (utils.isReserved(toTitle, options)\\n\\t\\t|| !utils.isValidFieldName(toTitle)) {\\n\\t\\t\\treturn {impossible: true};\\n\\t\\t} else {\\n\\t\\t\\treturn {output: toTitle};\\n\\t\\t}\\n\\t}\\n\\treturn undefined;\\n};\\n\",\"module-type\":\"relinkfieldtype\",\"type\":\"application/javascript\"},\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldnamelist.js\":{\"title\":\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldnamelist.js\",\"text\":\"/*\\\\\\ntitle: $:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldnamelist.js\\nmodule-type: relinkfieldtype\\ntype: application/javascript\\n\\nThLine truncated
{"name":"Relink Markdown","title":"$:/plugins/flibbles/relink-markdown","description":"Markdown support for Relink","author":"Flibbles","version":"2.3.5","core-version":">=5.1.22","parent-plugin":"$:/plugins/flibbles/relink","source":"https://github.com/flibbles/tw5-relink","list":"readme","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/flibbles/relink-markdown/fieldtypes/markdown.js\":{\"title\":\"$:/plugins/flibbles/relink-markdown/fieldtypes/markdown.js\",\"text\":\"/*\\\\\\nmodule-type: relinkfieldtype\\ntitle: $:/plugins/flibbles/relink-markdown/fieldtypes/markdown.js\\ntype: application/javascript\\n\\nThis relinks tiddlers which contain markdown. It tries to be agnostic to\\nwhichever markdown plugin you're using.\\n\\n\\\\*/\\n\\nvar Rebuilder = require(\\\"$:/plugins/flibbles/relink/js/utils/rebuilder.js\\\");\\nvar coreUtils = require(\\\"$:/plugins/flibbles/relink/js/utils.js\\\");\\nvar utils = require(\\\"$:/plugins/flibbles/relink-markdown/utils/markdown.js\\\");\\nvar WikiParser = require(\\\"$:/core/modules/parsers/wikiparser/wikiparser.js\\\")['text/vnd.tiddlywiki'];\\n\\nfunction MarkdownWalker(text, options) {\\n\\tthis.wiki = options.wiki;\\n\\tthis.options = Object.create(options);\\n\\tthis.options.macrodefCanBeDisabled = true;\\n\\tif(!this.mdInlineRuleClasses) {\\n\\t\\tMarkdownWalker.prototype.mdInlineRuleClasses = $tw.modules.createClassesFromModules(\\\"relinkmarkdownrule\\\",\\\"inline\\\",$tw.MarkdownRuleBase);\\n\\t}\\n\\tif(!this.mdBlockRuleClasses) {\\n\\t\\tMarkdownWalker.prototype.mdBlockRuleClasses = $tw.modules.createClassesFromModules(\\\"relinkmarkdownrule\\\",\\\"block\\\",$tw.MarkdownRuleBase);\\n\\t}\\n\\tthis.source = text || \\\"\\\";\\n\\tthis.sourceLength = this.source.length;\\n\\t// Set current parse position\\n\\tthis.pos = 0;\\n\\t// Instantiate the parser block and inline rules\\n\\tthis.blockRules = this.instantiateRules(this.mdBlockRuleClasses,\\\"block\\\",0);\\n\\tthis.inlineRules = this.instantiateRules(this.mdInlineRuleClasses,\\\"inline\\\",0);\\n\\t// instantiateRules first with indent==undefined so we can match regardless\\n\\t// of tabdepth. Now we need to be strict about it.\\n\\tthis.indent = 0;\\n\\tthis.parseBlocks();\\n};\\n\\nMarkdownWalker.prototype = Object.create(WikiParser.prototype);\\n\\nmodule.exports\\n\\nMarkdownWalker.prototype.parseBlock = function(terminatorRegExpString) {\\n\\tvar terminatorRegExp = /([^\\\\S\\\\n]*\\\\r?\\\\n)/mg;\\n\\tthis.skipEmptyLines();\\n\\tif(this.pos >= this.sourceLength) {\\n\\t\\treturn [];\\n\\t}\\n\\t// Look for a block rule that applies at the current position\\n\\tvar nextMatch = this.findNextMatch(this.blockRules, this.pos);\\n\\tif(nextMatch && nextMatch.matchIndex === this.pos) {\\n\\t\\treturn this.handleRule(nextMatch);\\n\\t}\\n\\treturn this.parseInlineRun(terminatorRegExp);\\n};\\n\\nMarkdownWalker.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\\n\\toptions = options || {};\\n\\tvar tree = [];\\n\\t// Find the next occurrence of the terminator\\n\\tterminatorRegExp.lastIndex = this.pos;\\n\\tvar terminatorMatch = terminatorRegExp.exec(this.source);\\n\\t// Find the next occurrence of a inlinerule\\n\\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\\n\\t// Loop around until we've reached the end of the text\\n\\twhile(this.pos \u003C this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\\n\\t\\t// Return if we've found the terminator, and it precedes any inline rule match\\n\\t\\tif(terminatorMatch) {\\n\\t\\t\\tif(!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\\n\\t\\t\\t\\tthis.handleWikitext(this.pos, terminatorMatch.index);\\n\\t\\t\\t\\t//if(options.eatTerminator) {\\n\\t\\t\\t\\t\\tthis.pos += terminatorMatch[0].length;\\n\\t\\t\\t\\t//}\\n\\t\\t\\t\\treturn tree;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t// Process any inline rule, along with the text preceding it\\n\\t\\tif(inlineRuleMatch) {\\n\\t\\t\\t// Preceding text\\n\\t\\t\\tthis.handleWikitext(this.pos, inlineRuleMatch.matchIndex);\\n\\t\\t\\tthis.handleRule(inlineRuleMatch);\\n\\t\\t\\t// Look for the next inline rule\\n\\t\\t\\tinlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\\n\\t\\t\\t// Look for the next terminator match\\n\\t\\t\\tterminatorRegExp.lastIndex = this.pos;\\n\\t\\t\\tterminatorMatch = terminatorRegExp.exec(this.source);\\n\\t\\t}\\n\\t}\\n\\t// Process the remaining text\\n\\tthis.handleWikitext(this.pos, this.sourceLength);\\n\\treturn tree;\\n};\\n\\nMarkdownWalker.prototype.skipEmptyLines = function() {\\n\\tvar emptyRegExp = /(?:[^\\\\S\\\\n]*\\\\n)+/mg;\\n\\temptyRegExp.lastIndex = this.pos;\\n\\tvar emptyMatch = emptyRegExp.exec(this.source);\\n\\tif(emptyMatch && emptyMatch.index === this.pos) {\\n\\t\\tthis.pos = emptyRegExp.lastIndex;\\n\\t}\\n};\\n\\nfunction MarkdownReporter(text, callback, options) {\\n\\tthis.callback = callback;\\n\\tMarkdownWalker.callLine truncated
{"name":"Relink Titles","title":"$:/plugins/flibbles/relink-titles","description":"Renames tiddlers with titles derived from Relinked tiddler","author":"Flibbles","version":"2.3.1","core-version":">=5.1.22","parent-plugin":"$:/plugins/flibbles/relink","source":"https://github.com/flibbles/tw5-relink","demo":"http://flibbles.github.io/tw5-relink/","list":"readme configuration","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/flibbles/relink-titles/configuration\":{\"title\":\"$:/plugins/flibbles/relink-titles/configuration\",\"caption\":\"{{$:/plugins/flibbles/relink-titles/language/Caption}}\",\"tags\":\"$:/tags/flibbles/relink/Configuration\",\"text\":\"\\\\define lingo-base() $:/plugins/flibbles/relink-titles/language/\\n\\\\define prefix() $:/config/flibbles/relink-titles/relink/\\n\\\\whitespace trim\\n\\n\u003Cdiv class=\\\"tc-control-panel\\\">\\n\\n\u003C\u003Clingo Help>>\\n\\n\u003Ctable>\\n\u003Ctbody>\\n\u003C$list filter=\\\"[[relinktitlesrule]modules[]]\\\">\\n\u003Ctr>\\n\u003Ctd>\\n\u003C$checkbox\\n\\ttiddler={{{ [all[current]addprefix\u003Cprefix>] }}}\\n\\tfield=\\\"text\\\"\\n\\tchecked=\\\"enabled\\\"\\n\\tunchecked=\\\"disabled\\\"\\n\\tdefault=\\\"enabled\\\">\\n&#32;\\n''{{!!caption}}''\\n\u003C/$checkbox>\u003C/td>\u003Ctd>\\n\\n\u003C$transclude field='description' />\\n\\n\u003C/td>\u003C/tr>\u003C/$list>\\n\u003C/tbody>\u003C/table>\u003C/div>\\n\"},\"$:/plugins/flibbles/relink-titles/language/Caption\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Caption\",\"text\":\"Titles\"},\"$:/plugins/flibbles/relink-titles/language/Directory/Caption\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Directory/Caption\",\"text\":\"Rename subdirectories\"},\"$:/plugins/flibbles/relink-titles/language/Directory/Description\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Directory/Description\",\"text\":\"For wikis set up hierarchically using `/`, like a filesystem. This option will update all tiddlers nested inside the target tiddler. i.e. `fromTiddler/path/file` becomes `toTiddler/path/file`.\"},\"$:/plugins/flibbles/relink-titles/language/Lookup/Caption\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Lookup/Caption\",\"text\":\"Lookup tiddlers\"},\"$:/plugins/flibbles/relink-titles/language/Help\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Help\",\"text\":\"See the \u003Ca href={{{ [{$:/plugins/flibbles/relink-titles!!demo}addsuffix[#Plugins/Titles]] }}} class=\\\"tc-tiddlylink-external\\\">//Relink-titles// documentation page\u003C/a> for details.\"},\"$:/plugins/flibbles/relink-titles/readme\":{\"title\":\"$:/plugins/flibbles/relink-titles/readme\",\"text\":\"Highly customizable relinking of tiddler titles //related// to the renamed tiddler.\\n\\n* Rename a hierarchy of subtiddlers when renaming a root tiddler.\\n* Make custom filter rules to rename other tiddlers the way you want when Relinking.\\n* Integrates with other plugins for plugin-specific rules.\\n\\nSee \u003Ca href={{$:/plugins/flibbles/relink-titles!!source}} class=\\\"tc-tiddlylink-external\\\">the tw5-relink website\u003C/a> for more details and examples.\\n\\n{{$:/core/images/warning}} ''Warning:'' You must use //Relink// v1.10.2 or greater with this, or this plugin may delete some tiddler bodies while trying to relink titles.\\n\"},\"$:/plugins/flibbles/relink-titles/relinkoperations/title.js\":{\"title\":\"$:/plugins/flibbles/relink-titles/relinkoperations/title.js\",\"text\":\"/*\\\\\\nmodule-type: relinkoperator\\ntitle: $:/plugins/flibbles/relink-titles/relinkoperations/title.js\\ntype: application/javascript\\n\\nRenames tiddlers which have titles derived from fromTitle. Then it makes\\nsure that those tiddlers are properly relinked too.\\n\\n\\\\*/\\n\\n/*jslint node: false, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar configPrefix = \\\"$:/config/flibbles/relink-titles/relink/\\\";\\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\\n// This is using hotDirectories, which is a deprecated feature. It should be\\n// using the $:/config/flibbles/relink/{cateogory} directory which would be\\n// automatically maintained and regenerated.\\n// Maybe in time I'll get around to migrating this, but no need to complicate\\n// things now with changes that would require migration, and that would\\n// have no outward effect.\\nutils.getContext('whitelist').hotDirectories.push(configPrefix);\\n\\nvar titleRules = Object.create(null);\\n$tw.modules.forEachModuleOfType('relinktitlesrule', function(title, module) {\\n\\ttitleRules[title] = module;\\n});\\n\\nexports.name = 'title';\\n\\nexports.report = function(tiddler, callback, options) {\\n\\tvar cache = getCache(options),\\n\\t\\trules = cache.rules;\\n\\tfor (var i = 0; i \u003C rules.length; i++) {\\n\\t\\trules[i].report(tiddler.fields.title, function(title, blurb) {\\n\\t\\t\\tcallback(title, blurb ? ('title: ' + blurb) : 'title')Line truncated
{"title":"$:/plugins/sq/streams","name":"Streams","description":"Rapid data entry with a keyboard driven workflow. Divide content into smaller tiddlers as you write.","plugin-type":"plugin","plugin-priority":"1","author":"Saq Imtiaz","version":"1.2.24","core-version":">=5.1.23","list":"Settings CHANGELOG","source":"https://saqimtiaz.github.io/streams/","dependents":"$:/plugins/flibbles/relink","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/sq/streams/CHANGELOG\":{\"title\":\"$:/plugins/sq/streams/CHANGELOG\",\"text\":\"Release notes for the current release:\\n\\n{{$:/plugins/sq/streams/releasenotes}}\\n\\n[[Full changelog|https://saqimtiaz.github.io/streams/#CHANGELOG]] for Streams\\n\"},\"$:/plugins/sq/streams/Settings/config\":{\"title\":\"$:/plugins/sq/streams/Settings/config\",\"caption\":\"Configuration\",\"text\":\"\\\\define sortBySettingsGroupFilter()\\n[get[settings-group]!is[blank]else[!general]] [get[settings-group-header]!is[blank]else[99]] +[join[]]\\n\\\\end\\n\\n\u003C$edit-text tiddler=\\\"$:/state/sq/streams/settings/search\\\" class=\\\"sq-search-input\\\" default=\\\"\\\" tag=\\\"input\\\" type=\\\"search\\\" placeholder=\\\"search...\\\"/>\\n\\n\u003Cdiv class=\\\"sq-list-group sq-list-group-box-shadow sq-list-stream-settings\\\">\\n\u003C$list filter=\\\"[all[shadows+tiddlers]prefix[$:/config/sq/streams]has[settings-template]] +[search:title,caption,description{$:/state/sq/streams/settings/search}] +[sortsub\u003CsortBySettingsGroupFilter>]\\\">\\n\u003C$list filter={{{[{!!condition}!is[blank]] :else[{!!title}]}}} variable=\\\"list-condition\\\">\\n\u003Cdiv class=\\\"sq-list-group-item\\\">\\n\u003C$transclude tiddler={{!!settings-template}}/>\\n\u003C/div>\\n\u003C/$list>\\n\u003C/$list>\\n\u003C/div>\"},\"$:/plugins/sq/streams/Settings/shortcuts\":{\"title\":\"$:/plugins/sq/streams/Settings/shortcuts\",\"caption\":\"Shortcuts\",\"text\":\"\\\\import $:/core/ui/ControlPanel/KeyboardShortcuts\\n\\n\u003Ctable>\\n\u003Ctbody>\\n\u003C$list filter=\\\"[all[shadows+tiddlers]prefix[$:/config/ShortcutInfo/streams-]removeprefix[$:/config/ShortcutInfo/]]\\\" variable=\\\"shortcutName\\\">\\n\u003C\u003Cshortcut-item>>\\n\u003C/$list>\\n\u003C/tbody>\\n\u003C/table>\"},\"$:/plugins/sq/streams/Settings\":{\"title\":\"$:/plugins/sq/streams/Settings\",\"tags\":\"$:/tags/ControlPanel\",\"caption\":\"Streams settings\",\"text\":\"\u003C\u003Ctabs \\\"$:/plugins/sq/streams/Settings/config $:/plugins/sq/streams/Settings/shortcuts\\\" \\\"$:/plugins/sq/streams/Settings/config\\\" \\\"$:/state/streams/settings/tabs\\\">>\\n\"},\"$:/plugins/sq/streams/action-macros\":{\"title\":\"$:/plugins/sq/streams/action-macros\",\"text\":\"\\\\whitespace trim\\n\\n\\\\define swiped-right-actions()\\n\u003C$list filter=\\\"[{$:/config/sq/streams/swipe-behaviour}match[contextmenu]]\\\" variable=\\\"_NULL\\\">\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"current\\\" $value=\u003C\u003Cdom-data-node-title>>/>\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"position\\\" $value={{$:/config/sq/streams/swipe-contextmenu-position}}/>\\n\u003C$action-popup $coords=\u003C\u003Ctv-popup-coords>> $state=\u003C\u003Ccontextmenu-state>>/>\\n\u003C/$list>\\n\u003C$list filter=\\\"[{$:/config/sq/streams/swipe-behaviour}match[indent]]\\\" variable=\\\"_NULL\\\">\\n\u003C$vars currentTiddler=\u003C\u003Cdom-data-node-title>>>\\n\u003C\u003Cindent-node-actions>>\\n\u003C/$vars>\\n\u003C/$list>\\n\\\\end\\n\\n\\\\define swiped-left-actions()\\n\u003C$list filter=\\\"[{$:/config/sq/streams/swipe-behaviour}match[indent]]\\\" variable=\\\"_NULL\\\">\\n\u003C$vars currentTiddler=\u003C\u003Cdom-data-node-title>>>\\n\u003C\u003Cunindent-node-actions>>\\n\u003C/$vars>\\n\u003C/$list>\\n\\\\end\\n\\n\\n\\\\define oncontext-menu-actions()\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"current\\\" $value=\u003C\u003Cdom-data-node-title>>/>\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"position\\\" $value=\\\"left\\\"/>\\n\u003C$action-popup $coords=\u003C\u003Ctv-popup-coords>> $state=\u003C\u003Ccontextmenu-state>>/>\\n\\\\end\\n\\n\\n\\\\define node-ctrl-btn-actions()\\n\u003C$list filter=\\\"[\u003Cdom-data-btn-role>match[stream-node-visibility]]\\\" variable=\\\"NULL\\\">\\n\u003C$action-setfield $tiddler=\u003C\u003Cdom-data-rowchildren-visibility-state>> text={{{ [\u003Cdom-data-rowchildren-visibility-state>get[text]match[hide]then[show]else[hide]] }}} />\\n\u003C/$list>\\n\u003C$list filter=\\\"[\u003Cdom-data-btn-role>match[stream-node-decorator]]\\\" variable=\\\"NULL\\\">\\n\u003C$action-navigate $to=\u003C\u003Cdom-data-node-title>>/>\\n\u003C/$list>\\n\\\\end\\n\\n\\n\\\\define toggle-row-edit-state()\\n\u003C$action-unselect/>\\n\u003C$list filter=\\\"[\u003Crow-edit-state>get[text]else[]!match\u003Cdom-data-node-title>]\\\" variable=\\\"NULL\\\">\\n\u003C$list filter=\\\"[[$:/status/IsReadOnly]Line truncated
{"text":"{\n \"tiddlers\": {\n \"$:/plugins/sq/streams-as-editor/single-tiddler-streams.js\": {\n \"title\": \"$:/plugins/sq/streams-as-editor/single-tiddler-streams.js\",\n \"text\": \"/*\\\\\\n\\ntitle: $:/plugins/sq/streams-as-editor/single-tiddler-streams.js\\ntype: application/javascript\\nmodule-type: widget\\n\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: true, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar Widget = require(\\\"$:/core/modules/widgets/widget.js\\\").widget;\\n\\nvar UUID = (function() {\\n var self = {};\\n var lut = []; for (var i=0; i\u003C256; i++) { lut[i] = (i\u003C16?'0':'')+(i).toString(16); }\\n self.generate = function() {\\n\\tvar d0 = Math.random()*0xffffffff|0;\\n\\tvar d1 = Math.random()*0xffffffff|0;\\n\\tvar d2 = Math.random()*0xffffffff|0;\\n\\tvar d3 = Math.random()*0xffffffff|0;\\n\\treturn lut[d0&0xff]+lut[d0>>8&0xff]+lut[d0>>16&0xff]+lut[d0>>24&0xff]+'-'+\\n\\t lut[d1&0xff]+lut[d1>>8&0xff]+'-'+lut[d1>>16&0x0f|0x40]+lut[d1>>24&0xff]+'-'+\\n\\t lut[d2&0x3f|0x80]+lut[d2>>8&0xff]+'-'+lut[d2>>16&0xff]+lut[d2>>24&0xff]+\\n\\t lut[d3&0xff]+lut[d3>>8&0xff]+lut[d3>>16&0xff]+lut[d3>>24&0xff];\\n }\\n return self;\\n})();\\n\\nvar SingleTiddlerStreamsWidget = function(parseTreeNode,options) {\\n\\tthis.initialise(parseTreeNode,options);\\n};\\n\\n/*\\nInherit from the base widget class\\n*/\\nSingleTiddlerStreamsWidget.prototype = new Widget();\\n\\n/*\\nRender this widget into the DOM\\n*/\\nSingleTiddlerStreamsWidget.prototype.render = function(parent,nextSibling) {\\n\\tthis.computeAttributes();\\n\\tthis.execute();\\n\\tthis.parentDomNode = parent;\\n\\t//this.renderChildren(parent,nextSibling);\\n\\n\\t\\n};\\n\\nSingleTiddlerStreamsWidget.prototype.invokeAction = function(triggeringWidget,event) {\\n\\tvar sourceTiddler = this.wiki.getTiddler(this.tiddlerTitle);\\n\\tif(!sourceTiddler) {\\n\\t\\treturn;\\n\\t}\\n\\tvar sourceText = \\\"\\\\n\\\\\\\\rules only list \\\\n\\\\n\\\" + this.wiki.getTiddlerText(this.tiddlerTitle);\\n\\tvar wikifyParser = this.wiki.parseText(\\\"text/vnd.tiddlywiki\\\",sourceText, {\\n\\t\\tparseAsInline : false\\n\\t});\\n\\tconsole.log(wikifyParser);\\n\\t\\n\\tvar tree = wikifyParser.tree;\\n\\tif(tree.length == 0 || tree[0].tag !== \\\"ul\\\" || tree.length !== 1) {\\n\\t\\treturn;\\n\\t}\\n\\tvar list = tree[0];\\n\\t\\n\\tthis.nodes = [];\\n\\tvar parentTiddlerFields = {\\n\\t\\ttitle: this.tiddlerTitle\\n\\t}\\n\\tthis.nodes.push(parentTiddlerFields);\\n\\tthis.processList(list,parentTiddlerFields);\\n\\tconsole.log(1);\\n\\t\\n\\tthis.createNodeTiddlers();\\n\\treturn true;\\n};\\n\\nSingleTiddlerStreamsWidget.prototype.createNodeTiddlers = function() {\\n\\tfor(var i=0; i\u003Cthis.nodes.length; i++) {\\n\\t\\tvar tiddler = this.wiki.getTiddler(this.nodes[i].title);\\n\\t\\tvar newTiddler = new $tw.Tiddler(tiddler,this.nodes[i]);\\n\\t\\tthis.wiki.addTiddler(newTiddler);\\n\\t}\\n};\\n\\n// process UL tag\\nSingleTiddlerStreamsWidget.prototype.processList = function(list,parentTiddler) {\\t\\t\\n\\tvar childNodes = [];\\n\\t\\t\\n\\tfor(var i=0; i\u003Clist.children.length; i++) {\\n\\n\\t\\tvar tiddler = {\\n\\t\\t\\t\\\"title\\\": \\\"$:/streams/temp/\\\" + this.tiddlerTitle + \\\"/\\\" + UUID.generate(),\\n\\t\\t\\t\\\"parent\\\": parentTiddler.title,\\n\\t\\t\\t\\\"text\\\": list.children[i].children[0].text,\\n\\t\\t\\t\\\"stream-type\\\" : \\\"default\\\"\\n\\t\\t};\\t\\t\\n\\t\\t\\n\\t\\tvar subList = list.children[i].children[1];\\n\\t\\tif(subList && subList.tag === \\\"ul\\\") {\\n\\t\\t\\tthis.processList(subList,tiddler);\\n\\t\\t}\\n\\t\\t\\n\\t\\tchildNodes.push(tiddler.title);\\n\\t\\tthis.nodes.push(tiddler);\\n\\t\\t// add tiddler to wiki\\n\\t}\\n\\tparentTiddler[\\\"stream-list\\\"] = $tw.utils.stringifyList(childNodes);\\n\\t//save child nodes to stream-list in parent\\n}\\n\\n\\nSingleTiddlerStreamsWidget.prototype.execute = function() {\\n\\tthis.tiddlerTitle = this.getAttribute(\\\"$tiddler\\\",this.getVariable(\\\"currentTiddler\\\"));\\n//\\tthis.makeChildWidgets();\\n};\\n\\n\\nSingleTiddlerStreamsWidget.prototype.refresh = function(changedTiddlers) {\\n\\tvar changedAttributes = this.computeAttributes();\\n\\tif(changedAttributes[\\\"tiddler\\\"] || changedTiddlers[this.tiddlerTitle]) {\\n\\t\\tthis.refreshSelf();\\n\\t\\treturn true;\\n\\t}\\n\\treturn this.refreshChildren(changedTiddlers);\\n};\\n\\nexports[\\\"action-editwithstreams\\\"] = SingleTiddlerStreamsWidget;\\n\\n})();\",\n \"type\": \"application/javascript\",\n \"module-type\": \"widget\"\n },\n \"$:/plugins/sq/streams-as-editor/stream-to-wikilist-filter.js\": {\n \"title\": \"$:/plugins/sq/streams-as-editor/stream-to-wikilist-filter.js\",\n \"text\": \"/*\\\\\\ntitle: $:/plugins/sq/streams-as-editor/stream-to-wikilist-filter.js\\ntype: application/javascript\\nmodule-type: filteroperator\\n\\n\\\\*/\\n(function(){\\n\Line truncated
{"text":"{\n \"tiddlers\": {\n \"$:/config/SearchResults/Default\": {\n \"title\": \"$:/config/SearchResults/Default\",\n \"created\": \"20200820180447855\",\n \"modified\": \"20200820180500121\",\n \"tags\": \"\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"text\": \"$:/plugins/sq/streams-search/StreamSearchResults\"\n },\n \"$:/plugins/sq/streams-search/stream-root-filter.js\": {\n \"title\": \"$:/plugins/sq/streams-search/stream-root-filter.js\",\n \"text\": \"/*\\\\\\ntitle: $:/plugins/sq/streams-search/stream-root-filter.js\\ntype: application/javascript\\nmodule-type: filteroperator\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: true, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\n/*\\nExport our filter function\\n*/\\nexports[\\\"stream-root\\\"] = function(source,operator,options) {\\n\\tvar results = [];\\n\\tsource(function(tiddler,title) {\\n\\t\\tif(tiddler && tiddler.fields[\\\"parent\\\"] && tiddler.fields[\\\"stream-type\\\"]) {\\t\\t\\t\\n\\n\\t\\t\\tvar parentTiddler = tiddler;\\n\\t\\t\\t\\n\\t\\t\\twhile(parentTiddler && parentTiddler.fields.parent) {\\n\\t\\t\\t\\tparentTiddler = options.wiki.getTiddler(parentTiddler.fields.parent);\\n\\t\\t\\t}\\n\\t\\t\\tif(parentTiddler && parentTiddler.fields && tiddler.fields.title.startsWith(parentTiddler.fields[\\\"title\\\"])) {\\n\\t\\t\\t\\t$tw.utils.pushTop(results,parentTiddler.fields.title);\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tresults.push(title);\\n\\t\\t\\t}\\n\\t\\t\\t\\n\\t\\t} else {\\n\\t\\t\\tresults.push(title);\\n\\t\\t}\\n\\t});\\n\\treturn results;\\n};\\n\\n})();\",\n \"type\": \"application/javascript\",\n \"module-type\": \"filteroperator\"\n },\n \"$:/plugins/sq/streams-search/StreamSearchResults\": {\n \"title\": \"$:/plugins/sq/streams-search/StreamSearchResults\",\n \"caption\": \"Streams\",\n \"created\": \"20200818210522653\",\n \"modified\": \"20200818212724254\",\n \"tags\": \"$:/tags/SearchResults\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"text\": \"\\\\define searchResultList()\\n//\u003Csmall>{{$:/language/Search/Matches/Title}}\u003C/small>//\\n\\n\u003C$list filter=\\\"[!is[system]search:title{$(searchTiddler)$}sort[title]stream-root[]limit[250]]\\\">\\n\u003Cspan class={{{[\u003CcurrentTiddler>addsuffix[-primaryList]] -[\u003CsearchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\\n\u003C$transclude tiddler=\\\"$:/core/ui/ListItemTemplate\\\"/>\\n\u003C/span>\\n\u003C/$list>\\n\\n//\u003Csmall>{{$:/language/Search/Matches/All}}\u003C/small>//\\n\\n\u003C$list filter=\\\"[!is[system]search{$(searchTiddler)$}sort[title]stream-root[]limit[250]]\\\">\\n\u003Cspan class={{{[\u003CcurrentTiddler>addsuffix[-secondaryList]] -[\u003CsearchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\\n\u003C$transclude tiddler=\\\"$:/core/ui/ListItemTemplate\\\"/>\\n\u003C/span>\\n\u003C/$list>\\n\\n\\\\end\\n\u003C\u003CsearchResultList>>\"\n }\n }\n}","version":"0.0.02","type":"application/json","title":"$:/plugins/sq/streams-search","source":"","revision":"0","plugin-type":"plugin","list":"","description":"Streams addon: Search","dependents":"","core-version":">=5.1.22","bag":"default","author":"Saq Imtiaz"},
{"title":"$:/plugins/tiddlywiki/filesystem","name":"Filesystem","description":"Synchronize changes from the node.js server to the local filesystem","list":"readme","version":"5.3.1","plugin-type":"plugin","dependents":"","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/tiddlywiki/filesystem/filesystemadaptor.js\":{\"title\":\"$:/plugins/tiddlywiki/filesystem/filesystemadaptor.js\",\"text\":\"/*\\\\\\ntitle: $:/plugins/tiddlywiki/filesystem/filesystemadaptor.js\\ntype: application/javascript\\nmodule-type: syncadaptor\\n\\nA sync adaptor module for synchronising with the local filesystem via node.js APIs\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: true, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\n// Get a reference to the file system\\nvar fs = $tw.node ? require(\\\"fs\\\") : null,\\n\\tpath = $tw.node ? require(\\\"path\\\") : null;\\n\\nfunction FileSystemAdaptor(options) {\\n\\tvar self = this;\\n\\tthis.wiki = options.wiki;\\n\\tthis.boot = options.boot || $tw.boot;\\n\\tthis.logger = new $tw.utils.Logger(\\\"filesystem\\\",{colour: \\\"blue\\\"});\\n\\t// Create the \u003Cwiki>/tiddlers folder if it doesn't exist\\n\\t$tw.utils.createDirectory(this.boot.wikiTiddlersPath);\\n}\\n\\nFileSystemAdaptor.prototype.name = \\\"filesystem\\\";\\n\\nFileSystemAdaptor.prototype.supportsLazyLoading = false;\\n\\nFileSystemAdaptor.prototype.isReady = function() {\\n\\t// The file system adaptor is always ready\\n\\treturn true;\\n};\\n\\nFileSystemAdaptor.prototype.getTiddlerInfo = function(tiddler) {\\n\\t//Returns the existing fileInfo for the tiddler. To regenerate, call getTiddlerFileInfo().\\n\\tvar title = tiddler.fields.title;\\n\\treturn this.boot.files[title];\\n};\\n\\n/*\\nReturn a fileInfo object for a tiddler, creating it if necessary:\\n filepath: the absolute path to the file containing the tiddler\\n type: the type of the tiddler file (NOT the type of the tiddler -- see below)\\n hasMetaFile: true if the file also has a companion .meta file\\n\\nThe boot process populates this.boot.files for each of the tiddler files that it loads.\\nThe type is found by looking up the extension in $tw.config.fileExtensionInfo (eg \\\"application/x-tiddler\\\" for \\\".tid\\\" files).\\n\\nIt is the responsibility of the filesystem adaptor to update this.boot.files for new files that are created.\\n*/\\nFileSystemAdaptor.prototype.getTiddlerFileInfo = function(tiddler,callback) {\\n\\t// Always generate a fileInfo object when this fuction is called\\n\\tvar title = tiddler.fields.title, newInfo, pathFilters, extFilters,\\n\\t\\tfileInfo = this.boot.files[title];\\n\\tif(this.wiki.tiddlerExists(\\\"$:/config/FileSystemPaths\\\")) {\\n\\t\\tpathFilters = this.wiki.getTiddlerText(\\\"$:/config/FileSystemPaths\\\",\\\"\\\").split(\\\"\\\\n\\\");\\n\\t}\\n\\tif(this.wiki.tiddlerExists(\\\"$:/config/FileSystemExtensions\\\")) {\\n\\t\\textFilters = this.wiki.getTiddlerText(\\\"$:/config/FileSystemExtensions\\\",\\\"\\\").split(\\\"\\\\n\\\");\\n\\t}\\n\\tnewInfo = $tw.utils.generateTiddlerFileInfo(tiddler,{\\n\\t\\tdirectory: this.boot.wikiTiddlersPath,\\n\\t\\tpathFilters: pathFilters,\\n\\t\\textFilters: extFilters,\\n\\t\\twiki: this.wiki,\\n\\t\\tfileInfo: fileInfo\\n\\t});\\n\\tcallback(null,newInfo);\\n};\\n\\n\\n/*\\nSave a tiddler and invoke the callback with (err,adaptorInfo,revision)\\n*/\\nFileSystemAdaptor.prototype.saveTiddler = function(tiddler,callback,options) {\\n\\tvar self = this;\\n\\tvar syncerInfo = options.tiddlerInfo || {};\\n\\tthis.getTiddlerFileInfo(tiddler,function(err,fileInfo) {\\n\\t\\tif(err) {\\n\\t\\t\\treturn callback(err);\\n\\t\\t}\\n\\t\\t$tw.utils.saveTiddlerToFile(tiddler,fileInfo,function(err,fileInfo) {\\n\\t\\t\\tif(err) {\\n\\t\\t\\t\\tif ((err.code == \\\"EPERM\\\" || err.code == \\\"EACCES\\\") && err.syscall == \\\"open\\\") {\\n\\t\\t\\t\\t\\tfileInfo = fileInfo || self.boot.files[tiddler.fields.title];\\n\\t\\t\\t\\t\\tfileInfo.writeError = true;\\n\\t\\t\\t\\t\\tself.boot.files[tiddler.fields.title] = fileInfo;\\n\\t\\t\\t\\t\\t$tw.syncer.logger.log(\\\"Sync failed for \\\\\\\"\\\"+tiddler.fields.title+\\\"\\\\\\\" and will be retried with encoded filepath\\\",encodeURIComponent(fileInfo.filepath));\\n\\t\\t\\t\\t\\treturn callback(err);\\n\\t\\t\\t\\t} else {\\n\\t\\t\\t\\t\\treturn callback(err);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t\\t// Store new boot info only after successful writes\\n\\t\\t\\tself.boot.files[tiddler.fields.title] = fileInfo;\\n\\t\\t\\t// Cleanup duplicates if the file moved or changed extensions\\n\\t\\t\\tvar options = {\\n\\t\\t\\t\\tadaptorInfo: syncerInfo.adaptorInfo || {},\\n\\t\\t\\t\\tbootInfo: fileInfo || {},\\n\\t\\t\\t\\ttitle: tiddler.fields.title\\n\\t\\t\\t};\\n\\t\\t\\t$tw.utils.cleanupTiddlerFiles(options,function(err,fileInfo) {\\n\\t\\t\\t\\tif(err) {\\n\\t\\t\\t\\t\\treturn callback(err);\\n\\t\\t\\t\\t}\\n\\t\\t\\t\\treturn callback(null,fileInfo);\\n\\t\\t\\t});\\n\\t\\t});\\n\\t});\\Line truncated
{"title":"$:/plugins/tiddlywiki/menubar","name":"Menu Bar","description":"Menu Bar","list":"readme config","version":"5.3.1","plugin-type":"plugin","dependents":"","type":"application/json","text":"{\"tiddlers\":{\"$:/config/DefaultColourMappings/menubar-foreground\":{\"title\":\"$:/config/DefaultColourMappings/menubar-foreground\",\"text\":\"#fff\"},\"$:/config/DefaultColourMappings/menubar-background\":{\"title\":\"$:/config/DefaultColourMappings/menubar-background\",\"text\":\"#5778d8\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/pagecontrols\",\"text\":\"hide\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/server\",\"text\":\"hide\"},\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar\":{\"title\":\"$:/config/plugins/menubar/MenuItems/Visibility/$:/plugins/tiddlywiki/menubar/items/sidebar\",\"text\":\"hide\"},\"$:/config/plugins/menubar/TableOfContents/Tag\":{\"title\":\"$:/config/plugins/menubar/TableOfContents/Tag\",\"text\":\"TableOfContents\"},\"$:/config/plugins/menubar/breakpoint\":{\"title\":\"$:/config/plugins/menubar/breakpoint\",\"text\":\"620px\"},\"$:/plugins/tiddlywiki/menubar/config\":{\"title\":\"$:/plugins/tiddlywiki/menubar/config\",\"tags\":\"$:/tags/ControlPanel/Toolbars\",\"caption\":\"Menu Bar\",\"text\":\"\\\\define config-base() $:/config/plugins/menubar/MenuItems/Visibility/\\n\\n! Menu Bar Configuration\\n\\n!! Menu Items\\n\\nSelect which menu items will be shown. You can also drag items to reorder them.\\n\\n\u003C$set name=\\\"tv-config-toolbar-icons\\\" value=\\\"yes\\\">\\n\\n\u003C$set name=\\\"tv-config-toolbar-text\\\" value=\\\"yes\\\">\\n\\n\u003C$macrocall $name=\\\"list-tagged-draggable\\\" tag=\\\"$:/tags/MenuBar\\\" itemTemplate=\\\"$:/core/ui/ControlPanel/Toolbars/ItemTemplate\\\"/>\\n\\n\u003C/$set>\\n\\n\u003C/$set>\\n\\n!! Breakpoint Position\\n\\nThe breakpoint position between narrow and wide screens. Should include CSS units (eg. `400px`).\\n\\n\u003C$edit-text tiddler=\\\"$:/config/plugins/menubar/breakpoint\\\" default=\\\"\\\" tag=\\\"input\\\"/>\\n\\n!! Contents Tag\\n\\nThe tag for the ~TableOfContents used in the Contents dropdown\\n\\n\u003C$edit-text tiddler=\\\"$:/config/plugins/menubar/TableOfContents/Tag\\\" default=\\\"\\\" tag=\\\"input\\\"/>\\n\\n!! Menu Bar Colours\\n\\nTo change the colour of the menu bar, define the colours `menubar-foreground` and `menubar-background` in the currently selected palette\\n\"},\"$:/plugins/tiddlywiki/menubar/items/contents\":{\"title\":\"$:/plugins/tiddlywiki/menubar/items/contents\",\"caption\":\"Contents\",\"description\":\"Table of Contents\",\"is-dropdown\":\"yes\",\"tags\":\"$:/tags/MenuBar\",\"text\":\"\u003Cdiv class=\\\"tc-table-of-contents\\\">\\n\\n\u003C$macrocall $name=\\\"toc-selective-expandable\\\" tag={{$:/config/plugins/menubar/TableOfContents/Tag}}/>\\n\\n\u003C/div>\\n\"},\"$:/plugins/tiddlywiki/menubar/items/hamburger\":{\"title\":\"$:/plugins/tiddlywiki/menubar/items/hamburger\",\"tags\":\"$:/tags/MenuBar\",\"caption\":\"Hamburger\",\"description\":\"Show the full menu bar on a narrow screen\",\"custom-menu-content\":\"{{$:/plugins/tiddlywiki/menubar/items/hamburger}}\",\"show-when\":\"narrow\",\"text\":\"\u003C$list filter=\\\"[[$:/state/popup/menubar/hamburger]get[text]else[no]match[no]]\\\">\\n\u003C$button set=\\\"$:/state/popup/menubar/hamburger\\\" setTo=\\\"yes\\\">\\n{{$:/core/images/menu-button}}\\n\u003C/$button>\\n\u003C/$list>\\n\u003C$list filter=\\\"[[$:/state/popup/menubar/hamburger]get[text]else[no]match[yes]]\\\">\\n\u003C$button set=\\\"$:/state/popup/menubar/hamburger\\\" setTo=\\\"no\\\">\\n{{$:/core/images/close-button}}\\n\u003C/$button>\\n\u003C/$list>\\n\"},\"$:/plugins/tiddlywiki/menubar/items/pagecontrols\":{\"title\":\"$:/plugins/tiddlywiki/menubar/items/pagecontrols\",\"tags\":\"$:/tags/MenuBar\",\"description\":\"Page controls from the sidebar\",\"caption\":\"Page controls\",\"custom-menu-content\":\"\u003C$transclude tiddler=\\\"$:/plugins/tiddlywiki/menubar/items/pagecontrols\\\" mode=\\\"inline\\\"/>\",\"text\":\"\\\\whitespace trim\\n\\\\define config-title()\\n$:/config/PageControlButtons/Visibility/$(listItem)$\\n\\\\end\\n\u003C$list filter=\\\"[all[shadows+tiddlers]tag[$:/tags/PageControls]!has[draft.of]]\\\" variable=\\\"listItem\\\">\\n\u003C$set name=\\\"hidden\\\" value=\u003C\u003Cconfig-title>>>\\n\u003C$list filter=\\\"[\u003Chidden>!text[hide]]\\\" storyview=\\\"pop\\\" variable=\\\"ignore\\\">\\n\u003C$set name=\\\"tv-config-toolbar-class\\\" filter=\\\"[\u003Ctv-config-toolbar-class>] [\u003ClistItem>encodeuricomponent[]addprefix[tc-btn-]]\\\">\\n\u003C$transclude tiddler=\u003C\u003ClistItem>> mode=\\\"inlineLine truncated
{"created":"20230928091243648","text":"\n","title":"$:/plugins/tiddlywiki/menubar/items/about","caption":"About","description":"Table of Proyectos","is-dropdown":"yes","tags":"$:/tags/MenuBar","modified":"20230928091329047"},
{"created":"20230928091359995","text":"\u003Cdiv class=\"tc-table-of-contents\">\n\n\u003C\u003Ctoc-selective-expandable 'Actividades'>>\n\n\u003C/div>\n","title":"$:/plugins/tiddlywiki/menubar/items/actividades","caption":"Actividades","description":"Table of Proyectos","is-dropdown":"yes","tags":"$:/tags/MenuBar","modified":"20230928091829374"},
@@ -497,7 +479,7 @@ Error message and password prompt
{"created":"20230928081548527","title":"$:/state/search/currentTab","text":"$:/plugins/sq/streams-search/StreamSearchResults","modified":"20230928083123854"},
{"created":"20230927211845025","title":"$:/state/showeditpreview","text":"no","modified":"20230928161353596"},
{"created":"20230927222316056","title":"$:/state/ShowPaletteEditor","text":"yes","modified":"20230927222316056"},
{"created":"20230927213815511","title":"$:/state/sidebar","text":"no","modified":"20230929115943145"},
{"created":"20230927213815511","title":"$:/state/sidebar","text":"no","modified":"20230929120153054"},
{"created":"20230928063718600","title":"$:/state/sq/streams/visibility/copincha/20230928041541658--1254993181","text":"show","modified":"20230928070932222"},
{"created":"20230928043111137","title":"$:/state/sq/streams/visibility/copincha/20230928041546393-934822130","text":"show","modified":"20230928075641616"},
{"created":"20230928073413378","title":"$:/state/sq/streams/visibility/copincha/20230928041548495--369046925","text":"show","modified":"20230928081419794"},
@@ -517,7 +499,7 @@ Error message and password prompt
{"created":"20230928040704540","title":"$:/state/tab--2112689675","text":"$:/core/ui/ControlPanel/Basics","modified":"20230928055052216"},
{"created":"20230928083530469","title":"$:/state/tab--86143343","text":"$:/core/ui/ControlPanel/Plugins/Installed/Plugins","modified":"20230929105858985"},
{"created":"20230928040708019","title":"$:/state/tab--959111941","text":"$:/core/ui/ControlPanel/Stylesheets","modified":"20230928054758889"},
{"created":"20230927070359746","title":"$:/state/tab-1749438307","text":"$:/core/ui/ControlPanel/Appearance","modified":"20230929115629176"},
{"created":"20230927070359746","title":"$:/state/tab-1749438307","text":"$:/core/ui/ControlPanel/Plugins","modified":"20230929172214864"},
{"created":"20230928040939296","title":"$:/state/tab-453520357","text":"$:/core/ui/ControlPanel/EditTemplateBody","modified":"20230928040947232"},
{"created":"20230928081548527","title":"$:/state/tab/search-results/sidebar","text":"$:/plugins/sq/streams-search/StreamSearchResults","modified":"20230928083123854"},
{"created":"20230927063409101","title":"$:/state/tab/sidebar--595412856","text":"$:/core/ui/SideBar/Recent","modified":"20230929114245664"},
@@ -529,8 +511,8 @@ Error message and password prompt
{"created":"20230928081806500","title":"$:/state/toc/TableOfContents-Proyectos-1684905998","text":"open","modified":"20230928081806500"},
{"created":"20230928082306069","title":"$:/state/toc/TableOfContents-Servicios--944721818","text":"open","modified":"20230928082306069"},
{"created":"20230928082231303","title":"$:/state/toc/TableOfContents-Talleres--944721818","text":"open","modified":"20230928083015283"},
{"title":"$:/status/RequireReloadDueToPluginChange","text":"no"},
{"title":"$:/StoryList","created":"20230929115831226","text":"","list":"copinchapedia","modified":"20230929115831226"},
{"title":"$:/status/RequireReloadDueToPluginChange","text":"yes"},
{"title":"$:/StoryList","created":"20230929172155714","text":"","list":"$:/ControlPanel copinchapedia","modified":"20230929172317284"},
{"created":"20230928034438840","title":"$:/theme","text":"$:/themes/tiddlywiki/centralised","modified":"20230928062438120"},
{"title":"$:/themes/tiddlywiki/centralised","name":"Centralised","author":"JeremyRuston","core-version":">=5.0.0","plugin-type":"theme","description":"Centralises the story river","dependents":"$:/themes/tiddlywiki/snowwhite","version":"5.3.1","type":"application/json","text":"{\"tiddlers\":{\"$:/themes/tiddlywiki/centralised/styles.tid\":{\"title\":\"$:/themes/tiddlywiki/centralised/styles.tid\",\"tags\":\"[[$:/tags/Stylesheet]]\",\"text\":\"\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\\n\\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\\n\\n\\thtml .tc-page-container {\\n\\t\\ttext-align: center;\\n\\t}\\n\\n\\thtml .tc-story-river {\\n\\t\\tposition: relative;\\n\\t\\twidth: 770px;\\n\\t\\tpadding: 42px;\\n\\t\\tmargin: 0 auto;\\n\\t\\ttext-align: left;\\n\\t}\\n\\n\\thtml .tc-sidebar-scrollable {\\n\\t\\ttext-align: left;\\n\\t\\tleft: 50%;\\n\\t\\tright: 0;\\n\\t\\tmargin-left: 343px;\\n\\t}\\n}\\n\"}}}"},
{"title":"$:/themes/tiddlywiki/snowwhite","name":"Snow White","author":"JeremyRuston","core-version":">=5.0.0","plugin-type":"theme","description":"Emphasises individual tiddlers","dependents":"$:/themes/tiddlywiki/vanilla","plugin-priority":"0","version":"5.3.1","type":"application/json","text":"{\"tiddlers\":{\"$:/themes/tiddlywiki/snowwhite/base\":{\"title\":\"$:/themes/tiddlywiki/snowwhite/base\",\"tags\":\"[[$:/tags/Stylesheet]]\",\"text\":\"\\\\define sidebarbreakpoint-minus-one()\\n\u003C$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\\n\\\\end\\n\\n\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\\n\\n.tc-sidebar-header {\\n\\ttext-shadow: 0 1px 0 \u003C\u003Ccolour sidebar-foreground-shadow>>;\\n}\\n\\n.tc-tiddler-info {\\n\\t\u003C\u003Cbox-shadow \\\"inset 1px 2px 3px rgba(0,0,0,0.1)\\\">>\\n}\\n\\n@media screen {\\n\\t.tc-tiddler-frame {\\n\\t\\t\u003C\u003Cbox-shadow \\\"1px 1px 5px rgba(0, 0, 0, 0.3)\\\">>\\n\\t}\\n}\\n\\n@media (max-width: \u003C\u003Csidebarbreakpoint-minus-one>>) {\\n\\t.tc-tiddler-frame {\\n\\t\\t\u003C\u003Cbox-shadow none>>\\n\\t}\\n}\\n\\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\\n\\t\u003C\u003Ctransition \\\"fill 150ms ease-in-out\\\">>\\n}\\n\\n.tc-tiddler-controls button.tc-selected,\\n.tc-page-controls button.tc-selected {\\n\\t\u003C\u003Cfilter \\\"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\\\">>\\n}\\n\\n.tc-tiddler-frame input.tc-edit-texteditor,\\n.tc-tiddler-frame select.tc-edit-texteditor {\\n\\t\u003C\u003Cbox-shadow \\\"inset 0 1px 8px rgba(0, 0, 0, 0.15)\\\">>\\n}\\n\\n.tc-edit-tags {\\n\\t\u003C\u003Cbox-shadow \\\"inset 0 1px 8px rgba(0, 0, 0, 0.15)\\\">>\\n}\\n\\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\\n\\t\u003C\u003Cbox-shadow \\\"none\\\">>\\n\\tborder: none;\\n\\toutline: none;\\n}\\n\\ntextarea.tc-edit-texteditor {\\n\\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\\n}\\n\\ncanvas.tc-edit-bitmapeditor {\\n\\t\u003C\u003Cbox-shadow \\\"2px 2px 5px rgba(0, 0, 0, 0.5)\\\">>\\n}\\n\\n.tc-drop-down {\\n\\tborder-radius: 4px;\\n\\t\u003C\u003Cbox-shadow \\\"2px 2px 10px rgba(0, 0, 0, 0.5)\\\">>\\n}\\n\\n.tc-block-dropdown {\\n\\tborder-radius: 4px;\\n\\t\u003C\u003Cbox-shadow \\\"2px 2px 10px rgba(0, 0, 0, 0.5)\\\">>\\n}\\n\\n.tc-modal {\\n\\tborder-radius: 6px;\\n\\t\u003C\u003Cbox-shadow \\\"0 3px 7px rgba(0,0,0,0.3)\\\">>\\n}\\n\\n.tc-modal-footer {\\n\\tborder-radius: 0 0 6px 6px;\\n\\t\u003C\u003Cbox-shadow \\\"inset 0 1px 0 #fff\\\">>;\\n}\\n\\n\\n.tc-alert {\\n\\tborder-radius: 6px;\\n\\t\u003C\u003Cbox-shadow \\\"0 3px 7px rgba(0,0,0,0.6)\\\">>\\n}\\n\\n.tc-notification {\\n\\tborder-radius: 6px;\\n\\t\u003C\u003Cbox-shadow \\\"0 3px 7px rgba(0,0,0,0.3)\\\">>\\n\\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\\n}\\n\\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\\n\\tborder-top: none;\\n\\theight: 1px;\\n\\t\u003C\u003Cbackground-linear-gradient \\\"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\\\">>\\n}\\n\\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\\n\\t\u003C\u003Cbackground-linear-gradient \\\"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\\\">>\\n}\\n\\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\\n\\t\u003C\u003Cbackground-linear-gradient \\\"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\\\">>\\n}\\n\\n.tc-message-box img {\\n\\t\u003C\u003Cbox-shadow \\\"1px 1px 3px rgba(0,0,0,0.5)\\\">>\\n}\\n\\n.tc-plugin-info {\\n\\t\u003C\u003Cbox-shadow \\\"1px 1px 3px rgba(0,0,0,0.5)\\\">>\\n}\\n\"}}}"},
+3 -9
View File
@@ -203,10 +203,6 @@ Error message and password prompt
<li>$:/plugins/flibbles/relink-fieldnames</li>
<li>$:/plugins/flibbles/relink-markdown</li>
<li>$:/plugins/flibbles/relink-titles</li>
<li>$:/plugins/sq/streams</li>
<li>$:/plugins/sq/streams-as-editor</li>
@@ -469,8 +465,6 @@ Error message and password prompt
{"text":"{\n \"tiddlers\": {\n \"$:/plugins/felixhayashi/topstoryview/config.js\": {\n \"text\": \"/*\\\\\\n\\ntitle: $:/plugins/felixhayashi/topstoryview/config.js\\ntype: application/javascript\\nmodule-type: library\\n\\n@preserve\\n\\n\\\\*/\\n(function(){\\\"use strict\\\";exports.config={classNames:{storyRiver:\\\"tc-story-river\\\",backDrop:\\\"story-backdrop\\\",tiddlerFrame:\\\"tc-tiddler-frame\\\",tiddlerTitle:\\\"tc-title\\\"},references:{userConfig:\\\"$:/config/topStoryView\\\",focussedTiddlerStore:\\\"$:/temp/focussedTiddler\\\",refreshTrigger:\\\"$:/temp/focussedTiddler/refresh\\\"},checkbackTime:$tw.utils.getAnimationDuration()}})();\",\n \"title\": \"$:/plugins/felixhayashi/topstoryview/config.js\",\n \"type\": \"application/javascript\",\n \"module-type\": \"library\"\n },\n \"$:/plugins/felixhayashi/topstoryview/layout\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/layout\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"tags\": [\n \"$:/tags/Stylesheet\"\n ],\n \"text\": \"html .tc-story-river:after {\\n content: \\\"\\\";\\n display: block; }\\n\"\n },\n \"$:/plugins/felixhayashi/topstoryview/Configuration\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/Configuration\",\n \"text\": \"Please see the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information on the options.\\n\\nSave and reload the wiki to activate changes.\\n\\n\u003Ctable>\\n \u003Ctr>\\n \u003Cth align=\\\"left\\\">Scroll offset:\u003C/th>\\n \u003Ctd>\u003C$edit-text tiddler=\\\"$:/config/topStoryView\\\" field=\\\"scroll-offset\\\" tag=\\\"input\\\" default=\\\"150px\\\" />\u003C/td>\\n \u003C/tr>\\n\u003C/table>\"\n },\n \"$:/plugins/felixhayashi/topstoryview/License\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/License\",\n \"text\": \"This code is released under the BSD license. For the exact terms visit:\\n\\nhttps://github.com/felixhayashi/TW5-TopStoryView/blob/master/LICENSE\"\n },\n \"$:/plugins/felixhayashi/topstoryview/Readme\": {\n \"title\": \"$:/plugins/felixhayashi/topstoryview/Readme\",\n \"text\": \"Please visit the [[GitHub page|https://github.com/felixhayashi/TW5-TopStoryView]] for more information.\"\n },\n \"$:/plugins/felixhayashi/topstoryview/top.js\": {\n \"text\": \"/*\\\\\\ntitle: $:/plugins/felixhayashi/topstoryview/top.js\\ntype: application/javascript\\nmodule-type: storyview\\n\\nViews the story as a linear sequence\\n\\n@preserve\\n\\n\\\\*/\\n(function(){\\\"use strict\\\";var t=require(\\\"$:/plugins/felixhayashi/topstoryview/config.js\\\").config;var e=\\\"cubic-bezier(0.645, 0.045, 0.355, 1)\\\";var i=function(e){this.listWidget=e;this.pageScroller=new $tw.utils.PageScroller;this.pageScroller.scrollIntoView=this.scrollIntoView;this.pageScroller.storyRiverDomNode=document.getElementsByClassName(t.classNames.storyRiver)[0];var i=$tw.wiki.getTiddler(t.references.userConfig);var o=i?i.fields:{};$tw.hooks.addHook(\\\"th-opening-default-tiddlers-list\\\",this.hookOpenDefaultTiddlers);var r=parseInt(o[\\\"scroll-offset\\\"]);this.pageScroller.scrollOffset=isNaN(r)?71:r;this.recalculateBottomSpace()};i.prototype.refreshStart=function(t,e){};i.prototype.refreshEnd=function(t,e){};i.prototype.hookOpenDefaultTiddlers=function(t){return t};i.prototype.navigateTo=function(t){var e=this.listWidget.findListItem(0,t.title);if(e===undefined)return;var i=this.listWidget.children[e];var o=i.findFirstDomNode();if(!(o instanceof Element))return;this.pageScroller.scrollIntoView(o)};i.prototype.insert=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element))return;this.startInsertAnimation(e,function(){this.recalculateBottomSpace()}.bind(this))};i.prototype.remove=function(t){if(!t)return;var e=t.findFirstDomNode();if(!(e instanceof Element)){t.removeChildDomNodes();return}var i=this.getLastFrame()===e;this.startRemoveAnimation(t,e,function(){t.removeChildDomNodes();this.recalculateBottomSpace();if(i){this.pageScroller.scrollIntoView(this.getLastFrame())}}.bind(this))};i.prototype.getLastFrame=function(){var t=this.listWidget.children[this.listWidget.children.length-1];return t?t.findFirstDomNode():null};i.prototype.recalculateBottomSpace=function(){var t=this.pageScroller.storyRiverDomNode;if(this.getLastFrame()){var e=this.getLastFrame().getBoundingClientRect();var i=window.innerHeight;if(e.height\u003Ci){t.style[\\\"paddingBottom\\\"]=i-e.height+\\\"px\\\";return}}t.style[\\\"paddingBottom\\\"]=\\\"\\\"};i.prototype.scrollIntoView=function(t){if(this.preventNextScrollAttempt){this.preventNextScrollAttempt=false}if(!t)return;var e=$tw.utils.getAnimationDuration();this.cancelScroll();this.startTime=Date.now();var i=$tw.utils.getScrollPosition();var o=t.getBoLine truncated
{"name":"Relink","title":"$:/plugins/flibbles/relink","description":"Flexibility when relinking renamed tiddlers","author":"Flibbles","version":"2.3.5","core-version":">=5.1.22","source":"https://github.com/flibbles/tw5-relink","demo":"http://flibbles.github.io/tw5-relink/","list":"readme configuration license","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/flibbles/relink/js/bulkops.js\":{\"text\":\"/*\\\\\\nmodule-type: startup\\n\\nReplaces the relinkTiddler defined in $:/core/modules/wiki-bulkops.js\\n\\nThis is a startup instead of a wikimethods module-type because it's the only\\nway to ensure this runs after the old relinkTiddler method is applied.\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: false, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar language = require('$:/plugins/flibbles/relink/js/language.js');\\nvar utils = require(\\\"$:/plugins/flibbles/relink/js/utils.js\\\");\\n\\nexports.name = \\\"redefine-relinkTiddler\\\";\\nexports.synchronous = true;\\n// load-modules is when wikimethods are applied in\\n// ``$:/core/modules/startup/load-modules.js``\\nexports.after = ['load-modules'];\\n// We come before commands because they may do renaming, or jasmine testing\\nexports.before = ['commands'];\\n\\nexports.startup = function() {\\n\\t$tw.Wiki.prototype.relinkTiddler = relinkTiddler;\\n};\\n\\n/** Walks through all relinkable tiddlers and relinks them.\\n * This replaces the existing function in core Tiddlywiki.\\n */\\nfunction relinkTiddler(fromTitle, toTitle, options) {\\n\\toptions = options || {};\\n\\tvar failures = [];\\n\\tvar indexer = utils.getIndexer(this);\\n\\tvar records = indexer.relinkLookup(fromTitle, toTitle, options);\\n\\tfor (var title in records) {\\n\\t\\tvar entries = records[title],\\n\\t\\t\\tchanges = Object.create(null),\\n\\t\\t\\tupdate = false,\\n\\t\\t\\tfails = false;\\n\\t\\tfor (var field in entries) {\\n\\t\\t\\tvar entry = entries[field];\\n\\t\\t\\tfails = fails || entry.impossible;\\n\\t\\t\\tif (entry.output !== undefined) {\\n\\t\\t\\t\\tchanges[field] = entry.output;\\n\\t\\t\\t\\tupdate = true;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\tif (fails) {\\n\\t\\t\\tfailures.push(title);\\n\\t\\t}\\n\\t\\t// If any fields changed, update tiddler\\n\\t\\tif (update) {\\n\\t\\t\\tconsole.log(\\\"Renaming '\\\"+fromTitle+\\\"' to '\\\"+toTitle+\\\"' in '\\\" + title + \\\"'\\\");\\n\\n\\t\\t\\tvar tiddler = this.getTiddler(title);\\n\\t\\t\\tvar modifyField = utils.touchModifyField(this) ? this.getModificationFields() : undefined;\\n\\t\\t\\tvar newTiddler = new $tw.Tiddler(tiddler,changes,modifyField)\\n\\t\\t\\tnewTiddler = $tw.hooks.invokeHook(\\\"th-relinking-tiddler\\\",newTiddler,tiddler);\\n\\t\\t\\tthis.addTiddler(newTiddler);\\n\\t\\t\\t// If the title changed, we need to perform a nested rename\\n\\t\\t\\tif (newTiddler.fields.title !== title) {\\n\\t\\t\\t\\tthis.deleteTiddler(title);\\n\\t\\t\\t\\tthis.relinkTiddler(title, newTiddler.fields.title,options);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t};\\n\\tif (failures.length > 0) {\\n\\t\\tvar options = $tw.utils.extend(\\n\\t\\t\\t{ variables: {to: toTitle, from: fromTitle},\\n\\t\\t\\t wiki: this},\\n\\t\\t\\toptions );\\n\\t\\tlanguage.reportFailures(failures, options);\\n\\t}\\n};\\n\\n})();\\n\",\"module-type\":\"startup\",\"title\":\"$:/plugins/flibbles/relink/js/bulkops.js\",\"type\":\"application/javascript\"},\"$:/plugins/flibbles/relink/js/indexer.js\":{\"text\":\"/*\\\\\\nmodule-type: indexer\\n\\nIndexes results from tiddler reference reports so we don't have to call them\\nso much.\\n\\n\\\\*/\\n\\n\\\"use strict\\\";\\n\\nvar utils = require(\\\"./utils.js\\\");\\nvar TiddlerContext = utils.getContext('tiddler');\\n\\nfunction Indexer(wiki) {\\n\\tthis.wiki = wiki;\\n};\\n\\nIndexer.prototype.init = function() {\\n\\tthis.rebuild();\\n};\\n\\nIndexer.prototype.rebuild = function() {\\n\\tthis.index = null;\\n\\tthis.backIndex = null;\\n\\tthis.contexts = Object.create(null);\\n\\tthis.changedTiddlers = undefined;\\n\\tthis.lastRelinks = Object.create(null);\\n};\\n\\nIndexer.prototype.update = function(updateDescriptor) {\\n\\tif (!this.index) {\\n\\t\\treturn;\\n\\t}\\n\\tvar title;\\n\\tif (!this.changedTiddlers) {\\n\\t\\tthis.changedTiddlers = Object.create(null);\\n\\t}\\n\\tif (updateDescriptor.old.exists) {\\n\\t\\ttitle = updateDescriptor.old.tiddler.fields.title;\\n\\t\\tthis.changedTiddlers[title] = {deleted: true};\\n\\t\\tthis._purge(title);\\n\\t}\\n\\tif (updateDescriptor['new'].exists) {\\n\\t\\t// If its the same tiddler as old, this overrides the 'deleted' entry\\n\\t\\ttitle = updateDescriptor['new'].tiddler.fields.title;\\n\\t\\tthis.changedTiddlers[title] = {modified: true};\\n\\t}\\n};\\n\\nIndexer.prototype.lookup = function(title) {\\n\\tthis._upkeep();\\n\\treturn this.index[title];\\n};\\n\\nIndexer.prototype.reverseLookup = function(title) {\\n\\tthis._upkeep();\\n\\treturn this.backIndex[title] || Line truncated
{"name":"Relink Field Names","title":"$:/plugins/flibbles/relink-fieldnames","description":"Renames field names with titles matching Relinked tiddlers","author":"Flibbles","version":"2.3.5","core-version":">=5.1.22","parent-plugin":"$:/plugins/flibbles/relink","source":"https://github.com/flibbles/tw5-relink","demo":"http://flibbles.github.io/tw5-relink/","list":"readme reference","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/config/flibbles/relink/attributes/$action-deletefield/$field\":{\"title\":\"$:/config/flibbles/relink/attributes/$action-deletefield/$field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$action-listops/$field\":{\"title\":\"$:/config/flibbles/relink/attributes/$action-listops/$field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$action-setfield/$field\":{\"title\":\"$:/config/flibbles/relink/attributes/$action-setfield/$field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$button/setField\":{\"title\":\"$:/config/flibbles/relink/attributes/$button/setField\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$checkbox/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$checkbox/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$edit-text/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$edit-text/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$edit/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$edit/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$fields/exclude\":{\"title\":\"$:/config/flibbles/relink/attributes/$fields/exclude\",\"text\":\"fieldnamelist\"},\"$:/config/flibbles/relink/attributes/$fields/include\":{\"title\":\"$:/config/flibbles/relink/attributes/$fields/include\",\"text\":\"fieldnamelist\"},\"$:/config/flibbles/relink/attributes/$jsontiddler/exclude\":{\"title\":\"$:/config/flibbles/relink/attributes/$jsontiddler/exclude\",\"text\":\"fieldnamelist\"},\"$:/config/flibbles/relink/attributes/$radio/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$radio/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$range/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$range/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$reveal/stateField\":{\"title\":\"$:/config/flibbles/relink/attributes/$reveal/stateField\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$select/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$select/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$setvariable/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$setvariable/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$set/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$set/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$transclude/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$transclude/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/attributes/$view/field\":{\"title\":\"$:/config/flibbles/relink/attributes/$view/field\",\"text\":\"fieldname\"},\"$:/config/flibbles/relink/fieldnames/blacklist\":{\"title\":\"$:/config/flibbles/relink/fieldnames/blacklist\",\"filter\":\"[all[shadows+tiddlers]removeprefix[$:/language/Docs/Fields/]]\",\"text\":\"This tiddler specifies what fields //Relink-fieldname// should refuse to change. Edit its `filter` field if you'd like to change that list.\\n\"},\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldname.js\":{\"title\":\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldname.js\",\"text\":\"/*\\\\\\ntitle: $:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldname.js\\nmodule-type: relinkfieldtype\\ntype: application/javascript\\n\\nThis field type behaves exactly like the \\\"title\\\" field type, except that\\nit ignores any titles that appear on the field name blacklist.\\n\\n\\\\*/\\n\\nexports.name = 'fieldname';\\n\\nvar utils = require(\\\"../utils.js\\\");\\n\\nexports.report = function(value, callback, options) {\\n\\tif (!utils.isReserved(value, options)) {\\n\\t\\tcallback(value);\\n\\t}\\n};\\n\\nexports.relink = function(value, fromTitle, toTitle, options) {\\n\\tif (value === fromTitle\\n\\t&& !utils.isReserved(fromTitle, options)) {\\n\\t\\tif (utils.isReserved(toTitle, options)\\n\\t\\t|| !utils.isValidFieldName(toTitle)) {\\n\\t\\t\\treturn {impossible: true};\\n\\t\\t} else {\\n\\t\\t\\treturn {output: toTitle};\\n\\t\\t}\\n\\t}\\n\\treturn undefined;\\n};\\n\",\"module-type\":\"relinkfieldtype\",\"type\":\"application/javascript\"},\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldnamelist.js\":{\"title\":\"$:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldnamelist.js\",\"text\":\"/*\\\\\\ntitle: $:/plugins/flibbles/relink-fieldnames/fieldtypes/fieldnamelist.js\\nmodule-type: relinkfieldtype\\ntype: application/javascript\\n\\nThLine truncated
{"name":"Relink Markdown","title":"$:/plugins/flibbles/relink-markdown","description":"Markdown support for Relink","author":"Flibbles","version":"2.3.5","core-version":">=5.1.22","parent-plugin":"$:/plugins/flibbles/relink","source":"https://github.com/flibbles/tw5-relink","list":"readme","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/flibbles/relink-markdown/fieldtypes/markdown.js\":{\"title\":\"$:/plugins/flibbles/relink-markdown/fieldtypes/markdown.js\",\"text\":\"/*\\\\\\nmodule-type: relinkfieldtype\\ntitle: $:/plugins/flibbles/relink-markdown/fieldtypes/markdown.js\\ntype: application/javascript\\n\\nThis relinks tiddlers which contain markdown. It tries to be agnostic to\\nwhichever markdown plugin you're using.\\n\\n\\\\*/\\n\\nvar Rebuilder = require(\\\"$:/plugins/flibbles/relink/js/utils/rebuilder.js\\\");\\nvar coreUtils = require(\\\"$:/plugins/flibbles/relink/js/utils.js\\\");\\nvar utils = require(\\\"$:/plugins/flibbles/relink-markdown/utils/markdown.js\\\");\\nvar WikiParser = require(\\\"$:/core/modules/parsers/wikiparser/wikiparser.js\\\")['text/vnd.tiddlywiki'];\\n\\nfunction MarkdownWalker(text, options) {\\n\\tthis.wiki = options.wiki;\\n\\tthis.options = Object.create(options);\\n\\tthis.options.macrodefCanBeDisabled = true;\\n\\tif(!this.mdInlineRuleClasses) {\\n\\t\\tMarkdownWalker.prototype.mdInlineRuleClasses = $tw.modules.createClassesFromModules(\\\"relinkmarkdownrule\\\",\\\"inline\\\",$tw.MarkdownRuleBase);\\n\\t}\\n\\tif(!this.mdBlockRuleClasses) {\\n\\t\\tMarkdownWalker.prototype.mdBlockRuleClasses = $tw.modules.createClassesFromModules(\\\"relinkmarkdownrule\\\",\\\"block\\\",$tw.MarkdownRuleBase);\\n\\t}\\n\\tthis.source = text || \\\"\\\";\\n\\tthis.sourceLength = this.source.length;\\n\\t// Set current parse position\\n\\tthis.pos = 0;\\n\\t// Instantiate the parser block and inline rules\\n\\tthis.blockRules = this.instantiateRules(this.mdBlockRuleClasses,\\\"block\\\",0);\\n\\tthis.inlineRules = this.instantiateRules(this.mdInlineRuleClasses,\\\"inline\\\",0);\\n\\t// instantiateRules first with indent==undefined so we can match regardless\\n\\t// of tabdepth. Now we need to be strict about it.\\n\\tthis.indent = 0;\\n\\tthis.parseBlocks();\\n};\\n\\nMarkdownWalker.prototype = Object.create(WikiParser.prototype);\\n\\nmodule.exports\\n\\nMarkdownWalker.prototype.parseBlock = function(terminatorRegExpString) {\\n\\tvar terminatorRegExp = /([^\\\\S\\\\n]*\\\\r?\\\\n)/mg;\\n\\tthis.skipEmptyLines();\\n\\tif(this.pos >= this.sourceLength) {\\n\\t\\treturn [];\\n\\t}\\n\\t// Look for a block rule that applies at the current position\\n\\tvar nextMatch = this.findNextMatch(this.blockRules, this.pos);\\n\\tif(nextMatch && nextMatch.matchIndex === this.pos) {\\n\\t\\treturn this.handleRule(nextMatch);\\n\\t}\\n\\treturn this.parseInlineRun(terminatorRegExp);\\n};\\n\\nMarkdownWalker.prototype.parseInlineRunTerminated = function(terminatorRegExp,options) {\\n\\toptions = options || {};\\n\\tvar tree = [];\\n\\t// Find the next occurrence of the terminator\\n\\tterminatorRegExp.lastIndex = this.pos;\\n\\tvar terminatorMatch = terminatorRegExp.exec(this.source);\\n\\t// Find the next occurrence of a inlinerule\\n\\tvar inlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\\n\\t// Loop around until we've reached the end of the text\\n\\twhile(this.pos \u003C this.sourceLength && (terminatorMatch || inlineRuleMatch)) {\\n\\t\\t// Return if we've found the terminator, and it precedes any inline rule match\\n\\t\\tif(terminatorMatch) {\\n\\t\\t\\tif(!inlineRuleMatch || inlineRuleMatch.matchIndex >= terminatorMatch.index) {\\n\\t\\t\\t\\tthis.handleWikitext(this.pos, terminatorMatch.index);\\n\\t\\t\\t\\t//if(options.eatTerminator) {\\n\\t\\t\\t\\t\\tthis.pos += terminatorMatch[0].length;\\n\\t\\t\\t\\t//}\\n\\t\\t\\t\\treturn tree;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t\\t// Process any inline rule, along with the text preceding it\\n\\t\\tif(inlineRuleMatch) {\\n\\t\\t\\t// Preceding text\\n\\t\\t\\tthis.handleWikitext(this.pos, inlineRuleMatch.matchIndex);\\n\\t\\t\\tthis.handleRule(inlineRuleMatch);\\n\\t\\t\\t// Look for the next inline rule\\n\\t\\t\\tinlineRuleMatch = this.findNextMatch(this.inlineRules,this.pos);\\n\\t\\t\\t// Look for the next terminator match\\n\\t\\t\\tterminatorRegExp.lastIndex = this.pos;\\n\\t\\t\\tterminatorMatch = terminatorRegExp.exec(this.source);\\n\\t\\t}\\n\\t}\\n\\t// Process the remaining text\\n\\tthis.handleWikitext(this.pos, this.sourceLength);\\n\\treturn tree;\\n};\\n\\nMarkdownWalker.prototype.skipEmptyLines = function() {\\n\\tvar emptyRegExp = /(?:[^\\\\S\\\\n]*\\\\n)+/mg;\\n\\temptyRegExp.lastIndex = this.pos;\\n\\tvar emptyMatch = emptyRegExp.exec(this.source);\\n\\tif(emptyMatch && emptyMatch.index === this.pos) {\\n\\t\\tthis.pos = emptyRegExp.lastIndex;\\n\\t}\\n};\\n\\nfunction MarkdownReporter(text, callback, options) {\\n\\tthis.callback = callback;\\n\\tMarkdownWalker.callLine truncated
{"name":"Relink Titles","title":"$:/plugins/flibbles/relink-titles","description":"Renames tiddlers with titles derived from Relinked tiddler","author":"Flibbles","version":"2.3.1","core-version":">=5.1.22","parent-plugin":"$:/plugins/flibbles/relink","source":"https://github.com/flibbles/tw5-relink","demo":"http://flibbles.github.io/tw5-relink/","list":"readme configuration","dependents":"","plugin-type":"plugin","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/flibbles/relink-titles/configuration\":{\"title\":\"$:/plugins/flibbles/relink-titles/configuration\",\"caption\":\"{{$:/plugins/flibbles/relink-titles/language/Caption}}\",\"tags\":\"$:/tags/flibbles/relink/Configuration\",\"text\":\"\\\\define lingo-base() $:/plugins/flibbles/relink-titles/language/\\n\\\\define prefix() $:/config/flibbles/relink-titles/relink/\\n\\\\whitespace trim\\n\\n\u003Cdiv class=\\\"tc-control-panel\\\">\\n\\n\u003C\u003Clingo Help>>\\n\\n\u003Ctable>\\n\u003Ctbody>\\n\u003C$list filter=\\\"[[relinktitlesrule]modules[]]\\\">\\n\u003Ctr>\\n\u003Ctd>\\n\u003C$checkbox\\n\\ttiddler={{{ [all[current]addprefix\u003Cprefix>] }}}\\n\\tfield=\\\"text\\\"\\n\\tchecked=\\\"enabled\\\"\\n\\tunchecked=\\\"disabled\\\"\\n\\tdefault=\\\"enabled\\\">\\n&#32;\\n''{{!!caption}}''\\n\u003C/$checkbox>\u003C/td>\u003Ctd>\\n\\n\u003C$transclude field='description' />\\n\\n\u003C/td>\u003C/tr>\u003C/$list>\\n\u003C/tbody>\u003C/table>\u003C/div>\\n\"},\"$:/plugins/flibbles/relink-titles/language/Caption\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Caption\",\"text\":\"Titles\"},\"$:/plugins/flibbles/relink-titles/language/Directory/Caption\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Directory/Caption\",\"text\":\"Rename subdirectories\"},\"$:/plugins/flibbles/relink-titles/language/Directory/Description\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Directory/Description\",\"text\":\"For wikis set up hierarchically using `/`, like a filesystem. This option will update all tiddlers nested inside the target tiddler. i.e. `fromTiddler/path/file` becomes `toTiddler/path/file`.\"},\"$:/plugins/flibbles/relink-titles/language/Lookup/Caption\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Lookup/Caption\",\"text\":\"Lookup tiddlers\"},\"$:/plugins/flibbles/relink-titles/language/Help\":{\"title\":\"$:/plugins/flibbles/relink-titles/language/Help\",\"text\":\"See the \u003Ca href={{{ [{$:/plugins/flibbles/relink-titles!!demo}addsuffix[#Plugins/Titles]] }}} class=\\\"tc-tiddlylink-external\\\">//Relink-titles// documentation page\u003C/a> for details.\"},\"$:/plugins/flibbles/relink-titles/readme\":{\"title\":\"$:/plugins/flibbles/relink-titles/readme\",\"text\":\"Highly customizable relinking of tiddler titles //related// to the renamed tiddler.\\n\\n* Rename a hierarchy of subtiddlers when renaming a root tiddler.\\n* Make custom filter rules to rename other tiddlers the way you want when Relinking.\\n* Integrates with other plugins for plugin-specific rules.\\n\\nSee \u003Ca href={{$:/plugins/flibbles/relink-titles!!source}} class=\\\"tc-tiddlylink-external\\\">the tw5-relink website\u003C/a> for more details and examples.\\n\\n{{$:/core/images/warning}} ''Warning:'' You must use //Relink// v1.10.2 or greater with this, or this plugin may delete some tiddler bodies while trying to relink titles.\\n\"},\"$:/plugins/flibbles/relink-titles/relinkoperations/title.js\":{\"title\":\"$:/plugins/flibbles/relink-titles/relinkoperations/title.js\",\"text\":\"/*\\\\\\nmodule-type: relinkoperator\\ntitle: $:/plugins/flibbles/relink-titles/relinkoperations/title.js\\ntype: application/javascript\\n\\nRenames tiddlers which have titles derived from fromTitle. Then it makes\\nsure that those tiddlers are properly relinked too.\\n\\n\\\\*/\\n\\n/*jslint node: false, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar configPrefix = \\\"$:/config/flibbles/relink-titles/relink/\\\";\\nvar utils = require('$:/plugins/flibbles/relink/js/utils.js');\\n// This is using hotDirectories, which is a deprecated feature. It should be\\n// using the $:/config/flibbles/relink/{cateogory} directory which would be\\n// automatically maintained and regenerated.\\n// Maybe in time I'll get around to migrating this, but no need to complicate\\n// things now with changes that would require migration, and that would\\n// have no outward effect.\\nutils.getContext('whitelist').hotDirectories.push(configPrefix);\\n\\nvar titleRules = Object.create(null);\\n$tw.modules.forEachModuleOfType('relinktitlesrule', function(title, module) {\\n\\ttitleRules[title] = module;\\n});\\n\\nexports.name = 'title';\\n\\nexports.report = function(tiddler, callback, options) {\\n\\tvar cache = getCache(options),\\n\\t\\trules = cache.rules;\\n\\tfor (var i = 0; i \u003C rules.length; i++) {\\n\\t\\trules[i].report(tiddler.fields.title, function(title, blurb) {\\n\\t\\t\\tcallback(title, blurb ? ('title: ' + blurb) : 'title')Line truncated
{"title":"$:/plugins/sq/streams","name":"Streams","description":"Rapid data entry with a keyboard driven workflow. Divide content into smaller tiddlers as you write.","plugin-type":"plugin","plugin-priority":"1","author":"Saq Imtiaz","version":"1.2.24","core-version":">=5.1.23","list":"Settings CHANGELOG","source":"https://saqimtiaz.github.io/streams/","dependents":"$:/plugins/flibbles/relink","type":"application/json","text":"{\"tiddlers\":{\"$:/plugins/sq/streams/CHANGELOG\":{\"title\":\"$:/plugins/sq/streams/CHANGELOG\",\"text\":\"Release notes for the current release:\\n\\n{{$:/plugins/sq/streams/releasenotes}}\\n\\n[[Full changelog|https://saqimtiaz.github.io/streams/#CHANGELOG]] for Streams\\n\"},\"$:/plugins/sq/streams/Settings/config\":{\"title\":\"$:/plugins/sq/streams/Settings/config\",\"caption\":\"Configuration\",\"text\":\"\\\\define sortBySettingsGroupFilter()\\n[get[settings-group]!is[blank]else[!general]] [get[settings-group-header]!is[blank]else[99]] +[join[]]\\n\\\\end\\n\\n\u003C$edit-text tiddler=\\\"$:/state/sq/streams/settings/search\\\" class=\\\"sq-search-input\\\" default=\\\"\\\" tag=\\\"input\\\" type=\\\"search\\\" placeholder=\\\"search...\\\"/>\\n\\n\u003Cdiv class=\\\"sq-list-group sq-list-group-box-shadow sq-list-stream-settings\\\">\\n\u003C$list filter=\\\"[all[shadows+tiddlers]prefix[$:/config/sq/streams]has[settings-template]] +[search:title,caption,description{$:/state/sq/streams/settings/search}] +[sortsub\u003CsortBySettingsGroupFilter>]\\\">\\n\u003C$list filter={{{[{!!condition}!is[blank]] :else[{!!title}]}}} variable=\\\"list-condition\\\">\\n\u003Cdiv class=\\\"sq-list-group-item\\\">\\n\u003C$transclude tiddler={{!!settings-template}}/>\\n\u003C/div>\\n\u003C/$list>\\n\u003C/$list>\\n\u003C/div>\"},\"$:/plugins/sq/streams/Settings/shortcuts\":{\"title\":\"$:/plugins/sq/streams/Settings/shortcuts\",\"caption\":\"Shortcuts\",\"text\":\"\\\\import $:/core/ui/ControlPanel/KeyboardShortcuts\\n\\n\u003Ctable>\\n\u003Ctbody>\\n\u003C$list filter=\\\"[all[shadows+tiddlers]prefix[$:/config/ShortcutInfo/streams-]removeprefix[$:/config/ShortcutInfo/]]\\\" variable=\\\"shortcutName\\\">\\n\u003C\u003Cshortcut-item>>\\n\u003C/$list>\\n\u003C/tbody>\\n\u003C/table>\"},\"$:/plugins/sq/streams/Settings\":{\"title\":\"$:/plugins/sq/streams/Settings\",\"tags\":\"$:/tags/ControlPanel\",\"caption\":\"Streams settings\",\"text\":\"\u003C\u003Ctabs \\\"$:/plugins/sq/streams/Settings/config $:/plugins/sq/streams/Settings/shortcuts\\\" \\\"$:/plugins/sq/streams/Settings/config\\\" \\\"$:/state/streams/settings/tabs\\\">>\\n\"},\"$:/plugins/sq/streams/action-macros\":{\"title\":\"$:/plugins/sq/streams/action-macros\",\"text\":\"\\\\whitespace trim\\n\\n\\\\define swiped-right-actions()\\n\u003C$list filter=\\\"[{$:/config/sq/streams/swipe-behaviour}match[contextmenu]]\\\" variable=\\\"_NULL\\\">\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"current\\\" $value=\u003C\u003Cdom-data-node-title>>/>\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"position\\\" $value={{$:/config/sq/streams/swipe-contextmenu-position}}/>\\n\u003C$action-popup $coords=\u003C\u003Ctv-popup-coords>> $state=\u003C\u003Ccontextmenu-state>>/>\\n\u003C/$list>\\n\u003C$list filter=\\\"[{$:/config/sq/streams/swipe-behaviour}match[indent]]\\\" variable=\\\"_NULL\\\">\\n\u003C$vars currentTiddler=\u003C\u003Cdom-data-node-title>>>\\n\u003C\u003Cindent-node-actions>>\\n\u003C/$vars>\\n\u003C/$list>\\n\\\\end\\n\\n\\\\define swiped-left-actions()\\n\u003C$list filter=\\\"[{$:/config/sq/streams/swipe-behaviour}match[indent]]\\\" variable=\\\"_NULL\\\">\\n\u003C$vars currentTiddler=\u003C\u003Cdom-data-node-title>>>\\n\u003C\u003Cunindent-node-actions>>\\n\u003C/$vars>\\n\u003C/$list>\\n\\\\end\\n\\n\\n\\\\define oncontext-menu-actions()\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"current\\\" $value=\u003C\u003Cdom-data-node-title>>/>\\n\u003C$action-setfield $tiddler=\u003C\u003Ccontextmenu-state>> $field=\\\"position\\\" $value=\\\"left\\\"/>\\n\u003C$action-popup $coords=\u003C\u003Ctv-popup-coords>> $state=\u003C\u003Ccontextmenu-state>>/>\\n\\\\end\\n\\n\\n\\\\define node-ctrl-btn-actions()\\n\u003C$list filter=\\\"[\u003Cdom-data-btn-role>match[stream-node-visibility]]\\\" variable=\\\"NULL\\\">\\n\u003C$action-setfield $tiddler=\u003C\u003Cdom-data-rowchildren-visibility-state>> text={{{ [\u003Cdom-data-rowchildren-visibility-state>get[text]match[hide]then[show]else[hide]] }}} />\\n\u003C/$list>\\n\u003C$list filter=\\\"[\u003Cdom-data-btn-role>match[stream-node-decorator]]\\\" variable=\\\"NULL\\\">\\n\u003C$action-navigate $to=\u003C\u003Cdom-data-node-title>>/>\\n\u003C/$list>\\n\\\\end\\n\\n\\n\\\\define toggle-row-edit-state()\\n\u003C$action-unselect/>\\n\u003C$list filter=\\\"[\u003Crow-edit-state>get[text]else[]!match\u003Cdom-data-node-title>]\\\" variable=\\\"NULL\\\">\\n\u003C$list filter=\\\"[[$:/status/IsReadOnly]Line truncated
{"text":"{\n \"tiddlers\": {\n \"$:/plugins/sq/streams-as-editor/single-tiddler-streams.js\": {\n \"title\": \"$:/plugins/sq/streams-as-editor/single-tiddler-streams.js\",\n \"text\": \"/*\\\\\\n\\ntitle: $:/plugins/sq/streams-as-editor/single-tiddler-streams.js\\ntype: application/javascript\\nmodule-type: widget\\n\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: true, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\nvar Widget = require(\\\"$:/core/modules/widgets/widget.js\\\").widget;\\n\\nvar UUID = (function() {\\n var self = {};\\n var lut = []; for (var i=0; i\u003C256; i++) { lut[i] = (i\u003C16?'0':'')+(i).toString(16); }\\n self.generate = function() {\\n\\tvar d0 = Math.random()*0xffffffff|0;\\n\\tvar d1 = Math.random()*0xffffffff|0;\\n\\tvar d2 = Math.random()*0xffffffff|0;\\n\\tvar d3 = Math.random()*0xffffffff|0;\\n\\treturn lut[d0&0xff]+lut[d0>>8&0xff]+lut[d0>>16&0xff]+lut[d0>>24&0xff]+'-'+\\n\\t lut[d1&0xff]+lut[d1>>8&0xff]+'-'+lut[d1>>16&0x0f|0x40]+lut[d1>>24&0xff]+'-'+\\n\\t lut[d2&0x3f|0x80]+lut[d2>>8&0xff]+'-'+lut[d2>>16&0xff]+lut[d2>>24&0xff]+\\n\\t lut[d3&0xff]+lut[d3>>8&0xff]+lut[d3>>16&0xff]+lut[d3>>24&0xff];\\n }\\n return self;\\n})();\\n\\nvar SingleTiddlerStreamsWidget = function(parseTreeNode,options) {\\n\\tthis.initialise(parseTreeNode,options);\\n};\\n\\n/*\\nInherit from the base widget class\\n*/\\nSingleTiddlerStreamsWidget.prototype = new Widget();\\n\\n/*\\nRender this widget into the DOM\\n*/\\nSingleTiddlerStreamsWidget.prototype.render = function(parent,nextSibling) {\\n\\tthis.computeAttributes();\\n\\tthis.execute();\\n\\tthis.parentDomNode = parent;\\n\\t//this.renderChildren(parent,nextSibling);\\n\\n\\t\\n};\\n\\nSingleTiddlerStreamsWidget.prototype.invokeAction = function(triggeringWidget,event) {\\n\\tvar sourceTiddler = this.wiki.getTiddler(this.tiddlerTitle);\\n\\tif(!sourceTiddler) {\\n\\t\\treturn;\\n\\t}\\n\\tvar sourceText = \\\"\\\\n\\\\\\\\rules only list \\\\n\\\\n\\\" + this.wiki.getTiddlerText(this.tiddlerTitle);\\n\\tvar wikifyParser = this.wiki.parseText(\\\"text/vnd.tiddlywiki\\\",sourceText, {\\n\\t\\tparseAsInline : false\\n\\t});\\n\\tconsole.log(wikifyParser);\\n\\t\\n\\tvar tree = wikifyParser.tree;\\n\\tif(tree.length == 0 || tree[0].tag !== \\\"ul\\\" || tree.length !== 1) {\\n\\t\\treturn;\\n\\t}\\n\\tvar list = tree[0];\\n\\t\\n\\tthis.nodes = [];\\n\\tvar parentTiddlerFields = {\\n\\t\\ttitle: this.tiddlerTitle\\n\\t}\\n\\tthis.nodes.push(parentTiddlerFields);\\n\\tthis.processList(list,parentTiddlerFields);\\n\\tconsole.log(1);\\n\\t\\n\\tthis.createNodeTiddlers();\\n\\treturn true;\\n};\\n\\nSingleTiddlerStreamsWidget.prototype.createNodeTiddlers = function() {\\n\\tfor(var i=0; i\u003Cthis.nodes.length; i++) {\\n\\t\\tvar tiddler = this.wiki.getTiddler(this.nodes[i].title);\\n\\t\\tvar newTiddler = new $tw.Tiddler(tiddler,this.nodes[i]);\\n\\t\\tthis.wiki.addTiddler(newTiddler);\\n\\t}\\n};\\n\\n// process UL tag\\nSingleTiddlerStreamsWidget.prototype.processList = function(list,parentTiddler) {\\t\\t\\n\\tvar childNodes = [];\\n\\t\\t\\n\\tfor(var i=0; i\u003Clist.children.length; i++) {\\n\\n\\t\\tvar tiddler = {\\n\\t\\t\\t\\\"title\\\": \\\"$:/streams/temp/\\\" + this.tiddlerTitle + \\\"/\\\" + UUID.generate(),\\n\\t\\t\\t\\\"parent\\\": parentTiddler.title,\\n\\t\\t\\t\\\"text\\\": list.children[i].children[0].text,\\n\\t\\t\\t\\\"stream-type\\\" : \\\"default\\\"\\n\\t\\t};\\t\\t\\n\\t\\t\\n\\t\\tvar subList = list.children[i].children[1];\\n\\t\\tif(subList && subList.tag === \\\"ul\\\") {\\n\\t\\t\\tthis.processList(subList,tiddler);\\n\\t\\t}\\n\\t\\t\\n\\t\\tchildNodes.push(tiddler.title);\\n\\t\\tthis.nodes.push(tiddler);\\n\\t\\t// add tiddler to wiki\\n\\t}\\n\\tparentTiddler[\\\"stream-list\\\"] = $tw.utils.stringifyList(childNodes);\\n\\t//save child nodes to stream-list in parent\\n}\\n\\n\\nSingleTiddlerStreamsWidget.prototype.execute = function() {\\n\\tthis.tiddlerTitle = this.getAttribute(\\\"$tiddler\\\",this.getVariable(\\\"currentTiddler\\\"));\\n//\\tthis.makeChildWidgets();\\n};\\n\\n\\nSingleTiddlerStreamsWidget.prototype.refresh = function(changedTiddlers) {\\n\\tvar changedAttributes = this.computeAttributes();\\n\\tif(changedAttributes[\\\"tiddler\\\"] || changedTiddlers[this.tiddlerTitle]) {\\n\\t\\tthis.refreshSelf();\\n\\t\\treturn true;\\n\\t}\\n\\treturn this.refreshChildren(changedTiddlers);\\n};\\n\\nexports[\\\"action-editwithstreams\\\"] = SingleTiddlerStreamsWidget;\\n\\n})();\",\n \"type\": \"application/javascript\",\n \"module-type\": \"widget\"\n },\n \"$:/plugins/sq/streams-as-editor/stream-to-wikilist-filter.js\": {\n \"title\": \"$:/plugins/sq/streams-as-editor/stream-to-wikilist-filter.js\",\n \"text\": \"/*\\\\\\ntitle: $:/plugins/sq/streams-as-editor/stream-to-wikilist-filter.js\\ntype: application/javascript\\nmodule-type: filteroperator\\n\\n\\\\*/\\n(function(){\\n\Line truncated
{"text":"{\n \"tiddlers\": {\n \"$:/config/SearchResults/Default\": {\n \"title\": \"$:/config/SearchResults/Default\",\n \"created\": \"20200820180447855\",\n \"modified\": \"20200820180500121\",\n \"tags\": \"\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"text\": \"$:/plugins/sq/streams-search/StreamSearchResults\"\n },\n \"$:/plugins/sq/streams-search/stream-root-filter.js\": {\n \"title\": \"$:/plugins/sq/streams-search/stream-root-filter.js\",\n \"text\": \"/*\\\\\\ntitle: $:/plugins/sq/streams-search/stream-root-filter.js\\ntype: application/javascript\\nmodule-type: filteroperator\\n\\n\\\\*/\\n(function(){\\n\\n/*jslint node: true, browser: true */\\n/*global $tw: false */\\n\\\"use strict\\\";\\n\\n/*\\nExport our filter function\\n*/\\nexports[\\\"stream-root\\\"] = function(source,operator,options) {\\n\\tvar results = [];\\n\\tsource(function(tiddler,title) {\\n\\t\\tif(tiddler && tiddler.fields[\\\"parent\\\"] && tiddler.fields[\\\"stream-type\\\"]) {\\t\\t\\t\\n\\n\\t\\t\\tvar parentTiddler = tiddler;\\n\\t\\t\\t\\n\\t\\t\\twhile(parentTiddler && parentTiddler.fields.parent) {\\n\\t\\t\\t\\tparentTiddler = options.wiki.getTiddler(parentTiddler.fields.parent);\\n\\t\\t\\t}\\n\\t\\t\\tif(parentTiddler && parentTiddler.fields && tiddler.fields.title.startsWith(parentTiddler.fields[\\\"title\\\"])) {\\n\\t\\t\\t\\t$tw.utils.pushTop(results,parentTiddler.fields.title);\\n\\t\\t\\t} else {\\n\\t\\t\\t\\tresults.push(title);\\n\\t\\t\\t}\\n\\t\\t\\t\\n\\t\\t} else {\\n\\t\\t\\tresults.push(title);\\n\\t\\t}\\n\\t});\\n\\treturn results;\\n};\\n\\n})();\",\n \"type\": \"application/javascript\",\n \"module-type\": \"filteroperator\"\n },\n \"$:/plugins/sq/streams-search/StreamSearchResults\": {\n \"title\": \"$:/plugins/sq/streams-search/StreamSearchResults\",\n \"caption\": \"Streams\",\n \"created\": \"20200818210522653\",\n \"modified\": \"20200818212724254\",\n \"tags\": \"$:/tags/SearchResults\",\n \"type\": \"text/vnd.tiddlywiki\",\n \"text\": \"\\\\define searchResultList()\\n//\u003Csmall>{{$:/language/Search/Matches/Title}}\u003C/small>//\\n\\n\u003C$list filter=\\\"[!is[system]search:title{$(searchTiddler)$}sort[title]stream-root[]limit[250]]\\\">\\n\u003Cspan class={{{[\u003CcurrentTiddler>addsuffix[-primaryList]] -[\u003CsearchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\\n\u003C$transclude tiddler=\\\"$:/core/ui/ListItemTemplate\\\"/>\\n\u003C/span>\\n\u003C/$list>\\n\\n//\u003Csmall>{{$:/language/Search/Matches/All}}\u003C/small>//\\n\\n\u003C$list filter=\\\"[!is[system]search{$(searchTiddler)$}sort[title]stream-root[]limit[250]]\\\">\\n\u003Cspan class={{{[\u003CcurrentTiddler>addsuffix[-secondaryList]] -[\u003CsearchListState>get[text]] +[then[]else[tc-list-item-selected]] }}}>\\n\u003C$transclude tiddler=\\\"$:/core/ui/ListItemTemplate\\\"/>\\n\u003C/span>\\n\u003C/$list>\\n\\n\\\\end\\n\u003C\u003CsearchResultList>>\"\n }\n }\n}","version":"0.0.02","type":"application/json","title":"$:/plugins/sq/streams-search","source":"","revision":"0","plugin-type":"plugin","list":"","description":"Streams addon: Search","dependents":"","core-version":">=5.1.22","bag":"default","author":"Saq Imtiaz"},
@@ -517,7 +511,7 @@ Error message and password prompt
{"created":"20230928040704540","title":"$:/state/tab--2112689675","text":"$:/core/ui/ControlPanel/Basics","modified":"20230928055052216"},
{"created":"20230928083530469","title":"$:/state/tab--86143343","text":"$:/core/ui/ControlPanel/Plugins/Installed/Plugins","modified":"20230929105858985"},
{"created":"20230928040708019","title":"$:/state/tab--959111941","text":"$:/core/ui/ControlPanel/Stylesheets","modified":"20230928054758889"},
{"created":"20230927070359746","title":"$:/state/tab-1749438307","text":"$:/core/ui/ControlPanel/Appearance","modified":"20230929115629176"},
{"created":"20230927070359746","title":"$:/state/tab-1749438307","text":"$:/core/ui/ControlPanel/Plugins","modified":"20230929172214864"},
{"created":"20230928040939296","title":"$:/state/tab-453520357","text":"$:/core/ui/ControlPanel/EditTemplateBody","modified":"20230928040947232"},
{"created":"20230928081548527","title":"$:/state/tab/search-results/sidebar","text":"$:/plugins/sq/streams-search/StreamSearchResults","modified":"20230928083123854"},
{"created":"20230927063409101","title":"$:/state/tab/sidebar--595412856","text":"$:/core/ui/SideBar/Recent","modified":"20230929114245664"},
@@ -529,8 +523,8 @@ Error message and password prompt
{"created":"20230928081806500","title":"$:/state/toc/TableOfContents-Proyectos-1684905998","text":"open","modified":"20230928081806500"},
{"created":"20230928082306069","title":"$:/state/toc/TableOfContents-Servicios--944721818","text":"open","modified":"20230928082306069"},
{"created":"20230928082231303","title":"$:/state/toc/TableOfContents-Talleres--944721818","text":"open","modified":"20230928083015283"},
{"title":"$:/status/RequireReloadDueToPluginChange","text":"no"},
{"title":"$:/StoryList","text":"","list":"copinchapedia"},
{"title":"$:/status/RequireReloadDueToPluginChange","text":"yes"},
{"title":"$:/StoryList","created":"20230929172155714","text":"","list":"$:/ControlPanel copinchapedia","modified":"20230929172234179"},
{"created":"20230928034438840","title":"$:/theme","text":"$:/themes/tiddlywiki/centralised","modified":"20230928062438120"},
{"title":"$:/themes/tiddlywiki/centralised","name":"Centralised","author":"JeremyRuston","core-version":">=5.0.0","plugin-type":"theme","description":"Centralises the story river","dependents":"$:/themes/tiddlywiki/snowwhite","version":"5.3.1","type":"application/json","text":"{\"tiddlers\":{\"$:/themes/tiddlywiki/centralised/styles.tid\":{\"title\":\"$:/themes/tiddlywiki/centralised/styles.tid\",\"tags\":\"[[$:/tags/Stylesheet]]\",\"text\":\"\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\\n\\n@media (min-width: {{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}}) {\\n\\n\\thtml .tc-page-container {\\n\\t\\ttext-align: center;\\n\\t}\\n\\n\\thtml .tc-story-river {\\n\\t\\tposition: relative;\\n\\t\\twidth: 770px;\\n\\t\\tpadding: 42px;\\n\\t\\tmargin: 0 auto;\\n\\t\\ttext-align: left;\\n\\t}\\n\\n\\thtml .tc-sidebar-scrollable {\\n\\t\\ttext-align: left;\\n\\t\\tleft: 50%;\\n\\t\\tright: 0;\\n\\t\\tmargin-left: 343px;\\n\\t}\\n}\\n\"}}}"},
{"title":"$:/themes/tiddlywiki/snowwhite","name":"Snow White","author":"JeremyRuston","core-version":">=5.0.0","plugin-type":"theme","description":"Emphasises individual tiddlers","dependents":"$:/themes/tiddlywiki/vanilla","plugin-priority":"0","version":"5.3.1","type":"application/json","text":"{\"tiddlers\":{\"$:/themes/tiddlywiki/snowwhite/base\":{\"title\":\"$:/themes/tiddlywiki/snowwhite/base\",\"tags\":\"[[$:/tags/Stylesheet]]\",\"text\":\"\\\\define sidebarbreakpoint-minus-one()\\n\u003C$text text={{{ [{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}removesuffix[px]subtract[1]addsuffix[px]] ~[{$:/themes/tiddlywiki/vanilla/metrics/sidebarbreakpoint}] }}}/>\\n\\\\end\\n\\n\\\\rules only filteredtranscludeinline transcludeinline macrodef macrocallinline\\n\\n.tc-sidebar-header {\\n\\ttext-shadow: 0 1px 0 \u003C\u003Ccolour sidebar-foreground-shadow>>;\\n}\\n\\n.tc-tiddler-info {\\n\\t\u003C\u003Cbox-shadow \\\"inset 1px 2px 3px rgba(0,0,0,0.1)\\\">>\\n}\\n\\n@media screen {\\n\\t.tc-tiddler-frame {\\n\\t\\t\u003C\u003Cbox-shadow \\\"1px 1px 5px rgba(0, 0, 0, 0.3)\\\">>\\n\\t}\\n}\\n\\n@media (max-width: \u003C\u003Csidebarbreakpoint-minus-one>>) {\\n\\t.tc-tiddler-frame {\\n\\t\\t\u003C\u003Cbox-shadow none>>\\n\\t}\\n}\\n\\n.tc-page-controls button svg, .tc-tiddler-controls button svg, .tc-topbar button svg {\\n\\t\u003C\u003Ctransition \\\"fill 150ms ease-in-out\\\">>\\n}\\n\\n.tc-tiddler-controls button.tc-selected,\\n.tc-page-controls button.tc-selected {\\n\\t\u003C\u003Cfilter \\\"drop-shadow(0px -1px 2px rgba(0,0,0,0.25))\\\">>\\n}\\n\\n.tc-tiddler-frame input.tc-edit-texteditor,\\n.tc-tiddler-frame select.tc-edit-texteditor {\\n\\t\u003C\u003Cbox-shadow \\\"inset 0 1px 8px rgba(0, 0, 0, 0.15)\\\">>\\n}\\n\\n.tc-edit-tags {\\n\\t\u003C\u003Cbox-shadow \\\"inset 0 1px 8px rgba(0, 0, 0, 0.15)\\\">>\\n}\\n\\n.tc-tiddler-frame .tc-edit-tags input.tc-edit-texteditor {\\n\\t\u003C\u003Cbox-shadow \\\"none\\\">>\\n\\tborder: none;\\n\\toutline: none;\\n}\\n\\ntextarea.tc-edit-texteditor {\\n\\tfont-family: {{$:/themes/tiddlywiki/vanilla/settings/editorfontfamily}};\\n}\\n\\ncanvas.tc-edit-bitmapeditor {\\n\\t\u003C\u003Cbox-shadow \\\"2px 2px 5px rgba(0, 0, 0, 0.5)\\\">>\\n}\\n\\n.tc-drop-down {\\n\\tborder-radius: 4px;\\n\\t\u003C\u003Cbox-shadow \\\"2px 2px 10px rgba(0, 0, 0, 0.5)\\\">>\\n}\\n\\n.tc-block-dropdown {\\n\\tborder-radius: 4px;\\n\\t\u003C\u003Cbox-shadow \\\"2px 2px 10px rgba(0, 0, 0, 0.5)\\\">>\\n}\\n\\n.tc-modal {\\n\\tborder-radius: 6px;\\n\\t\u003C\u003Cbox-shadow \\\"0 3px 7px rgba(0,0,0,0.3)\\\">>\\n}\\n\\n.tc-modal-footer {\\n\\tborder-radius: 0 0 6px 6px;\\n\\t\u003C\u003Cbox-shadow \\\"inset 0 1px 0 #fff\\\">>;\\n}\\n\\n\\n.tc-alert {\\n\\tborder-radius: 6px;\\n\\t\u003C\u003Cbox-shadow \\\"0 3px 7px rgba(0,0,0,0.6)\\\">>\\n}\\n\\n.tc-notification {\\n\\tborder-radius: 6px;\\n\\t\u003C\u003Cbox-shadow \\\"0 3px 7px rgba(0,0,0,0.3)\\\">>\\n\\ttext-shadow: 0 1px 0 rgba(255,255,255, 0.8);\\n}\\n\\n.tc-sidebar-lists .tc-tab-set .tc-tab-divider {\\n\\tborder-top: none;\\n\\theight: 1px;\\n\\t\u003C\u003Cbackground-linear-gradient \\\"left, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.0) 100%\\\">>\\n}\\n\\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button {\\n\\t\u003C\u003Cbackground-linear-gradient \\\"left, rgba(0,0,0,0.01) 0%, rgba(0,0,0,0.1) 100%\\\">>\\n}\\n\\n.tc-more-sidebar > .tc-tab-set > .tc-tab-buttons > button.tc-tab-selected {\\n\\t\u003C\u003Cbackground-linear-gradient \\\"left, rgba(0,0,0,0.05) 0%, rgba(255,255,255,0.05) 100%\\\">>\\n}\\n\\n.tc-message-box img {\\n\\t\u003C\u003Cbox-shadow \\\"1px 1px 3px rgba(0,0,0,0.5)\\\">>\\n}\\n\\n.tc-plugin-info {\\n\\t\u003C\u003Cbox-shadow \\\"1px 1px 3px rgba(0,0,0,0.5)\\\">>\\n}\\n\"}}}"},
File diff suppressed because it is too large. Load diff